"use strict"; /* * ATTENTION: An "eval-source-map" devtool has been used. * This devtool is neither made for production nor for readable output files. * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) * or disable the default devtool with "devtool: false". * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). */ exports.id = "vendor-chunks/@radix-ui"; exports.ids = ["vendor-chunks/@radix-ui"]; exports.modules = { /***/ "(ssr)/./node_modules/@radix-ui/react-icons/dist/react-icons.esm.js": /*!********************************************************************!*\ !*** ./node_modules/@radix-ui/react-icons/dist/react-icons.esm.js ***! \********************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AccessibilityIcon: () => (/* binding */ AccessibilityIcon),\n/* harmony export */ ActivityLogIcon: () => (/* binding */ ActivityLogIcon),\n/* harmony export */ AlignBaselineIcon: () => (/* binding */ AlignBaselineIcon),\n/* harmony export */ AlignBottomIcon: () => (/* binding */ AlignBottomIcon),\n/* harmony export */ AlignCenterHorizontallyIcon: () => (/* binding */ AlignCenterHorizontallyIcon),\n/* harmony export */ AlignCenterVerticallyIcon: () => (/* binding */ AlignCenterVerticallyIcon),\n/* harmony export */ AlignLeftIcon: () => (/* binding */ AlignLeftIcon),\n/* harmony export */ AlignRightIcon: () => (/* binding */ AlignRightIcon),\n/* harmony export */ AlignTopIcon: () => (/* binding */ AlignTopIcon),\n/* harmony export */ AllSidesIcon: () => (/* binding */ AllSidesIcon),\n/* harmony export */ AngleIcon: () => (/* binding */ AngleIcon),\n/* harmony export */ ArchiveIcon: () => (/* binding */ ArchiveIcon),\n/* harmony export */ ArrowBottomLeftIcon: () => (/* binding */ ArrowBottomLeftIcon),\n/* harmony export */ ArrowBottomRightIcon: () => (/* binding */ ArrowBottomRightIcon),\n/* harmony export */ ArrowDownIcon: () => (/* binding */ ArrowDownIcon),\n/* harmony export */ ArrowLeftIcon: () => (/* binding */ ArrowLeftIcon),\n/* harmony export */ ArrowRightIcon: () => (/* binding */ ArrowRightIcon),\n/* harmony export */ ArrowTopLeftIcon: () => (/* binding */ ArrowTopLeftIcon),\n/* harmony export */ ArrowTopRightIcon: () => (/* binding */ ArrowTopRightIcon),\n/* harmony export */ ArrowUpIcon: () => (/* binding */ ArrowUpIcon),\n/* harmony export */ AspectRatioIcon: () => (/* binding */ AspectRatioIcon),\n/* harmony export */ AvatarIcon: () => (/* binding */ AvatarIcon),\n/* harmony export */ BackpackIcon: () => (/* binding */ BackpackIcon),\n/* harmony export */ BadgeIcon: () => (/* binding */ BadgeIcon),\n/* harmony export */ BarChartIcon: () => (/* binding */ BarChartIcon),\n/* harmony export */ BellIcon: () => (/* binding */ BellIcon),\n/* harmony export */ BlendingModeIcon: () => (/* binding */ BlendingModeIcon),\n/* harmony export */ BookmarkFilledIcon: () => (/* binding */ BookmarkFilledIcon),\n/* harmony export */ BookmarkIcon: () => (/* binding */ BookmarkIcon),\n/* harmony export */ BorderAllIcon: () => (/* binding */ BorderAllIcon),\n/* harmony export */ BorderBottomIcon: () => (/* binding */ BorderBottomIcon),\n/* harmony export */ BorderDashedIcon: () => (/* binding */ BorderDashedIcon),\n/* harmony export */ BorderDottedIcon: () => (/* binding */ BorderDottedIcon),\n/* harmony export */ BorderLeftIcon: () => (/* binding */ BorderLeftIcon),\n/* harmony export */ BorderNoneIcon: () => (/* binding */ BorderNoneIcon),\n/* harmony export */ BorderRightIcon: () => (/* binding */ BorderRightIcon),\n/* harmony export */ BorderSolidIcon: () => (/* binding */ BorderSolidIcon),\n/* harmony export */ BorderSplitIcon: () => (/* binding */ BorderSplitIcon),\n/* harmony export */ BorderStyleIcon: () => (/* binding */ BorderStyleIcon),\n/* harmony export */ BorderTopIcon: () => (/* binding */ BorderTopIcon),\n/* harmony export */ BorderWidthIcon: () => (/* binding */ BorderWidthIcon),\n/* harmony export */ BoxIcon: () => (/* binding */ BoxIcon),\n/* harmony export */ BoxModelIcon: () => (/* binding */ BoxModelIcon),\n/* harmony export */ ButtonIcon: () => (/* binding */ ButtonIcon),\n/* harmony export */ CalendarIcon: () => (/* binding */ CalendarIcon),\n/* harmony export */ CameraIcon: () => (/* binding */ CameraIcon),\n/* harmony export */ CardStackIcon: () => (/* binding */ CardStackIcon),\n/* harmony export */ CardStackMinusIcon: () => (/* binding */ CardStackMinusIcon),\n/* harmony export */ CardStackPlusIcon: () => (/* binding */ CardStackPlusIcon),\n/* harmony export */ CaretDownIcon: () => (/* binding */ CaretDownIcon),\n/* harmony export */ CaretLeftIcon: () => (/* binding */ CaretLeftIcon),\n/* harmony export */ CaretRightIcon: () => (/* binding */ CaretRightIcon),\n/* harmony export */ CaretSortIcon: () => (/* binding */ CaretSortIcon),\n/* harmony export */ CaretUpIcon: () => (/* binding */ CaretUpIcon),\n/* harmony export */ ChatBubbleIcon: () => (/* binding */ ChatBubbleIcon),\n/* harmony export */ CheckCircledIcon: () => (/* binding */ CheckCircledIcon),\n/* harmony export */ CheckIcon: () => (/* binding */ CheckIcon),\n/* harmony export */ CheckboxIcon: () => (/* binding */ CheckboxIcon),\n/* harmony export */ ChevronDownIcon: () => (/* binding */ ChevronDownIcon),\n/* harmony export */ ChevronLeftIcon: () => (/* binding */ ChevronLeftIcon),\n/* harmony export */ ChevronRightIcon: () => (/* binding */ ChevronRightIcon),\n/* harmony export */ ChevronUpIcon: () => (/* binding */ ChevronUpIcon),\n/* harmony export */ CircleBackslashIcon: () => (/* binding */ CircleBackslashIcon),\n/* harmony export */ CircleIcon: () => (/* binding */ CircleIcon),\n/* harmony export */ ClipboardCopyIcon: () => (/* binding */ ClipboardCopyIcon),\n/* harmony export */ ClipboardIcon: () => (/* binding */ ClipboardIcon),\n/* harmony export */ ClockIcon: () => (/* binding */ ClockIcon),\n/* harmony export */ CodeIcon: () => (/* binding */ CodeIcon),\n/* harmony export */ CodeSandboxLogoIcon: () => (/* binding */ CodeSandboxLogoIcon),\n/* harmony export */ ColorWheelIcon: () => (/* binding */ ColorWheelIcon),\n/* harmony export */ ColumnSpacingIcon: () => (/* binding */ ColumnSpacingIcon),\n/* harmony export */ ColumnsIcon: () => (/* binding */ ColumnsIcon),\n/* harmony export */ CommitIcon: () => (/* binding */ CommitIcon),\n/* harmony export */ Component1Icon: () => (/* binding */ Component1Icon),\n/* harmony export */ Component2Icon: () => (/* binding */ Component2Icon),\n/* harmony export */ ComponentBooleanIcon: () => (/* binding */ ComponentBooleanIcon),\n/* harmony export */ ComponentInstanceIcon: () => (/* binding */ ComponentInstanceIcon),\n/* harmony export */ ComponentNoneIcon: () => (/* binding */ ComponentNoneIcon),\n/* harmony export */ ComponentPlaceholderIcon: () => (/* binding */ ComponentPlaceholderIcon),\n/* harmony export */ ContainerIcon: () => (/* binding */ ContainerIcon),\n/* harmony export */ CookieIcon: () => (/* binding */ CookieIcon),\n/* harmony export */ CopyIcon: () => (/* binding */ CopyIcon),\n/* harmony export */ CornerBottomLeftIcon: () => (/* binding */ CornerBottomLeftIcon),\n/* harmony export */ CornerBottomRightIcon: () => (/* binding */ CornerBottomRightIcon),\n/* harmony export */ CornerTopLeftIcon: () => (/* binding */ CornerTopLeftIcon),\n/* harmony export */ CornerTopRightIcon: () => (/* binding */ CornerTopRightIcon),\n/* harmony export */ CornersIcon: () => (/* binding */ CornersIcon),\n/* harmony export */ CountdownTimerIcon: () => (/* binding */ CountdownTimerIcon),\n/* harmony export */ CounterClockwiseClockIcon: () => (/* binding */ CounterClockwiseClockIcon),\n/* harmony export */ CropIcon: () => (/* binding */ CropIcon),\n/* harmony export */ Cross1Icon: () => (/* binding */ Cross1Icon),\n/* harmony export */ Cross2Icon: () => (/* binding */ Cross2Icon),\n/* harmony export */ CrossCircledIcon: () => (/* binding */ CrossCircledIcon),\n/* harmony export */ Crosshair1Icon: () => (/* binding */ Crosshair1Icon),\n/* harmony export */ Crosshair2Icon: () => (/* binding */ Crosshair2Icon),\n/* harmony export */ CrumpledPaperIcon: () => (/* binding */ CrumpledPaperIcon),\n/* harmony export */ CubeIcon: () => (/* binding */ CubeIcon),\n/* harmony export */ CursorArrowIcon: () => (/* binding */ CursorArrowIcon),\n/* harmony export */ CursorTextIcon: () => (/* binding */ CursorTextIcon),\n/* harmony export */ DashIcon: () => (/* binding */ DashIcon),\n/* harmony export */ DashboardIcon: () => (/* binding */ DashboardIcon),\n/* harmony export */ DesktopIcon: () => (/* binding */ DesktopIcon),\n/* harmony export */ DimensionsIcon: () => (/* binding */ DimensionsIcon),\n/* harmony export */ DiscIcon: () => (/* binding */ DiscIcon),\n/* harmony export */ DiscordLogoIcon: () => (/* binding */ DiscordLogoIcon),\n/* harmony export */ DividerHorizontalIcon: () => (/* binding */ DividerHorizontalIcon),\n/* harmony export */ DividerVerticalIcon: () => (/* binding */ DividerVerticalIcon),\n/* harmony export */ DotFilledIcon: () => (/* binding */ DotFilledIcon),\n/* harmony export */ DotIcon: () => (/* binding */ DotIcon),\n/* harmony export */ DotsHorizontalIcon: () => (/* binding */ DotsHorizontalIcon),\n/* harmony export */ DotsVerticalIcon: () => (/* binding */ DotsVerticalIcon),\n/* harmony export */ DoubleArrowDownIcon: () => (/* binding */ DoubleArrowDownIcon),\n/* harmony export */ DoubleArrowLeftIcon: () => (/* binding */ DoubleArrowLeftIcon),\n/* harmony export */ DoubleArrowRightIcon: () => (/* binding */ DoubleArrowRightIcon),\n/* harmony export */ DoubleArrowUpIcon: () => (/* binding */ DoubleArrowUpIcon),\n/* harmony export */ DownloadIcon: () => (/* binding */ DownloadIcon),\n/* harmony export */ DragHandleDots1Icon: () => (/* binding */ DragHandleDots1Icon),\n/* harmony export */ DragHandleDots2Icon: () => (/* binding */ DragHandleDots2Icon),\n/* harmony export */ DragHandleHorizontalIcon: () => (/* binding */ DragHandleHorizontalIcon),\n/* harmony export */ DragHandleVerticalIcon: () => (/* binding */ DragHandleVerticalIcon),\n/* harmony export */ DrawingPinFilledIcon: () => (/* binding */ DrawingPinFilledIcon),\n/* harmony export */ DrawingPinIcon: () => (/* binding */ DrawingPinIcon),\n/* harmony export */ DropdownMenuIcon: () => (/* binding */ DropdownMenuIcon),\n/* harmony export */ EnterFullScreenIcon: () => (/* binding */ EnterFullScreenIcon),\n/* harmony export */ EnterIcon: () => (/* binding */ EnterIcon),\n/* harmony export */ EnvelopeClosedIcon: () => (/* binding */ EnvelopeClosedIcon),\n/* harmony export */ EnvelopeOpenIcon: () => (/* binding */ EnvelopeOpenIcon),\n/* harmony export */ EraserIcon: () => (/* binding */ EraserIcon),\n/* harmony export */ ExclamationTriangleIcon: () => (/* binding */ ExclamationTriangleIcon),\n/* harmony export */ ExitFullScreenIcon: () => (/* binding */ ExitFullScreenIcon),\n/* harmony export */ ExitIcon: () => (/* binding */ ExitIcon),\n/* harmony export */ ExternalLinkIcon: () => (/* binding */ ExternalLinkIcon),\n/* harmony export */ EyeClosedIcon: () => (/* binding */ EyeClosedIcon),\n/* harmony export */ EyeNoneIcon: () => (/* binding */ EyeNoneIcon),\n/* harmony export */ EyeOpenIcon: () => (/* binding */ EyeOpenIcon),\n/* harmony export */ FaceIcon: () => (/* binding */ FaceIcon),\n/* harmony export */ FigmaLogoIcon: () => (/* binding */ FigmaLogoIcon),\n/* harmony export */ FileIcon: () => (/* binding */ FileIcon),\n/* harmony export */ FileMinusIcon: () => (/* binding */ FileMinusIcon),\n/* harmony export */ FilePlusIcon: () => (/* binding */ FilePlusIcon),\n/* harmony export */ FileTextIcon: () => (/* binding */ FileTextIcon),\n/* harmony export */ FontBoldIcon: () => (/* binding */ FontBoldIcon),\n/* harmony export */ FontFamilyIcon: () => (/* binding */ FontFamilyIcon),\n/* harmony export */ FontItalicIcon: () => (/* binding */ FontItalicIcon),\n/* harmony export */ FontRomanIcon: () => (/* binding */ FontRomanIcon),\n/* harmony export */ FontSizeIcon: () => (/* binding */ FontSizeIcon),\n/* harmony export */ FontStyleIcon: () => (/* binding */ FontStyleIcon),\n/* harmony export */ FrameIcon: () => (/* binding */ FrameIcon),\n/* harmony export */ FramerLogoIcon: () => (/* binding */ FramerLogoIcon),\n/* harmony export */ GearIcon: () => (/* binding */ GearIcon),\n/* harmony export */ GitHubLogoIcon: () => (/* binding */ GitHubLogoIcon),\n/* harmony export */ GlobeIcon: () => (/* binding */ GlobeIcon),\n/* harmony export */ GridIcon: () => (/* binding */ GridIcon),\n/* harmony export */ GroupIcon: () => (/* binding */ GroupIcon),\n/* harmony export */ Half1Icon: () => (/* binding */ Half1Icon),\n/* harmony export */ Half2Icon: () => (/* binding */ Half2Icon),\n/* harmony export */ HamburgerMenuIcon: () => (/* binding */ HamburgerMenuIcon),\n/* harmony export */ HandIcon: () => (/* binding */ HandIcon),\n/* harmony export */ HeadingIcon: () => (/* binding */ HeadingIcon),\n/* harmony export */ HeartFilledIcon: () => (/* binding */ HeartFilledIcon),\n/* harmony export */ HeartIcon: () => (/* binding */ HeartIcon),\n/* harmony export */ HeightIcon: () => (/* binding */ HeightIcon),\n/* harmony export */ HobbyKnifeIcon: () => (/* binding */ HobbyKnifeIcon),\n/* harmony export */ HomeIcon: () => (/* binding */ HomeIcon),\n/* harmony export */ IconJarLogoIcon: () => (/* binding */ IconJarLogoIcon),\n/* harmony export */ IdCardIcon: () => (/* binding */ IdCardIcon),\n/* harmony export */ ImageIcon: () => (/* binding */ ImageIcon),\n/* harmony export */ InfoCircledIcon: () => (/* binding */ InfoCircledIcon),\n/* harmony export */ InputIcon: () => (/* binding */ InputIcon),\n/* harmony export */ InstagramLogoIcon: () => (/* binding */ InstagramLogoIcon),\n/* harmony export */ KeyboardIcon: () => (/* binding */ KeyboardIcon),\n/* harmony export */ LapTimerIcon: () => (/* binding */ LapTimerIcon),\n/* harmony export */ LaptopIcon: () => (/* binding */ LaptopIcon),\n/* harmony export */ LayersIcon: () => (/* binding */ LayersIcon),\n/* harmony export */ LayoutIcon: () => (/* binding */ LayoutIcon),\n/* harmony export */ LetterCaseCapitalizeIcon: () => (/* binding */ LetterCaseCapitalizeIcon),\n/* harmony export */ LetterCaseLowercaseIcon: () => (/* binding */ LetterCaseLowercaseIcon),\n/* harmony export */ LetterCaseToggleIcon: () => (/* binding */ LetterCaseToggleIcon),\n/* harmony export */ LetterCaseUppercaseIcon: () => (/* binding */ LetterCaseUppercaseIcon),\n/* harmony export */ LetterSpacingIcon: () => (/* binding */ LetterSpacingIcon),\n/* harmony export */ LightningBoltIcon: () => (/* binding */ LightningBoltIcon),\n/* harmony export */ LineHeightIcon: () => (/* binding */ LineHeightIcon),\n/* harmony export */ Link1Icon: () => (/* binding */ Link1Icon),\n/* harmony export */ Link2Icon: () => (/* binding */ Link2Icon),\n/* harmony export */ LinkBreak1Icon: () => (/* binding */ LinkBreak1Icon),\n/* harmony export */ LinkBreak2Icon: () => (/* binding */ LinkBreak2Icon),\n/* harmony export */ LinkNone1Icon: () => (/* binding */ LinkNone1Icon),\n/* harmony export */ LinkNone2Icon: () => (/* binding */ LinkNone2Icon),\n/* harmony export */ LinkedInLogoIcon: () => (/* binding */ LinkedInLogoIcon),\n/* harmony export */ ListBulletIcon: () => (/* binding */ ListBulletIcon),\n/* harmony export */ LockClosedIcon: () => (/* binding */ LockClosedIcon),\n/* harmony export */ LockOpen1Icon: () => (/* binding */ LockOpen1Icon),\n/* harmony export */ LockOpen2Icon: () => (/* binding */ LockOpen2Icon),\n/* harmony export */ LoopIcon: () => (/* binding */ LoopIcon),\n/* harmony export */ MagicWandIcon: () => (/* binding */ MagicWandIcon),\n/* harmony export */ MagnifyingGlassIcon: () => (/* binding */ MagnifyingGlassIcon),\n/* harmony export */ MarginIcon: () => (/* binding */ MarginIcon),\n/* harmony export */ MaskOffIcon: () => (/* binding */ MaskOffIcon),\n/* harmony export */ MaskOnIcon: () => (/* binding */ MaskOnIcon),\n/* harmony export */ MinusCircledIcon: () => (/* binding */ MinusCircledIcon),\n/* harmony export */ MinusIcon: () => (/* binding */ MinusIcon),\n/* harmony export */ MixIcon: () => (/* binding */ MixIcon),\n/* harmony export */ MixerHorizontalIcon: () => (/* binding */ MixerHorizontalIcon),\n/* harmony export */ MixerVerticalIcon: () => (/* binding */ MixerVerticalIcon),\n/* harmony export */ MobileIcon: () => (/* binding */ MobileIcon),\n/* harmony export */ ModulzLogoIcon: () => (/* binding */ ModulzLogoIcon),\n/* harmony export */ MoonIcon: () => (/* binding */ MoonIcon),\n/* harmony export */ MoveIcon: () => (/* binding */ MoveIcon),\n/* harmony export */ NotionLogoIcon: () => (/* binding */ NotionLogoIcon),\n/* harmony export */ OpacityIcon: () => (/* binding */ OpacityIcon),\n/* harmony export */ OpenInNewWindowIcon: () => (/* binding */ OpenInNewWindowIcon),\n/* harmony export */ OverlineIcon: () => (/* binding */ OverlineIcon),\n/* harmony export */ PaddingIcon: () => (/* binding */ PaddingIcon),\n/* harmony export */ PaperPlaneIcon: () => (/* binding */ PaperPlaneIcon),\n/* harmony export */ PauseIcon: () => (/* binding */ PauseIcon),\n/* harmony export */ Pencil1Icon: () => (/* binding */ Pencil1Icon),\n/* harmony export */ Pencil2Icon: () => (/* binding */ Pencil2Icon),\n/* harmony export */ PersonIcon: () => (/* binding */ PersonIcon),\n/* harmony export */ PieChartIcon: () => (/* binding */ PieChartIcon),\n/* harmony export */ PilcrowIcon: () => (/* binding */ PilcrowIcon),\n/* harmony export */ PinBottomIcon: () => (/* binding */ PinBottomIcon),\n/* harmony export */ PinLeftIcon: () => (/* binding */ PinLeftIcon),\n/* harmony export */ PinRightIcon: () => (/* binding */ PinRightIcon),\n/* harmony export */ PinTopIcon: () => (/* binding */ PinTopIcon),\n/* harmony export */ PlayIcon: () => (/* binding */ PlayIcon),\n/* harmony export */ PlusCircledIcon: () => (/* binding */ PlusCircledIcon),\n/* harmony export */ PlusIcon: () => (/* binding */ PlusIcon),\n/* harmony export */ QuestionMarkCircledIcon: () => (/* binding */ QuestionMarkCircledIcon),\n/* harmony export */ QuestionMarkIcon: () => (/* binding */ QuestionMarkIcon),\n/* harmony export */ QuoteIcon: () => (/* binding */ QuoteIcon),\n/* harmony export */ RadiobuttonIcon: () => (/* binding */ RadiobuttonIcon),\n/* harmony export */ ReaderIcon: () => (/* binding */ ReaderIcon),\n/* harmony export */ ReloadIcon: () => (/* binding */ ReloadIcon),\n/* harmony export */ ResetIcon: () => (/* binding */ ResetIcon),\n/* harmony export */ ResumeIcon: () => (/* binding */ ResumeIcon),\n/* harmony export */ RocketIcon: () => (/* binding */ RocketIcon),\n/* harmony export */ RotateCounterClockwiseIcon: () => (/* binding */ RotateCounterClockwiseIcon),\n/* harmony export */ RowSpacingIcon: () => (/* binding */ RowSpacingIcon),\n/* harmony export */ RowsIcon: () => (/* binding */ RowsIcon),\n/* harmony export */ RulerHorizontalIcon: () => (/* binding */ RulerHorizontalIcon),\n/* harmony export */ RulerSquareIcon: () => (/* binding */ RulerSquareIcon),\n/* harmony export */ ScissorsIcon: () => (/* binding */ ScissorsIcon),\n/* harmony export */ SectionIcon: () => (/* binding */ SectionIcon),\n/* harmony export */ SewingPinFilledIcon: () => (/* binding */ SewingPinFilledIcon),\n/* harmony export */ SewingPinIcon: () => (/* binding */ SewingPinIcon),\n/* harmony export */ ShadowIcon: () => (/* binding */ ShadowIcon),\n/* harmony export */ ShadowInnerIcon: () => (/* binding */ ShadowInnerIcon),\n/* harmony export */ ShadowNoneIcon: () => (/* binding */ ShadowNoneIcon),\n/* harmony export */ ShadowOuterIcon: () => (/* binding */ ShadowOuterIcon),\n/* harmony export */ Share1Icon: () => (/* binding */ Share1Icon),\n/* harmony export */ Share2Icon: () => (/* binding */ Share2Icon),\n/* harmony export */ ShuffleIcon: () => (/* binding */ ShuffleIcon),\n/* harmony export */ SizeIcon: () => (/* binding */ SizeIcon),\n/* harmony export */ SketchLogoIcon: () => (/* binding */ SketchLogoIcon),\n/* harmony export */ SlashIcon: () => (/* binding */ SlashIcon),\n/* harmony export */ SliderIcon: () => (/* binding */ SliderIcon),\n/* harmony export */ SpaceBetweenHorizontallyIcon: () => (/* binding */ SpaceBetweenHorizontallyIcon),\n/* harmony export */ SpaceBetweenVerticallyIcon: () => (/* binding */ SpaceBetweenVerticallyIcon),\n/* harmony export */ SpaceEvenlyHorizontallyIcon: () => (/* binding */ SpaceEvenlyHorizontallyIcon),\n/* harmony export */ SpaceEvenlyVerticallyIcon: () => (/* binding */ SpaceEvenlyVerticallyIcon),\n/* harmony export */ SpeakerLoudIcon: () => (/* binding */ SpeakerLoudIcon),\n/* harmony export */ SpeakerModerateIcon: () => (/* binding */ SpeakerModerateIcon),\n/* harmony export */ SpeakerOffIcon: () => (/* binding */ SpeakerOffIcon),\n/* harmony export */ SpeakerQuietIcon: () => (/* binding */ SpeakerQuietIcon),\n/* harmony export */ SquareIcon: () => (/* binding */ SquareIcon),\n/* harmony export */ StackIcon: () => (/* binding */ StackIcon),\n/* harmony export */ StarFilledIcon: () => (/* binding */ StarFilledIcon),\n/* harmony export */ StarIcon: () => (/* binding */ StarIcon),\n/* harmony export */ StitchesLogoIcon: () => (/* binding */ StitchesLogoIcon),\n/* harmony export */ StopIcon: () => (/* binding */ StopIcon),\n/* harmony export */ StopwatchIcon: () => (/* binding */ StopwatchIcon),\n/* harmony export */ StretchHorizontallyIcon: () => (/* binding */ StretchHorizontallyIcon),\n/* harmony export */ StretchVerticallyIcon: () => (/* binding */ StretchVerticallyIcon),\n/* harmony export */ StrikethroughIcon: () => (/* binding */ StrikethroughIcon),\n/* harmony export */ SunIcon: () => (/* binding */ SunIcon),\n/* harmony export */ SwitchIcon: () => (/* binding */ SwitchIcon),\n/* harmony export */ SymbolIcon: () => (/* binding */ SymbolIcon),\n/* harmony export */ TableIcon: () => (/* binding */ TableIcon),\n/* harmony export */ TargetIcon: () => (/* binding */ TargetIcon),\n/* harmony export */ TextAlignBottomIcon: () => (/* binding */ TextAlignBottomIcon),\n/* harmony export */ TextAlignCenterIcon: () => (/* binding */ TextAlignCenterIcon),\n/* harmony export */ TextAlignJustifyIcon: () => (/* binding */ TextAlignJustifyIcon),\n/* harmony export */ TextAlignLeftIcon: () => (/* binding */ TextAlignLeftIcon),\n/* harmony export */ TextAlignMiddleIcon: () => (/* binding */ TextAlignMiddleIcon),\n/* harmony export */ TextAlignRightIcon: () => (/* binding */ TextAlignRightIcon),\n/* harmony export */ TextAlignTopIcon: () => (/* binding */ TextAlignTopIcon),\n/* harmony export */ TextIcon: () => (/* binding */ TextIcon),\n/* harmony export */ TextNoneIcon: () => (/* binding */ TextNoneIcon),\n/* harmony export */ ThickArrowDownIcon: () => (/* binding */ ThickArrowDownIcon),\n/* harmony export */ ThickArrowLeftIcon: () => (/* binding */ ThickArrowLeftIcon),\n/* harmony export */ ThickArrowRightIcon: () => (/* binding */ ThickArrowRightIcon),\n/* harmony export */ ThickArrowUpIcon: () => (/* binding */ ThickArrowUpIcon),\n/* harmony export */ TimerIcon: () => (/* binding */ TimerIcon),\n/* harmony export */ TokensIcon: () => (/* binding */ TokensIcon),\n/* harmony export */ TrackNextIcon: () => (/* binding */ TrackNextIcon),\n/* harmony export */ TrackPreviousIcon: () => (/* binding */ TrackPreviousIcon),\n/* harmony export */ TransformIcon: () => (/* binding */ TransformIcon),\n/* harmony export */ TransparencyGridIcon: () => (/* binding */ TransparencyGridIcon),\n/* harmony export */ TrashIcon: () => (/* binding */ TrashIcon),\n/* harmony export */ TriangleDownIcon: () => (/* binding */ TriangleDownIcon),\n/* harmony export */ TriangleLeftIcon: () => (/* binding */ TriangleLeftIcon),\n/* harmony export */ TriangleRightIcon: () => (/* binding */ TriangleRightIcon),\n/* harmony export */ TriangleUpIcon: () => (/* binding */ TriangleUpIcon),\n/* harmony export */ TwitterLogoIcon: () => (/* binding */ TwitterLogoIcon),\n/* harmony export */ UnderlineIcon: () => (/* binding */ UnderlineIcon),\n/* harmony export */ UpdateIcon: () => (/* binding */ UpdateIcon),\n/* harmony export */ UploadIcon: () => (/* binding */ UploadIcon),\n/* harmony export */ ValueIcon: () => (/* binding */ ValueIcon),\n/* harmony export */ ValueNoneIcon: () => (/* binding */ ValueNoneIcon),\n/* harmony export */ VercelLogoIcon: () => (/* binding */ VercelLogoIcon),\n/* harmony export */ VideoIcon: () => (/* binding */ VideoIcon),\n/* harmony export */ ViewGridIcon: () => (/* binding */ ViewGridIcon),\n/* harmony export */ ViewHorizontalIcon: () => (/* binding */ ViewHorizontalIcon),\n/* harmony export */ ViewNoneIcon: () => (/* binding */ ViewNoneIcon),\n/* harmony export */ ViewVerticalIcon: () => (/* binding */ ViewVerticalIcon),\n/* harmony export */ WidthIcon: () => (/* binding */ WidthIcon),\n/* harmony export */ ZoomInIcon: () => (/* binding */ ZoomInIcon),\n/* harmony export */ ZoomOutIcon: () => (/* binding */ ZoomOutIcon)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for(i = 0; i < sourceKeys.length; i++){\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nvar _excluded = [\n \"color\"\n];\nvar AccessibilityIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877197 7.49984C0.877197 3.84216 3.84234 0.877014 7.50003 0.877014C11.1577 0.877014 14.1229 3.84216 14.1229 7.49984C14.1229 11.1575 11.1577 14.1227 7.50003 14.1227C3.84234 14.1227 0.877197 11.1575 0.877197 7.49984ZM7.50003 1.82701C4.36702 1.82701 1.8272 4.36683 1.8272 7.49984C1.8272 10.6328 4.36702 13.1727 7.50003 13.1727C10.633 13.1727 13.1729 10.6328 13.1729 7.49984C13.1729 4.36683 10.633 1.82701 7.50003 1.82701ZM7.12457 9.00001C7.06994 9.12735 6.33165 11.9592 6.33165 11.9592C6.26018 12.226 5.98601 12.3843 5.71928 12.3128C5.45255 12.2413 5.29425 11.9672 5.36573 11.7004C5.36573 11.7004 6.24661 8.87268 6.24661 8.27007V6.80099L4.28763 6.27608C4.0209 6.20461 3.86261 5.93045 3.93408 5.66371C4.00555 5.39698 4.27972 5.23869 4.54645 5.31016C4.54645 5.31016 6.20042 5.87268 6.84579 5.87268H8.15505C8.80042 5.87268 10.4534 5.31042 10.4534 5.31042C10.7202 5.23895 10.9943 5.39724 11.0658 5.66397C11.1373 5.93071 10.979 6.20487 10.7122 6.27635L8.74661 6.80303V8.27007C8.74661 8.87268 9.62663 11.6971 9.62663 11.6971C9.6981 11.9639 9.5398 12.238 9.27307 12.3095C9.00634 12.381 8.73217 12.2227 8.6607 11.956C8.6607 11.956 7.91994 9.12735 7.86866 9.00001C7.81994 8.87268 7.65006 8.87268 7.65006 8.87268H7.34317C7.34317 8.87268 7.16994 8.87268 7.12457 9.00001ZM7.50043 5.12007C8.12175 5.12007 8.62543 4.61639 8.62543 3.99507C8.62543 3.37375 8.12175 2.87007 7.50043 2.87007C6.87911 2.87007 6.37543 3.37375 6.37543 3.99507C6.37543 4.61639 6.87911 5.12007 7.50043 5.12007Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1 = [\n \"color\"\n];\nvar ActivityLogIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0 1.5C0 1.22386 0.223858 1 0.5 1H2.5C2.77614 1 3 1.22386 3 1.5C3 1.77614 2.77614 2 2.5 2H0.5C0.223858 2 0 1.77614 0 1.5ZM4 1.5C4 1.22386 4.22386 1 4.5 1H14.5C14.7761 1 15 1.22386 15 1.5C15 1.77614 14.7761 2 14.5 2H4.5C4.22386 2 4 1.77614 4 1.5ZM4 4.5C4 4.22386 4.22386 4 4.5 4H11.5C11.7761 4 12 4.22386 12 4.5C12 4.77614 11.7761 5 11.5 5H4.5C4.22386 5 4 4.77614 4 4.5ZM0 7.5C0 7.22386 0.223858 7 0.5 7H2.5C2.77614 7 3 7.22386 3 7.5C3 7.77614 2.77614 8 2.5 8H0.5C0.223858 8 0 7.77614 0 7.5ZM4 7.5C4 7.22386 4.22386 7 4.5 7H14.5C14.7761 7 15 7.22386 15 7.5C15 7.77614 14.7761 8 14.5 8H4.5C4.22386 8 4 7.77614 4 7.5ZM4 10.5C4 10.2239 4.22386 10 4.5 10H11.5C11.7761 10 12 10.2239 12 10.5C12 10.7761 11.7761 11 11.5 11H4.5C4.22386 11 4 10.7761 4 10.5ZM0 13.5C0 13.2239 0.223858 13 0.5 13H2.5C2.77614 13 3 13.2239 3 13.5C3 13.7761 2.77614 14 2.5 14H0.5C0.223858 14 0 13.7761 0 13.5ZM4 13.5C4 13.2239 4.22386 13 4.5 13H14.5C14.7761 13 15 13.2239 15 13.5C15 13.7761 14.7761 14 14.5 14H4.5C4.22386 14 4 13.7761 4 13.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2 = [\n \"color\"\n];\nvar AlignBaselineIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10.5 1.75003C10.7107 1.75003 10.8988 1.88217 10.9703 2.08042L13.9703 10.4C14.064 10.6598 13.9293 10.9463 13.6696 11.04C13.4098 11.1336 13.1233 10.999 13.0296 10.7392L12.0477 8.01606H8.95227L7.97031 10.7392C7.87664 10.999 7.59012 11.1336 7.33035 11.04C7.07058 10.9463 6.93593 10.6598 7.0296 10.4L10.0296 2.08042C10.1011 1.88217 10.2892 1.75003 10.5 1.75003ZM10.5 3.72402L11.7411 7.16606H9.25877L10.5 3.72402ZM2.49949 2.09997C2.7204 2.09997 2.89949 2.27906 2.89949 2.49997L2.89949 9.53428L4.21664 8.21713C4.37285 8.06092 4.62612 8.06092 4.78233 8.21713C4.93854 8.37334 4.93854 8.6266 4.78233 8.78281L2.78233 10.7828C2.70732 10.8578 2.60557 10.9 2.49949 10.9C2.3934 10.9 2.29166 10.8578 2.21664 10.7828L0.216645 8.78281C0.0604349 8.6266 0.0604349 8.37334 0.216645 8.21713C0.372854 8.06092 0.62612 8.06092 0.78233 8.21713L2.09949 9.53428L2.09949 2.49997C2.09949 2.27906 2.27857 2.09997 2.49949 2.09997ZM0.0999695 13.5001C0.0999695 13.2791 0.279056 13.1001 0.499969 13.1001H14.5C14.7209 13.1001 14.9 13.2791 14.9 13.5001C14.9 13.721 14.7209 13.9001 14.5 13.9001H0.499969C0.279056 13.9001 0.0999695 13.721 0.0999695 13.5001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3 = [\n \"color\"\n];\nvar AlignBottomIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9 3C9 2.44772 8.55229 2 8 2H7C6.44772 2 6 2.44772 6 3L6 14H1.5C1.22386 14 1 14.2239 1 14.5C1 14.7761 1.22386 15 1.5 15L6 15H9H13.5C13.7761 15 14 14.7761 14 14.5C14 14.2239 13.7761 14 13.5 14H9V3Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4 = [\n \"color\"\n];\nvar AlignCenterHorizontallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.99988 6C1.44759 6 0.999877 6.44772 0.999877 7L0.999877 8C0.999877 8.55228 1.44759 9 1.99988 9L6.99988 9L6.99988 13.5C6.99988 13.7761 7.22374 14 7.49988 14C7.77602 14 7.99988 13.7761 7.99988 13.5L7.99988 9L12.9999 9C13.5522 9 13.9999 8.55228 13.9999 8L13.9999 7C13.9999 6.44772 13.5522 6 12.9999 6L7.99988 6L7.99988 1.5C7.99988 1.22386 7.77602 1 7.49988 1C7.22373 1 6.99988 1.22386 6.99988 1.5L6.99988 6L1.99988 6Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$5 = [\n \"color\"\n];\nvar AlignCenterVerticallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$5);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.99988 1C6.44759 1 5.99988 1.44772 5.99988 2V7H1.49988C1.22374 7 0.999878 7.22386 0.999878 7.5C0.999878 7.77614 1.22374 8 1.49988 8H5.99988V13C5.99988 13.5523 6.44759 14 6.99988 14H7.99988C8.55216 14 8.99988 13.5523 8.99988 13V8H13.4999C13.776 8 13.9999 7.77614 13.9999 7.5C13.9999 7.22386 13.776 7 13.4999 7H8.99988V2C8.99988 1.44772 8.55216 1 7.99988 1L6.99988 1Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$6 = [\n \"color\"\n];\nvar AlignLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$6);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.499995 0.999995C0.223855 0.999995 -5.58458e-07 1.22385 -5.46388e-07 1.49999L-2.18554e-08 13.4999C-9.78492e-09 13.776 0.223855 13.9999 0.499995 13.9999C0.776136 13.9999 0.999991 13.776 0.999991 13.4999L0.999991 8.99993L12 8.99993C12.5523 8.99993 13 8.55222 13 7.99993L13 6.99994C13 6.44766 12.5523 5.99995 12 5.99995L0.999991 5.99995L0.999991 1.49999C0.999991 1.22385 0.776135 0.999995 0.499995 0.999995Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$7 = [\n \"color\"\n];\nvar AlignRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$7);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14.4999 1C14.2237 1 13.9999 1.22386 13.9999 1.5L13.9999 6L2.99988 6C2.44759 6 1.99988 6.44772 1.99988 7L1.99988 8C1.99988 8.55228 2.44759 9 2.99988 9L13.9999 9L13.9999 13.5C13.9999 13.7761 14.2237 14 14.4999 14C14.776 14 14.9999 13.7761 14.9999 13.5L14.9999 9L14.9999 6L14.9999 1.5C14.9999 1.22386 14.776 1 14.4999 1Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$8 = [\n \"color\"\n];\nvar AlignTopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$8);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.5 0C1.22386 0 1 0.223858 1 0.5C1 0.776142 1.22386 1 1.5 1H6V12C6 12.5523 6.44772 13 7 13H8C8.55228 13 9 12.5523 9 12V1H13.5C13.7761 1 14 0.776142 14 0.5C14 0.223858 13.7761 0 13.5 0H9H6H1.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$9 = [\n \"color\"\n];\nvar AllSidesIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$9);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 0.75L9.75 3H5.25L7.5 0.75ZM7.5 14.25L9.75 12H5.25L7.5 14.25ZM3 5.25L0.75 7.5L3 9.75V5.25ZM14.25 7.5L12 5.25V9.75L14.25 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$a = [\n \"color\"\n];\nvar AngleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$a);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.8914 2.1937C9.1158 2.35464 9.16725 2.66701 9.00631 2.89141L2.47388 12H13.5C13.7761 12 14 12.2239 14 12.5C14 12.7762 13.7761 13 13.5 13H1.5C1.31254 13 1.14082 12.8952 1.0552 12.7284C0.969578 12.5616 0.984438 12.361 1.09369 12.2086L8.19369 2.30862C8.35462 2.08422 8.667 2.03277 8.8914 2.1937ZM11.1 6.50001C11.1 6.22387 11.3238 6.00001 11.6 6.00001C11.8761 6.00001 12.1 6.22387 12.1 6.50001C12.1 6.77615 11.8761 7.00001 11.6 7.00001C11.3238 7.00001 11.1 6.77615 11.1 6.50001ZM10.4 4.00001C10.1239 4.00001 9.90003 4.22387 9.90003 4.50001C9.90003 4.77615 10.1239 5.00001 10.4 5.00001C10.6762 5.00001 10.9 4.77615 10.9 4.50001C10.9 4.22387 10.6762 4.00001 10.4 4.00001ZM12.1 8.50001C12.1 8.22387 12.3238 8.00001 12.6 8.00001C12.8761 8.00001 13.1 8.22387 13.1 8.50001C13.1 8.77615 12.8761 9.00001 12.6 9.00001C12.3238 9.00001 12.1 8.77615 12.1 8.50001ZM13.4 10C13.1239 10 12.9 10.2239 12.9 10.5C12.9 10.7761 13.1239 11 13.4 11C13.6762 11 13.9 10.7761 13.9 10.5C13.9 10.2239 13.6762 10 13.4 10Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$b = [\n \"color\"\n];\nvar ArchiveIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$b);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.30902 1C2.93025 1 2.58398 1.214 2.41459 1.55279L1.05279 4.27639C1.01807 4.34582 1 4.42238 1 4.5V13C1 13.5523 1.44772 14 2 14H13C13.5523 14 14 13.5523 14 13V4.5C14 4.42238 13.9819 4.34582 13.9472 4.27639L12.5854 1.55281C12.416 1.21403 12.0698 1.00003 11.691 1.00003L7.5 1.00001L3.30902 1ZM3.30902 2L7 2.00001V4H2.30902L3.30902 2ZM8 4V2.00002L11.691 2.00003L12.691 4H8ZM7.5 5H13V13H2V5H7.5ZM5.5 7C5.22386 7 5 7.22386 5 7.5C5 7.77614 5.22386 8 5.5 8H9.5C9.77614 8 10 7.77614 10 7.5C10 7.22386 9.77614 7 9.5 7H5.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$c = [\n \"color\"\n];\nvar ArrowBottomLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$c);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.3536 3.64644C11.5488 3.8417 11.5488 4.15828 11.3536 4.35354L4.70711 11L9 11C9.27614 11 9.5 11.2239 9.5 11.5C9.5 11.7761 9.27614 12 9 12L3.5 12C3.36739 12 3.24021 11.9473 3.14645 11.8536C3.05268 11.7598 3 11.6326 3 11.5L3 5.99999C3 5.72385 3.22386 5.49999 3.5 5.49999C3.77614 5.49999 4 5.72385 4 5.99999V10.2929L10.6464 3.64643C10.8417 3.45117 11.1583 3.45117 11.3536 3.64644Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$d = [\n \"color\"\n];\nvar ArrowBottomRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$d);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.64645 3.64644C3.45118 3.8417 3.45118 4.15828 3.64645 4.35354L10.2929 11L6 11C5.72386 11 5.5 11.2239 5.5 11.5C5.5 11.7761 5.72386 12 6 12L11.5 12C11.6326 12 11.7598 11.9473 11.8536 11.8536C11.9473 11.7598 12 11.6326 12 11.5L12 5.99999C12 5.72385 11.7761 5.49999 11.5 5.49999C11.2239 5.49999 11 5.72385 11 5.99999V10.2929L4.35355 3.64643C4.15829 3.45117 3.84171 3.45117 3.64645 3.64644Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$e = [\n \"color\"\n];\nvar ArrowDownIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$e);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 2C7.77614 2 8 2.22386 8 2.5L8 11.2929L11.1464 8.14645C11.3417 7.95118 11.6583 7.95118 11.8536 8.14645C12.0488 8.34171 12.0488 8.65829 11.8536 8.85355L7.85355 12.8536C7.75979 12.9473 7.63261 13 7.5 13C7.36739 13 7.24021 12.9473 7.14645 12.8536L3.14645 8.85355C2.95118 8.65829 2.95118 8.34171 3.14645 8.14645C3.34171 7.95118 3.65829 7.95118 3.85355 8.14645L7 11.2929L7 2.5C7 2.22386 7.22386 2 7.5 2Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$f = [\n \"color\"\n];\nvar ArrowLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$f);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.85355 3.14645C7.04882 3.34171 7.04882 3.65829 6.85355 3.85355L3.70711 7H12.5C12.7761 7 13 7.22386 13 7.5C13 7.77614 12.7761 8 12.5 8H3.70711L6.85355 11.1464C7.04882 11.3417 7.04882 11.6583 6.85355 11.8536C6.65829 12.0488 6.34171 12.0488 6.14645 11.8536L2.14645 7.85355C1.95118 7.65829 1.95118 7.34171 2.14645 7.14645L6.14645 3.14645C6.34171 2.95118 6.65829 2.95118 6.85355 3.14645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$g = [\n \"color\"\n];\nvar ArrowRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$g);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.14645 3.14645C8.34171 2.95118 8.65829 2.95118 8.85355 3.14645L12.8536 7.14645C13.0488 7.34171 13.0488 7.65829 12.8536 7.85355L8.85355 11.8536C8.65829 12.0488 8.34171 12.0488 8.14645 11.8536C7.95118 11.6583 7.95118 11.3417 8.14645 11.1464L11.2929 8H2.5C2.22386 8 2 7.77614 2 7.5C2 7.22386 2.22386 7 2.5 7H11.2929L8.14645 3.85355C7.95118 3.65829 7.95118 3.34171 8.14645 3.14645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$h = [\n \"color\"\n];\nvar ArrowTopLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$h);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.3536 11.3536C11.5488 11.1583 11.5488 10.8417 11.3536 10.6465L4.70711 4L9 4C9.27614 4 9.5 3.77614 9.5 3.5C9.5 3.22386 9.27614 3 9 3L3.5 3C3.36739 3 3.24021 3.05268 3.14645 3.14645C3.05268 3.24022 3 3.36739 3 3.5L3 9.00001C3 9.27615 3.22386 9.50001 3.5 9.50001C3.77614 9.50001 4 9.27615 4 9.00001V4.70711L10.6464 11.3536C10.8417 11.5488 11.1583 11.5488 11.3536 11.3536Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$i = [\n \"color\"\n];\nvar ArrowTopRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$i);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.64645 11.3536C3.45118 11.1583 3.45118 10.8417 3.64645 10.6465L10.2929 4L6 4C5.72386 4 5.5 3.77614 5.5 3.5C5.5 3.22386 5.72386 3 6 3L11.5 3C11.6326 3 11.7598 3.05268 11.8536 3.14645C11.9473 3.24022 12 3.36739 12 3.5L12 9.00001C12 9.27615 11.7761 9.50001 11.5 9.50001C11.2239 9.50001 11 9.27615 11 9.00001V4.70711L4.35355 11.3536C4.15829 11.5488 3.84171 11.5488 3.64645 11.3536Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$j = [\n \"color\"\n];\nvar ArrowUpIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$j);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.14645 2.14645C7.34171 1.95118 7.65829 1.95118 7.85355 2.14645L11.8536 6.14645C12.0488 6.34171 12.0488 6.65829 11.8536 6.85355C11.6583 7.04882 11.3417 7.04882 11.1464 6.85355L8 3.70711L8 12.5C8 12.7761 7.77614 13 7.5 13C7.22386 13 7 12.7761 7 12.5L7 3.70711L3.85355 6.85355C3.65829 7.04882 3.34171 7.04882 3.14645 6.85355C2.95118 6.65829 2.95118 6.34171 3.14645 6.14645L7.14645 2.14645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$k = [\n \"color\"\n];\nvar AspectRatioIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$k);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.5 2H12.5C12.7761 2 13 2.22386 13 2.5V12.5C13 12.7761 12.7761 13 12.5 13H2.5C2.22386 13 2 12.7761 2 12.5V2.5C2 2.22386 2.22386 2 2.5 2ZM1 2.5C1 1.67157 1.67157 1 2.5 1H12.5C13.3284 1 14 1.67157 14 2.5V12.5C14 13.3284 13.3284 14 12.5 14H2.5C1.67157 14 1 13.3284 1 12.5V2.5ZM7.5 4C7.77614 4 8 3.77614 8 3.5C8 3.22386 7.77614 3 7.5 3C7.22386 3 7 3.22386 7 3.5C7 3.77614 7.22386 4 7.5 4ZM8 5.5C8 5.77614 7.77614 6 7.5 6C7.22386 6 7 5.77614 7 5.5C7 5.22386 7.22386 5 7.5 5C7.77614 5 8 5.22386 8 5.5ZM7.5 8C7.77614 8 8 7.77614 8 7.5C8 7.22386 7.77614 7 7.5 7C7.22386 7 7 7.22386 7 7.5C7 7.77614 7.22386 8 7.5 8ZM10 7.5C10 7.77614 9.77614 8 9.5 8C9.22386 8 9 7.77614 9 7.5C9 7.22386 9.22386 7 9.5 7C9.77614 7 10 7.22386 10 7.5ZM11.5 8C11.7761 8 12 7.77614 12 7.5C12 7.22386 11.7761 7 11.5 7C11.2239 7 11 7.22386 11 7.5C11 7.77614 11.2239 8 11.5 8Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$l = [\n \"color\"\n];\nvar AvatarIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$l);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877014 7.49988C0.877014 3.84219 3.84216 0.877045 7.49985 0.877045C11.1575 0.877045 14.1227 3.84219 14.1227 7.49988C14.1227 11.1575 11.1575 14.1227 7.49985 14.1227C3.84216 14.1227 0.877014 11.1575 0.877014 7.49988ZM7.49985 1.82704C4.36683 1.82704 1.82701 4.36686 1.82701 7.49988C1.82701 8.97196 2.38774 10.3131 3.30727 11.3213C4.19074 9.94119 5.73818 9.02499 7.50023 9.02499C9.26206 9.02499 10.8093 9.94097 11.6929 11.3208C12.6121 10.3127 13.1727 8.97172 13.1727 7.49988C13.1727 4.36686 10.6328 1.82704 7.49985 1.82704ZM10.9818 11.9787C10.2839 10.7795 8.9857 9.97499 7.50023 9.97499C6.01458 9.97499 4.71624 10.7797 4.01845 11.9791C4.97952 12.7272 6.18765 13.1727 7.49985 13.1727C8.81227 13.1727 10.0206 12.727 10.9818 11.9787ZM5.14999 6.50487C5.14999 5.207 6.20212 4.15487 7.49999 4.15487C8.79786 4.15487 9.84999 5.207 9.84999 6.50487C9.84999 7.80274 8.79786 8.85487 7.49999 8.85487C6.20212 8.85487 5.14999 7.80274 5.14999 6.50487ZM7.49999 5.10487C6.72679 5.10487 6.09999 5.73167 6.09999 6.50487C6.09999 7.27807 6.72679 7.90487 7.49999 7.90487C8.27319 7.90487 8.89999 7.27807 8.89999 6.50487C8.89999 5.73167 8.27319 5.10487 7.49999 5.10487Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$m = [\n \"color\"\n];\nvar BackpackIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$m);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 1C5 0.447715 5.44772 0 6 0H9C9.55228 0 10 0.447715 10 1V2H14C14.5523 2 15 2.44772 15 3V6C15 6.8888 14.6131 7.68734 14 8.23608V11.5C14 12.3284 13.3284 13 12.5 13H2.5C1.67157 13 1 12.3284 1 11.5V8.2359C0.38697 7.68721 0 6.88883 0 6V3C0 2.44772 0.447716 2 1 2H5V1ZM9 1V2H6V1H9ZM1 3H5H5.5H9.5H10H14V6C14 6.654 13.6866 7.23467 13.1997 7.6004C12.8655 7.85144 12.4508 8 12 8H8V7.5C8 7.22386 7.77614 7 7.5 7C7.22386 7 7 7.22386 7 7.5V8H3C2.5493 8 2.1346 7.85133 1.80029 7.60022C1.31335 7.23446 1 6.65396 1 6V3ZM7 9H3C2.64961 9 2.31292 8.93972 2 8.82905V11.5C2 11.7761 2.22386 12 2.5 12H12.5C12.7761 12 13 11.7761 13 11.5V8.82915C12.6871 8.93978 12.3504 9 12 9H8V9.5C8 9.77614 7.77614 10 7.5 10C7.22386 10 7 9.77614 7 9.5V9Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$n = [\n \"color\"\n];\nvar BadgeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$n);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.5 6H11.5C12.3284 6 13 6.67157 13 7.5C13 8.32843 12.3284 9 11.5 9H3.5C2.67157 9 2 8.32843 2 7.5C2 6.67157 2.67157 6 3.5 6ZM1 7.5C1 6.11929 2.11929 5 3.5 5H11.5C12.8807 5 14 6.11929 14 7.5C14 8.88071 12.8807 10 11.5 10H3.5C2.11929 10 1 8.88071 1 7.5ZM4.5 7C4.22386 7 4 7.22386 4 7.5C4 7.77614 4.22386 8 4.5 8H10.5C10.7761 8 11 7.77614 11 7.5C11 7.22386 10.7761 7 10.5 7H4.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$o = [\n \"color\"\n];\nvar BarChartIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$o);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.5 1C11.7761 1 12 1.22386 12 1.5V13.5C12 13.7761 11.7761 14 11.5 14C11.2239 14 11 13.7761 11 13.5V1.5C11 1.22386 11.2239 1 11.5 1ZM9.5 3C9.77614 3 10 3.22386 10 3.5V13.5C10 13.7761 9.77614 14 9.5 14C9.22386 14 9 13.7761 9 13.5V3.5C9 3.22386 9.22386 3 9.5 3ZM13.5 3C13.7761 3 14 3.22386 14 3.5V13.5C14 13.7761 13.7761 14 13.5 14C13.2239 14 13 13.7761 13 13.5V3.5C13 3.22386 13.2239 3 13.5 3ZM5.5 4C5.77614 4 6 4.22386 6 4.5V13.5C6 13.7761 5.77614 14 5.5 14C5.22386 14 5 13.7761 5 13.5V4.5C5 4.22386 5.22386 4 5.5 4ZM1.5 5C1.77614 5 2 5.22386 2 5.5V13.5C2 13.7761 1.77614 14 1.5 14C1.22386 14 1 13.7761 1 13.5V5.5C1 5.22386 1.22386 5 1.5 5ZM7.5 5C7.77614 5 8 5.22386 8 5.5V13.5C8 13.7761 7.77614 14 7.5 14C7.22386 14 7 13.7761 7 13.5V5.5C7 5.22386 7.22386 5 7.5 5ZM3.5 7C3.77614 7 4 7.22386 4 7.5V13.5C4 13.7761 3.77614 14 3.5 14C3.22386 14 3 13.7761 3 13.5V7.5C3 7.22386 3.22386 7 3.5 7Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$p = [\n \"color\"\n];\nvar BellIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$p);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.60124 1.25086C8.60124 1.75459 8.26278 2.17927 7.80087 2.30989C10.1459 2.4647 12 4.41582 12 6.79999V10.25C12 11.0563 12.0329 11.7074 12.7236 12.0528C12.931 12.1565 13.0399 12.3892 12.9866 12.6149C12.9333 12.8406 12.7319 13 12.5 13H8.16144C8.36904 13.1832 8.49997 13.4513 8.49997 13.75C8.49997 14.3023 8.05226 14.75 7.49997 14.75C6.94769 14.75 6.49997 14.3023 6.49997 13.75C6.49997 13.4513 6.63091 13.1832 6.83851 13H2.49999C2.2681 13 2.06664 12.8406 2.01336 12.6149C1.96009 12.3892 2.06897 12.1565 2.27638 12.0528C2.96708 11.7074 2.99999 11.0563 2.99999 10.25V6.79999C2.99999 4.41537 4.85481 2.46396 7.20042 2.3098C6.73867 2.17908 6.40036 1.75448 6.40036 1.25086C6.40036 0.643104 6.89304 0.150421 7.5008 0.150421C8.10855 0.150421 8.60124 0.643104 8.60124 1.25086ZM7.49999 3.29999C5.56699 3.29999 3.99999 4.86699 3.99999 6.79999V10.25L4.00002 10.3009C4.0005 10.7463 4.00121 11.4084 3.69929 12H11.3007C10.9988 11.4084 10.9995 10.7463 11 10.3009L11 10.25V6.79999C11 4.86699 9.43299 3.29999 7.49999 3.29999Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$q = [\n \"color\"\n];\nvar BlendingModeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 9C3 6.5 4.5 4.25 7.5 1.5C10.5 4.25 12 6.5 12 9C12 11.4853 9.98528 13.5 7.5 13.5C5.01472 13.5 3 11.4853 3 9ZM10.9524 8.30307C9.67347 7.82121 8.2879 8.46208 6.98956 9.06259C5.9327 9.55142 4.93365 10.0135 4.09695 9.82153C4.03357 9.55804 4 9.28294 4 9C4 7.11203 5.02686 5.27195 7.5 2.87357C9.66837 4.97639 10.725 6.65004 10.9524 8.30307Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$r = [\n \"color\"\n];\nvar BookmarkIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$r);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 2.5C3 2.22386 3.22386 2 3.5 2H11.5C11.7761 2 12 2.22386 12 2.5V13.5C12 13.6818 11.9014 13.8492 11.7424 13.9373C11.5834 14.0254 11.3891 14.0203 11.235 13.924L7.5 11.5896L3.765 13.924C3.61087 14.0203 3.41659 14.0254 3.25762 13.9373C3.09864 13.8492 3 13.6818 3 13.5V2.5ZM4 3V12.5979L6.97 10.7416C7.29427 10.539 7.70573 10.539 8.03 10.7416L11 12.5979V3H4Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$s = [\n \"color\"\n];\nvar BookmarkFilledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$s);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.5 2C3.22386 2 3 2.22386 3 2.5V13.5C3 13.6818 3.09864 13.8492 3.25762 13.9373C3.41659 14.0254 3.61087 14.0203 3.765 13.924L7.5 11.5896L11.235 13.924C11.3891 14.0203 11.5834 14.0254 11.7424 13.9373C11.9014 13.8492 12 13.6818 12 13.5V2.5C12 2.22386 11.7761 2 11.5 2H3.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$t = [\n \"color\"\n];\nvar BorderAllIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$t);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.25 1C0.25 0.585786 0.585786 0.25 1 0.25H14C14.4142 0.25 14.75 0.585786 14.75 1V14C14.75 14.4142 14.4142 14.75 14 14.75H1C0.585786 14.75 0.25 14.4142 0.25 14V1ZM1.75 1.75V13.25H13.25V1.75H1.75Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"5\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"3\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"5\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"3\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"9\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"11\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"9\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"11\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }));\n});\nvar _excluded$u = [\n \"color\"\n];\nvar BorderBottomIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$u);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 13.25L14 13.25V14.75L1 14.75V13.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"5\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"5\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"3\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"3\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"5\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"5\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"3\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"3\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"9\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"9\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"11\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"11\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"9\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"9\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"11\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"11\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"5\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"3\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"9\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"11\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }));\n});\nvar _excluded$v = [\n \"color\"\n];\nvar BorderDashedIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$v);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0 7.5C0 7.22386 0.223858 7 0.5 7H3C3.27614 7 3.5 7.22386 3.5 7.5C3.5 7.77614 3.27614 8 3 8H0.5C0.223858 8 0 7.77614 0 7.5ZM5.75 7.5C5.75 7.22386 5.97386 7 6.25 7H8.75C9.02614 7 9.25 7.22386 9.25 7.5C9.25 7.77614 9.02614 8 8.75 8H6.25C5.97386 8 5.75 7.77614 5.75 7.5ZM12 7C11.7239 7 11.5 7.22386 11.5 7.5C11.5 7.77614 11.7239 8 12 8H14.5C14.7761 8 15 7.77614 15 7.5C15 7.22386 14.7761 7 14.5 7H12Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$w = [\n \"color\"\n];\nvar BorderDottedIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$w);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.5 6.625C1.01675 6.625 0.625 7.01675 0.625 7.5C0.625 7.98325 1.01675 8.375 1.5 8.375C1.98325 8.375 2.375 7.98325 2.375 7.5C2.375 7.01675 1.98325 6.625 1.5 6.625ZM5.5 6.625C5.01675 6.625 4.625 7.01675 4.625 7.5C4.625 7.98325 5.01675 8.375 5.5 8.375C5.98325 8.375 6.375 7.98325 6.375 7.5C6.375 7.01675 5.98325 6.625 5.5 6.625ZM9.5 6.625C9.01675 6.625 8.625 7.01675 8.625 7.5C8.625 7.98325 9.01675 8.375 9.5 8.375C9.98325 8.375 10.375 7.98325 10.375 7.5C10.375 7.01675 9.98325 6.625 9.5 6.625ZM12.625 7.5C12.625 7.01675 13.0168 6.625 13.5 6.625C13.9832 6.625 14.375 7.01675 14.375 7.5C14.375 7.98325 13.9832 8.375 13.5 8.375C13.0168 8.375 12.625 7.98325 12.625 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$x = [\n \"color\"\n];\nvar BorderLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$x);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.75 1L1.75 14L0.249999 14L0.25 1L1.75 1Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"10\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 10 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"10\",\n y: \"13\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 10 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"12\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 12 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"12\",\n y: \"13\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 12 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 8 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 14 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"13\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 8 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"13\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 14 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"5\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 8 5)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"5\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 14 5)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"3\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 8 3)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"3\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 14 3)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"9\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 8 9)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"9\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 14 9)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"11\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 8 11)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"11\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 14 11)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"6\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 6 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"6\",\n y: \"13\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 6 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"4\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 4 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"4\",\n y: \"13\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 4 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"10\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 10 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"12\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 12 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 8 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 14 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"6\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 6 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"4\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 4 1)\",\n fill: color\n }));\n});\nvar _excluded$y = [\n \"color\"\n];\nvar BorderNoneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"5.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"5.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"3.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"3.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"5\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"5\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"5\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"3\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"3\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"3\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"9\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"9\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"9\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"11\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"11\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"11\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"9.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"9.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"11.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"11.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"5.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"3.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"9.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"11.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }));\n});\nvar _excluded$z = [\n \"color\"\n];\nvar BorderRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.25 1L13.25 14L14.75 14L14.75 1L13.25 1Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 5 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 5 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 3 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 3 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 7 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 1 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 7 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 1 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 7 5)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 1 5)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 7 3)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 1 3)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 7 9)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 1 9)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 7 11)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 1 11)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 9 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 9 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 11 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 11 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 5 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 3 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 7 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 1 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 9 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 11 1)\",\n fill: color\n }));\n});\nvar _excluded$A = [\n \"color\"\n];\nvar BorderSolidIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$A);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.25 7.5C1.25 7.22386 1.47386 7 1.75 7H13.25C13.5261 7 13.75 7.22386 13.75 7.5C13.75 7.77614 13.5261 8 13.25 8H1.75C1.47386 8 1.25 7.77614 1.25 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$B = [\n \"color\"\n];\nvar BorderSplitIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$B);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"5.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"3.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"5\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"3\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"9\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"11\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"9.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"11.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 1.49994C1 1.2238 1.22386 0.999939 1.5 0.999939H6V1.99994H2V5.99994H1V1.49994ZM13 1.99994H9V0.999939H13.5C13.7761 0.999939 14 1.2238 14 1.49994V5.99994H13V1.99994ZM1 13.4999V8.99994H2V12.9999H6V13.9999H1.5C1.22386 13.9999 1 13.7761 1 13.4999ZM13 12.9999V8.99994H14V13.4999C14 13.7761 13.7761 13.9999 13.5 13.9999H9.5V12.9999H13Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$C = [\n \"color\"\n];\nvar BorderStyleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$C);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.5 3C1.22386 3 1 3.22386 1 3.5C1 3.77614 1.22386 4 1.5 4H13.5C13.7761 4 14 3.77614 14 3.5C14 3.22386 13.7761 3 13.5 3H1.5ZM1 7.5C1 7.22386 1.22386 7 1.5 7H3.5C3.77614 7 4 7.22386 4 7.5C4 7.77614 3.77614 8 3.5 8H1.5C1.22386 8 1 7.77614 1 7.5ZM1 11.5C1 11.2239 1.22386 11 1.5 11C1.77614 11 2 11.2239 2 11.5C2 11.7761 1.77614 12 1.5 12C1.22386 12 1 11.7761 1 11.5ZM3 11.5C3 11.2239 3.22386 11 3.5 11C3.77614 11 4 11.2239 4 11.5C4 11.7761 3.77614 12 3.5 12C3.22386 12 3 11.7761 3 11.5ZM5.5 11C5.22386 11 5 11.2239 5 11.5C5 11.7761 5.22386 12 5.5 12C5.77614 12 6 11.7761 6 11.5C6 11.2239 5.77614 11 5.5 11ZM7 11.5C7 11.2239 7.22386 11 7.5 11C7.77614 11 8 11.2239 8 11.5C8 11.7761 7.77614 12 7.5 12C7.22386 12 7 11.7761 7 11.5ZM9.5 11C9.22386 11 9 11.2239 9 11.5C9 11.7761 9.22386 12 9.5 12C9.77614 12 10 11.7761 10 11.5C10 11.2239 9.77614 11 9.5 11ZM11 11.5C11 11.2239 11.2239 11 11.5 11C11.7761 11 12 11.2239 12 11.5C12 11.7761 11.7761 12 11.5 12C11.2239 12 11 11.7761 11 11.5ZM13.5 11C13.2239 11 13 11.2239 13 11.5C13 11.7761 13.2239 12 13.5 12C13.7761 12 14 11.7761 14 11.5C14 11.2239 13.7761 11 13.5 11ZM6.5 7C6.22386 7 6 7.22386 6 7.5C6 7.77614 6.22386 8 6.5 8H8.5C8.77614 8 9 7.77614 9 7.5C9 7.22386 8.77614 7 8.5 7H6.5ZM11 7.5C11 7.22386 11.2239 7 11.5 7H13.5C13.7761 7 14 7.22386 14 7.5C14 7.77614 13.7761 8 13.5 8H11.5C11.2239 8 11 7.77614 11 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$D = [\n \"color\"\n];\nvar BorderTopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$D);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14 1.75L1 1.75L1 0.249999L14 0.25L14 1.75Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"10\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 8 10)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"2\",\n y: \"10\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 2 10)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"12\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 8 12)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"2\",\n y: \"12\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 2 12)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"8\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 8 8)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"14\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 8 14)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"2\",\n y: \"8\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 2 8)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"2\",\n y: \"14\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 2 14)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"10\",\n y: \"8\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 10 8)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"10\",\n y: \"14\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 10 14)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"12\",\n y: \"8\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 12 8)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"12\",\n y: \"14\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 12 14)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"6\",\n y: \"8\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 6 8)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"6\",\n y: \"14\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 6 14)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"4\",\n y: \"8\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 4 8)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"4\",\n y: \"14\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 4 14)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"6\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 8 6)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"2\",\n y: \"6\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 2 6)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"4\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 8 4)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"2\",\n y: \"4\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 2 4)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"10\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 14 10)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"12\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 14 12)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"8\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 14 8)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"14\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 14 14)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"6\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 14 6)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"4\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 14 4)\",\n fill: color\n }));\n});\nvar _excluded$E = [\n \"color\"\n];\nvar BorderWidthIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$E);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 3H14V4H1V3ZM1 6H14V8H1V6ZM14 10.25H1V12.75H14V10.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$F = [\n \"color\"\n];\nvar BoxIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$F);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.5 2H2.5C2.22386 2 2 2.22386 2 2.5V12.5C2 12.7761 2.22386 13 2.5 13H12.5C12.7761 13 13 12.7761 13 12.5V2.5C13 2.22386 12.7761 2 12.5 2ZM2.5 1C1.67157 1 1 1.67157 1 2.5V12.5C1 13.3284 1.67157 14 2.5 14H12.5C13.3284 14 14 13.3284 14 12.5V2.5C14 1.67157 13.3284 1 12.5 1H2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$G = [\n \"color\"\n];\nvar BoxModelIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$G);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.99998 0.999976C1.44769 0.999976 0.999976 1.44769 0.999976 1.99998V13C0.999976 13.5523 1.44769 14 1.99998 14H13C13.5523 14 14 13.5523 14 13V1.99998C14 1.44769 13.5523 0.999976 13 0.999976H1.99998ZM1.99998 1.99998L13 1.99998V13H1.99998V1.99998ZM4.49996 3.99996C4.22382 3.99996 3.99996 4.22382 3.99996 4.49996V10.5C3.99996 10.7761 4.22382 11 4.49996 11H10.5C10.7761 11 11 10.7761 11 10.5V4.49996C11 4.22382 10.7761 3.99996 10.5 3.99996H4.49996ZM4.99996 9.99996V4.99996H9.99996V9.99996H4.99996Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$H = [\n \"color\"\n];\nvar ButtonIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$H);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 5H13C13.5523 5 14 5.44772 14 6V9C14 9.55228 13.5523 10 13 10H2C1.44772 10 1 9.55228 1 9V6C1 5.44772 1.44772 5 2 5ZM0 6C0 4.89543 0.895431 4 2 4H13C14.1046 4 15 4.89543 15 6V9C15 10.1046 14.1046 11 13 11H2C0.89543 11 0 10.1046 0 9V6ZM4.5 6.75C4.08579 6.75 3.75 7.08579 3.75 7.5C3.75 7.91421 4.08579 8.25 4.5 8.25C4.91421 8.25 5.25 7.91421 5.25 7.5C5.25 7.08579 4.91421 6.75 4.5 6.75ZM6.75 7.5C6.75 7.08579 7.08579 6.75 7.5 6.75C7.91421 6.75 8.25 7.08579 8.25 7.5C8.25 7.91421 7.91421 8.25 7.5 8.25C7.08579 8.25 6.75 7.91421 6.75 7.5ZM10.5 6.75C10.0858 6.75 9.75 7.08579 9.75 7.5C9.75 7.91421 10.0858 8.25 10.5 8.25C10.9142 8.25 11.25 7.91421 11.25 7.5C11.25 7.08579 10.9142 6.75 10.5 6.75Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$I = [\n \"color\"\n];\nvar CalendarIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$I);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.5 1C4.77614 1 5 1.22386 5 1.5V2H10V1.5C10 1.22386 10.2239 1 10.5 1C10.7761 1 11 1.22386 11 1.5V2H12.5C13.3284 2 14 2.67157 14 3.5V12.5C14 13.3284 13.3284 14 12.5 14H2.5C1.67157 14 1 13.3284 1 12.5V3.5C1 2.67157 1.67157 2 2.5 2H4V1.5C4 1.22386 4.22386 1 4.5 1ZM10 3V3.5C10 3.77614 10.2239 4 10.5 4C10.7761 4 11 3.77614 11 3.5V3H12.5C12.7761 3 13 3.22386 13 3.5V5H2V3.5C2 3.22386 2.22386 3 2.5 3H4V3.5C4 3.77614 4.22386 4 4.5 4C4.77614 4 5 3.77614 5 3.5V3H10ZM2 6V12.5C2 12.7761 2.22386 13 2.5 13H12.5C12.7761 13 13 12.7761 13 12.5V6H2ZM7 7.5C7 7.22386 7.22386 7 7.5 7C7.77614 7 8 7.22386 8 7.5C8 7.77614 7.77614 8 7.5 8C7.22386 8 7 7.77614 7 7.5ZM9.5 7C9.22386 7 9 7.22386 9 7.5C9 7.77614 9.22386 8 9.5 8C9.77614 8 10 7.77614 10 7.5C10 7.22386 9.77614 7 9.5 7ZM11 7.5C11 7.22386 11.2239 7 11.5 7C11.7761 7 12 7.22386 12 7.5C12 7.77614 11.7761 8 11.5 8C11.2239 8 11 7.77614 11 7.5ZM11.5 9C11.2239 9 11 9.22386 11 9.5C11 9.77614 11.2239 10 11.5 10C11.7761 10 12 9.77614 12 9.5C12 9.22386 11.7761 9 11.5 9ZM9 9.5C9 9.22386 9.22386 9 9.5 9C9.77614 9 10 9.22386 10 9.5C10 9.77614 9.77614 10 9.5 10C9.22386 10 9 9.77614 9 9.5ZM7.5 9C7.22386 9 7 9.22386 7 9.5C7 9.77614 7.22386 10 7.5 10C7.77614 10 8 9.77614 8 9.5C8 9.22386 7.77614 9 7.5 9ZM5 9.5C5 9.22386 5.22386 9 5.5 9C5.77614 9 6 9.22386 6 9.5C6 9.77614 5.77614 10 5.5 10C5.22386 10 5 9.77614 5 9.5ZM3.5 9C3.22386 9 3 9.22386 3 9.5C3 9.77614 3.22386 10 3.5 10C3.77614 10 4 9.77614 4 9.5C4 9.22386 3.77614 9 3.5 9ZM3 11.5C3 11.2239 3.22386 11 3.5 11C3.77614 11 4 11.2239 4 11.5C4 11.7761 3.77614 12 3.5 12C3.22386 12 3 11.7761 3 11.5ZM5.5 11C5.22386 11 5 11.2239 5 11.5C5 11.7761 5.22386 12 5.5 12C5.77614 12 6 11.7761 6 11.5C6 11.2239 5.77614 11 5.5 11ZM7 11.5C7 11.2239 7.22386 11 7.5 11C7.77614 11 8 11.2239 8 11.5C8 11.7761 7.77614 12 7.5 12C7.22386 12 7 11.7761 7 11.5ZM9.5 11C9.22386 11 9 11.2239 9 11.5C9 11.7761 9.22386 12 9.5 12C9.77614 12 10 11.7761 10 11.5C10 11.2239 9.77614 11 9.5 11Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$J = [\n \"color\"\n];\nvar CameraIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$J);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 3C1.44772 3 1 3.44772 1 4V11C1 11.5523 1.44772 12 2 12H13C13.5523 12 14 11.5523 14 11V4C14 3.44772 13.5523 3 13 3H2ZM0 4C0 2.89543 0.895431 2 2 2H13C14.1046 2 15 2.89543 15 4V11C15 12.1046 14.1046 13 13 13H2C0.895431 13 0 12.1046 0 11V4ZM2 4.25C2 4.11193 2.11193 4 2.25 4H4.75C4.88807 4 5 4.11193 5 4.25V5.75454C5 5.89261 4.88807 6.00454 4.75 6.00454H2.25C2.11193 6.00454 2 5.89261 2 5.75454V4.25ZM12.101 7.58421C12.101 9.02073 10.9365 10.1853 9.49998 10.1853C8.06346 10.1853 6.89893 9.02073 6.89893 7.58421C6.89893 6.14769 8.06346 4.98315 9.49998 4.98315C10.9365 4.98315 12.101 6.14769 12.101 7.58421ZM13.101 7.58421C13.101 9.57302 11.4888 11.1853 9.49998 11.1853C7.51117 11.1853 5.89893 9.57302 5.89893 7.58421C5.89893 5.5954 7.51117 3.98315 9.49998 3.98315C11.4888 3.98315 13.101 5.5954 13.101 7.58421Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$K = [\n \"color\"\n];\nvar CardStackIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$K);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 3.5C2 3.22386 2.22386 3 2.5 3H12.5C12.7761 3 13 3.22386 13 3.5V9.5C13 9.77614 12.7761 10 12.5 10H2.5C2.22386 10 2 9.77614 2 9.5V3.5ZM2 10.9146C1.4174 10.7087 1 10.1531 1 9.5V3.5C1 2.67157 1.67157 2 2.5 2H12.5C13.3284 2 14 2.67157 14 3.5V9.5C14 10.1531 13.5826 10.7087 13 10.9146V11.5C13 12.3284 12.3284 13 11.5 13H3.5C2.67157 13 2 12.3284 2 11.5V10.9146ZM12 11V11.5C12 11.7761 11.7761 12 11.5 12H3.5C3.22386 12 3 11.7761 3 11.5V11H12Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$L = [\n \"color\"\n];\nvar CardStackMinusIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$L);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.5 3C2.22386 3 2 3.22386 2 3.5V9.5C2 9.77614 2.22386 10 2.5 10H12.5C12.7761 10 13 9.77614 13 9.5V3.5C13 3.22386 12.7761 3 12.5 3H2.5ZM1 9.5C1 10.1531 1.4174 10.7087 2 10.9146V11.5C2 12.3284 2.67157 13 3.5 13H11.5C12.3284 13 13 12.3284 13 11.5V10.9146C13.5826 10.7087 14 10.1531 14 9.5V3.5C14 2.67157 13.3284 2 12.5 2H2.5C1.67157 2 1 2.67157 1 3.5V9.5ZM12 11.5V11H3V11.5C3 11.7761 3.22386 12 3.5 12H11.5C11.7761 12 12 11.7761 12 11.5ZM5.5 6C5.22386 6 5 6.22386 5 6.5C5 6.77614 5.22386 7 5.5 7H9.5C9.77614 7 10 6.77614 10 6.5C10 6.22386 9.77614 6 9.5 6H5.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$M = [\n \"color\"\n];\nvar CardStackPlusIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$M);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 3.5C2 3.22386 2.22386 3 2.5 3H12.5C12.7761 3 13 3.22386 13 3.5V9.5C13 9.77614 12.7761 10 12.5 10H2.5C2.22386 10 2 9.77614 2 9.5V3.5ZM2 10.9146C1.4174 10.7087 1 10.1531 1 9.5V3.5C1 2.67157 1.67157 2 2.5 2H12.5C13.3284 2 14 2.67157 14 3.5V9.5C14 10.1531 13.5826 10.7087 13 10.9146V11.5C13 12.3284 12.3284 13 11.5 13H3.5C2.67157 13 2 12.3284 2 11.5V10.9146ZM12 11V11.5C12 11.7761 11.7761 12 11.5 12H3.5C3.22386 12 3 11.7761 3 11.5V11H12ZM5 6.5C5 6.22386 5.22386 6 5.5 6H7V4.5C7 4.22386 7.22386 4 7.5 4C7.77614 4 8 4.22386 8 4.5V6H9.5C9.77614 6 10 6.22386 10 6.5C10 6.77614 9.77614 7 9.5 7H8V8.5C8 8.77614 7.77614 9 7.5 9C7.22386 9 7 8.77614 7 8.5V7H5.5C5.22386 7 5 6.77614 5 6.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$N = [\n \"color\"\n];\nvar CaretDownIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$N);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.18179 6.18181C4.35753 6.00608 4.64245 6.00608 4.81819 6.18181L7.49999 8.86362L10.1818 6.18181C10.3575 6.00608 10.6424 6.00608 10.8182 6.18181C10.9939 6.35755 10.9939 6.64247 10.8182 6.81821L7.81819 9.81821C7.73379 9.9026 7.61934 9.95001 7.49999 9.95001C7.38064 9.95001 7.26618 9.9026 7.18179 9.81821L4.18179 6.81821C4.00605 6.64247 4.00605 6.35755 4.18179 6.18181Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$O = [\n \"color\"\n];\nvar CaretLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$O);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.81809 4.18179C8.99383 4.35753 8.99383 4.64245 8.81809 4.81819L6.13629 7.49999L8.81809 10.1818C8.99383 10.3575 8.99383 10.6424 8.81809 10.8182C8.64236 10.9939 8.35743 10.9939 8.1817 10.8182L5.1817 7.81819C5.09731 7.73379 5.0499 7.61933 5.0499 7.49999C5.0499 7.38064 5.09731 7.26618 5.1817 7.18179L8.1817 4.18179C8.35743 4.00605 8.64236 4.00605 8.81809 4.18179Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$P = [\n \"color\"\n];\nvar CaretRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$P);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.18194 4.18185C6.35767 4.00611 6.6426 4.00611 6.81833 4.18185L9.81833 7.18185C9.90272 7.26624 9.95013 7.3807 9.95013 7.50005C9.95013 7.6194 9.90272 7.73386 9.81833 7.81825L6.81833 10.8182C6.6426 10.994 6.35767 10.994 6.18194 10.8182C6.0062 10.6425 6.0062 10.3576 6.18194 10.1819L8.86374 7.50005L6.18194 4.81825C6.0062 4.64251 6.0062 4.35759 6.18194 4.18185Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$Q = [\n \"color\"\n];\nvar CaretSortIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$Q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.93179 5.43179C4.75605 5.60753 4.75605 5.89245 4.93179 6.06819C5.10753 6.24392 5.39245 6.24392 5.56819 6.06819L7.49999 4.13638L9.43179 6.06819C9.60753 6.24392 9.89245 6.24392 10.0682 6.06819C10.2439 5.89245 10.2439 5.60753 10.0682 5.43179L7.81819 3.18179C7.73379 3.0974 7.61933 3.04999 7.49999 3.04999C7.38064 3.04999 7.26618 3.0974 7.18179 3.18179L4.93179 5.43179ZM10.0682 9.56819C10.2439 9.39245 10.2439 9.10753 10.0682 8.93179C9.89245 8.75606 9.60753 8.75606 9.43179 8.93179L7.49999 10.8636L5.56819 8.93179C5.39245 8.75606 5.10753 8.75606 4.93179 8.93179C4.75605 9.10753 4.75605 9.39245 4.93179 9.56819L7.18179 11.8182C7.35753 11.9939 7.64245 11.9939 7.81819 11.8182L10.0682 9.56819Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$R = [\n \"color\"\n];\nvar CaretUpIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$R);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.18179 8.81819C4.00605 8.64245 4.00605 8.35753 4.18179 8.18179L7.18179 5.18179C7.26618 5.0974 7.38064 5.04999 7.49999 5.04999C7.61933 5.04999 7.73379 5.0974 7.81819 5.18179L10.8182 8.18179C10.9939 8.35753 10.9939 8.64245 10.8182 8.81819C10.6424 8.99392 10.3575 8.99392 10.1818 8.81819L7.49999 6.13638L4.81819 8.81819C4.64245 8.99392 4.35753 8.99392 4.18179 8.81819Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$S = [\n \"color\"\n];\nvar ChatBubbleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$S);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.5 3L2.5 3.00002C1.67157 3.00002 1 3.6716 1 4.50002V9.50003C1 10.3285 1.67157 11 2.5 11H7.50003C7.63264 11 7.75982 11.0527 7.85358 11.1465L10 13.2929V11.5C10 11.2239 10.2239 11 10.5 11H12.5C13.3284 11 14 10.3285 14 9.50003V4.5C14 3.67157 13.3284 3 12.5 3ZM2.49999 2.00002L12.5 2C13.8807 2 15 3.11929 15 4.5V9.50003C15 10.8807 13.8807 12 12.5 12H11V14.5C11 14.7022 10.8782 14.8845 10.6913 14.9619C10.5045 15.0393 10.2894 14.9965 10.1464 14.8536L7.29292 12H2.5C1.11929 12 0 10.8807 0 9.50003V4.50002C0 3.11931 1.11928 2.00003 2.49999 2.00002Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$T = [\n \"color\"\n];\nvar CheckIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$T);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.4669 3.72684C11.7558 3.91574 11.8369 4.30308 11.648 4.59198L7.39799 11.092C7.29783 11.2452 7.13556 11.3467 6.95402 11.3699C6.77247 11.3931 6.58989 11.3355 6.45446 11.2124L3.70446 8.71241C3.44905 8.48022 3.43023 8.08494 3.66242 7.82953C3.89461 7.57412 4.28989 7.55529 4.5453 7.78749L6.75292 9.79441L10.6018 3.90792C10.7907 3.61902 11.178 3.53795 11.4669 3.72684Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$U = [\n \"color\"\n];\nvar CheckCircledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$U);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.877045C3.84222 0.877045 0.877075 3.84219 0.877075 7.49988C0.877075 11.1575 3.84222 14.1227 7.49991 14.1227C11.1576 14.1227 14.1227 11.1575 14.1227 7.49988C14.1227 3.84219 11.1576 0.877045 7.49991 0.877045ZM1.82708 7.49988C1.82708 4.36686 4.36689 1.82704 7.49991 1.82704C10.6329 1.82704 13.1727 4.36686 13.1727 7.49988C13.1727 10.6329 10.6329 13.1727 7.49991 13.1727C4.36689 13.1727 1.82708 10.6329 1.82708 7.49988ZM10.1589 5.53774C10.3178 5.31191 10.2636 5.00001 10.0378 4.84109C9.81194 4.68217 9.50004 4.73642 9.34112 4.96225L6.51977 8.97154L5.35681 7.78706C5.16334 7.59002 4.84677 7.58711 4.64973 7.78058C4.45268 7.97404 4.44978 8.29061 4.64325 8.48765L6.22658 10.1003C6.33054 10.2062 6.47617 10.2604 6.62407 10.2483C6.77197 10.2363 6.90686 10.1591 6.99226 10.0377L10.1589 5.53774Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$V = [\n \"color\"\n];\nvar CheckboxIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$V);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 3H12V12H3L3 3ZM2 3C2 2.44771 2.44772 2 3 2H12C12.5523 2 13 2.44772 13 3V12C13 12.5523 12.5523 13 12 13H3C2.44771 13 2 12.5523 2 12V3ZM10.3498 5.51105C10.506 5.28337 10.4481 4.97212 10.2204 4.81587C9.99275 4.65961 9.6815 4.71751 9.52525 4.94519L6.64048 9.14857L5.19733 7.40889C5.02102 7.19635 4.7058 7.16699 4.49327 7.34329C4.28073 7.5196 4.25137 7.83482 4.42767 8.04735L6.2934 10.2964C6.39348 10.4171 6.54437 10.4838 6.70097 10.4767C6.85757 10.4695 7.00177 10.3894 7.09047 10.2601L10.3498 5.51105Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$W = [\n \"color\"\n];\nvar ChevronDownIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$W);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.13523 6.15803C3.3241 5.95657 3.64052 5.94637 3.84197 6.13523L7.5 9.56464L11.158 6.13523C11.3595 5.94637 11.6759 5.95657 11.8648 6.15803C12.0536 6.35949 12.0434 6.67591 11.842 6.86477L7.84197 10.6148C7.64964 10.7951 7.35036 10.7951 7.15803 10.6148L3.15803 6.86477C2.95657 6.67591 2.94637 6.35949 3.13523 6.15803Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$X = [\n \"color\"\n];\nvar ChevronLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$X);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.84182 3.13514C9.04327 3.32401 9.05348 3.64042 8.86462 3.84188L5.43521 7.49991L8.86462 11.1579C9.05348 11.3594 9.04327 11.6758 8.84182 11.8647C8.64036 12.0535 8.32394 12.0433 8.13508 11.8419L4.38508 7.84188C4.20477 7.64955 4.20477 7.35027 4.38508 7.15794L8.13508 3.15794C8.32394 2.95648 8.64036 2.94628 8.84182 3.13514Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$Y = [\n \"color\"\n];\nvar ChevronRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$Y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.1584 3.13508C6.35985 2.94621 6.67627 2.95642 6.86514 3.15788L10.6151 7.15788C10.7954 7.3502 10.7954 7.64949 10.6151 7.84182L6.86514 11.8418C6.67627 12.0433 6.35985 12.0535 6.1584 11.8646C5.95694 11.6757 5.94673 11.3593 6.1356 11.1579L9.565 7.49985L6.1356 3.84182C5.94673 3.64036 5.95694 3.32394 6.1584 3.13508Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$Z = [\n \"color\"\n];\nvar ChevronUpIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$Z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.13523 8.84197C3.3241 9.04343 3.64052 9.05363 3.84197 8.86477L7.5 5.43536L11.158 8.86477C11.3595 9.05363 11.6759 9.04343 11.8648 8.84197C12.0536 8.64051 12.0434 8.32409 11.842 8.13523L7.84197 4.38523C7.64964 4.20492 7.35036 4.20492 7.15803 4.38523L3.15803 8.13523C2.95657 8.32409 2.94637 8.64051 3.13523 8.84197Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$_ = [\n \"color\"\n];\nvar CircleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$_);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.49991C0.877075 3.84222 3.84222 0.877075 7.49991 0.877075C11.1576 0.877075 14.1227 3.84222 14.1227 7.49991C14.1227 11.1576 11.1576 14.1227 7.49991 14.1227C3.84222 14.1227 0.877075 11.1576 0.877075 7.49991ZM7.49991 1.82708C4.36689 1.82708 1.82708 4.36689 1.82708 7.49991C1.82708 10.6329 4.36689 13.1727 7.49991 13.1727C10.6329 13.1727 13.1727 10.6329 13.1727 7.49991C13.1727 4.36689 10.6329 1.82708 7.49991 1.82708Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$$ = [\n \"color\"\n];\nvar CircleBackslashIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$$);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.877075C3.84222 0.877075 0.877075 3.84222 0.877075 7.49991C0.877075 11.1576 3.84222 14.1227 7.49991 14.1227C11.1576 14.1227 14.1227 11.1576 14.1227 7.49991C14.1227 3.84222 11.1576 0.877075 7.49991 0.877075ZM3.85768 3.15057C4.84311 2.32448 6.11342 1.82708 7.49991 1.82708C10.6329 1.82708 13.1727 4.36689 13.1727 7.49991C13.1727 8.88638 12.6753 10.1567 11.8492 11.1421L3.85768 3.15057ZM3.15057 3.85768C2.32448 4.84311 1.82708 6.11342 1.82708 7.49991C1.82708 10.6329 4.36689 13.1727 7.49991 13.1727C8.88638 13.1727 10.1567 12.6753 11.1421 11.8492L3.15057 3.85768Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$10 = [\n \"color\"\n];\nvar ClipboardIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$10);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 2V1H10V2H5ZM4.75 0C4.33579 0 4 0.335786 4 0.75V1H3.5C2.67157 1 2 1.67157 2 2.5V12.5C2 13.3284 2.67157 14 3.5 14H11.5C12.3284 14 13 13.3284 13 12.5V2.5C13 1.67157 12.3284 1 11.5 1H11V0.75C11 0.335786 10.6642 0 10.25 0H4.75ZM11 2V2.25C11 2.66421 10.6642 3 10.25 3H4.75C4.33579 3 4 2.66421 4 2.25V2H3.5C3.22386 2 3 2.22386 3 2.5V12.5C3 12.7761 3.22386 13 3.5 13H11.5C11.7761 13 12 12.7761 12 12.5V2.5C12 2.22386 11.7761 2 11.5 2H11Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$11 = [\n \"color\"\n];\nvar ClipboardCopyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$11);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 2V1H10V2H5ZM4.75 0C4.33579 0 4 0.335786 4 0.75V1H3.5C2.67157 1 2 1.67157 2 2.5V12.5C2 13.3284 2.67157 14 3.5 14H7V13H3.5C3.22386 13 3 12.7761 3 12.5V2.5C3 2.22386 3.22386 2 3.5 2H4V2.25C4 2.66421 4.33579 3 4.75 3H10.25C10.6642 3 11 2.66421 11 2.25V2H11.5C11.7761 2 12 2.22386 12 2.5V7H13V2.5C13 1.67157 12.3284 1 11.5 1H11V0.75C11 0.335786 10.6642 0 10.25 0H4.75ZM9 8.5C9 8.77614 8.77614 9 8.5 9C8.22386 9 8 8.77614 8 8.5C8 8.22386 8.22386 8 8.5 8C8.77614 8 9 8.22386 9 8.5ZM10.5 9C10.7761 9 11 8.77614 11 8.5C11 8.22386 10.7761 8 10.5 8C10.2239 8 10 8.22386 10 8.5C10 8.77614 10.2239 9 10.5 9ZM13 8.5C13 8.77614 12.7761 9 12.5 9C12.2239 9 12 8.77614 12 8.5C12 8.22386 12.2239 8 12.5 8C12.7761 8 13 8.22386 13 8.5ZM14.5 9C14.7761 9 15 8.77614 15 8.5C15 8.22386 14.7761 8 14.5 8C14.2239 8 14 8.22386 14 8.5C14 8.77614 14.2239 9 14.5 9ZM15 10.5C15 10.7761 14.7761 11 14.5 11C14.2239 11 14 10.7761 14 10.5C14 10.2239 14.2239 10 14.5 10C14.7761 10 15 10.2239 15 10.5ZM14.5 13C14.7761 13 15 12.7761 15 12.5C15 12.2239 14.7761 12 14.5 12C14.2239 12 14 12.2239 14 12.5C14 12.7761 14.2239 13 14.5 13ZM14.5 15C14.7761 15 15 14.7761 15 14.5C15 14.2239 14.7761 14 14.5 14C14.2239 14 14 14.2239 14 14.5C14 14.7761 14.2239 15 14.5 15ZM8.5 11C8.77614 11 9 10.7761 9 10.5C9 10.2239 8.77614 10 8.5 10C8.22386 10 8 10.2239 8 10.5C8 10.7761 8.22386 11 8.5 11ZM9 12.5C9 12.7761 8.77614 13 8.5 13C8.22386 13 8 12.7761 8 12.5C8 12.2239 8.22386 12 8.5 12C8.77614 12 9 12.2239 9 12.5ZM8.5 15C8.77614 15 9 14.7761 9 14.5C9 14.2239 8.77614 14 8.5 14C8.22386 14 8 14.2239 8 14.5C8 14.7761 8.22386 15 8.5 15ZM11 14.5C11 14.7761 10.7761 15 10.5 15C10.2239 15 10 14.7761 10 14.5C10 14.2239 10.2239 14 10.5 14C10.7761 14 11 14.2239 11 14.5ZM12.5 15C12.7761 15 13 14.7761 13 14.5C13 14.2239 12.7761 14 12.5 14C12.2239 14 12 14.2239 12 14.5C12 14.7761 12.2239 15 12.5 15Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$12 = [\n \"color\"\n];\nvar ClockIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$12);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.50009 0.877014C3.84241 0.877014 0.877258 3.84216 0.877258 7.49984C0.877258 11.1575 3.8424 14.1227 7.50009 14.1227C11.1578 14.1227 14.1229 11.1575 14.1229 7.49984C14.1229 3.84216 11.1577 0.877014 7.50009 0.877014ZM1.82726 7.49984C1.82726 4.36683 4.36708 1.82701 7.50009 1.82701C10.6331 1.82701 13.1729 4.36683 13.1729 7.49984C13.1729 10.6328 10.6331 13.1727 7.50009 13.1727C4.36708 13.1727 1.82726 10.6328 1.82726 7.49984ZM8 4.50001C8 4.22387 7.77614 4.00001 7.5 4.00001C7.22386 4.00001 7 4.22387 7 4.50001V7.50001C7 7.63262 7.05268 7.7598 7.14645 7.85357L9.14645 9.85357C9.34171 10.0488 9.65829 10.0488 9.85355 9.85357C10.0488 9.65831 10.0488 9.34172 9.85355 9.14646L8 7.29291V4.50001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$13 = [\n \"color\"\n];\nvar CodeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$13);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.96424 2.68571C10.0668 2.42931 9.94209 2.13833 9.6857 2.03577C9.4293 1.93322 9.13832 2.05792 9.03576 2.31432L5.03576 12.3143C4.9332 12.5707 5.05791 12.8617 5.3143 12.9642C5.5707 13.0668 5.86168 12.9421 5.96424 12.6857L9.96424 2.68571ZM3.85355 5.14646C4.04882 5.34172 4.04882 5.6583 3.85355 5.85356L2.20711 7.50001L3.85355 9.14646C4.04882 9.34172 4.04882 9.6583 3.85355 9.85356C3.65829 10.0488 3.34171 10.0488 3.14645 9.85356L1.14645 7.85356C0.951184 7.6583 0.951184 7.34172 1.14645 7.14646L3.14645 5.14646C3.34171 4.9512 3.65829 4.9512 3.85355 5.14646ZM11.1464 5.14646C11.3417 4.9512 11.6583 4.9512 11.8536 5.14646L13.8536 7.14646C14.0488 7.34172 14.0488 7.6583 13.8536 7.85356L11.8536 9.85356C11.6583 10.0488 11.3417 10.0488 11.1464 9.85356C10.9512 9.6583 10.9512 9.34172 11.1464 9.14646L12.7929 7.50001L11.1464 5.85356C10.9512 5.6583 10.9512 5.34172 11.1464 5.14646Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$14 = [\n \"color\"\n];\nvar CodeSandboxLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$14);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.71144 0.796902C7.57741 0.734357 7.42257 0.734357 7.28855 0.796902L1.28855 3.5969C1.11251 3.67905 0.999993 3.85573 0.999993 4.04999V10.95C0.999993 11.1443 1.11251 11.3209 1.28855 11.4031L7.28855 14.2031C7.42257 14.2656 7.57741 14.2656 7.71144 14.2031L13.7114 11.4031C13.8875 11.3209 14 11.1443 14 10.95V4.04999C14 3.85573 13.8875 3.67905 13.7114 3.5969L7.71144 0.796902ZM7.49999 3.15674L5.98039 2.51091L7.49999 1.80176L9.01959 2.51091L7.49999 3.15674ZM7.69556 4.16018L10.2382 3.07958L12.2719 4.02865L7.49999 6.05671L2.72808 4.02865L4.76181 3.07958L7.30442 4.16018C7.42939 4.2133 7.57059 4.2133 7.69556 4.16018ZM7.99999 6.93078L13 4.80578V7.92966L11.0821 8.8119C10.7273 8.97509 10.5 9.32988 10.5 9.72039V11.7982L7.99999 12.9649V6.93078ZM11.5 11.3316L13 10.6316V9.03039L11.5 9.72039V11.3316ZM6.99999 6.93078V12.9649L4.50231 11.7993V9.72036C4.50231 9.32985 4.27499 8.97506 3.92022 8.81187L1.99999 7.92856V4.80578L6.99999 6.93078ZM1.99999 10.6316L3.50231 11.3326L3.50231 9.72036L1.99999 9.02929V10.6316Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$15 = [\n \"color\"\n];\nvar ColorWheelIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$15);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.49985C0.877075 3.84216 3.84222 0.877014 7.49991 0.877014C11.1576 0.877014 14.1227 3.84216 14.1227 7.49985C14.1227 11.1575 11.1576 14.1227 7.49991 14.1227C3.84222 14.1227 0.877075 11.1575 0.877075 7.49985ZM3.78135 3.21565C4.68298 2.43239 5.83429 1.92904 7.09998 1.84089V6.53429L3.78135 3.21565ZM3.21567 3.78134C2.43242 4.68298 1.92909 5.83428 1.84095 7.09997H6.5343L3.21567 3.78134ZM6.5343 7.89997H1.84097C1.92916 9.16562 2.43253 10.3169 3.21579 11.2185L6.5343 7.89997ZM3.78149 11.7842C4.6831 12.5673 5.83435 13.0707 7.09998 13.1588V8.46566L3.78149 11.7842ZM7.89998 8.46566V13.1588C9.16559 13.0706 10.3168 12.5673 11.2184 11.7841L7.89998 8.46566ZM11.7841 11.2184C12.5673 10.3168 13.0707 9.16558 13.1588 7.89997H8.46567L11.7841 11.2184ZM8.46567 7.09997H13.1589C13.0707 5.83432 12.5674 4.68305 11.7842 3.78143L8.46567 7.09997ZM11.2185 3.21573C10.3169 2.43246 9.16565 1.92909 7.89998 1.8409V6.53429L11.2185 3.21573Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$16 = [\n \"color\"\n];\nvar ColumnSpacingIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$16);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.00012 1.5C8.00012 1.22386 7.77626 1 7.50012 1C7.22398 1 7.00012 1.22386 7.00012 1.5V13.5C7.00012 13.7761 7.22398 14 7.50012 14C7.77626 14 8.00012 13.7761 8.00012 13.5V1.5ZM3.31812 5.818C3.49386 5.64227 3.49386 5.35734 3.31812 5.18161C3.14239 5.00587 2.85746 5.00587 2.68173 5.18161L0.681729 7.18161C0.505993 7.35734 0.505993 7.64227 0.681729 7.818L2.68173 9.818C2.85746 9.99374 3.14239 9.99374 3.31812 9.818C3.49386 9.64227 3.49386 9.35734 3.31812 9.18161L2.08632 7.9498H5.50017C5.7487 7.9498 5.95017 7.74833 5.95017 7.4998C5.95017 7.25128 5.7487 7.0498 5.50017 7.0498H2.08632L3.31812 5.818ZM12.3181 5.18161C12.1424 5.00587 11.8575 5.00587 11.6817 5.18161C11.506 5.35734 11.506 5.64227 11.6817 5.818L12.9135 7.0498H9.50017C9.25164 7.0498 9.05017 7.25128 9.05017 7.4998C9.05017 7.74833 9.25164 7.9498 9.50017 7.9498H12.9135L11.6817 9.18161C11.506 9.35734 11.506 9.64227 11.6817 9.818C11.8575 9.99374 12.1424 9.99374 12.3181 9.818L14.3181 7.818C14.4939 7.64227 14.4939 7.35734 14.3181 7.18161L12.3181 5.18161Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$17 = [\n \"color\"\n];\nvar ColumnsIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$17);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.14998 14V1H0.849976V14H2.14998ZM6.14998 14V1H4.84998V14H6.14998ZM10.15 1V14H8.84998V1H10.15ZM14.15 14V1H12.85V14H14.15Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$18 = [\n \"color\"\n];\nvar CommitIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$18);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.94969 7.49989C9.94969 8.85288 8.85288 9.94969 7.49989 9.94969C6.14691 9.94969 5.0501 8.85288 5.0501 7.49989C5.0501 6.14691 6.14691 5.0501 7.49989 5.0501C8.85288 5.0501 9.94969 6.14691 9.94969 7.49989ZM10.8632 8C10.6213 9.64055 9.20764 10.8997 7.49989 10.8997C5.79214 10.8997 4.37847 9.64055 4.13662 8H0.5C0.223858 8 0 7.77614 0 7.5C0 7.22386 0.223858 7 0.5 7H4.13659C4.37835 5.35935 5.79206 4.1001 7.49989 4.1001C9.20772 4.1001 10.6214 5.35935 10.8632 7H14.5C14.7761 7 15 7.22386 15 7.5C15 7.77614 14.7761 8 14.5 8H10.8632Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$19 = [\n \"color\"\n];\nvar Component1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$19);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.67129 3.14634C4.47603 3.34161 4.47603 3.65819 4.67129 3.85345L7.14616 6.32833C7.34142 6.52359 7.65801 6.52359 7.85327 6.32833L10.3281 3.85345C10.5234 3.65819 10.5234 3.34161 10.3281 3.14634L7.85327 0.671471C7.65801 0.476209 7.34142 0.476209 7.14616 0.671471L4.67129 3.14634ZM7.49971 5.26766L5.73195 3.4999L7.49971 1.73213L9.26748 3.4999L7.49971 5.26766ZM8.67129 7.14634C8.47603 7.34161 8.47603 7.65819 8.67129 7.85345L11.1462 10.3283C11.3414 10.5236 11.658 10.5236 11.8533 10.3283L14.3281 7.85345C14.5234 7.65819 14.5234 7.34161 14.3281 7.14634L11.8533 4.67147C11.658 4.47621 11.3414 4.47621 11.1462 4.67147L8.67129 7.14634ZM11.4997 9.26766L9.73195 7.4999L11.4997 5.73213L13.2675 7.4999L11.4997 9.26766ZM4.67129 11.8535C4.47603 11.6582 4.47603 11.3416 4.67129 11.1463L7.14616 8.67147C7.34142 8.47621 7.65801 8.47621 7.85327 8.67147L10.3281 11.1463C10.5234 11.3416 10.5234 11.6582 10.3281 11.8535L7.85327 14.3283C7.65801 14.5236 7.34142 14.5236 7.14616 14.3283L4.67129 11.8535ZM5.73195 11.4999L7.49971 13.2677L9.26748 11.4999L7.49971 9.73213L5.73195 11.4999ZM0.671288 7.14649C0.476026 7.34175 0.476026 7.65834 0.671288 7.8536L3.14616 10.3285C3.34142 10.5237 3.65801 10.5237 3.85327 10.3285L6.32814 7.8536C6.5234 7.65834 6.5234 7.34175 6.32814 7.14649L3.85327 4.67162C3.65801 4.47636 3.34142 4.47636 3.14616 4.67162L0.671288 7.14649ZM3.49972 9.26781L1.73195 7.50005L3.49972 5.73228L5.26748 7.50005L3.49972 9.26781Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1a = [\n \"color\"\n];\nvar Component2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1a);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.87935 1H3.9H11.1H11.1207C11.5231 0.999994 11.8553 0.999989 12.1259 1.0221C12.407 1.04506 12.6653 1.09434 12.908 1.21799C13.2843 1.40973 13.5903 1.7157 13.782 2.09202C13.9057 2.33469 13.9549 2.59304 13.9779 2.87409C14 3.14468 14 3.47686 14 3.87934V3.9V11.1V11.1207C14 11.5231 14 11.8553 13.9779 12.1259C13.9549 12.407 13.9057 12.6653 13.782 12.908C13.5903 13.2843 13.2843 13.5903 12.908 13.782C12.6653 13.9057 12.407 13.9549 12.1259 13.9779C11.8553 14 11.5231 14 11.1207 14H11.1H3.9H3.87934C3.47686 14 3.14468 14 2.87409 13.9779C2.59304 13.9549 2.33469 13.9057 2.09202 13.782C1.7157 13.5903 1.40973 13.2843 1.21799 12.908C1.09434 12.6653 1.04506 12.407 1.0221 12.1259C0.999989 11.8553 0.999994 11.5231 1 11.1207V11.1207V11.1V3.9V3.87935V3.87934C0.999994 3.47686 0.999989 3.14468 1.0221 2.87409C1.04506 2.59304 1.09434 2.33469 1.21799 2.09202C1.40973 1.7157 1.7157 1.40973 2.09202 1.21799C2.33469 1.09434 2.59304 1.04506 2.87409 1.0221C3.14469 0.999989 3.47687 0.999994 3.87935 1ZM2.95552 2.01878C2.73631 2.03669 2.62421 2.06915 2.54601 2.10899C2.35785 2.20487 2.20487 2.35785 2.10899 2.54601C2.06915 2.62421 2.03669 2.73631 2.01878 2.95552C2.00039 3.18056 2 3.47171 2 3.9V7H7V2H3.9C3.47171 2 3.18056 2.00039 2.95552 2.01878ZM7 8H2V11.1C2 11.5283 2.00039 11.8194 2.01878 12.0445C2.03669 12.2637 2.06915 12.3758 2.10899 12.454C2.20487 12.6422 2.35785 12.7951 2.54601 12.891C2.62421 12.9309 2.73631 12.9633 2.95552 12.9812C3.18056 12.9996 3.47171 13 3.9 13H7V8ZM8 8H13V11.1C13 11.5283 12.9996 11.8194 12.9812 12.0445C12.9633 12.2637 12.9309 12.3758 12.891 12.454C12.7951 12.6422 12.6422 12.7951 12.454 12.891C12.3758 12.9309 12.2637 12.9633 12.0445 12.9812C11.8194 12.9996 11.5283 13 11.1 13H8V8ZM13 7H8V2H11.1C11.5283 2 11.8194 2.00039 12.0445 2.01878C12.2637 2.03669 12.3758 2.06915 12.454 2.10899C12.6422 2.20487 12.7951 2.35785 12.891 2.54601C12.9309 2.62421 12.9633 2.73631 12.9812 2.95552C12.9996 3.18056 13 3.47171 13 3.9V7Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1b = [\n \"color\"\n];\nvar ComponentBooleanIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1b);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.85367 1.48956C7.65841 1.29429 7.34182 1.29429 7.14656 1.48956L1.48971 7.14641C1.29445 7.34167 1.29445 7.65825 1.48971 7.85352L7.14656 13.5104C7.34182 13.7056 7.65841 13.7056 7.85367 13.5104L13.5105 7.85352C13.7058 7.65825 13.7058 7.34167 13.5105 7.14641L7.85367 1.48956ZM7.5 2.55033L2.55037 7.49996L7.5 12.4496V2.55033Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1c = [\n \"color\"\n];\nvar ComponentInstanceIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1c);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.1465 1.48959C7.34176 1.29432 7.65835 1.29432 7.85361 1.48959L13.5105 7.14644C13.7057 7.3417 13.7057 7.65829 13.5105 7.85355L7.85361 13.5104C7.65835 13.7057 7.34176 13.7057 7.1465 13.5104L1.48965 7.85355C1.29439 7.65829 1.29439 7.3417 1.48965 7.14644L7.1465 1.48959ZM7.50005 2.55025L2.55031 7.49999L7.50005 12.4497L12.4498 7.49999L7.50005 2.55025Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1d = [\n \"color\"\n];\nvar ComponentNoneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1d);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.85361 1.48959C7.65835 1.29432 7.34176 1.29432 7.1465 1.48959L1.48965 7.14644C1.29439 7.3417 1.29439 7.65829 1.48965 7.85355L3.9645 10.3284L1.64644 12.6464C1.45118 12.8417 1.45118 13.1583 1.64644 13.3536C1.84171 13.5488 2.15829 13.5488 2.35355 13.3536L4.6716 11.0355L7.1465 13.5104C7.34176 13.7057 7.65835 13.7057 7.85361 13.5104L13.5105 7.85355C13.7057 7.65829 13.7057 7.3417 13.5105 7.14644L11.0356 4.67154L13.3535 2.35355C13.5488 2.15829 13.5488 1.84171 13.3535 1.64645C13.1583 1.45118 12.8417 1.45118 12.6464 1.64645L10.3285 3.96443L7.85361 1.48959ZM9.62135 4.67154L7.50005 2.55025L2.55031 7.49999L4.6716 9.62129L9.62135 4.67154ZM5.37871 10.3284L7.50005 12.4497L12.4498 7.49999L10.3285 5.37865L5.37871 10.3284Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1e = [\n \"color\"\n];\nvar ComponentPlaceholderIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1e);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.8034 7.14644C12.9986 6.95118 13.3152 6.95118 13.5105 7.14644C13.7057 7.3417 13.7057 7.65829 13.5105 7.85355C13.3152 8.04881 12.9986 8.04881 12.8034 7.85355C12.6081 7.65828 12.6081 7.3417 12.8034 7.14644ZM12.0962 8.56065C12.2915 8.75592 12.2915 9.0725 12.0962 9.26776C11.901 9.46302 11.5844 9.46302 11.3891 9.26776C11.1939 9.0725 11.1939 8.75592 11.3891 8.56065C11.5844 8.36539 11.901 8.36539 12.0962 8.56065ZM10.682 9.97487C10.8773 10.1701 10.8773 10.4867 10.682 10.682C10.4868 10.8772 10.1702 10.8772 9.97493 10.682C9.77967 10.4867 9.77967 10.1701 9.97493 9.97487C10.1702 9.7796 10.4868 9.7796 10.682 9.97487ZM9.26782 11.3891C9.46308 11.5843 9.46308 11.9009 9.26782 12.0962C9.07256 12.2915 8.75598 12.2915 8.56071 12.0962C8.36545 11.9009 8.36545 11.5843 8.56072 11.3891C8.75598 11.1938 9.07256 11.1938 9.26782 11.3891ZM7.1465 13.5104C6.95124 13.3151 6.95124 12.9986 7.1465 12.8033C7.17091 12.7789 7.19721 12.7575 7.22494 12.7392C7.41901 12.6111 7.68275 12.6324 7.85361 12.8033C8.04887 12.9986 8.04887 13.3151 7.85361 13.5104C7.65835 13.7057 7.34176 13.7057 7.1465 13.5104Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.90386 8.56065C2.7086 8.75592 2.7086 9.0725 2.90386 9.26776 3.09912 9.46302 3.41571 9.46302 3.61097 9.26776 3.80623 9.0725 3.80623 8.75592 3.61097 8.56065 3.41571 8.36539 3.09912 8.36539 2.90386 8.56065zM4.31807 9.97487C4.12281 10.1701 4.12281 10.4867 4.31807 10.682 4.51334 10.8772 4.82992 10.8772 5.02518 10.682 5.22044 10.4867 5.22044 10.1701 5.02518 9.97487 4.82992 9.7796 4.51334 9.7796 4.31807 9.97487zM5.73229 11.3891C5.53703 11.5843 5.53703 11.9009 5.73229 12.0962 5.92755 12.2914 6.24413 12.2915 6.43939 12.0962 6.63466 11.9009 6.63466 11.5843 6.43939 11.3891 6.24413 11.1938 5.92755 11.1938 5.73229 11.3891zM2.19675 7.85355C2.36761 7.68269 2.38897 7.41895 2.26082 7.22488 2.09046 6.96684 1.71063 6.92546 1.48965 7.14644 1.29439 7.3417 1.29439 7.65829 1.48965 7.85355 1.68491 8.04881 2.00149 8.04881 2.19675 7.85355zM3.61097 5.73223C3.41571 5.53696 3.09912 5.53696 2.90386 5.73223 2.7086 5.92749 2.7086 6.24407 2.90386 6.43933 3.09912 6.6346 3.41571 6.6346 3.61097 6.43933 3.80623 6.24407 3.80623 5.92749 3.61097 5.73223zM5.02518 4.31801C4.82992 4.12275 4.51334 4.12275 4.31807 4.31801 4.12281 4.51328 4.12281 4.82986 4.31807 5.02512 4.51334 5.22038 4.82992 5.22038 5.02518 5.02512 5.22044 4.82986 5.22044 4.51328 5.02518 4.31801zM6.43939 2.9038C6.24413 2.70854 5.92755 2.70854 5.73229 2.9038 5.53703 3.09906 5.53703 3.41564 5.73229 3.61091 5.92755 3.80617 6.24413 3.80617 6.43939 3.61091 6.63466 3.41564 6.63466 3.09906 6.43939 2.9038zM7.85361 1.48959C7.65835 1.29432 7.34176 1.29432 7.1465 1.48959 6.95124 1.68485 6.95124 2.00143 7.1465 2.19669 7.34176 2.39196 7.65835 2.39196 7.85361 2.19669 8.04887 2.00143 8.04887 1.68485 7.85361 1.48959zM9.26782 2.9038C9.07256 2.70854 8.75598 2.70854 8.56071 2.9038 8.36545 3.09906 8.36545 3.41564 8.56071 3.61091 8.75598 3.80617 9.07256 3.80617 9.26782 3.61091 9.46308 3.41564 9.46308 3.09906 9.26782 2.9038zM10.682 4.31801C10.4868 4.12275 10.1702 4.12275 9.97493 4.31801 9.77967 4.51328 9.77967 4.82986 9.97493 5.02512 10.1702 5.22038 10.4868 5.22038 10.682 5.02512 10.8773 4.82986 10.8773 4.51328 10.682 4.31801zM12.0962 5.73223C11.901 5.53696 11.5844 5.53696 11.3891 5.73223 11.1939 5.92749 11.1939 6.24407 11.3891 6.43933 11.5844 6.6346 11.901 6.6346 12.0962 6.43933 12.2915 6.24407 12.2915 5.92749 12.0962 5.73223z\",\n fill: color\n }));\n});\nvar _excluded$1f = [\n \"color\"\n];\nvar ContainerIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1f);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 1.5C2 1.77614 1.77614 2 1.5 2C1.22386 2 1 1.77614 1 1.5C1 1.22386 1.22386 1 1.5 1C1.77614 1 2 1.22386 2 1.5ZM5 13H10V2L5 2L5 13ZM4 13C4 13.5523 4.44772 14 5 14H10C10.5523 14 11 13.5523 11 13V2C11 1.44772 10.5523 1 10 1H5C4.44772 1 4 1.44771 4 2V13ZM13.5 2C13.7761 2 14 1.77614 14 1.5C14 1.22386 13.7761 1 13.5 1C13.2239 1 13 1.22386 13 1.5C13 1.77614 13.2239 2 13.5 2ZM2 3.5C2 3.77614 1.77614 4 1.5 4C1.22386 4 1 3.77614 1 3.5C1 3.22386 1.22386 3 1.5 3C1.77614 3 2 3.22386 2 3.5ZM13.5 4C13.7761 4 14 3.77614 14 3.5C14 3.22386 13.7761 3 13.5 3C13.2239 3 13 3.22386 13 3.5C13 3.77614 13.2239 4 13.5 4ZM2 5.5C2 5.77614 1.77614 6 1.5 6C1.22386 6 1 5.77614 1 5.5C1 5.22386 1.22386 5 1.5 5C1.77614 5 2 5.22386 2 5.5ZM13.5 6C13.7761 6 14 5.77614 14 5.5C14 5.22386 13.7761 5 13.5 5C13.2239 5 13 5.22386 13 5.5C13 5.77614 13.2239 6 13.5 6ZM2 7.5C2 7.77614 1.77614 8 1.5 8C1.22386 8 1 7.77614 1 7.5C1 7.22386 1.22386 7 1.5 7C1.77614 7 2 7.22386 2 7.5ZM13.5 8C13.7761 8 14 7.77614 14 7.5C14 7.22386 13.7761 7 13.5 7C13.2239 7 13 7.22386 13 7.5C13 7.77614 13.2239 8 13.5 8ZM2 9.5C2 9.77614 1.77614 10 1.5 10C1.22386 10 1 9.77614 1 9.5C1 9.22386 1.22386 9 1.5 9C1.77614 9 2 9.22386 2 9.5ZM13.5 10C13.7761 10 14 9.77614 14 9.5C14 9.22386 13.7761 9 13.5 9C13.2239 9 13 9.22386 13 9.5C13 9.77614 13.2239 10 13.5 10ZM2 11.5C2 11.7761 1.77614 12 1.5 12C1.22386 12 1 11.7761 1 11.5C1 11.2239 1.22386 11 1.5 11C1.77614 11 2 11.2239 2 11.5ZM13.5 12C13.7761 12 14 11.7761 14 11.5C14 11.2239 13.7761 11 13.5 11C13.2239 11 13 11.2239 13 11.5C13 11.7761 13.2239 12 13.5 12ZM2 13.5C2 13.7761 1.77614 14 1.5 14C1.22386 14 1 13.7761 1 13.5C1 13.2239 1.22386 13 1.5 13C1.77614 13 2 13.2239 2 13.5ZM13.5 14C13.7761 14 14 13.7761 14 13.5C14 13.2239 13.7761 13 13.5 13C13.2239 13 13 13.2239 13 13.5C13 13.7761 13.2239 14 13.5 14Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1g = [\n \"color\"\n];\nvar CookieIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1g);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.0697 1.76746C12.4807 1.21947 11.4605 0.454311 11.0495 1.0023C10.6385 1.55028 11.6588 2.31544 12.0697 1.76746ZM8.39263 1.07811C7.15585 0.950602 5.7823 1.16348 4.58433 1.70937C3.38552 2.25563 2.32735 3.15309 1.78844 4.41832C1.37574 5.38724 1.01715 6.28113 1.00088 7.44354C0.984724 8.59844 1.30522 9.96898 2.13174 11.928C2.61142 13.0649 4.03963 13.5446 5.13895 13.8079C6.40836 14.1119 7.80857 14.1914 8.6644 14.0742C9.36515 13.9782 10.1448 13.8284 10.7987 13.297C11.8977 12.4039 12.9009 11.3955 13.4994 10.3393C14.104 9.27221 14.3256 8.09207 13.7216 6.95324C13.5628 6.65373 13.316 6.57734 13.0412 6.4923C12.9374 6.46016 12.8295 6.42678 12.7209 6.37966C11.6211 5.90234 10.9646 5.34963 10.9135 5.02876C10.8656 4.72808 10.9221 4.51463 10.9811 4.29181C11.0129 4.17199 11.0453 4.04947 11.0626 3.90922C11.0838 3.73737 11.0814 3.33319 10.6996 3.12761C10.4048 2.96888 10.2164 2.65843 10.0407 2.36904C9.99742 2.29775 9.95492 2.22773 9.9118 2.16158C9.62634 1.72367 9.20769 1.16213 8.39263 1.07811ZM4.99899 2.61935C3.96483 3.09058 3.12554 3.83097 2.70846 4.81018C2.29808 5.77368 2.01406 6.50873 2.00079 7.45753C1.98741 8.41385 2.25043 9.6368 3.0531 11.5393C3.39181 12.3421 4.62167 12.6557 5.37186 12.8354C6.5493 13.1174 7.822 13.1802 8.52868 13.0834C9.21271 12.9897 9.74568 12.8642 10.1681 12.5209C11.229 11.6587 12.121 10.7435 12.6293 9.84635C12.9349 9.30709 13.5141 7.7028 12.6292 7.3873C10.7539 6.71875 10.262 6.06669 9.99011 5.41268C9.80915 4.97744 9.82868 4.52282 9.95741 4.07885L9.95741 4.07884C9.97662 4.0126 9.99538 3.94791 10.0334 3.88882C9.81857 3.73676 9.6515 3.55195 9.51464 3.3715C9.42876 3.25828 9.3469 3.12099 9.26197 2.97856C9.01866 2.57052 8.75018 2.12027 8.29008 2.07283C7.22889 1.96343 6.03398 2.14772 4.99899 2.61935ZM13.2081 3.77471C13.441 3.22671 12.4547 2.63606 12.0822 3.10163C11.5817 3.72732 12.9029 4.49281 13.2081 3.77471ZM14.3672 2.26031C14.9668 2.27493 15.1551 1.11603 14.5718 0.949371C13.8076 0.731026 13.5918 2.24139 14.3672 2.26031ZM14.2857 5.09098C14.8644 5.10004 15.0462 4.38222 14.4832 4.27899C13.7455 4.14375 13.5373 5.07927 14.2857 5.09098ZM6.9075 4.28672C6.46898 4.66754 6.0522 4.15185 5.97983 3.7365C5.86848 3.09744 6.33696 2.56856 6.94823 2.91156C7.43344 3.18382 7.26678 3.97471 6.9075 4.28672ZM4.94455 5.88184C5.40885 5.41754 4.59567 4.57013 4.11425 5.05154C3.83338 5.33242 4.00936 5.65376 4.23744 5.88184C4.43271 6.0771 4.74929 6.0771 4.94455 5.88184ZM6.97716 6.71984C7.31181 7.38914 8.48804 6.79159 7.99413 6.14788C7.86519 5.97983 7.68657 5.9494 7.62145 5.94207C7.21217 5.89601 6.76349 6.2925 6.97716 6.71984ZM6.98798 8.72461C7.14066 9.1188 7.51122 9.3187 7.91915 9.1633C8.27434 9.02799 8.33186 8.39689 8.17175 8.07427C8.02331 7.77514 7.63956 7.67793 7.33747 7.79417C6.98512 7.92976 6.85672 8.38708 6.98576 8.71889L6.98798 8.72461ZM10.3885 8.84081C10.7575 8.6566 11.4617 8.82771 11.4617 9.31199C11.4617 9.71286 10.9587 10.2165 10.5634 10.2826C10.1813 10.3465 9.70515 9.97581 9.76648 9.57718C9.81445 9.26539 10.1217 8.97401 10.3885 8.84081ZM7.56704 10.8432C7.33461 10.7502 7.14353 10.8601 7.11437 10.8769L7.11279 10.8778C6.90782 10.9949 6.71383 11.2439 6.6747 11.4842C6.59018 12.0034 7.13199 12.1239 7.52661 12.0987C8.2074 12.0553 8.06547 11.0426 7.56704 10.8432ZM4.8805 10.8932C5.0674 10.7723 5.15658 10.5363 5.08293 10.3153C4.93046 9.79687 4.3246 9.71252 3.96561 10.1297C3.79336 10.3299 3.80749 10.6274 3.99214 10.8105L3.99495 10.814L3.9979 10.8176C4.22025 11.0942 4.63624 11.1857 4.8805 10.8932ZM3.04695 7.81318C3.33147 8.0977 3.60077 8.15067 3.98443 8.05859C4.60826 7.90887 4.13814 6.24299 3.047 6.87296C2.70939 7.06788 2.86716 7.63339 3.04695 7.81318Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1h = [\n \"color\"\n];\nvar CopyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1h);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 9.50006C1 10.3285 1.67157 11.0001 2.5 11.0001H4L4 10.0001H2.5C2.22386 10.0001 2 9.7762 2 9.50006L2 2.50006C2 2.22392 2.22386 2.00006 2.5 2.00006L9.5 2.00006C9.77614 2.00006 10 2.22392 10 2.50006V4.00002H5.5C4.67158 4.00002 4 4.67159 4 5.50002V12.5C4 13.3284 4.67158 14 5.5 14H12.5C13.3284 14 14 13.3284 14 12.5V5.50002C14 4.67159 13.3284 4.00002 12.5 4.00002H11V2.50006C11 1.67163 10.3284 1.00006 9.5 1.00006H2.5C1.67157 1.00006 1 1.67163 1 2.50006V9.50006ZM5 5.50002C5 5.22388 5.22386 5.00002 5.5 5.00002H12.5C12.7761 5.00002 13 5.22388 13 5.50002V12.5C13 12.7762 12.7761 13 12.5 13H5.5C5.22386 13 5 12.7762 5 12.5V5.50002Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1i = [\n \"color\"\n];\nvar CornerBottomLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1i);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.87737 12H9.9H11.5C11.7761 12 12 11.7761 12 11.5C12 11.2239 11.7761 11 11.5 11H9.9C8.77164 11 7.95545 10.9996 7.31352 10.9472C6.67744 10.8952 6.25662 10.7946 5.91103 10.6185C5.25247 10.283 4.71703 9.74753 4.38148 9.08897C4.20539 8.74338 4.10481 8.32256 4.05284 7.68648C4.00039 7.04455 4 6.22836 4 5.1V3.5C4 3.22386 3.77614 3 3.5 3C3.22386 3 3 3.22386 3 3.5V5.1V5.12263C3 6.22359 3 7.08052 3.05616 7.76791C3.11318 8.46584 3.23058 9.0329 3.49047 9.54296C3.9219 10.3897 4.61031 11.0781 5.45704 11.5095C5.9671 11.7694 6.53416 11.8868 7.23209 11.9438C7.91948 12 8.77641 12 9.87737 12Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1j = [\n \"color\"\n];\nvar CornerBottomRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1j);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.12263 12H5.1H3.5C3.22386 12 3 11.7761 3 11.5C3 11.2239 3.22386 11 3.5 11H5.1C6.22836 11 7.04455 10.9996 7.68648 10.9472C8.32256 10.8952 8.74338 10.7946 9.08897 10.6185C9.74753 10.283 10.283 9.74753 10.6185 9.08897C10.7946 8.74338 10.8952 8.32256 10.9472 7.68648C10.9996 7.04455 11 6.22836 11 5.1V3.5C11 3.22386 11.2239 3 11.5 3C11.7761 3 12 3.22386 12 3.5V5.1V5.12263C12 6.22359 12 7.08052 11.9438 7.76791C11.8868 8.46584 11.7694 9.0329 11.5095 9.54296C11.0781 10.3897 10.3897 11.0781 9.54296 11.5095C9.0329 11.7694 8.46584 11.8868 7.76791 11.9438C7.08052 12 6.22359 12 5.12263 12Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1k = [\n \"color\"\n];\nvar CornerTopLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1k);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.87737 3H9.9H11.5C11.7761 3 12 3.22386 12 3.5C12 3.77614 11.7761 4 11.5 4H9.9C8.77164 4 7.95545 4.00039 7.31352 4.05284C6.67744 4.10481 6.25662 4.20539 5.91103 4.38148C5.25247 4.71703 4.71703 5.25247 4.38148 5.91103C4.20539 6.25662 4.10481 6.67744 4.05284 7.31352C4.00039 7.95545 4 8.77164 4 9.9V11.5C4 11.7761 3.77614 12 3.5 12C3.22386 12 3 11.7761 3 11.5V9.9V9.87737C3 8.77641 3 7.91948 3.05616 7.23209C3.11318 6.53416 3.23058 5.9671 3.49047 5.45704C3.9219 4.61031 4.61031 3.9219 5.45704 3.49047C5.9671 3.23058 6.53416 3.11318 7.23209 3.05616C7.91948 3 8.77641 3 9.87737 3Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1l = [\n \"color\"\n];\nvar CornerTopRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1l);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.12263 3H5.1H3.5C3.22386 3 3 3.22386 3 3.5C3 3.77614 3.22386 4 3.5 4H5.1C6.22836 4 7.04455 4.00039 7.68648 4.05284C8.32256 4.10481 8.74338 4.20539 9.08897 4.38148C9.74753 4.71703 10.283 5.25247 10.6185 5.91103C10.7946 6.25662 10.8952 6.67744 10.9472 7.31352C10.9996 7.95545 11 8.77164 11 9.9V11.5C11 11.7761 11.2239 12 11.5 12C11.7761 12 12 11.7761 12 11.5V9.9V9.87737C12 8.77641 12 7.91948 11.9438 7.23209C11.8868 6.53416 11.7694 5.9671 11.5095 5.45704C11.0781 4.61031 10.3897 3.9219 9.54296 3.49047C9.0329 3.23058 8.46584 3.11318 7.76791 3.05616C7.08052 3 6.22359 3 5.12263 3Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1m = [\n \"color\"\n];\nvar CornersIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1m);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.5 2L4.87935 2C4.47687 1.99999 4.14469 1.99999 3.87409 2.0221C3.59304 2.04506 3.33469 2.09434 3.09202 2.21799C2.7157 2.40973 2.40973 2.7157 2.21799 3.09202C2.09434 3.33469 2.04506 3.59304 2.0221 3.87409C1.99999 4.14468 1.99999 4.47686 2 4.87933V4.87935V5.5C2 5.77614 2.22386 6 2.5 6C2.77614 6 3 5.77614 3 5.5V4.9C3 4.47171 3.00039 4.18056 3.01878 3.95552C3.03669 3.73631 3.06915 3.62421 3.10899 3.54601C3.20487 3.35785 3.35785 3.20487 3.54601 3.10899C3.62421 3.06915 3.73631 3.03669 3.95552 3.01878C4.18056 3.00039 4.47171 3 4.9 3H5.5C5.77614 3 6 2.77614 6 2.5C6 2.22386 5.77614 2 5.5 2ZM13 9.5C13 9.22386 12.7761 9 12.5 9C12.2239 9 12 9.22386 12 9.5V10.1C12 10.5283 11.9996 10.8194 11.9812 11.0445C11.9633 11.2637 11.9309 11.3758 11.891 11.454C11.7951 11.6422 11.6422 11.7951 11.454 11.891C11.3758 11.9309 11.2637 11.9633 11.0445 11.9812C10.8194 11.9996 10.5283 12 10.1 12H9.5C9.22386 12 9 12.2239 9 12.5C9 12.7761 9.22386 13 9.5 13H10.1206C10.5231 13 10.8553 13 11.1259 12.9779C11.407 12.9549 11.6653 12.9057 11.908 12.782C12.2843 12.5903 12.5903 12.2843 12.782 11.908C12.9057 11.6653 12.9549 11.407 12.9779 11.1259C13 10.8553 13 10.5232 13 10.1207V10.1207V10.1207V10.1206V9.5ZM2.5 9C2.77614 9 3 9.22386 3 9.5V10.1C3 10.5283 3.00039 10.8194 3.01878 11.0445C3.03669 11.2637 3.06915 11.3758 3.10899 11.454C3.20487 11.6422 3.35785 11.7951 3.54601 11.891C3.62421 11.9309 3.73631 11.9633 3.95552 11.9812C4.18056 11.9996 4.47171 12 4.9 12H5.5C5.77614 12 6 12.2239 6 12.5C6 12.7761 5.77614 13 5.5 13H4.87935C4.47687 13 4.14469 13 3.87409 12.9779C3.59304 12.9549 3.33469 12.9057 3.09202 12.782C2.7157 12.5903 2.40973 12.2843 2.21799 11.908C2.09434 11.6653 2.04506 11.407 2.0221 11.1259C1.99999 10.8553 1.99999 10.5231 2 10.1207V10.1206V10.1V9.5C2 9.22386 2.22386 9 2.5 9ZM10.1 3C10.5283 3 10.8194 3.00039 11.0445 3.01878C11.2637 3.03669 11.3758 3.06915 11.454 3.10899C11.6422 3.20487 11.7951 3.35785 11.891 3.54601C11.9309 3.62421 11.9633 3.73631 11.9812 3.95552C11.9996 4.18056 12 4.47171 12 4.9V5.5C12 5.77614 12.2239 6 12.5 6C12.7761 6 13 5.77614 13 5.5V4.87935V4.87934C13 4.47686 13 4.14468 12.9779 3.87409C12.9549 3.59304 12.9057 3.33469 12.782 3.09202C12.5903 2.7157 12.2843 2.40973 11.908 2.21799C11.6653 2.09434 11.407 2.04506 11.1259 2.0221C10.8553 1.99999 10.5231 1.99999 10.1206 2L10.1 2H9.5C9.22386 2 9 2.22386 9 2.5C9 2.77614 9.22386 3 9.5 3H10.1Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1n = [\n \"color\"\n];\nvar CountdownTimerIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1n);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.15 7.49998C13.15 4.66458 10.9402 1.84998 7.50002 1.84998C4.7217 1.84998 3.34851 3.90636 2.76336 4.99997H4.5C4.77614 4.99997 5 5.22383 5 5.49997C5 5.77611 4.77614 5.99997 4.5 5.99997H1.5C1.22386 5.99997 1 5.77611 1 5.49997V2.49997C1 2.22383 1.22386 1.99997 1.5 1.99997C1.77614 1.99997 2 2.22383 2 2.49997V4.31318C2.70453 3.07126 4.33406 0.849976 7.50002 0.849976C11.5628 0.849976 14.15 4.18537 14.15 7.49998C14.15 10.8146 11.5628 14.15 7.50002 14.15C5.55618 14.15 3.93778 13.3808 2.78548 12.2084C2.16852 11.5806 1.68668 10.839 1.35816 10.0407C1.25306 9.78536 1.37488 9.49315 1.63024 9.38806C1.8856 9.28296 2.17781 9.40478 2.2829 9.66014C2.56374 10.3425 2.97495 10.9745 3.4987 11.5074C4.47052 12.4963 5.83496 13.15 7.50002 13.15C10.9402 13.15 13.15 10.3354 13.15 7.49998ZM7 10V5.00001H8V10H7Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1o = [\n \"color\"\n];\nvar CounterClockwiseClockIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1o);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.15 7.49998C13.15 4.66458 10.9402 1.84998 7.50002 1.84998C4.72167 1.84998 3.34849 3.9064 2.76335 5H4.5C4.77614 5 5 5.22386 5 5.5C5 5.77614 4.77614 6 4.5 6H1.5C1.22386 6 1 5.77614 1 5.5V2.5C1 2.22386 1.22386 2 1.5 2C1.77614 2 2 2.22386 2 2.5V4.31318C2.70453 3.07126 4.33406 0.849976 7.50002 0.849976C11.5628 0.849976 14.15 4.18537 14.15 7.49998C14.15 10.8146 11.5628 14.15 7.50002 14.15C5.55618 14.15 3.93778 13.3808 2.78548 12.2084C2.16852 11.5806 1.68668 10.839 1.35816 10.0407C1.25306 9.78536 1.37488 9.49315 1.63024 9.38806C1.8856 9.28296 2.17781 9.40478 2.2829 9.66014C2.56374 10.3425 2.97495 10.9745 3.4987 11.5074C4.47052 12.4963 5.83496 13.15 7.50002 13.15C10.9402 13.15 13.15 10.3354 13.15 7.49998ZM7.5 4.00001C7.77614 4.00001 8 4.22387 8 4.50001V7.29291L9.85355 9.14646C10.0488 9.34172 10.0488 9.65831 9.85355 9.85357C9.65829 10.0488 9.34171 10.0488 9.14645 9.85357L7.14645 7.85357C7.05268 7.7598 7 7.63262 7 7.50001V4.50001C7 4.22387 7.22386 4.00001 7.5 4.00001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1p = [\n \"color\"\n];\nvar CropIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1p);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.5 8.00684e-07C3.77614 7.88614e-07 4 0.223859 4 0.500001L4 3.00006L11.5 3.00006C11.7761 3.00006 12 3.22392 12 3.50006L12 11.0001L14.5 11C14.7761 11 15 11.2238 15 11.5C15 11.7761 14.7762 12 14.5 12L12 12.0001L12 14.5C12 14.7761 11.7761 15 11.5 15C11.2239 15 11 14.7761 11 14.5L11 12.0001L3.5 12.0001C3.22386 12.0001 3 11.7762 3 11.5001L3 4.00005L0.499989 4C0.223847 4 -6.10541e-06 3.77613 -5.02576e-07 3.49999C5.13006e-06 3.22385 0.223867 3 0.50001 3L3 3.00005L3 0.500001C3 0.223859 3.22386 8.12755e-07 3.5 8.00684e-07ZM4 4.00006L4 11.0001L11 11.0001L11 4.00006L4 4.00006Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1q = [\n \"color\"\n];\nvar Cross1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.8536 2.85355C13.0488 2.65829 13.0488 2.34171 12.8536 2.14645C12.6583 1.95118 12.3417 1.95118 12.1464 2.14645L7.5 6.79289L2.85355 2.14645C2.65829 1.95118 2.34171 1.95118 2.14645 2.14645C1.95118 2.34171 1.95118 2.65829 2.14645 2.85355L6.79289 7.5L2.14645 12.1464C1.95118 12.3417 1.95118 12.6583 2.14645 12.8536C2.34171 13.0488 2.65829 13.0488 2.85355 12.8536L7.5 8.20711L12.1464 12.8536C12.3417 13.0488 12.6583 13.0488 12.8536 12.8536C13.0488 12.6583 13.0488 12.3417 12.8536 12.1464L8.20711 7.5L12.8536 2.85355Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1r = [\n \"color\"\n];\nvar Cross2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1r);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1s = [\n \"color\"\n];\nvar CrossCircledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1s);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.49988C0.877075 3.84219 3.84222 0.877045 7.49991 0.877045C11.1576 0.877045 14.1227 3.84219 14.1227 7.49988C14.1227 11.1575 11.1576 14.1227 7.49991 14.1227C3.84222 14.1227 0.877075 11.1575 0.877075 7.49988ZM7.49991 1.82704C4.36689 1.82704 1.82708 4.36686 1.82708 7.49988C1.82708 10.6329 4.36689 13.1727 7.49991 13.1727C10.6329 13.1727 13.1727 10.6329 13.1727 7.49988C13.1727 4.36686 10.6329 1.82704 7.49991 1.82704ZM9.85358 5.14644C10.0488 5.3417 10.0488 5.65829 9.85358 5.85355L8.20713 7.49999L9.85358 9.14644C10.0488 9.3417 10.0488 9.65829 9.85358 9.85355C9.65832 10.0488 9.34173 10.0488 9.14647 9.85355L7.50002 8.2071L5.85358 9.85355C5.65832 10.0488 5.34173 10.0488 5.14647 9.85355C4.95121 9.65829 4.95121 9.3417 5.14647 9.14644L6.79292 7.49999L5.14647 5.85355C4.95121 5.65829 4.95121 5.3417 5.14647 5.14644C5.34173 4.95118 5.65832 4.95118 5.85358 5.14644L7.50002 6.79289L9.14647 5.14644C9.34173 4.95118 9.65832 4.95118 9.85358 5.14644Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1t = [\n \"color\"\n];\nvar Crosshair1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1t);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.50207C0.877075 3.84319 3.84319 0.877075 7.50208 0.877075C11.1609 0.877075 14.1271 3.84319 14.1271 7.50207C14.1271 11.1609 11.1609 14.1271 7.50208 14.1271C3.84319 14.1271 0.877075 11.1609 0.877075 7.50207ZM1.84898 7.00003C2.0886 4.26639 4.26639 2.0886 7.00003 1.84898V4.50003C7.00003 4.77617 7.22388 5.00003 7.50003 5.00003C7.77617 5.00003 8.00003 4.77617 8.00003 4.50003V1.84862C10.7356 2.08643 12.9154 4.26502 13.1552 7.00003H10.5C10.2239 7.00003 10 7.22388 10 7.50003C10 7.77617 10.2239 8.00003 10.5 8.00003H13.1555C12.9176 10.7369 10.7369 12.9176 8.00003 13.1555V10.5C8.00003 10.2239 7.77617 10 7.50003 10C7.22388 10 7.00003 10.2239 7.00003 10.5V13.1552C4.26502 12.9154 2.08643 10.7356 1.84862 8.00003H4.50003C4.77617 8.00003 5.00003 7.77617 5.00003 7.50003C5.00003 7.22388 4.77617 7.00003 4.50003 7.00003H1.84898Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1u = [\n \"color\"\n];\nvar Crosshair2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1u);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 0C7.77614 0 8 0.223858 8 0.5V1.80687C10.6922 2.0935 12.8167 4.28012 13.0068 7H14.5C14.7761 7 15 7.22386 15 7.5C15 7.77614 14.7761 8 14.5 8H12.9888C12.7094 10.6244 10.6244 12.7094 8 12.9888V14.5C8 14.7761 7.77614 15 7.5 15C7.22386 15 7 14.7761 7 14.5V13.0068C4.28012 12.8167 2.0935 10.6922 1.80687 8H0.5C0.223858 8 0 7.77614 0 7.5C0 7.22386 0.223858 7 0.5 7H1.78886C1.98376 4.21166 4.21166 1.98376 7 1.78886V0.5C7 0.223858 7.22386 0 7.5 0ZM8 12.0322V9.5C8 9.22386 7.77614 9 7.5 9C7.22386 9 7 9.22386 7 9.5V12.054C4.80517 11.8689 3.04222 10.1668 2.76344 8H5.5C5.77614 8 6 7.77614 6 7.5C6 7.22386 5.77614 7 5.5 7H2.7417C2.93252 4.73662 4.73662 2.93252 7 2.7417V5.5C7 5.77614 7.22386 6 7.5 6C7.77614 6 8 5.77614 8 5.5V2.76344C10.1668 3.04222 11.8689 4.80517 12.054 7H9.5C9.22386 7 9 7.22386 9 7.5C9 7.77614 9.22386 8 9.5 8H12.0322C11.7621 10.0991 10.0991 11.7621 8 12.0322Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1v = [\n \"color\"\n];\nvar CrumpledPaperIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1v);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.60913 0.0634287C4.39082 0.0088505 4.16575 0.12393 4.08218 0.332867L3.1538 2.6538L0.832866 3.58218C0.702884 3.63417 0.604504 3.7437 0.566705 3.87849C0.528906 4.01329 0.555994 4.158 0.639992 4.26999L2.01148 6.09864L1.06343 9.89085C1.00944 10.1068 1.12145 10.3298 1.32691 10.4154L4.20115 11.613L5.62557 13.7496C5.73412 13.9124 5.93545 13.9864 6.12362 13.9327L9.62362 12.9327C9.62988 12.9309 9.63611 12.929 9.64229 12.9269L12.6423 11.9269C12.7923 11.8769 12.905 11.7519 12.9393 11.5976L13.9393 7.09761C13.9776 6.92506 13.9114 6.74605 13.77 6.63999L11.95 5.27499V2.99999C11.95 2.82955 11.8537 2.67373 11.7012 2.5975L8.70124 1.0975C8.67187 1.08282 8.64098 1.07139 8.60913 1.06343L4.60913 0.0634287ZM11.4323 6.01173L12.7748 7.01858L10.2119 9.15429C10.1476 9.20786 10.0995 9.2783 10.0731 9.35769L9.25382 11.8155L7.73849 10.8684C7.52774 10.7367 7.25011 10.8007 7.11839 11.0115C6.98667 11.2222 7.05074 11.4999 7.26149 11.6316L8.40341 12.3453L6.19221 12.9771L4.87441 11.0004C4.82513 10.9265 4.75508 10.8688 4.67307 10.8346L2.03046 9.73352L2.85134 6.44999H4.99999C5.24852 6.44999 5.44999 6.24852 5.44999 5.99999C5.44999 5.75146 5.24852 5.54999 4.99999 5.54999H2.72499L1.7123 4.19974L3.51407 3.47903L6.35769 4.4269C6.53655 4.48652 6.73361 4.42832 6.85138 4.28111L8.62413 2.06518L11.05 3.27811V5.19533L8.83287 6.08218C8.70996 6.13134 8.61494 6.23212 8.57308 6.35769L8.07308 7.85769C7.99449 8.09346 8.12191 8.34831 8.35769 8.4269C8.59346 8.50549 8.84831 8.37807 8.9269 8.14229L9.3609 6.84029L11.4323 6.01173ZM7.71052 1.76648L6.34462 3.47386L4.09505 2.724L4.77192 1.03183L7.71052 1.76648ZM10.2115 11.7885L12.116 11.1537L12.7745 8.19034L10.8864 9.76374L10.2115 11.7885Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1w = [\n \"color\"\n];\nvar CubeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1w);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.28856 0.796908C7.42258 0.734364 7.57742 0.734364 7.71144 0.796908L13.7114 3.59691C13.8875 3.67906 14 3.85574 14 4.05V10.95C14 11.1443 13.8875 11.3209 13.7114 11.4031L7.71144 14.2031C7.57742 14.2656 7.42258 14.2656 7.28856 14.2031L1.28856 11.4031C1.11252 11.3209 1 11.1443 1 10.95V4.05C1 3.85574 1.11252 3.67906 1.28856 3.59691L7.28856 0.796908ZM2 4.80578L7 6.93078V12.9649L2 10.6316V4.80578ZM8 12.9649L13 10.6316V4.80578L8 6.93078V12.9649ZM7.5 6.05672L12.2719 4.02866L7.5 1.80176L2.72809 4.02866L7.5 6.05672Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1x = [\n \"color\"\n];\nvar CursorArrowIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1x);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.29227 0.048984C3.47033 -0.032338 3.67946 -0.00228214 3.8274 0.125891L12.8587 7.95026C13.0134 8.08432 13.0708 8.29916 13.0035 8.49251C12.9362 8.68586 12.7578 8.81866 12.5533 8.82768L9.21887 8.97474L11.1504 13.2187C11.2648 13.47 11.1538 13.7664 10.9026 13.8808L8.75024 14.8613C8.499 14.9758 8.20255 14.8649 8.08802 14.6137L6.15339 10.3703L3.86279 12.7855C3.72196 12.934 3.50487 12.9817 3.31479 12.9059C3.1247 12.8301 3 12.6461 3 12.4414V0.503792C3 0.308048 3.11422 0.130306 3.29227 0.048984ZM4 1.59852V11.1877L5.93799 9.14425C6.05238 9.02363 6.21924 8.96776 6.38319 8.99516C6.54715 9.02256 6.68677 9.12965 6.75573 9.2809L8.79056 13.7441L10.0332 13.178L8.00195 8.71497C7.93313 8.56376 7.94391 8.38824 8.03072 8.24659C8.11753 8.10494 8.26903 8.01566 8.435 8.00834L11.2549 7.88397L4 1.59852Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1y = [\n \"color\"\n];\nvar CursorTextIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.5 1C4.22386 1 4 1.22386 4 1.5C4 1.77614 4.22386 2 4.5 2C5.42215 2 6.0399 2.23054 6.42075 2.56379C6.79286 2.88939 7 3.36626 7 4V7H5.75C5.47386 7 5.25 7.22386 5.25 7.5C5.25 7.77614 5.47386 8 5.75 8H7V11C7 11.6337 6.79286 12.1106 6.42075 12.4362C6.0399 12.7695 5.42215 13 4.5 13C4.22386 13 4 13.2239 4 13.5C4 13.7761 4.22386 14 4.5 14C5.57785 14 6.4601 13.7305 7.07925 13.1888C7.24168 13.0467 7.38169 12.8896 7.5 12.7198C7.61832 12.8896 7.75832 13.0467 7.92075 13.1888C8.5399 13.7305 9.42215 14 10.5 14C10.7761 14 11 13.7761 11 13.5C11 13.2239 10.7761 13 10.5 13C9.57785 13 8.9601 12.7695 8.57925 12.4362C8.20714 12.1106 8 11.6337 8 11V8H9.25C9.52614 8 9.75 7.77614 9.75 7.5C9.75 7.22386 9.52614 7 9.25 7H8V4C8 3.36626 8.20714 2.88939 8.57925 2.56379C8.9601 2.23054 9.57785 2 10.5 2C10.7761 2 11 1.77614 11 1.5C11 1.22386 10.7761 1 10.5 1C9.42215 1 8.5399 1.26946 7.92075 1.81121C7.75832 1.95333 7.61832 2.11043 7.5 2.28023C7.38168 2.11043 7.24168 1.95333 7.07925 1.81121C6.4601 1.26946 5.57785 1 4.5 1Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1z = [\n \"color\"\n];\nvar DashIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 7.5C5 7.22386 5.22386 7 5.5 7H9.5C9.77614 7 10 7.22386 10 7.5C10 7.77614 9.77614 8 9.5 8H5.5C5.22386 8 5 7.77614 5 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1A = [\n \"color\"\n];\nvar DashboardIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1A);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.8 1L2.74967 0.99997C2.52122 0.999752 2.32429 0.999564 2.14983 1.04145C1.60136 1.17312 1.17312 1.60136 1.04145 2.14983C0.999564 2.32429 0.999752 2.52122 0.99997 2.74967L1 2.8V5.2L0.99997 5.25033C0.999752 5.47878 0.999564 5.67572 1.04145 5.85017C1.17312 6.39864 1.60136 6.82688 2.14983 6.95856C2.32429 7.00044 2.52122 7.00025 2.74967 7.00003L2.8 7H5.2L5.25033 7.00003C5.47878 7.00025 5.67572 7.00044 5.85017 6.95856C6.39864 6.82688 6.82688 6.39864 6.95856 5.85017C7.00044 5.67572 7.00025 5.47878 7.00003 5.25033L7 5.2V2.8L7.00003 2.74967C7.00025 2.52122 7.00044 2.32429 6.95856 2.14983C6.82688 1.60136 6.39864 1.17312 5.85017 1.04145C5.67572 0.999564 5.47878 0.999752 5.25033 0.99997L5.2 1H2.8ZM2.38328 2.01382C2.42632 2.00348 2.49222 2 2.8 2H5.2C5.50779 2 5.57369 2.00348 5.61672 2.01382C5.79955 2.05771 5.94229 2.20045 5.98619 2.38328C5.99652 2.42632 6 2.49222 6 2.8V5.2C6 5.50779 5.99652 5.57369 5.98619 5.61672C5.94229 5.79955 5.79955 5.94229 5.61672 5.98619C5.57369 5.99652 5.50779 6 5.2 6H2.8C2.49222 6 2.42632 5.99652 2.38328 5.98619C2.20045 5.94229 2.05771 5.79955 2.01382 5.61672C2.00348 5.57369 2 5.50779 2 5.2V2.8C2 2.49222 2.00348 2.42632 2.01382 2.38328C2.05771 2.20045 2.20045 2.05771 2.38328 2.01382ZM9.8 1L9.74967 0.99997C9.52122 0.999752 9.32429 0.999564 9.14983 1.04145C8.60136 1.17312 8.17312 1.60136 8.04145 2.14983C7.99956 2.32429 7.99975 2.52122 7.99997 2.74967L8 2.8V5.2L7.99997 5.25033C7.99975 5.47878 7.99956 5.67572 8.04145 5.85017C8.17312 6.39864 8.60136 6.82688 9.14983 6.95856C9.32429 7.00044 9.52122 7.00025 9.74967 7.00003L9.8 7H12.2L12.2503 7.00003C12.4788 7.00025 12.6757 7.00044 12.8502 6.95856C13.3986 6.82688 13.8269 6.39864 13.9586 5.85017C14.0004 5.67572 14.0003 5.47878 14 5.25033L14 5.2V2.8L14 2.74967C14.0003 2.52122 14.0004 2.32429 13.9586 2.14983C13.8269 1.60136 13.3986 1.17312 12.8502 1.04145C12.6757 0.999564 12.4788 0.999752 12.2503 0.99997L12.2 1H9.8ZM9.38328 2.01382C9.42632 2.00348 9.49222 2 9.8 2H12.2C12.5078 2 12.5737 2.00348 12.6167 2.01382C12.7995 2.05771 12.9423 2.20045 12.9862 2.38328C12.9965 2.42632 13 2.49222 13 2.8V5.2C13 5.50779 12.9965 5.57369 12.9862 5.61672C12.9423 5.79955 12.7995 5.94229 12.6167 5.98619C12.5737 5.99652 12.5078 6 12.2 6H9.8C9.49222 6 9.42632 5.99652 9.38328 5.98619C9.20045 5.94229 9.05771 5.79955 9.01382 5.61672C9.00348 5.57369 9 5.50779 9 5.2V2.8C9 2.49222 9.00348 2.42632 9.01382 2.38328C9.05771 2.20045 9.20045 2.05771 9.38328 2.01382ZM2.74967 7.99997L2.8 8H5.2L5.25033 7.99997C5.47878 7.99975 5.67572 7.99956 5.85017 8.04145C6.39864 8.17312 6.82688 8.60136 6.95856 9.14983C7.00044 9.32429 7.00025 9.52122 7.00003 9.74967L7 9.8V12.2L7.00003 12.2503C7.00025 12.4788 7.00044 12.6757 6.95856 12.8502C6.82688 13.3986 6.39864 13.8269 5.85017 13.9586C5.67572 14.0004 5.47878 14.0003 5.25033 14L5.2 14H2.8L2.74967 14C2.52122 14.0003 2.32429 14.0004 2.14983 13.9586C1.60136 13.8269 1.17312 13.3986 1.04145 12.8502C0.999564 12.6757 0.999752 12.4788 0.99997 12.2503L1 12.2V9.8L0.99997 9.74967C0.999752 9.52122 0.999564 9.32429 1.04145 9.14983C1.17312 8.60136 1.60136 8.17312 2.14983 8.04145C2.32429 7.99956 2.52122 7.99975 2.74967 7.99997ZM2.8 9C2.49222 9 2.42632 9.00348 2.38328 9.01382C2.20045 9.05771 2.05771 9.20045 2.01382 9.38328C2.00348 9.42632 2 9.49222 2 9.8V12.2C2 12.5078 2.00348 12.5737 2.01382 12.6167C2.05771 12.7995 2.20045 12.9423 2.38328 12.9862C2.42632 12.9965 2.49222 13 2.8 13H5.2C5.50779 13 5.57369 12.9965 5.61672 12.9862C5.79955 12.9423 5.94229 12.7995 5.98619 12.6167C5.99652 12.5737 6 12.5078 6 12.2V9.8C6 9.49222 5.99652 9.42632 5.98619 9.38328C5.94229 9.20045 5.79955 9.05771 5.61672 9.01382C5.57369 9.00348 5.50779 9 5.2 9H2.8ZM9.8 8L9.74967 7.99997C9.52122 7.99975 9.32429 7.99956 9.14983 8.04145C8.60136 8.17312 8.17312 8.60136 8.04145 9.14983C7.99956 9.32429 7.99975 9.52122 7.99997 9.74967L8 9.8V12.2L7.99997 12.2503C7.99975 12.4788 7.99956 12.6757 8.04145 12.8502C8.17312 13.3986 8.60136 13.8269 9.14983 13.9586C9.32429 14.0004 9.52122 14.0003 9.74967 14L9.8 14H12.2L12.2503 14C12.4788 14.0003 12.6757 14.0004 12.8502 13.9586C13.3986 13.8269 13.8269 13.3986 13.9586 12.8502C14.0004 12.6757 14.0003 12.4788 14 12.2503L14 12.2V9.8L14 9.74967C14.0003 9.52122 14.0004 9.32429 13.9586 9.14983C13.8269 8.60136 13.3986 8.17312 12.8502 8.04145C12.6757 7.99956 12.4788 7.99975 12.2503 7.99997L12.2 8H9.8ZM9.38328 9.01382C9.42632 9.00348 9.49222 9 9.8 9H12.2C12.5078 9 12.5737 9.00348 12.6167 9.01382C12.7995 9.05771 12.9423 9.20045 12.9862 9.38328C12.9965 9.42632 13 9.49222 13 9.8V12.2C13 12.5078 12.9965 12.5737 12.9862 12.6167C12.9423 12.7995 12.7995 12.9423 12.6167 12.9862C12.5737 12.9965 12.5078 13 12.2 13H9.8C9.49222 13 9.42632 12.9965 9.38328 12.9862C9.20045 12.9423 9.05771 12.7995 9.01382 12.6167C9.00348 12.5737 9 12.5078 9 12.2V9.8C9 9.49222 9.00348 9.42632 9.01382 9.38328C9.05771 9.20045 9.20045 9.05771 9.38328 9.01382Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1B = [\n \"color\"\n];\nvar DesktopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1B);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 3.25C1 3.11193 1.11193 3 1.25 3H13.75C13.8881 3 14 3.11193 14 3.25V10.75C14 10.8881 13.8881 11 13.75 11H1.25C1.11193 11 1 10.8881 1 10.75V3.25ZM1.25 2C0.559643 2 0 2.55964 0 3.25V10.75C0 11.4404 0.559644 12 1.25 12H5.07341L4.82991 13.2986C4.76645 13.6371 5.02612 13.95 5.37049 13.95H9.62951C9.97389 13.95 10.2336 13.6371 10.1701 13.2986L9.92659 12H13.75C14.4404 12 15 11.4404 15 10.75V3.25C15 2.55964 14.4404 2 13.75 2H1.25ZM9.01091 12H5.98909L5.79222 13.05H9.20778L9.01091 12Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1C = [\n \"color\"\n];\nvar DimensionsIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1C);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.00014 2.73895C3.00014 2.94698 2.76087 3.06401 2.59666 2.93628L1.00386 1.69744C0.875177 1.59735 0.875177 1.40286 1.00386 1.30277L2.59666 0.063928C2.76087 -0.0637944 3.00014 0.0532293 3.00014 0.261266V1.00012H9.00009V0.261296C9.00009 0.0532591 9.23936 -0.0637646 9.40358 0.0639578L10.9964 1.3028C11.1251 1.40289 11.1251 1.59738 10.9964 1.69747L9.40358 2.93631C9.23936 3.06404 9.00009 2.94701 9.00009 2.73898V2.00012H3.00014V2.73895ZM9.50002 4.99998H2.50002C2.22388 4.99998 2.00002 5.22384 2.00002 5.49998V12.5C2.00002 12.7761 2.22388 13 2.50002 13H9.50002C9.77616 13 10 12.7761 10 12.5V5.49998C10 5.22384 9.77616 4.99998 9.50002 4.99998ZM2.50002 3.99998C1.67159 3.99998 1.00002 4.67156 1.00002 5.49998V12.5C1.00002 13.3284 1.67159 14 2.50002 14H9.50002C10.3284 14 11 13.3284 11 12.5V5.49998C11 4.67156 10.3284 3.99998 9.50002 3.99998H2.50002ZM14.7389 6.00001H14V12H14.7389C14.9469 12 15.064 12.2393 14.9362 12.4035L13.6974 13.9963C13.5973 14.125 13.4028 14.125 13.3027 13.9963L12.0639 12.4035C11.9362 12.2393 12.0532 12 12.2612 12H13V6.00001H12.2612C12.0532 6.00001 11.9361 5.76074 12.0639 5.59653L13.3027 4.00373C13.4028 3.87505 13.5973 3.87505 13.6974 4.00374L14.9362 5.59653C15.0639 5.76074 14.9469 6.00001 14.7389 6.00001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1D = [\n \"color\"\n];\nvar DiscIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1D);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.877075C3.84222 0.877075 0.877075 3.84222 0.877075 7.49991C0.877075 11.1576 3.84222 14.1227 7.49991 14.1227C11.1576 14.1227 14.1227 11.1576 14.1227 7.49991C14.1227 3.84222 11.1576 0.877075 7.49991 0.877075ZM1.82708 7.49991C1.82708 4.36689 4.36689 1.82707 7.49991 1.82707C10.6329 1.82707 13.1727 4.36689 13.1727 7.49991C13.1727 10.6329 10.6329 13.1727 7.49991 13.1727C4.36689 13.1727 1.82708 10.6329 1.82708 7.49991ZM8.37287 7.50006C8.37287 7.98196 7.98221 8.37263 7.5003 8.37263C7.01839 8.37263 6.62773 7.98196 6.62773 7.50006C6.62773 7.01815 7.01839 6.62748 7.5003 6.62748C7.98221 6.62748 8.37287 7.01815 8.37287 7.50006ZM9.32287 7.50006C9.32287 8.50664 8.50688 9.32263 7.5003 9.32263C6.49372 9.32263 5.67773 8.50664 5.67773 7.50006C5.67773 6.49348 6.49372 5.67748 7.5003 5.67748C8.50688 5.67748 9.32287 6.49348 9.32287 7.50006Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1E = [\n \"color\"\n];\nvar DiscordLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1E);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M5.07451 1.82584C5.03267 1.81926 4.99014 1.81825 4.94803 1.82284C4.10683 1.91446 2.82673 2.36828 2.07115 2.77808C2.02106 2.80525 1.97621 2.84112 1.93869 2.88402C1.62502 3.24266 1.34046 3.82836 1.11706 4.38186C0.887447 4.95076 0.697293 5.55032 0.588937 5.98354C0.236232 7.39369 0.042502 9.08728 0.0174948 10.6925C0.0162429 10.7729 0.0351883 10.8523 0.0725931 10.9234C0.373679 11.496 1.02015 12.027 1.66809 12.4152C2.32332 12.8078 3.08732 13.1182 3.70385 13.1778C3.85335 13.1922 4.00098 13.1358 4.10282 13.0255C4.2572 12.8581 4.5193 12.4676 4.71745 12.1643C4.80739 12.0267 4.89157 11.8953 4.95845 11.7901C5.62023 11.9106 6.45043 11.9801 7.50002 11.9801C8.54844 11.9801 9.37796 11.9107 10.0394 11.7905C10.1062 11.8957 10.1903 12.0269 10.2801 12.1643C10.4783 12.4676 10.7404 12.8581 10.8947 13.0255C10.9966 13.1358 11.1442 13.1922 11.2937 13.1778C11.9102 13.1182 12.6742 12.8078 13.3295 12.4152C13.9774 12.027 14.6239 11.496 14.925 10.9234C14.9624 10.8523 14.9813 10.7729 14.9801 10.6925C14.9551 9.08728 14.7613 7.39369 14.4086 5.98354C14.3003 5.55032 14.1101 4.95076 13.8805 4.38186C13.6571 3.82836 13.3725 3.24266 13.0589 2.88402C13.0214 2.84112 12.9765 2.80525 12.9264 2.77808C12.1708 2.36828 10.8907 1.91446 10.0495 1.82284C10.0074 1.81825 9.96489 1.81926 9.92305 1.82584C9.71676 1.85825 9.5391 1.96458 9.40809 2.06355C9.26977 2.16804 9.1413 2.29668 9.0304 2.42682C8.86968 2.61544 8.71437 2.84488 8.61428 3.06225C8.27237 3.03501 7.90138 3.02 7.5 3.02C7.0977 3.02 6.72593 3.03508 6.38337 3.06244C6.28328 2.84501 6.12792 2.61549 5.96716 2.42682C5.85626 2.29668 5.72778 2.16804 5.58947 2.06355C5.45846 1.96458 5.2808 1.85825 5.07451 1.82584ZM11.0181 11.5382C11.0395 11.5713 11.0615 11.6051 11.0838 11.6392C11.2169 11.843 11.3487 12.0385 11.4508 12.1809C11.8475 12.0916 12.352 11.8818 12.8361 11.5917C13.3795 11.2661 13.8098 10.8918 14.0177 10.5739C13.9852 9.06758 13.7993 7.50369 13.4773 6.21648C13.38 5.82759 13.2038 5.27021 12.9903 4.74117C12.7893 4.24326 12.5753 3.82162 12.388 3.5792C11.7376 3.24219 10.7129 2.88582 10.0454 2.78987C10.0308 2.79839 10.0113 2.81102 9.98675 2.82955C9.91863 2.881 9.84018 2.95666 9.76111 3.04945C9.71959 3.09817 9.68166 3.1471 9.64768 3.19449C9.953 3.25031 10.2253 3.3171 10.4662 3.39123C11.1499 3.6016 11.6428 3.89039 11.884 4.212C12.0431 4.42408 12.0001 4.72494 11.788 4.884C11.5759 5.04306 11.2751 5.00008 11.116 4.788C11.0572 4.70961 10.8001 4.4984 10.1838 4.30877C9.58933 4.12585 8.71356 3.98 7.5 3.98C6.28644 3.98 5.41067 4.12585 4.81616 4.30877C4.19988 4.4984 3.94279 4.70961 3.884 4.788C3.72494 5.00008 3.42408 5.04306 3.212 4.884C2.99992 4.72494 2.95694 4.42408 3.116 4.212C3.35721 3.89039 3.85011 3.6016 4.53383 3.39123C4.77418 3.31727 5.04571 3.25062 5.35016 3.19488C5.31611 3.14738 5.27808 3.09831 5.23645 3.04945C5.15738 2.95666 5.07893 2.881 5.01081 2.82955C4.98628 2.81102 4.96674 2.79839 4.95217 2.78987C4.28464 2.88582 3.25999 3.24219 2.60954 3.5792C2.42226 3.82162 2.20825 4.24326 2.00729 4.74117C1.79376 5.27021 1.61752 5.82759 1.52025 6.21648C1.19829 7.50369 1.01236 9.06758 0.97986 10.5739C1.18772 10.8918 1.61807 11.2661 2.16148 11.5917C2.64557 11.8818 3.15003 12.0916 3.5468 12.1809C3.64885 12.0385 3.78065 11.843 3.9138 11.6392C3.93626 11.6048 3.95838 11.5708 3.97996 11.5375C3.19521 11.2591 2.77361 10.8758 2.50064 10.4664C2.35359 10.2458 2.4132 9.94778 2.63377 9.80074C2.85435 9.65369 3.15236 9.71329 3.29941 9.93387C3.56077 10.3259 4.24355 11.0201 7.50002 11.0201C10.7565 11.0201 11.4392 10.326 11.7006 9.93386C11.8477 9.71329 12.1457 9.65369 12.3663 9.80074C12.5869 9.94779 12.6465 10.2458 12.4994 10.4664C12.2262 10.8762 11.8041 11.2598 11.0181 11.5382ZM4.08049 7.01221C4.32412 6.74984 4.65476 6.60162 5.00007 6.59998C5.34538 6.60162 5.67603 6.74984 5.91966 7.01221C6.16329 7.27459 6.30007 7.62974 6.30007 7.99998C6.30007 8.37021 6.16329 8.72536 5.91966 8.98774C5.67603 9.25011 5.34538 9.39833 5.00007 9.39998C4.65476 9.39833 4.32412 9.25011 4.08049 8.98774C3.83685 8.72536 3.70007 8.37021 3.70007 7.99998C3.70007 7.62974 3.83685 7.27459 4.08049 7.01221ZM9.99885 6.59998C9.65354 6.60162 9.3229 6.74984 9.07926 7.01221C8.83563 7.27459 8.69885 7.62974 8.69885 7.99998C8.69885 8.37021 8.83563 8.72536 9.07926 8.98774C9.3229 9.25011 9.65354 9.39833 9.99885 9.39998C10.3442 9.39833 10.6748 9.25011 10.9184 8.98774C11.1621 8.72536 11.2989 8.37021 11.2989 7.99998C11.2989 7.62974 11.1621 7.27459 10.9184 7.01221C10.6748 6.74984 10.3442 6.60162 9.99885 6.59998Z\",\n fill: color\n }));\n});\nvar _excluded$1F = [\n \"color\"\n];\nvar DividerHorizontalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1F);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 7.5C2 7.22386 2.22386 7 2.5 7H12.5C12.7761 7 13 7.22386 13 7.5C13 7.77614 12.7761 8 12.5 8H2.5C2.22386 8 2 7.77614 2 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1G = [\n \"color\"\n];\nvar DividerVerticalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1G);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 2C7.77614 2 8 2.22386 8 2.5L8 12.5C8 12.7761 7.77614 13 7.5 13C7.22386 13 7 12.7761 7 12.5L7 2.5C7 2.22386 7.22386 2 7.5 2Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1H = [\n \"color\"\n];\nvar DotIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1H);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 9.125C8.39746 9.125 9.125 8.39746 9.125 7.5C9.125 6.60254 8.39746 5.875 7.5 5.875C6.60254 5.875 5.875 6.60254 5.875 7.5C5.875 8.39746 6.60254 9.125 7.5 9.125ZM7.5 10.125C8.94975 10.125 10.125 8.94975 10.125 7.5C10.125 6.05025 8.94975 4.875 7.5 4.875C6.05025 4.875 4.875 6.05025 4.875 7.5C4.875 8.94975 6.05025 10.125 7.5 10.125Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1I = [\n \"color\"\n];\nvar DotFilledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1I);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.875 7.5C9.875 8.81168 8.81168 9.875 7.5 9.875C6.18832 9.875 5.125 8.81168 5.125 7.5C5.125 6.18832 6.18832 5.125 7.5 5.125C8.81168 5.125 9.875 6.18832 9.875 7.5Z\",\n fill: color\n }));\n});\nvar _excluded$1J = [\n \"color\"\n];\nvar DotsHorizontalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1J);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.625 7.5C3.625 8.12132 3.12132 8.625 2.5 8.625C1.87868 8.625 1.375 8.12132 1.375 7.5C1.375 6.87868 1.87868 6.375 2.5 6.375C3.12132 6.375 3.625 6.87868 3.625 7.5ZM8.625 7.5C8.625 8.12132 8.12132 8.625 7.5 8.625C6.87868 8.625 6.375 8.12132 6.375 7.5C6.375 6.87868 6.87868 6.375 7.5 6.375C8.12132 6.375 8.625 6.87868 8.625 7.5ZM12.5 8.625C13.1213 8.625 13.625 8.12132 13.625 7.5C13.625 6.87868 13.1213 6.375 12.5 6.375C11.8787 6.375 11.375 6.87868 11.375 7.5C11.375 8.12132 11.8787 8.625 12.5 8.625Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1K = [\n \"color\"\n];\nvar DotsVerticalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1K);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.625 2.5C8.625 3.12132 8.12132 3.625 7.5 3.625C6.87868 3.625 6.375 3.12132 6.375 2.5C6.375 1.87868 6.87868 1.375 7.5 1.375C8.12132 1.375 8.625 1.87868 8.625 2.5ZM8.625 7.5C8.625 8.12132 8.12132 8.625 7.5 8.625C6.87868 8.625 6.375 8.12132 6.375 7.5C6.375 6.87868 6.87868 6.375 7.5 6.375C8.12132 6.375 8.625 6.87868 8.625 7.5ZM7.5 13.625C8.12132 13.625 8.625 13.1213 8.625 12.5C8.625 11.8787 8.12132 11.375 7.5 11.375C6.87868 11.375 6.375 11.8787 6.375 12.5C6.375 13.1213 6.87868 13.625 7.5 13.625Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1L = [\n \"color\"\n];\nvar DoubleArrowDownIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1L);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.85355 2.14645C3.65829 1.95118 3.34171 1.95118 3.14645 2.14645C2.95118 2.34171 2.95118 2.65829 3.14645 2.85355L7.14645 6.85355C7.34171 7.04882 7.65829 7.04882 7.85355 6.85355L11.8536 2.85355C12.0488 2.65829 12.0488 2.34171 11.8536 2.14645C11.6583 1.95118 11.3417 1.95118 11.1464 2.14645L7.5 5.79289L3.85355 2.14645ZM3.85355 8.14645C3.65829 7.95118 3.34171 7.95118 3.14645 8.14645C2.95118 8.34171 2.95118 8.65829 3.14645 8.85355L7.14645 12.8536C7.34171 13.0488 7.65829 13.0488 7.85355 12.8536L11.8536 8.85355C12.0488 8.65829 12.0488 8.34171 11.8536 8.14645C11.6583 7.95118 11.3417 7.95118 11.1464 8.14645L7.5 11.7929L3.85355 8.14645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1M = [\n \"color\"\n];\nvar DoubleArrowLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1M);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.85355 3.85355C7.04882 3.65829 7.04882 3.34171 6.85355 3.14645C6.65829 2.95118 6.34171 2.95118 6.14645 3.14645L2.14645 7.14645C1.95118 7.34171 1.95118 7.65829 2.14645 7.85355L6.14645 11.8536C6.34171 12.0488 6.65829 12.0488 6.85355 11.8536C7.04882 11.6583 7.04882 11.3417 6.85355 11.1464L3.20711 7.5L6.85355 3.85355ZM12.8536 3.85355C13.0488 3.65829 13.0488 3.34171 12.8536 3.14645C12.6583 2.95118 12.3417 2.95118 12.1464 3.14645L8.14645 7.14645C7.95118 7.34171 7.95118 7.65829 8.14645 7.85355L12.1464 11.8536C12.3417 12.0488 12.6583 12.0488 12.8536 11.8536C13.0488 11.6583 13.0488 11.3417 12.8536 11.1464L9.20711 7.5L12.8536 3.85355Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1N = [\n \"color\"\n];\nvar DoubleArrowRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1N);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.14645 11.1464C1.95118 11.3417 1.95118 11.6583 2.14645 11.8536C2.34171 12.0488 2.65829 12.0488 2.85355 11.8536L6.85355 7.85355C7.04882 7.65829 7.04882 7.34171 6.85355 7.14645L2.85355 3.14645C2.65829 2.95118 2.34171 2.95118 2.14645 3.14645C1.95118 3.34171 1.95118 3.65829 2.14645 3.85355L5.79289 7.5L2.14645 11.1464ZM8.14645 11.1464C7.95118 11.3417 7.95118 11.6583 8.14645 11.8536C8.34171 12.0488 8.65829 12.0488 8.85355 11.8536L12.8536 7.85355C13.0488 7.65829 13.0488 7.34171 12.8536 7.14645L8.85355 3.14645C8.65829 2.95118 8.34171 2.95118 8.14645 3.14645C7.95118 3.34171 7.95118 3.65829 8.14645 3.85355L11.7929 7.5L8.14645 11.1464Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1O = [\n \"color\"\n];\nvar DoubleArrowUpIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1O);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.1464 6.85355C11.3417 7.04882 11.6583 7.04882 11.8536 6.85355C12.0488 6.65829 12.0488 6.34171 11.8536 6.14645L7.85355 2.14645C7.65829 1.95118 7.34171 1.95118 7.14645 2.14645L3.14645 6.14645C2.95118 6.34171 2.95118 6.65829 3.14645 6.85355C3.34171 7.04882 3.65829 7.04882 3.85355 6.85355L7.5 3.20711L11.1464 6.85355ZM11.1464 12.8536C11.3417 13.0488 11.6583 13.0488 11.8536 12.8536C12.0488 12.6583 12.0488 12.3417 11.8536 12.1464L7.85355 8.14645C7.65829 7.95118 7.34171 7.95118 7.14645 8.14645L3.14645 12.1464C2.95118 12.3417 2.95118 12.6583 3.14645 12.8536C3.34171 13.0488 3.65829 13.0488 3.85355 12.8536L7.5 9.20711L11.1464 12.8536Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1P = [\n \"color\"\n];\nvar DownloadIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1P);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.50005 1.04999C7.74858 1.04999 7.95005 1.25146 7.95005 1.49999V8.41359L10.1819 6.18179C10.3576 6.00605 10.6425 6.00605 10.8182 6.18179C10.994 6.35753 10.994 6.64245 10.8182 6.81819L7.81825 9.81819C7.64251 9.99392 7.35759 9.99392 7.18185 9.81819L4.18185 6.81819C4.00611 6.64245 4.00611 6.35753 4.18185 6.18179C4.35759 6.00605 4.64251 6.00605 4.81825 6.18179L7.05005 8.41359V1.49999C7.05005 1.25146 7.25152 1.04999 7.50005 1.04999ZM2.5 10C2.77614 10 3 10.2239 3 10.5V12C3 12.5539 3.44565 13 3.99635 13H11.0012C11.5529 13 12 12.5528 12 12V10.5C12 10.2239 12.2239 10 12.5 10C12.7761 10 13 10.2239 13 10.5V12C13 13.1041 12.1062 14 11.0012 14H3.99635C2.89019 14 2 13.103 2 12V10.5C2 10.2239 2.22386 10 2.5 10Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1Q = [\n \"color\"\n];\nvar DragHandleDots1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1Q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"4.5\",\n cy: \"2.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"4.5\",\n cy: \"4.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"4.5\",\n cy: \"6.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"4.5\",\n cy: \"8.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"4.5\",\n cy: \"10.498\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"4.5\",\n cy: \"12.498\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"6.5\",\n cy: \"2.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"6.5\",\n cy: \"4.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"6.5\",\n cy: \"6.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"6.5\",\n cy: \"8.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"6.5\",\n cy: \"10.498\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"6.5\",\n cy: \"12.498\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"8.499\",\n cy: \"2.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"8.499\",\n cy: \"4.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"8.499\",\n cy: \"6.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"8.499\",\n cy: \"8.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"8.499\",\n cy: \"10.498\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"8.499\",\n cy: \"12.498\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"10.499\",\n cy: \"2.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"10.499\",\n cy: \"4.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"10.499\",\n cy: \"6.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"10.499\",\n cy: \"8.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"10.499\",\n cy: \"10.498\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"10.499\",\n cy: \"12.498\",\n r: \".6\",\n fill: color\n }));\n});\nvar _excluded$1R = [\n \"color\"\n];\nvar DragHandleDots2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1R);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.5 4.625C6.12132 4.625 6.625 4.12132 6.625 3.5C6.625 2.87868 6.12132 2.375 5.5 2.375C4.87868 2.375 4.375 2.87868 4.375 3.5C4.375 4.12132 4.87868 4.625 5.5 4.625ZM9.5 4.625C10.1213 4.625 10.625 4.12132 10.625 3.5C10.625 2.87868 10.1213 2.375 9.5 2.375C8.87868 2.375 8.375 2.87868 8.375 3.5C8.375 4.12132 8.87868 4.625 9.5 4.625ZM10.625 7.5C10.625 8.12132 10.1213 8.625 9.5 8.625C8.87868 8.625 8.375 8.12132 8.375 7.5C8.375 6.87868 8.87868 6.375 9.5 6.375C10.1213 6.375 10.625 6.87868 10.625 7.5ZM5.5 8.625C6.12132 8.625 6.625 8.12132 6.625 7.5C6.625 6.87868 6.12132 6.375 5.5 6.375C4.87868 6.375 4.375 6.87868 4.375 7.5C4.375 8.12132 4.87868 8.625 5.5 8.625ZM10.625 11.5C10.625 12.1213 10.1213 12.625 9.5 12.625C8.87868 12.625 8.375 12.1213 8.375 11.5C8.375 10.8787 8.87868 10.375 9.5 10.375C10.1213 10.375 10.625 10.8787 10.625 11.5ZM5.5 12.625C6.12132 12.625 6.625 12.1213 6.625 11.5C6.625 10.8787 6.12132 10.375 5.5 10.375C4.87868 10.375 4.375 10.8787 4.375 11.5C4.375 12.1213 4.87868 12.625 5.5 12.625Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1S = [\n \"color\"\n];\nvar DragHandleHorizontalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1S);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.49998 4.09998C2.27906 4.09998 2.09998 4.27906 2.09998 4.49998C2.09998 4.72089 2.27906 4.89998 2.49998 4.89998H12.5C12.7209 4.89998 12.9 4.72089 12.9 4.49998C12.9 4.27906 12.7209 4.09998 12.5 4.09998H2.49998ZM2.49998 6.09998C2.27906 6.09998 2.09998 6.27906 2.09998 6.49998C2.09998 6.72089 2.27906 6.89998 2.49998 6.89998H12.5C12.7209 6.89998 12.9 6.72089 12.9 6.49998C12.9 6.27906 12.7209 6.09998 12.5 6.09998H2.49998ZM2.09998 8.49998C2.09998 8.27906 2.27906 8.09998 2.49998 8.09998H12.5C12.7209 8.09998 12.9 8.27906 12.9 8.49998C12.9 8.72089 12.7209 8.89998 12.5 8.89998H2.49998C2.27906 8.89998 2.09998 8.72089 2.09998 8.49998ZM2.49998 10.1C2.27906 10.1 2.09998 10.2791 2.09998 10.5C2.09998 10.7209 2.27906 10.9 2.49998 10.9H12.5C12.7209 10.9 12.9 10.7209 12.9 10.5C12.9 10.2791 12.7209 10.1 12.5 10.1H2.49998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1T = [\n \"color\"\n];\nvar DragHandleVerticalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1T);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.09998 12.5C4.09998 12.7209 4.27906 12.9 4.49998 12.9C4.72089 12.9 4.89998 12.7209 4.89998 12.5L4.89998 2.50002C4.89998 2.27911 4.72089 2.10003 4.49998 2.10003C4.27906 2.10003 4.09998 2.27911 4.09998 2.50002L4.09998 12.5ZM6.09998 12.5C6.09998 12.7209 6.27906 12.9 6.49998 12.9C6.72089 12.9 6.89998 12.7209 6.89998 12.5L6.89998 2.50002C6.89998 2.27911 6.72089 2.10003 6.49998 2.10003C6.27906 2.10003 6.09998 2.27911 6.09998 2.50002L6.09998 12.5ZM8.49998 12.9C8.27906 12.9 8.09998 12.7209 8.09998 12.5L8.09998 2.50002C8.09998 2.27911 8.27906 2.10002 8.49998 2.10002C8.72089 2.10002 8.89998 2.27911 8.89998 2.50002L8.89998 12.5C8.89998 12.7209 8.72089 12.9 8.49998 12.9ZM10.1 12.5C10.1 12.7209 10.2791 12.9 10.5 12.9C10.7209 12.9 10.9 12.7209 10.9 12.5L10.9 2.50002C10.9 2.27911 10.7209 2.10002 10.5 2.10002C10.2791 2.10002 10.1 2.27911 10.1 2.50002L10.1 12.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1U = [\n \"color\"\n];\nvar DrawingPinIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1U);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10.3285 1.13607C10.1332 0.940809 9.81662 0.940808 9.62136 1.13607C9.42609 1.33133 9.42609 1.64792 9.62136 1.84318L10.2744 2.49619L5.42563 6.13274L4.31805 5.02516C4.12279 4.8299 3.80621 4.8299 3.61095 5.02516C3.41569 5.22042 3.41569 5.537 3.61095 5.73226L5.02516 7.14648L6.08582 8.20714L2.81545 11.4775C2.62019 11.6728 2.62019 11.9894 2.81545 12.1846C3.01072 12.3799 3.3273 12.3799 3.52256 12.1846L6.79293 8.91425L7.85359 9.97491L9.2678 11.3891C9.46306 11.5844 9.77965 11.5844 9.97491 11.3891C10.1702 11.1939 10.1702 10.8773 9.97491 10.682L8.86733 9.57443L12.5039 4.7257L13.1569 5.37871C13.3522 5.57397 13.6687 5.57397 13.864 5.37871C14.0593 5.18345 14.0593 4.86687 13.864 4.6716L12.8033 3.61094L11.3891 2.19673L10.3285 1.13607ZM6.13992 6.84702L10.9887 3.21047L11.7896 4.01142L8.15305 8.86015L6.13992 6.84702Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1V = [\n \"color\"\n];\nvar DrawingPinFilledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1V);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.62129 1.13607C9.81656 0.940808 10.1331 0.940809 10.3284 1.13607L11.3891 2.19673L12.8033 3.61094L13.8639 4.6716C14.0592 4.86687 14.0592 5.18345 13.8639 5.37871C13.6687 5.57397 13.3521 5.57397 13.1568 5.37871L12.5038 4.7257L8.86727 9.57443L9.97485 10.682C10.1701 10.8773 10.1701 11.1939 9.97485 11.3891C9.77959 11.5844 9.463 11.5844 9.26774 11.3891L7.85353 9.97491L6.79287 8.91425L3.5225 12.1846C3.32724 12.3799 3.01065 12.3799 2.81539 12.1846C2.62013 11.9894 2.62013 11.6728 2.81539 11.4775L6.08576 8.20714L5.0251 7.14648L3.61089 5.73226C3.41563 5.537 3.41562 5.22042 3.61089 5.02516C3.80615 4.8299 4.12273 4.8299 4.31799 5.02516L5.42557 6.13274L10.2743 2.49619L9.62129 1.84318C9.42603 1.64792 9.42603 1.33133 9.62129 1.13607Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.62129 1.13607C9.81656 0.940808 10.1331 0.940809 10.3284 1.13607L11.3891 2.19673L12.8033 3.61094L13.8639 4.6716C14.0592 4.86687 14.0592 5.18345 13.8639 5.37871C13.6687 5.57397 13.3521 5.57397 13.1568 5.37871L12.5038 4.7257L8.86727 9.57443L9.97485 10.682C10.1701 10.8773 10.1701 11.1939 9.97485 11.3891C9.77959 11.5844 9.463 11.5844 9.26774 11.3891L7.85353 9.97491L6.79287 8.91425L3.5225 12.1846C3.32724 12.3799 3.01065 12.3799 2.81539 12.1846C2.62013 11.9894 2.62013 11.6728 2.81539 11.4775L6.08576 8.20714L5.0251 7.14648L3.61089 5.73226C3.41563 5.537 3.41562 5.22042 3.61089 5.02516C3.80615 4.8299 4.12273 4.8299 4.31799 5.02516L5.42557 6.13274L10.2743 2.49619L9.62129 1.84318C9.42603 1.64792 9.42603 1.33133 9.62129 1.13607Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1W = [\n \"color\"\n];\nvar DropdownMenuIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1W);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49999 3.09998C7.27907 3.09998 7.09999 3.27906 7.09999 3.49998C7.09999 3.72089 7.27907 3.89998 7.49999 3.89998H14.5C14.7209 3.89998 14.9 3.72089 14.9 3.49998C14.9 3.27906 14.7209 3.09998 14.5 3.09998H7.49999ZM7.49998 5.1C7.27907 5.1 7.09998 5.27908 7.09998 5.5C7.09998 5.72091 7.27907 5.9 7.49998 5.9H14.5C14.7209 5.9 14.9 5.72091 14.9 5.5C14.9 5.27908 14.7209 5.1 14.5 5.1H7.49998ZM7.1 7.5C7.1 7.27908 7.27909 7.1 7.5 7.1H14.5C14.7209 7.1 14.9 7.27908 14.9 7.5C14.9 7.72091 14.7209 7.9 14.5 7.9H7.5C7.27909 7.9 7.1 7.72091 7.1 7.5ZM7.49998 9.1C7.27907 9.1 7.09998 9.27908 7.09998 9.5C7.09998 9.72091 7.27907 9.9 7.49998 9.9H14.5C14.7209 9.9 14.9 9.72091 14.9 9.5C14.9 9.27908 14.7209 9.1 14.5 9.1H7.49998ZM7.09998 11.5C7.09998 11.2791 7.27907 11.1 7.49998 11.1H14.5C14.7209 11.1 14.9 11.2791 14.9 11.5C14.9 11.7209 14.7209 11.9 14.5 11.9H7.49998C7.27907 11.9 7.09998 11.7209 7.09998 11.5ZM2.5 9.25003L5 6.00003H0L2.5 9.25003Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1X = [\n \"color\"\n];\nvar EnterIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1X);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.5 1C4.22386 1 4 1.22386 4 1.5C4 1.77614 4.22386 2 4.5 2H12V13H4.5C4.22386 13 4 13.2239 4 13.5C4 13.7761 4.22386 14 4.5 14H12C12.5523 14 13 13.5523 13 13V2C13 1.44772 12.5523 1 12 1H4.5ZM6.60355 4.89645C6.40829 4.70118 6.09171 4.70118 5.89645 4.89645C5.70118 5.09171 5.70118 5.40829 5.89645 5.60355L7.29289 7H0.5C0.223858 7 0 7.22386 0 7.5C0 7.77614 0.223858 8 0.5 8H7.29289L5.89645 9.39645C5.70118 9.59171 5.70118 9.90829 5.89645 10.1036C6.09171 10.2988 6.40829 10.2988 6.60355 10.1036L8.85355 7.85355C9.04882 7.65829 9.04882 7.34171 8.85355 7.14645L6.60355 4.89645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1Y = [\n \"color\"\n];\nvar EnterFullScreenIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1Y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 2.5C2 2.22386 2.22386 2 2.5 2H5.5C5.77614 2 6 2.22386 6 2.5C6 2.77614 5.77614 3 5.5 3H3V5.5C3 5.77614 2.77614 6 2.5 6C2.22386 6 2 5.77614 2 5.5V2.5ZM9 2.5C9 2.22386 9.22386 2 9.5 2H12.5C12.7761 2 13 2.22386 13 2.5V5.5C13 5.77614 12.7761 6 12.5 6C12.2239 6 12 5.77614 12 5.5V3H9.5C9.22386 3 9 2.77614 9 2.5ZM2.5 9C2.77614 9 3 9.22386 3 9.5V12H5.5C5.77614 12 6 12.2239 6 12.5C6 12.7761 5.77614 13 5.5 13H2.5C2.22386 13 2 12.7761 2 12.5V9.5C2 9.22386 2.22386 9 2.5 9ZM12.5 9C12.7761 9 13 9.22386 13 9.5V12.5C13 12.7761 12.7761 13 12.5 13H9.5C9.22386 13 9 12.7761 9 12.5C9 12.2239 9.22386 12 9.5 12H12V9.5C12 9.22386 12.2239 9 12.5 9Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1Z = [\n \"color\"\n];\nvar EnvelopeClosedIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1Z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 2C0.447715 2 0 2.44772 0 3V12C0 12.5523 0.447715 13 1 13H14C14.5523 13 15 12.5523 15 12V3C15 2.44772 14.5523 2 14 2H1ZM1 3L14 3V3.92494C13.9174 3.92486 13.8338 3.94751 13.7589 3.99505L7.5 7.96703L1.24112 3.99505C1.16621 3.94751 1.0826 3.92486 1 3.92494V3ZM1 4.90797V12H14V4.90797L7.74112 8.87995C7.59394 8.97335 7.40606 8.97335 7.25888 8.87995L1 4.90797Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1_ = [\n \"color\"\n];\nvar EnvelopeOpenIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1_);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.94721 0.164594C7.66569 0.0238299 7.33431 0.0238302 7.05279 0.164594L0.552786 3.41459C0.214002 3.58399 0 3.93025 0 4.30902V12C0 12.5523 0.447715 13 1 13H14C14.5523 13 15 12.5523 15 12V4.30902C15 3.93025 14.786 3.58399 14.4472 3.41459L7.94721 0.164594ZM13.5689 4.09349L7.5 1.05902L1.43105 4.09349L7.5 7.29136L13.5689 4.09349ZM1 4.88366V12H14V4.88366L7.70977 8.19813C7.57848 8.26731 7.42152 8.26731 7.29023 8.19813L1 4.88366Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1$ = [\n \"color\"\n];\nvar EraserIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1$);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.36052 0.72921C8.55578 0.533948 8.87236 0.533948 9.06763 0.72921L14.2708 5.93235C14.466 6.12761 14.466 6.4442 14.2708 6.63946L8.95513 11.9551L7.3466 13.5636C6.76081 14.1494 5.81106 14.1494 5.22528 13.5636L1.43635 9.7747C0.850563 9.18891 0.850563 8.23917 1.43635 7.65338L3.04488 6.04485L8.36052 0.72921ZM8.71407 1.78987L4.10554 6.3984L8.60157 10.8944L13.2101 6.28591L8.71407 1.78987ZM7.89447 11.6015L3.39843 7.10551L2.14346 8.36049C1.94819 8.55575 1.94819 8.87233 2.14346 9.06759L5.93238 12.8565C6.12765 13.0518 6.44423 13.0518 6.63949 12.8565L7.89447 11.6015Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$20 = [\n \"color\"\n];\nvar ExclamationTriangleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$20);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.4449 0.608765C8.0183 -0.107015 6.9817 -0.107015 6.55509 0.608766L0.161178 11.3368C-0.275824 12.07 0.252503 13 1.10608 13H13.8939C14.7475 13 15.2758 12.07 14.8388 11.3368L8.4449 0.608765ZM7.4141 1.12073C7.45288 1.05566 7.54712 1.05566 7.5859 1.12073L13.9798 11.8488C14.0196 11.9154 13.9715 12 13.8939 12H1.10608C1.02849 12 0.980454 11.9154 1.02018 11.8488L7.4141 1.12073ZM6.8269 4.48611C6.81221 4.10423 7.11783 3.78663 7.5 3.78663C7.88217 3.78663 8.18778 4.10423 8.1731 4.48612L8.01921 8.48701C8.00848 8.766 7.7792 8.98664 7.5 8.98664C7.2208 8.98664 6.99151 8.766 6.98078 8.48701L6.8269 4.48611ZM8.24989 10.476C8.24989 10.8902 7.9141 11.226 7.49989 11.226C7.08567 11.226 6.74989 10.8902 6.74989 10.476C6.74989 10.0618 7.08567 9.72599 7.49989 9.72599C7.9141 9.72599 8.24989 10.0618 8.24989 10.476Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$21 = [\n \"color\"\n];\nvar ExitIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$21);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 1C2.44771 1 2 1.44772 2 2V13C2 13.5523 2.44772 14 3 14H10.5C10.7761 14 11 13.7761 11 13.5C11 13.2239 10.7761 13 10.5 13H3V2L10.5 2C10.7761 2 11 1.77614 11 1.5C11 1.22386 10.7761 1 10.5 1H3ZM12.6036 4.89645C12.4083 4.70118 12.0917 4.70118 11.8964 4.89645C11.7012 5.09171 11.7012 5.40829 11.8964 5.60355L13.2929 7H6.5C6.22386 7 6 7.22386 6 7.5C6 7.77614 6.22386 8 6.5 8H13.2929L11.8964 9.39645C11.7012 9.59171 11.7012 9.90829 11.8964 10.1036C12.0917 10.2988 12.4083 10.2988 12.6036 10.1036L14.8536 7.85355C15.0488 7.65829 15.0488 7.34171 14.8536 7.14645L12.6036 4.89645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$22 = [\n \"color\"\n];\nvar ExitFullScreenIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$22);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.5 2C5.77614 2 6 2.22386 6 2.5V5.5C6 5.77614 5.77614 6 5.5 6H2.5C2.22386 6 2 5.77614 2 5.5C2 5.22386 2.22386 5 2.5 5H5V2.5C5 2.22386 5.22386 2 5.5 2ZM9.5 2C9.77614 2 10 2.22386 10 2.5V5H12.5C12.7761 5 13 5.22386 13 5.5C13 5.77614 12.7761 6 12.5 6H9.5C9.22386 6 9 5.77614 9 5.5V2.5C9 2.22386 9.22386 2 9.5 2ZM2 9.5C2 9.22386 2.22386 9 2.5 9H5.5C5.77614 9 6 9.22386 6 9.5V12.5C6 12.7761 5.77614 13 5.5 13C5.22386 13 5 12.7761 5 12.5V10H2.5C2.22386 10 2 9.77614 2 9.5ZM9 9.5C9 9.22386 9.22386 9 9.5 9H12.5C12.7761 9 13 9.22386 13 9.5C13 9.77614 12.7761 10 12.5 10H10V12.5C10 12.7761 9.77614 13 9.5 13C9.22386 13 9 12.7761 9 12.5V9.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$23 = [\n \"color\"\n];\nvar ExternalLinkIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$23);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 2C2.44772 2 2 2.44772 2 3V12C2 12.5523 2.44772 13 3 13H12C12.5523 13 13 12.5523 13 12V8.5C13 8.22386 12.7761 8 12.5 8C12.2239 8 12 8.22386 12 8.5V12H3V3L6.5 3C6.77614 3 7 2.77614 7 2.5C7 2.22386 6.77614 2 6.5 2H3ZM12.8536 2.14645C12.9015 2.19439 12.9377 2.24964 12.9621 2.30861C12.9861 2.36669 12.9996 2.4303 13 2.497L13 2.5V2.50049V5.5C13 5.77614 12.7761 6 12.5 6C12.2239 6 12 5.77614 12 5.5V3.70711L6.85355 8.85355C6.65829 9.04882 6.34171 9.04882 6.14645 8.85355C5.95118 8.65829 5.95118 8.34171 6.14645 8.14645L11.2929 3H9.5C9.22386 3 9 2.77614 9 2.5C9 2.22386 9.22386 2 9.5 2H12.4999H12.5C12.5678 2 12.6324 2.01349 12.6914 2.03794C12.7504 2.06234 12.8056 2.09851 12.8536 2.14645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$24 = [\n \"color\"\n];\nvar EyeClosedIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$24);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14.7649 6.07596C14.9991 6.22231 15.0703 6.53079 14.9239 6.76495C14.4849 7.46743 13.9632 8.10645 13.3702 8.66305L14.5712 9.86406C14.7664 10.0593 14.7664 10.3759 14.5712 10.5712C14.3759 10.7664 14.0593 10.7664 13.8641 10.5712L12.6011 9.30817C11.805 9.90283 10.9089 10.3621 9.93375 10.651L10.383 12.3277C10.4544 12.5944 10.2961 12.8685 10.0294 12.94C9.76267 13.0115 9.4885 12.8532 9.41704 12.5865L8.95917 10.8775C8.48743 10.958 8.00036 10.9999 7.50001 10.9999C6.99965 10.9999 6.51257 10.958 6.04082 10.8775L5.58299 12.5864C5.51153 12.8532 5.23737 13.0115 4.97064 12.94C4.7039 12.8686 4.5456 12.5944 4.61706 12.3277L5.06625 10.651C4.09111 10.3621 3.19503 9.90282 2.3989 9.30815L1.1359 10.5712C0.940638 10.7664 0.624058 10.7664 0.428798 10.5712C0.233537 10.3759 0.233537 10.0593 0.428798 9.86405L1.62982 8.66303C1.03682 8.10643 0.515113 7.46742 0.0760677 6.76495C-0.0702867 6.53079 0.000898544 6.22231 0.235065 6.07596C0.469231 5.9296 0.777703 6.00079 0.924058 6.23496C1.40354 7.00213 1.989 7.68057 2.66233 8.2427C2.67315 8.25096 2.6837 8.25972 2.69397 8.26898C4.00897 9.35527 5.65537 9.99991 7.50001 9.99991C10.3078 9.99991 12.6564 8.5063 14.076 6.23495C14.2223 6.00079 14.5308 5.9296 14.7649 6.07596Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$25 = [\n \"color\"\n];\nvar EyeNoneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$25);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.3536 2.35355C13.5488 2.15829 13.5488 1.84171 13.3536 1.64645C13.1583 1.45118 12.8417 1.45118 12.6464 1.64645L10.6828 3.61012C9.70652 3.21671 8.63759 3 7.5 3C4.30786 3 1.65639 4.70638 0.0760002 7.23501C-0.0253338 7.39715 -0.0253334 7.60288 0.0760014 7.76501C0.902945 9.08812 2.02314 10.1861 3.36061 10.9323L1.64645 12.6464C1.45118 12.8417 1.45118 13.1583 1.64645 13.3536C1.84171 13.5488 2.15829 13.5488 2.35355 13.3536L4.31723 11.3899C5.29348 11.7833 6.36241 12 7.5 12C10.6921 12 13.3436 10.2936 14.924 7.76501C15.0253 7.60288 15.0253 7.39715 14.924 7.23501C14.0971 5.9119 12.9769 4.81391 11.6394 4.06771L13.3536 2.35355ZM9.90428 4.38861C9.15332 4.1361 8.34759 4 7.5 4C4.80285 4 2.52952 5.37816 1.09622 7.50001C1.87284 8.6497 2.89609 9.58106 4.09974 10.1931L9.90428 4.38861ZM5.09572 10.6114L10.9003 4.80685C12.1039 5.41894 13.1272 6.35031 13.9038 7.50001C12.4705 9.62183 10.1971 11 7.5 11C6.65241 11 5.84668 10.8639 5.09572 10.6114Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$26 = [\n \"color\"\n];\nvar EyeOpenIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$26);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 11C4.80285 11 2.52952 9.62184 1.09622 7.50001C2.52952 5.37816 4.80285 4 7.5 4C10.1971 4 12.4705 5.37816 13.9038 7.50001C12.4705 9.62183 10.1971 11 7.5 11ZM7.5 3C4.30786 3 1.65639 4.70638 0.0760002 7.23501C-0.0253338 7.39715 -0.0253334 7.60288 0.0760014 7.76501C1.65639 10.2936 4.30786 12 7.5 12C10.6921 12 13.3436 10.2936 14.924 7.76501C15.0253 7.60288 15.0253 7.39715 14.924 7.23501C13.3436 4.70638 10.6921 3 7.5 3ZM7.5 9.5C8.60457 9.5 9.5 8.60457 9.5 7.5C9.5 6.39543 8.60457 5.5 7.5 5.5C6.39543 5.5 5.5 6.39543 5.5 7.5C5.5 8.60457 6.39543 9.5 7.5 9.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$27 = [\n \"color\"\n];\nvar FaceIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$27);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.876892C3.84222 0.876892 0.877075 3.84204 0.877075 7.49972C0.877075 11.1574 3.84222 14.1226 7.49991 14.1226C11.1576 14.1226 14.1227 11.1574 14.1227 7.49972C14.1227 3.84204 11.1576 0.876892 7.49991 0.876892ZM1.82708 7.49972C1.82708 4.36671 4.36689 1.82689 7.49991 1.82689C10.6329 1.82689 13.1727 4.36671 13.1727 7.49972C13.1727 10.6327 10.6329 13.1726 7.49991 13.1726C4.36689 13.1726 1.82708 10.6327 1.82708 7.49972ZM5.03747 9.21395C4.87949 8.98746 4.56782 8.93193 4.34133 9.08991C4.11484 9.24789 4.05931 9.55956 4.21729 9.78605C4.93926 10.8211 6.14033 11.5 7.50004 11.5C8.85974 11.5 10.0608 10.8211 10.7828 9.78605C10.9408 9.55956 10.8852 9.24789 10.6587 9.08991C10.4323 8.93193 10.1206 8.98746 9.9626 9.21395C9.41963 9.99238 8.51907 10.5 7.50004 10.5C6.481 10.5 5.58044 9.99238 5.03747 9.21395ZM5.37503 6.84998C5.85828 6.84998 6.25003 6.45815 6.25003 5.97498C6.25003 5.4918 5.85828 5.09998 5.37503 5.09998C4.89179 5.09998 4.50003 5.4918 4.50003 5.97498C4.50003 6.45815 4.89179 6.84998 5.37503 6.84998ZM10.5 5.97498C10.5 6.45815 10.1083 6.84998 9.62503 6.84998C9.14179 6.84998 8.75003 6.45815 8.75003 5.97498C8.75003 5.4918 9.14179 5.09998 9.62503 5.09998C10.1083 5.09998 10.5 5.4918 10.5 5.97498Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$28 = [\n \"color\"\n];\nvar FigmaLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$28);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.00005 2.04999H5.52505C4.71043 2.04999 4.05005 2.71037 4.05005 3.52499C4.05005 4.33961 4.71043 4.99999 5.52505 4.99999H7.00005V2.04999ZM7.00005 1.04999H8.00005H9.47505C10.842 1.04999 11.95 2.15808 11.95 3.52499C11.95 4.33163 11.5642 5.04815 10.9669 5.49999C11.5642 5.95184 11.95 6.66836 11.95 7.475C11.95 8.8419 10.842 9.95 9.47505 9.95C8.92236 9.95 8.41198 9.76884 8.00005 9.46266V9.95L8.00005 11.425C8.00005 12.7919 6.89195 13.9 5.52505 13.9C4.15814 13.9 3.05005 12.7919 3.05005 11.425C3.05005 10.6183 3.43593 9.90184 4.03317 9.44999C3.43593 8.99814 3.05005 8.28163 3.05005 7.475C3.05005 6.66836 3.43594 5.95184 4.03319 5.5C3.43594 5.04815 3.05005 4.33163 3.05005 3.52499C3.05005 2.15808 4.15814 1.04999 5.52505 1.04999H7.00005ZM8.00005 2.04999V4.99999H9.47505C10.2897 4.99999 10.95 4.33961 10.95 3.52499C10.95 2.71037 10.2897 2.04999 9.47505 2.04999H8.00005ZM5.52505 8.94998H7.00005L7.00005 7.4788L7.00005 7.475L7.00005 7.4712V6H5.52505C4.71043 6 4.05005 6.66038 4.05005 7.475C4.05005 8.28767 4.70727 8.94684 5.5192 8.94999L5.52505 8.94998ZM4.05005 11.425C4.05005 10.6123 4.70727 9.95315 5.5192 9.94999L5.52505 9.95H7.00005L7.00005 11.425C7.00005 12.2396 6.33967 12.9 5.52505 12.9C4.71043 12.9 4.05005 12.2396 4.05005 11.425ZM8.00005 7.47206C8.00164 6.65879 8.66141 6 9.47505 6C10.2897 6 10.95 6.66038 10.95 7.475C10.95 8.28962 10.2897 8.95 9.47505 8.95C8.66141 8.95 8.00164 8.29121 8.00005 7.47794V7.47206Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$29 = [\n \"color\"\n];\nvar FileIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$29);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.5 2C3.22386 2 3 2.22386 3 2.5V12.5C3 12.7761 3.22386 13 3.5 13H11.5C11.7761 13 12 12.7761 12 12.5V6H8.5C8.22386 6 8 5.77614 8 5.5V2H3.5ZM9 2.70711L11.2929 5H9V2.70711ZM2 2.5C2 1.67157 2.67157 1 3.5 1H8.5C8.63261 1 8.75979 1.05268 8.85355 1.14645L12.8536 5.14645C12.9473 5.24021 13 5.36739 13 5.5V12.5C13 13.3284 12.3284 14 11.5 14H3.5C2.67157 14 2 13.3284 2 12.5V2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2a = [\n \"color\"\n];\nvar FileMinusIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2a);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 2.5C3 2.22386 3.22386 2 3.5 2H9.29289L12 4.70711V12.5C12 12.7761 11.7761 13 11.5 13H3.5C3.22386 13 3 12.7761 3 12.5V2.5ZM3.5 1C2.67157 1 2 1.67157 2 2.5V12.5C2 13.3284 2.67157 14 3.5 14H11.5C12.3284 14 13 13.3284 13 12.5V4.60355C13 4.40464 12.921 4.21388 12.7803 4.07322L9.85355 1.14645C9.75979 1.05268 9.63261 1 9.5 1H3.5ZM5.25 7C4.97386 7 4.75 7.22386 4.75 7.5C4.75 7.77614 4.97386 8 5.25 8H9.75C10.0261 8 10.25 7.77614 10.25 7.5C10.25 7.22386 10.0261 7 9.75 7H5.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2b = [\n \"color\"\n];\nvar FilePlusIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2b);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.5 2C3.22386 2 3 2.22386 3 2.5V12.5C3 12.7761 3.22386 13 3.5 13H11.5C11.7761 13 12 12.7761 12 12.5V4.70711L9.29289 2H3.5ZM2 2.5C2 1.67157 2.67157 1 3.5 1H9.5C9.63261 1 9.75979 1.05268 9.85355 1.14645L12.7803 4.07322C12.921 4.21388 13 4.40464 13 4.60355V12.5C13 13.3284 12.3284 14 11.5 14H3.5C2.67157 14 2 13.3284 2 12.5V2.5ZM4.75 7.5C4.75 7.22386 4.97386 7 5.25 7H7V5.25C7 4.97386 7.22386 4.75 7.5 4.75C7.77614 4.75 8 4.97386 8 5.25V7H9.75C10.0261 7 10.25 7.22386 10.25 7.5C10.25 7.77614 10.0261 8 9.75 8H8V9.75C8 10.0261 7.77614 10.25 7.5 10.25C7.22386 10.25 7 10.0261 7 9.75V8H5.25C4.97386 8 4.75 7.77614 4.75 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2c = [\n \"color\"\n];\nvar FileTextIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2c);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 2.5C3 2.22386 3.22386 2 3.5 2H9.08579C9.21839 2 9.34557 2.05268 9.43934 2.14645L11.8536 4.56066C11.9473 4.65443 12 4.78161 12 4.91421V12.5C12 12.7761 11.7761 13 11.5 13H3.5C3.22386 13 3 12.7761 3 12.5V2.5ZM3.5 1C2.67157 1 2 1.67157 2 2.5V12.5C2 13.3284 2.67157 14 3.5 14H11.5C12.3284 14 13 13.3284 13 12.5V4.91421C13 4.51639 12.842 4.13486 12.5607 3.85355L10.1464 1.43934C9.86514 1.15804 9.48361 1 9.08579 1H3.5ZM4.5 4C4.22386 4 4 4.22386 4 4.5C4 4.77614 4.22386 5 4.5 5H7.5C7.77614 5 8 4.77614 8 4.5C8 4.22386 7.77614 4 7.5 4H4.5ZM4.5 7C4.22386 7 4 7.22386 4 7.5C4 7.77614 4.22386 8 4.5 8H10.5C10.7761 8 11 7.77614 11 7.5C11 7.22386 10.7761 7 10.5 7H4.5ZM4.5 10C4.22386 10 4 10.2239 4 10.5C4 10.7761 4.22386 11 4.5 11H10.5C10.7761 11 11 10.7761 11 10.5C11 10.2239 10.7761 10 10.5 10H4.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2d = [\n \"color\"\n];\nvar FontBoldIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2d);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.10505 12C4.70805 12 4.4236 11.912 4.25171 11.736C4.0839 11.5559 4 11.2715 4 10.8827V4.11733C4 3.72033 4.08595 3.43588 4.25784 3.26398C4.43383 3.08799 4.71623 3 5.10505 3C6.42741 3 8.25591 3 9.02852 3C10.1373 3 11.0539 3.98153 11.0539 5.1846C11.0539 6.08501 10.6037 6.81855 9.70327 7.23602C10.8657 7.44851 11.5176 8.62787 11.5176 9.48128C11.5176 10.5125 10.9902 12 9.27734 12C8.77742 12 6.42626 12 5.10505 12ZM8.37891 8.00341H5.8V10.631H8.37891C8.9 10.631 9.6296 10.1211 9.6296 9.29877C9.6296 8.47643 8.9 8.00341 8.37891 8.00341ZM5.8 4.36903V6.69577H8.17969C8.53906 6.69577 9.27734 6.35939 9.27734 5.50002C9.27734 4.64064 8.48047 4.36903 8.17969 4.36903H5.8Z\",\n fill: color\n }));\n});\nvar _excluded$2e = [\n \"color\"\n];\nvar FontFamilyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2e);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.5 4.5C2.5 3.09886 3.59886 2 5 2H12.499C12.7752 2 13 2.22386 13 2.5C13 2.77614 12.7761 3 12.5 3H8.69244L8.40509 3.85458C8.18869 4.49752 7.89401 5.37197 7.58091 6.29794C7.50259 6.52956 7.42308 6.76453 7.34332 7H8.5C8.77614 7 9 7.22386 9 7.5C9 7.77614 8.77614 8 8.5 8H7.00407C6.56724 9.28543 6.16435 10.4613 5.95799 11.0386C5.63627 11.9386 5.20712 12.4857 4.66741 12.7778C4.16335 13.0507 3.64154 13.0503 3.28378 13.05L3.25 13.05C2.94624 13.05 2.7 12.8037 2.7 12.5C2.7 12.1962 2.94624 11.95 3.25 11.95C3.64182 11.95 3.9035 11.9405 4.14374 11.8105C4.36443 11.691 4.65532 11.4148 4.92217 10.6683C5.10695 10.1514 5.45375 9.14134 5.8422 8H4.5C4.22386 8 4 7.77614 4 7.5C4 7.22386 4.22386 7 4.5 7H6.18187C6.30127 6.64785 6.42132 6.29323 6.53887 5.94559C6.85175 5.02025 7.14627 4.14631 7.36256 3.50368L7.53192 3H5C4.15114 3 3.5 3.65114 3.5 4.5C3.5 4.77614 3.27614 5 3 5C2.72386 5 2.5 4.77614 2.5 4.5Z\",\n fill: color\n }));\n});\nvar _excluded$2f = [\n \"color\"\n];\nvar FontItalicIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2f);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.67494 3.50017C5.67494 3.25164 5.87641 3.05017 6.12494 3.05017H10.6249C10.8735 3.05017 11.0749 3.25164 11.0749 3.50017C11.0749 3.7487 10.8735 3.95017 10.6249 3.95017H9.00587L7.2309 11.05H8.87493C9.12345 11.05 9.32493 11.2515 9.32493 11.5C9.32493 11.7486 9.12345 11.95 8.87493 11.95H4.37493C4.1264 11.95 3.92493 11.7486 3.92493 11.5C3.92493 11.2515 4.1264 11.05 4.37493 11.05H5.99397L7.76894 3.95017H6.12494C5.87641 3.95017 5.67494 3.7487 5.67494 3.50017Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2g = [\n \"color\"\n];\nvar FontRomanIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2g);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.79993 3.50017C4.79993 3.25164 5.0014 3.05017 5.24993 3.05017H9.74993C9.99845 3.05017 10.1999 3.25164 10.1999 3.50017C10.1999 3.7487 9.99845 3.95017 9.74993 3.95017H8.09993V11.05H9.74994C9.99847 11.05 10.1999 11.2515 10.1999 11.5C10.1999 11.7486 9.99847 11.95 9.74994 11.95H5.24994C5.00141 11.95 4.79994 11.7486 4.79994 11.5C4.79994 11.2515 5.00141 11.05 5.24994 11.05H6.89993V3.95017H5.24993C5.0014 3.95017 4.79993 3.7487 4.79993 3.50017Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2h = [\n \"color\"\n];\nvar FontSizeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2h);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.78233 2.21707C2.70732 2.14206 2.60557 2.09991 2.49949 2.09991C2.3934 2.09991 2.29166 2.14206 2.21664 2.21707L0.216645 4.21707C0.0604351 4.37328 0.0604351 4.62655 0.216645 4.78276C0.372855 4.93897 0.626121 4.93897 0.78233 4.78276L2.09949 3.4656L2.09949 11.5342L0.78233 10.2171C0.62612 10.0609 0.372854 10.0609 0.216645 10.2171C0.0604349 10.3733 0.0604349 10.6265 0.216645 10.7828L2.21664 12.7828C2.29166 12.8578 2.3934 12.8999 2.49949 12.8999C2.60557 12.8999 2.70731 12.8578 2.78233 12.7828L4.78233 10.7828C4.93854 10.6265 4.93854 10.3733 4.78233 10.2171C4.62612 10.0609 4.37285 10.0609 4.21664 10.2171L2.89949 11.5342L2.89949 3.4656L4.21664 4.78276C4.37285 4.93897 4.62612 4.93897 4.78233 4.78276C4.93854 4.62655 4.93854 4.37328 4.78233 4.21707L2.78233 2.21707ZM10.5 2.74997C10.7107 2.74997 10.8988 2.88211 10.9703 3.08036L13.9703 11.3999C14.064 11.6597 13.9293 11.9462 13.6696 12.0399C13.4098 12.1336 13.1233 11.9989 13.0296 11.7392L12.0477 9.016H8.95228L7.97033 11.7392C7.87666 11.9989 7.59013 12.1336 7.33036 12.0399C7.07059 11.9462 6.93595 11.6597 7.02962 11.3999L10.0296 3.08036C10.1011 2.88211 10.2892 2.74997 10.5 2.74997ZM10.5 4.72396L11.7412 8.166H9.25879L10.5 4.72396Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2i = [\n \"color\"\n];\nvar FontStyleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2i);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.03791 9.98075C0.934777 9.6583 1.11603 9.37719 1.40005 9.24871C1.68408 9.12022 2.09463 9.13412 2.27071 9.45426C2.85393 10.5147 3.64599 10.7282 4.48665 10.7282C5.52721 10.7282 6.29659 10.2615 6.29659 9.45426C6.29659 8.8047 5.9119 8.46416 4.87134 8.14253L4.15872 7.92181C2.64518 7.44883 1.88842 6.69206 1.88842 5.45601C1.88842 3.79743 3.27583 2.6875 5.24342 2.6875C6.91733 2.6875 7.97409 3.33536 8.43833 4.31065C8.57087 4.58909 8.57614 4.91294 8.22794 5.19114C7.87974 5.46934 7.52351 5.34799 7.23327 5.03839C6.47215 4.22653 5.99545 4.04968 5.25604 4.04968C4.1398 4.04968 3.547 4.63618 3.547 5.27943C3.547 5.86592 3.96322 6.23169 4.94702 6.5344L5.67856 6.76143C7.22994 7.23441 7.97409 7.95964 7.97409 9.17047C7.97409 10.7723 6.69389 12.0903 4.46143 12.0903C2.86612 12.0903 1.40005 11.1131 1.03791 9.98075ZM11.8491 8.77985C10.661 8.39543 10.1649 7.86114 10.1649 6.98805C10.1649 5.86736 11.1636 5.04639 12.6128 5.04639C13.8546 5.04639 14.6629 5.63345 14.9778 6.6346C15.0443 6.84599 14.9593 6.98006 14.7475 7.0491C14.5394 7.11697 14.3176 7.09974 14.238 6.89611C13.9356 6.12273 13.352 5.76311 12.5998 5.76311C11.6467 5.76311 11.0135 6.25178 11.0135 6.91638C11.0135 7.45066 11.3464 7.75038 12.2473 8.04358L12.8348 8.23254C14.062 8.62999 14.5516 9.13821 14.5516 10.0178C14.5516 11.1972 13.481 12.0442 11.9927 12.0442C10.6439 12.0442 9.65644 11.2809 9.41979 10.3361C9.36535 10.1188 9.41192 10.0287 9.70039 9.96184C9.98886 9.89499 10.0714 9.89918 10.1715 10.1369C10.4555 10.8114 11.1531 11.3275 12.0318 11.3275C12.9914 11.3275 13.6834 10.7802 13.6834 10.0634C13.6834 9.53567 13.3961 9.28807 12.4366 8.97532L11.8491 8.77985Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2j = [\n \"color\"\n];\nvar FrameIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2j);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11 1.5C11 1.22386 10.7761 1 10.5 1C10.2239 1 10 1.22386 10 1.5V4H5V1.5C5 1.22386 4.77614 1 4.5 1C4.22386 1 4 1.22386 4 1.5V4H1.5C1.22386 4 1 4.22386 1 4.5C1 4.77614 1.22386 5 1.5 5H4V10H1.5C1.22386 10 1 10.2239 1 10.5C1 10.7761 1.22386 11 1.5 11H4V13.5C4 13.7761 4.22386 14 4.5 14C4.77614 14 5 13.7761 5 13.5V11H10V13.5C10 13.7761 10.2239 14 10.5 14C10.7761 14 11 13.7761 11 13.5V11H13.5C13.7761 11 14 10.7761 14 10.5C14 10.2239 13.7761 10 13.5 10H11V5H13.5C13.7761 5 14 4.77614 14 4.5C14 4.22386 13.7761 4 13.5 4H11V1.5ZM10 10V5H5V10H10Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2k = [\n \"color\"\n];\nvar FramerLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2k);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.3825 1.29567C3.46241 1.11432 3.64188 0.997284 3.84005 0.997284H11.5C11.7761 0.997284 12 1.22114 12 1.49728V5.5C12 5.77614 11.7761 6 11.5 6H8.63521L11.5288 9.16247C11.6626 9.3087 11.6974 9.52015 11.6175 9.70154C11.5376 9.88293 11.3582 10 11.16 10H8V13.5C8 13.7022 7.87818 13.8845 7.69134 13.9619C7.5045 14.0393 7.28945 13.9966 7.14645 13.8536L3.14645 9.85355C3.05268 9.75979 3 9.63261 3 9.5V5.5C3 5.22386 3.22386 5 3.5 5H6.36531L3.47105 1.83468C3.33732 1.68844 3.30259 1.47701 3.3825 1.29567ZM7.72032 5L4.97474 1.99728H11V5H7.72032ZM7.27978 6H4V9H7.5H10.0247L7.27978 6ZM4.70711 10L7 12.2929V10H4.70711Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2l = [\n \"color\"\n];\nvar GearIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2l);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.07095 0.650238C6.67391 0.650238 6.32977 0.925096 6.24198 1.31231L6.0039 2.36247C5.6249 2.47269 5.26335 2.62363 4.92436 2.81013L4.01335 2.23585C3.67748 2.02413 3.23978 2.07312 2.95903 2.35386L2.35294 2.95996C2.0722 3.2407 2.0232 3.6784 2.23493 4.01427L2.80942 4.92561C2.62307 5.2645 2.47227 5.62594 2.36216 6.00481L1.31209 6.24287C0.924883 6.33065 0.650024 6.6748 0.650024 7.07183V7.92897C0.650024 8.32601 0.924883 8.67015 1.31209 8.75794L2.36228 8.99603C2.47246 9.375 2.62335 9.73652 2.80979 10.0755L2.2354 10.9867C2.02367 11.3225 2.07267 11.7602 2.35341 12.041L2.95951 12.6471C3.24025 12.9278 3.67795 12.9768 4.01382 12.7651L4.92506 12.1907C5.26384 12.377 5.62516 12.5278 6.0039 12.6379L6.24198 13.6881C6.32977 14.0753 6.67391 14.3502 7.07095 14.3502H7.92809C8.32512 14.3502 8.66927 14.0753 8.75705 13.6881L8.99505 12.6383C9.37411 12.5282 9.73573 12.3773 10.0748 12.1909L10.986 12.7653C11.3218 12.977 11.7595 12.928 12.0403 12.6473L12.6464 12.0412C12.9271 11.7604 12.9761 11.3227 12.7644 10.9869L12.1902 10.076C12.3768 9.73688 12.5278 9.37515 12.638 8.99596L13.6879 8.75794C14.0751 8.67015 14.35 8.32601 14.35 7.92897V7.07183C14.35 6.6748 14.0751 6.33065 13.6879 6.24287L12.6381 6.00488C12.528 5.62578 12.3771 5.26414 12.1906 4.92507L12.7648 4.01407C12.9766 3.6782 12.9276 3.2405 12.6468 2.95975L12.0407 2.35366C11.76 2.07292 11.3223 2.02392 10.9864 2.23565L10.0755 2.80989C9.73622 2.62328 9.37437 2.47229 8.99505 2.36209L8.75705 1.31231C8.66927 0.925096 8.32512 0.650238 7.92809 0.650238H7.07095ZM4.92053 3.81251C5.44724 3.44339 6.05665 3.18424 6.71543 3.06839L7.07095 1.50024H7.92809L8.28355 3.06816C8.94267 3.18387 9.5524 3.44302 10.0794 3.81224L11.4397 2.9547L12.0458 3.56079L11.1882 4.92117C11.5573 5.44798 11.8164 6.0575 11.9321 6.71638L13.5 7.07183V7.92897L11.932 8.28444C11.8162 8.94342 11.557 9.55301 11.1878 10.0798L12.0453 11.4402L11.4392 12.0462L10.0787 11.1886C9.55192 11.5576 8.94241 11.8166 8.28355 11.9323L7.92809 13.5002H7.07095L6.71543 11.932C6.0569 11.8162 5.44772 11.5572 4.92116 11.1883L3.56055 12.046L2.95445 11.4399L3.81213 10.0794C3.4431 9.55266 3.18403 8.94326 3.06825 8.2845L1.50002 7.92897V7.07183L3.06818 6.71632C3.18388 6.05765 3.44283 5.44833 3.81171 4.92165L2.95398 3.561L3.56008 2.95491L4.92053 3.81251ZM9.02496 7.50008C9.02496 8.34226 8.34223 9.02499 7.50005 9.02499C6.65786 9.02499 5.97513 8.34226 5.97513 7.50008C5.97513 6.65789 6.65786 5.97516 7.50005 5.97516C8.34223 5.97516 9.02496 6.65789 9.02496 7.50008ZM9.92496 7.50008C9.92496 8.83932 8.83929 9.92499 7.50005 9.92499C6.1608 9.92499 5.07513 8.83932 5.07513 7.50008C5.07513 6.16084 6.1608 5.07516 7.50005 5.07516C8.83929 5.07516 9.92496 6.16084 9.92496 7.50008Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2m = [\n \"color\"\n];\nvar GitHubLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2m);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49933 0.25C3.49635 0.25 0.25 3.49593 0.25 7.50024C0.25 10.703 2.32715 13.4206 5.2081 14.3797C5.57084 14.446 5.70302 14.2222 5.70302 14.0299C5.70302 13.8576 5.69679 13.4019 5.69323 12.797C3.67661 13.235 3.25112 11.825 3.25112 11.825C2.92132 10.9874 2.44599 10.7644 2.44599 10.7644C1.78773 10.3149 2.49584 10.3238 2.49584 10.3238C3.22353 10.375 3.60629 11.0711 3.60629 11.0711C4.25298 12.1788 5.30335 11.8588 5.71638 11.6732C5.78225 11.205 5.96962 10.8854 6.17658 10.7043C4.56675 10.5209 2.87415 9.89918 2.87415 7.12104C2.87415 6.32925 3.15677 5.68257 3.62053 5.17563C3.54576 4.99226 3.29697 4.25521 3.69174 3.25691C3.69174 3.25691 4.30015 3.06196 5.68522 3.99973C6.26337 3.83906 6.8838 3.75895 7.50022 3.75583C8.1162 3.75895 8.73619 3.83906 9.31523 3.99973C10.6994 3.06196 11.3069 3.25691 11.3069 3.25691C11.7026 4.25521 11.4538 4.99226 11.3795 5.17563C11.8441 5.68257 12.1245 6.32925 12.1245 7.12104C12.1245 9.9063 10.4292 10.5192 8.81452 10.6985C9.07444 10.9224 9.30633 11.3648 9.30633 12.0413C9.30633 13.0102 9.29742 13.7922 9.29742 14.0299C9.29742 14.2239 9.42828 14.4496 9.79591 14.3788C12.6746 13.4179 14.75 10.7025 14.75 7.50024C14.75 3.49593 11.5036 0.25 7.49933 0.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2n = [\n \"color\"\n];\nvar GlobeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2n);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49996 1.80002C4.35194 1.80002 1.79996 4.352 1.79996 7.50002C1.79996 10.648 4.35194 13.2 7.49996 13.2C10.648 13.2 13.2 10.648 13.2 7.50002C13.2 4.352 10.648 1.80002 7.49996 1.80002ZM0.899963 7.50002C0.899963 3.85494 3.85488 0.900024 7.49996 0.900024C11.145 0.900024 14.1 3.85494 14.1 7.50002C14.1 11.1451 11.145 14.1 7.49996 14.1C3.85488 14.1 0.899963 11.1451 0.899963 7.50002Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.4999 7.89998H1.49994V7.09998H13.4999V7.89998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.09991 13.5V1.5H7.89991V13.5H7.09991zM10.375 7.49998C10.375 5.32724 9.59364 3.17778 8.06183 1.75656L8.53793 1.24341C10.2396 2.82218 11.075 5.17273 11.075 7.49998 11.075 9.82724 10.2396 12.1778 8.53793 13.7566L8.06183 13.2434C9.59364 11.8222 10.375 9.67273 10.375 7.49998zM3.99969 7.5C3.99969 5.17611 4.80786 2.82678 6.45768 1.24719L6.94177 1.75281C5.4582 3.17323 4.69969 5.32389 4.69969 7.5 4.6997 9.67611 5.45822 11.8268 6.94179 13.2472L6.45769 13.7528C4.80788 12.1732 3.9997 9.8239 3.99969 7.5z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49996 3.95801C9.66928 3.95801 11.8753 4.35915 13.3706 5.19448 13.5394 5.28875 13.5998 5.50197 13.5055 5.67073 13.4113 5.83948 13.198 5.89987 13.0293 5.8056 11.6794 5.05155 9.60799 4.65801 7.49996 4.65801 5.39192 4.65801 3.32052 5.05155 1.97064 5.8056 1.80188 5.89987 1.58866 5.83948 1.49439 5.67073 1.40013 5.50197 1.46051 5.28875 1.62927 5.19448 3.12466 4.35915 5.33063 3.95801 7.49996 3.95801zM7.49996 10.85C9.66928 10.85 11.8753 10.4488 13.3706 9.6135 13.5394 9.51924 13.5998 9.30601 13.5055 9.13726 13.4113 8.9685 13.198 8.90812 13.0293 9.00238 11.6794 9.75643 9.60799 10.15 7.49996 10.15 5.39192 10.15 3.32052 9.75643 1.97064 9.00239 1.80188 8.90812 1.58866 8.9685 1.49439 9.13726 1.40013 9.30601 1.46051 9.51924 1.62927 9.6135 3.12466 10.4488 5.33063 10.85 7.49996 10.85z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2o = [\n \"color\"\n];\nvar GridIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2o);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.5 2H8V7H13V2.5C13 2.22386 12.7761 2 12.5 2ZM13 8H8V13H12.5C12.7761 13 13 12.7761 13 12.5V8ZM7 7V2H2.5C2.22386 2 2 2.22386 2 2.5V7H7ZM2 8V12.5C2 12.7761 2.22386 13 2.5 13H7V8H2ZM2.5 1C1.67157 1 1 1.67157 1 2.5V12.5C1 13.3284 1.67157 14 2.5 14H12.5C13.3284 14 14 13.3284 14 12.5V2.5C14 1.67157 13.3284 1 12.5 1H2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2p = [\n \"color\"\n];\nvar GroupIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2p);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.44995 0.949951C1.31734 0.949951 1.19016 1.00263 1.0964 1.0964C1.00263 1.19017 0.949951 1.31735 0.949951 1.44995L0.949966 3.44995C0.949969 3.7261 1.17383 3.94995 1.44997 3.94995C1.72611 3.94995 1.94997 3.72609 1.94997 3.44995L1.94995 1.94995H3.44997C3.72611 1.94995 3.94997 1.72609 3.94997 1.44995C3.94997 1.17381 3.72611 0.949951 3.44997 0.949951H1.44995ZM5.94995 0.949951C5.67381 0.949951 5.44995 1.17381 5.44995 1.44995C5.44995 1.72609 5.67381 1.94995 5.94995 1.94995H8.94995C9.22609 1.94995 9.44995 1.72609 9.44995 1.44995C9.44995 1.17381 9.22609 0.949951 8.94995 0.949951H5.94995ZM5.44995 13.45C5.44995 13.1738 5.67381 12.95 5.94995 12.95H8.94995C9.22609 12.95 9.44995 13.1738 9.44995 13.45C9.44995 13.7261 9.22609 13.95 8.94995 13.95H5.94995C5.67381 13.95 5.44995 13.7261 5.44995 13.45ZM1.94995 5.94995C1.94995 5.67381 1.72609 5.44995 1.44995 5.44995C1.17381 5.44995 0.949951 5.67381 0.949951 5.94995V8.94995C0.949951 9.22609 1.17381 9.44995 1.44995 9.44995C1.72609 9.44995 1.94995 9.22609 1.94995 8.94995V5.94995ZM13.45 5.44995C13.7261 5.44995 13.95 5.67381 13.95 5.94995V8.94995C13.95 9.22609 13.7261 9.44995 13.45 9.44995C13.1738 9.44995 12.95 9.22609 12.95 8.94995V5.94995C12.95 5.67381 13.1738 5.44995 13.45 5.44995ZM11.45 0.949951C11.1738 0.949951 10.95 1.17381 10.95 1.44995C10.95 1.72609 11.1738 1.94995 11.45 1.94995H12.9499V3.44995C12.9499 3.72609 13.1738 3.94995 13.4499 3.94995C13.7261 3.94995 13.9499 3.72609 13.9499 3.44995V1.44995C13.9499 1.17381 13.7252 0.949951 13.449 0.949951H11.45ZM1.44995 10.95C1.72609 10.95 1.94995 11.1738 1.94995 11.45V12.95H3.44997C3.72611 12.95 3.94997 13.1738 3.94997 13.45C3.94997 13.7261 3.72611 13.95 3.44997 13.95H1.44995C1.17381 13.95 0.949951 13.7261 0.949951 13.45V11.45C0.949951 11.1738 1.17381 10.95 1.44995 10.95ZM13.95 11.45C13.95 11.1738 13.7261 10.95 13.45 10.95C13.1738 10.9499 12.95 11.1738 12.95 11.4499L12.9491 12.95H11.45C11.1738 12.95 10.95 13.1738 10.95 13.45C10.95 13.7261 11.1738 13.95 11.45 13.95H13.4499C13.7261 13.95 13.9499 13.7261 13.9499 13.45L13.95 11.45Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2q = [\n \"color\"\n];\nvar Half1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.876892C3.84222 0.876892 0.877075 3.84204 0.877075 7.49972C0.877075 11.1574 3.84222 14.1226 7.49991 14.1226C11.1576 14.1226 14.1227 11.1574 14.1227 7.49972C14.1227 3.84204 11.1576 0.876892 7.49991 0.876892ZM7.00003 1.84861C4.10114 2.1017 1.82707 4.53515 1.82707 7.49972C1.82707 10.4643 4.10114 12.8977 7.00003 13.1508V1.84861ZM8.00003 13.1508C10.8988 12.8976 13.1727 10.4642 13.1727 7.49972C13.1727 4.53524 10.8988 2.10185 8.00003 1.84864V13.1508Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2r = [\n \"color\"\n];\nvar Half2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2r);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.876892C3.84222 0.876892 0.877075 3.84204 0.877075 7.49972C0.877075 11.1574 3.84222 14.1226 7.49991 14.1226C11.1576 14.1226 14.1227 11.1574 14.1227 7.49972C14.1227 3.84204 11.1576 0.876892 7.49991 0.876892ZM7.49988 1.82689C4.36688 1.8269 1.82707 4.36672 1.82707 7.49972C1.82707 10.6327 4.36688 13.1725 7.49988 13.1726V1.82689Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2s = [\n \"color\"\n];\nvar HamburgerMenuIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2s);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.5 3C1.22386 3 1 3.22386 1 3.5C1 3.77614 1.22386 4 1.5 4H13.5C13.7761 4 14 3.77614 14 3.5C14 3.22386 13.7761 3 13.5 3H1.5ZM1 7.5C1 7.22386 1.22386 7 1.5 7H13.5C13.7761 7 14 7.22386 14 7.5C14 7.77614 13.7761 8 13.5 8H1.5C1.22386 8 1 7.77614 1 7.5ZM1 11.5C1 11.2239 1.22386 11 1.5 11H13.5C13.7761 11 14 11.2239 14 11.5C14 11.7761 13.7761 12 13.5 12H1.5C1.22386 12 1 11.7761 1 11.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2t = [\n \"color\"\n];\nvar HandIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2t);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.8113 1.64706C6.62188 2.87918 6.68268 3.88523 6.76848 5.30499C6.78415 5.56426 6.80065 5.83732 6.81661 6.12808C6.83111 6.39208 6.63758 6.62172 6.37495 6.65217C6.11232 6.68262 5.87138 6.50334 5.82509 6.24304L5.74754 5.80698C5.64402 5.16529 5.48355 4.25481 5.17807 3.44741C4.86241 2.61312 4.4486 2.04121 3.93436 1.86044C3.64994 1.76104 3.41901 1.84279 3.25868 2.01052C3.08746 2.18962 2.9976 2.47065 3.0627 2.75399C3.2146 3.34424 3.44627 3.9167 3.69836 4.51802C3.72082 4.57158 3.74346 4.62543 3.76621 4.67954C3.9954 5.22457 4.23619 5.7972 4.41644 6.39081L4.41691 6.39238C4.562 6.87586 4.65646 7.2595 4.73086 7.56165C4.76034 7.68138 4.78667 7.78831 4.81175 7.88359C4.86768 8.09606 4.77836 8.32014 4.59161 8.43588C4.40486 8.55161 4.16445 8.53188 3.99907 8.38725C3.73749 8.15848 3.515 7.92784 3.31817 7.71802C3.27627 7.67335 3.23602 7.63018 3.19705 7.58838C3.04777 7.42826 2.91712 7.28812 2.78334 7.16029C2.45989 6.85122 2.18398 6.68004 1.80585 6.64369L1.80324 6.64343C1.56117 6.61888 1.41402 6.66441 1.31756 6.72627C1.21899 6.78947 1.11988 6.90414 1.03784 7.1123C0.976576 7.28492 1.01515 7.62987 1.1929 7.96911L1.19728 7.97747C1.40086 8.38452 1.74475 8.81587 2.18141 9.29299C2.39739 9.52898 2.62872 9.76849 2.86934 10.0174L2.87966 10.0281C3.11546 10.2721 3.35962 10.5247 3.59713 10.7827C4.4288 11.6863 5.27706 12.7538 5.4627 14H11.5087C11.5636 12.4353 11.8756 11.268 12.2875 10.1346C12.4454 9.70041 12.6121 9.28412 12.7826 8.85829C13.1097 8.04139 13.4509 7.18937 13.7705 6.10824C14.0989 4.99737 14.0097 4.37033 13.8613 4.03984C13.717 3.71858 13.4914 3.61786 13.3816 3.59606C13.1381 3.54774 13.0384 3.60947 12.9698 3.67901C12.867 3.78316 12.7698 3.98273 12.6921 4.30269C12.6166 4.61345 12.5752 4.96517 12.533 5.32501L12.5298 5.35285C12.4924 5.67242 12.4505 6.03016 12.3665 6.30098C12.3383 6.40699 12.2819 6.50407 12.1979 6.57539C12.1382 6.6261 12.0104 6.70818 11.8309 6.69312C11.5424 6.66891 11.3712 6.42143 11.365 6.14783C11.356 5.75454 11.3883 5.35864 11.4074 4.96608C11.4428 4.23646 11.477 3.5337 11.4245 2.8342L11.4242 2.82934C11.3916 2.32997 11.0493 2.00228 10.7007 1.9228C10.5305 1.88401 10.369 1.90601 10.2347 1.9835C10.103 2.05946 9.95535 2.21318 9.8574 2.51394L9.85631 2.51726C9.81525 2.6404 9.77298 2.87753 9.73606 3.2124C9.70044 3.53542 9.67337 3.91279 9.65156 4.29418C9.6329 4.62033 9.61785 4.9584 9.60434 5.26194C9.58728 5.64529 9.57267 5.97357 9.55633 6.1532C9.54983 6.22459 9.52939 6.29493 9.49501 6.35785C9.47356 6.39711 9.36115 6.60947 9.07106 6.61843C8.77917 6.62744 8.63975 6.40057 8.61698 6.35919C8.55634 6.24899 8.55066 6.11807 8.54754 5.99283C8.54474 5.88064 8.54294 5.71798 8.54174 5.54767C8.53935 5.20582 8.53935 4.81919 8.53935 4.70952C8.53935 3.6657 8.53838 2.65372 8.44714 1.64372C8.39183 1.24127 8.06278 1.00455 7.6436 1.00005C7.22399 0.995552 6.87918 1.22704 6.8113 1.64706ZM9.41219 1.3617C9.21469 0.448484 8.39913 0.00810324 7.65433 0.00011154C6.86452 -0.00836308 5.98761 0.465881 5.82365 1.49037L5.82318 1.49334C5.78239 1.7584 5.75229 2.01481 5.7309 2.26652C5.39423 1.67364 4.92622 1.14894 4.2655 0.916859C3.58661 0.679312 2.9492 0.887087 2.53582 1.31952C2.13415 1.73971 1.94438 2.36742 2.09031 2.98746L2.09269 2.99713C2.26478 3.66808 2.52396 4.30316 2.77613 4.90465C2.79814 4.95717 2.8201 5.00941 2.84194 5.06139C3.02139 5.48842 3.19378 5.89866 3.33871 6.31256C2.96404 5.98142 2.51925 5.70796 1.90276 5.6484C1.48865 5.60663 1.10391 5.67536 0.777805 5.88444C0.454239 6.0919 0.240671 6.40405 0.104187 6.75406L0.100868 6.76281C-0.10184 7.31286 0.0663312 7.97157 0.304895 8.42897C0.573704 8.96474 0.996104 9.47904 1.44372 9.96813C1.67046 10.2159 1.91136 10.4652 2.15033 10.7124L2.15682 10.7191C2.39524 10.9658 2.63217 11.2109 2.86134 11.4599C3.80937 12.49 4.50002 13.4632 4.50002 14.5C4.50002 14.7761 4.72388 15 5.00002 15H12C12.2762 15 12.5 14.7761 12.5 14.5C12.5 12.8212 12.8021 11.6462 13.2274 10.4762C13.3653 10.0968 13.5216 9.70579 13.6868 9.29247C14.0238 8.44922 14.398 7.51298 14.7295 6.39175C15.0956 5.15324 15.0559 4.25904 14.7735 3.63017C14.487 2.99208 13.9798 2.6953 13.5763 2.6152C13.1276 2.52614 12.7367 2.60475 12.4268 2.83081C12.4253 2.80773 12.4236 2.78468 12.4219 2.76167C12.3587 1.8105 11.6907 1.12285 10.923 0.947821C10.5346 0.859287 10.1111 0.900393 9.73509 1.11724C9.61852 1.18446 9.51055 1.26623 9.41219 1.3617Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2u = [\n \"color\"\n];\nvar HeadingIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2u);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.75432 2.0502C8.50579 2.0502 8.30432 2.25167 8.30432 2.5002C8.30432 2.74873 8.50579 2.9502 8.75432 2.9502H9.94997V7.05004H5.04997V2.9502H6.25432C6.50285 2.9502 6.70432 2.74873 6.70432 2.5002C6.70432 2.25167 6.50285 2.0502 6.25432 2.0502H2.75432C2.50579 2.0502 2.30432 2.25167 2.30432 2.5002C2.30432 2.74873 2.50579 2.9502 2.75432 2.9502H3.94997V12.0502H2.75432C2.50579 12.0502 2.30432 12.2517 2.30432 12.5002C2.30432 12.7487 2.50579 12.9502 2.75432 12.9502H6.25432C6.50285 12.9502 6.70432 12.7487 6.70432 12.5002C6.70432 12.2517 6.50285 12.0502 6.25432 12.0502H5.04997V7.95004H9.94997V12.0502H8.75432C8.50579 12.0502 8.30432 12.2517 8.30432 12.5002C8.30432 12.7487 8.50579 12.9502 8.75432 12.9502H12.2543C12.5028 12.9502 12.7043 12.7487 12.7043 12.5002C12.7043 12.2517 12.5028 12.0502 12.2543 12.0502H11.05V2.9502H12.2543C12.5028 2.9502 12.7043 2.74873 12.7043 2.5002C12.7043 2.25167 12.5028 2.0502 12.2543 2.0502H8.75432Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2v = [\n \"color\"\n];\nvar HeartIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2v);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.89346 2.35248C3.49195 2.35248 2.35248 3.49359 2.35248 4.90532C2.35248 6.38164 3.20954 7.9168 4.37255 9.33522C5.39396 10.581 6.59464 11.6702 7.50002 12.4778C8.4054 11.6702 9.60608 10.581 10.6275 9.33522C11.7905 7.9168 12.6476 6.38164 12.6476 4.90532C12.6476 3.49359 11.5081 2.35248 10.1066 2.35248C9.27059 2.35248 8.81894 2.64323 8.5397 2.95843C8.27877 3.25295 8.14623 3.58566 8.02501 3.88993C8.00391 3.9429 7.98315 3.99501 7.96211 4.04591C7.88482 4.23294 7.7024 4.35494 7.50002 4.35494C7.29765 4.35494 7.11523 4.23295 7.03793 4.04592C7.01689 3.99501 6.99612 3.94289 6.97502 3.8899C6.8538 3.58564 6.72126 3.25294 6.46034 2.95843C6.18109 2.64323 5.72945 2.35248 4.89346 2.35248ZM1.35248 4.90532C1.35248 2.94498 2.936 1.35248 4.89346 1.35248C6.0084 1.35248 6.73504 1.76049 7.20884 2.2953C7.32062 2.42147 7.41686 2.55382 7.50002 2.68545C7.58318 2.55382 7.67941 2.42147 7.79119 2.2953C8.265 1.76049 8.99164 1.35248 10.1066 1.35248C12.064 1.35248 13.6476 2.94498 13.6476 4.90532C13.6476 6.74041 12.6013 8.50508 11.4008 9.96927C10.2636 11.3562 8.92194 12.5508 8.00601 13.3664C7.94645 13.4194 7.88869 13.4709 7.83291 13.5206C7.64324 13.6899 7.3568 13.6899 7.16713 13.5206C7.11135 13.4709 7.05359 13.4194 6.99403 13.3664C6.0781 12.5508 4.73641 11.3562 3.59926 9.96927C2.39872 8.50508 1.35248 6.74041 1.35248 4.90532Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2w = [\n \"color\"\n];\nvar HeartFilledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2w);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.35248 4.90532C1.35248 2.94498 2.936 1.35248 4.89346 1.35248C6.25769 1.35248 6.86058 1.92336 7.50002 2.93545C8.13946 1.92336 8.74235 1.35248 10.1066 1.35248C12.064 1.35248 13.6476 2.94498 13.6476 4.90532C13.6476 6.74041 12.6013 8.50508 11.4008 9.96927C10.2636 11.3562 8.92194 12.5508 8.00601 13.3664C7.94645 13.4194 7.88869 13.4709 7.83291 13.5206C7.64324 13.6899 7.3568 13.6899 7.16713 13.5206C7.11135 13.4709 7.05359 13.4194 6.99403 13.3664C6.0781 12.5508 4.73641 11.3562 3.59926 9.96927C2.39872 8.50508 1.35248 6.74041 1.35248 4.90532Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2x = [\n \"color\"\n];\nvar HeightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2x);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.1813 1.68179C7.35704 1.50605 7.64196 1.50605 7.8177 1.68179L10.3177 4.18179C10.4934 4.35753 10.4934 4.64245 10.3177 4.81819C10.142 4.99392 9.85704 4.99392 9.6813 4.81819L7.9495 3.08638L7.9495 11.9136L9.6813 10.1818C9.85704 10.0061 10.142 10.0061 10.3177 10.1818C10.4934 10.3575 10.4934 10.6424 10.3177 10.8182L7.8177 13.3182C7.73331 13.4026 7.61885 13.45 7.4995 13.45C7.38015 13.45 7.26569 13.4026 7.1813 13.3182L4.6813 10.8182C4.50557 10.6424 4.50557 10.3575 4.6813 10.1818C4.85704 10.0061 5.14196 10.0061 5.3177 10.1818L7.0495 11.9136L7.0495 3.08638L5.3177 4.81819C5.14196 4.99392 4.85704 4.99392 4.6813 4.81819C4.50557 4.64245 4.50557 4.35753 4.6813 4.18179L7.1813 1.68179Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2y = [\n \"color\"\n];\nvar HobbyKnifeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.3536 13.3536C12.1583 13.5488 11.8417 13.5488 11.6465 13.3536L6.39645 8.10355C6.36478 8.07188 6.33824 8.03702 6.31685 8H5.00002C4.78719 8 4.59769 7.86528 4.52777 7.66426L2.12777 0.764277C2.05268 0.548387 2.13355 0.309061 2.3242 0.182972C2.51486 0.0568819 2.76674 0.0761337 2.93602 0.229734L8.336 5.12972C8.44044 5.22449 8.50001 5.35897 8.50001 5.5V5.81684C8.53702 5.83824 8.57189 5.86478 8.60356 5.89645L13.8536 11.1464C14.0488 11.3417 14.0488 11.6583 13.8536 11.8536L12.3536 13.3536ZM8.25 6.95711L7.45711 7.75L12 12.2929L12.7929 11.5L8.25 6.95711ZM3.71669 2.28845L5.35549 7H6.2929L7.50001 5.79289V5.72146L3.71669 2.28845Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2z = [\n \"color\"\n];\nvar HomeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.07926 0.222253C7.31275 -0.007434 7.6873 -0.007434 7.92079 0.222253L14.6708 6.86227C14.907 7.09465 14.9101 7.47453 14.6778 7.71076C14.4454 7.947 14.0655 7.95012 13.8293 7.71773L13 6.90201V12.5C13 12.7761 12.7762 13 12.5 13H2.50002C2.22388 13 2.00002 12.7761 2.00002 12.5V6.90201L1.17079 7.71773C0.934558 7.95012 0.554672 7.947 0.32229 7.71076C0.0899079 7.47453 0.0930283 7.09465 0.32926 6.86227L7.07926 0.222253ZM7.50002 1.49163L12 5.91831V12H10V8.49999C10 8.22385 9.77617 7.99999 9.50002 7.99999H6.50002C6.22388 7.99999 6.00002 8.22385 6.00002 8.49999V12H3.00002V5.91831L7.50002 1.49163ZM7.00002 12H9.00002V8.99999H7.00002V12Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2A = [\n \"color\"\n];\nvar IconJarLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2A);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 0.0032959C6.80473 0.0032959 6.24953 0.281106 6.25 0.749995C6.25 0.997258 6.42446 1.12014 6.57687 1.22749C6.69507 1.31074 6.8 1.38465 6.8 1.5C6.8 1.7071 6.06224 1.74264 5.19789 1.78427C3.97553 1.84314 2.5 1.91421 2.5 2.5C2.5 2.77614 2.72386 3 3 3H12C12.2761 3 12.5 2.77614 12.5 2.5C12.5 1.91421 11.0245 1.84314 9.80211 1.78427C8.93776 1.74264 8.2 1.7071 8.2 1.5C8.2 1.38465 8.30493 1.31074 8.42313 1.22749C8.57554 1.12014 8.75 0.997258 8.75 0.749995C8.75047 0.281106 8.19527 0.0032959 7.5 0.0032959ZM2.89451 6.12266C2.25806 6.52471 1.90417 7.31118 2.02473 8.0556L2.83588 12.4772C3.00993 13.3562 3.7629 14 4.66061 14H10.3373C11.2354 14 11.9884 13.3562 12.1625 12.4772L12.9736 8.05607C13.089 7.32358 12.8284 6.53276 12.1331 6.09373C11.7283 5.83013 11.6412 5.33231 12.1331 5.12796C12.8284 4.86435 12.6948 4 12 4H10.3001H6.80005H2.99996C2.30469 4 2.19878 4.89328 2.89451 5.15689C3.38642 5.33231 3.29939 5.83013 2.89451 6.12266ZM8.20006 6.25C8.20006 5.81769 8.08572 5.37615 7.90635 5L4.11093 5C4.20626 5.21312 4.2419 5.43889 4.22904 5.65521C4.19522 6.22412 3.84587 6.66899 3.48016 6.93322L3.45492 6.95146L3.42858 6.9681C3.13407 7.15414 2.95801 7.53989 3.01058 7.88749L3.81797 12.2886C3.90513 12.7154 4.26148 13 4.66061 13H10.3373C10.737 13 11.0932 12.7153 11.1804 12.2886L11.9874 7.8898C12.048 7.48247 11.8954 7.12631 11.5992 6.93927L11.5875 6.93184L11.5875 6.93176C11.1947 6.67602 10.8331 6.22785 10.7986 5.64798C10.7846 5.412 10.8264 5.19397 10.9112 5H9.05517C9.01987 5.14611 9.00006 5.31201 9.00006 5.5C9.00006 5.9745 9.21679 6.37127 9.44367 6.78662C9.69284 7.24278 9.95425 7.72136 9.95425 8.34993C9.95425 9.2698 9.49868 9.84205 8.62189 9.84205C8.13206 9.84205 7.57818 9.46097 7.57818 8.75781C7.57818 8.35279 7.71558 8.01646 7.86121 7.65998C8.0254 7.25806 8.20006 6.83051 8.20006 6.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2B = [\n \"color\"\n];\nvar IdCardIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2B);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14 11.0001V4.00006L1 4.00006L1 11.0001H14ZM15 4.00006V11.0001C15 11.5523 14.5523 12.0001 14 12.0001H1C0.447715 12.0001 0 11.5523 0 11.0001V4.00006C0 3.44778 0.447715 3.00006 1 3.00006H14C14.5523 3.00006 15 3.44778 15 4.00006ZM2 5.25C2 5.11193 2.11193 5 2.25 5H5.75C5.88807 5 6 5.11193 6 5.25V9.75C6 9.88807 5.88807 10 5.75 10H2.25C2.11193 10 2 9.88807 2 9.75V5.25ZM7.5 7C7.22386 7 7 7.22386 7 7.5C7 7.77614 7.22386 8 7.5 8H10.5C10.7761 8 11 7.77614 11 7.5C11 7.22386 10.7761 7 10.5 7H7.5ZM7 9.5C7 9.22386 7.22386 9 7.5 9H12.5C12.7761 9 13 9.22386 13 9.5C13 9.77614 12.7761 10 12.5 10H7.5C7.22386 10 7 9.77614 7 9.5ZM7.5 5C7.22386 5 7 5.22386 7 5.5C7 5.77614 7.22386 6 7.5 6H11.5C11.7761 6 12 5.77614 12 5.5C12 5.22386 11.7761 5 11.5 5H7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2C = [\n \"color\"\n];\nvar ImageIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2C);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.5 1H12.5C13.3284 1 14 1.67157 14 2.5V12.5C14 13.3284 13.3284 14 12.5 14H2.5C1.67157 14 1 13.3284 1 12.5V2.5C1 1.67157 1.67157 1 2.5 1ZM2.5 2C2.22386 2 2 2.22386 2 2.5V8.3636L3.6818 6.6818C3.76809 6.59551 3.88572 6.54797 4.00774 6.55007C4.12975 6.55216 4.24568 6.60372 4.32895 6.69293L7.87355 10.4901L10.6818 7.6818C10.8575 7.50607 11.1425 7.50607 11.3182 7.6818L13 9.3636V2.5C13 2.22386 12.7761 2 12.5 2H2.5ZM2 12.5V9.6364L3.98887 7.64753L7.5311 11.4421L8.94113 13H2.5C2.22386 13 2 12.7761 2 12.5ZM12.5 13H10.155L8.48336 11.153L11 8.6364L13 10.6364V12.5C13 12.7761 12.7761 13 12.5 13ZM6.64922 5.5C6.64922 5.03013 7.03013 4.64922 7.5 4.64922C7.96987 4.64922 8.35078 5.03013 8.35078 5.5C8.35078 5.96987 7.96987 6.35078 7.5 6.35078C7.03013 6.35078 6.64922 5.96987 6.64922 5.5ZM7.5 3.74922C6.53307 3.74922 5.74922 4.53307 5.74922 5.5C5.74922 6.46693 6.53307 7.25078 7.5 7.25078C8.46693 7.25078 9.25078 6.46693 9.25078 5.5C9.25078 4.53307 8.46693 3.74922 7.5 3.74922Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2D = [\n \"color\"\n];\nvar InfoCircledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2D);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.876892C3.84222 0.876892 0.877075 3.84204 0.877075 7.49972C0.877075 11.1574 3.84222 14.1226 7.49991 14.1226C11.1576 14.1226 14.1227 11.1574 14.1227 7.49972C14.1227 3.84204 11.1576 0.876892 7.49991 0.876892ZM1.82707 7.49972C1.82707 4.36671 4.36689 1.82689 7.49991 1.82689C10.6329 1.82689 13.1727 4.36671 13.1727 7.49972C13.1727 10.6327 10.6329 13.1726 7.49991 13.1726C4.36689 13.1726 1.82707 10.6327 1.82707 7.49972ZM8.24992 4.49999C8.24992 4.9142 7.91413 5.24999 7.49992 5.24999C7.08571 5.24999 6.74992 4.9142 6.74992 4.49999C6.74992 4.08577 7.08571 3.74999 7.49992 3.74999C7.91413 3.74999 8.24992 4.08577 8.24992 4.49999ZM6.00003 5.99999H6.50003H7.50003C7.77618 5.99999 8.00003 6.22384 8.00003 6.49999V9.99999H8.50003H9.00003V11H8.50003H7.50003H6.50003H6.00003V9.99999H6.50003H7.00003V6.99999H6.50003H6.00003V5.99999Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2E = [\n \"color\"\n];\nvar InputIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2E);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.5 1C6.22386 1 6 1.22386 6 1.5C6 1.77614 6.22386 2 6.5 2C7.12671 2 7.45718 2.20028 7.65563 2.47812C7.8781 2.78957 8 3.28837 8 4V11C8 11.7116 7.8781 12.2104 7.65563 12.5219C7.45718 12.7997 7.12671 13 6.5 13C6.22386 13 6 13.2239 6 13.5C6 13.7761 6.22386 14 6.5 14C7.37329 14 8.04282 13.7003 8.46937 13.1031C8.47976 13.0886 8.48997 13.0739 8.5 13.0591C8.51003 13.0739 8.52024 13.0886 8.53063 13.1031C8.95718 13.7003 9.62671 14 10.5 14C10.7761 14 11 13.7761 11 13.5C11 13.2239 10.7761 13 10.5 13C9.87329 13 9.54282 12.7997 9.34437 12.5219C9.1219 12.2104 9 11.7116 9 11V4C9 3.28837 9.1219 2.78957 9.34437 2.47812C9.54282 2.20028 9.87329 2 10.5 2C10.7761 2 11 1.77614 11 1.5C11 1.22386 10.7761 1 10.5 1C9.62671 1 8.95718 1.29972 8.53063 1.89688C8.52024 1.91143 8.51003 1.92611 8.5 1.9409C8.48997 1.92611 8.47976 1.91143 8.46937 1.89688C8.04282 1.29972 7.37329 1 6.5 1ZM14 5H11V4H14C14.5523 4 15 4.44772 15 5V10C15 10.5523 14.5523 11 14 11H11V10H14V5ZM6 4V5H1L1 10H6V11H1C0.447715 11 0 10.5523 0 10V5C0 4.44772 0.447715 4 1 4H6Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2F = [\n \"color\"\n];\nvar InstagramLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2F);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M12.9091 12.909C13.2365 12.5817 13.4918 12.1895 13.6588 11.7577C13.8195 11.3443 13.9294 10.8718 13.961 10.1799C13.9926 9.48665 14.0001 9.26529 14.0001 7.50001C14.0001 5.73473 13.9926 5.51328 13.961 4.82008C13.9294 4.12821 13.8195 3.65573 13.6588 3.24228C13.4956 2.80857 13.2398 2.41567 12.9091 2.091C12.5844 1.76028 12.1915 1.50437 11.7578 1.34113C11.3443 1.18056 10.8718 1.0707 10.1799 1.03924C9.48675 1.00748 9.26537 1 7.50006 1C5.73476 1 5.51333 1.00748 4.82014 1.03912C4.12826 1.0707 3.65578 1.18056 3.24233 1.34125C2.80862 1.50447 2.41573 1.76032 2.09105 2.09098C1.76032 2.41563 1.5044 2.80852 1.34113 3.24225C1.18056 3.65573 1.0707 4.12821 1.03924 4.82008C1.00748 5.51328 1 5.73471 1 7.50001C1 9.26532 1.00748 9.48675 1.03924 10.1799C1.07083 10.8718 1.18069 11.3443 1.34138 11.7577C1.5046 12.1915 1.76045 12.5843 2.09111 12.909C2.41578 13.2397 2.80867 13.4955 3.24238 13.6587C3.65586 13.8194 4.12834 13.9293 4.82019 13.9609C5.51348 13.9925 5.73483 14 7.50012 14C9.2654 14 9.48685 13.9925 10.18 13.9609C10.8719 13.9293 11.3444 13.8194 11.7578 13.6587C12.1896 13.4917 12.5818 13.2364 12.9091 12.909ZM1.99949 6.73496C1.99974 6.94524 2.00005 7.19543 2.00005 7.50002C2.00005 7.80461 1.99974 8.0548 1.99949 8.26507C1.99849 9.08596 1.99824 9.29856 2.01963 9.7655C2.04625 10.3509 2.07823 10.7811 2.17588 11.1053C2.26976 11.417 2.37505 11.7342 2.7188 12.1171C3.06255 12.4999 3.39411 12.6733 3.81645 12.8007C4.23879 12.928 4.7696 12.9554 5.23052 12.9764C5.75332 13.0003 5.96052 13.0002 7.05714 12.9999L7.50006 12.9999C7.79304 12.9999 8.03569 13.0001 8.2409 13.0004C9.08195 13.0013 9.29425 13.0015 9.76575 12.9799C10.3512 12.9533 10.7814 12.9213 11.1056 12.8237C11.4173 12.7298 11.7345 12.6245 12.1173 12.2807C12.5001 11.937 12.6735 11.6054 12.8009 11.1831C12.9283 10.7607 12.9557 10.2299 12.9767 9.76902C13.0005 9.24689 13.0004 9.04027 13.0002 7.94749V7.94738L13.0001 7.50039L13.0001 7.05747C13.0004 5.96085 13.0005 5.75365 12.9766 5.23085C12.9556 4.76993 12.9282 4.23912 12.8009 3.81678C12.6735 3.39445 12.5001 3.06288 12.1173 2.71913C11.7345 2.37538 11.4172 2.27009 11.1056 2.17621C10.7813 2.07856 10.3511 2.04658 9.76571 2.01996C9.29421 1.99836 9.08194 1.99859 8.24092 1.99951H8.24092C8.0357 1.99974 7.79305 2.00001 7.50006 2.00001L7.05704 1.99993C5.96051 1.99964 5.75331 1.99958 5.23052 2.02343C4.7696 2.04446 4.23879 2.07183 3.81645 2.19921C3.39411 2.32659 3.06255 2.49999 2.7188 2.88281C2.37505 3.26562 2.26976 3.58286 2.17588 3.89453C2.07823 4.21874 2.04625 4.64894 2.01963 5.23437C1.99824 5.70131 1.99849 5.91401 1.99949 6.73496ZM7.49996 5.25015C6.25741 5.25015 5.25012 6.25744 5.25012 7.49999C5.25012 8.74254 6.25741 9.74983 7.49996 9.74983C8.74251 9.74983 9.7498 8.74254 9.7498 7.49999C9.7498 6.25744 8.74251 5.25015 7.49996 5.25015ZM4.25012 7.49999C4.25012 5.70515 5.70512 4.25015 7.49996 4.25015C9.2948 4.25015 10.7498 5.70515 10.7498 7.49999C10.7498 9.29483 9.2948 10.7498 7.49996 10.7498C5.70512 10.7498 4.25012 9.29483 4.25012 7.49999ZM10.9697 4.7803C11.3839 4.7803 11.7197 4.44452 11.7197 4.0303C11.7197 3.61609 11.3839 3.2803 10.9697 3.2803C10.5555 3.2803 10.2197 3.61609 10.2197 4.0303C10.2197 4.44452 10.5555 4.7803 10.9697 4.7803Z\",\n fill: color\n }));\n});\nvar _excluded$2G = [\n \"color\"\n];\nvar KeyboardIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2G);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M13.5 4H1.5C1.22386 4 1 4.22386 1 4.5V10.5C1 10.7761 1.22386 11 1.5 11H13.5C13.7761 11 14 10.7761 14 10.5V4.5C14 4.22386 13.7761 4 13.5 4ZM1.5 3C0.671573 3 0 3.67157 0 4.5V10.5C0 11.3284 0.671573 12 1.5 12H13.5C14.3284 12 15 11.3284 15 10.5V4.5C15 3.67157 14.3284 3 13.5 3H1.5ZM2 5H3V6H2V5ZM5 5H4V6H5V5ZM6 5H7V6H6V5ZM9 5H8V6H9V5ZM10 5H11V6H10V5ZM13 5H12V6H13V5ZM11 7H12V8H11V7ZM13 9H12V10H13V9ZM9 7H10V8H9V7ZM8 7H7V8H8V7ZM5 7H6V8H5V7ZM4 7H3V8H4V7ZM2 9H3V10H2V9ZM11 9H4V10H11V9Z\",\n fill: color\n }));\n});\nvar _excluded$2H = [\n \"color\"\n];\nvar LapTimerIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2H);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.49998 0.5C5.49998 0.223858 5.72383 0 5.99998 0H7.49998H8.99998C9.27612 0 9.49998 0.223858 9.49998 0.5C9.49998 0.776142 9.27612 1 8.99998 1H7.99998V2.11922C9.09832 2.20409 10.119 2.56622 10.992 3.13572C11.0116 3.10851 11.0336 3.08252 11.058 3.05806L12.058 2.05806C12.3021 1.81398 12.6978 1.81398 12.9419 2.05806C13.186 2.30214 13.186 2.69786 12.9419 2.94194L11.967 3.91682C13.1595 5.07925 13.9 6.70314 13.9 8.49998C13.9 12.0346 11.0346 14.9 7.49998 14.9C3.96535 14.9 1.09998 12.0346 1.09998 8.49998C1.09998 5.13361 3.69904 2.3743 6.99998 2.11922V1H5.99998C5.72383 1 5.49998 0.776142 5.49998 0.5ZM2.09998 8.49998C2.09998 5.51764 4.51764 3.09998 7.49998 3.09998C10.4823 3.09998 12.9 5.51764 12.9 8.49998C12.9 11.4823 10.4823 13.9 7.49998 13.9C4.51764 13.9 2.09998 11.4823 2.09998 8.49998ZM7.49998 8.49998V4.09998C5.06992 4.09998 3.09998 6.06992 3.09998 8.49998C3.09998 10.93 5.06992 12.9 7.49998 12.9C8.715 12.9 9.815 12.4075 10.6112 11.6112L7.49998 8.49998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2I = [\n \"color\"\n];\nvar LaptopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2I);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 4.25C2 4.11193 2.11193 4 2.25 4H12.75C12.8881 4 13 4.11193 13 4.25V11.5H2V4.25ZM2.25 3C1.55964 3 1 3.55964 1 4.25V12H0V12.5C0 12.7761 0.223858 13 0.5 13H14.5C14.7761 13 15 12.7761 15 12.5V12H14V4.25C14 3.55964 13.4404 3 12.75 3H2.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2J = [\n \"color\"\n];\nvar LayersIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2J);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.75432 0.819537C7.59742 0.726821 7.4025 0.726821 7.24559 0.819537L1.74559 4.06954C1.59336 4.15949 1.49996 4.32317 1.49996 4.5C1.49996 4.67683 1.59336 4.84051 1.74559 4.93046L7.24559 8.18046C7.4025 8.27318 7.59742 8.27318 7.75432 8.18046L13.2543 4.93046C13.4066 4.84051 13.5 4.67683 13.5 4.5C13.5 4.32317 13.4066 4.15949 13.2543 4.06954L7.75432 0.819537ZM7.49996 7.16923L2.9828 4.5L7.49996 1.83077L12.0171 4.5L7.49996 7.16923ZM1.5695 7.49564C1.70998 7.2579 2.01659 7.17906 2.25432 7.31954L7.49996 10.4192L12.7456 7.31954C12.9833 7.17906 13.2899 7.2579 13.4304 7.49564C13.5709 7.73337 13.4921 8.03998 13.2543 8.18046L7.75432 11.4305C7.59742 11.5232 7.4025 11.5232 7.24559 11.4305L1.74559 8.18046C1.50786 8.03998 1.42901 7.73337 1.5695 7.49564ZM1.56949 10.4956C1.70998 10.2579 2.01658 10.1791 2.25432 10.3195L7.49996 13.4192L12.7456 10.3195C12.9833 10.1791 13.2899 10.2579 13.4304 10.4956C13.5709 10.7334 13.4921 11.04 13.2543 11.1805L7.75432 14.4305C7.59742 14.5232 7.4025 14.5232 7.24559 14.4305L1.74559 11.1805C1.50785 11.04 1.42901 10.7334 1.56949 10.4956Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2K = [\n \"color\"\n];\nvar LayoutIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2K);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9 2H6V13H9V2ZM10 2V13H12.5C12.7761 13 13 12.7761 13 12.5V2.5C13 2.22386 12.7761 2 12.5 2H10ZM2.5 2H5V13H2.5C2.22386 13 2 12.7761 2 12.5V2.5C2 2.22386 2.22386 2 2.5 2ZM2.5 1C1.67157 1 1 1.67157 1 2.5V12.5C1 13.3284 1.67157 14 2.5 14H12.5C13.3284 14 14 13.3284 14 12.5V2.5C14 1.67157 13.3284 1 12.5 1H2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2L = [\n \"color\"\n];\nvar LetterCaseCapitalizeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2L);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.68979 2.75C3.89667 2.74979 4.08232 2.87701 4.15679 3.07003L7.36662 11.39C7.46602 11.6477 7.33774 11.9371 7.0801 12.0365C6.82247 12.1359 6.53304 12.0076 6.43365 11.75L5.3825 9.02537H2.01133L0.966992 11.749C0.868128 12.0068 0.578964 12.1357 0.321126 12.0369C0.0632878 11.938 -0.0655864 11.6488 0.0332774 11.391L3.22344 3.07099C3.29751 2.87782 3.4829 2.75021 3.68979 2.75ZM3.69174 4.64284L5.05458 8.17537H2.33724L3.69174 4.64284ZM10.8989 5.20703C9.25818 5.20703 8.00915 6.68569 8.00915 8.60972C8.00915 10.6337 9.35818 12.0124 10.8989 12.0124C11.7214 12.0124 12.5744 11.6692 13.1543 11.0219V11.53C13.1543 11.7785 13.3557 11.98 13.6043 11.98C13.8528 11.98 14.0543 11.7785 14.0543 11.53V5.72C14.0543 5.47147 13.8528 5.27 13.6043 5.27C13.3557 5.27 13.1543 5.47147 13.1543 5.72V6.22317C12.6054 5.60095 11.7924 5.20703 10.8989 5.20703ZM13.1543 9.79823V7.30195C12.7639 6.58101 11.9414 6.05757 11.0868 6.05757C10.1088 6.05757 9.03503 6.96581 9.03503 8.60955C9.03503 10.1533 10.0088 11.1615 11.0868 11.1615C11.9701 11.1615 12.7719 10.4952 13.1543 9.79823Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2M = [\n \"color\"\n];\nvar LetterCaseLowercaseIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2M);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.69899 5.20703C2.05823 5.20703 0.809204 6.68569 0.809204 8.60972C0.809204 10.6337 2.15823 12.0124 3.69899 12.0124C4.52126 12.0124 5.37402 11.6693 5.9539 11.0223V11.53C5.9539 11.7785 6.15537 11.98 6.4039 11.98C6.65243 11.98 6.8539 11.7785 6.8539 11.53V5.72001C6.8539 5.47149 6.65243 5.27001 6.4039 5.27001C6.15537 5.27001 5.9539 5.47149 5.9539 5.72001V6.22269C5.40506 5.60075 4.59218 5.20703 3.69899 5.20703ZM5.9539 9.799V7.30117C5.56339 6.58064 4.74118 6.05757 3.8868 6.05757C2.9089 6.05757 1.83508 6.96581 1.83508 8.60955C1.83508 10.1533 2.80889 11.1615 3.8868 11.1615C4.76984 11.1615 5.57141 10.4957 5.9539 9.799ZM10.799 5.20703C9.15823 5.20703 7.9092 6.68569 7.9092 8.60972C7.9092 10.6337 9.25823 12.0124 10.799 12.0124C11.6215 12.0124 12.4744 11.6692 13.0543 11.0218V11.53C13.0543 11.7785 13.2558 11.98 13.5043 11.98C13.7529 11.98 13.9543 11.7785 13.9543 11.53V5.72C13.9543 5.47147 13.7529 5.27 13.5043 5.27C13.2558 5.27 13.0543 5.47147 13.0543 5.72V6.22318C12.5055 5.60095 11.6924 5.20703 10.799 5.20703ZM13.0543 9.79822V7.30196C12.664 6.58102 11.8415 6.05757 10.9868 6.05757C10.0089 6.05757 8.93508 6.96581 8.93508 8.60955C8.93508 10.1533 9.90889 11.1615 10.9868 11.1615C11.8702 11.1615 12.672 10.4952 13.0543 9.79822Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2N = [\n \"color\"\n];\nvar LetterCaseToggleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2N);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.2895 2.75C11.4964 2.74979 11.6821 2.87701 11.7565 3.07003L14.9664 11.39C15.0657 11.6477 14.9375 11.9371 14.6798 12.0365C14.4222 12.1359 14.1328 12.0076 14.0334 11.75L12.9822 9.02537H9.61106L8.56672 11.749C8.46786 12.0068 8.1787 12.1357 7.92086 12.0369C7.66302 11.938 7.53415 11.6488 7.63301 11.391L10.8232 3.07099C10.8972 2.87782 11.0826 2.75021 11.2895 2.75ZM11.2915 4.64284L12.6543 8.17537H9.93698L11.2915 4.64284ZM2.89895 5.20703C1.25818 5.20703 0.00915527 6.68569 0.00915527 8.60972C0.00915527 10.6337 1.35818 12.0124 2.89895 12.0124C3.72141 12.0124 4.57438 11.6692 5.15427 11.0219V11.53C5.15427 11.7785 5.35574 11.98 5.60427 11.98C5.8528 11.98 6.05427 11.7785 6.05427 11.53V5.72C6.05427 5.47147 5.8528 5.27 5.60427 5.27C5.35574 5.27 5.15427 5.47147 5.15427 5.72V6.22317C4.60543 5.60095 3.79236 5.20703 2.89895 5.20703ZM5.15427 9.79823V7.30195C4.76393 6.58101 3.94144 6.05757 3.08675 6.05757C2.10885 6.05757 1.03503 6.96581 1.03503 8.60955C1.03503 10.1533 2.00885 11.1615 3.08675 11.1615C3.97011 11.1615 4.77195 10.4952 5.15427 9.79823Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2O = [\n \"color\"\n];\nvar LetterCaseUppercaseIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2O);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.6255 2.75C3.83478 2.75 4.02192 2.88034 4.09448 3.07664L7.16985 11.3962C7.2656 11.6552 7.13324 11.9428 6.87423 12.0386C6.61522 12.1343 6.32763 12.002 6.23188 11.7429L5.22387 9.01603H2.02712L1.01911 11.7429C0.923362 12.002 0.635774 12.1343 0.376762 12.0386C0.117749 11.9428 -0.0146052 11.6552 0.0811401 11.3962L3.15651 3.07664C3.22908 2.88034 3.41621 2.75 3.6255 2.75ZM3.6255 4.69207L4.90966 8.16603H2.34133L3.6255 4.69207ZM11.3719 2.75C11.5811 2.75 11.7683 2.88034 11.8408 3.07664L14.9162 11.3962C15.012 11.6552 14.8796 11.9428 14.6206 12.0386C14.3616 12.1343 14.074 12.002 13.9782 11.7429L12.9702 9.01603H9.77348L8.76547 11.7429C8.66972 12.002 8.38213 12.1343 8.12312 12.0386C7.86411 11.9428 7.73175 11.6552 7.8275 11.3962L10.9029 3.07664C10.9754 2.88034 11.1626 2.75 11.3719 2.75ZM11.3719 4.69207L12.656 8.16603H10.0877L11.3719 4.69207Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2P = [\n \"color\"\n];\nvar LetterSpacingIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2P);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.55293 0.999969C4.75295 0.999969 4.93372 1.11917 5.0125 1.30301L8.01106 8.29982C8.11984 8.55363 8.00226 8.84757 7.74844 8.95635C7.49463 9.06512 7.20069 8.94754 7.09191 8.69373L6.11613 6.41685H2.98973L2.01395 8.69373C1.90517 8.94754 1.61123 9.06512 1.35742 8.95635C1.1036 8.84757 0.986023 8.55363 1.0948 8.29982L4.09336 1.30301C4.17214 1.11917 4.35291 0.999969 4.55293 0.999969ZM4.55293 2.76929L5.75186 5.56685H3.354L4.55293 2.76929ZM11.0562 9.00214C11.2617 9.00214 11.4463 8.87633 11.5215 8.68502L14.2733 1.68299C14.3743 1.42598 14.2478 1.13575 13.9908 1.03475C13.7338 0.933747 13.4436 1.06021 13.3426 1.31722L11.0562 7.13514L8.76973 1.31722C8.66873 1.06021 8.3785 0.933747 8.1215 1.03475C7.86449 1.13575 7.73802 1.42598 7.83902 1.68299L10.5908 8.68502C10.666 8.87633 10.8506 9.00214 11.0562 9.00214ZM14.9537 12.4999C14.9537 12.606 14.9115 12.7077 14.8365 12.7828L12.8365 14.7828C12.6803 14.939 12.4271 14.939 12.2708 14.7828C12.1146 14.6265 12.1146 14.3733 12.2708 14.2171L13.588 12.8999H1.51937L2.83653 14.2171C2.99274 14.3733 2.99274 14.6265 2.83653 14.7828C2.68032 14.939 2.42705 14.939 2.27084 14.7828L0.270843 12.7828C0.195828 12.7077 0.153687 12.606 0.153687 12.4999C0.153687 12.3938 0.195828 12.2921 0.270843 12.2171L2.27084 10.2171C2.42705 10.0609 2.68032 10.0609 2.83653 10.2171C2.99274 10.3733 2.99274 10.6265 2.83653 10.7828L1.51937 12.0999L13.588 12.0999L12.2708 10.7828C12.1146 10.6265 12.1146 10.3733 12.2708 10.2171C12.4271 10.0609 12.6803 10.0609 12.8365 10.2171L14.8365 12.2171C14.9115 12.2921 14.9537 12.3938 14.9537 12.4999Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2Q = [\n \"color\"\n];\nvar LightningBoltIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2Q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.69667 0.0403541C8.90859 0.131038 9.03106 0.354857 8.99316 0.582235L8.0902 6.00001H12.5C12.6893 6.00001 12.8625 6.10701 12.9472 6.27641C13.0319 6.4458 13.0136 6.6485 12.8999 6.80001L6.89997 14.8C6.76167 14.9844 6.51521 15.0503 6.30328 14.9597C6.09135 14.869 5.96888 14.6452 6.00678 14.4178L6.90974 9H2.49999C2.31061 9 2.13748 8.893 2.05278 8.72361C1.96809 8.55422 1.98636 8.35151 2.09999 8.2L8.09997 0.200038C8.23828 0.0156255 8.48474 -0.0503301 8.69667 0.0403541ZM3.49999 8.00001H7.49997C7.64695 8.00001 7.78648 8.06467 7.88148 8.17682C7.97648 8.28896 8.01733 8.43723 7.99317 8.5822L7.33027 12.5596L11.5 7.00001H7.49997C7.353 7.00001 7.21347 6.93534 7.11846 6.8232C7.02346 6.71105 6.98261 6.56279 7.00678 6.41781L7.66968 2.44042L3.49999 8.00001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2R = [\n \"color\"\n];\nvar LineHeightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2R);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.78233 2.21713C3.70732 2.14212 3.60557 2.09998 3.49949 2.09998C3.3934 2.09998 3.29166 2.14212 3.21664 2.21713L1.21664 4.21713C1.06044 4.37334 1.06044 4.62661 1.21664 4.78282C1.37285 4.93903 1.62612 4.93903 1.78233 4.78282L3.09949 3.46566L3.09949 11.5343L1.78233 10.2171C1.62612 10.0609 1.37285 10.0609 1.21664 10.2171C1.06043 10.3733 1.06043 10.6266 1.21664 10.7828L3.21664 12.7828C3.29166 12.8578 3.3934 12.9 3.49949 12.9C3.60557 12.9 3.70731 12.8578 3.78233 12.7828L5.78233 10.7828C5.93854 10.6266 5.93854 10.3733 5.78233 10.2171C5.62612 10.0609 5.37285 10.0609 5.21664 10.2171L3.89949 11.5343L3.89949 3.46566L5.21664 4.78282C5.37285 4.93903 5.62612 4.93903 5.78233 4.78282C5.93854 4.62661 5.93854 4.37334 5.78233 4.21713L3.78233 2.21713ZM8.49998 3.99997C8.22383 3.99997 7.99998 4.22382 7.99998 4.49997C7.99998 4.77611 8.22383 4.99997 8.49998 4.99997H14.5C14.7761 4.99997 15 4.77611 15 4.49997C15 4.22382 14.7761 3.99997 14.5 3.99997H8.49998ZM7.99998 7.49997C7.99998 7.22382 8.22383 6.99997 8.49998 6.99997H14.5C14.7761 6.99997 15 7.22382 15 7.49997C15 7.77611 14.7761 7.99997 14.5 7.99997H8.49998C8.22383 7.99997 7.99998 7.77611 7.99998 7.49997ZM8.49998 9.99997C8.22383 9.99997 7.99998 10.2238 7.99998 10.5C7.99998 10.7761 8.22383 11 8.49998 11H14.5C14.7761 11 15 10.7761 15 10.5C15 10.2238 14.7761 9.99997 14.5 9.99997H8.49998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2S = [\n \"color\"\n];\nvar Link1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2S);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.62471 4.00001L4.56402 4.00001C4.04134 3.99993 3.70687 3.99988 3.4182 4.055C2.2379 4.28039 1.29846 5.17053 1.05815 6.33035C0.999538 6.61321 0.999604 6.93998 0.999703 7.43689L0.999711 7.50001L0.999703 7.56313C0.999604 8.06004 0.999538 8.38681 1.05815 8.66967C1.29846 9.8295 2.2379 10.7196 3.4182 10.945C3.70688 11.0001 4.04135 11.0001 4.56403 11L4.62471 11H5.49971C5.77585 11 5.99971 10.7762 5.99971 10.5C5.99971 10.2239 5.77585 10 5.49971 10H4.62471C4.02084 10 3.78907 9.99777 3.60577 9.96277C2.80262 9.8094 2.19157 9.21108 2.03735 8.46678C2.00233 8.29778 1.99971 8.08251 1.99971 7.50001C1.99971 6.91752 2.00233 6.70225 2.03735 6.53324C2.19157 5.78895 2.80262 5.19062 3.60577 5.03725C3.78907 5.00225 4.02084 5.00001 4.62471 5.00001H5.49971C5.77585 5.00001 5.99971 4.77615 5.99971 4.50001C5.99971 4.22387 5.77585 4.00001 5.49971 4.00001H4.62471ZM10.3747 5.00001C10.9786 5.00001 11.2104 5.00225 11.3937 5.03725C12.1968 5.19062 12.8079 5.78895 12.9621 6.53324C12.9971 6.70225 12.9997 6.91752 12.9997 7.50001C12.9997 8.08251 12.9971 8.29778 12.9621 8.46678C12.8079 9.21108 12.1968 9.8094 11.3937 9.96277C11.2104 9.99777 10.9786 10 10.3747 10H9.49971C9.22357 10 8.99971 10.2239 8.99971 10.5C8.99971 10.7762 9.22357 11 9.49971 11H10.3747L10.4354 11C10.9581 11.0001 11.2925 11.0001 11.5812 10.945C12.7615 10.7196 13.701 9.8295 13.9413 8.66967C13.9999 8.38681 13.9998 8.06005 13.9997 7.56314L13.9997 7.50001L13.9997 7.43688C13.9998 6.93998 13.9999 6.61321 13.9413 6.33035C13.701 5.17053 12.7615 4.28039 11.5812 4.055C11.2925 3.99988 10.9581 3.99993 10.4354 4.00001L10.3747 4.00001H9.49971C9.22357 4.00001 8.99971 4.22387 8.99971 4.50001C8.99971 4.77615 9.22357 5.00001 9.49971 5.00001H10.3747ZM5.00038 7C4.72424 7 4.50038 7.22386 4.50038 7.5C4.50038 7.77614 4.72424 8 5.00038 8H10.0004C10.2765 8 10.5004 7.77614 10.5004 7.5C10.5004 7.22386 10.2765 7 10.0004 7H5.00038Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2T = [\n \"color\"\n];\nvar Link2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2T);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.51194 3.00541C9.18829 2.54594 10.0435 2.53694 10.6788 2.95419C10.8231 3.04893 10.9771 3.1993 11.389 3.61119C11.8009 4.02307 11.9513 4.17714 12.046 4.32141C12.4633 4.95675 12.4543 5.81192 11.9948 6.48827C11.8899 6.64264 11.7276 6.80811 11.3006 7.23511L10.6819 7.85383C10.4867 8.04909 10.4867 8.36567 10.6819 8.56093C10.8772 8.7562 11.1938 8.7562 11.389 8.56093L12.0077 7.94221L12.0507 7.89929C12.4203 7.52976 12.6568 7.2933 12.822 7.0502C13.4972 6.05623 13.5321 4.76252 12.8819 3.77248C12.7233 3.53102 12.4922 3.30001 12.1408 2.94871L12.0961 2.90408L12.0515 2.85942C11.7002 2.508 11.4692 2.27689 11.2277 2.11832C10.2377 1.46813 8.94398 1.50299 7.95001 2.17822C7.70691 2.34336 7.47044 2.57991 7.1009 2.94955L7.058 2.99247L6.43928 3.61119C6.24401 3.80645 6.24401 4.12303 6.43928 4.31829C6.63454 4.51355 6.95112 4.51355 7.14638 4.31829L7.7651 3.69957C8.1921 3.27257 8.35757 3.11027 8.51194 3.00541ZM4.31796 7.14672C4.51322 6.95146 4.51322 6.63487 4.31796 6.43961C4.12269 6.24435 3.80611 6.24435 3.61085 6.43961L2.99213 7.05833L2.94922 7.10124C2.57957 7.47077 2.34303 7.70724 2.17788 7.95035C1.50265 8.94432 1.4678 10.238 2.11799 11.2281C2.27656 11.4695 2.50766 11.7005 2.8591 12.0518L2.90374 12.0965L2.94837 12.1411C3.29967 12.4925 3.53068 12.7237 3.77214 12.8822C4.76219 13.5324 6.05589 13.4976 7.04986 12.8223C7.29296 12.6572 7.52943 12.4206 7.89896 12.051L7.89897 12.051L7.94188 12.0081L8.5606 11.3894C8.75586 11.1941 8.75586 10.8775 8.5606 10.6823C8.36533 10.487 8.04875 10.487 7.85349 10.6823L7.23477 11.301C6.80777 11.728 6.6423 11.8903 6.48794 11.9951C5.81158 12.4546 4.95642 12.4636 4.32107 12.0464C4.17681 11.9516 4.02274 11.8012 3.61085 11.3894C3.19896 10.9775 3.0486 10.8234 2.95385 10.6791C2.53661 10.0438 2.54561 9.18863 3.00507 8.51227C3.10993 8.35791 3.27224 8.19244 3.69924 7.76544L4.31796 7.14672ZM9.62172 6.08558C9.81698 5.89032 9.81698 5.57373 9.62172 5.37847C9.42646 5.18321 9.10988 5.18321 8.91461 5.37847L5.37908 8.91401C5.18382 9.10927 5.18382 9.42585 5.37908 9.62111C5.57434 9.81637 5.89092 9.81637 6.08619 9.62111L9.62172 6.08558Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2U = [\n \"color\"\n];\nvar LinkBreak1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2U);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.3536 2.35355C13.5488 2.15829 13.5488 1.84171 13.3536 1.64645C13.1583 1.45118 12.8417 1.45118 12.6464 1.64645L1.64645 12.6464C1.45118 12.8417 1.45118 13.1583 1.64645 13.3536C1.84171 13.5488 2.15829 13.5488 2.35355 13.3536L13.3536 2.35355ZM2.03735 8.46678C2.17398 9.12619 2.66918 9.67103 3.33886 9.89338L2.57833 10.6539C1.80843 10.2534 1.23784 9.53693 1.05815 8.66967C0.999538 8.38681 0.999604 8.06004 0.999703 7.56313L0.999711 7.50001L0.999703 7.43689C0.999604 6.93998 0.999538 6.61321 1.05815 6.33035C1.29846 5.17053 2.2379 4.28039 3.4182 4.055C3.70687 3.99988 4.04134 3.99993 4.56402 4.00001L4.62471 4.00001H5.49971C5.77585 4.00001 5.99971 4.22387 5.99971 4.50001C5.99971 4.77615 5.77585 5.00001 5.49971 5.00001H4.62471C4.02084 5.00001 3.78907 5.00225 3.60577 5.03725C2.80262 5.19062 2.19157 5.78895 2.03735 6.53324C2.00233 6.70225 1.99971 6.91752 1.99971 7.50001C1.99971 8.08251 2.00233 8.29778 2.03735 8.46678ZM12.9621 6.53324C12.8255 5.87397 12.3304 5.32922 11.661 5.10679L12.4215 4.34631C13.1912 4.74686 13.7616 5.46323 13.9413 6.33035C13.9999 6.61321 13.9998 6.93998 13.9997 7.43688L13.9997 7.50001L13.9997 7.56314C13.9998 8.06005 13.9999 8.38681 13.9413 8.66967C13.701 9.8295 12.7615 10.7196 11.5812 10.945C11.2925 11.0001 10.9581 11.0001 10.4354 11L10.3747 11H9.49971C9.22357 11 8.99971 10.7762 8.99971 10.5C8.99971 10.2239 9.22357 10 9.49971 10H10.3747C10.9786 10 11.2104 9.99777 11.3937 9.96277C12.1968 9.8094 12.8079 9.21108 12.9621 8.46678C12.9971 8.29778 12.9997 8.08251 12.9997 7.50001C12.9997 6.91752 12.9971 6.70225 12.9621 6.53324Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2V = [\n \"color\"\n];\nvar LinkBreak2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2V);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.50021 0C4.77635 0 5.0002 0.223853 5.0002 0.49999V2.49995C5.0002 2.77609 4.77635 2.99994 4.50021 2.99994C4.22408 2.99994 4.00022 2.77609 4.00022 2.49995V0.49999C4.00022 0.223853 4.22408 0 4.50021 0ZM0.646451 0.64647C0.84171 0.451212 1.15829 0.451212 1.35354 0.64647L2.85351 2.14644C3.04877 2.3417 3.04877 2.65827 2.85351 2.85353C2.65826 3.04879 2.34168 3.04879 2.14642 2.85353L0.646452 1.35356C0.451193 1.1583 0.451193 0.841728 0.646451 0.64647ZM0.00030517 4.49991C0.00030517 4.22377 0.224158 3.99992 0.500295 3.99992H2.50025C2.77639 3.99992 3.00024 4.22377 3.00024 4.49991C3.00024 4.77605 2.77639 4.9999 2.50025 4.9999H0.500295C0.224158 4.9999 0.00030517 4.77605 0.00030517 4.49991ZM12.0001 10.4998C12.0001 10.2236 12.2239 9.9998 12.5001 9.9998H14.5C14.7761 9.9998 15 10.2236 15 10.4998C15 10.7759 14.7761 10.9998 14.5 10.9998H12.5001C12.2239 10.9998 12.0001 10.7759 12.0001 10.4998ZM10.5001 11.9998C10.7762 11.9998 11.0001 12.2236 11.0001 12.4997V14.4997C11.0001 14.7758 10.7762 14.9997 10.5001 14.9997C10.224 14.9997 10.0001 14.7758 10.0001 14.4997V12.4997C10.0001 12.2236 10.224 11.9998 10.5001 11.9998ZM12.1462 12.1462C12.3415 11.951 12.658 11.951 12.8533 12.1462L14.3533 13.6462C14.5485 13.8415 14.5485 14.158 14.3533 14.3533C14.158 14.5485 13.8414 14.5485 13.6462 14.3533L12.1462 12.8533C11.951 12.6581 11.951 12.3415 12.1462 12.1462ZM7.76478 3.69938C8.19177 3.27238 8.35724 3.11008 8.5116 3.00522C9.18794 2.54577 10.0431 2.53677 10.6784 2.95401C10.8227 3.04875 10.9767 3.19911 11.3886 3.61099C11.8005 4.02287 11.9509 4.17694 12.0456 4.3212C12.4628 4.95653 12.4539 5.81168 11.9944 6.48802C11.8895 6.64238 11.7272 6.80785 11.3002 7.23484L10.6815 7.85354C10.4863 8.0488 10.4863 8.36538 10.6815 8.56064C10.8768 8.75589 11.1934 8.75589 11.3886 8.56064L12.0073 7.94193L12.0502 7.89903C12.4199 7.5295 12.6564 7.29303 12.8216 7.04993C13.4968 6.05598 13.5316 4.7623 12.8815 3.77228C12.7229 3.53083 12.4918 3.29982 12.1404 2.94853L12.0957 2.9039L12.0511 2.85925C11.6998 2.50782 11.4688 2.27672 11.2273 2.11816C10.2373 1.46798 8.94364 1.50284 7.94968 2.17805C7.70659 2.34319 7.47012 2.57973 7.1006 2.94936L7.1006 2.94937L7.05769 2.99228L6.43898 3.61099C6.24372 3.80625 6.24372 4.12282 6.43898 4.31808C6.63424 4.51334 6.95081 4.51334 7.14607 4.31808L7.76478 3.69938ZM2.99191 7.05807L2.94899 7.10097C2.57935 7.4705 2.34282 7.70697 2.17767 7.95006C1.50246 8.94401 1.4676 10.2377 2.11778 11.2277C2.27634 11.4692 2.50744 11.7002 2.85886 12.0515L2.85888 12.0515L2.90352 12.0961L2.94815 12.1407L2.94815 12.1407L2.94817 12.1408C3.29945 12.4922 3.53045 12.7233 3.7719 12.8818C4.76193 13.532 6.0556 13.4972 7.04956 12.8219C7.29265 12.6568 7.52912 12.4203 7.89865 12.0506L7.94155 12.0077L8.56026 11.389C8.75552 11.1937 8.75552 10.8772 8.56026 10.6819C8.365 10.4867 8.04842 10.4867 7.85317 10.6819L7.23446 11.3006C6.80747 11.7276 6.642 11.8899 6.48764 11.9948C5.8113 12.4542 4.95615 12.4632 4.32082 12.046C4.17656 11.9512 4.02249 11.8009 3.61061 11.389C3.19873 10.9771 3.04837 10.8231 2.95363 10.6788C2.53639 10.0435 2.54539 9.18832 3.00484 8.51198C3.10971 8.35761 3.27201 8.19215 3.699 7.76516L4.3177 7.14645C4.51296 6.95119 4.51296 6.63462 4.3177 6.43936C4.12245 6.2441 3.80587 6.2441 3.61061 6.43936L2.99191 7.05807Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2W = [\n \"color\"\n];\nvar LinkNone1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2W);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.56427 3.99988C4.58422 3.99989 4.60445 3.99989 4.62496 3.99989H5.49996C5.7761 3.99989 5.99996 4.22375 5.99996 4.49989C5.99996 4.77603 5.7761 4.99989 5.49996 4.99989H4.62496C4.02108 4.99989 3.78932 5.00213 3.60601 5.03713C2.80287 5.1905 2.19181 5.78883 2.03759 6.53312C2.00257 6.70212 1.99996 6.91739 1.99996 7.49989C1.99996 8.08239 2.00257 8.29766 2.03759 8.46666C2.19181 9.21095 2.80287 9.80928 3.60601 9.96265C3.78932 9.99765 4.02108 9.99989 4.62496 9.99989H5.49996C5.7761 9.99989 5.99996 10.2237 5.99996 10.4999C5.99996 10.776 5.7761 10.9999 5.49996 10.9999H4.62496C4.60445 10.9999 4.58422 10.9999 4.56427 10.9999C4.04159 11 3.70712 11 3.41845 10.9449C2.23814 10.7195 1.29871 9.82937 1.05839 8.66955C0.999782 8.38669 0.999848 8.05992 0.999947 7.56301C0.999951 7.54227 0.999955 7.52123 0.999955 7.49989C0.999955 7.47855 0.999951 7.45751 0.999947 7.43677C0.999848 6.93986 0.999782 6.61309 1.05839 6.33023C1.29871 5.17041 2.23814 4.28027 3.41845 4.05488C3.70712 3.99976 4.04159 3.99981 4.56427 3.99988ZM11.3939 5.03713C11.2106 5.00213 10.9788 4.99989 10.375 4.99989H9.49996C9.22381 4.99989 8.99996 4.77603 8.99996 4.49989C8.99996 4.22375 9.22381 3.99989 9.49996 3.99989H10.375C10.3955 3.99989 10.4157 3.99989 10.4356 3.99988C10.9583 3.99981 11.2928 3.99976 11.5815 4.05488C12.7618 4.28027 13.7012 5.17041 13.9415 6.33023C14.0001 6.61309 14.0001 6.93985 14 7.43676C14 7.4575 14 7.47854 14 7.49989C14 7.52124 14 7.54228 14 7.56302C14.0001 8.05992 14.0001 8.38669 13.9415 8.66955C13.7012 9.82937 12.7618 10.7195 11.5815 10.9449C11.2928 11 10.9583 11 10.4356 10.9999C10.4157 10.9999 10.3955 10.9999 10.375 10.9999H9.49996C9.22381 10.9999 8.99996 10.776 8.99996 10.4999C8.99996 10.2237 9.22381 9.99989 9.49996 9.99989H10.375C10.9788 9.99989 11.2106 9.99765 11.3939 9.96265C12.197 9.80928 12.8081 9.21095 12.9623 8.46666C12.9973 8.29766 13 8.08239 13 7.49989C13 6.91739 12.9973 6.70212 12.9623 6.53312C12.8081 5.78883 12.197 5.1905 11.3939 5.03713Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2X = [\n \"color\"\n];\nvar LinkNone2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2X);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10.6788 2.95419C10.0435 2.53694 9.18829 2.54594 8.51194 3.00541C8.35757 3.11027 8.1921 3.27257 7.7651 3.69957L7.14638 4.31829C6.95112 4.51355 6.63454 4.51355 6.43928 4.31829C6.24401 4.12303 6.24401 3.80645 6.43928 3.61119L7.058 2.99247C7.0725 2.97797 7.08679 2.96366 7.1009 2.94955C7.47044 2.57991 7.70691 2.34336 7.95001 2.17822C8.94398 1.50299 10.2377 1.46813 11.2277 2.11832C11.4692 2.27689 11.7002 2.508 12.0515 2.85942C12.0662 2.8741 12.081 2.88898 12.0961 2.90408C12.1112 2.91917 12.1261 2.93405 12.1408 2.94871C12.4922 3.30001 12.7233 3.53102 12.8819 3.77248C13.5321 4.76252 13.4972 6.05623 12.822 7.0502C12.6568 7.2933 12.4203 7.52976 12.0507 7.89929C12.0366 7.9134 12.0222 7.92771 12.0077 7.94221L11.389 8.56093C11.1938 8.7562 10.8772 8.7562 10.6819 8.56093C10.4867 8.36567 10.4867 8.04909 10.6819 7.85383L11.3006 7.23511C11.7276 6.80811 11.8899 6.64264 11.9948 6.48827C12.4543 5.81192 12.4633 4.95675 12.046 4.32141C11.9513 4.17714 11.8009 4.02307 11.389 3.61119C10.9771 3.1993 10.8231 3.04893 10.6788 2.95419ZM4.31796 6.43961C4.51322 6.63487 4.51322 6.95146 4.31796 7.14672L3.69924 7.76544C3.27224 8.19244 3.10993 8.35791 3.00507 8.51227C2.54561 9.18863 2.53661 10.0438 2.95385 10.6791C3.0486 10.8234 3.19896 10.9775 3.61085 11.3894C4.02274 11.8012 4.17681 11.9516 4.32107 12.0464C4.95642 12.4636 5.81158 12.4546 6.48794 11.9951C6.6423 11.8903 6.80777 11.728 7.23477 11.301L7.85349 10.6823C8.04875 10.487 8.36533 10.487 8.5606 10.6823C8.75586 10.8775 8.75586 11.1941 8.5606 11.3894L7.94188 12.0081C7.92738 12.0226 7.91307 12.0369 7.89897 12.051C7.52943 12.4206 7.29296 12.6572 7.04986 12.8223C6.05589 13.4976 4.76219 13.5324 3.77214 12.8822C3.53068 12.7237 3.29967 12.4925 2.94837 12.1411C2.93371 12.1264 2.91883 12.1116 2.90374 12.0965C2.88865 12.0814 2.87377 12.0665 2.8591 12.0518C2.50766 11.7005 2.27656 11.4695 2.11799 11.2281C1.4678 10.238 1.50265 8.94432 2.17788 7.95035C2.34303 7.70724 2.57957 7.47077 2.94922 7.10124C2.96333 7.08713 2.97763 7.07283 2.99213 7.05833L3.61085 6.43961C3.80611 6.24435 4.12269 6.24435 4.31796 6.43961Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2Y = [\n \"color\"\n];\nvar LinkedInLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2Y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 1C1.44772 1 1 1.44772 1 2V13C1 13.5523 1.44772 14 2 14H13C13.5523 14 14 13.5523 14 13V2C14 1.44772 13.5523 1 13 1H2ZM3.05 6H4.95V12H3.05V6ZM5.075 4.005C5.075 4.59871 4.59371 5.08 4 5.08C3.4063 5.08 2.925 4.59871 2.925 4.005C2.925 3.41129 3.4063 2.93 4 2.93C4.59371 2.93 5.075 3.41129 5.075 4.005ZM12 8.35713C12 6.55208 10.8334 5.85033 9.67449 5.85033C9.29502 5.83163 8.91721 5.91119 8.57874 6.08107C8.32172 6.21007 8.05265 6.50523 7.84516 7.01853H7.79179V6.00044H6V12.0047H7.90616V8.8112C7.8786 8.48413 7.98327 8.06142 8.19741 7.80987C8.41156 7.55832 8.71789 7.49825 8.95015 7.46774H9.02258C9.62874 7.46774 10.0786 7.84301 10.0786 8.78868V12.0047H11.9847L12 8.35713Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2Z = [\n \"color\"\n];\nvar ListBulletIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2Z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.5 5.25C1.91421 5.25 2.25 4.91421 2.25 4.5C2.25 4.08579 1.91421 3.75 1.5 3.75C1.08579 3.75 0.75 4.08579 0.75 4.5C0.75 4.91421 1.08579 5.25 1.5 5.25ZM4 4.5C4 4.22386 4.22386 4 4.5 4H13.5C13.7761 4 14 4.22386 14 4.5C14 4.77614 13.7761 5 13.5 5H4.5C4.22386 5 4 4.77614 4 4.5ZM4.5 7C4.22386 7 4 7.22386 4 7.5C4 7.77614 4.22386 8 4.5 8H13.5C13.7761 8 14 7.77614 14 7.5C14 7.22386 13.7761 7 13.5 7H4.5ZM4.5 10C4.22386 10 4 10.2239 4 10.5C4 10.7761 4.22386 11 4.5 11H13.5C13.7761 11 14 10.7761 14 10.5C14 10.2239 13.7761 10 13.5 10H4.5ZM2.25 7.5C2.25 7.91421 1.91421 8.25 1.5 8.25C1.08579 8.25 0.75 7.91421 0.75 7.5C0.75 7.08579 1.08579 6.75 1.5 6.75C1.91421 6.75 2.25 7.08579 2.25 7.5ZM1.5 11.25C1.91421 11.25 2.25 10.9142 2.25 10.5C2.25 10.0858 1.91421 9.75 1.5 9.75C1.08579 9.75 0.75 10.0858 0.75 10.5C0.75 10.9142 1.08579 11.25 1.5 11.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2_ = [\n \"color\"\n];\nvar LockClosedIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2_);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 4.63601C5 3.76031 5.24219 3.1054 5.64323 2.67357C6.03934 2.24705 6.64582 1.9783 7.5014 1.9783C8.35745 1.9783 8.96306 2.24652 9.35823 2.67208C9.75838 3.10299 10 3.75708 10 4.63325V5.99999H5V4.63601ZM4 5.99999V4.63601C4 3.58148 4.29339 2.65754 4.91049 1.99307C5.53252 1.32329 6.42675 0.978302 7.5014 0.978302C8.57583 0.978302 9.46952 1.32233 10.091 1.99162C10.7076 2.65557 11 3.57896 11 4.63325V5.99999H12C12.5523 5.99999 13 6.44771 13 6.99999V13C13 13.5523 12.5523 14 12 14H3C2.44772 14 2 13.5523 2 13V6.99999C2 6.44771 2.44772 5.99999 3 5.99999H4ZM3 6.99999H12V13H3V6.99999Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2$ = [\n \"color\"\n];\nvar LockOpen1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2$);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.4986 0C6.3257 0 5.36107 0.38943 4.73753 1.19361C4.23745 1.83856 4 2.68242 4 3.63325H5C5 2.84313 5.19691 2.23312 5.5278 1.80636C5.91615 1.30552 6.55152 1 7.4986 1C8.35683 1 8.96336 1.26502 9.35846 1.68623C9.75793 2.11211 10 2.76044 10 3.63601V6H3C2.44772 6 2 6.44772 2 7V13C2 13.5523 2.44772 14 3 14H12C12.5523 14 13 13.5523 13 13V7C13 6.44771 12.5523 6 12 6H11V3.63601C11 2.58135 10.7065 1.66167 10.0878 1.0021C9.46477 0.337871 8.57061 0 7.4986 0ZM3 7H12V13H3V7Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$30 = [\n \"color\"\n];\nvar LockOpen2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$30);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9 3.63601C9 2.76044 9.24207 2.11211 9.64154 1.68623C10.0366 1.26502 10.6432 1 11.5014 1C12.4485 1 13.0839 1.30552 13.4722 1.80636C13.8031 2.23312 14 2.84313 14 3.63325H15C15 2.68242 14.7626 1.83856 14.2625 1.19361C13.6389 0.38943 12.6743 0 11.5014 0C10.4294 0 9.53523 0.337871 8.91218 1.0021C8.29351 1.66167 8 2.58135 8 3.63601V6H1C0.447715 6 0 6.44772 0 7V13C0 13.5523 0.447715 14 1 14H10C10.5523 14 11 13.5523 11 13V7C11 6.44772 10.5523 6 10 6H9V3.63601ZM1 7H10V13H1V7Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$31 = [\n \"color\"\n];\nvar LoopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$31);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.35355 1.85355C3.54882 1.65829 3.54882 1.34171 3.35355 1.14645C3.15829 0.951184 2.84171 0.951184 2.64645 1.14645L0.646447 3.14645C0.451184 3.34171 0.451184 3.65829 0.646447 3.85355L2.64645 5.85355C2.84171 6.04882 3.15829 6.04882 3.35355 5.85355C3.54882 5.65829 3.54882 5.34171 3.35355 5.14645L2.20711 4H9.5C11.433 4 13 5.567 13 7.5C13 7.77614 13.2239 8 13.5 8C13.7761 8 14 7.77614 14 7.5C14 5.01472 11.9853 3 9.5 3H2.20711L3.35355 1.85355ZM2 7.5C2 7.22386 1.77614 7 1.5 7C1.22386 7 1 7.22386 1 7.5C1 9.98528 3.01472 12 5.5 12H12.7929L11.6464 13.1464C11.4512 13.3417 11.4512 13.6583 11.6464 13.8536C11.8417 14.0488 12.1583 14.0488 12.3536 13.8536L14.3536 11.8536C14.5488 11.6583 14.5488 11.3417 14.3536 11.1464L12.3536 9.14645C12.1583 8.95118 11.8417 8.95118 11.6464 9.14645C11.4512 9.34171 11.4512 9.65829 11.6464 9.85355L12.7929 11H5.5C3.567 11 2 9.433 2 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$32 = [\n \"color\"\n];\nvar MagicWandIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$32);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.9 0.499976C13.9 0.279062 13.7209 0.0999756 13.5 0.0999756C13.2791 0.0999756 13.1 0.279062 13.1 0.499976V1.09998H12.5C12.2791 1.09998 12.1 1.27906 12.1 1.49998C12.1 1.72089 12.2791 1.89998 12.5 1.89998H13.1V2.49998C13.1 2.72089 13.2791 2.89998 13.5 2.89998C13.7209 2.89998 13.9 2.72089 13.9 2.49998V1.89998H14.5C14.7209 1.89998 14.9 1.72089 14.9 1.49998C14.9 1.27906 14.7209 1.09998 14.5 1.09998H13.9V0.499976ZM11.8536 3.14642C12.0488 3.34168 12.0488 3.65826 11.8536 3.85353L10.8536 4.85353C10.6583 5.04879 10.3417 5.04879 10.1465 4.85353C9.9512 4.65827 9.9512 4.34169 10.1465 4.14642L11.1464 3.14643C11.3417 2.95116 11.6583 2.95116 11.8536 3.14642ZM9.85357 5.14642C10.0488 5.34168 10.0488 5.65827 9.85357 5.85353L2.85355 12.8535C2.65829 13.0488 2.34171 13.0488 2.14645 12.8535C1.95118 12.6583 1.95118 12.3417 2.14645 12.1464L9.14646 5.14642C9.34172 4.95116 9.65831 4.95116 9.85357 5.14642ZM13.5 5.09998C13.7209 5.09998 13.9 5.27906 13.9 5.49998V6.09998H14.5C14.7209 6.09998 14.9 6.27906 14.9 6.49998C14.9 6.72089 14.7209 6.89998 14.5 6.89998H13.9V7.49998C13.9 7.72089 13.7209 7.89998 13.5 7.89998C13.2791 7.89998 13.1 7.72089 13.1 7.49998V6.89998H12.5C12.2791 6.89998 12.1 6.72089 12.1 6.49998C12.1 6.27906 12.2791 6.09998 12.5 6.09998H13.1V5.49998C13.1 5.27906 13.2791 5.09998 13.5 5.09998ZM8.90002 0.499976C8.90002 0.279062 8.72093 0.0999756 8.50002 0.0999756C8.2791 0.0999756 8.10002 0.279062 8.10002 0.499976V1.09998H7.50002C7.2791 1.09998 7.10002 1.27906 7.10002 1.49998C7.10002 1.72089 7.2791 1.89998 7.50002 1.89998H8.10002V2.49998C8.10002 2.72089 8.2791 2.89998 8.50002 2.89998C8.72093 2.89998 8.90002 2.72089 8.90002 2.49998V1.89998H9.50002C9.72093 1.89998 9.90002 1.72089 9.90002 1.49998C9.90002 1.27906 9.72093 1.09998 9.50002 1.09998H8.90002V0.499976Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$33 = [\n \"color\"\n];\nvar MagnifyingGlassIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$33);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10 6.5C10 8.433 8.433 10 6.5 10C4.567 10 3 8.433 3 6.5C3 4.567 4.567 3 6.5 3C8.433 3 10 4.567 10 6.5ZM9.30884 10.0159C8.53901 10.6318 7.56251 11 6.5 11C4.01472 11 2 8.98528 2 6.5C2 4.01472 4.01472 2 6.5 2C8.98528 2 11 4.01472 11 6.5C11 7.56251 10.6318 8.53901 10.0159 9.30884L12.8536 12.1464C13.0488 12.3417 13.0488 12.6583 12.8536 12.8536C12.6583 13.0488 12.3417 13.0488 12.1464 12.8536L9.30884 10.0159Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$34 = [\n \"color\"\n];\nvar MarginIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$34);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.49988 2.00012C1.77602 2.00012 1.99988 1.77626 1.99988 1.50012C1.99988 1.22398 1.77602 1.00012 1.49988 1.00012C1.22374 1.00012 0.999878 1.22398 0.999878 1.50012C0.999878 1.77626 1.22374 2.00012 1.49988 2.00012ZM4.49988 2.00012C4.77602 2.00012 4.99988 1.77626 4.99988 1.50012C4.99988 1.22398 4.77602 1.00012 4.49988 1.00012C4.22374 1.00012 3.99988 1.22398 3.99988 1.50012C3.99988 1.77626 4.22374 2.00012 4.49988 2.00012ZM7.99988 1.50012C7.99988 1.77626 7.77602 2.00012 7.49988 2.00012C7.22374 2.00012 6.99988 1.77626 6.99988 1.50012C6.99988 1.22398 7.22374 1.00012 7.49988 1.00012C7.77602 1.00012 7.99988 1.22398 7.99988 1.50012ZM10.4999 2.00012C10.776 2.00012 10.9999 1.77626 10.9999 1.50012C10.9999 1.22398 10.776 1.00012 10.4999 1.00012C10.2237 1.00012 9.99988 1.22398 9.99988 1.50012C9.99988 1.77626 10.2237 2.00012 10.4999 2.00012ZM13.9999 1.50012C13.9999 1.77626 13.776 2.00012 13.4999 2.00012C13.2237 2.00012 12.9999 1.77626 12.9999 1.50012C12.9999 1.22398 13.2237 1.00012 13.4999 1.00012C13.776 1.00012 13.9999 1.22398 13.9999 1.50012ZM1.49988 14.0001C1.77602 14.0001 1.99988 13.7763 1.99988 13.5001C1.99988 13.224 1.77602 13.0001 1.49988 13.0001C1.22374 13.0001 0.999878 13.224 0.999878 13.5001C0.999878 13.7763 1.22374 14.0001 1.49988 14.0001ZM1.99988 10.5001C1.99988 10.7763 1.77602 11.0001 1.49988 11.0001C1.22374 11.0001 0.999878 10.7763 0.999878 10.5001C0.999878 10.224 1.22374 10.0001 1.49988 10.0001C1.77602 10.0001 1.99988 10.224 1.99988 10.5001ZM1.49988 8.00012C1.77602 8.00012 1.99988 7.77626 1.99988 7.50012C1.99988 7.22398 1.77602 7.00012 1.49988 7.00012C1.22374 7.00012 0.999878 7.22398 0.999878 7.50012C0.999878 7.77626 1.22374 8.00012 1.49988 8.00012ZM1.99988 4.50012C1.99988 4.77626 1.77602 5.00012 1.49988 5.00012C1.22374 5.00012 0.999878 4.77626 0.999878 4.50012C0.999878 4.22398 1.22374 4.00012 1.49988 4.00012C1.77602 4.00012 1.99988 4.22398 1.99988 4.50012ZM13.4999 11.0001C13.776 11.0001 13.9999 10.7763 13.9999 10.5001C13.9999 10.224 13.776 10.0001 13.4999 10.0001C13.2237 10.0001 12.9999 10.224 12.9999 10.5001C12.9999 10.7763 13.2237 11.0001 13.4999 11.0001ZM13.9999 7.50012C13.9999 7.77626 13.776 8.00012 13.4999 8.00012C13.2237 8.00012 12.9999 7.77626 12.9999 7.50012C12.9999 7.22398 13.2237 7.00012 13.4999 7.00012C13.776 7.00012 13.9999 7.22398 13.9999 7.50012ZM13.4999 5.00012C13.776 5.00012 13.9999 4.77626 13.9999 4.50012C13.9999 4.22398 13.776 4.00012 13.4999 4.00012C13.2237 4.00012 12.9999 4.22398 12.9999 4.50012C12.9999 4.77626 13.2237 5.00012 13.4999 5.00012ZM4.99988 13.5001C4.99988 13.7763 4.77602 14.0001 4.49988 14.0001C4.22374 14.0001 3.99988 13.7763 3.99988 13.5001C3.99988 13.224 4.22374 13.0001 4.49988 13.0001C4.77602 13.0001 4.99988 13.224 4.99988 13.5001ZM7.49988 14.0001C7.77602 14.0001 7.99988 13.7763 7.99988 13.5001C7.99988 13.224 7.77602 13.0001 7.49988 13.0001C7.22374 13.0001 6.99988 13.224 6.99988 13.5001C6.99988 13.7763 7.22374 14.0001 7.49988 14.0001ZM10.9999 13.5001C10.9999 13.7763 10.776 14.0001 10.4999 14.0001C10.2237 14.0001 9.99988 13.7763 9.99988 13.5001C9.99988 13.224 10.2237 13.0001 10.4999 13.0001C10.776 13.0001 10.9999 13.224 10.9999 13.5001ZM13.4999 14.0001C13.776 14.0001 13.9999 13.7763 13.9999 13.5001C13.9999 13.224 13.776 13.0001 13.4999 13.0001C13.2237 13.0001 12.9999 13.224 12.9999 13.5001C12.9999 13.7763 13.2237 14.0001 13.4999 14.0001ZM3.99988 5.00012C3.99988 4.44784 4.44759 4.00012 4.99988 4.00012H9.99988C10.5522 4.00012 10.9999 4.44784 10.9999 5.00012V10.0001C10.9999 10.5524 10.5522 11.0001 9.99988 11.0001H4.99988C4.44759 11.0001 3.99988 10.5524 3.99988 10.0001V5.00012ZM4.99988 5.00012H9.99988V10.0001H4.99988V5.00012Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$35 = [\n \"color\"\n];\nvar MaskOffIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$35);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 2H14V13H1L1 2ZM0 2C0 1.44772 0.447715 1 1 1H14C14.5523 1 15 1.44772 15 2V13C15 13.5523 14.5523 14 14 14H1C0.447715 14 0 13.5523 0 13V2ZM4.875 7.5C4.875 6.05025 6.05025 4.875 7.5 4.875C8.94975 4.875 10.125 6.05025 10.125 7.5C10.125 8.94975 8.94975 10.125 7.5 10.125C6.05025 10.125 4.875 8.94975 4.875 7.5ZM7.5 3.875C5.49797 3.875 3.875 5.49797 3.875 7.5C3.875 9.50203 5.49797 11.125 7.5 11.125C9.50203 11.125 11.125 9.50203 11.125 7.5C11.125 5.49797 9.50203 3.875 7.5 3.875Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$36 = [\n \"color\"\n];\nvar MaskOnIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$36);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 1C0.447715 1 0 1.44772 0 2V13C0 13.5523 0.447715 14 1 14H14C14.5523 14 15 13.5523 15 13V2C15 1.44772 14.5523 1 14 1H1ZM7.5 10.625C9.22589 10.625 10.625 9.22589 10.625 7.5C10.625 5.77411 9.22589 4.375 7.5 4.375C5.77411 4.375 4.375 5.77411 4.375 7.5C4.375 9.22589 5.77411 10.625 7.5 10.625Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$37 = [\n \"color\"\n];\nvar MinusIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$37);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.25 7.5C2.25 7.22386 2.47386 7 2.75 7H12.25C12.5261 7 12.75 7.22386 12.75 7.5C12.75 7.77614 12.5261 8 12.25 8H2.75C2.47386 8 2.25 7.77614 2.25 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$38 = [\n \"color\"\n];\nvar MinusCircledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$38);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.876892C3.84222 0.876892 0.877075 3.84204 0.877075 7.49972C0.877075 11.1574 3.84222 14.1226 7.49991 14.1226C11.1576 14.1226 14.1227 11.1574 14.1227 7.49972C14.1227 3.84204 11.1576 0.876892 7.49991 0.876892ZM1.82707 7.49972C1.82707 4.36671 4.36689 1.82689 7.49991 1.82689C10.6329 1.82689 13.1727 4.36671 13.1727 7.49972C13.1727 10.6327 10.6329 13.1726 7.49991 13.1726C4.36689 13.1726 1.82707 10.6327 1.82707 7.49972ZM4.50003 7C4.22389 7 4.00003 7.22386 4.00003 7.5C4.00003 7.77614 4.22389 8 4.50003 8H10.5C10.7762 8 11 7.77614 11 7.5C11 7.22386 10.7762 7 10.5 7H4.50003Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$39 = [\n \"color\"\n];\nvar MixIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$39);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.14921 3.99996C2.14921 2.97778 2.97784 2.14915 4.00002 2.14915C5.02219 2.14915 5.85083 2.97778 5.85083 3.99996C5.85083 5.02213 5.02219 5.85077 4.00002 5.85077C2.97784 5.85077 2.14921 5.02213 2.14921 3.99996ZM4.00002 1.24915C2.48079 1.24915 1.24921 2.48073 1.24921 3.99996C1.24921 5.51919 2.48079 6.75077 4.00002 6.75077C5.51925 6.75077 6.75083 5.51919 6.75083 3.99996C6.75083 2.48073 5.51925 1.24915 4.00002 1.24915ZM5.82034 11.0001L2.49998 12.8369V9.16331L5.82034 11.0001ZM2.63883 8.21159C2.17228 7.9535 1.59998 8.29093 1.59998 8.82411V13.1761C1.59998 13.7093 2.17228 14.0467 2.63883 13.7886L6.57235 11.6126C7.05389 11.3462 7.05389 10.654 6.57235 10.3876L2.63883 8.21159ZM8.30001 9.00003C8.30001 8.61343 8.61341 8.30003 9.00001 8.30003H13C13.3866 8.30003 13.7 8.61343 13.7 9.00003V13C13.7 13.3866 13.3866 13.7 13 13.7H9.00001C8.61341 13.7 8.30001 13.3866 8.30001 13V9.00003ZM9.20001 9.20003V12.8H12.8V9.20003H9.20001ZM13.4432 2.19311C13.6189 2.01737 13.6189 1.73245 13.4432 1.55671C13.2675 1.38098 12.9826 1.38098 12.8068 1.55671L11 3.36353L9.19321 1.55674C9.01748 1.381 8.73255 1.381 8.55682 1.55674C8.38108 1.73247 8.38108 2.0174 8.55682 2.19313L10.3636 3.99992L8.55682 5.80671C8.38108 5.98245 8.38108 6.26737 8.55682 6.44311C8.73255 6.61885 9.01748 6.61885 9.19321 6.44311L11 4.63632L12.8068 6.44314C12.9826 6.61887 13.2675 6.61887 13.4432 6.44314C13.6189 6.2674 13.6189 5.98247 13.4432 5.80674L11.6364 3.99992L13.4432 2.19311Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3a = [\n \"color\"\n];\nvar MixerHorizontalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3a);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.5 3C4.67157 3 4 3.67157 4 4.5C4 5.32843 4.67157 6 5.5 6C6.32843 6 7 5.32843 7 4.5C7 3.67157 6.32843 3 5.5 3ZM3 5C3.01671 5 3.03323 4.99918 3.04952 4.99758C3.28022 6.1399 4.28967 7 5.5 7C6.71033 7 7.71978 6.1399 7.95048 4.99758C7.96677 4.99918 7.98329 5 8 5H13.5C13.7761 5 14 4.77614 14 4.5C14 4.22386 13.7761 4 13.5 4H8C7.98329 4 7.96677 4.00082 7.95048 4.00242C7.71978 2.86009 6.71033 2 5.5 2C4.28967 2 3.28022 2.86009 3.04952 4.00242C3.03323 4.00082 3.01671 4 3 4H1.5C1.22386 4 1 4.22386 1 4.5C1 4.77614 1.22386 5 1.5 5H3ZM11.9505 10.9976C11.7198 12.1399 10.7103 13 9.5 13C8.28967 13 7.28022 12.1399 7.04952 10.9976C7.03323 10.9992 7.01671 11 7 11H1.5C1.22386 11 1 10.7761 1 10.5C1 10.2239 1.22386 10 1.5 10H7C7.01671 10 7.03323 10.0008 7.04952 10.0024C7.28022 8.8601 8.28967 8 9.5 8C10.7103 8 11.7198 8.8601 11.9505 10.0024C11.9668 10.0008 11.9833 10 12 10H13.5C13.7761 10 14 10.2239 14 10.5C14 10.7761 13.7761 11 13.5 11H12C11.9833 11 11.9668 10.9992 11.9505 10.9976ZM8 10.5C8 9.67157 8.67157 9 9.5 9C10.3284 9 11 9.67157 11 10.5C11 11.3284 10.3284 12 9.5 12C8.67157 12 8 11.3284 8 10.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3b = [\n \"color\"\n];\nvar MixerVerticalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3b);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 1.5C5 1.22386 4.77614 1 4.5 1C4.22386 1 4 1.22386 4 1.5L4 7C4 7.01671 4.00082 7.03323 4.00242 7.04952C2.86009 7.28022 2 8.28967 2 9.5C2 10.7103 2.86009 11.7198 4.00242 11.9505C4.00082 11.9668 4 11.9833 4 12V13.5C4 13.7761 4.22386 14 4.5 14C4.77614 14 5 13.7761 5 13.5V12C5 11.9833 4.99918 11.9668 4.99758 11.9505C6.1399 11.7198 7 10.7103 7 9.5C7 8.28967 6.1399 7.28022 4.99758 7.04952C4.99918 7.03323 5 7.01671 5 7L5 1.5ZM11 1.5C11 1.22386 10.7761 1 10.5 1C10.2239 1 10 1.22386 10 1.5V3C10 3.01671 10.0008 3.03323 10.0024 3.04952C8.8601 3.28022 8 4.28967 8 5.5C8 6.71033 8.8601 7.71978 10.0024 7.95048C10.0008 7.96677 10 7.98329 10 8V13.5C10 13.7761 10.2239 14 10.5 14C10.7761 14 11 13.7761 11 13.5V8C11 7.98329 10.9992 7.96677 10.9976 7.95048C12.1399 7.71978 13 6.71033 13 5.5C13 4.28967 12.1399 3.28022 10.9976 3.04952C10.9992 3.03323 11 3.01671 11 3V1.5ZM4.5 8C3.67157 8 3 8.67157 3 9.5C3 10.3284 3.67157 11 4.5 11C5.32843 11 6 10.3284 6 9.5C6 8.67157 5.32843 8 4.5 8ZM9 5.5C9 4.67157 9.67157 4 10.5 4C11.3284 4 12 4.67157 12 5.5C12 6.32843 11.3284 7 10.5 7C9.67157 7 9 6.32843 9 5.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3c = [\n \"color\"\n];\nvar MobileIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3c);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4 2.5C4 2.22386 4.22386 2 4.5 2H10.5C10.7761 2 11 2.22386 11 2.5V12.5C11 12.7761 10.7761 13 10.5 13H4.5C4.22386 13 4 12.7761 4 12.5V2.5ZM4.5 1C3.67157 1 3 1.67157 3 2.5V12.5C3 13.3284 3.67157 14 4.5 14H10.5C11.3284 14 12 13.3284 12 12.5V2.5C12 1.67157 11.3284 1 10.5 1H4.5ZM6 11.65C5.8067 11.65 5.65 11.8067 5.65 12C5.65 12.1933 5.8067 12.35 6 12.35H9C9.1933 12.35 9.35 12.1933 9.35 12C9.35 11.8067 9.1933 11.65 9 11.65H6Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3d = [\n \"color\"\n];\nvar ModulzLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3d);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.25925 3.16667L4.37036 5.33333V1L7.25925 3.16667ZM1 8.22222L3.88889 6.05555L1 3.88889V8.22222ZM1 14L3.88889 11.8333L1 9.66666V14ZM7.74072 8.22222L10.6296 6.05555L7.74072 3.88889V8.22222ZM14 3.16667L11.1111 5.33333V1L14 3.16667ZM11.1111 11.1111L14 8.94444L11.1111 6.77777V11.1111ZM3.88889 11.1111L1 8.94444L3.88889 6.77777V11.1111ZM4.37036 6.05555L7.25925 8.22222V3.88889L4.37036 6.05555ZM3.88889 5.33333L1 3.16667L3.88889 1V5.33333ZM7.74072 3.16667L10.6296 5.33333V1L7.74072 3.16667ZM14 8.22222L11.1111 6.05555L14 3.88889V8.22222ZM11.1111 11.8333L14 14V9.66666L11.1111 11.8333Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3e = [\n \"color\"\n];\nvar MoonIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3e);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.89998 0.499976C2.89998 0.279062 2.72089 0.0999756 2.49998 0.0999756C2.27906 0.0999756 2.09998 0.279062 2.09998 0.499976V1.09998H1.49998C1.27906 1.09998 1.09998 1.27906 1.09998 1.49998C1.09998 1.72089 1.27906 1.89998 1.49998 1.89998H2.09998V2.49998C2.09998 2.72089 2.27906 2.89998 2.49998 2.89998C2.72089 2.89998 2.89998 2.72089 2.89998 2.49998V1.89998H3.49998C3.72089 1.89998 3.89998 1.72089 3.89998 1.49998C3.89998 1.27906 3.72089 1.09998 3.49998 1.09998H2.89998V0.499976ZM5.89998 3.49998C5.89998 3.27906 5.72089 3.09998 5.49998 3.09998C5.27906 3.09998 5.09998 3.27906 5.09998 3.49998V4.09998H4.49998C4.27906 4.09998 4.09998 4.27906 4.09998 4.49998C4.09998 4.72089 4.27906 4.89998 4.49998 4.89998H5.09998V5.49998C5.09998 5.72089 5.27906 5.89998 5.49998 5.89998C5.72089 5.89998 5.89998 5.72089 5.89998 5.49998V4.89998H6.49998C6.72089 4.89998 6.89998 4.72089 6.89998 4.49998C6.89998 4.27906 6.72089 4.09998 6.49998 4.09998H5.89998V3.49998ZM1.89998 6.49998C1.89998 6.27906 1.72089 6.09998 1.49998 6.09998C1.27906 6.09998 1.09998 6.27906 1.09998 6.49998V7.09998H0.499976C0.279062 7.09998 0.0999756 7.27906 0.0999756 7.49998C0.0999756 7.72089 0.279062 7.89998 0.499976 7.89998H1.09998V8.49998C1.09998 8.72089 1.27906 8.89997 1.49998 8.89997C1.72089 8.89997 1.89998 8.72089 1.89998 8.49998V7.89998H2.49998C2.72089 7.89998 2.89998 7.72089 2.89998 7.49998C2.89998 7.27906 2.72089 7.09998 2.49998 7.09998H1.89998V6.49998ZM8.54406 0.98184L8.24618 0.941586C8.03275 0.917676 7.90692 1.1655 8.02936 1.34194C8.17013 1.54479 8.29981 1.75592 8.41754 1.97445C8.91878 2.90485 9.20322 3.96932 9.20322 5.10022C9.20322 8.37201 6.82247 11.0878 3.69887 11.6097C3.45736 11.65 3.20988 11.6772 2.96008 11.6906C2.74563 11.702 2.62729 11.9535 2.77721 12.1072C2.84551 12.1773 2.91535 12.2458 2.98667 12.3128L3.05883 12.3795L3.31883 12.6045L3.50684 12.7532L3.62796 12.8433L3.81491 12.9742L3.99079 13.089C4.11175 13.1651 4.23536 13.2375 4.36157 13.3059L4.62496 13.4412L4.88553 13.5607L5.18837 13.6828L5.43169 13.7686C5.56564 13.8128 5.70149 13.8529 5.83857 13.8885C5.94262 13.9155 6.04767 13.9401 6.15405 13.9622C6.27993 13.9883 6.40713 14.0109 6.53544 14.0298L6.85241 14.0685L7.11934 14.0892C7.24637 14.0965 7.37436 14.1002 7.50322 14.1002C11.1483 14.1002 14.1032 11.1453 14.1032 7.50023C14.1032 7.25044 14.0893 7.00389 14.0623 6.76131L14.0255 6.48407C13.991 6.26083 13.9453 6.04129 13.8891 5.82642C13.8213 5.56709 13.7382 5.31398 13.6409 5.06881L13.5279 4.80132L13.4507 4.63542L13.3766 4.48666C13.2178 4.17773 13.0353 3.88295 12.8312 3.60423L12.6782 3.40352L12.4793 3.16432L12.3157 2.98361L12.1961 2.85951L12.0355 2.70246L11.8134 2.50184L11.4925 2.24191L11.2483 2.06498L10.9562 1.87446L10.6346 1.68894L10.3073 1.52378L10.1938 1.47176L9.95488 1.3706L9.67791 1.2669L9.42566 1.1846L9.10075 1.09489L8.83599 1.03486L8.54406 0.98184ZM10.4032 5.30023C10.4032 4.27588 10.2002 3.29829 9.83244 2.40604C11.7623 3.28995 13.1032 5.23862 13.1032 7.50023C13.1032 10.593 10.596 13.1002 7.50322 13.1002C6.63646 13.1002 5.81597 12.9036 5.08355 12.5522C6.5419 12.0941 7.81081 11.2082 8.74322 10.0416C8.87963 10.2284 9.10028 10.3497 9.34928 10.3497C9.76349 10.3497 10.0993 10.0139 10.0993 9.59971C10.0993 9.24256 9.84965 8.94373 9.51535 8.86816C9.57741 8.75165 9.63653 8.63334 9.6926 8.51332C9.88358 8.63163 10.1088 8.69993 10.35 8.69993C11.0403 8.69993 11.6 8.14028 11.6 7.44993C11.6 6.75976 11.0406 6.20024 10.3505 6.19993C10.3853 5.90487 10.4032 5.60464 10.4032 5.30023Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3f = [\n \"color\"\n];\nvar MoveIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3f);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.81819 0.93179C7.64245 0.756054 7.35753 0.756054 7.18179 0.93179L5.43179 2.68179C5.25605 2.85753 5.25605 3.14245 5.43179 3.31819C5.60753 3.49392 5.89245 3.49392 6.06819 3.31819L6.99999 2.38638V5.49999C6.99999 5.77613 7.22385 5.99999 7.49999 5.99999C7.77613 5.99999 7.99999 5.77613 7.99999 5.49999V2.38638L8.93179 3.31819C9.10753 3.49392 9.39245 3.49392 9.56819 3.31819C9.74392 3.14245 9.74392 2.85753 9.56819 2.68179L7.81819 0.93179ZM7.99999 9.49999C7.99999 9.22385 7.77613 8.99999 7.49999 8.99999C7.22385 8.99999 6.99999 9.22385 6.99999 9.49999V12.6136L6.06819 11.6818C5.89245 11.5061 5.60753 11.5061 5.43179 11.6818C5.25605 11.8575 5.25605 12.1424 5.43179 12.3182L7.18179 14.0682C7.35753 14.2439 7.64245 14.2439 7.81819 14.0682L9.56819 12.3182C9.74392 12.1424 9.74392 11.8575 9.56819 11.6818C9.39245 11.5061 9.10753 11.5061 8.93179 11.6818L7.99999 12.6136V9.49999ZM8.99999 7.49999C8.99999 7.22385 9.22385 6.99999 9.49999 6.99999H12.6136L11.6818 6.06819C11.5061 5.89245 11.5061 5.60753 11.6818 5.43179C11.8575 5.25605 12.1424 5.25605 12.3182 5.43179L14.0682 7.18179C14.2439 7.35753 14.2439 7.64245 14.0682 7.81819L12.3182 9.56819C12.1424 9.74392 11.8575 9.74392 11.6818 9.56819C11.5061 9.39245 11.5061 9.10753 11.6818 8.93179L12.6136 7.99999H9.49999C9.22385 7.99999 8.99999 7.77613 8.99999 7.49999ZM3.31819 6.06819L2.38638 6.99999H5.49999C5.77613 6.99999 5.99999 7.22385 5.99999 7.49999C5.99999 7.77613 5.77613 7.99999 5.49999 7.99999H2.38638L3.31819 8.93179C3.49392 9.10753 3.49392 9.39245 3.31819 9.56819C3.14245 9.74392 2.85753 9.74392 2.68179 9.56819L0.93179 7.81819C0.756054 7.64245 0.756054 7.35753 0.93179 7.18179L2.68179 5.43179C2.85753 5.25605 3.14245 5.25605 3.31819 5.43179C3.49392 5.60753 3.49392 5.89245 3.31819 6.06819Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3g = [\n \"color\"\n];\nvar NotionLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3g);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.25781 3.11684C3.67771 3.45796 3.83523 3.43193 4.62369 3.37933L12.0571 2.93299C12.2147 2.93299 12.0836 2.77571 12.0311 2.74957L10.7965 1.85711C10.56 1.67347 10.2448 1.46315 9.64083 1.51576L2.44308 2.04074C2.18059 2.06677 2.12815 2.19801 2.2327 2.30322L3.25781 3.11684ZM3.7041 4.84917V12.6704C3.7041 13.0907 3.91415 13.248 4.38693 13.222L12.5562 12.7493C13.0292 12.7233 13.0819 12.4341 13.0819 12.0927V4.32397C13.0819 3.98306 12.9508 3.79921 12.6612 3.82545L4.12422 4.32397C3.80918 4.35044 3.7041 4.50803 3.7041 4.84917ZM11.7688 5.26872C11.8212 5.50518 11.7688 5.74142 11.5319 5.76799L11.1383 5.84641V11.6205C10.7965 11.8042 10.4814 11.9092 10.2188 11.9092C9.79835 11.9092 9.69305 11.7779 9.37812 11.3844L6.80345 7.34249V11.2532L7.61816 11.437C7.61816 11.437 7.61816 11.9092 6.96086 11.9092L5.14879 12.0143C5.09615 11.9092 5.14879 11.647 5.33259 11.5944L5.80546 11.4634V6.29276L5.1489 6.24015C5.09625 6.00369 5.22739 5.66278 5.5954 5.63631L7.53935 5.50528L10.2188 9.5998V5.97765L9.53564 5.89924C9.4832 5.61018 9.69305 5.40028 9.95576 5.37425L11.7688 5.26872ZM1.83874 1.33212L9.32557 0.780787C10.245 0.701932 10.4815 0.754753 11.0594 1.17452L13.4492 2.85424C13.8436 3.14309 13.975 3.22173 13.975 3.53661V12.7493C13.975 13.3266 13.7647 13.6681 13.0293 13.7203L4.33492 14.2454C3.78291 14.2717 3.52019 14.193 3.23111 13.8253L1.47116 11.5419C1.1558 11.1216 1.02466 10.8071 1.02466 10.4392V2.25041C1.02466 1.77825 1.23504 1.38441 1.83874 1.33212Z\",\n fill: color\n }));\n});\nvar _excluded$3h = [\n \"color\"\n];\nvar OpacityIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3h);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 1.5C4.5 4.25 3 6.5 3 9C3 11.4853 5.01472 13.5 7.5 13.5C9.98528 13.5 12 11.4853 12 9C12 6.5 10.5 4.25 7.5 1.5ZM11 9C11 7.11203 9.97315 5.27195 7.5 2.87357C5.02686 5.27195 4 7.11203 4 9C4 10.933 5.567 12.5 7.5 12.5C9.433 12.5 11 10.933 11 9Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3i = [\n \"color\"\n];\nvar OpenInNewWindowIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3i);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M12 13C12.5523 13 13 12.5523 13 12V3C13 2.44771 12.5523 2 12 2H3C2.44771 2 2 2.44771 2 3V6.5C2 6.77614 2.22386 7 2.5 7C2.77614 7 3 6.77614 3 6.5V3H12V12H8.5C8.22386 12 8 12.2239 8 12.5C8 12.7761 8.22386 13 8.5 13H12ZM9 6.5C9 6.5001 9 6.50021 9 6.50031V6.50035V9.5C9 9.77614 8.77614 10 8.5 10C8.22386 10 8 9.77614 8 9.5V7.70711L2.85355 12.8536C2.65829 13.0488 2.34171 13.0488 2.14645 12.8536C1.95118 12.6583 1.95118 12.3417 2.14645 12.1464L7.29289 7H5.5C5.22386 7 5 6.77614 5 6.5C5 6.22386 5.22386 6 5.5 6H8.5C8.56779 6 8.63244 6.01349 8.69139 6.03794C8.74949 6.06198 8.80398 6.09744 8.85143 6.14433C8.94251 6.23434 8.9992 6.35909 8.99999 6.49708L8.99999 6.49738\",\n fill: color\n }));\n});\nvar _excluded$3j = [\n \"color\"\n];\nvar OverlineIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3j);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.49985 1.10001C3.27894 1.10001 3.09985 1.27909 3.09985 1.50001C3.09985 1.72092 3.27894 1.90001 3.49985 1.90001H11.4999C11.7208 1.90001 11.8999 1.72092 11.8999 1.50001C11.8999 1.27909 11.7208 1.10001 11.4999 1.10001H3.49985ZM4.99995 4.25001C4.99995 3.97387 4.77609 3.75001 4.49995 3.75001C4.22381 3.75001 3.99995 3.97387 3.99995 4.25001V9.55001C3.99995 11.483 5.56695 13.05 7.49995 13.05C9.43295 13.05 11 11.483 11 9.55001V4.25001C11 3.97387 10.7761 3.75001 10.5 3.75001C10.2238 3.75001 9.99995 3.97387 9.99995 4.25001V9.55001C9.99995 10.9307 8.88066 12.05 7.49995 12.05C6.11924 12.05 4.99995 10.9307 4.99995 9.55001V4.25001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3k = [\n \"color\"\n];\nvar PaddingIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3k);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.85714 2H12.1429C12.6162 2 13 2.38376 13 2.85714V12.1429C13 12.6162 12.6162 13 12.1429 13H2.85714C2.38376 13 2 12.6162 2 12.1429V2.85714C2 2.38376 2.38376 2 2.85714 2ZM1 2.85714C1 1.83147 1.83147 1 2.85714 1H12.1429C13.1685 1 14 1.83147 14 2.85714V12.1429C14 13.1685 13.1685 14 12.1429 14H2.85714C1.83147 14 1 13.1685 1 12.1429V2.85714ZM7.49988 5.00012C7.77602 5.00012 7.99988 4.77626 7.99988 4.50012C7.99988 4.22398 7.77602 4.00012 7.49988 4.00012C7.22374 4.00012 6.99988 4.22398 6.99988 4.50012C6.99988 4.77626 7.22374 5.00012 7.49988 5.00012ZM4.49988 11.0001C4.77602 11.0001 4.99988 10.7763 4.99988 10.5001C4.99988 10.224 4.77602 10.0001 4.49988 10.0001C4.22374 10.0001 3.99988 10.224 3.99988 10.5001C3.99988 10.7763 4.22374 11.0001 4.49988 11.0001ZM4.99988 7.50012C4.99988 7.77626 4.77602 8.00012 4.49988 8.00012C4.22374 8.00012 3.99988 7.77626 3.99988 7.50012C3.99988 7.22398 4.22374 7.00012 4.49988 7.00012C4.77602 7.00012 4.99988 7.22398 4.99988 7.50012ZM4.49988 5.00012C4.77602 5.00012 4.99988 4.77626 4.99988 4.50012C4.99988 4.22398 4.77602 4.00012 4.49988 4.00012C4.22374 4.00012 3.99988 4.22398 3.99988 4.50012C3.99988 4.77626 4.22374 5.00012 4.49988 5.00012ZM10.9999 10.5001C10.9999 10.7763 10.776 11.0001 10.4999 11.0001C10.2237 11.0001 9.99988 10.7763 9.99988 10.5001C9.99988 10.224 10.2237 10.0001 10.4999 10.0001C10.776 10.0001 10.9999 10.224 10.9999 10.5001ZM10.4999 8.00012C10.776 8.00012 10.9999 7.77626 10.9999 7.50012C10.9999 7.22398 10.776 7.00012 10.4999 7.00012C10.2237 7.00012 9.99988 7.22398 9.99988 7.50012C9.99988 7.77626 10.2237 8.00012 10.4999 8.00012ZM10.9999 4.50012C10.9999 4.77626 10.776 5.00012 10.4999 5.00012C10.2237 5.00012 9.99988 4.77626 9.99988 4.50012C9.99988 4.22398 10.2237 4.00012 10.4999 4.00012C10.776 4.00012 10.9999 4.22398 10.9999 4.50012ZM7.49988 11.0001C7.77602 11.0001 7.99988 10.7763 7.99988 10.5001C7.99988 10.224 7.77602 10.0001 7.49988 10.0001C7.22374 10.0001 6.99988 10.224 6.99988 10.5001C6.99988 10.7763 7.22374 11.0001 7.49988 11.0001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3l = [\n \"color\"\n];\nvar PaperPlaneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3l);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.20308 1.04312C1.00481 0.954998 0.772341 1.0048 0.627577 1.16641C0.482813 1.32802 0.458794 1.56455 0.568117 1.75196L3.92115 7.50002L0.568117 13.2481C0.458794 13.4355 0.482813 13.672 0.627577 13.8336C0.772341 13.9952 1.00481 14.045 1.20308 13.9569L14.7031 7.95693C14.8836 7.87668 15 7.69762 15 7.50002C15 7.30243 14.8836 7.12337 14.7031 7.04312L1.20308 1.04312ZM4.84553 7.10002L2.21234 2.586L13.2689 7.50002L2.21234 12.414L4.84552 7.90002H9C9.22092 7.90002 9.4 7.72094 9.4 7.50002C9.4 7.27911 9.22092 7.10002 9 7.10002H4.84553Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3m = [\n \"color\"\n];\nvar PauseIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3m);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.04995 2.74998C6.04995 2.44623 5.80371 2.19998 5.49995 2.19998C5.19619 2.19998 4.94995 2.44623 4.94995 2.74998V12.25C4.94995 12.5537 5.19619 12.8 5.49995 12.8C5.80371 12.8 6.04995 12.5537 6.04995 12.25V2.74998ZM10.05 2.74998C10.05 2.44623 9.80371 2.19998 9.49995 2.19998C9.19619 2.19998 8.94995 2.44623 8.94995 2.74998V12.25C8.94995 12.5537 9.19619 12.8 9.49995 12.8C9.80371 12.8 10.05 12.5537 10.05 12.25V2.74998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3n = [\n \"color\"\n];\nvar Pencil1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3n);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.8536 1.14645C11.6583 0.951184 11.3417 0.951184 11.1465 1.14645L3.71455 8.57836C3.62459 8.66832 3.55263 8.77461 3.50251 8.89155L2.04044 12.303C1.9599 12.491 2.00189 12.709 2.14646 12.8536C2.29103 12.9981 2.50905 13.0401 2.69697 12.9596L6.10847 11.4975C6.2254 11.4474 6.3317 11.3754 6.42166 11.2855L13.8536 3.85355C14.0488 3.65829 14.0488 3.34171 13.8536 3.14645L11.8536 1.14645ZM4.42166 9.28547L11.5 2.20711L12.7929 3.5L5.71455 10.5784L4.21924 11.2192L3.78081 10.7808L4.42166 9.28547Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3o = [\n \"color\"\n];\nvar Pencil2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3o);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.1464 1.14645C12.3417 0.951184 12.6583 0.951184 12.8535 1.14645L14.8535 3.14645C15.0488 3.34171 15.0488 3.65829 14.8535 3.85355L10.9109 7.79618C10.8349 7.87218 10.7471 7.93543 10.651 7.9835L6.72359 9.94721C6.53109 10.0435 6.29861 10.0057 6.14643 9.85355C5.99425 9.70137 5.95652 9.46889 6.05277 9.27639L8.01648 5.34897C8.06455 5.25283 8.1278 5.16507 8.2038 5.08907L12.1464 1.14645ZM12.5 2.20711L8.91091 5.79618L7.87266 7.87267L8.12731 8.12732L10.2038 7.08907L13.7929 3.5L12.5 2.20711ZM9.99998 2L8.99998 3H4.9C4.47171 3 4.18056 3.00039 3.95552 3.01877C3.73631 3.03668 3.62421 3.06915 3.54601 3.10899C3.35785 3.20487 3.20487 3.35785 3.10899 3.54601C3.06915 3.62421 3.03669 3.73631 3.01878 3.95552C3.00039 4.18056 3 4.47171 3 4.9V11.1C3 11.5283 3.00039 11.8194 3.01878 12.0445C3.03669 12.2637 3.06915 12.3758 3.10899 12.454C3.20487 12.6422 3.35785 12.7951 3.54601 12.891C3.62421 12.9309 3.73631 12.9633 3.95552 12.9812C4.18056 12.9996 4.47171 13 4.9 13H11.1C11.5283 13 11.8194 12.9996 12.0445 12.9812C12.2637 12.9633 12.3758 12.9309 12.454 12.891C12.6422 12.7951 12.7951 12.6422 12.891 12.454C12.9309 12.3758 12.9633 12.2637 12.9812 12.0445C12.9996 11.8194 13 11.5283 13 11.1V6.99998L14 5.99998V11.1V11.1207C14 11.5231 14 11.8553 13.9779 12.1259C13.9549 12.407 13.9057 12.6653 13.782 12.908C13.5903 13.2843 13.2843 13.5903 12.908 13.782C12.6653 13.9057 12.407 13.9549 12.1259 13.9779C11.8553 14 11.5231 14 11.1207 14H11.1H4.9H4.87934C4.47686 14 4.14468 14 3.87409 13.9779C3.59304 13.9549 3.33469 13.9057 3.09202 13.782C2.7157 13.5903 2.40973 13.2843 2.21799 12.908C2.09434 12.6653 2.04506 12.407 2.0221 12.1259C1.99999 11.8553 1.99999 11.5231 2 11.1207V11.1206V11.1V4.9V4.87935V4.87932V4.87931C1.99999 4.47685 1.99999 4.14468 2.0221 3.87409C2.04506 3.59304 2.09434 3.33469 2.21799 3.09202C2.40973 2.71569 2.7157 2.40973 3.09202 2.21799C3.33469 2.09434 3.59304 2.04506 3.87409 2.0221C4.14468 1.99999 4.47685 1.99999 4.87932 2H4.87935H4.9H9.99998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3p = [\n \"color\"\n];\nvar PersonIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3p);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 0.875C5.49797 0.875 3.875 2.49797 3.875 4.5C3.875 6.15288 4.98124 7.54738 6.49373 7.98351C5.2997 8.12901 4.27557 8.55134 3.50407 9.31167C2.52216 10.2794 2.02502 11.72 2.02502 13.5999C2.02502 13.8623 2.23769 14.0749 2.50002 14.0749C2.76236 14.0749 2.97502 13.8623 2.97502 13.5999C2.97502 11.8799 3.42786 10.7206 4.17091 9.9883C4.91536 9.25463 6.02674 8.87499 7.49995 8.87499C8.97317 8.87499 10.0846 9.25463 10.8291 9.98831C11.5721 10.7206 12.025 11.8799 12.025 13.5999C12.025 13.8623 12.2376 14.0749 12.5 14.0749C12.7623 14.075 12.975 13.8623 12.975 13.6C12.975 11.72 12.4778 10.2794 11.4959 9.31166C10.7244 8.55135 9.70025 8.12903 8.50625 7.98352C10.0187 7.5474 11.125 6.15289 11.125 4.5C11.125 2.49797 9.50203 0.875 7.5 0.875ZM4.825 4.5C4.825 3.02264 6.02264 1.825 7.5 1.825C8.97736 1.825 10.175 3.02264 10.175 4.5C10.175 5.97736 8.97736 7.175 7.5 7.175C6.02264 7.175 4.825 5.97736 4.825 4.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3q = [\n \"color\"\n];\nvar PieChartIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.85001 7.50043C1.85001 4.37975 4.37963 1.85001 7.50001 1.85001C10.6204 1.85001 13.15 4.37975 13.15 7.50043C13.15 10.6211 10.6204 13.1509 7.50001 13.1509C4.37963 13.1509 1.85001 10.6211 1.85001 7.50043ZM7.50001 0.850006C3.82728 0.850006 0.850006 3.82753 0.850006 7.50043C0.850006 11.1733 3.82728 14.1509 7.50001 14.1509C11.1727 14.1509 14.15 11.1733 14.15 7.50043C14.15 3.82753 11.1727 0.850006 7.50001 0.850006ZM7.00001 8.00001V3.12811C7.16411 3.10954 7.33094 3.10001 7.50001 3.10001C9.93006 3.10001 11.9 5.07014 11.9 7.50043C11.9 7.66935 11.8905 7.83604 11.872 8.00001H7.00001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3r = [\n \"color\"\n];\nvar PilcrowIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3r);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 5.5C3 7.983 4.99169 9 7 9V12.5C7 12.7761 7.22386 13 7.5 13C7.77614 13 8 12.7761 8 12.5V9V3.1H9V12.5C9 12.7761 9.22386 13 9.5 13C9.77614 13 10 12.7761 10 12.5V3.1H11.5C11.8038 3.1 12.05 2.85376 12.05 2.55C12.05 2.24624 11.8038 2 11.5 2H9.5H8H7.5H7C4.99169 2 3 3.017 3 5.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3s = [\n \"color\"\n];\nvar PinBottomIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3s);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.5 13.95C13.7485 13.95 13.95 13.7485 13.95 13.5C13.95 13.2514 13.7485 13.05 13.5 13.05L1.49995 13.05C1.25142 13.05 1.04995 13.2514 1.04995 13.5C1.04995 13.7485 1.25142 13.95 1.49995 13.95L13.5 13.95ZM11.0681 7.5683C11.2439 7.39257 11.2439 7.10764 11.0681 6.93191C10.8924 6.75617 10.6075 6.75617 10.4317 6.93191L7.94993 9.41371L7.94993 1.49998C7.94993 1.25146 7.74846 1.04998 7.49993 1.04998C7.2514 1.04998 7.04993 1.25146 7.04993 1.49998L7.04993 9.41371L4.56813 6.93191C4.39239 6.75617 4.10746 6.75617 3.93173 6.93191C3.75599 7.10764 3.75599 7.39257 3.93173 7.5683L7.18173 10.8183C7.35746 10.994 7.64239 10.994 7.81812 10.8183L11.0681 7.5683Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3t = [\n \"color\"\n];\nvar PinLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3t);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.05005 13.5C2.05005 13.7485 2.25152 13.95 2.50005 13.95C2.74858 13.95 2.95005 13.7485 2.95005 13.5L2.95005 1.49995C2.95005 1.25142 2.74858 1.04995 2.50005 1.04995C2.25152 1.04995 2.05005 1.25142 2.05005 1.49995L2.05005 13.5ZM8.4317 11.0681C8.60743 11.2439 8.89236 11.2439 9.06809 11.0681C9.24383 10.8924 9.24383 10.6075 9.06809 10.4317L6.58629 7.94993L14.5 7.94993C14.7485 7.94993 14.95 7.74846 14.95 7.49993C14.95 7.2514 14.7485 7.04993 14.5 7.04993L6.58629 7.04993L9.06809 4.56813C9.24383 4.39239 9.24383 4.10746 9.06809 3.93173C8.89236 3.75599 8.60743 3.75599 8.4317 3.93173L5.1817 7.18173C5.00596 7.35746 5.00596 7.64239 5.1817 7.81812L8.4317 11.0681Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3u = [\n \"color\"\n];\nvar PinRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3u);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.95 1.50005C12.95 1.25152 12.7485 1.05005 12.5 1.05005C12.2514 1.05005 12.05 1.25152 12.05 1.50005L12.05 13.5C12.05 13.7486 12.2514 13.95 12.5 13.95C12.7485 13.95 12.95 13.7486 12.95 13.5L12.95 1.50005ZM6.5683 3.93188C6.39257 3.75614 6.10764 3.75614 5.93191 3.93188C5.75617 4.10761 5.75617 4.39254 5.93191 4.56827L8.41371 7.05007L0.499984 7.05007C0.251456 7.05007 0.0499847 7.25155 0.0499847 7.50007C0.0499846 7.7486 0.251457 7.95007 0.499984 7.95007L8.41371 7.95007L5.93191 10.4319C5.75617 10.6076 5.75617 10.8925 5.93191 11.0683C6.10764 11.244 6.39257 11.244 6.56831 11.0683L9.8183 7.81827C9.99404 7.64254 9.99404 7.35761 9.8183 7.18188L6.5683 3.93188Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3v = [\n \"color\"\n];\nvar PinTopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3v);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.50005 1.05005C1.25152 1.05005 1.05005 1.25152 1.05005 1.50005C1.05005 1.74858 1.25152 1.95005 1.50005 1.95005L13.5 1.95005C13.7486 1.95005 13.95 1.74858 13.95 1.50005C13.95 1.25152 13.7486 1.05005 13.5 1.05005H1.50005ZM3.93188 7.43169C3.75614 7.60743 3.75614 7.89236 3.93188 8.06809C4.10761 8.24383 4.39254 8.24383 4.56827 8.06809L7.05007 5.58629V13.5C7.05007 13.7485 7.25155 13.95 7.50007 13.95C7.7486 13.95 7.95007 13.7485 7.95007 13.5L7.95007 5.58629L10.4319 8.06809C10.6076 8.24383 10.8925 8.24383 11.0683 8.06809C11.244 7.89235 11.244 7.60743 11.0683 7.43169L7.81827 4.18169C7.64254 4.00596 7.35761 4.00596 7.18188 4.18169L3.93188 7.43169Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3w = [\n \"color\"\n];\nvar PlayIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3w);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.24182 2.32181C3.3919 2.23132 3.5784 2.22601 3.73338 2.30781L12.7334 7.05781C12.8974 7.14436 13 7.31457 13 7.5C13 7.68543 12.8974 7.85564 12.7334 7.94219L3.73338 12.6922C3.5784 12.774 3.3919 12.7687 3.24182 12.6782C3.09175 12.5877 3 12.4252 3 12.25V2.75C3 2.57476 3.09175 2.4123 3.24182 2.32181ZM4 3.57925V11.4207L11.4288 7.5L4 3.57925Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3x = [\n \"color\"\n];\nvar PlusIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3x);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8 2.75C8 2.47386 7.77614 2.25 7.5 2.25C7.22386 2.25 7 2.47386 7 2.75V7H2.75C2.47386 7 2.25 7.22386 2.25 7.5C2.25 7.77614 2.47386 8 2.75 8H7V12.25C7 12.5261 7.22386 12.75 7.5 12.75C7.77614 12.75 8 12.5261 8 12.25V8H12.25C12.5261 8 12.75 7.77614 12.75 7.5C12.75 7.22386 12.5261 7 12.25 7H8V2.75Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3y = [\n \"color\"\n];\nvar PlusCircledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.876892C3.84222 0.876892 0.877075 3.84204 0.877075 7.49972C0.877075 11.1574 3.84222 14.1226 7.49991 14.1226C11.1576 14.1226 14.1227 11.1574 14.1227 7.49972C14.1227 3.84204 11.1576 0.876892 7.49991 0.876892ZM1.82707 7.49972C1.82707 4.36671 4.36689 1.82689 7.49991 1.82689C10.6329 1.82689 13.1727 4.36671 13.1727 7.49972C13.1727 10.6327 10.6329 13.1726 7.49991 13.1726C4.36689 13.1726 1.82707 10.6327 1.82707 7.49972ZM7.50003 4C7.77617 4 8.00003 4.22386 8.00003 4.5V7H10.5C10.7762 7 11 7.22386 11 7.5C11 7.77614 10.7762 8 10.5 8H8.00003V10.5C8.00003 10.7761 7.77617 11 7.50003 11C7.22389 11 7.00003 10.7761 7.00003 10.5V8H4.50003C4.22389 8 4.00003 7.77614 4.00003 7.5C4.00003 7.22386 4.22389 7 4.50003 7H7.00003V4.5C7.00003 4.22386 7.22389 4 7.50003 4Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3z = [\n \"color\"\n];\nvar QuestionMarkIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.07505 4.10001C5.07505 2.91103 6.25727 1.92502 7.50005 1.92502C8.74283 1.92502 9.92505 2.91103 9.92505 4.10001C9.92505 5.19861 9.36782 5.71436 8.61854 6.37884L8.58757 6.4063C7.84481 7.06467 6.92505 7.87995 6.92505 9.5C6.92505 9.81757 7.18248 10.075 7.50005 10.075C7.81761 10.075 8.07505 9.81757 8.07505 9.5C8.07505 8.41517 8.62945 7.90623 9.38156 7.23925L9.40238 7.22079C10.1496 6.55829 11.075 5.73775 11.075 4.10001C11.075 2.12757 9.21869 0.775024 7.50005 0.775024C5.7814 0.775024 3.92505 2.12757 3.92505 4.10001C3.92505 4.41758 4.18249 4.67501 4.50005 4.67501C4.81761 4.67501 5.07505 4.41758 5.07505 4.10001ZM7.50005 13.3575C7.9833 13.3575 8.37505 12.9657 8.37505 12.4825C8.37505 11.9992 7.9833 11.6075 7.50005 11.6075C7.0168 11.6075 6.62505 11.9992 6.62505 12.4825C6.62505 12.9657 7.0168 13.3575 7.50005 13.3575Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3A = [\n \"color\"\n];\nvar QuestionMarkCircledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3A);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.49972C0.877075 3.84204 3.84222 0.876892 7.49991 0.876892C11.1576 0.876892 14.1227 3.84204 14.1227 7.49972C14.1227 11.1574 11.1576 14.1226 7.49991 14.1226C3.84222 14.1226 0.877075 11.1574 0.877075 7.49972ZM7.49991 1.82689C4.36689 1.82689 1.82708 4.36671 1.82708 7.49972C1.82708 10.6327 4.36689 13.1726 7.49991 13.1726C10.6329 13.1726 13.1727 10.6327 13.1727 7.49972C13.1727 4.36671 10.6329 1.82689 7.49991 1.82689ZM8.24993 10.5C8.24993 10.9142 7.91414 11.25 7.49993 11.25C7.08571 11.25 6.74993 10.9142 6.74993 10.5C6.74993 10.0858 7.08571 9.75 7.49993 9.75C7.91414 9.75 8.24993 10.0858 8.24993 10.5ZM6.05003 6.25C6.05003 5.57211 6.63511 4.925 7.50003 4.925C8.36496 4.925 8.95003 5.57211 8.95003 6.25C8.95003 6.74118 8.68002 6.99212 8.21447 7.27494C8.16251 7.30651 8.10258 7.34131 8.03847 7.37854L8.03841 7.37858C7.85521 7.48497 7.63788 7.61119 7.47449 7.73849C7.23214 7.92732 6.95003 8.23198 6.95003 8.7C6.95004 9.00376 7.19628 9.25 7.50004 9.25C7.8024 9.25 8.04778 9.00601 8.05002 8.70417L8.05056 8.7033C8.05924 8.6896 8.08493 8.65735 8.15058 8.6062C8.25207 8.52712 8.36508 8.46163 8.51567 8.37436L8.51571 8.37433C8.59422 8.32883 8.68296 8.27741 8.78559 8.21506C9.32004 7.89038 10.05 7.35382 10.05 6.25C10.05 4.92789 8.93511 3.825 7.50003 3.825C6.06496 3.825 4.95003 4.92789 4.95003 6.25C4.95003 6.55376 5.19628 6.8 5.50003 6.8C5.80379 6.8 6.05003 6.55376 6.05003 6.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3B = [\n \"color\"\n];\nvar QuoteIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3B);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.42503 3.44136C10.0561 3.23654 10.7837 3.2402 11.3792 3.54623C12.7532 4.25224 13.3477 6.07191 12.7946 8C12.5465 8.8649 12.1102 9.70472 11.1861 10.5524C10.262 11.4 8.98034 11.9 8.38571 11.9C8.17269 11.9 8 11.7321 8 11.525C8 11.3179 8.17644 11.15 8.38571 11.15C9.06497 11.15 9.67189 10.7804 10.3906 10.236C10.9406 9.8193 11.3701 9.28633 11.608 8.82191C12.0628 7.93367 12.0782 6.68174 11.3433 6.34901C10.9904 6.73455 10.5295 6.95946 9.97725 6.95946C8.7773 6.95946 8.0701 5.99412 8.10051 5.12009C8.12957 4.28474 8.66032 3.68954 9.42503 3.44136ZM3.42503 3.44136C4.05614 3.23654 4.78366 3.2402 5.37923 3.54623C6.7532 4.25224 7.34766 6.07191 6.79462 8C6.54654 8.8649 6.11019 9.70472 5.1861 10.5524C4.26201 11.4 2.98034 11.9 2.38571 11.9C2.17269 11.9 2 11.7321 2 11.525C2 11.3179 2.17644 11.15 2.38571 11.15C3.06497 11.15 3.67189 10.7804 4.39058 10.236C4.94065 9.8193 5.37014 9.28633 5.60797 8.82191C6.06282 7.93367 6.07821 6.68174 5.3433 6.34901C4.99037 6.73455 4.52948 6.95946 3.97725 6.95946C2.7773 6.95946 2.0701 5.99412 2.10051 5.12009C2.12957 4.28474 2.66032 3.68954 3.42503 3.44136Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3C = [\n \"color\"\n];\nvar RadiobuttonIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3C);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49985 0.877045C3.84216 0.877045 0.877014 3.84219 0.877014 7.49988C0.877014 11.1575 3.84216 14.1227 7.49985 14.1227C11.1575 14.1227 14.1227 11.1575 14.1227 7.49988C14.1227 3.84219 11.1575 0.877045 7.49985 0.877045ZM1.82701 7.49988C1.82701 4.36686 4.36683 1.82704 7.49985 1.82704C10.6328 1.82704 13.1727 4.36686 13.1727 7.49988C13.1727 10.6329 10.6328 13.1727 7.49985 13.1727C4.36683 13.1727 1.82701 10.6329 1.82701 7.49988ZM7.49999 9.49999C8.60456 9.49999 9.49999 8.60456 9.49999 7.49999C9.49999 6.39542 8.60456 5.49999 7.49999 5.49999C6.39542 5.49999 5.49999 6.39542 5.49999 7.49999C5.49999 8.60456 6.39542 9.49999 7.49999 9.49999Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3D = [\n \"color\"\n];\nvar ReaderIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3D);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.2 1H4.17741H4.1774C3.86936 0.999988 3.60368 0.999978 3.38609 1.02067C3.15576 1.04257 2.92825 1.09113 2.71625 1.22104C2.51442 1.34472 2.34473 1.51442 2.22104 1.71625C2.09113 1.92825 2.04257 2.15576 2.02067 2.38609C1.99998 2.60367 1.99999 2.86935 2 3.17738V3.1774V3.2V11.8V11.8226V11.8226C1.99999 12.1307 1.99998 12.3963 2.02067 12.6139C2.04257 12.8442 2.09113 13.0717 2.22104 13.2837C2.34473 13.4856 2.51442 13.6553 2.71625 13.779C2.92825 13.9089 3.15576 13.9574 3.38609 13.9793C3.60368 14 3.86937 14 4.17741 14H4.2H10.8H10.8226C11.1306 14 11.3963 14 11.6139 13.9793C11.8442 13.9574 12.0717 13.9089 12.2837 13.779C12.4856 13.6553 12.6553 13.4856 12.779 13.2837C12.9089 13.0717 12.9574 12.8442 12.9793 12.6139C13 12.3963 13 12.1306 13 11.8226V11.8V3.2V3.17741C13 2.86936 13 2.60368 12.9793 2.38609C12.9574 2.15576 12.9089 1.92825 12.779 1.71625C12.6553 1.51442 12.4856 1.34472 12.2837 1.22104C12.0717 1.09113 11.8442 1.04257 11.6139 1.02067C11.3963 0.999978 11.1306 0.999988 10.8226 1H10.8H4.2ZM3.23875 2.07368C3.26722 2.05623 3.32362 2.03112 3.48075 2.01618C3.64532 2.00053 3.86298 2 4.2 2H10.8C11.137 2 11.3547 2.00053 11.5193 2.01618C11.6764 2.03112 11.7328 2.05623 11.7613 2.07368C11.8285 2.11491 11.8851 2.17147 11.9263 2.23875C11.9438 2.26722 11.9689 2.32362 11.9838 2.48075C11.9995 2.64532 12 2.86298 12 3.2V11.8C12 12.137 11.9995 12.3547 11.9838 12.5193C11.9689 12.6764 11.9438 12.7328 11.9263 12.7613C11.8851 12.8285 11.8285 12.8851 11.7613 12.9263C11.7328 12.9438 11.6764 12.9689 11.5193 12.9838C11.3547 12.9995 11.137 13 10.8 13H4.2C3.86298 13 3.64532 12.9995 3.48075 12.9838C3.32362 12.9689 3.26722 12.9438 3.23875 12.9263C3.17147 12.8851 3.11491 12.8285 3.07368 12.7613C3.05624 12.7328 3.03112 12.6764 3.01618 12.5193C3.00053 12.3547 3 12.137 3 11.8V3.2C3 2.86298 3.00053 2.64532 3.01618 2.48075C3.03112 2.32362 3.05624 2.26722 3.07368 2.23875C3.11491 2.17147 3.17147 2.11491 3.23875 2.07368ZM5 10C4.72386 10 4.5 10.2239 4.5 10.5C4.5 10.7761 4.72386 11 5 11H8C8.27614 11 8.5 10.7761 8.5 10.5C8.5 10.2239 8.27614 10 8 10H5ZM4.5 7.5C4.5 7.22386 4.72386 7 5 7H10C10.2761 7 10.5 7.22386 10.5 7.5C10.5 7.77614 10.2761 8 10 8H5C4.72386 8 4.5 7.77614 4.5 7.5ZM5 4C4.72386 4 4.5 4.22386 4.5 4.5C4.5 4.77614 4.72386 5 5 5H10C10.2761 5 10.5 4.77614 10.5 4.5C10.5 4.22386 10.2761 4 10 4H5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3E = [\n \"color\"\n];\nvar ReloadIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3E);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.84998 7.49998C1.84998 4.66458 4.05979 1.84998 7.49998 1.84998C10.2783 1.84998 11.6515 3.9064 12.2367 5H10.5C10.2239 5 10 5.22386 10 5.5C10 5.77614 10.2239 6 10.5 6H13.5C13.7761 6 14 5.77614 14 5.5V2.5C14 2.22386 13.7761 2 13.5 2C13.2239 2 13 2.22386 13 2.5V4.31318C12.2955 3.07126 10.6659 0.849976 7.49998 0.849976C3.43716 0.849976 0.849976 4.18537 0.849976 7.49998C0.849976 10.8146 3.43716 14.15 7.49998 14.15C9.44382 14.15 11.0622 13.3808 12.2145 12.2084C12.8315 11.5806 13.3133 10.839 13.6418 10.0407C13.7469 9.78536 13.6251 9.49315 13.3698 9.38806C13.1144 9.28296 12.8222 9.40478 12.7171 9.66014C12.4363 10.3425 12.0251 10.9745 11.5013 11.5074C10.5295 12.4963 9.16504 13.15 7.49998 13.15C4.05979 13.15 1.84998 10.3354 1.84998 7.49998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3F = [\n \"color\"\n];\nvar ResetIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3F);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.85355 2.14645C5.04882 2.34171 5.04882 2.65829 4.85355 2.85355L3.70711 4H9C11.4853 4 13.5 6.01472 13.5 8.5C13.5 10.9853 11.4853 13 9 13H5C4.72386 13 4.5 12.7761 4.5 12.5C4.5 12.2239 4.72386 12 5 12H9C10.933 12 12.5 10.433 12.5 8.5C12.5 6.567 10.933 5 9 5H3.70711L4.85355 6.14645C5.04882 6.34171 5.04882 6.65829 4.85355 6.85355C4.65829 7.04882 4.34171 7.04882 4.14645 6.85355L2.14645 4.85355C1.95118 4.65829 1.95118 4.34171 2.14645 4.14645L4.14645 2.14645C4.34171 1.95118 4.65829 1.95118 4.85355 2.14645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3G = [\n \"color\"\n];\nvar ResumeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3G);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.04995 2.74995C3.04995 2.44619 2.80371 2.19995 2.49995 2.19995C2.19619 2.19995 1.94995 2.44619 1.94995 2.74995V12.25C1.94995 12.5537 2.19619 12.8 2.49995 12.8C2.80371 12.8 3.04995 12.5537 3.04995 12.25V2.74995ZM5.73333 2.30776C5.57835 2.22596 5.39185 2.23127 5.24177 2.32176C5.0917 2.41225 4.99995 2.57471 4.99995 2.74995V12.25C4.99995 12.4252 5.0917 12.5877 5.24177 12.6781C5.39185 12.7686 5.57835 12.7739 5.73333 12.6921L14.7333 7.94214C14.8973 7.85559 15 7.68539 15 7.49995C15 7.31452 14.8973 7.14431 14.7333 7.05776L5.73333 2.30776ZM5.99995 11.4207V3.5792L13.4287 7.49995L5.99995 11.4207Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3H = [\n \"color\"\n];\nvar RocketIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3H);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.85357 3.85355L7.65355 3.05353C8.2981 2.40901 9.42858 1.96172 10.552 1.80125C11.1056 1.72217 11.6291 1.71725 12.0564 1.78124C12.4987 1.84748 12.7698 1.97696 12.8965 2.10357C13.0231 2.23018 13.1526 2.50125 13.2188 2.94357C13.2828 3.37086 13.2779 3.89439 13.1988 4.44801C13.0383 5.57139 12.591 6.70188 11.9464 7.34645L7.49999 11.7929L6.35354 10.6465C6.15827 10.4512 5.84169 10.4512 5.64643 10.6465C5.45117 10.8417 5.45117 11.1583 5.64643 11.3536L7.14644 12.8536C7.34171 13.0488 7.65829 13.0488 7.85355 12.8536L8.40073 12.3064L9.57124 14.2572C9.65046 14.3893 9.78608 14.4774 9.9389 14.4963C10.0917 14.5151 10.2447 14.4624 10.3535 14.3536L12.3535 12.3536C12.4648 12.2423 12.5172 12.0851 12.495 11.9293L12.0303 8.67679L12.6536 8.05355C13.509 7.19808 14.0117 5.82855 14.1887 4.58943C14.2784 3.9618 14.2891 3.33847 14.2078 2.79546C14.1287 2.26748 13.9519 1.74482 13.6035 1.39645C13.2552 1.04809 12.7325 0.871332 12.2045 0.792264C11.6615 0.710945 11.0382 0.721644 10.4105 0.8113C9.17143 0.988306 7.80189 1.491 6.94644 2.34642L6.32322 2.96968L3.07071 2.50504C2.91492 2.48278 2.75773 2.53517 2.64645 2.64646L0.646451 4.64645C0.537579 4.75533 0.484938 4.90829 0.50375 5.0611C0.522563 5.21391 0.61073 5.34954 0.742757 5.42876L2.69364 6.59928L2.14646 7.14645C2.0527 7.24022 2.00002 7.3674 2.00002 7.50001C2.00002 7.63261 2.0527 7.75979 2.14646 7.85356L3.64647 9.35356C3.84173 9.54883 4.15831 9.54883 4.35357 9.35356C4.54884 9.1583 4.54884 8.84172 4.35357 8.64646L3.20712 7.50001L3.85357 6.85356L6.85357 3.85355ZM10.0993 13.1936L9.12959 11.5775L11.1464 9.56067L11.4697 11.8232L10.0993 13.1936ZM3.42251 5.87041L5.43935 3.85356L3.17678 3.53034L1.80638 4.90074L3.42251 5.87041ZM2.35356 10.3535C2.54882 10.1583 2.54882 9.8417 2.35356 9.64644C2.1583 9.45118 1.84171 9.45118 1.64645 9.64644L0.646451 10.6464C0.451188 10.8417 0.451188 11.1583 0.646451 11.3535C0.841713 11.5488 1.1583 11.5488 1.35356 11.3535L2.35356 10.3535ZM3.85358 11.8536C4.04884 11.6583 4.04885 11.3417 3.85359 11.1465C3.65833 10.9512 3.34175 10.9512 3.14648 11.1465L1.14645 13.1464C0.95119 13.3417 0.951187 13.6583 1.14645 13.8535C1.34171 14.0488 1.65829 14.0488 1.85355 13.8536L3.85358 11.8536ZM5.35356 13.3535C5.54882 13.1583 5.54882 12.8417 5.35356 12.6464C5.1583 12.4512 4.84171 12.4512 4.64645 12.6464L3.64645 13.6464C3.45119 13.8417 3.45119 14.1583 3.64645 14.3535C3.84171 14.5488 4.1583 14.5488 4.35356 14.3535L5.35356 13.3535ZM9.49997 6.74881C10.1897 6.74881 10.7488 6.1897 10.7488 5.5C10.7488 4.8103 10.1897 4.25118 9.49997 4.25118C8.81026 4.25118 8.25115 4.8103 8.25115 5.5C8.25115 6.1897 8.81026 6.74881 9.49997 6.74881Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3I = [\n \"color\"\n];\nvar RotateCounterClockwiseIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3I);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.59664 2.93628C7.76085 3.06401 8.00012 2.94698 8.00012 2.73895V1.99998C9.98143 2 11.1848 2.3637 11.9105 3.08945C12.6363 3.81522 13 5.0186 13 6.99998C13 7.27613 13.2239 7.49998 13.5 7.49998C13.7761 7.49998 14 7.27613 14 6.99998C14 4.9438 13.6325 3.39719 12.6176 2.38234C11.6028 1.36752 10.0562 0.999999 8.00012 0.999984V0.261266C8.00012 0.0532293 7.76085 -0.0637944 7.59664 0.063928L6.00384 1.30277C5.87516 1.40286 5.87516 1.59735 6.00384 1.69744L7.59664 2.93628ZM9.5 5H2.5C2.22386 5 2 5.22386 2 5.5V12.5C2 12.7761 2.22386 13 2.5 13H9.5C9.77614 13 10 12.7761 10 12.5V5.5C10 5.22386 9.77614 5 9.5 5ZM2.5 4C1.67157 4 1 4.67157 1 5.5V12.5C1 13.3284 1.67157 14 2.5 14H9.5C10.3284 14 11 13.3284 11 12.5V5.5C11 4.67157 10.3284 4 9.5 4H2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3J = [\n \"color\"\n];\nvar RowSpacingIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3J);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.81832 0.68179C7.64258 0.506054 7.35766 0.506054 7.18192 0.68179L5.18192 2.68179C5.00619 2.85753 5.00619 3.14245 5.18192 3.31819C5.35766 3.49392 5.64258 3.49392 5.81832 3.31819L7.05012 2.08638L7.05012 5.50023C7.05012 5.74876 7.25159 5.95023 7.50012 5.95023C7.74865 5.95023 7.95012 5.74876 7.95012 5.50023L7.95012 2.08638L9.18192 3.31819C9.35766 3.49392 9.64258 3.49392 9.81832 3.31819C9.99406 3.14245 9.99406 2.85753 9.81832 2.68179L7.81832 0.68179ZM7.95012 12.9136V9.50023C7.95012 9.2517 7.74865 9.05023 7.50012 9.05023C7.25159 9.05023 7.05012 9.2517 7.05012 9.50023V12.9136L5.81832 11.6818C5.64258 11.5061 5.35766 11.5061 5.18192 11.6818C5.00619 11.8575 5.00619 12.1424 5.18192 12.3182L7.18192 14.3182C7.26632 14.4026 7.38077 14.45 7.50012 14.45C7.61947 14.45 7.73393 14.4026 7.81832 14.3182L9.81832 12.3182C9.99406 12.1424 9.99406 11.8575 9.81832 11.6818C9.64258 11.5061 9.35766 11.5061 9.18192 11.6818L7.95012 12.9136ZM1.49994 7.00017C1.2238 7.00017 0.999939 7.22403 0.999939 7.50017C0.999939 7.77631 1.2238 8.00017 1.49994 8.00017L13.4999 8.00017C13.7761 8.00017 13.9999 7.77631 13.9999 7.50017C13.9999 7.22403 13.7761 7.00017 13.4999 7.00017L1.49994 7.00017Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3K = [\n \"color\"\n];\nvar RowsIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3K);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14 12.85L1 12.85L1 14.15L14 14.15L14 12.85ZM14 8.85002L1 8.85002L1 10.15L14 10.15L14 8.85002ZM1 4.85003L14 4.85003L14 6.15003L1 6.15002L1 4.85003ZM14 0.850025L1 0.850025L1 2.15002L14 2.15002L14 0.850025Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3L = [\n \"color\"\n];\nvar RulerHorizontalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3L);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.5 4C0.223858 4 0 4.22386 0 4.5V10.5C0 10.7761 0.223858 11 0.5 11H14.5C14.7761 11 15 10.7761 15 10.5V4.5C15 4.22386 14.7761 4 14.5 4H0.5ZM1 10V5H2.075V7.5C2.075 7.73472 2.26528 7.925 2.5 7.925C2.73472 7.925 2.925 7.73472 2.925 7.5V5H4.075V6.5C4.075 6.73472 4.26528 6.925 4.5 6.925C4.73472 6.925 4.925 6.73472 4.925 6.5V5H6.075V6.5C6.075 6.73472 6.26528 6.925 6.5 6.925C6.73472 6.925 6.925 6.73472 6.925 6.5V5H8.075V7.5C8.075 7.73472 8.26528 7.925 8.5 7.925C8.73472 7.925 8.925 7.73472 8.925 7.5V5H10.075V6.5C10.075 6.73472 10.2653 6.925 10.5 6.925C10.7347 6.925 10.925 6.73472 10.925 6.5V5H12.075V6.5C12.075 6.73472 12.2653 6.925 12.5 6.925C12.7347 6.925 12.925 6.73472 12.925 6.5V5H14V10H1Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3M = [\n \"color\"\n];\nvar RulerSquareIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3M);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.5 0C0.223858 0 0 0.223858 0 0.5V14.5C0 14.7761 0.223858 15 0.5 15H4.5C4.77614 15 5 14.7761 5 14.5V5H14.5C14.7761 5 15 4.77614 15 4.5V0.5C15 0.223858 14.7761 0 14.5 0H0.5ZM1 4.07505L1 1H4.07502C4.07502 1 4.07502 1 4.07502 1L4.07505 4.07507L1 4.07505ZM0.999997 4.92505L1 14H4V12.925H2.75002C2.5153 12.925 2.32502 12.7348 2.32502 12.5C2.32502 12.2653 2.5153 12.075 2.75002 12.075H4V10.925H2.25002C2.0153 10.925 1.82502 10.7347 1.82502 10.5C1.82502 10.2653 2.0153 10.075 2.25002 10.075H4V8.92504L2.75002 8.92502C2.5153 8.92502 2.32502 8.73474 2.32502 8.50002C2.32503 8.26529 2.51531 8.07502 2.75003 8.07502L4 8.07504V6.92502L2.74999 6.925C2.51527 6.925 2.325 6.73472 2.325 6.5C2.325 6.26528 2.51529 6.075 2.75001 6.075L4 6.07502V4.92507L0.999997 4.92505ZM4.92505 4H6.075V2.75006C6.075 2.51534 6.26528 2.32506 6.5 2.32506C6.73472 2.32506 6.925 2.51534 6.925 2.75006V4H8.07502V2.75005C8.07502 2.51533 8.2653 2.32505 8.50002 2.32505C8.73474 2.32505 8.92502 2.51533 8.92502 2.75005V4H10.0751V2.25005C10.0751 2.01533 10.2653 1.82505 10.5001 1.82505C10.7348 1.82505 10.9251 2.01533 10.9251 2.25005V4H12.0751V2.75005C12.0751 2.51533 12.2654 2.32505 12.5001 2.32505C12.7348 2.32505 12.9251 2.51533 12.9251 2.75005V4H14V1H4.92502L4.92505 4Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3N = [\n \"color\"\n];\nvar ScissorsIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3N);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.949988 4.48455C0.949988 5.34059 1.64395 6.03455 2.49999 6.03455C3.35603 6.03455 4.04999 5.34059 4.04999 4.48455C4.04999 3.6285 3.35603 2.93455 2.49999 2.93455C1.64395 2.93455 0.949988 3.6285 0.949988 4.48455ZM2.49999 6.93455C1.14689 6.93455 0.0499878 5.83764 0.0499878 4.48455C0.0499878 3.13145 1.14689 2.03455 2.49999 2.03455C3.85309 2.03455 4.94999 3.13145 4.94999 4.48455C4.94999 4.80813 4.88726 5.11707 4.77329 5.39985L5.73655 6.04413C5.72943 6.06656 5.72269 6.08914 5.71635 6.11188L5.56288 6.66186L5.21005 6.89773L4.21554 6.23366C3.77357 6.6672 3.168 6.93455 2.49999 6.93455ZM0.949991 10.5C0.949991 9.64394 1.64395 8.94998 2.49999 8.94998C3.35603 8.94998 4.04999 9.64394 4.04999 10.5C4.04999 11.356 3.35603 12.05 2.49999 12.05C1.64395 12.05 0.949991 11.356 0.949991 10.5ZM2.49999 8.04998C1.14689 8.04998 0.0499908 9.14688 0.0499908 10.5C0.0499908 11.8531 1.14689 12.95 2.49999 12.95C3.85309 12.95 4.94999 11.8531 4.94999 10.5C4.94999 10.1803 4.88877 9.87497 4.77743 9.595L15 2.75737L14.0486 2.85737C12.7077 2.9983 11.4091 3.40895 10.231 4.06461L7.15646 5.77564C6.92307 5.90553 6.75134 6.12339 6.67955 6.38066L6.42653 7.28737L4.22437 8.75957C3.78166 8.32091 3.17246 8.04998 2.49999 8.04998ZM7.14435 9.2149L7.15646 9.22176L10.231 10.9328C11.4091 11.5884 12.7077 11.9991 14.0486 12.14L15 12.24L8.81072 8.1003L7.14435 9.2149Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3O = [\n \"color\"\n];\nvar SectionIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3O);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 1.5C2 1.77614 1.77614 2 1.5 2C1.22386 2 1 1.77614 1 1.5C1 1.22386 1.22386 1 1.5 1C1.77614 1 2 1.22386 2 1.5ZM2 5L2 10H13V5H2ZM2 4C1.44772 4 1 4.44772 1 5V10C1 10.5523 1.44772 11 2 11H13C13.5523 11 14 10.5523 14 10V5C14 4.44772 13.5523 4 13 4H2ZM1.5 14C1.77614 14 2 13.7761 2 13.5C2 13.2239 1.77614 13 1.5 13C1.22386 13 1 13.2239 1 13.5C1 13.7761 1.22386 14 1.5 14ZM4 1.5C4 1.77614 3.77614 2 3.5 2C3.22386 2 3 1.77614 3 1.5C3 1.22386 3.22386 1 3.5 1C3.77614 1 4 1.22386 4 1.5ZM3.5 14C3.77614 14 4 13.7761 4 13.5C4 13.2239 3.77614 13 3.5 13C3.22386 13 3 13.2239 3 13.5C3 13.7761 3.22386 14 3.5 14ZM6 1.5C6 1.77614 5.77614 2 5.5 2C5.22386 2 5 1.77614 5 1.5C5 1.22386 5.22386 1 5.5 1C5.77614 1 6 1.22386 6 1.5ZM5.5 14C5.77614 14 6 13.7761 6 13.5C6 13.2239 5.77614 13 5.5 13C5.22386 13 5 13.2239 5 13.5C5 13.7761 5.22386 14 5.5 14ZM8 1.5C8 1.77614 7.77614 2 7.5 2C7.22386 2 7 1.77614 7 1.5C7 1.22386 7.22386 1 7.5 1C7.77614 1 8 1.22386 8 1.5ZM7.5 14C7.77614 14 8 13.7761 8 13.5C8 13.2239 7.77614 13 7.5 13C7.22386 13 7 13.2239 7 13.5C7 13.7761 7.22386 14 7.5 14ZM10 1.5C10 1.77614 9.77614 2 9.5 2C9.22386 2 9 1.77614 9 1.5C9 1.22386 9.22386 1 9.5 1C9.77614 1 10 1.22386 10 1.5ZM9.5 14C9.77614 14 10 13.7761 10 13.5C10 13.2239 9.77614 13 9.5 13C9.22386 13 9 13.2239 9 13.5C9 13.7761 9.22386 14 9.5 14ZM12 1.5C12 1.77614 11.7761 2 11.5 2C11.2239 2 11 1.77614 11 1.5C11 1.22386 11.2239 1 11.5 1C11.7761 1 12 1.22386 12 1.5ZM11.5 14C11.7761 14 12 13.7761 12 13.5C12 13.2239 11.7761 13 11.5 13C11.2239 13 11 13.2239 11 13.5C11 13.7761 11.2239 14 11.5 14ZM14 1.5C14 1.77614 13.7761 2 13.5 2C13.2239 2 13 1.77614 13 1.5C13 1.22386 13.2239 1 13.5 1C13.7761 1 14 1.22386 14 1.5ZM13.5 14C13.7761 14 14 13.7761 14 13.5C14 13.2239 13.7761 13 13.5 13C13.2239 13 13 13.2239 13 13.5C13 13.7761 13.2239 14 13.5 14Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3P = [\n \"color\"\n];\nvar SewingPinIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3P);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6 3.5C6 2.67157 6.67157 2 7.5 2C8.32843 2 9 2.67157 9 3.5C9 4.32843 8.32843 5 7.5 5C6.67157 5 6 4.32843 6 3.5ZM8 5.94999C9.14112 5.71836 10 4.70948 10 3.5C10 2.11929 8.88071 1 7.5 1C6.11929 1 5 2.11929 5 3.5C5 4.70948 5.85888 5.71836 7 5.94999V13.5C7 13.7761 7.22386 14 7.5 14C7.77614 14 8 13.7761 8 13.5V5.94999Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3Q = [\n \"color\"\n];\nvar SewingPinFilledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3Q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10 3.5C10 4.70948 9.14112 5.71836 8 5.94999V13.5C8 13.7761 7.77614 14 7.5 14C7.22386 14 7 13.7761 7 13.5V5.94999C5.85888 5.71836 5 4.70948 5 3.5C5 2.11929 6.11929 1 7.5 1C8.88071 1 10 2.11929 10 3.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3R = [\n \"color\"\n];\nvar ShadowIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3R);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".05\",\n d: \"M6.78296 13.376C8.73904 9.95284 8.73904 5.04719 6.78296 1.62405L7.21708 1.37598C9.261 4.95283 9.261 10.0472 7.21708 13.624L6.78296 13.376Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".1\",\n d: \"M7.28204 13.4775C9.23929 9.99523 9.23929 5.00475 7.28204 1.52248L7.71791 1.2775C9.76067 4.9119 9.76067 10.0881 7.71791 13.7225L7.28204 13.4775Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".15\",\n d: \"M7.82098 13.5064C9.72502 9.99523 9.72636 5.01411 7.82492 1.50084L8.26465 1.26285C10.2465 4.92466 10.2451 10.085 8.26052 13.7448L7.82098 13.5064Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".2\",\n d: \"M8.41284 13.429C10.1952 9.92842 10.1957 5.07537 8.41435 1.57402L8.85999 1.34729C10.7139 4.99113 10.7133 10.0128 8.85841 13.6559L8.41284 13.429Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".25\",\n d: \"M9.02441 13.2956C10.6567 9.8379 10.6586 5.17715 9.03005 1.71656L9.48245 1.50366C11.1745 5.09919 11.1726 9.91629 9.47657 13.5091L9.02441 13.2956Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".3\",\n d: \"M9.66809 13.0655C11.1097 9.69572 11.1107 5.3121 9.67088 1.94095L10.1307 1.74457C11.6241 5.24121 11.6231 9.76683 10.1278 13.2622L9.66809 13.0655Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".35\",\n d: \"M10.331 12.7456C11.5551 9.52073 11.5564 5.49103 10.3347 2.26444L10.8024 2.0874C12.0672 5.42815 12.0659 9.58394 10.7985 12.9231L10.331 12.7456Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".4\",\n d: \"M11.0155 12.2986C11.9938 9.29744 11.9948 5.71296 11.0184 2.71067L11.4939 2.55603C12.503 5.6589 12.502 9.35178 11.4909 12.4535L11.0155 12.2986Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".45\",\n d: \"M11.7214 11.668C12.4254 9.01303 12.4262 5.99691 11.7237 3.34116L12.2071 3.21329C12.9318 5.95292 12.931 9.05728 12.2047 11.7961L11.7214 11.668Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".5\",\n d: \"M12.4432 10.752C12.8524 8.63762 12.8523 6.36089 12.4429 4.2466L12.9338 4.15155C13.3553 6.32861 13.3554 8.66985 12.9341 10.847L12.4432 10.752Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.49988C0.877075 3.84219 3.84222 0.877045 7.49991 0.877045C11.1576 0.877045 14.1227 3.84219 14.1227 7.49988C14.1227 11.1575 11.1576 14.1227 7.49991 14.1227C3.84222 14.1227 0.877075 11.1575 0.877075 7.49988ZM7.49991 1.82704C4.36689 1.82704 1.82708 4.36686 1.82708 7.49988C1.82708 10.6329 4.36689 13.1727 7.49991 13.1727C10.6329 13.1727 13.1727 10.6329 13.1727 7.49988C13.1727 4.36686 10.6329 1.82704 7.49991 1.82704Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3S = [\n \"color\"\n];\nvar ShadowInnerIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3S);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".05\",\n d: \"M12.1619 3.85182C8.35817 4.88918 4.88936 8.358 3.85199 12.1617L3.3696 12.0301C4.45356 8.05564 8.05581 4.45339 12.0303 3.36943L12.1619 3.85182Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".1\",\n d: \"M11.8807 3.42707C8.03441 4.50542 4.50561 8.03422 3.42726 11.8805L2.94582 11.7456C4.07129 7.73121 7.7314 4.0711 11.7458 2.94563L11.8807 3.42707Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".15\",\n d: \"M11.5201 3.02556C7.69092 4.16199 4.16779 7.68323 3.02805 11.512L2.54883 11.3694C3.73676 7.37869 7.38659 3.73076 11.3778 2.54623L11.5201 3.02556Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".2\",\n d: \"M11.0468 2.66169C7.31117 3.87664 3.87918 7.3079 2.66298 11.0434L2.18754 10.8886C3.45324 7.00109 7.00445 3.45062 10.8921 2.18621L11.0468 2.66169Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".25\",\n d: \"M10.5201 2.32365C6.92091 3.61447 3.62391 6.90876 2.32845 10.5073L1.858 10.338C3.20398 6.59909 6.61155 3.19424 10.3513 1.85301L10.5201 2.32365Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".3\",\n d: \"M9.90222 2.03122C6.50003 3.39465 3.39968 6.49367 2.03399 9.89551L1.56998 9.70924C2.98651 6.18076 6.18728 2.98133 9.71622 1.5671L9.90222 2.03122Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".35\",\n d: \"M9.20727 1.78873C6.06136 3.20349 3.21103 6.05203 1.79331 9.19738L1.33747 8.99192C2.80536 5.73528 5.74485 2.7976 9.0022 1.33272L9.20727 1.78873Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".4\",\n d: \"M8.40713 1.62085C5.59323 3.05117 3.05794 5.58509 1.62544 8.39847L1.17987 8.1716C2.66036 5.26397 5.27232 2.6534 8.18057 1.17513L8.40713 1.62085Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".45\",\n d: \"M7.46207 1.56747C5.08689 2.94695 2.95362 5.07912 1.57249 7.45379L1.14028 7.20241C2.56503 4.75273 4.7607 2.55818 7.21096 1.1351L7.46207 1.56747Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".5\",\n d: \"M6.30407 1.70487C4.51964 2.91063 2.90983 4.52061 1.7043 6.30513L1.28998 6.02524C2.5313 4.18773 4.18673 2.53214 6.02413 1.29059L6.30407 1.70487Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.49988C0.877075 3.84219 3.84222 0.877045 7.49991 0.877045C11.1576 0.877045 14.1227 3.84219 14.1227 7.49988C14.1227 11.1575 11.1576 14.1227 7.49991 14.1227C3.84222 14.1227 0.877075 11.1575 0.877075 7.49988ZM7.49991 1.82704C4.36689 1.82704 1.82708 4.36686 1.82708 7.49988C1.82708 10.6329 4.36689 13.1727 7.49991 13.1727C10.6329 13.1727 13.1727 10.6329 13.1727 7.49988C13.1727 4.36686 10.6329 1.82704 7.49991 1.82704Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3T = [\n \"color\"\n];\nvar ShadowNoneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3T);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".05\",\n d: \"M6.78296 13.376C8.73904 9.95284 8.73904 5.04719 6.78296 1.62405L7.21708 1.37598C9.261 4.95283 9.261 10.0472 7.21708 13.624L6.78296 13.376Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".1\",\n d: \"M7.28204 13.4775C9.23929 9.99523 9.23929 5.00475 7.28204 1.52248L7.71791 1.2775C9.76067 4.9119 9.76067 10.0881 7.71791 13.7225L7.28204 13.4775Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".15\",\n d: \"M7.82098 13.5064C9.72502 9.99523 9.72636 5.01411 7.82492 1.50084L8.26465 1.26285C10.2465 4.92466 10.2451 10.085 8.26052 13.7448L7.82098 13.5064Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".2\",\n d: \"M8.41284 13.429C10.1952 9.92842 10.1957 5.07537 8.41435 1.57402L8.85999 1.34729C10.7139 4.99113 10.7133 10.0128 8.85841 13.6559L8.41284 13.429Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".25\",\n d: \"M9.02441 13.2956C10.6567 9.8379 10.6586 5.17715 9.03005 1.71656L9.48245 1.50366C11.1745 5.09919 11.1726 9.91629 9.47657 13.5091L9.02441 13.2956Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".3\",\n d: \"M9.66809 13.0655C11.1097 9.69572 11.1107 5.3121 9.67088 1.94095L10.1307 1.74457C11.6241 5.24121 11.6231 9.76683 10.1278 13.2622L9.66809 13.0655Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".35\",\n d: \"M10.331 12.7456C11.5551 9.52073 11.5564 5.49103 10.3347 2.26444L10.8024 2.0874C12.0672 5.42815 12.0659 9.58394 10.7985 12.9231L10.331 12.7456Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".4\",\n d: \"M11.0155 12.2986C11.9938 9.29744 11.9948 5.71296 11.0184 2.71067L11.4939 2.55603C12.503 5.6589 12.502 9.35178 11.4909 12.4535L11.0155 12.2986Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".45\",\n d: \"M11.7214 11.668C12.4254 9.01303 12.4262 5.99691 11.7237 3.34116L12.2071 3.21329C12.9318 5.95292 12.931 9.05728 12.2047 11.7961L11.7214 11.668Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".5\",\n d: \"M12.4432 10.752C12.8524 8.63762 12.8523 6.36089 12.4429 4.2466L12.9338 4.15155C13.3553 6.32861 13.3554 8.66985 12.9341 10.847L12.4432 10.752Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.877045C3.84222 0.877045 0.877075 3.84219 0.877075 7.49988C0.877075 9.1488 1.47969 10.657 2.4767 11.8162L1.64647 12.6464C1.45121 12.8417 1.45121 13.1583 1.64647 13.3535C1.84173 13.5488 2.15832 13.5488 2.35358 13.3535L3.18383 12.5233C4.34302 13.5202 5.8511 14.1227 7.49991 14.1227C11.1576 14.1227 14.1227 11.1575 14.1227 7.49988C14.1227 5.85107 13.5202 4.34298 12.5233 3.1838L13.3536 2.35355C13.5488 2.15829 13.5488 1.8417 13.3536 1.64644C13.1583 1.45118 12.8417 1.45118 12.6465 1.64644L11.8162 2.47667C10.657 1.47966 9.14883 0.877045 7.49991 0.877045ZM11.1423 3.15065C10.1568 2.32449 8.88644 1.82704 7.49991 1.82704C4.36689 1.82704 1.82708 4.36686 1.82708 7.49988C1.82708 8.88641 2.32452 10.1568 3.15069 11.1422L11.1423 3.15065ZM3.85781 11.8493C4.84322 12.6753 6.11348 13.1727 7.49991 13.1727C10.6329 13.1727 13.1727 10.6329 13.1727 7.49988C13.1727 6.11345 12.6754 4.84319 11.8493 3.85778L3.85781 11.8493Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3U = [\n \"color\"\n];\nvar ShadowOuterIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3U);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".05\",\n d: \"M12.1398 3.88617C13.8553 4.94159 15 6.83701 15 9.00001C15 12.3137 12.3137 15 9.00002 15C6.84351 15 4.95296 13.8621 3.89569 12.1552L4.32076 11.8919C5.29069 13.4578 7.02376 14.5 9.00002 14.5C12.0376 14.5 14.5 12.0375 14.5 9.00001C14.5 7.01781 13.4516 5.28027 11.8778 4.31203L12.1398 3.88617Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".2\",\n d: \"M12.851 5.07321C13.8684 6.07106 14.5 7.46199 14.5 9C14.5 12.0375 12.0376 14.5 9.00004 14.5C7.46215 14.5 6.07132 13.8685 5.07349 12.8513L5.43043 12.5011C6.3381 13.4264 7.60186 14 9.00004 14C11.7614 14 14 11.7614 14 9C14 7.60171 13.4264 6.33786 12.5009 5.43017L12.851 5.07321Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".35\",\n d: \"M13.3022 6.45071C13.7455 7.19737 14 8.06935 14 9.00001C14 11.7614 11.7614 14 9.00002 14C8.04868 14 7.15868 13.7341 6.40118 13.2724L6.66142 12.8454C7.34275 13.2607 8.14306 13.5 9.00002 13.5C11.4853 13.5 13.5 11.4853 13.5 9.00001C13.5 8.16165 13.271 7.37754 12.8722 6.70599L13.3022 6.45071Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".5\",\n d: \"M13.3745 7.94022C13.4566 8.28031 13.5 8.63525 13.5 9.00001C13.5 11.4853 11.4853 13.5 9.00003 13.5C8.61104 13.5 8.23323 13.4506 7.87268 13.3576L7.99759 12.8734C8.31768 12.956 8.65353 13 9.00003 13C11.2091 13 13 11.2091 13 9.00001C13 8.67509 12.9613 8.35953 12.8884 8.05757L13.3745 7.94022Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".65\",\n d: \"M12.9155 9.82133C12.5898 11.3813 11.3562 12.6072 9.79205 12.9215L9.69354 12.4313C11.0613 12.1565 12.1413 11.0834 12.4261 9.71915L12.9155 9.82133Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.2771 7.50253C1.2771 4.06456 4.06413 1.27753 7.5021 1.27753C10.94 1.27753 13.7271 4.06456 13.7271 7.50253C13.7271 10.9405 10.94 13.7275 7.5021 13.7275C4.06413 13.7275 1.2771 10.9405 1.2771 7.50253ZM7.5021 2.22753C4.5888 2.22753 2.2271 4.58923 2.2271 7.50253C2.2271 10.4158 4.5888 12.7775 7.5021 12.7775C10.4154 12.7775 12.7771 10.4158 12.7771 7.50253C12.7771 4.58923 10.4154 2.22753 7.5021 2.22753Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3V = [\n \"color\"\n];\nvar Share1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3V);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 7.50003C5 8.32845 4.32843 9.00003 3.5 9.00003C2.67157 9.00003 2 8.32845 2 7.50003C2 6.6716 2.67157 6.00003 3.5 6.00003C4.32843 6.00003 5 6.6716 5 7.50003ZM5.71313 8.66388C5.29445 9.45838 4.46048 10 3.5 10C2.11929 10 1 8.88074 1 7.50003C1 6.11931 2.11929 5.00003 3.5 5.00003C4.46048 5.00003 5.29445 5.54167 5.71313 6.33616L9.10424 4.21671C9.03643 3.98968 9 3.74911 9 3.50003C9 2.11932 10.1193 1.00003 11.5 1.00003C12.8807 1.00003 14 2.11932 14 3.50003C14 4.88074 12.8807 6.00003 11.5 6.00003C10.6915 6.00003 9.97264 5.61624 9.51566 5.0209L5.9853 7.22738C5.99502 7.31692 6 7.40789 6 7.50003C6 7.59216 5.99502 7.68312 5.9853 7.77267L9.51567 9.97915C9.97265 9.38382 10.6915 9.00003 11.5 9.00003C12.8807 9.00003 14 10.1193 14 11.5C14 12.8807 12.8807 14 11.5 14C10.1193 14 9 12.8807 9 11.5C9 11.2509 9.03643 11.0104 9.10425 10.7833L5.71313 8.66388ZM11.5 5.00003C12.3284 5.00003 13 4.32846 13 3.50003C13 2.6716 12.3284 2.00003 11.5 2.00003C10.6716 2.00003 10 2.6716 10 3.50003C10 4.32846 10.6716 5.00003 11.5 5.00003ZM13 11.5C13 12.3285 12.3284 13 11.5 13C10.6716 13 10 12.3285 10 11.5C10 10.6716 10.6716 10 11.5 10C12.3284 10 13 10.6716 13 11.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3W = [\n \"color\"\n];\nvar Share2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3W);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.5 5.00006C3.22386 5.00006 3 5.22392 3 5.50006L3 11.5001C3 11.7762 3.22386 12.0001 3.5 12.0001L11.5 12.0001C11.7761 12.0001 12 11.7762 12 11.5001L12 5.50006C12 5.22392 11.7761 5.00006 11.5 5.00006L10.25 5.00006C9.97386 5.00006 9.75 4.7762 9.75 4.50006C9.75 4.22392 9.97386 4.00006 10.25 4.00006L11.5 4.00006C12.3284 4.00006 13 4.67163 13 5.50006L13 11.5001C13 12.3285 12.3284 13.0001 11.5 13.0001L3.5 13.0001C2.67157 13.0001 2 12.3285 2 11.5001L2 5.50006C2 4.67163 2.67157 4.00006 3.5 4.00006L4.75 4.00006C5.02614 4.00006 5.25 4.22392 5.25 4.50006C5.25 4.7762 5.02614 5.00006 4.75 5.00006L3.5 5.00006ZM7 1.6364L5.5682 3.0682C5.39246 3.24393 5.10754 3.24393 4.9318 3.0682C4.75607 2.89246 4.75607 2.60754 4.9318 2.4318L7.1818 0.181802C7.26619 0.09741 7.38065 0.049999 7.5 0.049999C7.61935 0.049999 7.73381 0.09741 7.8182 0.181802L10.0682 2.4318C10.2439 2.60754 10.2439 2.89246 10.0682 3.0682C9.89246 3.24393 9.60754 3.24393 9.4318 3.0682L8 1.6364L8 8.5C8 8.77614 7.77614 9 7.5 9C7.22386 9 7 8.77614 7 8.5L7 1.6364Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3X = [\n \"color\"\n];\nvar ShuffleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3X);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.3536 1.14645C12.1583 0.951184 11.8417 0.951184 11.6464 1.14645C11.4512 1.34171 11.4512 1.65829 11.6464 1.85355L12.7929 3H12C10.7037 3 9.71111 3.58423 8.87248 4.38931C8.20065 5.03427 7.59349 5.85684 6.99461 6.6682C6.86287 6.84668 6.73154 7.02462 6.6 7.2C5.10874 9.18835 3.49037 11 0.5 11C0.223858 11 0 11.2239 0 11.5C0 11.7761 0.223858 12 0.5 12C4.00963 12 5.89126 9.81165 7.4 7.8C7.54367 7.60845 7.6832 7.41962 7.81996 7.23454L7.82005 7.23443L7.82006 7.23441C8.41674 6.42695 8.96069 5.69085 9.56502 5.11069C10.2889 4.41577 11.0463 4 12 4H12.7929L11.6464 5.14645C11.4512 5.34171 11.4512 5.65829 11.6464 5.85355C11.8417 6.04882 12.1583 6.04882 12.3536 5.85355L14.3536 3.85355C14.5488 3.65829 14.5488 3.34171 14.3536 3.14645L12.3536 1.14645ZM0.5 3C3.35278 3 5.12992 4.44588 6.50548 6.06746L6.3762 6.24266C6.2483 6.4161 6.12293 6.58609 6 6.75C5.96397 6.79804 5.92798 6.84581 5.892 6.89331C4.57348 5.29306 3.02637 4 0.5 4C0.223858 4 0 3.77614 0 3.5C0 3.22386 0.223858 3 0.5 3ZM8.87248 10.6107C8.37284 10.131 7.90897 9.55314 7.45767 8.95468C7.64688 8.71693 7.82704 8.48061 8 8.25L8.08987 8.12987C8.58412 8.79402 9.05288 9.39766 9.56502 9.88931C10.2889 10.5842 11.0463 11 12 11H12.7929L11.6464 9.85355C11.4512 9.65829 11.4512 9.34171 11.6464 9.14645C11.8417 8.95118 12.1583 8.95118 12.3536 9.14645L14.3536 11.1464C14.5488 11.3417 14.5488 11.6583 14.3536 11.8536L12.3536 13.8536C12.1583 14.0488 11.8417 14.0488 11.6464 13.8536C11.4512 13.6583 11.4512 13.3417 11.6464 13.1464L12.7929 12H12C10.7037 12 9.71111 11.4158 8.87248 10.6107Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3Y = [\n \"color\"\n];\nvar SizeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3Y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.5 3.04999C11.7485 3.04999 11.95 3.25146 11.95 3.49999V7.49999C11.95 7.74852 11.7485 7.94999 11.5 7.94999C11.2515 7.94999 11.05 7.74852 11.05 7.49999V4.58639L4.58638 11.05H7.49999C7.74852 11.05 7.94999 11.2515 7.94999 11.5C7.94999 11.7485 7.74852 11.95 7.49999 11.95L3.49999 11.95C3.38064 11.95 3.26618 11.9026 3.18179 11.8182C3.0974 11.7338 3.04999 11.6193 3.04999 11.5L3.04999 7.49999C3.04999 7.25146 3.25146 7.04999 3.49999 7.04999C3.74852 7.04999 3.94999 7.25146 3.94999 7.49999L3.94999 10.4136L10.4136 3.94999L7.49999 3.94999C7.25146 3.94999 7.04999 3.74852 7.04999 3.49999C7.04999 3.25146 7.25146 3.04999 7.49999 3.04999L11.5 3.04999Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3Z = [\n \"color\"\n];\nvar SketchLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3Z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.53731 0.826873C7.5125 0.824392 7.4875 0.824392 7.46269 0.826873L3.96269 1.17687C3.85672 1.18747 3.76025 1.24262 3.69736 1.32857L0.699771 5.42528C0.654046 5.48627 0.62647 5.56165 0.625057 5.6434C0.625019 5.6456 0.625 5.64781 0.625 5.65001C0.625 5.65052 0.625001 5.65103 0.625003 5.65153C0.625363 5.74237 0.658021 5.82559 0.712087 5.8903L7.21042 13.7883C7.28165 13.8749 7.38789 13.925 7.5 13.925C7.61211 13.925 7.71835 13.8749 7.78958 13.7883L14.2879 5.89031C14.342 5.8256 14.3746 5.74237 14.375 5.65153C14.375 5.65103 14.375 5.65052 14.375 5.65001C14.375 5.64849 14.375 5.64697 14.375 5.64545C14.3749 5.63963 14.3747 5.63382 14.3744 5.62801C14.37 5.55219 14.3431 5.48242 14.3002 5.42527L11.3026 1.32857C11.2397 1.24262 11.1433 1.18747 11.0373 1.17687L7.53731 0.826873ZM10.925 5.27501V5.25236L10.9223 5.27501H10.925ZM10.9342 5.17498H13.1877L11.2495 2.5261L10.9342 5.17498ZM10.5707 1.88395L8.04432 1.63131L10.1747 5.21034L10.5707 1.88395ZM6.95568 1.63131L4.42931 1.88395L4.82531 5.21034L6.95568 1.63131ZM3.75046 2.5261L1.81226 5.17498H4.0658L3.75046 2.5261ZM1.79416 6.02501L6.75861 12.0587L4.22371 6.0669C4.21787 6.0531 4.21314 6.0391 4.20949 6.02501H1.79416ZM5.15055 6.02501L7.49999 12.1085L9.84943 6.02501H9.78681H5.21319H5.15055ZM10.7905 6.02501C10.7869 6.0391 10.7821 6.0531 10.7763 6.0669L8.24139 12.0587L13.2058 6.02501H10.7905ZM7.5 2.18317L9.34038 5.27501H5.65962L7.5 2.18317Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3_ = [\n \"color\"\n];\nvar SlashIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3_);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.10876 14L9.46582 1H10.8178L5.46074 14H4.10876Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3$ = [\n \"color\"\n];\nvar SliderIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3$);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10.3004 7.49991C10.3004 8.4943 9.49426 9.30041 8.49988 9.30041C7.50549 9.30041 6.69938 8.4943 6.69938 7.49991C6.69938 6.50553 7.50549 5.69942 8.49988 5.69942C9.49426 5.69942 10.3004 6.50553 10.3004 7.49991ZM11.205 8C10.9699 9.28029 9.84816 10.2504 8.49988 10.2504C7.1516 10.2504 6.0299 9.28029 5.79473 8H0.5C0.223858 8 0 7.77614 0 7.5C0 7.22386 0.223858 7 0.5 7H5.7947C6.0298 5.71962 7.15154 4.74942 8.49988 4.74942C9.84822 4.74942 10.97 5.71962 11.2051 7H14.5C14.7761 7 15 7.22386 15 7.5C15 7.77614 14.7761 8 14.5 8H11.205Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$40 = [\n \"color\"\n];\nvar SpaceBetweenHorizontallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$40);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14.4999 0.999994C14.2237 0.999994 13.9999 1.22385 13.9999 1.49999L13.9999 5.99995L9.99992 5.99995C9.44764 5.99995 8.99993 6.44766 8.99993 6.99994L8.99993 7.99994C8.99993 8.55222 9.44764 8.99993 9.99992 8.99993L13.9999 8.99993L13.9999 13.4999C13.9999 13.776 14.2237 13.9999 14.4999 13.9999C14.776 13.9999 14.9999 13.776 14.9999 13.4999L14.9999 1.49999C14.9999 1.22385 14.776 0.999994 14.4999 0.999994ZM4.99996 5.99995L0.999992 5.99995L0.999992 1.49999C0.999992 1.22385 0.776136 0.999994 0.499996 0.999994C0.223856 0.999994 -9.7852e-09 1.22385 -2.18557e-08 1.49999L4.07279e-07 13.4999C3.95208e-07 13.776 0.223855 13.9999 0.499996 13.9999C0.776136 13.9999 0.999992 13.776 0.999992 13.4999L0.999992 8.99993L4.99996 8.99993C5.55224 8.99993 5.99995 8.55222 5.99995 7.99993L5.99995 6.99994C5.99995 6.44766 5.55224 5.99995 4.99996 5.99995Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$41 = [\n \"color\"\n];\nvar SpaceBetweenVerticallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$41);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.999878 0.5C0.999878 0.223858 1.22374 0 1.49988 0H13.4999C13.776 0 13.9999 0.223858 13.9999 0.5C13.9999 0.776142 13.776 1 13.4999 1L9 1V5C9 5.55228 8.55228 6 8 6H7C6.44772 6 6 5.55228 6 5V1H1.49988C1.22374 1 0.999878 0.776142 0.999878 0.5ZM7 9C6.44772 9 6 9.44771 6 10V14H1.49988C1.22374 14 0.999878 14.2239 0.999878 14.5C0.999878 14.7761 1.22374 15 1.49988 15H13.4999C13.776 15 13.9999 14.7761 13.9999 14.5C13.9999 14.2239 13.776 14 13.4999 14H9V10C9 9.44772 8.55228 9 8 9H7Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$42 = [\n \"color\"\n];\nvar SpaceEvenlyHorizontallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$42);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14.4999 0.999992C14.2237 0.999992 13.9999 1.22385 13.9999 1.49999L13.9999 13.4999C13.9999 13.776 14.2237 13.9999 14.4999 13.9999C14.776 13.9999 14.9999 13.776 14.9999 13.4999L14.9999 1.49999C14.9999 1.22385 14.776 0.999992 14.4999 0.999992ZM0.499996 0.999992C0.223856 0.999992 -9.78509e-09 1.22385 -2.18556e-08 1.49999L4.07279e-07 13.4999C3.95208e-07 13.776 0.223855 13.9999 0.499996 13.9999C0.776136 13.9999 0.999992 13.776 0.999992 13.4999L0.999992 1.49999C0.999992 1.22385 0.776136 0.999992 0.499996 0.999992ZM1.99998 6.99994C1.99998 6.44766 2.44769 5.99995 2.99998 5.99995L5.99995 5.99995C6.55223 5.99995 6.99994 6.44766 6.99994 6.99994L6.99994 7.99993C6.99994 8.55221 6.55223 8.99992 5.99995 8.99992L2.99998 8.99992C2.4477 8.99992 1.99998 8.55221 1.99998 7.99993L1.99998 6.99994ZM8.99993 5.99995C8.44765 5.99995 7.99993 6.44766 7.99993 6.99994L7.99993 7.99993C7.99993 8.55221 8.44765 8.99992 8.99993 8.99992L11.9999 8.99992C12.5522 8.99992 12.9999 8.55221 12.9999 7.99993L12.9999 6.99994C12.9999 6.44766 12.5522 5.99995 11.9999 5.99995L8.99993 5.99995Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$43 = [\n \"color\"\n];\nvar SpaceEvenlyVerticallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$43);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.999878 0.5C0.999878 0.223858 1.22374 0 1.49988 0H13.4999C13.776 0 13.9999 0.223858 13.9999 0.5C13.9999 0.776142 13.776 1 13.4999 1H1.49988C1.22374 1 0.999878 0.776142 0.999878 0.5ZM7 2C6.44772 2 6 2.44772 6 3V6C6 6.55228 6.44772 7 7 7H8C8.55228 7 9 6.55228 9 6V3C9 2.44772 8.55228 2 8 2H7ZM7 8C6.44772 8 6 8.44771 6 9V12C6 12.5523 6.44772 13 7 13H8C8.55228 13 9 12.5523 9 12V9C9 8.44772 8.55228 8 8 8H7ZM1.49988 14C1.22374 14 0.999878 14.2239 0.999878 14.5C0.999878 14.7761 1.22374 15 1.49988 15H13.4999C13.776 15 13.9999 14.7761 13.9999 14.5C13.9999 14.2239 13.776 14 13.4999 14H1.49988Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$44 = [\n \"color\"\n];\nvar SpeakerLoudIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$44);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.46968 1.05085C7.64122 1.13475 7.75 1.30904 7.75 1.5V13.5C7.75 13.691 7.64122 13.8653 7.46968 13.9492C7.29813 14.0331 7.09377 14.0119 6.94303 13.8947L3.2213 11H1.5C0.671571 11 0 10.3284 0 9.5V5.5C0 4.67158 0.671573 4 1.5 4H3.2213L6.94303 1.10533C7.09377 0.988085 7.29813 0.966945 7.46968 1.05085ZM6.75 2.52232L3.69983 4.89468C3.61206 4.96294 3.50405 5 3.39286 5H1.5C1.22386 5 1 5.22386 1 5.5V9.5C1 9.77615 1.22386 10 1.5 10H3.39286C3.50405 10 3.61206 10.0371 3.69983 10.1053L6.75 12.4777V2.52232ZM10.2784 3.84804C10.4623 3.72567 10.7106 3.77557 10.833 3.95949C12.2558 6.09798 12.2558 8.90199 10.833 11.0405C10.7106 11.2244 10.4623 11.2743 10.2784 11.1519C10.0944 11.0296 10.0445 10.7813 10.1669 10.5973C11.4111 8.72728 11.4111 6.27269 10.1669 4.40264C10.0445 4.21871 10.0944 3.97041 10.2784 3.84804ZM12.6785 1.43044C12.5356 1.2619 12.2832 1.24104 12.1147 1.38386C11.9462 1.52667 11.9253 1.77908 12.0681 1.94762C14.7773 5.14488 14.7773 9.85513 12.0681 13.0524C11.9253 13.2209 11.9462 13.4733 12.1147 13.6161C12.2832 13.759 12.5356 13.7381 12.6785 13.5696C15.6406 10.0739 15.6406 4.92612 12.6785 1.43044Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$45 = [\n \"color\"\n];\nvar SpeakerModerateIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$45);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8 1.5C8 1.31062 7.893 1.13749 7.72361 1.05279C7.55421 0.968093 7.35151 0.986371 7.2 1.1L3.33333 4H1.5C0.671573 4 0 4.67158 0 5.5V9.5C0 10.3284 0.671573 11 1.5 11H3.33333L7.2 13.9C7.35151 14.0136 7.55421 14.0319 7.72361 13.9472C7.893 13.8625 8 13.6894 8 13.5V1.5ZM3.8 4.9L7 2.5V12.5L3.8 10.1C3.71345 10.0351 3.60819 10 3.5 10H1.5C1.22386 10 1 9.77614 1 9.5V5.5C1 5.22386 1.22386 5 1.5 5H3.5C3.60819 5 3.71345 4.96491 3.8 4.9ZM10.833 3.95949C10.7106 3.77557 10.4623 3.72567 10.2784 3.84804C10.0944 3.97041 10.0445 4.21871 10.1669 4.40264C11.4111 6.27268 11.4111 8.72728 10.1669 10.5973C10.0445 10.7813 10.0944 11.0296 10.2784 11.1519C10.4623 11.2743 10.7106 11.2244 10.833 11.0405C12.2558 8.90199 12.2558 6.09798 10.833 3.95949Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$46 = [\n \"color\"\n];\nvar SpeakerOffIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$46);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.72361 1.05279C7.893 1.13749 8 1.31062 8 1.5V13.5C8 13.6894 7.893 13.8625 7.72361 13.9472C7.55421 14.0319 7.35151 14.0136 7.2 13.9L3.33333 11H1.5C0.671573 11 0 10.3284 0 9.5V5.5C0 4.67158 0.671573 4 1.5 4H3.33333L7.2 1.1C7.35151 0.986371 7.55421 0.968093 7.72361 1.05279ZM7 2.5L3.8 4.9C3.71345 4.96491 3.60819 5 3.5 5H1.5C1.22386 5 1 5.22386 1 5.5V9.5C1 9.77614 1.22386 10 1.5 10H3.5C3.60819 10 3.71345 10.0351 3.8 10.1L7 12.5V2.5ZM14.8536 5.14645C15.0488 5.34171 15.0488 5.65829 14.8536 5.85355L13.2071 7.5L14.8536 9.14645C15.0488 9.34171 15.0488 9.65829 14.8536 9.85355C14.6583 10.0488 14.3417 10.0488 14.1464 9.85355L12.5 8.20711L10.8536 9.85355C10.6583 10.0488 10.3417 10.0488 10.1464 9.85355C9.95118 9.65829 9.95118 9.34171 10.1464 9.14645L11.7929 7.5L10.1464 5.85355C9.95118 5.65829 9.95118 5.34171 10.1464 5.14645C10.3417 4.95118 10.6583 4.95118 10.8536 5.14645L12.5 6.79289L14.1464 5.14645C14.3417 4.95118 14.6583 4.95118 14.8536 5.14645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$47 = [\n \"color\"\n];\nvar SpeakerQuietIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$47);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8 1.5C8 1.31062 7.893 1.13749 7.72361 1.05279C7.55421 0.968093 7.35151 0.986371 7.2 1.1L3.33333 4H1.5C0.671573 4 0 4.67158 0 5.5V9.5C0 10.3284 0.671573 11 1.5 11H3.33333L7.2 13.9C7.35151 14.0136 7.55421 14.0319 7.72361 13.9472C7.893 13.8625 8 13.6894 8 13.5V1.5ZM3.8 4.9L7 2.5V12.5L3.8 10.1C3.71345 10.0351 3.60819 10 3.5 10H1.5C1.22386 10 1 9.77614 1 9.5V5.5C1 5.22386 1.22386 5 1.5 5H3.5C3.60819 5 3.71345 4.96491 3.8 4.9ZM10.083 5.05577C9.96066 4.87185 9.71235 4.82195 9.52843 4.94432C9.3445 5.06669 9.2946 5.31499 9.41697 5.49892C10.2207 6.70693 10.2207 8.29303 9.41697 9.50104C9.2946 9.68496 9.3445 9.93326 9.52843 10.0556C9.71235 10.178 9.96066 10.1281 10.083 9.94418C11.0653 8.46773 11.0653 6.53222 10.083 5.05577Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$48 = [\n \"color\"\n];\nvar SquareIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$48);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 1H1.5H13.5H14V1.5V13.5V14H13.5H1.5H1V13.5V1.5V1ZM2 2V13H13V2H2Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$49 = [\n \"color\"\n];\nvar StackIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$49);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.75432 1.81954C7.59742 1.72682 7.4025 1.72682 7.24559 1.81954L1.74559 5.06954C1.59336 5.15949 1.49996 5.32317 1.49996 5.5C1.49996 5.67683 1.59336 5.84051 1.74559 5.93046L7.24559 9.18046C7.4025 9.27318 7.59742 9.27318 7.75432 9.18046L13.2543 5.93046C13.4066 5.84051 13.5 5.67683 13.5 5.5C13.5 5.32317 13.4066 5.15949 13.2543 5.06954L7.75432 1.81954ZM7.49996 8.16923L2.9828 5.5L7.49996 2.83077L12.0171 5.5L7.49996 8.16923ZM2.25432 8.31954C2.01658 8.17906 1.70998 8.2579 1.56949 8.49564C1.42901 8.73337 1.50785 9.03998 1.74559 9.18046L7.24559 12.4305C7.4025 12.5232 7.59742 12.5232 7.75432 12.4305L13.2543 9.18046C13.4921 9.03998 13.5709 8.73337 13.4304 8.49564C13.2899 8.2579 12.9833 8.17906 12.7456 8.31954L7.49996 11.4192L2.25432 8.31954Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4a = [\n \"color\"\n];\nvar StarIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4a);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.97942 1.25171L6.9585 1.30199L5.58662 4.60039C5.54342 4.70426 5.44573 4.77523 5.3336 4.78422L1.7727 5.0697L1.71841 5.07405L1.38687 5.10063L1.08608 5.12475C0.820085 5.14607 0.712228 5.47802 0.914889 5.65162L1.14406 5.84793L1.39666 6.06431L1.43802 6.09974L4.15105 8.42374C4.23648 8.49692 4.2738 8.61176 4.24769 8.72118L3.41882 12.196L3.40618 12.249L3.32901 12.5725L3.25899 12.866C3.19708 13.1256 3.47945 13.3308 3.70718 13.1917L3.9647 13.0344L4.24854 12.861L4.29502 12.8326L7.34365 10.9705C7.43965 10.9119 7.5604 10.9119 7.6564 10.9705L10.705 12.8326L10.7515 12.861L11.0354 13.0344L11.2929 13.1917C11.5206 13.3308 11.803 13.1256 11.7411 12.866L11.671 12.5725L11.5939 12.249L11.5812 12.196L10.7524 8.72118C10.7263 8.61176 10.7636 8.49692 10.849 8.42374L13.562 6.09974L13.6034 6.06431L13.856 5.84793L14.0852 5.65162C14.2878 5.47802 14.18 5.14607 13.914 5.12475L13.6132 5.10063L13.2816 5.07405L13.2274 5.0697L9.66645 4.78422C9.55432 4.77523 9.45663 4.70426 9.41343 4.60039L8.04155 1.30199L8.02064 1.25171L7.89291 0.944609L7.77702 0.665992C7.67454 0.419604 7.32551 0.419604 7.22303 0.665992L7.10715 0.944609L6.97942 1.25171ZM7.50003 2.60397L6.50994 4.98442C6.32273 5.43453 5.89944 5.74207 5.41351 5.78103L2.84361 5.98705L4.8016 7.66428C5.17183 7.98142 5.33351 8.47903 5.2204 8.95321L4.62221 11.461L6.8224 10.1171C7.23842 9.86302 7.76164 9.86302 8.17766 10.1171L10.3778 11.461L9.77965 8.95321C9.66654 8.47903 9.82822 7.98142 10.1984 7.66428L12.1564 5.98705L9.58654 5.78103C9.10061 5.74207 8.67732 5.43453 8.49011 4.98442L7.50003 2.60397Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4b = [\n \"color\"\n];\nvar StarFilledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4b);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.22303 0.665992C7.32551 0.419604 7.67454 0.419604 7.77702 0.665992L9.41343 4.60039C9.45663 4.70426 9.55432 4.77523 9.66645 4.78422L13.914 5.12475C14.18 5.14607 14.2878 5.47802 14.0852 5.65162L10.849 8.42374C10.7636 8.49692 10.7263 8.61176 10.7524 8.72118L11.7411 12.866C11.803 13.1256 11.5206 13.3308 11.2929 13.1917L7.6564 10.9705C7.5604 10.9119 7.43965 10.9119 7.34365 10.9705L3.70718 13.1917C3.47945 13.3308 3.19708 13.1256 3.25899 12.866L4.24769 8.72118C4.2738 8.61176 4.23648 8.49692 4.15105 8.42374L0.914889 5.65162C0.712228 5.47802 0.820086 5.14607 1.08608 5.12475L5.3336 4.78422C5.44573 4.77523 5.54342 4.70426 5.58662 4.60039L7.22303 0.665992Z\",\n fill: color\n }));\n});\nvar _excluded$4c = [\n \"color\"\n];\nvar StitchesLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4c);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.84998 7.49998C1.84998 7.21321 1.87134 6.93143 1.91256 6.65615L9.56374 2.23875C9.86311 2.35627 10.15 2.49861 10.4219 2.66322L3.77065 6.50332C3.73669 6.52183 3.70482 6.5449 3.67602 6.57238C3.5911 6.65308 3.54245 6.76286 3.53682 6.87658C3.53359 6.9418 3.54451 7.00831 3.57086 7.07137C3.58927 7.1157 3.6149 7.15742 3.64744 7.19458C3.67306 7.22396 3.702 7.24941 3.73337 7.27069L7.32533 9.83813L3.87232 11.8317C2.63604 10.7953 1.84998 9.23944 1.84998 7.49998ZM8.36843 10.2751C8.37682 10.2706 8.38509 10.2659 8.39322 10.2608L9.84091 9.42499C9.84706 9.42163 9.85314 9.41812 9.85915 9.41446L11.3101 8.57677C11.3655 8.54649 11.4154 8.504 11.4554 8.44995C11.6034 8.25031 11.5616 7.96848 11.362 7.82046L7.82779 5.20017L11.2161 3.24393C12.4013 4.27963 13.15 5.80237 13.15 7.49998C13.15 7.83546 13.1207 8.16411 13.0647 8.48353L5.56875 12.8113C5.26138 12.6995 4.96646 12.5618 4.68662 12.4008L8.36843 10.2751ZM8.18149 9.34383L4.81659 6.93868L5.50918 6.53881L8.80604 8.98324L8.18149 9.34383ZM6.35875 6.04832L6.97822 5.69067L10.2751 8.13506L9.6556 8.49275L6.35875 6.04832ZM8.3318 1.91078L2.24263 5.42636C3.06941 3.33188 5.11164 1.84998 7.49998 1.84998C7.78258 1.84998 8.06033 1.87072 8.3318 1.91078ZM6.84684 13.1126C7.06114 13.1373 7.27908 13.15 7.49998 13.15C9.8246 13.15 11.8213 11.7461 12.6886 9.7399L6.84684 13.1126ZM7.49998 0.849976C3.82728 0.849976 0.849976 3.82728 0.849976 7.49998C0.849976 11.1727 3.82728 14.15 7.49998 14.15C11.1727 14.15 14.15 11.1727 14.15 7.49998C14.15 3.82728 11.1727 0.849976 7.49998 0.849976Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4d = [\n \"color\"\n];\nvar StopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4d);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 3C2 2.44772 2.44772 2 3 2H12C12.5523 2 13 2.44772 13 3V12C13 12.5523 12.5523 13 12 13H3C2.44772 13 2 12.5523 2 12V3ZM12 3H3V12H12V3Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4e = [\n \"color\"\n];\nvar StopwatchIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4e);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.49998 0.5C5.49998 0.223858 5.72383 0 5.99998 0H7.49998H8.99998C9.27612 0 9.49998 0.223858 9.49998 0.5C9.49998 0.776142 9.27612 1 8.99998 1H7.99998V2.11922C9.09832 2.20409 10.119 2.56622 10.992 3.13572C11.0116 3.10851 11.0336 3.08252 11.058 3.05806L11.858 2.25806C12.1021 2.01398 12.4978 2.01398 12.7419 2.25806C12.986 2.50214 12.986 2.89786 12.7419 3.14194L11.967 3.91682C13.1595 5.07925 13.9 6.70314 13.9 8.49998C13.9 12.0346 11.0346 14.9 7.49998 14.9C3.96535 14.9 1.09998 12.0346 1.09998 8.49998C1.09998 5.13362 3.69904 2.3743 6.99998 2.11922V1H5.99998C5.72383 1 5.49998 0.776142 5.49998 0.5ZM2.09998 8.49998C2.09998 5.51764 4.51764 3.09998 7.49998 3.09998C10.4823 3.09998 12.9 5.51764 12.9 8.49998C12.9 11.4823 10.4823 13.9 7.49998 13.9C4.51764 13.9 2.09998 11.4823 2.09998 8.49998ZM7.99998 4.5C7.99998 4.22386 7.77612 4 7.49998 4C7.22383 4 6.99998 4.22386 6.99998 4.5V9.5C6.99998 9.77614 7.22383 10 7.49998 10C7.77612 10 7.99998 9.77614 7.99998 9.5V4.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4f = [\n \"color\"\n];\nvar StretchHorizontallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4f);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14.4999 0.999992C14.2237 0.999992 13.9999 1.22385 13.9999 1.49999L13.9999 5.99995L0.999992 5.99995L0.999992 1.49999C0.999992 1.22385 0.776136 0.999992 0.499996 0.999992C0.223856 0.999992 -9.78509e-09 1.22385 -2.18556e-08 1.49999L4.07279e-07 13.4999C3.95208e-07 13.776 0.223855 13.9999 0.499996 13.9999C0.776136 13.9999 0.999992 13.776 0.999992 13.4999L0.999992 8.99992L13.9999 8.99992L13.9999 13.4999C13.9999 13.776 14.2237 13.9999 14.4999 13.9999C14.776 13.9999 14.9999 13.776 14.9999 13.4999L14.9999 1.49999C14.9999 1.22385 14.776 0.999992 14.4999 0.999992Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4g = [\n \"color\"\n];\nvar StretchVerticallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4g);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.999878 0.5C0.999878 0.223858 1.22374 0 1.49988 0H13.4999C13.776 0 13.9999 0.223858 13.9999 0.5C13.9999 0.776142 13.776 1 13.4999 1H6H1.49988C1.22374 1 0.999878 0.776142 0.999878 0.5ZM9 14V1L6 1V14H1.49988C1.22374 14 0.999878 14.2239 0.999878 14.5C0.999878 14.7761 1.22374 15 1.49988 15H13.4999C13.776 15 13.9999 14.7761 13.9999 14.5C13.9999 14.2239 13.776 14 13.4999 14H9Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4h = [\n \"color\"\n];\nvar StrikethroughIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4h);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.00003 3.25C5.00003 2.97386 4.77617 2.75 4.50003 2.75C4.22389 2.75 4.00003 2.97386 4.00003 3.25V7.10003H2.49998C2.27906 7.10003 2.09998 7.27912 2.09998 7.50003C2.09998 7.72094 2.27906 7.90003 2.49998 7.90003H4.00003V8.55C4.00003 10.483 5.56703 12.05 7.50003 12.05C9.43303 12.05 11 10.483 11 8.55V7.90003H12.5C12.7209 7.90003 12.9 7.72094 12.9 7.50003C12.9 7.27912 12.7209 7.10003 12.5 7.10003H11V3.25C11 2.97386 10.7762 2.75 10.5 2.75C10.2239 2.75 10 2.97386 10 3.25V7.10003H5.00003V3.25ZM5.00003 7.90003V8.55C5.00003 9.93071 6.11932 11.05 7.50003 11.05C8.88074 11.05 10 9.93071 10 8.55V7.90003H5.00003Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4i = [\n \"color\"\n];\nvar SunIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4i);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 0C7.77614 0 8 0.223858 8 0.5V2.5C8 2.77614 7.77614 3 7.5 3C7.22386 3 7 2.77614 7 2.5V0.5C7 0.223858 7.22386 0 7.5 0ZM2.1967 2.1967C2.39196 2.00144 2.70854 2.00144 2.90381 2.1967L4.31802 3.61091C4.51328 3.80617 4.51328 4.12276 4.31802 4.31802C4.12276 4.51328 3.80617 4.51328 3.61091 4.31802L2.1967 2.90381C2.00144 2.70854 2.00144 2.39196 2.1967 2.1967ZM0.5 7C0.223858 7 0 7.22386 0 7.5C0 7.77614 0.223858 8 0.5 8H2.5C2.77614 8 3 7.77614 3 7.5C3 7.22386 2.77614 7 2.5 7H0.5ZM2.1967 12.8033C2.00144 12.608 2.00144 12.2915 2.1967 12.0962L3.61091 10.682C3.80617 10.4867 4.12276 10.4867 4.31802 10.682C4.51328 10.8772 4.51328 11.1938 4.31802 11.3891L2.90381 12.8033C2.70854 12.9986 2.39196 12.9986 2.1967 12.8033ZM12.5 7C12.2239 7 12 7.22386 12 7.5C12 7.77614 12.2239 8 12.5 8H14.5C14.7761 8 15 7.77614 15 7.5C15 7.22386 14.7761 7 14.5 7H12.5ZM10.682 4.31802C10.4867 4.12276 10.4867 3.80617 10.682 3.61091L12.0962 2.1967C12.2915 2.00144 12.608 2.00144 12.8033 2.1967C12.9986 2.39196 12.9986 2.70854 12.8033 2.90381L11.3891 4.31802C11.1938 4.51328 10.8772 4.51328 10.682 4.31802ZM8 12.5C8 12.2239 7.77614 12 7.5 12C7.22386 12 7 12.2239 7 12.5V14.5C7 14.7761 7.22386 15 7.5 15C7.77614 15 8 14.7761 8 14.5V12.5ZM10.682 10.682C10.8772 10.4867 11.1938 10.4867 11.3891 10.682L12.8033 12.0962C12.9986 12.2915 12.9986 12.608 12.8033 12.8033C12.608 12.9986 12.2915 12.9986 12.0962 12.8033L10.682 11.3891C10.4867 11.1938 10.4867 10.8772 10.682 10.682ZM5.5 7.5C5.5 6.39543 6.39543 5.5 7.5 5.5C8.60457 5.5 9.5 6.39543 9.5 7.5C9.5 8.60457 8.60457 9.5 7.5 9.5C6.39543 9.5 5.5 8.60457 5.5 7.5ZM7.5 4.5C5.84315 4.5 4.5 5.84315 4.5 7.5C4.5 9.15685 5.84315 10.5 7.5 10.5C9.15685 10.5 10.5 9.15685 10.5 7.5C10.5 5.84315 9.15685 4.5 7.5 4.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4j = [\n \"color\"\n];\nvar SwitchIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4j);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10.5 4C8.567 4 7 5.567 7 7.5C7 9.433 8.567 11 10.5 11C12.433 11 14 9.433 14 7.5C14 5.567 12.433 4 10.5 4ZM7.67133 11C6.65183 10.175 6 8.91363 6 7.5C6 6.08637 6.65183 4.82498 7.67133 4H4.5C2.567 4 1 5.567 1 7.5C1 9.433 2.567 11 4.5 11H7.67133ZM0 7.5C0 5.01472 2.01472 3 4.5 3H10.5C12.9853 3 15 5.01472 15 7.5C15 9.98528 12.9853 12 10.5 12H4.5C2.01472 12 0 9.98528 0 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4k = [\n \"color\"\n];\nvar SymbolIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4k);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.90321 7.29677C1.90321 10.341 4.11041 12.4147 6.58893 12.8439C6.87255 12.893 7.06266 13.1627 7.01355 13.4464C6.96444 13.73 6.69471 13.9201 6.41109 13.871C3.49942 13.3668 0.86084 10.9127 0.86084 7.29677C0.860839 5.76009 1.55996 4.55245 2.37639 3.63377C2.96124 2.97568 3.63034 2.44135 4.16846 2.03202L2.53205 2.03202C2.25591 2.03202 2.03205 1.80816 2.03205 1.53202C2.03205 1.25588 2.25591 1.03202 2.53205 1.03202L5.53205 1.03202C5.80819 1.03202 6.03205 1.25588 6.03205 1.53202L6.03205 4.53202C6.03205 4.80816 5.80819 5.03202 5.53205 5.03202C5.25591 5.03202 5.03205 4.80816 5.03205 4.53202L5.03205 2.68645L5.03054 2.68759L5.03045 2.68766L5.03044 2.68767L5.03043 2.68767C4.45896 3.11868 3.76059 3.64538 3.15554 4.3262C2.44102 5.13021 1.90321 6.10154 1.90321 7.29677ZM13.0109 7.70321C13.0109 4.69115 10.8505 2.6296 8.40384 2.17029C8.12093 2.11718 7.93465 1.84479 7.98776 1.56188C8.04087 1.27898 8.31326 1.0927 8.59616 1.14581C11.4704 1.68541 14.0532 4.12605 14.0532 7.70321C14.0532 9.23988 13.3541 10.4475 12.5377 11.3662C11.9528 12.0243 11.2837 12.5586 10.7456 12.968L12.3821 12.968C12.6582 12.968 12.8821 13.1918 12.8821 13.468C12.8821 13.7441 12.6582 13.968 12.3821 13.968L9.38205 13.968C9.10591 13.968 8.88205 13.7441 8.88205 13.468L8.88205 10.468C8.88205 10.1918 9.10591 9.96796 9.38205 9.96796C9.65819 9.96796 9.88205 10.1918 9.88205 10.468L9.88205 12.3135L9.88362 12.3123C10.4551 11.8813 11.1535 11.3546 11.7585 10.6738C12.4731 9.86976 13.0109 8.89844 13.0109 7.70321Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4l = [\n \"color\"\n];\nvar TableIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4l);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8 2H12.5C12.7761 2 13 2.22386 13 2.5V5H8V2ZM7 5V2H2.5C2.22386 2 2 2.22386 2 2.5V5H7ZM2 6V9H7V6H2ZM8 6H13V9H8V6ZM8 10H13V12.5C13 12.7761 12.7761 13 12.5 13H8V10ZM2 12.5V10H7V13H2.5C2.22386 13 2 12.7761 2 12.5ZM1 2.5C1 1.67157 1.67157 1 2.5 1H12.5C13.3284 1 14 1.67157 14 2.5V12.5C14 13.3284 13.3284 14 12.5 14H2.5C1.67157 14 1 13.3284 1 12.5V2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4m = [\n \"color\"\n];\nvar TargetIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4m);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.900024 7.50002C0.900024 3.85495 3.85495 0.900024 7.50002 0.900024C11.1451 0.900024 14.1 3.85495 14.1 7.50002C14.1 11.1451 11.1451 14.1 7.50002 14.1C3.85495 14.1 0.900024 11.1451 0.900024 7.50002ZM7.50002 1.80002C4.35201 1.80002 1.80002 4.35201 1.80002 7.50002C1.80002 10.648 4.35201 13.2 7.50002 13.2C10.648 13.2 13.2 10.648 13.2 7.50002C13.2 4.35201 10.648 1.80002 7.50002 1.80002ZM3.07504 7.50002C3.07504 5.05617 5.05618 3.07502 7.50004 3.07502C9.94388 3.07502 11.925 5.05617 11.925 7.50002C11.925 9.94386 9.94388 11.925 7.50004 11.925C5.05618 11.925 3.07504 9.94386 3.07504 7.50002ZM7.50004 3.92502C5.52562 3.92502 3.92504 5.52561 3.92504 7.50002C3.92504 9.47442 5.52563 11.075 7.50004 11.075C9.47444 11.075 11.075 9.47442 11.075 7.50002C11.075 5.52561 9.47444 3.92502 7.50004 3.92502ZM7.50004 5.25002C6.2574 5.25002 5.25004 6.25739 5.25004 7.50002C5.25004 8.74266 6.2574 9.75002 7.50004 9.75002C8.74267 9.75002 9.75004 8.74266 9.75004 7.50002C9.75004 6.25738 8.74267 5.25002 7.50004 5.25002ZM6.05004 7.50002C6.05004 6.69921 6.69923 6.05002 7.50004 6.05002C8.30084 6.05002 8.95004 6.69921 8.95004 7.50002C8.95004 8.30083 8.30084 8.95002 7.50004 8.95002C6.69923 8.95002 6.05004 8.30083 6.05004 7.50002Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4n = [\n \"color\"\n];\nvar TextIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4n);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.94993 2.95002L3.94993 4.49998C3.94993 4.74851 3.74845 4.94998 3.49993 4.94998C3.2514 4.94998 3.04993 4.74851 3.04993 4.49998V2.50004C3.04993 2.45246 3.05731 2.40661 3.07099 2.36357C3.12878 2.18175 3.29897 2.05002 3.49993 2.05002H11.4999C11.6553 2.05002 11.7922 2.12872 11.8731 2.24842C11.9216 2.32024 11.9499 2.40682 11.9499 2.50002L11.9499 2.50004V4.49998C11.9499 4.74851 11.7485 4.94998 11.4999 4.94998C11.2514 4.94998 11.0499 4.74851 11.0499 4.49998V2.95002H8.04993V12.05H9.25428C9.50281 12.05 9.70428 12.2515 9.70428 12.5C9.70428 12.7486 9.50281 12.95 9.25428 12.95H5.75428C5.50575 12.95 5.30428 12.7486 5.30428 12.5C5.30428 12.2515 5.50575 12.05 5.75428 12.05H6.94993V2.95002H3.94993Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4o = [\n \"color\"\n];\nvar TextAlignBottomIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4o);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.89949 5.50002C3.89949 5.27911 3.7204 5.10003 3.49949 5.10003C3.27857 5.10003 3.09949 5.27911 3.09949 5.50002L3.09949 12.5343L1.78233 11.2172C1.62612 11.061 1.37285 11.061 1.21664 11.2172C1.06043 11.3734 1.06043 11.6267 1.21664 11.7829L3.21664 13.7829C3.29166 13.8579 3.3934 13.9 3.49949 13.9C3.60557 13.9 3.70732 13.8579 3.78233 13.7829L5.78233 11.7829C5.93854 11.6267 5.93854 11.3734 5.78233 11.2172C5.62612 11.061 5.37285 11.061 5.21664 11.2172L3.89949 12.5343L3.89949 5.50002ZM8.49998 13C8.22383 13 7.99998 12.7762 7.99998 12.5C7.99998 12.2239 8.22383 12 8.49998 12H14.5C14.7761 12 15 12.2239 15 12.5C15 12.7762 14.7761 13 14.5 13H8.49998ZM8.49998 10C8.22383 10 7.99998 9.77617 7.99998 9.50002C7.99998 9.22388 8.22383 9.00002 8.49998 9.00002H14.5C14.7761 9.00002 15 9.22388 15 9.50002C15 9.77617 14.7761 10 14.5 10H8.49998ZM7.99998 6.50002C7.99998 6.77617 8.22383 7.00002 8.49998 7.00002H14.5C14.7761 7.00002 15 6.77617 15 6.50002C15 6.22388 14.7761 6.00002 14.5 6.00002H8.49998C8.22383 6.00002 7.99998 6.22388 7.99998 6.50002Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4p = [\n \"color\"\n];\nvar TextAlignCenterIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4p);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 4.5C2 4.22386 2.22386 4 2.5 4H12.5C12.7761 4 13 4.22386 13 4.5C13 4.77614 12.7761 5 12.5 5H2.5C2.22386 5 2 4.77614 2 4.5ZM4 7.5C4 7.22386 4.22386 7 4.5 7H10.5C10.7761 7 11 7.22386 11 7.5C11 7.77614 10.7761 8 10.5 8H4.5C4.22386 8 4 7.77614 4 7.5ZM3 10.5C3 10.2239 3.22386 10 3.5 10H11.5C11.7761 10 12 10.2239 12 10.5C12 10.7761 11.7761 11 11.5 11H3.5C3.22386 11 3 10.7761 3 10.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4q = [\n \"color\"\n];\nvar TextAlignJustifyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.5 4C2.22386 4 2 4.22386 2 4.5C2 4.77614 2.22386 5 2.5 5H12.5C12.7761 5 13 4.77614 13 4.5C13 4.22386 12.7761 4 12.5 4H2.5ZM2 7.5C2 7.22386 2.22386 7 2.5 7H12.5C12.7761 7 13 7.22386 13 7.5C13 7.77614 12.7761 8 12.5 8H2.5C2.22386 8 2 7.77614 2 7.5ZM2 10.5C2 10.2239 2.22386 10 2.5 10H12.5C12.7761 10 13 10.2239 13 10.5C13 10.7761 12.7761 11 12.5 11H2.5C2.22386 11 2 10.7761 2 10.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4r = [\n \"color\"\n];\nvar TextAlignLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4r);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 4.5C2 4.22386 2.22386 4 2.5 4H12.5C12.7761 4 13 4.22386 13 4.5C13 4.77614 12.7761 5 12.5 5H2.5C2.22386 5 2 4.77614 2 4.5ZM2 7.5C2 7.22386 2.22386 7 2.5 7H7.5C7.77614 7 8 7.22386 8 7.5C8 7.77614 7.77614 8 7.5 8H2.5C2.22386 8 2 7.77614 2 7.5ZM2 10.5C2 10.2239 2.22386 10 2.5 10H10.5C10.7761 10 11 10.2239 11 10.5C11 10.7761 10.7761 11 10.5 11H2.5C2.22386 11 2 10.7761 2 10.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4s = [\n \"color\"\n];\nvar TextAlignMiddleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4s);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.49949 14.9C3.7204 14.9 3.89949 14.7209 3.89949 14.5L3.89949 10.4657L5.21664 11.7829C5.37285 11.9391 5.62612 11.9391 5.78233 11.7829C5.93854 11.6267 5.93854 11.3734 5.78233 11.2172L3.78233 9.21718C3.70732 9.14217 3.60557 9.10002 3.49949 9.10002C3.3934 9.10002 3.29166 9.14217 3.21664 9.21718L1.21664 11.2172C1.06043 11.3734 1.06043 11.6267 1.21664 11.7829C1.37285 11.9391 1.62612 11.9391 1.78233 11.7829L3.09949 10.4657L3.09949 14.5C3.09949 14.7209 3.27857 14.9 3.49949 14.9ZM7.99998 10.5C7.99998 10.7762 8.22383 11 8.49998 11H14.5C14.7761 11 15 10.7762 15 10.5C15 10.2239 14.7761 10 14.5 10H8.49998C8.22383 10 7.99998 10.2239 7.99998 10.5ZM7.99998 7.50002C7.99998 7.77617 8.22383 8.00002 8.49998 8.00002H14.5C14.7761 8.00002 15 7.77617 15 7.50002C15 7.22388 14.7761 7.00002 14.5 7.00002H8.49998C8.22383 7.00002 7.99998 7.22388 7.99998 7.50002ZM8.49998 5.00002C8.22383 5.00002 7.99998 4.77617 7.99998 4.50002C7.99998 4.22388 8.22383 4.00002 8.49998 4.00002H14.5C14.7761 4.00002 15 4.22388 15 4.50002C15 4.77617 14.7761 5.00002 14.5 5.00002H8.49998ZM3.89949 0.500025C3.89949 0.279111 3.7204 0.100025 3.49949 0.100025C3.27857 0.100025 3.09949 0.279111 3.09949 0.500025L3.09949 4.53434L1.78233 3.21718C1.62612 3.06097 1.37285 3.06097 1.21664 3.21718C1.06043 3.37339 1.06043 3.62666 1.21664 3.78287L3.21664 5.78287C3.29166 5.85788 3.3934 5.90002 3.49949 5.90002C3.60557 5.90002 3.70732 5.85788 3.78233 5.78287L5.78233 3.78287C5.93854 3.62666 5.93854 3.37339 5.78233 3.21718C5.62612 3.06097 5.37285 3.06097 5.21664 3.21718L3.89949 4.53434L3.89949 0.500025Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4t = [\n \"color\"\n];\nvar TextAlignRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4t);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 4.5C2 4.22386 2.22386 4 2.5 4H12.5C12.7761 4 13 4.22386 13 4.5C13 4.77614 12.7761 5 12.5 5H2.5C2.22386 5 2 4.77614 2 4.5ZM7 7.5C7 7.22386 7.22386 7 7.5 7H12.5C12.7761 7 13 7.22386 13 7.5C13 7.77614 12.7761 8 12.5 8H7.5C7.22386 8 7 7.77614 7 7.5ZM4 10.5C4 10.2239 4.22386 10 4.5 10H12.5C12.7761 10 13 10.2239 13 10.5C13 10.7761 12.7761 11 12.5 11H4.5C4.22386 11 4 10.7761 4 10.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4u = [\n \"color\"\n];\nvar TextAlignTopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4u);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.89949 9.49998C3.89949 9.72089 3.7204 9.89997 3.49949 9.89997C3.27857 9.89997 3.09949 9.72089 3.09949 9.49998L3.09949 2.46566L1.78233 3.78282C1.62612 3.93903 1.37285 3.93903 1.21664 3.78282C1.06043 3.62661 1.06043 3.37334 1.21664 3.21713L3.21664 1.21713C3.29166 1.14212 3.3934 1.09998 3.49949 1.09998C3.60557 1.09998 3.70732 1.14212 3.78233 1.21713L5.78233 3.21713C5.93854 3.37334 5.93854 3.62661 5.78233 3.78282C5.62612 3.93903 5.37285 3.93903 5.21664 3.78282L3.89949 2.46566L3.89949 9.49998ZM8.49998 1.99998C8.22383 1.99998 7.99998 2.22383 7.99998 2.49998C7.99998 2.77612 8.22383 2.99998 8.49998 2.99998H14.5C14.7761 2.99998 15 2.77612 15 2.49998C15 2.22383 14.7761 1.99998 14.5 1.99998H8.49998ZM8.49998 4.99998C8.22383 4.99998 7.99998 5.22383 7.99998 5.49998C7.99998 5.77612 8.22383 5.99998 8.49998 5.99998H14.5C14.7761 5.99998 15 5.77612 15 5.49998C15 5.22383 14.7761 4.99998 14.5 4.99998H8.49998ZM7.99998 8.49998C7.99998 8.22383 8.22383 7.99998 8.49998 7.99998H14.5C14.7761 7.99998 15 8.22383 15 8.49998C15 8.77612 14.7761 8.99998 14.5 8.99998H8.49998C8.22383 8.99998 7.99998 8.77612 7.99998 8.49998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4v = [\n \"color\"\n];\nvar TextNoneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4v);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.3536 2.35355C13.5488 2.15829 13.5488 1.84171 13.3536 1.64645C13.1583 1.45118 12.8417 1.45118 12.6464 1.64645L11.9291 2.36383C11.9159 2.32246 11.897 2.28368 11.8732 2.24845C11.7923 2.12875 11.6554 2.05005 11.5001 2.05005H3.50005C3.29909 2.05005 3.1289 2.18178 3.07111 2.3636C3.05743 2.40665 3.05005 2.45249 3.05005 2.50007V4.50001C3.05005 4.74854 3.25152 4.95001 3.50005 4.95001C3.74858 4.95001 3.95005 4.74854 3.95005 4.50001V2.95005H6.95006V7.34284L1.64645 12.6464C1.45118 12.8417 1.45118 13.1583 1.64645 13.3536C1.84171 13.5488 2.15829 13.5488 2.35355 13.3536L6.95006 8.75705V12.0501H5.7544C5.50587 12.0501 5.3044 12.2515 5.3044 12.5001C5.3044 12.7486 5.50587 12.9501 5.7544 12.9501H9.2544C9.50293 12.9501 9.7044 12.7486 9.7044 12.5001C9.7044 12.2515 9.50293 12.0501 9.2544 12.0501H8.05006V7.65705L13.3536 2.35355ZM8.05006 6.24284L11.0501 3.24283V2.95005H8.05006V6.24284Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4w = [\n \"color\"\n];\nvar ThickArrowDownIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4w);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 3.5C5 3.22386 5.22386 3 5.5 3H9.5C9.77614 3 10 3.22386 10 3.5V6H12.5C12.6873 6 12.8589 6.10467 12.9446 6.27121C13.0303 6.43774 13.0157 6.63821 12.9069 6.79062L7.90687 13.7906C7.81301 13.922 7.66148 14 7.5 14C7.33853 14 7.18699 13.922 7.09314 13.7906L2.09314 6.79062C1.98427 6.63821 1.96972 6.43774 2.05542 6.27121C2.14112 6.10467 2.31271 6 2.5 6H5V3.5ZM6 4V6.5C6 6.77614 5.77614 7 5.5 7H3.4716L7.5 12.6398L11.5284 7H9.5C9.22386 7 9 6.77614 9 6.5V4H6Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4x = [\n \"color\"\n];\nvar ThickArrowLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4x);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 7.5C1 7.66148 1.07798 7.81301 1.20938 7.90687L8.20938 12.9069C8.36179 13.0157 8.56226 13.0303 8.72879 12.9446C8.89533 12.8589 9 12.6873 9 12.5L9 10L11.5 10C11.7761 10 12 9.77614 12 9.5L12 5.5C12 5.22386 11.7761 5 11.5 5L9 5L9 2.5C9 2.31271 8.89533 2.14112 8.72879 2.05542C8.56226 1.96972 8.36179 1.98427 8.20938 2.09313L1.20938 7.09314C1.07798 7.18699 1 7.33853 1 7.5ZM8 3.4716L8 5.5C8 5.77614 8.22386 6 8.5 6L11 6L11 9L8.5 9C8.22386 9 8 9.22386 8 9.5L8 11.5284L2.36023 7.5L8 3.4716Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4y = [\n \"color\"\n];\nvar ThickArrowRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14 7.5C14 7.66148 13.922 7.81301 13.7906 7.90687L6.79062 12.9069C6.63821 13.0157 6.43774 13.0303 6.27121 12.9446C6.10467 12.8589 6 12.6873 6 12.5L6 10L3.5 10C3.22386 10 3 9.77614 3 9.5L3 5.5C3 5.22386 3.22386 5 3.5 5L6 5L6 2.5C6 2.31271 6.10467 2.14112 6.27121 2.05542C6.43774 1.96972 6.63821 1.98427 6.79062 2.09313L13.7906 7.09314C13.922 7.18699 14 7.33853 14 7.5ZM7 3.4716L7 5.5C7 5.77614 6.77614 6 6.5 6L4 6L4 9L6.5 9C6.77614 9 7 9.22386 7 9.5L7 11.5284L12.6398 7.5L7 3.4716Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4z = [\n \"color\"\n];\nvar ThickArrowUpIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 1C7.66148 1 7.81301 1.07798 7.90687 1.20938L12.9069 8.20938C13.0157 8.36179 13.0303 8.56226 12.9446 8.72879C12.8589 8.89533 12.6873 9 12.5 9H10V11.5C10 11.7761 9.77614 12 9.5 12H5.5C5.22386 12 5 11.7761 5 11.5V9H2.5C2.31271 9 2.14112 8.89533 2.05542 8.72879C1.96972 8.56226 1.98427 8.36179 2.09314 8.20938L7.09314 1.20938C7.18699 1.07798 7.33853 1 7.5 1ZM3.4716 8H5.5C5.77614 8 6 8.22386 6 8.5V11H9V8.5C9 8.22386 9.22386 8 9.5 8H11.5284L7.5 2.36023L3.4716 8Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4A = [\n \"color\"\n];\nvar TimerIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4A);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49998 0.849976C7.22383 0.849976 6.99998 1.07383 6.99998 1.34998V3.52234C6.99998 3.79848 7.22383 4.02234 7.49998 4.02234C7.77612 4.02234 7.99998 3.79848 7.99998 3.52234V1.8718C10.8862 2.12488 13.15 4.54806 13.15 7.49998C13.15 10.6204 10.6204 13.15 7.49998 13.15C4.37957 13.15 1.84998 10.6204 1.84998 7.49998C1.84998 6.10612 2.35407 4.83128 3.19049 3.8459C3.36919 3.63538 3.34339 3.31985 3.13286 3.14115C2.92234 2.96245 2.60681 2.98825 2.42811 3.19877C1.44405 4.35808 0.849976 5.86029 0.849976 7.49998C0.849976 11.1727 3.82728 14.15 7.49998 14.15C11.1727 14.15 14.15 11.1727 14.15 7.49998C14.15 3.82728 11.1727 0.849976 7.49998 0.849976ZM6.74049 8.08072L4.22363 4.57237C4.15231 4.47295 4.16346 4.33652 4.24998 4.25C4.33649 4.16348 4.47293 4.15233 4.57234 4.22365L8.08069 6.74051C8.56227 7.08599 8.61906 7.78091 8.19998 8.2C7.78089 8.61909 7.08597 8.56229 6.74049 8.08072Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4B = [\n \"color\"\n];\nvar TokensIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4B);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.5 2C3.11929 2 2 3.11929 2 4.5C2 5.88072 3.11929 7 4.5 7C5.88072 7 7 5.88072 7 4.5C7 3.11929 5.88072 2 4.5 2ZM3 4.5C3 3.67157 3.67157 3 4.5 3C5.32843 3 6 3.67157 6 4.5C6 5.32843 5.32843 6 4.5 6C3.67157 6 3 5.32843 3 4.5ZM10.5 2C9.11929 2 8 3.11929 8 4.5C8 5.88072 9.11929 7 10.5 7C11.8807 7 13 5.88072 13 4.5C13 3.11929 11.8807 2 10.5 2ZM9 4.5C9 3.67157 9.67157 3 10.5 3C11.3284 3 12 3.67157 12 4.5C12 5.32843 11.3284 6 10.5 6C9.67157 6 9 5.32843 9 4.5ZM2 10.5C2 9.11929 3.11929 8 4.5 8C5.88072 8 7 9.11929 7 10.5C7 11.8807 5.88072 13 4.5 13C3.11929 13 2 11.8807 2 10.5ZM4.5 9C3.67157 9 3 9.67157 3 10.5C3 11.3284 3.67157 12 4.5 12C5.32843 12 6 11.3284 6 10.5C6 9.67157 5.32843 9 4.5 9ZM10.5 8C9.11929 8 8 9.11929 8 10.5C8 11.8807 9.11929 13 10.5 13C11.8807 13 13 11.8807 13 10.5C13 9.11929 11.8807 8 10.5 8ZM9 10.5C9 9.67157 9.67157 9 10.5 9C11.3284 9 12 9.67157 12 10.5C12 11.3284 11.3284 12 10.5 12C9.67157 12 9 11.3284 9 10.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4C = [\n \"color\"\n];\nvar TrackNextIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4C);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.0502 2.74989C13.0502 2.44613 12.804 2.19989 12.5002 2.19989C12.1965 2.19989 11.9502 2.44613 11.9502 2.74989V7.2825C11.9046 7.18802 11.8295 7.10851 11.7334 7.05776L2.73338 2.30776C2.5784 2.22596 2.3919 2.23127 2.24182 2.32176C2.09175 2.41225 2 2.57471 2 2.74995V12.25C2 12.4252 2.09175 12.5877 2.24182 12.6781C2.3919 12.7686 2.5784 12.7739 2.73338 12.6921L11.7334 7.94214C11.8295 7.89139 11.9046 7.81188 11.9502 7.7174V12.2499C11.9502 12.5536 12.1965 12.7999 12.5002 12.7999C12.804 12.7999 13.0502 12.5536 13.0502 12.2499V2.74989ZM3 11.4207V3.5792L10.4288 7.49995L3 11.4207Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4D = [\n \"color\"\n];\nvar TrackPreviousIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4D);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.94976 2.74989C1.94976 2.44613 2.196 2.19989 2.49976 2.19989C2.80351 2.19989 3.04976 2.44613 3.04976 2.74989V7.2825C3.0954 7.18802 3.17046 7.10851 3.26662 7.05776L12.2666 2.30776C12.4216 2.22596 12.6081 2.23127 12.7582 2.32176C12.9083 2.41225 13 2.57471 13 2.74995V12.25C13 12.4252 12.9083 12.5877 12.7582 12.6781C12.6081 12.7686 12.4216 12.7739 12.2666 12.6921L3.26662 7.94214C3.17046 7.89139 3.0954 7.81188 3.04976 7.7174V12.2499C3.04976 12.5536 2.80351 12.7999 2.49976 12.7999C2.196 12.7999 1.94976 12.5536 1.94976 12.2499V2.74989ZM4.57122 7.49995L12 11.4207V3.5792L4.57122 7.49995Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4E = [\n \"color\"\n];\nvar TransformIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4E);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.849976 1.74998C0.849976 1.25292 1.25292 0.849976 1.74998 0.849976H3.24998C3.74703 0.849976 4.14998 1.25292 4.14998 1.74998V2.04998H10.85V1.74998C10.85 1.25292 11.2529 0.849976 11.75 0.849976H13.25C13.747 0.849976 14.15 1.25292 14.15 1.74998V3.24998C14.15 3.74703 13.747 4.14998 13.25 4.14998H12.95V10.85H13.25C13.747 10.85 14.15 11.2529 14.15 11.75V13.25C14.15 13.747 13.747 14.15 13.25 14.15H11.75C11.2529 14.15 10.85 13.747 10.85 13.25V12.95H4.14998V13.25C4.14998 13.747 3.74703 14.15 3.24998 14.15H1.74998C1.25292 14.15 0.849976 13.747 0.849976 13.25V11.75C0.849976 11.2529 1.25292 10.85 1.74998 10.85H2.04998V4.14998H1.74998C1.25292 4.14998 0.849976 3.74703 0.849976 3.24998V1.74998ZM2.94998 4.14998V10.85H3.24998C3.74703 10.85 4.14998 11.2529 4.14998 11.75V12.05H10.85V11.75C10.85 11.2529 11.2529 10.85 11.75 10.85H12.05V4.14998H11.75C11.2529 4.14998 10.85 3.74703 10.85 3.24998V2.94998H4.14998V3.24998C4.14998 3.74703 3.74703 4.14998 3.24998 4.14998H2.94998ZM2.34998 1.74998H1.74998V2.34998V2.64998V3.24998H2.34998H2.64998H3.24998V2.64998V2.34998V1.74998H2.64998H2.34998ZM5.09998 5.99998C5.09998 5.50292 5.50292 5.09998 5.99998 5.09998H6.99998C7.49703 5.09998 7.89998 5.50292 7.89998 5.99998V6.99998C7.89998 7.03591 7.89787 7.07134 7.89378 7.10618C7.92861 7.10208 7.96405 7.09998 7.99998 7.09998H8.99998C9.49703 7.09998 9.89998 7.50292 9.89998 7.99998V8.99998C9.89998 9.49703 9.49703 9.89998 8.99998 9.89998H7.99998C7.50292 9.89998 7.09998 9.49703 7.09998 8.99998V7.99998C7.09998 7.96405 7.10208 7.92861 7.10618 7.89378C7.07134 7.89787 7.03591 7.89998 6.99998 7.89998H5.99998C5.50292 7.89998 5.09998 7.49703 5.09998 6.99998V5.99998ZM6.09998 5.99998H5.99998V6.09998V6.89998V6.99998H6.09998H6.89998H6.99998V6.89998V6.09998V5.99998H6.89998H6.09998ZM7.99998 7.99998H8.09998H8.89998H8.99998V8.09998V8.89998V8.99998H8.89998H8.09998H7.99998V8.89998V8.09998V7.99998ZM2.64998 11.75H2.34998H1.74998V12.35V12.65V13.25H2.34998H2.64998H3.24998V12.65V12.35V11.75H2.64998ZM11.75 1.74998H12.35H12.65H13.25V2.34998V2.64998V3.24998H12.65H12.35H11.75V2.64998V2.34998V1.74998ZM12.65 11.75H12.35H11.75V12.35V12.65V13.25H12.35H12.65H13.25V12.65V12.35V11.75H12.65Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4F = [\n \"color\"\n];\nvar TransparencyGridIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4F);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".25\",\n d: \"M0 0H3V3H0V0ZM6 3H3V6H0V9H3V12H0V15H3V12H6V15H9V12H12V15H15V12H12V9H15V6H12V3H15V0H12V3H9V0H6V3ZM6 6V3H9V6H6ZM6 9H3V6H6V9ZM9 9V6H12V9H9ZM9 9H6V12H9V9Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4G = [\n \"color\"\n];\nvar TrashIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4G);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.5 1C5.22386 1 5 1.22386 5 1.5C5 1.77614 5.22386 2 5.5 2H9.5C9.77614 2 10 1.77614 10 1.5C10 1.22386 9.77614 1 9.5 1H5.5ZM3 3.5C3 3.22386 3.22386 3 3.5 3H5H10H11.5C11.7761 3 12 3.22386 12 3.5C12 3.77614 11.7761 4 11.5 4H11V12C11 12.5523 10.5523 13 10 13H5C4.44772 13 4 12.5523 4 12V4L3.5 4C3.22386 4 3 3.77614 3 3.5ZM5 4H10V12H5V4Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4H = [\n \"color\"\n];\nvar TriangleDownIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4H);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4 6H11L7.5 10.5L4 6Z\",\n fill: color\n }));\n});\nvar _excluded$4I = [\n \"color\"\n];\nvar TriangleLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4I);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9 4L9 11L4.5 7.5L9 4Z\",\n fill: color\n }));\n});\nvar _excluded$4J = [\n \"color\"\n];\nvar TriangleRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4J);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6 11L6 4L10.5 7.5L6 11Z\",\n fill: color\n }));\n});\nvar _excluded$4K = [\n \"color\"\n];\nvar TriangleUpIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4K);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4 9H11L7.5 4.5L4 9Z\",\n fill: color\n }));\n});\nvar _excluded$4L = [\n \"color\"\n];\nvar TwitterLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4L);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.23336 4.69629C7.23336 2.96884 8.63335 1.56857 10.36 1.56857C11.3736 1.56857 12.183 2.04804 12.7254 2.74385C13.3079 2.62467 13.8557 2.40913 14.3513 2.11508C14.1559 2.72598 13.7424 3.2396 13.2033 3.56463C13.2038 3.56568 13.2042 3.56674 13.2047 3.56779C13.7334 3.50361 14.2364 3.36302 14.7048 3.15546L14.7037 3.15715C14.3667 3.66183 13.9431 4.10736 13.4561 4.47034C13.4823 4.64672 13.4956 4.82427 13.4956 5.00079C13.4956 8.6871 10.6873 12.9746 5.52122 12.9746C3.93906 12.9746 2.46544 12.511 1.22505 11.7152C0.992632 11.5661 0.925108 11.2568 1.07423 11.0244C1.0874 11.0038 1.10183 10.9846 1.11734 10.9666C1.20582 10.8202 1.37438 10.7309 1.5554 10.7522C2.47066 10.8601 3.38568 10.7485 4.19219 10.3962C3.39226 10.0434 2.77129 9.35975 2.50204 8.51974C2.45359 8.3686 2.48835 8.20311 2.59351 8.08422C2.59716 8.0801 2.60087 8.07606 2.60464 8.0721C1.96391 7.50819 1.55973 6.68208 1.55973 5.76143V5.72759C1.55973 5.56814 1.64411 5.42059 1.78155 5.33974C1.82671 5.31317 1.87537 5.29511 1.92532 5.28558C1.70549 4.86154 1.58116 4.37984 1.58116 3.86958C1.58116 3.40165 1.58384 2.81192 1.91332 2.28081C1.98718 2.16175 2.10758 2.08915 2.2364 2.07195C2.42588 2.01237 2.64087 2.06969 2.77406 2.23302C3.86536 3.57126 5.44066 4.49583 7.23366 4.73961L7.23336 4.69629ZM5.52122 11.9746C4.73387 11.9746 3.97781 11.8435 3.27248 11.6023C4.13012 11.4538 4.95307 11.1159 5.66218 10.5602C5.81211 10.4427 5.87182 10.2435 5.81126 10.0629C5.7507 9.88234 5.583 9.75943 5.39255 9.75607C4.68968 9.74366 4.06712 9.39716 3.67793 8.86845C3.86828 8.85306 4.05428 8.82039 4.23445 8.77167C4.43603 8.71716 4.57363 8.53114 4.56674 8.32243C4.55985 8.11372 4.41029 7.93718 4.20555 7.89607C3.42694 7.73977 2.79883 7.16764 2.56169 6.42174C2.76255 6.47025 2.97102 6.4991 3.18482 6.5061C3.38563 6.51267 3.56646 6.38533 3.62795 6.19405C3.68943 6.00277 3.61666 5.79391 3.44963 5.68224C2.86523 5.29155 2.48116 4.62464 2.48116 3.86958C2.48116 3.70213 2.48352 3.55268 2.49355 3.41719C3.85115 4.79913 5.70873 5.68931 7.77588 5.79338C7.93225 5.80126 8.08328 5.73543 8.18395 5.61553C8.28463 5.49562 8.32332 5.33548 8.28851 5.18284C8.25255 5.02517 8.23336 4.86284 8.23336 4.69629C8.23336 3.52085 9.18591 2.56857 10.36 2.56857C11.5943 2.56857 12.4956 3.71208 12.4956 5.00079C12.4956 8.25709 10.0202 11.9746 5.52122 11.9746Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4M = [\n \"color\"\n];\nvar UnderlineIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4M);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.00001 2.75C5.00001 2.47386 4.77615 2.25 4.50001 2.25C4.22387 2.25 4.00001 2.47386 4.00001 2.75V8.05C4.00001 9.983 5.56702 11.55 7.50001 11.55C9.43301 11.55 11 9.983 11 8.05V2.75C11 2.47386 10.7762 2.25 10.5 2.25C10.2239 2.25 10 2.47386 10 2.75V8.05C10 9.43071 8.88072 10.55 7.50001 10.55C6.1193 10.55 5.00001 9.43071 5.00001 8.05V2.75ZM3.49998 13.1001C3.27906 13.1001 3.09998 13.2791 3.09998 13.5001C3.09998 13.721 3.27906 13.9001 3.49998 13.9001H11.5C11.7209 13.9001 11.9 13.721 11.9 13.5001C11.9 13.2791 11.7209 13.1001 11.5 13.1001H3.49998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4N = [\n \"color\"\n];\nvar UpdateIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4N);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.90321 7.29677C1.90321 10.341 4.11041 12.4147 6.58893 12.8439C6.87255 12.893 7.06266 13.1627 7.01355 13.4464C6.96444 13.73 6.69471 13.9201 6.41109 13.871C3.49942 13.3668 0.86084 10.9127 0.86084 7.29677C0.860839 5.76009 1.55996 4.55245 2.37639 3.63377C2.96124 2.97568 3.63034 2.44135 4.16846 2.03202L2.53205 2.03202C2.25591 2.03202 2.03205 1.80816 2.03205 1.53202C2.03205 1.25588 2.25591 1.03202 2.53205 1.03202L5.53205 1.03202C5.80819 1.03202 6.03205 1.25588 6.03205 1.53202L6.03205 4.53202C6.03205 4.80816 5.80819 5.03202 5.53205 5.03202C5.25591 5.03202 5.03205 4.80816 5.03205 4.53202L5.03205 2.68645L5.03054 2.68759L5.03045 2.68766L5.03044 2.68767L5.03043 2.68767C4.45896 3.11868 3.76059 3.64538 3.15554 4.3262C2.44102 5.13021 1.90321 6.10154 1.90321 7.29677ZM13.0109 7.70321C13.0109 4.69115 10.8505 2.6296 8.40384 2.17029C8.12093 2.11718 7.93465 1.84479 7.98776 1.56188C8.04087 1.27898 8.31326 1.0927 8.59616 1.14581C11.4704 1.68541 14.0532 4.12605 14.0532 7.70321C14.0532 9.23988 13.3541 10.4475 12.5377 11.3662C11.9528 12.0243 11.2837 12.5586 10.7456 12.968L12.3821 12.968C12.6582 12.968 12.8821 13.1918 12.8821 13.468C12.8821 13.7441 12.6582 13.968 12.3821 13.968L9.38205 13.968C9.10591 13.968 8.88205 13.7441 8.88205 13.468L8.88205 10.468C8.88205 10.1918 9.10591 9.96796 9.38205 9.96796C9.65819 9.96796 9.88205 10.1918 9.88205 10.468L9.88205 12.3135L9.88362 12.3123C10.4551 11.8813 11.1535 11.3546 11.7585 10.6738C12.4731 9.86976 13.0109 8.89844 13.0109 7.70321Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4O = [\n \"color\"\n];\nvar UploadIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4O);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.81825 1.18188C7.64251 1.00615 7.35759 1.00615 7.18185 1.18188L4.18185 4.18188C4.00611 4.35762 4.00611 4.64254 4.18185 4.81828C4.35759 4.99401 4.64251 4.99401 4.81825 4.81828L7.05005 2.58648V9.49996C7.05005 9.74849 7.25152 9.94996 7.50005 9.94996C7.74858 9.94996 7.95005 9.74849 7.95005 9.49996V2.58648L10.1819 4.81828C10.3576 4.99401 10.6425 4.99401 10.8182 4.81828C10.994 4.64254 10.994 4.35762 10.8182 4.18188L7.81825 1.18188ZM2.5 9.99997C2.77614 9.99997 3 10.2238 3 10.5V12C3 12.5538 3.44565 13 3.99635 13H11.0012C11.5529 13 12 12.5528 12 12V10.5C12 10.2238 12.2239 9.99997 12.5 9.99997C12.7761 9.99997 13 10.2238 13 10.5V12C13 13.104 12.1062 14 11.0012 14H3.99635C2.89019 14 2 13.103 2 12V10.5C2 10.2238 2.22386 9.99997 2.5 9.99997Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4P = [\n \"color\"\n];\nvar ValueIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4P);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.49988C0.877075 3.84219 3.84222 0.877045 7.49991 0.877045C11.1576 0.877045 14.1227 3.84219 14.1227 7.49988C14.1227 11.1575 11.1576 14.1227 7.49991 14.1227C3.84222 14.1227 0.877075 11.1575 0.877075 7.49988ZM7.49991 1.82704C4.36689 1.82704 1.82708 4.36686 1.82708 7.49988C1.82708 10.6329 4.36689 13.1727 7.49991 13.1727C10.6329 13.1727 13.1727 10.6329 13.1727 7.49988C13.1727 4.36686 10.6329 1.82704 7.49991 1.82704Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4Q = [\n \"color\"\n];\nvar ValueNoneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4Q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49985 0.877045C3.84216 0.877045 0.877014 3.84219 0.877014 7.49988C0.877014 9.1488 1.47963 10.657 2.47665 11.8162L1.64643 12.6464C1.45117 12.8417 1.45117 13.1583 1.64643 13.3535C1.8417 13.5488 2.15828 13.5488 2.35354 13.3535L3.18377 12.5233C4.34296 13.5202 5.85104 14.1227 7.49985 14.1227C11.1575 14.1227 14.1227 11.1575 14.1227 7.49988C14.1227 5.85107 13.5202 4.34299 12.5233 3.1838L13.3535 2.35354C13.5488 2.15827 13.5488 1.84169 13.3535 1.64643C13.1583 1.45117 12.8417 1.45117 12.6464 1.64643L11.8162 2.47668C10.657 1.47966 9.14877 0.877045 7.49985 0.877045ZM11.1422 3.15066C10.1567 2.32449 8.88639 1.82704 7.49985 1.82704C4.36683 1.82704 1.82701 4.36686 1.82701 7.49988C1.82701 8.88642 2.32446 10.1568 3.15063 11.1422L11.1422 3.15066ZM3.85776 11.8493C4.84317 12.6753 6.11343 13.1727 7.49985 13.1727C10.6328 13.1727 13.1727 10.6329 13.1727 7.49988C13.1727 6.11346 12.6753 4.8432 11.8493 3.85779L3.85776 11.8493Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4R = [\n \"color\"\n];\nvar VercelLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4R);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49998 1L6.92321 2.00307L1.17498 12L0.599976 13H1.7535H13.2464H14.4L13.825 12L8.07674 2.00307L7.49998 1ZM7.49998 3.00613L2.3285 12H12.6714L7.49998 3.00613Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4S = [\n \"color\"\n];\nvar VideoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4S);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.76447 3.12199C5.63151 3.04859 6.56082 3 7.5 3C8.43918 3 9.36849 3.04859 10.2355 3.12199C11.2796 3.21037 11.9553 3.27008 12.472 3.39203C12.9425 3.50304 13.2048 3.64976 13.4306 3.88086C13.4553 3.90618 13.4902 3.94414 13.5133 3.97092C13.7126 4.20149 13.8435 4.4887 13.918 5.03283C13.9978 5.6156 14 6.37644 14 7.52493C14 8.66026 13.9978 9.41019 13.9181 9.98538C13.8439 10.5206 13.7137 10.8061 13.5125 11.0387C13.4896 11.0651 13.4541 11.1038 13.4296 11.1287C13.2009 11.3625 12.9406 11.5076 12.4818 11.6164C11.9752 11.7365 11.3143 11.7942 10.2878 11.8797C9.41948 11.9521 8.47566 12 7.5 12C6.52434 12 5.58052 11.9521 4.7122 11.8797C3.68572 11.7942 3.02477 11.7365 2.51816 11.6164C2.05936 11.5076 1.7991 11.3625 1.57037 11.1287C1.54593 11.1038 1.51035 11.0651 1.48748 11.0387C1.28628 10.8061 1.15612 10.5206 1.08193 9.98538C1.00221 9.41019 1 8.66026 1 7.52493C1 6.37644 1.00216 5.6156 1.082 5.03283C1.15654 4.4887 1.28744 4.20149 1.48666 3.97092C1.5098 3.94414 1.54468 3.90618 1.56942 3.88086C1.7952 3.64976 2.05752 3.50304 2.52796 3.39203C3.04473 3.27008 3.7204 3.21037 4.76447 3.12199ZM0 7.52493C0 5.28296 0 4.16198 0.729985 3.31713C0.766457 3.27491 0.815139 3.22194 0.854123 3.18204C1.63439 2.38339 2.64963 2.29744 4.68012 2.12555C5.56923 2.05028 6.52724 2 7.5 2C8.47276 2 9.43077 2.05028 10.3199 2.12555C12.3504 2.29744 13.3656 2.38339 14.1459 3.18204C14.1849 3.22194 14.2335 3.27491 14.27 3.31713C15 4.16198 15 5.28296 15 7.52493C15 9.74012 15 10.8477 14.2688 11.6929C14.2326 11.7348 14.1832 11.7885 14.1444 11.8281C13.3629 12.6269 12.3655 12.71 10.3709 12.8763C9.47971 12.9505 8.50782 13 7.5 13C6.49218 13 5.52028 12.9505 4.62915 12.8763C2.63446 12.71 1.63712 12.6269 0.855558 11.8281C0.816844 11.7885 0.767442 11.7348 0.731221 11.6929C0 10.8477 0 9.74012 0 7.52493ZM5.25 5.38264C5.25 5.20225 5.43522 5.08124 5.60041 5.15369L10.428 7.27105C10.6274 7.35853 10.6274 7.64147 10.428 7.72895L5.60041 9.84631C5.43522 9.91876 5.25 9.79775 5.25 9.61736V5.38264Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4T = [\n \"color\"\n];\nvar ViewGridIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4T);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7 2H1.5C1.22386 2 1 2.22386 1 2.5V7H7V2ZM8 2V7H14V2.5C14 2.22386 13.7761 2 13.5 2H8ZM7 8H1V12.5C1 12.7761 1.22386 13 1.5 13H7V8ZM8 13V8H14V12.5C14 12.7761 13.7761 13 13.5 13H8ZM1.5 1C0.671573 1 0 1.67157 0 2.5V12.5C0 13.3284 0.671573 14 1.5 14H13.5C14.3284 14 15 13.3284 15 12.5V2.5C15 1.67157 14.3284 1 13.5 1H1.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4U = [\n \"color\"\n];\nvar ViewHorizontalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4U);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.5 2H13.5C13.7761 2 14 2.22386 14 2.5V7H1V2.5C1 2.22386 1.22386 2 1.5 2ZM1 8V12.5C1 12.7761 1.22386 13 1.5 13H13.5C13.7761 13 14 12.7761 14 12.5V8H1ZM0 2.5C0 1.67157 0.671573 1 1.5 1H13.5C14.3284 1 15 1.67157 15 2.5V12.5C15 13.3284 14.3284 14 13.5 14H1.5C0.671573 14 0 13.3284 0 12.5V2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4V = [\n \"color\"\n];\nvar ViewNoneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4V);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14 2.58711L1.85163 13H13.5C13.7761 13 14 12.7761 14 12.5V2.58711ZM0.762879 13.8067L0.825396 13.8796L0.854717 13.8545C1.05017 13.9478 1.26899 14 1.5 14H13.5C14.3284 14 15 13.3284 15 12.5V2.5C15 1.93949 14.6926 1.45078 14.2371 1.19331L14.1746 1.12037L14.1453 1.1455C13.9498 1.05222 13.731 1 13.5 1H1.5C0.671573 1 0 1.67157 0 2.5V12.5C0 13.0605 0.307435 13.5492 0.762879 13.8067ZM1 12.4129L13.1484 2H1.5C1.22386 2 1 2.22386 1 2.5V12.4129Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4W = [\n \"color\"\n];\nvar ViewVerticalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4W);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8 2H13.5C13.7761 2 14 2.22386 14 2.5V12.5C14 12.7761 13.7761 13 13.5 13H8V2ZM7 2H1.5C1.22386 2 1 2.22386 1 2.5V12.5C1 12.7761 1.22386 13 1.5 13H7V2ZM0 2.5C0 1.67157 0.671573 1 1.5 1H13.5C14.3284 1 15 1.67157 15 2.5V12.5C15 13.3284 14.3284 14 13.5 14H1.5C0.671573 14 0 13.3284 0 12.5V2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4X = [\n \"color\"\n];\nvar WidthIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4X);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.81812 4.68161C4.99386 4.85734 4.99386 5.14227 4.81812 5.318L3.08632 7.0498H11.9135L10.1817 5.318C10.006 5.14227 10.006 4.85734 10.1817 4.68161C10.3575 4.50587 10.6424 4.50587 10.8181 4.68161L13.3181 7.18161C13.4939 7.35734 13.4939 7.64227 13.3181 7.818L10.8181 10.318C10.6424 10.4937 10.3575 10.4937 10.1817 10.318C10.006 10.1423 10.006 9.85734 10.1817 9.68161L11.9135 7.9498H3.08632L4.81812 9.68161C4.99386 9.85734 4.99386 10.1423 4.81812 10.318C4.64239 10.4937 4.35746 10.4937 4.18173 10.318L1.68173 7.818C1.50599 7.64227 1.50599 7.35734 1.68173 7.18161L4.18173 4.68161C4.35746 4.50587 4.64239 4.50587 4.81812 4.68161Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4Y = [\n \"color\"\n];\nvar ZoomInIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4Y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10 6.5C10 8.433 8.433 10 6.5 10C4.567 10 3 8.433 3 6.5C3 4.567 4.567 3 6.5 3C8.433 3 10 4.567 10 6.5ZM9.30884 10.0159C8.53901 10.6318 7.56251 11 6.5 11C4.01472 11 2 8.98528 2 6.5C2 4.01472 4.01472 2 6.5 2C8.98528 2 11 4.01472 11 6.5C11 7.56251 10.6318 8.53901 10.0159 9.30884L12.8536 12.1464C13.0488 12.3417 13.0488 12.6583 12.8536 12.8536C12.6583 13.0488 12.3417 13.0488 12.1464 12.8536L9.30884 10.0159ZM4.25 6.5C4.25 6.22386 4.47386 6 4.75 6H6V4.75C6 4.47386 6.22386 4.25 6.5 4.25C6.77614 4.25 7 4.47386 7 4.75V6H8.25C8.52614 6 8.75 6.22386 8.75 6.5C8.75 6.77614 8.52614 7 8.25 7H7V8.25C7 8.52614 6.77614 8.75 6.5 8.75C6.22386 8.75 6 8.52614 6 8.25V7H4.75C4.47386 7 4.25 6.77614 4.25 6.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4Z = [\n \"color\"\n];\nvar ZoomOutIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4Z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.5 10C8.433 10 10 8.433 10 6.5C10 4.567 8.433 3 6.5 3C4.567 3 3 4.567 3 6.5C3 8.433 4.567 10 6.5 10ZM6.5 11C7.56251 11 8.53901 10.6318 9.30884 10.0159L12.1464 12.8536C12.3417 13.0488 12.6583 13.0488 12.8536 12.8536C13.0488 12.6583 13.0488 12.3417 12.8536 12.1464L10.0159 9.30884C10.6318 8.53901 11 7.56251 11 6.5C11 4.01472 8.98528 2 6.5 2C4.01472 2 2 4.01472 2 6.5C2 8.98528 4.01472 11 6.5 11ZM4.75 6C4.47386 6 4.25 6.22386 4.25 6.5C4.25 6.77614 4.47386 7 4.75 7H8.25C8.52614 7 8.75 6.77614 8.75 6.5C8.75 6.22386 8.52614 6 8.25 6H4.75Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\n //# sourceMappingURL=react-icons.esm.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWljb25zL2Rpc3QvcmVhY3QtaWNvbnMuZXNtLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQWtEO0FBRWxELFNBQVNFLDhCQUE4QkMsTUFBTSxFQUFFQyxRQUFRO0lBQ3JELElBQUlELFVBQVUsTUFBTSxPQUFPLENBQUM7SUFDNUIsSUFBSUUsU0FBUyxDQUFDO0lBQ2QsSUFBSUMsYUFBYUMsT0FBT0MsSUFBSSxDQUFDTDtJQUM3QixJQUFJTSxLQUFLQztJQUVULElBQUtBLElBQUksR0FBR0EsSUFBSUosV0FBV0ssTUFBTSxFQUFFRCxJQUFLO1FBQ3RDRCxNQUFNSCxVQUFVLENBQUNJLEVBQUU7UUFDbkIsSUFBSU4sU0FBU1EsT0FBTyxDQUFDSCxRQUFRLEdBQUc7UUFDaENKLE1BQU0sQ0FBQ0ksSUFBSSxHQUFHTixNQUFNLENBQUNNLElBQUk7SUFDM0I7SUFFQSxPQUFPSjtBQUNUO0FBRUEsSUFBSVEsWUFBWTtJQUFDO0NBQVE7QUFDekIsSUFBSUMsb0JBQW9CLFdBQVcsR0FBRWQsaURBQVVBLENBQUMsU0FBVWUsSUFBSSxFQUFFQyxZQUFZO0lBQzFFLElBQUlDLGFBQWFGLEtBQUtHLEtBQUssRUFDdkJBLFFBQVFELGVBQWUsS0FBSyxJ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O1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixr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QixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1I7QUFDRjtBQUVBLElBQUlvRixjQUFjO0lBQUM7Q0FBUTtBQUMzQixJQUFJQyxrQkFBa0IsV0FBVyxHQUFFdkcsaURBQVVBLENBQUMsU0FBVWUsSUFBSSxFQUFFQyxZQUFZO0lBQ3hFLElBQUlDLGFBQWFGLEtBQUtHLEtBQUssRUFDdkJBLFFBQVFELGVBQWUsS0FBSyxJQUFJLGlCQUFpQkEsWUFDakRFLFFBQVFqQiw4QkFBOEJhLE1BQU11RjtJQUVoRCxxQkFBT3JHLG9EQUFhQSxDQUFDLE9BQU9NLE9BQU9hLE1BQU0sQ0FBQztRQUN4Q0MsT0FBTztRQUNQQyxRQUFRO1FBQ1JDLFNBQVM7UUFDVEMsTUFBTTtRQUNOQyxPQUFPO0lBQ1QsR0FBR04sT0FBTztRQUNSTyxLQUFLVjtJQUNQLGtCQUFJZixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCMEIsR0FBRztRQUNISCxNQUFNTjtRQUNOVSxVQUFVO1FBQ1ZDLFVBQVU7SUFDWixrQkFBSTVCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFD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Q0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFB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LENBQUMsUUFBUTtRQUN4QjBCLEdBQUc7UUFDSEgsTUFBTU47UUFDTlUsVUFBVTtRQUNWQyxVQUFVO0lBQ1o7QUFDRjtBQUVBLElBQUlpb0IsZUFBZTtJQUFDO0NBQVE7QUFDNUIsSUFBSUMsY0FBYyxXQUFXLEdBQUUvcEIsaURBQVVBLENBQUMsU0FBVWUsSUFBSSxFQUFFQyxZQUFZO0lBQ3BFLElBQUlDLGFBQWFGLEtBQUtHLEtBQUssRUFDdkJBLFFBQVFELGVBQWUsS0FBSyxJQUFJLGlCQUFpQkEsWUFDakRFLFFBQVFqQiw4QkFBOEJhLE1BQU0rb0I7SUFFaEQscUJBQU83cEIsb0RBQWFBLENBQUMsT0FBT00sT0FBT2EsTUFBTSxDQUFDO1FBQ3hDQyxPQUFPO1FBQ1BDLFFBQVE7UUFDUkMsU0FBUztRQUNUQyxNQUFNO1FBQ05DLE9BQU87SUFDVCxHQUFHTixPQUFPO1FBQ1JPLEtBQUtWO0lBQ1Asa0JBQUlmLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEIwQixHQUFHO1FBQ0hILE1BQU1OO1FBQ05VLFVBQVU7UUFDVkMsVUFBVTtJQUNaO0FBQ0Y7QUFFNjZKLENBQzc2SiwyQ0FBMkMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9lbWJlZGNoYWluLWFkbWluLy4vbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC1pY29ucy9kaXN0L3JlYWN0LWljb25zLmVzbS5qcz9lMzU5Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZvcndhcmRSZWYsIGNyZWF0ZUVsZW1lbnQgfSBmcm9tICdyZWFjdCc7XG5cbmZ1bmN0aW9uIF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKHNvdXJjZSwgZXhjbHVkZWQpIHtcbiAgaWYgKHNvdXJjZSA9PSBudWxsKSByZXR1cm4ge307XG4gIHZhciB0YXJnZXQgPSB7fTtcbiAgdmFyIHNvdXJjZUtleXMgPSBPYmplY3Qua2V5cyhzb3VyY2UpO1xuICB2YXIga2V5LCBpO1xuXG4gIGZvciAoaSA9IDA7IGkgPCBzb3VyY2VLZXlzLmxlbmd0aDsgaSsrKSB7XG4gICAga2V5ID0gc291cmNlS2V5c1tpXTtcbiAgICBpZiAoZXhjbHVkZWQuaW5kZXhPZihrZXkpID49IDApIGNvbnRpbnVlO1xuICAgIHRhcmdldFtrZXldID0gc291cmNlW2tleV07XG4gIH1cblxuICByZXR1cm4gdGFyZ2V0O1xufVxuXG52YXIgX2V4Y2x1ZGVkID0gW1wiY29sb3JcIl07XG52YXIgQWNjZXNzaWJpbGl0eUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0wLjg3NzE5NyA3LjQ5OTg0QzAuODc3MTk3IDMuODQyMTYgMy44NDIzNCAwLjg3NzAxNCA3LjUwMDAzIDAuODc3MDE0QzExLjE1NzcgMC44NzcwMTQgMTQuMTIyOSAzLjg0MjE2IDE0LjEyMjkgNy40OTk4NEMxNC4xMjI5IDExLjE1NzUgMTEuMTU3NyAxNC4xMjI3IDcuNTAwMDMgMTQuMTIyN0MzLjg0MjM0IDE0LjEyMjcgMC44NzcxOTcgMTEuMTU3NSAwLjg3NzE5NyA3LjQ5OTg0Wk03LjUwMDAzIDEuODI3MDFDNC4zNjcwMiAxLjgyNzAxIDEuODI3MiA0LjM2NjgzIDEuODI3MiA3LjQ5OTg0QzEuODI3MiAxMC42MzI4IDQuMzY3MDIgMTMuMTcyNyA3LjUwMDAzIDEzLjE3MjdDMTAuNjMzIDEzLjE3MjcgMTMuMTcyOSAxMC42MzI4IDEzLjE3MjkgNy40OTk4NEMxMy4xNzI5IDQuMzY2ODMgMTAuNjMzIDEuODI3MDEgNy41MDAwMyAxLjgyNzAxWk03LjEyNDU3IDkuMDAwMDFDNy4wNjk5NCA5LjEyNzM1IDYuMzMxNjUgMTEuOTU5MiA2LjMzMTY1IDExLjk1OTJDNi4yNjAxOCAxMi4yMjYgNS45ODYwMSAxMi4zODQzIDUuNzE5MjggMTIuMzEyOEM1LjQ1MjU1IDEyLjI0MTMgNS4yOTQyNSAxMS45NjcyIDUuMzY1NzMgMTEuNzAwNEM1LjM2NTczIDExLjcwMDQgNi4yNDY2MSA4Ljg3MjY4IDYuMjQ2NjEgOC4yNzAwN1Y2LjgwMDk5TDQuMjg3NjMgNi4yNzYwOEM0LjAyMDkgNi4yMDQ2MSAzLjg2MjYxIDUuOTMwNDUgMy45MzQwOCA1LjY2MzcxQzQuMDA1NTUgNS4zOTY5OCA0LjI3OTcyIDUuMjM4NjkgNC41NDY0NSA1LjMxMDE2QzQuNTQ2NDUgNS4zMTAxNiA2LjIwMDQyIDUuODcyNjggNi44NDU3OSA1Ljg3MjY4SDguMTU1MDVDOC44MDA0MiA1Ljg3MjY4IDEwLjQ1MzQgNS4zMTA0MiAxMC40NTM0IDUuMzEwNDJDMTAuNzIwMiA1LjIzODk1IDEwLjk5NDMgNS4zOTcyNCAxMS4wNjU4IDUuNjYzOTdDMTEuMTM3MyA1LjkzMDcxIDEwLjk3OSA2LjIwNDg3IDEwLjcxMjIgNi4yNzYzNUw4Ljc0NjYxIDYuODAzMDNWOC4yNzAwN0M4Ljc0NjYxIDguODcyNjggOS42MjY2MyAxMS42OTcxIDkuNjI2NjMgMTEuNjk3MUM5LjY5ODEgMTEuOTYzOSA5LjUzOTggMTIuMjM4IDkuMjczMDcgMTIuMzA5NUM5LjAwNjM0IDEyLjM4MSA4LjczMjE3IDEyLjIyMjcgOC42NjA3IDExLjk1NkM4LjY2MDcgMTEuOTU2IDcuOTE5OTQgOS4xMjczNSA3Ljg2ODY2IDkuMDAwMDFDNy44MTk5NCA4Ljg3MjY4IDcuNjUwMDYgOC44NzI2OCA3LjY1MDA2IDguODcyNjhINy4zNDMxN0M3LjM0MzE3IDguODcyNjggNy4xNjk5NCA4Ljg3MjY4IDcuMTI0NTcgOS4wMDAwMVpNNy41MDA0MyA1LjEyMDA3QzguMTIxNzUgNS4xMjAwNyA4LjYyNTQzIDQuNjE2MzkgOC42MjU0MyAzLjk5NTA3QzguNjI1NDMgMy4zNzM3NSA4LjEyMTc1IDIuODcwMDcgNy41MDA0MyAyLjg3MDA3QzYuODc5MTEgMi44NzAwNyA2LjM3NTQzIDMuMzczNzUgNi4zNzU0MyAzLjk5NTA3QzYuMzc1NDMgNC42MTYzOSA2Ljg3OTExIDUuMTIwMDcgNy41MDA0MyA1LjEyMDA3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMSA9IFtcImNvbG9yXCJdO1xudmFyIEFjdGl2aXR5TG9nSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMCAxLjVDMCAxLjIyMzg2IDAuMjIzODU4IDEgMC41IDFIMi41QzIuNzc2MTQgMSAzIDEuMjIzODYgMyAxLjVDMyAxLjc3NjE0IDIuNzc2MTQgMiAyLjUgMkgwLjVDMC4yMjM4NTggMiAwIDEuNzc2MTQgMCAxLjVaTTQgMS41QzQgMS4yMjM4NiA0LjIyMzg2IDEgNC41IDFIMTQuNUMxNC43NzYxIDEgMTUgMS4yMjM4NiAxNSAxLjVDMTUgMS43NzYxNCAxNC43NzYxIDIgMTQuNSAySDQuNUM0LjIyMzg2IDIgNCAxLjc3NjE0IDQgMS41Wk00IDQuNUM0IDQuMjIzODYgNC4yMjM4NiA0IDQuNSA0SDExLjVDMTEuNzc2MSA0IDEyIDQuMjIzODYgMTIgNC41QzEyIDQuNzc2MTQgMTEuNzc2MSA1IDExLjUgNUg0LjVDNC4yMjM4NiA1IDQgNC43NzYxNCA0IDQuNVpNMCA3LjVDMCA3LjIyMzg2IDAuMjIzODU4IDcgMC41IDdIMi41QzIuNzc2MTQgNyAzIDcuMjIzODYgMyA3LjVDMyA3Ljc3NjE0IDIuNzc2MTQgOCAyLjUgOEgwLjVDMC4yMjM4NTggOCAwIDcuNzc2MTQgMCA3LjVaTTQgNy41QzQgNy4yMjM4NiA0LjIyMzg2IDcgNC41IDdIMTQuNUMxNC43NzYxIDcgMTUgNy4yMjM4NiAxNSA3LjVDMTUgNy43NzYxNCAxNC43NzYxIDggMTQuNSA4SDQuNUM0LjIyMzg2IDggNCA3Ljc3NjE0IDQgNy41Wk00IDEwLjVDNCAxMC4yMjM5IDQuMjIzODYgMTAgNC41IDEwSDExLjVDMTEuNzc2MSAxMCAxMiAxMC4yMjM5IDEyIDEwLjVDMTIgMTAuNzc2MSAxMS43NzYxIDExIDExLjUgMTFINC41QzQuMjIzODYgMTEgNCAxMC43NzYxIDQgMTAuNVpNMCAxMy41QzAgMTMuMjIzOSAwLjIyMzg1OCAxMyAwLjUgMTNIMi41QzIuNzc2MTQgMTMgMyAxMy4yMjM5IDMgMTMuNUMzIDEzLjc3NjEgMi43NzYxNCAxNCAyLjUgMTRIMC41QzAuMjIzODU4IDE0IDAgMTMuNzc2MSAwIDEzLjVaTTQgMTMuNUM0IDEzLjIyMzkgNC4yMjM4NiAxMyA0LjUgMTNIMTQuNUMxNC43NzYxIDEzIDE1IDEzLjIyMzkgMTUgMTMuNUMxNSAxMy43NzYxIDE0Ljc3NjEgMTQgMTQuNSAxNEg0LjVDNC4yMjM4NiAxNCA0IDEzLjc3NjEgNCAxMy41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMiA9IFtcImNvbG9yXCJdO1xudmFyIEFsaWduQmFzZWxpbmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMC41IDEuNzUwMDNDMTAuNzEwNyAxLjc1MDAzIDEwLjg5ODggMS44ODIxNyAxMC45NzAzIDIuMDgwNDJMMTMuOTcwMyAxMC40QzE0LjA2NCAxMC42NTk4IDEzLjkyOTMgMTAuOTQ2MyAxMy42Njk2IDExLjA0QzEzLjQwOTggMTEuMTMzNiAxMy4xMjMzIDEwLjk5OSAxMy4wMjk2IDEwLjczOTJMMTIuMDQ3NyA4LjAxNjA2SDguOTUyMjdMNy45NzAzMSAxMC43MzkyQzcuODc2NjQgMTAuOTk5IDcuNTkwMTIgMTEuMTMzNiA3LjMzMDM1IDExLjA0QzcuMDcwNTggMTAuOTQ2MyA2LjkzNTkzIDEwLjY1OTggNy4wMjk2IDEwLjRMMTAuMDI5NiAyLjA4MDQyQzEwLjEwMTEgMS44ODIxNyAxMC4yODkyIDEuNzUwMDMgMTAuNSAxLjc1MDAzWk0xMC41IDMuNzI0MDJMMTEuNzQxMSA3LjE2NjA2SDkuMjU4NzdMMTAuNSAzLjcyNDAyWk0yLjQ5OTQ5IDIuMDk5OTdDMi43MjA0IDIuMDk5OTcgMi44OTk0OSAyLjI3OTA2IDIuODk5NDkgMi40OTk5N0wyLjg5OTQ5IDkuNTM0MjhMNC4yMTY2NCA4LjIxNzEzQzQuMzcyODUgOC4wNjA5MiA0LjYyNjEyIDguMDYwOTIgNC43ODIzMyA4LjIxNzEzQzQuOTM4NTQgOC4zNzMzNCA0LjkzODU0IDguNjI2NiA0Ljc4MjMzIDguNzgyODFMMi43ODIzMyAxMC43ODI4QzIuNzA3MzIgMTAuODU3OCAyLjYwNTU3IDEwLjkgMi40OTk0OSAxMC45QzIuMzkzNCAxMC45IDIuMjkxNjYgMTAuODU3OCAyLjIxNjY0IDEwLjc4MjhMMC4yMTY2NDUgOC43ODI4MUMwLjA2MDQzNDkgOC42MjY2IDAuMDYwNDM0OSA4LjM3MzM0IDAuMjE2NjQ1IDguMjE3MTNDMC4zNzI4NTQgOC4wNjA5MiAwLjYyNjEyIDguMDYwOTIgMC43ODIzMyA4LjIxNzEzTDIuMDk5NDkgOS41MzQyOEwyLjA5OTQ5IDIuNDk5OTdDMi4wOTk0OSAyLjI3OTA2IDIuMjc4NTcgMi4wOTk5NyAyLjQ5OTQ5IDIuMDk5OTdaTTAuMDk5OTY5NSAxMy41MDAxQzAuMDk5OTY5NSAxMy4yNzkxIDAuMjc5MDU2IDEzLjEwMDEgMC40OTk5NjkgMTMuMTAwMUgxNC41QzE0LjcyMDkgMTMuMTAwMSAxNC45IDEzLjI3OTEgMTQuOSAxMy41MDAxQzE0LjkgMTMuNzIxIDE0LjcyMDkgMTMuOTAwMSAxNC41IDEzLjkwMDFIMC40OTk5NjlDMC4yNzkwNTYgMTMuOTAwMSAwLjA5OTk2OTUgMTMuNzIxIDAuMDk5OTY5NSAxMy41MDAxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMyA9IFtcImNvbG9yXCJdO1xudmFyIEFsaWduQm90dG9tSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOSAzQzkgMi40NDc3MiA4LjU1MjI5IDIgOCAySDdDNi40NDc3MiAyIDYgMi40NDc3MiA2IDNMNiAxNEgxLjVDMS4yMjM4NiAxNCAxIDE0LjIyMzkgMSAxNC41QzEgMTQuNzc2MSAxLjIyMzg2IDE1IDEuNSAxNUw2IDE1SDlIMTMuNUMxMy43NzYxIDE1IDE0IDE0Ljc3NjEgMTQgMTQuNUMxNCAxNC4yMjM5IDEzLjc3NjEgMTQgMTMuNSAxNEg5VjNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0ID0gW1wiY29sb3JcIl07XG52YXIgQWxpZ25DZW50ZXJIb3Jpem9udGFsbHlJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjk5OTg4IDZDMS40NDc1OSA2IDAuOTk5ODc3IDYuNDQ3NzIgMC45OTk4NzcgN0wwLjk5OTg3NyA4QzAuOTk5ODc3IDguNTUyMjggMS40NDc1OSA5IDEuOTk5ODggOUw2Ljk5OTg4IDlMNi45OTk4OCAxMy41QzYuOTk5ODggMTMuNzc2MSA3LjIyMzc0IDE0IDcuNDk5ODggMTRDNy43NzYwMiAxNCA3Ljk5OTg4IDEzLjc3NjEgNy45OTk4OCAxMy41TDcuOTk5ODggOUwxMi45OTk5IDlDMTMuNTUyMiA5IDEzLjk5OTkgOC41NTIyOCAxMy45OTk5IDhMMTMuOTk5OSA3QzEzLjk5OTkgNi40NDc3MiAxMy41NTIyIDYgMTIuOTk5OSA2TDcuOTk5ODggNkw3Ljk5OTg4IDEuNUM3Ljk5OTg4IDEuMjIzODYgNy43NzYwMiAxIDcuNDk5ODggMUM3LjIyMzczIDEgNi45OTk4OCAxLjIyMzg2IDYuOTk5ODggMS41TDYuOTk5ODggNkwxLjk5OTg4IDZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ1ID0gW1wiY29sb3JcIl07XG52YXIgQWxpZ25DZW50ZXJWZXJ0aWNhbGx5SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ1KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNi45OTk4OCAxQzYuNDQ3NTkgMSA1Ljk5OTg4IDEuNDQ3NzIgNS45OTk4OCAyVjdIMS40OTk4OEMxLjIyMzc0IDcgMC45OTk4NzggNy4yMjM4NiAwLjk5OTg3OCA3LjVDMC45OTk4NzggNy43NzYxNCAxLjIyMzc0IDggMS40OTk4OCA4SDUuOTk5ODhWMTNDNS45OTk4OCAxMy41NTIzIDYuNDQ3NTkgMTQgNi45OTk4OCAxNEg3Ljk5OTg4QzguNTUyMTYgMTQgOC45OTk4OCAxMy41NTIzIDguOTk5ODggMTNWOEgxMy40OTk5QzEzLjc3NiA4IDEzLjk5OTkgNy43NzYxNCAxMy45OTk5IDcuNUMxMy45OTk5IDcuMjIzODYgMTMuNzc2IDcgMTMuNDk5OSA3SDguOTk5ODhWMkM4Ljk5OTg4IDEuNDQ3NzIgOC41NTIxNiAxIDcuOTk5ODggMUw2Ljk5OTg4IDFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ2ID0gW1wiY29sb3JcIl07XG52YXIgQWxpZ25MZWZ0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ2KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC40OTk5OTUgMC45OTk5OTVDMC4yMjM4NTUgMC45OTk5OTUgLTUuNTg0NThlLTA3IDEuMjIzODUgLTUuNDYzODhlLTA3IDEuNDk5OTlMLTIuMTg1NTRlLTA4IDEzLjQ5OTlDLTkuNzg0OTJlLTA5IDEzLjc3NiAwLjIyMzg1NSAxMy45OTk5IDAuNDk5OTk1IDEzLjk5OTlDMC43NzYxMzYgMTMuOTk5OSAwLjk5OTk5MSAxMy43NzYgMC45OTk5OTEgMTMuNDk5OUwwLjk5OTk5MSA4Ljk5OTkzTDEyIDguOTk5OTNDMTIuNTUyMyA4Ljk5OTkzIDEzIDguNTUyMjIgMTMgNy45OTk5M0wxMyA2Ljk5OTk0QzEzIDYuNDQ3NjYgMTIuNTUyMyA1Ljk5OTk1IDEyIDUuOTk5OTVMMC45OTk5OTEgNS45OTk5NUwwLjk5OTk5MSAxLjQ5OTk5QzAuOTk5OTkxIDEuMjIzODUgMC43NzYxMzUgMC45OTk5OTUgMC40OTk5OTUgMC45OTk5OTVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ3ID0gW1wiY29sb3JcIl07XG52YXIgQWxpZ25SaWdodEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTE0LjQ5OTkgMUMxNC4yMjM3IDEgMTMuOTk5OSAxLjIyMzg2IDEzLjk5OTkgMS41TDEzLjk5OTkgNkwyLjk5OTg4IDZDMi40NDc1OSA2IDEuOTk5ODggNi40NDc3MiAxLjk5OTg4IDdMMS45OTk4OCA4QzEuOTk5ODggOC41NTIyOCAyLjQ0NzU5IDkgMi45OTk4OCA5TDEzLjk5OTkgOUwxMy45OTk5IDEzLjVDMTMuOTk5OSAxMy43NzYxIDE0LjIyMzcgMTQgMTQuNDk5OSAxNEMxNC43NzYgMTQgMTQuOTk5OSAxMy43NzYxIDE0Ljk5OTkgMTMuNUwxNC45OTk5IDlMMTQuOTk5OSA2TDE0Ljk5OTkgMS41QzE0Ljk5OTkgMS4yMjM4NiAxNC43NzYgMSAxNC40OTk5IDFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ4ID0gW1wiY29sb3JcIl07XG52YXIgQWxpZ25Ub3BJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDgpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjUgMEMxLjIyMzg2IDAgMSAwLjIyMzg1OCAxIDAuNUMxIDAuNzc2MTQyIDEuMjIzODYgMSAxLjUgMUg2VjEyQzYgMTIuNTUyMyA2LjQ0NzcyIDEzIDcgMTNIOEM4LjU1MjI4IDEzIDkgMTIuNTUyMyA5IDEyVjFIMTMuNUMxMy43NzYxIDEgMTQgMC43NzYxNDIgMTQgMC41QzE0IDAuMjIzODU4IDEzLjc3NjEgMCAxMy41IDBIOUg2SDEuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDkgPSBbXCJjb2xvclwiXTtcbnZhciBBbGxTaWRlc0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkOSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNSAwLjc1TDkuNzUgM0g1LjI1TDcuNSAwLjc1Wk03LjUgMTQuMjVMOS43NSAxMkg1LjI1TDcuNSAxNC4yNVpNMyA1LjI1TDAuNzUgNy41TDMgOS43NVY1LjI1Wk0xNC4yNSA3LjVMMTIgNS4yNVY5Ljc1TDE0LjI1IDcuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJGEgPSBbXCJjb2xvclwiXTtcbnZhciBBbmdsZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkYSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTguODkxNCAyLjE5MzdDOS4xMTU4IDIuMzU0NjQgOS4xNjcyNSAyLjY2NzAxIDkuMDA2MzEgMi44OTE0MUwyLjQ3Mzg4IDEySDEzLjVDMTMuNzc2MSAxMiAxNCAxMi4yMjM5IDE0IDEyLjVDMTQgMTIuNzc2MiAxMy43NzYxIDEzIDEzLjUgMTNIMS41QzEuMzEyNTQgMTMgMS4xNDA4MiAxMi44OTUyIDEuMDU1MiAxMi43Mjg0QzAuOTY5NTc4IDEyLjU2MTYgMC45ODQ0MzggMTIuMzYxIDEuMDkzNjkgMTIuMjA4Nkw4LjE5MzY5IDIuMzA4NjJDOC4zNTQ2MiAyLjA4NDIyIDguNjY3IDIuMDMyNzcgOC44OTE0IDIuMTkzN1pNMTEuMSA2LjUwMDAxQzExLjEgNi4yMjM4NyAxMS4zMjM4IDYuMDAwMDEgMTEuNiA2LjAwMDAxQzExLjg3NjEgNi4wMDAwMSAxMi4xIDYuMjIzODcgMTIuMSA2LjUwMDAxQzEyLjEgNi43NzYxNSAxMS44NzYxIDcuMDAwMDEgMTEuNiA3LjAwMDAxQzExLjMyMzggNy4wMDAwMSAxMS4xIDYuNzc2MTUgMTEuMSA2LjUwMDAxWk0xMC40IDQuMDAwMDFDMTAuMTIzOSA0LjAwMDAxIDkuOTAwMDMgNC4yMjM4NyA5LjkwMDAzIDQuNTAwMDFDOS45MDAwMyA0Ljc3NjE1IDEwLjEyMzkgNS4wMDAwMSAxMC40IDUuMDAwMDFDMTAuNjc2MiA1LjAwMDAxIDEwLjkgNC43NzYxNSAxMC45IDQuNTAwMDFDMTAuOSA0LjIyMzg3IDEwLjY3NjIgNC4wMDAwMSAxMC40IDQuMDAwMDFaTTEyLjEgOC41MDAwMUMxMi4xIDguMjIzODcgMTIuMzIzOCA4LjAwMDAxIDEyLjYgOC4wMDAwMUMxMi44NzYxIDguMDAwMDEgMTMuMSA4LjIyMzg3IDEzLjEgOC41MDAwMUMxMy4xIDguNzc2MTUgMTIuODc2MSA5LjAwMDAxIDEyLjYgOS4wMDAwMUMxMi4zMjM4IDkuMDAwMDEgMTIuMSA4Ljc3NjE1IDEyLjEgOC41MDAwMVpNMTMuNCAxMEMxMy4xMjM5IDEwIDEyLjkgMTAuMjIzOSAxMi45IDEwLjVDMTIuOSAxMC43NzYxIDEzLjEyMzkgMTEgMTMuNCAxMUMxMy42NzYyIDExIDEzLjkgMTAuNzc2MSAxMy45IDEwLjVDMTMuOSAxMC4yMjM5IDEzLjY3NjIgMTAgMTMuNCAxMFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJGIgPSBbXCJjb2xvclwiXTtcbnZhciBBcmNoaXZlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRiKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy4zMDkwMiAxQzIuOTMwMjUgMSAyLjU4Mzk4IDEuMjE0IDIuNDE0NTkgMS41NTI3OUwxLjA1Mjc5IDQuMjc2MzlDMS4wMTgwNyA0LjM0NTgyIDEgNC40MjIzOCAxIDQuNVYxM0MxIDEzLjU1MjMgMS40NDc3MiAxNCAyIDE0SDEzQzEzLjU1MjMgMTQgMTQgMTMuNTUyMyAxNCAxM1Y0LjVDMTQgNC40MjIzOCAxMy45ODE5IDQuMzQ1ODIgMTMuOTQ3MiA0LjI3NjM5TDEyLjU4NTQgMS41NTI4MUMxMi40MTYgMS4yMTQwMyAxMi4wNjk4IDEuMDAwMDMgMTEuNjkxIDEuMDAwMDNMNy41IDEuMDAwMDFMMy4zMDkwMiAxWk0zLjMwOTAyIDJMNyAyLjAwMDAxVjRIMi4zMDkwMkwzLjMwOTAyIDJaTTggNFYyLjAwMDAyTDExLjY5MSAyLjAwMDAzTDEyLjY5MSA0SDhaTTcuNSA1SDEzVjEzSDJWNUg3LjVaTTUuNSA3QzUuMjIzODYgNyA1IDcuMjIzODYgNSA3LjVDNSA3Ljc3NjE0IDUuMjIzODYgOCA1LjUgOEg5LjVDOS43NzYxNCA4IDEwIDcuNzc2MTQgMTAgNy41QzEwIDcuMjIzODYgOS43NzYxNCA3IDkuNSA3SDUuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJGMgPSBbXCJjb2xvclwiXTtcbnZhciBBcnJvd0JvdHRvbUxlZnRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJGMpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMS4zNTM2IDMuNjQ2NDRDMTEuNTQ4OCAzLjg0MTcgMTEuNTQ4OCA0LjE1ODI4IDExLjM1MzYgNC4zNTM1NEw0LjcwNzExIDExTDkgMTFDOS4yNzYxNCAxMSA5LjUgMTEuMjIzOSA5LjUgMTEuNUM5LjUgMTEuNzc2MSA5LjI3NjE0IDEyIDkgMTJMMy41IDEyQzMuMzY3MzkgMTIgMy4yNDAyMSAxMS45NDczIDMuMTQ2NDUgMTEuODUzNkMzLjA1MjY4IDExLjc1OTggMyAxMS42MzI2IDMgMTEuNUwzIDUuOTk5OTlDMyA1LjcyMzg1IDMuMjIzODYgNS40OTk5OSAzLjUgNS40OTk5OUMzLjc3NjE0IDUuNDk5OTkgNCA1LjcyMzg1IDQgNS45OTk5OVYxMC4yOTI5TDEwLjY0NjQgMy42NDY0M0MxMC44NDE3IDMuNDUxMTcgMTEuMTU4MyAzLjQ1MTE3IDExLjM1MzYgMy42NDY0NFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJGQgPSBbXCJjb2xvclwiXTtcbnZhciBBcnJvd0JvdHRvbVJpZ2h0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRkKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy42NDY0NSAzLjY0NjQ0QzMuNDUxMTggMy44NDE3IDMuNDUxMTggNC4xNTgyOCAzLjY0NjQ1IDQuMzUzNTRMMTAuMjkyOSAxMUw2IDExQzUuNzIzODYgMTEgNS41IDExLjIyMzkgNS41IDExLjVDNS41IDExLjc3NjEgNS43MjM4NiAxMiA2IDEyTDExLjUgMTJDMTEuNjMyNiAxMiAxMS43NTk4IDExLjk0NzMgMTEuODUzNiAxMS44NTM2QzExLjk0NzMgMTEuNzU5OCAxMiAxMS42MzI2IDEyIDExLjVMMTIgNS45OTk5OUMxMiA1LjcyMzg1IDExLjc3NjEgNS40OTk5OSAxMS41IDUuNDk5OTlDMTEuMjIzOSA1LjQ5OTk5IDExIDUuNzIzODUgMTEgNS45OTk5OVYxMC4yOTI5TDQuMzUzNTUgMy42NDY0M0M0LjE1ODI5IDMuNDUxMTcgMy44NDE3MSAzLjQ1MTE3IDMuNjQ2NDUgMy42NDY0NFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJGUgPSBbXCJjb2xvclwiXTtcbnZhciBBcnJvd0Rvd25JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJGUpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjUgMkM3Ljc3NjE0IDIgOCAyLjIyMzg2IDggMi41TDggMTEuMjkyOUwxMS4xNDY0IDguMTQ2NDVDMTEuMzQxNyA3Ljk1MTE4IDExLjY1ODMgNy45NTExOCAxMS44NTM2IDguMTQ2NDVDMTIuMDQ4OCA4LjM0MTcxIDEyLjA0ODggOC42NTgyOSAxMS44NTM2IDguODUzNTVMNy44NTM1NSAxMi44NTM2QzcuNzU5NzkgMTIuOTQ3MyA3LjYzMjYxIDEzIDcuNSAxM0M3LjM2NzM5IDEzIDcuMjQwMjEgMTIuOTQ3MyA3LjE0NjQ1IDEyLjg1MzZMMy4xNDY0NSA4Ljg1MzU1QzIuOTUxMTggOC42NTgyOSAyLjk1MTE4IDguMzQxNzEgMy4xNDY0NSA4LjE0NjQ1QzMuMzQxNzEgNy45NTExOCAzLjY1ODI5IDcuOTUxMTggMy44NTM1NSA4LjE0NjQ1TDcgMTEuMjkyOUw3IDIuNUM3IDIuMjIzODYgNy4yMjM4NiAyIDcuNSAyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkZiA9IFtcImNvbG9yXCJdO1xudmFyIEFycm93TGVmdEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkZik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTYuODUzNTUgMy4xNDY0NUM3LjA0ODgyIDMuMzQxNzEgNy4wNDg4MiAzLjY1ODI5IDYuODUzNTUgMy44NTM1NUwzLjcwNzExIDdIMTIuNUMxMi43NzYxIDcgMTMgNy4yMjM4NiAxMyA3LjVDMTMgNy43NzYxNCAxMi43NzYxIDggMTIuNSA4SDMuNzA3MTFMNi44NTM1NSAxMS4xNDY0QzcuMDQ4ODIgMTEuMzQxNyA3LjA0ODgyIDExLjY1ODMgNi44NTM1NSAxMS44NTM2QzYuNjU4MjkgMTIuMDQ4OCA2LjM0MTcxIDEyLjA0ODggNi4xNDY0NSAxMS44NTM2TDIuMTQ2NDUgNy44NTM1NUMxLjk1MTE4IDcuNjU4MjkgMS45NTExOCA3LjM0MTcxIDIuMTQ2NDUgNy4xNDY0NUw2LjE0NjQ1IDMuMTQ2NDVDNi4zNDE3MSAyLjk1MTE4IDYuNjU4MjkgMi45NTExOCA2Ljg1MzU1IDMuMTQ2NDVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRnID0gW1wiY29sb3JcIl07XG52YXIgQXJyb3dSaWdodEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkZyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTguMTQ2NDUgMy4xNDY0NUM4LjM0MTcxIDIuOTUxMTggOC42NTgyOSAyLjk1MTE4IDguODUzNTUgMy4xNDY0NUwxMi44NTM2IDcuMTQ2NDVDMTMuMDQ4OCA3LjM0MTcxIDEzLjA0ODggNy42NTgyOSAxMi44NTM2IDcuODUzNTVMOC44NTM1NSAxMS44NTM2QzguNjU4MjkgMTIuMDQ4OCA4LjM0MTcxIDEyLjA0ODggOC4xNDY0NSAxMS44NTM2QzcuOTUxMTggMTEuNjU4MyA3Ljk1MTE4IDExLjM0MTcgOC4xNDY0NSAxMS4xNDY0TDExLjI5MjkgOEgyLjVDMi4yMjM4NiA4IDIgNy43NzYxNCAyIDcuNUMyIDcuMjIzODYgMi4yMjM4NiA3IDIuNSA3SDExLjI5MjlMOC4xNDY0NSAzLjg1MzU1QzcuOTUxMTggMy42NTgyOSA3Ljk1MTE4IDMuMzQxNzEgOC4xNDY0NSAzLjE0NjQ1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkaCA9IFtcImNvbG9yXCJdO1xudmFyIEFycm93VG9wTGVmdEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkaCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTExLjM1MzYgMTEuMzUzNkMxMS41NDg4IDExLjE1ODMgMTEuNTQ4OCAxMC44NDE3IDExLjM1MzYgMTAuNjQ2NUw0LjcwNzExIDRMOSA0QzkuMjc2MTQgNCA5LjUgMy43NzYxNCA5LjUgMy41QzkuNSAzLjIyMzg2IDkuMjc2MTQgMyA5IDNMMy41IDNDMy4zNjczOSAzIDMuMjQwMjEgMy4wNTI2OCAzLjE0NjQ1IDMuMTQ2NDVDMy4wNTI2OCAzLjI0MDIyIDMgMy4zNjczOSAzIDMuNUwzIDkuMDAwMDFDMyA5LjI3NjE1IDMuMjIzODYgOS41MDAwMSAzLjUgOS41MDAwMUMzLjc3NjE0IDkuNTAwMDEgNCA5LjI3NjE1IDQgOS4wMDAwMVY0LjcwNzExTDEwLjY0NjQgMTEuMzUzNkMxMC44NDE3IDExLjU0ODggMTEuMTU4MyAxMS41NDg4IDExLjM1MzYgMTEuMzUzNlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJGkgPSBbXCJjb2xvclwiXTtcbnZhciBBcnJvd1RvcFJpZ2h0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRpKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy42NDY0NSAxMS4zNTM2QzMuNDUxMTggMTEuMTU4MyAzLjQ1MTE4IDEwLjg0MTcgMy42NDY0NSAxMC42NDY1TDEwLjI5MjkgNEw2IDRDNS43MjM4NiA0IDUuNSAzLjc3NjE0IDUuNSAzLjVDNS41IDMuMjIzODYgNS43MjM4NiAzIDYgM0wxMS41IDNDMTEuNjMyNiAzIDExLjc1OTggMy4wNTI2OCAxMS44NTM2IDMuMTQ2NDVDMTEuOTQ3MyAzLjI0MDIyIDEyIDMuMzY3MzkgMTIgMy41TDEyIDkuMDAwMDFDMTIgOS4yNzYxNSAxMS43NzYxIDkuNTAwMDEgMTEuNSA5LjUwMDAxQzExLjIyMzkgOS41MDAwMSAxMSA5LjI3NjE1IDExIDkuMDAwMDFWNC43MDcxMUw0LjM1MzU1IDExLjM1MzZDNC4xNTgyOSAxMS41NDg4IDMuODQxNzEgMTEuNTQ4OCAzLjY0NjQ1IDExLjM1MzZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRqID0gW1wiY29sb3JcIl07XG52YXIgQXJyb3dVcEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkaik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuMTQ2NDUgMi4xNDY0NUM3LjM0MTcxIDEuOTUxMTggNy42NTgyOSAxLjk1MTE4IDcuODUzNTUgMi4xNDY0NUwxMS44NTM2IDYuMTQ2NDVDMTIuMDQ4OCA2LjM0MTcxIDEyLjA0ODggNi42NTgyOSAxMS44NTM2IDYuODUzNTVDMTEuNjU4MyA3LjA0ODgyIDExLjM0MTcgNy4wNDg4MiAxMS4xNDY0IDYuODUzNTVMOCAzLjcwNzExTDggMTIuNUM4IDEyLjc3NjEgNy43NzYxNCAxMyA3LjUgMTNDNy4yMjM4NiAxMyA3IDEyLjc3NjEgNyAxMi41TDcgMy43MDcxMUwzLjg1MzU1IDYuODUzNTVDMy42NTgyOSA3LjA0ODgyIDMuMzQxNzEgNy4wNDg4MiAzLjE0NjQ1IDYuODUzNTVDMi45NTExOCA2LjY1ODI5IDIuOTUxMTggNi4zNDE3MSAzLjE0NjQ1IDYuMTQ2NDVMNy4xNDY0NSAyLjE0NjQ1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkayA9IFtcImNvbG9yXCJdO1xudmFyIEFzcGVjdFJhdGlvSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRrKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMi41IDJIMTIuNUMxMi43NzYxIDIgMTMgMi4yMjM4NiAxMyAyLjVWMTIuNUMxMyAxMi43NzYxIDEyLjc3NjEgMTMgMTIuNSAxM0gyLjVDMi4yMjM4NiAxMyAyIDEyLjc3NjEgMiAxMi41VjIuNUMyIDIuMjIzODYgMi4yMjM4NiAyIDIuNSAyWk0xIDIuNUMxIDEuNjcxNTcgMS42NzE1NyAxIDIuNSAxSDEyLjVDMTMuMzI4NCAxIDE0IDEuNjcxNTcgMTQgMi41VjEyLjVDMTQgMTMuMzI4NCAxMy4zMjg0IDE0IDEyLjUgMTRIMi41QzEuNjcxNTcgMTQgMSAxMy4zMjg0IDEgMTIuNVYyLjVaTTcuNSA0QzcuNzc2MTQgNCA4IDMuNzc2MTQgOCAzLjVDOCAzLjIyMzg2IDcuNzc2MTQgMyA3LjUgM0M3LjIyMzg2IDMgNyAzLjIyMzg2IDcgMy41QzcgMy43NzYxNCA3LjIyMzg2IDQgNy41IDRaTTggNS41QzggNS43NzYxNCA3Ljc3NjE0IDYgNy41IDZDNy4yMjM4NiA2IDcgNS43NzYxNCA3IDUuNUM3IDUuMjIzODYgNy4yMjM4NiA1IDcuNSA1QzcuNzc2MTQgNSA4IDUuMjIzODYgOCA1LjVaTTcuNSA4QzcuNzc2MTQgOCA4IDcuNzc2MTQgOCA3LjVDOCA3LjIyMzg2IDcuNzc2MTQgNyA3LjUgN0M3LjIyMzg2IDcgNyA3LjIyMzg2IDcgNy41QzcgNy43NzYxNCA3LjIyMzg2IDggNy41IDhaTTEwIDcuNUMxMCA3Ljc3NjE0IDkuNzc2MTQgOCA5LjUgOEM5LjIyMzg2IDggOSA3Ljc3NjE0IDkgNy41QzkgNy4yMjM4NiA5LjIyMzg2IDcgOS41IDdDOS43NzYxNCA3IDEwIDcuMjIzODYgMTAgNy41Wk0xMS41IDhDMTEuNzc2MSA4IDEyIDcuNzc2MTQgMTIgNy41QzEyIDcuMjIzODYgMTEuNzc2MSA3IDExLjUgN0MxMS4yMjM5IDcgMTEgNy4yMjM4NiAxMSA3LjVDMTEgNy43NzYxNCAxMS4yMjM5IDggMTEuNSA4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkbCA9IFtcImNvbG9yXCJdO1xudmFyIEF2YXRhckljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkbCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTAuODc3MDE0IDcuNDk5ODhDMC44NzcwMTQgMy44NDIxOSAzLjg0MjE2IDAuODc3MDQ1IDcuNDk5ODUgMC44NzcwNDVDMTEuMTU3NSAwLjg3NzA0NSAxNC4xMjI3IDMuODQyMTkgMTQuMTIyNyA3LjQ5OTg4QzE0LjEyMjcgMTEuMTU3NSAxMS4xNTc1IDE0LjEyMjcgNy40OTk4NSAxNC4xMjI3QzMuODQyMTYgMTQuMTIyNyAwLjg3NzAxNCAxMS4xNTc1IDAuODc3MDE0IDcuNDk5ODhaTTcuNDk5ODUgMS44MjcwNEM0LjM2NjgzIDEuODI3MDQgMS44MjcwMSA0LjM2Njg2IDEuODI3MDEgNy40OTk4OEMxLjgyNzAxIDguOTcxOTYgMi4zODc3NCAxMC4zMTMxIDMuMzA3MjcgMTEuMzIxM0M0LjE5MDc0IDkuOTQxMTkgNS43MzgxOCA5LjAyNDk5IDcuNTAwMjMgOS4wMjQ5OUM5LjI2MjA2IDkuMDI0OTkgMTAuODA5MyA5Ljk0MDk3IDExLjY5MjkgMTEuMzIwOEMxMi42MTIxIDEwLjMxMjcgMTMuMTcyNyA4Ljk3MTcyIDEzLjE3MjcgNy40OTk4OEMxMy4xNzI3IDQuMzY2ODYgMTAuNjMyOCAxLjgyNzA0IDcuNDk5ODUgMS44MjcwNFpNMTAuOTgxOCAxMS45Nzg3QzEwLjI4MzkgMTAuNzc5NSA4Ljk4NTcgOS45NzQ5OSA3LjUwMDIzIDkuOTc0OTlDNi4wMTQ1OCA5Ljk3NDk5IDQuNzE2MjQgMTAuNzc5NyA0LjAxODQ1IDExLjk3OTFDNC45Nzk1MiAxMi43MjcyIDYuMTg3NjUgMTMuMTcyNyA3LjQ5OTg1IDEzLjE3MjdDOC44MTIyNyAxMy4xNzI3IDEwLjAyMDYgMTIuNzI3IDEwLjk4MTggMTEuOTc4N1pNNS4xNDk5OSA2LjUwNDg3QzUuMTQ5OTkgNS4yMDcgNi4yMDIxMiA0LjE1NDg3IDcuNDk5OTkgNC4xNTQ4N0M4Ljc5Nzg2IDQuMTU0ODcgOS44NDk5OSA1LjIwNyA5Ljg0OTk5IDYuNTA0ODdDOS44NDk5OSA3LjgwMjc0IDguNzk3ODYgOC44NTQ4NyA3LjQ5OTk5IDguODU0ODdDNi4yMDIxMiA4Ljg1NDg3IDUuMTQ5OTkgNy44MDI3NCA1LjE0OTk5IDYuNTA0ODdaTTcuNDk5OTkgNS4xMDQ4N0M2LjcyNjc5IDUuMTA0ODcgNi4wOTk5OSA1LjczMTY3IDYuMDk5OTkgNi41MDQ4N0M2LjA5OTk5IDcuMjc4MDcgNi43MjY3OSA3LjkwNDg3IDcuNDk5OTkgNy45MDQ4N0M4LjI3MzE5IDcuOTA0ODcgOC44OTk5OSA3LjI3ODA3IDguODk5OTkgNi41MDQ4N0M4Ljg5OTk5IDUuNzMxNjcgOC4yNzMxOSA1LjEwNDg3IDcuNDk5OTkgNS4xMDQ4N1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJG0gPSBbXCJjb2xvclwiXTtcbnZhciBCYWNrcGFja0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkbSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUgMUM1IDAuNDQ3NzE1IDUuNDQ3NzIgMCA2IDBIOUM5LjU1MjI4IDAgMTAgMC40NDc3MTUgMTAgMVYySDE0QzE0LjU1MjMgMiAxNSAyLjQ0NzcyIDE1IDNWNkMxNSA2Ljg4ODggMTQuNjEzMSA3LjY4NzM0IDE0IDguMjM2MDhWMTEuNUMxNCAxMi4zMjg0IDEzLjMyODQgMTMgMTIuNSAxM0gyLjVDMS42NzE1NyAxMyAxIDEyLjMyODQgMSAxMS41VjguMjM1OUMwLjM4Njk3IDcuNjg3MjEgMCA2Ljg4ODgzIDAgNlYzQzAgMi40NDc3MiAwLjQ0NzcxNiAyIDEgMkg1VjFaTTkgMVYySDZWMUg5Wk0xIDNINUg1LjVIOS41SDEwSDE0VjZDMTQgNi42NTQgMTMuNjg2NiA3LjIzNDY3IDEzLjE5OTcgNy42MDA0QzEyLjg2NTUgNy44NTE0NCAxMi40NTA4IDggMTIgOEg4VjcuNUM4IDcuMjIzODYgNy43NzYxNCA3IDcuNSA3QzcuMjIzODYgNyA3IDcuMjIzODYgNyA3LjVWOEgzQzIuNTQ5MyA4IDIuMTM0NiA3Ljg1MTMzIDEuODAwMjkgNy42MDAyMkMxLjMxMzM1IDcuMjM0NDYgMSA2LjY1Mzk2IDEgNlYzWk03IDlIM0MyLjY0OTYxIDkgMi4zMTI5MiA4LjkzOTcyIDIgOC44MjkwNVYxMS41QzIgMTEuNzc2MSAyLjIyMzg2IDEyIDIuNSAxMkgxMi41QzEyLjc3NjEgMTIgMTMgMTEuNzc2MSAxMyAxMS41VjguODI5MTVDMTIuNjg3MSA4LjkzOTc4IDEyLjM1MDQgOSAxMiA5SDhWOS41QzggOS43NzYxNCA3Ljc3NjE0IDEwIDcuNSAxMEM3LjIyMzg2IDEwIDcgOS43NzYxNCA3IDkuNVY5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkbiA9IFtcImNvbG9yXCJdO1xudmFyIEJhZGdlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRuKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy41IDZIMTEuNUMxMi4zMjg0IDYgMTMgNi42NzE1NyAxMyA3LjVDMTMgOC4zMjg0MyAxMi4zMjg0IDkgMTEuNSA5SDMuNUMyLjY3MTU3IDkgMiA4LjMyODQzIDIgNy41QzIgNi42NzE1NyAyLjY3MTU3IDYgMy41IDZaTTEgNy41QzEgNi4xMTkyOSAyLjExOTI5IDUgMy41IDVIMTEuNUMxMi44ODA3IDUgMTQgNi4xMTkyOSAxNCA3LjVDMTQgOC44ODA3MSAxMi44ODA3IDEwIDExLjUgMTBIMy41QzIuMTE5MjkgMTAgMSA4Ljg4MDcxIDEgNy41Wk00LjUgN0M0LjIyMzg2IDcgNCA3LjIyMzg2IDQgNy41QzQgNy43NzYxNCA0LjIyMzg2IDggNC41IDhIMTAuNUMxMC43NzYxIDggMTEgNy43NzYxNCAxMSA3LjVDMTEgNy4yMjM4NiAxMC43NzYxIDcgMTAuNSA3SDQuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJG8gPSBbXCJjb2xvclwiXTtcbnZhciBCYXJDaGFydEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkbyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTExLjUgMUMxMS43NzYxIDEgMTIgMS4yMjM4NiAxMiAxLjVWMTMuNUMxMiAxMy43NzYxIDExLjc3NjEgMTQgMTEuNSAxNEMxMS4yMjM5IDE0IDExIDEzLjc3NjEgMTEgMTMuNVYxLjVDMTEgMS4yMjM4NiAxMS4yMjM5IDEgMTEuNSAxWk05LjUgM0M5Ljc3NjE0IDMgMTAgMy4yMjM4NiAxMCAzLjVWMTMuNUMxMCAxMy43NzYxIDkuNzc2MTQgMTQgOS41IDE0QzkuMjIzODYgMTQgOSAxMy43NzYxIDkgMTMuNVYzLjVDOSAzLjIyMzg2IDkuMjIzODYgMyA5LjUgM1pNMTMuNSAzQzEzLjc3NjEgMyAxNCAzLjIyMzg2IDE0IDMuNVYxMy41QzE0IDEzLjc3NjEgMTMuNzc2MSAxNCAxMy41IDE0QzEzLjIyMzkgMTQgMTMgMTMuNzc2MSAxMyAxMy41VjMuNUMxMyAzLjIyMzg2IDEzLjIyMzkgMyAxMy41IDNaTTUuNSA0QzUuNzc2MTQgNCA2IDQuMjIzODYgNiA0LjVWMTMuNUM2IDEzLjc3NjEgNS43NzYxNCAxNCA1LjUgMTRDNS4yMjM4NiAxNCA1IDEzLjc3NjEgNSAxMy41VjQuNUM1IDQuMjIzODYgNS4yMjM4NiA0IDUuNSA0Wk0xLjUgNUMxLjc3NjE0IDUgMiA1LjIyMzg2IDIgNS41VjEzLjVDMiAxMy43NzYxIDEuNzc2MTQgMTQgMS41IDE0QzEuMjIzODYgMTQgMSAxMy43NzYxIDEgMTMuNVY1LjVDMSA1LjIyMzg2IDEuMjIzODYgNSAxLjUgNVpNNy41IDVDNy43NzYxNCA1IDggNS4yMjM4NiA4IDUuNVYxMy41QzggMTMuNzc2MSA3Ljc3NjE0IDE0IDcuNSAxNEM3LjIyMzg2IDE0IDcgMTMuNzc2MSA3IDEzLjVWNS41QzcgNS4yMjM4NiA3LjIyMzg2IDUgNy41IDVaTTMuNSA3QzMuNzc2MTQgNyA0IDcuMjIzODYgNCA3LjVWMTMuNUM0IDEzLjc3NjEgMy43NzYxNCAxNCAzLjUgMTRDMy4yMjM4NiAxNCAzIDEzLjc3NjEgMyAxMy41VjcuNUMzIDcuMjIzODYgMy4yMjM4NiA3IDMuNSA3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkcCA9IFtcImNvbG9yXCJdO1xudmFyIEJlbGxJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJHApO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk04LjYwMTI0IDEuMjUwODZDOC42MDEyNCAxLjc1NDU5IDguMjYyNzggMi4xNzkyNyA3LjgwMDg3IDIuMzA5ODlDMTAuMTQ1OSAyLjQ2NDcgMTIgNC40MTU4MiAxMiA2Ljc5OTk5VjEwLjI1QzEyIDExLjA1NjMgMTIuMDMyOSAxMS43MDc0IDEyLjcyMzYgMTIuMDUyOEMxMi45MzEgMTIuMTU2NSAxMy4wMzk5IDEyLjM4OTIgMTIuOTg2NiAxMi42MTQ5QzEyLjkzMzMgMTIuODQwNiAxMi43MzE5IDEzIDEyLjUgMTNIOC4xNjE0NEM4LjM2OTA0IDEzLjE4MzIgOC40OTk5NyAxMy40NTEzIDguNDk5OTcgMTMuNzVDOC40OTk5NyAxNC4zMDIzIDguMDUyMjYgMTQuNzUgNy40OTk5NyAxNC43NUM2Ljk0NzY5IDE0Ljc1IDYuNDk5OTcgMTQuMzAyMyA2LjQ5OTk3IDEzLjc1QzYuNDk5OTcgMTMuNDUxMyA2LjYzMDkxIDEzLjE4MzIgNi44Mzg1MSAxM0gyLjQ5OTk5QzIuMjY4MSAxMyAyLjA2NjY0IDEyLjg0MDYgMi4wMTMzNiAxMi42MTQ5QzEuOTYwMDkgMTIuMzg5MiAyLjA2ODk3IDEyLjE1NjUgMi4yNzYzOCAxMi4wNTI4QzIuOTY3MDggMTEuNzA3NCAyLjk5OTk5IDExLjA1NjMgMi45OTk5OSAxMC4yNVY2Ljc5OTk5QzIuOTk5OTkgNC40MTUzNyA0Ljg1NDgxIDIuNDYzOTYgNy4yMDA0MiAyLjMwOThDNi43Mzg2NyAyLjE3OTA4IDYuNDAwMzYgMS43NTQ0OCA2LjQwMDM2IDEuMjUwODZDNi40MDAzNiAwLjY0MzEwNCA2Ljg5MzA0IDAuMTUwNDIxIDcuNTAwOCAwLjE1MDQyMUM4LjEwODU1IDAuMTUwNDIxIDguNjAxMjQgMC42NDMxMDQgOC42MDEyNCAxLjI1MDg2Wk03LjQ5OTk5IDMuMjk5OTlDNS41NjY5OSAzLjI5OTk5IDMuOTk5OTkgNC44NjY5OSAzLjk5OTk5IDYuNzk5OTlWMTAuMjVMNC4wMDAwMiAxMC4zMDA5QzQuMDAwNSAxMC43NDYzIDQuMDAxMjEgMTEuNDA4NCAzLjY5OTI5IDEySDExLjMwMDdDMTAuOTk4OCAxMS40MDg0IDEwLjk5OTUgMTAuNzQ2MyAxMSAxMC4zMDA5TDExIDEwLjI1VjYuNzk5OTlDMTEgNC44NjY5OSA5LjQzMjk5IDMuMjk5OTkgNy40OTk5OSAzLjI5OTk5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkcSA9IFtcImNvbG9yXCJdO1xudmFyIEJsZW5kaW5nTW9kZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkcSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMgOUMzIDYuNSA0LjUgNC4yNSA3LjUgMS41QzEwLjUgNC4yNSAxMiA2LjUgMTIgOUMxMiAxMS40ODUzIDkuOTg1MjggMTMuNSA3LjUgMTMuNUM1LjAxNDcyIDEzLjUgMyAxMS40ODUzIDMgOVpNMTAuOTUyNCA4LjMwMzA3QzkuNjczNDcgNy44MjEyMSA4LjI4NzkgOC40NjIwOCA2Ljk4OTU2IDkuMDYyNTlDNS45MzI3IDkuNTUxNDIgNC45MzM2NSAxMC4wMTM1IDQuMDk2OTUgOS44MjE1M0M0LjAzMzU3IDkuNTU4MDQgNCA5LjI4Mjk0IDQgOUM0IDcuMTEyMDMgNS4wMjY4NiA1LjI3MTk1IDcuNSAyLjg3MzU3QzkuNjY4MzcgNC45NzYzOSAxMC43MjUgNi42NTAwNCAxMC45NTI0IDguMzAzMDdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRyID0gW1wiY29sb3JcIl07XG52YXIgQm9va21hcmtJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJHIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zIDIuNUMzIDIuMjIzODYgMy4yMjM4NiAyIDMuNSAySDExLjVDMTEuNzc2MSAyIDEyIDIuMjIzODYgMTIgMi41VjEzLjVDMTIgMTMuNjgxOCAxMS45MDE0IDEzLjg0OTIgMTEuNzQyNCAxMy45MzczQzExLjU4MzQgMTQuMDI1NCAxMS4zODkxIDE0LjAyMDMgMTEuMjM1IDEzLjkyNEw3LjUgMTEuNTg5NkwzLjc2NSAxMy45MjRDMy42MTA4NyAxNC4wMjAzIDMuNDE2NTkgMTQuMDI1NCAzLjI1NzYyIDEzLjkzNzNDMy4wOTg2NCAxMy44NDkyIDMgMTMuNjgxOCAzIDEzLjVWMi41Wk00IDNWMTIuNTk3OUw2Ljk3IDEwLjc0MTZDNy4yOTQyNyAxMC41MzkgNy43MDU3MyAxMC41MzkgOC4wMyAxMC43NDE2TDExIDEyLjU5NzlWM0g0WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkcyA9IFtcImNvbG9yXCJdO1xudmFyIEJvb2ttYXJrRmlsbGVkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRzKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy41IDJDMy4yMjM4NiAyIDMgMi4yMjM4NiAzIDIuNVYxMy41QzMgMTMuNjgxOCAzLjA5ODY0IDEzLjg0OTIgMy4yNTc2MiAxMy45MzczQzMuNDE2NTkgMTQuMDI1NCAzLjYxMDg3IDE0LjAyMDMgMy43NjUgMTMuOTI0TDcuNSAxMS41ODk2TDExLjIzNSAxMy45MjRDMTEuMzg5MSAxNC4wMjAzIDExLjU4MzQgMTQuMDI1NCAxMS43NDI0IDEzLjkzNzNDMTEuOTAxNCAxMy44NDkyIDEyIDEzLjY4MTggMTIgMTMuNVYyLjVDMTIgMi4yMjM4NiAxMS43NzYxIDIgMTEuNSAySDMuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJHQgPSBbXCJjb2xvclwiXTtcbnZhciBCb3JkZXJBbGxJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJHQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0wLjI1IDFDMC4yNSAwLjU4NTc4NiAwLjU4NTc4NiAwLjI1IDEgMC4yNUgxNEMxNC40MTQyIDAuMjUgMTQuNzUgMC41ODU3ODYgMTQuNzUgMVYxNEMxNC43NSAxNC40MTQyIDE0LjQxNDIgMTQuNzUgMTQgMTQuNzVIMUMwLjU4NTc4NiAxNC43NSAwLjI1IDE0LjQxNDIgMC4yNSAxNFYxWk0xLjc1IDEuNzVWMTMuMjVIMTMuMjVWMS43NUgxLjc1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCIzXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiN1wiLFxuICAgIHk6IFwiN1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjVcIixcbiAgICB5OiBcIjdcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIzXCIsXG4gICAgeTogXCI3XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiOVwiLFxuICAgIHk6IFwiN1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjExXCIsXG4gICAgeTogXCI3XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiN1wiLFxuICAgIHk6IFwiOVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjExXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCR1ID0gW1wiY29sb3JcIl07XG52YXIgQm9yZGVyQm90dG9tSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCR1KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMSAxMy4yNUwxNCAxMy4yNVYxNC43NUwxIDE0Ljc1VjEzLjI1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxM1wiLFxuICAgIHk6IFwiNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjNcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxM1wiLFxuICAgIHk6IFwiM1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjdcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCIxXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTNcIixcbiAgICB5OiBcIjdcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxM1wiLFxuICAgIHk6IFwiMVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjVcIixcbiAgICB5OiBcIjdcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI1XCIsXG4gICAgeTogXCIxXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiM1wiLFxuICAgIHk6IFwiN1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjNcIixcbiAgICB5OiBcIjFcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI5XCIsXG4gICAgeTogXCI3XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiOVwiLFxuICAgIHk6IFwiMVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjExXCIsXG4gICAgeTogXCI3XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTFcIixcbiAgICB5OiBcIjFcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCI5XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTNcIixcbiAgICB5OiBcIjlcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCIxMVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEzXCIsXG4gICAgeTogXCIxMVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjFcIixcbiAgICB5OiBcIjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxXCIsXG4gICAgeTogXCIzXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMVwiLFxuICAgIHk6IFwiN1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjFcIixcbiAgICB5OiBcIjFcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxXCIsXG4gICAgeTogXCI5XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMVwiLFxuICAgIHk6IFwiMTFcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJHYgPSBbXCJjb2xvclwiXTtcbnZhciBCb3JkZXJEYXNoZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJHYpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0wIDcuNUMwIDcuMjIzODYgMC4yMjM4NTggNyAwLjUgN0gzQzMuMjc2MTQgNyAzLjUgNy4yMjM4NiAzLjUgNy41QzMuNSA3Ljc3NjE0IDMuMjc2MTQgOCAzIDhIMC41QzAuMjIzODU4IDggMCA3Ljc3NjE0IDAgNy41Wk01Ljc1IDcuNUM1Ljc1IDcuMjIzODYgNS45NzM4NiA3IDYuMjUgN0g4Ljc1QzkuMDI2MTQgNyA5LjI1IDcuMjIzODYgOS4yNSA3LjVDOS4yNSA3Ljc3NjE0IDkuMDI2MTQgOCA4Ljc1IDhINi4yNUM1Ljk3Mzg2IDggNS43NSA3Ljc3NjE0IDUuNzUgNy41Wk0xMiA3QzExLjcyMzkgNyAxMS41IDcuMjIzODYgMTEuNSA3LjVDMTEuNSA3Ljc3NjE0IDExLjcyMzkgOCAxMiA4SDE0LjVDMTQuNzc2MSA4IDE1IDcuNzc2MTQgMTUgNy41QzE1IDcuMjIzODYgMTQuNzc2MSA3IDE0LjUgN0gxMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJHcgPSBbXCJjb2xvclwiXTtcbnZhciBCb3JkZXJEb3R0ZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJHcpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjUgNi42MjVDMS4wMTY3NSA2LjYyNSAwLjYyNSA3LjAxNjc1IDAuNjI1IDcuNUMwLjYyNSA3Ljk4MzI1IDEuMDE2NzUgOC4zNzUgMS41IDguMzc1QzEuOTgzMjUgOC4zNzUgMi4zNzUgNy45ODMyNSAyLjM3NSA3LjVDMi4zNzUgNy4wMTY3NSAxLjk4MzI1IDYuNjI1IDEuNSA2LjYyNVpNNS41IDYuNjI1QzUuMDE2NzUgNi42MjUgNC42MjUgNy4wMTY3NSA0LjYyNSA3LjVDNC42MjUgNy45ODMyNSA1LjAxNjc1IDguMzc1IDUuNSA4LjM3NUM1Ljk4MzI1IDguMzc1IDYuMzc1IDcuOTgzMjUgNi4zNzUgNy41QzYuMzc1IDcuMDE2NzUgNS45ODMyNSA2LjYyNSA1LjUgNi42MjVaTTkuNSA2LjYyNUM5LjAxNjc1IDYuNjI1IDguNjI1IDcuMDE2NzUgOC42MjUgNy41QzguNjI1IDcuOTgzMjUgOS4wMTY3NSA4LjM3NSA5LjUgOC4zNzVDOS45ODMyNSA4LjM3NSAxMC4zNzUgNy45ODMyNSAxMC4zNzUgNy41QzEwLjM3NSA3LjAxNjc1IDkuOTgzMjUgNi42MjUgOS41IDYuNjI1Wk0xMi42MjUgNy41QzEyLjYyNSA3LjAxNjc1IDEzLjAxNjggNi42MjUgMTMuNSA2LjYyNUMxMy45ODMyIDYuNjI1IDE0LjM3NSA3LjAxNjc1IDE0LjM3NSA3LjVDMTQuMzc1IDcuOTgzMjUgMTMuOTgzMiA4LjM3NSAxMy41IDguMzc1QzEzLjAxNjggOC4zNzUgMTIuNjI1IDcuOTgzMjUgMTIuNjI1IDcuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJHggPSBbXCJjb2xvclwiXTtcbnZhciBCb3JkZXJMZWZ0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCR4KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS43NSAxTDEuNzUgMTRMMC4yNDk5OTkgMTRMMC4yNSAxTDEuNzUgMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxMFwiLFxuICAgIHk6IFwiN1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCAxMCA3KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxMFwiLFxuICAgIHk6IFwiMTNcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoOTAgMTAgMTMpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEyXCIsXG4gICAgeTogXCI3XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDEyIDcpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEyXCIsXG4gICAgeTogXCIxM1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCAxMiAxMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiOFwiLFxuICAgIHk6IFwiN1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCA4IDcpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjE0XCIsXG4gICAgeTogXCI3XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDE0IDcpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjhcIixcbiAgICB5OiBcIjEzXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDggMTMpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjE0XCIsXG4gICAgeTogXCIxM1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCAxNCAxMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiOFwiLFxuICAgIHk6IFwiNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCA4IDUpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjE0XCIsXG4gICAgeTogXCI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDE0IDUpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjhcIixcbiAgICB5OiBcIjNcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoOTAgOCAzKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxNFwiLFxuICAgIHk6IFwiM1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCAxNCAzKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI4XCIsXG4gICAgeTogXCI5XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDggOSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTRcIixcbiAgICB5OiBcIjlcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoOTAgMTQgOSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiOFwiLFxuICAgIHk6IFwiMTFcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoOTAgOCAxMSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTRcIixcbiAgICB5OiBcIjExXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDE0IDExKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI2XCIsXG4gICAgeTogXCI3XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDYgNylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiNlwiLFxuICAgIHk6IFwiMTNcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoOTAgNiAxMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiNFwiLFxuICAgIHk6IFwiN1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCA0IDcpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjRcIixcbiAgICB5OiBcIjEzXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDQgMTMpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEwXCIsXG4gICAgeTogXCIxXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDEwIDEpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEyXCIsXG4gICAgeTogXCIxXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDEyIDEpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjhcIixcbiAgICB5OiBcIjFcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoOTAgOCAxKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxNFwiLFxuICAgIHk6IFwiMVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCAxNCAxKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI2XCIsXG4gICAgeTogXCIxXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDYgMSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiNFwiLFxuICAgIHk6IFwiMVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCA0IDEpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkeSA9IFtcImNvbG9yXCJdO1xudmFyIEJvcmRlck5vbmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJHkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjUuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTNcIixcbiAgICB5OiBcIjUuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiN1wiLFxuICAgIHk6IFwiMy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxM1wiLFxuICAgIHk6IFwiMy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCI3LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjEzLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjEuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTNcIixcbiAgICB5OiBcIjcuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTNcIixcbiAgICB5OiBcIjEzLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEzXCIsXG4gICAgeTogXCIxLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjVcIixcbiAgICB5OiBcIjcuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiNVwiLFxuICAgIHk6IFwiMTMuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiNVwiLFxuICAgIHk6IFwiMS4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIzXCIsXG4gICAgeTogXCI3LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjNcIixcbiAgICB5OiBcIjEzLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjNcIixcbiAgICB5OiBcIjEuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiOVwiLFxuICAgIHk6IFwiNy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI5XCIsXG4gICAgeTogXCIxMy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI5XCIsXG4gICAgeTogXCIxLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjExXCIsXG4gICAgeTogXCI3LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjExXCIsXG4gICAgeTogXCIxMy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxMVwiLFxuICAgIHk6IFwiMS4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCI5LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEzXCIsXG4gICAgeTogXCI5LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjExLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEzXCIsXG4gICAgeTogXCIxMS4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxXCIsXG4gICAgeTogXCI1LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjFcIixcbiAgICB5OiBcIjMuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMVwiLFxuICAgIHk6IFwiNy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxXCIsXG4gICAgeTogXCIxMy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxXCIsXG4gICAgeTogXCIxLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjFcIixcbiAgICB5OiBcIjkuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMVwiLFxuICAgIHk6IFwiMTEuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCR6ID0gW1wiY29sb3JcIl07XG52YXIgQm9yZGVyUmlnaHRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJHopO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMy4yNSAxTDEzLjI1IDE0TDE0Ljc1IDE0TDE0Ljc1IDFMMTMuMjUgMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwibWF0cml4KDAgMSAxIDAgNSA3KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwibWF0cml4KDAgMSAxIDAgNSAxMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDMgNylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDMgMTMpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJtYXRyaXgoMCAxIDEgMCA3IDcpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJtYXRyaXgoMCAxIDEgMCAxIDcpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJtYXRyaXgoMCAxIDEgMCA3IDEzKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwibWF0cml4KDAgMSAxIDAgMSAxMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDcgNSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDEgNSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDcgMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDEgMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDcgOSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDEgOSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDcgMTEpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJtYXRyaXgoMCAxIDEgMCAxIDExKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwibWF0cml4KDAgMSAxIDAgOSA3KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwibWF0cml4KDAgMSAxIDAgOSAxMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDExIDcpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJtYXRyaXgoMCAxIDEgMCAxMSAxMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDUgMSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDMgMSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDcgMSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDEgMSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDkgMSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDExIDEpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkQSA9IFtcImNvbG9yXCJdO1xudmFyIEJvcmRlclNvbGlkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRBKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS4yNSA3LjVDMS4yNSA3LjIyMzg2IDEuNDczODYgNyAxLjc1IDdIMTMuMjVDMTMuNTI2MSA3IDEzLjc1IDcuMjIzODYgMTMuNzUgNy41QzEzLjc1IDcuNzc2MTQgMTMuNTI2MSA4IDEzLjI1IDhIMS43NUMxLjQ3Mzg2IDggMS4yNSA3Ljc3NjE0IDEuMjUgNy41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkQiA9IFtcImNvbG9yXCJdO1xudmFyIEJvcmRlclNwbGl0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRCKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCI1LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjMuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiN1wiLFxuICAgIHk6IFwiNy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCIxMy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCIxLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEzXCIsXG4gICAgeTogXCI3LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjVcIixcbiAgICB5OiBcIjcuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiM1wiLFxuICAgIHk6IFwiNy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI5XCIsXG4gICAgeTogXCI3LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjExXCIsXG4gICAgeTogXCI3LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjkuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiN1wiLFxuICAgIHk6IFwiMTEuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMVwiLFxuICAgIHk6IFwiNy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMSAxLjQ5OTk0QzEgMS4yMjM4IDEuMjIzODYgMC45OTk5MzkgMS41IDAuOTk5OTM5SDZWMS45OTk5NEgyVjUuOTk5OTRIMVYxLjQ5OTk0Wk0xMyAxLjk5OTk0SDlWMC45OTk5MzlIMTMuNUMxMy43NzYxIDAuOTk5OTM5IDE0IDEuMjIzOCAxNCAxLjQ5OTk0VjUuOTk5OTRIMTNWMS45OTk5NFpNMSAxMy40OTk5VjguOTk5OTRIMlYxMi45OTk5SDZWMTMuOTk5OUgxLjVDMS4yMjM4NiAxMy45OTk5IDEgMTMuNzc2MSAxIDEzLjQ5OTlaTTEzIDEyLjk5OTlWOC45OTk5NEgxNFYxMy40OTk5QzE0IDEzLjc3NjEgMTMuNzc2MSAxMy45OTk5IDEzLjUgMTMuOTk5OUg5LjVWMTIuOTk5OUgxM1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJEMgPSBbXCJjb2xvclwiXTtcbnZhciBCb3JkZXJTdHlsZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkQyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEuNSAzQzEuMjIzODYgMyAxIDMuMjIzODYgMSAzLjVDMSAzLjc3NjE0IDEuMjIzODYgNCAxLjUgNEgxMy41QzEzLjc3NjEgNCAxNCAzLjc3NjE0IDE0IDMuNUMxNCAzLjIyMzg2IDEzLjc3NjEgMyAxMy41IDNIMS41Wk0xIDcuNUMxIDcuMjIzODYgMS4yMjM4NiA3IDEuNSA3SDMuNUMzLjc3NjE0IDcgNCA3LjIyMzg2IDQgNy41QzQgNy43NzYxNCAzLjc3NjE0IDggMy41IDhIMS41QzEuMjIzODYgOCAxIDcuNzc2MTQgMSA3LjVaTTEgMTEuNUMxIDExLjIyMzkgMS4yMjM4NiAxMSAxLjUgMTFDMS43NzYxNCAxMSAyIDExLjIyMzkgMiAxMS41QzIgMTEuNzc2MSAxLjc3NjE0IDEyIDEuNSAxMkMxLjIyMzg2IDEyIDEgMTEuNzc2MSAxIDExLjVaTTMgMTEuNUMzIDExLjIyMzkgMy4yMjM4NiAxMSAzLjUgMTFDMy43NzYxNCAxMSA0IDExLjIyMzkgNCAxMS41QzQgMTEuNzc2MSAzLjc3NjE0IDEyIDMuNSAxMkMzLjIyMzg2IDEyIDMgMTEuNzc2MSAzIDExLjVaTTUuNSAxMUM1LjIyMzg2IDExIDUgMTEuMjIzOSA1IDExLjVDNSAxMS43NzYxIDUuMjIzODYgMTIgNS41IDEyQzUuNzc2MTQgMTIgNiAxMS43NzYxIDYgMTEuNUM2IDExLjIyMzkgNS43NzYxNCAxMSA1LjUgMTFaTTcgMTEuNUM3IDExLjIyMzkgNy4yMjM4NiAxMSA3LjUgMTFDNy43NzYxNCAxMSA4IDExLjIyMzkgOCAxMS41QzggMTEuNzc2MSA3Ljc3NjE0IDEyIDcuNSAxMkM3LjIyMzg2IDEyIDcgMTEuNzc2MSA3IDExLjVaTTkuNSAxMUM5LjIyMzg2IDExIDkgMTEuMjIzOSA5IDExLjVDOSAxMS43NzYxIDkuMjIzODYgMTIgOS41IDEyQzkuNzc2MTQgMTIgMTAgMTEuNzc2MSAxMCAxMS41QzEwIDExLjIyMzkgOS43NzYxNCAxMSA5LjUgMTFaTTExIDExLjVDMTEgMTEuMjIzOSAxMS4yMjM5IDExIDExLjUgMTFDMTEuNzc2MSAxMSAxMiAxMS4yMjM5IDEyIDExLjVDMTIgMTEuNzc2MSAxMS43NzYxIDEyIDExLjUgMTJDMTEuMjIzOSAxMiAxMSAxMS43NzYxIDExIDExLjVaTTEzLjUgMTFDMTMuMjIzOSAxMSAxMyAxMS4yMjM5IDEzIDExLjVDMTMgMTEuNzc2MSAxMy4yMjM5IDEyIDEzLjUgMTJDMTMuNzc2MSAxMiAxNCAxMS43NzYxIDE0IDExLjVDMTQgMTEuMjIzOSAxMy43NzYxIDExIDEzLjUgMTFaTTYuNSA3QzYuMjIzODYgNyA2IDcuMjIzODYgNiA3LjVDNiA3Ljc3NjE0IDYuMjIzODYgOCA2LjUgOEg4LjVDOC43NzYxNCA4IDkgNy43NzYxNCA5IDcuNUM5IDcuMjIzODYgOC43NzYxNCA3IDguNSA3SDYuNVpNMTEgNy41QzExIDcuMjIzODYgMTEuMjIzOSA3IDExLjUgN0gxMy41QzEzLjc3NjEgNyAxNCA3LjIyMzg2IDE0IDcuNUMxNCA3Ljc3NjE0IDEzLjc3NjEgOCAxMy41IDhIMTEuNUMxMS4yMjM5IDggMTEgNy43NzYxNCAxMSA3LjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCREID0gW1wiY29sb3JcIl07XG52YXIgQm9yZGVyVG9wSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCREKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTQgMS43NUwxIDEuNzVMMSAwLjI0OTk5OUwxNCAwLjI1TDE0IDEuNzVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiOFwiLFxuICAgIHk6IFwiMTBcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCA4IDEwKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIyXCIsXG4gICAgeTogXCIxMFwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSgtMTgwIDIgMTApXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjhcIixcbiAgICB5OiBcIjEyXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKC0xODAgOCAxMilcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMlwiLFxuICAgIHk6IFwiMTJcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAyIDEyKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI4XCIsXG4gICAgeTogXCI4XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKC0xODAgOCA4KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI4XCIsXG4gICAgeTogXCIxNFwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSgtMTgwIDggMTQpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjJcIixcbiAgICB5OiBcIjhcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAyIDgpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjJcIixcbiAgICB5OiBcIjE0XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKC0xODAgMiAxNClcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTBcIixcbiAgICB5OiBcIjhcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxMCA4KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxMFwiLFxuICAgIHk6IFwiMTRcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxMCAxNClcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTJcIixcbiAgICB5OiBcIjhcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxMiA4KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxMlwiLFxuICAgIHk6IFwiMTRcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxMiAxNClcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiNlwiLFxuICAgIHk6IFwiOFwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSgtMTgwIDYgOClcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiNlwiLFxuICAgIHk6IFwiMTRcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCA2IDE0KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI0XCIsXG4gICAgeTogXCI4XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKC0xODAgNCA4KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI0XCIsXG4gICAgeTogXCIxNFwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSgtMTgwIDQgMTQpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjhcIixcbiAgICB5OiBcIjZcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCA4IDYpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjJcIixcbiAgICB5OiBcIjZcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAyIDYpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjhcIixcbiAgICB5OiBcIjRcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCA4IDQpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjJcIixcbiAgICB5OiBcIjRcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAyIDQpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjE0XCIsXG4gICAgeTogXCIxMFwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSgtMTgwIDE0IDEwKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxNFwiLFxuICAgIHk6IFwiMTJcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxNCAxMilcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTRcIixcbiAgICB5OiBcIjhcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxNCA4KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxNFwiLFxuICAgIHk6IFwiMTRcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxNCAxNClcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTRcIixcbiAgICB5OiBcIjZcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxNCA2KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxNFwiLFxuICAgIHk6IFwiNFwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSgtMTgwIDE0IDQpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkRSA9IFtcImNvbG9yXCJdO1xudmFyIEJvcmRlcldpZHRoSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRFKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMSAzSDE0VjRIMVYzWk0xIDZIMTRWOEgxVjZaTTE0IDEwLjI1SDFWMTIuNzVIMTRWMTAuMjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRGID0gW1wiY29sb3JcIl07XG52YXIgQm94SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRGKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTIuNSAySDIuNUMyLjIyMzg2IDIgMiAyLjIyMzg2IDIgMi41VjEyLjVDMiAxMi43NzYxIDIuMjIzODYgMTMgMi41IDEzSDEyLjVDMTIuNzc2MSAxMyAxMyAxMi43NzYxIDEzIDEyLjVWMi41QzEzIDIuMjIzODYgMTIuNzc2MSAyIDEyLjUgMlpNMi41IDFDMS42NzE1NyAxIDEgMS42NzE1NyAxIDIuNVYxMi41QzEgMTMuMzI4NCAxLjY3MTU3IDE0IDIuNSAxNEgxMi41QzEzLjMyODQgMTQgMTQgMTMuMzI4NCAxNCAxMi41VjIuNUMxNCAxLjY3MTU3IDEzLjMyODQgMSAxMi41IDFIMi41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkRyA9IFtcImNvbG9yXCJdO1xudmFyIEJveE1vZGVsSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRHKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS45OTk5OCAwLjk5OTk3NkMxLjQ0NzY5IDAuOTk5OTc2IDAuOTk5OTc2IDEuNDQ3NjkgMC45OTk5NzYgMS45OTk5OFYxM0MwLjk5OTk3NiAxMy41NTIzIDEuNDQ3NjkgMTQgMS45OTk5OCAxNEgxM0MxMy41NTIzIDE0IDE0IDEzLjU1MjMgMTQgMTNWMS45OTk5OEMxNCAxLjQ0NzY5IDEzLjU1MjMgMC45OTk5NzYgMTMgMC45OTk5NzZIMS45OTk5OFpNMS45OTk5OCAxLjk5OTk4TDEzIDEuOTk5OThWMTNIMS45OTk5OFYxLjk5OTk4Wk00LjQ5OTk2IDMuOTk5OTZDNC4yMjM4MiAzLjk5OTk2IDMuOTk5OTYgNC4yMjM4MiAzLjk5OTk2IDQuNDk5OTZWMTAuNUMzLjk5OTk2IDEwLjc3NjEgNC4yMjM4MiAxMSA0LjQ5OTk2IDExSDEwLjVDMTAuNzc2MSAxMSAxMSAxMC43NzYxIDExIDEwLjVWNC40OTk5NkMxMSA0LjIyMzgyIDEwLjc3NjEgMy45OTk5NiAxMC41IDMuOTk5OTZINC40OTk5NlpNNC45OTk5NiA5Ljk5OTk2VjQuOTk5OTZIOS45OTk5NlY5Ljk5OTk2SDQuOTk5OTZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRIID0gW1wiY29sb3JcIl07XG52YXIgQnV0dG9uSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRIKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMiA1SDEzQzEzLjU1MjMgNSAxNCA1LjQ0NzcyIDE0IDZWOUMxNCA5LjU1MjI4IDEzLjU1MjMgMTAgMTMgMTBIMkMxLjQ0NzcyIDEwIDEgOS41NTIyOCAxIDlWNkMxIDUuNDQ3NzIgMS40NDc3MiA1IDIgNVpNMCA2QzAgNC44OTU0MyAwLjg5NTQzMSA0IDIgNEgxM0MxNC4xMDQ2IDQgMTUgNC44OTU0MyAxNSA2VjlDMTUgMTAuMTA0NiAxNC4xMDQ2IDExIDEzIDExSDJDMC44OTU0MyAxMSAwIDEwLjEwNDYgMCA5VjZaTTQuNSA2Ljc1QzQuMDg1NzkgNi43NSAzLjc1IDcuMDg1NzkgMy43NSA3LjVDMy43NSA3LjkxNDIxIDQuMDg1NzkgOC4yNSA0LjUgOC4yNUM0LjkxNDIxIDguMjUgNS4yNSA3LjkxNDIxIDUuMjUgNy41QzUuMjUgNy4wODU3OSA0LjkxNDIxIDYuNzUgNC41IDYuNzVaTTYuNzUgNy41QzYuNzUgNy4wODU3OSA3LjA4NTc5IDYuNzUgNy41IDYuNzVDNy45MTQyMSA2Ljc1IDguMjUgNy4wODU3OSA4LjI1IDcuNUM4LjI1IDcuOTE0MjEgNy45MTQyMSA4LjI1IDcuNSA4LjI1QzcuMDg1NzkgOC4yNSA2Ljc1IDcuOTE0MjEgNi43NSA3LjVaTTEwLjUgNi43NUMxMC4wODU4IDYuNzUgOS43NSA3LjA4NTc5IDkuNzUgNy41QzkuNzUgNy45MTQyMSAxMC4wODU4IDguMjUgMTAuNSA4LjI1QzEwLjkxNDIgOC4yNSAxMS4yNSA3LjkxNDIxIDExLjI1IDcuNUMxMS4yNSA3LjA4NTc5IDEwLjkxNDIgNi43NSAxMC41IDYuNzVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRJID0gW1wiY29sb3JcIl07XG52YXIgQ2FsZW5kYXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJEkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk00LjUgMUM0Ljc3NjE0IDEgNSAxLjIyMzg2IDUgMS41VjJIMTBWMS41QzEwIDEuMjIzODYgMTAuMjIzOSAxIDEwLjUgMUMxMC43NzYxIDEgMTEgMS4yMjM4NiAxMSAxLjVWMkgxMi41QzEzLjMyODQgMiAxNCAyLjY3MTU3IDE0IDMuNVYxMi41QzE0IDEzLjMyODQgMTMuMzI4NCAxNCAxMi41IDE0SDIuNUMxLjY3MTU3IDE0IDEgMTMuMzI4NCAxIDEyLjVWMy41QzEgMi42NzE1NyAxLjY3MTU3IDIgMi41IDJINFYxLjVDNCAxLjIyMzg2IDQuMjIzODYgMSA0LjUgMVpNMTAgM1YzLjVDMTAgMy43NzYxNCAxMC4yMjM5IDQgMTAuNSA0QzEwLjc3NjEgNCAxMSAzLjc3NjE0IDExIDMuNVYzSDEyLjVDMTIuNzc2MSAzIDEzIDMuMjIzODYgMTMgMy41VjVIMlYzLjVDMiAzLjIyMzg2IDIuMjIzODYgMyAyLjUgM0g0VjMuNUM0IDMuNzc2MTQgNC4yMjM4NiA0IDQuNSA0QzQuNzc2MTQgNCA1IDMuNzc2MTQgNSAzLjVWM0gxMFpNMiA2VjEyLjVDMiAxMi43NzYxIDIuMjIzODYgMTMgMi41IDEzSDEyLjVDMTIuNzc2MSAxMyAxMyAxMi43NzYxIDEzIDEyLjVWNkgyWk03IDcuNUM3IDcuMjIzODYgNy4yMjM4NiA3IDcuNSA3QzcuNzc2MTQgNyA4IDcuMjIzODYgOCA3LjVDOCA3Ljc3NjE0IDcuNzc2MTQgOCA3LjUgOEM3LjIyMzg2IDggNyA3Ljc3NjE0IDcgNy41Wk05LjUgN0M5LjIyMzg2IDcgOSA3LjIyMzg2IDkgNy41QzkgNy43NzYxNCA5LjIyMzg2IDggOS41IDhDOS43NzYxNCA4IDEwIDcuNzc2MTQgMTAgNy41QzEwIDcuMjIzODYgOS43NzYxNCA3IDkuNSA3Wk0xMSA3LjVDMTEgNy4yMjM4NiAxMS4yMjM5IDcgMTEuNSA3QzExLjc3NjEgNyAxMiA3LjIyMzg2IDEyIDcuNUMxMiA3Ljc3NjE0IDExLjc3NjEgOCAxMS41IDhDMTEuMjIzOSA4IDExIDcuNzc2MTQgMTEgNy41Wk0xMS41IDlDMTEuMjIzOSA5IDExIDkuMjIzODYgMTEgOS41QzExIDkuNzc2MTQgMTEuMjIzOSAxMCAxMS41IDEwQzExLjc3NjEgMTAgMTIgOS43NzYxNCAxMiA5LjVDMTIgOS4yMjM4NiAxMS43NzYxIDkgMTEuNSA5Wk05IDkuNUM5IDkuMjIzODYgOS4yMjM4NiA5IDkuNSA5QzkuNzc2MTQgOSAxMCA5LjIyMzg2IDEwIDkuNUMxMCA5Ljc3NjE0IDkuNzc2MTQgMTAgOS41IDEwQzkuMjIzODYgMTAgOSA5Ljc3NjE0IDkgOS41Wk03LjUgOUM3LjIyMzg2IDkgNyA5LjIyMzg2IDcgOS41QzcgOS43NzYxNCA3LjIyMzg2IDEwIDcuNSAxMEM3Ljc3NjE0IDEwIDggOS43NzYxNCA4IDkuNUM4IDkuMjIzODYgNy43NzYxNCA5IDcuNSA5Wk01IDkuNUM1IDkuMjIzODYgNS4yMjM4NiA5IDUuNSA5QzUuNzc2MTQgOSA2IDkuMjIzODYgNiA5LjVDNiA5Ljc3NjE0IDUuNzc2MTQgMTAgNS41IDEwQzUuMjIzODYgMTAgNSA5Ljc3NjE0IDUgOS41Wk0zLjUgOUMzLjIyMzg2IDkgMyA5LjIyMzg2IDMgOS41QzMgOS43NzYxNCAzLjIyMzg2IDEwIDMuNSAxMEMzLjc3NjE0IDEwIDQgOS43NzYxNCA0IDkuNUM0IDkuMjIzODYgMy43NzYxNCA5IDMuNSA5Wk0zIDExLjVDMyAxMS4yMjM5IDMuMjIzODYgMTEgMy41IDExQzMuNzc2MTQgMTEgNCAxMS4yMjM5IDQgMTEuNUM0IDExLjc3NjEgMy43NzYxNCAxMiAzLjUgMTJDMy4yMjM4NiAxMiAzIDExLjc3NjEgMyAxMS41Wk01LjUgMTFDNS4yMjM4NiAxMSA1IDExLjIyMzkgNSAxMS41QzUgMTEuNzc2MSA1LjIyMzg2IDEyIDUuNSAxMkM1Ljc3NjE0IDEyIDYgMTEuNzc2MSA2IDExLjVDNiAxMS4yMjM5IDUuNzc2MTQgMTEgNS41IDExWk03IDExLjVDNyAxMS4yMjM5IDcuMjIzODYgMTEgNy41IDExQzcuNzc2MTQgMTEgOCAxMS4yMjM5IDggMTEuNUM4IDExLjc3NjEgNy43NzYxNCAxMiA3LjUgMTJDNy4yMjM4NiAxMiA3IDExLjc3NjEgNyAxMS41Wk05LjUgMTFDOS4yMjM4NiAxMSA5IDExLjIyMzkgOSAxMS41QzkgMTEuNzc2MSA5LjIyMzg2IDEyIDkuNSAxMkM5Ljc3NjE0IDEyIDEwIDExLjc3NjEgMTAgMTEuNUMxMCAxMS4yMjM5IDkuNzc2MTQgMTEgOS41IDExWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkSiA9IFtcImNvbG9yXCJdO1xudmFyIENhbWVyYUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkSik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIgM0MxLjQ0NzcyIDMgMSAzLjQ0NzcyIDEgNFYxMUMxIDExLjU1MjMgMS40NDc3MiAxMiAyIDEySDEzQzEzLjU1MjMgMTIgMTQgMTEuNTUyMyAxNCAxMVY0QzE0IDMuNDQ3NzIgMTMuNTUyMyAzIDEzIDNIMlpNMCA0QzAgMi44OTU0MyAwLjg5NTQzMSAyIDIgMkgxM0MxNC4xMDQ2IDIgMTUgMi44OTU0MyAxNSA0VjExQzE1IDEyLjEwNDYgMTQuMTA0NiAxMyAxMyAxM0gyQzAuODk1NDMxIDEzIDAgMTIuMTA0NiAwIDExVjRaTTIgNC4yNUMyIDQuMTExOTMgMi4xMTE5MyA0IDIuMjUgNEg0Ljc1QzQuODg4MDcgNCA1IDQuMTExOTMgNSA0LjI1VjUuNzU0NTRDNSA1Ljg5MjYxIDQuODg4MDcgNi4wMDQ1NCA0Ljc1IDYuMDA0NTRIMi4yNUMyLjExMTkzIDYuMDA0NTQgMiA1Ljg5MjYxIDIgNS43NTQ1NFY0LjI1Wk0xMi4xMDEgNy41ODQyMUMxMi4xMDEgOS4wMjA3MyAxMC45MzY1IDEwLjE4NTMgOS40OTk5OCAxMC4xODUzQzguMDYzNDYgMTAuMTg1MyA2Ljg5ODkzIDkuMDIwNzMgNi44OTg5MyA3LjU4NDIxQzYuODk4OTMgNi4xNDc2OSA4LjA2MzQ2IDQuOTgzMTUgOS40OTk5OCA0Ljk4MzE1QzEwLjkzNjUgNC45ODMxNSAxMi4xMDEgNi4xNDc2OSAxMi4xMDEgNy41ODQyMVpNMTMuMTAxIDcuNTg0MjFDMTMuMTAxIDkuNTczMDIgMTEuNDg4OCAxMS4xODUzIDkuNDk5OTggMTEuMTg1M0M3LjUxMTE3IDExLjE4NTMgNS44OTg5MyA5LjU3MzAyIDUuODk4OTMgNy41ODQyMUM1Ljg5ODkzIDUuNTk1NCA3LjUxMTE3IDMuOTgzMTUgOS40OTk5OCAzLjk4MzE1QzExLjQ4ODggMy45ODMxNSAxMy4xMDEgNS41OTU0IDEzLjEwMSA3LjU4NDIxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkSyA9IFtcImNvbG9yXCJdO1xudmFyIENhcmRTdGFja0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkSyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIgMy41QzIgMy4yMjM4NiAyLjIyMzg2IDMgMi41IDNIMTIuNUMxMi43NzYxIDMgMTMgMy4yMjM4NiAxMyAzLjVWOS41QzEzIDkuNzc2MTQgMTIuNzc2MSAxMCAxMi41IDEwSDIuNUMyLjIyMzg2IDEwIDIgOS43NzYxNCAyIDkuNVYzLjVaTTIgMTAuOTE0NkMxLjQxNzQgMTAuNzA4NyAxIDEwLjE1MzEgMSA5LjVWMy41QzEgMi42NzE1NyAxLjY3MTU3IDIgMi41IDJIMTIuNUMxMy4zMjg0IDIgMTQgMi42NzE1NyAxNCAzLjVWOS41QzE0IDEwLjE1MzEgMTMuNTgyNiAxMC43MDg3IDEzIDEwLjkxNDZWMTEuNUMxMyAxMi4zMjg0IDEyLjMyODQgMTMgMTEuNSAxM0gzLjVDMi42NzE1NyAxMyAyIDEyLjMyODQgMiAxMS41VjEwLjkxNDZaTTEyIDExVjExLjVDMTIgMTEuNzc2MSAxMS43NzYxIDEyIDExLjUgMTJIMy41QzMuMjIzODYgMTIgMyAxMS43NzYxIDMgMTEuNVYxMUgxMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJEwgPSBbXCJjb2xvclwiXTtcbnZhciBDYXJkU3RhY2tNaW51c0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkTCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuNSAzQzIuMjIzODYgMyAyIDMuMjIzODYgMiAzLjVWOS41QzIgOS43NzYxNCAyLjIyMzg2IDEwIDIuNSAxMEgxMi41QzEyLjc3NjEgMTAgMTMgOS43NzYxNCAxMyA5LjVWMy41QzEzIDMuMjIzODYgMTIuNzc2MSAzIDEyLjUgM0gyLjVaTTEgOS41QzEgMTAuMTUzMSAxLjQxNzQgMTAuNzA4NyAyIDEwLjkxNDZWMTEuNUMyIDEyLjMyODQgMi42NzE1NyAxMyAzLjUgMTNIMTEuNUMxMi4zMjg0IDEzIDEzIDEyLjMyODQgMTMgMTEuNVYxMC45MTQ2QzEzLjU4MjYgMTAuNzA4NyAxNCAxMC4xNTMxIDE0IDkuNVYzLjVDMTQgMi42NzE1NyAxMy4zMjg0IDIgMTIuNSAySDIuNUMxLjY3MTU3IDIgMSAyLjY3MTU3IDEgMy41VjkuNVpNMTIgMTEuNVYxMUgzVjExLjVDMyAxMS43NzYxIDMuMjIzODYgMTIgMy41IDEySDExLjVDMTEuNzc2MSAxMiAxMiAxMS43NzYxIDEyIDExLjVaTTUuNSA2QzUuMjIzODYgNiA1IDYuMjIzODYgNSA2LjVDNSA2Ljc3NjE0IDUuMjIzODYgNyA1LjUgN0g5LjVDOS43NzYxNCA3IDEwIDYuNzc2MTQgMTAgNi41QzEwIDYuMjIzODYgOS43NzYxNCA2IDkuNSA2SDUuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJE0gPSBbXCJjb2xvclwiXTtcbnZhciBDYXJkU3RhY2tQbHVzSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRNKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMiAzLjVDMiAzLjIyMzg2IDIuMjIzODYgMyAyLjUgM0gxMi41QzEyLjc3NjEgMyAxMyAzLjIyMzg2IDEzIDMuNVY5LjVDMTMgOS43NzYxNCAxMi43NzYxIDEwIDEyLjUgMTBIMi41QzIuMjIzODYgMTAgMiA5Ljc3NjE0IDIgOS41VjMuNVpNMiAxMC45MTQ2QzEuNDE3NCAxMC43MDg3IDEgMTAuMTUzMSAxIDkuNVYzLjVDMSAyLjY3MTU3IDEuNjcxNTcgMiAyLjUgMkgxMi41QzEzLjMyODQgMiAxNCAyLjY3MTU3IDE0IDMuNVY5LjVDMTQgMTAuMTUzMSAxMy41ODI2IDEwLjcwODcgMTMgMTAuOTE0NlYxMS41QzEzIDEyLjMyODQgMTIuMzI4NCAxMyAxMS41IDEzSDMuNUMyLjY3MTU3IDEzIDIgMTIuMzI4NCAyIDExLjVWMTAuOTE0NlpNMTIgMTFWMTEuNUMxMiAxMS43NzYxIDExLjc3NjEgMTIgMTEuNSAxMkgzLjVDMy4yMjM4NiAxMiAzIDExLjc3NjEgMyAxMS41VjExSDEyWk01IDYuNUM1IDYuMjIzODYgNS4yMjM4NiA2IDUuNSA2SDdWNC41QzcgNC4yMjM4NiA3LjIyMzg2IDQgNy41IDRDNy43NzYxNCA0IDggNC4yMjM4NiA4IDQuNVY2SDkuNUM5Ljc3NjE0IDYgMTAgNi4yMjM4NiAxMCA2LjVDMTAgNi43NzYxNCA5Ljc3NjE0IDcgOS41IDdIOFY4LjVDOCA4Ljc3NjE0IDcuNzc2MTQgOSA3LjUgOUM3LjIyMzg2IDkgNyA4Ljc3NjE0IDcgOC41VjdINS41QzUuMjIzODYgNyA1IDYuNzc2MTQgNSA2LjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCROID0gW1wiY29sb3JcIl07XG52YXIgQ2FyZXREb3duSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCROKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC4xODE3OSA2LjE4MTgxQzQuMzU3NTMgNi4wMDYwOCA0LjY0MjQ1IDYuMDA2MDggNC44MTgxOSA2LjE4MTgxTDcuNDk5OTkgOC44NjM2MkwxMC4xODE4IDYuMTgxODFDMTAuMzU3NSA2LjAwNjA4IDEwLjY0MjQgNi4wMDYwOCAxMC44MTgyIDYuMTgxODFDMTAuOTkzOSA2LjM1NzU1IDEwLjk5MzkgNi42NDI0NyAxMC44MTgyIDYuODE4MjFMNy44MTgxOSA5LjgxODIxQzcuNzMzNzkgOS45MDI2IDcuNjE5MzQgOS45NTAwMSA3LjQ5OTk5IDkuOTUwMDFDNy4zODA2NCA5Ljk1MDAxIDcuMjY2MTggOS45MDI2IDcuMTgxNzkgOS44MTgyMUw0LjE4MTc5IDYuODE4MjFDNC4wMDYwNSA2LjY0MjQ3IDQuMDA2MDUgNi4zNTc1NSA0LjE4MTc5IDYuMTgxODFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRPID0gW1wiY29sb3JcIl07XG52YXIgQ2FyZXRMZWZ0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRPKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOC44MTgwOSA0LjE4MTc5QzguOTkzODMgNC4zNTc1MyA4Ljk5MzgzIDQuNjQyNDUgOC44MTgwOSA0LjgxODE5TDYuMTM2MjkgNy40OTk5OUw4LjgxODA5IDEwLjE4MThDOC45OTM4MyAxMC4zNTc1IDguOTkzODMgMTAuNjQyNCA4LjgxODA5IDEwLjgxODJDOC42NDIzNiAxMC45OTM5IDguMzU3NDMgMTAuOTkzOSA4LjE4MTcgMTAuODE4Mkw1LjE4MTcgNy44MTgxOUM1LjA5NzMxIDcuNzMzNzkgNS4wNDk5IDcuNjE5MzMgNS4wNDk5IDcuNDk5OTlDNS4wNDk5IDcuMzgwNjQgNS4wOTczMSA3LjI2NjE4IDUuMTgxNyA3LjE4MTc5TDguMTgxNyA0LjE4MTc5QzguMzU3NDMgNC4wMDYwNSA4LjY0MjM2IDQuMDA2MDUgOC44MTgwOSA0LjE4MTc5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkUCA9IFtcImNvbG9yXCJdO1xudmFyIENhcmV0UmlnaHRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJFApO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk02LjE4MTk0IDQuMTgxODVDNi4zNTc2NyA0LjAwNjExIDYuNjQyNiA0LjAwNjExIDYuODE4MzMgNC4xODE4NUw5LjgxODMzIDcuMTgxODVDOS45MDI3MiA3LjI2NjI0IDkuOTUwMTMgNy4zODA3IDkuOTUwMTMgNy41MDAwNUM5Ljk1MDEzIDcuNjE5NCA5LjkwMjcyIDcuNzMzODYgOS44MTgzMyA3LjgxODI1TDYuODE4MzMgMTAuODE4MkM2LjY0MjYgMTAuOTk0IDYuMzU3NjcgMTAuOTk0IDYuMTgxOTQgMTAuODE4MkM2LjAwNjIgMTAuNjQyNSA2LjAwNjIgMTAuMzU3NiA2LjE4MTk0IDEwLjE4MTlMOC44NjM3NCA3LjUwMDA1TDYuMTgxOTQgNC44MTgyNUM2LjAwNjIgNC42NDI1MSA2LjAwNjIgNC4zNTc1OSA2LjE4MTk0IDQuMTgxODVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRRID0gW1wiY29sb3JcIl07XG52YXIgQ2FyZXRTb3J0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRRKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC45MzE3OSA1LjQzMTc5QzQuNzU2MDUgNS42MDc1MyA0Ljc1NjA1IDUuODkyNDUgNC45MzE3OSA2LjA2ODE5QzUuMTA3NTMgNi4yNDM5MiA1LjM5MjQ1IDYuMjQzOTIgNS41NjgxOSA2LjA2ODE5TDcuNDk5OTkgNC4xMzYzOEw5LjQzMTc5IDYuMDY4MTlDOS42MDc1MyA2LjI0MzkyIDkuODkyNDUgNi4yNDM5MiAxMC4wNjgyIDYuMDY4MTlDMTAuMjQzOSA1Ljg5MjQ1IDEwLjI0MzkgNS42MDc1MyAxMC4wNjgyIDUuNDMxNzlMNy44MTgxOSAzLjE4MTc5QzcuNzMzNzkgMy4wOTc0IDcuNjE5MzMgMy4wNDk5OSA3LjQ5OTk5IDMuMDQ5OTlDNy4zODA2NCAzLjA0OTk5IDcuMjY2MTggMy4wOTc0IDcuMTgxNzkgMy4xODE3OUw0LjkzMTc5IDUuNDMxNzlaTTEwLjA2ODIgOS41NjgxOUMxMC4yNDM5IDkuMzkyNDUgMTAuMjQzOSA5LjEwNzUzIDEwLjA2ODIgOC45MzE3OUM5Ljg5MjQ1IDguNzU2MDYgOS42MDc1MyA4Ljc1NjA2IDkuNDMxNzkgOC45MzE3OUw3LjQ5OTk5IDEwLjg2MzZMNS41NjgxOSA4LjkzMTc5QzUuMzkyNDUgOC43NTYwNiA1LjEwNzUzIDguNzU2MDYgNC45MzE3OSA4LjkzMTc5QzQuNzU2MDUgOS4xMDc1MyA0Ljc1NjA1IDkuMzkyNDUgNC45MzE3OSA5LjU2ODE5TDcuMTgxNzkgMTEuODE4MkM3LjM1NzUzIDExLjk5MzkgNy42NDI0NSAxMS45OTM5IDcuODE4MTkgMTEuODE4MkwxMC4wNjgyIDkuNTY4MTlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRSID0gW1wiY29sb3JcIl07XG52YXIgQ2FyZXRVcEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkUik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTQuMTgxNzkgOC44MTgxOUM0LjAwNjA1IDguNjQyNDUgNC4wMDYwNSA4LjM1NzUzIDQuMTgxNzkgOC4xODE3OUw3LjE4MTc5IDUuMTgxNzlDNy4yNjYxOCA1LjA5NzQgNy4zODA2NCA1LjA0OTk5IDcuNDk5OTkgNS4wNDk5OUM3LjYxOTMzIDUuMDQ5OTkgNy43MzM3OSA1LjA5NzQgNy44MTgxOSA1LjE4MTc5TDEwLjgxODIgOC4xODE3OUMxMC45OTM5IDguMzU3NTMgMTAuOTkzOSA4LjY0MjQ1IDEwLjgxODIgOC44MTgxOUMxMC42NDI0IDguOTkzOTIgMTAuMzU3NSA4Ljk5MzkyIDEwLjE4MTggOC44MTgxOUw3LjQ5OTk5IDYuMTM2MzhMNC44MTgxOSA4LjgxODE5QzQuNjQyNDUgOC45OTM5MiA0LjM1NzUzIDguOTkzOTIgNC4xODE3OSA4LjgxODE5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkUyA9IFtcImNvbG9yXCJdO1xudmFyIENoYXRCdWJibGVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJFMpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMi41IDNMMi41IDMuMDAwMDJDMS42NzE1NyAzLjAwMDAyIDEgMy42NzE2IDEgNC41MDAwMlY5LjUwMDAzQzEgMTAuMzI4NSAxLjY3MTU3IDExIDIuNSAxMUg3LjUwMDAzQzcuNjMyNjQgMTEgNy43NTk4MiAxMS4wNTI3IDcuODUzNTggMTEuMTQ2NUwxMCAxMy4yOTI5VjExLjVDMTAgMTEuMjIzOSAxMC4yMjM5IDExIDEwLjUgMTFIMTIuNUMxMy4zMjg0IDExIDE0IDEwLjMyODUgMTQgOS41MDAwM1Y0LjVDMTQgMy42NzE1NyAxMy4zMjg0IDMgMTIuNSAzWk0yLjQ5OTk5IDIuMDAwMDJMMTIuNSAyQzEzLjg4MDcgMiAxNSAzLjExOTI5IDE1IDQuNVY5LjUwMDAzQzE1IDEwLjg4MDcgMTMuODgwNyAxMiAxMi41IDEySDExVjE0LjVDMTEgMTQuNzAyMiAxMC44NzgyIDE0Ljg4NDUgMTAuNjkxMyAxNC45NjE5QzEwLjUwNDUgMTUuMDM5MyAxMC4yODk0IDE0Ljk5NjUgMTAuMTQ2NCAxNC44NTM2TDcuMjkyOTIgMTJIMi41QzEuMTE5MjkgMTIgMCAxMC44ODA3IDAgOS41MDAwM1Y0LjUwMDAyQzAgMy4xMTkzMSAxLjExOTI4IDIuMDAwMDMgMi40OTk5OSAyLjAwMDAyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkVCA9IFtcImNvbG9yXCJdO1xudmFyIENoZWNrSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRUKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTEuNDY2OSAzLjcyNjg0QzExLjc1NTggMy45MTU3NCAxMS44MzY5IDQuMzAzMDggMTEuNjQ4IDQuNTkxOThMNy4zOTc5OSAxMS4wOTJDNy4yOTc4MyAxMS4yNDUyIDcuMTM1NTYgMTEuMzQ2NyA2Ljk1NDAyIDExLjM2OTlDNi43NzI0NyAxMS4zOTMxIDYuNTg5ODkgMTEuMzM1NSA2LjQ1NDQ2IDExLjIxMjRMMy43MDQ0NiA4LjcxMjQxQzMuNDQ5MDUgOC40ODAyMiAzLjQzMDIzIDguMDg0OTQgMy42NjI0MiA3LjgyOTUzQzMuODk0NjEgNy41NzQxMiA0LjI4OTg5IDcuNTU1MjkgNC41NDUzIDcuNzg3NDlMNi43NTI5MiA5Ljc5NDQxTDEwLjYwMTggMy45MDc5MkMxMC43OTA3IDMuNjE5MDIgMTEuMTc4IDMuNTM3OTUgMTEuNDY2OSAzLjcyNjg0WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkVSA9IFtcImNvbG9yXCJdO1xudmFyIENoZWNrQ2lyY2xlZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkVSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTEgMC44NzcwNDVDMy44NDIyMiAwLjg3NzA0NSAwLjg3NzA3NSAzLjg0MjE5IDAuODc3MDc1IDcuNDk5ODhDMC44NzcwNzUgMTEuMTU3NSAzLjg0MjIyIDE0LjEyMjcgNy40OTk5MSAxNC4xMjI3QzExLjE1NzYgMTQuMTIyNyAxNC4xMjI3IDExLjE1NzUgMTQuMTIyNyA3LjQ5OTg4QzE0LjEyMjcgMy44NDIxOSAxMS4xNTc2IDAuODc3MDQ1IDcuNDk5OTEgMC44NzcwNDVaTTEuODI3MDggNy40OTk4OEMxLjgyNzA4IDQuMzY2ODYgNC4zNjY4OSAxLjgyNzA0IDcuNDk5OTEgMS44MjcwNEMxMC42MzI5IDEuODI3MDQgMTMuMTcyNyA0LjM2Njg2IDEzLjE3MjcgNy40OTk4OEMxMy4xNzI3IDEwLjYzMjkgMTAuNjMyOSAxMy4xNzI3IDcuNDk5OTEgMTMuMTcyN0M0LjM2Njg5IDEzLjE3MjcgMS44MjcwOCAxMC42MzI5IDEuODI3MDggNy40OTk4OFpNMTAuMTU4OSA1LjUzNzc0QzEwLjMxNzggNS4zMTE5MSAxMC4yNjM2IDUuMDAwMDEgMTAuMDM3OCA0Ljg0MTA5QzkuODExOTQgNC42ODIxNyA5LjUwMDA0IDQuNzM2NDIgOS4zNDExMiA0Ljk2MjI1TDYuNTE5NzcgOC45NzE1NEw1LjM1NjgxIDcuNzg3MDZDNS4xNjMzNCA3LjU5MDAyIDQuODQ2NzcgNy41ODcxMSA0LjY0OTczIDcuNzgwNThDNC40NTI2OCA3Ljk3NDA0IDQuNDQ5NzggOC4yOTA2MSA0LjY0MzI1IDguNDg3NjVMNi4yMjY1OCAxMC4xMDAzQzYuMzMwNTQgMTAuMjA2MiA2LjQ3NjE3IDEwLjI2MDQgNi42MjQwNyAxMC4yNDgzQzYuNzcxOTcgMTAuMjM2MyA2LjkwNjg2IDEwLjE1OTEgNi45OTIyNiAxMC4wMzc3TDEwLjE1ODkgNS41Mzc3NFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJFYgPSBbXCJjb2xvclwiXTtcbnZhciBDaGVja2JveEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkVik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMgM0gxMlYxMkgzTDMgM1pNMiAzQzIgMi40NDc3MSAyLjQ0NzcyIDIgMyAySDEyQzEyLjU1MjMgMiAxMyAyLjQ0NzcyIDEzIDNWMTJDMTMgMTIuNTUyMyAxMi41NTIzIDEzIDEyIDEzSDNDMi40NDc3MSAxMyAyIDEyLjU1MjMgMiAxMlYzWk0xMC4zNDk4IDUuNTExMDVDMTAuNTA2IDUuMjgzMzcgMTAuNDQ4MSA0Ljk3MjEyIDEwLjIyMDQgNC44MTU4N0M5Ljk5Mjc1IDQuNjU5NjEgOS42ODE1IDQuNzE3NTEgOS41MjUyNSA0Ljk0NTE5TDYuNjQwNDggOS4xNDg1N0w1LjE5NzMzIDcuNDA4ODlDNS4wMjEwMiA3LjE5NjM1IDQuNzA1OCA3LjE2Njk5IDQuNDkzMjcgNy4zNDMyOUM0LjI4MDczIDcuNTE5NiA0LjI1MTM3IDcuODM0ODIgNC40Mjc2NyA4LjA0NzM1TDYuMjkzNCAxMC4yOTY0QzYuMzkzNDggMTAuNDE3MSA2LjU0NDM3IDEwLjQ4MzggNi43MDA5NyAxMC40NzY3QzYuODU3NTcgMTAuNDY5NSA3LjAwMTc3IDEwLjM4OTQgNy4wOTA0NyAxMC4yNjAxTDEwLjM0OTggNS41MTEwNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJFcgPSBbXCJjb2xvclwiXTtcbnZhciBDaGV2cm9uRG93bkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkVyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMuMTM1MjMgNi4xNTgwM0MzLjMyNDEgNS45NTY1NyAzLjY0MDUyIDUuOTQ2MzcgMy44NDE5NyA2LjEzNTIzTDcuNSA5LjU2NDY0TDExLjE1OCA2LjEzNTIzQzExLjM1OTUgNS45NDYzNyAxMS42NzU5IDUuOTU2NTcgMTEuODY0OCA2LjE1ODAzQzEyLjA1MzYgNi4zNTk0OSAxMi4wNDM0IDYuNjc1OTEgMTEuODQyIDYuODY0NzdMNy44NDE5NyAxMC42MTQ4QzcuNjQ5NjQgMTAuNzk1MSA3LjM1MDM2IDEwLjc5NTEgNy4xNTgwMyAxMC42MTQ4TDMuMTU4MDMgNi44NjQ3N0MyLjk1NjU3IDYuNjc1OTEgMi45NDYzNyA2LjM1OTQ5IDMuMTM1MjMgNi4xNTgwM1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJFggPSBbXCJjb2xvclwiXTtcbnZhciBDaGV2cm9uTGVmdEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkWCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTguODQxODIgMy4xMzUxNEM5LjA0MzI3IDMuMzI0MDEgOS4wNTM0OCAzLjY0MDQyIDguODY0NjIgMy44NDE4OEw1LjQzNTIxIDcuNDk5OTFMOC44NjQ2MiAxMS4xNTc5QzkuMDUzNDggMTEuMzU5NCA5LjA0MzI3IDExLjY3NTggOC44NDE4MiAxMS44NjQ3QzguNjQwMzYgMTIuMDUzNSA4LjMyMzk0IDEyLjA0MzMgOC4xMzUwOCAxMS44NDE5TDQuMzg1MDggNy44NDE4OEM0LjIwNDc3IDcuNjQ5NTUgNC4yMDQ3NyA3LjM1MDI3IDQuMzg1MDggNy4xNTc5NEw4LjEzNTA4IDMuMTU3OTRDOC4zMjM5NCAyLjk1NjQ4IDguNjQwMzYgMi45NDYyOCA4Ljg0MTgyIDMuMTM1MTRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRZID0gW1wiY29sb3JcIl07XG52YXIgQ2hldnJvblJpZ2h0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRZKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNi4xNTg0IDMuMTM1MDhDNi4zNTk4NSAyLjk0NjIxIDYuNjc2MjcgMi45NTY0MiA2Ljg2NTE0IDMuMTU3ODhMMTAuNjE1MSA3LjE1Nzg4QzEwLjc5NTQgNy4zNTAyIDEwLjc5NTQgNy42NDk0OSAxMC42MTUxIDcuODQxODJMNi44NjUxNCAxMS44NDE4QzYuNjc2MjcgMTIuMDQzMyA2LjM1OTg1IDEyLjA1MzUgNi4xNTg0IDExLjg2NDZDNS45NTY5NCAxMS42NzU3IDUuOTQ2NzMgMTEuMzU5MyA2LjEzNTYgMTEuMTU3OUw5LjU2NSA3LjQ5OTg1TDYuMTM1NiAzLjg0MTgyQzUuOTQ2NzMgMy42NDAzNiA1Ljk1Njk0IDMuMzIzOTQgNi4xNTg0IDMuMTM1MDhaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRaID0gW1wiY29sb3JcIl07XG52YXIgQ2hldnJvblVwSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRaKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy4xMzUyMyA4Ljg0MTk3QzMuMzI0MSA5LjA0MzQzIDMuNjQwNTIgOS4wNTM2MyAzLjg0MTk3IDguODY0NzdMNy41IDUuNDM1MzZMMTEuMTU4IDguODY0NzdDMTEuMzU5NSA5LjA1MzYzIDExLjY3NTkgOS4wNDM0MyAxMS44NjQ4IDguODQxOTdDMTIuMDUzNiA4LjY0MDUxIDEyLjA0MzQgOC4zMjQwOSAxMS44NDIgOC4xMzUyM0w3Ljg0MTk3IDQuMzg1MjNDNy42NDk2NCA0LjIwNDkyIDcuMzUwMzYgNC4yMDQ5MiA3LjE1ODAzIDQuMzg1MjNMMy4xNTgwMyA4LjEzNTIzQzIuOTU2NTcgOC4zMjQwOSAyLjk0NjM3IDguNjQwNTEgMy4xMzUyMyA4Ljg0MTk3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkXyA9IFtcImNvbG9yXCJdO1xudmFyIENpcmNsZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkXyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTAuODc3MDc1IDcuNDk5OTFDMC44NzcwNzUgMy44NDIyMiAzLjg0MjIyIDAuODc3MDc1IDcuNDk5OTEgMC44NzcwNzVDMTEuMTU3NiAwLjg3NzA3NSAxNC4xMjI3IDMuODQyMjIgMTQuMTIyNyA3LjQ5OTkxQzE0LjEyMjcgMTEuMTU3NiAxMS4xNTc2IDE0LjEyMjcgNy40OTk5MSAxNC4xMjI3QzMuODQyMjIgMTQuMTIyNyAwLjg3NzA3NSAxMS4xNTc2IDAuODc3MDc1IDcuNDk5OTFaTTcuNDk5OTEgMS44MjcwOEM0LjM2Njg5IDEuODI3MDggMS44MjcwOCA0LjM2Njg5IDEuODI3MDggNy40OTk5MUMxLjgyNzA4IDEwLjYzMjkgNC4zNjY4OSAxMy4xNzI3IDcuNDk5OTEgMTMuMTcyN0MxMC42MzI5IDEzLjE3MjcgMTMuMTcyNyAxMC42MzI5IDEzLjE3MjcgNy40OTk5MUMxMy4xNzI3IDQuMzY2ODkgMTAuNjMyOSAxLjgyNzA4IDcuNDk5OTEgMS44MjcwOFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJCQgPSBbXCJjb2xvclwiXTtcbnZhciBDaXJjbGVCYWNrc2xhc2hJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJCQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjQ5OTkxIDAuODc3MDc1QzMuODQyMjIgMC44NzcwNzUgMC44NzcwNzUgMy44NDIyMiAwLjg3NzA3NSA3LjQ5OTkxQzAuODc3MDc1IDExLjE1NzYgMy44NDIyMiAxNC4xMjI3IDcuNDk5OTEgMTQuMTIyN0MxMS4xNTc2IDE0LjEyMjcgMTQuMTIyNyAxMS4xNTc2IDE0LjEyMjcgNy40OTk5MUMxNC4xMjI3IDMuODQyMjIgMTEuMTU3NiAwLjg3NzA3NSA3LjQ5OTkxIDAuODc3MDc1Wk0zLjg1NzY4IDMuMTUwNTdDNC44NDMxMSAyLjMyNDQ4IDYuMTEzNDIgMS44MjcwOCA3LjQ5OTkxIDEuODI3MDhDMTAuNjMyOSAxLjgyNzA4IDEzLjE3MjcgNC4zNjY4OSAxMy4xNzI3IDcuNDk5OTFDMTMuMTcyNyA4Ljg4NjM4IDEyLjY3NTMgMTAuMTU2NyAxMS44NDkyIDExLjE0MjFMMy44NTc2OCAzLjE1MDU3Wk0zLjE1MDU3IDMuODU3NjhDMi4zMjQ0OCA0Ljg0MzExIDEuODI3MDggNi4xMTM0MiAxLjgyNzA4IDcuNDk5OTFDMS44MjcwOCAxMC42MzI5IDQuMzY2ODkgMTMuMTcyNyA3LjQ5OTkxIDEzLjE3MjdDOC44ODYzOCAxMy4xNzI3IDEwLjE1NjcgMTIuNjc1MyAxMS4xNDIxIDExLjg0OTJMMy4xNTA1NyAzLjg1NzY4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMTAgPSBbXCJjb2xvclwiXTtcbnZhciBDbGlwYm9hcmRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDEwKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNSAyVjFIMTBWMkg1Wk00Ljc1IDBDNC4zMzU3OSAwIDQgMC4zMzU3ODYgNCAwLjc1VjFIMy41QzIuNjcxNTcgMSAyIDEuNjcxNTcgMiAyLjVWMTIuNUMyIDEzLjMyODQgMi42NzE1NyAxNCAzLjUgMTRIMTEuNUMxMi4zMjg0IDE0IDEzIDEzLjMyODQgMTMgMTIuNVYyLjVDMTMgMS42NzE1NyAxMi4zMjg0IDEgMTEuNSAxSDExVjAuNzVDMTEgMC4zMzU3ODYgMTAuNjY0MiAwIDEwLjI1IDBINC43NVpNMTEgMlYyLjI1QzExIDIuNjY0MjEgMTAuNjY0MiAzIDEwLjI1IDNINC43NUM0LjMzNTc5IDMgNCAyLjY2NDIxIDQgMi4yNVYySDMuNUMzLjIyMzg2IDIgMyAyLjIyMzg2IDMgMi41VjEyLjVDMyAxMi43NzYxIDMuMjIzODYgMTMgMy41IDEzSDExLjVDMTEuNzc2MSAxMyAxMiAxMi43NzYxIDEyIDEyLjVWMi41QzEyIDIuMjIzODYgMTEuNzc2MSAyIDExLjUgMkgxMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDExID0gW1wiY29sb3JcIl07XG52YXIgQ2xpcGJvYXJkQ29weUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMTEpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk01IDJWMUgxMFYySDVaTTQuNzUgMEM0LjMzNTc5IDAgNCAwLjMzNTc4NiA0IDAuNzVWMUgzLjVDMi42NzE1NyAxIDIgMS42NzE1NyAyIDIuNVYxMi41QzIgMTMuMzI4NCAyLjY3MTU3IDE0IDMuNSAxNEg3VjEzSDMuNUMzLjIyMzg2IDEzIDMgMTIuNzc2MSAzIDEyLjVWMi41QzMgMi4yMjM4NiAzLjIyMzg2IDIgMy41IDJINFYyLjI1QzQgMi42NjQyMSA0LjMzNTc5IDMgNC43NSAzSDEwLjI1QzEwLjY2NDIgMyAxMSAyLjY2NDIxIDExIDIuMjVWMkgxMS41QzExLjc3NjEgMiAxMiAyLjIyMzg2IDEyIDIuNVY3SDEzVjIuNUMxMyAxLjY3MTU3IDEyLjMyODQgMSAxMS41IDFIMTFWMC43NUMxMSAwLjMzNTc4NiAxMC42NjQyIDAgMTAuMjUgMEg0Ljc1Wk05IDguNUM5IDguNzc2MTQgOC43NzYxNCA5IDguNSA5QzguMjIzODYgOSA4IDguNzc2MTQgOCA4LjVDOCA4LjIyMzg2IDguMjIzODYgOCA4LjUgOEM4Ljc3NjE0IDggOSA4LjIyMzg2IDkgOC41Wk0xMC41IDlDMTAuNzc2MSA5IDExIDguNzc2MTQgMTEgOC41QzExIDguMjIzODYgMTAuNzc2MSA4IDEwLjUgOEMxMC4yMjM5IDggMTAgOC4yMjM4NiAxMCA4LjVDMTAgOC43NzYxNCAxMC4yMjM5IDkgMTAuNSA5Wk0xMyA4LjVDMTMgOC43NzYxNCAxMi43NzYxIDkgMTIuNSA5QzEyLjIyMzkgOSAxMiA4Ljc3NjE0IDEyIDguNUMxMiA4LjIyMzg2IDEyLjIyMzkgOCAxMi41IDhDMTIuNzc2MSA4IDEzIDguMjIzODYgMTMgOC41Wk0xNC41IDlDMTQuNzc2MSA5IDE1IDguNzc2MTQgMTUgOC41QzE1IDguMjIzODYgMTQuNzc2MSA4IDE0LjUgOEMxNC4yMjM5IDggMTQgOC4yMjM4NiAxNCA4LjVDMTQgOC43NzYxNCAxNC4yMjM5IDkgMTQuNSA5Wk0xNSAxMC41QzE1IDEwLjc3NjEgMTQuNzc2MSAxMSAxNC41IDExQzE0LjIyMzkgMTEgMTQgMTAuNzc2MSAxNCAxMC41QzE0IDEwLjIyMzkgMTQuMjIzOSAxMCAxNC41IDEwQzE0Ljc3NjEgMTAgMTUgMTAuMjIzOSAxNSAxMC41Wk0xNC41IDEzQzE0Ljc3NjEgMTMgMTUgMTIuNzc2MSAxNSAxMi41QzE1IDEyLjIyMzkgMTQuNzc2MSAxMiAxNC41IDEyQzE0LjIyMzkgMTIgMTQgMTIuMjIzOSAxNCAxMi41QzE0IDEyLjc3NjEgMTQuMjIzOSAxMyAxNC41IDEzWk0xNC41IDE1QzE0Ljc3NjEgMTUgMTUgMTQuNzc2MSAxNSAxNC41QzE1IDE0LjIyMzkgMTQuNzc2MSAxNCAxNC41IDE0QzE0LjIyMzkgMTQgMTQgMTQuMjIzOSAxNCAxNC41QzE0IDE0Ljc3NjEgMTQuMjIzOSAxNSAxNC41IDE1Wk04LjUgMTFDOC43NzYxNCAxMSA5IDEwLjc3NjEgOSAxMC41QzkgMTAuMjIzOSA4Ljc3NjE0IDEwIDguNSAxMEM4LjIyMzg2IDEwIDggMTAuMjIzOSA4IDEwLjVDOCAxMC43NzYxIDguMjIzODYgMTEgOC41IDExWk05IDEyLjVDOSAxMi43NzYxIDguNzc2MTQgMTMgOC41IDEzQzguMjIzODYgMTMgOCAxMi43NzYxIDggMTIuNUM4IDEyLjIyMzkgOC4yMjM4NiAxMiA4LjUgMTJDOC43NzYxNCAxMiA5IDEyLjIyMzkgOSAxMi41Wk04LjUgMTVDOC43NzYxNCAxNSA5IDE0Ljc3NjEgOSAxNC41QzkgMTQuMjIzOSA4Ljc3NjE0IDE0IDguNSAxNEM4LjIyMzg2IDE0IDggMTQuMjIzOSA4IDE0LjVDOCAxNC43NzYxIDguMjIzODYgMTUgOC41IDE1Wk0xMSAxNC41QzExIDE0Ljc3NjEgMTAuNzc2MSAxNSAxMC41IDE1QzEwLjIyMzkgMTUgMTAgMTQuNzc2MSAxMCAxNC41QzEwIDE0LjIyMzkgMTAuMjIzOSAxNCAxMC41IDE0QzEwLjc3NjEgMTQgMTEgMTQuMjIzOSAxMSAxNC41Wk0xMi41IDE1QzEyLjc3NjEgMTUgMTMgMTQuNzc2MSAxMyAxNC41QzEzIDE0LjIyMzkgMTIuNzc2MSAxNCAxMi41IDE0QzEyLjIyMzkgMTQgMTIgMTQuMjIzOSAxMiAxNC41QzEyIDE0Ljc3NjEgMTIuMjIzOSAxNSAxMi41IDE1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMTIgPSBbXCJjb2xvclwiXTtcbnZhciBDbG9ja0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMTIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjUwMDA5IDAuODc3MDE0QzMuODQyNDEgMC44NzcwMTQgMC44NzcyNTggMy44NDIxNiAwLjg3NzI1OCA3LjQ5OTg0QzAuODc3MjU4IDExLjE1NzUgMy44NDI0IDE0LjEyMjcgNy41MDAwOSAxNC4xMjI3QzExLjE1NzggMTQuMTIyNyAxNC4xMjI5IDExLjE1NzUgMTQuMTIyOSA3LjQ5OTg0QzE0LjEyMjkgMy44NDIxNiAxMS4xNTc3IDAuODc3MDE0IDcuNTAwMDkgMC44NzcwMTRaTTEuODI3MjYgNy40OTk4NEMxLjgyNzI2IDQuMzY2ODMgNC4zNjcwOCAxLjgyNzAxIDcuNTAwMDkgMS44MjcwMUMxMC42MzMxIDEuODI3MDEgMTMuMTcyOSA0LjM2NjgzIDEzLjE3MjkgNy40OTk4NEMxMy4xNzI5IDEwLjYzMjggMTAuNjMzMSAxMy4xNzI3IDcuNTAwMDkgMTMuMTcyN0M0LjM2NzA4IDEzLjE3MjcgMS44MjcyNiAxMC42MzI4IDEuODI3MjYgNy40OTk4NFpNOCA0LjUwMDAxQzggNC4yMjM4NyA3Ljc3NjE0IDQuMDAwMDEgNy41IDQuMDAwMDFDNy4yMjM4NiA0LjAwMDAxIDcgNC4yMjM4NyA3IDQuNTAwMDFWNy41MDAwMUM3IDcuNjMyNjIgNy4wNTI2OCA3Ljc1OTggNy4xNDY0NSA3Ljg1MzU3TDkuMTQ2NDUgOS44NTM1N0M5LjM0MTcxIDEwLjA0ODggOS42NTgyOSAxMC4wNDg4IDkuODUzNTUgOS44NTM1N0MxMC4wNDg4IDkuNjU4MzEgMTAuMDQ4OCA5LjM0MTcyIDkuODUzNTUgOS4xNDY0Nkw4IDcuMjkyOTFWNC41MDAwMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDEzID0gW1wiY29sb3JcIl07XG52YXIgQ29kZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMTMpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk05Ljk2NDI0IDIuNjg1NzFDMTAuMDY2OCAyLjQyOTMxIDkuOTQyMDkgMi4xMzgzMyA5LjY4NTcgMi4wMzU3N0M5LjQyOTMgMS45MzMyMiA5LjEzODMyIDIuMDU3OTIgOS4wMzU3NiAyLjMxNDMyTDUuMDM1NzYgMTIuMzE0M0M0LjkzMzIgMTIuNTcwNyA1LjA1NzkxIDEyLjg2MTcgNS4zMTQzIDEyLjk2NDJDNS41NzA3IDEzLjA2NjggNS44NjE2OCAxMi45NDIxIDUuOTY0MjQgMTIuNjg1N0w5Ljk2NDI0IDIuNjg1NzFaTTMuODUzNTUgNS4xNDY0NkM0LjA0ODgyIDUuMzQxNzIgNC4wNDg4MiA1LjY1ODMgMy44NTM1NSA1Ljg1MzU2TDIuMjA3MTEgNy41MDAwMUwzLjg1MzU1IDkuMTQ2NDZDNC4wNDg4MiA5LjM0MTcyIDQuMDQ4ODIgOS42NTgzIDMuODUzNTUgOS44NTM1NkMzLjY1ODI5IDEwLjA0ODggMy4zNDE3MSAxMC4wNDg4IDMuMTQ2NDUgOS44NTM1NkwxLjE0NjQ1IDcuODUzNTZDMC45NTExODQgNy42NTgzIDAuOTUxMTg0IDcuMzQxNzIgMS4xNDY0NSA3LjE0NjQ2TDMuMTQ2NDUgNS4xNDY0NkMzLjM0MTcxIDQuOTUxMiAzLjY1ODI5IDQuOTUxMiAzLjg1MzU1IDUuMTQ2NDZaTTExLjE0NjQgNS4xNDY0NkMxMS4zNDE3IDQuOTUxMiAxMS42NTgzIDQuOTUxMiAxMS44NTM2IDUuMTQ2NDZMMTMuODUzNiA3LjE0NjQ2QzE0LjA0ODggNy4zNDE3MiAxNC4wNDg4IDcuNjU4MyAxMy44NTM2IDcuODUzNTZMMTEuODUzNiA5Ljg1MzU2QzExLjY1ODMgMTAuMDQ4OCAxMS4zNDE3IDEwLjA0ODggMTEuMTQ2NCA5Ljg1MzU2QzEwLjk1MTIgOS42NTgzIDEwLjk1MTIgOS4zNDE3MiAxMS4xNDY0IDkuMTQ2NDZMMTIuNzkyOSA3LjUwMDAxTDExLjE0NjQgNS44NTM1NkMxMC45NTEyIDUuNjU4MyAxMC45NTEyIDUuMzQxNzIgMTEuMTQ2NCA1LjE0NjQ2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMTQgPSBbXCJjb2xvclwiXTtcbnZhciBDb2RlU2FuZGJveExvZ29JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDE0KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy43MTE0NCAwLjc5NjkwMkM3LjU3NzQxIDAuNzM0MzU3IDcuNDIyNTcgMC43MzQzNTcgNy4yODg1NSAwLjc5NjkwMkwxLjI4ODU1IDMuNTk2OUMxLjExMjUxIDMuNjc5MDUgMC45OTk5OTMgMy44NTU3MyAwLjk5OTk5MyA0LjA0OTk5VjEwLjk1QzAuOTk5OTkzIDExLjE0NDMgMS4xMTI1MSAxMS4zMjA5IDEuMjg4NTUgMTEuNDAzMUw3LjI4ODU1IDE0LjIwMzFDNy40MjI1NyAxNC4yNjU2IDcuNTc3NDEgMTQuMjY1NiA3LjcxMTQ0IDE0LjIwMzFMMTMuNzExNCAxMS40MDMxQzEzLjg4NzUgMTEuMzIwOSAxNCAxMS4xNDQzIDE0IDEwLjk1VjQuMDQ5OTlDMTQgMy44NTU3MyAxMy44ODc1IDMuNjc5MDUgMTMuNzExNCAzLjU5NjlMNy43MTE0NCAwLjc5NjkwMlpNNy40OTk5OSAzLjE1Njc0TDUuOTgwMzkgMi41MTA5MUw3LjQ5OTk5IDEuODAxNzZMOS4wMTk1OSAyLjUxMDkxTDcuNDk5OTkgMy4xNTY3NFpNNy42OTU1NiA0LjE2MDE4TDEwLjIzODIgMy4wNzk1OEwxMi4yNzE5IDQuMDI4NjVMNy40OTk5OSA2LjA1NjcxTDIuNzI4MDggNC4wMjg2NUw0Ljc2MTgxIDMuMDc5NThMNy4zMDQ0MiA0LjE2MDE4QzcuNDI5MzkgNC4yMTMzIDcuNTcwNTkgNC4yMTMzIDcuNjk1NTYgNC4xNjAxOFpNNy45OTk5OSA2LjkzMDc4TDEzIDQuODA1NzhWNy45Mjk2NkwxMS4wODIxIDguODExOUMxMC43MjczIDguOTc1MDkgMTAuNSA5LjMyOTg4IDEwLjUgOS43MjAzOVYxMS43OTgyTDcuOTk5OTkgMTIuOTY0OVY2LjkzMDc4Wk0xMS41IDExLjMzMTZMMTMgMTAuNjMxNlY5LjAzMDM5TDExLjUgOS43MjAzOVYxMS4zMzE2Wk02Ljk5OTk5IDYuOTMwNzhWMTIuOTY0OUw0LjUwMjMxIDExLjc5OTNWOS43MjAzNkM0LjUwMjMxIDkuMzI5ODUgNC4yNzQ5OSA4Ljk3NTA2IDMuOTIwMjIgOC44MTE4N0wxLjk5OTk5IDcuOTI4NTZWNC44MDU3OEw2Ljk5OTk5IDYuOTMwNzhaTTEuOTk5OTkgMTAuNjMxNkwzLjUwMjMxIDExLjMzMjZMMy41MDIzMSA5LjcyMDM2TDEuOTk5OTkgOS4wMjkyOVYxMC42MzE2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMTUgPSBbXCJjb2xvclwiXTtcbnZhciBDb2xvcldoZWVsSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxNSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTAuODc3MDc1IDcuNDk5ODVDMC44NzcwNzUgMy44NDIxNiAzLjg0MjIyIDAuODc3MDE0IDcuNDk5OTEgMC44NzcwMTRDMTEuMTU3NiAwLjg3NzAxNCAxNC4xMjI3IDMuODQyMTYgMTQuMTIyNyA3LjQ5OTg1QzE0LjEyMjcgMTEuMTU3NSAxMS4xNTc2IDE0LjEyMjcgNy40OTk5MSAxNC4xMjI3QzMuODQyMjIgMTQuMTIyNyAwLjg3NzA3NSAxMS4xNTc1IDAuODc3MDc1IDcuNDk5ODVaTTMuNzgxMzUgMy4yMTU2NUM0LjY4Mjk4IDIuNDMyMzkgNS44MzQyOSAxLjkyOTA0IDcuMDk5OTggMS44NDA4OVY2LjUzNDI5TDMuNzgxMzUgMy4yMTU2NVpNMy4yMTU2NyAzLjc4MTM0QzIuNDMyNDIgNC42ODI5OCAxLjkyOTA5IDUuODM0MjggMS44NDA5NSA3LjA5OTk3SDYuNTM0M0wzLjIxNTY3IDMuNzgxMzRaTTYuNTM0MyA3Ljg5OTk3SDEuODQwOTdDMS45MjkxNiA5LjE2NTYyIDIuNDMyNTMgMTAuMzE2OSAzLjIxNTc5IDExLjIxODVMNi41MzQzIDcuODk5OTdaTTMuNzgxNDkgMTEuNzg0MkM0LjY4MzEgMTIuNTY3MyA1LjgzNDM1IDEzLjA3MDcgNy4wOTk5OCAxMy4xNTg4VjguNDY1NjZMMy43ODE0OSAxMS43ODQyWk03Ljg5OTk4IDguNDY1NjZWMTMuMTU4OEM5LjE2NTU5IDEzLjA3MDYgMTAuMzE2OCAxMi41NjczIDExLjIxODQgMTEuNzg0MUw3Ljg5OTk4IDguNDY1NjZaTTExLjc4NDEgMTEuMjE4NEMxMi41NjczIDEwLjMxNjggMTMuMDcwNyA5LjE2NTU4IDEzLjE1ODggNy44OTk5N0g4LjQ2NTY3TDExLjc4NDEgMTEuMjE4NFpNOC40NjU2NyA3LjA5OTk3SDEzLjE1ODlDMTMuMDcwNyA1LjgzNDMyIDEyLjU2NzQgNC42ODMwNSAxMS43ODQyIDMuNzgxNDNMOC40NjU2NyA3LjA5OTk3Wk0xMS4yMTg1IDMuMjE1NzNDMTAuMzE2OSAyLjQzMjQ2IDkuMTY1NjUgMS45MjkwOSA3Ljg5OTk4IDEuODQwOVY2LjUzNDI5TDExLjIxODUgMy4yMTU3M1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDE2ID0gW1wiY29sb3JcIl07XG52YXIgQ29sdW1uU3BhY2luZ0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMTYpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk04LjAwMDEyIDEuNUM4LjAwMDEyIDEuMjIzODYgNy43NzYyNiAxIDcuNTAwMTIgMUM3LjIyMzk4IDEgNy4wMDAxMiAxLjIyMzg2IDcuMDAwMTIgMS41VjEzLjVDNy4wMDAxMiAxMy43NzYxIDcuMjIzOTggMTQgNy41MDAxMiAxNEM3Ljc3NjI2IDE0IDguMDAwMTIgMTMuNzc2MSA4LjAwMDEyIDEzLjVWMS41Wk0zLjMxODEyIDUuODE4QzMuNDkzODYgNS42NDIyNyAzLjQ5Mzg2IDUuMzU3MzQgMy4zMTgxMiA1LjE4MTYxQzMuMTQyMzkgNS4wMDU4NyAyLjg1NzQ2IDUuMDA1ODcgMi42ODE3MyA1LjE4MTYxTDAuNjgxNzI5IDcuMTgxNjFDMC41MDU5OTMgNy4zNTczNCAwLjUwNTk5MyA3LjY0MjI3IDAuNjgxNzI5IDcuODE4TDIuNjgxNzMgOS44MThDMi44NTc0NiA5Ljk5Mzc0IDMuMTQyMzkgOS45OTM3NCAzLjMxODEyIDkuODE4QzMuNDkzODYgOS42NDIyNyAzLjQ5Mzg2IDkuMzU3MzQgMy4zMTgxMiA5LjE4MTYxTDIuMDg2MzIgNy45NDk4SDUuNTAwMTdDNS43NDg3IDcuOTQ5OCA1Ljk1MDE3IDcuNzQ4MzMgNS45NTAxNyA3LjQ5OThDNS45NTAxNyA3LjI1MTI4IDUuNzQ4NyA3LjA0OTggNS41MDAxNyA3LjA0OThIMi4wODYzMkwzLjMxODEyIDUuODE4Wk0xMi4zMTgxIDUuMTgxNjFDMTIuMTQyNCA1LjAwNTg3IDExLjg1NzUgNS4wMDU4NyAxMS42ODE3IDUuMTgxNjFDMTEuNTA2IDUuMzU3MzQgMTEuNTA2IDUuNjQyMjcgMTEuNjgxNyA1LjgxOEwxMi45MTM1IDcuMDQ5OEg5LjUwMDE3QzkuMjUxNjQgNy4wNDk4IDkuMDUwMTcgNy4yNTEyOCA5LjA1MDE3IDcuNDk5OEM5LjA1MDE3IDcuNzQ4MzMgOS4yNTE2NCA3Ljk0OTggOS41MDAxNyA3Ljk0OThIMTIuOTEzNUwxMS42ODE3IDkuMTgxNjFDMTEuNTA2IDkuMzU3MzQgMTEuNTA2IDkuNjQyMjcgMTEuNjgxNyA5LjgxOEMxMS44NTc1IDkuOTkzNzQgMTIuMTQyNCA5Ljk5Mzc0IDEyLjMxODEgOS44MThMMTQuMzE4MSA3LjgxOEMxNC40OTM5IDcuNjQyMjcgMTQuNDkzOSA3LjM1NzM0IDE0LjMxODEgNy4xODE2MUwxMi4zMTgxIDUuMTgxNjFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxNyA9IFtcImNvbG9yXCJdO1xudmFyIENvbHVtbnNJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDE3KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMi4xNDk5OCAxNFYxSDAuODQ5OTc2VjE0SDIuMTQ5OThaTTYuMTQ5OTggMTRWMUg0Ljg0OTk4VjE0SDYuMTQ5OThaTTEwLjE1IDFWMTRIOC44NDk5OFYxSDEwLjE1Wk0xNC4xNSAxNFYxSDEyLjg1VjE0SDE0LjE1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMTggPSBbXCJjb2xvclwiXTtcbnZhciBDb21taXRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDE4KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOS45NDk2OSA3LjQ5OTg5QzkuOTQ5NjkgOC44NTI4OCA4Ljg1Mjg4IDkuOTQ5NjkgNy40OTk4OSA5Ljk0OTY5QzYuMTQ2OTEgOS45NDk2OSA1LjA1MDEgOC44NTI4OCA1LjA1MDEgNy40OTk4OUM1LjA1MDEgNi4xNDY5MSA2LjE0NjkxIDUuMDUwMSA3LjQ5OTg5IDUuMDUwMUM4Ljg1Mjg4IDUuMDUwMSA5Ljk0OTY5IDYuMTQ2OTEgOS45NDk2OSA3LjQ5OTg5Wk0xMC44NjMyIDhDMTAuNjIxMyA5LjY0MDU1IDkuMjA3NjQgMTAuODk5NyA3LjQ5OTg5IDEwLjg5OTdDNS43OTIxNCAxMC44OTk3IDQuMzc4NDcgOS42NDA1NSA0LjEzNjYyIDhIMC41QzAuMjIzODU4IDggMCA3Ljc3NjE0IDAgNy41QzAgNy4yMjM4NiAwLjIyMzg1OCA3IDAuNSA3SDQuMTM2NTlDNC4zNzgzNSA1LjM1OTM1IDUuNzkyMDYgNC4xMDAxIDcuNDk5ODkgNC4xMDAxQzkuMjA3NzIgNC4xMDAxIDEwLjYyMTQgNS4zNTkzNSAxMC44NjMyIDdIMTQuNUMxNC43NzYxIDcgMTUgNy4yMjM4NiAxNSA3LjVDMTUgNy43NzYxNCAxNC43NzYxIDggMTQuNSA4SDEwLjg2MzJaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxOSA9IFtcImNvbG9yXCJdO1xudmFyIENvbXBvbmVudDFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDE5KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC42NzEyOSAzLjE0NjM0QzQuNDc2MDMgMy4zNDE2MSA0LjQ3NjAzIDMuNjU4MTkgNC42NzEyOSAzLjg1MzQ1TDcuMTQ2MTYgNi4zMjgzM0M3LjM0MTQyIDYuNTIzNTkgNy42NTgwMSA2LjUyMzU5IDcuODUzMjcgNi4zMjgzM0wxMC4zMjgxIDMuODUzNDVDMTAuNTIzNCAzLjY1ODE5IDEwLjUyMzQgMy4zNDE2MSAxMC4zMjgxIDMuMTQ2MzRMNy44NTMyNyAwLjY3MTQ3MUM3LjY1ODAxIDAuNDc2MjA5IDcuMzQxNDIgMC40NzYyMDkgNy4xNDYxNiAwLjY3MTQ3MUw0LjY3MTI5IDMuMTQ2MzRaTTcuNDk5NzEgNS4yNjc2Nkw1LjczMTk1IDMuNDk5OUw3LjQ5OTcxIDEuNzMyMTNMOS4yNjc0OCAzLjQ5OTlMNy40OTk3MSA1LjI2NzY2Wk04LjY3MTI5IDcuMTQ2MzRDOC40NzYwMyA3LjM0MTYxIDguNDc2MDMgNy42NTgxOSA4LjY3MTI5IDcuODUzNDVMMTEuMTQ2MiAxMC4zMjgzQzExLjM0MTQgMTAuNTIzNiAxMS42NTggMTAuNTIzNiAxMS44NTMzIDEwLjMyODNMMTQuMzI4MSA3Ljg1MzQ1QzE0LjUyMzQgNy42NTgxOSAxNC41MjM0IDcuMzQxNjEgMTQuMzI4MSA3LjE0NjM0TDExLjg1MzMgNC42NzE0N0MxMS42NTggNC40NzYyMSAxMS4zNDE0IDQuNDc2MjEgMTEuMTQ2MiA0LjY3MTQ3TDguNjcxMjkgNy4xNDYzNFpNMTEuNDk5NyA5LjI2NzY2TDkuNzMxOTUgNy40OTk5TDExLjQ5OTcgNS43MzIxM0wxMy4yNjc1IDcuNDk5OUwxMS40OTk3IDkuMjY3NjZaTTQuNjcxMjkgMTEuODUzNUM0LjQ3NjAzIDExLjY1ODIgNC40NzYwMyAxMS4zNDE2IDQuNjcxMjkgMTEuMTQ2M0w3LjE0NjE2IDguNjcxNDdDNy4zNDE0MiA4LjQ3NjIxIDcuNjU4MDEgOC40NzYyMSA3Ljg1MzI3IDguNjcxNDdMMTAuMzI4MSAxMS4xNDYzQzEwLjUyMzQgMTEuMzQxNiAxMC41MjM0IDExLjY1ODIgMTAuMzI4MSAxMS44NTM1TDcuODUzMjcgMTQuMzI4M0M3LjY1ODAxIDE0LjUyMzYgNy4zNDE0MiAxNC41MjM2IDcuMTQ2MTYgMTQuMzI4M0w0LjY3MTI5IDExLjg1MzVaTTUuNzMxOTUgMTEuNDk5OUw3LjQ5OTcxIDEzLjI2NzdMOS4yNjc0OCAxMS40OTk5TDcuNDk5NzEgOS43MzIxM0w1LjczMTk1IDExLjQ5OTlaTTAuNjcxMjg4IDcuMTQ2NDlDMC40NzYwMjYgNy4zNDE3NSAwLjQ3NjAyNiA3LjY1ODM0IDAuNjcxMjg4IDcuODUzNkwzLjE0NjE2IDEwLjMyODVDMy4zNDE0MiAxMC41MjM3IDMuNjU4MDEgMTAuNTIzNyAzLjg1MzI3IDEwLjMyODVMNi4zMjgxNCA3Ljg1MzZDNi41MjM0IDcuNjU4MzQgNi41MjM0IDcuMzQxNzUgNi4zMjgxNCA3LjE0NjQ5TDMuODUzMjcgNC42NzE2MkMzLjY1ODAxIDQuNDc2MzYgMy4zNDE0MiA0LjQ3NjM2IDMuMTQ2MTYgNC42NzE2MkwwLjY3MTI4OCA3LjE0NjQ5Wk0zLjQ5OTcyIDkuMjY3ODFMMS43MzE5NSA3LjUwMDA1TDMuNDk5NzIgNS43MzIyOEw1LjI2NzQ4IDcuNTAwMDVMMy40OTk3MiA5LjI2NzgxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMWEgPSBbXCJjb2xvclwiXTtcbnZhciBDb21wb25lbnQySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxYSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMuODc5MzUgMUgzLjlIMTEuMUgxMS4xMjA3QzExLjUyMzEgMC45OTk5OTQgMTEuODU1MyAwLjk5OTk4OSAxMi4xMjU5IDEuMDIyMUMxMi40MDcgMS4wNDUwNiAxMi42NjUzIDEuMDk0MzQgMTIuOTA4IDEuMjE3OTlDMTMuMjg0MyAxLjQwOTczIDEzLjU5MDMgMS43MTU3IDEzLjc4MiAyLjA5MjAyQzEzLjkwNTcgMi4zMzQ2OSAxMy45NTQ5IDIuNTkzMDQgMTMuOTc3OSAyLjg3NDA5QzE0IDMuMTQ0NjggMTQgMy40NzY4NiAxNCAzLjg3OTM0VjMuOVYxMS4xVjExLjEyMDdDMTQgMTEuNTIzMSAxNCAxMS44NTUzIDEzLjk3NzkgMTIuMTI1OUMxMy45NTQ5IDEyLjQwNyAxMy45MDU3IDEyLjY2NTMgMTMuNzgyIDEyLjkwOEMxMy41OTAzIDEzLjI4NDMgMTMuMjg0MyAxMy41OTAzIDEyLjkwOCAxMy43ODJDMTIuNjY1MyAxMy45MDU3IDEyLjQwNyAxMy45NTQ5IDEyLjEyNTkgMTMuOTc3OUMxMS44NTUzIDE0IDExLjUyMzEgMTQgMTEuMTIwNyAxNEgxMS4xSDMuOUgzLjg3OTM0QzMuNDc2ODYgMTQgMy4xNDQ2OCAxNCAyLjg3NDA5IDEzLjk3NzlDMi41OTMwNCAxMy45NTQ5IDIuMzM0NjkgMTMuOTA1NyAyLjA5MjAyIDEzLjc4MkMxLjcxNTcgMTMuNTkwMyAxLjQwOTczIDEzLjI4NDMgMS4yMTc5OSAxMi45MDhDMS4wOTQzNCAxMi42NjUzIDEuMDQ1MDYgMTIuNDA3IDEuMDIyMSAxMi4xMjU5QzAuOTk5OTg5IDExLjg1NTMgMC45OTk5OTQgMTEuNTIzMSAxIDExLjEyMDdWMTEuMTIwN1YxMS4xVjMuOVYzLjg3OTM1VjMuODc5MzRDMC45OTk5OTQgMy40NzY4NiAwLjk5OTk4OSAzLjE0NDY4IDEuMDIyMSAyLjg3NDA5QzEuMDQ1MDYgMi41OTMwNCAxLjA5NDM0IDIuMzM0NjkgMS4yMTc5OSAyLjA5MjAyQzEuNDA5NzMgMS43MTU3IDEuNzE1NyAxLjQwOTczIDIuMDkyMDIgMS4yMTc5OUMyLjMzNDY5IDEuMDk0MzQgMi41OTMwNCAxLjA0NTA2IDIuODc0MDkgMS4wMjIxQzMuMTQ0NjkgMC45OTk5ODkgMy40NzY4NyAwLjk5OTk5NCAzLjg3OTM1IDFaTTIuOTU1NTIgMi4wMTg3OEMyLjczNjMxIDIuMDM2NjkgMi42MjQyMSAyLjA2OTE1IDIuNTQ2MDEgMi4xMDg5OUMyLjM1Nzg1IDIuMjA0ODcgMi4yMDQ4NyAyLjM1Nzg1IDIuMTA4OTkgMi41NDYwMUMyLjA2OTE1IDIuNjI0MjEgMi4wMzY2OSAyLjczNjMxIDIuMDE4NzggMi45NTU1MkMyLjAwMDM5IDMuMTgwNTYgMiAzLjQ3MTcxIDIgMy45VjdIN1YySDMuOUMzLjQ3MTcxIDIgMy4xODA1NiAyLjAwMDM5IDIuOTU1NTIgMi4wMTg3OFpNNyA4SDJWMTEuMUMyIDExLjUyODMgMi4wMDAzOSAxMS44MTk0IDIuMDE4NzggMTIuMDQ0NUMyLjAzNjY5IDEyLjI2MzcgMi4wNjkxNSAxMi4zNzU4IDIuMTA4OTkgMTIuNDU0QzIuMjA0ODcgMTIuNjQyMiAyLjM1Nzg1IDEyLjc5NTEgMi41NDYwMSAxMi44OTFDMi42MjQyMSAxMi45MzA5IDIuNzM2MzEgMTIuOTYzMyAyLjk1NTUyIDEyLjk4MTJDMy4xODA1NiAxMi45OTk2IDMuNDcxNzEgMTMgMy45IDEzSDdWOFpNOCA4SDEzVjExLjFDMTMgMTEuNTI4MyAxMi45OTk2IDExLjgxOTQgMTIuOTgxMiAxMi4wNDQ1QzEyLjk2MzMgMTIuMjYzNyAxMi45MzA5IDEyLjM3NTggMTIuODkxIDEyLjQ1NEMxMi43OTUxIDEyLjY0MjIgMTIuNjQyMiAxMi43OTUxIDEyLjQ1NCAxMi44OTFDMTIuMzc1OCAxMi45MzA5IDEyLjI2MzcgMTIuOTYzMyAxMi4wNDQ1IDEyLjk4MTJDMTEuODE5NCAxMi45OTk2IDExLjUyODMgMTMgMTEuMSAxM0g4VjhaTTEzIDdIOFYySDExLjFDMTEuNTI4MyAyIDExLjgxOTQgMi4wMDAzOSAxMi4wNDQ1IDIuMDE4NzhDMTIuMjYzNyAyLjAzNjY5IDEyLjM3NTggMi4wNjkxNSAxMi40NTQgMi4xMDg5OUMxMi42NDIyIDIuMjA0ODcgMTIuNzk1MSAyLjM1Nzg1IDEyLjg5MSAyLjU0NjAxQzEyLjkzMDkgMi42MjQyMSAxMi45NjMzIDIuNzM2MzEgMTIuOTgxMiAyLjk1NTUyQzEyLjk5OTYgMy4xODA1NiAxMyAzLjQ3MTcxIDEzIDMuOVY3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMWIgPSBbXCJjb2xvclwiXTtcbnZhciBDb21wb25lbnRCb29sZWFuSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxYik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuODUzNjcgMS40ODk1NkM3LjY1ODQxIDEuMjk0MjkgNy4zNDE4MiAxLjI5NDI5IDcuMTQ2NTYgMS40ODk1NkwxLjQ4OTcxIDcuMTQ2NDFDMS4yOTQ0NSA3LjM0MTY3IDEuMjk0NDUgNy42NTgyNSAxLjQ4OTcxIDcuODUzNTJMNy4xNDY1NiAxMy41MTA0QzcuMzQxODIgMTMuNzA1NiA3LjY1ODQxIDEzLjcwNTYgNy44NTM2NyAxMy41MTA0TDEzLjUxMDUgNy44NTM1MkMxMy43MDU4IDcuNjU4MjUgMTMuNzA1OCA3LjM0MTY3IDEzLjUxMDUgNy4xNDY0MUw3Ljg1MzY3IDEuNDg5NTZaTTcuNSAyLjU1MDMzTDIuNTUwMzcgNy40OTk5Nkw3LjUgMTIuNDQ5NlYyLjU1MDMzWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMWMgPSBbXCJjb2xvclwiXTtcbnZhciBDb21wb25lbnRJbnN0YW5jZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMWMpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjE0NjUgMS40ODk1OUM3LjM0MTc2IDEuMjk0MzIgNy42NTgzNSAxLjI5NDMyIDcuODUzNjEgMS40ODk1OUwxMy41MTA1IDcuMTQ2NDRDMTMuNzA1NyA3LjM0MTcgMTMuNzA1NyA3LjY1ODI5IDEzLjUxMDUgNy44NTM1NUw3Ljg1MzYxIDEzLjUxMDRDNy42NTgzNSAxMy43MDU3IDcuMzQxNzYgMTMuNzA1NyA3LjE0NjUgMTMuNTEwNEwxLjQ4OTY1IDcuODUzNTVDMS4yOTQzOSA3LjY1ODI5IDEuMjk0MzkgNy4zNDE3IDEuNDg5NjUgNy4xNDY0NEw3LjE0NjUgMS40ODk1OVpNNy41MDAwNSAyLjU1MDI1TDIuNTUwMzEgNy40OTk5OUw3LjUwMDA1IDEyLjQ0OTdMMTIuNDQ5OCA3LjQ5OTk5TDcuNTAwMDUgMi41NTAyNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFkID0gW1wiY29sb3JcIl07XG52YXIgQ29tcG9uZW50Tm9uZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMWQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03Ljg1MzYxIDEuNDg5NTlDNy42NTgzNSAxLjI5NDMyIDcuMzQxNzYgMS4yOTQzMiA3LjE0NjUgMS40ODk1OUwxLjQ4OTY1IDcuMTQ2NDRDMS4yOTQzOSA3LjM0MTcgMS4yOTQzOSA3LjY1ODI5IDEuNDg5NjUgNy44NTM1NUwzLjk2NDUgMTAuMzI4NEwxLjY0NjQ0IDEyLjY0NjRDMS40NTExOCAxMi44NDE3IDEuNDUxMTggMTMuMTU4MyAxLjY0NjQ0IDEzLjM1MzZDMS44NDE3MSAxMy41NDg4IDIuMTU4MjkgMTMuNTQ4OCAyLjM1MzU1IDEzLjM1MzZMNC42NzE2IDExLjAzNTVMNy4xNDY1IDEzLjUxMDRDNy4zNDE3NiAxMy43MDU3IDcuNjU4MzUgMTMuNzA1NyA3Ljg1MzYxIDEzLjUxMDRMMTMuNTEwNSA3Ljg1MzU1QzEzLjcwNTcgNy42NTgyOSAxMy43MDU3IDcuMzQxNyAxMy41MTA1IDcuMTQ2NDRMMTEuMDM1NiA0LjY3MTU0TDEzLjM1MzUgMi4zNTM1NUMxMy41NDg4IDIuMTU4MjkgMTMuNTQ4OCAxLjg0MTcxIDEzLjM1MzUgMS42NDY0NUMxMy4xNTgzIDEuNDUxMTggMTIuODQxNyAxLjQ1MTE4IDEyLjY0NjQgMS42NDY0NUwxMC4zMjg1IDMuOTY0NDNMNy44NTM2MSAxLjQ4OTU5Wk05LjYyMTM1IDQuNjcxNTRMNy41MDAwNSAyLjU1MDI1TDIuNTUwMzEgNy40OTk5OUw0LjY3MTYgOS42MjEyOUw5LjYyMTM1IDQuNjcxNTRaTTUuMzc4NzEgMTAuMzI4NEw3LjUwMDA1IDEyLjQ0OTdMMTIuNDQ5OCA3LjQ5OTk5TDEwLjMyODUgNS4zNzg2NUw1LjM3ODcxIDEwLjMyODRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxZSA9IFtcImNvbG9yXCJdO1xudmFyIENvbXBvbmVudFBsYWNlaG9sZGVySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxZSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEyLjgwMzQgNy4xNDY0NEMxMi45OTg2IDYuOTUxMTggMTMuMzE1MiA2Ljk1MTE4IDEzLjUxMDUgNy4xNDY0NEMxMy43MDU3IDcuMzQxNyAxMy43MDU3IDcuNjU4MjkgMTMuNTEwNSA3Ljg1MzU1QzEzLjMxNTIgOC4wNDg4MSAxMi45OTg2IDguMDQ4ODEgMTIuODAzNCA3Ljg1MzU1QzEyLjYwODEgNy42NTgyOCAxMi42MDgxIDcuMzQxNyAxMi44MDM0IDcuMTQ2NDRaTTEyLjA5NjIgOC41NjA2NUMxMi4yOTE1IDguNzU1OTIgMTIuMjkxNSA5LjA3MjUgMTIuMDk2MiA5LjI2Nzc2QzExLjkwMSA5LjQ2MzAyIDExLjU4NDQgOS40NjMwMiAxMS4zODkxIDkuMjY3NzZDMTEuMTkzOSA5LjA3MjUgMTEuMTkzOSA4Ljc1NTkyIDExLjM4OTEgOC41NjA2NUMxMS41ODQ0IDguMzY1MzkgMTEuOTAxIDguMzY1MzkgMTIuMDk2MiA4LjU2MDY1Wk0xMC42ODIgOS45NzQ4N0MxMC44NzczIDEwLjE3MDEgMTAuODc3MyAxMC40ODY3IDEwLjY4MiAxMC42ODJDMTAuNDg2OCAxMC44NzcyIDEwLjE3MDIgMTAuODc3MiA5Ljk3NDkzIDEwLjY4MkM5Ljc3OTY3IDEwLjQ4NjcgOS43Nzk2NyAxMC4xNzAxIDkuOTc0OTMgOS45NzQ4N0MxMC4xNzAyIDkuNzc5NiAxMC40ODY4IDkuNzc5NiAxMC42ODIgOS45NzQ4N1pNOS4yNjc4MiAxMS4zODkxQzkuNDYzMDggMTEuNTg0MyA5LjQ2MzA4IDExLjkwMDkgOS4yNjc4MiAxMi4wOTYyQzkuMDcyNTYgMTIuMjkxNSA4Ljc1NTk4IDEyLjI5MTUgOC41NjA3MSAxMi4wOTYyQzguMzY1NDUgMTEuOTAwOSA4LjM2NTQ1IDExLjU4NDMgOC41NjA3MiAxMS4zODkxQzguNzU1OTggMTEuMTkzOCA5LjA3MjU2IDExLjE5MzggOS4yNjc4MiAxMS4zODkxWk03LjE0NjUgMTMuNTEwNEM2Ljk1MTI0IDEzLjMxNTEgNi45NTEyNCAxMi45OTg2IDcuMTQ2NSAxMi44MDMzQzcuMTcwOTEgMTIuNzc4OSA3LjE5NzIxIDEyLjc1NzUgNy4yMjQ5NCAxMi43MzkyQzcuNDE5MDEgMTIuNjExMSA3LjY4Mjc1IDEyLjYzMjQgNy44NTM2MSAxMi44MDMzQzguMDQ4ODcgMTIuOTk4NiA4LjA0ODg3IDEzLjMxNTEgNy44NTM2MSAxMy41MTA0QzcuNjU4MzUgMTMuNzA1NyA3LjM0MTc2IDEzLjcwNTcgNy4xNDY1IDEzLjUxMDRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuOTAzODYgOC41NjA2NUMyLjcwODYgOC43NTU5MiAyLjcwODYgOS4wNzI1IDIuOTAzODYgOS4yNjc3NiAzLjA5OTEyIDkuNDYzMDIgMy40MTU3MSA5LjQ2MzAyIDMuNjEwOTcgOS4yNjc3NiAzLjgwNjIzIDkuMDcyNSAzLjgwNjIzIDguNzU1OTIgMy42MTA5NyA4LjU2MDY1IDMuNDE1NzEgOC4zNjUzOSAzLjA5OTEyIDguMzY1MzkgMi45MDM4NiA4LjU2MDY1ek00LjMxODA3IDkuOTc0ODdDNC4xMjI4MSAxMC4xNzAxIDQuMTIyODEgMTAuNDg2NyA0LjMxODA3IDEwLjY4MiA0LjUxMzM0IDEwLjg3NzIgNC44Mjk5MiAxMC44NzcyIDUuMDI1MTggMTAuNjgyIDUuMjIwNDQgMTAuNDg2NyA1LjIyMDQ0IDEwLjE3MDEgNS4wMjUxOCA5Ljk3NDg3IDQuODI5OTIgOS43Nzk2IDQuNTEzMzQgOS43Nzk2IDQuMzE4MDcgOS45NzQ4N3pNNS43MzIyOSAxMS4zODkxQzUuNTM3MDMgMTEuNTg0MyA1LjUzNzAzIDExLjkwMDkgNS43MzIyOSAxMi4wOTYyIDUuOTI3NTUgMTIuMjkxNCA2LjI0NDEzIDEyLjI5MTUgNi40MzkzOSAxMi4wOTYyIDYuNjM0NjYgMTEuOTAwOSA2LjYzNDY2IDExLjU4NDMgNi40MzkzOSAxMS4zODkxIDYuMjQ0MTMgMTEuMTkzOCA1LjkyNzU1IDExLjE5MzggNS43MzIyOSAxMS4zODkxek0yLjE5Njc1IDcuODUzNTVDMi4zNjc2MSA3LjY4MjY5IDIuMzg4OTcgNy40MTg5NSAyLjI2MDgyIDcuMjI0ODggMi4wOTA0NiA2Ljk2Njg0IDEuNzEwNjMgNi45MjU0NiAxLjQ4OTY1IDcuMTQ2NDQgMS4yOTQzOSA3LjM0MTcgMS4yOTQzOSA3LjY1ODI5IDEuNDg5NjUgNy44NTM1NSAxLjY4NDkxIDguMDQ4ODEgMi4wMDE0OSA4LjA0ODgxIDIuMTk2NzUgNy44NTM1NXpNMy42MTA5NyA1LjczMjIzQzMuNDE1NzEgNS41MzY5NiAzLjA5OTEyIDUuNTM2OTYgMi45MDM4NiA1LjczMjIzIDIuNzA4NiA1LjkyNzQ5IDIuNzA4NiA2LjI0NDA3IDIuOTAzODYgNi40MzkzMyAzLjA5OTEyIDYuNjM0NiAzLjQxNTcxIDYuNjM0NiAzLjYxMDk3IDYuNDM5MzMgMy44MDYyMyA2LjI0NDA3IDMuODA2MjMgNS45Mjc0OSAzLjYxMDk3IDUuNzMyMjN6TTUuMDI1MTggNC4zMTgwMUM0LjgyOTkyIDQuMTIyNzUgNC41MTMzNCA0LjEyMjc1IDQuMzE4MDcgNC4zMTgwMSA0LjEyMjgxIDQuNTEzMjggNC4xMjI4MSA0LjgyOTg2IDQuMzE4MDcgNS4wMjUxMiA0LjUxMzM0IDUuMjIwMzggNC44Mjk5MiA1LjIyMDM4IDUuMDI1MTggNS4wMjUxMiA1LjIyMDQ0IDQuODI5ODYgNS4yMjA0NCA0LjUxMzI4IDUuMDI1MTggNC4zMTgwMXpNNi40MzkzOSAyLjkwMzhDNi4yNDQxMyAyLjcwODU0IDUuOTI3NTUgMi43MDg1NCA1LjczMjI5IDIuOTAzOCA1LjUzNzAzIDMuMDk5MDYgNS41MzcwMyAzLjQxNTY0IDUuNzMyMjkgMy42MTA5MSA1LjkyNzU1IDMuODA2MTcgNi4yNDQxMyAzLjgwNjE3IDYuNDM5MzkgMy42MTA5MSA2LjYzNDY2IDMuNDE1NjQgNi42MzQ2NiAzLjA5OTA2IDYuNDM5MzkgMi45MDM4ek03Ljg1MzYxIDEuNDg5NTlDNy42NTgzNSAxLjI5NDMyIDcuMzQxNzYgMS4yOTQzMiA3LjE0NjUgMS40ODk1OSA2Ljk1MTI0IDEuNjg0ODUgNi45NTEyNCAyLjAwMTQzIDcuMTQ2NSAyLjE5NjY5IDcuMzQxNzYgMi4zOTE5NiA3LjY1ODM1IDIuMzkxOTYgNy44NTM2MSAyLjE5NjY5IDguMDQ4ODcgMi4wMDE0MyA4LjA0ODg3IDEuNjg0ODUgNy44NTM2MSAxLjQ4OTU5ek05LjI2NzgyIDIuOTAzOEM5LjA3MjU2IDIuNzA4NTQgOC43NTU5OCAyLjcwODU0IDguNTYwNzEgMi45MDM4IDguMzY1NDUgMy4wOTkwNiA4LjM2NTQ1IDMuNDE1NjQgOC41NjA3MSAzLjYxMDkxIDguNzU1OTggMy44MDYxNyA5LjA3MjU2IDMuODA2MTcgOS4yNjc4MiAzLjYxMDkxIDkuNDYzMDggMy40MTU2NCA5LjQ2MzA4IDMuMDk5MDYgOS4yNjc4MiAyLjkwMzh6TTEwLjY4MiA0LjMxODAxQzEwLjQ4NjggNC4xMjI3NSAxMC4xNzAyIDQuMTIyNzUgOS45NzQ5MyA0LjMxODAxIDkuNzc5NjcgNC41MTMyOCA5Ljc3OTY3IDQuODI5ODYgOS45NzQ5MyA1LjAyNTEyIDEwLjE3MDIgNS4yMjAzOCAxMC40ODY4IDUuMjIwMzggMTAuNjgyIDUuMDI1MTIgMTAuODc3MyA0LjgyOTg2IDEwLjg3NzMgNC41MTMyOCAxMC42ODIgNC4zMTgwMXpNMTIuMDk2MiA1LjczMjIzQzExLjkwMSA1LjUzNjk2IDExLjU4NDQgNS41MzY5NiAxMS4zODkxIDUuNzMyMjMgMTEuMTkzOSA1LjkyNzQ5IDExLjE5MzkgNi4yNDQwNyAxMS4zODkxIDYuNDM5MzMgMTEuNTg0NCA2LjYzNDYgMTEuOTAxIDYuNjM0NiAxMi4wOTYyIDYuNDM5MzMgMTIuMjkxNSA2LjI0NDA3IDEyLjI5MTUgNS45Mjc0OSAxMi4wOTYyIDUuNzMyMjN6XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMWYgPSBbXCJjb2xvclwiXTtcbnZhciBDb250YWluZXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFmKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMiAxLjVDMiAxLjc3NjE0IDEuNzc2MTQgMiAxLjUgMkMxLjIyMzg2IDIgMSAxLjc3NjE0IDEgMS41QzEgMS4yMjM4NiAxLjIyMzg2IDEgMS41IDFDMS43NzYxNCAxIDIgMS4yMjM4NiAyIDEuNVpNNSAxM0gxMFYyTDUgMkw1IDEzWk00IDEzQzQgMTMuNTUyMyA0LjQ0NzcyIDE0IDUgMTRIMTBDMTAuNTUyMyAxNCAxMSAxMy41NTIzIDExIDEzVjJDMTEgMS40NDc3MiAxMC41NTIzIDEgMTAgMUg1QzQuNDQ3NzIgMSA0IDEuNDQ3NzEgNCAyVjEzWk0xMy41IDJDMTMuNzc2MSAyIDE0IDEuNzc2MTQgMTQgMS41QzE0IDEuMjIzODYgMTMuNzc2MSAxIDEzLjUgMUMxMy4yMjM5IDEgMTMgMS4yMjM4NiAxMyAxLjVDMTMgMS43NzYxNCAxMy4yMjM5IDIgMTMuNSAyWk0yIDMuNUMyIDMuNzc2MTQgMS43NzYxNCA0IDEuNSA0QzEuMjIzODYgNCAxIDMuNzc2MTQgMSAzLjVDMSAzLjIyMzg2IDEuMjIzODYgMyAxLjUgM0MxLjc3NjE0IDMgMiAzLjIyMzg2IDIgMy41Wk0xMy41IDRDMTMuNzc2MSA0IDE0IDMuNzc2MTQgMTQgMy41QzE0IDMuMjIzODYgMTMuNzc2MSAzIDEzLjUgM0MxMy4yMjM5IDMgMTMgMy4yMjM4NiAxMyAzLjVDMTMgMy43NzYxNCAxMy4yMjM5IDQgMTMuNSA0Wk0yIDUuNUMyIDUuNzc2MTQgMS43NzYxNCA2IDEuNSA2QzEuMjIzODYgNiAxIDUuNzc2MTQgMSA1LjVDMSA1LjIyMzg2IDEuMjIzODYgNSAxLjUgNUMxLjc3NjE0IDUgMiA1LjIyMzg2IDIgNS41Wk0xMy41IDZDMTMuNzc2MSA2IDE0IDUuNzc2MTQgMTQgNS41QzE0IDUuMjIzODYgMTMuNzc2MSA1IDEzLjUgNUMxMy4yMjM5IDUgMTMgNS4yMjM4NiAxMyA1LjVDMTMgNS43NzYxNCAxMy4yMjM5IDYgMTMuNSA2Wk0yIDcuNUMyIDcuNzc2MTQgMS43NzYxNCA4IDEuNSA4QzEuMjIzODYgOCAxIDcuNzc2MTQgMSA3LjVDMSA3LjIyMzg2IDEuMjIzODYgNyAxLjUgN0MxLjc3NjE0IDcgMiA3LjIyMzg2IDIgNy41Wk0xMy41IDhDMTMuNzc2MSA4IDE0IDcuNzc2MTQgMTQgNy41QzE0IDcuMjIzODYgMTMuNzc2MSA3IDEzLjUgN0MxMy4yMjM5IDcgMTMgNy4yMjM4NiAxMyA3LjVDMTMgNy43NzYxNCAxMy4yMjM5IDggMTMuNSA4Wk0yIDkuNUMyIDkuNzc2MTQgMS43NzYxNCAxMCAxLjUgMTBDMS4yMjM4NiAxMCAxIDkuNzc2MTQgMSA5LjVDMSA5LjIyMzg2IDEuMjIzODYgOSAxLjUgOUMxLjc3NjE0IDkgMiA5LjIyMzg2IDIgOS41Wk0xMy41IDEwQzEzLjc3NjEgMTAgMTQgOS43NzYxNCAxNCA5LjVDMTQgOS4yMjM4NiAxMy43NzYxIDkgMTMuNSA5QzEzLjIyMzkgOSAxMyA5LjIyMzg2IDEzIDkuNUMxMyA5Ljc3NjE0IDEzLjIyMzkgMTAgMTMuNSAxMFpNMiAxMS41QzIgMTEuNzc2MSAxLjc3NjE0IDEyIDEuNSAxMkMxLjIyMzg2IDEyIDEgMTEuNzc2MSAxIDExLjVDMSAxMS4yMjM5IDEuMjIzODYgMTEgMS41IDExQzEuNzc2MTQgMTEgMiAxMS4yMjM5IDIgMTEuNVpNMTMuNSAxMkMxMy43NzYxIDEyIDE0IDExLjc3NjEgMTQgMTEuNUMxNCAxMS4yMjM5IDEzLjc3NjEgMTEgMTMuNSAxMUMxMy4yMjM5IDExIDEzIDExLjIyMzkgMTMgMTEuNUMxMyAxMS43NzYxIDEzLjIyMzkgMTIgMTMuNSAxMlpNMiAxMy41QzIgMTMuNzc2MSAxLjc3NjE0IDE0IDEuNSAxNEMxLjIyMzg2IDE0IDEgMTMuNzc2MSAxIDEzLjVDMSAxMy4yMjM5IDEuMjIzODYgMTMgMS41IDEzQzEuNzc2MTQgMTMgMiAxMy4yMjM5IDIgMTMuNVpNMTMuNSAxNEMxMy43NzYxIDE0IDE0IDEzLjc3NjEgMTQgMTMuNUMxNCAxMy4yMjM5IDEzLjc3NjEgMTMgMTMuNSAxM0MxMy4yMjM5IDEzIDEzIDEzLjIyMzkgMTMgMTMuNUMxMyAxMy43NzYxIDEzLjIyMzkgMTQgMTMuNSAxNFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFnID0gW1wiY29sb3JcIl07XG52YXIgQ29va2llSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxZyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEyLjA2OTcgMS43Njc0NkMxMi40ODA3IDEuMjE5NDcgMTEuNDYwNSAwLjQ1NDMxMSAxMS4wNDk1IDEuMDAyM0MxMC42Mzg1IDEuNTUwMjggMTEuNjU4OCAyLjMxNTQ0IDEyLjA2OTcgMS43Njc0NlpNOC4zOTI2MyAxLjA3ODExQzcuMTU1ODUgMC45NTA2MDIgNS43ODIzIDEuMTYzNDggNC41ODQzMyAxLjcwOTM3QzMuMzg1NTIgMi4yNTU2MyAyLjMyNzM1IDMuMTUzMDkgMS43ODg0NCA0LjQxODMyQzEuMzc1NzQgNS4zODcyNCAxLjAxNzE1IDYuMjgxMTMgMS4wMDA4OCA3LjQ0MzU0QzAuOTg0NzI0IDguNTk4NDQgMS4zMDUyMiA5Ljk2ODk4IDIuMTMxNzQgMTEuOTI4QzIuNjExNDIgMTMuMDY0OSA0LjAzOTYzIDEzLjU0NDYgNS4xMzg5NSAxMy44MDc5QzYuNDA4MzYgMTQuMTExOSA3LjgwODU3IDE0LjE5MTQgOC42NjQ0IDE0LjA3NDJDOS4zNjUxNSAxMy45NzgyIDEwLjE0NDggMTMuODI4NCAxMC43OTg3IDEzLjI5N0MxMS44OTc3IDEyLjQwMzkgMTIuOTAwOSAxMS4zOTU1IDEzLjQ5OTQgMTAuMzM5M0MxNC4xMDQgOS4yNzIyMSAxNC4zMjU2IDguMDkyMDcgMTMuNzIxNiA2Ljk1MzI0QzEzLjU2MjggNi42NTM3MyAxMy4zMTYgNi41NzczNCAxMy4wNDEyIDYuNDkyM0MxMi45Mzc0IDYuNDYwMTYgMTIuODI5NSA2LjQyNjc4IDEyLjcyMDkgNi4zNzk2NkMxMS42MjExIDUuOTAyMzQgMTAuOTY0NiA1LjM0OTYzIDEwLjkxMzUgNS4wMjg3NkMxMC44NjU2IDQuNzI4MDggMTAuOTIyMSA0LjUxNDYzIDEwLjk4MTEgNC4yOTE4MUMxMS4wMTI5IDQuMTcxOTkgMTEuMDQ1MyA0LjA0OTQ3IDExLjA2MjYgMy45MDkyMkMxMS4wODM4IDMuNzM3MzcgMTEuMDgxNCAzLjMzMzE5IDEwLjY5OTYgMy4xMjc2MUMxMC40MDQ4IDIuOTY4ODggMTAuMjE2NCAyLjY1ODQzIDEwLjA0MDcgMi4zNjkwNEM5Ljk5NzQyIDIuMjk3NzUgOS45NTQ5MiAyLjIyNzczIDkuOTExOCAyLjE2MTU4QzkuNjI2MzQgMS43MjM2NyA5LjIwNzY5IDEuMTYyMTMgOC4zOTI2MyAxLjA3ODExWk00Ljk5ODk5IDIuNjE5MzVDMy45NjQ4MyAzLjA5MDU4IDMuMTI1NTQgMy44MzA5NyAyLjcwODQ2IDQuODEwMThDMi4yOTgwOCA1Ljc3MzY4IDIuMDE0MDYgNi41MDg3MyAyLjAwMDc5IDcuNDU3NTNDMS45ODc0MSA4LjQxMzg1IDIuMjUwNDMgOS42MzY4IDMuMDUzMSAxMS41MzkzQzMuMzkxODEgMTIuMzQyMSA0LjYyMTY3IDEyLjY1NTcgNS4zNzE4NiAxMi44MzU0QzYuNTQ5MyAxMy4xMTc0IDcuODIyIDEzLjE4MDIgOC41Mjg2OCAxMy4wODM0QzkuMjEyNzEgMTIuOTg5NyA5Ljc0NTY4IDEyLjg2NDIgMTAuMTY4MSAxMi41MjA5QzExLjIyOSAxMS42NTg3IDEyLjEyMSAxMC43NDM1IDEyLjYyOTMgOS44NDYzNUMxMi45MzQ5IDkuMzA3MDkgMTMuNTE0MSA3LjcwMjggMTIuNjI5MiA3LjM4NzNDMTAuNzUzOSA2LjcxODc1IDEwLjI2MiA2LjA2NjY5IDkuOTkwMTEgNS40MTI2OEM5LjgwOTE1IDQuOTc3NDQgOS44Mjg2OCA0LjUyMjgyIDkuOTU3NDEgNC4wNzg4NUw5Ljk1NzQxIDQuMDc4ODRDOS45NzY2MiA0LjAxMjYgOS45OTUzOCAzLjk0NzkxIDEwLjAzMzQgMy44ODg4MkM5LjgxODU3IDMuNzM2NzYgOS42NTE1IDMuNTUxOTUgOS41MTQ2NCAzLjM3MTVDOS40Mjg3NiAzLjI1ODI4IDkuMzQ2OSAzLjEyMDk5IDkuMjYxOTcgMi45Nzg1NkM5LjAxODY2IDIuNTcwNTIgOC43NTAxOCAyLjEyMDI3IDguMjkwMDggMi4wNzI4M0M3LjIyODg5IDEuOTYzNDMgNi4wMzM5OCAyLjE0NzcyIDQuOTk4OTkgMi42MTkzNVpNMTMuMjA4MSAzLjc3NDcxQzEzLjQ0MSAzLjIyNjcxIDEyLjQ1NDcgMi42MzYwNiAxMi4wODIyIDMuMTAxNjNDMTEuNTgxNyAzLjcyNzMyIDEyLjkwMjkgNC40OTI4MSAxMy4yMDgxIDMuNzc0NzFaTTE0LjM2NzIgMi4yNjAzMUMxNC45NjY4IDIuMjc0OTMgMTUuMTU1MSAxLjExNjAzIDE0LjU3MTggMC45NDkzNzFDMTMuODA3NiAwLjczMTAyNiAxMy41OTE4IDIuMjQxMzkgMTQuMzY3MiAyLjI2MDMxWk0xNC4yODU3IDUuMDkwOThDMTQuODY0NCA1LjEwMDA0IDE1LjA0NjIgNC4zODIyMiAxNC40ODMyIDQuMjc4OTlDMTMuNzQ1NSA0LjE0Mzc1IDEzLjUzNzMgNS4wNzkyNyAxNC4yODU3IDUuMDkwOThaTTYuOTA3NSA0LjI4NjcyQzYuNDY4OTggNC42Njc1NCA2LjA1MjIgNC4xNTE4NSA1Ljk3OTgzIDMuNzM2NUM1Ljg2ODQ4IDMuMDk3NDQgNi4zMzY5NiAyLjU2ODU2IDYuOTQ4MjMgMi45MTE1NkM3LjQzMzQ0IDMuMTgzODIgNy4yNjY3OCAzLjk3NDcxIDYuOTA3NSA0LjI4NjcyWk00Ljk0NDU1IDUuODgxODRDNS40MDg4NSA1LjQxNzU0IDQuNTk1NjcgNC41NzAxMyA0LjExNDI1IDUuMDUxNTRDMy44MzMzOCA1LjMzMjQyIDQuMDA5MzYgNS42NTM3NiA0LjIzNzQ0IDUuODgxODRDNC40MzI3MSA2LjA3NzEgNC43NDkyOSA2LjA3NzEgNC45NDQ1NSA1Ljg4MTg0Wk02Ljk3NzE2IDYuNzE5ODRDNy4zMTE4MSA3LjM4OTE0IDguNDg4MDQgNi43OTE1OSA3Ljk5NDEzIDYuMTQ3ODhDNy44NjUxOSA1Ljk3OTgzIDcuNjg2NTcgNS45NDk0IDcuNjIxNDUgNS45NDIwN0M3LjIxMjE3IDUuODk2MDEgNi43NjM0OSA2LjI5MjUgNi45NzcxNiA2LjcxOTg0Wk02Ljk4Nzk4IDguNzI0NjFDNy4xNDA2NiA5LjExODggNy41MTEyMiA5LjMxODcgNy45MTkxNSA5LjE2MzNDOC4yNzQzNCA5LjAyNzk5IDguMzMxODYgOC4zOTY4OSA4LjE3MTc1IDguMDc0MjdDOC4wMjMzMSA3Ljc3NTE0IDcuNjM5NTYgNy42Nzc5MyA3LjMzNzQ3IDcuNzk0MTdDNi45ODUxMiA3LjkyOTc2IDYuODU2NzIgOC4zODcwOCA2Ljk4NTc2IDguNzE4ODlMNi45ODc5OCA4LjcyNDYxWk0xMC4zODg1IDguODQwODFDMTAuNzU3NSA4LjY1NjYgMTEuNDYxNyA4LjgyNzcxIDExLjQ2MTcgOS4zMTE5OUMxMS40NjE3IDkuNzEyODYgMTAuOTU4NyAxMC4yMTY1IDEwLjU2MzQgMTAuMjgyNkMxMC4xODEzIDEwLjM0NjUgOS43MDUxNSA5Ljk3NTgxIDkuNzY2NDggOS41NzcxOEM5LjgxNDQ1IDkuMjY1MzkgMTAuMTIxNyA4Ljk3NDAxIDEwLjM4ODUgOC44NDA4MVpNNy41NjcwNCAxMC44NDMyQzcuMzM0NjEgMTAuNzUwMiA3LjE0MzUzIDEwLjg2MDEgNy4xMTQzNyAxMC44NzY5TDcuMTEyNzkgMTAuODc3OEM2LjkwNzgyIDEwLjk5NDkgNi43MTM4MyAxMS4yNDM5IDYuNjc0NyAxMS40ODQyQzYuNTkwMTggMTIuMDAzNCA3LjEzMTk5IDEyLjEyMzkgNy41MjY2MSAxMi4wOTg3QzguMjA3NCAxMi4wNTUzIDguMDY1NDcgMTEuMDQyNiA3LjU2NzA0IDEwLjg0MzJaTTQuODgwNSAxMC44OTMyQzUuMDY3NCAxMC43NzIzIDUuMTU2NTggMTAuNTM2MyA1LjA4MjkzIDEwLjMxNTNDNC45MzA0NiA5Ljc5Njg3IDQuMzI0NiA5LjcxMjUyIDMuOTY1NjEgMTAuMTI5N0MzLjc5MzM2IDEwLjMyOTkgMy44MDc0OSAxMC42Mjc0IDMuOTkyMTQgMTAuODEwNUwzLjk5NDk1IDEwLjgxNEwzLjk5NzkgMTAuODE3NkM0LjIyMDI1IDExLjA5NDIgNC42MzYyNCAxMS4xODU3IDQuODgwNSAxMC44OTMyWk0zLjA0Njk1IDcuODEzMThDMy4zMzE0NyA4LjA5NzcgMy42MDA3NyA4LjE1MDY3IDMuOTg0NDMgOC4wNTg1OUM0LjYwODI2IDcuOTA4ODcgNC4xMzgxNCA2LjI0Mjk5IDMuMDQ3IDYuODcyOTZDMi43MDkzOSA3LjA2Nzg4IDIuODY3MTYgNy42MzMzOSAzLjA0Njk1IDcuODEzMThaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxaCA9IFtcImNvbG9yXCJdO1xudmFyIENvcHlJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFoKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMSA5LjUwMDA2QzEgMTAuMzI4NSAxLjY3MTU3IDExLjAwMDEgMi41IDExLjAwMDFINEw0IDEwLjAwMDFIMi41QzIuMjIzODYgMTAuMDAwMSAyIDkuNzc2MiAyIDkuNTAwMDZMMiAyLjUwMDA2QzIgMi4yMjM5MiAyLjIyMzg2IDIuMDAwMDYgMi41IDIuMDAwMDZMOS41IDIuMDAwMDZDOS43NzYxNCAyLjAwMDA2IDEwIDIuMjIzOTIgMTAgMi41MDAwNlY0LjAwMDAySDUuNUM0LjY3MTU4IDQuMDAwMDIgNCA0LjY3MTU5IDQgNS41MDAwMlYxMi41QzQgMTMuMzI4NCA0LjY3MTU4IDE0IDUuNSAxNEgxMi41QzEzLjMyODQgMTQgMTQgMTMuMzI4NCAxNCAxMi41VjUuNTAwMDJDMTQgNC42NzE1OSAxMy4zMjg0IDQuMDAwMDIgMTIuNSA0LjAwMDAySDExVjIuNTAwMDZDMTEgMS42NzE2MyAxMC4zMjg0IDEuMDAwMDYgOS41IDEuMDAwMDZIMi41QzEuNjcxNTcgMS4wMDAwNiAxIDEuNjcxNjMgMSAyLjUwMDA2VjkuNTAwMDZaTTUgNS41MDAwMkM1IDUuMjIzODggNS4yMjM4NiA1LjAwMDAyIDUuNSA1LjAwMDAySDEyLjVDMTIuNzc2MSA1LjAwMDAyIDEzIDUuMjIzODggMTMgNS41MDAwMlYxMi41QzEzIDEyLjc3NjIgMTIuNzc2MSAxMyAxMi41IDEzSDUuNUM1LjIyMzg2IDEzIDUgMTIuNzc2MiA1IDEyLjVWNS41MDAwMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFpID0gW1wiY29sb3JcIl07XG52YXIgQ29ybmVyQm90dG9tTGVmdEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMWkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk05Ljg3NzM3IDEySDkuOUgxMS41QzExLjc3NjEgMTIgMTIgMTEuNzc2MSAxMiAxMS41QzEyIDExLjIyMzkgMTEuNzc2MSAxMSAxMS41IDExSDkuOUM4Ljc3MTY0IDExIDcuOTU1NDUgMTAuOTk5NiA3LjMxMzUyIDEwLjk0NzJDNi42Nzc0NCAxMC44OTUyIDYuMjU2NjIgMTAuNzk0NiA1LjkxMTAzIDEwLjYxODVDNS4yNTI0NyAxMC4yODMgNC43MTcwMyA5Ljc0NzUzIDQuMzgxNDggOS4wODg5N0M0LjIwNTM5IDguNzQzMzggNC4xMDQ4MSA4LjMyMjU2IDQuMDUyODQgNy42ODY0OEM0LjAwMDM5IDcuMDQ0NTUgNCA2LjIyODM2IDQgNS4xVjMuNUM0IDMuMjIzODYgMy43NzYxNCAzIDMuNSAzQzMuMjIzODYgMyAzIDMuMjIzODYgMyAzLjVWNS4xVjUuMTIyNjNDMyA2LjIyMzU5IDMgNy4wODA1MiAzLjA1NjE2IDcuNzY3OTFDMy4xMTMxOCA4LjQ2NTg0IDMuMjMwNTggOS4wMzI5IDMuNDkwNDcgOS41NDI5NkMzLjkyMTkgMTAuMzg5NyA0LjYxMDMxIDExLjA3ODEgNS40NTcwNCAxMS41MDk1QzUuOTY3MSAxMS43Njk0IDYuNTM0MTYgMTEuODg2OCA3LjIzMjA5IDExLjk0MzhDNy45MTk0OCAxMiA4Ljc3NjQxIDEyIDkuODc3MzcgMTJaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxaiA9IFtcImNvbG9yXCJdO1xudmFyIENvcm5lckJvdHRvbVJpZ2h0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxaik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUuMTIyNjMgMTJINS4xSDMuNUMzLjIyMzg2IDEyIDMgMTEuNzc2MSAzIDExLjVDMyAxMS4yMjM5IDMuMjIzODYgMTEgMy41IDExSDUuMUM2LjIyODM2IDExIDcuMDQ0NTUgMTAuOTk5NiA3LjY4NjQ4IDEwLjk0NzJDOC4zMjI1NiAxMC44OTUyIDguNzQzMzggMTAuNzk0NiA5LjA4ODk3IDEwLjYxODVDOS43NDc1MyAxMC4yODMgMTAuMjgzIDkuNzQ3NTMgMTAuNjE4NSA5LjA4ODk3QzEwLjc5NDYgOC43NDMzOCAxMC44OTUyIDguMzIyNTYgMTAuOTQ3MiA3LjY4NjQ4QzEwLjk5OTYgNy4wNDQ1NSAxMSA2LjIyODM2IDExIDUuMVYzLjVDMTEgMy4yMjM4NiAxMS4yMjM5IDMgMTEuNSAzQzExLjc3NjEgMyAxMiAzLjIyMzg2IDEyIDMuNVY1LjFWNS4xMjI2M0MxMiA2LjIyMzU5IDEyIDcuMDgwNTIgMTEuOTQzOCA3Ljc2NzkxQzExLjg4NjggOC40NjU4NCAxMS43Njk0IDkuMDMyOSAxMS41MDk1IDkuNTQyOTZDMTEuMDc4MSAxMC4zODk3IDEwLjM4OTcgMTEuMDc4MSA5LjU0Mjk2IDExLjUwOTVDOS4wMzI5IDExLjc2OTQgOC40NjU4NCAxMS44ODY4IDcuNzY3OTEgMTEuOTQzOEM3LjA4MDUyIDEyIDYuMjIzNTkgMTIgNS4xMjI2MyAxMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFrID0gW1wiY29sb3JcIl07XG52YXIgQ29ybmVyVG9wTGVmdEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMWspO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk05Ljg3NzM3IDNIOS45SDExLjVDMTEuNzc2MSAzIDEyIDMuMjIzODYgMTIgMy41QzEyIDMuNzc2MTQgMTEuNzc2MSA0IDExLjUgNEg5LjlDOC43NzE2NCA0IDcuOTU1NDUgNC4wMDAzOSA3LjMxMzUyIDQuMDUyODRDNi42Nzc0NCA0LjEwNDgxIDYuMjU2NjIgNC4yMDUzOSA1LjkxMTAzIDQuMzgxNDhDNS4yNTI0NyA0LjcxNzAzIDQuNzE3MDMgNS4yNTI0NyA0LjM4MTQ4IDUuOTExMDNDNC4yMDUzOSA2LjI1NjYyIDQuMTA0ODEgNi42Nzc0NCA0LjA1Mjg0IDcuMzEzNTJDNC4wMDAzOSA3Ljk1NTQ1IDQgOC43NzE2NCA0IDkuOVYxMS41QzQgMTEuNzc2MSAzLjc3NjE0IDEyIDMuNSAxMkMzLjIyMzg2IDEyIDMgMTEuNzc2MSAzIDExLjVWOS45VjkuODc3MzdDMyA4Ljc3NjQxIDMgNy45MTk0OCAzLjA1NjE2IDcuMjMyMDlDMy4xMTMxOCA2LjUzNDE2IDMuMjMwNTggNS45NjcxIDMuNDkwNDcgNS40NTcwNEMzLjkyMTkgNC42MTAzMSA0LjYxMDMxIDMuOTIxOSA1LjQ1NzA0IDMuNDkwNDdDNS45NjcxIDMuMjMwNTggNi41MzQxNiAzLjExMzE4IDcuMjMyMDkgMy4wNTYxNkM3LjkxOTQ4IDMgOC43NzY0MSAzIDkuODc3MzcgM1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFsID0gW1wiY29sb3JcIl07XG52YXIgQ29ybmVyVG9wUmlnaHRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFsKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNS4xMjI2MyAzSDUuMUgzLjVDMy4yMjM4NiAzIDMgMy4yMjM4NiAzIDMuNUMzIDMuNzc2MTQgMy4yMjM4NiA0IDMuNSA0SDUuMUM2LjIyODM2IDQgNy4wNDQ1NSA0LjAwMDM5IDcuNjg2NDggNC4wNTI4NEM4LjMyMjU2IDQuMTA0ODEgOC43NDMzOCA0LjIwNTM5IDkuMDg4OTcgNC4zODE0OEM5Ljc0NzUzIDQuNzE3MDMgMTAuMjgzIDUuMjUyNDcgMTAuNjE4NSA1LjkxMTAzQzEwLjc5NDYgNi4yNTY2MiAxMC44OTUyIDYuNjc3NDQgMTAuOTQ3MiA3LjMxMzUyQzEwLjk5OTYgNy45NTU0NSAxMSA4Ljc3MTY0IDExIDkuOVYxMS41QzExIDExLjc3NjEgMTEuMjIzOSAxMiAxMS41IDEyQzExLjc3NjEgMTIgMTIgMTEuNzc2MSAxMiAxMS41VjkuOVY5Ljg3NzM3QzEyIDguNzc2NDEgMTIgNy45MTk0OCAxMS45NDM4IDcuMjMyMDlDMTEuODg2OCA2LjUzNDE2IDExLjc2OTQgNS45NjcxIDExLjUwOTUgNS40NTcwNEMxMS4wNzgxIDQuNjEwMzEgMTAuMzg5NyAzLjkyMTkgOS41NDI5NiAzLjQ5MDQ3QzkuMDMyOSAzLjIzMDU4IDguNDY1ODQgMy4xMTMxOCA3Ljc2NzkxIDMuMDU2MTZDNy4wODA1MiAzIDYuMjIzNTkgMyA1LjEyMjYzIDNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxbSA9IFtcImNvbG9yXCJdO1xudmFyIENvcm5lcnNJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFtKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNS41IDJMNC44NzkzNSAyQzQuNDc2ODcgMS45OTk5OSA0LjE0NDY5IDEuOTk5OTkgMy44NzQwOSAyLjAyMjFDMy41OTMwNCAyLjA0NTA2IDMuMzM0NjkgMi4wOTQzNCAzLjA5MjAyIDIuMjE3OTlDMi43MTU3IDIuNDA5NzMgMi40MDk3MyAyLjcxNTcgMi4yMTc5OSAzLjA5MjAyQzIuMDk0MzQgMy4zMzQ2OSAyLjA0NTA2IDMuNTkzMDQgMi4wMjIxIDMuODc0MDlDMS45OTk5OSA0LjE0NDY4IDEuOTk5OTkgNC40NzY4NiAyIDQuODc5MzNWNC44NzkzNVY1LjVDMiA1Ljc3NjE0IDIuMjIzODYgNiAyLjUgNkMyLjc3NjE0IDYgMyA1Ljc3NjE0IDMgNS41VjQuOUMzIDQuNDcxNzEgMy4wMDAzOSA0LjE4MDU2IDMuMDE4NzggMy45NTU1MkMzLjAzNjY5IDMuNzM2MzEgMy4wNjkxNSAzLjYyNDIxIDMuMTA4OTkgMy41NDYwMUMzLjIwNDg3IDMuMzU3ODUgMy4zNTc4NSAzLjIwNDg3IDMuNTQ2MDEgMy4xMDg5OUMzLjYyNDIxIDMuMDY5MTUgMy43MzYzMSAzLjAzNjY5IDMuOTU1NTIgMy4wMTg3OEM0LjE4MDU2IDMuMDAwMzkgNC40NzE3MSAzIDQuOSAzSDUuNUM1Ljc3NjE0IDMgNiAyLjc3NjE0IDYgMi41QzYgMi4yMjM4NiA1Ljc3NjE0IDIgNS41IDJaTTEzIDkuNUMxMyA5LjIyMzg2IDEyLjc3NjEgOSAxMi41IDlDMTIuMjIzOSA5IDEyIDkuMjIzODYgMTIgOS41VjEwLjFDMTIgMTAuNTI4MyAxMS45OTk2IDEwLjgxOTQgMTEuOTgxMiAxMS4wNDQ1QzExLjk2MzMgMTEuMjYzNyAxMS45MzA5IDExLjM3NTggMTEuODkxIDExLjQ1NEMxMS43OTUxIDExLjY0MjIgMTEuNjQyMiAxMS43OTUxIDExLjQ1NCAxMS44OTFDMTEuMzc1OCAxMS45MzA5IDExLjI2MzcgMTEuOTYzMyAxMS4wNDQ1IDExLjk4MTJDMTAuODE5NCAxMS45OTk2IDEwLjUyODMgMTIgMTAuMSAxMkg5LjVDOS4yMjM4NiAxMiA5IDEyLjIyMzkgOSAxMi41QzkgMTIuNzc2MSA5LjIyMzg2IDEzIDkuNSAxM0gxMC4xMjA2QzEwLjUyMzEgMTMgMTAuODU1MyAxMyAxMS4xMjU5IDEyLjk3NzlDMTEuNDA3IDEyLjk1NDkgMTEuNjY1MyAxMi45MDU3IDExLjkwOCAxMi43ODJDMTIuMjg0MyAxMi41OTAzIDEyLjU5MDMgMTIuMjg0MyAxMi43ODIgMTEuOTA4QzEyLjkwNTcgMTEuNjY1MyAxMi45NTQ5IDExLjQwNyAxMi45Nzc5IDExLjEyNTlDMTMgMTAuODU1MyAxMyAxMC41MjMyIDEzIDEwLjEyMDdWMTAuMTIwN1YxMC4xMjA3VjEwLjEyMDZWOS41Wk0yLjUgOUMyLjc3NjE0IDkgMyA5LjIyMzg2IDMgOS41VjEwLjFDMyAxMC41MjgzIDMuMDAwMzkgMTAuODE5NCAzLjAxODc4IDExLjA0NDVDMy4wMzY2OSAxMS4yNjM3IDMuMDY5MTUgMTEuMzc1OCAzLjEwODk5IDExLjQ1NEMzLjIwNDg3IDExLjY0MjIgMy4zNTc4NSAxMS43OTUxIDMuNTQ2MDEgMTEuODkxQzMuNjI0MjEgMTEuOTMwOSAzLjczNjMxIDExLjk2MzMgMy45NTU1MiAxMS45ODEyQzQuMTgwNTYgMTEuOTk5NiA0LjQ3MTcxIDEyIDQuOSAxMkg1LjVDNS43NzYxNCAxMiA2IDEyLjIyMzkgNiAxMi41QzYgMTIuNzc2MSA1Ljc3NjE0IDEzIDUuNSAxM0g0Ljg3OTM1QzQuNDc2ODcgMTMgNC4xNDQ2OSAxMyAzLjg3NDA5IDEyLjk3NzlDMy41OTMwNCAxMi45NTQ5IDMuMzM0NjkgMTIuOTA1NyAzLjA5MjAyIDEyLjc4MkMyLjcxNTcgMTIuNTkwMyAyLjQwOTczIDEyLjI4NDMgMi4yMTc5OSAxMS45MDhDMi4wOTQzNCAxMS42NjUzIDIuMDQ1MDYgMTEuNDA3IDIuMDIyMSAxMS4xMjU5QzEuOTk5OTkgMTAuODU1MyAxLjk5OTk5IDEwLjUyMzEgMiAxMC4xMjA3VjEwLjEyMDZWMTAuMVY5LjVDMiA5LjIyMzg2IDIuMjIzODYgOSAyLjUgOVpNMTAuMSAzQzEwLjUyODMgMyAxMC44MTk0IDMuMDAwMzkgMTEuMDQ0NSAzLjAxODc4QzExLjI2MzcgMy4wMzY2OSAxMS4zNzU4IDMuMDY5MTUgMTEuNDU0IDMuMTA4OTlDMTEuNjQyMiAzLjIwNDg3IDExLjc5NTEgMy4zNTc4NSAxMS44OTEgMy41NDYwMUMxMS45MzA5IDMuNjI0MjEgMTEuOTYzMyAzLjczNjMxIDExLjk4MTIgMy45NTU1MkMxMS45OTk2IDQuMTgwNTYgMTIgNC40NzE3MSAxMiA0LjlWNS41QzEyIDUuNzc2MTQgMTIuMjIzOSA2IDEyLjUgNkMxMi43NzYxIDYgMTMgNS43NzYxNCAxMyA1LjVWNC44NzkzNVY0Ljg3OTM0QzEzIDQuNDc2ODYgMTMgNC4xNDQ2OCAxMi45Nzc5IDMuODc0MDlDMTIuOTU0OSAzLjU5MzA0IDEyLjkwNTcgMy4zMzQ2OSAxMi43ODIgMy4wOTIwMkMxMi41OTAzIDIuNzE1NyAxMi4yODQzIDIuNDA5NzMgMTEuOTA4IDIuMjE3OTlDMTEuNjY1MyAyLjA5NDM0IDExLjQwNyAyLjA0NTA2IDExLjEyNTkgMi4wMjIxQzEwLjg1NTMgMS45OTk5OSAxMC41MjMxIDEuOTk5OTkgMTAuMTIwNiAyTDEwLjEgMkg5LjVDOS4yMjM4NiAyIDkgMi4yMjM4NiA5IDIuNUM5IDIuNzc2MTQgOS4yMjM4NiAzIDkuNSAzSDEwLjFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxbiA9IFtcImNvbG9yXCJdO1xudmFyIENvdW50ZG93blRpbWVySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxbik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEzLjE1IDcuNDk5OThDMTMuMTUgNC42NjQ1OCAxMC45NDAyIDEuODQ5OTggNy41MDAwMiAxLjg0OTk4QzQuNzIxNyAxLjg0OTk4IDMuMzQ4NTEgMy45MDYzNiAyLjc2MzM2IDQuOTk5OTdINC41QzQuNzc2MTQgNC45OTk5NyA1IDUuMjIzODMgNSA1LjQ5OTk3QzUgNS43NzYxMSA0Ljc3NjE0IDUuOTk5OTcgNC41IDUuOTk5OTdIMS41QzEuMjIzODYgNS45OTk5NyAxIDUuNzc2MTEgMSA1LjQ5OTk3VjIuNDk5OTdDMSAyLjIyMzgzIDEuMjIzODYgMS45OTk5NyAxLjUgMS45OTk5N0MxLjc3NjE0IDEuOTk5OTcgMiAyLjIyMzgzIDIgMi40OTk5N1Y0LjMxMzE4QzIuNzA0NTMgMy4wNzEyNiA0LjMzNDA2IDAuODQ5OTc2IDcuNTAwMDIgMC44NDk5NzZDMTEuNTYyOCAwLjg0OTk3NiAxNC4xNSA0LjE4NTM3IDE0LjE1IDcuNDk5OThDMTQuMTUgMTAuODE0NiAxMS41NjI4IDE0LjE1IDcuNTAwMDIgMTQuMTVDNS41NTYxOCAxNC4xNSAzLjkzNzc4IDEzLjM4MDggMi43ODU0OCAxMi4yMDg0QzIuMTY4NTIgMTEuNTgwNiAxLjY4NjY4IDEwLjgzOSAxLjM1ODE2IDEwLjA0MDdDMS4yNTMwNiA5Ljc4NTM2IDEuMzc0ODggOS40OTMxNSAxLjYzMDI0IDkuMzg4MDZDMS44ODU2IDkuMjgyOTYgMi4xNzc4MSA5LjQwNDc4IDIuMjgyOSA5LjY2MDE0QzIuNTYzNzQgMTAuMzQyNSAyLjk3NDk1IDEwLjk3NDUgMy40OTg3IDExLjUwNzRDNC40NzA1MiAxMi40OTYzIDUuODM0OTYgMTMuMTUgNy41MDAwMiAxMy4xNUMxMC45NDAyIDEzLjE1IDEzLjE1IDEwLjMzNTQgMTMuMTUgNy40OTk5OFpNNyAxMFY1LjAwMDAxSDhWMTBIN1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFvID0gW1wiY29sb3JcIl07XG52YXIgQ291bnRlckNsb2Nrd2lzZUNsb2NrSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxbyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEzLjE1IDcuNDk5OThDMTMuMTUgNC42NjQ1OCAxMC45NDAyIDEuODQ5OTggNy41MDAwMiAxLjg0OTk4QzQuNzIxNjcgMS44NDk5OCAzLjM0ODQ5IDMuOTA2NCAyLjc2MzM1IDVINC41QzQuNzc2MTQgNSA1IDUuMjIzODYgNSA1LjVDNSA1Ljc3NjE0IDQuNzc2MTQgNiA0LjUgNkgxLjVDMS4yMjM4NiA2IDEgNS43NzYxNCAxIDUuNVYyLjVDMSAyLjIyMzg2IDEuMjIzODYgMiAxLjUgMkMxLjc3NjE0IDIgMiAyLjIyMzg2IDIgMi41VjQuMzEzMThDMi43MDQ1MyAzLjA3MTI2IDQuMzM0MDYgMC44NDk5NzYgNy41MDAwMiAwLjg0OTk3NkMxMS41NjI4IDAuODQ5OTc2IDE0LjE1IDQuMTg1MzcgMTQuMTUgNy40OTk5OEMxNC4xNSAxMC44MTQ2IDExLjU2MjggMTQuMTUgNy41MDAwMiAxNC4xNUM1LjU1NjE4IDE0LjE1IDMuOTM3NzggMTMuMzgwOCAyLjc4NTQ4IDEyLjIwODRDMi4xNjg1MiAxMS41ODA2IDEuNjg2NjggMTAuODM5IDEuMzU4MTYgMTAuMDQwN0MxLjI1MzA2IDkuNzg1MzYgMS4zNzQ4OCA5LjQ5MzE1IDEuNjMwMjQgOS4zODgwNkMxLjg4NTYgOS4yODI5NiAyLjE3NzgxIDkuNDA0NzggMi4yODI5IDkuNjYwMTRDMi41NjM3NCAxMC4zNDI1IDIuOTc0OTUgMTAuOTc0NSAzLjQ5ODcgMTEuNTA3NEM0LjQ3MDUyIDEyLjQ5NjMgNS44MzQ5NiAxMy4xNSA3LjUwMDAyIDEzLjE1QzEwLjk0MDIgMTMuMTUgMTMuMTUgMTAuMzM1NCAxMy4xNSA3LjQ5OTk4Wk03LjUgNC4wMDAwMUM3Ljc3NjE0IDQuMDAwMDEgOCA0LjIyMzg3IDggNC41MDAwMVY3LjI5MjkxTDkuODUzNTUgOS4xNDY0NkMxMC4wNDg4IDkuMzQxNzIgMTAuMDQ4OCA5LjY1ODMxIDkuODUzNTUgOS44NTM1N0M5LjY1ODI5IDEwLjA0ODggOS4zNDE3MSAxMC4wNDg4IDkuMTQ2NDUgOS44NTM1N0w3LjE0NjQ1IDcuODUzNTdDNy4wNTI2OCA3Ljc1OTggNyA3LjYzMjYyIDcgNy41MDAwMVY0LjUwMDAxQzcgNC4yMjM4NyA3LjIyMzg2IDQuMDAwMDEgNy41IDQuMDAwMDFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxcCA9IFtcImNvbG9yXCJdO1xudmFyIENyb3BJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFwKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy41IDguMDA2ODRlLTA3QzMuNzc2MTQgNy44ODYxNGUtMDcgNCAwLjIyMzg1OSA0IDAuNTAwMDAxTDQgMy4wMDAwNkwxMS41IDMuMDAwMDZDMTEuNzc2MSAzLjAwMDA2IDEyIDMuMjIzOTIgMTIgMy41MDAwNkwxMiAxMS4wMDAxTDE0LjUgMTFDMTQuNzc2MSAxMSAxNSAxMS4yMjM4IDE1IDExLjVDMTUgMTEuNzc2MSAxNC43NzYyIDEyIDE0LjUgMTJMMTIgMTIuMDAwMUwxMiAxNC41QzEyIDE0Ljc3NjEgMTEuNzc2MSAxNSAxMS41IDE1QzExLjIyMzkgMTUgMTEgMTQuNzc2MSAxMSAxNC41TDExIDEyLjAwMDFMMy41IDEyLjAwMDFDMy4yMjM4NiAxMi4wMDAxIDMgMTEuNzc2MiAzIDExLjUwMDFMMyA0LjAwMDA1TDAuNDk5OTg5IDRDMC4yMjM4NDcgNCAtNi4xMDU0MWUtMDYgMy43NzYxMyAtNS4wMjU3NmUtMDcgMy40OTk5OUM1LjEzMDA2ZS0wNiAzLjIyMzg1IDAuMjIzODY3IDMgMC41MDAwMSAzTDMgMy4wMDAwNUwzIDAuNTAwMDAxQzMgMC4yMjM4NTkgMy4yMjM4NiA4LjEyNzU1ZS0wNyAzLjUgOC4wMDY4NGUtMDdaTTQgNC4wMDAwNkw0IDExLjAwMDFMMTEgMTEuMDAwMUwxMSA0LjAwMDA2TDQgNC4wMDAwNlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFxID0gW1wiY29sb3JcIl07XG52YXIgQ3Jvc3MxSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxcSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEyLjg1MzYgMi44NTM1NUMxMy4wNDg4IDIuNjU4MjkgMTMuMDQ4OCAyLjM0MTcxIDEyLjg1MzYgMi4xNDY0NUMxMi42NTgzIDEuOTUxMTggMTIuMzQxNyAxLjk1MTE4IDEyLjE0NjQgMi4xNDY0NUw3LjUgNi43OTI4OUwyLjg1MzU1IDIuMTQ2NDVDMi42NTgyOSAxLjk1MTE4IDIuMzQxNzEgMS45NTExOCAyLjE0NjQ1IDIuMTQ2NDVDMS45NTExOCAyLjM0MTcxIDEuOTUxMTggMi42NTgyOSAyLjE0NjQ1IDIuODUzNTVMNi43OTI4OSA3LjVMMi4xNDY0NSAxMi4xNDY0QzEuOTUxMTggMTIuMzQxNyAxLjk1MTE4IDEyLjY1ODMgMi4xNDY0NSAxMi44NTM2QzIuMzQxNzEgMTMuMDQ4OCAyLjY1ODI5IDEzLjA0ODggMi44NTM1NSAxMi44NTM2TDcuNSA4LjIwNzExTDEyLjE0NjQgMTIuODUzNkMxMi4zNDE3IDEzLjA0ODggMTIuNjU4MyAxMy4wNDg4IDEyLjg1MzYgMTIuODUzNkMxMy4wNDg4IDEyLjY1ODMgMTMuMDQ4OCAxMi4zNDE3IDEyLjg1MzYgMTIuMTQ2NEw4LjIwNzExIDcuNUwxMi44NTM2IDIuODUzNTVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxciA9IFtcImNvbG9yXCJdO1xudmFyIENyb3NzMkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMXIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMS43ODE2IDQuMDMxNTdDMTIuMDA2MiAzLjgwNzAyIDEyLjAwNjIgMy40NDI5NSAxMS43ODE2IDMuMjE4NEMxMS41NTcxIDIuOTkzODUgMTEuMTkzIDIuOTkzODUgMTAuOTY4NSAzLjIxODRMNy41MDAwNSA2LjY4NjgyTDQuMDMxNjQgMy4yMTg0QzMuODA3MDggMi45OTM4NSAzLjQ0MzAxIDIuOTkzODUgMy4yMTg0NiAzLjIxODRDMi45OTM5MSAzLjQ0Mjk1IDIuOTkzOTEgMy44MDcwMiAzLjIxODQ2IDQuMDMxNTdMNi42ODY4OCA3LjQ5OTk5TDMuMjE4NDYgMTAuOTY4NEMyLjk5MzkxIDExLjE5MyAyLjk5MzkxIDExLjU1NyAzLjIxODQ2IDExLjc4MTZDMy40NDMwMSAxMi4wMDYxIDMuODA3MDggMTIuMDA2MSA0LjAzMTY0IDExLjc4MTZMNy41MDAwNSA4LjMxMzE2TDEwLjk2ODUgMTEuNzgxNkMxMS4xOTMgMTIuMDA2MSAxMS41NTcxIDEyLjAwNjEgMTEuNzgxNiAxMS43ODE2QzEyLjAwNjIgMTEuNTU3IDEyLjAwNjIgMTEuMTkzIDExLjc4MTYgMTAuOTY4NEw4LjMxMzIyIDcuNDk5OTlMMTEuNzgxNiA0LjAzMTU3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMXMgPSBbXCJjb2xvclwiXTtcbnZhciBDcm9zc0NpcmNsZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFzKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC44NzcwNzUgNy40OTk4OEMwLjg3NzA3NSAzLjg0MjE5IDMuODQyMjIgMC44NzcwNDUgNy40OTk5MSAwLjg3NzA0NUMxMS4xNTc2IDAuODc3MDQ1IDE0LjEyMjcgMy44NDIxOSAxNC4xMjI3IDcuNDk5ODhDMTQuMTIyNyAxMS4xNTc1IDExLjE1NzYgMTQuMTIyNyA3LjQ5OTkxIDE0LjEyMjdDMy44NDIyMiAxNC4xMjI3IDAuODc3MDc1IDExLjE1NzUgMC44NzcwNzUgNy40OTk4OFpNNy40OTk5MSAxLjgyNzA0QzQuMzY2ODkgMS44MjcwNCAxLjgyNzA4IDQuMzY2ODYgMS44MjcwOCA3LjQ5OTg4QzEuODI3MDggMTAuNjMyOSA0LjM2Njg5IDEzLjE3MjcgNy40OTk5MSAxMy4xNzI3QzEwLjYzMjkgMTMuMTcyNyAxMy4xNzI3IDEwLjYzMjkgMTMuMTcyNyA3LjQ5OTg4QzEzLjE3MjcgNC4zNjY4NiAxMC42MzI5IDEuODI3MDQgNy40OTk5MSAxLjgyNzA0Wk05Ljg1MzU4IDUuMTQ2NDRDMTAuMDQ4OCA1LjM0MTcgMTAuMDQ4OCA1LjY1ODI5IDkuODUzNTggNS44NTM1NUw4LjIwNzEzIDcuNDk5OTlMOS44NTM1OCA5LjE0NjQ0QzEwLjA0ODggOS4zNDE3IDEwLjA0ODggOS42NTgyOSA5Ljg1MzU4IDkuODUzNTVDOS42NTgzMiAxMC4wNDg4IDkuMzQxNzMgMTAuMDQ4OCA5LjE0NjQ3IDkuODUzNTVMNy41MDAwMiA4LjIwNzFMNS44NTM1OCA5Ljg1MzU1QzUuNjU4MzIgMTAuMDQ4OCA1LjM0MTczIDEwLjA0ODggNS4xNDY0NyA5Ljg1MzU1QzQuOTUxMjEgOS42NTgyOSA0Ljk1MTIxIDkuMzQxNyA1LjE0NjQ3IDkuMTQ2NDRMNi43OTI5MiA3LjQ5OTk5TDUuMTQ2NDcgNS44NTM1NUM0Ljk1MTIxIDUuNjU4MjkgNC45NTEyMSA1LjM0MTcgNS4xNDY0NyA1LjE0NjQ0QzUuMzQxNzMgNC45NTExOCA1LjY1ODMyIDQuOTUxMTggNS44NTM1OCA1LjE0NjQ0TDcuNTAwMDIgNi43OTI4OUw5LjE0NjQ3IDUuMTQ2NDRDOS4zNDE3MyA0Ljk1MTE4IDkuNjU4MzIgNC45NTExOCA5Ljg1MzU4IDUuMTQ2NDRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxdCA9IFtcImNvbG9yXCJdO1xudmFyIENyb3NzaGFpcjFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDF0KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC44NzcwNzUgNy41MDIwN0MwLjg3NzA3NSAzLjg0MzE5IDMuODQzMTkgMC44NzcwNzUgNy41MDIwOCAwLjg3NzA3NUMxMS4xNjA5IDAuODc3MDc1IDE0LjEyNzEgMy44NDMxOSAxNC4xMjcxIDcuNTAyMDdDMTQuMTI3MSAxMS4xNjA5IDExLjE2MDkgMTQuMTI3MSA3LjUwMjA4IDE0LjEyNzFDMy44NDMxOSAxNC4xMjcxIDAuODc3MDc1IDExLjE2MDkgMC44NzcwNzUgNy41MDIwN1pNMS44NDg5OCA3LjAwMDAzQzIuMDg4NiA0LjI2NjM5IDQuMjY2MzkgMi4wODg2IDcuMDAwMDMgMS44NDg5OFY0LjUwMDAzQzcuMDAwMDMgNC43NzYxNyA3LjIyMzg4IDUuMDAwMDMgNy41MDAwMyA1LjAwMDAzQzcuNzc2MTcgNS4wMDAwMyA4LjAwMDAzIDQuNzc2MTcgOC4wMDAwMyA0LjUwMDAzVjEuODQ4NjJDMTAuNzM1NiAyLjA4NjQzIDEyLjkxNTQgNC4yNjUwMiAxMy4xNTUyIDcuMDAwMDNIMTAuNUMxMC4yMjM5IDcuMDAwMDMgMTAgNy4yMjM4OCAxMCA3LjUwMDAzQzEwIDcuNzc2MTcgMTAuMjIzOSA4LjAwMDAzIDEwLjUgOC4wMDAwM0gxMy4xNTU1QzEyLjkxNzYgMTAuNzM2OSAxMC43MzY5IDEyLjkxNzYgOC4wMDAwMyAxMy4xNTU1VjEwLjVDOC4wMDAwMyAxMC4yMjM5IDcuNzc2MTcgMTAgNy41MDAwMyAxMEM3LjIyMzg4IDEwIDcuMDAwMDMgMTAuMjIzOSA3LjAwMDAzIDEwLjVWMTMuMTU1MkM0LjI2NTAyIDEyLjkxNTQgMi4wODY0MyAxMC43MzU2IDEuODQ4NjIgOC4wMDAwM0g0LjUwMDAzQzQuNzc2MTcgOC4wMDAwMyA1LjAwMDAzIDcuNzc2MTcgNS4wMDAwMyA3LjUwMDAzQzUuMDAwMDMgNy4yMjM4OCA0Ljc3NjE3IDcuMDAwMDMgNC41MDAwMyA3LjAwMDAzSDEuODQ4OThaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxdSA9IFtcImNvbG9yXCJdO1xudmFyIENyb3NzaGFpcjJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDF1KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy41IDBDNy43NzYxNCAwIDggMC4yMjM4NTggOCAwLjVWMS44MDY4N0MxMC42OTIyIDIuMDkzNSAxMi44MTY3IDQuMjgwMTIgMTMuMDA2OCA3SDE0LjVDMTQuNzc2MSA3IDE1IDcuMjIzODYgMTUgNy41QzE1IDcuNzc2MTQgMTQuNzc2MSA4IDE0LjUgOEgxMi45ODg4QzEyLjcwOTQgMTAuNjI0NCAxMC42MjQ0IDEyLjcwOTQgOCAxMi45ODg4VjE0LjVDOCAxNC43NzYxIDcuNzc2MTQgMTUgNy41IDE1QzcuMjIzODYgMTUgNyAxNC43NzYxIDcgMTQuNVYxMy4wMDY4QzQuMjgwMTIgMTIuODE2NyAyLjA5MzUgMTAuNjkyMiAxLjgwNjg3IDhIMC41QzAuMjIzODU4IDggMCA3Ljc3NjE0IDAgNy41QzAgNy4yMjM4NiAwLjIyMzg1OCA3IDAuNSA3SDEuNzg4ODZDMS45ODM3NiA0LjIxMTY2IDQuMjExNjYgMS45ODM3NiA3IDEuNzg4ODZWMC41QzcgMC4yMjM4NTggNy4yMjM4NiAwIDcuNSAwWk04IDEyLjAzMjJWOS41QzggOS4yMjM4NiA3Ljc3NjE0IDkgNy41IDlDNy4yMjM4NiA5IDcgOS4yMjM4NiA3IDkuNVYxMi4wNTRDNC44MDUxNyAxMS44Njg5IDMuMDQyMjIgMTAuMTY2OCAyLjc2MzQ0IDhINS41QzUuNzc2MTQgOCA2IDcuNzc2MTQgNiA3LjVDNiA3LjIyMzg2IDUuNzc2MTQgNyA1LjUgN0gyLjc0MTdDMi45MzI1MiA0LjczNjYyIDQuNzM2NjIgMi45MzI1MiA3IDIuNzQxN1Y1LjVDNyA1Ljc3NjE0IDcuMjIzODYgNiA3LjUgNkM3Ljc3NjE0IDYgOCA1Ljc3NjE0IDggNS41VjIuNzYzNDRDMTAuMTY2OCAzLjA0MjIyIDExLjg2ODkgNC44MDUxNyAxMi4wNTQgN0g5LjVDOS4yMjM4NiA3IDkgNy4yMjM4NiA5IDcuNUM5IDcuNzc2MTQgOS4yMjM4NiA4IDkuNSA4SDEyLjAzMjJDMTEuNzYyMSAxMC4wOTkxIDEwLjA5OTEgMTEuNzYyMSA4IDEyLjAzMjJaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxdiA9IFtcImNvbG9yXCJdO1xudmFyIENydW1wbGVkUGFwZXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDF2KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC42MDkxMyAwLjA2MzQyODdDNC4zOTA4MiAwLjAwODg1MDUgNC4xNjU3NSAwLjEyMzkzIDQuMDgyMTggMC4zMzI4NjdMMy4xNTM4IDIuNjUzOEwwLjgzMjg2NiAzLjU4MjE4QzAuNzAyODg0IDMuNjM0MTcgMC42MDQ1MDQgMy43NDM3IDAuNTY2NzA1IDMuODc4NDlDMC41Mjg5MDYgNC4wMTMyOSAwLjU1NTk5NCA0LjE1OCAwLjYzOTk5MiA0LjI2OTk5TDIuMDExNDggNi4wOTg2NEwxLjA2MzQzIDkuODkwODVDMS4wMDk0NCAxMC4xMDY4IDEuMTIxNDUgMTAuMzI5OCAxLjMyNjkxIDEwLjQxNTRMNC4yMDExNSAxMS42MTNMNS42MjU1NyAxMy43NDk2QzUuNzM0MTIgMTMuOTEyNCA1LjkzNTQ1IDEzLjk4NjQgNi4xMjM2MiAxMy45MzI3TDkuNjIzNjIgMTIuOTMyN0M5LjYyOTg4IDEyLjkzMDkgOS42MzYxMSAxMi45MjkgOS42NDIyOSAxMi45MjY5TDEyLjY0MjMgMTEuOTI2OUMxMi43OTIzIDExLjg3NjkgMTIuOTA1IDExLjc1MTkgMTIuOTM5MyAxMS41OTc2TDEzLjkzOTMgNy4wOTc2MUMxMy45Nzc2IDYuOTI1MDYgMTMuOTExNCA2Ljc0NjA1IDEzLjc3IDYuNjM5OTlMMTEuOTUgNS4yNzQ5OVYyLjk5OTk5QzExLjk1IDIuODI5NTUgMTEuODUzNyAyLjY3MzczIDExLjcwMTIgMi41OTc1TDguNzAxMjQgMS4wOTc1QzguNjcxODcgMS4wODI4MiA4LjY0MDk4IDEuMDcxMzkgOC42MDkxMyAxLjA2MzQzTDQuNjA5MTMgMC4wNjM0Mjg3Wk0xMS40MzIzIDYuMDExNzNMMTIuNzc0OCA3LjAxODU4TDEwLjIxMTkgOS4xNTQyOUMxMC4xNDc2IDkuMjA3ODYgMTAuMDk5NSA5LjI3ODMgMTAuMDczMSA5LjM1NzY5TDkuMjUzODIgMTEuODE1NUw3LjczODQ5IDEwLjg2ODRDNy41Mjc3NCAxMC43MzY3IDcuMjUwMTEgMTAuODAwNyA3LjExODM5IDExLjAxMTVDNi45ODY2NyAxMS4yMjIyIDcuMDUwNzQgMTEuNDk5OSA3LjI2MTQ5IDExLjYzMTZMOC40MDM0MSAxMi4zNDUzTDYuMTkyMjEgMTIuOTc3MUw0Ljg3NDQxIDExLjAwMDRDNC44MjUxMyAxMC45MjY1IDQuNzU1MDggMTAuODY4OCA0LjY3MzA3IDEwLjgzNDZMMi4wMzA0NiA5LjczMzUyTDIuODUxMzQgNi40NDk5OUg0Ljk5OTk5QzUuMjQ4NTIgNi40NDk5OSA1LjQ0OTk5IDYuMjQ4NTIgNS40NDk5OSA1Ljk5OTk5QzUuNDQ5OTkgNS43NTE0NiA1LjI0ODUyIDUuNTQ5OTkgNC45OTk5OSA1LjU0OTk5SDIuNzI0OTlMMS43MTIzIDQuMTk5NzRMMy41MTQwNyAzLjQ3OTAzTDYuMzU3NjkgNC40MjY5QzYuNTM2NTUgNC40ODY1MiA2LjczMzYxIDQuNDI4MzIgNi44NTEzOCA0LjI4MTExTDguNjI0MTMgMi4wNjUxOEwxMS4wNSAzLjI3ODExVjUuMTk1MzNMOC44MzI4NyA2LjA4MjE4QzguNzA5OTYgNi4xMzEzNCA4LjYxNDk0IDYuMjMyMTIgOC41NzMwOCA2LjM1NzY5TDguMDczMDggNy44NTc2OUM3Ljk5NDQ5IDguMDkzNDYgOC4xMjE5MSA4LjM0ODMxIDguMzU3NjkgOC40MjY5QzguNTkzNDYgOC41MDU0OSA4Ljg0ODMxIDguMzc4MDcgOC45MjY5IDguMTQyMjlMOS4zNjA5IDYuODQwMjlMMTEuNDMyMyA2LjAxMTczWk03LjcxMDUyIDEuNzY2NDhMNi4zNDQ2MiAzLjQ3Mzg2TDQuMDk1MDUgMi43MjRMNC43NzE5MiAxLjAzMTgzTDcuNzEwNTIgMS43NjY0OFpNMTAuMjExNSAxMS43ODg1TDEyLjExNiAxMS4xNTM3TDEyLjc3NDUgOC4xOTAzNEwxMC44ODY0IDkuNzYzNzRMMTAuMjExNSAxMS43ODg1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMXcgPSBbXCJjb2xvclwiXTtcbnZhciBDdWJlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxdyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuMjg4NTYgMC43OTY5MDhDNy40MjI1OCAwLjczNDM2NCA3LjU3NzQyIDAuNzM0MzY0IDcuNzExNDQgMC43OTY5MDhMMTMuNzExNCAzLjU5NjkxQzEzLjg4NzUgMy42NzkwNiAxNCAzLjg1NTc0IDE0IDQuMDVWMTAuOTVDMTQgMTEuMTQ0MyAxMy44ODc1IDExLjMyMDkgMTMuNzExNCAxMS40MDMxTDcuNzExNDQgMTQuMjAzMUM3LjU3NzQyIDE0LjI2NTYgNy40MjI1OCAxNC4yNjU2IDcuMjg4NTYgMTQuMjAzMUwxLjI4ODU2IDExLjQwMzFDMS4xMTI1MiAxMS4zMjA5IDEgMTEuMTQ0MyAxIDEwLjk1VjQuMDVDMSAzLjg1NTc0IDEuMTEyNTIgMy42NzkwNiAxLjI4ODU2IDMuNTk2OTFMNy4yODg1NiAwLjc5NjkwOFpNMiA0LjgwNTc4TDcgNi45MzA3OFYxMi45NjQ5TDIgMTAuNjMxNlY0LjgwNTc4Wk04IDEyLjk2NDlMMTMgMTAuNjMxNlY0LjgwNTc4TDggNi45MzA3OFYxMi45NjQ5Wk03LjUgNi4wNTY3MkwxMi4yNzE5IDQuMDI4NjZMNy41IDEuODAxNzZMMi43MjgwOSA0LjAyODY2TDcuNSA2LjA1NjcyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMXggPSBbXCJjb2xvclwiXTtcbnZhciBDdXJzb3JBcnJvd0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMXgpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zLjI5MjI3IDAuMDQ4OTg0QzMuNDcwMzMgLTAuMDMyMzM4IDMuNjc5NDYgLTAuMDAyMjgyMTQgMy44Mjc0IDAuMTI1ODkxTDEyLjg1ODcgNy45NTAyNkMxMy4wMTM0IDguMDg0MzIgMTMuMDcwOCA4LjI5OTE2IDEzLjAwMzUgOC40OTI1MUMxMi45MzYyIDguNjg1ODYgMTIuNzU3OCA4LjgxODY2IDEyLjU1MzMgOC44Mjc2OEw5LjIxODg3IDguOTc0NzRMMTEuMTUwNCAxMy4yMTg3QzExLjI2NDggMTMuNDcgMTEuMTUzOCAxMy43NjY0IDEwLjkwMjYgMTMuODgwOEw4Ljc1MDI0IDE0Ljg2MTNDOC40OTkgMTQuOTc1OCA4LjIwMjU1IDE0Ljg2NDkgOC4wODgwMiAxNC42MTM3TDYuMTUzMzkgMTAuMzcwM0wzLjg2Mjc5IDEyLjc4NTVDMy43MjE5NiAxMi45MzQgMy41MDQ4NyAxMi45ODE3IDMuMzE0NzkgMTIuOTA1OUMzLjEyNDcgMTIuODMwMSAzIDEyLjY0NjEgMyAxMi40NDE0VjAuNTAzNzkyQzMgMC4zMDgwNDggMy4xMTQyMiAwLjEzMDMwNiAzLjI5MjI3IDAuMDQ4OTg0Wk00IDEuNTk4NTJWMTEuMTg3N0w1LjkzNzk5IDkuMTQ0MjVDNi4wNTIzOCA5LjAyMzYzIDYuMjE5MjQgOC45Njc3NiA2LjM4MzE5IDguOTk1MTZDNi41NDcxNSA5LjAyMjU2IDYuNjg2NzcgOS4xMjk2NSA2Ljc1NTczIDkuMjgwOUw4Ljc5MDU2IDEzLjc0NDFMMTAuMDMzMiAxMy4xNzhMOC4wMDE5NSA4LjcxNDk3QzcuOTMzMTMgOC41NjM3NiA3Ljk0MzkxIDguMzg4MjQgOC4wMzA3MiA4LjI0NjU5QzguMTE3NTMgOC4xMDQ5NCA4LjI2OTAzIDguMDE1NjYgOC40MzUgOC4wMDgzNEwxMS4yNTQ5IDcuODgzOTdMNCAxLjU5ODUyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMXkgPSBbXCJjb2xvclwiXTtcbnZhciBDdXJzb3JUZXh0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxeSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTQuNSAxQzQuMjIzODYgMSA0IDEuMjIzODYgNCAxLjVDNCAxLjc3NjE0IDQuMjIzODYgMiA0LjUgMkM1LjQyMjE1IDIgNi4wMzk5IDIuMjMwNTQgNi40MjA3NSAyLjU2Mzc5QzYuNzkyODYgMi44ODkzOSA3IDMuMzY2MjYgNyA0VjdINS43NUM1LjQ3Mzg2IDcgNS4yNSA3LjIyMzg2IDUuMjUgNy41QzUuMjUgNy43NzYxNCA1LjQ3Mzg2IDggNS43NSA4SDdWMTFDNyAxMS42MzM3IDYuNzkyODYgMTIuMTEwNiA2LjQyMDc1IDEyLjQzNjJDNi4wMzk5IDEyLjc2OTUgNS40MjIxNSAxMyA0LjUgMTNDNC4yMjM4NiAxMyA0IDEzLjIyMzkgNCAxMy41QzQgMTMuNzc2MSA0LjIyMzg2IDE0IDQuNSAxNEM1LjU3Nzg1IDE0IDYuNDYwMSAxMy43MzA1IDcuMDc5MjUgMTMuMTg4OEM3LjI0MTY4IDEzLjA0NjcgNy4zODE2OSAxMi44ODk2IDcuNSAxMi43MTk4QzcuNjE4MzIgMTIuODg5NiA3Ljc1ODMyIDEzLjA0NjcgNy45MjA3NSAxMy4xODg4QzguNTM5OSAxMy43MzA1IDkuNDIyMTUgMTQgMTAuNSAxNEMxMC43NzYxIDE0IDExIDEzLjc3NjEgMTEgMTMuNUMxMSAxMy4yMjM5IDEwLjc3NjEgMTMgMTAuNSAxM0M5LjU3Nzg1IDEzIDguOTYwMSAxMi43Njk1IDguNTc5MjUgMTIuNDM2MkM4LjIwNzE0IDEyLjExMDYgOCAxMS42MzM3IDggMTFWOEg5LjI1QzkuNTI2MTQgOCA5Ljc1IDcuNzc2MTQgOS43NSA3LjVDOS43NSA3LjIyMzg2IDkuNTI2MTQgNyA5LjI1IDdIOFY0QzggMy4zNjYyNiA4LjIwNzE0IDIuODg5MzkgOC41NzkyNSAyLjU2Mzc5QzguOTYwMSAyLjIzMDU0IDkuNTc3ODUgMiAxMC41IDJDMTAuNzc2MSAyIDExIDEuNzc2MTQgMTEgMS41QzExIDEuMjIzODYgMTAuNzc2MSAxIDEwLjUgMUM5LjQyMjE1IDEgOC41Mzk5IDEuMjY5NDYgNy45MjA3NSAxLjgxMTIxQzcuNzU4MzIgMS45NTMzMyA3LjYxODMyIDIuMTEwNDMgNy41IDIuMjgwMjNDNy4zODE2OCAyLjExMDQzIDcuMjQxNjggMS45NTMzMyA3LjA3OTI1IDEuODExMjFDNi40NjAxIDEuMjY5NDYgNS41Nzc4NSAxIDQuNSAxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMXogPSBbXCJjb2xvclwiXTtcbnZhciBEYXNoSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxeik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUgNy41QzUgNy4yMjM4NiA1LjIyMzg2IDcgNS41IDdIOS41QzkuNzc2MTQgNyAxMCA3LjIyMzg2IDEwIDcuNUMxMCA3Ljc3NjE0IDkuNzc2MTQgOCA5LjUgOEg1LjVDNS4yMjM4NiA4IDUgNy43NzYxNCA1IDcuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFBID0gW1wiY29sb3JcIl07XG52YXIgRGFzaGJvYXJkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxQSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuOCAxTDIuNzQ5NjcgMC45OTk5N0MyLjUyMTIyIDAuOTk5NzUyIDIuMzI0MjkgMC45OTk1NjQgMi4xNDk4MyAxLjA0MTQ1QzEuNjAxMzYgMS4xNzMxMiAxLjE3MzEyIDEuNjAxMzYgMS4wNDE0NSAyLjE0OTgzQzAuOTk5NTY0IDIuMzI0MjkgMC45OTk3NTIgMi41MjEyMiAwLjk5OTk3IDIuNzQ5NjdMMSAyLjhWNS4yTDAuOTk5OTcgNS4yNTAzM0MwLjk5OTc1MiA1LjQ3ODc4IDAuOTk5NTY0IDUuNjc1NzIgMS4wNDE0NSA1Ljg1MDE3QzEuMTczMTIgNi4zOTg2NCAxLjYwMTM2IDYuODI2ODggMi4xNDk4MyA2Ljk1ODU2QzIuMzI0MjkgNy4wMDA0NCAyLjUyMTIyIDcuMDAwMjUgMi43NDk2NyA3LjAwMDAzTDIuOCA3SDUuMkw1LjI1MDMzIDcuMDAwMDNDNS40Nzg3OCA3LjAwMDI1IDUuNjc1NzIgNy4wMDA0NCA1Ljg1MDE3IDYuOTU4NTZDNi4zOTg2NCA2LjgyNjg4IDYuODI2ODggNi4zOTg2NCA2Ljk1ODU2IDUuODUwMTdDNy4wMDA0NCA1LjY3NTcyIDcuMDAwMjUgNS40Nzg3OCA3LjAwMDAzIDUuMjUwMzNMNyA1LjJWMi44TDcuMDAwMDMgMi43NDk2N0M3LjAwMDI1IDIuNTIxMjIgNy4wMDA0NCAyLjMyNDI5IDYuOTU4NTYgMi4xNDk4M0M2LjgyNjg4IDEuNjAxMzYgNi4zOTg2NCAxLjE3MzEyIDUuODUwMTcgMS4wNDE0NUM1LjY3NTcyIDAuOTk5NTY0IDUuNDc4NzggMC45OTk3NTIgNS4yNTAzMyAwLjk5OTk3TDUuMiAxSDIuOFpNMi4zODMyOCAyLjAxMzgyQzIuNDI2MzIgMi4wMDM0OCAyLjQ5MjIyIDIgMi44IDJINS4yQzUuNTA3NzkgMiA1LjU3MzY5IDIuMDAzNDggNS42MTY3MiAyLjAxMzgyQzUuNzk5NTUgMi4wNTc3MSA1Ljk0MjI5IDIuMjAwNDUgNS45ODYxOSAyLjM4MzI4QzUuOTk2NTIgMi40MjYzMiA2IDIuNDkyMjIgNiAyLjhWNS4yQzYgNS41MDc3OSA1Ljk5NjUyIDUuNTczNjkgNS45ODYxOSA1LjYxNjcyQzUuOTQyMjkgNS43OTk1NSA1Ljc5OTU1IDUuOTQyMjkgNS42MTY3MiA1Ljk4NjE5QzUuNTczNjkgNS45OTY1MiA1LjUwNzc5IDYgNS4yIDZIMi44QzIuNDkyMjIgNiAyLjQyNjMyIDUuOTk2NTIgMi4zODMyOCA1Ljk4NjE5QzIuMjAwNDUgNS45NDIyOSAyLjA1NzcxIDUuNzk5NTUgMi4wMTM4MiA1LjYxNjcyQzIuMDAzNDggNS41NzM2OSAyIDUuNTA3NzkgMiA1LjJWMi44QzIgMi40OTIyMiAyLjAwMzQ4IDIuNDI2MzIgMi4wMTM4MiAyLjM4MzI4QzIuMDU3NzEgMi4yMDA0NSAyLjIwMDQ1IDIuMDU3NzEgMi4zODMyOCAyLjAxMzgyWk05LjggMUw5Ljc0OTY3IDAuOTk5OTdDOS41MjEyMiAwLjk5OTc1MiA5LjMyNDI5IDAuOTk5NTY0IDkuMTQ5ODMgMS4wNDE0NUM4LjYwMTM2IDEuMTczMTIgOC4xNzMxMiAxLjYwMTM2IDguMDQxNDUgMi4xNDk4M0M3Ljk5OTU2IDIuMzI0MjkgNy45OTk3NSAyLjUyMTIyIDcuOTk5OTcgMi43NDk2N0w4IDIuOFY1LjJMNy45OTk5NyA1LjI1MDMzQzcuOTk5NzUgNS40Nzg3OCA3Ljk5OTU2IDUuNjc1NzIgOC4wNDE0NSA1Ljg1MDE3QzguMTczMTIgNi4zOTg2NCA4LjYwMTM2IDYuODI2ODggOS4xNDk4MyA2Ljk1ODU2QzkuMzI0MjkgNy4wMDA0NCA5LjUyMTIyIDcuMDAwMjUgOS43NDk2NyA3LjAwMDAzTDkuOCA3SDEyLjJMMTIuMjUwMyA3LjAwMDAzQzEyLjQ3ODggNy4wMDAyNSAxMi42NzU3IDcuMDAwNDQgMTIuODUwMiA2Ljk1ODU2QzEzLjM5ODYgNi44MjY4OCAxMy44MjY5IDYuMzk4NjQgMTMuOTU4NiA1Ljg1MDE3QzE0LjAwMDQgNS42NzU3MiAxNC4wMDAzIDUuNDc4NzggMTQgNS4yNTAzM0wxNCA1LjJWMi44TDE0IDIuNzQ5NjdDMTQuMDAwMyAyLjUyMTIyIDE0LjAwMDQgMi4zMjQyOSAxMy45NTg2IDIuMTQ5ODNDMTMuODI2OSAxLjYwMTM2IDEzLjM5ODYgMS4xNzMxMiAxMi44NTAyIDEuMDQxNDVDMTIuNjc1NyAwLjk5OTU2NCAxMi40Nzg4IDAuOTk5NzUyIDEyLjI1MDMgMC45OTk5N0wxMi4yIDFIOS44Wk05LjM4MzI4IDIuMDEzODJDOS40MjYzMiAyLjAwMzQ4IDkuNDkyMjIgMiA5LjggMkgxMi4yQzEyLjUwNzggMiAxMi41NzM3IDIuMDAzNDggMTIuNjE2NyAyLjAxMzgyQzEyLjc5OTUgMi4wNTc3MSAxMi45NDIzIDIuMjAwNDUgMTIuOTg2MiAyLjM4MzI4QzEyLjk5NjUgMi40MjYzMiAxMyAyLjQ5MjIyIDEzIDIuOFY1LjJDMTMgNS41MDc3OSAxMi45OTY1IDUuNTczNjkgMTIuOTg2MiA1LjYxNjcyQzEyLjk0MjMgNS43OTk1NSAxMi43OTk1IDUuOTQyMjkgMTIuNjE2NyA1Ljk4NjE5QzEyLjU3MzcgNS45OTY1MiAxMi41MDc4IDYgMTIuMiA2SDkuOEM5LjQ5MjIyIDYgOS40MjYzMiA1Ljk5NjUyIDkuMzgzMjggNS45ODYxOUM5LjIwMDQ1IDUuOTQyMjkgOS4wNTc3MSA1Ljc5OTU1IDkuMDEzODIgNS42MTY3MkM5LjAwMzQ4IDUuNTczNjkgOSA1LjUwNzc5IDkgNS4yVjIuOEM5IDIuNDkyMjIgOS4wMDM0OCAyLjQyNjMyIDkuMDEzODIgMi4zODMyOEM5LjA1NzcxIDIuMjAwNDUgOS4yMDA0NSAyLjA1NzcxIDkuMzgzMjggMi4wMTM4MlpNMi43NDk2NyA3Ljk5OTk3TDIuOCA4SDUuMkw1LjI1MDMzIDcuOTk5OTdDNS40Nzg3OCA3Ljk5OTc1IDUuNjc1NzIgNy45OTk1NiA1Ljg1MDE3IDguMDQxNDVDNi4zOTg2NCA4LjE3MzEyIDYuODI2ODggOC42MDEzNiA2Ljk1ODU2IDkuMTQ5ODNDNy4wMDA0NCA5LjMyNDI5IDcuMDAwMjUgOS41MjEyMiA3LjAwMDAzIDkuNzQ5NjdMNyA5LjhWMTIuMkw3LjAwMDAzIDEyLjI1MDNDNy4wMDAyNSAxMi40Nzg4IDcuMDAwNDQgMTIuNjc1NyA2Ljk1ODU2IDEyLjg1MDJDNi44MjY4OCAxMy4zOTg2IDYuMzk4NjQgMTMuODI2OSA1Ljg1MDE3IDEzLjk1ODZDNS42NzU3MiAxNC4wMDA0IDUuNDc4NzggMTQuMDAwMyA1LjI1MDMzIDE0TDUuMiAxNEgyLjhMMi43NDk2NyAxNEMyLjUyMTIyIDE0LjAwMDMgMi4zMjQyOSAxNC4wMDA0IDIuMTQ5ODMgMTMuOTU4NkMxLjYwMTM2IDEzLjgyNjkgMS4xNzMxMiAxMy4zOTg2IDEuMDQxNDUgMTIuODUwMkMwLjk5OTU2NCAxMi42NzU3IDAuOTk5NzUyIDEyLjQ3ODggMC45OTk5NyAxMi4yNTAzTDEgMTIuMlY5LjhMMC45OTk5NyA5Ljc0OTY3QzAuOTk5NzUyIDkuNTIxMjIgMC45OTk1NjQgOS4zMjQyOSAxLjA0MTQ1IDkuMTQ5ODNDMS4xNzMxMiA4LjYwMTM2IDEuNjAxMzYgOC4xNzMxMiAyLjE0OTgzIDguMDQxNDVDMi4zMjQyOSA3Ljk5OTU2IDIuNTIxMjIgNy45OTk3NSAyLjc0OTY3IDcuOTk5OTdaTTIuOCA5QzIuNDkyMjIgOSAyLjQyNjMyIDkuMDAzNDggMi4zODMyOCA5LjAxMzgyQzIuMjAwNDUgOS4wNTc3MSAyLjA1NzcxIDkuMjAwNDUgMi4wMTM4MiA5LjM4MzI4QzIuMDAzNDggOS40MjYzMiAyIDkuNDkyMjIgMiA5LjhWMTIuMkMyIDEyLjUwNzggMi4wMDM0OCAxMi41NzM3IDIuMDEzODIgMTIuNjE2N0MyLjA1NzcxIDEyLjc5OTUgMi4yMDA0NSAxMi45NDIzIDIuMzgzMjggMTIuOTg2MkMyLjQyNjMyIDEyLjk5NjUgMi40OTIyMiAxMyAyLjggMTNINS4yQzUuNTA3NzkgMTMgNS41NzM2OSAxMi45OTY1IDUuNjE2NzIgMTIuOTg2MkM1Ljc5OTU1IDEyLjk0MjMgNS45NDIyOSAxMi43OTk1IDUuOTg2MTkgMTIuNjE2N0M1Ljk5NjUyIDEyLjU3MzcgNiAxMi41MDc4IDYgMTIuMlY5LjhDNiA5LjQ5MjIyIDUuOTk2NTIgOS40MjYzMiA1Ljk4NjE5IDkuMzgzMjhDNS45NDIyOSA5LjIwMDQ1IDUuNzk5NTUgOS4wNTc3MSA1LjYxNjcyIDkuMDEzODJDNS41NzM2OSA5LjAwMzQ4IDUuNTA3NzkgOSA1LjIgOUgyLjhaTTkuOCA4TDkuNzQ5NjcgNy45OTk5N0M5LjUyMTIyIDcuOTk5NzUgOS4zMjQyOSA3Ljk5OTU2IDkuMTQ5ODMgOC4wNDE0NUM4LjYwMTM2IDguMTczMTIgOC4xNzMxMiA4LjYwMTM2IDguMDQxNDUgOS4xNDk4M0M3Ljk5OTU2IDkuMzI0MjkgNy45OTk3NSA5LjUyMTIyIDcuOTk5OTcgOS43NDk2N0w4IDkuOFYxMi4yTDcuOTk5OTcgMTIuMjUwM0M3Ljk5OTc1IDEyLjQ3ODggNy45OTk1NiAxMi42NzU3IDguMDQxNDUgMTIuODUwMkM4LjE3MzEyIDEzLjM5ODYgOC42MDEzNiAxMy44MjY5IDkuMTQ5ODMgMTMuOTU4NkM5LjMyNDI5IDE0LjAwMDQgOS41MjEyMiAxNC4wMDAzIDkuNzQ5NjcgMTRMOS44IDE0SDEyLjJMMTIuMjUwMyAxNEMxMi40Nzg4IDE0LjAwMDMgMTIuNjc1NyAxNC4wMDA0IDEyLjg1MDIgMTMuOTU4NkMxMy4zOTg2IDEzLjgyNjkgMTMuODI2OSAxMy4zOTg2IDEzLjk1ODYgMTIuODUwMkMxNC4wMDA0IDEyLjY3NTcgMTQuMDAwMyAxMi40Nzg4IDE0IDEyLjI1MDNMMTQgMTIuMlY5LjhMMTQgOS43NDk2N0MxNC4wMDAzIDkuNTIxMjIgMTQuMDAwNCA5LjMyNDI5IDEzLjk1ODYgOS4xNDk4M0MxMy44MjY5IDguNjAxMzYgMTMuMzk4NiA4LjE3MzEyIDEyLjg1MDIgOC4wNDE0NUMxMi42NzU3IDcuOTk5NTYgMTIuNDc4OCA3Ljk5OTc1IDEyLjI1MDMgNy45OTk5N0wxMi4yIDhIOS44Wk05LjM4MzI4IDkuMDEzODJDOS40MjYzMiA5LjAwMzQ4IDkuNDkyMjIgOSA5LjggOUgxMi4yQzEyLjUwNzggOSAxMi41NzM3IDkuMDAzNDggMTIuNjE2NyA5LjAxMzgyQzEyLjc5OTUgOS4wNTc3MSAxMi45NDIzIDkuMjAwNDUgMTIuOTg2MiA5LjM4MzI4QzEyLjk5NjUgOS40MjYzMiAxMyA5LjQ5MjIyIDEzIDkuOFYxMi4yQzEzIDEyLjUwNzggMTIuOTk2NSAxMi41NzM3IDEyLjk4NjIgMTIuNjE2N0MxMi45NDIzIDEyLjc5OTUgMTIuNzk5NSAxMi45NDIzIDEyLjYxNjcgMTIuOTg2MkMxMi41NzM3IDEyLjk5NjUgMTIuNTA3OCAxMyAxMi4yIDEzSDkuOEM5LjQ5MjIyIDEzIDkuNDI2MzIgMTIuOTk2NSA5LjM4MzI4IDEyLjk4NjJDOS4yMDA0NSAxMi45NDIzIDkuMDU3NzEgMTIuNzk5NSA5LjAxMzgyIDEyLjYxNjdDOS4wMDM0OCAxMi41NzM3IDkgMTIuNTA3OCA5IDEyLjJWOS44QzkgOS40OTIyMiA5LjAwMzQ4IDkuNDI2MzIgOS4wMTM4MiA5LjM4MzI4QzkuMDU3NzEgOS4yMDA0NSA5LjIwMDQ1IDkuMDU3NzEgOS4zODMyOCA5LjAxMzgyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMUIgPSBbXCJjb2xvclwiXTtcbnZhciBEZXNrdG9wSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxQik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEgMy4yNUMxIDMuMTExOTMgMS4xMTE5MyAzIDEuMjUgM0gxMy43NUMxMy44ODgxIDMgMTQgMy4xMTE5MyAxNCAzLjI1VjEwLjc1QzE0IDEwLjg4ODEgMTMuODg4MSAxMSAxMy43NSAxMUgxLjI1QzEuMTExOTMgMTEgMSAxMC44ODgxIDEgMTAuNzVWMy4yNVpNMS4yNSAyQzAuNTU5NjQzIDIgMCAyLjU1OTY0IDAgMy4yNVYxMC43NUMwIDExLjQ0MDQgMC41NTk2NDQgMTIgMS4yNSAxMkg1LjA3MzQxTDQuODI5OTEgMTMuMjk4NkM0Ljc2NjQ1IDEzLjYzNzEgNS4wMjYxMiAxMy45NSA1LjM3MDQ5IDEzLjk1SDkuNjI5NTFDOS45NzM4OSAxMy45NSAxMC4yMzM2IDEzLjYzNzEgMTAuMTcwMSAxMy4yOTg2TDkuOTI2NTkgMTJIMTMuNzVDMTQuNDQwNCAxMiAxNSAxMS40NDA0IDE1IDEwLjc1VjMuMjVDMTUgMi41NTk2NCAxNC40NDA0IDIgMTMuNzUgMkgxLjI1Wk05LjAxMDkxIDEySDUuOTg5MDlMNS43OTIyMiAxMy4wNUg5LjIwNzc4TDkuMDEwOTEgMTJaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxQyA9IFtcImNvbG9yXCJdO1xudmFyIERpbWVuc2lvbnNJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFDKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy4wMDAxNCAyLjczODk1QzMuMDAwMTQgMi45NDY5OCAyLjc2MDg3IDMuMDY0MDEgMi41OTY2NiAyLjkzNjI4TDEuMDAzODYgMS42OTc0NEMwLjg3NTE3NyAxLjU5NzM1IDAuODc1MTc3IDEuNDAyODYgMS4wMDM4NiAxLjMwMjc3TDIuNTk2NjYgMC4wNjM5MjhDMi43NjA4NyAtMC4wNjM3OTQ0IDMuMDAwMTQgMC4wNTMyMjkzIDMuMDAwMTQgMC4yNjEyNjZWMS4wMDAxMkg5LjAwMDA5VjAuMjYxMjk2QzkuMDAwMDkgMC4wNTMyNTkxIDkuMjM5MzYgLTAuMDYzNzY0NiA5LjQwMzU4IDAuMDYzOTU3OEwxMC45OTY0IDEuMzAyOEMxMS4xMjUxIDEuNDAyODkgMTEuMTI1MSAxLjU5NzM4IDEwLjk5NjQgMS42OTc0N0w5LjQwMzU4IDIuOTM2MzFDOS4yMzkzNiAzLjA2NDA0IDkuMDAwMDkgMi45NDcwMSA5LjAwMDA5IDIuNzM4OThWMi4wMDAxMkgzLjAwMDE0VjIuNzM4OTVaTTkuNTAwMDIgNC45OTk5OEgyLjUwMDAyQzIuMjIzODggNC45OTk5OCAyLjAwMDAyIDUuMjIzODQgMi4wMDAwMiA1LjQ5OTk4VjEyLjVDMi4wMDAwMiAxMi43NzYxIDIuMjIzODggMTMgMi41MDAwMiAxM0g5LjUwMDAyQzkuNzc2MTYgMTMgMTAgMTIuNzc2MSAxMCAxMi41VjUuNDk5OThDMTAgNS4yMjM4NCA5Ljc3NjE2IDQuOTk5OTggOS41MDAwMiA0Ljk5OTk4Wk0yLjUwMDAyIDMuOTk5OThDMS42NzE1OSAzLjk5OTk4IDEuMDAwMDIgNC42NzE1NiAxLjAwMDAyIDUuNDk5OThWMTIuNUMxLjAwMDAyIDEzLjMyODQgMS42NzE1OSAxNCAyLjUwMDAyIDE0SDkuNTAwMDJDMTAuMzI4NCAxNCAxMSAxMy4zMjg0IDExIDEyLjVWNS40OTk5OEMxMSA0LjY3MTU2IDEwLjMyODQgMy45OTk5OCA5LjUwMDAyIDMuOTk5OThIMi41MDAwMlpNMTQuNzM4OSA2LjAwMDAxSDE0VjEySDE0LjczODlDMTQuOTQ2OSAxMiAxNS4wNjQgMTIuMjM5MyAxNC45MzYyIDEyLjQwMzVMMTMuNjk3NCAxMy45OTYzQzEzLjU5NzMgMTQuMTI1IDEzLjQwMjggMTQuMTI1IDEzLjMwMjcgMTMuOTk2M0wxMi4wNjM5IDEyLjQwMzVDMTEuOTM2MiAxMi4yMzkzIDEyLjA1MzIgMTIgMTIuMjYxMiAxMkgxM1Y2LjAwMDAxSDEyLjI2MTJDMTIuMDUzMiA2LjAwMDAxIDExLjkzNjEgNS43NjA3NCAxMi4wNjM5IDUuNTk2NTNMMTMuMzAyNyA0LjAwMzczQzEzLjQwMjggMy44NzUwNSAxMy41OTczIDMuODc1MDUgMTMuNjk3NCA0LjAwMzc0TDE0LjkzNjIgNS41OTY1M0MxNS4wNjM5IDUuNzYwNzQgMTQuOTQ2OSA2LjAwMDAxIDE0LjczODkgNi4wMDAwMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFEID0gW1wiY29sb3JcIl07XG52YXIgRGlzY0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMUQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjQ5OTkxIDAuODc3MDc1QzMuODQyMjIgMC44NzcwNzUgMC44NzcwNzUgMy44NDIyMiAwLjg3NzA3NSA3LjQ5OTkxQzAuODc3MDc1IDExLjE1NzYgMy44NDIyMiAxNC4xMjI3IDcuNDk5OTEgMTQuMTIyN0MxMS4xNTc2IDE0LjEyMjcgMTQuMTIyNyAxMS4xNTc2IDE0LjEyMjcgNy40OTk5MUMxNC4xMjI3IDMuODQyMjIgMTEuMTU3NiAwLjg3NzA3NSA3LjQ5OTkxIDAuODc3MDc1Wk0xLjgyNzA4IDcuNDk5OTFDMS44MjcwOCA0LjM2Njg5IDQuMzY2ODkgMS44MjcwNyA3LjQ5OTkxIDEuODI3MDdDMTAuNjMyOSAxLjgyNzA3IDEzLjE3MjcgNC4zNjY4OSAxMy4xNzI3IDcuNDk5OTFDMTMuMTcyNyAxMC42MzI5IDEwLjYzMjkgMTMuMTcyNyA3LjQ5OTkxIDEzLjE3MjdDNC4zNjY4OSAxMy4xNzI3IDEuODI3MDggMTAuNjMyOSAxLjgyNzA4IDcuNDk5OTFaTTguMzcyODcgNy41MDAwNkM4LjM3Mjg3IDcuOTgxOTYgNy45ODIyMSA4LjM3MjYzIDcuNTAwMyA4LjM3MjYzQzcuMDE4MzkgOC4zNzI2MyA2LjYyNzczIDcuOTgxOTYgNi42Mjc3MyA3LjUwMDA2QzYuNjI3NzMgNy4wMTgxNSA3LjAxODM5IDYuNjI3NDggNy41MDAzIDYuNjI3NDhDNy45ODIyMSA2LjYyNzQ4IDguMzcyODcgNy4wMTgxNSA4LjM3Mjg3IDcuNTAwMDZaTTkuMzIyODcgNy41MDAwNkM5LjMyMjg3IDguNTA2NjQgOC41MDY4OCA5LjMyMjYzIDcuNTAwMyA5LjMyMjYzQzYuNDkzNzIgOS4zMjI2MyA1LjY3NzczIDguNTA2NjQgNS42Nzc3MyA3LjUwMDA2QzUuNjc3NzMgNi40OTM0OCA2LjQ5MzcyIDUuNjc3NDggNy41MDAzIDUuNjc3NDhDOC41MDY4OCA1LjY3NzQ4IDkuMzIyODcgNi40OTM0OCA5LjMyMjg3IDcuNTAwMDZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxRSA9IFtcImNvbG9yXCJdO1xudmFyIERpc2NvcmRMb2dvSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxRSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgZDogXCJNNS4wNzQ1MSAxLjgyNTg0QzUuMDMyNjcgMS44MTkyNiA0Ljk5MDE0IDEuODE4MjUgNC45NDgwMyAxLjgyMjg0QzQuMTA2ODMgMS45MTQ0NiAyLjgyNjczIDIuMzY4MjggMi4wNzExNSAyLjc3ODA4QzIuMDIxMDYgMi44MDUyNSAxLjk3NjIxIDIuODQxMTIgMS45Mzg2OSAyLjg4NDAyQzEuNjI1MDIgMy4yNDI2NiAxLjM0MDQ2IDMuODI4MzYgMS4xMTcwNiA0LjM4MTg2QzAuODg3NDQ3IDQuOTUwNzYgMC42OTcyOTMgNS41NTAzMiAwLjU4ODkzNyA1Ljk4MzU0QzAuMjM2MjMyIDcuMzkzNjkgMC4wNDI1MDIgOS4wODcyOCAwLjAxNzQ5NDggMTAuNjkyNUMwLjAxNjI0MjkgMTAuNzcyOSAwLjAzNTE4ODMgMTAuODUyMyAwLjA3MjU5MzEgMTAuOTIzNEMwLjM3MzY3OSAxMS40OTYgMS4wMjAxNSAxMi4wMjcgMS42NjgwOSAxMi40MTUyQzIuMzIzMzIgMTIuODA3OCAzLjA4NzMyIDEzLjExODIgMy43MDM4NSAxMy4xNzc4QzMuODUzMzUgMTMuMTkyMiA0LjAwMDk4IDEzLjEzNTggNC4xMDI4MiAxMy4wMjU1QzQuMjU3MiAxMi44NTgxIDQuNTE5MyAxMi40Njc2IDQuNzE3NDUgMTIuMTY0M0M0LjgwNzM5IDEyLjAyNjcgNC44OTE1NyAxMS44OTUzIDQuOTU4NDUgMTEuNzkwMUM1LjYyMDIzIDExLjkxMDYgNi40NTA0MyAxMS45ODAxIDcuNTAwMDIgMTEuOTgwMUM4LjU0ODQ0IDExLjk4MDEgOS4zNzc5NiAxMS45MTA3IDEwLjAzOTQgMTEuNzkwNUMxMC4xMDYyIDExLjg5NTcgMTAuMTkwMyAxMi4wMjY5IDEwLjI4MDEgMTIuMTY0M0MxMC40NzgzIDEyLjQ2NzYgMTAuNzQwNCAxMi44NTgxIDEwLjg5NDcgMTMuMDI1NUMxMC45OTY2IDEzLjEzNTggMTEuMTQ0MiAxMy4xOTIyIDExLjI5MzcgMTMuMTc3OEMxMS45MTAyIDEzLjExODIgMTIuNjc0MiAxMi44MDc4IDEzLjMyOTUgMTIuNDE1MkMxMy45Nzc0IDEyLjAyNyAxNC42MjM5IDExLjQ5NiAxNC45MjUgMTAuOTIzNEMxNC45NjI0IDEwLjg1MjMgMTQuOTgxMyAxMC43NzI5IDE0Ljk4MDEgMTAuNjkyNUMxNC45NTUxIDkuMDg3MjggMTQuNzYxMyA3LjM5MzY5IDE0LjQwODYgNS45ODM1NEMxNC4zMDAzIDUuNTUwMzIgMTQuMTEwMSA0Ljk1MDc2IDEzLjg4MDUgNC4zODE4NkMxMy42NTcxIDMuODI4MzYgMTMuMzcyNSAzLjI0MjY2IDEzLjA1ODkgMi44ODQwMkMxMy4wMjE0IDIuODQxMTIgMTIuOTc2NSAyLjgwNTI1IDEyLjkyNjQgMi43NzgwOEMxMi4xNzA4IDIuMzY4MjggMTAuODkwNyAxLjkxNDQ2IDEwLjA0OTUgMS44MjI4NEMxMC4wMDc0IDEuODE4MjUgOS45NjQ4OSAxLjgxOTI2IDkuOTIzMDUgMS44MjU4NEM5LjcxNjc2IDEuODU4MjUgOS41MzkxIDEuOTY0NTggOS40MDgwOSAyLjA2MzU1QzkuMjY5NzcgMi4xNjgwNCA5LjE0MTMgMi4yOTY2OCA5LjAzMDQgMi40MjY4MkM4Ljg2OTY4IDIuNjE1NDQgOC43MTQzNyAyLjg0NDg4IDguNjE0MjggMy4wNjIyNUM4LjI3MjM3IDMuMDM1MDEgNy45MDEzOCAzLjAyIDcuNSAzLjAyQzcuMDk3NyAzLjAyIDYuNzI1OTMgMy4wMzUwOCA2LjM4MzM3IDMuMDYyNDRDNi4yODMyOCAyLjg0NTAxIDYuMTI3OTIgMi42MTU0OSA1Ljk2NzE2IDIuNDI2ODJDNS44NTYyNiAyLjI5NjY4IDUuNzI3NzggMi4xNjgwNCA1LjU4OTQ3IDIuMDYzNTVDNS40NTg0NiAxLjk2NDU4IDUuMjgwOCAxLjg1ODI1IDUuMDc0NTEgMS44MjU4NFpNMTEuMDE4MSAxMS41MzgyQzExLjAzOTUgMTEuNTcxMyAxMS4wNjE1IDExLjYwNTEgMTEuMDgzOCAxMS42MzkyQzExLjIxNjkgMTEuODQzIDExLjM0ODcgMTIuMDM4NSAxMS40NTA4IDEyLjE4MDlDMTEuODQ3NSAxMi4wOTE2IDEyLjM1MiAxMS44ODE4IDEyLjgzNjEgMTEuNTkxN0MxMy4zNzk1IDExLjI2NjEgMTMuODA5OCAxMC44OTE4IDE0LjAxNzcgMTAuNTczOUMxMy45ODUyIDkuMDY3NTggMTMuNzk5MyA3LjUwMzY5IDEzLjQ3NzMgNi4yMTY0OEMxMy4zOCA1LjgyNzU5IDEzLjIwMzggNS4yNzAyMSAxMi45OTAzIDQuNzQxMTdDMTIuNzg5MyA0LjI0MzI2IDEyLjU3NTMgMy44MjE2MiAxMi4zODggMy41NzkyQzExLjczNzYgMy4yNDIxOSAxMC43MTI5IDIuODg1ODIgMTAuMDQ1NCAyLjc4OTg3QzEwLjAzMDggMi43OTgzOSAxMC4wMTEzIDIuODExMDIgOS45ODY3NSAyLjgyOTU1QzkuOTE4NjMgMi44ODEgOS44NDAxOCAyLjk1NjY2IDkuNzYxMTEgMy4wNDk0NUM5LjcxOTU5IDMuMDk4MTcgOS42ODE2NiAzLjE0NzEgOS42NDc2OCAzLjE5NDQ5QzkuOTUzIDMuMjUwMzEgMTAuMjI1MyAzLjMxNzEgMTAuNDY2MiAzLjM5MTIzQzExLjE0OTkgMy42MDE2IDExLjY0MjggMy44OTAzOSAxMS44ODQgNC4yMTJDMTIuMDQzMSA0LjQyNDA4IDEyLjAwMDEgNC43MjQ5NCAxMS43ODggNC44ODRDMTEuNTc1OSA1LjA0MzA2IDExLjI3NTEgNS4wMDAwOCAxMS4xMTYgNC43ODhDMTEuMDU3MiA0LjcwOTYxIDEwLjgwMDEgNC40OTg0IDEwLjE4MzggNC4zMDg3N0M5LjU4OTMzIDQuMTI1ODUgOC43MTM1NiAzLjk4IDcuNSAzLjk4QzYuMjg2NDQgMy45OCA1LjQxMDY3IDQuMTI1ODUgNC44MTYxNiA0LjMwODc3QzQuMTk5ODggNC40OTg0IDMuOTQyNzkgNC43MDk2MSAzLjg4NCA0Ljc4OEMzLjcyNDk0IDUuMDAwMDggMy40MjQwOCA1LjA0MzA2IDMuMjEyIDQuODg0QzIuOTk5OTIgNC43MjQ5NCAyLjk1Njk0IDQuNDI0MDggMy4xMTYgNC4yMTJDMy4zNTcyMSAzLjg5MDM5IDMuODUwMTEgMy42MDE2IDQuNTMzODMgMy4zOTEyM0M0Ljc3NDE4IDMuMzE3MjcgNS4wNDU3MSAzLjI1MDYyIDUuMzUwMTYgMy4xOTQ4OEM1LjMxNjExIDMuMTQ3MzggNS4yNzgwOCAzLjA5ODMxIDUuMjM2NDUgMy4wNDk0NUM1LjE1NzM4IDIuOTU2NjYgNS4wNzg5MyAyLjg4MSA1LjAxMDgxIDIuODI5NTVDNC45ODYyOCAyLjgxMTAyIDQuOTY2NzQgMi43OTgzOSA0Ljk1MjE3IDIuNzg5ODdDNC4yODQ2NCAyLjg4NTgyIDMuMjU5OTkgMy4yNDIxOSAyLjYwOTU0IDMuNTc5MkMyLjQyMjI2IDMuODIxNjIgMi4yMDgyNSA0LjI0MzI2IDIuMDA3MjkgNC43NDExN0MxLjc5Mzc2IDUuMjcwMjEgMS42MTc1MiA1LjgyNzU5IDEuNTIwMjUgNi4yMTY0OEMxLjE5ODI5IDcuNTAzNjkgMS4wMTIzNiA5LjA2NzU4IDAuOTc5ODYgMTAuNTczOUMxLjE4NzcyIDEwLjg5MTggMS42MTgwNyAxMS4yNjYxIDIuMTYxNDggMTEuNTkxN0MyLjY0NTU3IDExLjg4MTggMy4xNTAwMyAxMi4wOTE2IDMuNTQ2OCAxMi4xODA5QzMuNjQ4ODUgMTIuMDM4NSAzLjc4MDY1IDExLjg0MyAzLjkxMzggMTEuNjM5MkMzLjkzNjI2IDExLjYwNDggMy45NTgzOCAxMS41NzA4IDMuOTc5OTYgMTEuNTM3NUMzLjE5NTIxIDExLjI1OTEgMi43NzM2MSAxMC44NzU4IDIuNTAwNjQgMTAuNDY2NEMyLjM1MzU5IDEwLjI0NTggMi40MTMyIDkuOTQ3NzggMi42MzM3NyA5LjgwMDc0QzIuODU0MzUgOS42NTM2OSAzLjE1MjM2IDkuNzEzMjkgMy4yOTk0MSA5LjkzMzg3QzMuNTYwNzcgMTAuMzI1OSA0LjI0MzU1IDExLjAyMDEgNy41MDAwMiAxMS4wMjAxQzEwLjc1NjUgMTEuMDIwMSAxMS40MzkyIDEwLjMyNiAxMS43MDA2IDkuOTMzODZDMTEuODQ3NyA5LjcxMzI5IDEyLjE0NTcgOS42NTM2OSAxMi4zNjYzIDkuODAwNzRDMTIuNTg2OSA5Ljk0Nzc5IDEyLjY0NjUgMTAuMjQ1OCAxMi40OTk0IDEwLjQ2NjRDMTIuMjI2MiAxMC44NzYyIDExLjgwNDEgMTEuMjU5OCAxMS4wMTgxIDExLjUzODJaTTQuMDgwNDkgNy4wMTIyMUM0LjMyNDEyIDYuNzQ5ODQgNC42NTQ3NiA2LjYwMTYyIDUuMDAwMDcgNi41OTk5OEM1LjM0NTM4IDYuNjAxNjIgNS42NzYwMyA2Ljc0OTg0IDUuOTE5NjYgNy4wMTIyMUM2LjE2MzI5IDcuMjc0NTkgNi4zMDAwNyA3LjYyOTc0IDYuMzAwMDcgNy45OTk5OEM2LjMwMDA3IDguMzcwMjEgNi4xNjMyOSA4LjcyNTM2IDUuOTE5NjYgOC45ODc3NEM1LjY3NjAzIDkuMjUwMTEgNS4zNDUzOCA5LjM5ODMzIDUuMDAwMDcgOS4zOTk5OEM0LjY1NDc2IDkuMzk4MzMgNC4zMjQxMiA5LjI1MDExIDQuMDgwNDkgOC45ODc3NEMzLjgzNjg1IDguNzI1MzYgMy43MDAwNyA4LjM3MDIxIDMuNzAwMDcgNy45OTk5OEMzLjcwMDA3IDcuNjI5NzQgMy44MzY4NSA3LjI3NDU5IDQuMDgwNDkgNy4wMTIyMVpNOS45OTg4NSA2LjU5OTk4QzkuNjUzNTQgNi42MDE2MiA5LjMyMjkgNi43NDk4NCA5LjA3OTI2IDcuMDEyMjFDOC44MzU2MyA3LjI3NDU5IDguNjk4ODUgNy42Mjk3NCA4LjY5ODg1IDcuOTk5OThDOC42OTg4NSA4LjM3MDIxIDguODM1NjMgOC43MjUzNiA5LjA3OTI2IDguOTg3NzRDOS4zMjI5IDkuMjUwMTEgOS42NTM1NCA5LjM5ODMzIDkuOTk4ODUgOS4zOTk5OEMxMC4zNDQyIDkuMzk4MzMgMTAuNjc0OCA5LjI1MDExIDEwLjkxODQgOC45ODc3NEMxMS4xNjIxIDguNzI1MzYgMTEuMjk4OSA4LjM3MDIxIDExLjI5ODkgNy45OTk5OEMxMS4yOTg5IDcuNjI5NzQgMTEuMTYyMSA3LjI3NDU5IDEwLjkxODQgNy4wMTIyMUMxMC42NzQ4IDYuNzQ5ODQgMTAuMzQ0MiA2LjYwMTYyIDkuOTk4ODUgNi41OTk5OFpcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxRiA9IFtcImNvbG9yXCJdO1xudmFyIERpdmlkZXJIb3Jpem9udGFsSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxRik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIgNy41QzIgNy4yMjM4NiAyLjIyMzg2IDcgMi41IDdIMTIuNUMxMi43NzYxIDcgMTMgNy4yMjM4NiAxMyA3LjVDMTMgNy43NzYxNCAxMi43NzYxIDggMTIuNSA4SDIuNUMyLjIyMzg2IDggMiA3Ljc3NjE0IDIgNy41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMUcgPSBbXCJjb2xvclwiXTtcbnZhciBEaXZpZGVyVmVydGljYWxJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFHKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy41IDJDNy43NzYxNCAyIDggMi4yMjM4NiA4IDIuNUw4IDEyLjVDOCAxMi43NzYxIDcuNzc2MTQgMTMgNy41IDEzQzcuMjIzODYgMTMgNyAxMi43NzYxIDcgMTIuNUw3IDIuNUM3IDIuMjIzODYgNy4yMjM4NiAyIDcuNSAyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMUggPSBbXCJjb2xvclwiXTtcbnZhciBEb3RJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFIKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy41IDkuMTI1QzguMzk3NDYgOS4xMjUgOS4xMjUgOC4zOTc0NiA5LjEyNSA3LjVDOS4xMjUgNi42MDI1NCA4LjM5NzQ2IDUuODc1IDcuNSA1Ljg3NUM2LjYwMjU0IDUuODc1IDUuODc1IDYuNjAyNTQgNS44NzUgNy41QzUuODc1IDguMzk3NDYgNi42MDI1NCA5LjEyNSA3LjUgOS4xMjVaTTcuNSAxMC4xMjVDOC45NDk3NSAxMC4xMjUgMTAuMTI1IDguOTQ5NzUgMTAuMTI1IDcuNUMxMC4xMjUgNi4wNTAyNSA4Ljk0OTc1IDQuODc1IDcuNSA0Ljg3NUM2LjA1MDI1IDQuODc1IDQuODc1IDYuMDUwMjUgNC44NzUgNy41QzQuODc1IDguOTQ5NzUgNi4wNTAyNSAxMC4xMjUgNy41IDEwLjEyNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFJID0gW1wiY29sb3JcIl07XG52YXIgRG90RmlsbGVkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxSSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTkuODc1IDcuNUM5Ljg3NSA4LjgxMTY4IDguODExNjggOS44NzUgNy41IDkuODc1QzYuMTg4MzIgOS44NzUgNS4xMjUgOC44MTE2OCA1LjEyNSA3LjVDNS4xMjUgNi4xODgzMiA2LjE4ODMyIDUuMTI1IDcuNSA1LjEyNUM4LjgxMTY4IDUuMTI1IDkuODc1IDYuMTg4MzIgOS44NzUgNy41WlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFKID0gW1wiY29sb3JcIl07XG52YXIgRG90c0hvcml6b250YWxJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFKKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy42MjUgNy41QzMuNjI1IDguMTIxMzIgMy4xMjEzMiA4LjYyNSAyLjUgOC42MjVDMS44Nzg2OCA4LjYyNSAxLjM3NSA4LjEyMTMyIDEuMzc1IDcuNUMxLjM3NSA2Ljg3ODY4IDEuODc4NjggNi4zNzUgMi41IDYuMzc1QzMuMTIxMzIgNi4zNzUgMy42MjUgNi44Nzg2OCAzLjYyNSA3LjVaTTguNjI1IDcuNUM4LjYyNSA4LjEyMTMyIDguMTIxMzIgOC42MjUgNy41IDguNjI1QzYuODc4NjggOC42MjUgNi4zNzUgOC4xMjEzMiA2LjM3NSA3LjVDNi4zNzUgNi44Nzg2OCA2Ljg3ODY4IDYuMzc1IDcuNSA2LjM3NUM4LjEyMTMyIDYuMzc1IDguNjI1IDYuODc4NjggOC42MjUgNy41Wk0xMi41IDguNjI1QzEzLjEyMTMgOC42MjUgMTMuNjI1IDguMTIxMzIgMTMuNjI1IDcuNUMxMy42MjUgNi44Nzg2OCAxMy4xMjEzIDYuMzc1IDEyLjUgNi4zNzVDMTEuODc4NyA2LjM3NSAxMS4zNzUgNi44Nzg2OCAxMS4zNzUgNy41QzExLjM3NSA4LjEyMTMyIDExLjg3ODcgOC42MjUgMTIuNSA4LjYyNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFLID0gW1wiY29sb3JcIl07XG52YXIgRG90c1ZlcnRpY2FsSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxSyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTguNjI1IDIuNUM4LjYyNSAzLjEyMTMyIDguMTIxMzIgMy42MjUgNy41IDMuNjI1QzYuODc4NjggMy42MjUgNi4zNzUgMy4xMjEzMiA2LjM3NSAyLjVDNi4zNzUgMS44Nzg2OCA2Ljg3ODY4IDEuMzc1IDcuNSAxLjM3NUM4LjEyMTMyIDEuMzc1IDguNjI1IDEuODc4NjggOC42MjUgMi41Wk04LjYyNSA3LjVDOC42MjUgOC4xMjEzMiA4LjEyMTMyIDguNjI1IDcuNSA4LjYyNUM2Ljg3ODY4IDguNjI1IDYuMzc1IDguMTIxMzIgNi4zNzUgNy41QzYuMzc1IDYuODc4NjggNi44Nzg2OCA2LjM3NSA3LjUgNi4zNzVDOC4xMjEzMiA2LjM3NSA4LjYyNSA2Ljg3ODY4IDguNjI1IDcuNVpNNy41IDEzLjYyNUM4LjEyMTMyIDEzLjYyNSA4LjYyNSAxMy4xMjEzIDguNjI1IDEyLjVDOC42MjUgMTEuODc4NyA4LjEyMTMyIDExLjM3NSA3LjUgMTEuMzc1QzYuODc4NjggMTEuMzc1IDYuMzc1IDExLjg3ODcgNi4zNzUgMTIuNUM2LjM3NSAxMy4xMjEzIDYuODc4NjggMTMuNjI1IDcuNSAxMy42MjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxTCA9IFtcImNvbG9yXCJdO1xudmFyIERvdWJsZUFycm93RG93bkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMUwpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zLjg1MzU1IDIuMTQ2NDVDMy42NTgyOSAxLjk1MTE4IDMuMzQxNzEgMS45NTExOCAzLjE0NjQ1IDIuMTQ2NDVDMi45NTExOCAyLjM0MTcxIDIuOTUxMTggMi42NTgyOSAzLjE0NjQ1IDIuODUzNTVMNy4xNDY0NSA2Ljg1MzU1QzcuMzQxNzEgNy4wNDg4MiA3LjY1ODI5IDcuMDQ4ODIgNy44NTM1NSA2Ljg1MzU1TDExLjg1MzYgMi44NTM1NUMxMi4wNDg4IDIuNjU4MjkgMTIuMDQ4OCAyLjM0MTcxIDExLjg1MzYgMi4xNDY0NUMxMS42NTgzIDEuOTUxMTggMTEuMzQxNyAxLjk1MTE4IDExLjE0NjQgMi4xNDY0NUw3LjUgNS43OTI4OUwzLjg1MzU1IDIuMTQ2NDVaTTMuODUzNTUgOC4xNDY0NUMzLjY1ODI5IDcuOTUxMTggMy4zNDE3MSA3Ljk1MTE4IDMuMTQ2NDUgOC4xNDY0NUMyLjk1MTE4IDguMzQxNzEgMi45NTExOCA4LjY1ODI5IDMuMTQ2NDUgOC44NTM1NUw3LjE0NjQ1IDEyLjg1MzZDNy4zNDE3MSAxMy4wNDg4IDcuNjU4MjkgMTMuMDQ4OCA3Ljg1MzU1IDEyLjg1MzZMMTEuODUzNiA4Ljg1MzU1QzEyLjA0ODggOC42NTgyOSAxMi4wNDg4IDguMzQxNzEgMTEuODUzNiA4LjE0NjQ1QzExLjY1ODMgNy45NTExOCAxMS4zNDE3IDcuOTUxMTggMTEuMTQ2NCA4LjE0NjQ1TDcuNSAxMS43OTI5TDMuODUzNTUgOC4xNDY0NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFNID0gW1wiY29sb3JcIl07XG52YXIgRG91YmxlQXJyb3dMZWZ0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxTSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTYuODUzNTUgMy44NTM1NUM3LjA0ODgyIDMuNjU4MjkgNy4wNDg4MiAzLjM0MTcxIDYuODUzNTUgMy4xNDY0NUM2LjY1ODI5IDIuOTUxMTggNi4zNDE3MSAyLjk1MTE4IDYuMTQ2NDUgMy4xNDY0NUwyLjE0NjQ1IDcuMTQ2NDVDMS45NTExOCA3LjM0MTcxIDEuOTUxMTggNy42NTgyOSAyLjE0NjQ1IDcuODUzNTVMNi4xNDY0NSAxMS44NTM2QzYuMzQxNzEgMTIuMDQ4OCA2LjY1ODI5IDEyLjA0ODggNi44NTM1NSAxMS44NTM2QzcuMDQ4ODIgMTEuNjU4MyA3LjA0ODgyIDExLjM0MTcgNi44NTM1NSAxMS4xNDY0TDMuMjA3MTEgNy41TDYuODUzNTUgMy44NTM1NVpNMTIuODUzNiAzLjg1MzU1QzEzLjA0ODggMy42NTgyOSAxMy4wNDg4IDMuMzQxNzEgMTIuODUzNiAzLjE0NjQ1QzEyLjY1ODMgMi45NTExOCAxMi4zNDE3IDIuOTUxMTggMTIuMTQ2NCAzLjE0NjQ1TDguMTQ2NDUgNy4xNDY0NUM3Ljk1MTE4IDcuMzQxNzEgNy45NTExOCA3LjY1ODI5IDguMTQ2NDUgNy44NTM1NUwxMi4xNDY0IDExLjg1MzZDMTIuMzQxNyAxMi4wNDg4IDEyLjY1ODMgMTIuMDQ4OCAxMi44NTM2IDExLjg1MzZDMTMuMDQ4OCAxMS42NTgzIDEzLjA0ODggMTEuMzQxNyAxMi44NTM2IDExLjE0NjRMOS4yMDcxMSA3LjVMMTIuODUzNiAzLjg1MzU1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMU4gPSBbXCJjb2xvclwiXTtcbnZhciBEb3VibGVBcnJvd1JpZ2h0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxTik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuMTQ2NDUgMTEuMTQ2NEMxLjk1MTE4IDExLjM0MTcgMS45NTExOCAxMS42NTgzIDIuMTQ2NDUgMTEuODUzNkMyLjM0MTcxIDEyLjA0ODggMi42NTgyOSAxMi4wNDg4IDIuODUzNTUgMTEuODUzNkw2Ljg1MzU1IDcuODUzNTVDNy4wNDg4MiA3LjY1ODI5IDcuMDQ4ODIgNy4zNDE3MSA2Ljg1MzU1IDcuMTQ2NDVMMi44NTM1NSAzLjE0NjQ1QzIuNjU4MjkgMi45NTExOCAyLjM0MTcxIDIuOTUxMTggMi4xNDY0NSAzLjE0NjQ1QzEuOTUxMTggMy4zNDE3MSAxLjk1MTE4IDMuNjU4MjkgMi4xNDY0NSAzLjg1MzU1TDUuNzkyODkgNy41TDIuMTQ2NDUgMTEuMTQ2NFpNOC4xNDY0NSAxMS4xNDY0QzcuOTUxMTggMTEuMzQxNyA3Ljk1MTE4IDExLjY1ODMgOC4xNDY0NSAxMS44NTM2QzguMzQxNzEgMTIuMDQ4OCA4LjY1ODI5IDEyLjA0ODggOC44NTM1NSAxMS44NTM2TDEyLjg1MzYgNy44NTM1NUMxMy4wNDg4IDcuNjU4MjkgMTMuMDQ4OCA3LjM0MTcxIDEyLjg1MzYgNy4xNDY0NUw4Ljg1MzU1IDMuMTQ2NDVDOC42NTgyOSAyLjk1MTE4IDguMzQxNzEgMi45NTExOCA4LjE0NjQ1IDMuMTQ2NDVDNy45NTExOCAzLjM0MTcxIDcuOTUxMTggMy42NTgyOSA4LjE0NjQ1IDMuODUzNTVMMTEuNzkyOSA3LjVMOC4xNDY0NSAxMS4xNDY0WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMU8gPSBbXCJjb2xvclwiXTtcbnZhciBEb3VibGVBcnJvd1VwSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxTyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTExLjE0NjQgNi44NTM1NUMxMS4zNDE3IDcuMDQ4ODIgMTEuNjU4MyA3LjA0ODgyIDExLjg1MzYgNi44NTM1NUMxMi4wNDg4IDYuNjU4MjkgMTIuMDQ4OCA2LjM0MTcxIDExLjg1MzYgNi4xNDY0NUw3Ljg1MzU1IDIuMTQ2NDVDNy42NTgyOSAxLjk1MTE4IDcuMzQxNzEgMS45NTExOCA3LjE0NjQ1IDIuMTQ2NDVMMy4xNDY0NSA2LjE0NjQ1QzIuOTUxMTggNi4zNDE3MSAyLjk1MTE4IDYuNjU4MjkgMy4xNDY0NSA2Ljg1MzU1QzMuMzQxNzEgNy4wNDg4MiAzLjY1ODI5IDcuMDQ4ODIgMy44NTM1NSA2Ljg1MzU1TDcuNSAzLjIwNzExTDExLjE0NjQgNi44NTM1NVpNMTEuMTQ2NCAxMi44NTM2QzExLjM0MTcgMTMuMDQ4OCAxMS42NTgzIDEzLjA0ODggMTEuODUzNiAxMi44NTM2QzEyLjA0ODggMTIuNjU4MyAxMi4wNDg4IDEyLjM0MTcgMTEuODUzNiAxMi4xNDY0TDcuODUzNTUgOC4xNDY0NUM3LjY1ODI5IDcuOTUxMTggNy4zNDE3MSA3Ljk1MTE4IDcuMTQ2NDUgOC4xNDY0NUwzLjE0NjQ1IDEyLjE0NjRDMi45NTExOCAxMi4zNDE3IDIuOTUxMTggMTIuNjU4MyAzLjE0NjQ1IDEyLjg1MzZDMy4zNDE3MSAxMy4wNDg4IDMuNjU4MjkgMTMuMDQ4OCAzLjg1MzU1IDEyLjg1MzZMNy41IDkuMjA3MTFMMTEuMTQ2NCAxMi44NTM2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMVAgPSBbXCJjb2xvclwiXTtcbnZhciBEb3dubG9hZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMVApO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjUwMDA1IDEuMDQ5OTlDNy43NDg1OCAxLjA0OTk5IDcuOTUwMDUgMS4yNTE0NiA3Ljk1MDA1IDEuNDk5OTlWOC40MTM1OUwxMC4xODE5IDYuMTgxNzlDMTAuMzU3NiA2LjAwNjA1IDEwLjY0MjUgNi4wMDYwNSAxMC44MTgyIDYuMTgxNzlDMTAuOTk0IDYuMzU3NTMgMTAuOTk0IDYuNjQyNDUgMTAuODE4MiA2LjgxODE5TDcuODE4MjUgOS44MTgxOUM3LjY0MjUxIDkuOTkzOTIgNy4zNTc1OSA5Ljk5MzkyIDcuMTgxODUgOS44MTgxOUw0LjE4MTg1IDYuODE4MTlDNC4wMDYxMSA2LjY0MjQ1IDQuMDA2MTEgNi4zNTc1MyA0LjE4MTg1IDYuMTgxNzlDNC4zNTc1OSA2LjAwNjA1IDQuNjQyNTEgNi4wMDYwNSA0LjgxODI1IDYuMTgxNzlMNy4wNTAwNSA4LjQxMzU5VjEuNDk5OTlDNy4wNTAwNSAxLjI1MTQ2IDcuMjUxNTIgMS4wNDk5OSA3LjUwMDA1IDEuMDQ5OTlaTTIuNSAxMEMyLjc3NjE0IDEwIDMgMTAuMjIzOSAzIDEwLjVWMTJDMyAxMi41NTM5IDMuNDQ1NjUgMTMgMy45OTYzNSAxM0gxMS4wMDEyQzExLjU1MjkgMTMgMTIgMTIuNTUyOCAxMiAxMlYxMC41QzEyIDEwLjIyMzkgMTIuMjIzOSAxMCAxMi41IDEwQzEyLjc3NjEgMTAgMTMgMTAuMjIzOSAxMyAxMC41VjEyQzEzIDEzLjEwNDEgMTIuMTA2MiAxNCAxMS4wMDEyIDE0SDMuOTk2MzVDMi44OTAxOSAxNCAyIDEzLjEwMyAyIDEyVjEwLjVDMiAxMC4yMjM5IDIuMjIzODYgMTAgMi41IDEwWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMVEgPSBbXCJjb2xvclwiXTtcbnZhciBEcmFnSGFuZGxlRG90czFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFRKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCI0LjVcIixcbiAgICBjeTogXCIyLjVcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjQuNVwiLFxuICAgIGN5OiBcIjQuNVwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcImNpcmNsZVwiLCB7XG4gICAgY3g6IFwiNC41XCIsXG4gICAgY3k6IFwiNi40OTlcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjQuNVwiLFxuICAgIGN5OiBcIjguNDk5XCIsXG4gICAgcjogXCIuNlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCI0LjVcIixcbiAgICBjeTogXCIxMC40OThcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjQuNVwiLFxuICAgIGN5OiBcIjEyLjQ5OFwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcImNpcmNsZVwiLCB7XG4gICAgY3g6IFwiNi41XCIsXG4gICAgY3k6IFwiMi41XCIsXG4gICAgcjogXCIuNlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCI2LjVcIixcbiAgICBjeTogXCI0LjVcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjYuNVwiLFxuICAgIGN5OiBcIjYuNDk5XCIsXG4gICAgcjogXCIuNlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCI2LjVcIixcbiAgICBjeTogXCI4LjQ5OVwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcImNpcmNsZVwiLCB7XG4gICAgY3g6IFwiNi41XCIsXG4gICAgY3k6IFwiMTAuNDk4XCIsXG4gICAgcjogXCIuNlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCI2LjVcIixcbiAgICBjeTogXCIxMi40OThcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjguNDk5XCIsXG4gICAgY3k6IFwiMi41XCIsXG4gICAgcjogXCIuNlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCI4LjQ5OVwiLFxuICAgIGN5OiBcIjQuNVwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcImNpcmNsZVwiLCB7XG4gICAgY3g6IFwiOC40OTlcIixcbiAgICBjeTogXCI2LjQ5OVwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcImNpcmNsZVwiLCB7XG4gICAgY3g6IFwiOC40OTlcIixcbiAgICBjeTogXCI4LjQ5OVwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcImNpcmNsZVwiLCB7XG4gICAgY3g6IFwiOC40OTlcIixcbiAgICBjeTogXCIxMC40OThcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjguNDk5XCIsXG4gICAgY3k6IFwiMTIuNDk4XCIsXG4gICAgcjogXCIuNlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCIxMC40OTlcIixcbiAgICBjeTogXCIyLjVcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjEwLjQ5OVwiLFxuICAgIGN5OiBcIjQuNVwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcImNpcmNsZVwiLCB7XG4gICAgY3g6IFwiMTAuNDk5XCIsXG4gICAgY3k6IFwiNi40OTlcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjEwLjQ5OVwiLFxuICAgIGN5OiBcIjguNDk5XCIsXG4gICAgcjogXCIuNlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCIxMC40OTlcIixcbiAgICBjeTogXCIxMC40OThcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjEwLjQ5OVwiLFxuICAgIGN5OiBcIjEyLjQ5OFwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxUiA9IFtcImNvbG9yXCJdO1xudmFyIERyYWdIYW5kbGVEb3RzMkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMVIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk01LjUgNC42MjVDNi4xMjEzMiA0LjYyNSA2LjYyNSA0LjEyMTMyIDYuNjI1IDMuNUM2LjYyNSAyLjg3ODY4IDYuMTIxMzIgMi4zNzUgNS41IDIuMzc1QzQuODc4NjggMi4zNzUgNC4zNzUgMi44Nzg2OCA0LjM3NSAzLjVDNC4zNzUgNC4xMjEzMiA0Ljg3ODY4IDQuNjI1IDUuNSA0LjYyNVpNOS41IDQuNjI1QzEwLjEyMTMgNC42MjUgMTAuNjI1IDQuMTIxMzIgMTAuNjI1IDMuNUMxMC42MjUgMi44Nzg2OCAxMC4xMjEzIDIuMzc1IDkuNSAyLjM3NUM4Ljg3ODY4IDIuMzc1IDguMzc1IDIuODc4NjggOC4zNzUgMy41QzguMzc1IDQuMTIxMzIgOC44Nzg2OCA0LjYyNSA5LjUgNC42MjVaTTEwLjYyNSA3LjVDMTAuNjI1IDguMTIxMzIgMTAuMTIxMyA4LjYyNSA5LjUgOC42MjVDOC44Nzg2OCA4LjYyNSA4LjM3NSA4LjEyMTMyIDguMzc1IDcuNUM4LjM3NSA2Ljg3ODY4IDguODc4NjggNi4zNzUgOS41IDYuMzc1QzEwLjEyMTMgNi4zNzUgMTAuNjI1IDYuODc4NjggMTAuNjI1IDcuNVpNNS41IDguNjI1QzYuMTIxMzIgOC42MjUgNi42MjUgOC4xMjEzMiA2LjYyNSA3LjVDNi42MjUgNi44Nzg2OCA2LjEyMTMyIDYuMzc1IDUuNSA2LjM3NUM0Ljg3ODY4IDYuMzc1IDQuMzc1IDYuODc4NjggNC4zNzUgNy41QzQuMzc1IDguMTIxMzIgNC44Nzg2OCA4LjYyNSA1LjUgOC42MjVaTTEwLjYyNSAxMS41QzEwLjYyNSAxMi4xMjEzIDEwLjEyMTMgMTIuNjI1IDkuNSAxMi42MjVDOC44Nzg2OCAxMi42MjUgOC4zNzUgMTIuMTIxMyA4LjM3NSAxMS41QzguMzc1IDEwLjg3ODcgOC44Nzg2OCAxMC4zNzUgOS41IDEwLjM3NUMxMC4xMjEzIDEwLjM3NSAxMC42MjUgMTAuODc4NyAxMC42MjUgMTEuNVpNNS41IDEyLjYyNUM2LjEyMTMyIDEyLjYyNSA2LjYyNSAxMi4xMjEzIDYuNjI1IDExLjVDNi42MjUgMTAuODc4NyA2LjEyMTMyIDEwLjM3NSA1LjUgMTAuMzc1QzQuODc4NjggMTAuMzc1IDQuMzc1IDEwLjg3ODcgNC4zNzUgMTEuNUM0LjM3NSAxMi4xMjEzIDQuODc4NjggMTIuNjI1IDUuNSAxMi42MjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxUyA9IFtcImNvbG9yXCJdO1xudmFyIERyYWdIYW5kbGVIb3Jpem9udGFsSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxUyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuNDk5OTggNC4wOTk5OEMyLjI3OTA2IDQuMDk5OTggMi4wOTk5OCA0LjI3OTA2IDIuMDk5OTggNC40OTk5OEMyLjA5OTk4IDQuNzIwODkgMi4yNzkwNiA0Ljg5OTk4IDIuNDk5OTggNC44OTk5OEgxMi41QzEyLjcyMDkgNC44OTk5OCAxMi45IDQuNzIwODkgMTIuOSA0LjQ5OTk4QzEyLjkgNC4yNzkwNiAxMi43MjA5IDQuMDk5OTggMTIuNSA0LjA5OTk4SDIuNDk5OThaTTIuNDk5OTggNi4wOTk5OEMyLjI3OTA2IDYuMDk5OTggMi4wOTk5OCA2LjI3OTA2IDIuMDk5OTggNi40OTk5OEMyLjA5OTk4IDYuNzIwODkgMi4yNzkwNiA2Ljg5OTk4IDIuNDk5OTggNi44OTk5OEgxMi41QzEyLjcyMDkgNi44OTk5OCAxMi45IDYuNzIwODkgMTIuOSA2LjQ5OTk4QzEyLjkgNi4yNzkwNiAxMi43MjA5IDYuMDk5OTggMTIuNSA2LjA5OTk4SDIuNDk5OThaTTIuMDk5OTggOC40OTk5OEMyLjA5OTk4IDguMjc5MDYgMi4yNzkwNiA4LjA5OTk4IDIuNDk5OTggOC4wOTk5OEgxMi41QzEyLjcyMDkgOC4wOTk5OCAxMi45IDguMjc5MDYgMTIuOSA4LjQ5OTk4QzEyLjkgOC43MjA4OSAxMi43MjA5IDguODk5OTggMTIuNSA4Ljg5OTk4SDIuNDk5OThDMi4yNzkwNiA4Ljg5OTk4IDIuMDk5OTggOC43MjA4OSAyLjA5OTk4IDguNDk5OThaTTIuNDk5OTggMTAuMUMyLjI3OTA2IDEwLjEgMi4wOTk5OCAxMC4yNzkxIDIuMDk5OTggMTAuNUMyLjA5OTk4IDEwLjcyMDkgMi4yNzkwNiAxMC45IDIuNDk5OTggMTAuOUgxMi41QzEyLjcyMDkgMTAuOSAxMi45IDEwLjcyMDkgMTIuOSAxMC41QzEyLjkgMTAuMjc5MSAxMi43MjA5IDEwLjEgMTIuNSAxMC4xSDIuNDk5OThaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxVCA9IFtcImNvbG9yXCJdO1xudmFyIERyYWdIYW5kbGVWZXJ0aWNhbEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMVQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk00LjA5OTk4IDEyLjVDNC4wOTk5OCAxMi43MjA5IDQuMjc5MDYgMTIuOSA0LjQ5OTk4IDEyLjlDNC43MjA4OSAxMi45IDQuODk5OTggMTIuNzIwOSA0Ljg5OTk4IDEyLjVMNC44OTk5OCAyLjUwMDAyQzQuODk5OTggMi4yNzkxMSA0LjcyMDg5IDIuMTAwMDMgNC40OTk5OCAyLjEwMDAzQzQuMjc5MDYgMi4xMDAwMyA0LjA5OTk4IDIuMjc5MTEgNC4wOTk5OCAyLjUwMDAyTDQuMDk5OTggMTIuNVpNNi4wOTk5OCAxMi41QzYuMDk5OTggMTIuNzIwOSA2LjI3OTA2IDEyLjkgNi40OTk5OCAxMi45QzYuNzIwODkgMTIuOSA2Ljg5OTk4IDEyLjcyMDkgNi44OTk5OCAxMi41TDYuODk5OTggMi41MDAwMkM2Ljg5OTk4IDIuMjc5MTEgNi43MjA4OSAyLjEwMDAzIDYuNDk5OTggMi4xMDAwM0M2LjI3OTA2IDIuMTAwMDMgNi4wOTk5OCAyLjI3OTExIDYuMDk5OTggMi41MDAwMkw2LjA5OTk4IDEyLjVaTTguNDk5OTggMTIuOUM4LjI3OTA2IDEyLjkgOC4wOTk5OCAxMi43MjA5IDguMDk5OTggMTIuNUw4LjA5OTk4IDIuNTAwMDJDOC4wOTk5OCAyLjI3OTExIDguMjc5MDYgMi4xMDAwMiA4LjQ5OTk4IDIuMTAwMDJDOC43MjA4OSAyLjEwMDAyIDguODk5OTggMi4yNzkxMSA4Ljg5OTk4IDIuNTAwMDJMOC44OTk5OCAxMi41QzguODk5OTggMTIuNzIwOSA4LjcyMDg5IDEyLjkgOC40OTk5OCAxMi45Wk0xMC4xIDEyLjVDMTAuMSAxMi43MjA5IDEwLjI3OTEgMTIuOSAxMC41IDEyLjlDMTAuNzIwOSAxMi45IDEwLjkgMTIuNzIwOSAxMC45IDEyLjVMMTAuOSAyLjUwMDAyQzEwLjkgMi4yNzkxMSAxMC43MjA5IDIuMTAwMDIgMTAuNSAyLjEwMDAyQzEwLjI3OTEgMi4xMDAwMiAxMC4xIDIuMjc5MTEgMTAuMSAyLjUwMDAyTDEwLjEgMTIuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFVID0gW1wiY29sb3JcIl07XG52YXIgRHJhd2luZ1Bpbkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMVUpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMC4zMjg1IDEuMTM2MDdDMTAuMTMzMiAwLjk0MDgwOSA5LjgxNjYyIDAuOTQwODA4IDkuNjIxMzYgMS4xMzYwN0M5LjQyNjA5IDEuMzMxMzMgOS40MjYwOSAxLjY0NzkyIDkuNjIxMzYgMS44NDMxOEwxMC4yNzQ0IDIuNDk2MTlMNS40MjU2MyA2LjEzMjc0TDQuMzE4MDUgNS4wMjUxNkM0LjEyMjc5IDQuODI5OSAzLjgwNjIxIDQuODI5OSAzLjYxMDk1IDUuMDI1MTZDMy40MTU2OSA1LjIyMDQyIDMuNDE1NjkgNS41MzcgMy42MTA5NSA1LjczMjI2TDUuMDI1MTYgNy4xNDY0OEw2LjA4NTgyIDguMjA3MTRMMi44MTU0NSAxMS40Nzc1QzIuNjIwMTkgMTEuNjcyOCAyLjYyMDE5IDExLjk4OTQgMi44MTU0NSAxMi4xODQ2QzMuMDEwNzIgMTIuMzc5OSAzLjMyNzMgMTIuMzc5OSAzLjUyMjU2IDEyLjE4NDZMNi43OTI5MyA4LjkxNDI1TDcuODUzNTkgOS45NzQ5MUw5LjI2NzggMTEuMzg5MUM5LjQ2MzA2IDExLjU4NDQgOS43Nzk2NSAxMS41ODQ0IDkuOTc0OTEgMTEuMzg5MUMxMC4xNzAyIDExLjE5MzkgMTAuMTcwMiAxMC44NzczIDkuOTc0OTEgMTAuNjgyTDguODY3MzMgOS41NzQ0M0wxMi41MDM5IDQuNzI1N0wxMy4xNTY5IDUuMzc4NzFDMTMuMzUyMiA1LjU3Mzk3IDEzLjY2ODcgNS41NzM5NyAxMy44NjQgNS4zNzg3MUMxNC4wNTkzIDUuMTgzNDUgMTQuMDU5MyA0Ljg2Njg3IDEzLjg2NCA0LjY3MTZMMTIuODAzMyAzLjYxMDk0TDExLjM4OTEgMi4xOTY3M0wxMC4zMjg1IDEuMTM2MDdaTTYuMTM5OTIgNi44NDcwMkwxMC45ODg3IDMuMjEwNDdMMTEuNzg5NiA0LjAxMTQyTDguMTUzMDUgOC44NjAxNUw2LjEzOTkyIDYuODQ3MDJaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxViA9IFtcImNvbG9yXCJdO1xudmFyIERyYXdpbmdQaW5GaWxsZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFWKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOS42MjEyOSAxLjEzNjA3QzkuODE2NTYgMC45NDA4MDggMTAuMTMzMSAwLjk0MDgwOSAxMC4zMjg0IDEuMTM2MDdMMTEuMzg5MSAyLjE5NjczTDEyLjgwMzMgMy42MTA5NEwxMy44NjM5IDQuNjcxNkMxNC4wNTkyIDQuODY2ODcgMTQuMDU5MiA1LjE4MzQ1IDEzLjg2MzkgNS4zNzg3MUMxMy42Njg3IDUuNTczOTcgMTMuMzUyMSA1LjU3Mzk3IDEzLjE1NjggNS4zNzg3MUwxMi41MDM4IDQuNzI1N0w4Ljg2NzI3IDkuNTc0NDNMOS45NzQ4NSAxMC42ODJDMTAuMTcwMSAxMC44NzczIDEwLjE3MDEgMTEuMTkzOSA5Ljk3NDg1IDExLjM4OTFDOS43Nzk1OSAxMS41ODQ0IDkuNDYzIDExLjU4NDQgOS4yNjc3NCAxMS4zODkxTDcuODUzNTMgOS45NzQ5MUw2Ljc5Mjg3IDguOTE0MjVMMy41MjI1IDEyLjE4NDZDMy4zMjcyNCAxMi4zNzk5IDMuMDEwNjUgMTIuMzc5OSAyLjgxNTM5IDEyLjE4NDZDMi42MjAxMyAxMS45ODk0IDIuNjIwMTMgMTEuNjcyOCAyLjgxNTM5IDExLjQ3NzVMNi4wODU3NiA4LjIwNzE0TDUuMDI1MSA3LjE0NjQ4TDMuNjEwODkgNS43MzIyNkMzLjQxNTYzIDUuNTM3IDMuNDE1NjIgNS4yMjA0MiAzLjYxMDg5IDUuMDI1MTZDMy44MDYxNSA0LjgyOTkgNC4xMjI3MyA0LjgyOTkgNC4zMTc5OSA1LjAyNTE2TDUuNDI1NTcgNi4xMzI3NEwxMC4yNzQzIDIuNDk2MTlMOS42MjEyOSAxLjg0MzE4QzkuNDI2MDMgMS42NDc5MiA5LjQyNjAzIDEuMzMxMzMgOS42MjEyOSAxLjEzNjA3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk05LjYyMTI5IDEuMTM2MDdDOS44MTY1NiAwLjk0MDgwOCAxMC4xMzMxIDAuOTQwODA5IDEwLjMyODQgMS4xMzYwN0wxMS4zODkxIDIuMTk2NzNMMTIuODAzMyAzLjYxMDk0TDEzLjg2MzkgNC42NzE2QzE0LjA1OTIgNC44NjY4NyAxNC4wNTkyIDUuMTgzNDUgMTMuODYzOSA1LjM3ODcxQzEzLjY2ODcgNS41NzM5NyAxMy4zNTIxIDUuNTczOTcgMTMuMTU2OCA1LjM3ODcxTDEyLjUwMzggNC43MjU3TDguODY3MjcgOS41NzQ0M0w5Ljk3NDg1IDEwLjY4MkMxMC4xNzAxIDEwLjg3NzMgMTAuMTcwMSAxMS4xOTM5IDkuOTc0ODUgMTEuMzg5MUM5Ljc3OTU5IDExLjU4NDQgOS40NjMgMTEuNTg0NCA5LjI2Nzc0IDExLjM4OTFMNy44NTM1MyA5Ljk3NDkxTDYuNzkyODcgOC45MTQyNUwzLjUyMjUgMTIuMTg0NkMzLjMyNzI0IDEyLjM3OTkgMy4wMTA2NSAxMi4zNzk5IDIuODE1MzkgMTIuMTg0NkMyLjYyMDEzIDExLjk4OTQgMi42MjAxMyAxMS42NzI4IDIuODE1MzkgMTEuNDc3NUw2LjA4NTc2IDguMjA3MTRMNS4wMjUxIDcuMTQ2NDhMMy42MTA4OSA1LjczMjI2QzMuNDE1NjMgNS41MzcgMy40MTU2MiA1LjIyMDQyIDMuNjEwODkgNS4wMjUxNkMzLjgwNjE1IDQuODI5OSA0LjEyMjczIDQuODI5OSA0LjMxNzk5IDUuMDI1MTZMNS40MjU1NyA2LjEzMjc0TDEwLjI3NDMgMi40OTYxOUw5LjYyMTI5IDEuODQzMThDOS40MjYwMyAxLjY0NzkyIDkuNDI2MDMgMS4zMzEzMyA5LjYyMTI5IDEuMTM2MDdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxVyA9IFtcImNvbG9yXCJdO1xudmFyIERyb3Bkb3duTWVudUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMVcpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjQ5OTk5IDMuMDk5OThDNy4yNzkwNyAzLjA5OTk4IDcuMDk5OTkgMy4yNzkwNiA3LjA5OTk5IDMuNDk5OThDNy4wOTk5OSAzLjcyMDg5IDcuMjc5MDcgMy44OTk5OCA3LjQ5OTk5IDMuODk5OThIMTQuNUMxNC43MjA5IDMuODk5OTggMTQuOSAzLjcyMDg5IDE0LjkgMy40OTk5OEMxNC45IDMuMjc5MDYgMTQuNzIwOSAzLjA5OTk4IDE0LjUgMy4wOTk5OEg3LjQ5OTk5Wk03LjQ5OTk4IDUuMUM3LjI3OTA3IDUuMSA3LjA5OTk4IDUuMjc5MDggNy4wOTk5OCA1LjVDNy4wOTk5OCA1LjcyMDkxIDcuMjc5MDcgNS45IDcuNDk5OTggNS45SDE0LjVDMTQuNzIwOSA1LjkgMTQuOSA1LjcyMDkxIDE0LjkgNS41QzE0LjkgNS4yNzkwOCAxNC43MjA5IDUuMSAxNC41IDUuMUg3LjQ5OTk4Wk03LjEgNy41QzcuMSA3LjI3OTA4IDcuMjc5MDkgNy4xIDcuNSA3LjFIMTQuNUMxNC43MjA5IDcuMSAxNC45IDcuMjc5MDggMTQuOSA3LjVDMTQuOSA3LjcyMDkxIDE0LjcyMDkgNy45IDE0LjUgNy45SDcuNUM3LjI3OTA5IDcuOSA3LjEgNy43MjA5MSA3LjEgNy41Wk03LjQ5OTk4IDkuMUM3LjI3OTA3IDkuMSA3LjA5OTk4IDkuMjc5MDggNy4wOTk5OCA5LjVDNy4wOTk5OCA5LjcyMDkxIDcuMjc5MDcgOS45IDcuNDk5OTggOS45SDE0LjVDMTQuNzIwOSA5LjkgMTQuOSA5LjcyMDkxIDE0LjkgOS41QzE0LjkgOS4yNzkwOCAxNC43MjA5IDkuMSAxNC41IDkuMUg3LjQ5OTk4Wk03LjA5OTk4IDExLjVDNy4wOTk5OCAxMS4yNzkxIDcuMjc5MDcgMTEuMSA3LjQ5OTk4IDExLjFIMTQuNUMxNC43MjA5IDExLjEgMTQuOSAxMS4yNzkxIDE0LjkgMTEuNUMxNC45IDExLjcyMDkgMTQuNzIwOSAxMS45IDE0LjUgMTEuOUg3LjQ5OTk4QzcuMjc5MDcgMTEuOSA3LjA5OTk4IDExLjcyMDkgNy4wOTk5OCAxMS41Wk0yLjUgOS4yNTAwM0w1IDYuMDAwMDNIMEwyLjUgOS4yNTAwM1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFYID0gW1wiY29sb3JcIl07XG52YXIgRW50ZXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFYKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC41IDFDNC4yMjM4NiAxIDQgMS4yMjM4NiA0IDEuNUM0IDEuNzc2MTQgNC4yMjM4NiAyIDQuNSAySDEyVjEzSDQuNUM0LjIyMzg2IDEzIDQgMTMuMjIzOSA0IDEzLjVDNCAxMy43NzYxIDQuMjIzODYgMTQgNC41IDE0SDEyQzEyLjU1MjMgMTQgMTMgMTMuNTUyMyAxMyAxM1YyQzEzIDEuNDQ3NzIgMTIuNTUyMyAxIDEyIDFINC41Wk02LjYwMzU1IDQuODk2NDVDNi40MDgyOSA0LjcwMTE4IDYuMDkxNzEgNC43MDExOCA1Ljg5NjQ1IDQuODk2NDVDNS43MDExOCA1LjA5MTcxIDUuNzAxMTggNS40MDgyOSA1Ljg5NjQ1IDUuNjAzNTVMNy4yOTI4OSA3SDAuNUMwLjIyMzg1OCA3IDAgNy4yMjM4NiAwIDcuNUMwIDcuNzc2MTQgMC4yMjM4NTggOCAwLjUgOEg3LjI5Mjg5TDUuODk2NDUgOS4zOTY0NUM1LjcwMTE4IDkuNTkxNzEgNS43MDExOCA5LjkwODI5IDUuODk2NDUgMTAuMTAzNkM2LjA5MTcxIDEwLjI5ODggNi40MDgyOSAxMC4yOTg4IDYuNjAzNTUgMTAuMTAzNkw4Ljg1MzU1IDcuODUzNTVDOS4wNDg4MiA3LjY1ODI5IDkuMDQ4ODIgNy4zNDE3MSA4Ljg1MzU1IDcuMTQ2NDVMNi42MDM1NSA0Ljg5NjQ1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMVkgPSBbXCJjb2xvclwiXTtcbnZhciBFbnRlckZ1bGxTY3JlZW5JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFZKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMiAyLjVDMiAyLjIyMzg2IDIuMjIzODYgMiAyLjUgMkg1LjVDNS43NzYxNCAyIDYgMi4yMjM4NiA2IDIuNUM2IDIuNzc2MTQgNS43NzYxNCAzIDUuNSAzSDNWNS41QzMgNS43NzYxNCAyLjc3NjE0IDYgMi41IDZDMi4yMjM4NiA2IDIgNS43NzYxNCAyIDUuNVYyLjVaTTkgMi41QzkgMi4yMjM4NiA5LjIyMzg2IDIgOS41IDJIMTIuNUMxMi43NzYxIDIgMTMgMi4yMjM4NiAxMyAyLjVWNS41QzEzIDUuNzc2MTQgMTIuNzc2MSA2IDEyLjUgNkMxMi4yMjM5IDYgMTIgNS43NzYxNCAxMiA1LjVWM0g5LjVDOS4yMjM4NiAzIDkgMi43NzYxNCA5IDIuNVpNMi41IDlDMi43NzYxNCA5IDMgOS4yMjM4NiAzIDkuNVYxMkg1LjVDNS43NzYxNCAxMiA2IDEyLjIyMzkgNiAxMi41QzYgMTIuNzc2MSA1Ljc3NjE0IDEzIDUuNSAxM0gyLjVDMi4yMjM4NiAxMyAyIDEyLjc3NjEgMiAxMi41VjkuNUMyIDkuMjIzODYgMi4yMjM4NiA5IDIuNSA5Wk0xMi41IDlDMTIuNzc2MSA5IDEzIDkuMjIzODYgMTMgOS41VjEyLjVDMTMgMTIuNzc2MSAxMi43NzYxIDEzIDEyLjUgMTNIOS41QzkuMjIzODYgMTMgOSAxMi43NzYxIDkgMTIuNUM5IDEyLjIyMzkgOS4yMjM4NiAxMiA5LjUgMTJIMTJWOS41QzEyIDkuMjIzODYgMTIuMjIzOSA5IDEyLjUgOVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFaID0gW1wiY29sb3JcIl07XG52YXIgRW52ZWxvcGVDbG9zZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFaKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMSAyQzAuNDQ3NzE1IDIgMCAyLjQ0NzcyIDAgM1YxMkMwIDEyLjU1MjMgMC40NDc3MTUgMTMgMSAxM0gxNEMxNC41NTIzIDEzIDE1IDEyLjU1MjMgMTUgMTJWM0MxNSAyLjQ0NzcyIDE0LjU1MjMgMiAxNCAySDFaTTEgM0wxNCAzVjMuOTI0OTRDMTMuOTE3NCAzLjkyNDg2IDEzLjgzMzggMy45NDc1MSAxMy43NTg5IDMuOTk1MDVMNy41IDcuOTY3MDNMMS4yNDExMiAzLjk5NTA1QzEuMTY2MjEgMy45NDc1MSAxLjA4MjYgMy45MjQ4NiAxIDMuOTI0OTRWM1pNMSA0LjkwNzk3VjEySDE0VjQuOTA3OTdMNy43NDExMiA4Ljg3OTk1QzcuNTkzOTQgOC45NzMzNSA3LjQwNjA2IDguOTczMzUgNy4yNTg4OCA4Ljg3OTk1TDEgNC45MDc5N1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFfID0gW1wiY29sb3JcIl07XG52YXIgRW52ZWxvcGVPcGVuSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxXyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuOTQ3MjEgMC4xNjQ1OTRDNy42NjU2OSAwLjAyMzgyOTkgNy4zMzQzMSAwLjAyMzgzMDIgNy4wNTI3OSAwLjE2NDU5NEwwLjU1Mjc4NiAzLjQxNDU5QzAuMjE0MDAyIDMuNTgzOTkgMCAzLjkzMDI1IDAgNC4zMDkwMlYxMkMwIDEyLjU1MjMgMC40NDc3MTUgMTMgMSAxM0gxNEMxNC41NTIzIDEzIDE1IDEyLjU1MjMgMTUgMTJWNC4zMDkwMkMxNSAzLjkzMDI1IDE0Ljc4NiAzLjU4Mzk5IDE0LjQ0NzIgMy40MTQ1OUw3Ljk0NzIxIDAuMTY0NTk0Wk0xMy41Njg5IDQuMDkzNDlMNy41IDEuMDU5MDJMMS40MzEwNSA0LjA5MzQ5TDcuNSA3LjI5MTM2TDEzLjU2ODkgNC4wOTM0OVpNMSA0Ljg4MzY2VjEySDE0VjQuODgzNjZMNy43MDk3NyA4LjE5ODEzQzcuNTc4NDggOC4yNjczMSA3LjQyMTUyIDguMjY3MzEgNy4yOTAyMyA4LjE5ODEzTDEgNC44ODM2NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDEkID0gW1wiY29sb3JcIl07XG52YXIgRXJhc2VySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxJCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTguMzYwNTIgMC43MjkyMUM4LjU1NTc4IDAuNTMzOTQ4IDguODcyMzYgMC41MzM5NDggOS4wNjc2MyAwLjcyOTIxTDE0LjI3MDggNS45MzIzNUMxNC40NjYgNi4xMjc2MSAxNC40NjYgNi40NDQyIDE0LjI3MDggNi42Mzk0Nkw4Ljk1NTEzIDExLjk1NTFMNy4zNDY2IDEzLjU2MzZDNi43NjA4MSAxNC4xNDk0IDUuODExMDYgMTQuMTQ5NCA1LjIyNTI4IDEzLjU2MzZMMS40MzYzNSA5Ljc3NDdDMC44NTA1NjMgOS4xODg5MSAwLjg1MDU2MyA4LjIzOTE3IDEuNDM2MzUgNy42NTMzOEwzLjA0NDg4IDYuMDQ0ODVMOC4zNjA1MiAwLjcyOTIxWk04LjcxNDA3IDEuNzg5ODdMNC4xMDU1NCA2LjM5ODRMOC42MDE1NyAxMC44OTQ0TDEzLjIxMDEgNi4yODU5MUw4LjcxNDA3IDEuNzg5ODdaTTcuODk0NDcgMTEuNjAxNUwzLjM5ODQzIDcuMTA1NTFMMi4xNDM0NiA4LjM2MDQ5QzEuOTQ4MTkgOC41NTU3NSAxLjk0ODE5IDguODcyMzMgMi4xNDM0NiA5LjA2NzU5TDUuOTMyMzggMTIuODU2NUM2LjEyNzY1IDEzLjA1MTggNi40NDQyMyAxMy4wNTE4IDYuNjM5NDkgMTIuODU2NUw3Ljg5NDQ3IDExLjYwMTVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyMCA9IFtcImNvbG9yXCJdO1xudmFyIEV4Y2xhbWF0aW9uVHJpYW5nbGVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDIwKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOC40NDQ5IDAuNjA4NzY1QzguMDE4MyAtMC4xMDcwMTUgNi45ODE3IC0wLjEwNzAxNSA2LjU1NTA5IDAuNjA4NzY2TDAuMTYxMTc4IDExLjMzNjhDLTAuMjc1ODI0IDEyLjA3IDAuMjUyNTAzIDEzIDEuMTA2MDggMTNIMTMuODkzOUMxNC43NDc1IDEzIDE1LjI3NTggMTIuMDcgMTQuODM4OCAxMS4zMzY4TDguNDQ0OSAwLjYwODc2NVpNNy40MTQxIDEuMTIwNzNDNy40NTI4OCAxLjA1NTY2IDcuNTQ3MTIgMS4wNTU2NiA3LjU4NTkgMS4xMjA3M0wxMy45Nzk4IDExLjg0ODhDMTQuMDE5NiAxMS45MTU0IDEzLjk3MTUgMTIgMTMuODkzOSAxMkgxLjEwNjA4QzEuMDI4NDkgMTIgMC45ODA0NTQgMTEuOTE1NCAxLjAyMDE4IDExLjg0ODhMNy40MTQxIDEuMTIwNzNaTTYuODI2OSA0LjQ4NjExQzYuODEyMjEgNC4xMDQyMyA3LjExNzgzIDMuNzg2NjMgNy41IDMuNzg2NjNDNy44ODIxNyAzLjc4NjYzIDguMTg3NzggNC4xMDQyMyA4LjE3MzEgNC40ODYxMkw4LjAxOTIxIDguNDg3MDFDOC4wMDg0OCA4Ljc2NiA3Ljc3OTIgOC45ODY2NCA3LjUgOC45ODY2NEM3LjIyMDggOC45ODY2NCA2Ljk5MTUxIDguNzY2IDYuOTgwNzggOC40ODcwMUw2LjgyNjkgNC40ODYxMVpNOC4yNDk4OSAxMC40NzZDOC4yNDk4OSAxMC44OTAyIDcuOTE0MSAxMS4yMjYgNy40OTk4OSAxMS4yMjZDNy4wODU2NyAxMS4yMjYgNi43NDk4OSAxMC44OTAyIDYuNzQ5ODkgMTAuNDc2QzYuNzQ5ODkgMTAuMDYxOCA3LjA4NTY3IDkuNzI1OTkgNy40OTk4OSA5LjcyNTk5QzcuOTE0MSA5LjcyNTk5IDguMjQ5ODkgMTAuMDYxOCA4LjI0OTg5IDEwLjQ3NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDIxID0gW1wiY29sb3JcIl07XG52YXIgRXhpdEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMjEpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zIDFDMi40NDc3MSAxIDIgMS40NDc3MiAyIDJWMTNDMiAxMy41NTIzIDIuNDQ3NzIgMTQgMyAxNEgxMC41QzEwLjc3NjEgMTQgMTEgMTMuNzc2MSAxMSAxMy41QzExIDEzLjIyMzkgMTAuNzc2MSAxMyAxMC41IDEzSDNWMkwxMC41IDJDMTAuNzc2MSAyIDExIDEuNzc2MTQgMTEgMS41QzExIDEuMjIzODYgMTAuNzc2MSAxIDEwLjUgMUgzWk0xMi42MDM2IDQuODk2NDVDMTIuNDA4MyA0LjcwMTE4IDEyLjA5MTcgNC43MDExOCAxMS44OTY0IDQuODk2NDVDMTEuNzAxMiA1LjA5MTcxIDExLjcwMTIgNS40MDgyOSAxMS44OTY0IDUuNjAzNTVMMTMuMjkyOSA3SDYuNUM2LjIyMzg2IDcgNiA3LjIyMzg2IDYgNy41QzYgNy43NzYxNCA2LjIyMzg2IDggNi41IDhIMTMuMjkyOUwxMS44OTY0IDkuMzk2NDVDMTEuNzAxMiA5LjU5MTcxIDExLjcwMTIgOS45MDgyOSAxMS44OTY0IDEwLjEwMzZDMTIuMDkxNyAxMC4yOTg4IDEyLjQwODMgMTAuMjk4OCAxMi42MDM2IDEwLjEwMzZMMTQuODUzNiA3Ljg1MzU1QzE1LjA0ODggNy42NTgyOSAxNS4wNDg4IDcuMzQxNzEgMTQuODUzNiA3LjE0NjQ1TDEyLjYwMzYgNC44OTY0NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDIyID0gW1wiY29sb3JcIl07XG52YXIgRXhpdEZ1bGxTY3JlZW5JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDIyKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNS41IDJDNS43NzYxNCAyIDYgMi4yMjM4NiA2IDIuNVY1LjVDNiA1Ljc3NjE0IDUuNzc2MTQgNiA1LjUgNkgyLjVDMi4yMjM4NiA2IDIgNS43NzYxNCAyIDUuNUMyIDUuMjIzODYgMi4yMjM4NiA1IDIuNSA1SDVWMi41QzUgMi4yMjM4NiA1LjIyMzg2IDIgNS41IDJaTTkuNSAyQzkuNzc2MTQgMiAxMCAyLjIyMzg2IDEwIDIuNVY1SDEyLjVDMTIuNzc2MSA1IDEzIDUuMjIzODYgMTMgNS41QzEzIDUuNzc2MTQgMTIuNzc2MSA2IDEyLjUgNkg5LjVDOS4yMjM4NiA2IDkgNS43NzYxNCA5IDUuNVYyLjVDOSAyLjIyMzg2IDkuMjIzODYgMiA5LjUgMlpNMiA5LjVDMiA5LjIyMzg2IDIuMjIzODYgOSAyLjUgOUg1LjVDNS43NzYxNCA5IDYgOS4yMjM4NiA2IDkuNVYxMi41QzYgMTIuNzc2MSA1Ljc3NjE0IDEzIDUuNSAxM0M1LjIyMzg2IDEzIDUgMTIuNzc2MSA1IDEyLjVWMTBIMi41QzIuMjIzODYgMTAgMiA5Ljc3NjE0IDIgOS41Wk05IDkuNUM5IDkuMjIzODYgOS4yMjM4NiA5IDkuNSA5SDEyLjVDMTIuNzc2MSA5IDEzIDkuMjIzODYgMTMgOS41QzEzIDkuNzc2MTQgMTIuNzc2MSAxMCAxMi41IDEwSDEwVjEyLjVDMTAgMTIuNzc2MSA5Ljc3NjE0IDEzIDkuNSAxM0M5LjIyMzg2IDEzIDkgMTIuNzc2MSA5IDEyLjVWOS41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMjMgPSBbXCJjb2xvclwiXTtcbnZhciBFeHRlcm5hbExpbmtJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDIzKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMyAyQzIuNDQ3NzIgMiAyIDIuNDQ3NzIgMiAzVjEyQzIgMTIuNTUyMyAyLjQ0NzcyIDEzIDMgMTNIMTJDMTIuNTUyMyAxMyAxMyAxMi41NTIzIDEzIDEyVjguNUMxMyA4LjIyMzg2IDEyLjc3NjEgOCAxMi41IDhDMTIuMjIzOSA4IDEyIDguMjIzODYgMTIgOC41VjEySDNWM0w2LjUgM0M2Ljc3NjE0IDMgNyAyLjc3NjE0IDcgMi41QzcgMi4yMjM4NiA2Ljc3NjE0IDIgNi41IDJIM1pNMTIuODUzNiAyLjE0NjQ1QzEyLjkwMTUgMi4xOTQzOSAxMi45Mzc3IDIuMjQ5NjQgMTIuOTYyMSAyLjMwODYxQzEyLjk4NjEgMi4zNjY2OSAxMi45OTk2IDIuNDMwMyAxMyAyLjQ5N0wxMyAyLjVWMi41MDA0OVY1LjVDMTMgNS43NzYxNCAxMi43NzYxIDYgMTIuNSA2QzEyLjIyMzkgNiAxMiA1Ljc3NjE0IDEyIDUuNVYzLjcwNzExTDYuODUzNTUgOC44NTM1NUM2LjY1ODI5IDkuMDQ4ODIgNi4zNDE3MSA5LjA0ODgyIDYuMTQ2NDUgOC44NTM1NUM1Ljk1MTE4IDguNjU4MjkgNS45NTExOCA4LjM0MTcxIDYuMTQ2NDUgOC4xNDY0NUwxMS4yOTI5IDNIOS41QzkuMjIzODYgMyA5IDIuNzc2MTQgOSAyLjVDOSAyLjIyMzg2IDkuMjIzODYgMiA5LjUgMkgxMi40OTk5SDEyLjVDMTIuNTY3OCAyIDEyLjYzMjQgMi4wMTM0OSAxMi42OTE0IDIuMDM3OTRDMTIuNzUwNCAyLjA2MjM0IDEyLjgwNTYgMi4wOTg1MSAxMi44NTM2IDIuMTQ2NDVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyNCA9IFtcImNvbG9yXCJdO1xudmFyIEV5ZUNsb3NlZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMjQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xNC43NjQ5IDYuMDc1OTZDMTQuOTk5MSA2LjIyMjMxIDE1LjA3MDMgNi41MzA3OSAxNC45MjM5IDYuNzY0OTVDMTQuNDg0OSA3LjQ2NzQzIDEzLjk2MzIgOC4xMDY0NSAxMy4zNzAyIDguNjYzMDVMMTQuNTcxMiA5Ljg2NDA2QzE0Ljc2NjQgMTAuMDU5MyAxNC43NjY0IDEwLjM3NTkgMTQuNTcxMiAxMC41NzEyQzE0LjM3NTkgMTAuNzY2NCAxNC4wNTkzIDEwLjc2NjQgMTMuODY0MSAxMC41NzEyTDEyLjYwMTEgOS4zMDgxN0MxMS44MDUgOS45MDI4MyAxMC45MDg5IDEwLjM2MjEgOS45MzM3NSAxMC42NTFMMTAuMzgzIDEyLjMyNzdDMTAuNDU0NCAxMi41OTQ0IDEwLjI5NjEgMTIuODY4NSAxMC4wMjk0IDEyLjk0QzkuNzYyNjcgMTMuMDExNSA5LjQ4ODUgMTIuODUzMiA5LjQxNzA0IDEyLjU4NjVMOC45NTkxNyAxMC44Nzc1QzguNDg3NDMgMTAuOTU4IDguMDAwMzYgMTAuOTk5OSA3LjUwMDAxIDEwLjk5OTlDNi45OTk2NSAxMC45OTk5IDYuNTEyNTcgMTAuOTU4IDYuMDQwODIgMTAuODc3NUw1LjU4Mjk5IDEyLjU4NjRDNS41MTE1MyAxMi44NTMyIDUuMjM3MzcgMTMuMDExNSA0Ljk3MDY0IDEyLjk0QzQuNzAzOSAxMi44Njg2IDQuNTQ1NiAxMi41OTQ0IDQuNjE3MDYgMTIuMzI3N0w1LjA2NjI1IDEwLjY1MUM0LjA5MTExIDEwLjM2MjEgMy4xOTUwMyA5LjkwMjgyIDIuMzk4OSA5LjMwODE1TDEuMTM1OSAxMC41NzEyQzAuOTQwNjM4IDEwLjc2NjQgMC42MjQwNTggMTAuNzY2NCAwLjQyODc5OCAxMC41NzEyQzAuMjMzNTM3IDEwLjM3NTkgMC4yMzM1MzcgMTAuMDU5MyAwLjQyODc5OCA5Ljg2NDA1TDEuNjI5ODIgOC42NjMwM0MxLjAzNjgyIDguMTA2NDMgMC41MTUxMTMgNy40Njc0MiAwLjA3NjA2NzcgNi43NjQ5NUMtMC4wNzAyODY3IDYuNTMwNzkgMC4wMDA4OTg1NDQgNi4yMjIzMSAwLjIzNTA2NSA2LjA3NTk2QzAuNDY5MjMxIDUuOTI5NiAwLjc3NzcwMyA2LjAwMDc5IDAuOTI0MDU4IDYuMjM0OTZDMS40MDM1NCA3LjAwMjEzIDEuOTg5IDcuNjgwNTcgMi42NjIzMyA4LjI0MjdDMi42NzMxNSA4LjI1MDk2IDIuNjgzNyA4LjI1OTcyIDIuNjkzOTcgOC4yNjg5OEM0LjAwODk3IDkuMzU1MjcgNS42NTUzNyA5Ljk5OTkxIDcuNTAwMDEgOS45OTk5MUMxMC4zMDc4IDkuOTk5OTEgMTIuNjU2NCA4LjUwNjMgMTQuMDc2IDYuMjM0OTVDMTQuMjIyMyA2LjAwMDc5IDE0LjUzMDggNS45Mjk2IDE0Ljc2NDkgNi4wNzU5NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDI1ID0gW1wiY29sb3JcIl07XG52YXIgRXllTm9uZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMjUpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMy4zNTM2IDIuMzUzNTVDMTMuNTQ4OCAyLjE1ODI5IDEzLjU0ODggMS44NDE3MSAxMy4zNTM2IDEuNjQ2NDVDMTMuMTU4MyAxLjQ1MTE4IDEyLjg0MTcgMS40NTExOCAxMi42NDY0IDEuNjQ2NDVMMTAuNjgyOCAzLjYxMDEyQzkuNzA2NTIgMy4yMTY3MSA4LjYzNzU5IDMgNy41IDNDNC4zMDc4NiAzIDEuNjU2MzkgNC43MDYzOCAwLjA3NjAwMDIgNy4yMzUwMUMtMC4wMjUzMzM4IDcuMzk3MTUgLTAuMDI1MzMzNCA3LjYwMjg4IDAuMDc2MDAxNCA3Ljc2NTAxQzAuOTAyOTQ1IDkuMDg4MTIgMi4wMjMxNCAxMC4xODYxIDMuMzYwNjEgMTAuOTMyM0wxLjY0NjQ1IDEyLjY0NjRDMS40NTExOCAxMi44NDE3IDEuNDUxMTggMTMuMTU4MyAxLjY0NjQ1IDEzLjM1MzZDMS44NDE3MSAxMy41NDg4IDIuMTU4MjkgMTMuNTQ4OCAyLjM1MzU1IDEzLjM1MzZMNC4zMTcyMyAxMS4zODk5QzUuMjkzNDggMTEuNzgzMyA2LjM2MjQxIDEyIDcuNSAxMkMxMC42OTIxIDEyIDEzLjM0MzYgMTAuMjkzNiAxNC45MjQgNy43NjUwMUMxNS4wMjUzIDcuNjAyODggMTUuMDI1MyA3LjM5NzE1IDE0LjkyNCA3LjIzNTAxQzE0LjA5NzEgNS45MTE5IDEyLjk3NjkgNC44MTM5MSAxMS42Mzk0IDQuMDY3NzFMMTMuMzUzNiAyLjM1MzU1Wk05LjkwNDI4IDQuMzg4NjFDOS4xNTMzMiA0LjEzNjEgOC4zNDc1OSA0IDcuNSA0QzQuODAyODUgNCAyLjUyOTUyIDUuMzc4MTYgMS4wOTYyMiA3LjUwMDAxQzEuODcyODQgOC42NDk3IDIuODk2MDkgOS41ODEwNiA0LjA5OTc0IDEwLjE5MzFMOS45MDQyOCA0LjM4ODYxWk01LjA5NTcyIDEwLjYxMTRMMTAuOTAwMyA0LjgwNjg1QzEyLjEwMzkgNS40MTg5NCAxMy4xMjcyIDYuMzUwMzEgMTMuOTAzOCA3LjUwMDAxQzEyLjQ3MDUgOS42MjE4MyAxMC4xOTcxIDExIDcuNSAxMUM2LjY1MjQxIDExIDUuODQ2NjggMTAuODYzOSA1LjA5NTcyIDEwLjYxMTRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyNiA9IFtcImNvbG9yXCJdO1xudmFyIEV5ZU9wZW5JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDI2KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy41IDExQzQuODAyODUgMTEgMi41Mjk1MiA5LjYyMTg0IDEuMDk2MjIgNy41MDAwMUMyLjUyOTUyIDUuMzc4MTYgNC44MDI4NSA0IDcuNSA0QzEwLjE5NzEgNCAxMi40NzA1IDUuMzc4MTYgMTMuOTAzOCA3LjUwMDAxQzEyLjQ3MDUgOS42MjE4MyAxMC4xOTcxIDExIDcuNSAxMVpNNy41IDNDNC4zMDc4NiAzIDEuNjU2MzkgNC43MDYzOCAwLjA3NjAwMDIgNy4yMzUwMUMtMC4wMjUzMzM4IDcuMzk3MTUgLTAuMDI1MzMzNCA3LjYwMjg4IDAuMDc2MDAxNCA3Ljc2NTAxQzEuNjU2MzkgMTAuMjkzNiA0LjMwNzg2IDEyIDcuNSAxMkMxMC42OTIxIDEyIDEzLjM0MzYgMTAuMjkzNiAxNC45MjQgNy43NjUwMUMxNS4wMjUzIDcuNjAyODggMTUuMDI1MyA3LjM5NzE1IDE0LjkyNCA3LjIzNTAxQzEzLjM0MzYgNC43MDYzOCAxMC42OTIxIDMgNy41IDNaTTcuNSA5LjVDOC42MDQ1NyA5LjUgOS41IDguNjA0NTcgOS41IDcuNUM5LjUgNi4zOTU0MyA4LjYwNDU3IDUuNSA3LjUgNS41QzYuMzk1NDMgNS41IDUuNSA2LjM5NTQzIDUuNSA3LjVDNS41IDguNjA0NTcgNi4zOTU0MyA5LjUgNy41IDkuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDI3ID0gW1wiY29sb3JcIl07XG52YXIgRmFjZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMjcpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjQ5OTkxIDAuODc2ODkyQzMuODQyMjIgMC44NzY4OTIgMC44NzcwNzUgMy44NDIwNCAwLjg3NzA3NSA3LjQ5OTcyQzAuODc3MDc1IDExLjE1NzQgMy44NDIyMiAxNC4xMjI2IDcuNDk5OTEgMTQuMTIyNkMxMS4xNTc2IDE0LjEyMjYgMTQuMTIyNyAxMS4xNTc0IDE0LjEyMjcgNy40OTk3MkMxNC4xMjI3IDMuODQyMDQgMTEuMTU3NiAwLjg3Njg5MiA3LjQ5OTkxIDAuODc2ODkyWk0xLjgyNzA4IDcuNDk5NzJDMS44MjcwOCA0LjM2NjcxIDQuMzY2ODkgMS44MjY4OSA3LjQ5OTkxIDEuODI2ODlDMTAuNjMyOSAxLjgyNjg5IDEzLjE3MjcgNC4zNjY3MSAxMy4xNzI3IDcuNDk5NzJDMTMuMTcyNyAxMC42MzI3IDEwLjYzMjkgMTMuMTcyNiA3LjQ5OTkxIDEzLjE3MjZDNC4zNjY4OSAxMy4xNzI2IDEuODI3MDggMTAuNjMyNyAxLjgyNzA4IDcuNDk5NzJaTTUuMDM3NDcgOS4yMTM5NUM0Ljg3OTQ5IDguOTg3NDYgNC41Njc4MiA4LjkzMTkzIDQuMzQxMzMgOS4wODk5MUM0LjExNDg0IDkuMjQ3ODkgNC4wNTkzMSA5LjU1OTU2IDQuMjE3MjkgOS43ODYwNUM0LjkzOTI2IDEwLjgyMTEgNi4xNDAzMyAxMS41IDcuNTAwMDQgMTEuNUM4Ljg1OTc0IDExLjUgMTAuMDYwOCAxMC44MjExIDEwLjc4MjggOS43ODYwNUMxMC45NDA4IDkuNTU5NTYgMTAuODg1MiA5LjI0Nzg5IDEwLjY1ODcgOS4wODk5MUMxMC40MzIzIDguOTMxOTMgMTAuMTIwNiA4Ljk4NzQ2IDkuOTYyNiA5LjIxMzk1QzkuNDE5NjMgOS45OTIzOCA4LjUxOTA3IDEwLjUgNy41MDAwNCAxMC41QzYuNDgxIDEwLjUgNS41ODA0NCA5Ljk5MjM4IDUuMDM3NDcgOS4yMTM5NVpNNS4zNzUwMyA2Ljg0OTk4QzUuODU4MjggNi44NDk5OCA2LjI1MDAzIDYuNDU4MTUgNi4yNTAwMyA1Ljk3NDk4QzYuMjUwMDMgNS40OTE4IDUuODU4MjggNS4wOTk5OCA1LjM3NTAzIDUuMDk5OThDNC44OTE3OSA1LjA5OTk4IDQuNTAwMDMgNS40OTE4IDQuNTAwMDMgNS45NzQ5OEM0LjUwMDAzIDYuNDU4MTUgNC44OTE3OSA2Ljg0OTk4IDUuMzc1MDMgNi44NDk5OFpNMTAuNSA1Ljk3NDk4QzEwLjUgNi40NTgxNSAxMC4xMDgzIDYuODQ5OTggOS42MjUwMyA2Ljg0OTk4QzkuMTQxNzkgNi44NDk5OCA4Ljc1MDAzIDYuNDU4MTUgOC43NTAwMyA1Ljk3NDk4QzguNzUwMDMgNS40OTE4IDkuMTQxNzkgNS4wOTk5OCA5LjYyNTAzIDUuMDk5OThDMTAuMTA4MyA1LjA5OTk4IDEwLjUgNS40OTE4IDEwLjUgNS45NzQ5OFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDI4ID0gW1wiY29sb3JcIl07XG52YXIgRmlnbWFMb2dvSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyOCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuMDAwMDUgMi4wNDk5OUg1LjUyNTA1QzQuNzEwNDMgMi4wNDk5OSA0LjA1MDA1IDIuNzEwMzcgNC4wNTAwNSAzLjUyNDk5QzQuMDUwMDUgNC4zMzk2MSA0LjcxMDQzIDQuOTk5OTkgNS41MjUwNSA0Ljk5OTk5SDcuMDAwMDVWMi4wNDk5OVpNNy4wMDAwNSAxLjA0OTk5SDguMDAwMDVIOS40NzUwNUMxMC44NDIgMS4wNDk5OSAxMS45NSAyLjE1ODA4IDExLjk1IDMuNTI0OTlDMTEuOTUgNC4zMzE2MyAxMS41NjQyIDUuMDQ4MTUgMTAuOTY2OSA1LjQ5OTk5QzExLjU2NDIgNS45NTE4NCAxMS45NSA2LjY2ODM2IDExLjk1IDcuNDc1QzExLjk1IDguODQxOSAxMC44NDIgOS45NSA5LjQ3NTA1IDkuOTVDOC45MjIzNiA5Ljk1IDguNDExOTggOS43Njg4NCA4LjAwMDA1IDkuNDYyNjZWOS45NUw4LjAwMDA1IDExLjQyNUM4LjAwMDA1IDEyLjc5MTkgNi44OTE5NSAxMy45IDUuNTI1MDUgMTMuOUM0LjE1ODE0IDEzLjkgMy4wNTAwNSAxMi43OTE5IDMuMDUwMDUgMTEuNDI1QzMuMDUwMDUgMTAuNjE4MyAzLjQzNTkzIDkuOTAxODQgNC4wMzMxNyA5LjQ0OTk5QzMuNDM1OTMgOC45OTgxNCAzLjA1MDA1IDguMjgxNjMgMy4wNTAwNSA3LjQ3NUMzLjA1MDA1IDYuNjY4MzYgMy40MzU5NCA1Ljk1MTg0IDQuMDMzMTkgNS41QzMuNDM1OTQgNS4wNDgxNSAzLjA1MDA1IDQuMzMxNjMgMy4wNTAwNSAzLjUyNDk5QzMuMDUwMDUgMi4xNTgwOCA0LjE1ODE0IDEuMDQ5OTkgNS41MjUwNSAxLjA0OTk5SDcuMDAwMDVaTTguMDAwMDUgMi4wNDk5OVY0Ljk5OTk5SDkuNDc1MDVDMTAuMjg5NyA0Ljk5OTk5IDEwLjk1IDQuMzM5NjEgMTAuOTUgMy41MjQ5OUMxMC45NSAyLjcxMDM3IDEwLjI4OTcgMi4wNDk5OSA5LjQ3NTA1IDIuMDQ5OTlIOC4wMDAwNVpNNS41MjUwNSA4Ljk0OTk4SDcuMDAwMDVMNy4wMDAwNSA3LjQ3ODhMNy4wMDAwNSA3LjQ3NUw3LjAwMDA1IDcuNDcxMlY2SDUuNTI1MDVDNC43MTA0MyA2IDQuMDUwMDUgNi42NjAzOCA0LjA1MDA1IDcuNDc1QzQuMDUwMDUgOC4yODc2NyA0LjcwNzI3IDguOTQ2ODQgNS41MTkyIDguOTQ5OTlMNS41MjUwNSA4Ljk0OTk4Wk00LjA1MDA1IDExLjQyNUM0LjA1MDA1IDEwLjYxMjMgNC43MDcyNyA5Ljk1MzE1IDUuNTE5MiA5Ljk0OTk5TDUuNTI1MDUgOS45NUg3LjAwMDA1TDcuMDAwMDUgMTEuNDI1QzcuMDAwMDUgMTIuMjM5NiA2LjMzOTY3IDEyLjkgNS41MjUwNSAxMi45QzQuNzEwNDMgMTIuOSA0LjA1MDA1IDEyLjIzOTYgNC4wNTAwNSAxMS40MjVaTTguMDAwMDUgNy40NzIwNkM4LjAwMTY0IDYuNjU4NzkgOC42NjE0MSA2IDkuNDc1MDUgNkMxMC4yODk3IDYgMTAuOTUgNi42NjAzOCAxMC45NSA3LjQ3NUMxMC45NSA4LjI4OTYyIDEwLjI4OTcgOC45NSA5LjQ3NTA1IDguOTVDOC42NjE0MSA4Ljk1IDguMDAxNjQgOC4yOTEyMSA4LjAwMDA1IDcuNDc3OTRWNy40NzIwNlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDI5ID0gW1wiY29sb3JcIl07XG52YXIgRmlsZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMjkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zLjUgMkMzLjIyMzg2IDIgMyAyLjIyMzg2IDMgMi41VjEyLjVDMyAxMi43NzYxIDMuMjIzODYgMTMgMy41IDEzSDExLjVDMTEuNzc2MSAxMyAxMiAxMi43NzYxIDEyIDEyLjVWNkg4LjVDOC4yMjM4NiA2IDggNS43NzYxNCA4IDUuNVYySDMuNVpNOSAyLjcwNzExTDExLjI5MjkgNUg5VjIuNzA3MTFaTTIgMi41QzIgMS42NzE1NyAyLjY3MTU3IDEgMy41IDFIOC41QzguNjMyNjEgMSA4Ljc1OTc5IDEuMDUyNjggOC44NTM1NSAxLjE0NjQ1TDEyLjg1MzYgNS4xNDY0NUMxMi45NDczIDUuMjQwMjEgMTMgNS4zNjczOSAxMyA1LjVWMTIuNUMxMyAxMy4zMjg0IDEyLjMyODQgMTQgMTEuNSAxNEgzLjVDMi42NzE1NyAxNCAyIDEzLjMyODQgMiAxMi41VjIuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJhID0gW1wiY29sb3JcIl07XG52YXIgRmlsZU1pbnVzSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyYSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMgMi41QzMgMi4yMjM4NiAzLjIyMzg2IDIgMy41IDJIOS4yOTI4OUwxMiA0LjcwNzExVjEyLjVDMTIgMTIuNzc2MSAxMS43NzYxIDEzIDExLjUgMTNIMy41QzMuMjIzODYgMTMgMyAxMi43NzYxIDMgMTIuNVYyLjVaTTMuNSAxQzIuNjcxNTcgMSAyIDEuNjcxNTcgMiAyLjVWMTIuNUMyIDEzLjMyODQgMi42NzE1NyAxNCAzLjUgMTRIMTEuNUMxMi4zMjg0IDE0IDEzIDEzLjMyODQgMTMgMTIuNVY0LjYwMzU1QzEzIDQuNDA0NjQgMTIuOTIxIDQuMjEzODggMTIuNzgwMyA0LjA3MzIyTDkuODUzNTUgMS4xNDY0NUM5Ljc1OTc5IDEuMDUyNjggOS42MzI2MSAxIDkuNSAxSDMuNVpNNS4yNSA3QzQuOTczODYgNyA0Ljc1IDcuMjIzODYgNC43NSA3LjVDNC43NSA3Ljc3NjE0IDQuOTczODYgOCA1LjI1IDhIOS43NUMxMC4wMjYxIDggMTAuMjUgNy43NzYxNCAxMC4yNSA3LjVDMTAuMjUgNy4yMjM4NiAxMC4wMjYxIDcgOS43NSA3SDUuMjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyYiA9IFtcImNvbG9yXCJdO1xudmFyIEZpbGVQbHVzSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyYik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMuNSAyQzMuMjIzODYgMiAzIDIuMjIzODYgMyAyLjVWMTIuNUMzIDEyLjc3NjEgMy4yMjM4NiAxMyAzLjUgMTNIMTEuNUMxMS43NzYxIDEzIDEyIDEyLjc3NjEgMTIgMTIuNVY0LjcwNzExTDkuMjkyODkgMkgzLjVaTTIgMi41QzIgMS42NzE1NyAyLjY3MTU3IDEgMy41IDFIOS41QzkuNjMyNjEgMSA5Ljc1OTc5IDEuMDUyNjggOS44NTM1NSAxLjE0NjQ1TDEyLjc4MDMgNC4wNzMyMkMxMi45MjEgNC4yMTM4OCAxMyA0LjQwNDY0IDEzIDQuNjAzNTVWMTIuNUMxMyAxMy4zMjg0IDEyLjMyODQgMTQgMTEuNSAxNEgzLjVDMi42NzE1NyAxNCAyIDEzLjMyODQgMiAxMi41VjIuNVpNNC43NSA3LjVDNC43NSA3LjIyMzg2IDQuOTczODYgNyA1LjI1IDdIN1Y1LjI1QzcgNC45NzM4NiA3LjIyMzg2IDQuNzUgNy41IDQuNzVDNy43NzYxNCA0Ljc1IDggNC45NzM4NiA4IDUuMjVWN0g5Ljc1QzEwLjAyNjEgNyAxMC4yNSA3LjIyMzg2IDEwLjI1IDcuNUMxMC4yNSA3Ljc3NjE0IDEwLjAyNjEgOCA5Ljc1IDhIOFY5Ljc1QzggMTAuMDI2MSA3Ljc3NjE0IDEwLjI1IDcuNSAxMC4yNUM3LjIyMzg2IDEwLjI1IDcgMTAuMDI2MSA3IDkuNzVWOEg1LjI1QzQuOTczODYgOCA0Ljc1IDcuNzc2MTQgNC43NSA3LjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyYyA9IFtcImNvbG9yXCJdO1xudmFyIEZpbGVUZXh0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyYyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMgMi41QzMgMi4yMjM4NiAzLjIyMzg2IDIgMy41IDJIOS4wODU3OUM5LjIxODM5IDIgOS4zNDU1NyAyLjA1MjY4IDkuNDM5MzQgMi4xNDY0NUwxMS44NTM2IDQuNTYwNjZDMTEuOTQ3MyA0LjY1NDQzIDEyIDQuNzgxNjEgMTIgNC45MTQyMVYxMi41QzEyIDEyLjc3NjEgMTEuNzc2MSAxMyAxMS41IDEzSDMuNUMzLjIyMzg2IDEzIDMgMTIuNzc2MSAzIDEyLjVWMi41Wk0zLjUgMUMyLjY3MTU3IDEgMiAxLjY3MTU3IDIgMi41VjEyLjVDMiAxMy4zMjg0IDIuNjcxNTcgMTQgMy41IDE0SDExLjVDMTIuMzI4NCAxNCAxMyAxMy4zMjg0IDEzIDEyLjVWNC45MTQyMUMxMyA0LjUxNjM5IDEyLjg0MiA0LjEzNDg2IDEyLjU2MDcgMy44NTM1NUwxMC4xNDY0IDEuNDM5MzRDOS44NjUxNCAxLjE1ODA0IDkuNDgzNjEgMSA5LjA4NTc5IDFIMy41Wk00LjUgNEM0LjIyMzg2IDQgNCA0LjIyMzg2IDQgNC41QzQgNC43NzYxNCA0LjIyMzg2IDUgNC41IDVINy41QzcuNzc2MTQgNSA4IDQuNzc2MTQgOCA0LjVDOCA0LjIyMzg2IDcuNzc2MTQgNCA3LjUgNEg0LjVaTTQuNSA3QzQuMjIzODYgNyA0IDcuMjIzODYgNCA3LjVDNCA3Ljc3NjE0IDQuMjIzODYgOCA0LjUgOEgxMC41QzEwLjc3NjEgOCAxMSA3Ljc3NjE0IDExIDcuNUMxMSA3LjIyMzg2IDEwLjc3NjEgNyAxMC41IDdINC41Wk00LjUgMTBDNC4yMjM4NiAxMCA0IDEwLjIyMzkgNCAxMC41QzQgMTAuNzc2MSA0LjIyMzg2IDExIDQuNSAxMUgxMC41QzEwLjc3NjEgMTEgMTEgMTAuNzc2MSAxMSAxMC41QzExIDEwLjIyMzkgMTAuNzc2MSAxMCAxMC41IDEwSDQuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJkID0gW1wiY29sb3JcIl07XG52YXIgRm9udEJvbGRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJkKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNS4xMDUwNSAxMkM0LjcwODA1IDEyIDQuNDIzNiAxMS45MTIgNC4yNTE3MSAxMS43MzZDNC4wODM5IDExLjU1NTkgNCAxMS4yNzE1IDQgMTAuODgyN1Y0LjExNzMzQzQgMy43MjAzMyA0LjA4NTk1IDMuNDM1ODggNC4yNTc4NCAzLjI2Mzk4QzQuNDMzODMgMy4wODc5OSA0LjcxNjIzIDMgNS4xMDUwNSAzQzYuNDI3NDEgMyA4LjI1NTkxIDMgOS4wMjg1MiAzQzEwLjEzNzMgMyAxMS4wNTM5IDMuOTgxNTMgMTEuMDUzOSA1LjE4NDZDMTEuMDUzOSA2LjA4NTAxIDEwLjYwMzcgNi44MTg1NSA5LjcwMzI3IDcuMjM2MDJDMTAuODY1NyA3LjQ0ODUxIDExLjUxNzYgOC42Mjc4NyAxMS41MTc2IDkuNDgxMjhDMTEuNTE3NiAxMC41MTI1IDEwLjk5MDIgMTIgOS4yNzczNCAxMkM4Ljc3NzQyIDEyIDYuNDI2MjYgMTIgNS4xMDUwNSAxMlpNOC4zNzg5MSA4LjAwMzQxSDUuOFYxMC42MzFIOC4zNzg5MUM4LjkgMTAuNjMxIDkuNjI5NiAxMC4xMjExIDkuNjI5NiA5LjI5ODc3QzkuNjI5NiA4LjQ3NjQzIDguOSA4LjAwMzQxIDguMzc4OTEgOC4wMDM0MVpNNS44IDQuMzY5MDNWNi42OTU3N0g4LjE3OTY5QzguNTM5MDYgNi42OTU3NyA5LjI3NzM0IDYuMzU5MzkgOS4yNzczNCA1LjUwMDAyQzkuMjc3MzQgNC42NDA2NCA4LjQ4MDQ3IDQuMzY5MDMgOC4xNzk2OSA0LjM2OTAzSDUuOFpcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyZSA9IFtcImNvbG9yXCJdO1xudmFyIEZvbnRGYW1pbHlJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJlKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMi41IDQuNUMyLjUgMy4wOTg4NiAzLjU5ODg2IDIgNSAySDEyLjQ5OUMxMi43NzUyIDIgMTMgMi4yMjM4NiAxMyAyLjVDMTMgMi43NzYxNCAxMi43NzYxIDMgMTIuNSAzSDguNjkyNDRMOC40MDUwOSAzLjg1NDU4QzguMTg4NjkgNC40OTc1MiA3Ljg5NDAxIDUuMzcxOTcgNy41ODA5MSA2LjI5Nzk0QzcuNTAyNTkgNi41Mjk1NiA3LjQyMzA4IDYuNzY0NTMgNy4zNDMzMiA3SDguNUM4Ljc3NjE0IDcgOSA3LjIyMzg2IDkgNy41QzkgNy43NzYxNCA4Ljc3NjE0IDggOC41IDhINy4wMDQwN0M2LjU2NzI0IDkuMjg1NDMgNi4xNjQzNSAxMC40NjEzIDUuOTU3OTkgMTEuMDM4NkM1LjYzNjI3IDExLjkzODYgNS4yMDcxMiAxMi40ODU3IDQuNjY3NDEgMTIuNzc3OEM0LjE2MzM1IDEzLjA1MDcgMy42NDE1NCAxMy4wNTAzIDMuMjgzNzggMTMuMDVMMy4yNSAxMy4wNUMyLjk0NjI0IDEzLjA1IDIuNyAxMi44MDM3IDIuNyAxMi41QzIuNyAxMi4xOTYyIDIuOTQ2MjQgMTEuOTUgMy4yNSAxMS45NUMzLjY0MTgyIDExLjk1IDMuOTAzNSAxMS45NDA1IDQuMTQzNzQgMTEuODEwNUM0LjM2NDQzIDExLjY5MSA0LjY1NTMyIDExLjQxNDggNC45MjIxNyAxMC42NjgzQzUuMTA2OTUgMTAuMTUxNCA1LjQ1Mzc1IDkuMTQxMzQgNS44NDIyIDhINC41QzQuMjIzODYgOCA0IDcuNzc2MTQgNCA3LjVDNCA3LjIyMzg2IDQuMjIzODYgNyA0LjUgN0g2LjE4MTg3QzYuMzAxMjcgNi42NDc4NSA2LjQyMTMyIDYuMjkzMjMgNi41Mzg4NyA1Ljk0NTU5QzYuODUxNzUgNS4wMjAyNSA3LjE0NjI3IDQuMTQ2MzEgNy4zNjI1NiAzLjUwMzY4TDcuNTMxOTIgM0g1QzQuMTUxMTQgMyAzLjUgMy42NTExNCAzLjUgNC41QzMuNSA0Ljc3NjE0IDMuMjc2MTQgNSAzIDVDMi43MjM4NiA1IDIuNSA0Ljc3NjE0IDIuNSA0LjVaXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMmYgPSBbXCJjb2xvclwiXTtcbnZhciBGb250SXRhbGljSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyZik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUuNjc0OTQgMy41MDAxN0M1LjY3NDk0IDMuMjUxNjQgNS44NzY0MSAzLjA1MDE3IDYuMTI0OTQgMy4wNTAxN0gxMC42MjQ5QzEwLjg3MzUgMy4wNTAxNyAxMS4wNzQ5IDMuMjUxNjQgMTEuMDc0OSAzLjUwMDE3QzExLjA3NDkgMy43NDg3IDEwLjg3MzUgMy45NTAxNyAxMC42MjQ5IDMuOTUwMTdIOS4wMDU4N0w3LjIzMDkgMTEuMDVIOC44NzQ5M0M5LjEyMzQ1IDExLjA1IDkuMzI0OTMgMTEuMjUxNSA5LjMyNDkzIDExLjVDOS4zMjQ5MyAxMS43NDg2IDkuMTIzNDUgMTEuOTUgOC44NzQ5MyAxMS45NUg0LjM3NDkzQzQuMTI2NCAxMS45NSAzLjkyNDkzIDExLjc0ODYgMy45MjQ5MyAxMS41QzMuOTI0OTMgMTEuMjUxNSA0LjEyNjQgMTEuMDUgNC4zNzQ5MyAxMS4wNUg1Ljk5Mzk3TDcuNzY4OTQgMy45NTAxN0g2LjEyNDk0QzUuODc2NDEgMy45NTAxNyA1LjY3NDk0IDMuNzQ4NyA1LjY3NDk0IDMuNTAwMTdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyZyA9IFtcImNvbG9yXCJdO1xudmFyIEZvbnRSb21hbkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMmcpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk00Ljc5OTkzIDMuNTAwMTdDNC43OTk5MyAzLjI1MTY0IDUuMDAxNCAzLjA1MDE3IDUuMjQ5OTMgMy4wNTAxN0g5Ljc0OTkzQzkuOTk4NDUgMy4wNTAxNyAxMC4xOTk5IDMuMjUxNjQgMTAuMTk5OSAzLjUwMDE3QzEwLjE5OTkgMy43NDg3IDkuOTk4NDUgMy45NTAxNyA5Ljc0OTkzIDMuOTUwMTdIOC4wOTk5M1YxMS4wNUg5Ljc0OTk0QzkuOTk4NDcgMTEuMDUgMTAuMTk5OSAxMS4yNTE1IDEwLjE5OTkgMTEuNUMxMC4xOTk5IDExLjc0ODYgOS45OTg0NyAxMS45NSA5Ljc0OTk0IDExLjk1SDUuMjQ5OTRDNS4wMDE0MSAxMS45NSA0Ljc5OTk0IDExLjc0ODYgNC43OTk5NCAxMS41QzQuNzk5OTQgMTEuMjUxNSA1LjAwMTQxIDExLjA1IDUuMjQ5OTQgMTEuMDVINi44OTk5M1YzLjk1MDE3SDUuMjQ5OTNDNS4wMDE0IDMuOTUwMTcgNC43OTk5MyAzLjc0ODcgNC43OTk5MyAzLjUwMDE3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMmggPSBbXCJjb2xvclwiXTtcbnZhciBGb250U2l6ZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMmgpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0yLjc4MjMzIDIuMjE3MDdDMi43MDczMiAyLjE0MjA2IDIuNjA1NTcgMi4wOTk5MSAyLjQ5OTQ5IDIuMDk5OTFDMi4zOTM0IDIuMDk5OTEgMi4yOTE2NiAyLjE0MjA2IDIuMjE2NjQgMi4yMTcwN0wwLjIxNjY0NSA0LjIxNzA3QzAuMDYwNDM1MSA0LjM3MzI4IDAuMDYwNDM1MSA0LjYyNjU1IDAuMjE2NjQ1IDQuNzgyNzZDMC4zNzI4NTUgNC45Mzg5NyAwLjYyNjEyMSA0LjkzODk3IDAuNzgyMzMgNC43ODI3NkwyLjA5OTQ5IDMuNDY1NkwyLjA5OTQ5IDExLjUzNDJMMC43ODIzMyAxMC4yMTcxQzAuNjI2MTIgMTAuMDYwOSAwLjM3Mjg1NCAxMC4wNjA5IDAuMjE2NjQ1IDEwLjIxNzFDMC4wNjA0MzQ5IDEwLjM3MzMgMC4wNjA0MzQ5IDEwLjYyNjUgMC4yMTY2NDUgMTAuNzgyOEwyLjIxNjY0IDEyLjc4MjhDMi4yOTE2NiAxMi44NTc4IDIuMzkzNCAxMi44OTk5IDIuNDk5NDkgMTIuODk5OUMyLjYwNTU3IDEyLjg5OTkgMi43MDczMSAxMi44NTc4IDIuNzgyMzMgMTIuNzgyOEw0Ljc4MjMzIDEwLjc4MjhDNC45Mzg1NCAxMC42MjY1IDQuOTM4NTQgMTAuMzczMyA0Ljc4MjMzIDEwLjIxNzFDNC42MjYxMiAxMC4wNjA5IDQuMzcyODUgMTAuMDYwOSA0LjIxNjY0IDEwLjIxNzFMMi44OTk0OSAxMS41MzQyTDIuODk5NDkgMy40NjU2TDQuMjE2NjQgNC43ODI3NkM0LjM3Mjg1IDQuOTM4OTcgNC42MjYxMiA0LjkzODk3IDQuNzgyMzMgNC43ODI3NkM0LjkzODU0IDQuNjI2NTUgNC45Mzg1NCA0LjM3MzI4IDQuNzgyMzMgNC4yMTcwN0wyLjc4MjMzIDIuMjE3MDdaTTEwLjUgMi43NDk5N0MxMC43MTA3IDIuNzQ5OTcgMTAuODk4OCAyLjg4MjExIDEwLjk3MDMgMy4wODAzNkwxMy45NzAzIDExLjM5OTlDMTQuMDY0IDExLjY1OTcgMTMuOTI5MyAxMS45NDYyIDEzLjY2OTYgMTIuMDM5OUMxMy40MDk4IDEyLjEzMzYgMTMuMTIzMyAxMS45OTg5IDEzLjAyOTYgMTEuNzM5MkwxMi4wNDc3IDkuMDE2SDguOTUyMjhMNy45NzAzMyAxMS43MzkyQzcuODc2NjYgMTEuOTk4OSA3LjU5MDEzIDEyLjEzMzYgNy4zMzAzNiAxMi4wMzk5QzcuMDcwNTkgMTEuOTQ2MiA2LjkzNTk1IDExLjY1OTcgNy4wMjk2MiAxMS4zOTk5TDEwLjAyOTYgMy4wODAzNkMxMC4xMDExIDIuODgyMTEgMTAuMjg5MiAyLjc0OTk3IDEwLjUgMi43NDk5N1pNMTAuNSA0LjcyMzk2TDExLjc0MTIgOC4xNjZIOS4yNTg3OUwxMC41IDQuNzIzOTZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyaSA9IFtcImNvbG9yXCJdO1xudmFyIEZvbnRTdHlsZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMmkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjAzNzkxIDkuOTgwNzVDMC45MzQ3NzcgOS42NTgzIDEuMTE2MDMgOS4zNzcxOSAxLjQwMDA1IDkuMjQ4NzFDMS42ODQwOCA5LjEyMDIyIDIuMDk0NjMgOS4xMzQxMiAyLjI3MDcxIDkuNDU0MjZDMi44NTM5MyAxMC41MTQ3IDMuNjQ1OTkgMTAuNzI4MiA0LjQ4NjY1IDEwLjcyODJDNS41MjcyMSAxMC43MjgyIDYuMjk2NTkgMTAuMjYxNSA2LjI5NjU5IDkuNDU0MjZDNi4yOTY1OSA4LjgwNDcgNS45MTE5IDguNDY0MTYgNC44NzEzNCA4LjE0MjUzTDQuMTU4NzIgNy45MjE4MUMyLjY0NTE4IDcuNDQ4ODMgMS44ODg0MiA2LjY5MjA2IDEuODg4NDIgNS40NTYwMUMxLjg4ODQyIDMuNzk3NDMgMy4yNzU4MyAyLjY4NzUgNS4yNDM0MiAyLjY4NzVDNi45MTczMyAyLjY4NzUgNy45NzQwOSAzLjMzNTM2IDguNDM4MzMgNC4zMTA2NUM4LjU3MDg3IDQuNTg5MDkgOC41NzYxNCA0LjkxMjk0IDguMjI3OTQgNS4xOTExNEM3Ljg3OTc0IDUuNDY5MzQgNy41MjM1MSA1LjM0Nzk5IDcuMjMzMjcgNS4wMzgzOUM2LjQ3MjE1IDQuMjI2NTMgNS45OTU0NSA0LjA0OTY4IDUuMjU2MDQgNC4wNDk2OEM0LjEzOTggNC4wNDk2OCAzLjU0NyA0LjYzNjE4IDMuNTQ3IDUuMjc5NDNDMy41NDcgNS44NjU5MiAzLjk2MzIyIDYuMjMxNjkgNC45NDcwMiA2LjUzNDRMNS42Nzg1NiA2Ljc2MTQzQzcuMjI5OTQgNy4yMzQ0MSA3Ljk3NDA5IDcuOTU5NjQgNy45NzQwOSA5LjE3MDQ3QzcuOTc0MDkgMTAuNzcyMyA2LjY5Mzg5IDEyLjA5MDMgNC40NjE0MyAxMi4wOTAzQzIuODY2MTIgMTIuMDkwMyAxLjQwMDA1IDExLjExMzEgMS4wMzc5MSA5Ljk4MDc1Wk0xMS44NDkxIDguNzc5ODVDMTAuNjYxIDguMzk1NDMgMTAuMTY0OSA3Ljg2MTE0IDEwLjE2NDkgNi45ODgwNUMxMC4xNjQ5IDUuODY3MzYgMTEuMTYzNiA1LjA0NjM5IDEyLjYxMjggNS4wNDYzOUMxMy44NTQ2IDUuMDQ2MzkgMTQuNjYyOSA1LjYzMzQ1IDE0Ljk3NzggNi42MzQ2QzE1LjA0NDMgNi44NDU5OSAxNC45NTkzIDYuOTgwMDYgMTQuNzQ3NSA3LjA0OTFDMTQuNTM5NCA3LjExNjk3IDE0LjMxNzYgNy4wOTk3NCAxNC4yMzggNi44OTYxMUMxMy45MzU2IDYuMTIyNzMgMTMuMzUyIDUuNzYzMTEgMTIuNTk5OCA1Ljc2MzExQzExLjY0NjcgNS43NjMxMSAxMS4wMTM1IDYuMjUxNzggMTEuMDEzNSA2LjkxNjM4QzExLjAxMzUgNy40NTA2NiAxMS4zNDY0IDcuNzUwMzggMTIuMjQ3MyA4LjA0MzU4TDEyLjgzNDggOC4yMzI1NEMxNC4wNjIgOC42Mjk5OSAxNC41NTE2IDkuMTM4MjEgMTQuNTUxNiAxMC4wMTc4QzE0LjU1MTYgMTEuMTk3MiAxMy40ODEgMTIuMDQ0MiAxMS45OTI3IDEyLjA0NDJDMTAuNjQzOSAxMi4wNDQyIDkuNjU2NDQgMTEuMjgwOSA5LjQxOTc5IDEwLjMzNjFDOS4zNjUzNSAxMC4xMTg4IDkuNDExOTIgMTAuMDI4NyA5LjcwMDM5IDkuOTYxODRDOS45ODg4NiA5Ljg5NDk5IDEwLjA3MTQgOS44OTkxOCAxMC4xNzE1IDEwLjEzNjlDMTAuNDU1NSAxMC44MTE0IDExLjE1MzEgMTEuMzI3NSAxMi4wMzE4IDExLjMyNzVDMTIuOTkxNCAxMS4zMjc1IDEzLjY4MzQgMTAuNzgwMiAxMy42ODM0IDEwLjA2MzRDMTMuNjgzNCA5LjUzNTY3IDEzLjM5NjEgOS4yODgwNyAxMi40MzY2IDguOTc1MzJMMTEuODQ5MSA4Ljc3OTg1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMmogPSBbXCJjb2xvclwiXTtcbnZhciBGcmFtZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMmopO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMSAxLjVDMTEgMS4yMjM4NiAxMC43NzYxIDEgMTAuNSAxQzEwLjIyMzkgMSAxMCAxLjIyMzg2IDEwIDEuNVY0SDVWMS41QzUgMS4yMjM4NiA0Ljc3NjE0IDEgNC41IDFDNC4yMjM4NiAxIDQgMS4yMjM4NiA0IDEuNVY0SDEuNUMxLjIyMzg2IDQgMSA0LjIyMzg2IDEgNC41QzEgNC43NzYxNCAxLjIyMzg2IDUgMS41IDVINFYxMEgxLjVDMS4yMjM4NiAxMCAxIDEwLjIyMzkgMSAxMC41QzEgMTAuNzc2MSAxLjIyMzg2IDExIDEuNSAxMUg0VjEzLjVDNCAxMy43NzYxIDQuMjIzODYgMTQgNC41IDE0QzQuNzc2MTQgMTQgNSAxMy43NzYxIDUgMTMuNVYxMUgxMFYxMy41QzEwIDEzLjc3NjEgMTAuMjIzOSAxNCAxMC41IDE0QzEwLjc3NjEgMTQgMTEgMTMuNzc2MSAxMSAxMy41VjExSDEzLjVDMTMuNzc2MSAxMSAxNCAxMC43NzYxIDE0IDEwLjVDMTQgMTAuMjIzOSAxMy43NzYxIDEwIDEzLjUgMTBIMTFWNUgxMy41QzEzLjc3NjEgNSAxNCA0Ljc3NjE0IDE0IDQuNUMxNCA0LjIyMzg2IDEzLjc3NjEgNCAxMy41IDRIMTFWMS41Wk0xMCAxMFY1SDVWMTBIMTBaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyayA9IFtcImNvbG9yXCJdO1xudmFyIEZyYW1lckxvZ29JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJrKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy4zODI1IDEuMjk1NjdDMy40NjI0MSAxLjExNDMyIDMuNjQxODggMC45OTcyODQgMy44NDAwNSAwLjk5NzI4NEgxMS41QzExLjc3NjEgMC45OTcyODQgMTIgMS4yMjExNCAxMiAxLjQ5NzI4VjUuNUMxMiA1Ljc3NjE0IDExLjc3NjEgNiAxMS41IDZIOC42MzUyMUwxMS41Mjg4IDkuMTYyNDdDMTEuNjYyNiA5LjMwODcgMTEuNjk3NCA5LjUyMDE1IDExLjYxNzUgOS43MDE1NEMxMS41Mzc2IDkuODgyOTMgMTEuMzU4MiAxMCAxMS4xNiAxMEg4VjEzLjVDOCAxMy43MDIyIDcuODc4MTggMTMuODg0NSA3LjY5MTM0IDEzLjk2MTlDNy41MDQ1IDE0LjAzOTMgNy4yODk0NSAxMy45OTY2IDcuMTQ2NDUgMTMuODUzNkwzLjE0NjQ1IDkuODUzNTVDMy4wNTI2OCA5Ljc1OTc5IDMgOS42MzI2MSAzIDkuNVY1LjVDMyA1LjIyMzg2IDMuMjIzODYgNSAzLjUgNUg2LjM2NTMxTDMuNDcxMDUgMS44MzQ2OEMzLjMzNzMyIDEuNjg4NDQgMy4zMDI1OSAxLjQ3NzAxIDMuMzgyNSAxLjI5NTY3Wk03LjcyMDMyIDVMNC45NzQ3NCAxLjk5NzI4SDExVjVINy43MjAzMlpNNy4yNzk3OCA2SDRWOUg3LjVIMTAuMDI0N0w3LjI3OTc4IDZaTTQuNzA3MTEgMTBMNyAxMi4yOTI5VjEwSDQuNzA3MTFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQybCA9IFtcImNvbG9yXCJdO1xudmFyIEdlYXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJsKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy4wNzA5NSAwLjY1MDIzOEM2LjY3MzkxIDAuNjUwMjM4IDYuMzI5NzcgMC45MjUwOTYgNi4yNDE5OCAxLjMxMjMxTDYuMDAzOSAyLjM2MjQ3QzUuNjI0OSAyLjQ3MjY5IDUuMjYzMzUgMi42MjM2MyA0LjkyNDM2IDIuODEwMTNMNC4wMTMzNSAyLjIzNTg1QzMuNjc3NDggMi4wMjQxMyAzLjIzOTc4IDIuMDczMTIgMi45NTkwMyAyLjM1Mzg2TDIuMzUyOTQgMi45NTk5NkMyLjA3MjIgMy4yNDA3IDIuMDIzMiAzLjY3ODQgMi4yMzQ5MyA0LjAxNDI3TDIuODA5NDIgNC45MjU2MUMyLjYyMzA3IDUuMjY0NSAyLjQ3MjI3IDUuNjI1OTQgMi4zNjIxNiA2LjAwNDgxTDEuMzEyMDkgNi4yNDI4N0MwLjkyNDg4MyA2LjMzMDY1IDAuNjUwMDI0IDYuNjc0OCAwLjY1MDAyNCA3LjA3MTgzVjcuOTI4OTdDMC42NTAwMjQgOC4zMjYwMSAwLjkyNDg4MyA4LjY3MDE1IDEuMzEyMDkgOC43NTc5NEwyLjM2MjI4IDguOTk2MDNDMi40NzI0NiA5LjM3NSAyLjYyMzM1IDkuNzM2NTIgMi44MDk3OSAxMC4wNzU1TDIuMjM1NCAxMC45ODY3QzIuMDIzNjcgMTEuMzIyNSAyLjA3MjY3IDExLjc2MDIgMi4zNTM0MSAxMi4wNDFMMi45NTk1MSAxMi42NDcxQzMuMjQwMjUgMTIuOTI3OCAzLjY3Nzk1IDEyLjk3NjggNC4wMTM4MiAxMi43NjUxTDQuOTI1MDYgMTIuMTkwN0M1LjI2Mzg0IDEyLjM3NyA1LjYyNTE2IDEyLjUyNzggNi4wMDM5IDEyLjYzNzlMNi4yNDE5OCAxMy42ODgxQzYuMzI5NzcgMTQuMDc1MyA2LjY3MzkxIDE0LjM1MDIgNy4wNzA5NSAxNC4zNTAySDcuOTI4MDlDOC4zMjUxMiAxNC4zNTAyIDguNjY5MjcgMTQuMDc1MyA4Ljc1NzA1IDEzLjY4ODFMOC45OTUwNSAxMi42MzgzQzkuMzc0MTEgMTIuNTI4MiA5LjczNTczIDEyLjM3NzMgMTAuMDc0OCAxMi4xOTA5TDEwLjk4NiAxMi43NjUzQzExLjMyMTggMTIuOTc3IDExLjc1OTUgMTIuOTI4IDEyLjA0MDMgMTIuNjQ3M0wxMi42NDY0IDEyLjA0MTJDMTIuOTI3MSAxMS43NjA0IDEyLjk3NjEgMTEuMzIyNyAxMi43NjQ0IDEwLjk4NjlMMTIuMTkwMiAxMC4wNzZDMTIuMzc2OCA5LjczNjg4IDEyLjUyNzggOS4zNzUxNSAxMi42MzggOC45OTU5NkwxMy42ODc5IDguNzU3OTRDMTQuMDc1MSA4LjY3MDE1IDE0LjM1IDguMzI2MDEgMTQuMzUgNy45Mjg5N1Y3LjA3MTgzQzE0LjM1IDYuNjc0OCAxNC4wNzUxIDYuMzMwNjUgMTMuNjg3OSA2LjI0Mjg3TDEyLjYzODEgNi4wMDQ4OEMxMi41MjggNS42MjU3OCAxMi4zNzcxIDUuMjY0MTQgMTIuMTkwNiA0LjkyNTA3TDEyLjc2NDggNC4wMTQwN0MxMi45NzY2IDMuNjc4MiAxMi45Mjc2IDMuMjQwNSAxMi42NDY4IDIuOTU5NzVMMTIuMDQwNyAyLjM1MzY2QzExLjc2IDIuMDcyOTIgMTEuMzIyMyAyLjAyMzkyIDEwLjk4NjQgMi4yMzU2NUwxMC4wNzU1IDIuODA5ODlDOS43MzYyMiAyLjYyMzI4IDkuMzc0MzcgMi40NzIyOSA4Ljk5NTA1IDIuMzYyMDlMOC43NTcwNSAxLjMxMjMxQzguNjY5MjcgMC45MjUwOTYgOC4zMjUxMiAwLjY1MDIzOCA3LjkyODA5IDAuNjUwMjM4SDcuMDcwOTVaTTQuOTIwNTMgMy44MTI1MUM1LjQ0NzI0IDMuNDQzMzkgNi4wNTY2NSAzLjE4NDI0IDYuNzE1NDMgMy4wNjgzOUw3LjA3MDk1IDEuNTAwMjRINy45MjgwOUw4LjI4MzU1IDMuMDY4MTZDOC45NDI2NyAzLjE4Mzg3IDkuNTUyNCAzLjQ0MzAyIDEwLjA3OTQgMy44MTIyNEwxMS40Mzk3IDIuOTU0N0wxMi4wNDU4IDMuNTYwNzlMMTEuMTg4MiA0LjkyMTE3QzExLjU1NzMgNS40NDc5OCAxMS44MTY0IDYuMDU3NSAxMS45MzIxIDYuNzE2MzhMMTMuNSA3LjA3MTgzVjcuOTI4OTdMMTEuOTMyIDguMjg0NDRDMTEuODE2MiA4Ljk0MzQyIDExLjU1NyA5LjU1MzAxIDExLjE4NzggMTAuMDc5OEwxMi4wNDUzIDExLjQ0MDJMMTEuNDM5MiAxMi4wNDYyTDEwLjA3ODcgMTEuMTg4NkM5LjU1MTkyIDExLjU1NzYgOC45NDI0MSAxMS44MTY2IDguMjgzNTUgMTEuOTMyM0w3LjkyODA5IDEzLjUwMDJINy4wNzA5NUw2LjcxNTQzIDExLjkzMkM2LjA1NjkgMTEuODE2MiA1LjQ0NzcyIDExLjU1NzIgNC45MjExNiAxMS4xODgzTDMuNTYwNTUgMTIuMDQ2TDIuOTU0NDUgMTEuNDM5OUwzLjgxMjEzIDEwLjA3OTRDMy40NDMxIDkuNTUyNjYgMy4xODQwMyA4Ljk0MzI2IDMuMDY4MjUgOC4yODQ1TDEuNTAwMDIgNy45Mjg5N1Y3LjA3MTgzTDMuMDY4MTggNi43MTYzMkMzLjE4Mzg4IDYuMDU3NjUgMy40NDI4MyA1LjQ0ODMzIDMuODExNzEgNC45MjE2NUwyLjk1Mzk4IDMuNTYxTDMuNTYwMDggMi45NTQ5MUw0LjkyMDUzIDMuODEyNTFaTTkuMDI0OTYgNy41MDAwOEM5LjAyNDk2IDguMzQyMjYgOC4zNDIyMyA5LjAyNDk5IDcuNTAwMDUgOS4wMjQ5OUM2LjY1Nzg2IDkuMDI0OTkgNS45NzUxMyA4LjM0MjI2IDUuOTc1MTMgNy41MDAwOEM1Ljk3NTEzIDYuNjU3ODkgNi42NTc4NiA1Ljk3NTE2IDcuNTAwMDUgNS45NzUxNkM4LjM0MjIzIDUuOTc1MTYgOS4wMjQ5NiA2LjY1Nzg5IDkuMDI0OTYgNy41MDAwOFpNOS45MjQ5NiA3LjUwMDA4QzkuOTI0OTYgOC44MzkzMiA4LjgzOTI5IDkuOTI0OTkgNy41MDAwNSA5LjkyNDk5QzYuMTYwOCA5LjkyNDk5IDUuMDc1MTMgOC44MzkzMiA1LjA3NTEzIDcuNTAwMDhDNS4wNzUxMyA2LjE2MDg0IDYuMTYwOCA1LjA3NTE2IDcuNTAwMDUgNS4wNzUxNkM4LjgzOTI5IDUuMDc1MTYgOS45MjQ5NiA2LjE2MDg0IDkuOTI0OTYgNy41MDAwOFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJtID0gW1wiY29sb3JcIl07XG52YXIgR2l0SHViTG9nb0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMm0pO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjQ5OTMzIDAuMjVDMy40OTYzNSAwLjI1IDAuMjUgMy40OTU5MyAwLjI1IDcuNTAwMjRDMC4yNSAxMC43MDMgMi4zMjcxNSAxMy40MjA2IDUuMjA4MSAxNC4zNzk3QzUuNTcwODQgMTQuNDQ2IDUuNzAzMDIgMTQuMjIyMiA1LjcwMzAyIDE0LjAyOTlDNS43MDMwMiAxMy44NTc2IDUuNjk2NzkgMTMuNDAxOSA1LjY5MzIzIDEyLjc5N0MzLjY3NjYxIDEzLjIzNSAzLjI1MTEyIDExLjgyNSAzLjI1MTEyIDExLjgyNUMyLjkyMTMyIDEwLjk4NzQgMi40NDU5OSAxMC43NjQ0IDIuNDQ1OTkgMTAuNzY0NEMxLjc4NzczIDEwLjMxNDkgMi40OTU4NCAxMC4zMjM4IDIuNDk1ODQgMTAuMzIzOEMzLjIyMzUzIDEwLjM3NSAzLjYwNjI5IDExLjA3MTEgMy42MDYyOSAxMS4wNzExQzQuMjUyOTggMTIuMTc4OCA1LjMwMzM1IDExLjg1ODggNS43MTYzOCAxMS42NzMyQzUuNzgyMjUgMTEuMjA1IDUuOTY5NjIgMTAuODg1NCA2LjE3NjU4IDEwLjcwNDNDNC41NjY3NSAxMC41MjA5IDIuODc0MTUgOS44OTkxOCAyLjg3NDE1IDcuMTIxMDRDMi44NzQxNSA2LjMyOTI1IDMuMTU2NzcgNS42ODI1NyAzLjYyMDUzIDUuMTc1NjNDMy41NDU3NiA0Ljk5MjI2IDMuMjk2OTcgNC4yNTUyMSAzLjY5MTc0IDMuMjU2OTFDMy42OTE3NCAzLjI1NjkxIDQuMzAwMTUgMy4wNjE5NiA1LjY4NTIyIDMuOTk5NzNDNi4yNjMzNyAzLjgzOTA2IDYuODgzOCAzLjc1ODk1IDcuNTAwMjIgMy43NTU4M0M4LjExNjIgMy43NTg5NSA4LjczNjE5IDMuODM5MDYgOS4zMTUyMyAzLjk5OTczQzEwLjY5OTQgMy4wNjE5NiAxMS4zMDY5IDMuMjU2OTEgMTEuMzA2OSAzLjI1NjkxQzExLjcwMjYgNC4yNTUyMSAxMS40NTM4IDQuOTkyMjYgMTEuMzc5NSA1LjE3NTYzQzExLjg0NDEgNS42ODI1NyAxMi4xMjQ1IDYuMzI5MjUgMTIuMTI0NSA3LjEyMTA0QzEyLjEyNDUgOS45MDYzIDEwLjQyOTIgMTAuNTE5MiA4LjgxNDUyIDEwLjY5ODVDOS4wNzQ0NCAxMC45MjI0IDkuMzA2MzMgMTEuMzY0OCA5LjMwNjMzIDEyLjA0MTNDOS4zMDYzMyAxMy4wMTAyIDkuMjk3NDIgMTMuNzkyMiA5LjI5NzQyIDE0LjAyOTlDOS4yOTc0MiAxNC4yMjM5IDkuNDI4MjggMTQuNDQ5NiA5Ljc5NTkxIDE0LjM3ODhDMTIuNjc0NiAxMy40MTc5IDE0Ljc1IDEwLjcwMjUgMTQuNzUgNy41MDAyNEMxNC43NSAzLjQ5NTkzIDExLjUwMzYgMC4yNSA3LjQ5OTMzIDAuMjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQybiA9IFtcImNvbG9yXCJdO1xudmFyIEdsb2JlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQybik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTYgMS44MDAwMkM0LjM1MTk0IDEuODAwMDIgMS43OTk5NiA0LjM1MiAxLjc5OTk2IDcuNTAwMDJDMS43OTk5NiAxMC42NDggNC4zNTE5NCAxMy4yIDcuNDk5OTYgMTMuMkMxMC42NDggMTMuMiAxMy4yIDEwLjY0OCAxMy4yIDcuNTAwMDJDMTMuMiA0LjM1MiAxMC42NDggMS44MDAwMiA3LjQ5OTk2IDEuODAwMDJaTTAuODk5OTYzIDcuNTAwMDJDMC44OTk5NjMgMy44NTQ5NCAzLjg1NDg4IDAuOTAwMDI0IDcuNDk5OTYgMC45MDAwMjRDMTEuMTQ1IDAuOTAwMDI0IDE0LjEgMy44NTQ5NCAxNC4xIDcuNTAwMDJDMTQuMSAxMS4xNDUxIDExLjE0NSAxNC4xIDcuNDk5OTYgMTQuMUMzLjg1NDg4IDE0LjEgMC44OTk5NjMgMTEuMTQ1MSAwLjg5OTk2MyA3LjUwMDAyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMy40OTk5IDcuODk5OThIMS40OTk5NFY3LjA5OTk4SDEzLjQ5OTlWNy44OTk5OFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy4wOTk5MSAxMy41VjEuNUg3Ljg5OTkxVjEzLjVINy4wOTk5MXpNMTAuMzc1IDcuNDk5OThDMTAuMzc1IDUuMzI3MjQgOS41OTM2NCAzLjE3Nzc4IDguMDYxODMgMS43NTY1Nkw4LjUzNzkzIDEuMjQzNDFDMTAuMjM5NiAyLjgyMjE4IDExLjA3NSA1LjE3MjczIDExLjA3NSA3LjQ5OTk4IDExLjA3NSA5LjgyNzI0IDEwLjIzOTYgMTIuMTc3OCA4LjUzNzkzIDEzLjc1NjZMOC4wNjE4MyAxMy4yNDM0QzkuNTkzNjQgMTEuODIyMiAxMC4zNzUgOS42NzI3MyAxMC4zNzUgNy40OTk5OHpNMy45OTk2OSA3LjVDMy45OTk2OSA1LjE3NjExIDQuODA3ODYgMi44MjY3OCA2LjQ1NzY4IDEuMjQ3MTlMNi45NDE3NyAxLjc1MjgxQzUuNDU4MiAzLjE3MzIzIDQuNjk5NjkgNS4zMjM4OSA0LjY5OTY5IDcuNSA0LjY5OTcgOS42NzYxMSA1LjQ1ODIyIDExLjgyNjggNi45NDE3OSAxMy4yNDcyTDYuNDU3NjkgMTMuNzUyOEM0LjgwNzg4IDEyLjE3MzIgMy45OTk3IDkuODIzOSAzLjk5OTY5IDcuNXpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy40OTk5NiAzLjk1ODAxQzkuNjY5MjggMy45NTgwMSAxMS44NzUzIDQuMzU5MTUgMTMuMzcwNiA1LjE5NDQ4IDEzLjUzOTQgNS4yODg3NSAxMy41OTk4IDUuNTAxOTcgMTMuNTA1NSA1LjY3MDczIDEzLjQxMTMgNS44Mzk0OCAxMy4xOTggNS44OTk4NyAxMy4wMjkzIDUuODA1NiAxMS42Nzk0IDUuMDUxNTUgOS42MDc5OSA0LjY1ODAxIDcuNDk5OTYgNC42NTgwMSA1LjM5MTkyIDQuNjU4MDEgMy4zMjA1MiA1LjA1MTU1IDEuOTcwNjQgNS44MDU2IDEuODAxODggNS44OTk4NyAxLjU4ODY2IDUuODM5NDggMS40OTQzOSA1LjY3MDczIDEuNDAwMTMgNS41MDE5NyAxLjQ2MDUxIDUuMjg4NzUgMS42MjkyNyA1LjE5NDQ4IDMuMTI0NjYgNC4zNTkxNSA1LjMzMDYzIDMuOTU4MDEgNy40OTk5NiAzLjk1ODAxek03LjQ5OTk2IDEwLjg1QzkuNjY5MjggMTAuODUgMTEuODc1MyAxMC40NDg4IDEzLjM3MDYgOS42MTM1IDEzLjUzOTQgOS41MTkyNCAxMy41OTk4IDkuMzA2MDEgMTMuNTA1NSA5LjEzNzI2IDEzLjQxMTMgOC45Njg1IDEzLjE5OCA4LjkwODEyIDEzLjAyOTMgOS4wMDIzOCAxMS42Nzk0IDkuNzU2NDMgOS42MDc5OSAxMC4xNSA3LjQ5OTk2IDEwLjE1IDUuMzkxOTIgMTAuMTUgMy4zMjA1MiA5Ljc1NjQzIDEuOTcwNjQgOS4wMDIzOSAxLjgwMTg4IDguOTA4MTIgMS41ODg2NiA4Ljk2ODUgMS40OTQzOSA5LjEzNzI2IDEuNDAwMTMgOS4zMDYwMSAxLjQ2MDUxIDkuNTE5MjQgMS42MjkyNyA5LjYxMzUgMy4xMjQ2NiAxMC40NDg4IDUuMzMwNjMgMTAuODUgNy40OTk5NiAxMC44NXpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJvID0gW1wiY29sb3JcIl07XG52YXIgR3JpZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMm8pO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMi41IDJIOFY3SDEzVjIuNUMxMyAyLjIyMzg2IDEyLjc3NjEgMiAxMi41IDJaTTEzIDhIOFYxM0gxMi41QzEyLjc3NjEgMTMgMTMgMTIuNzc2MSAxMyAxMi41VjhaTTcgN1YySDIuNUMyLjIyMzg2IDIgMiAyLjIyMzg2IDIgMi41VjdIN1pNMiA4VjEyLjVDMiAxMi43NzYxIDIuMjIzODYgMTMgMi41IDEzSDdWOEgyWk0yLjUgMUMxLjY3MTU3IDEgMSAxLjY3MTU3IDEgMi41VjEyLjVDMSAxMy4zMjg0IDEuNjcxNTcgMTQgMi41IDE0SDEyLjVDMTMuMzI4NCAxNCAxNCAxMy4zMjg0IDE0IDEyLjVWMi41QzE0IDEuNjcxNTcgMTMuMzI4NCAxIDEyLjUgMUgyLjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQycCA9IFtcImNvbG9yXCJdO1xudmFyIEdyb3VwSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQycCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEuNDQ5OTUgMC45NDk5NTFDMS4zMTczNCAwLjk0OTk1MSAxLjE5MDE2IDEuMDAyNjMgMS4wOTY0IDEuMDk2NEMxLjAwMjYzIDEuMTkwMTcgMC45NDk5NTEgMS4zMTczNSAwLjk0OTk1MSAxLjQ0OTk1TDAuOTQ5OTY2IDMuNDQ5OTVDMC45NDk5NjkgMy43MjYxIDEuMTczODMgMy45NDk5NSAxLjQ0OTk3IDMuOTQ5OTVDMS43MjYxMSAzLjk0OTk1IDEuOTQ5OTcgMy43MjYwOSAxLjk0OTk3IDMuNDQ5OTVMMS45NDk5NSAxLjk0OTk1SDMuNDQ5OTdDMy43MjYxMSAxLjk0OTk1IDMuOTQ5OTcgMS43MjYwOSAzLjk0OTk3IDEuNDQ5OTVDMy45NDk5NyAxLjE3MzgxIDMuNzI2MTEgMC45NDk5NTEgMy40NDk5NyAwLjk0OTk1MUgxLjQ0OTk1Wk01Ljk0OTk1IDAuOTQ5OTUxQzUuNjczODEgMC45NDk5NTEgNS40NDk5NSAxLjE3MzgxIDUuNDQ5OTUgMS40NDk5NUM1LjQ0OTk1IDEuNzI2MDkgNS42NzM4MSAxLjk0OTk1IDUuOTQ5OTUgMS45NDk5NUg4Ljk0OTk1QzkuMjI2MDkgMS45NDk5NSA5LjQ0OTk1IDEuNzI2MDkgOS40NDk5NSAxLjQ0OTk1QzkuNDQ5OTUgMS4xNzM4MSA5LjIyNjA5IDAuOTQ5OTUxIDguOTQ5OTUgMC45NDk5NTFINS45NDk5NVpNNS40NDk5NSAxMy40NUM1LjQ0OTk1IDEzLjE3MzggNS42NzM4MSAxMi45NSA1Ljk0OTk1IDEyLjk1SDguOTQ5OTVDOS4yMjYwOSAxMi45NSA5LjQ0OTk1IDEzLjE3MzggOS40NDk5NSAxMy40NUM5LjQ0OTk1IDEzLjcyNjEgOS4yMjYwOSAxMy45NSA4Ljk0OTk1IDEzLjk1SDUuOTQ5OTVDNS42NzM4MSAxMy45NSA1LjQ0OTk1IDEzLjcyNjEgNS40NDk5NSAxMy40NVpNMS45NDk5NSA1Ljk0OTk1QzEuOTQ5OTUgNS42NzM4MSAxLjcyNjA5IDUuNDQ5OTUgMS40NDk5NSA1LjQ0OTk1QzEuMTczODEgNS40NDk5NSAwLjk0OTk1MSA1LjY3MzgxIDAuOTQ5OTUxIDUuOTQ5OTVWOC45NDk5NUMwLjk0OTk1MSA5LjIyNjA5IDEuMTczODEgOS40NDk5NSAxLjQ0OTk1IDkuNDQ5OTVDMS43MjYwOSA5LjQ0OTk1IDEuOTQ5OTUgOS4yMjYwOSAxLjk0OTk1IDguOTQ5OTVWNS45NDk5NVpNMTMuNDUgNS40NDk5NUMxMy43MjYxIDUuNDQ5OTUgMTMuOTUgNS42NzM4MSAxMy45NSA1Ljk0OTk1VjguOTQ5OTVDMTMuOTUgOS4yMjYwOSAxMy43MjYxIDkuNDQ5OTUgMTMuNDUgOS40NDk5NUMxMy4xNzM4IDkuNDQ5OTUgMTIuOTUgOS4yMjYwOSAxMi45NSA4Ljk0OTk1VjUuOTQ5OTVDMTIuOTUgNS42NzM4MSAxMy4xNzM4IDUuNDQ5OTUgMTMuNDUgNS40NDk5NVpNMTEuNDUgMC45NDk5NTFDMTEuMTczOCAwLjk0OTk1MSAxMC45NSAxLjE3MzgxIDEwLjk1IDEuNDQ5OTVDMTAuOTUgMS43MjYwOSAxMS4xNzM4IDEuOTQ5OTUgMTEuNDUgMS45NDk5NUgxMi45NDk5VjMuNDQ5OTVDMTIuOTQ5OSAzLjcyNjA5IDEzLjE3MzggMy45NDk5NSAxMy40NDk5IDMuOTQ5OTVDMTMuNzI2MSAzLjk0OTk1IDEzLjk0OTkgMy43MjYwOSAxMy45NDk5IDMuNDQ5OTVWMS40NDk5NUMxMy45NDk5IDEuMTczODEgMTMuNzI1MiAwLjk0OTk1MSAxMy40NDkgMC45NDk5NTFIMTEuNDVaTTEuNDQ5OTUgMTAuOTVDMS43MjYwOSAxMC45NSAxLjk0OTk1IDExLjE3MzggMS45NDk5NSAxMS40NVYxMi45NUgzLjQ0OTk3QzMuNzI2MTEgMTIuOTUgMy45NDk5NyAxMy4xNzM4IDMuOTQ5OTcgMTMuNDVDMy45NDk5NyAxMy43MjYxIDMuNzI2MTEgMTMuOTUgMy40NDk5NyAxMy45NUgxLjQ0OTk1QzEuMTczODEgMTMuOTUgMC45NDk5NTEgMTMuNzI2MSAwLjk0OTk1MSAxMy40NVYxMS40NUMwLjk0OTk1MSAxMS4xNzM4IDEuMTczODEgMTAuOTUgMS40NDk5NSAxMC45NVpNMTMuOTUgMTEuNDVDMTMuOTUgMTEuMTczOCAxMy43MjYxIDEwLjk1IDEzLjQ1IDEwLjk1QzEzLjE3MzggMTAuOTQ5OSAxMi45NSAxMS4xNzM4IDEyLjk1IDExLjQ0OTlMMTIuOTQ5MSAxMi45NUgxMS40NUMxMS4xNzM4IDEyLjk1IDEwLjk1IDEzLjE3MzggMTAuOTUgMTMuNDVDMTAuOTUgMTMuNzI2MSAxMS4xNzM4IDEzLjk1IDExLjQ1IDEzLjk1SDEzLjQ0OTlDMTMuNzI2MSAxMy45NSAxMy45NDk5IDEzLjcyNjEgMTMuOTQ5OSAxMy40NUwxMy45NSAxMS40NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJxID0gW1wiY29sb3JcIl07XG52YXIgSGFsZjFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJxKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy40OTk5MSAwLjg3Njg5MkMzLjg0MjIyIDAuODc2ODkyIDAuODc3MDc1IDMuODQyMDQgMC44NzcwNzUgNy40OTk3MkMwLjg3NzA3NSAxMS4xNTc0IDMuODQyMjIgMTQuMTIyNiA3LjQ5OTkxIDE0LjEyMjZDMTEuMTU3NiAxNC4xMjI2IDE0LjEyMjcgMTEuMTU3NCAxNC4xMjI3IDcuNDk5NzJDMTQuMTIyNyAzLjg0MjA0IDExLjE1NzYgMC44NzY4OTIgNy40OTk5MSAwLjg3Njg5MlpNNy4wMDAwMyAxLjg0ODYxQzQuMTAxMTQgMi4xMDE3IDEuODI3MDcgNC41MzUxNSAxLjgyNzA3IDcuNDk5NzJDMS44MjcwNyAxMC40NjQzIDQuMTAxMTQgMTIuODk3NyA3LjAwMDAzIDEzLjE1MDhWMS44NDg2MVpNOC4wMDAwMyAxMy4xNTA4QzEwLjg5ODggMTIuODk3NiAxMy4xNzI3IDEwLjQ2NDIgMTMuMTcyNyA3LjQ5OTcyQzEzLjE3MjcgNC41MzUyNCAxMC44OTg4IDIuMTAxODUgOC4wMDAwMyAxLjg0ODY0VjEzLjE1MDhaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyciA9IFtcImNvbG9yXCJdO1xudmFyIEhhbGYySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQycik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTEgMC44NzY4OTJDMy44NDIyMiAwLjg3Njg5MiAwLjg3NzA3NSAzLjg0MjA0IDAuODc3MDc1IDcuNDk5NzJDMC44NzcwNzUgMTEuMTU3NCAzLjg0MjIyIDE0LjEyMjYgNy40OTk5MSAxNC4xMjI2QzExLjE1NzYgMTQuMTIyNiAxNC4xMjI3IDExLjE1NzQgMTQuMTIyNyA3LjQ5OTcyQzE0LjEyMjcgMy44NDIwNCAxMS4xNTc2IDAuODc2ODkyIDcuNDk5OTEgMC44NzY4OTJaTTcuNDk5ODggMS44MjY4OUM0LjM2Njg4IDEuODI2OSAxLjgyNzA3IDQuMzY2NzIgMS44MjcwNyA3LjQ5OTcyQzEuODI3MDcgMTAuNjMyNyA0LjM2Njg4IDEzLjE3MjUgNy40OTk4OCAxMy4xNzI2VjEuODI2ODlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQycyA9IFtcImNvbG9yXCJdO1xudmFyIEhhbWJ1cmdlck1lbnVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJzKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS41IDNDMS4yMjM4NiAzIDEgMy4yMjM4NiAxIDMuNUMxIDMuNzc2MTQgMS4yMjM4NiA0IDEuNSA0SDEzLjVDMTMuNzc2MSA0IDE0IDMuNzc2MTQgMTQgMy41QzE0IDMuMjIzODYgMTMuNzc2MSAzIDEzLjUgM0gxLjVaTTEgNy41QzEgNy4yMjM4NiAxLjIyMzg2IDcgMS41IDdIMTMuNUMxMy43NzYxIDcgMTQgNy4yMjM4NiAxNCA3LjVDMTQgNy43NzYxNCAxMy43NzYxIDggMTMuNSA4SDEuNUMxLjIyMzg2IDggMSA3Ljc3NjE0IDEgNy41Wk0xIDExLjVDMSAxMS4yMjM5IDEuMjIzODYgMTEgMS41IDExSDEzLjVDMTMuNzc2MSAxMSAxNCAxMS4yMjM5IDE0IDExLjVDMTQgMTEuNzc2MSAxMy43NzYxIDEyIDEzLjUgMTJIMS41QzEuMjIzODYgMTIgMSAxMS43NzYxIDEgMTEuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJ0ID0gW1wiY29sb3JcIl07XG52YXIgSGFuZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMnQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk02LjgxMTMgMS42NDcwNkM2LjYyMTg4IDIuODc5MTggNi42ODI2OCAzLjg4NTIzIDYuNzY4NDggNS4zMDQ5OUM2Ljc4NDE1IDUuNTY0MjYgNi44MDA2NSA1LjgzNzMyIDYuODE2NjEgNi4xMjgwOEM2LjgzMTExIDYuMzkyMDggNi42Mzc1OCA2LjYyMTcyIDYuMzc0OTUgNi42NTIxN0M2LjExMjMyIDYuNjgyNjIgNS44NzEzOCA2LjUwMzM0IDUuODI1MDkgNi4yNDMwNEw1Ljc0NzU0IDUuODA2OThDNS42NDQwMiA1LjE2NTI5IDUuNDgzNTUgNC4yNTQ4MSA1LjE3ODA3IDMuNDQ3NDFDNC44NjI0MSAyLjYxMzEyIDQuNDQ4NiAyLjA0MTIxIDMuOTM0MzYgMS44NjA0NEMzLjY0OTk0IDEuNzYxMDQgMy40MTkwMSAxLjg0Mjc5IDMuMjU4NjggMi4wMTA1MkMzLjA4NzQ2IDIuMTg5NjIgMi45OTc2IDIuNDcwNjUgMy4wNjI3IDIuNzUzOTlDMy4yMTQ2IDMuMzQ0MjQgMy40NDYyNyAzLjkxNjcgMy42OTgzNiA0LjUxODAyQzMuNzIwODIgNC41NzE1OCAzLjc0MzQ2IDQuNjI1NDMgMy43NjYyMSA0LjY3OTU0QzMuOTk1NCA1LjIyNDU3IDQuMjM2MTkgNS43OTcyIDQuNDE2NDQgNi4zOTA4MUw0LjQxNjkxIDYuMzkyMzhDNC41NjIgNi44NzU4NiA0LjY1NjQ2IDcuMjU5NSA0LjczMDg2IDcuNTYxNjVDNC43NjAzNCA3LjY4MTM4IDQuNzg2NjcgNy43ODgzMSA0LjgxMTc1IDcuODgzNTlDNC44Njc2OCA4LjA5NjA2IDQuNzc4MzYgOC4zMjAxNCA0LjU5MTYxIDguNDM1ODhDNC40MDQ4NiA4LjU1MTYxIDQuMTY0NDUgOC41MzE4OCAzLjk5OTA3IDguMzg3MjVDMy43Mzc0OSA4LjE1ODQ4IDMuNTE1IDcuOTI3ODQgMy4zMTgxNyA3LjcxODAyQzMuMjc2MjcgNy42NzMzNSAzLjIzNjAyIDcuNjMwMTggMy4xOTcwNSA3LjU4ODM4QzMuMDQ3NzcgNy40MjgyNiAyLjkxNzEyIDcuMjg4MTIgMi43ODMzNCA3LjE2MDI5QzIuNDU5ODkgNi44NTEyMiAyLjE4Mzk4IDYuNjgwMDQgMS44MDU4NSA2LjY0MzY5TDEuODAzMjQgNi42NDM0M0MxLjU2MTE3IDYuNjE4ODggMS40MTQwMiA2LjY2NDQxIDEuMzE3NTYgNi43MjYyN0MxLjIxODk5IDYuNzg5NDcgMS4xMTk4OCA2LjkwNDE0IDEuMDM3ODQgNy4xMTIzQzAuOTc2NTc2IDcuMjg0OTIgMS4wMTUxNSA3LjYyOTg3IDEuMTkyOSA3Ljk2OTExTDEuMTk3MjggNy45Nzc0N0MxLjQwMDg2IDguMzg0NTIgMS43NDQ3NSA4LjgxNTg3IDIuMTgxNDEgOS4yOTI5OUMyLjM5NzM5IDkuNTI4OTggMi42Mjg3MiA5Ljc2ODQ5IDIuODY5MzQgMTAuMDE3NEwyLjg3OTY2IDEwLjAyODFDMy4xMTU0NiAxMC4yNzIxIDMuMzU5NjIgMTAuNTI0NyAzLjU5NzEzIDEwLjc4MjdDNC40Mjg4IDExLjY4NjMgNS4yNzcwNiAxMi43NTM4IDUuNDYyNyAxNEgxMS41MDg3QzExLjU2MzYgMTIuNDM1MyAxMS44NzU2IDExLjI2OCAxMi4yODc1IDEwLjEzNDZDMTIuNDQ1NCA5LjcwMDQxIDEyLjYxMjEgOS4yODQxMiAxMi43ODI2IDguODU4MjlDMTMuMTA5NyA4LjA0MTM5IDEzLjQ1MDkgNy4xODkzNyAxMy43NzA1IDYuMTA4MjRDMTQuMDk4OSA0Ljk5NzM3IDE0LjAwOTcgNC4zNzAzMyAxMy44NjEzIDQuMDM5ODRDMTMuNzE3IDMuNzE4NTggMTMuNDkxNCAzLjYxNzg2IDEzLjM4MTYgMy41OTYwNkMxMy4xMzgxIDMuNTQ3NzQgMTMuMDM4NCAzLjYwOTQ3IDEyLjk2OTggMy42NzkwMUMxMi44NjcgMy43ODMxNiAxMi43Njk4IDMuOTgyNzMgMTIuNjkyMSA0LjMwMjY5QzEyLjYxNjYgNC42MTM0NSAxMi41NzUyIDQuOTY1MTcgMTIuNTMzIDUuMzI1MDFMMTIuNTI5OCA1LjM1Mjg1QzEyLjQ5MjQgNS42NzI0MiAxMi40NTA1IDYuMDMwMTYgMTIuMzY2NSA2LjMwMDk4QzEyLjMzODMgNi40MDY5OSAxMi4yODE5IDYuNTA0MDcgMTIuMTk3OSA2LjU3NTM5QzEyLjEzODIgNi42MjYxIDEyLjAxMDQgNi43MDgxOCAxMS44MzA5IDYuNjkzMTJDMTEuNTQyNCA2LjY2ODkxIDExLjM3MTIgNi40MjE0MyAxMS4zNjUgNi4xNDc4M0MxMS4zNTYgNS43NTQ1NCAxMS4zODgzIDUuMzU4NjQgMTEuNDA3NCA0Ljk2NjA4QzExLjQ0MjggNC4yMzY0NiAxMS40NzcgMy41MzM3IDExLjQyNDUgMi44MzQyTDExLjQyNDIgMi44MjkzNEMxMS4zOTE2IDIuMzI5OTcgMTEuMDQ5MyAyLjAwMjI4IDEwLjcwMDcgMS45MjI4QzEwLjUzMDUgMS44ODQwMSAxMC4zNjkgMS45MDYwMSAxMC4yMzQ3IDEuOTgzNUMxMC4xMDMgMi4wNTk0NiA5Ljk1NTM1IDIuMjEzMTggOS44NTc0IDIuNTEzOTRMOS44NTYzMSAyLjUxNzI2QzkuODE1MjUgMi42NDA0IDkuNzcyOTggMi44Nzc1MyA5LjczNjA2IDMuMjEyNEM5LjcwMDQ0IDMuNTM1NDIgOS42NzMzNyAzLjkxMjc5IDkuNjUxNTYgNC4yOTQxOEM5LjYzMjkgNC42MjAzMyA5LjYxNzg1IDQuOTU4NCA5LjYwNDM0IDUuMjYxOTRDOS41ODcyOCA1LjY0NTI5IDkuNTcyNjcgNS45NzM1NyA5LjU1NjMzIDYuMTUzMkM5LjU0OTgzIDYuMjI0NTkgOS41MjkzOSA2LjI5NDkzIDkuNDk1MDEgNi4zNTc4NUM5LjQ3MzU2IDYuMzk3MTEgOS4zNjExNSA2LjYwOTQ3IDkuMDcxMDYgNi42MTg0M0M4Ljc3OTE3IDYuNjI3NDQgOC42Mzk3NSA2LjQwMDU3IDguNjE2OTggNi4zNTkxOUM4LjU1NjM0IDYuMjQ4OTkgOC41NTA2NiA2LjExODA3IDguNTQ3NTQgNS45OTI4M0M4LjU0NDc0IDUuODgwNjQgOC41NDI5NCA1LjcxNzk4IDguNTQxNzQgNS41NDc2N0M4LjUzOTM1IDUuMjA1ODIgOC41MzkzNSA0LjgxOTE5IDguNTM5MzUgNC43MDk1MkM4LjUzOTM1IDMuNjY1NyA4LjUzODM4IDIuNjUzNzIgOC40NDcxNCAxLjY0MzcyQzguMzkxODMgMS4yNDEyNyA4LjA2Mjc4IDEuMDA0NTUgNy42NDM2IDEuMDAwMDVDNy4yMjM5OSAwLjk5NTU1MiA2Ljg3OTE4IDEuMjI3MDQgNi44MTEzIDEuNjQ3MDZaTTkuNDEyMTkgMS4zNjE3QzkuMjE0NjkgMC40NDg0ODQgOC4zOTkxMyAwLjAwODEwMzI0IDcuNjU0MzMgMC4wMDAxMTE1NEM2Ljg2NDUyIC0wLjAwODM2MzA4IDUuOTg3NjEgMC40NjU4ODEgNS44MjM2NSAxLjQ5MDM3TDUuODIzMTggMS40OTMzNEM1Ljc4MjM5IDEuNzU4NCA1Ljc1MjI5IDIuMDE0ODEgNS43MzA5IDIuMjY2NTJDNS4zOTQyMyAxLjY3MzY0IDQuOTI2MjIgMS4xNDg5NCA0LjI2NTUgMC45MTY4NTlDMy41ODY2MSAwLjY3OTMxMiAyLjk0OTIgMC44ODcwODcgMi41MzU4MiAxLjMxOTUyQzIuMTM0MTUgMS43Mzk3MSAxLjk0NDM4IDIuMzY3NDIgMi4wOTAzMSAyLjk4NzQ2TDIuMDkyNjkgMi45OTcxM0MyLjI2NDc4IDMuNjY4MDggMi41MjM5NiA0LjMwMzE2IDIuNzc2MTMgNC45MDQ2NUMyLjc5ODE0IDQuOTU3MTcgMi44MjAxIDUuMDA5NDEgMi44NDE5NCA1LjA2MTM5QzMuMDIxMzkgNS40ODg0MiAzLjE5Mzc4IDUuODk4NjYgMy4zMzg3MSA2LjMxMjU2QzIuOTY0MDQgNS45ODE0MiAyLjUxOTI1IDUuNzA3OTYgMS45MDI3NiA1LjY0ODRDMS40ODg2NSA1LjYwNjYzIDEuMTAzOTEgNS42NzUzNiAwLjc3NzgwNSA1Ljg4NDQ0QzAuNDU0MjM5IDYuMDkxOSAwLjI0MDY3MSA2LjQwNDA1IDAuMTA0MTg3IDYuNzU0MDZMMC4xMDA4NjggNi43NjI4MUMtMC4xMDE4NCA3LjMxMjg2IDAuMDY2MzMxMiA3Ljk3MTU3IDAuMzA0ODk1IDguNDI4OTdDMC41NzM3MDQgOC45NjQ3NCAwLjk5NjEwNCA5LjQ3OTA0IDEuNDQzNzIgOS45NjgxM0MxLjY3MDQ2IDEwLjIxNTkgMS45MTEzNiAxMC40NjUyIDIuMTUwMzMgMTAuNzEyNEwyLjE1NjgyIDEwLjcxOTFDMi4zOTUyNCAxMC45NjU4IDIuNjMyMTcgMTEuMjEwOSAyLjg2MTM0IDExLjQ1OTlDMy44MDkzNyAxMi40OSA0LjUwMDAyIDEzLjQ2MzIgNC41MDAwMiAxNC41QzQuNTAwMDIgMTQuNzc2MSA0LjcyMzg4IDE1IDUuMDAwMDIgMTVIMTJDMTIuMjc2MiAxNSAxMi41IDE0Ljc3NjEgMTIuNSAxNC41QzEyLjUgMTIuODIxMiAxMi44MDIxIDExLjY0NjIgMTMuMjI3NCAxMC40NzYyQzEzLjM2NTMgMTAuMDk2OCAxMy41MjE2IDkuNzA1NzkgMTMuNjg2OCA5LjI5MjQ3QzE0LjAyMzggOC40NDkyMiAxNC4zOTggNy41MTI5OCAxNC43Mjk1IDYuMzkxNzVDMTUuMDk1NiA1LjE1MzI0IDE1LjA1NTkgNC4yNTkwNCAxNC43NzM1IDMuNjMwMTdDMTQuNDg3IDIuOTkyMDggMTMuOTc5OCAyLjY5NTMgMTMuNTc2MyAyLjYxNTJDMTMuMTI3NiAyLjUyNjE0IDEyLjczNjcgMi42MDQ3NSAxMi40MjY4IDIuODMwODFDMTIuNDI1MyAyLjgwNzczIDEyLjQyMzYgMi43ODQ2OCAxMi40MjE5IDIuNzYxNjdDMTIuMzU4NyAxLjgxMDUgMTEuNjkwNyAxLjEyMjg1IDEwLjkyMyAwLjk0NzgyMUMxMC41MzQ2IDAuODU5Mjg3IDEwLjExMTEgMC45MDAzOTMgOS43MzUwOSAxLjExNzI0QzkuNjE4NTIgMS4xODQ0NiA5LjUxMDU1IDEuMjY2MjMgOS40MTIxOSAxLjM2MTdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQydSA9IFtcImNvbG9yXCJdO1xudmFyIEhlYWRpbmdJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJ1KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOC43NTQzMiAyLjA1MDJDOC41MDU3OSAyLjA1MDIgOC4zMDQzMiAyLjI1MTY3IDguMzA0MzIgMi41MDAyQzguMzA0MzIgMi43NDg3MyA4LjUwNTc5IDIuOTUwMiA4Ljc1NDMyIDIuOTUwMkg5Ljk0OTk3VjcuMDUwMDRINS4wNDk5N1YyLjk1MDJINi4yNTQzMkM2LjUwMjg1IDIuOTUwMiA2LjcwNDMyIDIuNzQ4NzMgNi43MDQzMiAyLjUwMDJDNi43MDQzMiAyLjI1MTY3IDYuNTAyODUgMi4wNTAyIDYuMjU0MzIgMi4wNTAySDIuNzU0MzJDMi41MDU3OSAyLjA1MDIgMi4zMDQzMiAyLjI1MTY3IDIuMzA0MzIgMi41MDAyQzIuMzA0MzIgMi43NDg3MyAyLjUwNTc5IDIuOTUwMiAyLjc1NDMyIDIuOTUwMkgzLjk0OTk3VjEyLjA1MDJIMi43NTQzMkMyLjUwNTc5IDEyLjA1MDIgMi4zMDQzMiAxMi4yNTE3IDIuMzA0MzIgMTIuNTAwMkMyLjMwNDMyIDEyLjc0ODcgMi41MDU3OSAxMi45NTAyIDIuNzU0MzIgMTIuOTUwMkg2LjI1NDMyQzYuNTAyODUgMTIuOTUwMiA2LjcwNDMyIDEyLjc0ODcgNi43MDQzMiAxMi41MDAyQzYuNzA0MzIgMTIuMjUxNyA2LjUwMjg1IDEyLjA1MDIgNi4yNTQzMiAxMi4wNTAySDUuMDQ5OTdWNy45NTAwNEg5Ljk0OTk3VjEyLjA1MDJIOC43NTQzMkM4LjUwNTc5IDEyLjA1MDIgOC4zMDQzMiAxMi4yNTE3IDguMzA0MzIgMTIuNTAwMkM4LjMwNDMyIDEyLjc0ODcgOC41MDU3OSAxMi45NTAyIDguNzU0MzIgMTIuOTUwMkgxMi4yNTQzQzEyLjUwMjggMTIuOTUwMiAxMi43MDQzIDEyLjc0ODcgMTIuNzA0MyAxMi41MDAyQzEyLjcwNDMgMTIuMjUxNyAxMi41MDI4IDEyLjA1MDIgMTIuMjU0MyAxMi4wNTAySDExLjA1VjIuOTUwMkgxMi4yNTQzQzEyLjUwMjggMi45NTAyIDEyLjcwNDMgMi43NDg3MyAxMi43MDQzIDIuNTAwMkMxMi43MDQzIDIuMjUxNjcgMTIuNTAyOCAyLjA1MDIgMTIuMjU0MyAyLjA1MDJIOC43NTQzMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJ2ID0gW1wiY29sb3JcIl07XG52YXIgSGVhcnRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJ2KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC44OTM0NiAyLjM1MjQ4QzMuNDkxOTUgMi4zNTI0OCAyLjM1MjQ4IDMuNDkzNTkgMi4zNTI0OCA0LjkwNTMyQzIuMzUyNDggNi4zODE2NCAzLjIwOTU0IDcuOTE2OCA0LjM3MjU1IDkuMzM1MjJDNS4zOTM5NiAxMC41ODEgNi41OTQ2NCAxMS42NzAyIDcuNTAwMDIgMTIuNDc3OEM4LjQwNTQgMTEuNjcwMiA5LjYwNjA4IDEwLjU4MSAxMC42Mjc1IDkuMzM1MjJDMTEuNzkwNSA3LjkxNjggMTIuNjQ3NiA2LjM4MTY0IDEyLjY0NzYgNC45MDUzMkMxMi42NDc2IDMuNDkzNTkgMTEuNTA4MSAyLjM1MjQ4IDEwLjEwNjYgMi4zNTI0OEM5LjI3MDU5IDIuMzUyNDggOC44MTg5NCAyLjY0MzIzIDguNTM5NyAyLjk1ODQzQzguMjc4NzcgMy4yNTI5NSA4LjE0NjIzIDMuNTg1NjYgOC4wMjUwMSAzLjg4OTkzQzguMDAzOTEgMy45NDI5IDcuOTgzMTUgMy45OTUwMSA3Ljk2MjExIDQuMDQ1OTFDNy44ODQ4MiA0LjIzMjk0IDcuNzAyNCA0LjM1NDk0IDcuNTAwMDIgNC4zNTQ5NEM3LjI5NzY1IDQuMzU0OTQgNy4xMTUyMyA0LjIzMjk1IDcuMDM3OTMgNC4wNDU5MkM3LjAxNjg5IDMuOTk1MDEgNi45OTYxMiAzLjk0Mjg5IDYuOTc1MDIgMy44ODk5QzYuODUzOCAzLjU4NTY0IDYuNzIxMjYgMy4yNTI5NCA2LjQ2MDM0IDIuOTU4NDNDNi4xODEwOSAyLjY0MzIzIDUuNzI5NDUgMi4zNTI0OCA0Ljg5MzQ2IDIuMzUyNDhaTTEuMzUyNDggNC45MDUzMkMxLjM1MjQ4IDIuOTQ0OTggMi45MzYgMS4zNTI0OCA0Ljg5MzQ2IDEuMzUyNDhDNi4wMDg0IDEuMzUyNDggNi43MzUwNCAxLjc2MDQ5IDcuMjA4ODQgMi4yOTUzQzcuMzIwNjIgMi40MjE0NyA3LjQxNjg2IDIuNTUzODIgNy41MDAwMiAyLjY4NTQ1QzcuNTgzMTggMi41NTM4MiA3LjY3OTQxIDIuNDIxNDcgNy43OTExOSAyLjI5NTNDOC4yNjUgMS43NjA0OSA4Ljk5MTY0IDEuMzUyNDggMTAuMTA2NiAxLjM1MjQ4QzEyLjA2NCAxLjM1MjQ4IDEzLjY0NzYgMi45NDQ5OCAxMy42NDc2IDQuOTA1MzJDMTMuNjQ3NiA2Ljc0MDQxIDEyLjYwMTMgOC41MDUwOCAxMS40MDA4IDkuOTY5MjdDMTAuMjYzNiAxMS4zNTYyIDguOTIxOTQgMTIuNTUwOCA4LjAwNjAxIDEzLjM2NjRDNy45NDY0NSAxMy40MTk0IDcuODg4NjkgMTMuNDcwOSA3LjgzMjkxIDEzLjUyMDZDNy42NDMyNCAxMy42ODk5IDcuMzU2OCAxMy42ODk5IDcuMTY3MTMgMTMuNTIwNkM3LjExMTM1IDEzLjQ3MDkgNy4wNTM1OSAxMy40MTk0IDYuOTk0MDMgMTMuMzY2NEM2LjA3ODEgMTIuNTUwOCA0LjczNjQxIDExLjM1NjIgMy41OTkyNiA5Ljk2OTI3QzIuMzk4NzIgOC41MDUwOCAxLjM1MjQ4IDYuNzQwNDEgMS4zNTI0OCA0LjkwNTMyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMncgPSBbXCJjb2xvclwiXTtcbnZhciBIZWFydEZpbGxlZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMncpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjM1MjQ4IDQuOTA1MzJDMS4zNTI0OCAyLjk0NDk4IDIuOTM2IDEuMzUyNDggNC44OTM0NiAxLjM1MjQ4QzYuMjU3NjkgMS4zNTI0OCA2Ljg2MDU4IDEuOTIzMzYgNy41MDAwMiAyLjkzNTQ1QzguMTM5NDYgMS45MjMzNiA4Ljc0MjM1IDEuMzUyNDggMTAuMTA2NiAxLjM1MjQ4QzEyLjA2NCAxLjM1MjQ4IDEzLjY0NzYgMi45NDQ5OCAxMy42NDc2IDQuOTA1MzJDMTMuNjQ3NiA2Ljc0MDQxIDEyLjYwMTMgOC41MDUwOCAxMS40MDA4IDkuOTY5MjdDMTAuMjYzNiAxMS4zNTYyIDguOTIxOTQgMTIuNTUwOCA4LjAwNjAxIDEzLjM2NjRDNy45NDY0NSAxMy40MTk0IDcuODg4NjkgMTMuNDcwOSA3LjgzMjkxIDEzLjUyMDZDNy42NDMyNCAxMy42ODk5IDcuMzU2OCAxMy42ODk5IDcuMTY3MTMgMTMuNTIwNkM3LjExMTM1IDEzLjQ3MDkgNy4wNTM1OSAxMy40MTk0IDYuOTk0MDMgMTMuMzY2NEM2LjA3ODEgMTIuNTUwOCA0LjczNjQxIDExLjM1NjIgMy41OTkyNiA5Ljk2OTI3QzIuMzk4NzIgOC41MDUwOCAxLjM1MjQ4IDYuNzQwNDEgMS4zNTI0OCA0LjkwNTMyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMnggPSBbXCJjb2xvclwiXTtcbnZhciBIZWlnaHRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJ4KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy4xODEzIDEuNjgxNzlDNy4zNTcwNCAxLjUwNjA1IDcuNjQxOTYgMS41MDYwNSA3LjgxNzcgMS42ODE3OUwxMC4zMTc3IDQuMTgxNzlDMTAuNDkzNCA0LjM1NzUzIDEwLjQ5MzQgNC42NDI0NSAxMC4zMTc3IDQuODE4MTlDMTAuMTQyIDQuOTkzOTIgOS44NTcwNCA0Ljk5MzkyIDkuNjgxMyA0LjgxODE5TDcuOTQ5NSAzLjA4NjM4TDcuOTQ5NSAxMS45MTM2TDkuNjgxMyAxMC4xODE4QzkuODU3MDQgMTAuMDA2MSAxMC4xNDIgMTAuMDA2MSAxMC4zMTc3IDEwLjE4MThDMTAuNDkzNCAxMC4zNTc1IDEwLjQ5MzQgMTAuNjQyNCAxMC4zMTc3IDEwLjgxODJMNy44MTc3IDEzLjMxODJDNy43MzMzMSAxMy40MDI2IDcuNjE4ODUgMTMuNDUgNy40OTk1IDEzLjQ1QzcuMzgwMTUgMTMuNDUgNy4yNjU2OSAxMy40MDI2IDcuMTgxMyAxMy4zMTgyTDQuNjgxMyAxMC44MTgyQzQuNTA1NTcgMTAuNjQyNCA0LjUwNTU3IDEwLjM1NzUgNC42ODEzIDEwLjE4MThDNC44NTcwNCAxMC4wMDYxIDUuMTQxOTYgMTAuMDA2MSA1LjMxNzcgMTAuMTgxOEw3LjA0OTUgMTEuOTEzNkw3LjA0OTUgMy4wODYzOEw1LjMxNzcgNC44MTgxOUM1LjE0MTk2IDQuOTkzOTIgNC44NTcwNCA0Ljk5MzkyIDQuNjgxMyA0LjgxODE5QzQuNTA1NTcgNC42NDI0NSA0LjUwNTU3IDQuMzU3NTMgNC42ODEzIDQuMTgxNzlMNy4xODEzIDEuNjgxNzlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyeSA9IFtcImNvbG9yXCJdO1xudmFyIEhvYmJ5S25pZmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJ5KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTIuMzUzNiAxMy4zNTM2QzEyLjE1ODMgMTMuNTQ4OCAxMS44NDE3IDEzLjU0ODggMTEuNjQ2NSAxMy4zNTM2TDYuMzk2NDUgOC4xMDM1NUM2LjM2NDc4IDguMDcxODggNi4zMzgyNCA4LjAzNzAyIDYuMzE2ODUgOEg1LjAwMDAyQzQuNzg3MTkgOCA0LjU5NzY5IDcuODY1MjggNC41Mjc3NyA3LjY2NDI2TDIuMTI3NzcgMC43NjQyNzdDMi4wNTI2OCAwLjU0ODM4NyAyLjEzMzU1IDAuMzA5MDYxIDIuMzI0MiAwLjE4Mjk3MkMyLjUxNDg2IDAuMDU2ODgxOSAyLjc2Njc0IDAuMDc2MTMzNyAyLjkzNjAyIDAuMjI5NzM0TDguMzM2IDUuMTI5NzJDOC40NDA0NCA1LjIyNDQ5IDguNTAwMDEgNS4zNTg5NyA4LjUwMDAxIDUuNVY1LjgxNjg0QzguNTM3MDIgNS44MzgyNCA4LjU3MTg5IDUuODY0NzggOC42MDM1NiA1Ljg5NjQ1TDEzLjg1MzYgMTEuMTQ2NEMxNC4wNDg4IDExLjM0MTcgMTQuMDQ4OCAxMS42NTgzIDEzLjg1MzYgMTEuODUzNkwxMi4zNTM2IDEzLjM1MzZaTTguMjUgNi45NTcxMUw3LjQ1NzExIDcuNzVMMTIgMTIuMjkyOUwxMi43OTI5IDExLjVMOC4yNSA2Ljk1NzExWk0zLjcxNjY5IDIuMjg4NDVMNS4zNTU0OSA3SDYuMjkyOUw3LjUwMDAxIDUuNzkyODlWNS43MjE0NkwzLjcxNjY5IDIuMjg4NDVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyeiA9IFtcImNvbG9yXCJdO1xudmFyIEhvbWVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJ6KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy4wNzkyNiAwLjIyMjI1M0M3LjMxMjc1IC0wLjAwNzQzNCA3LjY4NzMgLTAuMDA3NDM0IDcuOTIwNzkgMC4yMjIyNTNMMTQuNjcwOCA2Ljg2MjI3QzE0LjkwNyA3LjA5NDY1IDE0LjkxMDEgNy40NzQ1MyAxNC42Nzc4IDcuNzEwNzZDMTQuNDQ1NCA3Ljk0NyAxNC4wNjU1IDcuOTUwMTIgMTMuODI5MyA3LjcxNzczTDEzIDYuOTAyMDFWMTIuNUMxMyAxMi43NzYxIDEyLjc3NjIgMTMgMTIuNSAxM0gyLjUwMDAyQzIuMjIzODggMTMgMi4wMDAwMiAxMi43NzYxIDIuMDAwMDIgMTIuNVY2LjkwMjAxTDEuMTcwNzkgNy43MTc3M0MwLjkzNDU1OCA3Ljk1MDEyIDAuNTU0NjcyIDcuOTQ3IDAuMzIyMjkgNy43MTA3NkMwLjA4OTkwNzkgNy40NzQ1MyAwLjA5MzAyODMgNy4wOTQ2NSAwLjMyOTI2IDYuODYyMjdMNy4wNzkyNiAwLjIyMjI1M1pNNy41MDAwMiAxLjQ5MTYzTDEyIDUuOTE4MzFWMTJIMTBWOC40OTk5OUMxMCA4LjIyMzg1IDkuNzc2MTcgNy45OTk5OSA5LjUwMDAyIDcuOTk5OTlINi41MDAwMkM2LjIyMzg4IDcuOTk5OTkgNi4wMDAwMiA4LjIyMzg1IDYuMDAwMDIgOC40OTk5OVYxMkgzLjAwMDAyVjUuOTE4MzFMNy41MDAwMiAxLjQ5MTYzWk03LjAwMDAyIDEySDkuMDAwMDJWOC45OTk5OUg3LjAwMDAyVjEyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMkEgPSBbXCJjb2xvclwiXTtcbnZhciBJY29uSmFyTG9nb0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMkEpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjUgMC4wMDMyOTU5QzYuODA0NzMgMC4wMDMyOTU5IDYuMjQ5NTMgMC4yODExMDYgNi4yNSAwLjc0OTk5NUM2LjI1IDAuOTk3MjU4IDYuNDI0NDYgMS4xMjAxNCA2LjU3Njg3IDEuMjI3NDlDNi42OTUwNyAxLjMxMDc0IDYuOCAxLjM4NDY1IDYuOCAxLjVDNi44IDEuNzA3MSA2LjA2MjI0IDEuNzQyNjQgNS4xOTc4OSAxLjc4NDI3QzMuOTc1NTMgMS44NDMxNCAyLjUgMS45MTQyMSAyLjUgMi41QzIuNSAyLjc3NjE0IDIuNzIzODYgMyAzIDNIMTJDMTIuMjc2MSAzIDEyLjUgMi43NzYxNCAxMi41IDIuNUMxMi41IDEuOTE0MjEgMTEuMDI0NSAxLjg0MzE0IDkuODAyMTEgMS43ODQyN0M4LjkzNzc2IDEuNzQyNjQgOC4yIDEuNzA3MSA4LjIgMS41QzguMiAxLjM4NDY1IDguMzA0OTMgMS4zMTA3NCA4LjQyMzEzIDEuMjI3NDlDOC41NzU1NCAxLjEyMDE0IDguNzUgMC45OTcyNTggOC43NSAwLjc0OTk5NUM4Ljc1MDQ3IDAuMjgxMTA2IDguMTk1MjcgMC4wMDMyOTU5IDcuNSAwLjAwMzI5NTlaTTIuODk0NTEgNi4xMjI2NkMyLjI1ODA2IDYuNTI0NzEgMS45MDQxNyA3LjMxMTE4IDIuMDI0NzMgOC4wNTU2TDIuODM1ODggMTIuNDc3MkMzLjAwOTkzIDEzLjM1NjIgMy43NjI5IDE0IDQuNjYwNjEgMTRIMTAuMzM3M0MxMS4yMzU0IDE0IDExLjk4ODQgMTMuMzU2MiAxMi4xNjI1IDEyLjQ3NzJMMTIuOTczNiA4LjA1NjA3QzEzLjA4OSA3LjMyMzU4IDEyLjgyODQgNi41MzI3NiAxMi4xMzMxIDYuMDkzNzNDMTEuNzI4MyA1LjgzMDEzIDExLjY0MTIgNS4zMzIzMSAxMi4xMzMxIDUuMTI3OTZDMTIuODI4NCA0Ljg2NDM1IDEyLjY5NDggNCAxMiA0SDEwLjMwMDFINi44MDAwNUgyLjk5OTk2QzIuMzA0NjkgNCAyLjE5ODc4IDQuODkzMjggMi44OTQ1MSA1LjE1Njg5QzMuMzg2NDIgNS4zMzIzMSAzLjI5OTM5IDUuODMwMTMgMi44OTQ1MSA2LjEyMjY2Wk04LjIwMDA2IDYuMjVDOC4yMDAwNiA1LjgxNzY5IDguMDg1NzIgNS4zNzYxNSA3LjkwNjM1IDVMNC4xMTA5MyA1QzQuMjA2MjYgNS4yMTMxMiA0LjI0MTkgNS40Mzg4OSA0LjIyOTA0IDUuNjU1MjFDNC4xOTUyMiA2LjIyNDEyIDMuODQ1ODcgNi42Njg5OSAzLjQ4MDE2IDYuOTMzMjJMMy40NTQ5MiA2Ljk1MTQ2TDMuNDI4NTggNi45NjgxQzMuMTM0MDcgNy4xNTQxNCAyLjk1ODAxIDcuNTM5ODkgMy4wMTA1OCA3Ljg4NzQ5TDMuODE3OTcgMTIuMjg4NkMzLjkwNTEzIDEyLjcxNTQgNC4yNjE0OCAxMyA0LjY2MDYxIDEzSDEwLjMzNzNDMTAuNzM3IDEzIDExLjA5MzIgMTIuNzE1MyAxMS4xODA0IDEyLjI4ODZMMTEuOTg3NCA3Ljg4OThDMTIuMDQ4IDcuNDgyNDcgMTEuODk1NCA3LjEyNjMxIDExLjU5OTIgNi45MzkyN0wxMS41ODc1IDYuOTMxODRMMTEuNTg3NSA2LjkzMTc2QzExLjE5NDcgNi42NzYwMiAxMC44MzMxIDYuMjI3ODUgMTAuNzk4NiA1LjY0Nzk4QzEwLjc4NDYgNS40MTIgMTAuODI2NCA1LjE5Mzk3IDEwLjkxMTIgNUg5LjA1NTE3QzkuMDE5ODcgNS4xNDYxMSA5LjAwMDA2IDUuMzEyMDEgOS4wMDAwNiA1LjVDOS4wMDAwNiA1Ljk3NDUgOS4yMTY3OSA2LjM3MTI3IDkuNDQzNjcgNi43ODY2MkM5LjY5Mjg0IDcuMjQyNzggOS45NTQyNSA3LjcyMTM2IDkuOTU0MjUgOC4zNDk5M0M5Ljk1NDI1IDkuMjY5OCA5LjQ5ODY4IDkuODQyMDUgOC42MjE4OSA5Ljg0MjA1QzguMTMyMDYgOS44NDIwNSA3LjU3ODE4IDkuNDYwOTcgNy41NzgxOCA4Ljc1NzgxQzcuNTc4MTggOC4zNTI3OSA3LjcxNTU4IDguMDE2NDYgNy44NjEyMSA3LjY1OTk4QzguMDI1NCA3LjI1ODA2IDguMjAwMDYgNi44MzA1MSA4LjIwMDA2IDYuMjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyQiA9IFtcImNvbG9yXCJdO1xudmFyIElkQ2FyZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMkIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xNCAxMS4wMDAxVjQuMDAwMDZMMSA0LjAwMDA2TDEgMTEuMDAwMUgxNFpNMTUgNC4wMDAwNlYxMS4wMDAxQzE1IDExLjU1MjMgMTQuNTUyMyAxMi4wMDAxIDE0IDEyLjAwMDFIMUMwLjQ0NzcxNSAxMi4wMDAxIDAgMTEuNTUyMyAwIDExLjAwMDFWNC4wMDAwNkMwIDMuNDQ3NzggMC40NDc3MTUgMy4wMDAwNiAxIDMuMDAwMDZIMTRDMTQuNTUyMyAzLjAwMDA2IDE1IDMuNDQ3NzggMTUgNC4wMDAwNlpNMiA1LjI1QzIgNS4xMTE5MyAyLjExMTkzIDUgMi4yNSA1SDUuNzVDNS44ODgwNyA1IDYgNS4xMTE5MyA2IDUuMjVWOS43NUM2IDkuODg4MDcgNS44ODgwNyAxMCA1Ljc1IDEwSDIuMjVDMi4xMTE5MyAxMCAyIDkuODg4MDcgMiA5Ljc1VjUuMjVaTTcuNSA3QzcuMjIzODYgNyA3IDcuMjIzODYgNyA3LjVDNyA3Ljc3NjE0IDcuMjIzODYgOCA3LjUgOEgxMC41QzEwLjc3NjEgOCAxMSA3Ljc3NjE0IDExIDcuNUMxMSA3LjIyMzg2IDEwLjc3NjEgNyAxMC41IDdINy41Wk03IDkuNUM3IDkuMjIzODYgNy4yMjM4NiA5IDcuNSA5SDEyLjVDMTIuNzc2MSA5IDEzIDkuMjIzODYgMTMgOS41QzEzIDkuNzc2MTQgMTIuNzc2MSAxMCAxMi41IDEwSDcuNUM3LjIyMzg2IDEwIDcgOS43NzYxNCA3IDkuNVpNNy41IDVDNy4yMjM4NiA1IDcgNS4yMjM4NiA3IDUuNUM3IDUuNzc2MTQgNy4yMjM4NiA2IDcuNSA2SDExLjVDMTEuNzc2MSA2IDEyIDUuNzc2MTQgMTIgNS41QzEyIDUuMjIzODYgMTEuNzc2MSA1IDExLjUgNUg3LjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyQyA9IFtcImNvbG9yXCJdO1xudmFyIEltYWdlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyQyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuNSAxSDEyLjVDMTMuMzI4NCAxIDE0IDEuNjcxNTcgMTQgMi41VjEyLjVDMTQgMTMuMzI4NCAxMy4zMjg0IDE0IDEyLjUgMTRIMi41QzEuNjcxNTcgMTQgMSAxMy4zMjg0IDEgMTIuNVYyLjVDMSAxLjY3MTU3IDEuNjcxNTcgMSAyLjUgMVpNMi41IDJDMi4yMjM4NiAyIDIgMi4yMjM4NiAyIDIuNVY4LjM2MzZMMy42ODE4IDYuNjgxOEMzLjc2ODA5IDYuNTk1NTEgMy44ODU3MiA2LjU0Nzk3IDQuMDA3NzQgNi41NTAwN0M0LjEyOTc1IDYuNTUyMTYgNC4yNDU2OCA2LjYwMzcyIDQuMzI4OTUgNi42OTI5M0w3Ljg3MzU1IDEwLjQ5MDFMMTAuNjgxOCA3LjY4MThDMTAuODU3NSA3LjUwNjA3IDExLjE0MjUgNy41MDYwNyAxMS4zMTgyIDcuNjgxOEwxMyA5LjM2MzZWMi41QzEzIDIuMjIzODYgMTIuNzc2MSAyIDEyLjUgMkgyLjVaTTIgMTIuNVY5LjYzNjRMMy45ODg4NyA3LjY0NzUzTDcuNTMxMSAxMS40NDIxTDguOTQxMTMgMTNIMi41QzIuMjIzODYgMTMgMiAxMi43NzYxIDIgMTIuNVpNMTIuNSAxM0gxMC4xNTVMOC40ODMzNiAxMS4xNTNMMTEgOC42MzY0TDEzIDEwLjYzNjRWMTIuNUMxMyAxMi43NzYxIDEyLjc3NjEgMTMgMTIuNSAxM1pNNi42NDkyMiA1LjVDNi42NDkyMiA1LjAzMDEzIDcuMDMwMTMgNC42NDkyMiA3LjUgNC42NDkyMkM3Ljk2OTg3IDQuNjQ5MjIgOC4zNTA3OCA1LjAzMDEzIDguMzUwNzggNS41QzguMzUwNzggNS45Njk4NyA3Ljk2OTg3IDYuMzUwNzggNy41IDYuMzUwNzhDNy4wMzAxMyA2LjM1MDc4IDYuNjQ5MjIgNS45Njk4NyA2LjY0OTIyIDUuNVpNNy41IDMuNzQ5MjJDNi41MzMwNyAzLjc0OTIyIDUuNzQ5MjIgNC41MzMwNyA1Ljc0OTIyIDUuNUM1Ljc0OTIyIDYuNDY2OTMgNi41MzMwNyA3LjI1MDc4IDcuNSA3LjI1MDc4QzguNDY2OTMgNy4yNTA3OCA5LjI1MDc4IDYuNDY2OTMgOS4yNTA3OCA1LjVDOS4yNTA3OCA0LjUzMzA3IDguNDY2OTMgMy43NDkyMiA3LjUgMy43NDkyMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJEID0gW1wiY29sb3JcIl07XG52YXIgSW5mb0NpcmNsZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJEKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy40OTk5MSAwLjg3Njg5MkMzLjg0MjIyIDAuODc2ODkyIDAuODc3MDc1IDMuODQyMDQgMC44NzcwNzUgNy40OTk3MkMwLjg3NzA3NSAxMS4xNTc0IDMuODQyMjIgMTQuMTIyNiA3LjQ5OTkxIDE0LjEyMjZDMTEuMTU3NiAxNC4xMjI2IDE0LjEyMjcgMTEuMTU3NCAxNC4xMjI3IDcuNDk5NzJDMTQuMTIyNyAzLjg0MjA0IDExLjE1NzYgMC44NzY4OTIgNy40OTk5MSAwLjg3Njg5MlpNMS44MjcwNyA3LjQ5OTcyQzEuODI3MDcgNC4zNjY3MSA0LjM2Njg5IDEuODI2ODkgNy40OTk5MSAxLjgyNjg5QzEwLjYzMjkgMS44MjY4OSAxMy4xNzI3IDQuMzY2NzEgMTMuMTcyNyA3LjQ5OTcyQzEzLjE3MjcgMTAuNjMyNyAxMC42MzI5IDEzLjE3MjYgNy40OTk5MSAxMy4xNzI2QzQuMzY2ODkgMTMuMTcyNiAxLjgyNzA3IDEwLjYzMjcgMS44MjcwNyA3LjQ5OTcyWk04LjI0OTkyIDQuNDk5OTlDOC4yNDk5MiA0LjkxNDIgNy45MTQxMyA1LjI0OTk5IDcuNDk5OTIgNS4yNDk5OUM3LjA4NTcxIDUuMjQ5OTkgNi43NDk5MiA0LjkxNDIgNi43NDk5MiA0LjQ5OTk5QzYuNzQ5OTIgNC4wODU3NyA3LjA4NTcxIDMuNzQ5OTkgNy40OTk5MiAzLjc0OTk5QzcuOTE0MTMgMy43NDk5OSA4LjI0OTkyIDQuMDg1NzcgOC4yNDk5MiA0LjQ5OTk5Wk02LjAwMDAzIDUuOTk5OTlINi41MDAwM0g3LjUwMDAzQzcuNzc2MTggNS45OTk5OSA4LjAwMDAzIDYuMjIzODQgOC4wMDAwMyA2LjQ5OTk5VjkuOTk5OTlIOC41MDAwM0g5LjAwMDAzVjExSDguNTAwMDNINy41MDAwM0g2LjUwMDAzSDYuMDAwMDNWOS45OTk5OUg2LjUwMDAzSDcuMDAwMDNWNi45OTk5OUg2LjUwMDAzSDYuMDAwMDNWNS45OTk5OVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJFID0gW1wiY29sb3JcIl07XG52YXIgSW5wdXRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJFKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNi41IDFDNi4yMjM4NiAxIDYgMS4yMjM4NiA2IDEuNUM2IDEuNzc2MTQgNi4yMjM4NiAyIDYuNSAyQzcuMTI2NzEgMiA3LjQ1NzE4IDIuMjAwMjggNy42NTU2MyAyLjQ3ODEyQzcuODc4MSAyLjc4OTU3IDggMy4yODgzNyA4IDRWMTFDOCAxMS43MTE2IDcuODc4MSAxMi4yMTA0IDcuNjU1NjMgMTIuNTIxOUM3LjQ1NzE4IDEyLjc5OTcgNy4xMjY3MSAxMyA2LjUgMTNDNi4yMjM4NiAxMyA2IDEzLjIyMzkgNiAxMy41QzYgMTMuNzc2MSA2LjIyMzg2IDE0IDYuNSAxNEM3LjM3MzI5IDE0IDguMDQyODIgMTMuNzAwMyA4LjQ2OTM3IDEzLjEwMzFDOC40Nzk3NiAxMy4wODg2IDguNDg5OTcgMTMuMDczOSA4LjUgMTMuMDU5MUM4LjUxMDAzIDEzLjA3MzkgOC41MjAyNCAxMy4wODg2IDguNTMwNjMgMTMuMTAzMUM4Ljk1NzE4IDEzLjcwMDMgOS42MjY3MSAxNCAxMC41IDE0QzEwLjc3NjEgMTQgMTEgMTMuNzc2MSAxMSAxMy41QzExIDEzLjIyMzkgMTAuNzc2MSAxMyAxMC41IDEzQzkuODczMjkgMTMgOS41NDI4MiAxMi43OTk3IDkuMzQ0MzcgMTIuNTIxOUM5LjEyMTkgMTIuMjEwNCA5IDExLjcxMTYgOSAxMVY0QzkgMy4yODgzNyA5LjEyMTkgMi43ODk1NyA5LjM0NDM3IDIuNDc4MTJDOS41NDI4MiAyLjIwMDI4IDkuODczMjkgMiAxMC41IDJDMTAuNzc2MSAyIDExIDEuNzc2MTQgMTEgMS41QzExIDEuMjIzODYgMTAuNzc2MSAxIDEwLjUgMUM5LjYyNjcxIDEgOC45NTcxOCAxLjI5OTcyIDguNTMwNjMgMS44OTY4OEM4LjUyMDI0IDEuOTExNDMgOC41MTAwMyAxLjkyNjExIDguNSAxLjk0MDlDOC40ODk5NyAxLjkyNjExIDguNDc5NzYgMS45MTE0MyA4LjQ2OTM3IDEuODk2ODhDOC4wNDI4MiAxLjI5OTcyIDcuMzczMjkgMSA2LjUgMVpNMTQgNUgxMVY0SDE0QzE0LjU1MjMgNCAxNSA0LjQ0NzcyIDE1IDVWMTBDMTUgMTAuNTUyMyAxNC41NTIzIDExIDE0IDExSDExVjEwSDE0VjVaTTYgNFY1SDFMMSAxMEg2VjExSDFDMC40NDc3MTUgMTEgMCAxMC41NTIzIDAgMTBWNUMwIDQuNDQ3NzIgMC40NDc3MTUgNCAxIDRINlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJGID0gW1wiY29sb3JcIl07XG52YXIgSW5zdGFncmFtTG9nb0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMkYpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGQ6IFwiTTEyLjkwOTEgMTIuOTA5QzEzLjIzNjUgMTIuNTgxNyAxMy40OTE4IDEyLjE4OTUgMTMuNjU4OCAxMS43NTc3QzEzLjgxOTUgMTEuMzQ0MyAxMy45Mjk0IDEwLjg3MTggMTMuOTYxIDEwLjE3OTlDMTMuOTkyNiA5LjQ4NjY1IDE0LjAwMDEgOS4yNjUyOSAxNC4wMDAxIDcuNTAwMDFDMTQuMDAwMSA1LjczNDczIDEzLjk5MjYgNS41MTMyOCAxMy45NjEgNC44MjAwOEMxMy45Mjk0IDQuMTI4MjEgMTMuODE5NSAzLjY1NTczIDEzLjY1ODggMy4yNDIyOEMxMy40OTU2IDIuODA4NTcgMTMuMjM5OCAyLjQxNTY3IDEyLjkwOTEgMi4wOTFDMTIuNTg0NCAxLjc2MDI4IDEyLjE5MTUgMS41MDQzNyAxMS43NTc4IDEuMzQxMTNDMTEuMzQ0MyAxLjE4MDU2IDEwLjg3MTggMS4wNzA3IDEwLjE3OTkgMS4wMzkyNEM5LjQ4Njc1IDEuMDA3NDggOS4yNjUzNyAxIDcuNTAwMDYgMUM1LjczNDc2IDEgNS41MTMzMyAxLjAwNzQ4IDQuODIwMTQgMS4wMzkxMkM0LjEyODI2IDEuMDcwNyAzLjY1NTc4IDEuMTgwNTYgMy4yNDIzMyAxLjM0MTI1QzIuODA4NjIgMS41MDQ0NyAyLjQxNTczIDEuNzYwMzIgMi4wOTEwNSAyLjA5MDk4QzEuNzYwMzIgMi40MTU2MyAxLjUwNDQgMi44MDg1MiAxLjM0MTEzIDMuMjQyMjVDMS4xODA1NiAzLjY1NTczIDEuMDcwNyA0LjEyODIxIDEuMDM5MjQgNC44MjAwOEMxLjAwNzQ4IDUuNTEzMjggMSA1LjczNDcxIDEgNy41MDAwMUMxIDkuMjY1MzIgMS4wMDc0OCA5LjQ4Njc1IDEuMDM5MjQgMTAuMTc5OUMxLjA3MDgzIDEwLjg3MTggMS4xODA2OSAxMS4zNDQzIDEuMzQxMzggMTEuNzU3N0MxLjUwNDYgMTIuMTkxNSAxLjc2MDQ1IDEyLjU4NDMgMi4wOTExMSAxMi45MDlDMi40MTU3OCAxMy4yMzk3IDIuODA4NjcgMTMuNDk1NSAzLjI0MjM4IDEzLjY1ODdDMy42NTU4NiAxMy44MTk0IDQuMTI4MzQgMTMuOTI5MyA0LjgyMDE5IDEzLjk2MDlDNS41MTM0OCAxMy45OTI1IDUuNzM0ODMgMTQgNy41MDAxMiAxNEM5LjI2NTQgMTQgOS40ODY4NSAxMy45OTI1IDEwLjE4IDEzLjk2MDlDMTAuODcxOSAxMy45MjkzIDExLjM0NDQgMTMuODE5NCAxMS43NTc4IDEzLjY1ODdDMTIuMTg5NiAxMy40OTE3IDEyLjU4MTggMTMuMjM2NCAxMi45MDkxIDEyLjkwOVpNMS45OTk0OSA2LjczNDk2QzEuOTk5NzQgNi45NDUyNCAyLjAwMDA1IDcuMTk1NDMgMi4wMDAwNSA3LjUwMDAyQzIuMDAwMDUgNy44MDQ2MSAxLjk5OTc0IDguMDU0OCAxLjk5OTQ5IDguMjY1MDdDMS45OTg0OSA5LjA4NTk2IDEuOTk4MjQgOS4yOTg1NiAyLjAxOTYzIDkuNzY1NUMyLjA0NjI1IDEwLjM1MDkgMi4wNzgyMyAxMC43ODExIDIuMTc1ODggMTEuMTA1M0MyLjI2OTc2IDExLjQxNyAyLjM3NTA1IDExLjczNDIgMi43MTg4IDEyLjExNzFDMy4wNjI1NSAxMi40OTk5IDMuMzk0MTEgMTIuNjczMyAzLjgxNjQ1IDEyLjgwMDdDNC4yMzg3OSAxMi45MjggNC43Njk2IDEyLjk1NTQgNS4yMzA1MiAxMi45NzY0QzUuNzUzMzIgMTMuMDAwMyA1Ljk2MDUyIDEzLjAwMDIgNy4wNTcxNCAxMi45OTk5TDcuNTAwMDYgMTIuOTk5OUM3Ljc5MzA0IDEyLjk5OTkgOC4wMzU2OSAxMy4wMDAxIDguMjQwOSAxMy4wMDA0QzkuMDgxOTUgMTMuMDAxMyA5LjI5NDI1IDEzLjAwMTUgOS43NjU3NSAxMi45Nzk5QzEwLjM1MTIgMTIuOTUzMyAxMC43ODE0IDEyLjkyMTMgMTEuMTA1NiAxMi44MjM3QzExLjQxNzMgMTIuNzI5OCAxMS43MzQ1IDEyLjYyNDUgMTIuMTE3MyAxMi4yODA3QzEyLjUwMDEgMTEuOTM3IDEyLjY3MzUgMTEuNjA1NCAxMi44MDA5IDExLjE4MzFDMTIuOTI4MyAxMC43NjA3IDEyLjk1NTcgMTAuMjI5OSAxMi45NzY3IDkuNzY5MDJDMTMuMDAwNSA5LjI0Njg5IDEzLjAwMDQgOS4wNDAyNyAxMy4wMDAyIDcuOTQ3NDlWNy45NDczOEwxMy4wMDAxIDcuNTAwMzlMMTMuMDAwMSA3LjA1NzQ3QzEzLjAwMDQgNS45NjA4NSAxMy4wMDA1IDUuNzUzNjUgMTIuOTc2NiA1LjIzMDg1QzEyLjk1NTYgNC43Njk5MyAxMi45MjgyIDQuMjM5MTIgMTIuODAwOSAzLjgxNjc4QzEyLjY3MzUgMy4zOTQ0NSAxMi41MDAxIDMuMDYyODggMTIuMTE3MyAyLjcxOTEzQzExLjczNDUgMi4zNzUzOCAxMS40MTcyIDIuMjcwMDkgMTEuMTA1NiAyLjE3NjIxQzEwLjc4MTMgMi4wNzg1NiAxMC4zNTExIDIuMDQ2NTggOS43NjU3MSAyLjAxOTk2QzkuMjk0MjEgMS45OTgzNiA5LjA4MTk0IDEuOTk4NTkgOC4yNDA5MiAxLjk5OTUxSDguMjQwOTJDOC4wMzU3IDEuOTk5NzQgNy43OTMwNSAyLjAwMDAxIDcuNTAwMDYgMi4wMDAwMUw3LjA1NzA0IDEuOTk5OTNDNS45NjA1MSAxLjk5OTY0IDUuNzUzMzEgMS45OTk1OCA1LjIzMDUyIDIuMDIzNDNDNC43Njk2IDIuMDQ0NDYgNC4yMzg3OSAyLjA3MTgzIDMuODE2NDUgMi4xOTkyMUMzLjM5NDExIDIuMzI2NTkgMy4wNjI1NSAyLjQ5OTk5IDIuNzE4OCAyLjg4MjgxQzIuMzc1MDUgMy4yNjU2MiAyLjI2OTc2IDMuNTgyODYgMi4xNzU4OCAzLjg5NDUzQzIuMDc4MjMgNC4yMTg3NCAyLjA0NjI1IDQuNjQ4OTQgMi4wMTk2MyA1LjIzNDM3QzEuOTk4MjQgNS43MDEzMSAxLjk5ODQ5IDUuOTE0MDEgMS45OTk0OSA2LjczNDk2Wk03LjQ5OTk2IDUuMjUwMTVDNi4yNTc0MSA1LjI1MDE1IDUuMjUwMTIgNi4yNTc0NCA1LjI1MDEyIDcuNDk5OTlDNS4yNTAxMiA4Ljc0MjU0IDYuMjU3NDEgOS43NDk4MyA3LjQ5OTk2IDkuNzQ5ODNDOC43NDI1MSA5Ljc0OTgzIDkuNzQ5OCA4Ljc0MjU0IDkuNzQ5OCA3LjQ5OTk5QzkuNzQ5OCA2LjI1NzQ0IDguNzQyNTEgNS4yNTAxNSA3LjQ5OTk2IDUuMjUwMTVaTTQuMjUwMTIgNy40OTk5OUM0LjI1MDEyIDUuNzA1MTUgNS43MDUxMiA0LjI1MDE1IDcuNDk5OTYgNC4yNTAxNUM5LjI5NDggNC4yNTAxNSAxMC43NDk4IDUuNzA1MTUgMTAuNzQ5OCA3LjQ5OTk5QzEwLjc0OTggOS4yOTQ4MyA5LjI5NDggMTAuNzQ5OCA3LjQ5OTk2IDEwLjc0OThDNS43MDUxMiAxMC43NDk4IDQuMjUwMTIgOS4yOTQ4MyA0LjI1MDEyIDcuNDk5OTlaTTEwLjk2OTcgNC43ODAzQzExLjM4MzkgNC43ODAzIDExLjcxOTcgNC40NDQ1MiAxMS43MTk3IDQuMDMwM0MxMS43MTk3IDMuNjE2MDkgMTEuMzgzOSAzLjI4MDMgMTAuOTY5NyAzLjI4MDNDMTAuNTU1NSAzLjI4MDMgMTAuMjE5NyAzLjYxNjA5IDEwLjIxOTcgNC4wMzAzQzEwLjIxOTcgNC40NDQ1MiAxMC41NTU1IDQuNzgwMyAxMC45Njk3IDQuNzgwM1pcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyRyA9IFtcImNvbG9yXCJdO1xudmFyIEtleWJvYXJkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyRyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgZDogXCJNMTMuNSA0SDEuNUMxLjIyMzg2IDQgMSA0LjIyMzg2IDEgNC41VjEwLjVDMSAxMC43NzYxIDEuMjIzODYgMTEgMS41IDExSDEzLjVDMTMuNzc2MSAxMSAxNCAxMC43NzYxIDE0IDEwLjVWNC41QzE0IDQuMjIzODYgMTMuNzc2MSA0IDEzLjUgNFpNMS41IDNDMC42NzE1NzMgMyAwIDMuNjcxNTcgMCA0LjVWMTAuNUMwIDExLjMyODQgMC42NzE1NzMgMTIgMS41IDEySDEzLjVDMTQuMzI4NCAxMiAxNSAxMS4zMjg0IDE1IDEwLjVWNC41QzE1IDMuNjcxNTcgMTQuMzI4NCAzIDEzLjUgM0gxLjVaTTIgNUgzVjZIMlY1Wk01IDVINFY2SDVWNVpNNiA1SDdWNkg2VjVaTTkgNUg4VjZIOVY1Wk0xMCA1SDExVjZIMTBWNVpNMTMgNUgxMlY2SDEzVjVaTTExIDdIMTJWOEgxMVY3Wk0xMyA5SDEyVjEwSDEzVjlaTTkgN0gxMFY4SDlWN1pNOCA3SDdWOEg4VjdaTTUgN0g2VjhINVY3Wk00IDdIM1Y4SDRWN1pNMiA5SDNWMTBIMlY5Wk0xMSA5SDRWMTBIMTFWOVpcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQySCA9IFtcImNvbG9yXCJdO1xudmFyIExhcFRpbWVySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQySCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUuNDk5OTggMC41QzUuNDk5OTggMC4yMjM4NTggNS43MjM4MyAwIDUuOTk5OTggMEg3LjQ5OTk4SDguOTk5OThDOS4yNzYxMiAwIDkuNDk5OTggMC4yMjM4NTggOS40OTk5OCAwLjVDOS40OTk5OCAwLjc3NjE0MiA5LjI3NjEyIDEgOC45OTk5OCAxSDcuOTk5OThWMi4xMTkyMkM5LjA5ODMyIDIuMjA0MDkgMTAuMTE5IDIuNTY2MjIgMTAuOTkyIDMuMTM1NzJDMTEuMDExNiAzLjEwODUxIDExLjAzMzYgMy4wODI1MiAxMS4wNTggMy4wNTgwNkwxMi4wNTggMi4wNTgwNkMxMi4zMDIxIDEuODEzOTggMTIuNjk3OCAxLjgxMzk4IDEyLjk0MTkgMi4wNTgwNkMxMy4xODYgMi4zMDIxNCAxMy4xODYgMi42OTc4NiAxMi45NDE5IDIuOTQxOTRMMTEuOTY3IDMuOTE2ODJDMTMuMTU5NSA1LjA3OTI1IDEzLjkgNi43MDMxNCAxMy45IDguNDk5OThDMTMuOSAxMi4wMzQ2IDExLjAzNDYgMTQuOSA3LjQ5OTk4IDE0LjlDMy45NjUzNSAxNC45IDEuMDk5OTggMTIuMDM0NiAxLjA5OTk4IDguNDk5OThDMS4wOTk5OCA1LjEzMzYxIDMuNjk5MDQgMi4zNzQzIDYuOTk5OTggMi4xMTkyMlYxSDUuOTk5OThDNS43MjM4MyAxIDUuNDk5OTggMC43NzYxNDIgNS40OTk5OCAwLjVaTTIuMDk5OTggOC40OTk5OEMyLjA5OTk4IDUuNTE3NjQgNC41MTc2NCAzLjA5OTk4IDcuNDk5OTggMy4wOTk5OEMxMC40ODIzIDMuMDk5OTggMTIuOSA1LjUxNzY0IDEyLjkgOC40OTk5OEMxMi45IDExLjQ4MjMgMTAuNDgyMyAxMy45IDcuNDk5OTggMTMuOUM0LjUxNzY0IDEzLjkgMi4wOTk5OCAxMS40ODIzIDIuMDk5OTggOC40OTk5OFpNNy40OTk5OCA4LjQ5OTk4VjQuMDk5OThDNS4wNjk5MiA0LjA5OTk4IDMuMDk5OTggNi4wNjk5MiAzLjA5OTk4IDguNDk5OThDMy4wOTk5OCAxMC45MyA1LjA2OTkyIDEyLjkgNy40OTk5OCAxMi45QzguNzE1IDEyLjkgOS44MTUgMTIuNDA3NSAxMC42MTEyIDExLjYxMTJMNy40OTk5OCA4LjQ5OTk4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMkkgPSBbXCJjb2xvclwiXTtcbnZhciBMYXB0b3BJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJJKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMiA0LjI1QzIgNC4xMTE5MyAyLjExMTkzIDQgMi4yNSA0SDEyLjc1QzEyLjg4ODEgNCAxMyA0LjExMTkzIDEzIDQuMjVWMTEuNUgyVjQuMjVaTTIuMjUgM0MxLjU1OTY0IDMgMSAzLjU1OTY0IDEgNC4yNVYxMkgwVjEyLjVDMCAxMi43NzYxIDAuMjIzODU4IDEzIDAuNSAxM0gxNC41QzE0Ljc3NjEgMTMgMTUgMTIuNzc2MSAxNSAxMi41VjEySDE0VjQuMjVDMTQgMy41NTk2NCAxMy40NDA0IDMgMTIuNzUgM0gyLjI1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMkogPSBbXCJjb2xvclwiXTtcbnZhciBMYXllcnNJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJKKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy43NTQzMiAwLjgxOTUzN0M3LjU5NzQyIDAuNzI2ODIxIDcuNDAyNSAwLjcyNjgyMSA3LjI0NTU5IDAuODE5NTM3TDEuNzQ1NTkgNC4wNjk1NEMxLjU5MzM2IDQuMTU5NDkgMS40OTk5NiA0LjMyMzE3IDEuNDk5OTYgNC41QzEuNDk5OTYgNC42NzY4MyAxLjU5MzM2IDQuODQwNTEgMS43NDU1OSA0LjkzMDQ2TDcuMjQ1NTkgOC4xODA0NkM3LjQwMjUgOC4yNzMxOCA3LjU5NzQyIDguMjczMTggNy43NTQzMiA4LjE4MDQ2TDEzLjI1NDMgNC45MzA0NkMxMy40MDY2IDQuODQwNTEgMTMuNSA0LjY3NjgzIDEzLjUgNC41QzEzLjUgNC4zMjMxNyAxMy40MDY2IDQuMTU5NDkgMTMuMjU0MyA0LjA2OTU0TDcuNzU0MzIgMC44MTk1MzdaTTcuNDk5OTYgNy4xNjkyM0wyLjk4MjggNC41TDcuNDk5OTYgMS44MzA3N0wxMi4wMTcxIDQuNUw3LjQ5OTk2IDcuMTY5MjNaTTEuNTY5NSA3LjQ5NTY0QzEuNzA5OTggNy4yNTc5IDIuMDE2NTkgNy4xNzkwNiAyLjI1NDMyIDcuMzE5NTRMNy40OTk5NiAxMC40MTkyTDEyLjc0NTYgNy4zMTk1NEMxMi45ODMzIDcuMTc5MDYgMTMuMjg5OSA3LjI1NzkgMTMuNDMwNCA3LjQ5NTY0QzEzLjU3MDkgNy43MzMzNyAxMy40OTIxIDguMDM5OTggMTMuMjU0MyA4LjE4MDQ2TDcuNzU0MzIgMTEuNDMwNUM3LjU5NzQyIDExLjUyMzIgNy40MDI1IDExLjUyMzIgNy4yNDU1OSAxMS40MzA1TDEuNzQ1NTkgOC4xODA0NkMxLjUwNzg2IDguMDM5OTggMS40MjkwMSA3LjczMzM3IDEuNTY5NSA3LjQ5NTY0Wk0xLjU2OTQ5IDEwLjQ5NTZDMS43MDk5OCAxMC4yNTc5IDIuMDE2NTggMTAuMTc5MSAyLjI1NDMyIDEwLjMxOTVMNy40OTk5NiAxMy40MTkyTDEyLjc0NTYgMTAuMzE5NUMxMi45ODMzIDEwLjE3OTEgMTMuMjg5OSAxMC4yNTc5IDEzLjQzMDQgMTAuNDk1NkMxMy41NzA5IDEwLjczMzQgMTMuNDkyMSAxMS4wNCAxMy4yNTQzIDExLjE4MDVMNy43NTQzMiAxNC40MzA1QzcuNTk3NDIgMTQuNTIzMiA3LjQwMjUgMTQuNTIzMiA3LjI0NTU5IDE0LjQzMDVMMS43NDU1OSAxMS4xODA1QzEuNTA3ODUgMTEuMDQgMS40MjkwMSAxMC43MzM0IDEuNTY5NDkgMTAuNDk1NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJLID0gW1wiY29sb3JcIl07XG52YXIgTGF5b3V0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQySyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTkgMkg2VjEzSDlWMlpNMTAgMlYxM0gxMi41QzEyLjc3NjEgMTMgMTMgMTIuNzc2MSAxMyAxMi41VjIuNUMxMyAyLjIyMzg2IDEyLjc3NjEgMiAxMi41IDJIMTBaTTIuNSAySDVWMTNIMi41QzIuMjIzODYgMTMgMiAxMi43NzYxIDIgMTIuNVYyLjVDMiAyLjIyMzg2IDIuMjIzODYgMiAyLjUgMlpNMi41IDFDMS42NzE1NyAxIDEgMS42NzE1NyAxIDIuNVYxMi41QzEgMTMuMzI4NCAxLjY3MTU3IDE0IDIuNSAxNEgxMi41QzEzLjMyODQgMTQgMTQgMTMuMzI4NCAxNCAxMi41VjIuNUMxNCAxLjY3MTU3IDEzLjMyODQgMSAxMi41IDFIMi41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMkwgPSBbXCJjb2xvclwiXTtcbnZhciBMZXR0ZXJDYXNlQ2FwaXRhbGl6ZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMkwpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zLjY4OTc5IDIuNzVDMy44OTY2NyAyLjc0OTc5IDQuMDgyMzIgMi44NzcwMSA0LjE1Njc5IDMuMDcwMDNMNy4zNjY2MiAxMS4zOUM3LjQ2NjAyIDExLjY0NzcgNy4zMzc3NCAxMS45MzcxIDcuMDgwMSAxMi4wMzY1QzYuODIyNDcgMTIuMTM1OSA2LjUzMzA0IDEyLjAwNzYgNi40MzM2NSAxMS43NUw1LjM4MjUgOS4wMjUzN0gyLjAxMTMzTDAuOTY2OTkyIDExLjc0OUMwLjg2ODEyOCAxMi4wMDY4IDAuNTc4OTY0IDEyLjEzNTcgMC4zMjExMjYgMTIuMDM2OUMwLjA2MzI4NzggMTEuOTM4IC0wLjA2NTU4NjQgMTEuNjQ4OCAwLjAzMzI3NzQgMTEuMzkxTDMuMjIzNDQgMy4wNzA5OUMzLjI5NzUxIDIuODc3ODIgMy40ODI5IDIuNzUwMjEgMy42ODk3OSAyLjc1Wk0zLjY5MTc0IDQuNjQyODRMNS4wNTQ1OCA4LjE3NTM3SDIuMzM3MjRMMy42OTE3NCA0LjY0Mjg0Wk0xMC44OTg5IDUuMjA3MDNDOS4yNTgxOCA1LjIwNzAzIDguMDA5MTUgNi42ODU2OSA4LjAwOTE1IDguNjA5NzJDOC4wMDkxNSAxMC42MzM3IDkuMzU4MTggMTIuMDEyNCAxMC44OTg5IDEyLjAxMjRDMTEuNzIxNCAxMi4wMTI0IDEyLjU3NDQgMTEuNjY5MiAxMy4xNTQzIDExLjAyMTlWMTEuNTNDMTMuMTU0MyAxMS43Nzg1IDEzLjM1NTcgMTEuOTggMTMuNjA0MyAxMS45OEMxMy44NTI4IDExLjk4IDE0LjA1NDMgMTEuNzc4NSAxNC4wNTQzIDExLjUzVjUuNzJDMTQuMDU0MyA1LjQ3MTQ3IDEzLjg1MjggNS4yNyAxMy42MDQzIDUuMjdDMTMuMzU1NyA1LjI3IDEzLjE1NDMgNS40NzE0NyAxMy4xNTQzIDUuNzJWNi4yMjMxN0MxMi42MDU0IDUuNjAwOTUgMTEuNzkyNCA1LjIwNzAzIDEwLjg5ODkgNS4yMDcwM1pNMTMuMTU0MyA5Ljc5ODIzVjcuMzAxOTVDMTIuNzYzOSA2LjU4MTAxIDExLjk0MTQgNi4wNTc1NyAxMS4wODY4IDYuMDU3NTdDMTAuMTA4OCA2LjA1NzU3IDkuMDM1MDMgNi45NjU4MSA5LjAzNTAzIDguNjA5NTVDOS4wMzUwMyAxMC4xNTMzIDEwLjAwODggMTEuMTYxNSAxMS4wODY4IDExLjE2MTVDMTEuOTcwMSAxMS4xNjE1IDEyLjc3MTkgMTAuNDk1MiAxMy4xNTQzIDkuNzk4MjNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyTSA9IFtcImNvbG9yXCJdO1xudmFyIExldHRlckNhc2VMb3dlcmNhc2VJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJNKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy42OTg5OSA1LjIwNzAzQzIuMDU4MjMgNS4yMDcwMyAwLjgwOTIwNCA2LjY4NTY5IDAuODA5MjA0IDguNjA5NzJDMC44MDkyMDQgMTAuNjMzNyAyLjE1ODIzIDEyLjAxMjQgMy42OTg5OSAxMi4wMTI0QzQuNTIxMjYgMTIuMDEyNCA1LjM3NDAyIDExLjY2OTMgNS45NTM5IDExLjAyMjNWMTEuNTNDNS45NTM5IDExLjc3ODUgNi4xNTUzNyAxMS45OCA2LjQwMzkgMTEuOThDNi42NTI0MyAxMS45OCA2Ljg1MzkgMTEuNzc4NSA2Ljg1MzkgMTEuNTNWNS43MjAwMUM2Ljg1MzkgNS40NzE0OSA2LjY1MjQzIDUuMjcwMDEgNi40MDM5IDUuMjcwMDFDNi4xNTUzNyA1LjI3MDAxIDUuOTUzOSA1LjQ3MTQ5IDUuOTUzOSA1LjcyMDAxVjYuMjIyNjlDNS40MDUwNiA1LjYwMDc1IDQuNTkyMTggNS4yMDcwMyAzLjY5ODk5IDUuMjA3MDNaTTUuOTUzOSA5Ljc5OVY3LjMwMTE3QzUuNTYzMzkgNi41ODA2NCA0Ljc0MTE4IDYuMDU3NTcgMy44ODY4IDYuMDU3NTdDMi45MDg5IDYuMDU3NTcgMS44MzUwOCA2Ljk2NTgxIDEuODM1MDggOC42MDk1NUMxLjgzNTA4IDEwLjE1MzMgMi44MDg4OSAxMS4xNjE1IDMuODg2OCAxMS4xNjE1QzQuNzY5ODQgMTEuMTYxNSA1LjU3MTQxIDEwLjQ5NTcgNS45NTM5IDkuNzk5Wk0xMC43OTkgNS4yMDcwM0M5LjE1ODIzIDUuMjA3MDMgNy45MDkyIDYuNjg1NjkgNy45MDkyIDguNjA5NzJDNy45MDkyIDEwLjYzMzcgOS4yNTgyMyAxMi4wMTI0IDEwLjc5OSAxMi4wMTI0QzExLjYyMTUgMTIuMDEyNCAxMi40NzQ0IDExLjY2OTIgMTMuMDU0MyAxMS4wMjE4VjExLjUzQzEzLjA1NDMgMTEuNzc4NSAxMy4yNTU4IDExLjk4IDEzLjUwNDMgMTEuOThDMTMuNzUyOSAxMS45OCAxMy45NTQzIDExLjc3ODUgMTMuOTU0MyAxMS41M1Y1LjcyQzEzLjk1NDMgNS40NzE0NyAxMy43NTI5IDUuMjcgMTMuNTA0MyA1LjI3QzEzLjI1NTggNS4yNyAxMy4wNTQzIDUuNDcxNDcgMTMuMDU0MyA1LjcyVjYuMjIzMThDMTIuNTA1NSA1LjYwMDk1IDExLjY5MjQgNS4yMDcwMyAxMC43OTkgNS4yMDcwM1pNMTMuMDU0MyA5Ljc5ODIyVjcuMzAxOTZDMTIuNjY0IDYuNTgxMDIgMTEuODQxNSA2LjA1NzU3IDEwLjk4NjggNi4wNTc1N0MxMC4wMDg5IDYuMDU3NTcgOC45MzUwOCA2Ljk2NTgxIDguOTM1MDggOC42MDk1NUM4LjkzNTA4IDEwLjE1MzMgOS45MDg4OSAxMS4xNjE1IDEwLjk4NjggMTEuMTYxNUMxMS44NzAyIDExLjE2MTUgMTIuNjcyIDEwLjQ5NTIgMTMuMDU0MyA5Ljc5ODIyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMk4gPSBbXCJjb2xvclwiXTtcbnZhciBMZXR0ZXJDYXNlVG9nZ2xlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyTik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTExLjI4OTUgMi43NUMxMS40OTY0IDIuNzQ5NzkgMTEuNjgyMSAyLjg3NzAxIDExLjc1NjUgMy4wNzAwM0wxNC45NjY0IDExLjM5QzE1LjA2NTcgMTEuNjQ3NyAxNC45Mzc1IDExLjkzNzEgMTQuNjc5OCAxMi4wMzY1QzE0LjQyMjIgMTIuMTM1OSAxNC4xMzI4IDEyLjAwNzYgMTQuMDMzNCAxMS43NUwxMi45ODIyIDkuMDI1MzdIOS42MTEwNkw4LjU2NjcyIDExLjc0OUM4LjQ2Nzg2IDEyLjAwNjggOC4xNzg3IDEyLjEzNTcgNy45MjA4NiAxMi4wMzY5QzcuNjYzMDIgMTEuOTM4IDcuNTM0MTUgMTEuNjQ4OCA3LjYzMzAxIDExLjM5MUwxMC44MjMyIDMuMDcwOTlDMTAuODk3MiAyLjg3NzgyIDExLjA4MjYgMi43NTAyMSAxMS4yODk1IDIuNzVaTTExLjI5MTUgNC42NDI4NEwxMi42NTQzIDguMTc1MzdIOS45MzY5OEwxMS4yOTE1IDQuNjQyODRaTTIuODk4OTUgNS4yMDcwM0MxLjI1ODE4IDUuMjA3MDMgMC4wMDkxNTUyNyA2LjY4NTY5IDAuMDA5MTU1MjcgOC42MDk3MkMwLjAwOTE1NTI3IDEwLjYzMzcgMS4zNTgxOCAxMi4wMTI0IDIuODk4OTUgMTIuMDEyNEMzLjcyMTQxIDEyLjAxMjQgNC41NzQzOCAxMS42NjkyIDUuMTU0MjcgMTEuMDIxOVYxMS41M0M1LjE1NDI3IDExLjc3ODUgNS4zNTU3NCAxMS45OCA1LjYwNDI3IDExLjk4QzUuODUyOCAxMS45OCA2LjA1NDI3IDExLjc3ODUgNi4wNTQyNyAxMS41M1Y1LjcyQzYuMDU0MjcgNS40NzE0NyA1Ljg1MjggNS4yNyA1LjYwNDI3IDUuMjdDNS4zNTU3NCA1LjI3IDUuMTU0MjcgNS40NzE0NyA1LjE1NDI3IDUuNzJWNi4yMjMxN0M0LjYwNTQzIDUuNjAwOTUgMy43OTIzNiA1LjIwNzAzIDIuODk4OTUgNS4yMDcwM1pNNS4xNTQyNyA5Ljc5ODIzVjcuMzAxOTVDNC43NjM5MyA2LjU4MTAxIDMuOTQxNDQgNi4wNTc1NyAzLjA4Njc1IDYuMDU3NTdDMi4xMDg4NSA2LjA1NzU3IDEuMDM1MDMgNi45NjU4MSAxLjAzNTAzIDguNjA5NTVDMS4wMzUwMyAxMC4xNTMzIDIuMDA4ODUgMTEuMTYxNSAzLjA4Njc1IDExLjE2MTVDMy45NzAxMSAxMS4xNjE1IDQuNzcxOTUgMTAuNDk1MiA1LjE1NDI3IDkuNzk4MjNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyTyA9IFtcImNvbG9yXCJdO1xudmFyIExldHRlckNhc2VVcHBlcmNhc2VJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJPKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy42MjU1IDIuNzVDMy44MzQ3OCAyLjc1IDQuMDIxOTIgMi44ODAzNCA0LjA5NDQ4IDMuMDc2NjRMNy4xNjk4NSAxMS4zOTYyQzcuMjY1NiAxMS42NTUyIDcuMTMzMjQgMTEuOTQyOCA2Ljg3NDIzIDEyLjAzODZDNi42MTUyMiAxMi4xMzQzIDYuMzI3NjMgMTIuMDAyIDYuMjMxODggMTEuNzQyOUw1LjIyMzg3IDkuMDE2MDNIMi4wMjcxMkwxLjAxOTExIDExLjc0MjlDMC45MjMzNjIgMTIuMDAyIDAuNjM1Nzc0IDEyLjEzNDMgMC4zNzY3NjIgMTIuMDM4NkMwLjExNzc0OSAxMS45NDI4IC0wLjAxNDYwNTIgMTEuNjU1MiAwLjA4MTE0MDEgMTEuMzk2MkwzLjE1NjUxIDMuMDc2NjRDMy4yMjkwOCAyLjg4MDM0IDMuNDE2MjEgMi43NSAzLjYyNTUgMi43NVpNMy42MjU1IDQuNjkyMDdMNC45MDk2NiA4LjE2NjAzSDIuMzQxMzNMMy42MjU1IDQuNjkyMDdaTTExLjM3MTkgMi43NUMxMS41ODExIDIuNzUgMTEuNzY4MyAyLjg4MDM0IDExLjg0MDggMy4wNzY2NEwxNC45MTYyIDExLjM5NjJDMTUuMDEyIDExLjY1NTIgMTQuODc5NiAxMS45NDI4IDE0LjYyMDYgMTIuMDM4NkMxNC4zNjE2IDEyLjEzNDMgMTQuMDc0IDEyLjAwMiAxMy45NzgyIDExLjc0MjlMMTIuOTcwMiA5LjAxNjAzSDkuNzczNDhMOC43NjU0NyAxMS43NDI5QzguNjY5NzIgMTIuMDAyIDguMzgyMTMgMTIuMTM0MyA4LjEyMzEyIDEyLjAzODZDNy44NjQxMSAxMS45NDI4IDcuNzMxNzUgMTEuNjU1MiA3LjgyNzUgMTEuMzk2MkwxMC45MDI5IDMuMDc2NjRDMTAuOTc1NCAyLjg4MDM0IDExLjE2MjYgMi43NSAxMS4zNzE5IDIuNzVaTTExLjM3MTkgNC42OTIwN0wxMi42NTYgOC4xNjYwM0gxMC4wODc3TDExLjM3MTkgNC42OTIwN1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJQID0gW1wiY29sb3JcIl07XG52YXIgTGV0dGVyU3BhY2luZ0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMlApO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk00LjU1MjkzIDAuOTk5OTY5QzQuNzUyOTUgMC45OTk5NjkgNC45MzM3MiAxLjExOTE3IDUuMDEyNSAxLjMwMzAxTDguMDExMDYgOC4yOTk4MkM4LjExOTg0IDguNTUzNjMgOC4wMDIyNiA4Ljg0NzU3IDcuNzQ4NDQgOC45NTYzNUM3LjQ5NDYzIDkuMDY1MTIgNy4yMDA2OSA4Ljk0NzU0IDcuMDkxOTEgOC42OTM3M0w2LjExNjEzIDYuNDE2ODVIMi45ODk3M0wyLjAxMzk1IDguNjkzNzNDMS45MDUxNyA4Ljk0NzU0IDEuNjExMjMgOS4wNjUxMiAxLjM1NzQyIDguOTU2MzVDMS4xMDM2IDguODQ3NTcgMC45ODYwMjMgOC41NTM2MyAxLjA5NDggOC4yOTk4Mkw0LjA5MzM2IDEuMzAzMDFDNC4xNzIxNCAxLjExOTE3IDQuMzUyOTEgMC45OTk5NjkgNC41NTI5MyAwLjk5OTk2OVpNNC41NTI5MyAyLjc2OTI5TDUuNzUxODYgNS41NjY4NUgzLjM1NEw0LjU1MjkzIDIuNzY5MjlaTTExLjA1NjIgOS4wMDIxNEMxMS4yNjE3IDkuMDAyMTQgMTEuNDQ2MyA4Ljg3NjMzIDExLjUyMTUgOC42ODUwMkwxNC4yNzMzIDEuNjgyOTlDMTQuMzc0MyAxLjQyNTk4IDE0LjI0NzggMS4xMzU3NSAxMy45OTA4IDEuMDM0NzVDMTMuNzMzOCAwLjkzMzc0NyAxMy40NDM2IDEuMDYwMjEgMTMuMzQyNiAxLjMxNzIyTDExLjA1NjIgNy4xMzUxNEw4Ljc2OTczIDEuMzE3MjJDOC42Njg3MyAxLjA2MDIxIDguMzc4NSAwLjkzMzc0NyA4LjEyMTUgMS4wMzQ3NUM3Ljg2NDQ5IDEuMTM1NzUgNy43MzgwMiAxLjQyNTk4IDcuODM5MDIgMS42ODI5OUwxMC41OTA4IDguNjg1MDJDMTAuNjY2IDguODc2MzMgMTAuODUwNiA5LjAwMjE0IDExLjA1NjIgOS4wMDIxNFpNMTQuOTUzNyAxMi40OTk5QzE0Ljk1MzcgMTIuNjA2IDE0LjkxMTUgMTIuNzA3NyAxNC44MzY1IDEyLjc4MjhMMTIuODM2NSAxNC43ODI4QzEyLjY4MDMgMTQuOTM5IDEyLjQyNzEgMTQuOTM5IDEyLjI3MDggMTQuNzgyOEMxMi4xMTQ2IDE0LjYyNjUgMTIuMTE0NiAxNC4zNzMzIDEyLjI3MDggMTQuMjE3MUwxMy41ODggMTIuODk5OUgxLjUxOTM3TDIuODM2NTMgMTQuMjE3MUMyLjk5Mjc0IDE0LjM3MzMgMi45OTI3NCAxNC42MjY1IDIuODM2NTMgMTQuNzgyOEMyLjY4MDMyIDE0LjkzOSAyLjQyNzA1IDE0LjkzOSAyLjI3MDg0IDE0Ljc4MjhMMC4yNzA4NDMgMTIuNzgyOEMwLjE5NTgyOCAxMi43MDc3IDAuMTUzNjg3IDEyLjYwNiAwLjE1MzY4NyAxMi40OTk5QzAuMTUzNjg3IDEyLjM5MzggMC4xOTU4MjggMTIuMjkyMSAwLjI3MDg0MyAxMi4yMTcxTDIuMjcwODQgMTAuMjE3MUMyLjQyNzA1IDEwLjA2MDkgMi42ODAzMiAxMC4wNjA5IDIuODM2NTMgMTAuMjE3MUMyLjk5Mjc0IDEwLjM3MzMgMi45OTI3NCAxMC42MjY1IDIuODM2NTMgMTAuNzgyOEwxLjUxOTM3IDEyLjA5OTlMMTMuNTg4IDEyLjA5OTlMMTIuMjcwOCAxMC43ODI4QzEyLjExNDYgMTAuNjI2NSAxMi4xMTQ2IDEwLjM3MzMgMTIuMjcwOCAxMC4yMTcxQzEyLjQyNzEgMTAuMDYwOSAxMi42ODAzIDEwLjA2MDkgMTIuODM2NSAxMC4yMTcxTDE0LjgzNjUgMTIuMjE3MUMxNC45MTE1IDEyLjI5MjEgMTQuOTUzNyAxMi4zOTM4IDE0Ljk1MzcgMTIuNDk5OVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJRID0gW1wiY29sb3JcIl07XG52YXIgTGlnaHRuaW5nQm9sdEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMlEpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk04LjY5NjY3IDAuMDQwMzU0MUM4LjkwODU5IDAuMTMxMDM4IDkuMDMxMDYgMC4zNTQ4NTcgOC45OTMxNiAwLjU4MjIzNUw4LjA5MDIgNi4wMDAwMUgxMi41QzEyLjY4OTMgNi4wMDAwMSAxMi44NjI1IDYuMTA3MDEgMTIuOTQ3MiA2LjI3NjQxQzEzLjAzMTkgNi40NDU4IDEzLjAxMzYgNi42NDg1IDEyLjg5OTkgNi44MDAwMUw2Ljg5OTk3IDE0LjhDNi43NjE2NyAxNC45ODQ0IDYuNTE1MjEgMTUuMDUwMyA2LjMwMzI4IDE0Ljk1OTdDNi4wOTEzNSAxNC44NjkgNS45Njg4OCAxNC42NDUyIDYuMDA2NzggMTQuNDE3OEw2LjkwOTc0IDlIMi40OTk5OUMyLjMxMDYxIDkgMi4xMzc0OCA4Ljg5MyAyLjA1Mjc4IDguNzIzNjFDMS45NjgwOSA4LjU1NDIyIDEuOTg2MzYgOC4zNTE1MSAyLjA5OTk5IDguMkw4LjA5OTk3IDAuMjAwMDM4QzguMjM4MjggMC4wMTU2MjU1IDguNDg0NzQgLTAuMDUwMzMwMSA4LjY5NjY3IDAuMDQwMzU0MVpNMy40OTk5OSA4LjAwMDAxSDcuNDk5OTdDNy42NDY5NSA4LjAwMDAxIDcuNzg2NDggOC4wNjQ2NyA3Ljg4MTQ4IDguMTc2ODJDNy45NzY0OCA4LjI4ODk2IDguMDE3MzMgOC40MzcyMyA3Ljk5MzE3IDguNTgyMkw3LjMzMDI3IDEyLjU1OTZMMTEuNSA3LjAwMDAxSDcuNDk5OTdDNy4zNTMgNy4wMDAwMSA3LjIxMzQ3IDYuOTM1MzQgNy4xMTg0NiA2LjgyMzJDNy4wMjM0NiA2LjcxMTA1IDYuOTgyNjEgNi41NjI3OSA3LjAwNjc4IDYuNDE3ODFMNy42Njk2OCAyLjQ0MDQyTDMuNDk5OTkgOC4wMDAwMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJSID0gW1wiY29sb3JcIl07XG52YXIgTGluZUhlaWdodEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMlIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zLjc4MjMzIDIuMjE3MTNDMy43MDczMiAyLjE0MjEyIDMuNjA1NTcgMi4wOTk5OCAzLjQ5OTQ5IDIuMDk5OThDMy4zOTM0IDIuMDk5OTggMy4yOTE2NiAyLjE0MjEyIDMuMjE2NjQgMi4yMTcxM0wxLjIxNjY0IDQuMjE3MTNDMS4wNjA0NCA0LjM3MzM0IDEuMDYwNDQgNC42MjY2MSAxLjIxNjY0IDQuNzgyODJDMS4zNzI4NSA0LjkzOTAzIDEuNjI2MTIgNC45MzkwMyAxLjc4MjMzIDQuNzgyODJMMy4wOTk0OSAzLjQ2NTY2TDMuMDk5NDkgMTEuNTM0M0wxLjc4MjMzIDEwLjIxNzFDMS42MjYxMiAxMC4wNjA5IDEuMzcyODUgMTAuMDYwOSAxLjIxNjY0IDEwLjIxNzFDMS4wNjA0MyAxMC4zNzMzIDEuMDYwNDMgMTAuNjI2NiAxLjIxNjY0IDEwLjc4MjhMMy4yMTY2NCAxMi43ODI4QzMuMjkxNjYgMTIuODU3OCAzLjM5MzQgMTIuOSAzLjQ5OTQ5IDEyLjlDMy42MDU1NyAxMi45IDMuNzA3MzEgMTIuODU3OCAzLjc4MjMzIDEyLjc4MjhMNS43ODIzMyAxMC43ODI4QzUuOTM4NTQgMTAuNjI2NiA1LjkzODU0IDEwLjM3MzMgNS43ODIzMyAxMC4yMTcxQzUuNjI2MTIgMTAuMDYwOSA1LjM3Mjg1IDEwLjA2MDkgNS4yMTY2NCAxMC4yMTcxTDMuODk5NDkgMTEuNTM0M0wzLjg5OTQ5IDMuNDY1NjZMNS4yMTY2NCA0Ljc4MjgyQzUuMzcyODUgNC45MzkwMyA1LjYyNjEyIDQuOTM5MDMgNS43ODIzMyA0Ljc4MjgyQzUuOTM4NTQgNC42MjY2MSA1LjkzODU0IDQuMzczMzQgNS43ODIzMyA0LjIxNzEzTDMuNzgyMzMgMi4yMTcxM1pNOC40OTk5OCAzLjk5OTk3QzguMjIzODMgMy45OTk5NyA3Ljk5OTk4IDQuMjIzODIgNy45OTk5OCA0LjQ5OTk3QzcuOTk5OTggNC43NzYxMSA4LjIyMzgzIDQuOTk5OTcgOC40OTk5OCA0Ljk5OTk3SDE0LjVDMTQuNzc2MSA0Ljk5OTk3IDE1IDQuNzc2MTEgMTUgNC40OTk5N0MxNSA0LjIyMzgyIDE0Ljc3NjEgMy45OTk5NyAxNC41IDMuOTk5OTdIOC40OTk5OFpNNy45OTk5OCA3LjQ5OTk3QzcuOTk5OTggNy4yMjM4MiA4LjIyMzgzIDYuOTk5OTcgOC40OTk5OCA2Ljk5OTk3SDE0LjVDMTQuNzc2MSA2Ljk5OTk3IDE1IDcuMjIzODIgMTUgNy40OTk5N0MxNSA3Ljc3NjExIDE0Ljc3NjEgNy45OTk5NyAxNC41IDcuOTk5OTdIOC40OTk5OEM4LjIyMzgzIDcuOTk5OTcgNy45OTk5OCA3Ljc3NjExIDcuOTk5OTggNy40OTk5N1pNOC40OTk5OCA5Ljk5OTk3QzguMjIzODMgOS45OTk5NyA3Ljk5OTk4IDEwLjIyMzggNy45OTk5OCAxMC41QzcuOTk5OTggMTAuNzc2MSA4LjIyMzgzIDExIDguNDk5OTggMTFIMTQuNUMxNC43NzYxIDExIDE1IDEwLjc3NjEgMTUgMTAuNUMxNSAxMC4yMjM4IDE0Ljc3NjEgOS45OTk5NyAxNC41IDkuOTk5OTdIOC40OTk5OFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJTID0gW1wiY29sb3JcIl07XG52YXIgTGluazFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJTKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC42MjQ3MSA0LjAwMDAxTDQuNTY0MDIgNC4wMDAwMUM0LjA0MTM0IDMuOTk5OTMgMy43MDY4NyAzLjk5OTg4IDMuNDE4MiA0LjA1NUMyLjIzNzkgNC4yODAzOSAxLjI5ODQ2IDUuMTcwNTMgMS4wNTgxNSA2LjMzMDM1QzAuOTk5NTM4IDYuNjEzMjEgMC45OTk2MDQgNi45Mzk5OCAwLjk5OTcwMyA3LjQzNjg5TDAuOTk5NzExIDcuNTAwMDFMMC45OTk3MDMgNy41NjMxM0MwLjk5OTYwNCA4LjA2MDA0IDAuOTk5NTM4IDguMzg2ODEgMS4wNTgxNSA4LjY2OTY3QzEuMjk4NDYgOS44Mjk1IDIuMjM3OSAxMC43MTk2IDMuNDE4MiAxMC45NDVDMy43MDY4OCAxMS4wMDAxIDQuMDQxMzUgMTEuMDAwMSA0LjU2NDAzIDExTDQuNjI0NzEgMTFINS40OTk3MUM1Ljc3NTg1IDExIDUuOTk5NzEgMTAuNzc2MiA1Ljk5OTcxIDEwLjVDNS45OTk3MSAxMC4yMjM5IDUuNzc1ODUgMTAgNS40OTk3MSAxMEg0LjYyNDcxQzQuMDIwODQgMTAgMy43ODkwNyA5Ljk5Nzc3IDMuNjA1NzcgOS45NjI3N0MyLjgwMjYyIDkuODA5NCAyLjE5MTU3IDkuMjExMDggMi4wMzczNSA4LjQ2Njc4QzIuMDAyMzMgOC4yOTc3OCAxLjk5OTcxIDguMDgyNTEgMS45OTk3MSA3LjUwMDAxQzEuOTk5NzEgNi45MTc1MiAyLjAwMjMzIDYuNzAyMjUgMi4wMzczNSA2LjUzMzI0QzIuMTkxNTcgNS43ODg5NSAyLjgwMjYyIDUuMTkwNjIgMy42MDU3NyA1LjAzNzI1QzMuNzg5MDcgNS4wMDIyNSA0LjAyMDg0IDUuMDAwMDEgNC42MjQ3MSA1LjAwMDAxSDUuNDk5NzFDNS43NzU4NSA1LjAwMDAxIDUuOTk5NzEgNC43NzYxNSA1Ljk5OTcxIDQuNTAwMDFDNS45OTk3MSA0LjIyMzg3IDUuNzc1ODUgNC4wMDAwMSA1LjQ5OTcxIDQuMDAwMDFINC42MjQ3MVpNMTAuMzc0NyA1LjAwMDAxQzEwLjk3ODYgNS4wMDAwMSAxMS4yMTA0IDUuMDAyMjUgMTEuMzkzNyA1LjAzNzI1QzEyLjE5NjggNS4xOTA2MiAxMi44MDc5IDUuNzg4OTUgMTIuOTYyMSA2LjUzMzI0QzEyLjk5NzEgNi43MDIyNSAxMi45OTk3IDYuOTE3NTIgMTIuOTk5NyA3LjUwMDAxQzEyLjk5OTcgOC4wODI1MSAxMi45OTcxIDguMjk3NzggMTIuOTYyMSA4LjQ2Njc4QzEyLjgwNzkgOS4yMTEwOCAxMi4xOTY4IDkuODA5NCAxMS4zOTM3IDkuOTYyNzdDMTEuMjEwNCA5Ljk5Nzc3IDEwLjk3ODYgMTAgMTAuMzc0NyAxMEg5LjQ5OTcxQzkuMjIzNTcgMTAgOC45OTk3MSAxMC4yMjM5IDguOTk5NzEgMTAuNUM4Ljk5OTcxIDEwLjc3NjIgOS4yMjM1NyAxMSA5LjQ5OTcxIDExSDEwLjM3NDdMMTAuNDM1NCAxMUMxMC45NTgxIDExLjAwMDEgMTEuMjkyNSAxMS4wMDAxIDExLjU4MTIgMTAuOTQ1QzEyLjc2MTUgMTAuNzE5NiAxMy43MDEgOS44Mjk1IDEzLjk0MTMgOC42Njk2N0MxMy45OTk5IDguMzg2ODEgMTMuOTk5OCA4LjA2MDA1IDEzLjk5OTcgNy41NjMxNEwxMy45OTk3IDcuNTAwMDFMMTMuOTk5NyA3LjQzNjg4QzEzLjk5OTggNi45Mzk5OCAxMy45OTk5IDYuNjEzMjEgMTMuOTQxMyA2LjMzMDM1QzEzLjcwMSA1LjE3MDUzIDEyLjc2MTUgNC4yODAzOSAxMS41ODEyIDQuMDU1QzExLjI5MjUgMy45OTk4OCAxMC45NTgxIDMuOTk5OTMgMTAuNDM1NCA0LjAwMDAxTDEwLjM3NDcgNC4wMDAwMUg5LjQ5OTcxQzkuMjIzNTcgNC4wMDAwMSA4Ljk5OTcxIDQuMjIzODcgOC45OTk3MSA0LjUwMDAxQzguOTk5NzEgNC43NzYxNSA5LjIyMzU3IDUuMDAwMDEgOS40OTk3MSA1LjAwMDAxSDEwLjM3NDdaTTUuMDAwMzggN0M0LjcyNDI0IDcgNC41MDAzOCA3LjIyMzg2IDQuNTAwMzggNy41QzQuNTAwMzggNy43NzYxNCA0LjcyNDI0IDggNS4wMDAzOCA4SDEwLjAwMDRDMTAuMjc2NSA4IDEwLjUwMDQgNy43NzYxNCAxMC41MDA0IDcuNUMxMC41MDA0IDcuMjIzODYgMTAuMjc2NSA3IDEwLjAwMDQgN0g1LjAwMDM4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMlQgPSBbXCJjb2xvclwiXTtcbnZhciBMaW5rMkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMlQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk04LjUxMTk0IDMuMDA1NDFDOS4xODgyOSAyLjU0NTk0IDEwLjA0MzUgMi41MzY5NCAxMC42Nzg4IDIuOTU0MTlDMTAuODIzMSAzLjA0ODkzIDEwLjk3NzEgMy4xOTkzIDExLjM4OSAzLjYxMTE5QzExLjgwMDkgNC4wMjMwNyAxMS45NTEzIDQuMTc3MTQgMTIuMDQ2IDQuMzIxNDFDMTIuNDYzMyA0Ljk1Njc1IDEyLjQ1NDMgNS44MTE5MiAxMS45OTQ4IDYuNDg4MjdDMTEuODg5OSA2LjY0MjY0IDExLjcyNzYgNi44MDgxMSAxMS4zMDA2IDcuMjM1MTFMMTAuNjgxOSA3Ljg1MzgzQzEwLjQ4NjcgOC4wNDkwOSAxMC40ODY3IDguMzY1NjcgMTAuNjgxOSA4LjU2MDkzQzEwLjg3NzIgOC43NTYyIDExLjE5MzggOC43NTYyIDExLjM4OSA4LjU2MDkzTDEyLjAwNzcgNy45NDIyMUwxMi4wNTA3IDcuODk5MjlDMTIuNDIwMyA3LjUyOTc2IDEyLjY1NjggNy4yOTMzIDEyLjgyMiA3LjA1MDJDMTMuNDk3MiA2LjA1NjIzIDEzLjUzMjEgNC43NjI1MiAxMi44ODE5IDMuNzcyNDhDMTIuNzIzMyAzLjUzMTAyIDEyLjQ5MjIgMy4zMDAwMSAxMi4xNDA4IDIuOTQ4NzFMMTIuMDk2MSAyLjkwNDA4TDEyLjA1MTUgMi44NTk0MkMxMS43MDAyIDIuNTA4IDExLjQ2OTIgMi4yNzY4OSAxMS4yMjc3IDIuMTE4MzJDMTAuMjM3NyAxLjQ2ODEzIDguOTQzOTggMS41MDI5OSA3Ljk1MDAxIDIuMTc4MjJDNy43MDY5MSAyLjM0MzM2IDcuNDcwNDQgMi41Nzk5MSA3LjEwMDkgMi45NDk1NUw3LjA1OCAyLjk5MjQ3TDYuNDM5MjggMy42MTExOUM2LjI0NDAxIDMuODA2NDUgNi4yNDQwMSA0LjEyMzAzIDYuNDM5MjggNC4zMTgyOUM2LjYzNDU0IDQuNTEzNTUgNi45NTExMiA0LjUxMzU1IDcuMTQ2MzggNC4zMTgyOUw3Ljc2NTEgMy42OTk1N0M4LjE5MjEgMy4yNzI1NyA4LjM1NzU3IDMuMTEwMjcgOC41MTE5NCAzLjAwNTQxWk00LjMxNzk2IDcuMTQ2NzJDNC41MTMyMiA2Ljk1MTQ2IDQuNTEzMjIgNi42MzQ4NyA0LjMxNzk2IDYuNDM5NjFDNC4xMjI2OSA2LjI0NDM1IDMuODA2MTEgNi4yNDQzNSAzLjYxMDg1IDYuNDM5NjFMMi45OTIxMyA3LjA1ODMzTDIuOTQ5MjIgNy4xMDEyNEMyLjU3OTU3IDcuNDcwNzcgMi4zNDMwMyA3LjcwNzI0IDIuMTc3ODggNy45NTAzNUMxLjUwMjY1IDguOTQ0MzIgMS40Njc4IDEwLjIzOCAyLjExNzk5IDExLjIyODFDMi4yNzY1NiAxMS40Njk1IDIuNTA3NjYgMTEuNzAwNSAyLjg1OTEgMTIuMDUxOEwyLjkwMzc0IDEyLjA5NjVMMi45NDgzNyAxMi4xNDExQzMuMjk5NjcgMTIuNDkyNSAzLjUzMDY4IDEyLjcyMzcgMy43NzIxNCAxMi44ODIyQzQuNzYyMTkgMTMuNTMyNCA2LjA1NTg5IDEzLjQ5NzYgNy4wNDk4NiAxMi44MjIzQzcuMjkyOTYgMTIuNjU3MiA3LjUyOTQzIDEyLjQyMDYgNy44OTg5NiAxMi4wNTFMNy44OTg5NyAxMi4wNTFMNy45NDE4OCAxMi4wMDgxTDguNTYwNiAxMS4zODk0QzguNzU1ODYgMTEuMTk0MSA4Ljc1NTg2IDEwLjg3NzUgOC41NjA2IDEwLjY4MjNDOC4zNjUzMyAxMC40ODcgOC4wNDg3NSAxMC40ODcgNy44NTM0OSAxMC42ODIzTDcuMjM0NzcgMTEuMzAxQzYuODA3NzcgMTEuNzI4IDYuNjQyMyAxMS44OTAzIDYuNDg3OTQgMTEuOTk1MUM1LjgxMTU4IDEyLjQ1NDYgNC45NTY0MiAxMi40NjM2IDQuMzIxMDcgMTIuMDQ2NEM0LjE3NjgxIDExLjk1MTYgNC4wMjI3NCAxMS44MDEyIDMuNjEwODUgMTEuMzg5NEMzLjE5ODk2IDEwLjk3NzUgMy4wNDg2IDEwLjgyMzQgMi45NTM4NSAxMC42NzkxQzIuNTM2NjEgMTAuMDQzOCAyLjU0NTYxIDkuMTg4NjMgMy4wMDUwNyA4LjUxMjI3QzMuMTA5OTMgOC4zNTc5MSAzLjI3MjI0IDguMTkyNDQgMy42OTkyNCA3Ljc2NTQ0TDQuMzE3OTYgNy4xNDY3MlpNOS42MjE3MiA2LjA4NTU4QzkuODE2OTggNS44OTAzMiA5LjgxNjk4IDUuNTczNzMgOS42MjE3MiA1LjM3ODQ3QzkuNDI2NDYgNS4xODMyMSA5LjEwOTg4IDUuMTgzMjEgOC45MTQ2MSA1LjM3ODQ3TDUuMzc5MDggOC45MTQwMUM1LjE4MzgyIDkuMTA5MjcgNS4xODM4MiA5LjQyNTg1IDUuMzc5MDggOS42MjExMUM1LjU3NDM0IDkuODE2MzcgNS44OTA5MiA5LjgxNjM3IDYuMDg2MTkgOS42MjExMUw5LjYyMTcyIDYuMDg1NThaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyVSA9IFtcImNvbG9yXCJdO1xudmFyIExpbmtCcmVhazFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJVKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTMuMzUzNiAyLjM1MzU1QzEzLjU0ODggMi4xNTgyOSAxMy41NDg4IDEuODQxNzEgMTMuMzUzNiAxLjY0NjQ1QzEzLjE1ODMgMS40NTExOCAxMi44NDE3IDEuNDUxMTggMTIuNjQ2NCAxLjY0NjQ1TDEuNjQ2NDUgMTIuNjQ2NEMxLjQ1MTE4IDEyLjg0MTcgMS40NTExOCAxMy4xNTgzIDEuNjQ2NDUgMTMuMzUzNkMxLjg0MTcxIDEzLjU0ODggMi4xNTgyOSAxMy41NDg4IDIuMzUzNTUgMTMuMzUzNkwxMy4zNTM2IDIuMzUzNTVaTTIuMDM3MzUgOC40NjY3OEMyLjE3Mzk4IDkuMTI2MTkgMi42NjkxOCA5LjY3MTAzIDMuMzM4ODYgOS44OTMzOEwyLjU3ODMzIDEwLjY1MzlDMS44MDg0MyAxMC4yNTM0IDEuMjM3ODQgOS41MzY5MyAxLjA1ODE1IDguNjY5NjdDMC45OTk1MzggOC4zODY4MSAwLjk5OTYwNCA4LjA2MDA0IDAuOTk5NzAzIDcuNTYzMTNMMC45OTk3MTEgNy41MDAwMUwwLjk5OTcwMyA3LjQzNjg5QzAuOTk5NjA0IDYuOTM5OTggMC45OTk1MzggNi42MTMyMSAxLjA1ODE1IDYuMzMwMzVDMS4yOTg0NiA1LjE3MDUzIDIuMjM3OSA0LjI4MDM5IDMuNDE4MiA0LjA1NUMzLjcwNjg3IDMuOTk5ODggNC4wNDEzNCAzLjk5OTkzIDQuNTY0MDIgNC4wMDAwMUw0LjYyNDcxIDQuMDAwMDFINS40OTk3MUM1Ljc3NTg1IDQuMDAwMDEgNS45OTk3MSA0LjIyMzg3IDUuOTk5NzEgNC41MDAwMUM1Ljk5OTcxIDQuNzc2MTUgNS43NzU4NSA1LjAwMDAxIDUuNDk5NzEgNS4wMDAwMUg0LjYyNDcxQzQuMDIwODQgNS4wMDAwMSAzLjc4OTA3IDUuMDAyMjUgMy42MDU3NyA1LjAzNzI1QzIuODAyNjIgNS4xOTA2MiAyLjE5MTU3IDUuNzg4OTUgMi4wMzczNSA2LjUzMzI0QzIuMDAyMzMgNi43MDIyNSAxLjk5OTcxIDYuOTE3NTIgMS45OTk3MSA3LjUwMDAxQzEuOTk5NzEgOC4wODI1MSAyLjAwMjMzIDguMjk3NzggMi4wMzczNSA4LjQ2Njc4Wk0xMi45NjIxIDYuNTMzMjRDMTIuODI1NSA1Ljg3Mzk3IDEyLjMzMDQgNS4zMjkyMiAxMS42NjEgNS4xMDY3OUwxMi40MjE1IDQuMzQ2MzFDMTMuMTkxMiA0Ljc0Njg2IDEzLjc2MTYgNS40NjMyMyAxMy45NDEzIDYuMzMwMzVDMTMuOTk5OSA2LjYxMzIxIDEzLjk5OTggNi45Mzk5OCAxMy45OTk3IDcuNDM2ODhMMTMuOTk5NyA3LjUwMDAxTDEzLjk5OTcgNy41NjMxNEMxMy45OTk4IDguMDYwMDUgMTMuOTk5OSA4LjM4NjgxIDEzLjk0MTMgOC42Njk2N0MxMy43MDEgOS44Mjk1IDEyLjc2MTUgMTAuNzE5NiAxMS41ODEyIDEwLjk0NUMxMS4yOTI1IDExLjAwMDEgMTAuOTU4MSAxMS4wMDAxIDEwLjQzNTQgMTFMMTAuMzc0NyAxMUg5LjQ5OTcxQzkuMjIzNTcgMTEgOC45OTk3MSAxMC43NzYyIDguOTk5NzEgMTAuNUM4Ljk5OTcxIDEwLjIyMzkgOS4yMjM1NyAxMCA5LjQ5OTcxIDEwSDEwLjM3NDdDMTAuOTc4NiAxMCAxMS4yMTA0IDkuOTk3NzcgMTEuMzkzNyA5Ljk2Mjc3QzEyLjE5NjggOS44MDk0IDEyLjgwNzkgOS4yMTEwOCAxMi45NjIxIDguNDY2NzhDMTIuOTk3MSA4LjI5Nzc4IDEyLjk5OTcgOC4wODI1MSAxMi45OTk3IDcuNTAwMDFDMTIuOTk5NyA2LjkxNzUyIDEyLjk5NzEgNi43MDIyNSAxMi45NjIxIDYuNTMzMjRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyViA9IFtcImNvbG9yXCJdO1xudmFyIExpbmtCcmVhazJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJWKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC41MDAyMSAwQzQuNzc2MzUgMCA1LjAwMDIgMC4yMjM4NTMgNS4wMDAyIDAuNDk5OTlWMi40OTk5NUM1LjAwMDIgMi43NzYwOSA0Ljc3NjM1IDIuOTk5OTQgNC41MDAyMSAyLjk5OTk0QzQuMjI0MDggMi45OTk5NCA0LjAwMDIyIDIuNzc2MDkgNC4wMDAyMiAyLjQ5OTk1VjAuNDk5OTlDNC4wMDAyMiAwLjIyMzg1MyA0LjIyNDA4IDAgNC41MDAyMSAwWk0wLjY0NjQ1MSAwLjY0NjQ3QzAuODQxNzEgMC40NTEyMTIgMS4xNTgyOSAwLjQ1MTIxMiAxLjM1MzU0IDAuNjQ2NDdMMi44NTM1MSAyLjE0NjQ0QzMuMDQ4NzcgMi4zNDE3IDMuMDQ4NzcgMi42NTgyNyAyLjg1MzUxIDIuODUzNTNDMi42NTgyNiAzLjA0ODc5IDIuMzQxNjggMy4wNDg3OSAyLjE0NjQyIDIuODUzNTNMMC42NDY0NTIgMS4zNTM1NkMwLjQ1MTE5MyAxLjE1ODMgMC40NTExOTMgMC44NDE3MjggMC42NDY0NTEgMC42NDY0N1pNMC4wMDAzMDUxNyA0LjQ5OTkxQzAuMDAwMzA1MTcgNC4yMjM3NyAwLjIyNDE1OCAzLjk5OTkyIDAuNTAwMjk1IDMuOTk5OTJIMi41MDAyNUMyLjc3NjM5IDMuOTk5OTIgMy4wMDAyNCA0LjIyMzc3IDMuMDAwMjQgNC40OTk5MUMzLjAwMDI0IDQuNzc2MDUgMi43NzYzOSA0Ljk5OTkgMi41MDAyNSA0Ljk5OTlIMC41MDAyOTVDMC4yMjQxNTggNC45OTk5IDAuMDAwMzA1MTcgNC43NzYwNSAwLjAwMDMwNTE3IDQuNDk5OTFaTTEyLjAwMDEgMTAuNDk5OEMxMi4wMDAxIDEwLjIyMzYgMTIuMjIzOSA5Ljk5OTggMTIuNTAwMSA5Ljk5OThIMTQuNUMxNC43NzYxIDkuOTk5OCAxNSAxMC4yMjM2IDE1IDEwLjQ5OThDMTUgMTAuNzc1OSAxNC43NzYxIDEwLjk5OTggMTQuNSAxMC45OTk4SDEyLjUwMDFDMTIuMjIzOSAxMC45OTk4IDEyLjAwMDEgMTAuNzc1OSAxMi4wMDAxIDEwLjQ5OThaTTEwLjUwMDEgMTEuOTk5OEMxMC43NzYyIDExLjk5OTggMTEuMDAwMSAxMi4yMjM2IDExLjAwMDEgMTIuNDk5N1YxNC40OTk3QzExLjAwMDEgMTQuNzc1OCAxMC43NzYyIDE0Ljk5OTcgMTAuNTAwMSAxNC45OTk3QzEwLjIyNCAxNC45OTk3IDEwLjAwMDEgMTQuNzc1OCAxMC4wMDAxIDE0LjQ5OTdWMTIuNDk5N0MxMC4wMDAxIDEyLjIyMzYgMTAuMjI0IDExLjk5OTggMTAuNTAwMSAxMS45OTk4Wk0xMi4xNDYyIDEyLjE0NjJDMTIuMzQxNSAxMS45NTEgMTIuNjU4IDExLjk1MSAxMi44NTMzIDEyLjE0NjJMMTQuMzUzMyAxMy42NDYyQzE0LjU0ODUgMTMuODQxNSAxNC41NDg1IDE0LjE1OCAxNC4zNTMzIDE0LjM1MzNDMTQuMTU4IDE0LjU0ODUgMTMuODQxNCAxNC41NDg1IDEzLjY0NjIgMTQuMzUzM0wxMi4xNDYyIDEyLjg1MzNDMTEuOTUxIDEyLjY1ODEgMTEuOTUxIDEyLjM0MTUgMTIuMTQ2MiAxMi4xNDYyWk03Ljc2NDc4IDMuNjk5MzhDOC4xOTE3NyAzLjI3MjM4IDguMzU3MjQgMy4xMTAwOCA4LjUxMTYgMy4wMDUyMkM5LjE4Nzk0IDIuNTQ1NzcgMTAuMDQzMSAyLjUzNjc3IDEwLjY3ODQgMi45NTQwMUMxMC44MjI3IDMuMDQ4NzUgMTAuOTc2NyAzLjE5OTExIDExLjM4ODYgMy42MTA5OUMxMS44MDA1IDQuMDIyODcgMTEuOTUwOSA0LjE3Njk0IDEyLjA0NTYgNC4zMjEyQzEyLjQ2MjggNC45NTY1MyAxMi40NTM5IDUuODExNjggMTEuOTk0NCA2LjQ4ODAyQzExLjg4OTUgNi42NDIzOCAxMS43MjcyIDYuODA3ODUgMTEuMzAwMiA3LjIzNDg0TDEwLjY4MTUgNy44NTM1NEMxMC40ODYzIDguMDQ4OCAxMC40ODYzIDguMzY1MzggMTAuNjgxNSA4LjU2MDY0QzEwLjg3NjggOC43NTU4OSAxMS4xOTM0IDguNzU1ODkgMTEuMzg4NiA4LjU2MDY0TDEyLjAwNzMgNy45NDE5M0wxMi4wNTAyIDcuODk5MDNDMTIuNDE5OSA3LjUyOTUgMTIuNjU2NCA3LjI5MzAzIDEyLjgyMTYgNy4wNDk5M0MxMy40OTY4IDYuMDU1OTggMTMuNTMxNiA0Ljc2MjMgMTIuODgxNSAzLjc3MjI4QzEyLjcyMjkgMy41MzA4MyAxMi40OTE4IDMuMjk5ODIgMTIuMTQwNCAyLjk0ODUzTDEyLjA5NTcgMi45MDM5TDEyLjA1MTEgMi44NTkyNUMxMS42OTk4IDIuNTA3ODIgMTEuNDY4OCAyLjI3NjcyIDExLjIyNzMgMi4xMTgxNkMxMC4yMzczIDEuNDY3OTggOC45NDM2NCAxLjUwMjg0IDcuOTQ5NjggMi4xNzgwNUM3LjcwNjU5IDIuMzQzMTkgNy40NzAxMiAyLjU3OTczIDcuMTAwNiAyLjk0OTM2TDcuMTAwNiAyLjk0OTM3TDcuMDU3NjkgMi45OTIyOEw2LjQzODk4IDMuNjEwOTlDNi4yNDM3MiAzLjgwNjI1IDYuMjQzNzIgNC4xMjI4MiA2LjQzODk4IDQuMzE4MDhDNi42MzQyNCA0LjUxMzM0IDYuOTUwODEgNC41MTMzNCA3LjE0NjA3IDQuMzE4MDhMNy43NjQ3OCAzLjY5OTM4Wk0yLjk5MTkxIDcuMDU4MDdMMi45NDg5OSA3LjEwMDk3QzIuNTc5MzUgNy40NzA1IDIuMzQyODIgNy43MDY5NyAyLjE3NzY3IDcuOTUwMDZDMS41MDI0NiA4Ljk0NDAxIDEuNDY3NiAxMC4yMzc3IDIuMTE3NzggMTEuMjI3N0MyLjI3NjM0IDExLjQ2OTIgMi41MDc0NCAxMS43MDAyIDIuODU4ODYgMTIuMDUxNUwyLjg1ODg4IDEyLjA1MTVMMi45MDM1MiAxMi4wOTYxTDIuOTQ4MTUgMTIuMTQwN0wyLjk0ODE1IDEyLjE0MDdMMi45NDgxNyAxMi4xNDA4QzMuMjk5NDUgMTIuNDkyMiAzLjUzMDQ1IDEyLjcyMzMgMy43NzE5IDEyLjg4MThDNC43NjE5MyAxMy41MzIgNi4wNTU2IDEzLjQ5NzIgNy4wNDk1NiAxMi44MjE5QzcuMjkyNjUgMTIuNjU2OCA3LjUyOTEyIDEyLjQyMDMgNy44OTg2NSAxMi4wNTA2TDcuOTQxNTUgMTIuMDA3N0w4LjU2MDI2IDExLjM4OUM4Ljc1NTUyIDExLjE5MzcgOC43NTU1MiAxMC44NzcyIDguNTYwMjYgMTAuNjgxOUM4LjM2NSAxMC40ODY3IDguMDQ4NDIgMTAuNDg2NyA3Ljg1MzE3IDEwLjY4MTlMNy4yMzQ0NiAxMS4zMDA2QzYuODA3NDcgMTEuNzI3NiA2LjY0MiAxMS44ODk5IDYuNDg3NjQgMTEuOTk0OEM1LjgxMTMgMTIuNDU0MiA0Ljk1NjE1IDEyLjQ2MzIgNC4zMjA4MiAxMi4wNDZDNC4xNzY1NiAxMS45NTEyIDQuMDIyNDkgMTEuODAwOSAzLjYxMDYxIDExLjM4OUMzLjE5ODczIDEwLjk3NzEgMy4wNDgzNyAxMC44MjMxIDIuOTUzNjMgMTAuNjc4OEMyLjUzNjM5IDEwLjA0MzUgMi41NDUzOSA5LjE4ODMyIDMuMDA0ODQgOC41MTE5OEMzLjEwOTcxIDguMzU3NjEgMy4yNzIwMSA4LjE5MjE1IDMuNjk5IDcuNzY1MTZMNC4zMTc3IDcuMTQ2NDVDNC41MTI5NiA2Ljk1MTE5IDQuNTEyOTYgNi42MzQ2MiA0LjMxNzcgNi40MzkzNkM0LjEyMjQ1IDYuMjQ0MSAzLjgwNTg3IDYuMjQ0MSAzLjYxMDYxIDYuNDM5MzZMMi45OTE5MSA3LjA1ODA3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMlcgPSBbXCJjb2xvclwiXTtcbnZhciBMaW5rTm9uZTFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJXKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC41NjQyNyAzLjk5OTg4QzQuNTg0MjIgMy45OTk4OSA0LjYwNDQ1IDMuOTk5ODkgNC42MjQ5NiAzLjk5OTg5SDUuNDk5OTZDNS43NzYxIDMuOTk5ODkgNS45OTk5NiA0LjIyMzc1IDUuOTk5OTYgNC40OTk4OUM1Ljk5OTk2IDQuNzc2MDMgNS43NzYxIDQuOTk5ODkgNS40OTk5NiA0Ljk5OTg5SDQuNjI0OTZDNC4wMjEwOCA0Ljk5OTg5IDMuNzg5MzIgNS4wMDIxMyAzLjYwNjAxIDUuMDM3MTNDMi44MDI4NyA1LjE5MDUgMi4xOTE4MSA1Ljc4ODgzIDIuMDM3NTkgNi41MzMxMkMyLjAwMjU3IDYuNzAyMTIgMS45OTk5NiA2LjkxNzM5IDEuOTk5OTYgNy40OTk4OUMxLjk5OTk2IDguMDgyMzkgMi4wMDI1NyA4LjI5NzY2IDIuMDM3NTkgOC40NjY2NkMyLjE5MTgxIDkuMjEwOTUgMi44MDI4NyA5LjgwOTI4IDMuNjA2MDEgOS45NjI2NUMzLjc4OTMyIDkuOTk3NjUgNC4wMjEwOCA5Ljk5OTg5IDQuNjI0OTYgOS45OTk4OUg1LjQ5OTk2QzUuNzc2MSA5Ljk5OTg5IDUuOTk5OTYgMTAuMjIzNyA1Ljk5OTk2IDEwLjQ5OTlDNS45OTk5NiAxMC43NzYgNS43NzYxIDEwLjk5OTkgNS40OTk5NiAxMC45OTk5SDQuNjI0OTZDNC42MDQ0NSAxMC45OTk5IDQuNTg0MjIgMTAuOTk5OSA0LjU2NDI3IDEwLjk5OTlDNC4wNDE1OSAxMSAzLjcwNzEyIDExIDMuNDE4NDUgMTAuOTQ0OUMyLjIzODE0IDEwLjcxOTUgMS4yOTg3MSA5LjgyOTM3IDEuMDU4MzkgOC42Njk1NUMwLjk5OTc4MiA4LjM4NjY5IDAuOTk5ODQ4IDguMDU5OTIgMC45OTk5NDcgNy41NjMwMUMwLjk5OTk1MSA3LjU0MjI3IDAuOTk5OTU1IDcuNTIxMjMgMC45OTk5NTUgNy40OTk4OUMwLjk5OTk1NSA3LjQ3ODU1IDAuOTk5OTUxIDcuNDU3NTEgMC45OTk5NDcgNy40MzY3N0MwLjk5OTg0OCA2LjkzOTg2IDAuOTk5NzgyIDYuNjEzMDkgMS4wNTgzOSA2LjMzMDIzQzEuMjk4NzEgNS4xNzA0MSAyLjIzODE0IDQuMjgwMjcgMy40MTg0NSA0LjA1NDg4QzMuNzA3MTIgMy45OTk3NiA0LjA0MTU5IDMuOTk5ODEgNC41NjQyNyAzLjk5OTg4Wk0xMS4zOTM5IDUuMDM3MTNDMTEuMjEwNiA1LjAwMjEzIDEwLjk3ODggNC45OTk4OSAxMC4zNzUgNC45OTk4OUg5LjQ5OTk2QzkuMjIzODEgNC45OTk4OSA4Ljk5OTk2IDQuNzc2MDMgOC45OTk5NiA0LjQ5OTg5QzguOTk5OTYgNC4yMjM3NSA5LjIyMzgxIDMuOTk5ODkgOS40OTk5NiAzLjk5OTg5SDEwLjM3NUMxMC4zOTU1IDMuOTk5ODkgMTAuNDE1NyAzLjk5OTg5IDEwLjQzNTYgMy45OTk4OEMxMC45NTgzIDMuOTk5ODEgMTEuMjkyOCAzLjk5OTc2IDExLjU4MTUgNC4wNTQ4OEMxMi43NjE4IDQuMjgwMjcgMTMuNzAxMiA1LjE3MDQxIDEzLjk0MTUgNi4zMzAyM0MxNC4wMDAxIDYuNjEzMDkgMTQuMDAwMSA2LjkzOTg1IDE0IDcuNDM2NzZDMTQgNy40NTc1IDE0IDcuNDc4NTQgMTQgNy40OTk4OUMxNCA3LjUyMTI0IDE0IDcuNTQyMjggMTQgNy41NjMwMkMxNC4wMDAxIDguMDU5OTIgMTQuMDAwMSA4LjM4NjY5IDEzLjk0MTUgOC42Njk1NUMxMy43MDEyIDkuODI5MzcgMTIuNzYxOCAxMC43MTk1IDExLjU4MTUgMTAuOTQ0OUMxMS4yOTI4IDExIDEwLjk1ODMgMTEgMTAuNDM1NiAxMC45OTk5QzEwLjQxNTcgMTAuOTk5OSAxMC4zOTU1IDEwLjk5OTkgMTAuMzc1IDEwLjk5OTlIOS40OTk5NkM5LjIyMzgxIDEwLjk5OTkgOC45OTk5NiAxMC43NzYgOC45OTk5NiAxMC40OTk5QzguOTk5OTYgMTAuMjIzNyA5LjIyMzgxIDkuOTk5ODkgOS40OTk5NiA5Ljk5OTg5SDEwLjM3NUMxMC45Nzg4IDkuOTk5ODkgMTEuMjEwNiA5Ljk5NzY1IDExLjM5MzkgOS45NjI2NUMxMi4xOTcgOS44MDkyOCAxMi44MDgxIDkuMjEwOTUgMTIuOTYyMyA4LjQ2NjY2QzEyLjk5NzMgOC4yOTc2NiAxMyA4LjA4MjM5IDEzIDcuNDk5ODlDMTMgNi45MTczOSAxMi45OTczIDYuNzAyMTIgMTIuOTYyMyA2LjUzMzEyQzEyLjgwODEgNS43ODg4MyAxMi4xOTcgNS4xOTA1IDExLjM5MzkgNS4wMzcxM1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJYID0gW1wiY29sb3JcIl07XG52YXIgTGlua05vbmUySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyWCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEwLjY3ODggMi45NTQxOUMxMC4wNDM1IDIuNTM2OTQgOS4xODgyOSAyLjU0NTk0IDguNTExOTQgMy4wMDU0MUM4LjM1NzU3IDMuMTEwMjcgOC4xOTIxIDMuMjcyNTcgNy43NjUxIDMuNjk5NTdMNy4xNDYzOCA0LjMxODI5QzYuOTUxMTIgNC41MTM1NSA2LjYzNDU0IDQuNTEzNTUgNi40MzkyOCA0LjMxODI5QzYuMjQ0MDEgNC4xMjMwMyA2LjI0NDAxIDMuODA2NDUgNi40MzkyOCAzLjYxMTE5TDcuMDU4IDIuOTkyNDdDNy4wNzI1IDIuOTc3OTcgNy4wODY3OSAyLjk2MzY2IDcuMTAwOSAyLjk0OTU1QzcuNDcwNDQgMi41Nzk5MSA3LjcwNjkxIDIuMzQzMzYgNy45NTAwMSAyLjE3ODIyQzguOTQzOTggMS41MDI5OSAxMC4yMzc3IDEuNDY4MTMgMTEuMjI3NyAyLjExODMyQzExLjQ2OTIgMi4yNzY4OSAxMS43MDAyIDIuNTA4IDEyLjA1MTUgMi44NTk0MkMxMi4wNjYyIDIuODc0MSAxMi4wODEgMi44ODg5OCAxMi4wOTYxIDIuOTA0MDhDMTIuMTExMiAyLjkxOTE3IDEyLjEyNjEgMi45MzQwNSAxMi4xNDA4IDIuOTQ4NzFDMTIuNDkyMiAzLjMwMDAxIDEyLjcyMzMgMy41MzEwMiAxMi44ODE5IDMuNzcyNDhDMTMuNTMyMSA0Ljc2MjUyIDEzLjQ5NzIgNi4wNTYyMyAxMi44MjIgNy4wNTAyQzEyLjY1NjggNy4yOTMzIDEyLjQyMDMgNy41Mjk3NiAxMi4wNTA3IDcuODk5MjlDMTIuMDM2NiA3LjkxMzQgMTIuMDIyMiA3LjkyNzcxIDEyLjAwNzcgNy45NDIyMUwxMS4zODkgOC41NjA5M0MxMS4xOTM4IDguNzU2MiAxMC44NzcyIDguNzU2MiAxMC42ODE5IDguNTYwOTNDMTAuNDg2NyA4LjM2NTY3IDEwLjQ4NjcgOC4wNDkwOSAxMC42ODE5IDcuODUzODNMMTEuMzAwNiA3LjIzNTExQzExLjcyNzYgNi44MDgxMSAxMS44ODk5IDYuNjQyNjQgMTEuOTk0OCA2LjQ4ODI3QzEyLjQ1NDMgNS44MTE5MiAxMi40NjMzIDQuOTU2NzUgMTIuMDQ2IDQuMzIxNDFDMTEuOTUxMyA0LjE3NzE0IDExLjgwMDkgNC4wMjMwNyAxMS4zODkgMy42MTExOUMxMC45NzcxIDMuMTk5MyAxMC44MjMxIDMuMDQ4OTMgMTAuNjc4OCAyLjk1NDE5Wk00LjMxNzk2IDYuNDM5NjFDNC41MTMyMiA2LjYzNDg3IDQuNTEzMjIgNi45NTE0NiA0LjMxNzk2IDcuMTQ2NzJMMy42OTkyNCA3Ljc2NTQ0QzMuMjcyMjQgOC4xOTI0NCAzLjEwOTkzIDguMzU3OTEgMy4wMDUwNyA4LjUxMjI3QzIuNTQ1NjEgOS4xODg2MyAyLjUzNjYxIDEwLjA0MzggMi45NTM4NSAxMC42NzkxQzMuMDQ4NiAxMC44MjM0IDMuMTk4OTYgMTAuOTc3NSAzLjYxMDg1IDExLjM4OTRDNC4wMjI3NCAxMS44MDEyIDQuMTc2ODEgMTEuOTUxNiA0LjMyMTA3IDEyLjA0NjRDNC45NTY0MiAxMi40NjM2IDUuODExNTggMTIuNDU0NiA2LjQ4Nzk0IDExLjk5NTFDNi42NDIzIDExLjg5MDMgNi44MDc3NyAxMS43MjggNy4yMzQ3NyAxMS4zMDFMNy44NTM0OSAxMC42ODIzQzguMDQ4NzUgMTAuNDg3IDguMzY1MzMgMTAuNDg3IDguNTYwNiAxMC42ODIzQzguNzU1ODYgMTAuODc3NSA4Ljc1NTg2IDExLjE5NDEgOC41NjA2IDExLjM4OTRMNy45NDE4OCAxMi4wMDgxQzcuOTI3MzggMTIuMDIyNiA3LjkxMzA3IDEyLjAzNjkgNy44OTg5NyAxMi4wNTFDNy41Mjk0MyAxMi40MjA2IDcuMjkyOTYgMTIuNjU3MiA3LjA0OTg2IDEyLjgyMjNDNi4wNTU4OSAxMy40OTc2IDQuNzYyMTkgMTMuNTMyNCAzLjc3MjE0IDEyLjg4MjJDMy41MzA2OCAxMi43MjM3IDMuMjk5NjcgMTIuNDkyNSAyLjk0ODM3IDEyLjE0MTFDMi45MzM3MSAxMi4xMjY0IDIuOTE4ODMgMTIuMTExNiAyLjkwMzc0IDEyLjA5NjVDMi44ODg2NSAxMi4wODE0IDIuODczNzcgMTIuMDY2NSAyLjg1OTEgMTIuMDUxOEMyLjUwNzY2IDExLjcwMDUgMi4yNzY1NiAxMS40Njk1IDIuMTE3OTkgMTEuMjI4MUMxLjQ2NzggMTAuMjM4IDEuNTAyNjUgOC45NDQzMiAyLjE3Nzg4IDcuOTUwMzVDMi4zNDMwMyA3LjcwNzI0IDIuNTc5NTcgNy40NzA3NyAyLjk0OTIyIDcuMTAxMjRDMi45NjMzMyA3LjA4NzEzIDIuOTc3NjMgNy4wNzI4MyAyLjk5MjEzIDcuMDU4MzNMMy42MTA4NSA2LjQzOTYxQzMuODA2MTEgNi4yNDQzNSA0LjEyMjY5IDYuMjQ0MzUgNC4zMTc5NiA2LjQzOTYxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMlkgPSBbXCJjb2xvclwiXTtcbnZhciBMaW5rZWRJbkxvZ29JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJZKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMiAxQzEuNDQ3NzIgMSAxIDEuNDQ3NzIgMSAyVjEzQzEgMTMuNTUyMyAxLjQ0NzcyIDE0IDIgMTRIMTNDMTMuNTUyMyAxNCAxNCAxMy41NTIzIDE0IDEzVjJDMTQgMS40NDc3MiAxMy41NTIzIDEgMTMgMUgyWk0zLjA1IDZINC45NVYxMkgzLjA1VjZaTTUuMDc1IDQuMDA1QzUuMDc1IDQuNTk4NzEgNC41OTM3MSA1LjA4IDQgNS4wOEMzLjQwNjMgNS4wOCAyLjkyNSA0LjU5ODcxIDIuOTI1IDQuMDA1QzIuOTI1IDMuNDExMjkgMy40MDYzIDIuOTMgNCAyLjkzQzQuNTkzNzEgMi45MyA1LjA3NSAzLjQxMTI5IDUuMDc1IDQuMDA1Wk0xMiA4LjM1NzEzQzEyIDYuNTUyMDggMTAuODMzNCA1Ljg1MDMzIDkuNjc0NDkgNS44NTAzM0M5LjI5NTAyIDUuODMxNjMgOC45MTcyMSA1LjkxMTE5IDguNTc4NzQgNi4wODEwN0M4LjMyMTcyIDYuMjEwMDcgOC4wNTI2NSA2LjUwNTIzIDcuODQ1MTYgNy4wMTg1M0g3Ljc5MTc5VjYuMDAwNDRINlYxMi4wMDQ3SDcuOTA2MTZWOC44MTEyQzcuODc4NiA4LjQ4NDEzIDcuOTgzMjcgOC4wNjE0MiA4LjE5NzQxIDcuODA5ODdDOC40MTE1NiA3LjU1ODMyIDguNzE3ODkgNy40OTgyNSA4Ljk1MDE1IDcuNDY3NzRIOS4wMjI1OEM5LjYyODc0IDcuNDY3NzQgMTAuMDc4NiA3Ljg0MzAxIDEwLjA3ODYgOC43ODg2OFYxMi4wMDQ3SDExLjk4NDdMMTIgOC4zNTcxM1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJaID0gW1wiY29sb3JcIl07XG52YXIgTGlzdEJ1bGxldEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMlopO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjUgNS4yNUMxLjkxNDIxIDUuMjUgMi4yNSA0LjkxNDIxIDIuMjUgNC41QzIuMjUgNC4wODU3OSAxLjkxNDIxIDMuNzUgMS41IDMuNzVDMS4wODU3OSAzLjc1IDAuNzUgNC4wODU3OSAwLjc1IDQuNUMwLjc1IDQuOTE0MjEgMS4wODU3OSA1LjI1IDEuNSA1LjI1Wk00IDQuNUM0IDQuMjIzODYgNC4yMjM4NiA0IDQuNSA0SDEzLjVDMTMuNzc2MSA0IDE0IDQuMjIzODYgMTQgNC41QzE0IDQuNzc2MTQgMTMuNzc2MSA1IDEzLjUgNUg0LjVDNC4yMjM4NiA1IDQgNC43NzYxNCA0IDQuNVpNNC41IDdDNC4yMjM4NiA3IDQgNy4yMjM4NiA0IDcuNUM0IDcuNzc2MTQgNC4yMjM4NiA4IDQuNSA4SDEzLjVDMTMuNzc2MSA4IDE0IDcuNzc2MTQgMTQgNy41QzE0IDcuMjIzODYgMTMuNzc2MSA3IDEzLjUgN0g0LjVaTTQuNSAxMEM0LjIyMzg2IDEwIDQgMTAuMjIzOSA0IDEwLjVDNCAxMC43NzYxIDQuMjIzODYgMTEgNC41IDExSDEzLjVDMTMuNzc2MSAxMSAxNCAxMC43NzYxIDE0IDEwLjVDMTQgMTAuMjIzOSAxMy43NzYxIDEwIDEzLjUgMTBINC41Wk0yLjI1IDcuNUMyLjI1IDcuOTE0MjEgMS45MTQyMSA4LjI1IDEuNSA4LjI1QzEuMDg1NzkgOC4yNSAwLjc1IDcuOTE0MjEgMC43NSA3LjVDMC43NSA3LjA4NTc5IDEuMDg1NzkgNi43NSAxLjUgNi43NUMxLjkxNDIxIDYuNzUgMi4yNSA3LjA4NTc5IDIuMjUgNy41Wk0xLjUgMTEuMjVDMS45MTQyMSAxMS4yNSAyLjI1IDEwLjkxNDIgMi4yNSAxMC41QzIuMjUgMTAuMDg1OCAxLjkxNDIxIDkuNzUgMS41IDkuNzVDMS4wODU3OSA5Ljc1IDAuNzUgMTAuMDg1OCAwLjc1IDEwLjVDMC43NSAxMC45MTQyIDEuMDg1NzkgMTEuMjUgMS41IDExLjI1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMl8gPSBbXCJjb2xvclwiXTtcbnZhciBMb2NrQ2xvc2VkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyXyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUgNC42MzYwMUM1IDMuNzYwMzEgNS4yNDIxOSAzLjEwNTQgNS42NDMyMyAyLjY3MzU3QzYuMDM5MzQgMi4yNDcwNSA2LjY0NTgyIDEuOTc4MyA3LjUwMTQgMS45NzgzQzguMzU3NDUgMS45NzgzIDguOTYzMDYgMi4yNDY1MiA5LjM1ODIzIDIuNjcyMDhDOS43NTgzOCAzLjEwMjk5IDEwIDMuNzU3MDggMTAgNC42MzMyNVY1Ljk5OTk5SDVWNC42MzYwMVpNNCA1Ljk5OTk5VjQuNjM2MDFDNCAzLjU4MTQ4IDQuMjkzMzkgMi42NTc1NCA0LjkxMDQ5IDEuOTkzMDdDNS41MzI1MiAxLjMyMzI5IDYuNDI2NzUgMC45NzgzMDIgNy41MDE0IDAuOTc4MzAyQzguNTc1ODMgMC45NzgzMDIgOS40Njk1MiAxLjMyMjMzIDEwLjA5MSAxLjk5MTYyQzEwLjcwNzYgMi42NTU1NyAxMSAzLjU3ODk2IDExIDQuNjMzMjVWNS45OTk5OUgxMkMxMi41NTIzIDUuOTk5OTkgMTMgNi40NDc3MSAxMyA2Ljk5OTk5VjEzQzEzIDEzLjU1MjMgMTIuNTUyMyAxNCAxMiAxNEgzQzIuNDQ3NzIgMTQgMiAxMy41NTIzIDIgMTNWNi45OTk5OUMyIDYuNDQ3NzEgMi40NDc3MiA1Ljk5OTk5IDMgNS45OTk5OUg0Wk0zIDYuOTk5OTlIMTJWMTNIM1Y2Ljk5OTk5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMiQgPSBbXCJjb2xvclwiXTtcbnZhciBMb2NrT3BlbjFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDIkKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy40OTg2IDBDNi4zMjU3IDAgNS4zNjEwNyAwLjM4OTQzIDQuNzM3NTMgMS4xOTM2MUM0LjIzNzQ1IDEuODM4NTYgNCAyLjY4MjQyIDQgMy42MzMyNUg1QzUgMi44NDMxMyA1LjE5NjkxIDIuMjMzMTIgNS41Mjc4IDEuODA2MzZDNS45MTYxNSAxLjMwNTUyIDYuNTUxNTIgMSA3LjQ5ODYgMUM4LjM1NjgzIDEgOC45NjMzNiAxLjI2NTAyIDkuMzU4NDYgMS42ODYyM0M5Ljc1NzkzIDIuMTEyMTEgMTAgMi43NjA0NCAxMCAzLjYzNjAxVjZIM0MyLjQ0NzcyIDYgMiA2LjQ0NzcyIDIgN1YxM0MyIDEzLjU1MjMgMi40NDc3MiAxNCAzIDE0SDEyQzEyLjU1MjMgMTQgMTMgMTMuNTUyMyAxMyAxM1Y3QzEzIDYuNDQ3NzEgMTIuNTUyMyA2IDEyIDZIMTFWMy42MzYwMUMxMSAyLjU4MTM1IDEwLjcwNjUgMS42NjE2NyAxMC4wODc4IDEuMDAyMUM5LjQ2NDc3IDAuMzM3ODcxIDguNTcwNjEgMCA3LjQ5ODYgMFpNMyA3SDEyVjEzSDNWN1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDMwID0gW1wiY29sb3JcIl07XG52YXIgTG9ja09wZW4ySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzMCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTkgMy42MzYwMUM5IDIuNzYwNDQgOS4yNDIwNyAyLjExMjExIDkuNjQxNTQgMS42ODYyM0MxMC4wMzY2IDEuMjY1MDIgMTAuNjQzMiAxIDExLjUwMTQgMUMxMi40NDg1IDEgMTMuMDgzOSAxLjMwNTUyIDEzLjQ3MjIgMS44MDYzNkMxMy44MDMxIDIuMjMzMTIgMTQgMi44NDMxMyAxNCAzLjYzMzI1SDE1QzE1IDIuNjgyNDIgMTQuNzYyNiAxLjgzODU2IDE0LjI2MjUgMS4xOTM2MUMxMy42Mzg5IDAuMzg5NDMgMTIuNjc0MyAwIDExLjUwMTQgMEMxMC40Mjk0IDAgOS41MzUyMyAwLjMzNzg3MSA4LjkxMjE4IDEuMDAyMUM4LjI5MzUxIDEuNjYxNjcgOCAyLjU4MTM1IDggMy42MzYwMVY2SDFDMC40NDc3MTUgNiAwIDYuNDQ3NzIgMCA3VjEzQzAgMTMuNTUyMyAwLjQ0NzcxNSAxNCAxIDE0SDEwQzEwLjU1MjMgMTQgMTEgMTMuNTUyMyAxMSAxM1Y3QzExIDYuNDQ3NzIgMTAuNTUyMyA2IDEwIDZIOVYzLjYzNjAxWk0xIDdIMTBWMTNIMVY3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMzEgPSBbXCJjb2xvclwiXTtcbnZhciBMb29wSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzMSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMuMzUzNTUgMS44NTM1NUMzLjU0ODgyIDEuNjU4MjkgMy41NDg4MiAxLjM0MTcxIDMuMzUzNTUgMS4xNDY0NUMzLjE1ODI5IDAuOTUxMTg0IDIuODQxNzEgMC45NTExODQgMi42NDY0NSAxLjE0NjQ1TDAuNjQ2NDQ3IDMuMTQ2NDVDMC40NTExODQgMy4zNDE3MSAwLjQ1MTE4NCAzLjY1ODI5IDAuNjQ2NDQ3IDMuODUzNTVMMi42NDY0NSA1Ljg1MzU1QzIuODQxNzEgNi4wNDg4MiAzLjE1ODI5IDYuMDQ4ODIgMy4zNTM1NSA1Ljg1MzU1QzMuNTQ4ODIgNS42NTgyOSAzLjU0ODgyIDUuMzQxNzEgMy4zNTM1NSA1LjE0NjQ1TDIuMjA3MTEgNEg5LjVDMTEuNDMzIDQgMTMgNS41NjcgMTMgNy41QzEzIDcuNzc2MTQgMTMuMjIzOSA4IDEzLjUgOEMxMy43NzYxIDggMTQgNy43NzYxNCAxNCA3LjVDMTQgNS4wMTQ3MiAxMS45ODUzIDMgOS41IDNIMi4yMDcxMUwzLjM1MzU1IDEuODUzNTVaTTIgNy41QzIgNy4yMjM4NiAxLjc3NjE0IDcgMS41IDdDMS4yMjM4NiA3IDEgNy4yMjM4NiAxIDcuNUMxIDkuOTg1MjggMy4wMTQ3MiAxMiA1LjUgMTJIMTIuNzkyOUwxMS42NDY0IDEzLjE0NjRDMTEuNDUxMiAxMy4zNDE3IDExLjQ1MTIgMTMuNjU4MyAxMS42NDY0IDEzLjg1MzZDMTEuODQxNyAxNC4wNDg4IDEyLjE1ODMgMTQuMDQ4OCAxMi4zNTM2IDEzLjg1MzZMMTQuMzUzNiAxMS44NTM2QzE0LjU0ODggMTEuNjU4MyAxNC41NDg4IDExLjM0MTcgMTQuMzUzNiAxMS4xNDY0TDEyLjM1MzYgOS4xNDY0NUMxMi4xNTgzIDguOTUxMTggMTEuODQxNyA4Ljk1MTE4IDExLjY0NjQgOS4xNDY0NUMxMS40NTEyIDkuMzQxNzEgMTEuNDUxMiA5LjY1ODI5IDExLjY0NjQgOS44NTM1NUwxMi43OTI5IDExSDUuNUMzLjU2NyAxMSAyIDkuNDMzIDIgNy41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMzIgPSBbXCJjb2xvclwiXTtcbnZhciBNYWdpY1dhbmRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDMyKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTMuOSAwLjQ5OTk3NkMxMy45IDAuMjc5MDYyIDEzLjcyMDkgMC4wOTk5NzU2IDEzLjUgMC4wOTk5NzU2QzEzLjI3OTEgMC4wOTk5NzU2IDEzLjEgMC4yNzkwNjIgMTMuMSAwLjQ5OTk3NlYxLjA5OTk4SDEyLjVDMTIuMjc5MSAxLjA5OTk4IDEyLjEgMS4yNzkwNiAxMi4xIDEuNDk5OThDMTIuMSAxLjcyMDg5IDEyLjI3OTEgMS44OTk5OCAxMi41IDEuODk5OThIMTMuMVYyLjQ5OTk4QzEzLjEgMi43MjA4OSAxMy4yNzkxIDIuODk5OTggMTMuNSAyLjg5OTk4QzEzLjcyMDkgMi44OTk5OCAxMy45IDIuNzIwODkgMTMuOSAyLjQ5OTk4VjEuODk5OThIMTQuNUMxNC43MjA5IDEuODk5OTggMTQuOSAxLjcyMDg5IDE0LjkgMS40OTk5OEMxNC45IDEuMjc5MDYgMTQuNzIwOSAxLjA5OTk4IDE0LjUgMS4wOTk5OEgxMy45VjAuNDk5OTc2Wk0xMS44NTM2IDMuMTQ2NDJDMTIuMDQ4OCAzLjM0MTY4IDEyLjA0ODggMy42NTgyNiAxMS44NTM2IDMuODUzNTNMMTAuODUzNiA0Ljg1MzUzQzEwLjY1ODMgNS4wNDg3OSAxMC4zNDE3IDUuMDQ4NzkgMTAuMTQ2NSA0Ljg1MzUzQzkuOTUxMiA0LjY1ODI3IDkuOTUxMiA0LjM0MTY5IDEwLjE0NjUgNC4xNDY0MkwxMS4xNDY0IDMuMTQ2NDNDMTEuMzQxNyAyLjk1MTE2IDExLjY1ODMgMi45NTExNiAxMS44NTM2IDMuMTQ2NDJaTTkuODUzNTcgNS4xNDY0MkMxMC4wNDg4IDUuMzQxNjggMTAuMDQ4OCA1LjY1ODI3IDkuODUzNTcgNS44NTM1M0wyLjg1MzU1IDEyLjg1MzVDMi42NTgyOSAxMy4wNDg4IDIuMzQxNzEgMTMuMDQ4OCAyLjE0NjQ1IDEyLjg1MzVDMS45NTExOCAxMi42NTgzIDEuOTUxMTggMTIuMzQxNyAyLjE0NjQ1IDEyLjE0NjRMOS4xNDY0NiA1LjE0NjQyQzkuMzQxNzIgNC45NTExNiA5LjY1ODMxIDQuOTUxMTYgOS44NTM1NyA1LjE0NjQyWk0xMy41IDUuMDk5OThDMTMuNzIwOSA1LjA5OTk4IDEzLjkgNS4yNzkwNiAxMy45IDUuNDk5OThWNi4wOTk5OEgxNC41QzE0LjcyMDkgNi4wOTk5OCAxNC45IDYuMjc5MDYgMTQuOSA2LjQ5OTk4QzE0LjkgNi43MjA4OSAxNC43MjA5IDYuODk5OTggMTQuNSA2Ljg5OTk4SDEzLjlWNy40OTk5OEMxMy45IDcuNzIwODkgMTMuNzIwOSA3Ljg5OTk4IDEzLjUgNy44OTk5OEMxMy4yNzkxIDcuODk5OTggMTMuMSA3LjcyMDg5IDEzLjEgNy40OTk5OFY2Ljg5OTk4SDEyLjVDMTIuMjc5MSA2Ljg5OTk4IDEyLjEgNi43MjA4OSAxMi4xIDYuNDk5OThDMTIuMSA2LjI3OTA2IDEyLjI3OTEgNi4wOTk5OCAxMi41IDYuMDk5OThIMTMuMVY1LjQ5OTk4QzEzLjEgNS4yNzkwNiAxMy4yNzkxIDUuMDk5OTggMTMuNSA1LjA5OTk4Wk04LjkwMDAyIDAuNDk5OTc2QzguOTAwMDIgMC4yNzkwNjIgOC43MjA5MyAwLjA5OTk3NTYgOC41MDAwMiAwLjA5OTk3NTZDOC4yNzkxIDAuMDk5OTc1NiA4LjEwMDAyIDAuMjc5MDYyIDguMTAwMDIgMC40OTk5NzZWMS4wOTk5OEg3LjUwMDAyQzcuMjc5MSAxLjA5OTk4IDcuMTAwMDIgMS4yNzkwNiA3LjEwMDAyIDEuNDk5OThDNy4xMDAwMiAxLjcyMDg5IDcuMjc5MSAxLjg5OTk4IDcuNTAwMDIgMS44OTk5OEg4LjEwMDAyVjIuNDk5OThDOC4xMDAwMiAyLjcyMDg5IDguMjc5MSAyLjg5OTk4IDguNTAwMDIgMi44OTk5OEM4LjcyMDkzIDIuODk5OTggOC45MDAwMiAyLjcyMDg5IDguOTAwMDIgMi40OTk5OFYxLjg5OTk4SDkuNTAwMDJDOS43MjA5MyAxLjg5OTk4IDkuOTAwMDIgMS43MjA4OSA5LjkwMDAyIDEuNDk5OThDOS45MDAwMiAxLjI3OTA2IDkuNzIwOTMgMS4wOTk5OCA5LjUwMDAyIDEuMDk5OThIOC45MDAwMlYwLjQ5OTk3NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDMzID0gW1wiY29sb3JcIl07XG52YXIgTWFnbmlmeWluZ0dsYXNzSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzMyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEwIDYuNUMxMCA4LjQzMyA4LjQzMyAxMCA2LjUgMTBDNC41NjcgMTAgMyA4LjQzMyAzIDYuNUMzIDQuNTY3IDQuNTY3IDMgNi41IDNDOC40MzMgMyAxMCA0LjU2NyAxMCA2LjVaTTkuMzA4ODQgMTAuMDE1OUM4LjUzOTAxIDEwLjYzMTggNy41NjI1MSAxMSA2LjUgMTFDNC4wMTQ3MiAxMSAyIDguOTg1MjggMiA2LjVDMiA0LjAxNDcyIDQuMDE0NzIgMiA2LjUgMkM4Ljk4NTI4IDIgMTEgNC4wMTQ3MiAxMSA2LjVDMTEgNy41NjI1MSAxMC42MzE4IDguNTM5MDEgMTAuMDE1OSA5LjMwODg0TDEyLjg1MzYgMTIuMTQ2NEMxMy4wNDg4IDEyLjM0MTcgMTMuMDQ4OCAxMi42NTgzIDEyLjg1MzYgMTIuODUzNkMxMi42NTgzIDEzLjA0ODggMTIuMzQxNyAxMy4wNDg4IDEyLjE0NjQgMTIuODUzNkw5LjMwODg0IDEwLjAxNTlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzNCA9IFtcImNvbG9yXCJdO1xudmFyIE1hcmdpbkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMzQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjQ5OTg4IDIuMDAwMTJDMS43NzYwMiAyLjAwMDEyIDEuOTk5ODggMS43NzYyNiAxLjk5OTg4IDEuNTAwMTJDMS45OTk4OCAxLjIyMzk4IDEuNzc2MDIgMS4wMDAxMiAxLjQ5OTg4IDEuMDAwMTJDMS4yMjM3NCAxLjAwMDEyIDAuOTk5ODc4IDEuMjIzOTggMC45OTk4NzggMS41MDAxMkMwLjk5OTg3OCAxLjc3NjI2IDEuMjIzNzQgMi4wMDAxMiAxLjQ5OTg4IDIuMDAwMTJaTTQuNDk5ODggMi4wMDAxMkM0Ljc3NjAyIDIuMDAwMTIgNC45OTk4OCAxLjc3NjI2IDQuOTk5ODggMS41MDAxMkM0Ljk5OTg4IDEuMjIzOTggNC43NzYwMiAxLjAwMDEyIDQuNDk5ODggMS4wMDAxMkM0LjIyMzc0IDEuMDAwMTIgMy45OTk4OCAxLjIyMzk4IDMuOTk5ODggMS41MDAxMkMzLjk5OTg4IDEuNzc2MjYgNC4yMjM3NCAyLjAwMDEyIDQuNDk5ODggMi4wMDAxMlpNNy45OTk4OCAxLjUwMDEyQzcuOTk5ODggMS43NzYyNiA3Ljc3NjAyIDIuMDAwMTIgNy40OTk4OCAyLjAwMDEyQzcuMjIzNzQgMi4wMDAxMiA2Ljk5OTg4IDEuNzc2MjYgNi45OTk4OCAxLjUwMDEyQzYuOTk5ODggMS4yMjM5OCA3LjIyMzc0IDEuMDAwMTIgNy40OTk4OCAxLjAwMDEyQzcuNzc2MDIgMS4wMDAxMiA3Ljk5OTg4IDEuMjIzOTggNy45OTk4OCAxLjUwMDEyWk0xMC40OTk5IDIuMDAwMTJDMTAuNzc2IDIuMDAwMTIgMTAuOTk5OSAxLjc3NjI2IDEwLjk5OTkgMS41MDAxMkMxMC45OTk5IDEuMjIzOTggMTAuNzc2IDEuMDAwMTIgMTAuNDk5OSAxLjAwMDEyQzEwLjIyMzcgMS4wMDAxMiA5Ljk5OTg4IDEuMjIzOTggOS45OTk4OCAxLjUwMDEyQzkuOTk5ODggMS43NzYyNiAxMC4yMjM3IDIuMDAwMTIgMTAuNDk5OSAyLjAwMDEyWk0xMy45OTk5IDEuNTAwMTJDMTMuOTk5OSAxLjc3NjI2IDEzLjc3NiAyLjAwMDEyIDEzLjQ5OTkgMi4wMDAxMkMxMy4yMjM3IDIuMDAwMTIgMTIuOTk5OSAxLjc3NjI2IDEyLjk5OTkgMS41MDAxMkMxMi45OTk5IDEuMjIzOTggMTMuMjIzNyAxLjAwMDEyIDEzLjQ5OTkgMS4wMDAxMkMxMy43NzYgMS4wMDAxMiAxMy45OTk5IDEuMjIzOTggMTMuOTk5OSAxLjUwMDEyWk0xLjQ5OTg4IDE0LjAwMDFDMS43NzYwMiAxNC4wMDAxIDEuOTk5ODggMTMuNzc2MyAxLjk5OTg4IDEzLjUwMDFDMS45OTk4OCAxMy4yMjQgMS43NzYwMiAxMy4wMDAxIDEuNDk5ODggMTMuMDAwMUMxLjIyMzc0IDEzLjAwMDEgMC45OTk4NzggMTMuMjI0IDAuOTk5ODc4IDEzLjUwMDFDMC45OTk4NzggMTMuNzc2MyAxLjIyMzc0IDE0LjAwMDEgMS40OTk4OCAxNC4wMDAxWk0xLjk5OTg4IDEwLjUwMDFDMS45OTk4OCAxMC43NzYzIDEuNzc2MDIgMTEuMDAwMSAxLjQ5OTg4IDExLjAwMDFDMS4yMjM3NCAxMS4wMDAxIDAuOTk5ODc4IDEwLjc3NjMgMC45OTk4NzggMTAuNTAwMUMwLjk5OTg3OCAxMC4yMjQgMS4yMjM3NCAxMC4wMDAxIDEuNDk5ODggMTAuMDAwMUMxLjc3NjAyIDEwLjAwMDEgMS45OTk4OCAxMC4yMjQgMS45OTk4OCAxMC41MDAxWk0xLjQ5OTg4IDguMDAwMTJDMS43NzYwMiA4LjAwMDEyIDEuOTk5ODggNy43NzYyNiAxLjk5OTg4IDcuNTAwMTJDMS45OTk4OCA3LjIyMzk4IDEuNzc2MDIgNy4wMDAxMiAxLjQ5OTg4IDcuMDAwMTJDMS4yMjM3NCA3LjAwMDEyIDAuOTk5ODc4IDcuMjIzOTggMC45OTk4NzggNy41MDAxMkMwLjk5OTg3OCA3Ljc3NjI2IDEuMjIzNzQgOC4wMDAxMiAxLjQ5OTg4IDguMDAwMTJaTTEuOTk5ODggNC41MDAxMkMxLjk5OTg4IDQuNzc2MjYgMS43NzYwMiA1LjAwMDEyIDEuNDk5ODggNS4wMDAxMkMxLjIyMzc0IDUuMDAwMTIgMC45OTk4NzggNC43NzYyNiAwLjk5OTg3OCA0LjUwMDEyQzAuOTk5ODc4IDQuMjIzOTggMS4yMjM3NCA0LjAwMDEyIDEuNDk5ODggNC4wMDAxMkMxLjc3NjAyIDQuMDAwMTIgMS45OTk4OCA0LjIyMzk4IDEuOTk5ODggNC41MDAxMlpNMTMuNDk5OSAxMS4wMDAxQzEzLjc3NiAxMS4wMDAxIDEzLjk5OTkgMTAuNzc2MyAxMy45OTk5IDEwLjUwMDFDMTMuOTk5OSAxMC4yMjQgMTMuNzc2IDEwLjAwMDEgMTMuNDk5OSAxMC4wMDAxQzEzLjIyMzcgMTAuMDAwMSAxMi45OTk5IDEwLjIyNCAxMi45OTk5IDEwLjUwMDFDMTIuOTk5OSAxMC43NzYzIDEzLjIyMzcgMTEuMDAwMSAxMy40OTk5IDExLjAwMDFaTTEzLjk5OTkgNy41MDAxMkMxMy45OTk5IDcuNzc2MjYgMTMuNzc2IDguMDAwMTIgMTMuNDk5OSA4LjAwMDEyQzEzLjIyMzcgOC4wMDAxMiAxMi45OTk5IDcuNzc2MjYgMTIuOTk5OSA3LjUwMDEyQzEyLjk5OTkgNy4yMjM5OCAxMy4yMjM3IDcuMDAwMTIgMTMuNDk5OSA3LjAwMDEyQzEzLjc3NiA3LjAwMDEyIDEzLjk5OTkgNy4yMjM5OCAxMy45OTk5IDcuNTAwMTJaTTEzLjQ5OTkgNS4wMDAxMkMxMy43NzYgNS4wMDAxMiAxMy45OTk5IDQuNzc2MjYgMTMuOTk5OSA0LjUwMDEyQzEzLjk5OTkgNC4yMjM5OCAxMy43NzYgNC4wMDAxMiAxMy40OTk5IDQuMDAwMTJDMTMuMjIzNyA0LjAwMDEyIDEyLjk5OTkgNC4yMjM5OCAxMi45OTk5IDQuNTAwMTJDMTIuOTk5OSA0Ljc3NjI2IDEzLjIyMzcgNS4wMDAxMiAxMy40OTk5IDUuMDAwMTJaTTQuOTk5ODggMTMuNTAwMUM0Ljk5OTg4IDEzLjc3NjMgNC43NzYwMiAxNC4wMDAxIDQuNDk5ODggMTQuMDAwMUM0LjIyMzc0IDE0LjAwMDEgMy45OTk4OCAxMy43NzYzIDMuOTk5ODggMTMuNTAwMUMzLjk5OTg4IDEzLjIyNCA0LjIyMzc0IDEzLjAwMDEgNC40OTk4OCAxMy4wMDAxQzQuNzc2MDIgMTMuMDAwMSA0Ljk5OTg4IDEzLjIyNCA0Ljk5OTg4IDEzLjUwMDFaTTcuNDk5ODggMTQuMDAwMUM3Ljc3NjAyIDE0LjAwMDEgNy45OTk4OCAxMy43NzYzIDcuOTk5ODggMTMuNTAwMUM3Ljk5OTg4IDEzLjIyNCA3Ljc3NjAyIDEzLjAwMDEgNy40OTk4OCAxMy4wMDAxQzcuMjIzNzQgMTMuMDAwMSA2Ljk5OTg4IDEzLjIyNCA2Ljk5OTg4IDEzLjUwMDFDNi45OTk4OCAxMy43NzYzIDcuMjIzNzQgMTQuMDAwMSA3LjQ5OTg4IDE0LjAwMDFaTTEwLjk5OTkgMTMuNTAwMUMxMC45OTk5IDEzLjc3NjMgMTAuNzc2IDE0LjAwMDEgMTAuNDk5OSAxNC4wMDAxQzEwLjIyMzcgMTQuMDAwMSA5Ljk5OTg4IDEzLjc3NjMgOS45OTk4OCAxMy41MDAxQzkuOTk5ODggMTMuMjI0IDEwLjIyMzcgMTMuMDAwMSAxMC40OTk5IDEzLjAwMDFDMTAuNzc2IDEzLjAwMDEgMTAuOTk5OSAxMy4yMjQgMTAuOTk5OSAxMy41MDAxWk0xMy40OTk5IDE0LjAwMDFDMTMuNzc2IDE0LjAwMDEgMTMuOTk5OSAxMy43NzYzIDEzLjk5OTkgMTMuNTAwMUMxMy45OTk5IDEzLjIyNCAxMy43NzYgMTMuMDAwMSAxMy40OTk5IDEzLjAwMDFDMTMuMjIzNyAxMy4wMDAxIDEyLjk5OTkgMTMuMjI0IDEyLjk5OTkgMTMuNTAwMUMxMi45OTk5IDEzLjc3NjMgMTMuMjIzNyAxNC4wMDAxIDEzLjQ5OTkgMTQuMDAwMVpNMy45OTk4OCA1LjAwMDEyQzMuOTk5ODggNC40NDc4NCA0LjQ0NzU5IDQuMDAwMTIgNC45OTk4OCA0LjAwMDEySDkuOTk5ODhDMTAuNTUyMiA0LjAwMDEyIDEwLjk5OTkgNC40NDc4NCAxMC45OTk5IDUuMDAwMTJWMTAuMDAwMUMxMC45OTk5IDEwLjU1MjQgMTAuNTUyMiAxMS4wMDAxIDkuOTk5ODggMTEuMDAwMUg0Ljk5OTg4QzQuNDQ3NTkgMTEuMDAwMSAzLjk5OTg4IDEwLjU1MjQgMy45OTk4OCAxMC4wMDAxVjUuMDAwMTJaTTQuOTk5ODggNS4wMDAxMkg5Ljk5OTg4VjEwLjAwMDFINC45OTk4OFY1LjAwMDEyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMzUgPSBbXCJjb2xvclwiXTtcbnZhciBNYXNrT2ZmSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzNSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEgMkgxNFYxM0gxTDEgMlpNMCAyQzAgMS40NDc3MiAwLjQ0NzcxNSAxIDEgMUgxNEMxNC41NTIzIDEgMTUgMS40NDc3MiAxNSAyVjEzQzE1IDEzLjU1MjMgMTQuNTUyMyAxNCAxNCAxNEgxQzAuNDQ3NzE1IDE0IDAgMTMuNTUyMyAwIDEzVjJaTTQuODc1IDcuNUM0Ljg3NSA2LjA1MDI1IDYuMDUwMjUgNC44NzUgNy41IDQuODc1QzguOTQ5NzUgNC44NzUgMTAuMTI1IDYuMDUwMjUgMTAuMTI1IDcuNUMxMC4xMjUgOC45NDk3NSA4Ljk0OTc1IDEwLjEyNSA3LjUgMTAuMTI1QzYuMDUwMjUgMTAuMTI1IDQuODc1IDguOTQ5NzUgNC44NzUgNy41Wk03LjUgMy44NzVDNS40OTc5NyAzLjg3NSAzLjg3NSA1LjQ5Nzk3IDMuODc1IDcuNUMzLjg3NSA5LjUwMjAzIDUuNDk3OTcgMTEuMTI1IDcuNSAxMS4xMjVDOS41MDIwMyAxMS4xMjUgMTEuMTI1IDkuNTAyMDMgMTEuMTI1IDcuNUMxMS4xMjUgNS40OTc5NyA5LjUwMjAzIDMuODc1IDcuNSAzLjg3NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDM2ID0gW1wiY29sb3JcIl07XG52YXIgTWFza09uSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzNik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEgMUMwLjQ0NzcxNSAxIDAgMS40NDc3MiAwIDJWMTNDMCAxMy41NTIzIDAuNDQ3NzE1IDE0IDEgMTRIMTRDMTQuNTUyMyAxNCAxNSAxMy41NTIzIDE1IDEzVjJDMTUgMS40NDc3MiAxNC41NTIzIDEgMTQgMUgxWk03LjUgMTAuNjI1QzkuMjI1ODkgMTAuNjI1IDEwLjYyNSA5LjIyNTg5IDEwLjYyNSA3LjVDMTAuNjI1IDUuNzc0MTEgOS4yMjU4OSA0LjM3NSA3LjUgNC4zNzVDNS43NzQxMSA0LjM3NSA0LjM3NSA1Ljc3NDExIDQuMzc1IDcuNUM0LjM3NSA5LjIyNTg5IDUuNzc0MTEgMTAuNjI1IDcuNSAxMC42MjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzNyA9IFtcImNvbG9yXCJdO1xudmFyIE1pbnVzSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzNyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuMjUgNy41QzIuMjUgNy4yMjM4NiAyLjQ3Mzg2IDcgMi43NSA3SDEyLjI1QzEyLjUyNjEgNyAxMi43NSA3LjIyMzg2IDEyLjc1IDcuNUMxMi43NSA3Ljc3NjE0IDEyLjUyNjEgOCAxMi4yNSA4SDIuNzVDMi40NzM4NiA4IDIuMjUgNy43NzYxNCAyLjI1IDcuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDM4ID0gW1wiY29sb3JcIl07XG52YXIgTWludXNDaXJjbGVkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzOCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTEgMC44NzY4OTJDMy44NDIyMiAwLjg3Njg5MiAwLjg3NzA3NSAzLjg0MjA0IDAuODc3MDc1IDcuNDk5NzJDMC44NzcwNzUgMTEuMTU3NCAzLjg0MjIyIDE0LjEyMjYgNy40OTk5MSAxNC4xMjI2QzExLjE1NzYgMTQuMTIyNiAxNC4xMjI3IDExLjE1NzQgMTQuMTIyNyA3LjQ5OTcyQzE0LjEyMjcgMy44NDIwNCAxMS4xNTc2IDAuODc2ODkyIDcuNDk5OTEgMC44NzY4OTJaTTEuODI3MDcgNy40OTk3MkMxLjgyNzA3IDQuMzY2NzEgNC4zNjY4OSAxLjgyNjg5IDcuNDk5OTEgMS44MjY4OUMxMC42MzI5IDEuODI2ODkgMTMuMTcyNyA0LjM2NjcxIDEzLjE3MjcgNy40OTk3MkMxMy4xNzI3IDEwLjYzMjcgMTAuNjMyOSAxMy4xNzI2IDcuNDk5OTEgMTMuMTcyNkM0LjM2Njg5IDEzLjE3MjYgMS44MjcwNyAxMC42MzI3IDEuODI3MDcgNy40OTk3MlpNNC41MDAwMyA3QzQuMjIzODkgNyA0LjAwMDAzIDcuMjIzODYgNC4wMDAwMyA3LjVDNC4wMDAwMyA3Ljc3NjE0IDQuMjIzODkgOCA0LjUwMDAzIDhIMTAuNUMxMC43NzYyIDggMTEgNy43NzYxNCAxMSA3LjVDMTEgNy4yMjM4NiAxMC43NzYyIDcgMTAuNSA3SDQuNTAwMDNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzOSA9IFtcImNvbG9yXCJdO1xudmFyIE1peEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMzkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0yLjE0OTIxIDMuOTk5OTZDMi4xNDkyMSAyLjk3Nzc4IDIuOTc3ODQgMi4xNDkxNSA0LjAwMDAyIDIuMTQ5MTVDNS4wMjIxOSAyLjE0OTE1IDUuODUwODMgMi45Nzc3OCA1Ljg1MDgzIDMuOTk5OTZDNS44NTA4MyA1LjAyMjEzIDUuMDIyMTkgNS44NTA3NyA0LjAwMDAyIDUuODUwNzdDMi45Nzc4NCA1Ljg1MDc3IDIuMTQ5MjEgNS4wMjIxMyAyLjE0OTIxIDMuOTk5OTZaTTQuMDAwMDIgMS4yNDkxNUMyLjQ4MDc5IDEuMjQ5MTUgMS4yNDkyMSAyLjQ4MDczIDEuMjQ5MjEgMy45OTk5NkMxLjI0OTIxIDUuNTE5MTkgMi40ODA3OSA2Ljc1MDc3IDQuMDAwMDIgNi43NTA3N0M1LjUxOTI1IDYuNzUwNzcgNi43NTA4MyA1LjUxOTE5IDYuNzUwODMgMy45OTk5NkM2Ljc1MDgzIDIuNDgwNzMgNS41MTkyNSAxLjI0OTE1IDQuMDAwMDIgMS4yNDkxNVpNNS44MjAzNCAxMS4wMDAxTDIuNDk5OTggMTIuODM2OVY5LjE2MzMxTDUuODIwMzQgMTEuMDAwMVpNMi42Mzg4MyA4LjIxMTU5QzIuMTcyMjggNy45NTM1IDEuNTk5OTggOC4yOTA5MyAxLjU5OTk4IDguODI0MTFWMTMuMTc2MUMxLjU5OTk4IDEzLjcwOTMgMi4xNzIyOCAxNC4wNDY3IDIuNjM4ODMgMTMuNzg4Nkw2LjU3MjM1IDExLjYxMjZDNy4wNTM4OSAxMS4zNDYyIDcuMDUzODkgMTAuNjU0IDYuNTcyMzUgMTAuMzg3NkwyLjYzODgzIDguMjExNTlaTTguMzAwMDEgOS4wMDAwM0M4LjMwMDAxIDguNjEzNDMgOC42MTM0MSA4LjMwMDAzIDkuMDAwMDEgOC4zMDAwM0gxM0MxMy4zODY2IDguMzAwMDMgMTMuNyA4LjYxMzQzIDEzLjcgOS4wMDAwM1YxM0MxMy43IDEzLjM4NjYgMTMuMzg2NiAxMy43IDEzIDEzLjdIOS4wMDAwMUM4LjYxMzQxIDEzLjcgOC4zMDAwMSAxMy4zODY2IDguMzAwMDEgMTNWOS4wMDAwM1pNOS4yMDAwMSA5LjIwMDAzVjEyLjhIMTIuOFY5LjIwMDAzSDkuMjAwMDFaTTEzLjQ0MzIgMi4xOTMxMUMxMy42MTg5IDIuMDE3MzcgMTMuNjE4OSAxLjczMjQ1IDEzLjQ0MzIgMS41NTY3MUMxMy4yNjc1IDEuMzgwOTggMTIuOTgyNiAxLjM4MDk4IDEyLjgwNjggMS41NTY3MUwxMSAzLjM2MzUzTDkuMTkzMjEgMS41NTY3NEM5LjAxNzQ4IDEuMzgxIDguNzMyNTUgMS4zODEgOC41NTY4MiAxLjU1Njc0QzguMzgxMDggMS43MzI0NyA4LjM4MTA4IDIuMDE3NCA4LjU1NjgyIDIuMTkzMTNMMTAuMzYzNiAzLjk5OTkyTDguNTU2ODIgNS44MDY3MUM4LjM4MTA4IDUuOTgyNDUgOC4zODEwOCA2LjI2NzM3IDguNTU2ODIgNi40NDMxMUM4LjczMjU1IDYuNjE4ODUgOS4wMTc0OCA2LjYxODg1IDkuMTkzMjEgNi40NDMxMUwxMSA0LjYzNjMyTDEyLjgwNjggNi40NDMxNEMxMi45ODI2IDYuNjE4ODcgMTMuMjY3NSA2LjYxODg3IDEzLjQ0MzIgNi40NDMxNEMxMy42MTg5IDYuMjY3NCAxMy42MTg5IDUuOTgyNDcgMTMuNDQzMiA1LjgwNjc0TDExLjYzNjQgMy45OTk5MkwxMy40NDMyIDIuMTkzMTFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzYSA9IFtcImNvbG9yXCJdO1xudmFyIE1peGVySG9yaXpvbnRhbEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM2EpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk01LjUgM0M0LjY3MTU3IDMgNCAzLjY3MTU3IDQgNC41QzQgNS4zMjg0MyA0LjY3MTU3IDYgNS41IDZDNi4zMjg0MyA2IDcgNS4zMjg0MyA3IDQuNUM3IDMuNjcxNTcgNi4zMjg0MyAzIDUuNSAzWk0zIDVDMy4wMTY3MSA1IDMuMDMzMjMgNC45OTkxOCAzLjA0OTUyIDQuOTk3NThDMy4yODAyMiA2LjEzOTkgNC4yODk2NyA3IDUuNSA3QzYuNzEwMzMgNyA3LjcxOTc4IDYuMTM5OSA3Ljk1MDQ4IDQuOTk3NThDNy45NjY3NyA0Ljk5OTE4IDcuOTgzMjkgNSA4IDVIMTMuNUMxMy43NzYxIDUgMTQgNC43NzYxNCAxNCA0LjVDMTQgNC4yMjM4NiAxMy43NzYxIDQgMTMuNSA0SDhDNy45ODMyOSA0IDcuOTY2NzcgNC4wMDA4MiA3Ljk1MDQ4IDQuMDAyNDJDNy43MTk3OCAyLjg2MDA5IDYuNzEwMzMgMiA1LjUgMkM0LjI4OTY3IDIgMy4yODAyMiAyLjg2MDA5IDMuMDQ5NTIgNC4wMDI0MkMzLjAzMzIzIDQuMDAwODIgMy4wMTY3MSA0IDMgNEgxLjVDMS4yMjM4NiA0IDEgNC4yMjM4NiAxIDQuNUMxIDQuNzc2MTQgMS4yMjM4NiA1IDEuNSA1SDNaTTExLjk1MDUgMTAuOTk3NkMxMS43MTk4IDEyLjEzOTkgMTAuNzEwMyAxMyA5LjUgMTNDOC4yODk2NyAxMyA3LjI4MDIyIDEyLjEzOTkgNy4wNDk1MiAxMC45OTc2QzcuMDMzMjMgMTAuOTk5MiA3LjAxNjcxIDExIDcgMTFIMS41QzEuMjIzODYgMTEgMSAxMC43NzYxIDEgMTAuNUMxIDEwLjIyMzkgMS4yMjM4NiAxMCAxLjUgMTBIN0M3LjAxNjcxIDEwIDcuMDMzMjMgMTAuMDAwOCA3LjA0OTUyIDEwLjAwMjRDNy4yODAyMiA4Ljg2MDEgOC4yODk2NyA4IDkuNSA4QzEwLjcxMDMgOCAxMS43MTk4IDguODYwMSAxMS45NTA1IDEwLjAwMjRDMTEuOTY2OCAxMC4wMDA4IDExLjk4MzMgMTAgMTIgMTBIMTMuNUMxMy43NzYxIDEwIDE0IDEwLjIyMzkgMTQgMTAuNUMxNCAxMC43NzYxIDEzLjc3NjEgMTEgMTMuNSAxMUgxMkMxMS45ODMzIDExIDExLjk2NjggMTAuOTk5MiAxMS45NTA1IDEwLjk5NzZaTTggMTAuNUM4IDkuNjcxNTcgOC42NzE1NyA5IDkuNSA5QzEwLjMyODQgOSAxMSA5LjY3MTU3IDExIDEwLjVDMTEgMTEuMzI4NCAxMC4zMjg0IDEyIDkuNSAxMkM4LjY3MTU3IDEyIDggMTEuMzI4NCA4IDEwLjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzYiA9IFtcImNvbG9yXCJdO1xudmFyIE1peGVyVmVydGljYWxJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNiKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNSAxLjVDNSAxLjIyMzg2IDQuNzc2MTQgMSA0LjUgMUM0LjIyMzg2IDEgNCAxLjIyMzg2IDQgMS41TDQgN0M0IDcuMDE2NzEgNC4wMDA4MiA3LjAzMzIzIDQuMDAyNDIgNy4wNDk1MkMyLjg2MDA5IDcuMjgwMjIgMiA4LjI4OTY3IDIgOS41QzIgMTAuNzEwMyAyLjg2MDA5IDExLjcxOTggNC4wMDI0MiAxMS45NTA1QzQuMDAwODIgMTEuOTY2OCA0IDExLjk4MzMgNCAxMlYxMy41QzQgMTMuNzc2MSA0LjIyMzg2IDE0IDQuNSAxNEM0Ljc3NjE0IDE0IDUgMTMuNzc2MSA1IDEzLjVWMTJDNSAxMS45ODMzIDQuOTk5MTggMTEuOTY2OCA0Ljk5NzU4IDExLjk1MDVDNi4xMzk5IDExLjcxOTggNyAxMC43MTAzIDcgOS41QzcgOC4yODk2NyA2LjEzOTkgNy4yODAyMiA0Ljk5NzU4IDcuMDQ5NTJDNC45OTkxOCA3LjAzMzIzIDUgNy4wMTY3MSA1IDdMNSAxLjVaTTExIDEuNUMxMSAxLjIyMzg2IDEwLjc3NjEgMSAxMC41IDFDMTAuMjIzOSAxIDEwIDEuMjIzODYgMTAgMS41VjNDMTAgMy4wMTY3MSAxMC4wMDA4IDMuMDMzMjMgMTAuMDAyNCAzLjA0OTUyQzguODYwMSAzLjI4MDIyIDggNC4yODk2NyA4IDUuNUM4IDYuNzEwMzMgOC44NjAxIDcuNzE5NzggMTAuMDAyNCA3Ljk1MDQ4QzEwLjAwMDggNy45NjY3NyAxMCA3Ljk4MzI5IDEwIDhWMTMuNUMxMCAxMy43NzYxIDEwLjIyMzkgMTQgMTAuNSAxNEMxMC43NzYxIDE0IDExIDEzLjc3NjEgMTEgMTMuNVY4QzExIDcuOTgzMjkgMTAuOTk5MiA3Ljk2Njc3IDEwLjk5NzYgNy45NTA0OEMxMi4xMzk5IDcuNzE5NzggMTMgNi43MTAzMyAxMyA1LjVDMTMgNC4yODk2NyAxMi4xMzk5IDMuMjgwMjIgMTAuOTk3NiAzLjA0OTUyQzEwLjk5OTIgMy4wMzMyMyAxMSAzLjAxNjcxIDExIDNWMS41Wk00LjUgOEMzLjY3MTU3IDggMyA4LjY3MTU3IDMgOS41QzMgMTAuMzI4NCAzLjY3MTU3IDExIDQuNSAxMUM1LjMyODQzIDExIDYgMTAuMzI4NCA2IDkuNUM2IDguNjcxNTcgNS4zMjg0MyA4IDQuNSA4Wk05IDUuNUM5IDQuNjcxNTcgOS42NzE1NyA0IDEwLjUgNEMxMS4zMjg0IDQgMTIgNC42NzE1NyAxMiA1LjVDMTIgNi4zMjg0MyAxMS4zMjg0IDcgMTAuNSA3QzkuNjcxNTcgNyA5IDYuMzI4NDMgOSA1LjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzYyA9IFtcImNvbG9yXCJdO1xudmFyIE1vYmlsZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM2MpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk00IDIuNUM0IDIuMjIzODYgNC4yMjM4NiAyIDQuNSAySDEwLjVDMTAuNzc2MSAyIDExIDIuMjIzODYgMTEgMi41VjEyLjVDMTEgMTIuNzc2MSAxMC43NzYxIDEzIDEwLjUgMTNINC41QzQuMjIzODYgMTMgNCAxMi43NzYxIDQgMTIuNVYyLjVaTTQuNSAxQzMuNjcxNTcgMSAzIDEuNjcxNTcgMyAyLjVWMTIuNUMzIDEzLjMyODQgMy42NzE1NyAxNCA0LjUgMTRIMTAuNUMxMS4zMjg0IDE0IDEyIDEzLjMyODQgMTIgMTIuNVYyLjVDMTIgMS42NzE1NyAxMS4zMjg0IDEgMTAuNSAxSDQuNVpNNiAxMS42NUM1LjgwNjcgMTEuNjUgNS42NSAxMS44MDY3IDUuNjUgMTJDNS42NSAxMi4xOTMzIDUuODA2NyAxMi4zNSA2IDEyLjM1SDlDOS4xOTMzIDEyLjM1IDkuMzUgMTIuMTkzMyA5LjM1IDEyQzkuMzUgMTEuODA2NyA5LjE5MzMgMTEuNjUgOSAxMS42NUg2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM2QgPSBbXCJjb2xvclwiXTtcbnZhciBNb2R1bHpMb2dvSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzZCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuMjU5MjUgMy4xNjY2N0w0LjM3MDM2IDUuMzMzMzNWMUw3LjI1OTI1IDMuMTY2NjdaTTEgOC4yMjIyMkwzLjg4ODg5IDYuMDU1NTVMMSAzLjg4ODg5VjguMjIyMjJaTTEgMTRMMy44ODg4OSAxMS44MzMzTDEgOS42NjY2NlYxNFpNNy43NDA3MiA4LjIyMjIyTDEwLjYyOTYgNi4wNTU1NUw3Ljc0MDcyIDMuODg4ODlWOC4yMjIyMlpNMTQgMy4xNjY2N0wxMS4xMTExIDUuMzMzMzNWMUwxNCAzLjE2NjY3Wk0xMS4xMTExIDExLjExMTFMMTQgOC45NDQ0NEwxMS4xMTExIDYuNzc3NzdWMTEuMTExMVpNMy44ODg4OSAxMS4xMTExTDEgOC45NDQ0NEwzLjg4ODg5IDYuNzc3NzdWMTEuMTExMVpNNC4zNzAzNiA2LjA1NTU1TDcuMjU5MjUgOC4yMjIyMlYzLjg4ODg5TDQuMzcwMzYgNi4wNTU1NVpNMy44ODg4OSA1LjMzMzMzTDEgMy4xNjY2N0wzLjg4ODg5IDFWNS4zMzMzM1pNNy43NDA3MiAzLjE2NjY3TDEwLjYyOTYgNS4zMzMzM1YxTDcuNzQwNzIgMy4xNjY2N1pNMTQgOC4yMjIyMkwxMS4xMTExIDYuMDU1NTVMMTQgMy44ODg4OVY4LjIyMjIyWk0xMS4xMTExIDExLjgzMzNMMTQgMTRWOS42NjY2NkwxMS4xMTExIDExLjgzMzNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzZSA9IFtcImNvbG9yXCJdO1xudmFyIE1vb25JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNlKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMi44OTk5OCAwLjQ5OTk3NkMyLjg5OTk4IDAuMjc5MDYyIDIuNzIwODkgMC4wOTk5NzU2IDIuNDk5OTggMC4wOTk5NzU2QzIuMjc5MDYgMC4wOTk5NzU2IDIuMDk5OTggMC4yNzkwNjIgMi4wOTk5OCAwLjQ5OTk3NlYxLjA5OTk4SDEuNDk5OThDMS4yNzkwNiAxLjA5OTk4IDEuMDk5OTggMS4yNzkwNiAxLjA5OTk4IDEuNDk5OThDMS4wOTk5OCAxLjcyMDg5IDEuMjc5MDYgMS44OTk5OCAxLjQ5OTk4IDEuODk5OThIMi4wOTk5OFYyLjQ5OTk4QzIuMDk5OTggMi43MjA4OSAyLjI3OTA2IDIuODk5OTggMi40OTk5OCAyLjg5OTk4QzIuNzIwODkgMi44OTk5OCAyLjg5OTk4IDIuNzIwODkgMi44OTk5OCAyLjQ5OTk4VjEuODk5OThIMy40OTk5OEMzLjcyMDg5IDEuODk5OTggMy44OTk5OCAxLjcyMDg5IDMuODk5OTggMS40OTk5OEMzLjg5OTk4IDEuMjc5MDYgMy43MjA4OSAxLjA5OTk4IDMuNDk5OTggMS4wOTk5OEgyLjg5OTk4VjAuNDk5OTc2Wk01Ljg5OTk4IDMuNDk5OThDNS44OTk5OCAzLjI3OTA2IDUuNzIwODkgMy4wOTk5OCA1LjQ5OTk4IDMuMDk5OThDNS4yNzkwNiAzLjA5OTk4IDUuMDk5OTggMy4yNzkwNiA1LjA5OTk4IDMuNDk5OThWNC4wOTk5OEg0LjQ5OTk4QzQuMjc5MDYgNC4wOTk5OCA0LjA5OTk4IDQuMjc5MDYgNC4wOTk5OCA0LjQ5OTk4QzQuMDk5OTggNC43MjA4OSA0LjI3OTA2IDQuODk5OTggNC40OTk5OCA0Ljg5OTk4SDUuMDk5OThWNS40OTk5OEM1LjA5OTk4IDUuNzIwODkgNS4yNzkwNiA1Ljg5OTk4IDUuNDk5OTggNS44OTk5OEM1LjcyMDg5IDUuODk5OTggNS44OTk5OCA1LjcyMDg5IDUuODk5OTggNS40OTk5OFY0Ljg5OTk4SDYuNDk5OThDNi43MjA4OSA0Ljg5OTk4IDYuODk5OTggNC43MjA4OSA2Ljg5OTk4IDQuNDk5OThDNi44OTk5OCA0LjI3OTA2IDYuNzIwODkgNC4wOTk5OCA2LjQ5OTk4IDQuMDk5OThINS44OTk5OFYzLjQ5OTk4Wk0xLjg5OTk4IDYuNDk5OThDMS44OTk5OCA2LjI3OTA2IDEuNzIwODkgNi4wOTk5OCAxLjQ5OTk4IDYuMDk5OThDMS4yNzkwNiA2LjA5OTk4IDEuMDk5OTggNi4yNzkwNiAxLjA5OTk4IDYuNDk5OThWNy4wOTk5OEgwLjQ5OTk3NkMwLjI3OTA2MiA3LjA5OTk4IDAuMDk5OTc1NiA3LjI3OTA2IDAuMDk5OTc1NiA3LjQ5OTk4QzAuMDk5OTc1NiA3LjcyMDg5IDAuMjc5MDYyIDcuODk5OTggMC40OTk5NzYgNy44OTk5OEgxLjA5OTk4VjguNDk5OThDMS4wOTk5OCA4LjcyMDg5IDEuMjc5MDYgOC44OTk5NyAxLjQ5OTk4IDguODk5OTdDMS43MjA4OSA4Ljg5OTk3IDEuODk5OTggOC43MjA4OSAxLjg5OTk4IDguNDk5OThWNy44OTk5OEgyLjQ5OTk4QzIuNzIwODkgNy44OTk5OCAyLjg5OTk4IDcuNzIwODkgMi44OTk5OCA3LjQ5OTk4QzIuODk5OTggNy4yNzkwNiAyLjcyMDg5IDcuMDk5OTggMi40OTk5OCA3LjA5OTk4SDEuODk5OThWNi40OTk5OFpNOC41NDQwNiAwLjk4MTg0TDguMjQ2MTggMC45NDE1ODZDOC4wMzI3NSAwLjkxNzY3NiA3LjkwNjkyIDEuMTY1NSA4LjAyOTM2IDEuMzQxOTRDOC4xNzAxMyAxLjU0NDc5IDguMjk5ODEgMS43NTU5MiA4LjQxNzU0IDEuOTc0NDVDOC45MTg3OCAyLjkwNDg1IDkuMjAzMjIgMy45NjkzMiA5LjIwMzIyIDUuMTAwMjJDOS4yMDMyMiA4LjM3MjAxIDYuODIyNDcgMTEuMDg3OCAzLjY5ODg3IDExLjYwOTdDMy40NTczNiAxMS42NSAzLjIwOTg4IDExLjY3NzIgMi45NjAwOCAxMS42OTA2QzIuNzQ1NjMgMTEuNzAyIDIuNjI3MjkgMTEuOTUzNSAyLjc3NzIxIDEyLjEwNzJDMi44NDU1MSAxMi4xNzczIDIuOTE1MzUgMTIuMjQ1OCAyLjk4NjY3IDEyLjMxMjhMMy4wNTg4MyAxMi4zNzk1TDMuMzE4ODMgMTIuNjA0NUwzLjUwNjg0IDEyLjc1MzJMMy42Mjc5NiAxMi44NDMzTDMuODE0OTEgMTIuOTc0MkwzLjk5MDc5IDEzLjA4OUM0LjExMTc1IDEzLjE2NTEgNC4yMzUzNiAxMy4yMzc1IDQuMzYxNTcgMTMuMzA1OUw0LjYyNDk2IDEzLjQ0MTJMNC44ODU1MyAxMy41NjA3TDUuMTg4MzcgMTMuNjgyOEw1LjQzMTY5IDEzLjc2ODZDNS41NjU2NCAxMy44MTI4IDUuNzAxNDkgMTMuODUyOSA1LjgzODU3IDEzLjg4ODVDNS45NDI2MiAxMy45MTU1IDYuMDQ3NjcgMTMuOTQwMSA2LjE1NDA1IDEzLjk2MjJDNi4yNzk5MyAxMy45ODgzIDYuNDA3MTMgMTQuMDEwOSA2LjUzNTQ0IDE0LjAyOThMNi44NTI0MSAxNC4wNjg1TDcuMTE5MzQgMTQuMDg5MkM3LjI0NjM3IDE0LjA5NjUgNy4zNzQzNiAxNC4xMDAyIDcuNTAzMjIgMTQuMTAwMkMxMS4xNDgzIDE0LjEwMDIgMTQuMTAzMiAxMS4xNDUzIDE0LjEwMzIgNy41MDAyM0MxNC4xMDMyIDcuMjUwNDQgMTQuMDg5MyA3LjAwMzg5IDE0LjA2MjMgNi43NjEzMUwxNC4wMjU1IDYuNDg0MDdDMTMuOTkxIDYuMjYwODMgMTMuOTQ1MyA2LjA0MTI5IDEzLjg4OTEgNS44MjY0MkMxMy44MjEzIDUuNTY3MDkgMTMuNzM4MiA1LjMxMzk4IDEzLjY0MDkgNS4wNjg4MUwxMy41Mjc5IDQuODAxMzJMMTMuNDUwNyA0LjYzNTQyTDEzLjM3NjYgNC40ODY2NkMxMy4yMTc4IDQuMTc3NzMgMTMuMDM1MyAzLjg4Mjk1IDEyLjgzMTIgMy42MDQyM0wxMi42NzgyIDMuNDAzNTJMMTIuNDc5MyAzLjE2NDMyTDEyLjMxNTcgMi45ODM2MUwxMi4xOTYxIDIuODU5NTFMMTIuMDM1NSAyLjcwMjQ2TDExLjgxMzQgMi41MDE4NEwxMS40OTI1IDIuMjQxOTFMMTEuMjQ4MyAyLjA2NDk4TDEwLjk1NjIgMS44NzQ0NkwxMC42MzQ2IDEuNjg4OTRMMTAuMzA3MyAxLjUyMzc4TDEwLjE5MzggMS40NzE3Nkw5Ljk1NDg4IDEuMzcwNkw5LjY3NzkxIDEuMjY2OUw5LjQyNTY2IDEuMTg0Nkw5LjEwMDc1IDEuMDk0ODlMOC44MzU5OSAxLjAzNDg2TDguNTQ0MDYgMC45ODE4NFpNMTAuNDAzMiA1LjMwMDIzQzEwLjQwMzIgNC4yNzU4OCAxMC4yMDAyIDMuMjk4MjkgOS44MzI0NCAyLjQwNjA0QzExLjc2MjMgMy4yODk5NSAxMy4xMDMyIDUuMjM4NjIgMTMuMTAzMiA3LjUwMDIzQzEzLjEwMzIgMTAuNTkzIDEwLjU5NiAxMy4xMDAyIDcuNTAzMjIgMTMuMTAwMkM2LjYzNjQ2IDEzLjEwMDIgNS44MTU5NyAxMi45MDM2IDUuMDgzNTUgMTIuNTUyMkM2LjU0MTkgMTIuMDk0MSA3LjgxMDgxIDExLjIwODIgOC43NDMyMiAxMC4wNDE2QzguODc5NjMgMTAuMjI4NCA5LjEwMDI4IDEwLjM0OTcgOS4zNDkyOCAxMC4zNDk3QzkuNzYzNDkgMTAuMzQ5NyAxMC4wOTkzIDEwLjAxMzkgMTAuMDk5MyA5LjU5OTcxQzEwLjA5OTMgOS4yNDI1NiA5Ljg0OTY1IDguOTQzNzMgOS41MTUzNSA4Ljg2ODE2QzkuNTc3NDEgOC43NTE2NSA5LjYzNjUzIDguNjMzMzQgOS42OTI2IDguNTEzMzJDOS44ODM1OCA4LjYzMTYzIDEwLjEwODggOC42OTk5MyAxMC4zNSA4LjY5OTkzQzExLjA0MDMgOC42OTk5MyAxMS42IDguMTQwMjggMTEuNiA3LjQ0OTkzQzExLjYgNi43NTk3NiAxMS4wNDA2IDYuMjAwMjQgMTAuMzUwNSA2LjE5OTkzQzEwLjM4NTMgNS45MDQ4NyAxMC40MDMyIDUuNjA0NjQgMTAuNDAzMiA1LjMwMDIzWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM2YgPSBbXCJjb2xvclwiXTtcbnZhciBNb3ZlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzZik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuODE4MTkgMC45MzE3OUM3LjY0MjQ1IDAuNzU2MDU0IDcuMzU3NTMgMC43NTYwNTQgNy4xODE3OSAwLjkzMTc5TDUuNDMxNzkgMi42ODE3OUM1LjI1NjA1IDIuODU3NTMgNS4yNTYwNSAzLjE0MjQ1IDUuNDMxNzkgMy4zMTgxOUM1LjYwNzUzIDMuNDkzOTIgNS44OTI0NSAzLjQ5MzkyIDYuMDY4MTkgMy4zMTgxOUw2Ljk5OTk5IDIuMzg2MzhWNS40OTk5OUM2Ljk5OTk5IDUuNzc2MTMgNy4yMjM4NSA1Ljk5OTk5IDcuNDk5OTkgNS45OTk5OUM3Ljc3NjEzIDUuOTk5OTkgNy45OTk5OSA1Ljc3NjEzIDcuOTk5OTkgNS40OTk5OVYyLjM4NjM4TDguOTMxNzkgMy4zMTgxOUM5LjEwNzUzIDMuNDkzOTIgOS4zOTI0NSAzLjQ5MzkyIDkuNTY4MTkgMy4zMTgxOUM5Ljc0MzkyIDMuMTQyNDUgOS43NDM5MiAyLjg1NzUzIDkuNTY4MTkgMi42ODE3OUw3LjgxODE5IDAuOTMxNzlaTTcuOTk5OTkgOS40OTk5OUM3Ljk5OTk5IDkuMjIzODUgNy43NzYxMyA4Ljk5OTk5IDcuNDk5OTkgOC45OTk5OUM3LjIyMzg1IDguOTk5OTkgNi45OTk5OSA5LjIyMzg1IDYuOTk5OTkgOS40OTk5OVYxMi42MTM2TDYuMDY4MTkgMTEuNjgxOEM1Ljg5MjQ1IDExLjUwNjEgNS42MDc1MyAxMS41MDYxIDUuNDMxNzkgMTEuNjgxOEM1LjI1NjA1IDExLjg1NzUgNS4yNTYwNSAxMi4xNDI0IDUuNDMxNzkgMTIuMzE4Mkw3LjE4MTc5IDE0LjA2ODJDNy4zNTc1MyAxNC4yNDM5IDcuNjQyNDUgMTQuMjQzOSA3LjgxODE5IDE0LjA2ODJMOS41NjgxOSAxMi4zMTgyQzkuNzQzOTIgMTIuMTQyNCA5Ljc0MzkyIDExLjg1NzUgOS41NjgxOSAxMS42ODE4QzkuMzkyNDUgMTEuNTA2MSA5LjEwNzUzIDExLjUwNjEgOC45MzE3OSAxMS42ODE4TDcuOTk5OTkgMTIuNjEzNlY5LjQ5OTk5Wk04Ljk5OTk5IDcuNDk5OTlDOC45OTk5OSA3LjIyMzg1IDkuMjIzODUgNi45OTk5OSA5LjQ5OTk5IDYuOTk5OTlIMTIuNjEzNkwxMS42ODE4IDYuMDY4MTlDMTEuNTA2MSA1Ljg5MjQ1IDExLjUwNjEgNS42MDc1MyAxMS42ODE4IDUuNDMxNzlDMTEuODU3NSA1LjI1NjA1IDEyLjE0MjQgNS4yNTYwNSAxMi4zMTgyIDUuNDMxNzlMMTQuMDY4MiA3LjE4MTc5QzE0LjI0MzkgNy4zNTc1MyAxNC4yNDM5IDcuNjQyNDUgMTQuMDY4MiA3LjgxODE5TDEyLjMxODIgOS41NjgxOUMxMi4xNDI0IDkuNzQzOTIgMTEuODU3NSA5Ljc0MzkyIDExLjY4MTggOS41NjgxOUMxMS41MDYxIDkuMzkyNDUgMTEuNTA2MSA5LjEwNzUzIDExLjY4MTggOC45MzE3OUwxMi42MTM2IDcuOTk5OTlIOS40OTk5OUM5LjIyMzg1IDcuOTk5OTkgOC45OTk5OSA3Ljc3NjEzIDguOTk5OTkgNy40OTk5OVpNMy4zMTgxOSA2LjA2ODE5TDIuMzg2MzggNi45OTk5OUg1LjQ5OTk5QzUuNzc2MTMgNi45OTk5OSA1Ljk5OTk5IDcuMjIzODUgNS45OTk5OSA3LjQ5OTk5QzUuOTk5OTkgNy43NzYxMyA1Ljc3NjEzIDcuOTk5OTkgNS40OTk5OSA3Ljk5OTk5SDIuMzg2MzhMMy4zMTgxOSA4LjkzMTc5QzMuNDkzOTIgOS4xMDc1MyAzLjQ5MzkyIDkuMzkyNDUgMy4zMTgxOSA5LjU2ODE5QzMuMTQyNDUgOS43NDM5MiAyLjg1NzUzIDkuNzQzOTIgMi42ODE3OSA5LjU2ODE5TDAuOTMxNzkgNy44MTgxOUMwLjc1NjA1NCA3LjY0MjQ1IDAuNzU2MDU0IDcuMzU3NTMgMC45MzE3OSA3LjE4MTc5TDIuNjgxNzkgNS40MzE3OUMyLjg1NzUzIDUuMjU2MDUgMy4xNDI0NSA1LjI1NjA1IDMuMzE4MTkgNS40MzE3OUMzLjQ5MzkyIDUuNjA3NTMgMy40OTM5MiA1Ljg5MjQ1IDMuMzE4MTkgNi4wNjgxOVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNnID0gW1wiY29sb3JcIl07XG52YXIgTm90aW9uTG9nb0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM2cpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zLjI1NzgxIDMuMTE2ODRDMy42Nzc3MSAzLjQ1Nzk2IDMuODM1MjMgMy40MzE5MyA0LjYyMzY5IDMuMzc5MzNMMTIuMDU3MSAyLjkzMjk5QzEyLjIxNDcgMi45MzI5OSAxMi4wODM2IDIuNzc1NzEgMTIuMDMxMSAyLjc0OTU3TDEwLjc5NjUgMS44NTcxMUMxMC41NiAxLjY3MzQ3IDEwLjI0NDggMS40NjMxNSA5LjY0MDgzIDEuNTE1NzZMMi40NDMwOCAyLjA0MDc0QzIuMTgwNTkgMi4wNjY3NyAyLjEyODE1IDIuMTk4MDEgMi4yMzI3IDIuMzAzMjJMMy4yNTc4MSAzLjExNjg0Wk0zLjcwNDEgNC44NDkxN1YxMi42NzA0QzMuNzA0MSAxMy4wOTA3IDMuOTE0MTUgMTMuMjQ4IDQuMzg2OTMgMTMuMjIyTDEyLjU1NjIgMTIuNzQ5M0MxMy4wMjkyIDEyLjcyMzMgMTMuMDgxOSAxMi40MzQxIDEzLjA4MTkgMTIuMDkyN1Y0LjMyMzk3QzEzLjA4MTkgMy45ODMwNiAxMi45NTA4IDMuNzk5MjEgMTIuNjYxMiAzLjgyNTQ1TDQuMTI0MjIgNC4zMjM5N0MzLjgwOTE4IDQuMzUwNDQgMy43MDQxIDQuNTA4MDMgMy43MDQxIDQuODQ5MTdaTTExLjc2ODggNS4yNjg3MkMxMS44MjEyIDUuNTA1MTggMTEuNzY4OCA1Ljc0MTQyIDExLjUzMTkgNS43Njc5OUwxMS4xMzgzIDUuODQ2NDFWMTEuNjIwNUMxMC43OTY1IDExLjgwNDIgMTAuNDgxNCAxMS45MDkyIDEwLjIxODggMTEuOTA5MkM5Ljc5ODM1IDExLjkwOTIgOS42OTMwNSAxMS43Nzc5IDkuMzc4MTIgMTEuMzg0NEw2LjgwMzQ1IDcuMzQyNDlWMTEuMjUzMkw3LjYxODE2IDExLjQzN0M3LjYxODE2IDExLjQzNyA3LjYxODE2IDExLjkwOTIgNi45NjA4NiAxMS45MDkyTDUuMTQ4NzkgMTIuMDE0M0M1LjA5NjE1IDExLjkwOTIgNS4xNDg3OSAxMS42NDcgNS4zMzI1OSAxMS41OTQ0TDUuODA1NDYgMTEuNDYzNFY2LjI5Mjc2TDUuMTQ4OSA2LjI0MDE1QzUuMDk2MjUgNi4wMDM2OSA1LjIyNzM5IDUuNjYyNzggNS41OTU0IDUuNjM2MzFMNy41MzkzNSA1LjUwNTI4TDEwLjIxODggOS41OTk4VjUuOTc3NjVMOS41MzU2NCA1Ljg5OTI0QzkuNDgzMiA1LjYxMDE4IDkuNjkzMDUgNS40MDAyOCA5Ljk1NTc2IDUuMzc0MjVMMTEuNzY4OCA1LjI2ODcyWk0xLjgzODc0IDEuMzMyMTJMOS4zMjU1NyAwLjc4MDc4N0MxMC4yNDUgMC43MDE5MzIgMTAuNDgxNSAwLjc1NDc1MyAxMS4wNTk0IDEuMTc0NTJMMTMuNDQ5MiAyLjg1NDI0QzEzLjg0MzYgMy4xNDMwOSAxMy45NzUgMy4yMjE3MyAxMy45NzUgMy41MzY2MVYxMi43NDkzQzEzLjk3NSAxMy4zMjY2IDEzLjc2NDcgMTMuNjY4MSAxMy4wMjkzIDEzLjcyMDNMNC4zMzQ5MiAxNC4yNDU0QzMuNzgyOTEgMTQuMjcxNyAzLjUyMDE5IDE0LjE5MyAzLjIzMTExIDEzLjgyNTNMMS40NzExNiAxMS41NDE5QzEuMTU1OCAxMS4xMjE2IDEuMDI0NjYgMTAuODA3MSAxLjAyNDY2IDEwLjQzOTJWMi4yNTA0MUMxLjAyNDY2IDEuNzc4MjUgMS4yMzUwNCAxLjM4NDQxIDEuODM4NzQgMS4zMzIxMlpcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzaCA9IFtcImNvbG9yXCJdO1xudmFyIE9wYWNpdHlJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNoKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy41IDEuNUM0LjUgNC4yNSAzIDYuNSAzIDlDMyAxMS40ODUzIDUuMDE0NzIgMTMuNSA3LjUgMTMuNUM5Ljk4NTI4IDEzLjUgMTIgMTEuNDg1MyAxMiA5QzEyIDYuNSAxMC41IDQuMjUgNy41IDEuNVpNMTEgOUMxMSA3LjExMjAzIDkuOTczMTUgNS4yNzE5NSA3LjUgMi44NzM1N0M1LjAyNjg2IDUuMjcxOTUgNCA3LjExMjAzIDQgOUM0IDEwLjkzMyA1LjU2NyAxMi41IDcuNSAxMi41QzkuNDMzIDEyLjUgMTEgMTAuOTMzIDExIDlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzaSA9IFtcImNvbG9yXCJdO1xudmFyIE9wZW5Jbk5ld1dpbmRvd0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM2kpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGQ6IFwiTTEyIDEzQzEyLjU1MjMgMTMgMTMgMTIuNTUyMyAxMyAxMlYzQzEzIDIuNDQ3NzEgMTIuNTUyMyAyIDEyIDJIM0MyLjQ0NzcxIDIgMiAyLjQ0NzcxIDIgM1Y2LjVDMiA2Ljc3NjE0IDIuMjIzODYgNyAyLjUgN0MyLjc3NjE0IDcgMyA2Ljc3NjE0IDMgNi41VjNIMTJWMTJIOC41QzguMjIzODYgMTIgOCAxMi4yMjM5IDggMTIuNUM4IDEyLjc3NjEgOC4yMjM4NiAxMyA4LjUgMTNIMTJaTTkgNi41QzkgNi41MDAxIDkgNi41MDAyMSA5IDYuNTAwMzFWNi41MDAzNVY5LjVDOSA5Ljc3NjE0IDguNzc2MTQgMTAgOC41IDEwQzguMjIzODYgMTAgOCA5Ljc3NjE0IDggOS41VjcuNzA3MTFMMi44NTM1NSAxMi44NTM2QzIuNjU4MjkgMTMuMDQ4OCAyLjM0MTcxIDEzLjA0ODggMi4xNDY0NSAxMi44NTM2QzEuOTUxMTggMTIuNjU4MyAxLjk1MTE4IDEyLjM0MTcgMi4xNDY0NSAxMi4xNDY0TDcuMjkyODkgN0g1LjVDNS4yMjM4NiA3IDUgNi43NzYxNCA1IDYuNUM1IDYuMjIzODYgNS4yMjM4NiA2IDUuNSA2SDguNUM4LjU2Nzc5IDYgOC42MzI0NCA2LjAxMzQ5IDguNjkxMzkgNi4wMzc5NEM4Ljc0OTQ5IDYuMDYxOTggOC44MDM5OCA2LjA5NzQ0IDguODUxNDMgNi4xNDQzM0M4Ljk0MjUxIDYuMjM0MzQgOC45OTkyIDYuMzU5MDkgOC45OTk5OSA2LjQ5NzA4TDguOTk5OTkgNi40OTczOFwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNqID0gW1wiY29sb3JcIl07XG52YXIgT3ZlcmxpbmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNqKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy40OTk4NSAxLjEwMDAxQzMuMjc4OTQgMS4xMDAwMSAzLjA5OTg1IDEuMjc5MDkgMy4wOTk4NSAxLjUwMDAxQzMuMDk5ODUgMS43MjA5MiAzLjI3ODk0IDEuOTAwMDEgMy40OTk4NSAxLjkwMDAxSDExLjQ5OTlDMTEuNzIwOCAxLjkwMDAxIDExLjg5OTkgMS43MjA5MiAxMS44OTk5IDEuNTAwMDFDMTEuODk5OSAxLjI3OTA5IDExLjcyMDggMS4xMDAwMSAxMS40OTk5IDEuMTAwMDFIMy40OTk4NVpNNC45OTk5NSA0LjI1MDAxQzQuOTk5OTUgMy45NzM4NyA0Ljc3NjA5IDMuNzUwMDEgNC40OTk5NSAzLjc1MDAxQzQuMjIzODEgMy43NTAwMSAzLjk5OTk1IDMuOTczODcgMy45OTk5NSA0LjI1MDAxVjkuNTUwMDFDMy45OTk5NSAxMS40ODMgNS41NjY5NSAxMy4wNSA3LjQ5OTk1IDEzLjA1QzkuNDMyOTUgMTMuMDUgMTEgMTEuNDgzIDExIDkuNTUwMDFWNC4yNTAwMUMxMSAzLjk3Mzg3IDEwLjc3NjEgMy43NTAwMSAxMC41IDMuNzUwMDFDMTAuMjIzOCAzLjc1MDAxIDkuOTk5OTUgMy45NzM4NyA5Ljk5OTk1IDQuMjUwMDFWOS41NTAwMUM5Ljk5OTk1IDEwLjkzMDcgOC44ODA2NiAxMi4wNSA3LjQ5OTk1IDEyLjA1QzYuMTE5MjQgMTIuMDUgNC45OTk5NSAxMC45MzA3IDQuOTk5OTUgOS41NTAwMVY0LjI1MDAxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM2sgPSBbXCJjb2xvclwiXTtcbnZhciBQYWRkaW5nSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzayk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuODU3MTQgMkgxMi4xNDI5QzEyLjYxNjIgMiAxMyAyLjM4Mzc2IDEzIDIuODU3MTRWMTIuMTQyOUMxMyAxMi42MTYyIDEyLjYxNjIgMTMgMTIuMTQyOSAxM0gyLjg1NzE0QzIuMzgzNzYgMTMgMiAxMi42MTYyIDIgMTIuMTQyOVYyLjg1NzE0QzIgMi4zODM3NiAyLjM4Mzc2IDIgMi44NTcxNCAyWk0xIDIuODU3MTRDMSAxLjgzMTQ3IDEuODMxNDcgMSAyLjg1NzE0IDFIMTIuMTQyOUMxMy4xNjg1IDEgMTQgMS44MzE0NyAxNCAyLjg1NzE0VjEyLjE0MjlDMTQgMTMuMTY4NSAxMy4xNjg1IDE0IDEyLjE0MjkgMTRIMi44NTcxNEMxLjgzMTQ3IDE0IDEgMTMuMTY4NSAxIDEyLjE0MjlWMi44NTcxNFpNNy40OTk4OCA1LjAwMDEyQzcuNzc2MDIgNS4wMDAxMiA3Ljk5OTg4IDQuNzc2MjYgNy45OTk4OCA0LjUwMDEyQzcuOTk5ODggNC4yMjM5OCA3Ljc3NjAyIDQuMDAwMTIgNy40OTk4OCA0LjAwMDEyQzcuMjIzNzQgNC4wMDAxMiA2Ljk5OTg4IDQuMjIzOTggNi45OTk4OCA0LjUwMDEyQzYuOTk5ODggNC43NzYyNiA3LjIyMzc0IDUuMDAwMTIgNy40OTk4OCA1LjAwMDEyWk00LjQ5OTg4IDExLjAwMDFDNC43NzYwMiAxMS4wMDAxIDQuOTk5ODggMTAuNzc2MyA0Ljk5OTg4IDEwLjUwMDFDNC45OTk4OCAxMC4yMjQgNC43NzYwMiAxMC4wMDAxIDQuNDk5ODggMTAuMDAwMUM0LjIyMzc0IDEwLjAwMDEgMy45OTk4OCAxMC4yMjQgMy45OTk4OCAxMC41MDAxQzMuOTk5ODggMTAuNzc2MyA0LjIyMzc0IDExLjAwMDEgNC40OTk4OCAxMS4wMDAxWk00Ljk5OTg4IDcuNTAwMTJDNC45OTk4OCA3Ljc3NjI2IDQuNzc2MDIgOC4wMDAxMiA0LjQ5OTg4IDguMDAwMTJDNC4yMjM3NCA4LjAwMDEyIDMuOTk5ODggNy43NzYyNiAzLjk5OTg4IDcuNTAwMTJDMy45OTk4OCA3LjIyMzk4IDQuMjIzNzQgNy4wMDAxMiA0LjQ5OTg4IDcuMDAwMTJDNC43NzYwMiA3LjAwMDEyIDQuOTk5ODggNy4yMjM5OCA0Ljk5OTg4IDcuNTAwMTJaTTQuNDk5ODggNS4wMDAxMkM0Ljc3NjAyIDUuMDAwMTIgNC45OTk4OCA0Ljc3NjI2IDQuOTk5ODggNC41MDAxMkM0Ljk5OTg4IDQuMjIzOTggNC43NzYwMiA0LjAwMDEyIDQuNDk5ODggNC4wMDAxMkM0LjIyMzc0IDQuMDAwMTIgMy45OTk4OCA0LjIyMzk4IDMuOTk5ODggNC41MDAxMkMzLjk5OTg4IDQuNzc2MjYgNC4yMjM3NCA1LjAwMDEyIDQuNDk5ODggNS4wMDAxMlpNMTAuOTk5OSAxMC41MDAxQzEwLjk5OTkgMTAuNzc2MyAxMC43NzYgMTEuMDAwMSAxMC40OTk5IDExLjAwMDFDMTAuMjIzNyAxMS4wMDAxIDkuOTk5ODggMTAuNzc2MyA5Ljk5OTg4IDEwLjUwMDFDOS45OTk4OCAxMC4yMjQgMTAuMjIzNyAxMC4wMDAxIDEwLjQ5OTkgMTAuMDAwMUMxMC43NzYgMTAuMDAwMSAxMC45OTk5IDEwLjIyNCAxMC45OTk5IDEwLjUwMDFaTTEwLjQ5OTkgOC4wMDAxMkMxMC43NzYgOC4wMDAxMiAxMC45OTk5IDcuNzc2MjYgMTAuOTk5OSA3LjUwMDEyQzEwLjk5OTkgNy4yMjM5OCAxMC43NzYgNy4wMDAxMiAxMC40OTk5IDcuMDAwMTJDMTAuMjIzNyA3LjAwMDEyIDkuOTk5ODggNy4yMjM5OCA5Ljk5OTg4IDcuNTAwMTJDOS45OTk4OCA3Ljc3NjI2IDEwLjIyMzcgOC4wMDAxMiAxMC40OTk5IDguMDAwMTJaTTEwLjk5OTkgNC41MDAxMkMxMC45OTk5IDQuNzc2MjYgMTAuNzc2IDUuMDAwMTIgMTAuNDk5OSA1LjAwMDEyQzEwLjIyMzcgNS4wMDAxMiA5Ljk5OTg4IDQuNzc2MjYgOS45OTk4OCA0LjUwMDEyQzkuOTk5ODggNC4yMjM5OCAxMC4yMjM3IDQuMDAwMTIgMTAuNDk5OSA0LjAwMDEyQzEwLjc3NiA0LjAwMDEyIDEwLjk5OTkgNC4yMjM5OCAxMC45OTk5IDQuNTAwMTJaTTcuNDk5ODggMTEuMDAwMUM3Ljc3NjAyIDExLjAwMDEgNy45OTk4OCAxMC43NzYzIDcuOTk5ODggMTAuNTAwMUM3Ljk5OTg4IDEwLjIyNCA3Ljc3NjAyIDEwLjAwMDEgNy40OTk4OCAxMC4wMDAxQzcuMjIzNzQgMTAuMDAwMSA2Ljk5OTg4IDEwLjIyNCA2Ljk5OTg4IDEwLjUwMDFDNi45OTk4OCAxMC43NzYzIDcuMjIzNzQgMTEuMDAwMSA3LjQ5OTg4IDExLjAwMDFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzbCA9IFtcImNvbG9yXCJdO1xudmFyIFBhcGVyUGxhbmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNsKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS4yMDMwOCAxLjA0MzEyQzEuMDA0ODEgMC45NTQ5OTggMC43NzIzNDEgMS4wMDQ4IDAuNjI3NTc3IDEuMTY2NDFDMC40ODI4MTMgMS4zMjgwMiAwLjQ1ODc5NCAxLjU2NDU1IDAuNTY4MTE3IDEuNzUxOTZMMy45MjExNSA3LjUwMDAyTDAuNTY4MTE3IDEzLjI0ODFDMC40NTg3OTQgMTMuNDM1NSAwLjQ4MjgxMyAxMy42NzIgMC42Mjc1NzcgMTMuODMzNkMwLjc3MjM0MSAxMy45OTUyIDEuMDA0ODEgMTQuMDQ1IDEuMjAzMDggMTMuOTU2OUwxNC43MDMxIDcuOTU2OTNDMTQuODgzNiA3Ljg3NjY4IDE1IDcuNjk3NjIgMTUgNy41MDAwMkMxNSA3LjMwMjQzIDE0Ljg4MzYgNy4xMjMzNyAxNC43MDMxIDcuMDQzMTJMMS4yMDMwOCAxLjA0MzEyWk00Ljg0NTUzIDcuMTAwMDJMMi4yMTIzNCAyLjU4NkwxMy4yNjg5IDcuNTAwMDJMMi4yMTIzNCAxMi40MTRMNC44NDU1MiA3LjkwMDAySDlDOS4yMjA5MiA3LjkwMDAyIDkuNCA3LjcyMDk0IDkuNCA3LjUwMDAyQzkuNCA3LjI3OTExIDkuMjIwOTIgNy4xMDAwMiA5IDcuMTAwMDJINC44NDU1M1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNtID0gW1wiY29sb3JcIl07XG52YXIgUGF1c2VJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNtKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNi4wNDk5NSAyLjc0OTk4QzYuMDQ5OTUgMi40NDYyMyA1LjgwMzcxIDIuMTk5OTggNS40OTk5NSAyLjE5OTk4QzUuMTk2MTkgMi4xOTk5OCA0Ljk0OTk1IDIuNDQ2MjMgNC45NDk5NSAyLjc0OTk4VjEyLjI1QzQuOTQ5OTUgMTIuNTUzNyA1LjE5NjE5IDEyLjggNS40OTk5NSAxMi44QzUuODAzNzEgMTIuOCA2LjA0OTk1IDEyLjU1MzcgNi4wNDk5NSAxMi4yNVYyLjc0OTk4Wk0xMC4wNSAyLjc0OTk4QzEwLjA1IDIuNDQ2MjMgOS44MDM3MSAyLjE5OTk4IDkuNDk5OTUgMi4xOTk5OEM5LjE5NjE5IDIuMTk5OTggOC45NDk5NSAyLjQ0NjIzIDguOTQ5OTUgMi43NDk5OFYxMi4yNUM4Ljk0OTk1IDEyLjU1MzcgOS4xOTYxOSAxMi44IDkuNDk5OTUgMTIuOEM5LjgwMzcxIDEyLjggMTAuMDUgMTIuNTUzNyAxMC4wNSAxMi4yNVYyLjc0OTk4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM24gPSBbXCJjb2xvclwiXTtcbnZhciBQZW5jaWwxSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzbik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTExLjg1MzYgMS4xNDY0NUMxMS42NTgzIDAuOTUxMTg0IDExLjM0MTcgMC45NTExODQgMTEuMTQ2NSAxLjE0NjQ1TDMuNzE0NTUgOC41NzgzNkMzLjYyNDU5IDguNjY4MzIgMy41NTI2MyA4Ljc3NDYxIDMuNTAyNTEgOC44OTE1NUwyLjA0MDQ0IDEyLjMwM0MxLjk1OTkgMTIuNDkxIDIuMDAxODkgMTIuNzA5IDIuMTQ2NDYgMTIuODUzNkMyLjI5MTAzIDEyLjk5ODEgMi41MDkwNSAxMy4wNDAxIDIuNjk2OTcgMTIuOTU5Nkw2LjEwODQ3IDExLjQ5NzVDNi4yMjU0IDExLjQ0NzQgNi4zMzE3IDExLjM3NTQgNi40MjE2NiAxMS4yODU1TDEzLjg1MzYgMy44NTM1NUMxNC4wNDg4IDMuNjU4MjkgMTQuMDQ4OCAzLjM0MTcxIDEzLjg1MzYgMy4xNDY0NUwxMS44NTM2IDEuMTQ2NDVaTTQuNDIxNjYgOS4yODU0N0wxMS41IDIuMjA3MTFMMTIuNzkyOSAzLjVMNS43MTQ1NSAxMC41Nzg0TDQuMjE5MjQgMTEuMjE5MkwzLjc4MDgxIDEwLjc4MDhMNC40MjE2NiA5LjI4NTQ3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM28gPSBbXCJjb2xvclwiXTtcbnZhciBQZW5jaWwySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzbyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEyLjE0NjQgMS4xNDY0NUMxMi4zNDE3IDAuOTUxMTg0IDEyLjY1ODMgMC45NTExODQgMTIuODUzNSAxLjE0NjQ1TDE0Ljg1MzUgMy4xNDY0NUMxNS4wNDg4IDMuMzQxNzEgMTUuMDQ4OCAzLjY1ODI5IDE0Ljg1MzUgMy44NTM1NUwxMC45MTA5IDcuNzk2MThDMTAuODM0OSA3Ljg3MjE4IDEwLjc0NzEgNy45MzU0MyAxMC42NTEgNy45ODM1TDYuNzIzNTkgOS45NDcyMUM2LjUzMTA5IDEwLjA0MzUgNi4yOTg2MSAxMC4wMDU3IDYuMTQ2NDMgOS44NTM1NUM1Ljk5NDI1IDkuNzAxMzcgNS45NTY1MiA5LjQ2ODg5IDYuMDUyNzcgOS4yNzYzOUw4LjAxNjQ4IDUuMzQ4OTdDOC4wNjQ1NSA1LjI1MjgzIDguMTI3OCA1LjE2NTA3IDguMjAzOCA1LjA4OTA3TDEyLjE0NjQgMS4xNDY0NVpNMTIuNSAyLjIwNzExTDguOTEwOTEgNS43OTYxOEw3Ljg3MjY2IDcuODcyNjdMOC4xMjczMSA4LjEyNzMyTDEwLjIwMzggNy4wODkwN0wxMy43OTI5IDMuNUwxMi41IDIuMjA3MTFaTTkuOTk5OTggMkw4Ljk5OTk4IDNINC45QzQuNDcxNzEgMyA0LjE4MDU2IDMuMDAwMzkgMy45NTU1MiAzLjAxODc3QzMuNzM2MzEgMy4wMzY2OCAzLjYyNDIxIDMuMDY5MTUgMy41NDYwMSAzLjEwODk5QzMuMzU3ODUgMy4yMDQ4NyAzLjIwNDg3IDMuMzU3ODUgMy4xMDg5OSAzLjU0NjAxQzMuMDY5MTUgMy42MjQyMSAzLjAzNjY5IDMuNzM2MzEgMy4wMTg3OCAzLjk1NTUyQzMuMDAwMzkgNC4xODA1NiAzIDQuNDcxNzEgMyA0LjlWMTEuMUMzIDExLjUyODMgMy4wMDAzOSAxMS44MTk0IDMuMDE4NzggMTIuMDQ0NUMzLjAzNjY5IDEyLjI2MzcgMy4wNjkxNSAxMi4zNzU4IDMuMTA4OTkgMTIuNDU0QzMuMjA0ODcgMTIuNjQyMiAzLjM1Nzg1IDEyLjc5NTEgMy41NDYwMSAxMi44OTFDMy42MjQyMSAxMi45MzA5IDMuNzM2MzEgMTIuOTYzMyAzLjk1NTUyIDEyLjk4MTJDNC4xODA1NiAxMi45OTk2IDQuNDcxNzEgMTMgNC45IDEzSDExLjFDMTEuNTI4MyAxMyAxMS44MTk0IDEyLjk5OTYgMTIuMDQ0NSAxMi45ODEyQzEyLjI2MzcgMTIuOTYzMyAxMi4zNzU4IDEyLjkzMDkgMTIuNDU0IDEyLjg5MUMxMi42NDIyIDEyLjc5NTEgMTIuNzk1MSAxMi42NDIyIDEyLjg5MSAxMi40NTRDMTIuOTMwOSAxMi4zNzU4IDEyLjk2MzMgMTIuMjYzNyAxMi45ODEyIDEyLjA0NDVDMTIuOTk5NiAxMS44MTk0IDEzIDExLjUyODMgMTMgMTEuMVY2Ljk5OTk4TDE0IDUuOTk5OThWMTEuMVYxMS4xMjA3QzE0IDExLjUyMzEgMTQgMTEuODU1MyAxMy45Nzc5IDEyLjEyNTlDMTMuOTU0OSAxMi40MDcgMTMuOTA1NyAxMi42NjUzIDEzLjc4MiAxMi45MDhDMTMuNTkwMyAxMy4yODQzIDEzLjI4NDMgMTMuNTkwMyAxMi45MDggMTMuNzgyQzEyLjY2NTMgMTMuOTA1NyAxMi40MDcgMTMuOTU0OSAxMi4xMjU5IDEzLjk3NzlDMTEuODU1MyAxNCAxMS41MjMxIDE0IDExLjEyMDcgMTRIMTEuMUg0LjlINC44NzkzNEM0LjQ3Njg2IDE0IDQuMTQ0NjggMTQgMy44NzQwOSAxMy45Nzc5QzMuNTkzMDQgMTMuOTU0OSAzLjMzNDY5IDEzLjkwNTcgMy4wOTIwMiAxMy43ODJDMi43MTU3IDEzLjU5MDMgMi40MDk3MyAxMy4yODQzIDIuMjE3OTkgMTIuOTA4QzIuMDk0MzQgMTIuNjY1MyAyLjA0NTA2IDEyLjQwNyAyLjAyMjEgMTIuMTI1OUMxLjk5OTk5IDExLjg1NTMgMS45OTk5OSAxMS41MjMxIDIgMTEuMTIwN1YxMS4xMjA2VjExLjFWNC45VjQuODc5MzVWNC44NzkzMlY0Ljg3OTMxQzEuOTk5OTkgNC40NzY4NSAxLjk5OTk5IDQuMTQ0NjggMi4wMjIxIDMuODc0MDlDMi4wNDUwNiAzLjU5MzA0IDIuMDk0MzQgMy4zMzQ2OSAyLjIxNzk5IDMuMDkyMDJDMi40MDk3MyAyLjcxNTY5IDIuNzE1NyAyLjQwOTczIDMuMDkyMDIgMi4yMTc5OUMzLjMzNDY5IDIuMDk0MzQgMy41OTMwNCAyLjA0NTA2IDMuODc0MDkgMi4wMjIxQzQuMTQ0NjggMS45OTk5OSA0LjQ3Njg1IDEuOTk5OTkgNC44NzkzMiAySDQuODc5MzVINC45SDkuOTk5OThaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzcCA9IFtcImNvbG9yXCJdO1xudmFyIFBlcnNvbkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM3ApO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjUgMC44NzVDNS40OTc5NyAwLjg3NSAzLjg3NSAyLjQ5Nzk3IDMuODc1IDQuNUMzLjg3NSA2LjE1Mjg4IDQuOTgxMjQgNy41NDczOCA2LjQ5MzczIDcuOTgzNTFDNS4yOTk3IDguMTI5MDEgNC4yNzU1NyA4LjU1MTM0IDMuNTA0MDcgOS4zMTE2N0MyLjUyMjE2IDEwLjI3OTQgMi4wMjUwMiAxMS43MiAyLjAyNTAyIDEzLjU5OTlDMi4wMjUwMiAxMy44NjIzIDIuMjM3NjkgMTQuMDc0OSAyLjUwMDAyIDE0LjA3NDlDMi43NjIzNiAxNC4wNzQ5IDIuOTc1MDIgMTMuODYyMyAyLjk3NTAyIDEzLjU5OTlDMi45NzUwMiAxMS44Nzk5IDMuNDI3ODYgMTAuNzIwNiA0LjE3MDkxIDkuOTg4M0M0LjkxNTM2IDkuMjU0NjMgNi4wMjY3NCA4Ljg3NDk5IDcuNDk5OTUgOC44NzQ5OUM4Ljk3MzE3IDguODc0OTkgMTAuMDg0NiA5LjI1NDYzIDEwLjgyOTEgOS45ODgzMUMxMS41NzIxIDEwLjcyMDYgMTIuMDI1IDExLjg3OTkgMTIuMDI1IDEzLjU5OTlDMTIuMDI1IDEzLjg2MjMgMTIuMjM3NiAxNC4wNzQ5IDEyLjUgMTQuMDc0OUMxMi43NjIzIDE0LjA3NSAxMi45NzUgMTMuODYyMyAxMi45NzUgMTMuNkMxMi45NzUgMTEuNzIgMTIuNDc3OCAxMC4yNzk0IDExLjQ5NTkgOS4zMTE2NkMxMC43MjQ0IDguNTUxMzUgOS43MDAyNSA4LjEyOTAzIDguNTA2MjUgNy45ODM1MkMxMC4wMTg3IDcuNTQ3NCAxMS4xMjUgNi4xNTI4OSAxMS4xMjUgNC41QzExLjEyNSAyLjQ5Nzk3IDkuNTAyMDMgMC44NzUgNy41IDAuODc1Wk00LjgyNSA0LjVDNC44MjUgMy4wMjI2NCA2LjAyMjY0IDEuODI1IDcuNSAxLjgyNUM4Ljk3NzM2IDEuODI1IDEwLjE3NSAzLjAyMjY0IDEwLjE3NSA0LjVDMTAuMTc1IDUuOTc3MzYgOC45NzczNiA3LjE3NSA3LjUgNy4xNzVDNi4wMjI2NCA3LjE3NSA0LjgyNSA1Ljk3NzM2IDQuODI1IDQuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNxID0gW1wiY29sb3JcIl07XG52YXIgUGllQ2hhcnRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNxKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS44NTAwMSA3LjUwMDQzQzEuODUwMDEgNC4zNzk3NSA0LjM3OTYzIDEuODUwMDEgNy41MDAwMSAxLjg1MDAxQzEwLjYyMDQgMS44NTAwMSAxMy4xNSA0LjM3OTc1IDEzLjE1IDcuNTAwNDNDMTMuMTUgMTAuNjIxMSAxMC42MjA0IDEzLjE1MDkgNy41MDAwMSAxMy4xNTA5QzQuMzc5NjMgMTMuMTUwOSAxLjg1MDAxIDEwLjYyMTEgMS44NTAwMSA3LjUwMDQzWk03LjUwMDAxIDAuODUwMDA2QzMuODI3MjggMC44NTAwMDYgMC44NTAwMDYgMy44Mjc1MyAwLjg1MDAwNiA3LjUwMDQzQzAuODUwMDA2IDExLjE3MzMgMy44MjcyOCAxNC4xNTA5IDcuNTAwMDEgMTQuMTUwOUMxMS4xNzI3IDE0LjE1MDkgMTQuMTUgMTEuMTczMyAxNC4xNSA3LjUwMDQzQzE0LjE1IDMuODI3NTMgMTEuMTcyNyAwLjg1MDAwNiA3LjUwMDAxIDAuODUwMDA2Wk03LjAwMDAxIDguMDAwMDFWMy4xMjgxMUM3LjE2NDExIDMuMTA5NTQgNy4zMzA5NCAzLjEwMDAxIDcuNTAwMDEgMy4xMDAwMUM5LjkzMDA2IDMuMTAwMDEgMTEuOSA1LjA3MDE0IDExLjkgNy41MDA0M0MxMS45IDcuNjY5MzUgMTEuODkwNSA3LjgzNjA0IDExLjg3MiA4LjAwMDAxSDcuMDAwMDFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzciA9IFtcImNvbG9yXCJdO1xudmFyIFBpbGNyb3dJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNyKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMyA1LjVDMyA3Ljk4MyA0Ljk5MTY5IDkgNyA5VjEyLjVDNyAxMi43NzYxIDcuMjIzODYgMTMgNy41IDEzQzcuNzc2MTQgMTMgOCAxMi43NzYxIDggMTIuNVY5VjMuMUg5VjEyLjVDOSAxMi43NzYxIDkuMjIzODYgMTMgOS41IDEzQzkuNzc2MTQgMTMgMTAgMTIuNzc2MSAxMCAxMi41VjMuMUgxMS41QzExLjgwMzggMy4xIDEyLjA1IDIuODUzNzYgMTIuMDUgMi41NUMxMi4wNSAyLjI0NjI0IDExLjgwMzggMiAxMS41IDJIOS41SDhINy41SDdDNC45OTE2OSAyIDMgMy4wMTcgMyA1LjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzcyA9IFtcImNvbG9yXCJdO1xudmFyIFBpbkJvdHRvbUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM3MpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMy41IDEzLjk1QzEzLjc0ODUgMTMuOTUgMTMuOTUgMTMuNzQ4NSAxMy45NSAxMy41QzEzLjk1IDEzLjI1MTQgMTMuNzQ4NSAxMy4wNSAxMy41IDEzLjA1TDEuNDk5OTUgMTMuMDVDMS4yNTE0MiAxMy4wNSAxLjA0OTk1IDEzLjI1MTQgMS4wNDk5NSAxMy41QzEuMDQ5OTUgMTMuNzQ4NSAxLjI1MTQyIDEzLjk1IDEuNDk5OTUgMTMuOTVMMTMuNSAxMy45NVpNMTEuMDY4MSA3LjU2ODNDMTEuMjQzOSA3LjM5MjU3IDExLjI0MzkgNy4xMDc2NCAxMS4wNjgxIDYuOTMxOTFDMTAuODkyNCA2Ljc1NjE3IDEwLjYwNzUgNi43NTYxNyAxMC40MzE3IDYuOTMxOTFMNy45NDk5MyA5LjQxMzcxTDcuOTQ5OTMgMS40OTk5OEM3Ljk0OTkzIDEuMjUxNDYgNy43NDg0NiAxLjA0OTk4IDcuNDk5OTMgMS4wNDk5OEM3LjI1MTQgMS4wNDk5OCA3LjA0OTkzIDEuMjUxNDYgNy4wNDk5MyAxLjQ5OTk4TDcuMDQ5OTMgOS40MTM3MUw0LjU2ODEzIDYuOTMxOTFDNC4zOTIzOSA2Ljc1NjE3IDQuMTA3NDYgNi43NTYxNyAzLjkzMTczIDYuOTMxOTFDMy43NTU5OSA3LjEwNzY0IDMuNzU1OTkgNy4zOTI1NyAzLjkzMTczIDcuNTY4M0w3LjE4MTczIDEwLjgxODNDNy4zNTc0NiAxMC45OTQgNy42NDIzOSAxMC45OTQgNy44MTgxMiAxMC44MTgzTDExLjA2ODEgNy41NjgzWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM3QgPSBbXCJjb2xvclwiXTtcbnZhciBQaW5MZWZ0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzdCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuMDUwMDUgMTMuNUMyLjA1MDA1IDEzLjc0ODUgMi4yNTE1MiAxMy45NSAyLjUwMDA1IDEzLjk1QzIuNzQ4NTggMTMuOTUgMi45NTAwNSAxMy43NDg1IDIuOTUwMDUgMTMuNUwyLjk1MDA1IDEuNDk5OTVDMi45NTAwNSAxLjI1MTQyIDIuNzQ4NTggMS4wNDk5NSAyLjUwMDA1IDEuMDQ5OTVDMi4yNTE1MiAxLjA0OTk1IDIuMDUwMDUgMS4yNTE0MiAyLjA1MDA1IDEuNDk5OTVMMi4wNTAwNSAxMy41Wk04LjQzMTcgMTEuMDY4MUM4LjYwNzQzIDExLjI0MzkgOC44OTIzNiAxMS4yNDM5IDkuMDY4MDkgMTEuMDY4MUM5LjI0MzgzIDEwLjg5MjQgOS4yNDM4MyAxMC42MDc1IDkuMDY4MDkgMTAuNDMxN0w2LjU4NjI5IDcuOTQ5OTNMMTQuNSA3Ljk0OTkzQzE0Ljc0ODUgNy45NDk5MyAxNC45NSA3Ljc0ODQ2IDE0Ljk1IDcuNDk5OTNDMTQuOTUgNy4yNTE0IDE0Ljc0ODUgNy4wNDk5MyAxNC41IDcuMDQ5OTNMNi41ODYyOSA3LjA0OTkzTDkuMDY4MDkgNC41NjgxM0M5LjI0MzgzIDQuMzkyMzkgOS4yNDM4MyA0LjEwNzQ2IDkuMDY4MDkgMy45MzE3M0M4Ljg5MjM2IDMuNzU1OTkgOC42MDc0MyAzLjc1NTk5IDguNDMxNyAzLjkzMTczTDUuMTgxNyA3LjE4MTczQzUuMDA1OTYgNy4zNTc0NiA1LjAwNTk2IDcuNjQyMzkgNS4xODE3IDcuODE4MTJMOC40MzE3IDExLjA2ODFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzdSA9IFtcImNvbG9yXCJdO1xudmFyIFBpblJpZ2h0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzdSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEyLjk1IDEuNTAwMDVDMTIuOTUgMS4yNTE1MiAxMi43NDg1IDEuMDUwMDUgMTIuNSAxLjA1MDA1QzEyLjI1MTQgMS4wNTAwNSAxMi4wNSAxLjI1MTUyIDEyLjA1IDEuNTAwMDVMMTIuMDUgMTMuNUMxMi4wNSAxMy43NDg2IDEyLjI1MTQgMTMuOTUgMTIuNSAxMy45NUMxMi43NDg1IDEzLjk1IDEyLjk1IDEzLjc0ODYgMTIuOTUgMTMuNUwxMi45NSAxLjUwMDA1Wk02LjU2ODMgMy45MzE4OEM2LjM5MjU3IDMuNzU2MTQgNi4xMDc2NCAzLjc1NjE0IDUuOTMxOTEgMy45MzE4OEM1Ljc1NjE3IDQuMTA3NjEgNS43NTYxNyA0LjM5MjU0IDUuOTMxOTEgNC41NjgyN0w4LjQxMzcxIDcuMDUwMDdMMC40OTk5ODQgNy4wNTAwN0MwLjI1MTQ1NiA3LjA1MDA3IDAuMDQ5OTg0NyA3LjI1MTU1IDAuMDQ5OTg0NyA3LjUwMDA3QzAuMDQ5OTg0NiA3Ljc0ODYgMC4yNTE0NTcgNy45NTAwNyAwLjQ5OTk4NCA3Ljk1MDA3TDguNDEzNzEgNy45NTAwN0w1LjkzMTkxIDEwLjQzMTlDNS43NTYxNyAxMC42MDc2IDUuNzU2MTcgMTAuODkyNSA1LjkzMTkxIDExLjA2ODNDNi4xMDc2NCAxMS4yNDQgNi4zOTI1NyAxMS4yNDQgNi41NjgzMSAxMS4wNjgzTDkuODE4MyA3LjgxODI3QzkuOTk0MDQgNy42NDI1NCA5Ljk5NDA0IDcuMzU3NjEgOS44MTgzIDcuMTgxODhMNi41NjgzIDMuOTMxODhaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzdiA9IFtcImNvbG9yXCJdO1xudmFyIFBpblRvcEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM3YpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjUwMDA1IDEuMDUwMDVDMS4yNTE1MiAxLjA1MDA1IDEuMDUwMDUgMS4yNTE1MiAxLjA1MDA1IDEuNTAwMDVDMS4wNTAwNSAxLjc0ODU4IDEuMjUxNTIgMS45NTAwNSAxLjUwMDA1IDEuOTUwMDVMMTMuNSAxLjk1MDA1QzEzLjc0ODYgMS45NTAwNSAxMy45NSAxLjc0ODU4IDEzLjk1IDEuNTAwMDVDMTMuOTUgMS4yNTE1MiAxMy43NDg2IDEuMDUwMDUgMTMuNSAxLjA1MDA1SDEuNTAwMDVaTTMuOTMxODggNy40MzE2OUMzLjc1NjE0IDcuNjA3NDMgMy43NTYxNCA3Ljg5MjM2IDMuOTMxODggOC4wNjgwOUM0LjEwNzYxIDguMjQzODMgNC4zOTI1NCA4LjI0MzgzIDQuNTY4MjcgOC4wNjgwOUw3LjA1MDA3IDUuNTg2MjlWMTMuNUM3LjA1MDA3IDEzLjc0ODUgNy4yNTE1NSAxMy45NSA3LjUwMDA3IDEzLjk1QzcuNzQ4NiAxMy45NSA3Ljk1MDA3IDEzLjc0ODUgNy45NTAwNyAxMy41TDcuOTUwMDcgNS41ODYyOUwxMC40MzE5IDguMDY4MDlDMTAuNjA3NiA4LjI0MzgzIDEwLjg5MjUgOC4yNDM4MyAxMS4wNjgzIDguMDY4MDlDMTEuMjQ0IDcuODkyMzUgMTEuMjQ0IDcuNjA3NDMgMTEuMDY4MyA3LjQzMTY5TDcuODE4MjcgNC4xODE2OUM3LjY0MjU0IDQuMDA1OTYgNy4zNTc2MSA0LjAwNTk2IDcuMTgxODggNC4xODE2OUwzLjkzMTg4IDcuNDMxNjlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzdyA9IFtcImNvbG9yXCJdO1xudmFyIFBsYXlJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDN3KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy4yNDE4MiAyLjMyMTgxQzMuMzkxOSAyLjIzMTMyIDMuNTc4NCAyLjIyNjAxIDMuNzMzMzggMi4zMDc4MUwxMi43MzM0IDcuMDU3ODFDMTIuODk3NCA3LjE0NDM2IDEzIDcuMzE0NTcgMTMgNy41QzEzIDcuNjg1NDMgMTIuODk3NCA3Ljg1NTY0IDEyLjczMzQgNy45NDIxOUwzLjczMzM4IDEyLjY5MjJDMy41Nzg0IDEyLjc3NCAzLjM5MTkgMTIuNzY4NyAzLjI0MTgyIDEyLjY3ODJDMy4wOTE3NSAxMi41ODc3IDMgMTIuNDI1MiAzIDEyLjI1VjIuNzVDMyAyLjU3NDc2IDMuMDkxNzUgMi40MTIzIDMuMjQxODIgMi4zMjE4MVpNNCAzLjU3OTI1VjExLjQyMDdMMTEuNDI4OCA3LjVMNCAzLjU3OTI1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM3ggPSBbXCJjb2xvclwiXTtcbnZhciBQbHVzSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzeCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTggMi43NUM4IDIuNDczODYgNy43NzYxNCAyLjI1IDcuNSAyLjI1QzcuMjIzODYgMi4yNSA3IDIuNDczODYgNyAyLjc1VjdIMi43NUMyLjQ3Mzg2IDcgMi4yNSA3LjIyMzg2IDIuMjUgNy41QzIuMjUgNy43NzYxNCAyLjQ3Mzg2IDggMi43NSA4SDdWMTIuMjVDNyAxMi41MjYxIDcuMjIzODYgMTIuNzUgNy41IDEyLjc1QzcuNzc2MTQgMTIuNzUgOCAxMi41MjYxIDggMTIuMjVWOEgxMi4yNUMxMi41MjYxIDggMTIuNzUgNy43NzYxNCAxMi43NSA3LjVDMTIuNzUgNy4yMjM4NiAxMi41MjYxIDcgMTIuMjUgN0g4VjIuNzVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzeSA9IFtcImNvbG9yXCJdO1xudmFyIFBsdXNDaXJjbGVkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzeSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTEgMC44NzY4OTJDMy44NDIyMiAwLjg3Njg5MiAwLjg3NzA3NSAzLjg0MjA0IDAuODc3MDc1IDcuNDk5NzJDMC44NzcwNzUgMTEuMTU3NCAzLjg0MjIyIDE0LjEyMjYgNy40OTk5MSAxNC4xMjI2QzExLjE1NzYgMTQuMTIyNiAxNC4xMjI3IDExLjE1NzQgMTQuMTIyNyA3LjQ5OTcyQzE0LjEyMjcgMy44NDIwNCAxMS4xNTc2IDAuODc2ODkyIDcuNDk5OTEgMC44NzY4OTJaTTEuODI3MDcgNy40OTk3MkMxLjgyNzA3IDQuMzY2NzEgNC4zNjY4OSAxLjgyNjg5IDcuNDk5OTEgMS44MjY4OUMxMC42MzI5IDEuODI2ODkgMTMuMTcyNyA0LjM2NjcxIDEzLjE3MjcgNy40OTk3MkMxMy4xNzI3IDEwLjYzMjcgMTAuNjMyOSAxMy4xNzI2IDcuNDk5OTEgMTMuMTcyNkM0LjM2Njg5IDEzLjE3MjYgMS44MjcwNyAxMC42MzI3IDEuODI3MDcgNy40OTk3MlpNNy41MDAwMyA0QzcuNzc2MTcgNCA4LjAwMDAzIDQuMjIzODYgOC4wMDAwMyA0LjVWN0gxMC41QzEwLjc3NjIgNyAxMSA3LjIyMzg2IDExIDcuNUMxMSA3Ljc3NjE0IDEwLjc3NjIgOCAxMC41IDhIOC4wMDAwM1YxMC41QzguMDAwMDMgMTAuNzc2MSA3Ljc3NjE3IDExIDcuNTAwMDMgMTFDNy4yMjM4OSAxMSA3LjAwMDAzIDEwLjc3NjEgNy4wMDAwMyAxMC41VjhINC41MDAwM0M0LjIyMzg5IDggNC4wMDAwMyA3Ljc3NjE0IDQuMDAwMDMgNy41QzQuMDAwMDMgNy4yMjM4NiA0LjIyMzg5IDcgNC41MDAwMyA3SDcuMDAwMDNWNC41QzcuMDAwMDMgNC4yMjM4NiA3LjIyMzg5IDQgNy41MDAwMyA0WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM3ogPSBbXCJjb2xvclwiXTtcbnZhciBRdWVzdGlvbk1hcmtJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDN6KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNS4wNzUwNSA0LjEwMDAxQzUuMDc1MDUgMi45MTEwMyA2LjI1NzI3IDEuOTI1MDIgNy41MDAwNSAxLjkyNTAyQzguNzQyODMgMS45MjUwMiA5LjkyNTA1IDIuOTExMDMgOS45MjUwNSA0LjEwMDAxQzkuOTI1MDUgNS4xOTg2MSA5LjM2NzgyIDUuNzE0MzYgOC42MTg1NCA2LjM3ODg0TDguNTg3NTcgNi40MDYzQzcuODQ0ODEgNy4wNjQ2NyA2LjkyNTA1IDcuODc5OTUgNi45MjUwNSA5LjVDNi45MjUwNSA5LjgxNzU3IDcuMTgyNDggMTAuMDc1IDcuNTAwMDUgMTAuMDc1QzcuODE3NjEgMTAuMDc1IDguMDc1MDUgOS44MTc1NyA4LjA3NTA1IDkuNUM4LjA3NTA1IDguNDE1MTcgOC42Mjk0NSA3LjkwNjIzIDkuMzgxNTYgNy4yMzkyNUw5LjQwMjM4IDcuMjIwNzlDMTAuMTQ5NiA2LjU1ODI5IDExLjA3NSA1LjczNzc1IDExLjA3NSA0LjEwMDAxQzExLjA3NSAyLjEyNzU3IDkuMjE4NjkgMC43NzUwMjQgNy41MDAwNSAwLjc3NTAyNEM1Ljc4MTQgMC43NzUwMjQgMy45MjUwNSAyLjEyNzU3IDMuOTI1MDUgNC4xMDAwMUMzLjkyNTA1IDQuNDE3NTggNC4xODI0OSA0LjY3NTAxIDQuNTAwMDUgNC42NzUwMUM0LjgxNzYxIDQuNjc1MDEgNS4wNzUwNSA0LjQxNzU4IDUuMDc1MDUgNC4xMDAwMVpNNy41MDAwNSAxMy4zNTc1QzcuOTgzMyAxMy4zNTc1IDguMzc1MDUgMTIuOTY1NyA4LjM3NTA1IDEyLjQ4MjVDOC4zNzUwNSAxMS45OTkyIDcuOTgzMyAxMS42MDc1IDcuNTAwMDUgMTEuNjA3NUM3LjAxNjggMTEuNjA3NSA2LjYyNTA1IDExLjk5OTIgNi42MjUwNSAxMi40ODI1QzYuNjI1MDUgMTIuOTY1NyA3LjAxNjggMTMuMzU3NSA3LjUwMDA1IDEzLjM1NzVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzQSA9IFtcImNvbG9yXCJdO1xudmFyIFF1ZXN0aW9uTWFya0NpcmNsZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNBKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC44NzcwNzUgNy40OTk3MkMwLjg3NzA3NSAzLjg0MjA0IDMuODQyMjIgMC44NzY4OTIgNy40OTk5MSAwLjg3Njg5MkMxMS4xNTc2IDAuODc2ODkyIDE0LjEyMjcgMy44NDIwNCAxNC4xMjI3IDcuNDk5NzJDMTQuMTIyNyAxMS4xNTc0IDExLjE1NzYgMTQuMTIyNiA3LjQ5OTkxIDE0LjEyMjZDMy44NDIyMiAxNC4xMjI2IDAuODc3MDc1IDExLjE1NzQgMC44NzcwNzUgNy40OTk3MlpNNy40OTk5MSAxLjgyNjg5QzQuMzY2ODkgMS44MjY4OSAxLjgyNzA4IDQuMzY2NzEgMS44MjcwOCA3LjQ5OTcyQzEuODI3MDggMTAuNjMyNyA0LjM2Njg5IDEzLjE3MjYgNy40OTk5MSAxMy4xNzI2QzEwLjYzMjkgMTMuMTcyNiAxMy4xNzI3IDEwLjYzMjcgMTMuMTcyNyA3LjQ5OTcyQzEzLjE3MjcgNC4zNjY3MSAxMC42MzI5IDEuODI2ODkgNy40OTk5MSAxLjgyNjg5Wk04LjI0OTkzIDEwLjVDOC4yNDk5MyAxMC45MTQyIDcuOTE0MTQgMTEuMjUgNy40OTk5MyAxMS4yNUM3LjA4NTcxIDExLjI1IDYuNzQ5OTMgMTAuOTE0MiA2Ljc0OTkzIDEwLjVDNi43NDk5MyAxMC4wODU4IDcuMDg1NzEgOS43NSA3LjQ5OTkzIDkuNzVDNy45MTQxNCA5Ljc1IDguMjQ5OTMgMTAuMDg1OCA4LjI0OTkzIDEwLjVaTTYuMDUwMDMgNi4yNUM2LjA1MDAzIDUuNTcyMTEgNi42MzUxMSA0LjkyNSA3LjUwMDAzIDQuOTI1QzguMzY0OTYgNC45MjUgOC45NTAwMyA1LjU3MjExIDguOTUwMDMgNi4yNUM4Ljk1MDAzIDYuNzQxMTggOC42ODAwMiA2Ljk5MjEyIDguMjE0NDcgNy4yNzQ5NEM4LjE2MjUxIDcuMzA2NTEgOC4xMDI1OCA3LjM0MTMxIDguMDM4NDcgNy4zNzg1NEw4LjAzODQxIDcuMzc4NThDNy44NTUyMSA3LjQ4NDk3IDcuNjM3ODggNy42MTExOSA3LjQ3NDQ5IDcuNzM4NDlDNy4yMzIxNCA3LjkyNzMyIDYuOTUwMDMgOC4yMzE5OCA2Ljk1MDAzIDguN0M2Ljk1MDA0IDkuMDAzNzYgNy4xOTYyOCA5LjI1IDcuNTAwMDQgOS4yNUM3LjgwMjQgOS4yNSA4LjA0Nzc4IDkuMDA2MDEgOC4wNTAwMiA4LjcwNDE3TDguMDUwNTYgOC43MDMzQzguMDU5MjQgOC42ODk2IDguMDg0OTMgOC42NTczNSA4LjE1MDU4IDguNjA2MkM4LjI1MjA3IDguNTI3MTIgOC4zNjUwOCA4LjQ2MTYzIDguNTE1NjcgOC4zNzQzNkw4LjUxNTcxIDguMzc0MzNDOC41OTQyMiA4LjMyODgzIDguNjgyOTYgOC4yNzc0MSA4Ljc4NTU5IDguMjE1MDZDOS4zMjAwNCA3Ljg5MDM4IDEwLjA1IDcuMzUzODIgMTAuMDUgNi4yNUMxMC4wNSA0LjkyNzg5IDguOTM1MTEgMy44MjUgNy41MDAwMyAzLjgyNUM2LjA2NDk2IDMuODI1IDQuOTUwMDMgNC45Mjc4OSA0Ljk1MDAzIDYuMjVDNC45NTAwMyA2LjU1Mzc2IDUuMTk2MjggNi44IDUuNTAwMDMgNi44QzUuODAzNzkgNi44IDYuMDUwMDMgNi41NTM3NiA2LjA1MDAzIDYuMjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzQiA9IFtcImNvbG9yXCJdO1xudmFyIFF1b3RlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzQik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTkuNDI1MDMgMy40NDEzNkMxMC4wNTYxIDMuMjM2NTQgMTAuNzgzNyAzLjI0MDIgMTEuMzc5MiAzLjU0NjIzQzEyLjc1MzIgNC4yNTIyNCAxMy4zNDc3IDYuMDcxOTEgMTIuNzk0NiA4QzEyLjU0NjUgOC44NjQ5IDEyLjExMDIgOS43MDQ3MiAxMS4xODYxIDEwLjU1MjRDMTAuMjYyIDExLjQgOC45ODAzNCAxMS45IDguMzg1NzEgMTEuOUM4LjE3MjY5IDExLjkgOCAxMS43MzIxIDggMTEuNTI1QzggMTEuMzE3OSA4LjE3NjQ0IDExLjE1IDguMzg1NzEgMTEuMTVDOS4wNjQ5NyAxMS4xNSA5LjY3MTg5IDEwLjc4MDQgMTAuMzkwNiAxMC4yMzZDMTAuOTQwNiA5LjgxOTMgMTEuMzcwMSA5LjI4NjMzIDExLjYwOCA4LjgyMTkxQzEyLjA2MjggNy45MzM2NyAxMi4wNzgyIDYuNjgxNzQgMTEuMzQzMyA2LjM0OTAxQzEwLjk5MDQgNi43MzQ1NSAxMC41Mjk1IDYuOTU5NDYgOS45NzcyNSA2Ljk1OTQ2QzguNzc3MyA2Ljk1OTQ2IDguMDcwMSA1Ljk5NDEyIDguMTAwNTEgNS4xMjAwOUM4LjEyOTU3IDQuMjg0NzQgOC42NjAzMiAzLjY4OTU0IDkuNDI1MDMgMy40NDEzNlpNMy40MjUwMyAzLjQ0MTM2QzQuMDU2MTQgMy4yMzY1NCA0Ljc4MzY2IDMuMjQwMiA1LjM3OTIzIDMuNTQ2MjNDNi43NTMyIDQuMjUyMjQgNy4zNDc2NiA2LjA3MTkxIDYuNzk0NjIgOEM2LjU0NjU0IDguODY0OSA2LjExMDE5IDkuNzA0NzIgNS4xODYxIDEwLjU1MjRDNC4yNjIwMSAxMS40IDIuOTgwMzQgMTEuOSAyLjM4NTcxIDExLjlDMi4xNzI2OSAxMS45IDIgMTEuNzMyMSAyIDExLjUyNUMyIDExLjMxNzkgMi4xNzY0NCAxMS4xNSAyLjM4NTcxIDExLjE1QzMuMDY0OTcgMTEuMTUgMy42NzE4OSAxMC43ODA0IDQuMzkwNTggMTAuMjM2QzQuOTQwNjUgOS44MTkzIDUuMzcwMTQgOS4yODYzMyA1LjYwNzk3IDguODIxOTFDNi4wNjI4MiA3LjkzMzY3IDYuMDc4MjEgNi42ODE3NCA1LjM0MzMgNi4zNDkwMUM0Ljk5MDM3IDYuNzM0NTUgNC41Mjk0OCA2Ljk1OTQ2IDMuOTc3MjUgNi45NTk0NkMyLjc3NzMgNi45NTk0NiAyLjA3MDEgNS45OTQxMiAyLjEwMDUxIDUuMTIwMDlDMi4xMjk1NyA0LjI4NDc0IDIuNjYwMzIgMy42ODk1NCAzLjQyNTAzIDMuNDQxMzZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzQyA9IFtcImNvbG9yXCJdO1xudmFyIFJhZGlvYnV0dG9uSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzQyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5ODUgMC44NzcwNDVDMy44NDIxNiAwLjg3NzA0NSAwLjg3NzAxNCAzLjg0MjE5IDAuODc3MDE0IDcuNDk5ODhDMC44NzcwMTQgMTEuMTU3NSAzLjg0MjE2IDE0LjEyMjcgNy40OTk4NSAxNC4xMjI3QzExLjE1NzUgMTQuMTIyNyAxNC4xMjI3IDExLjE1NzUgMTQuMTIyNyA3LjQ5OTg4QzE0LjEyMjcgMy44NDIxOSAxMS4xNTc1IDAuODc3MDQ1IDcuNDk5ODUgMC44NzcwNDVaTTEuODI3MDEgNy40OTk4OEMxLjgyNzAxIDQuMzY2ODYgNC4zNjY4MyAxLjgyNzA0IDcuNDk5ODUgMS44MjcwNEMxMC42MzI4IDEuODI3MDQgMTMuMTcyNyA0LjM2Njg2IDEzLjE3MjcgNy40OTk4OEMxMy4xNzI3IDEwLjYzMjkgMTAuNjMyOCAxMy4xNzI3IDcuNDk5ODUgMTMuMTcyN0M0LjM2NjgzIDEzLjE3MjcgMS44MjcwMSAxMC42MzI5IDEuODI3MDEgNy40OTk4OFpNNy40OTk5OSA5LjQ5OTk5QzguNjA0NTYgOS40OTk5OSA5LjQ5OTk5IDguNjA0NTYgOS40OTk5OSA3LjQ5OTk5QzkuNDk5OTkgNi4zOTU0MiA4LjYwNDU2IDUuNDk5OTkgNy40OTk5OSA1LjQ5OTk5QzYuMzk1NDIgNS40OTk5OSA1LjQ5OTk5IDYuMzk1NDIgNS40OTk5OSA3LjQ5OTk5QzUuNDk5OTkgOC42MDQ1NiA2LjM5NTQyIDkuNDk5OTkgNy40OTk5OSA5LjQ5OTk5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM0QgPSBbXCJjb2xvclwiXTtcbnZhciBSZWFkZXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNEKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC4yIDFINC4xNzc0MUg0LjE3NzRDMy44NjkzNiAwLjk5OTk4OCAzLjYwMzY4IDAuOTk5OTc4IDMuMzg2MDkgMS4wMjA2N0MzLjE1NTc2IDEuMDQyNTcgMi45MjgyNSAxLjA5MTEzIDIuNzE2MjUgMS4yMjEwNEMyLjUxNDQyIDEuMzQ0NzIgMi4zNDQ3MyAxLjUxNDQyIDIuMjIxMDQgMS43MTYyNUMyLjA5MTEzIDEuOTI4MjUgMi4wNDI1NyAyLjE1NTc2IDIuMDIwNjcgMi4zODYwOUMxLjk5OTk4IDIuNjAzNjcgMS45OTk5OSAyLjg2OTM1IDIgMy4xNzczOFYzLjE3NzRWMy4yVjExLjhWMTEuODIyNlYxMS44MjI2QzEuOTk5OTkgMTIuMTMwNyAxLjk5OTk4IDEyLjM5NjMgMi4wMjA2NyAxMi42MTM5QzIuMDQyNTcgMTIuODQ0MiAyLjA5MTEzIDEzLjA3MTcgMi4yMjEwNCAxMy4yODM3QzIuMzQ0NzMgMTMuNDg1NiAyLjUxNDQyIDEzLjY1NTMgMi43MTYyNSAxMy43NzlDMi45MjgyNSAxMy45MDg5IDMuMTU1NzYgMTMuOTU3NCAzLjM4NjA5IDEzLjk3OTNDMy42MDM2OCAxNCAzLjg2OTM3IDE0IDQuMTc3NDEgMTRINC4ySDEwLjhIMTAuODIyNkMxMS4xMzA2IDE0IDExLjM5NjMgMTQgMTEuNjEzOSAxMy45NzkzQzExLjg0NDIgMTMuOTU3NCAxMi4wNzE3IDEzLjkwODkgMTIuMjgzNyAxMy43NzlDMTIuNDg1NiAxMy42NTUzIDEyLjY1NTMgMTMuNDg1NiAxMi43NzkgMTMuMjgzN0MxMi45MDg5IDEzLjA3MTcgMTIuOTU3NCAxMi44NDQyIDEyLjk3OTMgMTIuNjEzOUMxMyAxMi4zOTYzIDEzIDEyLjEzMDYgMTMgMTEuODIyNlYxMS44VjMuMlYzLjE3NzQxQzEzIDIuODY5MzYgMTMgMi42MDM2OCAxMi45NzkzIDIuMzg2MDlDMTIuOTU3NCAyLjE1NTc2IDEyLjkwODkgMS45MjgyNSAxMi43NzkgMS43MTYyNUMxMi42NTUzIDEuNTE0NDIgMTIuNDg1NiAxLjM0NDcyIDEyLjI4MzcgMS4yMjEwNEMxMi4wNzE3IDEuMDkxMTMgMTEuODQ0MiAxLjA0MjU3IDExLjYxMzkgMS4wMjA2N0MxMS4zOTYzIDAuOTk5OTc4IDExLjEzMDYgMC45OTk5ODggMTAuODIyNiAxSDEwLjhINC4yWk0zLjIzODc1IDIuMDczNjhDMy4yNjcyMiAyLjA1NjIzIDMuMzIzNjIgMi4wMzExMiAzLjQ4MDc1IDIuMDE2MThDMy42NDUzMiAyLjAwMDUzIDMuODYyOTggMiA0LjIgMkgxMC44QzExLjEzNyAyIDExLjM1NDcgMi4wMDA1MyAxMS41MTkzIDIuMDE2MThDMTEuNjc2NCAyLjAzMTEyIDExLjczMjggMi4wNTYyMyAxMS43NjEzIDIuMDczNjhDMTEuODI4NSAyLjExNDkxIDExLjg4NTEgMi4xNzE0NyAxMS45MjYzIDIuMjM4NzVDMTEuOTQzOCAyLjI2NzIyIDExLjk2ODkgMi4zMjM2MiAxMS45ODM4IDIuNDgwNzVDMTEuOTk5NSAyLjY0NTMyIDEyIDIuODYyOTggMTIgMy4yVjExLjhDMTIgMTIuMTM3IDExLjk5OTUgMTIuMzU0NyAxMS45ODM4IDEyLjUxOTNDMTEuOTY4OSAxMi42NzY0IDExLjk0MzggMTIuNzMyOCAxMS45MjYzIDEyLjc2MTNDMTEuODg1MSAxMi44Mjg1IDExLjgyODUgMTIuODg1MSAxMS43NjEzIDEyLjkyNjNDMTEuNzMyOCAxMi45NDM4IDExLjY3NjQgMTIuOTY4OSAxMS41MTkzIDEyLjk4MzhDMTEuMzU0NyAxMi45OTk1IDExLjEzNyAxMyAxMC44IDEzSDQuMkMzLjg2Mjk4IDEzIDMuNjQ1MzIgMTIuOTk5NSAzLjQ4MDc1IDEyLjk4MzhDMy4zMjM2MiAxMi45Njg5IDMuMjY3MjIgMTIuOTQzOCAzLjIzODc1IDEyLjkyNjNDMy4xNzE0NyAxMi44ODUxIDMuMTE0OTEgMTIuODI4NSAzLjA3MzY4IDEyLjc2MTNDMy4wNTYyNCAxMi43MzI4IDMuMDMxMTIgMTIuNjc2NCAzLjAxNjE4IDEyLjUxOTNDMy4wMDA1MyAxMi4zNTQ3IDMgMTIuMTM3IDMgMTEuOFYzLjJDMyAyLjg2Mjk4IDMuMDAwNTMgMi42NDUzMiAzLjAxNjE4IDIuNDgwNzVDMy4wMzExMiAyLjMyMzYyIDMuMDU2MjQgMi4yNjcyMiAzLjA3MzY4IDIuMjM4NzVDMy4xMTQ5MSAyLjE3MTQ3IDMuMTcxNDcgMi4xMTQ5MSAzLjIzODc1IDIuMDczNjhaTTUgMTBDNC43MjM4NiAxMCA0LjUgMTAuMjIzOSA0LjUgMTAuNUM0LjUgMTAuNzc2MSA0LjcyMzg2IDExIDUgMTFIOEM4LjI3NjE0IDExIDguNSAxMC43NzYxIDguNSAxMC41QzguNSAxMC4yMjM5IDguMjc2MTQgMTAgOCAxMEg1Wk00LjUgNy41QzQuNSA3LjIyMzg2IDQuNzIzODYgNyA1IDdIMTBDMTAuMjc2MSA3IDEwLjUgNy4yMjM4NiAxMC41IDcuNUMxMC41IDcuNzc2MTQgMTAuMjc2MSA4IDEwIDhINUM0LjcyMzg2IDggNC41IDcuNzc2MTQgNC41IDcuNVpNNSA0QzQuNzIzODYgNCA0LjUgNC4yMjM4NiA0LjUgNC41QzQuNSA0Ljc3NjE0IDQuNzIzODYgNSA1IDVIMTBDMTAuMjc2MSA1IDEwLjUgNC43NzYxNCAxMC41IDQuNUMxMC41IDQuMjIzODYgMTAuMjc2MSA0IDEwIDRINVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNFID0gW1wiY29sb3JcIl07XG52YXIgUmVsb2FkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzRSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEuODQ5OTggNy40OTk5OEMxLjg0OTk4IDQuNjY0NTggNC4wNTk3OSAxLjg0OTk4IDcuNDk5OTggMS44NDk5OEMxMC4yNzgzIDEuODQ5OTggMTEuNjUxNSAzLjkwNjQgMTIuMjM2NyA1SDEwLjVDMTAuMjIzOSA1IDEwIDUuMjIzODYgMTAgNS41QzEwIDUuNzc2MTQgMTAuMjIzOSA2IDEwLjUgNkgxMy41QzEzLjc3NjEgNiAxNCA1Ljc3NjE0IDE0IDUuNVYyLjVDMTQgMi4yMjM4NiAxMy43NzYxIDIgMTMuNSAyQzEzLjIyMzkgMiAxMyAyLjIyMzg2IDEzIDIuNVY0LjMxMzE4QzEyLjI5NTUgMy4wNzEyNiAxMC42NjU5IDAuODQ5OTc2IDcuNDk5OTggMC44NDk5NzZDMy40MzcxNiAwLjg0OTk3NiAwLjg0OTk3NiA0LjE4NTM3IDAuODQ5OTc2IDcuNDk5OThDMC44NDk5NzYgMTAuODE0NiAzLjQzNzE2IDE0LjE1IDcuNDk5OTggMTQuMTVDOS40NDM4MiAxNC4xNSAxMS4wNjIyIDEzLjM4MDggMTIuMjE0NSAxMi4yMDg0QzEyLjgzMTUgMTEuNTgwNiAxMy4zMTMzIDEwLjgzOSAxMy42NDE4IDEwLjA0MDdDMTMuNzQ2OSA5Ljc4NTM2IDEzLjYyNTEgOS40OTMxNSAxMy4zNjk4IDkuMzg4MDZDMTMuMTE0NCA5LjI4Mjk2IDEyLjgyMjIgOS40MDQ3OCAxMi43MTcxIDkuNjYwMTRDMTIuNDM2MyAxMC4zNDI1IDEyLjAyNTEgMTAuOTc0NSAxMS41MDEzIDExLjUwNzRDMTAuNTI5NSAxMi40OTYzIDkuMTY1MDQgMTMuMTUgNy40OTk5OCAxMy4xNUM0LjA1OTc5IDEzLjE1IDEuODQ5OTggMTAuMzM1NCAxLjg0OTk4IDcuNDk5OThaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzRiA9IFtcImNvbG9yXCJdO1xudmFyIFJlc2V0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzRik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTQuODUzNTUgMi4xNDY0NUM1LjA0ODgyIDIuMzQxNzEgNS4wNDg4MiAyLjY1ODI5IDQuODUzNTUgMi44NTM1NUwzLjcwNzExIDRIOUMxMS40ODUzIDQgMTMuNSA2LjAxNDcyIDEzLjUgOC41QzEzLjUgMTAuOTg1MyAxMS40ODUzIDEzIDkgMTNINUM0LjcyMzg2IDEzIDQuNSAxMi43NzYxIDQuNSAxMi41QzQuNSAxMi4yMjM5IDQuNzIzODYgMTIgNSAxMkg5QzEwLjkzMyAxMiAxMi41IDEwLjQzMyAxMi41IDguNUMxMi41IDYuNTY3IDEwLjkzMyA1IDkgNUgzLjcwNzExTDQuODUzNTUgNi4xNDY0NUM1LjA0ODgyIDYuMzQxNzEgNS4wNDg4MiA2LjY1ODI5IDQuODUzNTUgNi44NTM1NUM0LjY1ODI5IDcuMDQ4ODIgNC4zNDE3MSA3LjA0ODgyIDQuMTQ2NDUgNi44NTM1NUwyLjE0NjQ1IDQuODUzNTVDMS45NTExOCA0LjY1ODI5IDEuOTUxMTggNC4zNDE3MSAyLjE0NjQ1IDQuMTQ2NDVMNC4xNDY0NSAyLjE0NjQ1QzQuMzQxNzEgMS45NTExOCA0LjY1ODI5IDEuOTUxMTggNC44NTM1NSAyLjE0NjQ1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM0cgPSBbXCJjb2xvclwiXTtcbnZhciBSZXN1bWVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNHKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy4wNDk5NSAyLjc0OTk1QzMuMDQ5OTUgMi40NDYxOSAyLjgwMzcxIDIuMTk5OTUgMi40OTk5NSAyLjE5OTk1QzIuMTk2MTkgMi4xOTk5NSAxLjk0OTk1IDIuNDQ2MTkgMS45NDk5NSAyLjc0OTk1VjEyLjI1QzEuOTQ5OTUgMTIuNTUzNyAyLjE5NjE5IDEyLjggMi40OTk5NSAxMi44QzIuODAzNzEgMTIuOCAzLjA0OTk1IDEyLjU1MzcgMy4wNDk5NSAxMi4yNVYyLjc0OTk1Wk01LjczMzMzIDIuMzA3NzZDNS41NzgzNSAyLjIyNTk2IDUuMzkxODUgMi4yMzEyNyA1LjI0MTc3IDIuMzIxNzZDNS4wOTE3IDIuNDEyMjUgNC45OTk5NSAyLjU3NDcxIDQuOTk5OTUgMi43NDk5NVYxMi4yNUM0Ljk5OTk1IDEyLjQyNTIgNS4wOTE3IDEyLjU4NzcgNS4yNDE3NyAxMi42NzgxQzUuMzkxODUgMTIuNzY4NiA1LjU3ODM1IDEyLjc3MzkgNS43MzMzMyAxMi42OTIxTDE0LjczMzMgNy45NDIxNEMxNC44OTczIDcuODU1NTkgMTUgNy42ODUzOSAxNSA3LjQ5OTk1QzE1IDcuMzE0NTIgMTQuODk3MyA3LjE0NDMxIDE0LjczMzMgNy4wNTc3Nkw1LjczMzMzIDIuMzA3NzZaTTUuOTk5OTUgMTEuNDIwN1YzLjU3OTJMMTMuNDI4NyA3LjQ5OTk1TDUuOTk5OTUgMTEuNDIwN1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNIID0gW1wiY29sb3JcIl07XG52YXIgUm9ja2V0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzSCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTYuODUzNTcgMy44NTM1NUw3LjY1MzU1IDMuMDUzNTNDOC4yOTgxIDIuNDA5MDEgOS40Mjg1OCAxLjk2MTcyIDEwLjU1MiAxLjgwMTI1QzExLjEwNTYgMS43MjIxNyAxMS42MjkxIDEuNzE3MjUgMTIuMDU2NCAxLjc4MTI0QzEyLjQ5ODcgMS44NDc0OCAxMi43Njk4IDEuOTc2OTYgMTIuODk2NSAyLjEwMzU3QzEzLjAyMzEgMi4yMzAxOCAxMy4xNTI2IDIuNTAxMjUgMTMuMjE4OCAyLjk0MzU3QzEzLjI4MjggMy4zNzA4NiAxMy4yNzc5IDMuODk0MzkgMTMuMTk4OCA0LjQ0ODAxQzEzLjAzODMgNS41NzEzOSAxMi41OTEgNi43MDE4OCAxMS45NDY0IDcuMzQ2NDVMNy40OTk5OSAxMS43OTI5TDYuMzUzNTQgMTAuNjQ2NUM2LjE1ODI3IDEwLjQ1MTIgNS44NDE2OSAxMC40NTEyIDUuNjQ2NDMgMTAuNjQ2NUM1LjQ1MTE3IDEwLjg0MTcgNS40NTExNyAxMS4xNTgzIDUuNjQ2NDMgMTEuMzUzNkw3LjE0NjQ0IDEyLjg1MzZDNy4zNDE3MSAxMy4wNDg4IDcuNjU4MjkgMTMuMDQ4OCA3Ljg1MzU1IDEyLjg1MzZMOC40MDA3MyAxMi4zMDY0TDkuNTcxMjQgMTQuMjU3MkM5LjY1MDQ2IDE0LjM4OTMgOS43ODYwOCAxNC40Nzc0IDkuOTM4OSAxNC40OTYzQzEwLjA5MTcgMTQuNTE1MSAxMC4yNDQ3IDE0LjQ2MjQgMTAuMzUzNSAxNC4zNTM2TDEyLjM1MzUgMTIuMzUzNkMxMi40NjQ4IDEyLjI0MjMgMTIuNTE3MiAxMi4wODUxIDEyLjQ5NSAxMS45MjkzTDEyLjAzMDMgOC42NzY3OUwxMi42NTM2IDguMDUzNTVDMTMuNTA5IDcuMTk4MDggMTQuMDExNyA1LjgyODU1IDE0LjE4ODcgNC41ODk0M0MxNC4yNzg0IDMuOTYxOCAxNC4yODkxIDMuMzM4NDcgMTQuMjA3OCAyLjc5NTQ2QzE0LjEyODcgMi4yNjc0OCAxMy45NTE5IDEuNzQ0ODIgMTMuNjAzNSAxLjM5NjQ1QzEzLjI1NTIgMS4wNDgwOSAxMi43MzI1IDAuODcxMzMyIDEyLjIwNDUgMC43OTIyNjRDMTEuNjYxNSAwLjcxMDk0NSAxMS4wMzgyIDAuNzIxNjQ0IDEwLjQxMDUgMC44MTEzQzkuMTcxNDMgMC45ODgzMDYgNy44MDE4OSAxLjQ5MSA2Ljk0NjQ0IDIuMzQ2NDJMNi4zMjMyMiAyLjk2OTY4TDMuMDcwNzEgMi41MDUwNEMyLjkxNDkyIDIuNDgyNzggMi43NTc3MyAyLjUzNTE3IDIuNjQ2NDUgMi42NDY0NkwwLjY0NjQ1MSA0LjY0NjQ1QzAuNTM3NTc5IDQuNzU1MzMgMC40ODQ5MzggNC45MDgyOSAwLjUwMzc1IDUuMDYxMUMwLjUyMjU2MyA1LjIxMzkxIDAuNjEwNzMgNS4zNDk1NCAwLjc0Mjc1NyA1LjQyODc2TDIuNjkzNjQgNi41OTkyOEwyLjE0NjQ2IDcuMTQ2NDVDMi4wNTI3IDcuMjQwMjIgMi4wMDAwMiA3LjM2NzQgMi4wMDAwMiA3LjUwMDAxQzIuMDAwMDIgNy42MzI2MSAyLjA1MjcgNy43NTk3OSAyLjE0NjQ2IDcuODUzNTZMMy42NDY0NyA5LjM1MzU2QzMuODQxNzMgOS41NDg4MyA0LjE1ODMxIDkuNTQ4ODMgNC4zNTM1NyA5LjM1MzU2QzQuNTQ4ODQgOS4xNTgzIDQuNTQ4ODQgOC44NDE3MiA0LjM1MzU3IDguNjQ2NDZMMy4yMDcxMiA3LjUwMDAxTDMuODUzNTcgNi44NTM1Nkw2Ljg1MzU3IDMuODUzNTVaTTEwLjA5OTMgMTMuMTkzNkw5LjEyOTU5IDExLjU3NzVMMTEuMTQ2NCA5LjU2MDY3TDExLjQ2OTcgMTEuODIzMkwxMC4wOTkzIDEzLjE5MzZaTTMuNDIyNTEgNS44NzA0MUw1LjQzOTM1IDMuODUzNTZMMy4xNzY3OCAzLjUzMDM0TDEuODA2MzggNC45MDA3NEwzLjQyMjUxIDUuODcwNDFaTTIuMzUzNTYgMTAuMzUzNUMyLjU0ODgyIDEwLjE1ODMgMi41NDg4MiA5Ljg0MTcgMi4zNTM1NiA5LjY0NjQ0QzIuMTU4MyA5LjQ1MTE4IDEuODQxNzEgOS40NTExOCAxLjY0NjQ1IDkuNjQ2NDRMMC42NDY0NTEgMTAuNjQ2NEMwLjQ1MTE4OCAxMC44NDE3IDAuNDUxMTg4IDExLjE1ODMgMC42NDY0NTEgMTEuMzUzNUMwLjg0MTcxMyAxMS41NDg4IDEuMTU4MyAxMS41NDg4IDEuMzUzNTYgMTEuMzUzNUwyLjM1MzU2IDEwLjM1MzVaTTMuODUzNTggMTEuODUzNkM0LjA0ODg0IDExLjY1ODMgNC4wNDg4NSAxMS4zNDE3IDMuODUzNTkgMTEuMTQ2NUMzLjY1ODMzIDEwLjk1MTIgMy4zNDE3NSAxMC45NTEyIDMuMTQ2NDggMTEuMTQ2NUwxLjE0NjQ1IDEzLjE0NjRDMC45NTExOSAxMy4zNDE3IDAuOTUxMTg3IDEzLjY1ODMgMS4xNDY0NSAxMy44NTM1QzEuMzQxNzEgMTQuMDQ4OCAxLjY1ODI5IDE0LjA0ODggMS44NTM1NSAxMy44NTM2TDMuODUzNTggMTEuODUzNlpNNS4zNTM1NiAxMy4zNTM1QzUuNTQ4ODIgMTMuMTU4MyA1LjU0ODgyIDEyLjg0MTcgNS4zNTM1NiAxMi42NDY0QzUuMTU4MyAxMi40NTEyIDQuODQxNzEgMTIuNDUxMiA0LjY0NjQ1IDEyLjY0NjRMMy42NDY0NSAxMy42NDY0QzMuNDUxMTkgMTMuODQxNyAzLjQ1MTE5IDE0LjE1ODMgMy42NDY0NSAxNC4zNTM1QzMuODQxNzEgMTQuNTQ4OCA0LjE1ODMgMTQuNTQ4OCA0LjM1MzU2IDE0LjM1MzVMNS4zNTM1NiAxMy4zNTM1Wk05LjQ5OTk3IDYuNzQ4ODFDMTAuMTg5NyA2Ljc0ODgxIDEwLjc0ODggNi4xODk3IDEwLjc0ODggNS41QzEwLjc0ODggNC44MTAzIDEwLjE4OTcgNC4yNTExOCA5LjQ5OTk3IDQuMjUxMThDOC44MTAyNiA0LjI1MTE4IDguMjUxMTUgNC44MTAzIDguMjUxMTUgNS41QzguMjUxMTUgNi4xODk3IDguODEwMjYgNi43NDg4MSA5LjQ5OTk3IDYuNzQ4ODFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzSSA9IFtcImNvbG9yXCJdO1xudmFyIFJvdGF0ZUNvdW50ZXJDbG9ja3dpc2VJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNJKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy41OTY2NCAyLjkzNjI4QzcuNzYwODUgMy4wNjQwMSA4LjAwMDEyIDIuOTQ2OTggOC4wMDAxMiAyLjczODk1VjEuOTk5OThDOS45ODE0MyAyIDExLjE4NDggMi4zNjM3IDExLjkxMDUgMy4wODk0NUMxMi42MzYzIDMuODE1MjIgMTMgNS4wMTg2IDEzIDYuOTk5OThDMTMgNy4yNzYxMyAxMy4yMjM5IDcuNDk5OTggMTMuNSA3LjQ5OTk4QzEzLjc3NjEgNy40OTk5OCAxNCA3LjI3NjEzIDE0IDYuOTk5OThDMTQgNC45NDM4IDEzLjYzMjUgMy4zOTcxOSAxMi42MTc2IDIuMzgyMzRDMTEuNjAyOCAxLjM2NzUyIDEwLjA1NjIgMC45OTk5OTkgOC4wMDAxMiAwLjk5OTk4NFYwLjI2MTI2NkM4LjAwMDEyIDAuMDUzMjI5MyA3Ljc2MDg1IC0wLjA2Mzc5NDQgNy41OTY2NCAwLjA2MzkyOEw2LjAwMzg0IDEuMzAyNzdDNS44NzUxNiAxLjQwMjg2IDUuODc1MTYgMS41OTczNSA2LjAwMzg0IDEuNjk3NDRMNy41OTY2NCAyLjkzNjI4Wk05LjUgNUgyLjVDMi4yMjM4NiA1IDIgNS4yMjM4NiAyIDUuNVYxMi41QzIgMTIuNzc2MSAyLjIyMzg2IDEzIDIuNSAxM0g5LjVDOS43NzYxNCAxMyAxMCAxMi43NzYxIDEwIDEyLjVWNS41QzEwIDUuMjIzODYgOS43NzYxNCA1IDkuNSA1Wk0yLjUgNEMxLjY3MTU3IDQgMSA0LjY3MTU3IDEgNS41VjEyLjVDMSAxMy4zMjg0IDEuNjcxNTcgMTQgMi41IDE0SDkuNUMxMC4zMjg0IDE0IDExIDEzLjMyODQgMTEgMTIuNVY1LjVDMTEgNC42NzE1NyAxMC4zMjg0IDQgOS41IDRIMi41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM0ogPSBbXCJjb2xvclwiXTtcbnZhciBSb3dTcGFjaW5nSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzSik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuODE4MzIgMC42ODE3OUM3LjY0MjU4IDAuNTA2MDU0IDcuMzU3NjYgMC41MDYwNTQgNy4xODE5MiAwLjY4MTc5TDUuMTgxOTIgMi42ODE3OUM1LjAwNjE5IDIuODU3NTMgNS4wMDYxOSAzLjE0MjQ1IDUuMTgxOTIgMy4zMTgxOUM1LjM1NzY2IDMuNDkzOTIgNS42NDI1OCAzLjQ5MzkyIDUuODE4MzIgMy4zMTgxOUw3LjA1MDEyIDIuMDg2MzhMNy4wNTAxMiA1LjUwMDIzQzcuMDUwMTIgNS43NDg3NiA3LjI1MTU5IDUuOTUwMjMgNy41MDAxMiA1Ljk1MDIzQzcuNzQ4NjUgNS45NTAyMyA3Ljk1MDEyIDUuNzQ4NzYgNy45NTAxMiA1LjUwMDIzTDcuOTUwMTIgMi4wODYzOEw5LjE4MTkyIDMuMzE4MTlDOS4zNTc2NiAzLjQ5MzkyIDkuNjQyNTggMy40OTM5MiA5LjgxODMyIDMuMzE4MTlDOS45OTQwNiAzLjE0MjQ1IDkuOTk0MDYgMi44NTc1MyA5LjgxODMyIDIuNjgxNzlMNy44MTgzMiAwLjY4MTc5Wk03Ljk1MDEyIDEyLjkxMzZWOS41MDAyM0M3Ljk1MDEyIDkuMjUxNyA3Ljc0ODY1IDkuMDUwMjMgNy41MDAxMiA5LjA1MDIzQzcuMjUxNTkgOS4wNTAyMyA3LjA1MDEyIDkuMjUxNyA3LjA1MDEyIDkuNTAwMjNWMTIuOTEzNkw1LjgxODMyIDExLjY4MThDNS42NDI1OCAxMS41MDYxIDUuMzU3NjYgMTEuNTA2MSA1LjE4MTkyIDExLjY4MThDNS4wMDYxOSAxMS44NTc1IDUuMDA2MTkgMTIuMTQyNCA1LjE4MTkyIDEyLjMxODJMNy4xODE5MiAxNC4zMTgyQzcuMjY2MzIgMTQuNDAyNiA3LjM4MDc3IDE0LjQ1IDcuNTAwMTIgMTQuNDVDNy42MTk0NyAxNC40NSA3LjczMzkzIDE0LjQwMjYgNy44MTgzMiAxNC4zMTgyTDkuODE4MzIgMTIuMzE4MkM5Ljk5NDA2IDEyLjE0MjQgOS45OTQwNiAxMS44NTc1IDkuODE4MzIgMTEuNjgxOEM5LjY0MjU4IDExLjUwNjEgOS4zNTc2NiAxMS41MDYxIDkuMTgxOTIgMTEuNjgxOEw3Ljk1MDEyIDEyLjkxMzZaTTEuNDk5OTQgNy4wMDAxN0MxLjIyMzggNy4wMDAxNyAwLjk5OTkzOSA3LjIyNDAzIDAuOTk5OTM5IDcuNTAwMTdDMC45OTk5MzkgNy43NzYzMSAxLjIyMzggOC4wMDAxNyAxLjQ5OTk0IDguMDAwMTdMMTMuNDk5OSA4LjAwMDE3QzEzLjc3NjEgOC4wMDAxNyAxMy45OTk5IDcuNzc2MzEgMTMuOTk5OSA3LjUwMDE3QzEzLjk5OTkgNy4yMjQwMyAxMy43NzYxIDcuMDAwMTcgMTMuNDk5OSA3LjAwMDE3TDEuNDk5OTQgNy4wMDAxN1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNLID0gW1wiY29sb3JcIl07XG52YXIgUm93c0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM0spO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xNCAxMi44NUwxIDEyLjg1TDEgMTQuMTVMMTQgMTQuMTVMMTQgMTIuODVaTTE0IDguODUwMDJMMSA4Ljg1MDAyTDEgMTAuMTVMMTQgMTAuMTVMMTQgOC44NTAwMlpNMSA0Ljg1MDAzTDE0IDQuODUwMDNMMTQgNi4xNTAwM0wxIDYuMTUwMDJMMSA0Ljg1MDAzWk0xNCAwLjg1MDAyNUwxIDAuODUwMDI1TDEgMi4xNTAwMkwxNCAyLjE1MDAyTDE0IDAuODUwMDI1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM0wgPSBbXCJjb2xvclwiXTtcbnZhciBSdWxlckhvcml6b250YWxJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNMKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC41IDRDMC4yMjM4NTggNCAwIDQuMjIzODYgMCA0LjVWMTAuNUMwIDEwLjc3NjEgMC4yMjM4NTggMTEgMC41IDExSDE0LjVDMTQuNzc2MSAxMSAxNSAxMC43NzYxIDE1IDEwLjVWNC41QzE1IDQuMjIzODYgMTQuNzc2MSA0IDE0LjUgNEgwLjVaTTEgMTBWNUgyLjA3NVY3LjVDMi4wNzUgNy43MzQ3MiAyLjI2NTI4IDcuOTI1IDIuNSA3LjkyNUMyLjczNDcyIDcuOTI1IDIuOTI1IDcuNzM0NzIgMi45MjUgNy41VjVINC4wNzVWNi41QzQuMDc1IDYuNzM0NzIgNC4yNjUyOCA2LjkyNSA0LjUgNi45MjVDNC43MzQ3MiA2LjkyNSA0LjkyNSA2LjczNDcyIDQuOTI1IDYuNVY1SDYuMDc1VjYuNUM2LjA3NSA2LjczNDcyIDYuMjY1MjggNi45MjUgNi41IDYuOTI1QzYuNzM0NzIgNi45MjUgNi45MjUgNi43MzQ3MiA2LjkyNSA2LjVWNUg4LjA3NVY3LjVDOC4wNzUgNy43MzQ3MiA4LjI2NTI4IDcuOTI1IDguNSA3LjkyNUM4LjczNDcyIDcuOTI1IDguOTI1IDcuNzM0NzIgOC45MjUgNy41VjVIMTAuMDc1VjYuNUMxMC4wNzUgNi43MzQ3MiAxMC4yNjUzIDYuOTI1IDEwLjUgNi45MjVDMTAuNzM0NyA2LjkyNSAxMC45MjUgNi43MzQ3MiAxMC45MjUgNi41VjVIMTIuMDc1VjYuNUMxMi4wNzUgNi43MzQ3MiAxMi4yNjUzIDYuOTI1IDEyLjUgNi45MjVDMTIuNzM0NyA2LjkyNSAxMi45MjUgNi43MzQ3MiAxMi45MjUgNi41VjVIMTRWMTBIMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNNID0gW1wiY29sb3JcIl07XG52YXIgUnVsZXJTcXVhcmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNNKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC41IDBDMC4yMjM4NTggMCAwIDAuMjIzODU4IDAgMC41VjE0LjVDMCAxNC43NzYxIDAuMjIzODU4IDE1IDAuNSAxNUg0LjVDNC43NzYxNCAxNSA1IDE0Ljc3NjEgNSAxNC41VjVIMTQuNUMxNC43NzYxIDUgMTUgNC43NzYxNCAxNSA0LjVWMC41QzE1IDAuMjIzODU4IDE0Ljc3NjEgMCAxNC41IDBIMC41Wk0xIDQuMDc1MDVMMSAxSDQuMDc1MDJDNC4wNzUwMiAxIDQuMDc1MDIgMSA0LjA3NTAyIDFMNC4wNzUwNSA0LjA3NTA3TDEgNC4wNzUwNVpNMC45OTk5OTcgNC45MjUwNUwxIDE0SDRWMTIuOTI1SDIuNzUwMDJDMi41MTUzIDEyLjkyNSAyLjMyNTAyIDEyLjczNDggMi4zMjUwMiAxMi41QzIuMzI1MDIgMTIuMjY1MyAyLjUxNTMgMTIuMDc1IDIuNzUwMDIgMTIuMDc1SDRWMTAuOTI1SDIuMjUwMDJDMi4wMTUzIDEwLjkyNSAxLjgyNTAyIDEwLjczNDcgMS44MjUwMiAxMC41QzEuODI1MDIgMTAuMjY1MyAyLjAxNTMgMTAuMDc1IDIuMjUwMDIgMTAuMDc1SDRWOC45MjUwNEwyLjc1MDAyIDguOTI1MDJDMi41MTUzIDguOTI1MDIgMi4zMjUwMiA4LjczNDc0IDIuMzI1MDIgOC41MDAwMkMyLjMyNTAzIDguMjY1MjkgMi41MTUzMSA4LjA3NTAyIDIuNzUwMDMgOC4wNzUwMkw0IDguMDc1MDRWNi45MjUwMkwyLjc0OTk5IDYuOTI1QzIuNTE1MjcgNi45MjUgMi4zMjUgNi43MzQ3MiAyLjMyNSA2LjVDMi4zMjUgNi4yNjUyOCAyLjUxNTI5IDYuMDc1IDIuNzUwMDEgNi4wNzVMNCA2LjA3NTAyVjQuOTI1MDdMMC45OTk5OTcgNC45MjUwNVpNNC45MjUwNSA0SDYuMDc1VjIuNzUwMDZDNi4wNzUgMi41MTUzNCA2LjI2NTI4IDIuMzI1MDYgNi41IDIuMzI1MDZDNi43MzQ3MiAyLjMyNTA2IDYuOTI1IDIuNTE1MzQgNi45MjUgMi43NTAwNlY0SDguMDc1MDJWMi43NTAwNUM4LjA3NTAyIDIuNTE1MzMgOC4yNjUzIDIuMzI1MDUgOC41MDAwMiAyLjMyNTA1QzguNzM0NzQgMi4zMjUwNSA4LjkyNTAyIDIuNTE1MzMgOC45MjUwMiAyLjc1MDA1VjRIMTAuMDc1MVYyLjI1MDA1QzEwLjA3NTEgMi4wMTUzMyAxMC4yNjUzIDEuODI1MDUgMTAuNTAwMSAxLjgyNTA1QzEwLjczNDggMS44MjUwNSAxMC45MjUxIDIuMDE1MzMgMTAuOTI1MSAyLjI1MDA1VjRIMTIuMDc1MVYyLjc1MDA1QzEyLjA3NTEgMi41MTUzMyAxMi4yNjU0IDIuMzI1MDUgMTIuNTAwMSAyLjMyNTA1QzEyLjczNDggMi4zMjUwNSAxMi45MjUxIDIuNTE1MzMgMTIuOTI1MSAyLjc1MDA1VjRIMTRWMUg0LjkyNTAyTDQuOTI1MDUgNFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNOID0gW1wiY29sb3JcIl07XG52YXIgU2Npc3NvcnNJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNOKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC45NDk5ODggNC40ODQ1NUMwLjk0OTk4OCA1LjM0MDU5IDEuNjQzOTUgNi4wMzQ1NSAyLjQ5OTk5IDYuMDM0NTVDMy4zNTYwMyA2LjAzNDU1IDQuMDQ5OTkgNS4zNDA1OSA0LjA0OTk5IDQuNDg0NTVDNC4wNDk5OSAzLjYyODUgMy4zNTYwMyAyLjkzNDU1IDIuNDk5OTkgMi45MzQ1NUMxLjY0Mzk1IDIuOTM0NTUgMC45NDk5ODggMy42Mjg1IDAuOTQ5OTg4IDQuNDg0NTVaTTIuNDk5OTkgNi45MzQ1NUMxLjE0Njg5IDYuOTM0NTUgMC4wNDk5ODc4IDUuODM3NjQgMC4wNDk5ODc4IDQuNDg0NTVDMC4wNDk5ODc4IDMuMTMxNDUgMS4xNDY4OSAyLjAzNDU1IDIuNDk5OTkgMi4wMzQ1NUMzLjg1MzA5IDIuMDM0NTUgNC45NDk5OSAzLjEzMTQ1IDQuOTQ5OTkgNC40ODQ1NUM0Ljk0OTk5IDQuODA4MTMgNC44ODcyNiA1LjExNzA3IDQuNzczMjkgNS4zOTk4NUw1LjczNjU1IDYuMDQ0MTNDNS43Mjk0MyA2LjA2NjU2IDUuNzIyNjkgNi4wODkxNCA1LjcxNjM1IDYuMTExODhMNS41NjI4OCA2LjY2MTg2TDUuMjEwMDUgNi44OTc3M0w0LjIxNTU0IDYuMjMzNjZDMy43NzM1NyA2LjY2NzIgMy4xNjggNi45MzQ1NSAyLjQ5OTk5IDYuOTM0NTVaTTAuOTQ5OTkxIDEwLjVDMC45NDk5OTEgOS42NDM5NCAxLjY0Mzk1IDguOTQ5OTggMi40OTk5OSA4Ljk0OTk4QzMuMzU2MDMgOC45NDk5OCA0LjA0OTk5IDkuNjQzOTQgNC4wNDk5OSAxMC41QzQuMDQ5OTkgMTEuMzU2IDMuMzU2MDMgMTIuMDUgMi40OTk5OSAxMi4wNUMxLjY0Mzk1IDEyLjA1IDAuOTQ5OTkxIDExLjM1NiAwLjk0OTk5MSAxMC41Wk0yLjQ5OTk5IDguMDQ5OThDMS4xNDY4OSA4LjA0OTk4IDAuMDQ5OTkwOCA5LjE0Njg4IDAuMDQ5OTkwOCAxMC41QzAuMDQ5OTkwOCAxMS44NTMxIDEuMTQ2ODkgMTIuOTUgMi40OTk5OSAxMi45NUMzLjg1MzA5IDEyLjk1IDQuOTQ5OTkgMTEuODUzMSA0Ljk0OTk5IDEwLjVDNC45NDk5OSAxMC4xODAzIDQuODg4NzcgOS44NzQ5NyA0Ljc3NzQzIDkuNTk1TDE1IDIuNzU3MzdMMTQuMDQ4NiAyLjg1NzM3QzEyLjcwNzcgMi45OTgzIDExLjQwOTEgMy40MDg5NSAxMC4yMzEgNC4wNjQ2MUw3LjE1NjQ2IDUuNzc1NjRDNi45MjMwNyA1LjkwNTUzIDYuNzUxMzQgNi4xMjMzOSA2LjY3OTU1IDYuMzgwNjZMNi40MjY1MyA3LjI4NzM3TDQuMjI0MzcgOC43NTk1N0MzLjc4MTY2IDguMzIwOTEgMy4xNzI0NiA4LjA0OTk4IDIuNDk5OTkgOC4wNDk5OFpNNy4xNDQzNSA5LjIxNDlMNy4xNTY0NiA5LjIyMTc2TDEwLjIzMSAxMC45MzI4QzExLjQwOTEgMTEuNTg4NCAxMi43MDc3IDExLjk5OTEgMTQuMDQ4NiAxMi4xNEwxNSAxMi4yNEw4LjgxMDcyIDguMTAwM0w3LjE0NDM1IDkuMjE0OVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNPID0gW1wiY29sb3JcIl07XG52YXIgU2VjdGlvbkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM08pO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0yIDEuNUMyIDEuNzc2MTQgMS43NzYxNCAyIDEuNSAyQzEuMjIzODYgMiAxIDEuNzc2MTQgMSAxLjVDMSAxLjIyMzg2IDEuMjIzODYgMSAxLjUgMUMxLjc3NjE0IDEgMiAxLjIyMzg2IDIgMS41Wk0yIDVMMiAxMEgxM1Y1SDJaTTIgNEMxLjQ0NzcyIDQgMSA0LjQ0NzcyIDEgNVYxMEMxIDEwLjU1MjMgMS40NDc3MiAxMSAyIDExSDEzQzEzLjU1MjMgMTEgMTQgMTAuNTUyMyAxNCAxMFY1QzE0IDQuNDQ3NzIgMTMuNTUyMyA0IDEzIDRIMlpNMS41IDE0QzEuNzc2MTQgMTQgMiAxMy43NzYxIDIgMTMuNUMyIDEzLjIyMzkgMS43NzYxNCAxMyAxLjUgMTNDMS4yMjM4NiAxMyAxIDEzLjIyMzkgMSAxMy41QzEgMTMuNzc2MSAxLjIyMzg2IDE0IDEuNSAxNFpNNCAxLjVDNCAxLjc3NjE0IDMuNzc2MTQgMiAzLjUgMkMzLjIyMzg2IDIgMyAxLjc3NjE0IDMgMS41QzMgMS4yMjM4NiAzLjIyMzg2IDEgMy41IDFDMy43NzYxNCAxIDQgMS4yMjM4NiA0IDEuNVpNMy41IDE0QzMuNzc2MTQgMTQgNCAxMy43NzYxIDQgMTMuNUM0IDEzLjIyMzkgMy43NzYxNCAxMyAzLjUgMTNDMy4yMjM4NiAxMyAzIDEzLjIyMzkgMyAxMy41QzMgMTMuNzc2MSAzLjIyMzg2IDE0IDMuNSAxNFpNNiAxLjVDNiAxLjc3NjE0IDUuNzc2MTQgMiA1LjUgMkM1LjIyMzg2IDIgNSAxLjc3NjE0IDUgMS41QzUgMS4yMjM4NiA1LjIyMzg2IDEgNS41IDFDNS43NzYxNCAxIDYgMS4yMjM4NiA2IDEuNVpNNS41IDE0QzUuNzc2MTQgMTQgNiAxMy43NzYxIDYgMTMuNUM2IDEzLjIyMzkgNS43NzYxNCAxMyA1LjUgMTNDNS4yMjM4NiAxMyA1IDEzLjIyMzkgNSAxMy41QzUgMTMuNzc2MSA1LjIyMzg2IDE0IDUuNSAxNFpNOCAxLjVDOCAxLjc3NjE0IDcuNzc2MTQgMiA3LjUgMkM3LjIyMzg2IDIgNyAxLjc3NjE0IDcgMS41QzcgMS4yMjM4NiA3LjIyMzg2IDEgNy41IDFDNy43NzYxNCAxIDggMS4yMjM4NiA4IDEuNVpNNy41IDE0QzcuNzc2MTQgMTQgOCAxMy43NzYxIDggMTMuNUM4IDEzLjIyMzkgNy43NzYxNCAxMyA3LjUgMTNDNy4yMjM4NiAxMyA3IDEzLjIyMzkgNyAxMy41QzcgMTMuNzc2MSA3LjIyMzg2IDE0IDcuNSAxNFpNMTAgMS41QzEwIDEuNzc2MTQgOS43NzYxNCAyIDkuNSAyQzkuMjIzODYgMiA5IDEuNzc2MTQgOSAxLjVDOSAxLjIyMzg2IDkuMjIzODYgMSA5LjUgMUM5Ljc3NjE0IDEgMTAgMS4yMjM4NiAxMCAxLjVaTTkuNSAxNEM5Ljc3NjE0IDE0IDEwIDEzLjc3NjEgMTAgMTMuNUMxMCAxMy4yMjM5IDkuNzc2MTQgMTMgOS41IDEzQzkuMjIzODYgMTMgOSAxMy4yMjM5IDkgMTMuNUM5IDEzLjc3NjEgOS4yMjM4NiAxNCA5LjUgMTRaTTEyIDEuNUMxMiAxLjc3NjE0IDExLjc3NjEgMiAxMS41IDJDMTEuMjIzOSAyIDExIDEuNzc2MTQgMTEgMS41QzExIDEuMjIzODYgMTEuMjIzOSAxIDExLjUgMUMxMS43NzYxIDEgMTIgMS4yMjM4NiAxMiAxLjVaTTExLjUgMTRDMTEuNzc2MSAxNCAxMiAxMy43NzYxIDEyIDEzLjVDMTIgMTMuMjIzOSAxMS43NzYxIDEzIDExLjUgMTNDMTEuMjIzOSAxMyAxMSAxMy4yMjM5IDExIDEzLjVDMTEgMTMuNzc2MSAxMS4yMjM5IDE0IDExLjUgMTRaTTE0IDEuNUMxNCAxLjc3NjE0IDEzLjc3NjEgMiAxMy41IDJDMTMuMjIzOSAyIDEzIDEuNzc2MTQgMTMgMS41QzEzIDEuMjIzODYgMTMuMjIzOSAxIDEzLjUgMUMxMy43NzYxIDEgMTQgMS4yMjM4NiAxNCAxLjVaTTEzLjUgMTRDMTMuNzc2MSAxNCAxNCAxMy43NzYxIDE0IDEzLjVDMTQgMTMuMjIzOSAxMy43NzYxIDEzIDEzLjUgMTNDMTMuMjIzOSAxMyAxMyAxMy4yMjM5IDEzIDEzLjVDMTMgMTMuNzc2MSAxMy4yMjM5IDE0IDEzLjUgMTRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzUCA9IFtcImNvbG9yXCJdO1xudmFyIFNld2luZ1Bpbkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM1ApO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk02IDMuNUM2IDIuNjcxNTcgNi42NzE1NyAyIDcuNSAyQzguMzI4NDMgMiA5IDIuNjcxNTcgOSAzLjVDOSA0LjMyODQzIDguMzI4NDMgNSA3LjUgNUM2LjY3MTU3IDUgNiA0LjMyODQzIDYgMy41Wk04IDUuOTQ5OTlDOS4xNDExMiA1LjcxODM2IDEwIDQuNzA5NDggMTAgMy41QzEwIDIuMTE5MjkgOC44ODA3MSAxIDcuNSAxQzYuMTE5MjkgMSA1IDIuMTE5MjkgNSAzLjVDNSA0LjcwOTQ4IDUuODU4ODggNS43MTgzNiA3IDUuOTQ5OTlWMTMuNUM3IDEzLjc3NjEgNy4yMjM4NiAxNCA3LjUgMTRDNy43NzYxNCAxNCA4IDEzLjc3NjEgOCAxMy41VjUuOTQ5OTlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzUSA9IFtcImNvbG9yXCJdO1xudmFyIFNld2luZ1BpbkZpbGxlZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM1EpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMCAzLjVDMTAgNC43MDk0OCA5LjE0MTEyIDUuNzE4MzYgOCA1Ljk0OTk5VjEzLjVDOCAxMy43NzYxIDcuNzc2MTQgMTQgNy41IDE0QzcuMjIzODYgMTQgNyAxMy43NzYxIDcgMTMuNVY1Ljk0OTk5QzUuODU4ODggNS43MTgzNiA1IDQuNzA5NDggNSAzLjVDNSAyLjExOTI5IDYuMTE5MjkgMSA3LjUgMUM4Ljg4MDcxIDEgMTAgMi4xMTkyOSAxMCAzLjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzUiA9IFtcImNvbG9yXCJdO1xudmFyIFNoYWRvd0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM1IpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4wNVwiLFxuICAgIGQ6IFwiTTYuNzgyOTYgMTMuMzc2QzguNzM5MDQgOS45NTI4NCA4LjczOTA0IDUuMDQ3MTkgNi43ODI5NiAxLjYyNDA1TDcuMjE3MDggMS4zNzU5OEM5LjI2MSA0Ljk1MjgzIDkuMjYxIDEwLjA0NzIgNy4yMTcwOCAxMy42MjRMNi43ODI5NiAxMy4zNzZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjFcIixcbiAgICBkOiBcIk03LjI4MjA0IDEzLjQ3NzVDOS4yMzkyOSA5Ljk5NTIzIDkuMjM5MjkgNS4wMDQ3NSA3LjI4MjA0IDEuNTIyNDhMNy43MTc5MSAxLjI3NzVDOS43NjA2NyA0LjkxMTkgOS43NjA2NyAxMC4wODgxIDcuNzE3OTEgMTMuNzIyNUw3LjI4MjA0IDEzLjQ3NzVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjE1XCIsXG4gICAgZDogXCJNNy44MjA5OCAxMy41MDY0QzkuNzI1MDIgOS45OTUyMyA5LjcyNjM2IDUuMDE0MTEgNy44MjQ5MiAxLjUwMDg0TDguMjY0NjUgMS4yNjI4NUMxMC4yNDY1IDQuOTI0NjYgMTAuMjQ1MSAxMC4wODUgOC4yNjA1MiAxMy43NDQ4TDcuODIwOTggMTMuNTA2NFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuMlwiLFxuICAgIGQ6IFwiTTguNDEyODQgMTMuNDI5QzEwLjE5NTIgOS45Mjg0MiAxMC4xOTU3IDUuMDc1MzcgOC40MTQzNSAxLjU3NDAyTDguODU5OTkgMS4zNDcyOUMxMC43MTM5IDQuOTkxMTMgMTAuNzEzMyAxMC4wMTI4IDguODU4NDEgMTMuNjU1OUw4LjQxMjg0IDEzLjQyOVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuMjVcIixcbiAgICBkOiBcIk05LjAyNDQxIDEzLjI5NTZDMTAuNjU2NyA5LjgzNzkgMTAuNjU4NiA1LjE3NzE1IDkuMDMwMDUgMS43MTY1Nkw5LjQ4MjQ1IDEuNTAzNjZDMTEuMTc0NSA1LjA5OTE5IDExLjE3MjYgOS45MTYyOSA5LjQ3NjU3IDEzLjUwOTFMOS4wMjQ0MSAxMy4yOTU2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4zXCIsXG4gICAgZDogXCJNOS42NjgwOSAxMy4wNjU1QzExLjEwOTcgOS42OTU3MiAxMS4xMTA3IDUuMzEyMSA5LjY3MDg4IDEuOTQwOTVMMTAuMTMwNyAxLjc0NDU3QzExLjYyNDEgNS4yNDEyMSAxMS42MjMxIDkuNzY2ODMgMTAuMTI3OCAxMy4yNjIyTDkuNjY4MDkgMTMuMDY1NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuMzVcIixcbiAgICBkOiBcIk0xMC4zMzEgMTIuNzQ1NkMxMS41NTUxIDkuNTIwNzMgMTEuNTU2NCA1LjQ5MTAzIDEwLjMzNDcgMi4yNjQ0NEwxMC44MDI0IDIuMDg3NEMxMi4wNjcyIDUuNDI4MTUgMTIuMDY1OSA5LjU4Mzk0IDEwLjc5ODUgMTIuOTIzMUwxMC4zMzEgMTIuNzQ1NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuNFwiLFxuICAgIGQ6IFwiTTExLjAxNTUgMTIuMjk4NkMxMS45OTM4IDkuMjk3NDQgMTEuOTk0OCA1LjcxMjk2IDExLjAxODQgMi43MTA2N0wxMS40OTM5IDIuNTU2MDNDMTIuNTAzIDUuNjU4OSAxMi41MDIgOS4zNTE3OCAxMS40OTA5IDEyLjQ1MzVMMTEuMDE1NSAxMi4yOTg2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi40NVwiLFxuICAgIGQ6IFwiTTExLjcyMTQgMTEuNjY4QzEyLjQyNTQgOS4wMTMwMyAxMi40MjYyIDUuOTk2OTEgMTEuNzIzNyAzLjM0MTE2TDEyLjIwNzEgMy4yMTMyOUMxMi45MzE4IDUuOTUyOTIgMTIuOTMxIDkuMDU3MjggMTIuMjA0NyAxMS43OTYxTDExLjcyMTQgMTEuNjY4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi41XCIsXG4gICAgZDogXCJNMTIuNDQzMiAxMC43NTJDMTIuODUyNCA4LjYzNzYyIDEyLjg1MjMgNi4zNjA4OSAxMi40NDI5IDQuMjQ2NkwxMi45MzM4IDQuMTUxNTVDMTMuMzU1MyA2LjMyODYxIDEzLjM1NTQgOC42Njk4NSAxMi45MzQxIDEwLjg0N0wxMi40NDMyIDEwLjc1MlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC44NzcwNzUgNy40OTk4OEMwLjg3NzA3NSAzLjg0MjE5IDMuODQyMjIgMC44NzcwNDUgNy40OTk5MSAwLjg3NzA0NUMxMS4xNTc2IDAuODc3MDQ1IDE0LjEyMjcgMy44NDIxOSAxNC4xMjI3IDcuNDk5ODhDMTQuMTIyNyAxMS4xNTc1IDExLjE1NzYgMTQuMTIyNyA3LjQ5OTkxIDE0LjEyMjdDMy44NDIyMiAxNC4xMjI3IDAuODc3MDc1IDExLjE1NzUgMC44NzcwNzUgNy40OTk4OFpNNy40OTk5MSAxLjgyNzA0QzQuMzY2ODkgMS44MjcwNCAxLjgyNzA4IDQuMzY2ODYgMS44MjcwOCA3LjQ5OTg4QzEuODI3MDggMTAuNjMyOSA0LjM2Njg5IDEzLjE3MjcgNy40OTk5MSAxMy4xNzI3QzEwLjYzMjkgMTMuMTcyNyAxMy4xNzI3IDEwLjYzMjkgMTMuMTcyNyA3LjQ5OTg4QzEzLjE3MjcgNC4zNjY4NiAxMC42MzI5IDEuODI3MDQgNy40OTk5MSAxLjgyNzA0WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM1MgPSBbXCJjb2xvclwiXTtcbnZhciBTaGFkb3dJbm5lckljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM1MpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4wNVwiLFxuICAgIGQ6IFwiTTEyLjE2MTkgMy44NTE4MkM4LjM1ODE3IDQuODg5MTggNC44ODkzNiA4LjM1OCAzLjg1MTk5IDEyLjE2MTdMMy4zNjk2IDEyLjAzMDFDNC40NTM1NiA4LjA1NTY0IDguMDU1ODEgNC40NTMzOSAxMi4wMzAzIDMuMzY5NDNMMTIuMTYxOSAzLjg1MTgyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4xXCIsXG4gICAgZDogXCJNMTEuODgwNyAzLjQyNzA3QzguMDM0NDEgNC41MDU0MiA0LjUwNTYxIDguMDM0MjIgMy40MjcyNiAxMS44ODA1TDIuOTQ1ODIgMTEuNzQ1NkM0LjA3MTI5IDcuNzMxMjEgNy43MzE0IDQuMDcxMSAxMS43NDU4IDIuOTQ1NjNMMTEuODgwNyAzLjQyNzA3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4xNVwiLFxuICAgIGQ6IFwiTTExLjUyMDEgMy4wMjU1NkM3LjY5MDkyIDQuMTYxOTkgNC4xNjc3OSA3LjY4MzIzIDMuMDI4MDUgMTEuNTEyTDIuNTQ4ODMgMTEuMzY5NEMzLjczNjc2IDcuMzc4NjkgNy4zODY1OSAzLjczMDc2IDExLjM3NzggMi41NDYyM0wxMS41MjAxIDMuMDI1NTZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjJcIixcbiAgICBkOiBcIk0xMS4wNDY4IDIuNjYxNjlDNy4zMTExNyAzLjg3NjY0IDMuODc5MTggNy4zMDc5IDIuNjYyOTggMTEuMDQzNEwyLjE4NzU0IDEwLjg4ODZDMy40NTMyNCA3LjAwMTA5IDcuMDA0NDUgMy40NTA2MiAxMC44OTIxIDIuMTg2MjFMMTEuMDQ2OCAyLjY2MTY5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4yNVwiLFxuICAgIGQ6IFwiTTEwLjUyMDEgMi4zMjM2NUM2LjkyMDkxIDMuNjE0NDcgMy42MjM5MSA2LjkwODc2IDIuMzI4NDUgMTAuNTA3M0wxLjg1OCAxMC4zMzhDMy4yMDM5OCA2LjU5OTA5IDYuNjExNTUgMy4xOTQyNCAxMC4zNTEzIDEuODUzMDFMMTAuNTIwMSAyLjMyMzY1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4zXCIsXG4gICAgZDogXCJNOS45MDIyMiAyLjAzMTIyQzYuNTAwMDMgMy4zOTQ2NSAzLjM5OTY4IDYuNDkzNjcgMi4wMzM5OSA5Ljg5NTUxTDEuNTY5OTggOS43MDkyNEMyLjk4NjUxIDYuMTgwNzYgNi4xODcyOCAyLjk4MTMzIDkuNzE2MjIgMS41NjcxTDkuOTAyMjIgMi4wMzEyMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuMzVcIixcbiAgICBkOiBcIk05LjIwNzI3IDEuNzg4NzNDNi4wNjEzNiAzLjIwMzQ5IDMuMjExMDMgNi4wNTIwMyAxLjc5MzMxIDkuMTk3MzhMMS4zMzc0NyA4Ljk5MTkyQzIuODA1MzYgNS43MzUyOCA1Ljc0NDg1IDIuNzk3NiA5LjAwMjIgMS4zMzI3Mkw5LjIwNzI3IDEuNzg4NzNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjRcIixcbiAgICBkOiBcIk04LjQwNzEzIDEuNjIwODVDNS41OTMyMyAzLjA1MTE3IDMuMDU3OTQgNS41ODUwOSAxLjYyNTQ0IDguMzk4NDdMMS4xNzk4NyA4LjE3MTZDMi42NjAzNiA1LjI2Mzk3IDUuMjcyMzIgMi42NTM0IDguMTgwNTcgMS4xNzUxM0w4LjQwNzEzIDEuNjIwODVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjQ1XCIsXG4gICAgZDogXCJNNy40NjIwNyAxLjU2NzQ3QzUuMDg2ODkgMi45NDY5NSAyLjk1MzYyIDUuMDc5MTIgMS41NzI0OSA3LjQ1Mzc5TDEuMTQwMjggNy4yMDI0MUMyLjU2NTAzIDQuNzUyNzMgNC43NjA3IDIuNTU4MTggNy4yMTA5NiAxLjEzNTFMNy40NjIwNyAxLjU2NzQ3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi41XCIsXG4gICAgZDogXCJNNi4zMDQwNyAxLjcwNDg3QzQuNTE5NjQgMi45MTA2MyAyLjkwOTgzIDQuNTIwNjEgMS43MDQzIDYuMzA1MTNMMS4yODk5OCA2LjAyNTI0QzIuNTMxMyA0LjE4NzczIDQuMTg2NzMgMi41MzIxNCA2LjAyNDEzIDEuMjkwNTlMNi4zMDQwNyAxLjcwNDg3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0wLjg3NzA3NSA3LjQ5OTg4QzAuODc3MDc1IDMuODQyMTkgMy44NDIyMiAwLjg3NzA0NSA3LjQ5OTkxIDAuODc3MDQ1QzExLjE1NzYgMC44NzcwNDUgMTQuMTIyNyAzLjg0MjE5IDE0LjEyMjcgNy40OTk4OEMxNC4xMjI3IDExLjE1NzUgMTEuMTU3NiAxNC4xMjI3IDcuNDk5OTEgMTQuMTIyN0MzLjg0MjIyIDE0LjEyMjcgMC44NzcwNzUgMTEuMTU3NSAwLjg3NzA3NSA3LjQ5OTg4Wk03LjQ5OTkxIDEuODI3MDRDNC4zNjY4OSAxLjgyNzA0IDEuODI3MDggNC4zNjY4NiAxLjgyNzA4IDcuNDk5ODhDMS44MjcwOCAxMC42MzI5IDQuMzY2ODkgMTMuMTcyNyA3LjQ5OTkxIDEzLjE3MjdDMTAuNjMyOSAxMy4xNzI3IDEzLjE3MjcgMTAuNjMyOSAxMy4xNzI3IDcuNDk5ODhDMTMuMTcyNyA0LjM2Njg2IDEwLjYzMjkgMS44MjcwNCA3LjQ5OTkxIDEuODI3MDRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzVCA9IFtcImNvbG9yXCJdO1xudmFyIFNoYWRvd05vbmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNUKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuMDVcIixcbiAgICBkOiBcIk02Ljc4Mjk2IDEzLjM3NkM4LjczOTA0IDkuOTUyODQgOC43MzkwNCA1LjA0NzE5IDYuNzgyOTYgMS42MjQwNUw3LjIxNzA4IDEuMzc1OThDOS4yNjEgNC45NTI4MyA5LjI2MSAxMC4wNDcyIDcuMjE3MDggMTMuNjI0TDYuNzgyOTYgMTMuMzc2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4xXCIsXG4gICAgZDogXCJNNy4yODIwNCAxMy40Nzc1QzkuMjM5MjkgOS45OTUyMyA5LjIzOTI5IDUuMDA0NzUgNy4yODIwNCAxLjUyMjQ4TDcuNzE3OTEgMS4yNzc1QzkuNzYwNjcgNC45MTE5IDkuNzYwNjcgMTAuMDg4MSA3LjcxNzkxIDEzLjcyMjVMNy4yODIwNCAxMy40Nzc1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4xNVwiLFxuICAgIGQ6IFwiTTcuODIwOTggMTMuNTA2NEM5LjcyNTAyIDkuOTk1MjMgOS43MjYzNiA1LjAxNDExIDcuODI0OTIgMS41MDA4NEw4LjI2NDY1IDEuMjYyODVDMTAuMjQ2NSA0LjkyNDY2IDEwLjI0NTEgMTAuMDg1IDguMjYwNTIgMTMuNzQ0OEw3LjgyMDk4IDEzLjUwNjRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjJcIixcbiAgICBkOiBcIk04LjQxMjg0IDEzLjQyOUMxMC4xOTUyIDkuOTI4NDIgMTAuMTk1NyA1LjA3NTM3IDguNDE0MzUgMS41NzQwMkw4Ljg1OTk5IDEuMzQ3MjlDMTAuNzEzOSA0Ljk5MTEzIDEwLjcxMzMgMTAuMDEyOCA4Ljg1ODQxIDEzLjY1NTlMOC40MTI4NCAxMy40MjlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjI1XCIsXG4gICAgZDogXCJNOS4wMjQ0MSAxMy4yOTU2QzEwLjY1NjcgOS44Mzc5IDEwLjY1ODYgNS4xNzcxNSA5LjAzMDA1IDEuNzE2NTZMOS40ODI0NSAxLjUwMzY2QzExLjE3NDUgNS4wOTkxOSAxMS4xNzI2IDkuOTE2MjkgOS40NzY1NyAxMy41MDkxTDkuMDI0NDEgMTMuMjk1NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuM1wiLFxuICAgIGQ6IFwiTTkuNjY4MDkgMTMuMDY1NUMxMS4xMDk3IDkuNjk1NzIgMTEuMTEwNyA1LjMxMjEgOS42NzA4OCAxLjk0MDk1TDEwLjEzMDcgMS43NDQ1N0MxMS42MjQxIDUuMjQxMjEgMTEuNjIzMSA5Ljc2NjgzIDEwLjEyNzggMTMuMjYyMkw5LjY2ODA5IDEzLjA2NTVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjM1XCIsXG4gICAgZDogXCJNMTAuMzMxIDEyLjc0NTZDMTEuNTU1MSA5LjUyMDczIDExLjU1NjQgNS40OTEwMyAxMC4zMzQ3IDIuMjY0NDRMMTAuODAyNCAyLjA4NzRDMTIuMDY3MiA1LjQyODE1IDEyLjA2NTkgOS41ODM5NCAxMC43OTg1IDEyLjkyMzFMMTAuMzMxIDEyLjc0NTZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjRcIixcbiAgICBkOiBcIk0xMS4wMTU1IDEyLjI5ODZDMTEuOTkzOCA5LjI5NzQ0IDExLjk5NDggNS43MTI5NiAxMS4wMTg0IDIuNzEwNjdMMTEuNDkzOSAyLjU1NjAzQzEyLjUwMyA1LjY1ODkgMTIuNTAyIDkuMzUxNzggMTEuNDkwOSAxMi40NTM1TDExLjAxNTUgMTIuMjk4NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuNDVcIixcbiAgICBkOiBcIk0xMS43MjE0IDExLjY2OEMxMi40MjU0IDkuMDEzMDMgMTIuNDI2MiA1Ljk5NjkxIDExLjcyMzcgMy4zNDExNkwxMi4yMDcxIDMuMjEzMjlDMTIuOTMxOCA1Ljk1MjkyIDEyLjkzMSA5LjA1NzI4IDEyLjIwNDcgMTEuNzk2MUwxMS43MjE0IDExLjY2OFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuNVwiLFxuICAgIGQ6IFwiTTEyLjQ0MzIgMTAuNzUyQzEyLjg1MjQgOC42Mzc2MiAxMi44NTIzIDYuMzYwODkgMTIuNDQyOSA0LjI0NjZMMTIuOTMzOCA0LjE1MTU1QzEzLjM1NTMgNi4zMjg2MSAxMy4zNTU0IDguNjY5ODUgMTIuOTM0MSAxMC44NDdMMTIuNDQzMiAxMC43NTJaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTEgMC44NzcwNDVDMy44NDIyMiAwLjg3NzA0NSAwLjg3NzA3NSAzLjg0MjE5IDAuODc3MDc1IDcuNDk5ODhDMC44NzcwNzUgOS4xNDg4IDEuNDc5NjkgMTAuNjU3IDIuNDc2NyAxMS44MTYyTDEuNjQ2NDcgMTIuNjQ2NEMxLjQ1MTIxIDEyLjg0MTcgMS40NTEyMSAxMy4xNTgzIDEuNjQ2NDcgMTMuMzUzNUMxLjg0MTczIDEzLjU0ODggMi4xNTgzMiAxMy41NDg4IDIuMzUzNTggMTMuMzUzNUwzLjE4MzgzIDEyLjUyMzNDNC4zNDMwMiAxMy41MjAyIDUuODUxMSAxNC4xMjI3IDcuNDk5OTEgMTQuMTIyN0MxMS4xNTc2IDE0LjEyMjcgMTQuMTIyNyAxMS4xNTc1IDE0LjEyMjcgNy40OTk4OEMxNC4xMjI3IDUuODUxMDcgMTMuNTIwMiA0LjM0Mjk4IDEyLjUyMzMgMy4xODM4TDEzLjM1MzYgMi4zNTM1NUMxMy41NDg4IDIuMTU4MjkgMTMuNTQ4OCAxLjg0MTcgMTMuMzUzNiAxLjY0NjQ0QzEzLjE1ODMgMS40NTExOCAxMi44NDE3IDEuNDUxMTggMTIuNjQ2NSAxLjY0NjQ0TDExLjgxNjIgMi40NzY2N0MxMC42NTcgMS40Nzk2NiA5LjE0ODgzIDAuODc3MDQ1IDcuNDk5OTEgMC44NzcwNDVaTTExLjE0MjMgMy4xNTA2NUMxMC4xNTY4IDIuMzI0NDkgOC44ODY0NCAxLjgyNzA0IDcuNDk5OTEgMS44MjcwNEM0LjM2Njg5IDEuODI3MDQgMS44MjcwOCA0LjM2Njg2IDEuODI3MDggNy40OTk4OEMxLjgyNzA4IDguODg2NDEgMi4zMjQ1MiAxMC4xNTY4IDMuMTUwNjkgMTEuMTQyMkwxMS4xNDIzIDMuMTUwNjVaTTMuODU3ODEgMTEuODQ5M0M0Ljg0MzIyIDEyLjY3NTMgNi4xMTM0OCAxMy4xNzI3IDcuNDk5OTEgMTMuMTcyN0MxMC42MzI5IDEzLjE3MjcgMTMuMTcyNyAxMC42MzI5IDEzLjE3MjcgNy40OTk4OEMxMy4xNzI3IDYuMTEzNDUgMTIuNjc1NCA0Ljg0MzE5IDExLjg0OTMgMy44NTc3OEwzLjg1NzgxIDExLjg0OTNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzVSA9IFtcImNvbG9yXCJdO1xudmFyIFNoYWRvd091dGVySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzVSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjA1XCIsXG4gICAgZDogXCJNMTIuMTM5OCAzLjg4NjE3QzEzLjg1NTMgNC45NDE1OSAxNSA2LjgzNzAxIDE1IDkuMDAwMDFDMTUgMTIuMzEzNyAxMi4zMTM3IDE1IDkuMDAwMDIgMTVDNi44NDM1MSAxNSA0Ljk1Mjk2IDEzLjg2MjEgMy44OTU2OSAxMi4xNTUyTDQuMzIwNzYgMTEuODkxOUM1LjI5MDY5IDEzLjQ1NzggNy4wMjM3NiAxNC41IDkuMDAwMDIgMTQuNUMxMi4wMzc2IDE0LjUgMTQuNSAxMi4wMzc1IDE0LjUgOS4wMDAwMUMxNC41IDcuMDE3ODEgMTMuNDUxNiA1LjI4MDI3IDExLjg3NzggNC4zMTIwM0wxMi4xMzk4IDMuODg2MTdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjJcIixcbiAgICBkOiBcIk0xMi44NTEgNS4wNzMyMUMxMy44Njg0IDYuMDcxMDYgMTQuNSA3LjQ2MTk5IDE0LjUgOUMxNC41IDEyLjAzNzUgMTIuMDM3NiAxNC41IDkuMDAwMDQgMTQuNUM3LjQ2MjE1IDE0LjUgNi4wNzEzMiAxMy44Njg1IDUuMDczNDkgMTIuODUxM0w1LjQzMDQzIDEyLjUwMTFDNi4zMzgxIDEzLjQyNjQgNy42MDE4NiAxNCA5LjAwMDA0IDE0QzExLjc2MTQgMTQgMTQgMTEuNzYxNCAxNCA5QzE0IDcuNjAxNzEgMTMuNDI2NCA2LjMzNzg2IDEyLjUwMDkgNS40MzAxN0wxMi44NTEgNS4wNzMyMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuMzVcIixcbiAgICBkOiBcIk0xMy4zMDIyIDYuNDUwNzFDMTMuNzQ1NSA3LjE5NzM3IDE0IDguMDY5MzUgMTQgOS4wMDAwMUMxNCAxMS43NjE0IDExLjc2MTQgMTQgOS4wMDAwMiAxNEM4LjA0ODY4IDE0IDcuMTU4NjggMTMuNzM0MSA2LjQwMTE4IDEzLjI3MjRMNi42NjE0MiAxMi44NDU0QzcuMzQyNzUgMTMuMjYwNyA4LjE0MzA2IDEzLjUgOS4wMDAwMiAxMy41QzExLjQ4NTMgMTMuNSAxMy41IDExLjQ4NTMgMTMuNSA5LjAwMDAxQzEzLjUgOC4xNjE2NSAxMy4yNzEgNy4zNzc1NCAxMi44NzIyIDYuNzA1OTlMMTMuMzAyMiA2LjQ1MDcxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi41XCIsXG4gICAgZDogXCJNMTMuMzc0NSA3Ljk0MDIyQzEzLjQ1NjYgOC4yODAzMSAxMy41IDguNjM1MjUgMTMuNSA5LjAwMDAxQzEzLjUgMTEuNDg1MyAxMS40ODUzIDEzLjUgOS4wMDAwMyAxMy41QzguNjExMDQgMTMuNSA4LjIzMzIzIDEzLjQ1MDYgNy44NzI2OCAxMy4zNTc2TDcuOTk3NTkgMTIuODczNEM4LjMxNzY4IDEyLjk1NiA4LjY1MzUzIDEzIDkuMDAwMDMgMTNDMTEuMjA5MSAxMyAxMyAxMS4yMDkxIDEzIDkuMDAwMDFDMTMgOC42NzUwOSAxMi45NjEzIDguMzU5NTMgMTIuODg4NCA4LjA1NzU3TDEzLjM3NDUgNy45NDAyMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuNjVcIixcbiAgICBkOiBcIk0xMi45MTU1IDkuODIxMzNDMTIuNTg5OCAxMS4zODEzIDExLjM1NjIgMTIuNjA3MiA5Ljc5MjA1IDEyLjkyMTVMOS42OTM1NCAxMi40MzEzQzExLjA2MTMgMTIuMTU2NSAxMi4xNDEzIDExLjA4MzQgMTIuNDI2MSA5LjcxOTE1TDEyLjkxNTUgOS44MjEzM1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS4yNzcxIDcuNTAyNTNDMS4yNzcxIDQuMDY0NTYgNC4wNjQxMyAxLjI3NzUzIDcuNTAyMSAxLjI3NzUzQzEwLjk0IDEuMjc3NTMgMTMuNzI3MSA0LjA2NDU2IDEzLjcyNzEgNy41MDI1M0MxMy43MjcxIDEwLjk0MDUgMTAuOTQgMTMuNzI3NSA3LjUwMjEgMTMuNzI3NUM0LjA2NDEzIDEzLjcyNzUgMS4yNzcxIDEwLjk0MDUgMS4yNzcxIDcuNTAyNTNaTTcuNTAyMSAyLjIyNzUzQzQuNTg4OCAyLjIyNzUzIDIuMjI3MSA0LjU4OTIzIDIuMjI3MSA3LjUwMjUzQzIuMjI3MSAxMC40MTU4IDQuNTg4OCAxMi43Nzc1IDcuNTAyMSAxMi43Nzc1QzEwLjQxNTQgMTIuNzc3NSAxMi43NzcxIDEwLjQxNTggMTIuNzc3MSA3LjUwMjUzQzEyLjc3NzEgNC41ODkyMyAxMC40MTU0IDIuMjI3NTMgNy41MDIxIDIuMjI3NTNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzViA9IFtcImNvbG9yXCJdO1xudmFyIFNoYXJlMUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM1YpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk01IDcuNTAwMDNDNSA4LjMyODQ1IDQuMzI4NDMgOS4wMDAwMyAzLjUgOS4wMDAwM0MyLjY3MTU3IDkuMDAwMDMgMiA4LjMyODQ1IDIgNy41MDAwM0MyIDYuNjcxNiAyLjY3MTU3IDYuMDAwMDMgMy41IDYuMDAwMDNDNC4zMjg0MyA2LjAwMDAzIDUgNi42NzE2IDUgNy41MDAwM1pNNS43MTMxMyA4LjY2Mzg4QzUuMjk0NDUgOS40NTgzOCA0LjQ2MDQ4IDEwIDMuNSAxMEMyLjExOTI5IDEwIDEgOC44ODA3NCAxIDcuNTAwMDNDMSA2LjExOTMxIDIuMTE5MjkgNS4wMDAwMyAzLjUgNS4wMDAwM0M0LjQ2MDQ4IDUuMDAwMDMgNS4yOTQ0NSA1LjU0MTY3IDUuNzEzMTMgNi4zMzYxNkw5LjEwNDI0IDQuMjE2NzFDOS4wMzY0MyAzLjk4OTY4IDkgMy43NDkxMSA5IDMuNTAwMDNDOSAyLjExOTMyIDEwLjExOTMgMS4wMDAwMyAxMS41IDEuMDAwMDNDMTIuODgwNyAxLjAwMDAzIDE0IDIuMTE5MzIgMTQgMy41MDAwM0MxNCA0Ljg4MDc0IDEyLjg4MDcgNi4wMDAwMyAxMS41IDYuMDAwMDNDMTAuNjkxNSA2LjAwMDAzIDkuOTcyNjQgNS42MTYyNCA5LjUxNTY2IDUuMDIwOUw1Ljk4NTMgNy4yMjczOEM1Ljk5NTAyIDcuMzE2OTIgNiA3LjQwNzg5IDYgNy41MDAwM0M2IDcuNTkyMTYgNS45OTUwMiA3LjY4MzEyIDUuOTg1MyA3Ljc3MjY3TDkuNTE1NjcgOS45NzkxNUM5Ljk3MjY1IDkuMzgzODIgMTAuNjkxNSA5LjAwMDAzIDExLjUgOS4wMDAwM0MxMi44ODA3IDkuMDAwMDMgMTQgMTAuMTE5MyAxNCAxMS41QzE0IDEyLjg4MDcgMTIuODgwNyAxNCAxMS41IDE0QzEwLjExOTMgMTQgOSAxMi44ODA3IDkgMTEuNUM5IDExLjI1MDkgOS4wMzY0MyAxMS4wMTA0IDkuMTA0MjUgMTAuNzgzM0w1LjcxMzEzIDguNjYzODhaTTExLjUgNS4wMDAwM0MxMi4zMjg0IDUuMDAwMDMgMTMgNC4zMjg0NiAxMyAzLjUwMDAzQzEzIDIuNjcxNiAxMi4zMjg0IDIuMDAwMDMgMTEuNSAyLjAwMDAzQzEwLjY3MTYgMi4wMDAwMyAxMCAyLjY3MTYgMTAgMy41MDAwM0MxMCA0LjMyODQ2IDEwLjY3MTYgNS4wMDAwMyAxMS41IDUuMDAwMDNaTTEzIDExLjVDMTMgMTIuMzI4NSAxMi4zMjg0IDEzIDExLjUgMTNDMTAuNjcxNiAxMyAxMCAxMi4zMjg1IDEwIDExLjVDMTAgMTAuNjcxNiAxMC42NzE2IDEwIDExLjUgMTBDMTIuMzI4NCAxMCAxMyAxMC42NzE2IDEzIDExLjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzVyA9IFtcImNvbG9yXCJdO1xudmFyIFNoYXJlMkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM1cpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zLjUgNS4wMDAwNkMzLjIyMzg2IDUuMDAwMDYgMyA1LjIyMzkyIDMgNS41MDAwNkwzIDExLjUwMDFDMyAxMS43NzYyIDMuMjIzODYgMTIuMDAwMSAzLjUgMTIuMDAwMUwxMS41IDEyLjAwMDFDMTEuNzc2MSAxMi4wMDAxIDEyIDExLjc3NjIgMTIgMTEuNTAwMUwxMiA1LjUwMDA2QzEyIDUuMjIzOTIgMTEuNzc2MSA1LjAwMDA2IDExLjUgNS4wMDAwNkwxMC4yNSA1LjAwMDA2QzkuOTczODYgNS4wMDAwNiA5Ljc1IDQuNzc2MiA5Ljc1IDQuNTAwMDZDOS43NSA0LjIyMzkyIDkuOTczODYgNC4wMDAwNiAxMC4yNSA0LjAwMDA2TDExLjUgNC4wMDAwNkMxMi4zMjg0IDQuMDAwMDYgMTMgNC42NzE2MyAxMyA1LjUwMDA2TDEzIDExLjUwMDFDMTMgMTIuMzI4NSAxMi4zMjg0IDEzLjAwMDEgMTEuNSAxMy4wMDAxTDMuNSAxMy4wMDAxQzIuNjcxNTcgMTMuMDAwMSAyIDEyLjMyODUgMiAxMS41MDAxTDIgNS41MDAwNkMyIDQuNjcxNjMgMi42NzE1NyA0LjAwMDA2IDMuNSA0LjAwMDA2TDQuNzUgNC4wMDAwNkM1LjAyNjE0IDQuMDAwMDYgNS4yNSA0LjIyMzkyIDUuMjUgNC41MDAwNkM1LjI1IDQuNzc2MiA1LjAyNjE0IDUuMDAwMDYgNC43NSA1LjAwMDA2TDMuNSA1LjAwMDA2Wk03IDEuNjM2NEw1LjU2ODIgMy4wNjgyQzUuMzkyNDYgMy4yNDM5MyA1LjEwNzU0IDMuMjQzOTMgNC45MzE4IDMuMDY4MkM0Ljc1NjA3IDIuODkyNDYgNC43NTYwNyAyLjYwNzU0IDQuOTMxOCAyLjQzMThMNy4xODE4IDAuMTgxODAyQzcuMjY2MTkgMC4wOTc0MSA3LjM4MDY1IDAuMDQ5OTk5IDcuNSAwLjA0OTk5OUM3LjYxOTM1IDAuMDQ5OTk5IDcuNzMzODEgMC4wOTc0MSA3LjgxODIgMC4xODE4MDJMMTAuMDY4MiAyLjQzMThDMTAuMjQzOSAyLjYwNzU0IDEwLjI0MzkgMi44OTI0NiAxMC4wNjgyIDMuMDY4MkM5Ljg5MjQ2IDMuMjQzOTMgOS42MDc1NCAzLjI0MzkzIDkuNDMxOCAzLjA2ODJMOCAxLjYzNjRMOCA4LjVDOCA4Ljc3NjE0IDcuNzc2MTQgOSA3LjUgOUM3LjIyMzg2IDkgNyA4Ljc3NjE0IDcgOC41TDcgMS42MzY0WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM1ggPSBbXCJjb2xvclwiXTtcbnZhciBTaHVmZmxlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzWCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEyLjM1MzYgMS4xNDY0NUMxMi4xNTgzIDAuOTUxMTg0IDExLjg0MTcgMC45NTExODQgMTEuNjQ2NCAxLjE0NjQ1QzExLjQ1MTIgMS4zNDE3MSAxMS40NTEyIDEuNjU4MjkgMTEuNjQ2NCAxLjg1MzU1TDEyLjc5MjkgM0gxMkMxMC43MDM3IDMgOS43MTExMSAzLjU4NDIzIDguODcyNDggNC4zODkzMUM4LjIwMDY1IDUuMDM0MjcgNy41OTM0OSA1Ljg1Njg0IDYuOTk0NjEgNi42NjgyQzYuODYyODcgNi44NDY2OCA2LjczMTU0IDcuMDI0NjIgNi42IDcuMkM1LjEwODc0IDkuMTg4MzUgMy40OTAzNyAxMSAwLjUgMTFDMC4yMjM4NTggMTEgMCAxMS4yMjM5IDAgMTEuNUMwIDExLjc3NjEgMC4yMjM4NTggMTIgMC41IDEyQzQuMDA5NjMgMTIgNS44OTEyNiA5LjgxMTY1IDcuNCA3LjhDNy41NDM2NyA3LjYwODQ1IDcuNjgzMiA3LjQxOTYyIDcuODE5OTYgNy4yMzQ1NEw3LjgyMDA1IDcuMjM0NDNMNy44MjAwNiA3LjIzNDQxQzguNDE2NzQgNi40MjY5NSA4Ljk2MDY5IDUuNjkwODUgOS41NjUwMiA1LjExMDY5QzEwLjI4ODkgNC40MTU3NyAxMS4wNDYzIDQgMTIgNEgxMi43OTI5TDExLjY0NjQgNS4xNDY0NUMxMS40NTEyIDUuMzQxNzEgMTEuNDUxMiA1LjY1ODI5IDExLjY0NjQgNS44NTM1NUMxMS44NDE3IDYuMDQ4ODIgMTIuMTU4MyA2LjA0ODgyIDEyLjM1MzYgNS44NTM1NUwxNC4zNTM2IDMuODUzNTVDMTQuNTQ4OCAzLjY1ODI5IDE0LjU0ODggMy4zNDE3MSAxNC4zNTM2IDMuMTQ2NDVMMTIuMzUzNiAxLjE0NjQ1Wk0wLjUgM0MzLjM1Mjc4IDMgNS4xMjk5MiA0LjQ0NTg4IDYuNTA1NDggNi4wNjc0Nkw2LjM3NjIgNi4yNDI2NkM2LjI0ODMgNi40MTYxIDYuMTIyOTMgNi41ODYwOSA2IDYuNzVDNS45NjM5NyA2Ljc5ODA0IDUuOTI3OTggNi44NDU4MSA1Ljg5MiA2Ljg5MzMxQzQuNTczNDggNS4yOTMwNiAzLjAyNjM3IDQgMC41IDRDMC4yMjM4NTggNCAwIDMuNzc2MTQgMCAzLjVDMCAzLjIyMzg2IDAuMjIzODU4IDMgMC41IDNaTTguODcyNDggMTAuNjEwN0M4LjM3Mjg0IDEwLjEzMSA3LjkwODk3IDkuNTUzMTQgNy40NTc2NyA4Ljk1NDY4QzcuNjQ2ODggOC43MTY5MyA3LjgyNzA0IDguNDgwNjEgOCA4LjI1TDguMDg5ODcgOC4xMjk4N0M4LjU4NDEyIDguNzk0MDIgOS4wNTI4OCA5LjM5NzY2IDkuNTY1MDIgOS44ODkzMUMxMC4yODg5IDEwLjU4NDIgMTEuMDQ2MyAxMSAxMiAxMUgxMi43OTI5TDExLjY0NjQgOS44NTM1NUMxMS40NTEyIDkuNjU4MjkgMTEuNDUxMiA5LjM0MTcxIDExLjY0NjQgOS4xNDY0NUMxMS44NDE3IDguOTUxMTggMTIuMTU4MyA4Ljk1MTE4IDEyLjM1MzYgOS4xNDY0NUwxNC4zNTM2IDExLjE0NjRDMTQuNTQ4OCAxMS4zNDE3IDE0LjU0ODggMTEuNjU4MyAxNC4zNTM2IDExLjg1MzZMMTIuMzUzNiAxMy44NTM2QzEyLjE1ODMgMTQuMDQ4OCAxMS44NDE3IDE0LjA0ODggMTEuNjQ2NCAxMy44NTM2QzExLjQ1MTIgMTMuNjU4MyAxMS40NTEyIDEzLjM0MTcgMTEuNjQ2NCAxMy4xNDY0TDEyLjc5MjkgMTJIMTJDMTAuNzAzNyAxMiA5LjcxMTExIDExLjQxNTggOC44NzI0OCAxMC42MTA3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM1kgPSBbXCJjb2xvclwiXTtcbnZhciBTaXplSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzWSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTExLjUgMy4wNDk5OUMxMS43NDg1IDMuMDQ5OTkgMTEuOTUgMy4yNTE0NiAxMS45NSAzLjQ5OTk5VjcuNDk5OTlDMTEuOTUgNy43NDg1MiAxMS43NDg1IDcuOTQ5OTkgMTEuNSA3Ljk0OTk5QzExLjI1MTUgNy45NDk5OSAxMS4wNSA3Ljc0ODUyIDExLjA1IDcuNDk5OTlWNC41ODYzOUw0LjU4NjM4IDExLjA1SDcuNDk5OTlDNy43NDg1MiAxMS4wNSA3Ljk0OTk5IDExLjI1MTUgNy45NDk5OSAxMS41QzcuOTQ5OTkgMTEuNzQ4NSA3Ljc0ODUyIDExLjk1IDcuNDk5OTkgMTEuOTVMMy40OTk5OSAxMS45NUMzLjM4MDY0IDExLjk1IDMuMjY2MTggMTEuOTAyNiAzLjE4MTc5IDExLjgxODJDMy4wOTc0IDExLjczMzggMy4wNDk5OSAxMS42MTkzIDMuMDQ5OTkgMTEuNUwzLjA0OTk5IDcuNDk5OTlDMy4wNDk5OSA3LjI1MTQ2IDMuMjUxNDYgNy4wNDk5OSAzLjQ5OTk5IDcuMDQ5OTlDMy43NDg1MiA3LjA0OTk5IDMuOTQ5OTkgNy4yNTE0NiAzLjk0OTk5IDcuNDk5OTlMMy45NDk5OSAxMC40MTM2TDEwLjQxMzYgMy45NDk5OUw3LjQ5OTk5IDMuOTQ5OTlDNy4yNTE0NiAzLjk0OTk5IDcuMDQ5OTkgMy43NDg1MiA3LjA0OTk5IDMuNDk5OTlDNy4wNDk5OSAzLjI1MTQ2IDcuMjUxNDYgMy4wNDk5OSA3LjQ5OTk5IDMuMDQ5OTlMMTEuNSAzLjA0OTk5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM1ogPSBbXCJjb2xvclwiXTtcbnZhciBTa2V0Y2hMb2dvSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzWik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNTM3MzEgMC44MjY4NzNDNy41MTI1IDAuODI0MzkyIDcuNDg3NSAwLjgyNDM5MiA3LjQ2MjY5IDAuODI2ODczTDMuOTYyNjkgMS4xNzY4N0MzLjg1NjcyIDEuMTg3NDcgMy43NjAyNSAxLjI0MjYyIDMuNjk3MzYgMS4zMjg1N0wwLjY5OTc3MSA1LjQyNTI4QzAuNjU0MDQ2IDUuNDg2MjcgMC42MjY0NyA1LjU2MTY1IDAuNjI1MDU3IDUuNjQzNEMwLjYyNTAxOSA1LjY0NTYgMC42MjUgNS42NDc4MSAwLjYyNSA1LjY1MDAxQzAuNjI1IDUuNjUwNTIgMC42MjUwMDEgNS42NTEwMyAwLjYyNTAwMyA1LjY1MTUzQzAuNjI1MzYzIDUuNzQyMzcgMC42NTgwMjEgNS44MjU1OSAwLjcxMjA4NyA1Ljg5MDNMNy4yMTA0MiAxMy43ODgzQzcuMjgxNjUgMTMuODc0OSA3LjM4Nzg5IDEzLjkyNSA3LjUgMTMuOTI1QzcuNjEyMTEgMTMuOTI1IDcuNzE4MzUgMTMuODc0OSA3Ljc4OTU4IDEzLjc4ODNMMTQuMjg3OSA1Ljg5MDMxQzE0LjM0MiA1LjgyNTYgMTQuMzc0NiA1Ljc0MjM3IDE0LjM3NSA1LjY1MTUzQzE0LjM3NSA1LjY1MTAzIDE0LjM3NSA1LjY1MDUyIDE0LjM3NSA1LjY1MDAxQzE0LjM3NSA1LjY0ODQ5IDE0LjM3NSA1LjY0Njk3IDE0LjM3NSA1LjY0NTQ1QzE0LjM3NDkgNS42Mzk2MyAxNC4zNzQ3IDUuNjMzODIgMTQuMzc0NCA1LjYyODAxQzE0LjM3IDUuNTUyMTkgMTQuMzQzMSA1LjQ4MjQyIDE0LjMwMDIgNS40MjUyN0wxMS4zMDI2IDEuMzI4NTdDMTEuMjM5NyAxLjI0MjYyIDExLjE0MzMgMS4xODc0NyAxMS4wMzczIDEuMTc2ODdMNy41MzczMSAwLjgyNjg3M1pNMTAuOTI1IDUuMjc1MDFWNS4yNTIzNkwxMC45MjIzIDUuMjc1MDFIMTAuOTI1Wk0xMC45MzQyIDUuMTc0OThIMTMuMTg3N0wxMS4yNDk1IDIuNTI2MUwxMC45MzQyIDUuMTc0OThaTTEwLjU3MDcgMS44ODM5NUw4LjA0NDMyIDEuNjMxMzFMMTAuMTc0NyA1LjIxMDM0TDEwLjU3MDcgMS44ODM5NVpNNi45NTU2OCAxLjYzMTMxTDQuNDI5MzEgMS44ODM5NUw0LjgyNTMxIDUuMjEwMzRMNi45NTU2OCAxLjYzMTMxWk0zLjc1MDQ2IDIuNTI2MUwxLjgxMjI2IDUuMTc0OThINC4wNjU4TDMuNzUwNDYgMi41MjYxWk0xLjc5NDE2IDYuMDI1MDFMNi43NTg2MSAxMi4wNTg3TDQuMjIzNzEgNi4wNjY5QzQuMjE3ODcgNi4wNTMxIDQuMjEzMTQgNi4wMzkxIDQuMjA5NDkgNi4wMjUwMUgxLjc5NDE2Wk01LjE1MDU1IDYuMDI1MDFMNy40OTk5OSAxMi4xMDg1TDkuODQ5NDMgNi4wMjUwMUg5Ljc4NjgxSDUuMjEzMTlINS4xNTA1NVpNMTAuNzkwNSA2LjAyNTAxQzEwLjc4NjkgNi4wMzkxIDEwLjc4MjEgNi4wNTMxIDEwLjc3NjMgNi4wNjY5TDguMjQxMzkgMTIuMDU4N0wxMy4yMDU4IDYuMDI1MDFIMTAuNzkwNVpNNy41IDIuMTgzMTdMOS4zNDAzOCA1LjI3NTAxSDUuNjU5NjJMNy41IDIuMTgzMTdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzXyA9IFtcImNvbG9yXCJdO1xudmFyIFNsYXNoSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzXyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTQuMTA4NzYgMTRMOS40NjU4MiAxSDEwLjgxNzhMNS40NjA3NCAxNEg0LjEwODc2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMyQgPSBbXCJjb2xvclwiXTtcbnZhciBTbGlkZXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDMkKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTAuMzAwNCA3LjQ5OTkxQzEwLjMwMDQgOC40OTQzIDkuNDk0MjYgOS4zMDA0MSA4LjQ5OTg4IDkuMzAwNDFDNy41MDU0OSA5LjMwMDQxIDYuNjk5MzggOC40OTQzIDYuNjk5MzggNy40OTk5MUM2LjY5OTM4IDYuNTA1NTMgNy41MDU0OSA1LjY5OTQyIDguNDk5ODggNS42OTk0MkM5LjQ5NDI2IDUuNjk5NDIgMTAuMzAwNCA2LjUwNTUzIDEwLjMwMDQgNy40OTk5MVpNMTEuMjA1IDhDMTAuOTY5OSA5LjI4MDI5IDkuODQ4MTYgMTAuMjUwNCA4LjQ5OTg4IDEwLjI1MDRDNy4xNTE2IDEwLjI1MDQgNi4wMjk5IDkuMjgwMjkgNS43OTQ3MyA4SDAuNUMwLjIyMzg1OCA4IDAgNy43NzYxNCAwIDcuNUMwIDcuMjIzODYgMC4yMjM4NTggNyAwLjUgN0g1Ljc5NDdDNi4wMjk4IDUuNzE5NjIgNy4xNTE1NCA0Ljc0OTQyIDguNDk5ODggNC43NDk0MkM5Ljg0ODIyIDQuNzQ5NDIgMTAuOTcgNS43MTk2MiAxMS4yMDUxIDdIMTQuNUMxNC43NzYxIDcgMTUgNy4yMjM4NiAxNSA3LjVDMTUgNy43NzYxNCAxNC43NzYxIDggMTQuNSA4SDExLjIwNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDQwID0gW1wiY29sb3JcIl07XG52YXIgU3BhY2VCZXR3ZWVuSG9yaXpvbnRhbGx5SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0MCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTE0LjQ5OTkgMC45OTk5OTRDMTQuMjIzNyAwLjk5OTk5NCAxMy45OTk5IDEuMjIzODUgMTMuOTk5OSAxLjQ5OTk5TDEzLjk5OTkgNS45OTk5NUw5Ljk5OTkyIDUuOTk5OTVDOS40NDc2NCA1Ljk5OTk1IDguOTk5OTMgNi40NDc2NiA4Ljk5OTkzIDYuOTk5OTRMOC45OTk5MyA3Ljk5OTk0QzguOTk5OTMgOC41NTIyMiA5LjQ0NzY0IDguOTk5OTMgOS45OTk5MiA4Ljk5OTkzTDEzLjk5OTkgOC45OTk5M0wxMy45OTk5IDEzLjQ5OTlDMTMuOTk5OSAxMy43NzYgMTQuMjIzNyAxMy45OTk5IDE0LjQ5OTkgMTMuOTk5OUMxNC43NzYgMTMuOTk5OSAxNC45OTk5IDEzLjc3NiAxNC45OTk5IDEzLjQ5OTlMMTQuOTk5OSAxLjQ5OTk5QzE0Ljk5OTkgMS4yMjM4NSAxNC43NzYgMC45OTk5OTQgMTQuNDk5OSAwLjk5OTk5NFpNNC45OTk5NiA1Ljk5OTk1TDAuOTk5OTkyIDUuOTk5OTVMMC45OTk5OTIgMS40OTk5OUMwLjk5OTk5MiAxLjIyMzg1IDAuNzc2MTM2IDAuOTk5OTk0IDAuNDk5OTk2IDAuOTk5OTk0QzAuMjIzODU2IDAuOTk5OTk0IC05Ljc4NTJlLTA5IDEuMjIzODUgLTIuMTg1NTdlLTA4IDEuNDk5OTlMNC4wNzI3OWUtMDcgMTMuNDk5OUMzLjk1MjA4ZS0wNyAxMy43NzYgMC4yMjM4NTUgMTMuOTk5OSAwLjQ5OTk5NiAxMy45OTk5QzAuNzc2MTM2IDEzLjk5OTkgMC45OTk5OTIgMTMuNzc2IDAuOTk5OTkyIDEzLjQ5OTlMMC45OTk5OTIgOC45OTk5M0w0Ljk5OTk2IDguOTk5OTNDNS41NTIyNCA4Ljk5OTkzIDUuOTk5OTUgOC41NTIyMiA1Ljk5OTk1IDcuOTk5OTNMNS45OTk5NSA2Ljk5OTk0QzUuOTk5OTUgNi40NDc2NiA1LjU1MjI0IDUuOTk5OTUgNC45OTk5NiA1Ljk5OTk1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNDEgPSBbXCJjb2xvclwiXTtcbnZhciBTcGFjZUJldHdlZW5WZXJ0aWNhbGx5SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0MSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTAuOTk5ODc4IDAuNUMwLjk5OTg3OCAwLjIyMzg1OCAxLjIyMzc0IDAgMS40OTk4OCAwSDEzLjQ5OTlDMTMuNzc2IDAgMTMuOTk5OSAwLjIyMzg1OCAxMy45OTk5IDAuNUMxMy45OTk5IDAuNzc2MTQyIDEzLjc3NiAxIDEzLjQ5OTkgMUw5IDFWNUM5IDUuNTUyMjggOC41NTIyOCA2IDggNkg3QzYuNDQ3NzIgNiA2IDUuNTUyMjggNiA1VjFIMS40OTk4OEMxLjIyMzc0IDEgMC45OTk4NzggMC43NzYxNDIgMC45OTk4NzggMC41Wk03IDlDNi40NDc3MiA5IDYgOS40NDc3MSA2IDEwVjE0SDEuNDk5ODhDMS4yMjM3NCAxNCAwLjk5OTg3OCAxNC4yMjM5IDAuOTk5ODc4IDE0LjVDMC45OTk4NzggMTQuNzc2MSAxLjIyMzc0IDE1IDEuNDk5ODggMTVIMTMuNDk5OUMxMy43NzYgMTUgMTMuOTk5OSAxNC43NzYxIDEzLjk5OTkgMTQuNUMxMy45OTk5IDE0LjIyMzkgMTMuNzc2IDE0IDEzLjQ5OTkgMTRIOVYxMEM5IDkuNDQ3NzIgOC41NTIyOCA5IDggOUg3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNDIgPSBbXCJjb2xvclwiXTtcbnZhciBTcGFjZUV2ZW5seUhvcml6b250YWxseUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNDIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xNC40OTk5IDAuOTk5OTkyQzE0LjIyMzcgMC45OTk5OTIgMTMuOTk5OSAxLjIyMzg1IDEzLjk5OTkgMS40OTk5OUwxMy45OTk5IDEzLjQ5OTlDMTMuOTk5OSAxMy43NzYgMTQuMjIzNyAxMy45OTk5IDE0LjQ5OTkgMTMuOTk5OUMxNC43NzYgMTMuOTk5OSAxNC45OTk5IDEzLjc3NiAxNC45OTk5IDEzLjQ5OTlMMTQuOTk5OSAxLjQ5OTk5QzE0Ljk5OTkgMS4yMjM4NSAxNC43NzYgMC45OTk5OTIgMTQuNDk5OSAwLjk5OTk5MlpNMC40OTk5OTYgMC45OTk5OTJDMC4yMjM4NTYgMC45OTk5OTIgLTkuNzg1MDllLTA5IDEuMjIzODUgLTIuMTg1NTZlLTA4IDEuNDk5OTlMNC4wNzI3OWUtMDcgMTMuNDk5OUMzLjk1MjA4ZS0wNyAxMy43NzYgMC4yMjM4NTUgMTMuOTk5OSAwLjQ5OTk5NiAxMy45OTk5QzAuNzc2MTM2IDEzLjk5OTkgMC45OTk5OTIgMTMuNzc2IDAuOTk5OTkyIDEzLjQ5OTlMMC45OTk5OTIgMS40OTk5OUMwLjk5OTk5MiAxLjIyMzg1IDAuNzc2MTM2IDAuOTk5OTkyIDAuNDk5OTk2IDAuOTk5OTkyWk0xLjk5OTk4IDYuOTk5OTRDMS45OTk5OCA2LjQ0NzY2IDIuNDQ3NjkgNS45OTk5NSAyLjk5OTk4IDUuOTk5OTVMNS45OTk5NSA1Ljk5OTk1QzYuNTUyMjMgNS45OTk5NSA2Ljk5OTk0IDYuNDQ3NjYgNi45OTk5NCA2Ljk5OTk0TDYuOTk5OTQgNy45OTk5M0M2Ljk5OTk0IDguNTUyMjEgNi41NTIyMyA4Ljk5OTkyIDUuOTk5OTUgOC45OTk5MkwyLjk5OTk4IDguOTk5OTJDMi40NDc3IDguOTk5OTIgMS45OTk5OCA4LjU1MjIxIDEuOTk5OTggNy45OTk5M0wxLjk5OTk4IDYuOTk5OTRaTTguOTk5OTMgNS45OTk5NUM4LjQ0NzY1IDUuOTk5OTUgNy45OTk5MyA2LjQ0NzY2IDcuOTk5OTMgNi45OTk5NEw3Ljk5OTkzIDcuOTk5OTNDNy45OTk5MyA4LjU1MjIxIDguNDQ3NjUgOC45OTk5MiA4Ljk5OTkzIDguOTk5OTJMMTEuOTk5OSA4Ljk5OTkyQzEyLjU1MjIgOC45OTk5MiAxMi45OTk5IDguNTUyMjEgMTIuOTk5OSA3Ljk5OTkzTDEyLjk5OTkgNi45OTk5NEMxMi45OTk5IDYuNDQ3NjYgMTIuNTUyMiA1Ljk5OTk1IDExLjk5OTkgNS45OTk5NUw4Ljk5OTkzIDUuOTk5OTVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0MyA9IFtcImNvbG9yXCJdO1xudmFyIFNwYWNlRXZlbmx5VmVydGljYWxseUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNDMpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0wLjk5OTg3OCAwLjVDMC45OTk4NzggMC4yMjM4NTggMS4yMjM3NCAwIDEuNDk5ODggMEgxMy40OTk5QzEzLjc3NiAwIDEzLjk5OTkgMC4yMjM4NTggMTMuOTk5OSAwLjVDMTMuOTk5OSAwLjc3NjE0MiAxMy43NzYgMSAxMy40OTk5IDFIMS40OTk4OEMxLjIyMzc0IDEgMC45OTk4NzggMC43NzYxNDIgMC45OTk4NzggMC41Wk03IDJDNi40NDc3MiAyIDYgMi40NDc3MiA2IDNWNkM2IDYuNTUyMjggNi40NDc3MiA3IDcgN0g4QzguNTUyMjggNyA5IDYuNTUyMjggOSA2VjNDOSAyLjQ0NzcyIDguNTUyMjggMiA4IDJIN1pNNyA4QzYuNDQ3NzIgOCA2IDguNDQ3NzEgNiA5VjEyQzYgMTIuNTUyMyA2LjQ0NzcyIDEzIDcgMTNIOEM4LjU1MjI4IDEzIDkgMTIuNTUyMyA5IDEyVjlDOSA4LjQ0NzcyIDguNTUyMjggOCA4IDhIN1pNMS40OTk4OCAxNEMxLjIyMzc0IDE0IDAuOTk5ODc4IDE0LjIyMzkgMC45OTk4NzggMTQuNUMwLjk5OTg3OCAxNC43NzYxIDEuMjIzNzQgMTUgMS40OTk4OCAxNUgxMy40OTk5QzEzLjc3NiAxNSAxMy45OTk5IDE0Ljc3NjEgMTMuOTk5OSAxNC41QzEzLjk5OTkgMTQuMjIzOSAxMy43NzYgMTQgMTMuNDk5OSAxNEgxLjQ5OTg4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNDQgPSBbXCJjb2xvclwiXTtcbnZhciBTcGVha2VyTG91ZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNDQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjQ2OTY4IDEuMDUwODVDNy42NDEyMiAxLjEzNDc1IDcuNzUgMS4zMDkwNCA3Ljc1IDEuNVYxMy41QzcuNzUgMTMuNjkxIDcuNjQxMjIgMTMuODY1MyA3LjQ2OTY4IDEzLjk0OTJDNy4yOTgxMyAxNC4wMzMxIDcuMDkzNzcgMTQuMDExOSA2Ljk0MzAzIDEzLjg5NDdMMy4yMjEzIDExSDEuNUMwLjY3MTU3MSAxMSAwIDEwLjMyODQgMCA5LjVWNS41QzAgNC42NzE1OCAwLjY3MTU3MyA0IDEuNSA0SDMuMjIxM0w2Ljk0MzAzIDEuMTA1MzNDNy4wOTM3NyAwLjk4ODA4NSA3LjI5ODEzIDAuOTY2OTQ1IDcuNDY5NjggMS4wNTA4NVpNNi43NSAyLjUyMjMyTDMuNjk5ODMgNC44OTQ2OEMzLjYxMjA2IDQuOTYyOTQgMy41MDQwNSA1IDMuMzkyODYgNUgxLjVDMS4yMjM4NiA1IDEgNS4yMjM4NiAxIDUuNVY5LjVDMSA5Ljc3NjE1IDEuMjIzODYgMTAgMS41IDEwSDMuMzkyODZDMy41MDQwNSAxMCAzLjYxMjA2IDEwLjAzNzEgMy42OTk4MyAxMC4xMDUzTDYuNzUgMTIuNDc3N1YyLjUyMjMyWk0xMC4yNzg0IDMuODQ4MDRDMTAuNDYyMyAzLjcyNTY3IDEwLjcxMDYgMy43NzU1NyAxMC44MzMgMy45NTk0OUMxMi4yNTU4IDYuMDk3OTggMTIuMjU1OCA4LjkwMTk5IDEwLjgzMyAxMS4wNDA1QzEwLjcxMDYgMTEuMjI0NCAxMC40NjIzIDExLjI3NDMgMTAuMjc4NCAxMS4xNTE5QzEwLjA5NDQgMTEuMDI5NiAxMC4wNDQ1IDEwLjc4MTMgMTAuMTY2OSAxMC41OTczQzExLjQxMTEgOC43MjcyOCAxMS40MTExIDYuMjcyNjkgMTAuMTY2OSA0LjQwMjY0QzEwLjA0NDUgNC4yMTg3MSAxMC4wOTQ0IDMuOTcwNDEgMTAuMjc4NCAzLjg0ODA0Wk0xMi42Nzg1IDEuNDMwNDRDMTIuNTM1NiAxLjI2MTkgMTIuMjgzMiAxLjI0MTA0IDEyLjExNDcgMS4zODM4NkMxMS45NDYyIDEuNTI2NjcgMTEuOTI1MyAxLjc3OTA4IDEyLjA2ODEgMS45NDc2MkMxNC43NzczIDUuMTQ0ODggMTQuNzc3MyA5Ljg1NTEzIDEyLjA2ODEgMTMuMDUyNEMxMS45MjUzIDEzLjIyMDkgMTEuOTQ2MiAxMy40NzMzIDEyLjExNDcgMTMuNjE2MUMxMi4yODMyIDEzLjc1OSAxMi41MzU2IDEzLjczODEgMTIuNjc4NSAxMy41Njk2QzE1LjY0MDYgMTAuMDczOSAxNS42NDA2IDQuOTI2MTIgMTIuNjc4NSAxLjQzMDQ0WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNDUgPSBbXCJjb2xvclwiXTtcbnZhciBTcGVha2VyTW9kZXJhdGVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDQ1KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOCAxLjVDOCAxLjMxMDYyIDcuODkzIDEuMTM3NDkgNy43MjM2MSAxLjA1Mjc5QzcuNTU0MjEgMC45NjgwOTMgNy4zNTE1MSAwLjk4NjM3MSA3LjIgMS4xTDMuMzMzMzMgNEgxLjVDMC42NzE1NzMgNCAwIDQuNjcxNTggMCA1LjVWOS41QzAgMTAuMzI4NCAwLjY3MTU3MyAxMSAxLjUgMTFIMy4zMzMzM0w3LjIgMTMuOUM3LjM1MTUxIDE0LjAxMzYgNy41NTQyMSAxNC4wMzE5IDcuNzIzNjEgMTMuOTQ3MkM3Ljg5MyAxMy44NjI1IDggMTMuNjg5NCA4IDEzLjVWMS41Wk0zLjggNC45TDcgMi41VjEyLjVMMy44IDEwLjFDMy43MTM0NSAxMC4wMzUxIDMuNjA4MTkgMTAgMy41IDEwSDEuNUMxLjIyMzg2IDEwIDEgOS43NzYxNCAxIDkuNVY1LjVDMSA1LjIyMzg2IDEuMjIzODYgNSAxLjUgNUgzLjVDMy42MDgxOSA1IDMuNzEzNDUgNC45NjQ5MSAzLjggNC45Wk0xMC44MzMgMy45NTk0OUMxMC43MTA2IDMuNzc1NTcgMTAuNDYyMyAzLjcyNTY3IDEwLjI3ODQgMy44NDgwNEMxMC4wOTQ0IDMuOTcwNDEgMTAuMDQ0NSA0LjIxODcxIDEwLjE2NjkgNC40MDI2NEMxMS40MTExIDYuMjcyNjggMTEuNDExMSA4LjcyNzI4IDEwLjE2NjkgMTAuNTk3M0MxMC4wNDQ1IDEwLjc4MTMgMTAuMDk0NCAxMS4wMjk2IDEwLjI3ODQgMTEuMTUxOUMxMC40NjIzIDExLjI3NDMgMTAuNzEwNiAxMS4yMjQ0IDEwLjgzMyAxMS4wNDA1QzEyLjI1NTggOC45MDE5OSAxMi4yNTU4IDYuMDk3OTggMTAuODMzIDMuOTU5NDlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0NiA9IFtcImNvbG9yXCJdO1xudmFyIFNwZWFrZXJPZmZJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDQ2KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy43MjM2MSAxLjA1Mjc5QzcuODkzIDEuMTM3NDkgOCAxLjMxMDYyIDggMS41VjEzLjVDOCAxMy42ODk0IDcuODkzIDEzLjg2MjUgNy43MjM2MSAxMy45NDcyQzcuNTU0MjEgMTQuMDMxOSA3LjM1MTUxIDE0LjAxMzYgNy4yIDEzLjlMMy4zMzMzMyAxMUgxLjVDMC42NzE1NzMgMTEgMCAxMC4zMjg0IDAgOS41VjUuNUMwIDQuNjcxNTggMC42NzE1NzMgNCAxLjUgNEgzLjMzMzMzTDcuMiAxLjFDNy4zNTE1MSAwLjk4NjM3MSA3LjU1NDIxIDAuOTY4MDkzIDcuNzIzNjEgMS4wNTI3OVpNNyAyLjVMMy44IDQuOUMzLjcxMzQ1IDQuOTY0OTEgMy42MDgxOSA1IDMuNSA1SDEuNUMxLjIyMzg2IDUgMSA1LjIyMzg2IDEgNS41VjkuNUMxIDkuNzc2MTQgMS4yMjM4NiAxMCAxLjUgMTBIMy41QzMuNjA4MTkgMTAgMy43MTM0NSAxMC4wMzUxIDMuOCAxMC4xTDcgMTIuNVYyLjVaTTE0Ljg1MzYgNS4xNDY0NUMxNS4wNDg4IDUuMzQxNzEgMTUuMDQ4OCA1LjY1ODI5IDE0Ljg1MzYgNS44NTM1NUwxMy4yMDcxIDcuNUwxNC44NTM2IDkuMTQ2NDVDMTUuMDQ4OCA5LjM0MTcxIDE1LjA0ODggOS42NTgyOSAxNC44NTM2IDkuODUzNTVDMTQuNjU4MyAxMC4wNDg4IDE0LjM0MTcgMTAuMDQ4OCAxNC4xNDY0IDkuODUzNTVMMTIuNSA4LjIwNzExTDEwLjg1MzYgOS44NTM1NUMxMC42NTgzIDEwLjA0ODggMTAuMzQxNyAxMC4wNDg4IDEwLjE0NjQgOS44NTM1NUM5Ljk1MTE4IDkuNjU4MjkgOS45NTExOCA5LjM0MTcxIDEwLjE0NjQgOS4xNDY0NUwxMS43OTI5IDcuNUwxMC4xNDY0IDUuODUzNTVDOS45NTExOCA1LjY1ODI5IDkuOTUxMTggNS4zNDE3MSAxMC4xNDY0IDUuMTQ2NDVDMTAuMzQxNyA0Ljk1MTE4IDEwLjY1ODMgNC45NTExOCAxMC44NTM2IDUuMTQ2NDVMMTIuNSA2Ljc5Mjg5TDE0LjE0NjQgNS4xNDY0NUMxNC4zNDE3IDQuOTUxMTggMTQuNjU4MyA0Ljk1MTE4IDE0Ljg1MzYgNS4xNDY0NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDQ3ID0gW1wiY29sb3JcIl07XG52YXIgU3BlYWtlclF1aWV0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Nyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTggMS41QzggMS4zMTA2MiA3Ljg5MyAxLjEzNzQ5IDcuNzIzNjEgMS4wNTI3OUM3LjU1NDIxIDAuOTY4MDkzIDcuMzUxNTEgMC45ODYzNzEgNy4yIDEuMUwzLjMzMzMzIDRIMS41QzAuNjcxNTczIDQgMCA0LjY3MTU4IDAgNS41VjkuNUMwIDEwLjMyODQgMC42NzE1NzMgMTEgMS41IDExSDMuMzMzMzNMNy4yIDEzLjlDNy4zNTE1MSAxNC4wMTM2IDcuNTU0MjEgMTQuMDMxOSA3LjcyMzYxIDEzLjk0NzJDNy44OTMgMTMuODYyNSA4IDEzLjY4OTQgOCAxMy41VjEuNVpNMy44IDQuOUw3IDIuNVYxMi41TDMuOCAxMC4xQzMuNzEzNDUgMTAuMDM1MSAzLjYwODE5IDEwIDMuNSAxMEgxLjVDMS4yMjM4NiAxMCAxIDkuNzc2MTQgMSA5LjVWNS41QzEgNS4yMjM4NiAxLjIyMzg2IDUgMS41IDVIMy41QzMuNjA4MTkgNSAzLjcxMzQ1IDQuOTY0OTEgMy44IDQuOVpNMTAuMDgzIDUuMDU1NzdDOS45NjA2NiA0Ljg3MTg1IDkuNzEyMzUgNC44MjE5NSA5LjUyODQzIDQuOTQ0MzJDOS4zNDQ1IDUuMDY2NjkgOS4yOTQ2IDUuMzE0OTkgOS40MTY5NyA1LjQ5ODkyQzEwLjIyMDcgNi43MDY5MyAxMC4yMjA3IDguMjkzMDMgOS40MTY5NyA5LjUwMTA0QzkuMjk0NiA5LjY4NDk2IDkuMzQ0NSA5LjkzMzI2IDkuNTI4NDMgMTAuMDU1NkM5LjcxMjM1IDEwLjE3OCA5Ljk2MDY2IDEwLjEyODEgMTAuMDgzIDkuOTQ0MThDMTEuMDY1MyA4LjQ2NzczIDExLjA2NTMgNi41MzIyMiAxMC4wODMgNS4wNTU3N1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDQ4ID0gW1wiY29sb3JcIl07XG52YXIgU3F1YXJlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0OCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEgMUgxLjVIMTMuNUgxNFYxLjVWMTMuNVYxNEgxMy41SDEuNUgxVjEzLjVWMS41VjFaTTIgMlYxM0gxM1YySDJaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0OSA9IFtcImNvbG9yXCJdO1xudmFyIFN0YWNrSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0OSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNzU0MzIgMS44MTk1NEM3LjU5NzQyIDEuNzI2ODIgNy40MDI1IDEuNzI2ODIgNy4yNDU1OSAxLjgxOTU0TDEuNzQ1NTkgNS4wNjk1NEMxLjU5MzM2IDUuMTU5NDkgMS40OTk5NiA1LjMyMzE3IDEuNDk5OTYgNS41QzEuNDk5OTYgNS42NzY4MyAxLjU5MzM2IDUuODQwNTEgMS43NDU1OSA1LjkzMDQ2TDcuMjQ1NTkgOS4xODA0NkM3LjQwMjUgOS4yNzMxOCA3LjU5NzQyIDkuMjczMTggNy43NTQzMiA5LjE4MDQ2TDEzLjI1NDMgNS45MzA0NkMxMy40MDY2IDUuODQwNTEgMTMuNSA1LjY3NjgzIDEzLjUgNS41QzEzLjUgNS4zMjMxNyAxMy40MDY2IDUuMTU5NDkgMTMuMjU0MyA1LjA2OTU0TDcuNzU0MzIgMS44MTk1NFpNNy40OTk5NiA4LjE2OTIzTDIuOTgyOCA1LjVMNy40OTk5NiAyLjgzMDc3TDEyLjAxNzEgNS41TDcuNDk5OTYgOC4xNjkyM1pNMi4yNTQzMiA4LjMxOTU0QzIuMDE2NTggOC4xNzkwNiAxLjcwOTk4IDguMjU3OSAxLjU2OTQ5IDguNDk1NjRDMS40MjkwMSA4LjczMzM3IDEuNTA3ODUgOS4wMzk5OCAxLjc0NTU5IDkuMTgwNDZMNy4yNDU1OSAxMi40MzA1QzcuNDAyNSAxMi41MjMyIDcuNTk3NDIgMTIuNTIzMiA3Ljc1NDMyIDEyLjQzMDVMMTMuMjU0MyA5LjE4MDQ2QzEzLjQ5MjEgOS4wMzk5OCAxMy41NzA5IDguNzMzMzcgMTMuNDMwNCA4LjQ5NTY0QzEzLjI4OTkgOC4yNTc5IDEyLjk4MzMgOC4xNzkwNiAxMi43NDU2IDguMzE5NTRMNy40OTk5NiAxMS40MTkyTDIuMjU0MzIgOC4zMTk1NFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRhID0gW1wiY29sb3JcIl07XG52YXIgU3Rhckljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNGEpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk02Ljk3OTQyIDEuMjUxNzFMNi45NTg1IDEuMzAxOTlMNS41ODY2MiA0LjYwMDM5QzUuNTQzNDIgNC43MDQyNiA1LjQ0NTczIDQuNzc1MjMgNS4zMzM2IDQuNzg0MjJMMS43NzI3IDUuMDY5N0wxLjcxODQxIDUuMDc0MDVMMS4zODY4NyA1LjEwMDYzTDEuMDg2MDggNS4xMjQ3NUMwLjgyMDA4NSA1LjE0NjA3IDAuNzEyMjI4IDUuNDc4MDIgMC45MTQ4ODkgNS42NTE2MkwxLjE0NDA2IDUuODQ3OTNMMS4zOTY2NiA2LjA2NDMxTDEuNDM4MDIgNi4wOTk3NEw0LjE1MTA1IDguNDIzNzRDNC4yMzY0OCA4LjQ5NjkyIDQuMjczOCA4LjYxMTc2IDQuMjQ3NjkgOC43MjExOEwzLjQxODgyIDEyLjE5NkwzLjQwNjE4IDEyLjI0OUwzLjMyOTAxIDEyLjU3MjVMMy4yNTg5OSAxMi44NjZDMy4xOTcwOCAxMy4xMjU2IDMuNDc5NDUgMTMuMzMwOCAzLjcwNzE4IDEzLjE5MTdMMy45NjQ3IDEzLjAzNDRMNC4yNDg1NCAxMi44NjFMNC4yOTUwMiAxMi44MzI2TDcuMzQzNjUgMTAuOTcwNUM3LjQzOTY1IDEwLjkxMTkgNy41NjA0IDEwLjkxMTkgNy42NTY0IDEwLjk3MDVMMTAuNzA1IDEyLjgzMjZMMTAuNzUxNSAxMi44NjFMMTEuMDM1NCAxMy4wMzQ0TDExLjI5MjkgMTMuMTkxN0MxMS41MjA2IDEzLjMzMDggMTEuODAzIDEzLjEyNTYgMTEuNzQxMSAxMi44NjZMMTEuNjcxIDEyLjU3MjVMMTEuNTkzOSAxMi4yNDlMMTEuNTgxMiAxMi4xOTZMMTAuNzUyNCA4LjcyMTE4QzEwLjcyNjMgOC42MTE3NiAxMC43NjM2IDguNDk2OTIgMTAuODQ5IDguNDIzNzRMMTMuNTYyIDYuMDk5NzRMMTMuNjAzNCA2LjA2NDMxTDEzLjg1NiA1Ljg0NzkzTDE0LjA4NTIgNS42NTE2MkMxNC4yODc4IDUuNDc4MDIgMTQuMTggNS4xNDYwNyAxMy45MTQgNS4xMjQ3NUwxMy42MTMyIDUuMTAwNjNMMTMuMjgxNiA1LjA3NDA1TDEzLjIyNzQgNS4wNjk3TDkuNjY2NDUgNC43ODQyMkM5LjU1NDMyIDQuNzc1MjMgOS40NTY2MyA0LjcwNDI2IDkuNDEzNDMgNC42MDAzOUw4LjA0MTU1IDEuMzAxOTlMOC4wMjA2NCAxLjI1MTcxTDcuODkyOTEgMC45NDQ2MDlMNy43NzcwMiAwLjY2NTk5MkM3LjY3NDU0IDAuNDE5NjA0IDcuMzI1NTEgMC40MTk2MDQgNy4yMjMwMyAwLjY2NTk5Mkw3LjEwNzE1IDAuOTQ0NjA5TDYuOTc5NDIgMS4yNTE3MVpNNy41MDAwMyAyLjYwMzk3TDYuNTA5OTQgNC45ODQ0MkM2LjMyMjczIDUuNDM0NTMgNS44OTk0NCA1Ljc0MjA3IDUuNDEzNTEgNS43ODEwM0wyLjg0MzYxIDUuOTg3MDVMNC44MDE2IDcuNjY0MjhDNS4xNzE4MyA3Ljk4MTQyIDUuMzMzNTEgOC40NzkwMyA1LjIyMDQgOC45NTMyMUw0LjYyMjIxIDExLjQ2MUw2LjgyMjQgMTAuMTE3MUM3LjIzODQyIDkuODYzMDIgNy43NjE2NCA5Ljg2MzAyIDguMTc3NjYgMTAuMTE3MUwxMC4zNzc4IDExLjQ2MUw5Ljc3OTY1IDguOTUzMjFDOS42NjY1NCA4LjQ3OTAzIDkuODI4MjIgNy45ODE0MiAxMC4xOTg0IDcuNjY0MjhMMTIuMTU2NCA1Ljk4NzA1TDkuNTg2NTQgNS43ODEwM0M5LjEwMDYxIDUuNzQyMDcgOC42NzczMiA1LjQzNDUzIDguNDkwMTEgNC45ODQ0Mkw3LjUwMDAzIDIuNjAzOTdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0YiA9IFtcImNvbG9yXCJdO1xudmFyIFN0YXJGaWxsZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRiKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy4yMjMwMyAwLjY2NTk5MkM3LjMyNTUxIDAuNDE5NjA0IDcuNjc0NTQgMC40MTk2MDQgNy43NzcwMiAwLjY2NTk5Mkw5LjQxMzQzIDQuNjAwMzlDOS40NTY2MyA0LjcwNDI2IDkuNTU0MzIgNC43NzUyMyA5LjY2NjQ1IDQuNzg0MjJMMTMuOTE0IDUuMTI0NzVDMTQuMTggNS4xNDYwNyAxNC4yODc4IDUuNDc4MDIgMTQuMDg1MiA1LjY1MTYyTDEwLjg0OSA4LjQyMzc0QzEwLjc2MzYgOC40OTY5MiAxMC43MjYzIDguNjExNzYgMTAuNzUyNCA4LjcyMTE4TDExLjc0MTEgMTIuODY2QzExLjgwMyAxMy4xMjU2IDExLjUyMDYgMTMuMzMwOCAxMS4yOTI5IDEzLjE5MTdMNy42NTY0IDEwLjk3MDVDNy41NjA0IDEwLjkxMTkgNy40Mzk2NSAxMC45MTE5IDcuMzQzNjUgMTAuOTcwNUwzLjcwNzE4IDEzLjE5MTdDMy40Nzk0NSAxMy4zMzA4IDMuMTk3MDggMTMuMTI1NiAzLjI1ODk5IDEyLjg2Nkw0LjI0NzY5IDguNzIxMThDNC4yNzM4IDguNjExNzYgNC4yMzY0OCA4LjQ5NjkyIDQuMTUxMDUgOC40MjM3NEwwLjkxNDg4OSA1LjY1MTYyQzAuNzEyMjI4IDUuNDc4MDIgMC44MjAwODYgNS4xNDYwNyAxLjA4NjA4IDUuMTI0NzVMNS4zMzM2IDQuNzg0MjJDNS40NDU3MyA0Ljc3NTIzIDUuNTQzNDIgNC43MDQyNiA1LjU4NjYyIDQuNjAwMzlMNy4yMjMwMyAwLjY2NTk5MlpcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0YyA9IFtcImNvbG9yXCJdO1xudmFyIFN0aXRjaGVzTG9nb0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNGMpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjg0OTk4IDcuNDk5OThDMS44NDk5OCA3LjIxMzIxIDEuODcxMzQgNi45MzE0MyAxLjkxMjU2IDYuNjU2MTVMOS41NjM3NCAyLjIzODc1QzkuODYzMTEgMi4zNTYyNyAxMC4xNSAyLjQ5ODYxIDEwLjQyMTkgMi42NjMyMkwzLjc3MDY1IDYuNTAzMzJDMy43MzY2OSA2LjUyMTgzIDMuNzA0ODIgNi41NDQ5IDMuNjc2MDIgNi41NzIzOEMzLjU5MTEgNi42NTMwOCAzLjU0MjQ1IDYuNzYyODYgMy41MzY4MiA2Ljg3NjU4QzMuNTMzNTkgNi45NDE4IDMuNTQ0NTEgNy4wMDgzMSAzLjU3MDg2IDcuMDcxMzdDMy41ODkyNyA3LjExNTcgMy42MTQ5IDcuMTU3NDIgMy42NDc0NCA3LjE5NDU4QzMuNjczMDYgNy4yMjM5NiAzLjcwMiA3LjI0OTQxIDMuNzMzMzcgNy4yNzA2OUw3LjMyNTMzIDkuODM4MTNMMy44NzIzMiAxMS44MzE3QzIuNjM2MDQgMTAuNzk1MyAxLjg0OTk4IDkuMjM5NDQgMS44NDk5OCA3LjQ5OTk4Wk04LjM2ODQzIDEwLjI3NTFDOC4zNzY4MiAxMC4yNzA2IDguMzg1MDkgMTAuMjY1OSA4LjM5MzIyIDEwLjI2MDhMOS44NDA5MSA5LjQyNDk5QzkuODQ3MDYgOS40MjE2MyA5Ljg1MzE0IDkuNDE4MTIgOS44NTkxNSA5LjQxNDQ2TDExLjMxMDEgOC41NzY3N0MxMS4zNjU1IDguNTQ2NDkgMTEuNDE1NCA4LjUwNCAxMS40NTU0IDguNDQ5OTVDMTEuNjAzNCA4LjI1MDMxIDExLjU2MTYgNy45Njg0OCAxMS4zNjIgNy44MjA0Nkw3LjgyNzc5IDUuMjAwMTdMMTEuMjE2MSAzLjI0MzkzQzEyLjQwMTMgNC4yNzk2MyAxMy4xNSA1LjgwMjM3IDEzLjE1IDcuNDk5OThDMTMuMTUgNy44MzU0NiAxMy4xMjA3IDguMTY0MTEgMTMuMDY0NyA4LjQ4MzUzTDUuNTY4NzUgMTIuODExM0M1LjI2MTM4IDEyLjY5OTUgNC45NjY0NiAxMi41NjE4IDQuNjg2NjIgMTIuNDAwOEw4LjM2ODQzIDEwLjI3NTFaTTguMTgxNDkgOS4zNDM4M0w0LjgxNjU5IDYuOTM4NjhMNS41MDkxOCA2LjUzODgxTDguODA2MDQgOC45ODMyNEw4LjE4MTQ5IDkuMzQzODNaTTYuMzU4NzUgNi4wNDgzMkw2Ljk3ODIyIDUuNjkwNjdMMTAuMjc1MSA4LjEzNTA2TDkuNjU1NiA4LjQ5Mjc1TDYuMzU4NzUgNi4wNDgzMlpNOC4zMzE4IDEuOTEwNzhMMi4yNDI2MyA1LjQyNjM2QzMuMDY5NDEgMy4zMzE4OCA1LjExMTY0IDEuODQ5OTggNy40OTk5OCAxLjg0OTk4QzcuNzgyNTggMS44NDk5OCA4LjA2MDMzIDEuODcwNzIgOC4zMzE4IDEuOTEwNzhaTTYuODQ2ODQgMTMuMTEyNkM3LjA2MTE0IDEzLjEzNzMgNy4yNzkwOCAxMy4xNSA3LjQ5OTk4IDEzLjE1QzkuODI0NiAxMy4xNSAxMS44MjEzIDExLjc0NjEgMTIuNjg4NiA5LjczOTlMNi44NDY4NCAxMy4xMTI2Wk03LjQ5OTk4IDAuODQ5OTc2QzMuODI3MjggMC44NDk5NzYgMC44NDk5NzYgMy44MjcyOCAwLjg0OTk3NiA3LjQ5OTk4QzAuODQ5OTc2IDExLjE3MjcgMy44MjcyOCAxNC4xNSA3LjQ5OTk4IDE0LjE1QzExLjE3MjcgMTQuMTUgMTQuMTUgMTEuMTcyNyAxNC4xNSA3LjQ5OTk4QzE0LjE1IDMuODI3MjggMTEuMTcyNyAwLjg0OTk3NiA3LjQ5OTk4IDAuODQ5OTc2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNGQgPSBbXCJjb2xvclwiXTtcbnZhciBTdG9wSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0ZCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIgM0MyIDIuNDQ3NzIgMi40NDc3MiAyIDMgMkgxMkMxMi41NTIzIDIgMTMgMi40NDc3MiAxMyAzVjEyQzEzIDEyLjU1MjMgMTIuNTUyMyAxMyAxMiAxM0gzQzIuNDQ3NzIgMTMgMiAxMi41NTIzIDIgMTJWM1pNMTIgM0gzVjEySDEyVjNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0ZSA9IFtcImNvbG9yXCJdO1xudmFyIFN0b3B3YXRjaEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNGUpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk01LjQ5OTk4IDAuNUM1LjQ5OTk4IDAuMjIzODU4IDUuNzIzODMgMCA1Ljk5OTk4IDBINy40OTk5OEg4Ljk5OTk4QzkuMjc2MTIgMCA5LjQ5OTk4IDAuMjIzODU4IDkuNDk5OTggMC41QzkuNDk5OTggMC43NzYxNDIgOS4yNzYxMiAxIDguOTk5OTggMUg3Ljk5OTk4VjIuMTE5MjJDOS4wOTgzMiAyLjIwNDA5IDEwLjExOSAyLjU2NjIyIDEwLjk5MiAzLjEzNTcyQzExLjAxMTYgMy4xMDg1MSAxMS4wMzM2IDMuMDgyNTIgMTEuMDU4IDMuMDU4MDZMMTEuODU4IDIuMjU4MDZDMTIuMTAyMSAyLjAxMzk4IDEyLjQ5NzggMi4wMTM5OCAxMi43NDE5IDIuMjU4MDZDMTIuOTg2IDIuNTAyMTQgMTIuOTg2IDIuODk3ODYgMTIuNzQxOSAzLjE0MTk0TDExLjk2NyAzLjkxNjgyQzEzLjE1OTUgNS4wNzkyNSAxMy45IDYuNzAzMTQgMTMuOSA4LjQ5OTk4QzEzLjkgMTIuMDM0NiAxMS4wMzQ2IDE0LjkgNy40OTk5OCAxNC45QzMuOTY1MzUgMTQuOSAxLjA5OTk4IDEyLjAzNDYgMS4wOTk5OCA4LjQ5OTk4QzEuMDk5OTggNS4xMzM2MiAzLjY5OTA0IDIuMzc0MyA2Ljk5OTk4IDIuMTE5MjJWMUg1Ljk5OTk4QzUuNzIzODMgMSA1LjQ5OTk4IDAuNzc2MTQyIDUuNDk5OTggMC41Wk0yLjA5OTk4IDguNDk5OThDMi4wOTk5OCA1LjUxNzY0IDQuNTE3NjQgMy4wOTk5OCA3LjQ5OTk4IDMuMDk5OThDMTAuNDgyMyAzLjA5OTk4IDEyLjkgNS41MTc2NCAxMi45IDguNDk5OThDMTIuOSAxMS40ODIzIDEwLjQ4MjMgMTMuOSA3LjQ5OTk4IDEzLjlDNC41MTc2NCAxMy45IDIuMDk5OTggMTEuNDgyMyAyLjA5OTk4IDguNDk5OThaTTcuOTk5OTggNC41QzcuOTk5OTggNC4yMjM4NiA3Ljc3NjEyIDQgNy40OTk5OCA0QzcuMjIzODMgNCA2Ljk5OTk4IDQuMjIzODYgNi45OTk5OCA0LjVWOS41QzYuOTk5OTggOS43NzYxNCA3LjIyMzgzIDEwIDcuNDk5OTggMTBDNy43NzYxMiAxMCA3Ljk5OTk4IDkuNzc2MTQgNy45OTk5OCA5LjVWNC41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNGYgPSBbXCJjb2xvclwiXTtcbnZhciBTdHJldGNoSG9yaXpvbnRhbGx5SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Zik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTE0LjQ5OTkgMC45OTk5OTJDMTQuMjIzNyAwLjk5OTk5MiAxMy45OTk5IDEuMjIzODUgMTMuOTk5OSAxLjQ5OTk5TDEzLjk5OTkgNS45OTk5NUwwLjk5OTk5MiA1Ljk5OTk1TDAuOTk5OTkyIDEuNDk5OTlDMC45OTk5OTIgMS4yMjM4NSAwLjc3NjEzNiAwLjk5OTk5MiAwLjQ5OTk5NiAwLjk5OTk5MkMwLjIyMzg1NiAwLjk5OTk5MiAtOS43ODUwOWUtMDkgMS4yMjM4NSAtMi4xODU1NmUtMDggMS40OTk5OUw0LjA3Mjc5ZS0wNyAxMy40OTk5QzMuOTUyMDhlLTA3IDEzLjc3NiAwLjIyMzg1NSAxMy45OTk5IDAuNDk5OTk2IDEzLjk5OTlDMC43NzYxMzYgMTMuOTk5OSAwLjk5OTk5MiAxMy43NzYgMC45OTk5OTIgMTMuNDk5OUwwLjk5OTk5MiA4Ljk5OTkyTDEzLjk5OTkgOC45OTk5MkwxMy45OTk5IDEzLjQ5OTlDMTMuOTk5OSAxMy43NzYgMTQuMjIzNyAxMy45OTk5IDE0LjQ5OTkgMTMuOTk5OUMxNC43NzYgMTMuOTk5OSAxNC45OTk5IDEzLjc3NiAxNC45OTk5IDEzLjQ5OTlMMTQuOTk5OSAxLjQ5OTk5QzE0Ljk5OTkgMS4yMjM4NSAxNC43NzYgMC45OTk5OTIgMTQuNDk5OSAwLjk5OTk5MlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRnID0gW1wiY29sb3JcIl07XG52YXIgU3RyZXRjaFZlcnRpY2FsbHlJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRnKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC45OTk4NzggMC41QzAuOTk5ODc4IDAuMjIzODU4IDEuMjIzNzQgMCAxLjQ5OTg4IDBIMTMuNDk5OUMxMy43NzYgMCAxMy45OTk5IDAuMjIzODU4IDEzLjk5OTkgMC41QzEzLjk5OTkgMC43NzYxNDIgMTMuNzc2IDEgMTMuNDk5OSAxSDZIMS40OTk4OEMxLjIyMzc0IDEgMC45OTk4NzggMC43NzYxNDIgMC45OTk4NzggMC41Wk05IDE0VjFMNiAxVjE0SDEuNDk5ODhDMS4yMjM3NCAxNCAwLjk5OTg3OCAxNC4yMjM5IDAuOTk5ODc4IDE0LjVDMC45OTk4NzggMTQuNzc2MSAxLjIyMzc0IDE1IDEuNDk5ODggMTVIMTMuNDk5OUMxMy43NzYgMTUgMTMuOTk5OSAxNC43NzYxIDEzLjk5OTkgMTQuNUMxMy45OTk5IDE0LjIyMzkgMTMuNzc2IDE0IDEzLjQ5OTkgMTRIOVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRoID0gW1wiY29sb3JcIl07XG52YXIgU3RyaWtldGhyb3VnaEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNGgpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk01LjAwMDAzIDMuMjVDNS4wMDAwMyAyLjk3Mzg2IDQuNzc2MTcgMi43NSA0LjUwMDAzIDIuNzVDNC4yMjM4OSAyLjc1IDQuMDAwMDMgMi45NzM4NiA0LjAwMDAzIDMuMjVWNy4xMDAwM0gyLjQ5OTk4QzIuMjc5MDYgNy4xMDAwMyAyLjA5OTk4IDcuMjc5MTIgMi4wOTk5OCA3LjUwMDAzQzIuMDk5OTggNy43MjA5NCAyLjI3OTA2IDcuOTAwMDMgMi40OTk5OCA3LjkwMDAzSDQuMDAwMDNWOC41NUM0LjAwMDAzIDEwLjQ4MyA1LjU2NzAzIDEyLjA1IDcuNTAwMDMgMTIuMDVDOS40MzMwMyAxMi4wNSAxMSAxMC40ODMgMTEgOC41NVY3LjkwMDAzSDEyLjVDMTIuNzIwOSA3LjkwMDAzIDEyLjkgNy43MjA5NCAxMi45IDcuNTAwMDNDMTIuOSA3LjI3OTEyIDEyLjcyMDkgNy4xMDAwMyAxMi41IDcuMTAwMDNIMTFWMy4yNUMxMSAyLjk3Mzg2IDEwLjc3NjIgMi43NSAxMC41IDIuNzVDMTAuMjIzOSAyLjc1IDEwIDIuOTczODYgMTAgMy4yNVY3LjEwMDAzSDUuMDAwMDNWMy4yNVpNNS4wMDAwMyA3LjkwMDAzVjguNTVDNS4wMDAwMyA5LjkzMDcxIDYuMTE5MzIgMTEuMDUgNy41MDAwMyAxMS4wNUM4Ljg4MDc0IDExLjA1IDEwIDkuOTMwNzEgMTAgOC41NVY3LjkwMDAzSDUuMDAwMDNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0aSA9IFtcImNvbG9yXCJdO1xudmFyIFN1bkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNGkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjUgMEM3Ljc3NjE0IDAgOCAwLjIyMzg1OCA4IDAuNVYyLjVDOCAyLjc3NjE0IDcuNzc2MTQgMyA3LjUgM0M3LjIyMzg2IDMgNyAyLjc3NjE0IDcgMi41VjAuNUM3IDAuMjIzODU4IDcuMjIzODYgMCA3LjUgMFpNMi4xOTY3IDIuMTk2N0MyLjM5MTk2IDIuMDAxNDQgMi43MDg1NCAyLjAwMTQ0IDIuOTAzODEgMi4xOTY3TDQuMzE4MDIgMy42MTA5MUM0LjUxMzI4IDMuODA2MTcgNC41MTMyOCA0LjEyMjc2IDQuMzE4MDIgNC4zMTgwMkM0LjEyMjc2IDQuNTEzMjggMy44MDYxNyA0LjUxMzI4IDMuNjEwOTEgNC4zMTgwMkwyLjE5NjcgMi45MDM4MUMyLjAwMTQ0IDIuNzA4NTQgMi4wMDE0NCAyLjM5MTk2IDIuMTk2NyAyLjE5NjdaTTAuNSA3QzAuMjIzODU4IDcgMCA3LjIyMzg2IDAgNy41QzAgNy43NzYxNCAwLjIyMzg1OCA4IDAuNSA4SDIuNUMyLjc3NjE0IDggMyA3Ljc3NjE0IDMgNy41QzMgNy4yMjM4NiAyLjc3NjE0IDcgMi41IDdIMC41Wk0yLjE5NjcgMTIuODAzM0MyLjAwMTQ0IDEyLjYwOCAyLjAwMTQ0IDEyLjI5MTUgMi4xOTY3IDEyLjA5NjJMMy42MTA5MSAxMC42ODJDMy44MDYxNyAxMC40ODY3IDQuMTIyNzYgMTAuNDg2NyA0LjMxODAyIDEwLjY4MkM0LjUxMzI4IDEwLjg3NzIgNC41MTMyOCAxMS4xOTM4IDQuMzE4MDIgMTEuMzg5MUwyLjkwMzgxIDEyLjgwMzNDMi43MDg1NCAxMi45OTg2IDIuMzkxOTYgMTIuOTk4NiAyLjE5NjcgMTIuODAzM1pNMTIuNSA3QzEyLjIyMzkgNyAxMiA3LjIyMzg2IDEyIDcuNUMxMiA3Ljc3NjE0IDEyLjIyMzkgOCAxMi41IDhIMTQuNUMxNC43NzYxIDggMTUgNy43NzYxNCAxNSA3LjVDMTUgNy4yMjM4NiAxNC43NzYxIDcgMTQuNSA3SDEyLjVaTTEwLjY4MiA0LjMxODAyQzEwLjQ4NjcgNC4xMjI3NiAxMC40ODY3IDMuODA2MTcgMTAuNjgyIDMuNjEwOTFMMTIuMDk2MiAyLjE5NjdDMTIuMjkxNSAyLjAwMTQ0IDEyLjYwOCAyLjAwMTQ0IDEyLjgwMzMgMi4xOTY3QzEyLjk5ODYgMi4zOTE5NiAxMi45OTg2IDIuNzA4NTQgMTIuODAzMyAyLjkwMzgxTDExLjM4OTEgNC4zMTgwMkMxMS4xOTM4IDQuNTEzMjggMTAuODc3MiA0LjUxMzI4IDEwLjY4MiA0LjMxODAyWk04IDEyLjVDOCAxMi4yMjM5IDcuNzc2MTQgMTIgNy41IDEyQzcuMjIzODYgMTIgNyAxMi4yMjM5IDcgMTIuNVYxNC41QzcgMTQuNzc2MSA3LjIyMzg2IDE1IDcuNSAxNUM3Ljc3NjE0IDE1IDggMTQuNzc2MSA4IDE0LjVWMTIuNVpNMTAuNjgyIDEwLjY4MkMxMC44NzcyIDEwLjQ4NjcgMTEuMTkzOCAxMC40ODY3IDExLjM4OTEgMTAuNjgyTDEyLjgwMzMgMTIuMDk2MkMxMi45OTg2IDEyLjI5MTUgMTIuOTk4NiAxMi42MDggMTIuODAzMyAxMi44MDMzQzEyLjYwOCAxMi45OTg2IDEyLjI5MTUgMTIuOTk4NiAxMi4wOTYyIDEyLjgwMzNMMTAuNjgyIDExLjM4OTFDMTAuNDg2NyAxMS4xOTM4IDEwLjQ4NjcgMTAuODc3MiAxMC42ODIgMTAuNjgyWk01LjUgNy41QzUuNSA2LjM5NTQzIDYuMzk1NDMgNS41IDcuNSA1LjVDOC42MDQ1NyA1LjUgOS41IDYuMzk1NDMgOS41IDcuNUM5LjUgOC42MDQ1NyA4LjYwNDU3IDkuNSA3LjUgOS41QzYuMzk1NDMgOS41IDUuNSA4LjYwNDU3IDUuNSA3LjVaTTcuNSA0LjVDNS44NDMxNSA0LjUgNC41IDUuODQzMTUgNC41IDcuNUM0LjUgOS4xNTY4NSA1Ljg0MzE1IDEwLjUgNy41IDEwLjVDOS4xNTY4NSAxMC41IDEwLjUgOS4xNTY4NSAxMC41IDcuNUMxMC41IDUuODQzMTUgOS4xNTY4NSA0LjUgNy41IDQuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRqID0gW1wiY29sb3JcIl07XG52YXIgU3dpdGNoSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0aik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEwLjUgNEM4LjU2NyA0IDcgNS41NjcgNyA3LjVDNyA5LjQzMyA4LjU2NyAxMSAxMC41IDExQzEyLjQzMyAxMSAxNCA5LjQzMyAxNCA3LjVDMTQgNS41NjcgMTIuNDMzIDQgMTAuNSA0Wk03LjY3MTMzIDExQzYuNjUxODMgMTAuMTc1IDYgOC45MTM2MyA2IDcuNUM2IDYuMDg2MzcgNi42NTE4MyA0LjgyNDk4IDcuNjcxMzMgNEg0LjVDMi41NjcgNCAxIDUuNTY3IDEgNy41QzEgOS40MzMgMi41NjcgMTEgNC41IDExSDcuNjcxMzNaTTAgNy41QzAgNS4wMTQ3MiAyLjAxNDcyIDMgNC41IDNIMTAuNUMxMi45ODUzIDMgMTUgNS4wMTQ3MiAxNSA3LjVDMTUgOS45ODUyOCAxMi45ODUzIDEyIDEwLjUgMTJINC41QzIuMDE0NzIgMTIgMCA5Ljk4NTI4IDAgNy41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNGsgPSBbXCJjb2xvclwiXTtcbnZhciBTeW1ib2xJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRrKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS45MDMyMSA3LjI5Njc3QzEuOTAzMjEgMTAuMzQxIDQuMTEwNDEgMTIuNDE0NyA2LjU4ODkzIDEyLjg0MzlDNi44NzI1NSAxMi44OTMgNy4wNjI2NiAxMy4xNjI3IDcuMDEzNTUgMTMuNDQ2NEM2Ljk2NDQ0IDEzLjczIDYuNjk0NzEgMTMuOTIwMSA2LjQxMTA5IDEzLjg3MUMzLjQ5OTQyIDEzLjM2NjggMC44NjA4NCAxMC45MTI3IDAuODYwODQgNy4yOTY3N0MwLjg2MDgzOSA1Ljc2MDA5IDEuNTU5OTYgNC41NTI0NSAyLjM3NjM5IDMuNjMzNzdDMi45NjEyNCAyLjk3NTY4IDMuNjMwMzQgMi40NDEzNSA0LjE2ODQ2IDIuMDMyMDJMMi41MzIwNSAyLjAzMjAyQzIuMjU1OTEgMi4wMzIwMiAyLjAzMjA1IDEuODA4MTYgMi4wMzIwNSAxLjUzMjAyQzIuMDMyMDUgMS4yNTU4OCAyLjI1NTkxIDEuMDMyMDIgMi41MzIwNSAxLjAzMjAyTDUuNTMyMDUgMS4wMzIwMkM1LjgwODE5IDEuMDMyMDIgNi4wMzIwNSAxLjI1NTg4IDYuMDMyMDUgMS41MzIwMkw2LjAzMjA1IDQuNTMyMDJDNi4wMzIwNSA0LjgwODE2IDUuODA4MTkgNS4wMzIwMiA1LjUzMjA1IDUuMDMyMDJDNS4yNTU5MSA1LjAzMjAyIDUuMDMyMDUgNC44MDgxNiA1LjAzMjA1IDQuNTMyMDJMNS4wMzIwNSAyLjY4NjQ1TDUuMDMwNTQgMi42ODc1OUw1LjAzMDQ1IDIuNjg3NjZMNS4wMzA0NCAyLjY4NzY3TDUuMDMwNDMgMi42ODc2N0M0LjQ1ODk2IDMuMTE4NjggMy43NjA1OSAzLjY0NTM4IDMuMTU1NTQgNC4zMjYyQzIuNDQxMDIgNS4xMzAyMSAxLjkwMzIxIDYuMTAxNTQgMS45MDMyMSA3LjI5Njc3Wk0xMy4wMTA5IDcuNzAzMjFDMTMuMDEwOSA0LjY5MTE1IDEwLjg1MDUgMi42Mjk2IDguNDAzODQgMi4xNzAyOUM4LjEyMDkzIDIuMTE3MTggNy45MzQ2NSAxLjg0NDc5IDcuOTg3NzYgMS41NjE4OEM4LjA0MDg3IDEuMjc4OTggOC4zMTMyNiAxLjA5MjcgOC41OTYxNiAxLjE0NTgxQzExLjQ3MDQgMS42ODU0MSAxNC4wNTMyIDQuMTI2MDUgMTQuMDUzMiA3LjcwMzIxQzE0LjA1MzIgOS4yMzk4OCAxMy4zNTQxIDEwLjQ0NzUgMTIuNTM3NyAxMS4zNjYyQzExLjk1MjggMTIuMDI0MyAxMS4yODM3IDEyLjU1ODYgMTAuNzQ1NiAxMi45NjhMMTIuMzgyMSAxMi45NjhDMTIuNjU4MiAxMi45NjggMTIuODgyMSAxMy4xOTE4IDEyLjg4MjEgMTMuNDY4QzEyLjg4MjEgMTMuNzQ0MSAxMi42NTgyIDEzLjk2OCAxMi4zODIxIDEzLjk2OEw5LjM4MjA1IDEzLjk2OEM5LjEwNTkxIDEzLjk2OCA4Ljg4MjA1IDEzLjc0NDEgOC44ODIwNSAxMy40NjhMOC44ODIwNSAxMC40NjhDOC44ODIwNSAxMC4xOTE4IDkuMTA1OTEgOS45Njc5NiA5LjM4MjA1IDkuOTY3OTZDOS42NTgxOSA5Ljk2Nzk2IDkuODgyMDUgMTAuMTkxOCA5Ljg4MjA1IDEwLjQ2OEw5Ljg4MjA1IDEyLjMxMzVMOS44ODM2MiAxMi4zMTIzQzEwLjQ1NTEgMTEuODgxMyAxMS4xNTM1IDExLjM1NDYgMTEuNzU4NSAxMC42NzM4QzEyLjQ3MzEgOS44Njk3NiAxMy4wMTA5IDguODk4NDQgMTMuMDEwOSA3LjcwMzIxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNGwgPSBbXCJjb2xvclwiXTtcbnZhciBUYWJsZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNGwpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk04IDJIMTIuNUMxMi43NzYxIDIgMTMgMi4yMjM4NiAxMyAyLjVWNUg4VjJaTTcgNVYySDIuNUMyLjIyMzg2IDIgMiAyLjIyMzg2IDIgMi41VjVIN1pNMiA2VjlIN1Y2SDJaTTggNkgxM1Y5SDhWNlpNOCAxMEgxM1YxMi41QzEzIDEyLjc3NjEgMTIuNzc2MSAxMyAxMi41IDEzSDhWMTBaTTIgMTIuNVYxMEg3VjEzSDIuNUMyLjIyMzg2IDEzIDIgMTIuNzc2MSAyIDEyLjVaTTEgMi41QzEgMS42NzE1NyAxLjY3MTU3IDEgMi41IDFIMTIuNUMxMy4zMjg0IDEgMTQgMS42NzE1NyAxNCAyLjVWMTIuNUMxNCAxMy4zMjg0IDEzLjMyODQgMTQgMTIuNSAxNEgyLjVDMS42NzE1NyAxNCAxIDEzLjMyODQgMSAxMi41VjIuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRtID0gW1wiY29sb3JcIl07XG52YXIgVGFyZ2V0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0bSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTAuOTAwMDI0IDcuNTAwMDJDMC45MDAwMjQgMy44NTQ5NSAzLjg1NDk1IDAuOTAwMDI0IDcuNTAwMDIgMC45MDAwMjRDMTEuMTQ1MSAwLjkwMDAyNCAxNC4xIDMuODU0OTUgMTQuMSA3LjUwMDAyQzE0LjEgMTEuMTQ1MSAxMS4xNDUxIDE0LjEgNy41MDAwMiAxNC4xQzMuODU0OTUgMTQuMSAwLjkwMDAyNCAxMS4xNDUxIDAuOTAwMDI0IDcuNTAwMDJaTTcuNTAwMDIgMS44MDAwMkM0LjM1MjAxIDEuODAwMDIgMS44MDAwMiA0LjM1MjAxIDEuODAwMDIgNy41MDAwMkMxLjgwMDAyIDEwLjY0OCA0LjM1MjAxIDEzLjIgNy41MDAwMiAxMy4yQzEwLjY0OCAxMy4yIDEzLjIgMTAuNjQ4IDEzLjIgNy41MDAwMkMxMy4yIDQuMzUyMDEgMTAuNjQ4IDEuODAwMDIgNy41MDAwMiAxLjgwMDAyWk0zLjA3NTA0IDcuNTAwMDJDMy4wNzUwNCA1LjA1NjE3IDUuMDU2MTggMy4wNzUwMiA3LjUwMDA0IDMuMDc1MDJDOS45NDM4OCAzLjA3NTAyIDExLjkyNSA1LjA1NjE3IDExLjkyNSA3LjUwMDAyQzExLjkyNSA5Ljk0Mzg2IDkuOTQzODggMTEuOTI1IDcuNTAwMDQgMTEuOTI1QzUuMDU2MTggMTEuOTI1IDMuMDc1MDQgOS45NDM4NiAzLjA3NTA0IDcuNTAwMDJaTTcuNTAwMDQgMy45MjUwMkM1LjUyNTYyIDMuOTI1MDIgMy45MjUwNCA1LjUyNTYxIDMuOTI1MDQgNy41MDAwMkMzLjkyNTA0IDkuNDc0NDIgNS41MjU2MyAxMS4wNzUgNy41MDAwNCAxMS4wNzVDOS40NzQ0NCAxMS4wNzUgMTEuMDc1IDkuNDc0NDIgMTEuMDc1IDcuNTAwMDJDMTEuMDc1IDUuNTI1NjEgOS40NzQ0NCAzLjkyNTAyIDcuNTAwMDQgMy45MjUwMlpNNy41MDAwNCA1LjI1MDAyQzYuMjU3NCA1LjI1MDAyIDUuMjUwMDQgNi4yNTczOSA1LjI1MDA0IDcuNTAwMDJDNS4yNTAwNCA4Ljc0MjY2IDYuMjU3NCA5Ljc1MDAyIDcuNTAwMDQgOS43NTAwMkM4Ljc0MjY3IDkuNzUwMDIgOS43NTAwNCA4Ljc0MjY2IDkuNzUwMDQgNy41MDAwMkM5Ljc1MDA0IDYuMjU3MzggOC43NDI2NyA1LjI1MDAyIDcuNTAwMDQgNS4yNTAwMlpNNi4wNTAwNCA3LjUwMDAyQzYuMDUwMDQgNi42OTkyMSA2LjY5OTIzIDYuMDUwMDIgNy41MDAwNCA2LjA1MDAyQzguMzAwODQgNi4wNTAwMiA4Ljk1MDA0IDYuNjk5MjEgOC45NTAwNCA3LjUwMDAyQzguOTUwMDQgOC4zMDA4MyA4LjMwMDg0IDguOTUwMDIgNy41MDAwNCA4Ljk1MDAyQzYuNjk5MjMgOC45NTAwMiA2LjA1MDA0IDguMzAwODMgNi4wNTAwNCA3LjUwMDAyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNG4gPSBbXCJjb2xvclwiXTtcbnZhciBUZXh0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0bik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMuOTQ5OTMgMi45NTAwMkwzLjk0OTkzIDQuNDk5OThDMy45NDk5MyA0Ljc0ODUxIDMuNzQ4NDUgNC45NDk5OCAzLjQ5OTkzIDQuOTQ5OThDMy4yNTE0IDQuOTQ5OTggMy4wNDk5MyA0Ljc0ODUxIDMuMDQ5OTMgNC40OTk5OFYyLjUwMDA0QzMuMDQ5OTMgMi40NTI0NiAzLjA1NzMxIDIuNDA2NjEgMy4wNzA5OSAyLjM2MzU3QzMuMTI4NzggMi4xODE3NSAzLjI5ODk3IDIuMDUwMDIgMy40OTk5MyAyLjA1MDAySDExLjQ5OTlDMTEuNjU1MyAyLjA1MDAyIDExLjc5MjIgMi4xMjg3MiAxMS44NzMxIDIuMjQ4NDJDMTEuOTIxNiAyLjMyMDI0IDExLjk0OTkgMi40MDY4MiAxMS45NDk5IDIuNTAwMDJMMTEuOTQ5OSAyLjUwMDA0VjQuNDk5OThDMTEuOTQ5OSA0Ljc0ODUxIDExLjc0ODUgNC45NDk5OCAxMS40OTk5IDQuOTQ5OThDMTEuMjUxNCA0Ljk0OTk4IDExLjA0OTkgNC43NDg1MSAxMS4wNDk5IDQuNDk5OThWMi45NTAwMkg4LjA0OTkzVjEyLjA1SDkuMjU0MjhDOS41MDI4MSAxMi4wNSA5LjcwNDI4IDEyLjI1MTUgOS43MDQyOCAxMi41QzkuNzA0MjggMTIuNzQ4NiA5LjUwMjgxIDEyLjk1IDkuMjU0MjggMTIuOTVINS43NTQyOEM1LjUwNTc1IDEyLjk1IDUuMzA0MjggMTIuNzQ4NiA1LjMwNDI4IDEyLjVDNS4zMDQyOCAxMi4yNTE1IDUuNTA1NzUgMTIuMDUgNS43NTQyOCAxMi4wNUg2Ljk0OTkzVjIuOTUwMDJIMy45NDk5M1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRvID0gW1wiY29sb3JcIl07XG52YXIgVGV4dEFsaWduQm90dG9tSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0byk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMuODk5NDkgNS41MDAwMkMzLjg5OTQ5IDUuMjc5MTEgMy43MjA0IDUuMTAwMDMgMy40OTk0OSA1LjEwMDAzQzMuMjc4NTcgNS4xMDAwMyAzLjA5OTQ5IDUuMjc5MTEgMy4wOTk0OSA1LjUwMDAyTDMuMDk5NDkgMTIuNTM0M0wxLjc4MjMzIDExLjIxNzJDMS42MjYxMiAxMS4wNjEgMS4zNzI4NSAxMS4wNjEgMS4yMTY2NCAxMS4yMTcyQzEuMDYwNDMgMTEuMzczNCAxLjA2MDQzIDExLjYyNjcgMS4yMTY2NCAxMS43ODI5TDMuMjE2NjQgMTMuNzgyOUMzLjI5MTY2IDEzLjg1NzkgMy4zOTM0IDEzLjkgMy40OTk0OSAxMy45QzMuNjA1NTcgMTMuOSAzLjcwNzMyIDEzLjg1NzkgMy43ODIzMyAxMy43ODI5TDUuNzgyMzMgMTEuNzgyOUM1LjkzODU0IDExLjYyNjcgNS45Mzg1NCAxMS4zNzM0IDUuNzgyMzMgMTEuMjE3MkM1LjYyNjEyIDExLjA2MSA1LjM3Mjg1IDExLjA2MSA1LjIxNjY0IDExLjIxNzJMMy44OTk0OSAxMi41MzQzTDMuODk5NDkgNS41MDAwMlpNOC40OTk5OCAxM0M4LjIyMzgzIDEzIDcuOTk5OTggMTIuNzc2MiA3Ljk5OTk4IDEyLjVDNy45OTk5OCAxMi4yMjM5IDguMjIzODMgMTIgOC40OTk5OCAxMkgxNC41QzE0Ljc3NjEgMTIgMTUgMTIuMjIzOSAxNSAxMi41QzE1IDEyLjc3NjIgMTQuNzc2MSAxMyAxNC41IDEzSDguNDk5OThaTTguNDk5OTggMTBDOC4yMjM4MyAxMCA3Ljk5OTk4IDkuNzc2MTcgNy45OTk5OCA5LjUwMDAyQzcuOTk5OTggOS4yMjM4OCA4LjIyMzgzIDkuMDAwMDIgOC40OTk5OCA5LjAwMDAySDE0LjVDMTQuNzc2MSA5LjAwMDAyIDE1IDkuMjIzODggMTUgOS41MDAwMkMxNSA5Ljc3NjE3IDE0Ljc3NjEgMTAgMTQuNSAxMEg4LjQ5OTk4Wk03Ljk5OTk4IDYuNTAwMDJDNy45OTk5OCA2Ljc3NjE3IDguMjIzODMgNy4wMDAwMiA4LjQ5OTk4IDcuMDAwMDJIMTQuNUMxNC43NzYxIDcuMDAwMDIgMTUgNi43NzYxNyAxNSA2LjUwMDAyQzE1IDYuMjIzODggMTQuNzc2MSA2LjAwMDAyIDE0LjUgNi4wMDAwMkg4LjQ5OTk4QzguMjIzODMgNi4wMDAwMiA3Ljk5OTk4IDYuMjIzODggNy45OTk5OCA2LjUwMDAyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNHAgPSBbXCJjb2xvclwiXTtcbnZhciBUZXh0QWxpZ25DZW50ZXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRwKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMiA0LjVDMiA0LjIyMzg2IDIuMjIzODYgNCAyLjUgNEgxMi41QzEyLjc3NjEgNCAxMyA0LjIyMzg2IDEzIDQuNUMxMyA0Ljc3NjE0IDEyLjc3NjEgNSAxMi41IDVIMi41QzIuMjIzODYgNSAyIDQuNzc2MTQgMiA0LjVaTTQgNy41QzQgNy4yMjM4NiA0LjIyMzg2IDcgNC41IDdIMTAuNUMxMC43NzYxIDcgMTEgNy4yMjM4NiAxMSA3LjVDMTEgNy43NzYxNCAxMC43NzYxIDggMTAuNSA4SDQuNUM0LjIyMzg2IDggNCA3Ljc3NjE0IDQgNy41Wk0zIDEwLjVDMyAxMC4yMjM5IDMuMjIzODYgMTAgMy41IDEwSDExLjVDMTEuNzc2MSAxMCAxMiAxMC4yMjM5IDEyIDEwLjVDMTIgMTAuNzc2MSAxMS43NzYxIDExIDExLjUgMTFIMy41QzMuMjIzODYgMTEgMyAxMC43NzYxIDMgMTAuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRxID0gW1wiY29sb3JcIl07XG52YXIgVGV4dEFsaWduSnVzdGlmeUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNHEpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0yLjUgNEMyLjIyMzg2IDQgMiA0LjIyMzg2IDIgNC41QzIgNC43NzYxNCAyLjIyMzg2IDUgMi41IDVIMTIuNUMxMi43NzYxIDUgMTMgNC43NzYxNCAxMyA0LjVDMTMgNC4yMjM4NiAxMi43NzYxIDQgMTIuNSA0SDIuNVpNMiA3LjVDMiA3LjIyMzg2IDIuMjIzODYgNyAyLjUgN0gxMi41QzEyLjc3NjEgNyAxMyA3LjIyMzg2IDEzIDcuNUMxMyA3Ljc3NjE0IDEyLjc3NjEgOCAxMi41IDhIMi41QzIuMjIzODYgOCAyIDcuNzc2MTQgMiA3LjVaTTIgMTAuNUMyIDEwLjIyMzkgMi4yMjM4NiAxMCAyLjUgMTBIMTIuNUMxMi43NzYxIDEwIDEzIDEwLjIyMzkgMTMgMTAuNUMxMyAxMC43NzYxIDEyLjc3NjEgMTEgMTIuNSAxMUgyLjVDMi4yMjM4NiAxMSAyIDEwLjc3NjEgMiAxMC41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNHIgPSBbXCJjb2xvclwiXTtcbnZhciBUZXh0QWxpZ25MZWZ0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0cik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIgNC41QzIgNC4yMjM4NiAyLjIyMzg2IDQgMi41IDRIMTIuNUMxMi43NzYxIDQgMTMgNC4yMjM4NiAxMyA0LjVDMTMgNC43NzYxNCAxMi43NzYxIDUgMTIuNSA1SDIuNUMyLjIyMzg2IDUgMiA0Ljc3NjE0IDIgNC41Wk0yIDcuNUMyIDcuMjIzODYgMi4yMjM4NiA3IDIuNSA3SDcuNUM3Ljc3NjE0IDcgOCA3LjIyMzg2IDggNy41QzggNy43NzYxNCA3Ljc3NjE0IDggNy41IDhIMi41QzIuMjIzODYgOCAyIDcuNzc2MTQgMiA3LjVaTTIgMTAuNUMyIDEwLjIyMzkgMi4yMjM4NiAxMCAyLjUgMTBIMTAuNUMxMC43NzYxIDEwIDExIDEwLjIyMzkgMTEgMTAuNUMxMSAxMC43NzYxIDEwLjc3NjEgMTEgMTAuNSAxMUgyLjVDMi4yMjM4NiAxMSAyIDEwLjc3NjEgMiAxMC41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNHMgPSBbXCJjb2xvclwiXTtcbnZhciBUZXh0QWxpZ25NaWRkbGVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRzKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy40OTk0OSAxNC45QzMuNzIwNCAxNC45IDMuODk5NDkgMTQuNzIwOSAzLjg5OTQ5IDE0LjVMMy44OTk0OSAxMC40NjU3TDUuMjE2NjQgMTEuNzgyOUM1LjM3Mjg1IDExLjkzOTEgNS42MjYxMiAxMS45MzkxIDUuNzgyMzMgMTEuNzgyOUM1LjkzODU0IDExLjYyNjcgNS45Mzg1NCAxMS4zNzM0IDUuNzgyMzMgMTEuMjE3MkwzLjc4MjMzIDkuMjE3MThDMy43MDczMiA5LjE0MjE3IDMuNjA1NTcgOS4xMDAwMiAzLjQ5OTQ5IDkuMTAwMDJDMy4zOTM0IDkuMTAwMDIgMy4yOTE2NiA5LjE0MjE3IDMuMjE2NjQgOS4yMTcxOEwxLjIxNjY0IDExLjIxNzJDMS4wNjA0MyAxMS4zNzM0IDEuMDYwNDMgMTEuNjI2NyAxLjIxNjY0IDExLjc4MjlDMS4zNzI4NSAxMS45MzkxIDEuNjI2MTIgMTEuOTM5MSAxLjc4MjMzIDExLjc4MjlMMy4wOTk0OSAxMC40NjU3TDMuMDk5NDkgMTQuNUMzLjA5OTQ5IDE0LjcyMDkgMy4yNzg1NyAxNC45IDMuNDk5NDkgMTQuOVpNNy45OTk5OCAxMC41QzcuOTk5OTggMTAuNzc2MiA4LjIyMzgzIDExIDguNDk5OTggMTFIMTQuNUMxNC43NzYxIDExIDE1IDEwLjc3NjIgMTUgMTAuNUMxNSAxMC4yMjM5IDE0Ljc3NjEgMTAgMTQuNSAxMEg4LjQ5OTk4QzguMjIzODMgMTAgNy45OTk5OCAxMC4yMjM5IDcuOTk5OTggMTAuNVpNNy45OTk5OCA3LjUwMDAyQzcuOTk5OTggNy43NzYxNyA4LjIyMzgzIDguMDAwMDIgOC40OTk5OCA4LjAwMDAySDE0LjVDMTQuNzc2MSA4LjAwMDAyIDE1IDcuNzc2MTcgMTUgNy41MDAwMkMxNSA3LjIyMzg4IDE0Ljc3NjEgNy4wMDAwMiAxNC41IDcuMDAwMDJIOC40OTk5OEM4LjIyMzgzIDcuMDAwMDIgNy45OTk5OCA3LjIyMzg4IDcuOTk5OTggNy41MDAwMlpNOC40OTk5OCA1LjAwMDAyQzguMjIzODMgNS4wMDAwMiA3Ljk5OTk4IDQuNzc2MTcgNy45OTk5OCA0LjUwMDAyQzcuOTk5OTggNC4yMjM4OCA4LjIyMzgzIDQuMDAwMDIgOC40OTk5OCA0LjAwMDAySDE0LjVDMTQuNzc2MSA0LjAwMDAyIDE1IDQuMjIzODggMTUgNC41MDAwMkMxNSA0Ljc3NjE3IDE0Ljc3NjEgNS4wMDAwMiAxNC41IDUuMDAwMDJIOC40OTk5OFpNMy44OTk0OSAwLjUwMDAyNUMzLjg5OTQ5IDAuMjc5MTExIDMuNzIwNCAwLjEwMDAyNSAzLjQ5OTQ5IDAuMTAwMDI1QzMuMjc4NTcgMC4xMDAwMjUgMy4wOTk0OSAwLjI3OTExMSAzLjA5OTQ5IDAuNTAwMDI1TDMuMDk5NDkgNC41MzQzNEwxLjc4MjMzIDMuMjE3MThDMS42MjYxMiAzLjA2MDk3IDEuMzcyODUgMy4wNjA5NyAxLjIxNjY0IDMuMjE3MThDMS4wNjA0MyAzLjM3MzM5IDEuMDYwNDMgMy42MjY2NiAxLjIxNjY0IDMuNzgyODdMMy4yMTY2NCA1Ljc4Mjg3QzMuMjkxNjYgNS44NTc4OCAzLjM5MzQgNS45MDAwMiAzLjQ5OTQ5IDUuOTAwMDJDMy42MDU1NyA1LjkwMDAyIDMuNzA3MzIgNS44NTc4OCAzLjc4MjMzIDUuNzgyODdMNS43ODIzMyAzLjc4Mjg3QzUuOTM4NTQgMy42MjY2NiA1LjkzODU0IDMuMzczMzkgNS43ODIzMyAzLjIxNzE4QzUuNjI2MTIgMy4wNjA5NyA1LjM3Mjg1IDMuMDYwOTcgNS4yMTY2NCAzLjIxNzE4TDMuODk5NDkgNC41MzQzNEwzLjg5OTQ5IDAuNTAwMDI1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNHQgPSBbXCJjb2xvclwiXTtcbnZhciBUZXh0QWxpZ25SaWdodEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNHQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0yIDQuNUMyIDQuMjIzODYgMi4yMjM4NiA0IDIuNSA0SDEyLjVDMTIuNzc2MSA0IDEzIDQuMjIzODYgMTMgNC41QzEzIDQuNzc2MTQgMTIuNzc2MSA1IDEyLjUgNUgyLjVDMi4yMjM4NiA1IDIgNC43NzYxNCAyIDQuNVpNNyA3LjVDNyA3LjIyMzg2IDcuMjIzODYgNyA3LjUgN0gxMi41QzEyLjc3NjEgNyAxMyA3LjIyMzg2IDEzIDcuNUMxMyA3Ljc3NjE0IDEyLjc3NjEgOCAxMi41IDhINy41QzcuMjIzODYgOCA3IDcuNzc2MTQgNyA3LjVaTTQgMTAuNUM0IDEwLjIyMzkgNC4yMjM4NiAxMCA0LjUgMTBIMTIuNUMxMi43NzYxIDEwIDEzIDEwLjIyMzkgMTMgMTAuNUMxMyAxMC43NzYxIDEyLjc3NjEgMTEgMTIuNSAxMUg0LjVDNC4yMjM4NiAxMSA0IDEwLjc3NjEgNCAxMC41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNHUgPSBbXCJjb2xvclwiXTtcbnZhciBUZXh0QWxpZ25Ub3BJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDR1KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy44OTk0OSA5LjQ5OTk4QzMuODk5NDkgOS43MjA4OSAzLjcyMDQgOS44OTk5NyAzLjQ5OTQ5IDkuODk5OTdDMy4yNzg1NyA5Ljg5OTk3IDMuMDk5NDkgOS43MjA4OSAzLjA5OTQ5IDkuNDk5OThMMy4wOTk0OSAyLjQ2NTY2TDEuNzgyMzMgMy43ODI4MkMxLjYyNjEyIDMuOTM5MDMgMS4zNzI4NSAzLjkzOTAzIDEuMjE2NjQgMy43ODI4MkMxLjA2MDQzIDMuNjI2NjEgMS4wNjA0MyAzLjM3MzM0IDEuMjE2NjQgMy4yMTcxM0wzLjIxNjY0IDEuMjE3MTNDMy4yOTE2NiAxLjE0MjEyIDMuMzkzNCAxLjA5OTk4IDMuNDk5NDkgMS4wOTk5OEMzLjYwNTU3IDEuMDk5OTggMy43MDczMiAxLjE0MjEyIDMuNzgyMzMgMS4yMTcxM0w1Ljc4MjMzIDMuMjE3MTNDNS45Mzg1NCAzLjM3MzM0IDUuOTM4NTQgMy42MjY2MSA1Ljc4MjMzIDMuNzgyODJDNS42MjYxMiAzLjkzOTAzIDUuMzcyODUgMy45MzkwMyA1LjIxNjY0IDMuNzgyODJMMy44OTk0OSAyLjQ2NTY2TDMuODk5NDkgOS40OTk5OFpNOC40OTk5OCAxLjk5OTk4QzguMjIzODMgMS45OTk5OCA3Ljk5OTk4IDIuMjIzODMgNy45OTk5OCAyLjQ5OTk4QzcuOTk5OTggMi43NzYxMiA4LjIyMzgzIDIuOTk5OTggOC40OTk5OCAyLjk5OTk4SDE0LjVDMTQuNzc2MSAyLjk5OTk4IDE1IDIuNzc2MTIgMTUgMi40OTk5OEMxNSAyLjIyMzgzIDE0Ljc3NjEgMS45OTk5OCAxNC41IDEuOTk5OThIOC40OTk5OFpNOC40OTk5OCA0Ljk5OTk4QzguMjIzODMgNC45OTk5OCA3Ljk5OTk4IDUuMjIzODMgNy45OTk5OCA1LjQ5OTk4QzcuOTk5OTggNS43NzYxMiA4LjIyMzgzIDUuOTk5OTggOC40OTk5OCA1Ljk5OTk4SDE0LjVDMTQuNzc2MSA1Ljk5OTk4IDE1IDUuNzc2MTIgMTUgNS40OTk5OEMxNSA1LjIyMzgzIDE0Ljc3NjEgNC45OTk5OCAxNC41IDQuOTk5OThIOC40OTk5OFpNNy45OTk5OCA4LjQ5OTk4QzcuOTk5OTggOC4yMjM4MyA4LjIyMzgzIDcuOTk5OTggOC40OTk5OCA3Ljk5OTk4SDE0LjVDMTQuNzc2MSA3Ljk5OTk4IDE1IDguMjIzODMgMTUgOC40OTk5OEMxNSA4Ljc3NjEyIDE0Ljc3NjEgOC45OTk5OCAxNC41IDguOTk5OThIOC40OTk5OEM4LjIyMzgzIDguOTk5OTggNy45OTk5OCA4Ljc3NjEyIDcuOTk5OTggOC40OTk5OFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDR2ID0gW1wiY29sb3JcIl07XG52YXIgVGV4dE5vbmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDR2KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTMuMzUzNiAyLjM1MzU1QzEzLjU0ODggMi4xNTgyOSAxMy41NDg4IDEuODQxNzEgMTMuMzUzNiAxLjY0NjQ1QzEzLjE1ODMgMS40NTExOCAxMi44NDE3IDEuNDUxMTggMTIuNjQ2NCAxLjY0NjQ1TDExLjkyOTEgMi4zNjM4M0MxMS45MTU5IDIuMzIyNDYgMTEuODk3IDIuMjgzNjggMTEuODczMiAyLjI0ODQ1QzExLjc5MjMgMi4xMjg3NSAxMS42NTU0IDIuMDUwMDUgMTEuNTAwMSAyLjA1MDA1SDMuNTAwMDVDMy4yOTkwOSAyLjA1MDA1IDMuMTI4OSAyLjE4MTc4IDMuMDcxMTEgMi4zNjM2QzMuMDU3NDMgMi40MDY2NSAzLjA1MDA1IDIuNDUyNDkgMy4wNTAwNSAyLjUwMDA3VjQuNTAwMDFDMy4wNTAwNSA0Ljc0ODU0IDMuMjUxNTIgNC45NTAwMSAzLjUwMDA1IDQuOTUwMDFDMy43NDg1OCA0Ljk1MDAxIDMuOTUwMDUgNC43NDg1NCAzLjk1MDA1IDQuNTAwMDFWMi45NTAwNUg2Ljk1MDA2VjcuMzQyODRMMS42NDY0NSAxMi42NDY0QzEuNDUxMTggMTIuODQxNyAxLjQ1MTE4IDEzLjE1ODMgMS42NDY0NSAxMy4zNTM2QzEuODQxNzEgMTMuNTQ4OCAyLjE1ODI5IDEzLjU0ODggMi4zNTM1NSAxMy4zNTM2TDYuOTUwMDYgOC43NTcwNVYxMi4wNTAxSDUuNzU0NEM1LjUwNTg3IDEyLjA1MDEgNS4zMDQ0IDEyLjI1MTUgNS4zMDQ0IDEyLjUwMDFDNS4zMDQ0IDEyLjc0ODYgNS41MDU4NyAxMi45NTAxIDUuNzU0NCAxMi45NTAxSDkuMjU0NEM5LjUwMjkzIDEyLjk1MDEgOS43MDQ0IDEyLjc0ODYgOS43MDQ0IDEyLjUwMDFDOS43MDQ0IDEyLjI1MTUgOS41MDI5MyAxMi4wNTAxIDkuMjU0NCAxMi4wNTAxSDguMDUwMDZWNy42NTcwNUwxMy4zNTM2IDIuMzUzNTVaTTguMDUwMDYgNi4yNDI4NEwxMS4wNTAxIDMuMjQyODNWMi45NTAwNUg4LjA1MDA2VjYuMjQyODRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0dyA9IFtcImNvbG9yXCJdO1xudmFyIFRoaWNrQXJyb3dEb3duSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0dyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUgMy41QzUgMy4yMjM4NiA1LjIyMzg2IDMgNS41IDNIOS41QzkuNzc2MTQgMyAxMCAzLjIyMzg2IDEwIDMuNVY2SDEyLjVDMTIuNjg3MyA2IDEyLjg1ODkgNi4xMDQ2NyAxMi45NDQ2IDYuMjcxMjFDMTMuMDMwMyA2LjQzNzc0IDEzLjAxNTcgNi42MzgyMSAxMi45MDY5IDYuNzkwNjJMNy45MDY4NyAxMy43OTA2QzcuODEzMDEgMTMuOTIyIDcuNjYxNDggMTQgNy41IDE0QzcuMzM4NTMgMTQgNy4xODY5OSAxMy45MjIgNy4wOTMxNCAxMy43OTA2TDIuMDkzMTQgNi43OTA2MkMxLjk4NDI3IDYuNjM4MjEgMS45Njk3MiA2LjQzNzc0IDIuMDU1NDIgNi4yNzEyMUMyLjE0MTEyIDYuMTA0NjcgMi4zMTI3MSA2IDIuNSA2SDVWMy41Wk02IDRWNi41QzYgNi43NzYxNCA1Ljc3NjE0IDcgNS41IDdIMy40NzE2TDcuNSAxMi42Mzk4TDExLjUyODQgN0g5LjVDOS4yMjM4NiA3IDkgNi43NzYxNCA5IDYuNVY0SDZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0eCA9IFtcImNvbG9yXCJdO1xudmFyIFRoaWNrQXJyb3dMZWZ0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0eCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEgNy41QzEgNy42NjE0OCAxLjA3Nzk4IDcuODEzMDEgMS4yMDkzOCA3LjkwNjg3TDguMjA5MzggMTIuOTA2OUM4LjM2MTc5IDEzLjAxNTcgOC41NjIyNiAxMy4wMzAzIDguNzI4NzkgMTIuOTQ0NkM4Ljg5NTMzIDEyLjg1ODkgOSAxMi42ODczIDkgMTIuNUw5IDEwTDExLjUgMTBDMTEuNzc2MSAxMCAxMiA5Ljc3NjE0IDEyIDkuNUwxMiA1LjVDMTIgNS4yMjM4NiAxMS43NzYxIDUgMTEuNSA1TDkgNUw5IDIuNUM5IDIuMzEyNzEgOC44OTUzMyAyLjE0MTEyIDguNzI4NzkgMi4wNTU0MkM4LjU2MjI2IDEuOTY5NzIgOC4zNjE3OSAxLjk4NDI3IDguMjA5MzggMi4wOTMxM0wxLjIwOTM4IDcuMDkzMTRDMS4wNzc5OCA3LjE4Njk5IDEgNy4zMzg1MyAxIDcuNVpNOCAzLjQ3MTZMOCA1LjVDOCA1Ljc3NjE0IDguMjIzODYgNiA4LjUgNkwxMSA2TDExIDlMOC41IDlDOC4yMjM4NiA5IDggOS4yMjM4NiA4IDkuNUw4IDExLjUyODRMMi4zNjAyMyA3LjVMOCAzLjQ3MTZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0eSA9IFtcImNvbG9yXCJdO1xudmFyIFRoaWNrQXJyb3dSaWdodEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNHkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xNCA3LjVDMTQgNy42NjE0OCAxMy45MjIgNy44MTMwMSAxMy43OTA2IDcuOTA2ODdMNi43OTA2MiAxMi45MDY5QzYuNjM4MjEgMTMuMDE1NyA2LjQzNzc0IDEzLjAzMDMgNi4yNzEyMSAxMi45NDQ2QzYuMTA0NjcgMTIuODU4OSA2IDEyLjY4NzMgNiAxMi41TDYgMTBMMy41IDEwQzMuMjIzODYgMTAgMyA5Ljc3NjE0IDMgOS41TDMgNS41QzMgNS4yMjM4NiAzLjIyMzg2IDUgMy41IDVMNiA1TDYgMi41QzYgMi4zMTI3MSA2LjEwNDY3IDIuMTQxMTIgNi4yNzEyMSAyLjA1NTQyQzYuNDM3NzQgMS45Njk3MiA2LjYzODIxIDEuOTg0MjcgNi43OTA2MiAyLjA5MzEzTDEzLjc5MDYgNy4wOTMxNEMxMy45MjIgNy4xODY5OSAxNCA3LjMzODUzIDE0IDcuNVpNNyAzLjQ3MTZMNyA1LjVDNyA1Ljc3NjE0IDYuNzc2MTQgNiA2LjUgNkw0IDZMNCA5TDYuNSA5QzYuNzc2MTQgOSA3IDkuMjIzODYgNyA5LjVMNyAxMS41Mjg0TDEyLjYzOTggNy41TDcgMy40NzE2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNHogPSBbXCJjb2xvclwiXTtcbnZhciBUaGlja0Fycm93VXBJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDR6KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy41IDFDNy42NjE0OCAxIDcuODEzMDEgMS4wNzc5OCA3LjkwNjg3IDEuMjA5MzhMMTIuOTA2OSA4LjIwOTM4QzEzLjAxNTcgOC4zNjE3OSAxMy4wMzAzIDguNTYyMjYgMTIuOTQ0NiA4LjcyODc5QzEyLjg1ODkgOC44OTUzMyAxMi42ODczIDkgMTIuNSA5SDEwVjExLjVDMTAgMTEuNzc2MSA5Ljc3NjE0IDEyIDkuNSAxMkg1LjVDNS4yMjM4NiAxMiA1IDExLjc3NjEgNSAxMS41VjlIMi41QzIuMzEyNzEgOSAyLjE0MTEyIDguODk1MzMgMi4wNTU0MiA4LjcyODc5QzEuOTY5NzIgOC41NjIyNiAxLjk4NDI3IDguMzYxNzkgMi4wOTMxNCA4LjIwOTM4TDcuMDkzMTQgMS4yMDkzOEM3LjE4Njk5IDEuMDc3OTggNy4zMzg1MyAxIDcuNSAxWk0zLjQ3MTYgOEg1LjVDNS43NzYxNCA4IDYgOC4yMjM4NiA2IDguNVYxMUg5VjguNUM5IDguMjIzODYgOS4yMjM4NiA4IDkuNSA4SDExLjUyODRMNy41IDIuMzYwMjNMMy40NzE2IDhaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0QSA9IFtcImNvbG9yXCJdO1xudmFyIFRpbWVySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0QSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTggMC44NDk5NzZDNy4yMjM4MyAwLjg0OTk3NiA2Ljk5OTk4IDEuMDczODMgNi45OTk5OCAxLjM0OTk4VjMuNTIyMzRDNi45OTk5OCAzLjc5ODQ4IDcuMjIzODMgNC4wMjIzNCA3LjQ5OTk4IDQuMDIyMzRDNy43NzYxMiA0LjAyMjM0IDcuOTk5OTggMy43OTg0OCA3Ljk5OTk4IDMuNTIyMzRWMS44NzE4QzEwLjg4NjIgMi4xMjQ4OCAxMy4xNSA0LjU0ODA2IDEzLjE1IDcuNDk5OThDMTMuMTUgMTAuNjIwNCAxMC42MjA0IDEzLjE1IDcuNDk5OTggMTMuMTVDNC4zNzk1NyAxMy4xNSAxLjg0OTk4IDEwLjYyMDQgMS44NDk5OCA3LjQ5OTk4QzEuODQ5OTggNi4xMDYxMiAyLjM1NDA3IDQuODMxMjggMy4xOTA0OSAzLjg0NTlDMy4zNjkxOSAzLjYzNTM4IDMuMzQzMzkgMy4zMTk4NSAzLjEzMjg2IDMuMTQxMTVDMi45MjIzNCAyLjk2MjQ1IDIuNjA2ODEgMi45ODgyNSAyLjQyODExIDMuMTk4NzdDMS40NDQwNSA0LjM1ODA4IDAuODQ5OTc2IDUuODYwMjkgMC44NDk5NzYgNy40OTk5OEMwLjg0OTk3NiAxMS4xNzI3IDMuODI3MjggMTQuMTUgNy40OTk5OCAxNC4xNUMxMS4xNzI3IDE0LjE1IDE0LjE1IDExLjE3MjcgMTQuMTUgNy40OTk5OEMxNC4xNSAzLjgyNzI4IDExLjE3MjcgMC44NDk5NzYgNy40OTk5OCAwLjg0OTk3NlpNNi43NDA0OSA4LjA4MDcyTDQuMjIzNjMgNC41NzIzN0M0LjE1MjMxIDQuNDcyOTUgNC4xNjM0NiA0LjMzNjUyIDQuMjQ5OTggNC4yNUM0LjMzNjQ5IDQuMTYzNDggNC40NzI5MyA0LjE1MjMzIDQuNTcyMzQgNC4yMjM2NUw4LjA4MDY5IDYuNzQwNTFDOC41NjIyNyA3LjA4NTk5IDguNjE5MDYgNy43ODA5MSA4LjE5OTk4IDguMkM3Ljc4MDg5IDguNjE5MDkgNy4wODU5NyA4LjU2MjI5IDYuNzQwNDkgOC4wODA3MlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRCID0gW1wiY29sb3JcIl07XG52YXIgVG9rZW5zSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Qik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTQuNSAyQzMuMTE5MjkgMiAyIDMuMTE5MjkgMiA0LjVDMiA1Ljg4MDcyIDMuMTE5MjkgNyA0LjUgN0M1Ljg4MDcyIDcgNyA1Ljg4MDcyIDcgNC41QzcgMy4xMTkyOSA1Ljg4MDcyIDIgNC41IDJaTTMgNC41QzMgMy42NzE1NyAzLjY3MTU3IDMgNC41IDNDNS4zMjg0MyAzIDYgMy42NzE1NyA2IDQuNUM2IDUuMzI4NDMgNS4zMjg0MyA2IDQuNSA2QzMuNjcxNTcgNiAzIDUuMzI4NDMgMyA0LjVaTTEwLjUgMkM5LjExOTI5IDIgOCAzLjExOTI5IDggNC41QzggNS44ODA3MiA5LjExOTI5IDcgMTAuNSA3QzExLjg4MDcgNyAxMyA1Ljg4MDcyIDEzIDQuNUMxMyAzLjExOTI5IDExLjg4MDcgMiAxMC41IDJaTTkgNC41QzkgMy42NzE1NyA5LjY3MTU3IDMgMTAuNSAzQzExLjMyODQgMyAxMiAzLjY3MTU3IDEyIDQuNUMxMiA1LjMyODQzIDExLjMyODQgNiAxMC41IDZDOS42NzE1NyA2IDkgNS4zMjg0MyA5IDQuNVpNMiAxMC41QzIgOS4xMTkyOSAzLjExOTI5IDggNC41IDhDNS44ODA3MiA4IDcgOS4xMTkyOSA3IDEwLjVDNyAxMS44ODA3IDUuODgwNzIgMTMgNC41IDEzQzMuMTE5MjkgMTMgMiAxMS44ODA3IDIgMTAuNVpNNC41IDlDMy42NzE1NyA5IDMgOS42NzE1NyAzIDEwLjVDMyAxMS4zMjg0IDMuNjcxNTcgMTIgNC41IDEyQzUuMzI4NDMgMTIgNiAxMS4zMjg0IDYgMTAuNUM2IDkuNjcxNTcgNS4zMjg0MyA5IDQuNSA5Wk0xMC41IDhDOS4xMTkyOSA4IDggOS4xMTkyOSA4IDEwLjVDOCAxMS44ODA3IDkuMTE5MjkgMTMgMTAuNSAxM0MxMS44ODA3IDEzIDEzIDExLjg4MDcgMTMgMTAuNUMxMyA5LjExOTI5IDExLjg4MDcgOCAxMC41IDhaTTkgMTAuNUM5IDkuNjcxNTcgOS42NzE1NyA5IDEwLjUgOUMxMS4zMjg0IDkgMTIgOS42NzE1NyAxMiAxMC41QzEyIDExLjMyODQgMTEuMzI4NCAxMiAxMC41IDEyQzkuNjcxNTcgMTIgOSAxMS4zMjg0IDkgMTAuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRDID0gW1wiY29sb3JcIl07XG52YXIgVHJhY2tOZXh0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Qyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEzLjA1MDIgMi43NDk4OUMxMy4wNTAyIDIuNDQ2MTMgMTIuODA0IDIuMTk5ODkgMTIuNTAwMiAyLjE5OTg5QzEyLjE5NjUgMi4xOTk4OSAxMS45NTAyIDIuNDQ2MTMgMTEuOTUwMiAyLjc0OTg5VjcuMjgyNUMxMS45MDQ2IDcuMTg4MDIgMTEuODI5NSA3LjEwODUxIDExLjczMzQgNy4wNTc3NkwyLjczMzM4IDIuMzA3NzZDMi41Nzg0IDIuMjI1OTYgMi4zOTE5IDIuMjMxMjcgMi4yNDE4MiAyLjMyMTc2QzIuMDkxNzUgMi40MTIyNSAyIDIuNTc0NzEgMiAyLjc0OTk1VjEyLjI1QzIgMTIuNDI1MiAyLjA5MTc1IDEyLjU4NzcgMi4yNDE4MiAxMi42NzgxQzIuMzkxOSAxMi43Njg2IDIuNTc4NCAxMi43NzM5IDIuNzMzMzggMTIuNjkyMUwxMS43MzM0IDcuOTQyMTRDMTEuODI5NSA3Ljg5MTM5IDExLjkwNDYgNy44MTE4OCAxMS45NTAyIDcuNzE3NFYxMi4yNDk5QzExLjk1MDIgMTIuNTUzNiAxMi4xOTY1IDEyLjc5OTkgMTIuNTAwMiAxMi43OTk5QzEyLjgwNCAxMi43OTk5IDEzLjA1MDIgMTIuNTUzNiAxMy4wNTAyIDEyLjI0OTlWMi43NDk4OVpNMyAxMS40MjA3VjMuNTc5MkwxMC40Mjg4IDcuNDk5OTVMMyAxMS40MjA3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNEQgPSBbXCJjb2xvclwiXTtcbnZhciBUcmFja1ByZXZpb3VzSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0RCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEuOTQ5NzYgMi43NDk4OUMxLjk0OTc2IDIuNDQ2MTMgMi4xOTYgMi4xOTk4OSAyLjQ5OTc2IDIuMTk5ODlDMi44MDM1MSAyLjE5OTg5IDMuMDQ5NzYgMi40NDYxMyAzLjA0OTc2IDIuNzQ5ODlWNy4yODI1QzMuMDk1NCA3LjE4ODAyIDMuMTcwNDYgNy4xMDg1MSAzLjI2NjYyIDcuMDU3NzZMMTIuMjY2NiAyLjMwNzc2QzEyLjQyMTYgMi4yMjU5NiAxMi42MDgxIDIuMjMxMjcgMTIuNzU4MiAyLjMyMTc2QzEyLjkwODMgMi40MTIyNSAxMyAyLjU3NDcxIDEzIDIuNzQ5OTVWMTIuMjVDMTMgMTIuNDI1MiAxMi45MDgzIDEyLjU4NzcgMTIuNzU4MiAxMi42NzgxQzEyLjYwODEgMTIuNzY4NiAxMi40MjE2IDEyLjc3MzkgMTIuMjY2NiAxMi42OTIxTDMuMjY2NjIgNy45NDIxNEMzLjE3MDQ2IDcuODkxMzkgMy4wOTU0IDcuODExODggMy4wNDk3NiA3LjcxNzRWMTIuMjQ5OUMzLjA0OTc2IDEyLjU1MzYgMi44MDM1MSAxMi43OTk5IDIuNDk5NzYgMTIuNzk5OUMyLjE5NiAxMi43OTk5IDEuOTQ5NzYgMTIuNTUzNiAxLjk0OTc2IDEyLjI0OTlWMi43NDk4OVpNNC41NzEyMiA3LjQ5OTk1TDEyIDExLjQyMDdWMy41NzkyTDQuNTcxMjIgNy40OTk5NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRFID0gW1wiY29sb3JcIl07XG52YXIgVHJhbnNmb3JtSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0RSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTAuODQ5OTc2IDEuNzQ5OThDMC44NDk5NzYgMS4yNTI5MiAxLjI1MjkyIDAuODQ5OTc2IDEuNzQ5OTggMC44NDk5NzZIMy4yNDk5OEMzLjc0NzAzIDAuODQ5OTc2IDQuMTQ5OTggMS4yNTI5MiA0LjE0OTk4IDEuNzQ5OThWMi4wNDk5OEgxMC44NVYxLjc0OTk4QzEwLjg1IDEuMjUyOTIgMTEuMjUyOSAwLjg0OTk3NiAxMS43NSAwLjg0OTk3NkgxMy4yNUMxMy43NDcgMC44NDk5NzYgMTQuMTUgMS4yNTI5MiAxNC4xNSAxLjc0OTk4VjMuMjQ5OThDMTQuMTUgMy43NDcwMyAxMy43NDcgNC4xNDk5OCAxMy4yNSA0LjE0OTk4SDEyLjk1VjEwLjg1SDEzLjI1QzEzLjc0NyAxMC44NSAxNC4xNSAxMS4yNTI5IDE0LjE1IDExLjc1VjEzLjI1QzE0LjE1IDEzLjc0NyAxMy43NDcgMTQuMTUgMTMuMjUgMTQuMTVIMTEuNzVDMTEuMjUyOSAxNC4xNSAxMC44NSAxMy43NDcgMTAuODUgMTMuMjVWMTIuOTVINC4xNDk5OFYxMy4yNUM0LjE0OTk4IDEzLjc0NyAzLjc0NzAzIDE0LjE1IDMuMjQ5OTggMTQuMTVIMS43NDk5OEMxLjI1MjkyIDE0LjE1IDAuODQ5OTc2IDEzLjc0NyAwLjg0OTk3NiAxMy4yNVYxMS43NUMwLjg0OTk3NiAxMS4yNTI5IDEuMjUyOTIgMTAuODUgMS43NDk5OCAxMC44NUgyLjA0OTk4VjQuMTQ5OThIMS43NDk5OEMxLjI1MjkyIDQuMTQ5OTggMC44NDk5NzYgMy43NDcwMyAwLjg0OTk3NiAzLjI0OTk4VjEuNzQ5OThaTTIuOTQ5OTggNC4xNDk5OFYxMC44NUgzLjI0OTk4QzMuNzQ3MDMgMTAuODUgNC4xNDk5OCAxMS4yNTI5IDQuMTQ5OTggMTEuNzVWMTIuMDVIMTAuODVWMTEuNzVDMTAuODUgMTEuMjUyOSAxMS4yNTI5IDEwLjg1IDExLjc1IDEwLjg1SDEyLjA1VjQuMTQ5OThIMTEuNzVDMTEuMjUyOSA0LjE0OTk4IDEwLjg1IDMuNzQ3MDMgMTAuODUgMy4yNDk5OFYyLjk0OTk4SDQuMTQ5OThWMy4yNDk5OEM0LjE0OTk4IDMuNzQ3MDMgMy43NDcwMyA0LjE0OTk4IDMuMjQ5OTggNC4xNDk5OEgyLjk0OTk4Wk0yLjM0OTk4IDEuNzQ5OThIMS43NDk5OFYyLjM0OTk4VjIuNjQ5OThWMy4yNDk5OEgyLjM0OTk4SDIuNjQ5OThIMy4yNDk5OFYyLjY0OTk4VjIuMzQ5OThWMS43NDk5OEgyLjY0OTk4SDIuMzQ5OThaTTUuMDk5OTggNS45OTk5OEM1LjA5OTk4IDUuNTAyOTIgNS41MDI5MiA1LjA5OTk4IDUuOTk5OTggNS4wOTk5OEg2Ljk5OTk4QzcuNDk3MDMgNS4wOTk5OCA3Ljg5OTk4IDUuNTAyOTIgNy44OTk5OCA1Ljk5OTk4VjYuOTk5OThDNy44OTk5OCA3LjAzNTkxIDcuODk3ODcgNy4wNzEzNCA3Ljg5Mzc4IDcuMTA2MThDNy45Mjg2MSA3LjEwMjA4IDcuOTY0MDUgNy4wOTk5OCA3Ljk5OTk4IDcuMDk5OThIOC45OTk5OEM5LjQ5NzAzIDcuMDk5OTggOS44OTk5OCA3LjUwMjkyIDkuODk5OTggNy45OTk5OFY4Ljk5OTk4QzkuODk5OTggOS40OTcwMyA5LjQ5NzAzIDkuODk5OTggOC45OTk5OCA5Ljg5OTk4SDcuOTk5OThDNy41MDI5MiA5Ljg5OTk4IDcuMDk5OTggOS40OTcwMyA3LjA5OTk4IDguOTk5OThWNy45OTk5OEM3LjA5OTk4IDcuOTY0MDUgNy4xMDIwOCA3LjkyODYxIDcuMTA2MTggNy44OTM3OEM3LjA3MTM0IDcuODk3ODcgNy4wMzU5MSA3Ljg5OTk4IDYuOTk5OTggNy44OTk5OEg1Ljk5OTk4QzUuNTAyOTIgNy44OTk5OCA1LjA5OTk4IDcuNDk3MDMgNS4wOTk5OCA2Ljk5OTk4VjUuOTk5OThaTTYuMDk5OTggNS45OTk5OEg1Ljk5OTk4VjYuMDk5OThWNi44OTk5OFY2Ljk5OTk4SDYuMDk5OThINi44OTk5OEg2Ljk5OTk4VjYuODk5OThWNi4wOTk5OFY1Ljk5OTk4SDYuODk5OThINi4wOTk5OFpNNy45OTk5OCA3Ljk5OTk4SDguMDk5OThIOC44OTk5OEg4Ljk5OTk4VjguMDk5OThWOC44OTk5OFY4Ljk5OTk4SDguODk5OThIOC4wOTk5OEg3Ljk5OTk4VjguODk5OThWOC4wOTk5OFY3Ljk5OTk4Wk0yLjY0OTk4IDExLjc1SDIuMzQ5OThIMS43NDk5OFYxMi4zNVYxMi42NVYxMy4yNUgyLjM0OTk4SDIuNjQ5OThIMy4yNDk5OFYxMi42NVYxMi4zNVYxMS43NUgyLjY0OTk4Wk0xMS43NSAxLjc0OTk4SDEyLjM1SDEyLjY1SDEzLjI1VjIuMzQ5OThWMi42NDk5OFYzLjI0OTk4SDEyLjY1SDEyLjM1SDExLjc1VjIuNjQ5OThWMi4zNDk5OFYxLjc0OTk4Wk0xMi42NSAxMS43NUgxMi4zNUgxMS43NVYxMi4zNVYxMi42NVYxMy4yNUgxMi4zNUgxMi42NUgxMy4yNVYxMi42NVYxMi4zNVYxMS43NUgxMi42NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRGID0gW1wiY29sb3JcIl07XG52YXIgVHJhbnNwYXJlbmN5R3JpZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNEYpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4yNVwiLFxuICAgIGQ6IFwiTTAgMEgzVjNIMFYwWk02IDNIM1Y2SDBWOUgzVjEySDBWMTVIM1YxMkg2VjE1SDlWMTJIMTJWMTVIMTVWMTJIMTJWOUgxNVY2SDEyVjNIMTVWMEgxMlYzSDlWMEg2VjNaTTYgNlYzSDlWNkg2Wk02IDlIM1Y2SDZWOVpNOSA5VjZIMTJWOUg5Wk05IDlINlYxMkg5VjlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0RyA9IFtcImNvbG9yXCJdO1xudmFyIFRyYXNoSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Ryk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUuNSAxQzUuMjIzODYgMSA1IDEuMjIzODYgNSAxLjVDNSAxLjc3NjE0IDUuMjIzODYgMiA1LjUgMkg5LjVDOS43NzYxNCAyIDEwIDEuNzc2MTQgMTAgMS41QzEwIDEuMjIzODYgOS43NzYxNCAxIDkuNSAxSDUuNVpNMyAzLjVDMyAzLjIyMzg2IDMuMjIzODYgMyAzLjUgM0g1SDEwSDExLjVDMTEuNzc2MSAzIDEyIDMuMjIzODYgMTIgMy41QzEyIDMuNzc2MTQgMTEuNzc2MSA0IDExLjUgNEgxMVYxMkMxMSAxMi41NTIzIDEwLjU1MjMgMTMgMTAgMTNINUM0LjQ0NzcyIDEzIDQgMTIuNTUyMyA0IDEyVjRMMy41IDRDMy4yMjM4NiA0IDMgMy43NzYxNCAzIDMuNVpNNSA0SDEwVjEySDVWNFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRIID0gW1wiY29sb3JcIl07XG52YXIgVHJpYW5nbGVEb3duSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0SCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTQgNkgxMUw3LjUgMTAuNUw0IDZaXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNEkgPSBbXCJjb2xvclwiXTtcbnZhciBUcmlhbmdsZUxlZnRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRJKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOSA0TDkgMTFMNC41IDcuNUw5IDRaXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNEogPSBbXCJjb2xvclwiXTtcbnZhciBUcmlhbmdsZVJpZ2h0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Sik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTYgMTFMNiA0TDEwLjUgNy41TDYgMTFaXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNEsgPSBbXCJjb2xvclwiXTtcbnZhciBUcmlhbmdsZVVwSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Syk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTQgOUgxMUw3LjUgNC41TDQgOVpcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0TCA9IFtcImNvbG9yXCJdO1xudmFyIFR3aXR0ZXJMb2dvSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0TCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuMjMzMzYgNC42OTYyOUM3LjIzMzM2IDIuOTY4ODQgOC42MzMzNSAxLjU2ODU3IDEwLjM2IDEuNTY4NTdDMTEuMzczNiAxLjU2ODU3IDEyLjE4MyAyLjA0ODA0IDEyLjcyNTQgMi43NDM4NUMxMy4zMDc5IDIuNjI0NjcgMTMuODU1NyAyLjQwOTEzIDE0LjM1MTMgMi4xMTUwOEMxNC4xNTU5IDIuNzI1OTggMTMuNzQyNCAzLjIzOTYgMTMuMjAzMyAzLjU2NDYzQzEzLjIwMzggMy41NjU2OCAxMy4yMDQyIDMuNTY2NzQgMTMuMjA0NyAzLjU2Nzc5QzEzLjczMzQgMy41MDM2MSAxNC4yMzY0IDMuMzYzMDIgMTQuNzA0OCAzLjE1NTQ2TDE0LjcwMzcgMy4xNTcxNUMxNC4zNjY3IDMuNjYxODMgMTMuOTQzMSA0LjEwNzM2IDEzLjQ1NjEgNC40NzAzNEMxMy40ODIzIDQuNjQ2NzIgMTMuNDk1NiA0LjgyNDI3IDEzLjQ5NTYgNS4wMDA3OUMxMy40OTU2IDguNjg3MSAxMC42ODczIDEyLjk3NDYgNS41MjEyMiAxMi45NzQ2QzMuOTM5MDYgMTIuOTc0NiAyLjQ2NTQ0IDEyLjUxMSAxLjIyNTA1IDExLjcxNTJDMC45OTI2MzIgMTEuNTY2MSAwLjkyNTEwOCAxMS4yNTY4IDEuMDc0MjMgMTEuMDI0NEMxLjA4NzQgMTEuMDAzOCAxLjEwMTgzIDEwLjk4NDYgMS4xMTczNCAxMC45NjY2QzEuMjA1ODIgMTAuODIwMiAxLjM3NDM4IDEwLjczMDkgMS41NTU0IDEwLjc1MjJDMi40NzA2NiAxMC44NjAxIDMuMzg1NjggMTAuNzQ4NSA0LjE5MjE5IDEwLjM5NjJDMy4zOTIyNiAxMC4wNDM0IDIuNzcxMjkgOS4zNTk3NSAyLjUwMjA0IDguNTE5NzRDMi40NTM1OSA4LjM2ODYgMi40ODgzNSA4LjIwMzExIDIuNTkzNTEgOC4wODQyMkMyLjU5NzE2IDguMDgwMSAyLjYwMDg3IDguMDc2MDYgMi42MDQ2NCA4LjA3MjFDMS45NjM5MSA3LjUwODE5IDEuNTU5NzMgNi42ODIwOCAxLjU1OTczIDUuNzYxNDNWNS43Mjc1OUMxLjU1OTczIDUuNTY4MTQgMS42NDQxMSA1LjQyMDU5IDEuNzgxNTUgNS4zMzk3NEMxLjgyNjcxIDUuMzEzMTcgMS44NzUzNyA1LjI5NTExIDEuOTI1MzIgNS4yODU1OEMxLjcwNTQ5IDQuODYxNTQgMS41ODExNiA0LjM3OTg0IDEuNTgxMTYgMy44Njk1OEMxLjU4MTE2IDMuNDAxNjUgMS41ODM4NCAyLjgxMTkyIDEuOTEzMzIgMi4yODA4MUMxLjk4NzE4IDIuMTYxNzUgMi4xMDc1OCAyLjA4OTE1IDIuMjM2NCAyLjA3MTk1QzIuNDI1ODggMi4wMTIzNyAyLjY0MDg3IDIuMDY5NjkgMi43NzQwNiAyLjIzMzAyQzMuODY1MzYgMy41NzEyNiA1LjQ0MDY2IDQuNDk1ODMgNy4yMzM2NiA0LjczOTYxTDcuMjMzMzYgNC42OTYyOVpNNS41MjEyMiAxMS45NzQ2QzQuNzMzODcgMTEuOTc0NiAzLjk3NzgxIDExLjg0MzUgMy4yNzI0OCAxMS42MDIzQzQuMTMwMTIgMTEuNDUzOCA0Ljk1MzA3IDExLjExNTkgNS42NjIxOCAxMC41NjAyQzUuODEyMTEgMTAuNDQyNyA1Ljg3MTgyIDEwLjI0MzUgNS44MTEyNiAxMC4wNjI5QzUuNzUwNyA5Ljg4MjM0IDUuNTgzIDkuNzU5NDMgNS4zOTI1NSA5Ljc1NjA3QzQuNjg5NjggOS43NDM2NiA0LjA2NzEyIDkuMzk3MTYgMy42Nzc5MyA4Ljg2ODQ1QzMuODY4MjggOC44NTMwNiA0LjA1NDI4IDguODIwMzkgNC4yMzQ0NSA4Ljc3MTY3QzQuNDM2MDMgOC43MTcxNiA0LjU3MzYzIDguNTMxMTQgNC41NjY3NCA4LjMyMjQzQzQuNTU5ODUgOC4xMTM3MiA0LjQxMDI5IDcuOTM3MTggNC4yMDU1NSA3Ljg5NjA3QzMuNDI2OTQgNy43Mzk3NyAyLjc5ODgzIDcuMTY3NjQgMi41NjE2OSA2LjQyMTc0QzIuNzYyNTUgNi40NzAyNSAyLjk3MTAyIDYuNDk5MSAzLjE4NDgyIDYuNTA2MUMzLjM4NTYzIDYuNTEyNjcgMy41NjY0NiA2LjM4NTMzIDMuNjI3OTUgNi4xOTQwNUMzLjY4OTQzIDYuMDAyNzcgMy42MTY2NiA1Ljc5MzkxIDMuNDQ5NjMgNS42ODIyNEMyLjg2NTIzIDUuMjkxNTUgMi40ODExNiA0LjYyNDY0IDIuNDgxMTYgMy44Njk1OEMyLjQ4MTE2IDMuNzAyMTMgMi40ODM1MiAzLjU1MjY4IDIuNDkzNTUgMy40MTcxOUMzLjg1MTE1IDQuNzk5MTMgNS43MDg3MyA1LjY4OTMxIDcuNzc1ODggNS43OTMzOEM3LjkzMjI1IDUuODAxMjYgOC4wODMyOCA1LjczNTQzIDguMTgzOTUgNS42MTU1M0M4LjI4NDYzIDUuNDk1NjIgOC4zMjMzMiA1LjMzNTQ4IDguMjg4NTEgNS4xODI4NEM4LjI1MjU1IDUuMDI1MTcgOC4yMzMzNiA0Ljg2Mjg0IDguMjMzMzYgNC42OTYyOUM4LjIzMzM2IDMuNTIwODUgOS4xODU5MSAyLjU2ODU3IDEwLjM2IDIuNTY4NTdDMTEuNTk0MyAyLjU2ODU3IDEyLjQ5NTYgMy43MTIwOCAxMi40OTU2IDUuMDAwNzlDMTIuNDk1NiA4LjI1NzA5IDEwLjAyMDIgMTEuOTc0NiA1LjUyMTIyIDExLjk3NDZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0TSA9IFtcImNvbG9yXCJdO1xudmFyIFVuZGVybGluZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNE0pO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk01LjAwMDAxIDIuNzVDNS4wMDAwMSAyLjQ3Mzg2IDQuNzc2MTUgMi4yNSA0LjUwMDAxIDIuMjVDNC4yMjM4NyAyLjI1IDQuMDAwMDEgMi40NzM4NiA0LjAwMDAxIDIuNzVWOC4wNUM0LjAwMDAxIDkuOTgzIDUuNTY3MDIgMTEuNTUgNy41MDAwMSAxMS41NUM5LjQzMzAxIDExLjU1IDExIDkuOTgzIDExIDguMDVWMi43NUMxMSAyLjQ3Mzg2IDEwLjc3NjIgMi4yNSAxMC41IDIuMjVDMTAuMjIzOSAyLjI1IDEwIDIuNDczODYgMTAgMi43NVY4LjA1QzEwIDkuNDMwNzEgOC44ODA3MiAxMC41NSA3LjUwMDAxIDEwLjU1QzYuMTE5MyAxMC41NSA1LjAwMDAxIDkuNDMwNzEgNS4wMDAwMSA4LjA1VjIuNzVaTTMuNDk5OTggMTMuMTAwMUMzLjI3OTA2IDEzLjEwMDEgMy4wOTk5OCAxMy4yNzkxIDMuMDk5OTggMTMuNTAwMUMzLjA5OTk4IDEzLjcyMSAzLjI3OTA2IDEzLjkwMDEgMy40OTk5OCAxMy45MDAxSDExLjVDMTEuNzIwOSAxMy45MDAxIDExLjkgMTMuNzIxIDExLjkgMTMuNTAwMUMxMS45IDEzLjI3OTEgMTEuNzIwOSAxMy4xMDAxIDExLjUgMTMuMTAwMUgzLjQ5OTk4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNE4gPSBbXCJjb2xvclwiXTtcbnZhciBVcGRhdGVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDROKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS45MDMyMSA3LjI5Njc3QzEuOTAzMjEgMTAuMzQxIDQuMTEwNDEgMTIuNDE0NyA2LjU4ODkzIDEyLjg0MzlDNi44NzI1NSAxMi44OTMgNy4wNjI2NiAxMy4xNjI3IDcuMDEzNTUgMTMuNDQ2NEM2Ljk2NDQ0IDEzLjczIDYuNjk0NzEgMTMuOTIwMSA2LjQxMTA5IDEzLjg3MUMzLjQ5OTQyIDEzLjM2NjggMC44NjA4NCAxMC45MTI3IDAuODYwODQgNy4yOTY3N0MwLjg2MDgzOSA1Ljc2MDA5IDEuNTU5OTYgNC41NTI0NSAyLjM3NjM5IDMuNjMzNzdDMi45NjEyNCAyLjk3NTY4IDMuNjMwMzQgMi40NDEzNSA0LjE2ODQ2IDIuMDMyMDJMMi41MzIwNSAyLjAzMjAyQzIuMjU1OTEgMi4wMzIwMiAyLjAzMjA1IDEuODA4MTYgMi4wMzIwNSAxLjUzMjAyQzIuMDMyMDUgMS4yNTU4OCAyLjI1NTkxIDEuMDMyMDIgMi41MzIwNSAxLjAzMjAyTDUuNTMyMDUgMS4wMzIwMkM1LjgwODE5IDEuMDMyMDIgNi4wMzIwNSAxLjI1NTg4IDYuMDMyMDUgMS41MzIwMkw2LjAzMjA1IDQuNTMyMDJDNi4wMzIwNSA0LjgwODE2IDUuODA4MTkgNS4wMzIwMiA1LjUzMjA1IDUuMDMyMDJDNS4yNTU5MSA1LjAzMjAyIDUuMDMyMDUgNC44MDgxNiA1LjAzMjA1IDQuNTMyMDJMNS4wMzIwNSAyLjY4NjQ1TDUuMDMwNTQgMi42ODc1OUw1LjAzMDQ1IDIuNjg3NjZMNS4wMzA0NCAyLjY4NzY3TDUuMDMwNDMgMi42ODc2N0M0LjQ1ODk2IDMuMTE4NjggMy43NjA1OSAzLjY0NTM4IDMuMTU1NTQgNC4zMjYyQzIuNDQxMDIgNS4xMzAyMSAxLjkwMzIxIDYuMTAxNTQgMS45MDMyMSA3LjI5Njc3Wk0xMy4wMTA5IDcuNzAzMjFDMTMuMDEwOSA0LjY5MTE1IDEwLjg1MDUgMi42Mjk2IDguNDAzODQgMi4xNzAyOUM4LjEyMDkzIDIuMTE3MTggNy45MzQ2NSAxLjg0NDc5IDcuOTg3NzYgMS41NjE4OEM4LjA0MDg3IDEuMjc4OTggOC4zMTMyNiAxLjA5MjcgOC41OTYxNiAxLjE0NTgxQzExLjQ3MDQgMS42ODU0MSAxNC4wNTMyIDQuMTI2MDUgMTQuMDUzMiA3LjcwMzIxQzE0LjA1MzIgOS4yMzk4OCAxMy4zNTQxIDEwLjQ0NzUgMTIuNTM3NyAxMS4zNjYyQzExLjk1MjggMTIuMDI0MyAxMS4yODM3IDEyLjU1ODYgMTAuNzQ1NiAxMi45NjhMMTIuMzgyMSAxMi45NjhDMTIuNjU4MiAxMi45NjggMTIuODgyMSAxMy4xOTE4IDEyLjg4MjEgMTMuNDY4QzEyLjg4MjEgMTMuNzQ0MSAxMi42NTgyIDEzLjk2OCAxMi4zODIxIDEzLjk2OEw5LjM4MjA1IDEzLjk2OEM5LjEwNTkxIDEzLjk2OCA4Ljg4MjA1IDEzLjc0NDEgOC44ODIwNSAxMy40NjhMOC44ODIwNSAxMC40NjhDOC44ODIwNSAxMC4xOTE4IDkuMTA1OTEgOS45Njc5NiA5LjM4MjA1IDkuOTY3OTZDOS42NTgxOSA5Ljk2Nzk2IDkuODgyMDUgMTAuMTkxOCA5Ljg4MjA1IDEwLjQ2OEw5Ljg4MjA1IDEyLjMxMzVMOS44ODM2MiAxMi4zMTIzQzEwLjQ1NTEgMTEuODgxMyAxMS4xNTM1IDExLjM1NDYgMTEuNzU4NSAxMC42NzM4QzEyLjQ3MzEgOS44Njk3NiAxMy4wMTA5IDguODk4NDQgMTMuMDEwOSA3LjcwMzIxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNE8gPSBbXCJjb2xvclwiXTtcbnZhciBVcGxvYWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRPKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy44MTgyNSAxLjE4MTg4QzcuNjQyNTEgMS4wMDYxNSA3LjM1NzU5IDEuMDA2MTUgNy4xODE4NSAxLjE4MTg4TDQuMTgxODUgNC4xODE4OEM0LjAwNjExIDQuMzU3NjIgNC4wMDYxMSA0LjY0MjU0IDQuMTgxODUgNC44MTgyOEM0LjM1NzU5IDQuOTk0MDEgNC42NDI1MSA0Ljk5NDAxIDQuODE4MjUgNC44MTgyOEw3LjA1MDA1IDIuNTg2NDhWOS40OTk5NkM3LjA1MDA1IDkuNzQ4NDkgNy4yNTE1MiA5Ljk0OTk2IDcuNTAwMDUgOS45NDk5NkM3Ljc0ODU4IDkuOTQ5OTYgNy45NTAwNSA5Ljc0ODQ5IDcuOTUwMDUgOS40OTk5NlYyLjU4NjQ4TDEwLjE4MTkgNC44MTgyOEMxMC4zNTc2IDQuOTk0MDEgMTAuNjQyNSA0Ljk5NDAxIDEwLjgxODIgNC44MTgyOEMxMC45OTQgNC42NDI1NCAxMC45OTQgNC4zNTc2MiAxMC44MTgyIDQuMTgxODhMNy44MTgyNSAxLjE4MTg4Wk0yLjUgOS45OTk5N0MyLjc3NjE0IDkuOTk5OTcgMyAxMC4yMjM4IDMgMTAuNVYxMkMzIDEyLjU1MzggMy40NDU2NSAxMyAzLjk5NjM1IDEzSDExLjAwMTJDMTEuNTUyOSAxMyAxMiAxMi41NTI4IDEyIDEyVjEwLjVDMTIgMTAuMjIzOCAxMi4yMjM5IDkuOTk5OTcgMTIuNSA5Ljk5OTk3QzEyLjc3NjEgOS45OTk5NyAxMyAxMC4yMjM4IDEzIDEwLjVWMTJDMTMgMTMuMTA0IDEyLjEwNjIgMTQgMTEuMDAxMiAxNEgzLjk5NjM1QzIuODkwMTkgMTQgMiAxMy4xMDMgMiAxMlYxMC41QzIgMTAuMjIzOCAyLjIyMzg2IDkuOTk5OTcgMi41IDkuOTk5OTdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0UCA9IFtcImNvbG9yXCJdO1xudmFyIFZhbHVlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0UCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTAuODc3MDc1IDcuNDk5ODhDMC44NzcwNzUgMy44NDIxOSAzLjg0MjIyIDAuODc3MDQ1IDcuNDk5OTEgMC44NzcwNDVDMTEuMTU3NiAwLjg3NzA0NSAxNC4xMjI3IDMuODQyMTkgMTQuMTIyNyA3LjQ5OTg4QzE0LjEyMjcgMTEuMTU3NSAxMS4xNTc2IDE0LjEyMjcgNy40OTk5MSAxNC4xMjI3QzMuODQyMjIgMTQuMTIyNyAwLjg3NzA3NSAxMS4xNTc1IDAuODc3MDc1IDcuNDk5ODhaTTcuNDk5OTEgMS44MjcwNEM0LjM2Njg5IDEuODI3MDQgMS44MjcwOCA0LjM2Njg2IDEuODI3MDggNy40OTk4OEMxLjgyNzA4IDEwLjYzMjkgNC4zNjY4OSAxMy4xNzI3IDcuNDk5OTEgMTMuMTcyN0MxMC42MzI5IDEzLjE3MjcgMTMuMTcyNyAxMC42MzI5IDEzLjE3MjcgNy40OTk4OEMxMy4xNzI3IDQuMzY2ODYgMTAuNjMyOSAxLjgyNzA0IDcuNDk5OTEgMS44MjcwNFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRRID0gW1wiY29sb3JcIl07XG52YXIgVmFsdWVOb25lSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0USk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5ODUgMC44NzcwNDVDMy44NDIxNiAwLjg3NzA0NSAwLjg3NzAxNCAzLjg0MjE5IDAuODc3MDE0IDcuNDk5ODhDMC44NzcwMTQgOS4xNDg4IDEuNDc5NjMgMTAuNjU3IDIuNDc2NjUgMTEuODE2MkwxLjY0NjQzIDEyLjY0NjRDMS40NTExNyAxMi44NDE3IDEuNDUxMTcgMTMuMTU4MyAxLjY0NjQzIDEzLjM1MzVDMS44NDE3IDEzLjU0ODggMi4xNTgyOCAxMy41NDg4IDIuMzUzNTQgMTMuMzUzNUwzLjE4Mzc3IDEyLjUyMzNDNC4zNDI5NiAxMy41MjAyIDUuODUxMDQgMTQuMTIyNyA3LjQ5OTg1IDE0LjEyMjdDMTEuMTU3NSAxNC4xMjI3IDE0LjEyMjcgMTEuMTU3NSAxNC4xMjI3IDcuNDk5ODhDMTQuMTIyNyA1Ljg1MTA3IDEzLjUyMDIgNC4zNDI5OSAxMi41MjMzIDMuMTgzOEwxMy4zNTM1IDIuMzUzNTRDMTMuNTQ4OCAyLjE1ODI3IDEzLjU0ODggMS44NDE2OSAxMy4zNTM1IDEuNjQ2NDNDMTMuMTU4MyAxLjQ1MTE3IDEyLjg0MTcgMS40NTExNyAxMi42NDY0IDEuNjQ2NDNMMTEuODE2MiAyLjQ3NjY4QzEwLjY1NyAxLjQ3OTY2IDkuMTQ4NzcgMC44NzcwNDUgNy40OTk4NSAwLjg3NzA0NVpNMTEuMTQyMiAzLjE1MDY2QzEwLjE1NjcgMi4zMjQ0OSA4Ljg4NjM5IDEuODI3MDQgNy40OTk4NSAxLjgyNzA0QzQuMzY2ODMgMS44MjcwNCAxLjgyNzAxIDQuMzY2ODYgMS44MjcwMSA3LjQ5OTg4QzEuODI3MDEgOC44ODY0MiAyLjMyNDQ2IDEwLjE1NjggMy4xNTA2MyAxMS4xNDIyTDExLjE0MjIgMy4xNTA2NlpNMy44NTc3NiAxMS44NDkzQzQuODQzMTcgMTIuNjc1MyA2LjExMzQzIDEzLjE3MjcgNy40OTk4NSAxMy4xNzI3QzEwLjYzMjggMTMuMTcyNyAxMy4xNzI3IDEwLjYzMjkgMTMuMTcyNyA3LjQ5OTg4QzEzLjE3MjcgNi4xMTM0NiAxMi42NzUzIDQuODQzMiAxMS44NDkzIDMuODU3NzlMMy44NTc3NiAxMS44NDkzWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNFIgPSBbXCJjb2xvclwiXTtcbnZhciBWZXJjZWxMb2dvSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Uik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTggMUw2LjkyMzIxIDIuMDAzMDdMMS4xNzQ5OCAxMkwwLjU5OTk3NiAxM0gxLjc1MzVIMTMuMjQ2NEgxNC40TDEzLjgyNSAxMkw4LjA3Njc0IDIuMDAzMDdMNy40OTk5OCAxWk03LjQ5OTk4IDMuMDA2MTNMMi4zMjg1IDEySDEyLjY3MTRMNy40OTk5OCAzLjAwNjEzWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNFMgPSBbXCJjb2xvclwiXTtcbnZhciBWaWRlb0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNFMpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk00Ljc2NDQ3IDMuMTIxOTlDNS42MzE1MSAzLjA0ODU5IDYuNTYwODIgMyA3LjUgM0M4LjQzOTE4IDMgOS4zNjg0OSAzLjA0ODU5IDEwLjIzNTUgMy4xMjE5OUMxMS4yNzk2IDMuMjEwMzcgMTEuOTU1MyAzLjI3MDA4IDEyLjQ3MiAzLjM5MjAzQzEyLjk0MjUgMy41MDMwNCAxMy4yMDQ4IDMuNjQ5NzYgMTMuNDMwNiAzLjg4MDg2QzEzLjQ1NTMgMy45MDYxOCAxMy40OTAyIDMuOTQ0MTQgMTMuNTEzMyAzLjk3MDkyQzEzLjcxMjYgNC4yMDE0OSAxMy44NDM1IDQuNDg4NyAxMy45MTggNS4wMzI4M0MxMy45OTc4IDUuNjE1NiAxNCA2LjM3NjQ0IDE0IDcuNTI0OTNDMTQgOC42NjAyNiAxMy45OTc4IDkuNDEwMTkgMTMuOTE4MSA5Ljk4NTM4QzEzLjg0MzkgMTAuNTIwNiAxMy43MTM3IDEwLjgwNjEgMTMuNTEyNSAxMS4wMzg3QzEzLjQ4OTYgMTEuMDY1MSAxMy40NTQxIDExLjEwMzggMTMuNDI5NiAxMS4xMjg3QzEzLjIwMDkgMTEuMzYyNSAxMi45NDA2IDExLjUwNzYgMTIuNDgxOCAxMS42MTY0QzExLjk3NTIgMTEuNzM2NSAxMS4zMTQzIDExLjc5NDIgMTAuMjg3OCAxMS44Nzk3QzkuNDE5NDggMTEuOTUyMSA4LjQ3NTY2IDEyIDcuNSAxMkM2LjUyNDM0IDEyIDUuNTgwNTIgMTEuOTUyMSA0LjcxMjIgMTEuODc5N0MzLjY4NTcyIDExLjc5NDIgMy4wMjQ3NyAxMS43MzY1IDIuNTE4MTYgMTEuNjE2NEMyLjA1OTM2IDExLjUwNzYgMS43OTkxIDExLjM2MjUgMS41NzAzNyAxMS4xMjg3QzEuNTQ1OTMgMTEuMTAzOCAxLjUxMDM1IDExLjA2NTEgMS40ODc0OCAxMS4wMzg3QzEuMjg2MjggMTAuODA2MSAxLjE1NjEyIDEwLjUyMDYgMS4wODE5MyA5Ljk4NTM4QzEuMDAyMjEgOS40MTAxOSAxIDguNjYwMjYgMSA3LjUyNDkzQzEgNi4zNzY0NCAxLjAwMjE2IDUuNjE1NiAxLjA4MiA1LjAzMjgzQzEuMTU2NTQgNC40ODg3IDEuMjg3NDQgNC4yMDE0OSAxLjQ4NjY2IDMuOTcwOTJDMS41MDk4IDMuOTQ0MTQgMS41NDQ2OCAzLjkwNjE4IDEuNTY5NDIgMy44ODA4NkMxLjc5NTIgMy42NDk3NiAyLjA1NzUyIDMuNTAzMDQgMi41Mjc5NiAzLjM5MjAzQzMuMDQ0NzMgMy4yNzAwOCAzLjcyMDQgMy4yMTAzNyA0Ljc2NDQ3IDMuMTIxOTlaTTAgNy41MjQ5M0MwIDUuMjgyOTYgMCA0LjE2MTk4IDAuNzI5OTg1IDMuMzE3MTNDMC43NjY0NTcgMy4yNzQ5MSAwLjgxNTEzOSAzLjIyMTk0IDAuODU0MTIzIDMuMTgyMDRDMS42MzQzOSAyLjM4MzM5IDIuNjQ5NjMgMi4yOTc0NCA0LjY4MDEyIDIuMTI1NTVDNS41NjkyMyAyLjA1MDI4IDYuNTI3MjQgMiA3LjUgMkM4LjQ3Mjc2IDIgOS40MzA3NyAyLjA1MDI4IDEwLjMxOTkgMi4xMjU1NUMxMi4zNTA0IDIuMjk3NDQgMTMuMzY1NiAyLjM4MzM5IDE0LjE0NTkgMy4xODIwNEMxNC4xODQ5IDMuMjIxOTQgMTQuMjMzNSAzLjI3NDkxIDE0LjI3IDMuMzE3MTNDMTUgNC4xNjE5OCAxNSA1LjI4Mjk2IDE1IDcuNTI0OTNDMTUgOS43NDAxMiAxNSAxMC44NDc3IDE0LjI2ODggMTEuNjkyOUMxNC4yMzI2IDExLjczNDggMTQuMTgzMiAxMS43ODg1IDE0LjE0NDQgMTEuODI4MUMxMy4zNjI5IDEyLjYyNjkgMTIuMzY1NSAxMi43MSAxMC4zNzA5IDEyLjg3NjNDOS40Nzk3MSAxMi45NTA1IDguNTA3ODIgMTMgNy41IDEzQzYuNDkyMTggMTMgNS41MjAyOCAxMi45NTA1IDQuNjI5MTUgMTIuODc2M0MyLjYzNDQ2IDEyLjcxIDEuNjM3MTIgMTIuNjI2OSAwLjg1NTU1OCAxMS44MjgxQzAuODE2ODQ0IDExLjc4ODUgMC43Njc0NDIgMTEuNzM0OCAwLjczMTIyMSAxMS42OTI5QzAgMTAuODQ3NyAwIDkuNzQwMTIgMCA3LjUyNDkzWk01LjI1IDUuMzgyNjRDNS4yNSA1LjIwMjI1IDUuNDM1MjIgNS4wODEyNCA1LjYwMDQxIDUuMTUzNjlMMTAuNDI4IDcuMjcxMDVDMTAuNjI3NCA3LjM1ODUzIDEwLjYyNzQgNy42NDE0NyAxMC40MjggNy43Mjg5NUw1LjYwMDQxIDkuODQ2MzFDNS40MzUyMiA5LjkxODc2IDUuMjUgOS43OTc3NSA1LjI1IDkuNjE3MzZWNS4zODI2NFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRUID0gW1wiY29sb3JcIl07XG52YXIgVmlld0dyaWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRUKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNyAySDEuNUMxLjIyMzg2IDIgMSAyLjIyMzg2IDEgMi41VjdIN1YyWk04IDJWN0gxNFYyLjVDMTQgMi4yMjM4NiAxMy43NzYxIDIgMTMuNSAySDhaTTcgOEgxVjEyLjVDMSAxMi43NzYxIDEuMjIzODYgMTMgMS41IDEzSDdWOFpNOCAxM1Y4SDE0VjEyLjVDMTQgMTIuNzc2MSAxMy43NzYxIDEzIDEzLjUgMTNIOFpNMS41IDFDMC42NzE1NzMgMSAwIDEuNjcxNTcgMCAyLjVWMTIuNUMwIDEzLjMyODQgMC42NzE1NzMgMTQgMS41IDE0SDEzLjVDMTQuMzI4NCAxNCAxNSAxMy4zMjg0IDE1IDEyLjVWMi41QzE1IDEuNjcxNTcgMTQuMzI4NCAxIDEzLjUgMUgxLjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0VSA9IFtcImNvbG9yXCJdO1xudmFyIFZpZXdIb3Jpem9udGFsSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0VSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEuNSAySDEzLjVDMTMuNzc2MSAyIDE0IDIuMjIzODYgMTQgMi41VjdIMVYyLjVDMSAyLjIyMzg2IDEuMjIzODYgMiAxLjUgMlpNMSA4VjEyLjVDMSAxMi43NzYxIDEuMjIzODYgMTMgMS41IDEzSDEzLjVDMTMuNzc2MSAxMyAxNCAxMi43NzYxIDE0IDEyLjVWOEgxWk0wIDIuNUMwIDEuNjcxNTcgMC42NzE1NzMgMSAxLjUgMUgxMy41QzE0LjMyODQgMSAxNSAxLjY3MTU3IDE1IDIuNVYxMi41QzE1IDEzLjMyODQgMTQuMzI4NCAxNCAxMy41IDE0SDEuNUMwLjY3MTU3MyAxNCAwIDEzLjMyODQgMCAxMi41VjIuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRWID0gW1wiY29sb3JcIl07XG52YXIgVmlld05vbmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRWKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTQgMi41ODcxMUwxLjg1MTYzIDEzSDEzLjVDMTMuNzc2MSAxMyAxNCAxMi43NzYxIDE0IDEyLjVWMi41ODcxMVpNMC43NjI4NzkgMTMuODA2N0wwLjgyNTM5NiAxMy44Nzk2TDAuODU0NzE3IDEzLjg1NDVDMS4wNTAxNyAxMy45NDc4IDEuMjY4OTkgMTQgMS41IDE0SDEzLjVDMTQuMzI4NCAxNCAxNSAxMy4zMjg0IDE1IDEyLjVWMi41QzE1IDEuOTM5NDkgMTQuNjkyNiAxLjQ1MDc4IDE0LjIzNzEgMS4xOTMzMUwxNC4xNzQ2IDEuMTIwMzdMMTQuMTQ1MyAxLjE0NTVDMTMuOTQ5OCAxLjA1MjIyIDEzLjczMSAxIDEzLjUgMUgxLjVDMC42NzE1NzMgMSAwIDEuNjcxNTcgMCAyLjVWMTIuNUMwIDEzLjA2MDUgMC4zMDc0MzUgMTMuNTQ5MiAwLjc2Mjg3OSAxMy44MDY3Wk0xIDEyLjQxMjlMMTMuMTQ4NCAySDEuNUMxLjIyMzg2IDIgMSAyLjIyMzg2IDEgMi41VjEyLjQxMjlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0VyA9IFtcImNvbG9yXCJdO1xudmFyIFZpZXdWZXJ0aWNhbEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNFcpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk04IDJIMTMuNUMxMy43NzYxIDIgMTQgMi4yMjM4NiAxNCAyLjVWMTIuNUMxNCAxMi43NzYxIDEzLjc3NjEgMTMgMTMuNSAxM0g4VjJaTTcgMkgxLjVDMS4yMjM4NiAyIDEgMi4yMjM4NiAxIDIuNVYxMi41QzEgMTIuNzc2MSAxLjIyMzg2IDEzIDEuNSAxM0g3VjJaTTAgMi41QzAgMS42NzE1NyAwLjY3MTU3MyAxIDEuNSAxSDEzLjVDMTQuMzI4NCAxIDE1IDEuNjcxNTcgMTUgMi41VjEyLjVDMTUgMTMuMzI4NCAxNC4zMjg0IDE0IDEzLjUgMTRIMS41QzAuNjcxNTczIDE0IDAgMTMuMzI4NCAwIDEyLjVWMi41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNFggPSBbXCJjb2xvclwiXTtcbnZhciBXaWR0aEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNFgpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk00LjgxODEyIDQuNjgxNjFDNC45OTM4NiA0Ljg1NzM0IDQuOTkzODYgNS4xNDIyNyA0LjgxODEyIDUuMzE4TDMuMDg2MzIgNy4wNDk4SDExLjkxMzVMMTAuMTgxNyA1LjMxOEMxMC4wMDYgNS4xNDIyNyAxMC4wMDYgNC44NTczNCAxMC4xODE3IDQuNjgxNjFDMTAuMzU3NSA0LjUwNTg3IDEwLjY0MjQgNC41MDU4NyAxMC44MTgxIDQuNjgxNjFMMTMuMzE4MSA3LjE4MTYxQzEzLjQ5MzkgNy4zNTczNCAxMy40OTM5IDcuNjQyMjcgMTMuMzE4MSA3LjgxOEwxMC44MTgxIDEwLjMxOEMxMC42NDI0IDEwLjQ5MzcgMTAuMzU3NSAxMC40OTM3IDEwLjE4MTcgMTAuMzE4QzEwLjAwNiAxMC4xNDIzIDEwLjAwNiA5Ljg1NzM0IDEwLjE4MTcgOS42ODE2MUwxMS45MTM1IDcuOTQ5OEgzLjA4NjMyTDQuODE4MTIgOS42ODE2MUM0Ljk5Mzg2IDkuODU3MzQgNC45OTM4NiAxMC4xNDIzIDQuODE4MTIgMTAuMzE4QzQuNjQyMzkgMTAuNDkzNyA0LjM1NzQ2IDEwLjQ5MzcgNC4xODE3MyAxMC4zMThMMS42ODE3MyA3LjgxOEMxLjUwNTk5IDcuNjQyMjcgMS41MDU5OSA3LjM1NzM0IDEuNjgxNzMgNy4xODE2MUw0LjE4MTczIDQuNjgxNjFDNC4zNTc0NiA0LjUwNTg3IDQuNjQyMzkgNC41MDU4NyA0LjgxODEyIDQuNjgxNjFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0WSA9IFtcImNvbG9yXCJdO1xudmFyIFpvb21Jbkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNFkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMCA2LjVDMTAgOC40MzMgOC40MzMgMTAgNi41IDEwQzQuNTY3IDEwIDMgOC40MzMgMyA2LjVDMyA0LjU2NyA0LjU2NyAzIDYuNSAzQzguNDMzIDMgMTAgNC41NjcgMTAgNi41Wk05LjMwODg0IDEwLjAxNTlDOC41MzkwMSAxMC42MzE4IDcuNTYyNTEgMTEgNi41IDExQzQuMDE0NzIgMTEgMiA4Ljk4NTI4IDIgNi41QzIgNC4wMTQ3MiA0LjAxNDcyIDIgNi41IDJDOC45ODUyOCAyIDExIDQuMDE0NzIgMTEgNi41QzExIDcuNTYyNTEgMTAuNjMxOCA4LjUzOTAxIDEwLjAxNTkgOS4zMDg4NEwxMi44NTM2IDEyLjE0NjRDMTMuMDQ4OCAxMi4zNDE3IDEzLjA0ODggMTIuNjU4MyAxMi44NTM2IDEyLjg1MzZDMTIuNjU4MyAxMy4wNDg4IDEyLjM0MTcgMTMuMDQ4OCAxMi4xNDY0IDEyLjg1MzZMOS4zMDg4NCAxMC4wMTU5Wk00LjI1IDYuNUM0LjI1IDYuMjIzODYgNC40NzM4NiA2IDQuNzUgNkg2VjQuNzVDNiA0LjQ3Mzg2IDYuMjIzODYgNC4yNSA2LjUgNC4yNUM2Ljc3NjE0IDQuMjUgNyA0LjQ3Mzg2IDcgNC43NVY2SDguMjVDOC41MjYxNCA2IDguNzUgNi4yMjM4NiA4Ljc1IDYuNUM4Ljc1IDYuNzc2MTQgOC41MjYxNCA3IDguMjUgN0g3VjguMjVDNyA4LjUyNjE0IDYuNzc2MTQgOC43NSA2LjUgOC43NUM2LjIyMzg2IDguNzUgNiA4LjUyNjE0IDYgOC4yNVY3SDQuNzVDNC40NzM4NiA3IDQuMjUgNi43NzYxNCA0LjI1IDYuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRaID0gW1wiY29sb3JcIl07XG52YXIgWm9vbU91dEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNFopO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk02LjUgMTBDOC40MzMgMTAgMTAgOC40MzMgMTAgNi41QzEwIDQuNTY3IDguNDMzIDMgNi41IDNDNC41NjcgMyAzIDQuNTY3IDMgNi41QzMgOC40MzMgNC41NjcgMTAgNi41IDEwWk02LjUgMTFDNy41NjI1MSAxMSA4LjUzOTAxIDEwLjYzMTggOS4zMDg4NCAxMC4wMTU5TDEyLjE0NjQgMTIuODUzNkMxMi4zNDE3IDEzLjA0ODggMTIuNjU4MyAxMy4wNDg4IDEyLjg1MzYgMTIuODUzNkMxMy4wNDg4IDEyLjY1ODMgMTMuMDQ4OCAxMi4zNDE3IDEyLjg1MzYgMTIuMTQ2NEwxMC4wMTU5IDkuMzA4ODRDMTAuNjMxOCA4LjUzOTAxIDExIDcuNTYyNTEgMTEgNi41QzExIDQuMDE0NzIgOC45ODUyOCAyIDYuNSAyQzQuMDE0NzIgMiAyIDQuMDE0NzIgMiA2LjVDMiA4Ljk4NTI4IDQuMDE0NzIgMTEgNi41IDExWk00Ljc1IDZDNC40NzM4NiA2IDQuMjUgNi4yMjM4NiA0LjI1IDYuNUM0LjI1IDYuNzc2MTQgNC40NzM4NiA3IDQuNzUgN0g4LjI1QzguNTI2MTQgNyA4Ljc1IDYuNzc2MTQgOC43NSA2LjVDOC43NSA2LjIyMzg2IDguNTI2MTQgNiA4LjI1IDZINC43NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG5leHBvcnQgeyBBY2Nlc3NpYmlsaXR5SWNvbiwgQWN0aXZpdHlMb2dJY29uLCBBbGlnbkJhc2VsaW5lSWNvbiwgQWxpZ25Cb3R0b21JY29uLCBBbGlnbkNlbnRlckhvcml6b250YWxseUljb24sIEFsaWduQ2VudGVyVmVydGljYWxseUljb24sIEFsaWduTGVmdEljb24sIEFsaWduUmlnaHRJY29uLCBBbGlnblRvcEljb24sIEFsbFNpZGVzSWNvbiwgQW5nbGVJY29uLCBBcmNoaXZlSWNvbiwgQXJyb3dCb3R0b21MZWZ0SWNvbiwgQXJyb3dCb3R0b21SaWdodEljb24sIEFycm93RG93bkljb24sIEFycm93TGVmdEljb24sIEFycm93UmlnaHRJY29uLCBBcnJvd1RvcExlZnRJY29uLCBBcnJvd1RvcFJpZ2h0SWNvbiwgQXJyb3dVcEljb24sIEFzcGVjdFJhdGlvSWNvbiwgQXZhdGFySWNvbiwgQmFja3BhY2tJY29uLCBCYWRnZUljb24sIEJhckNoYXJ0SWNvbiwgQmVsbEljb24sIEJsZW5kaW5nTW9kZUljb24sIEJvb2ttYXJrRmlsbGVkSWNvbiwgQm9va21hcmtJY29uLCBCb3JkZXJBbGxJY29uLCBCb3JkZXJCb3R0b21JY29uLCBCb3JkZXJEYXNoZWRJY29uLCBCb3JkZXJEb3R0ZWRJY29uLCBCb3JkZXJMZWZ0SWNvbiwgQm9yZGVyTm9uZUljb24sIEJvcmRlclJpZ2h0SWNvbiwgQm9yZGVyU29saWRJY29uLCBCb3JkZXJTcGxpdEljb24sIEJvcmRlclN0eWxlSWNvbiwgQm9yZGVyVG9wSWNvbiwgQm9yZGVyV2lkdGhJY29uLCBCb3hJY29uLCBCb3hNb2RlbEljb24sIEJ1dHRvbkljb24sIENhbGVuZGFySWNvbiwgQ2FtZXJhSWNvbiwgQ2FyZFN0YWNrSWNvbiwgQ2FyZFN0YWNrTWludXNJY29uLCBDYXJkU3RhY2tQbHVzSWNvbiwgQ2FyZXREb3duSWNvbiwgQ2FyZXRMZWZ0SWNvbiwgQ2FyZXRSaWdodEljb24sIENhcmV0U29ydEljb24sIENhcmV0VXBJY29uLCBDaGF0QnViYmxlSWNvbiwgQ2hlY2tDaXJjbGVkSWNvbiwgQ2hlY2tJY29uLCBDaGVja2JveEljb24sIENoZXZyb25Eb3duSWNvbiwgQ2hldnJvbkxlZnRJY29uLCBDaGV2cm9uUmlnaHRJY29uLCBDaGV2cm9uVXBJY29uLCBDaXJjbGVCYWNrc2xhc2hJY29uLCBDaXJjbGVJY29uLCBDbGlwYm9hcmRDb3B5SWNvbiwgQ2xpcGJvYXJkSWNvbiwgQ2xvY2tJY29uLCBDb2RlSWNvbiwgQ29kZVNhbmRib3hMb2dvSWNvbiwgQ29sb3JXaGVlbEljb24sIENvbHVtblNwYWNpbmdJY29uLCBDb2x1bW5zSWNvbiwgQ29tbWl0SWNvbiwgQ29tcG9uZW50MUljb24sIENvbXBvbmVudDJJY29uLCBDb21wb25lbnRCb29sZWFuSWNvbiwgQ29tcG9uZW50SW5zdGFuY2VJY29uLCBDb21wb25lbnROb25lSWNvbiwgQ29tcG9uZW50UGxhY2Vob2xkZXJJY29uLCBDb250YWluZXJJY29uLCBDb29raWVJY29uLCBDb3B5SWNvbiwgQ29ybmVyQm90dG9tTGVmdEljb24sIENvcm5lckJvdHRvbVJpZ2h0SWNvbiwgQ29ybmVyVG9wTGVmdEljb24sIENvcm5lclRvcFJpZ2h0SWNvbiwgQ29ybmVyc0ljb24sIENvdW50ZG93blRpbWVySWNvbiwgQ291bnRlckNsb2Nrd2lzZUNsb2NrSWNvbiwgQ3JvcEljb24sIENyb3NzMUljb24sIENyb3NzMkljb24sIENyb3NzQ2lyY2xlZEljb24sIENyb3NzaGFpcjFJY29uLCBDcm9zc2hhaXIySWNvbiwgQ3J1bXBsZWRQYXBlckljb24sIEN1YmVJY29uLCBDdXJzb3JBcnJvd0ljb24sIEN1cnNvclRleHRJY29uLCBEYXNoSWNvbiwgRGFzaGJvYXJkSWNvbiwgRGVza3RvcEljb24sIERpbWVuc2lvbnNJY29uLCBEaXNjSWNvbiwgRGlzY29yZExvZ29JY29uLCBEaXZpZGVySG9yaXpvbnRhbEljb24sIERpdmlkZXJWZXJ0aWNhbEljb24sIERvdEZpbGxlZEljb24sIERvdEljb24sIERvdHNIb3Jpem9udGFsSWNvbiwgRG90c1ZlcnRpY2FsSWNvbiwgRG91YmxlQXJyb3dEb3duSWNvbiwgRG91YmxlQXJyb3dMZWZ0SWNvbiwgRG91YmxlQXJyb3dSaWdodEljb24sIERvdWJsZUFycm93VXBJY29uLCBEb3dubG9hZEljb24sIERyYWdIYW5kbGVEb3RzMUljb24sIERyYWdIYW5kbGVEb3RzMkljb24sIERyYWdIYW5kbGVIb3Jpem9udGFsSWNvbiwgRHJhZ0hhbmRsZVZlcnRpY2FsSWNvbiwgRHJhd2luZ1BpbkZpbGxlZEljb24sIERyYXdpbmdQaW5JY29uLCBEcm9wZG93bk1lbnVJY29uLCBFbnRlckZ1bGxTY3JlZW5JY29uLCBFbnRlckljb24sIEVudmVsb3BlQ2xvc2VkSWNvbiwgRW52ZWxvcGVPcGVuSWNvbiwgRXJhc2VySWNvbiwgRXhjbGFtYXRpb25UcmlhbmdsZUljb24sIEV4aXRGdWxsU2NyZWVuSWNvbiwgRXhpdEljb24sIEV4dGVybmFsTGlua0ljb24sIEV5ZUNsb3NlZEljb24sIEV5ZU5vbmVJY29uLCBFeWVPcGVuSWNvbiwgRmFjZUljb24sIEZpZ21hTG9nb0ljb24sIEZpbGVJY29uLCBGaWxlTWludXNJY29uLCBGaWxlUGx1c0ljb24sIEZpbGVUZXh0SWNvbiwgRm9udEJvbGRJY29uLCBGb250RmFtaWx5SWNvbiwgRm9udEl0YWxpY0ljb24sIEZvbnRSb21hbkljb24sIEZvbnRTaXplSWNvbiwgRm9udFN0eWxlSWNvbiwgRnJhbWVJY29uLCBGcmFtZXJMb2dvSWNvbiwgR2Vhckljb24sIEdpdEh1YkxvZ29JY29uLCBHbG9iZUljb24sIEdyaWRJY29uLCBHcm91cEljb24sIEhhbGYxSWNvbiwgSGFsZjJJY29uLCBIYW1idXJnZXJNZW51SWNvbiwgSGFuZEljb24sIEhlYWRpbmdJY29uLCBIZWFydEZpbGxlZEljb24sIEhlYXJ0SWNvbiwgSGVpZ2h0SWNvbiwgSG9iYnlLbmlmZUljb24sIEhvbWVJY29uLCBJY29uSmFyTG9nb0ljb24sIElkQ2FyZEljb24sIEltYWdlSWNvbiwgSW5mb0NpcmNsZWRJY29uLCBJbnB1dEljb24sIEluc3RhZ3JhbUxvZ29JY29uLCBLZXlib2FyZEljb24sIExhcFRpbWVySWNvbiwgTGFwdG9wSWNvbiwgTGF5ZXJzSWNvbiwgTGF5b3V0SWNvbiwgTGV0dGVyQ2FzZUNhcGl0YWxpemVJY29uLCBMZXR0ZXJDYXNlTG93ZXJjYXNlSWNvbiwgTGV0dGVyQ2FzZVRvZ2dsZUljb24sIExldHRlckNhc2VVcHBlcmNhc2VJY29uLCBMZXR0ZXJTcGFjaW5nSWNvbiwgTGlnaHRuaW5nQm9sdEljb24sIExpbmVIZWlnaHRJY29uLCBMaW5rMUljb24sIExpbmsySWNvbiwgTGlua0JyZWFrMUljb24sIExpbmtCcmVhazJJY29uLCBMaW5rTm9uZTFJY29uLCBMaW5rTm9uZTJJY29uLCBMaW5rZWRJbkxvZ29JY29uLCBMaXN0QnVsbGV0SWNvbiwgTG9ja0Nsb3NlZEljb24sIExvY2tPcGVuMUljb24sIExvY2tPcGVuMkljb24sIExvb3BJY29uLCBNYWdpY1dhbmRJY29uLCBNYWduaWZ5aW5nR2xhc3NJY29uLCBNYXJnaW5JY29uLCBNYXNrT2ZmSWNvbiwgTWFza09uSWNvbiwgTWludXNDaXJjbGVkSWNvbiwgTWludXNJY29uLCBNaXhJY29uLCBNaXhlckhvcml6b250YWxJY29uLCBNaXhlclZlcnRpY2FsSWNvbiwgTW9iaWxlSWNvbiwgTW9kdWx6TG9nb0ljb24sIE1vb25JY29uLCBNb3ZlSWNvbiwgTm90aW9uTG9nb0ljb24sIE9wYWNpdHlJY29uLCBPcGVuSW5OZXdXaW5kb3dJY29uLCBPdmVybGluZUljb24sIFBhZGRpbmdJY29uLCBQYXBlclBsYW5lSWNvbiwgUGF1c2VJY29uLCBQZW5jaWwxSWNvbiwgUGVuY2lsMkljb24sIFBlcnNvbkljb24sIFBpZUNoYXJ0SWNvbiwgUGlsY3Jvd0ljb24sIFBpbkJvdHRvbUljb24sIFBpbkxlZnRJY29uLCBQaW5SaWdodEljb24sIFBpblRvcEljb24sIFBsYXlJY29uLCBQbHVzQ2lyY2xlZEljb24sIFBsdXNJY29uLCBRdWVzdGlvbk1hcmtDaXJjbGVkSWNvbiwgUXVlc3Rpb25NYXJrSWNvbiwgUXVvdGVJY29uLCBSYWRpb2J1dHRvbkljb24sIFJlYWRlckljb24sIFJlbG9hZEljb24sIFJlc2V0SWNvbiwgUmVzdW1lSWNvbiwgUm9ja2V0SWNvbiwgUm90YXRlQ291bnRlckNsb2Nrd2lzZUljb24sIFJvd1NwYWNpbmdJY29uLCBSb3dzSWNvbiwgUnVsZXJIb3Jpem9udGFsSWNvbiwgUnVsZXJTcXVhcmVJY29uLCBTY2lzc29yc0ljb24sIFNlY3Rpb25JY29uLCBTZXdpbmdQaW5GaWxsZWRJY29uLCBTZXdpbmdQaW5JY29uLCBTaGFkb3dJY29uLCBTaGFkb3dJbm5lckljb24sIFNoYWRvd05vbmVJY29uLCBTaGFkb3dPdXRlckljb24sIFNoYXJlMUljb24sIFNoYXJlMkljb24sIFNodWZmbGVJY29uLCBTaXplSWNvbiwgU2tldGNoTG9nb0ljb24sIFNsYXNoSWNvbiwgU2xpZGVySWNvbiwgU3BhY2VCZXR3ZWVuSG9yaXpvbnRhbGx5SWNvbiwgU3BhY2VCZXR3ZWVuVmVydGljYWxseUljb24sIFNwYWNlRXZlbmx5SG9yaXpvbnRhbGx5SWNvbiwgU3BhY2VFdmVubHlWZXJ0aWNhbGx5SWNvbiwgU3BlYWtlckxvdWRJY29uLCBTcGVha2VyTW9kZXJhdGVJY29uLCBTcGVha2VyT2ZmSWNvbiwgU3BlYWtlclF1aWV0SWNvbiwgU3F1YXJlSWNvbiwgU3RhY2tJY29uLCBTdGFyRmlsbGVkSWNvbiwgU3Rhckljb24sIFN0aXRjaGVzTG9nb0ljb24sIFN0b3BJY29uLCBTdG9wd2F0Y2hJY29uLCBTdHJldGNoSG9yaXpvbnRhbGx5SWNvbiwgU3RyZXRjaFZlcnRpY2FsbHlJY29uLCBTdHJpa2V0aHJvdWdoSWNvbiwgU3VuSWNvbiwgU3dpdGNoSWNvbiwgU3ltYm9sSWNvbiwgVGFibGVJY29uLCBUYXJnZXRJY29uLCBUZXh0QWxpZ25Cb3R0b21JY29uLCBUZXh0QWxpZ25DZW50ZXJJY29uLCBUZXh0QWxpZ25KdXN0aWZ5SWNvbiwgVGV4dEFsaWduTGVmdEljb24sIFRleHRBbGlnbk1pZGRsZUljb24sIFRleHRBbGlnblJpZ2h0SWNvbiwgVGV4dEFsaWduVG9wSWNvbiwgVGV4dEljb24sIFRleHROb25lSWNvbiwgVGhpY2tBcnJvd0Rvd25JY29uLCBUaGlja0Fycm93TGVmdEljb24sIFRoaWNrQXJyb3dSaWdodEljb24sIFRoaWNrQXJyb3dVcEljb24sIFRpbWVySWNvbiwgVG9rZW5zSWNvbiwgVHJhY2tOZXh0SWNvbiwgVHJhY2tQcmV2aW91c0ljb24sIFRyYW5zZm9ybUljb24sIFRyYW5zcGFyZW5jeUdyaWRJY29uLCBUcmFzaEljb24sIFRyaWFuZ2xlRG93bkljb24sIFRyaWFuZ2xlTGVmdEljb24sIFRyaWFuZ2xlUmlnaHRJY29uLCBUcmlhbmdsZVVwSWNvbiwgVHdpdHRlckxvZ29JY29uLCBVbmRlcmxpbmVJY29uLCBVcGRhdGVJY29uLCBVcGxvYWRJY29uLCBWYWx1ZUljb24sIFZhbHVlTm9uZUljb24sIFZlcmNlbExvZ29JY29uLCBWaWRlb0ljb24sIFZpZXdHcmlkSWNvbiwgVmlld0hvcml6b250YWxJY29uLCBWaWV3Tm9uZUljb24sIFZpZXdWZXJ0aWNhbEljb24sIFdpZHRoSWNvbiwgWm9vbUluSWNvbiwgWm9vbU91dEljb24gfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXJlYWN0LWljb25zLmVzbS5qcy5tYXBcbiJdLCJuYW1lcyI6WyJmb3J3YXJkUmVmIiwiY3JlYXRlRWxlbWVudCIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlIiwic291cmNlIiwiZXhjbHVkZWQiLCJ0YXJnZXQiLCJzb3VyY2VLZXlzIiwiT2JqZWN0Iiwia2V5cyIsImtleSIsImkiLCJsZW5ndGgiLCJpbmRleE9mIiwiX2V4Y2x1ZGVkIiwiQWNjZXNzaWJpbGl0eUljb24iLCJfcmVmIiwiZm9yd2FyZGVkUmVmIiwiX3JlZiRjb2xvciIsImNvbG9yIiwicHJvcHMiLCJhc3NpZ24iLCJ3aWR0aCIsImhlaWdodCIsInZpZXdCb3giLCJmaWxsIiwieG1sbnMiLCJyZWYiLCJkIiwiZmlsbFJ1bGUiLCJjbGlwUnVsZSIsIl9leGNsdWRlZCQxIiwiQWN0aXZpdHlMb2dJY29uIiwiX2V4Y2x1ZGVkJDIiLCJBbGlnbkJhc2VsaW5lSWNvbiIsIl9leGNsdWRlZCQzIiwiQWxpZ25Cb3R0b21JY29uIiwiX2V4Y2x1ZGVkJDQiLCJBbGlnbkNlbnRlckhvcml6b250YWxseUljb24iLCJfZXhjbHVkZWQkNSIsIkFsaWduQ2VudGVyVmVydGljYWxseUljb24iLCJfZXhjbHVkZWQkNiIsIkFsaWduTGVmdEljb24iLCJfZXhjbHVkZWQkNyIsIkFsaWduUmlnaHRJY29uIiwiX2V4Y2x1ZGVkJDgiLCJBbGlnblRvcEljb24iLCJfZXhjbHVkZWQkOSIsIkFsbFNpZGVzSWNvbiIsIl9leGNsdWRlZCRhIiwiQW5nbGVJY29uIiwiX2V4Y2x1ZGVkJGIiLCJBcmNoaXZlSWNvbiIsIl9leGNsdWRlZCRjIiwiQXJyb3dCb3R0b21MZWZ0SWNvbiIsIl9leGNsdWRlZCRkIiwiQXJyb3dCb3R0b21SaWdodEljb24iLCJfZXhjbHVkZWQkZSIsIkFycm93RG93bkljb24iLCJfZXhjbHVkZWQkZiIsIkFycm93TGVmdEljb24iLCJfZXhjbHVkZWQkZyIsIkFycm93UmlnaHRJY29uIiwiX2V4Y2x1ZGVkJGgiLCJBcnJvd1RvcExlZnRJY29uIiwiX2V4Y2x1ZGVkJGkiLCJBcnJvd1RvcFJpZ2h0SWNvbiIsIl9leGNsdWRlZCRqIiwiQXJyb3dVcEljb24iLCJfZXhjbHVkZWQkayIsIkFzcGVjdFJhdGlvSWNvbiIsIl9leGNsdWRlZCRsIiwiQXZhdGFySWNvbiIsIl9leGNsdWRlZCRtIiwiQmFja3BhY2tJY29uIiwiX2V4Y2x1ZGVkJG4iLCJCYWRnZUljb24iLCJfZXhjbHVkZWQkbyIsIkJhckNoYXJ0SWNvbiIsIl9leGNsdWRlZCRwIiwiQmVsbEljb24iLCJfZXhjbHVkZWQkcSIsIkJsZW5kaW5nTW9kZUljb24iLCJfZXhjbHVkZWQkciIsIkJvb2ttYXJrSWNvbiIsIl9leGNsdWRlZCRzIiwiQm9va21hcmtGaWxsZWRJY29uIiwiX2V4Y2x1ZGVkJHQiLCJCb3JkZXJBbGxJY29uIiwieCIsInkiLCJyeCIsIl9leGNsdWRlZCR1IiwiQm9yZGVyQm90dG9tSWNvbiIsIl9leGNsdWRlZCR2IiwiQm9yZGVyRGFzaGVkSWNvbiIsIl9leGNsdWRlZCR3IiwiQm9yZGVyRG90dGVkSWNvbiIsIl9leGNsdWRlZCR4IiwiQm9yZGVyTGVmdEljb24iLCJ0cmFuc2Zvcm0iLCJfZXhjbHVkZWQkeSIsIkJvcmRlck5vbmVJY29uIiwiX2V4Y2x1ZGVkJHoiLCJCb3JkZXJSaWdodEljb24iLCJfZXhjbHVkZWQkQSIsIkJvcmRlclNvbGlkSWNvbiIsIl9leGNsdWRlZCRCIiwiQm9yZGVyU3BsaXRJY29uIiwiX2V4Y2x1ZGVkJEMiLCJCb3JkZXJTdHlsZUljb24iLCJfZXhjbHVkZWQkRCIsIkJvcmRlclRvcEljb24iLCJfZXhjbHVkZWQkRSIsIkJvcmRlcldpZHRoSWNvbiIsIl9leGNsdWRlZCRGIiwiQm94SWNvbiIsIl9leGNsdWRlZCRHIiwiQm94TW9kZWxJY29uIiwiX2V4Y2x1ZGVkJEgiLCJCdXR0b25JY29uIiwiX2V4Y2x1ZGVkJEkiLCJDYWxlbmRhckljb24iLCJfZXhjbHVkZWQkSiIsIkNhbWVyYUljb24iLCJfZXhjbHVkZWQkSyIsIkNhcmRTdGFja0ljb24iLCJfZXhjbHVkZWQkTCIsIkNhcmRTdGFja01pbnVzSWNvbiIsIl9leGNsdWRlZCRNIiwiQ2FyZFN0YWNrUGx1c0ljb24iLCJfZXhjbHVkZWQkTiIsIkNhcmV0RG93bkljb24iLCJfZXhjbHVkZWQkTyIsIkNhcmV0TGVmdEljb24iLCJfZXhjbHVkZWQkUCIsIkNhcmV0UmlnaHRJY29uIiwiX2V4Y2x1ZGVkJFEiLCJDYXJldFNvcnRJY29uIiwiX2V4Y2x1ZGVkJFIiLCJDYXJldFVwSWNvbiIsIl9leGNsdWRlZCRTIiwiQ2hhdEJ1YmJsZUljb24iLCJfZXhjbHVkZWQkVCIsIkNoZWNrSWNvbiIsIl9leGNsdWRlZCRVIiwiQ2hlY2tDaXJjbGVkSWNvbiIsIl9leGNsdWRlZCRWIiwiQ2hlY2tib3hJY29uIiwiX2V4Y2x1ZGVkJFciLCJDaGV2cm9uRG93bkljb24iLCJfZXhjbHVkZWQkWCIsIkNoZXZyb25MZWZ0SWNvbiIsIl9leGNsdWRlZCRZIiwiQ2hldnJvblJpZ2h0SWNvbiIsIl9leGNsdWRlZCRaIiwiQ2hldnJvblVwSWNvbiIsIl9leGNsdWRlZCRfIiwiQ2lyY2xlSWNvbiIsIl9leGNsdWRlZCQkIiwiQ2lyY2xlQmFja3NsYXNoSWNvbiIsIl9leGNsdWRlZCQxMCIsIkNsaXBib2FyZEljb24iLCJfZXhjbHVkZWQkMTEiLCJDbGlwYm9hcmRDb3B5SWNvbiIsIl9leGNsdWRlZCQxMiIsIkNsb2NrSWNvbiIsIl9leGNsdWRlZCQxMyIsIkNvZGVJY29uIiwiX2V4Y2x1ZGVkJDE0IiwiQ29kZVNhbmRib3hMb2dvSWNvbiIsIl9leGNsdWRlZCQxNSIsIkNvbG9yV2hlZWxJY29uIiwiX2V4Y2x1ZGVkJDE2IiwiQ29sdW1uU3BhY2luZ0ljb24iLCJfZXhjbHVkZWQkMTciLCJDb2x1bW5zSWNvbiIsIl9leGNsdWRlZCQxOCIsIkNvbW1pdEljb24iLCJfZXhjbHVkZWQkMTkiLCJDb21wb25lbnQxSWNvbiIsIl9leGNsdWRlZCQxYSIsIkNvbXBvbmVudDJJY29uIiwiX2V4Y2x1ZGVkJDFiIiwiQ29tcG9uZW50Qm9vbGVhbkljb24iLCJfZXhjbHVkZWQkMWMiLCJDb21wb25lbnRJbnN0YW5jZUljb24iLCJfZXhjbHVkZWQkMWQiLCJDb21wb25lbnROb25lSWNvbiIsIl9leGNsdWRlZCQxZSIsIkNvbXBvbmVudFBsYWNlaG9sZGVySWNvbiIsIl9leGNsdWRlZCQxZiIsIkNvbnRhaW5lckljb24iLCJfZXhjbHVkZWQkMWciLCJDb29raWVJY29uIiwiX2V4Y2x1ZGVkJDFoIiwiQ29weUljb24iLCJfZXhjbHVkZWQkMWkiLCJDb3JuZXJCb3R0b21MZWZ0SWNvbiIsIl9leGNsdWRlZCQxaiIsIkNvcm5lckJvdHRvbVJpZ2h0SWNvbiIsIl9leGNsdWRlZCQxayIsIkNvcm5lclRvcExlZnRJY29uIiwiX2V4Y2x1ZGVkJDFsIiwiQ29ybmVyVG9wUmlnaHRJY29uIiwiX2V4Y2x1ZGVkJDFtIiwiQ29ybmVyc0ljb24iLCJfZXhjbHVkZWQkMW4iLCJDb3VudGRvd25UaW1lckljb24iLCJfZXhjbHVkZWQkMW8iLCJDb3VudGVyQ2xvY2t3aXNlQ2xvY2tJY29uIiwiX2V4Y2x1ZGVkJDFwIiwiQ3JvcEljb24iLCJfZXhjbHVkZWQkMXEiLCJDcm9zczFJY29uIiwiX2V4Y2x1ZGVkJDFyIiwiQ3Jvc3MySWNvbiIsIl9leGNsdWRlZCQxcyIsIkNyb3NzQ2lyY2xlZEljb24iLCJfZXhjbHVkZWQkMXQiLCJDcm9zc2hhaXIxSWNvbiIsIl9leGNsdWRlZCQxdSIsIkNyb3NzaGFpcjJJY29uIiwiX2V4Y2x1ZGVkJDF2IiwiQ3J1bXBsZWRQYXBlckljb24iLCJfZXhjbHVkZWQkMXciLCJDdWJlSWNvbiIsIl9leGNsdWRlZCQxeCIsIkN1cnNvckFycm93SWNvbiIsIl9leGNsdWRlZCQxeSIsIkN1cnNvclRleHRJY29uIiwiX2V4Y2x1ZGVkJDF6IiwiRGFzaEljb24iLCJfZXhjbHVkZWQkMUEiLCJEYXNoYm9hcmRJY29uIiwiX2V4Y2x1ZGVkJDFCIiwiRGVza3RvcEljb24iLCJfZXhjbHVkZWQkMUMiLCJEaW1lbnNpb25zSWNvbiIsIl9leGNsdWRlZCQxRCIsIkRpc2NJY29uIiwiX2V4Y2x1ZGVkJDFFIiwiRGlzY29yZExvZ29JY29uIiwiX2V4Y2x1ZGVkJDFGIiwiRGl2aWRlckhvcml6b250YWxJY29uIiwiX2V4Y2x1ZGVkJDFHIiwiRGl2aWRlclZlcnRpY2FsSWNvbiIsIl9leGNsdWRlZCQxSCIsIkRvdEljb24iLCJfZXhjbHVkZWQkMUkiLCJEb3RGaWxsZWRJY29uIiwiX2V4Y2x1ZGVkJDFKIiwiRG90c0hvcml6b250YWxJY29uIiwiX2V4Y2x1ZGVkJDFLIiwiRG90c1ZlcnRpY2FsSWNvbiIsIl9leGNsdWRlZCQxTCIsIkRvdWJsZUFycm93RG93bkljb24iLCJfZXhjbHVkZWQkMU0iLCJEb3VibGVBcnJvd0xlZnRJY29uIiwiX2V4Y2x1ZGVkJDFOIiwiRG91YmxlQXJyb3dSaWdodEljb24iLCJfZXhjbHVkZWQkMU8iLCJEb3VibGVBcnJvd1VwSWNvbiIsIl9leGNsdWRlZCQxUCIsIkRvd25sb2FkSWNvbiIsIl9leGNsdWRlZCQxUSIsIkRyYWdIYW5kbGVEb3RzMUljb24iLCJjeCIsImN5IiwiciIsIl9leGNsdWRlZCQxUiIsIkRyYWdIYW5kbGVEb3RzMkljb24iLCJfZXhjbHVkZWQkMVMiLCJEcmFnSGFuZGxlSG9yaXpvbnRhbEljb24iLCJfZXhjbHVkZWQkMVQiLCJEcmFnSGFuZGxlVmVydGljYWxJY29uIiwiX2V4Y2x1ZGVkJDFVIiwiRHJhd2luZ1Bpbkljb24iLCJfZXhjbHVkZWQkMVYiLCJEcmF3aW5nUGluRmlsbGVkSWNvbiIsIl9leGNsdWRlZCQxVyIsIkRyb3Bkb3duTWVudUljb24iLCJfZXhjbHVkZWQkMVgiLCJFbnRlckljb24iLCJfZXhjbHVkZWQkMVkiLCJFbnRlckZ1bGxTY3JlZW5JY29uIiwiX2V4Y2x1ZGVkJDFaIiwiRW52ZWxvcGVDbG9zZWRJY29uIiwiX2V4Y2x1ZGVkJDFfIiwiRW52ZWxvcGVPcGVuSWNvbiIsIl9leGNsdWRlZCQxJCIsIkVyYXNlckljb24iLCJfZXhjbHVkZWQkMjAiLCJFeGNsYW1hdGlvblRyaWFuZ2xlSWNvbiIsIl9leGNsdWRlZCQyMSIsIkV4aXRJY29uIiwiX2V4Y2x1ZGVkJDIyIiwiRXhpdEZ1bGxTY3JlZW5JY29uIiwiX2V4Y2x1ZGVkJDIzIiwiRXh0ZXJuYWxMaW5rSWNvbiIsIl9leGNsdWRlZCQyNCIsIkV5ZUNsb3NlZEljb24iLCJfZXhjbHVkZWQkMjUiLCJFeWVOb25lSWNvbiIsIl9leGNsdWRlZCQyNiIsIkV5ZU9wZW5JY29uIiwiX2V4Y2x1ZGVkJDI3IiwiRmFjZUljb24iLCJfZXhjbHVkZWQkMjgiLCJGaWdtYUxvZ29JY29uIiwiX2V4Y2x1ZGVkJDI5IiwiRmlsZUljb24iLCJfZXhjbHVkZWQkMmEiLCJGaWxlTWludXNJY29uIiwiX2V4Y2x1ZGVkJDJiIiwiRmlsZVBsdXNJY29uIiwiX2V4Y2x1ZGVkJDJjIiwiRmlsZVRleHRJY29uIiwiX2V4Y2x1ZGVkJDJkIiwiRm9udEJvbGRJY29uIiwiX2V4Y2x1ZGVkJDJlIiwiRm9udEZhbWlseUljb24iLCJfZXhjbHVkZWQkMmYiLCJGb250SXRhbGljSWNvbiIsIl9leGNsdWRlZCQyZyIsIkZvbnRSb21hbkljb24iLCJfZXhjbHVkZWQkMmgiLCJGb250U2l6ZUljb24iLCJfZXhjbHVkZWQkMmkiLCJGb250U3R5bGVJY29uIiwiX2V4Y2x1ZGVkJDJqIiwiRnJhbWVJY29uIiwiX2V4Y2x1ZGVkJDJrIiwiRnJhbWVyTG9nb0ljb24iLCJfZXhjbHVkZWQkMmwiLCJHZWFySWNvbiIsIl9leGNsdWRlZCQybSIsIkdpdEh1YkxvZ29JY29uIiwiX2V4Y2x1ZGVkJDJuIiwiR2xvYmVJY29uIiwiX2V4Y2x1ZGVkJDJvIiwiR3JpZEljb24iLCJfZXhjbHVkZWQkMnAiLCJHcm91cEljb24iLCJfZXhjbHVkZWQkMnEiLCJIYWxmMUljb24iLCJfZXhjbHVkZWQkMnIiLCJIYWxmMkljb24iLCJfZXhjbHVkZWQkMnMiLCJIYW1idXJnZXJNZW51SWNvbiIsIl9leGNsdWRlZCQydCIsIkhhbmRJY29uIiwiX2V4Y2x1ZGVkJDJ1IiwiSGVhZGluZ0ljb24iLCJfZXhjbHVkZWQkMnYiLCJIZWFydEljb24iLCJfZXhjbHVkZWQkMnciLCJIZWFydEZpbGxlZEljb24iLCJfZXhjbHVkZWQkMngiLCJIZWlnaHRJY29uIiwiX2V4Y2x1ZGVkJDJ5IiwiSG9iYnlLbmlmZUljb24iLCJfZXhjbHVkZWQkMnoiLCJIb21lSWNvbiIsIl9leGNsdWRlZCQyQSIsIkljb25KYXJMb2dvSWNvbiIsIl9leGNsdWRlZCQyQiIsIklkQ2FyZEljb24iLCJfZXhjbHVkZWQkMkMiLCJJbWFnZUljb24iLCJfZXhjbHVkZWQkMkQiLCJJbmZvQ2lyY2xlZEljb24iLCJfZXhjbHVkZWQkMkUiLCJJbnB1dEljb24iLCJfZXhjbHVkZWQkMkYiLCJJbnN0YWdyYW1Mb2dvSWNvbiIsIl9leGNsdWRlZCQyRyIsIktleWJvYXJkSWNvbiIsIl9leGNsdWRlZCQySCIsIkxhcFRpbWVySWNvbiIsIl9leGNsdWRlZCQySSIsIkxhcHRvcEljb24iLCJfZXhjbHVkZWQkMkoiLCJMYXllcnNJY29uIiwiX2V4Y2x1ZGVkJDJLIiwiTGF5b3V0SWNvbiIsIl9leGNsdWRlZCQyTCIsIkxldHRlckNhc2VDYXBpdGFsaXplSWNvbiIsIl9leGNsdWRlZCQyTSIsIkxldHRlckNhc2VMb3dlcmNhc2VJY29uIiwiX2V4Y2x1ZGVkJDJOIiwiTGV0dGVyQ2FzZVRvZ2dsZUljb24iLCJfZXhjbHVkZWQkMk8iLCJMZXR0ZXJDYXNlVXBwZXJjYXNlSWNvbiIsIl9leGNsdWRlZCQyUCIsIkxldHRlclNwYWNpbmdJY29uIiwiX2V4Y2x1ZGVkJDJRIiwiTGlnaHRuaW5nQm9sdEljb24iLCJfZXhjbHVkZWQkMlIiLCJMaW5lSGVpZ2h0SWNvbiIsIl9leGNsdWRlZCQyUyIsIkxpbmsxSWNvbiIsIl9leGNsdWRlZCQyVCIsIkxpbmsySWNvbiIsIl9leGNsdWRlZCQyVSIsIkxpbmtCcmVhazFJY29uIiwiX2V4Y2x1ZGVkJDJWIiwiTGlua0JyZWFrMkljb24iLCJfZXhjbHVkZWQkMlciLCJMaW5rTm9uZTFJY29uIiwiX2V4Y2x1ZGVkJDJYIiwiTGlua05vbmUySWNvbiIsIl9leGNsdWRlZCQyWSIsIkxpbmtlZEluTG9nb0ljb24iLCJfZXhjbHVkZWQkMloiLCJMaXN0QnVsbGV0SWNvbiIsIl9leGNsdWRlZCQyXyIsIkxvY2tDbG9zZWRJY29uIiwiX2V4Y2x1ZGVkJDIkIiwiTG9ja09wZW4xSWNvbiIsIl9leGNsdWRlZCQzMCIsIkxvY2tPcGVuMkljb24iLCJfZXhjbHVkZWQkMzEiLCJMb29wSWNvbiIsIl9leGNsdWRlZCQzMiIsIk1hZ2ljV2FuZEljb24iLCJfZXhjbHVkZWQkMzMiLCJNYWduaWZ5aW5nR2xhc3NJY29uIiwiX2V4Y2x1ZGVkJDM0IiwiTWFyZ2luSWNvbiIsIl9leGNsdWRlZCQzNSIsIk1hc2tPZmZJY29uIiwiX2V4Y2x1ZGVkJDM2IiwiTWFza09uSWNvbiIsIl9leGNsdWRlZCQzNyIsIk1pbnVzSWNvbiIsIl9leGNsdWRlZCQzOCIsIk1pbnVzQ2lyY2xlZEljb24iLCJfZXhjbHVkZWQkMzkiLCJNaXhJY29uIiwiX2V4Y2x1ZGVkJDNhIiwiTWl4ZXJIb3Jpem9udGFsSWNvbiIsIl9leGNsdWRlZCQzYiIsIk1peGVyVmVydGljYWxJY29uIiwiX2V4Y2x1ZGVkJDNjIiwiTW9iaWxlSWNvbiIsIl9leGNsdWRlZCQzZCIsIk1vZHVsekxvZ29JY29uIiwiX2V4Y2x1ZGVkJDNlIiwiTW9vbkljb24iLCJfZXhjbHVkZWQkM2YiLCJNb3ZlSWNvbiIsIl9leGNsdWRlZCQzZyIsIk5vdGlvbkxvZ29JY29uIiwiX2V4Y2x1ZGVkJDNoIiwiT3BhY2l0eUljb24iLCJfZXhjbHVkZWQkM2kiLCJPcGVuSW5OZXdXaW5kb3dJY29uIiwiX2V4Y2x1ZGVkJDNqIiwiT3ZlcmxpbmVJY29uIiwiX2V4Y2x1ZGVkJDNrIiwiUGFkZGluZ0ljb24iLCJfZXhjbHVkZWQkM2wiLCJQYXBlclBsYW5lSWNvbiIsIl9leGNsdWRlZCQzbSIsIlBhdXNlSWNvbiIsIl9leGNsdWRlZCQzbiIsIlBlbmNpbDFJY29uIiwiX2V4Y2x1ZGVkJDNvIiwiUGVuY2lsMkljb24iLCJfZXhjbHVkZWQkM3AiLCJQZXJzb25JY29uIiwiX2V4Y2x1ZGVkJDNxIiwiUGllQ2hhcnRJY29uIiwiX2V4Y2x1ZGVkJDNyIiwiUGlsY3Jvd0ljb24iLCJfZXhjbHVkZWQkM3MiLCJQaW5Cb3R0b21JY29uIiwiX2V4Y2x1ZGVkJDN0IiwiUGluTGVmdEljb24iLCJfZXhjbHVkZWQkM3UiLCJQaW5SaWdodEljb24iLCJfZXhjbHVkZWQkM3YiLCJQaW5Ub3BJY29uIiwiX2V4Y2x1ZGVkJDN3IiwiUGxheUljb24iLCJfZXhjbHVkZWQkM3giLCJQbHVzSWNvbiIsIl9leGNsdWRlZCQzeSIsIlBsdXNDaXJjbGVkSWNvbiIsIl9leGNsdWRlZCQzeiIsIlF1ZXN0aW9uTWFya0ljb24iLCJfZXhjbHVkZWQkM0EiLCJRdWVzdGlvbk1hcmtDaXJjbGVkSWNvbiIsIl9leGNsdWRlZCQzQiIsIlF1b3RlSWNvbiIsIl9leGNsdWRlZCQzQyIsIlJhZGlvYnV0dG9uSWNvbiIsIl9leGNsdWRlZCQzRCIsIlJlYWRlckljb24iLCJfZXhjbHVkZWQkM0UiLCJSZWxvYWRJY29uIiwiX2V4Y2x1ZGVkJDNGIiwiUmVzZXRJY29uIiwiX2V4Y2x1ZGVkJDNHIiwiUmVzdW1lSWNvbiIsIl9leGNsdWRlZCQzSCIsIlJvY2tldEljb24iLCJfZXhjbHVkZWQkM0kiLCJSb3RhdGVDb3VudGVyQ2xvY2t3aXNlSWNvbiIsIl9leGNsdWRlZCQzSiIsIlJvd1NwYWNpbmdJY29uIiwiX2V4Y2x1ZGVkJDNLIiwiUm93c0ljb24iLCJfZXhjbHVkZWQkM0wiLCJSdWxlckhvcml6b250YWxJY29uIiwiX2V4Y2x1ZGVkJDNNIiwiUnVsZXJTcXVhcmVJY29uIiwiX2V4Y2x1ZGVkJDNOIiwiU2Npc3NvcnNJY29uIiwiX2V4Y2x1ZGVkJDNPIiwiU2VjdGlvbkljb24iLCJfZXhjbHVkZWQkM1AiLCJTZXdpbmdQaW5JY29uIiwiX2V4Y2x1ZGVkJDNRIiwiU2V3aW5nUGluRmlsbGVkSWNvbiIsIl9leGNsdWRlZCQzUiIsIlNoYWRvd0ljb24iLCJvcGFjaXR5IiwiX2V4Y2x1ZGVkJDNTIiwiU2hhZG93SW5uZXJJY29uIiwiX2V4Y2x1ZGVkJDNUIiwiU2hhZG93Tm9uZUljb24iLCJfZXhjbHVkZWQkM1UiLCJTaGFkb3dPdXRlckljb24iLCJfZXhjbHVkZWQkM1YiLCJTaGFyZTFJY29uIiwiX2V4Y2x1ZGVkJDNXIiwiU2hhcmUySWNvbiIsIl9leGNsdWRlZCQzWCIsIlNodWZmbGVJY29uIiwiX2V4Y2x1ZGVkJDNZIiwiU2l6ZUljb24iLCJfZXhjbHVkZWQkM1oiLCJTa2V0Y2hMb2dvSWNvbiIsIl9leGNsdWRlZCQzXyIsIlNsYXNoSWNvbiIsIl9leGNsdWRlZCQzJCIsIlNsaWRlckljb24iLCJfZXhjbHVkZWQkNDAiLCJTcGFjZUJldHdlZW5Ib3Jpem9udGFsbHlJY29uIiwiX2V4Y2x1ZGVkJDQxIiwiU3BhY2VCZXR3ZWVuVmVydGljYWxseUljb24iLCJfZXhjbHVkZWQkNDIiLCJTcGFjZUV2ZW5seUhvcml6b250YWxseUljb24iLCJfZXhjbHVkZWQkNDMiLCJTcGFjZUV2ZW5seVZlcnRpY2FsbHlJY29uIiwiX2V4Y2x1ZGVkJDQ0IiwiU3BlYWtlckxvdWRJY29uIiwiX2V4Y2x1ZGVkJDQ1IiwiU3BlYWtlck1vZGVyYXRlSWNvbiIsIl9leGNsdWRlZCQ0NiIsIlNwZWFrZXJPZmZJY29uIiwiX2V4Y2x1ZGVkJDQ3IiwiU3BlYWtlclF1aWV0SWNvbiIsIl9leGNsdWRlZCQ0OCIsIlNxdWFyZUljb24iLCJfZXhjbHVkZWQkNDkiLCJTdGFja0ljb24iLCJfZXhjbHVkZWQkNGEiLCJTdGFySWNvbiIsIl9leGNsdWRlZCQ0YiIsIlN0YXJGaWxsZWRJY29uIiwiX2V4Y2x1ZGVkJDRjIiwiU3RpdGNoZXNMb2dvSWNvbiIsIl9leGNsdWRlZCQ0ZCIsIlN0b3BJY29uIiwiX2V4Y2x1ZGVkJDRlIiwiU3RvcHdhdGNoSWNvbiIsIl9leGNsdWRlZCQ0ZiIsIlN0cmV0Y2hIb3Jpem9udGFsbHlJY29uIiwiX2V4Y2x1ZGVkJDRnIiwiU3RyZXRjaFZlcnRpY2FsbHlJY29uIiwiX2V4Y2x1ZGVkJDRoIiwiU3RyaWtldGhyb3VnaEljb24iLCJfZXhjbHVkZWQkNGkiLCJTdW5JY29uIiwiX2V4Y2x1ZGVkJDRqIiwiU3dpdGNoSWNvbiIsIl9leGNsdWRlZCQ0ayIsIlN5bWJvbEljb24iLCJfZXhjbHVkZWQkNGwiLCJUYWJsZUljb24iLCJfZXhjbHVkZWQkNG0iLCJUYXJnZXRJY29uIiwiX2V4Y2x1ZGVkJDRuIiwiVGV4dEljb24iLCJfZXhjbHVkZWQkNG8iLCJUZXh0QWxpZ25Cb3R0b21JY29uIiwiX2V4Y2x1ZGVkJDRwIiwiVGV4dEFsaWduQ2VudGVySWNvbiIsIl9leGNsdWRlZCQ0cSIsIlRleHRBbGlnbkp1c3RpZnlJY29uIiwiX2V4Y2x1ZGVkJDRyIiwiVGV4dEFsaWduTGVmdEljb24iLCJfZXhjbHVkZWQkNHMiLCJUZXh0QWxpZ25NaWRkbGVJY29uIiwiX2V4Y2x1ZGVkJDR0IiwiVGV4dEFsaWduUmlnaHRJY29uIiwiX2V4Y2x1ZGVkJDR1IiwiVGV4dEFsaWduVG9wSWNvbiIsIl9leGNsdWRlZCQ0diIsIlRleHROb25lSWNvbiIsIl9leGNsdWRlZCQ0dyIsIlRoaWNrQXJyb3dEb3duSWNvbiIsIl9leGNsdWRlZCQ0eCIsIlRoaWNrQXJyb3dMZWZ0SWNvbiIsIl9leGNsdWRlZCQ0eSIsIlRoaWNrQXJyb3dSaWdodEljb24iLCJfZXhjbHVkZWQkNHoiLCJUaGlja0Fycm93VXBJY29uIiwiX2V4Y2x1ZGVkJDRBIiwiVGltZXJJY29uIiwiX2V4Y2x1ZGVkJDRCIiwiVG9rZW5zSWNvbiIsIl9leGNsdWRlZCQ0QyIsIlRyYWNrTmV4dEljb24iLCJfZXhjbHVkZWQkNEQiLCJUcmFja1ByZXZpb3VzSWNvbiIsIl9leGNsdWRlZCQ0RSIsIlRyYW5zZm9ybUljb24iLCJfZXhjbHVkZWQkNEYiLCJUcmFuc3BhcmVuY3lHcmlkSWNvbiIsIl9leGNsdWRlZCQ0RyIsIlRyYXNoSWNvbiIsIl9leGNsdWRlZCQ0SCIsIlRyaWFuZ2xlRG93bkljb24iLCJfZXhjbHVkZWQkNEkiLCJUcmlhbmdsZUxlZnRJY29uIiwiX2V4Y2x1ZGVkJDRKIiwiVHJpYW5nbGVSaWdodEljb24iLCJfZXhjbHVkZWQkNEsiLCJUcmlhbmdsZVVwSWNvbiIsIl9leGNsdWRlZCQ0TCIsIlR3aXR0ZXJMb2dvSWNvbiIsIl9leGNsdWRlZCQ0TSIsIlVuZGVybGluZUljb24iLCJfZXhjbHVkZWQkNE4iLCJVcGRhdGVJY29uIiwiX2V4Y2x1ZGVkJDRPIiwiVXBsb2FkSWNvbiIsIl9leGNsdWRlZCQ0UCIsIlZhbHVlSWNvbiIsIl9leGNsdWRlZCQ0USIsIlZhbHVlTm9uZUljb24iLCJfZXhjbHVkZWQkNFIiLCJWZXJjZWxMb2dvSWNvbiIsIl9leGNsdWRlZCQ0UyIsIlZpZGVvSWNvbiIsIl9leGNsdWRlZCQ0VCIsIlZpZXdHcmlkSWNvbiIsIl9leGNsdWRlZCQ0VSIsIlZpZXdIb3Jpem9udGFsSWNvbiIsIl9leGNsdWRlZCQ0ViIsIlZpZXdOb25lSWNvbiIsIl9leGNsdWRlZCQ0VyIsIlZpZXdWZXJ0aWNhbEljb24iLCJfZXhjbHVkZWQkNFgiLCJXaWR0aEljb24iLCJfZXhjbHVkZWQkNFkiLCJab29tSW5JY29uIiwiX2V4Y2x1ZGVkJDRaIiwiWm9vbU91dEljb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-icons/dist/react-icons.esm.js\n"); /***/ }), /***/ "(rsc)/./node_modules/@radix-ui/react-icons/dist/react-icons.esm.js": /*!********************************************************************!*\ !*** ./node_modules/@radix-ui/react-icons/dist/react-icons.esm.js ***! \********************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AccessibilityIcon: () => (/* binding */ AccessibilityIcon),\n/* harmony export */ ActivityLogIcon: () => (/* binding */ ActivityLogIcon),\n/* harmony export */ AlignBaselineIcon: () => (/* binding */ AlignBaselineIcon),\n/* harmony export */ AlignBottomIcon: () => (/* binding */ AlignBottomIcon),\n/* harmony export */ AlignCenterHorizontallyIcon: () => (/* binding */ AlignCenterHorizontallyIcon),\n/* harmony export */ AlignCenterVerticallyIcon: () => (/* binding */ AlignCenterVerticallyIcon),\n/* harmony export */ AlignLeftIcon: () => (/* binding */ AlignLeftIcon),\n/* harmony export */ AlignRightIcon: () => (/* binding */ AlignRightIcon),\n/* harmony export */ AlignTopIcon: () => (/* binding */ AlignTopIcon),\n/* harmony export */ AllSidesIcon: () => (/* binding */ AllSidesIcon),\n/* harmony export */ AngleIcon: () => (/* binding */ AngleIcon),\n/* harmony export */ ArchiveIcon: () => (/* binding */ ArchiveIcon),\n/* harmony export */ ArrowBottomLeftIcon: () => (/* binding */ ArrowBottomLeftIcon),\n/* harmony export */ ArrowBottomRightIcon: () => (/* binding */ ArrowBottomRightIcon),\n/* harmony export */ ArrowDownIcon: () => (/* binding */ ArrowDownIcon),\n/* harmony export */ ArrowLeftIcon: () => (/* binding */ ArrowLeftIcon),\n/* harmony export */ ArrowRightIcon: () => (/* binding */ ArrowRightIcon),\n/* harmony export */ ArrowTopLeftIcon: () => (/* binding */ ArrowTopLeftIcon),\n/* harmony export */ ArrowTopRightIcon: () => (/* binding */ ArrowTopRightIcon),\n/* harmony export */ ArrowUpIcon: () => (/* binding */ ArrowUpIcon),\n/* harmony export */ AspectRatioIcon: () => (/* binding */ AspectRatioIcon),\n/* harmony export */ AvatarIcon: () => (/* binding */ AvatarIcon),\n/* harmony export */ BackpackIcon: () => (/* binding */ BackpackIcon),\n/* harmony export */ BadgeIcon: () => (/* binding */ BadgeIcon),\n/* harmony export */ BarChartIcon: () => (/* binding */ BarChartIcon),\n/* harmony export */ BellIcon: () => (/* binding */ BellIcon),\n/* harmony export */ BlendingModeIcon: () => (/* binding */ BlendingModeIcon),\n/* harmony export */ BookmarkFilledIcon: () => (/* binding */ BookmarkFilledIcon),\n/* harmony export */ BookmarkIcon: () => (/* binding */ BookmarkIcon),\n/* harmony export */ BorderAllIcon: () => (/* binding */ BorderAllIcon),\n/* harmony export */ BorderBottomIcon: () => (/* binding */ BorderBottomIcon),\n/* harmony export */ BorderDashedIcon: () => (/* binding */ BorderDashedIcon),\n/* harmony export */ BorderDottedIcon: () => (/* binding */ BorderDottedIcon),\n/* harmony export */ BorderLeftIcon: () => (/* binding */ BorderLeftIcon),\n/* harmony export */ BorderNoneIcon: () => (/* binding */ BorderNoneIcon),\n/* harmony export */ BorderRightIcon: () => (/* binding */ BorderRightIcon),\n/* harmony export */ BorderSolidIcon: () => (/* binding */ BorderSolidIcon),\n/* harmony export */ BorderSplitIcon: () => (/* binding */ BorderSplitIcon),\n/* harmony export */ BorderStyleIcon: () => (/* binding */ BorderStyleIcon),\n/* harmony export */ BorderTopIcon: () => (/* binding */ BorderTopIcon),\n/* harmony export */ BorderWidthIcon: () => (/* binding */ BorderWidthIcon),\n/* harmony export */ BoxIcon: () => (/* binding */ BoxIcon),\n/* harmony export */ BoxModelIcon: () => (/* binding */ BoxModelIcon),\n/* harmony export */ ButtonIcon: () => (/* binding */ ButtonIcon),\n/* harmony export */ CalendarIcon: () => (/* binding */ CalendarIcon),\n/* harmony export */ CameraIcon: () => (/* binding */ CameraIcon),\n/* harmony export */ CardStackIcon: () => (/* binding */ CardStackIcon),\n/* harmony export */ CardStackMinusIcon: () => (/* binding */ CardStackMinusIcon),\n/* harmony export */ CardStackPlusIcon: () => (/* binding */ CardStackPlusIcon),\n/* harmony export */ CaretDownIcon: () => (/* binding */ CaretDownIcon),\n/* harmony export */ CaretLeftIcon: () => (/* binding */ CaretLeftIcon),\n/* harmony export */ CaretRightIcon: () => (/* binding */ CaretRightIcon),\n/* harmony export */ CaretSortIcon: () => (/* binding */ CaretSortIcon),\n/* harmony export */ CaretUpIcon: () => (/* binding */ CaretUpIcon),\n/* harmony export */ ChatBubbleIcon: () => (/* binding */ ChatBubbleIcon),\n/* harmony export */ CheckCircledIcon: () => (/* binding */ CheckCircledIcon),\n/* harmony export */ CheckIcon: () => (/* binding */ CheckIcon),\n/* harmony export */ CheckboxIcon: () => (/* binding */ CheckboxIcon),\n/* harmony export */ ChevronDownIcon: () => (/* binding */ ChevronDownIcon),\n/* harmony export */ ChevronLeftIcon: () => (/* binding */ ChevronLeftIcon),\n/* harmony export */ ChevronRightIcon: () => (/* binding */ ChevronRightIcon),\n/* harmony export */ ChevronUpIcon: () => (/* binding */ ChevronUpIcon),\n/* harmony export */ CircleBackslashIcon: () => (/* binding */ CircleBackslashIcon),\n/* harmony export */ CircleIcon: () => (/* binding */ CircleIcon),\n/* harmony export */ ClipboardCopyIcon: () => (/* binding */ ClipboardCopyIcon),\n/* harmony export */ ClipboardIcon: () => (/* binding */ ClipboardIcon),\n/* harmony export */ ClockIcon: () => (/* binding */ ClockIcon),\n/* harmony export */ CodeIcon: () => (/* binding */ CodeIcon),\n/* harmony export */ CodeSandboxLogoIcon: () => (/* binding */ CodeSandboxLogoIcon),\n/* harmony export */ ColorWheelIcon: () => (/* binding */ ColorWheelIcon),\n/* harmony export */ ColumnSpacingIcon: () => (/* binding */ ColumnSpacingIcon),\n/* harmony export */ ColumnsIcon: () => (/* binding */ ColumnsIcon),\n/* harmony export */ CommitIcon: () => (/* binding */ CommitIcon),\n/* harmony export */ Component1Icon: () => (/* binding */ Component1Icon),\n/* harmony export */ Component2Icon: () => (/* binding */ Component2Icon),\n/* harmony export */ ComponentBooleanIcon: () => (/* binding */ ComponentBooleanIcon),\n/* harmony export */ ComponentInstanceIcon: () => (/* binding */ ComponentInstanceIcon),\n/* harmony export */ ComponentNoneIcon: () => (/* binding */ ComponentNoneIcon),\n/* harmony export */ ComponentPlaceholderIcon: () => (/* binding */ ComponentPlaceholderIcon),\n/* harmony export */ ContainerIcon: () => (/* binding */ ContainerIcon),\n/* harmony export */ CookieIcon: () => (/* binding */ CookieIcon),\n/* harmony export */ CopyIcon: () => (/* binding */ CopyIcon),\n/* harmony export */ CornerBottomLeftIcon: () => (/* binding */ CornerBottomLeftIcon),\n/* harmony export */ CornerBottomRightIcon: () => (/* binding */ CornerBottomRightIcon),\n/* harmony export */ CornerTopLeftIcon: () => (/* binding */ CornerTopLeftIcon),\n/* harmony export */ CornerTopRightIcon: () => (/* binding */ CornerTopRightIcon),\n/* harmony export */ CornersIcon: () => (/* binding */ CornersIcon),\n/* harmony export */ CountdownTimerIcon: () => (/* binding */ CountdownTimerIcon),\n/* harmony export */ CounterClockwiseClockIcon: () => (/* binding */ CounterClockwiseClockIcon),\n/* harmony export */ CropIcon: () => (/* binding */ CropIcon),\n/* harmony export */ Cross1Icon: () => (/* binding */ Cross1Icon),\n/* harmony export */ Cross2Icon: () => (/* binding */ Cross2Icon),\n/* harmony export */ CrossCircledIcon: () => (/* binding */ CrossCircledIcon),\n/* harmony export */ Crosshair1Icon: () => (/* binding */ Crosshair1Icon),\n/* harmony export */ Crosshair2Icon: () => (/* binding */ Crosshair2Icon),\n/* harmony export */ CrumpledPaperIcon: () => (/* binding */ CrumpledPaperIcon),\n/* harmony export */ CubeIcon: () => (/* binding */ CubeIcon),\n/* harmony export */ CursorArrowIcon: () => (/* binding */ CursorArrowIcon),\n/* harmony export */ CursorTextIcon: () => (/* binding */ CursorTextIcon),\n/* harmony export */ DashIcon: () => (/* binding */ DashIcon),\n/* harmony export */ DashboardIcon: () => (/* binding */ DashboardIcon),\n/* harmony export */ DesktopIcon: () => (/* binding */ DesktopIcon),\n/* harmony export */ DimensionsIcon: () => (/* binding */ DimensionsIcon),\n/* harmony export */ DiscIcon: () => (/* binding */ DiscIcon),\n/* harmony export */ DiscordLogoIcon: () => (/* binding */ DiscordLogoIcon),\n/* harmony export */ DividerHorizontalIcon: () => (/* binding */ DividerHorizontalIcon),\n/* harmony export */ DividerVerticalIcon: () => (/* binding */ DividerVerticalIcon),\n/* harmony export */ DotFilledIcon: () => (/* binding */ DotFilledIcon),\n/* harmony export */ DotIcon: () => (/* binding */ DotIcon),\n/* harmony export */ DotsHorizontalIcon: () => (/* binding */ DotsHorizontalIcon),\n/* harmony export */ DotsVerticalIcon: () => (/* binding */ DotsVerticalIcon),\n/* harmony export */ DoubleArrowDownIcon: () => (/* binding */ DoubleArrowDownIcon),\n/* harmony export */ DoubleArrowLeftIcon: () => (/* binding */ DoubleArrowLeftIcon),\n/* harmony export */ DoubleArrowRightIcon: () => (/* binding */ DoubleArrowRightIcon),\n/* harmony export */ DoubleArrowUpIcon: () => (/* binding */ DoubleArrowUpIcon),\n/* harmony export */ DownloadIcon: () => (/* binding */ DownloadIcon),\n/* harmony export */ DragHandleDots1Icon: () => (/* binding */ DragHandleDots1Icon),\n/* harmony export */ DragHandleDots2Icon: () => (/* binding */ DragHandleDots2Icon),\n/* harmony export */ DragHandleHorizontalIcon: () => (/* binding */ DragHandleHorizontalIcon),\n/* harmony export */ DragHandleVerticalIcon: () => (/* binding */ DragHandleVerticalIcon),\n/* harmony export */ DrawingPinFilledIcon: () => (/* binding */ DrawingPinFilledIcon),\n/* harmony export */ DrawingPinIcon: () => (/* binding */ DrawingPinIcon),\n/* harmony export */ DropdownMenuIcon: () => (/* binding */ DropdownMenuIcon),\n/* harmony export */ EnterFullScreenIcon: () => (/* binding */ EnterFullScreenIcon),\n/* harmony export */ EnterIcon: () => (/* binding */ EnterIcon),\n/* harmony export */ EnvelopeClosedIcon: () => (/* binding */ EnvelopeClosedIcon),\n/* harmony export */ EnvelopeOpenIcon: () => (/* binding */ EnvelopeOpenIcon),\n/* harmony export */ EraserIcon: () => (/* binding */ EraserIcon),\n/* harmony export */ ExclamationTriangleIcon: () => (/* binding */ ExclamationTriangleIcon),\n/* harmony export */ ExitFullScreenIcon: () => (/* binding */ ExitFullScreenIcon),\n/* harmony export */ ExitIcon: () => (/* binding */ ExitIcon),\n/* harmony export */ ExternalLinkIcon: () => (/* binding */ ExternalLinkIcon),\n/* harmony export */ EyeClosedIcon: () => (/* binding */ EyeClosedIcon),\n/* harmony export */ EyeNoneIcon: () => (/* binding */ EyeNoneIcon),\n/* harmony export */ EyeOpenIcon: () => (/* binding */ EyeOpenIcon),\n/* harmony export */ FaceIcon: () => (/* binding */ FaceIcon),\n/* harmony export */ FigmaLogoIcon: () => (/* binding */ FigmaLogoIcon),\n/* harmony export */ FileIcon: () => (/* binding */ FileIcon),\n/* harmony export */ FileMinusIcon: () => (/* binding */ FileMinusIcon),\n/* harmony export */ FilePlusIcon: () => (/* binding */ FilePlusIcon),\n/* harmony export */ FileTextIcon: () => (/* binding */ FileTextIcon),\n/* harmony export */ FontBoldIcon: () => (/* binding */ FontBoldIcon),\n/* harmony export */ FontFamilyIcon: () => (/* binding */ FontFamilyIcon),\n/* harmony export */ FontItalicIcon: () => (/* binding */ FontItalicIcon),\n/* harmony export */ FontRomanIcon: () => (/* binding */ FontRomanIcon),\n/* harmony export */ FontSizeIcon: () => (/* binding */ FontSizeIcon),\n/* harmony export */ FontStyleIcon: () => (/* binding */ FontStyleIcon),\n/* harmony export */ FrameIcon: () => (/* binding */ FrameIcon),\n/* harmony export */ FramerLogoIcon: () => (/* binding */ FramerLogoIcon),\n/* harmony export */ GearIcon: () => (/* binding */ GearIcon),\n/* harmony export */ GitHubLogoIcon: () => (/* binding */ GitHubLogoIcon),\n/* harmony export */ GlobeIcon: () => (/* binding */ GlobeIcon),\n/* harmony export */ GridIcon: () => (/* binding */ GridIcon),\n/* harmony export */ GroupIcon: () => (/* binding */ GroupIcon),\n/* harmony export */ Half1Icon: () => (/* binding */ Half1Icon),\n/* harmony export */ Half2Icon: () => (/* binding */ Half2Icon),\n/* harmony export */ HamburgerMenuIcon: () => (/* binding */ HamburgerMenuIcon),\n/* harmony export */ HandIcon: () => (/* binding */ HandIcon),\n/* harmony export */ HeadingIcon: () => (/* binding */ HeadingIcon),\n/* harmony export */ HeartFilledIcon: () => (/* binding */ HeartFilledIcon),\n/* harmony export */ HeartIcon: () => (/* binding */ HeartIcon),\n/* harmony export */ HeightIcon: () => (/* binding */ HeightIcon),\n/* harmony export */ HobbyKnifeIcon: () => (/* binding */ HobbyKnifeIcon),\n/* harmony export */ HomeIcon: () => (/* binding */ HomeIcon),\n/* harmony export */ IconJarLogoIcon: () => (/* binding */ IconJarLogoIcon),\n/* harmony export */ IdCardIcon: () => (/* binding */ IdCardIcon),\n/* harmony export */ ImageIcon: () => (/* binding */ ImageIcon),\n/* harmony export */ InfoCircledIcon: () => (/* binding */ InfoCircledIcon),\n/* harmony export */ InputIcon: () => (/* binding */ InputIcon),\n/* harmony export */ InstagramLogoIcon: () => (/* binding */ InstagramLogoIcon),\n/* harmony export */ KeyboardIcon: () => (/* binding */ KeyboardIcon),\n/* harmony export */ LapTimerIcon: () => (/* binding */ LapTimerIcon),\n/* harmony export */ LaptopIcon: () => (/* binding */ LaptopIcon),\n/* harmony export */ LayersIcon: () => (/* binding */ LayersIcon),\n/* harmony export */ LayoutIcon: () => (/* binding */ LayoutIcon),\n/* harmony export */ LetterCaseCapitalizeIcon: () => (/* binding */ LetterCaseCapitalizeIcon),\n/* harmony export */ LetterCaseLowercaseIcon: () => (/* binding */ LetterCaseLowercaseIcon),\n/* harmony export */ LetterCaseToggleIcon: () => (/* binding */ LetterCaseToggleIcon),\n/* harmony export */ LetterCaseUppercaseIcon: () => (/* binding */ LetterCaseUppercaseIcon),\n/* harmony export */ LetterSpacingIcon: () => (/* binding */ LetterSpacingIcon),\n/* harmony export */ LightningBoltIcon: () => (/* binding */ LightningBoltIcon),\n/* harmony export */ LineHeightIcon: () => (/* binding */ LineHeightIcon),\n/* harmony export */ Link1Icon: () => (/* binding */ Link1Icon),\n/* harmony export */ Link2Icon: () => (/* binding */ Link2Icon),\n/* harmony export */ LinkBreak1Icon: () => (/* binding */ LinkBreak1Icon),\n/* harmony export */ LinkBreak2Icon: () => (/* binding */ LinkBreak2Icon),\n/* harmony export */ LinkNone1Icon: () => (/* binding */ LinkNone1Icon),\n/* harmony export */ LinkNone2Icon: () => (/* binding */ LinkNone2Icon),\n/* harmony export */ LinkedInLogoIcon: () => (/* binding */ LinkedInLogoIcon),\n/* harmony export */ ListBulletIcon: () => (/* binding */ ListBulletIcon),\n/* harmony export */ LockClosedIcon: () => (/* binding */ LockClosedIcon),\n/* harmony export */ LockOpen1Icon: () => (/* binding */ LockOpen1Icon),\n/* harmony export */ LockOpen2Icon: () => (/* binding */ LockOpen2Icon),\n/* harmony export */ LoopIcon: () => (/* binding */ LoopIcon),\n/* harmony export */ MagicWandIcon: () => (/* binding */ MagicWandIcon),\n/* harmony export */ MagnifyingGlassIcon: () => (/* binding */ MagnifyingGlassIcon),\n/* harmony export */ MarginIcon: () => (/* binding */ MarginIcon),\n/* harmony export */ MaskOffIcon: () => (/* binding */ MaskOffIcon),\n/* harmony export */ MaskOnIcon: () => (/* binding */ MaskOnIcon),\n/* harmony export */ MinusCircledIcon: () => (/* binding */ MinusCircledIcon),\n/* harmony export */ MinusIcon: () => (/* binding */ MinusIcon),\n/* harmony export */ MixIcon: () => (/* binding */ MixIcon),\n/* harmony export */ MixerHorizontalIcon: () => (/* binding */ MixerHorizontalIcon),\n/* harmony export */ MixerVerticalIcon: () => (/* binding */ MixerVerticalIcon),\n/* harmony export */ MobileIcon: () => (/* binding */ MobileIcon),\n/* harmony export */ ModulzLogoIcon: () => (/* binding */ ModulzLogoIcon),\n/* harmony export */ MoonIcon: () => (/* binding */ MoonIcon),\n/* harmony export */ MoveIcon: () => (/* binding */ MoveIcon),\n/* harmony export */ NotionLogoIcon: () => (/* binding */ NotionLogoIcon),\n/* harmony export */ OpacityIcon: () => (/* binding */ OpacityIcon),\n/* harmony export */ OpenInNewWindowIcon: () => (/* binding */ OpenInNewWindowIcon),\n/* harmony export */ OverlineIcon: () => (/* binding */ OverlineIcon),\n/* harmony export */ PaddingIcon: () => (/* binding */ PaddingIcon),\n/* harmony export */ PaperPlaneIcon: () => (/* binding */ PaperPlaneIcon),\n/* harmony export */ PauseIcon: () => (/* binding */ PauseIcon),\n/* harmony export */ Pencil1Icon: () => (/* binding */ Pencil1Icon),\n/* harmony export */ Pencil2Icon: () => (/* binding */ Pencil2Icon),\n/* harmony export */ PersonIcon: () => (/* binding */ PersonIcon),\n/* harmony export */ PieChartIcon: () => (/* binding */ PieChartIcon),\n/* harmony export */ PilcrowIcon: () => (/* binding */ PilcrowIcon),\n/* harmony export */ PinBottomIcon: () => (/* binding */ PinBottomIcon),\n/* harmony export */ PinLeftIcon: () => (/* binding */ PinLeftIcon),\n/* harmony export */ PinRightIcon: () => (/* binding */ PinRightIcon),\n/* harmony export */ PinTopIcon: () => (/* binding */ PinTopIcon),\n/* harmony export */ PlayIcon: () => (/* binding */ PlayIcon),\n/* harmony export */ PlusCircledIcon: () => (/* binding */ PlusCircledIcon),\n/* harmony export */ PlusIcon: () => (/* binding */ PlusIcon),\n/* harmony export */ QuestionMarkCircledIcon: () => (/* binding */ QuestionMarkCircledIcon),\n/* harmony export */ QuestionMarkIcon: () => (/* binding */ QuestionMarkIcon),\n/* harmony export */ QuoteIcon: () => (/* binding */ QuoteIcon),\n/* harmony export */ RadiobuttonIcon: () => (/* binding */ RadiobuttonIcon),\n/* harmony export */ ReaderIcon: () => (/* binding */ ReaderIcon),\n/* harmony export */ ReloadIcon: () => (/* binding */ ReloadIcon),\n/* harmony export */ ResetIcon: () => (/* binding */ ResetIcon),\n/* harmony export */ ResumeIcon: () => (/* binding */ ResumeIcon),\n/* harmony export */ RocketIcon: () => (/* binding */ RocketIcon),\n/* harmony export */ RotateCounterClockwiseIcon: () => (/* binding */ RotateCounterClockwiseIcon),\n/* harmony export */ RowSpacingIcon: () => (/* binding */ RowSpacingIcon),\n/* harmony export */ RowsIcon: () => (/* binding */ RowsIcon),\n/* harmony export */ RulerHorizontalIcon: () => (/* binding */ RulerHorizontalIcon),\n/* harmony export */ RulerSquareIcon: () => (/* binding */ RulerSquareIcon),\n/* harmony export */ ScissorsIcon: () => (/* binding */ ScissorsIcon),\n/* harmony export */ SectionIcon: () => (/* binding */ SectionIcon),\n/* harmony export */ SewingPinFilledIcon: () => (/* binding */ SewingPinFilledIcon),\n/* harmony export */ SewingPinIcon: () => (/* binding */ SewingPinIcon),\n/* harmony export */ ShadowIcon: () => (/* binding */ ShadowIcon),\n/* harmony export */ ShadowInnerIcon: () => (/* binding */ ShadowInnerIcon),\n/* harmony export */ ShadowNoneIcon: () => (/* binding */ ShadowNoneIcon),\n/* harmony export */ ShadowOuterIcon: () => (/* binding */ ShadowOuterIcon),\n/* harmony export */ Share1Icon: () => (/* binding */ Share1Icon),\n/* harmony export */ Share2Icon: () => (/* binding */ Share2Icon),\n/* harmony export */ ShuffleIcon: () => (/* binding */ ShuffleIcon),\n/* harmony export */ SizeIcon: () => (/* binding */ SizeIcon),\n/* harmony export */ SketchLogoIcon: () => (/* binding */ SketchLogoIcon),\n/* harmony export */ SlashIcon: () => (/* binding */ SlashIcon),\n/* harmony export */ SliderIcon: () => (/* binding */ SliderIcon),\n/* harmony export */ SpaceBetweenHorizontallyIcon: () => (/* binding */ SpaceBetweenHorizontallyIcon),\n/* harmony export */ SpaceBetweenVerticallyIcon: () => (/* binding */ SpaceBetweenVerticallyIcon),\n/* harmony export */ SpaceEvenlyHorizontallyIcon: () => (/* binding */ SpaceEvenlyHorizontallyIcon),\n/* harmony export */ SpaceEvenlyVerticallyIcon: () => (/* binding */ SpaceEvenlyVerticallyIcon),\n/* harmony export */ SpeakerLoudIcon: () => (/* binding */ SpeakerLoudIcon),\n/* harmony export */ SpeakerModerateIcon: () => (/* binding */ SpeakerModerateIcon),\n/* harmony export */ SpeakerOffIcon: () => (/* binding */ SpeakerOffIcon),\n/* harmony export */ SpeakerQuietIcon: () => (/* binding */ SpeakerQuietIcon),\n/* harmony export */ SquareIcon: () => (/* binding */ SquareIcon),\n/* harmony export */ StackIcon: () => (/* binding */ StackIcon),\n/* harmony export */ StarFilledIcon: () => (/* binding */ StarFilledIcon),\n/* harmony export */ StarIcon: () => (/* binding */ StarIcon),\n/* harmony export */ StitchesLogoIcon: () => (/* binding */ StitchesLogoIcon),\n/* harmony export */ StopIcon: () => (/* binding */ StopIcon),\n/* harmony export */ StopwatchIcon: () => (/* binding */ StopwatchIcon),\n/* harmony export */ StretchHorizontallyIcon: () => (/* binding */ StretchHorizontallyIcon),\n/* harmony export */ StretchVerticallyIcon: () => (/* binding */ StretchVerticallyIcon),\n/* harmony export */ StrikethroughIcon: () => (/* binding */ StrikethroughIcon),\n/* harmony export */ SunIcon: () => (/* binding */ SunIcon),\n/* harmony export */ SwitchIcon: () => (/* binding */ SwitchIcon),\n/* harmony export */ SymbolIcon: () => (/* binding */ SymbolIcon),\n/* harmony export */ TableIcon: () => (/* binding */ TableIcon),\n/* harmony export */ TargetIcon: () => (/* binding */ TargetIcon),\n/* harmony export */ TextAlignBottomIcon: () => (/* binding */ TextAlignBottomIcon),\n/* harmony export */ TextAlignCenterIcon: () => (/* binding */ TextAlignCenterIcon),\n/* harmony export */ TextAlignJustifyIcon: () => (/* binding */ TextAlignJustifyIcon),\n/* harmony export */ TextAlignLeftIcon: () => (/* binding */ TextAlignLeftIcon),\n/* harmony export */ TextAlignMiddleIcon: () => (/* binding */ TextAlignMiddleIcon),\n/* harmony export */ TextAlignRightIcon: () => (/* binding */ TextAlignRightIcon),\n/* harmony export */ TextAlignTopIcon: () => (/* binding */ TextAlignTopIcon),\n/* harmony export */ TextIcon: () => (/* binding */ TextIcon),\n/* harmony export */ TextNoneIcon: () => (/* binding */ TextNoneIcon),\n/* harmony export */ ThickArrowDownIcon: () => (/* binding */ ThickArrowDownIcon),\n/* harmony export */ ThickArrowLeftIcon: () => (/* binding */ ThickArrowLeftIcon),\n/* harmony export */ ThickArrowRightIcon: () => (/* binding */ ThickArrowRightIcon),\n/* harmony export */ ThickArrowUpIcon: () => (/* binding */ ThickArrowUpIcon),\n/* harmony export */ TimerIcon: () => (/* binding */ TimerIcon),\n/* harmony export */ TokensIcon: () => (/* binding */ TokensIcon),\n/* harmony export */ TrackNextIcon: () => (/* binding */ TrackNextIcon),\n/* harmony export */ TrackPreviousIcon: () => (/* binding */ TrackPreviousIcon),\n/* harmony export */ TransformIcon: () => (/* binding */ TransformIcon),\n/* harmony export */ TransparencyGridIcon: () => (/* binding */ TransparencyGridIcon),\n/* harmony export */ TrashIcon: () => (/* binding */ TrashIcon),\n/* harmony export */ TriangleDownIcon: () => (/* binding */ TriangleDownIcon),\n/* harmony export */ TriangleLeftIcon: () => (/* binding */ TriangleLeftIcon),\n/* harmony export */ TriangleRightIcon: () => (/* binding */ TriangleRightIcon),\n/* harmony export */ TriangleUpIcon: () => (/* binding */ TriangleUpIcon),\n/* harmony export */ TwitterLogoIcon: () => (/* binding */ TwitterLogoIcon),\n/* harmony export */ UnderlineIcon: () => (/* binding */ UnderlineIcon),\n/* harmony export */ UpdateIcon: () => (/* binding */ UpdateIcon),\n/* harmony export */ UploadIcon: () => (/* binding */ UploadIcon),\n/* harmony export */ ValueIcon: () => (/* binding */ ValueIcon),\n/* harmony export */ ValueNoneIcon: () => (/* binding */ ValueNoneIcon),\n/* harmony export */ VercelLogoIcon: () => (/* binding */ VercelLogoIcon),\n/* harmony export */ VideoIcon: () => (/* binding */ VideoIcon),\n/* harmony export */ ViewGridIcon: () => (/* binding */ ViewGridIcon),\n/* harmony export */ ViewHorizontalIcon: () => (/* binding */ ViewHorizontalIcon),\n/* harmony export */ ViewNoneIcon: () => (/* binding */ ViewNoneIcon),\n/* harmony export */ ViewVerticalIcon: () => (/* binding */ ViewVerticalIcon),\n/* harmony export */ WidthIcon: () => (/* binding */ WidthIcon),\n/* harmony export */ ZoomInIcon: () => (/* binding */ ZoomInIcon),\n/* harmony export */ ZoomOutIcon: () => (/* binding */ ZoomOutIcon)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(rsc)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/react.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for(i = 0; i < sourceKeys.length; i++){\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nvar _excluded = [\n \"color\"\n];\nvar AccessibilityIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877197 7.49984C0.877197 3.84216 3.84234 0.877014 7.50003 0.877014C11.1577 0.877014 14.1229 3.84216 14.1229 7.49984C14.1229 11.1575 11.1577 14.1227 7.50003 14.1227C3.84234 14.1227 0.877197 11.1575 0.877197 7.49984ZM7.50003 1.82701C4.36702 1.82701 1.8272 4.36683 1.8272 7.49984C1.8272 10.6328 4.36702 13.1727 7.50003 13.1727C10.633 13.1727 13.1729 10.6328 13.1729 7.49984C13.1729 4.36683 10.633 1.82701 7.50003 1.82701ZM7.12457 9.00001C7.06994 9.12735 6.33165 11.9592 6.33165 11.9592C6.26018 12.226 5.98601 12.3843 5.71928 12.3128C5.45255 12.2413 5.29425 11.9672 5.36573 11.7004C5.36573 11.7004 6.24661 8.87268 6.24661 8.27007V6.80099L4.28763 6.27608C4.0209 6.20461 3.86261 5.93045 3.93408 5.66371C4.00555 5.39698 4.27972 5.23869 4.54645 5.31016C4.54645 5.31016 6.20042 5.87268 6.84579 5.87268H8.15505C8.80042 5.87268 10.4534 5.31042 10.4534 5.31042C10.7202 5.23895 10.9943 5.39724 11.0658 5.66397C11.1373 5.93071 10.979 6.20487 10.7122 6.27635L8.74661 6.80303V8.27007C8.74661 8.87268 9.62663 11.6971 9.62663 11.6971C9.6981 11.9639 9.5398 12.238 9.27307 12.3095C9.00634 12.381 8.73217 12.2227 8.6607 11.956C8.6607 11.956 7.91994 9.12735 7.86866 9.00001C7.81994 8.87268 7.65006 8.87268 7.65006 8.87268H7.34317C7.34317 8.87268 7.16994 8.87268 7.12457 9.00001ZM7.50043 5.12007C8.12175 5.12007 8.62543 4.61639 8.62543 3.99507C8.62543 3.37375 8.12175 2.87007 7.50043 2.87007C6.87911 2.87007 6.37543 3.37375 6.37543 3.99507C6.37543 4.61639 6.87911 5.12007 7.50043 5.12007Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1 = [\n \"color\"\n];\nvar ActivityLogIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0 1.5C0 1.22386 0.223858 1 0.5 1H2.5C2.77614 1 3 1.22386 3 1.5C3 1.77614 2.77614 2 2.5 2H0.5C0.223858 2 0 1.77614 0 1.5ZM4 1.5C4 1.22386 4.22386 1 4.5 1H14.5C14.7761 1 15 1.22386 15 1.5C15 1.77614 14.7761 2 14.5 2H4.5C4.22386 2 4 1.77614 4 1.5ZM4 4.5C4 4.22386 4.22386 4 4.5 4H11.5C11.7761 4 12 4.22386 12 4.5C12 4.77614 11.7761 5 11.5 5H4.5C4.22386 5 4 4.77614 4 4.5ZM0 7.5C0 7.22386 0.223858 7 0.5 7H2.5C2.77614 7 3 7.22386 3 7.5C3 7.77614 2.77614 8 2.5 8H0.5C0.223858 8 0 7.77614 0 7.5ZM4 7.5C4 7.22386 4.22386 7 4.5 7H14.5C14.7761 7 15 7.22386 15 7.5C15 7.77614 14.7761 8 14.5 8H4.5C4.22386 8 4 7.77614 4 7.5ZM4 10.5C4 10.2239 4.22386 10 4.5 10H11.5C11.7761 10 12 10.2239 12 10.5C12 10.7761 11.7761 11 11.5 11H4.5C4.22386 11 4 10.7761 4 10.5ZM0 13.5C0 13.2239 0.223858 13 0.5 13H2.5C2.77614 13 3 13.2239 3 13.5C3 13.7761 2.77614 14 2.5 14H0.5C0.223858 14 0 13.7761 0 13.5ZM4 13.5C4 13.2239 4.22386 13 4.5 13H14.5C14.7761 13 15 13.2239 15 13.5C15 13.7761 14.7761 14 14.5 14H4.5C4.22386 14 4 13.7761 4 13.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2 = [\n \"color\"\n];\nvar AlignBaselineIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10.5 1.75003C10.7107 1.75003 10.8988 1.88217 10.9703 2.08042L13.9703 10.4C14.064 10.6598 13.9293 10.9463 13.6696 11.04C13.4098 11.1336 13.1233 10.999 13.0296 10.7392L12.0477 8.01606H8.95227L7.97031 10.7392C7.87664 10.999 7.59012 11.1336 7.33035 11.04C7.07058 10.9463 6.93593 10.6598 7.0296 10.4L10.0296 2.08042C10.1011 1.88217 10.2892 1.75003 10.5 1.75003ZM10.5 3.72402L11.7411 7.16606H9.25877L10.5 3.72402ZM2.49949 2.09997C2.7204 2.09997 2.89949 2.27906 2.89949 2.49997L2.89949 9.53428L4.21664 8.21713C4.37285 8.06092 4.62612 8.06092 4.78233 8.21713C4.93854 8.37334 4.93854 8.6266 4.78233 8.78281L2.78233 10.7828C2.70732 10.8578 2.60557 10.9 2.49949 10.9C2.3934 10.9 2.29166 10.8578 2.21664 10.7828L0.216645 8.78281C0.0604349 8.6266 0.0604349 8.37334 0.216645 8.21713C0.372854 8.06092 0.62612 8.06092 0.78233 8.21713L2.09949 9.53428L2.09949 2.49997C2.09949 2.27906 2.27857 2.09997 2.49949 2.09997ZM0.0999695 13.5001C0.0999695 13.2791 0.279056 13.1001 0.499969 13.1001H14.5C14.7209 13.1001 14.9 13.2791 14.9 13.5001C14.9 13.721 14.7209 13.9001 14.5 13.9001H0.499969C0.279056 13.9001 0.0999695 13.721 0.0999695 13.5001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3 = [\n \"color\"\n];\nvar AlignBottomIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9 3C9 2.44772 8.55229 2 8 2H7C6.44772 2 6 2.44772 6 3L6 14H1.5C1.22386 14 1 14.2239 1 14.5C1 14.7761 1.22386 15 1.5 15L6 15H9H13.5C13.7761 15 14 14.7761 14 14.5C14 14.2239 13.7761 14 13.5 14H9V3Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4 = [\n \"color\"\n];\nvar AlignCenterHorizontallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.99988 6C1.44759 6 0.999877 6.44772 0.999877 7L0.999877 8C0.999877 8.55228 1.44759 9 1.99988 9L6.99988 9L6.99988 13.5C6.99988 13.7761 7.22374 14 7.49988 14C7.77602 14 7.99988 13.7761 7.99988 13.5L7.99988 9L12.9999 9C13.5522 9 13.9999 8.55228 13.9999 8L13.9999 7C13.9999 6.44772 13.5522 6 12.9999 6L7.99988 6L7.99988 1.5C7.99988 1.22386 7.77602 1 7.49988 1C7.22373 1 6.99988 1.22386 6.99988 1.5L6.99988 6L1.99988 6Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$5 = [\n \"color\"\n];\nvar AlignCenterVerticallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$5);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.99988 1C6.44759 1 5.99988 1.44772 5.99988 2V7H1.49988C1.22374 7 0.999878 7.22386 0.999878 7.5C0.999878 7.77614 1.22374 8 1.49988 8H5.99988V13C5.99988 13.5523 6.44759 14 6.99988 14H7.99988C8.55216 14 8.99988 13.5523 8.99988 13V8H13.4999C13.776 8 13.9999 7.77614 13.9999 7.5C13.9999 7.22386 13.776 7 13.4999 7H8.99988V2C8.99988 1.44772 8.55216 1 7.99988 1L6.99988 1Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$6 = [\n \"color\"\n];\nvar AlignLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$6);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.499995 0.999995C0.223855 0.999995 -5.58458e-07 1.22385 -5.46388e-07 1.49999L-2.18554e-08 13.4999C-9.78492e-09 13.776 0.223855 13.9999 0.499995 13.9999C0.776136 13.9999 0.999991 13.776 0.999991 13.4999L0.999991 8.99993L12 8.99993C12.5523 8.99993 13 8.55222 13 7.99993L13 6.99994C13 6.44766 12.5523 5.99995 12 5.99995L0.999991 5.99995L0.999991 1.49999C0.999991 1.22385 0.776135 0.999995 0.499995 0.999995Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$7 = [\n \"color\"\n];\nvar AlignRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$7);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14.4999 1C14.2237 1 13.9999 1.22386 13.9999 1.5L13.9999 6L2.99988 6C2.44759 6 1.99988 6.44772 1.99988 7L1.99988 8C1.99988 8.55228 2.44759 9 2.99988 9L13.9999 9L13.9999 13.5C13.9999 13.7761 14.2237 14 14.4999 14C14.776 14 14.9999 13.7761 14.9999 13.5L14.9999 9L14.9999 6L14.9999 1.5C14.9999 1.22386 14.776 1 14.4999 1Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$8 = [\n \"color\"\n];\nvar AlignTopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$8);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.5 0C1.22386 0 1 0.223858 1 0.5C1 0.776142 1.22386 1 1.5 1H6V12C6 12.5523 6.44772 13 7 13H8C8.55228 13 9 12.5523 9 12V1H13.5C13.7761 1 14 0.776142 14 0.5C14 0.223858 13.7761 0 13.5 0H9H6H1.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$9 = [\n \"color\"\n];\nvar AllSidesIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$9);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 0.75L9.75 3H5.25L7.5 0.75ZM7.5 14.25L9.75 12H5.25L7.5 14.25ZM3 5.25L0.75 7.5L3 9.75V5.25ZM14.25 7.5L12 5.25V9.75L14.25 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$a = [\n \"color\"\n];\nvar AngleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$a);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.8914 2.1937C9.1158 2.35464 9.16725 2.66701 9.00631 2.89141L2.47388 12H13.5C13.7761 12 14 12.2239 14 12.5C14 12.7762 13.7761 13 13.5 13H1.5C1.31254 13 1.14082 12.8952 1.0552 12.7284C0.969578 12.5616 0.984438 12.361 1.09369 12.2086L8.19369 2.30862C8.35462 2.08422 8.667 2.03277 8.8914 2.1937ZM11.1 6.50001C11.1 6.22387 11.3238 6.00001 11.6 6.00001C11.8761 6.00001 12.1 6.22387 12.1 6.50001C12.1 6.77615 11.8761 7.00001 11.6 7.00001C11.3238 7.00001 11.1 6.77615 11.1 6.50001ZM10.4 4.00001C10.1239 4.00001 9.90003 4.22387 9.90003 4.50001C9.90003 4.77615 10.1239 5.00001 10.4 5.00001C10.6762 5.00001 10.9 4.77615 10.9 4.50001C10.9 4.22387 10.6762 4.00001 10.4 4.00001ZM12.1 8.50001C12.1 8.22387 12.3238 8.00001 12.6 8.00001C12.8761 8.00001 13.1 8.22387 13.1 8.50001C13.1 8.77615 12.8761 9.00001 12.6 9.00001C12.3238 9.00001 12.1 8.77615 12.1 8.50001ZM13.4 10C13.1239 10 12.9 10.2239 12.9 10.5C12.9 10.7761 13.1239 11 13.4 11C13.6762 11 13.9 10.7761 13.9 10.5C13.9 10.2239 13.6762 10 13.4 10Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$b = [\n \"color\"\n];\nvar ArchiveIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$b);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.30902 1C2.93025 1 2.58398 1.214 2.41459 1.55279L1.05279 4.27639C1.01807 4.34582 1 4.42238 1 4.5V13C1 13.5523 1.44772 14 2 14H13C13.5523 14 14 13.5523 14 13V4.5C14 4.42238 13.9819 4.34582 13.9472 4.27639L12.5854 1.55281C12.416 1.21403 12.0698 1.00003 11.691 1.00003L7.5 1.00001L3.30902 1ZM3.30902 2L7 2.00001V4H2.30902L3.30902 2ZM8 4V2.00002L11.691 2.00003L12.691 4H8ZM7.5 5H13V13H2V5H7.5ZM5.5 7C5.22386 7 5 7.22386 5 7.5C5 7.77614 5.22386 8 5.5 8H9.5C9.77614 8 10 7.77614 10 7.5C10 7.22386 9.77614 7 9.5 7H5.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$c = [\n \"color\"\n];\nvar ArrowBottomLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$c);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.3536 3.64644C11.5488 3.8417 11.5488 4.15828 11.3536 4.35354L4.70711 11L9 11C9.27614 11 9.5 11.2239 9.5 11.5C9.5 11.7761 9.27614 12 9 12L3.5 12C3.36739 12 3.24021 11.9473 3.14645 11.8536C3.05268 11.7598 3 11.6326 3 11.5L3 5.99999C3 5.72385 3.22386 5.49999 3.5 5.49999C3.77614 5.49999 4 5.72385 4 5.99999V10.2929L10.6464 3.64643C10.8417 3.45117 11.1583 3.45117 11.3536 3.64644Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$d = [\n \"color\"\n];\nvar ArrowBottomRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$d);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.64645 3.64644C3.45118 3.8417 3.45118 4.15828 3.64645 4.35354L10.2929 11L6 11C5.72386 11 5.5 11.2239 5.5 11.5C5.5 11.7761 5.72386 12 6 12L11.5 12C11.6326 12 11.7598 11.9473 11.8536 11.8536C11.9473 11.7598 12 11.6326 12 11.5L12 5.99999C12 5.72385 11.7761 5.49999 11.5 5.49999C11.2239 5.49999 11 5.72385 11 5.99999V10.2929L4.35355 3.64643C4.15829 3.45117 3.84171 3.45117 3.64645 3.64644Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$e = [\n \"color\"\n];\nvar ArrowDownIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$e);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 2C7.77614 2 8 2.22386 8 2.5L8 11.2929L11.1464 8.14645C11.3417 7.95118 11.6583 7.95118 11.8536 8.14645C12.0488 8.34171 12.0488 8.65829 11.8536 8.85355L7.85355 12.8536C7.75979 12.9473 7.63261 13 7.5 13C7.36739 13 7.24021 12.9473 7.14645 12.8536L3.14645 8.85355C2.95118 8.65829 2.95118 8.34171 3.14645 8.14645C3.34171 7.95118 3.65829 7.95118 3.85355 8.14645L7 11.2929L7 2.5C7 2.22386 7.22386 2 7.5 2Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$f = [\n \"color\"\n];\nvar ArrowLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$f);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.85355 3.14645C7.04882 3.34171 7.04882 3.65829 6.85355 3.85355L3.70711 7H12.5C12.7761 7 13 7.22386 13 7.5C13 7.77614 12.7761 8 12.5 8H3.70711L6.85355 11.1464C7.04882 11.3417 7.04882 11.6583 6.85355 11.8536C6.65829 12.0488 6.34171 12.0488 6.14645 11.8536L2.14645 7.85355C1.95118 7.65829 1.95118 7.34171 2.14645 7.14645L6.14645 3.14645C6.34171 2.95118 6.65829 2.95118 6.85355 3.14645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$g = [\n \"color\"\n];\nvar ArrowRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$g);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.14645 3.14645C8.34171 2.95118 8.65829 2.95118 8.85355 3.14645L12.8536 7.14645C13.0488 7.34171 13.0488 7.65829 12.8536 7.85355L8.85355 11.8536C8.65829 12.0488 8.34171 12.0488 8.14645 11.8536C7.95118 11.6583 7.95118 11.3417 8.14645 11.1464L11.2929 8H2.5C2.22386 8 2 7.77614 2 7.5C2 7.22386 2.22386 7 2.5 7H11.2929L8.14645 3.85355C7.95118 3.65829 7.95118 3.34171 8.14645 3.14645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$h = [\n \"color\"\n];\nvar ArrowTopLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$h);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.3536 11.3536C11.5488 11.1583 11.5488 10.8417 11.3536 10.6465L4.70711 4L9 4C9.27614 4 9.5 3.77614 9.5 3.5C9.5 3.22386 9.27614 3 9 3L3.5 3C3.36739 3 3.24021 3.05268 3.14645 3.14645C3.05268 3.24022 3 3.36739 3 3.5L3 9.00001C3 9.27615 3.22386 9.50001 3.5 9.50001C3.77614 9.50001 4 9.27615 4 9.00001V4.70711L10.6464 11.3536C10.8417 11.5488 11.1583 11.5488 11.3536 11.3536Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$i = [\n \"color\"\n];\nvar ArrowTopRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$i);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.64645 11.3536C3.45118 11.1583 3.45118 10.8417 3.64645 10.6465L10.2929 4L6 4C5.72386 4 5.5 3.77614 5.5 3.5C5.5 3.22386 5.72386 3 6 3L11.5 3C11.6326 3 11.7598 3.05268 11.8536 3.14645C11.9473 3.24022 12 3.36739 12 3.5L12 9.00001C12 9.27615 11.7761 9.50001 11.5 9.50001C11.2239 9.50001 11 9.27615 11 9.00001V4.70711L4.35355 11.3536C4.15829 11.5488 3.84171 11.5488 3.64645 11.3536Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$j = [\n \"color\"\n];\nvar ArrowUpIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$j);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.14645 2.14645C7.34171 1.95118 7.65829 1.95118 7.85355 2.14645L11.8536 6.14645C12.0488 6.34171 12.0488 6.65829 11.8536 6.85355C11.6583 7.04882 11.3417 7.04882 11.1464 6.85355L8 3.70711L8 12.5C8 12.7761 7.77614 13 7.5 13C7.22386 13 7 12.7761 7 12.5L7 3.70711L3.85355 6.85355C3.65829 7.04882 3.34171 7.04882 3.14645 6.85355C2.95118 6.65829 2.95118 6.34171 3.14645 6.14645L7.14645 2.14645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$k = [\n \"color\"\n];\nvar AspectRatioIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$k);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.5 2H12.5C12.7761 2 13 2.22386 13 2.5V12.5C13 12.7761 12.7761 13 12.5 13H2.5C2.22386 13 2 12.7761 2 12.5V2.5C2 2.22386 2.22386 2 2.5 2ZM1 2.5C1 1.67157 1.67157 1 2.5 1H12.5C13.3284 1 14 1.67157 14 2.5V12.5C14 13.3284 13.3284 14 12.5 14H2.5C1.67157 14 1 13.3284 1 12.5V2.5ZM7.5 4C7.77614 4 8 3.77614 8 3.5C8 3.22386 7.77614 3 7.5 3C7.22386 3 7 3.22386 7 3.5C7 3.77614 7.22386 4 7.5 4ZM8 5.5C8 5.77614 7.77614 6 7.5 6C7.22386 6 7 5.77614 7 5.5C7 5.22386 7.22386 5 7.5 5C7.77614 5 8 5.22386 8 5.5ZM7.5 8C7.77614 8 8 7.77614 8 7.5C8 7.22386 7.77614 7 7.5 7C7.22386 7 7 7.22386 7 7.5C7 7.77614 7.22386 8 7.5 8ZM10 7.5C10 7.77614 9.77614 8 9.5 8C9.22386 8 9 7.77614 9 7.5C9 7.22386 9.22386 7 9.5 7C9.77614 7 10 7.22386 10 7.5ZM11.5 8C11.7761 8 12 7.77614 12 7.5C12 7.22386 11.7761 7 11.5 7C11.2239 7 11 7.22386 11 7.5C11 7.77614 11.2239 8 11.5 8Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$l = [\n \"color\"\n];\nvar AvatarIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$l);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877014 7.49988C0.877014 3.84219 3.84216 0.877045 7.49985 0.877045C11.1575 0.877045 14.1227 3.84219 14.1227 7.49988C14.1227 11.1575 11.1575 14.1227 7.49985 14.1227C3.84216 14.1227 0.877014 11.1575 0.877014 7.49988ZM7.49985 1.82704C4.36683 1.82704 1.82701 4.36686 1.82701 7.49988C1.82701 8.97196 2.38774 10.3131 3.30727 11.3213C4.19074 9.94119 5.73818 9.02499 7.50023 9.02499C9.26206 9.02499 10.8093 9.94097 11.6929 11.3208C12.6121 10.3127 13.1727 8.97172 13.1727 7.49988C13.1727 4.36686 10.6328 1.82704 7.49985 1.82704ZM10.9818 11.9787C10.2839 10.7795 8.9857 9.97499 7.50023 9.97499C6.01458 9.97499 4.71624 10.7797 4.01845 11.9791C4.97952 12.7272 6.18765 13.1727 7.49985 13.1727C8.81227 13.1727 10.0206 12.727 10.9818 11.9787ZM5.14999 6.50487C5.14999 5.207 6.20212 4.15487 7.49999 4.15487C8.79786 4.15487 9.84999 5.207 9.84999 6.50487C9.84999 7.80274 8.79786 8.85487 7.49999 8.85487C6.20212 8.85487 5.14999 7.80274 5.14999 6.50487ZM7.49999 5.10487C6.72679 5.10487 6.09999 5.73167 6.09999 6.50487C6.09999 7.27807 6.72679 7.90487 7.49999 7.90487C8.27319 7.90487 8.89999 7.27807 8.89999 6.50487C8.89999 5.73167 8.27319 5.10487 7.49999 5.10487Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$m = [\n \"color\"\n];\nvar BackpackIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$m);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 1C5 0.447715 5.44772 0 6 0H9C9.55228 0 10 0.447715 10 1V2H14C14.5523 2 15 2.44772 15 3V6C15 6.8888 14.6131 7.68734 14 8.23608V11.5C14 12.3284 13.3284 13 12.5 13H2.5C1.67157 13 1 12.3284 1 11.5V8.2359C0.38697 7.68721 0 6.88883 0 6V3C0 2.44772 0.447716 2 1 2H5V1ZM9 1V2H6V1H9ZM1 3H5H5.5H9.5H10H14V6C14 6.654 13.6866 7.23467 13.1997 7.6004C12.8655 7.85144 12.4508 8 12 8H8V7.5C8 7.22386 7.77614 7 7.5 7C7.22386 7 7 7.22386 7 7.5V8H3C2.5493 8 2.1346 7.85133 1.80029 7.60022C1.31335 7.23446 1 6.65396 1 6V3ZM7 9H3C2.64961 9 2.31292 8.93972 2 8.82905V11.5C2 11.7761 2.22386 12 2.5 12H12.5C12.7761 12 13 11.7761 13 11.5V8.82915C12.6871 8.93978 12.3504 9 12 9H8V9.5C8 9.77614 7.77614 10 7.5 10C7.22386 10 7 9.77614 7 9.5V9Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$n = [\n \"color\"\n];\nvar BadgeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$n);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.5 6H11.5C12.3284 6 13 6.67157 13 7.5C13 8.32843 12.3284 9 11.5 9H3.5C2.67157 9 2 8.32843 2 7.5C2 6.67157 2.67157 6 3.5 6ZM1 7.5C1 6.11929 2.11929 5 3.5 5H11.5C12.8807 5 14 6.11929 14 7.5C14 8.88071 12.8807 10 11.5 10H3.5C2.11929 10 1 8.88071 1 7.5ZM4.5 7C4.22386 7 4 7.22386 4 7.5C4 7.77614 4.22386 8 4.5 8H10.5C10.7761 8 11 7.77614 11 7.5C11 7.22386 10.7761 7 10.5 7H4.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$o = [\n \"color\"\n];\nvar BarChartIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$o);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.5 1C11.7761 1 12 1.22386 12 1.5V13.5C12 13.7761 11.7761 14 11.5 14C11.2239 14 11 13.7761 11 13.5V1.5C11 1.22386 11.2239 1 11.5 1ZM9.5 3C9.77614 3 10 3.22386 10 3.5V13.5C10 13.7761 9.77614 14 9.5 14C9.22386 14 9 13.7761 9 13.5V3.5C9 3.22386 9.22386 3 9.5 3ZM13.5 3C13.7761 3 14 3.22386 14 3.5V13.5C14 13.7761 13.7761 14 13.5 14C13.2239 14 13 13.7761 13 13.5V3.5C13 3.22386 13.2239 3 13.5 3ZM5.5 4C5.77614 4 6 4.22386 6 4.5V13.5C6 13.7761 5.77614 14 5.5 14C5.22386 14 5 13.7761 5 13.5V4.5C5 4.22386 5.22386 4 5.5 4ZM1.5 5C1.77614 5 2 5.22386 2 5.5V13.5C2 13.7761 1.77614 14 1.5 14C1.22386 14 1 13.7761 1 13.5V5.5C1 5.22386 1.22386 5 1.5 5ZM7.5 5C7.77614 5 8 5.22386 8 5.5V13.5C8 13.7761 7.77614 14 7.5 14C7.22386 14 7 13.7761 7 13.5V5.5C7 5.22386 7.22386 5 7.5 5ZM3.5 7C3.77614 7 4 7.22386 4 7.5V13.5C4 13.7761 3.77614 14 3.5 14C3.22386 14 3 13.7761 3 13.5V7.5C3 7.22386 3.22386 7 3.5 7Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$p = [\n \"color\"\n];\nvar BellIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$p);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.60124 1.25086C8.60124 1.75459 8.26278 2.17927 7.80087 2.30989C10.1459 2.4647 12 4.41582 12 6.79999V10.25C12 11.0563 12.0329 11.7074 12.7236 12.0528C12.931 12.1565 13.0399 12.3892 12.9866 12.6149C12.9333 12.8406 12.7319 13 12.5 13H8.16144C8.36904 13.1832 8.49997 13.4513 8.49997 13.75C8.49997 14.3023 8.05226 14.75 7.49997 14.75C6.94769 14.75 6.49997 14.3023 6.49997 13.75C6.49997 13.4513 6.63091 13.1832 6.83851 13H2.49999C2.2681 13 2.06664 12.8406 2.01336 12.6149C1.96009 12.3892 2.06897 12.1565 2.27638 12.0528C2.96708 11.7074 2.99999 11.0563 2.99999 10.25V6.79999C2.99999 4.41537 4.85481 2.46396 7.20042 2.3098C6.73867 2.17908 6.40036 1.75448 6.40036 1.25086C6.40036 0.643104 6.89304 0.150421 7.5008 0.150421C8.10855 0.150421 8.60124 0.643104 8.60124 1.25086ZM7.49999 3.29999C5.56699 3.29999 3.99999 4.86699 3.99999 6.79999V10.25L4.00002 10.3009C4.0005 10.7463 4.00121 11.4084 3.69929 12H11.3007C10.9988 11.4084 10.9995 10.7463 11 10.3009L11 10.25V6.79999C11 4.86699 9.43299 3.29999 7.49999 3.29999Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$q = [\n \"color\"\n];\nvar BlendingModeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 9C3 6.5 4.5 4.25 7.5 1.5C10.5 4.25 12 6.5 12 9C12 11.4853 9.98528 13.5 7.5 13.5C5.01472 13.5 3 11.4853 3 9ZM10.9524 8.30307C9.67347 7.82121 8.2879 8.46208 6.98956 9.06259C5.9327 9.55142 4.93365 10.0135 4.09695 9.82153C4.03357 9.55804 4 9.28294 4 9C4 7.11203 5.02686 5.27195 7.5 2.87357C9.66837 4.97639 10.725 6.65004 10.9524 8.30307Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$r = [\n \"color\"\n];\nvar BookmarkIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$r);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 2.5C3 2.22386 3.22386 2 3.5 2H11.5C11.7761 2 12 2.22386 12 2.5V13.5C12 13.6818 11.9014 13.8492 11.7424 13.9373C11.5834 14.0254 11.3891 14.0203 11.235 13.924L7.5 11.5896L3.765 13.924C3.61087 14.0203 3.41659 14.0254 3.25762 13.9373C3.09864 13.8492 3 13.6818 3 13.5V2.5ZM4 3V12.5979L6.97 10.7416C7.29427 10.539 7.70573 10.539 8.03 10.7416L11 12.5979V3H4Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$s = [\n \"color\"\n];\nvar BookmarkFilledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$s);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.5 2C3.22386 2 3 2.22386 3 2.5V13.5C3 13.6818 3.09864 13.8492 3.25762 13.9373C3.41659 14.0254 3.61087 14.0203 3.765 13.924L7.5 11.5896L11.235 13.924C11.3891 14.0203 11.5834 14.0254 11.7424 13.9373C11.9014 13.8492 12 13.6818 12 13.5V2.5C12 2.22386 11.7761 2 11.5 2H3.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$t = [\n \"color\"\n];\nvar BorderAllIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$t);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.25 1C0.25 0.585786 0.585786 0.25 1 0.25H14C14.4142 0.25 14.75 0.585786 14.75 1V14C14.75 14.4142 14.4142 14.75 14 14.75H1C0.585786 14.75 0.25 14.4142 0.25 14V1ZM1.75 1.75V13.25H13.25V1.75H1.75Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"5\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"3\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"5\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"3\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"9\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"11\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"9\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"11\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }));\n});\nvar _excluded$u = [\n \"color\"\n];\nvar BorderBottomIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$u);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 13.25L14 13.25V14.75L1 14.75V13.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"5\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"5\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"3\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"3\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"5\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"5\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"3\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"3\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"9\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"9\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"11\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"11\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"9\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"9\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"11\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"11\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"5\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"3\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"9\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"11\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }));\n});\nvar _excluded$v = [\n \"color\"\n];\nvar BorderDashedIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$v);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0 7.5C0 7.22386 0.223858 7 0.5 7H3C3.27614 7 3.5 7.22386 3.5 7.5C3.5 7.77614 3.27614 8 3 8H0.5C0.223858 8 0 7.77614 0 7.5ZM5.75 7.5C5.75 7.22386 5.97386 7 6.25 7H8.75C9.02614 7 9.25 7.22386 9.25 7.5C9.25 7.77614 9.02614 8 8.75 8H6.25C5.97386 8 5.75 7.77614 5.75 7.5ZM12 7C11.7239 7 11.5 7.22386 11.5 7.5C11.5 7.77614 11.7239 8 12 8H14.5C14.7761 8 15 7.77614 15 7.5C15 7.22386 14.7761 7 14.5 7H12Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$w = [\n \"color\"\n];\nvar BorderDottedIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$w);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.5 6.625C1.01675 6.625 0.625 7.01675 0.625 7.5C0.625 7.98325 1.01675 8.375 1.5 8.375C1.98325 8.375 2.375 7.98325 2.375 7.5C2.375 7.01675 1.98325 6.625 1.5 6.625ZM5.5 6.625C5.01675 6.625 4.625 7.01675 4.625 7.5C4.625 7.98325 5.01675 8.375 5.5 8.375C5.98325 8.375 6.375 7.98325 6.375 7.5C6.375 7.01675 5.98325 6.625 5.5 6.625ZM9.5 6.625C9.01675 6.625 8.625 7.01675 8.625 7.5C8.625 7.98325 9.01675 8.375 9.5 8.375C9.98325 8.375 10.375 7.98325 10.375 7.5C10.375 7.01675 9.98325 6.625 9.5 6.625ZM12.625 7.5C12.625 7.01675 13.0168 6.625 13.5 6.625C13.9832 6.625 14.375 7.01675 14.375 7.5C14.375 7.98325 13.9832 8.375 13.5 8.375C13.0168 8.375 12.625 7.98325 12.625 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$x = [\n \"color\"\n];\nvar BorderLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$x);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.75 1L1.75 14L0.249999 14L0.25 1L1.75 1Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"10\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 10 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"10\",\n y: \"13\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 10 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"12\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 12 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"12\",\n y: \"13\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 12 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 8 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 14 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"13\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 8 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"13\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 14 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"5\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 8 5)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"5\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 14 5)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"3\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 8 3)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"3\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 14 3)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"9\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 8 9)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"9\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 14 9)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"11\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 8 11)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"11\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 14 11)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"6\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 6 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"6\",\n y: \"13\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 6 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"4\",\n y: \"7\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 4 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"4\",\n y: \"13\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 4 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"10\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 10 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"12\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 12 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 8 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 14 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"6\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 6 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"4\",\n y: \"1\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(90 4 1)\",\n fill: color\n }));\n});\nvar _excluded$y = [\n \"color\"\n];\nvar BorderNoneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"5.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"5.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"3.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"3.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"5\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"5\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"5\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"3\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"3\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"3\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"9\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"9\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"9\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"11\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"11\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"11\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"9.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"9.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"11.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"11.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"5.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"3.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"9.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"11.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }));\n});\nvar _excluded$z = [\n \"color\"\n];\nvar BorderRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.25 1L13.25 14L14.75 14L14.75 1L13.25 1Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 5 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 5 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 3 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 3 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 7 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 1 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 7 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 1 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 7 5)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 1 5)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 7 3)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 1 3)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 7 9)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 1 9)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 7 11)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 1 11)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 9 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 9 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 11 7)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 11 13)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 5 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 3 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 7 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 1 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 9 1)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"matrix(0 1 1 0 11 1)\",\n fill: color\n }));\n});\nvar _excluded$A = [\n \"color\"\n];\nvar BorderSolidIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$A);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.25 7.5C1.25 7.22386 1.47386 7 1.75 7H13.25C13.5261 7 13.75 7.22386 13.75 7.5C13.75 7.77614 13.5261 8 13.25 8H1.75C1.47386 8 1.25 7.77614 1.25 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$B = [\n \"color\"\n];\nvar BorderSplitIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$B);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"5.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"3.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"13.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"1.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"13\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"5\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"3\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"9\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"11\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"9.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"7\",\n y: \"11.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"1\",\n y: \"7.025\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 1.49994C1 1.2238 1.22386 0.999939 1.5 0.999939H6V1.99994H2V5.99994H1V1.49994ZM13 1.99994H9V0.999939H13.5C13.7761 0.999939 14 1.2238 14 1.49994V5.99994H13V1.99994ZM1 13.4999V8.99994H2V12.9999H6V13.9999H1.5C1.22386 13.9999 1 13.7761 1 13.4999ZM13 12.9999V8.99994H14V13.4999C14 13.7761 13.7761 13.9999 13.5 13.9999H9.5V12.9999H13Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$C = [\n \"color\"\n];\nvar BorderStyleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$C);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.5 3C1.22386 3 1 3.22386 1 3.5C1 3.77614 1.22386 4 1.5 4H13.5C13.7761 4 14 3.77614 14 3.5C14 3.22386 13.7761 3 13.5 3H1.5ZM1 7.5C1 7.22386 1.22386 7 1.5 7H3.5C3.77614 7 4 7.22386 4 7.5C4 7.77614 3.77614 8 3.5 8H1.5C1.22386 8 1 7.77614 1 7.5ZM1 11.5C1 11.2239 1.22386 11 1.5 11C1.77614 11 2 11.2239 2 11.5C2 11.7761 1.77614 12 1.5 12C1.22386 12 1 11.7761 1 11.5ZM3 11.5C3 11.2239 3.22386 11 3.5 11C3.77614 11 4 11.2239 4 11.5C4 11.7761 3.77614 12 3.5 12C3.22386 12 3 11.7761 3 11.5ZM5.5 11C5.22386 11 5 11.2239 5 11.5C5 11.7761 5.22386 12 5.5 12C5.77614 12 6 11.7761 6 11.5C6 11.2239 5.77614 11 5.5 11ZM7 11.5C7 11.2239 7.22386 11 7.5 11C7.77614 11 8 11.2239 8 11.5C8 11.7761 7.77614 12 7.5 12C7.22386 12 7 11.7761 7 11.5ZM9.5 11C9.22386 11 9 11.2239 9 11.5C9 11.7761 9.22386 12 9.5 12C9.77614 12 10 11.7761 10 11.5C10 11.2239 9.77614 11 9.5 11ZM11 11.5C11 11.2239 11.2239 11 11.5 11C11.7761 11 12 11.2239 12 11.5C12 11.7761 11.7761 12 11.5 12C11.2239 12 11 11.7761 11 11.5ZM13.5 11C13.2239 11 13 11.2239 13 11.5C13 11.7761 13.2239 12 13.5 12C13.7761 12 14 11.7761 14 11.5C14 11.2239 13.7761 11 13.5 11ZM6.5 7C6.22386 7 6 7.22386 6 7.5C6 7.77614 6.22386 8 6.5 8H8.5C8.77614 8 9 7.77614 9 7.5C9 7.22386 8.77614 7 8.5 7H6.5ZM11 7.5C11 7.22386 11.2239 7 11.5 7H13.5C13.7761 7 14 7.22386 14 7.5C14 7.77614 13.7761 8 13.5 8H11.5C11.2239 8 11 7.77614 11 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$D = [\n \"color\"\n];\nvar BorderTopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$D);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14 1.75L1 1.75L1 0.249999L14 0.25L14 1.75Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"10\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 8 10)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"2\",\n y: \"10\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 2 10)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"12\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 8 12)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"2\",\n y: \"12\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 2 12)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"8\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 8 8)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"14\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 8 14)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"2\",\n y: \"8\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 2 8)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"2\",\n y: \"14\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 2 14)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"10\",\n y: \"8\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 10 8)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"10\",\n y: \"14\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 10 14)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"12\",\n y: \"8\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 12 8)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"12\",\n y: \"14\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 12 14)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"6\",\n y: \"8\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 6 8)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"6\",\n y: \"14\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 6 14)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"4\",\n y: \"8\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 4 8)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"4\",\n y: \"14\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 4 14)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"6\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 8 6)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"2\",\n y: \"6\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 2 6)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"8\",\n y: \"4\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 8 4)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"2\",\n y: \"4\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 2 4)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"10\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 14 10)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"12\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 14 12)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"8\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 14 8)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"14\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 14 14)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"6\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 14 6)\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"rect\", {\n x: \"14\",\n y: \"4\",\n width: \"1\",\n height: \"1\",\n rx: \".5\",\n transform: \"rotate(-180 14 4)\",\n fill: color\n }));\n});\nvar _excluded$E = [\n \"color\"\n];\nvar BorderWidthIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$E);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 3H14V4H1V3ZM1 6H14V8H1V6ZM14 10.25H1V12.75H14V10.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$F = [\n \"color\"\n];\nvar BoxIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$F);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.5 2H2.5C2.22386 2 2 2.22386 2 2.5V12.5C2 12.7761 2.22386 13 2.5 13H12.5C12.7761 13 13 12.7761 13 12.5V2.5C13 2.22386 12.7761 2 12.5 2ZM2.5 1C1.67157 1 1 1.67157 1 2.5V12.5C1 13.3284 1.67157 14 2.5 14H12.5C13.3284 14 14 13.3284 14 12.5V2.5C14 1.67157 13.3284 1 12.5 1H2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$G = [\n \"color\"\n];\nvar BoxModelIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$G);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.99998 0.999976C1.44769 0.999976 0.999976 1.44769 0.999976 1.99998V13C0.999976 13.5523 1.44769 14 1.99998 14H13C13.5523 14 14 13.5523 14 13V1.99998C14 1.44769 13.5523 0.999976 13 0.999976H1.99998ZM1.99998 1.99998L13 1.99998V13H1.99998V1.99998ZM4.49996 3.99996C4.22382 3.99996 3.99996 4.22382 3.99996 4.49996V10.5C3.99996 10.7761 4.22382 11 4.49996 11H10.5C10.7761 11 11 10.7761 11 10.5V4.49996C11 4.22382 10.7761 3.99996 10.5 3.99996H4.49996ZM4.99996 9.99996V4.99996H9.99996V9.99996H4.99996Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$H = [\n \"color\"\n];\nvar ButtonIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$H);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 5H13C13.5523 5 14 5.44772 14 6V9C14 9.55228 13.5523 10 13 10H2C1.44772 10 1 9.55228 1 9V6C1 5.44772 1.44772 5 2 5ZM0 6C0 4.89543 0.895431 4 2 4H13C14.1046 4 15 4.89543 15 6V9C15 10.1046 14.1046 11 13 11H2C0.89543 11 0 10.1046 0 9V6ZM4.5 6.75C4.08579 6.75 3.75 7.08579 3.75 7.5C3.75 7.91421 4.08579 8.25 4.5 8.25C4.91421 8.25 5.25 7.91421 5.25 7.5C5.25 7.08579 4.91421 6.75 4.5 6.75ZM6.75 7.5C6.75 7.08579 7.08579 6.75 7.5 6.75C7.91421 6.75 8.25 7.08579 8.25 7.5C8.25 7.91421 7.91421 8.25 7.5 8.25C7.08579 8.25 6.75 7.91421 6.75 7.5ZM10.5 6.75C10.0858 6.75 9.75 7.08579 9.75 7.5C9.75 7.91421 10.0858 8.25 10.5 8.25C10.9142 8.25 11.25 7.91421 11.25 7.5C11.25 7.08579 10.9142 6.75 10.5 6.75Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$I = [\n \"color\"\n];\nvar CalendarIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$I);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.5 1C4.77614 1 5 1.22386 5 1.5V2H10V1.5C10 1.22386 10.2239 1 10.5 1C10.7761 1 11 1.22386 11 1.5V2H12.5C13.3284 2 14 2.67157 14 3.5V12.5C14 13.3284 13.3284 14 12.5 14H2.5C1.67157 14 1 13.3284 1 12.5V3.5C1 2.67157 1.67157 2 2.5 2H4V1.5C4 1.22386 4.22386 1 4.5 1ZM10 3V3.5C10 3.77614 10.2239 4 10.5 4C10.7761 4 11 3.77614 11 3.5V3H12.5C12.7761 3 13 3.22386 13 3.5V5H2V3.5C2 3.22386 2.22386 3 2.5 3H4V3.5C4 3.77614 4.22386 4 4.5 4C4.77614 4 5 3.77614 5 3.5V3H10ZM2 6V12.5C2 12.7761 2.22386 13 2.5 13H12.5C12.7761 13 13 12.7761 13 12.5V6H2ZM7 7.5C7 7.22386 7.22386 7 7.5 7C7.77614 7 8 7.22386 8 7.5C8 7.77614 7.77614 8 7.5 8C7.22386 8 7 7.77614 7 7.5ZM9.5 7C9.22386 7 9 7.22386 9 7.5C9 7.77614 9.22386 8 9.5 8C9.77614 8 10 7.77614 10 7.5C10 7.22386 9.77614 7 9.5 7ZM11 7.5C11 7.22386 11.2239 7 11.5 7C11.7761 7 12 7.22386 12 7.5C12 7.77614 11.7761 8 11.5 8C11.2239 8 11 7.77614 11 7.5ZM11.5 9C11.2239 9 11 9.22386 11 9.5C11 9.77614 11.2239 10 11.5 10C11.7761 10 12 9.77614 12 9.5C12 9.22386 11.7761 9 11.5 9ZM9 9.5C9 9.22386 9.22386 9 9.5 9C9.77614 9 10 9.22386 10 9.5C10 9.77614 9.77614 10 9.5 10C9.22386 10 9 9.77614 9 9.5ZM7.5 9C7.22386 9 7 9.22386 7 9.5C7 9.77614 7.22386 10 7.5 10C7.77614 10 8 9.77614 8 9.5C8 9.22386 7.77614 9 7.5 9ZM5 9.5C5 9.22386 5.22386 9 5.5 9C5.77614 9 6 9.22386 6 9.5C6 9.77614 5.77614 10 5.5 10C5.22386 10 5 9.77614 5 9.5ZM3.5 9C3.22386 9 3 9.22386 3 9.5C3 9.77614 3.22386 10 3.5 10C3.77614 10 4 9.77614 4 9.5C4 9.22386 3.77614 9 3.5 9ZM3 11.5C3 11.2239 3.22386 11 3.5 11C3.77614 11 4 11.2239 4 11.5C4 11.7761 3.77614 12 3.5 12C3.22386 12 3 11.7761 3 11.5ZM5.5 11C5.22386 11 5 11.2239 5 11.5C5 11.7761 5.22386 12 5.5 12C5.77614 12 6 11.7761 6 11.5C6 11.2239 5.77614 11 5.5 11ZM7 11.5C7 11.2239 7.22386 11 7.5 11C7.77614 11 8 11.2239 8 11.5C8 11.7761 7.77614 12 7.5 12C7.22386 12 7 11.7761 7 11.5ZM9.5 11C9.22386 11 9 11.2239 9 11.5C9 11.7761 9.22386 12 9.5 12C9.77614 12 10 11.7761 10 11.5C10 11.2239 9.77614 11 9.5 11Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$J = [\n \"color\"\n];\nvar CameraIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$J);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 3C1.44772 3 1 3.44772 1 4V11C1 11.5523 1.44772 12 2 12H13C13.5523 12 14 11.5523 14 11V4C14 3.44772 13.5523 3 13 3H2ZM0 4C0 2.89543 0.895431 2 2 2H13C14.1046 2 15 2.89543 15 4V11C15 12.1046 14.1046 13 13 13H2C0.895431 13 0 12.1046 0 11V4ZM2 4.25C2 4.11193 2.11193 4 2.25 4H4.75C4.88807 4 5 4.11193 5 4.25V5.75454C5 5.89261 4.88807 6.00454 4.75 6.00454H2.25C2.11193 6.00454 2 5.89261 2 5.75454V4.25ZM12.101 7.58421C12.101 9.02073 10.9365 10.1853 9.49998 10.1853C8.06346 10.1853 6.89893 9.02073 6.89893 7.58421C6.89893 6.14769 8.06346 4.98315 9.49998 4.98315C10.9365 4.98315 12.101 6.14769 12.101 7.58421ZM13.101 7.58421C13.101 9.57302 11.4888 11.1853 9.49998 11.1853C7.51117 11.1853 5.89893 9.57302 5.89893 7.58421C5.89893 5.5954 7.51117 3.98315 9.49998 3.98315C11.4888 3.98315 13.101 5.5954 13.101 7.58421Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$K = [\n \"color\"\n];\nvar CardStackIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$K);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 3.5C2 3.22386 2.22386 3 2.5 3H12.5C12.7761 3 13 3.22386 13 3.5V9.5C13 9.77614 12.7761 10 12.5 10H2.5C2.22386 10 2 9.77614 2 9.5V3.5ZM2 10.9146C1.4174 10.7087 1 10.1531 1 9.5V3.5C1 2.67157 1.67157 2 2.5 2H12.5C13.3284 2 14 2.67157 14 3.5V9.5C14 10.1531 13.5826 10.7087 13 10.9146V11.5C13 12.3284 12.3284 13 11.5 13H3.5C2.67157 13 2 12.3284 2 11.5V10.9146ZM12 11V11.5C12 11.7761 11.7761 12 11.5 12H3.5C3.22386 12 3 11.7761 3 11.5V11H12Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$L = [\n \"color\"\n];\nvar CardStackMinusIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$L);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.5 3C2.22386 3 2 3.22386 2 3.5V9.5C2 9.77614 2.22386 10 2.5 10H12.5C12.7761 10 13 9.77614 13 9.5V3.5C13 3.22386 12.7761 3 12.5 3H2.5ZM1 9.5C1 10.1531 1.4174 10.7087 2 10.9146V11.5C2 12.3284 2.67157 13 3.5 13H11.5C12.3284 13 13 12.3284 13 11.5V10.9146C13.5826 10.7087 14 10.1531 14 9.5V3.5C14 2.67157 13.3284 2 12.5 2H2.5C1.67157 2 1 2.67157 1 3.5V9.5ZM12 11.5V11H3V11.5C3 11.7761 3.22386 12 3.5 12H11.5C11.7761 12 12 11.7761 12 11.5ZM5.5 6C5.22386 6 5 6.22386 5 6.5C5 6.77614 5.22386 7 5.5 7H9.5C9.77614 7 10 6.77614 10 6.5C10 6.22386 9.77614 6 9.5 6H5.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$M = [\n \"color\"\n];\nvar CardStackPlusIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$M);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 3.5C2 3.22386 2.22386 3 2.5 3H12.5C12.7761 3 13 3.22386 13 3.5V9.5C13 9.77614 12.7761 10 12.5 10H2.5C2.22386 10 2 9.77614 2 9.5V3.5ZM2 10.9146C1.4174 10.7087 1 10.1531 1 9.5V3.5C1 2.67157 1.67157 2 2.5 2H12.5C13.3284 2 14 2.67157 14 3.5V9.5C14 10.1531 13.5826 10.7087 13 10.9146V11.5C13 12.3284 12.3284 13 11.5 13H3.5C2.67157 13 2 12.3284 2 11.5V10.9146ZM12 11V11.5C12 11.7761 11.7761 12 11.5 12H3.5C3.22386 12 3 11.7761 3 11.5V11H12ZM5 6.5C5 6.22386 5.22386 6 5.5 6H7V4.5C7 4.22386 7.22386 4 7.5 4C7.77614 4 8 4.22386 8 4.5V6H9.5C9.77614 6 10 6.22386 10 6.5C10 6.77614 9.77614 7 9.5 7H8V8.5C8 8.77614 7.77614 9 7.5 9C7.22386 9 7 8.77614 7 8.5V7H5.5C5.22386 7 5 6.77614 5 6.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$N = [\n \"color\"\n];\nvar CaretDownIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$N);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.18179 6.18181C4.35753 6.00608 4.64245 6.00608 4.81819 6.18181L7.49999 8.86362L10.1818 6.18181C10.3575 6.00608 10.6424 6.00608 10.8182 6.18181C10.9939 6.35755 10.9939 6.64247 10.8182 6.81821L7.81819 9.81821C7.73379 9.9026 7.61934 9.95001 7.49999 9.95001C7.38064 9.95001 7.26618 9.9026 7.18179 9.81821L4.18179 6.81821C4.00605 6.64247 4.00605 6.35755 4.18179 6.18181Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$O = [\n \"color\"\n];\nvar CaretLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$O);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.81809 4.18179C8.99383 4.35753 8.99383 4.64245 8.81809 4.81819L6.13629 7.49999L8.81809 10.1818C8.99383 10.3575 8.99383 10.6424 8.81809 10.8182C8.64236 10.9939 8.35743 10.9939 8.1817 10.8182L5.1817 7.81819C5.09731 7.73379 5.0499 7.61933 5.0499 7.49999C5.0499 7.38064 5.09731 7.26618 5.1817 7.18179L8.1817 4.18179C8.35743 4.00605 8.64236 4.00605 8.81809 4.18179Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$P = [\n \"color\"\n];\nvar CaretRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$P);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.18194 4.18185C6.35767 4.00611 6.6426 4.00611 6.81833 4.18185L9.81833 7.18185C9.90272 7.26624 9.95013 7.3807 9.95013 7.50005C9.95013 7.6194 9.90272 7.73386 9.81833 7.81825L6.81833 10.8182C6.6426 10.994 6.35767 10.994 6.18194 10.8182C6.0062 10.6425 6.0062 10.3576 6.18194 10.1819L8.86374 7.50005L6.18194 4.81825C6.0062 4.64251 6.0062 4.35759 6.18194 4.18185Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$Q = [\n \"color\"\n];\nvar CaretSortIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$Q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.93179 5.43179C4.75605 5.60753 4.75605 5.89245 4.93179 6.06819C5.10753 6.24392 5.39245 6.24392 5.56819 6.06819L7.49999 4.13638L9.43179 6.06819C9.60753 6.24392 9.89245 6.24392 10.0682 6.06819C10.2439 5.89245 10.2439 5.60753 10.0682 5.43179L7.81819 3.18179C7.73379 3.0974 7.61933 3.04999 7.49999 3.04999C7.38064 3.04999 7.26618 3.0974 7.18179 3.18179L4.93179 5.43179ZM10.0682 9.56819C10.2439 9.39245 10.2439 9.10753 10.0682 8.93179C9.89245 8.75606 9.60753 8.75606 9.43179 8.93179L7.49999 10.8636L5.56819 8.93179C5.39245 8.75606 5.10753 8.75606 4.93179 8.93179C4.75605 9.10753 4.75605 9.39245 4.93179 9.56819L7.18179 11.8182C7.35753 11.9939 7.64245 11.9939 7.81819 11.8182L10.0682 9.56819Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$R = [\n \"color\"\n];\nvar CaretUpIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$R);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.18179 8.81819C4.00605 8.64245 4.00605 8.35753 4.18179 8.18179L7.18179 5.18179C7.26618 5.0974 7.38064 5.04999 7.49999 5.04999C7.61933 5.04999 7.73379 5.0974 7.81819 5.18179L10.8182 8.18179C10.9939 8.35753 10.9939 8.64245 10.8182 8.81819C10.6424 8.99392 10.3575 8.99392 10.1818 8.81819L7.49999 6.13638L4.81819 8.81819C4.64245 8.99392 4.35753 8.99392 4.18179 8.81819Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$S = [\n \"color\"\n];\nvar ChatBubbleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$S);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.5 3L2.5 3.00002C1.67157 3.00002 1 3.6716 1 4.50002V9.50003C1 10.3285 1.67157 11 2.5 11H7.50003C7.63264 11 7.75982 11.0527 7.85358 11.1465L10 13.2929V11.5C10 11.2239 10.2239 11 10.5 11H12.5C13.3284 11 14 10.3285 14 9.50003V4.5C14 3.67157 13.3284 3 12.5 3ZM2.49999 2.00002L12.5 2C13.8807 2 15 3.11929 15 4.5V9.50003C15 10.8807 13.8807 12 12.5 12H11V14.5C11 14.7022 10.8782 14.8845 10.6913 14.9619C10.5045 15.0393 10.2894 14.9965 10.1464 14.8536L7.29292 12H2.5C1.11929 12 0 10.8807 0 9.50003V4.50002C0 3.11931 1.11928 2.00003 2.49999 2.00002Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$T = [\n \"color\"\n];\nvar CheckIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$T);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.4669 3.72684C11.7558 3.91574 11.8369 4.30308 11.648 4.59198L7.39799 11.092C7.29783 11.2452 7.13556 11.3467 6.95402 11.3699C6.77247 11.3931 6.58989 11.3355 6.45446 11.2124L3.70446 8.71241C3.44905 8.48022 3.43023 8.08494 3.66242 7.82953C3.89461 7.57412 4.28989 7.55529 4.5453 7.78749L6.75292 9.79441L10.6018 3.90792C10.7907 3.61902 11.178 3.53795 11.4669 3.72684Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$U = [\n \"color\"\n];\nvar CheckCircledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$U);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.877045C3.84222 0.877045 0.877075 3.84219 0.877075 7.49988C0.877075 11.1575 3.84222 14.1227 7.49991 14.1227C11.1576 14.1227 14.1227 11.1575 14.1227 7.49988C14.1227 3.84219 11.1576 0.877045 7.49991 0.877045ZM1.82708 7.49988C1.82708 4.36686 4.36689 1.82704 7.49991 1.82704C10.6329 1.82704 13.1727 4.36686 13.1727 7.49988C13.1727 10.6329 10.6329 13.1727 7.49991 13.1727C4.36689 13.1727 1.82708 10.6329 1.82708 7.49988ZM10.1589 5.53774C10.3178 5.31191 10.2636 5.00001 10.0378 4.84109C9.81194 4.68217 9.50004 4.73642 9.34112 4.96225L6.51977 8.97154L5.35681 7.78706C5.16334 7.59002 4.84677 7.58711 4.64973 7.78058C4.45268 7.97404 4.44978 8.29061 4.64325 8.48765L6.22658 10.1003C6.33054 10.2062 6.47617 10.2604 6.62407 10.2483C6.77197 10.2363 6.90686 10.1591 6.99226 10.0377L10.1589 5.53774Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$V = [\n \"color\"\n];\nvar CheckboxIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$V);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 3H12V12H3L3 3ZM2 3C2 2.44771 2.44772 2 3 2H12C12.5523 2 13 2.44772 13 3V12C13 12.5523 12.5523 13 12 13H3C2.44771 13 2 12.5523 2 12V3ZM10.3498 5.51105C10.506 5.28337 10.4481 4.97212 10.2204 4.81587C9.99275 4.65961 9.6815 4.71751 9.52525 4.94519L6.64048 9.14857L5.19733 7.40889C5.02102 7.19635 4.7058 7.16699 4.49327 7.34329C4.28073 7.5196 4.25137 7.83482 4.42767 8.04735L6.2934 10.2964C6.39348 10.4171 6.54437 10.4838 6.70097 10.4767C6.85757 10.4695 7.00177 10.3894 7.09047 10.2601L10.3498 5.51105Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$W = [\n \"color\"\n];\nvar ChevronDownIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$W);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.13523 6.15803C3.3241 5.95657 3.64052 5.94637 3.84197 6.13523L7.5 9.56464L11.158 6.13523C11.3595 5.94637 11.6759 5.95657 11.8648 6.15803C12.0536 6.35949 12.0434 6.67591 11.842 6.86477L7.84197 10.6148C7.64964 10.7951 7.35036 10.7951 7.15803 10.6148L3.15803 6.86477C2.95657 6.67591 2.94637 6.35949 3.13523 6.15803Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$X = [\n \"color\"\n];\nvar ChevronLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$X);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.84182 3.13514C9.04327 3.32401 9.05348 3.64042 8.86462 3.84188L5.43521 7.49991L8.86462 11.1579C9.05348 11.3594 9.04327 11.6758 8.84182 11.8647C8.64036 12.0535 8.32394 12.0433 8.13508 11.8419L4.38508 7.84188C4.20477 7.64955 4.20477 7.35027 4.38508 7.15794L8.13508 3.15794C8.32394 2.95648 8.64036 2.94628 8.84182 3.13514Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$Y = [\n \"color\"\n];\nvar ChevronRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$Y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.1584 3.13508C6.35985 2.94621 6.67627 2.95642 6.86514 3.15788L10.6151 7.15788C10.7954 7.3502 10.7954 7.64949 10.6151 7.84182L6.86514 11.8418C6.67627 12.0433 6.35985 12.0535 6.1584 11.8646C5.95694 11.6757 5.94673 11.3593 6.1356 11.1579L9.565 7.49985L6.1356 3.84182C5.94673 3.64036 5.95694 3.32394 6.1584 3.13508Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$Z = [\n \"color\"\n];\nvar ChevronUpIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$Z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.13523 8.84197C3.3241 9.04343 3.64052 9.05363 3.84197 8.86477L7.5 5.43536L11.158 8.86477C11.3595 9.05363 11.6759 9.04343 11.8648 8.84197C12.0536 8.64051 12.0434 8.32409 11.842 8.13523L7.84197 4.38523C7.64964 4.20492 7.35036 4.20492 7.15803 4.38523L3.15803 8.13523C2.95657 8.32409 2.94637 8.64051 3.13523 8.84197Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$_ = [\n \"color\"\n];\nvar CircleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$_);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.49991C0.877075 3.84222 3.84222 0.877075 7.49991 0.877075C11.1576 0.877075 14.1227 3.84222 14.1227 7.49991C14.1227 11.1576 11.1576 14.1227 7.49991 14.1227C3.84222 14.1227 0.877075 11.1576 0.877075 7.49991ZM7.49991 1.82708C4.36689 1.82708 1.82708 4.36689 1.82708 7.49991C1.82708 10.6329 4.36689 13.1727 7.49991 13.1727C10.6329 13.1727 13.1727 10.6329 13.1727 7.49991C13.1727 4.36689 10.6329 1.82708 7.49991 1.82708Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$$ = [\n \"color\"\n];\nvar CircleBackslashIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$$);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.877075C3.84222 0.877075 0.877075 3.84222 0.877075 7.49991C0.877075 11.1576 3.84222 14.1227 7.49991 14.1227C11.1576 14.1227 14.1227 11.1576 14.1227 7.49991C14.1227 3.84222 11.1576 0.877075 7.49991 0.877075ZM3.85768 3.15057C4.84311 2.32448 6.11342 1.82708 7.49991 1.82708C10.6329 1.82708 13.1727 4.36689 13.1727 7.49991C13.1727 8.88638 12.6753 10.1567 11.8492 11.1421L3.85768 3.15057ZM3.15057 3.85768C2.32448 4.84311 1.82708 6.11342 1.82708 7.49991C1.82708 10.6329 4.36689 13.1727 7.49991 13.1727C8.88638 13.1727 10.1567 12.6753 11.1421 11.8492L3.15057 3.85768Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$10 = [\n \"color\"\n];\nvar ClipboardIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$10);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 2V1H10V2H5ZM4.75 0C4.33579 0 4 0.335786 4 0.75V1H3.5C2.67157 1 2 1.67157 2 2.5V12.5C2 13.3284 2.67157 14 3.5 14H11.5C12.3284 14 13 13.3284 13 12.5V2.5C13 1.67157 12.3284 1 11.5 1H11V0.75C11 0.335786 10.6642 0 10.25 0H4.75ZM11 2V2.25C11 2.66421 10.6642 3 10.25 3H4.75C4.33579 3 4 2.66421 4 2.25V2H3.5C3.22386 2 3 2.22386 3 2.5V12.5C3 12.7761 3.22386 13 3.5 13H11.5C11.7761 13 12 12.7761 12 12.5V2.5C12 2.22386 11.7761 2 11.5 2H11Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$11 = [\n \"color\"\n];\nvar ClipboardCopyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$11);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 2V1H10V2H5ZM4.75 0C4.33579 0 4 0.335786 4 0.75V1H3.5C2.67157 1 2 1.67157 2 2.5V12.5C2 13.3284 2.67157 14 3.5 14H7V13H3.5C3.22386 13 3 12.7761 3 12.5V2.5C3 2.22386 3.22386 2 3.5 2H4V2.25C4 2.66421 4.33579 3 4.75 3H10.25C10.6642 3 11 2.66421 11 2.25V2H11.5C11.7761 2 12 2.22386 12 2.5V7H13V2.5C13 1.67157 12.3284 1 11.5 1H11V0.75C11 0.335786 10.6642 0 10.25 0H4.75ZM9 8.5C9 8.77614 8.77614 9 8.5 9C8.22386 9 8 8.77614 8 8.5C8 8.22386 8.22386 8 8.5 8C8.77614 8 9 8.22386 9 8.5ZM10.5 9C10.7761 9 11 8.77614 11 8.5C11 8.22386 10.7761 8 10.5 8C10.2239 8 10 8.22386 10 8.5C10 8.77614 10.2239 9 10.5 9ZM13 8.5C13 8.77614 12.7761 9 12.5 9C12.2239 9 12 8.77614 12 8.5C12 8.22386 12.2239 8 12.5 8C12.7761 8 13 8.22386 13 8.5ZM14.5 9C14.7761 9 15 8.77614 15 8.5C15 8.22386 14.7761 8 14.5 8C14.2239 8 14 8.22386 14 8.5C14 8.77614 14.2239 9 14.5 9ZM15 10.5C15 10.7761 14.7761 11 14.5 11C14.2239 11 14 10.7761 14 10.5C14 10.2239 14.2239 10 14.5 10C14.7761 10 15 10.2239 15 10.5ZM14.5 13C14.7761 13 15 12.7761 15 12.5C15 12.2239 14.7761 12 14.5 12C14.2239 12 14 12.2239 14 12.5C14 12.7761 14.2239 13 14.5 13ZM14.5 15C14.7761 15 15 14.7761 15 14.5C15 14.2239 14.7761 14 14.5 14C14.2239 14 14 14.2239 14 14.5C14 14.7761 14.2239 15 14.5 15ZM8.5 11C8.77614 11 9 10.7761 9 10.5C9 10.2239 8.77614 10 8.5 10C8.22386 10 8 10.2239 8 10.5C8 10.7761 8.22386 11 8.5 11ZM9 12.5C9 12.7761 8.77614 13 8.5 13C8.22386 13 8 12.7761 8 12.5C8 12.2239 8.22386 12 8.5 12C8.77614 12 9 12.2239 9 12.5ZM8.5 15C8.77614 15 9 14.7761 9 14.5C9 14.2239 8.77614 14 8.5 14C8.22386 14 8 14.2239 8 14.5C8 14.7761 8.22386 15 8.5 15ZM11 14.5C11 14.7761 10.7761 15 10.5 15C10.2239 15 10 14.7761 10 14.5C10 14.2239 10.2239 14 10.5 14C10.7761 14 11 14.2239 11 14.5ZM12.5 15C12.7761 15 13 14.7761 13 14.5C13 14.2239 12.7761 14 12.5 14C12.2239 14 12 14.2239 12 14.5C12 14.7761 12.2239 15 12.5 15Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$12 = [\n \"color\"\n];\nvar ClockIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$12);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.50009 0.877014C3.84241 0.877014 0.877258 3.84216 0.877258 7.49984C0.877258 11.1575 3.8424 14.1227 7.50009 14.1227C11.1578 14.1227 14.1229 11.1575 14.1229 7.49984C14.1229 3.84216 11.1577 0.877014 7.50009 0.877014ZM1.82726 7.49984C1.82726 4.36683 4.36708 1.82701 7.50009 1.82701C10.6331 1.82701 13.1729 4.36683 13.1729 7.49984C13.1729 10.6328 10.6331 13.1727 7.50009 13.1727C4.36708 13.1727 1.82726 10.6328 1.82726 7.49984ZM8 4.50001C8 4.22387 7.77614 4.00001 7.5 4.00001C7.22386 4.00001 7 4.22387 7 4.50001V7.50001C7 7.63262 7.05268 7.7598 7.14645 7.85357L9.14645 9.85357C9.34171 10.0488 9.65829 10.0488 9.85355 9.85357C10.0488 9.65831 10.0488 9.34172 9.85355 9.14646L8 7.29291V4.50001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$13 = [\n \"color\"\n];\nvar CodeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$13);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.96424 2.68571C10.0668 2.42931 9.94209 2.13833 9.6857 2.03577C9.4293 1.93322 9.13832 2.05792 9.03576 2.31432L5.03576 12.3143C4.9332 12.5707 5.05791 12.8617 5.3143 12.9642C5.5707 13.0668 5.86168 12.9421 5.96424 12.6857L9.96424 2.68571ZM3.85355 5.14646C4.04882 5.34172 4.04882 5.6583 3.85355 5.85356L2.20711 7.50001L3.85355 9.14646C4.04882 9.34172 4.04882 9.6583 3.85355 9.85356C3.65829 10.0488 3.34171 10.0488 3.14645 9.85356L1.14645 7.85356C0.951184 7.6583 0.951184 7.34172 1.14645 7.14646L3.14645 5.14646C3.34171 4.9512 3.65829 4.9512 3.85355 5.14646ZM11.1464 5.14646C11.3417 4.9512 11.6583 4.9512 11.8536 5.14646L13.8536 7.14646C14.0488 7.34172 14.0488 7.6583 13.8536 7.85356L11.8536 9.85356C11.6583 10.0488 11.3417 10.0488 11.1464 9.85356C10.9512 9.6583 10.9512 9.34172 11.1464 9.14646L12.7929 7.50001L11.1464 5.85356C10.9512 5.6583 10.9512 5.34172 11.1464 5.14646Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$14 = [\n \"color\"\n];\nvar CodeSandboxLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$14);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.71144 0.796902C7.57741 0.734357 7.42257 0.734357 7.28855 0.796902L1.28855 3.5969C1.11251 3.67905 0.999993 3.85573 0.999993 4.04999V10.95C0.999993 11.1443 1.11251 11.3209 1.28855 11.4031L7.28855 14.2031C7.42257 14.2656 7.57741 14.2656 7.71144 14.2031L13.7114 11.4031C13.8875 11.3209 14 11.1443 14 10.95V4.04999C14 3.85573 13.8875 3.67905 13.7114 3.5969L7.71144 0.796902ZM7.49999 3.15674L5.98039 2.51091L7.49999 1.80176L9.01959 2.51091L7.49999 3.15674ZM7.69556 4.16018L10.2382 3.07958L12.2719 4.02865L7.49999 6.05671L2.72808 4.02865L4.76181 3.07958L7.30442 4.16018C7.42939 4.2133 7.57059 4.2133 7.69556 4.16018ZM7.99999 6.93078L13 4.80578V7.92966L11.0821 8.8119C10.7273 8.97509 10.5 9.32988 10.5 9.72039V11.7982L7.99999 12.9649V6.93078ZM11.5 11.3316L13 10.6316V9.03039L11.5 9.72039V11.3316ZM6.99999 6.93078V12.9649L4.50231 11.7993V9.72036C4.50231 9.32985 4.27499 8.97506 3.92022 8.81187L1.99999 7.92856V4.80578L6.99999 6.93078ZM1.99999 10.6316L3.50231 11.3326L3.50231 9.72036L1.99999 9.02929V10.6316Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$15 = [\n \"color\"\n];\nvar ColorWheelIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$15);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.49985C0.877075 3.84216 3.84222 0.877014 7.49991 0.877014C11.1576 0.877014 14.1227 3.84216 14.1227 7.49985C14.1227 11.1575 11.1576 14.1227 7.49991 14.1227C3.84222 14.1227 0.877075 11.1575 0.877075 7.49985ZM3.78135 3.21565C4.68298 2.43239 5.83429 1.92904 7.09998 1.84089V6.53429L3.78135 3.21565ZM3.21567 3.78134C2.43242 4.68298 1.92909 5.83428 1.84095 7.09997H6.5343L3.21567 3.78134ZM6.5343 7.89997H1.84097C1.92916 9.16562 2.43253 10.3169 3.21579 11.2185L6.5343 7.89997ZM3.78149 11.7842C4.6831 12.5673 5.83435 13.0707 7.09998 13.1588V8.46566L3.78149 11.7842ZM7.89998 8.46566V13.1588C9.16559 13.0706 10.3168 12.5673 11.2184 11.7841L7.89998 8.46566ZM11.7841 11.2184C12.5673 10.3168 13.0707 9.16558 13.1588 7.89997H8.46567L11.7841 11.2184ZM8.46567 7.09997H13.1589C13.0707 5.83432 12.5674 4.68305 11.7842 3.78143L8.46567 7.09997ZM11.2185 3.21573C10.3169 2.43246 9.16565 1.92909 7.89998 1.8409V6.53429L11.2185 3.21573Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$16 = [\n \"color\"\n];\nvar ColumnSpacingIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$16);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.00012 1.5C8.00012 1.22386 7.77626 1 7.50012 1C7.22398 1 7.00012 1.22386 7.00012 1.5V13.5C7.00012 13.7761 7.22398 14 7.50012 14C7.77626 14 8.00012 13.7761 8.00012 13.5V1.5ZM3.31812 5.818C3.49386 5.64227 3.49386 5.35734 3.31812 5.18161C3.14239 5.00587 2.85746 5.00587 2.68173 5.18161L0.681729 7.18161C0.505993 7.35734 0.505993 7.64227 0.681729 7.818L2.68173 9.818C2.85746 9.99374 3.14239 9.99374 3.31812 9.818C3.49386 9.64227 3.49386 9.35734 3.31812 9.18161L2.08632 7.9498H5.50017C5.7487 7.9498 5.95017 7.74833 5.95017 7.4998C5.95017 7.25128 5.7487 7.0498 5.50017 7.0498H2.08632L3.31812 5.818ZM12.3181 5.18161C12.1424 5.00587 11.8575 5.00587 11.6817 5.18161C11.506 5.35734 11.506 5.64227 11.6817 5.818L12.9135 7.0498H9.50017C9.25164 7.0498 9.05017 7.25128 9.05017 7.4998C9.05017 7.74833 9.25164 7.9498 9.50017 7.9498H12.9135L11.6817 9.18161C11.506 9.35734 11.506 9.64227 11.6817 9.818C11.8575 9.99374 12.1424 9.99374 12.3181 9.818L14.3181 7.818C14.4939 7.64227 14.4939 7.35734 14.3181 7.18161L12.3181 5.18161Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$17 = [\n \"color\"\n];\nvar ColumnsIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$17);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.14998 14V1H0.849976V14H2.14998ZM6.14998 14V1H4.84998V14H6.14998ZM10.15 1V14H8.84998V1H10.15ZM14.15 14V1H12.85V14H14.15Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$18 = [\n \"color\"\n];\nvar CommitIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$18);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.94969 7.49989C9.94969 8.85288 8.85288 9.94969 7.49989 9.94969C6.14691 9.94969 5.0501 8.85288 5.0501 7.49989C5.0501 6.14691 6.14691 5.0501 7.49989 5.0501C8.85288 5.0501 9.94969 6.14691 9.94969 7.49989ZM10.8632 8C10.6213 9.64055 9.20764 10.8997 7.49989 10.8997C5.79214 10.8997 4.37847 9.64055 4.13662 8H0.5C0.223858 8 0 7.77614 0 7.5C0 7.22386 0.223858 7 0.5 7H4.13659C4.37835 5.35935 5.79206 4.1001 7.49989 4.1001C9.20772 4.1001 10.6214 5.35935 10.8632 7H14.5C14.7761 7 15 7.22386 15 7.5C15 7.77614 14.7761 8 14.5 8H10.8632Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$19 = [\n \"color\"\n];\nvar Component1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$19);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.67129 3.14634C4.47603 3.34161 4.47603 3.65819 4.67129 3.85345L7.14616 6.32833C7.34142 6.52359 7.65801 6.52359 7.85327 6.32833L10.3281 3.85345C10.5234 3.65819 10.5234 3.34161 10.3281 3.14634L7.85327 0.671471C7.65801 0.476209 7.34142 0.476209 7.14616 0.671471L4.67129 3.14634ZM7.49971 5.26766L5.73195 3.4999L7.49971 1.73213L9.26748 3.4999L7.49971 5.26766ZM8.67129 7.14634C8.47603 7.34161 8.47603 7.65819 8.67129 7.85345L11.1462 10.3283C11.3414 10.5236 11.658 10.5236 11.8533 10.3283L14.3281 7.85345C14.5234 7.65819 14.5234 7.34161 14.3281 7.14634L11.8533 4.67147C11.658 4.47621 11.3414 4.47621 11.1462 4.67147L8.67129 7.14634ZM11.4997 9.26766L9.73195 7.4999L11.4997 5.73213L13.2675 7.4999L11.4997 9.26766ZM4.67129 11.8535C4.47603 11.6582 4.47603 11.3416 4.67129 11.1463L7.14616 8.67147C7.34142 8.47621 7.65801 8.47621 7.85327 8.67147L10.3281 11.1463C10.5234 11.3416 10.5234 11.6582 10.3281 11.8535L7.85327 14.3283C7.65801 14.5236 7.34142 14.5236 7.14616 14.3283L4.67129 11.8535ZM5.73195 11.4999L7.49971 13.2677L9.26748 11.4999L7.49971 9.73213L5.73195 11.4999ZM0.671288 7.14649C0.476026 7.34175 0.476026 7.65834 0.671288 7.8536L3.14616 10.3285C3.34142 10.5237 3.65801 10.5237 3.85327 10.3285L6.32814 7.8536C6.5234 7.65834 6.5234 7.34175 6.32814 7.14649L3.85327 4.67162C3.65801 4.47636 3.34142 4.47636 3.14616 4.67162L0.671288 7.14649ZM3.49972 9.26781L1.73195 7.50005L3.49972 5.73228L5.26748 7.50005L3.49972 9.26781Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1a = [\n \"color\"\n];\nvar Component2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1a);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.87935 1H3.9H11.1H11.1207C11.5231 0.999994 11.8553 0.999989 12.1259 1.0221C12.407 1.04506 12.6653 1.09434 12.908 1.21799C13.2843 1.40973 13.5903 1.7157 13.782 2.09202C13.9057 2.33469 13.9549 2.59304 13.9779 2.87409C14 3.14468 14 3.47686 14 3.87934V3.9V11.1V11.1207C14 11.5231 14 11.8553 13.9779 12.1259C13.9549 12.407 13.9057 12.6653 13.782 12.908C13.5903 13.2843 13.2843 13.5903 12.908 13.782C12.6653 13.9057 12.407 13.9549 12.1259 13.9779C11.8553 14 11.5231 14 11.1207 14H11.1H3.9H3.87934C3.47686 14 3.14468 14 2.87409 13.9779C2.59304 13.9549 2.33469 13.9057 2.09202 13.782C1.7157 13.5903 1.40973 13.2843 1.21799 12.908C1.09434 12.6653 1.04506 12.407 1.0221 12.1259C0.999989 11.8553 0.999994 11.5231 1 11.1207V11.1207V11.1V3.9V3.87935V3.87934C0.999994 3.47686 0.999989 3.14468 1.0221 2.87409C1.04506 2.59304 1.09434 2.33469 1.21799 2.09202C1.40973 1.7157 1.7157 1.40973 2.09202 1.21799C2.33469 1.09434 2.59304 1.04506 2.87409 1.0221C3.14469 0.999989 3.47687 0.999994 3.87935 1ZM2.95552 2.01878C2.73631 2.03669 2.62421 2.06915 2.54601 2.10899C2.35785 2.20487 2.20487 2.35785 2.10899 2.54601C2.06915 2.62421 2.03669 2.73631 2.01878 2.95552C2.00039 3.18056 2 3.47171 2 3.9V7H7V2H3.9C3.47171 2 3.18056 2.00039 2.95552 2.01878ZM7 8H2V11.1C2 11.5283 2.00039 11.8194 2.01878 12.0445C2.03669 12.2637 2.06915 12.3758 2.10899 12.454C2.20487 12.6422 2.35785 12.7951 2.54601 12.891C2.62421 12.9309 2.73631 12.9633 2.95552 12.9812C3.18056 12.9996 3.47171 13 3.9 13H7V8ZM8 8H13V11.1C13 11.5283 12.9996 11.8194 12.9812 12.0445C12.9633 12.2637 12.9309 12.3758 12.891 12.454C12.7951 12.6422 12.6422 12.7951 12.454 12.891C12.3758 12.9309 12.2637 12.9633 12.0445 12.9812C11.8194 12.9996 11.5283 13 11.1 13H8V8ZM13 7H8V2H11.1C11.5283 2 11.8194 2.00039 12.0445 2.01878C12.2637 2.03669 12.3758 2.06915 12.454 2.10899C12.6422 2.20487 12.7951 2.35785 12.891 2.54601C12.9309 2.62421 12.9633 2.73631 12.9812 2.95552C12.9996 3.18056 13 3.47171 13 3.9V7Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1b = [\n \"color\"\n];\nvar ComponentBooleanIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1b);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.85367 1.48956C7.65841 1.29429 7.34182 1.29429 7.14656 1.48956L1.48971 7.14641C1.29445 7.34167 1.29445 7.65825 1.48971 7.85352L7.14656 13.5104C7.34182 13.7056 7.65841 13.7056 7.85367 13.5104L13.5105 7.85352C13.7058 7.65825 13.7058 7.34167 13.5105 7.14641L7.85367 1.48956ZM7.5 2.55033L2.55037 7.49996L7.5 12.4496V2.55033Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1c = [\n \"color\"\n];\nvar ComponentInstanceIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1c);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.1465 1.48959C7.34176 1.29432 7.65835 1.29432 7.85361 1.48959L13.5105 7.14644C13.7057 7.3417 13.7057 7.65829 13.5105 7.85355L7.85361 13.5104C7.65835 13.7057 7.34176 13.7057 7.1465 13.5104L1.48965 7.85355C1.29439 7.65829 1.29439 7.3417 1.48965 7.14644L7.1465 1.48959ZM7.50005 2.55025L2.55031 7.49999L7.50005 12.4497L12.4498 7.49999L7.50005 2.55025Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1d = [\n \"color\"\n];\nvar ComponentNoneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1d);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.85361 1.48959C7.65835 1.29432 7.34176 1.29432 7.1465 1.48959L1.48965 7.14644C1.29439 7.3417 1.29439 7.65829 1.48965 7.85355L3.9645 10.3284L1.64644 12.6464C1.45118 12.8417 1.45118 13.1583 1.64644 13.3536C1.84171 13.5488 2.15829 13.5488 2.35355 13.3536L4.6716 11.0355L7.1465 13.5104C7.34176 13.7057 7.65835 13.7057 7.85361 13.5104L13.5105 7.85355C13.7057 7.65829 13.7057 7.3417 13.5105 7.14644L11.0356 4.67154L13.3535 2.35355C13.5488 2.15829 13.5488 1.84171 13.3535 1.64645C13.1583 1.45118 12.8417 1.45118 12.6464 1.64645L10.3285 3.96443L7.85361 1.48959ZM9.62135 4.67154L7.50005 2.55025L2.55031 7.49999L4.6716 9.62129L9.62135 4.67154ZM5.37871 10.3284L7.50005 12.4497L12.4498 7.49999L10.3285 5.37865L5.37871 10.3284Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1e = [\n \"color\"\n];\nvar ComponentPlaceholderIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1e);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.8034 7.14644C12.9986 6.95118 13.3152 6.95118 13.5105 7.14644C13.7057 7.3417 13.7057 7.65829 13.5105 7.85355C13.3152 8.04881 12.9986 8.04881 12.8034 7.85355C12.6081 7.65828 12.6081 7.3417 12.8034 7.14644ZM12.0962 8.56065C12.2915 8.75592 12.2915 9.0725 12.0962 9.26776C11.901 9.46302 11.5844 9.46302 11.3891 9.26776C11.1939 9.0725 11.1939 8.75592 11.3891 8.56065C11.5844 8.36539 11.901 8.36539 12.0962 8.56065ZM10.682 9.97487C10.8773 10.1701 10.8773 10.4867 10.682 10.682C10.4868 10.8772 10.1702 10.8772 9.97493 10.682C9.77967 10.4867 9.77967 10.1701 9.97493 9.97487C10.1702 9.7796 10.4868 9.7796 10.682 9.97487ZM9.26782 11.3891C9.46308 11.5843 9.46308 11.9009 9.26782 12.0962C9.07256 12.2915 8.75598 12.2915 8.56071 12.0962C8.36545 11.9009 8.36545 11.5843 8.56072 11.3891C8.75598 11.1938 9.07256 11.1938 9.26782 11.3891ZM7.1465 13.5104C6.95124 13.3151 6.95124 12.9986 7.1465 12.8033C7.17091 12.7789 7.19721 12.7575 7.22494 12.7392C7.41901 12.6111 7.68275 12.6324 7.85361 12.8033C8.04887 12.9986 8.04887 13.3151 7.85361 13.5104C7.65835 13.7057 7.34176 13.7057 7.1465 13.5104Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.90386 8.56065C2.7086 8.75592 2.7086 9.0725 2.90386 9.26776 3.09912 9.46302 3.41571 9.46302 3.61097 9.26776 3.80623 9.0725 3.80623 8.75592 3.61097 8.56065 3.41571 8.36539 3.09912 8.36539 2.90386 8.56065zM4.31807 9.97487C4.12281 10.1701 4.12281 10.4867 4.31807 10.682 4.51334 10.8772 4.82992 10.8772 5.02518 10.682 5.22044 10.4867 5.22044 10.1701 5.02518 9.97487 4.82992 9.7796 4.51334 9.7796 4.31807 9.97487zM5.73229 11.3891C5.53703 11.5843 5.53703 11.9009 5.73229 12.0962 5.92755 12.2914 6.24413 12.2915 6.43939 12.0962 6.63466 11.9009 6.63466 11.5843 6.43939 11.3891 6.24413 11.1938 5.92755 11.1938 5.73229 11.3891zM2.19675 7.85355C2.36761 7.68269 2.38897 7.41895 2.26082 7.22488 2.09046 6.96684 1.71063 6.92546 1.48965 7.14644 1.29439 7.3417 1.29439 7.65829 1.48965 7.85355 1.68491 8.04881 2.00149 8.04881 2.19675 7.85355zM3.61097 5.73223C3.41571 5.53696 3.09912 5.53696 2.90386 5.73223 2.7086 5.92749 2.7086 6.24407 2.90386 6.43933 3.09912 6.6346 3.41571 6.6346 3.61097 6.43933 3.80623 6.24407 3.80623 5.92749 3.61097 5.73223zM5.02518 4.31801C4.82992 4.12275 4.51334 4.12275 4.31807 4.31801 4.12281 4.51328 4.12281 4.82986 4.31807 5.02512 4.51334 5.22038 4.82992 5.22038 5.02518 5.02512 5.22044 4.82986 5.22044 4.51328 5.02518 4.31801zM6.43939 2.9038C6.24413 2.70854 5.92755 2.70854 5.73229 2.9038 5.53703 3.09906 5.53703 3.41564 5.73229 3.61091 5.92755 3.80617 6.24413 3.80617 6.43939 3.61091 6.63466 3.41564 6.63466 3.09906 6.43939 2.9038zM7.85361 1.48959C7.65835 1.29432 7.34176 1.29432 7.1465 1.48959 6.95124 1.68485 6.95124 2.00143 7.1465 2.19669 7.34176 2.39196 7.65835 2.39196 7.85361 2.19669 8.04887 2.00143 8.04887 1.68485 7.85361 1.48959zM9.26782 2.9038C9.07256 2.70854 8.75598 2.70854 8.56071 2.9038 8.36545 3.09906 8.36545 3.41564 8.56071 3.61091 8.75598 3.80617 9.07256 3.80617 9.26782 3.61091 9.46308 3.41564 9.46308 3.09906 9.26782 2.9038zM10.682 4.31801C10.4868 4.12275 10.1702 4.12275 9.97493 4.31801 9.77967 4.51328 9.77967 4.82986 9.97493 5.02512 10.1702 5.22038 10.4868 5.22038 10.682 5.02512 10.8773 4.82986 10.8773 4.51328 10.682 4.31801zM12.0962 5.73223C11.901 5.53696 11.5844 5.53696 11.3891 5.73223 11.1939 5.92749 11.1939 6.24407 11.3891 6.43933 11.5844 6.6346 11.901 6.6346 12.0962 6.43933 12.2915 6.24407 12.2915 5.92749 12.0962 5.73223z\",\n fill: color\n }));\n});\nvar _excluded$1f = [\n \"color\"\n];\nvar ContainerIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1f);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 1.5C2 1.77614 1.77614 2 1.5 2C1.22386 2 1 1.77614 1 1.5C1 1.22386 1.22386 1 1.5 1C1.77614 1 2 1.22386 2 1.5ZM5 13H10V2L5 2L5 13ZM4 13C4 13.5523 4.44772 14 5 14H10C10.5523 14 11 13.5523 11 13V2C11 1.44772 10.5523 1 10 1H5C4.44772 1 4 1.44771 4 2V13ZM13.5 2C13.7761 2 14 1.77614 14 1.5C14 1.22386 13.7761 1 13.5 1C13.2239 1 13 1.22386 13 1.5C13 1.77614 13.2239 2 13.5 2ZM2 3.5C2 3.77614 1.77614 4 1.5 4C1.22386 4 1 3.77614 1 3.5C1 3.22386 1.22386 3 1.5 3C1.77614 3 2 3.22386 2 3.5ZM13.5 4C13.7761 4 14 3.77614 14 3.5C14 3.22386 13.7761 3 13.5 3C13.2239 3 13 3.22386 13 3.5C13 3.77614 13.2239 4 13.5 4ZM2 5.5C2 5.77614 1.77614 6 1.5 6C1.22386 6 1 5.77614 1 5.5C1 5.22386 1.22386 5 1.5 5C1.77614 5 2 5.22386 2 5.5ZM13.5 6C13.7761 6 14 5.77614 14 5.5C14 5.22386 13.7761 5 13.5 5C13.2239 5 13 5.22386 13 5.5C13 5.77614 13.2239 6 13.5 6ZM2 7.5C2 7.77614 1.77614 8 1.5 8C1.22386 8 1 7.77614 1 7.5C1 7.22386 1.22386 7 1.5 7C1.77614 7 2 7.22386 2 7.5ZM13.5 8C13.7761 8 14 7.77614 14 7.5C14 7.22386 13.7761 7 13.5 7C13.2239 7 13 7.22386 13 7.5C13 7.77614 13.2239 8 13.5 8ZM2 9.5C2 9.77614 1.77614 10 1.5 10C1.22386 10 1 9.77614 1 9.5C1 9.22386 1.22386 9 1.5 9C1.77614 9 2 9.22386 2 9.5ZM13.5 10C13.7761 10 14 9.77614 14 9.5C14 9.22386 13.7761 9 13.5 9C13.2239 9 13 9.22386 13 9.5C13 9.77614 13.2239 10 13.5 10ZM2 11.5C2 11.7761 1.77614 12 1.5 12C1.22386 12 1 11.7761 1 11.5C1 11.2239 1.22386 11 1.5 11C1.77614 11 2 11.2239 2 11.5ZM13.5 12C13.7761 12 14 11.7761 14 11.5C14 11.2239 13.7761 11 13.5 11C13.2239 11 13 11.2239 13 11.5C13 11.7761 13.2239 12 13.5 12ZM2 13.5C2 13.7761 1.77614 14 1.5 14C1.22386 14 1 13.7761 1 13.5C1 13.2239 1.22386 13 1.5 13C1.77614 13 2 13.2239 2 13.5ZM13.5 14C13.7761 14 14 13.7761 14 13.5C14 13.2239 13.7761 13 13.5 13C13.2239 13 13 13.2239 13 13.5C13 13.7761 13.2239 14 13.5 14Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1g = [\n \"color\"\n];\nvar CookieIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1g);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.0697 1.76746C12.4807 1.21947 11.4605 0.454311 11.0495 1.0023C10.6385 1.55028 11.6588 2.31544 12.0697 1.76746ZM8.39263 1.07811C7.15585 0.950602 5.7823 1.16348 4.58433 1.70937C3.38552 2.25563 2.32735 3.15309 1.78844 4.41832C1.37574 5.38724 1.01715 6.28113 1.00088 7.44354C0.984724 8.59844 1.30522 9.96898 2.13174 11.928C2.61142 13.0649 4.03963 13.5446 5.13895 13.8079C6.40836 14.1119 7.80857 14.1914 8.6644 14.0742C9.36515 13.9782 10.1448 13.8284 10.7987 13.297C11.8977 12.4039 12.9009 11.3955 13.4994 10.3393C14.104 9.27221 14.3256 8.09207 13.7216 6.95324C13.5628 6.65373 13.316 6.57734 13.0412 6.4923C12.9374 6.46016 12.8295 6.42678 12.7209 6.37966C11.6211 5.90234 10.9646 5.34963 10.9135 5.02876C10.8656 4.72808 10.9221 4.51463 10.9811 4.29181C11.0129 4.17199 11.0453 4.04947 11.0626 3.90922C11.0838 3.73737 11.0814 3.33319 10.6996 3.12761C10.4048 2.96888 10.2164 2.65843 10.0407 2.36904C9.99742 2.29775 9.95492 2.22773 9.9118 2.16158C9.62634 1.72367 9.20769 1.16213 8.39263 1.07811ZM4.99899 2.61935C3.96483 3.09058 3.12554 3.83097 2.70846 4.81018C2.29808 5.77368 2.01406 6.50873 2.00079 7.45753C1.98741 8.41385 2.25043 9.6368 3.0531 11.5393C3.39181 12.3421 4.62167 12.6557 5.37186 12.8354C6.5493 13.1174 7.822 13.1802 8.52868 13.0834C9.21271 12.9897 9.74568 12.8642 10.1681 12.5209C11.229 11.6587 12.121 10.7435 12.6293 9.84635C12.9349 9.30709 13.5141 7.7028 12.6292 7.3873C10.7539 6.71875 10.262 6.06669 9.99011 5.41268C9.80915 4.97744 9.82868 4.52282 9.95741 4.07885L9.95741 4.07884C9.97662 4.0126 9.99538 3.94791 10.0334 3.88882C9.81857 3.73676 9.6515 3.55195 9.51464 3.3715C9.42876 3.25828 9.3469 3.12099 9.26197 2.97856C9.01866 2.57052 8.75018 2.12027 8.29008 2.07283C7.22889 1.96343 6.03398 2.14772 4.99899 2.61935ZM13.2081 3.77471C13.441 3.22671 12.4547 2.63606 12.0822 3.10163C11.5817 3.72732 12.9029 4.49281 13.2081 3.77471ZM14.3672 2.26031C14.9668 2.27493 15.1551 1.11603 14.5718 0.949371C13.8076 0.731026 13.5918 2.24139 14.3672 2.26031ZM14.2857 5.09098C14.8644 5.10004 15.0462 4.38222 14.4832 4.27899C13.7455 4.14375 13.5373 5.07927 14.2857 5.09098ZM6.9075 4.28672C6.46898 4.66754 6.0522 4.15185 5.97983 3.7365C5.86848 3.09744 6.33696 2.56856 6.94823 2.91156C7.43344 3.18382 7.26678 3.97471 6.9075 4.28672ZM4.94455 5.88184C5.40885 5.41754 4.59567 4.57013 4.11425 5.05154C3.83338 5.33242 4.00936 5.65376 4.23744 5.88184C4.43271 6.0771 4.74929 6.0771 4.94455 5.88184ZM6.97716 6.71984C7.31181 7.38914 8.48804 6.79159 7.99413 6.14788C7.86519 5.97983 7.68657 5.9494 7.62145 5.94207C7.21217 5.89601 6.76349 6.2925 6.97716 6.71984ZM6.98798 8.72461C7.14066 9.1188 7.51122 9.3187 7.91915 9.1633C8.27434 9.02799 8.33186 8.39689 8.17175 8.07427C8.02331 7.77514 7.63956 7.67793 7.33747 7.79417C6.98512 7.92976 6.85672 8.38708 6.98576 8.71889L6.98798 8.72461ZM10.3885 8.84081C10.7575 8.6566 11.4617 8.82771 11.4617 9.31199C11.4617 9.71286 10.9587 10.2165 10.5634 10.2826C10.1813 10.3465 9.70515 9.97581 9.76648 9.57718C9.81445 9.26539 10.1217 8.97401 10.3885 8.84081ZM7.56704 10.8432C7.33461 10.7502 7.14353 10.8601 7.11437 10.8769L7.11279 10.8778C6.90782 10.9949 6.71383 11.2439 6.6747 11.4842C6.59018 12.0034 7.13199 12.1239 7.52661 12.0987C8.2074 12.0553 8.06547 11.0426 7.56704 10.8432ZM4.8805 10.8932C5.0674 10.7723 5.15658 10.5363 5.08293 10.3153C4.93046 9.79687 4.3246 9.71252 3.96561 10.1297C3.79336 10.3299 3.80749 10.6274 3.99214 10.8105L3.99495 10.814L3.9979 10.8176C4.22025 11.0942 4.63624 11.1857 4.8805 10.8932ZM3.04695 7.81318C3.33147 8.0977 3.60077 8.15067 3.98443 8.05859C4.60826 7.90887 4.13814 6.24299 3.047 6.87296C2.70939 7.06788 2.86716 7.63339 3.04695 7.81318Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1h = [\n \"color\"\n];\nvar CopyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1h);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 9.50006C1 10.3285 1.67157 11.0001 2.5 11.0001H4L4 10.0001H2.5C2.22386 10.0001 2 9.7762 2 9.50006L2 2.50006C2 2.22392 2.22386 2.00006 2.5 2.00006L9.5 2.00006C9.77614 2.00006 10 2.22392 10 2.50006V4.00002H5.5C4.67158 4.00002 4 4.67159 4 5.50002V12.5C4 13.3284 4.67158 14 5.5 14H12.5C13.3284 14 14 13.3284 14 12.5V5.50002C14 4.67159 13.3284 4.00002 12.5 4.00002H11V2.50006C11 1.67163 10.3284 1.00006 9.5 1.00006H2.5C1.67157 1.00006 1 1.67163 1 2.50006V9.50006ZM5 5.50002C5 5.22388 5.22386 5.00002 5.5 5.00002H12.5C12.7761 5.00002 13 5.22388 13 5.50002V12.5C13 12.7762 12.7761 13 12.5 13H5.5C5.22386 13 5 12.7762 5 12.5V5.50002Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1i = [\n \"color\"\n];\nvar CornerBottomLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1i);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.87737 12H9.9H11.5C11.7761 12 12 11.7761 12 11.5C12 11.2239 11.7761 11 11.5 11H9.9C8.77164 11 7.95545 10.9996 7.31352 10.9472C6.67744 10.8952 6.25662 10.7946 5.91103 10.6185C5.25247 10.283 4.71703 9.74753 4.38148 9.08897C4.20539 8.74338 4.10481 8.32256 4.05284 7.68648C4.00039 7.04455 4 6.22836 4 5.1V3.5C4 3.22386 3.77614 3 3.5 3C3.22386 3 3 3.22386 3 3.5V5.1V5.12263C3 6.22359 3 7.08052 3.05616 7.76791C3.11318 8.46584 3.23058 9.0329 3.49047 9.54296C3.9219 10.3897 4.61031 11.0781 5.45704 11.5095C5.9671 11.7694 6.53416 11.8868 7.23209 11.9438C7.91948 12 8.77641 12 9.87737 12Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1j = [\n \"color\"\n];\nvar CornerBottomRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1j);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.12263 12H5.1H3.5C3.22386 12 3 11.7761 3 11.5C3 11.2239 3.22386 11 3.5 11H5.1C6.22836 11 7.04455 10.9996 7.68648 10.9472C8.32256 10.8952 8.74338 10.7946 9.08897 10.6185C9.74753 10.283 10.283 9.74753 10.6185 9.08897C10.7946 8.74338 10.8952 8.32256 10.9472 7.68648C10.9996 7.04455 11 6.22836 11 5.1V3.5C11 3.22386 11.2239 3 11.5 3C11.7761 3 12 3.22386 12 3.5V5.1V5.12263C12 6.22359 12 7.08052 11.9438 7.76791C11.8868 8.46584 11.7694 9.0329 11.5095 9.54296C11.0781 10.3897 10.3897 11.0781 9.54296 11.5095C9.0329 11.7694 8.46584 11.8868 7.76791 11.9438C7.08052 12 6.22359 12 5.12263 12Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1k = [\n \"color\"\n];\nvar CornerTopLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1k);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.87737 3H9.9H11.5C11.7761 3 12 3.22386 12 3.5C12 3.77614 11.7761 4 11.5 4H9.9C8.77164 4 7.95545 4.00039 7.31352 4.05284C6.67744 4.10481 6.25662 4.20539 5.91103 4.38148C5.25247 4.71703 4.71703 5.25247 4.38148 5.91103C4.20539 6.25662 4.10481 6.67744 4.05284 7.31352C4.00039 7.95545 4 8.77164 4 9.9V11.5C4 11.7761 3.77614 12 3.5 12C3.22386 12 3 11.7761 3 11.5V9.9V9.87737C3 8.77641 3 7.91948 3.05616 7.23209C3.11318 6.53416 3.23058 5.9671 3.49047 5.45704C3.9219 4.61031 4.61031 3.9219 5.45704 3.49047C5.9671 3.23058 6.53416 3.11318 7.23209 3.05616C7.91948 3 8.77641 3 9.87737 3Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1l = [\n \"color\"\n];\nvar CornerTopRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1l);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.12263 3H5.1H3.5C3.22386 3 3 3.22386 3 3.5C3 3.77614 3.22386 4 3.5 4H5.1C6.22836 4 7.04455 4.00039 7.68648 4.05284C8.32256 4.10481 8.74338 4.20539 9.08897 4.38148C9.74753 4.71703 10.283 5.25247 10.6185 5.91103C10.7946 6.25662 10.8952 6.67744 10.9472 7.31352C10.9996 7.95545 11 8.77164 11 9.9V11.5C11 11.7761 11.2239 12 11.5 12C11.7761 12 12 11.7761 12 11.5V9.9V9.87737C12 8.77641 12 7.91948 11.9438 7.23209C11.8868 6.53416 11.7694 5.9671 11.5095 5.45704C11.0781 4.61031 10.3897 3.9219 9.54296 3.49047C9.0329 3.23058 8.46584 3.11318 7.76791 3.05616C7.08052 3 6.22359 3 5.12263 3Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1m = [\n \"color\"\n];\nvar CornersIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1m);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.5 2L4.87935 2C4.47687 1.99999 4.14469 1.99999 3.87409 2.0221C3.59304 2.04506 3.33469 2.09434 3.09202 2.21799C2.7157 2.40973 2.40973 2.7157 2.21799 3.09202C2.09434 3.33469 2.04506 3.59304 2.0221 3.87409C1.99999 4.14468 1.99999 4.47686 2 4.87933V4.87935V5.5C2 5.77614 2.22386 6 2.5 6C2.77614 6 3 5.77614 3 5.5V4.9C3 4.47171 3.00039 4.18056 3.01878 3.95552C3.03669 3.73631 3.06915 3.62421 3.10899 3.54601C3.20487 3.35785 3.35785 3.20487 3.54601 3.10899C3.62421 3.06915 3.73631 3.03669 3.95552 3.01878C4.18056 3.00039 4.47171 3 4.9 3H5.5C5.77614 3 6 2.77614 6 2.5C6 2.22386 5.77614 2 5.5 2ZM13 9.5C13 9.22386 12.7761 9 12.5 9C12.2239 9 12 9.22386 12 9.5V10.1C12 10.5283 11.9996 10.8194 11.9812 11.0445C11.9633 11.2637 11.9309 11.3758 11.891 11.454C11.7951 11.6422 11.6422 11.7951 11.454 11.891C11.3758 11.9309 11.2637 11.9633 11.0445 11.9812C10.8194 11.9996 10.5283 12 10.1 12H9.5C9.22386 12 9 12.2239 9 12.5C9 12.7761 9.22386 13 9.5 13H10.1206C10.5231 13 10.8553 13 11.1259 12.9779C11.407 12.9549 11.6653 12.9057 11.908 12.782C12.2843 12.5903 12.5903 12.2843 12.782 11.908C12.9057 11.6653 12.9549 11.407 12.9779 11.1259C13 10.8553 13 10.5232 13 10.1207V10.1207V10.1207V10.1206V9.5ZM2.5 9C2.77614 9 3 9.22386 3 9.5V10.1C3 10.5283 3.00039 10.8194 3.01878 11.0445C3.03669 11.2637 3.06915 11.3758 3.10899 11.454C3.20487 11.6422 3.35785 11.7951 3.54601 11.891C3.62421 11.9309 3.73631 11.9633 3.95552 11.9812C4.18056 11.9996 4.47171 12 4.9 12H5.5C5.77614 12 6 12.2239 6 12.5C6 12.7761 5.77614 13 5.5 13H4.87935C4.47687 13 4.14469 13 3.87409 12.9779C3.59304 12.9549 3.33469 12.9057 3.09202 12.782C2.7157 12.5903 2.40973 12.2843 2.21799 11.908C2.09434 11.6653 2.04506 11.407 2.0221 11.1259C1.99999 10.8553 1.99999 10.5231 2 10.1207V10.1206V10.1V9.5C2 9.22386 2.22386 9 2.5 9ZM10.1 3C10.5283 3 10.8194 3.00039 11.0445 3.01878C11.2637 3.03669 11.3758 3.06915 11.454 3.10899C11.6422 3.20487 11.7951 3.35785 11.891 3.54601C11.9309 3.62421 11.9633 3.73631 11.9812 3.95552C11.9996 4.18056 12 4.47171 12 4.9V5.5C12 5.77614 12.2239 6 12.5 6C12.7761 6 13 5.77614 13 5.5V4.87935V4.87934C13 4.47686 13 4.14468 12.9779 3.87409C12.9549 3.59304 12.9057 3.33469 12.782 3.09202C12.5903 2.7157 12.2843 2.40973 11.908 2.21799C11.6653 2.09434 11.407 2.04506 11.1259 2.0221C10.8553 1.99999 10.5231 1.99999 10.1206 2L10.1 2H9.5C9.22386 2 9 2.22386 9 2.5C9 2.77614 9.22386 3 9.5 3H10.1Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1n = [\n \"color\"\n];\nvar CountdownTimerIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1n);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.15 7.49998C13.15 4.66458 10.9402 1.84998 7.50002 1.84998C4.7217 1.84998 3.34851 3.90636 2.76336 4.99997H4.5C4.77614 4.99997 5 5.22383 5 5.49997C5 5.77611 4.77614 5.99997 4.5 5.99997H1.5C1.22386 5.99997 1 5.77611 1 5.49997V2.49997C1 2.22383 1.22386 1.99997 1.5 1.99997C1.77614 1.99997 2 2.22383 2 2.49997V4.31318C2.70453 3.07126 4.33406 0.849976 7.50002 0.849976C11.5628 0.849976 14.15 4.18537 14.15 7.49998C14.15 10.8146 11.5628 14.15 7.50002 14.15C5.55618 14.15 3.93778 13.3808 2.78548 12.2084C2.16852 11.5806 1.68668 10.839 1.35816 10.0407C1.25306 9.78536 1.37488 9.49315 1.63024 9.38806C1.8856 9.28296 2.17781 9.40478 2.2829 9.66014C2.56374 10.3425 2.97495 10.9745 3.4987 11.5074C4.47052 12.4963 5.83496 13.15 7.50002 13.15C10.9402 13.15 13.15 10.3354 13.15 7.49998ZM7 10V5.00001H8V10H7Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1o = [\n \"color\"\n];\nvar CounterClockwiseClockIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1o);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.15 7.49998C13.15 4.66458 10.9402 1.84998 7.50002 1.84998C4.72167 1.84998 3.34849 3.9064 2.76335 5H4.5C4.77614 5 5 5.22386 5 5.5C5 5.77614 4.77614 6 4.5 6H1.5C1.22386 6 1 5.77614 1 5.5V2.5C1 2.22386 1.22386 2 1.5 2C1.77614 2 2 2.22386 2 2.5V4.31318C2.70453 3.07126 4.33406 0.849976 7.50002 0.849976C11.5628 0.849976 14.15 4.18537 14.15 7.49998C14.15 10.8146 11.5628 14.15 7.50002 14.15C5.55618 14.15 3.93778 13.3808 2.78548 12.2084C2.16852 11.5806 1.68668 10.839 1.35816 10.0407C1.25306 9.78536 1.37488 9.49315 1.63024 9.38806C1.8856 9.28296 2.17781 9.40478 2.2829 9.66014C2.56374 10.3425 2.97495 10.9745 3.4987 11.5074C4.47052 12.4963 5.83496 13.15 7.50002 13.15C10.9402 13.15 13.15 10.3354 13.15 7.49998ZM7.5 4.00001C7.77614 4.00001 8 4.22387 8 4.50001V7.29291L9.85355 9.14646C10.0488 9.34172 10.0488 9.65831 9.85355 9.85357C9.65829 10.0488 9.34171 10.0488 9.14645 9.85357L7.14645 7.85357C7.05268 7.7598 7 7.63262 7 7.50001V4.50001C7 4.22387 7.22386 4.00001 7.5 4.00001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1p = [\n \"color\"\n];\nvar CropIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1p);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.5 8.00684e-07C3.77614 7.88614e-07 4 0.223859 4 0.500001L4 3.00006L11.5 3.00006C11.7761 3.00006 12 3.22392 12 3.50006L12 11.0001L14.5 11C14.7761 11 15 11.2238 15 11.5C15 11.7761 14.7762 12 14.5 12L12 12.0001L12 14.5C12 14.7761 11.7761 15 11.5 15C11.2239 15 11 14.7761 11 14.5L11 12.0001L3.5 12.0001C3.22386 12.0001 3 11.7762 3 11.5001L3 4.00005L0.499989 4C0.223847 4 -6.10541e-06 3.77613 -5.02576e-07 3.49999C5.13006e-06 3.22385 0.223867 3 0.50001 3L3 3.00005L3 0.500001C3 0.223859 3.22386 8.12755e-07 3.5 8.00684e-07ZM4 4.00006L4 11.0001L11 11.0001L11 4.00006L4 4.00006Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1q = [\n \"color\"\n];\nvar Cross1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.8536 2.85355C13.0488 2.65829 13.0488 2.34171 12.8536 2.14645C12.6583 1.95118 12.3417 1.95118 12.1464 2.14645L7.5 6.79289L2.85355 2.14645C2.65829 1.95118 2.34171 1.95118 2.14645 2.14645C1.95118 2.34171 1.95118 2.65829 2.14645 2.85355L6.79289 7.5L2.14645 12.1464C1.95118 12.3417 1.95118 12.6583 2.14645 12.8536C2.34171 13.0488 2.65829 13.0488 2.85355 12.8536L7.5 8.20711L12.1464 12.8536C12.3417 13.0488 12.6583 13.0488 12.8536 12.8536C13.0488 12.6583 13.0488 12.3417 12.8536 12.1464L8.20711 7.5L12.8536 2.85355Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1r = [\n \"color\"\n];\nvar Cross2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1r);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1s = [\n \"color\"\n];\nvar CrossCircledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1s);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.49988C0.877075 3.84219 3.84222 0.877045 7.49991 0.877045C11.1576 0.877045 14.1227 3.84219 14.1227 7.49988C14.1227 11.1575 11.1576 14.1227 7.49991 14.1227C3.84222 14.1227 0.877075 11.1575 0.877075 7.49988ZM7.49991 1.82704C4.36689 1.82704 1.82708 4.36686 1.82708 7.49988C1.82708 10.6329 4.36689 13.1727 7.49991 13.1727C10.6329 13.1727 13.1727 10.6329 13.1727 7.49988C13.1727 4.36686 10.6329 1.82704 7.49991 1.82704ZM9.85358 5.14644C10.0488 5.3417 10.0488 5.65829 9.85358 5.85355L8.20713 7.49999L9.85358 9.14644C10.0488 9.3417 10.0488 9.65829 9.85358 9.85355C9.65832 10.0488 9.34173 10.0488 9.14647 9.85355L7.50002 8.2071L5.85358 9.85355C5.65832 10.0488 5.34173 10.0488 5.14647 9.85355C4.95121 9.65829 4.95121 9.3417 5.14647 9.14644L6.79292 7.49999L5.14647 5.85355C4.95121 5.65829 4.95121 5.3417 5.14647 5.14644C5.34173 4.95118 5.65832 4.95118 5.85358 5.14644L7.50002 6.79289L9.14647 5.14644C9.34173 4.95118 9.65832 4.95118 9.85358 5.14644Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1t = [\n \"color\"\n];\nvar Crosshair1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1t);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.50207C0.877075 3.84319 3.84319 0.877075 7.50208 0.877075C11.1609 0.877075 14.1271 3.84319 14.1271 7.50207C14.1271 11.1609 11.1609 14.1271 7.50208 14.1271C3.84319 14.1271 0.877075 11.1609 0.877075 7.50207ZM1.84898 7.00003C2.0886 4.26639 4.26639 2.0886 7.00003 1.84898V4.50003C7.00003 4.77617 7.22388 5.00003 7.50003 5.00003C7.77617 5.00003 8.00003 4.77617 8.00003 4.50003V1.84862C10.7356 2.08643 12.9154 4.26502 13.1552 7.00003H10.5C10.2239 7.00003 10 7.22388 10 7.50003C10 7.77617 10.2239 8.00003 10.5 8.00003H13.1555C12.9176 10.7369 10.7369 12.9176 8.00003 13.1555V10.5C8.00003 10.2239 7.77617 10 7.50003 10C7.22388 10 7.00003 10.2239 7.00003 10.5V13.1552C4.26502 12.9154 2.08643 10.7356 1.84862 8.00003H4.50003C4.77617 8.00003 5.00003 7.77617 5.00003 7.50003C5.00003 7.22388 4.77617 7.00003 4.50003 7.00003H1.84898Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1u = [\n \"color\"\n];\nvar Crosshair2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1u);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 0C7.77614 0 8 0.223858 8 0.5V1.80687C10.6922 2.0935 12.8167 4.28012 13.0068 7H14.5C14.7761 7 15 7.22386 15 7.5C15 7.77614 14.7761 8 14.5 8H12.9888C12.7094 10.6244 10.6244 12.7094 8 12.9888V14.5C8 14.7761 7.77614 15 7.5 15C7.22386 15 7 14.7761 7 14.5V13.0068C4.28012 12.8167 2.0935 10.6922 1.80687 8H0.5C0.223858 8 0 7.77614 0 7.5C0 7.22386 0.223858 7 0.5 7H1.78886C1.98376 4.21166 4.21166 1.98376 7 1.78886V0.5C7 0.223858 7.22386 0 7.5 0ZM8 12.0322V9.5C8 9.22386 7.77614 9 7.5 9C7.22386 9 7 9.22386 7 9.5V12.054C4.80517 11.8689 3.04222 10.1668 2.76344 8H5.5C5.77614 8 6 7.77614 6 7.5C6 7.22386 5.77614 7 5.5 7H2.7417C2.93252 4.73662 4.73662 2.93252 7 2.7417V5.5C7 5.77614 7.22386 6 7.5 6C7.77614 6 8 5.77614 8 5.5V2.76344C10.1668 3.04222 11.8689 4.80517 12.054 7H9.5C9.22386 7 9 7.22386 9 7.5C9 7.77614 9.22386 8 9.5 8H12.0322C11.7621 10.0991 10.0991 11.7621 8 12.0322Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1v = [\n \"color\"\n];\nvar CrumpledPaperIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1v);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.60913 0.0634287C4.39082 0.0088505 4.16575 0.12393 4.08218 0.332867L3.1538 2.6538L0.832866 3.58218C0.702884 3.63417 0.604504 3.7437 0.566705 3.87849C0.528906 4.01329 0.555994 4.158 0.639992 4.26999L2.01148 6.09864L1.06343 9.89085C1.00944 10.1068 1.12145 10.3298 1.32691 10.4154L4.20115 11.613L5.62557 13.7496C5.73412 13.9124 5.93545 13.9864 6.12362 13.9327L9.62362 12.9327C9.62988 12.9309 9.63611 12.929 9.64229 12.9269L12.6423 11.9269C12.7923 11.8769 12.905 11.7519 12.9393 11.5976L13.9393 7.09761C13.9776 6.92506 13.9114 6.74605 13.77 6.63999L11.95 5.27499V2.99999C11.95 2.82955 11.8537 2.67373 11.7012 2.5975L8.70124 1.0975C8.67187 1.08282 8.64098 1.07139 8.60913 1.06343L4.60913 0.0634287ZM11.4323 6.01173L12.7748 7.01858L10.2119 9.15429C10.1476 9.20786 10.0995 9.2783 10.0731 9.35769L9.25382 11.8155L7.73849 10.8684C7.52774 10.7367 7.25011 10.8007 7.11839 11.0115C6.98667 11.2222 7.05074 11.4999 7.26149 11.6316L8.40341 12.3453L6.19221 12.9771L4.87441 11.0004C4.82513 10.9265 4.75508 10.8688 4.67307 10.8346L2.03046 9.73352L2.85134 6.44999H4.99999C5.24852 6.44999 5.44999 6.24852 5.44999 5.99999C5.44999 5.75146 5.24852 5.54999 4.99999 5.54999H2.72499L1.7123 4.19974L3.51407 3.47903L6.35769 4.4269C6.53655 4.48652 6.73361 4.42832 6.85138 4.28111L8.62413 2.06518L11.05 3.27811V5.19533L8.83287 6.08218C8.70996 6.13134 8.61494 6.23212 8.57308 6.35769L8.07308 7.85769C7.99449 8.09346 8.12191 8.34831 8.35769 8.4269C8.59346 8.50549 8.84831 8.37807 8.9269 8.14229L9.3609 6.84029L11.4323 6.01173ZM7.71052 1.76648L6.34462 3.47386L4.09505 2.724L4.77192 1.03183L7.71052 1.76648ZM10.2115 11.7885L12.116 11.1537L12.7745 8.19034L10.8864 9.76374L10.2115 11.7885Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1w = [\n \"color\"\n];\nvar CubeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1w);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.28856 0.796908C7.42258 0.734364 7.57742 0.734364 7.71144 0.796908L13.7114 3.59691C13.8875 3.67906 14 3.85574 14 4.05V10.95C14 11.1443 13.8875 11.3209 13.7114 11.4031L7.71144 14.2031C7.57742 14.2656 7.42258 14.2656 7.28856 14.2031L1.28856 11.4031C1.11252 11.3209 1 11.1443 1 10.95V4.05C1 3.85574 1.11252 3.67906 1.28856 3.59691L7.28856 0.796908ZM2 4.80578L7 6.93078V12.9649L2 10.6316V4.80578ZM8 12.9649L13 10.6316V4.80578L8 6.93078V12.9649ZM7.5 6.05672L12.2719 4.02866L7.5 1.80176L2.72809 4.02866L7.5 6.05672Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1x = [\n \"color\"\n];\nvar CursorArrowIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1x);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.29227 0.048984C3.47033 -0.032338 3.67946 -0.00228214 3.8274 0.125891L12.8587 7.95026C13.0134 8.08432 13.0708 8.29916 13.0035 8.49251C12.9362 8.68586 12.7578 8.81866 12.5533 8.82768L9.21887 8.97474L11.1504 13.2187C11.2648 13.47 11.1538 13.7664 10.9026 13.8808L8.75024 14.8613C8.499 14.9758 8.20255 14.8649 8.08802 14.6137L6.15339 10.3703L3.86279 12.7855C3.72196 12.934 3.50487 12.9817 3.31479 12.9059C3.1247 12.8301 3 12.6461 3 12.4414V0.503792C3 0.308048 3.11422 0.130306 3.29227 0.048984ZM4 1.59852V11.1877L5.93799 9.14425C6.05238 9.02363 6.21924 8.96776 6.38319 8.99516C6.54715 9.02256 6.68677 9.12965 6.75573 9.2809L8.79056 13.7441L10.0332 13.178L8.00195 8.71497C7.93313 8.56376 7.94391 8.38824 8.03072 8.24659C8.11753 8.10494 8.26903 8.01566 8.435 8.00834L11.2549 7.88397L4 1.59852Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1y = [\n \"color\"\n];\nvar CursorTextIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.5 1C4.22386 1 4 1.22386 4 1.5C4 1.77614 4.22386 2 4.5 2C5.42215 2 6.0399 2.23054 6.42075 2.56379C6.79286 2.88939 7 3.36626 7 4V7H5.75C5.47386 7 5.25 7.22386 5.25 7.5C5.25 7.77614 5.47386 8 5.75 8H7V11C7 11.6337 6.79286 12.1106 6.42075 12.4362C6.0399 12.7695 5.42215 13 4.5 13C4.22386 13 4 13.2239 4 13.5C4 13.7761 4.22386 14 4.5 14C5.57785 14 6.4601 13.7305 7.07925 13.1888C7.24168 13.0467 7.38169 12.8896 7.5 12.7198C7.61832 12.8896 7.75832 13.0467 7.92075 13.1888C8.5399 13.7305 9.42215 14 10.5 14C10.7761 14 11 13.7761 11 13.5C11 13.2239 10.7761 13 10.5 13C9.57785 13 8.9601 12.7695 8.57925 12.4362C8.20714 12.1106 8 11.6337 8 11V8H9.25C9.52614 8 9.75 7.77614 9.75 7.5C9.75 7.22386 9.52614 7 9.25 7H8V4C8 3.36626 8.20714 2.88939 8.57925 2.56379C8.9601 2.23054 9.57785 2 10.5 2C10.7761 2 11 1.77614 11 1.5C11 1.22386 10.7761 1 10.5 1C9.42215 1 8.5399 1.26946 7.92075 1.81121C7.75832 1.95333 7.61832 2.11043 7.5 2.28023C7.38168 2.11043 7.24168 1.95333 7.07925 1.81121C6.4601 1.26946 5.57785 1 4.5 1Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1z = [\n \"color\"\n];\nvar DashIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 7.5C5 7.22386 5.22386 7 5.5 7H9.5C9.77614 7 10 7.22386 10 7.5C10 7.77614 9.77614 8 9.5 8H5.5C5.22386 8 5 7.77614 5 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1A = [\n \"color\"\n];\nvar DashboardIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1A);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.8 1L2.74967 0.99997C2.52122 0.999752 2.32429 0.999564 2.14983 1.04145C1.60136 1.17312 1.17312 1.60136 1.04145 2.14983C0.999564 2.32429 0.999752 2.52122 0.99997 2.74967L1 2.8V5.2L0.99997 5.25033C0.999752 5.47878 0.999564 5.67572 1.04145 5.85017C1.17312 6.39864 1.60136 6.82688 2.14983 6.95856C2.32429 7.00044 2.52122 7.00025 2.74967 7.00003L2.8 7H5.2L5.25033 7.00003C5.47878 7.00025 5.67572 7.00044 5.85017 6.95856C6.39864 6.82688 6.82688 6.39864 6.95856 5.85017C7.00044 5.67572 7.00025 5.47878 7.00003 5.25033L7 5.2V2.8L7.00003 2.74967C7.00025 2.52122 7.00044 2.32429 6.95856 2.14983C6.82688 1.60136 6.39864 1.17312 5.85017 1.04145C5.67572 0.999564 5.47878 0.999752 5.25033 0.99997L5.2 1H2.8ZM2.38328 2.01382C2.42632 2.00348 2.49222 2 2.8 2H5.2C5.50779 2 5.57369 2.00348 5.61672 2.01382C5.79955 2.05771 5.94229 2.20045 5.98619 2.38328C5.99652 2.42632 6 2.49222 6 2.8V5.2C6 5.50779 5.99652 5.57369 5.98619 5.61672C5.94229 5.79955 5.79955 5.94229 5.61672 5.98619C5.57369 5.99652 5.50779 6 5.2 6H2.8C2.49222 6 2.42632 5.99652 2.38328 5.98619C2.20045 5.94229 2.05771 5.79955 2.01382 5.61672C2.00348 5.57369 2 5.50779 2 5.2V2.8C2 2.49222 2.00348 2.42632 2.01382 2.38328C2.05771 2.20045 2.20045 2.05771 2.38328 2.01382ZM9.8 1L9.74967 0.99997C9.52122 0.999752 9.32429 0.999564 9.14983 1.04145C8.60136 1.17312 8.17312 1.60136 8.04145 2.14983C7.99956 2.32429 7.99975 2.52122 7.99997 2.74967L8 2.8V5.2L7.99997 5.25033C7.99975 5.47878 7.99956 5.67572 8.04145 5.85017C8.17312 6.39864 8.60136 6.82688 9.14983 6.95856C9.32429 7.00044 9.52122 7.00025 9.74967 7.00003L9.8 7H12.2L12.2503 7.00003C12.4788 7.00025 12.6757 7.00044 12.8502 6.95856C13.3986 6.82688 13.8269 6.39864 13.9586 5.85017C14.0004 5.67572 14.0003 5.47878 14 5.25033L14 5.2V2.8L14 2.74967C14.0003 2.52122 14.0004 2.32429 13.9586 2.14983C13.8269 1.60136 13.3986 1.17312 12.8502 1.04145C12.6757 0.999564 12.4788 0.999752 12.2503 0.99997L12.2 1H9.8ZM9.38328 2.01382C9.42632 2.00348 9.49222 2 9.8 2H12.2C12.5078 2 12.5737 2.00348 12.6167 2.01382C12.7995 2.05771 12.9423 2.20045 12.9862 2.38328C12.9965 2.42632 13 2.49222 13 2.8V5.2C13 5.50779 12.9965 5.57369 12.9862 5.61672C12.9423 5.79955 12.7995 5.94229 12.6167 5.98619C12.5737 5.99652 12.5078 6 12.2 6H9.8C9.49222 6 9.42632 5.99652 9.38328 5.98619C9.20045 5.94229 9.05771 5.79955 9.01382 5.61672C9.00348 5.57369 9 5.50779 9 5.2V2.8C9 2.49222 9.00348 2.42632 9.01382 2.38328C9.05771 2.20045 9.20045 2.05771 9.38328 2.01382ZM2.74967 7.99997L2.8 8H5.2L5.25033 7.99997C5.47878 7.99975 5.67572 7.99956 5.85017 8.04145C6.39864 8.17312 6.82688 8.60136 6.95856 9.14983C7.00044 9.32429 7.00025 9.52122 7.00003 9.74967L7 9.8V12.2L7.00003 12.2503C7.00025 12.4788 7.00044 12.6757 6.95856 12.8502C6.82688 13.3986 6.39864 13.8269 5.85017 13.9586C5.67572 14.0004 5.47878 14.0003 5.25033 14L5.2 14H2.8L2.74967 14C2.52122 14.0003 2.32429 14.0004 2.14983 13.9586C1.60136 13.8269 1.17312 13.3986 1.04145 12.8502C0.999564 12.6757 0.999752 12.4788 0.99997 12.2503L1 12.2V9.8L0.99997 9.74967C0.999752 9.52122 0.999564 9.32429 1.04145 9.14983C1.17312 8.60136 1.60136 8.17312 2.14983 8.04145C2.32429 7.99956 2.52122 7.99975 2.74967 7.99997ZM2.8 9C2.49222 9 2.42632 9.00348 2.38328 9.01382C2.20045 9.05771 2.05771 9.20045 2.01382 9.38328C2.00348 9.42632 2 9.49222 2 9.8V12.2C2 12.5078 2.00348 12.5737 2.01382 12.6167C2.05771 12.7995 2.20045 12.9423 2.38328 12.9862C2.42632 12.9965 2.49222 13 2.8 13H5.2C5.50779 13 5.57369 12.9965 5.61672 12.9862C5.79955 12.9423 5.94229 12.7995 5.98619 12.6167C5.99652 12.5737 6 12.5078 6 12.2V9.8C6 9.49222 5.99652 9.42632 5.98619 9.38328C5.94229 9.20045 5.79955 9.05771 5.61672 9.01382C5.57369 9.00348 5.50779 9 5.2 9H2.8ZM9.8 8L9.74967 7.99997C9.52122 7.99975 9.32429 7.99956 9.14983 8.04145C8.60136 8.17312 8.17312 8.60136 8.04145 9.14983C7.99956 9.32429 7.99975 9.52122 7.99997 9.74967L8 9.8V12.2L7.99997 12.2503C7.99975 12.4788 7.99956 12.6757 8.04145 12.8502C8.17312 13.3986 8.60136 13.8269 9.14983 13.9586C9.32429 14.0004 9.52122 14.0003 9.74967 14L9.8 14H12.2L12.2503 14C12.4788 14.0003 12.6757 14.0004 12.8502 13.9586C13.3986 13.8269 13.8269 13.3986 13.9586 12.8502C14.0004 12.6757 14.0003 12.4788 14 12.2503L14 12.2V9.8L14 9.74967C14.0003 9.52122 14.0004 9.32429 13.9586 9.14983C13.8269 8.60136 13.3986 8.17312 12.8502 8.04145C12.6757 7.99956 12.4788 7.99975 12.2503 7.99997L12.2 8H9.8ZM9.38328 9.01382C9.42632 9.00348 9.49222 9 9.8 9H12.2C12.5078 9 12.5737 9.00348 12.6167 9.01382C12.7995 9.05771 12.9423 9.20045 12.9862 9.38328C12.9965 9.42632 13 9.49222 13 9.8V12.2C13 12.5078 12.9965 12.5737 12.9862 12.6167C12.9423 12.7995 12.7995 12.9423 12.6167 12.9862C12.5737 12.9965 12.5078 13 12.2 13H9.8C9.49222 13 9.42632 12.9965 9.38328 12.9862C9.20045 12.9423 9.05771 12.7995 9.01382 12.6167C9.00348 12.5737 9 12.5078 9 12.2V9.8C9 9.49222 9.00348 9.42632 9.01382 9.38328C9.05771 9.20045 9.20045 9.05771 9.38328 9.01382Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1B = [\n \"color\"\n];\nvar DesktopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1B);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 3.25C1 3.11193 1.11193 3 1.25 3H13.75C13.8881 3 14 3.11193 14 3.25V10.75C14 10.8881 13.8881 11 13.75 11H1.25C1.11193 11 1 10.8881 1 10.75V3.25ZM1.25 2C0.559643 2 0 2.55964 0 3.25V10.75C0 11.4404 0.559644 12 1.25 12H5.07341L4.82991 13.2986C4.76645 13.6371 5.02612 13.95 5.37049 13.95H9.62951C9.97389 13.95 10.2336 13.6371 10.1701 13.2986L9.92659 12H13.75C14.4404 12 15 11.4404 15 10.75V3.25C15 2.55964 14.4404 2 13.75 2H1.25ZM9.01091 12H5.98909L5.79222 13.05H9.20778L9.01091 12Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1C = [\n \"color\"\n];\nvar DimensionsIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1C);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.00014 2.73895C3.00014 2.94698 2.76087 3.06401 2.59666 2.93628L1.00386 1.69744C0.875177 1.59735 0.875177 1.40286 1.00386 1.30277L2.59666 0.063928C2.76087 -0.0637944 3.00014 0.0532293 3.00014 0.261266V1.00012H9.00009V0.261296C9.00009 0.0532591 9.23936 -0.0637646 9.40358 0.0639578L10.9964 1.3028C11.1251 1.40289 11.1251 1.59738 10.9964 1.69747L9.40358 2.93631C9.23936 3.06404 9.00009 2.94701 9.00009 2.73898V2.00012H3.00014V2.73895ZM9.50002 4.99998H2.50002C2.22388 4.99998 2.00002 5.22384 2.00002 5.49998V12.5C2.00002 12.7761 2.22388 13 2.50002 13H9.50002C9.77616 13 10 12.7761 10 12.5V5.49998C10 5.22384 9.77616 4.99998 9.50002 4.99998ZM2.50002 3.99998C1.67159 3.99998 1.00002 4.67156 1.00002 5.49998V12.5C1.00002 13.3284 1.67159 14 2.50002 14H9.50002C10.3284 14 11 13.3284 11 12.5V5.49998C11 4.67156 10.3284 3.99998 9.50002 3.99998H2.50002ZM14.7389 6.00001H14V12H14.7389C14.9469 12 15.064 12.2393 14.9362 12.4035L13.6974 13.9963C13.5973 14.125 13.4028 14.125 13.3027 13.9963L12.0639 12.4035C11.9362 12.2393 12.0532 12 12.2612 12H13V6.00001H12.2612C12.0532 6.00001 11.9361 5.76074 12.0639 5.59653L13.3027 4.00373C13.4028 3.87505 13.5973 3.87505 13.6974 4.00374L14.9362 5.59653C15.0639 5.76074 14.9469 6.00001 14.7389 6.00001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1D = [\n \"color\"\n];\nvar DiscIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1D);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.877075C3.84222 0.877075 0.877075 3.84222 0.877075 7.49991C0.877075 11.1576 3.84222 14.1227 7.49991 14.1227C11.1576 14.1227 14.1227 11.1576 14.1227 7.49991C14.1227 3.84222 11.1576 0.877075 7.49991 0.877075ZM1.82708 7.49991C1.82708 4.36689 4.36689 1.82707 7.49991 1.82707C10.6329 1.82707 13.1727 4.36689 13.1727 7.49991C13.1727 10.6329 10.6329 13.1727 7.49991 13.1727C4.36689 13.1727 1.82708 10.6329 1.82708 7.49991ZM8.37287 7.50006C8.37287 7.98196 7.98221 8.37263 7.5003 8.37263C7.01839 8.37263 6.62773 7.98196 6.62773 7.50006C6.62773 7.01815 7.01839 6.62748 7.5003 6.62748C7.98221 6.62748 8.37287 7.01815 8.37287 7.50006ZM9.32287 7.50006C9.32287 8.50664 8.50688 9.32263 7.5003 9.32263C6.49372 9.32263 5.67773 8.50664 5.67773 7.50006C5.67773 6.49348 6.49372 5.67748 7.5003 5.67748C8.50688 5.67748 9.32287 6.49348 9.32287 7.50006Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1E = [\n \"color\"\n];\nvar DiscordLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1E);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M5.07451 1.82584C5.03267 1.81926 4.99014 1.81825 4.94803 1.82284C4.10683 1.91446 2.82673 2.36828 2.07115 2.77808C2.02106 2.80525 1.97621 2.84112 1.93869 2.88402C1.62502 3.24266 1.34046 3.82836 1.11706 4.38186C0.887447 4.95076 0.697293 5.55032 0.588937 5.98354C0.236232 7.39369 0.042502 9.08728 0.0174948 10.6925C0.0162429 10.7729 0.0351883 10.8523 0.0725931 10.9234C0.373679 11.496 1.02015 12.027 1.66809 12.4152C2.32332 12.8078 3.08732 13.1182 3.70385 13.1778C3.85335 13.1922 4.00098 13.1358 4.10282 13.0255C4.2572 12.8581 4.5193 12.4676 4.71745 12.1643C4.80739 12.0267 4.89157 11.8953 4.95845 11.7901C5.62023 11.9106 6.45043 11.9801 7.50002 11.9801C8.54844 11.9801 9.37796 11.9107 10.0394 11.7905C10.1062 11.8957 10.1903 12.0269 10.2801 12.1643C10.4783 12.4676 10.7404 12.8581 10.8947 13.0255C10.9966 13.1358 11.1442 13.1922 11.2937 13.1778C11.9102 13.1182 12.6742 12.8078 13.3295 12.4152C13.9774 12.027 14.6239 11.496 14.925 10.9234C14.9624 10.8523 14.9813 10.7729 14.9801 10.6925C14.9551 9.08728 14.7613 7.39369 14.4086 5.98354C14.3003 5.55032 14.1101 4.95076 13.8805 4.38186C13.6571 3.82836 13.3725 3.24266 13.0589 2.88402C13.0214 2.84112 12.9765 2.80525 12.9264 2.77808C12.1708 2.36828 10.8907 1.91446 10.0495 1.82284C10.0074 1.81825 9.96489 1.81926 9.92305 1.82584C9.71676 1.85825 9.5391 1.96458 9.40809 2.06355C9.26977 2.16804 9.1413 2.29668 9.0304 2.42682C8.86968 2.61544 8.71437 2.84488 8.61428 3.06225C8.27237 3.03501 7.90138 3.02 7.5 3.02C7.0977 3.02 6.72593 3.03508 6.38337 3.06244C6.28328 2.84501 6.12792 2.61549 5.96716 2.42682C5.85626 2.29668 5.72778 2.16804 5.58947 2.06355C5.45846 1.96458 5.2808 1.85825 5.07451 1.82584ZM11.0181 11.5382C11.0395 11.5713 11.0615 11.6051 11.0838 11.6392C11.2169 11.843 11.3487 12.0385 11.4508 12.1809C11.8475 12.0916 12.352 11.8818 12.8361 11.5917C13.3795 11.2661 13.8098 10.8918 14.0177 10.5739C13.9852 9.06758 13.7993 7.50369 13.4773 6.21648C13.38 5.82759 13.2038 5.27021 12.9903 4.74117C12.7893 4.24326 12.5753 3.82162 12.388 3.5792C11.7376 3.24219 10.7129 2.88582 10.0454 2.78987C10.0308 2.79839 10.0113 2.81102 9.98675 2.82955C9.91863 2.881 9.84018 2.95666 9.76111 3.04945C9.71959 3.09817 9.68166 3.1471 9.64768 3.19449C9.953 3.25031 10.2253 3.3171 10.4662 3.39123C11.1499 3.6016 11.6428 3.89039 11.884 4.212C12.0431 4.42408 12.0001 4.72494 11.788 4.884C11.5759 5.04306 11.2751 5.00008 11.116 4.788C11.0572 4.70961 10.8001 4.4984 10.1838 4.30877C9.58933 4.12585 8.71356 3.98 7.5 3.98C6.28644 3.98 5.41067 4.12585 4.81616 4.30877C4.19988 4.4984 3.94279 4.70961 3.884 4.788C3.72494 5.00008 3.42408 5.04306 3.212 4.884C2.99992 4.72494 2.95694 4.42408 3.116 4.212C3.35721 3.89039 3.85011 3.6016 4.53383 3.39123C4.77418 3.31727 5.04571 3.25062 5.35016 3.19488C5.31611 3.14738 5.27808 3.09831 5.23645 3.04945C5.15738 2.95666 5.07893 2.881 5.01081 2.82955C4.98628 2.81102 4.96674 2.79839 4.95217 2.78987C4.28464 2.88582 3.25999 3.24219 2.60954 3.5792C2.42226 3.82162 2.20825 4.24326 2.00729 4.74117C1.79376 5.27021 1.61752 5.82759 1.52025 6.21648C1.19829 7.50369 1.01236 9.06758 0.97986 10.5739C1.18772 10.8918 1.61807 11.2661 2.16148 11.5917C2.64557 11.8818 3.15003 12.0916 3.5468 12.1809C3.64885 12.0385 3.78065 11.843 3.9138 11.6392C3.93626 11.6048 3.95838 11.5708 3.97996 11.5375C3.19521 11.2591 2.77361 10.8758 2.50064 10.4664C2.35359 10.2458 2.4132 9.94778 2.63377 9.80074C2.85435 9.65369 3.15236 9.71329 3.29941 9.93387C3.56077 10.3259 4.24355 11.0201 7.50002 11.0201C10.7565 11.0201 11.4392 10.326 11.7006 9.93386C11.8477 9.71329 12.1457 9.65369 12.3663 9.80074C12.5869 9.94779 12.6465 10.2458 12.4994 10.4664C12.2262 10.8762 11.8041 11.2598 11.0181 11.5382ZM4.08049 7.01221C4.32412 6.74984 4.65476 6.60162 5.00007 6.59998C5.34538 6.60162 5.67603 6.74984 5.91966 7.01221C6.16329 7.27459 6.30007 7.62974 6.30007 7.99998C6.30007 8.37021 6.16329 8.72536 5.91966 8.98774C5.67603 9.25011 5.34538 9.39833 5.00007 9.39998C4.65476 9.39833 4.32412 9.25011 4.08049 8.98774C3.83685 8.72536 3.70007 8.37021 3.70007 7.99998C3.70007 7.62974 3.83685 7.27459 4.08049 7.01221ZM9.99885 6.59998C9.65354 6.60162 9.3229 6.74984 9.07926 7.01221C8.83563 7.27459 8.69885 7.62974 8.69885 7.99998C8.69885 8.37021 8.83563 8.72536 9.07926 8.98774C9.3229 9.25011 9.65354 9.39833 9.99885 9.39998C10.3442 9.39833 10.6748 9.25011 10.9184 8.98774C11.1621 8.72536 11.2989 8.37021 11.2989 7.99998C11.2989 7.62974 11.1621 7.27459 10.9184 7.01221C10.6748 6.74984 10.3442 6.60162 9.99885 6.59998Z\",\n fill: color\n }));\n});\nvar _excluded$1F = [\n \"color\"\n];\nvar DividerHorizontalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1F);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 7.5C2 7.22386 2.22386 7 2.5 7H12.5C12.7761 7 13 7.22386 13 7.5C13 7.77614 12.7761 8 12.5 8H2.5C2.22386 8 2 7.77614 2 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1G = [\n \"color\"\n];\nvar DividerVerticalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1G);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 2C7.77614 2 8 2.22386 8 2.5L8 12.5C8 12.7761 7.77614 13 7.5 13C7.22386 13 7 12.7761 7 12.5L7 2.5C7 2.22386 7.22386 2 7.5 2Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1H = [\n \"color\"\n];\nvar DotIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1H);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 9.125C8.39746 9.125 9.125 8.39746 9.125 7.5C9.125 6.60254 8.39746 5.875 7.5 5.875C6.60254 5.875 5.875 6.60254 5.875 7.5C5.875 8.39746 6.60254 9.125 7.5 9.125ZM7.5 10.125C8.94975 10.125 10.125 8.94975 10.125 7.5C10.125 6.05025 8.94975 4.875 7.5 4.875C6.05025 4.875 4.875 6.05025 4.875 7.5C4.875 8.94975 6.05025 10.125 7.5 10.125Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1I = [\n \"color\"\n];\nvar DotFilledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1I);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.875 7.5C9.875 8.81168 8.81168 9.875 7.5 9.875C6.18832 9.875 5.125 8.81168 5.125 7.5C5.125 6.18832 6.18832 5.125 7.5 5.125C8.81168 5.125 9.875 6.18832 9.875 7.5Z\",\n fill: color\n }));\n});\nvar _excluded$1J = [\n \"color\"\n];\nvar DotsHorizontalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1J);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.625 7.5C3.625 8.12132 3.12132 8.625 2.5 8.625C1.87868 8.625 1.375 8.12132 1.375 7.5C1.375 6.87868 1.87868 6.375 2.5 6.375C3.12132 6.375 3.625 6.87868 3.625 7.5ZM8.625 7.5C8.625 8.12132 8.12132 8.625 7.5 8.625C6.87868 8.625 6.375 8.12132 6.375 7.5C6.375 6.87868 6.87868 6.375 7.5 6.375C8.12132 6.375 8.625 6.87868 8.625 7.5ZM12.5 8.625C13.1213 8.625 13.625 8.12132 13.625 7.5C13.625 6.87868 13.1213 6.375 12.5 6.375C11.8787 6.375 11.375 6.87868 11.375 7.5C11.375 8.12132 11.8787 8.625 12.5 8.625Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1K = [\n \"color\"\n];\nvar DotsVerticalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1K);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.625 2.5C8.625 3.12132 8.12132 3.625 7.5 3.625C6.87868 3.625 6.375 3.12132 6.375 2.5C6.375 1.87868 6.87868 1.375 7.5 1.375C8.12132 1.375 8.625 1.87868 8.625 2.5ZM8.625 7.5C8.625 8.12132 8.12132 8.625 7.5 8.625C6.87868 8.625 6.375 8.12132 6.375 7.5C6.375 6.87868 6.87868 6.375 7.5 6.375C8.12132 6.375 8.625 6.87868 8.625 7.5ZM7.5 13.625C8.12132 13.625 8.625 13.1213 8.625 12.5C8.625 11.8787 8.12132 11.375 7.5 11.375C6.87868 11.375 6.375 11.8787 6.375 12.5C6.375 13.1213 6.87868 13.625 7.5 13.625Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1L = [\n \"color\"\n];\nvar DoubleArrowDownIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1L);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.85355 2.14645C3.65829 1.95118 3.34171 1.95118 3.14645 2.14645C2.95118 2.34171 2.95118 2.65829 3.14645 2.85355L7.14645 6.85355C7.34171 7.04882 7.65829 7.04882 7.85355 6.85355L11.8536 2.85355C12.0488 2.65829 12.0488 2.34171 11.8536 2.14645C11.6583 1.95118 11.3417 1.95118 11.1464 2.14645L7.5 5.79289L3.85355 2.14645ZM3.85355 8.14645C3.65829 7.95118 3.34171 7.95118 3.14645 8.14645C2.95118 8.34171 2.95118 8.65829 3.14645 8.85355L7.14645 12.8536C7.34171 13.0488 7.65829 13.0488 7.85355 12.8536L11.8536 8.85355C12.0488 8.65829 12.0488 8.34171 11.8536 8.14645C11.6583 7.95118 11.3417 7.95118 11.1464 8.14645L7.5 11.7929L3.85355 8.14645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1M = [\n \"color\"\n];\nvar DoubleArrowLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1M);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.85355 3.85355C7.04882 3.65829 7.04882 3.34171 6.85355 3.14645C6.65829 2.95118 6.34171 2.95118 6.14645 3.14645L2.14645 7.14645C1.95118 7.34171 1.95118 7.65829 2.14645 7.85355L6.14645 11.8536C6.34171 12.0488 6.65829 12.0488 6.85355 11.8536C7.04882 11.6583 7.04882 11.3417 6.85355 11.1464L3.20711 7.5L6.85355 3.85355ZM12.8536 3.85355C13.0488 3.65829 13.0488 3.34171 12.8536 3.14645C12.6583 2.95118 12.3417 2.95118 12.1464 3.14645L8.14645 7.14645C7.95118 7.34171 7.95118 7.65829 8.14645 7.85355L12.1464 11.8536C12.3417 12.0488 12.6583 12.0488 12.8536 11.8536C13.0488 11.6583 13.0488 11.3417 12.8536 11.1464L9.20711 7.5L12.8536 3.85355Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1N = [\n \"color\"\n];\nvar DoubleArrowRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1N);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.14645 11.1464C1.95118 11.3417 1.95118 11.6583 2.14645 11.8536C2.34171 12.0488 2.65829 12.0488 2.85355 11.8536L6.85355 7.85355C7.04882 7.65829 7.04882 7.34171 6.85355 7.14645L2.85355 3.14645C2.65829 2.95118 2.34171 2.95118 2.14645 3.14645C1.95118 3.34171 1.95118 3.65829 2.14645 3.85355L5.79289 7.5L2.14645 11.1464ZM8.14645 11.1464C7.95118 11.3417 7.95118 11.6583 8.14645 11.8536C8.34171 12.0488 8.65829 12.0488 8.85355 11.8536L12.8536 7.85355C13.0488 7.65829 13.0488 7.34171 12.8536 7.14645L8.85355 3.14645C8.65829 2.95118 8.34171 2.95118 8.14645 3.14645C7.95118 3.34171 7.95118 3.65829 8.14645 3.85355L11.7929 7.5L8.14645 11.1464Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1O = [\n \"color\"\n];\nvar DoubleArrowUpIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1O);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.1464 6.85355C11.3417 7.04882 11.6583 7.04882 11.8536 6.85355C12.0488 6.65829 12.0488 6.34171 11.8536 6.14645L7.85355 2.14645C7.65829 1.95118 7.34171 1.95118 7.14645 2.14645L3.14645 6.14645C2.95118 6.34171 2.95118 6.65829 3.14645 6.85355C3.34171 7.04882 3.65829 7.04882 3.85355 6.85355L7.5 3.20711L11.1464 6.85355ZM11.1464 12.8536C11.3417 13.0488 11.6583 13.0488 11.8536 12.8536C12.0488 12.6583 12.0488 12.3417 11.8536 12.1464L7.85355 8.14645C7.65829 7.95118 7.34171 7.95118 7.14645 8.14645L3.14645 12.1464C2.95118 12.3417 2.95118 12.6583 3.14645 12.8536C3.34171 13.0488 3.65829 13.0488 3.85355 12.8536L7.5 9.20711L11.1464 12.8536Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1P = [\n \"color\"\n];\nvar DownloadIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1P);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.50005 1.04999C7.74858 1.04999 7.95005 1.25146 7.95005 1.49999V8.41359L10.1819 6.18179C10.3576 6.00605 10.6425 6.00605 10.8182 6.18179C10.994 6.35753 10.994 6.64245 10.8182 6.81819L7.81825 9.81819C7.64251 9.99392 7.35759 9.99392 7.18185 9.81819L4.18185 6.81819C4.00611 6.64245 4.00611 6.35753 4.18185 6.18179C4.35759 6.00605 4.64251 6.00605 4.81825 6.18179L7.05005 8.41359V1.49999C7.05005 1.25146 7.25152 1.04999 7.50005 1.04999ZM2.5 10C2.77614 10 3 10.2239 3 10.5V12C3 12.5539 3.44565 13 3.99635 13H11.0012C11.5529 13 12 12.5528 12 12V10.5C12 10.2239 12.2239 10 12.5 10C12.7761 10 13 10.2239 13 10.5V12C13 13.1041 12.1062 14 11.0012 14H3.99635C2.89019 14 2 13.103 2 12V10.5C2 10.2239 2.22386 10 2.5 10Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1Q = [\n \"color\"\n];\nvar DragHandleDots1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1Q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"4.5\",\n cy: \"2.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"4.5\",\n cy: \"4.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"4.5\",\n cy: \"6.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"4.5\",\n cy: \"8.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"4.5\",\n cy: \"10.498\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"4.5\",\n cy: \"12.498\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"6.5\",\n cy: \"2.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"6.5\",\n cy: \"4.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"6.5\",\n cy: \"6.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"6.5\",\n cy: \"8.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"6.5\",\n cy: \"10.498\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"6.5\",\n cy: \"12.498\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"8.499\",\n cy: \"2.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"8.499\",\n cy: \"4.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"8.499\",\n cy: \"6.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"8.499\",\n cy: \"8.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"8.499\",\n cy: \"10.498\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"8.499\",\n cy: \"12.498\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"10.499\",\n cy: \"2.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"10.499\",\n cy: \"4.5\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"10.499\",\n cy: \"6.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"10.499\",\n cy: \"8.499\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"10.499\",\n cy: \"10.498\",\n r: \".6\",\n fill: color\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"circle\", {\n cx: \"10.499\",\n cy: \"12.498\",\n r: \".6\",\n fill: color\n }));\n});\nvar _excluded$1R = [\n \"color\"\n];\nvar DragHandleDots2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1R);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.5 4.625C6.12132 4.625 6.625 4.12132 6.625 3.5C6.625 2.87868 6.12132 2.375 5.5 2.375C4.87868 2.375 4.375 2.87868 4.375 3.5C4.375 4.12132 4.87868 4.625 5.5 4.625ZM9.5 4.625C10.1213 4.625 10.625 4.12132 10.625 3.5C10.625 2.87868 10.1213 2.375 9.5 2.375C8.87868 2.375 8.375 2.87868 8.375 3.5C8.375 4.12132 8.87868 4.625 9.5 4.625ZM10.625 7.5C10.625 8.12132 10.1213 8.625 9.5 8.625C8.87868 8.625 8.375 8.12132 8.375 7.5C8.375 6.87868 8.87868 6.375 9.5 6.375C10.1213 6.375 10.625 6.87868 10.625 7.5ZM5.5 8.625C6.12132 8.625 6.625 8.12132 6.625 7.5C6.625 6.87868 6.12132 6.375 5.5 6.375C4.87868 6.375 4.375 6.87868 4.375 7.5C4.375 8.12132 4.87868 8.625 5.5 8.625ZM10.625 11.5C10.625 12.1213 10.1213 12.625 9.5 12.625C8.87868 12.625 8.375 12.1213 8.375 11.5C8.375 10.8787 8.87868 10.375 9.5 10.375C10.1213 10.375 10.625 10.8787 10.625 11.5ZM5.5 12.625C6.12132 12.625 6.625 12.1213 6.625 11.5C6.625 10.8787 6.12132 10.375 5.5 10.375C4.87868 10.375 4.375 10.8787 4.375 11.5C4.375 12.1213 4.87868 12.625 5.5 12.625Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1S = [\n \"color\"\n];\nvar DragHandleHorizontalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1S);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.49998 4.09998C2.27906 4.09998 2.09998 4.27906 2.09998 4.49998C2.09998 4.72089 2.27906 4.89998 2.49998 4.89998H12.5C12.7209 4.89998 12.9 4.72089 12.9 4.49998C12.9 4.27906 12.7209 4.09998 12.5 4.09998H2.49998ZM2.49998 6.09998C2.27906 6.09998 2.09998 6.27906 2.09998 6.49998C2.09998 6.72089 2.27906 6.89998 2.49998 6.89998H12.5C12.7209 6.89998 12.9 6.72089 12.9 6.49998C12.9 6.27906 12.7209 6.09998 12.5 6.09998H2.49998ZM2.09998 8.49998C2.09998 8.27906 2.27906 8.09998 2.49998 8.09998H12.5C12.7209 8.09998 12.9 8.27906 12.9 8.49998C12.9 8.72089 12.7209 8.89998 12.5 8.89998H2.49998C2.27906 8.89998 2.09998 8.72089 2.09998 8.49998ZM2.49998 10.1C2.27906 10.1 2.09998 10.2791 2.09998 10.5C2.09998 10.7209 2.27906 10.9 2.49998 10.9H12.5C12.7209 10.9 12.9 10.7209 12.9 10.5C12.9 10.2791 12.7209 10.1 12.5 10.1H2.49998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1T = [\n \"color\"\n];\nvar DragHandleVerticalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1T);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.09998 12.5C4.09998 12.7209 4.27906 12.9 4.49998 12.9C4.72089 12.9 4.89998 12.7209 4.89998 12.5L4.89998 2.50002C4.89998 2.27911 4.72089 2.10003 4.49998 2.10003C4.27906 2.10003 4.09998 2.27911 4.09998 2.50002L4.09998 12.5ZM6.09998 12.5C6.09998 12.7209 6.27906 12.9 6.49998 12.9C6.72089 12.9 6.89998 12.7209 6.89998 12.5L6.89998 2.50002C6.89998 2.27911 6.72089 2.10003 6.49998 2.10003C6.27906 2.10003 6.09998 2.27911 6.09998 2.50002L6.09998 12.5ZM8.49998 12.9C8.27906 12.9 8.09998 12.7209 8.09998 12.5L8.09998 2.50002C8.09998 2.27911 8.27906 2.10002 8.49998 2.10002C8.72089 2.10002 8.89998 2.27911 8.89998 2.50002L8.89998 12.5C8.89998 12.7209 8.72089 12.9 8.49998 12.9ZM10.1 12.5C10.1 12.7209 10.2791 12.9 10.5 12.9C10.7209 12.9 10.9 12.7209 10.9 12.5L10.9 2.50002C10.9 2.27911 10.7209 2.10002 10.5 2.10002C10.2791 2.10002 10.1 2.27911 10.1 2.50002L10.1 12.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1U = [\n \"color\"\n];\nvar DrawingPinIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1U);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10.3285 1.13607C10.1332 0.940809 9.81662 0.940808 9.62136 1.13607C9.42609 1.33133 9.42609 1.64792 9.62136 1.84318L10.2744 2.49619L5.42563 6.13274L4.31805 5.02516C4.12279 4.8299 3.80621 4.8299 3.61095 5.02516C3.41569 5.22042 3.41569 5.537 3.61095 5.73226L5.02516 7.14648L6.08582 8.20714L2.81545 11.4775C2.62019 11.6728 2.62019 11.9894 2.81545 12.1846C3.01072 12.3799 3.3273 12.3799 3.52256 12.1846L6.79293 8.91425L7.85359 9.97491L9.2678 11.3891C9.46306 11.5844 9.77965 11.5844 9.97491 11.3891C10.1702 11.1939 10.1702 10.8773 9.97491 10.682L8.86733 9.57443L12.5039 4.7257L13.1569 5.37871C13.3522 5.57397 13.6687 5.57397 13.864 5.37871C14.0593 5.18345 14.0593 4.86687 13.864 4.6716L12.8033 3.61094L11.3891 2.19673L10.3285 1.13607ZM6.13992 6.84702L10.9887 3.21047L11.7896 4.01142L8.15305 8.86015L6.13992 6.84702Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1V = [\n \"color\"\n];\nvar DrawingPinFilledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1V);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.62129 1.13607C9.81656 0.940808 10.1331 0.940809 10.3284 1.13607L11.3891 2.19673L12.8033 3.61094L13.8639 4.6716C14.0592 4.86687 14.0592 5.18345 13.8639 5.37871C13.6687 5.57397 13.3521 5.57397 13.1568 5.37871L12.5038 4.7257L8.86727 9.57443L9.97485 10.682C10.1701 10.8773 10.1701 11.1939 9.97485 11.3891C9.77959 11.5844 9.463 11.5844 9.26774 11.3891L7.85353 9.97491L6.79287 8.91425L3.5225 12.1846C3.32724 12.3799 3.01065 12.3799 2.81539 12.1846C2.62013 11.9894 2.62013 11.6728 2.81539 11.4775L6.08576 8.20714L5.0251 7.14648L3.61089 5.73226C3.41563 5.537 3.41562 5.22042 3.61089 5.02516C3.80615 4.8299 4.12273 4.8299 4.31799 5.02516L5.42557 6.13274L10.2743 2.49619L9.62129 1.84318C9.42603 1.64792 9.42603 1.33133 9.62129 1.13607Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.62129 1.13607C9.81656 0.940808 10.1331 0.940809 10.3284 1.13607L11.3891 2.19673L12.8033 3.61094L13.8639 4.6716C14.0592 4.86687 14.0592 5.18345 13.8639 5.37871C13.6687 5.57397 13.3521 5.57397 13.1568 5.37871L12.5038 4.7257L8.86727 9.57443L9.97485 10.682C10.1701 10.8773 10.1701 11.1939 9.97485 11.3891C9.77959 11.5844 9.463 11.5844 9.26774 11.3891L7.85353 9.97491L6.79287 8.91425L3.5225 12.1846C3.32724 12.3799 3.01065 12.3799 2.81539 12.1846C2.62013 11.9894 2.62013 11.6728 2.81539 11.4775L6.08576 8.20714L5.0251 7.14648L3.61089 5.73226C3.41563 5.537 3.41562 5.22042 3.61089 5.02516C3.80615 4.8299 4.12273 4.8299 4.31799 5.02516L5.42557 6.13274L10.2743 2.49619L9.62129 1.84318C9.42603 1.64792 9.42603 1.33133 9.62129 1.13607Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1W = [\n \"color\"\n];\nvar DropdownMenuIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1W);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49999 3.09998C7.27907 3.09998 7.09999 3.27906 7.09999 3.49998C7.09999 3.72089 7.27907 3.89998 7.49999 3.89998H14.5C14.7209 3.89998 14.9 3.72089 14.9 3.49998C14.9 3.27906 14.7209 3.09998 14.5 3.09998H7.49999ZM7.49998 5.1C7.27907 5.1 7.09998 5.27908 7.09998 5.5C7.09998 5.72091 7.27907 5.9 7.49998 5.9H14.5C14.7209 5.9 14.9 5.72091 14.9 5.5C14.9 5.27908 14.7209 5.1 14.5 5.1H7.49998ZM7.1 7.5C7.1 7.27908 7.27909 7.1 7.5 7.1H14.5C14.7209 7.1 14.9 7.27908 14.9 7.5C14.9 7.72091 14.7209 7.9 14.5 7.9H7.5C7.27909 7.9 7.1 7.72091 7.1 7.5ZM7.49998 9.1C7.27907 9.1 7.09998 9.27908 7.09998 9.5C7.09998 9.72091 7.27907 9.9 7.49998 9.9H14.5C14.7209 9.9 14.9 9.72091 14.9 9.5C14.9 9.27908 14.7209 9.1 14.5 9.1H7.49998ZM7.09998 11.5C7.09998 11.2791 7.27907 11.1 7.49998 11.1H14.5C14.7209 11.1 14.9 11.2791 14.9 11.5C14.9 11.7209 14.7209 11.9 14.5 11.9H7.49998C7.27907 11.9 7.09998 11.7209 7.09998 11.5ZM2.5 9.25003L5 6.00003H0L2.5 9.25003Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1X = [\n \"color\"\n];\nvar EnterIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1X);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.5 1C4.22386 1 4 1.22386 4 1.5C4 1.77614 4.22386 2 4.5 2H12V13H4.5C4.22386 13 4 13.2239 4 13.5C4 13.7761 4.22386 14 4.5 14H12C12.5523 14 13 13.5523 13 13V2C13 1.44772 12.5523 1 12 1H4.5ZM6.60355 4.89645C6.40829 4.70118 6.09171 4.70118 5.89645 4.89645C5.70118 5.09171 5.70118 5.40829 5.89645 5.60355L7.29289 7H0.5C0.223858 7 0 7.22386 0 7.5C0 7.77614 0.223858 8 0.5 8H7.29289L5.89645 9.39645C5.70118 9.59171 5.70118 9.90829 5.89645 10.1036C6.09171 10.2988 6.40829 10.2988 6.60355 10.1036L8.85355 7.85355C9.04882 7.65829 9.04882 7.34171 8.85355 7.14645L6.60355 4.89645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1Y = [\n \"color\"\n];\nvar EnterFullScreenIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1Y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 2.5C2 2.22386 2.22386 2 2.5 2H5.5C5.77614 2 6 2.22386 6 2.5C6 2.77614 5.77614 3 5.5 3H3V5.5C3 5.77614 2.77614 6 2.5 6C2.22386 6 2 5.77614 2 5.5V2.5ZM9 2.5C9 2.22386 9.22386 2 9.5 2H12.5C12.7761 2 13 2.22386 13 2.5V5.5C13 5.77614 12.7761 6 12.5 6C12.2239 6 12 5.77614 12 5.5V3H9.5C9.22386 3 9 2.77614 9 2.5ZM2.5 9C2.77614 9 3 9.22386 3 9.5V12H5.5C5.77614 12 6 12.2239 6 12.5C6 12.7761 5.77614 13 5.5 13H2.5C2.22386 13 2 12.7761 2 12.5V9.5C2 9.22386 2.22386 9 2.5 9ZM12.5 9C12.7761 9 13 9.22386 13 9.5V12.5C13 12.7761 12.7761 13 12.5 13H9.5C9.22386 13 9 12.7761 9 12.5C9 12.2239 9.22386 12 9.5 12H12V9.5C12 9.22386 12.2239 9 12.5 9Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1Z = [\n \"color\"\n];\nvar EnvelopeClosedIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1Z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 2C0.447715 2 0 2.44772 0 3V12C0 12.5523 0.447715 13 1 13H14C14.5523 13 15 12.5523 15 12V3C15 2.44772 14.5523 2 14 2H1ZM1 3L14 3V3.92494C13.9174 3.92486 13.8338 3.94751 13.7589 3.99505L7.5 7.96703L1.24112 3.99505C1.16621 3.94751 1.0826 3.92486 1 3.92494V3ZM1 4.90797V12H14V4.90797L7.74112 8.87995C7.59394 8.97335 7.40606 8.97335 7.25888 8.87995L1 4.90797Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1_ = [\n \"color\"\n];\nvar EnvelopeOpenIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1_);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.94721 0.164594C7.66569 0.0238299 7.33431 0.0238302 7.05279 0.164594L0.552786 3.41459C0.214002 3.58399 0 3.93025 0 4.30902V12C0 12.5523 0.447715 13 1 13H14C14.5523 13 15 12.5523 15 12V4.30902C15 3.93025 14.786 3.58399 14.4472 3.41459L7.94721 0.164594ZM13.5689 4.09349L7.5 1.05902L1.43105 4.09349L7.5 7.29136L13.5689 4.09349ZM1 4.88366V12H14V4.88366L7.70977 8.19813C7.57848 8.26731 7.42152 8.26731 7.29023 8.19813L1 4.88366Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$1$ = [\n \"color\"\n];\nvar EraserIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$1$);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.36052 0.72921C8.55578 0.533948 8.87236 0.533948 9.06763 0.72921L14.2708 5.93235C14.466 6.12761 14.466 6.4442 14.2708 6.63946L8.95513 11.9551L7.3466 13.5636C6.76081 14.1494 5.81106 14.1494 5.22528 13.5636L1.43635 9.7747C0.850563 9.18891 0.850563 8.23917 1.43635 7.65338L3.04488 6.04485L8.36052 0.72921ZM8.71407 1.78987L4.10554 6.3984L8.60157 10.8944L13.2101 6.28591L8.71407 1.78987ZM7.89447 11.6015L3.39843 7.10551L2.14346 8.36049C1.94819 8.55575 1.94819 8.87233 2.14346 9.06759L5.93238 12.8565C6.12765 13.0518 6.44423 13.0518 6.63949 12.8565L7.89447 11.6015Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$20 = [\n \"color\"\n];\nvar ExclamationTriangleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$20);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.4449 0.608765C8.0183 -0.107015 6.9817 -0.107015 6.55509 0.608766L0.161178 11.3368C-0.275824 12.07 0.252503 13 1.10608 13H13.8939C14.7475 13 15.2758 12.07 14.8388 11.3368L8.4449 0.608765ZM7.4141 1.12073C7.45288 1.05566 7.54712 1.05566 7.5859 1.12073L13.9798 11.8488C14.0196 11.9154 13.9715 12 13.8939 12H1.10608C1.02849 12 0.980454 11.9154 1.02018 11.8488L7.4141 1.12073ZM6.8269 4.48611C6.81221 4.10423 7.11783 3.78663 7.5 3.78663C7.88217 3.78663 8.18778 4.10423 8.1731 4.48612L8.01921 8.48701C8.00848 8.766 7.7792 8.98664 7.5 8.98664C7.2208 8.98664 6.99151 8.766 6.98078 8.48701L6.8269 4.48611ZM8.24989 10.476C8.24989 10.8902 7.9141 11.226 7.49989 11.226C7.08567 11.226 6.74989 10.8902 6.74989 10.476C6.74989 10.0618 7.08567 9.72599 7.49989 9.72599C7.9141 9.72599 8.24989 10.0618 8.24989 10.476Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$21 = [\n \"color\"\n];\nvar ExitIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$21);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 1C2.44771 1 2 1.44772 2 2V13C2 13.5523 2.44772 14 3 14H10.5C10.7761 14 11 13.7761 11 13.5C11 13.2239 10.7761 13 10.5 13H3V2L10.5 2C10.7761 2 11 1.77614 11 1.5C11 1.22386 10.7761 1 10.5 1H3ZM12.6036 4.89645C12.4083 4.70118 12.0917 4.70118 11.8964 4.89645C11.7012 5.09171 11.7012 5.40829 11.8964 5.60355L13.2929 7H6.5C6.22386 7 6 7.22386 6 7.5C6 7.77614 6.22386 8 6.5 8H13.2929L11.8964 9.39645C11.7012 9.59171 11.7012 9.90829 11.8964 10.1036C12.0917 10.2988 12.4083 10.2988 12.6036 10.1036L14.8536 7.85355C15.0488 7.65829 15.0488 7.34171 14.8536 7.14645L12.6036 4.89645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$22 = [\n \"color\"\n];\nvar ExitFullScreenIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$22);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.5 2C5.77614 2 6 2.22386 6 2.5V5.5C6 5.77614 5.77614 6 5.5 6H2.5C2.22386 6 2 5.77614 2 5.5C2 5.22386 2.22386 5 2.5 5H5V2.5C5 2.22386 5.22386 2 5.5 2ZM9.5 2C9.77614 2 10 2.22386 10 2.5V5H12.5C12.7761 5 13 5.22386 13 5.5C13 5.77614 12.7761 6 12.5 6H9.5C9.22386 6 9 5.77614 9 5.5V2.5C9 2.22386 9.22386 2 9.5 2ZM2 9.5C2 9.22386 2.22386 9 2.5 9H5.5C5.77614 9 6 9.22386 6 9.5V12.5C6 12.7761 5.77614 13 5.5 13C5.22386 13 5 12.7761 5 12.5V10H2.5C2.22386 10 2 9.77614 2 9.5ZM9 9.5C9 9.22386 9.22386 9 9.5 9H12.5C12.7761 9 13 9.22386 13 9.5C13 9.77614 12.7761 10 12.5 10H10V12.5C10 12.7761 9.77614 13 9.5 13C9.22386 13 9 12.7761 9 12.5V9.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$23 = [\n \"color\"\n];\nvar ExternalLinkIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$23);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 2C2.44772 2 2 2.44772 2 3V12C2 12.5523 2.44772 13 3 13H12C12.5523 13 13 12.5523 13 12V8.5C13 8.22386 12.7761 8 12.5 8C12.2239 8 12 8.22386 12 8.5V12H3V3L6.5 3C6.77614 3 7 2.77614 7 2.5C7 2.22386 6.77614 2 6.5 2H3ZM12.8536 2.14645C12.9015 2.19439 12.9377 2.24964 12.9621 2.30861C12.9861 2.36669 12.9996 2.4303 13 2.497L13 2.5V2.50049V5.5C13 5.77614 12.7761 6 12.5 6C12.2239 6 12 5.77614 12 5.5V3.70711L6.85355 8.85355C6.65829 9.04882 6.34171 9.04882 6.14645 8.85355C5.95118 8.65829 5.95118 8.34171 6.14645 8.14645L11.2929 3H9.5C9.22386 3 9 2.77614 9 2.5C9 2.22386 9.22386 2 9.5 2H12.4999H12.5C12.5678 2 12.6324 2.01349 12.6914 2.03794C12.7504 2.06234 12.8056 2.09851 12.8536 2.14645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$24 = [\n \"color\"\n];\nvar EyeClosedIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$24);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14.7649 6.07596C14.9991 6.22231 15.0703 6.53079 14.9239 6.76495C14.4849 7.46743 13.9632 8.10645 13.3702 8.66305L14.5712 9.86406C14.7664 10.0593 14.7664 10.3759 14.5712 10.5712C14.3759 10.7664 14.0593 10.7664 13.8641 10.5712L12.6011 9.30817C11.805 9.90283 10.9089 10.3621 9.93375 10.651L10.383 12.3277C10.4544 12.5944 10.2961 12.8685 10.0294 12.94C9.76267 13.0115 9.4885 12.8532 9.41704 12.5865L8.95917 10.8775C8.48743 10.958 8.00036 10.9999 7.50001 10.9999C6.99965 10.9999 6.51257 10.958 6.04082 10.8775L5.58299 12.5864C5.51153 12.8532 5.23737 13.0115 4.97064 12.94C4.7039 12.8686 4.5456 12.5944 4.61706 12.3277L5.06625 10.651C4.09111 10.3621 3.19503 9.90282 2.3989 9.30815L1.1359 10.5712C0.940638 10.7664 0.624058 10.7664 0.428798 10.5712C0.233537 10.3759 0.233537 10.0593 0.428798 9.86405L1.62982 8.66303C1.03682 8.10643 0.515113 7.46742 0.0760677 6.76495C-0.0702867 6.53079 0.000898544 6.22231 0.235065 6.07596C0.469231 5.9296 0.777703 6.00079 0.924058 6.23496C1.40354 7.00213 1.989 7.68057 2.66233 8.2427C2.67315 8.25096 2.6837 8.25972 2.69397 8.26898C4.00897 9.35527 5.65537 9.99991 7.50001 9.99991C10.3078 9.99991 12.6564 8.5063 14.076 6.23495C14.2223 6.00079 14.5308 5.9296 14.7649 6.07596Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$25 = [\n \"color\"\n];\nvar EyeNoneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$25);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.3536 2.35355C13.5488 2.15829 13.5488 1.84171 13.3536 1.64645C13.1583 1.45118 12.8417 1.45118 12.6464 1.64645L10.6828 3.61012C9.70652 3.21671 8.63759 3 7.5 3C4.30786 3 1.65639 4.70638 0.0760002 7.23501C-0.0253338 7.39715 -0.0253334 7.60288 0.0760014 7.76501C0.902945 9.08812 2.02314 10.1861 3.36061 10.9323L1.64645 12.6464C1.45118 12.8417 1.45118 13.1583 1.64645 13.3536C1.84171 13.5488 2.15829 13.5488 2.35355 13.3536L4.31723 11.3899C5.29348 11.7833 6.36241 12 7.5 12C10.6921 12 13.3436 10.2936 14.924 7.76501C15.0253 7.60288 15.0253 7.39715 14.924 7.23501C14.0971 5.9119 12.9769 4.81391 11.6394 4.06771L13.3536 2.35355ZM9.90428 4.38861C9.15332 4.1361 8.34759 4 7.5 4C4.80285 4 2.52952 5.37816 1.09622 7.50001C1.87284 8.6497 2.89609 9.58106 4.09974 10.1931L9.90428 4.38861ZM5.09572 10.6114L10.9003 4.80685C12.1039 5.41894 13.1272 6.35031 13.9038 7.50001C12.4705 9.62183 10.1971 11 7.5 11C6.65241 11 5.84668 10.8639 5.09572 10.6114Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$26 = [\n \"color\"\n];\nvar EyeOpenIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$26);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 11C4.80285 11 2.52952 9.62184 1.09622 7.50001C2.52952 5.37816 4.80285 4 7.5 4C10.1971 4 12.4705 5.37816 13.9038 7.50001C12.4705 9.62183 10.1971 11 7.5 11ZM7.5 3C4.30786 3 1.65639 4.70638 0.0760002 7.23501C-0.0253338 7.39715 -0.0253334 7.60288 0.0760014 7.76501C1.65639 10.2936 4.30786 12 7.5 12C10.6921 12 13.3436 10.2936 14.924 7.76501C15.0253 7.60288 15.0253 7.39715 14.924 7.23501C13.3436 4.70638 10.6921 3 7.5 3ZM7.5 9.5C8.60457 9.5 9.5 8.60457 9.5 7.5C9.5 6.39543 8.60457 5.5 7.5 5.5C6.39543 5.5 5.5 6.39543 5.5 7.5C5.5 8.60457 6.39543 9.5 7.5 9.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$27 = [\n \"color\"\n];\nvar FaceIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$27);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.876892C3.84222 0.876892 0.877075 3.84204 0.877075 7.49972C0.877075 11.1574 3.84222 14.1226 7.49991 14.1226C11.1576 14.1226 14.1227 11.1574 14.1227 7.49972C14.1227 3.84204 11.1576 0.876892 7.49991 0.876892ZM1.82708 7.49972C1.82708 4.36671 4.36689 1.82689 7.49991 1.82689C10.6329 1.82689 13.1727 4.36671 13.1727 7.49972C13.1727 10.6327 10.6329 13.1726 7.49991 13.1726C4.36689 13.1726 1.82708 10.6327 1.82708 7.49972ZM5.03747 9.21395C4.87949 8.98746 4.56782 8.93193 4.34133 9.08991C4.11484 9.24789 4.05931 9.55956 4.21729 9.78605C4.93926 10.8211 6.14033 11.5 7.50004 11.5C8.85974 11.5 10.0608 10.8211 10.7828 9.78605C10.9408 9.55956 10.8852 9.24789 10.6587 9.08991C10.4323 8.93193 10.1206 8.98746 9.9626 9.21395C9.41963 9.99238 8.51907 10.5 7.50004 10.5C6.481 10.5 5.58044 9.99238 5.03747 9.21395ZM5.37503 6.84998C5.85828 6.84998 6.25003 6.45815 6.25003 5.97498C6.25003 5.4918 5.85828 5.09998 5.37503 5.09998C4.89179 5.09998 4.50003 5.4918 4.50003 5.97498C4.50003 6.45815 4.89179 6.84998 5.37503 6.84998ZM10.5 5.97498C10.5 6.45815 10.1083 6.84998 9.62503 6.84998C9.14179 6.84998 8.75003 6.45815 8.75003 5.97498C8.75003 5.4918 9.14179 5.09998 9.62503 5.09998C10.1083 5.09998 10.5 5.4918 10.5 5.97498Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$28 = [\n \"color\"\n];\nvar FigmaLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$28);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.00005 2.04999H5.52505C4.71043 2.04999 4.05005 2.71037 4.05005 3.52499C4.05005 4.33961 4.71043 4.99999 5.52505 4.99999H7.00005V2.04999ZM7.00005 1.04999H8.00005H9.47505C10.842 1.04999 11.95 2.15808 11.95 3.52499C11.95 4.33163 11.5642 5.04815 10.9669 5.49999C11.5642 5.95184 11.95 6.66836 11.95 7.475C11.95 8.8419 10.842 9.95 9.47505 9.95C8.92236 9.95 8.41198 9.76884 8.00005 9.46266V9.95L8.00005 11.425C8.00005 12.7919 6.89195 13.9 5.52505 13.9C4.15814 13.9 3.05005 12.7919 3.05005 11.425C3.05005 10.6183 3.43593 9.90184 4.03317 9.44999C3.43593 8.99814 3.05005 8.28163 3.05005 7.475C3.05005 6.66836 3.43594 5.95184 4.03319 5.5C3.43594 5.04815 3.05005 4.33163 3.05005 3.52499C3.05005 2.15808 4.15814 1.04999 5.52505 1.04999H7.00005ZM8.00005 2.04999V4.99999H9.47505C10.2897 4.99999 10.95 4.33961 10.95 3.52499C10.95 2.71037 10.2897 2.04999 9.47505 2.04999H8.00005ZM5.52505 8.94998H7.00005L7.00005 7.4788L7.00005 7.475L7.00005 7.4712V6H5.52505C4.71043 6 4.05005 6.66038 4.05005 7.475C4.05005 8.28767 4.70727 8.94684 5.5192 8.94999L5.52505 8.94998ZM4.05005 11.425C4.05005 10.6123 4.70727 9.95315 5.5192 9.94999L5.52505 9.95H7.00005L7.00005 11.425C7.00005 12.2396 6.33967 12.9 5.52505 12.9C4.71043 12.9 4.05005 12.2396 4.05005 11.425ZM8.00005 7.47206C8.00164 6.65879 8.66141 6 9.47505 6C10.2897 6 10.95 6.66038 10.95 7.475C10.95 8.28962 10.2897 8.95 9.47505 8.95C8.66141 8.95 8.00164 8.29121 8.00005 7.47794V7.47206Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$29 = [\n \"color\"\n];\nvar FileIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$29);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.5 2C3.22386 2 3 2.22386 3 2.5V12.5C3 12.7761 3.22386 13 3.5 13H11.5C11.7761 13 12 12.7761 12 12.5V6H8.5C8.22386 6 8 5.77614 8 5.5V2H3.5ZM9 2.70711L11.2929 5H9V2.70711ZM2 2.5C2 1.67157 2.67157 1 3.5 1H8.5C8.63261 1 8.75979 1.05268 8.85355 1.14645L12.8536 5.14645C12.9473 5.24021 13 5.36739 13 5.5V12.5C13 13.3284 12.3284 14 11.5 14H3.5C2.67157 14 2 13.3284 2 12.5V2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2a = [\n \"color\"\n];\nvar FileMinusIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2a);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 2.5C3 2.22386 3.22386 2 3.5 2H9.29289L12 4.70711V12.5C12 12.7761 11.7761 13 11.5 13H3.5C3.22386 13 3 12.7761 3 12.5V2.5ZM3.5 1C2.67157 1 2 1.67157 2 2.5V12.5C2 13.3284 2.67157 14 3.5 14H11.5C12.3284 14 13 13.3284 13 12.5V4.60355C13 4.40464 12.921 4.21388 12.7803 4.07322L9.85355 1.14645C9.75979 1.05268 9.63261 1 9.5 1H3.5ZM5.25 7C4.97386 7 4.75 7.22386 4.75 7.5C4.75 7.77614 4.97386 8 5.25 8H9.75C10.0261 8 10.25 7.77614 10.25 7.5C10.25 7.22386 10.0261 7 9.75 7H5.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2b = [\n \"color\"\n];\nvar FilePlusIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2b);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.5 2C3.22386 2 3 2.22386 3 2.5V12.5C3 12.7761 3.22386 13 3.5 13H11.5C11.7761 13 12 12.7761 12 12.5V4.70711L9.29289 2H3.5ZM2 2.5C2 1.67157 2.67157 1 3.5 1H9.5C9.63261 1 9.75979 1.05268 9.85355 1.14645L12.7803 4.07322C12.921 4.21388 13 4.40464 13 4.60355V12.5C13 13.3284 12.3284 14 11.5 14H3.5C2.67157 14 2 13.3284 2 12.5V2.5ZM4.75 7.5C4.75 7.22386 4.97386 7 5.25 7H7V5.25C7 4.97386 7.22386 4.75 7.5 4.75C7.77614 4.75 8 4.97386 8 5.25V7H9.75C10.0261 7 10.25 7.22386 10.25 7.5C10.25 7.77614 10.0261 8 9.75 8H8V9.75C8 10.0261 7.77614 10.25 7.5 10.25C7.22386 10.25 7 10.0261 7 9.75V8H5.25C4.97386 8 4.75 7.77614 4.75 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2c = [\n \"color\"\n];\nvar FileTextIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2c);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 2.5C3 2.22386 3.22386 2 3.5 2H9.08579C9.21839 2 9.34557 2.05268 9.43934 2.14645L11.8536 4.56066C11.9473 4.65443 12 4.78161 12 4.91421V12.5C12 12.7761 11.7761 13 11.5 13H3.5C3.22386 13 3 12.7761 3 12.5V2.5ZM3.5 1C2.67157 1 2 1.67157 2 2.5V12.5C2 13.3284 2.67157 14 3.5 14H11.5C12.3284 14 13 13.3284 13 12.5V4.91421C13 4.51639 12.842 4.13486 12.5607 3.85355L10.1464 1.43934C9.86514 1.15804 9.48361 1 9.08579 1H3.5ZM4.5 4C4.22386 4 4 4.22386 4 4.5C4 4.77614 4.22386 5 4.5 5H7.5C7.77614 5 8 4.77614 8 4.5C8 4.22386 7.77614 4 7.5 4H4.5ZM4.5 7C4.22386 7 4 7.22386 4 7.5C4 7.77614 4.22386 8 4.5 8H10.5C10.7761 8 11 7.77614 11 7.5C11 7.22386 10.7761 7 10.5 7H4.5ZM4.5 10C4.22386 10 4 10.2239 4 10.5C4 10.7761 4.22386 11 4.5 11H10.5C10.7761 11 11 10.7761 11 10.5C11 10.2239 10.7761 10 10.5 10H4.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2d = [\n \"color\"\n];\nvar FontBoldIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2d);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.10505 12C4.70805 12 4.4236 11.912 4.25171 11.736C4.0839 11.5559 4 11.2715 4 10.8827V4.11733C4 3.72033 4.08595 3.43588 4.25784 3.26398C4.43383 3.08799 4.71623 3 5.10505 3C6.42741 3 8.25591 3 9.02852 3C10.1373 3 11.0539 3.98153 11.0539 5.1846C11.0539 6.08501 10.6037 6.81855 9.70327 7.23602C10.8657 7.44851 11.5176 8.62787 11.5176 9.48128C11.5176 10.5125 10.9902 12 9.27734 12C8.77742 12 6.42626 12 5.10505 12ZM8.37891 8.00341H5.8V10.631H8.37891C8.9 10.631 9.6296 10.1211 9.6296 9.29877C9.6296 8.47643 8.9 8.00341 8.37891 8.00341ZM5.8 4.36903V6.69577H8.17969C8.53906 6.69577 9.27734 6.35939 9.27734 5.50002C9.27734 4.64064 8.48047 4.36903 8.17969 4.36903H5.8Z\",\n fill: color\n }));\n});\nvar _excluded$2e = [\n \"color\"\n];\nvar FontFamilyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2e);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.5 4.5C2.5 3.09886 3.59886 2 5 2H12.499C12.7752 2 13 2.22386 13 2.5C13 2.77614 12.7761 3 12.5 3H8.69244L8.40509 3.85458C8.18869 4.49752 7.89401 5.37197 7.58091 6.29794C7.50259 6.52956 7.42308 6.76453 7.34332 7H8.5C8.77614 7 9 7.22386 9 7.5C9 7.77614 8.77614 8 8.5 8H7.00407C6.56724 9.28543 6.16435 10.4613 5.95799 11.0386C5.63627 11.9386 5.20712 12.4857 4.66741 12.7778C4.16335 13.0507 3.64154 13.0503 3.28378 13.05L3.25 13.05C2.94624 13.05 2.7 12.8037 2.7 12.5C2.7 12.1962 2.94624 11.95 3.25 11.95C3.64182 11.95 3.9035 11.9405 4.14374 11.8105C4.36443 11.691 4.65532 11.4148 4.92217 10.6683C5.10695 10.1514 5.45375 9.14134 5.8422 8H4.5C4.22386 8 4 7.77614 4 7.5C4 7.22386 4.22386 7 4.5 7H6.18187C6.30127 6.64785 6.42132 6.29323 6.53887 5.94559C6.85175 5.02025 7.14627 4.14631 7.36256 3.50368L7.53192 3H5C4.15114 3 3.5 3.65114 3.5 4.5C3.5 4.77614 3.27614 5 3 5C2.72386 5 2.5 4.77614 2.5 4.5Z\",\n fill: color\n }));\n});\nvar _excluded$2f = [\n \"color\"\n];\nvar FontItalicIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2f);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.67494 3.50017C5.67494 3.25164 5.87641 3.05017 6.12494 3.05017H10.6249C10.8735 3.05017 11.0749 3.25164 11.0749 3.50017C11.0749 3.7487 10.8735 3.95017 10.6249 3.95017H9.00587L7.2309 11.05H8.87493C9.12345 11.05 9.32493 11.2515 9.32493 11.5C9.32493 11.7486 9.12345 11.95 8.87493 11.95H4.37493C4.1264 11.95 3.92493 11.7486 3.92493 11.5C3.92493 11.2515 4.1264 11.05 4.37493 11.05H5.99397L7.76894 3.95017H6.12494C5.87641 3.95017 5.67494 3.7487 5.67494 3.50017Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2g = [\n \"color\"\n];\nvar FontRomanIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2g);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.79993 3.50017C4.79993 3.25164 5.0014 3.05017 5.24993 3.05017H9.74993C9.99845 3.05017 10.1999 3.25164 10.1999 3.50017C10.1999 3.7487 9.99845 3.95017 9.74993 3.95017H8.09993V11.05H9.74994C9.99847 11.05 10.1999 11.2515 10.1999 11.5C10.1999 11.7486 9.99847 11.95 9.74994 11.95H5.24994C5.00141 11.95 4.79994 11.7486 4.79994 11.5C4.79994 11.2515 5.00141 11.05 5.24994 11.05H6.89993V3.95017H5.24993C5.0014 3.95017 4.79993 3.7487 4.79993 3.50017Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2h = [\n \"color\"\n];\nvar FontSizeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2h);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.78233 2.21707C2.70732 2.14206 2.60557 2.09991 2.49949 2.09991C2.3934 2.09991 2.29166 2.14206 2.21664 2.21707L0.216645 4.21707C0.0604351 4.37328 0.0604351 4.62655 0.216645 4.78276C0.372855 4.93897 0.626121 4.93897 0.78233 4.78276L2.09949 3.4656L2.09949 11.5342L0.78233 10.2171C0.62612 10.0609 0.372854 10.0609 0.216645 10.2171C0.0604349 10.3733 0.0604349 10.6265 0.216645 10.7828L2.21664 12.7828C2.29166 12.8578 2.3934 12.8999 2.49949 12.8999C2.60557 12.8999 2.70731 12.8578 2.78233 12.7828L4.78233 10.7828C4.93854 10.6265 4.93854 10.3733 4.78233 10.2171C4.62612 10.0609 4.37285 10.0609 4.21664 10.2171L2.89949 11.5342L2.89949 3.4656L4.21664 4.78276C4.37285 4.93897 4.62612 4.93897 4.78233 4.78276C4.93854 4.62655 4.93854 4.37328 4.78233 4.21707L2.78233 2.21707ZM10.5 2.74997C10.7107 2.74997 10.8988 2.88211 10.9703 3.08036L13.9703 11.3999C14.064 11.6597 13.9293 11.9462 13.6696 12.0399C13.4098 12.1336 13.1233 11.9989 13.0296 11.7392L12.0477 9.016H8.95228L7.97033 11.7392C7.87666 11.9989 7.59013 12.1336 7.33036 12.0399C7.07059 11.9462 6.93595 11.6597 7.02962 11.3999L10.0296 3.08036C10.1011 2.88211 10.2892 2.74997 10.5 2.74997ZM10.5 4.72396L11.7412 8.166H9.25879L10.5 4.72396Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2i = [\n \"color\"\n];\nvar FontStyleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2i);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.03791 9.98075C0.934777 9.6583 1.11603 9.37719 1.40005 9.24871C1.68408 9.12022 2.09463 9.13412 2.27071 9.45426C2.85393 10.5147 3.64599 10.7282 4.48665 10.7282C5.52721 10.7282 6.29659 10.2615 6.29659 9.45426C6.29659 8.8047 5.9119 8.46416 4.87134 8.14253L4.15872 7.92181C2.64518 7.44883 1.88842 6.69206 1.88842 5.45601C1.88842 3.79743 3.27583 2.6875 5.24342 2.6875C6.91733 2.6875 7.97409 3.33536 8.43833 4.31065C8.57087 4.58909 8.57614 4.91294 8.22794 5.19114C7.87974 5.46934 7.52351 5.34799 7.23327 5.03839C6.47215 4.22653 5.99545 4.04968 5.25604 4.04968C4.1398 4.04968 3.547 4.63618 3.547 5.27943C3.547 5.86592 3.96322 6.23169 4.94702 6.5344L5.67856 6.76143C7.22994 7.23441 7.97409 7.95964 7.97409 9.17047C7.97409 10.7723 6.69389 12.0903 4.46143 12.0903C2.86612 12.0903 1.40005 11.1131 1.03791 9.98075ZM11.8491 8.77985C10.661 8.39543 10.1649 7.86114 10.1649 6.98805C10.1649 5.86736 11.1636 5.04639 12.6128 5.04639C13.8546 5.04639 14.6629 5.63345 14.9778 6.6346C15.0443 6.84599 14.9593 6.98006 14.7475 7.0491C14.5394 7.11697 14.3176 7.09974 14.238 6.89611C13.9356 6.12273 13.352 5.76311 12.5998 5.76311C11.6467 5.76311 11.0135 6.25178 11.0135 6.91638C11.0135 7.45066 11.3464 7.75038 12.2473 8.04358L12.8348 8.23254C14.062 8.62999 14.5516 9.13821 14.5516 10.0178C14.5516 11.1972 13.481 12.0442 11.9927 12.0442C10.6439 12.0442 9.65644 11.2809 9.41979 10.3361C9.36535 10.1188 9.41192 10.0287 9.70039 9.96184C9.98886 9.89499 10.0714 9.89918 10.1715 10.1369C10.4555 10.8114 11.1531 11.3275 12.0318 11.3275C12.9914 11.3275 13.6834 10.7802 13.6834 10.0634C13.6834 9.53567 13.3961 9.28807 12.4366 8.97532L11.8491 8.77985Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2j = [\n \"color\"\n];\nvar FrameIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2j);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11 1.5C11 1.22386 10.7761 1 10.5 1C10.2239 1 10 1.22386 10 1.5V4H5V1.5C5 1.22386 4.77614 1 4.5 1C4.22386 1 4 1.22386 4 1.5V4H1.5C1.22386 4 1 4.22386 1 4.5C1 4.77614 1.22386 5 1.5 5H4V10H1.5C1.22386 10 1 10.2239 1 10.5C1 10.7761 1.22386 11 1.5 11H4V13.5C4 13.7761 4.22386 14 4.5 14C4.77614 14 5 13.7761 5 13.5V11H10V13.5C10 13.7761 10.2239 14 10.5 14C10.7761 14 11 13.7761 11 13.5V11H13.5C13.7761 11 14 10.7761 14 10.5C14 10.2239 13.7761 10 13.5 10H11V5H13.5C13.7761 5 14 4.77614 14 4.5C14 4.22386 13.7761 4 13.5 4H11V1.5ZM10 10V5H5V10H10Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2k = [\n \"color\"\n];\nvar FramerLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2k);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.3825 1.29567C3.46241 1.11432 3.64188 0.997284 3.84005 0.997284H11.5C11.7761 0.997284 12 1.22114 12 1.49728V5.5C12 5.77614 11.7761 6 11.5 6H8.63521L11.5288 9.16247C11.6626 9.3087 11.6974 9.52015 11.6175 9.70154C11.5376 9.88293 11.3582 10 11.16 10H8V13.5C8 13.7022 7.87818 13.8845 7.69134 13.9619C7.5045 14.0393 7.28945 13.9966 7.14645 13.8536L3.14645 9.85355C3.05268 9.75979 3 9.63261 3 9.5V5.5C3 5.22386 3.22386 5 3.5 5H6.36531L3.47105 1.83468C3.33732 1.68844 3.30259 1.47701 3.3825 1.29567ZM7.72032 5L4.97474 1.99728H11V5H7.72032ZM7.27978 6H4V9H7.5H10.0247L7.27978 6ZM4.70711 10L7 12.2929V10H4.70711Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2l = [\n \"color\"\n];\nvar GearIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2l);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.07095 0.650238C6.67391 0.650238 6.32977 0.925096 6.24198 1.31231L6.0039 2.36247C5.6249 2.47269 5.26335 2.62363 4.92436 2.81013L4.01335 2.23585C3.67748 2.02413 3.23978 2.07312 2.95903 2.35386L2.35294 2.95996C2.0722 3.2407 2.0232 3.6784 2.23493 4.01427L2.80942 4.92561C2.62307 5.2645 2.47227 5.62594 2.36216 6.00481L1.31209 6.24287C0.924883 6.33065 0.650024 6.6748 0.650024 7.07183V7.92897C0.650024 8.32601 0.924883 8.67015 1.31209 8.75794L2.36228 8.99603C2.47246 9.375 2.62335 9.73652 2.80979 10.0755L2.2354 10.9867C2.02367 11.3225 2.07267 11.7602 2.35341 12.041L2.95951 12.6471C3.24025 12.9278 3.67795 12.9768 4.01382 12.7651L4.92506 12.1907C5.26384 12.377 5.62516 12.5278 6.0039 12.6379L6.24198 13.6881C6.32977 14.0753 6.67391 14.3502 7.07095 14.3502H7.92809C8.32512 14.3502 8.66927 14.0753 8.75705 13.6881L8.99505 12.6383C9.37411 12.5282 9.73573 12.3773 10.0748 12.1909L10.986 12.7653C11.3218 12.977 11.7595 12.928 12.0403 12.6473L12.6464 12.0412C12.9271 11.7604 12.9761 11.3227 12.7644 10.9869L12.1902 10.076C12.3768 9.73688 12.5278 9.37515 12.638 8.99596L13.6879 8.75794C14.0751 8.67015 14.35 8.32601 14.35 7.92897V7.07183C14.35 6.6748 14.0751 6.33065 13.6879 6.24287L12.6381 6.00488C12.528 5.62578 12.3771 5.26414 12.1906 4.92507L12.7648 4.01407C12.9766 3.6782 12.9276 3.2405 12.6468 2.95975L12.0407 2.35366C11.76 2.07292 11.3223 2.02392 10.9864 2.23565L10.0755 2.80989C9.73622 2.62328 9.37437 2.47229 8.99505 2.36209L8.75705 1.31231C8.66927 0.925096 8.32512 0.650238 7.92809 0.650238H7.07095ZM4.92053 3.81251C5.44724 3.44339 6.05665 3.18424 6.71543 3.06839L7.07095 1.50024H7.92809L8.28355 3.06816C8.94267 3.18387 9.5524 3.44302 10.0794 3.81224L11.4397 2.9547L12.0458 3.56079L11.1882 4.92117C11.5573 5.44798 11.8164 6.0575 11.9321 6.71638L13.5 7.07183V7.92897L11.932 8.28444C11.8162 8.94342 11.557 9.55301 11.1878 10.0798L12.0453 11.4402L11.4392 12.0462L10.0787 11.1886C9.55192 11.5576 8.94241 11.8166 8.28355 11.9323L7.92809 13.5002H7.07095L6.71543 11.932C6.0569 11.8162 5.44772 11.5572 4.92116 11.1883L3.56055 12.046L2.95445 11.4399L3.81213 10.0794C3.4431 9.55266 3.18403 8.94326 3.06825 8.2845L1.50002 7.92897V7.07183L3.06818 6.71632C3.18388 6.05765 3.44283 5.44833 3.81171 4.92165L2.95398 3.561L3.56008 2.95491L4.92053 3.81251ZM9.02496 7.50008C9.02496 8.34226 8.34223 9.02499 7.50005 9.02499C6.65786 9.02499 5.97513 8.34226 5.97513 7.50008C5.97513 6.65789 6.65786 5.97516 7.50005 5.97516C8.34223 5.97516 9.02496 6.65789 9.02496 7.50008ZM9.92496 7.50008C9.92496 8.83932 8.83929 9.92499 7.50005 9.92499C6.1608 9.92499 5.07513 8.83932 5.07513 7.50008C5.07513 6.16084 6.1608 5.07516 7.50005 5.07516C8.83929 5.07516 9.92496 6.16084 9.92496 7.50008Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2m = [\n \"color\"\n];\nvar GitHubLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2m);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49933 0.25C3.49635 0.25 0.25 3.49593 0.25 7.50024C0.25 10.703 2.32715 13.4206 5.2081 14.3797C5.57084 14.446 5.70302 14.2222 5.70302 14.0299C5.70302 13.8576 5.69679 13.4019 5.69323 12.797C3.67661 13.235 3.25112 11.825 3.25112 11.825C2.92132 10.9874 2.44599 10.7644 2.44599 10.7644C1.78773 10.3149 2.49584 10.3238 2.49584 10.3238C3.22353 10.375 3.60629 11.0711 3.60629 11.0711C4.25298 12.1788 5.30335 11.8588 5.71638 11.6732C5.78225 11.205 5.96962 10.8854 6.17658 10.7043C4.56675 10.5209 2.87415 9.89918 2.87415 7.12104C2.87415 6.32925 3.15677 5.68257 3.62053 5.17563C3.54576 4.99226 3.29697 4.25521 3.69174 3.25691C3.69174 3.25691 4.30015 3.06196 5.68522 3.99973C6.26337 3.83906 6.8838 3.75895 7.50022 3.75583C8.1162 3.75895 8.73619 3.83906 9.31523 3.99973C10.6994 3.06196 11.3069 3.25691 11.3069 3.25691C11.7026 4.25521 11.4538 4.99226 11.3795 5.17563C11.8441 5.68257 12.1245 6.32925 12.1245 7.12104C12.1245 9.9063 10.4292 10.5192 8.81452 10.6985C9.07444 10.9224 9.30633 11.3648 9.30633 12.0413C9.30633 13.0102 9.29742 13.7922 9.29742 14.0299C9.29742 14.2239 9.42828 14.4496 9.79591 14.3788C12.6746 13.4179 14.75 10.7025 14.75 7.50024C14.75 3.49593 11.5036 0.25 7.49933 0.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2n = [\n \"color\"\n];\nvar GlobeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2n);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49996 1.80002C4.35194 1.80002 1.79996 4.352 1.79996 7.50002C1.79996 10.648 4.35194 13.2 7.49996 13.2C10.648 13.2 13.2 10.648 13.2 7.50002C13.2 4.352 10.648 1.80002 7.49996 1.80002ZM0.899963 7.50002C0.899963 3.85494 3.85488 0.900024 7.49996 0.900024C11.145 0.900024 14.1 3.85494 14.1 7.50002C14.1 11.1451 11.145 14.1 7.49996 14.1C3.85488 14.1 0.899963 11.1451 0.899963 7.50002Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.4999 7.89998H1.49994V7.09998H13.4999V7.89998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.09991 13.5V1.5H7.89991V13.5H7.09991zM10.375 7.49998C10.375 5.32724 9.59364 3.17778 8.06183 1.75656L8.53793 1.24341C10.2396 2.82218 11.075 5.17273 11.075 7.49998 11.075 9.82724 10.2396 12.1778 8.53793 13.7566L8.06183 13.2434C9.59364 11.8222 10.375 9.67273 10.375 7.49998zM3.99969 7.5C3.99969 5.17611 4.80786 2.82678 6.45768 1.24719L6.94177 1.75281C5.4582 3.17323 4.69969 5.32389 4.69969 7.5 4.6997 9.67611 5.45822 11.8268 6.94179 13.2472L6.45769 13.7528C4.80788 12.1732 3.9997 9.8239 3.99969 7.5z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49996 3.95801C9.66928 3.95801 11.8753 4.35915 13.3706 5.19448 13.5394 5.28875 13.5998 5.50197 13.5055 5.67073 13.4113 5.83948 13.198 5.89987 13.0293 5.8056 11.6794 5.05155 9.60799 4.65801 7.49996 4.65801 5.39192 4.65801 3.32052 5.05155 1.97064 5.8056 1.80188 5.89987 1.58866 5.83948 1.49439 5.67073 1.40013 5.50197 1.46051 5.28875 1.62927 5.19448 3.12466 4.35915 5.33063 3.95801 7.49996 3.95801zM7.49996 10.85C9.66928 10.85 11.8753 10.4488 13.3706 9.6135 13.5394 9.51924 13.5998 9.30601 13.5055 9.13726 13.4113 8.9685 13.198 8.90812 13.0293 9.00238 11.6794 9.75643 9.60799 10.15 7.49996 10.15 5.39192 10.15 3.32052 9.75643 1.97064 9.00239 1.80188 8.90812 1.58866 8.9685 1.49439 9.13726 1.40013 9.30601 1.46051 9.51924 1.62927 9.6135 3.12466 10.4488 5.33063 10.85 7.49996 10.85z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2o = [\n \"color\"\n];\nvar GridIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2o);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.5 2H8V7H13V2.5C13 2.22386 12.7761 2 12.5 2ZM13 8H8V13H12.5C12.7761 13 13 12.7761 13 12.5V8ZM7 7V2H2.5C2.22386 2 2 2.22386 2 2.5V7H7ZM2 8V12.5C2 12.7761 2.22386 13 2.5 13H7V8H2ZM2.5 1C1.67157 1 1 1.67157 1 2.5V12.5C1 13.3284 1.67157 14 2.5 14H12.5C13.3284 14 14 13.3284 14 12.5V2.5C14 1.67157 13.3284 1 12.5 1H2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2p = [\n \"color\"\n];\nvar GroupIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2p);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.44995 0.949951C1.31734 0.949951 1.19016 1.00263 1.0964 1.0964C1.00263 1.19017 0.949951 1.31735 0.949951 1.44995L0.949966 3.44995C0.949969 3.7261 1.17383 3.94995 1.44997 3.94995C1.72611 3.94995 1.94997 3.72609 1.94997 3.44995L1.94995 1.94995H3.44997C3.72611 1.94995 3.94997 1.72609 3.94997 1.44995C3.94997 1.17381 3.72611 0.949951 3.44997 0.949951H1.44995ZM5.94995 0.949951C5.67381 0.949951 5.44995 1.17381 5.44995 1.44995C5.44995 1.72609 5.67381 1.94995 5.94995 1.94995H8.94995C9.22609 1.94995 9.44995 1.72609 9.44995 1.44995C9.44995 1.17381 9.22609 0.949951 8.94995 0.949951H5.94995ZM5.44995 13.45C5.44995 13.1738 5.67381 12.95 5.94995 12.95H8.94995C9.22609 12.95 9.44995 13.1738 9.44995 13.45C9.44995 13.7261 9.22609 13.95 8.94995 13.95H5.94995C5.67381 13.95 5.44995 13.7261 5.44995 13.45ZM1.94995 5.94995C1.94995 5.67381 1.72609 5.44995 1.44995 5.44995C1.17381 5.44995 0.949951 5.67381 0.949951 5.94995V8.94995C0.949951 9.22609 1.17381 9.44995 1.44995 9.44995C1.72609 9.44995 1.94995 9.22609 1.94995 8.94995V5.94995ZM13.45 5.44995C13.7261 5.44995 13.95 5.67381 13.95 5.94995V8.94995C13.95 9.22609 13.7261 9.44995 13.45 9.44995C13.1738 9.44995 12.95 9.22609 12.95 8.94995V5.94995C12.95 5.67381 13.1738 5.44995 13.45 5.44995ZM11.45 0.949951C11.1738 0.949951 10.95 1.17381 10.95 1.44995C10.95 1.72609 11.1738 1.94995 11.45 1.94995H12.9499V3.44995C12.9499 3.72609 13.1738 3.94995 13.4499 3.94995C13.7261 3.94995 13.9499 3.72609 13.9499 3.44995V1.44995C13.9499 1.17381 13.7252 0.949951 13.449 0.949951H11.45ZM1.44995 10.95C1.72609 10.95 1.94995 11.1738 1.94995 11.45V12.95H3.44997C3.72611 12.95 3.94997 13.1738 3.94997 13.45C3.94997 13.7261 3.72611 13.95 3.44997 13.95H1.44995C1.17381 13.95 0.949951 13.7261 0.949951 13.45V11.45C0.949951 11.1738 1.17381 10.95 1.44995 10.95ZM13.95 11.45C13.95 11.1738 13.7261 10.95 13.45 10.95C13.1738 10.9499 12.95 11.1738 12.95 11.4499L12.9491 12.95H11.45C11.1738 12.95 10.95 13.1738 10.95 13.45C10.95 13.7261 11.1738 13.95 11.45 13.95H13.4499C13.7261 13.95 13.9499 13.7261 13.9499 13.45L13.95 11.45Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2q = [\n \"color\"\n];\nvar Half1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.876892C3.84222 0.876892 0.877075 3.84204 0.877075 7.49972C0.877075 11.1574 3.84222 14.1226 7.49991 14.1226C11.1576 14.1226 14.1227 11.1574 14.1227 7.49972C14.1227 3.84204 11.1576 0.876892 7.49991 0.876892ZM7.00003 1.84861C4.10114 2.1017 1.82707 4.53515 1.82707 7.49972C1.82707 10.4643 4.10114 12.8977 7.00003 13.1508V1.84861ZM8.00003 13.1508C10.8988 12.8976 13.1727 10.4642 13.1727 7.49972C13.1727 4.53524 10.8988 2.10185 8.00003 1.84864V13.1508Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2r = [\n \"color\"\n];\nvar Half2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2r);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.876892C3.84222 0.876892 0.877075 3.84204 0.877075 7.49972C0.877075 11.1574 3.84222 14.1226 7.49991 14.1226C11.1576 14.1226 14.1227 11.1574 14.1227 7.49972C14.1227 3.84204 11.1576 0.876892 7.49991 0.876892ZM7.49988 1.82689C4.36688 1.8269 1.82707 4.36672 1.82707 7.49972C1.82707 10.6327 4.36688 13.1725 7.49988 13.1726V1.82689Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2s = [\n \"color\"\n];\nvar HamburgerMenuIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2s);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.5 3C1.22386 3 1 3.22386 1 3.5C1 3.77614 1.22386 4 1.5 4H13.5C13.7761 4 14 3.77614 14 3.5C14 3.22386 13.7761 3 13.5 3H1.5ZM1 7.5C1 7.22386 1.22386 7 1.5 7H13.5C13.7761 7 14 7.22386 14 7.5C14 7.77614 13.7761 8 13.5 8H1.5C1.22386 8 1 7.77614 1 7.5ZM1 11.5C1 11.2239 1.22386 11 1.5 11H13.5C13.7761 11 14 11.2239 14 11.5C14 11.7761 13.7761 12 13.5 12H1.5C1.22386 12 1 11.7761 1 11.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2t = [\n \"color\"\n];\nvar HandIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2t);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.8113 1.64706C6.62188 2.87918 6.68268 3.88523 6.76848 5.30499C6.78415 5.56426 6.80065 5.83732 6.81661 6.12808C6.83111 6.39208 6.63758 6.62172 6.37495 6.65217C6.11232 6.68262 5.87138 6.50334 5.82509 6.24304L5.74754 5.80698C5.64402 5.16529 5.48355 4.25481 5.17807 3.44741C4.86241 2.61312 4.4486 2.04121 3.93436 1.86044C3.64994 1.76104 3.41901 1.84279 3.25868 2.01052C3.08746 2.18962 2.9976 2.47065 3.0627 2.75399C3.2146 3.34424 3.44627 3.9167 3.69836 4.51802C3.72082 4.57158 3.74346 4.62543 3.76621 4.67954C3.9954 5.22457 4.23619 5.7972 4.41644 6.39081L4.41691 6.39238C4.562 6.87586 4.65646 7.2595 4.73086 7.56165C4.76034 7.68138 4.78667 7.78831 4.81175 7.88359C4.86768 8.09606 4.77836 8.32014 4.59161 8.43588C4.40486 8.55161 4.16445 8.53188 3.99907 8.38725C3.73749 8.15848 3.515 7.92784 3.31817 7.71802C3.27627 7.67335 3.23602 7.63018 3.19705 7.58838C3.04777 7.42826 2.91712 7.28812 2.78334 7.16029C2.45989 6.85122 2.18398 6.68004 1.80585 6.64369L1.80324 6.64343C1.56117 6.61888 1.41402 6.66441 1.31756 6.72627C1.21899 6.78947 1.11988 6.90414 1.03784 7.1123C0.976576 7.28492 1.01515 7.62987 1.1929 7.96911L1.19728 7.97747C1.40086 8.38452 1.74475 8.81587 2.18141 9.29299C2.39739 9.52898 2.62872 9.76849 2.86934 10.0174L2.87966 10.0281C3.11546 10.2721 3.35962 10.5247 3.59713 10.7827C4.4288 11.6863 5.27706 12.7538 5.4627 14H11.5087C11.5636 12.4353 11.8756 11.268 12.2875 10.1346C12.4454 9.70041 12.6121 9.28412 12.7826 8.85829C13.1097 8.04139 13.4509 7.18937 13.7705 6.10824C14.0989 4.99737 14.0097 4.37033 13.8613 4.03984C13.717 3.71858 13.4914 3.61786 13.3816 3.59606C13.1381 3.54774 13.0384 3.60947 12.9698 3.67901C12.867 3.78316 12.7698 3.98273 12.6921 4.30269C12.6166 4.61345 12.5752 4.96517 12.533 5.32501L12.5298 5.35285C12.4924 5.67242 12.4505 6.03016 12.3665 6.30098C12.3383 6.40699 12.2819 6.50407 12.1979 6.57539C12.1382 6.6261 12.0104 6.70818 11.8309 6.69312C11.5424 6.66891 11.3712 6.42143 11.365 6.14783C11.356 5.75454 11.3883 5.35864 11.4074 4.96608C11.4428 4.23646 11.477 3.5337 11.4245 2.8342L11.4242 2.82934C11.3916 2.32997 11.0493 2.00228 10.7007 1.9228C10.5305 1.88401 10.369 1.90601 10.2347 1.9835C10.103 2.05946 9.95535 2.21318 9.8574 2.51394L9.85631 2.51726C9.81525 2.6404 9.77298 2.87753 9.73606 3.2124C9.70044 3.53542 9.67337 3.91279 9.65156 4.29418C9.6329 4.62033 9.61785 4.9584 9.60434 5.26194C9.58728 5.64529 9.57267 5.97357 9.55633 6.1532C9.54983 6.22459 9.52939 6.29493 9.49501 6.35785C9.47356 6.39711 9.36115 6.60947 9.07106 6.61843C8.77917 6.62744 8.63975 6.40057 8.61698 6.35919C8.55634 6.24899 8.55066 6.11807 8.54754 5.99283C8.54474 5.88064 8.54294 5.71798 8.54174 5.54767C8.53935 5.20582 8.53935 4.81919 8.53935 4.70952C8.53935 3.6657 8.53838 2.65372 8.44714 1.64372C8.39183 1.24127 8.06278 1.00455 7.6436 1.00005C7.22399 0.995552 6.87918 1.22704 6.8113 1.64706ZM9.41219 1.3617C9.21469 0.448484 8.39913 0.00810324 7.65433 0.00011154C6.86452 -0.00836308 5.98761 0.465881 5.82365 1.49037L5.82318 1.49334C5.78239 1.7584 5.75229 2.01481 5.7309 2.26652C5.39423 1.67364 4.92622 1.14894 4.2655 0.916859C3.58661 0.679312 2.9492 0.887087 2.53582 1.31952C2.13415 1.73971 1.94438 2.36742 2.09031 2.98746L2.09269 2.99713C2.26478 3.66808 2.52396 4.30316 2.77613 4.90465C2.79814 4.95717 2.8201 5.00941 2.84194 5.06139C3.02139 5.48842 3.19378 5.89866 3.33871 6.31256C2.96404 5.98142 2.51925 5.70796 1.90276 5.6484C1.48865 5.60663 1.10391 5.67536 0.777805 5.88444C0.454239 6.0919 0.240671 6.40405 0.104187 6.75406L0.100868 6.76281C-0.10184 7.31286 0.0663312 7.97157 0.304895 8.42897C0.573704 8.96474 0.996104 9.47904 1.44372 9.96813C1.67046 10.2159 1.91136 10.4652 2.15033 10.7124L2.15682 10.7191C2.39524 10.9658 2.63217 11.2109 2.86134 11.4599C3.80937 12.49 4.50002 13.4632 4.50002 14.5C4.50002 14.7761 4.72388 15 5.00002 15H12C12.2762 15 12.5 14.7761 12.5 14.5C12.5 12.8212 12.8021 11.6462 13.2274 10.4762C13.3653 10.0968 13.5216 9.70579 13.6868 9.29247C14.0238 8.44922 14.398 7.51298 14.7295 6.39175C15.0956 5.15324 15.0559 4.25904 14.7735 3.63017C14.487 2.99208 13.9798 2.6953 13.5763 2.6152C13.1276 2.52614 12.7367 2.60475 12.4268 2.83081C12.4253 2.80773 12.4236 2.78468 12.4219 2.76167C12.3587 1.8105 11.6907 1.12285 10.923 0.947821C10.5346 0.859287 10.1111 0.900393 9.73509 1.11724C9.61852 1.18446 9.51055 1.26623 9.41219 1.3617Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2u = [\n \"color\"\n];\nvar HeadingIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2u);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.75432 2.0502C8.50579 2.0502 8.30432 2.25167 8.30432 2.5002C8.30432 2.74873 8.50579 2.9502 8.75432 2.9502H9.94997V7.05004H5.04997V2.9502H6.25432C6.50285 2.9502 6.70432 2.74873 6.70432 2.5002C6.70432 2.25167 6.50285 2.0502 6.25432 2.0502H2.75432C2.50579 2.0502 2.30432 2.25167 2.30432 2.5002C2.30432 2.74873 2.50579 2.9502 2.75432 2.9502H3.94997V12.0502H2.75432C2.50579 12.0502 2.30432 12.2517 2.30432 12.5002C2.30432 12.7487 2.50579 12.9502 2.75432 12.9502H6.25432C6.50285 12.9502 6.70432 12.7487 6.70432 12.5002C6.70432 12.2517 6.50285 12.0502 6.25432 12.0502H5.04997V7.95004H9.94997V12.0502H8.75432C8.50579 12.0502 8.30432 12.2517 8.30432 12.5002C8.30432 12.7487 8.50579 12.9502 8.75432 12.9502H12.2543C12.5028 12.9502 12.7043 12.7487 12.7043 12.5002C12.7043 12.2517 12.5028 12.0502 12.2543 12.0502H11.05V2.9502H12.2543C12.5028 2.9502 12.7043 2.74873 12.7043 2.5002C12.7043 2.25167 12.5028 2.0502 12.2543 2.0502H8.75432Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2v = [\n \"color\"\n];\nvar HeartIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2v);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.89346 2.35248C3.49195 2.35248 2.35248 3.49359 2.35248 4.90532C2.35248 6.38164 3.20954 7.9168 4.37255 9.33522C5.39396 10.581 6.59464 11.6702 7.50002 12.4778C8.4054 11.6702 9.60608 10.581 10.6275 9.33522C11.7905 7.9168 12.6476 6.38164 12.6476 4.90532C12.6476 3.49359 11.5081 2.35248 10.1066 2.35248C9.27059 2.35248 8.81894 2.64323 8.5397 2.95843C8.27877 3.25295 8.14623 3.58566 8.02501 3.88993C8.00391 3.9429 7.98315 3.99501 7.96211 4.04591C7.88482 4.23294 7.7024 4.35494 7.50002 4.35494C7.29765 4.35494 7.11523 4.23295 7.03793 4.04592C7.01689 3.99501 6.99612 3.94289 6.97502 3.8899C6.8538 3.58564 6.72126 3.25294 6.46034 2.95843C6.18109 2.64323 5.72945 2.35248 4.89346 2.35248ZM1.35248 4.90532C1.35248 2.94498 2.936 1.35248 4.89346 1.35248C6.0084 1.35248 6.73504 1.76049 7.20884 2.2953C7.32062 2.42147 7.41686 2.55382 7.50002 2.68545C7.58318 2.55382 7.67941 2.42147 7.79119 2.2953C8.265 1.76049 8.99164 1.35248 10.1066 1.35248C12.064 1.35248 13.6476 2.94498 13.6476 4.90532C13.6476 6.74041 12.6013 8.50508 11.4008 9.96927C10.2636 11.3562 8.92194 12.5508 8.00601 13.3664C7.94645 13.4194 7.88869 13.4709 7.83291 13.5206C7.64324 13.6899 7.3568 13.6899 7.16713 13.5206C7.11135 13.4709 7.05359 13.4194 6.99403 13.3664C6.0781 12.5508 4.73641 11.3562 3.59926 9.96927C2.39872 8.50508 1.35248 6.74041 1.35248 4.90532Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2w = [\n \"color\"\n];\nvar HeartFilledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2w);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.35248 4.90532C1.35248 2.94498 2.936 1.35248 4.89346 1.35248C6.25769 1.35248 6.86058 1.92336 7.50002 2.93545C8.13946 1.92336 8.74235 1.35248 10.1066 1.35248C12.064 1.35248 13.6476 2.94498 13.6476 4.90532C13.6476 6.74041 12.6013 8.50508 11.4008 9.96927C10.2636 11.3562 8.92194 12.5508 8.00601 13.3664C7.94645 13.4194 7.88869 13.4709 7.83291 13.5206C7.64324 13.6899 7.3568 13.6899 7.16713 13.5206C7.11135 13.4709 7.05359 13.4194 6.99403 13.3664C6.0781 12.5508 4.73641 11.3562 3.59926 9.96927C2.39872 8.50508 1.35248 6.74041 1.35248 4.90532Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2x = [\n \"color\"\n];\nvar HeightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2x);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.1813 1.68179C7.35704 1.50605 7.64196 1.50605 7.8177 1.68179L10.3177 4.18179C10.4934 4.35753 10.4934 4.64245 10.3177 4.81819C10.142 4.99392 9.85704 4.99392 9.6813 4.81819L7.9495 3.08638L7.9495 11.9136L9.6813 10.1818C9.85704 10.0061 10.142 10.0061 10.3177 10.1818C10.4934 10.3575 10.4934 10.6424 10.3177 10.8182L7.8177 13.3182C7.73331 13.4026 7.61885 13.45 7.4995 13.45C7.38015 13.45 7.26569 13.4026 7.1813 13.3182L4.6813 10.8182C4.50557 10.6424 4.50557 10.3575 4.6813 10.1818C4.85704 10.0061 5.14196 10.0061 5.3177 10.1818L7.0495 11.9136L7.0495 3.08638L5.3177 4.81819C5.14196 4.99392 4.85704 4.99392 4.6813 4.81819C4.50557 4.64245 4.50557 4.35753 4.6813 4.18179L7.1813 1.68179Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2y = [\n \"color\"\n];\nvar HobbyKnifeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.3536 13.3536C12.1583 13.5488 11.8417 13.5488 11.6465 13.3536L6.39645 8.10355C6.36478 8.07188 6.33824 8.03702 6.31685 8H5.00002C4.78719 8 4.59769 7.86528 4.52777 7.66426L2.12777 0.764277C2.05268 0.548387 2.13355 0.309061 2.3242 0.182972C2.51486 0.0568819 2.76674 0.0761337 2.93602 0.229734L8.336 5.12972C8.44044 5.22449 8.50001 5.35897 8.50001 5.5V5.81684C8.53702 5.83824 8.57189 5.86478 8.60356 5.89645L13.8536 11.1464C14.0488 11.3417 14.0488 11.6583 13.8536 11.8536L12.3536 13.3536ZM8.25 6.95711L7.45711 7.75L12 12.2929L12.7929 11.5L8.25 6.95711ZM3.71669 2.28845L5.35549 7H6.2929L7.50001 5.79289V5.72146L3.71669 2.28845Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2z = [\n \"color\"\n];\nvar HomeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.07926 0.222253C7.31275 -0.007434 7.6873 -0.007434 7.92079 0.222253L14.6708 6.86227C14.907 7.09465 14.9101 7.47453 14.6778 7.71076C14.4454 7.947 14.0655 7.95012 13.8293 7.71773L13 6.90201V12.5C13 12.7761 12.7762 13 12.5 13H2.50002C2.22388 13 2.00002 12.7761 2.00002 12.5V6.90201L1.17079 7.71773C0.934558 7.95012 0.554672 7.947 0.32229 7.71076C0.0899079 7.47453 0.0930283 7.09465 0.32926 6.86227L7.07926 0.222253ZM7.50002 1.49163L12 5.91831V12H10V8.49999C10 8.22385 9.77617 7.99999 9.50002 7.99999H6.50002C6.22388 7.99999 6.00002 8.22385 6.00002 8.49999V12H3.00002V5.91831L7.50002 1.49163ZM7.00002 12H9.00002V8.99999H7.00002V12Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2A = [\n \"color\"\n];\nvar IconJarLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2A);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 0.0032959C6.80473 0.0032959 6.24953 0.281106 6.25 0.749995C6.25 0.997258 6.42446 1.12014 6.57687 1.22749C6.69507 1.31074 6.8 1.38465 6.8 1.5C6.8 1.7071 6.06224 1.74264 5.19789 1.78427C3.97553 1.84314 2.5 1.91421 2.5 2.5C2.5 2.77614 2.72386 3 3 3H12C12.2761 3 12.5 2.77614 12.5 2.5C12.5 1.91421 11.0245 1.84314 9.80211 1.78427C8.93776 1.74264 8.2 1.7071 8.2 1.5C8.2 1.38465 8.30493 1.31074 8.42313 1.22749C8.57554 1.12014 8.75 0.997258 8.75 0.749995C8.75047 0.281106 8.19527 0.0032959 7.5 0.0032959ZM2.89451 6.12266C2.25806 6.52471 1.90417 7.31118 2.02473 8.0556L2.83588 12.4772C3.00993 13.3562 3.7629 14 4.66061 14H10.3373C11.2354 14 11.9884 13.3562 12.1625 12.4772L12.9736 8.05607C13.089 7.32358 12.8284 6.53276 12.1331 6.09373C11.7283 5.83013 11.6412 5.33231 12.1331 5.12796C12.8284 4.86435 12.6948 4 12 4H10.3001H6.80005H2.99996C2.30469 4 2.19878 4.89328 2.89451 5.15689C3.38642 5.33231 3.29939 5.83013 2.89451 6.12266ZM8.20006 6.25C8.20006 5.81769 8.08572 5.37615 7.90635 5L4.11093 5C4.20626 5.21312 4.2419 5.43889 4.22904 5.65521C4.19522 6.22412 3.84587 6.66899 3.48016 6.93322L3.45492 6.95146L3.42858 6.9681C3.13407 7.15414 2.95801 7.53989 3.01058 7.88749L3.81797 12.2886C3.90513 12.7154 4.26148 13 4.66061 13H10.3373C10.737 13 11.0932 12.7153 11.1804 12.2886L11.9874 7.8898C12.048 7.48247 11.8954 7.12631 11.5992 6.93927L11.5875 6.93184L11.5875 6.93176C11.1947 6.67602 10.8331 6.22785 10.7986 5.64798C10.7846 5.412 10.8264 5.19397 10.9112 5H9.05517C9.01987 5.14611 9.00006 5.31201 9.00006 5.5C9.00006 5.9745 9.21679 6.37127 9.44367 6.78662C9.69284 7.24278 9.95425 7.72136 9.95425 8.34993C9.95425 9.2698 9.49868 9.84205 8.62189 9.84205C8.13206 9.84205 7.57818 9.46097 7.57818 8.75781C7.57818 8.35279 7.71558 8.01646 7.86121 7.65998C8.0254 7.25806 8.20006 6.83051 8.20006 6.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2B = [\n \"color\"\n];\nvar IdCardIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2B);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14 11.0001V4.00006L1 4.00006L1 11.0001H14ZM15 4.00006V11.0001C15 11.5523 14.5523 12.0001 14 12.0001H1C0.447715 12.0001 0 11.5523 0 11.0001V4.00006C0 3.44778 0.447715 3.00006 1 3.00006H14C14.5523 3.00006 15 3.44778 15 4.00006ZM2 5.25C2 5.11193 2.11193 5 2.25 5H5.75C5.88807 5 6 5.11193 6 5.25V9.75C6 9.88807 5.88807 10 5.75 10H2.25C2.11193 10 2 9.88807 2 9.75V5.25ZM7.5 7C7.22386 7 7 7.22386 7 7.5C7 7.77614 7.22386 8 7.5 8H10.5C10.7761 8 11 7.77614 11 7.5C11 7.22386 10.7761 7 10.5 7H7.5ZM7 9.5C7 9.22386 7.22386 9 7.5 9H12.5C12.7761 9 13 9.22386 13 9.5C13 9.77614 12.7761 10 12.5 10H7.5C7.22386 10 7 9.77614 7 9.5ZM7.5 5C7.22386 5 7 5.22386 7 5.5C7 5.77614 7.22386 6 7.5 6H11.5C11.7761 6 12 5.77614 12 5.5C12 5.22386 11.7761 5 11.5 5H7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2C = [\n \"color\"\n];\nvar ImageIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2C);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.5 1H12.5C13.3284 1 14 1.67157 14 2.5V12.5C14 13.3284 13.3284 14 12.5 14H2.5C1.67157 14 1 13.3284 1 12.5V2.5C1 1.67157 1.67157 1 2.5 1ZM2.5 2C2.22386 2 2 2.22386 2 2.5V8.3636L3.6818 6.6818C3.76809 6.59551 3.88572 6.54797 4.00774 6.55007C4.12975 6.55216 4.24568 6.60372 4.32895 6.69293L7.87355 10.4901L10.6818 7.6818C10.8575 7.50607 11.1425 7.50607 11.3182 7.6818L13 9.3636V2.5C13 2.22386 12.7761 2 12.5 2H2.5ZM2 12.5V9.6364L3.98887 7.64753L7.5311 11.4421L8.94113 13H2.5C2.22386 13 2 12.7761 2 12.5ZM12.5 13H10.155L8.48336 11.153L11 8.6364L13 10.6364V12.5C13 12.7761 12.7761 13 12.5 13ZM6.64922 5.5C6.64922 5.03013 7.03013 4.64922 7.5 4.64922C7.96987 4.64922 8.35078 5.03013 8.35078 5.5C8.35078 5.96987 7.96987 6.35078 7.5 6.35078C7.03013 6.35078 6.64922 5.96987 6.64922 5.5ZM7.5 3.74922C6.53307 3.74922 5.74922 4.53307 5.74922 5.5C5.74922 6.46693 6.53307 7.25078 7.5 7.25078C8.46693 7.25078 9.25078 6.46693 9.25078 5.5C9.25078 4.53307 8.46693 3.74922 7.5 3.74922Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2D = [\n \"color\"\n];\nvar InfoCircledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2D);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.876892C3.84222 0.876892 0.877075 3.84204 0.877075 7.49972C0.877075 11.1574 3.84222 14.1226 7.49991 14.1226C11.1576 14.1226 14.1227 11.1574 14.1227 7.49972C14.1227 3.84204 11.1576 0.876892 7.49991 0.876892ZM1.82707 7.49972C1.82707 4.36671 4.36689 1.82689 7.49991 1.82689C10.6329 1.82689 13.1727 4.36671 13.1727 7.49972C13.1727 10.6327 10.6329 13.1726 7.49991 13.1726C4.36689 13.1726 1.82707 10.6327 1.82707 7.49972ZM8.24992 4.49999C8.24992 4.9142 7.91413 5.24999 7.49992 5.24999C7.08571 5.24999 6.74992 4.9142 6.74992 4.49999C6.74992 4.08577 7.08571 3.74999 7.49992 3.74999C7.91413 3.74999 8.24992 4.08577 8.24992 4.49999ZM6.00003 5.99999H6.50003H7.50003C7.77618 5.99999 8.00003 6.22384 8.00003 6.49999V9.99999H8.50003H9.00003V11H8.50003H7.50003H6.50003H6.00003V9.99999H6.50003H7.00003V6.99999H6.50003H6.00003V5.99999Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2E = [\n \"color\"\n];\nvar InputIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2E);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.5 1C6.22386 1 6 1.22386 6 1.5C6 1.77614 6.22386 2 6.5 2C7.12671 2 7.45718 2.20028 7.65563 2.47812C7.8781 2.78957 8 3.28837 8 4V11C8 11.7116 7.8781 12.2104 7.65563 12.5219C7.45718 12.7997 7.12671 13 6.5 13C6.22386 13 6 13.2239 6 13.5C6 13.7761 6.22386 14 6.5 14C7.37329 14 8.04282 13.7003 8.46937 13.1031C8.47976 13.0886 8.48997 13.0739 8.5 13.0591C8.51003 13.0739 8.52024 13.0886 8.53063 13.1031C8.95718 13.7003 9.62671 14 10.5 14C10.7761 14 11 13.7761 11 13.5C11 13.2239 10.7761 13 10.5 13C9.87329 13 9.54282 12.7997 9.34437 12.5219C9.1219 12.2104 9 11.7116 9 11V4C9 3.28837 9.1219 2.78957 9.34437 2.47812C9.54282 2.20028 9.87329 2 10.5 2C10.7761 2 11 1.77614 11 1.5C11 1.22386 10.7761 1 10.5 1C9.62671 1 8.95718 1.29972 8.53063 1.89688C8.52024 1.91143 8.51003 1.92611 8.5 1.9409C8.48997 1.92611 8.47976 1.91143 8.46937 1.89688C8.04282 1.29972 7.37329 1 6.5 1ZM14 5H11V4H14C14.5523 4 15 4.44772 15 5V10C15 10.5523 14.5523 11 14 11H11V10H14V5ZM6 4V5H1L1 10H6V11H1C0.447715 11 0 10.5523 0 10V5C0 4.44772 0.447715 4 1 4H6Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2F = [\n \"color\"\n];\nvar InstagramLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2F);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M12.9091 12.909C13.2365 12.5817 13.4918 12.1895 13.6588 11.7577C13.8195 11.3443 13.9294 10.8718 13.961 10.1799C13.9926 9.48665 14.0001 9.26529 14.0001 7.50001C14.0001 5.73473 13.9926 5.51328 13.961 4.82008C13.9294 4.12821 13.8195 3.65573 13.6588 3.24228C13.4956 2.80857 13.2398 2.41567 12.9091 2.091C12.5844 1.76028 12.1915 1.50437 11.7578 1.34113C11.3443 1.18056 10.8718 1.0707 10.1799 1.03924C9.48675 1.00748 9.26537 1 7.50006 1C5.73476 1 5.51333 1.00748 4.82014 1.03912C4.12826 1.0707 3.65578 1.18056 3.24233 1.34125C2.80862 1.50447 2.41573 1.76032 2.09105 2.09098C1.76032 2.41563 1.5044 2.80852 1.34113 3.24225C1.18056 3.65573 1.0707 4.12821 1.03924 4.82008C1.00748 5.51328 1 5.73471 1 7.50001C1 9.26532 1.00748 9.48675 1.03924 10.1799C1.07083 10.8718 1.18069 11.3443 1.34138 11.7577C1.5046 12.1915 1.76045 12.5843 2.09111 12.909C2.41578 13.2397 2.80867 13.4955 3.24238 13.6587C3.65586 13.8194 4.12834 13.9293 4.82019 13.9609C5.51348 13.9925 5.73483 14 7.50012 14C9.2654 14 9.48685 13.9925 10.18 13.9609C10.8719 13.9293 11.3444 13.8194 11.7578 13.6587C12.1896 13.4917 12.5818 13.2364 12.9091 12.909ZM1.99949 6.73496C1.99974 6.94524 2.00005 7.19543 2.00005 7.50002C2.00005 7.80461 1.99974 8.0548 1.99949 8.26507C1.99849 9.08596 1.99824 9.29856 2.01963 9.7655C2.04625 10.3509 2.07823 10.7811 2.17588 11.1053C2.26976 11.417 2.37505 11.7342 2.7188 12.1171C3.06255 12.4999 3.39411 12.6733 3.81645 12.8007C4.23879 12.928 4.7696 12.9554 5.23052 12.9764C5.75332 13.0003 5.96052 13.0002 7.05714 12.9999L7.50006 12.9999C7.79304 12.9999 8.03569 13.0001 8.2409 13.0004C9.08195 13.0013 9.29425 13.0015 9.76575 12.9799C10.3512 12.9533 10.7814 12.9213 11.1056 12.8237C11.4173 12.7298 11.7345 12.6245 12.1173 12.2807C12.5001 11.937 12.6735 11.6054 12.8009 11.1831C12.9283 10.7607 12.9557 10.2299 12.9767 9.76902C13.0005 9.24689 13.0004 9.04027 13.0002 7.94749V7.94738L13.0001 7.50039L13.0001 7.05747C13.0004 5.96085 13.0005 5.75365 12.9766 5.23085C12.9556 4.76993 12.9282 4.23912 12.8009 3.81678C12.6735 3.39445 12.5001 3.06288 12.1173 2.71913C11.7345 2.37538 11.4172 2.27009 11.1056 2.17621C10.7813 2.07856 10.3511 2.04658 9.76571 2.01996C9.29421 1.99836 9.08194 1.99859 8.24092 1.99951H8.24092C8.0357 1.99974 7.79305 2.00001 7.50006 2.00001L7.05704 1.99993C5.96051 1.99964 5.75331 1.99958 5.23052 2.02343C4.7696 2.04446 4.23879 2.07183 3.81645 2.19921C3.39411 2.32659 3.06255 2.49999 2.7188 2.88281C2.37505 3.26562 2.26976 3.58286 2.17588 3.89453C2.07823 4.21874 2.04625 4.64894 2.01963 5.23437C1.99824 5.70131 1.99849 5.91401 1.99949 6.73496ZM7.49996 5.25015C6.25741 5.25015 5.25012 6.25744 5.25012 7.49999C5.25012 8.74254 6.25741 9.74983 7.49996 9.74983C8.74251 9.74983 9.7498 8.74254 9.7498 7.49999C9.7498 6.25744 8.74251 5.25015 7.49996 5.25015ZM4.25012 7.49999C4.25012 5.70515 5.70512 4.25015 7.49996 4.25015C9.2948 4.25015 10.7498 5.70515 10.7498 7.49999C10.7498 9.29483 9.2948 10.7498 7.49996 10.7498C5.70512 10.7498 4.25012 9.29483 4.25012 7.49999ZM10.9697 4.7803C11.3839 4.7803 11.7197 4.44452 11.7197 4.0303C11.7197 3.61609 11.3839 3.2803 10.9697 3.2803C10.5555 3.2803 10.2197 3.61609 10.2197 4.0303C10.2197 4.44452 10.5555 4.7803 10.9697 4.7803Z\",\n fill: color\n }));\n});\nvar _excluded$2G = [\n \"color\"\n];\nvar KeyboardIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2G);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M13.5 4H1.5C1.22386 4 1 4.22386 1 4.5V10.5C1 10.7761 1.22386 11 1.5 11H13.5C13.7761 11 14 10.7761 14 10.5V4.5C14 4.22386 13.7761 4 13.5 4ZM1.5 3C0.671573 3 0 3.67157 0 4.5V10.5C0 11.3284 0.671573 12 1.5 12H13.5C14.3284 12 15 11.3284 15 10.5V4.5C15 3.67157 14.3284 3 13.5 3H1.5ZM2 5H3V6H2V5ZM5 5H4V6H5V5ZM6 5H7V6H6V5ZM9 5H8V6H9V5ZM10 5H11V6H10V5ZM13 5H12V6H13V5ZM11 7H12V8H11V7ZM13 9H12V10H13V9ZM9 7H10V8H9V7ZM8 7H7V8H8V7ZM5 7H6V8H5V7ZM4 7H3V8H4V7ZM2 9H3V10H2V9ZM11 9H4V10H11V9Z\",\n fill: color\n }));\n});\nvar _excluded$2H = [\n \"color\"\n];\nvar LapTimerIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2H);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.49998 0.5C5.49998 0.223858 5.72383 0 5.99998 0H7.49998H8.99998C9.27612 0 9.49998 0.223858 9.49998 0.5C9.49998 0.776142 9.27612 1 8.99998 1H7.99998V2.11922C9.09832 2.20409 10.119 2.56622 10.992 3.13572C11.0116 3.10851 11.0336 3.08252 11.058 3.05806L12.058 2.05806C12.3021 1.81398 12.6978 1.81398 12.9419 2.05806C13.186 2.30214 13.186 2.69786 12.9419 2.94194L11.967 3.91682C13.1595 5.07925 13.9 6.70314 13.9 8.49998C13.9 12.0346 11.0346 14.9 7.49998 14.9C3.96535 14.9 1.09998 12.0346 1.09998 8.49998C1.09998 5.13361 3.69904 2.3743 6.99998 2.11922V1H5.99998C5.72383 1 5.49998 0.776142 5.49998 0.5ZM2.09998 8.49998C2.09998 5.51764 4.51764 3.09998 7.49998 3.09998C10.4823 3.09998 12.9 5.51764 12.9 8.49998C12.9 11.4823 10.4823 13.9 7.49998 13.9C4.51764 13.9 2.09998 11.4823 2.09998 8.49998ZM7.49998 8.49998V4.09998C5.06992 4.09998 3.09998 6.06992 3.09998 8.49998C3.09998 10.93 5.06992 12.9 7.49998 12.9C8.715 12.9 9.815 12.4075 10.6112 11.6112L7.49998 8.49998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2I = [\n \"color\"\n];\nvar LaptopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2I);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 4.25C2 4.11193 2.11193 4 2.25 4H12.75C12.8881 4 13 4.11193 13 4.25V11.5H2V4.25ZM2.25 3C1.55964 3 1 3.55964 1 4.25V12H0V12.5C0 12.7761 0.223858 13 0.5 13H14.5C14.7761 13 15 12.7761 15 12.5V12H14V4.25C14 3.55964 13.4404 3 12.75 3H2.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2J = [\n \"color\"\n];\nvar LayersIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2J);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.75432 0.819537C7.59742 0.726821 7.4025 0.726821 7.24559 0.819537L1.74559 4.06954C1.59336 4.15949 1.49996 4.32317 1.49996 4.5C1.49996 4.67683 1.59336 4.84051 1.74559 4.93046L7.24559 8.18046C7.4025 8.27318 7.59742 8.27318 7.75432 8.18046L13.2543 4.93046C13.4066 4.84051 13.5 4.67683 13.5 4.5C13.5 4.32317 13.4066 4.15949 13.2543 4.06954L7.75432 0.819537ZM7.49996 7.16923L2.9828 4.5L7.49996 1.83077L12.0171 4.5L7.49996 7.16923ZM1.5695 7.49564C1.70998 7.2579 2.01659 7.17906 2.25432 7.31954L7.49996 10.4192L12.7456 7.31954C12.9833 7.17906 13.2899 7.2579 13.4304 7.49564C13.5709 7.73337 13.4921 8.03998 13.2543 8.18046L7.75432 11.4305C7.59742 11.5232 7.4025 11.5232 7.24559 11.4305L1.74559 8.18046C1.50786 8.03998 1.42901 7.73337 1.5695 7.49564ZM1.56949 10.4956C1.70998 10.2579 2.01658 10.1791 2.25432 10.3195L7.49996 13.4192L12.7456 10.3195C12.9833 10.1791 13.2899 10.2579 13.4304 10.4956C13.5709 10.7334 13.4921 11.04 13.2543 11.1805L7.75432 14.4305C7.59742 14.5232 7.4025 14.5232 7.24559 14.4305L1.74559 11.1805C1.50785 11.04 1.42901 10.7334 1.56949 10.4956Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2K = [\n \"color\"\n];\nvar LayoutIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2K);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9 2H6V13H9V2ZM10 2V13H12.5C12.7761 13 13 12.7761 13 12.5V2.5C13 2.22386 12.7761 2 12.5 2H10ZM2.5 2H5V13H2.5C2.22386 13 2 12.7761 2 12.5V2.5C2 2.22386 2.22386 2 2.5 2ZM2.5 1C1.67157 1 1 1.67157 1 2.5V12.5C1 13.3284 1.67157 14 2.5 14H12.5C13.3284 14 14 13.3284 14 12.5V2.5C14 1.67157 13.3284 1 12.5 1H2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2L = [\n \"color\"\n];\nvar LetterCaseCapitalizeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2L);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.68979 2.75C3.89667 2.74979 4.08232 2.87701 4.15679 3.07003L7.36662 11.39C7.46602 11.6477 7.33774 11.9371 7.0801 12.0365C6.82247 12.1359 6.53304 12.0076 6.43365 11.75L5.3825 9.02537H2.01133L0.966992 11.749C0.868128 12.0068 0.578964 12.1357 0.321126 12.0369C0.0632878 11.938 -0.0655864 11.6488 0.0332774 11.391L3.22344 3.07099C3.29751 2.87782 3.4829 2.75021 3.68979 2.75ZM3.69174 4.64284L5.05458 8.17537H2.33724L3.69174 4.64284ZM10.8989 5.20703C9.25818 5.20703 8.00915 6.68569 8.00915 8.60972C8.00915 10.6337 9.35818 12.0124 10.8989 12.0124C11.7214 12.0124 12.5744 11.6692 13.1543 11.0219V11.53C13.1543 11.7785 13.3557 11.98 13.6043 11.98C13.8528 11.98 14.0543 11.7785 14.0543 11.53V5.72C14.0543 5.47147 13.8528 5.27 13.6043 5.27C13.3557 5.27 13.1543 5.47147 13.1543 5.72V6.22317C12.6054 5.60095 11.7924 5.20703 10.8989 5.20703ZM13.1543 9.79823V7.30195C12.7639 6.58101 11.9414 6.05757 11.0868 6.05757C10.1088 6.05757 9.03503 6.96581 9.03503 8.60955C9.03503 10.1533 10.0088 11.1615 11.0868 11.1615C11.9701 11.1615 12.7719 10.4952 13.1543 9.79823Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2M = [\n \"color\"\n];\nvar LetterCaseLowercaseIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2M);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.69899 5.20703C2.05823 5.20703 0.809204 6.68569 0.809204 8.60972C0.809204 10.6337 2.15823 12.0124 3.69899 12.0124C4.52126 12.0124 5.37402 11.6693 5.9539 11.0223V11.53C5.9539 11.7785 6.15537 11.98 6.4039 11.98C6.65243 11.98 6.8539 11.7785 6.8539 11.53V5.72001C6.8539 5.47149 6.65243 5.27001 6.4039 5.27001C6.15537 5.27001 5.9539 5.47149 5.9539 5.72001V6.22269C5.40506 5.60075 4.59218 5.20703 3.69899 5.20703ZM5.9539 9.799V7.30117C5.56339 6.58064 4.74118 6.05757 3.8868 6.05757C2.9089 6.05757 1.83508 6.96581 1.83508 8.60955C1.83508 10.1533 2.80889 11.1615 3.8868 11.1615C4.76984 11.1615 5.57141 10.4957 5.9539 9.799ZM10.799 5.20703C9.15823 5.20703 7.9092 6.68569 7.9092 8.60972C7.9092 10.6337 9.25823 12.0124 10.799 12.0124C11.6215 12.0124 12.4744 11.6692 13.0543 11.0218V11.53C13.0543 11.7785 13.2558 11.98 13.5043 11.98C13.7529 11.98 13.9543 11.7785 13.9543 11.53V5.72C13.9543 5.47147 13.7529 5.27 13.5043 5.27C13.2558 5.27 13.0543 5.47147 13.0543 5.72V6.22318C12.5055 5.60095 11.6924 5.20703 10.799 5.20703ZM13.0543 9.79822V7.30196C12.664 6.58102 11.8415 6.05757 10.9868 6.05757C10.0089 6.05757 8.93508 6.96581 8.93508 8.60955C8.93508 10.1533 9.90889 11.1615 10.9868 11.1615C11.8702 11.1615 12.672 10.4952 13.0543 9.79822Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2N = [\n \"color\"\n];\nvar LetterCaseToggleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2N);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.2895 2.75C11.4964 2.74979 11.6821 2.87701 11.7565 3.07003L14.9664 11.39C15.0657 11.6477 14.9375 11.9371 14.6798 12.0365C14.4222 12.1359 14.1328 12.0076 14.0334 11.75L12.9822 9.02537H9.61106L8.56672 11.749C8.46786 12.0068 8.1787 12.1357 7.92086 12.0369C7.66302 11.938 7.53415 11.6488 7.63301 11.391L10.8232 3.07099C10.8972 2.87782 11.0826 2.75021 11.2895 2.75ZM11.2915 4.64284L12.6543 8.17537H9.93698L11.2915 4.64284ZM2.89895 5.20703C1.25818 5.20703 0.00915527 6.68569 0.00915527 8.60972C0.00915527 10.6337 1.35818 12.0124 2.89895 12.0124C3.72141 12.0124 4.57438 11.6692 5.15427 11.0219V11.53C5.15427 11.7785 5.35574 11.98 5.60427 11.98C5.8528 11.98 6.05427 11.7785 6.05427 11.53V5.72C6.05427 5.47147 5.8528 5.27 5.60427 5.27C5.35574 5.27 5.15427 5.47147 5.15427 5.72V6.22317C4.60543 5.60095 3.79236 5.20703 2.89895 5.20703ZM5.15427 9.79823V7.30195C4.76393 6.58101 3.94144 6.05757 3.08675 6.05757C2.10885 6.05757 1.03503 6.96581 1.03503 8.60955C1.03503 10.1533 2.00885 11.1615 3.08675 11.1615C3.97011 11.1615 4.77195 10.4952 5.15427 9.79823Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2O = [\n \"color\"\n];\nvar LetterCaseUppercaseIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2O);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.6255 2.75C3.83478 2.75 4.02192 2.88034 4.09448 3.07664L7.16985 11.3962C7.2656 11.6552 7.13324 11.9428 6.87423 12.0386C6.61522 12.1343 6.32763 12.002 6.23188 11.7429L5.22387 9.01603H2.02712L1.01911 11.7429C0.923362 12.002 0.635774 12.1343 0.376762 12.0386C0.117749 11.9428 -0.0146052 11.6552 0.0811401 11.3962L3.15651 3.07664C3.22908 2.88034 3.41621 2.75 3.6255 2.75ZM3.6255 4.69207L4.90966 8.16603H2.34133L3.6255 4.69207ZM11.3719 2.75C11.5811 2.75 11.7683 2.88034 11.8408 3.07664L14.9162 11.3962C15.012 11.6552 14.8796 11.9428 14.6206 12.0386C14.3616 12.1343 14.074 12.002 13.9782 11.7429L12.9702 9.01603H9.77348L8.76547 11.7429C8.66972 12.002 8.38213 12.1343 8.12312 12.0386C7.86411 11.9428 7.73175 11.6552 7.8275 11.3962L10.9029 3.07664C10.9754 2.88034 11.1626 2.75 11.3719 2.75ZM11.3719 4.69207L12.656 8.16603H10.0877L11.3719 4.69207Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2P = [\n \"color\"\n];\nvar LetterSpacingIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2P);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.55293 0.999969C4.75295 0.999969 4.93372 1.11917 5.0125 1.30301L8.01106 8.29982C8.11984 8.55363 8.00226 8.84757 7.74844 8.95635C7.49463 9.06512 7.20069 8.94754 7.09191 8.69373L6.11613 6.41685H2.98973L2.01395 8.69373C1.90517 8.94754 1.61123 9.06512 1.35742 8.95635C1.1036 8.84757 0.986023 8.55363 1.0948 8.29982L4.09336 1.30301C4.17214 1.11917 4.35291 0.999969 4.55293 0.999969ZM4.55293 2.76929L5.75186 5.56685H3.354L4.55293 2.76929ZM11.0562 9.00214C11.2617 9.00214 11.4463 8.87633 11.5215 8.68502L14.2733 1.68299C14.3743 1.42598 14.2478 1.13575 13.9908 1.03475C13.7338 0.933747 13.4436 1.06021 13.3426 1.31722L11.0562 7.13514L8.76973 1.31722C8.66873 1.06021 8.3785 0.933747 8.1215 1.03475C7.86449 1.13575 7.73802 1.42598 7.83902 1.68299L10.5908 8.68502C10.666 8.87633 10.8506 9.00214 11.0562 9.00214ZM14.9537 12.4999C14.9537 12.606 14.9115 12.7077 14.8365 12.7828L12.8365 14.7828C12.6803 14.939 12.4271 14.939 12.2708 14.7828C12.1146 14.6265 12.1146 14.3733 12.2708 14.2171L13.588 12.8999H1.51937L2.83653 14.2171C2.99274 14.3733 2.99274 14.6265 2.83653 14.7828C2.68032 14.939 2.42705 14.939 2.27084 14.7828L0.270843 12.7828C0.195828 12.7077 0.153687 12.606 0.153687 12.4999C0.153687 12.3938 0.195828 12.2921 0.270843 12.2171L2.27084 10.2171C2.42705 10.0609 2.68032 10.0609 2.83653 10.2171C2.99274 10.3733 2.99274 10.6265 2.83653 10.7828L1.51937 12.0999L13.588 12.0999L12.2708 10.7828C12.1146 10.6265 12.1146 10.3733 12.2708 10.2171C12.4271 10.0609 12.6803 10.0609 12.8365 10.2171L14.8365 12.2171C14.9115 12.2921 14.9537 12.3938 14.9537 12.4999Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2Q = [\n \"color\"\n];\nvar LightningBoltIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2Q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.69667 0.0403541C8.90859 0.131038 9.03106 0.354857 8.99316 0.582235L8.0902 6.00001H12.5C12.6893 6.00001 12.8625 6.10701 12.9472 6.27641C13.0319 6.4458 13.0136 6.6485 12.8999 6.80001L6.89997 14.8C6.76167 14.9844 6.51521 15.0503 6.30328 14.9597C6.09135 14.869 5.96888 14.6452 6.00678 14.4178L6.90974 9H2.49999C2.31061 9 2.13748 8.893 2.05278 8.72361C1.96809 8.55422 1.98636 8.35151 2.09999 8.2L8.09997 0.200038C8.23828 0.0156255 8.48474 -0.0503301 8.69667 0.0403541ZM3.49999 8.00001H7.49997C7.64695 8.00001 7.78648 8.06467 7.88148 8.17682C7.97648 8.28896 8.01733 8.43723 7.99317 8.5822L7.33027 12.5596L11.5 7.00001H7.49997C7.353 7.00001 7.21347 6.93534 7.11846 6.8232C7.02346 6.71105 6.98261 6.56279 7.00678 6.41781L7.66968 2.44042L3.49999 8.00001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2R = [\n \"color\"\n];\nvar LineHeightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2R);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.78233 2.21713C3.70732 2.14212 3.60557 2.09998 3.49949 2.09998C3.3934 2.09998 3.29166 2.14212 3.21664 2.21713L1.21664 4.21713C1.06044 4.37334 1.06044 4.62661 1.21664 4.78282C1.37285 4.93903 1.62612 4.93903 1.78233 4.78282L3.09949 3.46566L3.09949 11.5343L1.78233 10.2171C1.62612 10.0609 1.37285 10.0609 1.21664 10.2171C1.06043 10.3733 1.06043 10.6266 1.21664 10.7828L3.21664 12.7828C3.29166 12.8578 3.3934 12.9 3.49949 12.9C3.60557 12.9 3.70731 12.8578 3.78233 12.7828L5.78233 10.7828C5.93854 10.6266 5.93854 10.3733 5.78233 10.2171C5.62612 10.0609 5.37285 10.0609 5.21664 10.2171L3.89949 11.5343L3.89949 3.46566L5.21664 4.78282C5.37285 4.93903 5.62612 4.93903 5.78233 4.78282C5.93854 4.62661 5.93854 4.37334 5.78233 4.21713L3.78233 2.21713ZM8.49998 3.99997C8.22383 3.99997 7.99998 4.22382 7.99998 4.49997C7.99998 4.77611 8.22383 4.99997 8.49998 4.99997H14.5C14.7761 4.99997 15 4.77611 15 4.49997C15 4.22382 14.7761 3.99997 14.5 3.99997H8.49998ZM7.99998 7.49997C7.99998 7.22382 8.22383 6.99997 8.49998 6.99997H14.5C14.7761 6.99997 15 7.22382 15 7.49997C15 7.77611 14.7761 7.99997 14.5 7.99997H8.49998C8.22383 7.99997 7.99998 7.77611 7.99998 7.49997ZM8.49998 9.99997C8.22383 9.99997 7.99998 10.2238 7.99998 10.5C7.99998 10.7761 8.22383 11 8.49998 11H14.5C14.7761 11 15 10.7761 15 10.5C15 10.2238 14.7761 9.99997 14.5 9.99997H8.49998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2S = [\n \"color\"\n];\nvar Link1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2S);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.62471 4.00001L4.56402 4.00001C4.04134 3.99993 3.70687 3.99988 3.4182 4.055C2.2379 4.28039 1.29846 5.17053 1.05815 6.33035C0.999538 6.61321 0.999604 6.93998 0.999703 7.43689L0.999711 7.50001L0.999703 7.56313C0.999604 8.06004 0.999538 8.38681 1.05815 8.66967C1.29846 9.8295 2.2379 10.7196 3.4182 10.945C3.70688 11.0001 4.04135 11.0001 4.56403 11L4.62471 11H5.49971C5.77585 11 5.99971 10.7762 5.99971 10.5C5.99971 10.2239 5.77585 10 5.49971 10H4.62471C4.02084 10 3.78907 9.99777 3.60577 9.96277C2.80262 9.8094 2.19157 9.21108 2.03735 8.46678C2.00233 8.29778 1.99971 8.08251 1.99971 7.50001C1.99971 6.91752 2.00233 6.70225 2.03735 6.53324C2.19157 5.78895 2.80262 5.19062 3.60577 5.03725C3.78907 5.00225 4.02084 5.00001 4.62471 5.00001H5.49971C5.77585 5.00001 5.99971 4.77615 5.99971 4.50001C5.99971 4.22387 5.77585 4.00001 5.49971 4.00001H4.62471ZM10.3747 5.00001C10.9786 5.00001 11.2104 5.00225 11.3937 5.03725C12.1968 5.19062 12.8079 5.78895 12.9621 6.53324C12.9971 6.70225 12.9997 6.91752 12.9997 7.50001C12.9997 8.08251 12.9971 8.29778 12.9621 8.46678C12.8079 9.21108 12.1968 9.8094 11.3937 9.96277C11.2104 9.99777 10.9786 10 10.3747 10H9.49971C9.22357 10 8.99971 10.2239 8.99971 10.5C8.99971 10.7762 9.22357 11 9.49971 11H10.3747L10.4354 11C10.9581 11.0001 11.2925 11.0001 11.5812 10.945C12.7615 10.7196 13.701 9.8295 13.9413 8.66967C13.9999 8.38681 13.9998 8.06005 13.9997 7.56314L13.9997 7.50001L13.9997 7.43688C13.9998 6.93998 13.9999 6.61321 13.9413 6.33035C13.701 5.17053 12.7615 4.28039 11.5812 4.055C11.2925 3.99988 10.9581 3.99993 10.4354 4.00001L10.3747 4.00001H9.49971C9.22357 4.00001 8.99971 4.22387 8.99971 4.50001C8.99971 4.77615 9.22357 5.00001 9.49971 5.00001H10.3747ZM5.00038 7C4.72424 7 4.50038 7.22386 4.50038 7.5C4.50038 7.77614 4.72424 8 5.00038 8H10.0004C10.2765 8 10.5004 7.77614 10.5004 7.5C10.5004 7.22386 10.2765 7 10.0004 7H5.00038Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2T = [\n \"color\"\n];\nvar Link2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2T);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8.51194 3.00541C9.18829 2.54594 10.0435 2.53694 10.6788 2.95419C10.8231 3.04893 10.9771 3.1993 11.389 3.61119C11.8009 4.02307 11.9513 4.17714 12.046 4.32141C12.4633 4.95675 12.4543 5.81192 11.9948 6.48827C11.8899 6.64264 11.7276 6.80811 11.3006 7.23511L10.6819 7.85383C10.4867 8.04909 10.4867 8.36567 10.6819 8.56093C10.8772 8.7562 11.1938 8.7562 11.389 8.56093L12.0077 7.94221L12.0507 7.89929C12.4203 7.52976 12.6568 7.2933 12.822 7.0502C13.4972 6.05623 13.5321 4.76252 12.8819 3.77248C12.7233 3.53102 12.4922 3.30001 12.1408 2.94871L12.0961 2.90408L12.0515 2.85942C11.7002 2.508 11.4692 2.27689 11.2277 2.11832C10.2377 1.46813 8.94398 1.50299 7.95001 2.17822C7.70691 2.34336 7.47044 2.57991 7.1009 2.94955L7.058 2.99247L6.43928 3.61119C6.24401 3.80645 6.24401 4.12303 6.43928 4.31829C6.63454 4.51355 6.95112 4.51355 7.14638 4.31829L7.7651 3.69957C8.1921 3.27257 8.35757 3.11027 8.51194 3.00541ZM4.31796 7.14672C4.51322 6.95146 4.51322 6.63487 4.31796 6.43961C4.12269 6.24435 3.80611 6.24435 3.61085 6.43961L2.99213 7.05833L2.94922 7.10124C2.57957 7.47077 2.34303 7.70724 2.17788 7.95035C1.50265 8.94432 1.4678 10.238 2.11799 11.2281C2.27656 11.4695 2.50766 11.7005 2.8591 12.0518L2.90374 12.0965L2.94837 12.1411C3.29967 12.4925 3.53068 12.7237 3.77214 12.8822C4.76219 13.5324 6.05589 13.4976 7.04986 12.8223C7.29296 12.6572 7.52943 12.4206 7.89896 12.051L7.89897 12.051L7.94188 12.0081L8.5606 11.3894C8.75586 11.1941 8.75586 10.8775 8.5606 10.6823C8.36533 10.487 8.04875 10.487 7.85349 10.6823L7.23477 11.301C6.80777 11.728 6.6423 11.8903 6.48794 11.9951C5.81158 12.4546 4.95642 12.4636 4.32107 12.0464C4.17681 11.9516 4.02274 11.8012 3.61085 11.3894C3.19896 10.9775 3.0486 10.8234 2.95385 10.6791C2.53661 10.0438 2.54561 9.18863 3.00507 8.51227C3.10993 8.35791 3.27224 8.19244 3.69924 7.76544L4.31796 7.14672ZM9.62172 6.08558C9.81698 5.89032 9.81698 5.57373 9.62172 5.37847C9.42646 5.18321 9.10988 5.18321 8.91461 5.37847L5.37908 8.91401C5.18382 9.10927 5.18382 9.42585 5.37908 9.62111C5.57434 9.81637 5.89092 9.81637 6.08619 9.62111L9.62172 6.08558Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2U = [\n \"color\"\n];\nvar LinkBreak1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2U);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.3536 2.35355C13.5488 2.15829 13.5488 1.84171 13.3536 1.64645C13.1583 1.45118 12.8417 1.45118 12.6464 1.64645L1.64645 12.6464C1.45118 12.8417 1.45118 13.1583 1.64645 13.3536C1.84171 13.5488 2.15829 13.5488 2.35355 13.3536L13.3536 2.35355ZM2.03735 8.46678C2.17398 9.12619 2.66918 9.67103 3.33886 9.89338L2.57833 10.6539C1.80843 10.2534 1.23784 9.53693 1.05815 8.66967C0.999538 8.38681 0.999604 8.06004 0.999703 7.56313L0.999711 7.50001L0.999703 7.43689C0.999604 6.93998 0.999538 6.61321 1.05815 6.33035C1.29846 5.17053 2.2379 4.28039 3.4182 4.055C3.70687 3.99988 4.04134 3.99993 4.56402 4.00001L4.62471 4.00001H5.49971C5.77585 4.00001 5.99971 4.22387 5.99971 4.50001C5.99971 4.77615 5.77585 5.00001 5.49971 5.00001H4.62471C4.02084 5.00001 3.78907 5.00225 3.60577 5.03725C2.80262 5.19062 2.19157 5.78895 2.03735 6.53324C2.00233 6.70225 1.99971 6.91752 1.99971 7.50001C1.99971 8.08251 2.00233 8.29778 2.03735 8.46678ZM12.9621 6.53324C12.8255 5.87397 12.3304 5.32922 11.661 5.10679L12.4215 4.34631C13.1912 4.74686 13.7616 5.46323 13.9413 6.33035C13.9999 6.61321 13.9998 6.93998 13.9997 7.43688L13.9997 7.50001L13.9997 7.56314C13.9998 8.06005 13.9999 8.38681 13.9413 8.66967C13.701 9.8295 12.7615 10.7196 11.5812 10.945C11.2925 11.0001 10.9581 11.0001 10.4354 11L10.3747 11H9.49971C9.22357 11 8.99971 10.7762 8.99971 10.5C8.99971 10.2239 9.22357 10 9.49971 10H10.3747C10.9786 10 11.2104 9.99777 11.3937 9.96277C12.1968 9.8094 12.8079 9.21108 12.9621 8.46678C12.9971 8.29778 12.9997 8.08251 12.9997 7.50001C12.9997 6.91752 12.9971 6.70225 12.9621 6.53324Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2V = [\n \"color\"\n];\nvar LinkBreak2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2V);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.50021 0C4.77635 0 5.0002 0.223853 5.0002 0.49999V2.49995C5.0002 2.77609 4.77635 2.99994 4.50021 2.99994C4.22408 2.99994 4.00022 2.77609 4.00022 2.49995V0.49999C4.00022 0.223853 4.22408 0 4.50021 0ZM0.646451 0.64647C0.84171 0.451212 1.15829 0.451212 1.35354 0.64647L2.85351 2.14644C3.04877 2.3417 3.04877 2.65827 2.85351 2.85353C2.65826 3.04879 2.34168 3.04879 2.14642 2.85353L0.646452 1.35356C0.451193 1.1583 0.451193 0.841728 0.646451 0.64647ZM0.00030517 4.49991C0.00030517 4.22377 0.224158 3.99992 0.500295 3.99992H2.50025C2.77639 3.99992 3.00024 4.22377 3.00024 4.49991C3.00024 4.77605 2.77639 4.9999 2.50025 4.9999H0.500295C0.224158 4.9999 0.00030517 4.77605 0.00030517 4.49991ZM12.0001 10.4998C12.0001 10.2236 12.2239 9.9998 12.5001 9.9998H14.5C14.7761 9.9998 15 10.2236 15 10.4998C15 10.7759 14.7761 10.9998 14.5 10.9998H12.5001C12.2239 10.9998 12.0001 10.7759 12.0001 10.4998ZM10.5001 11.9998C10.7762 11.9998 11.0001 12.2236 11.0001 12.4997V14.4997C11.0001 14.7758 10.7762 14.9997 10.5001 14.9997C10.224 14.9997 10.0001 14.7758 10.0001 14.4997V12.4997C10.0001 12.2236 10.224 11.9998 10.5001 11.9998ZM12.1462 12.1462C12.3415 11.951 12.658 11.951 12.8533 12.1462L14.3533 13.6462C14.5485 13.8415 14.5485 14.158 14.3533 14.3533C14.158 14.5485 13.8414 14.5485 13.6462 14.3533L12.1462 12.8533C11.951 12.6581 11.951 12.3415 12.1462 12.1462ZM7.76478 3.69938C8.19177 3.27238 8.35724 3.11008 8.5116 3.00522C9.18794 2.54577 10.0431 2.53677 10.6784 2.95401C10.8227 3.04875 10.9767 3.19911 11.3886 3.61099C11.8005 4.02287 11.9509 4.17694 12.0456 4.3212C12.4628 4.95653 12.4539 5.81168 11.9944 6.48802C11.8895 6.64238 11.7272 6.80785 11.3002 7.23484L10.6815 7.85354C10.4863 8.0488 10.4863 8.36538 10.6815 8.56064C10.8768 8.75589 11.1934 8.75589 11.3886 8.56064L12.0073 7.94193L12.0502 7.89903C12.4199 7.5295 12.6564 7.29303 12.8216 7.04993C13.4968 6.05598 13.5316 4.7623 12.8815 3.77228C12.7229 3.53083 12.4918 3.29982 12.1404 2.94853L12.0957 2.9039L12.0511 2.85925C11.6998 2.50782 11.4688 2.27672 11.2273 2.11816C10.2373 1.46798 8.94364 1.50284 7.94968 2.17805C7.70659 2.34319 7.47012 2.57973 7.1006 2.94936L7.1006 2.94937L7.05769 2.99228L6.43898 3.61099C6.24372 3.80625 6.24372 4.12282 6.43898 4.31808C6.63424 4.51334 6.95081 4.51334 7.14607 4.31808L7.76478 3.69938ZM2.99191 7.05807L2.94899 7.10097C2.57935 7.4705 2.34282 7.70697 2.17767 7.95006C1.50246 8.94401 1.4676 10.2377 2.11778 11.2277C2.27634 11.4692 2.50744 11.7002 2.85886 12.0515L2.85888 12.0515L2.90352 12.0961L2.94815 12.1407L2.94815 12.1407L2.94817 12.1408C3.29945 12.4922 3.53045 12.7233 3.7719 12.8818C4.76193 13.532 6.0556 13.4972 7.04956 12.8219C7.29265 12.6568 7.52912 12.4203 7.89865 12.0506L7.94155 12.0077L8.56026 11.389C8.75552 11.1937 8.75552 10.8772 8.56026 10.6819C8.365 10.4867 8.04842 10.4867 7.85317 10.6819L7.23446 11.3006C6.80747 11.7276 6.642 11.8899 6.48764 11.9948C5.8113 12.4542 4.95615 12.4632 4.32082 12.046C4.17656 11.9512 4.02249 11.8009 3.61061 11.389C3.19873 10.9771 3.04837 10.8231 2.95363 10.6788C2.53639 10.0435 2.54539 9.18832 3.00484 8.51198C3.10971 8.35761 3.27201 8.19215 3.699 7.76516L4.3177 7.14645C4.51296 6.95119 4.51296 6.63462 4.3177 6.43936C4.12245 6.2441 3.80587 6.2441 3.61061 6.43936L2.99191 7.05807Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2W = [\n \"color\"\n];\nvar LinkNone1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2W);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.56427 3.99988C4.58422 3.99989 4.60445 3.99989 4.62496 3.99989H5.49996C5.7761 3.99989 5.99996 4.22375 5.99996 4.49989C5.99996 4.77603 5.7761 4.99989 5.49996 4.99989H4.62496C4.02108 4.99989 3.78932 5.00213 3.60601 5.03713C2.80287 5.1905 2.19181 5.78883 2.03759 6.53312C2.00257 6.70212 1.99996 6.91739 1.99996 7.49989C1.99996 8.08239 2.00257 8.29766 2.03759 8.46666C2.19181 9.21095 2.80287 9.80928 3.60601 9.96265C3.78932 9.99765 4.02108 9.99989 4.62496 9.99989H5.49996C5.7761 9.99989 5.99996 10.2237 5.99996 10.4999C5.99996 10.776 5.7761 10.9999 5.49996 10.9999H4.62496C4.60445 10.9999 4.58422 10.9999 4.56427 10.9999C4.04159 11 3.70712 11 3.41845 10.9449C2.23814 10.7195 1.29871 9.82937 1.05839 8.66955C0.999782 8.38669 0.999848 8.05992 0.999947 7.56301C0.999951 7.54227 0.999955 7.52123 0.999955 7.49989C0.999955 7.47855 0.999951 7.45751 0.999947 7.43677C0.999848 6.93986 0.999782 6.61309 1.05839 6.33023C1.29871 5.17041 2.23814 4.28027 3.41845 4.05488C3.70712 3.99976 4.04159 3.99981 4.56427 3.99988ZM11.3939 5.03713C11.2106 5.00213 10.9788 4.99989 10.375 4.99989H9.49996C9.22381 4.99989 8.99996 4.77603 8.99996 4.49989C8.99996 4.22375 9.22381 3.99989 9.49996 3.99989H10.375C10.3955 3.99989 10.4157 3.99989 10.4356 3.99988C10.9583 3.99981 11.2928 3.99976 11.5815 4.05488C12.7618 4.28027 13.7012 5.17041 13.9415 6.33023C14.0001 6.61309 14.0001 6.93985 14 7.43676C14 7.4575 14 7.47854 14 7.49989C14 7.52124 14 7.54228 14 7.56302C14.0001 8.05992 14.0001 8.38669 13.9415 8.66955C13.7012 9.82937 12.7618 10.7195 11.5815 10.9449C11.2928 11 10.9583 11 10.4356 10.9999C10.4157 10.9999 10.3955 10.9999 10.375 10.9999H9.49996C9.22381 10.9999 8.99996 10.776 8.99996 10.4999C8.99996 10.2237 9.22381 9.99989 9.49996 9.99989H10.375C10.9788 9.99989 11.2106 9.99765 11.3939 9.96265C12.197 9.80928 12.8081 9.21095 12.9623 8.46666C12.9973 8.29766 13 8.08239 13 7.49989C13 6.91739 12.9973 6.70212 12.9623 6.53312C12.8081 5.78883 12.197 5.1905 11.3939 5.03713Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2X = [\n \"color\"\n];\nvar LinkNone2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2X);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10.6788 2.95419C10.0435 2.53694 9.18829 2.54594 8.51194 3.00541C8.35757 3.11027 8.1921 3.27257 7.7651 3.69957L7.14638 4.31829C6.95112 4.51355 6.63454 4.51355 6.43928 4.31829C6.24401 4.12303 6.24401 3.80645 6.43928 3.61119L7.058 2.99247C7.0725 2.97797 7.08679 2.96366 7.1009 2.94955C7.47044 2.57991 7.70691 2.34336 7.95001 2.17822C8.94398 1.50299 10.2377 1.46813 11.2277 2.11832C11.4692 2.27689 11.7002 2.508 12.0515 2.85942C12.0662 2.8741 12.081 2.88898 12.0961 2.90408C12.1112 2.91917 12.1261 2.93405 12.1408 2.94871C12.4922 3.30001 12.7233 3.53102 12.8819 3.77248C13.5321 4.76252 13.4972 6.05623 12.822 7.0502C12.6568 7.2933 12.4203 7.52976 12.0507 7.89929C12.0366 7.9134 12.0222 7.92771 12.0077 7.94221L11.389 8.56093C11.1938 8.7562 10.8772 8.7562 10.6819 8.56093C10.4867 8.36567 10.4867 8.04909 10.6819 7.85383L11.3006 7.23511C11.7276 6.80811 11.8899 6.64264 11.9948 6.48827C12.4543 5.81192 12.4633 4.95675 12.046 4.32141C11.9513 4.17714 11.8009 4.02307 11.389 3.61119C10.9771 3.1993 10.8231 3.04893 10.6788 2.95419ZM4.31796 6.43961C4.51322 6.63487 4.51322 6.95146 4.31796 7.14672L3.69924 7.76544C3.27224 8.19244 3.10993 8.35791 3.00507 8.51227C2.54561 9.18863 2.53661 10.0438 2.95385 10.6791C3.0486 10.8234 3.19896 10.9775 3.61085 11.3894C4.02274 11.8012 4.17681 11.9516 4.32107 12.0464C4.95642 12.4636 5.81158 12.4546 6.48794 11.9951C6.6423 11.8903 6.80777 11.728 7.23477 11.301L7.85349 10.6823C8.04875 10.487 8.36533 10.487 8.5606 10.6823C8.75586 10.8775 8.75586 11.1941 8.5606 11.3894L7.94188 12.0081C7.92738 12.0226 7.91307 12.0369 7.89897 12.051C7.52943 12.4206 7.29296 12.6572 7.04986 12.8223C6.05589 13.4976 4.76219 13.5324 3.77214 12.8822C3.53068 12.7237 3.29967 12.4925 2.94837 12.1411C2.93371 12.1264 2.91883 12.1116 2.90374 12.0965C2.88865 12.0814 2.87377 12.0665 2.8591 12.0518C2.50766 11.7005 2.27656 11.4695 2.11799 11.2281C1.4678 10.238 1.50265 8.94432 2.17788 7.95035C2.34303 7.70724 2.57957 7.47077 2.94922 7.10124C2.96333 7.08713 2.97763 7.07283 2.99213 7.05833L3.61085 6.43961C3.80611 6.24435 4.12269 6.24435 4.31796 6.43961Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2Y = [\n \"color\"\n];\nvar LinkedInLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2Y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 1C1.44772 1 1 1.44772 1 2V13C1 13.5523 1.44772 14 2 14H13C13.5523 14 14 13.5523 14 13V2C14 1.44772 13.5523 1 13 1H2ZM3.05 6H4.95V12H3.05V6ZM5.075 4.005C5.075 4.59871 4.59371 5.08 4 5.08C3.4063 5.08 2.925 4.59871 2.925 4.005C2.925 3.41129 3.4063 2.93 4 2.93C4.59371 2.93 5.075 3.41129 5.075 4.005ZM12 8.35713C12 6.55208 10.8334 5.85033 9.67449 5.85033C9.29502 5.83163 8.91721 5.91119 8.57874 6.08107C8.32172 6.21007 8.05265 6.50523 7.84516 7.01853H7.79179V6.00044H6V12.0047H7.90616V8.8112C7.8786 8.48413 7.98327 8.06142 8.19741 7.80987C8.41156 7.55832 8.71789 7.49825 8.95015 7.46774H9.02258C9.62874 7.46774 10.0786 7.84301 10.0786 8.78868V12.0047H11.9847L12 8.35713Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2Z = [\n \"color\"\n];\nvar ListBulletIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2Z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.5 5.25C1.91421 5.25 2.25 4.91421 2.25 4.5C2.25 4.08579 1.91421 3.75 1.5 3.75C1.08579 3.75 0.75 4.08579 0.75 4.5C0.75 4.91421 1.08579 5.25 1.5 5.25ZM4 4.5C4 4.22386 4.22386 4 4.5 4H13.5C13.7761 4 14 4.22386 14 4.5C14 4.77614 13.7761 5 13.5 5H4.5C4.22386 5 4 4.77614 4 4.5ZM4.5 7C4.22386 7 4 7.22386 4 7.5C4 7.77614 4.22386 8 4.5 8H13.5C13.7761 8 14 7.77614 14 7.5C14 7.22386 13.7761 7 13.5 7H4.5ZM4.5 10C4.22386 10 4 10.2239 4 10.5C4 10.7761 4.22386 11 4.5 11H13.5C13.7761 11 14 10.7761 14 10.5C14 10.2239 13.7761 10 13.5 10H4.5ZM2.25 7.5C2.25 7.91421 1.91421 8.25 1.5 8.25C1.08579 8.25 0.75 7.91421 0.75 7.5C0.75 7.08579 1.08579 6.75 1.5 6.75C1.91421 6.75 2.25 7.08579 2.25 7.5ZM1.5 11.25C1.91421 11.25 2.25 10.9142 2.25 10.5C2.25 10.0858 1.91421 9.75 1.5 9.75C1.08579 9.75 0.75 10.0858 0.75 10.5C0.75 10.9142 1.08579 11.25 1.5 11.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2_ = [\n \"color\"\n];\nvar LockClosedIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2_);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 4.63601C5 3.76031 5.24219 3.1054 5.64323 2.67357C6.03934 2.24705 6.64582 1.9783 7.5014 1.9783C8.35745 1.9783 8.96306 2.24652 9.35823 2.67208C9.75838 3.10299 10 3.75708 10 4.63325V5.99999H5V4.63601ZM4 5.99999V4.63601C4 3.58148 4.29339 2.65754 4.91049 1.99307C5.53252 1.32329 6.42675 0.978302 7.5014 0.978302C8.57583 0.978302 9.46952 1.32233 10.091 1.99162C10.7076 2.65557 11 3.57896 11 4.63325V5.99999H12C12.5523 5.99999 13 6.44771 13 6.99999V13C13 13.5523 12.5523 14 12 14H3C2.44772 14 2 13.5523 2 13V6.99999C2 6.44771 2.44772 5.99999 3 5.99999H4ZM3 6.99999H12V13H3V6.99999Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$2$ = [\n \"color\"\n];\nvar LockOpen1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$2$);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.4986 0C6.3257 0 5.36107 0.38943 4.73753 1.19361C4.23745 1.83856 4 2.68242 4 3.63325H5C5 2.84313 5.19691 2.23312 5.5278 1.80636C5.91615 1.30552 6.55152 1 7.4986 1C8.35683 1 8.96336 1.26502 9.35846 1.68623C9.75793 2.11211 10 2.76044 10 3.63601V6H3C2.44772 6 2 6.44772 2 7V13C2 13.5523 2.44772 14 3 14H12C12.5523 14 13 13.5523 13 13V7C13 6.44771 12.5523 6 12 6H11V3.63601C11 2.58135 10.7065 1.66167 10.0878 1.0021C9.46477 0.337871 8.57061 0 7.4986 0ZM3 7H12V13H3V7Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$30 = [\n \"color\"\n];\nvar LockOpen2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$30);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9 3.63601C9 2.76044 9.24207 2.11211 9.64154 1.68623C10.0366 1.26502 10.6432 1 11.5014 1C12.4485 1 13.0839 1.30552 13.4722 1.80636C13.8031 2.23312 14 2.84313 14 3.63325H15C15 2.68242 14.7626 1.83856 14.2625 1.19361C13.6389 0.38943 12.6743 0 11.5014 0C10.4294 0 9.53523 0.337871 8.91218 1.0021C8.29351 1.66167 8 2.58135 8 3.63601V6H1C0.447715 6 0 6.44772 0 7V13C0 13.5523 0.447715 14 1 14H10C10.5523 14 11 13.5523 11 13V7C11 6.44772 10.5523 6 10 6H9V3.63601ZM1 7H10V13H1V7Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$31 = [\n \"color\"\n];\nvar LoopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$31);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.35355 1.85355C3.54882 1.65829 3.54882 1.34171 3.35355 1.14645C3.15829 0.951184 2.84171 0.951184 2.64645 1.14645L0.646447 3.14645C0.451184 3.34171 0.451184 3.65829 0.646447 3.85355L2.64645 5.85355C2.84171 6.04882 3.15829 6.04882 3.35355 5.85355C3.54882 5.65829 3.54882 5.34171 3.35355 5.14645L2.20711 4H9.5C11.433 4 13 5.567 13 7.5C13 7.77614 13.2239 8 13.5 8C13.7761 8 14 7.77614 14 7.5C14 5.01472 11.9853 3 9.5 3H2.20711L3.35355 1.85355ZM2 7.5C2 7.22386 1.77614 7 1.5 7C1.22386 7 1 7.22386 1 7.5C1 9.98528 3.01472 12 5.5 12H12.7929L11.6464 13.1464C11.4512 13.3417 11.4512 13.6583 11.6464 13.8536C11.8417 14.0488 12.1583 14.0488 12.3536 13.8536L14.3536 11.8536C14.5488 11.6583 14.5488 11.3417 14.3536 11.1464L12.3536 9.14645C12.1583 8.95118 11.8417 8.95118 11.6464 9.14645C11.4512 9.34171 11.4512 9.65829 11.6464 9.85355L12.7929 11H5.5C3.567 11 2 9.433 2 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$32 = [\n \"color\"\n];\nvar MagicWandIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$32);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.9 0.499976C13.9 0.279062 13.7209 0.0999756 13.5 0.0999756C13.2791 0.0999756 13.1 0.279062 13.1 0.499976V1.09998H12.5C12.2791 1.09998 12.1 1.27906 12.1 1.49998C12.1 1.72089 12.2791 1.89998 12.5 1.89998H13.1V2.49998C13.1 2.72089 13.2791 2.89998 13.5 2.89998C13.7209 2.89998 13.9 2.72089 13.9 2.49998V1.89998H14.5C14.7209 1.89998 14.9 1.72089 14.9 1.49998C14.9 1.27906 14.7209 1.09998 14.5 1.09998H13.9V0.499976ZM11.8536 3.14642C12.0488 3.34168 12.0488 3.65826 11.8536 3.85353L10.8536 4.85353C10.6583 5.04879 10.3417 5.04879 10.1465 4.85353C9.9512 4.65827 9.9512 4.34169 10.1465 4.14642L11.1464 3.14643C11.3417 2.95116 11.6583 2.95116 11.8536 3.14642ZM9.85357 5.14642C10.0488 5.34168 10.0488 5.65827 9.85357 5.85353L2.85355 12.8535C2.65829 13.0488 2.34171 13.0488 2.14645 12.8535C1.95118 12.6583 1.95118 12.3417 2.14645 12.1464L9.14646 5.14642C9.34172 4.95116 9.65831 4.95116 9.85357 5.14642ZM13.5 5.09998C13.7209 5.09998 13.9 5.27906 13.9 5.49998V6.09998H14.5C14.7209 6.09998 14.9 6.27906 14.9 6.49998C14.9 6.72089 14.7209 6.89998 14.5 6.89998H13.9V7.49998C13.9 7.72089 13.7209 7.89998 13.5 7.89998C13.2791 7.89998 13.1 7.72089 13.1 7.49998V6.89998H12.5C12.2791 6.89998 12.1 6.72089 12.1 6.49998C12.1 6.27906 12.2791 6.09998 12.5 6.09998H13.1V5.49998C13.1 5.27906 13.2791 5.09998 13.5 5.09998ZM8.90002 0.499976C8.90002 0.279062 8.72093 0.0999756 8.50002 0.0999756C8.2791 0.0999756 8.10002 0.279062 8.10002 0.499976V1.09998H7.50002C7.2791 1.09998 7.10002 1.27906 7.10002 1.49998C7.10002 1.72089 7.2791 1.89998 7.50002 1.89998H8.10002V2.49998C8.10002 2.72089 8.2791 2.89998 8.50002 2.89998C8.72093 2.89998 8.90002 2.72089 8.90002 2.49998V1.89998H9.50002C9.72093 1.89998 9.90002 1.72089 9.90002 1.49998C9.90002 1.27906 9.72093 1.09998 9.50002 1.09998H8.90002V0.499976Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$33 = [\n \"color\"\n];\nvar MagnifyingGlassIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$33);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10 6.5C10 8.433 8.433 10 6.5 10C4.567 10 3 8.433 3 6.5C3 4.567 4.567 3 6.5 3C8.433 3 10 4.567 10 6.5ZM9.30884 10.0159C8.53901 10.6318 7.56251 11 6.5 11C4.01472 11 2 8.98528 2 6.5C2 4.01472 4.01472 2 6.5 2C8.98528 2 11 4.01472 11 6.5C11 7.56251 10.6318 8.53901 10.0159 9.30884L12.8536 12.1464C13.0488 12.3417 13.0488 12.6583 12.8536 12.8536C12.6583 13.0488 12.3417 13.0488 12.1464 12.8536L9.30884 10.0159Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$34 = [\n \"color\"\n];\nvar MarginIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$34);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.49988 2.00012C1.77602 2.00012 1.99988 1.77626 1.99988 1.50012C1.99988 1.22398 1.77602 1.00012 1.49988 1.00012C1.22374 1.00012 0.999878 1.22398 0.999878 1.50012C0.999878 1.77626 1.22374 2.00012 1.49988 2.00012ZM4.49988 2.00012C4.77602 2.00012 4.99988 1.77626 4.99988 1.50012C4.99988 1.22398 4.77602 1.00012 4.49988 1.00012C4.22374 1.00012 3.99988 1.22398 3.99988 1.50012C3.99988 1.77626 4.22374 2.00012 4.49988 2.00012ZM7.99988 1.50012C7.99988 1.77626 7.77602 2.00012 7.49988 2.00012C7.22374 2.00012 6.99988 1.77626 6.99988 1.50012C6.99988 1.22398 7.22374 1.00012 7.49988 1.00012C7.77602 1.00012 7.99988 1.22398 7.99988 1.50012ZM10.4999 2.00012C10.776 2.00012 10.9999 1.77626 10.9999 1.50012C10.9999 1.22398 10.776 1.00012 10.4999 1.00012C10.2237 1.00012 9.99988 1.22398 9.99988 1.50012C9.99988 1.77626 10.2237 2.00012 10.4999 2.00012ZM13.9999 1.50012C13.9999 1.77626 13.776 2.00012 13.4999 2.00012C13.2237 2.00012 12.9999 1.77626 12.9999 1.50012C12.9999 1.22398 13.2237 1.00012 13.4999 1.00012C13.776 1.00012 13.9999 1.22398 13.9999 1.50012ZM1.49988 14.0001C1.77602 14.0001 1.99988 13.7763 1.99988 13.5001C1.99988 13.224 1.77602 13.0001 1.49988 13.0001C1.22374 13.0001 0.999878 13.224 0.999878 13.5001C0.999878 13.7763 1.22374 14.0001 1.49988 14.0001ZM1.99988 10.5001C1.99988 10.7763 1.77602 11.0001 1.49988 11.0001C1.22374 11.0001 0.999878 10.7763 0.999878 10.5001C0.999878 10.224 1.22374 10.0001 1.49988 10.0001C1.77602 10.0001 1.99988 10.224 1.99988 10.5001ZM1.49988 8.00012C1.77602 8.00012 1.99988 7.77626 1.99988 7.50012C1.99988 7.22398 1.77602 7.00012 1.49988 7.00012C1.22374 7.00012 0.999878 7.22398 0.999878 7.50012C0.999878 7.77626 1.22374 8.00012 1.49988 8.00012ZM1.99988 4.50012C1.99988 4.77626 1.77602 5.00012 1.49988 5.00012C1.22374 5.00012 0.999878 4.77626 0.999878 4.50012C0.999878 4.22398 1.22374 4.00012 1.49988 4.00012C1.77602 4.00012 1.99988 4.22398 1.99988 4.50012ZM13.4999 11.0001C13.776 11.0001 13.9999 10.7763 13.9999 10.5001C13.9999 10.224 13.776 10.0001 13.4999 10.0001C13.2237 10.0001 12.9999 10.224 12.9999 10.5001C12.9999 10.7763 13.2237 11.0001 13.4999 11.0001ZM13.9999 7.50012C13.9999 7.77626 13.776 8.00012 13.4999 8.00012C13.2237 8.00012 12.9999 7.77626 12.9999 7.50012C12.9999 7.22398 13.2237 7.00012 13.4999 7.00012C13.776 7.00012 13.9999 7.22398 13.9999 7.50012ZM13.4999 5.00012C13.776 5.00012 13.9999 4.77626 13.9999 4.50012C13.9999 4.22398 13.776 4.00012 13.4999 4.00012C13.2237 4.00012 12.9999 4.22398 12.9999 4.50012C12.9999 4.77626 13.2237 5.00012 13.4999 5.00012ZM4.99988 13.5001C4.99988 13.7763 4.77602 14.0001 4.49988 14.0001C4.22374 14.0001 3.99988 13.7763 3.99988 13.5001C3.99988 13.224 4.22374 13.0001 4.49988 13.0001C4.77602 13.0001 4.99988 13.224 4.99988 13.5001ZM7.49988 14.0001C7.77602 14.0001 7.99988 13.7763 7.99988 13.5001C7.99988 13.224 7.77602 13.0001 7.49988 13.0001C7.22374 13.0001 6.99988 13.224 6.99988 13.5001C6.99988 13.7763 7.22374 14.0001 7.49988 14.0001ZM10.9999 13.5001C10.9999 13.7763 10.776 14.0001 10.4999 14.0001C10.2237 14.0001 9.99988 13.7763 9.99988 13.5001C9.99988 13.224 10.2237 13.0001 10.4999 13.0001C10.776 13.0001 10.9999 13.224 10.9999 13.5001ZM13.4999 14.0001C13.776 14.0001 13.9999 13.7763 13.9999 13.5001C13.9999 13.224 13.776 13.0001 13.4999 13.0001C13.2237 13.0001 12.9999 13.224 12.9999 13.5001C12.9999 13.7763 13.2237 14.0001 13.4999 14.0001ZM3.99988 5.00012C3.99988 4.44784 4.44759 4.00012 4.99988 4.00012H9.99988C10.5522 4.00012 10.9999 4.44784 10.9999 5.00012V10.0001C10.9999 10.5524 10.5522 11.0001 9.99988 11.0001H4.99988C4.44759 11.0001 3.99988 10.5524 3.99988 10.0001V5.00012ZM4.99988 5.00012H9.99988V10.0001H4.99988V5.00012Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$35 = [\n \"color\"\n];\nvar MaskOffIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$35);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 2H14V13H1L1 2ZM0 2C0 1.44772 0.447715 1 1 1H14C14.5523 1 15 1.44772 15 2V13C15 13.5523 14.5523 14 14 14H1C0.447715 14 0 13.5523 0 13V2ZM4.875 7.5C4.875 6.05025 6.05025 4.875 7.5 4.875C8.94975 4.875 10.125 6.05025 10.125 7.5C10.125 8.94975 8.94975 10.125 7.5 10.125C6.05025 10.125 4.875 8.94975 4.875 7.5ZM7.5 3.875C5.49797 3.875 3.875 5.49797 3.875 7.5C3.875 9.50203 5.49797 11.125 7.5 11.125C9.50203 11.125 11.125 9.50203 11.125 7.5C11.125 5.49797 9.50203 3.875 7.5 3.875Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$36 = [\n \"color\"\n];\nvar MaskOnIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$36);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 1C0.447715 1 0 1.44772 0 2V13C0 13.5523 0.447715 14 1 14H14C14.5523 14 15 13.5523 15 13V2C15 1.44772 14.5523 1 14 1H1ZM7.5 10.625C9.22589 10.625 10.625 9.22589 10.625 7.5C10.625 5.77411 9.22589 4.375 7.5 4.375C5.77411 4.375 4.375 5.77411 4.375 7.5C4.375 9.22589 5.77411 10.625 7.5 10.625Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$37 = [\n \"color\"\n];\nvar MinusIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$37);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.25 7.5C2.25 7.22386 2.47386 7 2.75 7H12.25C12.5261 7 12.75 7.22386 12.75 7.5C12.75 7.77614 12.5261 8 12.25 8H2.75C2.47386 8 2.25 7.77614 2.25 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$38 = [\n \"color\"\n];\nvar MinusCircledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$38);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.876892C3.84222 0.876892 0.877075 3.84204 0.877075 7.49972C0.877075 11.1574 3.84222 14.1226 7.49991 14.1226C11.1576 14.1226 14.1227 11.1574 14.1227 7.49972C14.1227 3.84204 11.1576 0.876892 7.49991 0.876892ZM1.82707 7.49972C1.82707 4.36671 4.36689 1.82689 7.49991 1.82689C10.6329 1.82689 13.1727 4.36671 13.1727 7.49972C13.1727 10.6327 10.6329 13.1726 7.49991 13.1726C4.36689 13.1726 1.82707 10.6327 1.82707 7.49972ZM4.50003 7C4.22389 7 4.00003 7.22386 4.00003 7.5C4.00003 7.77614 4.22389 8 4.50003 8H10.5C10.7762 8 11 7.77614 11 7.5C11 7.22386 10.7762 7 10.5 7H4.50003Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$39 = [\n \"color\"\n];\nvar MixIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$39);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.14921 3.99996C2.14921 2.97778 2.97784 2.14915 4.00002 2.14915C5.02219 2.14915 5.85083 2.97778 5.85083 3.99996C5.85083 5.02213 5.02219 5.85077 4.00002 5.85077C2.97784 5.85077 2.14921 5.02213 2.14921 3.99996ZM4.00002 1.24915C2.48079 1.24915 1.24921 2.48073 1.24921 3.99996C1.24921 5.51919 2.48079 6.75077 4.00002 6.75077C5.51925 6.75077 6.75083 5.51919 6.75083 3.99996C6.75083 2.48073 5.51925 1.24915 4.00002 1.24915ZM5.82034 11.0001L2.49998 12.8369V9.16331L5.82034 11.0001ZM2.63883 8.21159C2.17228 7.9535 1.59998 8.29093 1.59998 8.82411V13.1761C1.59998 13.7093 2.17228 14.0467 2.63883 13.7886L6.57235 11.6126C7.05389 11.3462 7.05389 10.654 6.57235 10.3876L2.63883 8.21159ZM8.30001 9.00003C8.30001 8.61343 8.61341 8.30003 9.00001 8.30003H13C13.3866 8.30003 13.7 8.61343 13.7 9.00003V13C13.7 13.3866 13.3866 13.7 13 13.7H9.00001C8.61341 13.7 8.30001 13.3866 8.30001 13V9.00003ZM9.20001 9.20003V12.8H12.8V9.20003H9.20001ZM13.4432 2.19311C13.6189 2.01737 13.6189 1.73245 13.4432 1.55671C13.2675 1.38098 12.9826 1.38098 12.8068 1.55671L11 3.36353L9.19321 1.55674C9.01748 1.381 8.73255 1.381 8.55682 1.55674C8.38108 1.73247 8.38108 2.0174 8.55682 2.19313L10.3636 3.99992L8.55682 5.80671C8.38108 5.98245 8.38108 6.26737 8.55682 6.44311C8.73255 6.61885 9.01748 6.61885 9.19321 6.44311L11 4.63632L12.8068 6.44314C12.9826 6.61887 13.2675 6.61887 13.4432 6.44314C13.6189 6.2674 13.6189 5.98247 13.4432 5.80674L11.6364 3.99992L13.4432 2.19311Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3a = [\n \"color\"\n];\nvar MixerHorizontalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3a);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.5 3C4.67157 3 4 3.67157 4 4.5C4 5.32843 4.67157 6 5.5 6C6.32843 6 7 5.32843 7 4.5C7 3.67157 6.32843 3 5.5 3ZM3 5C3.01671 5 3.03323 4.99918 3.04952 4.99758C3.28022 6.1399 4.28967 7 5.5 7C6.71033 7 7.71978 6.1399 7.95048 4.99758C7.96677 4.99918 7.98329 5 8 5H13.5C13.7761 5 14 4.77614 14 4.5C14 4.22386 13.7761 4 13.5 4H8C7.98329 4 7.96677 4.00082 7.95048 4.00242C7.71978 2.86009 6.71033 2 5.5 2C4.28967 2 3.28022 2.86009 3.04952 4.00242C3.03323 4.00082 3.01671 4 3 4H1.5C1.22386 4 1 4.22386 1 4.5C1 4.77614 1.22386 5 1.5 5H3ZM11.9505 10.9976C11.7198 12.1399 10.7103 13 9.5 13C8.28967 13 7.28022 12.1399 7.04952 10.9976C7.03323 10.9992 7.01671 11 7 11H1.5C1.22386 11 1 10.7761 1 10.5C1 10.2239 1.22386 10 1.5 10H7C7.01671 10 7.03323 10.0008 7.04952 10.0024C7.28022 8.8601 8.28967 8 9.5 8C10.7103 8 11.7198 8.8601 11.9505 10.0024C11.9668 10.0008 11.9833 10 12 10H13.5C13.7761 10 14 10.2239 14 10.5C14 10.7761 13.7761 11 13.5 11H12C11.9833 11 11.9668 10.9992 11.9505 10.9976ZM8 10.5C8 9.67157 8.67157 9 9.5 9C10.3284 9 11 9.67157 11 10.5C11 11.3284 10.3284 12 9.5 12C8.67157 12 8 11.3284 8 10.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3b = [\n \"color\"\n];\nvar MixerVerticalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3b);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 1.5C5 1.22386 4.77614 1 4.5 1C4.22386 1 4 1.22386 4 1.5L4 7C4 7.01671 4.00082 7.03323 4.00242 7.04952C2.86009 7.28022 2 8.28967 2 9.5C2 10.7103 2.86009 11.7198 4.00242 11.9505C4.00082 11.9668 4 11.9833 4 12V13.5C4 13.7761 4.22386 14 4.5 14C4.77614 14 5 13.7761 5 13.5V12C5 11.9833 4.99918 11.9668 4.99758 11.9505C6.1399 11.7198 7 10.7103 7 9.5C7 8.28967 6.1399 7.28022 4.99758 7.04952C4.99918 7.03323 5 7.01671 5 7L5 1.5ZM11 1.5C11 1.22386 10.7761 1 10.5 1C10.2239 1 10 1.22386 10 1.5V3C10 3.01671 10.0008 3.03323 10.0024 3.04952C8.8601 3.28022 8 4.28967 8 5.5C8 6.71033 8.8601 7.71978 10.0024 7.95048C10.0008 7.96677 10 7.98329 10 8V13.5C10 13.7761 10.2239 14 10.5 14C10.7761 14 11 13.7761 11 13.5V8C11 7.98329 10.9992 7.96677 10.9976 7.95048C12.1399 7.71978 13 6.71033 13 5.5C13 4.28967 12.1399 3.28022 10.9976 3.04952C10.9992 3.03323 11 3.01671 11 3V1.5ZM4.5 8C3.67157 8 3 8.67157 3 9.5C3 10.3284 3.67157 11 4.5 11C5.32843 11 6 10.3284 6 9.5C6 8.67157 5.32843 8 4.5 8ZM9 5.5C9 4.67157 9.67157 4 10.5 4C11.3284 4 12 4.67157 12 5.5C12 6.32843 11.3284 7 10.5 7C9.67157 7 9 6.32843 9 5.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3c = [\n \"color\"\n];\nvar MobileIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3c);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4 2.5C4 2.22386 4.22386 2 4.5 2H10.5C10.7761 2 11 2.22386 11 2.5V12.5C11 12.7761 10.7761 13 10.5 13H4.5C4.22386 13 4 12.7761 4 12.5V2.5ZM4.5 1C3.67157 1 3 1.67157 3 2.5V12.5C3 13.3284 3.67157 14 4.5 14H10.5C11.3284 14 12 13.3284 12 12.5V2.5C12 1.67157 11.3284 1 10.5 1H4.5ZM6 11.65C5.8067 11.65 5.65 11.8067 5.65 12C5.65 12.1933 5.8067 12.35 6 12.35H9C9.1933 12.35 9.35 12.1933 9.35 12C9.35 11.8067 9.1933 11.65 9 11.65H6Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3d = [\n \"color\"\n];\nvar ModulzLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3d);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.25925 3.16667L4.37036 5.33333V1L7.25925 3.16667ZM1 8.22222L3.88889 6.05555L1 3.88889V8.22222ZM1 14L3.88889 11.8333L1 9.66666V14ZM7.74072 8.22222L10.6296 6.05555L7.74072 3.88889V8.22222ZM14 3.16667L11.1111 5.33333V1L14 3.16667ZM11.1111 11.1111L14 8.94444L11.1111 6.77777V11.1111ZM3.88889 11.1111L1 8.94444L3.88889 6.77777V11.1111ZM4.37036 6.05555L7.25925 8.22222V3.88889L4.37036 6.05555ZM3.88889 5.33333L1 3.16667L3.88889 1V5.33333ZM7.74072 3.16667L10.6296 5.33333V1L7.74072 3.16667ZM14 8.22222L11.1111 6.05555L14 3.88889V8.22222ZM11.1111 11.8333L14 14V9.66666L11.1111 11.8333Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3e = [\n \"color\"\n];\nvar MoonIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3e);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.89998 0.499976C2.89998 0.279062 2.72089 0.0999756 2.49998 0.0999756C2.27906 0.0999756 2.09998 0.279062 2.09998 0.499976V1.09998H1.49998C1.27906 1.09998 1.09998 1.27906 1.09998 1.49998C1.09998 1.72089 1.27906 1.89998 1.49998 1.89998H2.09998V2.49998C2.09998 2.72089 2.27906 2.89998 2.49998 2.89998C2.72089 2.89998 2.89998 2.72089 2.89998 2.49998V1.89998H3.49998C3.72089 1.89998 3.89998 1.72089 3.89998 1.49998C3.89998 1.27906 3.72089 1.09998 3.49998 1.09998H2.89998V0.499976ZM5.89998 3.49998C5.89998 3.27906 5.72089 3.09998 5.49998 3.09998C5.27906 3.09998 5.09998 3.27906 5.09998 3.49998V4.09998H4.49998C4.27906 4.09998 4.09998 4.27906 4.09998 4.49998C4.09998 4.72089 4.27906 4.89998 4.49998 4.89998H5.09998V5.49998C5.09998 5.72089 5.27906 5.89998 5.49998 5.89998C5.72089 5.89998 5.89998 5.72089 5.89998 5.49998V4.89998H6.49998C6.72089 4.89998 6.89998 4.72089 6.89998 4.49998C6.89998 4.27906 6.72089 4.09998 6.49998 4.09998H5.89998V3.49998ZM1.89998 6.49998C1.89998 6.27906 1.72089 6.09998 1.49998 6.09998C1.27906 6.09998 1.09998 6.27906 1.09998 6.49998V7.09998H0.499976C0.279062 7.09998 0.0999756 7.27906 0.0999756 7.49998C0.0999756 7.72089 0.279062 7.89998 0.499976 7.89998H1.09998V8.49998C1.09998 8.72089 1.27906 8.89997 1.49998 8.89997C1.72089 8.89997 1.89998 8.72089 1.89998 8.49998V7.89998H2.49998C2.72089 7.89998 2.89998 7.72089 2.89998 7.49998C2.89998 7.27906 2.72089 7.09998 2.49998 7.09998H1.89998V6.49998ZM8.54406 0.98184L8.24618 0.941586C8.03275 0.917676 7.90692 1.1655 8.02936 1.34194C8.17013 1.54479 8.29981 1.75592 8.41754 1.97445C8.91878 2.90485 9.20322 3.96932 9.20322 5.10022C9.20322 8.37201 6.82247 11.0878 3.69887 11.6097C3.45736 11.65 3.20988 11.6772 2.96008 11.6906C2.74563 11.702 2.62729 11.9535 2.77721 12.1072C2.84551 12.1773 2.91535 12.2458 2.98667 12.3128L3.05883 12.3795L3.31883 12.6045L3.50684 12.7532L3.62796 12.8433L3.81491 12.9742L3.99079 13.089C4.11175 13.1651 4.23536 13.2375 4.36157 13.3059L4.62496 13.4412L4.88553 13.5607L5.18837 13.6828L5.43169 13.7686C5.56564 13.8128 5.70149 13.8529 5.83857 13.8885C5.94262 13.9155 6.04767 13.9401 6.15405 13.9622C6.27993 13.9883 6.40713 14.0109 6.53544 14.0298L6.85241 14.0685L7.11934 14.0892C7.24637 14.0965 7.37436 14.1002 7.50322 14.1002C11.1483 14.1002 14.1032 11.1453 14.1032 7.50023C14.1032 7.25044 14.0893 7.00389 14.0623 6.76131L14.0255 6.48407C13.991 6.26083 13.9453 6.04129 13.8891 5.82642C13.8213 5.56709 13.7382 5.31398 13.6409 5.06881L13.5279 4.80132L13.4507 4.63542L13.3766 4.48666C13.2178 4.17773 13.0353 3.88295 12.8312 3.60423L12.6782 3.40352L12.4793 3.16432L12.3157 2.98361L12.1961 2.85951L12.0355 2.70246L11.8134 2.50184L11.4925 2.24191L11.2483 2.06498L10.9562 1.87446L10.6346 1.68894L10.3073 1.52378L10.1938 1.47176L9.95488 1.3706L9.67791 1.2669L9.42566 1.1846L9.10075 1.09489L8.83599 1.03486L8.54406 0.98184ZM10.4032 5.30023C10.4032 4.27588 10.2002 3.29829 9.83244 2.40604C11.7623 3.28995 13.1032 5.23862 13.1032 7.50023C13.1032 10.593 10.596 13.1002 7.50322 13.1002C6.63646 13.1002 5.81597 12.9036 5.08355 12.5522C6.5419 12.0941 7.81081 11.2082 8.74322 10.0416C8.87963 10.2284 9.10028 10.3497 9.34928 10.3497C9.76349 10.3497 10.0993 10.0139 10.0993 9.59971C10.0993 9.24256 9.84965 8.94373 9.51535 8.86816C9.57741 8.75165 9.63653 8.63334 9.6926 8.51332C9.88358 8.63163 10.1088 8.69993 10.35 8.69993C11.0403 8.69993 11.6 8.14028 11.6 7.44993C11.6 6.75976 11.0406 6.20024 10.3505 6.19993C10.3853 5.90487 10.4032 5.60464 10.4032 5.30023Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3f = [\n \"color\"\n];\nvar MoveIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3f);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.81819 0.93179C7.64245 0.756054 7.35753 0.756054 7.18179 0.93179L5.43179 2.68179C5.25605 2.85753 5.25605 3.14245 5.43179 3.31819C5.60753 3.49392 5.89245 3.49392 6.06819 3.31819L6.99999 2.38638V5.49999C6.99999 5.77613 7.22385 5.99999 7.49999 5.99999C7.77613 5.99999 7.99999 5.77613 7.99999 5.49999V2.38638L8.93179 3.31819C9.10753 3.49392 9.39245 3.49392 9.56819 3.31819C9.74392 3.14245 9.74392 2.85753 9.56819 2.68179L7.81819 0.93179ZM7.99999 9.49999C7.99999 9.22385 7.77613 8.99999 7.49999 8.99999C7.22385 8.99999 6.99999 9.22385 6.99999 9.49999V12.6136L6.06819 11.6818C5.89245 11.5061 5.60753 11.5061 5.43179 11.6818C5.25605 11.8575 5.25605 12.1424 5.43179 12.3182L7.18179 14.0682C7.35753 14.2439 7.64245 14.2439 7.81819 14.0682L9.56819 12.3182C9.74392 12.1424 9.74392 11.8575 9.56819 11.6818C9.39245 11.5061 9.10753 11.5061 8.93179 11.6818L7.99999 12.6136V9.49999ZM8.99999 7.49999C8.99999 7.22385 9.22385 6.99999 9.49999 6.99999H12.6136L11.6818 6.06819C11.5061 5.89245 11.5061 5.60753 11.6818 5.43179C11.8575 5.25605 12.1424 5.25605 12.3182 5.43179L14.0682 7.18179C14.2439 7.35753 14.2439 7.64245 14.0682 7.81819L12.3182 9.56819C12.1424 9.74392 11.8575 9.74392 11.6818 9.56819C11.5061 9.39245 11.5061 9.10753 11.6818 8.93179L12.6136 7.99999H9.49999C9.22385 7.99999 8.99999 7.77613 8.99999 7.49999ZM3.31819 6.06819L2.38638 6.99999H5.49999C5.77613 6.99999 5.99999 7.22385 5.99999 7.49999C5.99999 7.77613 5.77613 7.99999 5.49999 7.99999H2.38638L3.31819 8.93179C3.49392 9.10753 3.49392 9.39245 3.31819 9.56819C3.14245 9.74392 2.85753 9.74392 2.68179 9.56819L0.93179 7.81819C0.756054 7.64245 0.756054 7.35753 0.93179 7.18179L2.68179 5.43179C2.85753 5.25605 3.14245 5.25605 3.31819 5.43179C3.49392 5.60753 3.49392 5.89245 3.31819 6.06819Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3g = [\n \"color\"\n];\nvar NotionLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3g);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.25781 3.11684C3.67771 3.45796 3.83523 3.43193 4.62369 3.37933L12.0571 2.93299C12.2147 2.93299 12.0836 2.77571 12.0311 2.74957L10.7965 1.85711C10.56 1.67347 10.2448 1.46315 9.64083 1.51576L2.44308 2.04074C2.18059 2.06677 2.12815 2.19801 2.2327 2.30322L3.25781 3.11684ZM3.7041 4.84917V12.6704C3.7041 13.0907 3.91415 13.248 4.38693 13.222L12.5562 12.7493C13.0292 12.7233 13.0819 12.4341 13.0819 12.0927V4.32397C13.0819 3.98306 12.9508 3.79921 12.6612 3.82545L4.12422 4.32397C3.80918 4.35044 3.7041 4.50803 3.7041 4.84917ZM11.7688 5.26872C11.8212 5.50518 11.7688 5.74142 11.5319 5.76799L11.1383 5.84641V11.6205C10.7965 11.8042 10.4814 11.9092 10.2188 11.9092C9.79835 11.9092 9.69305 11.7779 9.37812 11.3844L6.80345 7.34249V11.2532L7.61816 11.437C7.61816 11.437 7.61816 11.9092 6.96086 11.9092L5.14879 12.0143C5.09615 11.9092 5.14879 11.647 5.33259 11.5944L5.80546 11.4634V6.29276L5.1489 6.24015C5.09625 6.00369 5.22739 5.66278 5.5954 5.63631L7.53935 5.50528L10.2188 9.5998V5.97765L9.53564 5.89924C9.4832 5.61018 9.69305 5.40028 9.95576 5.37425L11.7688 5.26872ZM1.83874 1.33212L9.32557 0.780787C10.245 0.701932 10.4815 0.754753 11.0594 1.17452L13.4492 2.85424C13.8436 3.14309 13.975 3.22173 13.975 3.53661V12.7493C13.975 13.3266 13.7647 13.6681 13.0293 13.7203L4.33492 14.2454C3.78291 14.2717 3.52019 14.193 3.23111 13.8253L1.47116 11.5419C1.1558 11.1216 1.02466 10.8071 1.02466 10.4392V2.25041C1.02466 1.77825 1.23504 1.38441 1.83874 1.33212Z\",\n fill: color\n }));\n});\nvar _excluded$3h = [\n \"color\"\n];\nvar OpacityIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3h);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 1.5C4.5 4.25 3 6.5 3 9C3 11.4853 5.01472 13.5 7.5 13.5C9.98528 13.5 12 11.4853 12 9C12 6.5 10.5 4.25 7.5 1.5ZM11 9C11 7.11203 9.97315 5.27195 7.5 2.87357C5.02686 5.27195 4 7.11203 4 9C4 10.933 5.567 12.5 7.5 12.5C9.433 12.5 11 10.933 11 9Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3i = [\n \"color\"\n];\nvar OpenInNewWindowIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3i);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M12 13C12.5523 13 13 12.5523 13 12V3C13 2.44771 12.5523 2 12 2H3C2.44771 2 2 2.44771 2 3V6.5C2 6.77614 2.22386 7 2.5 7C2.77614 7 3 6.77614 3 6.5V3H12V12H8.5C8.22386 12 8 12.2239 8 12.5C8 12.7761 8.22386 13 8.5 13H12ZM9 6.5C9 6.5001 9 6.50021 9 6.50031V6.50035V9.5C9 9.77614 8.77614 10 8.5 10C8.22386 10 8 9.77614 8 9.5V7.70711L2.85355 12.8536C2.65829 13.0488 2.34171 13.0488 2.14645 12.8536C1.95118 12.6583 1.95118 12.3417 2.14645 12.1464L7.29289 7H5.5C5.22386 7 5 6.77614 5 6.5C5 6.22386 5.22386 6 5.5 6H8.5C8.56779 6 8.63244 6.01349 8.69139 6.03794C8.74949 6.06198 8.80398 6.09744 8.85143 6.14433C8.94251 6.23434 8.9992 6.35909 8.99999 6.49708L8.99999 6.49738\",\n fill: color\n }));\n});\nvar _excluded$3j = [\n \"color\"\n];\nvar OverlineIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3j);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.49985 1.10001C3.27894 1.10001 3.09985 1.27909 3.09985 1.50001C3.09985 1.72092 3.27894 1.90001 3.49985 1.90001H11.4999C11.7208 1.90001 11.8999 1.72092 11.8999 1.50001C11.8999 1.27909 11.7208 1.10001 11.4999 1.10001H3.49985ZM4.99995 4.25001C4.99995 3.97387 4.77609 3.75001 4.49995 3.75001C4.22381 3.75001 3.99995 3.97387 3.99995 4.25001V9.55001C3.99995 11.483 5.56695 13.05 7.49995 13.05C9.43295 13.05 11 11.483 11 9.55001V4.25001C11 3.97387 10.7761 3.75001 10.5 3.75001C10.2238 3.75001 9.99995 3.97387 9.99995 4.25001V9.55001C9.99995 10.9307 8.88066 12.05 7.49995 12.05C6.11924 12.05 4.99995 10.9307 4.99995 9.55001V4.25001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3k = [\n \"color\"\n];\nvar PaddingIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3k);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.85714 2H12.1429C12.6162 2 13 2.38376 13 2.85714V12.1429C13 12.6162 12.6162 13 12.1429 13H2.85714C2.38376 13 2 12.6162 2 12.1429V2.85714C2 2.38376 2.38376 2 2.85714 2ZM1 2.85714C1 1.83147 1.83147 1 2.85714 1H12.1429C13.1685 1 14 1.83147 14 2.85714V12.1429C14 13.1685 13.1685 14 12.1429 14H2.85714C1.83147 14 1 13.1685 1 12.1429V2.85714ZM7.49988 5.00012C7.77602 5.00012 7.99988 4.77626 7.99988 4.50012C7.99988 4.22398 7.77602 4.00012 7.49988 4.00012C7.22374 4.00012 6.99988 4.22398 6.99988 4.50012C6.99988 4.77626 7.22374 5.00012 7.49988 5.00012ZM4.49988 11.0001C4.77602 11.0001 4.99988 10.7763 4.99988 10.5001C4.99988 10.224 4.77602 10.0001 4.49988 10.0001C4.22374 10.0001 3.99988 10.224 3.99988 10.5001C3.99988 10.7763 4.22374 11.0001 4.49988 11.0001ZM4.99988 7.50012C4.99988 7.77626 4.77602 8.00012 4.49988 8.00012C4.22374 8.00012 3.99988 7.77626 3.99988 7.50012C3.99988 7.22398 4.22374 7.00012 4.49988 7.00012C4.77602 7.00012 4.99988 7.22398 4.99988 7.50012ZM4.49988 5.00012C4.77602 5.00012 4.99988 4.77626 4.99988 4.50012C4.99988 4.22398 4.77602 4.00012 4.49988 4.00012C4.22374 4.00012 3.99988 4.22398 3.99988 4.50012C3.99988 4.77626 4.22374 5.00012 4.49988 5.00012ZM10.9999 10.5001C10.9999 10.7763 10.776 11.0001 10.4999 11.0001C10.2237 11.0001 9.99988 10.7763 9.99988 10.5001C9.99988 10.224 10.2237 10.0001 10.4999 10.0001C10.776 10.0001 10.9999 10.224 10.9999 10.5001ZM10.4999 8.00012C10.776 8.00012 10.9999 7.77626 10.9999 7.50012C10.9999 7.22398 10.776 7.00012 10.4999 7.00012C10.2237 7.00012 9.99988 7.22398 9.99988 7.50012C9.99988 7.77626 10.2237 8.00012 10.4999 8.00012ZM10.9999 4.50012C10.9999 4.77626 10.776 5.00012 10.4999 5.00012C10.2237 5.00012 9.99988 4.77626 9.99988 4.50012C9.99988 4.22398 10.2237 4.00012 10.4999 4.00012C10.776 4.00012 10.9999 4.22398 10.9999 4.50012ZM7.49988 11.0001C7.77602 11.0001 7.99988 10.7763 7.99988 10.5001C7.99988 10.224 7.77602 10.0001 7.49988 10.0001C7.22374 10.0001 6.99988 10.224 6.99988 10.5001C6.99988 10.7763 7.22374 11.0001 7.49988 11.0001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3l = [\n \"color\"\n];\nvar PaperPlaneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3l);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.20308 1.04312C1.00481 0.954998 0.772341 1.0048 0.627577 1.16641C0.482813 1.32802 0.458794 1.56455 0.568117 1.75196L3.92115 7.50002L0.568117 13.2481C0.458794 13.4355 0.482813 13.672 0.627577 13.8336C0.772341 13.9952 1.00481 14.045 1.20308 13.9569L14.7031 7.95693C14.8836 7.87668 15 7.69762 15 7.50002C15 7.30243 14.8836 7.12337 14.7031 7.04312L1.20308 1.04312ZM4.84553 7.10002L2.21234 2.586L13.2689 7.50002L2.21234 12.414L4.84552 7.90002H9C9.22092 7.90002 9.4 7.72094 9.4 7.50002C9.4 7.27911 9.22092 7.10002 9 7.10002H4.84553Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3m = [\n \"color\"\n];\nvar PauseIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3m);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.04995 2.74998C6.04995 2.44623 5.80371 2.19998 5.49995 2.19998C5.19619 2.19998 4.94995 2.44623 4.94995 2.74998V12.25C4.94995 12.5537 5.19619 12.8 5.49995 12.8C5.80371 12.8 6.04995 12.5537 6.04995 12.25V2.74998ZM10.05 2.74998C10.05 2.44623 9.80371 2.19998 9.49995 2.19998C9.19619 2.19998 8.94995 2.44623 8.94995 2.74998V12.25C8.94995 12.5537 9.19619 12.8 9.49995 12.8C9.80371 12.8 10.05 12.5537 10.05 12.25V2.74998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3n = [\n \"color\"\n];\nvar Pencil1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3n);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.8536 1.14645C11.6583 0.951184 11.3417 0.951184 11.1465 1.14645L3.71455 8.57836C3.62459 8.66832 3.55263 8.77461 3.50251 8.89155L2.04044 12.303C1.9599 12.491 2.00189 12.709 2.14646 12.8536C2.29103 12.9981 2.50905 13.0401 2.69697 12.9596L6.10847 11.4975C6.2254 11.4474 6.3317 11.3754 6.42166 11.2855L13.8536 3.85355C14.0488 3.65829 14.0488 3.34171 13.8536 3.14645L11.8536 1.14645ZM4.42166 9.28547L11.5 2.20711L12.7929 3.5L5.71455 10.5784L4.21924 11.2192L3.78081 10.7808L4.42166 9.28547Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3o = [\n \"color\"\n];\nvar Pencil2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3o);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.1464 1.14645C12.3417 0.951184 12.6583 0.951184 12.8535 1.14645L14.8535 3.14645C15.0488 3.34171 15.0488 3.65829 14.8535 3.85355L10.9109 7.79618C10.8349 7.87218 10.7471 7.93543 10.651 7.9835L6.72359 9.94721C6.53109 10.0435 6.29861 10.0057 6.14643 9.85355C5.99425 9.70137 5.95652 9.46889 6.05277 9.27639L8.01648 5.34897C8.06455 5.25283 8.1278 5.16507 8.2038 5.08907L12.1464 1.14645ZM12.5 2.20711L8.91091 5.79618L7.87266 7.87267L8.12731 8.12732L10.2038 7.08907L13.7929 3.5L12.5 2.20711ZM9.99998 2L8.99998 3H4.9C4.47171 3 4.18056 3.00039 3.95552 3.01877C3.73631 3.03668 3.62421 3.06915 3.54601 3.10899C3.35785 3.20487 3.20487 3.35785 3.10899 3.54601C3.06915 3.62421 3.03669 3.73631 3.01878 3.95552C3.00039 4.18056 3 4.47171 3 4.9V11.1C3 11.5283 3.00039 11.8194 3.01878 12.0445C3.03669 12.2637 3.06915 12.3758 3.10899 12.454C3.20487 12.6422 3.35785 12.7951 3.54601 12.891C3.62421 12.9309 3.73631 12.9633 3.95552 12.9812C4.18056 12.9996 4.47171 13 4.9 13H11.1C11.5283 13 11.8194 12.9996 12.0445 12.9812C12.2637 12.9633 12.3758 12.9309 12.454 12.891C12.6422 12.7951 12.7951 12.6422 12.891 12.454C12.9309 12.3758 12.9633 12.2637 12.9812 12.0445C12.9996 11.8194 13 11.5283 13 11.1V6.99998L14 5.99998V11.1V11.1207C14 11.5231 14 11.8553 13.9779 12.1259C13.9549 12.407 13.9057 12.6653 13.782 12.908C13.5903 13.2843 13.2843 13.5903 12.908 13.782C12.6653 13.9057 12.407 13.9549 12.1259 13.9779C11.8553 14 11.5231 14 11.1207 14H11.1H4.9H4.87934C4.47686 14 4.14468 14 3.87409 13.9779C3.59304 13.9549 3.33469 13.9057 3.09202 13.782C2.7157 13.5903 2.40973 13.2843 2.21799 12.908C2.09434 12.6653 2.04506 12.407 2.0221 12.1259C1.99999 11.8553 1.99999 11.5231 2 11.1207V11.1206V11.1V4.9V4.87935V4.87932V4.87931C1.99999 4.47685 1.99999 4.14468 2.0221 3.87409C2.04506 3.59304 2.09434 3.33469 2.21799 3.09202C2.40973 2.71569 2.7157 2.40973 3.09202 2.21799C3.33469 2.09434 3.59304 2.04506 3.87409 2.0221C4.14468 1.99999 4.47685 1.99999 4.87932 2H4.87935H4.9H9.99998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3p = [\n \"color\"\n];\nvar PersonIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3p);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 0.875C5.49797 0.875 3.875 2.49797 3.875 4.5C3.875 6.15288 4.98124 7.54738 6.49373 7.98351C5.2997 8.12901 4.27557 8.55134 3.50407 9.31167C2.52216 10.2794 2.02502 11.72 2.02502 13.5999C2.02502 13.8623 2.23769 14.0749 2.50002 14.0749C2.76236 14.0749 2.97502 13.8623 2.97502 13.5999C2.97502 11.8799 3.42786 10.7206 4.17091 9.9883C4.91536 9.25463 6.02674 8.87499 7.49995 8.87499C8.97317 8.87499 10.0846 9.25463 10.8291 9.98831C11.5721 10.7206 12.025 11.8799 12.025 13.5999C12.025 13.8623 12.2376 14.0749 12.5 14.0749C12.7623 14.075 12.975 13.8623 12.975 13.6C12.975 11.72 12.4778 10.2794 11.4959 9.31166C10.7244 8.55135 9.70025 8.12903 8.50625 7.98352C10.0187 7.5474 11.125 6.15289 11.125 4.5C11.125 2.49797 9.50203 0.875 7.5 0.875ZM4.825 4.5C4.825 3.02264 6.02264 1.825 7.5 1.825C8.97736 1.825 10.175 3.02264 10.175 4.5C10.175 5.97736 8.97736 7.175 7.5 7.175C6.02264 7.175 4.825 5.97736 4.825 4.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3q = [\n \"color\"\n];\nvar PieChartIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.85001 7.50043C1.85001 4.37975 4.37963 1.85001 7.50001 1.85001C10.6204 1.85001 13.15 4.37975 13.15 7.50043C13.15 10.6211 10.6204 13.1509 7.50001 13.1509C4.37963 13.1509 1.85001 10.6211 1.85001 7.50043ZM7.50001 0.850006C3.82728 0.850006 0.850006 3.82753 0.850006 7.50043C0.850006 11.1733 3.82728 14.1509 7.50001 14.1509C11.1727 14.1509 14.15 11.1733 14.15 7.50043C14.15 3.82753 11.1727 0.850006 7.50001 0.850006ZM7.00001 8.00001V3.12811C7.16411 3.10954 7.33094 3.10001 7.50001 3.10001C9.93006 3.10001 11.9 5.07014 11.9 7.50043C11.9 7.66935 11.8905 7.83604 11.872 8.00001H7.00001Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3r = [\n \"color\"\n];\nvar PilcrowIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3r);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3 5.5C3 7.983 4.99169 9 7 9V12.5C7 12.7761 7.22386 13 7.5 13C7.77614 13 8 12.7761 8 12.5V9V3.1H9V12.5C9 12.7761 9.22386 13 9.5 13C9.77614 13 10 12.7761 10 12.5V3.1H11.5C11.8038 3.1 12.05 2.85376 12.05 2.55C12.05 2.24624 11.8038 2 11.5 2H9.5H8H7.5H7C4.99169 2 3 3.017 3 5.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3s = [\n \"color\"\n];\nvar PinBottomIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3s);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.5 13.95C13.7485 13.95 13.95 13.7485 13.95 13.5C13.95 13.2514 13.7485 13.05 13.5 13.05L1.49995 13.05C1.25142 13.05 1.04995 13.2514 1.04995 13.5C1.04995 13.7485 1.25142 13.95 1.49995 13.95L13.5 13.95ZM11.0681 7.5683C11.2439 7.39257 11.2439 7.10764 11.0681 6.93191C10.8924 6.75617 10.6075 6.75617 10.4317 6.93191L7.94993 9.41371L7.94993 1.49998C7.94993 1.25146 7.74846 1.04998 7.49993 1.04998C7.2514 1.04998 7.04993 1.25146 7.04993 1.49998L7.04993 9.41371L4.56813 6.93191C4.39239 6.75617 4.10746 6.75617 3.93173 6.93191C3.75599 7.10764 3.75599 7.39257 3.93173 7.5683L7.18173 10.8183C7.35746 10.994 7.64239 10.994 7.81812 10.8183L11.0681 7.5683Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3t = [\n \"color\"\n];\nvar PinLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3t);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.05005 13.5C2.05005 13.7485 2.25152 13.95 2.50005 13.95C2.74858 13.95 2.95005 13.7485 2.95005 13.5L2.95005 1.49995C2.95005 1.25142 2.74858 1.04995 2.50005 1.04995C2.25152 1.04995 2.05005 1.25142 2.05005 1.49995L2.05005 13.5ZM8.4317 11.0681C8.60743 11.2439 8.89236 11.2439 9.06809 11.0681C9.24383 10.8924 9.24383 10.6075 9.06809 10.4317L6.58629 7.94993L14.5 7.94993C14.7485 7.94993 14.95 7.74846 14.95 7.49993C14.95 7.2514 14.7485 7.04993 14.5 7.04993L6.58629 7.04993L9.06809 4.56813C9.24383 4.39239 9.24383 4.10746 9.06809 3.93173C8.89236 3.75599 8.60743 3.75599 8.4317 3.93173L5.1817 7.18173C5.00596 7.35746 5.00596 7.64239 5.1817 7.81812L8.4317 11.0681Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3u = [\n \"color\"\n];\nvar PinRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3u);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.95 1.50005C12.95 1.25152 12.7485 1.05005 12.5 1.05005C12.2514 1.05005 12.05 1.25152 12.05 1.50005L12.05 13.5C12.05 13.7486 12.2514 13.95 12.5 13.95C12.7485 13.95 12.95 13.7486 12.95 13.5L12.95 1.50005ZM6.5683 3.93188C6.39257 3.75614 6.10764 3.75614 5.93191 3.93188C5.75617 4.10761 5.75617 4.39254 5.93191 4.56827L8.41371 7.05007L0.499984 7.05007C0.251456 7.05007 0.0499847 7.25155 0.0499847 7.50007C0.0499846 7.7486 0.251457 7.95007 0.499984 7.95007L8.41371 7.95007L5.93191 10.4319C5.75617 10.6076 5.75617 10.8925 5.93191 11.0683C6.10764 11.244 6.39257 11.244 6.56831 11.0683L9.8183 7.81827C9.99404 7.64254 9.99404 7.35761 9.8183 7.18188L6.5683 3.93188Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3v = [\n \"color\"\n];\nvar PinTopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3v);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.50005 1.05005C1.25152 1.05005 1.05005 1.25152 1.05005 1.50005C1.05005 1.74858 1.25152 1.95005 1.50005 1.95005L13.5 1.95005C13.7486 1.95005 13.95 1.74858 13.95 1.50005C13.95 1.25152 13.7486 1.05005 13.5 1.05005H1.50005ZM3.93188 7.43169C3.75614 7.60743 3.75614 7.89236 3.93188 8.06809C4.10761 8.24383 4.39254 8.24383 4.56827 8.06809L7.05007 5.58629V13.5C7.05007 13.7485 7.25155 13.95 7.50007 13.95C7.7486 13.95 7.95007 13.7485 7.95007 13.5L7.95007 5.58629L10.4319 8.06809C10.6076 8.24383 10.8925 8.24383 11.0683 8.06809C11.244 7.89235 11.244 7.60743 11.0683 7.43169L7.81827 4.18169C7.64254 4.00596 7.35761 4.00596 7.18188 4.18169L3.93188 7.43169Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3w = [\n \"color\"\n];\nvar PlayIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3w);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.24182 2.32181C3.3919 2.23132 3.5784 2.22601 3.73338 2.30781L12.7334 7.05781C12.8974 7.14436 13 7.31457 13 7.5C13 7.68543 12.8974 7.85564 12.7334 7.94219L3.73338 12.6922C3.5784 12.774 3.3919 12.7687 3.24182 12.6782C3.09175 12.5877 3 12.4252 3 12.25V2.75C3 2.57476 3.09175 2.4123 3.24182 2.32181ZM4 3.57925V11.4207L11.4288 7.5L4 3.57925Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3x = [\n \"color\"\n];\nvar PlusIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3x);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8 2.75C8 2.47386 7.77614 2.25 7.5 2.25C7.22386 2.25 7 2.47386 7 2.75V7H2.75C2.47386 7 2.25 7.22386 2.25 7.5C2.25 7.77614 2.47386 8 2.75 8H7V12.25C7 12.5261 7.22386 12.75 7.5 12.75C7.77614 12.75 8 12.5261 8 12.25V8H12.25C12.5261 8 12.75 7.77614 12.75 7.5C12.75 7.22386 12.5261 7 12.25 7H8V2.75Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3y = [\n \"color\"\n];\nvar PlusCircledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.876892C3.84222 0.876892 0.877075 3.84204 0.877075 7.49972C0.877075 11.1574 3.84222 14.1226 7.49991 14.1226C11.1576 14.1226 14.1227 11.1574 14.1227 7.49972C14.1227 3.84204 11.1576 0.876892 7.49991 0.876892ZM1.82707 7.49972C1.82707 4.36671 4.36689 1.82689 7.49991 1.82689C10.6329 1.82689 13.1727 4.36671 13.1727 7.49972C13.1727 10.6327 10.6329 13.1726 7.49991 13.1726C4.36689 13.1726 1.82707 10.6327 1.82707 7.49972ZM7.50003 4C7.77617 4 8.00003 4.22386 8.00003 4.5V7H10.5C10.7762 7 11 7.22386 11 7.5C11 7.77614 10.7762 8 10.5 8H8.00003V10.5C8.00003 10.7761 7.77617 11 7.50003 11C7.22389 11 7.00003 10.7761 7.00003 10.5V8H4.50003C4.22389 8 4.00003 7.77614 4.00003 7.5C4.00003 7.22386 4.22389 7 4.50003 7H7.00003V4.5C7.00003 4.22386 7.22389 4 7.50003 4Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3z = [\n \"color\"\n];\nvar QuestionMarkIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.07505 4.10001C5.07505 2.91103 6.25727 1.92502 7.50005 1.92502C8.74283 1.92502 9.92505 2.91103 9.92505 4.10001C9.92505 5.19861 9.36782 5.71436 8.61854 6.37884L8.58757 6.4063C7.84481 7.06467 6.92505 7.87995 6.92505 9.5C6.92505 9.81757 7.18248 10.075 7.50005 10.075C7.81761 10.075 8.07505 9.81757 8.07505 9.5C8.07505 8.41517 8.62945 7.90623 9.38156 7.23925L9.40238 7.22079C10.1496 6.55829 11.075 5.73775 11.075 4.10001C11.075 2.12757 9.21869 0.775024 7.50005 0.775024C5.7814 0.775024 3.92505 2.12757 3.92505 4.10001C3.92505 4.41758 4.18249 4.67501 4.50005 4.67501C4.81761 4.67501 5.07505 4.41758 5.07505 4.10001ZM7.50005 13.3575C7.9833 13.3575 8.37505 12.9657 8.37505 12.4825C8.37505 11.9992 7.9833 11.6075 7.50005 11.6075C7.0168 11.6075 6.62505 11.9992 6.62505 12.4825C6.62505 12.9657 7.0168 13.3575 7.50005 13.3575Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3A = [\n \"color\"\n];\nvar QuestionMarkCircledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3A);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.49972C0.877075 3.84204 3.84222 0.876892 7.49991 0.876892C11.1576 0.876892 14.1227 3.84204 14.1227 7.49972C14.1227 11.1574 11.1576 14.1226 7.49991 14.1226C3.84222 14.1226 0.877075 11.1574 0.877075 7.49972ZM7.49991 1.82689C4.36689 1.82689 1.82708 4.36671 1.82708 7.49972C1.82708 10.6327 4.36689 13.1726 7.49991 13.1726C10.6329 13.1726 13.1727 10.6327 13.1727 7.49972C13.1727 4.36671 10.6329 1.82689 7.49991 1.82689ZM8.24993 10.5C8.24993 10.9142 7.91414 11.25 7.49993 11.25C7.08571 11.25 6.74993 10.9142 6.74993 10.5C6.74993 10.0858 7.08571 9.75 7.49993 9.75C7.91414 9.75 8.24993 10.0858 8.24993 10.5ZM6.05003 6.25C6.05003 5.57211 6.63511 4.925 7.50003 4.925C8.36496 4.925 8.95003 5.57211 8.95003 6.25C8.95003 6.74118 8.68002 6.99212 8.21447 7.27494C8.16251 7.30651 8.10258 7.34131 8.03847 7.37854L8.03841 7.37858C7.85521 7.48497 7.63788 7.61119 7.47449 7.73849C7.23214 7.92732 6.95003 8.23198 6.95003 8.7C6.95004 9.00376 7.19628 9.25 7.50004 9.25C7.8024 9.25 8.04778 9.00601 8.05002 8.70417L8.05056 8.7033C8.05924 8.6896 8.08493 8.65735 8.15058 8.6062C8.25207 8.52712 8.36508 8.46163 8.51567 8.37436L8.51571 8.37433C8.59422 8.32883 8.68296 8.27741 8.78559 8.21506C9.32004 7.89038 10.05 7.35382 10.05 6.25C10.05 4.92789 8.93511 3.825 7.50003 3.825C6.06496 3.825 4.95003 4.92789 4.95003 6.25C4.95003 6.55376 5.19628 6.8 5.50003 6.8C5.80379 6.8 6.05003 6.55376 6.05003 6.25Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3B = [\n \"color\"\n];\nvar QuoteIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3B);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9.42503 3.44136C10.0561 3.23654 10.7837 3.2402 11.3792 3.54623C12.7532 4.25224 13.3477 6.07191 12.7946 8C12.5465 8.8649 12.1102 9.70472 11.1861 10.5524C10.262 11.4 8.98034 11.9 8.38571 11.9C8.17269 11.9 8 11.7321 8 11.525C8 11.3179 8.17644 11.15 8.38571 11.15C9.06497 11.15 9.67189 10.7804 10.3906 10.236C10.9406 9.8193 11.3701 9.28633 11.608 8.82191C12.0628 7.93367 12.0782 6.68174 11.3433 6.34901C10.9904 6.73455 10.5295 6.95946 9.97725 6.95946C8.7773 6.95946 8.0701 5.99412 8.10051 5.12009C8.12957 4.28474 8.66032 3.68954 9.42503 3.44136ZM3.42503 3.44136C4.05614 3.23654 4.78366 3.2402 5.37923 3.54623C6.7532 4.25224 7.34766 6.07191 6.79462 8C6.54654 8.8649 6.11019 9.70472 5.1861 10.5524C4.26201 11.4 2.98034 11.9 2.38571 11.9C2.17269 11.9 2 11.7321 2 11.525C2 11.3179 2.17644 11.15 2.38571 11.15C3.06497 11.15 3.67189 10.7804 4.39058 10.236C4.94065 9.8193 5.37014 9.28633 5.60797 8.82191C6.06282 7.93367 6.07821 6.68174 5.3433 6.34901C4.99037 6.73455 4.52948 6.95946 3.97725 6.95946C2.7773 6.95946 2.0701 5.99412 2.10051 5.12009C2.12957 4.28474 2.66032 3.68954 3.42503 3.44136Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3C = [\n \"color\"\n];\nvar RadiobuttonIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3C);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49985 0.877045C3.84216 0.877045 0.877014 3.84219 0.877014 7.49988C0.877014 11.1575 3.84216 14.1227 7.49985 14.1227C11.1575 14.1227 14.1227 11.1575 14.1227 7.49988C14.1227 3.84219 11.1575 0.877045 7.49985 0.877045ZM1.82701 7.49988C1.82701 4.36686 4.36683 1.82704 7.49985 1.82704C10.6328 1.82704 13.1727 4.36686 13.1727 7.49988C13.1727 10.6329 10.6328 13.1727 7.49985 13.1727C4.36683 13.1727 1.82701 10.6329 1.82701 7.49988ZM7.49999 9.49999C8.60456 9.49999 9.49999 8.60456 9.49999 7.49999C9.49999 6.39542 8.60456 5.49999 7.49999 5.49999C6.39542 5.49999 5.49999 6.39542 5.49999 7.49999C5.49999 8.60456 6.39542 9.49999 7.49999 9.49999Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3D = [\n \"color\"\n];\nvar ReaderIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3D);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.2 1H4.17741H4.1774C3.86936 0.999988 3.60368 0.999978 3.38609 1.02067C3.15576 1.04257 2.92825 1.09113 2.71625 1.22104C2.51442 1.34472 2.34473 1.51442 2.22104 1.71625C2.09113 1.92825 2.04257 2.15576 2.02067 2.38609C1.99998 2.60367 1.99999 2.86935 2 3.17738V3.1774V3.2V11.8V11.8226V11.8226C1.99999 12.1307 1.99998 12.3963 2.02067 12.6139C2.04257 12.8442 2.09113 13.0717 2.22104 13.2837C2.34473 13.4856 2.51442 13.6553 2.71625 13.779C2.92825 13.9089 3.15576 13.9574 3.38609 13.9793C3.60368 14 3.86937 14 4.17741 14H4.2H10.8H10.8226C11.1306 14 11.3963 14 11.6139 13.9793C11.8442 13.9574 12.0717 13.9089 12.2837 13.779C12.4856 13.6553 12.6553 13.4856 12.779 13.2837C12.9089 13.0717 12.9574 12.8442 12.9793 12.6139C13 12.3963 13 12.1306 13 11.8226V11.8V3.2V3.17741C13 2.86936 13 2.60368 12.9793 2.38609C12.9574 2.15576 12.9089 1.92825 12.779 1.71625C12.6553 1.51442 12.4856 1.34472 12.2837 1.22104C12.0717 1.09113 11.8442 1.04257 11.6139 1.02067C11.3963 0.999978 11.1306 0.999988 10.8226 1H10.8H4.2ZM3.23875 2.07368C3.26722 2.05623 3.32362 2.03112 3.48075 2.01618C3.64532 2.00053 3.86298 2 4.2 2H10.8C11.137 2 11.3547 2.00053 11.5193 2.01618C11.6764 2.03112 11.7328 2.05623 11.7613 2.07368C11.8285 2.11491 11.8851 2.17147 11.9263 2.23875C11.9438 2.26722 11.9689 2.32362 11.9838 2.48075C11.9995 2.64532 12 2.86298 12 3.2V11.8C12 12.137 11.9995 12.3547 11.9838 12.5193C11.9689 12.6764 11.9438 12.7328 11.9263 12.7613C11.8851 12.8285 11.8285 12.8851 11.7613 12.9263C11.7328 12.9438 11.6764 12.9689 11.5193 12.9838C11.3547 12.9995 11.137 13 10.8 13H4.2C3.86298 13 3.64532 12.9995 3.48075 12.9838C3.32362 12.9689 3.26722 12.9438 3.23875 12.9263C3.17147 12.8851 3.11491 12.8285 3.07368 12.7613C3.05624 12.7328 3.03112 12.6764 3.01618 12.5193C3.00053 12.3547 3 12.137 3 11.8V3.2C3 2.86298 3.00053 2.64532 3.01618 2.48075C3.03112 2.32362 3.05624 2.26722 3.07368 2.23875C3.11491 2.17147 3.17147 2.11491 3.23875 2.07368ZM5 10C4.72386 10 4.5 10.2239 4.5 10.5C4.5 10.7761 4.72386 11 5 11H8C8.27614 11 8.5 10.7761 8.5 10.5C8.5 10.2239 8.27614 10 8 10H5ZM4.5 7.5C4.5 7.22386 4.72386 7 5 7H10C10.2761 7 10.5 7.22386 10.5 7.5C10.5 7.77614 10.2761 8 10 8H5C4.72386 8 4.5 7.77614 4.5 7.5ZM5 4C4.72386 4 4.5 4.22386 4.5 4.5C4.5 4.77614 4.72386 5 5 5H10C10.2761 5 10.5 4.77614 10.5 4.5C10.5 4.22386 10.2761 4 10 4H5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3E = [\n \"color\"\n];\nvar ReloadIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3E);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.84998 7.49998C1.84998 4.66458 4.05979 1.84998 7.49998 1.84998C10.2783 1.84998 11.6515 3.9064 12.2367 5H10.5C10.2239 5 10 5.22386 10 5.5C10 5.77614 10.2239 6 10.5 6H13.5C13.7761 6 14 5.77614 14 5.5V2.5C14 2.22386 13.7761 2 13.5 2C13.2239 2 13 2.22386 13 2.5V4.31318C12.2955 3.07126 10.6659 0.849976 7.49998 0.849976C3.43716 0.849976 0.849976 4.18537 0.849976 7.49998C0.849976 10.8146 3.43716 14.15 7.49998 14.15C9.44382 14.15 11.0622 13.3808 12.2145 12.2084C12.8315 11.5806 13.3133 10.839 13.6418 10.0407C13.7469 9.78536 13.6251 9.49315 13.3698 9.38806C13.1144 9.28296 12.8222 9.40478 12.7171 9.66014C12.4363 10.3425 12.0251 10.9745 11.5013 11.5074C10.5295 12.4963 9.16504 13.15 7.49998 13.15C4.05979 13.15 1.84998 10.3354 1.84998 7.49998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3F = [\n \"color\"\n];\nvar ResetIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3F);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.85355 2.14645C5.04882 2.34171 5.04882 2.65829 4.85355 2.85355L3.70711 4H9C11.4853 4 13.5 6.01472 13.5 8.5C13.5 10.9853 11.4853 13 9 13H5C4.72386 13 4.5 12.7761 4.5 12.5C4.5 12.2239 4.72386 12 5 12H9C10.933 12 12.5 10.433 12.5 8.5C12.5 6.567 10.933 5 9 5H3.70711L4.85355 6.14645C5.04882 6.34171 5.04882 6.65829 4.85355 6.85355C4.65829 7.04882 4.34171 7.04882 4.14645 6.85355L2.14645 4.85355C1.95118 4.65829 1.95118 4.34171 2.14645 4.14645L4.14645 2.14645C4.34171 1.95118 4.65829 1.95118 4.85355 2.14645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3G = [\n \"color\"\n];\nvar ResumeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3G);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.04995 2.74995C3.04995 2.44619 2.80371 2.19995 2.49995 2.19995C2.19619 2.19995 1.94995 2.44619 1.94995 2.74995V12.25C1.94995 12.5537 2.19619 12.8 2.49995 12.8C2.80371 12.8 3.04995 12.5537 3.04995 12.25V2.74995ZM5.73333 2.30776C5.57835 2.22596 5.39185 2.23127 5.24177 2.32176C5.0917 2.41225 4.99995 2.57471 4.99995 2.74995V12.25C4.99995 12.4252 5.0917 12.5877 5.24177 12.6781C5.39185 12.7686 5.57835 12.7739 5.73333 12.6921L14.7333 7.94214C14.8973 7.85559 15 7.68539 15 7.49995C15 7.31452 14.8973 7.14431 14.7333 7.05776L5.73333 2.30776ZM5.99995 11.4207V3.5792L13.4287 7.49995L5.99995 11.4207Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3H = [\n \"color\"\n];\nvar RocketIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3H);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.85357 3.85355L7.65355 3.05353C8.2981 2.40901 9.42858 1.96172 10.552 1.80125C11.1056 1.72217 11.6291 1.71725 12.0564 1.78124C12.4987 1.84748 12.7698 1.97696 12.8965 2.10357C13.0231 2.23018 13.1526 2.50125 13.2188 2.94357C13.2828 3.37086 13.2779 3.89439 13.1988 4.44801C13.0383 5.57139 12.591 6.70188 11.9464 7.34645L7.49999 11.7929L6.35354 10.6465C6.15827 10.4512 5.84169 10.4512 5.64643 10.6465C5.45117 10.8417 5.45117 11.1583 5.64643 11.3536L7.14644 12.8536C7.34171 13.0488 7.65829 13.0488 7.85355 12.8536L8.40073 12.3064L9.57124 14.2572C9.65046 14.3893 9.78608 14.4774 9.9389 14.4963C10.0917 14.5151 10.2447 14.4624 10.3535 14.3536L12.3535 12.3536C12.4648 12.2423 12.5172 12.0851 12.495 11.9293L12.0303 8.67679L12.6536 8.05355C13.509 7.19808 14.0117 5.82855 14.1887 4.58943C14.2784 3.9618 14.2891 3.33847 14.2078 2.79546C14.1287 2.26748 13.9519 1.74482 13.6035 1.39645C13.2552 1.04809 12.7325 0.871332 12.2045 0.792264C11.6615 0.710945 11.0382 0.721644 10.4105 0.8113C9.17143 0.988306 7.80189 1.491 6.94644 2.34642L6.32322 2.96968L3.07071 2.50504C2.91492 2.48278 2.75773 2.53517 2.64645 2.64646L0.646451 4.64645C0.537579 4.75533 0.484938 4.90829 0.50375 5.0611C0.522563 5.21391 0.61073 5.34954 0.742757 5.42876L2.69364 6.59928L2.14646 7.14645C2.0527 7.24022 2.00002 7.3674 2.00002 7.50001C2.00002 7.63261 2.0527 7.75979 2.14646 7.85356L3.64647 9.35356C3.84173 9.54883 4.15831 9.54883 4.35357 9.35356C4.54884 9.1583 4.54884 8.84172 4.35357 8.64646L3.20712 7.50001L3.85357 6.85356L6.85357 3.85355ZM10.0993 13.1936L9.12959 11.5775L11.1464 9.56067L11.4697 11.8232L10.0993 13.1936ZM3.42251 5.87041L5.43935 3.85356L3.17678 3.53034L1.80638 4.90074L3.42251 5.87041ZM2.35356 10.3535C2.54882 10.1583 2.54882 9.8417 2.35356 9.64644C2.1583 9.45118 1.84171 9.45118 1.64645 9.64644L0.646451 10.6464C0.451188 10.8417 0.451188 11.1583 0.646451 11.3535C0.841713 11.5488 1.1583 11.5488 1.35356 11.3535L2.35356 10.3535ZM3.85358 11.8536C4.04884 11.6583 4.04885 11.3417 3.85359 11.1465C3.65833 10.9512 3.34175 10.9512 3.14648 11.1465L1.14645 13.1464C0.95119 13.3417 0.951187 13.6583 1.14645 13.8535C1.34171 14.0488 1.65829 14.0488 1.85355 13.8536L3.85358 11.8536ZM5.35356 13.3535C5.54882 13.1583 5.54882 12.8417 5.35356 12.6464C5.1583 12.4512 4.84171 12.4512 4.64645 12.6464L3.64645 13.6464C3.45119 13.8417 3.45119 14.1583 3.64645 14.3535C3.84171 14.5488 4.1583 14.5488 4.35356 14.3535L5.35356 13.3535ZM9.49997 6.74881C10.1897 6.74881 10.7488 6.1897 10.7488 5.5C10.7488 4.8103 10.1897 4.25118 9.49997 4.25118C8.81026 4.25118 8.25115 4.8103 8.25115 5.5C8.25115 6.1897 8.81026 6.74881 9.49997 6.74881Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3I = [\n \"color\"\n];\nvar RotateCounterClockwiseIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3I);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.59664 2.93628C7.76085 3.06401 8.00012 2.94698 8.00012 2.73895V1.99998C9.98143 2 11.1848 2.3637 11.9105 3.08945C12.6363 3.81522 13 5.0186 13 6.99998C13 7.27613 13.2239 7.49998 13.5 7.49998C13.7761 7.49998 14 7.27613 14 6.99998C14 4.9438 13.6325 3.39719 12.6176 2.38234C11.6028 1.36752 10.0562 0.999999 8.00012 0.999984V0.261266C8.00012 0.0532293 7.76085 -0.0637944 7.59664 0.063928L6.00384 1.30277C5.87516 1.40286 5.87516 1.59735 6.00384 1.69744L7.59664 2.93628ZM9.5 5H2.5C2.22386 5 2 5.22386 2 5.5V12.5C2 12.7761 2.22386 13 2.5 13H9.5C9.77614 13 10 12.7761 10 12.5V5.5C10 5.22386 9.77614 5 9.5 5ZM2.5 4C1.67157 4 1 4.67157 1 5.5V12.5C1 13.3284 1.67157 14 2.5 14H9.5C10.3284 14 11 13.3284 11 12.5V5.5C11 4.67157 10.3284 4 9.5 4H2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3J = [\n \"color\"\n];\nvar RowSpacingIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3J);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.81832 0.68179C7.64258 0.506054 7.35766 0.506054 7.18192 0.68179L5.18192 2.68179C5.00619 2.85753 5.00619 3.14245 5.18192 3.31819C5.35766 3.49392 5.64258 3.49392 5.81832 3.31819L7.05012 2.08638L7.05012 5.50023C7.05012 5.74876 7.25159 5.95023 7.50012 5.95023C7.74865 5.95023 7.95012 5.74876 7.95012 5.50023L7.95012 2.08638L9.18192 3.31819C9.35766 3.49392 9.64258 3.49392 9.81832 3.31819C9.99406 3.14245 9.99406 2.85753 9.81832 2.68179L7.81832 0.68179ZM7.95012 12.9136V9.50023C7.95012 9.2517 7.74865 9.05023 7.50012 9.05023C7.25159 9.05023 7.05012 9.2517 7.05012 9.50023V12.9136L5.81832 11.6818C5.64258 11.5061 5.35766 11.5061 5.18192 11.6818C5.00619 11.8575 5.00619 12.1424 5.18192 12.3182L7.18192 14.3182C7.26632 14.4026 7.38077 14.45 7.50012 14.45C7.61947 14.45 7.73393 14.4026 7.81832 14.3182L9.81832 12.3182C9.99406 12.1424 9.99406 11.8575 9.81832 11.6818C9.64258 11.5061 9.35766 11.5061 9.18192 11.6818L7.95012 12.9136ZM1.49994 7.00017C1.2238 7.00017 0.999939 7.22403 0.999939 7.50017C0.999939 7.77631 1.2238 8.00017 1.49994 8.00017L13.4999 8.00017C13.7761 8.00017 13.9999 7.77631 13.9999 7.50017C13.9999 7.22403 13.7761 7.00017 13.4999 7.00017L1.49994 7.00017Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3K = [\n \"color\"\n];\nvar RowsIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3K);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14 12.85L1 12.85L1 14.15L14 14.15L14 12.85ZM14 8.85002L1 8.85002L1 10.15L14 10.15L14 8.85002ZM1 4.85003L14 4.85003L14 6.15003L1 6.15002L1 4.85003ZM14 0.850025L1 0.850025L1 2.15002L14 2.15002L14 0.850025Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3L = [\n \"color\"\n];\nvar RulerHorizontalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3L);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.5 4C0.223858 4 0 4.22386 0 4.5V10.5C0 10.7761 0.223858 11 0.5 11H14.5C14.7761 11 15 10.7761 15 10.5V4.5C15 4.22386 14.7761 4 14.5 4H0.5ZM1 10V5H2.075V7.5C2.075 7.73472 2.26528 7.925 2.5 7.925C2.73472 7.925 2.925 7.73472 2.925 7.5V5H4.075V6.5C4.075 6.73472 4.26528 6.925 4.5 6.925C4.73472 6.925 4.925 6.73472 4.925 6.5V5H6.075V6.5C6.075 6.73472 6.26528 6.925 6.5 6.925C6.73472 6.925 6.925 6.73472 6.925 6.5V5H8.075V7.5C8.075 7.73472 8.26528 7.925 8.5 7.925C8.73472 7.925 8.925 7.73472 8.925 7.5V5H10.075V6.5C10.075 6.73472 10.2653 6.925 10.5 6.925C10.7347 6.925 10.925 6.73472 10.925 6.5V5H12.075V6.5C12.075 6.73472 12.2653 6.925 12.5 6.925C12.7347 6.925 12.925 6.73472 12.925 6.5V5H14V10H1Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3M = [\n \"color\"\n];\nvar RulerSquareIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3M);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.5 0C0.223858 0 0 0.223858 0 0.5V14.5C0 14.7761 0.223858 15 0.5 15H4.5C4.77614 15 5 14.7761 5 14.5V5H14.5C14.7761 5 15 4.77614 15 4.5V0.5C15 0.223858 14.7761 0 14.5 0H0.5ZM1 4.07505L1 1H4.07502C4.07502 1 4.07502 1 4.07502 1L4.07505 4.07507L1 4.07505ZM0.999997 4.92505L1 14H4V12.925H2.75002C2.5153 12.925 2.32502 12.7348 2.32502 12.5C2.32502 12.2653 2.5153 12.075 2.75002 12.075H4V10.925H2.25002C2.0153 10.925 1.82502 10.7347 1.82502 10.5C1.82502 10.2653 2.0153 10.075 2.25002 10.075H4V8.92504L2.75002 8.92502C2.5153 8.92502 2.32502 8.73474 2.32502 8.50002C2.32503 8.26529 2.51531 8.07502 2.75003 8.07502L4 8.07504V6.92502L2.74999 6.925C2.51527 6.925 2.325 6.73472 2.325 6.5C2.325 6.26528 2.51529 6.075 2.75001 6.075L4 6.07502V4.92507L0.999997 4.92505ZM4.92505 4H6.075V2.75006C6.075 2.51534 6.26528 2.32506 6.5 2.32506C6.73472 2.32506 6.925 2.51534 6.925 2.75006V4H8.07502V2.75005C8.07502 2.51533 8.2653 2.32505 8.50002 2.32505C8.73474 2.32505 8.92502 2.51533 8.92502 2.75005V4H10.0751V2.25005C10.0751 2.01533 10.2653 1.82505 10.5001 1.82505C10.7348 1.82505 10.9251 2.01533 10.9251 2.25005V4H12.0751V2.75005C12.0751 2.51533 12.2654 2.32505 12.5001 2.32505C12.7348 2.32505 12.9251 2.51533 12.9251 2.75005V4H14V1H4.92502L4.92505 4Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3N = [\n \"color\"\n];\nvar ScissorsIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3N);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.949988 4.48455C0.949988 5.34059 1.64395 6.03455 2.49999 6.03455C3.35603 6.03455 4.04999 5.34059 4.04999 4.48455C4.04999 3.6285 3.35603 2.93455 2.49999 2.93455C1.64395 2.93455 0.949988 3.6285 0.949988 4.48455ZM2.49999 6.93455C1.14689 6.93455 0.0499878 5.83764 0.0499878 4.48455C0.0499878 3.13145 1.14689 2.03455 2.49999 2.03455C3.85309 2.03455 4.94999 3.13145 4.94999 4.48455C4.94999 4.80813 4.88726 5.11707 4.77329 5.39985L5.73655 6.04413C5.72943 6.06656 5.72269 6.08914 5.71635 6.11188L5.56288 6.66186L5.21005 6.89773L4.21554 6.23366C3.77357 6.6672 3.168 6.93455 2.49999 6.93455ZM0.949991 10.5C0.949991 9.64394 1.64395 8.94998 2.49999 8.94998C3.35603 8.94998 4.04999 9.64394 4.04999 10.5C4.04999 11.356 3.35603 12.05 2.49999 12.05C1.64395 12.05 0.949991 11.356 0.949991 10.5ZM2.49999 8.04998C1.14689 8.04998 0.0499908 9.14688 0.0499908 10.5C0.0499908 11.8531 1.14689 12.95 2.49999 12.95C3.85309 12.95 4.94999 11.8531 4.94999 10.5C4.94999 10.1803 4.88877 9.87497 4.77743 9.595L15 2.75737L14.0486 2.85737C12.7077 2.9983 11.4091 3.40895 10.231 4.06461L7.15646 5.77564C6.92307 5.90553 6.75134 6.12339 6.67955 6.38066L6.42653 7.28737L4.22437 8.75957C3.78166 8.32091 3.17246 8.04998 2.49999 8.04998ZM7.14435 9.2149L7.15646 9.22176L10.231 10.9328C11.4091 11.5884 12.7077 11.9991 14.0486 12.14L15 12.24L8.81072 8.1003L7.14435 9.2149Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3O = [\n \"color\"\n];\nvar SectionIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3O);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 1.5C2 1.77614 1.77614 2 1.5 2C1.22386 2 1 1.77614 1 1.5C1 1.22386 1.22386 1 1.5 1C1.77614 1 2 1.22386 2 1.5ZM2 5L2 10H13V5H2ZM2 4C1.44772 4 1 4.44772 1 5V10C1 10.5523 1.44772 11 2 11H13C13.5523 11 14 10.5523 14 10V5C14 4.44772 13.5523 4 13 4H2ZM1.5 14C1.77614 14 2 13.7761 2 13.5C2 13.2239 1.77614 13 1.5 13C1.22386 13 1 13.2239 1 13.5C1 13.7761 1.22386 14 1.5 14ZM4 1.5C4 1.77614 3.77614 2 3.5 2C3.22386 2 3 1.77614 3 1.5C3 1.22386 3.22386 1 3.5 1C3.77614 1 4 1.22386 4 1.5ZM3.5 14C3.77614 14 4 13.7761 4 13.5C4 13.2239 3.77614 13 3.5 13C3.22386 13 3 13.2239 3 13.5C3 13.7761 3.22386 14 3.5 14ZM6 1.5C6 1.77614 5.77614 2 5.5 2C5.22386 2 5 1.77614 5 1.5C5 1.22386 5.22386 1 5.5 1C5.77614 1 6 1.22386 6 1.5ZM5.5 14C5.77614 14 6 13.7761 6 13.5C6 13.2239 5.77614 13 5.5 13C5.22386 13 5 13.2239 5 13.5C5 13.7761 5.22386 14 5.5 14ZM8 1.5C8 1.77614 7.77614 2 7.5 2C7.22386 2 7 1.77614 7 1.5C7 1.22386 7.22386 1 7.5 1C7.77614 1 8 1.22386 8 1.5ZM7.5 14C7.77614 14 8 13.7761 8 13.5C8 13.2239 7.77614 13 7.5 13C7.22386 13 7 13.2239 7 13.5C7 13.7761 7.22386 14 7.5 14ZM10 1.5C10 1.77614 9.77614 2 9.5 2C9.22386 2 9 1.77614 9 1.5C9 1.22386 9.22386 1 9.5 1C9.77614 1 10 1.22386 10 1.5ZM9.5 14C9.77614 14 10 13.7761 10 13.5C10 13.2239 9.77614 13 9.5 13C9.22386 13 9 13.2239 9 13.5C9 13.7761 9.22386 14 9.5 14ZM12 1.5C12 1.77614 11.7761 2 11.5 2C11.2239 2 11 1.77614 11 1.5C11 1.22386 11.2239 1 11.5 1C11.7761 1 12 1.22386 12 1.5ZM11.5 14C11.7761 14 12 13.7761 12 13.5C12 13.2239 11.7761 13 11.5 13C11.2239 13 11 13.2239 11 13.5C11 13.7761 11.2239 14 11.5 14ZM14 1.5C14 1.77614 13.7761 2 13.5 2C13.2239 2 13 1.77614 13 1.5C13 1.22386 13.2239 1 13.5 1C13.7761 1 14 1.22386 14 1.5ZM13.5 14C13.7761 14 14 13.7761 14 13.5C14 13.2239 13.7761 13 13.5 13C13.2239 13 13 13.2239 13 13.5C13 13.7761 13.2239 14 13.5 14Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3P = [\n \"color\"\n];\nvar SewingPinIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3P);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6 3.5C6 2.67157 6.67157 2 7.5 2C8.32843 2 9 2.67157 9 3.5C9 4.32843 8.32843 5 7.5 5C6.67157 5 6 4.32843 6 3.5ZM8 5.94999C9.14112 5.71836 10 4.70948 10 3.5C10 2.11929 8.88071 1 7.5 1C6.11929 1 5 2.11929 5 3.5C5 4.70948 5.85888 5.71836 7 5.94999V13.5C7 13.7761 7.22386 14 7.5 14C7.77614 14 8 13.7761 8 13.5V5.94999Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3Q = [\n \"color\"\n];\nvar SewingPinFilledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3Q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10 3.5C10 4.70948 9.14112 5.71836 8 5.94999V13.5C8 13.7761 7.77614 14 7.5 14C7.22386 14 7 13.7761 7 13.5V5.94999C5.85888 5.71836 5 4.70948 5 3.5C5 2.11929 6.11929 1 7.5 1C8.88071 1 10 2.11929 10 3.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3R = [\n \"color\"\n];\nvar ShadowIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3R);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".05\",\n d: \"M6.78296 13.376C8.73904 9.95284 8.73904 5.04719 6.78296 1.62405L7.21708 1.37598C9.261 4.95283 9.261 10.0472 7.21708 13.624L6.78296 13.376Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".1\",\n d: \"M7.28204 13.4775C9.23929 9.99523 9.23929 5.00475 7.28204 1.52248L7.71791 1.2775C9.76067 4.9119 9.76067 10.0881 7.71791 13.7225L7.28204 13.4775Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".15\",\n d: \"M7.82098 13.5064C9.72502 9.99523 9.72636 5.01411 7.82492 1.50084L8.26465 1.26285C10.2465 4.92466 10.2451 10.085 8.26052 13.7448L7.82098 13.5064Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".2\",\n d: \"M8.41284 13.429C10.1952 9.92842 10.1957 5.07537 8.41435 1.57402L8.85999 1.34729C10.7139 4.99113 10.7133 10.0128 8.85841 13.6559L8.41284 13.429Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".25\",\n d: \"M9.02441 13.2956C10.6567 9.8379 10.6586 5.17715 9.03005 1.71656L9.48245 1.50366C11.1745 5.09919 11.1726 9.91629 9.47657 13.5091L9.02441 13.2956Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".3\",\n d: \"M9.66809 13.0655C11.1097 9.69572 11.1107 5.3121 9.67088 1.94095L10.1307 1.74457C11.6241 5.24121 11.6231 9.76683 10.1278 13.2622L9.66809 13.0655Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".35\",\n d: \"M10.331 12.7456C11.5551 9.52073 11.5564 5.49103 10.3347 2.26444L10.8024 2.0874C12.0672 5.42815 12.0659 9.58394 10.7985 12.9231L10.331 12.7456Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".4\",\n d: \"M11.0155 12.2986C11.9938 9.29744 11.9948 5.71296 11.0184 2.71067L11.4939 2.55603C12.503 5.6589 12.502 9.35178 11.4909 12.4535L11.0155 12.2986Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".45\",\n d: \"M11.7214 11.668C12.4254 9.01303 12.4262 5.99691 11.7237 3.34116L12.2071 3.21329C12.9318 5.95292 12.931 9.05728 12.2047 11.7961L11.7214 11.668Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".5\",\n d: \"M12.4432 10.752C12.8524 8.63762 12.8523 6.36089 12.4429 4.2466L12.9338 4.15155C13.3553 6.32861 13.3554 8.66985 12.9341 10.847L12.4432 10.752Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.49988C0.877075 3.84219 3.84222 0.877045 7.49991 0.877045C11.1576 0.877045 14.1227 3.84219 14.1227 7.49988C14.1227 11.1575 11.1576 14.1227 7.49991 14.1227C3.84222 14.1227 0.877075 11.1575 0.877075 7.49988ZM7.49991 1.82704C4.36689 1.82704 1.82708 4.36686 1.82708 7.49988C1.82708 10.6329 4.36689 13.1727 7.49991 13.1727C10.6329 13.1727 13.1727 10.6329 13.1727 7.49988C13.1727 4.36686 10.6329 1.82704 7.49991 1.82704Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3S = [\n \"color\"\n];\nvar ShadowInnerIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3S);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".05\",\n d: \"M12.1619 3.85182C8.35817 4.88918 4.88936 8.358 3.85199 12.1617L3.3696 12.0301C4.45356 8.05564 8.05581 4.45339 12.0303 3.36943L12.1619 3.85182Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".1\",\n d: \"M11.8807 3.42707C8.03441 4.50542 4.50561 8.03422 3.42726 11.8805L2.94582 11.7456C4.07129 7.73121 7.7314 4.0711 11.7458 2.94563L11.8807 3.42707Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".15\",\n d: \"M11.5201 3.02556C7.69092 4.16199 4.16779 7.68323 3.02805 11.512L2.54883 11.3694C3.73676 7.37869 7.38659 3.73076 11.3778 2.54623L11.5201 3.02556Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".2\",\n d: \"M11.0468 2.66169C7.31117 3.87664 3.87918 7.3079 2.66298 11.0434L2.18754 10.8886C3.45324 7.00109 7.00445 3.45062 10.8921 2.18621L11.0468 2.66169Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".25\",\n d: \"M10.5201 2.32365C6.92091 3.61447 3.62391 6.90876 2.32845 10.5073L1.858 10.338C3.20398 6.59909 6.61155 3.19424 10.3513 1.85301L10.5201 2.32365Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".3\",\n d: \"M9.90222 2.03122C6.50003 3.39465 3.39968 6.49367 2.03399 9.89551L1.56998 9.70924C2.98651 6.18076 6.18728 2.98133 9.71622 1.5671L9.90222 2.03122Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".35\",\n d: \"M9.20727 1.78873C6.06136 3.20349 3.21103 6.05203 1.79331 9.19738L1.33747 8.99192C2.80536 5.73528 5.74485 2.7976 9.0022 1.33272L9.20727 1.78873Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".4\",\n d: \"M8.40713 1.62085C5.59323 3.05117 3.05794 5.58509 1.62544 8.39847L1.17987 8.1716C2.66036 5.26397 5.27232 2.6534 8.18057 1.17513L8.40713 1.62085Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".45\",\n d: \"M7.46207 1.56747C5.08689 2.94695 2.95362 5.07912 1.57249 7.45379L1.14028 7.20241C2.56503 4.75273 4.7607 2.55818 7.21096 1.1351L7.46207 1.56747Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".5\",\n d: \"M6.30407 1.70487C4.51964 2.91063 2.90983 4.52061 1.7043 6.30513L1.28998 6.02524C2.5313 4.18773 4.18673 2.53214 6.02413 1.29059L6.30407 1.70487Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.49988C0.877075 3.84219 3.84222 0.877045 7.49991 0.877045C11.1576 0.877045 14.1227 3.84219 14.1227 7.49988C14.1227 11.1575 11.1576 14.1227 7.49991 14.1227C3.84222 14.1227 0.877075 11.1575 0.877075 7.49988ZM7.49991 1.82704C4.36689 1.82704 1.82708 4.36686 1.82708 7.49988C1.82708 10.6329 4.36689 13.1727 7.49991 13.1727C10.6329 13.1727 13.1727 10.6329 13.1727 7.49988C13.1727 4.36686 10.6329 1.82704 7.49991 1.82704Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3T = [\n \"color\"\n];\nvar ShadowNoneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3T);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".05\",\n d: \"M6.78296 13.376C8.73904 9.95284 8.73904 5.04719 6.78296 1.62405L7.21708 1.37598C9.261 4.95283 9.261 10.0472 7.21708 13.624L6.78296 13.376Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".1\",\n d: \"M7.28204 13.4775C9.23929 9.99523 9.23929 5.00475 7.28204 1.52248L7.71791 1.2775C9.76067 4.9119 9.76067 10.0881 7.71791 13.7225L7.28204 13.4775Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".15\",\n d: \"M7.82098 13.5064C9.72502 9.99523 9.72636 5.01411 7.82492 1.50084L8.26465 1.26285C10.2465 4.92466 10.2451 10.085 8.26052 13.7448L7.82098 13.5064Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".2\",\n d: \"M8.41284 13.429C10.1952 9.92842 10.1957 5.07537 8.41435 1.57402L8.85999 1.34729C10.7139 4.99113 10.7133 10.0128 8.85841 13.6559L8.41284 13.429Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".25\",\n d: \"M9.02441 13.2956C10.6567 9.8379 10.6586 5.17715 9.03005 1.71656L9.48245 1.50366C11.1745 5.09919 11.1726 9.91629 9.47657 13.5091L9.02441 13.2956Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".3\",\n d: \"M9.66809 13.0655C11.1097 9.69572 11.1107 5.3121 9.67088 1.94095L10.1307 1.74457C11.6241 5.24121 11.6231 9.76683 10.1278 13.2622L9.66809 13.0655Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".35\",\n d: \"M10.331 12.7456C11.5551 9.52073 11.5564 5.49103 10.3347 2.26444L10.8024 2.0874C12.0672 5.42815 12.0659 9.58394 10.7985 12.9231L10.331 12.7456Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".4\",\n d: \"M11.0155 12.2986C11.9938 9.29744 11.9948 5.71296 11.0184 2.71067L11.4939 2.55603C12.503 5.6589 12.502 9.35178 11.4909 12.4535L11.0155 12.2986Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".45\",\n d: \"M11.7214 11.668C12.4254 9.01303 12.4262 5.99691 11.7237 3.34116L12.2071 3.21329C12.9318 5.95292 12.931 9.05728 12.2047 11.7961L11.7214 11.668Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".5\",\n d: \"M12.4432 10.752C12.8524 8.63762 12.8523 6.36089 12.4429 4.2466L12.9338 4.15155C13.3553 6.32861 13.3554 8.66985 12.9341 10.847L12.4432 10.752Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49991 0.877045C3.84222 0.877045 0.877075 3.84219 0.877075 7.49988C0.877075 9.1488 1.47969 10.657 2.4767 11.8162L1.64647 12.6464C1.45121 12.8417 1.45121 13.1583 1.64647 13.3535C1.84173 13.5488 2.15832 13.5488 2.35358 13.3535L3.18383 12.5233C4.34302 13.5202 5.8511 14.1227 7.49991 14.1227C11.1576 14.1227 14.1227 11.1575 14.1227 7.49988C14.1227 5.85107 13.5202 4.34298 12.5233 3.1838L13.3536 2.35355C13.5488 2.15829 13.5488 1.8417 13.3536 1.64644C13.1583 1.45118 12.8417 1.45118 12.6465 1.64644L11.8162 2.47667C10.657 1.47966 9.14883 0.877045 7.49991 0.877045ZM11.1423 3.15065C10.1568 2.32449 8.88644 1.82704 7.49991 1.82704C4.36689 1.82704 1.82708 4.36686 1.82708 7.49988C1.82708 8.88641 2.32452 10.1568 3.15069 11.1422L11.1423 3.15065ZM3.85781 11.8493C4.84322 12.6753 6.11348 13.1727 7.49991 13.1727C10.6329 13.1727 13.1727 10.6329 13.1727 7.49988C13.1727 6.11345 12.6754 4.84319 11.8493 3.85778L3.85781 11.8493Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3U = [\n \"color\"\n];\nvar ShadowOuterIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3U);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".05\",\n d: \"M12.1398 3.88617C13.8553 4.94159 15 6.83701 15 9.00001C15 12.3137 12.3137 15 9.00002 15C6.84351 15 4.95296 13.8621 3.89569 12.1552L4.32076 11.8919C5.29069 13.4578 7.02376 14.5 9.00002 14.5C12.0376 14.5 14.5 12.0375 14.5 9.00001C14.5 7.01781 13.4516 5.28027 11.8778 4.31203L12.1398 3.88617Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".2\",\n d: \"M12.851 5.07321C13.8684 6.07106 14.5 7.46199 14.5 9C14.5 12.0375 12.0376 14.5 9.00004 14.5C7.46215 14.5 6.07132 13.8685 5.07349 12.8513L5.43043 12.5011C6.3381 13.4264 7.60186 14 9.00004 14C11.7614 14 14 11.7614 14 9C14 7.60171 13.4264 6.33786 12.5009 5.43017L12.851 5.07321Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".35\",\n d: \"M13.3022 6.45071C13.7455 7.19737 14 8.06935 14 9.00001C14 11.7614 11.7614 14 9.00002 14C8.04868 14 7.15868 13.7341 6.40118 13.2724L6.66142 12.8454C7.34275 13.2607 8.14306 13.5 9.00002 13.5C11.4853 13.5 13.5 11.4853 13.5 9.00001C13.5 8.16165 13.271 7.37754 12.8722 6.70599L13.3022 6.45071Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".5\",\n d: \"M13.3745 7.94022C13.4566 8.28031 13.5 8.63525 13.5 9.00001C13.5 11.4853 11.4853 13.5 9.00003 13.5C8.61104 13.5 8.23323 13.4506 7.87268 13.3576L7.99759 12.8734C8.31768 12.956 8.65353 13 9.00003 13C11.2091 13 13 11.2091 13 9.00001C13 8.67509 12.9613 8.35953 12.8884 8.05757L13.3745 7.94022Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".65\",\n d: \"M12.9155 9.82133C12.5898 11.3813 11.3562 12.6072 9.79205 12.9215L9.69354 12.4313C11.0613 12.1565 12.1413 11.0834 12.4261 9.71915L12.9155 9.82133Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.2771 7.50253C1.2771 4.06456 4.06413 1.27753 7.5021 1.27753C10.94 1.27753 13.7271 4.06456 13.7271 7.50253C13.7271 10.9405 10.94 13.7275 7.5021 13.7275C4.06413 13.7275 1.2771 10.9405 1.2771 7.50253ZM7.5021 2.22753C4.5888 2.22753 2.2271 4.58923 2.2271 7.50253C2.2271 10.4158 4.5888 12.7775 7.5021 12.7775C10.4154 12.7775 12.7771 10.4158 12.7771 7.50253C12.7771 4.58923 10.4154 2.22753 7.5021 2.22753Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3V = [\n \"color\"\n];\nvar Share1Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3V);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 7.50003C5 8.32845 4.32843 9.00003 3.5 9.00003C2.67157 9.00003 2 8.32845 2 7.50003C2 6.6716 2.67157 6.00003 3.5 6.00003C4.32843 6.00003 5 6.6716 5 7.50003ZM5.71313 8.66388C5.29445 9.45838 4.46048 10 3.5 10C2.11929 10 1 8.88074 1 7.50003C1 6.11931 2.11929 5.00003 3.5 5.00003C4.46048 5.00003 5.29445 5.54167 5.71313 6.33616L9.10424 4.21671C9.03643 3.98968 9 3.74911 9 3.50003C9 2.11932 10.1193 1.00003 11.5 1.00003C12.8807 1.00003 14 2.11932 14 3.50003C14 4.88074 12.8807 6.00003 11.5 6.00003C10.6915 6.00003 9.97264 5.61624 9.51566 5.0209L5.9853 7.22738C5.99502 7.31692 6 7.40789 6 7.50003C6 7.59216 5.99502 7.68312 5.9853 7.77267L9.51567 9.97915C9.97265 9.38382 10.6915 9.00003 11.5 9.00003C12.8807 9.00003 14 10.1193 14 11.5C14 12.8807 12.8807 14 11.5 14C10.1193 14 9 12.8807 9 11.5C9 11.2509 9.03643 11.0104 9.10425 10.7833L5.71313 8.66388ZM11.5 5.00003C12.3284 5.00003 13 4.32846 13 3.50003C13 2.6716 12.3284 2.00003 11.5 2.00003C10.6716 2.00003 10 2.6716 10 3.50003C10 4.32846 10.6716 5.00003 11.5 5.00003ZM13 11.5C13 12.3285 12.3284 13 11.5 13C10.6716 13 10 12.3285 10 11.5C10 10.6716 10.6716 10 11.5 10C12.3284 10 13 10.6716 13 11.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3W = [\n \"color\"\n];\nvar Share2Icon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3W);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.5 5.00006C3.22386 5.00006 3 5.22392 3 5.50006L3 11.5001C3 11.7762 3.22386 12.0001 3.5 12.0001L11.5 12.0001C11.7761 12.0001 12 11.7762 12 11.5001L12 5.50006C12 5.22392 11.7761 5.00006 11.5 5.00006L10.25 5.00006C9.97386 5.00006 9.75 4.7762 9.75 4.50006C9.75 4.22392 9.97386 4.00006 10.25 4.00006L11.5 4.00006C12.3284 4.00006 13 4.67163 13 5.50006L13 11.5001C13 12.3285 12.3284 13.0001 11.5 13.0001L3.5 13.0001C2.67157 13.0001 2 12.3285 2 11.5001L2 5.50006C2 4.67163 2.67157 4.00006 3.5 4.00006L4.75 4.00006C5.02614 4.00006 5.25 4.22392 5.25 4.50006C5.25 4.7762 5.02614 5.00006 4.75 5.00006L3.5 5.00006ZM7 1.6364L5.5682 3.0682C5.39246 3.24393 5.10754 3.24393 4.9318 3.0682C4.75607 2.89246 4.75607 2.60754 4.9318 2.4318L7.1818 0.181802C7.26619 0.09741 7.38065 0.049999 7.5 0.049999C7.61935 0.049999 7.73381 0.09741 7.8182 0.181802L10.0682 2.4318C10.2439 2.60754 10.2439 2.89246 10.0682 3.0682C9.89246 3.24393 9.60754 3.24393 9.4318 3.0682L8 1.6364L8 8.5C8 8.77614 7.77614 9 7.5 9C7.22386 9 7 8.77614 7 8.5L7 1.6364Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3X = [\n \"color\"\n];\nvar ShuffleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3X);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M12.3536 1.14645C12.1583 0.951184 11.8417 0.951184 11.6464 1.14645C11.4512 1.34171 11.4512 1.65829 11.6464 1.85355L12.7929 3H12C10.7037 3 9.71111 3.58423 8.87248 4.38931C8.20065 5.03427 7.59349 5.85684 6.99461 6.6682C6.86287 6.84668 6.73154 7.02462 6.6 7.2C5.10874 9.18835 3.49037 11 0.5 11C0.223858 11 0 11.2239 0 11.5C0 11.7761 0.223858 12 0.5 12C4.00963 12 5.89126 9.81165 7.4 7.8C7.54367 7.60845 7.6832 7.41962 7.81996 7.23454L7.82005 7.23443L7.82006 7.23441C8.41674 6.42695 8.96069 5.69085 9.56502 5.11069C10.2889 4.41577 11.0463 4 12 4H12.7929L11.6464 5.14645C11.4512 5.34171 11.4512 5.65829 11.6464 5.85355C11.8417 6.04882 12.1583 6.04882 12.3536 5.85355L14.3536 3.85355C14.5488 3.65829 14.5488 3.34171 14.3536 3.14645L12.3536 1.14645ZM0.5 3C3.35278 3 5.12992 4.44588 6.50548 6.06746L6.3762 6.24266C6.2483 6.4161 6.12293 6.58609 6 6.75C5.96397 6.79804 5.92798 6.84581 5.892 6.89331C4.57348 5.29306 3.02637 4 0.5 4C0.223858 4 0 3.77614 0 3.5C0 3.22386 0.223858 3 0.5 3ZM8.87248 10.6107C8.37284 10.131 7.90897 9.55314 7.45767 8.95468C7.64688 8.71693 7.82704 8.48061 8 8.25L8.08987 8.12987C8.58412 8.79402 9.05288 9.39766 9.56502 9.88931C10.2889 10.5842 11.0463 11 12 11H12.7929L11.6464 9.85355C11.4512 9.65829 11.4512 9.34171 11.6464 9.14645C11.8417 8.95118 12.1583 8.95118 12.3536 9.14645L14.3536 11.1464C14.5488 11.3417 14.5488 11.6583 14.3536 11.8536L12.3536 13.8536C12.1583 14.0488 11.8417 14.0488 11.6464 13.8536C11.4512 13.6583 11.4512 13.3417 11.6464 13.1464L12.7929 12H12C10.7037 12 9.71111 11.4158 8.87248 10.6107Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3Y = [\n \"color\"\n];\nvar SizeIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3Y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M11.5 3.04999C11.7485 3.04999 11.95 3.25146 11.95 3.49999V7.49999C11.95 7.74852 11.7485 7.94999 11.5 7.94999C11.2515 7.94999 11.05 7.74852 11.05 7.49999V4.58639L4.58638 11.05H7.49999C7.74852 11.05 7.94999 11.2515 7.94999 11.5C7.94999 11.7485 7.74852 11.95 7.49999 11.95L3.49999 11.95C3.38064 11.95 3.26618 11.9026 3.18179 11.8182C3.0974 11.7338 3.04999 11.6193 3.04999 11.5L3.04999 7.49999C3.04999 7.25146 3.25146 7.04999 3.49999 7.04999C3.74852 7.04999 3.94999 7.25146 3.94999 7.49999L3.94999 10.4136L10.4136 3.94999L7.49999 3.94999C7.25146 3.94999 7.04999 3.74852 7.04999 3.49999C7.04999 3.25146 7.25146 3.04999 7.49999 3.04999L11.5 3.04999Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3Z = [\n \"color\"\n];\nvar SketchLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3Z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.53731 0.826873C7.5125 0.824392 7.4875 0.824392 7.46269 0.826873L3.96269 1.17687C3.85672 1.18747 3.76025 1.24262 3.69736 1.32857L0.699771 5.42528C0.654046 5.48627 0.62647 5.56165 0.625057 5.6434C0.625019 5.6456 0.625 5.64781 0.625 5.65001C0.625 5.65052 0.625001 5.65103 0.625003 5.65153C0.625363 5.74237 0.658021 5.82559 0.712087 5.8903L7.21042 13.7883C7.28165 13.8749 7.38789 13.925 7.5 13.925C7.61211 13.925 7.71835 13.8749 7.78958 13.7883L14.2879 5.89031C14.342 5.8256 14.3746 5.74237 14.375 5.65153C14.375 5.65103 14.375 5.65052 14.375 5.65001C14.375 5.64849 14.375 5.64697 14.375 5.64545C14.3749 5.63963 14.3747 5.63382 14.3744 5.62801C14.37 5.55219 14.3431 5.48242 14.3002 5.42527L11.3026 1.32857C11.2397 1.24262 11.1433 1.18747 11.0373 1.17687L7.53731 0.826873ZM10.925 5.27501V5.25236L10.9223 5.27501H10.925ZM10.9342 5.17498H13.1877L11.2495 2.5261L10.9342 5.17498ZM10.5707 1.88395L8.04432 1.63131L10.1747 5.21034L10.5707 1.88395ZM6.95568 1.63131L4.42931 1.88395L4.82531 5.21034L6.95568 1.63131ZM3.75046 2.5261L1.81226 5.17498H4.0658L3.75046 2.5261ZM1.79416 6.02501L6.75861 12.0587L4.22371 6.0669C4.21787 6.0531 4.21314 6.0391 4.20949 6.02501H1.79416ZM5.15055 6.02501L7.49999 12.1085L9.84943 6.02501H9.78681H5.21319H5.15055ZM10.7905 6.02501C10.7869 6.0391 10.7821 6.0531 10.7763 6.0669L8.24139 12.0587L13.2058 6.02501H10.7905ZM7.5 2.18317L9.34038 5.27501H5.65962L7.5 2.18317Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3_ = [\n \"color\"\n];\nvar SlashIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3_);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.10876 14L9.46582 1H10.8178L5.46074 14H4.10876Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$3$ = [\n \"color\"\n];\nvar SliderIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$3$);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10.3004 7.49991C10.3004 8.4943 9.49426 9.30041 8.49988 9.30041C7.50549 9.30041 6.69938 8.4943 6.69938 7.49991C6.69938 6.50553 7.50549 5.69942 8.49988 5.69942C9.49426 5.69942 10.3004 6.50553 10.3004 7.49991ZM11.205 8C10.9699 9.28029 9.84816 10.2504 8.49988 10.2504C7.1516 10.2504 6.0299 9.28029 5.79473 8H0.5C0.223858 8 0 7.77614 0 7.5C0 7.22386 0.223858 7 0.5 7H5.7947C6.0298 5.71962 7.15154 4.74942 8.49988 4.74942C9.84822 4.74942 10.97 5.71962 11.2051 7H14.5C14.7761 7 15 7.22386 15 7.5C15 7.77614 14.7761 8 14.5 8H11.205Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$40 = [\n \"color\"\n];\nvar SpaceBetweenHorizontallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$40);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14.4999 0.999994C14.2237 0.999994 13.9999 1.22385 13.9999 1.49999L13.9999 5.99995L9.99992 5.99995C9.44764 5.99995 8.99993 6.44766 8.99993 6.99994L8.99993 7.99994C8.99993 8.55222 9.44764 8.99993 9.99992 8.99993L13.9999 8.99993L13.9999 13.4999C13.9999 13.776 14.2237 13.9999 14.4999 13.9999C14.776 13.9999 14.9999 13.776 14.9999 13.4999L14.9999 1.49999C14.9999 1.22385 14.776 0.999994 14.4999 0.999994ZM4.99996 5.99995L0.999992 5.99995L0.999992 1.49999C0.999992 1.22385 0.776136 0.999994 0.499996 0.999994C0.223856 0.999994 -9.7852e-09 1.22385 -2.18557e-08 1.49999L4.07279e-07 13.4999C3.95208e-07 13.776 0.223855 13.9999 0.499996 13.9999C0.776136 13.9999 0.999992 13.776 0.999992 13.4999L0.999992 8.99993L4.99996 8.99993C5.55224 8.99993 5.99995 8.55222 5.99995 7.99993L5.99995 6.99994C5.99995 6.44766 5.55224 5.99995 4.99996 5.99995Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$41 = [\n \"color\"\n];\nvar SpaceBetweenVerticallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$41);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.999878 0.5C0.999878 0.223858 1.22374 0 1.49988 0H13.4999C13.776 0 13.9999 0.223858 13.9999 0.5C13.9999 0.776142 13.776 1 13.4999 1L9 1V5C9 5.55228 8.55228 6 8 6H7C6.44772 6 6 5.55228 6 5V1H1.49988C1.22374 1 0.999878 0.776142 0.999878 0.5ZM7 9C6.44772 9 6 9.44771 6 10V14H1.49988C1.22374 14 0.999878 14.2239 0.999878 14.5C0.999878 14.7761 1.22374 15 1.49988 15H13.4999C13.776 15 13.9999 14.7761 13.9999 14.5C13.9999 14.2239 13.776 14 13.4999 14H9V10C9 9.44772 8.55228 9 8 9H7Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$42 = [\n \"color\"\n];\nvar SpaceEvenlyHorizontallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$42);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14.4999 0.999992C14.2237 0.999992 13.9999 1.22385 13.9999 1.49999L13.9999 13.4999C13.9999 13.776 14.2237 13.9999 14.4999 13.9999C14.776 13.9999 14.9999 13.776 14.9999 13.4999L14.9999 1.49999C14.9999 1.22385 14.776 0.999992 14.4999 0.999992ZM0.499996 0.999992C0.223856 0.999992 -9.78509e-09 1.22385 -2.18556e-08 1.49999L4.07279e-07 13.4999C3.95208e-07 13.776 0.223855 13.9999 0.499996 13.9999C0.776136 13.9999 0.999992 13.776 0.999992 13.4999L0.999992 1.49999C0.999992 1.22385 0.776136 0.999992 0.499996 0.999992ZM1.99998 6.99994C1.99998 6.44766 2.44769 5.99995 2.99998 5.99995L5.99995 5.99995C6.55223 5.99995 6.99994 6.44766 6.99994 6.99994L6.99994 7.99993C6.99994 8.55221 6.55223 8.99992 5.99995 8.99992L2.99998 8.99992C2.4477 8.99992 1.99998 8.55221 1.99998 7.99993L1.99998 6.99994ZM8.99993 5.99995C8.44765 5.99995 7.99993 6.44766 7.99993 6.99994L7.99993 7.99993C7.99993 8.55221 8.44765 8.99992 8.99993 8.99992L11.9999 8.99992C12.5522 8.99992 12.9999 8.55221 12.9999 7.99993L12.9999 6.99994C12.9999 6.44766 12.5522 5.99995 11.9999 5.99995L8.99993 5.99995Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$43 = [\n \"color\"\n];\nvar SpaceEvenlyVerticallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$43);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.999878 0.5C0.999878 0.223858 1.22374 0 1.49988 0H13.4999C13.776 0 13.9999 0.223858 13.9999 0.5C13.9999 0.776142 13.776 1 13.4999 1H1.49988C1.22374 1 0.999878 0.776142 0.999878 0.5ZM7 2C6.44772 2 6 2.44772 6 3V6C6 6.55228 6.44772 7 7 7H8C8.55228 7 9 6.55228 9 6V3C9 2.44772 8.55228 2 8 2H7ZM7 8C6.44772 8 6 8.44771 6 9V12C6 12.5523 6.44772 13 7 13H8C8.55228 13 9 12.5523 9 12V9C9 8.44772 8.55228 8 8 8H7ZM1.49988 14C1.22374 14 0.999878 14.2239 0.999878 14.5C0.999878 14.7761 1.22374 15 1.49988 15H13.4999C13.776 15 13.9999 14.7761 13.9999 14.5C13.9999 14.2239 13.776 14 13.4999 14H1.49988Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$44 = [\n \"color\"\n];\nvar SpeakerLoudIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$44);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.46968 1.05085C7.64122 1.13475 7.75 1.30904 7.75 1.5V13.5C7.75 13.691 7.64122 13.8653 7.46968 13.9492C7.29813 14.0331 7.09377 14.0119 6.94303 13.8947L3.2213 11H1.5C0.671571 11 0 10.3284 0 9.5V5.5C0 4.67158 0.671573 4 1.5 4H3.2213L6.94303 1.10533C7.09377 0.988085 7.29813 0.966945 7.46968 1.05085ZM6.75 2.52232L3.69983 4.89468C3.61206 4.96294 3.50405 5 3.39286 5H1.5C1.22386 5 1 5.22386 1 5.5V9.5C1 9.77615 1.22386 10 1.5 10H3.39286C3.50405 10 3.61206 10.0371 3.69983 10.1053L6.75 12.4777V2.52232ZM10.2784 3.84804C10.4623 3.72567 10.7106 3.77557 10.833 3.95949C12.2558 6.09798 12.2558 8.90199 10.833 11.0405C10.7106 11.2244 10.4623 11.2743 10.2784 11.1519C10.0944 11.0296 10.0445 10.7813 10.1669 10.5973C11.4111 8.72728 11.4111 6.27269 10.1669 4.40264C10.0445 4.21871 10.0944 3.97041 10.2784 3.84804ZM12.6785 1.43044C12.5356 1.2619 12.2832 1.24104 12.1147 1.38386C11.9462 1.52667 11.9253 1.77908 12.0681 1.94762C14.7773 5.14488 14.7773 9.85513 12.0681 13.0524C11.9253 13.2209 11.9462 13.4733 12.1147 13.6161C12.2832 13.759 12.5356 13.7381 12.6785 13.5696C15.6406 10.0739 15.6406 4.92612 12.6785 1.43044Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$45 = [\n \"color\"\n];\nvar SpeakerModerateIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$45);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8 1.5C8 1.31062 7.893 1.13749 7.72361 1.05279C7.55421 0.968093 7.35151 0.986371 7.2 1.1L3.33333 4H1.5C0.671573 4 0 4.67158 0 5.5V9.5C0 10.3284 0.671573 11 1.5 11H3.33333L7.2 13.9C7.35151 14.0136 7.55421 14.0319 7.72361 13.9472C7.893 13.8625 8 13.6894 8 13.5V1.5ZM3.8 4.9L7 2.5V12.5L3.8 10.1C3.71345 10.0351 3.60819 10 3.5 10H1.5C1.22386 10 1 9.77614 1 9.5V5.5C1 5.22386 1.22386 5 1.5 5H3.5C3.60819 5 3.71345 4.96491 3.8 4.9ZM10.833 3.95949C10.7106 3.77557 10.4623 3.72567 10.2784 3.84804C10.0944 3.97041 10.0445 4.21871 10.1669 4.40264C11.4111 6.27268 11.4111 8.72728 10.1669 10.5973C10.0445 10.7813 10.0944 11.0296 10.2784 11.1519C10.4623 11.2743 10.7106 11.2244 10.833 11.0405C12.2558 8.90199 12.2558 6.09798 10.833 3.95949Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$46 = [\n \"color\"\n];\nvar SpeakerOffIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$46);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.72361 1.05279C7.893 1.13749 8 1.31062 8 1.5V13.5C8 13.6894 7.893 13.8625 7.72361 13.9472C7.55421 14.0319 7.35151 14.0136 7.2 13.9L3.33333 11H1.5C0.671573 11 0 10.3284 0 9.5V5.5C0 4.67158 0.671573 4 1.5 4H3.33333L7.2 1.1C7.35151 0.986371 7.55421 0.968093 7.72361 1.05279ZM7 2.5L3.8 4.9C3.71345 4.96491 3.60819 5 3.5 5H1.5C1.22386 5 1 5.22386 1 5.5V9.5C1 9.77614 1.22386 10 1.5 10H3.5C3.60819 10 3.71345 10.0351 3.8 10.1L7 12.5V2.5ZM14.8536 5.14645C15.0488 5.34171 15.0488 5.65829 14.8536 5.85355L13.2071 7.5L14.8536 9.14645C15.0488 9.34171 15.0488 9.65829 14.8536 9.85355C14.6583 10.0488 14.3417 10.0488 14.1464 9.85355L12.5 8.20711L10.8536 9.85355C10.6583 10.0488 10.3417 10.0488 10.1464 9.85355C9.95118 9.65829 9.95118 9.34171 10.1464 9.14645L11.7929 7.5L10.1464 5.85355C9.95118 5.65829 9.95118 5.34171 10.1464 5.14645C10.3417 4.95118 10.6583 4.95118 10.8536 5.14645L12.5 6.79289L14.1464 5.14645C14.3417 4.95118 14.6583 4.95118 14.8536 5.14645Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$47 = [\n \"color\"\n];\nvar SpeakerQuietIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$47);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8 1.5C8 1.31062 7.893 1.13749 7.72361 1.05279C7.55421 0.968093 7.35151 0.986371 7.2 1.1L3.33333 4H1.5C0.671573 4 0 4.67158 0 5.5V9.5C0 10.3284 0.671573 11 1.5 11H3.33333L7.2 13.9C7.35151 14.0136 7.55421 14.0319 7.72361 13.9472C7.893 13.8625 8 13.6894 8 13.5V1.5ZM3.8 4.9L7 2.5V12.5L3.8 10.1C3.71345 10.0351 3.60819 10 3.5 10H1.5C1.22386 10 1 9.77614 1 9.5V5.5C1 5.22386 1.22386 5 1.5 5H3.5C3.60819 5 3.71345 4.96491 3.8 4.9ZM10.083 5.05577C9.96066 4.87185 9.71235 4.82195 9.52843 4.94432C9.3445 5.06669 9.2946 5.31499 9.41697 5.49892C10.2207 6.70693 10.2207 8.29303 9.41697 9.50104C9.2946 9.68496 9.3445 9.93326 9.52843 10.0556C9.71235 10.178 9.96066 10.1281 10.083 9.94418C11.0653 8.46773 11.0653 6.53222 10.083 5.05577Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$48 = [\n \"color\"\n];\nvar SquareIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$48);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 1H1.5H13.5H14V1.5V13.5V14H13.5H1.5H1V13.5V1.5V1ZM2 2V13H13V2H2Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$49 = [\n \"color\"\n];\nvar StackIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$49);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.75432 1.81954C7.59742 1.72682 7.4025 1.72682 7.24559 1.81954L1.74559 5.06954C1.59336 5.15949 1.49996 5.32317 1.49996 5.5C1.49996 5.67683 1.59336 5.84051 1.74559 5.93046L7.24559 9.18046C7.4025 9.27318 7.59742 9.27318 7.75432 9.18046L13.2543 5.93046C13.4066 5.84051 13.5 5.67683 13.5 5.5C13.5 5.32317 13.4066 5.15949 13.2543 5.06954L7.75432 1.81954ZM7.49996 8.16923L2.9828 5.5L7.49996 2.83077L12.0171 5.5L7.49996 8.16923ZM2.25432 8.31954C2.01658 8.17906 1.70998 8.2579 1.56949 8.49564C1.42901 8.73337 1.50785 9.03998 1.74559 9.18046L7.24559 12.4305C7.4025 12.5232 7.59742 12.5232 7.75432 12.4305L13.2543 9.18046C13.4921 9.03998 13.5709 8.73337 13.4304 8.49564C13.2899 8.2579 12.9833 8.17906 12.7456 8.31954L7.49996 11.4192L2.25432 8.31954Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4a = [\n \"color\"\n];\nvar StarIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4a);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.97942 1.25171L6.9585 1.30199L5.58662 4.60039C5.54342 4.70426 5.44573 4.77523 5.3336 4.78422L1.7727 5.0697L1.71841 5.07405L1.38687 5.10063L1.08608 5.12475C0.820085 5.14607 0.712228 5.47802 0.914889 5.65162L1.14406 5.84793L1.39666 6.06431L1.43802 6.09974L4.15105 8.42374C4.23648 8.49692 4.2738 8.61176 4.24769 8.72118L3.41882 12.196L3.40618 12.249L3.32901 12.5725L3.25899 12.866C3.19708 13.1256 3.47945 13.3308 3.70718 13.1917L3.9647 13.0344L4.24854 12.861L4.29502 12.8326L7.34365 10.9705C7.43965 10.9119 7.5604 10.9119 7.6564 10.9705L10.705 12.8326L10.7515 12.861L11.0354 13.0344L11.2929 13.1917C11.5206 13.3308 11.803 13.1256 11.7411 12.866L11.671 12.5725L11.5939 12.249L11.5812 12.196L10.7524 8.72118C10.7263 8.61176 10.7636 8.49692 10.849 8.42374L13.562 6.09974L13.6034 6.06431L13.856 5.84793L14.0852 5.65162C14.2878 5.47802 14.18 5.14607 13.914 5.12475L13.6132 5.10063L13.2816 5.07405L13.2274 5.0697L9.66645 4.78422C9.55432 4.77523 9.45663 4.70426 9.41343 4.60039L8.04155 1.30199L8.02064 1.25171L7.89291 0.944609L7.77702 0.665992C7.67454 0.419604 7.32551 0.419604 7.22303 0.665992L7.10715 0.944609L6.97942 1.25171ZM7.50003 2.60397L6.50994 4.98442C6.32273 5.43453 5.89944 5.74207 5.41351 5.78103L2.84361 5.98705L4.8016 7.66428C5.17183 7.98142 5.33351 8.47903 5.2204 8.95321L4.62221 11.461L6.8224 10.1171C7.23842 9.86302 7.76164 9.86302 8.17766 10.1171L10.3778 11.461L9.77965 8.95321C9.66654 8.47903 9.82822 7.98142 10.1984 7.66428L12.1564 5.98705L9.58654 5.78103C9.10061 5.74207 8.67732 5.43453 8.49011 4.98442L7.50003 2.60397Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4b = [\n \"color\"\n];\nvar StarFilledIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4b);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.22303 0.665992C7.32551 0.419604 7.67454 0.419604 7.77702 0.665992L9.41343 4.60039C9.45663 4.70426 9.55432 4.77523 9.66645 4.78422L13.914 5.12475C14.18 5.14607 14.2878 5.47802 14.0852 5.65162L10.849 8.42374C10.7636 8.49692 10.7263 8.61176 10.7524 8.72118L11.7411 12.866C11.803 13.1256 11.5206 13.3308 11.2929 13.1917L7.6564 10.9705C7.5604 10.9119 7.43965 10.9119 7.34365 10.9705L3.70718 13.1917C3.47945 13.3308 3.19708 13.1256 3.25899 12.866L4.24769 8.72118C4.2738 8.61176 4.23648 8.49692 4.15105 8.42374L0.914889 5.65162C0.712228 5.47802 0.820086 5.14607 1.08608 5.12475L5.3336 4.78422C5.44573 4.77523 5.54342 4.70426 5.58662 4.60039L7.22303 0.665992Z\",\n fill: color\n }));\n});\nvar _excluded$4c = [\n \"color\"\n];\nvar StitchesLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4c);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.84998 7.49998C1.84998 7.21321 1.87134 6.93143 1.91256 6.65615L9.56374 2.23875C9.86311 2.35627 10.15 2.49861 10.4219 2.66322L3.77065 6.50332C3.73669 6.52183 3.70482 6.5449 3.67602 6.57238C3.5911 6.65308 3.54245 6.76286 3.53682 6.87658C3.53359 6.9418 3.54451 7.00831 3.57086 7.07137C3.58927 7.1157 3.6149 7.15742 3.64744 7.19458C3.67306 7.22396 3.702 7.24941 3.73337 7.27069L7.32533 9.83813L3.87232 11.8317C2.63604 10.7953 1.84998 9.23944 1.84998 7.49998ZM8.36843 10.2751C8.37682 10.2706 8.38509 10.2659 8.39322 10.2608L9.84091 9.42499C9.84706 9.42163 9.85314 9.41812 9.85915 9.41446L11.3101 8.57677C11.3655 8.54649 11.4154 8.504 11.4554 8.44995C11.6034 8.25031 11.5616 7.96848 11.362 7.82046L7.82779 5.20017L11.2161 3.24393C12.4013 4.27963 13.15 5.80237 13.15 7.49998C13.15 7.83546 13.1207 8.16411 13.0647 8.48353L5.56875 12.8113C5.26138 12.6995 4.96646 12.5618 4.68662 12.4008L8.36843 10.2751ZM8.18149 9.34383L4.81659 6.93868L5.50918 6.53881L8.80604 8.98324L8.18149 9.34383ZM6.35875 6.04832L6.97822 5.69067L10.2751 8.13506L9.6556 8.49275L6.35875 6.04832ZM8.3318 1.91078L2.24263 5.42636C3.06941 3.33188 5.11164 1.84998 7.49998 1.84998C7.78258 1.84998 8.06033 1.87072 8.3318 1.91078ZM6.84684 13.1126C7.06114 13.1373 7.27908 13.15 7.49998 13.15C9.8246 13.15 11.8213 11.7461 12.6886 9.7399L6.84684 13.1126ZM7.49998 0.849976C3.82728 0.849976 0.849976 3.82728 0.849976 7.49998C0.849976 11.1727 3.82728 14.15 7.49998 14.15C11.1727 14.15 14.15 11.1727 14.15 7.49998C14.15 3.82728 11.1727 0.849976 7.49998 0.849976Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4d = [\n \"color\"\n];\nvar StopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4d);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 3C2 2.44772 2.44772 2 3 2H12C12.5523 2 13 2.44772 13 3V12C13 12.5523 12.5523 13 12 13H3C2.44772 13 2 12.5523 2 12V3ZM12 3H3V12H12V3Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4e = [\n \"color\"\n];\nvar StopwatchIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4e);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.49998 0.5C5.49998 0.223858 5.72383 0 5.99998 0H7.49998H8.99998C9.27612 0 9.49998 0.223858 9.49998 0.5C9.49998 0.776142 9.27612 1 8.99998 1H7.99998V2.11922C9.09832 2.20409 10.119 2.56622 10.992 3.13572C11.0116 3.10851 11.0336 3.08252 11.058 3.05806L11.858 2.25806C12.1021 2.01398 12.4978 2.01398 12.7419 2.25806C12.986 2.50214 12.986 2.89786 12.7419 3.14194L11.967 3.91682C13.1595 5.07925 13.9 6.70314 13.9 8.49998C13.9 12.0346 11.0346 14.9 7.49998 14.9C3.96535 14.9 1.09998 12.0346 1.09998 8.49998C1.09998 5.13362 3.69904 2.3743 6.99998 2.11922V1H5.99998C5.72383 1 5.49998 0.776142 5.49998 0.5ZM2.09998 8.49998C2.09998 5.51764 4.51764 3.09998 7.49998 3.09998C10.4823 3.09998 12.9 5.51764 12.9 8.49998C12.9 11.4823 10.4823 13.9 7.49998 13.9C4.51764 13.9 2.09998 11.4823 2.09998 8.49998ZM7.99998 4.5C7.99998 4.22386 7.77612 4 7.49998 4C7.22383 4 6.99998 4.22386 6.99998 4.5V9.5C6.99998 9.77614 7.22383 10 7.49998 10C7.77612 10 7.99998 9.77614 7.99998 9.5V4.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4f = [\n \"color\"\n];\nvar StretchHorizontallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4f);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14.4999 0.999992C14.2237 0.999992 13.9999 1.22385 13.9999 1.49999L13.9999 5.99995L0.999992 5.99995L0.999992 1.49999C0.999992 1.22385 0.776136 0.999992 0.499996 0.999992C0.223856 0.999992 -9.78509e-09 1.22385 -2.18556e-08 1.49999L4.07279e-07 13.4999C3.95208e-07 13.776 0.223855 13.9999 0.499996 13.9999C0.776136 13.9999 0.999992 13.776 0.999992 13.4999L0.999992 8.99992L13.9999 8.99992L13.9999 13.4999C13.9999 13.776 14.2237 13.9999 14.4999 13.9999C14.776 13.9999 14.9999 13.776 14.9999 13.4999L14.9999 1.49999C14.9999 1.22385 14.776 0.999992 14.4999 0.999992Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4g = [\n \"color\"\n];\nvar StretchVerticallyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4g);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.999878 0.5C0.999878 0.223858 1.22374 0 1.49988 0H13.4999C13.776 0 13.9999 0.223858 13.9999 0.5C13.9999 0.776142 13.776 1 13.4999 1H6H1.49988C1.22374 1 0.999878 0.776142 0.999878 0.5ZM9 14V1L6 1V14H1.49988C1.22374 14 0.999878 14.2239 0.999878 14.5C0.999878 14.7761 1.22374 15 1.49988 15H13.4999C13.776 15 13.9999 14.7761 13.9999 14.5C13.9999 14.2239 13.776 14 13.4999 14H9Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4h = [\n \"color\"\n];\nvar StrikethroughIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4h);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.00003 3.25C5.00003 2.97386 4.77617 2.75 4.50003 2.75C4.22389 2.75 4.00003 2.97386 4.00003 3.25V7.10003H2.49998C2.27906 7.10003 2.09998 7.27912 2.09998 7.50003C2.09998 7.72094 2.27906 7.90003 2.49998 7.90003H4.00003V8.55C4.00003 10.483 5.56703 12.05 7.50003 12.05C9.43303 12.05 11 10.483 11 8.55V7.90003H12.5C12.7209 7.90003 12.9 7.72094 12.9 7.50003C12.9 7.27912 12.7209 7.10003 12.5 7.10003H11V3.25C11 2.97386 10.7762 2.75 10.5 2.75C10.2239 2.75 10 2.97386 10 3.25V7.10003H5.00003V3.25ZM5.00003 7.90003V8.55C5.00003 9.93071 6.11932 11.05 7.50003 11.05C8.88074 11.05 10 9.93071 10 8.55V7.90003H5.00003Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4i = [\n \"color\"\n];\nvar SunIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4i);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 0C7.77614 0 8 0.223858 8 0.5V2.5C8 2.77614 7.77614 3 7.5 3C7.22386 3 7 2.77614 7 2.5V0.5C7 0.223858 7.22386 0 7.5 0ZM2.1967 2.1967C2.39196 2.00144 2.70854 2.00144 2.90381 2.1967L4.31802 3.61091C4.51328 3.80617 4.51328 4.12276 4.31802 4.31802C4.12276 4.51328 3.80617 4.51328 3.61091 4.31802L2.1967 2.90381C2.00144 2.70854 2.00144 2.39196 2.1967 2.1967ZM0.5 7C0.223858 7 0 7.22386 0 7.5C0 7.77614 0.223858 8 0.5 8H2.5C2.77614 8 3 7.77614 3 7.5C3 7.22386 2.77614 7 2.5 7H0.5ZM2.1967 12.8033C2.00144 12.608 2.00144 12.2915 2.1967 12.0962L3.61091 10.682C3.80617 10.4867 4.12276 10.4867 4.31802 10.682C4.51328 10.8772 4.51328 11.1938 4.31802 11.3891L2.90381 12.8033C2.70854 12.9986 2.39196 12.9986 2.1967 12.8033ZM12.5 7C12.2239 7 12 7.22386 12 7.5C12 7.77614 12.2239 8 12.5 8H14.5C14.7761 8 15 7.77614 15 7.5C15 7.22386 14.7761 7 14.5 7H12.5ZM10.682 4.31802C10.4867 4.12276 10.4867 3.80617 10.682 3.61091L12.0962 2.1967C12.2915 2.00144 12.608 2.00144 12.8033 2.1967C12.9986 2.39196 12.9986 2.70854 12.8033 2.90381L11.3891 4.31802C11.1938 4.51328 10.8772 4.51328 10.682 4.31802ZM8 12.5C8 12.2239 7.77614 12 7.5 12C7.22386 12 7 12.2239 7 12.5V14.5C7 14.7761 7.22386 15 7.5 15C7.77614 15 8 14.7761 8 14.5V12.5ZM10.682 10.682C10.8772 10.4867 11.1938 10.4867 11.3891 10.682L12.8033 12.0962C12.9986 12.2915 12.9986 12.608 12.8033 12.8033C12.608 12.9986 12.2915 12.9986 12.0962 12.8033L10.682 11.3891C10.4867 11.1938 10.4867 10.8772 10.682 10.682ZM5.5 7.5C5.5 6.39543 6.39543 5.5 7.5 5.5C8.60457 5.5 9.5 6.39543 9.5 7.5C9.5 8.60457 8.60457 9.5 7.5 9.5C6.39543 9.5 5.5 8.60457 5.5 7.5ZM7.5 4.5C5.84315 4.5 4.5 5.84315 4.5 7.5C4.5 9.15685 5.84315 10.5 7.5 10.5C9.15685 10.5 10.5 9.15685 10.5 7.5C10.5 5.84315 9.15685 4.5 7.5 4.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4j = [\n \"color\"\n];\nvar SwitchIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4j);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10.5 4C8.567 4 7 5.567 7 7.5C7 9.433 8.567 11 10.5 11C12.433 11 14 9.433 14 7.5C14 5.567 12.433 4 10.5 4ZM7.67133 11C6.65183 10.175 6 8.91363 6 7.5C6 6.08637 6.65183 4.82498 7.67133 4H4.5C2.567 4 1 5.567 1 7.5C1 9.433 2.567 11 4.5 11H7.67133ZM0 7.5C0 5.01472 2.01472 3 4.5 3H10.5C12.9853 3 15 5.01472 15 7.5C15 9.98528 12.9853 12 10.5 12H4.5C2.01472 12 0 9.98528 0 7.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4k = [\n \"color\"\n];\nvar SymbolIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4k);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.90321 7.29677C1.90321 10.341 4.11041 12.4147 6.58893 12.8439C6.87255 12.893 7.06266 13.1627 7.01355 13.4464C6.96444 13.73 6.69471 13.9201 6.41109 13.871C3.49942 13.3668 0.86084 10.9127 0.86084 7.29677C0.860839 5.76009 1.55996 4.55245 2.37639 3.63377C2.96124 2.97568 3.63034 2.44135 4.16846 2.03202L2.53205 2.03202C2.25591 2.03202 2.03205 1.80816 2.03205 1.53202C2.03205 1.25588 2.25591 1.03202 2.53205 1.03202L5.53205 1.03202C5.80819 1.03202 6.03205 1.25588 6.03205 1.53202L6.03205 4.53202C6.03205 4.80816 5.80819 5.03202 5.53205 5.03202C5.25591 5.03202 5.03205 4.80816 5.03205 4.53202L5.03205 2.68645L5.03054 2.68759L5.03045 2.68766L5.03044 2.68767L5.03043 2.68767C4.45896 3.11868 3.76059 3.64538 3.15554 4.3262C2.44102 5.13021 1.90321 6.10154 1.90321 7.29677ZM13.0109 7.70321C13.0109 4.69115 10.8505 2.6296 8.40384 2.17029C8.12093 2.11718 7.93465 1.84479 7.98776 1.56188C8.04087 1.27898 8.31326 1.0927 8.59616 1.14581C11.4704 1.68541 14.0532 4.12605 14.0532 7.70321C14.0532 9.23988 13.3541 10.4475 12.5377 11.3662C11.9528 12.0243 11.2837 12.5586 10.7456 12.968L12.3821 12.968C12.6582 12.968 12.8821 13.1918 12.8821 13.468C12.8821 13.7441 12.6582 13.968 12.3821 13.968L9.38205 13.968C9.10591 13.968 8.88205 13.7441 8.88205 13.468L8.88205 10.468C8.88205 10.1918 9.10591 9.96796 9.38205 9.96796C9.65819 9.96796 9.88205 10.1918 9.88205 10.468L9.88205 12.3135L9.88362 12.3123C10.4551 11.8813 11.1535 11.3546 11.7585 10.6738C12.4731 9.86976 13.0109 8.89844 13.0109 7.70321Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4l = [\n \"color\"\n];\nvar TableIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4l);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8 2H12.5C12.7761 2 13 2.22386 13 2.5V5H8V2ZM7 5V2H2.5C2.22386 2 2 2.22386 2 2.5V5H7ZM2 6V9H7V6H2ZM8 6H13V9H8V6ZM8 10H13V12.5C13 12.7761 12.7761 13 12.5 13H8V10ZM2 12.5V10H7V13H2.5C2.22386 13 2 12.7761 2 12.5ZM1 2.5C1 1.67157 1.67157 1 2.5 1H12.5C13.3284 1 14 1.67157 14 2.5V12.5C14 13.3284 13.3284 14 12.5 14H2.5C1.67157 14 1 13.3284 1 12.5V2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4m = [\n \"color\"\n];\nvar TargetIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4m);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.900024 7.50002C0.900024 3.85495 3.85495 0.900024 7.50002 0.900024C11.1451 0.900024 14.1 3.85495 14.1 7.50002C14.1 11.1451 11.1451 14.1 7.50002 14.1C3.85495 14.1 0.900024 11.1451 0.900024 7.50002ZM7.50002 1.80002C4.35201 1.80002 1.80002 4.35201 1.80002 7.50002C1.80002 10.648 4.35201 13.2 7.50002 13.2C10.648 13.2 13.2 10.648 13.2 7.50002C13.2 4.35201 10.648 1.80002 7.50002 1.80002ZM3.07504 7.50002C3.07504 5.05617 5.05618 3.07502 7.50004 3.07502C9.94388 3.07502 11.925 5.05617 11.925 7.50002C11.925 9.94386 9.94388 11.925 7.50004 11.925C5.05618 11.925 3.07504 9.94386 3.07504 7.50002ZM7.50004 3.92502C5.52562 3.92502 3.92504 5.52561 3.92504 7.50002C3.92504 9.47442 5.52563 11.075 7.50004 11.075C9.47444 11.075 11.075 9.47442 11.075 7.50002C11.075 5.52561 9.47444 3.92502 7.50004 3.92502ZM7.50004 5.25002C6.2574 5.25002 5.25004 6.25739 5.25004 7.50002C5.25004 8.74266 6.2574 9.75002 7.50004 9.75002C8.74267 9.75002 9.75004 8.74266 9.75004 7.50002C9.75004 6.25738 8.74267 5.25002 7.50004 5.25002ZM6.05004 7.50002C6.05004 6.69921 6.69923 6.05002 7.50004 6.05002C8.30084 6.05002 8.95004 6.69921 8.95004 7.50002C8.95004 8.30083 8.30084 8.95002 7.50004 8.95002C6.69923 8.95002 6.05004 8.30083 6.05004 7.50002Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4n = [\n \"color\"\n];\nvar TextIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4n);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.94993 2.95002L3.94993 4.49998C3.94993 4.74851 3.74845 4.94998 3.49993 4.94998C3.2514 4.94998 3.04993 4.74851 3.04993 4.49998V2.50004C3.04993 2.45246 3.05731 2.40661 3.07099 2.36357C3.12878 2.18175 3.29897 2.05002 3.49993 2.05002H11.4999C11.6553 2.05002 11.7922 2.12872 11.8731 2.24842C11.9216 2.32024 11.9499 2.40682 11.9499 2.50002L11.9499 2.50004V4.49998C11.9499 4.74851 11.7485 4.94998 11.4999 4.94998C11.2514 4.94998 11.0499 4.74851 11.0499 4.49998V2.95002H8.04993V12.05H9.25428C9.50281 12.05 9.70428 12.2515 9.70428 12.5C9.70428 12.7486 9.50281 12.95 9.25428 12.95H5.75428C5.50575 12.95 5.30428 12.7486 5.30428 12.5C5.30428 12.2515 5.50575 12.05 5.75428 12.05H6.94993V2.95002H3.94993Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4o = [\n \"color\"\n];\nvar TextAlignBottomIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4o);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.89949 5.50002C3.89949 5.27911 3.7204 5.10003 3.49949 5.10003C3.27857 5.10003 3.09949 5.27911 3.09949 5.50002L3.09949 12.5343L1.78233 11.2172C1.62612 11.061 1.37285 11.061 1.21664 11.2172C1.06043 11.3734 1.06043 11.6267 1.21664 11.7829L3.21664 13.7829C3.29166 13.8579 3.3934 13.9 3.49949 13.9C3.60557 13.9 3.70732 13.8579 3.78233 13.7829L5.78233 11.7829C5.93854 11.6267 5.93854 11.3734 5.78233 11.2172C5.62612 11.061 5.37285 11.061 5.21664 11.2172L3.89949 12.5343L3.89949 5.50002ZM8.49998 13C8.22383 13 7.99998 12.7762 7.99998 12.5C7.99998 12.2239 8.22383 12 8.49998 12H14.5C14.7761 12 15 12.2239 15 12.5C15 12.7762 14.7761 13 14.5 13H8.49998ZM8.49998 10C8.22383 10 7.99998 9.77617 7.99998 9.50002C7.99998 9.22388 8.22383 9.00002 8.49998 9.00002H14.5C14.7761 9.00002 15 9.22388 15 9.50002C15 9.77617 14.7761 10 14.5 10H8.49998ZM7.99998 6.50002C7.99998 6.77617 8.22383 7.00002 8.49998 7.00002H14.5C14.7761 7.00002 15 6.77617 15 6.50002C15 6.22388 14.7761 6.00002 14.5 6.00002H8.49998C8.22383 6.00002 7.99998 6.22388 7.99998 6.50002Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4p = [\n \"color\"\n];\nvar TextAlignCenterIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4p);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 4.5C2 4.22386 2.22386 4 2.5 4H12.5C12.7761 4 13 4.22386 13 4.5C13 4.77614 12.7761 5 12.5 5H2.5C2.22386 5 2 4.77614 2 4.5ZM4 7.5C4 7.22386 4.22386 7 4.5 7H10.5C10.7761 7 11 7.22386 11 7.5C11 7.77614 10.7761 8 10.5 8H4.5C4.22386 8 4 7.77614 4 7.5ZM3 10.5C3 10.2239 3.22386 10 3.5 10H11.5C11.7761 10 12 10.2239 12 10.5C12 10.7761 11.7761 11 11.5 11H3.5C3.22386 11 3 10.7761 3 10.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4q = [\n \"color\"\n];\nvar TextAlignJustifyIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2.5 4C2.22386 4 2 4.22386 2 4.5C2 4.77614 2.22386 5 2.5 5H12.5C12.7761 5 13 4.77614 13 4.5C13 4.22386 12.7761 4 12.5 4H2.5ZM2 7.5C2 7.22386 2.22386 7 2.5 7H12.5C12.7761 7 13 7.22386 13 7.5C13 7.77614 12.7761 8 12.5 8H2.5C2.22386 8 2 7.77614 2 7.5ZM2 10.5C2 10.2239 2.22386 10 2.5 10H12.5C12.7761 10 13 10.2239 13 10.5C13 10.7761 12.7761 11 12.5 11H2.5C2.22386 11 2 10.7761 2 10.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4r = [\n \"color\"\n];\nvar TextAlignLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4r);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 4.5C2 4.22386 2.22386 4 2.5 4H12.5C12.7761 4 13 4.22386 13 4.5C13 4.77614 12.7761 5 12.5 5H2.5C2.22386 5 2 4.77614 2 4.5ZM2 7.5C2 7.22386 2.22386 7 2.5 7H7.5C7.77614 7 8 7.22386 8 7.5C8 7.77614 7.77614 8 7.5 8H2.5C2.22386 8 2 7.77614 2 7.5ZM2 10.5C2 10.2239 2.22386 10 2.5 10H10.5C10.7761 10 11 10.2239 11 10.5C11 10.7761 10.7761 11 10.5 11H2.5C2.22386 11 2 10.7761 2 10.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4s = [\n \"color\"\n];\nvar TextAlignMiddleIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4s);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.49949 14.9C3.7204 14.9 3.89949 14.7209 3.89949 14.5L3.89949 10.4657L5.21664 11.7829C5.37285 11.9391 5.62612 11.9391 5.78233 11.7829C5.93854 11.6267 5.93854 11.3734 5.78233 11.2172L3.78233 9.21718C3.70732 9.14217 3.60557 9.10002 3.49949 9.10002C3.3934 9.10002 3.29166 9.14217 3.21664 9.21718L1.21664 11.2172C1.06043 11.3734 1.06043 11.6267 1.21664 11.7829C1.37285 11.9391 1.62612 11.9391 1.78233 11.7829L3.09949 10.4657L3.09949 14.5C3.09949 14.7209 3.27857 14.9 3.49949 14.9ZM7.99998 10.5C7.99998 10.7762 8.22383 11 8.49998 11H14.5C14.7761 11 15 10.7762 15 10.5C15 10.2239 14.7761 10 14.5 10H8.49998C8.22383 10 7.99998 10.2239 7.99998 10.5ZM7.99998 7.50002C7.99998 7.77617 8.22383 8.00002 8.49998 8.00002H14.5C14.7761 8.00002 15 7.77617 15 7.50002C15 7.22388 14.7761 7.00002 14.5 7.00002H8.49998C8.22383 7.00002 7.99998 7.22388 7.99998 7.50002ZM8.49998 5.00002C8.22383 5.00002 7.99998 4.77617 7.99998 4.50002C7.99998 4.22388 8.22383 4.00002 8.49998 4.00002H14.5C14.7761 4.00002 15 4.22388 15 4.50002C15 4.77617 14.7761 5.00002 14.5 5.00002H8.49998ZM3.89949 0.500025C3.89949 0.279111 3.7204 0.100025 3.49949 0.100025C3.27857 0.100025 3.09949 0.279111 3.09949 0.500025L3.09949 4.53434L1.78233 3.21718C1.62612 3.06097 1.37285 3.06097 1.21664 3.21718C1.06043 3.37339 1.06043 3.62666 1.21664 3.78287L3.21664 5.78287C3.29166 5.85788 3.3934 5.90002 3.49949 5.90002C3.60557 5.90002 3.70732 5.85788 3.78233 5.78287L5.78233 3.78287C5.93854 3.62666 5.93854 3.37339 5.78233 3.21718C5.62612 3.06097 5.37285 3.06097 5.21664 3.21718L3.89949 4.53434L3.89949 0.500025Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4t = [\n \"color\"\n];\nvar TextAlignRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4t);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M2 4.5C2 4.22386 2.22386 4 2.5 4H12.5C12.7761 4 13 4.22386 13 4.5C13 4.77614 12.7761 5 12.5 5H2.5C2.22386 5 2 4.77614 2 4.5ZM7 7.5C7 7.22386 7.22386 7 7.5 7H12.5C12.7761 7 13 7.22386 13 7.5C13 7.77614 12.7761 8 12.5 8H7.5C7.22386 8 7 7.77614 7 7.5ZM4 10.5C4 10.2239 4.22386 10 4.5 10H12.5C12.7761 10 13 10.2239 13 10.5C13 10.7761 12.7761 11 12.5 11H4.5C4.22386 11 4 10.7761 4 10.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4u = [\n \"color\"\n];\nvar TextAlignTopIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4u);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M3.89949 9.49998C3.89949 9.72089 3.7204 9.89997 3.49949 9.89997C3.27857 9.89997 3.09949 9.72089 3.09949 9.49998L3.09949 2.46566L1.78233 3.78282C1.62612 3.93903 1.37285 3.93903 1.21664 3.78282C1.06043 3.62661 1.06043 3.37334 1.21664 3.21713L3.21664 1.21713C3.29166 1.14212 3.3934 1.09998 3.49949 1.09998C3.60557 1.09998 3.70732 1.14212 3.78233 1.21713L5.78233 3.21713C5.93854 3.37334 5.93854 3.62661 5.78233 3.78282C5.62612 3.93903 5.37285 3.93903 5.21664 3.78282L3.89949 2.46566L3.89949 9.49998ZM8.49998 1.99998C8.22383 1.99998 7.99998 2.22383 7.99998 2.49998C7.99998 2.77612 8.22383 2.99998 8.49998 2.99998H14.5C14.7761 2.99998 15 2.77612 15 2.49998C15 2.22383 14.7761 1.99998 14.5 1.99998H8.49998ZM8.49998 4.99998C8.22383 4.99998 7.99998 5.22383 7.99998 5.49998C7.99998 5.77612 8.22383 5.99998 8.49998 5.99998H14.5C14.7761 5.99998 15 5.77612 15 5.49998C15 5.22383 14.7761 4.99998 14.5 4.99998H8.49998ZM7.99998 8.49998C7.99998 8.22383 8.22383 7.99998 8.49998 7.99998H14.5C14.7761 7.99998 15 8.22383 15 8.49998C15 8.77612 14.7761 8.99998 14.5 8.99998H8.49998C8.22383 8.99998 7.99998 8.77612 7.99998 8.49998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4v = [\n \"color\"\n];\nvar TextNoneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4v);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.3536 2.35355C13.5488 2.15829 13.5488 1.84171 13.3536 1.64645C13.1583 1.45118 12.8417 1.45118 12.6464 1.64645L11.9291 2.36383C11.9159 2.32246 11.897 2.28368 11.8732 2.24845C11.7923 2.12875 11.6554 2.05005 11.5001 2.05005H3.50005C3.29909 2.05005 3.1289 2.18178 3.07111 2.3636C3.05743 2.40665 3.05005 2.45249 3.05005 2.50007V4.50001C3.05005 4.74854 3.25152 4.95001 3.50005 4.95001C3.74858 4.95001 3.95005 4.74854 3.95005 4.50001V2.95005H6.95006V7.34284L1.64645 12.6464C1.45118 12.8417 1.45118 13.1583 1.64645 13.3536C1.84171 13.5488 2.15829 13.5488 2.35355 13.3536L6.95006 8.75705V12.0501H5.7544C5.50587 12.0501 5.3044 12.2515 5.3044 12.5001C5.3044 12.7486 5.50587 12.9501 5.7544 12.9501H9.2544C9.50293 12.9501 9.7044 12.7486 9.7044 12.5001C9.7044 12.2515 9.50293 12.0501 9.2544 12.0501H8.05006V7.65705L13.3536 2.35355ZM8.05006 6.24284L11.0501 3.24283V2.95005H8.05006V6.24284Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4w = [\n \"color\"\n];\nvar ThickArrowDownIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4w);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5 3.5C5 3.22386 5.22386 3 5.5 3H9.5C9.77614 3 10 3.22386 10 3.5V6H12.5C12.6873 6 12.8589 6.10467 12.9446 6.27121C13.0303 6.43774 13.0157 6.63821 12.9069 6.79062L7.90687 13.7906C7.81301 13.922 7.66148 14 7.5 14C7.33853 14 7.18699 13.922 7.09314 13.7906L2.09314 6.79062C1.98427 6.63821 1.96972 6.43774 2.05542 6.27121C2.14112 6.10467 2.31271 6 2.5 6H5V3.5ZM6 4V6.5C6 6.77614 5.77614 7 5.5 7H3.4716L7.5 12.6398L11.5284 7H9.5C9.22386 7 9 6.77614 9 6.5V4H6Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4x = [\n \"color\"\n];\nvar ThickArrowLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4x);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1 7.5C1 7.66148 1.07798 7.81301 1.20938 7.90687L8.20938 12.9069C8.36179 13.0157 8.56226 13.0303 8.72879 12.9446C8.89533 12.8589 9 12.6873 9 12.5L9 10L11.5 10C11.7761 10 12 9.77614 12 9.5L12 5.5C12 5.22386 11.7761 5 11.5 5L9 5L9 2.5C9 2.31271 8.89533 2.14112 8.72879 2.05542C8.56226 1.96972 8.36179 1.98427 8.20938 2.09313L1.20938 7.09314C1.07798 7.18699 1 7.33853 1 7.5ZM8 3.4716L8 5.5C8 5.77614 8.22386 6 8.5 6L11 6L11 9L8.5 9C8.22386 9 8 9.22386 8 9.5L8 11.5284L2.36023 7.5L8 3.4716Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4y = [\n \"color\"\n];\nvar ThickArrowRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14 7.5C14 7.66148 13.922 7.81301 13.7906 7.90687L6.79062 12.9069C6.63821 13.0157 6.43774 13.0303 6.27121 12.9446C6.10467 12.8589 6 12.6873 6 12.5L6 10L3.5 10C3.22386 10 3 9.77614 3 9.5L3 5.5C3 5.22386 3.22386 5 3.5 5L6 5L6 2.5C6 2.31271 6.10467 2.14112 6.27121 2.05542C6.43774 1.96972 6.63821 1.98427 6.79062 2.09313L13.7906 7.09314C13.922 7.18699 14 7.33853 14 7.5ZM7 3.4716L7 5.5C7 5.77614 6.77614 6 6.5 6L4 6L4 9L6.5 9C6.77614 9 7 9.22386 7 9.5L7 11.5284L12.6398 7.5L7 3.4716Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4z = [\n \"color\"\n];\nvar ThickArrowUpIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.5 1C7.66148 1 7.81301 1.07798 7.90687 1.20938L12.9069 8.20938C13.0157 8.36179 13.0303 8.56226 12.9446 8.72879C12.8589 8.89533 12.6873 9 12.5 9H10V11.5C10 11.7761 9.77614 12 9.5 12H5.5C5.22386 12 5 11.7761 5 11.5V9H2.5C2.31271 9 2.14112 8.89533 2.05542 8.72879C1.96972 8.56226 1.98427 8.36179 2.09314 8.20938L7.09314 1.20938C7.18699 1.07798 7.33853 1 7.5 1ZM3.4716 8H5.5C5.77614 8 6 8.22386 6 8.5V11H9V8.5C9 8.22386 9.22386 8 9.5 8H11.5284L7.5 2.36023L3.4716 8Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4A = [\n \"color\"\n];\nvar TimerIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4A);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49998 0.849976C7.22383 0.849976 6.99998 1.07383 6.99998 1.34998V3.52234C6.99998 3.79848 7.22383 4.02234 7.49998 4.02234C7.77612 4.02234 7.99998 3.79848 7.99998 3.52234V1.8718C10.8862 2.12488 13.15 4.54806 13.15 7.49998C13.15 10.6204 10.6204 13.15 7.49998 13.15C4.37957 13.15 1.84998 10.6204 1.84998 7.49998C1.84998 6.10612 2.35407 4.83128 3.19049 3.8459C3.36919 3.63538 3.34339 3.31985 3.13286 3.14115C2.92234 2.96245 2.60681 2.98825 2.42811 3.19877C1.44405 4.35808 0.849976 5.86029 0.849976 7.49998C0.849976 11.1727 3.82728 14.15 7.49998 14.15C11.1727 14.15 14.15 11.1727 14.15 7.49998C14.15 3.82728 11.1727 0.849976 7.49998 0.849976ZM6.74049 8.08072L4.22363 4.57237C4.15231 4.47295 4.16346 4.33652 4.24998 4.25C4.33649 4.16348 4.47293 4.15233 4.57234 4.22365L8.08069 6.74051C8.56227 7.08599 8.61906 7.78091 8.19998 8.2C7.78089 8.61909 7.08597 8.56229 6.74049 8.08072Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4B = [\n \"color\"\n];\nvar TokensIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4B);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.5 2C3.11929 2 2 3.11929 2 4.5C2 5.88072 3.11929 7 4.5 7C5.88072 7 7 5.88072 7 4.5C7 3.11929 5.88072 2 4.5 2ZM3 4.5C3 3.67157 3.67157 3 4.5 3C5.32843 3 6 3.67157 6 4.5C6 5.32843 5.32843 6 4.5 6C3.67157 6 3 5.32843 3 4.5ZM10.5 2C9.11929 2 8 3.11929 8 4.5C8 5.88072 9.11929 7 10.5 7C11.8807 7 13 5.88072 13 4.5C13 3.11929 11.8807 2 10.5 2ZM9 4.5C9 3.67157 9.67157 3 10.5 3C11.3284 3 12 3.67157 12 4.5C12 5.32843 11.3284 6 10.5 6C9.67157 6 9 5.32843 9 4.5ZM2 10.5C2 9.11929 3.11929 8 4.5 8C5.88072 8 7 9.11929 7 10.5C7 11.8807 5.88072 13 4.5 13C3.11929 13 2 11.8807 2 10.5ZM4.5 9C3.67157 9 3 9.67157 3 10.5C3 11.3284 3.67157 12 4.5 12C5.32843 12 6 11.3284 6 10.5C6 9.67157 5.32843 9 4.5 9ZM10.5 8C9.11929 8 8 9.11929 8 10.5C8 11.8807 9.11929 13 10.5 13C11.8807 13 13 11.8807 13 10.5C13 9.11929 11.8807 8 10.5 8ZM9 10.5C9 9.67157 9.67157 9 10.5 9C11.3284 9 12 9.67157 12 10.5C12 11.3284 11.3284 12 10.5 12C9.67157 12 9 11.3284 9 10.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4C = [\n \"color\"\n];\nvar TrackNextIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4C);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M13.0502 2.74989C13.0502 2.44613 12.804 2.19989 12.5002 2.19989C12.1965 2.19989 11.9502 2.44613 11.9502 2.74989V7.2825C11.9046 7.18802 11.8295 7.10851 11.7334 7.05776L2.73338 2.30776C2.5784 2.22596 2.3919 2.23127 2.24182 2.32176C2.09175 2.41225 2 2.57471 2 2.74995V12.25C2 12.4252 2.09175 12.5877 2.24182 12.6781C2.3919 12.7686 2.5784 12.7739 2.73338 12.6921L11.7334 7.94214C11.8295 7.89139 11.9046 7.81188 11.9502 7.7174V12.2499C11.9502 12.5536 12.1965 12.7999 12.5002 12.7999C12.804 12.7999 13.0502 12.5536 13.0502 12.2499V2.74989ZM3 11.4207V3.5792L10.4288 7.49995L3 11.4207Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4D = [\n \"color\"\n];\nvar TrackPreviousIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4D);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.94976 2.74989C1.94976 2.44613 2.196 2.19989 2.49976 2.19989C2.80351 2.19989 3.04976 2.44613 3.04976 2.74989V7.2825C3.0954 7.18802 3.17046 7.10851 3.26662 7.05776L12.2666 2.30776C12.4216 2.22596 12.6081 2.23127 12.7582 2.32176C12.9083 2.41225 13 2.57471 13 2.74995V12.25C13 12.4252 12.9083 12.5877 12.7582 12.6781C12.6081 12.7686 12.4216 12.7739 12.2666 12.6921L3.26662 7.94214C3.17046 7.89139 3.0954 7.81188 3.04976 7.7174V12.2499C3.04976 12.5536 2.80351 12.7999 2.49976 12.7999C2.196 12.7999 1.94976 12.5536 1.94976 12.2499V2.74989ZM4.57122 7.49995L12 11.4207V3.5792L4.57122 7.49995Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4E = [\n \"color\"\n];\nvar TransformIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4E);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.849976 1.74998C0.849976 1.25292 1.25292 0.849976 1.74998 0.849976H3.24998C3.74703 0.849976 4.14998 1.25292 4.14998 1.74998V2.04998H10.85V1.74998C10.85 1.25292 11.2529 0.849976 11.75 0.849976H13.25C13.747 0.849976 14.15 1.25292 14.15 1.74998V3.24998C14.15 3.74703 13.747 4.14998 13.25 4.14998H12.95V10.85H13.25C13.747 10.85 14.15 11.2529 14.15 11.75V13.25C14.15 13.747 13.747 14.15 13.25 14.15H11.75C11.2529 14.15 10.85 13.747 10.85 13.25V12.95H4.14998V13.25C4.14998 13.747 3.74703 14.15 3.24998 14.15H1.74998C1.25292 14.15 0.849976 13.747 0.849976 13.25V11.75C0.849976 11.2529 1.25292 10.85 1.74998 10.85H2.04998V4.14998H1.74998C1.25292 4.14998 0.849976 3.74703 0.849976 3.24998V1.74998ZM2.94998 4.14998V10.85H3.24998C3.74703 10.85 4.14998 11.2529 4.14998 11.75V12.05H10.85V11.75C10.85 11.2529 11.2529 10.85 11.75 10.85H12.05V4.14998H11.75C11.2529 4.14998 10.85 3.74703 10.85 3.24998V2.94998H4.14998V3.24998C4.14998 3.74703 3.74703 4.14998 3.24998 4.14998H2.94998ZM2.34998 1.74998H1.74998V2.34998V2.64998V3.24998H2.34998H2.64998H3.24998V2.64998V2.34998V1.74998H2.64998H2.34998ZM5.09998 5.99998C5.09998 5.50292 5.50292 5.09998 5.99998 5.09998H6.99998C7.49703 5.09998 7.89998 5.50292 7.89998 5.99998V6.99998C7.89998 7.03591 7.89787 7.07134 7.89378 7.10618C7.92861 7.10208 7.96405 7.09998 7.99998 7.09998H8.99998C9.49703 7.09998 9.89998 7.50292 9.89998 7.99998V8.99998C9.89998 9.49703 9.49703 9.89998 8.99998 9.89998H7.99998C7.50292 9.89998 7.09998 9.49703 7.09998 8.99998V7.99998C7.09998 7.96405 7.10208 7.92861 7.10618 7.89378C7.07134 7.89787 7.03591 7.89998 6.99998 7.89998H5.99998C5.50292 7.89998 5.09998 7.49703 5.09998 6.99998V5.99998ZM6.09998 5.99998H5.99998V6.09998V6.89998V6.99998H6.09998H6.89998H6.99998V6.89998V6.09998V5.99998H6.89998H6.09998ZM7.99998 7.99998H8.09998H8.89998H8.99998V8.09998V8.89998V8.99998H8.89998H8.09998H7.99998V8.89998V8.09998V7.99998ZM2.64998 11.75H2.34998H1.74998V12.35V12.65V13.25H2.34998H2.64998H3.24998V12.65V12.35V11.75H2.64998ZM11.75 1.74998H12.35H12.65H13.25V2.34998V2.64998V3.24998H12.65H12.35H11.75V2.64998V2.34998V1.74998ZM12.65 11.75H12.35H11.75V12.35V12.65V13.25H12.35H12.65H13.25V12.65V12.35V11.75H12.65Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4F = [\n \"color\"\n];\nvar TransparencyGridIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4F);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n opacity: \".25\",\n d: \"M0 0H3V3H0V0ZM6 3H3V6H0V9H3V12H0V15H3V12H6V15H9V12H12V15H15V12H12V9H15V6H12V3H15V0H12V3H9V0H6V3ZM6 6V3H9V6H6ZM6 9H3V6H6V9ZM9 9V6H12V9H9ZM9 9H6V12H9V9Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4G = [\n \"color\"\n];\nvar TrashIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4G);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.5 1C5.22386 1 5 1.22386 5 1.5C5 1.77614 5.22386 2 5.5 2H9.5C9.77614 2 10 1.77614 10 1.5C10 1.22386 9.77614 1 9.5 1H5.5ZM3 3.5C3 3.22386 3.22386 3 3.5 3H5H10H11.5C11.7761 3 12 3.22386 12 3.5C12 3.77614 11.7761 4 11.5 4H11V12C11 12.5523 10.5523 13 10 13H5C4.44772 13 4 12.5523 4 12V4L3.5 4C3.22386 4 3 3.77614 3 3.5ZM5 4H10V12H5V4Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4H = [\n \"color\"\n];\nvar TriangleDownIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4H);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4 6H11L7.5 10.5L4 6Z\",\n fill: color\n }));\n});\nvar _excluded$4I = [\n \"color\"\n];\nvar TriangleLeftIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4I);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M9 4L9 11L4.5 7.5L9 4Z\",\n fill: color\n }));\n});\nvar _excluded$4J = [\n \"color\"\n];\nvar TriangleRightIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4J);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6 11L6 4L10.5 7.5L6 11Z\",\n fill: color\n }));\n});\nvar _excluded$4K = [\n \"color\"\n];\nvar TriangleUpIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4K);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4 9H11L7.5 4.5L4 9Z\",\n fill: color\n }));\n});\nvar _excluded$4L = [\n \"color\"\n];\nvar TwitterLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4L);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.23336 4.69629C7.23336 2.96884 8.63335 1.56857 10.36 1.56857C11.3736 1.56857 12.183 2.04804 12.7254 2.74385C13.3079 2.62467 13.8557 2.40913 14.3513 2.11508C14.1559 2.72598 13.7424 3.2396 13.2033 3.56463C13.2038 3.56568 13.2042 3.56674 13.2047 3.56779C13.7334 3.50361 14.2364 3.36302 14.7048 3.15546L14.7037 3.15715C14.3667 3.66183 13.9431 4.10736 13.4561 4.47034C13.4823 4.64672 13.4956 4.82427 13.4956 5.00079C13.4956 8.6871 10.6873 12.9746 5.52122 12.9746C3.93906 12.9746 2.46544 12.511 1.22505 11.7152C0.992632 11.5661 0.925108 11.2568 1.07423 11.0244C1.0874 11.0038 1.10183 10.9846 1.11734 10.9666C1.20582 10.8202 1.37438 10.7309 1.5554 10.7522C2.47066 10.8601 3.38568 10.7485 4.19219 10.3962C3.39226 10.0434 2.77129 9.35975 2.50204 8.51974C2.45359 8.3686 2.48835 8.20311 2.59351 8.08422C2.59716 8.0801 2.60087 8.07606 2.60464 8.0721C1.96391 7.50819 1.55973 6.68208 1.55973 5.76143V5.72759C1.55973 5.56814 1.64411 5.42059 1.78155 5.33974C1.82671 5.31317 1.87537 5.29511 1.92532 5.28558C1.70549 4.86154 1.58116 4.37984 1.58116 3.86958C1.58116 3.40165 1.58384 2.81192 1.91332 2.28081C1.98718 2.16175 2.10758 2.08915 2.2364 2.07195C2.42588 2.01237 2.64087 2.06969 2.77406 2.23302C3.86536 3.57126 5.44066 4.49583 7.23366 4.73961L7.23336 4.69629ZM5.52122 11.9746C4.73387 11.9746 3.97781 11.8435 3.27248 11.6023C4.13012 11.4538 4.95307 11.1159 5.66218 10.5602C5.81211 10.4427 5.87182 10.2435 5.81126 10.0629C5.7507 9.88234 5.583 9.75943 5.39255 9.75607C4.68968 9.74366 4.06712 9.39716 3.67793 8.86845C3.86828 8.85306 4.05428 8.82039 4.23445 8.77167C4.43603 8.71716 4.57363 8.53114 4.56674 8.32243C4.55985 8.11372 4.41029 7.93718 4.20555 7.89607C3.42694 7.73977 2.79883 7.16764 2.56169 6.42174C2.76255 6.47025 2.97102 6.4991 3.18482 6.5061C3.38563 6.51267 3.56646 6.38533 3.62795 6.19405C3.68943 6.00277 3.61666 5.79391 3.44963 5.68224C2.86523 5.29155 2.48116 4.62464 2.48116 3.86958C2.48116 3.70213 2.48352 3.55268 2.49355 3.41719C3.85115 4.79913 5.70873 5.68931 7.77588 5.79338C7.93225 5.80126 8.08328 5.73543 8.18395 5.61553C8.28463 5.49562 8.32332 5.33548 8.28851 5.18284C8.25255 5.02517 8.23336 4.86284 8.23336 4.69629C8.23336 3.52085 9.18591 2.56857 10.36 2.56857C11.5943 2.56857 12.4956 3.71208 12.4956 5.00079C12.4956 8.25709 10.0202 11.9746 5.52122 11.9746Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4M = [\n \"color\"\n];\nvar UnderlineIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4M);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M5.00001 2.75C5.00001 2.47386 4.77615 2.25 4.50001 2.25C4.22387 2.25 4.00001 2.47386 4.00001 2.75V8.05C4.00001 9.983 5.56702 11.55 7.50001 11.55C9.43301 11.55 11 9.983 11 8.05V2.75C11 2.47386 10.7762 2.25 10.5 2.25C10.2239 2.25 10 2.47386 10 2.75V8.05C10 9.43071 8.88072 10.55 7.50001 10.55C6.1193 10.55 5.00001 9.43071 5.00001 8.05V2.75ZM3.49998 13.1001C3.27906 13.1001 3.09998 13.2791 3.09998 13.5001C3.09998 13.721 3.27906 13.9001 3.49998 13.9001H11.5C11.7209 13.9001 11.9 13.721 11.9 13.5001C11.9 13.2791 11.7209 13.1001 11.5 13.1001H3.49998Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4N = [\n \"color\"\n];\nvar UpdateIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4N);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.90321 7.29677C1.90321 10.341 4.11041 12.4147 6.58893 12.8439C6.87255 12.893 7.06266 13.1627 7.01355 13.4464C6.96444 13.73 6.69471 13.9201 6.41109 13.871C3.49942 13.3668 0.86084 10.9127 0.86084 7.29677C0.860839 5.76009 1.55996 4.55245 2.37639 3.63377C2.96124 2.97568 3.63034 2.44135 4.16846 2.03202L2.53205 2.03202C2.25591 2.03202 2.03205 1.80816 2.03205 1.53202C2.03205 1.25588 2.25591 1.03202 2.53205 1.03202L5.53205 1.03202C5.80819 1.03202 6.03205 1.25588 6.03205 1.53202L6.03205 4.53202C6.03205 4.80816 5.80819 5.03202 5.53205 5.03202C5.25591 5.03202 5.03205 4.80816 5.03205 4.53202L5.03205 2.68645L5.03054 2.68759L5.03045 2.68766L5.03044 2.68767L5.03043 2.68767C4.45896 3.11868 3.76059 3.64538 3.15554 4.3262C2.44102 5.13021 1.90321 6.10154 1.90321 7.29677ZM13.0109 7.70321C13.0109 4.69115 10.8505 2.6296 8.40384 2.17029C8.12093 2.11718 7.93465 1.84479 7.98776 1.56188C8.04087 1.27898 8.31326 1.0927 8.59616 1.14581C11.4704 1.68541 14.0532 4.12605 14.0532 7.70321C14.0532 9.23988 13.3541 10.4475 12.5377 11.3662C11.9528 12.0243 11.2837 12.5586 10.7456 12.968L12.3821 12.968C12.6582 12.968 12.8821 13.1918 12.8821 13.468C12.8821 13.7441 12.6582 13.968 12.3821 13.968L9.38205 13.968C9.10591 13.968 8.88205 13.7441 8.88205 13.468L8.88205 10.468C8.88205 10.1918 9.10591 9.96796 9.38205 9.96796C9.65819 9.96796 9.88205 10.1918 9.88205 10.468L9.88205 12.3135L9.88362 12.3123C10.4551 11.8813 11.1535 11.3546 11.7585 10.6738C12.4731 9.86976 13.0109 8.89844 13.0109 7.70321Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4O = [\n \"color\"\n];\nvar UploadIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4O);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.81825 1.18188C7.64251 1.00615 7.35759 1.00615 7.18185 1.18188L4.18185 4.18188C4.00611 4.35762 4.00611 4.64254 4.18185 4.81828C4.35759 4.99401 4.64251 4.99401 4.81825 4.81828L7.05005 2.58648V9.49996C7.05005 9.74849 7.25152 9.94996 7.50005 9.94996C7.74858 9.94996 7.95005 9.74849 7.95005 9.49996V2.58648L10.1819 4.81828C10.3576 4.99401 10.6425 4.99401 10.8182 4.81828C10.994 4.64254 10.994 4.35762 10.8182 4.18188L7.81825 1.18188ZM2.5 9.99997C2.77614 9.99997 3 10.2238 3 10.5V12C3 12.5538 3.44565 13 3.99635 13H11.0012C11.5529 13 12 12.5528 12 12V10.5C12 10.2238 12.2239 9.99997 12.5 9.99997C12.7761 9.99997 13 10.2238 13 10.5V12C13 13.104 12.1062 14 11.0012 14H3.99635C2.89019 14 2 13.103 2 12V10.5C2 10.2238 2.22386 9.99997 2.5 9.99997Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4P = [\n \"color\"\n];\nvar ValueIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4P);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M0.877075 7.49988C0.877075 3.84219 3.84222 0.877045 7.49991 0.877045C11.1576 0.877045 14.1227 3.84219 14.1227 7.49988C14.1227 11.1575 11.1576 14.1227 7.49991 14.1227C3.84222 14.1227 0.877075 11.1575 0.877075 7.49988ZM7.49991 1.82704C4.36689 1.82704 1.82708 4.36686 1.82708 7.49988C1.82708 10.6329 4.36689 13.1727 7.49991 13.1727C10.6329 13.1727 13.1727 10.6329 13.1727 7.49988C13.1727 4.36686 10.6329 1.82704 7.49991 1.82704Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4Q = [\n \"color\"\n];\nvar ValueNoneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4Q);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49985 0.877045C3.84216 0.877045 0.877014 3.84219 0.877014 7.49988C0.877014 9.1488 1.47963 10.657 2.47665 11.8162L1.64643 12.6464C1.45117 12.8417 1.45117 13.1583 1.64643 13.3535C1.8417 13.5488 2.15828 13.5488 2.35354 13.3535L3.18377 12.5233C4.34296 13.5202 5.85104 14.1227 7.49985 14.1227C11.1575 14.1227 14.1227 11.1575 14.1227 7.49988C14.1227 5.85107 13.5202 4.34299 12.5233 3.1838L13.3535 2.35354C13.5488 2.15827 13.5488 1.84169 13.3535 1.64643C13.1583 1.45117 12.8417 1.45117 12.6464 1.64643L11.8162 2.47668C10.657 1.47966 9.14877 0.877045 7.49985 0.877045ZM11.1422 3.15066C10.1567 2.32449 8.88639 1.82704 7.49985 1.82704C4.36683 1.82704 1.82701 4.36686 1.82701 7.49988C1.82701 8.88642 2.32446 10.1568 3.15063 11.1422L11.1422 3.15066ZM3.85776 11.8493C4.84317 12.6753 6.11343 13.1727 7.49985 13.1727C10.6328 13.1727 13.1727 10.6329 13.1727 7.49988C13.1727 6.11346 12.6753 4.8432 11.8493 3.85779L3.85776 11.8493Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4R = [\n \"color\"\n];\nvar VercelLogoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4R);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7.49998 1L6.92321 2.00307L1.17498 12L0.599976 13H1.7535H13.2464H14.4L13.825 12L8.07674 2.00307L7.49998 1ZM7.49998 3.00613L2.3285 12H12.6714L7.49998 3.00613Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4S = [\n \"color\"\n];\nvar VideoIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4S);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.76447 3.12199C5.63151 3.04859 6.56082 3 7.5 3C8.43918 3 9.36849 3.04859 10.2355 3.12199C11.2796 3.21037 11.9553 3.27008 12.472 3.39203C12.9425 3.50304 13.2048 3.64976 13.4306 3.88086C13.4553 3.90618 13.4902 3.94414 13.5133 3.97092C13.7126 4.20149 13.8435 4.4887 13.918 5.03283C13.9978 5.6156 14 6.37644 14 7.52493C14 8.66026 13.9978 9.41019 13.9181 9.98538C13.8439 10.5206 13.7137 10.8061 13.5125 11.0387C13.4896 11.0651 13.4541 11.1038 13.4296 11.1287C13.2009 11.3625 12.9406 11.5076 12.4818 11.6164C11.9752 11.7365 11.3143 11.7942 10.2878 11.8797C9.41948 11.9521 8.47566 12 7.5 12C6.52434 12 5.58052 11.9521 4.7122 11.8797C3.68572 11.7942 3.02477 11.7365 2.51816 11.6164C2.05936 11.5076 1.7991 11.3625 1.57037 11.1287C1.54593 11.1038 1.51035 11.0651 1.48748 11.0387C1.28628 10.8061 1.15612 10.5206 1.08193 9.98538C1.00221 9.41019 1 8.66026 1 7.52493C1 6.37644 1.00216 5.6156 1.082 5.03283C1.15654 4.4887 1.28744 4.20149 1.48666 3.97092C1.5098 3.94414 1.54468 3.90618 1.56942 3.88086C1.7952 3.64976 2.05752 3.50304 2.52796 3.39203C3.04473 3.27008 3.7204 3.21037 4.76447 3.12199ZM0 7.52493C0 5.28296 0 4.16198 0.729985 3.31713C0.766457 3.27491 0.815139 3.22194 0.854123 3.18204C1.63439 2.38339 2.64963 2.29744 4.68012 2.12555C5.56923 2.05028 6.52724 2 7.5 2C8.47276 2 9.43077 2.05028 10.3199 2.12555C12.3504 2.29744 13.3656 2.38339 14.1459 3.18204C14.1849 3.22194 14.2335 3.27491 14.27 3.31713C15 4.16198 15 5.28296 15 7.52493C15 9.74012 15 10.8477 14.2688 11.6929C14.2326 11.7348 14.1832 11.7885 14.1444 11.8281C13.3629 12.6269 12.3655 12.71 10.3709 12.8763C9.47971 12.9505 8.50782 13 7.5 13C6.49218 13 5.52028 12.9505 4.62915 12.8763C2.63446 12.71 1.63712 12.6269 0.855558 11.8281C0.816844 11.7885 0.767442 11.7348 0.731221 11.6929C0 10.8477 0 9.74012 0 7.52493ZM5.25 5.38264C5.25 5.20225 5.43522 5.08124 5.60041 5.15369L10.428 7.27105C10.6274 7.35853 10.6274 7.64147 10.428 7.72895L5.60041 9.84631C5.43522 9.91876 5.25 9.79775 5.25 9.61736V5.38264Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4T = [\n \"color\"\n];\nvar ViewGridIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4T);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M7 2H1.5C1.22386 2 1 2.22386 1 2.5V7H7V2ZM8 2V7H14V2.5C14 2.22386 13.7761 2 13.5 2H8ZM7 8H1V12.5C1 12.7761 1.22386 13 1.5 13H7V8ZM8 13V8H14V12.5C14 12.7761 13.7761 13 13.5 13H8ZM1.5 1C0.671573 1 0 1.67157 0 2.5V12.5C0 13.3284 0.671573 14 1.5 14H13.5C14.3284 14 15 13.3284 15 12.5V2.5C15 1.67157 14.3284 1 13.5 1H1.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4U = [\n \"color\"\n];\nvar ViewHorizontalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4U);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M1.5 2H13.5C13.7761 2 14 2.22386 14 2.5V7H1V2.5C1 2.22386 1.22386 2 1.5 2ZM1 8V12.5C1 12.7761 1.22386 13 1.5 13H13.5C13.7761 13 14 12.7761 14 12.5V8H1ZM0 2.5C0 1.67157 0.671573 1 1.5 1H13.5C14.3284 1 15 1.67157 15 2.5V12.5C15 13.3284 14.3284 14 13.5 14H1.5C0.671573 14 0 13.3284 0 12.5V2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4V = [\n \"color\"\n];\nvar ViewNoneIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4V);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M14 2.58711L1.85163 13H13.5C13.7761 13 14 12.7761 14 12.5V2.58711ZM0.762879 13.8067L0.825396 13.8796L0.854717 13.8545C1.05017 13.9478 1.26899 14 1.5 14H13.5C14.3284 14 15 13.3284 15 12.5V2.5C15 1.93949 14.6926 1.45078 14.2371 1.19331L14.1746 1.12037L14.1453 1.1455C13.9498 1.05222 13.731 1 13.5 1H1.5C0.671573 1 0 1.67157 0 2.5V12.5C0 13.0605 0.307435 13.5492 0.762879 13.8067ZM1 12.4129L13.1484 2H1.5C1.22386 2 1 2.22386 1 2.5V12.4129Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4W = [\n \"color\"\n];\nvar ViewVerticalIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4W);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M8 2H13.5C13.7761 2 14 2.22386 14 2.5V12.5C14 12.7761 13.7761 13 13.5 13H8V2ZM7 2H1.5C1.22386 2 1 2.22386 1 2.5V12.5C1 12.7761 1.22386 13 1.5 13H7V2ZM0 2.5C0 1.67157 0.671573 1 1.5 1H13.5C14.3284 1 15 1.67157 15 2.5V12.5C15 13.3284 14.3284 14 13.5 14H1.5C0.671573 14 0 13.3284 0 12.5V2.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4X = [\n \"color\"\n];\nvar WidthIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4X);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M4.81812 4.68161C4.99386 4.85734 4.99386 5.14227 4.81812 5.318L3.08632 7.0498H11.9135L10.1817 5.318C10.006 5.14227 10.006 4.85734 10.1817 4.68161C10.3575 4.50587 10.6424 4.50587 10.8181 4.68161L13.3181 7.18161C13.4939 7.35734 13.4939 7.64227 13.3181 7.818L10.8181 10.318C10.6424 10.4937 10.3575 10.4937 10.1817 10.318C10.006 10.1423 10.006 9.85734 10.1817 9.68161L11.9135 7.9498H3.08632L4.81812 9.68161C4.99386 9.85734 4.99386 10.1423 4.81812 10.318C4.64239 10.4937 4.35746 10.4937 4.18173 10.318L1.68173 7.818C1.50599 7.64227 1.50599 7.35734 1.68173 7.18161L4.18173 4.68161C4.35746 4.50587 4.64239 4.50587 4.81812 4.68161Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4Y = [\n \"color\"\n];\nvar ZoomInIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4Y);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M10 6.5C10 8.433 8.433 10 6.5 10C4.567 10 3 8.433 3 6.5C3 4.567 4.567 3 6.5 3C8.433 3 10 4.567 10 6.5ZM9.30884 10.0159C8.53901 10.6318 7.56251 11 6.5 11C4.01472 11 2 8.98528 2 6.5C2 4.01472 4.01472 2 6.5 2C8.98528 2 11 4.01472 11 6.5C11 7.56251 10.6318 8.53901 10.0159 9.30884L12.8536 12.1464C13.0488 12.3417 13.0488 12.6583 12.8536 12.8536C12.6583 13.0488 12.3417 13.0488 12.1464 12.8536L9.30884 10.0159ZM4.25 6.5C4.25 6.22386 4.47386 6 4.75 6H6V4.75C6 4.47386 6.22386 4.25 6.5 4.25C6.77614 4.25 7 4.47386 7 4.75V6H8.25C8.52614 6 8.75 6.22386 8.75 6.5C8.75 6.77614 8.52614 7 8.25 7H7V8.25C7 8.52614 6.77614 8.75 6.5 8.75C6.22386 8.75 6 8.52614 6 8.25V7H4.75C4.47386 7 4.25 6.77614 4.25 6.5Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\nvar _excluded$4Z = [\n \"color\"\n];\nvar ZoomOutIcon = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function(_ref, forwardedRef) {\n var _ref$color = _ref.color, color = _ref$color === void 0 ? \"currentColor\" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$4Z);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"svg\", Object.assign({\n width: \"15\",\n height: \"15\",\n viewBox: \"0 0 15 15\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(\"path\", {\n d: \"M6.5 10C8.433 10 10 8.433 10 6.5C10 4.567 8.433 3 6.5 3C4.567 3 3 4.567 3 6.5C3 8.433 4.567 10 6.5 10ZM6.5 11C7.56251 11 8.53901 10.6318 9.30884 10.0159L12.1464 12.8536C12.3417 13.0488 12.6583 13.0488 12.8536 12.8536C13.0488 12.6583 13.0488 12.3417 12.8536 12.1464L10.0159 9.30884C10.6318 8.53901 11 7.56251 11 6.5C11 4.01472 8.98528 2 6.5 2C4.01472 2 2 4.01472 2 6.5C2 8.98528 4.01472 11 6.5 11ZM4.75 6C4.47386 6 4.25 6.22386 4.25 6.5C4.25 6.77614 4.47386 7 4.75 7H8.25C8.52614 7 8.75 6.77614 8.75 6.5C8.75 6.22386 8.52614 6 8.25 6H4.75Z\",\n fill: color,\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n }));\n});\n //# sourceMappingURL=react-icons.esm.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWljb25zL2Rpc3QvcmVhY3QtaWNvbnMuZXNtLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQWtEO0FBRWxELFNBQVNFLDhCQUE4QkMsTUFBTSxFQUFFQyxRQUFRO0lBQ3JELElBQUlELFVBQVUsTUFBTSxPQUFPLENBQUM7SUFDNUIsSUFBSUUsU0FBUyxDQUFDO0lBQ2QsSUFBSUMsYUFBYUMsT0FBT0MsSUFBSSxDQUFDTDtJQUM3QixJQUFJTSxLQUFLQztJQUVULElBQUtBLElBQUksR0FBR0EsSUFBSUosV0FBV0ssTUFBTSxFQUFFRCxJQUFLO1FBQ3RDRCxNQUFNSCxVQUFVLENBQUNJLEVBQUU7UUFDbkIsSUFBSU4sU0FBU1EsT0FBTyxDQUFDSCxRQUFRLEdBQUc7UUFDaENKLE1BQU0sQ0FBQ0ksSUFBSSxHQUFHTixNQUFNLENBQUNNLElBQUk7SUFDM0I7SUFFQSxPQUFPSjtBQUNUO0FBRUEsSUFBSVEsWUFBWTtJQUFDO0NBQVE7QUFDekIsSUFBSUMsb0JBQW9CLFdBQVcsR0FBRWQsaURBQVVBLENBQUMsU0FBVWUsSUFBSSxFQUFFQyxZQUFZO0lBQzFFLElBQUlDLGFBQWFGLEtBQUtHLEtBQUssRUFDdkJBLFFBQVFELGVBQWUsS0FBSyxJ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O1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJ1RixHQUFHO1FBQ0hDLEdBQUc7UUFDSHBFLE9BQU87UUFDUEMsUUFBUTtRQUNSb0UsSUFBSTtRQUNKbEUsTUFBTU47SUFDUixr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QixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1Isa0JBQUlqQixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCdUYsR0FBRztRQUNIQyxHQUFHO1FBQ0hwRSxPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSmxFLE1BQU1OO0lBQ1I7QUFDRjtBQUVBLElBQUlvRixjQUFjO0lBQUM7Q0FBUTtBQUMzQixJQUFJQyxrQkFBa0IsV0FBVyxHQUFFdkcsaURBQVVBLENBQUMsU0FBVWUsSUFBSSxFQUFFQyxZQUFZO0lBQ3hFLElBQUlDLGFBQWFGLEtBQUtHLEtBQUssRUFDdkJBLFFBQVFELGVBQWUsS0FBSyxJQUFJLGlCQUFpQkEsWUFDakRFLFFBQVFqQiw4QkFBOEJhLE1BQU11RjtJQUVoRCxxQkFBT3JHLG9EQUFhQSxDQUFDLE9BQU9NLE9BQU9hLE1BQU0sQ0FBQztRQUN4Q0MsT0FBTztRQUNQQyxRQUFRO1FBQ1JDLFNBQVM7UUFDVEMsTUFBTTtRQUNOQyxPQUFPO0lBQ1QsR0FBR04sT0FBTztRQUNSTyxLQUFLVjtJQUNQLGtCQUFJZixvREFBYUEsQ0FBQyxRQUFRO1FBQ3hCMEIsR0FBRztRQUNISCxNQUFNTjtRQUNOVSxVQUFVO1FBQ1ZDLFVBQVU7SUFDWixrQkFBSTVCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFDUm9FLElBQUk7UUFDSlMsV0FBVztRQUNYM0UsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEJvQixPQUFPO1FBQ1BDLFFBQVE7UUFD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Q0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFBSWpCLG9EQUFhQSxDQUFDLFVBQVU7UUFDMUJ5USxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsR0FBRztRQUNIcFAsTUFBTU47SUFDUixrQkFB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LENBQUMsUUFBUTtRQUN4QjBCLEdBQUc7UUFDSEgsTUFBTU47UUFDTlUsVUFBVTtRQUNWQyxVQUFVO0lBQ1o7QUFDRjtBQUVBLElBQUlpb0IsZUFBZTtJQUFDO0NBQVE7QUFDNUIsSUFBSUMsY0FBYyxXQUFXLEdBQUUvcEIsaURBQVVBLENBQUMsU0FBVWUsSUFBSSxFQUFFQyxZQUFZO0lBQ3BFLElBQUlDLGFBQWFGLEtBQUtHLEtBQUssRUFDdkJBLFFBQVFELGVBQWUsS0FBSyxJQUFJLGlCQUFpQkEsWUFDakRFLFFBQVFqQiw4QkFBOEJhLE1BQU0rb0I7SUFFaEQscUJBQU83cEIsb0RBQWFBLENBQUMsT0FBT00sT0FBT2EsTUFBTSxDQUFDO1FBQ3hDQyxPQUFPO1FBQ1BDLFFBQVE7UUFDUkMsU0FBUztRQUNUQyxNQUFNO1FBQ05DLE9BQU87SUFDVCxHQUFHTixPQUFPO1FBQ1JPLEtBQUtWO0lBQ1Asa0JBQUlmLG9EQUFhQSxDQUFDLFFBQVE7UUFDeEIwQixHQUFHO1FBQ0hILE1BQU1OO1FBQ05VLFVBQVU7UUFDVkMsVUFBVTtJQUNaO0FBQ0Y7QUFFNjZKLENBQzc2SiwyQ0FBMkMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9lbWJlZGNoYWluLWFkbWluLy4vbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC1pY29ucy9kaXN0L3JlYWN0LWljb25zLmVzbS5qcz9lMzU5Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZvcndhcmRSZWYsIGNyZWF0ZUVsZW1lbnQgfSBmcm9tICdyZWFjdCc7XG5cbmZ1bmN0aW9uIF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKHNvdXJjZSwgZXhjbHVkZWQpIHtcbiAgaWYgKHNvdXJjZSA9PSBudWxsKSByZXR1cm4ge307XG4gIHZhciB0YXJnZXQgPSB7fTtcbiAgdmFyIHNvdXJjZUtleXMgPSBPYmplY3Qua2V5cyhzb3VyY2UpO1xuICB2YXIga2V5LCBpO1xuXG4gIGZvciAoaSA9IDA7IGkgPCBzb3VyY2VLZXlzLmxlbmd0aDsgaSsrKSB7XG4gICAga2V5ID0gc291cmNlS2V5c1tpXTtcbiAgICBpZiAoZXhjbHVkZWQuaW5kZXhPZihrZXkpID49IDApIGNvbnRpbnVlO1xuICAgIHRhcmdldFtrZXldID0gc291cmNlW2tleV07XG4gIH1cblxuICByZXR1cm4gdGFyZ2V0O1xufVxuXG52YXIgX2V4Y2x1ZGVkID0gW1wiY29sb3JcIl07XG52YXIgQWNjZXNzaWJpbGl0eUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0wLjg3NzE5NyA3LjQ5OTg0QzAuODc3MTk3IDMuODQyMTYgMy44NDIzNCAwLjg3NzAxNCA3LjUwMDAzIDAuODc3MDE0QzExLjE1NzcgMC44NzcwMTQgMTQuMTIyOSAzLjg0MjE2IDE0LjEyMjkgNy40OTk4NEMxNC4xMjI5IDExLjE1NzUgMTEuMTU3NyAxNC4xMjI3IDcuNTAwMDMgMTQuMTIyN0MzLjg0MjM0IDE0LjEyMjcgMC44NzcxOTcgMTEuMTU3NSAwLjg3NzE5NyA3LjQ5OTg0Wk03LjUwMDAzIDEuODI3MDFDNC4zNjcwMiAxLjgyNzAxIDEuODI3MiA0LjM2NjgzIDEuODI3MiA3LjQ5OTg0QzEuODI3MiAxMC42MzI4IDQuMzY3MDIgMTMuMTcyNyA3LjUwMDAzIDEzLjE3MjdDMTAuNjMzIDEzLjE3MjcgMTMuMTcyOSAxMC42MzI4IDEzLjE3MjkgNy40OTk4NEMxMy4xNzI5IDQuMzY2ODMgMTAuNjMzIDEuODI3MDEgNy41MDAwMyAxLjgyNzAxWk03LjEyNDU3IDkuMDAwMDFDNy4wNjk5NCA5LjEyNzM1IDYuMzMxNjUgMTEuOTU5MiA2LjMzMTY1IDExLjk1OTJDNi4yNjAxOCAxMi4yMjYgNS45ODYwMSAxMi4zODQzIDUuNzE5MjggMTIuMzEyOEM1LjQ1MjU1IDEyLjI0MTMgNS4yOTQyNSAxMS45NjcyIDUuMzY1NzMgMTEuNzAwNEM1LjM2NTczIDExLjcwMDQgNi4yNDY2MSA4Ljg3MjY4IDYuMjQ2NjEgOC4yNzAwN1Y2LjgwMDk5TDQuMjg3NjMgNi4yNzYwOEM0LjAyMDkgNi4yMDQ2MSAzLjg2MjYxIDUuOTMwNDUgMy45MzQwOCA1LjY2MzcxQzQuMDA1NTUgNS4zOTY5OCA0LjI3OTcyIDUuMjM4NjkgNC41NDY0NSA1LjMxMDE2QzQuNTQ2NDUgNS4zMTAxNiA2LjIwMDQyIDUuODcyNjggNi44NDU3OSA1Ljg3MjY4SDguMTU1MDVDOC44MDA0MiA1Ljg3MjY4IDEwLjQ1MzQgNS4zMTA0MiAxMC40NTM0IDUuMzEwNDJDMTAuNzIwMiA1LjIzODk1IDEwLjk5NDMgNS4zOTcyNCAxMS4wNjU4IDUuNjYzOTdDMTEuMTM3MyA1LjkzMDcxIDEwLjk3OSA2LjIwNDg3IDEwLjcxMjIgNi4yNzYzNUw4Ljc0NjYxIDYuODAzMDNWOC4yNzAwN0M4Ljc0NjYxIDguODcyNjggOS42MjY2MyAxMS42OTcxIDkuNjI2NjMgMTEuNjk3MUM5LjY5ODEgMTEuOTYzOSA5LjUzOTggMTIuMjM4IDkuMjczMDcgMTIuMzA5NUM5LjAwNjM0IDEyLjM4MSA4LjczMjE3IDEyLjIyMjcgOC42NjA3IDExLjk1NkM4LjY2MDcgMTEuOTU2IDcuOTE5OTQgOS4xMjczNSA3Ljg2ODY2IDkuMDAwMDFDNy44MTk5NCA4Ljg3MjY4IDcuNjUwMDYgOC44NzI2OCA3LjY1MDA2IDguODcyNjhINy4zNDMxN0M3LjM0MzE3IDguODcyNjggNy4xNjk5NCA4Ljg3MjY4IDcuMTI0NTcgOS4wMDAwMVpNNy41MDA0MyA1LjEyMDA3QzguMTIxNzUgNS4xMjAwNyA4LjYyNTQzIDQuNjE2MzkgOC42MjU0MyAzLjk5NTA3QzguNjI1NDMgMy4zNzM3NSA4LjEyMTc1IDIuODcwMDcgNy41MDA0MyAyLjg3MDA3QzYuODc5MTEgMi44NzAwNyA2LjM3NTQzIDMuMzczNzUgNi4zNzU0MyAzLjk5NTA3QzYuMzc1NDMgNC42MTYzOSA2Ljg3OTExIDUuMTIwMDcgNy41MDA0MyA1LjEyMDA3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMSA9IFtcImNvbG9yXCJdO1xudmFyIEFjdGl2aXR5TG9nSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMCAxLjVDMCAxLjIyMzg2IDAuMjIzODU4IDEgMC41IDFIMi41QzIuNzc2MTQgMSAzIDEuMjIzODYgMyAxLjVDMyAxLjc3NjE0IDIuNzc2MTQgMiAyLjUgMkgwLjVDMC4yMjM4NTggMiAwIDEuNzc2MTQgMCAxLjVaTTQgMS41QzQgMS4yMjM4NiA0LjIyMzg2IDEgNC41IDFIMTQuNUMxNC43NzYxIDEgMTUgMS4yMjM4NiAxNSAxLjVDMTUgMS43NzYxNCAxNC43NzYxIDIgMTQuNSAySDQuNUM0LjIyMzg2IDIgNCAxLjc3NjE0IDQgMS41Wk00IDQuNUM0IDQuMjIzODYgNC4yMjM4NiA0IDQuNSA0SDExLjVDMTEuNzc2MSA0IDEyIDQuMjIzODYgMTIgNC41QzEyIDQuNzc2MTQgMTEuNzc2MSA1IDExLjUgNUg0LjVDNC4yMjM4NiA1IDQgNC43NzYxNCA0IDQuNVpNMCA3LjVDMCA3LjIyMzg2IDAuMjIzODU4IDcgMC41IDdIMi41QzIuNzc2MTQgNyAzIDcuMjIzODYgMyA3LjVDMyA3Ljc3NjE0IDIuNzc2MTQgOCAyLjUgOEgwLjVDMC4yMjM4NTggOCAwIDcuNzc2MTQgMCA3LjVaTTQgNy41QzQgNy4yMjM4NiA0LjIyMzg2IDcgNC41IDdIMTQuNUMxNC43NzYxIDcgMTUgNy4yMjM4NiAxNSA3LjVDMTUgNy43NzYxNCAxNC43NzYxIDggMTQuNSA4SDQuNUM0LjIyMzg2IDggNCA3Ljc3NjE0IDQgNy41Wk00IDEwLjVDNCAxMC4yMjM5IDQuMjIzODYgMTAgNC41IDEwSDExLjVDMTEuNzc2MSAxMCAxMiAxMC4yMjM5IDEyIDEwLjVDMTIgMTAuNzc2MSAxMS43NzYxIDExIDExLjUgMTFINC41QzQuMjIzODYgMTEgNCAxMC43NzYxIDQgMTAuNVpNMCAxMy41QzAgMTMuMjIzOSAwLjIyMzg1OCAxMyAwLjUgMTNIMi41QzIuNzc2MTQgMTMgMyAxMy4yMjM5IDMgMTMuNUMzIDEzLjc3NjEgMi43NzYxNCAxNCAyLjUgMTRIMC41QzAuMjIzODU4IDE0IDAgMTMuNzc2MSAwIDEzLjVaTTQgMTMuNUM0IDEzLjIyMzkgNC4yMjM4NiAxMyA0LjUgMTNIMTQuNUMxNC43NzYxIDEzIDE1IDEzLjIyMzkgMTUgMTMuNUMxNSAxMy43NzYxIDE0Ljc3NjEgMTQgMTQuNSAxNEg0LjVDNC4yMjM4NiAxNCA0IDEzLjc3NjEgNCAxMy41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMiA9IFtcImNvbG9yXCJdO1xudmFyIEFsaWduQmFzZWxpbmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMC41IDEuNzUwMDNDMTAuNzEwNyAxLjc1MDAzIDEwLjg5ODggMS44ODIxNyAxMC45NzAzIDIuMDgwNDJMMTMuOTcwMyAxMC40QzE0LjA2NCAxMC42NTk4IDEzLjkyOTMgMTAuOTQ2MyAxMy42Njk2IDExLjA0QzEzLjQwOTggMTEuMTMzNiAxMy4xMjMzIDEwLjk5OSAxMy4wMjk2IDEwLjczOTJMMTIuMDQ3NyA4LjAxNjA2SDguOTUyMjdMNy45NzAzMSAxMC43MzkyQzcuODc2NjQgMTAuOTk5IDcuNTkwMTIgMTEuMTMzNiA3LjMzMDM1IDExLjA0QzcuMDcwNTggMTAuOTQ2MyA2LjkzNTkzIDEwLjY1OTggNy4wMjk2IDEwLjRMMTAuMDI5NiAyLjA4MDQyQzEwLjEwMTEgMS44ODIxNyAxMC4yODkyIDEuNzUwMDMgMTAuNSAxLjc1MDAzWk0xMC41IDMuNzI0MDJMMTEuNzQxMSA3LjE2NjA2SDkuMjU4NzdMMTAuNSAzLjcyNDAyWk0yLjQ5OTQ5IDIuMDk5OTdDMi43MjA0IDIuMDk5OTcgMi44OTk0OSAyLjI3OTA2IDIuODk5NDkgMi40OTk5N0wyLjg5OTQ5IDkuNTM0MjhMNC4yMTY2NCA4LjIxNzEzQzQuMzcyODUgOC4wNjA5MiA0LjYyNjEyIDguMDYwOTIgNC43ODIzMyA4LjIxNzEzQzQuOTM4NTQgOC4zNzMzNCA0LjkzODU0IDguNjI2NiA0Ljc4MjMzIDguNzgyODFMMi43ODIzMyAxMC43ODI4QzIuNzA3MzIgMTAuODU3OCAyLjYwNTU3IDEwLjkgMi40OTk0OSAxMC45QzIuMzkzNCAxMC45IDIuMjkxNjYgMTAuODU3OCAyLjIxNjY0IDEwLjc4MjhMMC4yMTY2NDUgOC43ODI4MUMwLjA2MDQzNDkgOC42MjY2IDAuMDYwNDM0OSA4LjM3MzM0IDAuMjE2NjQ1IDguMjE3MTNDMC4zNzI4NTQgOC4wNjA5MiAwLjYyNjEyIDguMDYwOTIgMC43ODIzMyA4LjIxNzEzTDIuMDk5NDkgOS41MzQyOEwyLjA5OTQ5IDIuNDk5OTdDMi4wOTk0OSAyLjI3OTA2IDIuMjc4NTcgMi4wOTk5NyAyLjQ5OTQ5IDIuMDk5OTdaTTAuMDk5OTY5NSAxMy41MDAxQzAuMDk5OTY5NSAxMy4yNzkxIDAuMjc5MDU2IDEzLjEwMDEgMC40OTk5NjkgMTMuMTAwMUgxNC41QzE0LjcyMDkgMTMuMTAwMSAxNC45IDEzLjI3OTEgMTQuOSAxMy41MDAxQzE0LjkgMTMuNzIxIDE0LjcyMDkgMTMuOTAwMSAxNC41IDEzLjkwMDFIMC40OTk5NjlDMC4yNzkwNTYgMTMuOTAwMSAwLjA5OTk2OTUgMTMuNzIxIDAuMDk5OTY5NSAxMy41MDAxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMyA9IFtcImNvbG9yXCJdO1xudmFyIEFsaWduQm90dG9tSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOSAzQzkgMi40NDc3MiA4LjU1MjI5IDIgOCAySDdDNi40NDc3MiAyIDYgMi40NDc3MiA2IDNMNiAxNEgxLjVDMS4yMjM4NiAxNCAxIDE0LjIyMzkgMSAxNC41QzEgMTQuNzc2MSAxLjIyMzg2IDE1IDEuNSAxNUw2IDE1SDlIMTMuNUMxMy43NzYxIDE1IDE0IDE0Ljc3NjEgMTQgMTQuNUMxNCAxNC4yMjM5IDEzLjc3NjEgMTQgMTMuNSAxNEg5VjNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0ID0gW1wiY29sb3JcIl07XG52YXIgQWxpZ25DZW50ZXJIb3Jpem9udGFsbHlJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjk5OTg4IDZDMS40NDc1OSA2IDAuOTk5ODc3IDYuNDQ3NzIgMC45OTk4NzcgN0wwLjk5OTg3NyA4QzAuOTk5ODc3IDguNTUyMjggMS40NDc1OSA5IDEuOTk5ODggOUw2Ljk5OTg4IDlMNi45OTk4OCAxMy41QzYuOTk5ODggMTMuNzc2MSA3LjIyMzc0IDE0IDcuNDk5ODggMTRDNy43NzYwMiAxNCA3Ljk5OTg4IDEzLjc3NjEgNy45OTk4OCAxMy41TDcuOTk5ODggOUwxMi45OTk5IDlDMTMuNTUyMiA5IDEzLjk5OTkgOC41NTIyOCAxMy45OTk5IDhMMTMuOTk5OSA3QzEzLjk5OTkgNi40NDc3MiAxMy41NTIyIDYgMTIuOTk5OSA2TDcuOTk5ODggNkw3Ljk5OTg4IDEuNUM3Ljk5OTg4IDEuMjIzODYgNy43NzYwMiAxIDcuNDk5ODggMUM3LjIyMzczIDEgNi45OTk4OCAxLjIyMzg2IDYuOTk5ODggMS41TDYuOTk5ODggNkwxLjk5OTg4IDZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ1ID0gW1wiY29sb3JcIl07XG52YXIgQWxpZ25DZW50ZXJWZXJ0aWNhbGx5SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ1KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNi45OTk4OCAxQzYuNDQ3NTkgMSA1Ljk5OTg4IDEuNDQ3NzIgNS45OTk4OCAyVjdIMS40OTk4OEMxLjIyMzc0IDcgMC45OTk4NzggNy4yMjM4NiAwLjk5OTg3OCA3LjVDMC45OTk4NzggNy43NzYxNCAxLjIyMzc0IDggMS40OTk4OCA4SDUuOTk5ODhWMTNDNS45OTk4OCAxMy41NTIzIDYuNDQ3NTkgMTQgNi45OTk4OCAxNEg3Ljk5OTg4QzguNTUyMTYgMTQgOC45OTk4OCAxMy41NTIzIDguOTk5ODggMTNWOEgxMy40OTk5QzEzLjc3NiA4IDEzLjk5OTkgNy43NzYxNCAxMy45OTk5IDcuNUMxMy45OTk5IDcuMjIzODYgMTMuNzc2IDcgMTMuNDk5OSA3SDguOTk5ODhWMkM4Ljk5OTg4IDEuNDQ3NzIgOC41NTIxNiAxIDcuOTk5ODggMUw2Ljk5OTg4IDFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ2ID0gW1wiY29sb3JcIl07XG52YXIgQWxpZ25MZWZ0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ2KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC40OTk5OTUgMC45OTk5OTVDMC4yMjM4NTUgMC45OTk5OTUgLTUuNTg0NThlLTA3IDEuMjIzODUgLTUuNDYzODhlLTA3IDEuNDk5OTlMLTIuMTg1NTRlLTA4IDEzLjQ5OTlDLTkuNzg0OTJlLTA5IDEzLjc3NiAwLjIyMzg1NSAxMy45OTk5IDAuNDk5OTk1IDEzLjk5OTlDMC43NzYxMzYgMTMuOTk5OSAwLjk5OTk5MSAxMy43NzYgMC45OTk5OTEgMTMuNDk5OUwwLjk5OTk5MSA4Ljk5OTkzTDEyIDguOTk5OTNDMTIuNTUyMyA4Ljk5OTkzIDEzIDguNTUyMjIgMTMgNy45OTk5M0wxMyA2Ljk5OTk0QzEzIDYuNDQ3NjYgMTIuNTUyMyA1Ljk5OTk1IDEyIDUuOTk5OTVMMC45OTk5OTEgNS45OTk5NUwwLjk5OTk5MSAxLjQ5OTk5QzAuOTk5OTkxIDEuMjIzODUgMC43NzYxMzUgMC45OTk5OTUgMC40OTk5OTUgMC45OTk5OTVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ3ID0gW1wiY29sb3JcIl07XG52YXIgQWxpZ25SaWdodEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTE0LjQ5OTkgMUMxNC4yMjM3IDEgMTMuOTk5OSAxLjIyMzg2IDEzLjk5OTkgMS41TDEzLjk5OTkgNkwyLjk5OTg4IDZDMi40NDc1OSA2IDEuOTk5ODggNi40NDc3MiAxLjk5OTg4IDdMMS45OTk4OCA4QzEuOTk5ODggOC41NTIyOCAyLjQ0NzU5IDkgMi45OTk4OCA5TDEzLjk5OTkgOUwxMy45OTk5IDEzLjVDMTMuOTk5OSAxMy43NzYxIDE0LjIyMzcgMTQgMTQuNDk5OSAxNEMxNC43NzYgMTQgMTQuOTk5OSAxMy43NzYxIDE0Ljk5OTkgMTMuNUwxNC45OTk5IDlMMTQuOTk5OSA2TDE0Ljk5OTkgMS41QzE0Ljk5OTkgMS4yMjM4NiAxNC43NzYgMSAxNC40OTk5IDFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ4ID0gW1wiY29sb3JcIl07XG52YXIgQWxpZ25Ub3BJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDgpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjUgMEMxLjIyMzg2IDAgMSAwLjIyMzg1OCAxIDAuNUMxIDAuNzc2MTQyIDEuMjIzODYgMSAxLjUgMUg2VjEyQzYgMTIuNTUyMyA2LjQ0NzcyIDEzIDcgMTNIOEM4LjU1MjI4IDEzIDkgMTIuNTUyMyA5IDEyVjFIMTMuNUMxMy43NzYxIDEgMTQgMC43NzYxNDIgMTQgMC41QzE0IDAuMjIzODU4IDEzLjc3NjEgMCAxMy41IDBIOUg2SDEuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDkgPSBbXCJjb2xvclwiXTtcbnZhciBBbGxTaWRlc0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkOSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNSAwLjc1TDkuNzUgM0g1LjI1TDcuNSAwLjc1Wk03LjUgMTQuMjVMOS43NSAxMkg1LjI1TDcuNSAxNC4yNVpNMyA1LjI1TDAuNzUgNy41TDMgOS43NVY1LjI1Wk0xNC4yNSA3LjVMMTIgNS4yNVY5Ljc1TDE0LjI1IDcuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJGEgPSBbXCJjb2xvclwiXTtcbnZhciBBbmdsZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkYSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTguODkxNCAyLjE5MzdDOS4xMTU4IDIuMzU0NjQgOS4xNjcyNSAyLjY2NzAxIDkuMDA2MzEgMi44OTE0MUwyLjQ3Mzg4IDEySDEzLjVDMTMuNzc2MSAxMiAxNCAxMi4yMjM5IDE0IDEyLjVDMTQgMTIuNzc2MiAxMy43NzYxIDEzIDEzLjUgMTNIMS41QzEuMzEyNTQgMTMgMS4xNDA4MiAxMi44OTUyIDEuMDU1MiAxMi43Mjg0QzAuOTY5NTc4IDEyLjU2MTYgMC45ODQ0MzggMTIuMzYxIDEuMDkzNjkgMTIuMjA4Nkw4LjE5MzY5IDIuMzA4NjJDOC4zNTQ2MiAyLjA4NDIyIDguNjY3IDIuMDMyNzcgOC44OTE0IDIuMTkzN1pNMTEuMSA2LjUwMDAxQzExLjEgNi4yMjM4NyAxMS4zMjM4IDYuMDAwMDEgMTEuNiA2LjAwMDAxQzExLjg3NjEgNi4wMDAwMSAxMi4xIDYuMjIzODcgMTIuMSA2LjUwMDAxQzEyLjEgNi43NzYxNSAxMS44NzYxIDcuMDAwMDEgMTEuNiA3LjAwMDAxQzExLjMyMzggNy4wMDAwMSAxMS4xIDYuNzc2MTUgMTEuMSA2LjUwMDAxWk0xMC40IDQuMDAwMDFDMTAuMTIzOSA0LjAwMDAxIDkuOTAwMDMgNC4yMjM4NyA5LjkwMDAzIDQuNTAwMDFDOS45MDAwMyA0Ljc3NjE1IDEwLjEyMzkgNS4wMDAwMSAxMC40IDUuMDAwMDFDMTAuNjc2MiA1LjAwMDAxIDEwLjkgNC43NzYxNSAxMC45IDQuNTAwMDFDMTAuOSA0LjIyMzg3IDEwLjY3NjIgNC4wMDAwMSAxMC40IDQuMDAwMDFaTTEyLjEgOC41MDAwMUMxMi4xIDguMjIzODcgMTIuMzIzOCA4LjAwMDAxIDEyLjYgOC4wMDAwMUMxMi44NzYxIDguMDAwMDEgMTMuMSA4LjIyMzg3IDEzLjEgOC41MDAwMUMxMy4xIDguNzc2MTUgMTIuODc2MSA5LjAwMDAxIDEyLjYgOS4wMDAwMUMxMi4zMjM4IDkuMDAwMDEgMTIuMSA4Ljc3NjE1IDEyLjEgOC41MDAwMVpNMTMuNCAxMEMxMy4xMjM5IDEwIDEyLjkgMTAuMjIzOSAxMi45IDEwLjVDMTIuOSAxMC43NzYxIDEzLjEyMzkgMTEgMTMuNCAxMUMxMy42NzYyIDExIDEzLjkgMTAuNzc2MSAxMy45IDEwLjVDMTMuOSAxMC4yMjM5IDEzLjY3NjIgMTAgMTMuNCAxMFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJGIgPSBbXCJjb2xvclwiXTtcbnZhciBBcmNoaXZlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRiKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy4zMDkwMiAxQzIuOTMwMjUgMSAyLjU4Mzk4IDEuMjE0IDIuNDE0NTkgMS41NTI3OUwxLjA1Mjc5IDQuMjc2MzlDMS4wMTgwNyA0LjM0NTgyIDEgNC40MjIzOCAxIDQuNVYxM0MxIDEzLjU1MjMgMS40NDc3MiAxNCAyIDE0SDEzQzEzLjU1MjMgMTQgMTQgMTMuNTUyMyAxNCAxM1Y0LjVDMTQgNC40MjIzOCAxMy45ODE5IDQuMzQ1ODIgMTMuOTQ3MiA0LjI3NjM5TDEyLjU4NTQgMS41NTI4MUMxMi40MTYgMS4yMTQwMyAxMi4wNjk4IDEuMDAwMDMgMTEuNjkxIDEuMDAwMDNMNy41IDEuMDAwMDFMMy4zMDkwMiAxWk0zLjMwOTAyIDJMNyAyLjAwMDAxVjRIMi4zMDkwMkwzLjMwOTAyIDJaTTggNFYyLjAwMDAyTDExLjY5MSAyLjAwMDAzTDEyLjY5MSA0SDhaTTcuNSA1SDEzVjEzSDJWNUg3LjVaTTUuNSA3QzUuMjIzODYgNyA1IDcuMjIzODYgNSA3LjVDNSA3Ljc3NjE0IDUuMjIzODYgOCA1LjUgOEg5LjVDOS43NzYxNCA4IDEwIDcuNzc2MTQgMTAgNy41QzEwIDcuMjIzODYgOS43NzYxNCA3IDkuNSA3SDUuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJGMgPSBbXCJjb2xvclwiXTtcbnZhciBBcnJvd0JvdHRvbUxlZnRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJGMpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMS4zNTM2IDMuNjQ2NDRDMTEuNTQ4OCAzLjg0MTcgMTEuNTQ4OCA0LjE1ODI4IDExLjM1MzYgNC4zNTM1NEw0LjcwNzExIDExTDkgMTFDOS4yNzYxNCAxMSA5LjUgMTEuMjIzOSA5LjUgMTEuNUM5LjUgMTEuNzc2MSA5LjI3NjE0IDEyIDkgMTJMMy41IDEyQzMuMzY3MzkgMTIgMy4yNDAyMSAxMS45NDczIDMuMTQ2NDUgMTEuODUzNkMzLjA1MjY4IDExLjc1OTggMyAxMS42MzI2IDMgMTEuNUwzIDUuOTk5OTlDMyA1LjcyMzg1IDMuMjIzODYgNS40OTk5OSAzLjUgNS40OTk5OUMzLjc3NjE0IDUuNDk5OTkgNCA1LjcyMzg1IDQgNS45OTk5OVYxMC4yOTI5TDEwLjY0NjQgMy42NDY0M0MxMC44NDE3IDMuNDUxMTcgMTEuMTU4MyAzLjQ1MTE3IDExLjM1MzYgMy42NDY0NFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJGQgPSBbXCJjb2xvclwiXTtcbnZhciBBcnJvd0JvdHRvbVJpZ2h0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRkKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy42NDY0NSAzLjY0NjQ0QzMuNDUxMTggMy44NDE3IDMuNDUxMTggNC4xNTgyOCAzLjY0NjQ1IDQuMzUzNTRMMTAuMjkyOSAxMUw2IDExQzUuNzIzODYgMTEgNS41IDExLjIyMzkgNS41IDExLjVDNS41IDExLjc3NjEgNS43MjM4NiAxMiA2IDEyTDExLjUgMTJDMTEuNjMyNiAxMiAxMS43NTk4IDExLjk0NzMgMTEuODUzNiAxMS44NTM2QzExLjk0NzMgMTEuNzU5OCAxMiAxMS42MzI2IDEyIDExLjVMMTIgNS45OTk5OUMxMiA1LjcyMzg1IDExLjc3NjEgNS40OTk5OSAxMS41IDUuNDk5OTlDMTEuMjIzOSA1LjQ5OTk5IDExIDUuNzIzODUgMTEgNS45OTk5OVYxMC4yOTI5TDQuMzUzNTUgMy42NDY0M0M0LjE1ODI5IDMuNDUxMTcgMy44NDE3MSAzLjQ1MTE3IDMuNjQ2NDUgMy42NDY0NFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJGUgPSBbXCJjb2xvclwiXTtcbnZhciBBcnJvd0Rvd25JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJGUpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjUgMkM3Ljc3NjE0IDIgOCAyLjIyMzg2IDggMi41TDggMTEuMjkyOUwxMS4xNDY0IDguMTQ2NDVDMTEuMzQxNyA3Ljk1MTE4IDExLjY1ODMgNy45NTExOCAxMS44NTM2IDguMTQ2NDVDMTIuMDQ4OCA4LjM0MTcxIDEyLjA0ODggOC42NTgyOSAxMS44NTM2IDguODUzNTVMNy44NTM1NSAxMi44NTM2QzcuNzU5NzkgMTIuOTQ3MyA3LjYzMjYxIDEzIDcuNSAxM0M3LjM2NzM5IDEzIDcuMjQwMjEgMTIuOTQ3MyA3LjE0NjQ1IDEyLjg1MzZMMy4xNDY0NSA4Ljg1MzU1QzIuOTUxMTggOC42NTgyOSAyLjk1MTE4IDguMzQxNzEgMy4xNDY0NSA4LjE0NjQ1QzMuMzQxNzEgNy45NTExOCAzLjY1ODI5IDcuOTUxMTggMy44NTM1NSA4LjE0NjQ1TDcgMTEuMjkyOUw3IDIuNUM3IDIuMjIzODYgNy4yMjM4NiAyIDcuNSAyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkZiA9IFtcImNvbG9yXCJdO1xudmFyIEFycm93TGVmdEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkZik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTYuODUzNTUgMy4xNDY0NUM3LjA0ODgyIDMuMzQxNzEgNy4wNDg4MiAzLjY1ODI5IDYuODUzNTUgMy44NTM1NUwzLjcwNzExIDdIMTIuNUMxMi43NzYxIDcgMTMgNy4yMjM4NiAxMyA3LjVDMTMgNy43NzYxNCAxMi43NzYxIDggMTIuNSA4SDMuNzA3MTFMNi44NTM1NSAxMS4xNDY0QzcuMDQ4ODIgMTEuMzQxNyA3LjA0ODgyIDExLjY1ODMgNi44NTM1NSAxMS44NTM2QzYuNjU4MjkgMTIuMDQ4OCA2LjM0MTcxIDEyLjA0ODggNi4xNDY0NSAxMS44NTM2TDIuMTQ2NDUgNy44NTM1NUMxLjk1MTE4IDcuNjU4MjkgMS45NTExOCA3LjM0MTcxIDIuMTQ2NDUgNy4xNDY0NUw2LjE0NjQ1IDMuMTQ2NDVDNi4zNDE3MSAyLjk1MTE4IDYuNjU4MjkgMi45NTExOCA2Ljg1MzU1IDMuMTQ2NDVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRnID0gW1wiY29sb3JcIl07XG52YXIgQXJyb3dSaWdodEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkZyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTguMTQ2NDUgMy4xNDY0NUM4LjM0MTcxIDIuOTUxMTggOC42NTgyOSAyLjk1MTE4IDguODUzNTUgMy4xNDY0NUwxMi44NTM2IDcuMTQ2NDVDMTMuMDQ4OCA3LjM0MTcxIDEzLjA0ODggNy42NTgyOSAxMi44NTM2IDcuODUzNTVMOC44NTM1NSAxMS44NTM2QzguNjU4MjkgMTIuMDQ4OCA4LjM0MTcxIDEyLjA0ODggOC4xNDY0NSAxMS44NTM2QzcuOTUxMTggMTEuNjU4MyA3Ljk1MTE4IDExLjM0MTcgOC4xNDY0NSAxMS4xNDY0TDExLjI5MjkgOEgyLjVDMi4yMjM4NiA4IDIgNy43NzYxNCAyIDcuNUMyIDcuMjIzODYgMi4yMjM4NiA3IDIuNSA3SDExLjI5MjlMOC4xNDY0NSAzLjg1MzU1QzcuOTUxMTggMy42NTgyOSA3Ljk1MTE4IDMuMzQxNzEgOC4xNDY0NSAzLjE0NjQ1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkaCA9IFtcImNvbG9yXCJdO1xudmFyIEFycm93VG9wTGVmdEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkaCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTExLjM1MzYgMTEuMzUzNkMxMS41NDg4IDExLjE1ODMgMTEuNTQ4OCAxMC44NDE3IDExLjM1MzYgMTAuNjQ2NUw0LjcwNzExIDRMOSA0QzkuMjc2MTQgNCA5LjUgMy43NzYxNCA5LjUgMy41QzkuNSAzLjIyMzg2IDkuMjc2MTQgMyA5IDNMMy41IDNDMy4zNjczOSAzIDMuMjQwMjEgMy4wNTI2OCAzLjE0NjQ1IDMuMTQ2NDVDMy4wNTI2OCAzLjI0MDIyIDMgMy4zNjczOSAzIDMuNUwzIDkuMDAwMDFDMyA5LjI3NjE1IDMuMjIzODYgOS41MDAwMSAzLjUgOS41MDAwMUMzLjc3NjE0IDkuNTAwMDEgNCA5LjI3NjE1IDQgOS4wMDAwMVY0LjcwNzExTDEwLjY0NjQgMTEuMzUzNkMxMC44NDE3IDExLjU0ODggMTEuMTU4MyAxMS41NDg4IDExLjM1MzYgMTEuMzUzNlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJGkgPSBbXCJjb2xvclwiXTtcbnZhciBBcnJvd1RvcFJpZ2h0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRpKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy42NDY0NSAxMS4zNTM2QzMuNDUxMTggMTEuMTU4MyAzLjQ1MTE4IDEwLjg0MTcgMy42NDY0NSAxMC42NDY1TDEwLjI5MjkgNEw2IDRDNS43MjM4NiA0IDUuNSAzLjc3NjE0IDUuNSAzLjVDNS41IDMuMjIzODYgNS43MjM4NiAzIDYgM0wxMS41IDNDMTEuNjMyNiAzIDExLjc1OTggMy4wNTI2OCAxMS44NTM2IDMuMTQ2NDVDMTEuOTQ3MyAzLjI0MDIyIDEyIDMuMzY3MzkgMTIgMy41TDEyIDkuMDAwMDFDMTIgOS4yNzYxNSAxMS43NzYxIDkuNTAwMDEgMTEuNSA5LjUwMDAxQzExLjIyMzkgOS41MDAwMSAxMSA5LjI3NjE1IDExIDkuMDAwMDFWNC43MDcxMUw0LjM1MzU1IDExLjM1MzZDNC4xNTgyOSAxMS41NDg4IDMuODQxNzEgMTEuNTQ4OCAzLjY0NjQ1IDExLjM1MzZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRqID0gW1wiY29sb3JcIl07XG52YXIgQXJyb3dVcEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkaik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuMTQ2NDUgMi4xNDY0NUM3LjM0MTcxIDEuOTUxMTggNy42NTgyOSAxLjk1MTE4IDcuODUzNTUgMi4xNDY0NUwxMS44NTM2IDYuMTQ2NDVDMTIuMDQ4OCA2LjM0MTcxIDEyLjA0ODggNi42NTgyOSAxMS44NTM2IDYuODUzNTVDMTEuNjU4MyA3LjA0ODgyIDExLjM0MTcgNy4wNDg4MiAxMS4xNDY0IDYuODUzNTVMOCAzLjcwNzExTDggMTIuNUM4IDEyLjc3NjEgNy43NzYxNCAxMyA3LjUgMTNDNy4yMjM4NiAxMyA3IDEyLjc3NjEgNyAxMi41TDcgMy43MDcxMUwzLjg1MzU1IDYuODUzNTVDMy42NTgyOSA3LjA0ODgyIDMuMzQxNzEgNy4wNDg4MiAzLjE0NjQ1IDYuODUzNTVDMi45NTExOCA2LjY1ODI5IDIuOTUxMTggNi4zNDE3MSAzLjE0NjQ1IDYuMTQ2NDVMNy4xNDY0NSAyLjE0NjQ1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkayA9IFtcImNvbG9yXCJdO1xudmFyIEFzcGVjdFJhdGlvSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRrKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMi41IDJIMTIuNUMxMi43NzYxIDIgMTMgMi4yMjM4NiAxMyAyLjVWMTIuNUMxMyAxMi43NzYxIDEyLjc3NjEgMTMgMTIuNSAxM0gyLjVDMi4yMjM4NiAxMyAyIDEyLjc3NjEgMiAxMi41VjIuNUMyIDIuMjIzODYgMi4yMjM4NiAyIDIuNSAyWk0xIDIuNUMxIDEuNjcxNTcgMS42NzE1NyAxIDIuNSAxSDEyLjVDMTMuMzI4NCAxIDE0IDEuNjcxNTcgMTQgMi41VjEyLjVDMTQgMTMuMzI4NCAxMy4zMjg0IDE0IDEyLjUgMTRIMi41QzEuNjcxNTcgMTQgMSAxMy4zMjg0IDEgMTIuNVYyLjVaTTcuNSA0QzcuNzc2MTQgNCA4IDMuNzc2MTQgOCAzLjVDOCAzLjIyMzg2IDcuNzc2MTQgMyA3LjUgM0M3LjIyMzg2IDMgNyAzLjIyMzg2IDcgMy41QzcgMy43NzYxNCA3LjIyMzg2IDQgNy41IDRaTTggNS41QzggNS43NzYxNCA3Ljc3NjE0IDYgNy41IDZDNy4yMjM4NiA2IDcgNS43NzYxNCA3IDUuNUM3IDUuMjIzODYgNy4yMjM4NiA1IDcuNSA1QzcuNzc2MTQgNSA4IDUuMjIzODYgOCA1LjVaTTcuNSA4QzcuNzc2MTQgOCA4IDcuNzc2MTQgOCA3LjVDOCA3LjIyMzg2IDcuNzc2MTQgNyA3LjUgN0M3LjIyMzg2IDcgNyA3LjIyMzg2IDcgNy41QzcgNy43NzYxNCA3LjIyMzg2IDggNy41IDhaTTEwIDcuNUMxMCA3Ljc3NjE0IDkuNzc2MTQgOCA5LjUgOEM5LjIyMzg2IDggOSA3Ljc3NjE0IDkgNy41QzkgNy4yMjM4NiA5LjIyMzg2IDcgOS41IDdDOS43NzYxNCA3IDEwIDcuMjIzODYgMTAgNy41Wk0xMS41IDhDMTEuNzc2MSA4IDEyIDcuNzc2MTQgMTIgNy41QzEyIDcuMjIzODYgMTEuNzc2MSA3IDExLjUgN0MxMS4yMjM5IDcgMTEgNy4yMjM4NiAxMSA3LjVDMTEgNy43NzYxNCAxMS4yMjM5IDggMTEuNSA4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkbCA9IFtcImNvbG9yXCJdO1xudmFyIEF2YXRhckljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkbCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTAuODc3MDE0IDcuNDk5ODhDMC44NzcwMTQgMy44NDIxOSAzLjg0MjE2IDAuODc3MDQ1IDcuNDk5ODUgMC44NzcwNDVDMTEuMTU3NSAwLjg3NzA0NSAxNC4xMjI3IDMuODQyMTkgMTQuMTIyNyA3LjQ5OTg4QzE0LjEyMjcgMTEuMTU3NSAxMS4xNTc1IDE0LjEyMjcgNy40OTk4NSAxNC4xMjI3QzMuODQyMTYgMTQuMTIyNyAwLjg3NzAxNCAxMS4xNTc1IDAuODc3MDE0IDcuNDk5ODhaTTcuNDk5ODUgMS44MjcwNEM0LjM2NjgzIDEuODI3MDQgMS44MjcwMSA0LjM2Njg2IDEuODI3MDEgNy40OTk4OEMxLjgyNzAxIDguOTcxOTYgMi4zODc3NCAxMC4zMTMxIDMuMzA3MjcgMTEuMzIxM0M0LjE5MDc0IDkuOTQxMTkgNS43MzgxOCA5LjAyNDk5IDcuNTAwMjMgOS4wMjQ5OUM5LjI2MjA2IDkuMDI0OTkgMTAuODA5MyA5Ljk0MDk3IDExLjY5MjkgMTEuMzIwOEMxMi42MTIxIDEwLjMxMjcgMTMuMTcyNyA4Ljk3MTcyIDEzLjE3MjcgNy40OTk4OEMxMy4xNzI3IDQuMzY2ODYgMTAuNjMyOCAxLjgyNzA0IDcuNDk5ODUgMS44MjcwNFpNMTAuOTgxOCAxMS45Nzg3QzEwLjI4MzkgMTAuNzc5NSA4Ljk4NTcgOS45NzQ5OSA3LjUwMDIzIDkuOTc0OTlDNi4wMTQ1OCA5Ljk3NDk5IDQuNzE2MjQgMTAuNzc5NyA0LjAxODQ1IDExLjk3OTFDNC45Nzk1MiAxMi43MjcyIDYuMTg3NjUgMTMuMTcyNyA3LjQ5OTg1IDEzLjE3MjdDOC44MTIyNyAxMy4xNzI3IDEwLjAyMDYgMTIuNzI3IDEwLjk4MTggMTEuOTc4N1pNNS4xNDk5OSA2LjUwNDg3QzUuMTQ5OTkgNS4yMDcgNi4yMDIxMiA0LjE1NDg3IDcuNDk5OTkgNC4xNTQ4N0M4Ljc5Nzg2IDQuMTU0ODcgOS44NDk5OSA1LjIwNyA5Ljg0OTk5IDYuNTA0ODdDOS44NDk5OSA3LjgwMjc0IDguNzk3ODYgOC44NTQ4NyA3LjQ5OTk5IDguODU0ODdDNi4yMDIxMiA4Ljg1NDg3IDUuMTQ5OTkgNy44MDI3NCA1LjE0OTk5IDYuNTA0ODdaTTcuNDk5OTkgNS4xMDQ4N0M2LjcyNjc5IDUuMTA0ODcgNi4wOTk5OSA1LjczMTY3IDYuMDk5OTkgNi41MDQ4N0M2LjA5OTk5IDcuMjc4MDcgNi43MjY3OSA3LjkwNDg3IDcuNDk5OTkgNy45MDQ4N0M4LjI3MzE5IDcuOTA0ODcgOC44OTk5OSA3LjI3ODA3IDguODk5OTkgNi41MDQ4N0M4Ljg5OTk5IDUuNzMxNjcgOC4yNzMxOSA1LjEwNDg3IDcuNDk5OTkgNS4xMDQ4N1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJG0gPSBbXCJjb2xvclwiXTtcbnZhciBCYWNrcGFja0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkbSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUgMUM1IDAuNDQ3NzE1IDUuNDQ3NzIgMCA2IDBIOUM5LjU1MjI4IDAgMTAgMC40NDc3MTUgMTAgMVYySDE0QzE0LjU1MjMgMiAxNSAyLjQ0NzcyIDE1IDNWNkMxNSA2Ljg4ODggMTQuNjEzMSA3LjY4NzM0IDE0IDguMjM2MDhWMTEuNUMxNCAxMi4zMjg0IDEzLjMyODQgMTMgMTIuNSAxM0gyLjVDMS42NzE1NyAxMyAxIDEyLjMyODQgMSAxMS41VjguMjM1OUMwLjM4Njk3IDcuNjg3MjEgMCA2Ljg4ODgzIDAgNlYzQzAgMi40NDc3MiAwLjQ0NzcxNiAyIDEgMkg1VjFaTTkgMVYySDZWMUg5Wk0xIDNINUg1LjVIOS41SDEwSDE0VjZDMTQgNi42NTQgMTMuNjg2NiA3LjIzNDY3IDEzLjE5OTcgNy42MDA0QzEyLjg2NTUgNy44NTE0NCAxMi40NTA4IDggMTIgOEg4VjcuNUM4IDcuMjIzODYgNy43NzYxNCA3IDcuNSA3QzcuMjIzODYgNyA3IDcuMjIzODYgNyA3LjVWOEgzQzIuNTQ5MyA4IDIuMTM0NiA3Ljg1MTMzIDEuODAwMjkgNy42MDAyMkMxLjMxMzM1IDcuMjM0NDYgMSA2LjY1Mzk2IDEgNlYzWk03IDlIM0MyLjY0OTYxIDkgMi4zMTI5MiA4LjkzOTcyIDIgOC44MjkwNVYxMS41QzIgMTEuNzc2MSAyLjIyMzg2IDEyIDIuNSAxMkgxMi41QzEyLjc3NjEgMTIgMTMgMTEuNzc2MSAxMyAxMS41VjguODI5MTVDMTIuNjg3MSA4LjkzOTc4IDEyLjM1MDQgOSAxMiA5SDhWOS41QzggOS43NzYxNCA3Ljc3NjE0IDEwIDcuNSAxMEM3LjIyMzg2IDEwIDcgOS43NzYxNCA3IDkuNVY5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkbiA9IFtcImNvbG9yXCJdO1xudmFyIEJhZGdlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRuKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy41IDZIMTEuNUMxMi4zMjg0IDYgMTMgNi42NzE1NyAxMyA3LjVDMTMgOC4zMjg0MyAxMi4zMjg0IDkgMTEuNSA5SDMuNUMyLjY3MTU3IDkgMiA4LjMyODQzIDIgNy41QzIgNi42NzE1NyAyLjY3MTU3IDYgMy41IDZaTTEgNy41QzEgNi4xMTkyOSAyLjExOTI5IDUgMy41IDVIMTEuNUMxMi44ODA3IDUgMTQgNi4xMTkyOSAxNCA3LjVDMTQgOC44ODA3MSAxMi44ODA3IDEwIDExLjUgMTBIMy41QzIuMTE5MjkgMTAgMSA4Ljg4MDcxIDEgNy41Wk00LjUgN0M0LjIyMzg2IDcgNCA3LjIyMzg2IDQgNy41QzQgNy43NzYxNCA0LjIyMzg2IDggNC41IDhIMTAuNUMxMC43NzYxIDggMTEgNy43NzYxNCAxMSA3LjVDMTEgNy4yMjM4NiAxMC43NzYxIDcgMTAuNSA3SDQuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJG8gPSBbXCJjb2xvclwiXTtcbnZhciBCYXJDaGFydEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkbyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTExLjUgMUMxMS43NzYxIDEgMTIgMS4yMjM4NiAxMiAxLjVWMTMuNUMxMiAxMy43NzYxIDExLjc3NjEgMTQgMTEuNSAxNEMxMS4yMjM5IDE0IDExIDEzLjc3NjEgMTEgMTMuNVYxLjVDMTEgMS4yMjM4NiAxMS4yMjM5IDEgMTEuNSAxWk05LjUgM0M5Ljc3NjE0IDMgMTAgMy4yMjM4NiAxMCAzLjVWMTMuNUMxMCAxMy43NzYxIDkuNzc2MTQgMTQgOS41IDE0QzkuMjIzODYgMTQgOSAxMy43NzYxIDkgMTMuNVYzLjVDOSAzLjIyMzg2IDkuMjIzODYgMyA5LjUgM1pNMTMuNSAzQzEzLjc3NjEgMyAxNCAzLjIyMzg2IDE0IDMuNVYxMy41QzE0IDEzLjc3NjEgMTMuNzc2MSAxNCAxMy41IDE0QzEzLjIyMzkgMTQgMTMgMTMuNzc2MSAxMyAxMy41VjMuNUMxMyAzLjIyMzg2IDEzLjIyMzkgMyAxMy41IDNaTTUuNSA0QzUuNzc2MTQgNCA2IDQuMjIzODYgNiA0LjVWMTMuNUM2IDEzLjc3NjEgNS43NzYxNCAxNCA1LjUgMTRDNS4yMjM4NiAxNCA1IDEzLjc3NjEgNSAxMy41VjQuNUM1IDQuMjIzODYgNS4yMjM4NiA0IDUuNSA0Wk0xLjUgNUMxLjc3NjE0IDUgMiA1LjIyMzg2IDIgNS41VjEzLjVDMiAxMy43NzYxIDEuNzc2MTQgMTQgMS41IDE0QzEuMjIzODYgMTQgMSAxMy43NzYxIDEgMTMuNVY1LjVDMSA1LjIyMzg2IDEuMjIzODYgNSAxLjUgNVpNNy41IDVDNy43NzYxNCA1IDggNS4yMjM4NiA4IDUuNVYxMy41QzggMTMuNzc2MSA3Ljc3NjE0IDE0IDcuNSAxNEM3LjIyMzg2IDE0IDcgMTMuNzc2MSA3IDEzLjVWNS41QzcgNS4yMjM4NiA3LjIyMzg2IDUgNy41IDVaTTMuNSA3QzMuNzc2MTQgNyA0IDcuMjIzODYgNCA3LjVWMTMuNUM0IDEzLjc3NjEgMy43NzYxNCAxNCAzLjUgMTRDMy4yMjM4NiAxNCAzIDEzLjc3NjEgMyAxMy41VjcuNUMzIDcuMjIzODYgMy4yMjM4NiA3IDMuNSA3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkcCA9IFtcImNvbG9yXCJdO1xudmFyIEJlbGxJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJHApO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk04LjYwMTI0IDEuMjUwODZDOC42MDEyNCAxLjc1NDU5IDguMjYyNzggMi4xNzkyNyA3LjgwMDg3IDIuMzA5ODlDMTAuMTQ1OSAyLjQ2NDcgMTIgNC40MTU4MiAxMiA2Ljc5OTk5VjEwLjI1QzEyIDExLjA1NjMgMTIuMDMyOSAxMS43MDc0IDEyLjcyMzYgMTIuMDUyOEMxMi45MzEgMTIuMTU2NSAxMy4wMzk5IDEyLjM4OTIgMTIuOTg2NiAxMi42MTQ5QzEyLjkzMzMgMTIuODQwNiAxMi43MzE5IDEzIDEyLjUgMTNIOC4xNjE0NEM4LjM2OTA0IDEzLjE4MzIgOC40OTk5NyAxMy40NTEzIDguNDk5OTcgMTMuNzVDOC40OTk5NyAxNC4zMDIzIDguMDUyMjYgMTQuNzUgNy40OTk5NyAxNC43NUM2Ljk0NzY5IDE0Ljc1IDYuNDk5OTcgMTQuMzAyMyA2LjQ5OTk3IDEzLjc1QzYuNDk5OTcgMTMuNDUxMyA2LjYzMDkxIDEzLjE4MzIgNi44Mzg1MSAxM0gyLjQ5OTk5QzIuMjY4MSAxMyAyLjA2NjY0IDEyLjg0MDYgMi4wMTMzNiAxMi42MTQ5QzEuOTYwMDkgMTIuMzg5MiAyLjA2ODk3IDEyLjE1NjUgMi4yNzYzOCAxMi4wNTI4QzIuOTY3MDggMTEuNzA3NCAyLjk5OTk5IDExLjA1NjMgMi45OTk5OSAxMC4yNVY2Ljc5OTk5QzIuOTk5OTkgNC40MTUzNyA0Ljg1NDgxIDIuNDYzOTYgNy4yMDA0MiAyLjMwOThDNi43Mzg2NyAyLjE3OTA4IDYuNDAwMzYgMS43NTQ0OCA2LjQwMDM2IDEuMjUwODZDNi40MDAzNiAwLjY0MzEwNCA2Ljg5MzA0IDAuMTUwNDIxIDcuNTAwOCAwLjE1MDQyMUM4LjEwODU1IDAuMTUwNDIxIDguNjAxMjQgMC42NDMxMDQgOC42MDEyNCAxLjI1MDg2Wk03LjQ5OTk5IDMuMjk5OTlDNS41NjY5OSAzLjI5OTk5IDMuOTk5OTkgNC44NjY5OSAzLjk5OTk5IDYuNzk5OTlWMTAuMjVMNC4wMDAwMiAxMC4zMDA5QzQuMDAwNSAxMC43NDYzIDQuMDAxMjEgMTEuNDA4NCAzLjY5OTI5IDEySDExLjMwMDdDMTAuOTk4OCAxMS40MDg0IDEwLjk5OTUgMTAuNzQ2MyAxMSAxMC4zMDA5TDExIDEwLjI1VjYuNzk5OTlDMTEgNC44NjY5OSA5LjQzMjk5IDMuMjk5OTkgNy40OTk5OSAzLjI5OTk5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkcSA9IFtcImNvbG9yXCJdO1xudmFyIEJsZW5kaW5nTW9kZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkcSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMgOUMzIDYuNSA0LjUgNC4yNSA3LjUgMS41QzEwLjUgNC4yNSAxMiA2LjUgMTIgOUMxMiAxMS40ODUzIDkuOTg1MjggMTMuNSA3LjUgMTMuNUM1LjAxNDcyIDEzLjUgMyAxMS40ODUzIDMgOVpNMTAuOTUyNCA4LjMwMzA3QzkuNjczNDcgNy44MjEyMSA4LjI4NzkgOC40NjIwOCA2Ljk4OTU2IDkuMDYyNTlDNS45MzI3IDkuNTUxNDIgNC45MzM2NSAxMC4wMTM1IDQuMDk2OTUgOS44MjE1M0M0LjAzMzU3IDkuNTU4MDQgNCA5LjI4Mjk0IDQgOUM0IDcuMTEyMDMgNS4wMjY4NiA1LjI3MTk1IDcuNSAyLjg3MzU3QzkuNjY4MzcgNC45NzYzOSAxMC43MjUgNi42NTAwNCAxMC45NTI0IDguMzAzMDdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRyID0gW1wiY29sb3JcIl07XG52YXIgQm9va21hcmtJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJHIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zIDIuNUMzIDIuMjIzODYgMy4yMjM4NiAyIDMuNSAySDExLjVDMTEuNzc2MSAyIDEyIDIuMjIzODYgMTIgMi41VjEzLjVDMTIgMTMuNjgxOCAxMS45MDE0IDEzLjg0OTIgMTEuNzQyNCAxMy45MzczQzExLjU4MzQgMTQuMDI1NCAxMS4zODkxIDE0LjAyMDMgMTEuMjM1IDEzLjkyNEw3LjUgMTEuNTg5NkwzLjc2NSAxMy45MjRDMy42MTA4NyAxNC4wMjAzIDMuNDE2NTkgMTQuMDI1NCAzLjI1NzYyIDEzLjkzNzNDMy4wOTg2NCAxMy44NDkyIDMgMTMuNjgxOCAzIDEzLjVWMi41Wk00IDNWMTIuNTk3OUw2Ljk3IDEwLjc0MTZDNy4yOTQyNyAxMC41MzkgNy43MDU3MyAxMC41MzkgOC4wMyAxMC43NDE2TDExIDEyLjU5NzlWM0g0WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkcyA9IFtcImNvbG9yXCJdO1xudmFyIEJvb2ttYXJrRmlsbGVkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRzKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy41IDJDMy4yMjM4NiAyIDMgMi4yMjM4NiAzIDIuNVYxMy41QzMgMTMuNjgxOCAzLjA5ODY0IDEzLjg0OTIgMy4yNTc2MiAxMy45MzczQzMuNDE2NTkgMTQuMDI1NCAzLjYxMDg3IDE0LjAyMDMgMy43NjUgMTMuOTI0TDcuNSAxMS41ODk2TDExLjIzNSAxMy45MjRDMTEuMzg5MSAxNC4wMjAzIDExLjU4MzQgMTQuMDI1NCAxMS43NDI0IDEzLjkzNzNDMTEuOTAxNCAxMy44NDkyIDEyIDEzLjY4MTggMTIgMTMuNVYyLjVDMTIgMi4yMjM4NiAxMS43NzYxIDIgMTEuNSAySDMuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJHQgPSBbXCJjb2xvclwiXTtcbnZhciBCb3JkZXJBbGxJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJHQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0wLjI1IDFDMC4yNSAwLjU4NTc4NiAwLjU4NTc4NiAwLjI1IDEgMC4yNUgxNEMxNC40MTQyIDAuMjUgMTQuNzUgMC41ODU3ODYgMTQuNzUgMVYxNEMxNC43NSAxNC40MTQyIDE0LjQxNDIgMTQuNzUgMTQgMTQuNzVIMUMwLjU4NTc4NiAxNC43NSAwLjI1IDE0LjQxNDIgMC4yNSAxNFYxWk0xLjc1IDEuNzVWMTMuMjVIMTMuMjVWMS43NUgxLjc1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCIzXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiN1wiLFxuICAgIHk6IFwiN1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjVcIixcbiAgICB5OiBcIjdcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIzXCIsXG4gICAgeTogXCI3XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiOVwiLFxuICAgIHk6IFwiN1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjExXCIsXG4gICAgeTogXCI3XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiN1wiLFxuICAgIHk6IFwiOVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjExXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCR1ID0gW1wiY29sb3JcIl07XG52YXIgQm9yZGVyQm90dG9tSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCR1KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMSAxMy4yNUwxNCAxMy4yNVYxNC43NUwxIDE0Ljc1VjEzLjI1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxM1wiLFxuICAgIHk6IFwiNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjNcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxM1wiLFxuICAgIHk6IFwiM1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjdcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCIxXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTNcIixcbiAgICB5OiBcIjdcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxM1wiLFxuICAgIHk6IFwiMVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjVcIixcbiAgICB5OiBcIjdcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI1XCIsXG4gICAgeTogXCIxXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiM1wiLFxuICAgIHk6IFwiN1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjNcIixcbiAgICB5OiBcIjFcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI5XCIsXG4gICAgeTogXCI3XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiOVwiLFxuICAgIHk6IFwiMVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjExXCIsXG4gICAgeTogXCI3XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTFcIixcbiAgICB5OiBcIjFcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCI5XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTNcIixcbiAgICB5OiBcIjlcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCIxMVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEzXCIsXG4gICAgeTogXCIxMVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjFcIixcbiAgICB5OiBcIjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxXCIsXG4gICAgeTogXCIzXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMVwiLFxuICAgIHk6IFwiN1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjFcIixcbiAgICB5OiBcIjFcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxXCIsXG4gICAgeTogXCI5XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMVwiLFxuICAgIHk6IFwiMTFcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJHYgPSBbXCJjb2xvclwiXTtcbnZhciBCb3JkZXJEYXNoZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJHYpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0wIDcuNUMwIDcuMjIzODYgMC4yMjM4NTggNyAwLjUgN0gzQzMuMjc2MTQgNyAzLjUgNy4yMjM4NiAzLjUgNy41QzMuNSA3Ljc3NjE0IDMuMjc2MTQgOCAzIDhIMC41QzAuMjIzODU4IDggMCA3Ljc3NjE0IDAgNy41Wk01Ljc1IDcuNUM1Ljc1IDcuMjIzODYgNS45NzM4NiA3IDYuMjUgN0g4Ljc1QzkuMDI2MTQgNyA5LjI1IDcuMjIzODYgOS4yNSA3LjVDOS4yNSA3Ljc3NjE0IDkuMDI2MTQgOCA4Ljc1IDhINi4yNUM1Ljk3Mzg2IDggNS43NSA3Ljc3NjE0IDUuNzUgNy41Wk0xMiA3QzExLjcyMzkgNyAxMS41IDcuMjIzODYgMTEuNSA3LjVDMTEuNSA3Ljc3NjE0IDExLjcyMzkgOCAxMiA4SDE0LjVDMTQuNzc2MSA4IDE1IDcuNzc2MTQgMTUgNy41QzE1IDcuMjIzODYgMTQuNzc2MSA3IDE0LjUgN0gxMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJHcgPSBbXCJjb2xvclwiXTtcbnZhciBCb3JkZXJEb3R0ZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJHcpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjUgNi42MjVDMS4wMTY3NSA2LjYyNSAwLjYyNSA3LjAxNjc1IDAuNjI1IDcuNUMwLjYyNSA3Ljk4MzI1IDEuMDE2NzUgOC4zNzUgMS41IDguMzc1QzEuOTgzMjUgOC4zNzUgMi4zNzUgNy45ODMyNSAyLjM3NSA3LjVDMi4zNzUgNy4wMTY3NSAxLjk4MzI1IDYuNjI1IDEuNSA2LjYyNVpNNS41IDYuNjI1QzUuMDE2NzUgNi42MjUgNC42MjUgNy4wMTY3NSA0LjYyNSA3LjVDNC42MjUgNy45ODMyNSA1LjAxNjc1IDguMzc1IDUuNSA4LjM3NUM1Ljk4MzI1IDguMzc1IDYuMzc1IDcuOTgzMjUgNi4zNzUgNy41QzYuMzc1IDcuMDE2NzUgNS45ODMyNSA2LjYyNSA1LjUgNi42MjVaTTkuNSA2LjYyNUM5LjAxNjc1IDYuNjI1IDguNjI1IDcuMDE2NzUgOC42MjUgNy41QzguNjI1IDcuOTgzMjUgOS4wMTY3NSA4LjM3NSA5LjUgOC4zNzVDOS45ODMyNSA4LjM3NSAxMC4zNzUgNy45ODMyNSAxMC4zNzUgNy41QzEwLjM3NSA3LjAxNjc1IDkuOTgzMjUgNi42MjUgOS41IDYuNjI1Wk0xMi42MjUgNy41QzEyLjYyNSA3LjAxNjc1IDEzLjAxNjggNi42MjUgMTMuNSA2LjYyNUMxMy45ODMyIDYuNjI1IDE0LjM3NSA3LjAxNjc1IDE0LjM3NSA3LjVDMTQuMzc1IDcuOTgzMjUgMTMuOTgzMiA4LjM3NSAxMy41IDguMzc1QzEzLjAxNjggOC4zNzUgMTIuNjI1IDcuOTgzMjUgMTIuNjI1IDcuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJHggPSBbXCJjb2xvclwiXTtcbnZhciBCb3JkZXJMZWZ0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCR4KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS43NSAxTDEuNzUgMTRMMC4yNDk5OTkgMTRMMC4yNSAxTDEuNzUgMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxMFwiLFxuICAgIHk6IFwiN1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCAxMCA3KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxMFwiLFxuICAgIHk6IFwiMTNcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoOTAgMTAgMTMpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEyXCIsXG4gICAgeTogXCI3XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDEyIDcpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEyXCIsXG4gICAgeTogXCIxM1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCAxMiAxMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiOFwiLFxuICAgIHk6IFwiN1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCA4IDcpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjE0XCIsXG4gICAgeTogXCI3XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDE0IDcpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjhcIixcbiAgICB5OiBcIjEzXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDggMTMpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjE0XCIsXG4gICAgeTogXCIxM1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCAxNCAxMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiOFwiLFxuICAgIHk6IFwiNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCA4IDUpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjE0XCIsXG4gICAgeTogXCI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDE0IDUpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjhcIixcbiAgICB5OiBcIjNcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoOTAgOCAzKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxNFwiLFxuICAgIHk6IFwiM1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCAxNCAzKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI4XCIsXG4gICAgeTogXCI5XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDggOSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTRcIixcbiAgICB5OiBcIjlcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoOTAgMTQgOSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiOFwiLFxuICAgIHk6IFwiMTFcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoOTAgOCAxMSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTRcIixcbiAgICB5OiBcIjExXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDE0IDExKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI2XCIsXG4gICAgeTogXCI3XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDYgNylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiNlwiLFxuICAgIHk6IFwiMTNcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoOTAgNiAxMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiNFwiLFxuICAgIHk6IFwiN1wiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCA0IDcpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjRcIixcbiAgICB5OiBcIjEzXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDQgMTMpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEwXCIsXG4gICAgeTogXCIxXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDEwIDEpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEyXCIsXG4gICAgeTogXCIxXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDEyIDEpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjhcIixcbiAgICB5OiBcIjFcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoOTAgOCAxKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxNFwiLFxuICAgIHk6IFwiMVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCAxNCAxKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI2XCIsXG4gICAgeTogXCIxXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKDkwIDYgMSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiNFwiLFxuICAgIHk6IFwiMVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCA0IDEpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkeSA9IFtcImNvbG9yXCJdO1xudmFyIEJvcmRlck5vbmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJHkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjUuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTNcIixcbiAgICB5OiBcIjUuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiN1wiLFxuICAgIHk6IFwiMy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxM1wiLFxuICAgIHk6IFwiMy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCI3LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjEzLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjEuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTNcIixcbiAgICB5OiBcIjcuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTNcIixcbiAgICB5OiBcIjEzLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEzXCIsXG4gICAgeTogXCIxLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjVcIixcbiAgICB5OiBcIjcuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiNVwiLFxuICAgIHk6IFwiMTMuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiNVwiLFxuICAgIHk6IFwiMS4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIzXCIsXG4gICAgeTogXCI3LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjNcIixcbiAgICB5OiBcIjEzLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjNcIixcbiAgICB5OiBcIjEuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiOVwiLFxuICAgIHk6IFwiNy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI5XCIsXG4gICAgeTogXCIxMy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI5XCIsXG4gICAgeTogXCIxLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjExXCIsXG4gICAgeTogXCI3LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjExXCIsXG4gICAgeTogXCIxMy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxMVwiLFxuICAgIHk6IFwiMS4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCI5LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEzXCIsXG4gICAgeTogXCI5LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjExLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEzXCIsXG4gICAgeTogXCIxMS4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxXCIsXG4gICAgeTogXCI1LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjFcIixcbiAgICB5OiBcIjMuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMVwiLFxuICAgIHk6IFwiNy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxXCIsXG4gICAgeTogXCIxMy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxXCIsXG4gICAgeTogXCIxLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjFcIixcbiAgICB5OiBcIjkuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMVwiLFxuICAgIHk6IFwiMTEuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCR6ID0gW1wiY29sb3JcIl07XG52YXIgQm9yZGVyUmlnaHRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJHopO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMy4yNSAxTDEzLjI1IDE0TDE0Ljc1IDE0TDE0Ljc1IDFMMTMuMjUgMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwibWF0cml4KDAgMSAxIDAgNSA3KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwibWF0cml4KDAgMSAxIDAgNSAxMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDMgNylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDMgMTMpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJtYXRyaXgoMCAxIDEgMCA3IDcpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJtYXRyaXgoMCAxIDEgMCAxIDcpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJtYXRyaXgoMCAxIDEgMCA3IDEzKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwibWF0cml4KDAgMSAxIDAgMSAxMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDcgNSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDEgNSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDcgMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDEgMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDcgOSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDEgOSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDcgMTEpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJtYXRyaXgoMCAxIDEgMCAxIDExKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwibWF0cml4KDAgMSAxIDAgOSA3KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwibWF0cml4KDAgMSAxIDAgOSAxMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDExIDcpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJtYXRyaXgoMCAxIDEgMCAxMSAxMylcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDUgMSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDMgMSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDcgMSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDEgMSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDkgMSlcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcIm1hdHJpeCgwIDEgMSAwIDExIDEpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkQSA9IFtcImNvbG9yXCJdO1xudmFyIEJvcmRlclNvbGlkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRBKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS4yNSA3LjVDMS4yNSA3LjIyMzg2IDEuNDczODYgNyAxLjc1IDdIMTMuMjVDMTMuNTI2MSA3IDEzLjc1IDcuMjIzODYgMTMuNzUgNy41QzEzLjc1IDcuNzc2MTQgMTMuNTI2MSA4IDEzLjI1IDhIMS43NUMxLjQ3Mzg2IDggMS4yNSA3Ljc3NjE0IDEuMjUgNy41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkQiA9IFtcImNvbG9yXCJdO1xudmFyIEJvcmRlclNwbGl0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRCKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCI1LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjMuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiN1wiLFxuICAgIHk6IFwiNy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCIxMy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI3XCIsXG4gICAgeTogXCIxLjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjEzXCIsXG4gICAgeTogXCI3LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjVcIixcbiAgICB5OiBcIjcuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiM1wiLFxuICAgIHk6IFwiNy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI5XCIsXG4gICAgeTogXCI3LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjExXCIsXG4gICAgeTogXCI3LjAyNVwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjdcIixcbiAgICB5OiBcIjkuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiN1wiLFxuICAgIHk6IFwiMTEuMDI1XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMVwiLFxuICAgIHk6IFwiNy4wMjVcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMSAxLjQ5OTk0QzEgMS4yMjM4IDEuMjIzODYgMC45OTk5MzkgMS41IDAuOTk5OTM5SDZWMS45OTk5NEgyVjUuOTk5OTRIMVYxLjQ5OTk0Wk0xMyAxLjk5OTk0SDlWMC45OTk5MzlIMTMuNUMxMy43NzYxIDAuOTk5OTM5IDE0IDEuMjIzOCAxNCAxLjQ5OTk0VjUuOTk5OTRIMTNWMS45OTk5NFpNMSAxMy40OTk5VjguOTk5OTRIMlYxMi45OTk5SDZWMTMuOTk5OUgxLjVDMS4yMjM4NiAxMy45OTk5IDEgMTMuNzc2MSAxIDEzLjQ5OTlaTTEzIDEyLjk5OTlWOC45OTk5NEgxNFYxMy40OTk5QzE0IDEzLjc3NjEgMTMuNzc2MSAxMy45OTk5IDEzLjUgMTMuOTk5OUg5LjVWMTIuOTk5OUgxM1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJEMgPSBbXCJjb2xvclwiXTtcbnZhciBCb3JkZXJTdHlsZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkQyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEuNSAzQzEuMjIzODYgMyAxIDMuMjIzODYgMSAzLjVDMSAzLjc3NjE0IDEuMjIzODYgNCAxLjUgNEgxMy41QzEzLjc3NjEgNCAxNCAzLjc3NjE0IDE0IDMuNUMxNCAzLjIyMzg2IDEzLjc3NjEgMyAxMy41IDNIMS41Wk0xIDcuNUMxIDcuMjIzODYgMS4yMjM4NiA3IDEuNSA3SDMuNUMzLjc3NjE0IDcgNCA3LjIyMzg2IDQgNy41QzQgNy43NzYxNCAzLjc3NjE0IDggMy41IDhIMS41QzEuMjIzODYgOCAxIDcuNzc2MTQgMSA3LjVaTTEgMTEuNUMxIDExLjIyMzkgMS4yMjM4NiAxMSAxLjUgMTFDMS43NzYxNCAxMSAyIDExLjIyMzkgMiAxMS41QzIgMTEuNzc2MSAxLjc3NjE0IDEyIDEuNSAxMkMxLjIyMzg2IDEyIDEgMTEuNzc2MSAxIDExLjVaTTMgMTEuNUMzIDExLjIyMzkgMy4yMjM4NiAxMSAzLjUgMTFDMy43NzYxNCAxMSA0IDExLjIyMzkgNCAxMS41QzQgMTEuNzc2MSAzLjc3NjE0IDEyIDMuNSAxMkMzLjIyMzg2IDEyIDMgMTEuNzc2MSAzIDExLjVaTTUuNSAxMUM1LjIyMzg2IDExIDUgMTEuMjIzOSA1IDExLjVDNSAxMS43NzYxIDUuMjIzODYgMTIgNS41IDEyQzUuNzc2MTQgMTIgNiAxMS43NzYxIDYgMTEuNUM2IDExLjIyMzkgNS43NzYxNCAxMSA1LjUgMTFaTTcgMTEuNUM3IDExLjIyMzkgNy4yMjM4NiAxMSA3LjUgMTFDNy43NzYxNCAxMSA4IDExLjIyMzkgOCAxMS41QzggMTEuNzc2MSA3Ljc3NjE0IDEyIDcuNSAxMkM3LjIyMzg2IDEyIDcgMTEuNzc2MSA3IDExLjVaTTkuNSAxMUM5LjIyMzg2IDExIDkgMTEuMjIzOSA5IDExLjVDOSAxMS43NzYxIDkuMjIzODYgMTIgOS41IDEyQzkuNzc2MTQgMTIgMTAgMTEuNzc2MSAxMCAxMS41QzEwIDExLjIyMzkgOS43NzYxNCAxMSA5LjUgMTFaTTExIDExLjVDMTEgMTEuMjIzOSAxMS4yMjM5IDExIDExLjUgMTFDMTEuNzc2MSAxMSAxMiAxMS4yMjM5IDEyIDExLjVDMTIgMTEuNzc2MSAxMS43NzYxIDEyIDExLjUgMTJDMTEuMjIzOSAxMiAxMSAxMS43NzYxIDExIDExLjVaTTEzLjUgMTFDMTMuMjIzOSAxMSAxMyAxMS4yMjM5IDEzIDExLjVDMTMgMTEuNzc2MSAxMy4yMjM5IDEyIDEzLjUgMTJDMTMuNzc2MSAxMiAxNCAxMS43NzYxIDE0IDExLjVDMTQgMTEuMjIzOSAxMy43NzYxIDExIDEzLjUgMTFaTTYuNSA3QzYuMjIzODYgNyA2IDcuMjIzODYgNiA3LjVDNiA3Ljc3NjE0IDYuMjIzODYgOCA2LjUgOEg4LjVDOC43NzYxNCA4IDkgNy43NzYxNCA5IDcuNUM5IDcuMjIzODYgOC43NzYxNCA3IDguNSA3SDYuNVpNMTEgNy41QzExIDcuMjIzODYgMTEuMjIzOSA3IDExLjUgN0gxMy41QzEzLjc3NjEgNyAxNCA3LjIyMzg2IDE0IDcuNUMxNCA3Ljc3NjE0IDEzLjc3NjEgOCAxMy41IDhIMTEuNUMxMS4yMjM5IDggMTEgNy43NzYxNCAxMSA3LjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCREID0gW1wiY29sb3JcIl07XG52YXIgQm9yZGVyVG9wSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCREKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTQgMS43NUwxIDEuNzVMMSAwLjI0OTk5OUwxNCAwLjI1TDE0IDEuNzVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiOFwiLFxuICAgIHk6IFwiMTBcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCA4IDEwKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIyXCIsXG4gICAgeTogXCIxMFwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSgtMTgwIDIgMTApXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjhcIixcbiAgICB5OiBcIjEyXCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKC0xODAgOCAxMilcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMlwiLFxuICAgIHk6IFwiMTJcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAyIDEyKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI4XCIsXG4gICAgeTogXCI4XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKC0xODAgOCA4KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI4XCIsXG4gICAgeTogXCIxNFwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSgtMTgwIDggMTQpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjJcIixcbiAgICB5OiBcIjhcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAyIDgpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjJcIixcbiAgICB5OiBcIjE0XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKC0xODAgMiAxNClcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTBcIixcbiAgICB5OiBcIjhcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxMCA4KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxMFwiLFxuICAgIHk6IFwiMTRcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxMCAxNClcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTJcIixcbiAgICB5OiBcIjhcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxMiA4KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxMlwiLFxuICAgIHk6IFwiMTRcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxMiAxNClcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiNlwiLFxuICAgIHk6IFwiOFwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSgtMTgwIDYgOClcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiNlwiLFxuICAgIHk6IFwiMTRcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCA2IDE0KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI0XCIsXG4gICAgeTogXCI4XCIsXG4gICAgd2lkdGg6IFwiMVwiLFxuICAgIGhlaWdodDogXCIxXCIsXG4gICAgcng6IFwiLjVcIixcbiAgICB0cmFuc2Zvcm06IFwicm90YXRlKC0xODAgNCA4KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCI0XCIsXG4gICAgeTogXCIxNFwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSgtMTgwIDQgMTQpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjhcIixcbiAgICB5OiBcIjZcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCA4IDYpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjJcIixcbiAgICB5OiBcIjZcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAyIDYpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjhcIixcbiAgICB5OiBcIjRcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCA4IDQpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjJcIixcbiAgICB5OiBcIjRcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAyIDQpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiBcIjE0XCIsXG4gICAgeTogXCIxMFwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSgtMTgwIDE0IDEwKVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxNFwiLFxuICAgIHk6IFwiMTJcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxNCAxMilcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTRcIixcbiAgICB5OiBcIjhcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxNCA4KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxNFwiLFxuICAgIHk6IFwiMTRcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxNCAxNClcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcInJlY3RcIiwge1xuICAgIHg6IFwiMTRcIixcbiAgICB5OiBcIjZcIixcbiAgICB3aWR0aDogXCIxXCIsXG4gICAgaGVpZ2h0OiBcIjFcIixcbiAgICByeDogXCIuNVwiLFxuICAgIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAxNCA2KVwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicmVjdFwiLCB7XG4gICAgeDogXCIxNFwiLFxuICAgIHk6IFwiNFwiLFxuICAgIHdpZHRoOiBcIjFcIixcbiAgICBoZWlnaHQ6IFwiMVwiLFxuICAgIHJ4OiBcIi41XCIsXG4gICAgdHJhbnNmb3JtOiBcInJvdGF0ZSgtMTgwIDE0IDQpXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkRSA9IFtcImNvbG9yXCJdO1xudmFyIEJvcmRlcldpZHRoSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRFKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMSAzSDE0VjRIMVYzWk0xIDZIMTRWOEgxVjZaTTE0IDEwLjI1SDFWMTIuNzVIMTRWMTAuMjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRGID0gW1wiY29sb3JcIl07XG52YXIgQm94SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRGKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTIuNSAySDIuNUMyLjIyMzg2IDIgMiAyLjIyMzg2IDIgMi41VjEyLjVDMiAxMi43NzYxIDIuMjIzODYgMTMgMi41IDEzSDEyLjVDMTIuNzc2MSAxMyAxMyAxMi43NzYxIDEzIDEyLjVWMi41QzEzIDIuMjIzODYgMTIuNzc2MSAyIDEyLjUgMlpNMi41IDFDMS42NzE1NyAxIDEgMS42NzE1NyAxIDIuNVYxMi41QzEgMTMuMzI4NCAxLjY3MTU3IDE0IDIuNSAxNEgxMi41QzEzLjMyODQgMTQgMTQgMTMuMzI4NCAxNCAxMi41VjIuNUMxNCAxLjY3MTU3IDEzLjMyODQgMSAxMi41IDFIMi41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkRyA9IFtcImNvbG9yXCJdO1xudmFyIEJveE1vZGVsSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRHKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS45OTk5OCAwLjk5OTk3NkMxLjQ0NzY5IDAuOTk5OTc2IDAuOTk5OTc2IDEuNDQ3NjkgMC45OTk5NzYgMS45OTk5OFYxM0MwLjk5OTk3NiAxMy41NTIzIDEuNDQ3NjkgMTQgMS45OTk5OCAxNEgxM0MxMy41NTIzIDE0IDE0IDEzLjU1MjMgMTQgMTNWMS45OTk5OEMxNCAxLjQ0NzY5IDEzLjU1MjMgMC45OTk5NzYgMTMgMC45OTk5NzZIMS45OTk5OFpNMS45OTk5OCAxLjk5OTk4TDEzIDEuOTk5OThWMTNIMS45OTk5OFYxLjk5OTk4Wk00LjQ5OTk2IDMuOTk5OTZDNC4yMjM4MiAzLjk5OTk2IDMuOTk5OTYgNC4yMjM4MiAzLjk5OTk2IDQuNDk5OTZWMTAuNUMzLjk5OTk2IDEwLjc3NjEgNC4yMjM4MiAxMSA0LjQ5OTk2IDExSDEwLjVDMTAuNzc2MSAxMSAxMSAxMC43NzYxIDExIDEwLjVWNC40OTk5NkMxMSA0LjIyMzgyIDEwLjc3NjEgMy45OTk5NiAxMC41IDMuOTk5OTZINC40OTk5NlpNNC45OTk5NiA5Ljk5OTk2VjQuOTk5OTZIOS45OTk5NlY5Ljk5OTk2SDQuOTk5OTZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRIID0gW1wiY29sb3JcIl07XG52YXIgQnV0dG9uSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRIKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMiA1SDEzQzEzLjU1MjMgNSAxNCA1LjQ0NzcyIDE0IDZWOUMxNCA5LjU1MjI4IDEzLjU1MjMgMTAgMTMgMTBIMkMxLjQ0NzcyIDEwIDEgOS41NTIyOCAxIDlWNkMxIDUuNDQ3NzIgMS40NDc3MiA1IDIgNVpNMCA2QzAgNC44OTU0MyAwLjg5NTQzMSA0IDIgNEgxM0MxNC4xMDQ2IDQgMTUgNC44OTU0MyAxNSA2VjlDMTUgMTAuMTA0NiAxNC4xMDQ2IDExIDEzIDExSDJDMC44OTU0MyAxMSAwIDEwLjEwNDYgMCA5VjZaTTQuNSA2Ljc1QzQuMDg1NzkgNi43NSAzLjc1IDcuMDg1NzkgMy43NSA3LjVDMy43NSA3LjkxNDIxIDQuMDg1NzkgOC4yNSA0LjUgOC4yNUM0LjkxNDIxIDguMjUgNS4yNSA3LjkxNDIxIDUuMjUgNy41QzUuMjUgNy4wODU3OSA0LjkxNDIxIDYuNzUgNC41IDYuNzVaTTYuNzUgNy41QzYuNzUgNy4wODU3OSA3LjA4NTc5IDYuNzUgNy41IDYuNzVDNy45MTQyMSA2Ljc1IDguMjUgNy4wODU3OSA4LjI1IDcuNUM4LjI1IDcuOTE0MjEgNy45MTQyMSA4LjI1IDcuNSA4LjI1QzcuMDg1NzkgOC4yNSA2Ljc1IDcuOTE0MjEgNi43NSA3LjVaTTEwLjUgNi43NUMxMC4wODU4IDYuNzUgOS43NSA3LjA4NTc5IDkuNzUgNy41QzkuNzUgNy45MTQyMSAxMC4wODU4IDguMjUgMTAuNSA4LjI1QzEwLjkxNDIgOC4yNSAxMS4yNSA3LjkxNDIxIDExLjI1IDcuNUMxMS4yNSA3LjA4NTc5IDEwLjkxNDIgNi43NSAxMC41IDYuNzVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRJID0gW1wiY29sb3JcIl07XG52YXIgQ2FsZW5kYXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJEkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk00LjUgMUM0Ljc3NjE0IDEgNSAxLjIyMzg2IDUgMS41VjJIMTBWMS41QzEwIDEuMjIzODYgMTAuMjIzOSAxIDEwLjUgMUMxMC43NzYxIDEgMTEgMS4yMjM4NiAxMSAxLjVWMkgxMi41QzEzLjMyODQgMiAxNCAyLjY3MTU3IDE0IDMuNVYxMi41QzE0IDEzLjMyODQgMTMuMzI4NCAxNCAxMi41IDE0SDIuNUMxLjY3MTU3IDE0IDEgMTMuMzI4NCAxIDEyLjVWMy41QzEgMi42NzE1NyAxLjY3MTU3IDIgMi41IDJINFYxLjVDNCAxLjIyMzg2IDQuMjIzODYgMSA0LjUgMVpNMTAgM1YzLjVDMTAgMy43NzYxNCAxMC4yMjM5IDQgMTAuNSA0QzEwLjc3NjEgNCAxMSAzLjc3NjE0IDExIDMuNVYzSDEyLjVDMTIuNzc2MSAzIDEzIDMuMjIzODYgMTMgMy41VjVIMlYzLjVDMiAzLjIyMzg2IDIuMjIzODYgMyAyLjUgM0g0VjMuNUM0IDMuNzc2MTQgNC4yMjM4NiA0IDQuNSA0QzQuNzc2MTQgNCA1IDMuNzc2MTQgNSAzLjVWM0gxMFpNMiA2VjEyLjVDMiAxMi43NzYxIDIuMjIzODYgMTMgMi41IDEzSDEyLjVDMTIuNzc2MSAxMyAxMyAxMi43NzYxIDEzIDEyLjVWNkgyWk03IDcuNUM3IDcuMjIzODYgNy4yMjM4NiA3IDcuNSA3QzcuNzc2MTQgNyA4IDcuMjIzODYgOCA3LjVDOCA3Ljc3NjE0IDcuNzc2MTQgOCA3LjUgOEM3LjIyMzg2IDggNyA3Ljc3NjE0IDcgNy41Wk05LjUgN0M5LjIyMzg2IDcgOSA3LjIyMzg2IDkgNy41QzkgNy43NzYxNCA5LjIyMzg2IDggOS41IDhDOS43NzYxNCA4IDEwIDcuNzc2MTQgMTAgNy41QzEwIDcuMjIzODYgOS43NzYxNCA3IDkuNSA3Wk0xMSA3LjVDMTEgNy4yMjM4NiAxMS4yMjM5IDcgMTEuNSA3QzExLjc3NjEgNyAxMiA3LjIyMzg2IDEyIDcuNUMxMiA3Ljc3NjE0IDExLjc3NjEgOCAxMS41IDhDMTEuMjIzOSA4IDExIDcuNzc2MTQgMTEgNy41Wk0xMS41IDlDMTEuMjIzOSA5IDExIDkuMjIzODYgMTEgOS41QzExIDkuNzc2MTQgMTEuMjIzOSAxMCAxMS41IDEwQzExLjc3NjEgMTAgMTIgOS43NzYxNCAxMiA5LjVDMTIgOS4yMjM4NiAxMS43NzYxIDkgMTEuNSA5Wk05IDkuNUM5IDkuMjIzODYgOS4yMjM4NiA5IDkuNSA5QzkuNzc2MTQgOSAxMCA5LjIyMzg2IDEwIDkuNUMxMCA5Ljc3NjE0IDkuNzc2MTQgMTAgOS41IDEwQzkuMjIzODYgMTAgOSA5Ljc3NjE0IDkgOS41Wk03LjUgOUM3LjIyMzg2IDkgNyA5LjIyMzg2IDcgOS41QzcgOS43NzYxNCA3LjIyMzg2IDEwIDcuNSAxMEM3Ljc3NjE0IDEwIDggOS43NzYxNCA4IDkuNUM4IDkuMjIzODYgNy43NzYxNCA5IDcuNSA5Wk01IDkuNUM1IDkuMjIzODYgNS4yMjM4NiA5IDUuNSA5QzUuNzc2MTQgOSA2IDkuMjIzODYgNiA5LjVDNiA5Ljc3NjE0IDUuNzc2MTQgMTAgNS41IDEwQzUuMjIzODYgMTAgNSA5Ljc3NjE0IDUgOS41Wk0zLjUgOUMzLjIyMzg2IDkgMyA5LjIyMzg2IDMgOS41QzMgOS43NzYxNCAzLjIyMzg2IDEwIDMuNSAxMEMzLjc3NjE0IDEwIDQgOS43NzYxNCA0IDkuNUM0IDkuMjIzODYgMy43NzYxNCA5IDMuNSA5Wk0zIDExLjVDMyAxMS4yMjM5IDMuMjIzODYgMTEgMy41IDExQzMuNzc2MTQgMTEgNCAxMS4yMjM5IDQgMTEuNUM0IDExLjc3NjEgMy43NzYxNCAxMiAzLjUgMTJDMy4yMjM4NiAxMiAzIDExLjc3NjEgMyAxMS41Wk01LjUgMTFDNS4yMjM4NiAxMSA1IDExLjIyMzkgNSAxMS41QzUgMTEuNzc2MSA1LjIyMzg2IDEyIDUuNSAxMkM1Ljc3NjE0IDEyIDYgMTEuNzc2MSA2IDExLjVDNiAxMS4yMjM5IDUuNzc2MTQgMTEgNS41IDExWk03IDExLjVDNyAxMS4yMjM5IDcuMjIzODYgMTEgNy41IDExQzcuNzc2MTQgMTEgOCAxMS4yMjM5IDggMTEuNUM4IDExLjc3NjEgNy43NzYxNCAxMiA3LjUgMTJDNy4yMjM4NiAxMiA3IDExLjc3NjEgNyAxMS41Wk05LjUgMTFDOS4yMjM4NiAxMSA5IDExLjIyMzkgOSAxMS41QzkgMTEuNzc2MSA5LjIyMzg2IDEyIDkuNSAxMkM5Ljc3NjE0IDEyIDEwIDExLjc3NjEgMTAgMTEuNUMxMCAxMS4yMjM5IDkuNzc2MTQgMTEgOS41IDExWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkSiA9IFtcImNvbG9yXCJdO1xudmFyIENhbWVyYUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkSik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIgM0MxLjQ0NzcyIDMgMSAzLjQ0NzcyIDEgNFYxMUMxIDExLjU1MjMgMS40NDc3MiAxMiAyIDEySDEzQzEzLjU1MjMgMTIgMTQgMTEuNTUyMyAxNCAxMVY0QzE0IDMuNDQ3NzIgMTMuNTUyMyAzIDEzIDNIMlpNMCA0QzAgMi44OTU0MyAwLjg5NTQzMSAyIDIgMkgxM0MxNC4xMDQ2IDIgMTUgMi44OTU0MyAxNSA0VjExQzE1IDEyLjEwNDYgMTQuMTA0NiAxMyAxMyAxM0gyQzAuODk1NDMxIDEzIDAgMTIuMTA0NiAwIDExVjRaTTIgNC4yNUMyIDQuMTExOTMgMi4xMTE5MyA0IDIuMjUgNEg0Ljc1QzQuODg4MDcgNCA1IDQuMTExOTMgNSA0LjI1VjUuNzU0NTRDNSA1Ljg5MjYxIDQuODg4MDcgNi4wMDQ1NCA0Ljc1IDYuMDA0NTRIMi4yNUMyLjExMTkzIDYuMDA0NTQgMiA1Ljg5MjYxIDIgNS43NTQ1NFY0LjI1Wk0xMi4xMDEgNy41ODQyMUMxMi4xMDEgOS4wMjA3MyAxMC45MzY1IDEwLjE4NTMgOS40OTk5OCAxMC4xODUzQzguMDYzNDYgMTAuMTg1MyA2Ljg5ODkzIDkuMDIwNzMgNi44OTg5MyA3LjU4NDIxQzYuODk4OTMgNi4xNDc2OSA4LjA2MzQ2IDQuOTgzMTUgOS40OTk5OCA0Ljk4MzE1QzEwLjkzNjUgNC45ODMxNSAxMi4xMDEgNi4xNDc2OSAxMi4xMDEgNy41ODQyMVpNMTMuMTAxIDcuNTg0MjFDMTMuMTAxIDkuNTczMDIgMTEuNDg4OCAxMS4xODUzIDkuNDk5OTggMTEuMTg1M0M3LjUxMTE3IDExLjE4NTMgNS44OTg5MyA5LjU3MzAyIDUuODk4OTMgNy41ODQyMUM1Ljg5ODkzIDUuNTk1NCA3LjUxMTE3IDMuOTgzMTUgOS40OTk5OCAzLjk4MzE1QzExLjQ4ODggMy45ODMxNSAxMy4xMDEgNS41OTU0IDEzLjEwMSA3LjU4NDIxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkSyA9IFtcImNvbG9yXCJdO1xudmFyIENhcmRTdGFja0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkSyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIgMy41QzIgMy4yMjM4NiAyLjIyMzg2IDMgMi41IDNIMTIuNUMxMi43NzYxIDMgMTMgMy4yMjM4NiAxMyAzLjVWOS41QzEzIDkuNzc2MTQgMTIuNzc2MSAxMCAxMi41IDEwSDIuNUMyLjIyMzg2IDEwIDIgOS43NzYxNCAyIDkuNVYzLjVaTTIgMTAuOTE0NkMxLjQxNzQgMTAuNzA4NyAxIDEwLjE1MzEgMSA5LjVWMy41QzEgMi42NzE1NyAxLjY3MTU3IDIgMi41IDJIMTIuNUMxMy4zMjg0IDIgMTQgMi42NzE1NyAxNCAzLjVWOS41QzE0IDEwLjE1MzEgMTMuNTgyNiAxMC43MDg3IDEzIDEwLjkxNDZWMTEuNUMxMyAxMi4zMjg0IDEyLjMyODQgMTMgMTEuNSAxM0gzLjVDMi42NzE1NyAxMyAyIDEyLjMyODQgMiAxMS41VjEwLjkxNDZaTTEyIDExVjExLjVDMTIgMTEuNzc2MSAxMS43NzYxIDEyIDExLjUgMTJIMy41QzMuMjIzODYgMTIgMyAxMS43NzYxIDMgMTEuNVYxMUgxMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJEwgPSBbXCJjb2xvclwiXTtcbnZhciBDYXJkU3RhY2tNaW51c0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkTCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuNSAzQzIuMjIzODYgMyAyIDMuMjIzODYgMiAzLjVWOS41QzIgOS43NzYxNCAyLjIyMzg2IDEwIDIuNSAxMEgxMi41QzEyLjc3NjEgMTAgMTMgOS43NzYxNCAxMyA5LjVWMy41QzEzIDMuMjIzODYgMTIuNzc2MSAzIDEyLjUgM0gyLjVaTTEgOS41QzEgMTAuMTUzMSAxLjQxNzQgMTAuNzA4NyAyIDEwLjkxNDZWMTEuNUMyIDEyLjMyODQgMi42NzE1NyAxMyAzLjUgMTNIMTEuNUMxMi4zMjg0IDEzIDEzIDEyLjMyODQgMTMgMTEuNVYxMC45MTQ2QzEzLjU4MjYgMTAuNzA4NyAxNCAxMC4xNTMxIDE0IDkuNVYzLjVDMTQgMi42NzE1NyAxMy4zMjg0IDIgMTIuNSAySDIuNUMxLjY3MTU3IDIgMSAyLjY3MTU3IDEgMy41VjkuNVpNMTIgMTEuNVYxMUgzVjExLjVDMyAxMS43NzYxIDMuMjIzODYgMTIgMy41IDEySDExLjVDMTEuNzc2MSAxMiAxMiAxMS43NzYxIDEyIDExLjVaTTUuNSA2QzUuMjIzODYgNiA1IDYuMjIzODYgNSA2LjVDNSA2Ljc3NjE0IDUuMjIzODYgNyA1LjUgN0g5LjVDOS43NzYxNCA3IDEwIDYuNzc2MTQgMTAgNi41QzEwIDYuMjIzODYgOS43NzYxNCA2IDkuNSA2SDUuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJE0gPSBbXCJjb2xvclwiXTtcbnZhciBDYXJkU3RhY2tQbHVzSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRNKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMiAzLjVDMiAzLjIyMzg2IDIuMjIzODYgMyAyLjUgM0gxMi41QzEyLjc3NjEgMyAxMyAzLjIyMzg2IDEzIDMuNVY5LjVDMTMgOS43NzYxNCAxMi43NzYxIDEwIDEyLjUgMTBIMi41QzIuMjIzODYgMTAgMiA5Ljc3NjE0IDIgOS41VjMuNVpNMiAxMC45MTQ2QzEuNDE3NCAxMC43MDg3IDEgMTAuMTUzMSAxIDkuNVYzLjVDMSAyLjY3MTU3IDEuNjcxNTcgMiAyLjUgMkgxMi41QzEzLjMyODQgMiAxNCAyLjY3MTU3IDE0IDMuNVY5LjVDMTQgMTAuMTUzMSAxMy41ODI2IDEwLjcwODcgMTMgMTAuOTE0NlYxMS41QzEzIDEyLjMyODQgMTIuMzI4NCAxMyAxMS41IDEzSDMuNUMyLjY3MTU3IDEzIDIgMTIuMzI4NCAyIDExLjVWMTAuOTE0NlpNMTIgMTFWMTEuNUMxMiAxMS43NzYxIDExLjc3NjEgMTIgMTEuNSAxMkgzLjVDMy4yMjM4NiAxMiAzIDExLjc3NjEgMyAxMS41VjExSDEyWk01IDYuNUM1IDYuMjIzODYgNS4yMjM4NiA2IDUuNSA2SDdWNC41QzcgNC4yMjM4NiA3LjIyMzg2IDQgNy41IDRDNy43NzYxNCA0IDggNC4yMjM4NiA4IDQuNVY2SDkuNUM5Ljc3NjE0IDYgMTAgNi4yMjM4NiAxMCA2LjVDMTAgNi43NzYxNCA5Ljc3NjE0IDcgOS41IDdIOFY4LjVDOCA4Ljc3NjE0IDcuNzc2MTQgOSA3LjUgOUM3LjIyMzg2IDkgNyA4Ljc3NjE0IDcgOC41VjdINS41QzUuMjIzODYgNyA1IDYuNzc2MTQgNSA2LjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCROID0gW1wiY29sb3JcIl07XG52YXIgQ2FyZXREb3duSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCROKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC4xODE3OSA2LjE4MTgxQzQuMzU3NTMgNi4wMDYwOCA0LjY0MjQ1IDYuMDA2MDggNC44MTgxOSA2LjE4MTgxTDcuNDk5OTkgOC44NjM2MkwxMC4xODE4IDYuMTgxODFDMTAuMzU3NSA2LjAwNjA4IDEwLjY0MjQgNi4wMDYwOCAxMC44MTgyIDYuMTgxODFDMTAuOTkzOSA2LjM1NzU1IDEwLjk5MzkgNi42NDI0NyAxMC44MTgyIDYuODE4MjFMNy44MTgxOSA5LjgxODIxQzcuNzMzNzkgOS45MDI2IDcuNjE5MzQgOS45NTAwMSA3LjQ5OTk5IDkuOTUwMDFDNy4zODA2NCA5Ljk1MDAxIDcuMjY2MTggOS45MDI2IDcuMTgxNzkgOS44MTgyMUw0LjE4MTc5IDYuODE4MjFDNC4wMDYwNSA2LjY0MjQ3IDQuMDA2MDUgNi4zNTc1NSA0LjE4MTc5IDYuMTgxODFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRPID0gW1wiY29sb3JcIl07XG52YXIgQ2FyZXRMZWZ0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRPKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOC44MTgwOSA0LjE4MTc5QzguOTkzODMgNC4zNTc1MyA4Ljk5MzgzIDQuNjQyNDUgOC44MTgwOSA0LjgxODE5TDYuMTM2MjkgNy40OTk5OUw4LjgxODA5IDEwLjE4MThDOC45OTM4MyAxMC4zNTc1IDguOTkzODMgMTAuNjQyNCA4LjgxODA5IDEwLjgxODJDOC42NDIzNiAxMC45OTM5IDguMzU3NDMgMTAuOTkzOSA4LjE4MTcgMTAuODE4Mkw1LjE4MTcgNy44MTgxOUM1LjA5NzMxIDcuNzMzNzkgNS4wNDk5IDcuNjE5MzMgNS4wNDk5IDcuNDk5OTlDNS4wNDk5IDcuMzgwNjQgNS4wOTczMSA3LjI2NjE4IDUuMTgxNyA3LjE4MTc5TDguMTgxNyA0LjE4MTc5QzguMzU3NDMgNC4wMDYwNSA4LjY0MjM2IDQuMDA2MDUgOC44MTgwOSA0LjE4MTc5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkUCA9IFtcImNvbG9yXCJdO1xudmFyIENhcmV0UmlnaHRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJFApO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk02LjE4MTk0IDQuMTgxODVDNi4zNTc2NyA0LjAwNjExIDYuNjQyNiA0LjAwNjExIDYuODE4MzMgNC4xODE4NUw5LjgxODMzIDcuMTgxODVDOS45MDI3MiA3LjI2NjI0IDkuOTUwMTMgNy4zODA3IDkuOTUwMTMgNy41MDAwNUM5Ljk1MDEzIDcuNjE5NCA5LjkwMjcyIDcuNzMzODYgOS44MTgzMyA3LjgxODI1TDYuODE4MzMgMTAuODE4MkM2LjY0MjYgMTAuOTk0IDYuMzU3NjcgMTAuOTk0IDYuMTgxOTQgMTAuODE4MkM2LjAwNjIgMTAuNjQyNSA2LjAwNjIgMTAuMzU3NiA2LjE4MTk0IDEwLjE4MTlMOC44NjM3NCA3LjUwMDA1TDYuMTgxOTQgNC44MTgyNUM2LjAwNjIgNC42NDI1MSA2LjAwNjIgNC4zNTc1OSA2LjE4MTk0IDQuMTgxODVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRRID0gW1wiY29sb3JcIl07XG52YXIgQ2FyZXRTb3J0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRRKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC45MzE3OSA1LjQzMTc5QzQuNzU2MDUgNS42MDc1MyA0Ljc1NjA1IDUuODkyNDUgNC45MzE3OSA2LjA2ODE5QzUuMTA3NTMgNi4yNDM5MiA1LjM5MjQ1IDYuMjQzOTIgNS41NjgxOSA2LjA2ODE5TDcuNDk5OTkgNC4xMzYzOEw5LjQzMTc5IDYuMDY4MTlDOS42MDc1MyA2LjI0MzkyIDkuODkyNDUgNi4yNDM5MiAxMC4wNjgyIDYuMDY4MTlDMTAuMjQzOSA1Ljg5MjQ1IDEwLjI0MzkgNS42MDc1MyAxMC4wNjgyIDUuNDMxNzlMNy44MTgxOSAzLjE4MTc5QzcuNzMzNzkgMy4wOTc0IDcuNjE5MzMgMy4wNDk5OSA3LjQ5OTk5IDMuMDQ5OTlDNy4zODA2NCAzLjA0OTk5IDcuMjY2MTggMy4wOTc0IDcuMTgxNzkgMy4xODE3OUw0LjkzMTc5IDUuNDMxNzlaTTEwLjA2ODIgOS41NjgxOUMxMC4yNDM5IDkuMzkyNDUgMTAuMjQzOSA5LjEwNzUzIDEwLjA2ODIgOC45MzE3OUM5Ljg5MjQ1IDguNzU2MDYgOS42MDc1MyA4Ljc1NjA2IDkuNDMxNzkgOC45MzE3OUw3LjQ5OTk5IDEwLjg2MzZMNS41NjgxOSA4LjkzMTc5QzUuMzkyNDUgOC43NTYwNiA1LjEwNzUzIDguNzU2MDYgNC45MzE3OSA4LjkzMTc5QzQuNzU2MDUgOS4xMDc1MyA0Ljc1NjA1IDkuMzkyNDUgNC45MzE3OSA5LjU2ODE5TDcuMTgxNzkgMTEuODE4MkM3LjM1NzUzIDExLjk5MzkgNy42NDI0NSAxMS45OTM5IDcuODE4MTkgMTEuODE4MkwxMC4wNjgyIDkuNTY4MTlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRSID0gW1wiY29sb3JcIl07XG52YXIgQ2FyZXRVcEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkUik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTQuMTgxNzkgOC44MTgxOUM0LjAwNjA1IDguNjQyNDUgNC4wMDYwNSA4LjM1NzUzIDQuMTgxNzkgOC4xODE3OUw3LjE4MTc5IDUuMTgxNzlDNy4yNjYxOCA1LjA5NzQgNy4zODA2NCA1LjA0OTk5IDcuNDk5OTkgNS4wNDk5OUM3LjYxOTMzIDUuMDQ5OTkgNy43MzM3OSA1LjA5NzQgNy44MTgxOSA1LjE4MTc5TDEwLjgxODIgOC4xODE3OUMxMC45OTM5IDguMzU3NTMgMTAuOTkzOSA4LjY0MjQ1IDEwLjgxODIgOC44MTgxOUMxMC42NDI0IDguOTkzOTIgMTAuMzU3NSA4Ljk5MzkyIDEwLjE4MTggOC44MTgxOUw3LjQ5OTk5IDYuMTM2MzhMNC44MTgxOSA4LjgxODE5QzQuNjQyNDUgOC45OTM5MiA0LjM1NzUzIDguOTkzOTIgNC4xODE3OSA4LjgxODE5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkUyA9IFtcImNvbG9yXCJdO1xudmFyIENoYXRCdWJibGVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJFMpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMi41IDNMMi41IDMuMDAwMDJDMS42NzE1NyAzLjAwMDAyIDEgMy42NzE2IDEgNC41MDAwMlY5LjUwMDAzQzEgMTAuMzI4NSAxLjY3MTU3IDExIDIuNSAxMUg3LjUwMDAzQzcuNjMyNjQgMTEgNy43NTk4MiAxMS4wNTI3IDcuODUzNTggMTEuMTQ2NUwxMCAxMy4yOTI5VjExLjVDMTAgMTEuMjIzOSAxMC4yMjM5IDExIDEwLjUgMTFIMTIuNUMxMy4zMjg0IDExIDE0IDEwLjMyODUgMTQgOS41MDAwM1Y0LjVDMTQgMy42NzE1NyAxMy4zMjg0IDMgMTIuNSAzWk0yLjQ5OTk5IDIuMDAwMDJMMTIuNSAyQzEzLjg4MDcgMiAxNSAzLjExOTI5IDE1IDQuNVY5LjUwMDAzQzE1IDEwLjg4MDcgMTMuODgwNyAxMiAxMi41IDEySDExVjE0LjVDMTEgMTQuNzAyMiAxMC44NzgyIDE0Ljg4NDUgMTAuNjkxMyAxNC45NjE5QzEwLjUwNDUgMTUuMDM5MyAxMC4yODk0IDE0Ljk5NjUgMTAuMTQ2NCAxNC44NTM2TDcuMjkyOTIgMTJIMi41QzEuMTE5MjkgMTIgMCAxMC44ODA3IDAgOS41MDAwM1Y0LjUwMDAyQzAgMy4xMTkzMSAxLjExOTI4IDIuMDAwMDMgMi40OTk5OSAyLjAwMDAyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkVCA9IFtcImNvbG9yXCJdO1xudmFyIENoZWNrSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRUKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTEuNDY2OSAzLjcyNjg0QzExLjc1NTggMy45MTU3NCAxMS44MzY5IDQuMzAzMDggMTEuNjQ4IDQuNTkxOThMNy4zOTc5OSAxMS4wOTJDNy4yOTc4MyAxMS4yNDUyIDcuMTM1NTYgMTEuMzQ2NyA2Ljk1NDAyIDExLjM2OTlDNi43NzI0NyAxMS4zOTMxIDYuNTg5ODkgMTEuMzM1NSA2LjQ1NDQ2IDExLjIxMjRMMy43MDQ0NiA4LjcxMjQxQzMuNDQ5MDUgOC40ODAyMiAzLjQzMDIzIDguMDg0OTQgMy42NjI0MiA3LjgyOTUzQzMuODk0NjEgNy41NzQxMiA0LjI4OTg5IDcuNTU1MjkgNC41NDUzIDcuNzg3NDlMNi43NTI5MiA5Ljc5NDQxTDEwLjYwMTggMy45MDc5MkMxMC43OTA3IDMuNjE5MDIgMTEuMTc4IDMuNTM3OTUgMTEuNDY2OSAzLjcyNjg0WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkVSA9IFtcImNvbG9yXCJdO1xudmFyIENoZWNrQ2lyY2xlZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkVSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTEgMC44NzcwNDVDMy44NDIyMiAwLjg3NzA0NSAwLjg3NzA3NSAzLjg0MjE5IDAuODc3MDc1IDcuNDk5ODhDMC44NzcwNzUgMTEuMTU3NSAzLjg0MjIyIDE0LjEyMjcgNy40OTk5MSAxNC4xMjI3QzExLjE1NzYgMTQuMTIyNyAxNC4xMjI3IDExLjE1NzUgMTQuMTIyNyA3LjQ5OTg4QzE0LjEyMjcgMy44NDIxOSAxMS4xNTc2IDAuODc3MDQ1IDcuNDk5OTEgMC44NzcwNDVaTTEuODI3MDggNy40OTk4OEMxLjgyNzA4IDQuMzY2ODYgNC4zNjY4OSAxLjgyNzA0IDcuNDk5OTEgMS44MjcwNEMxMC42MzI5IDEuODI3MDQgMTMuMTcyNyA0LjM2Njg2IDEzLjE3MjcgNy40OTk4OEMxMy4xNzI3IDEwLjYzMjkgMTAuNjMyOSAxMy4xNzI3IDcuNDk5OTEgMTMuMTcyN0M0LjM2Njg5IDEzLjE3MjcgMS44MjcwOCAxMC42MzI5IDEuODI3MDggNy40OTk4OFpNMTAuMTU4OSA1LjUzNzc0QzEwLjMxNzggNS4zMTE5MSAxMC4yNjM2IDUuMDAwMDEgMTAuMDM3OCA0Ljg0MTA5QzkuODExOTQgNC42ODIxNyA5LjUwMDA0IDQuNzM2NDIgOS4zNDExMiA0Ljk2MjI1TDYuNTE5NzcgOC45NzE1NEw1LjM1NjgxIDcuNzg3MDZDNS4xNjMzNCA3LjU5MDAyIDQuODQ2NzcgNy41ODcxMSA0LjY0OTczIDcuNzgwNThDNC40NTI2OCA3Ljk3NDA0IDQuNDQ5NzggOC4yOTA2MSA0LjY0MzI1IDguNDg3NjVMNi4yMjY1OCAxMC4xMDAzQzYuMzMwNTQgMTAuMjA2MiA2LjQ3NjE3IDEwLjI2MDQgNi42MjQwNyAxMC4yNDgzQzYuNzcxOTcgMTAuMjM2MyA2LjkwNjg2IDEwLjE1OTEgNi45OTIyNiAxMC4wMzc3TDEwLjE1ODkgNS41Mzc3NFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJFYgPSBbXCJjb2xvclwiXTtcbnZhciBDaGVja2JveEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkVik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMgM0gxMlYxMkgzTDMgM1pNMiAzQzIgMi40NDc3MSAyLjQ0NzcyIDIgMyAySDEyQzEyLjU1MjMgMiAxMyAyLjQ0NzcyIDEzIDNWMTJDMTMgMTIuNTUyMyAxMi41NTIzIDEzIDEyIDEzSDNDMi40NDc3MSAxMyAyIDEyLjU1MjMgMiAxMlYzWk0xMC4zNDk4IDUuNTExMDVDMTAuNTA2IDUuMjgzMzcgMTAuNDQ4MSA0Ljk3MjEyIDEwLjIyMDQgNC44MTU4N0M5Ljk5Mjc1IDQuNjU5NjEgOS42ODE1IDQuNzE3NTEgOS41MjUyNSA0Ljk0NTE5TDYuNjQwNDggOS4xNDg1N0w1LjE5NzMzIDcuNDA4ODlDNS4wMjEwMiA3LjE5NjM1IDQuNzA1OCA3LjE2Njk5IDQuNDkzMjcgNy4zNDMyOUM0LjI4MDczIDcuNTE5NiA0LjI1MTM3IDcuODM0ODIgNC40Mjc2NyA4LjA0NzM1TDYuMjkzNCAxMC4yOTY0QzYuMzkzNDggMTAuNDE3MSA2LjU0NDM3IDEwLjQ4MzggNi43MDA5NyAxMC40NzY3QzYuODU3NTcgMTAuNDY5NSA3LjAwMTc3IDEwLjM4OTQgNy4wOTA0NyAxMC4yNjAxTDEwLjM0OTggNS41MTEwNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJFcgPSBbXCJjb2xvclwiXTtcbnZhciBDaGV2cm9uRG93bkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkVyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMuMTM1MjMgNi4xNTgwM0MzLjMyNDEgNS45NTY1NyAzLjY0MDUyIDUuOTQ2MzcgMy44NDE5NyA2LjEzNTIzTDcuNSA5LjU2NDY0TDExLjE1OCA2LjEzNTIzQzExLjM1OTUgNS45NDYzNyAxMS42NzU5IDUuOTU2NTcgMTEuODY0OCA2LjE1ODAzQzEyLjA1MzYgNi4zNTk0OSAxMi4wNDM0IDYuNjc1OTEgMTEuODQyIDYuODY0NzdMNy44NDE5NyAxMC42MTQ4QzcuNjQ5NjQgMTAuNzk1MSA3LjM1MDM2IDEwLjc5NTEgNy4xNTgwMyAxMC42MTQ4TDMuMTU4MDMgNi44NjQ3N0MyLjk1NjU3IDYuNjc1OTEgMi45NDYzNyA2LjM1OTQ5IDMuMTM1MjMgNi4xNTgwM1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJFggPSBbXCJjb2xvclwiXTtcbnZhciBDaGV2cm9uTGVmdEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkWCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTguODQxODIgMy4xMzUxNEM5LjA0MzI3IDMuMzI0MDEgOS4wNTM0OCAzLjY0MDQyIDguODY0NjIgMy44NDE4OEw1LjQzNTIxIDcuNDk5OTFMOC44NjQ2MiAxMS4xNTc5QzkuMDUzNDggMTEuMzU5NCA5LjA0MzI3IDExLjY3NTggOC44NDE4MiAxMS44NjQ3QzguNjQwMzYgMTIuMDUzNSA4LjMyMzk0IDEyLjA0MzMgOC4xMzUwOCAxMS44NDE5TDQuMzg1MDggNy44NDE4OEM0LjIwNDc3IDcuNjQ5NTUgNC4yMDQ3NyA3LjM1MDI3IDQuMzg1MDggNy4xNTc5NEw4LjEzNTA4IDMuMTU3OTRDOC4zMjM5NCAyLjk1NjQ4IDguNjQwMzYgMi45NDYyOCA4Ljg0MTgyIDMuMTM1MTRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRZID0gW1wiY29sb3JcIl07XG52YXIgQ2hldnJvblJpZ2h0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRZKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNi4xNTg0IDMuMTM1MDhDNi4zNTk4NSAyLjk0NjIxIDYuNjc2MjcgMi45NTY0MiA2Ljg2NTE0IDMuMTU3ODhMMTAuNjE1MSA3LjE1Nzg4QzEwLjc5NTQgNy4zNTAyIDEwLjc5NTQgNy42NDk0OSAxMC42MTUxIDcuODQxODJMNi44NjUxNCAxMS44NDE4QzYuNjc2MjcgMTIuMDQzMyA2LjM1OTg1IDEyLjA1MzUgNi4xNTg0IDExLjg2NDZDNS45NTY5NCAxMS42NzU3IDUuOTQ2NzMgMTEuMzU5MyA2LjEzNTYgMTEuMTU3OUw5LjU2NSA3LjQ5OTg1TDYuMTM1NiAzLjg0MTgyQzUuOTQ2NzMgMy42NDAzNiA1Ljk1Njk0IDMuMzIzOTQgNi4xNTg0IDMuMTM1MDhaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCRaID0gW1wiY29sb3JcIl07XG52YXIgQ2hldnJvblVwSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCRaKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy4xMzUyMyA4Ljg0MTk3QzMuMzI0MSA5LjA0MzQzIDMuNjQwNTIgOS4wNTM2MyAzLjg0MTk3IDguODY0NzdMNy41IDUuNDM1MzZMMTEuMTU4IDguODY0NzdDMTEuMzU5NSA5LjA1MzYzIDExLjY3NTkgOS4wNDM0MyAxMS44NjQ4IDguODQxOTdDMTIuMDUzNiA4LjY0MDUxIDEyLjA0MzQgOC4zMjQwOSAxMS44NDIgOC4xMzUyM0w3Ljg0MTk3IDQuMzg1MjNDNy42NDk2NCA0LjIwNDkyIDcuMzUwMzYgNC4yMDQ5MiA3LjE1ODAzIDQuMzg1MjNMMy4xNTgwMyA4LjEzNTIzQzIuOTU2NTcgOC4zMjQwOSAyLjk0NjM3IDguNjQwNTEgMy4xMzUyMyA4Ljg0MTk3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkXyA9IFtcImNvbG9yXCJdO1xudmFyIENpcmNsZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkXyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTAuODc3MDc1IDcuNDk5OTFDMC44NzcwNzUgMy44NDIyMiAzLjg0MjIyIDAuODc3MDc1IDcuNDk5OTEgMC44NzcwNzVDMTEuMTU3NiAwLjg3NzA3NSAxNC4xMjI3IDMuODQyMjIgMTQuMTIyNyA3LjQ5OTkxQzE0LjEyMjcgMTEuMTU3NiAxMS4xNTc2IDE0LjEyMjcgNy40OTk5MSAxNC4xMjI3QzMuODQyMjIgMTQuMTIyNyAwLjg3NzA3NSAxMS4xNTc2IDAuODc3MDc1IDcuNDk5OTFaTTcuNDk5OTEgMS44MjcwOEM0LjM2Njg5IDEuODI3MDggMS44MjcwOCA0LjM2Njg5IDEuODI3MDggNy40OTk5MUMxLjgyNzA4IDEwLjYzMjkgNC4zNjY4OSAxMy4xNzI3IDcuNDk5OTEgMTMuMTcyN0MxMC42MzI5IDEzLjE3MjcgMTMuMTcyNyAxMC42MzI5IDEzLjE3MjcgNy40OTk5MUMxMy4xNzI3IDQuMzY2ODkgMTAuNjMyOSAxLjgyNzA4IDcuNDk5OTEgMS44MjcwOFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJCQgPSBbXCJjb2xvclwiXTtcbnZhciBDaXJjbGVCYWNrc2xhc2hJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJCQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjQ5OTkxIDAuODc3MDc1QzMuODQyMjIgMC44NzcwNzUgMC44NzcwNzUgMy44NDIyMiAwLjg3NzA3NSA3LjQ5OTkxQzAuODc3MDc1IDExLjE1NzYgMy44NDIyMiAxNC4xMjI3IDcuNDk5OTEgMTQuMTIyN0MxMS4xNTc2IDE0LjEyMjcgMTQuMTIyNyAxMS4xNTc2IDE0LjEyMjcgNy40OTk5MUMxNC4xMjI3IDMuODQyMjIgMTEuMTU3NiAwLjg3NzA3NSA3LjQ5OTkxIDAuODc3MDc1Wk0zLjg1NzY4IDMuMTUwNTdDNC44NDMxMSAyLjMyNDQ4IDYuMTEzNDIgMS44MjcwOCA3LjQ5OTkxIDEuODI3MDhDMTAuNjMyOSAxLjgyNzA4IDEzLjE3MjcgNC4zNjY4OSAxMy4xNzI3IDcuNDk5OTFDMTMuMTcyNyA4Ljg4NjM4IDEyLjY3NTMgMTAuMTU2NyAxMS44NDkyIDExLjE0MjFMMy44NTc2OCAzLjE1MDU3Wk0zLjE1MDU3IDMuODU3NjhDMi4zMjQ0OCA0Ljg0MzExIDEuODI3MDggNi4xMTM0MiAxLjgyNzA4IDcuNDk5OTFDMS44MjcwOCAxMC42MzI5IDQuMzY2ODkgMTMuMTcyNyA3LjQ5OTkxIDEzLjE3MjdDOC44ODYzOCAxMy4xNzI3IDEwLjE1NjcgMTIuNjc1MyAxMS4xNDIxIDExLjg0OTJMMy4xNTA1NyAzLjg1NzY4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMTAgPSBbXCJjb2xvclwiXTtcbnZhciBDbGlwYm9hcmRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDEwKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNSAyVjFIMTBWMkg1Wk00Ljc1IDBDNC4zMzU3OSAwIDQgMC4zMzU3ODYgNCAwLjc1VjFIMy41QzIuNjcxNTcgMSAyIDEuNjcxNTcgMiAyLjVWMTIuNUMyIDEzLjMyODQgMi42NzE1NyAxNCAzLjUgMTRIMTEuNUMxMi4zMjg0IDE0IDEzIDEzLjMyODQgMTMgMTIuNVYyLjVDMTMgMS42NzE1NyAxMi4zMjg0IDEgMTEuNSAxSDExVjAuNzVDMTEgMC4zMzU3ODYgMTAuNjY0MiAwIDEwLjI1IDBINC43NVpNMTEgMlYyLjI1QzExIDIuNjY0MjEgMTAuNjY0MiAzIDEwLjI1IDNINC43NUM0LjMzNTc5IDMgNCAyLjY2NDIxIDQgMi4yNVYySDMuNUMzLjIyMzg2IDIgMyAyLjIyMzg2IDMgMi41VjEyLjVDMyAxMi43NzYxIDMuMjIzODYgMTMgMy41IDEzSDExLjVDMTEuNzc2MSAxMyAxMiAxMi43NzYxIDEyIDEyLjVWMi41QzEyIDIuMjIzODYgMTEuNzc2MSAyIDExLjUgMkgxMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDExID0gW1wiY29sb3JcIl07XG52YXIgQ2xpcGJvYXJkQ29weUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMTEpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk01IDJWMUgxMFYySDVaTTQuNzUgMEM0LjMzNTc5IDAgNCAwLjMzNTc4NiA0IDAuNzVWMUgzLjVDMi42NzE1NyAxIDIgMS42NzE1NyAyIDIuNVYxMi41QzIgMTMuMzI4NCAyLjY3MTU3IDE0IDMuNSAxNEg3VjEzSDMuNUMzLjIyMzg2IDEzIDMgMTIuNzc2MSAzIDEyLjVWMi41QzMgMi4yMjM4NiAzLjIyMzg2IDIgMy41IDJINFYyLjI1QzQgMi42NjQyMSA0LjMzNTc5IDMgNC43NSAzSDEwLjI1QzEwLjY2NDIgMyAxMSAyLjY2NDIxIDExIDIuMjVWMkgxMS41QzExLjc3NjEgMiAxMiAyLjIyMzg2IDEyIDIuNVY3SDEzVjIuNUMxMyAxLjY3MTU3IDEyLjMyODQgMSAxMS41IDFIMTFWMC43NUMxMSAwLjMzNTc4NiAxMC42NjQyIDAgMTAuMjUgMEg0Ljc1Wk05IDguNUM5IDguNzc2MTQgOC43NzYxNCA5IDguNSA5QzguMjIzODYgOSA4IDguNzc2MTQgOCA4LjVDOCA4LjIyMzg2IDguMjIzODYgOCA4LjUgOEM4Ljc3NjE0IDggOSA4LjIyMzg2IDkgOC41Wk0xMC41IDlDMTAuNzc2MSA5IDExIDguNzc2MTQgMTEgOC41QzExIDguMjIzODYgMTAuNzc2MSA4IDEwLjUgOEMxMC4yMjM5IDggMTAgOC4yMjM4NiAxMCA4LjVDMTAgOC43NzYxNCAxMC4yMjM5IDkgMTAuNSA5Wk0xMyA4LjVDMTMgOC43NzYxNCAxMi43NzYxIDkgMTIuNSA5QzEyLjIyMzkgOSAxMiA4Ljc3NjE0IDEyIDguNUMxMiA4LjIyMzg2IDEyLjIyMzkgOCAxMi41IDhDMTIuNzc2MSA4IDEzIDguMjIzODYgMTMgOC41Wk0xNC41IDlDMTQuNzc2MSA5IDE1IDguNzc2MTQgMTUgOC41QzE1IDguMjIzODYgMTQuNzc2MSA4IDE0LjUgOEMxNC4yMjM5IDggMTQgOC4yMjM4NiAxNCA4LjVDMTQgOC43NzYxNCAxNC4yMjM5IDkgMTQuNSA5Wk0xNSAxMC41QzE1IDEwLjc3NjEgMTQuNzc2MSAxMSAxNC41IDExQzE0LjIyMzkgMTEgMTQgMTAuNzc2MSAxNCAxMC41QzE0IDEwLjIyMzkgMTQuMjIzOSAxMCAxNC41IDEwQzE0Ljc3NjEgMTAgMTUgMTAuMjIzOSAxNSAxMC41Wk0xNC41IDEzQzE0Ljc3NjEgMTMgMTUgMTIuNzc2MSAxNSAxMi41QzE1IDEyLjIyMzkgMTQuNzc2MSAxMiAxNC41IDEyQzE0LjIyMzkgMTIgMTQgMTIuMjIzOSAxNCAxMi41QzE0IDEyLjc3NjEgMTQuMjIzOSAxMyAxNC41IDEzWk0xNC41IDE1QzE0Ljc3NjEgMTUgMTUgMTQuNzc2MSAxNSAxNC41QzE1IDE0LjIyMzkgMTQuNzc2MSAxNCAxNC41IDE0QzE0LjIyMzkgMTQgMTQgMTQuMjIzOSAxNCAxNC41QzE0IDE0Ljc3NjEgMTQuMjIzOSAxNSAxNC41IDE1Wk04LjUgMTFDOC43NzYxNCAxMSA5IDEwLjc3NjEgOSAxMC41QzkgMTAuMjIzOSA4Ljc3NjE0IDEwIDguNSAxMEM4LjIyMzg2IDEwIDggMTAuMjIzOSA4IDEwLjVDOCAxMC43NzYxIDguMjIzODYgMTEgOC41IDExWk05IDEyLjVDOSAxMi43NzYxIDguNzc2MTQgMTMgOC41IDEzQzguMjIzODYgMTMgOCAxMi43NzYxIDggMTIuNUM4IDEyLjIyMzkgOC4yMjM4NiAxMiA4LjUgMTJDOC43NzYxNCAxMiA5IDEyLjIyMzkgOSAxMi41Wk04LjUgMTVDOC43NzYxNCAxNSA5IDE0Ljc3NjEgOSAxNC41QzkgMTQuMjIzOSA4Ljc3NjE0IDE0IDguNSAxNEM4LjIyMzg2IDE0IDggMTQuMjIzOSA4IDE0LjVDOCAxNC43NzYxIDguMjIzODYgMTUgOC41IDE1Wk0xMSAxNC41QzExIDE0Ljc3NjEgMTAuNzc2MSAxNSAxMC41IDE1QzEwLjIyMzkgMTUgMTAgMTQuNzc2MSAxMCAxNC41QzEwIDE0LjIyMzkgMTAuMjIzOSAxNCAxMC41IDE0QzEwLjc3NjEgMTQgMTEgMTQuMjIzOSAxMSAxNC41Wk0xMi41IDE1QzEyLjc3NjEgMTUgMTMgMTQuNzc2MSAxMyAxNC41QzEzIDE0LjIyMzkgMTIuNzc2MSAxNCAxMi41IDE0QzEyLjIyMzkgMTQgMTIgMTQuMjIzOSAxMiAxNC41QzEyIDE0Ljc3NjEgMTIuMjIzOSAxNSAxMi41IDE1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMTIgPSBbXCJjb2xvclwiXTtcbnZhciBDbG9ja0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMTIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjUwMDA5IDAuODc3MDE0QzMuODQyNDEgMC44NzcwMTQgMC44NzcyNTggMy44NDIxNiAwLjg3NzI1OCA3LjQ5OTg0QzAuODc3MjU4IDExLjE1NzUgMy44NDI0IDE0LjEyMjcgNy41MDAwOSAxNC4xMjI3QzExLjE1NzggMTQuMTIyNyAxNC4xMjI5IDExLjE1NzUgMTQuMTIyOSA3LjQ5OTg0QzE0LjEyMjkgMy44NDIxNiAxMS4xNTc3IDAuODc3MDE0IDcuNTAwMDkgMC44NzcwMTRaTTEuODI3MjYgNy40OTk4NEMxLjgyNzI2IDQuMzY2ODMgNC4zNjcwOCAxLjgyNzAxIDcuNTAwMDkgMS44MjcwMUMxMC42MzMxIDEuODI3MDEgMTMuMTcyOSA0LjM2NjgzIDEzLjE3MjkgNy40OTk4NEMxMy4xNzI5IDEwLjYzMjggMTAuNjMzMSAxMy4xNzI3IDcuNTAwMDkgMTMuMTcyN0M0LjM2NzA4IDEzLjE3MjcgMS44MjcyNiAxMC42MzI4IDEuODI3MjYgNy40OTk4NFpNOCA0LjUwMDAxQzggNC4yMjM4NyA3Ljc3NjE0IDQuMDAwMDEgNy41IDQuMDAwMDFDNy4yMjM4NiA0LjAwMDAxIDcgNC4yMjM4NyA3IDQuNTAwMDFWNy41MDAwMUM3IDcuNjMyNjIgNy4wNTI2OCA3Ljc1OTggNy4xNDY0NSA3Ljg1MzU3TDkuMTQ2NDUgOS44NTM1N0M5LjM0MTcxIDEwLjA0ODggOS42NTgyOSAxMC4wNDg4IDkuODUzNTUgOS44NTM1N0MxMC4wNDg4IDkuNjU4MzEgMTAuMDQ4OCA5LjM0MTcyIDkuODUzNTUgOS4xNDY0Nkw4IDcuMjkyOTFWNC41MDAwMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDEzID0gW1wiY29sb3JcIl07XG52YXIgQ29kZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMTMpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk05Ljk2NDI0IDIuNjg1NzFDMTAuMDY2OCAyLjQyOTMxIDkuOTQyMDkgMi4xMzgzMyA5LjY4NTcgMi4wMzU3N0M5LjQyOTMgMS45MzMyMiA5LjEzODMyIDIuMDU3OTIgOS4wMzU3NiAyLjMxNDMyTDUuMDM1NzYgMTIuMzE0M0M0LjkzMzIgMTIuNTcwNyA1LjA1NzkxIDEyLjg2MTcgNS4zMTQzIDEyLjk2NDJDNS41NzA3IDEzLjA2NjggNS44NjE2OCAxMi45NDIxIDUuOTY0MjQgMTIuNjg1N0w5Ljk2NDI0IDIuNjg1NzFaTTMuODUzNTUgNS4xNDY0NkM0LjA0ODgyIDUuMzQxNzIgNC4wNDg4MiA1LjY1ODMgMy44NTM1NSA1Ljg1MzU2TDIuMjA3MTEgNy41MDAwMUwzLjg1MzU1IDkuMTQ2NDZDNC4wNDg4MiA5LjM0MTcyIDQuMDQ4ODIgOS42NTgzIDMuODUzNTUgOS44NTM1NkMzLjY1ODI5IDEwLjA0ODggMy4zNDE3MSAxMC4wNDg4IDMuMTQ2NDUgOS44NTM1NkwxLjE0NjQ1IDcuODUzNTZDMC45NTExODQgNy42NTgzIDAuOTUxMTg0IDcuMzQxNzIgMS4xNDY0NSA3LjE0NjQ2TDMuMTQ2NDUgNS4xNDY0NkMzLjM0MTcxIDQuOTUxMiAzLjY1ODI5IDQuOTUxMiAzLjg1MzU1IDUuMTQ2NDZaTTExLjE0NjQgNS4xNDY0NkMxMS4zNDE3IDQuOTUxMiAxMS42NTgzIDQuOTUxMiAxMS44NTM2IDUuMTQ2NDZMMTMuODUzNiA3LjE0NjQ2QzE0LjA0ODggNy4zNDE3MiAxNC4wNDg4IDcuNjU4MyAxMy44NTM2IDcuODUzNTZMMTEuODUzNiA5Ljg1MzU2QzExLjY1ODMgMTAuMDQ4OCAxMS4zNDE3IDEwLjA0ODggMTEuMTQ2NCA5Ljg1MzU2QzEwLjk1MTIgOS42NTgzIDEwLjk1MTIgOS4zNDE3MiAxMS4xNDY0IDkuMTQ2NDZMMTIuNzkyOSA3LjUwMDAxTDExLjE0NjQgNS44NTM1NkMxMC45NTEyIDUuNjU4MyAxMC45NTEyIDUuMzQxNzIgMTEuMTQ2NCA1LjE0NjQ2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMTQgPSBbXCJjb2xvclwiXTtcbnZhciBDb2RlU2FuZGJveExvZ29JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDE0KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy43MTE0NCAwLjc5NjkwMkM3LjU3NzQxIDAuNzM0MzU3IDcuNDIyNTcgMC43MzQzNTcgNy4yODg1NSAwLjc5NjkwMkwxLjI4ODU1IDMuNTk2OUMxLjExMjUxIDMuNjc5MDUgMC45OTk5OTMgMy44NTU3MyAwLjk5OTk5MyA0LjA0OTk5VjEwLjk1QzAuOTk5OTkzIDExLjE0NDMgMS4xMTI1MSAxMS4zMjA5IDEuMjg4NTUgMTEuNDAzMUw3LjI4ODU1IDE0LjIwMzFDNy40MjI1NyAxNC4yNjU2IDcuNTc3NDEgMTQuMjY1NiA3LjcxMTQ0IDE0LjIwMzFMMTMuNzExNCAxMS40MDMxQzEzLjg4NzUgMTEuMzIwOSAxNCAxMS4xNDQzIDE0IDEwLjk1VjQuMDQ5OTlDMTQgMy44NTU3MyAxMy44ODc1IDMuNjc5MDUgMTMuNzExNCAzLjU5NjlMNy43MTE0NCAwLjc5NjkwMlpNNy40OTk5OSAzLjE1Njc0TDUuOTgwMzkgMi41MTA5MUw3LjQ5OTk5IDEuODAxNzZMOS4wMTk1OSAyLjUxMDkxTDcuNDk5OTkgMy4xNTY3NFpNNy42OTU1NiA0LjE2MDE4TDEwLjIzODIgMy4wNzk1OEwxMi4yNzE5IDQuMDI4NjVMNy40OTk5OSA2LjA1NjcxTDIuNzI4MDggNC4wMjg2NUw0Ljc2MTgxIDMuMDc5NThMNy4zMDQ0MiA0LjE2MDE4QzcuNDI5MzkgNC4yMTMzIDcuNTcwNTkgNC4yMTMzIDcuNjk1NTYgNC4xNjAxOFpNNy45OTk5OSA2LjkzMDc4TDEzIDQuODA1NzhWNy45Mjk2NkwxMS4wODIxIDguODExOUMxMC43MjczIDguOTc1MDkgMTAuNSA5LjMyOTg4IDEwLjUgOS43MjAzOVYxMS43OTgyTDcuOTk5OTkgMTIuOTY0OVY2LjkzMDc4Wk0xMS41IDExLjMzMTZMMTMgMTAuNjMxNlY5LjAzMDM5TDExLjUgOS43MjAzOVYxMS4zMzE2Wk02Ljk5OTk5IDYuOTMwNzhWMTIuOTY0OUw0LjUwMjMxIDExLjc5OTNWOS43MjAzNkM0LjUwMjMxIDkuMzI5ODUgNC4yNzQ5OSA4Ljk3NTA2IDMuOTIwMjIgOC44MTE4N0wxLjk5OTk5IDcuOTI4NTZWNC44MDU3OEw2Ljk5OTk5IDYuOTMwNzhaTTEuOTk5OTkgMTAuNjMxNkwzLjUwMjMxIDExLjMzMjZMMy41MDIzMSA5LjcyMDM2TDEuOTk5OTkgOS4wMjkyOVYxMC42MzE2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMTUgPSBbXCJjb2xvclwiXTtcbnZhciBDb2xvcldoZWVsSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxNSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTAuODc3MDc1IDcuNDk5ODVDMC44NzcwNzUgMy44NDIxNiAzLjg0MjIyIDAuODc3MDE0IDcuNDk5OTEgMC44NzcwMTRDMTEuMTU3NiAwLjg3NzAxNCAxNC4xMjI3IDMuODQyMTYgMTQuMTIyNyA3LjQ5OTg1QzE0LjEyMjcgMTEuMTU3NSAxMS4xNTc2IDE0LjEyMjcgNy40OTk5MSAxNC4xMjI3QzMuODQyMjIgMTQuMTIyNyAwLjg3NzA3NSAxMS4xNTc1IDAuODc3MDc1IDcuNDk5ODVaTTMuNzgxMzUgMy4yMTU2NUM0LjY4Mjk4IDIuNDMyMzkgNS44MzQyOSAxLjkyOTA0IDcuMDk5OTggMS44NDA4OVY2LjUzNDI5TDMuNzgxMzUgMy4yMTU2NVpNMy4yMTU2NyAzLjc4MTM0QzIuNDMyNDIgNC42ODI5OCAxLjkyOTA5IDUuODM0MjggMS44NDA5NSA3LjA5OTk3SDYuNTM0M0wzLjIxNTY3IDMuNzgxMzRaTTYuNTM0MyA3Ljg5OTk3SDEuODQwOTdDMS45MjkxNiA5LjE2NTYyIDIuNDMyNTMgMTAuMzE2OSAzLjIxNTc5IDExLjIxODVMNi41MzQzIDcuODk5OTdaTTMuNzgxNDkgMTEuNzg0MkM0LjY4MzEgMTIuNTY3MyA1LjgzNDM1IDEzLjA3MDcgNy4wOTk5OCAxMy4xNTg4VjguNDY1NjZMMy43ODE0OSAxMS43ODQyWk03Ljg5OTk4IDguNDY1NjZWMTMuMTU4OEM5LjE2NTU5IDEzLjA3MDYgMTAuMzE2OCAxMi41NjczIDExLjIxODQgMTEuNzg0MUw3Ljg5OTk4IDguNDY1NjZaTTExLjc4NDEgMTEuMjE4NEMxMi41NjczIDEwLjMxNjggMTMuMDcwNyA5LjE2NTU4IDEzLjE1ODggNy44OTk5N0g4LjQ2NTY3TDExLjc4NDEgMTEuMjE4NFpNOC40NjU2NyA3LjA5OTk3SDEzLjE1ODlDMTMuMDcwNyA1LjgzNDMyIDEyLjU2NzQgNC42ODMwNSAxMS43ODQyIDMuNzgxNDNMOC40NjU2NyA3LjA5OTk3Wk0xMS4yMTg1IDMuMjE1NzNDMTAuMzE2OSAyLjQzMjQ2IDkuMTY1NjUgMS45MjkwOSA3Ljg5OTk4IDEuODQwOVY2LjUzNDI5TDExLjIxODUgMy4yMTU3M1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDE2ID0gW1wiY29sb3JcIl07XG52YXIgQ29sdW1uU3BhY2luZ0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMTYpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk04LjAwMDEyIDEuNUM4LjAwMDEyIDEuMjIzODYgNy43NzYyNiAxIDcuNTAwMTIgMUM3LjIyMzk4IDEgNy4wMDAxMiAxLjIyMzg2IDcuMDAwMTIgMS41VjEzLjVDNy4wMDAxMiAxMy43NzYxIDcuMjIzOTggMTQgNy41MDAxMiAxNEM3Ljc3NjI2IDE0IDguMDAwMTIgMTMuNzc2MSA4LjAwMDEyIDEzLjVWMS41Wk0zLjMxODEyIDUuODE4QzMuNDkzODYgNS42NDIyNyAzLjQ5Mzg2IDUuMzU3MzQgMy4zMTgxMiA1LjE4MTYxQzMuMTQyMzkgNS4wMDU4NyAyLjg1NzQ2IDUuMDA1ODcgMi42ODE3MyA1LjE4MTYxTDAuNjgxNzI5IDcuMTgxNjFDMC41MDU5OTMgNy4zNTczNCAwLjUwNTk5MyA3LjY0MjI3IDAuNjgxNzI5IDcuODE4TDIuNjgxNzMgOS44MThDMi44NTc0NiA5Ljk5Mzc0IDMuMTQyMzkgOS45OTM3NCAzLjMxODEyIDkuODE4QzMuNDkzODYgOS42NDIyNyAzLjQ5Mzg2IDkuMzU3MzQgMy4zMTgxMiA5LjE4MTYxTDIuMDg2MzIgNy45NDk4SDUuNTAwMTdDNS43NDg3IDcuOTQ5OCA1Ljk1MDE3IDcuNzQ4MzMgNS45NTAxNyA3LjQ5OThDNS45NTAxNyA3LjI1MTI4IDUuNzQ4NyA3LjA0OTggNS41MDAxNyA3LjA0OThIMi4wODYzMkwzLjMxODEyIDUuODE4Wk0xMi4zMTgxIDUuMTgxNjFDMTIuMTQyNCA1LjAwNTg3IDExLjg1NzUgNS4wMDU4NyAxMS42ODE3IDUuMTgxNjFDMTEuNTA2IDUuMzU3MzQgMTEuNTA2IDUuNjQyMjcgMTEuNjgxNyA1LjgxOEwxMi45MTM1IDcuMDQ5OEg5LjUwMDE3QzkuMjUxNjQgNy4wNDk4IDkuMDUwMTcgNy4yNTEyOCA5LjA1MDE3IDcuNDk5OEM5LjA1MDE3IDcuNzQ4MzMgOS4yNTE2NCA3Ljk0OTggOS41MDAxNyA3Ljk0OThIMTIuOTEzNUwxMS42ODE3IDkuMTgxNjFDMTEuNTA2IDkuMzU3MzQgMTEuNTA2IDkuNjQyMjcgMTEuNjgxNyA5LjgxOEMxMS44NTc1IDkuOTkzNzQgMTIuMTQyNCA5Ljk5Mzc0IDEyLjMxODEgOS44MThMMTQuMzE4MSA3LjgxOEMxNC40OTM5IDcuNjQyMjcgMTQuNDkzOSA3LjM1NzM0IDE0LjMxODEgNy4xODE2MUwxMi4zMTgxIDUuMTgxNjFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxNyA9IFtcImNvbG9yXCJdO1xudmFyIENvbHVtbnNJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDE3KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMi4xNDk5OCAxNFYxSDAuODQ5OTc2VjE0SDIuMTQ5OThaTTYuMTQ5OTggMTRWMUg0Ljg0OTk4VjE0SDYuMTQ5OThaTTEwLjE1IDFWMTRIOC44NDk5OFYxSDEwLjE1Wk0xNC4xNSAxNFYxSDEyLjg1VjE0SDE0LjE1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMTggPSBbXCJjb2xvclwiXTtcbnZhciBDb21taXRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDE4KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOS45NDk2OSA3LjQ5OTg5QzkuOTQ5NjkgOC44NTI4OCA4Ljg1Mjg4IDkuOTQ5NjkgNy40OTk4OSA5Ljk0OTY5QzYuMTQ2OTEgOS45NDk2OSA1LjA1MDEgOC44NTI4OCA1LjA1MDEgNy40OTk4OUM1LjA1MDEgNi4xNDY5MSA2LjE0NjkxIDUuMDUwMSA3LjQ5OTg5IDUuMDUwMUM4Ljg1Mjg4IDUuMDUwMSA5Ljk0OTY5IDYuMTQ2OTEgOS45NDk2OSA3LjQ5OTg5Wk0xMC44NjMyIDhDMTAuNjIxMyA5LjY0MDU1IDkuMjA3NjQgMTAuODk5NyA3LjQ5OTg5IDEwLjg5OTdDNS43OTIxNCAxMC44OTk3IDQuMzc4NDcgOS42NDA1NSA0LjEzNjYyIDhIMC41QzAuMjIzODU4IDggMCA3Ljc3NjE0IDAgNy41QzAgNy4yMjM4NiAwLjIyMzg1OCA3IDAuNSA3SDQuMTM2NTlDNC4zNzgzNSA1LjM1OTM1IDUuNzkyMDYgNC4xMDAxIDcuNDk5ODkgNC4xMDAxQzkuMjA3NzIgNC4xMDAxIDEwLjYyMTQgNS4zNTkzNSAxMC44NjMyIDdIMTQuNUMxNC43NzYxIDcgMTUgNy4yMjM4NiAxNSA3LjVDMTUgNy43NzYxNCAxNC43NzYxIDggMTQuNSA4SDEwLjg2MzJaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxOSA9IFtcImNvbG9yXCJdO1xudmFyIENvbXBvbmVudDFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDE5KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC42NzEyOSAzLjE0NjM0QzQuNDc2MDMgMy4zNDE2MSA0LjQ3NjAzIDMuNjU4MTkgNC42NzEyOSAzLjg1MzQ1TDcuMTQ2MTYgNi4zMjgzM0M3LjM0MTQyIDYuNTIzNTkgNy42NTgwMSA2LjUyMzU5IDcuODUzMjcgNi4zMjgzM0wxMC4zMjgxIDMuODUzNDVDMTAuNTIzNCAzLjY1ODE5IDEwLjUyMzQgMy4zNDE2MSAxMC4zMjgxIDMuMTQ2MzRMNy44NTMyNyAwLjY3MTQ3MUM3LjY1ODAxIDAuNDc2MjA5IDcuMzQxNDIgMC40NzYyMDkgNy4xNDYxNiAwLjY3MTQ3MUw0LjY3MTI5IDMuMTQ2MzRaTTcuNDk5NzEgNS4yNjc2Nkw1LjczMTk1IDMuNDk5OUw3LjQ5OTcxIDEuNzMyMTNMOS4yNjc0OCAzLjQ5OTlMNy40OTk3MSA1LjI2NzY2Wk04LjY3MTI5IDcuMTQ2MzRDOC40NzYwMyA3LjM0MTYxIDguNDc2MDMgNy42NTgxOSA4LjY3MTI5IDcuODUzNDVMMTEuMTQ2MiAxMC4zMjgzQzExLjM0MTQgMTAuNTIzNiAxMS42NTggMTAuNTIzNiAxMS44NTMzIDEwLjMyODNMMTQuMzI4MSA3Ljg1MzQ1QzE0LjUyMzQgNy42NTgxOSAxNC41MjM0IDcuMzQxNjEgMTQuMzI4MSA3LjE0NjM0TDExLjg1MzMgNC42NzE0N0MxMS42NTggNC40NzYyMSAxMS4zNDE0IDQuNDc2MjEgMTEuMTQ2MiA0LjY3MTQ3TDguNjcxMjkgNy4xNDYzNFpNMTEuNDk5NyA5LjI2NzY2TDkuNzMxOTUgNy40OTk5TDExLjQ5OTcgNS43MzIxM0wxMy4yNjc1IDcuNDk5OUwxMS40OTk3IDkuMjY3NjZaTTQuNjcxMjkgMTEuODUzNUM0LjQ3NjAzIDExLjY1ODIgNC40NzYwMyAxMS4zNDE2IDQuNjcxMjkgMTEuMTQ2M0w3LjE0NjE2IDguNjcxNDdDNy4zNDE0MiA4LjQ3NjIxIDcuNjU4MDEgOC40NzYyMSA3Ljg1MzI3IDguNjcxNDdMMTAuMzI4MSAxMS4xNDYzQzEwLjUyMzQgMTEuMzQxNiAxMC41MjM0IDExLjY1ODIgMTAuMzI4MSAxMS44NTM1TDcuODUzMjcgMTQuMzI4M0M3LjY1ODAxIDE0LjUyMzYgNy4zNDE0MiAxNC41MjM2IDcuMTQ2MTYgMTQuMzI4M0w0LjY3MTI5IDExLjg1MzVaTTUuNzMxOTUgMTEuNDk5OUw3LjQ5OTcxIDEzLjI2NzdMOS4yNjc0OCAxMS40OTk5TDcuNDk5NzEgOS43MzIxM0w1LjczMTk1IDExLjQ5OTlaTTAuNjcxMjg4IDcuMTQ2NDlDMC40NzYwMjYgNy4zNDE3NSAwLjQ3NjAyNiA3LjY1ODM0IDAuNjcxMjg4IDcuODUzNkwzLjE0NjE2IDEwLjMyODVDMy4zNDE0MiAxMC41MjM3IDMuNjU4MDEgMTAuNTIzNyAzLjg1MzI3IDEwLjMyODVMNi4zMjgxNCA3Ljg1MzZDNi41MjM0IDcuNjU4MzQgNi41MjM0IDcuMzQxNzUgNi4zMjgxNCA3LjE0NjQ5TDMuODUzMjcgNC42NzE2MkMzLjY1ODAxIDQuNDc2MzYgMy4zNDE0MiA0LjQ3NjM2IDMuMTQ2MTYgNC42NzE2MkwwLjY3MTI4OCA3LjE0NjQ5Wk0zLjQ5OTcyIDkuMjY3ODFMMS43MzE5NSA3LjUwMDA1TDMuNDk5NzIgNS43MzIyOEw1LjI2NzQ4IDcuNTAwMDVMMy40OTk3MiA5LjI2NzgxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMWEgPSBbXCJjb2xvclwiXTtcbnZhciBDb21wb25lbnQySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxYSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMuODc5MzUgMUgzLjlIMTEuMUgxMS4xMjA3QzExLjUyMzEgMC45OTk5OTQgMTEuODU1MyAwLjk5OTk4OSAxMi4xMjU5IDEuMDIyMUMxMi40MDcgMS4wNDUwNiAxMi42NjUzIDEuMDk0MzQgMTIuOTA4IDEuMjE3OTlDMTMuMjg0MyAxLjQwOTczIDEzLjU5MDMgMS43MTU3IDEzLjc4MiAyLjA5MjAyQzEzLjkwNTcgMi4zMzQ2OSAxMy45NTQ5IDIuNTkzMDQgMTMuOTc3OSAyLjg3NDA5QzE0IDMuMTQ0NjggMTQgMy40NzY4NiAxNCAzLjg3OTM0VjMuOVYxMS4xVjExLjEyMDdDMTQgMTEuNTIzMSAxNCAxMS44NTUzIDEzLjk3NzkgMTIuMTI1OUMxMy45NTQ5IDEyLjQwNyAxMy45MDU3IDEyLjY2NTMgMTMuNzgyIDEyLjkwOEMxMy41OTAzIDEzLjI4NDMgMTMuMjg0MyAxMy41OTAzIDEyLjkwOCAxMy43ODJDMTIuNjY1MyAxMy45MDU3IDEyLjQwNyAxMy45NTQ5IDEyLjEyNTkgMTMuOTc3OUMxMS44NTUzIDE0IDExLjUyMzEgMTQgMTEuMTIwNyAxNEgxMS4xSDMuOUgzLjg3OTM0QzMuNDc2ODYgMTQgMy4xNDQ2OCAxNCAyLjg3NDA5IDEzLjk3NzlDMi41OTMwNCAxMy45NTQ5IDIuMzM0NjkgMTMuOTA1NyAyLjA5MjAyIDEzLjc4MkMxLjcxNTcgMTMuNTkwMyAxLjQwOTczIDEzLjI4NDMgMS4yMTc5OSAxMi45MDhDMS4wOTQzNCAxMi42NjUzIDEuMDQ1MDYgMTIuNDA3IDEuMDIyMSAxMi4xMjU5QzAuOTk5OTg5IDExLjg1NTMgMC45OTk5OTQgMTEuNTIzMSAxIDExLjEyMDdWMTEuMTIwN1YxMS4xVjMuOVYzLjg3OTM1VjMuODc5MzRDMC45OTk5OTQgMy40NzY4NiAwLjk5OTk4OSAzLjE0NDY4IDEuMDIyMSAyLjg3NDA5QzEuMDQ1MDYgMi41OTMwNCAxLjA5NDM0IDIuMzM0NjkgMS4yMTc5OSAyLjA5MjAyQzEuNDA5NzMgMS43MTU3IDEuNzE1NyAxLjQwOTczIDIuMDkyMDIgMS4yMTc5OUMyLjMzNDY5IDEuMDk0MzQgMi41OTMwNCAxLjA0NTA2IDIuODc0MDkgMS4wMjIxQzMuMTQ0NjkgMC45OTk5ODkgMy40NzY4NyAwLjk5OTk5NCAzLjg3OTM1IDFaTTIuOTU1NTIgMi4wMTg3OEMyLjczNjMxIDIuMDM2NjkgMi42MjQyMSAyLjA2OTE1IDIuNTQ2MDEgMi4xMDg5OUMyLjM1Nzg1IDIuMjA0ODcgMi4yMDQ4NyAyLjM1Nzg1IDIuMTA4OTkgMi41NDYwMUMyLjA2OTE1IDIuNjI0MjEgMi4wMzY2OSAyLjczNjMxIDIuMDE4NzggMi45NTU1MkMyLjAwMDM5IDMuMTgwNTYgMiAzLjQ3MTcxIDIgMy45VjdIN1YySDMuOUMzLjQ3MTcxIDIgMy4xODA1NiAyLjAwMDM5IDIuOTU1NTIgMi4wMTg3OFpNNyA4SDJWMTEuMUMyIDExLjUyODMgMi4wMDAzOSAxMS44MTk0IDIuMDE4NzggMTIuMDQ0NUMyLjAzNjY5IDEyLjI2MzcgMi4wNjkxNSAxMi4zNzU4IDIuMTA4OTkgMTIuNDU0QzIuMjA0ODcgMTIuNjQyMiAyLjM1Nzg1IDEyLjc5NTEgMi41NDYwMSAxMi44OTFDMi42MjQyMSAxMi45MzA5IDIuNzM2MzEgMTIuOTYzMyAyLjk1NTUyIDEyLjk4MTJDMy4xODA1NiAxMi45OTk2IDMuNDcxNzEgMTMgMy45IDEzSDdWOFpNOCA4SDEzVjExLjFDMTMgMTEuNTI4MyAxMi45OTk2IDExLjgxOTQgMTIuOTgxMiAxMi4wNDQ1QzEyLjk2MzMgMTIuMjYzNyAxMi45MzA5IDEyLjM3NTggMTIuODkxIDEyLjQ1NEMxMi43OTUxIDEyLjY0MjIgMTIuNjQyMiAxMi43OTUxIDEyLjQ1NCAxMi44OTFDMTIuMzc1OCAxMi45MzA5IDEyLjI2MzcgMTIuOTYzMyAxMi4wNDQ1IDEyLjk4MTJDMTEuODE5NCAxMi45OTk2IDExLjUyODMgMTMgMTEuMSAxM0g4VjhaTTEzIDdIOFYySDExLjFDMTEuNTI4MyAyIDExLjgxOTQgMi4wMDAzOSAxMi4wNDQ1IDIuMDE4NzhDMTIuMjYzNyAyLjAzNjY5IDEyLjM3NTggMi4wNjkxNSAxMi40NTQgMi4xMDg5OUMxMi42NDIyIDIuMjA0ODcgMTIuNzk1MSAyLjM1Nzg1IDEyLjg5MSAyLjU0NjAxQzEyLjkzMDkgMi42MjQyMSAxMi45NjMzIDIuNzM2MzEgMTIuOTgxMiAyLjk1NTUyQzEyLjk5OTYgMy4xODA1NiAxMyAzLjQ3MTcxIDEzIDMuOVY3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMWIgPSBbXCJjb2xvclwiXTtcbnZhciBDb21wb25lbnRCb29sZWFuSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxYik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuODUzNjcgMS40ODk1NkM3LjY1ODQxIDEuMjk0MjkgNy4zNDE4MiAxLjI5NDI5IDcuMTQ2NTYgMS40ODk1NkwxLjQ4OTcxIDcuMTQ2NDFDMS4yOTQ0NSA3LjM0MTY3IDEuMjk0NDUgNy42NTgyNSAxLjQ4OTcxIDcuODUzNTJMNy4xNDY1NiAxMy41MTA0QzcuMzQxODIgMTMuNzA1NiA3LjY1ODQxIDEzLjcwNTYgNy44NTM2NyAxMy41MTA0TDEzLjUxMDUgNy44NTM1MkMxMy43MDU4IDcuNjU4MjUgMTMuNzA1OCA3LjM0MTY3IDEzLjUxMDUgNy4xNDY0MUw3Ljg1MzY3IDEuNDg5NTZaTTcuNSAyLjU1MDMzTDIuNTUwMzcgNy40OTk5Nkw3LjUgMTIuNDQ5NlYyLjU1MDMzWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMWMgPSBbXCJjb2xvclwiXTtcbnZhciBDb21wb25lbnRJbnN0YW5jZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMWMpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjE0NjUgMS40ODk1OUM3LjM0MTc2IDEuMjk0MzIgNy42NTgzNSAxLjI5NDMyIDcuODUzNjEgMS40ODk1OUwxMy41MTA1IDcuMTQ2NDRDMTMuNzA1NyA3LjM0MTcgMTMuNzA1NyA3LjY1ODI5IDEzLjUxMDUgNy44NTM1NUw3Ljg1MzYxIDEzLjUxMDRDNy42NTgzNSAxMy43MDU3IDcuMzQxNzYgMTMuNzA1NyA3LjE0NjUgMTMuNTEwNEwxLjQ4OTY1IDcuODUzNTVDMS4yOTQzOSA3LjY1ODI5IDEuMjk0MzkgNy4zNDE3IDEuNDg5NjUgNy4xNDY0NEw3LjE0NjUgMS40ODk1OVpNNy41MDAwNSAyLjU1MDI1TDIuNTUwMzEgNy40OTk5OUw3LjUwMDA1IDEyLjQ0OTdMMTIuNDQ5OCA3LjQ5OTk5TDcuNTAwMDUgMi41NTAyNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFkID0gW1wiY29sb3JcIl07XG52YXIgQ29tcG9uZW50Tm9uZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMWQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03Ljg1MzYxIDEuNDg5NTlDNy42NTgzNSAxLjI5NDMyIDcuMzQxNzYgMS4yOTQzMiA3LjE0NjUgMS40ODk1OUwxLjQ4OTY1IDcuMTQ2NDRDMS4yOTQzOSA3LjM0MTcgMS4yOTQzOSA3LjY1ODI5IDEuNDg5NjUgNy44NTM1NUwzLjk2NDUgMTAuMzI4NEwxLjY0NjQ0IDEyLjY0NjRDMS40NTExOCAxMi44NDE3IDEuNDUxMTggMTMuMTU4MyAxLjY0NjQ0IDEzLjM1MzZDMS44NDE3MSAxMy41NDg4IDIuMTU4MjkgMTMuNTQ4OCAyLjM1MzU1IDEzLjM1MzZMNC42NzE2IDExLjAzNTVMNy4xNDY1IDEzLjUxMDRDNy4zNDE3NiAxMy43MDU3IDcuNjU4MzUgMTMuNzA1NyA3Ljg1MzYxIDEzLjUxMDRMMTMuNTEwNSA3Ljg1MzU1QzEzLjcwNTcgNy42NTgyOSAxMy43MDU3IDcuMzQxNyAxMy41MTA1IDcuMTQ2NDRMMTEuMDM1NiA0LjY3MTU0TDEzLjM1MzUgMi4zNTM1NUMxMy41NDg4IDIuMTU4MjkgMTMuNTQ4OCAxLjg0MTcxIDEzLjM1MzUgMS42NDY0NUMxMy4xNTgzIDEuNDUxMTggMTIuODQxNyAxLjQ1MTE4IDEyLjY0NjQgMS42NDY0NUwxMC4zMjg1IDMuOTY0NDNMNy44NTM2MSAxLjQ4OTU5Wk05LjYyMTM1IDQuNjcxNTRMNy41MDAwNSAyLjU1MDI1TDIuNTUwMzEgNy40OTk5OUw0LjY3MTYgOS42MjEyOUw5LjYyMTM1IDQuNjcxNTRaTTUuMzc4NzEgMTAuMzI4NEw3LjUwMDA1IDEyLjQ0OTdMMTIuNDQ5OCA3LjQ5OTk5TDEwLjMyODUgNS4zNzg2NUw1LjM3ODcxIDEwLjMyODRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxZSA9IFtcImNvbG9yXCJdO1xudmFyIENvbXBvbmVudFBsYWNlaG9sZGVySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxZSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEyLjgwMzQgNy4xNDY0NEMxMi45OTg2IDYuOTUxMTggMTMuMzE1MiA2Ljk1MTE4IDEzLjUxMDUgNy4xNDY0NEMxMy43MDU3IDcuMzQxNyAxMy43MDU3IDcuNjU4MjkgMTMuNTEwNSA3Ljg1MzU1QzEzLjMxNTIgOC4wNDg4MSAxMi45OTg2IDguMDQ4ODEgMTIuODAzNCA3Ljg1MzU1QzEyLjYwODEgNy42NTgyOCAxMi42MDgxIDcuMzQxNyAxMi44MDM0IDcuMTQ2NDRaTTEyLjA5NjIgOC41NjA2NUMxMi4yOTE1IDguNzU1OTIgMTIuMjkxNSA5LjA3MjUgMTIuMDk2MiA5LjI2Nzc2QzExLjkwMSA5LjQ2MzAyIDExLjU4NDQgOS40NjMwMiAxMS4zODkxIDkuMjY3NzZDMTEuMTkzOSA5LjA3MjUgMTEuMTkzOSA4Ljc1NTkyIDExLjM4OTEgOC41NjA2NUMxMS41ODQ0IDguMzY1MzkgMTEuOTAxIDguMzY1MzkgMTIuMDk2MiA4LjU2MDY1Wk0xMC42ODIgOS45NzQ4N0MxMC44NzczIDEwLjE3MDEgMTAuODc3MyAxMC40ODY3IDEwLjY4MiAxMC42ODJDMTAuNDg2OCAxMC44NzcyIDEwLjE3MDIgMTAuODc3MiA5Ljk3NDkzIDEwLjY4MkM5Ljc3OTY3IDEwLjQ4NjcgOS43Nzk2NyAxMC4xNzAxIDkuOTc0OTMgOS45NzQ4N0MxMC4xNzAyIDkuNzc5NiAxMC40ODY4IDkuNzc5NiAxMC42ODIgOS45NzQ4N1pNOS4yNjc4MiAxMS4zODkxQzkuNDYzMDggMTEuNTg0MyA5LjQ2MzA4IDExLjkwMDkgOS4yNjc4MiAxMi4wOTYyQzkuMDcyNTYgMTIuMjkxNSA4Ljc1NTk4IDEyLjI5MTUgOC41NjA3MSAxMi4wOTYyQzguMzY1NDUgMTEuOTAwOSA4LjM2NTQ1IDExLjU4NDMgOC41NjA3MiAxMS4zODkxQzguNzU1OTggMTEuMTkzOCA5LjA3MjU2IDExLjE5MzggOS4yNjc4MiAxMS4zODkxWk03LjE0NjUgMTMuNTEwNEM2Ljk1MTI0IDEzLjMxNTEgNi45NTEyNCAxMi45OTg2IDcuMTQ2NSAxMi44MDMzQzcuMTcwOTEgMTIuNzc4OSA3LjE5NzIxIDEyLjc1NzUgNy4yMjQ5NCAxMi43MzkyQzcuNDE5MDEgMTIuNjExMSA3LjY4Mjc1IDEyLjYzMjQgNy44NTM2MSAxMi44MDMzQzguMDQ4ODcgMTIuOTk4NiA4LjA0ODg3IDEzLjMxNTEgNy44NTM2MSAxMy41MTA0QzcuNjU4MzUgMTMuNzA1NyA3LjM0MTc2IDEzLjcwNTcgNy4xNDY1IDEzLjUxMDRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuOTAzODYgOC41NjA2NUMyLjcwODYgOC43NTU5MiAyLjcwODYgOS4wNzI1IDIuOTAzODYgOS4yNjc3NiAzLjA5OTEyIDkuNDYzMDIgMy40MTU3MSA5LjQ2MzAyIDMuNjEwOTcgOS4yNjc3NiAzLjgwNjIzIDkuMDcyNSAzLjgwNjIzIDguNzU1OTIgMy42MTA5NyA4LjU2MDY1IDMuNDE1NzEgOC4zNjUzOSAzLjA5OTEyIDguMzY1MzkgMi45MDM4NiA4LjU2MDY1ek00LjMxODA3IDkuOTc0ODdDNC4xMjI4MSAxMC4xNzAxIDQuMTIyODEgMTAuNDg2NyA0LjMxODA3IDEwLjY4MiA0LjUxMzM0IDEwLjg3NzIgNC44Mjk5MiAxMC44NzcyIDUuMDI1MTggMTAuNjgyIDUuMjIwNDQgMTAuNDg2NyA1LjIyMDQ0IDEwLjE3MDEgNS4wMjUxOCA5Ljk3NDg3IDQuODI5OTIgOS43Nzk2IDQuNTEzMzQgOS43Nzk2IDQuMzE4MDcgOS45NzQ4N3pNNS43MzIyOSAxMS4zODkxQzUuNTM3MDMgMTEuNTg0MyA1LjUzNzAzIDExLjkwMDkgNS43MzIyOSAxMi4wOTYyIDUuOTI3NTUgMTIuMjkxNCA2LjI0NDEzIDEyLjI5MTUgNi40MzkzOSAxMi4wOTYyIDYuNjM0NjYgMTEuOTAwOSA2LjYzNDY2IDExLjU4NDMgNi40MzkzOSAxMS4zODkxIDYuMjQ0MTMgMTEuMTkzOCA1LjkyNzU1IDExLjE5MzggNS43MzIyOSAxMS4zODkxek0yLjE5Njc1IDcuODUzNTVDMi4zNjc2MSA3LjY4MjY5IDIuMzg4OTcgNy40MTg5NSAyLjI2MDgyIDcuMjI0ODggMi4wOTA0NiA2Ljk2Njg0IDEuNzEwNjMgNi45MjU0NiAxLjQ4OTY1IDcuMTQ2NDQgMS4yOTQzOSA3LjM0MTcgMS4yOTQzOSA3LjY1ODI5IDEuNDg5NjUgNy44NTM1NSAxLjY4NDkxIDguMDQ4ODEgMi4wMDE0OSA4LjA0ODgxIDIuMTk2NzUgNy44NTM1NXpNMy42MTA5NyA1LjczMjIzQzMuNDE1NzEgNS41MzY5NiAzLjA5OTEyIDUuNTM2OTYgMi45MDM4NiA1LjczMjIzIDIuNzA4NiA1LjkyNzQ5IDIuNzA4NiA2LjI0NDA3IDIuOTAzODYgNi40MzkzMyAzLjA5OTEyIDYuNjM0NiAzLjQxNTcxIDYuNjM0NiAzLjYxMDk3IDYuNDM5MzMgMy44MDYyMyA2LjI0NDA3IDMuODA2MjMgNS45Mjc0OSAzLjYxMDk3IDUuNzMyMjN6TTUuMDI1MTggNC4zMTgwMUM0LjgyOTkyIDQuMTIyNzUgNC41MTMzNCA0LjEyMjc1IDQuMzE4MDcgNC4zMTgwMSA0LjEyMjgxIDQuNTEzMjggNC4xMjI4MSA0LjgyOTg2IDQuMzE4MDcgNS4wMjUxMiA0LjUxMzM0IDUuMjIwMzggNC44Mjk5MiA1LjIyMDM4IDUuMDI1MTggNS4wMjUxMiA1LjIyMDQ0IDQuODI5ODYgNS4yMjA0NCA0LjUxMzI4IDUuMDI1MTggNC4zMTgwMXpNNi40MzkzOSAyLjkwMzhDNi4yNDQxMyAyLjcwODU0IDUuOTI3NTUgMi43MDg1NCA1LjczMjI5IDIuOTAzOCA1LjUzNzAzIDMuMDk5MDYgNS41MzcwMyAzLjQxNTY0IDUuNzMyMjkgMy42MTA5MSA1LjkyNzU1IDMuODA2MTcgNi4yNDQxMyAzLjgwNjE3IDYuNDM5MzkgMy42MTA5MSA2LjYzNDY2IDMuNDE1NjQgNi42MzQ2NiAzLjA5OTA2IDYuNDM5MzkgMi45MDM4ek03Ljg1MzYxIDEuNDg5NTlDNy42NTgzNSAxLjI5NDMyIDcuMzQxNzYgMS4yOTQzMiA3LjE0NjUgMS40ODk1OSA2Ljk1MTI0IDEuNjg0ODUgNi45NTEyNCAyLjAwMTQzIDcuMTQ2NSAyLjE5NjY5IDcuMzQxNzYgMi4zOTE5NiA3LjY1ODM1IDIuMzkxOTYgNy44NTM2MSAyLjE5NjY5IDguMDQ4ODcgMi4wMDE0MyA4LjA0ODg3IDEuNjg0ODUgNy44NTM2MSAxLjQ4OTU5ek05LjI2NzgyIDIuOTAzOEM5LjA3MjU2IDIuNzA4NTQgOC43NTU5OCAyLjcwODU0IDguNTYwNzEgMi45MDM4IDguMzY1NDUgMy4wOTkwNiA4LjM2NTQ1IDMuNDE1NjQgOC41NjA3MSAzLjYxMDkxIDguNzU1OTggMy44MDYxNyA5LjA3MjU2IDMuODA2MTcgOS4yNjc4MiAzLjYxMDkxIDkuNDYzMDggMy40MTU2NCA5LjQ2MzA4IDMuMDk5MDYgOS4yNjc4MiAyLjkwMzh6TTEwLjY4MiA0LjMxODAxQzEwLjQ4NjggNC4xMjI3NSAxMC4xNzAyIDQuMTIyNzUgOS45NzQ5MyA0LjMxODAxIDkuNzc5NjcgNC41MTMyOCA5Ljc3OTY3IDQuODI5ODYgOS45NzQ5MyA1LjAyNTEyIDEwLjE3MDIgNS4yMjAzOCAxMC40ODY4IDUuMjIwMzggMTAuNjgyIDUuMDI1MTIgMTAuODc3MyA0LjgyOTg2IDEwLjg3NzMgNC41MTMyOCAxMC42ODIgNC4zMTgwMXpNMTIuMDk2MiA1LjczMjIzQzExLjkwMSA1LjUzNjk2IDExLjU4NDQgNS41MzY5NiAxMS4zODkxIDUuNzMyMjMgMTEuMTkzOSA1LjkyNzQ5IDExLjE5MzkgNi4yNDQwNyAxMS4zODkxIDYuNDM5MzMgMTEuNTg0NCA2LjYzNDYgMTEuOTAxIDYuNjM0NiAxMi4wOTYyIDYuNDM5MzMgMTIuMjkxNSA2LjI0NDA3IDEyLjI5MTUgNS45Mjc0OSAxMi4wOTYyIDUuNzMyMjN6XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMWYgPSBbXCJjb2xvclwiXTtcbnZhciBDb250YWluZXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFmKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMiAxLjVDMiAxLjc3NjE0IDEuNzc2MTQgMiAxLjUgMkMxLjIyMzg2IDIgMSAxLjc3NjE0IDEgMS41QzEgMS4yMjM4NiAxLjIyMzg2IDEgMS41IDFDMS43NzYxNCAxIDIgMS4yMjM4NiAyIDEuNVpNNSAxM0gxMFYyTDUgMkw1IDEzWk00IDEzQzQgMTMuNTUyMyA0LjQ0NzcyIDE0IDUgMTRIMTBDMTAuNTUyMyAxNCAxMSAxMy41NTIzIDExIDEzVjJDMTEgMS40NDc3MiAxMC41NTIzIDEgMTAgMUg1QzQuNDQ3NzIgMSA0IDEuNDQ3NzEgNCAyVjEzWk0xMy41IDJDMTMuNzc2MSAyIDE0IDEuNzc2MTQgMTQgMS41QzE0IDEuMjIzODYgMTMuNzc2MSAxIDEzLjUgMUMxMy4yMjM5IDEgMTMgMS4yMjM4NiAxMyAxLjVDMTMgMS43NzYxNCAxMy4yMjM5IDIgMTMuNSAyWk0yIDMuNUMyIDMuNzc2MTQgMS43NzYxNCA0IDEuNSA0QzEuMjIzODYgNCAxIDMuNzc2MTQgMSAzLjVDMSAzLjIyMzg2IDEuMjIzODYgMyAxLjUgM0MxLjc3NjE0IDMgMiAzLjIyMzg2IDIgMy41Wk0xMy41IDRDMTMuNzc2MSA0IDE0IDMuNzc2MTQgMTQgMy41QzE0IDMuMjIzODYgMTMuNzc2MSAzIDEzLjUgM0MxMy4yMjM5IDMgMTMgMy4yMjM4NiAxMyAzLjVDMTMgMy43NzYxNCAxMy4yMjM5IDQgMTMuNSA0Wk0yIDUuNUMyIDUuNzc2MTQgMS43NzYxNCA2IDEuNSA2QzEuMjIzODYgNiAxIDUuNzc2MTQgMSA1LjVDMSA1LjIyMzg2IDEuMjIzODYgNSAxLjUgNUMxLjc3NjE0IDUgMiA1LjIyMzg2IDIgNS41Wk0xMy41IDZDMTMuNzc2MSA2IDE0IDUuNzc2MTQgMTQgNS41QzE0IDUuMjIzODYgMTMuNzc2MSA1IDEzLjUgNUMxMy4yMjM5IDUgMTMgNS4yMjM4NiAxMyA1LjVDMTMgNS43NzYxNCAxMy4yMjM5IDYgMTMuNSA2Wk0yIDcuNUMyIDcuNzc2MTQgMS43NzYxNCA4IDEuNSA4QzEuMjIzODYgOCAxIDcuNzc2MTQgMSA3LjVDMSA3LjIyMzg2IDEuMjIzODYgNyAxLjUgN0MxLjc3NjE0IDcgMiA3LjIyMzg2IDIgNy41Wk0xMy41IDhDMTMuNzc2MSA4IDE0IDcuNzc2MTQgMTQgNy41QzE0IDcuMjIzODYgMTMuNzc2MSA3IDEzLjUgN0MxMy4yMjM5IDcgMTMgNy4yMjM4NiAxMyA3LjVDMTMgNy43NzYxNCAxMy4yMjM5IDggMTMuNSA4Wk0yIDkuNUMyIDkuNzc2MTQgMS43NzYxNCAxMCAxLjUgMTBDMS4yMjM4NiAxMCAxIDkuNzc2MTQgMSA5LjVDMSA5LjIyMzg2IDEuMjIzODYgOSAxLjUgOUMxLjc3NjE0IDkgMiA5LjIyMzg2IDIgOS41Wk0xMy41IDEwQzEzLjc3NjEgMTAgMTQgOS43NzYxNCAxNCA5LjVDMTQgOS4yMjM4NiAxMy43NzYxIDkgMTMuNSA5QzEzLjIyMzkgOSAxMyA5LjIyMzg2IDEzIDkuNUMxMyA5Ljc3NjE0IDEzLjIyMzkgMTAgMTMuNSAxMFpNMiAxMS41QzIgMTEuNzc2MSAxLjc3NjE0IDEyIDEuNSAxMkMxLjIyMzg2IDEyIDEgMTEuNzc2MSAxIDExLjVDMSAxMS4yMjM5IDEuMjIzODYgMTEgMS41IDExQzEuNzc2MTQgMTEgMiAxMS4yMjM5IDIgMTEuNVpNMTMuNSAxMkMxMy43NzYxIDEyIDE0IDExLjc3NjEgMTQgMTEuNUMxNCAxMS4yMjM5IDEzLjc3NjEgMTEgMTMuNSAxMUMxMy4yMjM5IDExIDEzIDExLjIyMzkgMTMgMTEuNUMxMyAxMS43NzYxIDEzLjIyMzkgMTIgMTMuNSAxMlpNMiAxMy41QzIgMTMuNzc2MSAxLjc3NjE0IDE0IDEuNSAxNEMxLjIyMzg2IDE0IDEgMTMuNzc2MSAxIDEzLjVDMSAxMy4yMjM5IDEuMjIzODYgMTMgMS41IDEzQzEuNzc2MTQgMTMgMiAxMy4yMjM5IDIgMTMuNVpNMTMuNSAxNEMxMy43NzYxIDE0IDE0IDEzLjc3NjEgMTQgMTMuNUMxNCAxMy4yMjM5IDEzLjc3NjEgMTMgMTMuNSAxM0MxMy4yMjM5IDEzIDEzIDEzLjIyMzkgMTMgMTMuNUMxMyAxMy43NzYxIDEzLjIyMzkgMTQgMTMuNSAxNFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFnID0gW1wiY29sb3JcIl07XG52YXIgQ29va2llSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxZyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEyLjA2OTcgMS43Njc0NkMxMi40ODA3IDEuMjE5NDcgMTEuNDYwNSAwLjQ1NDMxMSAxMS4wNDk1IDEuMDAyM0MxMC42Mzg1IDEuNTUwMjggMTEuNjU4OCAyLjMxNTQ0IDEyLjA2OTcgMS43Njc0NlpNOC4zOTI2MyAxLjA3ODExQzcuMTU1ODUgMC45NTA2MDIgNS43ODIzIDEuMTYzNDggNC41ODQzMyAxLjcwOTM3QzMuMzg1NTIgMi4yNTU2MyAyLjMyNzM1IDMuMTUzMDkgMS43ODg0NCA0LjQxODMyQzEuMzc1NzQgNS4zODcyNCAxLjAxNzE1IDYuMjgxMTMgMS4wMDA4OCA3LjQ0MzU0QzAuOTg0NzI0IDguNTk4NDQgMS4zMDUyMiA5Ljk2ODk4IDIuMTMxNzQgMTEuOTI4QzIuNjExNDIgMTMuMDY0OSA0LjAzOTYzIDEzLjU0NDYgNS4xMzg5NSAxMy44MDc5QzYuNDA4MzYgMTQuMTExOSA3LjgwODU3IDE0LjE5MTQgOC42NjQ0IDE0LjA3NDJDOS4zNjUxNSAxMy45NzgyIDEwLjE0NDggMTMuODI4NCAxMC43OTg3IDEzLjI5N0MxMS44OTc3IDEyLjQwMzkgMTIuOTAwOSAxMS4zOTU1IDEzLjQ5OTQgMTAuMzM5M0MxNC4xMDQgOS4yNzIyMSAxNC4zMjU2IDguMDkyMDcgMTMuNzIxNiA2Ljk1MzI0QzEzLjU2MjggNi42NTM3MyAxMy4zMTYgNi41NzczNCAxMy4wNDEyIDYuNDkyM0MxMi45Mzc0IDYuNDYwMTYgMTIuODI5NSA2LjQyNjc4IDEyLjcyMDkgNi4zNzk2NkMxMS42MjExIDUuOTAyMzQgMTAuOTY0NiA1LjM0OTYzIDEwLjkxMzUgNS4wMjg3NkMxMC44NjU2IDQuNzI4MDggMTAuOTIyMSA0LjUxNDYzIDEwLjk4MTEgNC4yOTE4MUMxMS4wMTI5IDQuMTcxOTkgMTEuMDQ1MyA0LjA0OTQ3IDExLjA2MjYgMy45MDkyMkMxMS4wODM4IDMuNzM3MzcgMTEuMDgxNCAzLjMzMzE5IDEwLjY5OTYgMy4xMjc2MUMxMC40MDQ4IDIuOTY4ODggMTAuMjE2NCAyLjY1ODQzIDEwLjA0MDcgMi4zNjkwNEM5Ljk5NzQyIDIuMjk3NzUgOS45NTQ5MiAyLjIyNzczIDkuOTExOCAyLjE2MTU4QzkuNjI2MzQgMS43MjM2NyA5LjIwNzY5IDEuMTYyMTMgOC4zOTI2MyAxLjA3ODExWk00Ljk5ODk5IDIuNjE5MzVDMy45NjQ4MyAzLjA5MDU4IDMuMTI1NTQgMy44MzA5NyAyLjcwODQ2IDQuODEwMThDMi4yOTgwOCA1Ljc3MzY4IDIuMDE0MDYgNi41MDg3MyAyLjAwMDc5IDcuNDU3NTNDMS45ODc0MSA4LjQxMzg1IDIuMjUwNDMgOS42MzY4IDMuMDUzMSAxMS41MzkzQzMuMzkxODEgMTIuMzQyMSA0LjYyMTY3IDEyLjY1NTcgNS4zNzE4NiAxMi44MzU0QzYuNTQ5MyAxMy4xMTc0IDcuODIyIDEzLjE4MDIgOC41Mjg2OCAxMy4wODM0QzkuMjEyNzEgMTIuOTg5NyA5Ljc0NTY4IDEyLjg2NDIgMTAuMTY4MSAxMi41MjA5QzExLjIyOSAxMS42NTg3IDEyLjEyMSAxMC43NDM1IDEyLjYyOTMgOS44NDYzNUMxMi45MzQ5IDkuMzA3MDkgMTMuNTE0MSA3LjcwMjggMTIuNjI5MiA3LjM4NzNDMTAuNzUzOSA2LjcxODc1IDEwLjI2MiA2LjA2NjY5IDkuOTkwMTEgNS40MTI2OEM5LjgwOTE1IDQuOTc3NDQgOS44Mjg2OCA0LjUyMjgyIDkuOTU3NDEgNC4wNzg4NUw5Ljk1NzQxIDQuMDc4ODRDOS45NzY2MiA0LjAxMjYgOS45OTUzOCAzLjk0NzkxIDEwLjAzMzQgMy44ODg4MkM5LjgxODU3IDMuNzM2NzYgOS42NTE1IDMuNTUxOTUgOS41MTQ2NCAzLjM3MTVDOS40Mjg3NiAzLjI1ODI4IDkuMzQ2OSAzLjEyMDk5IDkuMjYxOTcgMi45Nzg1NkM5LjAxODY2IDIuNTcwNTIgOC43NTAxOCAyLjEyMDI3IDguMjkwMDggMi4wNzI4M0M3LjIyODg5IDEuOTYzNDMgNi4wMzM5OCAyLjE0NzcyIDQuOTk4OTkgMi42MTkzNVpNMTMuMjA4MSAzLjc3NDcxQzEzLjQ0MSAzLjIyNjcxIDEyLjQ1NDcgMi42MzYwNiAxMi4wODIyIDMuMTAxNjNDMTEuNTgxNyAzLjcyNzMyIDEyLjkwMjkgNC40OTI4MSAxMy4yMDgxIDMuNzc0NzFaTTE0LjM2NzIgMi4yNjAzMUMxNC45NjY4IDIuMjc0OTMgMTUuMTU1MSAxLjExNjAzIDE0LjU3MTggMC45NDkzNzFDMTMuODA3NiAwLjczMTAyNiAxMy41OTE4IDIuMjQxMzkgMTQuMzY3MiAyLjI2MDMxWk0xNC4yODU3IDUuMDkwOThDMTQuODY0NCA1LjEwMDA0IDE1LjA0NjIgNC4zODIyMiAxNC40ODMyIDQuMjc4OTlDMTMuNzQ1NSA0LjE0Mzc1IDEzLjUzNzMgNS4wNzkyNyAxNC4yODU3IDUuMDkwOThaTTYuOTA3NSA0LjI4NjcyQzYuNDY4OTggNC42Njc1NCA2LjA1MjIgNC4xNTE4NSA1Ljk3OTgzIDMuNzM2NUM1Ljg2ODQ4IDMuMDk3NDQgNi4zMzY5NiAyLjU2ODU2IDYuOTQ4MjMgMi45MTE1NkM3LjQzMzQ0IDMuMTgzODIgNy4yNjY3OCAzLjk3NDcxIDYuOTA3NSA0LjI4NjcyWk00Ljk0NDU1IDUuODgxODRDNS40MDg4NSA1LjQxNzU0IDQuNTk1NjcgNC41NzAxMyA0LjExNDI1IDUuMDUxNTRDMy44MzMzOCA1LjMzMjQyIDQuMDA5MzYgNS42NTM3NiA0LjIzNzQ0IDUuODgxODRDNC40MzI3MSA2LjA3NzEgNC43NDkyOSA2LjA3NzEgNC45NDQ1NSA1Ljg4MTg0Wk02Ljk3NzE2IDYuNzE5ODRDNy4zMTE4MSA3LjM4OTE0IDguNDg4MDQgNi43OTE1OSA3Ljk5NDEzIDYuMTQ3ODhDNy44NjUxOSA1Ljk3OTgzIDcuNjg2NTcgNS45NDk0IDcuNjIxNDUgNS45NDIwN0M3LjIxMjE3IDUuODk2MDEgNi43NjM0OSA2LjI5MjUgNi45NzcxNiA2LjcxOTg0Wk02Ljk4Nzk4IDguNzI0NjFDNy4xNDA2NiA5LjExODggNy41MTEyMiA5LjMxODcgNy45MTkxNSA5LjE2MzNDOC4yNzQzNCA5LjAyNzk5IDguMzMxODYgOC4zOTY4OSA4LjE3MTc1IDguMDc0MjdDOC4wMjMzMSA3Ljc3NTE0IDcuNjM5NTYgNy42Nzc5MyA3LjMzNzQ3IDcuNzk0MTdDNi45ODUxMiA3LjkyOTc2IDYuODU2NzIgOC4zODcwOCA2Ljk4NTc2IDguNzE4ODlMNi45ODc5OCA4LjcyNDYxWk0xMC4zODg1IDguODQwODFDMTAuNzU3NSA4LjY1NjYgMTEuNDYxNyA4LjgyNzcxIDExLjQ2MTcgOS4zMTE5OUMxMS40NjE3IDkuNzEyODYgMTAuOTU4NyAxMC4yMTY1IDEwLjU2MzQgMTAuMjgyNkMxMC4xODEzIDEwLjM0NjUgOS43MDUxNSA5Ljk3NTgxIDkuNzY2NDggOS41NzcxOEM5LjgxNDQ1IDkuMjY1MzkgMTAuMTIxNyA4Ljk3NDAxIDEwLjM4ODUgOC44NDA4MVpNNy41NjcwNCAxMC44NDMyQzcuMzM0NjEgMTAuNzUwMiA3LjE0MzUzIDEwLjg2MDEgNy4xMTQzNyAxMC44NzY5TDcuMTEyNzkgMTAuODc3OEM2LjkwNzgyIDEwLjk5NDkgNi43MTM4MyAxMS4yNDM5IDYuNjc0NyAxMS40ODQyQzYuNTkwMTggMTIuMDAzNCA3LjEzMTk5IDEyLjEyMzkgNy41MjY2MSAxMi4wOTg3QzguMjA3NCAxMi4wNTUzIDguMDY1NDcgMTEuMDQyNiA3LjU2NzA0IDEwLjg0MzJaTTQuODgwNSAxMC44OTMyQzUuMDY3NCAxMC43NzIzIDUuMTU2NTggMTAuNTM2MyA1LjA4MjkzIDEwLjMxNTNDNC45MzA0NiA5Ljc5Njg3IDQuMzI0NiA5LjcxMjUyIDMuOTY1NjEgMTAuMTI5N0MzLjc5MzM2IDEwLjMyOTkgMy44MDc0OSAxMC42Mjc0IDMuOTkyMTQgMTAuODEwNUwzLjk5NDk1IDEwLjgxNEwzLjk5NzkgMTAuODE3NkM0LjIyMDI1IDExLjA5NDIgNC42MzYyNCAxMS4xODU3IDQuODgwNSAxMC44OTMyWk0zLjA0Njk1IDcuODEzMThDMy4zMzE0NyA4LjA5NzcgMy42MDA3NyA4LjE1MDY3IDMuOTg0NDMgOC4wNTg1OUM0LjYwODI2IDcuOTA4ODcgNC4xMzgxNCA2LjI0Mjk5IDMuMDQ3IDYuODcyOTZDMi43MDkzOSA3LjA2Nzg4IDIuODY3MTYgNy42MzMzOSAzLjA0Njk1IDcuODEzMThaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxaCA9IFtcImNvbG9yXCJdO1xudmFyIENvcHlJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFoKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMSA5LjUwMDA2QzEgMTAuMzI4NSAxLjY3MTU3IDExLjAwMDEgMi41IDExLjAwMDFINEw0IDEwLjAwMDFIMi41QzIuMjIzODYgMTAuMDAwMSAyIDkuNzc2MiAyIDkuNTAwMDZMMiAyLjUwMDA2QzIgMi4yMjM5MiAyLjIyMzg2IDIuMDAwMDYgMi41IDIuMDAwMDZMOS41IDIuMDAwMDZDOS43NzYxNCAyLjAwMDA2IDEwIDIuMjIzOTIgMTAgMi41MDAwNlY0LjAwMDAySDUuNUM0LjY3MTU4IDQuMDAwMDIgNCA0LjY3MTU5IDQgNS41MDAwMlYxMi41QzQgMTMuMzI4NCA0LjY3MTU4IDE0IDUuNSAxNEgxMi41QzEzLjMyODQgMTQgMTQgMTMuMzI4NCAxNCAxMi41VjUuNTAwMDJDMTQgNC42NzE1OSAxMy4zMjg0IDQuMDAwMDIgMTIuNSA0LjAwMDAySDExVjIuNTAwMDZDMTEgMS42NzE2MyAxMC4zMjg0IDEuMDAwMDYgOS41IDEuMDAwMDZIMi41QzEuNjcxNTcgMS4wMDAwNiAxIDEuNjcxNjMgMSAyLjUwMDA2VjkuNTAwMDZaTTUgNS41MDAwMkM1IDUuMjIzODggNS4yMjM4NiA1LjAwMDAyIDUuNSA1LjAwMDAySDEyLjVDMTIuNzc2MSA1LjAwMDAyIDEzIDUuMjIzODggMTMgNS41MDAwMlYxMi41QzEzIDEyLjc3NjIgMTIuNzc2MSAxMyAxMi41IDEzSDUuNUM1LjIyMzg2IDEzIDUgMTIuNzc2MiA1IDEyLjVWNS41MDAwMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFpID0gW1wiY29sb3JcIl07XG52YXIgQ29ybmVyQm90dG9tTGVmdEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMWkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk05Ljg3NzM3IDEySDkuOUgxMS41QzExLjc3NjEgMTIgMTIgMTEuNzc2MSAxMiAxMS41QzEyIDExLjIyMzkgMTEuNzc2MSAxMSAxMS41IDExSDkuOUM4Ljc3MTY0IDExIDcuOTU1NDUgMTAuOTk5NiA3LjMxMzUyIDEwLjk0NzJDNi42Nzc0NCAxMC44OTUyIDYuMjU2NjIgMTAuNzk0NiA1LjkxMTAzIDEwLjYxODVDNS4yNTI0NyAxMC4yODMgNC43MTcwMyA5Ljc0NzUzIDQuMzgxNDggOS4wODg5N0M0LjIwNTM5IDguNzQzMzggNC4xMDQ4MSA4LjMyMjU2IDQuMDUyODQgNy42ODY0OEM0LjAwMDM5IDcuMDQ0NTUgNCA2LjIyODM2IDQgNS4xVjMuNUM0IDMuMjIzODYgMy43NzYxNCAzIDMuNSAzQzMuMjIzODYgMyAzIDMuMjIzODYgMyAzLjVWNS4xVjUuMTIyNjNDMyA2LjIyMzU5IDMgNy4wODA1MiAzLjA1NjE2IDcuNzY3OTFDMy4xMTMxOCA4LjQ2NTg0IDMuMjMwNTggOS4wMzI5IDMuNDkwNDcgOS41NDI5NkMzLjkyMTkgMTAuMzg5NyA0LjYxMDMxIDExLjA3ODEgNS40NTcwNCAxMS41MDk1QzUuOTY3MSAxMS43Njk0IDYuNTM0MTYgMTEuODg2OCA3LjIzMjA5IDExLjk0MzhDNy45MTk0OCAxMiA4Ljc3NjQxIDEyIDkuODc3MzcgMTJaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxaiA9IFtcImNvbG9yXCJdO1xudmFyIENvcm5lckJvdHRvbVJpZ2h0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxaik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUuMTIyNjMgMTJINS4xSDMuNUMzLjIyMzg2IDEyIDMgMTEuNzc2MSAzIDExLjVDMyAxMS4yMjM5IDMuMjIzODYgMTEgMy41IDExSDUuMUM2LjIyODM2IDExIDcuMDQ0NTUgMTAuOTk5NiA3LjY4NjQ4IDEwLjk0NzJDOC4zMjI1NiAxMC44OTUyIDguNzQzMzggMTAuNzk0NiA5LjA4ODk3IDEwLjYxODVDOS43NDc1MyAxMC4yODMgMTAuMjgzIDkuNzQ3NTMgMTAuNjE4NSA5LjA4ODk3QzEwLjc5NDYgOC43NDMzOCAxMC44OTUyIDguMzIyNTYgMTAuOTQ3MiA3LjY4NjQ4QzEwLjk5OTYgNy4wNDQ1NSAxMSA2LjIyODM2IDExIDUuMVYzLjVDMTEgMy4yMjM4NiAxMS4yMjM5IDMgMTEuNSAzQzExLjc3NjEgMyAxMiAzLjIyMzg2IDEyIDMuNVY1LjFWNS4xMjI2M0MxMiA2LjIyMzU5IDEyIDcuMDgwNTIgMTEuOTQzOCA3Ljc2NzkxQzExLjg4NjggOC40NjU4NCAxMS43Njk0IDkuMDMyOSAxMS41MDk1IDkuNTQyOTZDMTEuMDc4MSAxMC4zODk3IDEwLjM4OTcgMTEuMDc4MSA5LjU0Mjk2IDExLjUwOTVDOS4wMzI5IDExLjc2OTQgOC40NjU4NCAxMS44ODY4IDcuNzY3OTEgMTEuOTQzOEM3LjA4MDUyIDEyIDYuMjIzNTkgMTIgNS4xMjI2MyAxMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFrID0gW1wiY29sb3JcIl07XG52YXIgQ29ybmVyVG9wTGVmdEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMWspO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk05Ljg3NzM3IDNIOS45SDExLjVDMTEuNzc2MSAzIDEyIDMuMjIzODYgMTIgMy41QzEyIDMuNzc2MTQgMTEuNzc2MSA0IDExLjUgNEg5LjlDOC43NzE2NCA0IDcuOTU1NDUgNC4wMDAzOSA3LjMxMzUyIDQuMDUyODRDNi42Nzc0NCA0LjEwNDgxIDYuMjU2NjIgNC4yMDUzOSA1LjkxMTAzIDQuMzgxNDhDNS4yNTI0NyA0LjcxNzAzIDQuNzE3MDMgNS4yNTI0NyA0LjM4MTQ4IDUuOTExMDNDNC4yMDUzOSA2LjI1NjYyIDQuMTA0ODEgNi42Nzc0NCA0LjA1Mjg0IDcuMzEzNTJDNC4wMDAzOSA3Ljk1NTQ1IDQgOC43NzE2NCA0IDkuOVYxMS41QzQgMTEuNzc2MSAzLjc3NjE0IDEyIDMuNSAxMkMzLjIyMzg2IDEyIDMgMTEuNzc2MSAzIDExLjVWOS45VjkuODc3MzdDMyA4Ljc3NjQxIDMgNy45MTk0OCAzLjA1NjE2IDcuMjMyMDlDMy4xMTMxOCA2LjUzNDE2IDMuMjMwNTggNS45NjcxIDMuNDkwNDcgNS40NTcwNEMzLjkyMTkgNC42MTAzMSA0LjYxMDMxIDMuOTIxOSA1LjQ1NzA0IDMuNDkwNDdDNS45NjcxIDMuMjMwNTggNi41MzQxNiAzLjExMzE4IDcuMjMyMDkgMy4wNTYxNkM3LjkxOTQ4IDMgOC43NzY0MSAzIDkuODc3MzcgM1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFsID0gW1wiY29sb3JcIl07XG52YXIgQ29ybmVyVG9wUmlnaHRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFsKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNS4xMjI2MyAzSDUuMUgzLjVDMy4yMjM4NiAzIDMgMy4yMjM4NiAzIDMuNUMzIDMuNzc2MTQgMy4yMjM4NiA0IDMuNSA0SDUuMUM2LjIyODM2IDQgNy4wNDQ1NSA0LjAwMDM5IDcuNjg2NDggNC4wNTI4NEM4LjMyMjU2IDQuMTA0ODEgOC43NDMzOCA0LjIwNTM5IDkuMDg4OTcgNC4zODE0OEM5Ljc0NzUzIDQuNzE3MDMgMTAuMjgzIDUuMjUyNDcgMTAuNjE4NSA1LjkxMTAzQzEwLjc5NDYgNi4yNTY2MiAxMC44OTUyIDYuNjc3NDQgMTAuOTQ3MiA3LjMxMzUyQzEwLjk5OTYgNy45NTU0NSAxMSA4Ljc3MTY0IDExIDkuOVYxMS41QzExIDExLjc3NjEgMTEuMjIzOSAxMiAxMS41IDEyQzExLjc3NjEgMTIgMTIgMTEuNzc2MSAxMiAxMS41VjkuOVY5Ljg3NzM3QzEyIDguNzc2NDEgMTIgNy45MTk0OCAxMS45NDM4IDcuMjMyMDlDMTEuODg2OCA2LjUzNDE2IDExLjc2OTQgNS45NjcxIDExLjUwOTUgNS40NTcwNEMxMS4wNzgxIDQuNjEwMzEgMTAuMzg5NyAzLjkyMTkgOS41NDI5NiAzLjQ5MDQ3QzkuMDMyOSAzLjIzMDU4IDguNDY1ODQgMy4xMTMxOCA3Ljc2NzkxIDMuMDU2MTZDNy4wODA1MiAzIDYuMjIzNTkgMyA1LjEyMjYzIDNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxbSA9IFtcImNvbG9yXCJdO1xudmFyIENvcm5lcnNJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFtKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNS41IDJMNC44NzkzNSAyQzQuNDc2ODcgMS45OTk5OSA0LjE0NDY5IDEuOTk5OTkgMy44NzQwOSAyLjAyMjFDMy41OTMwNCAyLjA0NTA2IDMuMzM0NjkgMi4wOTQzNCAzLjA5MjAyIDIuMjE3OTlDMi43MTU3IDIuNDA5NzMgMi40MDk3MyAyLjcxNTcgMi4yMTc5OSAzLjA5MjAyQzIuMDk0MzQgMy4zMzQ2OSAyLjA0NTA2IDMuNTkzMDQgMi4wMjIxIDMuODc0MDlDMS45OTk5OSA0LjE0NDY4IDEuOTk5OTkgNC40NzY4NiAyIDQuODc5MzNWNC44NzkzNVY1LjVDMiA1Ljc3NjE0IDIuMjIzODYgNiAyLjUgNkMyLjc3NjE0IDYgMyA1Ljc3NjE0IDMgNS41VjQuOUMzIDQuNDcxNzEgMy4wMDAzOSA0LjE4MDU2IDMuMDE4NzggMy45NTU1MkMzLjAzNjY5IDMuNzM2MzEgMy4wNjkxNSAzLjYyNDIxIDMuMTA4OTkgMy41NDYwMUMzLjIwNDg3IDMuMzU3ODUgMy4zNTc4NSAzLjIwNDg3IDMuNTQ2MDEgMy4xMDg5OUMzLjYyNDIxIDMuMDY5MTUgMy43MzYzMSAzLjAzNjY5IDMuOTU1NTIgMy4wMTg3OEM0LjE4MDU2IDMuMDAwMzkgNC40NzE3MSAzIDQuOSAzSDUuNUM1Ljc3NjE0IDMgNiAyLjc3NjE0IDYgMi41QzYgMi4yMjM4NiA1Ljc3NjE0IDIgNS41IDJaTTEzIDkuNUMxMyA5LjIyMzg2IDEyLjc3NjEgOSAxMi41IDlDMTIuMjIzOSA5IDEyIDkuMjIzODYgMTIgOS41VjEwLjFDMTIgMTAuNTI4MyAxMS45OTk2IDEwLjgxOTQgMTEuOTgxMiAxMS4wNDQ1QzExLjk2MzMgMTEuMjYzNyAxMS45MzA5IDExLjM3NTggMTEuODkxIDExLjQ1NEMxMS43OTUxIDExLjY0MjIgMTEuNjQyMiAxMS43OTUxIDExLjQ1NCAxMS44OTFDMTEuMzc1OCAxMS45MzA5IDExLjI2MzcgMTEuOTYzMyAxMS4wNDQ1IDExLjk4MTJDMTAuODE5NCAxMS45OTk2IDEwLjUyODMgMTIgMTAuMSAxMkg5LjVDOS4yMjM4NiAxMiA5IDEyLjIyMzkgOSAxMi41QzkgMTIuNzc2MSA5LjIyMzg2IDEzIDkuNSAxM0gxMC4xMjA2QzEwLjUyMzEgMTMgMTAuODU1MyAxMyAxMS4xMjU5IDEyLjk3NzlDMTEuNDA3IDEyLjk1NDkgMTEuNjY1MyAxMi45MDU3IDExLjkwOCAxMi43ODJDMTIuMjg0MyAxMi41OTAzIDEyLjU5MDMgMTIuMjg0MyAxMi43ODIgMTEuOTA4QzEyLjkwNTcgMTEuNjY1MyAxMi45NTQ5IDExLjQwNyAxMi45Nzc5IDExLjEyNTlDMTMgMTAuODU1MyAxMyAxMC41MjMyIDEzIDEwLjEyMDdWMTAuMTIwN1YxMC4xMjA3VjEwLjEyMDZWOS41Wk0yLjUgOUMyLjc3NjE0IDkgMyA5LjIyMzg2IDMgOS41VjEwLjFDMyAxMC41MjgzIDMuMDAwMzkgMTAuODE5NCAzLjAxODc4IDExLjA0NDVDMy4wMzY2OSAxMS4yNjM3IDMuMDY5MTUgMTEuMzc1OCAzLjEwODk5IDExLjQ1NEMzLjIwNDg3IDExLjY0MjIgMy4zNTc4NSAxMS43OTUxIDMuNTQ2MDEgMTEuODkxQzMuNjI0MjEgMTEuOTMwOSAzLjczNjMxIDExLjk2MzMgMy45NTU1MiAxMS45ODEyQzQuMTgwNTYgMTEuOTk5NiA0LjQ3MTcxIDEyIDQuOSAxMkg1LjVDNS43NzYxNCAxMiA2IDEyLjIyMzkgNiAxMi41QzYgMTIuNzc2MSA1Ljc3NjE0IDEzIDUuNSAxM0g0Ljg3OTM1QzQuNDc2ODcgMTMgNC4xNDQ2OSAxMyAzLjg3NDA5IDEyLjk3NzlDMy41OTMwNCAxMi45NTQ5IDMuMzM0NjkgMTIuOTA1NyAzLjA5MjAyIDEyLjc4MkMyLjcxNTcgMTIuNTkwMyAyLjQwOTczIDEyLjI4NDMgMi4yMTc5OSAxMS45MDhDMi4wOTQzNCAxMS42NjUzIDIuMDQ1MDYgMTEuNDA3IDIuMDIyMSAxMS4xMjU5QzEuOTk5OTkgMTAuODU1MyAxLjk5OTk5IDEwLjUyMzEgMiAxMC4xMjA3VjEwLjEyMDZWMTAuMVY5LjVDMiA5LjIyMzg2IDIuMjIzODYgOSAyLjUgOVpNMTAuMSAzQzEwLjUyODMgMyAxMC44MTk0IDMuMDAwMzkgMTEuMDQ0NSAzLjAxODc4QzExLjI2MzcgMy4wMzY2OSAxMS4zNzU4IDMuMDY5MTUgMTEuNDU0IDMuMTA4OTlDMTEuNjQyMiAzLjIwNDg3IDExLjc5NTEgMy4zNTc4NSAxMS44OTEgMy41NDYwMUMxMS45MzA5IDMuNjI0MjEgMTEuOTYzMyAzLjczNjMxIDExLjk4MTIgMy45NTU1MkMxMS45OTk2IDQuMTgwNTYgMTIgNC40NzE3MSAxMiA0LjlWNS41QzEyIDUuNzc2MTQgMTIuMjIzOSA2IDEyLjUgNkMxMi43NzYxIDYgMTMgNS43NzYxNCAxMyA1LjVWNC44NzkzNVY0Ljg3OTM0QzEzIDQuNDc2ODYgMTMgNC4xNDQ2OCAxMi45Nzc5IDMuODc0MDlDMTIuOTU0OSAzLjU5MzA0IDEyLjkwNTcgMy4zMzQ2OSAxMi43ODIgMy4wOTIwMkMxMi41OTAzIDIuNzE1NyAxMi4yODQzIDIuNDA5NzMgMTEuOTA4IDIuMjE3OTlDMTEuNjY1MyAyLjA5NDM0IDExLjQwNyAyLjA0NTA2IDExLjEyNTkgMi4wMjIxQzEwLjg1NTMgMS45OTk5OSAxMC41MjMxIDEuOTk5OTkgMTAuMTIwNiAyTDEwLjEgMkg5LjVDOS4yMjM4NiAyIDkgMi4yMjM4NiA5IDIuNUM5IDIuNzc2MTQgOS4yMjM4NiAzIDkuNSAzSDEwLjFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxbiA9IFtcImNvbG9yXCJdO1xudmFyIENvdW50ZG93blRpbWVySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxbik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEzLjE1IDcuNDk5OThDMTMuMTUgNC42NjQ1OCAxMC45NDAyIDEuODQ5OTggNy41MDAwMiAxLjg0OTk4QzQuNzIxNyAxLjg0OTk4IDMuMzQ4NTEgMy45MDYzNiAyLjc2MzM2IDQuOTk5OTdINC41QzQuNzc2MTQgNC45OTk5NyA1IDUuMjIzODMgNSA1LjQ5OTk3QzUgNS43NzYxMSA0Ljc3NjE0IDUuOTk5OTcgNC41IDUuOTk5OTdIMS41QzEuMjIzODYgNS45OTk5NyAxIDUuNzc2MTEgMSA1LjQ5OTk3VjIuNDk5OTdDMSAyLjIyMzgzIDEuMjIzODYgMS45OTk5NyAxLjUgMS45OTk5N0MxLjc3NjE0IDEuOTk5OTcgMiAyLjIyMzgzIDIgMi40OTk5N1Y0LjMxMzE4QzIuNzA0NTMgMy4wNzEyNiA0LjMzNDA2IDAuODQ5OTc2IDcuNTAwMDIgMC44NDk5NzZDMTEuNTYyOCAwLjg0OTk3NiAxNC4xNSA0LjE4NTM3IDE0LjE1IDcuNDk5OThDMTQuMTUgMTAuODE0NiAxMS41NjI4IDE0LjE1IDcuNTAwMDIgMTQuMTVDNS41NTYxOCAxNC4xNSAzLjkzNzc4IDEzLjM4MDggMi43ODU0OCAxMi4yMDg0QzIuMTY4NTIgMTEuNTgwNiAxLjY4NjY4IDEwLjgzOSAxLjM1ODE2IDEwLjA0MDdDMS4yNTMwNiA5Ljc4NTM2IDEuMzc0ODggOS40OTMxNSAxLjYzMDI0IDkuMzg4MDZDMS44ODU2IDkuMjgyOTYgMi4xNzc4MSA5LjQwNDc4IDIuMjgyOSA5LjY2MDE0QzIuNTYzNzQgMTAuMzQyNSAyLjk3NDk1IDEwLjk3NDUgMy40OTg3IDExLjUwNzRDNC40NzA1MiAxMi40OTYzIDUuODM0OTYgMTMuMTUgNy41MDAwMiAxMy4xNUMxMC45NDAyIDEzLjE1IDEzLjE1IDEwLjMzNTQgMTMuMTUgNy40OTk5OFpNNyAxMFY1LjAwMDAxSDhWMTBIN1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFvID0gW1wiY29sb3JcIl07XG52YXIgQ291bnRlckNsb2Nrd2lzZUNsb2NrSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxbyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEzLjE1IDcuNDk5OThDMTMuMTUgNC42NjQ1OCAxMC45NDAyIDEuODQ5OTggNy41MDAwMiAxLjg0OTk4QzQuNzIxNjcgMS44NDk5OCAzLjM0ODQ5IDMuOTA2NCAyLjc2MzM1IDVINC41QzQuNzc2MTQgNSA1IDUuMjIzODYgNSA1LjVDNSA1Ljc3NjE0IDQuNzc2MTQgNiA0LjUgNkgxLjVDMS4yMjM4NiA2IDEgNS43NzYxNCAxIDUuNVYyLjVDMSAyLjIyMzg2IDEuMjIzODYgMiAxLjUgMkMxLjc3NjE0IDIgMiAyLjIyMzg2IDIgMi41VjQuMzEzMThDMi43MDQ1MyAzLjA3MTI2IDQuMzM0MDYgMC44NDk5NzYgNy41MDAwMiAwLjg0OTk3NkMxMS41NjI4IDAuODQ5OTc2IDE0LjE1IDQuMTg1MzcgMTQuMTUgNy40OTk5OEMxNC4xNSAxMC44MTQ2IDExLjU2MjggMTQuMTUgNy41MDAwMiAxNC4xNUM1LjU1NjE4IDE0LjE1IDMuOTM3NzggMTMuMzgwOCAyLjc4NTQ4IDEyLjIwODRDMi4xNjg1MiAxMS41ODA2IDEuNjg2NjggMTAuODM5IDEuMzU4MTYgMTAuMDQwN0MxLjI1MzA2IDkuNzg1MzYgMS4zNzQ4OCA5LjQ5MzE1IDEuNjMwMjQgOS4zODgwNkMxLjg4NTYgOS4yODI5NiAyLjE3NzgxIDkuNDA0NzggMi4yODI5IDkuNjYwMTRDMi41NjM3NCAxMC4zNDI1IDIuOTc0OTUgMTAuOTc0NSAzLjQ5ODcgMTEuNTA3NEM0LjQ3MDUyIDEyLjQ5NjMgNS44MzQ5NiAxMy4xNSA3LjUwMDAyIDEzLjE1QzEwLjk0MDIgMTMuMTUgMTMuMTUgMTAuMzM1NCAxMy4xNSA3LjQ5OTk4Wk03LjUgNC4wMDAwMUM3Ljc3NjE0IDQuMDAwMDEgOCA0LjIyMzg3IDggNC41MDAwMVY3LjI5MjkxTDkuODUzNTUgOS4xNDY0NkMxMC4wNDg4IDkuMzQxNzIgMTAuMDQ4OCA5LjY1ODMxIDkuODUzNTUgOS44NTM1N0M5LjY1ODI5IDEwLjA0ODggOS4zNDE3MSAxMC4wNDg4IDkuMTQ2NDUgOS44NTM1N0w3LjE0NjQ1IDcuODUzNTdDNy4wNTI2OCA3Ljc1OTggNyA3LjYzMjYyIDcgNy41MDAwMVY0LjUwMDAxQzcgNC4yMjM4NyA3LjIyMzg2IDQuMDAwMDEgNy41IDQuMDAwMDFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxcCA9IFtcImNvbG9yXCJdO1xudmFyIENyb3BJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFwKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy41IDguMDA2ODRlLTA3QzMuNzc2MTQgNy44ODYxNGUtMDcgNCAwLjIyMzg1OSA0IDAuNTAwMDAxTDQgMy4wMDAwNkwxMS41IDMuMDAwMDZDMTEuNzc2MSAzLjAwMDA2IDEyIDMuMjIzOTIgMTIgMy41MDAwNkwxMiAxMS4wMDAxTDE0LjUgMTFDMTQuNzc2MSAxMSAxNSAxMS4yMjM4IDE1IDExLjVDMTUgMTEuNzc2MSAxNC43NzYyIDEyIDE0LjUgMTJMMTIgMTIuMDAwMUwxMiAxNC41QzEyIDE0Ljc3NjEgMTEuNzc2MSAxNSAxMS41IDE1QzExLjIyMzkgMTUgMTEgMTQuNzc2MSAxMSAxNC41TDExIDEyLjAwMDFMMy41IDEyLjAwMDFDMy4yMjM4NiAxMi4wMDAxIDMgMTEuNzc2MiAzIDExLjUwMDFMMyA0LjAwMDA1TDAuNDk5OTg5IDRDMC4yMjM4NDcgNCAtNi4xMDU0MWUtMDYgMy43NzYxMyAtNS4wMjU3NmUtMDcgMy40OTk5OUM1LjEzMDA2ZS0wNiAzLjIyMzg1IDAuMjIzODY3IDMgMC41MDAwMSAzTDMgMy4wMDAwNUwzIDAuNTAwMDAxQzMgMC4yMjM4NTkgMy4yMjM4NiA4LjEyNzU1ZS0wNyAzLjUgOC4wMDY4NGUtMDdaTTQgNC4wMDAwNkw0IDExLjAwMDFMMTEgMTEuMDAwMUwxMSA0LjAwMDA2TDQgNC4wMDAwNlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFxID0gW1wiY29sb3JcIl07XG52YXIgQ3Jvc3MxSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxcSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEyLjg1MzYgMi44NTM1NUMxMy4wNDg4IDIuNjU4MjkgMTMuMDQ4OCAyLjM0MTcxIDEyLjg1MzYgMi4xNDY0NUMxMi42NTgzIDEuOTUxMTggMTIuMzQxNyAxLjk1MTE4IDEyLjE0NjQgMi4xNDY0NUw3LjUgNi43OTI4OUwyLjg1MzU1IDIuMTQ2NDVDMi42NTgyOSAxLjk1MTE4IDIuMzQxNzEgMS45NTExOCAyLjE0NjQ1IDIuMTQ2NDVDMS45NTExOCAyLjM0MTcxIDEuOTUxMTggMi42NTgyOSAyLjE0NjQ1IDIuODUzNTVMNi43OTI4OSA3LjVMMi4xNDY0NSAxMi4xNDY0QzEuOTUxMTggMTIuMzQxNyAxLjk1MTE4IDEyLjY1ODMgMi4xNDY0NSAxMi44NTM2QzIuMzQxNzEgMTMuMDQ4OCAyLjY1ODI5IDEzLjA0ODggMi44NTM1NSAxMi44NTM2TDcuNSA4LjIwNzExTDEyLjE0NjQgMTIuODUzNkMxMi4zNDE3IDEzLjA0ODggMTIuNjU4MyAxMy4wNDg4IDEyLjg1MzYgMTIuODUzNkMxMy4wNDg4IDEyLjY1ODMgMTMuMDQ4OCAxMi4zNDE3IDEyLjg1MzYgMTIuMTQ2NEw4LjIwNzExIDcuNUwxMi44NTM2IDIuODUzNTVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxciA9IFtcImNvbG9yXCJdO1xudmFyIENyb3NzMkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMXIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMS43ODE2IDQuMDMxNTdDMTIuMDA2MiAzLjgwNzAyIDEyLjAwNjIgMy40NDI5NSAxMS43ODE2IDMuMjE4NEMxMS41NTcxIDIuOTkzODUgMTEuMTkzIDIuOTkzODUgMTAuOTY4NSAzLjIxODRMNy41MDAwNSA2LjY4NjgyTDQuMDMxNjQgMy4yMTg0QzMuODA3MDggMi45OTM4NSAzLjQ0MzAxIDIuOTkzODUgMy4yMTg0NiAzLjIxODRDMi45OTM5MSAzLjQ0Mjk1IDIuOTkzOTEgMy44MDcwMiAzLjIxODQ2IDQuMDMxNTdMNi42ODY4OCA3LjQ5OTk5TDMuMjE4NDYgMTAuOTY4NEMyLjk5MzkxIDExLjE5MyAyLjk5MzkxIDExLjU1NyAzLjIxODQ2IDExLjc4MTZDMy40NDMwMSAxMi4wMDYxIDMuODA3MDggMTIuMDA2MSA0LjAzMTY0IDExLjc4MTZMNy41MDAwNSA4LjMxMzE2TDEwLjk2ODUgMTEuNzgxNkMxMS4xOTMgMTIuMDA2MSAxMS41NTcxIDEyLjAwNjEgMTEuNzgxNiAxMS43ODE2QzEyLjAwNjIgMTEuNTU3IDEyLjAwNjIgMTEuMTkzIDExLjc4MTYgMTAuOTY4NEw4LjMxMzIyIDcuNDk5OTlMMTEuNzgxNiA0LjAzMTU3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMXMgPSBbXCJjb2xvclwiXTtcbnZhciBDcm9zc0NpcmNsZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFzKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC44NzcwNzUgNy40OTk4OEMwLjg3NzA3NSAzLjg0MjE5IDMuODQyMjIgMC44NzcwNDUgNy40OTk5MSAwLjg3NzA0NUMxMS4xNTc2IDAuODc3MDQ1IDE0LjEyMjcgMy44NDIxOSAxNC4xMjI3IDcuNDk5ODhDMTQuMTIyNyAxMS4xNTc1IDExLjE1NzYgMTQuMTIyNyA3LjQ5OTkxIDE0LjEyMjdDMy44NDIyMiAxNC4xMjI3IDAuODc3MDc1IDExLjE1NzUgMC44NzcwNzUgNy40OTk4OFpNNy40OTk5MSAxLjgyNzA0QzQuMzY2ODkgMS44MjcwNCAxLjgyNzA4IDQuMzY2ODYgMS44MjcwOCA3LjQ5OTg4QzEuODI3MDggMTAuNjMyOSA0LjM2Njg5IDEzLjE3MjcgNy40OTk5MSAxMy4xNzI3QzEwLjYzMjkgMTMuMTcyNyAxMy4xNzI3IDEwLjYzMjkgMTMuMTcyNyA3LjQ5OTg4QzEzLjE3MjcgNC4zNjY4NiAxMC42MzI5IDEuODI3MDQgNy40OTk5MSAxLjgyNzA0Wk05Ljg1MzU4IDUuMTQ2NDRDMTAuMDQ4OCA1LjM0MTcgMTAuMDQ4OCA1LjY1ODI5IDkuODUzNTggNS44NTM1NUw4LjIwNzEzIDcuNDk5OTlMOS44NTM1OCA5LjE0NjQ0QzEwLjA0ODggOS4zNDE3IDEwLjA0ODggOS42NTgyOSA5Ljg1MzU4IDkuODUzNTVDOS42NTgzMiAxMC4wNDg4IDkuMzQxNzMgMTAuMDQ4OCA5LjE0NjQ3IDkuODUzNTVMNy41MDAwMiA4LjIwNzFMNS44NTM1OCA5Ljg1MzU1QzUuNjU4MzIgMTAuMDQ4OCA1LjM0MTczIDEwLjA0ODggNS4xNDY0NyA5Ljg1MzU1QzQuOTUxMjEgOS42NTgyOSA0Ljk1MTIxIDkuMzQxNyA1LjE0NjQ3IDkuMTQ2NDRMNi43OTI5MiA3LjQ5OTk5TDUuMTQ2NDcgNS44NTM1NUM0Ljk1MTIxIDUuNjU4MjkgNC45NTEyMSA1LjM0MTcgNS4xNDY0NyA1LjE0NjQ0QzUuMzQxNzMgNC45NTExOCA1LjY1ODMyIDQuOTUxMTggNS44NTM1OCA1LjE0NjQ0TDcuNTAwMDIgNi43OTI4OUw5LjE0NjQ3IDUuMTQ2NDRDOS4zNDE3MyA0Ljk1MTE4IDkuNjU4MzIgNC45NTExOCA5Ljg1MzU4IDUuMTQ2NDRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxdCA9IFtcImNvbG9yXCJdO1xudmFyIENyb3NzaGFpcjFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDF0KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC44NzcwNzUgNy41MDIwN0MwLjg3NzA3NSAzLjg0MzE5IDMuODQzMTkgMC44NzcwNzUgNy41MDIwOCAwLjg3NzA3NUMxMS4xNjA5IDAuODc3MDc1IDE0LjEyNzEgMy44NDMxOSAxNC4xMjcxIDcuNTAyMDdDMTQuMTI3MSAxMS4xNjA5IDExLjE2MDkgMTQuMTI3MSA3LjUwMjA4IDE0LjEyNzFDMy44NDMxOSAxNC4xMjcxIDAuODc3MDc1IDExLjE2MDkgMC44NzcwNzUgNy41MDIwN1pNMS44NDg5OCA3LjAwMDAzQzIuMDg4NiA0LjI2NjM5IDQuMjY2MzkgMi4wODg2IDcuMDAwMDMgMS44NDg5OFY0LjUwMDAzQzcuMDAwMDMgNC43NzYxNyA3LjIyMzg4IDUuMDAwMDMgNy41MDAwMyA1LjAwMDAzQzcuNzc2MTcgNS4wMDAwMyA4LjAwMDAzIDQuNzc2MTcgOC4wMDAwMyA0LjUwMDAzVjEuODQ4NjJDMTAuNzM1NiAyLjA4NjQzIDEyLjkxNTQgNC4yNjUwMiAxMy4xNTUyIDcuMDAwMDNIMTAuNUMxMC4yMjM5IDcuMDAwMDMgMTAgNy4yMjM4OCAxMCA3LjUwMDAzQzEwIDcuNzc2MTcgMTAuMjIzOSA4LjAwMDAzIDEwLjUgOC4wMDAwM0gxMy4xNTU1QzEyLjkxNzYgMTAuNzM2OSAxMC43MzY5IDEyLjkxNzYgOC4wMDAwMyAxMy4xNTU1VjEwLjVDOC4wMDAwMyAxMC4yMjM5IDcuNzc2MTcgMTAgNy41MDAwMyAxMEM3LjIyMzg4IDEwIDcuMDAwMDMgMTAuMjIzOSA3LjAwMDAzIDEwLjVWMTMuMTU1MkM0LjI2NTAyIDEyLjkxNTQgMi4wODY0MyAxMC43MzU2IDEuODQ4NjIgOC4wMDAwM0g0LjUwMDAzQzQuNzc2MTcgOC4wMDAwMyA1LjAwMDAzIDcuNzc2MTcgNS4wMDAwMyA3LjUwMDAzQzUuMDAwMDMgNy4yMjM4OCA0Ljc3NjE3IDcuMDAwMDMgNC41MDAwMyA3LjAwMDAzSDEuODQ4OThaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxdSA9IFtcImNvbG9yXCJdO1xudmFyIENyb3NzaGFpcjJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDF1KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy41IDBDNy43NzYxNCAwIDggMC4yMjM4NTggOCAwLjVWMS44MDY4N0MxMC42OTIyIDIuMDkzNSAxMi44MTY3IDQuMjgwMTIgMTMuMDA2OCA3SDE0LjVDMTQuNzc2MSA3IDE1IDcuMjIzODYgMTUgNy41QzE1IDcuNzc2MTQgMTQuNzc2MSA4IDE0LjUgOEgxMi45ODg4QzEyLjcwOTQgMTAuNjI0NCAxMC42MjQ0IDEyLjcwOTQgOCAxMi45ODg4VjE0LjVDOCAxNC43NzYxIDcuNzc2MTQgMTUgNy41IDE1QzcuMjIzODYgMTUgNyAxNC43NzYxIDcgMTQuNVYxMy4wMDY4QzQuMjgwMTIgMTIuODE2NyAyLjA5MzUgMTAuNjkyMiAxLjgwNjg3IDhIMC41QzAuMjIzODU4IDggMCA3Ljc3NjE0IDAgNy41QzAgNy4yMjM4NiAwLjIyMzg1OCA3IDAuNSA3SDEuNzg4ODZDMS45ODM3NiA0LjIxMTY2IDQuMjExNjYgMS45ODM3NiA3IDEuNzg4ODZWMC41QzcgMC4yMjM4NTggNy4yMjM4NiAwIDcuNSAwWk04IDEyLjAzMjJWOS41QzggOS4yMjM4NiA3Ljc3NjE0IDkgNy41IDlDNy4yMjM4NiA5IDcgOS4yMjM4NiA3IDkuNVYxMi4wNTRDNC44MDUxNyAxMS44Njg5IDMuMDQyMjIgMTAuMTY2OCAyLjc2MzQ0IDhINS41QzUuNzc2MTQgOCA2IDcuNzc2MTQgNiA3LjVDNiA3LjIyMzg2IDUuNzc2MTQgNyA1LjUgN0gyLjc0MTdDMi45MzI1MiA0LjczNjYyIDQuNzM2NjIgMi45MzI1MiA3IDIuNzQxN1Y1LjVDNyA1Ljc3NjE0IDcuMjIzODYgNiA3LjUgNkM3Ljc3NjE0IDYgOCA1Ljc3NjE0IDggNS41VjIuNzYzNDRDMTAuMTY2OCAzLjA0MjIyIDExLjg2ODkgNC44MDUxNyAxMi4wNTQgN0g5LjVDOS4yMjM4NiA3IDkgNy4yMjM4NiA5IDcuNUM5IDcuNzc2MTQgOS4yMjM4NiA4IDkuNSA4SDEyLjAzMjJDMTEuNzYyMSAxMC4wOTkxIDEwLjA5OTEgMTEuNzYyMSA4IDEyLjAzMjJaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxdiA9IFtcImNvbG9yXCJdO1xudmFyIENydW1wbGVkUGFwZXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDF2KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC42MDkxMyAwLjA2MzQyODdDNC4zOTA4MiAwLjAwODg1MDUgNC4xNjU3NSAwLjEyMzkzIDQuMDgyMTggMC4zMzI4NjdMMy4xNTM4IDIuNjUzOEwwLjgzMjg2NiAzLjU4MjE4QzAuNzAyODg0IDMuNjM0MTcgMC42MDQ1MDQgMy43NDM3IDAuNTY2NzA1IDMuODc4NDlDMC41Mjg5MDYgNC4wMTMyOSAwLjU1NTk5NCA0LjE1OCAwLjYzOTk5MiA0LjI2OTk5TDIuMDExNDggNi4wOTg2NEwxLjA2MzQzIDkuODkwODVDMS4wMDk0NCAxMC4xMDY4IDEuMTIxNDUgMTAuMzI5OCAxLjMyNjkxIDEwLjQxNTRMNC4yMDExNSAxMS42MTNMNS42MjU1NyAxMy43NDk2QzUuNzM0MTIgMTMuOTEyNCA1LjkzNTQ1IDEzLjk4NjQgNi4xMjM2MiAxMy45MzI3TDkuNjIzNjIgMTIuOTMyN0M5LjYyOTg4IDEyLjkzMDkgOS42MzYxMSAxMi45MjkgOS42NDIyOSAxMi45MjY5TDEyLjY0MjMgMTEuOTI2OUMxMi43OTIzIDExLjg3NjkgMTIuOTA1IDExLjc1MTkgMTIuOTM5MyAxMS41OTc2TDEzLjkzOTMgNy4wOTc2MUMxMy45Nzc2IDYuOTI1MDYgMTMuOTExNCA2Ljc0NjA1IDEzLjc3IDYuNjM5OTlMMTEuOTUgNS4yNzQ5OVYyLjk5OTk5QzExLjk1IDIuODI5NTUgMTEuODUzNyAyLjY3MzczIDExLjcwMTIgMi41OTc1TDguNzAxMjQgMS4wOTc1QzguNjcxODcgMS4wODI4MiA4LjY0MDk4IDEuMDcxMzkgOC42MDkxMyAxLjA2MzQzTDQuNjA5MTMgMC4wNjM0Mjg3Wk0xMS40MzIzIDYuMDExNzNMMTIuNzc0OCA3LjAxODU4TDEwLjIxMTkgOS4xNTQyOUMxMC4xNDc2IDkuMjA3ODYgMTAuMDk5NSA5LjI3ODMgMTAuMDczMSA5LjM1NzY5TDkuMjUzODIgMTEuODE1NUw3LjczODQ5IDEwLjg2ODRDNy41Mjc3NCAxMC43MzY3IDcuMjUwMTEgMTAuODAwNyA3LjExODM5IDExLjAxMTVDNi45ODY2NyAxMS4yMjIyIDcuMDUwNzQgMTEuNDk5OSA3LjI2MTQ5IDExLjYzMTZMOC40MDM0MSAxMi4zNDUzTDYuMTkyMjEgMTIuOTc3MUw0Ljg3NDQxIDExLjAwMDRDNC44MjUxMyAxMC45MjY1IDQuNzU1MDggMTAuODY4OCA0LjY3MzA3IDEwLjgzNDZMMi4wMzA0NiA5LjczMzUyTDIuODUxMzQgNi40NDk5OUg0Ljk5OTk5QzUuMjQ4NTIgNi40NDk5OSA1LjQ0OTk5IDYuMjQ4NTIgNS40NDk5OSA1Ljk5OTk5QzUuNDQ5OTkgNS43NTE0NiA1LjI0ODUyIDUuNTQ5OTkgNC45OTk5OSA1LjU0OTk5SDIuNzI0OTlMMS43MTIzIDQuMTk5NzRMMy41MTQwNyAzLjQ3OTAzTDYuMzU3NjkgNC40MjY5QzYuNTM2NTUgNC40ODY1MiA2LjczMzYxIDQuNDI4MzIgNi44NTEzOCA0LjI4MTExTDguNjI0MTMgMi4wNjUxOEwxMS4wNSAzLjI3ODExVjUuMTk1MzNMOC44MzI4NyA2LjA4MjE4QzguNzA5OTYgNi4xMzEzNCA4LjYxNDk0IDYuMjMyMTIgOC41NzMwOCA2LjM1NzY5TDguMDczMDggNy44NTc2OUM3Ljk5NDQ5IDguMDkzNDYgOC4xMjE5MSA4LjM0ODMxIDguMzU3NjkgOC40MjY5QzguNTkzNDYgOC41MDU0OSA4Ljg0ODMxIDguMzc4MDcgOC45MjY5IDguMTQyMjlMOS4zNjA5IDYuODQwMjlMMTEuNDMyMyA2LjAxMTczWk03LjcxMDUyIDEuNzY2NDhMNi4zNDQ2MiAzLjQ3Mzg2TDQuMDk1MDUgMi43MjRMNC43NzE5MiAxLjAzMTgzTDcuNzEwNTIgMS43NjY0OFpNMTAuMjExNSAxMS43ODg1TDEyLjExNiAxMS4xNTM3TDEyLjc3NDUgOC4xOTAzNEwxMC44ODY0IDkuNzYzNzRMMTAuMjExNSAxMS43ODg1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMXcgPSBbXCJjb2xvclwiXTtcbnZhciBDdWJlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxdyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuMjg4NTYgMC43OTY5MDhDNy40MjI1OCAwLjczNDM2NCA3LjU3NzQyIDAuNzM0MzY0IDcuNzExNDQgMC43OTY5MDhMMTMuNzExNCAzLjU5NjkxQzEzLjg4NzUgMy42NzkwNiAxNCAzLjg1NTc0IDE0IDQuMDVWMTAuOTVDMTQgMTEuMTQ0MyAxMy44ODc1IDExLjMyMDkgMTMuNzExNCAxMS40MDMxTDcuNzExNDQgMTQuMjAzMUM3LjU3NzQyIDE0LjI2NTYgNy40MjI1OCAxNC4yNjU2IDcuMjg4NTYgMTQuMjAzMUwxLjI4ODU2IDExLjQwMzFDMS4xMTI1MiAxMS4zMjA5IDEgMTEuMTQ0MyAxIDEwLjk1VjQuMDVDMSAzLjg1NTc0IDEuMTEyNTIgMy42NzkwNiAxLjI4ODU2IDMuNTk2OTFMNy4yODg1NiAwLjc5NjkwOFpNMiA0LjgwNTc4TDcgNi45MzA3OFYxMi45NjQ5TDIgMTAuNjMxNlY0LjgwNTc4Wk04IDEyLjk2NDlMMTMgMTAuNjMxNlY0LjgwNTc4TDggNi45MzA3OFYxMi45NjQ5Wk03LjUgNi4wNTY3MkwxMi4yNzE5IDQuMDI4NjZMNy41IDEuODAxNzZMMi43MjgwOSA0LjAyODY2TDcuNSA2LjA1NjcyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMXggPSBbXCJjb2xvclwiXTtcbnZhciBDdXJzb3JBcnJvd0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMXgpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zLjI5MjI3IDAuMDQ4OTg0QzMuNDcwMzMgLTAuMDMyMzM4IDMuNjc5NDYgLTAuMDAyMjgyMTQgMy44Mjc0IDAuMTI1ODkxTDEyLjg1ODcgNy45NTAyNkMxMy4wMTM0IDguMDg0MzIgMTMuMDcwOCA4LjI5OTE2IDEzLjAwMzUgOC40OTI1MUMxMi45MzYyIDguNjg1ODYgMTIuNzU3OCA4LjgxODY2IDEyLjU1MzMgOC44Mjc2OEw5LjIxODg3IDguOTc0NzRMMTEuMTUwNCAxMy4yMTg3QzExLjI2NDggMTMuNDcgMTEuMTUzOCAxMy43NjY0IDEwLjkwMjYgMTMuODgwOEw4Ljc1MDI0IDE0Ljg2MTNDOC40OTkgMTQuOTc1OCA4LjIwMjU1IDE0Ljg2NDkgOC4wODgwMiAxNC42MTM3TDYuMTUzMzkgMTAuMzcwM0wzLjg2Mjc5IDEyLjc4NTVDMy43MjE5NiAxMi45MzQgMy41MDQ4NyAxMi45ODE3IDMuMzE0NzkgMTIuOTA1OUMzLjEyNDcgMTIuODMwMSAzIDEyLjY0NjEgMyAxMi40NDE0VjAuNTAzNzkyQzMgMC4zMDgwNDggMy4xMTQyMiAwLjEzMDMwNiAzLjI5MjI3IDAuMDQ4OTg0Wk00IDEuNTk4NTJWMTEuMTg3N0w1LjkzNzk5IDkuMTQ0MjVDNi4wNTIzOCA5LjAyMzYzIDYuMjE5MjQgOC45Njc3NiA2LjM4MzE5IDguOTk1MTZDNi41NDcxNSA5LjAyMjU2IDYuNjg2NzcgOS4xMjk2NSA2Ljc1NTczIDkuMjgwOUw4Ljc5MDU2IDEzLjc0NDFMMTAuMDMzMiAxMy4xNzhMOC4wMDE5NSA4LjcxNDk3QzcuOTMzMTMgOC41NjM3NiA3Ljk0MzkxIDguMzg4MjQgOC4wMzA3MiA4LjI0NjU5QzguMTE3NTMgOC4xMDQ5NCA4LjI2OTAzIDguMDE1NjYgOC40MzUgOC4wMDgzNEwxMS4yNTQ5IDcuODgzOTdMNCAxLjU5ODUyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMXkgPSBbXCJjb2xvclwiXTtcbnZhciBDdXJzb3JUZXh0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxeSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTQuNSAxQzQuMjIzODYgMSA0IDEuMjIzODYgNCAxLjVDNCAxLjc3NjE0IDQuMjIzODYgMiA0LjUgMkM1LjQyMjE1IDIgNi4wMzk5IDIuMjMwNTQgNi40MjA3NSAyLjU2Mzc5QzYuNzkyODYgMi44ODkzOSA3IDMuMzY2MjYgNyA0VjdINS43NUM1LjQ3Mzg2IDcgNS4yNSA3LjIyMzg2IDUuMjUgNy41QzUuMjUgNy43NzYxNCA1LjQ3Mzg2IDggNS43NSA4SDdWMTFDNyAxMS42MzM3IDYuNzkyODYgMTIuMTEwNiA2LjQyMDc1IDEyLjQzNjJDNi4wMzk5IDEyLjc2OTUgNS40MjIxNSAxMyA0LjUgMTNDNC4yMjM4NiAxMyA0IDEzLjIyMzkgNCAxMy41QzQgMTMuNzc2MSA0LjIyMzg2IDE0IDQuNSAxNEM1LjU3Nzg1IDE0IDYuNDYwMSAxMy43MzA1IDcuMDc5MjUgMTMuMTg4OEM3LjI0MTY4IDEzLjA0NjcgNy4zODE2OSAxMi44ODk2IDcuNSAxMi43MTk4QzcuNjE4MzIgMTIuODg5NiA3Ljc1ODMyIDEzLjA0NjcgNy45MjA3NSAxMy4xODg4QzguNTM5OSAxMy43MzA1IDkuNDIyMTUgMTQgMTAuNSAxNEMxMC43NzYxIDE0IDExIDEzLjc3NjEgMTEgMTMuNUMxMSAxMy4yMjM5IDEwLjc3NjEgMTMgMTAuNSAxM0M5LjU3Nzg1IDEzIDguOTYwMSAxMi43Njk1IDguNTc5MjUgMTIuNDM2MkM4LjIwNzE0IDEyLjExMDYgOCAxMS42MzM3IDggMTFWOEg5LjI1QzkuNTI2MTQgOCA5Ljc1IDcuNzc2MTQgOS43NSA3LjVDOS43NSA3LjIyMzg2IDkuNTI2MTQgNyA5LjI1IDdIOFY0QzggMy4zNjYyNiA4LjIwNzE0IDIuODg5MzkgOC41NzkyNSAyLjU2Mzc5QzguOTYwMSAyLjIzMDU0IDkuNTc3ODUgMiAxMC41IDJDMTAuNzc2MSAyIDExIDEuNzc2MTQgMTEgMS41QzExIDEuMjIzODYgMTAuNzc2MSAxIDEwLjUgMUM5LjQyMjE1IDEgOC41Mzk5IDEuMjY5NDYgNy45MjA3NSAxLjgxMTIxQzcuNzU4MzIgMS45NTMzMyA3LjYxODMyIDIuMTEwNDMgNy41IDIuMjgwMjNDNy4zODE2OCAyLjExMDQzIDcuMjQxNjggMS45NTMzMyA3LjA3OTI1IDEuODExMjFDNi40NjAxIDEuMjY5NDYgNS41Nzc4NSAxIDQuNSAxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMXogPSBbXCJjb2xvclwiXTtcbnZhciBEYXNoSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxeik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUgNy41QzUgNy4yMjM4NiA1LjIyMzg2IDcgNS41IDdIOS41QzkuNzc2MTQgNyAxMCA3LjIyMzg2IDEwIDcuNUMxMCA3Ljc3NjE0IDkuNzc2MTQgOCA5LjUgOEg1LjVDNS4yMjM4NiA4IDUgNy43NzYxNCA1IDcuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFBID0gW1wiY29sb3JcIl07XG52YXIgRGFzaGJvYXJkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxQSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuOCAxTDIuNzQ5NjcgMC45OTk5N0MyLjUyMTIyIDAuOTk5NzUyIDIuMzI0MjkgMC45OTk1NjQgMi4xNDk4MyAxLjA0MTQ1QzEuNjAxMzYgMS4xNzMxMiAxLjE3MzEyIDEuNjAxMzYgMS4wNDE0NSAyLjE0OTgzQzAuOTk5NTY0IDIuMzI0MjkgMC45OTk3NTIgMi41MjEyMiAwLjk5OTk3IDIuNzQ5NjdMMSAyLjhWNS4yTDAuOTk5OTcgNS4yNTAzM0MwLjk5OTc1MiA1LjQ3ODc4IDAuOTk5NTY0IDUuNjc1NzIgMS4wNDE0NSA1Ljg1MDE3QzEuMTczMTIgNi4zOTg2NCAxLjYwMTM2IDYuODI2ODggMi4xNDk4MyA2Ljk1ODU2QzIuMzI0MjkgNy4wMDA0NCAyLjUyMTIyIDcuMDAwMjUgMi43NDk2NyA3LjAwMDAzTDIuOCA3SDUuMkw1LjI1MDMzIDcuMDAwMDNDNS40Nzg3OCA3LjAwMDI1IDUuNjc1NzIgNy4wMDA0NCA1Ljg1MDE3IDYuOTU4NTZDNi4zOTg2NCA2LjgyNjg4IDYuODI2ODggNi4zOTg2NCA2Ljk1ODU2IDUuODUwMTdDNy4wMDA0NCA1LjY3NTcyIDcuMDAwMjUgNS40Nzg3OCA3LjAwMDAzIDUuMjUwMzNMNyA1LjJWMi44TDcuMDAwMDMgMi43NDk2N0M3LjAwMDI1IDIuNTIxMjIgNy4wMDA0NCAyLjMyNDI5IDYuOTU4NTYgMi4xNDk4M0M2LjgyNjg4IDEuNjAxMzYgNi4zOTg2NCAxLjE3MzEyIDUuODUwMTcgMS4wNDE0NUM1LjY3NTcyIDAuOTk5NTY0IDUuNDc4NzggMC45OTk3NTIgNS4yNTAzMyAwLjk5OTk3TDUuMiAxSDIuOFpNMi4zODMyOCAyLjAxMzgyQzIuNDI2MzIgMi4wMDM0OCAyLjQ5MjIyIDIgMi44IDJINS4yQzUuNTA3NzkgMiA1LjU3MzY5IDIuMDAzNDggNS42MTY3MiAyLjAxMzgyQzUuNzk5NTUgMi4wNTc3MSA1Ljk0MjI5IDIuMjAwNDUgNS45ODYxOSAyLjM4MzI4QzUuOTk2NTIgMi40MjYzMiA2IDIuNDkyMjIgNiAyLjhWNS4yQzYgNS41MDc3OSA1Ljk5NjUyIDUuNTczNjkgNS45ODYxOSA1LjYxNjcyQzUuOTQyMjkgNS43OTk1NSA1Ljc5OTU1IDUuOTQyMjkgNS42MTY3MiA1Ljk4NjE5QzUuNTczNjkgNS45OTY1MiA1LjUwNzc5IDYgNS4yIDZIMi44QzIuNDkyMjIgNiAyLjQyNjMyIDUuOTk2NTIgMi4zODMyOCA1Ljk4NjE5QzIuMjAwNDUgNS45NDIyOSAyLjA1NzcxIDUuNzk5NTUgMi4wMTM4MiA1LjYxNjcyQzIuMDAzNDggNS41NzM2OSAyIDUuNTA3NzkgMiA1LjJWMi44QzIgMi40OTIyMiAyLjAwMzQ4IDIuNDI2MzIgMi4wMTM4MiAyLjM4MzI4QzIuMDU3NzEgMi4yMDA0NSAyLjIwMDQ1IDIuMDU3NzEgMi4zODMyOCAyLjAxMzgyWk05LjggMUw5Ljc0OTY3IDAuOTk5OTdDOS41MjEyMiAwLjk5OTc1MiA5LjMyNDI5IDAuOTk5NTY0IDkuMTQ5ODMgMS4wNDE0NUM4LjYwMTM2IDEuMTczMTIgOC4xNzMxMiAxLjYwMTM2IDguMDQxNDUgMi4xNDk4M0M3Ljk5OTU2IDIuMzI0MjkgNy45OTk3NSAyLjUyMTIyIDcuOTk5OTcgMi43NDk2N0w4IDIuOFY1LjJMNy45OTk5NyA1LjI1MDMzQzcuOTk5NzUgNS40Nzg3OCA3Ljk5OTU2IDUuNjc1NzIgOC4wNDE0NSA1Ljg1MDE3QzguMTczMTIgNi4zOTg2NCA4LjYwMTM2IDYuODI2ODggOS4xNDk4MyA2Ljk1ODU2QzkuMzI0MjkgNy4wMDA0NCA5LjUyMTIyIDcuMDAwMjUgOS43NDk2NyA3LjAwMDAzTDkuOCA3SDEyLjJMMTIuMjUwMyA3LjAwMDAzQzEyLjQ3ODggNy4wMDAyNSAxMi42NzU3IDcuMDAwNDQgMTIuODUwMiA2Ljk1ODU2QzEzLjM5ODYgNi44MjY4OCAxMy44MjY5IDYuMzk4NjQgMTMuOTU4NiA1Ljg1MDE3QzE0LjAwMDQgNS42NzU3MiAxNC4wMDAzIDUuNDc4NzggMTQgNS4yNTAzM0wxNCA1LjJWMi44TDE0IDIuNzQ5NjdDMTQuMDAwMyAyLjUyMTIyIDE0LjAwMDQgMi4zMjQyOSAxMy45NTg2IDIuMTQ5ODNDMTMuODI2OSAxLjYwMTM2IDEzLjM5ODYgMS4xNzMxMiAxMi44NTAyIDEuMDQxNDVDMTIuNjc1NyAwLjk5OTU2NCAxMi40Nzg4IDAuOTk5NzUyIDEyLjI1MDMgMC45OTk5N0wxMi4yIDFIOS44Wk05LjM4MzI4IDIuMDEzODJDOS40MjYzMiAyLjAwMzQ4IDkuNDkyMjIgMiA5LjggMkgxMi4yQzEyLjUwNzggMiAxMi41NzM3IDIuMDAzNDggMTIuNjE2NyAyLjAxMzgyQzEyLjc5OTUgMi4wNTc3MSAxMi45NDIzIDIuMjAwNDUgMTIuOTg2MiAyLjM4MzI4QzEyLjk5NjUgMi40MjYzMiAxMyAyLjQ5MjIyIDEzIDIuOFY1LjJDMTMgNS41MDc3OSAxMi45OTY1IDUuNTczNjkgMTIuOTg2MiA1LjYxNjcyQzEyLjk0MjMgNS43OTk1NSAxMi43OTk1IDUuOTQyMjkgMTIuNjE2NyA1Ljk4NjE5QzEyLjU3MzcgNS45OTY1MiAxMi41MDc4IDYgMTIuMiA2SDkuOEM5LjQ5MjIyIDYgOS40MjYzMiA1Ljk5NjUyIDkuMzgzMjggNS45ODYxOUM5LjIwMDQ1IDUuOTQyMjkgOS4wNTc3MSA1Ljc5OTU1IDkuMDEzODIgNS42MTY3MkM5LjAwMzQ4IDUuNTczNjkgOSA1LjUwNzc5IDkgNS4yVjIuOEM5IDIuNDkyMjIgOS4wMDM0OCAyLjQyNjMyIDkuMDEzODIgMi4zODMyOEM5LjA1NzcxIDIuMjAwNDUgOS4yMDA0NSAyLjA1NzcxIDkuMzgzMjggMi4wMTM4MlpNMi43NDk2NyA3Ljk5OTk3TDIuOCA4SDUuMkw1LjI1MDMzIDcuOTk5OTdDNS40Nzg3OCA3Ljk5OTc1IDUuNjc1NzIgNy45OTk1NiA1Ljg1MDE3IDguMDQxNDVDNi4zOTg2NCA4LjE3MzEyIDYuODI2ODggOC42MDEzNiA2Ljk1ODU2IDkuMTQ5ODNDNy4wMDA0NCA5LjMyNDI5IDcuMDAwMjUgOS41MjEyMiA3LjAwMDAzIDkuNzQ5NjdMNyA5LjhWMTIuMkw3LjAwMDAzIDEyLjI1MDNDNy4wMDAyNSAxMi40Nzg4IDcuMDAwNDQgMTIuNjc1NyA2Ljk1ODU2IDEyLjg1MDJDNi44MjY4OCAxMy4zOTg2IDYuMzk4NjQgMTMuODI2OSA1Ljg1MDE3IDEzLjk1ODZDNS42NzU3MiAxNC4wMDA0IDUuNDc4NzggMTQuMDAwMyA1LjI1MDMzIDE0TDUuMiAxNEgyLjhMMi43NDk2NyAxNEMyLjUyMTIyIDE0LjAwMDMgMi4zMjQyOSAxNC4wMDA0IDIuMTQ5ODMgMTMuOTU4NkMxLjYwMTM2IDEzLjgyNjkgMS4xNzMxMiAxMy4zOTg2IDEuMDQxNDUgMTIuODUwMkMwLjk5OTU2NCAxMi42NzU3IDAuOTk5NzUyIDEyLjQ3ODggMC45OTk5NyAxMi4yNTAzTDEgMTIuMlY5LjhMMC45OTk5NyA5Ljc0OTY3QzAuOTk5NzUyIDkuNTIxMjIgMC45OTk1NjQgOS4zMjQyOSAxLjA0MTQ1IDkuMTQ5ODNDMS4xNzMxMiA4LjYwMTM2IDEuNjAxMzYgOC4xNzMxMiAyLjE0OTgzIDguMDQxNDVDMi4zMjQyOSA3Ljk5OTU2IDIuNTIxMjIgNy45OTk3NSAyLjc0OTY3IDcuOTk5OTdaTTIuOCA5QzIuNDkyMjIgOSAyLjQyNjMyIDkuMDAzNDggMi4zODMyOCA5LjAxMzgyQzIuMjAwNDUgOS4wNTc3MSAyLjA1NzcxIDkuMjAwNDUgMi4wMTM4MiA5LjM4MzI4QzIuMDAzNDggOS40MjYzMiAyIDkuNDkyMjIgMiA5LjhWMTIuMkMyIDEyLjUwNzggMi4wMDM0OCAxMi41NzM3IDIuMDEzODIgMTIuNjE2N0MyLjA1NzcxIDEyLjc5OTUgMi4yMDA0NSAxMi45NDIzIDIuMzgzMjggMTIuOTg2MkMyLjQyNjMyIDEyLjk5NjUgMi40OTIyMiAxMyAyLjggMTNINS4yQzUuNTA3NzkgMTMgNS41NzM2OSAxMi45OTY1IDUuNjE2NzIgMTIuOTg2MkM1Ljc5OTU1IDEyLjk0MjMgNS45NDIyOSAxMi43OTk1IDUuOTg2MTkgMTIuNjE2N0M1Ljk5NjUyIDEyLjU3MzcgNiAxMi41MDc4IDYgMTIuMlY5LjhDNiA5LjQ5MjIyIDUuOTk2NTIgOS40MjYzMiA1Ljk4NjE5IDkuMzgzMjhDNS45NDIyOSA5LjIwMDQ1IDUuNzk5NTUgOS4wNTc3MSA1LjYxNjcyIDkuMDEzODJDNS41NzM2OSA5LjAwMzQ4IDUuNTA3NzkgOSA1LjIgOUgyLjhaTTkuOCA4TDkuNzQ5NjcgNy45OTk5N0M5LjUyMTIyIDcuOTk5NzUgOS4zMjQyOSA3Ljk5OTU2IDkuMTQ5ODMgOC4wNDE0NUM4LjYwMTM2IDguMTczMTIgOC4xNzMxMiA4LjYwMTM2IDguMDQxNDUgOS4xNDk4M0M3Ljk5OTU2IDkuMzI0MjkgNy45OTk3NSA5LjUyMTIyIDcuOTk5OTcgOS43NDk2N0w4IDkuOFYxMi4yTDcuOTk5OTcgMTIuMjUwM0M3Ljk5OTc1IDEyLjQ3ODggNy45OTk1NiAxMi42NzU3IDguMDQxNDUgMTIuODUwMkM4LjE3MzEyIDEzLjM5ODYgOC42MDEzNiAxMy44MjY5IDkuMTQ5ODMgMTMuOTU4NkM5LjMyNDI5IDE0LjAwMDQgOS41MjEyMiAxNC4wMDAzIDkuNzQ5NjcgMTRMOS44IDE0SDEyLjJMMTIuMjUwMyAxNEMxMi40Nzg4IDE0LjAwMDMgMTIuNjc1NyAxNC4wMDA0IDEyLjg1MDIgMTMuOTU4NkMxMy4zOTg2IDEzLjgyNjkgMTMuODI2OSAxMy4zOTg2IDEzLjk1ODYgMTIuODUwMkMxNC4wMDA0IDEyLjY3NTcgMTQuMDAwMyAxMi40Nzg4IDE0IDEyLjI1MDNMMTQgMTIuMlY5LjhMMTQgOS43NDk2N0MxNC4wMDAzIDkuNTIxMjIgMTQuMDAwNCA5LjMyNDI5IDEzLjk1ODYgOS4xNDk4M0MxMy44MjY5IDguNjAxMzYgMTMuMzk4NiA4LjE3MzEyIDEyLjg1MDIgOC4wNDE0NUMxMi42NzU3IDcuOTk5NTYgMTIuNDc4OCA3Ljk5OTc1IDEyLjI1MDMgNy45OTk5N0wxMi4yIDhIOS44Wk05LjM4MzI4IDkuMDEzODJDOS40MjYzMiA5LjAwMzQ4IDkuNDkyMjIgOSA5LjggOUgxMi4yQzEyLjUwNzggOSAxMi41NzM3IDkuMDAzNDggMTIuNjE2NyA5LjAxMzgyQzEyLjc5OTUgOS4wNTc3MSAxMi45NDIzIDkuMjAwNDUgMTIuOTg2MiA5LjM4MzI4QzEyLjk5NjUgOS40MjYzMiAxMyA5LjQ5MjIyIDEzIDkuOFYxMi4yQzEzIDEyLjUwNzggMTIuOTk2NSAxMi41NzM3IDEyLjk4NjIgMTIuNjE2N0MxMi45NDIzIDEyLjc5OTUgMTIuNzk5NSAxMi45NDIzIDEyLjYxNjcgMTIuOTg2MkMxMi41NzM3IDEyLjk5NjUgMTIuNTA3OCAxMyAxMi4yIDEzSDkuOEM5LjQ5MjIyIDEzIDkuNDI2MzIgMTIuOTk2NSA5LjM4MzI4IDEyLjk4NjJDOS4yMDA0NSAxMi45NDIzIDkuMDU3NzEgMTIuNzk5NSA5LjAxMzgyIDEyLjYxNjdDOS4wMDM0OCAxMi41NzM3IDkgMTIuNTA3OCA5IDEyLjJWOS44QzkgOS40OTIyMiA5LjAwMzQ4IDkuNDI2MzIgOS4wMTM4MiA5LjM4MzI4QzkuMDU3NzEgOS4yMDA0NSA5LjIwMDQ1IDkuMDU3NzEgOS4zODMyOCA5LjAxMzgyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMUIgPSBbXCJjb2xvclwiXTtcbnZhciBEZXNrdG9wSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxQik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEgMy4yNUMxIDMuMTExOTMgMS4xMTE5MyAzIDEuMjUgM0gxMy43NUMxMy44ODgxIDMgMTQgMy4xMTE5MyAxNCAzLjI1VjEwLjc1QzE0IDEwLjg4ODEgMTMuODg4MSAxMSAxMy43NSAxMUgxLjI1QzEuMTExOTMgMTEgMSAxMC44ODgxIDEgMTAuNzVWMy4yNVpNMS4yNSAyQzAuNTU5NjQzIDIgMCAyLjU1OTY0IDAgMy4yNVYxMC43NUMwIDExLjQ0MDQgMC41NTk2NDQgMTIgMS4yNSAxMkg1LjA3MzQxTDQuODI5OTEgMTMuMjk4NkM0Ljc2NjQ1IDEzLjYzNzEgNS4wMjYxMiAxMy45NSA1LjM3MDQ5IDEzLjk1SDkuNjI5NTFDOS45NzM4OSAxMy45NSAxMC4yMzM2IDEzLjYzNzEgMTAuMTcwMSAxMy4yOTg2TDkuOTI2NTkgMTJIMTMuNzVDMTQuNDQwNCAxMiAxNSAxMS40NDA0IDE1IDEwLjc1VjMuMjVDMTUgMi41NTk2NCAxNC40NDA0IDIgMTMuNzUgMkgxLjI1Wk05LjAxMDkxIDEySDUuOTg5MDlMNS43OTIyMiAxMy4wNUg5LjIwNzc4TDkuMDEwOTEgMTJaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxQyA9IFtcImNvbG9yXCJdO1xudmFyIERpbWVuc2lvbnNJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFDKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy4wMDAxNCAyLjczODk1QzMuMDAwMTQgMi45NDY5OCAyLjc2MDg3IDMuMDY0MDEgMi41OTY2NiAyLjkzNjI4TDEuMDAzODYgMS42OTc0NEMwLjg3NTE3NyAxLjU5NzM1IDAuODc1MTc3IDEuNDAyODYgMS4wMDM4NiAxLjMwMjc3TDIuNTk2NjYgMC4wNjM5MjhDMi43NjA4NyAtMC4wNjM3OTQ0IDMuMDAwMTQgMC4wNTMyMjkzIDMuMDAwMTQgMC4yNjEyNjZWMS4wMDAxMkg5LjAwMDA5VjAuMjYxMjk2QzkuMDAwMDkgMC4wNTMyNTkxIDkuMjM5MzYgLTAuMDYzNzY0NiA5LjQwMzU4IDAuMDYzOTU3OEwxMC45OTY0IDEuMzAyOEMxMS4xMjUxIDEuNDAyODkgMTEuMTI1MSAxLjU5NzM4IDEwLjk5NjQgMS42OTc0N0w5LjQwMzU4IDIuOTM2MzFDOS4yMzkzNiAzLjA2NDA0IDkuMDAwMDkgMi45NDcwMSA5LjAwMDA5IDIuNzM4OThWMi4wMDAxMkgzLjAwMDE0VjIuNzM4OTVaTTkuNTAwMDIgNC45OTk5OEgyLjUwMDAyQzIuMjIzODggNC45OTk5OCAyLjAwMDAyIDUuMjIzODQgMi4wMDAwMiA1LjQ5OTk4VjEyLjVDMi4wMDAwMiAxMi43NzYxIDIuMjIzODggMTMgMi41MDAwMiAxM0g5LjUwMDAyQzkuNzc2MTYgMTMgMTAgMTIuNzc2MSAxMCAxMi41VjUuNDk5OThDMTAgNS4yMjM4NCA5Ljc3NjE2IDQuOTk5OTggOS41MDAwMiA0Ljk5OTk4Wk0yLjUwMDAyIDMuOTk5OThDMS42NzE1OSAzLjk5OTk4IDEuMDAwMDIgNC42NzE1NiAxLjAwMDAyIDUuNDk5OThWMTIuNUMxLjAwMDAyIDEzLjMyODQgMS42NzE1OSAxNCAyLjUwMDAyIDE0SDkuNTAwMDJDMTAuMzI4NCAxNCAxMSAxMy4zMjg0IDExIDEyLjVWNS40OTk5OEMxMSA0LjY3MTU2IDEwLjMyODQgMy45OTk5OCA5LjUwMDAyIDMuOTk5OThIMi41MDAwMlpNMTQuNzM4OSA2LjAwMDAxSDE0VjEySDE0LjczODlDMTQuOTQ2OSAxMiAxNS4wNjQgMTIuMjM5MyAxNC45MzYyIDEyLjQwMzVMMTMuNjk3NCAxMy45OTYzQzEzLjU5NzMgMTQuMTI1IDEzLjQwMjggMTQuMTI1IDEzLjMwMjcgMTMuOTk2M0wxMi4wNjM5IDEyLjQwMzVDMTEuOTM2MiAxMi4yMzkzIDEyLjA1MzIgMTIgMTIuMjYxMiAxMkgxM1Y2LjAwMDAxSDEyLjI2MTJDMTIuMDUzMiA2LjAwMDAxIDExLjkzNjEgNS43NjA3NCAxMi4wNjM5IDUuNTk2NTNMMTMuMzAyNyA0LjAwMzczQzEzLjQwMjggMy44NzUwNSAxMy41OTczIDMuODc1MDUgMTMuNjk3NCA0LjAwMzc0TDE0LjkzNjIgNS41OTY1M0MxNS4wNjM5IDUuNzYwNzQgMTQuOTQ2OSA2LjAwMDAxIDE0LjczODkgNi4wMDAwMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFEID0gW1wiY29sb3JcIl07XG52YXIgRGlzY0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMUQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjQ5OTkxIDAuODc3MDc1QzMuODQyMjIgMC44NzcwNzUgMC44NzcwNzUgMy44NDIyMiAwLjg3NzA3NSA3LjQ5OTkxQzAuODc3MDc1IDExLjE1NzYgMy44NDIyMiAxNC4xMjI3IDcuNDk5OTEgMTQuMTIyN0MxMS4xNTc2IDE0LjEyMjcgMTQuMTIyNyAxMS4xNTc2IDE0LjEyMjcgNy40OTk5MUMxNC4xMjI3IDMuODQyMjIgMTEuMTU3NiAwLjg3NzA3NSA3LjQ5OTkxIDAuODc3MDc1Wk0xLjgyNzA4IDcuNDk5OTFDMS44MjcwOCA0LjM2Njg5IDQuMzY2ODkgMS44MjcwNyA3LjQ5OTkxIDEuODI3MDdDMTAuNjMyOSAxLjgyNzA3IDEzLjE3MjcgNC4zNjY4OSAxMy4xNzI3IDcuNDk5OTFDMTMuMTcyNyAxMC42MzI5IDEwLjYzMjkgMTMuMTcyNyA3LjQ5OTkxIDEzLjE3MjdDNC4zNjY4OSAxMy4xNzI3IDEuODI3MDggMTAuNjMyOSAxLjgyNzA4IDcuNDk5OTFaTTguMzcyODcgNy41MDAwNkM4LjM3Mjg3IDcuOTgxOTYgNy45ODIyMSA4LjM3MjYzIDcuNTAwMyA4LjM3MjYzQzcuMDE4MzkgOC4zNzI2MyA2LjYyNzczIDcuOTgxOTYgNi42Mjc3MyA3LjUwMDA2QzYuNjI3NzMgNy4wMTgxNSA3LjAxODM5IDYuNjI3NDggNy41MDAzIDYuNjI3NDhDNy45ODIyMSA2LjYyNzQ4IDguMzcyODcgNy4wMTgxNSA4LjM3Mjg3IDcuNTAwMDZaTTkuMzIyODcgNy41MDAwNkM5LjMyMjg3IDguNTA2NjQgOC41MDY4OCA5LjMyMjYzIDcuNTAwMyA5LjMyMjYzQzYuNDkzNzIgOS4zMjI2MyA1LjY3NzczIDguNTA2NjQgNS42Nzc3MyA3LjUwMDA2QzUuNjc3NzMgNi40OTM0OCA2LjQ5MzcyIDUuNjc3NDggNy41MDAzIDUuNjc3NDhDOC41MDY4OCA1LjY3NzQ4IDkuMzIyODcgNi40OTM0OCA5LjMyMjg3IDcuNTAwMDZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxRSA9IFtcImNvbG9yXCJdO1xudmFyIERpc2NvcmRMb2dvSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxRSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgZDogXCJNNS4wNzQ1MSAxLjgyNTg0QzUuMDMyNjcgMS44MTkyNiA0Ljk5MDE0IDEuODE4MjUgNC45NDgwMyAxLjgyMjg0QzQuMTA2ODMgMS45MTQ0NiAyLjgyNjczIDIuMzY4MjggMi4wNzExNSAyLjc3ODA4QzIuMDIxMDYgMi44MDUyNSAxLjk3NjIxIDIuODQxMTIgMS45Mzg2OSAyLjg4NDAyQzEuNjI1MDIgMy4yNDI2NiAxLjM0MDQ2IDMuODI4MzYgMS4xMTcwNiA0LjM4MTg2QzAuODg3NDQ3IDQuOTUwNzYgMC42OTcyOTMgNS41NTAzMiAwLjU4ODkzNyA1Ljk4MzU0QzAuMjM2MjMyIDcuMzkzNjkgMC4wNDI1MDIgOS4wODcyOCAwLjAxNzQ5NDggMTAuNjkyNUMwLjAxNjI0MjkgMTAuNzcyOSAwLjAzNTE4ODMgMTAuODUyMyAwLjA3MjU5MzEgMTAuOTIzNEMwLjM3MzY3OSAxMS40OTYgMS4wMjAxNSAxMi4wMjcgMS42NjgwOSAxMi40MTUyQzIuMzIzMzIgMTIuODA3OCAzLjA4NzMyIDEzLjExODIgMy43MDM4NSAxMy4xNzc4QzMuODUzMzUgMTMuMTkyMiA0LjAwMDk4IDEzLjEzNTggNC4xMDI4MiAxMy4wMjU1QzQuMjU3MiAxMi44NTgxIDQuNTE5MyAxMi40Njc2IDQuNzE3NDUgMTIuMTY0M0M0LjgwNzM5IDEyLjAyNjcgNC44OTE1NyAxMS44OTUzIDQuOTU4NDUgMTEuNzkwMUM1LjYyMDIzIDExLjkxMDYgNi40NTA0MyAxMS45ODAxIDcuNTAwMDIgMTEuOTgwMUM4LjU0ODQ0IDExLjk4MDEgOS4zNzc5NiAxMS45MTA3IDEwLjAzOTQgMTEuNzkwNUMxMC4xMDYyIDExLjg5NTcgMTAuMTkwMyAxMi4wMjY5IDEwLjI4MDEgMTIuMTY0M0MxMC40NzgzIDEyLjQ2NzYgMTAuNzQwNCAxMi44NTgxIDEwLjg5NDcgMTMuMDI1NUMxMC45OTY2IDEzLjEzNTggMTEuMTQ0MiAxMy4xOTIyIDExLjI5MzcgMTMuMTc3OEMxMS45MTAyIDEzLjExODIgMTIuNjc0MiAxMi44MDc4IDEzLjMyOTUgMTIuNDE1MkMxMy45Nzc0IDEyLjAyNyAxNC42MjM5IDExLjQ5NiAxNC45MjUgMTAuOTIzNEMxNC45NjI0IDEwLjg1MjMgMTQuOTgxMyAxMC43NzI5IDE0Ljk4MDEgMTAuNjkyNUMxNC45NTUxIDkuMDg3MjggMTQuNzYxMyA3LjM5MzY5IDE0LjQwODYgNS45ODM1NEMxNC4zMDAzIDUuNTUwMzIgMTQuMTEwMSA0Ljk1MDc2IDEzLjg4MDUgNC4zODE4NkMxMy42NTcxIDMuODI4MzYgMTMuMzcyNSAzLjI0MjY2IDEzLjA1ODkgMi44ODQwMkMxMy4wMjE0IDIuODQxMTIgMTIuOTc2NSAyLjgwNTI1IDEyLjkyNjQgMi43NzgwOEMxMi4xNzA4IDIuMzY4MjggMTAuODkwNyAxLjkxNDQ2IDEwLjA0OTUgMS44MjI4NEMxMC4wMDc0IDEuODE4MjUgOS45NjQ4OSAxLjgxOTI2IDkuOTIzMDUgMS44MjU4NEM5LjcxNjc2IDEuODU4MjUgOS41MzkxIDEuOTY0NTggOS40MDgwOSAyLjA2MzU1QzkuMjY5NzcgMi4xNjgwNCA5LjE0MTMgMi4yOTY2OCA5LjAzMDQgMi40MjY4MkM4Ljg2OTY4IDIuNjE1NDQgOC43MTQzNyAyLjg0NDg4IDguNjE0MjggMy4wNjIyNUM4LjI3MjM3IDMuMDM1MDEgNy45MDEzOCAzLjAyIDcuNSAzLjAyQzcuMDk3NyAzLjAyIDYuNzI1OTMgMy4wMzUwOCA2LjM4MzM3IDMuMDYyNDRDNi4yODMyOCAyLjg0NTAxIDYuMTI3OTIgMi42MTU0OSA1Ljk2NzE2IDIuNDI2ODJDNS44NTYyNiAyLjI5NjY4IDUuNzI3NzggMi4xNjgwNCA1LjU4OTQ3IDIuMDYzNTVDNS40NTg0NiAxLjk2NDU4IDUuMjgwOCAxLjg1ODI1IDUuMDc0NTEgMS44MjU4NFpNMTEuMDE4MSAxMS41MzgyQzExLjAzOTUgMTEuNTcxMyAxMS4wNjE1IDExLjYwNTEgMTEuMDgzOCAxMS42MzkyQzExLjIxNjkgMTEuODQzIDExLjM0ODcgMTIuMDM4NSAxMS40NTA4IDEyLjE4MDlDMTEuODQ3NSAxMi4wOTE2IDEyLjM1MiAxMS44ODE4IDEyLjgzNjEgMTEuNTkxN0MxMy4zNzk1IDExLjI2NjEgMTMuODA5OCAxMC44OTE4IDE0LjAxNzcgMTAuNTczOUMxMy45ODUyIDkuMDY3NTggMTMuNzk5MyA3LjUwMzY5IDEzLjQ3NzMgNi4yMTY0OEMxMy4zOCA1LjgyNzU5IDEzLjIwMzggNS4yNzAyMSAxMi45OTAzIDQuNzQxMTdDMTIuNzg5MyA0LjI0MzI2IDEyLjU3NTMgMy44MjE2MiAxMi4zODggMy41NzkyQzExLjczNzYgMy4yNDIxOSAxMC43MTI5IDIuODg1ODIgMTAuMDQ1NCAyLjc4OTg3QzEwLjAzMDggMi43OTgzOSAxMC4wMTEzIDIuODExMDIgOS45ODY3NSAyLjgyOTU1QzkuOTE4NjMgMi44ODEgOS44NDAxOCAyLjk1NjY2IDkuNzYxMTEgMy4wNDk0NUM5LjcxOTU5IDMuMDk4MTcgOS42ODE2NiAzLjE0NzEgOS42NDc2OCAzLjE5NDQ5QzkuOTUzIDMuMjUwMzEgMTAuMjI1MyAzLjMxNzEgMTAuNDY2MiAzLjM5MTIzQzExLjE0OTkgMy42MDE2IDExLjY0MjggMy44OTAzOSAxMS44ODQgNC4yMTJDMTIuMDQzMSA0LjQyNDA4IDEyLjAwMDEgNC43MjQ5NCAxMS43ODggNC44ODRDMTEuNTc1OSA1LjA0MzA2IDExLjI3NTEgNS4wMDAwOCAxMS4xMTYgNC43ODhDMTEuMDU3MiA0LjcwOTYxIDEwLjgwMDEgNC40OTg0IDEwLjE4MzggNC4zMDg3N0M5LjU4OTMzIDQuMTI1ODUgOC43MTM1NiAzLjk4IDcuNSAzLjk4QzYuMjg2NDQgMy45OCA1LjQxMDY3IDQuMTI1ODUgNC44MTYxNiA0LjMwODc3QzQuMTk5ODggNC40OTg0IDMuOTQyNzkgNC43MDk2MSAzLjg4NCA0Ljc4OEMzLjcyNDk0IDUuMDAwMDggMy40MjQwOCA1LjA0MzA2IDMuMjEyIDQuODg0QzIuOTk5OTIgNC43MjQ5NCAyLjk1Njk0IDQuNDI0MDggMy4xMTYgNC4yMTJDMy4zNTcyMSAzLjg5MDM5IDMuODUwMTEgMy42MDE2IDQuNTMzODMgMy4zOTEyM0M0Ljc3NDE4IDMuMzE3MjcgNS4wNDU3MSAzLjI1MDYyIDUuMzUwMTYgMy4xOTQ4OEM1LjMxNjExIDMuMTQ3MzggNS4yNzgwOCAzLjA5ODMxIDUuMjM2NDUgMy4wNDk0NUM1LjE1NzM4IDIuOTU2NjYgNS4wNzg5MyAyLjg4MSA1LjAxMDgxIDIuODI5NTVDNC45ODYyOCAyLjgxMTAyIDQuOTY2NzQgMi43OTgzOSA0Ljk1MjE3IDIuNzg5ODdDNC4yODQ2NCAyLjg4NTgyIDMuMjU5OTkgMy4yNDIxOSAyLjYwOTU0IDMuNTc5MkMyLjQyMjI2IDMuODIxNjIgMi4yMDgyNSA0LjI0MzI2IDIuMDA3MjkgNC43NDExN0MxLjc5Mzc2IDUuMjcwMjEgMS42MTc1MiA1LjgyNzU5IDEuNTIwMjUgNi4yMTY0OEMxLjE5ODI5IDcuNTAzNjkgMS4wMTIzNiA5LjA2NzU4IDAuOTc5ODYgMTAuNTczOUMxLjE4NzcyIDEwLjg5MTggMS42MTgwNyAxMS4yNjYxIDIuMTYxNDggMTEuNTkxN0MyLjY0NTU3IDExLjg4MTggMy4xNTAwMyAxMi4wOTE2IDMuNTQ2OCAxMi4xODA5QzMuNjQ4ODUgMTIuMDM4NSAzLjc4MDY1IDExLjg0MyAzLjkxMzggMTEuNjM5MkMzLjkzNjI2IDExLjYwNDggMy45NTgzOCAxMS41NzA4IDMuOTc5OTYgMTEuNTM3NUMzLjE5NTIxIDExLjI1OTEgMi43NzM2MSAxMC44NzU4IDIuNTAwNjQgMTAuNDY2NEMyLjM1MzU5IDEwLjI0NTggMi40MTMyIDkuOTQ3NzggMi42MzM3NyA5LjgwMDc0QzIuODU0MzUgOS42NTM2OSAzLjE1MjM2IDkuNzEzMjkgMy4yOTk0MSA5LjkzMzg3QzMuNTYwNzcgMTAuMzI1OSA0LjI0MzU1IDExLjAyMDEgNy41MDAwMiAxMS4wMjAxQzEwLjc1NjUgMTEuMDIwMSAxMS40MzkyIDEwLjMyNiAxMS43MDA2IDkuOTMzODZDMTEuODQ3NyA5LjcxMzI5IDEyLjE0NTcgOS42NTM2OSAxMi4zNjYzIDkuODAwNzRDMTIuNTg2OSA5Ljk0Nzc5IDEyLjY0NjUgMTAuMjQ1OCAxMi40OTk0IDEwLjQ2NjRDMTIuMjI2MiAxMC44NzYyIDExLjgwNDEgMTEuMjU5OCAxMS4wMTgxIDExLjUzODJaTTQuMDgwNDkgNy4wMTIyMUM0LjMyNDEyIDYuNzQ5ODQgNC42NTQ3NiA2LjYwMTYyIDUuMDAwMDcgNi41OTk5OEM1LjM0NTM4IDYuNjAxNjIgNS42NzYwMyA2Ljc0OTg0IDUuOTE5NjYgNy4wMTIyMUM2LjE2MzI5IDcuMjc0NTkgNi4zMDAwNyA3LjYyOTc0IDYuMzAwMDcgNy45OTk5OEM2LjMwMDA3IDguMzcwMjEgNi4xNjMyOSA4LjcyNTM2IDUuOTE5NjYgOC45ODc3NEM1LjY3NjAzIDkuMjUwMTEgNS4zNDUzOCA5LjM5ODMzIDUuMDAwMDcgOS4zOTk5OEM0LjY1NDc2IDkuMzk4MzMgNC4zMjQxMiA5LjI1MDExIDQuMDgwNDkgOC45ODc3NEMzLjgzNjg1IDguNzI1MzYgMy43MDAwNyA4LjM3MDIxIDMuNzAwMDcgNy45OTk5OEMzLjcwMDA3IDcuNjI5NzQgMy44MzY4NSA3LjI3NDU5IDQuMDgwNDkgNy4wMTIyMVpNOS45OTg4NSA2LjU5OTk4QzkuNjUzNTQgNi42MDE2MiA5LjMyMjkgNi43NDk4NCA5LjA3OTI2IDcuMDEyMjFDOC44MzU2MyA3LjI3NDU5IDguNjk4ODUgNy42Mjk3NCA4LjY5ODg1IDcuOTk5OThDOC42OTg4NSA4LjM3MDIxIDguODM1NjMgOC43MjUzNiA5LjA3OTI2IDguOTg3NzRDOS4zMjI5IDkuMjUwMTEgOS42NTM1NCA5LjM5ODMzIDkuOTk4ODUgOS4zOTk5OEMxMC4zNDQyIDkuMzk4MzMgMTAuNjc0OCA5LjI1MDExIDEwLjkxODQgOC45ODc3NEMxMS4xNjIxIDguNzI1MzYgMTEuMjk4OSA4LjM3MDIxIDExLjI5ODkgNy45OTk5OEMxMS4yOTg5IDcuNjI5NzQgMTEuMTYyMSA3LjI3NDU5IDEwLjkxODQgNy4wMTIyMUMxMC42NzQ4IDYuNzQ5ODQgMTAuMzQ0MiA2LjYwMTYyIDkuOTk4ODUgNi41OTk5OFpcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxRiA9IFtcImNvbG9yXCJdO1xudmFyIERpdmlkZXJIb3Jpem9udGFsSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxRik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIgNy41QzIgNy4yMjM4NiAyLjIyMzg2IDcgMi41IDdIMTIuNUMxMi43NzYxIDcgMTMgNy4yMjM4NiAxMyA3LjVDMTMgNy43NzYxNCAxMi43NzYxIDggMTIuNSA4SDIuNUMyLjIyMzg2IDggMiA3Ljc3NjE0IDIgNy41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMUcgPSBbXCJjb2xvclwiXTtcbnZhciBEaXZpZGVyVmVydGljYWxJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFHKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy41IDJDNy43NzYxNCAyIDggMi4yMjM4NiA4IDIuNUw4IDEyLjVDOCAxMi43NzYxIDcuNzc2MTQgMTMgNy41IDEzQzcuMjIzODYgMTMgNyAxMi43NzYxIDcgMTIuNUw3IDIuNUM3IDIuMjIzODYgNy4yMjM4NiAyIDcuNSAyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMUggPSBbXCJjb2xvclwiXTtcbnZhciBEb3RJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFIKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy41IDkuMTI1QzguMzk3NDYgOS4xMjUgOS4xMjUgOC4zOTc0NiA5LjEyNSA3LjVDOS4xMjUgNi42MDI1NCA4LjM5NzQ2IDUuODc1IDcuNSA1Ljg3NUM2LjYwMjU0IDUuODc1IDUuODc1IDYuNjAyNTQgNS44NzUgNy41QzUuODc1IDguMzk3NDYgNi42MDI1NCA5LjEyNSA3LjUgOS4xMjVaTTcuNSAxMC4xMjVDOC45NDk3NSAxMC4xMjUgMTAuMTI1IDguOTQ5NzUgMTAuMTI1IDcuNUMxMC4xMjUgNi4wNTAyNSA4Ljk0OTc1IDQuODc1IDcuNSA0Ljg3NUM2LjA1MDI1IDQuODc1IDQuODc1IDYuMDUwMjUgNC44NzUgNy41QzQuODc1IDguOTQ5NzUgNi4wNTAyNSAxMC4xMjUgNy41IDEwLjEyNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFJID0gW1wiY29sb3JcIl07XG52YXIgRG90RmlsbGVkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxSSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTkuODc1IDcuNUM5Ljg3NSA4LjgxMTY4IDguODExNjggOS44NzUgNy41IDkuODc1QzYuMTg4MzIgOS44NzUgNS4xMjUgOC44MTE2OCA1LjEyNSA3LjVDNS4xMjUgNi4xODgzMiA2LjE4ODMyIDUuMTI1IDcuNSA1LjEyNUM4LjgxMTY4IDUuMTI1IDkuODc1IDYuMTg4MzIgOS44NzUgNy41WlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFKID0gW1wiY29sb3JcIl07XG52YXIgRG90c0hvcml6b250YWxJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFKKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy42MjUgNy41QzMuNjI1IDguMTIxMzIgMy4xMjEzMiA4LjYyNSAyLjUgOC42MjVDMS44Nzg2OCA4LjYyNSAxLjM3NSA4LjEyMTMyIDEuMzc1IDcuNUMxLjM3NSA2Ljg3ODY4IDEuODc4NjggNi4zNzUgMi41IDYuMzc1QzMuMTIxMzIgNi4zNzUgMy42MjUgNi44Nzg2OCAzLjYyNSA3LjVaTTguNjI1IDcuNUM4LjYyNSA4LjEyMTMyIDguMTIxMzIgOC42MjUgNy41IDguNjI1QzYuODc4NjggOC42MjUgNi4zNzUgOC4xMjEzMiA2LjM3NSA3LjVDNi4zNzUgNi44Nzg2OCA2Ljg3ODY4IDYuMzc1IDcuNSA2LjM3NUM4LjEyMTMyIDYuMzc1IDguNjI1IDYuODc4NjggOC42MjUgNy41Wk0xMi41IDguNjI1QzEzLjEyMTMgOC42MjUgMTMuNjI1IDguMTIxMzIgMTMuNjI1IDcuNUMxMy42MjUgNi44Nzg2OCAxMy4xMjEzIDYuMzc1IDEyLjUgNi4zNzVDMTEuODc4NyA2LjM3NSAxMS4zNzUgNi44Nzg2OCAxMS4zNzUgNy41QzExLjM3NSA4LjEyMTMyIDExLjg3ODcgOC42MjUgMTIuNSA4LjYyNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFLID0gW1wiY29sb3JcIl07XG52YXIgRG90c1ZlcnRpY2FsSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxSyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTguNjI1IDIuNUM4LjYyNSAzLjEyMTMyIDguMTIxMzIgMy42MjUgNy41IDMuNjI1QzYuODc4NjggMy42MjUgNi4zNzUgMy4xMjEzMiA2LjM3NSAyLjVDNi4zNzUgMS44Nzg2OCA2Ljg3ODY4IDEuMzc1IDcuNSAxLjM3NUM4LjEyMTMyIDEuMzc1IDguNjI1IDEuODc4NjggOC42MjUgMi41Wk04LjYyNSA3LjVDOC42MjUgOC4xMjEzMiA4LjEyMTMyIDguNjI1IDcuNSA4LjYyNUM2Ljg3ODY4IDguNjI1IDYuMzc1IDguMTIxMzIgNi4zNzUgNy41QzYuMzc1IDYuODc4NjggNi44Nzg2OCA2LjM3NSA3LjUgNi4zNzVDOC4xMjEzMiA2LjM3NSA4LjYyNSA2Ljg3ODY4IDguNjI1IDcuNVpNNy41IDEzLjYyNUM4LjEyMTMyIDEzLjYyNSA4LjYyNSAxMy4xMjEzIDguNjI1IDEyLjVDOC42MjUgMTEuODc4NyA4LjEyMTMyIDExLjM3NSA3LjUgMTEuMzc1QzYuODc4NjggMTEuMzc1IDYuMzc1IDExLjg3ODcgNi4zNzUgMTIuNUM2LjM3NSAxMy4xMjEzIDYuODc4NjggMTMuNjI1IDcuNSAxMy42MjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxTCA9IFtcImNvbG9yXCJdO1xudmFyIERvdWJsZUFycm93RG93bkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMUwpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zLjg1MzU1IDIuMTQ2NDVDMy42NTgyOSAxLjk1MTE4IDMuMzQxNzEgMS45NTExOCAzLjE0NjQ1IDIuMTQ2NDVDMi45NTExOCAyLjM0MTcxIDIuOTUxMTggMi42NTgyOSAzLjE0NjQ1IDIuODUzNTVMNy4xNDY0NSA2Ljg1MzU1QzcuMzQxNzEgNy4wNDg4MiA3LjY1ODI5IDcuMDQ4ODIgNy44NTM1NSA2Ljg1MzU1TDExLjg1MzYgMi44NTM1NUMxMi4wNDg4IDIuNjU4MjkgMTIuMDQ4OCAyLjM0MTcxIDExLjg1MzYgMi4xNDY0NUMxMS42NTgzIDEuOTUxMTggMTEuMzQxNyAxLjk1MTE4IDExLjE0NjQgMi4xNDY0NUw3LjUgNS43OTI4OUwzLjg1MzU1IDIuMTQ2NDVaTTMuODUzNTUgOC4xNDY0NUMzLjY1ODI5IDcuOTUxMTggMy4zNDE3MSA3Ljk1MTE4IDMuMTQ2NDUgOC4xNDY0NUMyLjk1MTE4IDguMzQxNzEgMi45NTExOCA4LjY1ODI5IDMuMTQ2NDUgOC44NTM1NUw3LjE0NjQ1IDEyLjg1MzZDNy4zNDE3MSAxMy4wNDg4IDcuNjU4MjkgMTMuMDQ4OCA3Ljg1MzU1IDEyLjg1MzZMMTEuODUzNiA4Ljg1MzU1QzEyLjA0ODggOC42NTgyOSAxMi4wNDg4IDguMzQxNzEgMTEuODUzNiA4LjE0NjQ1QzExLjY1ODMgNy45NTExOCAxMS4zNDE3IDcuOTUxMTggMTEuMTQ2NCA4LjE0NjQ1TDcuNSAxMS43OTI5TDMuODUzNTUgOC4xNDY0NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFNID0gW1wiY29sb3JcIl07XG52YXIgRG91YmxlQXJyb3dMZWZ0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxTSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTYuODUzNTUgMy44NTM1NUM3LjA0ODgyIDMuNjU4MjkgNy4wNDg4MiAzLjM0MTcxIDYuODUzNTUgMy4xNDY0NUM2LjY1ODI5IDIuOTUxMTggNi4zNDE3MSAyLjk1MTE4IDYuMTQ2NDUgMy4xNDY0NUwyLjE0NjQ1IDcuMTQ2NDVDMS45NTExOCA3LjM0MTcxIDEuOTUxMTggNy42NTgyOSAyLjE0NjQ1IDcuODUzNTVMNi4xNDY0NSAxMS44NTM2QzYuMzQxNzEgMTIuMDQ4OCA2LjY1ODI5IDEyLjA0ODggNi44NTM1NSAxMS44NTM2QzcuMDQ4ODIgMTEuNjU4MyA3LjA0ODgyIDExLjM0MTcgNi44NTM1NSAxMS4xNDY0TDMuMjA3MTEgNy41TDYuODUzNTUgMy44NTM1NVpNMTIuODUzNiAzLjg1MzU1QzEzLjA0ODggMy42NTgyOSAxMy4wNDg4IDMuMzQxNzEgMTIuODUzNiAzLjE0NjQ1QzEyLjY1ODMgMi45NTExOCAxMi4zNDE3IDIuOTUxMTggMTIuMTQ2NCAzLjE0NjQ1TDguMTQ2NDUgNy4xNDY0NUM3Ljk1MTE4IDcuMzQxNzEgNy45NTExOCA3LjY1ODI5IDguMTQ2NDUgNy44NTM1NUwxMi4xNDY0IDExLjg1MzZDMTIuMzQxNyAxMi4wNDg4IDEyLjY1ODMgMTIuMDQ4OCAxMi44NTM2IDExLjg1MzZDMTMuMDQ4OCAxMS42NTgzIDEzLjA0ODggMTEuMzQxNyAxMi44NTM2IDExLjE0NjRMOS4yMDcxMSA3LjVMMTIuODUzNiAzLjg1MzU1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMU4gPSBbXCJjb2xvclwiXTtcbnZhciBEb3VibGVBcnJvd1JpZ2h0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxTik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuMTQ2NDUgMTEuMTQ2NEMxLjk1MTE4IDExLjM0MTcgMS45NTExOCAxMS42NTgzIDIuMTQ2NDUgMTEuODUzNkMyLjM0MTcxIDEyLjA0ODggMi42NTgyOSAxMi4wNDg4IDIuODUzNTUgMTEuODUzNkw2Ljg1MzU1IDcuODUzNTVDNy4wNDg4MiA3LjY1ODI5IDcuMDQ4ODIgNy4zNDE3MSA2Ljg1MzU1IDcuMTQ2NDVMMi44NTM1NSAzLjE0NjQ1QzIuNjU4MjkgMi45NTExOCAyLjM0MTcxIDIuOTUxMTggMi4xNDY0NSAzLjE0NjQ1QzEuOTUxMTggMy4zNDE3MSAxLjk1MTE4IDMuNjU4MjkgMi4xNDY0NSAzLjg1MzU1TDUuNzkyODkgNy41TDIuMTQ2NDUgMTEuMTQ2NFpNOC4xNDY0NSAxMS4xNDY0QzcuOTUxMTggMTEuMzQxNyA3Ljk1MTE4IDExLjY1ODMgOC4xNDY0NSAxMS44NTM2QzguMzQxNzEgMTIuMDQ4OCA4LjY1ODI5IDEyLjA0ODggOC44NTM1NSAxMS44NTM2TDEyLjg1MzYgNy44NTM1NUMxMy4wNDg4IDcuNjU4MjkgMTMuMDQ4OCA3LjM0MTcxIDEyLjg1MzYgNy4xNDY0NUw4Ljg1MzU1IDMuMTQ2NDVDOC42NTgyOSAyLjk1MTE4IDguMzQxNzEgMi45NTExOCA4LjE0NjQ1IDMuMTQ2NDVDNy45NTExOCAzLjM0MTcxIDcuOTUxMTggMy42NTgyOSA4LjE0NjQ1IDMuODUzNTVMMTEuNzkyOSA3LjVMOC4xNDY0NSAxMS4xNDY0WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMU8gPSBbXCJjb2xvclwiXTtcbnZhciBEb3VibGVBcnJvd1VwSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxTyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTExLjE0NjQgNi44NTM1NUMxMS4zNDE3IDcuMDQ4ODIgMTEuNjU4MyA3LjA0ODgyIDExLjg1MzYgNi44NTM1NUMxMi4wNDg4IDYuNjU4MjkgMTIuMDQ4OCA2LjM0MTcxIDExLjg1MzYgNi4xNDY0NUw3Ljg1MzU1IDIuMTQ2NDVDNy42NTgyOSAxLjk1MTE4IDcuMzQxNzEgMS45NTExOCA3LjE0NjQ1IDIuMTQ2NDVMMy4xNDY0NSA2LjE0NjQ1QzIuOTUxMTggNi4zNDE3MSAyLjk1MTE4IDYuNjU4MjkgMy4xNDY0NSA2Ljg1MzU1QzMuMzQxNzEgNy4wNDg4MiAzLjY1ODI5IDcuMDQ4ODIgMy44NTM1NSA2Ljg1MzU1TDcuNSAzLjIwNzExTDExLjE0NjQgNi44NTM1NVpNMTEuMTQ2NCAxMi44NTM2QzExLjM0MTcgMTMuMDQ4OCAxMS42NTgzIDEzLjA0ODggMTEuODUzNiAxMi44NTM2QzEyLjA0ODggMTIuNjU4MyAxMi4wNDg4IDEyLjM0MTcgMTEuODUzNiAxMi4xNDY0TDcuODUzNTUgOC4xNDY0NUM3LjY1ODI5IDcuOTUxMTggNy4zNDE3MSA3Ljk1MTE4IDcuMTQ2NDUgOC4xNDY0NUwzLjE0NjQ1IDEyLjE0NjRDMi45NTExOCAxMi4zNDE3IDIuOTUxMTggMTIuNjU4MyAzLjE0NjQ1IDEyLjg1MzZDMy4zNDE3MSAxMy4wNDg4IDMuNjU4MjkgMTMuMDQ4OCAzLjg1MzU1IDEyLjg1MzZMNy41IDkuMjA3MTFMMTEuMTQ2NCAxMi44NTM2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMVAgPSBbXCJjb2xvclwiXTtcbnZhciBEb3dubG9hZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMVApO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjUwMDA1IDEuMDQ5OTlDNy43NDg1OCAxLjA0OTk5IDcuOTUwMDUgMS4yNTE0NiA3Ljk1MDA1IDEuNDk5OTlWOC40MTM1OUwxMC4xODE5IDYuMTgxNzlDMTAuMzU3NiA2LjAwNjA1IDEwLjY0MjUgNi4wMDYwNSAxMC44MTgyIDYuMTgxNzlDMTAuOTk0IDYuMzU3NTMgMTAuOTk0IDYuNjQyNDUgMTAuODE4MiA2LjgxODE5TDcuODE4MjUgOS44MTgxOUM3LjY0MjUxIDkuOTkzOTIgNy4zNTc1OSA5Ljk5MzkyIDcuMTgxODUgOS44MTgxOUw0LjE4MTg1IDYuODE4MTlDNC4wMDYxMSA2LjY0MjQ1IDQuMDA2MTEgNi4zNTc1MyA0LjE4MTg1IDYuMTgxNzlDNC4zNTc1OSA2LjAwNjA1IDQuNjQyNTEgNi4wMDYwNSA0LjgxODI1IDYuMTgxNzlMNy4wNTAwNSA4LjQxMzU5VjEuNDk5OTlDNy4wNTAwNSAxLjI1MTQ2IDcuMjUxNTIgMS4wNDk5OSA3LjUwMDA1IDEuMDQ5OTlaTTIuNSAxMEMyLjc3NjE0IDEwIDMgMTAuMjIzOSAzIDEwLjVWMTJDMyAxMi41NTM5IDMuNDQ1NjUgMTMgMy45OTYzNSAxM0gxMS4wMDEyQzExLjU1MjkgMTMgMTIgMTIuNTUyOCAxMiAxMlYxMC41QzEyIDEwLjIyMzkgMTIuMjIzOSAxMCAxMi41IDEwQzEyLjc3NjEgMTAgMTMgMTAuMjIzOSAxMyAxMC41VjEyQzEzIDEzLjEwNDEgMTIuMTA2MiAxNCAxMS4wMDEyIDE0SDMuOTk2MzVDMi44OTAxOSAxNCAyIDEzLjEwMyAyIDEyVjEwLjVDMiAxMC4yMjM5IDIuMjIzODYgMTAgMi41IDEwWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMVEgPSBbXCJjb2xvclwiXTtcbnZhciBEcmFnSGFuZGxlRG90czFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFRKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCI0LjVcIixcbiAgICBjeTogXCIyLjVcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjQuNVwiLFxuICAgIGN5OiBcIjQuNVwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcImNpcmNsZVwiLCB7XG4gICAgY3g6IFwiNC41XCIsXG4gICAgY3k6IFwiNi40OTlcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjQuNVwiLFxuICAgIGN5OiBcIjguNDk5XCIsXG4gICAgcjogXCIuNlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCI0LjVcIixcbiAgICBjeTogXCIxMC40OThcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjQuNVwiLFxuICAgIGN5OiBcIjEyLjQ5OFwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcImNpcmNsZVwiLCB7XG4gICAgY3g6IFwiNi41XCIsXG4gICAgY3k6IFwiMi41XCIsXG4gICAgcjogXCIuNlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCI2LjVcIixcbiAgICBjeTogXCI0LjVcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjYuNVwiLFxuICAgIGN5OiBcIjYuNDk5XCIsXG4gICAgcjogXCIuNlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCI2LjVcIixcbiAgICBjeTogXCI4LjQ5OVwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcImNpcmNsZVwiLCB7XG4gICAgY3g6IFwiNi41XCIsXG4gICAgY3k6IFwiMTAuNDk4XCIsXG4gICAgcjogXCIuNlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCI2LjVcIixcbiAgICBjeTogXCIxMi40OThcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjguNDk5XCIsXG4gICAgY3k6IFwiMi41XCIsXG4gICAgcjogXCIuNlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCI4LjQ5OVwiLFxuICAgIGN5OiBcIjQuNVwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcImNpcmNsZVwiLCB7XG4gICAgY3g6IFwiOC40OTlcIixcbiAgICBjeTogXCI2LjQ5OVwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcImNpcmNsZVwiLCB7XG4gICAgY3g6IFwiOC40OTlcIixcbiAgICBjeTogXCI4LjQ5OVwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcImNpcmNsZVwiLCB7XG4gICAgY3g6IFwiOC40OTlcIixcbiAgICBjeTogXCIxMC40OThcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjguNDk5XCIsXG4gICAgY3k6IFwiMTIuNDk4XCIsXG4gICAgcjogXCIuNlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCIxMC40OTlcIixcbiAgICBjeTogXCIyLjVcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjEwLjQ5OVwiLFxuICAgIGN5OiBcIjQuNVwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSwgY3JlYXRlRWxlbWVudChcImNpcmNsZVwiLCB7XG4gICAgY3g6IFwiMTAuNDk5XCIsXG4gICAgY3k6IFwiNi40OTlcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjEwLjQ5OVwiLFxuICAgIGN5OiBcIjguNDk5XCIsXG4gICAgcjogXCIuNlwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwiY2lyY2xlXCIsIHtcbiAgICBjeDogXCIxMC40OTlcIixcbiAgICBjeTogXCIxMC40OThcIixcbiAgICByOiBcIi42XCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJjaXJjbGVcIiwge1xuICAgIGN4OiBcIjEwLjQ5OVwiLFxuICAgIGN5OiBcIjEyLjQ5OFwiLFxuICAgIHI6IFwiLjZcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxUiA9IFtcImNvbG9yXCJdO1xudmFyIERyYWdIYW5kbGVEb3RzMkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMVIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk01LjUgNC42MjVDNi4xMjEzMiA0LjYyNSA2LjYyNSA0LjEyMTMyIDYuNjI1IDMuNUM2LjYyNSAyLjg3ODY4IDYuMTIxMzIgMi4zNzUgNS41IDIuMzc1QzQuODc4NjggMi4zNzUgNC4zNzUgMi44Nzg2OCA0LjM3NSAzLjVDNC4zNzUgNC4xMjEzMiA0Ljg3ODY4IDQuNjI1IDUuNSA0LjYyNVpNOS41IDQuNjI1QzEwLjEyMTMgNC42MjUgMTAuNjI1IDQuMTIxMzIgMTAuNjI1IDMuNUMxMC42MjUgMi44Nzg2OCAxMC4xMjEzIDIuMzc1IDkuNSAyLjM3NUM4Ljg3ODY4IDIuMzc1IDguMzc1IDIuODc4NjggOC4zNzUgMy41QzguMzc1IDQuMTIxMzIgOC44Nzg2OCA0LjYyNSA5LjUgNC42MjVaTTEwLjYyNSA3LjVDMTAuNjI1IDguMTIxMzIgMTAuMTIxMyA4LjYyNSA5LjUgOC42MjVDOC44Nzg2OCA4LjYyNSA4LjM3NSA4LjEyMTMyIDguMzc1IDcuNUM4LjM3NSA2Ljg3ODY4IDguODc4NjggNi4zNzUgOS41IDYuMzc1QzEwLjEyMTMgNi4zNzUgMTAuNjI1IDYuODc4NjggMTAuNjI1IDcuNVpNNS41IDguNjI1QzYuMTIxMzIgOC42MjUgNi42MjUgOC4xMjEzMiA2LjYyNSA3LjVDNi42MjUgNi44Nzg2OCA2LjEyMTMyIDYuMzc1IDUuNSA2LjM3NUM0Ljg3ODY4IDYuMzc1IDQuMzc1IDYuODc4NjggNC4zNzUgNy41QzQuMzc1IDguMTIxMzIgNC44Nzg2OCA4LjYyNSA1LjUgOC42MjVaTTEwLjYyNSAxMS41QzEwLjYyNSAxMi4xMjEzIDEwLjEyMTMgMTIuNjI1IDkuNSAxMi42MjVDOC44Nzg2OCAxMi42MjUgOC4zNzUgMTIuMTIxMyA4LjM3NSAxMS41QzguMzc1IDEwLjg3ODcgOC44Nzg2OCAxMC4zNzUgOS41IDEwLjM3NUMxMC4xMjEzIDEwLjM3NSAxMC42MjUgMTAuODc4NyAxMC42MjUgMTEuNVpNNS41IDEyLjYyNUM2LjEyMTMyIDEyLjYyNSA2LjYyNSAxMi4xMjEzIDYuNjI1IDExLjVDNi42MjUgMTAuODc4NyA2LjEyMTMyIDEwLjM3NSA1LjUgMTAuMzc1QzQuODc4NjggMTAuMzc1IDQuMzc1IDEwLjg3ODcgNC4zNzUgMTEuNUM0LjM3NSAxMi4xMjEzIDQuODc4NjggMTIuNjI1IDUuNSAxMi42MjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxUyA9IFtcImNvbG9yXCJdO1xudmFyIERyYWdIYW5kbGVIb3Jpem9udGFsSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxUyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuNDk5OTggNC4wOTk5OEMyLjI3OTA2IDQuMDk5OTggMi4wOTk5OCA0LjI3OTA2IDIuMDk5OTggNC40OTk5OEMyLjA5OTk4IDQuNzIwODkgMi4yNzkwNiA0Ljg5OTk4IDIuNDk5OTggNC44OTk5OEgxMi41QzEyLjcyMDkgNC44OTk5OCAxMi45IDQuNzIwODkgMTIuOSA0LjQ5OTk4QzEyLjkgNC4yNzkwNiAxMi43MjA5IDQuMDk5OTggMTIuNSA0LjA5OTk4SDIuNDk5OThaTTIuNDk5OTggNi4wOTk5OEMyLjI3OTA2IDYuMDk5OTggMi4wOTk5OCA2LjI3OTA2IDIuMDk5OTggNi40OTk5OEMyLjA5OTk4IDYuNzIwODkgMi4yNzkwNiA2Ljg5OTk4IDIuNDk5OTggNi44OTk5OEgxMi41QzEyLjcyMDkgNi44OTk5OCAxMi45IDYuNzIwODkgMTIuOSA2LjQ5OTk4QzEyLjkgNi4yNzkwNiAxMi43MjA5IDYuMDk5OTggMTIuNSA2LjA5OTk4SDIuNDk5OThaTTIuMDk5OTggOC40OTk5OEMyLjA5OTk4IDguMjc5MDYgMi4yNzkwNiA4LjA5OTk4IDIuNDk5OTggOC4wOTk5OEgxMi41QzEyLjcyMDkgOC4wOTk5OCAxMi45IDguMjc5MDYgMTIuOSA4LjQ5OTk4QzEyLjkgOC43MjA4OSAxMi43MjA5IDguODk5OTggMTIuNSA4Ljg5OTk4SDIuNDk5OThDMi4yNzkwNiA4Ljg5OTk4IDIuMDk5OTggOC43MjA4OSAyLjA5OTk4IDguNDk5OThaTTIuNDk5OTggMTAuMUMyLjI3OTA2IDEwLjEgMi4wOTk5OCAxMC4yNzkxIDIuMDk5OTggMTAuNUMyLjA5OTk4IDEwLjcyMDkgMi4yNzkwNiAxMC45IDIuNDk5OTggMTAuOUgxMi41QzEyLjcyMDkgMTAuOSAxMi45IDEwLjcyMDkgMTIuOSAxMC41QzEyLjkgMTAuMjc5MSAxMi43MjA5IDEwLjEgMTIuNSAxMC4xSDIuNDk5OThaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxVCA9IFtcImNvbG9yXCJdO1xudmFyIERyYWdIYW5kbGVWZXJ0aWNhbEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMVQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk00LjA5OTk4IDEyLjVDNC4wOTk5OCAxMi43MjA5IDQuMjc5MDYgMTIuOSA0LjQ5OTk4IDEyLjlDNC43MjA4OSAxMi45IDQuODk5OTggMTIuNzIwOSA0Ljg5OTk4IDEyLjVMNC44OTk5OCAyLjUwMDAyQzQuODk5OTggMi4yNzkxMSA0LjcyMDg5IDIuMTAwMDMgNC40OTk5OCAyLjEwMDAzQzQuMjc5MDYgMi4xMDAwMyA0LjA5OTk4IDIuMjc5MTEgNC4wOTk5OCAyLjUwMDAyTDQuMDk5OTggMTIuNVpNNi4wOTk5OCAxMi41QzYuMDk5OTggMTIuNzIwOSA2LjI3OTA2IDEyLjkgNi40OTk5OCAxMi45QzYuNzIwODkgMTIuOSA2Ljg5OTk4IDEyLjcyMDkgNi44OTk5OCAxMi41TDYuODk5OTggMi41MDAwMkM2Ljg5OTk4IDIuMjc5MTEgNi43MjA4OSAyLjEwMDAzIDYuNDk5OTggMi4xMDAwM0M2LjI3OTA2IDIuMTAwMDMgNi4wOTk5OCAyLjI3OTExIDYuMDk5OTggMi41MDAwMkw2LjA5OTk4IDEyLjVaTTguNDk5OTggMTIuOUM4LjI3OTA2IDEyLjkgOC4wOTk5OCAxMi43MjA5IDguMDk5OTggMTIuNUw4LjA5OTk4IDIuNTAwMDJDOC4wOTk5OCAyLjI3OTExIDguMjc5MDYgMi4xMDAwMiA4LjQ5OTk4IDIuMTAwMDJDOC43MjA4OSAyLjEwMDAyIDguODk5OTggMi4yNzkxMSA4Ljg5OTk4IDIuNTAwMDJMOC44OTk5OCAxMi41QzguODk5OTggMTIuNzIwOSA4LjcyMDg5IDEyLjkgOC40OTk5OCAxMi45Wk0xMC4xIDEyLjVDMTAuMSAxMi43MjA5IDEwLjI3OTEgMTIuOSAxMC41IDEyLjlDMTAuNzIwOSAxMi45IDEwLjkgMTIuNzIwOSAxMC45IDEyLjVMMTAuOSAyLjUwMDAyQzEwLjkgMi4yNzkxMSAxMC43MjA5IDIuMTAwMDIgMTAuNSAyLjEwMDAyQzEwLjI3OTEgMi4xMDAwMiAxMC4xIDIuMjc5MTEgMTAuMSAyLjUwMDAyTDEwLjEgMTIuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFVID0gW1wiY29sb3JcIl07XG52YXIgRHJhd2luZ1Bpbkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMVUpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMC4zMjg1IDEuMTM2MDdDMTAuMTMzMiAwLjk0MDgwOSA5LjgxNjYyIDAuOTQwODA4IDkuNjIxMzYgMS4xMzYwN0M5LjQyNjA5IDEuMzMxMzMgOS40MjYwOSAxLjY0NzkyIDkuNjIxMzYgMS44NDMxOEwxMC4yNzQ0IDIuNDk2MTlMNS40MjU2MyA2LjEzMjc0TDQuMzE4MDUgNS4wMjUxNkM0LjEyMjc5IDQuODI5OSAzLjgwNjIxIDQuODI5OSAzLjYxMDk1IDUuMDI1MTZDMy40MTU2OSA1LjIyMDQyIDMuNDE1NjkgNS41MzcgMy42MTA5NSA1LjczMjI2TDUuMDI1MTYgNy4xNDY0OEw2LjA4NTgyIDguMjA3MTRMMi44MTU0NSAxMS40Nzc1QzIuNjIwMTkgMTEuNjcyOCAyLjYyMDE5IDExLjk4OTQgMi44MTU0NSAxMi4xODQ2QzMuMDEwNzIgMTIuMzc5OSAzLjMyNzMgMTIuMzc5OSAzLjUyMjU2IDEyLjE4NDZMNi43OTI5MyA4LjkxNDI1TDcuODUzNTkgOS45NzQ5MUw5LjI2NzggMTEuMzg5MUM5LjQ2MzA2IDExLjU4NDQgOS43Nzk2NSAxMS41ODQ0IDkuOTc0OTEgMTEuMzg5MUMxMC4xNzAyIDExLjE5MzkgMTAuMTcwMiAxMC44NzczIDkuOTc0OTEgMTAuNjgyTDguODY3MzMgOS41NzQ0M0wxMi41MDM5IDQuNzI1N0wxMy4xNTY5IDUuMzc4NzFDMTMuMzUyMiA1LjU3Mzk3IDEzLjY2ODcgNS41NzM5NyAxMy44NjQgNS4zNzg3MUMxNC4wNTkzIDUuMTgzNDUgMTQuMDU5MyA0Ljg2Njg3IDEzLjg2NCA0LjY3MTZMMTIuODAzMyAzLjYxMDk0TDExLjM4OTEgMi4xOTY3M0wxMC4zMjg1IDEuMTM2MDdaTTYuMTM5OTIgNi44NDcwMkwxMC45ODg3IDMuMjEwNDdMMTEuNzg5NiA0LjAxMTQyTDguMTUzMDUgOC44NjAxNUw2LjEzOTkyIDYuODQ3MDJaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxViA9IFtcImNvbG9yXCJdO1xudmFyIERyYXdpbmdQaW5GaWxsZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFWKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOS42MjEyOSAxLjEzNjA3QzkuODE2NTYgMC45NDA4MDggMTAuMTMzMSAwLjk0MDgwOSAxMC4zMjg0IDEuMTM2MDdMMTEuMzg5MSAyLjE5NjczTDEyLjgwMzMgMy42MTA5NEwxMy44NjM5IDQuNjcxNkMxNC4wNTkyIDQuODY2ODcgMTQuMDU5MiA1LjE4MzQ1IDEzLjg2MzkgNS4zNzg3MUMxMy42Njg3IDUuNTczOTcgMTMuMzUyMSA1LjU3Mzk3IDEzLjE1NjggNS4zNzg3MUwxMi41MDM4IDQuNzI1N0w4Ljg2NzI3IDkuNTc0NDNMOS45NzQ4NSAxMC42ODJDMTAuMTcwMSAxMC44NzczIDEwLjE3MDEgMTEuMTkzOSA5Ljk3NDg1IDExLjM4OTFDOS43Nzk1OSAxMS41ODQ0IDkuNDYzIDExLjU4NDQgOS4yNjc3NCAxMS4zODkxTDcuODUzNTMgOS45NzQ5MUw2Ljc5Mjg3IDguOTE0MjVMMy41MjI1IDEyLjE4NDZDMy4zMjcyNCAxMi4zNzk5IDMuMDEwNjUgMTIuMzc5OSAyLjgxNTM5IDEyLjE4NDZDMi42MjAxMyAxMS45ODk0IDIuNjIwMTMgMTEuNjcyOCAyLjgxNTM5IDExLjQ3NzVMNi4wODU3NiA4LjIwNzE0TDUuMDI1MSA3LjE0NjQ4TDMuNjEwODkgNS43MzIyNkMzLjQxNTYzIDUuNTM3IDMuNDE1NjIgNS4yMjA0MiAzLjYxMDg5IDUuMDI1MTZDMy44MDYxNSA0LjgyOTkgNC4xMjI3MyA0LjgyOTkgNC4zMTc5OSA1LjAyNTE2TDUuNDI1NTcgNi4xMzI3NEwxMC4yNzQzIDIuNDk2MTlMOS42MjEyOSAxLjg0MzE4QzkuNDI2MDMgMS42NDc5MiA5LjQyNjAzIDEuMzMxMzMgOS42MjEyOSAxLjEzNjA3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk05LjYyMTI5IDEuMTM2MDdDOS44MTY1NiAwLjk0MDgwOCAxMC4xMzMxIDAuOTQwODA5IDEwLjMyODQgMS4xMzYwN0wxMS4zODkxIDIuMTk2NzNMMTIuODAzMyAzLjYxMDk0TDEzLjg2MzkgNC42NzE2QzE0LjA1OTIgNC44NjY4NyAxNC4wNTkyIDUuMTgzNDUgMTMuODYzOSA1LjM3ODcxQzEzLjY2ODcgNS41NzM5NyAxMy4zNTIxIDUuNTczOTcgMTMuMTU2OCA1LjM3ODcxTDEyLjUwMzggNC43MjU3TDguODY3MjcgOS41NzQ0M0w5Ljk3NDg1IDEwLjY4MkMxMC4xNzAxIDEwLjg3NzMgMTAuMTcwMSAxMS4xOTM5IDkuOTc0ODUgMTEuMzg5MUM5Ljc3OTU5IDExLjU4NDQgOS40NjMgMTEuNTg0NCA5LjI2Nzc0IDExLjM4OTFMNy44NTM1MyA5Ljk3NDkxTDYuNzkyODcgOC45MTQyNUwzLjUyMjUgMTIuMTg0NkMzLjMyNzI0IDEyLjM3OTkgMy4wMTA2NSAxMi4zNzk5IDIuODE1MzkgMTIuMTg0NkMyLjYyMDEzIDExLjk4OTQgMi42MjAxMyAxMS42NzI4IDIuODE1MzkgMTEuNDc3NUw2LjA4NTc2IDguMjA3MTRMNS4wMjUxIDcuMTQ2NDhMMy42MTA4OSA1LjczMjI2QzMuNDE1NjMgNS41MzcgMy40MTU2MiA1LjIyMDQyIDMuNjEwODkgNS4wMjUxNkMzLjgwNjE1IDQuODI5OSA0LjEyMjczIDQuODI5OSA0LjMxNzk5IDUuMDI1MTZMNS40MjU1NyA2LjEzMjc0TDEwLjI3NDMgMi40OTYxOUw5LjYyMTI5IDEuODQzMThDOS40MjYwMyAxLjY0NzkyIDkuNDI2MDMgMS4zMzEzMyA5LjYyMTI5IDEuMTM2MDdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQxVyA9IFtcImNvbG9yXCJdO1xudmFyIERyb3Bkb3duTWVudUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMVcpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjQ5OTk5IDMuMDk5OThDNy4yNzkwNyAzLjA5OTk4IDcuMDk5OTkgMy4yNzkwNiA3LjA5OTk5IDMuNDk5OThDNy4wOTk5OSAzLjcyMDg5IDcuMjc5MDcgMy44OTk5OCA3LjQ5OTk5IDMuODk5OThIMTQuNUMxNC43MjA5IDMuODk5OTggMTQuOSAzLjcyMDg5IDE0LjkgMy40OTk5OEMxNC45IDMuMjc5MDYgMTQuNzIwOSAzLjA5OTk4IDE0LjUgMy4wOTk5OEg3LjQ5OTk5Wk03LjQ5OTk4IDUuMUM3LjI3OTA3IDUuMSA3LjA5OTk4IDUuMjc5MDggNy4wOTk5OCA1LjVDNy4wOTk5OCA1LjcyMDkxIDcuMjc5MDcgNS45IDcuNDk5OTggNS45SDE0LjVDMTQuNzIwOSA1LjkgMTQuOSA1LjcyMDkxIDE0LjkgNS41QzE0LjkgNS4yNzkwOCAxNC43MjA5IDUuMSAxNC41IDUuMUg3LjQ5OTk4Wk03LjEgNy41QzcuMSA3LjI3OTA4IDcuMjc5MDkgNy4xIDcuNSA3LjFIMTQuNUMxNC43MjA5IDcuMSAxNC45IDcuMjc5MDggMTQuOSA3LjVDMTQuOSA3LjcyMDkxIDE0LjcyMDkgNy45IDE0LjUgNy45SDcuNUM3LjI3OTA5IDcuOSA3LjEgNy43MjA5MSA3LjEgNy41Wk03LjQ5OTk4IDkuMUM3LjI3OTA3IDkuMSA3LjA5OTk4IDkuMjc5MDggNy4wOTk5OCA5LjVDNy4wOTk5OCA5LjcyMDkxIDcuMjc5MDcgOS45IDcuNDk5OTggOS45SDE0LjVDMTQuNzIwOSA5LjkgMTQuOSA5LjcyMDkxIDE0LjkgOS41QzE0LjkgOS4yNzkwOCAxNC43MjA5IDkuMSAxNC41IDkuMUg3LjQ5OTk4Wk03LjA5OTk4IDExLjVDNy4wOTk5OCAxMS4yNzkxIDcuMjc5MDcgMTEuMSA3LjQ5OTk4IDExLjFIMTQuNUMxNC43MjA5IDExLjEgMTQuOSAxMS4yNzkxIDE0LjkgMTEuNUMxNC45IDExLjcyMDkgMTQuNzIwOSAxMS45IDE0LjUgMTEuOUg3LjQ5OTk4QzcuMjc5MDcgMTEuOSA3LjA5OTk4IDExLjcyMDkgNy4wOTk5OCAxMS41Wk0yLjUgOS4yNTAwM0w1IDYuMDAwMDNIMEwyLjUgOS4yNTAwM1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFYID0gW1wiY29sb3JcIl07XG52YXIgRW50ZXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFYKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC41IDFDNC4yMjM4NiAxIDQgMS4yMjM4NiA0IDEuNUM0IDEuNzc2MTQgNC4yMjM4NiAyIDQuNSAySDEyVjEzSDQuNUM0LjIyMzg2IDEzIDQgMTMuMjIzOSA0IDEzLjVDNCAxMy43NzYxIDQuMjIzODYgMTQgNC41IDE0SDEyQzEyLjU1MjMgMTQgMTMgMTMuNTUyMyAxMyAxM1YyQzEzIDEuNDQ3NzIgMTIuNTUyMyAxIDEyIDFINC41Wk02LjYwMzU1IDQuODk2NDVDNi40MDgyOSA0LjcwMTE4IDYuMDkxNzEgNC43MDExOCA1Ljg5NjQ1IDQuODk2NDVDNS43MDExOCA1LjA5MTcxIDUuNzAxMTggNS40MDgyOSA1Ljg5NjQ1IDUuNjAzNTVMNy4yOTI4OSA3SDAuNUMwLjIyMzg1OCA3IDAgNy4yMjM4NiAwIDcuNUMwIDcuNzc2MTQgMC4yMjM4NTggOCAwLjUgOEg3LjI5Mjg5TDUuODk2NDUgOS4zOTY0NUM1LjcwMTE4IDkuNTkxNzEgNS43MDExOCA5LjkwODI5IDUuODk2NDUgMTAuMTAzNkM2LjA5MTcxIDEwLjI5ODggNi40MDgyOSAxMC4yOTg4IDYuNjAzNTUgMTAuMTAzNkw4Ljg1MzU1IDcuODUzNTVDOS4wNDg4MiA3LjY1ODI5IDkuMDQ4ODIgNy4zNDE3MSA4Ljg1MzU1IDcuMTQ2NDVMNi42MDM1NSA0Ljg5NjQ1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMVkgPSBbXCJjb2xvclwiXTtcbnZhciBFbnRlckZ1bGxTY3JlZW5JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFZKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMiAyLjVDMiAyLjIyMzg2IDIuMjIzODYgMiAyLjUgMkg1LjVDNS43NzYxNCAyIDYgMi4yMjM4NiA2IDIuNUM2IDIuNzc2MTQgNS43NzYxNCAzIDUuNSAzSDNWNS41QzMgNS43NzYxNCAyLjc3NjE0IDYgMi41IDZDMi4yMjM4NiA2IDIgNS43NzYxNCAyIDUuNVYyLjVaTTkgMi41QzkgMi4yMjM4NiA5LjIyMzg2IDIgOS41IDJIMTIuNUMxMi43NzYxIDIgMTMgMi4yMjM4NiAxMyAyLjVWNS41QzEzIDUuNzc2MTQgMTIuNzc2MSA2IDEyLjUgNkMxMi4yMjM5IDYgMTIgNS43NzYxNCAxMiA1LjVWM0g5LjVDOS4yMjM4NiAzIDkgMi43NzYxNCA5IDIuNVpNMi41IDlDMi43NzYxNCA5IDMgOS4yMjM4NiAzIDkuNVYxMkg1LjVDNS43NzYxNCAxMiA2IDEyLjIyMzkgNiAxMi41QzYgMTIuNzc2MSA1Ljc3NjE0IDEzIDUuNSAxM0gyLjVDMi4yMjM4NiAxMyAyIDEyLjc3NjEgMiAxMi41VjkuNUMyIDkuMjIzODYgMi4yMjM4NiA5IDIuNSA5Wk0xMi41IDlDMTIuNzc2MSA5IDEzIDkuMjIzODYgMTMgOS41VjEyLjVDMTMgMTIuNzc2MSAxMi43NzYxIDEzIDEyLjUgMTNIOS41QzkuMjIzODYgMTMgOSAxMi43NzYxIDkgMTIuNUM5IDEyLjIyMzkgOS4yMjM4NiAxMiA5LjUgMTJIMTJWOS41QzEyIDkuMjIzODYgMTIuMjIzOSA5IDEyLjUgOVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFaID0gW1wiY29sb3JcIl07XG52YXIgRW52ZWxvcGVDbG9zZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDFaKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMSAyQzAuNDQ3NzE1IDIgMCAyLjQ0NzcyIDAgM1YxMkMwIDEyLjU1MjMgMC40NDc3MTUgMTMgMSAxM0gxNEMxNC41NTIzIDEzIDE1IDEyLjU1MjMgMTUgMTJWM0MxNSAyLjQ0NzcyIDE0LjU1MjMgMiAxNCAySDFaTTEgM0wxNCAzVjMuOTI0OTRDMTMuOTE3NCAzLjkyNDg2IDEzLjgzMzggMy45NDc1MSAxMy43NTg5IDMuOTk1MDVMNy41IDcuOTY3MDNMMS4yNDExMiAzLjk5NTA1QzEuMTY2MjEgMy45NDc1MSAxLjA4MjYgMy45MjQ4NiAxIDMuOTI0OTRWM1pNMSA0LjkwNzk3VjEySDE0VjQuOTA3OTdMNy43NDExMiA4Ljg3OTk1QzcuNTkzOTQgOC45NzMzNSA3LjQwNjA2IDguOTczMzUgNy4yNTg4OCA4Ljg3OTk1TDEgNC45MDc5N1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDFfID0gW1wiY29sb3JcIl07XG52YXIgRW52ZWxvcGVPcGVuSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxXyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuOTQ3MjEgMC4xNjQ1OTRDNy42NjU2OSAwLjAyMzgyOTkgNy4zMzQzMSAwLjAyMzgzMDIgNy4wNTI3OSAwLjE2NDU5NEwwLjU1Mjc4NiAzLjQxNDU5QzAuMjE0MDAyIDMuNTgzOTkgMCAzLjkzMDI1IDAgNC4zMDkwMlYxMkMwIDEyLjU1MjMgMC40NDc3MTUgMTMgMSAxM0gxNEMxNC41NTIzIDEzIDE1IDEyLjU1MjMgMTUgMTJWNC4zMDkwMkMxNSAzLjkzMDI1IDE0Ljc4NiAzLjU4Mzk5IDE0LjQ0NzIgMy40MTQ1OUw3Ljk0NzIxIDAuMTY0NTk0Wk0xMy41Njg5IDQuMDkzNDlMNy41IDEuMDU5MDJMMS40MzEwNSA0LjA5MzQ5TDcuNSA3LjI5MTM2TDEzLjU2ODkgNC4wOTM0OVpNMSA0Ljg4MzY2VjEySDE0VjQuODgzNjZMNy43MDk3NyA4LjE5ODEzQzcuNTc4NDggOC4yNjczMSA3LjQyMTUyIDguMjY3MzEgNy4yOTAyMyA4LjE5ODEzTDEgNC44ODM2NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDEkID0gW1wiY29sb3JcIl07XG52YXIgRXJhc2VySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQxJCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTguMzYwNTIgMC43MjkyMUM4LjU1NTc4IDAuNTMzOTQ4IDguODcyMzYgMC41MzM5NDggOS4wNjc2MyAwLjcyOTIxTDE0LjI3MDggNS45MzIzNUMxNC40NjYgNi4xMjc2MSAxNC40NjYgNi40NDQyIDE0LjI3MDggNi42Mzk0Nkw4Ljk1NTEzIDExLjk1NTFMNy4zNDY2IDEzLjU2MzZDNi43NjA4MSAxNC4xNDk0IDUuODExMDYgMTQuMTQ5NCA1LjIyNTI4IDEzLjU2MzZMMS40MzYzNSA5Ljc3NDdDMC44NTA1NjMgOS4xODg5MSAwLjg1MDU2MyA4LjIzOTE3IDEuNDM2MzUgNy42NTMzOEwzLjA0NDg4IDYuMDQ0ODVMOC4zNjA1MiAwLjcyOTIxWk04LjcxNDA3IDEuNzg5ODdMNC4xMDU1NCA2LjM5ODRMOC42MDE1NyAxMC44OTQ0TDEzLjIxMDEgNi4yODU5MUw4LjcxNDA3IDEuNzg5ODdaTTcuODk0NDcgMTEuNjAxNUwzLjM5ODQzIDcuMTA1NTFMMi4xNDM0NiA4LjM2MDQ5QzEuOTQ4MTkgOC41NTU3NSAxLjk0ODE5IDguODcyMzMgMi4xNDM0NiA5LjA2NzU5TDUuOTMyMzggMTIuODU2NUM2LjEyNzY1IDEzLjA1MTggNi40NDQyMyAxMy4wNTE4IDYuNjM5NDkgMTIuODU2NUw3Ljg5NDQ3IDExLjYwMTVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyMCA9IFtcImNvbG9yXCJdO1xudmFyIEV4Y2xhbWF0aW9uVHJpYW5nbGVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDIwKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOC40NDQ5IDAuNjA4NzY1QzguMDE4MyAtMC4xMDcwMTUgNi45ODE3IC0wLjEwNzAxNSA2LjU1NTA5IDAuNjA4NzY2TDAuMTYxMTc4IDExLjMzNjhDLTAuMjc1ODI0IDEyLjA3IDAuMjUyNTAzIDEzIDEuMTA2MDggMTNIMTMuODkzOUMxNC43NDc1IDEzIDE1LjI3NTggMTIuMDcgMTQuODM4OCAxMS4zMzY4TDguNDQ0OSAwLjYwODc2NVpNNy40MTQxIDEuMTIwNzNDNy40NTI4OCAxLjA1NTY2IDcuNTQ3MTIgMS4wNTU2NiA3LjU4NTkgMS4xMjA3M0wxMy45Nzk4IDExLjg0ODhDMTQuMDE5NiAxMS45MTU0IDEzLjk3MTUgMTIgMTMuODkzOSAxMkgxLjEwNjA4QzEuMDI4NDkgMTIgMC45ODA0NTQgMTEuOTE1NCAxLjAyMDE4IDExLjg0ODhMNy40MTQxIDEuMTIwNzNaTTYuODI2OSA0LjQ4NjExQzYuODEyMjEgNC4xMDQyMyA3LjExNzgzIDMuNzg2NjMgNy41IDMuNzg2NjNDNy44ODIxNyAzLjc4NjYzIDguMTg3NzggNC4xMDQyMyA4LjE3MzEgNC40ODYxMkw4LjAxOTIxIDguNDg3MDFDOC4wMDg0OCA4Ljc2NiA3Ljc3OTIgOC45ODY2NCA3LjUgOC45ODY2NEM3LjIyMDggOC45ODY2NCA2Ljk5MTUxIDguNzY2IDYuOTgwNzggOC40ODcwMUw2LjgyNjkgNC40ODYxMVpNOC4yNDk4OSAxMC40NzZDOC4yNDk4OSAxMC44OTAyIDcuOTE0MSAxMS4yMjYgNy40OTk4OSAxMS4yMjZDNy4wODU2NyAxMS4yMjYgNi43NDk4OSAxMC44OTAyIDYuNzQ5ODkgMTAuNDc2QzYuNzQ5ODkgMTAuMDYxOCA3LjA4NTY3IDkuNzI1OTkgNy40OTk4OSA5LjcyNTk5QzcuOTE0MSA5LjcyNTk5IDguMjQ5ODkgMTAuMDYxOCA4LjI0OTg5IDEwLjQ3NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDIxID0gW1wiY29sb3JcIl07XG52YXIgRXhpdEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMjEpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zIDFDMi40NDc3MSAxIDIgMS40NDc3MiAyIDJWMTNDMiAxMy41NTIzIDIuNDQ3NzIgMTQgMyAxNEgxMC41QzEwLjc3NjEgMTQgMTEgMTMuNzc2MSAxMSAxMy41QzExIDEzLjIyMzkgMTAuNzc2MSAxMyAxMC41IDEzSDNWMkwxMC41IDJDMTAuNzc2MSAyIDExIDEuNzc2MTQgMTEgMS41QzExIDEuMjIzODYgMTAuNzc2MSAxIDEwLjUgMUgzWk0xMi42MDM2IDQuODk2NDVDMTIuNDA4MyA0LjcwMTE4IDEyLjA5MTcgNC43MDExOCAxMS44OTY0IDQuODk2NDVDMTEuNzAxMiA1LjA5MTcxIDExLjcwMTIgNS40MDgyOSAxMS44OTY0IDUuNjAzNTVMMTMuMjkyOSA3SDYuNUM2LjIyMzg2IDcgNiA3LjIyMzg2IDYgNy41QzYgNy43NzYxNCA2LjIyMzg2IDggNi41IDhIMTMuMjkyOUwxMS44OTY0IDkuMzk2NDVDMTEuNzAxMiA5LjU5MTcxIDExLjcwMTIgOS45MDgyOSAxMS44OTY0IDEwLjEwMzZDMTIuMDkxNyAxMC4yOTg4IDEyLjQwODMgMTAuMjk4OCAxMi42MDM2IDEwLjEwMzZMMTQuODUzNiA3Ljg1MzU1QzE1LjA0ODggNy42NTgyOSAxNS4wNDg4IDcuMzQxNzEgMTQuODUzNiA3LjE0NjQ1TDEyLjYwMzYgNC44OTY0NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDIyID0gW1wiY29sb3JcIl07XG52YXIgRXhpdEZ1bGxTY3JlZW5JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDIyKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNS41IDJDNS43NzYxNCAyIDYgMi4yMjM4NiA2IDIuNVY1LjVDNiA1Ljc3NjE0IDUuNzc2MTQgNiA1LjUgNkgyLjVDMi4yMjM4NiA2IDIgNS43NzYxNCAyIDUuNUMyIDUuMjIzODYgMi4yMjM4NiA1IDIuNSA1SDVWMi41QzUgMi4yMjM4NiA1LjIyMzg2IDIgNS41IDJaTTkuNSAyQzkuNzc2MTQgMiAxMCAyLjIyMzg2IDEwIDIuNVY1SDEyLjVDMTIuNzc2MSA1IDEzIDUuMjIzODYgMTMgNS41QzEzIDUuNzc2MTQgMTIuNzc2MSA2IDEyLjUgNkg5LjVDOS4yMjM4NiA2IDkgNS43NzYxNCA5IDUuNVYyLjVDOSAyLjIyMzg2IDkuMjIzODYgMiA5LjUgMlpNMiA5LjVDMiA5LjIyMzg2IDIuMjIzODYgOSAyLjUgOUg1LjVDNS43NzYxNCA5IDYgOS4yMjM4NiA2IDkuNVYxMi41QzYgMTIuNzc2MSA1Ljc3NjE0IDEzIDUuNSAxM0M1LjIyMzg2IDEzIDUgMTIuNzc2MSA1IDEyLjVWMTBIMi41QzIuMjIzODYgMTAgMiA5Ljc3NjE0IDIgOS41Wk05IDkuNUM5IDkuMjIzODYgOS4yMjM4NiA5IDkuNSA5SDEyLjVDMTIuNzc2MSA5IDEzIDkuMjIzODYgMTMgOS41QzEzIDkuNzc2MTQgMTIuNzc2MSAxMCAxMi41IDEwSDEwVjEyLjVDMTAgMTIuNzc2MSA5Ljc3NjE0IDEzIDkuNSAxM0M5LjIyMzg2IDEzIDkgMTIuNzc2MSA5IDEyLjVWOS41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMjMgPSBbXCJjb2xvclwiXTtcbnZhciBFeHRlcm5hbExpbmtJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDIzKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMyAyQzIuNDQ3NzIgMiAyIDIuNDQ3NzIgMiAzVjEyQzIgMTIuNTUyMyAyLjQ0NzcyIDEzIDMgMTNIMTJDMTIuNTUyMyAxMyAxMyAxMi41NTIzIDEzIDEyVjguNUMxMyA4LjIyMzg2IDEyLjc3NjEgOCAxMi41IDhDMTIuMjIzOSA4IDEyIDguMjIzODYgMTIgOC41VjEySDNWM0w2LjUgM0M2Ljc3NjE0IDMgNyAyLjc3NjE0IDcgMi41QzcgMi4yMjM4NiA2Ljc3NjE0IDIgNi41IDJIM1pNMTIuODUzNiAyLjE0NjQ1QzEyLjkwMTUgMi4xOTQzOSAxMi45Mzc3IDIuMjQ5NjQgMTIuOTYyMSAyLjMwODYxQzEyLjk4NjEgMi4zNjY2OSAxMi45OTk2IDIuNDMwMyAxMyAyLjQ5N0wxMyAyLjVWMi41MDA0OVY1LjVDMTMgNS43NzYxNCAxMi43NzYxIDYgMTIuNSA2QzEyLjIyMzkgNiAxMiA1Ljc3NjE0IDEyIDUuNVYzLjcwNzExTDYuODUzNTUgOC44NTM1NUM2LjY1ODI5IDkuMDQ4ODIgNi4zNDE3MSA5LjA0ODgyIDYuMTQ2NDUgOC44NTM1NUM1Ljk1MTE4IDguNjU4MjkgNS45NTExOCA4LjM0MTcxIDYuMTQ2NDUgOC4xNDY0NUwxMS4yOTI5IDNIOS41QzkuMjIzODYgMyA5IDIuNzc2MTQgOSAyLjVDOSAyLjIyMzg2IDkuMjIzODYgMiA5LjUgMkgxMi40OTk5SDEyLjVDMTIuNTY3OCAyIDEyLjYzMjQgMi4wMTM0OSAxMi42OTE0IDIuMDM3OTRDMTIuNzUwNCAyLjA2MjM0IDEyLjgwNTYgMi4wOTg1MSAxMi44NTM2IDIuMTQ2NDVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyNCA9IFtcImNvbG9yXCJdO1xudmFyIEV5ZUNsb3NlZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMjQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xNC43NjQ5IDYuMDc1OTZDMTQuOTk5MSA2LjIyMjMxIDE1LjA3MDMgNi41MzA3OSAxNC45MjM5IDYuNzY0OTVDMTQuNDg0OSA3LjQ2NzQzIDEzLjk2MzIgOC4xMDY0NSAxMy4zNzAyIDguNjYzMDVMMTQuNTcxMiA5Ljg2NDA2QzE0Ljc2NjQgMTAuMDU5MyAxNC43NjY0IDEwLjM3NTkgMTQuNTcxMiAxMC41NzEyQzE0LjM3NTkgMTAuNzY2NCAxNC4wNTkzIDEwLjc2NjQgMTMuODY0MSAxMC41NzEyTDEyLjYwMTEgOS4zMDgxN0MxMS44MDUgOS45MDI4MyAxMC45MDg5IDEwLjM2MjEgOS45MzM3NSAxMC42NTFMMTAuMzgzIDEyLjMyNzdDMTAuNDU0NCAxMi41OTQ0IDEwLjI5NjEgMTIuODY4NSAxMC4wMjk0IDEyLjk0QzkuNzYyNjcgMTMuMDExNSA5LjQ4ODUgMTIuODUzMiA5LjQxNzA0IDEyLjU4NjVMOC45NTkxNyAxMC44Nzc1QzguNDg3NDMgMTAuOTU4IDguMDAwMzYgMTAuOTk5OSA3LjUwMDAxIDEwLjk5OTlDNi45OTk2NSAxMC45OTk5IDYuNTEyNTcgMTAuOTU4IDYuMDQwODIgMTAuODc3NUw1LjU4Mjk5IDEyLjU4NjRDNS41MTE1MyAxMi44NTMyIDUuMjM3MzcgMTMuMDExNSA0Ljk3MDY0IDEyLjk0QzQuNzAzOSAxMi44Njg2IDQuNTQ1NiAxMi41OTQ0IDQuNjE3MDYgMTIuMzI3N0w1LjA2NjI1IDEwLjY1MUM0LjA5MTExIDEwLjM2MjEgMy4xOTUwMyA5LjkwMjgyIDIuMzk4OSA5LjMwODE1TDEuMTM1OSAxMC41NzEyQzAuOTQwNjM4IDEwLjc2NjQgMC42MjQwNTggMTAuNzY2NCAwLjQyODc5OCAxMC41NzEyQzAuMjMzNTM3IDEwLjM3NTkgMC4yMzM1MzcgMTAuMDU5MyAwLjQyODc5OCA5Ljg2NDA1TDEuNjI5ODIgOC42NjMwM0MxLjAzNjgyIDguMTA2NDMgMC41MTUxMTMgNy40Njc0MiAwLjA3NjA2NzcgNi43NjQ5NUMtMC4wNzAyODY3IDYuNTMwNzkgMC4wMDA4OTg1NDQgNi4yMjIzMSAwLjIzNTA2NSA2LjA3NTk2QzAuNDY5MjMxIDUuOTI5NiAwLjc3NzcwMyA2LjAwMDc5IDAuOTI0MDU4IDYuMjM0OTZDMS40MDM1NCA3LjAwMjEzIDEuOTg5IDcuNjgwNTcgMi42NjIzMyA4LjI0MjdDMi42NzMxNSA4LjI1MDk2IDIuNjgzNyA4LjI1OTcyIDIuNjkzOTcgOC4yNjg5OEM0LjAwODk3IDkuMzU1MjcgNS42NTUzNyA5Ljk5OTkxIDcuNTAwMDEgOS45OTk5MUMxMC4zMDc4IDkuOTk5OTEgMTIuNjU2NCA4LjUwNjMgMTQuMDc2IDYuMjM0OTVDMTQuMjIyMyA2LjAwMDc5IDE0LjUzMDggNS45Mjk2IDE0Ljc2NDkgNi4wNzU5NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDI1ID0gW1wiY29sb3JcIl07XG52YXIgRXllTm9uZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMjUpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMy4zNTM2IDIuMzUzNTVDMTMuNTQ4OCAyLjE1ODI5IDEzLjU0ODggMS44NDE3MSAxMy4zNTM2IDEuNjQ2NDVDMTMuMTU4MyAxLjQ1MTE4IDEyLjg0MTcgMS40NTExOCAxMi42NDY0IDEuNjQ2NDVMMTAuNjgyOCAzLjYxMDEyQzkuNzA2NTIgMy4yMTY3MSA4LjYzNzU5IDMgNy41IDNDNC4zMDc4NiAzIDEuNjU2MzkgNC43MDYzOCAwLjA3NjAwMDIgNy4yMzUwMUMtMC4wMjUzMzM4IDcuMzk3MTUgLTAuMDI1MzMzNCA3LjYwMjg4IDAuMDc2MDAxNCA3Ljc2NTAxQzAuOTAyOTQ1IDkuMDg4MTIgMi4wMjMxNCAxMC4xODYxIDMuMzYwNjEgMTAuOTMyM0wxLjY0NjQ1IDEyLjY0NjRDMS40NTExOCAxMi44NDE3IDEuNDUxMTggMTMuMTU4MyAxLjY0NjQ1IDEzLjM1MzZDMS44NDE3MSAxMy41NDg4IDIuMTU4MjkgMTMuNTQ4OCAyLjM1MzU1IDEzLjM1MzZMNC4zMTcyMyAxMS4zODk5QzUuMjkzNDggMTEuNzgzMyA2LjM2MjQxIDEyIDcuNSAxMkMxMC42OTIxIDEyIDEzLjM0MzYgMTAuMjkzNiAxNC45MjQgNy43NjUwMUMxNS4wMjUzIDcuNjAyODggMTUuMDI1MyA3LjM5NzE1IDE0LjkyNCA3LjIzNTAxQzE0LjA5NzEgNS45MTE5IDEyLjk3NjkgNC44MTM5MSAxMS42Mzk0IDQuMDY3NzFMMTMuMzUzNiAyLjM1MzU1Wk05LjkwNDI4IDQuMzg4NjFDOS4xNTMzMiA0LjEzNjEgOC4zNDc1OSA0IDcuNSA0QzQuODAyODUgNCAyLjUyOTUyIDUuMzc4MTYgMS4wOTYyMiA3LjUwMDAxQzEuODcyODQgOC42NDk3IDIuODk2MDkgOS41ODEwNiA0LjA5OTc0IDEwLjE5MzFMOS45MDQyOCA0LjM4ODYxWk01LjA5NTcyIDEwLjYxMTRMMTAuOTAwMyA0LjgwNjg1QzEyLjEwMzkgNS40MTg5NCAxMy4xMjcyIDYuMzUwMzEgMTMuOTAzOCA3LjUwMDAxQzEyLjQ3MDUgOS42MjE4MyAxMC4xOTcxIDExIDcuNSAxMUM2LjY1MjQxIDExIDUuODQ2NjggMTAuODYzOSA1LjA5NTcyIDEwLjYxMTRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyNiA9IFtcImNvbG9yXCJdO1xudmFyIEV5ZU9wZW5JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDI2KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy41IDExQzQuODAyODUgMTEgMi41Mjk1MiA5LjYyMTg0IDEuMDk2MjIgNy41MDAwMUMyLjUyOTUyIDUuMzc4MTYgNC44MDI4NSA0IDcuNSA0QzEwLjE5NzEgNCAxMi40NzA1IDUuMzc4MTYgMTMuOTAzOCA3LjUwMDAxQzEyLjQ3MDUgOS42MjE4MyAxMC4xOTcxIDExIDcuNSAxMVpNNy41IDNDNC4zMDc4NiAzIDEuNjU2MzkgNC43MDYzOCAwLjA3NjAwMDIgNy4yMzUwMUMtMC4wMjUzMzM4IDcuMzk3MTUgLTAuMDI1MzMzNCA3LjYwMjg4IDAuMDc2MDAxNCA3Ljc2NTAxQzEuNjU2MzkgMTAuMjkzNiA0LjMwNzg2IDEyIDcuNSAxMkMxMC42OTIxIDEyIDEzLjM0MzYgMTAuMjkzNiAxNC45MjQgNy43NjUwMUMxNS4wMjUzIDcuNjAyODggMTUuMDI1MyA3LjM5NzE1IDE0LjkyNCA3LjIzNTAxQzEzLjM0MzYgNC43MDYzOCAxMC42OTIxIDMgNy41IDNaTTcuNSA5LjVDOC42MDQ1NyA5LjUgOS41IDguNjA0NTcgOS41IDcuNUM5LjUgNi4zOTU0MyA4LjYwNDU3IDUuNSA3LjUgNS41QzYuMzk1NDMgNS41IDUuNSA2LjM5NTQzIDUuNSA3LjVDNS41IDguNjA0NTcgNi4zOTU0MyA5LjUgNy41IDkuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDI3ID0gW1wiY29sb3JcIl07XG52YXIgRmFjZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMjcpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjQ5OTkxIDAuODc2ODkyQzMuODQyMjIgMC44NzY4OTIgMC44NzcwNzUgMy44NDIwNCAwLjg3NzA3NSA3LjQ5OTcyQzAuODc3MDc1IDExLjE1NzQgMy44NDIyMiAxNC4xMjI2IDcuNDk5OTEgMTQuMTIyNkMxMS4xNTc2IDE0LjEyMjYgMTQuMTIyNyAxMS4xNTc0IDE0LjEyMjcgNy40OTk3MkMxNC4xMjI3IDMuODQyMDQgMTEuMTU3NiAwLjg3Njg5MiA3LjQ5OTkxIDAuODc2ODkyWk0xLjgyNzA4IDcuNDk5NzJDMS44MjcwOCA0LjM2NjcxIDQuMzY2ODkgMS44MjY4OSA3LjQ5OTkxIDEuODI2ODlDMTAuNjMyOSAxLjgyNjg5IDEzLjE3MjcgNC4zNjY3MSAxMy4xNzI3IDcuNDk5NzJDMTMuMTcyNyAxMC42MzI3IDEwLjYzMjkgMTMuMTcyNiA3LjQ5OTkxIDEzLjE3MjZDNC4zNjY4OSAxMy4xNzI2IDEuODI3MDggMTAuNjMyNyAxLjgyNzA4IDcuNDk5NzJaTTUuMDM3NDcgOS4yMTM5NUM0Ljg3OTQ5IDguOTg3NDYgNC41Njc4MiA4LjkzMTkzIDQuMzQxMzMgOS4wODk5MUM0LjExNDg0IDkuMjQ3ODkgNC4wNTkzMSA5LjU1OTU2IDQuMjE3MjkgOS43ODYwNUM0LjkzOTI2IDEwLjgyMTEgNi4xNDAzMyAxMS41IDcuNTAwMDQgMTEuNUM4Ljg1OTc0IDExLjUgMTAuMDYwOCAxMC44MjExIDEwLjc4MjggOS43ODYwNUMxMC45NDA4IDkuNTU5NTYgMTAuODg1MiA5LjI0Nzg5IDEwLjY1ODcgOS4wODk5MUMxMC40MzIzIDguOTMxOTMgMTAuMTIwNiA4Ljk4NzQ2IDkuOTYyNiA5LjIxMzk1QzkuNDE5NjMgOS45OTIzOCA4LjUxOTA3IDEwLjUgNy41MDAwNCAxMC41QzYuNDgxIDEwLjUgNS41ODA0NCA5Ljk5MjM4IDUuMDM3NDcgOS4yMTM5NVpNNS4zNzUwMyA2Ljg0OTk4QzUuODU4MjggNi44NDk5OCA2LjI1MDAzIDYuNDU4MTUgNi4yNTAwMyA1Ljk3NDk4QzYuMjUwMDMgNS40OTE4IDUuODU4MjggNS4wOTk5OCA1LjM3NTAzIDUuMDk5OThDNC44OTE3OSA1LjA5OTk4IDQuNTAwMDMgNS40OTE4IDQuNTAwMDMgNS45NzQ5OEM0LjUwMDAzIDYuNDU4MTUgNC44OTE3OSA2Ljg0OTk4IDUuMzc1MDMgNi44NDk5OFpNMTAuNSA1Ljk3NDk4QzEwLjUgNi40NTgxNSAxMC4xMDgzIDYuODQ5OTggOS42MjUwMyA2Ljg0OTk4QzkuMTQxNzkgNi44NDk5OCA4Ljc1MDAzIDYuNDU4MTUgOC43NTAwMyA1Ljk3NDk4QzguNzUwMDMgNS40OTE4IDkuMTQxNzkgNS4wOTk5OCA5LjYyNTAzIDUuMDk5OThDMTAuMTA4MyA1LjA5OTk4IDEwLjUgNS40OTE4IDEwLjUgNS45NzQ5OFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDI4ID0gW1wiY29sb3JcIl07XG52YXIgRmlnbWFMb2dvSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyOCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuMDAwMDUgMi4wNDk5OUg1LjUyNTA1QzQuNzEwNDMgMi4wNDk5OSA0LjA1MDA1IDIuNzEwMzcgNC4wNTAwNSAzLjUyNDk5QzQuMDUwMDUgNC4zMzk2MSA0LjcxMDQzIDQuOTk5OTkgNS41MjUwNSA0Ljk5OTk5SDcuMDAwMDVWMi4wNDk5OVpNNy4wMDAwNSAxLjA0OTk5SDguMDAwMDVIOS40NzUwNUMxMC44NDIgMS4wNDk5OSAxMS45NSAyLjE1ODA4IDExLjk1IDMuNTI0OTlDMTEuOTUgNC4zMzE2MyAxMS41NjQyIDUuMDQ4MTUgMTAuOTY2OSA1LjQ5OTk5QzExLjU2NDIgNS45NTE4NCAxMS45NSA2LjY2ODM2IDExLjk1IDcuNDc1QzExLjk1IDguODQxOSAxMC44NDIgOS45NSA5LjQ3NTA1IDkuOTVDOC45MjIzNiA5Ljk1IDguNDExOTggOS43Njg4NCA4LjAwMDA1IDkuNDYyNjZWOS45NUw4LjAwMDA1IDExLjQyNUM4LjAwMDA1IDEyLjc5MTkgNi44OTE5NSAxMy45IDUuNTI1MDUgMTMuOUM0LjE1ODE0IDEzLjkgMy4wNTAwNSAxMi43OTE5IDMuMDUwMDUgMTEuNDI1QzMuMDUwMDUgMTAuNjE4MyAzLjQzNTkzIDkuOTAxODQgNC4wMzMxNyA5LjQ0OTk5QzMuNDM1OTMgOC45OTgxNCAzLjA1MDA1IDguMjgxNjMgMy4wNTAwNSA3LjQ3NUMzLjA1MDA1IDYuNjY4MzYgMy40MzU5NCA1Ljk1MTg0IDQuMDMzMTkgNS41QzMuNDM1OTQgNS4wNDgxNSAzLjA1MDA1IDQuMzMxNjMgMy4wNTAwNSAzLjUyNDk5QzMuMDUwMDUgMi4xNTgwOCA0LjE1ODE0IDEuMDQ5OTkgNS41MjUwNSAxLjA0OTk5SDcuMDAwMDVaTTguMDAwMDUgMi4wNDk5OVY0Ljk5OTk5SDkuNDc1MDVDMTAuMjg5NyA0Ljk5OTk5IDEwLjk1IDQuMzM5NjEgMTAuOTUgMy41MjQ5OUMxMC45NSAyLjcxMDM3IDEwLjI4OTcgMi4wNDk5OSA5LjQ3NTA1IDIuMDQ5OTlIOC4wMDAwNVpNNS41MjUwNSA4Ljk0OTk4SDcuMDAwMDVMNy4wMDAwNSA3LjQ3ODhMNy4wMDAwNSA3LjQ3NUw3LjAwMDA1IDcuNDcxMlY2SDUuNTI1MDVDNC43MTA0MyA2IDQuMDUwMDUgNi42NjAzOCA0LjA1MDA1IDcuNDc1QzQuMDUwMDUgOC4yODc2NyA0LjcwNzI3IDguOTQ2ODQgNS41MTkyIDguOTQ5OTlMNS41MjUwNSA4Ljk0OTk4Wk00LjA1MDA1IDExLjQyNUM0LjA1MDA1IDEwLjYxMjMgNC43MDcyNyA5Ljk1MzE1IDUuNTE5MiA5Ljk0OTk5TDUuNTI1MDUgOS45NUg3LjAwMDA1TDcuMDAwMDUgMTEuNDI1QzcuMDAwMDUgMTIuMjM5NiA2LjMzOTY3IDEyLjkgNS41MjUwNSAxMi45QzQuNzEwNDMgMTIuOSA0LjA1MDA1IDEyLjIzOTYgNC4wNTAwNSAxMS40MjVaTTguMDAwMDUgNy40NzIwNkM4LjAwMTY0IDYuNjU4NzkgOC42NjE0MSA2IDkuNDc1MDUgNkMxMC4yODk3IDYgMTAuOTUgNi42NjAzOCAxMC45NSA3LjQ3NUMxMC45NSA4LjI4OTYyIDEwLjI4OTcgOC45NSA5LjQ3NTA1IDguOTVDOC42NjE0MSA4Ljk1IDguMDAxNjQgOC4yOTEyMSA4LjAwMDA1IDcuNDc3OTRWNy40NzIwNlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDI5ID0gW1wiY29sb3JcIl07XG52YXIgRmlsZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMjkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zLjUgMkMzLjIyMzg2IDIgMyAyLjIyMzg2IDMgMi41VjEyLjVDMyAxMi43NzYxIDMuMjIzODYgMTMgMy41IDEzSDExLjVDMTEuNzc2MSAxMyAxMiAxMi43NzYxIDEyIDEyLjVWNkg4LjVDOC4yMjM4NiA2IDggNS43NzYxNCA4IDUuNVYySDMuNVpNOSAyLjcwNzExTDExLjI5MjkgNUg5VjIuNzA3MTFaTTIgMi41QzIgMS42NzE1NyAyLjY3MTU3IDEgMy41IDFIOC41QzguNjMyNjEgMSA4Ljc1OTc5IDEuMDUyNjggOC44NTM1NSAxLjE0NjQ1TDEyLjg1MzYgNS4xNDY0NUMxMi45NDczIDUuMjQwMjEgMTMgNS4zNjczOSAxMyA1LjVWMTIuNUMxMyAxMy4zMjg0IDEyLjMyODQgMTQgMTEuNSAxNEgzLjVDMi42NzE1NyAxNCAyIDEzLjMyODQgMiAxMi41VjIuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJhID0gW1wiY29sb3JcIl07XG52YXIgRmlsZU1pbnVzSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyYSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMgMi41QzMgMi4yMjM4NiAzLjIyMzg2IDIgMy41IDJIOS4yOTI4OUwxMiA0LjcwNzExVjEyLjVDMTIgMTIuNzc2MSAxMS43NzYxIDEzIDExLjUgMTNIMy41QzMuMjIzODYgMTMgMyAxMi43NzYxIDMgMTIuNVYyLjVaTTMuNSAxQzIuNjcxNTcgMSAyIDEuNjcxNTcgMiAyLjVWMTIuNUMyIDEzLjMyODQgMi42NzE1NyAxNCAzLjUgMTRIMTEuNUMxMi4zMjg0IDE0IDEzIDEzLjMyODQgMTMgMTIuNVY0LjYwMzU1QzEzIDQuNDA0NjQgMTIuOTIxIDQuMjEzODggMTIuNzgwMyA0LjA3MzIyTDkuODUzNTUgMS4xNDY0NUM5Ljc1OTc5IDEuMDUyNjggOS42MzI2MSAxIDkuNSAxSDMuNVpNNS4yNSA3QzQuOTczODYgNyA0Ljc1IDcuMjIzODYgNC43NSA3LjVDNC43NSA3Ljc3NjE0IDQuOTczODYgOCA1LjI1IDhIOS43NUMxMC4wMjYxIDggMTAuMjUgNy43NzYxNCAxMC4yNSA3LjVDMTAuMjUgNy4yMjM4NiAxMC4wMjYxIDcgOS43NSA3SDUuMjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyYiA9IFtcImNvbG9yXCJdO1xudmFyIEZpbGVQbHVzSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyYik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMuNSAyQzMuMjIzODYgMiAzIDIuMjIzODYgMyAyLjVWMTIuNUMzIDEyLjc3NjEgMy4yMjM4NiAxMyAzLjUgMTNIMTEuNUMxMS43NzYxIDEzIDEyIDEyLjc3NjEgMTIgMTIuNVY0LjcwNzExTDkuMjkyODkgMkgzLjVaTTIgMi41QzIgMS42NzE1NyAyLjY3MTU3IDEgMy41IDFIOS41QzkuNjMyNjEgMSA5Ljc1OTc5IDEuMDUyNjggOS44NTM1NSAxLjE0NjQ1TDEyLjc4MDMgNC4wNzMyMkMxMi45MjEgNC4yMTM4OCAxMyA0LjQwNDY0IDEzIDQuNjAzNTVWMTIuNUMxMyAxMy4zMjg0IDEyLjMyODQgMTQgMTEuNSAxNEgzLjVDMi42NzE1NyAxNCAyIDEzLjMyODQgMiAxMi41VjIuNVpNNC43NSA3LjVDNC43NSA3LjIyMzg2IDQuOTczODYgNyA1LjI1IDdIN1Y1LjI1QzcgNC45NzM4NiA3LjIyMzg2IDQuNzUgNy41IDQuNzVDNy43NzYxNCA0Ljc1IDggNC45NzM4NiA4IDUuMjVWN0g5Ljc1QzEwLjAyNjEgNyAxMC4yNSA3LjIyMzg2IDEwLjI1IDcuNUMxMC4yNSA3Ljc3NjE0IDEwLjAyNjEgOCA5Ljc1IDhIOFY5Ljc1QzggMTAuMDI2MSA3Ljc3NjE0IDEwLjI1IDcuNSAxMC4yNUM3LjIyMzg2IDEwLjI1IDcgMTAuMDI2MSA3IDkuNzVWOEg1LjI1QzQuOTczODYgOCA0Ljc1IDcuNzc2MTQgNC43NSA3LjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyYyA9IFtcImNvbG9yXCJdO1xudmFyIEZpbGVUZXh0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyYyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMgMi41QzMgMi4yMjM4NiAzLjIyMzg2IDIgMy41IDJIOS4wODU3OUM5LjIxODM5IDIgOS4zNDU1NyAyLjA1MjY4IDkuNDM5MzQgMi4xNDY0NUwxMS44NTM2IDQuNTYwNjZDMTEuOTQ3MyA0LjY1NDQzIDEyIDQuNzgxNjEgMTIgNC45MTQyMVYxMi41QzEyIDEyLjc3NjEgMTEuNzc2MSAxMyAxMS41IDEzSDMuNUMzLjIyMzg2IDEzIDMgMTIuNzc2MSAzIDEyLjVWMi41Wk0zLjUgMUMyLjY3MTU3IDEgMiAxLjY3MTU3IDIgMi41VjEyLjVDMiAxMy4zMjg0IDIuNjcxNTcgMTQgMy41IDE0SDExLjVDMTIuMzI4NCAxNCAxMyAxMy4zMjg0IDEzIDEyLjVWNC45MTQyMUMxMyA0LjUxNjM5IDEyLjg0MiA0LjEzNDg2IDEyLjU2MDcgMy44NTM1NUwxMC4xNDY0IDEuNDM5MzRDOS44NjUxNCAxLjE1ODA0IDkuNDgzNjEgMSA5LjA4NTc5IDFIMy41Wk00LjUgNEM0LjIyMzg2IDQgNCA0LjIyMzg2IDQgNC41QzQgNC43NzYxNCA0LjIyMzg2IDUgNC41IDVINy41QzcuNzc2MTQgNSA4IDQuNzc2MTQgOCA0LjVDOCA0LjIyMzg2IDcuNzc2MTQgNCA3LjUgNEg0LjVaTTQuNSA3QzQuMjIzODYgNyA0IDcuMjIzODYgNCA3LjVDNCA3Ljc3NjE0IDQuMjIzODYgOCA0LjUgOEgxMC41QzEwLjc3NjEgOCAxMSA3Ljc3NjE0IDExIDcuNUMxMSA3LjIyMzg2IDEwLjc3NjEgNyAxMC41IDdINC41Wk00LjUgMTBDNC4yMjM4NiAxMCA0IDEwLjIyMzkgNCAxMC41QzQgMTAuNzc2MSA0LjIyMzg2IDExIDQuNSAxMUgxMC41QzEwLjc3NjEgMTEgMTEgMTAuNzc2MSAxMSAxMC41QzExIDEwLjIyMzkgMTAuNzc2MSAxMCAxMC41IDEwSDQuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJkID0gW1wiY29sb3JcIl07XG52YXIgRm9udEJvbGRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJkKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNS4xMDUwNSAxMkM0LjcwODA1IDEyIDQuNDIzNiAxMS45MTIgNC4yNTE3MSAxMS43MzZDNC4wODM5IDExLjU1NTkgNCAxMS4yNzE1IDQgMTAuODgyN1Y0LjExNzMzQzQgMy43MjAzMyA0LjA4NTk1IDMuNDM1ODggNC4yNTc4NCAzLjI2Mzk4QzQuNDMzODMgMy4wODc5OSA0LjcxNjIzIDMgNS4xMDUwNSAzQzYuNDI3NDEgMyA4LjI1NTkxIDMgOS4wMjg1MiAzQzEwLjEzNzMgMyAxMS4wNTM5IDMuOTgxNTMgMTEuMDUzOSA1LjE4NDZDMTEuMDUzOSA2LjA4NTAxIDEwLjYwMzcgNi44MTg1NSA5LjcwMzI3IDcuMjM2MDJDMTAuODY1NyA3LjQ0ODUxIDExLjUxNzYgOC42Mjc4NyAxMS41MTc2IDkuNDgxMjhDMTEuNTE3NiAxMC41MTI1IDEwLjk5MDIgMTIgOS4yNzczNCAxMkM4Ljc3NzQyIDEyIDYuNDI2MjYgMTIgNS4xMDUwNSAxMlpNOC4zNzg5MSA4LjAwMzQxSDUuOFYxMC42MzFIOC4zNzg5MUM4LjkgMTAuNjMxIDkuNjI5NiAxMC4xMjExIDkuNjI5NiA5LjI5ODc3QzkuNjI5NiA4LjQ3NjQzIDguOSA4LjAwMzQxIDguMzc4OTEgOC4wMDM0MVpNNS44IDQuMzY5MDNWNi42OTU3N0g4LjE3OTY5QzguNTM5MDYgNi42OTU3NyA5LjI3NzM0IDYuMzU5MzkgOS4yNzczNCA1LjUwMDAyQzkuMjc3MzQgNC42NDA2NCA4LjQ4MDQ3IDQuMzY5MDMgOC4xNzk2OSA0LjM2OTAzSDUuOFpcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyZSA9IFtcImNvbG9yXCJdO1xudmFyIEZvbnRGYW1pbHlJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJlKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMi41IDQuNUMyLjUgMy4wOTg4NiAzLjU5ODg2IDIgNSAySDEyLjQ5OUMxMi43NzUyIDIgMTMgMi4yMjM4NiAxMyAyLjVDMTMgMi43NzYxNCAxMi43NzYxIDMgMTIuNSAzSDguNjkyNDRMOC40MDUwOSAzLjg1NDU4QzguMTg4NjkgNC40OTc1MiA3Ljg5NDAxIDUuMzcxOTcgNy41ODA5MSA2LjI5Nzk0QzcuNTAyNTkgNi41Mjk1NiA3LjQyMzA4IDYuNzY0NTMgNy4zNDMzMiA3SDguNUM4Ljc3NjE0IDcgOSA3LjIyMzg2IDkgNy41QzkgNy43NzYxNCA4Ljc3NjE0IDggOC41IDhINy4wMDQwN0M2LjU2NzI0IDkuMjg1NDMgNi4xNjQzNSAxMC40NjEzIDUuOTU3OTkgMTEuMDM4NkM1LjYzNjI3IDExLjkzODYgNS4yMDcxMiAxMi40ODU3IDQuNjY3NDEgMTIuNzc3OEM0LjE2MzM1IDEzLjA1MDcgMy42NDE1NCAxMy4wNTAzIDMuMjgzNzggMTMuMDVMMy4yNSAxMy4wNUMyLjk0NjI0IDEzLjA1IDIuNyAxMi44MDM3IDIuNyAxMi41QzIuNyAxMi4xOTYyIDIuOTQ2MjQgMTEuOTUgMy4yNSAxMS45NUMzLjY0MTgyIDExLjk1IDMuOTAzNSAxMS45NDA1IDQuMTQzNzQgMTEuODEwNUM0LjM2NDQzIDExLjY5MSA0LjY1NTMyIDExLjQxNDggNC45MjIxNyAxMC42NjgzQzUuMTA2OTUgMTAuMTUxNCA1LjQ1Mzc1IDkuMTQxMzQgNS44NDIyIDhINC41QzQuMjIzODYgOCA0IDcuNzc2MTQgNCA3LjVDNCA3LjIyMzg2IDQuMjIzODYgNyA0LjUgN0g2LjE4MTg3QzYuMzAxMjcgNi42NDc4NSA2LjQyMTMyIDYuMjkzMjMgNi41Mzg4NyA1Ljk0NTU5QzYuODUxNzUgNS4wMjAyNSA3LjE0NjI3IDQuMTQ2MzEgNy4zNjI1NiAzLjUwMzY4TDcuNTMxOTIgM0g1QzQuMTUxMTQgMyAzLjUgMy42NTExNCAzLjUgNC41QzMuNSA0Ljc3NjE0IDMuMjc2MTQgNSAzIDVDMi43MjM4NiA1IDIuNSA0Ljc3NjE0IDIuNSA0LjVaXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMmYgPSBbXCJjb2xvclwiXTtcbnZhciBGb250SXRhbGljSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyZik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUuNjc0OTQgMy41MDAxN0M1LjY3NDk0IDMuMjUxNjQgNS44NzY0MSAzLjA1MDE3IDYuMTI0OTQgMy4wNTAxN0gxMC42MjQ5QzEwLjg3MzUgMy4wNTAxNyAxMS4wNzQ5IDMuMjUxNjQgMTEuMDc0OSAzLjUwMDE3QzExLjA3NDkgMy43NDg3IDEwLjg3MzUgMy45NTAxNyAxMC42MjQ5IDMuOTUwMTdIOS4wMDU4N0w3LjIzMDkgMTEuMDVIOC44NzQ5M0M5LjEyMzQ1IDExLjA1IDkuMzI0OTMgMTEuMjUxNSA5LjMyNDkzIDExLjVDOS4zMjQ5MyAxMS43NDg2IDkuMTIzNDUgMTEuOTUgOC44NzQ5MyAxMS45NUg0LjM3NDkzQzQuMTI2NCAxMS45NSAzLjkyNDkzIDExLjc0ODYgMy45MjQ5MyAxMS41QzMuOTI0OTMgMTEuMjUxNSA0LjEyNjQgMTEuMDUgNC4zNzQ5MyAxMS4wNUg1Ljk5Mzk3TDcuNzY4OTQgMy45NTAxN0g2LjEyNDk0QzUuODc2NDEgMy45NTAxNyA1LjY3NDk0IDMuNzQ4NyA1LjY3NDk0IDMuNTAwMTdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyZyA9IFtcImNvbG9yXCJdO1xudmFyIEZvbnRSb21hbkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMmcpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk00Ljc5OTkzIDMuNTAwMTdDNC43OTk5MyAzLjI1MTY0IDUuMDAxNCAzLjA1MDE3IDUuMjQ5OTMgMy4wNTAxN0g5Ljc0OTkzQzkuOTk4NDUgMy4wNTAxNyAxMC4xOTk5IDMuMjUxNjQgMTAuMTk5OSAzLjUwMDE3QzEwLjE5OTkgMy43NDg3IDkuOTk4NDUgMy45NTAxNyA5Ljc0OTkzIDMuOTUwMTdIOC4wOTk5M1YxMS4wNUg5Ljc0OTk0QzkuOTk4NDcgMTEuMDUgMTAuMTk5OSAxMS4yNTE1IDEwLjE5OTkgMTEuNUMxMC4xOTk5IDExLjc0ODYgOS45OTg0NyAxMS45NSA5Ljc0OTk0IDExLjk1SDUuMjQ5OTRDNS4wMDE0MSAxMS45NSA0Ljc5OTk0IDExLjc0ODYgNC43OTk5NCAxMS41QzQuNzk5OTQgMTEuMjUxNSA1LjAwMTQxIDExLjA1IDUuMjQ5OTQgMTEuMDVINi44OTk5M1YzLjk1MDE3SDUuMjQ5OTNDNS4wMDE0IDMuOTUwMTcgNC43OTk5MyAzLjc0ODcgNC43OTk5MyAzLjUwMDE3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMmggPSBbXCJjb2xvclwiXTtcbnZhciBGb250U2l6ZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMmgpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0yLjc4MjMzIDIuMjE3MDdDMi43MDczMiAyLjE0MjA2IDIuNjA1NTcgMi4wOTk5MSAyLjQ5OTQ5IDIuMDk5OTFDMi4zOTM0IDIuMDk5OTEgMi4yOTE2NiAyLjE0MjA2IDIuMjE2NjQgMi4yMTcwN0wwLjIxNjY0NSA0LjIxNzA3QzAuMDYwNDM1MSA0LjM3MzI4IDAuMDYwNDM1MSA0LjYyNjU1IDAuMjE2NjQ1IDQuNzgyNzZDMC4zNzI4NTUgNC45Mzg5NyAwLjYyNjEyMSA0LjkzODk3IDAuNzgyMzMgNC43ODI3NkwyLjA5OTQ5IDMuNDY1NkwyLjA5OTQ5IDExLjUzNDJMMC43ODIzMyAxMC4yMTcxQzAuNjI2MTIgMTAuMDYwOSAwLjM3Mjg1NCAxMC4wNjA5IDAuMjE2NjQ1IDEwLjIxNzFDMC4wNjA0MzQ5IDEwLjM3MzMgMC4wNjA0MzQ5IDEwLjYyNjUgMC4yMTY2NDUgMTAuNzgyOEwyLjIxNjY0IDEyLjc4MjhDMi4yOTE2NiAxMi44NTc4IDIuMzkzNCAxMi44OTk5IDIuNDk5NDkgMTIuODk5OUMyLjYwNTU3IDEyLjg5OTkgMi43MDczMSAxMi44NTc4IDIuNzgyMzMgMTIuNzgyOEw0Ljc4MjMzIDEwLjc4MjhDNC45Mzg1NCAxMC42MjY1IDQuOTM4NTQgMTAuMzczMyA0Ljc4MjMzIDEwLjIxNzFDNC42MjYxMiAxMC4wNjA5IDQuMzcyODUgMTAuMDYwOSA0LjIxNjY0IDEwLjIxNzFMMi44OTk0OSAxMS41MzQyTDIuODk5NDkgMy40NjU2TDQuMjE2NjQgNC43ODI3NkM0LjM3Mjg1IDQuOTM4OTcgNC42MjYxMiA0LjkzODk3IDQuNzgyMzMgNC43ODI3NkM0LjkzODU0IDQuNjI2NTUgNC45Mzg1NCA0LjM3MzI4IDQuNzgyMzMgNC4yMTcwN0wyLjc4MjMzIDIuMjE3MDdaTTEwLjUgMi43NDk5N0MxMC43MTA3IDIuNzQ5OTcgMTAuODk4OCAyLjg4MjExIDEwLjk3MDMgMy4wODAzNkwxMy45NzAzIDExLjM5OTlDMTQuMDY0IDExLjY1OTcgMTMuOTI5MyAxMS45NDYyIDEzLjY2OTYgMTIuMDM5OUMxMy40MDk4IDEyLjEzMzYgMTMuMTIzMyAxMS45OTg5IDEzLjAyOTYgMTEuNzM5MkwxMi4wNDc3IDkuMDE2SDguOTUyMjhMNy45NzAzMyAxMS43MzkyQzcuODc2NjYgMTEuOTk4OSA3LjU5MDEzIDEyLjEzMzYgNy4zMzAzNiAxMi4wMzk5QzcuMDcwNTkgMTEuOTQ2MiA2LjkzNTk1IDExLjY1OTcgNy4wMjk2MiAxMS4zOTk5TDEwLjAyOTYgMy4wODAzNkMxMC4xMDExIDIuODgyMTEgMTAuMjg5MiAyLjc0OTk3IDEwLjUgMi43NDk5N1pNMTAuNSA0LjcyMzk2TDExLjc0MTIgOC4xNjZIOS4yNTg3OUwxMC41IDQuNzIzOTZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyaSA9IFtcImNvbG9yXCJdO1xudmFyIEZvbnRTdHlsZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMmkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjAzNzkxIDkuOTgwNzVDMC45MzQ3NzcgOS42NTgzIDEuMTE2MDMgOS4zNzcxOSAxLjQwMDA1IDkuMjQ4NzFDMS42ODQwOCA5LjEyMDIyIDIuMDk0NjMgOS4xMzQxMiAyLjI3MDcxIDkuNDU0MjZDMi44NTM5MyAxMC41MTQ3IDMuNjQ1OTkgMTAuNzI4MiA0LjQ4NjY1IDEwLjcyODJDNS41MjcyMSAxMC43MjgyIDYuMjk2NTkgMTAuMjYxNSA2LjI5NjU5IDkuNDU0MjZDNi4yOTY1OSA4LjgwNDcgNS45MTE5IDguNDY0MTYgNC44NzEzNCA4LjE0MjUzTDQuMTU4NzIgNy45MjE4MUMyLjY0NTE4IDcuNDQ4ODMgMS44ODg0MiA2LjY5MjA2IDEuODg4NDIgNS40NTYwMUMxLjg4ODQyIDMuNzk3NDMgMy4yNzU4MyAyLjY4NzUgNS4yNDM0MiAyLjY4NzVDNi45MTczMyAyLjY4NzUgNy45NzQwOSAzLjMzNTM2IDguNDM4MzMgNC4zMTA2NUM4LjU3MDg3IDQuNTg5MDkgOC41NzYxNCA0LjkxMjk0IDguMjI3OTQgNS4xOTExNEM3Ljg3OTc0IDUuNDY5MzQgNy41MjM1MSA1LjM0Nzk5IDcuMjMzMjcgNS4wMzgzOUM2LjQ3MjE1IDQuMjI2NTMgNS45OTU0NSA0LjA0OTY4IDUuMjU2MDQgNC4wNDk2OEM0LjEzOTggNC4wNDk2OCAzLjU0NyA0LjYzNjE4IDMuNTQ3IDUuMjc5NDNDMy41NDcgNS44NjU5MiAzLjk2MzIyIDYuMjMxNjkgNC45NDcwMiA2LjUzNDRMNS42Nzg1NiA2Ljc2MTQzQzcuMjI5OTQgNy4yMzQ0MSA3Ljk3NDA5IDcuOTU5NjQgNy45NzQwOSA5LjE3MDQ3QzcuOTc0MDkgMTAuNzcyMyA2LjY5Mzg5IDEyLjA5MDMgNC40NjE0MyAxMi4wOTAzQzIuODY2MTIgMTIuMDkwMyAxLjQwMDA1IDExLjExMzEgMS4wMzc5MSA5Ljk4MDc1Wk0xMS44NDkxIDguNzc5ODVDMTAuNjYxIDguMzk1NDMgMTAuMTY0OSA3Ljg2MTE0IDEwLjE2NDkgNi45ODgwNUMxMC4xNjQ5IDUuODY3MzYgMTEuMTYzNiA1LjA0NjM5IDEyLjYxMjggNS4wNDYzOUMxMy44NTQ2IDUuMDQ2MzkgMTQuNjYyOSA1LjYzMzQ1IDE0Ljk3NzggNi42MzQ2QzE1LjA0NDMgNi44NDU5OSAxNC45NTkzIDYuOTgwMDYgMTQuNzQ3NSA3LjA0OTFDMTQuNTM5NCA3LjExNjk3IDE0LjMxNzYgNy4wOTk3NCAxNC4yMzggNi44OTYxMUMxMy45MzU2IDYuMTIyNzMgMTMuMzUyIDUuNzYzMTEgMTIuNTk5OCA1Ljc2MzExQzExLjY0NjcgNS43NjMxMSAxMS4wMTM1IDYuMjUxNzggMTEuMDEzNSA2LjkxNjM4QzExLjAxMzUgNy40NTA2NiAxMS4zNDY0IDcuNzUwMzggMTIuMjQ3MyA4LjA0MzU4TDEyLjgzNDggOC4yMzI1NEMxNC4wNjIgOC42Mjk5OSAxNC41NTE2IDkuMTM4MjEgMTQuNTUxNiAxMC4wMTc4QzE0LjU1MTYgMTEuMTk3MiAxMy40ODEgMTIuMDQ0MiAxMS45OTI3IDEyLjA0NDJDMTAuNjQzOSAxMi4wNDQyIDkuNjU2NDQgMTEuMjgwOSA5LjQxOTc5IDEwLjMzNjFDOS4zNjUzNSAxMC4xMTg4IDkuNDExOTIgMTAuMDI4NyA5LjcwMDM5IDkuOTYxODRDOS45ODg4NiA5Ljg5NDk5IDEwLjA3MTQgOS44OTkxOCAxMC4xNzE1IDEwLjEzNjlDMTAuNDU1NSAxMC44MTE0IDExLjE1MzEgMTEuMzI3NSAxMi4wMzE4IDExLjMyNzVDMTIuOTkxNCAxMS4zMjc1IDEzLjY4MzQgMTAuNzgwMiAxMy42ODM0IDEwLjA2MzRDMTMuNjgzNCA5LjUzNTY3IDEzLjM5NjEgOS4yODgwNyAxMi40MzY2IDguOTc1MzJMMTEuODQ5MSA4Ljc3OTg1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMmogPSBbXCJjb2xvclwiXTtcbnZhciBGcmFtZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMmopO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMSAxLjVDMTEgMS4yMjM4NiAxMC43NzYxIDEgMTAuNSAxQzEwLjIyMzkgMSAxMCAxLjIyMzg2IDEwIDEuNVY0SDVWMS41QzUgMS4yMjM4NiA0Ljc3NjE0IDEgNC41IDFDNC4yMjM4NiAxIDQgMS4yMjM4NiA0IDEuNVY0SDEuNUMxLjIyMzg2IDQgMSA0LjIyMzg2IDEgNC41QzEgNC43NzYxNCAxLjIyMzg2IDUgMS41IDVINFYxMEgxLjVDMS4yMjM4NiAxMCAxIDEwLjIyMzkgMSAxMC41QzEgMTAuNzc2MSAxLjIyMzg2IDExIDEuNSAxMUg0VjEzLjVDNCAxMy43NzYxIDQuMjIzODYgMTQgNC41IDE0QzQuNzc2MTQgMTQgNSAxMy43NzYxIDUgMTMuNVYxMUgxMFYxMy41QzEwIDEzLjc3NjEgMTAuMjIzOSAxNCAxMC41IDE0QzEwLjc3NjEgMTQgMTEgMTMuNzc2MSAxMSAxMy41VjExSDEzLjVDMTMuNzc2MSAxMSAxNCAxMC43NzYxIDE0IDEwLjVDMTQgMTAuMjIzOSAxMy43NzYxIDEwIDEzLjUgMTBIMTFWNUgxMy41QzEzLjc3NjEgNSAxNCA0Ljc3NjE0IDE0IDQuNUMxNCA0LjIyMzg2IDEzLjc3NjEgNCAxMy41IDRIMTFWMS41Wk0xMCAxMFY1SDVWMTBIMTBaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyayA9IFtcImNvbG9yXCJdO1xudmFyIEZyYW1lckxvZ29JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJrKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy4zODI1IDEuMjk1NjdDMy40NjI0MSAxLjExNDMyIDMuNjQxODggMC45OTcyODQgMy44NDAwNSAwLjk5NzI4NEgxMS41QzExLjc3NjEgMC45OTcyODQgMTIgMS4yMjExNCAxMiAxLjQ5NzI4VjUuNUMxMiA1Ljc3NjE0IDExLjc3NjEgNiAxMS41IDZIOC42MzUyMUwxMS41Mjg4IDkuMTYyNDdDMTEuNjYyNiA5LjMwODcgMTEuNjk3NCA5LjUyMDE1IDExLjYxNzUgOS43MDE1NEMxMS41Mzc2IDkuODgyOTMgMTEuMzU4MiAxMCAxMS4xNiAxMEg4VjEzLjVDOCAxMy43MDIyIDcuODc4MTggMTMuODg0NSA3LjY5MTM0IDEzLjk2MTlDNy41MDQ1IDE0LjAzOTMgNy4yODk0NSAxMy45OTY2IDcuMTQ2NDUgMTMuODUzNkwzLjE0NjQ1IDkuODUzNTVDMy4wNTI2OCA5Ljc1OTc5IDMgOS42MzI2MSAzIDkuNVY1LjVDMyA1LjIyMzg2IDMuMjIzODYgNSAzLjUgNUg2LjM2NTMxTDMuNDcxMDUgMS44MzQ2OEMzLjMzNzMyIDEuNjg4NDQgMy4zMDI1OSAxLjQ3NzAxIDMuMzgyNSAxLjI5NTY3Wk03LjcyMDMyIDVMNC45NzQ3NCAxLjk5NzI4SDExVjVINy43MjAzMlpNNy4yNzk3OCA2SDRWOUg3LjVIMTAuMDI0N0w3LjI3OTc4IDZaTTQuNzA3MTEgMTBMNyAxMi4yOTI5VjEwSDQuNzA3MTFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQybCA9IFtcImNvbG9yXCJdO1xudmFyIEdlYXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJsKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy4wNzA5NSAwLjY1MDIzOEM2LjY3MzkxIDAuNjUwMjM4IDYuMzI5NzcgMC45MjUwOTYgNi4yNDE5OCAxLjMxMjMxTDYuMDAzOSAyLjM2MjQ3QzUuNjI0OSAyLjQ3MjY5IDUuMjYzMzUgMi42MjM2MyA0LjkyNDM2IDIuODEwMTNMNC4wMTMzNSAyLjIzNTg1QzMuNjc3NDggMi4wMjQxMyAzLjIzOTc4IDIuMDczMTIgMi45NTkwMyAyLjM1Mzg2TDIuMzUyOTQgMi45NTk5NkMyLjA3MjIgMy4yNDA3IDIuMDIzMiAzLjY3ODQgMi4yMzQ5MyA0LjAxNDI3TDIuODA5NDIgNC45MjU2MUMyLjYyMzA3IDUuMjY0NSAyLjQ3MjI3IDUuNjI1OTQgMi4zNjIxNiA2LjAwNDgxTDEuMzEyMDkgNi4yNDI4N0MwLjkyNDg4MyA2LjMzMDY1IDAuNjUwMDI0IDYuNjc0OCAwLjY1MDAyNCA3LjA3MTgzVjcuOTI4OTdDMC42NTAwMjQgOC4zMjYwMSAwLjkyNDg4MyA4LjY3MDE1IDEuMzEyMDkgOC43NTc5NEwyLjM2MjI4IDguOTk2MDNDMi40NzI0NiA5LjM3NSAyLjYyMzM1IDkuNzM2NTIgMi44MDk3OSAxMC4wNzU1TDIuMjM1NCAxMC45ODY3QzIuMDIzNjcgMTEuMzIyNSAyLjA3MjY3IDExLjc2MDIgMi4zNTM0MSAxMi4wNDFMMi45NTk1MSAxMi42NDcxQzMuMjQwMjUgMTIuOTI3OCAzLjY3Nzk1IDEyLjk3NjggNC4wMTM4MiAxMi43NjUxTDQuOTI1MDYgMTIuMTkwN0M1LjI2Mzg0IDEyLjM3NyA1LjYyNTE2IDEyLjUyNzggNi4wMDM5IDEyLjYzNzlMNi4yNDE5OCAxMy42ODgxQzYuMzI5NzcgMTQuMDc1MyA2LjY3MzkxIDE0LjM1MDIgNy4wNzA5NSAxNC4zNTAySDcuOTI4MDlDOC4zMjUxMiAxNC4zNTAyIDguNjY5MjcgMTQuMDc1MyA4Ljc1NzA1IDEzLjY4ODFMOC45OTUwNSAxMi42MzgzQzkuMzc0MTEgMTIuNTI4MiA5LjczNTczIDEyLjM3NzMgMTAuMDc0OCAxMi4xOTA5TDEwLjk4NiAxMi43NjUzQzExLjMyMTggMTIuOTc3IDExLjc1OTUgMTIuOTI4IDEyLjA0MDMgMTIuNjQ3M0wxMi42NDY0IDEyLjA0MTJDMTIuOTI3MSAxMS43NjA0IDEyLjk3NjEgMTEuMzIyNyAxMi43NjQ0IDEwLjk4NjlMMTIuMTkwMiAxMC4wNzZDMTIuMzc2OCA5LjczNjg4IDEyLjUyNzggOS4zNzUxNSAxMi42MzggOC45OTU5NkwxMy42ODc5IDguNzU3OTRDMTQuMDc1MSA4LjY3MDE1IDE0LjM1IDguMzI2MDEgMTQuMzUgNy45Mjg5N1Y3LjA3MTgzQzE0LjM1IDYuNjc0OCAxNC4wNzUxIDYuMzMwNjUgMTMuNjg3OSA2LjI0Mjg3TDEyLjYzODEgNi4wMDQ4OEMxMi41MjggNS42MjU3OCAxMi4zNzcxIDUuMjY0MTQgMTIuMTkwNiA0LjkyNTA3TDEyLjc2NDggNC4wMTQwN0MxMi45NzY2IDMuNjc4MiAxMi45Mjc2IDMuMjQwNSAxMi42NDY4IDIuOTU5NzVMMTIuMDQwNyAyLjM1MzY2QzExLjc2IDIuMDcyOTIgMTEuMzIyMyAyLjAyMzkyIDEwLjk4NjQgMi4yMzU2NUwxMC4wNzU1IDIuODA5ODlDOS43MzYyMiAyLjYyMzI4IDkuMzc0MzcgMi40NzIyOSA4Ljk5NTA1IDIuMzYyMDlMOC43NTcwNSAxLjMxMjMxQzguNjY5MjcgMC45MjUwOTYgOC4zMjUxMiAwLjY1MDIzOCA3LjkyODA5IDAuNjUwMjM4SDcuMDcwOTVaTTQuOTIwNTMgMy44MTI1MUM1LjQ0NzI0IDMuNDQzMzkgNi4wNTY2NSAzLjE4NDI0IDYuNzE1NDMgMy4wNjgzOUw3LjA3MDk1IDEuNTAwMjRINy45MjgwOUw4LjI4MzU1IDMuMDY4MTZDOC45NDI2NyAzLjE4Mzg3IDkuNTUyNCAzLjQ0MzAyIDEwLjA3OTQgMy44MTIyNEwxMS40Mzk3IDIuOTU0N0wxMi4wNDU4IDMuNTYwNzlMMTEuMTg4MiA0LjkyMTE3QzExLjU1NzMgNS40NDc5OCAxMS44MTY0IDYuMDU3NSAxMS45MzIxIDYuNzE2MzhMMTMuNSA3LjA3MTgzVjcuOTI4OTdMMTEuOTMyIDguMjg0NDRDMTEuODE2MiA4Ljk0MzQyIDExLjU1NyA5LjU1MzAxIDExLjE4NzggMTAuMDc5OEwxMi4wNDUzIDExLjQ0MDJMMTEuNDM5MiAxMi4wNDYyTDEwLjA3ODcgMTEuMTg4NkM5LjU1MTkyIDExLjU1NzYgOC45NDI0MSAxMS44MTY2IDguMjgzNTUgMTEuOTMyM0w3LjkyODA5IDEzLjUwMDJINy4wNzA5NUw2LjcxNTQzIDExLjkzMkM2LjA1NjkgMTEuODE2MiA1LjQ0NzcyIDExLjU1NzIgNC45MjExNiAxMS4xODgzTDMuNTYwNTUgMTIuMDQ2TDIuOTU0NDUgMTEuNDM5OUwzLjgxMjEzIDEwLjA3OTRDMy40NDMxIDkuNTUyNjYgMy4xODQwMyA4Ljk0MzI2IDMuMDY4MjUgOC4yODQ1TDEuNTAwMDIgNy45Mjg5N1Y3LjA3MTgzTDMuMDY4MTggNi43MTYzMkMzLjE4Mzg4IDYuMDU3NjUgMy40NDI4MyA1LjQ0ODMzIDMuODExNzEgNC45MjE2NUwyLjk1Mzk4IDMuNTYxTDMuNTYwMDggMi45NTQ5MUw0LjkyMDUzIDMuODEyNTFaTTkuMDI0OTYgNy41MDAwOEM5LjAyNDk2IDguMzQyMjYgOC4zNDIyMyA5LjAyNDk5IDcuNTAwMDUgOS4wMjQ5OUM2LjY1Nzg2IDkuMDI0OTkgNS45NzUxMyA4LjM0MjI2IDUuOTc1MTMgNy41MDAwOEM1Ljk3NTEzIDYuNjU3ODkgNi42NTc4NiA1Ljk3NTE2IDcuNTAwMDUgNS45NzUxNkM4LjM0MjIzIDUuOTc1MTYgOS4wMjQ5NiA2LjY1Nzg5IDkuMDI0OTYgNy41MDAwOFpNOS45MjQ5NiA3LjUwMDA4QzkuOTI0OTYgOC44MzkzMiA4LjgzOTI5IDkuOTI0OTkgNy41MDAwNSA5LjkyNDk5QzYuMTYwOCA5LjkyNDk5IDUuMDc1MTMgOC44MzkzMiA1LjA3NTEzIDcuNTAwMDhDNS4wNzUxMyA2LjE2MDg0IDYuMTYwOCA1LjA3NTE2IDcuNTAwMDUgNS4wNzUxNkM4LjgzOTI5IDUuMDc1MTYgOS45MjQ5NiA2LjE2MDg0IDkuOTI0OTYgNy41MDAwOFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJtID0gW1wiY29sb3JcIl07XG52YXIgR2l0SHViTG9nb0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMm0pO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjQ5OTMzIDAuMjVDMy40OTYzNSAwLjI1IDAuMjUgMy40OTU5MyAwLjI1IDcuNTAwMjRDMC4yNSAxMC43MDMgMi4zMjcxNSAxMy40MjA2IDUuMjA4MSAxNC4zNzk3QzUuNTcwODQgMTQuNDQ2IDUuNzAzMDIgMTQuMjIyMiA1LjcwMzAyIDE0LjAyOTlDNS43MDMwMiAxMy44NTc2IDUuNjk2NzkgMTMuNDAxOSA1LjY5MzIzIDEyLjc5N0MzLjY3NjYxIDEzLjIzNSAzLjI1MTEyIDExLjgyNSAzLjI1MTEyIDExLjgyNUMyLjkyMTMyIDEwLjk4NzQgMi40NDU5OSAxMC43NjQ0IDIuNDQ1OTkgMTAuNzY0NEMxLjc4NzczIDEwLjMxNDkgMi40OTU4NCAxMC4zMjM4IDIuNDk1ODQgMTAuMzIzOEMzLjIyMzUzIDEwLjM3NSAzLjYwNjI5IDExLjA3MTEgMy42MDYyOSAxMS4wNzExQzQuMjUyOTggMTIuMTc4OCA1LjMwMzM1IDExLjg1ODggNS43MTYzOCAxMS42NzMyQzUuNzgyMjUgMTEuMjA1IDUuOTY5NjIgMTAuODg1NCA2LjE3NjU4IDEwLjcwNDNDNC41NjY3NSAxMC41MjA5IDIuODc0MTUgOS44OTkxOCAyLjg3NDE1IDcuMTIxMDRDMi44NzQxNSA2LjMyOTI1IDMuMTU2NzcgNS42ODI1NyAzLjYyMDUzIDUuMTc1NjNDMy41NDU3NiA0Ljk5MjI2IDMuMjk2OTcgNC4yNTUyMSAzLjY5MTc0IDMuMjU2OTFDMy42OTE3NCAzLjI1NjkxIDQuMzAwMTUgMy4wNjE5NiA1LjY4NTIyIDMuOTk5NzNDNi4yNjMzNyAzLjgzOTA2IDYuODgzOCAzLjc1ODk1IDcuNTAwMjIgMy43NTU4M0M4LjExNjIgMy43NTg5NSA4LjczNjE5IDMuODM5MDYgOS4zMTUyMyAzLjk5OTczQzEwLjY5OTQgMy4wNjE5NiAxMS4zMDY5IDMuMjU2OTEgMTEuMzA2OSAzLjI1NjkxQzExLjcwMjYgNC4yNTUyMSAxMS40NTM4IDQuOTkyMjYgMTEuMzc5NSA1LjE3NTYzQzExLjg0NDEgNS42ODI1NyAxMi4xMjQ1IDYuMzI5MjUgMTIuMTI0NSA3LjEyMTA0QzEyLjEyNDUgOS45MDYzIDEwLjQyOTIgMTAuNTE5MiA4LjgxNDUyIDEwLjY5ODVDOS4wNzQ0NCAxMC45MjI0IDkuMzA2MzMgMTEuMzY0OCA5LjMwNjMzIDEyLjA0MTNDOS4zMDYzMyAxMy4wMTAyIDkuMjk3NDIgMTMuNzkyMiA5LjI5NzQyIDE0LjAyOTlDOS4yOTc0MiAxNC4yMjM5IDkuNDI4MjggMTQuNDQ5NiA5Ljc5NTkxIDE0LjM3ODhDMTIuNjc0NiAxMy40MTc5IDE0Ljc1IDEwLjcwMjUgMTQuNzUgNy41MDAyNEMxNC43NSAzLjQ5NTkzIDExLjUwMzYgMC4yNSA3LjQ5OTMzIDAuMjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQybiA9IFtcImNvbG9yXCJdO1xudmFyIEdsb2JlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQybik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTYgMS44MDAwMkM0LjM1MTk0IDEuODAwMDIgMS43OTk5NiA0LjM1MiAxLjc5OTk2IDcuNTAwMDJDMS43OTk5NiAxMC42NDggNC4zNTE5NCAxMy4yIDcuNDk5OTYgMTMuMkMxMC42NDggMTMuMiAxMy4yIDEwLjY0OCAxMy4yIDcuNTAwMDJDMTMuMiA0LjM1MiAxMC42NDggMS44MDAwMiA3LjQ5OTk2IDEuODAwMDJaTTAuODk5OTYzIDcuNTAwMDJDMC44OTk5NjMgMy44NTQ5NCAzLjg1NDg4IDAuOTAwMDI0IDcuNDk5OTYgMC45MDAwMjRDMTEuMTQ1IDAuOTAwMDI0IDE0LjEgMy44NTQ5NCAxNC4xIDcuNTAwMDJDMTQuMSAxMS4xNDUxIDExLjE0NSAxNC4xIDcuNDk5OTYgMTQuMUMzLjg1NDg4IDE0LjEgMC44OTk5NjMgMTEuMTQ1MSAwLjg5OTk2MyA3LjUwMDAyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMy40OTk5IDcuODk5OThIMS40OTk5NFY3LjA5OTk4SDEzLjQ5OTlWNy44OTk5OFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy4wOTk5MSAxMy41VjEuNUg3Ljg5OTkxVjEzLjVINy4wOTk5MXpNMTAuMzc1IDcuNDk5OThDMTAuMzc1IDUuMzI3MjQgOS41OTM2NCAzLjE3Nzc4IDguMDYxODMgMS43NTY1Nkw4LjUzNzkzIDEuMjQzNDFDMTAuMjM5NiAyLjgyMjE4IDExLjA3NSA1LjE3MjczIDExLjA3NSA3LjQ5OTk4IDExLjA3NSA5LjgyNzI0IDEwLjIzOTYgMTIuMTc3OCA4LjUzNzkzIDEzLjc1NjZMOC4wNjE4MyAxMy4yNDM0QzkuNTkzNjQgMTEuODIyMiAxMC4zNzUgOS42NzI3MyAxMC4zNzUgNy40OTk5OHpNMy45OTk2OSA3LjVDMy45OTk2OSA1LjE3NjExIDQuODA3ODYgMi44MjY3OCA2LjQ1NzY4IDEuMjQ3MTlMNi45NDE3NyAxLjc1MjgxQzUuNDU4MiAzLjE3MzIzIDQuNjk5NjkgNS4zMjM4OSA0LjY5OTY5IDcuNSA0LjY5OTcgOS42NzYxMSA1LjQ1ODIyIDExLjgyNjggNi45NDE3OSAxMy4yNDcyTDYuNDU3NjkgMTMuNzUyOEM0LjgwNzg4IDEyLjE3MzIgMy45OTk3IDkuODIzOSAzLjk5OTY5IDcuNXpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy40OTk5NiAzLjk1ODAxQzkuNjY5MjggMy45NTgwMSAxMS44NzUzIDQuMzU5MTUgMTMuMzcwNiA1LjE5NDQ4IDEzLjUzOTQgNS4yODg3NSAxMy41OTk4IDUuNTAxOTcgMTMuNTA1NSA1LjY3MDczIDEzLjQxMTMgNS44Mzk0OCAxMy4xOTggNS44OTk4NyAxMy4wMjkzIDUuODA1NiAxMS42Nzk0IDUuMDUxNTUgOS42MDc5OSA0LjY1ODAxIDcuNDk5OTYgNC42NTgwMSA1LjM5MTkyIDQuNjU4MDEgMy4zMjA1MiA1LjA1MTU1IDEuOTcwNjQgNS44MDU2IDEuODAxODggNS44OTk4NyAxLjU4ODY2IDUuODM5NDggMS40OTQzOSA1LjY3MDczIDEuNDAwMTMgNS41MDE5NyAxLjQ2MDUxIDUuMjg4NzUgMS42MjkyNyA1LjE5NDQ4IDMuMTI0NjYgNC4zNTkxNSA1LjMzMDYzIDMuOTU4MDEgNy40OTk5NiAzLjk1ODAxek03LjQ5OTk2IDEwLjg1QzkuNjY5MjggMTAuODUgMTEuODc1MyAxMC40NDg4IDEzLjM3MDYgOS42MTM1IDEzLjUzOTQgOS41MTkyNCAxMy41OTk4IDkuMzA2MDEgMTMuNTA1NSA5LjEzNzI2IDEzLjQxMTMgOC45Njg1IDEzLjE5OCA4LjkwODEyIDEzLjAyOTMgOS4wMDIzOCAxMS42Nzk0IDkuNzU2NDMgOS42MDc5OSAxMC4xNSA3LjQ5OTk2IDEwLjE1IDUuMzkxOTIgMTAuMTUgMy4zMjA1MiA5Ljc1NjQzIDEuOTcwNjQgOS4wMDIzOSAxLjgwMTg4IDguOTA4MTIgMS41ODg2NiA4Ljk2ODUgMS40OTQzOSA5LjEzNzI2IDEuNDAwMTMgOS4zMDYwMSAxLjQ2MDUxIDkuNTE5MjQgMS42MjkyNyA5LjYxMzUgMy4xMjQ2NiAxMC40NDg4IDUuMzMwNjMgMTAuODUgNy40OTk5NiAxMC44NXpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJvID0gW1wiY29sb3JcIl07XG52YXIgR3JpZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMm8pO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMi41IDJIOFY3SDEzVjIuNUMxMyAyLjIyMzg2IDEyLjc3NjEgMiAxMi41IDJaTTEzIDhIOFYxM0gxMi41QzEyLjc3NjEgMTMgMTMgMTIuNzc2MSAxMyAxMi41VjhaTTcgN1YySDIuNUMyLjIyMzg2IDIgMiAyLjIyMzg2IDIgMi41VjdIN1pNMiA4VjEyLjVDMiAxMi43NzYxIDIuMjIzODYgMTMgMi41IDEzSDdWOEgyWk0yLjUgMUMxLjY3MTU3IDEgMSAxLjY3MTU3IDEgMi41VjEyLjVDMSAxMy4zMjg0IDEuNjcxNTcgMTQgMi41IDE0SDEyLjVDMTMuMzI4NCAxNCAxNCAxMy4zMjg0IDE0IDEyLjVWMi41QzE0IDEuNjcxNTcgMTMuMzI4NCAxIDEyLjUgMUgyLjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQycCA9IFtcImNvbG9yXCJdO1xudmFyIEdyb3VwSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQycCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEuNDQ5OTUgMC45NDk5NTFDMS4zMTczNCAwLjk0OTk1MSAxLjE5MDE2IDEuMDAyNjMgMS4wOTY0IDEuMDk2NEMxLjAwMjYzIDEuMTkwMTcgMC45NDk5NTEgMS4zMTczNSAwLjk0OTk1MSAxLjQ0OTk1TDAuOTQ5OTY2IDMuNDQ5OTVDMC45NDk5NjkgMy43MjYxIDEuMTczODMgMy45NDk5NSAxLjQ0OTk3IDMuOTQ5OTVDMS43MjYxMSAzLjk0OTk1IDEuOTQ5OTcgMy43MjYwOSAxLjk0OTk3IDMuNDQ5OTVMMS45NDk5NSAxLjk0OTk1SDMuNDQ5OTdDMy43MjYxMSAxLjk0OTk1IDMuOTQ5OTcgMS43MjYwOSAzLjk0OTk3IDEuNDQ5OTVDMy45NDk5NyAxLjE3MzgxIDMuNzI2MTEgMC45NDk5NTEgMy40NDk5NyAwLjk0OTk1MUgxLjQ0OTk1Wk01Ljk0OTk1IDAuOTQ5OTUxQzUuNjczODEgMC45NDk5NTEgNS40NDk5NSAxLjE3MzgxIDUuNDQ5OTUgMS40NDk5NUM1LjQ0OTk1IDEuNzI2MDkgNS42NzM4MSAxLjk0OTk1IDUuOTQ5OTUgMS45NDk5NUg4Ljk0OTk1QzkuMjI2MDkgMS45NDk5NSA5LjQ0OTk1IDEuNzI2MDkgOS40NDk5NSAxLjQ0OTk1QzkuNDQ5OTUgMS4xNzM4MSA5LjIyNjA5IDAuOTQ5OTUxIDguOTQ5OTUgMC45NDk5NTFINS45NDk5NVpNNS40NDk5NSAxMy40NUM1LjQ0OTk1IDEzLjE3MzggNS42NzM4MSAxMi45NSA1Ljk0OTk1IDEyLjk1SDguOTQ5OTVDOS4yMjYwOSAxMi45NSA5LjQ0OTk1IDEzLjE3MzggOS40NDk5NSAxMy40NUM5LjQ0OTk1IDEzLjcyNjEgOS4yMjYwOSAxMy45NSA4Ljk0OTk1IDEzLjk1SDUuOTQ5OTVDNS42NzM4MSAxMy45NSA1LjQ0OTk1IDEzLjcyNjEgNS40NDk5NSAxMy40NVpNMS45NDk5NSA1Ljk0OTk1QzEuOTQ5OTUgNS42NzM4MSAxLjcyNjA5IDUuNDQ5OTUgMS40NDk5NSA1LjQ0OTk1QzEuMTczODEgNS40NDk5NSAwLjk0OTk1MSA1LjY3MzgxIDAuOTQ5OTUxIDUuOTQ5OTVWOC45NDk5NUMwLjk0OTk1MSA5LjIyNjA5IDEuMTczODEgOS40NDk5NSAxLjQ0OTk1IDkuNDQ5OTVDMS43MjYwOSA5LjQ0OTk1IDEuOTQ5OTUgOS4yMjYwOSAxLjk0OTk1IDguOTQ5OTVWNS45NDk5NVpNMTMuNDUgNS40NDk5NUMxMy43MjYxIDUuNDQ5OTUgMTMuOTUgNS42NzM4MSAxMy45NSA1Ljk0OTk1VjguOTQ5OTVDMTMuOTUgOS4yMjYwOSAxMy43MjYxIDkuNDQ5OTUgMTMuNDUgOS40NDk5NUMxMy4xNzM4IDkuNDQ5OTUgMTIuOTUgOS4yMjYwOSAxMi45NSA4Ljk0OTk1VjUuOTQ5OTVDMTIuOTUgNS42NzM4MSAxMy4xNzM4IDUuNDQ5OTUgMTMuNDUgNS40NDk5NVpNMTEuNDUgMC45NDk5NTFDMTEuMTczOCAwLjk0OTk1MSAxMC45NSAxLjE3MzgxIDEwLjk1IDEuNDQ5OTVDMTAuOTUgMS43MjYwOSAxMS4xNzM4IDEuOTQ5OTUgMTEuNDUgMS45NDk5NUgxMi45NDk5VjMuNDQ5OTVDMTIuOTQ5OSAzLjcyNjA5IDEzLjE3MzggMy45NDk5NSAxMy40NDk5IDMuOTQ5OTVDMTMuNzI2MSAzLjk0OTk1IDEzLjk0OTkgMy43MjYwOSAxMy45NDk5IDMuNDQ5OTVWMS40NDk5NUMxMy45NDk5IDEuMTczODEgMTMuNzI1MiAwLjk0OTk1MSAxMy40NDkgMC45NDk5NTFIMTEuNDVaTTEuNDQ5OTUgMTAuOTVDMS43MjYwOSAxMC45NSAxLjk0OTk1IDExLjE3MzggMS45NDk5NSAxMS40NVYxMi45NUgzLjQ0OTk3QzMuNzI2MTEgMTIuOTUgMy45NDk5NyAxMy4xNzM4IDMuOTQ5OTcgMTMuNDVDMy45NDk5NyAxMy43MjYxIDMuNzI2MTEgMTMuOTUgMy40NDk5NyAxMy45NUgxLjQ0OTk1QzEuMTczODEgMTMuOTUgMC45NDk5NTEgMTMuNzI2MSAwLjk0OTk1MSAxMy40NVYxMS40NUMwLjk0OTk1MSAxMS4xNzM4IDEuMTczODEgMTAuOTUgMS40NDk5NSAxMC45NVpNMTMuOTUgMTEuNDVDMTMuOTUgMTEuMTczOCAxMy43MjYxIDEwLjk1IDEzLjQ1IDEwLjk1QzEzLjE3MzggMTAuOTQ5OSAxMi45NSAxMS4xNzM4IDEyLjk1IDExLjQ0OTlMMTIuOTQ5MSAxMi45NUgxMS40NUMxMS4xNzM4IDEyLjk1IDEwLjk1IDEzLjE3MzggMTAuOTUgMTMuNDVDMTAuOTUgMTMuNzI2MSAxMS4xNzM4IDEzLjk1IDExLjQ1IDEzLjk1SDEzLjQ0OTlDMTMuNzI2MSAxMy45NSAxMy45NDk5IDEzLjcyNjEgMTMuOTQ5OSAxMy40NUwxMy45NSAxMS40NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJxID0gW1wiY29sb3JcIl07XG52YXIgSGFsZjFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJxKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy40OTk5MSAwLjg3Njg5MkMzLjg0MjIyIDAuODc2ODkyIDAuODc3MDc1IDMuODQyMDQgMC44NzcwNzUgNy40OTk3MkMwLjg3NzA3NSAxMS4xNTc0IDMuODQyMjIgMTQuMTIyNiA3LjQ5OTkxIDE0LjEyMjZDMTEuMTU3NiAxNC4xMjI2IDE0LjEyMjcgMTEuMTU3NCAxNC4xMjI3IDcuNDk5NzJDMTQuMTIyNyAzLjg0MjA0IDExLjE1NzYgMC44NzY4OTIgNy40OTk5MSAwLjg3Njg5MlpNNy4wMDAwMyAxLjg0ODYxQzQuMTAxMTQgMi4xMDE3IDEuODI3MDcgNC41MzUxNSAxLjgyNzA3IDcuNDk5NzJDMS44MjcwNyAxMC40NjQzIDQuMTAxMTQgMTIuODk3NyA3LjAwMDAzIDEzLjE1MDhWMS44NDg2MVpNOC4wMDAwMyAxMy4xNTA4QzEwLjg5ODggMTIuODk3NiAxMy4xNzI3IDEwLjQ2NDIgMTMuMTcyNyA3LjQ5OTcyQzEzLjE3MjcgNC41MzUyNCAxMC44OTg4IDIuMTAxODUgOC4wMDAwMyAxLjg0ODY0VjEzLjE1MDhaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyciA9IFtcImNvbG9yXCJdO1xudmFyIEhhbGYySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQycik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTEgMC44NzY4OTJDMy44NDIyMiAwLjg3Njg5MiAwLjg3NzA3NSAzLjg0MjA0IDAuODc3MDc1IDcuNDk5NzJDMC44NzcwNzUgMTEuMTU3NCAzLjg0MjIyIDE0LjEyMjYgNy40OTk5MSAxNC4xMjI2QzExLjE1NzYgMTQuMTIyNiAxNC4xMjI3IDExLjE1NzQgMTQuMTIyNyA3LjQ5OTcyQzE0LjEyMjcgMy44NDIwNCAxMS4xNTc2IDAuODc2ODkyIDcuNDk5OTEgMC44NzY4OTJaTTcuNDk5ODggMS44MjY4OUM0LjM2Njg4IDEuODI2OSAxLjgyNzA3IDQuMzY2NzIgMS44MjcwNyA3LjQ5OTcyQzEuODI3MDcgMTAuNjMyNyA0LjM2Njg4IDEzLjE3MjUgNy40OTk4OCAxMy4xNzI2VjEuODI2ODlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQycyA9IFtcImNvbG9yXCJdO1xudmFyIEhhbWJ1cmdlck1lbnVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJzKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS41IDNDMS4yMjM4NiAzIDEgMy4yMjM4NiAxIDMuNUMxIDMuNzc2MTQgMS4yMjM4NiA0IDEuNSA0SDEzLjVDMTMuNzc2MSA0IDE0IDMuNzc2MTQgMTQgMy41QzE0IDMuMjIzODYgMTMuNzc2MSAzIDEzLjUgM0gxLjVaTTEgNy41QzEgNy4yMjM4NiAxLjIyMzg2IDcgMS41IDdIMTMuNUMxMy43NzYxIDcgMTQgNy4yMjM4NiAxNCA3LjVDMTQgNy43NzYxNCAxMy43NzYxIDggMTMuNSA4SDEuNUMxLjIyMzg2IDggMSA3Ljc3NjE0IDEgNy41Wk0xIDExLjVDMSAxMS4yMjM5IDEuMjIzODYgMTEgMS41IDExSDEzLjVDMTMuNzc2MSAxMSAxNCAxMS4yMjM5IDE0IDExLjVDMTQgMTEuNzc2MSAxMy43NzYxIDEyIDEzLjUgMTJIMS41QzEuMjIzODYgMTIgMSAxMS43NzYxIDEgMTEuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJ0ID0gW1wiY29sb3JcIl07XG52YXIgSGFuZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMnQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk02LjgxMTMgMS42NDcwNkM2LjYyMTg4IDIuODc5MTggNi42ODI2OCAzLjg4NTIzIDYuNzY4NDggNS4zMDQ5OUM2Ljc4NDE1IDUuNTY0MjYgNi44MDA2NSA1LjgzNzMyIDYuODE2NjEgNi4xMjgwOEM2LjgzMTExIDYuMzkyMDggNi42Mzc1OCA2LjYyMTcyIDYuMzc0OTUgNi42NTIxN0M2LjExMjMyIDYuNjgyNjIgNS44NzEzOCA2LjUwMzM0IDUuODI1MDkgNi4yNDMwNEw1Ljc0NzU0IDUuODA2OThDNS42NDQwMiA1LjE2NTI5IDUuNDgzNTUgNC4yNTQ4MSA1LjE3ODA3IDMuNDQ3NDFDNC44NjI0MSAyLjYxMzEyIDQuNDQ4NiAyLjA0MTIxIDMuOTM0MzYgMS44NjA0NEMzLjY0OTk0IDEuNzYxMDQgMy40MTkwMSAxLjg0Mjc5IDMuMjU4NjggMi4wMTA1MkMzLjA4NzQ2IDIuMTg5NjIgMi45OTc2IDIuNDcwNjUgMy4wNjI3IDIuNzUzOTlDMy4yMTQ2IDMuMzQ0MjQgMy40NDYyNyAzLjkxNjcgMy42OTgzNiA0LjUxODAyQzMuNzIwODIgNC41NzE1OCAzLjc0MzQ2IDQuNjI1NDMgMy43NjYyMSA0LjY3OTU0QzMuOTk1NCA1LjIyNDU3IDQuMjM2MTkgNS43OTcyIDQuNDE2NDQgNi4zOTA4MUw0LjQxNjkxIDYuMzkyMzhDNC41NjIgNi44NzU4NiA0LjY1NjQ2IDcuMjU5NSA0LjczMDg2IDcuNTYxNjVDNC43NjAzNCA3LjY4MTM4IDQuNzg2NjcgNy43ODgzMSA0LjgxMTc1IDcuODgzNTlDNC44Njc2OCA4LjA5NjA2IDQuNzc4MzYgOC4zMjAxNCA0LjU5MTYxIDguNDM1ODhDNC40MDQ4NiA4LjU1MTYxIDQuMTY0NDUgOC41MzE4OCAzLjk5OTA3IDguMzg3MjVDMy43Mzc0OSA4LjE1ODQ4IDMuNTE1IDcuOTI3ODQgMy4zMTgxNyA3LjcxODAyQzMuMjc2MjcgNy42NzMzNSAzLjIzNjAyIDcuNjMwMTggMy4xOTcwNSA3LjU4ODM4QzMuMDQ3NzcgNy40MjgyNiAyLjkxNzEyIDcuMjg4MTIgMi43ODMzNCA3LjE2MDI5QzIuNDU5ODkgNi44NTEyMiAyLjE4Mzk4IDYuNjgwMDQgMS44MDU4NSA2LjY0MzY5TDEuODAzMjQgNi42NDM0M0MxLjU2MTE3IDYuNjE4ODggMS40MTQwMiA2LjY2NDQxIDEuMzE3NTYgNi43MjYyN0MxLjIxODk5IDYuNzg5NDcgMS4xMTk4OCA2LjkwNDE0IDEuMDM3ODQgNy4xMTIzQzAuOTc2NTc2IDcuMjg0OTIgMS4wMTUxNSA3LjYyOTg3IDEuMTkyOSA3Ljk2OTExTDEuMTk3MjggNy45Nzc0N0MxLjQwMDg2IDguMzg0NTIgMS43NDQ3NSA4LjgxNTg3IDIuMTgxNDEgOS4yOTI5OUMyLjM5NzM5IDkuNTI4OTggMi42Mjg3MiA5Ljc2ODQ5IDIuODY5MzQgMTAuMDE3NEwyLjg3OTY2IDEwLjAyODFDMy4xMTU0NiAxMC4yNzIxIDMuMzU5NjIgMTAuNTI0NyAzLjU5NzEzIDEwLjc4MjdDNC40Mjg4IDExLjY4NjMgNS4yNzcwNiAxMi43NTM4IDUuNDYyNyAxNEgxMS41MDg3QzExLjU2MzYgMTIuNDM1MyAxMS44NzU2IDExLjI2OCAxMi4yODc1IDEwLjEzNDZDMTIuNDQ1NCA5LjcwMDQxIDEyLjYxMjEgOS4yODQxMiAxMi43ODI2IDguODU4MjlDMTMuMTA5NyA4LjA0MTM5IDEzLjQ1MDkgNy4xODkzNyAxMy43NzA1IDYuMTA4MjRDMTQuMDk4OSA0Ljk5NzM3IDE0LjAwOTcgNC4zNzAzMyAxMy44NjEzIDQuMDM5ODRDMTMuNzE3IDMuNzE4NTggMTMuNDkxNCAzLjYxNzg2IDEzLjM4MTYgMy41OTYwNkMxMy4xMzgxIDMuNTQ3NzQgMTMuMDM4NCAzLjYwOTQ3IDEyLjk2OTggMy42NzkwMUMxMi44NjcgMy43ODMxNiAxMi43Njk4IDMuOTgyNzMgMTIuNjkyMSA0LjMwMjY5QzEyLjYxNjYgNC42MTM0NSAxMi41NzUyIDQuOTY1MTcgMTIuNTMzIDUuMzI1MDFMMTIuNTI5OCA1LjM1Mjg1QzEyLjQ5MjQgNS42NzI0MiAxMi40NTA1IDYuMDMwMTYgMTIuMzY2NSA2LjMwMDk4QzEyLjMzODMgNi40MDY5OSAxMi4yODE5IDYuNTA0MDcgMTIuMTk3OSA2LjU3NTM5QzEyLjEzODIgNi42MjYxIDEyLjAxMDQgNi43MDgxOCAxMS44MzA5IDYuNjkzMTJDMTEuNTQyNCA2LjY2ODkxIDExLjM3MTIgNi40MjE0MyAxMS4zNjUgNi4xNDc4M0MxMS4zNTYgNS43NTQ1NCAxMS4zODgzIDUuMzU4NjQgMTEuNDA3NCA0Ljk2NjA4QzExLjQ0MjggNC4yMzY0NiAxMS40NzcgMy41MzM3IDExLjQyNDUgMi44MzQyTDExLjQyNDIgMi44MjkzNEMxMS4zOTE2IDIuMzI5OTcgMTEuMDQ5MyAyLjAwMjI4IDEwLjcwMDcgMS45MjI4QzEwLjUzMDUgMS44ODQwMSAxMC4zNjkgMS45MDYwMSAxMC4yMzQ3IDEuOTgzNUMxMC4xMDMgMi4wNTk0NiA5Ljk1NTM1IDIuMjEzMTggOS44NTc0IDIuNTEzOTRMOS44NTYzMSAyLjUxNzI2QzkuODE1MjUgMi42NDA0IDkuNzcyOTggMi44Nzc1MyA5LjczNjA2IDMuMjEyNEM5LjcwMDQ0IDMuNTM1NDIgOS42NzMzNyAzLjkxMjc5IDkuNjUxNTYgNC4yOTQxOEM5LjYzMjkgNC42MjAzMyA5LjYxNzg1IDQuOTU4NCA5LjYwNDM0IDUuMjYxOTRDOS41ODcyOCA1LjY0NTI5IDkuNTcyNjcgNS45NzM1NyA5LjU1NjMzIDYuMTUzMkM5LjU0OTgzIDYuMjI0NTkgOS41MjkzOSA2LjI5NDkzIDkuNDk1MDEgNi4zNTc4NUM5LjQ3MzU2IDYuMzk3MTEgOS4zNjExNSA2LjYwOTQ3IDkuMDcxMDYgNi42MTg0M0M4Ljc3OTE3IDYuNjI3NDQgOC42Mzk3NSA2LjQwMDU3IDguNjE2OTggNi4zNTkxOUM4LjU1NjM0IDYuMjQ4OTkgOC41NTA2NiA2LjExODA3IDguNTQ3NTQgNS45OTI4M0M4LjU0NDc0IDUuODgwNjQgOC41NDI5NCA1LjcxNzk4IDguNTQxNzQgNS41NDc2N0M4LjUzOTM1IDUuMjA1ODIgOC41MzkzNSA0LjgxOTE5IDguNTM5MzUgNC43MDk1MkM4LjUzOTM1IDMuNjY1NyA4LjUzODM4IDIuNjUzNzIgOC40NDcxNCAxLjY0MzcyQzguMzkxODMgMS4yNDEyNyA4LjA2Mjc4IDEuMDA0NTUgNy42NDM2IDEuMDAwMDVDNy4yMjM5OSAwLjk5NTU1MiA2Ljg3OTE4IDEuMjI3MDQgNi44MTEzIDEuNjQ3MDZaTTkuNDEyMTkgMS4zNjE3QzkuMjE0NjkgMC40NDg0ODQgOC4zOTkxMyAwLjAwODEwMzI0IDcuNjU0MzMgMC4wMDAxMTE1NEM2Ljg2NDUyIC0wLjAwODM2MzA4IDUuOTg3NjEgMC40NjU4ODEgNS44MjM2NSAxLjQ5MDM3TDUuODIzMTggMS40OTMzNEM1Ljc4MjM5IDEuNzU4NCA1Ljc1MjI5IDIuMDE0ODEgNS43MzA5IDIuMjY2NTJDNS4zOTQyMyAxLjY3MzY0IDQuOTI2MjIgMS4xNDg5NCA0LjI2NTUgMC45MTY4NTlDMy41ODY2MSAwLjY3OTMxMiAyLjk0OTIgMC44ODcwODcgMi41MzU4MiAxLjMxOTUyQzIuMTM0MTUgMS43Mzk3MSAxLjk0NDM4IDIuMzY3NDIgMi4wOTAzMSAyLjk4NzQ2TDIuMDkyNjkgMi45OTcxM0MyLjI2NDc4IDMuNjY4MDggMi41MjM5NiA0LjMwMzE2IDIuNzc2MTMgNC45MDQ2NUMyLjc5ODE0IDQuOTU3MTcgMi44MjAxIDUuMDA5NDEgMi44NDE5NCA1LjA2MTM5QzMuMDIxMzkgNS40ODg0MiAzLjE5Mzc4IDUuODk4NjYgMy4zMzg3MSA2LjMxMjU2QzIuOTY0MDQgNS45ODE0MiAyLjUxOTI1IDUuNzA3OTYgMS45MDI3NiA1LjY0ODRDMS40ODg2NSA1LjYwNjYzIDEuMTAzOTEgNS42NzUzNiAwLjc3NzgwNSA1Ljg4NDQ0QzAuNDU0MjM5IDYuMDkxOSAwLjI0MDY3MSA2LjQwNDA1IDAuMTA0MTg3IDYuNzU0MDZMMC4xMDA4NjggNi43NjI4MUMtMC4xMDE4NCA3LjMxMjg2IDAuMDY2MzMxMiA3Ljk3MTU3IDAuMzA0ODk1IDguNDI4OTdDMC41NzM3MDQgOC45NjQ3NCAwLjk5NjEwNCA5LjQ3OTA0IDEuNDQzNzIgOS45NjgxM0MxLjY3MDQ2IDEwLjIxNTkgMS45MTEzNiAxMC40NjUyIDIuMTUwMzMgMTAuNzEyNEwyLjE1NjgyIDEwLjcxOTFDMi4zOTUyNCAxMC45NjU4IDIuNjMyMTcgMTEuMjEwOSAyLjg2MTM0IDExLjQ1OTlDMy44MDkzNyAxMi40OSA0LjUwMDAyIDEzLjQ2MzIgNC41MDAwMiAxNC41QzQuNTAwMDIgMTQuNzc2MSA0LjcyMzg4IDE1IDUuMDAwMDIgMTVIMTJDMTIuMjc2MiAxNSAxMi41IDE0Ljc3NjEgMTIuNSAxNC41QzEyLjUgMTIuODIxMiAxMi44MDIxIDExLjY0NjIgMTMuMjI3NCAxMC40NzYyQzEzLjM2NTMgMTAuMDk2OCAxMy41MjE2IDkuNzA1NzkgMTMuNjg2OCA5LjI5MjQ3QzE0LjAyMzggOC40NDkyMiAxNC4zOTggNy41MTI5OCAxNC43Mjk1IDYuMzkxNzVDMTUuMDk1NiA1LjE1MzI0IDE1LjA1NTkgNC4yNTkwNCAxNC43NzM1IDMuNjMwMTdDMTQuNDg3IDIuOTkyMDggMTMuOTc5OCAyLjY5NTMgMTMuNTc2MyAyLjYxNTJDMTMuMTI3NiAyLjUyNjE0IDEyLjczNjcgMi42MDQ3NSAxMi40MjY4IDIuODMwODFDMTIuNDI1MyAyLjgwNzczIDEyLjQyMzYgMi43ODQ2OCAxMi40MjE5IDIuNzYxNjdDMTIuMzU4NyAxLjgxMDUgMTEuNjkwNyAxLjEyMjg1IDEwLjkyMyAwLjk0NzgyMUMxMC41MzQ2IDAuODU5Mjg3IDEwLjExMTEgMC45MDAzOTMgOS43MzUwOSAxLjExNzI0QzkuNjE4NTIgMS4xODQ0NiA5LjUxMDU1IDEuMjY2MjMgOS40MTIxOSAxLjM2MTdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQydSA9IFtcImNvbG9yXCJdO1xudmFyIEhlYWRpbmdJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJ1KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOC43NTQzMiAyLjA1MDJDOC41MDU3OSAyLjA1MDIgOC4zMDQzMiAyLjI1MTY3IDguMzA0MzIgMi41MDAyQzguMzA0MzIgMi43NDg3MyA4LjUwNTc5IDIuOTUwMiA4Ljc1NDMyIDIuOTUwMkg5Ljk0OTk3VjcuMDUwMDRINS4wNDk5N1YyLjk1MDJINi4yNTQzMkM2LjUwMjg1IDIuOTUwMiA2LjcwNDMyIDIuNzQ4NzMgNi43MDQzMiAyLjUwMDJDNi43MDQzMiAyLjI1MTY3IDYuNTAyODUgMi4wNTAyIDYuMjU0MzIgMi4wNTAySDIuNzU0MzJDMi41MDU3OSAyLjA1MDIgMi4zMDQzMiAyLjI1MTY3IDIuMzA0MzIgMi41MDAyQzIuMzA0MzIgMi43NDg3MyAyLjUwNTc5IDIuOTUwMiAyLjc1NDMyIDIuOTUwMkgzLjk0OTk3VjEyLjA1MDJIMi43NTQzMkMyLjUwNTc5IDEyLjA1MDIgMi4zMDQzMiAxMi4yNTE3IDIuMzA0MzIgMTIuNTAwMkMyLjMwNDMyIDEyLjc0ODcgMi41MDU3OSAxMi45NTAyIDIuNzU0MzIgMTIuOTUwMkg2LjI1NDMyQzYuNTAyODUgMTIuOTUwMiA2LjcwNDMyIDEyLjc0ODcgNi43MDQzMiAxMi41MDAyQzYuNzA0MzIgMTIuMjUxNyA2LjUwMjg1IDEyLjA1MDIgNi4yNTQzMiAxMi4wNTAySDUuMDQ5OTdWNy45NTAwNEg5Ljk0OTk3VjEyLjA1MDJIOC43NTQzMkM4LjUwNTc5IDEyLjA1MDIgOC4zMDQzMiAxMi4yNTE3IDguMzA0MzIgMTIuNTAwMkM4LjMwNDMyIDEyLjc0ODcgOC41MDU3OSAxMi45NTAyIDguNzU0MzIgMTIuOTUwMkgxMi4yNTQzQzEyLjUwMjggMTIuOTUwMiAxMi43MDQzIDEyLjc0ODcgMTIuNzA0MyAxMi41MDAyQzEyLjcwNDMgMTIuMjUxNyAxMi41MDI4IDEyLjA1MDIgMTIuMjU0MyAxMi4wNTAySDExLjA1VjIuOTUwMkgxMi4yNTQzQzEyLjUwMjggMi45NTAyIDEyLjcwNDMgMi43NDg3MyAxMi43MDQzIDIuNTAwMkMxMi43MDQzIDIuMjUxNjcgMTIuNTAyOCAyLjA1MDIgMTIuMjU0MyAyLjA1MDJIOC43NTQzMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJ2ID0gW1wiY29sb3JcIl07XG52YXIgSGVhcnRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJ2KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC44OTM0NiAyLjM1MjQ4QzMuNDkxOTUgMi4zNTI0OCAyLjM1MjQ4IDMuNDkzNTkgMi4zNTI0OCA0LjkwNTMyQzIuMzUyNDggNi4zODE2NCAzLjIwOTU0IDcuOTE2OCA0LjM3MjU1IDkuMzM1MjJDNS4zOTM5NiAxMC41ODEgNi41OTQ2NCAxMS42NzAyIDcuNTAwMDIgMTIuNDc3OEM4LjQwNTQgMTEuNjcwMiA5LjYwNjA4IDEwLjU4MSAxMC42Mjc1IDkuMzM1MjJDMTEuNzkwNSA3LjkxNjggMTIuNjQ3NiA2LjM4MTY0IDEyLjY0NzYgNC45MDUzMkMxMi42NDc2IDMuNDkzNTkgMTEuNTA4MSAyLjM1MjQ4IDEwLjEwNjYgMi4zNTI0OEM5LjI3MDU5IDIuMzUyNDggOC44MTg5NCAyLjY0MzIzIDguNTM5NyAyLjk1ODQzQzguMjc4NzcgMy4yNTI5NSA4LjE0NjIzIDMuNTg1NjYgOC4wMjUwMSAzLjg4OTkzQzguMDAzOTEgMy45NDI5IDcuOTgzMTUgMy45OTUwMSA3Ljk2MjExIDQuMDQ1OTFDNy44ODQ4MiA0LjIzMjk0IDcuNzAyNCA0LjM1NDk0IDcuNTAwMDIgNC4zNTQ5NEM3LjI5NzY1IDQuMzU0OTQgNy4xMTUyMyA0LjIzMjk1IDcuMDM3OTMgNC4wNDU5MkM3LjAxNjg5IDMuOTk1MDEgNi45OTYxMiAzLjk0Mjg5IDYuOTc1MDIgMy44ODk5QzYuODUzOCAzLjU4NTY0IDYuNzIxMjYgMy4yNTI5NCA2LjQ2MDM0IDIuOTU4NDNDNi4xODEwOSAyLjY0MzIzIDUuNzI5NDUgMi4zNTI0OCA0Ljg5MzQ2IDIuMzUyNDhaTTEuMzUyNDggNC45MDUzMkMxLjM1MjQ4IDIuOTQ0OTggMi45MzYgMS4zNTI0OCA0Ljg5MzQ2IDEuMzUyNDhDNi4wMDg0IDEuMzUyNDggNi43MzUwNCAxLjc2MDQ5IDcuMjA4ODQgMi4yOTUzQzcuMzIwNjIgMi40MjE0NyA3LjQxNjg2IDIuNTUzODIgNy41MDAwMiAyLjY4NTQ1QzcuNTgzMTggMi41NTM4MiA3LjY3OTQxIDIuNDIxNDcgNy43OTExOSAyLjI5NTNDOC4yNjUgMS43NjA0OSA4Ljk5MTY0IDEuMzUyNDggMTAuMTA2NiAxLjM1MjQ4QzEyLjA2NCAxLjM1MjQ4IDEzLjY0NzYgMi45NDQ5OCAxMy42NDc2IDQuOTA1MzJDMTMuNjQ3NiA2Ljc0MDQxIDEyLjYwMTMgOC41MDUwOCAxMS40MDA4IDkuOTY5MjdDMTAuMjYzNiAxMS4zNTYyIDguOTIxOTQgMTIuNTUwOCA4LjAwNjAxIDEzLjM2NjRDNy45NDY0NSAxMy40MTk0IDcuODg4NjkgMTMuNDcwOSA3LjgzMjkxIDEzLjUyMDZDNy42NDMyNCAxMy42ODk5IDcuMzU2OCAxMy42ODk5IDcuMTY3MTMgMTMuNTIwNkM3LjExMTM1IDEzLjQ3MDkgNy4wNTM1OSAxMy40MTk0IDYuOTk0MDMgMTMuMzY2NEM2LjA3ODEgMTIuNTUwOCA0LjczNjQxIDExLjM1NjIgMy41OTkyNiA5Ljk2OTI3QzIuMzk4NzIgOC41MDUwOCAxLjM1MjQ4IDYuNzQwNDEgMS4zNTI0OCA0LjkwNTMyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMncgPSBbXCJjb2xvclwiXTtcbnZhciBIZWFydEZpbGxlZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMncpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjM1MjQ4IDQuOTA1MzJDMS4zNTI0OCAyLjk0NDk4IDIuOTM2IDEuMzUyNDggNC44OTM0NiAxLjM1MjQ4QzYuMjU3NjkgMS4zNTI0OCA2Ljg2MDU4IDEuOTIzMzYgNy41MDAwMiAyLjkzNTQ1QzguMTM5NDYgMS45MjMzNiA4Ljc0MjM1IDEuMzUyNDggMTAuMTA2NiAxLjM1MjQ4QzEyLjA2NCAxLjM1MjQ4IDEzLjY0NzYgMi45NDQ5OCAxMy42NDc2IDQuOTA1MzJDMTMuNjQ3NiA2Ljc0MDQxIDEyLjYwMTMgOC41MDUwOCAxMS40MDA4IDkuOTY5MjdDMTAuMjYzNiAxMS4zNTYyIDguOTIxOTQgMTIuNTUwOCA4LjAwNjAxIDEzLjM2NjRDNy45NDY0NSAxMy40MTk0IDcuODg4NjkgMTMuNDcwOSA3LjgzMjkxIDEzLjUyMDZDNy42NDMyNCAxMy42ODk5IDcuMzU2OCAxMy42ODk5IDcuMTY3MTMgMTMuNTIwNkM3LjExMTM1IDEzLjQ3MDkgNy4wNTM1OSAxMy40MTk0IDYuOTk0MDMgMTMuMzY2NEM2LjA3ODEgMTIuNTUwOCA0LjczNjQxIDExLjM1NjIgMy41OTkyNiA5Ljk2OTI3QzIuMzk4NzIgOC41MDUwOCAxLjM1MjQ4IDYuNzQwNDEgMS4zNTI0OCA0LjkwNTMyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMnggPSBbXCJjb2xvclwiXTtcbnZhciBIZWlnaHRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJ4KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy4xODEzIDEuNjgxNzlDNy4zNTcwNCAxLjUwNjA1IDcuNjQxOTYgMS41MDYwNSA3LjgxNzcgMS42ODE3OUwxMC4zMTc3IDQuMTgxNzlDMTAuNDkzNCA0LjM1NzUzIDEwLjQ5MzQgNC42NDI0NSAxMC4zMTc3IDQuODE4MTlDMTAuMTQyIDQuOTkzOTIgOS44NTcwNCA0Ljk5MzkyIDkuNjgxMyA0LjgxODE5TDcuOTQ5NSAzLjA4NjM4TDcuOTQ5NSAxMS45MTM2TDkuNjgxMyAxMC4xODE4QzkuODU3MDQgMTAuMDA2MSAxMC4xNDIgMTAuMDA2MSAxMC4zMTc3IDEwLjE4MThDMTAuNDkzNCAxMC4zNTc1IDEwLjQ5MzQgMTAuNjQyNCAxMC4zMTc3IDEwLjgxODJMNy44MTc3IDEzLjMxODJDNy43MzMzMSAxMy40MDI2IDcuNjE4ODUgMTMuNDUgNy40OTk1IDEzLjQ1QzcuMzgwMTUgMTMuNDUgNy4yNjU2OSAxMy40MDI2IDcuMTgxMyAxMy4zMTgyTDQuNjgxMyAxMC44MTgyQzQuNTA1NTcgMTAuNjQyNCA0LjUwNTU3IDEwLjM1NzUgNC42ODEzIDEwLjE4MThDNC44NTcwNCAxMC4wMDYxIDUuMTQxOTYgMTAuMDA2MSA1LjMxNzcgMTAuMTgxOEw3LjA0OTUgMTEuOTEzNkw3LjA0OTUgMy4wODYzOEw1LjMxNzcgNC44MTgxOUM1LjE0MTk2IDQuOTkzOTIgNC44NTcwNCA0Ljk5MzkyIDQuNjgxMyA0LjgxODE5QzQuNTA1NTcgNC42NDI0NSA0LjUwNTU3IDQuMzU3NTMgNC42ODEzIDQuMTgxNzlMNy4xODEzIDEuNjgxNzlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyeSA9IFtcImNvbG9yXCJdO1xudmFyIEhvYmJ5S25pZmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJ5KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTIuMzUzNiAxMy4zNTM2QzEyLjE1ODMgMTMuNTQ4OCAxMS44NDE3IDEzLjU0ODggMTEuNjQ2NSAxMy4zNTM2TDYuMzk2NDUgOC4xMDM1NUM2LjM2NDc4IDguMDcxODggNi4zMzgyNCA4LjAzNzAyIDYuMzE2ODUgOEg1LjAwMDAyQzQuNzg3MTkgOCA0LjU5NzY5IDcuODY1MjggNC41Mjc3NyA3LjY2NDI2TDIuMTI3NzcgMC43NjQyNzdDMi4wNTI2OCAwLjU0ODM4NyAyLjEzMzU1IDAuMzA5MDYxIDIuMzI0MiAwLjE4Mjk3MkMyLjUxNDg2IDAuMDU2ODgxOSAyLjc2Njc0IDAuMDc2MTMzNyAyLjkzNjAyIDAuMjI5NzM0TDguMzM2IDUuMTI5NzJDOC40NDA0NCA1LjIyNDQ5IDguNTAwMDEgNS4zNTg5NyA4LjUwMDAxIDUuNVY1LjgxNjg0QzguNTM3MDIgNS44MzgyNCA4LjU3MTg5IDUuODY0NzggOC42MDM1NiA1Ljg5NjQ1TDEzLjg1MzYgMTEuMTQ2NEMxNC4wNDg4IDExLjM0MTcgMTQuMDQ4OCAxMS42NTgzIDEzLjg1MzYgMTEuODUzNkwxMi4zNTM2IDEzLjM1MzZaTTguMjUgNi45NTcxMUw3LjQ1NzExIDcuNzVMMTIgMTIuMjkyOUwxMi43OTI5IDExLjVMOC4yNSA2Ljk1NzExWk0zLjcxNjY5IDIuMjg4NDVMNS4zNTU0OSA3SDYuMjkyOUw3LjUwMDAxIDUuNzkyODlWNS43MjE0NkwzLjcxNjY5IDIuMjg4NDVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyeiA9IFtcImNvbG9yXCJdO1xudmFyIEhvbWVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJ6KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy4wNzkyNiAwLjIyMjI1M0M3LjMxMjc1IC0wLjAwNzQzNCA3LjY4NzMgLTAuMDA3NDM0IDcuOTIwNzkgMC4yMjIyNTNMMTQuNjcwOCA2Ljg2MjI3QzE0LjkwNyA3LjA5NDY1IDE0LjkxMDEgNy40NzQ1MyAxNC42Nzc4IDcuNzEwNzZDMTQuNDQ1NCA3Ljk0NyAxNC4wNjU1IDcuOTUwMTIgMTMuODI5MyA3LjcxNzczTDEzIDYuOTAyMDFWMTIuNUMxMyAxMi43NzYxIDEyLjc3NjIgMTMgMTIuNSAxM0gyLjUwMDAyQzIuMjIzODggMTMgMi4wMDAwMiAxMi43NzYxIDIuMDAwMDIgMTIuNVY2LjkwMjAxTDEuMTcwNzkgNy43MTc3M0MwLjkzNDU1OCA3Ljk1MDEyIDAuNTU0NjcyIDcuOTQ3IDAuMzIyMjkgNy43MTA3NkMwLjA4OTkwNzkgNy40NzQ1MyAwLjA5MzAyODMgNy4wOTQ2NSAwLjMyOTI2IDYuODYyMjdMNy4wNzkyNiAwLjIyMjI1M1pNNy41MDAwMiAxLjQ5MTYzTDEyIDUuOTE4MzFWMTJIMTBWOC40OTk5OUMxMCA4LjIyMzg1IDkuNzc2MTcgNy45OTk5OSA5LjUwMDAyIDcuOTk5OTlINi41MDAwMkM2LjIyMzg4IDcuOTk5OTkgNi4wMDAwMiA4LjIyMzg1IDYuMDAwMDIgOC40OTk5OVYxMkgzLjAwMDAyVjUuOTE4MzFMNy41MDAwMiAxLjQ5MTYzWk03LjAwMDAyIDEySDkuMDAwMDJWOC45OTk5OUg3LjAwMDAyVjEyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMkEgPSBbXCJjb2xvclwiXTtcbnZhciBJY29uSmFyTG9nb0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMkEpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjUgMC4wMDMyOTU5QzYuODA0NzMgMC4wMDMyOTU5IDYuMjQ5NTMgMC4yODExMDYgNi4yNSAwLjc0OTk5NUM2LjI1IDAuOTk3MjU4IDYuNDI0NDYgMS4xMjAxNCA2LjU3Njg3IDEuMjI3NDlDNi42OTUwNyAxLjMxMDc0IDYuOCAxLjM4NDY1IDYuOCAxLjVDNi44IDEuNzA3MSA2LjA2MjI0IDEuNzQyNjQgNS4xOTc4OSAxLjc4NDI3QzMuOTc1NTMgMS44NDMxNCAyLjUgMS45MTQyMSAyLjUgMi41QzIuNSAyLjc3NjE0IDIuNzIzODYgMyAzIDNIMTJDMTIuMjc2MSAzIDEyLjUgMi43NzYxNCAxMi41IDIuNUMxMi41IDEuOTE0MjEgMTEuMDI0NSAxLjg0MzE0IDkuODAyMTEgMS43ODQyN0M4LjkzNzc2IDEuNzQyNjQgOC4yIDEuNzA3MSA4LjIgMS41QzguMiAxLjM4NDY1IDguMzA0OTMgMS4zMTA3NCA4LjQyMzEzIDEuMjI3NDlDOC41NzU1NCAxLjEyMDE0IDguNzUgMC45OTcyNTggOC43NSAwLjc0OTk5NUM4Ljc1MDQ3IDAuMjgxMTA2IDguMTk1MjcgMC4wMDMyOTU5IDcuNSAwLjAwMzI5NTlaTTIuODk0NTEgNi4xMjI2NkMyLjI1ODA2IDYuNTI0NzEgMS45MDQxNyA3LjMxMTE4IDIuMDI0NzMgOC4wNTU2TDIuODM1ODggMTIuNDc3MkMzLjAwOTkzIDEzLjM1NjIgMy43NjI5IDE0IDQuNjYwNjEgMTRIMTAuMzM3M0MxMS4yMzU0IDE0IDExLjk4ODQgMTMuMzU2MiAxMi4xNjI1IDEyLjQ3NzJMMTIuOTczNiA4LjA1NjA3QzEzLjA4OSA3LjMyMzU4IDEyLjgyODQgNi41MzI3NiAxMi4xMzMxIDYuMDkzNzNDMTEuNzI4MyA1LjgzMDEzIDExLjY0MTIgNS4zMzIzMSAxMi4xMzMxIDUuMTI3OTZDMTIuODI4NCA0Ljg2NDM1IDEyLjY5NDggNCAxMiA0SDEwLjMwMDFINi44MDAwNUgyLjk5OTk2QzIuMzA0NjkgNCAyLjE5ODc4IDQuODkzMjggMi44OTQ1MSA1LjE1Njg5QzMuMzg2NDIgNS4zMzIzMSAzLjI5OTM5IDUuODMwMTMgMi44OTQ1MSA2LjEyMjY2Wk04LjIwMDA2IDYuMjVDOC4yMDAwNiA1LjgxNzY5IDguMDg1NzIgNS4zNzYxNSA3LjkwNjM1IDVMNC4xMTA5MyA1QzQuMjA2MjYgNS4yMTMxMiA0LjI0MTkgNS40Mzg4OSA0LjIyOTA0IDUuNjU1MjFDNC4xOTUyMiA2LjIyNDEyIDMuODQ1ODcgNi42Njg5OSAzLjQ4MDE2IDYuOTMzMjJMMy40NTQ5MiA2Ljk1MTQ2TDMuNDI4NTggNi45NjgxQzMuMTM0MDcgNy4xNTQxNCAyLjk1ODAxIDcuNTM5ODkgMy4wMTA1OCA3Ljg4NzQ5TDMuODE3OTcgMTIuMjg4NkMzLjkwNTEzIDEyLjcxNTQgNC4yNjE0OCAxMyA0LjY2MDYxIDEzSDEwLjMzNzNDMTAuNzM3IDEzIDExLjA5MzIgMTIuNzE1MyAxMS4xODA0IDEyLjI4ODZMMTEuOTg3NCA3Ljg4OThDMTIuMDQ4IDcuNDgyNDcgMTEuODk1NCA3LjEyNjMxIDExLjU5OTIgNi45MzkyN0wxMS41ODc1IDYuOTMxODRMMTEuNTg3NSA2LjkzMTc2QzExLjE5NDcgNi42NzYwMiAxMC44MzMxIDYuMjI3ODUgMTAuNzk4NiA1LjY0Nzk4QzEwLjc4NDYgNS40MTIgMTAuODI2NCA1LjE5Mzk3IDEwLjkxMTIgNUg5LjA1NTE3QzkuMDE5ODcgNS4xNDYxMSA5LjAwMDA2IDUuMzEyMDEgOS4wMDAwNiA1LjVDOS4wMDAwNiA1Ljk3NDUgOS4yMTY3OSA2LjM3MTI3IDkuNDQzNjcgNi43ODY2MkM5LjY5Mjg0IDcuMjQyNzggOS45NTQyNSA3LjcyMTM2IDkuOTU0MjUgOC4zNDk5M0M5Ljk1NDI1IDkuMjY5OCA5LjQ5ODY4IDkuODQyMDUgOC42MjE4OSA5Ljg0MjA1QzguMTMyMDYgOS44NDIwNSA3LjU3ODE4IDkuNDYwOTcgNy41NzgxOCA4Ljc1NzgxQzcuNTc4MTggOC4zNTI3OSA3LjcxNTU4IDguMDE2NDYgNy44NjEyMSA3LjY1OTk4QzguMDI1NCA3LjI1ODA2IDguMjAwMDYgNi44MzA1MSA4LjIwMDA2IDYuMjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyQiA9IFtcImNvbG9yXCJdO1xudmFyIElkQ2FyZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMkIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xNCAxMS4wMDAxVjQuMDAwMDZMMSA0LjAwMDA2TDEgMTEuMDAwMUgxNFpNMTUgNC4wMDAwNlYxMS4wMDAxQzE1IDExLjU1MjMgMTQuNTUyMyAxMi4wMDAxIDE0IDEyLjAwMDFIMUMwLjQ0NzcxNSAxMi4wMDAxIDAgMTEuNTUyMyAwIDExLjAwMDFWNC4wMDAwNkMwIDMuNDQ3NzggMC40NDc3MTUgMy4wMDAwNiAxIDMuMDAwMDZIMTRDMTQuNTUyMyAzLjAwMDA2IDE1IDMuNDQ3NzggMTUgNC4wMDAwNlpNMiA1LjI1QzIgNS4xMTE5MyAyLjExMTkzIDUgMi4yNSA1SDUuNzVDNS44ODgwNyA1IDYgNS4xMTE5MyA2IDUuMjVWOS43NUM2IDkuODg4MDcgNS44ODgwNyAxMCA1Ljc1IDEwSDIuMjVDMi4xMTE5MyAxMCAyIDkuODg4MDcgMiA5Ljc1VjUuMjVaTTcuNSA3QzcuMjIzODYgNyA3IDcuMjIzODYgNyA3LjVDNyA3Ljc3NjE0IDcuMjIzODYgOCA3LjUgOEgxMC41QzEwLjc3NjEgOCAxMSA3Ljc3NjE0IDExIDcuNUMxMSA3LjIyMzg2IDEwLjc3NjEgNyAxMC41IDdINy41Wk03IDkuNUM3IDkuMjIzODYgNy4yMjM4NiA5IDcuNSA5SDEyLjVDMTIuNzc2MSA5IDEzIDkuMjIzODYgMTMgOS41QzEzIDkuNzc2MTQgMTIuNzc2MSAxMCAxMi41IDEwSDcuNUM3LjIyMzg2IDEwIDcgOS43NzYxNCA3IDkuNVpNNy41IDVDNy4yMjM4NiA1IDcgNS4yMjM4NiA3IDUuNUM3IDUuNzc2MTQgNy4yMjM4NiA2IDcuNSA2SDExLjVDMTEuNzc2MSA2IDEyIDUuNzc2MTQgMTIgNS41QzEyIDUuMjIzODYgMTEuNzc2MSA1IDExLjUgNUg3LjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyQyA9IFtcImNvbG9yXCJdO1xudmFyIEltYWdlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyQyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuNSAxSDEyLjVDMTMuMzI4NCAxIDE0IDEuNjcxNTcgMTQgMi41VjEyLjVDMTQgMTMuMzI4NCAxMy4zMjg0IDE0IDEyLjUgMTRIMi41QzEuNjcxNTcgMTQgMSAxMy4zMjg0IDEgMTIuNVYyLjVDMSAxLjY3MTU3IDEuNjcxNTcgMSAyLjUgMVpNMi41IDJDMi4yMjM4NiAyIDIgMi4yMjM4NiAyIDIuNVY4LjM2MzZMMy42ODE4IDYuNjgxOEMzLjc2ODA5IDYuNTk1NTEgMy44ODU3MiA2LjU0Nzk3IDQuMDA3NzQgNi41NTAwN0M0LjEyOTc1IDYuNTUyMTYgNC4yNDU2OCA2LjYwMzcyIDQuMzI4OTUgNi42OTI5M0w3Ljg3MzU1IDEwLjQ5MDFMMTAuNjgxOCA3LjY4MThDMTAuODU3NSA3LjUwNjA3IDExLjE0MjUgNy41MDYwNyAxMS4zMTgyIDcuNjgxOEwxMyA5LjM2MzZWMi41QzEzIDIuMjIzODYgMTIuNzc2MSAyIDEyLjUgMkgyLjVaTTIgMTIuNVY5LjYzNjRMMy45ODg4NyA3LjY0NzUzTDcuNTMxMSAxMS40NDIxTDguOTQxMTMgMTNIMi41QzIuMjIzODYgMTMgMiAxMi43NzYxIDIgMTIuNVpNMTIuNSAxM0gxMC4xNTVMOC40ODMzNiAxMS4xNTNMMTEgOC42MzY0TDEzIDEwLjYzNjRWMTIuNUMxMyAxMi43NzYxIDEyLjc3NjEgMTMgMTIuNSAxM1pNNi42NDkyMiA1LjVDNi42NDkyMiA1LjAzMDEzIDcuMDMwMTMgNC42NDkyMiA3LjUgNC42NDkyMkM3Ljk2OTg3IDQuNjQ5MjIgOC4zNTA3OCA1LjAzMDEzIDguMzUwNzggNS41QzguMzUwNzggNS45Njk4NyA3Ljk2OTg3IDYuMzUwNzggNy41IDYuMzUwNzhDNy4wMzAxMyA2LjM1MDc4IDYuNjQ5MjIgNS45Njk4NyA2LjY0OTIyIDUuNVpNNy41IDMuNzQ5MjJDNi41MzMwNyAzLjc0OTIyIDUuNzQ5MjIgNC41MzMwNyA1Ljc0OTIyIDUuNUM1Ljc0OTIyIDYuNDY2OTMgNi41MzMwNyA3LjI1MDc4IDcuNSA3LjI1MDc4QzguNDY2OTMgNy4yNTA3OCA5LjI1MDc4IDYuNDY2OTMgOS4yNTA3OCA1LjVDOS4yNTA3OCA0LjUzMzA3IDguNDY2OTMgMy43NDkyMiA3LjUgMy43NDkyMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJEID0gW1wiY29sb3JcIl07XG52YXIgSW5mb0NpcmNsZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJEKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy40OTk5MSAwLjg3Njg5MkMzLjg0MjIyIDAuODc2ODkyIDAuODc3MDc1IDMuODQyMDQgMC44NzcwNzUgNy40OTk3MkMwLjg3NzA3NSAxMS4xNTc0IDMuODQyMjIgMTQuMTIyNiA3LjQ5OTkxIDE0LjEyMjZDMTEuMTU3NiAxNC4xMjI2IDE0LjEyMjcgMTEuMTU3NCAxNC4xMjI3IDcuNDk5NzJDMTQuMTIyNyAzLjg0MjA0IDExLjE1NzYgMC44NzY4OTIgNy40OTk5MSAwLjg3Njg5MlpNMS44MjcwNyA3LjQ5OTcyQzEuODI3MDcgNC4zNjY3MSA0LjM2Njg5IDEuODI2ODkgNy40OTk5MSAxLjgyNjg5QzEwLjYzMjkgMS44MjY4OSAxMy4xNzI3IDQuMzY2NzEgMTMuMTcyNyA3LjQ5OTcyQzEzLjE3MjcgMTAuNjMyNyAxMC42MzI5IDEzLjE3MjYgNy40OTk5MSAxMy4xNzI2QzQuMzY2ODkgMTMuMTcyNiAxLjgyNzA3IDEwLjYzMjcgMS44MjcwNyA3LjQ5OTcyWk04LjI0OTkyIDQuNDk5OTlDOC4yNDk5MiA0LjkxNDIgNy45MTQxMyA1LjI0OTk5IDcuNDk5OTIgNS4yNDk5OUM3LjA4NTcxIDUuMjQ5OTkgNi43NDk5MiA0LjkxNDIgNi43NDk5MiA0LjQ5OTk5QzYuNzQ5OTIgNC4wODU3NyA3LjA4NTcxIDMuNzQ5OTkgNy40OTk5MiAzLjc0OTk5QzcuOTE0MTMgMy43NDk5OSA4LjI0OTkyIDQuMDg1NzcgOC4yNDk5MiA0LjQ5OTk5Wk02LjAwMDAzIDUuOTk5OTlINi41MDAwM0g3LjUwMDAzQzcuNzc2MTggNS45OTk5OSA4LjAwMDAzIDYuMjIzODQgOC4wMDAwMyA2LjQ5OTk5VjkuOTk5OTlIOC41MDAwM0g5LjAwMDAzVjExSDguNTAwMDNINy41MDAwM0g2LjUwMDAzSDYuMDAwMDNWOS45OTk5OUg2LjUwMDAzSDcuMDAwMDNWNi45OTk5OUg2LjUwMDAzSDYuMDAwMDNWNS45OTk5OVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJFID0gW1wiY29sb3JcIl07XG52YXIgSW5wdXRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJFKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNi41IDFDNi4yMjM4NiAxIDYgMS4yMjM4NiA2IDEuNUM2IDEuNzc2MTQgNi4yMjM4NiAyIDYuNSAyQzcuMTI2NzEgMiA3LjQ1NzE4IDIuMjAwMjggNy42NTU2MyAyLjQ3ODEyQzcuODc4MSAyLjc4OTU3IDggMy4yODgzNyA4IDRWMTFDOCAxMS43MTE2IDcuODc4MSAxMi4yMTA0IDcuNjU1NjMgMTIuNTIxOUM3LjQ1NzE4IDEyLjc5OTcgNy4xMjY3MSAxMyA2LjUgMTNDNi4yMjM4NiAxMyA2IDEzLjIyMzkgNiAxMy41QzYgMTMuNzc2MSA2LjIyMzg2IDE0IDYuNSAxNEM3LjM3MzI5IDE0IDguMDQyODIgMTMuNzAwMyA4LjQ2OTM3IDEzLjEwMzFDOC40Nzk3NiAxMy4wODg2IDguNDg5OTcgMTMuMDczOSA4LjUgMTMuMDU5MUM4LjUxMDAzIDEzLjA3MzkgOC41MjAyNCAxMy4wODg2IDguNTMwNjMgMTMuMTAzMUM4Ljk1NzE4IDEzLjcwMDMgOS42MjY3MSAxNCAxMC41IDE0QzEwLjc3NjEgMTQgMTEgMTMuNzc2MSAxMSAxMy41QzExIDEzLjIyMzkgMTAuNzc2MSAxMyAxMC41IDEzQzkuODczMjkgMTMgOS41NDI4MiAxMi43OTk3IDkuMzQ0MzcgMTIuNTIxOUM5LjEyMTkgMTIuMjEwNCA5IDExLjcxMTYgOSAxMVY0QzkgMy4yODgzNyA5LjEyMTkgMi43ODk1NyA5LjM0NDM3IDIuNDc4MTJDOS41NDI4MiAyLjIwMDI4IDkuODczMjkgMiAxMC41IDJDMTAuNzc2MSAyIDExIDEuNzc2MTQgMTEgMS41QzExIDEuMjIzODYgMTAuNzc2MSAxIDEwLjUgMUM5LjYyNjcxIDEgOC45NTcxOCAxLjI5OTcyIDguNTMwNjMgMS44OTY4OEM4LjUyMDI0IDEuOTExNDMgOC41MTAwMyAxLjkyNjExIDguNSAxLjk0MDlDOC40ODk5NyAxLjkyNjExIDguNDc5NzYgMS45MTE0MyA4LjQ2OTM3IDEuODk2ODhDOC4wNDI4MiAxLjI5OTcyIDcuMzczMjkgMSA2LjUgMVpNMTQgNUgxMVY0SDE0QzE0LjU1MjMgNCAxNSA0LjQ0NzcyIDE1IDVWMTBDMTUgMTAuNTUyMyAxNC41NTIzIDExIDE0IDExSDExVjEwSDE0VjVaTTYgNFY1SDFMMSAxMEg2VjExSDFDMC40NDc3MTUgMTEgMCAxMC41NTIzIDAgMTBWNUMwIDQuNDQ3NzIgMC40NDc3MTUgNCAxIDRINlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJGID0gW1wiY29sb3JcIl07XG52YXIgSW5zdGFncmFtTG9nb0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMkYpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGQ6IFwiTTEyLjkwOTEgMTIuOTA5QzEzLjIzNjUgMTIuNTgxNyAxMy40OTE4IDEyLjE4OTUgMTMuNjU4OCAxMS43NTc3QzEzLjgxOTUgMTEuMzQ0MyAxMy45Mjk0IDEwLjg3MTggMTMuOTYxIDEwLjE3OTlDMTMuOTkyNiA5LjQ4NjY1IDE0LjAwMDEgOS4yNjUyOSAxNC4wMDAxIDcuNTAwMDFDMTQuMDAwMSA1LjczNDczIDEzLjk5MjYgNS41MTMyOCAxMy45NjEgNC44MjAwOEMxMy45Mjk0IDQuMTI4MjEgMTMuODE5NSAzLjY1NTczIDEzLjY1ODggMy4yNDIyOEMxMy40OTU2IDIuODA4NTcgMTMuMjM5OCAyLjQxNTY3IDEyLjkwOTEgMi4wOTFDMTIuNTg0NCAxLjc2MDI4IDEyLjE5MTUgMS41MDQzNyAxMS43NTc4IDEuMzQxMTNDMTEuMzQ0MyAxLjE4MDU2IDEwLjg3MTggMS4wNzA3IDEwLjE3OTkgMS4wMzkyNEM5LjQ4Njc1IDEuMDA3NDggOS4yNjUzNyAxIDcuNTAwMDYgMUM1LjczNDc2IDEgNS41MTMzMyAxLjAwNzQ4IDQuODIwMTQgMS4wMzkxMkM0LjEyODI2IDEuMDcwNyAzLjY1NTc4IDEuMTgwNTYgMy4yNDIzMyAxLjM0MTI1QzIuODA4NjIgMS41MDQ0NyAyLjQxNTczIDEuNzYwMzIgMi4wOTEwNSAyLjA5MDk4QzEuNzYwMzIgMi40MTU2MyAxLjUwNDQgMi44MDg1MiAxLjM0MTEzIDMuMjQyMjVDMS4xODA1NiAzLjY1NTczIDEuMDcwNyA0LjEyODIxIDEuMDM5MjQgNC44MjAwOEMxLjAwNzQ4IDUuNTEzMjggMSA1LjczNDcxIDEgNy41MDAwMUMxIDkuMjY1MzIgMS4wMDc0OCA5LjQ4Njc1IDEuMDM5MjQgMTAuMTc5OUMxLjA3MDgzIDEwLjg3MTggMS4xODA2OSAxMS4zNDQzIDEuMzQxMzggMTEuNzU3N0MxLjUwNDYgMTIuMTkxNSAxLjc2MDQ1IDEyLjU4NDMgMi4wOTExMSAxMi45MDlDMi40MTU3OCAxMy4yMzk3IDIuODA4NjcgMTMuNDk1NSAzLjI0MjM4IDEzLjY1ODdDMy42NTU4NiAxMy44MTk0IDQuMTI4MzQgMTMuOTI5MyA0LjgyMDE5IDEzLjk2MDlDNS41MTM0OCAxMy45OTI1IDUuNzM0ODMgMTQgNy41MDAxMiAxNEM5LjI2NTQgMTQgOS40ODY4NSAxMy45OTI1IDEwLjE4IDEzLjk2MDlDMTAuODcxOSAxMy45MjkzIDExLjM0NDQgMTMuODE5NCAxMS43NTc4IDEzLjY1ODdDMTIuMTg5NiAxMy40OTE3IDEyLjU4MTggMTMuMjM2NCAxMi45MDkxIDEyLjkwOVpNMS45OTk0OSA2LjczNDk2QzEuOTk5NzQgNi45NDUyNCAyLjAwMDA1IDcuMTk1NDMgMi4wMDAwNSA3LjUwMDAyQzIuMDAwMDUgNy44MDQ2MSAxLjk5OTc0IDguMDU0OCAxLjk5OTQ5IDguMjY1MDdDMS45OTg0OSA5LjA4NTk2IDEuOTk4MjQgOS4yOTg1NiAyLjAxOTYzIDkuNzY1NUMyLjA0NjI1IDEwLjM1MDkgMi4wNzgyMyAxMC43ODExIDIuMTc1ODggMTEuMTA1M0MyLjI2OTc2IDExLjQxNyAyLjM3NTA1IDExLjczNDIgMi43MTg4IDEyLjExNzFDMy4wNjI1NSAxMi40OTk5IDMuMzk0MTEgMTIuNjczMyAzLjgxNjQ1IDEyLjgwMDdDNC4yMzg3OSAxMi45MjggNC43Njk2IDEyLjk1NTQgNS4yMzA1MiAxMi45NzY0QzUuNzUzMzIgMTMuMDAwMyA1Ljk2MDUyIDEzLjAwMDIgNy4wNTcxNCAxMi45OTk5TDcuNTAwMDYgMTIuOTk5OUM3Ljc5MzA0IDEyLjk5OTkgOC4wMzU2OSAxMy4wMDAxIDguMjQwOSAxMy4wMDA0QzkuMDgxOTUgMTMuMDAxMyA5LjI5NDI1IDEzLjAwMTUgOS43NjU3NSAxMi45Nzk5QzEwLjM1MTIgMTIuOTUzMyAxMC43ODE0IDEyLjkyMTMgMTEuMTA1NiAxMi44MjM3QzExLjQxNzMgMTIuNzI5OCAxMS43MzQ1IDEyLjYyNDUgMTIuMTE3MyAxMi4yODA3QzEyLjUwMDEgMTEuOTM3IDEyLjY3MzUgMTEuNjA1NCAxMi44MDA5IDExLjE4MzFDMTIuOTI4MyAxMC43NjA3IDEyLjk1NTcgMTAuMjI5OSAxMi45NzY3IDkuNzY5MDJDMTMuMDAwNSA5LjI0Njg5IDEzLjAwMDQgOS4wNDAyNyAxMy4wMDAyIDcuOTQ3NDlWNy45NDczOEwxMy4wMDAxIDcuNTAwMzlMMTMuMDAwMSA3LjA1NzQ3QzEzLjAwMDQgNS45NjA4NSAxMy4wMDA1IDUuNzUzNjUgMTIuOTc2NiA1LjIzMDg1QzEyLjk1NTYgNC43Njk5MyAxMi45MjgyIDQuMjM5MTIgMTIuODAwOSAzLjgxNjc4QzEyLjY3MzUgMy4zOTQ0NSAxMi41MDAxIDMuMDYyODggMTIuMTE3MyAyLjcxOTEzQzExLjczNDUgMi4zNzUzOCAxMS40MTcyIDIuMjcwMDkgMTEuMTA1NiAyLjE3NjIxQzEwLjc4MTMgMi4wNzg1NiAxMC4zNTExIDIuMDQ2NTggOS43NjU3MSAyLjAxOTk2QzkuMjk0MjEgMS45OTgzNiA5LjA4MTk0IDEuOTk4NTkgOC4yNDA5MiAxLjk5OTUxSDguMjQwOTJDOC4wMzU3IDEuOTk5NzQgNy43OTMwNSAyLjAwMDAxIDcuNTAwMDYgMi4wMDAwMUw3LjA1NzA0IDEuOTk5OTNDNS45NjA1MSAxLjk5OTY0IDUuNzUzMzEgMS45OTk1OCA1LjIzMDUyIDIuMDIzNDNDNC43Njk2IDIuMDQ0NDYgNC4yMzg3OSAyLjA3MTgzIDMuODE2NDUgMi4xOTkyMUMzLjM5NDExIDIuMzI2NTkgMy4wNjI1NSAyLjQ5OTk5IDIuNzE4OCAyLjg4MjgxQzIuMzc1MDUgMy4yNjU2MiAyLjI2OTc2IDMuNTgyODYgMi4xNzU4OCAzLjg5NDUzQzIuMDc4MjMgNC4yMTg3NCAyLjA0NjI1IDQuNjQ4OTQgMi4wMTk2MyA1LjIzNDM3QzEuOTk4MjQgNS43MDEzMSAxLjk5ODQ5IDUuOTE0MDEgMS45OTk0OSA2LjczNDk2Wk03LjQ5OTk2IDUuMjUwMTVDNi4yNTc0MSA1LjI1MDE1IDUuMjUwMTIgNi4yNTc0NCA1LjI1MDEyIDcuNDk5OTlDNS4yNTAxMiA4Ljc0MjU0IDYuMjU3NDEgOS43NDk4MyA3LjQ5OTk2IDkuNzQ5ODNDOC43NDI1MSA5Ljc0OTgzIDkuNzQ5OCA4Ljc0MjU0IDkuNzQ5OCA3LjQ5OTk5QzkuNzQ5OCA2LjI1NzQ0IDguNzQyNTEgNS4yNTAxNSA3LjQ5OTk2IDUuMjUwMTVaTTQuMjUwMTIgNy40OTk5OUM0LjI1MDEyIDUuNzA1MTUgNS43MDUxMiA0LjI1MDE1IDcuNDk5OTYgNC4yNTAxNUM5LjI5NDggNC4yNTAxNSAxMC43NDk4IDUuNzA1MTUgMTAuNzQ5OCA3LjQ5OTk5QzEwLjc0OTggOS4yOTQ4MyA5LjI5NDggMTAuNzQ5OCA3LjQ5OTk2IDEwLjc0OThDNS43MDUxMiAxMC43NDk4IDQuMjUwMTIgOS4yOTQ4MyA0LjI1MDEyIDcuNDk5OTlaTTEwLjk2OTcgNC43ODAzQzExLjM4MzkgNC43ODAzIDExLjcxOTcgNC40NDQ1MiAxMS43MTk3IDQuMDMwM0MxMS43MTk3IDMuNjE2MDkgMTEuMzgzOSAzLjI4MDMgMTAuOTY5NyAzLjI4MDNDMTAuNTU1NSAzLjI4MDMgMTAuMjE5NyAzLjYxNjA5IDEwLjIxOTcgNC4wMzAzQzEwLjIxOTcgNC40NDQ1MiAxMC41NTU1IDQuNzgwMyAxMC45Njk3IDQuNzgwM1pcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyRyA9IFtcImNvbG9yXCJdO1xudmFyIEtleWJvYXJkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyRyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXG4gICAgZDogXCJNMTMuNSA0SDEuNUMxLjIyMzg2IDQgMSA0LjIyMzg2IDEgNC41VjEwLjVDMSAxMC43NzYxIDEuMjIzODYgMTEgMS41IDExSDEzLjVDMTMuNzc2MSAxMSAxNCAxMC43NzYxIDE0IDEwLjVWNC41QzE0IDQuMjIzODYgMTMuNzc2MSA0IDEzLjUgNFpNMS41IDNDMC42NzE1NzMgMyAwIDMuNjcxNTcgMCA0LjVWMTAuNUMwIDExLjMyODQgMC42NzE1NzMgMTIgMS41IDEySDEzLjVDMTQuMzI4NCAxMiAxNSAxMS4zMjg0IDE1IDEwLjVWNC41QzE1IDMuNjcxNTcgMTQuMzI4NCAzIDEzLjUgM0gxLjVaTTIgNUgzVjZIMlY1Wk01IDVINFY2SDVWNVpNNiA1SDdWNkg2VjVaTTkgNUg4VjZIOVY1Wk0xMCA1SDExVjZIMTBWNVpNMTMgNUgxMlY2SDEzVjVaTTExIDdIMTJWOEgxMVY3Wk0xMyA5SDEyVjEwSDEzVjlaTTkgN0gxMFY4SDlWN1pNOCA3SDdWOEg4VjdaTTUgN0g2VjhINVY3Wk00IDdIM1Y4SDRWN1pNMiA5SDNWMTBIMlY5Wk0xMSA5SDRWMTBIMTFWOVpcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQySCA9IFtcImNvbG9yXCJdO1xudmFyIExhcFRpbWVySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQySCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUuNDk5OTggMC41QzUuNDk5OTggMC4yMjM4NTggNS43MjM4MyAwIDUuOTk5OTggMEg3LjQ5OTk4SDguOTk5OThDOS4yNzYxMiAwIDkuNDk5OTggMC4yMjM4NTggOS40OTk5OCAwLjVDOS40OTk5OCAwLjc3NjE0MiA5LjI3NjEyIDEgOC45OTk5OCAxSDcuOTk5OThWMi4xMTkyMkM5LjA5ODMyIDIuMjA0MDkgMTAuMTE5IDIuNTY2MjIgMTAuOTkyIDMuMTM1NzJDMTEuMDExNiAzLjEwODUxIDExLjAzMzYgMy4wODI1MiAxMS4wNTggMy4wNTgwNkwxMi4wNTggMi4wNTgwNkMxMi4zMDIxIDEuODEzOTggMTIuNjk3OCAxLjgxMzk4IDEyLjk0MTkgMi4wNTgwNkMxMy4xODYgMi4zMDIxNCAxMy4xODYgMi42OTc4NiAxMi45NDE5IDIuOTQxOTRMMTEuOTY3IDMuOTE2ODJDMTMuMTU5NSA1LjA3OTI1IDEzLjkgNi43MDMxNCAxMy45IDguNDk5OThDMTMuOSAxMi4wMzQ2IDExLjAzNDYgMTQuOSA3LjQ5OTk4IDE0LjlDMy45NjUzNSAxNC45IDEuMDk5OTggMTIuMDM0NiAxLjA5OTk4IDguNDk5OThDMS4wOTk5OCA1LjEzMzYxIDMuNjk5MDQgMi4zNzQzIDYuOTk5OTggMi4xMTkyMlYxSDUuOTk5OThDNS43MjM4MyAxIDUuNDk5OTggMC43NzYxNDIgNS40OTk5OCAwLjVaTTIuMDk5OTggOC40OTk5OEMyLjA5OTk4IDUuNTE3NjQgNC41MTc2NCAzLjA5OTk4IDcuNDk5OTggMy4wOTk5OEMxMC40ODIzIDMuMDk5OTggMTIuOSA1LjUxNzY0IDEyLjkgOC40OTk5OEMxMi45IDExLjQ4MjMgMTAuNDgyMyAxMy45IDcuNDk5OTggMTMuOUM0LjUxNzY0IDEzLjkgMi4wOTk5OCAxMS40ODIzIDIuMDk5OTggOC40OTk5OFpNNy40OTk5OCA4LjQ5OTk4VjQuMDk5OThDNS4wNjk5MiA0LjA5OTk4IDMuMDk5OTggNi4wNjk5MiAzLjA5OTk4IDguNDk5OThDMy4wOTk5OCAxMC45MyA1LjA2OTkyIDEyLjkgNy40OTk5OCAxMi45QzguNzE1IDEyLjkgOS44MTUgMTIuNDA3NSAxMC42MTEyIDExLjYxMTJMNy40OTk5OCA4LjQ5OTk4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMkkgPSBbXCJjb2xvclwiXTtcbnZhciBMYXB0b3BJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJJKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMiA0LjI1QzIgNC4xMTE5MyAyLjExMTkzIDQgMi4yNSA0SDEyLjc1QzEyLjg4ODEgNCAxMyA0LjExMTkzIDEzIDQuMjVWMTEuNUgyVjQuMjVaTTIuMjUgM0MxLjU1OTY0IDMgMSAzLjU1OTY0IDEgNC4yNVYxMkgwVjEyLjVDMCAxMi43NzYxIDAuMjIzODU4IDEzIDAuNSAxM0gxNC41QzE0Ljc3NjEgMTMgMTUgMTIuNzc2MSAxNSAxMi41VjEySDE0VjQuMjVDMTQgMy41NTk2NCAxMy40NDA0IDMgMTIuNzUgM0gyLjI1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMkogPSBbXCJjb2xvclwiXTtcbnZhciBMYXllcnNJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJKKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy43NTQzMiAwLjgxOTUzN0M3LjU5NzQyIDAuNzI2ODIxIDcuNDAyNSAwLjcyNjgyMSA3LjI0NTU5IDAuODE5NTM3TDEuNzQ1NTkgNC4wNjk1NEMxLjU5MzM2IDQuMTU5NDkgMS40OTk5NiA0LjMyMzE3IDEuNDk5OTYgNC41QzEuNDk5OTYgNC42NzY4MyAxLjU5MzM2IDQuODQwNTEgMS43NDU1OSA0LjkzMDQ2TDcuMjQ1NTkgOC4xODA0NkM3LjQwMjUgOC4yNzMxOCA3LjU5NzQyIDguMjczMTggNy43NTQzMiA4LjE4MDQ2TDEzLjI1NDMgNC45MzA0NkMxMy40MDY2IDQuODQwNTEgMTMuNSA0LjY3NjgzIDEzLjUgNC41QzEzLjUgNC4zMjMxNyAxMy40MDY2IDQuMTU5NDkgMTMuMjU0MyA0LjA2OTU0TDcuNzU0MzIgMC44MTk1MzdaTTcuNDk5OTYgNy4xNjkyM0wyLjk4MjggNC41TDcuNDk5OTYgMS44MzA3N0wxMi4wMTcxIDQuNUw3LjQ5OTk2IDcuMTY5MjNaTTEuNTY5NSA3LjQ5NTY0QzEuNzA5OTggNy4yNTc5IDIuMDE2NTkgNy4xNzkwNiAyLjI1NDMyIDcuMzE5NTRMNy40OTk5NiAxMC40MTkyTDEyLjc0NTYgNy4zMTk1NEMxMi45ODMzIDcuMTc5MDYgMTMuMjg5OSA3LjI1NzkgMTMuNDMwNCA3LjQ5NTY0QzEzLjU3MDkgNy43MzMzNyAxMy40OTIxIDguMDM5OTggMTMuMjU0MyA4LjE4MDQ2TDcuNzU0MzIgMTEuNDMwNUM3LjU5NzQyIDExLjUyMzIgNy40MDI1IDExLjUyMzIgNy4yNDU1OSAxMS40MzA1TDEuNzQ1NTkgOC4xODA0NkMxLjUwNzg2IDguMDM5OTggMS40MjkwMSA3LjczMzM3IDEuNTY5NSA3LjQ5NTY0Wk0xLjU2OTQ5IDEwLjQ5NTZDMS43MDk5OCAxMC4yNTc5IDIuMDE2NTggMTAuMTc5MSAyLjI1NDMyIDEwLjMxOTVMNy40OTk5NiAxMy40MTkyTDEyLjc0NTYgMTAuMzE5NUMxMi45ODMzIDEwLjE3OTEgMTMuMjg5OSAxMC4yNTc5IDEzLjQzMDQgMTAuNDk1NkMxMy41NzA5IDEwLjczMzQgMTMuNDkyMSAxMS4wNCAxMy4yNTQzIDExLjE4MDVMNy43NTQzMiAxNC40MzA1QzcuNTk3NDIgMTQuNTIzMiA3LjQwMjUgMTQuNTIzMiA3LjI0NTU5IDE0LjQzMDVMMS43NDU1OSAxMS4xODA1QzEuNTA3ODUgMTEuMDQgMS40MjkwMSAxMC43MzM0IDEuNTY5NDkgMTAuNDk1NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJLID0gW1wiY29sb3JcIl07XG52YXIgTGF5b3V0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQySyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTkgMkg2VjEzSDlWMlpNMTAgMlYxM0gxMi41QzEyLjc3NjEgMTMgMTMgMTIuNzc2MSAxMyAxMi41VjIuNUMxMyAyLjIyMzg2IDEyLjc3NjEgMiAxMi41IDJIMTBaTTIuNSAySDVWMTNIMi41QzIuMjIzODYgMTMgMiAxMi43NzYxIDIgMTIuNVYyLjVDMiAyLjIyMzg2IDIuMjIzODYgMiAyLjUgMlpNMi41IDFDMS42NzE1NyAxIDEgMS42NzE1NyAxIDIuNVYxMi41QzEgMTMuMzI4NCAxLjY3MTU3IDE0IDIuNSAxNEgxMi41QzEzLjMyODQgMTQgMTQgMTMuMzI4NCAxNCAxMi41VjIuNUMxNCAxLjY3MTU3IDEzLjMyODQgMSAxMi41IDFIMi41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMkwgPSBbXCJjb2xvclwiXTtcbnZhciBMZXR0ZXJDYXNlQ2FwaXRhbGl6ZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMkwpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zLjY4OTc5IDIuNzVDMy44OTY2NyAyLjc0OTc5IDQuMDgyMzIgMi44NzcwMSA0LjE1Njc5IDMuMDcwMDNMNy4zNjY2MiAxMS4zOUM3LjQ2NjAyIDExLjY0NzcgNy4zMzc3NCAxMS45MzcxIDcuMDgwMSAxMi4wMzY1QzYuODIyNDcgMTIuMTM1OSA2LjUzMzA0IDEyLjAwNzYgNi40MzM2NSAxMS43NUw1LjM4MjUgOS4wMjUzN0gyLjAxMTMzTDAuOTY2OTkyIDExLjc0OUMwLjg2ODEyOCAxMi4wMDY4IDAuNTc4OTY0IDEyLjEzNTcgMC4zMjExMjYgMTIuMDM2OUMwLjA2MzI4NzggMTEuOTM4IC0wLjA2NTU4NjQgMTEuNjQ4OCAwLjAzMzI3NzQgMTEuMzkxTDMuMjIzNDQgMy4wNzA5OUMzLjI5NzUxIDIuODc3ODIgMy40ODI5IDIuNzUwMjEgMy42ODk3OSAyLjc1Wk0zLjY5MTc0IDQuNjQyODRMNS4wNTQ1OCA4LjE3NTM3SDIuMzM3MjRMMy42OTE3NCA0LjY0Mjg0Wk0xMC44OTg5IDUuMjA3MDNDOS4yNTgxOCA1LjIwNzAzIDguMDA5MTUgNi42ODU2OSA4LjAwOTE1IDguNjA5NzJDOC4wMDkxNSAxMC42MzM3IDkuMzU4MTggMTIuMDEyNCAxMC44OTg5IDEyLjAxMjRDMTEuNzIxNCAxMi4wMTI0IDEyLjU3NDQgMTEuNjY5MiAxMy4xNTQzIDExLjAyMTlWMTEuNTNDMTMuMTU0MyAxMS43Nzg1IDEzLjM1NTcgMTEuOTggMTMuNjA0MyAxMS45OEMxMy44NTI4IDExLjk4IDE0LjA1NDMgMTEuNzc4NSAxNC4wNTQzIDExLjUzVjUuNzJDMTQuMDU0MyA1LjQ3MTQ3IDEzLjg1MjggNS4yNyAxMy42MDQzIDUuMjdDMTMuMzU1NyA1LjI3IDEzLjE1NDMgNS40NzE0NyAxMy4xNTQzIDUuNzJWNi4yMjMxN0MxMi42MDU0IDUuNjAwOTUgMTEuNzkyNCA1LjIwNzAzIDEwLjg5ODkgNS4yMDcwM1pNMTMuMTU0MyA5Ljc5ODIzVjcuMzAxOTVDMTIuNzYzOSA2LjU4MTAxIDExLjk0MTQgNi4wNTc1NyAxMS4wODY4IDYuMDU3NTdDMTAuMTA4OCA2LjA1NzU3IDkuMDM1MDMgNi45NjU4MSA5LjAzNTAzIDguNjA5NTVDOS4wMzUwMyAxMC4xNTMzIDEwLjAwODggMTEuMTYxNSAxMS4wODY4IDExLjE2MTVDMTEuOTcwMSAxMS4xNjE1IDEyLjc3MTkgMTAuNDk1MiAxMy4xNTQzIDkuNzk4MjNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyTSA9IFtcImNvbG9yXCJdO1xudmFyIExldHRlckNhc2VMb3dlcmNhc2VJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJNKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy42OTg5OSA1LjIwNzAzQzIuMDU4MjMgNS4yMDcwMyAwLjgwOTIwNCA2LjY4NTY5IDAuODA5MjA0IDguNjA5NzJDMC44MDkyMDQgMTAuNjMzNyAyLjE1ODIzIDEyLjAxMjQgMy42OTg5OSAxMi4wMTI0QzQuNTIxMjYgMTIuMDEyNCA1LjM3NDAyIDExLjY2OTMgNS45NTM5IDExLjAyMjNWMTEuNTNDNS45NTM5IDExLjc3ODUgNi4xNTUzNyAxMS45OCA2LjQwMzkgMTEuOThDNi42NTI0MyAxMS45OCA2Ljg1MzkgMTEuNzc4NSA2Ljg1MzkgMTEuNTNWNS43MjAwMUM2Ljg1MzkgNS40NzE0OSA2LjY1MjQzIDUuMjcwMDEgNi40MDM5IDUuMjcwMDFDNi4xNTUzNyA1LjI3MDAxIDUuOTUzOSA1LjQ3MTQ5IDUuOTUzOSA1LjcyMDAxVjYuMjIyNjlDNS40MDUwNiA1LjYwMDc1IDQuNTkyMTggNS4yMDcwMyAzLjY5ODk5IDUuMjA3MDNaTTUuOTUzOSA5Ljc5OVY3LjMwMTE3QzUuNTYzMzkgNi41ODA2NCA0Ljc0MTE4IDYuMDU3NTcgMy44ODY4IDYuMDU3NTdDMi45MDg5IDYuMDU3NTcgMS44MzUwOCA2Ljk2NTgxIDEuODM1MDggOC42MDk1NUMxLjgzNTA4IDEwLjE1MzMgMi44MDg4OSAxMS4xNjE1IDMuODg2OCAxMS4xNjE1QzQuNzY5ODQgMTEuMTYxNSA1LjU3MTQxIDEwLjQ5NTcgNS45NTM5IDkuNzk5Wk0xMC43OTkgNS4yMDcwM0M5LjE1ODIzIDUuMjA3MDMgNy45MDkyIDYuNjg1NjkgNy45MDkyIDguNjA5NzJDNy45MDkyIDEwLjYzMzcgOS4yNTgyMyAxMi4wMTI0IDEwLjc5OSAxMi4wMTI0QzExLjYyMTUgMTIuMDEyNCAxMi40NzQ0IDExLjY2OTIgMTMuMDU0MyAxMS4wMjE4VjExLjUzQzEzLjA1NDMgMTEuNzc4NSAxMy4yNTU4IDExLjk4IDEzLjUwNDMgMTEuOThDMTMuNzUyOSAxMS45OCAxMy45NTQzIDExLjc3ODUgMTMuOTU0MyAxMS41M1Y1LjcyQzEzLjk1NDMgNS40NzE0NyAxMy43NTI5IDUuMjcgMTMuNTA0MyA1LjI3QzEzLjI1NTggNS4yNyAxMy4wNTQzIDUuNDcxNDcgMTMuMDU0MyA1LjcyVjYuMjIzMThDMTIuNTA1NSA1LjYwMDk1IDExLjY5MjQgNS4yMDcwMyAxMC43OTkgNS4yMDcwM1pNMTMuMDU0MyA5Ljc5ODIyVjcuMzAxOTZDMTIuNjY0IDYuNTgxMDIgMTEuODQxNSA2LjA1NzU3IDEwLjk4NjggNi4wNTc1N0MxMC4wMDg5IDYuMDU3NTcgOC45MzUwOCA2Ljk2NTgxIDguOTM1MDggOC42MDk1NUM4LjkzNTA4IDEwLjE1MzMgOS45MDg4OSAxMS4xNjE1IDEwLjk4NjggMTEuMTYxNUMxMS44NzAyIDExLjE2MTUgMTIuNjcyIDEwLjQ5NTIgMTMuMDU0MyA5Ljc5ODIyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMk4gPSBbXCJjb2xvclwiXTtcbnZhciBMZXR0ZXJDYXNlVG9nZ2xlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyTik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTExLjI4OTUgMi43NUMxMS40OTY0IDIuNzQ5NzkgMTEuNjgyMSAyLjg3NzAxIDExLjc1NjUgMy4wNzAwM0wxNC45NjY0IDExLjM5QzE1LjA2NTcgMTEuNjQ3NyAxNC45Mzc1IDExLjkzNzEgMTQuNjc5OCAxMi4wMzY1QzE0LjQyMjIgMTIuMTM1OSAxNC4xMzI4IDEyLjAwNzYgMTQuMDMzNCAxMS43NUwxMi45ODIyIDkuMDI1MzdIOS42MTEwNkw4LjU2NjcyIDExLjc0OUM4LjQ2Nzg2IDEyLjAwNjggOC4xNzg3IDEyLjEzNTcgNy45MjA4NiAxMi4wMzY5QzcuNjYzMDIgMTEuOTM4IDcuNTM0MTUgMTEuNjQ4OCA3LjYzMzAxIDExLjM5MUwxMC44MjMyIDMuMDcwOTlDMTAuODk3MiAyLjg3NzgyIDExLjA4MjYgMi43NTAyMSAxMS4yODk1IDIuNzVaTTExLjI5MTUgNC42NDI4NEwxMi42NTQzIDguMTc1MzdIOS45MzY5OEwxMS4yOTE1IDQuNjQyODRaTTIuODk4OTUgNS4yMDcwM0MxLjI1ODE4IDUuMjA3MDMgMC4wMDkxNTUyNyA2LjY4NTY5IDAuMDA5MTU1MjcgOC42MDk3MkMwLjAwOTE1NTI3IDEwLjYzMzcgMS4zNTgxOCAxMi4wMTI0IDIuODk4OTUgMTIuMDEyNEMzLjcyMTQxIDEyLjAxMjQgNC41NzQzOCAxMS42NjkyIDUuMTU0MjcgMTEuMDIxOVYxMS41M0M1LjE1NDI3IDExLjc3ODUgNS4zNTU3NCAxMS45OCA1LjYwNDI3IDExLjk4QzUuODUyOCAxMS45OCA2LjA1NDI3IDExLjc3ODUgNi4wNTQyNyAxMS41M1Y1LjcyQzYuMDU0MjcgNS40NzE0NyA1Ljg1MjggNS4yNyA1LjYwNDI3IDUuMjdDNS4zNTU3NCA1LjI3IDUuMTU0MjcgNS40NzE0NyA1LjE1NDI3IDUuNzJWNi4yMjMxN0M0LjYwNTQzIDUuNjAwOTUgMy43OTIzNiA1LjIwNzAzIDIuODk4OTUgNS4yMDcwM1pNNS4xNTQyNyA5Ljc5ODIzVjcuMzAxOTVDNC43NjM5MyA2LjU4MTAxIDMuOTQxNDQgNi4wNTc1NyAzLjA4Njc1IDYuMDU3NTdDMi4xMDg4NSA2LjA1NzU3IDEuMDM1MDMgNi45NjU4MSAxLjAzNTAzIDguNjA5NTVDMS4wMzUwMyAxMC4xNTMzIDIuMDA4ODUgMTEuMTYxNSAzLjA4Njc1IDExLjE2MTVDMy45NzAxMSAxMS4xNjE1IDQuNzcxOTUgMTAuNDk1MiA1LjE1NDI3IDkuNzk4MjNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyTyA9IFtcImNvbG9yXCJdO1xudmFyIExldHRlckNhc2VVcHBlcmNhc2VJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJPKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy42MjU1IDIuNzVDMy44MzQ3OCAyLjc1IDQuMDIxOTIgMi44ODAzNCA0LjA5NDQ4IDMuMDc2NjRMNy4xNjk4NSAxMS4zOTYyQzcuMjY1NiAxMS42NTUyIDcuMTMzMjQgMTEuOTQyOCA2Ljg3NDIzIDEyLjAzODZDNi42MTUyMiAxMi4xMzQzIDYuMzI3NjMgMTIuMDAyIDYuMjMxODggMTEuNzQyOUw1LjIyMzg3IDkuMDE2MDNIMi4wMjcxMkwxLjAxOTExIDExLjc0MjlDMC45MjMzNjIgMTIuMDAyIDAuNjM1Nzc0IDEyLjEzNDMgMC4zNzY3NjIgMTIuMDM4NkMwLjExNzc0OSAxMS45NDI4IC0wLjAxNDYwNTIgMTEuNjU1MiAwLjA4MTE0MDEgMTEuMzk2MkwzLjE1NjUxIDMuMDc2NjRDMy4yMjkwOCAyLjg4MDM0IDMuNDE2MjEgMi43NSAzLjYyNTUgMi43NVpNMy42MjU1IDQuNjkyMDdMNC45MDk2NiA4LjE2NjAzSDIuMzQxMzNMMy42MjU1IDQuNjkyMDdaTTExLjM3MTkgMi43NUMxMS41ODExIDIuNzUgMTEuNzY4MyAyLjg4MDM0IDExLjg0MDggMy4wNzY2NEwxNC45MTYyIDExLjM5NjJDMTUuMDEyIDExLjY1NTIgMTQuODc5NiAxMS45NDI4IDE0LjYyMDYgMTIuMDM4NkMxNC4zNjE2IDEyLjEzNDMgMTQuMDc0IDEyLjAwMiAxMy45NzgyIDExLjc0MjlMMTIuOTcwMiA5LjAxNjAzSDkuNzczNDhMOC43NjU0NyAxMS43NDI5QzguNjY5NzIgMTIuMDAyIDguMzgyMTMgMTIuMTM0MyA4LjEyMzEyIDEyLjAzODZDNy44NjQxMSAxMS45NDI4IDcuNzMxNzUgMTEuNjU1MiA3LjgyNzUgMTEuMzk2MkwxMC45MDI5IDMuMDc2NjRDMTAuOTc1NCAyLjg4MDM0IDExLjE2MjYgMi43NSAxMS4zNzE5IDIuNzVaTTExLjM3MTkgNC42OTIwN0wxMi42NTYgOC4xNjYwM0gxMC4wODc3TDExLjM3MTkgNC42OTIwN1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJQID0gW1wiY29sb3JcIl07XG52YXIgTGV0dGVyU3BhY2luZ0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMlApO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk00LjU1MjkzIDAuOTk5OTY5QzQuNzUyOTUgMC45OTk5NjkgNC45MzM3MiAxLjExOTE3IDUuMDEyNSAxLjMwMzAxTDguMDExMDYgOC4yOTk4MkM4LjExOTg0IDguNTUzNjMgOC4wMDIyNiA4Ljg0NzU3IDcuNzQ4NDQgOC45NTYzNUM3LjQ5NDYzIDkuMDY1MTIgNy4yMDA2OSA4Ljk0NzU0IDcuMDkxOTEgOC42OTM3M0w2LjExNjEzIDYuNDE2ODVIMi45ODk3M0wyLjAxMzk1IDguNjkzNzNDMS45MDUxNyA4Ljk0NzU0IDEuNjExMjMgOS4wNjUxMiAxLjM1NzQyIDguOTU2MzVDMS4xMDM2IDguODQ3NTcgMC45ODYwMjMgOC41NTM2MyAxLjA5NDggOC4yOTk4Mkw0LjA5MzM2IDEuMzAzMDFDNC4xNzIxNCAxLjExOTE3IDQuMzUyOTEgMC45OTk5NjkgNC41NTI5MyAwLjk5OTk2OVpNNC41NTI5MyAyLjc2OTI5TDUuNzUxODYgNS41NjY4NUgzLjM1NEw0LjU1MjkzIDIuNzY5MjlaTTExLjA1NjIgOS4wMDIxNEMxMS4yNjE3IDkuMDAyMTQgMTEuNDQ2MyA4Ljg3NjMzIDExLjUyMTUgOC42ODUwMkwxNC4yNzMzIDEuNjgyOTlDMTQuMzc0MyAxLjQyNTk4IDE0LjI0NzggMS4xMzU3NSAxMy45OTA4IDEuMDM0NzVDMTMuNzMzOCAwLjkzMzc0NyAxMy40NDM2IDEuMDYwMjEgMTMuMzQyNiAxLjMxNzIyTDExLjA1NjIgNy4xMzUxNEw4Ljc2OTczIDEuMzE3MjJDOC42Njg3MyAxLjA2MDIxIDguMzc4NSAwLjkzMzc0NyA4LjEyMTUgMS4wMzQ3NUM3Ljg2NDQ5IDEuMTM1NzUgNy43MzgwMiAxLjQyNTk4IDcuODM5MDIgMS42ODI5OUwxMC41OTA4IDguNjg1MDJDMTAuNjY2IDguODc2MzMgMTAuODUwNiA5LjAwMjE0IDExLjA1NjIgOS4wMDIxNFpNMTQuOTUzNyAxMi40OTk5QzE0Ljk1MzcgMTIuNjA2IDE0LjkxMTUgMTIuNzA3NyAxNC44MzY1IDEyLjc4MjhMMTIuODM2NSAxNC43ODI4QzEyLjY4MDMgMTQuOTM5IDEyLjQyNzEgMTQuOTM5IDEyLjI3MDggMTQuNzgyOEMxMi4xMTQ2IDE0LjYyNjUgMTIuMTE0NiAxNC4zNzMzIDEyLjI3MDggMTQuMjE3MUwxMy41ODggMTIuODk5OUgxLjUxOTM3TDIuODM2NTMgMTQuMjE3MUMyLjk5Mjc0IDE0LjM3MzMgMi45OTI3NCAxNC42MjY1IDIuODM2NTMgMTQuNzgyOEMyLjY4MDMyIDE0LjkzOSAyLjQyNzA1IDE0LjkzOSAyLjI3MDg0IDE0Ljc4MjhMMC4yNzA4NDMgMTIuNzgyOEMwLjE5NTgyOCAxMi43MDc3IDAuMTUzNjg3IDEyLjYwNiAwLjE1MzY4NyAxMi40OTk5QzAuMTUzNjg3IDEyLjM5MzggMC4xOTU4MjggMTIuMjkyMSAwLjI3MDg0MyAxMi4yMTcxTDIuMjcwODQgMTAuMjE3MUMyLjQyNzA1IDEwLjA2MDkgMi42ODAzMiAxMC4wNjA5IDIuODM2NTMgMTAuMjE3MUMyLjk5Mjc0IDEwLjM3MzMgMi45OTI3NCAxMC42MjY1IDIuODM2NTMgMTAuNzgyOEwxLjUxOTM3IDEyLjA5OTlMMTMuNTg4IDEyLjA5OTlMMTIuMjcwOCAxMC43ODI4QzEyLjExNDYgMTAuNjI2NSAxMi4xMTQ2IDEwLjM3MzMgMTIuMjcwOCAxMC4yMTcxQzEyLjQyNzEgMTAuMDYwOSAxMi42ODAzIDEwLjA2MDkgMTIuODM2NSAxMC4yMTcxTDE0LjgzNjUgMTIuMjE3MUMxNC45MTE1IDEyLjI5MjEgMTQuOTUzNyAxMi4zOTM4IDE0Ljk1MzcgMTIuNDk5OVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJRID0gW1wiY29sb3JcIl07XG52YXIgTGlnaHRuaW5nQm9sdEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMlEpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk04LjY5NjY3IDAuMDQwMzU0MUM4LjkwODU5IDAuMTMxMDM4IDkuMDMxMDYgMC4zNTQ4NTcgOC45OTMxNiAwLjU4MjIzNUw4LjA5MDIgNi4wMDAwMUgxMi41QzEyLjY4OTMgNi4wMDAwMSAxMi44NjI1IDYuMTA3MDEgMTIuOTQ3MiA2LjI3NjQxQzEzLjAzMTkgNi40NDU4IDEzLjAxMzYgNi42NDg1IDEyLjg5OTkgNi44MDAwMUw2Ljg5OTk3IDE0LjhDNi43NjE2NyAxNC45ODQ0IDYuNTE1MjEgMTUuMDUwMyA2LjMwMzI4IDE0Ljk1OTdDNi4wOTEzNSAxNC44NjkgNS45Njg4OCAxNC42NDUyIDYuMDA2NzggMTQuNDE3OEw2LjkwOTc0IDlIMi40OTk5OUMyLjMxMDYxIDkgMi4xMzc0OCA4Ljg5MyAyLjA1Mjc4IDguNzIzNjFDMS45NjgwOSA4LjU1NDIyIDEuOTg2MzYgOC4zNTE1MSAyLjA5OTk5IDguMkw4LjA5OTk3IDAuMjAwMDM4QzguMjM4MjggMC4wMTU2MjU1IDguNDg0NzQgLTAuMDUwMzMwMSA4LjY5NjY3IDAuMDQwMzU0MVpNMy40OTk5OSA4LjAwMDAxSDcuNDk5OTdDNy42NDY5NSA4LjAwMDAxIDcuNzg2NDggOC4wNjQ2NyA3Ljg4MTQ4IDguMTc2ODJDNy45NzY0OCA4LjI4ODk2IDguMDE3MzMgOC40MzcyMyA3Ljk5MzE3IDguNTgyMkw3LjMzMDI3IDEyLjU1OTZMMTEuNSA3LjAwMDAxSDcuNDk5OTdDNy4zNTMgNy4wMDAwMSA3LjIxMzQ3IDYuOTM1MzQgNy4xMTg0NiA2LjgyMzJDNy4wMjM0NiA2LjcxMTA1IDYuOTgyNjEgNi41NjI3OSA3LjAwNjc4IDYuNDE3ODFMNy42Njk2OCAyLjQ0MDQyTDMuNDk5OTkgOC4wMDAwMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJSID0gW1wiY29sb3JcIl07XG52YXIgTGluZUhlaWdodEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMlIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zLjc4MjMzIDIuMjE3MTNDMy43MDczMiAyLjE0MjEyIDMuNjA1NTcgMi4wOTk5OCAzLjQ5OTQ5IDIuMDk5OThDMy4zOTM0IDIuMDk5OTggMy4yOTE2NiAyLjE0MjEyIDMuMjE2NjQgMi4yMTcxM0wxLjIxNjY0IDQuMjE3MTNDMS4wNjA0NCA0LjM3MzM0IDEuMDYwNDQgNC42MjY2MSAxLjIxNjY0IDQuNzgyODJDMS4zNzI4NSA0LjkzOTAzIDEuNjI2MTIgNC45MzkwMyAxLjc4MjMzIDQuNzgyODJMMy4wOTk0OSAzLjQ2NTY2TDMuMDk5NDkgMTEuNTM0M0wxLjc4MjMzIDEwLjIxNzFDMS42MjYxMiAxMC4wNjA5IDEuMzcyODUgMTAuMDYwOSAxLjIxNjY0IDEwLjIxNzFDMS4wNjA0MyAxMC4zNzMzIDEuMDYwNDMgMTAuNjI2NiAxLjIxNjY0IDEwLjc4MjhMMy4yMTY2NCAxMi43ODI4QzMuMjkxNjYgMTIuODU3OCAzLjM5MzQgMTIuOSAzLjQ5OTQ5IDEyLjlDMy42MDU1NyAxMi45IDMuNzA3MzEgMTIuODU3OCAzLjc4MjMzIDEyLjc4MjhMNS43ODIzMyAxMC43ODI4QzUuOTM4NTQgMTAuNjI2NiA1LjkzODU0IDEwLjM3MzMgNS43ODIzMyAxMC4yMTcxQzUuNjI2MTIgMTAuMDYwOSA1LjM3Mjg1IDEwLjA2MDkgNS4yMTY2NCAxMC4yMTcxTDMuODk5NDkgMTEuNTM0M0wzLjg5OTQ5IDMuNDY1NjZMNS4yMTY2NCA0Ljc4MjgyQzUuMzcyODUgNC45MzkwMyA1LjYyNjEyIDQuOTM5MDMgNS43ODIzMyA0Ljc4MjgyQzUuOTM4NTQgNC42MjY2MSA1LjkzODU0IDQuMzczMzQgNS43ODIzMyA0LjIxNzEzTDMuNzgyMzMgMi4yMTcxM1pNOC40OTk5OCAzLjk5OTk3QzguMjIzODMgMy45OTk5NyA3Ljk5OTk4IDQuMjIzODIgNy45OTk5OCA0LjQ5OTk3QzcuOTk5OTggNC43NzYxMSA4LjIyMzgzIDQuOTk5OTcgOC40OTk5OCA0Ljk5OTk3SDE0LjVDMTQuNzc2MSA0Ljk5OTk3IDE1IDQuNzc2MTEgMTUgNC40OTk5N0MxNSA0LjIyMzgyIDE0Ljc3NjEgMy45OTk5NyAxNC41IDMuOTk5OTdIOC40OTk5OFpNNy45OTk5OCA3LjQ5OTk3QzcuOTk5OTggNy4yMjM4MiA4LjIyMzgzIDYuOTk5OTcgOC40OTk5OCA2Ljk5OTk3SDE0LjVDMTQuNzc2MSA2Ljk5OTk3IDE1IDcuMjIzODIgMTUgNy40OTk5N0MxNSA3Ljc3NjExIDE0Ljc3NjEgNy45OTk5NyAxNC41IDcuOTk5OTdIOC40OTk5OEM4LjIyMzgzIDcuOTk5OTcgNy45OTk5OCA3Ljc3NjExIDcuOTk5OTggNy40OTk5N1pNOC40OTk5OCA5Ljk5OTk3QzguMjIzODMgOS45OTk5NyA3Ljk5OTk4IDEwLjIyMzggNy45OTk5OCAxMC41QzcuOTk5OTggMTAuNzc2MSA4LjIyMzgzIDExIDguNDk5OTggMTFIMTQuNUMxNC43NzYxIDExIDE1IDEwLjc3NjEgMTUgMTAuNUMxNSAxMC4yMjM4IDE0Ljc3NjEgOS45OTk5NyAxNC41IDkuOTk5OTdIOC40OTk5OFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJTID0gW1wiY29sb3JcIl07XG52YXIgTGluazFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJTKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC42MjQ3MSA0LjAwMDAxTDQuNTY0MDIgNC4wMDAwMUM0LjA0MTM0IDMuOTk5OTMgMy43MDY4NyAzLjk5OTg4IDMuNDE4MiA0LjA1NUMyLjIzNzkgNC4yODAzOSAxLjI5ODQ2IDUuMTcwNTMgMS4wNTgxNSA2LjMzMDM1QzAuOTk5NTM4IDYuNjEzMjEgMC45OTk2MDQgNi45Mzk5OCAwLjk5OTcwMyA3LjQzNjg5TDAuOTk5NzExIDcuNTAwMDFMMC45OTk3MDMgNy41NjMxM0MwLjk5OTYwNCA4LjA2MDA0IDAuOTk5NTM4IDguMzg2ODEgMS4wNTgxNSA4LjY2OTY3QzEuMjk4NDYgOS44Mjk1IDIuMjM3OSAxMC43MTk2IDMuNDE4MiAxMC45NDVDMy43MDY4OCAxMS4wMDAxIDQuMDQxMzUgMTEuMDAwMSA0LjU2NDAzIDExTDQuNjI0NzEgMTFINS40OTk3MUM1Ljc3NTg1IDExIDUuOTk5NzEgMTAuNzc2MiA1Ljk5OTcxIDEwLjVDNS45OTk3MSAxMC4yMjM5IDUuNzc1ODUgMTAgNS40OTk3MSAxMEg0LjYyNDcxQzQuMDIwODQgMTAgMy43ODkwNyA5Ljk5Nzc3IDMuNjA1NzcgOS45NjI3N0MyLjgwMjYyIDkuODA5NCAyLjE5MTU3IDkuMjExMDggMi4wMzczNSA4LjQ2Njc4QzIuMDAyMzMgOC4yOTc3OCAxLjk5OTcxIDguMDgyNTEgMS45OTk3MSA3LjUwMDAxQzEuOTk5NzEgNi45MTc1MiAyLjAwMjMzIDYuNzAyMjUgMi4wMzczNSA2LjUzMzI0QzIuMTkxNTcgNS43ODg5NSAyLjgwMjYyIDUuMTkwNjIgMy42MDU3NyA1LjAzNzI1QzMuNzg5MDcgNS4wMDIyNSA0LjAyMDg0IDUuMDAwMDEgNC42MjQ3MSA1LjAwMDAxSDUuNDk5NzFDNS43NzU4NSA1LjAwMDAxIDUuOTk5NzEgNC43NzYxNSA1Ljk5OTcxIDQuNTAwMDFDNS45OTk3MSA0LjIyMzg3IDUuNzc1ODUgNC4wMDAwMSA1LjQ5OTcxIDQuMDAwMDFINC42MjQ3MVpNMTAuMzc0NyA1LjAwMDAxQzEwLjk3ODYgNS4wMDAwMSAxMS4yMTA0IDUuMDAyMjUgMTEuMzkzNyA1LjAzNzI1QzEyLjE5NjggNS4xOTA2MiAxMi44MDc5IDUuNzg4OTUgMTIuOTYyMSA2LjUzMzI0QzEyLjk5NzEgNi43MDIyNSAxMi45OTk3IDYuOTE3NTIgMTIuOTk5NyA3LjUwMDAxQzEyLjk5OTcgOC4wODI1MSAxMi45OTcxIDguMjk3NzggMTIuOTYyMSA4LjQ2Njc4QzEyLjgwNzkgOS4yMTEwOCAxMi4xOTY4IDkuODA5NCAxMS4zOTM3IDkuOTYyNzdDMTEuMjEwNCA5Ljk5Nzc3IDEwLjk3ODYgMTAgMTAuMzc0NyAxMEg5LjQ5OTcxQzkuMjIzNTcgMTAgOC45OTk3MSAxMC4yMjM5IDguOTk5NzEgMTAuNUM4Ljk5OTcxIDEwLjc3NjIgOS4yMjM1NyAxMSA5LjQ5OTcxIDExSDEwLjM3NDdMMTAuNDM1NCAxMUMxMC45NTgxIDExLjAwMDEgMTEuMjkyNSAxMS4wMDAxIDExLjU4MTIgMTAuOTQ1QzEyLjc2MTUgMTAuNzE5NiAxMy43MDEgOS44Mjk1IDEzLjk0MTMgOC42Njk2N0MxMy45OTk5IDguMzg2ODEgMTMuOTk5OCA4LjA2MDA1IDEzLjk5OTcgNy41NjMxNEwxMy45OTk3IDcuNTAwMDFMMTMuOTk5NyA3LjQzNjg4QzEzLjk5OTggNi45Mzk5OCAxMy45OTk5IDYuNjEzMjEgMTMuOTQxMyA2LjMzMDM1QzEzLjcwMSA1LjE3MDUzIDEyLjc2MTUgNC4yODAzOSAxMS41ODEyIDQuMDU1QzExLjI5MjUgMy45OTk4OCAxMC45NTgxIDMuOTk5OTMgMTAuNDM1NCA0LjAwMDAxTDEwLjM3NDcgNC4wMDAwMUg5LjQ5OTcxQzkuMjIzNTcgNC4wMDAwMSA4Ljk5OTcxIDQuMjIzODcgOC45OTk3MSA0LjUwMDAxQzguOTk5NzEgNC43NzYxNSA5LjIyMzU3IDUuMDAwMDEgOS40OTk3MSA1LjAwMDAxSDEwLjM3NDdaTTUuMDAwMzggN0M0LjcyNDI0IDcgNC41MDAzOCA3LjIyMzg2IDQuNTAwMzggNy41QzQuNTAwMzggNy43NzYxNCA0LjcyNDI0IDggNS4wMDAzOCA4SDEwLjAwMDRDMTAuMjc2NSA4IDEwLjUwMDQgNy43NzYxNCAxMC41MDA0IDcuNUMxMC41MDA0IDcuMjIzODYgMTAuMjc2NSA3IDEwLjAwMDQgN0g1LjAwMDM4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMlQgPSBbXCJjb2xvclwiXTtcbnZhciBMaW5rMkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMlQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk04LjUxMTk0IDMuMDA1NDFDOS4xODgyOSAyLjU0NTk0IDEwLjA0MzUgMi41MzY5NCAxMC42Nzg4IDIuOTU0MTlDMTAuODIzMSAzLjA0ODkzIDEwLjk3NzEgMy4xOTkzIDExLjM4OSAzLjYxMTE5QzExLjgwMDkgNC4wMjMwNyAxMS45NTEzIDQuMTc3MTQgMTIuMDQ2IDQuMzIxNDFDMTIuNDYzMyA0Ljk1Njc1IDEyLjQ1NDMgNS44MTE5MiAxMS45OTQ4IDYuNDg4MjdDMTEuODg5OSA2LjY0MjY0IDExLjcyNzYgNi44MDgxMSAxMS4zMDA2IDcuMjM1MTFMMTAuNjgxOSA3Ljg1MzgzQzEwLjQ4NjcgOC4wNDkwOSAxMC40ODY3IDguMzY1NjcgMTAuNjgxOSA4LjU2MDkzQzEwLjg3NzIgOC43NTYyIDExLjE5MzggOC43NTYyIDExLjM4OSA4LjU2MDkzTDEyLjAwNzcgNy45NDIyMUwxMi4wNTA3IDcuODk5MjlDMTIuNDIwMyA3LjUyOTc2IDEyLjY1NjggNy4yOTMzIDEyLjgyMiA3LjA1MDJDMTMuNDk3MiA2LjA1NjIzIDEzLjUzMjEgNC43NjI1MiAxMi44ODE5IDMuNzcyNDhDMTIuNzIzMyAzLjUzMTAyIDEyLjQ5MjIgMy4zMDAwMSAxMi4xNDA4IDIuOTQ4NzFMMTIuMDk2MSAyLjkwNDA4TDEyLjA1MTUgMi44NTk0MkMxMS43MDAyIDIuNTA4IDExLjQ2OTIgMi4yNzY4OSAxMS4yMjc3IDIuMTE4MzJDMTAuMjM3NyAxLjQ2ODEzIDguOTQzOTggMS41MDI5OSA3Ljk1MDAxIDIuMTc4MjJDNy43MDY5MSAyLjM0MzM2IDcuNDcwNDQgMi41Nzk5MSA3LjEwMDkgMi45NDk1NUw3LjA1OCAyLjk5MjQ3TDYuNDM5MjggMy42MTExOUM2LjI0NDAxIDMuODA2NDUgNi4yNDQwMSA0LjEyMzAzIDYuNDM5MjggNC4zMTgyOUM2LjYzNDU0IDQuNTEzNTUgNi45NTExMiA0LjUxMzU1IDcuMTQ2MzggNC4zMTgyOUw3Ljc2NTEgMy42OTk1N0M4LjE5MjEgMy4yNzI1NyA4LjM1NzU3IDMuMTEwMjcgOC41MTE5NCAzLjAwNTQxWk00LjMxNzk2IDcuMTQ2NzJDNC41MTMyMiA2Ljk1MTQ2IDQuNTEzMjIgNi42MzQ4NyA0LjMxNzk2IDYuNDM5NjFDNC4xMjI2OSA2LjI0NDM1IDMuODA2MTEgNi4yNDQzNSAzLjYxMDg1IDYuNDM5NjFMMi45OTIxMyA3LjA1ODMzTDIuOTQ5MjIgNy4xMDEyNEMyLjU3OTU3IDcuNDcwNzcgMi4zNDMwMyA3LjcwNzI0IDIuMTc3ODggNy45NTAzNUMxLjUwMjY1IDguOTQ0MzIgMS40Njc4IDEwLjIzOCAyLjExNzk5IDExLjIyODFDMi4yNzY1NiAxMS40Njk1IDIuNTA3NjYgMTEuNzAwNSAyLjg1OTEgMTIuMDUxOEwyLjkwMzc0IDEyLjA5NjVMMi45NDgzNyAxMi4xNDExQzMuMjk5NjcgMTIuNDkyNSAzLjUzMDY4IDEyLjcyMzcgMy43NzIxNCAxMi44ODIyQzQuNzYyMTkgMTMuNTMyNCA2LjA1NTg5IDEzLjQ5NzYgNy4wNDk4NiAxMi44MjIzQzcuMjkyOTYgMTIuNjU3MiA3LjUyOTQzIDEyLjQyMDYgNy44OTg5NiAxMi4wNTFMNy44OTg5NyAxMi4wNTFMNy45NDE4OCAxMi4wMDgxTDguNTYwNiAxMS4zODk0QzguNzU1ODYgMTEuMTk0MSA4Ljc1NTg2IDEwLjg3NzUgOC41NjA2IDEwLjY4MjNDOC4zNjUzMyAxMC40ODcgOC4wNDg3NSAxMC40ODcgNy44NTM0OSAxMC42ODIzTDcuMjM0NzcgMTEuMzAxQzYuODA3NzcgMTEuNzI4IDYuNjQyMyAxMS44OTAzIDYuNDg3OTQgMTEuOTk1MUM1LjgxMTU4IDEyLjQ1NDYgNC45NTY0MiAxMi40NjM2IDQuMzIxMDcgMTIuMDQ2NEM0LjE3NjgxIDExLjk1MTYgNC4wMjI3NCAxMS44MDEyIDMuNjEwODUgMTEuMzg5NEMzLjE5ODk2IDEwLjk3NzUgMy4wNDg2IDEwLjgyMzQgMi45NTM4NSAxMC42NzkxQzIuNTM2NjEgMTAuMDQzOCAyLjU0NTYxIDkuMTg4NjMgMy4wMDUwNyA4LjUxMjI3QzMuMTA5OTMgOC4zNTc5MSAzLjI3MjI0IDguMTkyNDQgMy42OTkyNCA3Ljc2NTQ0TDQuMzE3OTYgNy4xNDY3MlpNOS42MjE3MiA2LjA4NTU4QzkuODE2OTggNS44OTAzMiA5LjgxNjk4IDUuNTczNzMgOS42MjE3MiA1LjM3ODQ3QzkuNDI2NDYgNS4xODMyMSA5LjEwOTg4IDUuMTgzMjEgOC45MTQ2MSA1LjM3ODQ3TDUuMzc5MDggOC45MTQwMUM1LjE4MzgyIDkuMTA5MjcgNS4xODM4MiA5LjQyNTg1IDUuMzc5MDggOS42MjExMUM1LjU3NDM0IDkuODE2MzcgNS44OTA5MiA5LjgxNjM3IDYuMDg2MTkgOS42MjExMUw5LjYyMTcyIDYuMDg1NThaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyVSA9IFtcImNvbG9yXCJdO1xudmFyIExpbmtCcmVhazFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJVKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTMuMzUzNiAyLjM1MzU1QzEzLjU0ODggMi4xNTgyOSAxMy41NDg4IDEuODQxNzEgMTMuMzUzNiAxLjY0NjQ1QzEzLjE1ODMgMS40NTExOCAxMi44NDE3IDEuNDUxMTggMTIuNjQ2NCAxLjY0NjQ1TDEuNjQ2NDUgMTIuNjQ2NEMxLjQ1MTE4IDEyLjg0MTcgMS40NTExOCAxMy4xNTgzIDEuNjQ2NDUgMTMuMzUzNkMxLjg0MTcxIDEzLjU0ODggMi4xNTgyOSAxMy41NDg4IDIuMzUzNTUgMTMuMzUzNkwxMy4zNTM2IDIuMzUzNTVaTTIuMDM3MzUgOC40NjY3OEMyLjE3Mzk4IDkuMTI2MTkgMi42NjkxOCA5LjY3MTAzIDMuMzM4ODYgOS44OTMzOEwyLjU3ODMzIDEwLjY1MzlDMS44MDg0MyAxMC4yNTM0IDEuMjM3ODQgOS41MzY5MyAxLjA1ODE1IDguNjY5NjdDMC45OTk1MzggOC4zODY4MSAwLjk5OTYwNCA4LjA2MDA0IDAuOTk5NzAzIDcuNTYzMTNMMC45OTk3MTEgNy41MDAwMUwwLjk5OTcwMyA3LjQzNjg5QzAuOTk5NjA0IDYuOTM5OTggMC45OTk1MzggNi42MTMyMSAxLjA1ODE1IDYuMzMwMzVDMS4yOTg0NiA1LjE3MDUzIDIuMjM3OSA0LjI4MDM5IDMuNDE4MiA0LjA1NUMzLjcwNjg3IDMuOTk5ODggNC4wNDEzNCAzLjk5OTkzIDQuNTY0MDIgNC4wMDAwMUw0LjYyNDcxIDQuMDAwMDFINS40OTk3MUM1Ljc3NTg1IDQuMDAwMDEgNS45OTk3MSA0LjIyMzg3IDUuOTk5NzEgNC41MDAwMUM1Ljk5OTcxIDQuNzc2MTUgNS43NzU4NSA1LjAwMDAxIDUuNDk5NzEgNS4wMDAwMUg0LjYyNDcxQzQuMDIwODQgNS4wMDAwMSAzLjc4OTA3IDUuMDAyMjUgMy42MDU3NyA1LjAzNzI1QzIuODAyNjIgNS4xOTA2MiAyLjE5MTU3IDUuNzg4OTUgMi4wMzczNSA2LjUzMzI0QzIuMDAyMzMgNi43MDIyNSAxLjk5OTcxIDYuOTE3NTIgMS45OTk3MSA3LjUwMDAxQzEuOTk5NzEgOC4wODI1MSAyLjAwMjMzIDguMjk3NzggMi4wMzczNSA4LjQ2Njc4Wk0xMi45NjIxIDYuNTMzMjRDMTIuODI1NSA1Ljg3Mzk3IDEyLjMzMDQgNS4zMjkyMiAxMS42NjEgNS4xMDY3OUwxMi40MjE1IDQuMzQ2MzFDMTMuMTkxMiA0Ljc0Njg2IDEzLjc2MTYgNS40NjMyMyAxMy45NDEzIDYuMzMwMzVDMTMuOTk5OSA2LjYxMzIxIDEzLjk5OTggNi45Mzk5OCAxMy45OTk3IDcuNDM2ODhMMTMuOTk5NyA3LjUwMDAxTDEzLjk5OTcgNy41NjMxNEMxMy45OTk4IDguMDYwMDUgMTMuOTk5OSA4LjM4NjgxIDEzLjk0MTMgOC42Njk2N0MxMy43MDEgOS44Mjk1IDEyLjc2MTUgMTAuNzE5NiAxMS41ODEyIDEwLjk0NUMxMS4yOTI1IDExLjAwMDEgMTAuOTU4MSAxMS4wMDAxIDEwLjQzNTQgMTFMMTAuMzc0NyAxMUg5LjQ5OTcxQzkuMjIzNTcgMTEgOC45OTk3MSAxMC43NzYyIDguOTk5NzEgMTAuNUM4Ljk5OTcxIDEwLjIyMzkgOS4yMjM1NyAxMCA5LjQ5OTcxIDEwSDEwLjM3NDdDMTAuOTc4NiAxMCAxMS4yMTA0IDkuOTk3NzcgMTEuMzkzNyA5Ljk2Mjc3QzEyLjE5NjggOS44MDk0IDEyLjgwNzkgOS4yMTEwOCAxMi45NjIxIDguNDY2NzhDMTIuOTk3MSA4LjI5Nzc4IDEyLjk5OTcgOC4wODI1MSAxMi45OTk3IDcuNTAwMDFDMTIuOTk5NyA2LjkxNzUyIDEyLjk5NzEgNi43MDIyNSAxMi45NjIxIDYuNTMzMjRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQyViA9IFtcImNvbG9yXCJdO1xudmFyIExpbmtCcmVhazJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJWKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC41MDAyMSAwQzQuNzc2MzUgMCA1LjAwMDIgMC4yMjM4NTMgNS4wMDAyIDAuNDk5OTlWMi40OTk5NUM1LjAwMDIgMi43NzYwOSA0Ljc3NjM1IDIuOTk5OTQgNC41MDAyMSAyLjk5OTk0QzQuMjI0MDggMi45OTk5NCA0LjAwMDIyIDIuNzc2MDkgNC4wMDAyMiAyLjQ5OTk1VjAuNDk5OTlDNC4wMDAyMiAwLjIyMzg1MyA0LjIyNDA4IDAgNC41MDAyMSAwWk0wLjY0NjQ1MSAwLjY0NjQ3QzAuODQxNzEgMC40NTEyMTIgMS4xNTgyOSAwLjQ1MTIxMiAxLjM1MzU0IDAuNjQ2NDdMMi44NTM1MSAyLjE0NjQ0QzMuMDQ4NzcgMi4zNDE3IDMuMDQ4NzcgMi42NTgyNyAyLjg1MzUxIDIuODUzNTNDMi42NTgyNiAzLjA0ODc5IDIuMzQxNjggMy4wNDg3OSAyLjE0NjQyIDIuODUzNTNMMC42NDY0NTIgMS4zNTM1NkMwLjQ1MTE5MyAxLjE1ODMgMC40NTExOTMgMC44NDE3MjggMC42NDY0NTEgMC42NDY0N1pNMC4wMDAzMDUxNyA0LjQ5OTkxQzAuMDAwMzA1MTcgNC4yMjM3NyAwLjIyNDE1OCAzLjk5OTkyIDAuNTAwMjk1IDMuOTk5OTJIMi41MDAyNUMyLjc3NjM5IDMuOTk5OTIgMy4wMDAyNCA0LjIyMzc3IDMuMDAwMjQgNC40OTk5MUMzLjAwMDI0IDQuNzc2MDUgMi43NzYzOSA0Ljk5OTkgMi41MDAyNSA0Ljk5OTlIMC41MDAyOTVDMC4yMjQxNTggNC45OTk5IDAuMDAwMzA1MTcgNC43NzYwNSAwLjAwMDMwNTE3IDQuNDk5OTFaTTEyLjAwMDEgMTAuNDk5OEMxMi4wMDAxIDEwLjIyMzYgMTIuMjIzOSA5Ljk5OTggMTIuNTAwMSA5Ljk5OThIMTQuNUMxNC43NzYxIDkuOTk5OCAxNSAxMC4yMjM2IDE1IDEwLjQ5OThDMTUgMTAuNzc1OSAxNC43NzYxIDEwLjk5OTggMTQuNSAxMC45OTk4SDEyLjUwMDFDMTIuMjIzOSAxMC45OTk4IDEyLjAwMDEgMTAuNzc1OSAxMi4wMDAxIDEwLjQ5OThaTTEwLjUwMDEgMTEuOTk5OEMxMC43NzYyIDExLjk5OTggMTEuMDAwMSAxMi4yMjM2IDExLjAwMDEgMTIuNDk5N1YxNC40OTk3QzExLjAwMDEgMTQuNzc1OCAxMC43NzYyIDE0Ljk5OTcgMTAuNTAwMSAxNC45OTk3QzEwLjIyNCAxNC45OTk3IDEwLjAwMDEgMTQuNzc1OCAxMC4wMDAxIDE0LjQ5OTdWMTIuNDk5N0MxMC4wMDAxIDEyLjIyMzYgMTAuMjI0IDExLjk5OTggMTAuNTAwMSAxMS45OTk4Wk0xMi4xNDYyIDEyLjE0NjJDMTIuMzQxNSAxMS45NTEgMTIuNjU4IDExLjk1MSAxMi44NTMzIDEyLjE0NjJMMTQuMzUzMyAxMy42NDYyQzE0LjU0ODUgMTMuODQxNSAxNC41NDg1IDE0LjE1OCAxNC4zNTMzIDE0LjM1MzNDMTQuMTU4IDE0LjU0ODUgMTMuODQxNCAxNC41NDg1IDEzLjY0NjIgMTQuMzUzM0wxMi4xNDYyIDEyLjg1MzNDMTEuOTUxIDEyLjY1ODEgMTEuOTUxIDEyLjM0MTUgMTIuMTQ2MiAxMi4xNDYyWk03Ljc2NDc4IDMuNjk5MzhDOC4xOTE3NyAzLjI3MjM4IDguMzU3MjQgMy4xMTAwOCA4LjUxMTYgMy4wMDUyMkM5LjE4Nzk0IDIuNTQ1NzcgMTAuMDQzMSAyLjUzNjc3IDEwLjY3ODQgMi45NTQwMUMxMC44MjI3IDMuMDQ4NzUgMTAuOTc2NyAzLjE5OTExIDExLjM4ODYgMy42MTA5OUMxMS44MDA1IDQuMDIyODcgMTEuOTUwOSA0LjE3Njk0IDEyLjA0NTYgNC4zMjEyQzEyLjQ2MjggNC45NTY1MyAxMi40NTM5IDUuODExNjggMTEuOTk0NCA2LjQ4ODAyQzExLjg4OTUgNi42NDIzOCAxMS43MjcyIDYuODA3ODUgMTEuMzAwMiA3LjIzNDg0TDEwLjY4MTUgNy44NTM1NEMxMC40ODYzIDguMDQ4OCAxMC40ODYzIDguMzY1MzggMTAuNjgxNSA4LjU2MDY0QzEwLjg3NjggOC43NTU4OSAxMS4xOTM0IDguNzU1ODkgMTEuMzg4NiA4LjU2MDY0TDEyLjAwNzMgNy45NDE5M0wxMi4wNTAyIDcuODk5MDNDMTIuNDE5OSA3LjUyOTUgMTIuNjU2NCA3LjI5MzAzIDEyLjgyMTYgNy4wNDk5M0MxMy40OTY4IDYuMDU1OTggMTMuNTMxNiA0Ljc2MjMgMTIuODgxNSAzLjc3MjI4QzEyLjcyMjkgMy41MzA4MyAxMi40OTE4IDMuMjk5ODIgMTIuMTQwNCAyLjk0ODUzTDEyLjA5NTcgMi45MDM5TDEyLjA1MTEgMi44NTkyNUMxMS42OTk4IDIuNTA3ODIgMTEuNDY4OCAyLjI3NjcyIDExLjIyNzMgMi4xMTgxNkMxMC4yMzczIDEuNDY3OTggOC45NDM2NCAxLjUwMjg0IDcuOTQ5NjggMi4xNzgwNUM3LjcwNjU5IDIuMzQzMTkgNy40NzAxMiAyLjU3OTczIDcuMTAwNiAyLjk0OTM2TDcuMTAwNiAyLjk0OTM3TDcuMDU3NjkgMi45OTIyOEw2LjQzODk4IDMuNjEwOTlDNi4yNDM3MiAzLjgwNjI1IDYuMjQzNzIgNC4xMjI4MiA2LjQzODk4IDQuMzE4MDhDNi42MzQyNCA0LjUxMzM0IDYuOTUwODEgNC41MTMzNCA3LjE0NjA3IDQuMzE4MDhMNy43NjQ3OCAzLjY5OTM4Wk0yLjk5MTkxIDcuMDU4MDdMMi45NDg5OSA3LjEwMDk3QzIuNTc5MzUgNy40NzA1IDIuMzQyODIgNy43MDY5NyAyLjE3NzY3IDcuOTUwMDZDMS41MDI0NiA4Ljk0NDAxIDEuNDY3NiAxMC4yMzc3IDIuMTE3NzggMTEuMjI3N0MyLjI3NjM0IDExLjQ2OTIgMi41MDc0NCAxMS43MDAyIDIuODU4ODYgMTIuMDUxNUwyLjg1ODg4IDEyLjA1MTVMMi45MDM1MiAxMi4wOTYxTDIuOTQ4MTUgMTIuMTQwN0wyLjk0ODE1IDEyLjE0MDdMMi45NDgxNyAxMi4xNDA4QzMuMjk5NDUgMTIuNDkyMiAzLjUzMDQ1IDEyLjcyMzMgMy43NzE5IDEyLjg4MThDNC43NjE5MyAxMy41MzIgNi4wNTU2IDEzLjQ5NzIgNy4wNDk1NiAxMi44MjE5QzcuMjkyNjUgMTIuNjU2OCA3LjUyOTEyIDEyLjQyMDMgNy44OTg2NSAxMi4wNTA2TDcuOTQxNTUgMTIuMDA3N0w4LjU2MDI2IDExLjM4OUM4Ljc1NTUyIDExLjE5MzcgOC43NTU1MiAxMC44NzcyIDguNTYwMjYgMTAuNjgxOUM4LjM2NSAxMC40ODY3IDguMDQ4NDIgMTAuNDg2NyA3Ljg1MzE3IDEwLjY4MTlMNy4yMzQ0NiAxMS4zMDA2QzYuODA3NDcgMTEuNzI3NiA2LjY0MiAxMS44ODk5IDYuNDg3NjQgMTEuOTk0OEM1LjgxMTMgMTIuNDU0MiA0Ljk1NjE1IDEyLjQ2MzIgNC4zMjA4MiAxMi4wNDZDNC4xNzY1NiAxMS45NTEyIDQuMDIyNDkgMTEuODAwOSAzLjYxMDYxIDExLjM4OUMzLjE5ODczIDEwLjk3NzEgMy4wNDgzNyAxMC44MjMxIDIuOTUzNjMgMTAuNjc4OEMyLjUzNjM5IDEwLjA0MzUgMi41NDUzOSA5LjE4ODMyIDMuMDA0ODQgOC41MTE5OEMzLjEwOTcxIDguMzU3NjEgMy4yNzIwMSA4LjE5MjE1IDMuNjk5IDcuNzY1MTZMNC4zMTc3IDcuMTQ2NDVDNC41MTI5NiA2Ljk1MTE5IDQuNTEyOTYgNi42MzQ2MiA0LjMxNzcgNi40MzkzNkM0LjEyMjQ1IDYuMjQ0MSAzLjgwNTg3IDYuMjQ0MSAzLjYxMDYxIDYuNDM5MzZMMi45OTE5MSA3LjA1ODA3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMlcgPSBbXCJjb2xvclwiXTtcbnZhciBMaW5rTm9uZTFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJXKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC41NjQyNyAzLjk5OTg4QzQuNTg0MjIgMy45OTk4OSA0LjYwNDQ1IDMuOTk5ODkgNC42MjQ5NiAzLjk5OTg5SDUuNDk5OTZDNS43NzYxIDMuOTk5ODkgNS45OTk5NiA0LjIyMzc1IDUuOTk5OTYgNC40OTk4OUM1Ljk5OTk2IDQuNzc2MDMgNS43NzYxIDQuOTk5ODkgNS40OTk5NiA0Ljk5OTg5SDQuNjI0OTZDNC4wMjEwOCA0Ljk5OTg5IDMuNzg5MzIgNS4wMDIxMyAzLjYwNjAxIDUuMDM3MTNDMi44MDI4NyA1LjE5MDUgMi4xOTE4MSA1Ljc4ODgzIDIuMDM3NTkgNi41MzMxMkMyLjAwMjU3IDYuNzAyMTIgMS45OTk5NiA2LjkxNzM5IDEuOTk5OTYgNy40OTk4OUMxLjk5OTk2IDguMDgyMzkgMi4wMDI1NyA4LjI5NzY2IDIuMDM3NTkgOC40NjY2NkMyLjE5MTgxIDkuMjEwOTUgMi44MDI4NyA5LjgwOTI4IDMuNjA2MDEgOS45NjI2NUMzLjc4OTMyIDkuOTk3NjUgNC4wMjEwOCA5Ljk5OTg5IDQuNjI0OTYgOS45OTk4OUg1LjQ5OTk2QzUuNzc2MSA5Ljk5OTg5IDUuOTk5OTYgMTAuMjIzNyA1Ljk5OTk2IDEwLjQ5OTlDNS45OTk5NiAxMC43NzYgNS43NzYxIDEwLjk5OTkgNS40OTk5NiAxMC45OTk5SDQuNjI0OTZDNC42MDQ0NSAxMC45OTk5IDQuNTg0MjIgMTAuOTk5OSA0LjU2NDI3IDEwLjk5OTlDNC4wNDE1OSAxMSAzLjcwNzEyIDExIDMuNDE4NDUgMTAuOTQ0OUMyLjIzODE0IDEwLjcxOTUgMS4yOTg3MSA5LjgyOTM3IDEuMDU4MzkgOC42Njk1NUMwLjk5OTc4MiA4LjM4NjY5IDAuOTk5ODQ4IDguMDU5OTIgMC45OTk5NDcgNy41NjMwMUMwLjk5OTk1MSA3LjU0MjI3IDAuOTk5OTU1IDcuNTIxMjMgMC45OTk5NTUgNy40OTk4OUMwLjk5OTk1NSA3LjQ3ODU1IDAuOTk5OTUxIDcuNDU3NTEgMC45OTk5NDcgNy40MzY3N0MwLjk5OTg0OCA2LjkzOTg2IDAuOTk5NzgyIDYuNjEzMDkgMS4wNTgzOSA2LjMzMDIzQzEuMjk4NzEgNS4xNzA0MSAyLjIzODE0IDQuMjgwMjcgMy40MTg0NSA0LjA1NDg4QzMuNzA3MTIgMy45OTk3NiA0LjA0MTU5IDMuOTk5ODEgNC41NjQyNyAzLjk5OTg4Wk0xMS4zOTM5IDUuMDM3MTNDMTEuMjEwNiA1LjAwMjEzIDEwLjk3ODggNC45OTk4OSAxMC4zNzUgNC45OTk4OUg5LjQ5OTk2QzkuMjIzODEgNC45OTk4OSA4Ljk5OTk2IDQuNzc2MDMgOC45OTk5NiA0LjQ5OTg5QzguOTk5OTYgNC4yMjM3NSA5LjIyMzgxIDMuOTk5ODkgOS40OTk5NiAzLjk5OTg5SDEwLjM3NUMxMC4zOTU1IDMuOTk5ODkgMTAuNDE1NyAzLjk5OTg5IDEwLjQzNTYgMy45OTk4OEMxMC45NTgzIDMuOTk5ODEgMTEuMjkyOCAzLjk5OTc2IDExLjU4MTUgNC4wNTQ4OEMxMi43NjE4IDQuMjgwMjcgMTMuNzAxMiA1LjE3MDQxIDEzLjk0MTUgNi4zMzAyM0MxNC4wMDAxIDYuNjEzMDkgMTQuMDAwMSA2LjkzOTg1IDE0IDcuNDM2NzZDMTQgNy40NTc1IDE0IDcuNDc4NTQgMTQgNy40OTk4OUMxNCA3LjUyMTI0IDE0IDcuNTQyMjggMTQgNy41NjMwMkMxNC4wMDAxIDguMDU5OTIgMTQuMDAwMSA4LjM4NjY5IDEzLjk0MTUgOC42Njk1NUMxMy43MDEyIDkuODI5MzcgMTIuNzYxOCAxMC43MTk1IDExLjU4MTUgMTAuOTQ0OUMxMS4yOTI4IDExIDEwLjk1ODMgMTEgMTAuNDM1NiAxMC45OTk5QzEwLjQxNTcgMTAuOTk5OSAxMC4zOTU1IDEwLjk5OTkgMTAuMzc1IDEwLjk5OTlIOS40OTk5NkM5LjIyMzgxIDEwLjk5OTkgOC45OTk5NiAxMC43NzYgOC45OTk5NiAxMC40OTk5QzguOTk5OTYgMTAuMjIzNyA5LjIyMzgxIDkuOTk5ODkgOS40OTk5NiA5Ljk5OTg5SDEwLjM3NUMxMC45Nzg4IDkuOTk5ODkgMTEuMjEwNiA5Ljk5NzY1IDExLjM5MzkgOS45NjI2NUMxMi4xOTcgOS44MDkyOCAxMi44MDgxIDkuMjEwOTUgMTIuOTYyMyA4LjQ2NjY2QzEyLjk5NzMgOC4yOTc2NiAxMyA4LjA4MjM5IDEzIDcuNDk5ODlDMTMgNi45MTczOSAxMi45OTczIDYuNzAyMTIgMTIuOTYyMyA2LjUzMzEyQzEyLjgwODEgNS43ODg4MyAxMi4xOTcgNS4xOTA1IDExLjM5MzkgNS4wMzcxM1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJYID0gW1wiY29sb3JcIl07XG52YXIgTGlua05vbmUySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyWCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEwLjY3ODggMi45NTQxOUMxMC4wNDM1IDIuNTM2OTQgOS4xODgyOSAyLjU0NTk0IDguNTExOTQgMy4wMDU0MUM4LjM1NzU3IDMuMTEwMjcgOC4xOTIxIDMuMjcyNTcgNy43NjUxIDMuNjk5NTdMNy4xNDYzOCA0LjMxODI5QzYuOTUxMTIgNC41MTM1NSA2LjYzNDU0IDQuNTEzNTUgNi40MzkyOCA0LjMxODI5QzYuMjQ0MDEgNC4xMjMwMyA2LjI0NDAxIDMuODA2NDUgNi40MzkyOCAzLjYxMTE5TDcuMDU4IDIuOTkyNDdDNy4wNzI1IDIuOTc3OTcgNy4wODY3OSAyLjk2MzY2IDcuMTAwOSAyLjk0OTU1QzcuNDcwNDQgMi41Nzk5MSA3LjcwNjkxIDIuMzQzMzYgNy45NTAwMSAyLjE3ODIyQzguOTQzOTggMS41MDI5OSAxMC4yMzc3IDEuNDY4MTMgMTEuMjI3NyAyLjExODMyQzExLjQ2OTIgMi4yNzY4OSAxMS43MDAyIDIuNTA4IDEyLjA1MTUgMi44NTk0MkMxMi4wNjYyIDIuODc0MSAxMi4wODEgMi44ODg5OCAxMi4wOTYxIDIuOTA0MDhDMTIuMTExMiAyLjkxOTE3IDEyLjEyNjEgMi45MzQwNSAxMi4xNDA4IDIuOTQ4NzFDMTIuNDkyMiAzLjMwMDAxIDEyLjcyMzMgMy41MzEwMiAxMi44ODE5IDMuNzcyNDhDMTMuNTMyMSA0Ljc2MjUyIDEzLjQ5NzIgNi4wNTYyMyAxMi44MjIgNy4wNTAyQzEyLjY1NjggNy4yOTMzIDEyLjQyMDMgNy41Mjk3NiAxMi4wNTA3IDcuODk5MjlDMTIuMDM2NiA3LjkxMzQgMTIuMDIyMiA3LjkyNzcxIDEyLjAwNzcgNy45NDIyMUwxMS4zODkgOC41NjA5M0MxMS4xOTM4IDguNzU2MiAxMC44NzcyIDguNzU2MiAxMC42ODE5IDguNTYwOTNDMTAuNDg2NyA4LjM2NTY3IDEwLjQ4NjcgOC4wNDkwOSAxMC42ODE5IDcuODUzODNMMTEuMzAwNiA3LjIzNTExQzExLjcyNzYgNi44MDgxMSAxMS44ODk5IDYuNjQyNjQgMTEuOTk0OCA2LjQ4ODI3QzEyLjQ1NDMgNS44MTE5MiAxMi40NjMzIDQuOTU2NzUgMTIuMDQ2IDQuMzIxNDFDMTEuOTUxMyA0LjE3NzE0IDExLjgwMDkgNC4wMjMwNyAxMS4zODkgMy42MTExOUMxMC45NzcxIDMuMTk5MyAxMC44MjMxIDMuMDQ4OTMgMTAuNjc4OCAyLjk1NDE5Wk00LjMxNzk2IDYuNDM5NjFDNC41MTMyMiA2LjYzNDg3IDQuNTEzMjIgNi45NTE0NiA0LjMxNzk2IDcuMTQ2NzJMMy42OTkyNCA3Ljc2NTQ0QzMuMjcyMjQgOC4xOTI0NCAzLjEwOTkzIDguMzU3OTEgMy4wMDUwNyA4LjUxMjI3QzIuNTQ1NjEgOS4xODg2MyAyLjUzNjYxIDEwLjA0MzggMi45NTM4NSAxMC42NzkxQzMuMDQ4NiAxMC44MjM0IDMuMTk4OTYgMTAuOTc3NSAzLjYxMDg1IDExLjM4OTRDNC4wMjI3NCAxMS44MDEyIDQuMTc2ODEgMTEuOTUxNiA0LjMyMTA3IDEyLjA0NjRDNC45NTY0MiAxMi40NjM2IDUuODExNTggMTIuNDU0NiA2LjQ4Nzk0IDExLjk5NTFDNi42NDIzIDExLjg5MDMgNi44MDc3NyAxMS43MjggNy4yMzQ3NyAxMS4zMDFMNy44NTM0OSAxMC42ODIzQzguMDQ4NzUgMTAuNDg3IDguMzY1MzMgMTAuNDg3IDguNTYwNiAxMC42ODIzQzguNzU1ODYgMTAuODc3NSA4Ljc1NTg2IDExLjE5NDEgOC41NjA2IDExLjM4OTRMNy45NDE4OCAxMi4wMDgxQzcuOTI3MzggMTIuMDIyNiA3LjkxMzA3IDEyLjAzNjkgNy44OTg5NyAxMi4wNTFDNy41Mjk0MyAxMi40MjA2IDcuMjkyOTYgMTIuNjU3MiA3LjA0OTg2IDEyLjgyMjNDNi4wNTU4OSAxMy40OTc2IDQuNzYyMTkgMTMuNTMyNCAzLjc3MjE0IDEyLjg4MjJDMy41MzA2OCAxMi43MjM3IDMuMjk5NjcgMTIuNDkyNSAyLjk0ODM3IDEyLjE0MTFDMi45MzM3MSAxMi4xMjY0IDIuOTE4ODMgMTIuMTExNiAyLjkwMzc0IDEyLjA5NjVDMi44ODg2NSAxMi4wODE0IDIuODczNzcgMTIuMDY2NSAyLjg1OTEgMTIuMDUxOEMyLjUwNzY2IDExLjcwMDUgMi4yNzY1NiAxMS40Njk1IDIuMTE3OTkgMTEuMjI4MUMxLjQ2NzggMTAuMjM4IDEuNTAyNjUgOC45NDQzMiAyLjE3Nzg4IDcuOTUwMzVDMi4zNDMwMyA3LjcwNzI0IDIuNTc5NTcgNy40NzA3NyAyLjk0OTIyIDcuMTAxMjRDMi45NjMzMyA3LjA4NzEzIDIuOTc3NjMgNy4wNzI4MyAyLjk5MjEzIDcuMDU4MzNMMy42MTA4NSA2LjQzOTYxQzMuODA2MTEgNi4yNDQzNSA0LjEyMjY5IDYuMjQ0MzUgNC4zMTc5NiA2LjQzOTYxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMlkgPSBbXCJjb2xvclwiXTtcbnZhciBMaW5rZWRJbkxvZ29JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDJZKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMiAxQzEuNDQ3NzIgMSAxIDEuNDQ3NzIgMSAyVjEzQzEgMTMuNTUyMyAxLjQ0NzcyIDE0IDIgMTRIMTNDMTMuNTUyMyAxNCAxNCAxMy41NTIzIDE0IDEzVjJDMTQgMS40NDc3MiAxMy41NTIzIDEgMTMgMUgyWk0zLjA1IDZINC45NVYxMkgzLjA1VjZaTTUuMDc1IDQuMDA1QzUuMDc1IDQuNTk4NzEgNC41OTM3MSA1LjA4IDQgNS4wOEMzLjQwNjMgNS4wOCAyLjkyNSA0LjU5ODcxIDIuOTI1IDQuMDA1QzIuOTI1IDMuNDExMjkgMy40MDYzIDIuOTMgNCAyLjkzQzQuNTkzNzEgMi45MyA1LjA3NSAzLjQxMTI5IDUuMDc1IDQuMDA1Wk0xMiA4LjM1NzEzQzEyIDYuNTUyMDggMTAuODMzNCA1Ljg1MDMzIDkuNjc0NDkgNS44NTAzM0M5LjI5NTAyIDUuODMxNjMgOC45MTcyMSA1LjkxMTE5IDguNTc4NzQgNi4wODEwN0M4LjMyMTcyIDYuMjEwMDcgOC4wNTI2NSA2LjUwNTIzIDcuODQ1MTYgNy4wMTg1M0g3Ljc5MTc5VjYuMDAwNDRINlYxMi4wMDQ3SDcuOTA2MTZWOC44MTEyQzcuODc4NiA4LjQ4NDEzIDcuOTgzMjcgOC4wNjE0MiA4LjE5NzQxIDcuODA5ODdDOC40MTE1NiA3LjU1ODMyIDguNzE3ODkgNy40OTgyNSA4Ljk1MDE1IDcuNDY3NzRIOS4wMjI1OEM5LjYyODc0IDcuNDY3NzQgMTAuMDc4NiA3Ljg0MzAxIDEwLjA3ODYgOC43ODg2OFYxMi4wMDQ3SDExLjk4NDdMMTIgOC4zNTcxM1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDJaID0gW1wiY29sb3JcIl07XG52YXIgTGlzdEJ1bGxldEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMlopO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjUgNS4yNUMxLjkxNDIxIDUuMjUgMi4yNSA0LjkxNDIxIDIuMjUgNC41QzIuMjUgNC4wODU3OSAxLjkxNDIxIDMuNzUgMS41IDMuNzVDMS4wODU3OSAzLjc1IDAuNzUgNC4wODU3OSAwLjc1IDQuNUMwLjc1IDQuOTE0MjEgMS4wODU3OSA1LjI1IDEuNSA1LjI1Wk00IDQuNUM0IDQuMjIzODYgNC4yMjM4NiA0IDQuNSA0SDEzLjVDMTMuNzc2MSA0IDE0IDQuMjIzODYgMTQgNC41QzE0IDQuNzc2MTQgMTMuNzc2MSA1IDEzLjUgNUg0LjVDNC4yMjM4NiA1IDQgNC43NzYxNCA0IDQuNVpNNC41IDdDNC4yMjM4NiA3IDQgNy4yMjM4NiA0IDcuNUM0IDcuNzc2MTQgNC4yMjM4NiA4IDQuNSA4SDEzLjVDMTMuNzc2MSA4IDE0IDcuNzc2MTQgMTQgNy41QzE0IDcuMjIzODYgMTMuNzc2MSA3IDEzLjUgN0g0LjVaTTQuNSAxMEM0LjIyMzg2IDEwIDQgMTAuMjIzOSA0IDEwLjVDNCAxMC43NzYxIDQuMjIzODYgMTEgNC41IDExSDEzLjVDMTMuNzc2MSAxMSAxNCAxMC43NzYxIDE0IDEwLjVDMTQgMTAuMjIzOSAxMy43NzYxIDEwIDEzLjUgMTBINC41Wk0yLjI1IDcuNUMyLjI1IDcuOTE0MjEgMS45MTQyMSA4LjI1IDEuNSA4LjI1QzEuMDg1NzkgOC4yNSAwLjc1IDcuOTE0MjEgMC43NSA3LjVDMC43NSA3LjA4NTc5IDEuMDg1NzkgNi43NSAxLjUgNi43NUMxLjkxNDIxIDYuNzUgMi4yNSA3LjA4NTc5IDIuMjUgNy41Wk0xLjUgMTEuMjVDMS45MTQyMSAxMS4yNSAyLjI1IDEwLjkxNDIgMi4yNSAxMC41QzIuMjUgMTAuMDg1OCAxLjkxNDIxIDkuNzUgMS41IDkuNzVDMS4wODU3OSA5Ljc1IDAuNzUgMTAuMDg1OCAwLjc1IDEwLjVDMC43NSAxMC45MTQyIDEuMDg1NzkgMTEuMjUgMS41IDExLjI1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMl8gPSBbXCJjb2xvclwiXTtcbnZhciBMb2NrQ2xvc2VkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQyXyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUgNC42MzYwMUM1IDMuNzYwMzEgNS4yNDIxOSAzLjEwNTQgNS42NDMyMyAyLjY3MzU3QzYuMDM5MzQgMi4yNDcwNSA2LjY0NTgyIDEuOTc4MyA3LjUwMTQgMS45NzgzQzguMzU3NDUgMS45NzgzIDguOTYzMDYgMi4yNDY1MiA5LjM1ODIzIDIuNjcyMDhDOS43NTgzOCAzLjEwMjk5IDEwIDMuNzU3MDggMTAgNC42MzMyNVY1Ljk5OTk5SDVWNC42MzYwMVpNNCA1Ljk5OTk5VjQuNjM2MDFDNCAzLjU4MTQ4IDQuMjkzMzkgMi42NTc1NCA0LjkxMDQ5IDEuOTkzMDdDNS41MzI1MiAxLjMyMzI5IDYuNDI2NzUgMC45NzgzMDIgNy41MDE0IDAuOTc4MzAyQzguNTc1ODMgMC45NzgzMDIgOS40Njk1MiAxLjMyMjMzIDEwLjA5MSAxLjk5MTYyQzEwLjcwNzYgMi42NTU1NyAxMSAzLjU3ODk2IDExIDQuNjMzMjVWNS45OTk5OUgxMkMxMi41NTIzIDUuOTk5OTkgMTMgNi40NDc3MSAxMyA2Ljk5OTk5VjEzQzEzIDEzLjU1MjMgMTIuNTUyMyAxNCAxMiAxNEgzQzIuNDQ3NzIgMTQgMiAxMy41NTIzIDIgMTNWNi45OTk5OUMyIDYuNDQ3NzEgMi40NDc3MiA1Ljk5OTk5IDMgNS45OTk5OUg0Wk0zIDYuOTk5OTlIMTJWMTNIM1Y2Ljk5OTk5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMiQgPSBbXCJjb2xvclwiXTtcbnZhciBMb2NrT3BlbjFJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDIkKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy40OTg2IDBDNi4zMjU3IDAgNS4zNjEwNyAwLjM4OTQzIDQuNzM3NTMgMS4xOTM2MUM0LjIzNzQ1IDEuODM4NTYgNCAyLjY4MjQyIDQgMy42MzMyNUg1QzUgMi44NDMxMyA1LjE5NjkxIDIuMjMzMTIgNS41Mjc4IDEuODA2MzZDNS45MTYxNSAxLjMwNTUyIDYuNTUxNTIgMSA3LjQ5ODYgMUM4LjM1NjgzIDEgOC45NjMzNiAxLjI2NTAyIDkuMzU4NDYgMS42ODYyM0M5Ljc1NzkzIDIuMTEyMTEgMTAgMi43NjA0NCAxMCAzLjYzNjAxVjZIM0MyLjQ0NzcyIDYgMiA2LjQ0NzcyIDIgN1YxM0MyIDEzLjU1MjMgMi40NDc3MiAxNCAzIDE0SDEyQzEyLjU1MjMgMTQgMTMgMTMuNTUyMyAxMyAxM1Y3QzEzIDYuNDQ3NzEgMTIuNTUyMyA2IDEyIDZIMTFWMy42MzYwMUMxMSAyLjU4MTM1IDEwLjcwNjUgMS42NjE2NyAxMC4wODc4IDEuMDAyMUM5LjQ2NDc3IDAuMzM3ODcxIDguNTcwNjEgMCA3LjQ5ODYgMFpNMyA3SDEyVjEzSDNWN1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDMwID0gW1wiY29sb3JcIl07XG52YXIgTG9ja09wZW4ySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzMCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTkgMy42MzYwMUM5IDIuNzYwNDQgOS4yNDIwNyAyLjExMjExIDkuNjQxNTQgMS42ODYyM0MxMC4wMzY2IDEuMjY1MDIgMTAuNjQzMiAxIDExLjUwMTQgMUMxMi40NDg1IDEgMTMuMDgzOSAxLjMwNTUyIDEzLjQ3MjIgMS44MDYzNkMxMy44MDMxIDIuMjMzMTIgMTQgMi44NDMxMyAxNCAzLjYzMzI1SDE1QzE1IDIuNjgyNDIgMTQuNzYyNiAxLjgzODU2IDE0LjI2MjUgMS4xOTM2MUMxMy42Mzg5IDAuMzg5NDMgMTIuNjc0MyAwIDExLjUwMTQgMEMxMC40Mjk0IDAgOS41MzUyMyAwLjMzNzg3MSA4LjkxMjE4IDEuMDAyMUM4LjI5MzUxIDEuNjYxNjcgOCAyLjU4MTM1IDggMy42MzYwMVY2SDFDMC40NDc3MTUgNiAwIDYuNDQ3NzIgMCA3VjEzQzAgMTMuNTUyMyAwLjQ0NzcxNSAxNCAxIDE0SDEwQzEwLjU1MjMgMTQgMTEgMTMuNTUyMyAxMSAxM1Y3QzExIDYuNDQ3NzIgMTAuNTUyMyA2IDEwIDZIOVYzLjYzNjAxWk0xIDdIMTBWMTNIMVY3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMzEgPSBbXCJjb2xvclwiXTtcbnZhciBMb29wSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzMSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMuMzUzNTUgMS44NTM1NUMzLjU0ODgyIDEuNjU4MjkgMy41NDg4MiAxLjM0MTcxIDMuMzUzNTUgMS4xNDY0NUMzLjE1ODI5IDAuOTUxMTg0IDIuODQxNzEgMC45NTExODQgMi42NDY0NSAxLjE0NjQ1TDAuNjQ2NDQ3IDMuMTQ2NDVDMC40NTExODQgMy4zNDE3MSAwLjQ1MTE4NCAzLjY1ODI5IDAuNjQ2NDQ3IDMuODUzNTVMMi42NDY0NSA1Ljg1MzU1QzIuODQxNzEgNi4wNDg4MiAzLjE1ODI5IDYuMDQ4ODIgMy4zNTM1NSA1Ljg1MzU1QzMuNTQ4ODIgNS42NTgyOSAzLjU0ODgyIDUuMzQxNzEgMy4zNTM1NSA1LjE0NjQ1TDIuMjA3MTEgNEg5LjVDMTEuNDMzIDQgMTMgNS41NjcgMTMgNy41QzEzIDcuNzc2MTQgMTMuMjIzOSA4IDEzLjUgOEMxMy43NzYxIDggMTQgNy43NzYxNCAxNCA3LjVDMTQgNS4wMTQ3MiAxMS45ODUzIDMgOS41IDNIMi4yMDcxMUwzLjM1MzU1IDEuODUzNTVaTTIgNy41QzIgNy4yMjM4NiAxLjc3NjE0IDcgMS41IDdDMS4yMjM4NiA3IDEgNy4yMjM4NiAxIDcuNUMxIDkuOTg1MjggMy4wMTQ3MiAxMiA1LjUgMTJIMTIuNzkyOUwxMS42NDY0IDEzLjE0NjRDMTEuNDUxMiAxMy4zNDE3IDExLjQ1MTIgMTMuNjU4MyAxMS42NDY0IDEzLjg1MzZDMTEuODQxNyAxNC4wNDg4IDEyLjE1ODMgMTQuMDQ4OCAxMi4zNTM2IDEzLjg1MzZMMTQuMzUzNiAxMS44NTM2QzE0LjU0ODggMTEuNjU4MyAxNC41NDg4IDExLjM0MTcgMTQuMzUzNiAxMS4xNDY0TDEyLjM1MzYgOS4xNDY0NUMxMi4xNTgzIDguOTUxMTggMTEuODQxNyA4Ljk1MTE4IDExLjY0NjQgOS4xNDY0NUMxMS40NTEyIDkuMzQxNzEgMTEuNDUxMiA5LjY1ODI5IDExLjY0NjQgOS44NTM1NUwxMi43OTI5IDExSDUuNUMzLjU2NyAxMSAyIDkuNDMzIDIgNy41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMzIgPSBbXCJjb2xvclwiXTtcbnZhciBNYWdpY1dhbmRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDMyKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTMuOSAwLjQ5OTk3NkMxMy45IDAuMjc5MDYyIDEzLjcyMDkgMC4wOTk5NzU2IDEzLjUgMC4wOTk5NzU2QzEzLjI3OTEgMC4wOTk5NzU2IDEzLjEgMC4yNzkwNjIgMTMuMSAwLjQ5OTk3NlYxLjA5OTk4SDEyLjVDMTIuMjc5MSAxLjA5OTk4IDEyLjEgMS4yNzkwNiAxMi4xIDEuNDk5OThDMTIuMSAxLjcyMDg5IDEyLjI3OTEgMS44OTk5OCAxMi41IDEuODk5OThIMTMuMVYyLjQ5OTk4QzEzLjEgMi43MjA4OSAxMy4yNzkxIDIuODk5OTggMTMuNSAyLjg5OTk4QzEzLjcyMDkgMi44OTk5OCAxMy45IDIuNzIwODkgMTMuOSAyLjQ5OTk4VjEuODk5OThIMTQuNUMxNC43MjA5IDEuODk5OTggMTQuOSAxLjcyMDg5IDE0LjkgMS40OTk5OEMxNC45IDEuMjc5MDYgMTQuNzIwOSAxLjA5OTk4IDE0LjUgMS4wOTk5OEgxMy45VjAuNDk5OTc2Wk0xMS44NTM2IDMuMTQ2NDJDMTIuMDQ4OCAzLjM0MTY4IDEyLjA0ODggMy42NTgyNiAxMS44NTM2IDMuODUzNTNMMTAuODUzNiA0Ljg1MzUzQzEwLjY1ODMgNS4wNDg3OSAxMC4zNDE3IDUuMDQ4NzkgMTAuMTQ2NSA0Ljg1MzUzQzkuOTUxMiA0LjY1ODI3IDkuOTUxMiA0LjM0MTY5IDEwLjE0NjUgNC4xNDY0MkwxMS4xNDY0IDMuMTQ2NDNDMTEuMzQxNyAyLjk1MTE2IDExLjY1ODMgMi45NTExNiAxMS44NTM2IDMuMTQ2NDJaTTkuODUzNTcgNS4xNDY0MkMxMC4wNDg4IDUuMzQxNjggMTAuMDQ4OCA1LjY1ODI3IDkuODUzNTcgNS44NTM1M0wyLjg1MzU1IDEyLjg1MzVDMi42NTgyOSAxMy4wNDg4IDIuMzQxNzEgMTMuMDQ4OCAyLjE0NjQ1IDEyLjg1MzVDMS45NTExOCAxMi42NTgzIDEuOTUxMTggMTIuMzQxNyAyLjE0NjQ1IDEyLjE0NjRMOS4xNDY0NiA1LjE0NjQyQzkuMzQxNzIgNC45NTExNiA5LjY1ODMxIDQuOTUxMTYgOS44NTM1NyA1LjE0NjQyWk0xMy41IDUuMDk5OThDMTMuNzIwOSA1LjA5OTk4IDEzLjkgNS4yNzkwNiAxMy45IDUuNDk5OThWNi4wOTk5OEgxNC41QzE0LjcyMDkgNi4wOTk5OCAxNC45IDYuMjc5MDYgMTQuOSA2LjQ5OTk4QzE0LjkgNi43MjA4OSAxNC43MjA5IDYuODk5OTggMTQuNSA2Ljg5OTk4SDEzLjlWNy40OTk5OEMxMy45IDcuNzIwODkgMTMuNzIwOSA3Ljg5OTk4IDEzLjUgNy44OTk5OEMxMy4yNzkxIDcuODk5OTggMTMuMSA3LjcyMDg5IDEzLjEgNy40OTk5OFY2Ljg5OTk4SDEyLjVDMTIuMjc5MSA2Ljg5OTk4IDEyLjEgNi43MjA4OSAxMi4xIDYuNDk5OThDMTIuMSA2LjI3OTA2IDEyLjI3OTEgNi4wOTk5OCAxMi41IDYuMDk5OThIMTMuMVY1LjQ5OTk4QzEzLjEgNS4yNzkwNiAxMy4yNzkxIDUuMDk5OTggMTMuNSA1LjA5OTk4Wk04LjkwMDAyIDAuNDk5OTc2QzguOTAwMDIgMC4yNzkwNjIgOC43MjA5MyAwLjA5OTk3NTYgOC41MDAwMiAwLjA5OTk3NTZDOC4yNzkxIDAuMDk5OTc1NiA4LjEwMDAyIDAuMjc5MDYyIDguMTAwMDIgMC40OTk5NzZWMS4wOTk5OEg3LjUwMDAyQzcuMjc5MSAxLjA5OTk4IDcuMTAwMDIgMS4yNzkwNiA3LjEwMDAyIDEuNDk5OThDNy4xMDAwMiAxLjcyMDg5IDcuMjc5MSAxLjg5OTk4IDcuNTAwMDIgMS44OTk5OEg4LjEwMDAyVjIuNDk5OThDOC4xMDAwMiAyLjcyMDg5IDguMjc5MSAyLjg5OTk4IDguNTAwMDIgMi44OTk5OEM4LjcyMDkzIDIuODk5OTggOC45MDAwMiAyLjcyMDg5IDguOTAwMDIgMi40OTk5OFYxLjg5OTk4SDkuNTAwMDJDOS43MjA5MyAxLjg5OTk4IDkuOTAwMDIgMS43MjA4OSA5LjkwMDAyIDEuNDk5OThDOS45MDAwMiAxLjI3OTA2IDkuNzIwOTMgMS4wOTk5OCA5LjUwMDAyIDEuMDk5OThIOC45MDAwMlYwLjQ5OTk3NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDMzID0gW1wiY29sb3JcIl07XG52YXIgTWFnbmlmeWluZ0dsYXNzSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzMyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEwIDYuNUMxMCA4LjQzMyA4LjQzMyAxMCA2LjUgMTBDNC41NjcgMTAgMyA4LjQzMyAzIDYuNUMzIDQuNTY3IDQuNTY3IDMgNi41IDNDOC40MzMgMyAxMCA0LjU2NyAxMCA2LjVaTTkuMzA4ODQgMTAuMDE1OUM4LjUzOTAxIDEwLjYzMTggNy41NjI1MSAxMSA2LjUgMTFDNC4wMTQ3MiAxMSAyIDguOTg1MjggMiA2LjVDMiA0LjAxNDcyIDQuMDE0NzIgMiA2LjUgMkM4Ljk4NTI4IDIgMTEgNC4wMTQ3MiAxMSA2LjVDMTEgNy41NjI1MSAxMC42MzE4IDguNTM5MDEgMTAuMDE1OSA5LjMwODg0TDEyLjg1MzYgMTIuMTQ2NEMxMy4wNDg4IDEyLjM0MTcgMTMuMDQ4OCAxMi42NTgzIDEyLjg1MzYgMTIuODUzNkMxMi42NTgzIDEzLjA0ODggMTIuMzQxNyAxMy4wNDg4IDEyLjE0NjQgMTIuODUzNkw5LjMwODg0IDEwLjAxNTlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzNCA9IFtcImNvbG9yXCJdO1xudmFyIE1hcmdpbkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMzQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjQ5OTg4IDIuMDAwMTJDMS43NzYwMiAyLjAwMDEyIDEuOTk5ODggMS43NzYyNiAxLjk5OTg4IDEuNTAwMTJDMS45OTk4OCAxLjIyMzk4IDEuNzc2MDIgMS4wMDAxMiAxLjQ5OTg4IDEuMDAwMTJDMS4yMjM3NCAxLjAwMDEyIDAuOTk5ODc4IDEuMjIzOTggMC45OTk4NzggMS41MDAxMkMwLjk5OTg3OCAxLjc3NjI2IDEuMjIzNzQgMi4wMDAxMiAxLjQ5OTg4IDIuMDAwMTJaTTQuNDk5ODggMi4wMDAxMkM0Ljc3NjAyIDIuMDAwMTIgNC45OTk4OCAxLjc3NjI2IDQuOTk5ODggMS41MDAxMkM0Ljk5OTg4IDEuMjIzOTggNC43NzYwMiAxLjAwMDEyIDQuNDk5ODggMS4wMDAxMkM0LjIyMzc0IDEuMDAwMTIgMy45OTk4OCAxLjIyMzk4IDMuOTk5ODggMS41MDAxMkMzLjk5OTg4IDEuNzc2MjYgNC4yMjM3NCAyLjAwMDEyIDQuNDk5ODggMi4wMDAxMlpNNy45OTk4OCAxLjUwMDEyQzcuOTk5ODggMS43NzYyNiA3Ljc3NjAyIDIuMDAwMTIgNy40OTk4OCAyLjAwMDEyQzcuMjIzNzQgMi4wMDAxMiA2Ljk5OTg4IDEuNzc2MjYgNi45OTk4OCAxLjUwMDEyQzYuOTk5ODggMS4yMjM5OCA3LjIyMzc0IDEuMDAwMTIgNy40OTk4OCAxLjAwMDEyQzcuNzc2MDIgMS4wMDAxMiA3Ljk5OTg4IDEuMjIzOTggNy45OTk4OCAxLjUwMDEyWk0xMC40OTk5IDIuMDAwMTJDMTAuNzc2IDIuMDAwMTIgMTAuOTk5OSAxLjc3NjI2IDEwLjk5OTkgMS41MDAxMkMxMC45OTk5IDEuMjIzOTggMTAuNzc2IDEuMDAwMTIgMTAuNDk5OSAxLjAwMDEyQzEwLjIyMzcgMS4wMDAxMiA5Ljk5OTg4IDEuMjIzOTggOS45OTk4OCAxLjUwMDEyQzkuOTk5ODggMS43NzYyNiAxMC4yMjM3IDIuMDAwMTIgMTAuNDk5OSAyLjAwMDEyWk0xMy45OTk5IDEuNTAwMTJDMTMuOTk5OSAxLjc3NjI2IDEzLjc3NiAyLjAwMDEyIDEzLjQ5OTkgMi4wMDAxMkMxMy4yMjM3IDIuMDAwMTIgMTIuOTk5OSAxLjc3NjI2IDEyLjk5OTkgMS41MDAxMkMxMi45OTk5IDEuMjIzOTggMTMuMjIzNyAxLjAwMDEyIDEzLjQ5OTkgMS4wMDAxMkMxMy43NzYgMS4wMDAxMiAxMy45OTk5IDEuMjIzOTggMTMuOTk5OSAxLjUwMDEyWk0xLjQ5OTg4IDE0LjAwMDFDMS43NzYwMiAxNC4wMDAxIDEuOTk5ODggMTMuNzc2MyAxLjk5OTg4IDEzLjUwMDFDMS45OTk4OCAxMy4yMjQgMS43NzYwMiAxMy4wMDAxIDEuNDk5ODggMTMuMDAwMUMxLjIyMzc0IDEzLjAwMDEgMC45OTk4NzggMTMuMjI0IDAuOTk5ODc4IDEzLjUwMDFDMC45OTk4NzggMTMuNzc2MyAxLjIyMzc0IDE0LjAwMDEgMS40OTk4OCAxNC4wMDAxWk0xLjk5OTg4IDEwLjUwMDFDMS45OTk4OCAxMC43NzYzIDEuNzc2MDIgMTEuMDAwMSAxLjQ5OTg4IDExLjAwMDFDMS4yMjM3NCAxMS4wMDAxIDAuOTk5ODc4IDEwLjc3NjMgMC45OTk4NzggMTAuNTAwMUMwLjk5OTg3OCAxMC4yMjQgMS4yMjM3NCAxMC4wMDAxIDEuNDk5ODggMTAuMDAwMUMxLjc3NjAyIDEwLjAwMDEgMS45OTk4OCAxMC4yMjQgMS45OTk4OCAxMC41MDAxWk0xLjQ5OTg4IDguMDAwMTJDMS43NzYwMiA4LjAwMDEyIDEuOTk5ODggNy43NzYyNiAxLjk5OTg4IDcuNTAwMTJDMS45OTk4OCA3LjIyMzk4IDEuNzc2MDIgNy4wMDAxMiAxLjQ5OTg4IDcuMDAwMTJDMS4yMjM3NCA3LjAwMDEyIDAuOTk5ODc4IDcuMjIzOTggMC45OTk4NzggNy41MDAxMkMwLjk5OTg3OCA3Ljc3NjI2IDEuMjIzNzQgOC4wMDAxMiAxLjQ5OTg4IDguMDAwMTJaTTEuOTk5ODggNC41MDAxMkMxLjk5OTg4IDQuNzc2MjYgMS43NzYwMiA1LjAwMDEyIDEuNDk5ODggNS4wMDAxMkMxLjIyMzc0IDUuMDAwMTIgMC45OTk4NzggNC43NzYyNiAwLjk5OTg3OCA0LjUwMDEyQzAuOTk5ODc4IDQuMjIzOTggMS4yMjM3NCA0LjAwMDEyIDEuNDk5ODggNC4wMDAxMkMxLjc3NjAyIDQuMDAwMTIgMS45OTk4OCA0LjIyMzk4IDEuOTk5ODggNC41MDAxMlpNMTMuNDk5OSAxMS4wMDAxQzEzLjc3NiAxMS4wMDAxIDEzLjk5OTkgMTAuNzc2MyAxMy45OTk5IDEwLjUwMDFDMTMuOTk5OSAxMC4yMjQgMTMuNzc2IDEwLjAwMDEgMTMuNDk5OSAxMC4wMDAxQzEzLjIyMzcgMTAuMDAwMSAxMi45OTk5IDEwLjIyNCAxMi45OTk5IDEwLjUwMDFDMTIuOTk5OSAxMC43NzYzIDEzLjIyMzcgMTEuMDAwMSAxMy40OTk5IDExLjAwMDFaTTEzLjk5OTkgNy41MDAxMkMxMy45OTk5IDcuNzc2MjYgMTMuNzc2IDguMDAwMTIgMTMuNDk5OSA4LjAwMDEyQzEzLjIyMzcgOC4wMDAxMiAxMi45OTk5IDcuNzc2MjYgMTIuOTk5OSA3LjUwMDEyQzEyLjk5OTkgNy4yMjM5OCAxMy4yMjM3IDcuMDAwMTIgMTMuNDk5OSA3LjAwMDEyQzEzLjc3NiA3LjAwMDEyIDEzLjk5OTkgNy4yMjM5OCAxMy45OTk5IDcuNTAwMTJaTTEzLjQ5OTkgNS4wMDAxMkMxMy43NzYgNS4wMDAxMiAxMy45OTk5IDQuNzc2MjYgMTMuOTk5OSA0LjUwMDEyQzEzLjk5OTkgNC4yMjM5OCAxMy43NzYgNC4wMDAxMiAxMy40OTk5IDQuMDAwMTJDMTMuMjIzNyA0LjAwMDEyIDEyLjk5OTkgNC4yMjM5OCAxMi45OTk5IDQuNTAwMTJDMTIuOTk5OSA0Ljc3NjI2IDEzLjIyMzcgNS4wMDAxMiAxMy40OTk5IDUuMDAwMTJaTTQuOTk5ODggMTMuNTAwMUM0Ljk5OTg4IDEzLjc3NjMgNC43NzYwMiAxNC4wMDAxIDQuNDk5ODggMTQuMDAwMUM0LjIyMzc0IDE0LjAwMDEgMy45OTk4OCAxMy43NzYzIDMuOTk5ODggMTMuNTAwMUMzLjk5OTg4IDEzLjIyNCA0LjIyMzc0IDEzLjAwMDEgNC40OTk4OCAxMy4wMDAxQzQuNzc2MDIgMTMuMDAwMSA0Ljk5OTg4IDEzLjIyNCA0Ljk5OTg4IDEzLjUwMDFaTTcuNDk5ODggMTQuMDAwMUM3Ljc3NjAyIDE0LjAwMDEgNy45OTk4OCAxMy43NzYzIDcuOTk5ODggMTMuNTAwMUM3Ljk5OTg4IDEzLjIyNCA3Ljc3NjAyIDEzLjAwMDEgNy40OTk4OCAxMy4wMDAxQzcuMjIzNzQgMTMuMDAwMSA2Ljk5OTg4IDEzLjIyNCA2Ljk5OTg4IDEzLjUwMDFDNi45OTk4OCAxMy43NzYzIDcuMjIzNzQgMTQuMDAwMSA3LjQ5OTg4IDE0LjAwMDFaTTEwLjk5OTkgMTMuNTAwMUMxMC45OTk5IDEzLjc3NjMgMTAuNzc2IDE0LjAwMDEgMTAuNDk5OSAxNC4wMDAxQzEwLjIyMzcgMTQuMDAwMSA5Ljk5OTg4IDEzLjc3NjMgOS45OTk4OCAxMy41MDAxQzkuOTk5ODggMTMuMjI0IDEwLjIyMzcgMTMuMDAwMSAxMC40OTk5IDEzLjAwMDFDMTAuNzc2IDEzLjAwMDEgMTAuOTk5OSAxMy4yMjQgMTAuOTk5OSAxMy41MDAxWk0xMy40OTk5IDE0LjAwMDFDMTMuNzc2IDE0LjAwMDEgMTMuOTk5OSAxMy43NzYzIDEzLjk5OTkgMTMuNTAwMUMxMy45OTk5IDEzLjIyNCAxMy43NzYgMTMuMDAwMSAxMy40OTk5IDEzLjAwMDFDMTMuMjIzNyAxMy4wMDAxIDEyLjk5OTkgMTMuMjI0IDEyLjk5OTkgMTMuNTAwMUMxMi45OTk5IDEzLjc3NjMgMTMuMjIzNyAxNC4wMDAxIDEzLjQ5OTkgMTQuMDAwMVpNMy45OTk4OCA1LjAwMDEyQzMuOTk5ODggNC40NDc4NCA0LjQ0NzU5IDQuMDAwMTIgNC45OTk4OCA0LjAwMDEySDkuOTk5ODhDMTAuNTUyMiA0LjAwMDEyIDEwLjk5OTkgNC40NDc4NCAxMC45OTk5IDUuMDAwMTJWMTAuMDAwMUMxMC45OTk5IDEwLjU1MjQgMTAuNTUyMiAxMS4wMDAxIDkuOTk5ODggMTEuMDAwMUg0Ljk5OTg4QzQuNDQ3NTkgMTEuMDAwMSAzLjk5OTg4IDEwLjU1MjQgMy45OTk4OCAxMC4wMDAxVjUuMDAwMTJaTTQuOTk5ODggNS4wMDAxMkg5Ljk5OTg4VjEwLjAwMDFINC45OTk4OFY1LjAwMDEyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMzUgPSBbXCJjb2xvclwiXTtcbnZhciBNYXNrT2ZmSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzNSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEgMkgxNFYxM0gxTDEgMlpNMCAyQzAgMS40NDc3MiAwLjQ0NzcxNSAxIDEgMUgxNEMxNC41NTIzIDEgMTUgMS40NDc3MiAxNSAyVjEzQzE1IDEzLjU1MjMgMTQuNTUyMyAxNCAxNCAxNEgxQzAuNDQ3NzE1IDE0IDAgMTMuNTUyMyAwIDEzVjJaTTQuODc1IDcuNUM0Ljg3NSA2LjA1MDI1IDYuMDUwMjUgNC44NzUgNy41IDQuODc1QzguOTQ5NzUgNC44NzUgMTAuMTI1IDYuMDUwMjUgMTAuMTI1IDcuNUMxMC4xMjUgOC45NDk3NSA4Ljk0OTc1IDEwLjEyNSA3LjUgMTAuMTI1QzYuMDUwMjUgMTAuMTI1IDQuODc1IDguOTQ5NzUgNC44NzUgNy41Wk03LjUgMy44NzVDNS40OTc5NyAzLjg3NSAzLjg3NSA1LjQ5Nzk3IDMuODc1IDcuNUMzLjg3NSA5LjUwMjAzIDUuNDk3OTcgMTEuMTI1IDcuNSAxMS4xMjVDOS41MDIwMyAxMS4xMjUgMTEuMTI1IDkuNTAyMDMgMTEuMTI1IDcuNUMxMS4xMjUgNS40OTc5NyA5LjUwMjAzIDMuODc1IDcuNSAzLjg3NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDM2ID0gW1wiY29sb3JcIl07XG52YXIgTWFza09uSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzNik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEgMUMwLjQ0NzcxNSAxIDAgMS40NDc3MiAwIDJWMTNDMCAxMy41NTIzIDAuNDQ3NzE1IDE0IDEgMTRIMTRDMTQuNTUyMyAxNCAxNSAxMy41NTIzIDE1IDEzVjJDMTUgMS40NDc3MiAxNC41NTIzIDEgMTQgMUgxWk03LjUgMTAuNjI1QzkuMjI1ODkgMTAuNjI1IDEwLjYyNSA5LjIyNTg5IDEwLjYyNSA3LjVDMTAuNjI1IDUuNzc0MTEgOS4yMjU4OSA0LjM3NSA3LjUgNC4zNzVDNS43NzQxMSA0LjM3NSA0LjM3NSA1Ljc3NDExIDQuMzc1IDcuNUM0LjM3NSA5LjIyNTg5IDUuNzc0MTEgMTAuNjI1IDcuNSAxMC42MjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzNyA9IFtcImNvbG9yXCJdO1xudmFyIE1pbnVzSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzNyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuMjUgNy41QzIuMjUgNy4yMjM4NiAyLjQ3Mzg2IDcgMi43NSA3SDEyLjI1QzEyLjUyNjEgNyAxMi43NSA3LjIyMzg2IDEyLjc1IDcuNUMxMi43NSA3Ljc3NjE0IDEyLjUyNjEgOCAxMi4yNSA4SDIuNzVDMi40NzM4NiA4IDIuMjUgNy43NzYxNCAyLjI1IDcuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDM4ID0gW1wiY29sb3JcIl07XG52YXIgTWludXNDaXJjbGVkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzOCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTEgMC44NzY4OTJDMy44NDIyMiAwLjg3Njg5MiAwLjg3NzA3NSAzLjg0MjA0IDAuODc3MDc1IDcuNDk5NzJDMC44NzcwNzUgMTEuMTU3NCAzLjg0MjIyIDE0LjEyMjYgNy40OTk5MSAxNC4xMjI2QzExLjE1NzYgMTQuMTIyNiAxNC4xMjI3IDExLjE1NzQgMTQuMTIyNyA3LjQ5OTcyQzE0LjEyMjcgMy44NDIwNCAxMS4xNTc2IDAuODc2ODkyIDcuNDk5OTEgMC44NzY4OTJaTTEuODI3MDcgNy40OTk3MkMxLjgyNzA3IDQuMzY2NzEgNC4zNjY4OSAxLjgyNjg5IDcuNDk5OTEgMS44MjY4OUMxMC42MzI5IDEuODI2ODkgMTMuMTcyNyA0LjM2NjcxIDEzLjE3MjcgNy40OTk3MkMxMy4xNzI3IDEwLjYzMjcgMTAuNjMyOSAxMy4xNzI2IDcuNDk5OTEgMTMuMTcyNkM0LjM2Njg5IDEzLjE3MjYgMS44MjcwNyAxMC42MzI3IDEuODI3MDcgNy40OTk3MlpNNC41MDAwMyA3QzQuMjIzODkgNyA0LjAwMDAzIDcuMjIzODYgNC4wMDAwMyA3LjVDNC4wMDAwMyA3Ljc3NjE0IDQuMjIzODkgOCA0LjUwMDAzIDhIMTAuNUMxMC43NzYyIDggMTEgNy43NzYxNCAxMSA3LjVDMTEgNy4yMjM4NiAxMC43NzYyIDcgMTAuNSA3SDQuNTAwMDNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzOSA9IFtcImNvbG9yXCJdO1xudmFyIE1peEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkMzkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0yLjE0OTIxIDMuOTk5OTZDMi4xNDkyMSAyLjk3Nzc4IDIuOTc3ODQgMi4xNDkxNSA0LjAwMDAyIDIuMTQ5MTVDNS4wMjIxOSAyLjE0OTE1IDUuODUwODMgMi45Nzc3OCA1Ljg1MDgzIDMuOTk5OTZDNS44NTA4MyA1LjAyMjEzIDUuMDIyMTkgNS44NTA3NyA0LjAwMDAyIDUuODUwNzdDMi45Nzc4NCA1Ljg1MDc3IDIuMTQ5MjEgNS4wMjIxMyAyLjE0OTIxIDMuOTk5OTZaTTQuMDAwMDIgMS4yNDkxNUMyLjQ4MDc5IDEuMjQ5MTUgMS4yNDkyMSAyLjQ4MDczIDEuMjQ5MjEgMy45OTk5NkMxLjI0OTIxIDUuNTE5MTkgMi40ODA3OSA2Ljc1MDc3IDQuMDAwMDIgNi43NTA3N0M1LjUxOTI1IDYuNzUwNzcgNi43NTA4MyA1LjUxOTE5IDYuNzUwODMgMy45OTk5NkM2Ljc1MDgzIDIuNDgwNzMgNS41MTkyNSAxLjI0OTE1IDQuMDAwMDIgMS4yNDkxNVpNNS44MjAzNCAxMS4wMDAxTDIuNDk5OTggMTIuODM2OVY5LjE2MzMxTDUuODIwMzQgMTEuMDAwMVpNMi42Mzg4MyA4LjIxMTU5QzIuMTcyMjggNy45NTM1IDEuNTk5OTggOC4yOTA5MyAxLjU5OTk4IDguODI0MTFWMTMuMTc2MUMxLjU5OTk4IDEzLjcwOTMgMi4xNzIyOCAxNC4wNDY3IDIuNjM4ODMgMTMuNzg4Nkw2LjU3MjM1IDExLjYxMjZDNy4wNTM4OSAxMS4zNDYyIDcuMDUzODkgMTAuNjU0IDYuNTcyMzUgMTAuMzg3NkwyLjYzODgzIDguMjExNTlaTTguMzAwMDEgOS4wMDAwM0M4LjMwMDAxIDguNjEzNDMgOC42MTM0MSA4LjMwMDAzIDkuMDAwMDEgOC4zMDAwM0gxM0MxMy4zODY2IDguMzAwMDMgMTMuNyA4LjYxMzQzIDEzLjcgOS4wMDAwM1YxM0MxMy43IDEzLjM4NjYgMTMuMzg2NiAxMy43IDEzIDEzLjdIOS4wMDAwMUM4LjYxMzQxIDEzLjcgOC4zMDAwMSAxMy4zODY2IDguMzAwMDEgMTNWOS4wMDAwM1pNOS4yMDAwMSA5LjIwMDAzVjEyLjhIMTIuOFY5LjIwMDAzSDkuMjAwMDFaTTEzLjQ0MzIgMi4xOTMxMUMxMy42MTg5IDIuMDE3MzcgMTMuNjE4OSAxLjczMjQ1IDEzLjQ0MzIgMS41NTY3MUMxMy4yNjc1IDEuMzgwOTggMTIuOTgyNiAxLjM4MDk4IDEyLjgwNjggMS41NTY3MUwxMSAzLjM2MzUzTDkuMTkzMjEgMS41NTY3NEM5LjAxNzQ4IDEuMzgxIDguNzMyNTUgMS4zODEgOC41NTY4MiAxLjU1Njc0QzguMzgxMDggMS43MzI0NyA4LjM4MTA4IDIuMDE3NCA4LjU1NjgyIDIuMTkzMTNMMTAuMzYzNiAzLjk5OTkyTDguNTU2ODIgNS44MDY3MUM4LjM4MTA4IDUuOTgyNDUgOC4zODEwOCA2LjI2NzM3IDguNTU2ODIgNi40NDMxMUM4LjczMjU1IDYuNjE4ODUgOS4wMTc0OCA2LjYxODg1IDkuMTkzMjEgNi40NDMxMUwxMSA0LjYzNjMyTDEyLjgwNjggNi40NDMxNEMxMi45ODI2IDYuNjE4ODcgMTMuMjY3NSA2LjYxODg3IDEzLjQ0MzIgNi40NDMxNEMxMy42MTg5IDYuMjY3NCAxMy42MTg5IDUuOTgyNDcgMTMuNDQzMiA1LjgwNjc0TDExLjYzNjQgMy45OTk5MkwxMy40NDMyIDIuMTkzMTFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzYSA9IFtcImNvbG9yXCJdO1xudmFyIE1peGVySG9yaXpvbnRhbEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM2EpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk01LjUgM0M0LjY3MTU3IDMgNCAzLjY3MTU3IDQgNC41QzQgNS4zMjg0MyA0LjY3MTU3IDYgNS41IDZDNi4zMjg0MyA2IDcgNS4zMjg0MyA3IDQuNUM3IDMuNjcxNTcgNi4zMjg0MyAzIDUuNSAzWk0zIDVDMy4wMTY3MSA1IDMuMDMzMjMgNC45OTkxOCAzLjA0OTUyIDQuOTk3NThDMy4yODAyMiA2LjEzOTkgNC4yODk2NyA3IDUuNSA3QzYuNzEwMzMgNyA3LjcxOTc4IDYuMTM5OSA3Ljk1MDQ4IDQuOTk3NThDNy45NjY3NyA0Ljk5OTE4IDcuOTgzMjkgNSA4IDVIMTMuNUMxMy43NzYxIDUgMTQgNC43NzYxNCAxNCA0LjVDMTQgNC4yMjM4NiAxMy43NzYxIDQgMTMuNSA0SDhDNy45ODMyOSA0IDcuOTY2NzcgNC4wMDA4MiA3Ljk1MDQ4IDQuMDAyNDJDNy43MTk3OCAyLjg2MDA5IDYuNzEwMzMgMiA1LjUgMkM0LjI4OTY3IDIgMy4yODAyMiAyLjg2MDA5IDMuMDQ5NTIgNC4wMDI0MkMzLjAzMzIzIDQuMDAwODIgMy4wMTY3MSA0IDMgNEgxLjVDMS4yMjM4NiA0IDEgNC4yMjM4NiAxIDQuNUMxIDQuNzc2MTQgMS4yMjM4NiA1IDEuNSA1SDNaTTExLjk1MDUgMTAuOTk3NkMxMS43MTk4IDEyLjEzOTkgMTAuNzEwMyAxMyA5LjUgMTNDOC4yODk2NyAxMyA3LjI4MDIyIDEyLjEzOTkgNy4wNDk1MiAxMC45OTc2QzcuMDMzMjMgMTAuOTk5MiA3LjAxNjcxIDExIDcgMTFIMS41QzEuMjIzODYgMTEgMSAxMC43NzYxIDEgMTAuNUMxIDEwLjIyMzkgMS4yMjM4NiAxMCAxLjUgMTBIN0M3LjAxNjcxIDEwIDcuMDMzMjMgMTAuMDAwOCA3LjA0OTUyIDEwLjAwMjRDNy4yODAyMiA4Ljg2MDEgOC4yODk2NyA4IDkuNSA4QzEwLjcxMDMgOCAxMS43MTk4IDguODYwMSAxMS45NTA1IDEwLjAwMjRDMTEuOTY2OCAxMC4wMDA4IDExLjk4MzMgMTAgMTIgMTBIMTMuNUMxMy43NzYxIDEwIDE0IDEwLjIyMzkgMTQgMTAuNUMxNCAxMC43NzYxIDEzLjc3NjEgMTEgMTMuNSAxMUgxMkMxMS45ODMzIDExIDExLjk2NjggMTAuOTk5MiAxMS45NTA1IDEwLjk5NzZaTTggMTAuNUM4IDkuNjcxNTcgOC42NzE1NyA5IDkuNSA5QzEwLjMyODQgOSAxMSA5LjY3MTU3IDExIDEwLjVDMTEgMTEuMzI4NCAxMC4zMjg0IDEyIDkuNSAxMkM4LjY3MTU3IDEyIDggMTEuMzI4NCA4IDEwLjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzYiA9IFtcImNvbG9yXCJdO1xudmFyIE1peGVyVmVydGljYWxJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNiKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNSAxLjVDNSAxLjIyMzg2IDQuNzc2MTQgMSA0LjUgMUM0LjIyMzg2IDEgNCAxLjIyMzg2IDQgMS41TDQgN0M0IDcuMDE2NzEgNC4wMDA4MiA3LjAzMzIzIDQuMDAyNDIgNy4wNDk1MkMyLjg2MDA5IDcuMjgwMjIgMiA4LjI4OTY3IDIgOS41QzIgMTAuNzEwMyAyLjg2MDA5IDExLjcxOTggNC4wMDI0MiAxMS45NTA1QzQuMDAwODIgMTEuOTY2OCA0IDExLjk4MzMgNCAxMlYxMy41QzQgMTMuNzc2MSA0LjIyMzg2IDE0IDQuNSAxNEM0Ljc3NjE0IDE0IDUgMTMuNzc2MSA1IDEzLjVWMTJDNSAxMS45ODMzIDQuOTk5MTggMTEuOTY2OCA0Ljk5NzU4IDExLjk1MDVDNi4xMzk5IDExLjcxOTggNyAxMC43MTAzIDcgOS41QzcgOC4yODk2NyA2LjEzOTkgNy4yODAyMiA0Ljk5NzU4IDcuMDQ5NTJDNC45OTkxOCA3LjAzMzIzIDUgNy4wMTY3MSA1IDdMNSAxLjVaTTExIDEuNUMxMSAxLjIyMzg2IDEwLjc3NjEgMSAxMC41IDFDMTAuMjIzOSAxIDEwIDEuMjIzODYgMTAgMS41VjNDMTAgMy4wMTY3MSAxMC4wMDA4IDMuMDMzMjMgMTAuMDAyNCAzLjA0OTUyQzguODYwMSAzLjI4MDIyIDggNC4yODk2NyA4IDUuNUM4IDYuNzEwMzMgOC44NjAxIDcuNzE5NzggMTAuMDAyNCA3Ljk1MDQ4QzEwLjAwMDggNy45NjY3NyAxMCA3Ljk4MzI5IDEwIDhWMTMuNUMxMCAxMy43NzYxIDEwLjIyMzkgMTQgMTAuNSAxNEMxMC43NzYxIDE0IDExIDEzLjc3NjEgMTEgMTMuNVY4QzExIDcuOTgzMjkgMTAuOTk5MiA3Ljk2Njc3IDEwLjk5NzYgNy45NTA0OEMxMi4xMzk5IDcuNzE5NzggMTMgNi43MTAzMyAxMyA1LjVDMTMgNC4yODk2NyAxMi4xMzk5IDMuMjgwMjIgMTAuOTk3NiAzLjA0OTUyQzEwLjk5OTIgMy4wMzMyMyAxMSAzLjAxNjcxIDExIDNWMS41Wk00LjUgOEMzLjY3MTU3IDggMyA4LjY3MTU3IDMgOS41QzMgMTAuMzI4NCAzLjY3MTU3IDExIDQuNSAxMUM1LjMyODQzIDExIDYgMTAuMzI4NCA2IDkuNUM2IDguNjcxNTcgNS4zMjg0MyA4IDQuNSA4Wk05IDUuNUM5IDQuNjcxNTcgOS42NzE1NyA0IDEwLjUgNEMxMS4zMjg0IDQgMTIgNC42NzE1NyAxMiA1LjVDMTIgNi4zMjg0MyAxMS4zMjg0IDcgMTAuNSA3QzkuNjcxNTcgNyA5IDYuMzI4NDMgOSA1LjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzYyA9IFtcImNvbG9yXCJdO1xudmFyIE1vYmlsZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM2MpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk00IDIuNUM0IDIuMjIzODYgNC4yMjM4NiAyIDQuNSAySDEwLjVDMTAuNzc2MSAyIDExIDIuMjIzODYgMTEgMi41VjEyLjVDMTEgMTIuNzc2MSAxMC43NzYxIDEzIDEwLjUgMTNINC41QzQuMjIzODYgMTMgNCAxMi43NzYxIDQgMTIuNVYyLjVaTTQuNSAxQzMuNjcxNTcgMSAzIDEuNjcxNTcgMyAyLjVWMTIuNUMzIDEzLjMyODQgMy42NzE1NyAxNCA0LjUgMTRIMTAuNUMxMS4zMjg0IDE0IDEyIDEzLjMyODQgMTIgMTIuNVYyLjVDMTIgMS42NzE1NyAxMS4zMjg0IDEgMTAuNSAxSDQuNVpNNiAxMS42NUM1LjgwNjcgMTEuNjUgNS42NSAxMS44MDY3IDUuNjUgMTJDNS42NSAxMi4xOTMzIDUuODA2NyAxMi4zNSA2IDEyLjM1SDlDOS4xOTMzIDEyLjM1IDkuMzUgMTIuMTkzMyA5LjM1IDEyQzkuMzUgMTEuODA2NyA5LjE5MzMgMTEuNjUgOSAxMS42NUg2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM2QgPSBbXCJjb2xvclwiXTtcbnZhciBNb2R1bHpMb2dvSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzZCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuMjU5MjUgMy4xNjY2N0w0LjM3MDM2IDUuMzMzMzNWMUw3LjI1OTI1IDMuMTY2NjdaTTEgOC4yMjIyMkwzLjg4ODg5IDYuMDU1NTVMMSAzLjg4ODg5VjguMjIyMjJaTTEgMTRMMy44ODg4OSAxMS44MzMzTDEgOS42NjY2NlYxNFpNNy43NDA3MiA4LjIyMjIyTDEwLjYyOTYgNi4wNTU1NUw3Ljc0MDcyIDMuODg4ODlWOC4yMjIyMlpNMTQgMy4xNjY2N0wxMS4xMTExIDUuMzMzMzNWMUwxNCAzLjE2NjY3Wk0xMS4xMTExIDExLjExMTFMMTQgOC45NDQ0NEwxMS4xMTExIDYuNzc3NzdWMTEuMTExMVpNMy44ODg4OSAxMS4xMTExTDEgOC45NDQ0NEwzLjg4ODg5IDYuNzc3NzdWMTEuMTExMVpNNC4zNzAzNiA2LjA1NTU1TDcuMjU5MjUgOC4yMjIyMlYzLjg4ODg5TDQuMzcwMzYgNi4wNTU1NVpNMy44ODg4OSA1LjMzMzMzTDEgMy4xNjY2N0wzLjg4ODg5IDFWNS4zMzMzM1pNNy43NDA3MiAzLjE2NjY3TDEwLjYyOTYgNS4zMzMzM1YxTDcuNzQwNzIgMy4xNjY2N1pNMTQgOC4yMjIyMkwxMS4xMTExIDYuMDU1NTVMMTQgMy44ODg4OVY4LjIyMjIyWk0xMS4xMTExIDExLjgzMzNMMTQgMTRWOS42NjY2NkwxMS4xMTExIDExLjgzMzNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzZSA9IFtcImNvbG9yXCJdO1xudmFyIE1vb25JY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNlKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMi44OTk5OCAwLjQ5OTk3NkMyLjg5OTk4IDAuMjc5MDYyIDIuNzIwODkgMC4wOTk5NzU2IDIuNDk5OTggMC4wOTk5NzU2QzIuMjc5MDYgMC4wOTk5NzU2IDIuMDk5OTggMC4yNzkwNjIgMi4wOTk5OCAwLjQ5OTk3NlYxLjA5OTk4SDEuNDk5OThDMS4yNzkwNiAxLjA5OTk4IDEuMDk5OTggMS4yNzkwNiAxLjA5OTk4IDEuNDk5OThDMS4wOTk5OCAxLjcyMDg5IDEuMjc5MDYgMS44OTk5OCAxLjQ5OTk4IDEuODk5OThIMi4wOTk5OFYyLjQ5OTk4QzIuMDk5OTggMi43MjA4OSAyLjI3OTA2IDIuODk5OTggMi40OTk5OCAyLjg5OTk4QzIuNzIwODkgMi44OTk5OCAyLjg5OTk4IDIuNzIwODkgMi44OTk5OCAyLjQ5OTk4VjEuODk5OThIMy40OTk5OEMzLjcyMDg5IDEuODk5OTggMy44OTk5OCAxLjcyMDg5IDMuODk5OTggMS40OTk5OEMzLjg5OTk4IDEuMjc5MDYgMy43MjA4OSAxLjA5OTk4IDMuNDk5OTggMS4wOTk5OEgyLjg5OTk4VjAuNDk5OTc2Wk01Ljg5OTk4IDMuNDk5OThDNS44OTk5OCAzLjI3OTA2IDUuNzIwODkgMy4wOTk5OCA1LjQ5OTk4IDMuMDk5OThDNS4yNzkwNiAzLjA5OTk4IDUuMDk5OTggMy4yNzkwNiA1LjA5OTk4IDMuNDk5OThWNC4wOTk5OEg0LjQ5OTk4QzQuMjc5MDYgNC4wOTk5OCA0LjA5OTk4IDQuMjc5MDYgNC4wOTk5OCA0LjQ5OTk4QzQuMDk5OTggNC43MjA4OSA0LjI3OTA2IDQuODk5OTggNC40OTk5OCA0Ljg5OTk4SDUuMDk5OThWNS40OTk5OEM1LjA5OTk4IDUuNzIwODkgNS4yNzkwNiA1Ljg5OTk4IDUuNDk5OTggNS44OTk5OEM1LjcyMDg5IDUuODk5OTggNS44OTk5OCA1LjcyMDg5IDUuODk5OTggNS40OTk5OFY0Ljg5OTk4SDYuNDk5OThDNi43MjA4OSA0Ljg5OTk4IDYuODk5OTggNC43MjA4OSA2Ljg5OTk4IDQuNDk5OThDNi44OTk5OCA0LjI3OTA2IDYuNzIwODkgNC4wOTk5OCA2LjQ5OTk4IDQuMDk5OThINS44OTk5OFYzLjQ5OTk4Wk0xLjg5OTk4IDYuNDk5OThDMS44OTk5OCA2LjI3OTA2IDEuNzIwODkgNi4wOTk5OCAxLjQ5OTk4IDYuMDk5OThDMS4yNzkwNiA2LjA5OTk4IDEuMDk5OTggNi4yNzkwNiAxLjA5OTk4IDYuNDk5OThWNy4wOTk5OEgwLjQ5OTk3NkMwLjI3OTA2MiA3LjA5OTk4IDAuMDk5OTc1NiA3LjI3OTA2IDAuMDk5OTc1NiA3LjQ5OTk4QzAuMDk5OTc1NiA3LjcyMDg5IDAuMjc5MDYyIDcuODk5OTggMC40OTk5NzYgNy44OTk5OEgxLjA5OTk4VjguNDk5OThDMS4wOTk5OCA4LjcyMDg5IDEuMjc5MDYgOC44OTk5NyAxLjQ5OTk4IDguODk5OTdDMS43MjA4OSA4Ljg5OTk3IDEuODk5OTggOC43MjA4OSAxLjg5OTk4IDguNDk5OThWNy44OTk5OEgyLjQ5OTk4QzIuNzIwODkgNy44OTk5OCAyLjg5OTk4IDcuNzIwODkgMi44OTk5OCA3LjQ5OTk4QzIuODk5OTggNy4yNzkwNiAyLjcyMDg5IDcuMDk5OTggMi40OTk5OCA3LjA5OTk4SDEuODk5OThWNi40OTk5OFpNOC41NDQwNiAwLjk4MTg0TDguMjQ2MTggMC45NDE1ODZDOC4wMzI3NSAwLjkxNzY3NiA3LjkwNjkyIDEuMTY1NSA4LjAyOTM2IDEuMzQxOTRDOC4xNzAxMyAxLjU0NDc5IDguMjk5ODEgMS43NTU5MiA4LjQxNzU0IDEuOTc0NDVDOC45MTg3OCAyLjkwNDg1IDkuMjAzMjIgMy45NjkzMiA5LjIwMzIyIDUuMTAwMjJDOS4yMDMyMiA4LjM3MjAxIDYuODIyNDcgMTEuMDg3OCAzLjY5ODg3IDExLjYwOTdDMy40NTczNiAxMS42NSAzLjIwOTg4IDExLjY3NzIgMi45NjAwOCAxMS42OTA2QzIuNzQ1NjMgMTEuNzAyIDIuNjI3MjkgMTEuOTUzNSAyLjc3NzIxIDEyLjEwNzJDMi44NDU1MSAxMi4xNzczIDIuOTE1MzUgMTIuMjQ1OCAyLjk4NjY3IDEyLjMxMjhMMy4wNTg4MyAxMi4zNzk1TDMuMzE4ODMgMTIuNjA0NUwzLjUwNjg0IDEyLjc1MzJMMy42Mjc5NiAxMi44NDMzTDMuODE0OTEgMTIuOTc0MkwzLjk5MDc5IDEzLjA4OUM0LjExMTc1IDEzLjE2NTEgNC4yMzUzNiAxMy4yMzc1IDQuMzYxNTcgMTMuMzA1OUw0LjYyNDk2IDEzLjQ0MTJMNC44ODU1MyAxMy41NjA3TDUuMTg4MzcgMTMuNjgyOEw1LjQzMTY5IDEzLjc2ODZDNS41NjU2NCAxMy44MTI4IDUuNzAxNDkgMTMuODUyOSA1LjgzODU3IDEzLjg4ODVDNS45NDI2MiAxMy45MTU1IDYuMDQ3NjcgMTMuOTQwMSA2LjE1NDA1IDEzLjk2MjJDNi4yNzk5MyAxMy45ODgzIDYuNDA3MTMgMTQuMDEwOSA2LjUzNTQ0IDE0LjAyOThMNi44NTI0MSAxNC4wNjg1TDcuMTE5MzQgMTQuMDg5MkM3LjI0NjM3IDE0LjA5NjUgNy4zNzQzNiAxNC4xMDAyIDcuNTAzMjIgMTQuMTAwMkMxMS4xNDgzIDE0LjEwMDIgMTQuMTAzMiAxMS4xNDUzIDE0LjEwMzIgNy41MDAyM0MxNC4xMDMyIDcuMjUwNDQgMTQuMDg5MyA3LjAwMzg5IDE0LjA2MjMgNi43NjEzMUwxNC4wMjU1IDYuNDg0MDdDMTMuOTkxIDYuMjYwODMgMTMuOTQ1MyA2LjA0MTI5IDEzLjg4OTEgNS44MjY0MkMxMy44MjEzIDUuNTY3MDkgMTMuNzM4MiA1LjMxMzk4IDEzLjY0MDkgNS4wNjg4MUwxMy41Mjc5IDQuODAxMzJMMTMuNDUwNyA0LjYzNTQyTDEzLjM3NjYgNC40ODY2NkMxMy4yMTc4IDQuMTc3NzMgMTMuMDM1MyAzLjg4Mjk1IDEyLjgzMTIgMy42MDQyM0wxMi42NzgyIDMuNDAzNTJMMTIuNDc5MyAzLjE2NDMyTDEyLjMxNTcgMi45ODM2MUwxMi4xOTYxIDIuODU5NTFMMTIuMDM1NSAyLjcwMjQ2TDExLjgxMzQgMi41MDE4NEwxMS40OTI1IDIuMjQxOTFMMTEuMjQ4MyAyLjA2NDk4TDEwLjk1NjIgMS44NzQ0NkwxMC42MzQ2IDEuNjg4OTRMMTAuMzA3MyAxLjUyMzc4TDEwLjE5MzggMS40NzE3Nkw5Ljk1NDg4IDEuMzcwNkw5LjY3NzkxIDEuMjY2OUw5LjQyNTY2IDEuMTg0Nkw5LjEwMDc1IDEuMDk0ODlMOC44MzU5OSAxLjAzNDg2TDguNTQ0MDYgMC45ODE4NFpNMTAuNDAzMiA1LjMwMDIzQzEwLjQwMzIgNC4yNzU4OCAxMC4yMDAyIDMuMjk4MjkgOS44MzI0NCAyLjQwNjA0QzExLjc2MjMgMy4yODk5NSAxMy4xMDMyIDUuMjM4NjIgMTMuMTAzMiA3LjUwMDIzQzEzLjEwMzIgMTAuNTkzIDEwLjU5NiAxMy4xMDAyIDcuNTAzMjIgMTMuMTAwMkM2LjYzNjQ2IDEzLjEwMDIgNS44MTU5NyAxMi45MDM2IDUuMDgzNTUgMTIuNTUyMkM2LjU0MTkgMTIuMDk0MSA3LjgxMDgxIDExLjIwODIgOC43NDMyMiAxMC4wNDE2QzguODc5NjMgMTAuMjI4NCA5LjEwMDI4IDEwLjM0OTcgOS4zNDkyOCAxMC4zNDk3QzkuNzYzNDkgMTAuMzQ5NyAxMC4wOTkzIDEwLjAxMzkgMTAuMDk5MyA5LjU5OTcxQzEwLjA5OTMgOS4yNDI1NiA5Ljg0OTY1IDguOTQzNzMgOS41MTUzNSA4Ljg2ODE2QzkuNTc3NDEgOC43NTE2NSA5LjYzNjUzIDguNjMzMzQgOS42OTI2IDguNTEzMzJDOS44ODM1OCA4LjYzMTYzIDEwLjEwODggOC42OTk5MyAxMC4zNSA4LjY5OTkzQzExLjA0MDMgOC42OTk5MyAxMS42IDguMTQwMjggMTEuNiA3LjQ0OTkzQzExLjYgNi43NTk3NiAxMS4wNDA2IDYuMjAwMjQgMTAuMzUwNSA2LjE5OTkzQzEwLjM4NTMgNS45MDQ4NyAxMC40MDMyIDUuNjA0NjQgMTAuNDAzMiA1LjMwMDIzWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM2YgPSBbXCJjb2xvclwiXTtcbnZhciBNb3ZlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzZik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuODE4MTkgMC45MzE3OUM3LjY0MjQ1IDAuNzU2MDU0IDcuMzU3NTMgMC43NTYwNTQgNy4xODE3OSAwLjkzMTc5TDUuNDMxNzkgMi42ODE3OUM1LjI1NjA1IDIuODU3NTMgNS4yNTYwNSAzLjE0MjQ1IDUuNDMxNzkgMy4zMTgxOUM1LjYwNzUzIDMuNDkzOTIgNS44OTI0NSAzLjQ5MzkyIDYuMDY4MTkgMy4zMTgxOUw2Ljk5OTk5IDIuMzg2MzhWNS40OTk5OUM2Ljk5OTk5IDUuNzc2MTMgNy4yMjM4NSA1Ljk5OTk5IDcuNDk5OTkgNS45OTk5OUM3Ljc3NjEzIDUuOTk5OTkgNy45OTk5OSA1Ljc3NjEzIDcuOTk5OTkgNS40OTk5OVYyLjM4NjM4TDguOTMxNzkgMy4zMTgxOUM5LjEwNzUzIDMuNDkzOTIgOS4zOTI0NSAzLjQ5MzkyIDkuNTY4MTkgMy4zMTgxOUM5Ljc0MzkyIDMuMTQyNDUgOS43NDM5MiAyLjg1NzUzIDkuNTY4MTkgMi42ODE3OUw3LjgxODE5IDAuOTMxNzlaTTcuOTk5OTkgOS40OTk5OUM3Ljk5OTk5IDkuMjIzODUgNy43NzYxMyA4Ljk5OTk5IDcuNDk5OTkgOC45OTk5OUM3LjIyMzg1IDguOTk5OTkgNi45OTk5OSA5LjIyMzg1IDYuOTk5OTkgOS40OTk5OVYxMi42MTM2TDYuMDY4MTkgMTEuNjgxOEM1Ljg5MjQ1IDExLjUwNjEgNS42MDc1MyAxMS41MDYxIDUuNDMxNzkgMTEuNjgxOEM1LjI1NjA1IDExLjg1NzUgNS4yNTYwNSAxMi4xNDI0IDUuNDMxNzkgMTIuMzE4Mkw3LjE4MTc5IDE0LjA2ODJDNy4zNTc1MyAxNC4yNDM5IDcuNjQyNDUgMTQuMjQzOSA3LjgxODE5IDE0LjA2ODJMOS41NjgxOSAxMi4zMTgyQzkuNzQzOTIgMTIuMTQyNCA5Ljc0MzkyIDExLjg1NzUgOS41NjgxOSAxMS42ODE4QzkuMzkyNDUgMTEuNTA2MSA5LjEwNzUzIDExLjUwNjEgOC45MzE3OSAxMS42ODE4TDcuOTk5OTkgMTIuNjEzNlY5LjQ5OTk5Wk04Ljk5OTk5IDcuNDk5OTlDOC45OTk5OSA3LjIyMzg1IDkuMjIzODUgNi45OTk5OSA5LjQ5OTk5IDYuOTk5OTlIMTIuNjEzNkwxMS42ODE4IDYuMDY4MTlDMTEuNTA2MSA1Ljg5MjQ1IDExLjUwNjEgNS42MDc1MyAxMS42ODE4IDUuNDMxNzlDMTEuODU3NSA1LjI1NjA1IDEyLjE0MjQgNS4yNTYwNSAxMi4zMTgyIDUuNDMxNzlMMTQuMDY4MiA3LjE4MTc5QzE0LjI0MzkgNy4zNTc1MyAxNC4yNDM5IDcuNjQyNDUgMTQuMDY4MiA3LjgxODE5TDEyLjMxODIgOS41NjgxOUMxMi4xNDI0IDkuNzQzOTIgMTEuODU3NSA5Ljc0MzkyIDExLjY4MTggOS41NjgxOUMxMS41MDYxIDkuMzkyNDUgMTEuNTA2MSA5LjEwNzUzIDExLjY4MTggOC45MzE3OUwxMi42MTM2IDcuOTk5OTlIOS40OTk5OUM5LjIyMzg1IDcuOTk5OTkgOC45OTk5OSA3Ljc3NjEzIDguOTk5OTkgNy40OTk5OVpNMy4zMTgxOSA2LjA2ODE5TDIuMzg2MzggNi45OTk5OUg1LjQ5OTk5QzUuNzc2MTMgNi45OTk5OSA1Ljk5OTk5IDcuMjIzODUgNS45OTk5OSA3LjQ5OTk5QzUuOTk5OTkgNy43NzYxMyA1Ljc3NjEzIDcuOTk5OTkgNS40OTk5OSA3Ljk5OTk5SDIuMzg2MzhMMy4zMTgxOSA4LjkzMTc5QzMuNDkzOTIgOS4xMDc1MyAzLjQ5MzkyIDkuMzkyNDUgMy4zMTgxOSA5LjU2ODE5QzMuMTQyNDUgOS43NDM5MiAyLjg1NzUzIDkuNzQzOTIgMi42ODE3OSA5LjU2ODE5TDAuOTMxNzkgNy44MTgxOUMwLjc1NjA1NCA3LjY0MjQ1IDAuNzU2MDU0IDcuMzU3NTMgMC45MzE3OSA3LjE4MTc5TDIuNjgxNzkgNS40MzE3OUMyLjg1NzUzIDUuMjU2MDUgMy4xNDI0NSA1LjI1NjA1IDMuMzE4MTkgNS40MzE3OUMzLjQ5MzkyIDUuNjA3NTMgMy40OTM5MiA1Ljg5MjQ1IDMuMzE4MTkgNi4wNjgxOVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNnID0gW1wiY29sb3JcIl07XG52YXIgTm90aW9uTG9nb0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM2cpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zLjI1NzgxIDMuMTE2ODRDMy42Nzc3MSAzLjQ1Nzk2IDMuODM1MjMgMy40MzE5MyA0LjYyMzY5IDMuMzc5MzNMMTIuMDU3MSAyLjkzMjk5QzEyLjIxNDcgMi45MzI5OSAxMi4wODM2IDIuNzc1NzEgMTIuMDMxMSAyLjc0OTU3TDEwLjc5NjUgMS44NTcxMUMxMC41NiAxLjY3MzQ3IDEwLjI0NDggMS40NjMxNSA5LjY0MDgzIDEuNTE1NzZMMi40NDMwOCAyLjA0MDc0QzIuMTgwNTkgMi4wNjY3NyAyLjEyODE1IDIuMTk4MDEgMi4yMzI3IDIuMzAzMjJMMy4yNTc4MSAzLjExNjg0Wk0zLjcwNDEgNC44NDkxN1YxMi42NzA0QzMuNzA0MSAxMy4wOTA3IDMuOTE0MTUgMTMuMjQ4IDQuMzg2OTMgMTMuMjIyTDEyLjU1NjIgMTIuNzQ5M0MxMy4wMjkyIDEyLjcyMzMgMTMuMDgxOSAxMi40MzQxIDEzLjA4MTkgMTIuMDkyN1Y0LjMyMzk3QzEzLjA4MTkgMy45ODMwNiAxMi45NTA4IDMuNzk5MjEgMTIuNjYxMiAzLjgyNTQ1TDQuMTI0MjIgNC4zMjM5N0MzLjgwOTE4IDQuMzUwNDQgMy43MDQxIDQuNTA4MDMgMy43MDQxIDQuODQ5MTdaTTExLjc2ODggNS4yNjg3MkMxMS44MjEyIDUuNTA1MTggMTEuNzY4OCA1Ljc0MTQyIDExLjUzMTkgNS43Njc5OUwxMS4xMzgzIDUuODQ2NDFWMTEuNjIwNUMxMC43OTY1IDExLjgwNDIgMTAuNDgxNCAxMS45MDkyIDEwLjIxODggMTEuOTA5MkM5Ljc5ODM1IDExLjkwOTIgOS42OTMwNSAxMS43Nzc5IDkuMzc4MTIgMTEuMzg0NEw2LjgwMzQ1IDcuMzQyNDlWMTEuMjUzMkw3LjYxODE2IDExLjQzN0M3LjYxODE2IDExLjQzNyA3LjYxODE2IDExLjkwOTIgNi45NjA4NiAxMS45MDkyTDUuMTQ4NzkgMTIuMDE0M0M1LjA5NjE1IDExLjkwOTIgNS4xNDg3OSAxMS42NDcgNS4zMzI1OSAxMS41OTQ0TDUuODA1NDYgMTEuNDYzNFY2LjI5Mjc2TDUuMTQ4OSA2LjI0MDE1QzUuMDk2MjUgNi4wMDM2OSA1LjIyNzM5IDUuNjYyNzggNS41OTU0IDUuNjM2MzFMNy41MzkzNSA1LjUwNTI4TDEwLjIxODggOS41OTk4VjUuOTc3NjVMOS41MzU2NCA1Ljg5OTI0QzkuNDgzMiA1LjYxMDE4IDkuNjkzMDUgNS40MDAyOCA5Ljk1NTc2IDUuMzc0MjVMMTEuNzY4OCA1LjI2ODcyWk0xLjgzODc0IDEuMzMyMTJMOS4zMjU1NyAwLjc4MDc4N0MxMC4yNDUgMC43MDE5MzIgMTAuNDgxNSAwLjc1NDc1MyAxMS4wNTk0IDEuMTc0NTJMMTMuNDQ5MiAyLjg1NDI0QzEzLjg0MzYgMy4xNDMwOSAxMy45NzUgMy4yMjE3MyAxMy45NzUgMy41MzY2MVYxMi43NDkzQzEzLjk3NSAxMy4zMjY2IDEzLjc2NDcgMTMuNjY4MSAxMy4wMjkzIDEzLjcyMDNMNC4zMzQ5MiAxNC4yNDU0QzMuNzgyOTEgMTQuMjcxNyAzLjUyMDE5IDE0LjE5MyAzLjIzMTExIDEzLjgyNTNMMS40NzExNiAxMS41NDE5QzEuMTU1OCAxMS4xMjE2IDEuMDI0NjYgMTAuODA3MSAxLjAyNDY2IDEwLjQzOTJWMi4yNTA0MUMxLjAyNDY2IDEuNzc4MjUgMS4yMzUwNCAxLjM4NDQxIDEuODM4NzQgMS4zMzIxMlpcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzaCA9IFtcImNvbG9yXCJdO1xudmFyIE9wYWNpdHlJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNoKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy41IDEuNUM0LjUgNC4yNSAzIDYuNSAzIDlDMyAxMS40ODUzIDUuMDE0NzIgMTMuNSA3LjUgMTMuNUM5Ljk4NTI4IDEzLjUgMTIgMTEuNDg1MyAxMiA5QzEyIDYuNSAxMC41IDQuMjUgNy41IDEuNVpNMTEgOUMxMSA3LjExMjAzIDkuOTczMTUgNS4yNzE5NSA3LjUgMi44NzM1N0M1LjAyNjg2IDUuMjcxOTUgNCA3LjExMjAzIDQgOUM0IDEwLjkzMyA1LjU2NyAxMi41IDcuNSAxMi41QzkuNDMzIDEyLjUgMTEgMTAuOTMzIDExIDlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzaSA9IFtcImNvbG9yXCJdO1xudmFyIE9wZW5Jbk5ld1dpbmRvd0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM2kpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGQ6IFwiTTEyIDEzQzEyLjU1MjMgMTMgMTMgMTIuNTUyMyAxMyAxMlYzQzEzIDIuNDQ3NzEgMTIuNTUyMyAyIDEyIDJIM0MyLjQ0NzcxIDIgMiAyLjQ0NzcxIDIgM1Y2LjVDMiA2Ljc3NjE0IDIuMjIzODYgNyAyLjUgN0MyLjc3NjE0IDcgMyA2Ljc3NjE0IDMgNi41VjNIMTJWMTJIOC41QzguMjIzODYgMTIgOCAxMi4yMjM5IDggMTIuNUM4IDEyLjc3NjEgOC4yMjM4NiAxMyA4LjUgMTNIMTJaTTkgNi41QzkgNi41MDAxIDkgNi41MDAyMSA5IDYuNTAwMzFWNi41MDAzNVY5LjVDOSA5Ljc3NjE0IDguNzc2MTQgMTAgOC41IDEwQzguMjIzODYgMTAgOCA5Ljc3NjE0IDggOS41VjcuNzA3MTFMMi44NTM1NSAxMi44NTM2QzIuNjU4MjkgMTMuMDQ4OCAyLjM0MTcxIDEzLjA0ODggMi4xNDY0NSAxMi44NTM2QzEuOTUxMTggMTIuNjU4MyAxLjk1MTE4IDEyLjM0MTcgMi4xNDY0NSAxMi4xNDY0TDcuMjkyODkgN0g1LjVDNS4yMjM4NiA3IDUgNi43NzYxNCA1IDYuNUM1IDYuMjIzODYgNS4yMjM4NiA2IDUuNSA2SDguNUM4LjU2Nzc5IDYgOC42MzI0NCA2LjAxMzQ5IDguNjkxMzkgNi4wMzc5NEM4Ljc0OTQ5IDYuMDYxOTggOC44MDM5OCA2LjA5NzQ0IDguODUxNDMgNi4xNDQzM0M4Ljk0MjUxIDYuMjM0MzQgOC45OTkyIDYuMzU5MDkgOC45OTk5OSA2LjQ5NzA4TDguOTk5OTkgNi40OTczOFwiLFxuICAgIGZpbGw6IGNvbG9yXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNqID0gW1wiY29sb3JcIl07XG52YXIgT3ZlcmxpbmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNqKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy40OTk4NSAxLjEwMDAxQzMuMjc4OTQgMS4xMDAwMSAzLjA5OTg1IDEuMjc5MDkgMy4wOTk4NSAxLjUwMDAxQzMuMDk5ODUgMS43MjA5MiAzLjI3ODk0IDEuOTAwMDEgMy40OTk4NSAxLjkwMDAxSDExLjQ5OTlDMTEuNzIwOCAxLjkwMDAxIDExLjg5OTkgMS43MjA5MiAxMS44OTk5IDEuNTAwMDFDMTEuODk5OSAxLjI3OTA5IDExLjcyMDggMS4xMDAwMSAxMS40OTk5IDEuMTAwMDFIMy40OTk4NVpNNC45OTk5NSA0LjI1MDAxQzQuOTk5OTUgMy45NzM4NyA0Ljc3NjA5IDMuNzUwMDEgNC40OTk5NSAzLjc1MDAxQzQuMjIzODEgMy43NTAwMSAzLjk5OTk1IDMuOTczODcgMy45OTk5NSA0LjI1MDAxVjkuNTUwMDFDMy45OTk5NSAxMS40ODMgNS41NjY5NSAxMy4wNSA3LjQ5OTk1IDEzLjA1QzkuNDMyOTUgMTMuMDUgMTEgMTEuNDgzIDExIDkuNTUwMDFWNC4yNTAwMUMxMSAzLjk3Mzg3IDEwLjc3NjEgMy43NTAwMSAxMC41IDMuNzUwMDFDMTAuMjIzOCAzLjc1MDAxIDkuOTk5OTUgMy45NzM4NyA5Ljk5OTk1IDQuMjUwMDFWOS41NTAwMUM5Ljk5OTk1IDEwLjkzMDcgOC44ODA2NiAxMi4wNSA3LjQ5OTk1IDEyLjA1QzYuMTE5MjQgMTIuMDUgNC45OTk5NSAxMC45MzA3IDQuOTk5OTUgOS41NTAwMVY0LjI1MDAxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM2sgPSBbXCJjb2xvclwiXTtcbnZhciBQYWRkaW5nSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzayk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuODU3MTQgMkgxMi4xNDI5QzEyLjYxNjIgMiAxMyAyLjM4Mzc2IDEzIDIuODU3MTRWMTIuMTQyOUMxMyAxMi42MTYyIDEyLjYxNjIgMTMgMTIuMTQyOSAxM0gyLjg1NzE0QzIuMzgzNzYgMTMgMiAxMi42MTYyIDIgMTIuMTQyOVYyLjg1NzE0QzIgMi4zODM3NiAyLjM4Mzc2IDIgMi44NTcxNCAyWk0xIDIuODU3MTRDMSAxLjgzMTQ3IDEuODMxNDcgMSAyLjg1NzE0IDFIMTIuMTQyOUMxMy4xNjg1IDEgMTQgMS44MzE0NyAxNCAyLjg1NzE0VjEyLjE0MjlDMTQgMTMuMTY4NSAxMy4xNjg1IDE0IDEyLjE0MjkgMTRIMi44NTcxNEMxLjgzMTQ3IDE0IDEgMTMuMTY4NSAxIDEyLjE0MjlWMi44NTcxNFpNNy40OTk4OCA1LjAwMDEyQzcuNzc2MDIgNS4wMDAxMiA3Ljk5OTg4IDQuNzc2MjYgNy45OTk4OCA0LjUwMDEyQzcuOTk5ODggNC4yMjM5OCA3Ljc3NjAyIDQuMDAwMTIgNy40OTk4OCA0LjAwMDEyQzcuMjIzNzQgNC4wMDAxMiA2Ljk5OTg4IDQuMjIzOTggNi45OTk4OCA0LjUwMDEyQzYuOTk5ODggNC43NzYyNiA3LjIyMzc0IDUuMDAwMTIgNy40OTk4OCA1LjAwMDEyWk00LjQ5OTg4IDExLjAwMDFDNC43NzYwMiAxMS4wMDAxIDQuOTk5ODggMTAuNzc2MyA0Ljk5OTg4IDEwLjUwMDFDNC45OTk4OCAxMC4yMjQgNC43NzYwMiAxMC4wMDAxIDQuNDk5ODggMTAuMDAwMUM0LjIyMzc0IDEwLjAwMDEgMy45OTk4OCAxMC4yMjQgMy45OTk4OCAxMC41MDAxQzMuOTk5ODggMTAuNzc2MyA0LjIyMzc0IDExLjAwMDEgNC40OTk4OCAxMS4wMDAxWk00Ljk5OTg4IDcuNTAwMTJDNC45OTk4OCA3Ljc3NjI2IDQuNzc2MDIgOC4wMDAxMiA0LjQ5OTg4IDguMDAwMTJDNC4yMjM3NCA4LjAwMDEyIDMuOTk5ODggNy43NzYyNiAzLjk5OTg4IDcuNTAwMTJDMy45OTk4OCA3LjIyMzk4IDQuMjIzNzQgNy4wMDAxMiA0LjQ5OTg4IDcuMDAwMTJDNC43NzYwMiA3LjAwMDEyIDQuOTk5ODggNy4yMjM5OCA0Ljk5OTg4IDcuNTAwMTJaTTQuNDk5ODggNS4wMDAxMkM0Ljc3NjAyIDUuMDAwMTIgNC45OTk4OCA0Ljc3NjI2IDQuOTk5ODggNC41MDAxMkM0Ljk5OTg4IDQuMjIzOTggNC43NzYwMiA0LjAwMDEyIDQuNDk5ODggNC4wMDAxMkM0LjIyMzc0IDQuMDAwMTIgMy45OTk4OCA0LjIyMzk4IDMuOTk5ODggNC41MDAxMkMzLjk5OTg4IDQuNzc2MjYgNC4yMjM3NCA1LjAwMDEyIDQuNDk5ODggNS4wMDAxMlpNMTAuOTk5OSAxMC41MDAxQzEwLjk5OTkgMTAuNzc2MyAxMC43NzYgMTEuMDAwMSAxMC40OTk5IDExLjAwMDFDMTAuMjIzNyAxMS4wMDAxIDkuOTk5ODggMTAuNzc2MyA5Ljk5OTg4IDEwLjUwMDFDOS45OTk4OCAxMC4yMjQgMTAuMjIzNyAxMC4wMDAxIDEwLjQ5OTkgMTAuMDAwMUMxMC43NzYgMTAuMDAwMSAxMC45OTk5IDEwLjIyNCAxMC45OTk5IDEwLjUwMDFaTTEwLjQ5OTkgOC4wMDAxMkMxMC43NzYgOC4wMDAxMiAxMC45OTk5IDcuNzc2MjYgMTAuOTk5OSA3LjUwMDEyQzEwLjk5OTkgNy4yMjM5OCAxMC43NzYgNy4wMDAxMiAxMC40OTk5IDcuMDAwMTJDMTAuMjIzNyA3LjAwMDEyIDkuOTk5ODggNy4yMjM5OCA5Ljk5OTg4IDcuNTAwMTJDOS45OTk4OCA3Ljc3NjI2IDEwLjIyMzcgOC4wMDAxMiAxMC40OTk5IDguMDAwMTJaTTEwLjk5OTkgNC41MDAxMkMxMC45OTk5IDQuNzc2MjYgMTAuNzc2IDUuMDAwMTIgMTAuNDk5OSA1LjAwMDEyQzEwLjIyMzcgNS4wMDAxMiA5Ljk5OTg4IDQuNzc2MjYgOS45OTk4OCA0LjUwMDEyQzkuOTk5ODggNC4yMjM5OCAxMC4yMjM3IDQuMDAwMTIgMTAuNDk5OSA0LjAwMDEyQzEwLjc3NiA0LjAwMDEyIDEwLjk5OTkgNC4yMjM5OCAxMC45OTk5IDQuNTAwMTJaTTcuNDk5ODggMTEuMDAwMUM3Ljc3NjAyIDExLjAwMDEgNy45OTk4OCAxMC43NzYzIDcuOTk5ODggMTAuNTAwMUM3Ljk5OTg4IDEwLjIyNCA3Ljc3NjAyIDEwLjAwMDEgNy40OTk4OCAxMC4wMDAxQzcuMjIzNzQgMTAuMDAwMSA2Ljk5OTg4IDEwLjIyNCA2Ljk5OTg4IDEwLjUwMDFDNi45OTk4OCAxMC43NzYzIDcuMjIzNzQgMTEuMDAwMSA3LjQ5OTg4IDExLjAwMDFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzbCA9IFtcImNvbG9yXCJdO1xudmFyIFBhcGVyUGxhbmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNsKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS4yMDMwOCAxLjA0MzEyQzEuMDA0ODEgMC45NTQ5OTggMC43NzIzNDEgMS4wMDQ4IDAuNjI3NTc3IDEuMTY2NDFDMC40ODI4MTMgMS4zMjgwMiAwLjQ1ODc5NCAxLjU2NDU1IDAuNTY4MTE3IDEuNzUxOTZMMy45MjExNSA3LjUwMDAyTDAuNTY4MTE3IDEzLjI0ODFDMC40NTg3OTQgMTMuNDM1NSAwLjQ4MjgxMyAxMy42NzIgMC42Mjc1NzcgMTMuODMzNkMwLjc3MjM0MSAxMy45OTUyIDEuMDA0ODEgMTQuMDQ1IDEuMjAzMDggMTMuOTU2OUwxNC43MDMxIDcuOTU2OTNDMTQuODgzNiA3Ljg3NjY4IDE1IDcuNjk3NjIgMTUgNy41MDAwMkMxNSA3LjMwMjQzIDE0Ljg4MzYgNy4xMjMzNyAxNC43MDMxIDcuMDQzMTJMMS4yMDMwOCAxLjA0MzEyWk00Ljg0NTUzIDcuMTAwMDJMMi4yMTIzNCAyLjU4NkwxMy4yNjg5IDcuNTAwMDJMMi4yMTIzNCAxMi40MTRMNC44NDU1MiA3LjkwMDAySDlDOS4yMjA5MiA3LjkwMDAyIDkuNCA3LjcyMDk0IDkuNCA3LjUwMDAyQzkuNCA3LjI3OTExIDkuMjIwOTIgNy4xMDAwMiA5IDcuMTAwMDJINC44NDU1M1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNtID0gW1wiY29sb3JcIl07XG52YXIgUGF1c2VJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNtKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNi4wNDk5NSAyLjc0OTk4QzYuMDQ5OTUgMi40NDYyMyA1LjgwMzcxIDIuMTk5OTggNS40OTk5NSAyLjE5OTk4QzUuMTk2MTkgMi4xOTk5OCA0Ljk0OTk1IDIuNDQ2MjMgNC45NDk5NSAyLjc0OTk4VjEyLjI1QzQuOTQ5OTUgMTIuNTUzNyA1LjE5NjE5IDEyLjggNS40OTk5NSAxMi44QzUuODAzNzEgMTIuOCA2LjA0OTk1IDEyLjU1MzcgNi4wNDk5NSAxMi4yNVYyLjc0OTk4Wk0xMC4wNSAyLjc0OTk4QzEwLjA1IDIuNDQ2MjMgOS44MDM3MSAyLjE5OTk4IDkuNDk5OTUgMi4xOTk5OEM5LjE5NjE5IDIuMTk5OTggOC45NDk5NSAyLjQ0NjIzIDguOTQ5OTUgMi43NDk5OFYxMi4yNUM4Ljk0OTk1IDEyLjU1MzcgOS4xOTYxOSAxMi44IDkuNDk5OTUgMTIuOEM5LjgwMzcxIDEyLjggMTAuMDUgMTIuNTUzNyAxMC4wNSAxMi4yNVYyLjc0OTk4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM24gPSBbXCJjb2xvclwiXTtcbnZhciBQZW5jaWwxSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzbik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTExLjg1MzYgMS4xNDY0NUMxMS42NTgzIDAuOTUxMTg0IDExLjM0MTcgMC45NTExODQgMTEuMTQ2NSAxLjE0NjQ1TDMuNzE0NTUgOC41NzgzNkMzLjYyNDU5IDguNjY4MzIgMy41NTI2MyA4Ljc3NDYxIDMuNTAyNTEgOC44OTE1NUwyLjA0MDQ0IDEyLjMwM0MxLjk1OTkgMTIuNDkxIDIuMDAxODkgMTIuNzA5IDIuMTQ2NDYgMTIuODUzNkMyLjI5MTAzIDEyLjk5ODEgMi41MDkwNSAxMy4wNDAxIDIuNjk2OTcgMTIuOTU5Nkw2LjEwODQ3IDExLjQ5NzVDNi4yMjU0IDExLjQ0NzQgNi4zMzE3IDExLjM3NTQgNi40MjE2NiAxMS4yODU1TDEzLjg1MzYgMy44NTM1NUMxNC4wNDg4IDMuNjU4MjkgMTQuMDQ4OCAzLjM0MTcxIDEzLjg1MzYgMy4xNDY0NUwxMS44NTM2IDEuMTQ2NDVaTTQuNDIxNjYgOS4yODU0N0wxMS41IDIuMjA3MTFMMTIuNzkyOSAzLjVMNS43MTQ1NSAxMC41Nzg0TDQuMjE5MjQgMTEuMjE5MkwzLjc4MDgxIDEwLjc4MDhMNC40MjE2NiA5LjI4NTQ3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM28gPSBbXCJjb2xvclwiXTtcbnZhciBQZW5jaWwySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzbyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEyLjE0NjQgMS4xNDY0NUMxMi4zNDE3IDAuOTUxMTg0IDEyLjY1ODMgMC45NTExODQgMTIuODUzNSAxLjE0NjQ1TDE0Ljg1MzUgMy4xNDY0NUMxNS4wNDg4IDMuMzQxNzEgMTUuMDQ4OCAzLjY1ODI5IDE0Ljg1MzUgMy44NTM1NUwxMC45MTA5IDcuNzk2MThDMTAuODM0OSA3Ljg3MjE4IDEwLjc0NzEgNy45MzU0MyAxMC42NTEgNy45ODM1TDYuNzIzNTkgOS45NDcyMUM2LjUzMTA5IDEwLjA0MzUgNi4yOTg2MSAxMC4wMDU3IDYuMTQ2NDMgOS44NTM1NUM1Ljk5NDI1IDkuNzAxMzcgNS45NTY1MiA5LjQ2ODg5IDYuMDUyNzcgOS4yNzYzOUw4LjAxNjQ4IDUuMzQ4OTdDOC4wNjQ1NSA1LjI1MjgzIDguMTI3OCA1LjE2NTA3IDguMjAzOCA1LjA4OTA3TDEyLjE0NjQgMS4xNDY0NVpNMTIuNSAyLjIwNzExTDguOTEwOTEgNS43OTYxOEw3Ljg3MjY2IDcuODcyNjdMOC4xMjczMSA4LjEyNzMyTDEwLjIwMzggNy4wODkwN0wxMy43OTI5IDMuNUwxMi41IDIuMjA3MTFaTTkuOTk5OTggMkw4Ljk5OTk4IDNINC45QzQuNDcxNzEgMyA0LjE4MDU2IDMuMDAwMzkgMy45NTU1MiAzLjAxODc3QzMuNzM2MzEgMy4wMzY2OCAzLjYyNDIxIDMuMDY5MTUgMy41NDYwMSAzLjEwODk5QzMuMzU3ODUgMy4yMDQ4NyAzLjIwNDg3IDMuMzU3ODUgMy4xMDg5OSAzLjU0NjAxQzMuMDY5MTUgMy42MjQyMSAzLjAzNjY5IDMuNzM2MzEgMy4wMTg3OCAzLjk1NTUyQzMuMDAwMzkgNC4xODA1NiAzIDQuNDcxNzEgMyA0LjlWMTEuMUMzIDExLjUyODMgMy4wMDAzOSAxMS44MTk0IDMuMDE4NzggMTIuMDQ0NUMzLjAzNjY5IDEyLjI2MzcgMy4wNjkxNSAxMi4zNzU4IDMuMTA4OTkgMTIuNDU0QzMuMjA0ODcgMTIuNjQyMiAzLjM1Nzg1IDEyLjc5NTEgMy41NDYwMSAxMi44OTFDMy42MjQyMSAxMi45MzA5IDMuNzM2MzEgMTIuOTYzMyAzLjk1NTUyIDEyLjk4MTJDNC4xODA1NiAxMi45OTk2IDQuNDcxNzEgMTMgNC45IDEzSDExLjFDMTEuNTI4MyAxMyAxMS44MTk0IDEyLjk5OTYgMTIuMDQ0NSAxMi45ODEyQzEyLjI2MzcgMTIuOTYzMyAxMi4zNzU4IDEyLjkzMDkgMTIuNDU0IDEyLjg5MUMxMi42NDIyIDEyLjc5NTEgMTIuNzk1MSAxMi42NDIyIDEyLjg5MSAxMi40NTRDMTIuOTMwOSAxMi4zNzU4IDEyLjk2MzMgMTIuMjYzNyAxMi45ODEyIDEyLjA0NDVDMTIuOTk5NiAxMS44MTk0IDEzIDExLjUyODMgMTMgMTEuMVY2Ljk5OTk4TDE0IDUuOTk5OThWMTEuMVYxMS4xMjA3QzE0IDExLjUyMzEgMTQgMTEuODU1MyAxMy45Nzc5IDEyLjEyNTlDMTMuOTU0OSAxMi40MDcgMTMuOTA1NyAxMi42NjUzIDEzLjc4MiAxMi45MDhDMTMuNTkwMyAxMy4yODQzIDEzLjI4NDMgMTMuNTkwMyAxMi45MDggMTMuNzgyQzEyLjY2NTMgMTMuOTA1NyAxMi40MDcgMTMuOTU0OSAxMi4xMjU5IDEzLjk3NzlDMTEuODU1MyAxNCAxMS41MjMxIDE0IDExLjEyMDcgMTRIMTEuMUg0LjlINC44NzkzNEM0LjQ3Njg2IDE0IDQuMTQ0NjggMTQgMy44NzQwOSAxMy45Nzc5QzMuNTkzMDQgMTMuOTU0OSAzLjMzNDY5IDEzLjkwNTcgMy4wOTIwMiAxMy43ODJDMi43MTU3IDEzLjU5MDMgMi40MDk3MyAxMy4yODQzIDIuMjE3OTkgMTIuOTA4QzIuMDk0MzQgMTIuNjY1MyAyLjA0NTA2IDEyLjQwNyAyLjAyMjEgMTIuMTI1OUMxLjk5OTk5IDExLjg1NTMgMS45OTk5OSAxMS41MjMxIDIgMTEuMTIwN1YxMS4xMjA2VjExLjFWNC45VjQuODc5MzVWNC44NzkzMlY0Ljg3OTMxQzEuOTk5OTkgNC40NzY4NSAxLjk5OTk5IDQuMTQ0NjggMi4wMjIxIDMuODc0MDlDMi4wNDUwNiAzLjU5MzA0IDIuMDk0MzQgMy4zMzQ2OSAyLjIxNzk5IDMuMDkyMDJDMi40MDk3MyAyLjcxNTY5IDIuNzE1NyAyLjQwOTczIDMuMDkyMDIgMi4yMTc5OUMzLjMzNDY5IDIuMDk0MzQgMy41OTMwNCAyLjA0NTA2IDMuODc0MDkgMi4wMjIxQzQuMTQ0NjggMS45OTk5OSA0LjQ3Njg1IDEuOTk5OTkgNC44NzkzMiAySDQuODc5MzVINC45SDkuOTk5OThaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzcCA9IFtcImNvbG9yXCJdO1xudmFyIFBlcnNvbkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM3ApO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjUgMC44NzVDNS40OTc5NyAwLjg3NSAzLjg3NSAyLjQ5Nzk3IDMuODc1IDQuNUMzLjg3NSA2LjE1Mjg4IDQuOTgxMjQgNy41NDczOCA2LjQ5MzczIDcuOTgzNTFDNS4yOTk3IDguMTI5MDEgNC4yNzU1NyA4LjU1MTM0IDMuNTA0MDcgOS4zMTE2N0MyLjUyMjE2IDEwLjI3OTQgMi4wMjUwMiAxMS43MiAyLjAyNTAyIDEzLjU5OTlDMi4wMjUwMiAxMy44NjIzIDIuMjM3NjkgMTQuMDc0OSAyLjUwMDAyIDE0LjA3NDlDMi43NjIzNiAxNC4wNzQ5IDIuOTc1MDIgMTMuODYyMyAyLjk3NTAyIDEzLjU5OTlDMi45NzUwMiAxMS44Nzk5IDMuNDI3ODYgMTAuNzIwNiA0LjE3MDkxIDkuOTg4M0M0LjkxNTM2IDkuMjU0NjMgNi4wMjY3NCA4Ljg3NDk5IDcuNDk5OTUgOC44NzQ5OUM4Ljk3MzE3IDguODc0OTkgMTAuMDg0NiA5LjI1NDYzIDEwLjgyOTEgOS45ODgzMUMxMS41NzIxIDEwLjcyMDYgMTIuMDI1IDExLjg3OTkgMTIuMDI1IDEzLjU5OTlDMTIuMDI1IDEzLjg2MjMgMTIuMjM3NiAxNC4wNzQ5IDEyLjUgMTQuMDc0OUMxMi43NjIzIDE0LjA3NSAxMi45NzUgMTMuODYyMyAxMi45NzUgMTMuNkMxMi45NzUgMTEuNzIgMTIuNDc3OCAxMC4yNzk0IDExLjQ5NTkgOS4zMTE2NkMxMC43MjQ0IDguNTUxMzUgOS43MDAyNSA4LjEyOTAzIDguNTA2MjUgNy45ODM1MkMxMC4wMTg3IDcuNTQ3NCAxMS4xMjUgNi4xNTI4OSAxMS4xMjUgNC41QzExLjEyNSAyLjQ5Nzk3IDkuNTAyMDMgMC44NzUgNy41IDAuODc1Wk00LjgyNSA0LjVDNC44MjUgMy4wMjI2NCA2LjAyMjY0IDEuODI1IDcuNSAxLjgyNUM4Ljk3NzM2IDEuODI1IDEwLjE3NSAzLjAyMjY0IDEwLjE3NSA0LjVDMTAuMTc1IDUuOTc3MzYgOC45NzczNiA3LjE3NSA3LjUgNy4xNzVDNi4wMjI2NCA3LjE3NSA0LjgyNSA1Ljk3NzM2IDQuODI1IDQuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNxID0gW1wiY29sb3JcIl07XG52YXIgUGllQ2hhcnRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNxKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS44NTAwMSA3LjUwMDQzQzEuODUwMDEgNC4zNzk3NSA0LjM3OTYzIDEuODUwMDEgNy41MDAwMSAxLjg1MDAxQzEwLjYyMDQgMS44NTAwMSAxMy4xNSA0LjM3OTc1IDEzLjE1IDcuNTAwNDNDMTMuMTUgMTAuNjIxMSAxMC42MjA0IDEzLjE1MDkgNy41MDAwMSAxMy4xNTA5QzQuMzc5NjMgMTMuMTUwOSAxLjg1MDAxIDEwLjYyMTEgMS44NTAwMSA3LjUwMDQzWk03LjUwMDAxIDAuODUwMDA2QzMuODI3MjggMC44NTAwMDYgMC44NTAwMDYgMy44Mjc1MyAwLjg1MDAwNiA3LjUwMDQzQzAuODUwMDA2IDExLjE3MzMgMy44MjcyOCAxNC4xNTA5IDcuNTAwMDEgMTQuMTUwOUMxMS4xNzI3IDE0LjE1MDkgMTQuMTUgMTEuMTczMyAxNC4xNSA3LjUwMDQzQzE0LjE1IDMuODI3NTMgMTEuMTcyNyAwLjg1MDAwNiA3LjUwMDAxIDAuODUwMDA2Wk03LjAwMDAxIDguMDAwMDFWMy4xMjgxMUM3LjE2NDExIDMuMTA5NTQgNy4zMzA5NCAzLjEwMDAxIDcuNTAwMDEgMy4xMDAwMUM5LjkzMDA2IDMuMTAwMDEgMTEuOSA1LjA3MDE0IDExLjkgNy41MDA0M0MxMS45IDcuNjY5MzUgMTEuODkwNSA3LjgzNjA0IDExLjg3MiA4LjAwMDAxSDcuMDAwMDFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzciA9IFtcImNvbG9yXCJdO1xudmFyIFBpbGNyb3dJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNyKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMyA1LjVDMyA3Ljk4MyA0Ljk5MTY5IDkgNyA5VjEyLjVDNyAxMi43NzYxIDcuMjIzODYgMTMgNy41IDEzQzcuNzc2MTQgMTMgOCAxMi43NzYxIDggMTIuNVY5VjMuMUg5VjEyLjVDOSAxMi43NzYxIDkuMjIzODYgMTMgOS41IDEzQzkuNzc2MTQgMTMgMTAgMTIuNzc2MSAxMCAxMi41VjMuMUgxMS41QzExLjgwMzggMy4xIDEyLjA1IDIuODUzNzYgMTIuMDUgMi41NUMxMi4wNSAyLjI0NjI0IDExLjgwMzggMiAxMS41IDJIOS41SDhINy41SDdDNC45OTE2OSAyIDMgMy4wMTcgMyA1LjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzcyA9IFtcImNvbG9yXCJdO1xudmFyIFBpbkJvdHRvbUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM3MpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMy41IDEzLjk1QzEzLjc0ODUgMTMuOTUgMTMuOTUgMTMuNzQ4NSAxMy45NSAxMy41QzEzLjk1IDEzLjI1MTQgMTMuNzQ4NSAxMy4wNSAxMy41IDEzLjA1TDEuNDk5OTUgMTMuMDVDMS4yNTE0MiAxMy4wNSAxLjA0OTk1IDEzLjI1MTQgMS4wNDk5NSAxMy41QzEuMDQ5OTUgMTMuNzQ4NSAxLjI1MTQyIDEzLjk1IDEuNDk5OTUgMTMuOTVMMTMuNSAxMy45NVpNMTEuMDY4MSA3LjU2ODNDMTEuMjQzOSA3LjM5MjU3IDExLjI0MzkgNy4xMDc2NCAxMS4wNjgxIDYuOTMxOTFDMTAuODkyNCA2Ljc1NjE3IDEwLjYwNzUgNi43NTYxNyAxMC40MzE3IDYuOTMxOTFMNy45NDk5MyA5LjQxMzcxTDcuOTQ5OTMgMS40OTk5OEM3Ljk0OTkzIDEuMjUxNDYgNy43NDg0NiAxLjA0OTk4IDcuNDk5OTMgMS4wNDk5OEM3LjI1MTQgMS4wNDk5OCA3LjA0OTkzIDEuMjUxNDYgNy4wNDk5MyAxLjQ5OTk4TDcuMDQ5OTMgOS40MTM3MUw0LjU2ODEzIDYuOTMxOTFDNC4zOTIzOSA2Ljc1NjE3IDQuMTA3NDYgNi43NTYxNyAzLjkzMTczIDYuOTMxOTFDMy43NTU5OSA3LjEwNzY0IDMuNzU1OTkgNy4zOTI1NyAzLjkzMTczIDcuNTY4M0w3LjE4MTczIDEwLjgxODNDNy4zNTc0NiAxMC45OTQgNy42NDIzOSAxMC45OTQgNy44MTgxMiAxMC44MTgzTDExLjA2ODEgNy41NjgzWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM3QgPSBbXCJjb2xvclwiXTtcbnZhciBQaW5MZWZ0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzdCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIuMDUwMDUgMTMuNUMyLjA1MDA1IDEzLjc0ODUgMi4yNTE1MiAxMy45NSAyLjUwMDA1IDEzLjk1QzIuNzQ4NTggMTMuOTUgMi45NTAwNSAxMy43NDg1IDIuOTUwMDUgMTMuNUwyLjk1MDA1IDEuNDk5OTVDMi45NTAwNSAxLjI1MTQyIDIuNzQ4NTggMS4wNDk5NSAyLjUwMDA1IDEuMDQ5OTVDMi4yNTE1MiAxLjA0OTk1IDIuMDUwMDUgMS4yNTE0MiAyLjA1MDA1IDEuNDk5OTVMMi4wNTAwNSAxMy41Wk04LjQzMTcgMTEuMDY4MUM4LjYwNzQzIDExLjI0MzkgOC44OTIzNiAxMS4yNDM5IDkuMDY4MDkgMTEuMDY4MUM5LjI0MzgzIDEwLjg5MjQgOS4yNDM4MyAxMC42MDc1IDkuMDY4MDkgMTAuNDMxN0w2LjU4NjI5IDcuOTQ5OTNMMTQuNSA3Ljk0OTkzQzE0Ljc0ODUgNy45NDk5MyAxNC45NSA3Ljc0ODQ2IDE0Ljk1IDcuNDk5OTNDMTQuOTUgNy4yNTE0IDE0Ljc0ODUgNy4wNDk5MyAxNC41IDcuMDQ5OTNMNi41ODYyOSA3LjA0OTkzTDkuMDY4MDkgNC41NjgxM0M5LjI0MzgzIDQuMzkyMzkgOS4yNDM4MyA0LjEwNzQ2IDkuMDY4MDkgMy45MzE3M0M4Ljg5MjM2IDMuNzU1OTkgOC42MDc0MyAzLjc1NTk5IDguNDMxNyAzLjkzMTczTDUuMTgxNyA3LjE4MTczQzUuMDA1OTYgNy4zNTc0NiA1LjAwNTk2IDcuNjQyMzkgNS4xODE3IDcuODE4MTJMOC40MzE3IDExLjA2ODFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzdSA9IFtcImNvbG9yXCJdO1xudmFyIFBpblJpZ2h0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzdSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEyLjk1IDEuNTAwMDVDMTIuOTUgMS4yNTE1MiAxMi43NDg1IDEuMDUwMDUgMTIuNSAxLjA1MDA1QzEyLjI1MTQgMS4wNTAwNSAxMi4wNSAxLjI1MTUyIDEyLjA1IDEuNTAwMDVMMTIuMDUgMTMuNUMxMi4wNSAxMy43NDg2IDEyLjI1MTQgMTMuOTUgMTIuNSAxMy45NUMxMi43NDg1IDEzLjk1IDEyLjk1IDEzLjc0ODYgMTIuOTUgMTMuNUwxMi45NSAxLjUwMDA1Wk02LjU2ODMgMy45MzE4OEM2LjM5MjU3IDMuNzU2MTQgNi4xMDc2NCAzLjc1NjE0IDUuOTMxOTEgMy45MzE4OEM1Ljc1NjE3IDQuMTA3NjEgNS43NTYxNyA0LjM5MjU0IDUuOTMxOTEgNC41NjgyN0w4LjQxMzcxIDcuMDUwMDdMMC40OTk5ODQgNy4wNTAwN0MwLjI1MTQ1NiA3LjA1MDA3IDAuMDQ5OTg0NyA3LjI1MTU1IDAuMDQ5OTg0NyA3LjUwMDA3QzAuMDQ5OTg0NiA3Ljc0ODYgMC4yNTE0NTcgNy45NTAwNyAwLjQ5OTk4NCA3Ljk1MDA3TDguNDEzNzEgNy45NTAwN0w1LjkzMTkxIDEwLjQzMTlDNS43NTYxNyAxMC42MDc2IDUuNzU2MTcgMTAuODkyNSA1LjkzMTkxIDExLjA2ODNDNi4xMDc2NCAxMS4yNDQgNi4zOTI1NyAxMS4yNDQgNi41NjgzMSAxMS4wNjgzTDkuODE4MyA3LjgxODI3QzkuOTk0MDQgNy42NDI1NCA5Ljk5NDA0IDcuMzU3NjEgOS44MTgzIDcuMTgxODhMNi41NjgzIDMuOTMxODhaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzdiA9IFtcImNvbG9yXCJdO1xudmFyIFBpblRvcEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM3YpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjUwMDA1IDEuMDUwMDVDMS4yNTE1MiAxLjA1MDA1IDEuMDUwMDUgMS4yNTE1MiAxLjA1MDA1IDEuNTAwMDVDMS4wNTAwNSAxLjc0ODU4IDEuMjUxNTIgMS45NTAwNSAxLjUwMDA1IDEuOTUwMDVMMTMuNSAxLjk1MDA1QzEzLjc0ODYgMS45NTAwNSAxMy45NSAxLjc0ODU4IDEzLjk1IDEuNTAwMDVDMTMuOTUgMS4yNTE1MiAxMy43NDg2IDEuMDUwMDUgMTMuNSAxLjA1MDA1SDEuNTAwMDVaTTMuOTMxODggNy40MzE2OUMzLjc1NjE0IDcuNjA3NDMgMy43NTYxNCA3Ljg5MjM2IDMuOTMxODggOC4wNjgwOUM0LjEwNzYxIDguMjQzODMgNC4zOTI1NCA4LjI0MzgzIDQuNTY4MjcgOC4wNjgwOUw3LjA1MDA3IDUuNTg2MjlWMTMuNUM3LjA1MDA3IDEzLjc0ODUgNy4yNTE1NSAxMy45NSA3LjUwMDA3IDEzLjk1QzcuNzQ4NiAxMy45NSA3Ljk1MDA3IDEzLjc0ODUgNy45NTAwNyAxMy41TDcuOTUwMDcgNS41ODYyOUwxMC40MzE5IDguMDY4MDlDMTAuNjA3NiA4LjI0MzgzIDEwLjg5MjUgOC4yNDM4MyAxMS4wNjgzIDguMDY4MDlDMTEuMjQ0IDcuODkyMzUgMTEuMjQ0IDcuNjA3NDMgMTEuMDY4MyA3LjQzMTY5TDcuODE4MjcgNC4xODE2OUM3LjY0MjU0IDQuMDA1OTYgNy4zNTc2MSA0LjAwNTk2IDcuMTgxODggNC4xODE2OUwzLjkzMTg4IDcuNDMxNjlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzdyA9IFtcImNvbG9yXCJdO1xudmFyIFBsYXlJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDN3KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy4yNDE4MiAyLjMyMTgxQzMuMzkxOSAyLjIzMTMyIDMuNTc4NCAyLjIyNjAxIDMuNzMzMzggMi4zMDc4MUwxMi43MzM0IDcuMDU3ODFDMTIuODk3NCA3LjE0NDM2IDEzIDcuMzE0NTcgMTMgNy41QzEzIDcuNjg1NDMgMTIuODk3NCA3Ljg1NTY0IDEyLjczMzQgNy45NDIxOUwzLjczMzM4IDEyLjY5MjJDMy41Nzg0IDEyLjc3NCAzLjM5MTkgMTIuNzY4NyAzLjI0MTgyIDEyLjY3ODJDMy4wOTE3NSAxMi41ODc3IDMgMTIuNDI1MiAzIDEyLjI1VjIuNzVDMyAyLjU3NDc2IDMuMDkxNzUgMi40MTIzIDMuMjQxODIgMi4zMjE4MVpNNCAzLjU3OTI1VjExLjQyMDdMMTEuNDI4OCA3LjVMNCAzLjU3OTI1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM3ggPSBbXCJjb2xvclwiXTtcbnZhciBQbHVzSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzeCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTggMi43NUM4IDIuNDczODYgNy43NzYxNCAyLjI1IDcuNSAyLjI1QzcuMjIzODYgMi4yNSA3IDIuNDczODYgNyAyLjc1VjdIMi43NUMyLjQ3Mzg2IDcgMi4yNSA3LjIyMzg2IDIuMjUgNy41QzIuMjUgNy43NzYxNCAyLjQ3Mzg2IDggMi43NSA4SDdWMTIuMjVDNyAxMi41MjYxIDcuMjIzODYgMTIuNzUgNy41IDEyLjc1QzcuNzc2MTQgMTIuNzUgOCAxMi41MjYxIDggMTIuMjVWOEgxMi4yNUMxMi41MjYxIDggMTIuNzUgNy43NzYxNCAxMi43NSA3LjVDMTIuNzUgNy4yMjM4NiAxMi41MjYxIDcgMTIuMjUgN0g4VjIuNzVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzeSA9IFtcImNvbG9yXCJdO1xudmFyIFBsdXNDaXJjbGVkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzeSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTEgMC44NzY4OTJDMy44NDIyMiAwLjg3Njg5MiAwLjg3NzA3NSAzLjg0MjA0IDAuODc3MDc1IDcuNDk5NzJDMC44NzcwNzUgMTEuMTU3NCAzLjg0MjIyIDE0LjEyMjYgNy40OTk5MSAxNC4xMjI2QzExLjE1NzYgMTQuMTIyNiAxNC4xMjI3IDExLjE1NzQgMTQuMTIyNyA3LjQ5OTcyQzE0LjEyMjcgMy44NDIwNCAxMS4xNTc2IDAuODc2ODkyIDcuNDk5OTEgMC44NzY4OTJaTTEuODI3MDcgNy40OTk3MkMxLjgyNzA3IDQuMzY2NzEgNC4zNjY4OSAxLjgyNjg5IDcuNDk5OTEgMS44MjY4OUMxMC42MzI5IDEuODI2ODkgMTMuMTcyNyA0LjM2NjcxIDEzLjE3MjcgNy40OTk3MkMxMy4xNzI3IDEwLjYzMjcgMTAuNjMyOSAxMy4xNzI2IDcuNDk5OTEgMTMuMTcyNkM0LjM2Njg5IDEzLjE3MjYgMS44MjcwNyAxMC42MzI3IDEuODI3MDcgNy40OTk3MlpNNy41MDAwMyA0QzcuNzc2MTcgNCA4LjAwMDAzIDQuMjIzODYgOC4wMDAwMyA0LjVWN0gxMC41QzEwLjc3NjIgNyAxMSA3LjIyMzg2IDExIDcuNUMxMSA3Ljc3NjE0IDEwLjc3NjIgOCAxMC41IDhIOC4wMDAwM1YxMC41QzguMDAwMDMgMTAuNzc2MSA3Ljc3NjE3IDExIDcuNTAwMDMgMTFDNy4yMjM4OSAxMSA3LjAwMDAzIDEwLjc3NjEgNy4wMDAwMyAxMC41VjhINC41MDAwM0M0LjIyMzg5IDggNC4wMDAwMyA3Ljc3NjE0IDQuMDAwMDMgNy41QzQuMDAwMDMgNy4yMjM4NiA0LjIyMzg5IDcgNC41MDAwMyA3SDcuMDAwMDNWNC41QzcuMDAwMDMgNC4yMjM4NiA3LjIyMzg5IDQgNy41MDAwMyA0WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM3ogPSBbXCJjb2xvclwiXTtcbnZhciBRdWVzdGlvbk1hcmtJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDN6KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNS4wNzUwNSA0LjEwMDAxQzUuMDc1MDUgMi45MTEwMyA2LjI1NzI3IDEuOTI1MDIgNy41MDAwNSAxLjkyNTAyQzguNzQyODMgMS45MjUwMiA5LjkyNTA1IDIuOTExMDMgOS45MjUwNSA0LjEwMDAxQzkuOTI1MDUgNS4xOTg2MSA5LjM2NzgyIDUuNzE0MzYgOC42MTg1NCA2LjM3ODg0TDguNTg3NTcgNi40MDYzQzcuODQ0ODEgNy4wNjQ2NyA2LjkyNTA1IDcuODc5OTUgNi45MjUwNSA5LjVDNi45MjUwNSA5LjgxNzU3IDcuMTgyNDggMTAuMDc1IDcuNTAwMDUgMTAuMDc1QzcuODE3NjEgMTAuMDc1IDguMDc1MDUgOS44MTc1NyA4LjA3NTA1IDkuNUM4LjA3NTA1IDguNDE1MTcgOC42Mjk0NSA3LjkwNjIzIDkuMzgxNTYgNy4yMzkyNUw5LjQwMjM4IDcuMjIwNzlDMTAuMTQ5NiA2LjU1ODI5IDExLjA3NSA1LjczNzc1IDExLjA3NSA0LjEwMDAxQzExLjA3NSAyLjEyNzU3IDkuMjE4NjkgMC43NzUwMjQgNy41MDAwNSAwLjc3NTAyNEM1Ljc4MTQgMC43NzUwMjQgMy45MjUwNSAyLjEyNzU3IDMuOTI1MDUgNC4xMDAwMUMzLjkyNTA1IDQuNDE3NTggNC4xODI0OSA0LjY3NTAxIDQuNTAwMDUgNC42NzUwMUM0LjgxNzYxIDQuNjc1MDEgNS4wNzUwNSA0LjQxNzU4IDUuMDc1MDUgNC4xMDAwMVpNNy41MDAwNSAxMy4zNTc1QzcuOTgzMyAxMy4zNTc1IDguMzc1MDUgMTIuOTY1NyA4LjM3NTA1IDEyLjQ4MjVDOC4zNzUwNSAxMS45OTkyIDcuOTgzMyAxMS42MDc1IDcuNTAwMDUgMTEuNjA3NUM3LjAxNjggMTEuNjA3NSA2LjYyNTA1IDExLjk5OTIgNi42MjUwNSAxMi40ODI1QzYuNjI1MDUgMTIuOTY1NyA3LjAxNjggMTMuMzU3NSA3LjUwMDA1IDEzLjM1NzVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzQSA9IFtcImNvbG9yXCJdO1xudmFyIFF1ZXN0aW9uTWFya0NpcmNsZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNBKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC44NzcwNzUgNy40OTk3MkMwLjg3NzA3NSAzLjg0MjA0IDMuODQyMjIgMC44NzY4OTIgNy40OTk5MSAwLjg3Njg5MkMxMS4xNTc2IDAuODc2ODkyIDE0LjEyMjcgMy44NDIwNCAxNC4xMjI3IDcuNDk5NzJDMTQuMTIyNyAxMS4xNTc0IDExLjE1NzYgMTQuMTIyNiA3LjQ5OTkxIDE0LjEyMjZDMy44NDIyMiAxNC4xMjI2IDAuODc3MDc1IDExLjE1NzQgMC44NzcwNzUgNy40OTk3MlpNNy40OTk5MSAxLjgyNjg5QzQuMzY2ODkgMS44MjY4OSAxLjgyNzA4IDQuMzY2NzEgMS44MjcwOCA3LjQ5OTcyQzEuODI3MDggMTAuNjMyNyA0LjM2Njg5IDEzLjE3MjYgNy40OTk5MSAxMy4xNzI2QzEwLjYzMjkgMTMuMTcyNiAxMy4xNzI3IDEwLjYzMjcgMTMuMTcyNyA3LjQ5OTcyQzEzLjE3MjcgNC4zNjY3MSAxMC42MzI5IDEuODI2ODkgNy40OTk5MSAxLjgyNjg5Wk04LjI0OTkzIDEwLjVDOC4yNDk5MyAxMC45MTQyIDcuOTE0MTQgMTEuMjUgNy40OTk5MyAxMS4yNUM3LjA4NTcxIDExLjI1IDYuNzQ5OTMgMTAuOTE0MiA2Ljc0OTkzIDEwLjVDNi43NDk5MyAxMC4wODU4IDcuMDg1NzEgOS43NSA3LjQ5OTkzIDkuNzVDNy45MTQxNCA5Ljc1IDguMjQ5OTMgMTAuMDg1OCA4LjI0OTkzIDEwLjVaTTYuMDUwMDMgNi4yNUM2LjA1MDAzIDUuNTcyMTEgNi42MzUxMSA0LjkyNSA3LjUwMDAzIDQuOTI1QzguMzY0OTYgNC45MjUgOC45NTAwMyA1LjU3MjExIDguOTUwMDMgNi4yNUM4Ljk1MDAzIDYuNzQxMTggOC42ODAwMiA2Ljk5MjEyIDguMjE0NDcgNy4yNzQ5NEM4LjE2MjUxIDcuMzA2NTEgOC4xMDI1OCA3LjM0MTMxIDguMDM4NDcgNy4zNzg1NEw4LjAzODQxIDcuMzc4NThDNy44NTUyMSA3LjQ4NDk3IDcuNjM3ODggNy42MTExOSA3LjQ3NDQ5IDcuNzM4NDlDNy4yMzIxNCA3LjkyNzMyIDYuOTUwMDMgOC4yMzE5OCA2Ljk1MDAzIDguN0M2Ljk1MDA0IDkuMDAzNzYgNy4xOTYyOCA5LjI1IDcuNTAwMDQgOS4yNUM3LjgwMjQgOS4yNSA4LjA0Nzc4IDkuMDA2MDEgOC4wNTAwMiA4LjcwNDE3TDguMDUwNTYgOC43MDMzQzguMDU5MjQgOC42ODk2IDguMDg0OTMgOC42NTczNSA4LjE1MDU4IDguNjA2MkM4LjI1MjA3IDguNTI3MTIgOC4zNjUwOCA4LjQ2MTYzIDguNTE1NjcgOC4zNzQzNkw4LjUxNTcxIDguMzc0MzNDOC41OTQyMiA4LjMyODgzIDguNjgyOTYgOC4yNzc0MSA4Ljc4NTU5IDguMjE1MDZDOS4zMjAwNCA3Ljg5MDM4IDEwLjA1IDcuMzUzODIgMTAuMDUgNi4yNUMxMC4wNSA0LjkyNzg5IDguOTM1MTEgMy44MjUgNy41MDAwMyAzLjgyNUM2LjA2NDk2IDMuODI1IDQuOTUwMDMgNC45Mjc4OSA0Ljk1MDAzIDYuMjVDNC45NTAwMyA2LjU1Mzc2IDUuMTk2MjggNi44IDUuNTAwMDMgNi44QzUuODAzNzkgNi44IDYuMDUwMDMgNi41NTM3NiA2LjA1MDAzIDYuMjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzQiA9IFtcImNvbG9yXCJdO1xudmFyIFF1b3RlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzQik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTkuNDI1MDMgMy40NDEzNkMxMC4wNTYxIDMuMjM2NTQgMTAuNzgzNyAzLjI0MDIgMTEuMzc5MiAzLjU0NjIzQzEyLjc1MzIgNC4yNTIyNCAxMy4zNDc3IDYuMDcxOTEgMTIuNzk0NiA4QzEyLjU0NjUgOC44NjQ5IDEyLjExMDIgOS43MDQ3MiAxMS4xODYxIDEwLjU1MjRDMTAuMjYyIDExLjQgOC45ODAzNCAxMS45IDguMzg1NzEgMTEuOUM4LjE3MjY5IDExLjkgOCAxMS43MzIxIDggMTEuNTI1QzggMTEuMzE3OSA4LjE3NjQ0IDExLjE1IDguMzg1NzEgMTEuMTVDOS4wNjQ5NyAxMS4xNSA5LjY3MTg5IDEwLjc4MDQgMTAuMzkwNiAxMC4yMzZDMTAuOTQwNiA5LjgxOTMgMTEuMzcwMSA5LjI4NjMzIDExLjYwOCA4LjgyMTkxQzEyLjA2MjggNy45MzM2NyAxMi4wNzgyIDYuNjgxNzQgMTEuMzQzMyA2LjM0OTAxQzEwLjk5MDQgNi43MzQ1NSAxMC41Mjk1IDYuOTU5NDYgOS45NzcyNSA2Ljk1OTQ2QzguNzc3MyA2Ljk1OTQ2IDguMDcwMSA1Ljk5NDEyIDguMTAwNTEgNS4xMjAwOUM4LjEyOTU3IDQuMjg0NzQgOC42NjAzMiAzLjY4OTU0IDkuNDI1MDMgMy40NDEzNlpNMy40MjUwMyAzLjQ0MTM2QzQuMDU2MTQgMy4yMzY1NCA0Ljc4MzY2IDMuMjQwMiA1LjM3OTIzIDMuNTQ2MjNDNi43NTMyIDQuMjUyMjQgNy4zNDc2NiA2LjA3MTkxIDYuNzk0NjIgOEM2LjU0NjU0IDguODY0OSA2LjExMDE5IDkuNzA0NzIgNS4xODYxIDEwLjU1MjRDNC4yNjIwMSAxMS40IDIuOTgwMzQgMTEuOSAyLjM4NTcxIDExLjlDMi4xNzI2OSAxMS45IDIgMTEuNzMyMSAyIDExLjUyNUMyIDExLjMxNzkgMi4xNzY0NCAxMS4xNSAyLjM4NTcxIDExLjE1QzMuMDY0OTcgMTEuMTUgMy42NzE4OSAxMC43ODA0IDQuMzkwNTggMTAuMjM2QzQuOTQwNjUgOS44MTkzIDUuMzcwMTQgOS4yODYzMyA1LjYwNzk3IDguODIxOTFDNi4wNjI4MiA3LjkzMzY3IDYuMDc4MjEgNi42ODE3NCA1LjM0MzMgNi4zNDkwMUM0Ljk5MDM3IDYuNzM0NTUgNC41Mjk0OCA2Ljk1OTQ2IDMuOTc3MjUgNi45NTk0NkMyLjc3NzMgNi45NTk0NiAyLjA3MDEgNS45OTQxMiAyLjEwMDUxIDUuMTIwMDlDMi4xMjk1NyA0LjI4NDc0IDIuNjYwMzIgMy42ODk1NCAzLjQyNTAzIDMuNDQxMzZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzQyA9IFtcImNvbG9yXCJdO1xudmFyIFJhZGlvYnV0dG9uSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzQyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5ODUgMC44NzcwNDVDMy44NDIxNiAwLjg3NzA0NSAwLjg3NzAxNCAzLjg0MjE5IDAuODc3MDE0IDcuNDk5ODhDMC44NzcwMTQgMTEuMTU3NSAzLjg0MjE2IDE0LjEyMjcgNy40OTk4NSAxNC4xMjI3QzExLjE1NzUgMTQuMTIyNyAxNC4xMjI3IDExLjE1NzUgMTQuMTIyNyA3LjQ5OTg4QzE0LjEyMjcgMy44NDIxOSAxMS4xNTc1IDAuODc3MDQ1IDcuNDk5ODUgMC44NzcwNDVaTTEuODI3MDEgNy40OTk4OEMxLjgyNzAxIDQuMzY2ODYgNC4zNjY4MyAxLjgyNzA0IDcuNDk5ODUgMS44MjcwNEMxMC42MzI4IDEuODI3MDQgMTMuMTcyNyA0LjM2Njg2IDEzLjE3MjcgNy40OTk4OEMxMy4xNzI3IDEwLjYzMjkgMTAuNjMyOCAxMy4xNzI3IDcuNDk5ODUgMTMuMTcyN0M0LjM2NjgzIDEzLjE3MjcgMS44MjcwMSAxMC42MzI5IDEuODI3MDEgNy40OTk4OFpNNy40OTk5OSA5LjQ5OTk5QzguNjA0NTYgOS40OTk5OSA5LjQ5OTk5IDguNjA0NTYgOS40OTk5OSA3LjQ5OTk5QzkuNDk5OTkgNi4zOTU0MiA4LjYwNDU2IDUuNDk5OTkgNy40OTk5OSA1LjQ5OTk5QzYuMzk1NDIgNS40OTk5OSA1LjQ5OTk5IDYuMzk1NDIgNS40OTk5OSA3LjQ5OTk5QzUuNDk5OTkgOC42MDQ1NiA2LjM5NTQyIDkuNDk5OTkgNy40OTk5OSA5LjQ5OTk5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM0QgPSBbXCJjb2xvclwiXTtcbnZhciBSZWFkZXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNEKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNC4yIDFINC4xNzc0MUg0LjE3NzRDMy44NjkzNiAwLjk5OTk4OCAzLjYwMzY4IDAuOTk5OTc4IDMuMzg2MDkgMS4wMjA2N0MzLjE1NTc2IDEuMDQyNTcgMi45MjgyNSAxLjA5MTEzIDIuNzE2MjUgMS4yMjEwNEMyLjUxNDQyIDEuMzQ0NzIgMi4zNDQ3MyAxLjUxNDQyIDIuMjIxMDQgMS43MTYyNUMyLjA5MTEzIDEuOTI4MjUgMi4wNDI1NyAyLjE1NTc2IDIuMDIwNjcgMi4zODYwOUMxLjk5OTk4IDIuNjAzNjcgMS45OTk5OSAyLjg2OTM1IDIgMy4xNzczOFYzLjE3NzRWMy4yVjExLjhWMTEuODIyNlYxMS44MjI2QzEuOTk5OTkgMTIuMTMwNyAxLjk5OTk4IDEyLjM5NjMgMi4wMjA2NyAxMi42MTM5QzIuMDQyNTcgMTIuODQ0MiAyLjA5MTEzIDEzLjA3MTcgMi4yMjEwNCAxMy4yODM3QzIuMzQ0NzMgMTMuNDg1NiAyLjUxNDQyIDEzLjY1NTMgMi43MTYyNSAxMy43NzlDMi45MjgyNSAxMy45MDg5IDMuMTU1NzYgMTMuOTU3NCAzLjM4NjA5IDEzLjk3OTNDMy42MDM2OCAxNCAzLjg2OTM3IDE0IDQuMTc3NDEgMTRINC4ySDEwLjhIMTAuODIyNkMxMS4xMzA2IDE0IDExLjM5NjMgMTQgMTEuNjEzOSAxMy45NzkzQzExLjg0NDIgMTMuOTU3NCAxMi4wNzE3IDEzLjkwODkgMTIuMjgzNyAxMy43NzlDMTIuNDg1NiAxMy42NTUzIDEyLjY1NTMgMTMuNDg1NiAxMi43NzkgMTMuMjgzN0MxMi45MDg5IDEzLjA3MTcgMTIuOTU3NCAxMi44NDQyIDEyLjk3OTMgMTIuNjEzOUMxMyAxMi4zOTYzIDEzIDEyLjEzMDYgMTMgMTEuODIyNlYxMS44VjMuMlYzLjE3NzQxQzEzIDIuODY5MzYgMTMgMi42MDM2OCAxMi45NzkzIDIuMzg2MDlDMTIuOTU3NCAyLjE1NTc2IDEyLjkwODkgMS45MjgyNSAxMi43NzkgMS43MTYyNUMxMi42NTUzIDEuNTE0NDIgMTIuNDg1NiAxLjM0NDcyIDEyLjI4MzcgMS4yMjEwNEMxMi4wNzE3IDEuMDkxMTMgMTEuODQ0MiAxLjA0MjU3IDExLjYxMzkgMS4wMjA2N0MxMS4zOTYzIDAuOTk5OTc4IDExLjEzMDYgMC45OTk5ODggMTAuODIyNiAxSDEwLjhINC4yWk0zLjIzODc1IDIuMDczNjhDMy4yNjcyMiAyLjA1NjIzIDMuMzIzNjIgMi4wMzExMiAzLjQ4MDc1IDIuMDE2MThDMy42NDUzMiAyLjAwMDUzIDMuODYyOTggMiA0LjIgMkgxMC44QzExLjEzNyAyIDExLjM1NDcgMi4wMDA1MyAxMS41MTkzIDIuMDE2MThDMTEuNjc2NCAyLjAzMTEyIDExLjczMjggMi4wNTYyMyAxMS43NjEzIDIuMDczNjhDMTEuODI4NSAyLjExNDkxIDExLjg4NTEgMi4xNzE0NyAxMS45MjYzIDIuMjM4NzVDMTEuOTQzOCAyLjI2NzIyIDExLjk2ODkgMi4zMjM2MiAxMS45ODM4IDIuNDgwNzVDMTEuOTk5NSAyLjY0NTMyIDEyIDIuODYyOTggMTIgMy4yVjExLjhDMTIgMTIuMTM3IDExLjk5OTUgMTIuMzU0NyAxMS45ODM4IDEyLjUxOTNDMTEuOTY4OSAxMi42NzY0IDExLjk0MzggMTIuNzMyOCAxMS45MjYzIDEyLjc2MTNDMTEuODg1MSAxMi44Mjg1IDExLjgyODUgMTIuODg1MSAxMS43NjEzIDEyLjkyNjNDMTEuNzMyOCAxMi45NDM4IDExLjY3NjQgMTIuOTY4OSAxMS41MTkzIDEyLjk4MzhDMTEuMzU0NyAxMi45OTk1IDExLjEzNyAxMyAxMC44IDEzSDQuMkMzLjg2Mjk4IDEzIDMuNjQ1MzIgMTIuOTk5NSAzLjQ4MDc1IDEyLjk4MzhDMy4zMjM2MiAxMi45Njg5IDMuMjY3MjIgMTIuOTQzOCAzLjIzODc1IDEyLjkyNjNDMy4xNzE0NyAxMi44ODUxIDMuMTE0OTEgMTIuODI4NSAzLjA3MzY4IDEyLjc2MTNDMy4wNTYyNCAxMi43MzI4IDMuMDMxMTIgMTIuNjc2NCAzLjAxNjE4IDEyLjUxOTNDMy4wMDA1MyAxMi4zNTQ3IDMgMTIuMTM3IDMgMTEuOFYzLjJDMyAyLjg2Mjk4IDMuMDAwNTMgMi42NDUzMiAzLjAxNjE4IDIuNDgwNzVDMy4wMzExMiAyLjMyMzYyIDMuMDU2MjQgMi4yNjcyMiAzLjA3MzY4IDIuMjM4NzVDMy4xMTQ5MSAyLjE3MTQ3IDMuMTcxNDcgMi4xMTQ5MSAzLjIzODc1IDIuMDczNjhaTTUgMTBDNC43MjM4NiAxMCA0LjUgMTAuMjIzOSA0LjUgMTAuNUM0LjUgMTAuNzc2MSA0LjcyMzg2IDExIDUgMTFIOEM4LjI3NjE0IDExIDguNSAxMC43NzYxIDguNSAxMC41QzguNSAxMC4yMjM5IDguMjc2MTQgMTAgOCAxMEg1Wk00LjUgNy41QzQuNSA3LjIyMzg2IDQuNzIzODYgNyA1IDdIMTBDMTAuMjc2MSA3IDEwLjUgNy4yMjM4NiAxMC41IDcuNUMxMC41IDcuNzc2MTQgMTAuMjc2MSA4IDEwIDhINUM0LjcyMzg2IDggNC41IDcuNzc2MTQgNC41IDcuNVpNNSA0QzQuNzIzODYgNCA0LjUgNC4yMjM4NiA0LjUgNC41QzQuNSA0Ljc3NjE0IDQuNzIzODYgNSA1IDVIMTBDMTAuMjc2MSA1IDEwLjUgNC43NzYxNCAxMC41IDQuNUMxMC41IDQuMjIzODYgMTAuMjc2MSA0IDEwIDRINVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNFID0gW1wiY29sb3JcIl07XG52YXIgUmVsb2FkSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzRSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEuODQ5OTggNy40OTk5OEMxLjg0OTk4IDQuNjY0NTggNC4wNTk3OSAxLjg0OTk4IDcuNDk5OTggMS44NDk5OEMxMC4yNzgzIDEuODQ5OTggMTEuNjUxNSAzLjkwNjQgMTIuMjM2NyA1SDEwLjVDMTAuMjIzOSA1IDEwIDUuMjIzODYgMTAgNS41QzEwIDUuNzc2MTQgMTAuMjIzOSA2IDEwLjUgNkgxMy41QzEzLjc3NjEgNiAxNCA1Ljc3NjE0IDE0IDUuNVYyLjVDMTQgMi4yMjM4NiAxMy43NzYxIDIgMTMuNSAyQzEzLjIyMzkgMiAxMyAyLjIyMzg2IDEzIDIuNVY0LjMxMzE4QzEyLjI5NTUgMy4wNzEyNiAxMC42NjU5IDAuODQ5OTc2IDcuNDk5OTggMC44NDk5NzZDMy40MzcxNiAwLjg0OTk3NiAwLjg0OTk3NiA0LjE4NTM3IDAuODQ5OTc2IDcuNDk5OThDMC44NDk5NzYgMTAuODE0NiAzLjQzNzE2IDE0LjE1IDcuNDk5OTggMTQuMTVDOS40NDM4MiAxNC4xNSAxMS4wNjIyIDEzLjM4MDggMTIuMjE0NSAxMi4yMDg0QzEyLjgzMTUgMTEuNTgwNiAxMy4zMTMzIDEwLjgzOSAxMy42NDE4IDEwLjA0MDdDMTMuNzQ2OSA5Ljc4NTM2IDEzLjYyNTEgOS40OTMxNSAxMy4zNjk4IDkuMzg4MDZDMTMuMTE0NCA5LjI4Mjk2IDEyLjgyMjIgOS40MDQ3OCAxMi43MTcxIDkuNjYwMTRDMTIuNDM2MyAxMC4zNDI1IDEyLjAyNTEgMTAuOTc0NSAxMS41MDEzIDExLjUwNzRDMTAuNTI5NSAxMi40OTYzIDkuMTY1MDQgMTMuMTUgNy40OTk5OCAxMy4xNUM0LjA1OTc5IDEzLjE1IDEuODQ5OTggMTAuMzM1NCAxLjg0OTk4IDcuNDk5OThaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzRiA9IFtcImNvbG9yXCJdO1xudmFyIFJlc2V0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzRik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTQuODUzNTUgMi4xNDY0NUM1LjA0ODgyIDIuMzQxNzEgNS4wNDg4MiAyLjY1ODI5IDQuODUzNTUgMi44NTM1NUwzLjcwNzExIDRIOUMxMS40ODUzIDQgMTMuNSA2LjAxNDcyIDEzLjUgOC41QzEzLjUgMTAuOTg1MyAxMS40ODUzIDEzIDkgMTNINUM0LjcyMzg2IDEzIDQuNSAxMi43NzYxIDQuNSAxMi41QzQuNSAxMi4yMjM5IDQuNzIzODYgMTIgNSAxMkg5QzEwLjkzMyAxMiAxMi41IDEwLjQzMyAxMi41IDguNUMxMi41IDYuNTY3IDEwLjkzMyA1IDkgNUgzLjcwNzExTDQuODUzNTUgNi4xNDY0NUM1LjA0ODgyIDYuMzQxNzEgNS4wNDg4MiA2LjY1ODI5IDQuODUzNTUgNi44NTM1NUM0LjY1ODI5IDcuMDQ4ODIgNC4zNDE3MSA3LjA0ODgyIDQuMTQ2NDUgNi44NTM1NUwyLjE0NjQ1IDQuODUzNTVDMS45NTExOCA0LjY1ODI5IDEuOTUxMTggNC4zNDE3MSAyLjE0NjQ1IDQuMTQ2NDVMNC4xNDY0NSAyLjE0NjQ1QzQuMzQxNzEgMS45NTExOCA0LjY1ODI5IDEuOTUxMTggNC44NTM1NSAyLjE0NjQ1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM0cgPSBbXCJjb2xvclwiXTtcbnZhciBSZXN1bWVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNHKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy4wNDk5NSAyLjc0OTk1QzMuMDQ5OTUgMi40NDYxOSAyLjgwMzcxIDIuMTk5OTUgMi40OTk5NSAyLjE5OTk1QzIuMTk2MTkgMi4xOTk5NSAxLjk0OTk1IDIuNDQ2MTkgMS45NDk5NSAyLjc0OTk1VjEyLjI1QzEuOTQ5OTUgMTIuNTUzNyAyLjE5NjE5IDEyLjggMi40OTk5NSAxMi44QzIuODAzNzEgMTIuOCAzLjA0OTk1IDEyLjU1MzcgMy4wNDk5NSAxMi4yNVYyLjc0OTk1Wk01LjczMzMzIDIuMzA3NzZDNS41NzgzNSAyLjIyNTk2IDUuMzkxODUgMi4yMzEyNyA1LjI0MTc3IDIuMzIxNzZDNS4wOTE3IDIuNDEyMjUgNC45OTk5NSAyLjU3NDcxIDQuOTk5OTUgMi43NDk5NVYxMi4yNUM0Ljk5OTk1IDEyLjQyNTIgNS4wOTE3IDEyLjU4NzcgNS4yNDE3NyAxMi42NzgxQzUuMzkxODUgMTIuNzY4NiA1LjU3ODM1IDEyLjc3MzkgNS43MzMzMyAxMi42OTIxTDE0LjczMzMgNy45NDIxNEMxNC44OTczIDcuODU1NTkgMTUgNy42ODUzOSAxNSA3LjQ5OTk1QzE1IDcuMzE0NTIgMTQuODk3MyA3LjE0NDMxIDE0LjczMzMgNy4wNTc3Nkw1LjczMzMzIDIuMzA3NzZaTTUuOTk5OTUgMTEuNDIwN1YzLjU3OTJMMTMuNDI4NyA3LjQ5OTk1TDUuOTk5OTUgMTEuNDIwN1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNIID0gW1wiY29sb3JcIl07XG52YXIgUm9ja2V0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzSCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTYuODUzNTcgMy44NTM1NUw3LjY1MzU1IDMuMDUzNTNDOC4yOTgxIDIuNDA5MDEgOS40Mjg1OCAxLjk2MTcyIDEwLjU1MiAxLjgwMTI1QzExLjEwNTYgMS43MjIxNyAxMS42MjkxIDEuNzE3MjUgMTIuMDU2NCAxLjc4MTI0QzEyLjQ5ODcgMS44NDc0OCAxMi43Njk4IDEuOTc2OTYgMTIuODk2NSAyLjEwMzU3QzEzLjAyMzEgMi4yMzAxOCAxMy4xNTI2IDIuNTAxMjUgMTMuMjE4OCAyLjk0MzU3QzEzLjI4MjggMy4zNzA4NiAxMy4yNzc5IDMuODk0MzkgMTMuMTk4OCA0LjQ0ODAxQzEzLjAzODMgNS41NzEzOSAxMi41OTEgNi43MDE4OCAxMS45NDY0IDcuMzQ2NDVMNy40OTk5OSAxMS43OTI5TDYuMzUzNTQgMTAuNjQ2NUM2LjE1ODI3IDEwLjQ1MTIgNS44NDE2OSAxMC40NTEyIDUuNjQ2NDMgMTAuNjQ2NUM1LjQ1MTE3IDEwLjg0MTcgNS40NTExNyAxMS4xNTgzIDUuNjQ2NDMgMTEuMzUzNkw3LjE0NjQ0IDEyLjg1MzZDNy4zNDE3MSAxMy4wNDg4IDcuNjU4MjkgMTMuMDQ4OCA3Ljg1MzU1IDEyLjg1MzZMOC40MDA3MyAxMi4zMDY0TDkuNTcxMjQgMTQuMjU3MkM5LjY1MDQ2IDE0LjM4OTMgOS43ODYwOCAxNC40Nzc0IDkuOTM4OSAxNC40OTYzQzEwLjA5MTcgMTQuNTE1MSAxMC4yNDQ3IDE0LjQ2MjQgMTAuMzUzNSAxNC4zNTM2TDEyLjM1MzUgMTIuMzUzNkMxMi40NjQ4IDEyLjI0MjMgMTIuNTE3MiAxMi4wODUxIDEyLjQ5NSAxMS45MjkzTDEyLjAzMDMgOC42NzY3OUwxMi42NTM2IDguMDUzNTVDMTMuNTA5IDcuMTk4MDggMTQuMDExNyA1LjgyODU1IDE0LjE4ODcgNC41ODk0M0MxNC4yNzg0IDMuOTYxOCAxNC4yODkxIDMuMzM4NDcgMTQuMjA3OCAyLjc5NTQ2QzE0LjEyODcgMi4yNjc0OCAxMy45NTE5IDEuNzQ0ODIgMTMuNjAzNSAxLjM5NjQ1QzEzLjI1NTIgMS4wNDgwOSAxMi43MzI1IDAuODcxMzMyIDEyLjIwNDUgMC43OTIyNjRDMTEuNjYxNSAwLjcxMDk0NSAxMS4wMzgyIDAuNzIxNjQ0IDEwLjQxMDUgMC44MTEzQzkuMTcxNDMgMC45ODgzMDYgNy44MDE4OSAxLjQ5MSA2Ljk0NjQ0IDIuMzQ2NDJMNi4zMjMyMiAyLjk2OTY4TDMuMDcwNzEgMi41MDUwNEMyLjkxNDkyIDIuNDgyNzggMi43NTc3MyAyLjUzNTE3IDIuNjQ2NDUgMi42NDY0NkwwLjY0NjQ1MSA0LjY0NjQ1QzAuNTM3NTc5IDQuNzU1MzMgMC40ODQ5MzggNC45MDgyOSAwLjUwMzc1IDUuMDYxMUMwLjUyMjU2MyA1LjIxMzkxIDAuNjEwNzMgNS4zNDk1NCAwLjc0Mjc1NyA1LjQyODc2TDIuNjkzNjQgNi41OTkyOEwyLjE0NjQ2IDcuMTQ2NDVDMi4wNTI3IDcuMjQwMjIgMi4wMDAwMiA3LjM2NzQgMi4wMDAwMiA3LjUwMDAxQzIuMDAwMDIgNy42MzI2MSAyLjA1MjcgNy43NTk3OSAyLjE0NjQ2IDcuODUzNTZMMy42NDY0NyA5LjM1MzU2QzMuODQxNzMgOS41NDg4MyA0LjE1ODMxIDkuNTQ4ODMgNC4zNTM1NyA5LjM1MzU2QzQuNTQ4ODQgOS4xNTgzIDQuNTQ4ODQgOC44NDE3MiA0LjM1MzU3IDguNjQ2NDZMMy4yMDcxMiA3LjUwMDAxTDMuODUzNTcgNi44NTM1Nkw2Ljg1MzU3IDMuODUzNTVaTTEwLjA5OTMgMTMuMTkzNkw5LjEyOTU5IDExLjU3NzVMMTEuMTQ2NCA5LjU2MDY3TDExLjQ2OTcgMTEuODIzMkwxMC4wOTkzIDEzLjE5MzZaTTMuNDIyNTEgNS44NzA0MUw1LjQzOTM1IDMuODUzNTZMMy4xNzY3OCAzLjUzMDM0TDEuODA2MzggNC45MDA3NEwzLjQyMjUxIDUuODcwNDFaTTIuMzUzNTYgMTAuMzUzNUMyLjU0ODgyIDEwLjE1ODMgMi41NDg4MiA5Ljg0MTcgMi4zNTM1NiA5LjY0NjQ0QzIuMTU4MyA5LjQ1MTE4IDEuODQxNzEgOS40NTExOCAxLjY0NjQ1IDkuNjQ2NDRMMC42NDY0NTEgMTAuNjQ2NEMwLjQ1MTE4OCAxMC44NDE3IDAuNDUxMTg4IDExLjE1ODMgMC42NDY0NTEgMTEuMzUzNUMwLjg0MTcxMyAxMS41NDg4IDEuMTU4MyAxMS41NDg4IDEuMzUzNTYgMTEuMzUzNUwyLjM1MzU2IDEwLjM1MzVaTTMuODUzNTggMTEuODUzNkM0LjA0ODg0IDExLjY1ODMgNC4wNDg4NSAxMS4zNDE3IDMuODUzNTkgMTEuMTQ2NUMzLjY1ODMzIDEwLjk1MTIgMy4zNDE3NSAxMC45NTEyIDMuMTQ2NDggMTEuMTQ2NUwxLjE0NjQ1IDEzLjE0NjRDMC45NTExOSAxMy4zNDE3IDAuOTUxMTg3IDEzLjY1ODMgMS4xNDY0NSAxMy44NTM1QzEuMzQxNzEgMTQuMDQ4OCAxLjY1ODI5IDE0LjA0ODggMS44NTM1NSAxMy44NTM2TDMuODUzNTggMTEuODUzNlpNNS4zNTM1NiAxMy4zNTM1QzUuNTQ4ODIgMTMuMTU4MyA1LjU0ODgyIDEyLjg0MTcgNS4zNTM1NiAxMi42NDY0QzUuMTU4MyAxMi40NTEyIDQuODQxNzEgMTIuNDUxMiA0LjY0NjQ1IDEyLjY0NjRMMy42NDY0NSAxMy42NDY0QzMuNDUxMTkgMTMuODQxNyAzLjQ1MTE5IDE0LjE1ODMgMy42NDY0NSAxNC4zNTM1QzMuODQxNzEgMTQuNTQ4OCA0LjE1ODMgMTQuNTQ4OCA0LjM1MzU2IDE0LjM1MzVMNS4zNTM1NiAxMy4zNTM1Wk05LjQ5OTk3IDYuNzQ4ODFDMTAuMTg5NyA2Ljc0ODgxIDEwLjc0ODggNi4xODk3IDEwLjc0ODggNS41QzEwLjc0ODggNC44MTAzIDEwLjE4OTcgNC4yNTExOCA5LjQ5OTk3IDQuMjUxMThDOC44MTAyNiA0LjI1MTE4IDguMjUxMTUgNC44MTAzIDguMjUxMTUgNS41QzguMjUxMTUgNi4xODk3IDguODEwMjYgNi43NDg4MSA5LjQ5OTk3IDYuNzQ4ODFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzSSA9IFtcImNvbG9yXCJdO1xudmFyIFJvdGF0ZUNvdW50ZXJDbG9ja3dpc2VJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNJKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy41OTY2NCAyLjkzNjI4QzcuNzYwODUgMy4wNjQwMSA4LjAwMDEyIDIuOTQ2OTggOC4wMDAxMiAyLjczODk1VjEuOTk5OThDOS45ODE0MyAyIDExLjE4NDggMi4zNjM3IDExLjkxMDUgMy4wODk0NUMxMi42MzYzIDMuODE1MjIgMTMgNS4wMTg2IDEzIDYuOTk5OThDMTMgNy4yNzYxMyAxMy4yMjM5IDcuNDk5OTggMTMuNSA3LjQ5OTk4QzEzLjc3NjEgNy40OTk5OCAxNCA3LjI3NjEzIDE0IDYuOTk5OThDMTQgNC45NDM4IDEzLjYzMjUgMy4zOTcxOSAxMi42MTc2IDIuMzgyMzRDMTEuNjAyOCAxLjM2NzUyIDEwLjA1NjIgMC45OTk5OTkgOC4wMDAxMiAwLjk5OTk4NFYwLjI2MTI2NkM4LjAwMDEyIDAuMDUzMjI5MyA3Ljc2MDg1IC0wLjA2Mzc5NDQgNy41OTY2NCAwLjA2MzkyOEw2LjAwMzg0IDEuMzAyNzdDNS44NzUxNiAxLjQwMjg2IDUuODc1MTYgMS41OTczNSA2LjAwMzg0IDEuNjk3NDRMNy41OTY2NCAyLjkzNjI4Wk05LjUgNUgyLjVDMi4yMjM4NiA1IDIgNS4yMjM4NiAyIDUuNVYxMi41QzIgMTIuNzc2MSAyLjIyMzg2IDEzIDIuNSAxM0g5LjVDOS43NzYxNCAxMyAxMCAxMi43NzYxIDEwIDEyLjVWNS41QzEwIDUuMjIzODYgOS43NzYxNCA1IDkuNSA1Wk0yLjUgNEMxLjY3MTU3IDQgMSA0LjY3MTU3IDEgNS41VjEyLjVDMSAxMy4zMjg0IDEuNjcxNTcgMTQgMi41IDE0SDkuNUMxMC4zMjg0IDE0IDExIDEzLjMyODQgMTEgMTIuNVY1LjVDMTEgNC42NzE1NyAxMC4zMjg0IDQgOS41IDRIMi41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM0ogPSBbXCJjb2xvclwiXTtcbnZhciBSb3dTcGFjaW5nSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzSik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuODE4MzIgMC42ODE3OUM3LjY0MjU4IDAuNTA2MDU0IDcuMzU3NjYgMC41MDYwNTQgNy4xODE5MiAwLjY4MTc5TDUuMTgxOTIgMi42ODE3OUM1LjAwNjE5IDIuODU3NTMgNS4wMDYxOSAzLjE0MjQ1IDUuMTgxOTIgMy4zMTgxOUM1LjM1NzY2IDMuNDkzOTIgNS42NDI1OCAzLjQ5MzkyIDUuODE4MzIgMy4zMTgxOUw3LjA1MDEyIDIuMDg2MzhMNy4wNTAxMiA1LjUwMDIzQzcuMDUwMTIgNS43NDg3NiA3LjI1MTU5IDUuOTUwMjMgNy41MDAxMiA1Ljk1MDIzQzcuNzQ4NjUgNS45NTAyMyA3Ljk1MDEyIDUuNzQ4NzYgNy45NTAxMiA1LjUwMDIzTDcuOTUwMTIgMi4wODYzOEw5LjE4MTkyIDMuMzE4MTlDOS4zNTc2NiAzLjQ5MzkyIDkuNjQyNTggMy40OTM5MiA5LjgxODMyIDMuMzE4MTlDOS45OTQwNiAzLjE0MjQ1IDkuOTk0MDYgMi44NTc1MyA5LjgxODMyIDIuNjgxNzlMNy44MTgzMiAwLjY4MTc5Wk03Ljk1MDEyIDEyLjkxMzZWOS41MDAyM0M3Ljk1MDEyIDkuMjUxNyA3Ljc0ODY1IDkuMDUwMjMgNy41MDAxMiA5LjA1MDIzQzcuMjUxNTkgOS4wNTAyMyA3LjA1MDEyIDkuMjUxNyA3LjA1MDEyIDkuNTAwMjNWMTIuOTEzNkw1LjgxODMyIDExLjY4MThDNS42NDI1OCAxMS41MDYxIDUuMzU3NjYgMTEuNTA2MSA1LjE4MTkyIDExLjY4MThDNS4wMDYxOSAxMS44NTc1IDUuMDA2MTkgMTIuMTQyNCA1LjE4MTkyIDEyLjMxODJMNy4xODE5MiAxNC4zMTgyQzcuMjY2MzIgMTQuNDAyNiA3LjM4MDc3IDE0LjQ1IDcuNTAwMTIgMTQuNDVDNy42MTk0NyAxNC40NSA3LjczMzkzIDE0LjQwMjYgNy44MTgzMiAxNC4zMTgyTDkuODE4MzIgMTIuMzE4MkM5Ljk5NDA2IDEyLjE0MjQgOS45OTQwNiAxMS44NTc1IDkuODE4MzIgMTEuNjgxOEM5LjY0MjU4IDExLjUwNjEgOS4zNTc2NiAxMS41MDYxIDkuMTgxOTIgMTEuNjgxOEw3Ljk1MDEyIDEyLjkxMzZaTTEuNDk5OTQgNy4wMDAxN0MxLjIyMzggNy4wMDAxNyAwLjk5OTkzOSA3LjIyNDAzIDAuOTk5OTM5IDcuNTAwMTdDMC45OTk5MzkgNy43NzYzMSAxLjIyMzggOC4wMDAxNyAxLjQ5OTk0IDguMDAwMTdMMTMuNDk5OSA4LjAwMDE3QzEzLjc3NjEgOC4wMDAxNyAxMy45OTk5IDcuNzc2MzEgMTMuOTk5OSA3LjUwMDE3QzEzLjk5OTkgNy4yMjQwMyAxMy43NzYxIDcuMDAwMTcgMTMuNDk5OSA3LjAwMDE3TDEuNDk5OTQgNy4wMDAxN1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNLID0gW1wiY29sb3JcIl07XG52YXIgUm93c0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM0spO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xNCAxMi44NUwxIDEyLjg1TDEgMTQuMTVMMTQgMTQuMTVMMTQgMTIuODVaTTE0IDguODUwMDJMMSA4Ljg1MDAyTDEgMTAuMTVMMTQgMTAuMTVMMTQgOC44NTAwMlpNMSA0Ljg1MDAzTDE0IDQuODUwMDNMMTQgNi4xNTAwM0wxIDYuMTUwMDJMMSA0Ljg1MDAzWk0xNCAwLjg1MDAyNUwxIDAuODUwMDI1TDEgMi4xNTAwMkwxNCAyLjE1MDAyTDE0IDAuODUwMDI1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM0wgPSBbXCJjb2xvclwiXTtcbnZhciBSdWxlckhvcml6b250YWxJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNMKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC41IDRDMC4yMjM4NTggNCAwIDQuMjIzODYgMCA0LjVWMTAuNUMwIDEwLjc3NjEgMC4yMjM4NTggMTEgMC41IDExSDE0LjVDMTQuNzc2MSAxMSAxNSAxMC43NzYxIDE1IDEwLjVWNC41QzE1IDQuMjIzODYgMTQuNzc2MSA0IDE0LjUgNEgwLjVaTTEgMTBWNUgyLjA3NVY3LjVDMi4wNzUgNy43MzQ3MiAyLjI2NTI4IDcuOTI1IDIuNSA3LjkyNUMyLjczNDcyIDcuOTI1IDIuOTI1IDcuNzM0NzIgMi45MjUgNy41VjVINC4wNzVWNi41QzQuMDc1IDYuNzM0NzIgNC4yNjUyOCA2LjkyNSA0LjUgNi45MjVDNC43MzQ3MiA2LjkyNSA0LjkyNSA2LjczNDcyIDQuOTI1IDYuNVY1SDYuMDc1VjYuNUM2LjA3NSA2LjczNDcyIDYuMjY1MjggNi45MjUgNi41IDYuOTI1QzYuNzM0NzIgNi45MjUgNi45MjUgNi43MzQ3MiA2LjkyNSA2LjVWNUg4LjA3NVY3LjVDOC4wNzUgNy43MzQ3MiA4LjI2NTI4IDcuOTI1IDguNSA3LjkyNUM4LjczNDcyIDcuOTI1IDguOTI1IDcuNzM0NzIgOC45MjUgNy41VjVIMTAuMDc1VjYuNUMxMC4wNzUgNi43MzQ3MiAxMC4yNjUzIDYuOTI1IDEwLjUgNi45MjVDMTAuNzM0NyA2LjkyNSAxMC45MjUgNi43MzQ3MiAxMC45MjUgNi41VjVIMTIuMDc1VjYuNUMxMi4wNzUgNi43MzQ3MiAxMi4yNjUzIDYuOTI1IDEyLjUgNi45MjVDMTIuNzM0NyA2LjkyNSAxMi45MjUgNi43MzQ3MiAxMi45MjUgNi41VjVIMTRWMTBIMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNNID0gW1wiY29sb3JcIl07XG52YXIgUnVsZXJTcXVhcmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNNKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC41IDBDMC4yMjM4NTggMCAwIDAuMjIzODU4IDAgMC41VjE0LjVDMCAxNC43NzYxIDAuMjIzODU4IDE1IDAuNSAxNUg0LjVDNC43NzYxNCAxNSA1IDE0Ljc3NjEgNSAxNC41VjVIMTQuNUMxNC43NzYxIDUgMTUgNC43NzYxNCAxNSA0LjVWMC41QzE1IDAuMjIzODU4IDE0Ljc3NjEgMCAxNC41IDBIMC41Wk0xIDQuMDc1MDVMMSAxSDQuMDc1MDJDNC4wNzUwMiAxIDQuMDc1MDIgMSA0LjA3NTAyIDFMNC4wNzUwNSA0LjA3NTA3TDEgNC4wNzUwNVpNMC45OTk5OTcgNC45MjUwNUwxIDE0SDRWMTIuOTI1SDIuNzUwMDJDMi41MTUzIDEyLjkyNSAyLjMyNTAyIDEyLjczNDggMi4zMjUwMiAxMi41QzIuMzI1MDIgMTIuMjY1MyAyLjUxNTMgMTIuMDc1IDIuNzUwMDIgMTIuMDc1SDRWMTAuOTI1SDIuMjUwMDJDMi4wMTUzIDEwLjkyNSAxLjgyNTAyIDEwLjczNDcgMS44MjUwMiAxMC41QzEuODI1MDIgMTAuMjY1MyAyLjAxNTMgMTAuMDc1IDIuMjUwMDIgMTAuMDc1SDRWOC45MjUwNEwyLjc1MDAyIDguOTI1MDJDMi41MTUzIDguOTI1MDIgMi4zMjUwMiA4LjczNDc0IDIuMzI1MDIgOC41MDAwMkMyLjMyNTAzIDguMjY1MjkgMi41MTUzMSA4LjA3NTAyIDIuNzUwMDMgOC4wNzUwMkw0IDguMDc1MDRWNi45MjUwMkwyLjc0OTk5IDYuOTI1QzIuNTE1MjcgNi45MjUgMi4zMjUgNi43MzQ3MiAyLjMyNSA2LjVDMi4zMjUgNi4yNjUyOCAyLjUxNTI5IDYuMDc1IDIuNzUwMDEgNi4wNzVMNCA2LjA3NTAyVjQuOTI1MDdMMC45OTk5OTcgNC45MjUwNVpNNC45MjUwNSA0SDYuMDc1VjIuNzUwMDZDNi4wNzUgMi41MTUzNCA2LjI2NTI4IDIuMzI1MDYgNi41IDIuMzI1MDZDNi43MzQ3MiAyLjMyNTA2IDYuOTI1IDIuNTE1MzQgNi45MjUgMi43NTAwNlY0SDguMDc1MDJWMi43NTAwNUM4LjA3NTAyIDIuNTE1MzMgOC4yNjUzIDIuMzI1MDUgOC41MDAwMiAyLjMyNTA1QzguNzM0NzQgMi4zMjUwNSA4LjkyNTAyIDIuNTE1MzMgOC45MjUwMiAyLjc1MDA1VjRIMTAuMDc1MVYyLjI1MDA1QzEwLjA3NTEgMi4wMTUzMyAxMC4yNjUzIDEuODI1MDUgMTAuNTAwMSAxLjgyNTA1QzEwLjczNDggMS44MjUwNSAxMC45MjUxIDIuMDE1MzMgMTAuOTI1MSAyLjI1MDA1VjRIMTIuMDc1MVYyLjc1MDA1QzEyLjA3NTEgMi41MTUzMyAxMi4yNjU0IDIuMzI1MDUgMTIuNTAwMSAyLjMyNTA1QzEyLjczNDggMi4zMjUwNSAxMi45MjUxIDIuNTE1MzMgMTIuOTI1MSAyLjc1MDA1VjRIMTRWMUg0LjkyNTAyTDQuOTI1MDUgNFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNOID0gW1wiY29sb3JcIl07XG52YXIgU2Npc3NvcnNJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNOKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC45NDk5ODggNC40ODQ1NUMwLjk0OTk4OCA1LjM0MDU5IDEuNjQzOTUgNi4wMzQ1NSAyLjQ5OTk5IDYuMDM0NTVDMy4zNTYwMyA2LjAzNDU1IDQuMDQ5OTkgNS4zNDA1OSA0LjA0OTk5IDQuNDg0NTVDNC4wNDk5OSAzLjYyODUgMy4zNTYwMyAyLjkzNDU1IDIuNDk5OTkgMi45MzQ1NUMxLjY0Mzk1IDIuOTM0NTUgMC45NDk5ODggMy42Mjg1IDAuOTQ5OTg4IDQuNDg0NTVaTTIuNDk5OTkgNi45MzQ1NUMxLjE0Njg5IDYuOTM0NTUgMC4wNDk5ODc4IDUuODM3NjQgMC4wNDk5ODc4IDQuNDg0NTVDMC4wNDk5ODc4IDMuMTMxNDUgMS4xNDY4OSAyLjAzNDU1IDIuNDk5OTkgMi4wMzQ1NUMzLjg1MzA5IDIuMDM0NTUgNC45NDk5OSAzLjEzMTQ1IDQuOTQ5OTkgNC40ODQ1NUM0Ljk0OTk5IDQuODA4MTMgNC44ODcyNiA1LjExNzA3IDQuNzczMjkgNS4zOTk4NUw1LjczNjU1IDYuMDQ0MTNDNS43Mjk0MyA2LjA2NjU2IDUuNzIyNjkgNi4wODkxNCA1LjcxNjM1IDYuMTExODhMNS41NjI4OCA2LjY2MTg2TDUuMjEwMDUgNi44OTc3M0w0LjIxNTU0IDYuMjMzNjZDMy43NzM1NyA2LjY2NzIgMy4xNjggNi45MzQ1NSAyLjQ5OTk5IDYuOTM0NTVaTTAuOTQ5OTkxIDEwLjVDMC45NDk5OTEgOS42NDM5NCAxLjY0Mzk1IDguOTQ5OTggMi40OTk5OSA4Ljk0OTk4QzMuMzU2MDMgOC45NDk5OCA0LjA0OTk5IDkuNjQzOTQgNC4wNDk5OSAxMC41QzQuMDQ5OTkgMTEuMzU2IDMuMzU2MDMgMTIuMDUgMi40OTk5OSAxMi4wNUMxLjY0Mzk1IDEyLjA1IDAuOTQ5OTkxIDExLjM1NiAwLjk0OTk5MSAxMC41Wk0yLjQ5OTk5IDguMDQ5OThDMS4xNDY4OSA4LjA0OTk4IDAuMDQ5OTkwOCA5LjE0Njg4IDAuMDQ5OTkwOCAxMC41QzAuMDQ5OTkwOCAxMS44NTMxIDEuMTQ2ODkgMTIuOTUgMi40OTk5OSAxMi45NUMzLjg1MzA5IDEyLjk1IDQuOTQ5OTkgMTEuODUzMSA0Ljk0OTk5IDEwLjVDNC45NDk5OSAxMC4xODAzIDQuODg4NzcgOS44NzQ5NyA0Ljc3NzQzIDkuNTk1TDE1IDIuNzU3MzdMMTQuMDQ4NiAyLjg1NzM3QzEyLjcwNzcgMi45OTgzIDExLjQwOTEgMy40MDg5NSAxMC4yMzEgNC4wNjQ2MUw3LjE1NjQ2IDUuNzc1NjRDNi45MjMwNyA1LjkwNTUzIDYuNzUxMzQgNi4xMjMzOSA2LjY3OTU1IDYuMzgwNjZMNi40MjY1MyA3LjI4NzM3TDQuMjI0MzcgOC43NTk1N0MzLjc4MTY2IDguMzIwOTEgMy4xNzI0NiA4LjA0OTk4IDIuNDk5OTkgOC4wNDk5OFpNNy4xNDQzNSA5LjIxNDlMNy4xNTY0NiA5LjIyMTc2TDEwLjIzMSAxMC45MzI4QzExLjQwOTEgMTEuNTg4NCAxMi43MDc3IDExLjk5OTEgMTQuMDQ4NiAxMi4xNEwxNSAxMi4yNEw4LjgxMDcyIDguMTAwM0w3LjE0NDM1IDkuMjE0OVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDNPID0gW1wiY29sb3JcIl07XG52YXIgU2VjdGlvbkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM08pO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0yIDEuNUMyIDEuNzc2MTQgMS43NzYxNCAyIDEuNSAyQzEuMjIzODYgMiAxIDEuNzc2MTQgMSAxLjVDMSAxLjIyMzg2IDEuMjIzODYgMSAxLjUgMUMxLjc3NjE0IDEgMiAxLjIyMzg2IDIgMS41Wk0yIDVMMiAxMEgxM1Y1SDJaTTIgNEMxLjQ0NzcyIDQgMSA0LjQ0NzcyIDEgNVYxMEMxIDEwLjU1MjMgMS40NDc3MiAxMSAyIDExSDEzQzEzLjU1MjMgMTEgMTQgMTAuNTUyMyAxNCAxMFY1QzE0IDQuNDQ3NzIgMTMuNTUyMyA0IDEzIDRIMlpNMS41IDE0QzEuNzc2MTQgMTQgMiAxMy43NzYxIDIgMTMuNUMyIDEzLjIyMzkgMS43NzYxNCAxMyAxLjUgMTNDMS4yMjM4NiAxMyAxIDEzLjIyMzkgMSAxMy41QzEgMTMuNzc2MSAxLjIyMzg2IDE0IDEuNSAxNFpNNCAxLjVDNCAxLjc3NjE0IDMuNzc2MTQgMiAzLjUgMkMzLjIyMzg2IDIgMyAxLjc3NjE0IDMgMS41QzMgMS4yMjM4NiAzLjIyMzg2IDEgMy41IDFDMy43NzYxNCAxIDQgMS4yMjM4NiA0IDEuNVpNMy41IDE0QzMuNzc2MTQgMTQgNCAxMy43NzYxIDQgMTMuNUM0IDEzLjIyMzkgMy43NzYxNCAxMyAzLjUgMTNDMy4yMjM4NiAxMyAzIDEzLjIyMzkgMyAxMy41QzMgMTMuNzc2MSAzLjIyMzg2IDE0IDMuNSAxNFpNNiAxLjVDNiAxLjc3NjE0IDUuNzc2MTQgMiA1LjUgMkM1LjIyMzg2IDIgNSAxLjc3NjE0IDUgMS41QzUgMS4yMjM4NiA1LjIyMzg2IDEgNS41IDFDNS43NzYxNCAxIDYgMS4yMjM4NiA2IDEuNVpNNS41IDE0QzUuNzc2MTQgMTQgNiAxMy43NzYxIDYgMTMuNUM2IDEzLjIyMzkgNS43NzYxNCAxMyA1LjUgMTNDNS4yMjM4NiAxMyA1IDEzLjIyMzkgNSAxMy41QzUgMTMuNzc2MSA1LjIyMzg2IDE0IDUuNSAxNFpNOCAxLjVDOCAxLjc3NjE0IDcuNzc2MTQgMiA3LjUgMkM3LjIyMzg2IDIgNyAxLjc3NjE0IDcgMS41QzcgMS4yMjM4NiA3LjIyMzg2IDEgNy41IDFDNy43NzYxNCAxIDggMS4yMjM4NiA4IDEuNVpNNy41IDE0QzcuNzc2MTQgMTQgOCAxMy43NzYxIDggMTMuNUM4IDEzLjIyMzkgNy43NzYxNCAxMyA3LjUgMTNDNy4yMjM4NiAxMyA3IDEzLjIyMzkgNyAxMy41QzcgMTMuNzc2MSA3LjIyMzg2IDE0IDcuNSAxNFpNMTAgMS41QzEwIDEuNzc2MTQgOS43NzYxNCAyIDkuNSAyQzkuMjIzODYgMiA5IDEuNzc2MTQgOSAxLjVDOSAxLjIyMzg2IDkuMjIzODYgMSA5LjUgMUM5Ljc3NjE0IDEgMTAgMS4yMjM4NiAxMCAxLjVaTTkuNSAxNEM5Ljc3NjE0IDE0IDEwIDEzLjc3NjEgMTAgMTMuNUMxMCAxMy4yMjM5IDkuNzc2MTQgMTMgOS41IDEzQzkuMjIzODYgMTMgOSAxMy4yMjM5IDkgMTMuNUM5IDEzLjc3NjEgOS4yMjM4NiAxNCA5LjUgMTRaTTEyIDEuNUMxMiAxLjc3NjE0IDExLjc3NjEgMiAxMS41IDJDMTEuMjIzOSAyIDExIDEuNzc2MTQgMTEgMS41QzExIDEuMjIzODYgMTEuMjIzOSAxIDExLjUgMUMxMS43NzYxIDEgMTIgMS4yMjM4NiAxMiAxLjVaTTExLjUgMTRDMTEuNzc2MSAxNCAxMiAxMy43NzYxIDEyIDEzLjVDMTIgMTMuMjIzOSAxMS43NzYxIDEzIDExLjUgMTNDMTEuMjIzOSAxMyAxMSAxMy4yMjM5IDExIDEzLjVDMTEgMTMuNzc2MSAxMS4yMjM5IDE0IDExLjUgMTRaTTE0IDEuNUMxNCAxLjc3NjE0IDEzLjc3NjEgMiAxMy41IDJDMTMuMjIzOSAyIDEzIDEuNzc2MTQgMTMgMS41QzEzIDEuMjIzODYgMTMuMjIzOSAxIDEzLjUgMUMxMy43NzYxIDEgMTQgMS4yMjM4NiAxNCAxLjVaTTEzLjUgMTRDMTMuNzc2MSAxNCAxNCAxMy43NzYxIDE0IDEzLjVDMTQgMTMuMjIzOSAxMy43NzYxIDEzIDEzLjUgMTNDMTMuMjIzOSAxMyAxMyAxMy4yMjM5IDEzIDEzLjVDMTMgMTMuNzc2MSAxMy4yMjM5IDE0IDEzLjUgMTRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzUCA9IFtcImNvbG9yXCJdO1xudmFyIFNld2luZ1Bpbkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM1ApO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk02IDMuNUM2IDIuNjcxNTcgNi42NzE1NyAyIDcuNSAyQzguMzI4NDMgMiA5IDIuNjcxNTcgOSAzLjVDOSA0LjMyODQzIDguMzI4NDMgNSA3LjUgNUM2LjY3MTU3IDUgNiA0LjMyODQzIDYgMy41Wk04IDUuOTQ5OTlDOS4xNDExMiA1LjcxODM2IDEwIDQuNzA5NDggMTAgMy41QzEwIDIuMTE5MjkgOC44ODA3MSAxIDcuNSAxQzYuMTE5MjkgMSA1IDIuMTE5MjkgNSAzLjVDNSA0LjcwOTQ4IDUuODU4ODggNS43MTgzNiA3IDUuOTQ5OTlWMTMuNUM3IDEzLjc3NjEgNy4yMjM4NiAxNCA3LjUgMTRDNy43NzYxNCAxNCA4IDEzLjc3NjEgOCAxMy41VjUuOTQ5OTlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzUSA9IFtcImNvbG9yXCJdO1xudmFyIFNld2luZ1BpbkZpbGxlZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM1EpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMCAzLjVDMTAgNC43MDk0OCA5LjE0MTEyIDUuNzE4MzYgOCA1Ljk0OTk5VjEzLjVDOCAxMy43NzYxIDcuNzc2MTQgMTQgNy41IDE0QzcuMjIzODYgMTQgNyAxMy43NzYxIDcgMTMuNVY1Ljk0OTk5QzUuODU4ODggNS43MTgzNiA1IDQuNzA5NDggNSAzLjVDNSAyLjExOTI5IDYuMTE5MjkgMSA3LjUgMUM4Ljg4MDcxIDEgMTAgMi4xMTkyOSAxMCAzLjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzUiA9IFtcImNvbG9yXCJdO1xudmFyIFNoYWRvd0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM1IpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4wNVwiLFxuICAgIGQ6IFwiTTYuNzgyOTYgMTMuMzc2QzguNzM5MDQgOS45NTI4NCA4LjczOTA0IDUuMDQ3MTkgNi43ODI5NiAxLjYyNDA1TDcuMjE3MDggMS4zNzU5OEM5LjI2MSA0Ljk1MjgzIDkuMjYxIDEwLjA0NzIgNy4yMTcwOCAxMy42MjRMNi43ODI5NiAxMy4zNzZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjFcIixcbiAgICBkOiBcIk03LjI4MjA0IDEzLjQ3NzVDOS4yMzkyOSA5Ljk5NTIzIDkuMjM5MjkgNS4wMDQ3NSA3LjI4MjA0IDEuNTIyNDhMNy43MTc5MSAxLjI3NzVDOS43NjA2NyA0LjkxMTkgOS43NjA2NyAxMC4wODgxIDcuNzE3OTEgMTMuNzIyNUw3LjI4MjA0IDEzLjQ3NzVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjE1XCIsXG4gICAgZDogXCJNNy44MjA5OCAxMy41MDY0QzkuNzI1MDIgOS45OTUyMyA5LjcyNjM2IDUuMDE0MTEgNy44MjQ5MiAxLjUwMDg0TDguMjY0NjUgMS4yNjI4NUMxMC4yNDY1IDQuOTI0NjYgMTAuMjQ1MSAxMC4wODUgOC4yNjA1MiAxMy43NDQ4TDcuODIwOTggMTMuNTA2NFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuMlwiLFxuICAgIGQ6IFwiTTguNDEyODQgMTMuNDI5QzEwLjE5NTIgOS45Mjg0MiAxMC4xOTU3IDUuMDc1MzcgOC40MTQzNSAxLjU3NDAyTDguODU5OTkgMS4zNDcyOUMxMC43MTM5IDQuOTkxMTMgMTAuNzEzMyAxMC4wMTI4IDguODU4NDEgMTMuNjU1OUw4LjQxMjg0IDEzLjQyOVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuMjVcIixcbiAgICBkOiBcIk05LjAyNDQxIDEzLjI5NTZDMTAuNjU2NyA5LjgzNzkgMTAuNjU4NiA1LjE3NzE1IDkuMDMwMDUgMS43MTY1Nkw5LjQ4MjQ1IDEuNTAzNjZDMTEuMTc0NSA1LjA5OTE5IDExLjE3MjYgOS45MTYyOSA5LjQ3NjU3IDEzLjUwOTFMOS4wMjQ0MSAxMy4yOTU2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4zXCIsXG4gICAgZDogXCJNOS42NjgwOSAxMy4wNjU1QzExLjEwOTcgOS42OTU3MiAxMS4xMTA3IDUuMzEyMSA5LjY3MDg4IDEuOTQwOTVMMTAuMTMwNyAxLjc0NDU3QzExLjYyNDEgNS4yNDEyMSAxMS42MjMxIDkuNzY2ODMgMTAuMTI3OCAxMy4yNjIyTDkuNjY4MDkgMTMuMDY1NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuMzVcIixcbiAgICBkOiBcIk0xMC4zMzEgMTIuNzQ1NkMxMS41NTUxIDkuNTIwNzMgMTEuNTU2NCA1LjQ5MTAzIDEwLjMzNDcgMi4yNjQ0NEwxMC44MDI0IDIuMDg3NEMxMi4wNjcyIDUuNDI4MTUgMTIuMDY1OSA5LjU4Mzk0IDEwLjc5ODUgMTIuOTIzMUwxMC4zMzEgMTIuNzQ1NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuNFwiLFxuICAgIGQ6IFwiTTExLjAxNTUgMTIuMjk4NkMxMS45OTM4IDkuMjk3NDQgMTEuOTk0OCA1LjcxMjk2IDExLjAxODQgMi43MTA2N0wxMS40OTM5IDIuNTU2MDNDMTIuNTAzIDUuNjU4OSAxMi41MDIgOS4zNTE3OCAxMS40OTA5IDEyLjQ1MzVMMTEuMDE1NSAxMi4yOTg2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi40NVwiLFxuICAgIGQ6IFwiTTExLjcyMTQgMTEuNjY4QzEyLjQyNTQgOS4wMTMwMyAxMi40MjYyIDUuOTk2OTEgMTEuNzIzNyAzLjM0MTE2TDEyLjIwNzEgMy4yMTMyOUMxMi45MzE4IDUuOTUyOTIgMTIuOTMxIDkuMDU3MjggMTIuMjA0NyAxMS43OTYxTDExLjcyMTQgMTEuNjY4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi41XCIsXG4gICAgZDogXCJNMTIuNDQzMiAxMC43NTJDMTIuODUyNCA4LjYzNzYyIDEyLjg1MjMgNi4zNjA4OSAxMi40NDI5IDQuMjQ2NkwxMi45MzM4IDQuMTUxNTVDMTMuMzU1MyA2LjMyODYxIDEzLjM1NTQgOC42Njk4NSAxMi45MzQxIDEwLjg0N0wxMi40NDMyIDEwLjc1MlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC44NzcwNzUgNy40OTk4OEMwLjg3NzA3NSAzLjg0MjE5IDMuODQyMjIgMC44NzcwNDUgNy40OTk5MSAwLjg3NzA0NUMxMS4xNTc2IDAuODc3MDQ1IDE0LjEyMjcgMy44NDIxOSAxNC4xMjI3IDcuNDk5ODhDMTQuMTIyNyAxMS4xNTc1IDExLjE1NzYgMTQuMTIyNyA3LjQ5OTkxIDE0LjEyMjdDMy44NDIyMiAxNC4xMjI3IDAuODc3MDc1IDExLjE1NzUgMC44NzcwNzUgNy40OTk4OFpNNy40OTk5MSAxLjgyNzA0QzQuMzY2ODkgMS44MjcwNCAxLjgyNzA4IDQuMzY2ODYgMS44MjcwOCA3LjQ5OTg4QzEuODI3MDggMTAuNjMyOSA0LjM2Njg5IDEzLjE3MjcgNy40OTk5MSAxMy4xNzI3QzEwLjYzMjkgMTMuMTcyNyAxMy4xNzI3IDEwLjYzMjkgMTMuMTcyNyA3LjQ5OTg4QzEzLjE3MjcgNC4zNjY4NiAxMC42MzI5IDEuODI3MDQgNy40OTk5MSAxLjgyNzA0WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM1MgPSBbXCJjb2xvclwiXTtcbnZhciBTaGFkb3dJbm5lckljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM1MpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4wNVwiLFxuICAgIGQ6IFwiTTEyLjE2MTkgMy44NTE4MkM4LjM1ODE3IDQuODg5MTggNC44ODkzNiA4LjM1OCAzLjg1MTk5IDEyLjE2MTdMMy4zNjk2IDEyLjAzMDFDNC40NTM1NiA4LjA1NTY0IDguMDU1ODEgNC40NTMzOSAxMi4wMzAzIDMuMzY5NDNMMTIuMTYxOSAzLjg1MTgyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4xXCIsXG4gICAgZDogXCJNMTEuODgwNyAzLjQyNzA3QzguMDM0NDEgNC41MDU0MiA0LjUwNTYxIDguMDM0MjIgMy40MjcyNiAxMS44ODA1TDIuOTQ1ODIgMTEuNzQ1NkM0LjA3MTI5IDcuNzMxMjEgNy43MzE0IDQuMDcxMSAxMS43NDU4IDIuOTQ1NjNMMTEuODgwNyAzLjQyNzA3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4xNVwiLFxuICAgIGQ6IFwiTTExLjUyMDEgMy4wMjU1NkM3LjY5MDkyIDQuMTYxOTkgNC4xNjc3OSA3LjY4MzIzIDMuMDI4MDUgMTEuNTEyTDIuNTQ4ODMgMTEuMzY5NEMzLjczNjc2IDcuMzc4NjkgNy4zODY1OSAzLjczMDc2IDExLjM3NzggMi41NDYyM0wxMS41MjAxIDMuMDI1NTZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjJcIixcbiAgICBkOiBcIk0xMS4wNDY4IDIuNjYxNjlDNy4zMTExNyAzLjg3NjY0IDMuODc5MTggNy4zMDc5IDIuNjYyOTggMTEuMDQzNEwyLjE4NzU0IDEwLjg4ODZDMy40NTMyNCA3LjAwMTA5IDcuMDA0NDUgMy40NTA2MiAxMC44OTIxIDIuMTg2MjFMMTEuMDQ2OCAyLjY2MTY5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4yNVwiLFxuICAgIGQ6IFwiTTEwLjUyMDEgMi4zMjM2NUM2LjkyMDkxIDMuNjE0NDcgMy42MjM5MSA2LjkwODc2IDIuMzI4NDUgMTAuNTA3M0wxLjg1OCAxMC4zMzhDMy4yMDM5OCA2LjU5OTA5IDYuNjExNTUgMy4xOTQyNCAxMC4zNTEzIDEuODUzMDFMMTAuNTIwMSAyLjMyMzY1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4zXCIsXG4gICAgZDogXCJNOS45MDIyMiAyLjAzMTIyQzYuNTAwMDMgMy4zOTQ2NSAzLjM5OTY4IDYuNDkzNjcgMi4wMzM5OSA5Ljg5NTUxTDEuNTY5OTggOS43MDkyNEMyLjk4NjUxIDYuMTgwNzYgNi4xODcyOCAyLjk4MTMzIDkuNzE2MjIgMS41NjcxTDkuOTAyMjIgMi4wMzEyMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuMzVcIixcbiAgICBkOiBcIk05LjIwNzI3IDEuNzg4NzNDNi4wNjEzNiAzLjIwMzQ5IDMuMjExMDMgNi4wNTIwMyAxLjc5MzMxIDkuMTk3MzhMMS4zMzc0NyA4Ljk5MTkyQzIuODA1MzYgNS43MzUyOCA1Ljc0NDg1IDIuNzk3NiA5LjAwMjIgMS4zMzI3Mkw5LjIwNzI3IDEuNzg4NzNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjRcIixcbiAgICBkOiBcIk04LjQwNzEzIDEuNjIwODVDNS41OTMyMyAzLjA1MTE3IDMuMDU3OTQgNS41ODUwOSAxLjYyNTQ0IDguMzk4NDdMMS4xNzk4NyA4LjE3MTZDMi42NjAzNiA1LjI2Mzk3IDUuMjcyMzIgMi42NTM0IDguMTgwNTcgMS4xNzUxM0w4LjQwNzEzIDEuNjIwODVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjQ1XCIsXG4gICAgZDogXCJNNy40NjIwNyAxLjU2NzQ3QzUuMDg2ODkgMi45NDY5NSAyLjk1MzYyIDUuMDc5MTIgMS41NzI0OSA3LjQ1Mzc5TDEuMTQwMjggNy4yMDI0MUMyLjU2NTAzIDQuNzUyNzMgNC43NjA3IDIuNTU4MTggNy4yMTA5NiAxLjEzNTFMNy40NjIwNyAxLjU2NzQ3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi41XCIsXG4gICAgZDogXCJNNi4zMDQwNyAxLjcwNDg3QzQuNTE5NjQgMi45MTA2MyAyLjkwOTgzIDQuNTIwNjEgMS43MDQzIDYuMzA1MTNMMS4yODk5OCA2LjAyNTI0QzIuNTMxMyA0LjE4NzczIDQuMTg2NzMgMi41MzIxNCA2LjAyNDEzIDEuMjkwNTlMNi4zMDQwNyAxLjcwNDg3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0wLjg3NzA3NSA3LjQ5OTg4QzAuODc3MDc1IDMuODQyMTkgMy44NDIyMiAwLjg3NzA0NSA3LjQ5OTkxIDAuODc3MDQ1QzExLjE1NzYgMC44NzcwNDUgMTQuMTIyNyAzLjg0MjE5IDE0LjEyMjcgNy40OTk4OEMxNC4xMjI3IDExLjE1NzUgMTEuMTU3NiAxNC4xMjI3IDcuNDk5OTEgMTQuMTIyN0MzLjg0MjIyIDE0LjEyMjcgMC44NzcwNzUgMTEuMTU3NSAwLjg3NzA3NSA3LjQ5OTg4Wk03LjQ5OTkxIDEuODI3MDRDNC4zNjY4OSAxLjgyNzA0IDEuODI3MDggNC4zNjY4NiAxLjgyNzA4IDcuNDk5ODhDMS44MjcwOCAxMC42MzI5IDQuMzY2ODkgMTMuMTcyNyA3LjQ5OTkxIDEzLjE3MjdDMTAuNjMyOSAxMy4xNzI3IDEzLjE3MjcgMTAuNjMyOSAxMy4xNzI3IDcuNDk5ODhDMTMuMTcyNyA0LjM2Njg2IDEwLjYzMjkgMS44MjcwNCA3LjQ5OTkxIDEuODI3MDRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzVCA9IFtcImNvbG9yXCJdO1xudmFyIFNoYWRvd05vbmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDNUKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuMDVcIixcbiAgICBkOiBcIk02Ljc4Mjk2IDEzLjM3NkM4LjczOTA0IDkuOTUyODQgOC43MzkwNCA1LjA0NzE5IDYuNzgyOTYgMS42MjQwNUw3LjIxNzA4IDEuMzc1OThDOS4yNjEgNC45NTI4MyA5LjI2MSAxMC4wNDcyIDcuMjE3MDggMTMuNjI0TDYuNzgyOTYgMTMuMzc2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4xXCIsXG4gICAgZDogXCJNNy4yODIwNCAxMy40Nzc1QzkuMjM5MjkgOS45OTUyMyA5LjIzOTI5IDUuMDA0NzUgNy4yODIwNCAxLjUyMjQ4TDcuNzE3OTEgMS4yNzc1QzkuNzYwNjcgNC45MTE5IDkuNzYwNjcgMTAuMDg4MSA3LjcxNzkxIDEzLjcyMjVMNy4yODIwNCAxMy40Nzc1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4xNVwiLFxuICAgIGQ6IFwiTTcuODIwOTggMTMuNTA2NEM5LjcyNTAyIDkuOTk1MjMgOS43MjYzNiA1LjAxNDExIDcuODI0OTIgMS41MDA4NEw4LjI2NDY1IDEuMjYyODVDMTAuMjQ2NSA0LjkyNDY2IDEwLjI0NTEgMTAuMDg1IDguMjYwNTIgMTMuNzQ0OEw3LjgyMDk4IDEzLjUwNjRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjJcIixcbiAgICBkOiBcIk04LjQxMjg0IDEzLjQyOUMxMC4xOTUyIDkuOTI4NDIgMTAuMTk1NyA1LjA3NTM3IDguNDE0MzUgMS41NzQwMkw4Ljg1OTk5IDEuMzQ3MjlDMTAuNzEzOSA0Ljk5MTEzIDEwLjcxMzMgMTAuMDEyOCA4Ljg1ODQxIDEzLjY1NTlMOC40MTI4NCAxMy40MjlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjI1XCIsXG4gICAgZDogXCJNOS4wMjQ0MSAxMy4yOTU2QzEwLjY1NjcgOS44Mzc5IDEwLjY1ODYgNS4xNzcxNSA5LjAzMDA1IDEuNzE2NTZMOS40ODI0NSAxLjUwMzY2QzExLjE3NDUgNS4wOTkxOSAxMS4xNzI2IDkuOTE2MjkgOS40NzY1NyAxMy41MDkxTDkuMDI0NDEgMTMuMjk1NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuM1wiLFxuICAgIGQ6IFwiTTkuNjY4MDkgMTMuMDY1NUMxMS4xMDk3IDkuNjk1NzIgMTEuMTEwNyA1LjMxMjEgOS42NzA4OCAxLjk0MDk1TDEwLjEzMDcgMS43NDQ1N0MxMS42MjQxIDUuMjQxMjEgMTEuNjIzMSA5Ljc2NjgzIDEwLjEyNzggMTMuMjYyMkw5LjY2ODA5IDEzLjA2NTVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjM1XCIsXG4gICAgZDogXCJNMTAuMzMxIDEyLjc0NTZDMTEuNTU1MSA5LjUyMDczIDExLjU1NjQgNS40OTEwMyAxMC4zMzQ3IDIuMjY0NDRMMTAuODAyNCAyLjA4NzRDMTIuMDY3MiA1LjQyODE1IDEyLjA2NTkgOS41ODM5NCAxMC43OTg1IDEyLjkyMzFMMTAuMzMxIDEyLjc0NTZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjRcIixcbiAgICBkOiBcIk0xMS4wMTU1IDEyLjI5ODZDMTEuOTkzOCA5LjI5NzQ0IDExLjk5NDggNS43MTI5NiAxMS4wMTg0IDIuNzEwNjdMMTEuNDkzOSAyLjU1NjAzQzEyLjUwMyA1LjY1ODkgMTIuNTAyIDkuMzUxNzggMTEuNDkwOSAxMi40NTM1TDExLjAxNTUgMTIuMjk4NlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuNDVcIixcbiAgICBkOiBcIk0xMS43MjE0IDExLjY2OEMxMi40MjU0IDkuMDEzMDMgMTIuNDI2MiA1Ljk5NjkxIDExLjcyMzcgMy4zNDExNkwxMi4yMDcxIDMuMjEzMjlDMTIuOTMxOCA1Ljk1MjkyIDEyLjkzMSA5LjA1NzI4IDEyLjIwNDcgMTEuNzk2MUwxMS43MjE0IDExLjY2OFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuNVwiLFxuICAgIGQ6IFwiTTEyLjQ0MzIgMTAuNzUyQzEyLjg1MjQgOC42Mzc2MiAxMi44NTIzIDYuMzYwODkgMTIuNDQyOSA0LjI0NjZMMTIuOTMzOCA0LjE1MTU1QzEzLjM1NTMgNi4zMjg2MSAxMy4zNTU0IDguNjY5ODUgMTIuOTM0MSAxMC44NDdMMTIuNDQzMiAxMC43NTJaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTEgMC44NzcwNDVDMy44NDIyMiAwLjg3NzA0NSAwLjg3NzA3NSAzLjg0MjE5IDAuODc3MDc1IDcuNDk5ODhDMC44NzcwNzUgOS4xNDg4IDEuNDc5NjkgMTAuNjU3IDIuNDc2NyAxMS44MTYyTDEuNjQ2NDcgMTIuNjQ2NEMxLjQ1MTIxIDEyLjg0MTcgMS40NTEyMSAxMy4xNTgzIDEuNjQ2NDcgMTMuMzUzNUMxLjg0MTczIDEzLjU0ODggMi4xNTgzMiAxMy41NDg4IDIuMzUzNTggMTMuMzUzNUwzLjE4MzgzIDEyLjUyMzNDNC4zNDMwMiAxMy41MjAyIDUuODUxMSAxNC4xMjI3IDcuNDk5OTEgMTQuMTIyN0MxMS4xNTc2IDE0LjEyMjcgMTQuMTIyNyAxMS4xNTc1IDE0LjEyMjcgNy40OTk4OEMxNC4xMjI3IDUuODUxMDcgMTMuNTIwMiA0LjM0Mjk4IDEyLjUyMzMgMy4xODM4TDEzLjM1MzYgMi4zNTM1NUMxMy41NDg4IDIuMTU4MjkgMTMuNTQ4OCAxLjg0MTcgMTMuMzUzNiAxLjY0NjQ0QzEzLjE1ODMgMS40NTExOCAxMi44NDE3IDEuNDUxMTggMTIuNjQ2NSAxLjY0NjQ0TDExLjgxNjIgMi40NzY2N0MxMC42NTcgMS40Nzk2NiA5LjE0ODgzIDAuODc3MDQ1IDcuNDk5OTEgMC44NzcwNDVaTTExLjE0MjMgMy4xNTA2NUMxMC4xNTY4IDIuMzI0NDkgOC44ODY0NCAxLjgyNzA0IDcuNDk5OTEgMS44MjcwNEM0LjM2Njg5IDEuODI3MDQgMS44MjcwOCA0LjM2Njg2IDEuODI3MDggNy40OTk4OEMxLjgyNzA4IDguODg2NDEgMi4zMjQ1MiAxMC4xNTY4IDMuMTUwNjkgMTEuMTQyMkwxMS4xNDIzIDMuMTUwNjVaTTMuODU3ODEgMTEuODQ5M0M0Ljg0MzIyIDEyLjY3NTMgNi4xMTM0OCAxMy4xNzI3IDcuNDk5OTEgMTMuMTcyN0MxMC42MzI5IDEzLjE3MjcgMTMuMTcyNyAxMC42MzI5IDEzLjE3MjcgNy40OTk4OEMxMy4xNzI3IDYuMTEzNDUgMTIuNjc1NCA0Ljg0MzE5IDExLjg0OTMgMy44NTc3OEwzLjg1NzgxIDExLjg0OTNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzVSA9IFtcImNvbG9yXCJdO1xudmFyIFNoYWRvd091dGVySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzVSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjA1XCIsXG4gICAgZDogXCJNMTIuMTM5OCAzLjg4NjE3QzEzLjg1NTMgNC45NDE1OSAxNSA2LjgzNzAxIDE1IDkuMDAwMDFDMTUgMTIuMzEzNyAxMi4zMTM3IDE1IDkuMDAwMDIgMTVDNi44NDM1MSAxNSA0Ljk1Mjk2IDEzLjg2MjEgMy44OTU2OSAxMi4xNTUyTDQuMzIwNzYgMTEuODkxOUM1LjI5MDY5IDEzLjQ1NzggNy4wMjM3NiAxNC41IDkuMDAwMDIgMTQuNUMxMi4wMzc2IDE0LjUgMTQuNSAxMi4wMzc1IDE0LjUgOS4wMDAwMUMxNC41IDcuMDE3ODEgMTMuNDUxNiA1LjI4MDI3IDExLjg3NzggNC4zMTIwM0wxMi4xMzk4IDMuODg2MTdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIG9wYWNpdHk6IFwiLjJcIixcbiAgICBkOiBcIk0xMi44NTEgNS4wNzMyMUMxMy44Njg0IDYuMDcxMDYgMTQuNSA3LjQ2MTk5IDE0LjUgOUMxNC41IDEyLjAzNzUgMTIuMDM3NiAxNC41IDkuMDAwMDQgMTQuNUM3LjQ2MjE1IDE0LjUgNi4wNzEzMiAxMy44Njg1IDUuMDczNDkgMTIuODUxM0w1LjQzMDQzIDEyLjUwMTFDNi4zMzgxIDEzLjQyNjQgNy42MDE4NiAxNCA5LjAwMDA0IDE0QzExLjc2MTQgMTQgMTQgMTEuNzYxNCAxNCA5QzE0IDcuNjAxNzEgMTMuNDI2NCA2LjMzNzg2IDEyLjUwMDkgNS40MzAxN0wxMi44NTEgNS4wNzMyMVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuMzVcIixcbiAgICBkOiBcIk0xMy4zMDIyIDYuNDUwNzFDMTMuNzQ1NSA3LjE5NzM3IDE0IDguMDY5MzUgMTQgOS4wMDAwMUMxNCAxMS43NjE0IDExLjc2MTQgMTQgOS4wMDAwMiAxNEM4LjA0ODY4IDE0IDcuMTU4NjggMTMuNzM0MSA2LjQwMTE4IDEzLjI3MjRMNi42NjE0MiAxMi44NDU0QzcuMzQyNzUgMTMuMjYwNyA4LjE0MzA2IDEzLjUgOS4wMDAwMiAxMy41QzExLjQ4NTMgMTMuNSAxMy41IDExLjQ4NTMgMTMuNSA5LjAwMDAxQzEzLjUgOC4xNjE2NSAxMy4yNzEgNy4zNzc1NCAxMi44NzIyIDYuNzA1OTlMMTMuMzAyMiA2LjQ1MDcxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi41XCIsXG4gICAgZDogXCJNMTMuMzc0NSA3Ljk0MDIyQzEzLjQ1NjYgOC4yODAzMSAxMy41IDguNjM1MjUgMTMuNSA5LjAwMDAxQzEzLjUgMTEuNDg1MyAxMS40ODUzIDEzLjUgOS4wMDAwMyAxMy41QzguNjExMDQgMTMuNSA4LjIzMzIzIDEzLjQ1MDYgNy44NzI2OCAxMy4zNTc2TDcuOTk3NTkgMTIuODczNEM4LjMxNzY4IDEyLjk1NiA4LjY1MzUzIDEzIDkuMDAwMDMgMTNDMTEuMjA5MSAxMyAxMyAxMS4yMDkxIDEzIDkuMDAwMDFDMTMgOC42NzUwOSAxMi45NjEzIDguMzU5NTMgMTIuODg4NCA4LjA1NzU3TDEzLjM3NDUgNy45NDAyMlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgb3BhY2l0eTogXCIuNjVcIixcbiAgICBkOiBcIk0xMi45MTU1IDkuODIxMzNDMTIuNTg5OCAxMS4zODEzIDExLjM1NjIgMTIuNjA3MiA5Ljc5MjA1IDEyLjkyMTVMOS42OTM1NCAxMi40MzEzQzExLjA2MTMgMTIuMTU2NSAxMi4xNDEzIDExLjA4MzQgMTIuNDI2MSA5LjcxOTE1TDEyLjkxNTUgOS44MjEzM1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS4yNzcxIDcuNTAyNTNDMS4yNzcxIDQuMDY0NTYgNC4wNjQxMyAxLjI3NzUzIDcuNTAyMSAxLjI3NzUzQzEwLjk0IDEuMjc3NTMgMTMuNzI3MSA0LjA2NDU2IDEzLjcyNzEgNy41MDI1M0MxMy43MjcxIDEwLjk0MDUgMTAuOTQgMTMuNzI3NSA3LjUwMjEgMTMuNzI3NUM0LjA2NDEzIDEzLjcyNzUgMS4yNzcxIDEwLjk0MDUgMS4yNzcxIDcuNTAyNTNaTTcuNTAyMSAyLjIyNzUzQzQuNTg4OCAyLjIyNzUzIDIuMjI3MSA0LjU4OTIzIDIuMjI3MSA3LjUwMjUzQzIuMjI3MSAxMC40MTU4IDQuNTg4OCAxMi43Nzc1IDcuNTAyMSAxMi43Nzc1QzEwLjQxNTQgMTIuNzc3NSAxMi43NzcxIDEwLjQxNTggMTIuNzc3MSA3LjUwMjUzQzEyLjc3NzEgNC41ODkyMyAxMC40MTU0IDIuMjI3NTMgNy41MDIxIDIuMjI3NTNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzViA9IFtcImNvbG9yXCJdO1xudmFyIFNoYXJlMUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM1YpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk01IDcuNTAwMDNDNSA4LjMyODQ1IDQuMzI4NDMgOS4wMDAwMyAzLjUgOS4wMDAwM0MyLjY3MTU3IDkuMDAwMDMgMiA4LjMyODQ1IDIgNy41MDAwM0MyIDYuNjcxNiAyLjY3MTU3IDYuMDAwMDMgMy41IDYuMDAwMDNDNC4zMjg0MyA2LjAwMDAzIDUgNi42NzE2IDUgNy41MDAwM1pNNS43MTMxMyA4LjY2Mzg4QzUuMjk0NDUgOS40NTgzOCA0LjQ2MDQ4IDEwIDMuNSAxMEMyLjExOTI5IDEwIDEgOC44ODA3NCAxIDcuNTAwMDNDMSA2LjExOTMxIDIuMTE5MjkgNS4wMDAwMyAzLjUgNS4wMDAwM0M0LjQ2MDQ4IDUuMDAwMDMgNS4yOTQ0NSA1LjU0MTY3IDUuNzEzMTMgNi4zMzYxNkw5LjEwNDI0IDQuMjE2NzFDOS4wMzY0MyAzLjk4OTY4IDkgMy43NDkxMSA5IDMuNTAwMDNDOSAyLjExOTMyIDEwLjExOTMgMS4wMDAwMyAxMS41IDEuMDAwMDNDMTIuODgwNyAxLjAwMDAzIDE0IDIuMTE5MzIgMTQgMy41MDAwM0MxNCA0Ljg4MDc0IDEyLjg4MDcgNi4wMDAwMyAxMS41IDYuMDAwMDNDMTAuNjkxNSA2LjAwMDAzIDkuOTcyNjQgNS42MTYyNCA5LjUxNTY2IDUuMDIwOUw1Ljk4NTMgNy4yMjczOEM1Ljk5NTAyIDcuMzE2OTIgNiA3LjQwNzg5IDYgNy41MDAwM0M2IDcuNTkyMTYgNS45OTUwMiA3LjY4MzEyIDUuOTg1MyA3Ljc3MjY3TDkuNTE1NjcgOS45NzkxNUM5Ljk3MjY1IDkuMzgzODIgMTAuNjkxNSA5LjAwMDAzIDExLjUgOS4wMDAwM0MxMi44ODA3IDkuMDAwMDMgMTQgMTAuMTE5MyAxNCAxMS41QzE0IDEyLjg4MDcgMTIuODgwNyAxNCAxMS41IDE0QzEwLjExOTMgMTQgOSAxMi44ODA3IDkgMTEuNUM5IDExLjI1MDkgOS4wMzY0MyAxMS4wMTA0IDkuMTA0MjUgMTAuNzgzM0w1LjcxMzEzIDguNjYzODhaTTExLjUgNS4wMDAwM0MxMi4zMjg0IDUuMDAwMDMgMTMgNC4zMjg0NiAxMyAzLjUwMDAzQzEzIDIuNjcxNiAxMi4zMjg0IDIuMDAwMDMgMTEuNSAyLjAwMDAzQzEwLjY3MTYgMi4wMDAwMyAxMCAyLjY3MTYgMTAgMy41MDAwM0MxMCA0LjMyODQ2IDEwLjY3MTYgNS4wMDAwMyAxMS41IDUuMDAwMDNaTTEzIDExLjVDMTMgMTIuMzI4NSAxMi4zMjg0IDEzIDExLjUgMTNDMTAuNjcxNiAxMyAxMCAxMi4zMjg1IDEwIDExLjVDMTAgMTAuNjcxNiAxMC42NzE2IDEwIDExLjUgMTBDMTIuMzI4NCAxMCAxMyAxMC42NzE2IDEzIDExLjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzVyA9IFtcImNvbG9yXCJdO1xudmFyIFNoYXJlMkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkM1cpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0zLjUgNS4wMDAwNkMzLjIyMzg2IDUuMDAwMDYgMyA1LjIyMzkyIDMgNS41MDAwNkwzIDExLjUwMDFDMyAxMS43NzYyIDMuMjIzODYgMTIuMDAwMSAzLjUgMTIuMDAwMUwxMS41IDEyLjAwMDFDMTEuNzc2MSAxMi4wMDAxIDEyIDExLjc3NjIgMTIgMTEuNTAwMUwxMiA1LjUwMDA2QzEyIDUuMjIzOTIgMTEuNzc2MSA1LjAwMDA2IDExLjUgNS4wMDAwNkwxMC4yNSA1LjAwMDA2QzkuOTczODYgNS4wMDAwNiA5Ljc1IDQuNzc2MiA5Ljc1IDQuNTAwMDZDOS43NSA0LjIyMzkyIDkuOTczODYgNC4wMDAwNiAxMC4yNSA0LjAwMDA2TDExLjUgNC4wMDAwNkMxMi4zMjg0IDQuMDAwMDYgMTMgNC42NzE2MyAxMyA1LjUwMDA2TDEzIDExLjUwMDFDMTMgMTIuMzI4NSAxMi4zMjg0IDEzLjAwMDEgMTEuNSAxMy4wMDAxTDMuNSAxMy4wMDAxQzIuNjcxNTcgMTMuMDAwMSAyIDEyLjMyODUgMiAxMS41MDAxTDIgNS41MDAwNkMyIDQuNjcxNjMgMi42NzE1NyA0LjAwMDA2IDMuNSA0LjAwMDA2TDQuNzUgNC4wMDAwNkM1LjAyNjE0IDQuMDAwMDYgNS4yNSA0LjIyMzkyIDUuMjUgNC41MDAwNkM1LjI1IDQuNzc2MiA1LjAyNjE0IDUuMDAwMDYgNC43NSA1LjAwMDA2TDMuNSA1LjAwMDA2Wk03IDEuNjM2NEw1LjU2ODIgMy4wNjgyQzUuMzkyNDYgMy4yNDM5MyA1LjEwNzU0IDMuMjQzOTMgNC45MzE4IDMuMDY4MkM0Ljc1NjA3IDIuODkyNDYgNC43NTYwNyAyLjYwNzU0IDQuOTMxOCAyLjQzMThMNy4xODE4IDAuMTgxODAyQzcuMjY2MTkgMC4wOTc0MSA3LjM4MDY1IDAuMDQ5OTk5IDcuNSAwLjA0OTk5OUM3LjYxOTM1IDAuMDQ5OTk5IDcuNzMzODEgMC4wOTc0MSA3LjgxODIgMC4xODE4MDJMMTAuMDY4MiAyLjQzMThDMTAuMjQzOSAyLjYwNzU0IDEwLjI0MzkgMi44OTI0NiAxMC4wNjgyIDMuMDY4MkM5Ljg5MjQ2IDMuMjQzOTMgOS42MDc1NCAzLjI0MzkzIDkuNDMxOCAzLjA2ODJMOCAxLjYzNjRMOCA4LjVDOCA4Ljc3NjE0IDcuNzc2MTQgOSA3LjUgOUM3LjIyMzg2IDkgNyA4Ljc3NjE0IDcgOC41TDcgMS42MzY0WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM1ggPSBbXCJjb2xvclwiXTtcbnZhciBTaHVmZmxlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzWCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEyLjM1MzYgMS4xNDY0NUMxMi4xNTgzIDAuOTUxMTg0IDExLjg0MTcgMC45NTExODQgMTEuNjQ2NCAxLjE0NjQ1QzExLjQ1MTIgMS4zNDE3MSAxMS40NTEyIDEuNjU4MjkgMTEuNjQ2NCAxLjg1MzU1TDEyLjc5MjkgM0gxMkMxMC43MDM3IDMgOS43MTExMSAzLjU4NDIzIDguODcyNDggNC4zODkzMUM4LjIwMDY1IDUuMDM0MjcgNy41OTM0OSA1Ljg1Njg0IDYuOTk0NjEgNi42NjgyQzYuODYyODcgNi44NDY2OCA2LjczMTU0IDcuMDI0NjIgNi42IDcuMkM1LjEwODc0IDkuMTg4MzUgMy40OTAzNyAxMSAwLjUgMTFDMC4yMjM4NTggMTEgMCAxMS4yMjM5IDAgMTEuNUMwIDExLjc3NjEgMC4yMjM4NTggMTIgMC41IDEyQzQuMDA5NjMgMTIgNS44OTEyNiA5LjgxMTY1IDcuNCA3LjhDNy41NDM2NyA3LjYwODQ1IDcuNjgzMiA3LjQxOTYyIDcuODE5OTYgNy4yMzQ1NEw3LjgyMDA1IDcuMjM0NDNMNy44MjAwNiA3LjIzNDQxQzguNDE2NzQgNi40MjY5NSA4Ljk2MDY5IDUuNjkwODUgOS41NjUwMiA1LjExMDY5QzEwLjI4ODkgNC40MTU3NyAxMS4wNDYzIDQgMTIgNEgxMi43OTI5TDExLjY0NjQgNS4xNDY0NUMxMS40NTEyIDUuMzQxNzEgMTEuNDUxMiA1LjY1ODI5IDExLjY0NjQgNS44NTM1NUMxMS44NDE3IDYuMDQ4ODIgMTIuMTU4MyA2LjA0ODgyIDEyLjM1MzYgNS44NTM1NUwxNC4zNTM2IDMuODUzNTVDMTQuNTQ4OCAzLjY1ODI5IDE0LjU0ODggMy4zNDE3MSAxNC4zNTM2IDMuMTQ2NDVMMTIuMzUzNiAxLjE0NjQ1Wk0wLjUgM0MzLjM1Mjc4IDMgNS4xMjk5MiA0LjQ0NTg4IDYuNTA1NDggNi4wNjc0Nkw2LjM3NjIgNi4yNDI2NkM2LjI0ODMgNi40MTYxIDYuMTIyOTMgNi41ODYwOSA2IDYuNzVDNS45NjM5NyA2Ljc5ODA0IDUuOTI3OTggNi44NDU4MSA1Ljg5MiA2Ljg5MzMxQzQuNTczNDggNS4yOTMwNiAzLjAyNjM3IDQgMC41IDRDMC4yMjM4NTggNCAwIDMuNzc2MTQgMCAzLjVDMCAzLjIyMzg2IDAuMjIzODU4IDMgMC41IDNaTTguODcyNDggMTAuNjEwN0M4LjM3Mjg0IDEwLjEzMSA3LjkwODk3IDkuNTUzMTQgNy40NTc2NyA4Ljk1NDY4QzcuNjQ2ODggOC43MTY5MyA3LjgyNzA0IDguNDgwNjEgOCA4LjI1TDguMDg5ODcgOC4xMjk4N0M4LjU4NDEyIDguNzk0MDIgOS4wNTI4OCA5LjM5NzY2IDkuNTY1MDIgOS44ODkzMUMxMC4yODg5IDEwLjU4NDIgMTEuMDQ2MyAxMSAxMiAxMUgxMi43OTI5TDExLjY0NjQgOS44NTM1NUMxMS40NTEyIDkuNjU4MjkgMTEuNDUxMiA5LjM0MTcxIDExLjY0NjQgOS4xNDY0NUMxMS44NDE3IDguOTUxMTggMTIuMTU4MyA4Ljk1MTE4IDEyLjM1MzYgOS4xNDY0NUwxNC4zNTM2IDExLjE0NjRDMTQuNTQ4OCAxMS4zNDE3IDE0LjU0ODggMTEuNjU4MyAxNC4zNTM2IDExLjg1MzZMMTIuMzUzNiAxMy44NTM2QzEyLjE1ODMgMTQuMDQ4OCAxMS44NDE3IDE0LjA0ODggMTEuNjQ2NCAxMy44NTM2QzExLjQ1MTIgMTMuNjU4MyAxMS40NTEyIDEzLjM0MTcgMTEuNjQ2NCAxMy4xNDY0TDEyLjc5MjkgMTJIMTJDMTAuNzAzNyAxMiA5LjcxMTExIDExLjQxNTggOC44NzI0OCAxMC42MTA3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM1kgPSBbXCJjb2xvclwiXTtcbnZhciBTaXplSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzWSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTExLjUgMy4wNDk5OUMxMS43NDg1IDMuMDQ5OTkgMTEuOTUgMy4yNTE0NiAxMS45NSAzLjQ5OTk5VjcuNDk5OTlDMTEuOTUgNy43NDg1MiAxMS43NDg1IDcuOTQ5OTkgMTEuNSA3Ljk0OTk5QzExLjI1MTUgNy45NDk5OSAxMS4wNSA3Ljc0ODUyIDExLjA1IDcuNDk5OTlWNC41ODYzOUw0LjU4NjM4IDExLjA1SDcuNDk5OTlDNy43NDg1MiAxMS4wNSA3Ljk0OTk5IDExLjI1MTUgNy45NDk5OSAxMS41QzcuOTQ5OTkgMTEuNzQ4NSA3Ljc0ODUyIDExLjk1IDcuNDk5OTkgMTEuOTVMMy40OTk5OSAxMS45NUMzLjM4MDY0IDExLjk1IDMuMjY2MTggMTEuOTAyNiAzLjE4MTc5IDExLjgxODJDMy4wOTc0IDExLjczMzggMy4wNDk5OSAxMS42MTkzIDMuMDQ5OTkgMTEuNUwzLjA0OTk5IDcuNDk5OTlDMy4wNDk5OSA3LjI1MTQ2IDMuMjUxNDYgNy4wNDk5OSAzLjQ5OTk5IDcuMDQ5OTlDMy43NDg1MiA3LjA0OTk5IDMuOTQ5OTkgNy4yNTE0NiAzLjk0OTk5IDcuNDk5OTlMMy45NDk5OSAxMC40MTM2TDEwLjQxMzYgMy45NDk5OUw3LjQ5OTk5IDMuOTQ5OTlDNy4yNTE0NiAzLjk0OTk5IDcuMDQ5OTkgMy43NDg1MiA3LjA0OTk5IDMuNDk5OTlDNy4wNDk5OSAzLjI1MTQ2IDcuMjUxNDYgMy4wNDk5OSA3LjQ5OTk5IDMuMDQ5OTlMMTEuNSAzLjA0OTk5WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkM1ogPSBbXCJjb2xvclwiXTtcbnZhciBTa2V0Y2hMb2dvSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzWik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNTM3MzEgMC44MjY4NzNDNy41MTI1IDAuODI0MzkyIDcuNDg3NSAwLjgyNDM5MiA3LjQ2MjY5IDAuODI2ODczTDMuOTYyNjkgMS4xNzY4N0MzLjg1NjcyIDEuMTg3NDcgMy43NjAyNSAxLjI0MjYyIDMuNjk3MzYgMS4zMjg1N0wwLjY5OTc3MSA1LjQyNTI4QzAuNjU0MDQ2IDUuNDg2MjcgMC42MjY0NyA1LjU2MTY1IDAuNjI1MDU3IDUuNjQzNEMwLjYyNTAxOSA1LjY0NTYgMC42MjUgNS42NDc4MSAwLjYyNSA1LjY1MDAxQzAuNjI1IDUuNjUwNTIgMC42MjUwMDEgNS42NTEwMyAwLjYyNTAwMyA1LjY1MTUzQzAuNjI1MzYzIDUuNzQyMzcgMC42NTgwMjEgNS44MjU1OSAwLjcxMjA4NyA1Ljg5MDNMNy4yMTA0MiAxMy43ODgzQzcuMjgxNjUgMTMuODc0OSA3LjM4Nzg5IDEzLjkyNSA3LjUgMTMuOTI1QzcuNjEyMTEgMTMuOTI1IDcuNzE4MzUgMTMuODc0OSA3Ljc4OTU4IDEzLjc4ODNMMTQuMjg3OSA1Ljg5MDMxQzE0LjM0MiA1LjgyNTYgMTQuMzc0NiA1Ljc0MjM3IDE0LjM3NSA1LjY1MTUzQzE0LjM3NSA1LjY1MTAzIDE0LjM3NSA1LjY1MDUyIDE0LjM3NSA1LjY1MDAxQzE0LjM3NSA1LjY0ODQ5IDE0LjM3NSA1LjY0Njk3IDE0LjM3NSA1LjY0NTQ1QzE0LjM3NDkgNS42Mzk2MyAxNC4zNzQ3IDUuNjMzODIgMTQuMzc0NCA1LjYyODAxQzE0LjM3IDUuNTUyMTkgMTQuMzQzMSA1LjQ4MjQyIDE0LjMwMDIgNS40MjUyN0wxMS4zMDI2IDEuMzI4NTdDMTEuMjM5NyAxLjI0MjYyIDExLjE0MzMgMS4xODc0NyAxMS4wMzczIDEuMTc2ODdMNy41MzczMSAwLjgyNjg3M1pNMTAuOTI1IDUuMjc1MDFWNS4yNTIzNkwxMC45MjIzIDUuMjc1MDFIMTAuOTI1Wk0xMC45MzQyIDUuMTc0OThIMTMuMTg3N0wxMS4yNDk1IDIuNTI2MUwxMC45MzQyIDUuMTc0OThaTTEwLjU3MDcgMS44ODM5NUw4LjA0NDMyIDEuNjMxMzFMMTAuMTc0NyA1LjIxMDM0TDEwLjU3MDcgMS44ODM5NVpNNi45NTU2OCAxLjYzMTMxTDQuNDI5MzEgMS44ODM5NUw0LjgyNTMxIDUuMjEwMzRMNi45NTU2OCAxLjYzMTMxWk0zLjc1MDQ2IDIuNTI2MUwxLjgxMjI2IDUuMTc0OThINC4wNjU4TDMuNzUwNDYgMi41MjYxWk0xLjc5NDE2IDYuMDI1MDFMNi43NTg2MSAxMi4wNTg3TDQuMjIzNzEgNi4wNjY5QzQuMjE3ODcgNi4wNTMxIDQuMjEzMTQgNi4wMzkxIDQuMjA5NDkgNi4wMjUwMUgxLjc5NDE2Wk01LjE1MDU1IDYuMDI1MDFMNy40OTk5OSAxMi4xMDg1TDkuODQ5NDMgNi4wMjUwMUg5Ljc4NjgxSDUuMjEzMTlINS4xNTA1NVpNMTAuNzkwNSA2LjAyNTAxQzEwLjc4NjkgNi4wMzkxIDEwLjc4MjEgNi4wNTMxIDEwLjc3NjMgNi4wNjY5TDguMjQxMzkgMTIuMDU4N0wxMy4yMDU4IDYuMDI1MDFIMTAuNzkwNVpNNy41IDIuMTgzMTdMOS4zNDAzOCA1LjI3NTAxSDUuNjU5NjJMNy41IDIuMTgzMTdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQzXyA9IFtcImNvbG9yXCJdO1xudmFyIFNsYXNoSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQzXyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTQuMTA4NzYgMTRMOS40NjU4MiAxSDEwLjgxNzhMNS40NjA3NCAxNEg0LjEwODc2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkMyQgPSBbXCJjb2xvclwiXTtcbnZhciBTbGlkZXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDMkKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTAuMzAwNCA3LjQ5OTkxQzEwLjMwMDQgOC40OTQzIDkuNDk0MjYgOS4zMDA0MSA4LjQ5OTg4IDkuMzAwNDFDNy41MDU0OSA5LjMwMDQxIDYuNjk5MzggOC40OTQzIDYuNjk5MzggNy40OTk5MUM2LjY5OTM4IDYuNTA1NTMgNy41MDU0OSA1LjY5OTQyIDguNDk5ODggNS42OTk0MkM5LjQ5NDI2IDUuNjk5NDIgMTAuMzAwNCA2LjUwNTUzIDEwLjMwMDQgNy40OTk5MVpNMTEuMjA1IDhDMTAuOTY5OSA5LjI4MDI5IDkuODQ4MTYgMTAuMjUwNCA4LjQ5OTg4IDEwLjI1MDRDNy4xNTE2IDEwLjI1MDQgNi4wMjk5IDkuMjgwMjkgNS43OTQ3MyA4SDAuNUMwLjIyMzg1OCA4IDAgNy43NzYxNCAwIDcuNUMwIDcuMjIzODYgMC4yMjM4NTggNyAwLjUgN0g1Ljc5NDdDNi4wMjk4IDUuNzE5NjIgNy4xNTE1NCA0Ljc0OTQyIDguNDk5ODggNC43NDk0MkM5Ljg0ODIyIDQuNzQ5NDIgMTAuOTcgNS43MTk2MiAxMS4yMDUxIDdIMTQuNUMxNC43NzYxIDcgMTUgNy4yMjM4NiAxNSA3LjVDMTUgNy43NzYxNCAxNC43NzYxIDggMTQuNSA4SDExLjIwNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDQwID0gW1wiY29sb3JcIl07XG52YXIgU3BhY2VCZXR3ZWVuSG9yaXpvbnRhbGx5SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0MCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTE0LjQ5OTkgMC45OTk5OTRDMTQuMjIzNyAwLjk5OTk5NCAxMy45OTk5IDEuMjIzODUgMTMuOTk5OSAxLjQ5OTk5TDEzLjk5OTkgNS45OTk5NUw5Ljk5OTkyIDUuOTk5OTVDOS40NDc2NCA1Ljk5OTk1IDguOTk5OTMgNi40NDc2NiA4Ljk5OTkzIDYuOTk5OTRMOC45OTk5MyA3Ljk5OTk0QzguOTk5OTMgOC41NTIyMiA5LjQ0NzY0IDguOTk5OTMgOS45OTk5MiA4Ljk5OTkzTDEzLjk5OTkgOC45OTk5M0wxMy45OTk5IDEzLjQ5OTlDMTMuOTk5OSAxMy43NzYgMTQuMjIzNyAxMy45OTk5IDE0LjQ5OTkgMTMuOTk5OUMxNC43NzYgMTMuOTk5OSAxNC45OTk5IDEzLjc3NiAxNC45OTk5IDEzLjQ5OTlMMTQuOTk5OSAxLjQ5OTk5QzE0Ljk5OTkgMS4yMjM4NSAxNC43NzYgMC45OTk5OTQgMTQuNDk5OSAwLjk5OTk5NFpNNC45OTk5NiA1Ljk5OTk1TDAuOTk5OTkyIDUuOTk5OTVMMC45OTk5OTIgMS40OTk5OUMwLjk5OTk5MiAxLjIyMzg1IDAuNzc2MTM2IDAuOTk5OTk0IDAuNDk5OTk2IDAuOTk5OTk0QzAuMjIzODU2IDAuOTk5OTk0IC05Ljc4NTJlLTA5IDEuMjIzODUgLTIuMTg1NTdlLTA4IDEuNDk5OTlMNC4wNzI3OWUtMDcgMTMuNDk5OUMzLjk1MjA4ZS0wNyAxMy43NzYgMC4yMjM4NTUgMTMuOTk5OSAwLjQ5OTk5NiAxMy45OTk5QzAuNzc2MTM2IDEzLjk5OTkgMC45OTk5OTIgMTMuNzc2IDAuOTk5OTkyIDEzLjQ5OTlMMC45OTk5OTIgOC45OTk5M0w0Ljk5OTk2IDguOTk5OTNDNS41NTIyNCA4Ljk5OTkzIDUuOTk5OTUgOC41NTIyMiA1Ljk5OTk1IDcuOTk5OTNMNS45OTk5NSA2Ljk5OTk0QzUuOTk5OTUgNi40NDc2NiA1LjU1MjI0IDUuOTk5OTUgNC45OTk5NiA1Ljk5OTk1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNDEgPSBbXCJjb2xvclwiXTtcbnZhciBTcGFjZUJldHdlZW5WZXJ0aWNhbGx5SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0MSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTAuOTk5ODc4IDAuNUMwLjk5OTg3OCAwLjIyMzg1OCAxLjIyMzc0IDAgMS40OTk4OCAwSDEzLjQ5OTlDMTMuNzc2IDAgMTMuOTk5OSAwLjIyMzg1OCAxMy45OTk5IDAuNUMxMy45OTk5IDAuNzc2MTQyIDEzLjc3NiAxIDEzLjQ5OTkgMUw5IDFWNUM5IDUuNTUyMjggOC41NTIyOCA2IDggNkg3QzYuNDQ3NzIgNiA2IDUuNTUyMjggNiA1VjFIMS40OTk4OEMxLjIyMzc0IDEgMC45OTk4NzggMC43NzYxNDIgMC45OTk4NzggMC41Wk03IDlDNi40NDc3MiA5IDYgOS40NDc3MSA2IDEwVjE0SDEuNDk5ODhDMS4yMjM3NCAxNCAwLjk5OTg3OCAxNC4yMjM5IDAuOTk5ODc4IDE0LjVDMC45OTk4NzggMTQuNzc2MSAxLjIyMzc0IDE1IDEuNDk5ODggMTVIMTMuNDk5OUMxMy43NzYgMTUgMTMuOTk5OSAxNC43NzYxIDEzLjk5OTkgMTQuNUMxMy45OTk5IDE0LjIyMzkgMTMuNzc2IDE0IDEzLjQ5OTkgMTRIOVYxMEM5IDkuNDQ3NzIgOC41NTIyOCA5IDggOUg3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNDIgPSBbXCJjb2xvclwiXTtcbnZhciBTcGFjZUV2ZW5seUhvcml6b250YWxseUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNDIpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xNC40OTk5IDAuOTk5OTkyQzE0LjIyMzcgMC45OTk5OTIgMTMuOTk5OSAxLjIyMzg1IDEzLjk5OTkgMS40OTk5OUwxMy45OTk5IDEzLjQ5OTlDMTMuOTk5OSAxMy43NzYgMTQuMjIzNyAxMy45OTk5IDE0LjQ5OTkgMTMuOTk5OUMxNC43NzYgMTMuOTk5OSAxNC45OTk5IDEzLjc3NiAxNC45OTk5IDEzLjQ5OTlMMTQuOTk5OSAxLjQ5OTk5QzE0Ljk5OTkgMS4yMjM4NSAxNC43NzYgMC45OTk5OTIgMTQuNDk5OSAwLjk5OTk5MlpNMC40OTk5OTYgMC45OTk5OTJDMC4yMjM4NTYgMC45OTk5OTIgLTkuNzg1MDllLTA5IDEuMjIzODUgLTIuMTg1NTZlLTA4IDEuNDk5OTlMNC4wNzI3OWUtMDcgMTMuNDk5OUMzLjk1MjA4ZS0wNyAxMy43NzYgMC4yMjM4NTUgMTMuOTk5OSAwLjQ5OTk5NiAxMy45OTk5QzAuNzc2MTM2IDEzLjk5OTkgMC45OTk5OTIgMTMuNzc2IDAuOTk5OTkyIDEzLjQ5OTlMMC45OTk5OTIgMS40OTk5OUMwLjk5OTk5MiAxLjIyMzg1IDAuNzc2MTM2IDAuOTk5OTkyIDAuNDk5OTk2IDAuOTk5OTkyWk0xLjk5OTk4IDYuOTk5OTRDMS45OTk5OCA2LjQ0NzY2IDIuNDQ3NjkgNS45OTk5NSAyLjk5OTk4IDUuOTk5OTVMNS45OTk5NSA1Ljk5OTk1QzYuNTUyMjMgNS45OTk5NSA2Ljk5OTk0IDYuNDQ3NjYgNi45OTk5NCA2Ljk5OTk0TDYuOTk5OTQgNy45OTk5M0M2Ljk5OTk0IDguNTUyMjEgNi41NTIyMyA4Ljk5OTkyIDUuOTk5OTUgOC45OTk5MkwyLjk5OTk4IDguOTk5OTJDMi40NDc3IDguOTk5OTIgMS45OTk5OCA4LjU1MjIxIDEuOTk5OTggNy45OTk5M0wxLjk5OTk4IDYuOTk5OTRaTTguOTk5OTMgNS45OTk5NUM4LjQ0NzY1IDUuOTk5OTUgNy45OTk5MyA2LjQ0NzY2IDcuOTk5OTMgNi45OTk5NEw3Ljk5OTkzIDcuOTk5OTNDNy45OTk5MyA4LjU1MjIxIDguNDQ3NjUgOC45OTk5MiA4Ljk5OTkzIDguOTk5OTJMMTEuOTk5OSA4Ljk5OTkyQzEyLjU1MjIgOC45OTk5MiAxMi45OTk5IDguNTUyMjEgMTIuOTk5OSA3Ljk5OTkzTDEyLjk5OTkgNi45OTk5NEMxMi45OTk5IDYuNDQ3NjYgMTIuNTUyMiA1Ljk5OTk1IDExLjk5OTkgNS45OTk5NUw4Ljk5OTkzIDUuOTk5OTVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0MyA9IFtcImNvbG9yXCJdO1xudmFyIFNwYWNlRXZlbmx5VmVydGljYWxseUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNDMpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0wLjk5OTg3OCAwLjVDMC45OTk4NzggMC4yMjM4NTggMS4yMjM3NCAwIDEuNDk5ODggMEgxMy40OTk5QzEzLjc3NiAwIDEzLjk5OTkgMC4yMjM4NTggMTMuOTk5OSAwLjVDMTMuOTk5OSAwLjc3NjE0MiAxMy43NzYgMSAxMy40OTk5IDFIMS40OTk4OEMxLjIyMzc0IDEgMC45OTk4NzggMC43NzYxNDIgMC45OTk4NzggMC41Wk03IDJDNi40NDc3MiAyIDYgMi40NDc3MiA2IDNWNkM2IDYuNTUyMjggNi40NDc3MiA3IDcgN0g4QzguNTUyMjggNyA5IDYuNTUyMjggOSA2VjNDOSAyLjQ0NzcyIDguNTUyMjggMiA4IDJIN1pNNyA4QzYuNDQ3NzIgOCA2IDguNDQ3NzEgNiA5VjEyQzYgMTIuNTUyMyA2LjQ0NzcyIDEzIDcgMTNIOEM4LjU1MjI4IDEzIDkgMTIuNTUyMyA5IDEyVjlDOSA4LjQ0NzcyIDguNTUyMjggOCA4IDhIN1pNMS40OTk4OCAxNEMxLjIyMzc0IDE0IDAuOTk5ODc4IDE0LjIyMzkgMC45OTk4NzggMTQuNUMwLjk5OTg3OCAxNC43NzYxIDEuMjIzNzQgMTUgMS40OTk4OCAxNUgxMy40OTk5QzEzLjc3NiAxNSAxMy45OTk5IDE0Ljc3NjEgMTMuOTk5OSAxNC41QzEzLjk5OTkgMTQuMjIzOSAxMy43NzYgMTQgMTMuNDk5OSAxNEgxLjQ5OTg4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNDQgPSBbXCJjb2xvclwiXTtcbnZhciBTcGVha2VyTG91ZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNDQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjQ2OTY4IDEuMDUwODVDNy42NDEyMiAxLjEzNDc1IDcuNzUgMS4zMDkwNCA3Ljc1IDEuNVYxMy41QzcuNzUgMTMuNjkxIDcuNjQxMjIgMTMuODY1MyA3LjQ2OTY4IDEzLjk0OTJDNy4yOTgxMyAxNC4wMzMxIDcuMDkzNzcgMTQuMDExOSA2Ljk0MzAzIDEzLjg5NDdMMy4yMjEzIDExSDEuNUMwLjY3MTU3MSAxMSAwIDEwLjMyODQgMCA5LjVWNS41QzAgNC42NzE1OCAwLjY3MTU3MyA0IDEuNSA0SDMuMjIxM0w2Ljk0MzAzIDEuMTA1MzNDNy4wOTM3NyAwLjk4ODA4NSA3LjI5ODEzIDAuOTY2OTQ1IDcuNDY5NjggMS4wNTA4NVpNNi43NSAyLjUyMjMyTDMuNjk5ODMgNC44OTQ2OEMzLjYxMjA2IDQuOTYyOTQgMy41MDQwNSA1IDMuMzkyODYgNUgxLjVDMS4yMjM4NiA1IDEgNS4yMjM4NiAxIDUuNVY5LjVDMSA5Ljc3NjE1IDEuMjIzODYgMTAgMS41IDEwSDMuMzkyODZDMy41MDQwNSAxMCAzLjYxMjA2IDEwLjAzNzEgMy42OTk4MyAxMC4xMDUzTDYuNzUgMTIuNDc3N1YyLjUyMjMyWk0xMC4yNzg0IDMuODQ4MDRDMTAuNDYyMyAzLjcyNTY3IDEwLjcxMDYgMy43NzU1NyAxMC44MzMgMy45NTk0OUMxMi4yNTU4IDYuMDk3OTggMTIuMjU1OCA4LjkwMTk5IDEwLjgzMyAxMS4wNDA1QzEwLjcxMDYgMTEuMjI0NCAxMC40NjIzIDExLjI3NDMgMTAuMjc4NCAxMS4xNTE5QzEwLjA5NDQgMTEuMDI5NiAxMC4wNDQ1IDEwLjc4MTMgMTAuMTY2OSAxMC41OTczQzExLjQxMTEgOC43MjcyOCAxMS40MTExIDYuMjcyNjkgMTAuMTY2OSA0LjQwMjY0QzEwLjA0NDUgNC4yMTg3MSAxMC4wOTQ0IDMuOTcwNDEgMTAuMjc4NCAzLjg0ODA0Wk0xMi42Nzg1IDEuNDMwNDRDMTIuNTM1NiAxLjI2MTkgMTIuMjgzMiAxLjI0MTA0IDEyLjExNDcgMS4zODM4NkMxMS45NDYyIDEuNTI2NjcgMTEuOTI1MyAxLjc3OTA4IDEyLjA2ODEgMS45NDc2MkMxNC43NzczIDUuMTQ0ODggMTQuNzc3MyA5Ljg1NTEzIDEyLjA2ODEgMTMuMDUyNEMxMS45MjUzIDEzLjIyMDkgMTEuOTQ2MiAxMy40NzMzIDEyLjExNDcgMTMuNjE2MUMxMi4yODMyIDEzLjc1OSAxMi41MzU2IDEzLjczODEgMTIuNjc4NSAxMy41Njk2QzE1LjY0MDYgMTAuMDczOSAxNS42NDA2IDQuOTI2MTIgMTIuNjc4NSAxLjQzMDQ0WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNDUgPSBbXCJjb2xvclwiXTtcbnZhciBTcGVha2VyTW9kZXJhdGVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDQ1KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOCAxLjVDOCAxLjMxMDYyIDcuODkzIDEuMTM3NDkgNy43MjM2MSAxLjA1Mjc5QzcuNTU0MjEgMC45NjgwOTMgNy4zNTE1MSAwLjk4NjM3MSA3LjIgMS4xTDMuMzMzMzMgNEgxLjVDMC42NzE1NzMgNCAwIDQuNjcxNTggMCA1LjVWOS41QzAgMTAuMzI4NCAwLjY3MTU3MyAxMSAxLjUgMTFIMy4zMzMzM0w3LjIgMTMuOUM3LjM1MTUxIDE0LjAxMzYgNy41NTQyMSAxNC4wMzE5IDcuNzIzNjEgMTMuOTQ3MkM3Ljg5MyAxMy44NjI1IDggMTMuNjg5NCA4IDEzLjVWMS41Wk0zLjggNC45TDcgMi41VjEyLjVMMy44IDEwLjFDMy43MTM0NSAxMC4wMzUxIDMuNjA4MTkgMTAgMy41IDEwSDEuNUMxLjIyMzg2IDEwIDEgOS43NzYxNCAxIDkuNVY1LjVDMSA1LjIyMzg2IDEuMjIzODYgNSAxLjUgNUgzLjVDMy42MDgxOSA1IDMuNzEzNDUgNC45NjQ5MSAzLjggNC45Wk0xMC44MzMgMy45NTk0OUMxMC43MTA2IDMuNzc1NTcgMTAuNDYyMyAzLjcyNTY3IDEwLjI3ODQgMy44NDgwNEMxMC4wOTQ0IDMuOTcwNDEgMTAuMDQ0NSA0LjIxODcxIDEwLjE2NjkgNC40MDI2NEMxMS40MTExIDYuMjcyNjggMTEuNDExMSA4LjcyNzI4IDEwLjE2NjkgMTAuNTk3M0MxMC4wNDQ1IDEwLjc4MTMgMTAuMDk0NCAxMS4wMjk2IDEwLjI3ODQgMTEuMTUxOUMxMC40NjIzIDExLjI3NDMgMTAuNzEwNiAxMS4yMjQ0IDEwLjgzMyAxMS4wNDA1QzEyLjI1NTggOC45MDE5OSAxMi4yNTU4IDYuMDk3OTggMTAuODMzIDMuOTU5NDlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0NiA9IFtcImNvbG9yXCJdO1xudmFyIFNwZWFrZXJPZmZJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDQ2KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy43MjM2MSAxLjA1Mjc5QzcuODkzIDEuMTM3NDkgOCAxLjMxMDYyIDggMS41VjEzLjVDOCAxMy42ODk0IDcuODkzIDEzLjg2MjUgNy43MjM2MSAxMy45NDcyQzcuNTU0MjEgMTQuMDMxOSA3LjM1MTUxIDE0LjAxMzYgNy4yIDEzLjlMMy4zMzMzMyAxMUgxLjVDMC42NzE1NzMgMTEgMCAxMC4zMjg0IDAgOS41VjUuNUMwIDQuNjcxNTggMC42NzE1NzMgNCAxLjUgNEgzLjMzMzMzTDcuMiAxLjFDNy4zNTE1MSAwLjk4NjM3MSA3LjU1NDIxIDAuOTY4MDkzIDcuNzIzNjEgMS4wNTI3OVpNNyAyLjVMMy44IDQuOUMzLjcxMzQ1IDQuOTY0OTEgMy42MDgxOSA1IDMuNSA1SDEuNUMxLjIyMzg2IDUgMSA1LjIyMzg2IDEgNS41VjkuNUMxIDkuNzc2MTQgMS4yMjM4NiAxMCAxLjUgMTBIMy41QzMuNjA4MTkgMTAgMy43MTM0NSAxMC4wMzUxIDMuOCAxMC4xTDcgMTIuNVYyLjVaTTE0Ljg1MzYgNS4xNDY0NUMxNS4wNDg4IDUuMzQxNzEgMTUuMDQ4OCA1LjY1ODI5IDE0Ljg1MzYgNS44NTM1NUwxMy4yMDcxIDcuNUwxNC44NTM2IDkuMTQ2NDVDMTUuMDQ4OCA5LjM0MTcxIDE1LjA0ODggOS42NTgyOSAxNC44NTM2IDkuODUzNTVDMTQuNjU4MyAxMC4wNDg4IDE0LjM0MTcgMTAuMDQ4OCAxNC4xNDY0IDkuODUzNTVMMTIuNSA4LjIwNzExTDEwLjg1MzYgOS44NTM1NUMxMC42NTgzIDEwLjA0ODggMTAuMzQxNyAxMC4wNDg4IDEwLjE0NjQgOS44NTM1NUM5Ljk1MTE4IDkuNjU4MjkgOS45NTExOCA5LjM0MTcxIDEwLjE0NjQgOS4xNDY0NUwxMS43OTI5IDcuNUwxMC4xNDY0IDUuODUzNTVDOS45NTExOCA1LjY1ODI5IDkuOTUxMTggNS4zNDE3MSAxMC4xNDY0IDUuMTQ2NDVDMTAuMzQxNyA0Ljk1MTE4IDEwLjY1ODMgNC45NTExOCAxMC44NTM2IDUuMTQ2NDVMMTIuNSA2Ljc5Mjg5TDE0LjE0NjQgNS4xNDY0NUMxNC4zNDE3IDQuOTUxMTggMTQuNjU4MyA0Ljk1MTE4IDE0Ljg1MzYgNS4xNDY0NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDQ3ID0gW1wiY29sb3JcIl07XG52YXIgU3BlYWtlclF1aWV0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Nyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTggMS41QzggMS4zMTA2MiA3Ljg5MyAxLjEzNzQ5IDcuNzIzNjEgMS4wNTI3OUM3LjU1NDIxIDAuOTY4MDkzIDcuMzUxNTEgMC45ODYzNzEgNy4yIDEuMUwzLjMzMzMzIDRIMS41QzAuNjcxNTczIDQgMCA0LjY3MTU4IDAgNS41VjkuNUMwIDEwLjMyODQgMC42NzE1NzMgMTEgMS41IDExSDMuMzMzMzNMNy4yIDEzLjlDNy4zNTE1MSAxNC4wMTM2IDcuNTU0MjEgMTQuMDMxOSA3LjcyMzYxIDEzLjk0NzJDNy44OTMgMTMuODYyNSA4IDEzLjY4OTQgOCAxMy41VjEuNVpNMy44IDQuOUw3IDIuNVYxMi41TDMuOCAxMC4xQzMuNzEzNDUgMTAuMDM1MSAzLjYwODE5IDEwIDMuNSAxMEgxLjVDMS4yMjM4NiAxMCAxIDkuNzc2MTQgMSA5LjVWNS41QzEgNS4yMjM4NiAxLjIyMzg2IDUgMS41IDVIMy41QzMuNjA4MTkgNSAzLjcxMzQ1IDQuOTY0OTEgMy44IDQuOVpNMTAuMDgzIDUuMDU1NzdDOS45NjA2NiA0Ljg3MTg1IDkuNzEyMzUgNC44MjE5NSA5LjUyODQzIDQuOTQ0MzJDOS4zNDQ1IDUuMDY2NjkgOS4yOTQ2IDUuMzE0OTkgOS40MTY5NyA1LjQ5ODkyQzEwLjIyMDcgNi43MDY5MyAxMC4yMjA3IDguMjkzMDMgOS40MTY5NyA5LjUwMTA0QzkuMjk0NiA5LjY4NDk2IDkuMzQ0NSA5LjkzMzI2IDkuNTI4NDMgMTAuMDU1NkM5LjcxMjM1IDEwLjE3OCA5Ljk2MDY2IDEwLjEyODEgMTAuMDgzIDkuOTQ0MThDMTEuMDY1MyA4LjQ2NzczIDExLjA2NTMgNi41MzIyMiAxMC4wODMgNS4wNTU3N1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDQ4ID0gW1wiY29sb3JcIl07XG52YXIgU3F1YXJlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0OCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEgMUgxLjVIMTMuNUgxNFYxLjVWMTMuNVYxNEgxMy41SDEuNUgxVjEzLjVWMS41VjFaTTIgMlYxM0gxM1YySDJaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0OSA9IFtcImNvbG9yXCJdO1xudmFyIFN0YWNrSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0OSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNzU0MzIgMS44MTk1NEM3LjU5NzQyIDEuNzI2ODIgNy40MDI1IDEuNzI2ODIgNy4yNDU1OSAxLjgxOTU0TDEuNzQ1NTkgNS4wNjk1NEMxLjU5MzM2IDUuMTU5NDkgMS40OTk5NiA1LjMyMzE3IDEuNDk5OTYgNS41QzEuNDk5OTYgNS42NzY4MyAxLjU5MzM2IDUuODQwNTEgMS43NDU1OSA1LjkzMDQ2TDcuMjQ1NTkgOS4xODA0NkM3LjQwMjUgOS4yNzMxOCA3LjU5NzQyIDkuMjczMTggNy43NTQzMiA5LjE4MDQ2TDEzLjI1NDMgNS45MzA0NkMxMy40MDY2IDUuODQwNTEgMTMuNSA1LjY3NjgzIDEzLjUgNS41QzEzLjUgNS4zMjMxNyAxMy40MDY2IDUuMTU5NDkgMTMuMjU0MyA1LjA2OTU0TDcuNzU0MzIgMS44MTk1NFpNNy40OTk5NiA4LjE2OTIzTDIuOTgyOCA1LjVMNy40OTk5NiAyLjgzMDc3TDEyLjAxNzEgNS41TDcuNDk5OTYgOC4xNjkyM1pNMi4yNTQzMiA4LjMxOTU0QzIuMDE2NTggOC4xNzkwNiAxLjcwOTk4IDguMjU3OSAxLjU2OTQ5IDguNDk1NjRDMS40MjkwMSA4LjczMzM3IDEuNTA3ODUgOS4wMzk5OCAxLjc0NTU5IDkuMTgwNDZMNy4yNDU1OSAxMi40MzA1QzcuNDAyNSAxMi41MjMyIDcuNTk3NDIgMTIuNTIzMiA3Ljc1NDMyIDEyLjQzMDVMMTMuMjU0MyA5LjE4MDQ2QzEzLjQ5MjEgOS4wMzk5OCAxMy41NzA5IDguNzMzMzcgMTMuNDMwNCA4LjQ5NTY0QzEzLjI4OTkgOC4yNTc5IDEyLjk4MzMgOC4xNzkwNiAxMi43NDU2IDguMzE5NTRMNy40OTk5NiAxMS40MTkyTDIuMjU0MzIgOC4zMTk1NFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRhID0gW1wiY29sb3JcIl07XG52YXIgU3Rhckljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNGEpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk02Ljk3OTQyIDEuMjUxNzFMNi45NTg1IDEuMzAxOTlMNS41ODY2MiA0LjYwMDM5QzUuNTQzNDIgNC43MDQyNiA1LjQ0NTczIDQuNzc1MjMgNS4zMzM2IDQuNzg0MjJMMS43NzI3IDUuMDY5N0wxLjcxODQxIDUuMDc0MDVMMS4zODY4NyA1LjEwMDYzTDEuMDg2MDggNS4xMjQ3NUMwLjgyMDA4NSA1LjE0NjA3IDAuNzEyMjI4IDUuNDc4MDIgMC45MTQ4ODkgNS42NTE2MkwxLjE0NDA2IDUuODQ3OTNMMS4zOTY2NiA2LjA2NDMxTDEuNDM4MDIgNi4wOTk3NEw0LjE1MTA1IDguNDIzNzRDNC4yMzY0OCA4LjQ5NjkyIDQuMjczOCA4LjYxMTc2IDQuMjQ3NjkgOC43MjExOEwzLjQxODgyIDEyLjE5NkwzLjQwNjE4IDEyLjI0OUwzLjMyOTAxIDEyLjU3MjVMMy4yNTg5OSAxMi44NjZDMy4xOTcwOCAxMy4xMjU2IDMuNDc5NDUgMTMuMzMwOCAzLjcwNzE4IDEzLjE5MTdMMy45NjQ3IDEzLjAzNDRMNC4yNDg1NCAxMi44NjFMNC4yOTUwMiAxMi44MzI2TDcuMzQzNjUgMTAuOTcwNUM3LjQzOTY1IDEwLjkxMTkgNy41NjA0IDEwLjkxMTkgNy42NTY0IDEwLjk3MDVMMTAuNzA1IDEyLjgzMjZMMTAuNzUxNSAxMi44NjFMMTEuMDM1NCAxMy4wMzQ0TDExLjI5MjkgMTMuMTkxN0MxMS41MjA2IDEzLjMzMDggMTEuODAzIDEzLjEyNTYgMTEuNzQxMSAxMi44NjZMMTEuNjcxIDEyLjU3MjVMMTEuNTkzOSAxMi4yNDlMMTEuNTgxMiAxMi4xOTZMMTAuNzUyNCA4LjcyMTE4QzEwLjcyNjMgOC42MTE3NiAxMC43NjM2IDguNDk2OTIgMTAuODQ5IDguNDIzNzRMMTMuNTYyIDYuMDk5NzRMMTMuNjAzNCA2LjA2NDMxTDEzLjg1NiA1Ljg0NzkzTDE0LjA4NTIgNS42NTE2MkMxNC4yODc4IDUuNDc4MDIgMTQuMTggNS4xNDYwNyAxMy45MTQgNS4xMjQ3NUwxMy42MTMyIDUuMTAwNjNMMTMuMjgxNiA1LjA3NDA1TDEzLjIyNzQgNS4wNjk3TDkuNjY2NDUgNC43ODQyMkM5LjU1NDMyIDQuNzc1MjMgOS40NTY2MyA0LjcwNDI2IDkuNDEzNDMgNC42MDAzOUw4LjA0MTU1IDEuMzAxOTlMOC4wMjA2NCAxLjI1MTcxTDcuODkyOTEgMC45NDQ2MDlMNy43NzcwMiAwLjY2NTk5MkM3LjY3NDU0IDAuNDE5NjA0IDcuMzI1NTEgMC40MTk2MDQgNy4yMjMwMyAwLjY2NTk5Mkw3LjEwNzE1IDAuOTQ0NjA5TDYuOTc5NDIgMS4yNTE3MVpNNy41MDAwMyAyLjYwMzk3TDYuNTA5OTQgNC45ODQ0MkM2LjMyMjczIDUuNDM0NTMgNS44OTk0NCA1Ljc0MjA3IDUuNDEzNTEgNS43ODEwM0wyLjg0MzYxIDUuOTg3MDVMNC44MDE2IDcuNjY0MjhDNS4xNzE4MyA3Ljk4MTQyIDUuMzMzNTEgOC40NzkwMyA1LjIyMDQgOC45NTMyMUw0LjYyMjIxIDExLjQ2MUw2LjgyMjQgMTAuMTE3MUM3LjIzODQyIDkuODYzMDIgNy43NjE2NCA5Ljg2MzAyIDguMTc3NjYgMTAuMTE3MUwxMC4zNzc4IDExLjQ2MUw5Ljc3OTY1IDguOTUzMjFDOS42NjY1NCA4LjQ3OTAzIDkuODI4MjIgNy45ODE0MiAxMC4xOTg0IDcuNjY0MjhMMTIuMTU2NCA1Ljk4NzA1TDkuNTg2NTQgNS43ODEwM0M5LjEwMDYxIDUuNzQyMDcgOC42NzczMiA1LjQzNDUzIDguNDkwMTEgNC45ODQ0Mkw3LjUwMDAzIDIuNjAzOTdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0YiA9IFtcImNvbG9yXCJdO1xudmFyIFN0YXJGaWxsZWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRiKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy4yMjMwMyAwLjY2NTk5MkM3LjMyNTUxIDAuNDE5NjA0IDcuNjc0NTQgMC40MTk2MDQgNy43NzcwMiAwLjY2NTk5Mkw5LjQxMzQzIDQuNjAwMzlDOS40NTY2MyA0LjcwNDI2IDkuNTU0MzIgNC43NzUyMyA5LjY2NjQ1IDQuNzg0MjJMMTMuOTE0IDUuMTI0NzVDMTQuMTggNS4xNDYwNyAxNC4yODc4IDUuNDc4MDIgMTQuMDg1MiA1LjY1MTYyTDEwLjg0OSA4LjQyMzc0QzEwLjc2MzYgOC40OTY5MiAxMC43MjYzIDguNjExNzYgMTAuNzUyNCA4LjcyMTE4TDExLjc0MTEgMTIuODY2QzExLjgwMyAxMy4xMjU2IDExLjUyMDYgMTMuMzMwOCAxMS4yOTI5IDEzLjE5MTdMNy42NTY0IDEwLjk3MDVDNy41NjA0IDEwLjkxMTkgNy40Mzk2NSAxMC45MTE5IDcuMzQzNjUgMTAuOTcwNUwzLjcwNzE4IDEzLjE5MTdDMy40Nzk0NSAxMy4zMzA4IDMuMTk3MDggMTMuMTI1NiAzLjI1ODk5IDEyLjg2Nkw0LjI0NzY5IDguNzIxMThDNC4yNzM4IDguNjExNzYgNC4yMzY0OCA4LjQ5NjkyIDQuMTUxMDUgOC40MjM3NEwwLjkxNDg4OSA1LjY1MTYyQzAuNzEyMjI4IDUuNDc4MDIgMC44MjAwODYgNS4xNDYwNyAxLjA4NjA4IDUuMTI0NzVMNS4zMzM2IDQuNzg0MjJDNS40NDU3MyA0Ljc3NTIzIDUuNTQzNDIgNC43MDQyNiA1LjU4NjYyIDQuNjAwMzlMNy4yMjMwMyAwLjY2NTk5MlpcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0YyA9IFtcImNvbG9yXCJdO1xudmFyIFN0aXRjaGVzTG9nb0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNGMpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xLjg0OTk4IDcuNDk5OThDMS44NDk5OCA3LjIxMzIxIDEuODcxMzQgNi45MzE0MyAxLjkxMjU2IDYuNjU2MTVMOS41NjM3NCAyLjIzODc1QzkuODYzMTEgMi4zNTYyNyAxMC4xNSAyLjQ5ODYxIDEwLjQyMTkgMi42NjMyMkwzLjc3MDY1IDYuNTAzMzJDMy43MzY2OSA2LjUyMTgzIDMuNzA0ODIgNi41NDQ5IDMuNjc2MDIgNi41NzIzOEMzLjU5MTEgNi42NTMwOCAzLjU0MjQ1IDYuNzYyODYgMy41MzY4MiA2Ljg3NjU4QzMuNTMzNTkgNi45NDE4IDMuNTQ0NTEgNy4wMDgzMSAzLjU3MDg2IDcuMDcxMzdDMy41ODkyNyA3LjExNTcgMy42MTQ5IDcuMTU3NDIgMy42NDc0NCA3LjE5NDU4QzMuNjczMDYgNy4yMjM5NiAzLjcwMiA3LjI0OTQxIDMuNzMzMzcgNy4yNzA2OUw3LjMyNTMzIDkuODM4MTNMMy44NzIzMiAxMS44MzE3QzIuNjM2MDQgMTAuNzk1MyAxLjg0OTk4IDkuMjM5NDQgMS44NDk5OCA3LjQ5OTk4Wk04LjM2ODQzIDEwLjI3NTFDOC4zNzY4MiAxMC4yNzA2IDguMzg1MDkgMTAuMjY1OSA4LjM5MzIyIDEwLjI2MDhMOS44NDA5MSA5LjQyNDk5QzkuODQ3MDYgOS40MjE2MyA5Ljg1MzE0IDkuNDE4MTIgOS44NTkxNSA5LjQxNDQ2TDExLjMxMDEgOC41NzY3N0MxMS4zNjU1IDguNTQ2NDkgMTEuNDE1NCA4LjUwNCAxMS40NTU0IDguNDQ5OTVDMTEuNjAzNCA4LjI1MDMxIDExLjU2MTYgNy45Njg0OCAxMS4zNjIgNy44MjA0Nkw3LjgyNzc5IDUuMjAwMTdMMTEuMjE2MSAzLjI0MzkzQzEyLjQwMTMgNC4yNzk2MyAxMy4xNSA1LjgwMjM3IDEzLjE1IDcuNDk5OThDMTMuMTUgNy44MzU0NiAxMy4xMjA3IDguMTY0MTEgMTMuMDY0NyA4LjQ4MzUzTDUuNTY4NzUgMTIuODExM0M1LjI2MTM4IDEyLjY5OTUgNC45NjY0NiAxMi41NjE4IDQuNjg2NjIgMTIuNDAwOEw4LjM2ODQzIDEwLjI3NTFaTTguMTgxNDkgOS4zNDM4M0w0LjgxNjU5IDYuOTM4NjhMNS41MDkxOCA2LjUzODgxTDguODA2MDQgOC45ODMyNEw4LjE4MTQ5IDkuMzQzODNaTTYuMzU4NzUgNi4wNDgzMkw2Ljk3ODIyIDUuNjkwNjdMMTAuMjc1MSA4LjEzNTA2TDkuNjU1NiA4LjQ5Mjc1TDYuMzU4NzUgNi4wNDgzMlpNOC4zMzE4IDEuOTEwNzhMMi4yNDI2MyA1LjQyNjM2QzMuMDY5NDEgMy4zMzE4OCA1LjExMTY0IDEuODQ5OTggNy40OTk5OCAxLjg0OTk4QzcuNzgyNTggMS44NDk5OCA4LjA2MDMzIDEuODcwNzIgOC4zMzE4IDEuOTEwNzhaTTYuODQ2ODQgMTMuMTEyNkM3LjA2MTE0IDEzLjEzNzMgNy4yNzkwOCAxMy4xNSA3LjQ5OTk4IDEzLjE1QzkuODI0NiAxMy4xNSAxMS44MjEzIDExLjc0NjEgMTIuNjg4NiA5LjczOTlMNi44NDY4NCAxMy4xMTI2Wk03LjQ5OTk4IDAuODQ5OTc2QzMuODI3MjggMC44NDk5NzYgMC44NDk5NzYgMy44MjcyOCAwLjg0OTk3NiA3LjQ5OTk4QzAuODQ5OTc2IDExLjE3MjcgMy44MjcyOCAxNC4xNSA3LjQ5OTk4IDE0LjE1QzExLjE3MjcgMTQuMTUgMTQuMTUgMTEuMTcyNyAxNC4xNSA3LjQ5OTk4QzE0LjE1IDMuODI3MjggMTEuMTcyNyAwLjg0OTk3NiA3LjQ5OTk4IDAuODQ5OTc2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNGQgPSBbXCJjb2xvclwiXTtcbnZhciBTdG9wSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0ZCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIgM0MyIDIuNDQ3NzIgMi40NDc3MiAyIDMgMkgxMkMxMi41NTIzIDIgMTMgMi40NDc3MiAxMyAzVjEyQzEzIDEyLjU1MjMgMTIuNTUyMyAxMyAxMiAxM0gzQzIuNDQ3NzIgMTMgMiAxMi41NTIzIDIgMTJWM1pNMTIgM0gzVjEySDEyVjNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0ZSA9IFtcImNvbG9yXCJdO1xudmFyIFN0b3B3YXRjaEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNGUpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk01LjQ5OTk4IDAuNUM1LjQ5OTk4IDAuMjIzODU4IDUuNzIzODMgMCA1Ljk5OTk4IDBINy40OTk5OEg4Ljk5OTk4QzkuMjc2MTIgMCA5LjQ5OTk4IDAuMjIzODU4IDkuNDk5OTggMC41QzkuNDk5OTggMC43NzYxNDIgOS4yNzYxMiAxIDguOTk5OTggMUg3Ljk5OTk4VjIuMTE5MjJDOS4wOTgzMiAyLjIwNDA5IDEwLjExOSAyLjU2NjIyIDEwLjk5MiAzLjEzNTcyQzExLjAxMTYgMy4xMDg1MSAxMS4wMzM2IDMuMDgyNTIgMTEuMDU4IDMuMDU4MDZMMTEuODU4IDIuMjU4MDZDMTIuMTAyMSAyLjAxMzk4IDEyLjQ5NzggMi4wMTM5OCAxMi43NDE5IDIuMjU4MDZDMTIuOTg2IDIuNTAyMTQgMTIuOTg2IDIuODk3ODYgMTIuNzQxOSAzLjE0MTk0TDExLjk2NyAzLjkxNjgyQzEzLjE1OTUgNS4wNzkyNSAxMy45IDYuNzAzMTQgMTMuOSA4LjQ5OTk4QzEzLjkgMTIuMDM0NiAxMS4wMzQ2IDE0LjkgNy40OTk5OCAxNC45QzMuOTY1MzUgMTQuOSAxLjA5OTk4IDEyLjAzNDYgMS4wOTk5OCA4LjQ5OTk4QzEuMDk5OTggNS4xMzM2MiAzLjY5OTA0IDIuMzc0MyA2Ljk5OTk4IDIuMTE5MjJWMUg1Ljk5OTk4QzUuNzIzODMgMSA1LjQ5OTk4IDAuNzc2MTQyIDUuNDk5OTggMC41Wk0yLjA5OTk4IDguNDk5OThDMi4wOTk5OCA1LjUxNzY0IDQuNTE3NjQgMy4wOTk5OCA3LjQ5OTk4IDMuMDk5OThDMTAuNDgyMyAzLjA5OTk4IDEyLjkgNS41MTc2NCAxMi45IDguNDk5OThDMTIuOSAxMS40ODIzIDEwLjQ4MjMgMTMuOSA3LjQ5OTk4IDEzLjlDNC41MTc2NCAxMy45IDIuMDk5OTggMTEuNDgyMyAyLjA5OTk4IDguNDk5OThaTTcuOTk5OTggNC41QzcuOTk5OTggNC4yMjM4NiA3Ljc3NjEyIDQgNy40OTk5OCA0QzcuMjIzODMgNCA2Ljk5OTk4IDQuMjIzODYgNi45OTk5OCA0LjVWOS41QzYuOTk5OTggOS43NzYxNCA3LjIyMzgzIDEwIDcuNDk5OTggMTBDNy43NzYxMiAxMCA3Ljk5OTk4IDkuNzc2MTQgNy45OTk5OCA5LjVWNC41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNGYgPSBbXCJjb2xvclwiXTtcbnZhciBTdHJldGNoSG9yaXpvbnRhbGx5SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Zik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTE0LjQ5OTkgMC45OTk5OTJDMTQuMjIzNyAwLjk5OTk5MiAxMy45OTk5IDEuMjIzODUgMTMuOTk5OSAxLjQ5OTk5TDEzLjk5OTkgNS45OTk5NUwwLjk5OTk5MiA1Ljk5OTk1TDAuOTk5OTkyIDEuNDk5OTlDMC45OTk5OTIgMS4yMjM4NSAwLjc3NjEzNiAwLjk5OTk5MiAwLjQ5OTk5NiAwLjk5OTk5MkMwLjIyMzg1NiAwLjk5OTk5MiAtOS43ODUwOWUtMDkgMS4yMjM4NSAtMi4xODU1NmUtMDggMS40OTk5OUw0LjA3Mjc5ZS0wNyAxMy40OTk5QzMuOTUyMDhlLTA3IDEzLjc3NiAwLjIyMzg1NSAxMy45OTk5IDAuNDk5OTk2IDEzLjk5OTlDMC43NzYxMzYgMTMuOTk5OSAwLjk5OTk5MiAxMy43NzYgMC45OTk5OTIgMTMuNDk5OUwwLjk5OTk5MiA4Ljk5OTkyTDEzLjk5OTkgOC45OTk5MkwxMy45OTk5IDEzLjQ5OTlDMTMuOTk5OSAxMy43NzYgMTQuMjIzNyAxMy45OTk5IDE0LjQ5OTkgMTMuOTk5OUMxNC43NzYgMTMuOTk5OSAxNC45OTk5IDEzLjc3NiAxNC45OTk5IDEzLjQ5OTlMMTQuOTk5OSAxLjQ5OTk5QzE0Ljk5OTkgMS4yMjM4NSAxNC43NzYgMC45OTk5OTIgMTQuNDk5OSAwLjk5OTk5MlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRnID0gW1wiY29sb3JcIl07XG52YXIgU3RyZXRjaFZlcnRpY2FsbHlJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRnKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMC45OTk4NzggMC41QzAuOTk5ODc4IDAuMjIzODU4IDEuMjIzNzQgMCAxLjQ5OTg4IDBIMTMuNDk5OUMxMy43NzYgMCAxMy45OTk5IDAuMjIzODU4IDEzLjk5OTkgMC41QzEzLjk5OTkgMC43NzYxNDIgMTMuNzc2IDEgMTMuNDk5OSAxSDZIMS40OTk4OEMxLjIyMzc0IDEgMC45OTk4NzggMC43NzYxNDIgMC45OTk4NzggMC41Wk05IDE0VjFMNiAxVjE0SDEuNDk5ODhDMS4yMjM3NCAxNCAwLjk5OTg3OCAxNC4yMjM5IDAuOTk5ODc4IDE0LjVDMC45OTk4NzggMTQuNzc2MSAxLjIyMzc0IDE1IDEuNDk5ODggMTVIMTMuNDk5OUMxMy43NzYgMTUgMTMuOTk5OSAxNC43NzYxIDEzLjk5OTkgMTQuNUMxMy45OTk5IDE0LjIyMzkgMTMuNzc2IDE0IDEzLjQ5OTkgMTRIOVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRoID0gW1wiY29sb3JcIl07XG52YXIgU3RyaWtldGhyb3VnaEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNGgpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk01LjAwMDAzIDMuMjVDNS4wMDAwMyAyLjk3Mzg2IDQuNzc2MTcgMi43NSA0LjUwMDAzIDIuNzVDNC4yMjM4OSAyLjc1IDQuMDAwMDMgMi45NzM4NiA0LjAwMDAzIDMuMjVWNy4xMDAwM0gyLjQ5OTk4QzIuMjc5MDYgNy4xMDAwMyAyLjA5OTk4IDcuMjc5MTIgMi4wOTk5OCA3LjUwMDAzQzIuMDk5OTggNy43MjA5NCAyLjI3OTA2IDcuOTAwMDMgMi40OTk5OCA3LjkwMDAzSDQuMDAwMDNWOC41NUM0LjAwMDAzIDEwLjQ4MyA1LjU2NzAzIDEyLjA1IDcuNTAwMDMgMTIuMDVDOS40MzMwMyAxMi4wNSAxMSAxMC40ODMgMTEgOC41NVY3LjkwMDAzSDEyLjVDMTIuNzIwOSA3LjkwMDAzIDEyLjkgNy43MjA5NCAxMi45IDcuNTAwMDNDMTIuOSA3LjI3OTEyIDEyLjcyMDkgNy4xMDAwMyAxMi41IDcuMTAwMDNIMTFWMy4yNUMxMSAyLjk3Mzg2IDEwLjc3NjIgMi43NSAxMC41IDIuNzVDMTAuMjIzOSAyLjc1IDEwIDIuOTczODYgMTAgMy4yNVY3LjEwMDAzSDUuMDAwMDNWMy4yNVpNNS4wMDAwMyA3LjkwMDAzVjguNTVDNS4wMDAwMyA5LjkzMDcxIDYuMTE5MzIgMTEuMDUgNy41MDAwMyAxMS4wNUM4Ljg4MDc0IDExLjA1IDEwIDkuOTMwNzEgMTAgOC41NVY3LjkwMDAzSDUuMDAwMDNaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0aSA9IFtcImNvbG9yXCJdO1xudmFyIFN1bkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNGkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk03LjUgMEM3Ljc3NjE0IDAgOCAwLjIyMzg1OCA4IDAuNVYyLjVDOCAyLjc3NjE0IDcuNzc2MTQgMyA3LjUgM0M3LjIyMzg2IDMgNyAyLjc3NjE0IDcgMi41VjAuNUM3IDAuMjIzODU4IDcuMjIzODYgMCA3LjUgMFpNMi4xOTY3IDIuMTk2N0MyLjM5MTk2IDIuMDAxNDQgMi43MDg1NCAyLjAwMTQ0IDIuOTAzODEgMi4xOTY3TDQuMzE4MDIgMy42MTA5MUM0LjUxMzI4IDMuODA2MTcgNC41MTMyOCA0LjEyMjc2IDQuMzE4MDIgNC4zMTgwMkM0LjEyMjc2IDQuNTEzMjggMy44MDYxNyA0LjUxMzI4IDMuNjEwOTEgNC4zMTgwMkwyLjE5NjcgMi45MDM4MUMyLjAwMTQ0IDIuNzA4NTQgMi4wMDE0NCAyLjM5MTk2IDIuMTk2NyAyLjE5NjdaTTAuNSA3QzAuMjIzODU4IDcgMCA3LjIyMzg2IDAgNy41QzAgNy43NzYxNCAwLjIyMzg1OCA4IDAuNSA4SDIuNUMyLjc3NjE0IDggMyA3Ljc3NjE0IDMgNy41QzMgNy4yMjM4NiAyLjc3NjE0IDcgMi41IDdIMC41Wk0yLjE5NjcgMTIuODAzM0MyLjAwMTQ0IDEyLjYwOCAyLjAwMTQ0IDEyLjI5MTUgMi4xOTY3IDEyLjA5NjJMMy42MTA5MSAxMC42ODJDMy44MDYxNyAxMC40ODY3IDQuMTIyNzYgMTAuNDg2NyA0LjMxODAyIDEwLjY4MkM0LjUxMzI4IDEwLjg3NzIgNC41MTMyOCAxMS4xOTM4IDQuMzE4MDIgMTEuMzg5MUwyLjkwMzgxIDEyLjgwMzNDMi43MDg1NCAxMi45OTg2IDIuMzkxOTYgMTIuOTk4NiAyLjE5NjcgMTIuODAzM1pNMTIuNSA3QzEyLjIyMzkgNyAxMiA3LjIyMzg2IDEyIDcuNUMxMiA3Ljc3NjE0IDEyLjIyMzkgOCAxMi41IDhIMTQuNUMxNC43NzYxIDggMTUgNy43NzYxNCAxNSA3LjVDMTUgNy4yMjM4NiAxNC43NzYxIDcgMTQuNSA3SDEyLjVaTTEwLjY4MiA0LjMxODAyQzEwLjQ4NjcgNC4xMjI3NiAxMC40ODY3IDMuODA2MTcgMTAuNjgyIDMuNjEwOTFMMTIuMDk2MiAyLjE5NjdDMTIuMjkxNSAyLjAwMTQ0IDEyLjYwOCAyLjAwMTQ0IDEyLjgwMzMgMi4xOTY3QzEyLjk5ODYgMi4zOTE5NiAxMi45OTg2IDIuNzA4NTQgMTIuODAzMyAyLjkwMzgxTDExLjM4OTEgNC4zMTgwMkMxMS4xOTM4IDQuNTEzMjggMTAuODc3MiA0LjUxMzI4IDEwLjY4MiA0LjMxODAyWk04IDEyLjVDOCAxMi4yMjM5IDcuNzc2MTQgMTIgNy41IDEyQzcuMjIzODYgMTIgNyAxMi4yMjM5IDcgMTIuNVYxNC41QzcgMTQuNzc2MSA3LjIyMzg2IDE1IDcuNSAxNUM3Ljc3NjE0IDE1IDggMTQuNzc2MSA4IDE0LjVWMTIuNVpNMTAuNjgyIDEwLjY4MkMxMC44NzcyIDEwLjQ4NjcgMTEuMTkzOCAxMC40ODY3IDExLjM4OTEgMTAuNjgyTDEyLjgwMzMgMTIuMDk2MkMxMi45OTg2IDEyLjI5MTUgMTIuOTk4NiAxMi42MDggMTIuODAzMyAxMi44MDMzQzEyLjYwOCAxMi45OTg2IDEyLjI5MTUgMTIuOTk4NiAxMi4wOTYyIDEyLjgwMzNMMTAuNjgyIDExLjM4OTFDMTAuNDg2NyAxMS4xOTM4IDEwLjQ4NjcgMTAuODc3MiAxMC42ODIgMTAuNjgyWk01LjUgNy41QzUuNSA2LjM5NTQzIDYuMzk1NDMgNS41IDcuNSA1LjVDOC42MDQ1NyA1LjUgOS41IDYuMzk1NDMgOS41IDcuNUM5LjUgOC42MDQ1NyA4LjYwNDU3IDkuNSA3LjUgOS41QzYuMzk1NDMgOS41IDUuNSA4LjYwNDU3IDUuNSA3LjVaTTcuNSA0LjVDNS44NDMxNSA0LjUgNC41IDUuODQzMTUgNC41IDcuNUM0LjUgOS4xNTY4NSA1Ljg0MzE1IDEwLjUgNy41IDEwLjVDOS4xNTY4NSAxMC41IDEwLjUgOS4xNTY4NSAxMC41IDcuNUMxMC41IDUuODQzMTUgOS4xNTY4NSA0LjUgNy41IDQuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRqID0gW1wiY29sb3JcIl07XG52YXIgU3dpdGNoSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0aik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEwLjUgNEM4LjU2NyA0IDcgNS41NjcgNyA3LjVDNyA5LjQzMyA4LjU2NyAxMSAxMC41IDExQzEyLjQzMyAxMSAxNCA5LjQzMyAxNCA3LjVDMTQgNS41NjcgMTIuNDMzIDQgMTAuNSA0Wk03LjY3MTMzIDExQzYuNjUxODMgMTAuMTc1IDYgOC45MTM2MyA2IDcuNUM2IDYuMDg2MzcgNi42NTE4MyA0LjgyNDk4IDcuNjcxMzMgNEg0LjVDMi41NjcgNCAxIDUuNTY3IDEgNy41QzEgOS40MzMgMi41NjcgMTEgNC41IDExSDcuNjcxMzNaTTAgNy41QzAgNS4wMTQ3MiAyLjAxNDcyIDMgNC41IDNIMTAuNUMxMi45ODUzIDMgMTUgNS4wMTQ3MiAxNSA3LjVDMTUgOS45ODUyOCAxMi45ODUzIDEyIDEwLjUgMTJINC41QzIuMDE0NzIgMTIgMCA5Ljk4NTI4IDAgNy41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNGsgPSBbXCJjb2xvclwiXTtcbnZhciBTeW1ib2xJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRrKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS45MDMyMSA3LjI5Njc3QzEuOTAzMjEgMTAuMzQxIDQuMTEwNDEgMTIuNDE0NyA2LjU4ODkzIDEyLjg0MzlDNi44NzI1NSAxMi44OTMgNy4wNjI2NiAxMy4xNjI3IDcuMDEzNTUgMTMuNDQ2NEM2Ljk2NDQ0IDEzLjczIDYuNjk0NzEgMTMuOTIwMSA2LjQxMTA5IDEzLjg3MUMzLjQ5OTQyIDEzLjM2NjggMC44NjA4NCAxMC45MTI3IDAuODYwODQgNy4yOTY3N0MwLjg2MDgzOSA1Ljc2MDA5IDEuNTU5OTYgNC41NTI0NSAyLjM3NjM5IDMuNjMzNzdDMi45NjEyNCAyLjk3NTY4IDMuNjMwMzQgMi40NDEzNSA0LjE2ODQ2IDIuMDMyMDJMMi41MzIwNSAyLjAzMjAyQzIuMjU1OTEgMi4wMzIwMiAyLjAzMjA1IDEuODA4MTYgMi4wMzIwNSAxLjUzMjAyQzIuMDMyMDUgMS4yNTU4OCAyLjI1NTkxIDEuMDMyMDIgMi41MzIwNSAxLjAzMjAyTDUuNTMyMDUgMS4wMzIwMkM1LjgwODE5IDEuMDMyMDIgNi4wMzIwNSAxLjI1NTg4IDYuMDMyMDUgMS41MzIwMkw2LjAzMjA1IDQuNTMyMDJDNi4wMzIwNSA0LjgwODE2IDUuODA4MTkgNS4wMzIwMiA1LjUzMjA1IDUuMDMyMDJDNS4yNTU5MSA1LjAzMjAyIDUuMDMyMDUgNC44MDgxNiA1LjAzMjA1IDQuNTMyMDJMNS4wMzIwNSAyLjY4NjQ1TDUuMDMwNTQgMi42ODc1OUw1LjAzMDQ1IDIuNjg3NjZMNS4wMzA0NCAyLjY4NzY3TDUuMDMwNDMgMi42ODc2N0M0LjQ1ODk2IDMuMTE4NjggMy43NjA1OSAzLjY0NTM4IDMuMTU1NTQgNC4zMjYyQzIuNDQxMDIgNS4xMzAyMSAxLjkwMzIxIDYuMTAxNTQgMS45MDMyMSA3LjI5Njc3Wk0xMy4wMTA5IDcuNzAzMjFDMTMuMDEwOSA0LjY5MTE1IDEwLjg1MDUgMi42Mjk2IDguNDAzODQgMi4xNzAyOUM4LjEyMDkzIDIuMTE3MTggNy45MzQ2NSAxLjg0NDc5IDcuOTg3NzYgMS41NjE4OEM4LjA0MDg3IDEuMjc4OTggOC4zMTMyNiAxLjA5MjcgOC41OTYxNiAxLjE0NTgxQzExLjQ3MDQgMS42ODU0MSAxNC4wNTMyIDQuMTI2MDUgMTQuMDUzMiA3LjcwMzIxQzE0LjA1MzIgOS4yMzk4OCAxMy4zNTQxIDEwLjQ0NzUgMTIuNTM3NyAxMS4zNjYyQzExLjk1MjggMTIuMDI0MyAxMS4yODM3IDEyLjU1ODYgMTAuNzQ1NiAxMi45NjhMMTIuMzgyMSAxMi45NjhDMTIuNjU4MiAxMi45NjggMTIuODgyMSAxMy4xOTE4IDEyLjg4MjEgMTMuNDY4QzEyLjg4MjEgMTMuNzQ0MSAxMi42NTgyIDEzLjk2OCAxMi4zODIxIDEzLjk2OEw5LjM4MjA1IDEzLjk2OEM5LjEwNTkxIDEzLjk2OCA4Ljg4MjA1IDEzLjc0NDEgOC44ODIwNSAxMy40NjhMOC44ODIwNSAxMC40NjhDOC44ODIwNSAxMC4xOTE4IDkuMTA1OTEgOS45Njc5NiA5LjM4MjA1IDkuOTY3OTZDOS42NTgxOSA5Ljk2Nzk2IDkuODgyMDUgMTAuMTkxOCA5Ljg4MjA1IDEwLjQ2OEw5Ljg4MjA1IDEyLjMxMzVMOS44ODM2MiAxMi4zMTIzQzEwLjQ1NTEgMTEuODgxMyAxMS4xNTM1IDExLjM1NDYgMTEuNzU4NSAxMC42NzM4QzEyLjQ3MzEgOS44Njk3NiAxMy4wMTA5IDguODk4NDQgMTMuMDEwOSA3LjcwMzIxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNGwgPSBbXCJjb2xvclwiXTtcbnZhciBUYWJsZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNGwpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk04IDJIMTIuNUMxMi43NzYxIDIgMTMgMi4yMjM4NiAxMyAyLjVWNUg4VjJaTTcgNVYySDIuNUMyLjIyMzg2IDIgMiAyLjIyMzg2IDIgMi41VjVIN1pNMiA2VjlIN1Y2SDJaTTggNkgxM1Y5SDhWNlpNOCAxMEgxM1YxMi41QzEzIDEyLjc3NjEgMTIuNzc2MSAxMyAxMi41IDEzSDhWMTBaTTIgMTIuNVYxMEg3VjEzSDIuNUMyLjIyMzg2IDEzIDIgMTIuNzc2MSAyIDEyLjVaTTEgMi41QzEgMS42NzE1NyAxLjY3MTU3IDEgMi41IDFIMTIuNUMxMy4zMjg0IDEgMTQgMS42NzE1NyAxNCAyLjVWMTIuNUMxNCAxMy4zMjg0IDEzLjMyODQgMTQgMTIuNSAxNEgyLjVDMS42NzE1NyAxNCAxIDEzLjMyODQgMSAxMi41VjIuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRtID0gW1wiY29sb3JcIl07XG52YXIgVGFyZ2V0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0bSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTAuOTAwMDI0IDcuNTAwMDJDMC45MDAwMjQgMy44NTQ5NSAzLjg1NDk1IDAuOTAwMDI0IDcuNTAwMDIgMC45MDAwMjRDMTEuMTQ1MSAwLjkwMDAyNCAxNC4xIDMuODU0OTUgMTQuMSA3LjUwMDAyQzE0LjEgMTEuMTQ1MSAxMS4xNDUxIDE0LjEgNy41MDAwMiAxNC4xQzMuODU0OTUgMTQuMSAwLjkwMDAyNCAxMS4xNDUxIDAuOTAwMDI0IDcuNTAwMDJaTTcuNTAwMDIgMS44MDAwMkM0LjM1MjAxIDEuODAwMDIgMS44MDAwMiA0LjM1MjAxIDEuODAwMDIgNy41MDAwMkMxLjgwMDAyIDEwLjY0OCA0LjM1MjAxIDEzLjIgNy41MDAwMiAxMy4yQzEwLjY0OCAxMy4yIDEzLjIgMTAuNjQ4IDEzLjIgNy41MDAwMkMxMy4yIDQuMzUyMDEgMTAuNjQ4IDEuODAwMDIgNy41MDAwMiAxLjgwMDAyWk0zLjA3NTA0IDcuNTAwMDJDMy4wNzUwNCA1LjA1NjE3IDUuMDU2MTggMy4wNzUwMiA3LjUwMDA0IDMuMDc1MDJDOS45NDM4OCAzLjA3NTAyIDExLjkyNSA1LjA1NjE3IDExLjkyNSA3LjUwMDAyQzExLjkyNSA5Ljk0Mzg2IDkuOTQzODggMTEuOTI1IDcuNTAwMDQgMTEuOTI1QzUuMDU2MTggMTEuOTI1IDMuMDc1MDQgOS45NDM4NiAzLjA3NTA0IDcuNTAwMDJaTTcuNTAwMDQgMy45MjUwMkM1LjUyNTYyIDMuOTI1MDIgMy45MjUwNCA1LjUyNTYxIDMuOTI1MDQgNy41MDAwMkMzLjkyNTA0IDkuNDc0NDIgNS41MjU2MyAxMS4wNzUgNy41MDAwNCAxMS4wNzVDOS40NzQ0NCAxMS4wNzUgMTEuMDc1IDkuNDc0NDIgMTEuMDc1IDcuNTAwMDJDMTEuMDc1IDUuNTI1NjEgOS40NzQ0NCAzLjkyNTAyIDcuNTAwMDQgMy45MjUwMlpNNy41MDAwNCA1LjI1MDAyQzYuMjU3NCA1LjI1MDAyIDUuMjUwMDQgNi4yNTczOSA1LjI1MDA0IDcuNTAwMDJDNS4yNTAwNCA4Ljc0MjY2IDYuMjU3NCA5Ljc1MDAyIDcuNTAwMDQgOS43NTAwMkM4Ljc0MjY3IDkuNzUwMDIgOS43NTAwNCA4Ljc0MjY2IDkuNzUwMDQgNy41MDAwMkM5Ljc1MDA0IDYuMjU3MzggOC43NDI2NyA1LjI1MDAyIDcuNTAwMDQgNS4yNTAwMlpNNi4wNTAwNCA3LjUwMDAyQzYuMDUwMDQgNi42OTkyMSA2LjY5OTIzIDYuMDUwMDIgNy41MDAwNCA2LjA1MDAyQzguMzAwODQgNi4wNTAwMiA4Ljk1MDA0IDYuNjk5MjEgOC45NTAwNCA3LjUwMDAyQzguOTUwMDQgOC4zMDA4MyA4LjMwMDg0IDguOTUwMDIgNy41MDAwNCA4Ljk1MDAyQzYuNjk5MjMgOC45NTAwMiA2LjA1MDA0IDguMzAwODMgNi4wNTAwNCA3LjUwMDAyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNG4gPSBbXCJjb2xvclwiXTtcbnZhciBUZXh0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0bik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMuOTQ5OTMgMi45NTAwMkwzLjk0OTkzIDQuNDk5OThDMy45NDk5MyA0Ljc0ODUxIDMuNzQ4NDUgNC45NDk5OCAzLjQ5OTkzIDQuOTQ5OThDMy4yNTE0IDQuOTQ5OTggMy4wNDk5MyA0Ljc0ODUxIDMuMDQ5OTMgNC40OTk5OFYyLjUwMDA0QzMuMDQ5OTMgMi40NTI0NiAzLjA1NzMxIDIuNDA2NjEgMy4wNzA5OSAyLjM2MzU3QzMuMTI4NzggMi4xODE3NSAzLjI5ODk3IDIuMDUwMDIgMy40OTk5MyAyLjA1MDAySDExLjQ5OTlDMTEuNjU1MyAyLjA1MDAyIDExLjc5MjIgMi4xMjg3MiAxMS44NzMxIDIuMjQ4NDJDMTEuOTIxNiAyLjMyMDI0IDExLjk0OTkgMi40MDY4MiAxMS45NDk5IDIuNTAwMDJMMTEuOTQ5OSAyLjUwMDA0VjQuNDk5OThDMTEuOTQ5OSA0Ljc0ODUxIDExLjc0ODUgNC45NDk5OCAxMS40OTk5IDQuOTQ5OThDMTEuMjUxNCA0Ljk0OTk4IDExLjA0OTkgNC43NDg1MSAxMS4wNDk5IDQuNDk5OThWMi45NTAwMkg4LjA0OTkzVjEyLjA1SDkuMjU0MjhDOS41MDI4MSAxMi4wNSA5LjcwNDI4IDEyLjI1MTUgOS43MDQyOCAxMi41QzkuNzA0MjggMTIuNzQ4NiA5LjUwMjgxIDEyLjk1IDkuMjU0MjggMTIuOTVINS43NTQyOEM1LjUwNTc1IDEyLjk1IDUuMzA0MjggMTIuNzQ4NiA1LjMwNDI4IDEyLjVDNS4zMDQyOCAxMi4yNTE1IDUuNTA1NzUgMTIuMDUgNS43NTQyOCAxMi4wNUg2Ljk0OTkzVjIuOTUwMDJIMy45NDk5M1pcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRvID0gW1wiY29sb3JcIl07XG52YXIgVGV4dEFsaWduQm90dG9tSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0byk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTMuODk5NDkgNS41MDAwMkMzLjg5OTQ5IDUuMjc5MTEgMy43MjA0IDUuMTAwMDMgMy40OTk0OSA1LjEwMDAzQzMuMjc4NTcgNS4xMDAwMyAzLjA5OTQ5IDUuMjc5MTEgMy4wOTk0OSA1LjUwMDAyTDMuMDk5NDkgMTIuNTM0M0wxLjc4MjMzIDExLjIxNzJDMS42MjYxMiAxMS4wNjEgMS4zNzI4NSAxMS4wNjEgMS4yMTY2NCAxMS4yMTcyQzEuMDYwNDMgMTEuMzczNCAxLjA2MDQzIDExLjYyNjcgMS4yMTY2NCAxMS43ODI5TDMuMjE2NjQgMTMuNzgyOUMzLjI5MTY2IDEzLjg1NzkgMy4zOTM0IDEzLjkgMy40OTk0OSAxMy45QzMuNjA1NTcgMTMuOSAzLjcwNzMyIDEzLjg1NzkgMy43ODIzMyAxMy43ODI5TDUuNzgyMzMgMTEuNzgyOUM1LjkzODU0IDExLjYyNjcgNS45Mzg1NCAxMS4zNzM0IDUuNzgyMzMgMTEuMjE3MkM1LjYyNjEyIDExLjA2MSA1LjM3Mjg1IDExLjA2MSA1LjIxNjY0IDExLjIxNzJMMy44OTk0OSAxMi41MzQzTDMuODk5NDkgNS41MDAwMlpNOC40OTk5OCAxM0M4LjIyMzgzIDEzIDcuOTk5OTggMTIuNzc2MiA3Ljk5OTk4IDEyLjVDNy45OTk5OCAxMi4yMjM5IDguMjIzODMgMTIgOC40OTk5OCAxMkgxNC41QzE0Ljc3NjEgMTIgMTUgMTIuMjIzOSAxNSAxMi41QzE1IDEyLjc3NjIgMTQuNzc2MSAxMyAxNC41IDEzSDguNDk5OThaTTguNDk5OTggMTBDOC4yMjM4MyAxMCA3Ljk5OTk4IDkuNzc2MTcgNy45OTk5OCA5LjUwMDAyQzcuOTk5OTggOS4yMjM4OCA4LjIyMzgzIDkuMDAwMDIgOC40OTk5OCA5LjAwMDAySDE0LjVDMTQuNzc2MSA5LjAwMDAyIDE1IDkuMjIzODggMTUgOS41MDAwMkMxNSA5Ljc3NjE3IDE0Ljc3NjEgMTAgMTQuNSAxMEg4LjQ5OTk4Wk03Ljk5OTk4IDYuNTAwMDJDNy45OTk5OCA2Ljc3NjE3IDguMjIzODMgNy4wMDAwMiA4LjQ5OTk4IDcuMDAwMDJIMTQuNUMxNC43NzYxIDcuMDAwMDIgMTUgNi43NzYxNyAxNSA2LjUwMDAyQzE1IDYuMjIzODggMTQuNzc2MSA2LjAwMDAyIDE0LjUgNi4wMDAwMkg4LjQ5OTk4QzguMjIzODMgNi4wMDAwMiA3Ljk5OTk4IDYuMjIzODggNy45OTk5OCA2LjUwMDAyWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNHAgPSBbXCJjb2xvclwiXTtcbnZhciBUZXh0QWxpZ25DZW50ZXJJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRwKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMiA0LjVDMiA0LjIyMzg2IDIuMjIzODYgNCAyLjUgNEgxMi41QzEyLjc3NjEgNCAxMyA0LjIyMzg2IDEzIDQuNUMxMyA0Ljc3NjE0IDEyLjc3NjEgNSAxMi41IDVIMi41QzIuMjIzODYgNSAyIDQuNzc2MTQgMiA0LjVaTTQgNy41QzQgNy4yMjM4NiA0LjIyMzg2IDcgNC41IDdIMTAuNUMxMC43NzYxIDcgMTEgNy4yMjM4NiAxMSA3LjVDMTEgNy43NzYxNCAxMC43NzYxIDggMTAuNSA4SDQuNUM0LjIyMzg2IDggNCA3Ljc3NjE0IDQgNy41Wk0zIDEwLjVDMyAxMC4yMjM5IDMuMjIzODYgMTAgMy41IDEwSDExLjVDMTEuNzc2MSAxMCAxMiAxMC4yMjM5IDEyIDEwLjVDMTIgMTAuNzc2MSAxMS43NzYxIDExIDExLjUgMTFIMy41QzMuMjIzODYgMTEgMyAxMC43NzYxIDMgMTAuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRxID0gW1wiY29sb3JcIl07XG52YXIgVGV4dEFsaWduSnVzdGlmeUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNHEpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0yLjUgNEMyLjIyMzg2IDQgMiA0LjIyMzg2IDIgNC41QzIgNC43NzYxNCAyLjIyMzg2IDUgMi41IDVIMTIuNUMxMi43NzYxIDUgMTMgNC43NzYxNCAxMyA0LjVDMTMgNC4yMjM4NiAxMi43NzYxIDQgMTIuNSA0SDIuNVpNMiA3LjVDMiA3LjIyMzg2IDIuMjIzODYgNyAyLjUgN0gxMi41QzEyLjc3NjEgNyAxMyA3LjIyMzg2IDEzIDcuNUMxMyA3Ljc3NjE0IDEyLjc3NjEgOCAxMi41IDhIMi41QzIuMjIzODYgOCAyIDcuNzc2MTQgMiA3LjVaTTIgMTAuNUMyIDEwLjIyMzkgMi4yMjM4NiAxMCAyLjUgMTBIMTIuNUMxMi43NzYxIDEwIDEzIDEwLjIyMzkgMTMgMTAuNUMxMyAxMC43NzYxIDEyLjc3NjEgMTEgMTIuNSAxMUgyLjVDMi4yMjM4NiAxMSAyIDEwLjc3NjEgMiAxMC41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNHIgPSBbXCJjb2xvclwiXTtcbnZhciBUZXh0QWxpZ25MZWZ0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0cik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTIgNC41QzIgNC4yMjM4NiAyLjIyMzg2IDQgMi41IDRIMTIuNUMxMi43NzYxIDQgMTMgNC4yMjM4NiAxMyA0LjVDMTMgNC43NzYxNCAxMi43NzYxIDUgMTIuNSA1SDIuNUMyLjIyMzg2IDUgMiA0Ljc3NjE0IDIgNC41Wk0yIDcuNUMyIDcuMjIzODYgMi4yMjM4NiA3IDIuNSA3SDcuNUM3Ljc3NjE0IDcgOCA3LjIyMzg2IDggNy41QzggNy43NzYxNCA3Ljc3NjE0IDggNy41IDhIMi41QzIuMjIzODYgOCAyIDcuNzc2MTQgMiA3LjVaTTIgMTAuNUMyIDEwLjIyMzkgMi4yMjM4NiAxMCAyLjUgMTBIMTAuNUMxMC43NzYxIDEwIDExIDEwLjIyMzkgMTEgMTAuNUMxMSAxMC43NzYxIDEwLjc3NjEgMTEgMTAuNSAxMUgyLjVDMi4yMjM4NiAxMSAyIDEwLjc3NjEgMiAxMC41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNHMgPSBbXCJjb2xvclwiXTtcbnZhciBUZXh0QWxpZ25NaWRkbGVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRzKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy40OTk0OSAxNC45QzMuNzIwNCAxNC45IDMuODk5NDkgMTQuNzIwOSAzLjg5OTQ5IDE0LjVMMy44OTk0OSAxMC40NjU3TDUuMjE2NjQgMTEuNzgyOUM1LjM3Mjg1IDExLjkzOTEgNS42MjYxMiAxMS45MzkxIDUuNzgyMzMgMTEuNzgyOUM1LjkzODU0IDExLjYyNjcgNS45Mzg1NCAxMS4zNzM0IDUuNzgyMzMgMTEuMjE3MkwzLjc4MjMzIDkuMjE3MThDMy43MDczMiA5LjE0MjE3IDMuNjA1NTcgOS4xMDAwMiAzLjQ5OTQ5IDkuMTAwMDJDMy4zOTM0IDkuMTAwMDIgMy4yOTE2NiA5LjE0MjE3IDMuMjE2NjQgOS4yMTcxOEwxLjIxNjY0IDExLjIxNzJDMS4wNjA0MyAxMS4zNzM0IDEuMDYwNDMgMTEuNjI2NyAxLjIxNjY0IDExLjc4MjlDMS4zNzI4NSAxMS45MzkxIDEuNjI2MTIgMTEuOTM5MSAxLjc4MjMzIDExLjc4MjlMMy4wOTk0OSAxMC40NjU3TDMuMDk5NDkgMTQuNUMzLjA5OTQ5IDE0LjcyMDkgMy4yNzg1NyAxNC45IDMuNDk5NDkgMTQuOVpNNy45OTk5OCAxMC41QzcuOTk5OTggMTAuNzc2MiA4LjIyMzgzIDExIDguNDk5OTggMTFIMTQuNUMxNC43NzYxIDExIDE1IDEwLjc3NjIgMTUgMTAuNUMxNSAxMC4yMjM5IDE0Ljc3NjEgMTAgMTQuNSAxMEg4LjQ5OTk4QzguMjIzODMgMTAgNy45OTk5OCAxMC4yMjM5IDcuOTk5OTggMTAuNVpNNy45OTk5OCA3LjUwMDAyQzcuOTk5OTggNy43NzYxNyA4LjIyMzgzIDguMDAwMDIgOC40OTk5OCA4LjAwMDAySDE0LjVDMTQuNzc2MSA4LjAwMDAyIDE1IDcuNzc2MTcgMTUgNy41MDAwMkMxNSA3LjIyMzg4IDE0Ljc3NjEgNy4wMDAwMiAxNC41IDcuMDAwMDJIOC40OTk5OEM4LjIyMzgzIDcuMDAwMDIgNy45OTk5OCA3LjIyMzg4IDcuOTk5OTggNy41MDAwMlpNOC40OTk5OCA1LjAwMDAyQzguMjIzODMgNS4wMDAwMiA3Ljk5OTk4IDQuNzc2MTcgNy45OTk5OCA0LjUwMDAyQzcuOTk5OTggNC4yMjM4OCA4LjIyMzgzIDQuMDAwMDIgOC40OTk5OCA0LjAwMDAySDE0LjVDMTQuNzc2MSA0LjAwMDAyIDE1IDQuMjIzODggMTUgNC41MDAwMkMxNSA0Ljc3NjE3IDE0Ljc3NjEgNS4wMDAwMiAxNC41IDUuMDAwMDJIOC40OTk5OFpNMy44OTk0OSAwLjUwMDAyNUMzLjg5OTQ5IDAuMjc5MTExIDMuNzIwNCAwLjEwMDAyNSAzLjQ5OTQ5IDAuMTAwMDI1QzMuMjc4NTcgMC4xMDAwMjUgMy4wOTk0OSAwLjI3OTExMSAzLjA5OTQ5IDAuNTAwMDI1TDMuMDk5NDkgNC41MzQzNEwxLjc4MjMzIDMuMjE3MThDMS42MjYxMiAzLjA2MDk3IDEuMzcyODUgMy4wNjA5NyAxLjIxNjY0IDMuMjE3MThDMS4wNjA0MyAzLjM3MzM5IDEuMDYwNDMgMy42MjY2NiAxLjIxNjY0IDMuNzgyODdMMy4yMTY2NCA1Ljc4Mjg3QzMuMjkxNjYgNS44NTc4OCAzLjM5MzQgNS45MDAwMiAzLjQ5OTQ5IDUuOTAwMDJDMy42MDU1NyA1LjkwMDAyIDMuNzA3MzIgNS44NTc4OCAzLjc4MjMzIDUuNzgyODdMNS43ODIzMyAzLjc4Mjg3QzUuOTM4NTQgMy42MjY2NiA1LjkzODU0IDMuMzczMzkgNS43ODIzMyAzLjIxNzE4QzUuNjI2MTIgMy4wNjA5NyA1LjM3Mjg1IDMuMDYwOTcgNS4yMTY2NCAzLjIxNzE4TDMuODk5NDkgNC41MzQzNEwzLjg5OTQ5IDAuNTAwMDI1WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNHQgPSBbXCJjb2xvclwiXTtcbnZhciBUZXh0QWxpZ25SaWdodEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNHQpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0yIDQuNUMyIDQuMjIzODYgMi4yMjM4NiA0IDIuNSA0SDEyLjVDMTIuNzc2MSA0IDEzIDQuMjIzODYgMTMgNC41QzEzIDQuNzc2MTQgMTIuNzc2MSA1IDEyLjUgNUgyLjVDMi4yMjM4NiA1IDIgNC43NzYxNCAyIDQuNVpNNyA3LjVDNyA3LjIyMzg2IDcuMjIzODYgNyA3LjUgN0gxMi41QzEyLjc3NjEgNyAxMyA3LjIyMzg2IDEzIDcuNUMxMyA3Ljc3NjE0IDEyLjc3NjEgOCAxMi41IDhINy41QzcuMjIzODYgOCA3IDcuNzc2MTQgNyA3LjVaTTQgMTAuNUM0IDEwLjIyMzkgNC4yMjM4NiAxMCA0LjUgMTBIMTIuNUMxMi43NzYxIDEwIDEzIDEwLjIyMzkgMTMgMTAuNUMxMyAxMC43NzYxIDEyLjc3NjEgMTEgMTIuNSAxMUg0LjVDNC4yMjM4NiAxMSA0IDEwLjc3NjEgNCAxMC41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNHUgPSBbXCJjb2xvclwiXTtcbnZhciBUZXh0QWxpZ25Ub3BJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDR1KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMy44OTk0OSA5LjQ5OTk4QzMuODk5NDkgOS43MjA4OSAzLjcyMDQgOS44OTk5NyAzLjQ5OTQ5IDkuODk5OTdDMy4yNzg1NyA5Ljg5OTk3IDMuMDk5NDkgOS43MjA4OSAzLjA5OTQ5IDkuNDk5OThMMy4wOTk0OSAyLjQ2NTY2TDEuNzgyMzMgMy43ODI4MkMxLjYyNjEyIDMuOTM5MDMgMS4zNzI4NSAzLjkzOTAzIDEuMjE2NjQgMy43ODI4MkMxLjA2MDQzIDMuNjI2NjEgMS4wNjA0MyAzLjM3MzM0IDEuMjE2NjQgMy4yMTcxM0wzLjIxNjY0IDEuMjE3MTNDMy4yOTE2NiAxLjE0MjEyIDMuMzkzNCAxLjA5OTk4IDMuNDk5NDkgMS4wOTk5OEMzLjYwNTU3IDEuMDk5OTggMy43MDczMiAxLjE0MjEyIDMuNzgyMzMgMS4yMTcxM0w1Ljc4MjMzIDMuMjE3MTNDNS45Mzg1NCAzLjM3MzM0IDUuOTM4NTQgMy42MjY2MSA1Ljc4MjMzIDMuNzgyODJDNS42MjYxMiAzLjkzOTAzIDUuMzcyODUgMy45MzkwMyA1LjIxNjY0IDMuNzgyODJMMy44OTk0OSAyLjQ2NTY2TDMuODk5NDkgOS40OTk5OFpNOC40OTk5OCAxLjk5OTk4QzguMjIzODMgMS45OTk5OCA3Ljk5OTk4IDIuMjIzODMgNy45OTk5OCAyLjQ5OTk4QzcuOTk5OTggMi43NzYxMiA4LjIyMzgzIDIuOTk5OTggOC40OTk5OCAyLjk5OTk4SDE0LjVDMTQuNzc2MSAyLjk5OTk4IDE1IDIuNzc2MTIgMTUgMi40OTk5OEMxNSAyLjIyMzgzIDE0Ljc3NjEgMS45OTk5OCAxNC41IDEuOTk5OThIOC40OTk5OFpNOC40OTk5OCA0Ljk5OTk4QzguMjIzODMgNC45OTk5OCA3Ljk5OTk4IDUuMjIzODMgNy45OTk5OCA1LjQ5OTk4QzcuOTk5OTggNS43NzYxMiA4LjIyMzgzIDUuOTk5OTggOC40OTk5OCA1Ljk5OTk4SDE0LjVDMTQuNzc2MSA1Ljk5OTk4IDE1IDUuNzc2MTIgMTUgNS40OTk5OEMxNSA1LjIyMzgzIDE0Ljc3NjEgNC45OTk5OCAxNC41IDQuOTk5OThIOC40OTk5OFpNNy45OTk5OCA4LjQ5OTk4QzcuOTk5OTggOC4yMjM4MyA4LjIyMzgzIDcuOTk5OTggOC40OTk5OCA3Ljk5OTk4SDE0LjVDMTQuNzc2MSA3Ljk5OTk4IDE1IDguMjIzODMgMTUgOC40OTk5OEMxNSA4Ljc3NjEyIDE0Ljc3NjEgOC45OTk5OCAxNC41IDguOTk5OThIOC40OTk5OEM4LjIyMzgzIDguOTk5OTggNy45OTk5OCA4Ljc3NjEyIDcuOTk5OTggOC40OTk5OFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDR2ID0gW1wiY29sb3JcIl07XG52YXIgVGV4dE5vbmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDR2KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTMuMzUzNiAyLjM1MzU1QzEzLjU0ODggMi4xNTgyOSAxMy41NDg4IDEuODQxNzEgMTMuMzUzNiAxLjY0NjQ1QzEzLjE1ODMgMS40NTExOCAxMi44NDE3IDEuNDUxMTggMTIuNjQ2NCAxLjY0NjQ1TDExLjkyOTEgMi4zNjM4M0MxMS45MTU5IDIuMzIyNDYgMTEuODk3IDIuMjgzNjggMTEuODczMiAyLjI0ODQ1QzExLjc5MjMgMi4xMjg3NSAxMS42NTU0IDIuMDUwMDUgMTEuNTAwMSAyLjA1MDA1SDMuNTAwMDVDMy4yOTkwOSAyLjA1MDA1IDMuMTI4OSAyLjE4MTc4IDMuMDcxMTEgMi4zNjM2QzMuMDU3NDMgMi40MDY2NSAzLjA1MDA1IDIuNDUyNDkgMy4wNTAwNSAyLjUwMDA3VjQuNTAwMDFDMy4wNTAwNSA0Ljc0ODU0IDMuMjUxNTIgNC45NTAwMSAzLjUwMDA1IDQuOTUwMDFDMy43NDg1OCA0Ljk1MDAxIDMuOTUwMDUgNC43NDg1NCAzLjk1MDA1IDQuNTAwMDFWMi45NTAwNUg2Ljk1MDA2VjcuMzQyODRMMS42NDY0NSAxMi42NDY0QzEuNDUxMTggMTIuODQxNyAxLjQ1MTE4IDEzLjE1ODMgMS42NDY0NSAxMy4zNTM2QzEuODQxNzEgMTMuNTQ4OCAyLjE1ODI5IDEzLjU0ODggMi4zNTM1NSAxMy4zNTM2TDYuOTUwMDYgOC43NTcwNVYxMi4wNTAxSDUuNzU0NEM1LjUwNTg3IDEyLjA1MDEgNS4zMDQ0IDEyLjI1MTUgNS4zMDQ0IDEyLjUwMDFDNS4zMDQ0IDEyLjc0ODYgNS41MDU4NyAxMi45NTAxIDUuNzU0NCAxMi45NTAxSDkuMjU0NEM5LjUwMjkzIDEyLjk1MDEgOS43MDQ0IDEyLjc0ODYgOS43MDQ0IDEyLjUwMDFDOS43MDQ0IDEyLjI1MTUgOS41MDI5MyAxMi4wNTAxIDkuMjU0NCAxMi4wNTAxSDguMDUwMDZWNy42NTcwNUwxMy4zNTM2IDIuMzUzNTVaTTguMDUwMDYgNi4yNDI4NEwxMS4wNTAxIDMuMjQyODNWMi45NTAwNUg4LjA1MDA2VjYuMjQyODRaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0dyA9IFtcImNvbG9yXCJdO1xudmFyIFRoaWNrQXJyb3dEb3duSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0dyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUgMy41QzUgMy4yMjM4NiA1LjIyMzg2IDMgNS41IDNIOS41QzkuNzc2MTQgMyAxMCAzLjIyMzg2IDEwIDMuNVY2SDEyLjVDMTIuNjg3MyA2IDEyLjg1ODkgNi4xMDQ2NyAxMi45NDQ2IDYuMjcxMjFDMTMuMDMwMyA2LjQzNzc0IDEzLjAxNTcgNi42MzgyMSAxMi45MDY5IDYuNzkwNjJMNy45MDY4NyAxMy43OTA2QzcuODEzMDEgMTMuOTIyIDcuNjYxNDggMTQgNy41IDE0QzcuMzM4NTMgMTQgNy4xODY5OSAxMy45MjIgNy4wOTMxNCAxMy43OTA2TDIuMDkzMTQgNi43OTA2MkMxLjk4NDI3IDYuNjM4MjEgMS45Njk3MiA2LjQzNzc0IDIuMDU1NDIgNi4yNzEyMUMyLjE0MTEyIDYuMTA0NjcgMi4zMTI3MSA2IDIuNSA2SDVWMy41Wk02IDRWNi41QzYgNi43NzYxNCA1Ljc3NjE0IDcgNS41IDdIMy40NzE2TDcuNSAxMi42Mzk4TDExLjUyODQgN0g5LjVDOS4yMjM4NiA3IDkgNi43NzYxNCA5IDYuNVY0SDZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0eCA9IFtcImNvbG9yXCJdO1xudmFyIFRoaWNrQXJyb3dMZWZ0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0eCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEgNy41QzEgNy42NjE0OCAxLjA3Nzk4IDcuODEzMDEgMS4yMDkzOCA3LjkwNjg3TDguMjA5MzggMTIuOTA2OUM4LjM2MTc5IDEzLjAxNTcgOC41NjIyNiAxMy4wMzAzIDguNzI4NzkgMTIuOTQ0NkM4Ljg5NTMzIDEyLjg1ODkgOSAxMi42ODczIDkgMTIuNUw5IDEwTDExLjUgMTBDMTEuNzc2MSAxMCAxMiA5Ljc3NjE0IDEyIDkuNUwxMiA1LjVDMTIgNS4yMjM4NiAxMS43NzYxIDUgMTEuNSA1TDkgNUw5IDIuNUM5IDIuMzEyNzEgOC44OTUzMyAyLjE0MTEyIDguNzI4NzkgMi4wNTU0MkM4LjU2MjI2IDEuOTY5NzIgOC4zNjE3OSAxLjk4NDI3IDguMjA5MzggMi4wOTMxM0wxLjIwOTM4IDcuMDkzMTRDMS4wNzc5OCA3LjE4Njk5IDEgNy4zMzg1MyAxIDcuNVpNOCAzLjQ3MTZMOCA1LjVDOCA1Ljc3NjE0IDguMjIzODYgNiA4LjUgNkwxMSA2TDExIDlMOC41IDlDOC4yMjM4NiA5IDggOS4yMjM4NiA4IDkuNUw4IDExLjUyODRMMi4zNjAyMyA3LjVMOCAzLjQ3MTZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0eSA9IFtcImNvbG9yXCJdO1xudmFyIFRoaWNrQXJyb3dSaWdodEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNHkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xNCA3LjVDMTQgNy42NjE0OCAxMy45MjIgNy44MTMwMSAxMy43OTA2IDcuOTA2ODdMNi43OTA2MiAxMi45MDY5QzYuNjM4MjEgMTMuMDE1NyA2LjQzNzc0IDEzLjAzMDMgNi4yNzEyMSAxMi45NDQ2QzYuMTA0NjcgMTIuODU4OSA2IDEyLjY4NzMgNiAxMi41TDYgMTBMMy41IDEwQzMuMjIzODYgMTAgMyA5Ljc3NjE0IDMgOS41TDMgNS41QzMgNS4yMjM4NiAzLjIyMzg2IDUgMy41IDVMNiA1TDYgMi41QzYgMi4zMTI3MSA2LjEwNDY3IDIuMTQxMTIgNi4yNzEyMSAyLjA1NTQyQzYuNDM3NzQgMS45Njk3MiA2LjYzODIxIDEuOTg0MjcgNi43OTA2MiAyLjA5MzEzTDEzLjc5MDYgNy4wOTMxNEMxMy45MjIgNy4xODY5OSAxNCA3LjMzODUzIDE0IDcuNVpNNyAzLjQ3MTZMNyA1LjVDNyA1Ljc3NjE0IDYuNzc2MTQgNiA2LjUgNkw0IDZMNCA5TDYuNSA5QzYuNzc2MTQgOSA3IDkuMjIzODYgNyA5LjVMNyAxMS41Mjg0TDEyLjYzOTggNy41TDcgMy40NzE2WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNHogPSBbXCJjb2xvclwiXTtcbnZhciBUaGlja0Fycm93VXBJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDR6KTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy41IDFDNy42NjE0OCAxIDcuODEzMDEgMS4wNzc5OCA3LjkwNjg3IDEuMjA5MzhMMTIuOTA2OSA4LjIwOTM4QzEzLjAxNTcgOC4zNjE3OSAxMy4wMzAzIDguNTYyMjYgMTIuOTQ0NiA4LjcyODc5QzEyLjg1ODkgOC44OTUzMyAxMi42ODczIDkgMTIuNSA5SDEwVjExLjVDMTAgMTEuNzc2MSA5Ljc3NjE0IDEyIDkuNSAxMkg1LjVDNS4yMjM4NiAxMiA1IDExLjc3NjEgNSAxMS41VjlIMi41QzIuMzEyNzEgOSAyLjE0MTEyIDguODk1MzMgMi4wNTU0MiA4LjcyODc5QzEuOTY5NzIgOC41NjIyNiAxLjk4NDI3IDguMzYxNzkgMi4wOTMxNCA4LjIwOTM4TDcuMDkzMTQgMS4yMDkzOEM3LjE4Njk5IDEuMDc3OTggNy4zMzg1MyAxIDcuNSAxWk0zLjQ3MTYgOEg1LjVDNS43NzYxNCA4IDYgOC4yMjM4NiA2IDguNVYxMUg5VjguNUM5IDguMjIzODYgOS4yMjM4NiA4IDkuNSA4SDExLjUyODRMNy41IDIuMzYwMjNMMy40NzE2IDhaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0QSA9IFtcImNvbG9yXCJdO1xudmFyIFRpbWVySWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0QSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTggMC44NDk5NzZDNy4yMjM4MyAwLjg0OTk3NiA2Ljk5OTk4IDEuMDczODMgNi45OTk5OCAxLjM0OTk4VjMuNTIyMzRDNi45OTk5OCAzLjc5ODQ4IDcuMjIzODMgNC4wMjIzNCA3LjQ5OTk4IDQuMDIyMzRDNy43NzYxMiA0LjAyMjM0IDcuOTk5OTggMy43OTg0OCA3Ljk5OTk4IDMuNTIyMzRWMS44NzE4QzEwLjg4NjIgMi4xMjQ4OCAxMy4xNSA0LjU0ODA2IDEzLjE1IDcuNDk5OThDMTMuMTUgMTAuNjIwNCAxMC42MjA0IDEzLjE1IDcuNDk5OTggMTMuMTVDNC4zNzk1NyAxMy4xNSAxLjg0OTk4IDEwLjYyMDQgMS44NDk5OCA3LjQ5OTk4QzEuODQ5OTggNi4xMDYxMiAyLjM1NDA3IDQuODMxMjggMy4xOTA0OSAzLjg0NTlDMy4zNjkxOSAzLjYzNTM4IDMuMzQzMzkgMy4zMTk4NSAzLjEzMjg2IDMuMTQxMTVDMi45MjIzNCAyLjk2MjQ1IDIuNjA2ODEgMi45ODgyNSAyLjQyODExIDMuMTk4NzdDMS40NDQwNSA0LjM1ODA4IDAuODQ5OTc2IDUuODYwMjkgMC44NDk5NzYgNy40OTk5OEMwLjg0OTk3NiAxMS4xNzI3IDMuODI3MjggMTQuMTUgNy40OTk5OCAxNC4xNUMxMS4xNzI3IDE0LjE1IDE0LjE1IDExLjE3MjcgMTQuMTUgNy40OTk5OEMxNC4xNSAzLjgyNzI4IDExLjE3MjcgMC44NDk5NzYgNy40OTk5OCAwLjg0OTk3NlpNNi43NDA0OSA4LjA4MDcyTDQuMjIzNjMgNC41NzIzN0M0LjE1MjMxIDQuNDcyOTUgNC4xNjM0NiA0LjMzNjUyIDQuMjQ5OTggNC4yNUM0LjMzNjQ5IDQuMTYzNDggNC40NzI5MyA0LjE1MjMzIDQuNTcyMzQgNC4yMjM2NUw4LjA4MDY5IDYuNzQwNTFDOC41NjIyNyA3LjA4NTk5IDguNjE5MDYgNy43ODA5MSA4LjE5OTk4IDguMkM3Ljc4MDg5IDguNjE5MDkgNy4wODU5NyA4LjU2MjI5IDYuNzQwNDkgOC4wODA3MlpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRCID0gW1wiY29sb3JcIl07XG52YXIgVG9rZW5zSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Qik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTQuNSAyQzMuMTE5MjkgMiAyIDMuMTE5MjkgMiA0LjVDMiA1Ljg4MDcyIDMuMTE5MjkgNyA0LjUgN0M1Ljg4MDcyIDcgNyA1Ljg4MDcyIDcgNC41QzcgMy4xMTkyOSA1Ljg4MDcyIDIgNC41IDJaTTMgNC41QzMgMy42NzE1NyAzLjY3MTU3IDMgNC41IDNDNS4zMjg0MyAzIDYgMy42NzE1NyA2IDQuNUM2IDUuMzI4NDMgNS4zMjg0MyA2IDQuNSA2QzMuNjcxNTcgNiAzIDUuMzI4NDMgMyA0LjVaTTEwLjUgMkM5LjExOTI5IDIgOCAzLjExOTI5IDggNC41QzggNS44ODA3MiA5LjExOTI5IDcgMTAuNSA3QzExLjg4MDcgNyAxMyA1Ljg4MDcyIDEzIDQuNUMxMyAzLjExOTI5IDExLjg4MDcgMiAxMC41IDJaTTkgNC41QzkgMy42NzE1NyA5LjY3MTU3IDMgMTAuNSAzQzExLjMyODQgMyAxMiAzLjY3MTU3IDEyIDQuNUMxMiA1LjMyODQzIDExLjMyODQgNiAxMC41IDZDOS42NzE1NyA2IDkgNS4zMjg0MyA5IDQuNVpNMiAxMC41QzIgOS4xMTkyOSAzLjExOTI5IDggNC41IDhDNS44ODA3MiA4IDcgOS4xMTkyOSA3IDEwLjVDNyAxMS44ODA3IDUuODgwNzIgMTMgNC41IDEzQzMuMTE5MjkgMTMgMiAxMS44ODA3IDIgMTAuNVpNNC41IDlDMy42NzE1NyA5IDMgOS42NzE1NyAzIDEwLjVDMyAxMS4zMjg0IDMuNjcxNTcgMTIgNC41IDEyQzUuMzI4NDMgMTIgNiAxMS4zMjg0IDYgMTAuNUM2IDkuNjcxNTcgNS4zMjg0MyA5IDQuNSA5Wk0xMC41IDhDOS4xMTkyOSA4IDggOS4xMTkyOSA4IDEwLjVDOCAxMS44ODA3IDkuMTE5MjkgMTMgMTAuNSAxM0MxMS44ODA3IDEzIDEzIDExLjg4MDcgMTMgMTAuNUMxMyA5LjExOTI5IDExLjg4MDcgOCAxMC41IDhaTTkgMTAuNUM5IDkuNjcxNTcgOS42NzE1NyA5IDEwLjUgOUMxMS4zMjg0IDkgMTIgOS42NzE1NyAxMiAxMC41QzEyIDExLjMyODQgMTEuMzI4NCAxMiAxMC41IDEyQzkuNjcxNTcgMTIgOSAxMS4zMjg0IDkgMTAuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRDID0gW1wiY29sb3JcIl07XG52YXIgVHJhY2tOZXh0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Qyk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEzLjA1MDIgMi43NDk4OUMxMy4wNTAyIDIuNDQ2MTMgMTIuODA0IDIuMTk5ODkgMTIuNTAwMiAyLjE5OTg5QzEyLjE5NjUgMi4xOTk4OSAxMS45NTAyIDIuNDQ2MTMgMTEuOTUwMiAyLjc0OTg5VjcuMjgyNUMxMS45MDQ2IDcuMTg4MDIgMTEuODI5NSA3LjEwODUxIDExLjczMzQgNy4wNTc3NkwyLjczMzM4IDIuMzA3NzZDMi41Nzg0IDIuMjI1OTYgMi4zOTE5IDIuMjMxMjcgMi4yNDE4MiAyLjMyMTc2QzIuMDkxNzUgMi40MTIyNSAyIDIuNTc0NzEgMiAyLjc0OTk1VjEyLjI1QzIgMTIuNDI1MiAyLjA5MTc1IDEyLjU4NzcgMi4yNDE4MiAxMi42NzgxQzIuMzkxOSAxMi43Njg2IDIuNTc4NCAxMi43NzM5IDIuNzMzMzggMTIuNjkyMUwxMS43MzM0IDcuOTQyMTRDMTEuODI5NSA3Ljg5MTM5IDExLjkwNDYgNy44MTE4OCAxMS45NTAyIDcuNzE3NFYxMi4yNDk5QzExLjk1MDIgMTIuNTUzNiAxMi4xOTY1IDEyLjc5OTkgMTIuNTAwMiAxMi43OTk5QzEyLjgwNCAxMi43OTk5IDEzLjA1MDIgMTIuNTUzNiAxMy4wNTAyIDEyLjI0OTlWMi43NDk4OVpNMyAxMS40MjA3VjMuNTc5MkwxMC40Mjg4IDcuNDk5OTVMMyAxMS40MjA3WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNEQgPSBbXCJjb2xvclwiXTtcbnZhciBUcmFja1ByZXZpb3VzSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0RCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEuOTQ5NzYgMi43NDk4OUMxLjk0OTc2IDIuNDQ2MTMgMi4xOTYgMi4xOTk4OSAyLjQ5OTc2IDIuMTk5ODlDMi44MDM1MSAyLjE5OTg5IDMuMDQ5NzYgMi40NDYxMyAzLjA0OTc2IDIuNzQ5ODlWNy4yODI1QzMuMDk1NCA3LjE4ODAyIDMuMTcwNDYgNy4xMDg1MSAzLjI2NjYyIDcuMDU3NzZMMTIuMjY2NiAyLjMwNzc2QzEyLjQyMTYgMi4yMjU5NiAxMi42MDgxIDIuMjMxMjcgMTIuNzU4MiAyLjMyMTc2QzEyLjkwODMgMi40MTIyNSAxMyAyLjU3NDcxIDEzIDIuNzQ5OTVWMTIuMjVDMTMgMTIuNDI1MiAxMi45MDgzIDEyLjU4NzcgMTIuNzU4MiAxMi42NzgxQzEyLjYwODEgMTIuNzY4NiAxMi40MjE2IDEyLjc3MzkgMTIuMjY2NiAxMi42OTIxTDMuMjY2NjIgNy45NDIxNEMzLjE3MDQ2IDcuODkxMzkgMy4wOTU0IDcuODExODggMy4wNDk3NiA3LjcxNzRWMTIuMjQ5OUMzLjA0OTc2IDEyLjU1MzYgMi44MDM1MSAxMi43OTk5IDIuNDk5NzYgMTIuNzk5OUMyLjE5NiAxMi43OTk5IDEuOTQ5NzYgMTIuNTUzNiAxLjk0OTc2IDEyLjI0OTlWMi43NDk4OVpNNC41NzEyMiA3LjQ5OTk1TDEyIDExLjQyMDdWMy41NzkyTDQuNTcxMjIgNy40OTk5NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRFID0gW1wiY29sb3JcIl07XG52YXIgVHJhbnNmb3JtSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0RSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTAuODQ5OTc2IDEuNzQ5OThDMC44NDk5NzYgMS4yNTI5MiAxLjI1MjkyIDAuODQ5OTc2IDEuNzQ5OTggMC44NDk5NzZIMy4yNDk5OEMzLjc0NzAzIDAuODQ5OTc2IDQuMTQ5OTggMS4yNTI5MiA0LjE0OTk4IDEuNzQ5OThWMi4wNDk5OEgxMC44NVYxLjc0OTk4QzEwLjg1IDEuMjUyOTIgMTEuMjUyOSAwLjg0OTk3NiAxMS43NSAwLjg0OTk3NkgxMy4yNUMxMy43NDcgMC44NDk5NzYgMTQuMTUgMS4yNTI5MiAxNC4xNSAxLjc0OTk4VjMuMjQ5OThDMTQuMTUgMy43NDcwMyAxMy43NDcgNC4xNDk5OCAxMy4yNSA0LjE0OTk4SDEyLjk1VjEwLjg1SDEzLjI1QzEzLjc0NyAxMC44NSAxNC4xNSAxMS4yNTI5IDE0LjE1IDExLjc1VjEzLjI1QzE0LjE1IDEzLjc0NyAxMy43NDcgMTQuMTUgMTMuMjUgMTQuMTVIMTEuNzVDMTEuMjUyOSAxNC4xNSAxMC44NSAxMy43NDcgMTAuODUgMTMuMjVWMTIuOTVINC4xNDk5OFYxMy4yNUM0LjE0OTk4IDEzLjc0NyAzLjc0NzAzIDE0LjE1IDMuMjQ5OTggMTQuMTVIMS43NDk5OEMxLjI1MjkyIDE0LjE1IDAuODQ5OTc2IDEzLjc0NyAwLjg0OTk3NiAxMy4yNVYxMS43NUMwLjg0OTk3NiAxMS4yNTI5IDEuMjUyOTIgMTAuODUgMS43NDk5OCAxMC44NUgyLjA0OTk4VjQuMTQ5OThIMS43NDk5OEMxLjI1MjkyIDQuMTQ5OTggMC44NDk5NzYgMy43NDcwMyAwLjg0OTk3NiAzLjI0OTk4VjEuNzQ5OThaTTIuOTQ5OTggNC4xNDk5OFYxMC44NUgzLjI0OTk4QzMuNzQ3MDMgMTAuODUgNC4xNDk5OCAxMS4yNTI5IDQuMTQ5OTggMTEuNzVWMTIuMDVIMTAuODVWMTEuNzVDMTAuODUgMTEuMjUyOSAxMS4yNTI5IDEwLjg1IDExLjc1IDEwLjg1SDEyLjA1VjQuMTQ5OThIMTEuNzVDMTEuMjUyOSA0LjE0OTk4IDEwLjg1IDMuNzQ3MDMgMTAuODUgMy4yNDk5OFYyLjk0OTk4SDQuMTQ5OThWMy4yNDk5OEM0LjE0OTk4IDMuNzQ3MDMgMy43NDcwMyA0LjE0OTk4IDMuMjQ5OTggNC4xNDk5OEgyLjk0OTk4Wk0yLjM0OTk4IDEuNzQ5OThIMS43NDk5OFYyLjM0OTk4VjIuNjQ5OThWMy4yNDk5OEgyLjM0OTk4SDIuNjQ5OThIMy4yNDk5OFYyLjY0OTk4VjIuMzQ5OThWMS43NDk5OEgyLjY0OTk4SDIuMzQ5OThaTTUuMDk5OTggNS45OTk5OEM1LjA5OTk4IDUuNTAyOTIgNS41MDI5MiA1LjA5OTk4IDUuOTk5OTggNS4wOTk5OEg2Ljk5OTk4QzcuNDk3MDMgNS4wOTk5OCA3Ljg5OTk4IDUuNTAyOTIgNy44OTk5OCA1Ljk5OTk4VjYuOTk5OThDNy44OTk5OCA3LjAzNTkxIDcuODk3ODcgNy4wNzEzNCA3Ljg5Mzc4IDcuMTA2MThDNy45Mjg2MSA3LjEwMjA4IDcuOTY0MDUgNy4wOTk5OCA3Ljk5OTk4IDcuMDk5OThIOC45OTk5OEM5LjQ5NzAzIDcuMDk5OTggOS44OTk5OCA3LjUwMjkyIDkuODk5OTggNy45OTk5OFY4Ljk5OTk4QzkuODk5OTggOS40OTcwMyA5LjQ5NzAzIDkuODk5OTggOC45OTk5OCA5Ljg5OTk4SDcuOTk5OThDNy41MDI5MiA5Ljg5OTk4IDcuMDk5OTggOS40OTcwMyA3LjA5OTk4IDguOTk5OThWNy45OTk5OEM3LjA5OTk4IDcuOTY0MDUgNy4xMDIwOCA3LjkyODYxIDcuMTA2MTggNy44OTM3OEM3LjA3MTM0IDcuODk3ODcgNy4wMzU5MSA3Ljg5OTk4IDYuOTk5OTggNy44OTk5OEg1Ljk5OTk4QzUuNTAyOTIgNy44OTk5OCA1LjA5OTk4IDcuNDk3MDMgNS4wOTk5OCA2Ljk5OTk4VjUuOTk5OThaTTYuMDk5OTggNS45OTk5OEg1Ljk5OTk4VjYuMDk5OThWNi44OTk5OFY2Ljk5OTk4SDYuMDk5OThINi44OTk5OEg2Ljk5OTk4VjYuODk5OThWNi4wOTk5OFY1Ljk5OTk4SDYuODk5OThINi4wOTk5OFpNNy45OTk5OCA3Ljk5OTk4SDguMDk5OThIOC44OTk5OEg4Ljk5OTk4VjguMDk5OThWOC44OTk5OFY4Ljk5OTk4SDguODk5OThIOC4wOTk5OEg3Ljk5OTk4VjguODk5OThWOC4wOTk5OFY3Ljk5OTk4Wk0yLjY0OTk4IDExLjc1SDIuMzQ5OThIMS43NDk5OFYxMi4zNVYxMi42NVYxMy4yNUgyLjM0OTk4SDIuNjQ5OThIMy4yNDk5OFYxMi42NVYxMi4zNVYxMS43NUgyLjY0OTk4Wk0xMS43NSAxLjc0OTk4SDEyLjM1SDEyLjY1SDEzLjI1VjIuMzQ5OThWMi42NDk5OFYzLjI0OTk4SDEyLjY1SDEyLjM1SDExLjc1VjIuNjQ5OThWMi4zNDk5OFYxLjc0OTk4Wk0xMi42NSAxMS43NUgxMi4zNUgxMS43NVYxMi4zNVYxMi42NVYxMy4yNUgxMi4zNUgxMi42NUgxMy4yNVYxMi42NVYxMi4zNVYxMS43NUgxMi42NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRGID0gW1wiY29sb3JcIl07XG52YXIgVHJhbnNwYXJlbmN5R3JpZEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNEYpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBvcGFjaXR5OiBcIi4yNVwiLFxuICAgIGQ6IFwiTTAgMEgzVjNIMFYwWk02IDNIM1Y2SDBWOUgzVjEySDBWMTVIM1YxMkg2VjE1SDlWMTJIMTJWMTVIMTVWMTJIMTJWOUgxNVY2SDEyVjNIMTVWMEgxMlYzSDlWMEg2VjNaTTYgNlYzSDlWNkg2Wk02IDlIM1Y2SDZWOVpNOSA5VjZIMTJWOUg5Wk05IDlINlYxMkg5VjlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0RyA9IFtcImNvbG9yXCJdO1xudmFyIFRyYXNoSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Ryk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTUuNSAxQzUuMjIzODYgMSA1IDEuMjIzODYgNSAxLjVDNSAxLjc3NjE0IDUuMjIzODYgMiA1LjUgMkg5LjVDOS43NzYxNCAyIDEwIDEuNzc2MTQgMTAgMS41QzEwIDEuMjIzODYgOS43NzYxNCAxIDkuNSAxSDUuNVpNMyAzLjVDMyAzLjIyMzg2IDMuMjIzODYgMyAzLjUgM0g1SDEwSDExLjVDMTEuNzc2MSAzIDEyIDMuMjIzODYgMTIgMy41QzEyIDMuNzc2MTQgMTEuNzc2MSA0IDExLjUgNEgxMVYxMkMxMSAxMi41NTIzIDEwLjU1MjMgMTMgMTAgMTNINUM0LjQ0NzcyIDEzIDQgMTIuNTUyMyA0IDEyVjRMMy41IDRDMy4yMjM4NiA0IDMgMy43NzYxNCAzIDMuNVpNNSA0SDEwVjEySDVWNFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRIID0gW1wiY29sb3JcIl07XG52YXIgVHJpYW5nbGVEb3duSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0SCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTQgNkgxMUw3LjUgMTAuNUw0IDZaXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNEkgPSBbXCJjb2xvclwiXTtcbnZhciBUcmlhbmdsZUxlZnRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRJKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNOSA0TDkgMTFMNC41IDcuNUw5IDRaXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNEogPSBbXCJjb2xvclwiXTtcbnZhciBUcmlhbmdsZVJpZ2h0SWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Sik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTYgMTFMNiA0TDEwLjUgNy41TDYgMTFaXCIsXG4gICAgZmlsbDogY29sb3JcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNEsgPSBbXCJjb2xvclwiXTtcbnZhciBUcmlhbmdsZVVwSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Syk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTQgOUgxMUw3LjUgNC41TDQgOVpcIixcbiAgICBmaWxsOiBjb2xvclxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0TCA9IFtcImNvbG9yXCJdO1xudmFyIFR3aXR0ZXJMb2dvSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0TCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuMjMzMzYgNC42OTYyOUM3LjIzMzM2IDIuOTY4ODQgOC42MzMzNSAxLjU2ODU3IDEwLjM2IDEuNTY4NTdDMTEuMzczNiAxLjU2ODU3IDEyLjE4MyAyLjA0ODA0IDEyLjcyNTQgMi43NDM4NUMxMy4zMDc5IDIuNjI0NjcgMTMuODU1NyAyLjQwOTEzIDE0LjM1MTMgMi4xMTUwOEMxNC4xNTU5IDIuNzI1OTggMTMuNzQyNCAzLjIzOTYgMTMuMjAzMyAzLjU2NDYzQzEzLjIwMzggMy41NjU2OCAxMy4yMDQyIDMuNTY2NzQgMTMuMjA0NyAzLjU2Nzc5QzEzLjczMzQgMy41MDM2MSAxNC4yMzY0IDMuMzYzMDIgMTQuNzA0OCAzLjE1NTQ2TDE0LjcwMzcgMy4xNTcxNUMxNC4zNjY3IDMuNjYxODMgMTMuOTQzMSA0LjEwNzM2IDEzLjQ1NjEgNC40NzAzNEMxMy40ODIzIDQuNjQ2NzIgMTMuNDk1NiA0LjgyNDI3IDEzLjQ5NTYgNS4wMDA3OUMxMy40OTU2IDguNjg3MSAxMC42ODczIDEyLjk3NDYgNS41MjEyMiAxMi45NzQ2QzMuOTM5MDYgMTIuOTc0NiAyLjQ2NTQ0IDEyLjUxMSAxLjIyNTA1IDExLjcxNTJDMC45OTI2MzIgMTEuNTY2MSAwLjkyNTEwOCAxMS4yNTY4IDEuMDc0MjMgMTEuMDI0NEMxLjA4NzQgMTEuMDAzOCAxLjEwMTgzIDEwLjk4NDYgMS4xMTczNCAxMC45NjY2QzEuMjA1ODIgMTAuODIwMiAxLjM3NDM4IDEwLjczMDkgMS41NTU0IDEwLjc1MjJDMi40NzA2NiAxMC44NjAxIDMuMzg1NjggMTAuNzQ4NSA0LjE5MjE5IDEwLjM5NjJDMy4zOTIyNiAxMC4wNDM0IDIuNzcxMjkgOS4zNTk3NSAyLjUwMjA0IDguNTE5NzRDMi40NTM1OSA4LjM2ODYgMi40ODgzNSA4LjIwMzExIDIuNTkzNTEgOC4wODQyMkMyLjU5NzE2IDguMDgwMSAyLjYwMDg3IDguMDc2MDYgMi42MDQ2NCA4LjA3MjFDMS45NjM5MSA3LjUwODE5IDEuNTU5NzMgNi42ODIwOCAxLjU1OTczIDUuNzYxNDNWNS43Mjc1OUMxLjU1OTczIDUuNTY4MTQgMS42NDQxMSA1LjQyMDU5IDEuNzgxNTUgNS4zMzk3NEMxLjgyNjcxIDUuMzEzMTcgMS44NzUzNyA1LjI5NTExIDEuOTI1MzIgNS4yODU1OEMxLjcwNTQ5IDQuODYxNTQgMS41ODExNiA0LjM3OTg0IDEuNTgxMTYgMy44Njk1OEMxLjU4MTE2IDMuNDAxNjUgMS41ODM4NCAyLjgxMTkyIDEuOTEzMzIgMi4yODA4MUMxLjk4NzE4IDIuMTYxNzUgMi4xMDc1OCAyLjA4OTE1IDIuMjM2NCAyLjA3MTk1QzIuNDI1ODggMi4wMTIzNyAyLjY0MDg3IDIuMDY5NjkgMi43NzQwNiAyLjIzMzAyQzMuODY1MzYgMy41NzEyNiA1LjQ0MDY2IDQuNDk1ODMgNy4yMzM2NiA0LjczOTYxTDcuMjMzMzYgNC42OTYyOVpNNS41MjEyMiAxMS45NzQ2QzQuNzMzODcgMTEuOTc0NiAzLjk3NzgxIDExLjg0MzUgMy4yNzI0OCAxMS42MDIzQzQuMTMwMTIgMTEuNDUzOCA0Ljk1MzA3IDExLjExNTkgNS42NjIxOCAxMC41NjAyQzUuODEyMTEgMTAuNDQyNyA1Ljg3MTgyIDEwLjI0MzUgNS44MTEyNiAxMC4wNjI5QzUuNzUwNyA5Ljg4MjM0IDUuNTgzIDkuNzU5NDMgNS4zOTI1NSA5Ljc1NjA3QzQuNjg5NjggOS43NDM2NiA0LjA2NzEyIDkuMzk3MTYgMy42Nzc5MyA4Ljg2ODQ1QzMuODY4MjggOC44NTMwNiA0LjA1NDI4IDguODIwMzkgNC4yMzQ0NSA4Ljc3MTY3QzQuNDM2MDMgOC43MTcxNiA0LjU3MzYzIDguNTMxMTQgNC41NjY3NCA4LjMyMjQzQzQuNTU5ODUgOC4xMTM3MiA0LjQxMDI5IDcuOTM3MTggNC4yMDU1NSA3Ljg5NjA3QzMuNDI2OTQgNy43Mzk3NyAyLjc5ODgzIDcuMTY3NjQgMi41NjE2OSA2LjQyMTc0QzIuNzYyNTUgNi40NzAyNSAyLjk3MTAyIDYuNDk5MSAzLjE4NDgyIDYuNTA2MUMzLjM4NTYzIDYuNTEyNjcgMy41NjY0NiA2LjM4NTMzIDMuNjI3OTUgNi4xOTQwNUMzLjY4OTQzIDYuMDAyNzcgMy42MTY2NiA1Ljc5MzkxIDMuNDQ5NjMgNS42ODIyNEMyLjg2NTIzIDUuMjkxNTUgMi40ODExNiA0LjYyNDY0IDIuNDgxMTYgMy44Njk1OEMyLjQ4MTE2IDMuNzAyMTMgMi40ODM1MiAzLjU1MjY4IDIuNDkzNTUgMy40MTcxOUMzLjg1MTE1IDQuNzk5MTMgNS43MDg3MyA1LjY4OTMxIDcuNzc1ODggNS43OTMzOEM3LjkzMjI1IDUuODAxMjYgOC4wODMyOCA1LjczNTQzIDguMTgzOTUgNS42MTU1M0M4LjI4NDYzIDUuNDk1NjIgOC4zMjMzMiA1LjMzNTQ4IDguMjg4NTEgNS4xODI4NEM4LjI1MjU1IDUuMDI1MTcgOC4yMzMzNiA0Ljg2Mjg0IDguMjMzMzYgNC42OTYyOUM4LjIzMzM2IDMuNTIwODUgOS4xODU5MSAyLjU2ODU3IDEwLjM2IDIuNTY4NTdDMTEuNTk0MyAyLjU2ODU3IDEyLjQ5NTYgMy43MTIwOCAxMi40OTU2IDUuMDAwNzlDMTIuNDk1NiA4LjI1NzA5IDEwLjAyMDIgMTEuOTc0NiA1LjUyMTIyIDExLjk3NDZaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0TSA9IFtcImNvbG9yXCJdO1xudmFyIFVuZGVybGluZUljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNE0pO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk01LjAwMDAxIDIuNzVDNS4wMDAwMSAyLjQ3Mzg2IDQuNzc2MTUgMi4yNSA0LjUwMDAxIDIuMjVDNC4yMjM4NyAyLjI1IDQuMDAwMDEgMi40NzM4NiA0LjAwMDAxIDIuNzVWOC4wNUM0LjAwMDAxIDkuOTgzIDUuNTY3MDIgMTEuNTUgNy41MDAwMSAxMS41NUM5LjQzMzAxIDExLjU1IDExIDkuOTgzIDExIDguMDVWMi43NUMxMSAyLjQ3Mzg2IDEwLjc3NjIgMi4yNSAxMC41IDIuMjVDMTAuMjIzOSAyLjI1IDEwIDIuNDczODYgMTAgMi43NVY4LjA1QzEwIDkuNDMwNzEgOC44ODA3MiAxMC41NSA3LjUwMDAxIDEwLjU1QzYuMTE5MyAxMC41NSA1LjAwMDAxIDkuNDMwNzEgNS4wMDAwMSA4LjA1VjIuNzVaTTMuNDk5OTggMTMuMTAwMUMzLjI3OTA2IDEzLjEwMDEgMy4wOTk5OCAxMy4yNzkxIDMuMDk5OTggMTMuNTAwMUMzLjA5OTk4IDEzLjcyMSAzLjI3OTA2IDEzLjkwMDEgMy40OTk5OCAxMy45MDAxSDExLjVDMTEuNzIwOSAxMy45MDAxIDExLjkgMTMuNzIxIDExLjkgMTMuNTAwMUMxMS45IDEzLjI3OTEgMTEuNzIwOSAxMy4xMDAxIDExLjUgMTMuMTAwMUgzLjQ5OTk4WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNE4gPSBbXCJjb2xvclwiXTtcbnZhciBVcGRhdGVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDROKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMS45MDMyMSA3LjI5Njc3QzEuOTAzMjEgMTAuMzQxIDQuMTEwNDEgMTIuNDE0NyA2LjU4ODkzIDEyLjg0MzlDNi44NzI1NSAxMi44OTMgNy4wNjI2NiAxMy4xNjI3IDcuMDEzNTUgMTMuNDQ2NEM2Ljk2NDQ0IDEzLjczIDYuNjk0NzEgMTMuOTIwMSA2LjQxMTA5IDEzLjg3MUMzLjQ5OTQyIDEzLjM2NjggMC44NjA4NCAxMC45MTI3IDAuODYwODQgNy4yOTY3N0MwLjg2MDgzOSA1Ljc2MDA5IDEuNTU5OTYgNC41NTI0NSAyLjM3NjM5IDMuNjMzNzdDMi45NjEyNCAyLjk3NTY4IDMuNjMwMzQgMi40NDEzNSA0LjE2ODQ2IDIuMDMyMDJMMi41MzIwNSAyLjAzMjAyQzIuMjU1OTEgMi4wMzIwMiAyLjAzMjA1IDEuODA4MTYgMi4wMzIwNSAxLjUzMjAyQzIuMDMyMDUgMS4yNTU4OCAyLjI1NTkxIDEuMDMyMDIgMi41MzIwNSAxLjAzMjAyTDUuNTMyMDUgMS4wMzIwMkM1LjgwODE5IDEuMDMyMDIgNi4wMzIwNSAxLjI1NTg4IDYuMDMyMDUgMS41MzIwMkw2LjAzMjA1IDQuNTMyMDJDNi4wMzIwNSA0LjgwODE2IDUuODA4MTkgNS4wMzIwMiA1LjUzMjA1IDUuMDMyMDJDNS4yNTU5MSA1LjAzMjAyIDUuMDMyMDUgNC44MDgxNiA1LjAzMjA1IDQuNTMyMDJMNS4wMzIwNSAyLjY4NjQ1TDUuMDMwNTQgMi42ODc1OUw1LjAzMDQ1IDIuNjg3NjZMNS4wMzA0NCAyLjY4NzY3TDUuMDMwNDMgMi42ODc2N0M0LjQ1ODk2IDMuMTE4NjggMy43NjA1OSAzLjY0NTM4IDMuMTU1NTQgNC4zMjYyQzIuNDQxMDIgNS4xMzAyMSAxLjkwMzIxIDYuMTAxNTQgMS45MDMyMSA3LjI5Njc3Wk0xMy4wMTA5IDcuNzAzMjFDMTMuMDEwOSA0LjY5MTE1IDEwLjg1MDUgMi42Mjk2IDguNDAzODQgMi4xNzAyOUM4LjEyMDkzIDIuMTE3MTggNy45MzQ2NSAxLjg0NDc5IDcuOTg3NzYgMS41NjE4OEM4LjA0MDg3IDEuMjc4OTggOC4zMTMyNiAxLjA5MjcgOC41OTYxNiAxLjE0NTgxQzExLjQ3MDQgMS42ODU0MSAxNC4wNTMyIDQuMTI2MDUgMTQuMDUzMiA3LjcwMzIxQzE0LjA1MzIgOS4yMzk4OCAxMy4zNTQxIDEwLjQ0NzUgMTIuNTM3NyAxMS4zNjYyQzExLjk1MjggMTIuMDI0MyAxMS4yODM3IDEyLjU1ODYgMTAuNzQ1NiAxMi45NjhMMTIuMzgyMSAxMi45NjhDMTIuNjU4MiAxMi45NjggMTIuODgyMSAxMy4xOTE4IDEyLjg4MjEgMTMuNDY4QzEyLjg4MjEgMTMuNzQ0MSAxMi42NTgyIDEzLjk2OCAxMi4zODIxIDEzLjk2OEw5LjM4MjA1IDEzLjk2OEM5LjEwNTkxIDEzLjk2OCA4Ljg4MjA1IDEzLjc0NDEgOC44ODIwNSAxMy40NjhMOC44ODIwNSAxMC40NjhDOC44ODIwNSAxMC4xOTE4IDkuMTA1OTEgOS45Njc5NiA5LjM4MjA1IDkuOTY3OTZDOS42NTgxOSA5Ljk2Nzk2IDkuODgyMDUgMTAuMTkxOCA5Ljg4MjA1IDEwLjQ2OEw5Ljg4MjA1IDEyLjMxMzVMOS44ODM2MiAxMi4zMTIzQzEwLjQ1NTEgMTEuODgxMyAxMS4xNTM1IDExLjM1NDYgMTEuNzU4NSAxMC42NzM4QzEyLjQ3MzEgOS44Njk3NiAxMy4wMTA5IDguODk4NDQgMTMuMDEwOSA3LjcwMzIxWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNE8gPSBbXCJjb2xvclwiXTtcbnZhciBVcGxvYWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRPKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNy44MTgyNSAxLjE4MTg4QzcuNjQyNTEgMS4wMDYxNSA3LjM1NzU5IDEuMDA2MTUgNy4xODE4NSAxLjE4MTg4TDQuMTgxODUgNC4xODE4OEM0LjAwNjExIDQuMzU3NjIgNC4wMDYxMSA0LjY0MjU0IDQuMTgxODUgNC44MTgyOEM0LjM1NzU5IDQuOTk0MDEgNC42NDI1MSA0Ljk5NDAxIDQuODE4MjUgNC44MTgyOEw3LjA1MDA1IDIuNTg2NDhWOS40OTk5NkM3LjA1MDA1IDkuNzQ4NDkgNy4yNTE1MiA5Ljk0OTk2IDcuNTAwMDUgOS45NDk5NkM3Ljc0ODU4IDkuOTQ5OTYgNy45NTAwNSA5Ljc0ODQ5IDcuOTUwMDUgOS40OTk5NlYyLjU4NjQ4TDEwLjE4MTkgNC44MTgyOEMxMC4zNTc2IDQuOTk0MDEgMTAuNjQyNSA0Ljk5NDAxIDEwLjgxODIgNC44MTgyOEMxMC45OTQgNC42NDI1NCAxMC45OTQgNC4zNTc2MiAxMC44MTgyIDQuMTgxODhMNy44MTgyNSAxLjE4MTg4Wk0yLjUgOS45OTk5N0MyLjc3NjE0IDkuOTk5OTcgMyAxMC4yMjM4IDMgMTAuNVYxMkMzIDEyLjU1MzggMy40NDU2NSAxMyAzLjk5NjM1IDEzSDExLjAwMTJDMTEuNTUyOSAxMyAxMiAxMi41NTI4IDEyIDEyVjEwLjVDMTIgMTAuMjIzOCAxMi4yMjM5IDkuOTk5OTcgMTIuNSA5Ljk5OTk3QzEyLjc3NjEgOS45OTk5NyAxMyAxMC4yMjM4IDEzIDEwLjVWMTJDMTMgMTMuMTA0IDEyLjEwNjIgMTQgMTEuMDAxMiAxNEgzLjk5NjM1QzIuODkwMTkgMTQgMiAxMy4xMDMgMiAxMlYxMC41QzIgMTAuMjIzOCAyLjIyMzg2IDkuOTk5OTcgMi41IDkuOTk5OTdaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0UCA9IFtcImNvbG9yXCJdO1xudmFyIFZhbHVlSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0UCk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTAuODc3MDc1IDcuNDk5ODhDMC44NzcwNzUgMy44NDIxOSAzLjg0MjIyIDAuODc3MDQ1IDcuNDk5OTEgMC44NzcwNDVDMTEuMTU3NiAwLjg3NzA0NSAxNC4xMjI3IDMuODQyMTkgMTQuMTIyNyA3LjQ5OTg4QzE0LjEyMjcgMTEuMTU3NSAxMS4xNTc2IDE0LjEyMjcgNy40OTk5MSAxNC4xMjI3QzMuODQyMjIgMTQuMTIyNyAwLjg3NzA3NSAxMS4xNTc1IDAuODc3MDc1IDcuNDk5ODhaTTcuNDk5OTEgMS44MjcwNEM0LjM2Njg5IDEuODI3MDQgMS44MjcwOCA0LjM2Njg2IDEuODI3MDggNy40OTk4OEMxLjgyNzA4IDEwLjYzMjkgNC4zNjY4OSAxMy4xNzI3IDcuNDk5OTEgMTMuMTcyN0MxMC42MzI5IDEzLjE3MjcgMTMuMTcyNyAxMC42MzI5IDEzLjE3MjcgNy40OTk4OEMxMy4xNzI3IDQuMzY2ODYgMTAuNjMyOSAxLjgyNzA0IDcuNDk5OTEgMS44MjcwNFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRRID0gW1wiY29sb3JcIl07XG52YXIgVmFsdWVOb25lSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0USk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5ODUgMC44NzcwNDVDMy44NDIxNiAwLjg3NzA0NSAwLjg3NzAxNCAzLjg0MjE5IDAuODc3MDE0IDcuNDk5ODhDMC44NzcwMTQgOS4xNDg4IDEuNDc5NjMgMTAuNjU3IDIuNDc2NjUgMTEuODE2MkwxLjY0NjQzIDEyLjY0NjRDMS40NTExNyAxMi44NDE3IDEuNDUxMTcgMTMuMTU4MyAxLjY0NjQzIDEzLjM1MzVDMS44NDE3IDEzLjU0ODggMi4xNTgyOCAxMy41NDg4IDIuMzUzNTQgMTMuMzUzNUwzLjE4Mzc3IDEyLjUyMzNDNC4zNDI5NiAxMy41MjAyIDUuODUxMDQgMTQuMTIyNyA3LjQ5OTg1IDE0LjEyMjdDMTEuMTU3NSAxNC4xMjI3IDE0LjEyMjcgMTEuMTU3NSAxNC4xMjI3IDcuNDk5ODhDMTQuMTIyNyA1Ljg1MTA3IDEzLjUyMDIgNC4zNDI5OSAxMi41MjMzIDMuMTgzOEwxMy4zNTM1IDIuMzUzNTRDMTMuNTQ4OCAyLjE1ODI3IDEzLjU0ODggMS44NDE2OSAxMy4zNTM1IDEuNjQ2NDNDMTMuMTU4MyAxLjQ1MTE3IDEyLjg0MTcgMS40NTExNyAxMi42NDY0IDEuNjQ2NDNMMTEuODE2MiAyLjQ3NjY4QzEwLjY1NyAxLjQ3OTY2IDkuMTQ4NzcgMC44NzcwNDUgNy40OTk4NSAwLjg3NzA0NVpNMTEuMTQyMiAzLjE1MDY2QzEwLjE1NjcgMi4zMjQ0OSA4Ljg4NjM5IDEuODI3MDQgNy40OTk4NSAxLjgyNzA0QzQuMzY2ODMgMS44MjcwNCAxLjgyNzAxIDQuMzY2ODYgMS44MjcwMSA3LjQ5OTg4QzEuODI3MDEgOC44ODY0MiAyLjMyNDQ2IDEwLjE1NjggMy4xNTA2MyAxMS4xNDIyTDExLjE0MjIgMy4xNTA2NlpNMy44NTc3NiAxMS44NDkzQzQuODQzMTcgMTIuNjc1MyA2LjExMzQzIDEzLjE3MjcgNy40OTk4NSAxMy4xNzI3QzEwLjYzMjggMTMuMTcyNyAxMy4xNzI3IDEwLjYzMjkgMTMuMTcyNyA3LjQ5OTg4QzEzLjE3MjcgNi4xMTM0NiAxMi42NzUzIDQuODQzMiAxMS44NDkzIDMuODU3NzlMMy44NTc3NiAxMS44NDkzWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNFIgPSBbXCJjb2xvclwiXTtcbnZhciBWZXJjZWxMb2dvSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0Uik7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTcuNDk5OTggMUw2LjkyMzIxIDIuMDAzMDdMMS4xNzQ5OCAxMkwwLjU5OTk3NiAxM0gxLjc1MzVIMTMuMjQ2NEgxNC40TDEzLjgyNSAxMkw4LjA3Njc0IDIuMDAzMDdMNy40OTk5OCAxWk03LjQ5OTk4IDMuMDA2MTNMMi4zMjg1IDEySDEyLjY3MTRMNy40OTk5OCAzLjAwNjEzWlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNFMgPSBbXCJjb2xvclwiXTtcbnZhciBWaWRlb0ljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNFMpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk00Ljc2NDQ3IDMuMTIxOTlDNS42MzE1MSAzLjA0ODU5IDYuNTYwODIgMyA3LjUgM0M4LjQzOTE4IDMgOS4zNjg0OSAzLjA0ODU5IDEwLjIzNTUgMy4xMjE5OUMxMS4yNzk2IDMuMjEwMzcgMTEuOTU1MyAzLjI3MDA4IDEyLjQ3MiAzLjM5MjAzQzEyLjk0MjUgMy41MDMwNCAxMy4yMDQ4IDMuNjQ5NzYgMTMuNDMwNiAzLjg4MDg2QzEzLjQ1NTMgMy45MDYxOCAxMy40OTAyIDMuOTQ0MTQgMTMuNTEzMyAzLjk3MDkyQzEzLjcxMjYgNC4yMDE0OSAxMy44NDM1IDQuNDg4NyAxMy45MTggNS4wMzI4M0MxMy45OTc4IDUuNjE1NiAxNCA2LjM3NjQ0IDE0IDcuNTI0OTNDMTQgOC42NjAyNiAxMy45OTc4IDkuNDEwMTkgMTMuOTE4MSA5Ljk4NTM4QzEzLjg0MzkgMTAuNTIwNiAxMy43MTM3IDEwLjgwNjEgMTMuNTEyNSAxMS4wMzg3QzEzLjQ4OTYgMTEuMDY1MSAxMy40NTQxIDExLjEwMzggMTMuNDI5NiAxMS4xMjg3QzEzLjIwMDkgMTEuMzYyNSAxMi45NDA2IDExLjUwNzYgMTIuNDgxOCAxMS42MTY0QzExLjk3NTIgMTEuNzM2NSAxMS4zMTQzIDExLjc5NDIgMTAuMjg3OCAxMS44Nzk3QzkuNDE5NDggMTEuOTUyMSA4LjQ3NTY2IDEyIDcuNSAxMkM2LjUyNDM0IDEyIDUuNTgwNTIgMTEuOTUyMSA0LjcxMjIgMTEuODc5N0MzLjY4NTcyIDExLjc5NDIgMy4wMjQ3NyAxMS43MzY1IDIuNTE4MTYgMTEuNjE2NEMyLjA1OTM2IDExLjUwNzYgMS43OTkxIDExLjM2MjUgMS41NzAzNyAxMS4xMjg3QzEuNTQ1OTMgMTEuMTAzOCAxLjUxMDM1IDExLjA2NTEgMS40ODc0OCAxMS4wMzg3QzEuMjg2MjggMTAuODA2MSAxLjE1NjEyIDEwLjUyMDYgMS4wODE5MyA5Ljk4NTM4QzEuMDAyMjEgOS40MTAxOSAxIDguNjYwMjYgMSA3LjUyNDkzQzEgNi4zNzY0NCAxLjAwMjE2IDUuNjE1NiAxLjA4MiA1LjAzMjgzQzEuMTU2NTQgNC40ODg3IDEuMjg3NDQgNC4yMDE0OSAxLjQ4NjY2IDMuOTcwOTJDMS41MDk4IDMuOTQ0MTQgMS41NDQ2OCAzLjkwNjE4IDEuNTY5NDIgMy44ODA4NkMxLjc5NTIgMy42NDk3NiAyLjA1NzUyIDMuNTAzMDQgMi41Mjc5NiAzLjM5MjAzQzMuMDQ0NzMgMy4yNzAwOCAzLjcyMDQgMy4yMTAzNyA0Ljc2NDQ3IDMuMTIxOTlaTTAgNy41MjQ5M0MwIDUuMjgyOTYgMCA0LjE2MTk4IDAuNzI5OTg1IDMuMzE3MTNDMC43NjY0NTcgMy4yNzQ5MSAwLjgxNTEzOSAzLjIyMTk0IDAuODU0MTIzIDMuMTgyMDRDMS42MzQzOSAyLjM4MzM5IDIuNjQ5NjMgMi4yOTc0NCA0LjY4MDEyIDIuMTI1NTVDNS41NjkyMyAyLjA1MDI4IDYuNTI3MjQgMiA3LjUgMkM4LjQ3Mjc2IDIgOS40MzA3NyAyLjA1MDI4IDEwLjMxOTkgMi4xMjU1NUMxMi4zNTA0IDIuMjk3NDQgMTMuMzY1NiAyLjM4MzM5IDE0LjE0NTkgMy4xODIwNEMxNC4xODQ5IDMuMjIxOTQgMTQuMjMzNSAzLjI3NDkxIDE0LjI3IDMuMzE3MTNDMTUgNC4xNjE5OCAxNSA1LjI4Mjk2IDE1IDcuNTI0OTNDMTUgOS43NDAxMiAxNSAxMC44NDc3IDE0LjI2ODggMTEuNjkyOUMxNC4yMzI2IDExLjczNDggMTQuMTgzMiAxMS43ODg1IDE0LjE0NDQgMTEuODI4MUMxMy4zNjI5IDEyLjYyNjkgMTIuMzY1NSAxMi43MSAxMC4zNzA5IDEyLjg3NjNDOS40Nzk3MSAxMi45NTA1IDguNTA3ODIgMTMgNy41IDEzQzYuNDkyMTggMTMgNS41MjAyOCAxMi45NTA1IDQuNjI5MTUgMTIuODc2M0MyLjYzNDQ2IDEyLjcxIDEuNjM3MTIgMTIuNjI2OSAwLjg1NTU1OCAxMS44MjgxQzAuODE2ODQ0IDExLjc4ODUgMC43Njc0NDIgMTEuNzM0OCAwLjczMTIyMSAxMS42OTI5QzAgMTAuODQ3NyAwIDkuNzQwMTIgMCA3LjUyNDkzWk01LjI1IDUuMzgyNjRDNS4yNSA1LjIwMjI1IDUuNDM1MjIgNS4wODEyNCA1LjYwMDQxIDUuMTUzNjlMMTAuNDI4IDcuMjcxMDVDMTAuNjI3NCA3LjM1ODUzIDEwLjYyNzQgNy42NDE0NyAxMC40MjggNy43Mjg5NUw1LjYwMDQxIDkuODQ2MzFDNS40MzUyMiA5LjkxODc2IDUuMjUgOS43OTc3NSA1LjI1IDkuNjE3MzZWNS4zODI2NFpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRUID0gW1wiY29sb3JcIl07XG52YXIgVmlld0dyaWRJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRUKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNNyAySDEuNUMxLjIyMzg2IDIgMSAyLjIyMzg2IDEgMi41VjdIN1YyWk04IDJWN0gxNFYyLjVDMTQgMi4yMjM4NiAxMy43NzYxIDIgMTMuNSAySDhaTTcgOEgxVjEyLjVDMSAxMi43NzYxIDEuMjIzODYgMTMgMS41IDEzSDdWOFpNOCAxM1Y4SDE0VjEyLjVDMTQgMTIuNzc2MSAxMy43NzYxIDEzIDEzLjUgMTNIOFpNMS41IDFDMC42NzE1NzMgMSAwIDEuNjcxNTcgMCAyLjVWMTIuNUMwIDEzLjMyODQgMC42NzE1NzMgMTQgMS41IDE0SDEzLjVDMTQuMzI4NCAxNCAxNSAxMy4zMjg0IDE1IDEyLjVWMi41QzE1IDEuNjcxNTcgMTQuMzI4NCAxIDEzLjUgMUgxLjVaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0VSA9IFtcImNvbG9yXCJdO1xudmFyIFZpZXdIb3Jpem9udGFsSWNvbiA9IC8qI19fUFVSRV9fKi9mb3J3YXJkUmVmKGZ1bmN0aW9uIChfcmVmLCBmb3J3YXJkZWRSZWYpIHtcbiAgdmFyIF9yZWYkY29sb3IgPSBfcmVmLmNvbG9yLFxuICAgICAgY29sb3IgPSBfcmVmJGNvbG9yID09PSB2b2lkIDAgPyAnY3VycmVudENvbG9yJyA6IF9yZWYkY29sb3IsXG4gICAgICBwcm9wcyA9IF9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlKF9yZWYsIF9leGNsdWRlZCQ0VSk7XG5cbiAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwgT2JqZWN0LmFzc2lnbih7XG4gICAgd2lkdGg6IFwiMTVcIixcbiAgICBoZWlnaHQ6IFwiMTVcIixcbiAgICB2aWV3Qm94OiBcIjAgMCAxNSAxNVwiLFxuICAgIGZpbGw6IFwibm9uZVwiLFxuICAgIHhtbG5zOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgfSwgcHJvcHMsIHtcbiAgICByZWY6IGZvcndhcmRlZFJlZlxuICB9KSwgY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgIGQ6IFwiTTEuNSAySDEzLjVDMTMuNzc2MSAyIDE0IDIuMjIzODYgMTQgMi41VjdIMVYyLjVDMSAyLjIyMzg2IDEuMjIzODYgMiAxLjUgMlpNMSA4VjEyLjVDMSAxMi43NzYxIDEuMjIzODYgMTMgMS41IDEzSDEzLjVDMTMuNzc2MSAxMyAxNCAxMi43NzYxIDE0IDEyLjVWOEgxWk0wIDIuNUMwIDEuNjcxNTcgMC42NzE1NzMgMSAxLjUgMUgxMy41QzE0LjMyODQgMSAxNSAxLjY3MTU3IDE1IDIuNVYxMi41QzE1IDEzLjMyODQgMTQuMzI4NCAxNCAxMy41IDE0SDEuNUMwLjY3MTU3MyAxNCAwIDEzLjMyODQgMCAxMi41VjIuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRWID0gW1wiY29sb3JcIl07XG52YXIgVmlld05vbmVJY29uID0gLyojX19QVVJFX18qL2ZvcndhcmRSZWYoZnVuY3Rpb24gKF9yZWYsIGZvcndhcmRlZFJlZikge1xuICB2YXIgX3JlZiRjb2xvciA9IF9yZWYuY29sb3IsXG4gICAgICBjb2xvciA9IF9yZWYkY29sb3IgPT09IHZvaWQgMCA/ICdjdXJyZW50Q29sb3InIDogX3JlZiRjb2xvcixcbiAgICAgIHByb3BzID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UoX3JlZiwgX2V4Y2x1ZGVkJDRWKTtcblxuICByZXR1cm4gY3JlYXRlRWxlbWVudChcInN2Z1wiLCBPYmplY3QuYXNzaWduKHtcbiAgICB3aWR0aDogXCIxNVwiLFxuICAgIGhlaWdodDogXCIxNVwiLFxuICAgIHZpZXdCb3g6IFwiMCAwIDE1IDE1XCIsXG4gICAgZmlsbDogXCJub25lXCIsXG4gICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICB9LCBwcm9wcywge1xuICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gIH0pLCBjcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgZDogXCJNMTQgMi41ODcxMUwxLjg1MTYzIDEzSDEzLjVDMTMuNzc2MSAxMyAxNCAxMi43NzYxIDE0IDEyLjVWMi41ODcxMVpNMC43NjI4NzkgMTMuODA2N0wwLjgyNTM5NiAxMy44Nzk2TDAuODU0NzE3IDEzLjg1NDVDMS4wNTAxNyAxMy45NDc4IDEuMjY4OTkgMTQgMS41IDE0SDEzLjVDMTQuMzI4NCAxNCAxNSAxMy4zMjg0IDE1IDEyLjVWMi41QzE1IDEuOTM5NDkgMTQuNjkyNiAxLjQ1MDc4IDE0LjIzNzEgMS4xOTMzMUwxNC4xNzQ2IDEuMTIwMzdMMTQuMTQ1MyAxLjE0NTVDMTMuOTQ5OCAxLjA1MjIyIDEzLjczMSAxIDEzLjUgMUgxLjVDMC42NzE1NzMgMSAwIDEuNjcxNTcgMCAyLjVWMTIuNUMwIDEzLjA2MDUgMC4zMDc0MzUgMTMuNTQ5MiAwLjc2Mjg3OSAxMy44MDY3Wk0xIDEyLjQxMjlMMTMuMTQ4NCAySDEuNUMxLjIyMzg2IDIgMSAyLjIyMzg2IDEgMi41VjEyLjQxMjlaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0VyA9IFtcImNvbG9yXCJdO1xudmFyIFZpZXdWZXJ0aWNhbEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNFcpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk04IDJIMTMuNUMxMy43NzYxIDIgMTQgMi4yMjM4NiAxNCAyLjVWMTIuNUMxNCAxMi43NzYxIDEzLjc3NjEgMTMgMTMuNSAxM0g4VjJaTTcgMkgxLjVDMS4yMjM4NiAyIDEgMi4yMjM4NiAxIDIuNVYxMi41QzEgMTIuNzc2MSAxLjIyMzg2IDEzIDEuNSAxM0g3VjJaTTAgMi41QzAgMS42NzE1NyAwLjY3MTU3MyAxIDEuNSAxSDEzLjVDMTQuMzI4NCAxIDE1IDEuNjcxNTcgMTUgMi41VjEyLjVDMTUgMTMuMzI4NCAxNC4zMjg0IDE0IDEzLjUgMTRIMS41QzAuNjcxNTczIDE0IDAgMTMuMzI4NCAwIDEyLjVWMi41WlwiLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcbiAgICBjbGlwUnVsZTogXCJldmVub2RkXCJcbiAgfSkpO1xufSk7XG5cbnZhciBfZXhjbHVkZWQkNFggPSBbXCJjb2xvclwiXTtcbnZhciBXaWR0aEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNFgpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk00LjgxODEyIDQuNjgxNjFDNC45OTM4NiA0Ljg1NzM0IDQuOTkzODYgNS4xNDIyNyA0LjgxODEyIDUuMzE4TDMuMDg2MzIgNy4wNDk4SDExLjkxMzVMMTAuMTgxNyA1LjMxOEMxMC4wMDYgNS4xNDIyNyAxMC4wMDYgNC44NTczNCAxMC4xODE3IDQuNjgxNjFDMTAuMzU3NSA0LjUwNTg3IDEwLjY0MjQgNC41MDU4NyAxMC44MTgxIDQuNjgxNjFMMTMuMzE4MSA3LjE4MTYxQzEzLjQ5MzkgNy4zNTczNCAxMy40OTM5IDcuNjQyMjcgMTMuMzE4MSA3LjgxOEwxMC44MTgxIDEwLjMxOEMxMC42NDI0IDEwLjQ5MzcgMTAuMzU3NSAxMC40OTM3IDEwLjE4MTcgMTAuMzE4QzEwLjAwNiAxMC4xNDIzIDEwLjAwNiA5Ljg1NzM0IDEwLjE4MTcgOS42ODE2MUwxMS45MTM1IDcuOTQ5OEgzLjA4NjMyTDQuODE4MTIgOS42ODE2MUM0Ljk5Mzg2IDkuODU3MzQgNC45OTM4NiAxMC4xNDIzIDQuODE4MTIgMTAuMzE4QzQuNjQyMzkgMTAuNDkzNyA0LjM1NzQ2IDEwLjQ5MzcgNC4xODE3MyAxMC4zMThMMS42ODE3MyA3LjgxOEMxLjUwNTk5IDcuNjQyMjcgMS41MDU5OSA3LjM1NzM0IDEuNjgxNzMgNy4xODE2MUw0LjE4MTczIDQuNjgxNjFDNC4zNTc0NiA0LjUwNTg3IDQuNjQyMzkgNC41MDU4NyA0LjgxODEyIDQuNjgxNjFaXCIsXG4gICAgZmlsbDogY29sb3IsXG4gICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxuICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIlxuICB9KSk7XG59KTtcblxudmFyIF9leGNsdWRlZCQ0WSA9IFtcImNvbG9yXCJdO1xudmFyIFpvb21Jbkljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNFkpO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk0xMCA2LjVDMTAgOC40MzMgOC40MzMgMTAgNi41IDEwQzQuNTY3IDEwIDMgOC40MzMgMyA2LjVDMyA0LjU2NyA0LjU2NyAzIDYuNSAzQzguNDMzIDMgMTAgNC41NjcgMTAgNi41Wk05LjMwODg0IDEwLjAxNTlDOC41MzkwMSAxMC42MzE4IDcuNTYyNTEgMTEgNi41IDExQzQuMDE0NzIgMTEgMiA4Ljk4NTI4IDIgNi41QzIgNC4wMTQ3MiA0LjAxNDcyIDIgNi41IDJDOC45ODUyOCAyIDExIDQuMDE0NzIgMTEgNi41QzExIDcuNTYyNTEgMTAuNjMxOCA4LjUzOTAxIDEwLjAxNTkgOS4zMDg4NEwxMi44NTM2IDEyLjE0NjRDMTMuMDQ4OCAxMi4zNDE3IDEzLjA0ODggMTIuNjU4MyAxMi44NTM2IDEyLjg1MzZDMTIuNjU4MyAxMy4wNDg4IDEyLjM0MTcgMTMuMDQ4OCAxMi4xNDY0IDEyLjg1MzZMOS4zMDg4NCAxMC4wMTU5Wk00LjI1IDYuNUM0LjI1IDYuMjIzODYgNC40NzM4NiA2IDQuNzUgNkg2VjQuNzVDNiA0LjQ3Mzg2IDYuMjIzODYgNC4yNSA2LjUgNC4yNUM2Ljc3NjE0IDQuMjUgNyA0LjQ3Mzg2IDcgNC43NVY2SDguMjVDOC41MjYxNCA2IDguNzUgNi4yMjM4NiA4Ljc1IDYuNUM4Ljc1IDYuNzc2MTQgOC41MjYxNCA3IDguMjUgN0g3VjguMjVDNyA4LjUyNjE0IDYuNzc2MTQgOC43NSA2LjUgOC43NUM2LjIyMzg2IDguNzUgNiA4LjUyNjE0IDYgOC4yNVY3SDQuNzVDNC40NzM4NiA3IDQuMjUgNi43NzYxNCA0LjI1IDYuNVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG52YXIgX2V4Y2x1ZGVkJDRaID0gW1wiY29sb3JcIl07XG52YXIgWm9vbU91dEljb24gPSAvKiNfX1BVUkVfXyovZm9yd2FyZFJlZihmdW5jdGlvbiAoX3JlZiwgZm9yd2FyZGVkUmVmKSB7XG4gIHZhciBfcmVmJGNvbG9yID0gX3JlZi5jb2xvcixcbiAgICAgIGNvbG9yID0gX3JlZiRjb2xvciA9PT0gdm9pZCAwID8gJ2N1cnJlbnRDb2xvcicgOiBfcmVmJGNvbG9yLFxuICAgICAgcHJvcHMgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXNMb29zZShfcmVmLCBfZXhjbHVkZWQkNFopO1xuXG4gIHJldHVybiBjcmVhdGVFbGVtZW50KFwic3ZnXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgIHdpZHRoOiBcIjE1XCIsXG4gICAgaGVpZ2h0OiBcIjE1XCIsXG4gICAgdmlld0JveDogXCIwIDAgMTUgMTVcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gIH0sIHByb3BzLCB7XG4gICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgfSksIGNyZWF0ZUVsZW1lbnQoXCJwYXRoXCIsIHtcbiAgICBkOiBcIk02LjUgMTBDOC40MzMgMTAgMTAgOC40MzMgMTAgNi41QzEwIDQuNTY3IDguNDMzIDMgNi41IDNDNC41NjcgMyAzIDQuNTY3IDMgNi41QzMgOC40MzMgNC41NjcgMTAgNi41IDEwWk02LjUgMTFDNy41NjI1MSAxMSA4LjUzOTAxIDEwLjYzMTggOS4zMDg4NCAxMC4wMTU5TDEyLjE0NjQgMTIuODUzNkMxMi4zNDE3IDEzLjA0ODggMTIuNjU4MyAxMy4wNDg4IDEyLjg1MzYgMTIuODUzNkMxMy4wNDg4IDEyLjY1ODMgMTMuMDQ4OCAxMi4zNDE3IDEyLjg1MzYgMTIuMTQ2NEwxMC4wMTU5IDkuMzA4ODRDMTAuNjMxOCA4LjUzOTAxIDExIDcuNTYyNTEgMTEgNi41QzExIDQuMDE0NzIgOC45ODUyOCAyIDYuNSAyQzQuMDE0NzIgMiAyIDQuMDE0NzIgMiA2LjVDMiA4Ljk4NTI4IDQuMDE0NzIgMTEgNi41IDExWk00Ljc1IDZDNC40NzM4NiA2IDQuMjUgNi4yMjM4NiA0LjI1IDYuNUM0LjI1IDYuNzc2MTQgNC40NzM4NiA3IDQuNzUgN0g4LjI1QzguNTI2MTQgNyA4Ljc1IDYuNzc2MTQgOC43NSA2LjVDOC43NSA2LjIyMzg2IDguNTI2MTQgNiA4LjI1IDZINC43NVpcIixcbiAgICBmaWxsOiBjb2xvcixcbiAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXG4gICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiXG4gIH0pKTtcbn0pO1xuXG5leHBvcnQgeyBBY2Nlc3NpYmlsaXR5SWNvbiwgQWN0aXZpdHlMb2dJY29uLCBBbGlnbkJhc2VsaW5lSWNvbiwgQWxpZ25Cb3R0b21JY29uLCBBbGlnbkNlbnRlckhvcml6b250YWxseUljb24sIEFsaWduQ2VudGVyVmVydGljYWxseUljb24sIEFsaWduTGVmdEljb24sIEFsaWduUmlnaHRJY29uLCBBbGlnblRvcEljb24sIEFsbFNpZGVzSWNvbiwgQW5nbGVJY29uLCBBcmNoaXZlSWNvbiwgQXJyb3dCb3R0b21MZWZ0SWNvbiwgQXJyb3dCb3R0b21SaWdodEljb24sIEFycm93RG93bkljb24sIEFycm93TGVmdEljb24sIEFycm93UmlnaHRJY29uLCBBcnJvd1RvcExlZnRJY29uLCBBcnJvd1RvcFJpZ2h0SWNvbiwgQXJyb3dVcEljb24sIEFzcGVjdFJhdGlvSWNvbiwgQXZhdGFySWNvbiwgQmFja3BhY2tJY29uLCBCYWRnZUljb24sIEJhckNoYXJ0SWNvbiwgQmVsbEljb24sIEJsZW5kaW5nTW9kZUljb24sIEJvb2ttYXJrRmlsbGVkSWNvbiwgQm9va21hcmtJY29uLCBCb3JkZXJBbGxJY29uLCBCb3JkZXJCb3R0b21JY29uLCBCb3JkZXJEYXNoZWRJY29uLCBCb3JkZXJEb3R0ZWRJY29uLCBCb3JkZXJMZWZ0SWNvbiwgQm9yZGVyTm9uZUljb24sIEJvcmRlclJpZ2h0SWNvbiwgQm9yZGVyU29saWRJY29uLCBCb3JkZXJTcGxpdEljb24sIEJvcmRlclN0eWxlSWNvbiwgQm9yZGVyVG9wSWNvbiwgQm9yZGVyV2lkdGhJY29uLCBCb3hJY29uLCBCb3hNb2RlbEljb24sIEJ1dHRvbkljb24sIENhbGVuZGFySWNvbiwgQ2FtZXJhSWNvbiwgQ2FyZFN0YWNrSWNvbiwgQ2FyZFN0YWNrTWludXNJY29uLCBDYXJkU3RhY2tQbHVzSWNvbiwgQ2FyZXREb3duSWNvbiwgQ2FyZXRMZWZ0SWNvbiwgQ2FyZXRSaWdodEljb24sIENhcmV0U29ydEljb24sIENhcmV0VXBJY29uLCBDaGF0QnViYmxlSWNvbiwgQ2hlY2tDaXJjbGVkSWNvbiwgQ2hlY2tJY29uLCBDaGVja2JveEljb24sIENoZXZyb25Eb3duSWNvbiwgQ2hldnJvbkxlZnRJY29uLCBDaGV2cm9uUmlnaHRJY29uLCBDaGV2cm9uVXBJY29uLCBDaXJjbGVCYWNrc2xhc2hJY29uLCBDaXJjbGVJY29uLCBDbGlwYm9hcmRDb3B5SWNvbiwgQ2xpcGJvYXJkSWNvbiwgQ2xvY2tJY29uLCBDb2RlSWNvbiwgQ29kZVNhbmRib3hMb2dvSWNvbiwgQ29sb3JXaGVlbEljb24sIENvbHVtblNwYWNpbmdJY29uLCBDb2x1bW5zSWNvbiwgQ29tbWl0SWNvbiwgQ29tcG9uZW50MUljb24sIENvbXBvbmVudDJJY29uLCBDb21wb25lbnRCb29sZWFuSWNvbiwgQ29tcG9uZW50SW5zdGFuY2VJY29uLCBDb21wb25lbnROb25lSWNvbiwgQ29tcG9uZW50UGxhY2Vob2xkZXJJY29uLCBDb250YWluZXJJY29uLCBDb29raWVJY29uLCBDb3B5SWNvbiwgQ29ybmVyQm90dG9tTGVmdEljb24sIENvcm5lckJvdHRvbVJpZ2h0SWNvbiwgQ29ybmVyVG9wTGVmdEljb24sIENvcm5lclRvcFJpZ2h0SWNvbiwgQ29ybmVyc0ljb24sIENvdW50ZG93blRpbWVySWNvbiwgQ291bnRlckNsb2Nrd2lzZUNsb2NrSWNvbiwgQ3JvcEljb24sIENyb3NzMUljb24sIENyb3NzMkljb24sIENyb3NzQ2lyY2xlZEljb24sIENyb3NzaGFpcjFJY29uLCBDcm9zc2hhaXIySWNvbiwgQ3J1bXBsZWRQYXBlckljb24sIEN1YmVJY29uLCBDdXJzb3JBcnJvd0ljb24sIEN1cnNvclRleHRJY29uLCBEYXNoSWNvbiwgRGFzaGJvYXJkSWNvbiwgRGVza3RvcEljb24sIERpbWVuc2lvbnNJY29uLCBEaXNjSWNvbiwgRGlzY29yZExvZ29JY29uLCBEaXZpZGVySG9yaXpvbnRhbEljb24sIERpdmlkZXJWZXJ0aWNhbEljb24sIERvdEZpbGxlZEljb24sIERvdEljb24sIERvdHNIb3Jpem9udGFsSWNvbiwgRG90c1ZlcnRpY2FsSWNvbiwgRG91YmxlQXJyb3dEb3duSWNvbiwgRG91YmxlQXJyb3dMZWZ0SWNvbiwgRG91YmxlQXJyb3dSaWdodEljb24sIERvdWJsZUFycm93VXBJY29uLCBEb3dubG9hZEljb24sIERyYWdIYW5kbGVEb3RzMUljb24sIERyYWdIYW5kbGVEb3RzMkljb24sIERyYWdIYW5kbGVIb3Jpem9udGFsSWNvbiwgRHJhZ0hhbmRsZVZlcnRpY2FsSWNvbiwgRHJhd2luZ1BpbkZpbGxlZEljb24sIERyYXdpbmdQaW5JY29uLCBEcm9wZG93bk1lbnVJY29uLCBFbnRlckZ1bGxTY3JlZW5JY29uLCBFbnRlckljb24sIEVudmVsb3BlQ2xvc2VkSWNvbiwgRW52ZWxvcGVPcGVuSWNvbiwgRXJhc2VySWNvbiwgRXhjbGFtYXRpb25UcmlhbmdsZUljb24sIEV4aXRGdWxsU2NyZWVuSWNvbiwgRXhpdEljb24sIEV4dGVybmFsTGlua0ljb24sIEV5ZUNsb3NlZEljb24sIEV5ZU5vbmVJY29uLCBFeWVPcGVuSWNvbiwgRmFjZUljb24sIEZpZ21hTG9nb0ljb24sIEZpbGVJY29uLCBGaWxlTWludXNJY29uLCBGaWxlUGx1c0ljb24sIEZpbGVUZXh0SWNvbiwgRm9udEJvbGRJY29uLCBGb250RmFtaWx5SWNvbiwgRm9udEl0YWxpY0ljb24sIEZvbnRSb21hbkljb24sIEZvbnRTaXplSWNvbiwgRm9udFN0eWxlSWNvbiwgRnJhbWVJY29uLCBGcmFtZXJMb2dvSWNvbiwgR2Vhckljb24sIEdpdEh1YkxvZ29JY29uLCBHbG9iZUljb24sIEdyaWRJY29uLCBHcm91cEljb24sIEhhbGYxSWNvbiwgSGFsZjJJY29uLCBIYW1idXJnZXJNZW51SWNvbiwgSGFuZEljb24sIEhlYWRpbmdJY29uLCBIZWFydEZpbGxlZEljb24sIEhlYXJ0SWNvbiwgSGVpZ2h0SWNvbiwgSG9iYnlLbmlmZUljb24sIEhvbWVJY29uLCBJY29uSmFyTG9nb0ljb24sIElkQ2FyZEljb24sIEltYWdlSWNvbiwgSW5mb0NpcmNsZWRJY29uLCBJbnB1dEljb24sIEluc3RhZ3JhbUxvZ29JY29uLCBLZXlib2FyZEljb24sIExhcFRpbWVySWNvbiwgTGFwdG9wSWNvbiwgTGF5ZXJzSWNvbiwgTGF5b3V0SWNvbiwgTGV0dGVyQ2FzZUNhcGl0YWxpemVJY29uLCBMZXR0ZXJDYXNlTG93ZXJjYXNlSWNvbiwgTGV0dGVyQ2FzZVRvZ2dsZUljb24sIExldHRlckNhc2VVcHBlcmNhc2VJY29uLCBMZXR0ZXJTcGFjaW5nSWNvbiwgTGlnaHRuaW5nQm9sdEljb24sIExpbmVIZWlnaHRJY29uLCBMaW5rMUljb24sIExpbmsySWNvbiwgTGlua0JyZWFrMUljb24sIExpbmtCcmVhazJJY29uLCBMaW5rTm9uZTFJY29uLCBMaW5rTm9uZTJJY29uLCBMaW5rZWRJbkxvZ29JY29uLCBMaXN0QnVsbGV0SWNvbiwgTG9ja0Nsb3NlZEljb24sIExvY2tPcGVuMUljb24sIExvY2tPcGVuMkljb24sIExvb3BJY29uLCBNYWdpY1dhbmRJY29uLCBNYWduaWZ5aW5nR2xhc3NJY29uLCBNYXJnaW5JY29uLCBNYXNrT2ZmSWNvbiwgTWFza09uSWNvbiwgTWludXNDaXJjbGVkSWNvbiwgTWludXNJY29uLCBNaXhJY29uLCBNaXhlckhvcml6b250YWxJY29uLCBNaXhlclZlcnRpY2FsSWNvbiwgTW9iaWxlSWNvbiwgTW9kdWx6TG9nb0ljb24sIE1vb25JY29uLCBNb3ZlSWNvbiwgTm90aW9uTG9nb0ljb24sIE9wYWNpdHlJY29uLCBPcGVuSW5OZXdXaW5kb3dJY29uLCBPdmVybGluZUljb24sIFBhZGRpbmdJY29uLCBQYXBlclBsYW5lSWNvbiwgUGF1c2VJY29uLCBQZW5jaWwxSWNvbiwgUGVuY2lsMkljb24sIFBlcnNvbkljb24sIFBpZUNoYXJ0SWNvbiwgUGlsY3Jvd0ljb24sIFBpbkJvdHRvbUljb24sIFBpbkxlZnRJY29uLCBQaW5SaWdodEljb24sIFBpblRvcEljb24sIFBsYXlJY29uLCBQbHVzQ2lyY2xlZEljb24sIFBsdXNJY29uLCBRdWVzdGlvbk1hcmtDaXJjbGVkSWNvbiwgUXVlc3Rpb25NYXJrSWNvbiwgUXVvdGVJY29uLCBSYWRpb2J1dHRvbkljb24sIFJlYWRlckljb24sIFJlbG9hZEljb24sIFJlc2V0SWNvbiwgUmVzdW1lSWNvbiwgUm9ja2V0SWNvbiwgUm90YXRlQ291bnRlckNsb2Nrd2lzZUljb24sIFJvd1NwYWNpbmdJY29uLCBSb3dzSWNvbiwgUnVsZXJIb3Jpem9udGFsSWNvbiwgUnVsZXJTcXVhcmVJY29uLCBTY2lzc29yc0ljb24sIFNlY3Rpb25JY29uLCBTZXdpbmdQaW5GaWxsZWRJY29uLCBTZXdpbmdQaW5JY29uLCBTaGFkb3dJY29uLCBTaGFkb3dJbm5lckljb24sIFNoYWRvd05vbmVJY29uLCBTaGFkb3dPdXRlckljb24sIFNoYXJlMUljb24sIFNoYXJlMkljb24sIFNodWZmbGVJY29uLCBTaXplSWNvbiwgU2tldGNoTG9nb0ljb24sIFNsYXNoSWNvbiwgU2xpZGVySWNvbiwgU3BhY2VCZXR3ZWVuSG9yaXpvbnRhbGx5SWNvbiwgU3BhY2VCZXR3ZWVuVmVydGljYWxseUljb24sIFNwYWNlRXZlbmx5SG9yaXpvbnRhbGx5SWNvbiwgU3BhY2VFdmVubHlWZXJ0aWNhbGx5SWNvbiwgU3BlYWtlckxvdWRJY29uLCBTcGVha2VyTW9kZXJhdGVJY29uLCBTcGVha2VyT2ZmSWNvbiwgU3BlYWtlclF1aWV0SWNvbiwgU3F1YXJlSWNvbiwgU3RhY2tJY29uLCBTdGFyRmlsbGVkSWNvbiwgU3Rhckljb24sIFN0aXRjaGVzTG9nb0ljb24sIFN0b3BJY29uLCBTdG9wd2F0Y2hJY29uLCBTdHJldGNoSG9yaXpvbnRhbGx5SWNvbiwgU3RyZXRjaFZlcnRpY2FsbHlJY29uLCBTdHJpa2V0aHJvdWdoSWNvbiwgU3VuSWNvbiwgU3dpdGNoSWNvbiwgU3ltYm9sSWNvbiwgVGFibGVJY29uLCBUYXJnZXRJY29uLCBUZXh0QWxpZ25Cb3R0b21JY29uLCBUZXh0QWxpZ25DZW50ZXJJY29uLCBUZXh0QWxpZ25KdXN0aWZ5SWNvbiwgVGV4dEFsaWduTGVmdEljb24sIFRleHRBbGlnbk1pZGRsZUljb24sIFRleHRBbGlnblJpZ2h0SWNvbiwgVGV4dEFsaWduVG9wSWNvbiwgVGV4dEljb24sIFRleHROb25lSWNvbiwgVGhpY2tBcnJvd0Rvd25JY29uLCBUaGlja0Fycm93TGVmdEljb24sIFRoaWNrQXJyb3dSaWdodEljb24sIFRoaWNrQXJyb3dVcEljb24sIFRpbWVySWNvbiwgVG9rZW5zSWNvbiwgVHJhY2tOZXh0SWNvbiwgVHJhY2tQcmV2aW91c0ljb24sIFRyYW5zZm9ybUljb24sIFRyYW5zcGFyZW5jeUdyaWRJY29uLCBUcmFzaEljb24sIFRyaWFuZ2xlRG93bkljb24sIFRyaWFuZ2xlTGVmdEljb24sIFRyaWFuZ2xlUmlnaHRJY29uLCBUcmlhbmdsZVVwSWNvbiwgVHdpdHRlckxvZ29JY29uLCBVbmRlcmxpbmVJY29uLCBVcGRhdGVJY29uLCBVcGxvYWRJY29uLCBWYWx1ZUljb24sIFZhbHVlTm9uZUljb24sIFZlcmNlbExvZ29JY29uLCBWaWRlb0ljb24sIFZpZXdHcmlkSWNvbiwgVmlld0hvcml6b250YWxJY29uLCBWaWV3Tm9uZUljb24sIFZpZXdWZXJ0aWNhbEljb24sIFdpZHRoSWNvbiwgWm9vbUluSWNvbiwgWm9vbU91dEljb24gfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXJlYWN0LWljb25zLmVzbS5qcy5tYXBcbiJdLCJuYW1lcyI6WyJmb3J3YXJkUmVmIiwiY3JlYXRlRWxlbWVudCIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlIiwic291cmNlIiwiZXhjbHVkZWQiLCJ0YXJnZXQiLCJzb3VyY2VLZXlzIiwiT2JqZWN0Iiwia2V5cyIsImtleSIsImkiLCJsZW5ndGgiLCJpbmRleE9mIiwiX2V4Y2x1ZGVkIiwiQWNjZXNzaWJpbGl0eUljb24iLCJfcmVmIiwiZm9yd2FyZGVkUmVmIiwiX3JlZiRjb2xvciIsImNvbG9yIiwicHJvcHMiLCJhc3NpZ24iLCJ3aWR0aCIsImhlaWdodCIsInZpZXdCb3giLCJmaWxsIiwieG1sbnMiLCJyZWYiLCJkIiwiZmlsbFJ1bGUiLCJjbGlwUnVsZSIsIl9leGNsdWRlZCQxIiwiQWN0aXZpdHlMb2dJY29uIiwiX2V4Y2x1ZGVkJDIiLCJBbGlnbkJhc2VsaW5lSWNvbiIsIl9leGNsdWRlZCQzIiwiQWxpZ25Cb3R0b21JY29uIiwiX2V4Y2x1ZGVkJDQiLCJBbGlnbkNlbnRlckhvcml6b250YWxseUljb24iLCJfZXhjbHVkZWQkNSIsIkFsaWduQ2VudGVyVmVydGljYWxseUljb24iLCJfZXhjbHVkZWQkNiIsIkFsaWduTGVmdEljb24iLCJfZXhjbHVkZWQkNyIsIkFsaWduUmlnaHRJY29uIiwiX2V4Y2x1ZGVkJDgiLCJBbGlnblRvcEljb24iLCJfZXhjbHVkZWQkOSIsIkFsbFNpZGVzSWNvbiIsIl9leGNsdWRlZCRhIiwiQW5nbGVJY29uIiwiX2V4Y2x1ZGVkJGIiLCJBcmNoaXZlSWNvbiIsIl9leGNsdWRlZCRjIiwiQXJyb3dCb3R0b21MZWZ0SWNvbiIsIl9leGNsdWRlZCRkIiwiQXJyb3dCb3R0b21SaWdodEljb24iLCJfZXhjbHVkZWQkZSIsIkFycm93RG93bkljb24iLCJfZXhjbHVkZWQkZiIsIkFycm93TGVmdEljb24iLCJfZXhjbHVkZWQkZyIsIkFycm93UmlnaHRJY29uIiwiX2V4Y2x1ZGVkJGgiLCJBcnJvd1RvcExlZnRJY29uIiwiX2V4Y2x1ZGVkJGkiLCJBcnJvd1RvcFJpZ2h0SWNvbiIsIl9leGNsdWRlZCRqIiwiQXJyb3dVcEljb24iLCJfZXhjbHVkZWQkayIsIkFzcGVjdFJhdGlvSWNvbiIsIl9leGNsdWRlZCRsIiwiQXZhdGFySWNvbiIsIl9leGNsdWRlZCRtIiwiQmFja3BhY2tJY29uIiwiX2V4Y2x1ZGVkJG4iLCJCYWRnZUljb24iLCJfZXhjbHVkZWQkbyIsIkJhckNoYXJ0SWNvbiIsIl9leGNsdWRlZCRwIiwiQmVsbEljb24iLCJfZXhjbHVkZWQkcSIsIkJsZW5kaW5nTW9kZUljb24iLCJfZXhjbHVkZWQkciIsIkJvb2ttYXJrSWNvbiIsIl9leGNsdWRlZCRzIiwiQm9va21hcmtGaWxsZWRJY29uIiwiX2V4Y2x1ZGVkJHQiLCJCb3JkZXJBbGxJY29uIiwieCIsInkiLCJyeCIsIl9leGNsdWRlZCR1IiwiQm9yZGVyQm90dG9tSWNvbiIsIl9leGNsdWRlZCR2IiwiQm9yZGVyRGFzaGVkSWNvbiIsIl9leGNsdWRlZCR3IiwiQm9yZGVyRG90dGVkSWNvbiIsIl9leGNsdWRlZCR4IiwiQm9yZGVyTGVmdEljb24iLCJ0cmFuc2Zvcm0iLCJfZXhjbHVkZWQkeSIsIkJvcmRlck5vbmVJY29uIiwiX2V4Y2x1ZGVkJHoiLCJCb3JkZXJSaWdodEljb24iLCJfZXhjbHVkZWQkQSIsIkJvcmRlclNvbGlkSWNvbiIsIl9leGNsdWRlZCRCIiwiQm9yZGVyU3BsaXRJY29uIiwiX2V4Y2x1ZGVkJEMiLCJCb3JkZXJTdHlsZUljb24iLCJfZXhjbHVkZWQkRCIsIkJvcmRlclRvcEljb24iLCJfZXhjbHVkZWQkRSIsIkJvcmRlcldpZHRoSWNvbiIsIl9leGNsdWRlZCRGIiwiQm94SWNvbiIsIl9leGNsdWRlZCRHIiwiQm94TW9kZWxJY29uIiwiX2V4Y2x1ZGVkJEgiLCJCdXR0b25JY29uIiwiX2V4Y2x1ZGVkJEkiLCJDYWxlbmRhckljb24iLCJfZXhjbHVkZWQkSiIsIkNhbWVyYUljb24iLCJfZXhjbHVkZWQkSyIsIkNhcmRTdGFja0ljb24iLCJfZXhjbHVkZWQkTCIsIkNhcmRTdGFja01pbnVzSWNvbiIsIl9leGNsdWRlZCRNIiwiQ2FyZFN0YWNrUGx1c0ljb24iLCJfZXhjbHVkZWQkTiIsIkNhcmV0RG93bkljb24iLCJfZXhjbHVkZWQkTyIsIkNhcmV0TGVmdEljb24iLCJfZXhjbHVkZWQkUCIsIkNhcmV0UmlnaHRJY29uIiwiX2V4Y2x1ZGVkJFEiLCJDYXJldFNvcnRJY29uIiwiX2V4Y2x1ZGVkJFIiLCJDYXJldFVwSWNvbiIsIl9leGNsdWRlZCRTIiwiQ2hhdEJ1YmJsZUljb24iLCJfZXhjbHVkZWQkVCIsIkNoZWNrSWNvbiIsIl9leGNsdWRlZCRVIiwiQ2hlY2tDaXJjbGVkSWNvbiIsIl9leGNsdWRlZCRWIiwiQ2hlY2tib3hJY29uIiwiX2V4Y2x1ZGVkJFciLCJDaGV2cm9uRG93bkljb24iLCJfZXhjbHVkZWQkWCIsIkNoZXZyb25MZWZ0SWNvbiIsIl9leGNsdWRlZCRZIiwiQ2hldnJvblJpZ2h0SWNvbiIsIl9leGNsdWRlZCRaIiwiQ2hldnJvblVwSWNvbiIsIl9leGNsdWRlZCRfIiwiQ2lyY2xlSWNvbiIsIl9leGNsdWRlZCQkIiwiQ2lyY2xlQmFja3NsYXNoSWNvbiIsIl9leGNsdWRlZCQxMCIsIkNsaXBib2FyZEljb24iLCJfZXhjbHVkZWQkMTEiLCJDbGlwYm9hcmRDb3B5SWNvbiIsIl9leGNsdWRlZCQxMiIsIkNsb2NrSWNvbiIsIl9leGNsdWRlZCQxMyIsIkNvZGVJY29uIiwiX2V4Y2x1ZGVkJDE0IiwiQ29kZVNhbmRib3hMb2dvSWNvbiIsIl9leGNsdWRlZCQxNSIsIkNvbG9yV2hlZWxJY29uIiwiX2V4Y2x1ZGVkJDE2IiwiQ29sdW1uU3BhY2luZ0ljb24iLCJfZXhjbHVkZWQkMTciLCJDb2x1bW5zSWNvbiIsIl9leGNsdWRlZCQxOCIsIkNvbW1pdEljb24iLCJfZXhjbHVkZWQkMTkiLCJDb21wb25lbnQxSWNvbiIsIl9leGNsdWRlZCQxYSIsIkNvbXBvbmVudDJJY29uIiwiX2V4Y2x1ZGVkJDFiIiwiQ29tcG9uZW50Qm9vbGVhbkljb24iLCJfZXhjbHVkZWQkMWMiLCJDb21wb25lbnRJbnN0YW5jZUljb24iLCJfZXhjbHVkZWQkMWQiLCJDb21wb25lbnROb25lSWNvbiIsIl9leGNsdWRlZCQxZSIsIkNvbXBvbmVudFBsYWNlaG9sZGVySWNvbiIsIl9leGNsdWRlZCQxZiIsIkNvbnRhaW5lckljb24iLCJfZXhjbHVkZWQkMWciLCJDb29raWVJY29uIiwiX2V4Y2x1ZGVkJDFoIiwiQ29weUljb24iLCJfZXhjbHVkZWQkMWkiLCJDb3JuZXJCb3R0b21MZWZ0SWNvbiIsIl9leGNsdWRlZCQxaiIsIkNvcm5lckJvdHRvbVJpZ2h0SWNvbiIsIl9leGNsdWRlZCQxayIsIkNvcm5lclRvcExlZnRJY29uIiwiX2V4Y2x1ZGVkJDFsIiwiQ29ybmVyVG9wUmlnaHRJY29uIiwiX2V4Y2x1ZGVkJDFtIiwiQ29ybmVyc0ljb24iLCJfZXhjbHVkZWQkMW4iLCJDb3VudGRvd25UaW1lckljb24iLCJfZXhjbHVkZWQkMW8iLCJDb3VudGVyQ2xvY2t3aXNlQ2xvY2tJY29uIiwiX2V4Y2x1ZGVkJDFwIiwiQ3JvcEljb24iLCJfZXhjbHVkZWQkMXEiLCJDcm9zczFJY29uIiwiX2V4Y2x1ZGVkJDFyIiwiQ3Jvc3MySWNvbiIsIl9leGNsdWRlZCQxcyIsIkNyb3NzQ2lyY2xlZEljb24iLCJfZXhjbHVkZWQkMXQiLCJDcm9zc2hhaXIxSWNvbiIsIl9leGNsdWRlZCQxdSIsIkNyb3NzaGFpcjJJY29uIiwiX2V4Y2x1ZGVkJDF2IiwiQ3J1bXBsZWRQYXBlckljb24iLCJfZXhjbHVkZWQkMXciLCJDdWJlSWNvbiIsIl9leGNsdWRlZCQxeCIsIkN1cnNvckFycm93SWNvbiIsIl9leGNsdWRlZCQxeSIsIkN1cnNvclRleHRJY29uIiwiX2V4Y2x1ZGVkJDF6IiwiRGFzaEljb24iLCJfZXhjbHVkZWQkMUEiLCJEYXNoYm9hcmRJY29uIiwiX2V4Y2x1ZGVkJDFCIiwiRGVza3RvcEljb24iLCJfZXhjbHVkZWQkMUMiLCJEaW1lbnNpb25zSWNvbiIsIl9leGNsdWRlZCQxRCIsIkRpc2NJY29uIiwiX2V4Y2x1ZGVkJDFFIiwiRGlzY29yZExvZ29JY29uIiwiX2V4Y2x1ZGVkJDFGIiwiRGl2aWRlckhvcml6b250YWxJY29uIiwiX2V4Y2x1ZGVkJDFHIiwiRGl2aWRlclZlcnRpY2FsSWNvbiIsIl9leGNsdWRlZCQxSCIsIkRvdEljb24iLCJfZXhjbHVkZWQkMUkiLCJEb3RGaWxsZWRJY29uIiwiX2V4Y2x1ZGVkJDFKIiwiRG90c0hvcml6b250YWxJY29uIiwiX2V4Y2x1ZGVkJDFLIiwiRG90c1ZlcnRpY2FsSWNvbiIsIl9leGNsdWRlZCQxTCIsIkRvdWJsZUFycm93RG93bkljb24iLCJfZXhjbHVkZWQkMU0iLCJEb3VibGVBcnJvd0xlZnRJY29uIiwiX2V4Y2x1ZGVkJDFOIiwiRG91YmxlQXJyb3dSaWdodEljb24iLCJfZXhjbHVkZWQkMU8iLCJEb3VibGVBcnJvd1VwSWNvbiIsIl9leGNsdWRlZCQxUCIsIkRvd25sb2FkSWNvbiIsIl9leGNsdWRlZCQxUSIsIkRyYWdIYW5kbGVEb3RzMUljb24iLCJjeCIsImN5IiwiciIsIl9leGNsdWRlZCQxUiIsIkRyYWdIYW5kbGVEb3RzMkljb24iLCJfZXhjbHVkZWQkMVMiLCJEcmFnSGFuZGxlSG9yaXpvbnRhbEljb24iLCJfZXhjbHVkZWQkMVQiLCJEcmFnSGFuZGxlVmVydGljYWxJY29uIiwiX2V4Y2x1ZGVkJDFVIiwiRHJhd2luZ1Bpbkljb24iLCJfZXhjbHVkZWQkMVYiLCJEcmF3aW5nUGluRmlsbGVkSWNvbiIsIl9leGNsdWRlZCQxVyIsIkRyb3Bkb3duTWVudUljb24iLCJfZXhjbHVkZWQkMVgiLCJFbnRlckljb24iLCJfZXhjbHVkZWQkMVkiLCJFbnRlckZ1bGxTY3JlZW5JY29uIiwiX2V4Y2x1ZGVkJDFaIiwiRW52ZWxvcGVDbG9zZWRJY29uIiwiX2V4Y2x1ZGVkJDFfIiwiRW52ZWxvcGVPcGVuSWNvbiIsIl9leGNsdWRlZCQxJCIsIkVyYXNlckljb24iLCJfZXhjbHVkZWQkMjAiLCJFeGNsYW1hdGlvblRyaWFuZ2xlSWNvbiIsIl9leGNsdWRlZCQyMSIsIkV4aXRJY29uIiwiX2V4Y2x1ZGVkJDIyIiwiRXhpdEZ1bGxTY3JlZW5JY29uIiwiX2V4Y2x1ZGVkJDIzIiwiRXh0ZXJuYWxMaW5rSWNvbiIsIl9leGNsdWRlZCQyNCIsIkV5ZUNsb3NlZEljb24iLCJfZXhjbHVkZWQkMjUiLCJFeWVOb25lSWNvbiIsIl9leGNsdWRlZCQyNiIsIkV5ZU9wZW5JY29uIiwiX2V4Y2x1ZGVkJDI3IiwiRmFjZUljb24iLCJfZXhjbHVkZWQkMjgiLCJGaWdtYUxvZ29JY29uIiwiX2V4Y2x1ZGVkJDI5IiwiRmlsZUljb24iLCJfZXhjbHVkZWQkMmEiLCJGaWxlTWludXNJY29uIiwiX2V4Y2x1ZGVkJDJiIiwiRmlsZVBsdXNJY29uIiwiX2V4Y2x1ZGVkJDJjIiwiRmlsZVRleHRJY29uIiwiX2V4Y2x1ZGVkJDJkIiwiRm9udEJvbGRJY29uIiwiX2V4Y2x1ZGVkJDJlIiwiRm9udEZhbWlseUljb24iLCJfZXhjbHVkZWQkMmYiLCJGb250SXRhbGljSWNvbiIsIl9leGNsdWRlZCQyZyIsIkZvbnRSb21hbkljb24iLCJfZXhjbHVkZWQkMmgiLCJGb250U2l6ZUljb24iLCJfZXhjbHVkZWQkMmkiLCJGb250U3R5bGVJY29uIiwiX2V4Y2x1ZGVkJDJqIiwiRnJhbWVJY29uIiwiX2V4Y2x1ZGVkJDJrIiwiRnJhbWVyTG9nb0ljb24iLCJfZXhjbHVkZWQkMmwiLCJHZWFySWNvbiIsIl9leGNsdWRlZCQybSIsIkdpdEh1YkxvZ29JY29uIiwiX2V4Y2x1ZGVkJDJuIiwiR2xvYmVJY29uIiwiX2V4Y2x1ZGVkJDJvIiwiR3JpZEljb24iLCJfZXhjbHVkZWQkMnAiLCJHcm91cEljb24iLCJfZXhjbHVkZWQkMnEiLCJIYWxmMUljb24iLCJfZXhjbHVkZWQkMnIiLCJIYWxmMkljb24iLCJfZXhjbHVkZWQkMnMiLCJIYW1idXJnZXJNZW51SWNvbiIsIl9leGNsdWRlZCQydCIsIkhhbmRJY29uIiwiX2V4Y2x1ZGVkJDJ1IiwiSGVhZGluZ0ljb24iLCJfZXhjbHVkZWQkMnYiLCJIZWFydEljb24iLCJfZXhjbHVkZWQkMnciLCJIZWFydEZpbGxlZEljb24iLCJfZXhjbHVkZWQkMngiLCJIZWlnaHRJY29uIiwiX2V4Y2x1ZGVkJDJ5IiwiSG9iYnlLbmlmZUljb24iLCJfZXhjbHVkZWQkMnoiLCJIb21lSWNvbiIsIl9leGNsdWRlZCQyQSIsIkljb25KYXJMb2dvSWNvbiIsIl9leGNsdWRlZCQyQiIsIklkQ2FyZEljb24iLCJfZXhjbHVkZWQkMkMiLCJJbWFnZUljb24iLCJfZXhjbHVkZWQkMkQiLCJJbmZvQ2lyY2xlZEljb24iLCJfZXhjbHVkZWQkMkUiLCJJbnB1dEljb24iLCJfZXhjbHVkZWQkMkYiLCJJbnN0YWdyYW1Mb2dvSWNvbiIsIl9leGNsdWRlZCQyRyIsIktleWJvYXJkSWNvbiIsIl9leGNsdWRlZCQySCIsIkxhcFRpbWVySWNvbiIsIl9leGNsdWRlZCQySSIsIkxhcHRvcEljb24iLCJfZXhjbHVkZWQkMkoiLCJMYXllcnNJY29uIiwiX2V4Y2x1ZGVkJDJLIiwiTGF5b3V0SWNvbiIsIl9leGNsdWRlZCQyTCIsIkxldHRlckNhc2VDYXBpdGFsaXplSWNvbiIsIl9leGNsdWRlZCQyTSIsIkxldHRlckNhc2VMb3dlcmNhc2VJY29uIiwiX2V4Y2x1ZGVkJDJOIiwiTGV0dGVyQ2FzZVRvZ2dsZUljb24iLCJfZXhjbHVkZWQkMk8iLCJMZXR0ZXJDYXNlVXBwZXJjYXNlSWNvbiIsIl9leGNsdWRlZCQyUCIsIkxldHRlclNwYWNpbmdJY29uIiwiX2V4Y2x1ZGVkJDJRIiwiTGlnaHRuaW5nQm9sdEljb24iLCJfZXhjbHVkZWQkMlIiLCJMaW5lSGVpZ2h0SWNvbiIsIl9leGNsdWRlZCQyUyIsIkxpbmsxSWNvbiIsIl9leGNsdWRlZCQyVCIsIkxpbmsySWNvbiIsIl9leGNsdWRlZCQyVSIsIkxpbmtCcmVhazFJY29uIiwiX2V4Y2x1ZGVkJDJWIiwiTGlua0JyZWFrMkljb24iLCJfZXhjbHVkZWQkMlciLCJMaW5rTm9uZTFJY29uIiwiX2V4Y2x1ZGVkJDJYIiwiTGlua05vbmUySWNvbiIsIl9leGNsdWRlZCQyWSIsIkxpbmtlZEluTG9nb0ljb24iLCJfZXhjbHVkZWQkMloiLCJMaXN0QnVsbGV0SWNvbiIsIl9leGNsdWRlZCQyXyIsIkxvY2tDbG9zZWRJY29uIiwiX2V4Y2x1ZGVkJDIkIiwiTG9ja09wZW4xSWNvbiIsIl9leGNsdWRlZCQzMCIsIkxvY2tPcGVuMkljb24iLCJfZXhjbHVkZWQkMzEiLCJMb29wSWNvbiIsIl9leGNsdWRlZCQzMiIsIk1hZ2ljV2FuZEljb24iLCJfZXhjbHVkZWQkMzMiLCJNYWduaWZ5aW5nR2xhc3NJY29uIiwiX2V4Y2x1ZGVkJDM0IiwiTWFyZ2luSWNvbiIsIl9leGNsdWRlZCQzNSIsIk1hc2tPZmZJY29uIiwiX2V4Y2x1ZGVkJDM2IiwiTWFza09uSWNvbiIsIl9leGNsdWRlZCQzNyIsIk1pbnVzSWNvbiIsIl9leGNsdWRlZCQzOCIsIk1pbnVzQ2lyY2xlZEljb24iLCJfZXhjbHVkZWQkMzkiLCJNaXhJY29uIiwiX2V4Y2x1ZGVkJDNhIiwiTWl4ZXJIb3Jpem9udGFsSWNvbiIsIl9leGNsdWRlZCQzYiIsIk1peGVyVmVydGljYWxJY29uIiwiX2V4Y2x1ZGVkJDNjIiwiTW9iaWxlSWNvbiIsIl9leGNsdWRlZCQzZCIsIk1vZHVsekxvZ29JY29uIiwiX2V4Y2x1ZGVkJDNlIiwiTW9vbkljb24iLCJfZXhjbHVkZWQkM2YiLCJNb3ZlSWNvbiIsIl9leGNsdWRlZCQzZyIsIk5vdGlvbkxvZ29JY29uIiwiX2V4Y2x1ZGVkJDNoIiwiT3BhY2l0eUljb24iLCJfZXhjbHVkZWQkM2kiLCJPcGVuSW5OZXdXaW5kb3dJY29uIiwiX2V4Y2x1ZGVkJDNqIiwiT3ZlcmxpbmVJY29uIiwiX2V4Y2x1ZGVkJDNrIiwiUGFkZGluZ0ljb24iLCJfZXhjbHVkZWQkM2wiLCJQYXBlclBsYW5lSWNvbiIsIl9leGNsdWRlZCQzbSIsIlBhdXNlSWNvbiIsIl9leGNsdWRlZCQzbiIsIlBlbmNpbDFJY29uIiwiX2V4Y2x1ZGVkJDNvIiwiUGVuY2lsMkljb24iLCJfZXhjbHVkZWQkM3AiLCJQZXJzb25JY29uIiwiX2V4Y2x1ZGVkJDNxIiwiUGllQ2hhcnRJY29uIiwiX2V4Y2x1ZGVkJDNyIiwiUGlsY3Jvd0ljb24iLCJfZXhjbHVkZWQkM3MiLCJQaW5Cb3R0b21JY29uIiwiX2V4Y2x1ZGVkJDN0IiwiUGluTGVmdEljb24iLCJfZXhjbHVkZWQkM3UiLCJQaW5SaWdodEljb24iLCJfZXhjbHVkZWQkM3YiLCJQaW5Ub3BJY29uIiwiX2V4Y2x1ZGVkJDN3IiwiUGxheUljb24iLCJfZXhjbHVkZWQkM3giLCJQbHVzSWNvbiIsIl9leGNsdWRlZCQzeSIsIlBsdXNDaXJjbGVkSWNvbiIsIl9leGNsdWRlZCQzeiIsIlF1ZXN0aW9uTWFya0ljb24iLCJfZXhjbHVkZWQkM0EiLCJRdWVzdGlvbk1hcmtDaXJjbGVkSWNvbiIsIl9leGNsdWRlZCQzQiIsIlF1b3RlSWNvbiIsIl9leGNsdWRlZCQzQyIsIlJhZGlvYnV0dG9uSWNvbiIsIl9leGNsdWRlZCQzRCIsIlJlYWRlckljb24iLCJfZXhjbHVkZWQkM0UiLCJSZWxvYWRJY29uIiwiX2V4Y2x1ZGVkJDNGIiwiUmVzZXRJY29uIiwiX2V4Y2x1ZGVkJDNHIiwiUmVzdW1lSWNvbiIsIl9leGNsdWRlZCQzSCIsIlJvY2tldEljb24iLCJfZXhjbHVkZWQkM0kiLCJSb3RhdGVDb3VudGVyQ2xvY2t3aXNlSWNvbiIsIl9leGNsdWRlZCQzSiIsIlJvd1NwYWNpbmdJY29uIiwiX2V4Y2x1ZGVkJDNLIiwiUm93c0ljb24iLCJfZXhjbHVkZWQkM0wiLCJSdWxlckhvcml6b250YWxJY29uIiwiX2V4Y2x1ZGVkJDNNIiwiUnVsZXJTcXVhcmVJY29uIiwiX2V4Y2x1ZGVkJDNOIiwiU2Npc3NvcnNJY29uIiwiX2V4Y2x1ZGVkJDNPIiwiU2VjdGlvbkljb24iLCJfZXhjbHVkZWQkM1AiLCJTZXdpbmdQaW5JY29uIiwiX2V4Y2x1ZGVkJDNRIiwiU2V3aW5nUGluRmlsbGVkSWNvbiIsIl9leGNsdWRlZCQzUiIsIlNoYWRvd0ljb24iLCJvcGFjaXR5IiwiX2V4Y2x1ZGVkJDNTIiwiU2hhZG93SW5uZXJJY29uIiwiX2V4Y2x1ZGVkJDNUIiwiU2hhZG93Tm9uZUljb24iLCJfZXhjbHVkZWQkM1UiLCJTaGFkb3dPdXRlckljb24iLCJfZXhjbHVkZWQkM1YiLCJTaGFyZTFJY29uIiwiX2V4Y2x1ZGVkJDNXIiwiU2hhcmUySWNvbiIsIl9leGNsdWRlZCQzWCIsIlNodWZmbGVJY29uIiwiX2V4Y2x1ZGVkJDNZIiwiU2l6ZUljb24iLCJfZXhjbHVkZWQkM1oiLCJTa2V0Y2hMb2dvSWNvbiIsIl9leGNsdWRlZCQzXyIsIlNsYXNoSWNvbiIsIl9leGNsdWRlZCQzJCIsIlNsaWRlckljb24iLCJfZXhjbHVkZWQkNDAiLCJTcGFjZUJldHdlZW5Ib3Jpem9udGFsbHlJY29uIiwiX2V4Y2x1ZGVkJDQxIiwiU3BhY2VCZXR3ZWVuVmVydGljYWxseUljb24iLCJfZXhjbHVkZWQkNDIiLCJTcGFjZUV2ZW5seUhvcml6b250YWxseUljb24iLCJfZXhjbHVkZWQkNDMiLCJTcGFjZUV2ZW5seVZlcnRpY2FsbHlJY29uIiwiX2V4Y2x1ZGVkJDQ0IiwiU3BlYWtlckxvdWRJY29uIiwiX2V4Y2x1ZGVkJDQ1IiwiU3BlYWtlck1vZGVyYXRlSWNvbiIsIl9leGNsdWRlZCQ0NiIsIlNwZWFrZXJPZmZJY29uIiwiX2V4Y2x1ZGVkJDQ3IiwiU3BlYWtlclF1aWV0SWNvbiIsIl9leGNsdWRlZCQ0OCIsIlNxdWFyZUljb24iLCJfZXhjbHVkZWQkNDkiLCJTdGFja0ljb24iLCJfZXhjbHVkZWQkNGEiLCJTdGFySWNvbiIsIl9leGNsdWRlZCQ0YiIsIlN0YXJGaWxsZWRJY29uIiwiX2V4Y2x1ZGVkJDRjIiwiU3RpdGNoZXNMb2dvSWNvbiIsIl9leGNsdWRlZCQ0ZCIsIlN0b3BJY29uIiwiX2V4Y2x1ZGVkJDRlIiwiU3RvcHdhdGNoSWNvbiIsIl9leGNsdWRlZCQ0ZiIsIlN0cmV0Y2hIb3Jpem9udGFsbHlJY29uIiwiX2V4Y2x1ZGVkJDRnIiwiU3RyZXRjaFZlcnRpY2FsbHlJY29uIiwiX2V4Y2x1ZGVkJDRoIiwiU3RyaWtldGhyb3VnaEljb24iLCJfZXhjbHVkZWQkNGkiLCJTdW5JY29uIiwiX2V4Y2x1ZGVkJDRqIiwiU3dpdGNoSWNvbiIsIl9leGNsdWRlZCQ0ayIsIlN5bWJvbEljb24iLCJfZXhjbHVkZWQkNGwiLCJUYWJsZUljb24iLCJfZXhjbHVkZWQkNG0iLCJUYXJnZXRJY29uIiwiX2V4Y2x1ZGVkJDRuIiwiVGV4dEljb24iLCJfZXhjbHVkZWQkNG8iLCJUZXh0QWxpZ25Cb3R0b21JY29uIiwiX2V4Y2x1ZGVkJDRwIiwiVGV4dEFsaWduQ2VudGVySWNvbiIsIl9leGNsdWRlZCQ0cSIsIlRleHRBbGlnbkp1c3RpZnlJY29uIiwiX2V4Y2x1ZGVkJDRyIiwiVGV4dEFsaWduTGVmdEljb24iLCJfZXhjbHVkZWQkNHMiLCJUZXh0QWxpZ25NaWRkbGVJY29uIiwiX2V4Y2x1ZGVkJDR0IiwiVGV4dEFsaWduUmlnaHRJY29uIiwiX2V4Y2x1ZGVkJDR1IiwiVGV4dEFsaWduVG9wSWNvbiIsIl9leGNsdWRlZCQ0diIsIlRleHROb25lSWNvbiIsIl9leGNsdWRlZCQ0dyIsIlRoaWNrQXJyb3dEb3duSWNvbiIsIl9leGNsdWRlZCQ0eCIsIlRoaWNrQXJyb3dMZWZ0SWNvbiIsIl9leGNsdWRlZCQ0eSIsIlRoaWNrQXJyb3dSaWdodEljb24iLCJfZXhjbHVkZWQkNHoiLCJUaGlja0Fycm93VXBJY29uIiwiX2V4Y2x1ZGVkJDRBIiwiVGltZXJJY29uIiwiX2V4Y2x1ZGVkJDRCIiwiVG9rZW5zSWNvbiIsIl9leGNsdWRlZCQ0QyIsIlRyYWNrTmV4dEljb24iLCJfZXhjbHVkZWQkNEQiLCJUcmFja1ByZXZpb3VzSWNvbiIsIl9leGNsdWRlZCQ0RSIsIlRyYW5zZm9ybUljb24iLCJfZXhjbHVkZWQkNEYiLCJUcmFuc3BhcmVuY3lHcmlkSWNvbiIsIl9leGNsdWRlZCQ0RyIsIlRyYXNoSWNvbiIsIl9leGNsdWRlZCQ0SCIsIlRyaWFuZ2xlRG93bkljb24iLCJfZXhjbHVkZWQkNEkiLCJUcmlhbmdsZUxlZnRJY29uIiwiX2V4Y2x1ZGVkJDRKIiwiVHJpYW5nbGVSaWdodEljb24iLCJfZXhjbHVkZWQkNEsiLCJUcmlhbmdsZVVwSWNvbiIsIl9leGNsdWRlZCQ0TCIsIlR3aXR0ZXJMb2dvSWNvbiIsIl9leGNsdWRlZCQ0TSIsIlVuZGVybGluZUljb24iLCJfZXhjbHVkZWQkNE4iLCJVcGRhdGVJY29uIiwiX2V4Y2x1ZGVkJDRPIiwiVXBsb2FkSWNvbiIsIl9leGNsdWRlZCQ0UCIsIlZhbHVlSWNvbiIsIl9leGNsdWRlZCQ0USIsIlZhbHVlTm9uZUljb24iLCJfZXhjbHVkZWQkNFIiLCJWZXJjZWxMb2dvSWNvbiIsIl9leGNsdWRlZCQ0UyIsIlZpZGVvSWNvbiIsIl9leGNsdWRlZCQ0VCIsIlZpZXdHcmlkSWNvbiIsIl9leGNsdWRlZCQ0VSIsIlZpZXdIb3Jpem9udGFsSWNvbiIsIl9leGNsdWRlZCQ0ViIsIlZpZXdOb25lSWNvbiIsIl9leGNsdWRlZCQ0VyIsIlZpZXdWZXJ0aWNhbEljb24iLCJfZXhjbHVkZWQkNFgiLCJXaWR0aEljb24iLCJfZXhjbHVkZWQkNFkiLCJab29tSW5JY29uIiwiX2V4Y2x1ZGVkJDRaIiwiWm9vbU91dEljb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/@radix-ui/react-icons/dist/react-icons.esm.js\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/number/dist/index.mjs": /*!******************************************************!*\ !*** ./node_modules/@radix-ui/number/dist/index.mjs ***! \******************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ clamp: () => (/* binding */ $ae6933e535247d3d$export$7d15b64cf5a3a4c4)\n/* harmony export */ });\nfunction $ae6933e535247d3d$export$7d15b64cf5a3a4c4(value, [min, max]) {\n return Math.min(max, Math.max(min, value));\n}\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL251bWJlci9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsU0FBU0EsMENBQTBDQyxLQUFLLEVBQUUsQ0FBQ0MsS0FBS0MsSUFBSTtJQUNoRSxPQUFPQyxLQUFLRixHQUFHLENBQUNDLEtBQUtDLEtBQUtELEdBQUcsQ0FBQ0QsS0FBS0Q7QUFDdkM7QUFLNEQsQ0FDNUQsa0NBQWtDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZW1iZWRjaGFpbi1hZG1pbi8uL25vZGVfbW9kdWxlcy9AcmFkaXgtdWkvbnVtYmVyL2Rpc3QvaW5kZXgubWpzPzBhNzciXSwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gJGFlNjkzM2U1MzUyNDdkM2QkZXhwb3J0JDdkMTViNjRjZjVhM2E0YzQodmFsdWUsIFttaW4sIG1heF0pIHtcbiAgICByZXR1cm4gTWF0aC5taW4obWF4LCBNYXRoLm1heChtaW4sIHZhbHVlKSk7XG59XG5cblxuXG5cbmV4cG9ydCB7JGFlNjkzM2U1MzUyNDdkM2QkZXhwb3J0JDdkMTViNjRjZjVhM2E0YzQgYXMgY2xhbXB9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXgubWpzLm1hcFxuIl0sIm5hbWVzIjpbIiRhZTY5MzNlNTM1MjQ3ZDNkJGV4cG9ydCQ3ZDE1YjY0Y2Y1YTNhNGM0IiwidmFsdWUiLCJtaW4iLCJtYXgiLCJNYXRoIiwiY2xhbXAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/number/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/primitive/dist/index.mjs": /*!*********************************************************!*\ !*** ./node_modules/@radix-ui/primitive/dist/index.mjs ***! \*********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ composeEventHandlers: () => (/* binding */ $e42e1063c40fb3ef$export$b9ecd428b558ff10)\n/* harmony export */ });\nfunction $e42e1063c40fb3ef$export$b9ecd428b558ff10(originalEventHandler, ourEventHandler, { checkForDefaultPrevented: checkForDefaultPrevented = true } = {}) {\n return function handleEvent(event) {\n originalEventHandler === null || originalEventHandler === void 0 || originalEventHandler(event);\n if (checkForDefaultPrevented === false || !event.defaultPrevented) return ourEventHandler === null || ourEventHandler === void 0 ? void 0 : ourEventHandler(event);\n };\n}\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3ByaW1pdGl2ZS9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsU0FBU0EsMENBQTBDQyxvQkFBb0IsRUFBRUMsZUFBZSxFQUFFLEVBQUVDLDBCQUEwQkEsMkJBQTJCLElBQUksRUFBRyxHQUFHLENBQUMsQ0FBQztJQUN6SixPQUFPLFNBQVNDLFlBQVlDLEtBQUs7UUFDN0JKLHlCQUF5QixRQUFRQSx5QkFBeUIsS0FBSyxLQUFLQSxxQkFBcUJJO1FBQ3pGLElBQUlGLDZCQUE2QixTQUFTLENBQUNFLE1BQU1DLGdCQUFnQixFQUFFLE9BQU9KLG9CQUFvQixRQUFRQSxvQkFBb0IsS0FBSyxJQUFJLEtBQUssSUFBSUEsZ0JBQWdCRztJQUNoSztBQUNKO0FBSzJFLENBQzNFLGtDQUFrQyIsInNvdXJjZXMiOlsid2VicGFjazovL2VtYmVkY2hhaW4tYWRtaW4vLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3ByaW1pdGl2ZS9kaXN0L2luZGV4Lm1qcz8xODY4Il0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uICRlNDJlMTA2M2M0MGZiM2VmJGV4cG9ydCRiOWVjZDQyOGI1NThmZjEwKG9yaWdpbmFsRXZlbnRIYW5kbGVyLCBvdXJFdmVudEhhbmRsZXIsIHsgY2hlY2tGb3JEZWZhdWx0UHJldmVudGVkOiBjaGVja0ZvckRlZmF1bHRQcmV2ZW50ZWQgPSB0cnVlICB9ID0ge30pIHtcbiAgICByZXR1cm4gZnVuY3Rpb24gaGFuZGxlRXZlbnQoZXZlbnQpIHtcbiAgICAgICAgb3JpZ2luYWxFdmVudEhhbmRsZXIgPT09IG51bGwgfHwgb3JpZ2luYWxFdmVudEhhbmRsZXIgPT09IHZvaWQgMCB8fCBvcmlnaW5hbEV2ZW50SGFuZGxlcihldmVudCk7XG4gICAgICAgIGlmIChjaGVja0ZvckRlZmF1bHRQcmV2ZW50ZWQgPT09IGZhbHNlIHx8ICFldmVudC5kZWZhdWx0UHJldmVudGVkKSByZXR1cm4gb3VyRXZlbnRIYW5kbGVyID09PSBudWxsIHx8IG91ckV2ZW50SGFuZGxlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogb3VyRXZlbnRIYW5kbGVyKGV2ZW50KTtcbiAgICB9O1xufVxuXG5cblxuXG5leHBvcnQgeyRlNDJlMTA2M2M0MGZiM2VmJGV4cG9ydCRiOWVjZDQyOGI1NThmZjEwIGFzIGNvbXBvc2VFdmVudEhhbmRsZXJzfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4Lm1qcy5tYXBcbiJdLCJuYW1lcyI6WyIkZTQyZTEwNjNjNDBmYjNlZiRleHBvcnQkYjllY2Q0MjhiNTU4ZmYxMCIsIm9yaWdpbmFsRXZlbnRIYW5kbGVyIiwib3VyRXZlbnRIYW5kbGVyIiwiY2hlY2tGb3JEZWZhdWx0UHJldmVudGVkIiwiaGFuZGxlRXZlbnQiLCJldmVudCIsImRlZmF1bHRQcmV2ZW50ZWQiLCJjb21wb3NlRXZlbnRIYW5kbGVycyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/primitive/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-arrow/dist/index.mjs": /*!***********************************************************!*\ !*** ./node_modules/@radix-ui/react-arrow/dist/index.mjs ***! \***********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Arrow: () => (/* binding */ $7e8f5cd07187803e$export$21b07c8f274aebd5),\n/* harmony export */ Root: () => (/* binding */ $7e8f5cd07187803e$export$be92b6f5f03c0fe9)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n\n\n\n/* -------------------------------------------------------------------------------------------------\n * Arrow\n * -----------------------------------------------------------------------------------------------*/ const $7e8f5cd07187803e$var$NAME = \"Arrow\";\nconst $7e8f5cd07187803e$export$21b07c8f274aebd5 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { children: children, width: width = 10, height: height = 5, ...arrowProps } = props;\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_2__.Primitive.svg, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, arrowProps, {\n ref: forwardedRef,\n width: width,\n height: height,\n viewBox: \"0 0 30 10\",\n preserveAspectRatio: \"none\"\n }), props.asChild ? children : /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(\"polygon\", {\n points: \"0,0 30,0 15,10\"\n }));\n});\n/*#__PURE__*/ Object.assign($7e8f5cd07187803e$export$21b07c8f274aebd5, {\n displayName: $7e8f5cd07187803e$var$NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ const $7e8f5cd07187803e$export$be92b6f5f03c0fe9 = $7e8f5cd07187803e$export$21b07c8f274aebd5;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWFycm93L2Rpc3QvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQXNGO0FBQ087QUFDckI7QUFLeEU7O2tHQUVrRyxHQUFHLE1BQU1PLDZCQUE2QjtBQUN4SSxNQUFNQyw0Q0FBNEMsV0FBVyxHQUFHTixpREFBaUJBLENBQUMsQ0FBQ08sT0FBT0M7SUFDdEYsTUFBTSxFQUFFQyxVQUFVQSxRQUFRLEVBQUdDLE9BQU9BLFFBQVEsRUFBRSxFQUFHQyxRQUFRQSxTQUFTLENBQUMsRUFBRyxHQUFHQyxZQUFZLEdBQUdMO0lBQ3hGLE9BQU8sV0FBVyxHQUFHTCxvREFBb0JBLENBQUNFLGdFQUFnQkEsQ0FBQ1MsR0FBRyxFQUFFZiw4RUFBb0NBLENBQUMsQ0FBQyxHQUFHYyxZQUFZO1FBQ2pIRSxLQUFLTjtRQUNMRSxPQUFPQTtRQUNQQyxRQUFRQTtRQUNSSSxTQUFTO1FBQ1RDLHFCQUFxQjtJQUN6QixJQUFJVCxNQUFNVSxPQUFPLEdBQUdSLFdBQVcsV0FBVyxHQUFHUCxvREFBb0JBLENBQUMsV0FBVztRQUN6RWdCLFFBQVE7SUFDWjtBQUNKO0FBQ0EsV0FBVyxHQUFHQyxPQUFPQyxNQUFNLENBQUNkLDJDQUEyQztJQUNuRWUsYUFBYWhCO0FBQ2pCO0FBQ0Esa0dBQWtHLEdBQUcsTUFBTWlCLDRDQUE0Q2hCO0FBS3hDLENBQy9HLGtDQUFrQyIsInNvdXJjZXMiOlsid2VicGFjazovL2VtYmVkY2hhaW4tYWRtaW4vLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWFycm93L2Rpc3QvaW5kZXgubWpzPzM5YTEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICRqYm5FeCRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZXh0ZW5kc1wiO1xuaW1wb3J0IHtmb3J3YXJkUmVmIGFzICRqYm5FeCRmb3J3YXJkUmVmLCBjcmVhdGVFbGVtZW50IGFzICRqYm5FeCRjcmVhdGVFbGVtZW50fSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7UHJpbWl0aXZlIGFzICRqYm5FeCRQcmltaXRpdmV9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtcHJpbWl0aXZlXCI7XG5cblxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIEFycm93XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICQ3ZThmNWNkMDcxODc4MDNlJHZhciROQU1FID0gJ0Fycm93JztcbmNvbnN0ICQ3ZThmNWNkMDcxODc4MDNlJGV4cG9ydCQyMWIwN2M4ZjI3NGFlYmQ1ID0gLyojX19QVVJFX18qLyAkamJuRXgkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICBjb25zdCB7IGNoaWxkcmVuOiBjaGlsZHJlbiAsIHdpZHRoOiB3aWR0aCA9IDEwICwgaGVpZ2h0OiBoZWlnaHQgPSA1ICwgLi4uYXJyb3dQcm9wcyB9ID0gcHJvcHM7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJGpibkV4JGNyZWF0ZUVsZW1lbnQoJGpibkV4JFByaW1pdGl2ZS5zdmcsICRqYm5FeCRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7fSwgYXJyb3dQcm9wcywge1xuICAgICAgICByZWY6IGZvcndhcmRlZFJlZixcbiAgICAgICAgd2lkdGg6IHdpZHRoLFxuICAgICAgICBoZWlnaHQ6IGhlaWdodCxcbiAgICAgICAgdmlld0JveDogXCIwIDAgMzAgMTBcIixcbiAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbzogXCJub25lXCJcbiAgICB9KSwgcHJvcHMuYXNDaGlsZCA/IGNoaWxkcmVuIDogLyojX19QVVJFX18qLyAkamJuRXgkY3JlYXRlRWxlbWVudChcInBvbHlnb25cIiwge1xuICAgICAgICBwb2ludHM6IFwiMCwwIDMwLDAgMTUsMTBcIlxuICAgIH0pKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCQ3ZThmNWNkMDcxODc4MDNlJGV4cG9ydCQyMWIwN2M4ZjI3NGFlYmQ1LCB7XG4gICAgZGlzcGxheU5hbWU6ICQ3ZThmNWNkMDcxODc4MDNlJHZhciROQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDdlOGY1Y2QwNzE4NzgwM2UkZXhwb3J0JGJlOTJiNmY1ZjAzYzBmZTkgPSAkN2U4ZjVjZDA3MTg3ODAzZSRleHBvcnQkMjFiMDdjOGYyNzRhZWJkNTtcblxuXG5cblxuZXhwb3J0IHskN2U4ZjVjZDA3MTg3ODAzZSRleHBvcnQkMjFiMDdjOGYyNzRhZWJkNSBhcyBBcnJvdywgJDdlOGY1Y2QwNzE4NzgwM2UkZXhwb3J0JGJlOTJiNmY1ZjAzYzBmZTkgYXMgUm9vdH07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5tanMubWFwXG4iXSwibmFtZXMiOlsiJGpibkV4JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIiwiZm9yd2FyZFJlZiIsIiRqYm5FeCRmb3J3YXJkUmVmIiwiY3JlYXRlRWxlbWVudCIsIiRqYm5FeCRjcmVhdGVFbGVtZW50IiwiUHJpbWl0aXZlIiwiJGpibkV4JFByaW1pdGl2ZSIsIiQ3ZThmNWNkMDcxODc4MDNlJHZhciROQU1FIiwiJDdlOGY1Y2QwNzE4NzgwM2UkZXhwb3J0JDIxYjA3YzhmMjc0YWViZDUiLCJwcm9wcyIsImZvcndhcmRlZFJlZiIsImNoaWxkcmVuIiwid2lkdGgiLCJoZWlnaHQiLCJhcnJvd1Byb3BzIiwic3ZnIiwicmVmIiwidmlld0JveCIsInByZXNlcnZlQXNwZWN0UmF0aW8iLCJhc0NoaWxkIiwicG9pbnRzIiwiT2JqZWN0IiwiYXNzaWduIiwiZGlzcGxheU5hbWUiLCIkN2U4ZjVjZDA3MTg3ODAzZSRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSIsIkFycm93IiwiUm9vdCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-arrow/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-collection/dist/index.mjs": /*!****************************************************************!*\ !*** ./node_modules/@radix-ui/react-collection/dist/index.mjs ***! \****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createCollection: () => (/* binding */ $e02a7d9cb1dc128c$export$c74125a8e3af6bb2)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_react_context__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @radix-ui/react-context */ \"(ssr)/./node_modules/@radix-ui/react-context/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-compose-refs */ \"(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_slot__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-slot */ \"(ssr)/./node_modules/@radix-ui/react-slot/dist/index.mjs\");\n\n\n\n\n// We have resorted to returning slots directly rather than exposing primitives that can then\n// be slotted like ``.\n// This is because we encountered issues with generic types that cannot be statically analysed\n// due to creating them dynamically via createCollection.\nfunction $e02a7d9cb1dc128c$export$c74125a8e3af6bb2(name) {\n /* -----------------------------------------------------------------------------------------------\n * CollectionProvider\n * ---------------------------------------------------------------------------------------------*/ const PROVIDER_NAME = name + \"CollectionProvider\";\n const [createCollectionContext, createCollectionScope] = (0,_radix_ui_react_context__WEBPACK_IMPORTED_MODULE_1__.createContextScope)(PROVIDER_NAME);\n const [CollectionProviderImpl, useCollectionContext] = createCollectionContext(PROVIDER_NAME, {\n collectionRef: {\n current: null\n },\n itemMap: new Map()\n });\n const CollectionProvider = (props)=>{\n const { scope: scope, children: children } = props;\n const ref = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const itemMap = react__WEBPACK_IMPORTED_MODULE_0__.useRef(new Map()).current;\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(CollectionProviderImpl, {\n scope: scope,\n itemMap: itemMap,\n collectionRef: ref\n }, children);\n };\n /*#__PURE__*/ Object.assign(CollectionProvider, {\n displayName: PROVIDER_NAME\n });\n /* -----------------------------------------------------------------------------------------------\n * CollectionSlot\n * ---------------------------------------------------------------------------------------------*/ const COLLECTION_SLOT_NAME = name + \"CollectionSlot\";\n const CollectionSlot = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.forwardRef((props, forwardedRef)=>{\n const { scope: scope, children: children } = props;\n const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__.useComposedRefs)(forwardedRef, context.collectionRef);\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_radix_ui_react_slot__WEBPACK_IMPORTED_MODULE_3__.Slot, {\n ref: composedRefs\n }, children);\n });\n /*#__PURE__*/ Object.assign(CollectionSlot, {\n displayName: COLLECTION_SLOT_NAME\n });\n /* -----------------------------------------------------------------------------------------------\n * CollectionItem\n * ---------------------------------------------------------------------------------------------*/ const ITEM_SLOT_NAME = name + \"CollectionItemSlot\";\n const ITEM_DATA_ATTR = \"data-radix-collection-item\";\n const CollectionItemSlot = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.forwardRef((props, forwardedRef)=>{\n const { scope: scope, children: children, ...itemData } = props;\n const ref = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__.useComposedRefs)(forwardedRef, ref);\n const context = useCollectionContext(ITEM_SLOT_NAME, scope);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(()=>{\n context.itemMap.set(ref, {\n ref: ref,\n ...itemData\n });\n return ()=>void context.itemMap.delete(ref);\n });\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_radix_ui_react_slot__WEBPACK_IMPORTED_MODULE_3__.Slot, {\n [ITEM_DATA_ATTR]: \"\",\n ref: composedRefs\n }, children);\n });\n /*#__PURE__*/ Object.assign(CollectionItemSlot, {\n displayName: ITEM_SLOT_NAME\n });\n /* -----------------------------------------------------------------------------------------------\n * useCollection\n * ---------------------------------------------------------------------------------------------*/ function useCollection(scope) {\n const context = useCollectionContext(name + \"CollectionConsumer\", scope);\n const getItems = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(()=>{\n const collectionNode = context.collectionRef.current;\n if (!collectionNode) return [];\n const orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));\n const items = Array.from(context.itemMap.values());\n const orderedItems = items.sort((a, b)=>orderedNodes.indexOf(a.ref.current) - orderedNodes.indexOf(b.ref.current));\n return orderedItems;\n }, [\n context.collectionRef,\n context.itemMap\n ]);\n return getItems;\n }\n return [\n {\n Provider: CollectionProvider,\n Slot: CollectionSlot,\n ItemSlot: CollectionItemSlot\n },\n useCollection,\n createCollectionScope\n ];\n}\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWNvbGxlY3Rpb24vZGlzdC9pbmRleC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBaUM7QUFDdUQ7QUFDRDtBQUM5QjtBQU16RCw2RkFBNkY7QUFDN0Ysa0VBQWtFO0FBQ2xFLDhGQUE4RjtBQUM5Rix5REFBeUQ7QUFDekQsU0FBU08sMENBQTBDQyxJQUFJO0lBQ25EOztrR0FFOEYsR0FBRyxNQUFNQyxnQkFBZ0JELE9BQU87SUFDOUgsTUFBTSxDQUFDRSx5QkFBeUJDLHNCQUFzQixHQUFHVCwyRUFBeUJBLENBQUNPO0lBQ25GLE1BQU0sQ0FBQ0csd0JBQXdCQyxxQkFBcUIsR0FBR0gsd0JBQXdCRCxlQUFlO1FBQzFGSyxlQUFlO1lBQ1hDLFNBQVM7UUFDYjtRQUNBQyxTQUFTLElBQUlDO0lBQ2pCO0lBQ0EsTUFBTUMscUJBQXFCLENBQUNDO1FBQ3hCLE1BQU0sRUFBRUMsT0FBT0EsS0FBSyxFQUFHQyxVQUFVQSxRQUFRLEVBQUcsR0FBR0Y7UUFDL0MsTUFBTUcsTUFBTXRCLHlDQUFtQixDQUFDO1FBQ2hDLE1BQU1nQixVQUFVaEIseUNBQW1CLENBQUMsSUFBSWlCLE9BQU9GLE9BQU87UUFDdEQsT0FBTyxXQUFXLEdBQUdmLGdEQUEwQixDQUFDWSx3QkFBd0I7WUFDcEVRLE9BQU9BO1lBQ1BKLFNBQVNBO1lBQ1RGLGVBQWVRO1FBQ25CLEdBQUdEO0lBQ1A7SUFDQSxXQUFXLEdBQUdJLE9BQU9DLE1BQU0sQ0FBQ1Isb0JBQW9CO1FBQzVDUyxhQUFhbEI7SUFDakI7SUFDQTs7a0dBRThGLEdBQUcsTUFBTW1CLHVCQUF1QnBCLE9BQU87SUFDckksTUFBTXFCLGlCQUFpQixXQUFXLEdBQUc3Qiw2Q0FBdUIsQ0FBQyxDQUFDbUIsT0FBT1k7UUFDakUsTUFBTSxFQUFFWCxPQUFPQSxLQUFLLEVBQUdDLFVBQVVBLFFBQVEsRUFBRyxHQUFHRjtRQUMvQyxNQUFNYSxVQUFVbkIscUJBQXFCZSxzQkFBc0JSO1FBQzNELE1BQU1hLGVBQWU3Qiw2RUFBc0JBLENBQUMyQixjQUFjQyxRQUFRbEIsYUFBYTtRQUMvRSxPQUFPLFdBQVcsR0FBR2QsZ0RBQTBCLENBQUNNLHNEQUFXQSxFQUFFO1lBQ3pEZ0IsS0FBS1c7UUFDVCxHQUFHWjtJQUNQO0lBQ0EsV0FBVyxHQUFHSSxPQUFPQyxNQUFNLENBQUNHLGdCQUFnQjtRQUN4Q0YsYUFBYUM7SUFDakI7SUFDQTs7a0dBRThGLEdBQUcsTUFBTU0saUJBQWlCMUIsT0FBTztJQUMvSCxNQUFNMkIsaUJBQWlCO0lBQ3ZCLE1BQU1DLHFCQUFxQixXQUFXLEdBQUdwQyw2Q0FBdUIsQ0FBQyxDQUFDbUIsT0FBT1k7UUFDckUsTUFBTSxFQUFFWCxPQUFPQSxLQUFLLEVBQUdDLFVBQVVBLFFBQVEsRUFBRyxHQUFHZ0IsVUFBVSxHQUFHbEI7UUFDNUQsTUFBTUcsTUFBTXRCLHlDQUFtQixDQUFDO1FBQ2hDLE1BQU1pQyxlQUFlN0IsNkVBQXNCQSxDQUFDMkIsY0FBY1Q7UUFDMUQsTUFBTVUsVUFBVW5CLHFCQUFxQnFCLGdCQUFnQmQ7UUFDckRwQiw0Q0FBc0IsQ0FBQztZQUNuQmdDLFFBQVFoQixPQUFPLENBQUN1QixHQUFHLENBQUNqQixLQUFLO2dCQUNyQkEsS0FBS0E7Z0JBQ0wsR0FBR2UsUUFBUTtZQUNmO1lBQ0EsT0FBTyxJQUFJLEtBQUtMLFFBQVFoQixPQUFPLENBQUN3QixNQUFNLENBQUNsQjtRQUUzQztRQUNBLE9BQU8sV0FBVyxHQUFHdEIsZ0RBQTBCLENBQUNNLHNEQUFXQSxFQUFFO1lBQ3pELENBQUM2QixlQUFlLEVBQUU7WUFDbEJiLEtBQUtXO1FBQ1QsR0FBR1o7SUFDUDtJQUNBLFdBQVcsR0FBR0ksT0FBT0MsTUFBTSxDQUFDVSxvQkFBb0I7UUFDNUNULGFBQWFPO0lBQ2pCO0lBQ0E7O2tHQUU4RixHQUFHLFNBQVNPLGNBQWNyQixLQUFLO1FBQ3pILE1BQU1ZLFVBQVVuQixxQkFBcUJMLE9BQU8sc0JBQXNCWTtRQUNsRSxNQUFNc0IsV0FBVzFDLDhDQUF3QixDQUFDO1lBQ3RDLE1BQU00QyxpQkFBaUJaLFFBQVFsQixhQUFhLENBQUNDLE9BQU87WUFDcEQsSUFBSSxDQUFDNkIsZ0JBQWdCLE9BQU8sRUFBRTtZQUM5QixNQUFNQyxlQUFlQyxNQUFNQyxJQUFJLENBQUNILGVBQWVJLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxFQUFFYixlQUFlLENBQUMsQ0FBQztZQUNyRixNQUFNYyxRQUFRSCxNQUFNQyxJQUFJLENBQUNmLFFBQVFoQixPQUFPLENBQUNrQyxNQUFNO1lBQy9DLE1BQU1DLGVBQWVGLE1BQU1HLElBQUksQ0FBQyxDQUFDQyxHQUFHQyxJQUFJVCxhQUFhVSxPQUFPLENBQUNGLEVBQUUvQixHQUFHLENBQUNQLE9BQU8sSUFBSThCLGFBQWFVLE9BQU8sQ0FBQ0QsRUFBRWhDLEdBQUcsQ0FBQ1AsT0FBTztZQUVoSCxPQUFPb0M7UUFDWCxHQUFHO1lBQ0NuQixRQUFRbEIsYUFBYTtZQUNyQmtCLFFBQVFoQixPQUFPO1NBQ2xCO1FBQ0QsT0FBTzBCO0lBQ1g7SUFDQSxPQUFPO1FBQ0g7WUFDSWMsVUFBVXRDO1lBQ1ZiLE1BQU13QjtZQUNONEIsVUFBVXJCO1FBQ2Q7UUFDQUs7UUFDQTlCO0tBQ0g7QUFDTDtBQUt1RSxDQUN2RSxrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9lbWJlZGNoYWluLWFkbWluLy4vbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC1jb2xsZWN0aW9uL2Rpc3QvaW5kZXgubWpzP2YzNGQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICQ2dlloVSRyZWFjdCBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7Y3JlYXRlQ29udGV4dFNjb3BlIGFzICQ2dlloVSRjcmVhdGVDb250ZXh0U2NvcGV9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtY29udGV4dFwiO1xuaW1wb3J0IHt1c2VDb21wb3NlZFJlZnMgYXMgJDZ2WWhVJHVzZUNvbXBvc2VkUmVmc30gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1jb21wb3NlLXJlZnNcIjtcbmltcG9ydCB7U2xvdCBhcyAkNnZZaFUkU2xvdH0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1zbG90XCI7XG5cblxuXG5cblxuLy8gV2UgaGF2ZSByZXNvcnRlZCB0byByZXR1cm5pbmcgc2xvdHMgZGlyZWN0bHkgcmF0aGVyIHRoYW4gZXhwb3NpbmcgcHJpbWl0aXZlcyB0aGF0IGNhbiB0aGVuXG4vLyBiZSBzbG90dGVkIGxpa2UgYDxDb2xsZWN0aW9uSXRlbSBhcz17U2xvdH0+4oCmPC9Db2xsZWN0aW9uSXRlbT5gLlxuLy8gVGhpcyBpcyBiZWNhdXNlIHdlIGVuY291bnRlcmVkIGlzc3VlcyB3aXRoIGdlbmVyaWMgdHlwZXMgdGhhdCBjYW5ub3QgYmUgc3RhdGljYWxseSBhbmFseXNlZFxuLy8gZHVlIHRvIGNyZWF0aW5nIHRoZW0gZHluYW1pY2FsbHkgdmlhIGNyZWF0ZUNvbGxlY3Rpb24uXG5mdW5jdGlvbiAkZTAyYTdkOWNiMWRjMTI4YyRleHBvcnQkYzc0MTI1YThlM2FmNmJiMihuYW1lKSB7XG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICogQ29sbGVjdGlvblByb3ZpZGVyXG4gICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0IFBST1ZJREVSX05BTUUgPSBuYW1lICsgJ0NvbGxlY3Rpb25Qcm92aWRlcic7XG4gICAgY29uc3QgW2NyZWF0ZUNvbGxlY3Rpb25Db250ZXh0LCBjcmVhdGVDb2xsZWN0aW9uU2NvcGVdID0gJDZ2WWhVJGNyZWF0ZUNvbnRleHRTY29wZShQUk9WSURFUl9OQU1FKTtcbiAgICBjb25zdCBbQ29sbGVjdGlvblByb3ZpZGVySW1wbCwgdXNlQ29sbGVjdGlvbkNvbnRleHRdID0gY3JlYXRlQ29sbGVjdGlvbkNvbnRleHQoUFJPVklERVJfTkFNRSwge1xuICAgICAgICBjb2xsZWN0aW9uUmVmOiB7XG4gICAgICAgICAgICBjdXJyZW50OiBudWxsXG4gICAgICAgIH0sXG4gICAgICAgIGl0ZW1NYXA6IG5ldyBNYXAoKVxuICAgIH0pO1xuICAgIGNvbnN0IENvbGxlY3Rpb25Qcm92aWRlciA9IChwcm9wcyk9PntcbiAgICAgICAgY29uc3QgeyBzY29wZTogc2NvcGUgLCBjaGlsZHJlbjogY2hpbGRyZW4gIH0gPSBwcm9wcztcbiAgICAgICAgY29uc3QgcmVmID0gJDZ2WWhVJHJlYWN0LnVzZVJlZihudWxsKTtcbiAgICAgICAgY29uc3QgaXRlbU1hcCA9ICQ2dlloVSRyZWFjdC51c2VSZWYobmV3IE1hcCgpKS5jdXJyZW50O1xuICAgICAgICByZXR1cm4gLyojX19QVVJFX18qLyAkNnZZaFUkcmVhY3QuY3JlYXRlRWxlbWVudChDb2xsZWN0aW9uUHJvdmlkZXJJbXBsLCB7XG4gICAgICAgICAgICBzY29wZTogc2NvcGUsXG4gICAgICAgICAgICBpdGVtTWFwOiBpdGVtTWFwLFxuICAgICAgICAgICAgY29sbGVjdGlvblJlZjogcmVmXG4gICAgICAgIH0sIGNoaWxkcmVuKTtcbiAgICB9O1xuICAgIC8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbihDb2xsZWN0aW9uUHJvdmlkZXIsIHtcbiAgICAgICAgZGlzcGxheU5hbWU6IFBST1ZJREVSX05BTUVcbiAgICB9KTtcbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgKiBDb2xsZWN0aW9uU2xvdFxuICAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCBDT0xMRUNUSU9OX1NMT1RfTkFNRSA9IG5hbWUgKyAnQ29sbGVjdGlvblNsb3QnO1xuICAgIGNvbnN0IENvbGxlY3Rpb25TbG90ID0gLyojX19QVVJFX18qLyAkNnZZaFUkcmVhY3QuZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICAgICAgY29uc3QgeyBzY29wZTogc2NvcGUgLCBjaGlsZHJlbjogY2hpbGRyZW4gIH0gPSBwcm9wcztcbiAgICAgICAgY29uc3QgY29udGV4dCA9IHVzZUNvbGxlY3Rpb25Db250ZXh0KENPTExFQ1RJT05fU0xPVF9OQU1FLCBzY29wZSk7XG4gICAgICAgIGNvbnN0IGNvbXBvc2VkUmVmcyA9ICQ2dlloVSR1c2VDb21wb3NlZFJlZnMoZm9yd2FyZGVkUmVmLCBjb250ZXh0LmNvbGxlY3Rpb25SZWYpO1xuICAgICAgICByZXR1cm4gLyojX19QVVJFX18qLyAkNnZZaFUkcmVhY3QuY3JlYXRlRWxlbWVudCgkNnZZaFUkU2xvdCwge1xuICAgICAgICAgICAgcmVmOiBjb21wb3NlZFJlZnNcbiAgICAgICAgfSwgY2hpbGRyZW4pO1xuICAgIH0pO1xuICAgIC8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbihDb2xsZWN0aW9uU2xvdCwge1xuICAgICAgICBkaXNwbGF5TmFtZTogQ09MTEVDVElPTl9TTE9UX05BTUVcbiAgICB9KTtcbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgKiBDb2xsZWN0aW9uSXRlbVxuICAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCBJVEVNX1NMT1RfTkFNRSA9IG5hbWUgKyAnQ29sbGVjdGlvbkl0ZW1TbG90JztcbiAgICBjb25zdCBJVEVNX0RBVEFfQVRUUiA9ICdkYXRhLXJhZGl4LWNvbGxlY3Rpb24taXRlbSc7XG4gICAgY29uc3QgQ29sbGVjdGlvbkl0ZW1TbG90ID0gLyojX19QVVJFX18qLyAkNnZZaFUkcmVhY3QuZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICAgICAgY29uc3QgeyBzY29wZTogc2NvcGUgLCBjaGlsZHJlbjogY2hpbGRyZW4gLCAuLi5pdGVtRGF0YSB9ID0gcHJvcHM7XG4gICAgICAgIGNvbnN0IHJlZiA9ICQ2dlloVSRyZWFjdC51c2VSZWYobnVsbCk7XG4gICAgICAgIGNvbnN0IGNvbXBvc2VkUmVmcyA9ICQ2dlloVSR1c2VDb21wb3NlZFJlZnMoZm9yd2FyZGVkUmVmLCByZWYpO1xuICAgICAgICBjb25zdCBjb250ZXh0ID0gdXNlQ29sbGVjdGlvbkNvbnRleHQoSVRFTV9TTE9UX05BTUUsIHNjb3BlKTtcbiAgICAgICAgJDZ2WWhVJHJlYWN0LnVzZUVmZmVjdCgoKT0+e1xuICAgICAgICAgICAgY29udGV4dC5pdGVtTWFwLnNldChyZWYsIHtcbiAgICAgICAgICAgICAgICByZWY6IHJlZixcbiAgICAgICAgICAgICAgICAuLi5pdGVtRGF0YVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gKCk9PnZvaWQgY29udGV4dC5pdGVtTWFwLmRlbGV0ZShyZWYpXG4gICAgICAgICAgICA7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gLyojX19QVVJFX18qLyAkNnZZaFUkcmVhY3QuY3JlYXRlRWxlbWVudCgkNnZZaFUkU2xvdCwge1xuICAgICAgICAgICAgW0lURU1fREFUQV9BVFRSXTogJycsXG4gICAgICAgICAgICByZWY6IGNvbXBvc2VkUmVmc1xuICAgICAgICB9LCBjaGlsZHJlbik7XG4gICAgfSk7XG4gICAgLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKENvbGxlY3Rpb25JdGVtU2xvdCwge1xuICAgICAgICBkaXNwbGF5TmFtZTogSVRFTV9TTE9UX05BTUVcbiAgICB9KTtcbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgKiB1c2VDb2xsZWN0aW9uXG4gICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGZ1bmN0aW9uIHVzZUNvbGxlY3Rpb24oc2NvcGUpIHtcbiAgICAgICAgY29uc3QgY29udGV4dCA9IHVzZUNvbGxlY3Rpb25Db250ZXh0KG5hbWUgKyAnQ29sbGVjdGlvbkNvbnN1bWVyJywgc2NvcGUpO1xuICAgICAgICBjb25zdCBnZXRJdGVtcyA9ICQ2dlloVSRyZWFjdC51c2VDYWxsYmFjaygoKT0+e1xuICAgICAgICAgICAgY29uc3QgY29sbGVjdGlvbk5vZGUgPSBjb250ZXh0LmNvbGxlY3Rpb25SZWYuY3VycmVudDtcbiAgICAgICAgICAgIGlmICghY29sbGVjdGlvbk5vZGUpIHJldHVybiBbXTtcbiAgICAgICAgICAgIGNvbnN0IG9yZGVyZWROb2RlcyA9IEFycmF5LmZyb20oY29sbGVjdGlvbk5vZGUucXVlcnlTZWxlY3RvckFsbChgWyR7SVRFTV9EQVRBX0FUVFJ9XWApKTtcbiAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gQXJyYXkuZnJvbShjb250ZXh0Lml0ZW1NYXAudmFsdWVzKCkpO1xuICAgICAgICAgICAgY29uc3Qgb3JkZXJlZEl0ZW1zID0gaXRlbXMuc29ydCgoYSwgYik9Pm9yZGVyZWROb2Rlcy5pbmRleE9mKGEucmVmLmN1cnJlbnQpIC0gb3JkZXJlZE5vZGVzLmluZGV4T2YoYi5yZWYuY3VycmVudClcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICByZXR1cm4gb3JkZXJlZEl0ZW1zO1xuICAgICAgICB9LCBbXG4gICAgICAgICAgICBjb250ZXh0LmNvbGxlY3Rpb25SZWYsXG4gICAgICAgICAgICBjb250ZXh0Lml0ZW1NYXBcbiAgICAgICAgXSk7XG4gICAgICAgIHJldHVybiBnZXRJdGVtcztcbiAgICB9XG4gICAgcmV0dXJuIFtcbiAgICAgICAge1xuICAgICAgICAgICAgUHJvdmlkZXI6IENvbGxlY3Rpb25Qcm92aWRlcixcbiAgICAgICAgICAgIFNsb3Q6IENvbGxlY3Rpb25TbG90LFxuICAgICAgICAgICAgSXRlbVNsb3Q6IENvbGxlY3Rpb25JdGVtU2xvdFxuICAgICAgICB9LFxuICAgICAgICB1c2VDb2xsZWN0aW9uLFxuICAgICAgICBjcmVhdGVDb2xsZWN0aW9uU2NvcGVcbiAgICBdO1xufVxuXG5cblxuXG5leHBvcnQgeyRlMDJhN2Q5Y2IxZGMxMjhjJGV4cG9ydCRjNzQxMjVhOGUzYWY2YmIyIGFzIGNyZWF0ZUNvbGxlY3Rpb259O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXgubWpzLm1hcFxuIl0sIm5hbWVzIjpbIiQ2dlloVSRyZWFjdCIsImNyZWF0ZUNvbnRleHRTY29wZSIsIiQ2dlloVSRjcmVhdGVDb250ZXh0U2NvcGUiLCJ1c2VDb21wb3NlZFJlZnMiLCIkNnZZaFUkdXNlQ29tcG9zZWRSZWZzIiwiU2xvdCIsIiQ2dlloVSRTbG90IiwiJGUwMmE3ZDljYjFkYzEyOGMkZXhwb3J0JGM3NDEyNWE4ZTNhZjZiYjIiLCJuYW1lIiwiUFJPVklERVJfTkFNRSIsImNyZWF0ZUNvbGxlY3Rpb25Db250ZXh0IiwiY3JlYXRlQ29sbGVjdGlvblNjb3BlIiwiQ29sbGVjdGlvblByb3ZpZGVySW1wbCIsInVzZUNvbGxlY3Rpb25Db250ZXh0IiwiY29sbGVjdGlvblJlZiIsImN1cnJlbnQiLCJpdGVtTWFwIiwiTWFwIiwiQ29sbGVjdGlvblByb3ZpZGVyIiwicHJvcHMiLCJzY29wZSIsImNoaWxkcmVuIiwicmVmIiwidXNlUmVmIiwiY3JlYXRlRWxlbWVudCIsIk9iamVjdCIsImFzc2lnbiIsImRpc3BsYXlOYW1lIiwiQ09MTEVDVElPTl9TTE9UX05BTUUiLCJDb2xsZWN0aW9uU2xvdCIsImZvcndhcmRSZWYiLCJmb3J3YXJkZWRSZWYiLCJjb250ZXh0IiwiY29tcG9zZWRSZWZzIiwiSVRFTV9TTE9UX05BTUUiLCJJVEVNX0RBVEFfQVRUUiIsIkNvbGxlY3Rpb25JdGVtU2xvdCIsIml0ZW1EYXRhIiwidXNlRWZmZWN0Iiwic2V0IiwiZGVsZXRlIiwidXNlQ29sbGVjdGlvbiIsImdldEl0ZW1zIiwidXNlQ2FsbGJhY2siLCJjb2xsZWN0aW9uTm9kZSIsIm9yZGVyZWROb2RlcyIsIkFycmF5IiwiZnJvbSIsInF1ZXJ5U2VsZWN0b3JBbGwiLCJpdGVtcyIsInZhbHVlcyIsIm9yZGVyZWRJdGVtcyIsInNvcnQiLCJhIiwiYiIsImluZGV4T2YiLCJQcm92aWRlciIsIkl0ZW1TbG90IiwiY3JlYXRlQ29sbGVjdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-collection/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs": /*!******************************************************************!*\ !*** ./node_modules/@radix-ui/react-compose-refs/dist/index.mjs ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ composeRefs: () => (/* binding */ $6ed0406888f73fc4$export$43e446d32b3d21af),\n/* harmony export */ useComposedRefs: () => (/* binding */ $6ed0406888f73fc4$export$c7b2cbe3552a0d05)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n\n/**\n * Set a given ref to a given value\n * This utility takes care of different types of refs: callback refs and RefObject(s)\n */ function $6ed0406888f73fc4$var$setRef(ref, value) {\n if (typeof ref === \"function\") ref(value);\n else if (ref !== null && ref !== undefined) ref.current = value;\n}\n/**\n * A utility to compose multiple refs together\n * Accepts callback refs and RefObject(s)\n */ function $6ed0406888f73fc4$export$43e446d32b3d21af(...refs) {\n return (node)=>refs.forEach((ref)=>$6ed0406888f73fc4$var$setRef(ref, node));\n}\n/**\n * A custom hook that composes multiple refs\n * Accepts callback refs and RefObject(s)\n */ function $6ed0406888f73fc4$export$c7b2cbe3552a0d05(...refs) {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)($6ed0406888f73fc4$export$43e446d32b3d21af(...refs), refs);\n}\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWNvbXBvc2UtcmVmcy9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBd0Q7QUFHeEQ7OztDQUdDLEdBQUcsU0FBU0UsNkJBQTZCQyxHQUFHLEVBQUVDLEtBQUs7SUFDaEQsSUFBSSxPQUFPRCxRQUFRLFlBQVlBLElBQUlDO1NBQzlCLElBQUlELFFBQVEsUUFBUUEsUUFBUUUsV0FBV0YsSUFBSUcsT0FBTyxHQUFHRjtBQUM5RDtBQUNBOzs7Q0FHQyxHQUFHLFNBQVNHLDBDQUEwQyxHQUFHQyxJQUFJO0lBQzFELE9BQU8sQ0FBQ0MsT0FBT0QsS0FBS0UsT0FBTyxDQUFDLENBQUNQLE1BQU1ELDZCQUE2QkMsS0FBS007QUFHekU7QUFDQTs7O0NBR0MsR0FBRyxTQUFTRSwwQ0FBMEMsR0FBR0gsSUFBSTtJQUMxRCx1REFBdUQ7SUFDdkQsT0FBT1Asa0RBQWtCQSxDQUFDTSw2Q0FBNkNDLE9BQU9BO0FBQ2xGO0FBS2dJLENBQ2hJLGtDQUFrQyIsInNvdXJjZXMiOlsid2VicGFjazovL2VtYmVkY2hhaW4tYWRtaW4vLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWNvbXBvc2UtcmVmcy9kaXN0L2luZGV4Lm1qcz8zMWM0Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dXNlQ2FsbGJhY2sgYXMgJDN2cW1yJHVzZUNhbGxiYWNrfSBmcm9tIFwicmVhY3RcIjtcblxuXG4vKipcbiAqIFNldCBhIGdpdmVuIHJlZiB0byBhIGdpdmVuIHZhbHVlXG4gKiBUaGlzIHV0aWxpdHkgdGFrZXMgY2FyZSBvZiBkaWZmZXJlbnQgdHlwZXMgb2YgcmVmczogY2FsbGJhY2sgcmVmcyBhbmQgUmVmT2JqZWN0KHMpXG4gKi8gZnVuY3Rpb24gJDZlZDA0MDY4ODhmNzNmYzQkdmFyJHNldFJlZihyZWYsIHZhbHVlKSB7XG4gICAgaWYgKHR5cGVvZiByZWYgPT09ICdmdW5jdGlvbicpIHJlZih2YWx1ZSk7XG4gICAgZWxzZSBpZiAocmVmICE9PSBudWxsICYmIHJlZiAhPT0gdW5kZWZpbmVkKSByZWYuY3VycmVudCA9IHZhbHVlO1xufVxuLyoqXG4gKiBBIHV0aWxpdHkgdG8gY29tcG9zZSBtdWx0aXBsZSByZWZzIHRvZ2V0aGVyXG4gKiBBY2NlcHRzIGNhbGxiYWNrIHJlZnMgYW5kIFJlZk9iamVjdChzKVxuICovIGZ1bmN0aW9uICQ2ZWQwNDA2ODg4ZjczZmM0JGV4cG9ydCQ0M2U0NDZkMzJiM2QyMWFmKC4uLnJlZnMpIHtcbiAgICByZXR1cm4gKG5vZGUpPT5yZWZzLmZvckVhY2goKHJlZik9PiQ2ZWQwNDA2ODg4ZjczZmM0JHZhciRzZXRSZWYocmVmLCBub2RlKVxuICAgICAgICApXG4gICAgO1xufVxuLyoqXG4gKiBBIGN1c3RvbSBob29rIHRoYXQgY29tcG9zZXMgbXVsdGlwbGUgcmVmc1xuICogQWNjZXB0cyBjYWxsYmFjayByZWZzIGFuZCBSZWZPYmplY3QocylcbiAqLyBmdW5jdGlvbiAkNmVkMDQwNjg4OGY3M2ZjNCRleHBvcnQkYzdiMmNiZTM1NTJhMGQwNSguLi5yZWZzKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICAgIHJldHVybiAkM3ZxbXIkdXNlQ2FsbGJhY2soJDZlZDA0MDY4ODhmNzNmYzQkZXhwb3J0JDQzZTQ0NmQzMmIzZDIxYWYoLi4ucmVmcyksIHJlZnMpO1xufVxuXG5cblxuXG5leHBvcnQgeyQ2ZWQwNDA2ODg4ZjczZmM0JGV4cG9ydCQ0M2U0NDZkMzJiM2QyMWFmIGFzIGNvbXBvc2VSZWZzLCAkNmVkMDQwNjg4OGY3M2ZjNCRleHBvcnQkYzdiMmNiZTM1NTJhMGQwNSBhcyB1c2VDb21wb3NlZFJlZnN9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXgubWpzLm1hcFxuIl0sIm5hbWVzIjpbInVzZUNhbGxiYWNrIiwiJDN2cW1yJHVzZUNhbGxiYWNrIiwiJDZlZDA0MDY4ODhmNzNmYzQkdmFyJHNldFJlZiIsInJlZiIsInZhbHVlIiwidW5kZWZpbmVkIiwiY3VycmVudCIsIiQ2ZWQwNDA2ODg4ZjczZmM0JGV4cG9ydCQ0M2U0NDZkMzJiM2QyMWFmIiwicmVmcyIsIm5vZGUiLCJmb3JFYWNoIiwiJDZlZDA0MDY4ODhmNzNmYzQkZXhwb3J0JGM3YjJjYmUzNTUyYTBkMDUiLCJjb21wb3NlUmVmcyIsInVzZUNvbXBvc2VkUmVmcyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-context/dist/index.mjs": /*!*************************************************************!*\ !*** ./node_modules/@radix-ui/react-context/dist/index.mjs ***! \*************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createContext: () => (/* binding */ $c512c27ab02ef895$export$fd42f52fd3ae1109),\n/* harmony export */ createContextScope: () => (/* binding */ $c512c27ab02ef895$export$50c7b4e9d9f19c1)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n\nfunction $c512c27ab02ef895$export$fd42f52fd3ae1109(rootComponentName, defaultContext) {\n const Context = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(defaultContext);\n function Provider(props) {\n const { children: children, ...context } = props; // Only re-memoize when prop values change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n const value = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>context, Object.values(context));\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(Context.Provider, {\n value: value\n }, children);\n }\n function useContext(consumerName) {\n const context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(Context);\n if (context) return context;\n if (defaultContext !== undefined) return defaultContext; // if a defaultContext wasn't specified, it's a required context.\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n Provider.displayName = rootComponentName + \"Provider\";\n return [\n Provider,\n useContext\n ];\n}\n/* -------------------------------------------------------------------------------------------------\n * createContextScope\n * -----------------------------------------------------------------------------------------------*/ function $c512c27ab02ef895$export$50c7b4e9d9f19c1(scopeName, createContextScopeDeps = []) {\n let defaultContexts = [];\n /* -----------------------------------------------------------------------------------------------\n * createContext\n * ---------------------------------------------------------------------------------------------*/ function $c512c27ab02ef895$export$fd42f52fd3ae1109(rootComponentName, defaultContext) {\n const BaseContext = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(defaultContext);\n const index = defaultContexts.length;\n defaultContexts = [\n ...defaultContexts,\n defaultContext\n ];\n function Provider(props) {\n const { scope: scope, children: children, ...context } = props;\n const Context = (scope === null || scope === void 0 ? void 0 : scope[scopeName][index]) || BaseContext; // Only re-memoize when prop values change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n const value = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>context, Object.values(context));\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(Context.Provider, {\n value: value\n }, children);\n }\n function useContext(consumerName, scope) {\n const Context = (scope === null || scope === void 0 ? void 0 : scope[scopeName][index]) || BaseContext;\n const context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(Context);\n if (context) return context;\n if (defaultContext !== undefined) return defaultContext; // if a defaultContext wasn't specified, it's a required context.\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n Provider.displayName = rootComponentName + \"Provider\";\n return [\n Provider,\n useContext\n ];\n }\n /* -----------------------------------------------------------------------------------------------\n * createScope\n * ---------------------------------------------------------------------------------------------*/ const createScope = ()=>{\n const scopeContexts = defaultContexts.map((defaultContext)=>{\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(defaultContext);\n });\n return function useScope(scope) {\n const contexts = (scope === null || scope === void 0 ? void 0 : scope[scopeName]) || scopeContexts;\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({\n [`__scope${scopeName}`]: {\n ...scope,\n [scopeName]: contexts\n }\n }), [\n scope,\n contexts\n ]);\n };\n };\n createScope.scopeName = scopeName;\n return [\n $c512c27ab02ef895$export$fd42f52fd3ae1109,\n $c512c27ab02ef895$var$composeContextScopes(createScope, ...createContextScopeDeps)\n ];\n}\n/* -------------------------------------------------------------------------------------------------\n * composeContextScopes\n * -----------------------------------------------------------------------------------------------*/ function $c512c27ab02ef895$var$composeContextScopes(...scopes) {\n const baseScope = scopes[0];\n if (scopes.length === 1) return baseScope;\n const createScope1 = ()=>{\n const scopeHooks = scopes.map((createScope)=>({\n useScope: createScope(),\n scopeName: createScope.scopeName\n }));\n return function useComposedScopes(overrideScopes) {\n const nextScopes1 = scopeHooks.reduce((nextScopes, { useScope: useScope, scopeName: scopeName })=>{\n // We are calling a hook inside a callback which React warns against to avoid inconsistent\n // renders, however, scoping doesn't have render side effects so we ignore the rule.\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const scopeProps = useScope(overrideScopes);\n const currentScope = scopeProps[`__scope${scopeName}`];\n return {\n ...nextScopes,\n ...currentScope\n };\n }, {});\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({\n [`__scope${baseScope.scopeName}`]: nextScopes1\n }), [\n nextScopes1\n ]);\n };\n };\n createScope1.scopeName = baseScope.scopeName;\n return createScope1;\n}\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWNvbnRleHQvZGlzdC9pbmRleC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQStKO0FBRy9KLFNBQVNRLDBDQUEwQ0MsaUJBQWlCLEVBQUVDLGNBQWM7SUFDaEYsTUFBTUMsVUFBVSxXQUFXLEdBQUdWLG9EQUFvQkEsQ0FBQ1M7SUFDbkQsU0FBU0UsU0FBU0MsS0FBSztRQUNuQixNQUFNLEVBQUVDLFVBQVVBLFFBQVEsRUFBRyxHQUFHQyxTQUFTLEdBQUdGLE9BQU8sMENBQTBDO1FBQzdGLHVEQUF1RDtRQUN2RCxNQUFNRyxRQUFRYiw4Q0FBY0EsQ0FBQyxJQUFJWSxTQUMvQkUsT0FBT0MsTUFBTSxDQUFDSDtRQUNoQixPQUFPLFdBQVcsR0FBR1Ysb0RBQW9CQSxDQUFDTSxRQUFRQyxRQUFRLEVBQUU7WUFDeERJLE9BQU9BO1FBQ1gsR0FBR0Y7SUFDUDtJQUNBLFNBQVNSLFdBQVdhLFlBQVk7UUFDNUIsTUFBTUosVUFBVVIsaURBQWlCQSxDQUFDSTtRQUNsQyxJQUFJSSxTQUFTLE9BQU9BO1FBQ3BCLElBQUlMLG1CQUFtQlUsV0FBVyxPQUFPVixnQkFBZ0IsaUVBQWlFO1FBQzFILE1BQU0sSUFBSVcsTUFBTSxDQUFDLEVBQUUsRUFBRUYsYUFBYSx5QkFBeUIsRUFBRVYsa0JBQWtCLEVBQUUsQ0FBQztJQUN0RjtJQUNBRyxTQUFTVSxXQUFXLEdBQUdiLG9CQUFvQjtJQUMzQyxPQUFPO1FBQ0hHO1FBQ0FOO0tBQ0g7QUFDTDtBQUNBOztrR0FFa0csR0FBRyxTQUFTaUIseUNBQXlDQyxTQUFTLEVBQUVDLHlCQUF5QixFQUFFO0lBQ3pMLElBQUlDLGtCQUFrQixFQUFFO0lBQ3hCOztrR0FFOEYsR0FBRyxTQUFTbEIsMENBQTBDQyxpQkFBaUIsRUFBRUMsY0FBYztRQUNqTCxNQUFNaUIsY0FBYyxXQUFXLEdBQUcxQixvREFBb0JBLENBQUNTO1FBQ3ZELE1BQU1rQixRQUFRRixnQkFBZ0JHLE1BQU07UUFD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QU8sRUFBRW1DLFVBQVVkLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRW1CO2dCQUN2QyxJQUNGO2dCQUNFQTthQUNIO1FBQ0w7SUFDSjtJQUNBSixhQUFhZixTQUFTLEdBQUdjLFVBQVVkLFNBQVM7SUFDNUMsT0FBT2U7QUFDWDtBQUtvSSxDQUNwSSxrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9lbWJlZGNoYWluLWFkbWluLy4vbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC1jb250ZXh0L2Rpc3QvaW5kZXgubWpzPzEwODEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtjcmVhdGVDb250ZXh0IGFzICQzYmtBSyRjcmVhdGVDb250ZXh0LCB1c2VNZW1vIGFzICQzYmtBSyR1c2VNZW1vLCBjcmVhdGVFbGVtZW50IGFzICQzYmtBSyRjcmVhdGVFbGVtZW50LCB1c2VDb250ZXh0IGFzICQzYmtBSyR1c2VDb250ZXh0fSBmcm9tIFwicmVhY3RcIjtcblxuXG5mdW5jdGlvbiAkYzUxMmMyN2FiMDJlZjg5NSRleHBvcnQkZmQ0MmY1MmZkM2FlMTEwOShyb290Q29tcG9uZW50TmFtZSwgZGVmYXVsdENvbnRleHQpIHtcbiAgICBjb25zdCBDb250ZXh0ID0gLyojX19QVVJFX18qLyAkM2JrQUskY3JlYXRlQ29udGV4dChkZWZhdWx0Q29udGV4dCk7XG4gICAgZnVuY3Rpb24gUHJvdmlkZXIocHJvcHMpIHtcbiAgICAgICAgY29uc3QgeyBjaGlsZHJlbjogY2hpbGRyZW4gLCAuLi5jb250ZXh0IH0gPSBwcm9wczsgLy8gT25seSByZS1tZW1vaXplIHdoZW4gcHJvcCB2YWx1ZXMgY2hhbmdlXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgICAgICAgY29uc3QgdmFsdWUgPSAkM2JrQUskdXNlTWVtbygoKT0+Y29udGV4dFxuICAgICAgICAsIE9iamVjdC52YWx1ZXMoY29udGV4dCkpO1xuICAgICAgICByZXR1cm4gLyojX19QVVJFX18qLyAkM2JrQUskY3JlYXRlRWxlbWVudChDb250ZXh0LlByb3ZpZGVyLCB7XG4gICAgICAgICAgICB2YWx1ZTogdmFsdWVcbiAgICAgICAgfSwgY2hpbGRyZW4pO1xuICAgIH1cbiAgICBmdW5jdGlvbiB1c2VDb250ZXh0KGNvbnN1bWVyTmFtZSkge1xuICAgICAgICBjb25zdCBjb250ZXh0ID0gJDNia0FLJHVzZUNvbnRleHQoQ29udGV4dCk7XG4gICAgICAgIGlmIChjb250ZXh0KSByZXR1cm4gY29udGV4dDtcbiAgICAgICAgaWYgKGRlZmF1bHRDb250ZXh0ICE9PSB1bmRlZmluZWQpIHJldHVybiBkZWZhdWx0Q29udGV4dDsgLy8gaWYgYSBkZWZhdWx0Q29udGV4dCB3YXNuJ3Qgc3BlY2lmaWVkLCBpdCdzIGEgcmVxdWlyZWQgY29udGV4dC5cbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBcXGAke2NvbnN1bWVyTmFtZX1cXGAgbXVzdCBiZSB1c2VkIHdpdGhpbiBcXGAke3Jvb3RDb21wb25lbnROYW1lfVxcYGApO1xuICAgIH1cbiAgICBQcm92aWRlci5kaXNwbGF5TmFtZSA9IHJvb3RDb21wb25lbnROYW1lICsgJ1Byb3ZpZGVyJztcbiAgICByZXR1cm4gW1xuICAgICAgICBQcm92aWRlcixcbiAgICAgICAgdXNlQ29udGV4dFxuICAgIF07XG59XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBjcmVhdGVDb250ZXh0U2NvcGVcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gZnVuY3Rpb24gJGM1MTJjMjdhYjAyZWY4OTUkZXhwb3J0JDUwYzdiNGU5ZDlmMTljMShzY29wZU5hbWUsIGNyZWF0ZUNvbnRleHRTY29wZURlcHMgPSBbXSkge1xuICAgIGxldCBkZWZhdWx0Q29udGV4dHMgPSBbXTtcbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgKiBjcmVhdGVDb250ZXh0XG4gICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGZ1bmN0aW9uICRjNTEyYzI3YWIwMmVmODk1JGV4cG9ydCRmZDQyZjUyZmQzYWUxMTA5KHJvb3RDb21wb25lbnROYW1lLCBkZWZhdWx0Q29udGV4dCkge1xuICAgICAgICBjb25zdCBCYXNlQ29udGV4dCA9IC8qI19fUFVSRV9fKi8gJDNia0FLJGNyZWF0ZUNvbnRleHQoZGVmYXVsdENvbnRleHQpO1xuICAgICAgICBjb25zdCBpbmRleCA9IGRlZmF1bHRDb250ZXh0cy5sZW5ndGg7XG4gICAgICAgIGRlZmF1bHRDb250ZXh0cyA9IFtcbiAgICAgICAgICAgIC4uLmRlZmF1bHRDb250ZXh0cyxcbiAgICAgICAgICAgIGRlZmF1bHRDb250ZXh0XG4gICAgICAgIF07XG4gICAgICAgIGZ1bmN0aW9uIFByb3ZpZGVyKHByb3BzKSB7XG4gICAgICAgICAgICBjb25zdCB7IHNjb3BlOiBzY29wZSAsIGNoaWxkcmVuOiBjaGlsZHJlbiAsIC4uLmNvbnRleHQgfSA9IHByb3BzO1xuICAgICAgICAgICAgY29uc3QgQ29udGV4dCA9IChzY29wZSA9PT0gbnVsbCB8fCBzY29wZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2NvcGVbc2NvcGVOYW1lXVtpbmRleF0pIHx8IEJhc2VDb250ZXh0OyAvLyBPbmx5IHJlLW1lbW9pemUgd2hlbiBwcm9wIHZhbHVlcyBjaGFuZ2VcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gJDNia0FLJHVzZU1lbW8oKCk9PmNvbnRleHRcbiAgICAgICAgICAgICwgT2JqZWN0LnZhbHVlcyhjb250ZXh0KSk7XG4gICAgICAgICAgICByZXR1cm4gLyojX19QVVJFX18qLyAkM2JrQUskY3JlYXRlRWxlbWVudChDb250ZXh0LlByb3ZpZGVyLCB7XG4gICAgICAgICAgICAgICAgdmFsdWU6IHZhbHVlXG4gICAgICAgICAgICB9LCBjaGlsZHJlbik7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gdXNlQ29udGV4dChjb25zdW1lck5hbWUsIHNjb3BlKSB7XG4gICAgICAgICAgICBjb25zdCBDb250ZXh0ID0gKHNjb3BlID09PSBudWxsIHx8IHNjb3BlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY29wZVtzY29wZU5hbWVdW2luZGV4XSkgfHwgQmFzZUNvbnRleHQ7XG4gICAgICAgICAgICBjb25zdCBjb250ZXh0ID0gJDNia0FLJHVzZUNvbnRleHQoQ29udGV4dCk7XG4gICAgICAgICAgICBpZiAoY29udGV4dCkgcmV0dXJuIGNvbnRleHQ7XG4gICAgICAgICAgICBpZiAoZGVmYXVsdENvbnRleHQgIT09IHVuZGVmaW5lZCkgcmV0dXJuIGRlZmF1bHRDb250ZXh0OyAvLyBpZiBhIGRlZmF1bHRDb250ZXh0IHdhc24ndCBzcGVjaWZpZWQsIGl0J3MgYSByZXF1aXJlZCBjb250ZXh0LlxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBcXGAke2NvbnN1bWVyTmFtZX1cXGAgbXVzdCBiZSB1c2VkIHdpdGhpbiBcXGAke3Jvb3RDb21wb25lbnROYW1lfVxcYGApO1xuICAgICAgICB9XG4gICAgICAgIFByb3ZpZGVyLmRpc3BsYXlOYW1lID0gcm9vdENvbXBvbmVudE5hbWUgKyAnUHJvdmlkZXInO1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgUHJvdmlkZXIsXG4gICAgICAgICAgICB1c2VDb250ZXh0XG4gICAgICAgIF07XG4gICAgfVxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAqIGNyZWF0ZVNjb3BlXG4gICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0IGNyZWF0ZVNjb3BlID0gKCk9PntcbiAgICAgICAgY29uc3Qgc2NvcGVDb250ZXh0cyA9IGRlZmF1bHRDb250ZXh0cy5tYXAoKGRlZmF1bHRDb250ZXh0KT0+e1xuICAgICAgICAgICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDNia0FLJGNyZWF0ZUNvbnRleHQoZGVmYXVsdENvbnRleHQpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIHVzZVNjb3BlKHNjb3BlKSB7XG4gICAgICAgICAgICBjb25zdCBjb250ZXh0cyA9IChzY29wZSA9PT0gbnVsbCB8fCBzY29wZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2NvcGVbc2NvcGVOYW1lXSkgfHwgc2NvcGVDb250ZXh0cztcbiAgICAgICAgICAgIHJldHVybiAkM2JrQUskdXNlTWVtbygoKT0+KHtcbiAgICAgICAgICAgICAgICAgICAgW2BfX3Njb3BlJHtzY29wZU5hbWV9YF06IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLnNjb3BlLFxuICAgICAgICAgICAgICAgICAgICAgICAgW3Njb3BlTmFtZV06IGNvbnRleHRzXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgLCBbXG4gICAgICAgICAgICAgICAgc2NvcGUsXG4gICAgICAgICAgICAgICAgY29udGV4dHNcbiAgICAgICAgICAgIF0pO1xuICAgICAgICB9O1xuICAgIH07XG4gICAgY3JlYXRlU2NvcGUuc2NvcGVOYW1lID0gc2NvcGVOYW1lO1xuICAgIHJldHVybiBbXG4gICAgICAgICRjNTEyYzI3YWIwMmVmODk1JGV4cG9ydCRmZDQyZjUyZmQzYWUxMTA5LFxuICAgICAgICAkYzUxMmMyN2FiMDJlZjg5NSR2YXIkY29tcG9zZUNvbnRleHRTY29wZXMoY3JlYXRlU2NvcGUsIC4uLmNyZWF0ZUNvbnRleHRTY29wZURlcHMpXG4gICAgXTtcbn1cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIGNvbXBvc2VDb250ZXh0U2NvcGVzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGZ1bmN0aW9uICRjNTEyYzI3YWIwMmVmODk1JHZhciRjb21wb3NlQ29udGV4dFNjb3BlcyguLi5zY29wZXMpIHtcbiAgICBjb25zdCBiYXNlU2NvcGUgPSBzY29wZXNbMF07XG4gICAgaWYgKHNjb3Blcy5sZW5ndGggPT09IDEpIHJldHVybiBiYXNlU2NvcGU7XG4gICAgY29uc3QgY3JlYXRlU2NvcGUxID0gKCk9PntcbiAgICAgICAgY29uc3Qgc2NvcGVIb29rcyA9IHNjb3Blcy5tYXAoKGNyZWF0ZVNjb3BlKT0+KHtcbiAgICAgICAgICAgICAgICB1c2VTY29wZTogY3JlYXRlU2NvcGUoKSxcbiAgICAgICAgICAgICAgICBzY29wZU5hbWU6IGNyZWF0ZVNjb3BlLnNjb3BlTmFtZVxuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIHVzZUNvbXBvc2VkU2NvcGVzKG92ZXJyaWRlU2NvcGVzKSB7XG4gICAgICAgICAgICBjb25zdCBuZXh0U2NvcGVzMSA9IHNjb3BlSG9va3MucmVkdWNlKChuZXh0U2NvcGVzLCB7IHVzZVNjb3BlOiB1c2VTY29wZSAsIHNjb3BlTmFtZTogc2NvcGVOYW1lICB9KT0+e1xuICAgICAgICAgICAgICAgIC8vIFdlIGFyZSBjYWxsaW5nIGEgaG9vayBpbnNpZGUgYSBjYWxsYmFjayB3aGljaCBSZWFjdCB3YXJucyBhZ2FpbnN0IHRvIGF2b2lkIGluY29uc2lzdGVudFxuICAgICAgICAgICAgICAgIC8vIHJlbmRlcnMsIGhvd2V2ZXIsIHNjb3BpbmcgZG9lc24ndCBoYXZlIHJlbmRlciBzaWRlIGVmZmVjdHMgc28gd2UgaWdub3JlIHRoZSBydWxlLlxuICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9ydWxlcy1vZi1ob29rc1xuICAgICAgICAgICAgICAgIGNvbnN0IHNjb3BlUHJvcHMgPSB1c2VTY29wZShvdmVycmlkZVNjb3Blcyk7XG4gICAgICAgICAgICAgICAgY29uc3QgY3VycmVudFNjb3BlID0gc2NvcGVQcm9wc1tgX19zY29wZSR7c2NvcGVOYW1lfWBdO1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIC4uLm5leHRTY29wZXMsXG4gICAgICAgICAgICAgICAgICAgIC4uLmN1cnJlbnRTY29wZVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9LCB7fSk7XG4gICAgICAgICAgICByZXR1cm4gJDNia0FLJHVzZU1lbW8oKCk9Pih7XG4gICAgICAgICAgICAgICAgICAgIFtgX19zY29wZSR7YmFzZVNjb3BlLnNjb3BlTmFtZX1gXTogbmV4dFNjb3BlczFcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgLCBbXG4gICAgICAgICAgICAgICAgbmV4dFNjb3BlczFcbiAgICAgICAgICAgIF0pO1xuICAgICAgICB9O1xuICAgIH07XG4gICAgY3JlYXRlU2NvcGUxLnNjb3BlTmFtZSA9IGJhc2VTY29wZS5zY29wZU5hbWU7XG4gICAgcmV0dXJuIGNyZWF0ZVNjb3BlMTtcbn1cblxuXG5cblxuZXhwb3J0IHskYzUxMmMyN2FiMDJlZjg5NSRleHBvcnQkZmQ0MmY1MmZkM2FlMTEwOSBhcyBjcmVhdGVDb250ZXh0LCAkYzUxMmMyN2FiMDJlZjg5NSRleHBvcnQkNTBjN2I0ZTlkOWYxOWMxIGFzIGNyZWF0ZUNvbnRleHRTY29wZX07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5tanMubWFwXG4iXSwibmFtZXMiOlsiY3JlYXRlQ29udGV4dCIsIiQzYmtBSyRjcmVhdGVDb250ZXh0IiwidXNlTWVtbyIsIiQzYmtBSyR1c2VNZW1vIiwiY3JlYXRlRWxlbWVudCIsIiQzYmtBSyRjcmVhdGVFbGVtZW50IiwidXNlQ29udGV4dCIsIiQzYmtBSyR1c2VDb250ZXh0IiwiJGM1MTJjMjdhYjAyZWY4OTUkZXhwb3J0JGZkNDJmNTJmZDNhZTExMDkiLCJyb290Q29tcG9uZW50TmFtZSIsImRlZmF1bHRDb250ZXh0IiwiQ29udGV4dCIsIlByb3ZpZGVyIiwicHJvcHMiLCJjaGlsZHJlbiIsImNvbnRleHQiLCJ2YWx1ZSIsIk9iamVjdCIsInZhbHVlcyIsImNvbnN1bWVyTmFtZSIsInVuZGVmaW5lZCIsIkVycm9yIiwiZGlzcGxheU5hbWUiLCIkYzUxMmMyN2FiMDJlZjg5NSRleHBvcnQkNTBjN2I0ZTlkOWYxOWMxIiwic2NvcGVOYW1lIiwiY3JlYXRlQ29udGV4dFNjb3BlRGVwcyIsImRlZmF1bHRDb250ZXh0cyIsIkJhc2VDb250ZXh0IiwiaW5kZXgiLCJsZW5ndGgiLCJzY29wZSIsImNyZWF0ZVNjb3BlIiwic2NvcGVDb250ZXh0cyIsIm1hcCIsInVzZVNjb3BlIiwiY29udGV4dHMiLCIkYzUxMmMyN2FiMDJlZjg5NSR2YXIkY29tcG9zZUNvbnRleHRTY29wZXMiLCJzY29wZXMiLCJiYXNlU2NvcGUiLCJjcmVhdGVTY29wZTEiLCJzY29wZUhvb2tzIiwidXNlQ29tcG9zZWRTY29wZXMiLCJvdmVycmlkZVNjb3BlcyIsIm5leHRTY29wZXMxIiwicmVkdWNlIiwibmV4dFNjb3BlcyIsInNjb3BlUHJvcHMiLCJjdXJyZW50U2NvcGUiLCJjcmVhdGVDb250ZXh0U2NvcGUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-context/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-dialog/dist/index.mjs": /*!************************************************************!*\ !*** ./node_modules/@radix-ui/react-dialog/dist/index.mjs ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Close: () => (/* binding */ $5d3850c4d0b4e6c7$export$f39c2d165cd861fe),\n/* harmony export */ Content: () => (/* binding */ $5d3850c4d0b4e6c7$export$7c6e2c02157bb7d2),\n/* harmony export */ Description: () => (/* binding */ $5d3850c4d0b4e6c7$export$393edc798c47379d),\n/* harmony export */ Dialog: () => (/* binding */ $5d3850c4d0b4e6c7$export$3ddf2d174ce01153),\n/* harmony export */ DialogClose: () => (/* binding */ $5d3850c4d0b4e6c7$export$fba2fb7cd781b7ac),\n/* harmony export */ DialogContent: () => (/* binding */ $5d3850c4d0b4e6c7$export$b6d9565de1e068cf),\n/* harmony export */ DialogDescription: () => (/* binding */ $5d3850c4d0b4e6c7$export$94e94c2ec2c954d5),\n/* harmony export */ DialogOverlay: () => (/* binding */ $5d3850c4d0b4e6c7$export$bd1d06c79be19e17),\n/* harmony export */ DialogPortal: () => (/* binding */ $5d3850c4d0b4e6c7$export$dad7c95542bacce0),\n/* harmony export */ DialogTitle: () => (/* binding */ $5d3850c4d0b4e6c7$export$16f7638e4a34b909),\n/* harmony export */ DialogTrigger: () => (/* binding */ $5d3850c4d0b4e6c7$export$2e1e1122cf0cba88),\n/* harmony export */ Overlay: () => (/* binding */ $5d3850c4d0b4e6c7$export$c6fdb837b070b4ff),\n/* harmony export */ Portal: () => (/* binding */ $5d3850c4d0b4e6c7$export$602eac185826482c),\n/* harmony export */ Root: () => (/* binding */ $5d3850c4d0b4e6c7$export$be92b6f5f03c0fe9),\n/* harmony export */ Title: () => (/* binding */ $5d3850c4d0b4e6c7$export$f99233281efd08a0),\n/* harmony export */ Trigger: () => (/* binding */ $5d3850c4d0b4e6c7$export$41fb9f06171c75f4),\n/* harmony export */ WarningProvider: () => (/* binding */ $5d3850c4d0b4e6c7$export$69b62a49393917d6),\n/* harmony export */ createDialogScope: () => (/* binding */ $5d3850c4d0b4e6c7$export$cc702773b8ea3e41)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_primitive__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @radix-ui/primitive */ \"(ssr)/./node_modules/@radix-ui/primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @radix-ui/react-compose-refs */ \"(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_context__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-context */ \"(ssr)/./node_modules/@radix-ui/react-context/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_id__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @radix-ui/react-id */ \"(ssr)/./node_modules/@radix-ui/react-id/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_controllable_state__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-use-controllable-state */ \"(ssr)/./node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_dismissable_layer__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @radix-ui/react-dismissable-layer */ \"(ssr)/./node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_focus_scope__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @radix-ui/react-focus-scope */ \"(ssr)/./node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-focus-scope/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_portal__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @radix-ui/react-portal */ \"(ssr)/./node_modules/@radix-ui/react-portal/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_presence__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @radix-ui/react-presence */ \"(ssr)/./node_modules/@radix-ui/react-presence/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_focus_guards__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @radix-ui/react-focus-guards */ \"(ssr)/./node_modules/@radix-ui/react-focus-guards/dist/index.mjs\");\n/* harmony import */ var react_remove_scroll__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! react-remove-scroll */ \"(ssr)/./node_modules/react-remove-scroll/dist/es2015/Combination.js\");\n/* harmony import */ var aria_hidden__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! aria-hidden */ \"(ssr)/./node_modules/aria-hidden/dist/es2015/index.js\");\n/* harmony import */ var _radix_ui_react_slot__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @radix-ui/react-slot */ \"(ssr)/./node_modules/@radix-ui/react-slot/dist/index.mjs\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/* -------------------------------------------------------------------------------------------------\n * Dialog\n * -----------------------------------------------------------------------------------------------*/ const $5d3850c4d0b4e6c7$var$DIALOG_NAME = \"Dialog\";\nconst [$5d3850c4d0b4e6c7$var$createDialogContext, $5d3850c4d0b4e6c7$export$cc702773b8ea3e41] = (0,_radix_ui_react_context__WEBPACK_IMPORTED_MODULE_2__.createContextScope)($5d3850c4d0b4e6c7$var$DIALOG_NAME);\nconst [$5d3850c4d0b4e6c7$var$DialogProvider, $5d3850c4d0b4e6c7$var$useDialogContext] = $5d3850c4d0b4e6c7$var$createDialogContext($5d3850c4d0b4e6c7$var$DIALOG_NAME);\nconst $5d3850c4d0b4e6c7$export$3ddf2d174ce01153 = (props)=>{\n const { __scopeDialog: __scopeDialog, children: children, open: openProp, defaultOpen: defaultOpen, onOpenChange: onOpenChange, modal: modal = true } = props;\n const triggerRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const contentRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const [open = false, setOpen] = (0,_radix_ui_react_use_controllable_state__WEBPACK_IMPORTED_MODULE_3__.useControllableState)({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange\n });\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($5d3850c4d0b4e6c7$var$DialogProvider, {\n scope: __scopeDialog,\n triggerRef: triggerRef,\n contentRef: contentRef,\n contentId: (0,_radix_ui_react_id__WEBPACK_IMPORTED_MODULE_4__.useId)(),\n titleId: (0,_radix_ui_react_id__WEBPACK_IMPORTED_MODULE_4__.useId)(),\n descriptionId: (0,_radix_ui_react_id__WEBPACK_IMPORTED_MODULE_4__.useId)(),\n open: open,\n onOpenChange: setOpen,\n onOpenToggle: (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(()=>setOpen((prevOpen)=>!prevOpen), [\n setOpen\n ]),\n modal: modal\n }, children);\n};\n/*#__PURE__*/ Object.assign($5d3850c4d0b4e6c7$export$3ddf2d174ce01153, {\n displayName: $5d3850c4d0b4e6c7$var$DIALOG_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * DialogTrigger\n * -----------------------------------------------------------------------------------------------*/ const $5d3850c4d0b4e6c7$var$TRIGGER_NAME = \"DialogTrigger\";\nconst $5d3850c4d0b4e6c7$export$2e1e1122cf0cba88 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeDialog: __scopeDialog, ...triggerProps } = props;\n const context = $5d3850c4d0b4e6c7$var$useDialogContext($5d3850c4d0b4e6c7$var$TRIGGER_NAME, __scopeDialog);\n const composedTriggerRef = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_5__.useComposedRefs)(forwardedRef, context.triggerRef);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_6__.Primitive.button, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n type: \"button\",\n \"aria-haspopup\": \"dialog\",\n \"aria-expanded\": context.open,\n \"aria-controls\": context.contentId,\n \"data-state\": $5d3850c4d0b4e6c7$var$getState(context.open)\n }, triggerProps, {\n ref: composedTriggerRef,\n onClick: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_7__.composeEventHandlers)(props.onClick, context.onOpenToggle)\n }));\n});\n/*#__PURE__*/ Object.assign($5d3850c4d0b4e6c7$export$2e1e1122cf0cba88, {\n displayName: $5d3850c4d0b4e6c7$var$TRIGGER_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * DialogPortal\n * -----------------------------------------------------------------------------------------------*/ const $5d3850c4d0b4e6c7$var$PORTAL_NAME = \"DialogPortal\";\nconst [$5d3850c4d0b4e6c7$var$PortalProvider, $5d3850c4d0b4e6c7$var$usePortalContext] = $5d3850c4d0b4e6c7$var$createDialogContext($5d3850c4d0b4e6c7$var$PORTAL_NAME, {\n forceMount: undefined\n});\nconst $5d3850c4d0b4e6c7$export$dad7c95542bacce0 = (props)=>{\n const { __scopeDialog: __scopeDialog, forceMount: forceMount, children: children, container: container } = props;\n const context = $5d3850c4d0b4e6c7$var$useDialogContext($5d3850c4d0b4e6c7$var$PORTAL_NAME, __scopeDialog);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($5d3850c4d0b4e6c7$var$PortalProvider, {\n scope: __scopeDialog,\n forceMount: forceMount\n }, react__WEBPACK_IMPORTED_MODULE_1__.Children.map(children, (child)=>/*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_presence__WEBPACK_IMPORTED_MODULE_8__.Presence, {\n present: forceMount || context.open\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_portal__WEBPACK_IMPORTED_MODULE_9__.Portal, {\n asChild: true,\n container: container\n }, child))));\n};\n/*#__PURE__*/ Object.assign($5d3850c4d0b4e6c7$export$dad7c95542bacce0, {\n displayName: $5d3850c4d0b4e6c7$var$PORTAL_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * DialogOverlay\n * -----------------------------------------------------------------------------------------------*/ const $5d3850c4d0b4e6c7$var$OVERLAY_NAME = \"DialogOverlay\";\nconst $5d3850c4d0b4e6c7$export$bd1d06c79be19e17 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const portalContext = $5d3850c4d0b4e6c7$var$usePortalContext($5d3850c4d0b4e6c7$var$OVERLAY_NAME, props.__scopeDialog);\n const { forceMount: forceMount = portalContext.forceMount, ...overlayProps } = props;\n const context = $5d3850c4d0b4e6c7$var$useDialogContext($5d3850c4d0b4e6c7$var$OVERLAY_NAME, props.__scopeDialog);\n return context.modal ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_presence__WEBPACK_IMPORTED_MODULE_8__.Presence, {\n present: forceMount || context.open\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($5d3850c4d0b4e6c7$var$DialogOverlayImpl, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, overlayProps, {\n ref: forwardedRef\n }))) : null;\n});\n/*#__PURE__*/ Object.assign($5d3850c4d0b4e6c7$export$bd1d06c79be19e17, {\n displayName: $5d3850c4d0b4e6c7$var$OVERLAY_NAME\n});\nconst $5d3850c4d0b4e6c7$var$DialogOverlayImpl = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeDialog: __scopeDialog, ...overlayProps } = props;\n const context = $5d3850c4d0b4e6c7$var$useDialogContext($5d3850c4d0b4e6c7$var$OVERLAY_NAME, __scopeDialog);\n return(/*#__PURE__*/ // ie. when `Overlay` and `Content` are siblings\n (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(react_remove_scroll__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n as: _radix_ui_react_slot__WEBPACK_IMPORTED_MODULE_11__.Slot,\n allowPinchZoom: true,\n shards: [\n context.contentRef\n ]\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_6__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"data-state\": $5d3850c4d0b4e6c7$var$getState(context.open)\n }, overlayProps, {\n ref: forwardedRef // We re-enable pointer-events prevented by `Dialog.Content` to allow scrolling the overlay.\n ,\n style: {\n pointerEvents: \"auto\",\n ...overlayProps.style\n }\n }))));\n});\n/* -------------------------------------------------------------------------------------------------\n * DialogContent\n * -----------------------------------------------------------------------------------------------*/ const $5d3850c4d0b4e6c7$var$CONTENT_NAME = \"DialogContent\";\nconst $5d3850c4d0b4e6c7$export$b6d9565de1e068cf = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const portalContext = $5d3850c4d0b4e6c7$var$usePortalContext($5d3850c4d0b4e6c7$var$CONTENT_NAME, props.__scopeDialog);\n const { forceMount: forceMount = portalContext.forceMount, ...contentProps } = props;\n const context = $5d3850c4d0b4e6c7$var$useDialogContext($5d3850c4d0b4e6c7$var$CONTENT_NAME, props.__scopeDialog);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_presence__WEBPACK_IMPORTED_MODULE_8__.Presence, {\n present: forceMount || context.open\n }, context.modal ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($5d3850c4d0b4e6c7$var$DialogContentModal, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, contentProps, {\n ref: forwardedRef\n })) : /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($5d3850c4d0b4e6c7$var$DialogContentNonModal, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, contentProps, {\n ref: forwardedRef\n })));\n});\n/*#__PURE__*/ Object.assign($5d3850c4d0b4e6c7$export$b6d9565de1e068cf, {\n displayName: $5d3850c4d0b4e6c7$var$CONTENT_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ const $5d3850c4d0b4e6c7$var$DialogContentModal = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const context = $5d3850c4d0b4e6c7$var$useDialogContext($5d3850c4d0b4e6c7$var$CONTENT_NAME, props.__scopeDialog);\n const contentRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_5__.useComposedRefs)(forwardedRef, context.contentRef, contentRef); // aria-hide everything except the content (better supported equivalent to setting aria-modal)\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const content = contentRef.current;\n if (content) return (0,aria_hidden__WEBPACK_IMPORTED_MODULE_12__.hideOthers)(content);\n }, []);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($5d3850c4d0b4e6c7$var$DialogContentImpl, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, props, {\n ref: composedRefs // we make sure focus isn't trapped once `DialogContent` has been closed\n ,\n trapFocus: context.open,\n disableOutsidePointerEvents: true,\n onCloseAutoFocus: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_7__.composeEventHandlers)(props.onCloseAutoFocus, (event)=>{\n var _context$triggerRef$c;\n event.preventDefault();\n (_context$triggerRef$c = context.triggerRef.current) === null || _context$triggerRef$c === void 0 || _context$triggerRef$c.focus();\n }),\n onPointerDownOutside: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_7__.composeEventHandlers)(props.onPointerDownOutside, (event)=>{\n const originalEvent = event.detail.originalEvent;\n const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;\n const isRightClick = originalEvent.button === 2 || ctrlLeftClick; // If the event is a right-click, we shouldn't close because\n // it is effectively as if we right-clicked the `Overlay`.\n if (isRightClick) event.preventDefault();\n }) // When focus is trapped, a `focusout` event may still happen.\n ,\n onFocusOutside: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_7__.composeEventHandlers)(props.onFocusOutside, (event)=>event.preventDefault())\n }));\n});\n/* -----------------------------------------------------------------------------------------------*/ const $5d3850c4d0b4e6c7$var$DialogContentNonModal = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const context = $5d3850c4d0b4e6c7$var$useDialogContext($5d3850c4d0b4e6c7$var$CONTENT_NAME, props.__scopeDialog);\n const hasInteractedOutsideRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(false);\n const hasPointerDownOutsideRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(false);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($5d3850c4d0b4e6c7$var$DialogContentImpl, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, props, {\n ref: forwardedRef,\n trapFocus: false,\n disableOutsidePointerEvents: false,\n onCloseAutoFocus: (event)=>{\n var _props$onCloseAutoFoc;\n (_props$onCloseAutoFoc = props.onCloseAutoFocus) === null || _props$onCloseAutoFoc === void 0 || _props$onCloseAutoFoc.call(props, event);\n if (!event.defaultPrevented) {\n var _context$triggerRef$c2;\n if (!hasInteractedOutsideRef.current) (_context$triggerRef$c2 = context.triggerRef.current) === null || _context$triggerRef$c2 === void 0 || _context$triggerRef$c2.focus(); // Always prevent auto focus because we either focus manually or want user agent focus\n event.preventDefault();\n }\n hasInteractedOutsideRef.current = false;\n hasPointerDownOutsideRef.current = false;\n },\n onInteractOutside: (event)=>{\n var _props$onInteractOuts, _context$triggerRef$c3;\n (_props$onInteractOuts = props.onInteractOutside) === null || _props$onInteractOuts === void 0 || _props$onInteractOuts.call(props, event);\n if (!event.defaultPrevented) {\n hasInteractedOutsideRef.current = true;\n if (event.detail.originalEvent.type === \"pointerdown\") hasPointerDownOutsideRef.current = true;\n } // Prevent dismissing when clicking the trigger.\n // As the trigger is already setup to close, without doing so would\n // cause it to close and immediately open.\n const target = event.target;\n const targetIsTrigger = (_context$triggerRef$c3 = context.triggerRef.current) === null || _context$triggerRef$c3 === void 0 ? void 0 : _context$triggerRef$c3.contains(target);\n if (targetIsTrigger) event.preventDefault(); // On Safari if the trigger is inside a container with tabIndex={0}, when clicked\n // we will get the pointer down outside event on the trigger, but then a subsequent\n // focus outside event on the container, we ignore any focus outside event when we've\n // already had a pointer down outside event.\n if (event.detail.originalEvent.type === \"focusin\" && hasPointerDownOutsideRef.current) event.preventDefault();\n }\n }));\n});\n/* -----------------------------------------------------------------------------------------------*/ const $5d3850c4d0b4e6c7$var$DialogContentImpl = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeDialog: __scopeDialog, trapFocus: trapFocus, onOpenAutoFocus: onOpenAutoFocus, onCloseAutoFocus: onCloseAutoFocus, ...contentProps } = props;\n const context = $5d3850c4d0b4e6c7$var$useDialogContext($5d3850c4d0b4e6c7$var$CONTENT_NAME, __scopeDialog);\n const contentRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_5__.useComposedRefs)(forwardedRef, contentRef); // Make sure the whole tree has focus guards as our `Dialog` will be\n // the last element in the DOM (beacuse of the `Portal`)\n (0,_radix_ui_react_focus_guards__WEBPACK_IMPORTED_MODULE_13__.useFocusGuards)();\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_focus_scope__WEBPACK_IMPORTED_MODULE_14__.FocusScope, {\n asChild: true,\n loop: true,\n trapped: trapFocus,\n onMountAutoFocus: onOpenAutoFocus,\n onUnmountAutoFocus: onCloseAutoFocus\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_dismissable_layer__WEBPACK_IMPORTED_MODULE_15__.DismissableLayer, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n role: \"dialog\",\n id: context.contentId,\n \"aria-describedby\": context.descriptionId,\n \"aria-labelledby\": context.titleId,\n \"data-state\": $5d3850c4d0b4e6c7$var$getState(context.open)\n }, contentProps, {\n ref: composedRefs,\n onDismiss: ()=>context.onOpenChange(false)\n }))), false);\n});\n/* -------------------------------------------------------------------------------------------------\n * DialogTitle\n * -----------------------------------------------------------------------------------------------*/ const $5d3850c4d0b4e6c7$var$TITLE_NAME = \"DialogTitle\";\nconst $5d3850c4d0b4e6c7$export$16f7638e4a34b909 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeDialog: __scopeDialog, ...titleProps } = props;\n const context = $5d3850c4d0b4e6c7$var$useDialogContext($5d3850c4d0b4e6c7$var$TITLE_NAME, __scopeDialog);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_6__.Primitive.h2, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n id: context.titleId\n }, titleProps, {\n ref: forwardedRef\n }));\n});\n/*#__PURE__*/ Object.assign($5d3850c4d0b4e6c7$export$16f7638e4a34b909, {\n displayName: $5d3850c4d0b4e6c7$var$TITLE_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * DialogDescription\n * -----------------------------------------------------------------------------------------------*/ const $5d3850c4d0b4e6c7$var$DESCRIPTION_NAME = \"DialogDescription\";\nconst $5d3850c4d0b4e6c7$export$94e94c2ec2c954d5 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeDialog: __scopeDialog, ...descriptionProps } = props;\n const context = $5d3850c4d0b4e6c7$var$useDialogContext($5d3850c4d0b4e6c7$var$DESCRIPTION_NAME, __scopeDialog);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_6__.Primitive.p, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n id: context.descriptionId\n }, descriptionProps, {\n ref: forwardedRef\n }));\n});\n/*#__PURE__*/ Object.assign($5d3850c4d0b4e6c7$export$94e94c2ec2c954d5, {\n displayName: $5d3850c4d0b4e6c7$var$DESCRIPTION_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * DialogClose\n * -----------------------------------------------------------------------------------------------*/ const $5d3850c4d0b4e6c7$var$CLOSE_NAME = \"DialogClose\";\nconst $5d3850c4d0b4e6c7$export$fba2fb7cd781b7ac = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeDialog: __scopeDialog, ...closeProps } = props;\n const context = $5d3850c4d0b4e6c7$var$useDialogContext($5d3850c4d0b4e6c7$var$CLOSE_NAME, __scopeDialog);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_6__.Primitive.button, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n type: \"button\"\n }, closeProps, {\n ref: forwardedRef,\n onClick: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_7__.composeEventHandlers)(props.onClick, ()=>context.onOpenChange(false))\n }));\n});\n/*#__PURE__*/ Object.assign($5d3850c4d0b4e6c7$export$fba2fb7cd781b7ac, {\n displayName: $5d3850c4d0b4e6c7$var$CLOSE_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ function $5d3850c4d0b4e6c7$var$getState(open) {\n return open ? \"open\" : \"closed\";\n}\nconst $5d3850c4d0b4e6c7$var$TITLE_WARNING_NAME = \"DialogTitleWarning\";\nconst [$5d3850c4d0b4e6c7$export$69b62a49393917d6, $5d3850c4d0b4e6c7$var$useWarningContext] = (0,_radix_ui_react_context__WEBPACK_IMPORTED_MODULE_2__.createContext)($5d3850c4d0b4e6c7$var$TITLE_WARNING_NAME, {\n contentName: $5d3850c4d0b4e6c7$var$CONTENT_NAME,\n titleName: $5d3850c4d0b4e6c7$var$TITLE_NAME,\n docsSlug: \"dialog\"\n});\nconst $5d3850c4d0b4e6c7$var$TitleWarning = ({ titleId: titleId })=>{\n const titleWarningContext = $5d3850c4d0b4e6c7$var$useWarningContext($5d3850c4d0b4e6c7$var$TITLE_WARNING_NAME);\n const MESSAGE = `\\`${titleWarningContext.contentName}\\` requires a \\`${titleWarningContext.titleName}\\` for the component to be accessible for screen reader users.\n\nIf you want to hide the \\`${titleWarningContext.titleName}\\`, you can wrap it with our VisuallyHidden component.\n\nFor more information, see https://radix-ui.com/primitives/docs/components/${titleWarningContext.docsSlug}`;\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (titleId) {\n const hasTitle = document.getElementById(titleId);\n if (!hasTitle) throw new Error(MESSAGE);\n }\n }, [\n MESSAGE,\n titleId\n ]);\n return null;\n};\nconst $5d3850c4d0b4e6c7$var$DESCRIPTION_WARNING_NAME = \"DialogDescriptionWarning\";\nconst $5d3850c4d0b4e6c7$var$DescriptionWarning = ({ contentRef: contentRef, descriptionId: descriptionId })=>{\n const descriptionWarningContext = $5d3850c4d0b4e6c7$var$useWarningContext($5d3850c4d0b4e6c7$var$DESCRIPTION_WARNING_NAME);\n const MESSAGE = `Warning: Missing \\`Description\\` or \\`aria-describedby={undefined}\\` for {${descriptionWarningContext.contentName}}.`;\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n var _contentRef$current;\n const describedById = (_contentRef$current = contentRef.current) === null || _contentRef$current === void 0 ? void 0 : _contentRef$current.getAttribute(\"aria-describedby\"); // if we have an id and the user hasn't set aria-describedby={undefined}\n if (descriptionId && describedById) {\n const hasDescription = document.getElementById(descriptionId);\n if (!hasDescription) console.warn(MESSAGE);\n }\n }, [\n MESSAGE,\n contentRef,\n descriptionId\n ]);\n return null;\n};\nconst $5d3850c4d0b4e6c7$export$be92b6f5f03c0fe9 = $5d3850c4d0b4e6c7$export$3ddf2d174ce01153;\nconst $5d3850c4d0b4e6c7$export$41fb9f06171c75f4 = $5d3850c4d0b4e6c7$export$2e1e1122cf0cba88;\nconst $5d3850c4d0b4e6c7$export$602eac185826482c = $5d3850c4d0b4e6c7$export$dad7c95542bacce0;\nconst $5d3850c4d0b4e6c7$export$c6fdb837b070b4ff = $5d3850c4d0b4e6c7$export$bd1d06c79be19e17;\nconst $5d3850c4d0b4e6c7$export$7c6e2c02157bb7d2 = $5d3850c4d0b4e6c7$export$b6d9565de1e068cf;\nconst $5d3850c4d0b4e6c7$export$f99233281efd08a0 = $5d3850c4d0b4e6c7$export$16f7638e4a34b909;\nconst $5d3850c4d0b4e6c7$export$393edc798c47379d = $5d3850c4d0b4e6c7$export$94e94c2ec2c954d5;\nconst $5d3850c4d0b4e6c7$export$f39c2d165cd861fe = $5d3850c4d0b4e6c7$export$fba2fb7cd781b7ac;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWRpYWxvZy9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQXNGO0FBQzRKO0FBQzFKO0FBQ0Q7QUFDd0M7QUFDdEU7QUFDa0Q7QUFDYjtBQUNsQjtBQUNiO0FBQ007QUFDRztBQUNhO0FBQ2I7QUFDWjtBQUNIO0FBa0J6RDs7a0dBRWtHLEdBQUcsTUFBTTZDLG9DQUFvQztBQUMvSSxNQUFNLENBQUNDLDJDQUEyQ0MsMENBQTBDLEdBQUczQiwyRUFBeUJBLENBQUN5QjtBQUN6SCxNQUFNLENBQUNHLHNDQUFzQ0MsdUNBQXVDLEdBQUdILDBDQUEwQ0Q7QUFDakksTUFBTUssNENBQTRDLENBQUNDO0lBQy9DLE1BQU0sRUFBRUMsZUFBZUEsYUFBYSxFQUFHQyxVQUFVQSxRQUFRLEVBQUdDLE1BQU1DLFFBQVEsRUFBR0MsYUFBYUEsV0FBVyxFQUFHQyxjQUFjQSxZQUFZLEVBQUdDLE9BQU9BLFFBQVEsSUFBSSxFQUFHLEdBQUdQO0lBQzlKLE1BQU1RLGFBQWF6RCw2Q0FBYUEsQ0FBQztJQUNqQyxNQUFNMEQsYUFBYTFELDZDQUFhQSxDQUFDO0lBQ2pDLE1BQU0sQ0FBQ29ELE9BQU8sS0FBSyxFQUFFTyxRQUFRLEdBQUduQyw0RkFBMkJBLENBQUM7UUFDeERvQyxNQUFNUDtRQUNOUSxhQUFhUDtRQUNiUSxVQUFVUDtJQUNkO0lBQ0EsT0FBTyxXQUFXLEdBQUdyRCxvREFBb0JBLENBQUM0QyxzQ0FBc0M7UUFDNUVpQixPQUFPYjtRQUNQTyxZQUFZQTtRQUNaQyxZQUFZQTtRQUNaTSxXQUFXMUMseURBQVlBO1FBQ3ZCMkMsU0FBUzNDLHlEQUFZQTtRQUNyQjRDLGVBQWU1Qyx5REFBWUE7UUFDM0I4QixNQUFNQTtRQUNORyxjQUFjSTtRQUNkUSxjQUFjL0Qsa0RBQWtCQSxDQUFDLElBQUl1RCxRQUFRLENBQUNTLFdBQVcsQ0FBQ0EsV0FF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RCx3QkFBd0IsS0FBSyxJQUFJLEtBQUssSUFBSUEsb0JBQW9CRSxZQUFZLENBQUMscUJBQXFCLHdFQUF3RTtRQUNyUCxJQUFJL0csaUJBQWlCOEcsZUFBZTtZQUNoQyxNQUFNRSxpQkFBaUJULFNBQVNDLGNBQWMsQ0FBQ3hHO1lBQy9DLElBQUksQ0FBQ2dILGdCQUFnQkMsUUFBUUMsSUFBSSxDQUFDYjtRQUN0QztJQUNKLEdBQUc7UUFDQ0E7UUFDQTdHO1FBQ0FRO0tBQ0g7SUFDRCxPQUFPO0FBQ1g7QUFDQSxNQUFNbUgsNENBQTRDckk7QUFDbEQsTUFBTXNJLDRDQUE0QzdHO0FBQ2xELE1BQU04Ryw0Q0FBNEMvRjtBQUNsRCxNQUFNZ0csNENBQTRDekY7QUFDbEQsTUFBTTBGLDRDQUE0Qy9FO0FBQ2xELE1BQU1nRiw0Q0FBNENyQztBQUNsRCxNQUFNc0MsNENBQTRDbEM7QUFDbEQsTUFBTW1DLDRDQUE0Qy9CO0FBS3c5QixDQUMxZ0Msa0NBQWtDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZW1iZWRjaGFpbi1hZG1pbi8uL25vZGVfbW9kdWxlcy9AcmFkaXgtdWkvcmVhY3QtZGlhbG9nL2Rpc3QvaW5kZXgubWpzP2VlOGMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICQ2N1VIbSRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZXh0ZW5kc1wiO1xuaW1wb3J0IHt1c2VSZWYgYXMgJDY3VUhtJHVzZVJlZiwgY3JlYXRlRWxlbWVudCBhcyAkNjdVSG0kY3JlYXRlRWxlbWVudCwgdXNlQ2FsbGJhY2sgYXMgJDY3VUhtJHVzZUNhbGxiYWNrLCBmb3J3YXJkUmVmIGFzICQ2N1VIbSRmb3J3YXJkUmVmLCBDaGlsZHJlbiBhcyAkNjdVSG0kQ2hpbGRyZW4sIHVzZUVmZmVjdCBhcyAkNjdVSG0kdXNlRWZmZWN0LCBGcmFnbWVudCBhcyAkNjdVSG0kRnJhZ21lbnR9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHtjb21wb3NlRXZlbnRIYW5kbGVycyBhcyAkNjdVSG0kY29tcG9zZUV2ZW50SGFuZGxlcnN9IGZyb20gXCJAcmFkaXgtdWkvcHJpbWl0aXZlXCI7XG5pbXBvcnQge3VzZUNvbXBvc2VkUmVmcyBhcyAkNjdVSG0kdXNlQ29tcG9zZWRSZWZzfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LWNvbXBvc2UtcmVmc1wiO1xuaW1wb3J0IHtjcmVhdGVDb250ZXh0U2NvcGUgYXMgJDY3VUhtJGNyZWF0ZUNvbnRleHRTY29wZSwgY3JlYXRlQ29udGV4dCBhcyAkNjdVSG0kY3JlYXRlQ29udGV4dH0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1jb250ZXh0XCI7XG5pbXBvcnQge3VzZUlkIGFzICQ2N1VIbSR1c2VJZH0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1pZFwiO1xuaW1wb3J0IHt1c2VDb250cm9sbGFibGVTdGF0ZSBhcyAkNjdVSG0kdXNlQ29udHJvbGxhYmxlU3RhdGV9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtdXNlLWNvbnRyb2xsYWJsZS1zdGF0ZVwiO1xuaW1wb3J0IHtEaXNtaXNzYWJsZUxheWVyIGFzICQ2N1VIbSREaXNtaXNzYWJsZUxheWVyfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LWRpc21pc3NhYmxlLWxheWVyXCI7XG5pbXBvcnQge0ZvY3VzU2NvcGUgYXMgJDY3VUhtJEZvY3VzU2NvcGV9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtZm9jdXMtc2NvcGVcIjtcbmltcG9ydCB7UG9ydGFsIGFzICQ2N1VIbSRQb3J0YWx9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtcG9ydGFsXCI7XG5pbXBvcnQge1ByZXNlbmNlIGFzICQ2N1VIbSRQcmVzZW5jZX0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1wcmVzZW5jZVwiO1xuaW1wb3J0IHtQcmltaXRpdmUgYXMgJDY3VUhtJFByaW1pdGl2ZX0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1wcmltaXRpdmVcIjtcbmltcG9ydCB7dXNlRm9jdXNHdWFyZHMgYXMgJDY3VUhtJHVzZUZvY3VzR3VhcmRzfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LWZvY3VzLWd1YXJkc1wiO1xuaW1wb3J0IHtSZW1vdmVTY3JvbGwgYXMgJDY3VUhtJFJlbW92ZVNjcm9sbH0gZnJvbSBcInJlYWN0LXJlbW92ZS1zY3JvbGxcIjtcbmltcG9ydCB7aGlkZU90aGVycyBhcyAkNjdVSG0kaGlkZU90aGVyc30gZnJvbSBcImFyaWEtaGlkZGVuXCI7XG5pbXBvcnQge1Nsb3QgYXMgJDY3VUhtJFNsb3R9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3Qtc2xvdFwiO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIERpYWxvZ1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkRElBTE9HX05BTUUgPSAnRGlhbG9nJztcbmNvbnN0IFskNWQzODUwYzRkMGI0ZTZjNyR2YXIkY3JlYXRlRGlhbG9nQ29udGV4dCwgJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JGNjNzAyNzczYjhlYTNlNDFdID0gJDY3VUhtJGNyZWF0ZUNvbnRleHRTY29wZSgkNWQzODUwYzRkMGI0ZTZjNyR2YXIkRElBTE9HX05BTUUpO1xuY29uc3QgWyQ1ZDM4NTBjNGQwYjRlNmM3JHZhciREaWFsb2dQcm92aWRlciwgJDVkMzg1MGM0ZDBiNGU2YzckdmFyJHVzZURpYWxvZ0NvbnRleHRdID0gJDVkMzg1MGM0ZDBiNGU2YzckdmFyJGNyZWF0ZURpYWxvZ0NvbnRleHQoJDVkMzg1MGM0ZDBiNGU2YzckdmFyJERJQUxPR19OQU1FKTtcbmNvbnN0ICQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCQzZGRmMmQxNzRjZTAxMTUzID0gKHByb3BzKT0+e1xuICAgIGNvbnN0IHsgX19zY29wZURpYWxvZzogX19zY29wZURpYWxvZyAsIGNoaWxkcmVuOiBjaGlsZHJlbiAsIG9wZW46IG9wZW5Qcm9wICwgZGVmYXVsdE9wZW46IGRlZmF1bHRPcGVuICwgb25PcGVuQ2hhbmdlOiBvbk9wZW5DaGFuZ2UgLCBtb2RhbDogbW9kYWwgPSB0cnVlICB9ID0gcHJvcHM7XG4gICAgY29uc3QgdHJpZ2dlclJlZiA9ICQ2N1VIbSR1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgY29udGVudFJlZiA9ICQ2N1VIbSR1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgW29wZW4gPSBmYWxzZSwgc2V0T3Blbl0gPSAkNjdVSG0kdXNlQ29udHJvbGxhYmxlU3RhdGUoe1xuICAgICAgICBwcm9wOiBvcGVuUHJvcCxcbiAgICAgICAgZGVmYXVsdFByb3A6IGRlZmF1bHRPcGVuLFxuICAgICAgICBvbkNoYW5nZTogb25PcGVuQ2hhbmdlXG4gICAgfSk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDY3VUhtJGNyZWF0ZUVsZW1lbnQoJDVkMzg1MGM0ZDBiNGU2YzckdmFyJERpYWxvZ1Byb3ZpZGVyLCB7XG4gICAgICAgIHNjb3BlOiBfX3Njb3BlRGlhbG9nLFxuICAgICAgICB0cmlnZ2VyUmVmOiB0cmlnZ2VyUmVmLFxuICAgICAgICBjb250ZW50UmVmOiBjb250ZW50UmVmLFxuICAgICAgICBjb250ZW50SWQ6ICQ2N1VIbSR1c2VJZCgpLFxuICAgICAgICB0aXRsZUlkOiAkNjdVSG0kdXNlSWQoKSxcbiAgICAgICAgZGVzY3JpcHRpb25JZDogJDY3VUhtJHVzZUlkKCksXG4gICAgICAgIG9wZW46IG9wZW4sXG4gICAgICAgIG9uT3BlbkNoYW5nZTogc2V0T3BlbixcbiAgICAgICAgb25PcGVuVG9nZ2xlOiAkNjdVSG0kdXNlQ2FsbGJhY2soKCk9PnNldE9wZW4oKHByZXZPcGVuKT0+IXByZXZPcGVuXG4gICAgICAgICAgICApXG4gICAgICAgICwgW1xuICAgICAgICAgICAgc2V0T3BlblxuICAgICAgICBdKSxcbiAgICAgICAgbW9kYWw6IG1vZGFsXG4gICAgfSwgY2hpbGRyZW4pO1xufTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkM2RkZjJkMTc0Y2UwMTE1Mywge1xuICAgIGRpc3BsYXlOYW1lOiAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkRElBTE9HX05BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGlhbG9nVHJpZ2dlclxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkVFJJR0dFUl9OQU1FID0gJ0RpYWxvZ1RyaWdnZXInO1xuY29uc3QgJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JDJlMWUxMTIyY2YwY2JhODggPSAvKiNfX1BVUkVfXyovICQ2N1VIbSRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgX19zY29wZURpYWxvZzogX19zY29wZURpYWxvZyAsIC4uLnRyaWdnZXJQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgY29udGV4dCA9ICQ1ZDM4NTBjNGQwYjRlNmM3JHZhciR1c2VEaWFsb2dDb250ZXh0KCQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRUUklHR0VSX05BTUUsIF9fc2NvcGVEaWFsb2cpO1xuICAgIGNvbnN0IGNvbXBvc2VkVHJpZ2dlclJlZiA9ICQ2N1VIbSR1c2VDb21wb3NlZFJlZnMoZm9yd2FyZGVkUmVmLCBjb250ZXh0LnRyaWdnZXJSZWYpO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICQ2N1VIbSRjcmVhdGVFbGVtZW50KCQ2N1VIbSRQcmltaXRpdmUuYnV0dG9uLCAkNjdVSG0kYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe1xuICAgICAgICB0eXBlOiBcImJ1dHRvblwiLFxuICAgICAgICBcImFyaWEtaGFzcG9wdXBcIjogXCJkaWFsb2dcIixcbiAgICAgICAgXCJhcmlhLWV4cGFuZGVkXCI6IGNvbnRleHQub3BlbixcbiAgICAgICAgXCJhcmlhLWNvbnRyb2xzXCI6IGNvbnRleHQuY29udGVudElkLFxuICAgICAgICBcImRhdGEtc3RhdGVcIjogJDVkMzg1MGM0ZDBiNGU2YzckdmFyJGdldFN0YXRlKGNvbnRleHQub3BlbilcbiAgICB9LCB0cmlnZ2VyUHJvcHMsIHtcbiAgICAgICAgcmVmOiBjb21wb3NlZFRyaWdnZXJSZWYsXG4gICAgICAgIG9uQ2xpY2s6ICQ2N1VIbSRjb21wb3NlRXZlbnRIYW5kbGVycyhwcm9wcy5vbkNsaWNrLCBjb250ZXh0Lm9uT3BlblRvZ2dsZSlcbiAgICB9KSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkMmUxZTExMjJjZjBjYmE4OCwge1xuICAgIGRpc3BsYXlOYW1lOiAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkVFJJR0dFUl9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIERpYWxvZ1BvcnRhbFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkUE9SVEFMX05BTUUgPSAnRGlhbG9nUG9ydGFsJztcbmNvbnN0IFskNWQzODUwYzRkMGI0ZTZjNyR2YXIkUG9ydGFsUHJvdmlkZXIsICQ1ZDM4NTBjNGQwYjRlNmM3JHZhciR1c2VQb3J0YWxDb250ZXh0XSA9ICQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRjcmVhdGVEaWFsb2dDb250ZXh0KCQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRQT1JUQUxfTkFNRSwge1xuICAgIGZvcmNlTW91bnQ6IHVuZGVmaW5lZFxufSk7XG5jb25zdCAkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkZGFkN2M5NTU0MmJhY2NlMCA9IChwcm9wcyk9PntcbiAgICBjb25zdCB7IF9fc2NvcGVEaWFsb2c6IF9fc2NvcGVEaWFsb2cgLCBmb3JjZU1vdW50OiBmb3JjZU1vdW50ICwgY2hpbGRyZW46IGNoaWxkcmVuICwgY29udGFpbmVyOiBjb250YWluZXIgIH0gPSBwcm9wcztcbiAgICBjb25zdCBjb250ZXh0ID0gJDVkMzg1MGM0ZDBiNGU2YzckdmFyJHVzZURpYWxvZ0NvbnRleHQoJDVkMzg1MGM0ZDBiNGU2YzckdmFyJFBPUlRBTF9OQU1FLCBfX3Njb3BlRGlhbG9nKTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAkNjdVSG0kY3JlYXRlRWxlbWVudCgkNWQzODUwYzRkMGI0ZTZjNyR2YXIkUG9ydGFsUHJvdmlkZXIsIHtcbiAgICAgICAgc2NvcGU6IF9fc2NvcGVEaWFsb2csXG4gICAgICAgIGZvcmNlTW91bnQ6IGZvcmNlTW91bnRcbiAgICB9LCAkNjdVSG0kQ2hpbGRyZW4ubWFwKGNoaWxkcmVuLCAoY2hpbGQpPT4vKiNfX1BVUkVfXyovICQ2N1VIbSRjcmVhdGVFbGVtZW50KCQ2N1VIbSRQcmVzZW5jZSwge1xuICAgICAgICAgICAgcHJlc2VudDogZm9yY2VNb3VudCB8fCBjb250ZXh0Lm9wZW5cbiAgICAgICAgfSwgLyojX19QVVJFX18qLyAkNjdVSG0kY3JlYXRlRWxlbWVudCgkNjdVSG0kUG9ydGFsLCB7XG4gICAgICAgICAgICBhc0NoaWxkOiB0cnVlLFxuICAgICAgICAgICAgY29udGFpbmVyOiBjb250YWluZXJcbiAgICAgICAgfSwgY2hpbGQpKVxuICAgICkpO1xufTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkZGFkN2M5NTU0MmJhY2NlMCwge1xuICAgIGRpc3BsYXlOYW1lOiAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkUE9SVEFMX05BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGlhbG9nT3ZlcmxheVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkT1ZFUkxBWV9OQU1FID0gJ0RpYWxvZ092ZXJsYXknO1xuY29uc3QgJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JGJkMWQwNmM3OWJlMTllMTcgPSAvKiNfX1BVUkVfXyovICQ2N1VIbSRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHBvcnRhbENvbnRleHQgPSAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkdXNlUG9ydGFsQ29udGV4dCgkNWQzODUwYzRkMGI0ZTZjNyR2YXIkT1ZFUkxBWV9OQU1FLCBwcm9wcy5fX3Njb3BlRGlhbG9nKTtcbiAgICBjb25zdCB7IGZvcmNlTW91bnQ6IGZvcmNlTW91bnQgPSBwb3J0YWxDb250ZXh0LmZvcmNlTW91bnQgLCAuLi5vdmVybGF5UHJvcHMgfSA9IHByb3BzO1xuICAgIGNvbnN0IGNvbnRleHQgPSAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkdXNlRGlhbG9nQ29udGV4dCgkNWQzODUwYzRkMGI0ZTZjNyR2YXIkT1ZFUkxBWV9OQU1FLCBwcm9wcy5fX3Njb3BlRGlhbG9nKTtcbiAgICByZXR1cm4gY29udGV4dC5tb2RhbCA/IC8qI19fUFVSRV9fKi8gJDY3VUhtJGNyZWF0ZUVsZW1lbnQoJDY3VUhtJFByZXNlbmNlLCB7XG4gICAgICAgIHByZXNlbnQ6IGZvcmNlTW91bnQgfHwgY29udGV4dC5vcGVuXG4gICAgfSwgLyojX19QVVJFX18qLyAkNjdVSG0kY3JlYXRlRWxlbWVudCgkNWQzODUwYzRkMGI0ZTZjNyR2YXIkRGlhbG9nT3ZlcmxheUltcGwsICQ2N1VIbSRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7fSwgb3ZlcmxheVByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gICAgfSkpKSA6IG51bGw7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkYmQxZDA2Yzc5YmUxOWUxNywge1xuICAgIGRpc3BsYXlOYW1lOiAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkT1ZFUkxBWV9OQU1FXG59KTtcbmNvbnN0ICQ1ZDM4NTBjNGQwYjRlNmM3JHZhciREaWFsb2dPdmVybGF5SW1wbCA9IC8qI19fUFVSRV9fKi8gJDY3VUhtJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlRGlhbG9nOiBfX3Njb3BlRGlhbG9nICwgLi4ub3ZlcmxheVByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBjb250ZXh0ID0gJDVkMzg1MGM0ZDBiNGU2YzckdmFyJHVzZURpYWxvZ0NvbnRleHQoJDVkMzg1MGM0ZDBiNGU2YzckdmFyJE9WRVJMQVlfTkFNRSwgX19zY29wZURpYWxvZyk7XG4gICAgcmV0dXJuKC8qI19fUFVSRV9fKi8gLy8gTWFrZSBzdXJlIGBDb250ZW50YCBpcyBzY3JvbGxhYmxlIGV2ZW4gd2hlbiBpdCBkb2Vzbid0IGxpdmUgaW5zaWRlIGBSZW1vdmVTY3JvbGxgXG4gICAgLy8gaWUuIHdoZW4gYE92ZXJsYXlgIGFuZCBgQ29udGVudGAgYXJlIHNpYmxpbmdzXG4gICAgJDY3VUhtJGNyZWF0ZUVsZW1lbnQoJDY3VUhtJFJlbW92ZVNjcm9sbCwge1xuICAgICAgICBhczogJDY3VUhtJFNsb3QsXG4gICAgICAgIGFsbG93UGluY2hab29tOiB0cnVlLFxuICAgICAgICBzaGFyZHM6IFtcbiAgICAgICAgICAgIGNvbnRleHQuY29udGVudFJlZlxuICAgICAgICBdXG4gICAgfSwgLyojX19QVVJFX18qLyAkNjdVSG0kY3JlYXRlRWxlbWVudCgkNjdVSG0kUHJpbWl0aXZlLmRpdiwgJDY3VUhtJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHtcbiAgICAgICAgXCJkYXRhLXN0YXRlXCI6ICQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRnZXRTdGF0ZShjb250ZXh0Lm9wZW4pXG4gICAgfSwgb3ZlcmxheVByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmIC8vIFdlIHJlLWVuYWJsZSBwb2ludGVyLWV2ZW50cyBwcmV2ZW50ZWQgYnkgYERpYWxvZy5Db250ZW50YCB0byBhbGxvdyBzY3JvbGxpbmcgdGhlIG92ZXJsYXkuXG4gICAgICAgICxcbiAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgIHBvaW50ZXJFdmVudHM6ICdhdXRvJyxcbiAgICAgICAgICAgIC4uLm92ZXJsYXlQcm9wcy5zdHlsZVxuICAgICAgICB9XG4gICAgfSkpKSk7XG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIERpYWxvZ0NvbnRlbnRcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDVkMzg1MGM0ZDBiNGU2YzckdmFyJENPTlRFTlRfTkFNRSA9ICdEaWFsb2dDb250ZW50JztcbmNvbnN0ICQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCRiNmQ5NTY1ZGUxZTA2OGNmID0gLyojX19QVVJFX18qLyAkNjdVSG0kZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICBjb25zdCBwb3J0YWxDb250ZXh0ID0gJDVkMzg1MGM0ZDBiNGU2YzckdmFyJHVzZVBvcnRhbENvbnRleHQoJDVkMzg1MGM0ZDBiNGU2YzckdmFyJENPTlRFTlRfTkFNRSwgcHJvcHMuX19zY29wZURpYWxvZyk7XG4gICAgY29uc3QgeyBmb3JjZU1vdW50OiBmb3JjZU1vdW50ID0gcG9ydGFsQ29udGV4dC5mb3JjZU1vdW50ICwgLi4uY29udGVudFByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBjb250ZXh0ID0gJDVkMzg1MGM0ZDBiNGU2YzckdmFyJHVzZURpYWxvZ0NvbnRleHQoJDVkMzg1MGM0ZDBiNGU2YzckdmFyJENPTlRFTlRfTkFNRSwgcHJvcHMuX19zY29wZURpYWxvZyk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDY3VUhtJGNyZWF0ZUVsZW1lbnQoJDY3VUhtJFByZXNlbmNlLCB7XG4gICAgICAgIHByZXNlbnQ6IGZvcmNlTW91bnQgfHwgY29udGV4dC5vcGVuXG4gICAgfSwgY29udGV4dC5tb2RhbCA/IC8qI19fUFVSRV9fKi8gJDY3VUhtJGNyZWF0ZUVsZW1lbnQoJDVkMzg1MGM0ZDBiNGU2YzckdmFyJERpYWxvZ0NvbnRlbnRNb2RhbCwgJDY3VUhtJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBjb250ZW50UHJvcHMsIHtcbiAgICAgICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgICB9KSkgOiAvKiNfX1BVUkVfXyovICQ2N1VIbSRjcmVhdGVFbGVtZW50KCQ1ZDM4NTBjNGQwYjRlNmM3JHZhciREaWFsb2dDb250ZW50Tm9uTW9kYWwsICQ2N1VIbSRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7fSwgY29udGVudFByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gICAgfSkpKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCRiNmQ5NTY1ZGUxZTA2OGNmLCB7XG4gICAgZGlzcGxheU5hbWU6ICQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRDT05URU5UX05BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkRGlhbG9nQ29udGVudE1vZGFsID0gLyojX19QVVJFX18qLyAkNjdVSG0kZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICBjb25zdCBjb250ZXh0ID0gJDVkMzg1MGM0ZDBiNGU2YzckdmFyJHVzZURpYWxvZ0NvbnRleHQoJDVkMzg1MGM0ZDBiNGU2YzckdmFyJENPTlRFTlRfTkFNRSwgcHJvcHMuX19zY29wZURpYWxvZyk7XG4gICAgY29uc3QgY29udGVudFJlZiA9ICQ2N1VIbSR1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgY29tcG9zZWRSZWZzID0gJDY3VUhtJHVzZUNvbXBvc2VkUmVmcyhmb3J3YXJkZWRSZWYsIGNvbnRleHQuY29udGVudFJlZiwgY29udGVudFJlZik7IC8vIGFyaWEtaGlkZSBldmVyeXRoaW5nIGV4Y2VwdCB0aGUgY29udGVudCAoYmV0dGVyIHN1cHBvcnRlZCBlcXVpdmFsZW50IHRvIHNldHRpbmcgYXJpYS1tb2RhbClcbiAgICAkNjdVSG0kdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGNvbnN0IGNvbnRlbnQgPSBjb250ZW50UmVmLmN1cnJlbnQ7XG4gICAgICAgIGlmIChjb250ZW50KSByZXR1cm4gJDY3VUhtJGhpZGVPdGhlcnMoY29udGVudCk7XG4gICAgfSwgW10pO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICQ2N1VIbSRjcmVhdGVFbGVtZW50KCQ1ZDM4NTBjNGQwYjRlNmM3JHZhciREaWFsb2dDb250ZW50SW1wbCwgJDY3VUhtJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBwcm9wcywge1xuICAgICAgICByZWY6IGNvbXBvc2VkUmVmcyAvLyB3ZSBtYWtlIHN1cmUgZm9jdXMgaXNuJ3QgdHJhcHBlZCBvbmNlIGBEaWFsb2dDb250ZW50YCBoYXMgYmVlbiBjbG9zZWRcbiAgICAgICAgLFxuICAgICAgICB0cmFwRm9jdXM6IGNvbnRleHQub3BlbixcbiAgICAgICAgZGlzYWJsZU91dHNpZGVQb2ludGVyRXZlbnRzOiB0cnVlLFxuICAgICAgICBvbkNsb3NlQXV0b0ZvY3VzOiAkNjdVSG0kY29tcG9zZUV2ZW50SGFuZGxlcnMocHJvcHMub25DbG9zZUF1dG9Gb2N1cywgKGV2ZW50KT0+e1xuICAgICAgICAgICAgdmFyIF9jb250ZXh0JHRyaWdnZXJSZWYkYztcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAoX2NvbnRleHQkdHJpZ2dlclJlZiRjID0gY29udGV4dC50cmlnZ2VyUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9jb250ZXh0JHRyaWdnZXJSZWYkYyA9PT0gdm9pZCAwIHx8IF9jb250ZXh0JHRyaWdnZXJSZWYkYy5mb2N1cygpO1xuICAgICAgICB9KSxcbiAgICAgICAgb25Qb2ludGVyRG93bk91dHNpZGU6ICQ2N1VIbSRjb21wb3NlRXZlbnRIYW5kbGVycyhwcm9wcy5vblBvaW50ZXJEb3duT3V0c2lkZSwgKGV2ZW50KT0+e1xuICAgICAgICAgICAgY29uc3Qgb3JpZ2luYWxFdmVudCA9IGV2ZW50LmRldGFpbC5vcmlnaW5hbEV2ZW50O1xuICAgICAgICAgICAgY29uc3QgY3RybExlZnRDbGljayA9IG9yaWdpbmFsRXZlbnQuYnV0dG9uID09PSAwICYmIG9yaWdpbmFsRXZlbnQuY3RybEtleSA9PT0gdHJ1ZTtcbiAgICAgICAgICAgIGNvbnN0IGlzUmlnaHRDbGljayA9IG9yaWdpbmFsRXZlbnQuYnV0dG9uID09PSAyIHx8IGN0cmxMZWZ0Q2xpY2s7IC8vIElmIHRoZSBldmVudCBpcyBhIHJpZ2h0LWNsaWNrLCB3ZSBzaG91bGRuJ3QgY2xvc2UgYmVjYXVzZVxuICAgICAgICAgICAgLy8gaXQgaXMgZWZmZWN0aXZlbHkgYXMgaWYgd2UgcmlnaHQtY2xpY2tlZCB0aGUgYE92ZXJsYXlgLlxuICAgICAgICAgICAgaWYgKGlzUmlnaHRDbGljaykgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfSkgLy8gV2hlbiBmb2N1cyBpcyB0cmFwcGVkLCBhIGBmb2N1c291dGAgZXZlbnQgbWF5IHN0aWxsIGhhcHBlbi5cbiAgICAgICAgLFxuICAgICAgICBvbkZvY3VzT3V0c2lkZTogJDY3VUhtJGNvbXBvc2VFdmVudEhhbmRsZXJzKHByb3BzLm9uRm9jdXNPdXRzaWRlLCAoZXZlbnQpPT5ldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgIClcbiAgICB9KSk7XG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDVkMzg1MGM0ZDBiNGU2YzckdmFyJERpYWxvZ0NvbnRlbnROb25Nb2RhbCA9IC8qI19fUFVSRV9fKi8gJDY3VUhtJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgY29udGV4dCA9ICQ1ZDM4NTBjNGQwYjRlNmM3JHZhciR1c2VEaWFsb2dDb250ZXh0KCQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRDT05URU5UX05BTUUsIHByb3BzLl9fc2NvcGVEaWFsb2cpO1xuICAgIGNvbnN0IGhhc0ludGVyYWN0ZWRPdXRzaWRlUmVmID0gJDY3VUhtJHVzZVJlZihmYWxzZSk7XG4gICAgY29uc3QgaGFzUG9pbnRlckRvd25PdXRzaWRlUmVmID0gJDY3VUhtJHVzZVJlZihmYWxzZSk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDY3VUhtJGNyZWF0ZUVsZW1lbnQoJDVkMzg1MGM0ZDBiNGU2YzckdmFyJERpYWxvZ0NvbnRlbnRJbXBsLCAkNjdVSG0kYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIHByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmLFxuICAgICAgICB0cmFwRm9jdXM6IGZhbHNlLFxuICAgICAgICBkaXNhYmxlT3V0c2lkZVBvaW50ZXJFdmVudHM6IGZhbHNlLFxuICAgICAgICBvbkNsb3NlQXV0b0ZvY3VzOiAoZXZlbnQpPT57XG4gICAgICAgICAgICB2YXIgX3Byb3BzJG9uQ2xvc2VBdXRvRm9jO1xuICAgICAgICAgICAgKF9wcm9wcyRvbkNsb3NlQXV0b0ZvYyA9IHByb3BzLm9uQ2xvc2VBdXRvRm9jdXMpID09PSBudWxsIHx8IF9wcm9wcyRvbkNsb3NlQXV0b0ZvYyA9PT0gdm9pZCAwIHx8IF9wcm9wcyRvbkNsb3NlQXV0b0ZvYy5jYWxsKHByb3BzLCBldmVudCk7XG4gICAgICAgICAgICBpZiAoIWV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgICAgICAgICAgICB2YXIgX2NvbnRleHQkdHJpZ2dlclJlZiRjMjtcbiAgICAgICAgICAgICAgICBpZiAoIWhhc0ludGVyYWN0ZWRPdXRzaWRlUmVmLmN1cnJlbnQpIChfY29udGV4dCR0cmlnZ2VyUmVmJGMyID0gY29udGV4dC50cmlnZ2VyUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9jb250ZXh0JHRyaWdnZXJSZWYkYzIgPT09IHZvaWQgMCB8fCBfY29udGV4dCR0cmlnZ2VyUmVmJGMyLmZvY3VzKCk7IC8vIEFsd2F5cyBwcmV2ZW50IGF1dG8gZm9jdXMgYmVjYXVzZSB3ZSBlaXRoZXIgZm9jdXMgbWFudWFsbHkgb3Igd2FudCB1c2VyIGFnZW50IGZvY3VzXG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGhhc0ludGVyYWN0ZWRPdXRzaWRlUmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICAgICAgICAgIGhhc1BvaW50ZXJEb3duT3V0c2lkZVJlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgIH0sXG4gICAgICAgIG9uSW50ZXJhY3RPdXRzaWRlOiAoZXZlbnQpPT57XG4gICAgICAgICAgICB2YXIgX3Byb3BzJG9uSW50ZXJhY3RPdXRzLCBfY29udGV4dCR0cmlnZ2VyUmVmJGMzO1xuICAgICAgICAgICAgKF9wcm9wcyRvbkludGVyYWN0T3V0cyA9IHByb3BzLm9uSW50ZXJhY3RPdXRzaWRlKSA9PT0gbnVsbCB8fCBfcHJvcHMkb25JbnRlcmFjdE91dHMgPT09IHZvaWQgMCB8fCBfcHJvcHMkb25JbnRlcmFjdE91dHMuY2FsbChwcm9wcywgZXZlbnQpO1xuICAgICAgICAgICAgaWYgKCFldmVudC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICAgICAgICAgICAgaGFzSW50ZXJhY3RlZE91dHNpZGVSZWYuY3VycmVudCA9IHRydWU7XG4gICAgICAgICAgICAgICAgaWYgKGV2ZW50LmRldGFpbC5vcmlnaW5hbEV2ZW50LnR5cGUgPT09ICdwb2ludGVyZG93bicpIGhhc1BvaW50ZXJEb3duT3V0c2lkZVJlZi5jdXJyZW50ID0gdHJ1ZTtcbiAgICAgICAgICAgIH0gLy8gUHJldmVudCBkaXNtaXNzaW5nIHdoZW4gY2xpY2tpbmcgdGhlIHRyaWdnZXIuXG4gICAgICAgICAgICAvLyBBcyB0aGUgdHJpZ2dlciBpcyBhbHJlYWR5IHNldHVwIHRvIGNsb3NlLCB3aXRob3V0IGRvaW5nIHNvIHdvdWxkXG4gICAgICAgICAgICAvLyBjYXVzZSBpdCB0byBjbG9zZSBhbmQgaW1tZWRpYXRlbHkgb3Blbi5cbiAgICAgICAgICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldDtcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldElzVHJpZ2dlciA9IChfY29udGV4dCR0cmlnZ2VyUmVmJGMzID0gY29udGV4dC50cmlnZ2VyUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9jb250ZXh0JHRyaWdnZXJSZWYkYzMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9jb250ZXh0JHRyaWdnZXJSZWYkYzMuY29udGFpbnModGFyZ2V0KTtcbiAgICAgICAgICAgIGlmICh0YXJnZXRJc1RyaWdnZXIpIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7IC8vIE9uIFNhZmFyaSBpZiB0aGUgdHJpZ2dlciBpcyBpbnNpZGUgYSBjb250YWluZXIgd2l0aCB0YWJJbmRleD17MH0sIHdoZW4gY2xpY2tlZFxuICAgICAgICAgICAgLy8gd2Ugd2lsbCBnZXQgdGhlIHBvaW50ZXIgZG93biBvdXRzaWRlIGV2ZW50IG9uIHRoZSB0cmlnZ2VyLCBidXQgdGhlbiBhIHN1YnNlcXVlbnRcbiAgICAgICAgICAgIC8vIGZvY3VzIG91dHNpZGUgZXZlbnQgb24gdGhlIGNvbnRhaW5lciwgd2UgaWdub3JlIGFueSBmb2N1cyBvdXRzaWRlIGV2ZW50IHdoZW4gd2UndmVcbiAgICAgICAgICAgIC8vIGFscmVhZHkgaGFkIGEgcG9pbnRlciBkb3duIG91dHNpZGUgZXZlbnQuXG4gICAgICAgICAgICBpZiAoZXZlbnQuZGV0YWlsLm9yaWdpbmFsRXZlbnQudHlwZSA9PT0gJ2ZvY3VzaW4nICYmIGhhc1BvaW50ZXJEb3duT3V0c2lkZVJlZi5jdXJyZW50KSBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG4gICAgfSkpO1xufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICQ1ZDM4NTBjNGQwYjRlNmM3JHZhciREaWFsb2dDb250ZW50SW1wbCA9IC8qI19fUFVSRV9fKi8gJDY3VUhtJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlRGlhbG9nOiBfX3Njb3BlRGlhbG9nICwgdHJhcEZvY3VzOiB0cmFwRm9jdXMgLCBvbk9wZW5BdXRvRm9jdXM6IG9uT3BlbkF1dG9Gb2N1cyAsIG9uQ2xvc2VBdXRvRm9jdXM6IG9uQ2xvc2VBdXRvRm9jdXMgLCAuLi5jb250ZW50UHJvcHMgfSA9IHByb3BzO1xuICAgIGNvbnN0IGNvbnRleHQgPSAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkdXNlRGlhbG9nQ29udGV4dCgkNWQzODUwYzRkMGI0ZTZjNyR2YXIkQ09OVEVOVF9OQU1FLCBfX3Njb3BlRGlhbG9nKTtcbiAgICBjb25zdCBjb250ZW50UmVmID0gJDY3VUhtJHVzZVJlZihudWxsKTtcbiAgICBjb25zdCBjb21wb3NlZFJlZnMgPSAkNjdVSG0kdXNlQ29tcG9zZWRSZWZzKGZvcndhcmRlZFJlZiwgY29udGVudFJlZik7IC8vIE1ha2Ugc3VyZSB0aGUgd2hvbGUgdHJlZSBoYXMgZm9jdXMgZ3VhcmRzIGFzIG91ciBgRGlhbG9nYCB3aWxsIGJlXG4gICAgLy8gdGhlIGxhc3QgZWxlbWVudCBpbiB0aGUgRE9NIChiZWFjdXNlIG9mIHRoZSBgUG9ydGFsYClcbiAgICAkNjdVSG0kdXNlRm9jdXNHdWFyZHMoKTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAkNjdVSG0kY3JlYXRlRWxlbWVudCgkNjdVSG0kRnJhZ21lbnQsIG51bGwsIC8qI19fUFVSRV9fKi8gJDY3VUhtJGNyZWF0ZUVsZW1lbnQoJDY3VUhtJEZvY3VzU2NvcGUsIHtcbiAgICAgICAgYXNDaGlsZDogdHJ1ZSxcbiAgICAgICAgbG9vcDogdHJ1ZSxcbiAgICAgICAgdHJhcHBlZDogdHJhcEZvY3VzLFxuICAgICAgICBvbk1vdW50QXV0b0ZvY3VzOiBvbk9wZW5BdXRvRm9jdXMsXG4gICAgICAgIG9uVW5tb3VudEF1dG9Gb2N1czogb25DbG9zZUF1dG9Gb2N1c1xuICAgIH0sIC8qI19fUFVSRV9fKi8gJDY3VUhtJGNyZWF0ZUVsZW1lbnQoJDY3VUhtJERpc21pc3NhYmxlTGF5ZXIsICQ2N1VIbSRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7XG4gICAgICAgIHJvbGU6IFwiZGlhbG9nXCIsXG4gICAgICAgIGlkOiBjb250ZXh0LmNvbnRlbnRJZCxcbiAgICAgICAgXCJhcmlhLWRlc2NyaWJlZGJ5XCI6IGNvbnRleHQuZGVzY3JpcHRpb25JZCxcbiAgICAgICAgXCJhcmlhLWxhYmVsbGVkYnlcIjogY29udGV4dC50aXRsZUlkLFxuICAgICAgICBcImRhdGEtc3RhdGVcIjogJDVkMzg1MGM0ZDBiNGU2YzckdmFyJGdldFN0YXRlKGNvbnRleHQub3BlbilcbiAgICB9LCBjb250ZW50UHJvcHMsIHtcbiAgICAgICAgcmVmOiBjb21wb3NlZFJlZnMsXG4gICAgICAgIG9uRGlzbWlzczogKCk9PmNvbnRleHQub25PcGVuQ2hhbmdlKGZhbHNlKVxuICAgIH0pKSksIGZhbHNlKTtcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGlhbG9nVGl0bGVcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDVkMzg1MGM0ZDBiNGU2YzckdmFyJFRJVExFX05BTUUgPSAnRGlhbG9nVGl0bGUnO1xuY29uc3QgJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JDE2Zjc2MzhlNGEzNGI5MDkgPSAvKiNfX1BVUkVfXyovICQ2N1VIbSRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgX19zY29wZURpYWxvZzogX19zY29wZURpYWxvZyAsIC4uLnRpdGxlUHJvcHMgfSA9IHByb3BzO1xuICAgIGNvbnN0IGNvbnRleHQgPSAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkdXNlRGlhbG9nQ29udGV4dCgkNWQzODUwYzRkMGI0ZTZjNyR2YXIkVElUTEVfTkFNRSwgX19zY29wZURpYWxvZyk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDY3VUhtJGNyZWF0ZUVsZW1lbnQoJDY3VUhtJFByaW1pdGl2ZS5oMiwgJDY3VUhtJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHtcbiAgICAgICAgaWQ6IGNvbnRleHQudGl0bGVJZFxuICAgIH0sIHRpdGxlUHJvcHMsIHtcbiAgICAgICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgICB9KSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkMTZmNzYzOGU0YTM0YjkwOSwge1xuICAgIGRpc3BsYXlOYW1lOiAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkVElUTEVfTkFNRVxufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBEaWFsb2dEZXNjcmlwdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkREVTQ1JJUFRJT05fTkFNRSA9ICdEaWFsb2dEZXNjcmlwdGlvbic7XG5jb25zdCAkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkOTRlOTRjMmVjMmM5NTRkNSA9IC8qI19fUFVSRV9fKi8gJDY3VUhtJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlRGlhbG9nOiBfX3Njb3BlRGlhbG9nICwgLi4uZGVzY3JpcHRpb25Qcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgY29udGV4dCA9ICQ1ZDM4NTBjNGQwYjRlNmM3JHZhciR1c2VEaWFsb2dDb250ZXh0KCQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRERVNDUklQVElPTl9OQU1FLCBfX3Njb3BlRGlhbG9nKTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAkNjdVSG0kY3JlYXRlRWxlbWVudCgkNjdVSG0kUHJpbWl0aXZlLnAsICQ2N1VIbSRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7XG4gICAgICAgIGlkOiBjb250ZXh0LmRlc2NyaXB0aW9uSWRcbiAgICB9LCBkZXNjcmlwdGlvblByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gICAgfSkpO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JDk0ZTk0YzJlYzJjOTU0ZDUsIHtcbiAgICBkaXNwbGF5TmFtZTogJDVkMzg1MGM0ZDBiNGU2YzckdmFyJERFU0NSSVBUSU9OX05BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGlhbG9nQ2xvc2VcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDVkMzg1MGM0ZDBiNGU2YzckdmFyJENMT1NFX05BTUUgPSAnRGlhbG9nQ2xvc2UnO1xuY29uc3QgJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JGZiYTJmYjdjZDc4MWI3YWMgPSAvKiNfX1BVUkVfXyovICQ2N1VIbSRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgX19zY29wZURpYWxvZzogX19zY29wZURpYWxvZyAsIC4uLmNsb3NlUHJvcHMgfSA9IHByb3BzO1xuICAgIGNvbnN0IGNvbnRleHQgPSAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkdXNlRGlhbG9nQ29udGV4dCgkNWQzODUwYzRkMGI0ZTZjNyR2YXIkQ0xPU0VfTkFNRSwgX19zY29wZURpYWxvZyk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDY3VUhtJGNyZWF0ZUVsZW1lbnQoJDY3VUhtJFByaW1pdGl2ZS5idXR0b24sICQ2N1VIbSRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7XG4gICAgICAgIHR5cGU6IFwiYnV0dG9uXCJcbiAgICB9LCBjbG9zZVByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmLFxuICAgICAgICBvbkNsaWNrOiAkNjdVSG0kY29tcG9zZUV2ZW50SGFuZGxlcnMocHJvcHMub25DbGljaywgKCk9PmNvbnRleHQub25PcGVuQ2hhbmdlKGZhbHNlKVxuICAgICAgICApXG4gICAgfSkpO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JGZiYTJmYjdjZDc4MWI3YWMsIHtcbiAgICBkaXNwbGF5TmFtZTogJDVkMzg1MGM0ZDBiNGU2YzckdmFyJENMT1NFX05BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBmdW5jdGlvbiAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkZ2V0U3RhdGUob3Blbikge1xuICAgIHJldHVybiBvcGVuID8gJ29wZW4nIDogJ2Nsb3NlZCc7XG59XG5jb25zdCAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkVElUTEVfV0FSTklOR19OQU1FID0gJ0RpYWxvZ1RpdGxlV2FybmluZyc7XG5jb25zdCBbJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JDY5YjYyYTQ5MzkzOTE3ZDYsICQ1ZDM4NTBjNGQwYjRlNmM3JHZhciR1c2VXYXJuaW5nQ29udGV4dF0gPSAkNjdVSG0kY3JlYXRlQ29udGV4dCgkNWQzODUwYzRkMGI0ZTZjNyR2YXIkVElUTEVfV0FSTklOR19OQU1FLCB7XG4gICAgY29udGVudE5hbWU6ICQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRDT05URU5UX05BTUUsXG4gICAgdGl0bGVOYW1lOiAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkVElUTEVfTkFNRSxcbiAgICBkb2NzU2x1ZzogJ2RpYWxvZydcbn0pO1xuY29uc3QgJDVkMzg1MGM0ZDBiNGU2YzckdmFyJFRpdGxlV2FybmluZyA9ICh7IHRpdGxlSWQ6IHRpdGxlSWQgIH0pPT57XG4gICAgY29uc3QgdGl0bGVXYXJuaW5nQ29udGV4dCA9ICQ1ZDM4NTBjNGQwYjRlNmM3JHZhciR1c2VXYXJuaW5nQ29udGV4dCgkNWQzODUwYzRkMGI0ZTZjNyR2YXIkVElUTEVfV0FSTklOR19OQU1FKTtcbiAgICBjb25zdCBNRVNTQUdFID0gYFxcYCR7dGl0bGVXYXJuaW5nQ29udGV4dC5jb250ZW50TmFtZX1cXGAgcmVxdWlyZXMgYSBcXGAke3RpdGxlV2FybmluZ0NvbnRleHQudGl0bGVOYW1lfVxcYCBmb3IgdGhlIGNvbXBvbmVudCB0byBiZSBhY2Nlc3NpYmxlIGZvciBzY3JlZW4gcmVhZGVyIHVzZXJzLlxuXG5JZiB5b3Ugd2FudCB0byBoaWRlIHRoZSBcXGAke3RpdGxlV2FybmluZ0NvbnRleHQudGl0bGVOYW1lfVxcYCwgeW91IGNhbiB3cmFwIGl0IHdpdGggb3VyIFZpc3VhbGx5SGlkZGVuIGNvbXBvbmVudC5cblxuRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSBodHRwczovL3JhZGl4LXVpLmNvbS9wcmltaXRpdmVzL2RvY3MvY29tcG9uZW50cy8ke3RpdGxlV2FybmluZ0NvbnRleHQuZG9jc1NsdWd9YDtcbiAgICAkNjdVSG0kdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGlmICh0aXRsZUlkKSB7XG4gICAgICAgICAgICBjb25zdCBoYXNUaXRsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRpdGxlSWQpO1xuICAgICAgICAgICAgaWYgKCFoYXNUaXRsZSkgdGhyb3cgbmV3IEVycm9yKE1FU1NBR0UpO1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBNRVNTQUdFLFxuICAgICAgICB0aXRsZUlkXG4gICAgXSk7XG4gICAgcmV0dXJuIG51bGw7XG59O1xuY29uc3QgJDVkMzg1MGM0ZDBiNGU2YzckdmFyJERFU0NSSVBUSU9OX1dBUk5JTkdfTkFNRSA9ICdEaWFsb2dEZXNjcmlwdGlvbldhcm5pbmcnO1xuY29uc3QgJDVkMzg1MGM0ZDBiNGU2YzckdmFyJERlc2NyaXB0aW9uV2FybmluZyA9ICh7IGNvbnRlbnRSZWY6IGNvbnRlbnRSZWYgLCBkZXNjcmlwdGlvbklkOiBkZXNjcmlwdGlvbklkICB9KT0+e1xuICAgIGNvbnN0IGRlc2NyaXB0aW9uV2FybmluZ0NvbnRleHQgPSAkNWQzODUwYzRkMGI0ZTZjNyR2YXIkdXNlV2FybmluZ0NvbnRleHQoJDVkMzg1MGM0ZDBiNGU2YzckdmFyJERFU0NSSVBUSU9OX1dBUk5JTkdfTkFNRSk7XG4gICAgY29uc3QgTUVTU0FHRSA9IGBXYXJuaW5nOiBNaXNzaW5nIFxcYERlc2NyaXB0aW9uXFxgIG9yIFxcYGFyaWEtZGVzY3JpYmVkYnk9e3VuZGVmaW5lZH1cXGAgZm9yIHske2Rlc2NyaXB0aW9uV2FybmluZ0NvbnRleHQuY29udGVudE5hbWV9fS5gO1xuICAgICQ2N1VIbSR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgdmFyIF9jb250ZW50UmVmJGN1cnJlbnQ7XG4gICAgICAgIGNvbnN0IGRlc2NyaWJlZEJ5SWQgPSAoX2NvbnRlbnRSZWYkY3VycmVudCA9IGNvbnRlbnRSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2NvbnRlbnRSZWYkY3VycmVudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2NvbnRlbnRSZWYkY3VycmVudC5nZXRBdHRyaWJ1dGUoJ2FyaWEtZGVzY3JpYmVkYnknKTsgLy8gaWYgd2UgaGF2ZSBhbiBpZCBhbmQgdGhlIHVzZXIgaGFzbid0IHNldCBhcmlhLWRlc2NyaWJlZGJ5PXt1bmRlZmluZWR9XG4gICAgICAgIGlmIChkZXNjcmlwdGlvbklkICYmIGRlc2NyaWJlZEJ5SWQpIHtcbiAgICAgICAgICAgIGNvbnN0IGhhc0Rlc2NyaXB0aW9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZGVzY3JpcHRpb25JZCk7XG4gICAgICAgICAgICBpZiAoIWhhc0Rlc2NyaXB0aW9uKSBjb25zb2xlLndhcm4oTUVTU0FHRSk7XG4gICAgICAgIH1cbiAgICB9LCBbXG4gICAgICAgIE1FU1NBR0UsXG4gICAgICAgIGNvbnRlbnRSZWYsXG4gICAgICAgIGRlc2NyaXB0aW9uSWRcbiAgICBdKTtcbiAgICByZXR1cm4gbnVsbDtcbn07XG5jb25zdCAkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSA9ICQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCQzZGRmMmQxNzRjZTAxMTUzO1xuY29uc3QgJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JDQxZmI5ZjA2MTcxYzc1ZjQgPSAkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkMmUxZTExMjJjZjBjYmE4ODtcbmNvbnN0ICQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCQ2MDJlYWMxODU4MjY0ODJjID0gJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JGRhZDdjOTU1NDJiYWNjZTA7XG5jb25zdCAkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkYzZmZGI4MzdiMDcwYjRmZiA9ICQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCRiZDFkMDZjNzliZTE5ZTE3O1xuY29uc3QgJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JDdjNmUyYzAyMTU3YmI3ZDIgPSAkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkYjZkOTU2NWRlMWUwNjhjZjtcbmNvbnN0ICQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCRmOTkyMzMyODFlZmQwOGEwID0gJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JDE2Zjc2MzhlNGEzNGI5MDk7XG5jb25zdCAkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkMzkzZWRjNzk4YzQ3Mzc5ZCA9ICQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCQ5NGU5NGMyZWMyYzk1NGQ1O1xuY29uc3QgJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JGYzOWMyZDE2NWNkODYxZmUgPSAkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkZmJhMmZiN2NkNzgxYjdhYztcblxuXG5cblxuZXhwb3J0IHskNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkY2M3MDI3NzNiOGVhM2U0MSBhcyBjcmVhdGVEaWFsb2dTY29wZSwgJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JDNkZGYyZDE3NGNlMDExNTMgYXMgRGlhbG9nLCAkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkMmUxZTExMjJjZjBjYmE4OCBhcyBEaWFsb2dUcmlnZ2VyLCAkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkZGFkN2M5NTU0MmJhY2NlMCBhcyBEaWFsb2dQb3J0YWwsICQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCRiZDFkMDZjNzliZTE5ZTE3IGFzIERpYWxvZ092ZXJsYXksICQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCRiNmQ5NTY1ZGUxZTA2OGNmIGFzIERpYWxvZ0NvbnRlbnQsICQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCQxNmY3NjM4ZTRhMzRiOTA5IGFzIERpYWxvZ1RpdGxlLCAkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkOTRlOTRjMmVjMmM5NTRkNSBhcyBEaWFsb2dEZXNjcmlwdGlvbiwgJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JGZiYTJmYjdjZDc4MWI3YWMgYXMgRGlhbG9nQ2xvc2UsICQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IGFzIFJvb3QsICQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCQ0MWZiOWYwNjE3MWM3NWY0IGFzIFRyaWdnZXIsICQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCQ2MDJlYWMxODU4MjY0ODJjIGFzIFBvcnRhbCwgJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JGM2ZmRiODM3YjA3MGI0ZmYgYXMgT3ZlcmxheSwgJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JDdjNmUyYzAyMTU3YmI3ZDIgYXMgQ29udGVudCwgJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JGY5OTIzMzI4MWVmZDA4YTAgYXMgVGl0bGUsICQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCQzOTNlZGM3OThjNDczNzlkIGFzIERlc2NyaXB0aW9uLCAkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkZjM5YzJkMTY1Y2Q4NjFmZSBhcyBDbG9zZSwgJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JDY5YjYyYTQ5MzkzOTE3ZDYgYXMgV2FybmluZ1Byb3ZpZGVyfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4Lm1qcy5tYXBcbiJdLCJuYW1lcyI6WyIkNjdVSG0kYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMiLCJ1c2VSZWYiLCIkNjdVSG0kdXNlUmVmIiwiY3JlYXRlRWxlbWVudCIsIiQ2N1VIbSRjcmVhdGVFbGVtZW50IiwidXNlQ2FsbGJhY2siLCIkNjdVSG0kdXNlQ2FsbGJhY2siLCJmb3J3YXJkUmVmIiwiJDY3VUhtJGZvcndhcmRSZWYiLCJDaGlsZHJlbiIsIiQ2N1VIbSRDaGlsZHJlbiIsInVzZUVmZmVjdCIsIiQ2N1VIbSR1c2VFZmZlY3QiLCJGcmFnbWVudCIsIiQ2N1VIbSRGcmFnbWVudCIsImNvbXBvc2VFdmVudEhhbmRsZXJzIiwiJDY3VUhtJGNvbXBvc2VFdmVudEhhbmRsZXJzIiwidXNlQ29tcG9zZWRSZWZzIiwiJDY3VUhtJHVzZUNvbXBvc2VkUmVmcyIsImNyZWF0ZUNvbnRleHRTY29wZSIsIiQ2N1VIbSRjcmVhdGVDb250ZXh0U2NvcGUiLCJjcmVhdGVDb250ZXh0IiwiJDY3VUhtJGNyZWF0ZUNvbnRleHQiLCJ1c2VJZCIsIiQ2N1VIbSR1c2VJZCIsInVzZUNvbnRyb2xsYWJsZVN0YXRlIiwiJDY3VUhtJHVzZUNvbnRyb2xsYWJsZVN0YXRlIiwiRGlzbWlzc2FibGVMYXllciIsIiQ2N1VIbSREaXNtaXNzYWJsZUxheWVyIiwiRm9jdXNTY29wZSIsIiQ2N1VIbSRGb2N1c1Njb3BlIiwiUG9ydGFsIiwiJDY3VUhtJFBvcnRhbCIsIlByZXNlbmNlIiwiJDY3VUhtJFByZXNlbmNlIiwiUHJpbWl0aXZlIiwiJDY3VUhtJFByaW1pdGl2ZSIsInVzZUZvY3VzR3VhcmRzIiwiJDY3VUhtJHVzZUZvY3VzR3VhcmRzIiwiUmVtb3ZlU2Nyb2xsIiwiJDY3VUhtJFJlbW92ZVNjcm9sbCIsImhpZGVPdGhlcnMiLCIkNjdVSG0kaGlkZU90aGVycyIsIlNsb3QiLCIkNjdVSG0kU2xvdCIsIiQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRESUFMT0dfTkFNRSIsIiQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRjcmVhdGVEaWFsb2dDb250ZXh0IiwiJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JGNjNzAyNzczYjhlYTNlNDEiLCIkNWQzODUwYzRkMGI0ZTZjNyR2YXIkRGlhbG9nUHJvdmlkZXIiLCIkNWQzODUwYzRkMGI0ZTZjNyR2YXIkdXNlRGlhbG9nQ29udGV4dCIsIiQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCQzZGRmMmQxNzRjZTAxMTUzIiwicHJvcHMiLCJfX3Njb3BlRGlhbG9nIiwiY2hpbGRyZW4iLCJvcGVuIiwib3BlblByb3AiLCJkZWZhdWx0T3BlbiIsIm9uT3BlbkNoYW5nZSIsIm1vZGFsIiwidHJpZ2dlclJlZiIsImNvbnRlbnRSZWYiLCJzZXRPcGVuIiwicHJvcCIsImRlZmF1bHRQcm9wIiwib25DaGFuZ2UiLCJzY29wZSIsImNvbnRlbnRJZCIsInRpdGxlSWQiLCJkZXNjcmlwdGlvbklkIiwib25PcGVuVG9nZ2xlIiwicHJldk9wZW4iLCJPYmplY3QiLCJhc3NpZ24iLCJkaXNwbGF5TmFtZSIsIiQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRUUklHR0VSX05BTUUiLCIkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkMmUxZTExMjJjZjBjYmE4OCIsImZvcndhcmRlZFJlZiIsInRyaWdnZXJQcm9wcyIsImNvbnRleHQiLCJjb21wb3NlZFRyaWdnZXJSZWYiLCJidXR0b24iLCJ0eXBlIiwiJDVkMzg1MGM0ZDBiNGU2YzckdmFyJGdldFN0YXRlIiwicmVmIiwib25DbGljayIsIiQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRQT1JUQUxfTkFNRSIsIiQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRQb3J0YWxQcm92aWRlciIsIiQ1ZDM4NTBjNGQwYjRlNmM3JHZhciR1c2VQb3J0YWxDb250ZXh0IiwiZm9yY2VNb3VudCIsInVuZGVmaW5lZCIsIiQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCRkYWQ3Yzk1NTQyYmFjY2UwIiwiY29udGFpbmVyIiwibWFwIiwiY2hpbGQiLCJwcmVzZW50IiwiYXNDaGlsZCIsIiQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRPVkVSTEFZX05BTUUiLCIkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkYmQxZDA2Yzc5YmUxOWUxNyIsInBvcnRhbENvbnRleHQiLCJvdmVybGF5UHJvcHMiLCIkNWQzODUwYzRkMGI0ZTZjNyR2YXIkRGlhbG9nT3ZlcmxheUltcGwiLCJhcyIsImFsbG93UGluY2hab29tIiwic2hhcmRzIiwiZGl2Iiwic3R5bGUiLCJwb2ludGVyRXZlbnRzIiwiJDVkMzg1MGM0ZDBiNGU2YzckdmFyJENPTlRFTlRfTkFNRSIsIiQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCRiNmQ5NTY1ZGUxZTA2OGNmIiwiY29udGVudFByb3BzIiwiJDVkMzg1MGM0ZDBiNGU2YzckdmFyJERpYWxvZ0NvbnRlbnRNb2RhbCIsIiQ1ZDM4NTBjNGQwYjRlNmM3JHZhciREaWFsb2dDb250ZW50Tm9uTW9kYWwiLCJjb21wb3NlZFJlZnMiLCJjb250ZW50IiwiY3VycmVudCIsIiQ1ZDM4NTBjNGQwYjRlNmM3JHZhciREaWFsb2dDb250ZW50SW1wbCIsInRyYXBGb2N1cyIsImRpc2FibGVPdXRzaWRlUG9pbnRlckV2ZW50cyIsIm9uQ2xvc2VBdXRvRm9jdXMiLCJldmVudCIsIl9jb250ZXh0JHRyaWdnZXJSZWYkYyIsInByZXZlbnREZWZhdWx0IiwiZm9jdXMiLCJvblBvaW50ZXJEb3duT3V0c2lkZSIsIm9yaWdpbmFsRXZlbnQiLCJkZXRhaWwiLCJjdHJsTGVmdENsaWNrIiwiY3RybEtleSIsImlzUmlnaHRDbGljayIsIm9uRm9jdXNPdXRzaWRlIiwiaGFzSW50ZXJhY3RlZE91dHNpZGVSZWYiLCJoYXNQb2ludGVyRG93bk91dHNpZGVSZWYiLCJfcHJvcHMkb25DbG9zZUF1dG9Gb2MiLCJjYWxsIiwiZGVmYXVsdFByZXZlbnRlZCIsIl9jb250ZXh0JHRyaWdnZXJSZWYkYzIiLCJvbkludGVyYWN0T3V0c2lkZSIsIl9wcm9wcyRvbkludGVyYWN0T3V0cyIsIl9jb250ZXh0JHRyaWdnZXJSZWYkYzMiLCJ0YXJnZXQiLCJ0YXJnZXRJc1RyaWdnZXIiLCJjb250YWlucyIsIm9uT3BlbkF1dG9Gb2N1cyIsImxvb3AiLCJ0cmFwcGVkIiwib25Nb3VudEF1dG9Gb2N1cyIsIm9uVW5tb3VudEF1dG9Gb2N1cyIsInJvbGUiLCJpZCIsIm9uRGlzbWlzcyIsIiQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRUSVRMRV9OQU1FIiwiJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JDE2Zjc2MzhlNGEzNGI5MDkiLCJ0aXRsZVByb3BzIiwiaDIiLCIkNWQzODUwYzRkMGI0ZTZjNyR2YXIkREVTQ1JJUFRJT05fTkFNRSIsIiQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCQ5NGU5NGMyZWMyYzk1NGQ1IiwiZGVzY3JpcHRpb25Qcm9wcyIsInAiLCIkNWQzODUwYzRkMGI0ZTZjNyR2YXIkQ0xPU0VfTkFNRSIsIiQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCRmYmEyZmI3Y2Q3ODFiN2FjIiwiY2xvc2VQcm9wcyIsIiQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRUSVRMRV9XQVJOSU5HX05BTUUiLCIkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkNjliNjJhNDkzOTM5MTdkNiIsIiQ1ZDM4NTBjNGQwYjRlNmM3JHZhciR1c2VXYXJuaW5nQ29udGV4dCIsImNvbnRlbnROYW1lIiwidGl0bGVOYW1lIiwiZG9jc1NsdWciLCIkNWQzODUwYzRkMGI0ZTZjNyR2YXIkVGl0bGVXYXJuaW5nIiwidGl0bGVXYXJuaW5nQ29udGV4dCIsIk1FU1NBR0UiLCJoYXNUaXRsZSIsImRvY3VtZW50IiwiZ2V0RWxlbWVudEJ5SWQiLCJFcnJvciIsIiQ1ZDM4NTBjNGQwYjRlNmM3JHZhciRERVNDUklQVElPTl9XQVJOSU5HX05BTUUiLCIkNWQzODUwYzRkMGI0ZTZjNyR2YXIkRGVzY3JpcHRpb25XYXJuaW5nIiwiZGVzY3JpcHRpb25XYXJuaW5nQ29udGV4dCIsIl9jb250ZW50UmVmJGN1cnJlbnQiLCJkZXNjcmliZWRCeUlkIiwiZ2V0QXR0cmlidXRlIiwiaGFzRGVzY3JpcHRpb24iLCJjb25zb2xlIiwid2FybiIsIiQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IiwiJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JDQxZmI5ZjA2MTcxYzc1ZjQiLCIkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkNjAyZWFjMTg1ODI2NDgyYyIsIiQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCRjNmZkYjgzN2IwNzBiNGZmIiwiJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JDdjNmUyYzAyMTU3YmI3ZDIiLCIkNWQzODUwYzRkMGI0ZTZjNyRleHBvcnQkZjk5MjMzMjgxZWZkMDhhMCIsIiQ1ZDM4NTBjNGQwYjRlNmM3JGV4cG9ydCQzOTNlZGM3OThjNDczNzlkIiwiJDVkMzg1MGM0ZDBiNGU2YzckZXhwb3J0JGYzOWMyZDE2NWNkODYxZmUiLCJjcmVhdGVEaWFsb2dTY29wZSIsIkRpYWxvZyIsIkRpYWxvZ1RyaWdnZXIiLCJEaWFsb2dQb3J0YWwiLCJEaWFsb2dPdmVybGF5IiwiRGlhbG9nQ29udGVudCIsIkRpYWxvZ1RpdGxlIiwiRGlhbG9nRGVzY3JpcHRpb24iLCJEaWFsb2dDbG9zZSIsIlJvb3QiLCJUcmlnZ2VyIiwiT3ZlcmxheSIsIkNvbnRlbnQiLCJUaXRsZSIsIkRlc2NyaXB0aW9uIiwiQ2xvc2UiLCJXYXJuaW5nUHJvdmlkZXIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-dialog/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-focus-scope/dist/index.mjs": /*!*****************************************************************************************************!*\ !*** ./node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-focus-scope/dist/index.mjs ***! \*****************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FocusScope: () => (/* binding */ $d3863c46a17e8a28$export$20e40289641fbbb6),\n/* harmony export */ Root: () => (/* binding */ $d3863c46a17e8a28$export$be92b6f5f03c0fe9)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-compose-refs */ \"(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-use-callback-ref */ \"(ssr)/./node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs\");\n\n\n\n\n\nconst $d3863c46a17e8a28$var$AUTOFOCUS_ON_MOUNT = \"focusScope.autoFocusOnMount\";\nconst $d3863c46a17e8a28$var$AUTOFOCUS_ON_UNMOUNT = \"focusScope.autoFocusOnUnmount\";\nconst $d3863c46a17e8a28$var$EVENT_OPTIONS = {\n bubbles: false,\n cancelable: true\n};\n/* -------------------------------------------------------------------------------------------------\n * FocusScope\n * -----------------------------------------------------------------------------------------------*/ const $d3863c46a17e8a28$var$FOCUS_SCOPE_NAME = \"FocusScope\";\nconst $d3863c46a17e8a28$export$20e40289641fbbb6 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { loop: loop = false, trapped: trapped = false, onMountAutoFocus: onMountAutoFocusProp, onUnmountAutoFocus: onUnmountAutoFocusProp, ...scopeProps } = props;\n const [container1, setContainer] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const onMountAutoFocus = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_2__.useCallbackRef)(onMountAutoFocusProp);\n const onUnmountAutoFocus = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_2__.useCallbackRef)(onUnmountAutoFocusProp);\n const lastFocusedElementRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_3__.useComposedRefs)(forwardedRef, (node)=>setContainer(node));\n const focusScope = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)({\n paused: false,\n pause () {\n this.paused = true;\n },\n resume () {\n this.paused = false;\n }\n }).current; // Takes care of trapping focus if focus is moved outside programmatically for example\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (trapped) {\n function handleFocusIn(event) {\n if (focusScope.paused || !container1) return;\n const target = event.target;\n if (container1.contains(target)) lastFocusedElementRef.current = target;\n else $d3863c46a17e8a28$var$focus(lastFocusedElementRef.current, {\n select: true\n });\n }\n function handleFocusOut(event) {\n if (focusScope.paused || !container1) return;\n const relatedTarget = event.relatedTarget; // A `focusout` event with a `null` `relatedTarget` will happen in at least two cases:\n //\n // 1. When the user switches app/tabs/windows/the browser itself loses focus.\n // 2. In Google Chrome, when the focused element is removed from the DOM.\n //\n // We let the browser do its thing here because:\n //\n // 1. The browser already keeps a memory of what's focused for when the page gets refocused.\n // 2. In Google Chrome, if we try to focus the deleted focused element (as per below), it\n // throws the CPU to 100%, so we avoid doing anything for this reason here too.\n if (relatedTarget === null) return; // If the focus has moved to an actual legitimate element (`relatedTarget !== null`)\n // that is outside the container, we move focus to the last valid focused element inside.\n if (!container1.contains(relatedTarget)) $d3863c46a17e8a28$var$focus(lastFocusedElementRef.current, {\n select: true\n });\n } // When the focused element gets removed from the DOM, browsers move focus\n // back to the document.body. In this case, we move focus to the container\n // to keep focus trapped correctly.\n function handleMutations(mutations) {\n const focusedElement = document.activeElement;\n for (const mutation of mutations){\n if (mutation.removedNodes.length > 0) {\n if (!(container1 !== null && container1 !== void 0 && container1.contains(focusedElement))) $d3863c46a17e8a28$var$focus(container1);\n }\n }\n }\n document.addEventListener(\"focusin\", handleFocusIn);\n document.addEventListener(\"focusout\", handleFocusOut);\n const mutationObserver = new MutationObserver(handleMutations);\n if (container1) mutationObserver.observe(container1, {\n childList: true,\n subtree: true\n });\n return ()=>{\n document.removeEventListener(\"focusin\", handleFocusIn);\n document.removeEventListener(\"focusout\", handleFocusOut);\n mutationObserver.disconnect();\n };\n }\n }, [\n trapped,\n container1,\n focusScope.paused\n ]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (container1) {\n $d3863c46a17e8a28$var$focusScopesStack.add(focusScope);\n const previouslyFocusedElement = document.activeElement;\n const hasFocusedCandidate = container1.contains(previouslyFocusedElement);\n if (!hasFocusedCandidate) {\n const mountEvent = new CustomEvent($d3863c46a17e8a28$var$AUTOFOCUS_ON_MOUNT, $d3863c46a17e8a28$var$EVENT_OPTIONS);\n container1.addEventListener($d3863c46a17e8a28$var$AUTOFOCUS_ON_MOUNT, onMountAutoFocus);\n container1.dispatchEvent(mountEvent);\n if (!mountEvent.defaultPrevented) {\n $d3863c46a17e8a28$var$focusFirst($d3863c46a17e8a28$var$removeLinks($d3863c46a17e8a28$var$getTabbableCandidates(container1)), {\n select: true\n });\n if (document.activeElement === previouslyFocusedElement) $d3863c46a17e8a28$var$focus(container1);\n }\n }\n return ()=>{\n container1.removeEventListener($d3863c46a17e8a28$var$AUTOFOCUS_ON_MOUNT, onMountAutoFocus); // We hit a react bug (fixed in v17) with focusing in unmount.\n // We need to delay the focus a little to get around it for now.\n // See: https://github.com/facebook/react/issues/17894\n setTimeout(()=>{\n const unmountEvent = new CustomEvent($d3863c46a17e8a28$var$AUTOFOCUS_ON_UNMOUNT, $d3863c46a17e8a28$var$EVENT_OPTIONS);\n container1.addEventListener($d3863c46a17e8a28$var$AUTOFOCUS_ON_UNMOUNT, onUnmountAutoFocus);\n container1.dispatchEvent(unmountEvent);\n if (!unmountEvent.defaultPrevented) $d3863c46a17e8a28$var$focus(previouslyFocusedElement !== null && previouslyFocusedElement !== void 0 ? previouslyFocusedElement : document.body, {\n select: true\n });\n // we need to remove the listener after we `dispatchEvent`\n container1.removeEventListener($d3863c46a17e8a28$var$AUTOFOCUS_ON_UNMOUNT, onUnmountAutoFocus);\n $d3863c46a17e8a28$var$focusScopesStack.remove(focusScope);\n }, 0);\n };\n }\n }, [\n container1,\n onMountAutoFocus,\n onUnmountAutoFocus,\n focusScope\n ]); // Takes care of looping focus (when tabbing whilst at the edges)\n const handleKeyDown = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)((event)=>{\n if (!loop && !trapped) return;\n if (focusScope.paused) return;\n const isTabKey = event.key === \"Tab\" && !event.altKey && !event.ctrlKey && !event.metaKey;\n const focusedElement = document.activeElement;\n if (isTabKey && focusedElement) {\n const container = event.currentTarget;\n const [first, last] = $d3863c46a17e8a28$var$getTabbableEdges(container);\n const hasTabbableElementsInside = first && last; // we can only wrap focus if we have tabbable edges\n if (!hasTabbableElementsInside) {\n if (focusedElement === container) event.preventDefault();\n } else {\n if (!event.shiftKey && focusedElement === last) {\n event.preventDefault();\n if (loop) $d3863c46a17e8a28$var$focus(first, {\n select: true\n });\n } else if (event.shiftKey && focusedElement === first) {\n event.preventDefault();\n if (loop) $d3863c46a17e8a28$var$focus(last, {\n select: true\n });\n }\n }\n }\n }, [\n loop,\n trapped,\n focusScope.paused\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n tabIndex: -1\n }, scopeProps, {\n ref: composedRefs,\n onKeyDown: handleKeyDown\n }));\n});\n/*#__PURE__*/ Object.assign($d3863c46a17e8a28$export$20e40289641fbbb6, {\n displayName: $d3863c46a17e8a28$var$FOCUS_SCOPE_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * Utils\n * -----------------------------------------------------------------------------------------------*/ /**\n * Attempts focusing the first element in a list of candidates.\n * Stops when focus has actually moved.\n */ function $d3863c46a17e8a28$var$focusFirst(candidates, { select: select = false } = {}) {\n const previouslyFocusedElement = document.activeElement;\n for (const candidate of candidates){\n $d3863c46a17e8a28$var$focus(candidate, {\n select: select\n });\n if (document.activeElement !== previouslyFocusedElement) return;\n }\n}\n/**\n * Returns the first and last tabbable elements inside a container.\n */ function $d3863c46a17e8a28$var$getTabbableEdges(container) {\n const candidates = $d3863c46a17e8a28$var$getTabbableCandidates(container);\n const first = $d3863c46a17e8a28$var$findVisible(candidates, container);\n const last = $d3863c46a17e8a28$var$findVisible(candidates.reverse(), container);\n return [\n first,\n last\n ];\n}\n/**\n * Returns a list of potential tabbable candidates.\n *\n * NOTE: This is only a close approximation. For example it doesn't take into account cases like when\n * elements are not visible. This cannot be worked out easily by just reading a property, but rather\n * necessitate runtime knowledge (computed styles, etc). We deal with these cases separately.\n *\n * See: https://developer.mozilla.org/en-US/docs/Web/API/TreeWalker\n * Credit: https://github.com/discord/focus-layers/blob/master/src/util/wrapFocus.tsx#L1\n */ function $d3863c46a17e8a28$var$getTabbableCandidates(container) {\n const nodes = [];\n const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {\n acceptNode: (node)=>{\n const isHiddenInput = node.tagName === \"INPUT\" && node.type === \"hidden\";\n if (node.disabled || node.hidden || isHiddenInput) return NodeFilter.FILTER_SKIP; // `.tabIndex` is not the same as the `tabindex` attribute. It works on the\n // runtime's understanding of tabbability, so this automatically accounts\n // for any kind of element that could be tabbed to.\n return node.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;\n }\n });\n while(walker.nextNode())nodes.push(walker.currentNode); // we do not take into account the order of nodes with positive `tabIndex` as it\n // hinders accessibility to have tab order different from visual order.\n return nodes;\n}\n/**\n * Returns the first visible element in a list.\n * NOTE: Only checks visibility up to the `container`.\n */ function $d3863c46a17e8a28$var$findVisible(elements, container) {\n for (const element of elements){\n // we stop checking if it's hidden at the `container` level (excluding)\n if (!$d3863c46a17e8a28$var$isHidden(element, {\n upTo: container\n })) return element;\n }\n}\nfunction $d3863c46a17e8a28$var$isHidden(node, { upTo: upTo }) {\n if (getComputedStyle(node).visibility === \"hidden\") return true;\n while(node){\n // we stop at `upTo` (excluding it)\n if (upTo !== undefined && node === upTo) return false;\n if (getComputedStyle(node).display === \"none\") return true;\n node = node.parentElement;\n }\n return false;\n}\nfunction $d3863c46a17e8a28$var$isSelectableInput(element) {\n return element instanceof HTMLInputElement && \"select\" in element;\n}\nfunction $d3863c46a17e8a28$var$focus(element, { select: select = false } = {}) {\n // only focus if that element is focusable\n if (element && element.focus) {\n const previouslyFocusedElement = document.activeElement; // NOTE: we prevent scrolling on focus, to minimize jarring transitions for users\n element.focus({\n preventScroll: true\n }); // only select if its not the same element, it supports selection and we need to select\n if (element !== previouslyFocusedElement && $d3863c46a17e8a28$var$isSelectableInput(element) && select) element.select();\n }\n}\n/* -------------------------------------------------------------------------------------------------\n * FocusScope stack\n * -----------------------------------------------------------------------------------------------*/ const $d3863c46a17e8a28$var$focusScopesStack = $d3863c46a17e8a28$var$createFocusScopesStack();\nfunction $d3863c46a17e8a28$var$createFocusScopesStack() {\n /** A stack of focus scopes, with the active one at the top */ let stack = [];\n return {\n add (focusScope) {\n // pause the currently active focus scope (at the top of the stack)\n const activeFocusScope = stack[0];\n if (focusScope !== activeFocusScope) activeFocusScope === null || activeFocusScope === void 0 || activeFocusScope.pause();\n // remove in case it already exists (because we'll re-add it at the top of the stack)\n stack = $d3863c46a17e8a28$var$arrayRemove(stack, focusScope);\n stack.unshift(focusScope);\n },\n remove (focusScope) {\n var _stack$;\n stack = $d3863c46a17e8a28$var$arrayRemove(stack, focusScope);\n (_stack$ = stack[0]) === null || _stack$ === void 0 || _stack$.resume();\n }\n };\n}\nfunction $d3863c46a17e8a28$var$arrayRemove(array, item) {\n const updatedArray = [\n ...array\n ];\n const index = updatedArray.indexOf(item);\n if (index !== -1) updatedArray.splice(index, 1);\n return updatedArray;\n}\nfunction $d3863c46a17e8a28$var$removeLinks(items) {\n return items.filter((item)=>item.tagName !== \"A\");\n}\nconst $d3863c46a17e8a28$export$be92b6f5f03c0fe9 = $d3863c46a17e8a28$export$20e40289641fbbb6;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWRpYWxvZy9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWZvY3VzLXNjb3BlL2Rpc3QvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBc0Y7QUFDK0g7QUFDOUg7QUFDZjtBQUNpQjtBQU96RixNQUFNbUIsMkNBQTJDO0FBQ2pELE1BQU1DLDZDQUE2QztBQUNuRCxNQUFNQyxzQ0FBc0M7SUFDeENDLFNBQVM7SUFDVEMsWUFBWTtBQUNoQjtBQUNBOztrR0FFa0csR0FBRyxNQUFNQyx5Q0FBeUM7QUFDcEosTUFBTUMsNENBQTRDLFdBQVcsR0FBR3ZCLGlEQUFpQkEsQ0FBQyxDQUFDd0IsT0FBT0M7SUFDdEYsTUFBTSxFQUFFQyxNQUFNQSxPQUFPLEtBQUssRUFBR0MsU0FBU0EsVUFBVSxLQUFLLEVBQUdDLGtCQUFrQkMsb0JBQW9CLEVBQUdDLG9CQUFvQkMsc0JBQXNCLEVBQUcsR0FBR0MsWUFBWSxHQUFHUjtJQUNoSyxNQUFNLENBQUNTLFlBQVlDLGFBQWEsR0FBR2hDLCtDQUFlQSxDQUFDO0lBQ25ELE1BQU0wQixtQkFBbUJaLGdGQUFxQkEsQ0FBQ2E7SUFDL0MsTUFBTUMscUJBQXFCZCxnRkFBcUJBLENBQUNlO0lBQ2pELE1BQU1JLHdCQUF3Qi9CLDZDQUFhQSxDQUFDO0lBQzVDLE1BQU1nQyxlQUFleEIsNkVBQXNCQSxDQUFDYSxjQUFjLENBQUNZLE9BQU9ILGFBQWFHO0lBRS9FLE1BQU1DLGFBQWFsQyw2Q0FBYUEsQ0FBQztRQUM3Qm1DLFFBQVE7UUFDUkM7WUFDSSxJQUFJLENBQUNELE1BQU0sR0FBRztRQUNsQjtRQUNBRTtZQUNJLElBQUksQ0FBQ0YsTUFBTSxHQUFHO1FBQ2xCO0lBQ0osR0FBR0csT0FBTyxFQUFFLHNGQUFzRjtJQUNsR3BDLGdEQUFnQkEsQ0FBQztRQUNiLElBQUlxQixTQUFTO1lBQ1QsU0FBU2dCLGNBQWNDLEtBQUs7Z0JBQ3hCLElBQUlOLFdBQVdD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T0FBTyxLQUFLO0FBRWpEO0FBQ0EsTUFBTW9DLDRDQUE0Qy9IO0FBS2tFLENBQ3BILGtDQUFrQyIsInNvdXJjZXMiOlsid2VicGFjazovL2VtYmVkY2hhaW4tYWRtaW4vLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWRpYWxvZy9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWZvY3VzLXNjb3BlL2Rpc3QvaW5kZXgubWpzPzJhMWQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICQ0NVFIdiRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZXh0ZW5kc1wiO1xuaW1wb3J0IHtmb3J3YXJkUmVmIGFzICQ0NVFIdiRmb3J3YXJkUmVmLCB1c2VTdGF0ZSBhcyAkNDVRSHYkdXNlU3RhdGUsIHVzZVJlZiBhcyAkNDVRSHYkdXNlUmVmLCB1c2VFZmZlY3QgYXMgJDQ1UUh2JHVzZUVmZmVjdCwgdXNlQ2FsbGJhY2sgYXMgJDQ1UUh2JHVzZUNhbGxiYWNrLCBjcmVhdGVFbGVtZW50IGFzICQ0NVFIdiRjcmVhdGVFbGVtZW50fSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7dXNlQ29tcG9zZWRSZWZzIGFzICQ0NVFIdiR1c2VDb21wb3NlZFJlZnN9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtY29tcG9zZS1yZWZzXCI7XG5pbXBvcnQge1ByaW1pdGl2ZSBhcyAkNDVRSHYkUHJpbWl0aXZlfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXByaW1pdGl2ZVwiO1xuaW1wb3J0IHt1c2VDYWxsYmFja1JlZiBhcyAkNDVRSHYkdXNlQ2FsbGJhY2tSZWZ9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtdXNlLWNhbGxiYWNrLXJlZlwiO1xuXG5cblxuXG5cblxuY29uc3QgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJEFVVE9GT0NVU19PTl9NT1VOVCA9ICdmb2N1c1Njb3BlLmF1dG9Gb2N1c09uTW91bnQnO1xuY29uc3QgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJEFVVE9GT0NVU19PTl9VTk1PVU5UID0gJ2ZvY3VzU2NvcGUuYXV0b0ZvY3VzT25Vbm1vdW50JztcbmNvbnN0ICRkMzg2M2M0NmExN2U4YTI4JHZhciRFVkVOVF9PUFRJT05TID0ge1xuICAgIGJ1YmJsZXM6IGZhbHNlLFxuICAgIGNhbmNlbGFibGU6IHRydWVcbn07XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBGb2N1c1Njb3BlXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICRkMzg2M2M0NmExN2U4YTI4JHZhciRGT0NVU19TQ09QRV9OQU1FID0gJ0ZvY3VzU2NvcGUnO1xuY29uc3QgJGQzODYzYzQ2YTE3ZThhMjgkZXhwb3J0JDIwZTQwMjg5NjQxZmJiYjYgPSAvKiNfX1BVUkVfXyovICQ0NVFIdiRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgbG9vcDogbG9vcCA9IGZhbHNlICwgdHJhcHBlZDogdHJhcHBlZCA9IGZhbHNlICwgb25Nb3VudEF1dG9Gb2N1czogb25Nb3VudEF1dG9Gb2N1c1Byb3AgLCBvblVubW91bnRBdXRvRm9jdXM6IG9uVW5tb3VudEF1dG9Gb2N1c1Byb3AgLCAuLi5zY29wZVByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBbY29udGFpbmVyMSwgc2V0Q29udGFpbmVyXSA9ICQ0NVFIdiR1c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBvbk1vdW50QXV0b0ZvY3VzID0gJDQ1UUh2JHVzZUNhbGxiYWNrUmVmKG9uTW91bnRBdXRvRm9jdXNQcm9wKTtcbiAgICBjb25zdCBvblVubW91bnRBdXRvRm9jdXMgPSAkNDVRSHYkdXNlQ2FsbGJhY2tSZWYob25Vbm1vdW50QXV0b0ZvY3VzUHJvcCk7XG4gICAgY29uc3QgbGFzdEZvY3VzZWRFbGVtZW50UmVmID0gJDQ1UUh2JHVzZVJlZihudWxsKTtcbiAgICBjb25zdCBjb21wb3NlZFJlZnMgPSAkNDVRSHYkdXNlQ29tcG9zZWRSZWZzKGZvcndhcmRlZFJlZiwgKG5vZGUpPT5zZXRDb250YWluZXIobm9kZSlcbiAgICApO1xuICAgIGNvbnN0IGZvY3VzU2NvcGUgPSAkNDVRSHYkdXNlUmVmKHtcbiAgICAgICAgcGF1c2VkOiBmYWxzZSxcbiAgICAgICAgcGF1c2UgKCkge1xuICAgICAgICAgICAgdGhpcy5wYXVzZWQgPSB0cnVlO1xuICAgICAgICB9LFxuICAgICAgICByZXN1bWUgKCkge1xuICAgICAgICAgICAgdGhpcy5wYXVzZWQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH0pLmN1cnJlbnQ7IC8vIFRha2VzIGNhcmUgb2YgdHJhcHBpbmcgZm9jdXMgaWYgZm9jdXMgaXMgbW92ZWQgb3V0c2lkZSBwcm9ncmFtbWF0aWNhbGx5IGZvciBleGFtcGxlXG4gICAgJDQ1UUh2JHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBpZiAodHJhcHBlZCkge1xuICAgICAgICAgICAgZnVuY3Rpb24gaGFuZGxlRm9jdXNJbihldmVudCkge1xuICAgICAgICAgICAgICAgIGlmIChmb2N1c1Njb3BlLnBhdXNlZCB8fCAhY29udGFpbmVyMSkgcmV0dXJuO1xuICAgICAgICAgICAgICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldDtcbiAgICAgICAgICAgICAgICBpZiAoY29udGFpbmVyMS5jb250YWlucyh0YXJnZXQpKSBsYXN0Rm9jdXNlZEVsZW1lbnRSZWYuY3VycmVudCA9IHRhcmdldDtcbiAgICAgICAgICAgICAgICBlbHNlICRkMzg2M2M0NmExN2U4YTI4JHZhciRmb2N1cyhsYXN0Rm9jdXNlZEVsZW1lbnRSZWYuY3VycmVudCwge1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3Q6IHRydWVcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZ1bmN0aW9uIGhhbmRsZUZvY3VzT3V0KGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgaWYgKGZvY3VzU2NvcGUucGF1c2VkIHx8ICFjb250YWluZXIxKSByZXR1cm47XG4gICAgICAgICAgICAgICAgY29uc3QgcmVsYXRlZFRhcmdldCA9IGV2ZW50LnJlbGF0ZWRUYXJnZXQ7IC8vIEEgYGZvY3Vzb3V0YCBldmVudCB3aXRoIGEgYG51bGxgIGByZWxhdGVkVGFyZ2V0YCB3aWxsIGhhcHBlbiBpbiBhdCBsZWFzdCB0d28gY2FzZXM6XG4gICAgICAgICAgICAgICAgLy9cbiAgICAgICAgICAgICAgICAvLyAxLiBXaGVuIHRoZSB1c2VyIHN3aXRjaGVzIGFwcC90YWJzL3dpbmRvd3MvdGhlIGJyb3dzZXIgaXRzZWxmIGxvc2VzIGZvY3VzLlxuICAgICAgICAgICAgICAgIC8vIDIuIEluIEdvb2dsZSBDaHJvbWUsIHdoZW4gdGhlIGZvY3VzZWQgZWxlbWVudCBpcyByZW1vdmVkIGZyb20gdGhlIERPTS5cbiAgICAgICAgICAgICAgICAvL1xuICAgICAgICAgICAgICAgIC8vIFdlIGxldCB0aGUgYnJvd3NlciBkbyBpdHMgdGhpbmcgaGVyZSBiZWNhdXNlOlxuICAgICAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAgICAgLy8gMS4gVGhlIGJyb3dzZXIgYWxyZWFkeSBrZWVwcyBhIG1lbW9yeSBvZiB3aGF0J3MgZm9jdXNlZCBmb3Igd2hlbiB0aGUgcGFnZSBnZXRzIHJlZm9jdXNlZC5cbiAgICAgICAgICAgICAgICAvLyAyLiBJbiBHb29nbGUgQ2hyb21lLCBpZiB3ZSB0cnkgdG8gZm9jdXMgdGhlIGRlbGV0ZWQgZm9jdXNlZCBlbGVtZW50IChhcyBwZXIgYmVsb3cpLCBpdFxuICAgICAgICAgICAgICAgIC8vICAgIHRocm93cyB0aGUgQ1BVIHRvIDEwMCUsIHNvIHdlIGF2b2lkIGRvaW5nIGFueXRoaW5nIGZvciB0aGlzIHJlYXNvbiBoZXJlIHRvby5cbiAgICAgICAgICAgICAgICBpZiAocmVsYXRlZFRhcmdldCA9PT0gbnVsbCkgcmV0dXJuOyAvLyBJZiB0aGUgZm9jdXMgaGFzIG1vdmVkIHRvIGFuIGFjdHVhbCBsZWdpdGltYXRlIGVsZW1lbnQgKGByZWxhdGVkVGFyZ2V0ICE9PSBudWxsYClcbiAgICAgICAgICAgICAgICAvLyB0aGF0IGlzIG91dHNpZGUgdGhlIGNvbnRhaW5lciwgd2UgbW92ZSBmb2N1cyB0byB0aGUgbGFzdCB2YWxpZCBmb2N1c2VkIGVsZW1lbnQgaW5zaWRlLlxuICAgICAgICAgICAgICAgIGlmICghY29udGFpbmVyMS5jb250YWlucyhyZWxhdGVkVGFyZ2V0KSkgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZvY3VzKGxhc3RGb2N1c2VkRWxlbWVudFJlZi5jdXJyZW50LCB7XG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdDogdHJ1ZVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSAvLyBXaGVuIHRoZSBmb2N1c2VkIGVsZW1lbnQgZ2V0cyByZW1vdmVkIGZyb20gdGhlIERPTSwgYnJvd3NlcnMgbW92ZSBmb2N1c1xuICAgICAgICAgICAgLy8gYmFjayB0byB0aGUgZG9jdW1lbnQuYm9keS4gSW4gdGhpcyBjYXNlLCB3ZSBtb3ZlIGZvY3VzIHRvIHRoZSBjb250YWluZXJcbiAgICAgICAgICAgIC8vIHRvIGtlZXAgZm9jdXMgdHJhcHBlZCBjb3JyZWN0bHkuXG4gICAgICAgICAgICBmdW5jdGlvbiBoYW5kbGVNdXRhdGlvbnMobXV0YXRpb25zKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZm9jdXNlZEVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50O1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgbXV0YXRpb24gb2YgbXV0YXRpb25zKXtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG11dGF0aW9uLnJlbW92ZWROb2Rlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIShjb250YWluZXIxICE9PSBudWxsICYmIGNvbnRhaW5lcjEgIT09IHZvaWQgMCAmJiBjb250YWluZXIxLmNvbnRhaW5zKGZvY3VzZWRFbGVtZW50KSkpICRkMzg2M2M0NmExN2U4YTI4JHZhciRmb2N1cyhjb250YWluZXIxKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2ZvY3VzaW4nLCBoYW5kbGVGb2N1c0luKTtcbiAgICAgICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2ZvY3Vzb3V0JywgaGFuZGxlRm9jdXNPdXQpO1xuICAgICAgICAgICAgY29uc3QgbXV0YXRpb25PYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKGhhbmRsZU11dGF0aW9ucyk7XG4gICAgICAgICAgICBpZiAoY29udGFpbmVyMSkgbXV0YXRpb25PYnNlcnZlci5vYnNlcnZlKGNvbnRhaW5lcjEsIHtcbiAgICAgICAgICAgICAgICBjaGlsZExpc3Q6IHRydWUsXG4gICAgICAgICAgICAgICAgc3VidHJlZTogdHJ1ZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gKCk9PntcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdmb2N1c2luJywgaGFuZGxlRm9jdXNJbik7XG4gICAgICAgICAgICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignZm9jdXNvdXQnLCBoYW5kbGVGb2N1c091dCk7XG4gICAgICAgICAgICAgICAgbXV0YXRpb25PYnNlcnZlci5kaXNjb25uZWN0KCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICB0cmFwcGVkLFxuICAgICAgICBjb250YWluZXIxLFxuICAgICAgICBmb2N1c1Njb3BlLnBhdXNlZFxuICAgIF0pO1xuICAgICQ0NVFIdiR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgaWYgKGNvbnRhaW5lcjEpIHtcbiAgICAgICAgICAgICRkMzg2M2M0NmExN2U4YTI4JHZhciRmb2N1c1Njb3Blc1N0YWNrLmFkZChmb2N1c1Njb3BlKTtcbiAgICAgICAgICAgIGNvbnN0IHByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICBjb25zdCBoYXNGb2N1c2VkQ2FuZGlkYXRlID0gY29udGFpbmVyMS5jb250YWlucyhwcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQpO1xuICAgICAgICAgICAgaWYgKCFoYXNGb2N1c2VkQ2FuZGlkYXRlKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbW91bnRFdmVudCA9IG5ldyBDdXN0b21FdmVudCgkZDM4NjNjNDZhMTdlOGEyOCR2YXIkQVVUT0ZPQ1VTX09OX01PVU5ULCAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkRVZFTlRfT1BUSU9OUyk7XG4gICAgICAgICAgICAgICAgY29udGFpbmVyMS5hZGRFdmVudExpc3RlbmVyKCRkMzg2M2M0NmExN2U4YTI4JHZhciRBVVRPRk9DVVNfT05fTU9VTlQsIG9uTW91bnRBdXRvRm9jdXMpO1xuICAgICAgICAgICAgICAgIGNvbnRhaW5lcjEuZGlzcGF0Y2hFdmVudChtb3VudEV2ZW50KTtcbiAgICAgICAgICAgICAgICBpZiAoIW1vdW50RXZlbnQuZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgICAgICAgICAgICAgICAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZm9jdXNGaXJzdCgkZDM4NjNjNDZhMTdlOGEyOCR2YXIkcmVtb3ZlTGlua3MoJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGdldFRhYmJhYmxlQ2FuZGlkYXRlcyhjb250YWluZXIxKSksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdDogdHJ1ZVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgPT09IHByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCkgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZvY3VzKGNvbnRhaW5lcjEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgICAgIGNvbnRhaW5lcjEucmVtb3ZlRXZlbnRMaXN0ZW5lcigkZDM4NjNjNDZhMTdlOGEyOCR2YXIkQVVUT0ZPQ1VTX09OX01PVU5ULCBvbk1vdW50QXV0b0ZvY3VzKTsgLy8gV2UgaGl0IGEgcmVhY3QgYnVnIChmaXhlZCBpbiB2MTcpIHdpdGggZm9jdXNpbmcgaW4gdW5tb3VudC5cbiAgICAgICAgICAgICAgICAvLyBXZSBuZWVkIHRvIGRlbGF5IHRoZSBmb2N1cyBhIGxpdHRsZSB0byBnZXQgYXJvdW5kIGl0IGZvciBub3cuXG4gICAgICAgICAgICAgICAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svcmVhY3QvaXNzdWVzLzE3ODk0XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKT0+e1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB1bm1vdW50RXZlbnQgPSBuZXcgQ3VzdG9tRXZlbnQoJGQzODYzYzQ2YTE3ZThhMjgkdmFyJEFVVE9GT0NVU19PTl9VTk1PVU5ULCAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkRVZFTlRfT1BUSU9OUyk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRhaW5lcjEuYWRkRXZlbnRMaXN0ZW5lcigkZDM4NjNjNDZhMTdlOGEyOCR2YXIkQVVUT0ZPQ1VTX09OX1VOTU9VTlQsIG9uVW5tb3VudEF1dG9Gb2N1cyk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRhaW5lcjEuZGlzcGF0Y2hFdmVudCh1bm1vdW50RXZlbnQpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIXVubW91bnRFdmVudC5kZWZhdWx0UHJldmVudGVkKSAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZm9jdXMocHJldmlvdXNseUZvY3VzZWRFbGVtZW50ICE9PSBudWxsICYmIHByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCAhPT0gdm9pZCAwID8gcHJldmlvdXNseUZvY3VzZWRFbGVtZW50IDogZG9jdW1lbnQuYm9keSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0OiB0cnVlXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgLy8gd2UgbmVlZCB0byByZW1vdmUgdGhlIGxpc3RlbmVyIGFmdGVyIHdlIGBkaXNwYXRjaEV2ZW50YFxuICAgICAgICAgICAgICAgICAgICBjb250YWluZXIxLnJlbW92ZUV2ZW50TGlzdGVuZXIoJGQzODYzYzQ2YTE3ZThhMjgkdmFyJEFVVE9GT0NVU19PTl9VTk1PVU5ULCBvblVubW91bnRBdXRvRm9jdXMpO1xuICAgICAgICAgICAgICAgICAgICAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZm9jdXNTY29wZXNTdGFjay5yZW1vdmUoZm9jdXNTY29wZSk7XG4gICAgICAgICAgICAgICAgfSwgMCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBjb250YWluZXIxLFxuICAgICAgICBvbk1vdW50QXV0b0ZvY3VzLFxuICAgICAgICBvblVubW91bnRBdXRvRm9jdXMsXG4gICAgICAgIGZvY3VzU2NvcGVcbiAgICBdKTsgLy8gVGFrZXMgY2FyZSBvZiBsb29waW5nIGZvY3VzICh3aGVuIHRhYmJpbmcgd2hpbHN0IGF0IHRoZSBlZGdlcylcbiAgICBjb25zdCBoYW5kbGVLZXlEb3duID0gJDQ1UUh2JHVzZUNhbGxiYWNrKChldmVudCk9PntcbiAgICAgICAgaWYgKCFsb29wICYmICF0cmFwcGVkKSByZXR1cm47XG4gICAgICAgIGlmIChmb2N1c1Njb3BlLnBhdXNlZCkgcmV0dXJuO1xuICAgICAgICBjb25zdCBpc1RhYktleSA9IGV2ZW50LmtleSA9PT0gJ1RhYicgJiYgIWV2ZW50LmFsdEtleSAmJiAhZXZlbnQuY3RybEtleSAmJiAhZXZlbnQubWV0YUtleTtcbiAgICAgICAgY29uc3QgZm9jdXNlZEVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50O1xuICAgICAgICBpZiAoaXNUYWJLZXkgJiYgZm9jdXNlZEVsZW1lbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRhaW5lciA9IGV2ZW50LmN1cnJlbnRUYXJnZXQ7XG4gICAgICAgICAgICBjb25zdCBbZmlyc3QsIGxhc3RdID0gJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGdldFRhYmJhYmxlRWRnZXMoY29udGFpbmVyKTtcbiAgICAgICAgICAgIGNvbnN0IGhhc1RhYmJhYmxlRWxlbWVudHNJbnNpZGUgPSBmaXJzdCAmJiBsYXN0OyAvLyB3ZSBjYW4gb25seSB3cmFwIGZvY3VzIGlmIHdlIGhhdmUgdGFiYmFibGUgZWRnZXNcbiAgICAgICAgICAgIGlmICghaGFzVGFiYmFibGVFbGVtZW50c0luc2lkZSkge1xuICAgICAgICAgICAgICAgIGlmIChmb2N1c2VkRWxlbWVudCA9PT0gY29udGFpbmVyKSBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAoIWV2ZW50LnNoaWZ0S2V5ICYmIGZvY3VzZWRFbGVtZW50ID09PSBsYXN0KSB7XG4gICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChsb29wKSAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZm9jdXMoZmlyc3QsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdDogdHJ1ZVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGV2ZW50LnNoaWZ0S2V5ICYmIGZvY3VzZWRFbGVtZW50ID09PSBmaXJzdCkge1xuICAgICAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICBpZiAobG9vcCkgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZvY3VzKGxhc3QsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdDogdHJ1ZVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9LCBbXG4gICAgICAgIGxvb3AsXG4gICAgICAgIHRyYXBwZWQsXG4gICAgICAgIGZvY3VzU2NvcGUucGF1c2VkXG4gICAgXSk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDQ1UUh2JGNyZWF0ZUVsZW1lbnQoJDQ1UUh2JFByaW1pdGl2ZS5kaXYsICQ0NVFIdiRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7XG4gICAgICAgIHRhYkluZGV4OiAtMVxuICAgIH0sIHNjb3BlUHJvcHMsIHtcbiAgICAgICAgcmVmOiBjb21wb3NlZFJlZnMsXG4gICAgICAgIG9uS2V5RG93bjogaGFuZGxlS2V5RG93blxuICAgIH0pKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCRkMzg2M2M0NmExN2U4YTI4JGV4cG9ydCQyMGU0MDI4OTY0MWZiYmI2LCB7XG4gICAgZGlzcGxheU5hbWU6ICRkMzg2M2M0NmExN2U4YTI4JHZhciRGT0NVU19TQ09QRV9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFV0aWxzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIC8qKlxuICogQXR0ZW1wdHMgZm9jdXNpbmcgdGhlIGZpcnN0IGVsZW1lbnQgaW4gYSBsaXN0IG9mIGNhbmRpZGF0ZXMuXG4gKiBTdG9wcyB3aGVuIGZvY3VzIGhhcyBhY3R1YWxseSBtb3ZlZC5cbiAqLyBmdW5jdGlvbiAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZm9jdXNGaXJzdChjYW5kaWRhdGVzLCB7IHNlbGVjdDogc2VsZWN0ID0gZmFsc2UgIH0gPSB7fSkge1xuICAgIGNvbnN0IHByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG4gICAgZm9yIChjb25zdCBjYW5kaWRhdGUgb2YgY2FuZGlkYXRlcyl7XG4gICAgICAgICRkMzg2M2M0NmExN2U4YTI4JHZhciRmb2N1cyhjYW5kaWRhdGUsIHtcbiAgICAgICAgICAgIHNlbGVjdDogc2VsZWN0XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCAhPT0gcHJldmlvdXNseUZvY3VzZWRFbGVtZW50KSByZXR1cm47XG4gICAgfVxufVxuLyoqXG4gKiBSZXR1cm5zIHRoZSBmaXJzdCBhbmQgbGFzdCB0YWJiYWJsZSBlbGVtZW50cyBpbnNpZGUgYSBjb250YWluZXIuXG4gKi8gZnVuY3Rpb24gJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGdldFRhYmJhYmxlRWRnZXMoY29udGFpbmVyKSB7XG4gICAgY29uc3QgY2FuZGlkYXRlcyA9ICRkMzg2M2M0NmExN2U4YTI4JHZhciRnZXRUYWJiYWJsZUNhbmRpZGF0ZXMoY29udGFpbmVyKTtcbiAgICBjb25zdCBmaXJzdCA9ICRkMzg2M2M0NmExN2U4YTI4JHZhciRmaW5kVmlzaWJsZShjYW5kaWRhdGVzLCBjb250YWluZXIpO1xuICAgIGNvbnN0IGxhc3QgPSAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZmluZFZpc2libGUoY2FuZGlkYXRlcy5yZXZlcnNlKCksIGNvbnRhaW5lcik7XG4gICAgcmV0dXJuIFtcbiAgICAgICAgZmlyc3QsXG4gICAgICAgIGxhc3RcbiAgICBdO1xufVxuLyoqXG4gKiBSZXR1cm5zIGEgbGlzdCBvZiBwb3RlbnRpYWwgdGFiYmFibGUgY2FuZGlkYXRlcy5cbiAqXG4gKiBOT1RFOiBUaGlzIGlzIG9ubHkgYSBjbG9zZSBhcHByb3hpbWF0aW9uLiBGb3IgZXhhbXBsZSBpdCBkb2Vzbid0IHRha2UgaW50byBhY2NvdW50IGNhc2VzIGxpa2Ugd2hlblxuICogZWxlbWVudHMgYXJlIG5vdCB2aXNpYmxlLiBUaGlzIGNhbm5vdCBiZSB3b3JrZWQgb3V0IGVhc2lseSBieSBqdXN0IHJlYWRpbmcgYSBwcm9wZXJ0eSwgYnV0IHJhdGhlclxuICogbmVjZXNzaXRhdGUgcnVudGltZSBrbm93bGVkZ2UgKGNvbXB1dGVkIHN0eWxlcywgZXRjKS4gV2UgZGVhbCB3aXRoIHRoZXNlIGNhc2VzIHNlcGFyYXRlbHkuXG4gKlxuICogU2VlOiBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvVHJlZVdhbGtlclxuICogQ3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20vZGlzY29yZC9mb2N1cy1sYXllcnMvYmxvYi9tYXN0ZXIvc3JjL3V0aWwvd3JhcEZvY3VzLnRzeCNMMVxuICovIGZ1bmN0aW9uICRkMzg2M2M0NmExN2U4YTI4JHZhciRnZXRUYWJiYWJsZUNhbmRpZGF0ZXMoY29udGFpbmVyKSB7XG4gICAgY29uc3Qgbm9kZXMgPSBbXTtcbiAgICBjb25zdCB3YWxrZXIgPSBkb2N1bWVudC5jcmVhdGVUcmVlV2Fsa2VyKGNvbnRhaW5lciwgTm9kZUZpbHRlci5TSE9XX0VMRU1FTlQsIHtcbiAgICAgICAgYWNjZXB0Tm9kZTogKG5vZGUpPT57XG4gICAgICAgICAgICBjb25zdCBpc0hpZGRlbklucHV0ID0gbm9kZS50YWdOYW1lID09PSAnSU5QVVQnICYmIG5vZGUudHlwZSA9PT0gJ2hpZGRlbic7XG4gICAgICAgICAgICBpZiAobm9kZS5kaXNhYmxlZCB8fCBub2RlLmhpZGRlbiB8fCBpc0hpZGRlbklucHV0KSByZXR1cm4gTm9kZUZpbHRlci5GSUxURVJfU0tJUDsgLy8gYC50YWJJbmRleGAgaXMgbm90IHRoZSBzYW1lIGFzIHRoZSBgdGFiaW5kZXhgIGF0dHJpYnV0ZS4gSXQgd29ya3Mgb24gdGhlXG4gICAgICAgICAgICAvLyBydW50aW1lJ3MgdW5kZXJzdGFuZGluZyBvZiB0YWJiYWJpbGl0eSwgc28gdGhpcyBhdXRvbWF0aWNhbGx5IGFjY291bnRzXG4gICAgICAgICAgICAvLyBmb3IgYW55IGtpbmQgb2YgZWxlbWVudCB0aGF0IGNvdWxkIGJlIHRhYmJlZCB0by5cbiAgICAgICAgICAgIHJldHVybiBub2RlLnRhYkluZGV4ID49IDAgPyBOb2RlRmlsdGVyLkZJTFRFUl9BQ0NFUFQgOiBOb2RlRmlsdGVyLkZJTFRFUl9TS0lQO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgd2hpbGUod2Fsa2VyLm5leHROb2RlKCkpbm9kZXMucHVzaCh3YWxrZXIuY3VycmVudE5vZGUpOyAvLyB3ZSBkbyBub3QgdGFrZSBpbnRvIGFjY291bnQgdGhlIG9yZGVyIG9mIG5vZGVzIHdpdGggcG9zaXRpdmUgYHRhYkluZGV4YCBhcyBpdFxuICAgIC8vIGhpbmRlcnMgYWNjZXNzaWJpbGl0eSB0byBoYXZlIHRhYiBvcmRlciBkaWZmZXJlbnQgZnJvbSB2aXN1YWwgb3JkZXIuXG4gICAgcmV0dXJuIG5vZGVzO1xufVxuLyoqXG4gKiBSZXR1cm5zIHRoZSBmaXJzdCB2aXNpYmxlIGVsZW1lbnQgaW4gYSBsaXN0LlxuICogTk9URTogT25seSBjaGVja3MgdmlzaWJpbGl0eSB1cCB0byB0aGUgYGNvbnRhaW5lcmAuXG4gKi8gZnVuY3Rpb24gJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZpbmRWaXNpYmxlKGVsZW1lbnRzLCBjb250YWluZXIpIHtcbiAgICBmb3IgKGNvbnN0IGVsZW1lbnQgb2YgZWxlbWVudHMpe1xuICAgICAgICAvLyB3ZSBzdG9wIGNoZWNraW5nIGlmIGl0J3MgaGlkZGVuIGF0IHRoZSBgY29udGFpbmVyYCBsZXZlbCAoZXhjbHVkaW5nKVxuICAgICAgICBpZiAoISRkMzg2M2M0NmExN2U4YTI4JHZhciRpc0hpZGRlbihlbGVtZW50LCB7XG4gICAgICAgICAgICB1cFRvOiBjb250YWluZXJcbiAgICAgICAgfSkpIHJldHVybiBlbGVtZW50O1xuICAgIH1cbn1cbmZ1bmN0aW9uICRkMzg2M2M0NmExN2U4YTI4JHZhciRpc0hpZGRlbihub2RlLCB7IHVwVG86IHVwVG8gIH0pIHtcbiAgICBpZiAoZ2V0Q29tcHV0ZWRTdHlsZShub2RlKS52aXNpYmlsaXR5ID09PSAnaGlkZGVuJykgcmV0dXJuIHRydWU7XG4gICAgd2hpbGUobm9kZSl7XG4gICAgICAgIC8vIHdlIHN0b3AgYXQgYHVwVG9gIChleGNsdWRpbmcgaXQpXG4gICAgICAgIGlmICh1cFRvICE9PSB1bmRlZmluZWQgJiYgbm9kZSA9PT0gdXBUbykgcmV0dXJuIGZhbHNlO1xuICAgICAgICBpZiAoZ2V0Q29tcHV0ZWRTdHlsZShub2RlKS5kaXNwbGF5ID09PSAnbm9uZScpIHJldHVybiB0cnVlO1xuICAgICAgICBub2RlID0gbm9kZS5wYXJlbnRFbGVtZW50O1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG59XG5mdW5jdGlvbiAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkaXNTZWxlY3RhYmxlSW5wdXQoZWxlbWVudCkge1xuICAgIHJldHVybiBlbGVtZW50IGluc3RhbmNlb2YgSFRNTElucHV0RWxlbWVudCAmJiAnc2VsZWN0JyBpbiBlbGVtZW50O1xufVxuZnVuY3Rpb24gJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZvY3VzKGVsZW1lbnQsIHsgc2VsZWN0OiBzZWxlY3QgPSBmYWxzZSAgfSA9IHt9KSB7XG4gICAgLy8gb25seSBmb2N1cyBpZiB0aGF0IGVsZW1lbnQgaXMgZm9jdXNhYmxlXG4gICAgaWYgKGVsZW1lbnQgJiYgZWxlbWVudC5mb2N1cykge1xuICAgICAgICBjb25zdCBwcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50OyAvLyBOT1RFOiB3ZSBwcmV2ZW50IHNjcm9sbGluZyBvbiBmb2N1cywgdG8gbWluaW1pemUgamFycmluZyB0cmFuc2l0aW9ucyBmb3IgdXNlcnNcbiAgICAgICAgZWxlbWVudC5mb2N1cyh7XG4gICAgICAgICAgICBwcmV2ZW50U2Nyb2xsOiB0cnVlXG4gICAgICAgIH0pOyAvLyBvbmx5IHNlbGVjdCBpZiBpdHMgbm90IHRoZSBzYW1lIGVsZW1lbnQsIGl0IHN1cHBvcnRzIHNlbGVjdGlvbiBhbmQgd2UgbmVlZCB0byBzZWxlY3RcbiAgICAgICAgaWYgKGVsZW1lbnQgIT09IHByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCAmJiAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkaXNTZWxlY3RhYmxlSW5wdXQoZWxlbWVudCkgJiYgc2VsZWN0KSBlbGVtZW50LnNlbGVjdCgpO1xuICAgIH1cbn1cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIEZvY3VzU2NvcGUgc3RhY2tcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZvY3VzU2NvcGVzU3RhY2sgPSAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkY3JlYXRlRm9jdXNTY29wZXNTdGFjaygpO1xuZnVuY3Rpb24gJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGNyZWF0ZUZvY3VzU2NvcGVzU3RhY2soKSB7XG4gICAgLyoqIEEgc3RhY2sgb2YgZm9jdXMgc2NvcGVzLCB3aXRoIHRoZSBhY3RpdmUgb25lIGF0IHRoZSB0b3AgKi8gbGV0IHN0YWNrID0gW107XG4gICAgcmV0dXJuIHtcbiAgICAgICAgYWRkIChmb2N1c1Njb3BlKSB7XG4gICAgICAgICAgICAvLyBwYXVzZSB0aGUgY3VycmVudGx5IGFjdGl2ZSBmb2N1cyBzY29wZSAoYXQgdGhlIHRvcCBvZiB0aGUgc3RhY2spXG4gICAgICAgICAgICBjb25zdCBhY3RpdmVGb2N1c1Njb3BlID0gc3RhY2tbMF07XG4gICAgICAgICAgICBpZiAoZm9jdXNTY29wZSAhPT0gYWN0aXZlRm9jdXNTY29wZSkgYWN0aXZlRm9jdXNTY29wZSA9PT0gbnVsbCB8fCBhY3RpdmVGb2N1c1Njb3BlID09PSB2b2lkIDAgfHwgYWN0aXZlRm9jdXNTY29wZS5wYXVzZSgpO1xuICAgICAgICAgICAgIC8vIHJlbW92ZSBpbiBjYXNlIGl0IGFscmVhZHkgZXhpc3RzIChiZWNhdXNlIHdlJ2xsIHJlLWFkZCBpdCBhdCB0aGUgdG9wIG9mIHRoZSBzdGFjaylcbiAgICAgICAgICAgIHN0YWNrID0gJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGFycmF5UmVtb3ZlKHN0YWNrLCBmb2N1c1Njb3BlKTtcbiAgICAgICAgICAgIHN0YWNrLnVuc2hpZnQoZm9jdXNTY29wZSk7XG4gICAgICAgIH0sXG4gICAgICAgIHJlbW92ZSAoZm9jdXNTY29wZSkge1xuICAgICAgICAgICAgdmFyIF9zdGFjayQ7XG4gICAgICAgICAgICBzdGFjayA9ICRkMzg2M2M0NmExN2U4YTI4JHZhciRhcnJheVJlbW92ZShzdGFjaywgZm9jdXNTY29wZSk7XG4gICAgICAgICAgICAoX3N0YWNrJCA9IHN0YWNrWzBdKSA9PT0gbnVsbCB8fCBfc3RhY2skID09PSB2b2lkIDAgfHwgX3N0YWNrJC5yZXN1bWUoKTtcbiAgICAgICAgfVxuICAgIH07XG59XG5mdW5jdGlvbiAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkYXJyYXlSZW1vdmUoYXJyYXksIGl0ZW0pIHtcbiAgICBjb25zdCB1cGRhdGVkQXJyYXkgPSBbXG4gICAgICAgIC4uLmFycmF5XG4gICAgXTtcbiAgICBjb25zdCBpbmRleCA9IHVwZGF0ZWRBcnJheS5pbmRleE9mKGl0ZW0pO1xuICAgIGlmIChpbmRleCAhPT0gLTEpIHVwZGF0ZWRBcnJheS5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIHJldHVybiB1cGRhdGVkQXJyYXk7XG59XG5mdW5jdGlvbiAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkcmVtb3ZlTGlua3MoaXRlbXMpIHtcbiAgICByZXR1cm4gaXRlbXMuZmlsdGVyKChpdGVtKT0+aXRlbS50YWdOYW1lICE9PSAnQSdcbiAgICApO1xufVxuY29uc3QgJGQzODYzYzQ2YTE3ZThhMjgkZXhwb3J0JGJlOTJiNmY1ZjAzYzBmZTkgPSAkZDM4NjNjNDZhMTdlOGEyOCRleHBvcnQkMjBlNDAyODk2NDFmYmJiNjtcblxuXG5cblxuZXhwb3J0IHskZDM4NjNjNDZhMTdlOGEyOCRleHBvcnQkMjBlNDAyODk2NDFmYmJiNiBhcyBGb2N1c1Njb3BlLCAkZDM4NjNjNDZhMTdlOGEyOCRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSBhcyBSb290fTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4Lm1qcy5tYXBcbiJdLCJuYW1lcyI6WyIkNDVRSHYkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMiLCJmb3J3YXJkUmVmIiwiJDQ1UUh2JGZvcndhcmRSZWYiLCJ1c2VTdGF0ZSIsIiQ0NVFIdiR1c2VTdGF0ZSIsInVzZVJlZiIsIiQ0NVFIdiR1c2VSZWYiLCJ1c2VFZmZlY3QiLCIkNDVRSHYkdXNlRWZmZWN0IiwidXNlQ2FsbGJhY2siLCIkNDVRSHYkdXNlQ2FsbGJhY2siLCJjcmVhdGVFbGVtZW50IiwiJDQ1UUh2JGNyZWF0ZUVsZW1lbnQiLCJ1c2VDb21wb3NlZFJlZnMiLCIkNDVRSHYkdXNlQ29tcG9zZWRSZWZzIiwiUHJpbWl0aXZlIiwiJDQ1UUh2JFByaW1pdGl2ZSIsInVzZUNhbGxiYWNrUmVmIiwiJDQ1UUh2JHVzZUNhbGxiYWNrUmVmIiwiJGQzODYzYzQ2YTE3ZThhMjgkdmFyJEFVVE9GT0NVU19PTl9NT1VOVCIsIiRkMzg2M2M0NmExN2U4YTI4JHZhciRBVVRPRk9DVVNfT05fVU5NT1VOVCIsIiRkMzg2M2M0NmExN2U4YTI4JHZhciRFVkVOVF9PUFRJT05TIiwiYnViYmxlcyIsImNhbmNlbGFibGUiLCIkZDM4NjNjNDZhMTdlOGEyOCR2YXIkRk9DVVNfU0NPUEVfTkFNRSIsIiRkMzg2M2M0NmExN2U4YTI4JGV4cG9ydCQyMGU0MDI4OTY0MWZiYmI2IiwicHJvcHMiLCJmb3J3YXJkZWRSZWYiLCJsb29wIiwidHJhcHBlZCIsIm9uTW91bnRBdXRvRm9jdXMiLCJvbk1vdW50QXV0b0ZvY3VzUHJvcCIsIm9uVW5tb3VudEF1dG9Gb2N1cyIsIm9uVW5tb3VudEF1dG9Gb2N1c1Byb3AiLCJzY29wZVByb3BzIiwiY29udGFpbmVyMSIsInNldENvbnRhaW5lciIsImxhc3RGb2N1c2VkRWxlbWVudFJlZiIsImNvbXBvc2VkUmVmcyIsIm5vZGUiLCJmb2N1c1Njb3BlIiwicGF1c2VkIiwicGF1c2UiLCJyZXN1bWUiLCJjdXJyZW50IiwiaGFuZGxlRm9jdXNJbiIsImV2ZW50IiwidGFyZ2V0IiwiY29udGFpbnMiLCIkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZm9jdXMiLCJzZWxlY3QiLCJoYW5kbGVGb2N1c091dCIsInJlbGF0ZWRUYXJnZXQiLCJoYW5kbGVNdXRhdGlvbnMiLCJtdXRhdGlvbnMiLCJmb2N1c2VkRWxlbWVudCIsImRvY3VtZW50IiwiYWN0aXZlRWxlbWVudCIsIm11dGF0aW9uIiwicmVtb3ZlZE5vZGVzIiwibGVuZ3RoIiwiYWRkRXZlbnRMaXN0ZW5lciIsIm11dGF0aW9uT2JzZXJ2ZXIiLCJNdXRhdGlvbk9ic2VydmVyIiwib2JzZXJ2ZSIsImNoaWxkTGlzdCIsInN1YnRyZWUiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiZGlzY29ubmVjdCIsIiRkMzg2M2M0NmExN2U4YTI4JHZhciRmb2N1c1Njb3Blc1N0YWNrIiwiYWRkIiwicHJldmlvdXNseUZvY3VzZWRFbGVtZW50IiwiaGFzRm9jdXNlZENhbmRpZGF0ZSIsIm1vdW50RXZlbnQiLCJDdXN0b21FdmVudCIsImRpc3BhdGNoRXZlbnQiLCJkZWZhdWx0UHJldmVudGVkIiwiJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZvY3VzRmlyc3QiLCIkZDM4NjNjNDZhMTdlOGEyOCR2YXIkcmVtb3ZlTGlua3MiLCIkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZ2V0VGFiYmFibGVDYW5kaWRhdGVzIiwic2V0VGltZW91dCIsInVubW91bnRFdmVudCIsImJvZHkiLCJyZW1vdmUiLCJoYW5kbGVLZXlEb3duIiwiaXNUYWJLZXkiLCJrZXkiLCJhbHRLZXkiLCJjdHJsS2V5IiwibWV0YUtleSIsImNvbnRhaW5lciIsImN1cnJlbnRUYXJnZXQiLCJmaXJzdCIsImxhc3QiLCIkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZ2V0VGFiYmFibGVFZGdlcyIsImhhc1RhYmJhYmxlRWxlbWVudHNJbnNpZGUiLCJwcmV2ZW50RGVmYXVsdCIsInNoaWZ0S2V5IiwiZGl2IiwidGFiSW5kZXgiLCJyZWYiLCJvbktleURvd24iLCJPYmplY3QiLCJhc3NpZ24iLCJkaXNwbGF5TmFtZSIsImNhbmRpZGF0ZXMiLCJjYW5kaWRhdGUiLCIkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZmluZFZpc2libGUiLCJyZXZlcnNlIiwibm9kZXMiLCJ3YWxrZXIiLCJjcmVhdGVUcmVlV2Fsa2VyIiwiTm9kZUZpbHRlciIsIlNIT1dfRUxFTUVOVCIsImFjY2VwdE5vZGUiLCJpc0hpZGRlbklucHV0IiwidGFnTmFtZSIsInR5cGUiLCJkaXNhYmxlZCIsImhpZGRlbiIsIkZJTFRFUl9TS0lQIiwiRklMVEVSX0FDQ0VQVCIsIm5leHROb2RlIiwicHVzaCIsImN1cnJlbnROb2RlIiwiZWxlbWVudHMiLCJlbGVtZW50IiwiJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGlzSGlkZGVuIiwidXBUbyIsImdldENvbXB1dGVkU3R5bGUiLCJ2aXNpYmlsaXR5IiwidW5kZWZpbmVkIiwiZGlzcGxheSIsInBhcmVudEVsZW1lbnQiLCIkZDM4NjNjNDZhMTdlOGEyOCR2YXIkaXNTZWxlY3RhYmxlSW5wdXQiLCJIVE1MSW5wdXRFbGVtZW50IiwiZm9jdXMiLCJwcmV2ZW50U2Nyb2xsIiwiJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGNyZWF0ZUZvY3VzU2NvcGVzU3RhY2siLCJzdGFjayIsImFjdGl2ZUZvY3VzU2NvcGUiLCIkZDM4NjNjNDZhMTdlOGEyOCR2YXIkYXJyYXlSZW1vdmUiLCJ1bnNoaWZ0IiwiX3N0YWNrJCIsImFycmF5IiwiaXRlbSIsInVwZGF0ZWRBcnJheSIsImluZGV4IiwiaW5kZXhPZiIsInNwbGljZSIsIml0ZW1zIiwiZmlsdGVyIiwiJGQzODYzYzQ2YTE3ZThhMjgkZXhwb3J0JGJlOTJiNmY1ZjAzYzBmZTkiLCJGb2N1c1Njb3BlIiwiUm9vdCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-focus-scope/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-direction/dist/index.mjs": /*!***************************************************************!*\ !*** ./node_modules/@radix-ui/react-direction/dist/index.mjs ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DirectionProvider: () => (/* binding */ $f631663db3294ace$export$c760c09fdd558351),\n/* harmony export */ Provider: () => (/* binding */ $f631663db3294ace$export$2881499e37b75b9a),\n/* harmony export */ useDirection: () => (/* binding */ $f631663db3294ace$export$b39126d51d94e6f3)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n\nconst $f631663db3294ace$var$DirectionContext = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);\n/* -------------------------------------------------------------------------------------------------\n * Direction\n * -----------------------------------------------------------------------------------------------*/ const $f631663db3294ace$export$c760c09fdd558351 = (props)=>{\n const { dir: dir, children: children } = props;\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)($f631663db3294ace$var$DirectionContext.Provider, {\n value: dir\n }, children);\n};\n/* -----------------------------------------------------------------------------------------------*/ function $f631663db3294ace$export$b39126d51d94e6f3(localDir) {\n const globalDir = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)($f631663db3294ace$var$DirectionContext);\n return localDir || globalDir || \"ltr\";\n}\nconst $f631663db3294ace$export$2881499e37b75b9a = $f631663db3294ace$export$c760c09fdd558351;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWRpcmVjdGlvbi9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQW9JO0FBR3BJLE1BQU1NLHlDQUF5QyxXQUFXLEdBQUdMLG9EQUFvQkEsQ0FBQ007QUFDbEY7O2tHQUVrRyxHQUFHLE1BQU1DLDRDQUE0QyxDQUFDQztJQUNwSixNQUFNLEVBQUVDLEtBQUtBLEdBQUcsRUFBR0MsVUFBVUEsUUFBUSxFQUFHLEdBQUdGO0lBQzNDLE9BQU8sV0FBVyxHQUFHTixvREFBb0JBLENBQUNHLHVDQUF1Q00sUUFBUSxFQUFFO1FBQ3ZGQyxPQUFPSDtJQUNYLEdBQUdDO0FBQ1A7QUFDQSxrR0FBa0csR0FBRyxTQUFTRywwQ0FBMENDLFFBQVE7SUFDNUosTUFBTUMsWUFBWVgsaURBQWlCQSxDQUFDQztJQUNwQyxPQUFPUyxZQUFZQyxhQUFhO0FBQ3BDO0FBQ0EsTUFBTUMsNENBQTRDVDtBQUt3SSxDQUMxTCxrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9lbWJlZGNoYWluLWFkbWluLy4vbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC1kaXJlY3Rpb24vZGlzdC9pbmRleC5tanM/NzU4MyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2NyZWF0ZUNvbnRleHQgYXMgJDdHamNkJGNyZWF0ZUNvbnRleHQsIGNyZWF0ZUVsZW1lbnQgYXMgJDdHamNkJGNyZWF0ZUVsZW1lbnQsIHVzZUNvbnRleHQgYXMgJDdHamNkJHVzZUNvbnRleHR9IGZyb20gXCJyZWFjdFwiO1xuXG5cbmNvbnN0ICRmNjMxNjYzZGIzMjk0YWNlJHZhciREaXJlY3Rpb25Db250ZXh0ID0gLyojX19QVVJFX18qLyAkN0dqY2QkY3JlYXRlQ29udGV4dCh1bmRlZmluZWQpO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGlyZWN0aW9uXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICRmNjMxNjYzZGIzMjk0YWNlJGV4cG9ydCRjNzYwYzA5ZmRkNTU4MzUxID0gKHByb3BzKT0+e1xuICAgIGNvbnN0IHsgZGlyOiBkaXIgLCBjaGlsZHJlbjogY2hpbGRyZW4gIH0gPSBwcm9wcztcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAkN0dqY2QkY3JlYXRlRWxlbWVudCgkZjYzMTY2M2RiMzI5NGFjZSR2YXIkRGlyZWN0aW9uQ29udGV4dC5Qcm92aWRlciwge1xuICAgICAgICB2YWx1ZTogZGlyXG4gICAgfSwgY2hpbGRyZW4pO1xufTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gZnVuY3Rpb24gJGY2MzE2NjNkYjMyOTRhY2UkZXhwb3J0JGIzOTEyNmQ1MWQ5NGU2ZjMobG9jYWxEaXIpIHtcbiAgICBjb25zdCBnbG9iYWxEaXIgPSAkN0dqY2QkdXNlQ29udGV4dCgkZjYzMTY2M2RiMzI5NGFjZSR2YXIkRGlyZWN0aW9uQ29udGV4dCk7XG4gICAgcmV0dXJuIGxvY2FsRGlyIHx8IGdsb2JhbERpciB8fCAnbHRyJztcbn1cbmNvbnN0ICRmNjMxNjYzZGIzMjk0YWNlJGV4cG9ydCQyODgxNDk5ZTM3Yjc1YjlhID0gJGY2MzE2NjNkYjMyOTRhY2UkZXhwb3J0JGM3NjBjMDlmZGQ1NTgzNTE7XG5cblxuXG5cbmV4cG9ydCB7JGY2MzE2NjNkYjMyOTRhY2UkZXhwb3J0JGIzOTEyNmQ1MWQ5NGU2ZjMgYXMgdXNlRGlyZWN0aW9uLCAkZjYzMTY2M2RiMzI5NGFjZSRleHBvcnQkMjg4MTQ5OWUzN2I3NWI5YSBhcyBQcm92aWRlciwgJGY2MzE2NjNkYjMyOTRhY2UkZXhwb3J0JGM3NjBjMDlmZGQ1NTgzNTEgYXMgRGlyZWN0aW9uUHJvdmlkZXJ9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXgubWpzLm1hcFxuIl0sIm5hbWVzIjpbImNyZWF0ZUNvbnRleHQiLCIkN0dqY2QkY3JlYXRlQ29udGV4dCIsImNyZWF0ZUVsZW1lbnQiLCIkN0dqY2QkY3JlYXRlRWxlbWVudCIsInVzZUNvbnRleHQiLCIkN0dqY2QkdXNlQ29udGV4dCIsIiRmNjMxNjYzZGIzMjk0YWNlJHZhciREaXJlY3Rpb25Db250ZXh0IiwidW5kZWZpbmVkIiwiJGY2MzE2NjNkYjMyOTRhY2UkZXhwb3J0JGM3NjBjMDlmZGQ1NTgzNTEiLCJwcm9wcyIsImRpciIsImNoaWxkcmVuIiwiUHJvdmlkZXIiLCJ2YWx1ZSIsIiRmNjMxNjYzZGIzMjk0YWNlJGV4cG9ydCRiMzkxMjZkNTFkOTRlNmYzIiwibG9jYWxEaXIiLCJnbG9iYWxEaXIiLCIkZjYzMTY2M2RiMzI5NGFjZSRleHBvcnQkMjg4MTQ5OWUzN2I3NWI5YSIsInVzZURpcmVjdGlvbiIsIkRpcmVjdGlvblByb3ZpZGVyIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-direction/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs": /*!***********************************************************************!*\ !*** ./node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs ***! \***********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Branch: () => (/* binding */ $5cb92bef7577960e$export$aecb2ddcb55c95be),\n/* harmony export */ DismissableLayer: () => (/* binding */ $5cb92bef7577960e$export$177fb62ff3ec1f22),\n/* harmony export */ DismissableLayerBranch: () => (/* binding */ $5cb92bef7577960e$export$4d5eb2109db14228),\n/* harmony export */ Root: () => (/* binding */ $5cb92bef7577960e$export$be92b6f5f03c0fe9)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_primitive__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @radix-ui/primitive */ \"(ssr)/./node_modules/@radix-ui/primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-compose-refs */ \"(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @radix-ui/react-use-callback-ref */ \"(ssr)/./node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_escape_keydown__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-use-escape-keydown */ \"(ssr)/./node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs\");\n\n\n\n\n\n\n\n/* -------------------------------------------------------------------------------------------------\n * DismissableLayer\n * -----------------------------------------------------------------------------------------------*/ const $5cb92bef7577960e$var$DISMISSABLE_LAYER_NAME = \"DismissableLayer\";\nconst $5cb92bef7577960e$var$CONTEXT_UPDATE = \"dismissableLayer.update\";\nconst $5cb92bef7577960e$var$POINTER_DOWN_OUTSIDE = \"dismissableLayer.pointerDownOutside\";\nconst $5cb92bef7577960e$var$FOCUS_OUTSIDE = \"dismissableLayer.focusOutside\";\nlet $5cb92bef7577960e$var$originalBodyPointerEvents;\nconst $5cb92bef7577960e$var$DismissableLayerContext = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createContext)({\n layers: new Set(),\n layersWithOutsidePointerEventsDisabled: new Set(),\n branches: new Set()\n});\nconst $5cb92bef7577960e$export$177fb62ff3ec1f22 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n var _node$ownerDocument;\n const { disableOutsidePointerEvents: disableOutsidePointerEvents = false, onEscapeKeyDown: onEscapeKeyDown, onPointerDownOutside: onPointerDownOutside, onFocusOutside: onFocusOutside, onInteractOutside: onInteractOutside, onDismiss: onDismiss, ...layerProps } = props;\n const context = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)($5cb92bef7577960e$var$DismissableLayerContext);\n const [node1, setNode] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const ownerDocument = (_node$ownerDocument = node1 === null || node1 === void 0 ? void 0 : node1.ownerDocument) !== null && _node$ownerDocument !== void 0 ? _node$ownerDocument : globalThis === null || globalThis === void 0 ? void 0 : globalThis.document;\n const [, force] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)({});\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__.useComposedRefs)(forwardedRef, (node)=>setNode(node));\n const layers = Array.from(context.layers);\n const [highestLayerWithOutsidePointerEventsDisabled] = [\n ...context.layersWithOutsidePointerEventsDisabled\n ].slice(-1); // prettier-ignore\n const highestLayerWithOutsidePointerEventsDisabledIndex = layers.indexOf(highestLayerWithOutsidePointerEventsDisabled); // prettier-ignore\n const index = node1 ? layers.indexOf(node1) : -1;\n const isBodyPointerEventsDisabled = context.layersWithOutsidePointerEventsDisabled.size > 0;\n const isPointerEventsEnabled = index >= highestLayerWithOutsidePointerEventsDisabledIndex;\n const pointerDownOutside = $5cb92bef7577960e$var$usePointerDownOutside((event)=>{\n const target = event.target;\n const isPointerDownOnBranch = [\n ...context.branches\n ].some((branch)=>branch.contains(target));\n if (!isPointerEventsEnabled || isPointerDownOnBranch) return;\n onPointerDownOutside === null || onPointerDownOutside === void 0 || onPointerDownOutside(event);\n onInteractOutside === null || onInteractOutside === void 0 || onInteractOutside(event);\n if (!event.defaultPrevented) onDismiss === null || onDismiss === void 0 || onDismiss();\n }, ownerDocument);\n const focusOutside = $5cb92bef7577960e$var$useFocusOutside((event)=>{\n const target = event.target;\n const isFocusInBranch = [\n ...context.branches\n ].some((branch)=>branch.contains(target));\n if (isFocusInBranch) return;\n onFocusOutside === null || onFocusOutside === void 0 || onFocusOutside(event);\n onInteractOutside === null || onInteractOutside === void 0 || onInteractOutside(event);\n if (!event.defaultPrevented) onDismiss === null || onDismiss === void 0 || onDismiss();\n }, ownerDocument);\n (0,_radix_ui_react_use_escape_keydown__WEBPACK_IMPORTED_MODULE_3__.useEscapeKeydown)((event)=>{\n const isHighestLayer = index === context.layers.size - 1;\n if (!isHighestLayer) return;\n onEscapeKeyDown === null || onEscapeKeyDown === void 0 || onEscapeKeyDown(event);\n if (!event.defaultPrevented && onDismiss) {\n event.preventDefault();\n onDismiss();\n }\n }, ownerDocument);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (!node1) return;\n if (disableOutsidePointerEvents) {\n if (context.layersWithOutsidePointerEventsDisabled.size === 0) {\n $5cb92bef7577960e$var$originalBodyPointerEvents = ownerDocument.body.style.pointerEvents;\n ownerDocument.body.style.pointerEvents = \"none\";\n }\n context.layersWithOutsidePointerEventsDisabled.add(node1);\n }\n context.layers.add(node1);\n $5cb92bef7577960e$var$dispatchUpdate();\n return ()=>{\n if (disableOutsidePointerEvents && context.layersWithOutsidePointerEventsDisabled.size === 1) ownerDocument.body.style.pointerEvents = $5cb92bef7577960e$var$originalBodyPointerEvents;\n };\n }, [\n node1,\n ownerDocument,\n disableOutsidePointerEvents,\n context\n ]);\n /**\n * We purposefully prevent combining this effect with the `disableOutsidePointerEvents` effect\n * because a change to `disableOutsidePointerEvents` would remove this layer from the stack\n * and add it to the end again so the layering order wouldn't be _creation order_.\n * We only want them to be removed from context stacks when unmounted.\n */ (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n return ()=>{\n if (!node1) return;\n context.layers.delete(node1);\n context.layersWithOutsidePointerEventsDisabled.delete(node1);\n $5cb92bef7577960e$var$dispatchUpdate();\n };\n }, [\n node1,\n context\n ]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const handleUpdate = ()=>force({});\n document.addEventListener($5cb92bef7577960e$var$CONTEXT_UPDATE, handleUpdate);\n return ()=>document.removeEventListener($5cb92bef7577960e$var$CONTEXT_UPDATE, handleUpdate);\n }, []);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, layerProps, {\n ref: composedRefs,\n style: {\n pointerEvents: isBodyPointerEventsDisabled ? isPointerEventsEnabled ? \"auto\" : \"none\" : undefined,\n ...props.style\n },\n onFocusCapture: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_5__.composeEventHandlers)(props.onFocusCapture, focusOutside.onFocusCapture),\n onBlurCapture: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_5__.composeEventHandlers)(props.onBlurCapture, focusOutside.onBlurCapture),\n onPointerDownCapture: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_5__.composeEventHandlers)(props.onPointerDownCapture, pointerDownOutside.onPointerDownCapture)\n }));\n});\n/*#__PURE__*/ Object.assign($5cb92bef7577960e$export$177fb62ff3ec1f22, {\n displayName: $5cb92bef7577960e$var$DISMISSABLE_LAYER_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * DismissableLayerBranch\n * -----------------------------------------------------------------------------------------------*/ const $5cb92bef7577960e$var$BRANCH_NAME = \"DismissableLayerBranch\";\nconst $5cb92bef7577960e$export$4d5eb2109db14228 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const context = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)($5cb92bef7577960e$var$DismissableLayerContext);\n const ref = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__.useComposedRefs)(forwardedRef, ref);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const node = ref.current;\n if (node) {\n context.branches.add(node);\n return ()=>{\n context.branches.delete(node);\n };\n }\n }, [\n context.branches\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, props, {\n ref: composedRefs\n }));\n});\n/*#__PURE__*/ Object.assign($5cb92bef7577960e$export$4d5eb2109db14228, {\n displayName: $5cb92bef7577960e$var$BRANCH_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ /**\n * Listens for `pointerdown` outside a react subtree. We use `pointerdown` rather than `pointerup`\n * to mimic layer dismissing behaviour present in OS.\n * Returns props to pass to the node we want to check for outside events.\n */ function $5cb92bef7577960e$var$usePointerDownOutside(onPointerDownOutside, ownerDocument = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) {\n const handlePointerDownOutside = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_6__.useCallbackRef)(onPointerDownOutside);\n const isPointerInsideReactTreeRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(false);\n const handleClickRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(()=>{});\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const handlePointerDown = (event)=>{\n if (event.target && !isPointerInsideReactTreeRef.current) {\n const eventDetail = {\n originalEvent: event\n };\n function handleAndDispatchPointerDownOutsideEvent() {\n $5cb92bef7577960e$var$handleAndDispatchCustomEvent($5cb92bef7577960e$var$POINTER_DOWN_OUTSIDE, handlePointerDownOutside, eventDetail, {\n discrete: true\n });\n }\n /**\n * On touch devices, we need to wait for a click event because browsers implement\n * a ~350ms delay between the time the user stops touching the display and when the\n * browser executres events. We need to ensure we don't reactivate pointer-events within\n * this timeframe otherwise the browser may execute events that should have been prevented.\n *\n * Additionally, this also lets us deal automatically with cancellations when a click event\n * isn't raised because the page was considered scrolled/drag-scrolled, long-pressed, etc.\n *\n * This is why we also continuously remove the previous listener, because we cannot be\n * certain that it was raised, and therefore cleaned-up.\n */ if (event.pointerType === \"touch\") {\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n handleClickRef.current = handleAndDispatchPointerDownOutsideEvent;\n ownerDocument.addEventListener(\"click\", handleClickRef.current, {\n once: true\n });\n } else handleAndDispatchPointerDownOutsideEvent();\n }\n isPointerInsideReactTreeRef.current = false;\n };\n /**\n * if this hook executes in a component that mounts via a `pointerdown` event, the event\n * would bubble up to the document and trigger a `pointerDownOutside` event. We avoid\n * this by delaying the event listener registration on the document.\n * This is not React specific, but rather how the DOM works, ie:\n * ```\n * button.addEventListener('pointerdown', () => {\n * console.log('I will log');\n * document.addEventListener('pointerdown', () => {\n * console.log('I will also log');\n * })\n * });\n */ const timerId = window.setTimeout(()=>{\n ownerDocument.addEventListener(\"pointerdown\", handlePointerDown);\n }, 0);\n return ()=>{\n window.clearTimeout(timerId);\n ownerDocument.removeEventListener(\"pointerdown\", handlePointerDown);\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n };\n }, [\n ownerDocument,\n handlePointerDownOutside\n ]);\n return {\n // ensures we check React component tree (not just DOM tree)\n onPointerDownCapture: ()=>isPointerInsideReactTreeRef.current = true\n };\n}\n/**\n * Listens for when focus happens outside a react subtree.\n * Returns props to pass to the root (node) of the subtree we want to check.\n */ function $5cb92bef7577960e$var$useFocusOutside(onFocusOutside, ownerDocument = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) {\n const handleFocusOutside = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_6__.useCallbackRef)(onFocusOutside);\n const isFocusInsideReactTreeRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(false);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const handleFocus = (event)=>{\n if (event.target && !isFocusInsideReactTreeRef.current) {\n const eventDetail = {\n originalEvent: event\n };\n $5cb92bef7577960e$var$handleAndDispatchCustomEvent($5cb92bef7577960e$var$FOCUS_OUTSIDE, handleFocusOutside, eventDetail, {\n discrete: false\n });\n }\n };\n ownerDocument.addEventListener(\"focusin\", handleFocus);\n return ()=>ownerDocument.removeEventListener(\"focusin\", handleFocus);\n }, [\n ownerDocument,\n handleFocusOutside\n ]);\n return {\n onFocusCapture: ()=>isFocusInsideReactTreeRef.current = true,\n onBlurCapture: ()=>isFocusInsideReactTreeRef.current = false\n };\n}\nfunction $5cb92bef7577960e$var$dispatchUpdate() {\n const event = new CustomEvent($5cb92bef7577960e$var$CONTEXT_UPDATE);\n document.dispatchEvent(event);\n}\nfunction $5cb92bef7577960e$var$handleAndDispatchCustomEvent(name, handler, detail, { discrete: discrete }) {\n const target = detail.originalEvent.target;\n const event = new CustomEvent(name, {\n bubbles: false,\n cancelable: true,\n detail: detail\n });\n if (handler) target.addEventListener(name, handler, {\n once: true\n });\n if (discrete) (0,_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__.dispatchDiscreteCustomEvent)(target, event);\n else target.dispatchEvent(event);\n}\nconst $5cb92bef7577960e$export$be92b6f5f03c0fe9 = $5cb92bef7577960e$export$177fb62ff3ec1f22;\nconst $5cb92bef7577960e$export$aecb2ddcb55c95be = $5cb92bef7577960e$export$4d5eb2109db14228;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWRpc21pc3NhYmxlLWxheWVyL2Rpc3QvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQXNGO0FBQ29LO0FBQ2xLO0FBQ21EO0FBQ3BEO0FBQ0U7QUFDTTtBQVMvRjs7a0dBRWtHLEdBQUcsTUFBTTJCLCtDQUErQztBQUMxSixNQUFNQyx1Q0FBdUM7QUFDN0MsTUFBTUMsNkNBQTZDO0FBQ25ELE1BQU1DLHNDQUFzQztBQUM1QyxJQUFJQztBQUNKLE1BQU1DLGdEQUFnRCxXQUFXLEdBQUc5QixvREFBb0JBLENBQUM7SUFDckYrQixRQUFRLElBQUlDO0lBQ1pDLHdDQUF3QyxJQUFJRDtJQUM1Q0UsVUFBVSxJQUFJRjtBQUNsQjtBQUNBLE1BQU1HLDRDQUE0QyxXQUFXLEdBQUdqQyxpREFBaUJBLENBQUMsQ0FBQ2tDLE9BQU9DO0lBQ3RGLElBQUlDO0lBQ0osTUFBTSxFQUFFQyw2QkFBNkJBLDhCQUE4QixLQUFLLEVBQUdDLGlCQUFpQkEsZUFBZSxFQUFHQyxzQkFBc0JBLG9CQUFvQixFQUFHQyxnQkFBZ0JBLGNBQWMsRUFBR0MsbUJBQW1CQSxpQkFBaUIsRUFBR0MsV0FBV0EsU0FBUyxFQUFHLEdBQUdDLFlBQVksR0FBR1Q7SUFDNVEsTUFBTVUsVUFBVTFDLGlEQUFpQkEsQ0FBQzBCO0lBQ2xDLE1BQU0sQ0FBQ2lCLE9BQU9DLFFBQVEsR0FBRzFDLCtDQUFlQSxDQUFDO0lBQ3pDLE1BQU0yQyxnQkFBZ0IsQ0FBQ1gsc0JBQXNCUyxVQUFVLFFBQVFBLFVBQVUsS0FBSyxJQUFJLEtBQUssSUFBSUEsTUFBTUUsYUFBYSxNQUFNLFFBQVFYLHdCQUF3QixLQUFLLElBQUlBLHNCQUFzQlksZUFBZSxRQUFRQSxlQUFlLEtBQUssSUFBSSxLQUFLLElBQUlBLFdBQVdDLFFBQVE7SUFDOVAsTUFBTSxHQUFHQyxNQUFNLEdBQUc5QywrQ0FBZUEsQ0FBQyxDQUFDO0lBQ25DLE1BQU0rQyxlQUFl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Y3FDLGdCQUFnQixDQUFDLFdBQVcrQjtRQUMxQyxPQUFPLElBQUlwRSxjQUFjc0MsbUJBQW1CLENBQUMsV0FBVzhCO0lBRTVELEdBQUc7UUFDQ3BFO1FBQ0FrRTtLQUNIO0lBQ0QsT0FBTztRQUNIeEIsZ0JBQWdCLElBQUl5QiwwQkFBMEJqQixPQUFPLEdBQUc7UUFFeERQLGVBQWUsSUFBSXdCLDBCQUEwQmpCLE9BQU8sR0FBRztJQUMzRDtBQUNKO0FBQ0EsU0FBU2hCO0lBQ0wsTUFBTWhCLFFBQVEsSUFBSW1ELFlBQVk1RjtJQUM5QnlCLFNBQVNvRSxhQUFhLENBQUNwRDtBQUMzQjtBQUNBLFNBQVN3QyxtREFBbURhLElBQUksRUFBRUMsT0FBTyxFQUFFQyxNQUFNLEVBQUUsRUFBRWQsVUFBVUEsUUFBUSxFQUFHO0lBQ3RHLE1BQU14QyxTQUFTc0QsT0FBT2pCLGFBQWEsQ0FBQ3JDLE1BQU07SUFDMUMsTUFBTUQsUUFBUSxJQUFJbUQsWUFBWUUsTUFBTTtRQUNoQ0csU0FBUztRQUNUQyxZQUFZO1FBQ1pGLFFBQVFBO0lBQ1o7SUFDQSxJQUFJRCxTQUFTckQsT0FBT2tCLGdCQUFnQixDQUFDa0MsTUFBTUMsU0FBUztRQUNoRFgsTUFBTTtJQUNWO0lBQ0EsSUFBSUYsVUFBVTFGLHNGQUFrQ0EsQ0FBQ2tELFFBQVFEO1NBQ3BEQyxPQUFPbUQsYUFBYSxDQUFDcEQ7QUFDOUI7QUFDQSxNQUFNMEQsNENBQTRDMUY7QUFDbEQsTUFBTTJGLDRDQUE0QzVCO0FBS2tNLENBQ3BQLGtDQUFrQyIsInNvdXJjZXMiOlsid2VicGFjazovL2VtYmVkY2hhaW4tYWRtaW4vLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWRpc21pc3NhYmxlLWxheWVyL2Rpc3QvaW5kZXgubWpzP2M5YWYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICRrcXdwSCRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZXh0ZW5kc1wiO1xuaW1wb3J0IHtjcmVhdGVDb250ZXh0IGFzICRrcXdwSCRjcmVhdGVDb250ZXh0LCBmb3J3YXJkUmVmIGFzICRrcXdwSCRmb3J3YXJkUmVmLCB1c2VDb250ZXh0IGFzICRrcXdwSCR1c2VDb250ZXh0LCB1c2VTdGF0ZSBhcyAka3F3cEgkdXNlU3RhdGUsIHVzZUVmZmVjdCBhcyAka3F3cEgkdXNlRWZmZWN0LCBjcmVhdGVFbGVtZW50IGFzICRrcXdwSCRjcmVhdGVFbGVtZW50LCB1c2VSZWYgYXMgJGtxd3BIJHVzZVJlZn0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQge2NvbXBvc2VFdmVudEhhbmRsZXJzIGFzICRrcXdwSCRjb21wb3NlRXZlbnRIYW5kbGVyc30gZnJvbSBcIkByYWRpeC11aS9wcmltaXRpdmVcIjtcbmltcG9ydCB7UHJpbWl0aXZlIGFzICRrcXdwSCRQcmltaXRpdmUsIGRpc3BhdGNoRGlzY3JldGVDdXN0b21FdmVudCBhcyAka3F3cEgkZGlzcGF0Y2hEaXNjcmV0ZUN1c3RvbUV2ZW50fSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXByaW1pdGl2ZVwiO1xuaW1wb3J0IHt1c2VDb21wb3NlZFJlZnMgYXMgJGtxd3BIJHVzZUNvbXBvc2VkUmVmc30gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1jb21wb3NlLXJlZnNcIjtcbmltcG9ydCB7dXNlQ2FsbGJhY2tSZWYgYXMgJGtxd3BIJHVzZUNhbGxiYWNrUmVmfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXVzZS1jYWxsYmFjay1yZWZcIjtcbmltcG9ydCB7dXNlRXNjYXBlS2V5ZG93biBhcyAka3F3cEgkdXNlRXNjYXBlS2V5ZG93bn0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC11c2UtZXNjYXBlLWtleWRvd25cIjtcblxuXG5cblxuXG5cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBEaXNtaXNzYWJsZUxheWVyXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRESVNNSVNTQUJMRV9MQVlFUl9OQU1FID0gJ0Rpc21pc3NhYmxlTGF5ZXInO1xuY29uc3QgJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJENPTlRFWFRfVVBEQVRFID0gJ2Rpc21pc3NhYmxlTGF5ZXIudXBkYXRlJztcbmNvbnN0ICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRQT0lOVEVSX0RPV05fT1VUU0lERSA9ICdkaXNtaXNzYWJsZUxheWVyLnBvaW50ZXJEb3duT3V0c2lkZSc7XG5jb25zdCAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRk9DVVNfT1VUU0lERSA9ICdkaXNtaXNzYWJsZUxheWVyLmZvY3VzT3V0c2lkZSc7XG5sZXQgJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJG9yaWdpbmFsQm9keVBvaW50ZXJFdmVudHM7XG5jb25zdCAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRGlzbWlzc2FibGVMYXllckNvbnRleHQgPSAvKiNfX1BVUkVfXyovICRrcXdwSCRjcmVhdGVDb250ZXh0KHtcbiAgICBsYXllcnM6IG5ldyBTZXQoKSxcbiAgICBsYXllcnNXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZDogbmV3IFNldCgpLFxuICAgIGJyYW5jaGVzOiBuZXcgU2V0KClcbn0pO1xuY29uc3QgJDVjYjkyYmVmNzU3Nzk2MGUkZXhwb3J0JDE3N2ZiNjJmZjNlYzFmMjIgPSAvKiNfX1BVUkVfXyovICRrcXdwSCRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIHZhciBfbm9kZSRvd25lckRvY3VtZW50O1xuICAgIGNvbnN0IHsgZGlzYWJsZU91dHNpZGVQb2ludGVyRXZlbnRzOiBkaXNhYmxlT3V0c2lkZVBvaW50ZXJFdmVudHMgPSBmYWxzZSAsIG9uRXNjYXBlS2V5RG93bjogb25Fc2NhcGVLZXlEb3duICwgb25Qb2ludGVyRG93bk91dHNpZGU6IG9uUG9pbnRlckRvd25PdXRzaWRlICwgb25Gb2N1c091dHNpZGU6IG9uRm9jdXNPdXRzaWRlICwgb25JbnRlcmFjdE91dHNpZGU6IG9uSW50ZXJhY3RPdXRzaWRlICwgb25EaXNtaXNzOiBvbkRpc21pc3MgLCAuLi5sYXllclByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBjb250ZXh0ID0gJGtxd3BIJHVzZUNvbnRleHQoJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJERpc21pc3NhYmxlTGF5ZXJDb250ZXh0KTtcbiAgICBjb25zdCBbbm9kZTEsIHNldE5vZGVdID0gJGtxd3BIJHVzZVN0YXRlKG51bGwpO1xuICAgIGNvbnN0IG93bmVyRG9jdW1lbnQgPSAoX25vZGUkb3duZXJEb2N1bWVudCA9IG5vZGUxID09PSBudWxsIHx8IG5vZGUxID09PSB2b2lkIDAgPyB2b2lkIDAgOiBub2RlMS5vd25lckRvY3VtZW50KSAhPT0gbnVsbCAmJiBfbm9kZSRvd25lckRvY3VtZW50ICE9PSB2b2lkIDAgPyBfbm9kZSRvd25lckRvY3VtZW50IDogZ2xvYmFsVGhpcyA9PT0gbnVsbCB8fCBnbG9iYWxUaGlzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBnbG9iYWxUaGlzLmRvY3VtZW50O1xuICAgIGNvbnN0IFssIGZvcmNlXSA9ICRrcXdwSCR1c2VTdGF0ZSh7fSk7XG4gICAgY29uc3QgY29tcG9zZWRSZWZzID0gJGtxd3BIJHVzZUNvbXBvc2VkUmVmcyhmb3J3YXJkZWRSZWYsIChub2RlKT0+c2V0Tm9kZShub2RlKVxuICAgICk7XG4gICAgY29uc3QgbGF5ZXJzID0gQXJyYXkuZnJvbShjb250ZXh0LmxheWVycyk7XG4gICAgY29uc3QgW2hpZ2hlc3RMYXllcldpdGhPdXRzaWRlUG9pbnRlckV2ZW50c0Rpc2FibGVkXSA9IFtcbiAgICAgICAgLi4uY29udGV4dC5sYXllcnNXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZFxuICAgIF0uc2xpY2UoLTEpOyAvLyBwcmV0dGllci1pZ25vcmVcbiAgICBjb25zdCBoaWdoZXN0TGF5ZXJXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZEluZGV4ID0gbGF5ZXJzLmluZGV4T2YoaGlnaGVzdExheWVyV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWQpOyAvLyBwcmV0dGllci1pZ25vcmVcbiAgICBjb25zdCBpbmRleCA9IG5vZGUxID8gbGF5ZXJzLmluZGV4T2Yobm9kZTEpIDogLTE7XG4gICAgY29uc3QgaXNCb2R5UG9pbnRlckV2ZW50c0Rpc2FibGVkID0gY29udGV4dC5sYXllcnNXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZC5zaXplID4gMDtcbiAgICBjb25zdCBpc1BvaW50ZXJFdmVudHNFbmFibGVkID0gaW5kZXggPj0gaGlnaGVzdExheWVyV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWRJbmRleDtcbiAgICBjb25zdCBwb2ludGVyRG93bk91dHNpZGUgPSAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkdXNlUG9pbnRlckRvd25PdXRzaWRlKChldmVudCk9PntcbiAgICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0O1xuICAgICAgICBjb25zdCBpc1BvaW50ZXJEb3duT25CcmFuY2ggPSBbXG4gICAgICAgICAgICAuLi5jb250ZXh0LmJyYW5jaGVzXG4gICAgICAgIF0uc29tZSgoYnJhbmNoKT0+YnJhbmNoLmNvbnRhaW5zKHRhcmdldClcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKCFpc1BvaW50ZXJFdmVudHNFbmFibGVkIHx8IGlzUG9pbnRlckRvd25PbkJyYW5jaCkgcmV0dXJuO1xuICAgICAgICBvblBvaW50ZXJEb3duT3V0c2lkZSA9PT0gbnVsbCB8fCBvblBvaW50ZXJEb3duT3V0c2lkZSA9PT0gdm9pZCAwIHx8IG9uUG9pbnRlckRvd25PdXRzaWRlKGV2ZW50KTtcbiAgICAgICAgb25JbnRlcmFjdE91dHNpZGUgPT09IG51bGwgfHwgb25JbnRlcmFjdE91dHNpZGUgPT09IHZvaWQgMCB8fCBvbkludGVyYWN0T3V0c2lkZShldmVudCk7XG4gICAgICAgIGlmICghZXZlbnQuZGVmYXVsdFByZXZlbnRlZCkgb25EaXNtaXNzID09PSBudWxsIHx8IG9uRGlzbWlzcyA9PT0gdm9pZCAwIHx8IG9uRGlzbWlzcygpO1xuICAgIH0sIG93bmVyRG9jdW1lbnQpO1xuICAgIGNvbnN0IGZvY3VzT3V0c2lkZSA9ICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciR1c2VGb2N1c091dHNpZGUoKGV2ZW50KT0+e1xuICAgICAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQ7XG4gICAgICAgIGNvbnN0IGlzRm9jdXNJbkJyYW5jaCA9IFtcbiAgICAgICAgICAgIC4uLmNvbnRleHQuYnJhbmNoZXNcbiAgICAgICAgXS5zb21lKChicmFuY2gpPT5icmFuY2guY29udGFpbnModGFyZ2V0KVxuICAgICAgICApO1xuICAgICAgICBpZiAoaXNGb2N1c0luQnJhbmNoKSByZXR1cm47XG4gICAgICAgIG9uRm9jdXNPdXRzaWRlID09PSBudWxsIHx8IG9uRm9jdXNPdXRzaWRlID09PSB2b2lkIDAgfHwgb25Gb2N1c091dHNpZGUoZXZlbnQpO1xuICAgICAgICBvbkludGVyYWN0T3V0c2lkZSA9PT0gbnVsbCB8fCBvbkludGVyYWN0T3V0c2lkZSA9PT0gdm9pZCAwIHx8IG9uSW50ZXJhY3RPdXRzaWRlKGV2ZW50KTtcbiAgICAgICAgaWYgKCFldmVudC5kZWZhdWx0UHJldmVudGVkKSBvbkRpc21pc3MgPT09IG51bGwgfHwgb25EaXNtaXNzID09PSB2b2lkIDAgfHwgb25EaXNtaXNzKCk7XG4gICAgfSwgb3duZXJEb2N1bWVudCk7XG4gICAgJGtxd3BIJHVzZUVzY2FwZUtleWRvd24oKGV2ZW50KT0+e1xuICAgICAgICBjb25zdCBpc0hpZ2hlc3RMYXllciA9IGluZGV4ID09PSBjb250ZXh0LmxheWVycy5zaXplIC0gMTtcbiAgICAgICAgaWYgKCFpc0hpZ2hlc3RMYXllcikgcmV0dXJuO1xuICAgICAgICBvbkVzY2FwZUtleURvd24gPT09IG51bGwgfHwgb25Fc2NhcGVLZXlEb3duID09PSB2b2lkIDAgfHwgb25Fc2NhcGVLZXlEb3duKGV2ZW50KTtcbiAgICAgICAgaWYgKCFldmVudC5kZWZhdWx0UHJldmVudGVkICYmIG9uRGlzbWlzcykge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIG9uRGlzbWlzcygpO1xuICAgICAgICB9XG4gICAgfSwgb3duZXJEb2N1bWVudCk7XG4gICAgJGtxd3BIJHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBpZiAoIW5vZGUxKSByZXR1cm47XG4gICAgICAgIGlmIChkaXNhYmxlT3V0c2lkZVBvaW50ZXJFdmVudHMpIHtcbiAgICAgICAgICAgIGlmIChjb250ZXh0LmxheWVyc1dpdGhPdXRzaWRlUG9pbnRlckV2ZW50c0Rpc2FibGVkLnNpemUgPT09IDApIHtcbiAgICAgICAgICAgICAgICAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkb3JpZ2luYWxCb2R5UG9pbnRlckV2ZW50cyA9IG93bmVyRG9jdW1lbnQuYm9keS5zdHlsZS5wb2ludGVyRXZlbnRzO1xuICAgICAgICAgICAgICAgIG93bmVyRG9jdW1lbnQuYm9keS5zdHlsZS5wb2ludGVyRXZlbnRzID0gJ25vbmUnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29udGV4dC5sYXllcnNXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZC5hZGQobm9kZTEpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnRleHQubGF5ZXJzLmFkZChub2RlMSk7XG4gICAgICAgICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRkaXNwYXRjaFVwZGF0ZSgpO1xuICAgICAgICByZXR1cm4gKCk9PntcbiAgICAgICAgICAgIGlmIChkaXNhYmxlT3V0c2lkZVBvaW50ZXJFdmVudHMgJiYgY29udGV4dC5sYXllcnNXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZC5zaXplID09PSAxKSBvd25lckRvY3VtZW50LmJvZHkuc3R5bGUucG9pbnRlckV2ZW50cyA9ICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRvcmlnaW5hbEJvZHlQb2ludGVyRXZlbnRzO1xuICAgICAgICB9O1xuICAgIH0sIFtcbiAgICAgICAgbm9kZTEsXG4gICAgICAgIG93bmVyRG9jdW1lbnQsXG4gICAgICAgIGRpc2FibGVPdXRzaWRlUG9pbnRlckV2ZW50cyxcbiAgICAgICAgY29udGV4dFxuICAgIF0pO1xuICAgIC8qKlxuICAgKiBXZSBwdXJwb3NlZnVsbHkgcHJldmVudCBjb21iaW5pbmcgdGhpcyBlZmZlY3Qgd2l0aCB0aGUgYGRpc2FibGVPdXRzaWRlUG9pbnRlckV2ZW50c2AgZWZmZWN0XG4gICAqIGJlY2F1c2UgYSBjaGFuZ2UgdG8gYGRpc2FibGVPdXRzaWRlUG9pbnRlckV2ZW50c2Agd291bGQgcmVtb3ZlIHRoaXMgbGF5ZXIgZnJvbSB0aGUgc3RhY2tcbiAgICogYW5kIGFkZCBpdCB0byB0aGUgZW5kIGFnYWluIHNvIHRoZSBsYXllcmluZyBvcmRlciB3b3VsZG4ndCBiZSBfY3JlYXRpb24gb3JkZXJfLlxuICAgKiBXZSBvbmx5IHdhbnQgdGhlbSB0byBiZSByZW1vdmVkIGZyb20gY29udGV4dCBzdGFja3Mgd2hlbiB1bm1vdW50ZWQuXG4gICAqLyAka3F3cEgkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgaWYgKCFub2RlMSkgcmV0dXJuO1xuICAgICAgICAgICAgY29udGV4dC5sYXllcnMuZGVsZXRlKG5vZGUxKTtcbiAgICAgICAgICAgIGNvbnRleHQubGF5ZXJzV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWQuZGVsZXRlKG5vZGUxKTtcbiAgICAgICAgICAgICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRkaXNwYXRjaFVwZGF0ZSgpO1xuICAgICAgICB9O1xuICAgIH0sIFtcbiAgICAgICAgbm9kZTEsXG4gICAgICAgIGNvbnRleHRcbiAgICBdKTtcbiAgICAka3F3cEgkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGNvbnN0IGhhbmRsZVVwZGF0ZSA9ICgpPT5mb3JjZSh7fSlcbiAgICAgICAgO1xuICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRDT05URVhUX1VQREFURSwgaGFuZGxlVXBkYXRlKTtcbiAgICAgICAgcmV0dXJuICgpPT5kb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRDT05URVhUX1VQREFURSwgaGFuZGxlVXBkYXRlKVxuICAgICAgICA7XG4gICAgfSwgW10pO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICRrcXdwSCRjcmVhdGVFbGVtZW50KCRrcXdwSCRQcmltaXRpdmUuZGl2LCAka3F3cEgkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIGxheWVyUHJvcHMsIHtcbiAgICAgICAgcmVmOiBjb21wb3NlZFJlZnMsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICBwb2ludGVyRXZlbnRzOiBpc0JvZHlQb2ludGVyRXZlbnRzRGlzYWJsZWQgPyBpc1BvaW50ZXJFdmVudHNFbmFibGVkID8gJ2F1dG8nIDogJ25vbmUnIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgLi4ucHJvcHMuc3R5bGVcbiAgICAgICAgfSxcbiAgICAgICAgb25Gb2N1c0NhcHR1cmU6ICRrcXdwSCRjb21wb3NlRXZlbnRIYW5kbGVycyhwcm9wcy5vbkZvY3VzQ2FwdHVyZSwgZm9jdXNPdXRzaWRlLm9uRm9jdXNDYXB0dXJlKSxcbiAgICAgICAgb25CbHVyQ2FwdHVyZTogJGtxd3BIJGNvbXBvc2VFdmVudEhhbmRsZXJzKHByb3BzLm9uQmx1ckNhcHR1cmUsIGZvY3VzT3V0c2lkZS5vbkJsdXJDYXB0dXJlKSxcbiAgICAgICAgb25Qb2ludGVyRG93bkNhcHR1cmU6ICRrcXdwSCRjb21wb3NlRXZlbnRIYW5kbGVycyhwcm9wcy5vblBvaW50ZXJEb3duQ2FwdHVyZSwgcG9pbnRlckRvd25PdXRzaWRlLm9uUG9pbnRlckRvd25DYXB0dXJlKVxuICAgIH0pKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQxNzdmYjYyZmYzZWMxZjIyLCB7XG4gICAgZGlzcGxheU5hbWU6ICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRESVNNSVNTQUJMRV9MQVlFUl9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIERpc21pc3NhYmxlTGF5ZXJCcmFuY2hcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJEJSQU5DSF9OQU1FID0gJ0Rpc21pc3NhYmxlTGF5ZXJCcmFuY2gnO1xuY29uc3QgJDVjYjkyYmVmNzU3Nzk2MGUkZXhwb3J0JDRkNWViMjEwOWRiMTQyMjggPSAvKiNfX1BVUkVfXyovICRrcXdwSCRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IGNvbnRleHQgPSAka3F3cEgkdXNlQ29udGV4dCgkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRGlzbWlzc2FibGVMYXllckNvbnRleHQpO1xuICAgIGNvbnN0IHJlZiA9ICRrcXdwSCR1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgY29tcG9zZWRSZWZzID0gJGtxd3BIJHVzZUNvbXBvc2VkUmVmcyhmb3J3YXJkZWRSZWYsIHJlZik7XG4gICAgJGtxd3BIJHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBjb25zdCBub2RlID0gcmVmLmN1cnJlbnQ7XG4gICAgICAgIGlmIChub2RlKSB7XG4gICAgICAgICAgICBjb250ZXh0LmJyYW5jaGVzLmFkZChub2RlKTtcbiAgICAgICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgICAgIGNvbnRleHQuYnJhbmNoZXMuZGVsZXRlKG5vZGUpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH0sIFtcbiAgICAgICAgY29udGV4dC5icmFuY2hlc1xuICAgIF0pO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICRrcXdwSCRjcmVhdGVFbGVtZW50KCRrcXdwSCRQcmltaXRpdmUuZGl2LCAka3F3cEgkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIHByb3BzLCB7XG4gICAgICAgIHJlZjogY29tcG9zZWRSZWZzXG4gICAgfSkpO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJDVjYjkyYmVmNzU3Nzk2MGUkZXhwb3J0JDRkNWViMjEwOWRiMTQyMjgsIHtcbiAgICBkaXNwbGF5TmFtZTogJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJEJSQU5DSF9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gLyoqXG4gKiBMaXN0ZW5zIGZvciBgcG9pbnRlcmRvd25gIG91dHNpZGUgYSByZWFjdCBzdWJ0cmVlLiBXZSB1c2UgYHBvaW50ZXJkb3duYCByYXRoZXIgdGhhbiBgcG9pbnRlcnVwYFxuICogdG8gbWltaWMgbGF5ZXIgZGlzbWlzc2luZyBiZWhhdmlvdXIgcHJlc2VudCBpbiBPUy5cbiAqIFJldHVybnMgcHJvcHMgdG8gcGFzcyB0byB0aGUgbm9kZSB3ZSB3YW50IHRvIGNoZWNrIGZvciBvdXRzaWRlIGV2ZW50cy5cbiAqLyBmdW5jdGlvbiAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkdXNlUG9pbnRlckRvd25PdXRzaWRlKG9uUG9pbnRlckRvd25PdXRzaWRlLCBvd25lckRvY3VtZW50ID0gZ2xvYmFsVGhpcyA9PT0gbnVsbCB8fCBnbG9iYWxUaGlzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBnbG9iYWxUaGlzLmRvY3VtZW50KSB7XG4gICAgY29uc3QgaGFuZGxlUG9pbnRlckRvd25PdXRzaWRlID0gJGtxd3BIJHVzZUNhbGxiYWNrUmVmKG9uUG9pbnRlckRvd25PdXRzaWRlKTtcbiAgICBjb25zdCBpc1BvaW50ZXJJbnNpZGVSZWFjdFRyZWVSZWYgPSAka3F3cEgkdXNlUmVmKGZhbHNlKTtcbiAgICBjb25zdCBoYW5kbGVDbGlja1JlZiA9ICRrcXdwSCR1c2VSZWYoKCk9Pnt9KTtcbiAgICAka3F3cEgkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGNvbnN0IGhhbmRsZVBvaW50ZXJEb3duID0gKGV2ZW50KT0+e1xuICAgICAgICAgICAgaWYgKGV2ZW50LnRhcmdldCAmJiAhaXNQb2ludGVySW5zaWRlUmVhY3RUcmVlUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBldmVudERldGFpbCA9IHtcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luYWxFdmVudDogZXZlbnRcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGhhbmRsZUFuZERpc3BhdGNoUG9pbnRlckRvd25PdXRzaWRlRXZlbnQoKSB7XG4gICAgICAgICAgICAgICAgICAgICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRoYW5kbGVBbmREaXNwYXRjaEN1c3RvbUV2ZW50KCQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRQT0lOVEVSX0RPV05fT1VUU0lERSwgaGFuZGxlUG9pbnRlckRvd25PdXRzaWRlLCBldmVudERldGFpbCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY3JldGU6IHRydWVcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgKiBPbiB0b3VjaCBkZXZpY2VzLCB3ZSBuZWVkIHRvIHdhaXQgZm9yIGEgY2xpY2sgZXZlbnQgYmVjYXVzZSBicm93c2VycyBpbXBsZW1lbnRcbiAgICAgICAgICogYSB+MzUwbXMgZGVsYXkgYmV0d2VlbiB0aGUgdGltZSB0aGUgdXNlciBzdG9wcyB0b3VjaGluZyB0aGUgZGlzcGxheSBhbmQgd2hlbiB0aGVcbiAgICAgICAgICogYnJvd3NlciBleGVjdXRyZXMgZXZlbnRzLiBXZSBuZWVkIHRvIGVuc3VyZSB3ZSBkb24ndCByZWFjdGl2YXRlIHBvaW50ZXItZXZlbnRzIHdpdGhpblxuICAgICAgICAgKiB0aGlzIHRpbWVmcmFtZSBvdGhlcndpc2UgdGhlIGJyb3dzZXIgbWF5IGV4ZWN1dGUgZXZlbnRzIHRoYXQgc2hvdWxkIGhhdmUgYmVlbiBwcmV2ZW50ZWQuXG4gICAgICAgICAqXG4gICAgICAgICAqIEFkZGl0aW9uYWxseSwgdGhpcyBhbHNvIGxldHMgdXMgZGVhbCBhdXRvbWF0aWNhbGx5IHdpdGggY2FuY2VsbGF0aW9ucyB3aGVuIGEgY2xpY2sgZXZlbnRcbiAgICAgICAgICogaXNuJ3QgcmFpc2VkIGJlY2F1c2UgdGhlIHBhZ2Ugd2FzIGNvbnNpZGVyZWQgc2Nyb2xsZWQvZHJhZy1zY3JvbGxlZCwgbG9uZy1wcmVzc2VkLCBldGMuXG4gICAgICAgICAqXG4gICAgICAgICAqIFRoaXMgaXMgd2h5IHdlIGFsc28gY29udGludW91c2x5IHJlbW92ZSB0aGUgcHJldmlvdXMgbGlzdGVuZXIsIGJlY2F1c2Ugd2UgY2Fubm90IGJlXG4gICAgICAgICAqIGNlcnRhaW4gdGhhdCBpdCB3YXMgcmFpc2VkLCBhbmQgdGhlcmVmb3JlIGNsZWFuZWQtdXAuXG4gICAgICAgICAqLyBpZiAoZXZlbnQucG9pbnRlclR5cGUgPT09ICd0b3VjaCcpIHtcbiAgICAgICAgICAgICAgICAgICAgb3duZXJEb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZUNsaWNrUmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgICAgICAgICBoYW5kbGVDbGlja1JlZi5jdXJyZW50ID0gaGFuZGxlQW5kRGlzcGF0Y2hQb2ludGVyRG93bk91dHNpZGVFdmVudDtcbiAgICAgICAgICAgICAgICAgICAgb3duZXJEb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZUNsaWNrUmVmLmN1cnJlbnQsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9uY2U6IHRydWVcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGhhbmRsZUFuZERpc3BhdGNoUG9pbnRlckRvd25PdXRzaWRlRXZlbnQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlzUG9pbnRlckluc2lkZVJlYWN0VHJlZVJlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgIH07XG4gICAgICAgIC8qKlxuICAgICAqIGlmIHRoaXMgaG9vayBleGVjdXRlcyBpbiBhIGNvbXBvbmVudCB0aGF0IG1vdW50cyB2aWEgYSBgcG9pbnRlcmRvd25gIGV2ZW50LCB0aGUgZXZlbnRcbiAgICAgKiB3b3VsZCBidWJibGUgdXAgdG8gdGhlIGRvY3VtZW50IGFuZCB0cmlnZ2VyIGEgYHBvaW50ZXJEb3duT3V0c2lkZWAgZXZlbnQuIFdlIGF2b2lkXG4gICAgICogdGhpcyBieSBkZWxheWluZyB0aGUgZXZlbnQgbGlzdGVuZXIgcmVnaXN0cmF0aW9uIG9uIHRoZSBkb2N1bWVudC5cbiAgICAgKiBUaGlzIGlzIG5vdCBSZWFjdCBzcGVjaWZpYywgYnV0IHJhdGhlciBob3cgdGhlIERPTSB3b3JrcywgaWU6XG4gICAgICogYGBgXG4gICAgICogYnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgKCkgPT4ge1xuICAgICAqICAgY29uc29sZS5sb2coJ0kgd2lsbCBsb2cnKTtcbiAgICAgKiAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgKCkgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnSSB3aWxsIGFsc28gbG9nJyk7XG4gICAgICogICB9KVxuICAgICAqIH0pO1xuICAgICAqLyBjb25zdCB0aW1lcklkID0gd2luZG93LnNldFRpbWVvdXQoKCk9PntcbiAgICAgICAgICAgIG93bmVyRG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcmRvd24nLCBoYW5kbGVQb2ludGVyRG93bik7XG4gICAgICAgIH0sIDApO1xuICAgICAgICByZXR1cm4gKCk9PntcbiAgICAgICAgICAgIHdpbmRvdy5jbGVhclRpbWVvdXQodGltZXJJZCk7XG4gICAgICAgICAgICBvd25lckRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgaGFuZGxlUG9pbnRlckRvd24pO1xuICAgICAgICAgICAgb3duZXJEb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZUNsaWNrUmVmLmN1cnJlbnQpO1xuICAgICAgICB9O1xuICAgIH0sIFtcbiAgICAgICAgb3duZXJEb2N1bWVudCxcbiAgICAgICAgaGFuZGxlUG9pbnRlckRvd25PdXRzaWRlXG4gICAgXSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgLy8gZW5zdXJlcyB3ZSBjaGVjayBSZWFjdCBjb21wb25lbnQgdHJlZSAobm90IGp1c3QgRE9NIHRyZWUpXG4gICAgICAgIG9uUG9pbnRlckRvd25DYXB0dXJlOiAoKT0+aXNQb2ludGVySW5zaWRlUmVhY3RUcmVlUmVmLmN1cnJlbnQgPSB0cnVlXG4gICAgfTtcbn1cbi8qKlxuICogTGlzdGVucyBmb3Igd2hlbiBmb2N1cyBoYXBwZW5zIG91dHNpZGUgYSByZWFjdCBzdWJ0cmVlLlxuICogUmV0dXJucyBwcm9wcyB0byBwYXNzIHRvIHRoZSByb290IChub2RlKSBvZiB0aGUgc3VidHJlZSB3ZSB3YW50IHRvIGNoZWNrLlxuICovIGZ1bmN0aW9uICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciR1c2VGb2N1c091dHNpZGUob25Gb2N1c091dHNpZGUsIG93bmVyRG9jdW1lbnQgPSBnbG9iYWxUaGlzID09PSBudWxsIHx8IGdsb2JhbFRoaXMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGdsb2JhbFRoaXMuZG9jdW1lbnQpIHtcbiAgICBjb25zdCBoYW5kbGVGb2N1c091dHNpZGUgPSAka3F3cEgkdXNlQ2FsbGJhY2tSZWYob25Gb2N1c091dHNpZGUpO1xuICAgIGNvbnN0IGlzRm9jdXNJbnNpZGVSZWFjdFRyZWVSZWYgPSAka3F3cEgkdXNlUmVmKGZhbHNlKTtcbiAgICAka3F3cEgkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGNvbnN0IGhhbmRsZUZvY3VzID0gKGV2ZW50KT0+e1xuICAgICAgICAgICAgaWYgKGV2ZW50LnRhcmdldCAmJiAhaXNGb2N1c0luc2lkZVJlYWN0VHJlZVJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZXZlbnREZXRhaWwgPSB7XG4gICAgICAgICAgICAgICAgICAgIG9yaWdpbmFsRXZlbnQ6IGV2ZW50XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkaGFuZGxlQW5kRGlzcGF0Y2hDdXN0b21FdmVudCgkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRk9DVVNfT1VUU0lERSwgaGFuZGxlRm9jdXNPdXRzaWRlLCBldmVudERldGFpbCwge1xuICAgICAgICAgICAgICAgICAgICBkaXNjcmV0ZTogZmFsc2VcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgb3duZXJEb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdmb2N1c2luJywgaGFuZGxlRm9jdXMpO1xuICAgICAgICByZXR1cm4gKCk9Pm93bmVyRG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignZm9jdXNpbicsIGhhbmRsZUZvY3VzKVxuICAgICAgICA7XG4gICAgfSwgW1xuICAgICAgICBvd25lckRvY3VtZW50LFxuICAgICAgICBoYW5kbGVGb2N1c091dHNpZGVcbiAgICBdKTtcbiAgICByZXR1cm4ge1xuICAgICAgICBvbkZvY3VzQ2FwdHVyZTogKCk9PmlzRm9jdXNJbnNpZGVSZWFjdFRyZWVSZWYuY3VycmVudCA9IHRydWVcbiAgICAgICAgLFxuICAgICAgICBvbkJsdXJDYXB0dXJlOiAoKT0+aXNGb2N1c0luc2lkZVJlYWN0VHJlZVJlZi5jdXJyZW50ID0gZmFsc2VcbiAgICB9O1xufVxuZnVuY3Rpb24gJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJGRpc3BhdGNoVXBkYXRlKCkge1xuICAgIGNvbnN0IGV2ZW50ID0gbmV3IEN1c3RvbUV2ZW50KCQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRDT05URVhUX1VQREFURSk7XG4gICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChldmVudCk7XG59XG5mdW5jdGlvbiAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkaGFuZGxlQW5kRGlzcGF0Y2hDdXN0b21FdmVudChuYW1lLCBoYW5kbGVyLCBkZXRhaWwsIHsgZGlzY3JldGU6IGRpc2NyZXRlICB9KSB7XG4gICAgY29uc3QgdGFyZ2V0ID0gZGV0YWlsLm9yaWdpbmFsRXZlbnQudGFyZ2V0O1xuICAgIGNvbnN0IGV2ZW50ID0gbmV3IEN1c3RvbUV2ZW50KG5hbWUsIHtcbiAgICAgICAgYnViYmxlczogZmFsc2UsXG4gICAgICAgIGNhbmNlbGFibGU6IHRydWUsXG4gICAgICAgIGRldGFpbDogZGV0YWlsXG4gICAgfSk7XG4gICAgaWYgKGhhbmRsZXIpIHRhcmdldC5hZGRFdmVudExpc3RlbmVyKG5hbWUsIGhhbmRsZXIsIHtcbiAgICAgICAgb25jZTogdHJ1ZVxuICAgIH0pO1xuICAgIGlmIChkaXNjcmV0ZSkgJGtxd3BIJGRpc3BhdGNoRGlzY3JldGVDdXN0b21FdmVudCh0YXJnZXQsIGV2ZW50KTtcbiAgICBlbHNlIHRhcmdldC5kaXNwYXRjaEV2ZW50KGV2ZW50KTtcbn1cbmNvbnN0ICQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5ID0gJDVjYjkyYmVmNzU3Nzk2MGUkZXhwb3J0JDE3N2ZiNjJmZjNlYzFmMjI7XG5jb25zdCAkNWNiOTJiZWY3NTc3OTYwZSRleHBvcnQkYWVjYjJkZGNiNTVjOTViZSA9ICQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQ0ZDVlYjIxMDlkYjE0MjI4O1xuXG5cblxuXG5leHBvcnQgeyQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQxNzdmYjYyZmYzZWMxZjIyIGFzIERpc21pc3NhYmxlTGF5ZXIsICQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQ0ZDVlYjIxMDlkYjE0MjI4IGFzIERpc21pc3NhYmxlTGF5ZXJCcmFuY2gsICQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IGFzIFJvb3QsICQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCRhZWNiMmRkY2I1NWM5NWJlIGFzIEJyYW5jaH07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5tanMubWFwXG4iXSwibmFtZXMiOlsiJGtxd3BIJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIiwiY3JlYXRlQ29udGV4dCIsIiRrcXdwSCRjcmVhdGVDb250ZXh0IiwiZm9yd2FyZFJlZiIsIiRrcXdwSCRmb3J3YXJkUmVmIiwidXNlQ29udGV4dCIsIiRrcXdwSCR1c2VDb250ZXh0IiwidXNlU3RhdGUiLCIka3F3cEgkdXNlU3RhdGUiLCJ1c2VFZmZlY3QiLCIka3F3cEgkdXNlRWZmZWN0IiwiY3JlYXRlRWxlbWVudCIsIiRrcXdwSCRjcmVhdGVFbGVtZW50IiwidXNlUmVmIiwiJGtxd3BIJHVzZVJlZiIsImNvbXBvc2VFdmVudEhhbmRsZXJzIiwiJGtxd3BIJGNvbXBvc2VFdmVudEhhbmRsZXJzIiwiUHJpbWl0aXZlIiwiJGtxd3BIJFByaW1pdGl2ZSIsImRpc3BhdGNoRGlzY3JldGVDdXN0b21FdmVudCIsIiRrcXdwSCRkaXNwYXRjaERpc2NyZXRlQ3VzdG9tRXZlbnQiLCJ1c2VDb21wb3NlZFJlZnMiLCIka3F3cEgkdXNlQ29tcG9zZWRSZWZzIiwidXNlQ2FsbGJhY2tSZWYiLCIka3F3cEgkdXNlQ2FsbGJhY2tSZWYiLCJ1c2VFc2NhcGVLZXlkb3duIiwiJGtxd3BIJHVzZUVzY2FwZUtleWRvd24iLCIkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRElTTUlTU0FCTEVfTEFZRVJfTkFNRSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRDT05URVhUX1VQREFURSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRQT0lOVEVSX0RPV05fT1VUU0lERSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRGT0NVU19PVVRTSURFIiwiJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJG9yaWdpbmFsQm9keVBvaW50ZXJFdmVudHMiLCIkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRGlzbWlzc2FibGVMYXllckNvbnRleHQiLCJsYXllcnMiLCJTZXQiLCJsYXllcnNXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZCIsImJyYW5jaGVzIiwiJDVjYjkyYmVmNzU3Nzk2MGUkZXhwb3J0JDE3N2ZiNjJmZjNlYzFmMjIiLCJwcm9wcyIsImZvcndhcmRlZFJlZiIsIl9ub2RlJG93bmVyRG9jdW1lbnQiLCJkaXNhYmxlT3V0c2lkZVBvaW50ZXJFdmVudHMiLCJvbkVzY2FwZUtleURvd24iLCJvblBvaW50ZXJEb3duT3V0c2lkZSIsIm9uRm9jdXNPdXRzaWRlIiwib25JbnRlcmFjdE91dHNpZGUiLCJvbkRpc21pc3MiLCJsYXllclByb3BzIiwiY29udGV4dCIsIm5vZGUxIiwic2V0Tm9kZSIsIm93bmVyRG9jdW1lbnQiLCJnbG9iYWxUaGlzIiwiZG9jdW1lbnQiLCJmb3JjZSIsImNvbXBvc2VkUmVmcyIsIm5vZGUiLCJBcnJheSIsImZyb20iLCJoaWdoZXN0TGF5ZXJXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZCIsInNsaWNlIiwiaGlnaGVzdExheWVyV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWRJbmRleCIsImluZGV4T2YiLCJpbmRleCIsImlzQm9keVBvaW50ZXJFdmVudHNEaXNhYmxlZCIsInNpemUiLCJpc1BvaW50ZXJFdmVudHNFbmFibGVkIiwicG9pbnRlckRvd25PdXRzaWRlIiwiJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJHVzZVBvaW50ZXJEb3duT3V0c2lkZSIsImV2ZW50IiwidGFyZ2V0IiwiaXNQb2ludGVyRG93bk9uQnJhbmNoIiwic29tZSIsImJyYW5jaCIsImNvbnRhaW5zIiwiZGVmYXVsdFByZXZlbnRlZCIsImZvY3VzT3V0c2lkZSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciR1c2VGb2N1c091dHNpZGUiLCJpc0ZvY3VzSW5CcmFuY2giLCJpc0hpZ2hlc3RMYXllciIsInByZXZlbnREZWZhdWx0IiwiYm9keSIsInN0eWxlIiwicG9pbnRlckV2ZW50cyIsImFkZCIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRkaXNwYXRjaFVwZGF0ZSIsImRlbGV0ZSIsImhhbmRsZVVwZGF0ZSIsImFkZEV2ZW50TGlzdGVuZXIiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiZGl2IiwicmVmIiwidW5kZWZpbmVkIiwib25Gb2N1c0NhcHR1cmUiLCJvbkJsdXJDYXB0dXJlIiwib25Qb2ludGVyRG93bkNhcHR1cmUiLCJPYmplY3QiLCJhc3NpZ24iLCJkaXNwbGF5TmFtZSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRCUkFOQ0hfTkFNRSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQ0ZDVlYjIxMDlkYjE0MjI4IiwiY3VycmVudCIsImhhbmRsZVBvaW50ZXJEb3duT3V0c2lkZSIsImlzUG9pbnRlckluc2lkZVJlYWN0VHJlZVJlZiIsImhhbmRsZUNsaWNrUmVmIiwiaGFuZGxlUG9pbnRlckRvd24iLCJldmVudERldGFpbCIsIm9yaWdpbmFsRXZlbnQiLCJoYW5kbGVBbmREaXNwYXRjaFBvaW50ZXJEb3duT3V0c2lkZUV2ZW50IiwiJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJGhhbmRsZUFuZERpc3BhdGNoQ3VzdG9tRXZlbnQiLCJkaXNjcmV0ZSIsInBvaW50ZXJUeXBlIiwib25jZSIsInRpbWVySWQiLCJ3aW5kb3ciLCJzZXRUaW1lb3V0IiwiY2xlYXJUaW1lb3V0IiwiaGFuZGxlRm9jdXNPdXRzaWRlIiwiaXNGb2N1c0luc2lkZVJlYWN0VHJlZVJlZiIsImhhbmRsZUZvY3VzIiwiQ3VzdG9tRXZlbnQiLCJkaXNwYXRjaEV2ZW50IiwibmFtZSIsImhhbmRsZXIiLCJkZXRhaWwiLCJidWJibGVzIiwiY2FuY2VsYWJsZSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IiwiJDVjYjkyYmVmNzU3Nzk2MGUkZXhwb3J0JGFlY2IyZGRjYjU1Yzk1YmUiLCJEaXNtaXNzYWJsZUxheWVyIiwiRGlzbWlzc2FibGVMYXllckJyYW5jaCIsIlJvb3QiLCJCcmFuY2giXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-focus-guards/dist/index.mjs": /*!******************************************************************!*\ !*** ./node_modules/@radix-ui/react-focus-guards/dist/index.mjs ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FocusGuards: () => (/* binding */ $3db38b7d1fb3fe6a$export$ac5b58043b79449b),\n/* harmony export */ Root: () => (/* binding */ $3db38b7d1fb3fe6a$export$be92b6f5f03c0fe9),\n/* harmony export */ useFocusGuards: () => (/* binding */ $3db38b7d1fb3fe6a$export$b7ece24a22aeda8c)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n\n/** Number of components which have requested interest to have focus guards */ let $3db38b7d1fb3fe6a$var$count = 0;\nfunction $3db38b7d1fb3fe6a$export$ac5b58043b79449b(props) {\n $3db38b7d1fb3fe6a$export$b7ece24a22aeda8c();\n return props.children;\n}\n/**\n * Injects a pair of focus guards at the edges of the whole DOM tree\n * to ensure `focusin` & `focusout` events can be caught consistently.\n */ function $3db38b7d1fb3fe6a$export$b7ece24a22aeda8c() {\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n var _edgeGuards$, _edgeGuards$2;\n const edgeGuards = document.querySelectorAll(\"[data-radix-focus-guard]\");\n document.body.insertAdjacentElement(\"afterbegin\", (_edgeGuards$ = edgeGuards[0]) !== null && _edgeGuards$ !== void 0 ? _edgeGuards$ : $3db38b7d1fb3fe6a$var$createFocusGuard());\n document.body.insertAdjacentElement(\"beforeend\", (_edgeGuards$2 = edgeGuards[1]) !== null && _edgeGuards$2 !== void 0 ? _edgeGuards$2 : $3db38b7d1fb3fe6a$var$createFocusGuard());\n $3db38b7d1fb3fe6a$var$count++;\n return ()=>{\n if ($3db38b7d1fb3fe6a$var$count === 1) document.querySelectorAll(\"[data-radix-focus-guard]\").forEach((node)=>node.remove());\n $3db38b7d1fb3fe6a$var$count--;\n };\n }, []);\n}\nfunction $3db38b7d1fb3fe6a$var$createFocusGuard() {\n const element = document.createElement(\"span\");\n element.setAttribute(\"data-radix-focus-guard\", \"\");\n element.tabIndex = 0;\n element.style.cssText = \"outline: none; opacity: 0; position: fixed; pointer-events: none\";\n return element;\n}\nconst $3db38b7d1fb3fe6a$export$be92b6f5f03c0fe9 = $3db38b7d1fb3fe6a$export$ac5b58043b79449b;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWZvY3VzLWd1YXJkcy9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQW9EO0FBR3BELDRFQUE0RSxHQUFHLElBQUlFLDhCQUE4QjtBQUNqSCxTQUFTQywwQ0FBMENDLEtBQUs7SUFDcERDO0lBQ0EsT0FBT0QsTUFBTUUsUUFBUTtBQUN6QjtBQUNBOzs7Q0FHQyxHQUFHLFNBQVNEO0lBQ1RKLGdEQUFnQkEsQ0FBQztRQUNiLElBQUlNLGNBQWNDO1FBQ2xCLE1BQU1DLGFBQWFDLFNBQVNDLGdCQUFnQixDQUFDO1FBQzdDRCxTQUFTRSxJQUFJLENBQUNDLHFCQUFxQixDQUFDLGNBQWMsQ0FBQ04sZUFBZUUsVUFBVSxDQUFDLEVBQUUsTUFBTSxRQUFRRixpQkFBaUIsS0FBSyxJQUFJQSxlQUFlTztRQUN0SUosU0FBU0UsSUFBSSxDQUFDQyxxQkFBcUIsQ0FBQyxhQUFhLENBQUNMLGdCQUFnQkMsVUFBVSxDQUFDLEVBQUUsTUFBTSxRQUFRRCxrQkFBa0IsS0FBSyxJQUFJQSxnQkFBZ0JNO1FBQ3hJWjtRQUNBLE9BQU87WUFDSCxJQUFJQSxnQ0FBZ0MsR0FBR1EsU0FBU0MsZ0JBQWdCLENBQUMsNEJBQTRCSSxPQUFPLENBQUMsQ0FBQ0MsT0FBT0EsS0FBS0MsTUFBTTtZQUV4SGY7UUFDSjtJQUNKLEdBQUcsRUFBRTtBQUNUO0FBQ0EsU0FBU1k7SUFDTCxNQUFNSSxVQUFVUixTQUFTUyxhQUFhLENBQUM7SUFDdkNELFFBQVFFLFlBQVksQ0FBQywwQkFBMEI7SUFDL0NGLFFBQVFHLFFBQVEsR0FBRztJQUNuQkgsUUFBUUksS0FBSyxDQUFDQyxPQUFPLEdBQUc7SUFDeEIsT0FBT0w7QUFDWDtBQUNBLE1BQU1NLDRDQUE0Q3JCO0FBS2dJLENBQ2xMLGtDQUFrQyIsInNvdXJjZXMiOlsid2VicGFjazovL2VtYmVkY2hhaW4tYWRtaW4vLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWZvY3VzLWd1YXJkcy9kaXN0L2luZGV4Lm1qcz8yYWVjIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dXNlRWZmZWN0IGFzICQxd0VyeiR1c2VFZmZlY3R9IGZyb20gXCJyZWFjdFwiO1xuXG5cbi8qKiBOdW1iZXIgb2YgY29tcG9uZW50cyB3aGljaCBoYXZlIHJlcXVlc3RlZCBpbnRlcmVzdCB0byBoYXZlIGZvY3VzIGd1YXJkcyAqLyBsZXQgJDNkYjM4YjdkMWZiM2ZlNmEkdmFyJGNvdW50ID0gMDtcbmZ1bmN0aW9uICQzZGIzOGI3ZDFmYjNmZTZhJGV4cG9ydCRhYzViNTgwNDNiNzk0NDliKHByb3BzKSB7XG4gICAgJDNkYjM4YjdkMWZiM2ZlNmEkZXhwb3J0JGI3ZWNlMjRhMjJhZWRhOGMoKTtcbiAgICByZXR1cm4gcHJvcHMuY2hpbGRyZW47XG59XG4vKipcbiAqIEluamVjdHMgYSBwYWlyIG9mIGZvY3VzIGd1YXJkcyBhdCB0aGUgZWRnZXMgb2YgdGhlIHdob2xlIERPTSB0cmVlXG4gKiB0byBlbnN1cmUgYGZvY3VzaW5gICYgYGZvY3Vzb3V0YCBldmVudHMgY2FuIGJlIGNhdWdodCBjb25zaXN0ZW50bHkuXG4gKi8gZnVuY3Rpb24gJDNkYjM4YjdkMWZiM2ZlNmEkZXhwb3J0JGI3ZWNlMjRhMjJhZWRhOGMoKSB7XG4gICAgJDF3RXJ6JHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICB2YXIgX2VkZ2VHdWFyZHMkLCBfZWRnZUd1YXJkcyQyO1xuICAgICAgICBjb25zdCBlZGdlR3VhcmRzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnW2RhdGEtcmFkaXgtZm9jdXMtZ3VhcmRdJyk7XG4gICAgICAgIGRvY3VtZW50LmJvZHkuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCdhZnRlcmJlZ2luJywgKF9lZGdlR3VhcmRzJCA9IGVkZ2VHdWFyZHNbMF0pICE9PSBudWxsICYmIF9lZGdlR3VhcmRzJCAhPT0gdm9pZCAwID8gX2VkZ2VHdWFyZHMkIDogJDNkYjM4YjdkMWZiM2ZlNmEkdmFyJGNyZWF0ZUZvY3VzR3VhcmQoKSk7XG4gICAgICAgIGRvY3VtZW50LmJvZHkuaW5zZXJ0QWRqYWNlbnRFbGVtZW50KCdiZWZvcmVlbmQnLCAoX2VkZ2VHdWFyZHMkMiA9IGVkZ2VHdWFyZHNbMV0pICE9PSBudWxsICYmIF9lZGdlR3VhcmRzJDIgIT09IHZvaWQgMCA/IF9lZGdlR3VhcmRzJDIgOiAkM2RiMzhiN2QxZmIzZmU2YSR2YXIkY3JlYXRlRm9jdXNHdWFyZCgpKTtcbiAgICAgICAgJDNkYjM4YjdkMWZiM2ZlNmEkdmFyJGNvdW50Kys7XG4gICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgaWYgKCQzZGIzOGI3ZDFmYjNmZTZhJHZhciRjb3VudCA9PT0gMSkgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnW2RhdGEtcmFkaXgtZm9jdXMtZ3VhcmRdJykuZm9yRWFjaCgobm9kZSk9Pm5vZGUucmVtb3ZlKClcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICAkM2RiMzhiN2QxZmIzZmU2YSR2YXIkY291bnQtLTtcbiAgICAgICAgfTtcbiAgICB9LCBbXSk7XG59XG5mdW5jdGlvbiAkM2RiMzhiN2QxZmIzZmU2YSR2YXIkY3JlYXRlRm9jdXNHdWFyZCgpIHtcbiAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKCdkYXRhLXJhZGl4LWZvY3VzLWd1YXJkJywgJycpO1xuICAgIGVsZW1lbnQudGFiSW5kZXggPSAwO1xuICAgIGVsZW1lbnQuc3R5bGUuY3NzVGV4dCA9ICdvdXRsaW5lOiBub25lOyBvcGFjaXR5OiAwOyBwb3NpdGlvbjogZml4ZWQ7IHBvaW50ZXItZXZlbnRzOiBub25lJztcbiAgICByZXR1cm4gZWxlbWVudDtcbn1cbmNvbnN0ICQzZGIzOGI3ZDFmYjNmZTZhJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5ID0gJDNkYjM4YjdkMWZiM2ZlNmEkZXhwb3J0JGFjNWI1ODA0M2I3OTQ0OWI7XG5cblxuXG5cbmV4cG9ydCB7JDNkYjM4YjdkMWZiM2ZlNmEkZXhwb3J0JGFjNWI1ODA0M2I3OTQ0OWIgYXMgRm9jdXNHdWFyZHMsICQzZGIzOGI3ZDFmYjNmZTZhJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IGFzIFJvb3QsICQzZGIzOGI3ZDFmYjNmZTZhJGV4cG9ydCRiN2VjZTI0YTIyYWVkYThjIGFzIHVzZUZvY3VzR3VhcmRzfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4Lm1qcy5tYXBcbiJdLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCIkMXdFcnokdXNlRWZmZWN0IiwiJDNkYjM4YjdkMWZiM2ZlNmEkdmFyJGNvdW50IiwiJDNkYjM4YjdkMWZiM2ZlNmEkZXhwb3J0JGFjNWI1ODA0M2I3OTQ0OWIiLCJwcm9wcyIsIiQzZGIzOGI3ZDFmYjNmZTZhJGV4cG9ydCRiN2VjZTI0YTIyYWVkYThjIiwiY2hpbGRyZW4iLCJfZWRnZUd1YXJkcyQiLCJfZWRnZUd1YXJkcyQyIiwiZWRnZUd1YXJkcyIsImRvY3VtZW50IiwicXVlcnlTZWxlY3RvckFsbCIsImJvZHkiLCJpbnNlcnRBZGphY2VudEVsZW1lbnQiLCIkM2RiMzhiN2QxZmIzZmU2YSR2YXIkY3JlYXRlRm9jdXNHdWFyZCIsImZvckVhY2giLCJub2RlIiwicmVtb3ZlIiwiZWxlbWVudCIsImNyZWF0ZUVsZW1lbnQiLCJzZXRBdHRyaWJ1dGUiLCJ0YWJJbmRleCIsInN0eWxlIiwiY3NzVGV4dCIsIiQzZGIzOGI3ZDFmYjNmZTZhJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IiwiRm9jdXNHdWFyZHMiLCJSb290IiwidXNlRm9jdXNHdWFyZHMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-focus-guards/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-focus-scope/dist/index.mjs": /*!*****************************************************************!*\ !*** ./node_modules/@radix-ui/react-focus-scope/dist/index.mjs ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FocusScope: () => (/* binding */ $d3863c46a17e8a28$export$20e40289641fbbb6),\n/* harmony export */ Root: () => (/* binding */ $d3863c46a17e8a28$export$be92b6f5f03c0fe9)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-compose-refs */ \"(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-use-callback-ref */ \"(ssr)/./node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs\");\n\n\n\n\n\nconst $d3863c46a17e8a28$var$AUTOFOCUS_ON_MOUNT = \"focusScope.autoFocusOnMount\";\nconst $d3863c46a17e8a28$var$AUTOFOCUS_ON_UNMOUNT = \"focusScope.autoFocusOnUnmount\";\nconst $d3863c46a17e8a28$var$EVENT_OPTIONS = {\n bubbles: false,\n cancelable: true\n};\n/* -------------------------------------------------------------------------------------------------\n * FocusScope\n * -----------------------------------------------------------------------------------------------*/ const $d3863c46a17e8a28$var$FOCUS_SCOPE_NAME = \"FocusScope\";\nconst $d3863c46a17e8a28$export$20e40289641fbbb6 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { loop: loop = false, trapped: trapped = false, onMountAutoFocus: onMountAutoFocusProp, onUnmountAutoFocus: onUnmountAutoFocusProp, ...scopeProps } = props;\n const [container1, setContainer] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const onMountAutoFocus = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_2__.useCallbackRef)(onMountAutoFocusProp);\n const onUnmountAutoFocus = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_2__.useCallbackRef)(onUnmountAutoFocusProp);\n const lastFocusedElementRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_3__.useComposedRefs)(forwardedRef, (node)=>setContainer(node));\n const focusScope = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)({\n paused: false,\n pause () {\n this.paused = true;\n },\n resume () {\n this.paused = false;\n }\n }).current; // Takes care of trapping focus if focus is moved outside programmatically for example\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (trapped) {\n function handleFocusIn(event) {\n if (focusScope.paused || !container1) return;\n const target = event.target;\n if (container1.contains(target)) lastFocusedElementRef.current = target;\n else $d3863c46a17e8a28$var$focus(lastFocusedElementRef.current, {\n select: true\n });\n }\n function handleFocusOut(event) {\n if (focusScope.paused || !container1) return;\n const relatedTarget = event.relatedTarget; // A `focusout` event with a `null` `relatedTarget` will happen in at least two cases:\n //\n // 1. When the user switches app/tabs/windows/the browser itself loses focus.\n // 2. In Google Chrome, when the focused element is removed from the DOM.\n //\n // We let the browser do its thing here because:\n //\n // 1. The browser already keeps a memory of what's focused for when the page gets refocused.\n // 2. In Google Chrome, if we try to focus the deleted focused element (as per below), it\n // throws the CPU to 100%, so we avoid doing anything for this reason here too.\n if (relatedTarget === null) return; // If the focus has moved to an actual legitimate element (`relatedTarget !== null`)\n // that is outside the container, we move focus to the last valid focused element inside.\n if (!container1.contains(relatedTarget)) $d3863c46a17e8a28$var$focus(lastFocusedElementRef.current, {\n select: true\n });\n } // When the focused element gets removed from the DOM, browsers move focus\n // back to the document.body. In this case, we move focus to the container\n // to keep focus trapped correctly.\n function handleMutations(mutations) {\n const focusedElement = document.activeElement;\n if (focusedElement !== document.body) return;\n for (const mutation of mutations)if (mutation.removedNodes.length > 0) $d3863c46a17e8a28$var$focus(container1);\n }\n document.addEventListener(\"focusin\", handleFocusIn);\n document.addEventListener(\"focusout\", handleFocusOut);\n const mutationObserver = new MutationObserver(handleMutations);\n if (container1) mutationObserver.observe(container1, {\n childList: true,\n subtree: true\n });\n return ()=>{\n document.removeEventListener(\"focusin\", handleFocusIn);\n document.removeEventListener(\"focusout\", handleFocusOut);\n mutationObserver.disconnect();\n };\n }\n }, [\n trapped,\n container1,\n focusScope.paused\n ]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (container1) {\n $d3863c46a17e8a28$var$focusScopesStack.add(focusScope);\n const previouslyFocusedElement = document.activeElement;\n const hasFocusedCandidate = container1.contains(previouslyFocusedElement);\n if (!hasFocusedCandidate) {\n const mountEvent = new CustomEvent($d3863c46a17e8a28$var$AUTOFOCUS_ON_MOUNT, $d3863c46a17e8a28$var$EVENT_OPTIONS);\n container1.addEventListener($d3863c46a17e8a28$var$AUTOFOCUS_ON_MOUNT, onMountAutoFocus);\n container1.dispatchEvent(mountEvent);\n if (!mountEvent.defaultPrevented) {\n $d3863c46a17e8a28$var$focusFirst($d3863c46a17e8a28$var$removeLinks($d3863c46a17e8a28$var$getTabbableCandidates(container1)), {\n select: true\n });\n if (document.activeElement === previouslyFocusedElement) $d3863c46a17e8a28$var$focus(container1);\n }\n }\n return ()=>{\n container1.removeEventListener($d3863c46a17e8a28$var$AUTOFOCUS_ON_MOUNT, onMountAutoFocus); // We hit a react bug (fixed in v17) with focusing in unmount.\n // We need to delay the focus a little to get around it for now.\n // See: https://github.com/facebook/react/issues/17894\n setTimeout(()=>{\n const unmountEvent = new CustomEvent($d3863c46a17e8a28$var$AUTOFOCUS_ON_UNMOUNT, $d3863c46a17e8a28$var$EVENT_OPTIONS);\n container1.addEventListener($d3863c46a17e8a28$var$AUTOFOCUS_ON_UNMOUNT, onUnmountAutoFocus);\n container1.dispatchEvent(unmountEvent);\n if (!unmountEvent.defaultPrevented) $d3863c46a17e8a28$var$focus(previouslyFocusedElement !== null && previouslyFocusedElement !== void 0 ? previouslyFocusedElement : document.body, {\n select: true\n });\n // we need to remove the listener after we `dispatchEvent`\n container1.removeEventListener($d3863c46a17e8a28$var$AUTOFOCUS_ON_UNMOUNT, onUnmountAutoFocus);\n $d3863c46a17e8a28$var$focusScopesStack.remove(focusScope);\n }, 0);\n };\n }\n }, [\n container1,\n onMountAutoFocus,\n onUnmountAutoFocus,\n focusScope\n ]); // Takes care of looping focus (when tabbing whilst at the edges)\n const handleKeyDown = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)((event)=>{\n if (!loop && !trapped) return;\n if (focusScope.paused) return;\n const isTabKey = event.key === \"Tab\" && !event.altKey && !event.ctrlKey && !event.metaKey;\n const focusedElement = document.activeElement;\n if (isTabKey && focusedElement) {\n const container = event.currentTarget;\n const [first, last] = $d3863c46a17e8a28$var$getTabbableEdges(container);\n const hasTabbableElementsInside = first && last; // we can only wrap focus if we have tabbable edges\n if (!hasTabbableElementsInside) {\n if (focusedElement === container) event.preventDefault();\n } else {\n if (!event.shiftKey && focusedElement === last) {\n event.preventDefault();\n if (loop) $d3863c46a17e8a28$var$focus(first, {\n select: true\n });\n } else if (event.shiftKey && focusedElement === first) {\n event.preventDefault();\n if (loop) $d3863c46a17e8a28$var$focus(last, {\n select: true\n });\n }\n }\n }\n }, [\n loop,\n trapped,\n focusScope.paused\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n tabIndex: -1\n }, scopeProps, {\n ref: composedRefs,\n onKeyDown: handleKeyDown\n }));\n});\n/*#__PURE__*/ Object.assign($d3863c46a17e8a28$export$20e40289641fbbb6, {\n displayName: $d3863c46a17e8a28$var$FOCUS_SCOPE_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * Utils\n * -----------------------------------------------------------------------------------------------*/ /**\n * Attempts focusing the first element in a list of candidates.\n * Stops when focus has actually moved.\n */ function $d3863c46a17e8a28$var$focusFirst(candidates, { select: select = false } = {}) {\n const previouslyFocusedElement = document.activeElement;\n for (const candidate of candidates){\n $d3863c46a17e8a28$var$focus(candidate, {\n select: select\n });\n if (document.activeElement !== previouslyFocusedElement) return;\n }\n}\n/**\n * Returns the first and last tabbable elements inside a container.\n */ function $d3863c46a17e8a28$var$getTabbableEdges(container) {\n const candidates = $d3863c46a17e8a28$var$getTabbableCandidates(container);\n const first = $d3863c46a17e8a28$var$findVisible(candidates, container);\n const last = $d3863c46a17e8a28$var$findVisible(candidates.reverse(), container);\n return [\n first,\n last\n ];\n}\n/**\n * Returns a list of potential tabbable candidates.\n *\n * NOTE: This is only a close approximation. For example it doesn't take into account cases like when\n * elements are not visible. This cannot be worked out easily by just reading a property, but rather\n * necessitate runtime knowledge (computed styles, etc). We deal with these cases separately.\n *\n * See: https://developer.mozilla.org/en-US/docs/Web/API/TreeWalker\n * Credit: https://github.com/discord/focus-layers/blob/master/src/util/wrapFocus.tsx#L1\n */ function $d3863c46a17e8a28$var$getTabbableCandidates(container) {\n const nodes = [];\n const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {\n acceptNode: (node)=>{\n const isHiddenInput = node.tagName === \"INPUT\" && node.type === \"hidden\";\n if (node.disabled || node.hidden || isHiddenInput) return NodeFilter.FILTER_SKIP; // `.tabIndex` is not the same as the `tabindex` attribute. It works on the\n // runtime's understanding of tabbability, so this automatically accounts\n // for any kind of element that could be tabbed to.\n return node.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;\n }\n });\n while(walker.nextNode())nodes.push(walker.currentNode); // we do not take into account the order of nodes with positive `tabIndex` as it\n // hinders accessibility to have tab order different from visual order.\n return nodes;\n}\n/**\n * Returns the first visible element in a list.\n * NOTE: Only checks visibility up to the `container`.\n */ function $d3863c46a17e8a28$var$findVisible(elements, container) {\n for (const element of elements){\n // we stop checking if it's hidden at the `container` level (excluding)\n if (!$d3863c46a17e8a28$var$isHidden(element, {\n upTo: container\n })) return element;\n }\n}\nfunction $d3863c46a17e8a28$var$isHidden(node, { upTo: upTo }) {\n if (getComputedStyle(node).visibility === \"hidden\") return true;\n while(node){\n // we stop at `upTo` (excluding it)\n if (upTo !== undefined && node === upTo) return false;\n if (getComputedStyle(node).display === \"none\") return true;\n node = node.parentElement;\n }\n return false;\n}\nfunction $d3863c46a17e8a28$var$isSelectableInput(element) {\n return element instanceof HTMLInputElement && \"select\" in element;\n}\nfunction $d3863c46a17e8a28$var$focus(element, { select: select = false } = {}) {\n // only focus if that element is focusable\n if (element && element.focus) {\n const previouslyFocusedElement = document.activeElement; // NOTE: we prevent scrolling on focus, to minimize jarring transitions for users\n element.focus({\n preventScroll: true\n }); // only select if its not the same element, it supports selection and we need to select\n if (element !== previouslyFocusedElement && $d3863c46a17e8a28$var$isSelectableInput(element) && select) element.select();\n }\n}\n/* -------------------------------------------------------------------------------------------------\n * FocusScope stack\n * -----------------------------------------------------------------------------------------------*/ const $d3863c46a17e8a28$var$focusScopesStack = $d3863c46a17e8a28$var$createFocusScopesStack();\nfunction $d3863c46a17e8a28$var$createFocusScopesStack() {\n /** A stack of focus scopes, with the active one at the top */ let stack = [];\n return {\n add (focusScope) {\n // pause the currently active focus scope (at the top of the stack)\n const activeFocusScope = stack[0];\n if (focusScope !== activeFocusScope) activeFocusScope === null || activeFocusScope === void 0 || activeFocusScope.pause();\n // remove in case it already exists (because we'll re-add it at the top of the stack)\n stack = $d3863c46a17e8a28$var$arrayRemove(stack, focusScope);\n stack.unshift(focusScope);\n },\n remove (focusScope) {\n var _stack$;\n stack = $d3863c46a17e8a28$var$arrayRemove(stack, focusScope);\n (_stack$ = stack[0]) === null || _stack$ === void 0 || _stack$.resume();\n }\n };\n}\nfunction $d3863c46a17e8a28$var$arrayRemove(array, item) {\n const updatedArray = [\n ...array\n ];\n const index = updatedArray.indexOf(item);\n if (index !== -1) updatedArray.splice(index, 1);\n return updatedArray;\n}\nfunction $d3863c46a17e8a28$var$removeLinks(items) {\n return items.filter((item)=>item.tagName !== \"A\");\n}\nconst $d3863c46a17e8a28$export$be92b6f5f03c0fe9 = $d3863c46a17e8a28$export$20e40289641fbbb6;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWZvY3VzLXNjb3BlL2Rpc3QvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBc0Y7QUFDK0g7QUFDOUg7QUFDZjtBQUNpQjtBQU96RixNQUFNbUIsMkNBQTJDO0FBQ2pELE1BQU1DLDZDQUE2QztBQUNuRCxNQUFNQyxzQ0FBc0M7SUFDeENDLFNBQVM7SUFDVEMsWUFBWTtBQUNoQjtBQUNBOztrR0FFa0csR0FBRyxNQUFNQyx5Q0FBeUM7QUFDcEosTUFBTUMsNENBQTRDLFdBQVcsR0FBR3ZCLGlEQUFpQkEsQ0FBQyxDQUFDd0IsT0FBT0M7SUFDdEYsTUFBTSxFQUFFQyxNQUFNQSxPQUFPLEtBQUssRUFBR0MsU0FBU0EsVUFBVSxLQUFLLEVBQUdDLGtCQUFrQkMsb0JBQW9CLEVBQUdDLG9CQUFvQkMsc0JBQXNCLEVBQUcsR0FBR0MsWUFBWSxHQUFHUjtJQUNoSyxNQUFNLENBQUNTLFlBQVlDLGFBQWEsR0FBR2hDLCtDQUFlQSxDQUFDO0lBQ25ELE1BQU0wQixtQkFBbUJaLGdGQUFxQkEsQ0FBQ2E7SUFDL0MsTUFBTUMscUJBQXFCZCxnRkFBcUJBLENBQUNlO0lBQ2pELE1BQU1JLHdCQUF3Qi9CLDZDQUFhQSxDQUFDO0lBQzVDLE1BQU1nQyxlQUFleEIsNkVBQXNCQSxDQUFDYSxjQUFjLENBQUNZLE9BQU9ILGFBQWFHO0lBRS9FLE1BQU1DLGFBQWFsQyw2Q0FBYUEsQ0FBQztRQUM3Qm1DLFFBQVE7UUFDUkM7WUFDSSxJQUFJLENBQUNELE1BQU0sR0FBRztRQUNsQjtRQUNBRTtZQUNJLElBQUksQ0FBQ0YsTUFBTSxHQUFHO1FBQ2xCO0lBQ0osR0FBR0csT0FBTyxFQUFFLHNGQUFzRjtJQUNsR3BDLGdEQUFnQkEsQ0FBQztRQUNiLElBQUlxQixTQUFTO1lBQ1QsU0FBU2dCLGNBQWNDLEtBQUs7Z0JBQ3hCLElBQUlOLFdBQVdDLE1BQU0sSUFBSSxDQUFDTixZQUFZO2dCQUN0QyxNQUFNWSxT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bi8uL25vZGVfbW9kdWxlcy9AcmFkaXgtdWkvcmVhY3QtZm9jdXMtc2NvcGUvZGlzdC9pbmRleC5tanM/ZTViZCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJDQ1UUh2JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIGZyb20gXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9leHRlbmRzXCI7XG5pbXBvcnQge2ZvcndhcmRSZWYgYXMgJDQ1UUh2JGZvcndhcmRSZWYsIHVzZVN0YXRlIGFzICQ0NVFIdiR1c2VTdGF0ZSwgdXNlUmVmIGFzICQ0NVFIdiR1c2VSZWYsIHVzZUVmZmVjdCBhcyAkNDVRSHYkdXNlRWZmZWN0LCB1c2VDYWxsYmFjayBhcyAkNDVRSHYkdXNlQ2FsbGJhY2ssIGNyZWF0ZUVsZW1lbnQgYXMgJDQ1UUh2JGNyZWF0ZUVsZW1lbnR9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHt1c2VDb21wb3NlZFJlZnMgYXMgJDQ1UUh2JHVzZUNvbXBvc2VkUmVmc30gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1jb21wb3NlLXJlZnNcIjtcbmltcG9ydCB7UHJpbWl0aXZlIGFzICQ0NVFIdiRQcmltaXRpdmV9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtcHJpbWl0aXZlXCI7XG5pbXBvcnQge3VzZUNhbGxiYWNrUmVmIGFzICQ0NVFIdiR1c2VDYWxsYmFja1JlZn0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC11c2UtY2FsbGJhY2stcmVmXCI7XG5cblxuXG5cblxuXG5jb25zdCAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkQVVUT0ZPQ1VTX09OX01PVU5UID0gJ2ZvY3VzU2NvcGUuYXV0b0ZvY3VzT25Nb3VudCc7XG5jb25zdCAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkQVVUT0ZPQ1VTX09OX1VOTU9VTlQgPSAnZm9jdXNTY29wZS5hdXRvRm9jdXNPblVubW91bnQnO1xuY29uc3QgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJEVWRU5UX09QVElPTlMgPSB7XG4gICAgYnViYmxlczogZmFsc2UsXG4gICAgY2FuY2VsYWJsZTogdHJ1ZVxufTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIEZvY3VzU2NvcGVcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJEZPQ1VTX1NDT1BFX05BTUUgPSAnRm9jdXNTY29wZSc7XG5jb25zdCAkZDM4NjNjNDZhMTdlOGEyOCRleHBvcnQkMjBlNDAyODk2NDFmYmJiNiA9IC8qI19fUFVSRV9fKi8gJDQ1UUh2JGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBsb29wOiBsb29wID0gZmFsc2UgLCB0cmFwcGVkOiB0cmFwcGVkID0gZmFsc2UgLCBvbk1vdW50QXV0b0ZvY3VzOiBvbk1vdW50QXV0b0ZvY3VzUHJvcCAsIG9uVW5tb3VudEF1dG9Gb2N1czogb25Vbm1vdW50QXV0b0ZvY3VzUHJvcCAsIC4uLnNjb3BlUHJvcHMgfSA9IHByb3BzO1xuICAgIGNvbnN0IFtjb250YWluZXIxLCBzZXRDb250YWluZXJdID0gJDQ1UUh2JHVzZVN0YXRlKG51bGwpO1xuICAgIGNvbnN0IG9uTW91bnRBdXRvRm9jdXMgPSAkNDVRSHYkdXNlQ2FsbGJhY2tSZWYob25Nb3VudEF1dG9Gb2N1c1Byb3ApO1xuICAgIGNvbnN0IG9uVW5tb3VudEF1dG9Gb2N1cyA9ICQ0NVFIdiR1c2VDYWxsYmFja1JlZihvblVubW91bnRBdXRvRm9jdXNQcm9wKTtcbiAgICBjb25zdCBsYXN0Rm9jdXNlZEVsZW1lbnRSZWYgPSAkNDVRSHYkdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IGNvbXBvc2VkUmVmcyA9ICQ0NVFIdiR1c2VDb21wb3NlZFJlZnMoZm9yd2FyZGVkUmVmLCAobm9kZSk9PnNldENvbnRhaW5lcihub2RlKVxuICAgICk7XG4gICAgY29uc3QgZm9jdXNTY29wZSA9ICQ0NVFIdiR1c2VSZWYoe1xuICAgICAgICBwYXVzZWQ6IGZhbHNlLFxuICAgICAgICBwYXVzZSAoKSB7XG4gICAgICAgICAgICB0aGlzLnBhdXNlZCA9IHRydWU7XG4gICAgICAgIH0sXG4gICAgICAgIHJlc3VtZSAoKSB7XG4gICAgICAgICAgICB0aGlzLnBhdXNlZCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfSkuY3VycmVudDsgLy8gVGFrZXMgY2FyZSBvZiB0cmFwcGluZyBmb2N1cyBpZiBmb2N1cyBpcyBtb3ZlZCBvdXRzaWRlIHByb2dyYW1tYXRpY2FsbHkgZm9yIGV4YW1wbGVcbiAgICAkNDVRSHYkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGlmICh0cmFwcGVkKSB7XG4gICAgICAgICAgICBmdW5jdGlvbiBoYW5kbGVGb2N1c0luKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgaWYgKGZvY3VzU2NvcGUucGF1c2VkIHx8ICFjb250YWluZXIxKSByZXR1cm47XG4gICAgICAgICAgICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0O1xuICAgICAgICAgICAgICAgIGlmIChjb250YWluZXIxLmNvbnRhaW5zKHRhcmdldCkpIGxhc3RGb2N1c2VkRWxlbWVudFJlZi5jdXJyZW50ID0gdGFyZ2V0O1xuICAgICAgICAgICAgICAgIGVsc2UgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZvY3VzKGxhc3RGb2N1c2VkRWxlbWVudFJlZi5jdXJyZW50LCB7XG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdDogdHJ1ZVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZnVuY3Rpb24gaGFuZGxlRm9jdXNPdXQoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICBpZiAoZm9jdXNTY29wZS5wYXVzZWQgfHwgIWNvbnRhaW5lcjEpIHJldHVybjtcbiAgICAgICAgICAgICAgICBjb25zdCByZWxhdGVkVGFyZ2V0ID0gZXZlbnQucmVsYXRlZFRhcmdldDsgLy8gQSBgZm9jdXNvdXRgIGV2ZW50IHdpdGggYSBgbnVsbGAgYHJlbGF0ZWRUYXJnZXRgIHdpbGwgaGFwcGVuIGluIGF0IGxlYXN0IHR3byBjYXNlczpcbiAgICAgICAgICAgICAgICAvL1xuICAgICAgICAgICAgICAgIC8vIDEuIFdoZW4gdGhlIHVzZXIgc3dpdGNoZXMgYXBwL3RhYnMvd2luZG93cy90aGUgYnJvd3NlciBpdHNlbGYgbG9zZXMgZm9jdXMuXG4gICAgICAgICAgICAgICAgLy8gMi4gSW4gR29vZ2xlIENocm9tZSwgd2hlbiB0aGUgZm9jdXNlZCBlbGVtZW50IGlzIHJlbW92ZWQgZnJvbSB0aGUgRE9NLlxuICAgICAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAgICAgLy8gV2UgbGV0IHRoZSBicm93c2VyIGRvIGl0cyB0aGluZyBoZXJlIGJlY2F1c2U6XG4gICAgICAgICAgICAgICAgLy9cbiAgICAgICAgICAgICAgICAvLyAxLiBUaGUgYnJvd3NlciBhbHJlYWR5IGtlZXBzIGEgbWVtb3J5IG9mIHdoYXQncyBmb2N1c2VkIGZvciB3aGVuIHRoZSBwYWdlIGdldHMgcmVmb2N1c2VkLlxuICAgICAgICAgICAgICAgIC8vIDIuIEluIEdvb2dsZSBDaHJvbWUsIGlmIHdlIHRyeSB0byBmb2N1cyB0aGUgZGVsZXRlZCBmb2N1c2VkIGVsZW1lbnQgKGFzIHBlciBiZWxvdyksIGl0XG4gICAgICAgICAgICAgICAgLy8gICAgdGhyb3dzIHRoZSBDUFUgdG8gMTAwJSwgc28gd2UgYXZvaWQgZG9pbmcgYW55dGhpbmcgZm9yIHRoaXMgcmVhc29uIGhlcmUgdG9vLlxuICAgICAgICAgICAgICAgIGlmIChyZWxhdGVkVGFyZ2V0ID09PSBudWxsKSByZXR1cm47IC8vIElmIHRoZSBmb2N1cyBoYXMgbW92ZWQgdG8gYW4gYWN0dWFsIGxlZ2l0aW1hdGUgZWxlbWVudCAoYHJlbGF0ZWRUYXJnZXQgIT09IG51bGxgKVxuICAgICAgICAgICAgICAgIC8vIHRoYXQgaXMgb3V0c2lkZSB0aGUgY29udGFpbmVyLCB3ZSBtb3ZlIGZvY3VzIHRvIHRoZSBsYXN0IHZhbGlkIGZvY3VzZWQgZWxlbWVudCBpbnNpZGUuXG4gICAgICAgICAgICAgICAgaWYgKCFjb250YWluZXIxLmNvbnRhaW5zKHJlbGF0ZWRUYXJnZXQpKSAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZm9jdXMobGFzdEZvY3VzZWRFbGVtZW50UmVmLmN1cnJlbnQsIHtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0OiB0cnVlXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IC8vIFdoZW4gdGhlIGZvY3VzZWQgZWxlbWVudCBnZXRzIHJlbW92ZWQgZnJvbSB0aGUgRE9NLCBicm93c2VycyBtb3ZlIGZvY3VzXG4gICAgICAgICAgICAvLyBiYWNrIHRvIHRoZSBkb2N1bWVudC5ib2R5LiBJbiB0aGlzIGNhc2UsIHdlIG1vdmUgZm9jdXMgdG8gdGhlIGNvbnRhaW5lclxuICAgICAgICAgICAgLy8gdG8ga2VlcCBmb2N1cyB0cmFwcGVkIGNvcnJlY3RseS5cbiAgICAgICAgICAgIGZ1bmN0aW9uIGhhbmRsZU11dGF0aW9ucyhtdXRhdGlvbnMpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmb2N1c2VkRWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICAgICAgaWYgKGZvY3VzZWRFbGVtZW50ICE9PSBkb2N1bWVudC5ib2R5KSByZXR1cm47XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBtdXRhdGlvbiBvZiBtdXRhdGlvbnMpaWYgKG11dGF0aW9uLnJlbW92ZWROb2Rlcy5sZW5ndGggPiAwKSAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZm9jdXMoY29udGFpbmVyMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdmb2N1c2luJywgaGFuZGxlRm9jdXNJbik7XG4gICAgICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdmb2N1c291dCcsIGhhbmRsZUZvY3VzT3V0KTtcbiAgICAgICAgICAgIGNvbnN0IG11dGF0aW9uT2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcihoYW5kbGVNdXRhdGlvbnMpO1xuICAgICAgICAgICAgaWYgKGNvbnRhaW5lcjEpIG11dGF0aW9uT2JzZXJ2ZXIub2JzZXJ2ZShjb250YWluZXIxLCB7XG4gICAgICAgICAgICAgICAgY2hpbGRMaXN0OiB0cnVlLFxuICAgICAgICAgICAgICAgIHN1YnRyZWU6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuICgpPT57XG4gICAgICAgICAgICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignZm9jdXNpbicsIGhhbmRsZUZvY3VzSW4pO1xuICAgICAgICAgICAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2ZvY3Vzb3V0JywgaGFuZGxlRm9jdXNPdXQpO1xuICAgICAgICAgICAgICAgIG11dGF0aW9uT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH0sIFtcbiAgICAgICAgdHJhcHBlZCxcbiAgICAgICAgY29udGFpbmVyMSxcbiAgICAgICAgZm9jdXNTY29wZS5wYXVzZWRcbiAgICBdKTtcbiAgICAkNDVRSHYkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGlmIChjb250YWluZXIxKSB7XG4gICAgICAgICAgICAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZm9jdXNTY29wZXNTdGFjay5hZGQoZm9jdXNTY29wZSk7XG4gICAgICAgICAgICBjb25zdCBwcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50O1xuICAgICAgICAgICAgY29uc3QgaGFzRm9jdXNlZENhbmRpZGF0ZSA9IGNvbnRhaW5lcjEuY29udGFpbnMocHJldmlvdXNseUZvY3VzZWRFbGVtZW50KTtcbiAgICAgICAgICAgIGlmICghaGFzRm9jdXNlZENhbmRpZGF0ZSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1vdW50RXZlbnQgPSBuZXcgQ3VzdG9tRXZlbnQoJGQzODYzYzQ2YTE3ZThhMjgkdmFyJEFVVE9GT0NVU19PTl9NT1VOVCwgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJEVWRU5UX09QVElPTlMpO1xuICAgICAgICAgICAgICAgIGNvbnRhaW5lcjEuYWRkRXZlbnRMaXN0ZW5lcigkZDM4NjNjNDZhMTdlOGEyOCR2YXIkQVVUT0ZPQ1VTX09OX01PVU5ULCBvbk1vdW50QXV0b0ZvY3VzKTtcbiAgICAgICAgICAgICAgICBjb250YWluZXIxLmRpc3BhdGNoRXZlbnQobW91bnRFdmVudCk7XG4gICAgICAgICAgICAgICAgaWYgKCFtb3VudEV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZvY3VzRmlyc3QoJGQzODYzYzQ2YTE3ZThhMjgkdmFyJHJlbW92ZUxpbmtzKCRkMzg2M2M0NmExN2U4YTI4JHZhciRnZXRUYWJiYWJsZUNhbmRpZGF0ZXMoY29udGFpbmVyMSkpLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3Q6IHRydWVcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBwcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQpICRkMzg2M2M0NmExN2U4YTI4JHZhciRmb2N1cyhjb250YWluZXIxKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gKCk9PntcbiAgICAgICAgICAgICAgICBjb250YWluZXIxLnJlbW92ZUV2ZW50TGlzdGVuZXIoJGQzODYzYzQ2YTE3ZThhMjgkdmFyJEFVVE9GT0NVU19PTl9NT1VOVCwgb25Nb3VudEF1dG9Gb2N1cyk7IC8vIFdlIGhpdCBhIHJlYWN0IGJ1ZyAoZml4ZWQgaW4gdjE3KSB3aXRoIGZvY3VzaW5nIGluIHVubW91bnQuXG4gICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBkZWxheSB0aGUgZm9jdXMgYSBsaXR0bGUgdG8gZ2V0IGFyb3VuZCBpdCBmb3Igbm93LlxuICAgICAgICAgICAgICAgIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3JlYWN0L2lzc3Vlcy8xNzg5NFxuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCk9PntcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5tb3VudEV2ZW50ID0gbmV3IEN1c3RvbUV2ZW50KCRkMzg2M2M0NmExN2U4YTI4JHZhciRBVVRPRk9DVVNfT05fVU5NT1VOVCwgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJEVWRU5UX09QVElPTlMpO1xuICAgICAgICAgICAgICAgICAgICBjb250YWluZXIxLmFkZEV2ZW50TGlzdGVuZXIoJGQzODYzYzQ2YTE3ZThhMjgkdmFyJEFVVE9GT0NVU19PTl9VTk1PVU5ULCBvblVubW91bnRBdXRvRm9jdXMpO1xuICAgICAgICAgICAgICAgICAgICBjb250YWluZXIxLmRpc3BhdGNoRXZlbnQodW5tb3VudEV2ZW50KTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCF1bm1vdW50RXZlbnQuZGVmYXVsdFByZXZlbnRlZCkgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZvY3VzKHByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCAhPT0gbnVsbCAmJiBwcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQgIT09IHZvaWQgMCA/IHByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCA6IGRvY3VtZW50LmJvZHksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdDogdHJ1ZVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgIC8vIHdlIG5lZWQgdG8gcmVtb3ZlIHRoZSBsaXN0ZW5lciBhZnRlciB3ZSBgZGlzcGF0Y2hFdmVudGBcbiAgICAgICAgICAgICAgICAgICAgY29udGFpbmVyMS5yZW1vdmVFdmVudExpc3RlbmVyKCRkMzg2M2M0NmExN2U4YTI4JHZhciRBVVRPRk9DVVNfT05fVU5NT1VOVCwgb25Vbm1vdW50QXV0b0ZvY3VzKTtcbiAgICAgICAgICAgICAgICAgICAgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZvY3VzU2NvcGVzU3RhY2sucmVtb3ZlKGZvY3VzU2NvcGUpO1xuICAgICAgICAgICAgICAgIH0sIDApO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH0sIFtcbiAgICAgICAgY29udGFpbmVyMSxcbiAgICAgICAgb25Nb3VudEF1dG9Gb2N1cyxcbiAgICAgICAgb25Vbm1vdW50QXV0b0ZvY3VzLFxuICAgICAgICBmb2N1c1Njb3BlXG4gICAgXSk7IC8vIFRha2VzIGNhcmUgb2YgbG9vcGluZyBmb2N1cyAod2hlbiB0YWJiaW5nIHdoaWxzdCBhdCB0aGUgZWRnZXMpXG4gICAgY29uc3QgaGFuZGxlS2V5RG93biA9ICQ0NVFIdiR1c2VDYWxsYmFjaygoZXZlbnQpPT57XG4gICAgICAgIGlmICghbG9vcCAmJiAhdHJhcHBlZCkgcmV0dXJuO1xuICAgICAgICBpZiAoZm9jdXNTY29wZS5wYXVzZWQpIHJldHVybjtcbiAgICAgICAgY29uc3QgaXNUYWJLZXkgPSBldmVudC5rZXkgPT09ICdUYWInICYmICFldmVudC5hbHRLZXkgJiYgIWV2ZW50LmN0cmxLZXkgJiYgIWV2ZW50Lm1ldGFLZXk7XG4gICAgICAgIGNvbnN0IGZvY3VzZWRFbGVtZW50ID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcbiAgICAgICAgaWYgKGlzVGFiS2V5ICYmIGZvY3VzZWRFbGVtZW50KSB7XG4gICAgICAgICAgICBjb25zdCBjb250YWluZXIgPSBldmVudC5jdXJyZW50VGFyZ2V0O1xuICAgICAgICAgICAgY29uc3QgW2ZpcnN0LCBsYXN0XSA9ICRkMzg2M2M0NmExN2U4YTI4JHZhciRnZXRUYWJiYWJsZUVkZ2VzKGNvbnRhaW5lcik7XG4gICAgICAgICAgICBjb25zdCBoYXNUYWJiYWJsZUVsZW1lbnRzSW5zaWRlID0gZmlyc3QgJiYgbGFzdDsgLy8gd2UgY2FuIG9ubHkgd3JhcCBmb2N1cyBpZiB3ZSBoYXZlIHRhYmJhYmxlIGVkZ2VzXG4gICAgICAgICAgICBpZiAoIWhhc1RhYmJhYmxlRWxlbWVudHNJbnNpZGUpIHtcbiAgICAgICAgICAgICAgICBpZiAoZm9jdXNlZEVsZW1lbnQgPT09IGNvbnRhaW5lcikgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKCFldmVudC5zaGlmdEtleSAmJiBmb2N1c2VkRWxlbWVudCA9PT0gbGFzdCkge1xuICAgICAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICBpZiAobG9vcCkgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZvY3VzKGZpcnN0LCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3Q6IHRydWVcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChldmVudC5zaGlmdEtleSAmJiBmb2N1c2VkRWxlbWVudCA9PT0gZmlyc3QpIHtcbiAgICAgICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGxvb3ApICRkMzg2M2M0NmExN2U4YTI4JHZhciRmb2N1cyhsYXN0LCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3Q6IHRydWVcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBsb29wLFxuICAgICAgICB0cmFwcGVkLFxuICAgICAgICBmb2N1c1Njb3BlLnBhdXNlZFxuICAgIF0pO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICQ0NVFIdiRjcmVhdGVFbGVtZW50KCQ0NVFIdiRQcmltaXRpdmUuZGl2LCAkNDVRSHYkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe1xuICAgICAgICB0YWJJbmRleDogLTFcbiAgICB9LCBzY29wZVByb3BzLCB7XG4gICAgICAgIHJlZjogY29tcG9zZWRSZWZzLFxuICAgICAgICBvbktleURvd246IGhhbmRsZUtleURvd25cbiAgICB9KSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkZDM4NjNjNDZhMTdlOGEyOCRleHBvcnQkMjBlNDAyODk2NDFmYmJiNiwge1xuICAgIGRpc3BsYXlOYW1lOiAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkRk9DVVNfU0NPUEVfTkFNRVxufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBVdGlsc1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyAvKipcbiAqIEF0dGVtcHRzIGZvY3VzaW5nIHRoZSBmaXJzdCBlbGVtZW50IGluIGEgbGlzdCBvZiBjYW5kaWRhdGVzLlxuICogU3RvcHMgd2hlbiBmb2N1cyBoYXMgYWN0dWFsbHkgbW92ZWQuXG4gKi8gZnVuY3Rpb24gJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZvY3VzRmlyc3QoY2FuZGlkYXRlcywgeyBzZWxlY3Q6IHNlbGVjdCA9IGZhbHNlICB9ID0ge30pIHtcbiAgICBjb25zdCBwcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50O1xuICAgIGZvciAoY29uc3QgY2FuZGlkYXRlIG9mIGNhbmRpZGF0ZXMpe1xuICAgICAgICAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZm9jdXMoY2FuZGlkYXRlLCB7XG4gICAgICAgICAgICBzZWxlY3Q6IHNlbGVjdFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgIT09IHByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCkgcmV0dXJuO1xuICAgIH1cbn1cbi8qKlxuICogUmV0dXJucyB0aGUgZmlyc3QgYW5kIGxhc3QgdGFiYmFibGUgZWxlbWVudHMgaW5zaWRlIGEgY29udGFpbmVyLlxuICovIGZ1bmN0aW9uICRkMzg2M2M0NmExN2U4YTI4JHZhciRnZXRUYWJiYWJsZUVkZ2VzKGNvbnRhaW5lcikge1xuICAgIGNvbnN0IGNhbmRpZGF0ZXMgPSAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZ2V0VGFiYmFibGVDYW5kaWRhdGVzKGNvbnRhaW5lcik7XG4gICAgY29uc3QgZmlyc3QgPSAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZmluZFZpc2libGUoY2FuZGlkYXRlcywgY29udGFpbmVyKTtcbiAgICBjb25zdCBsYXN0ID0gJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZpbmRWaXNpYmxlKGNhbmRpZGF0ZXMucmV2ZXJzZSgpLCBjb250YWluZXIpO1xuICAgIHJldHVybiBbXG4gICAgICAgIGZpcnN0LFxuICAgICAgICBsYXN0XG4gICAgXTtcbn1cbi8qKlxuICogUmV0dXJucyBhIGxpc3Qgb2YgcG90ZW50aWFsIHRhYmJhYmxlIGNhbmRpZGF0ZXMuXG4gKlxuICogTk9URTogVGhpcyBpcyBvbmx5IGEgY2xvc2UgYXBwcm94aW1hdGlvbi4gRm9yIGV4YW1wbGUgaXQgZG9lc24ndCB0YWtlIGludG8gYWNjb3VudCBjYXNlcyBsaWtlIHdoZW5cbiAqIGVsZW1lbnRzIGFyZSBub3QgdmlzaWJsZS4gVGhpcyBjYW5ub3QgYmUgd29ya2VkIG91dCBlYXNpbHkgYnkganVzdCByZWFkaW5nIGEgcHJvcGVydHksIGJ1dCByYXRoZXJcbiAqIG5lY2Vzc2l0YXRlIHJ1bnRpbWUga25vd2xlZGdlIChjb21wdXRlZCBzdHlsZXMsIGV0YykuIFdlIGRlYWwgd2l0aCB0aGVzZSBjYXNlcyBzZXBhcmF0ZWx5LlxuICpcbiAqIFNlZTogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL1RyZWVXYWxrZXJcbiAqIENyZWRpdDogaHR0cHM6Ly9naXRodWIuY29tL2Rpc2NvcmQvZm9jdXMtbGF5ZXJzL2Jsb2IvbWFzdGVyL3NyYy91dGlsL3dyYXBGb2N1cy50c3gjTDFcbiAqLyBmdW5jdGlvbiAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZ2V0VGFiYmFibGVDYW5kaWRhdGVzKGNvbnRhaW5lcikge1xuICAgIGNvbnN0IG5vZGVzID0gW107XG4gICAgY29uc3Qgd2Fsa2VyID0gZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcihjb250YWluZXIsIE5vZGVGaWx0ZXIuU0hPV19FTEVNRU5ULCB7XG4gICAgICAgIGFjY2VwdE5vZGU6IChub2RlKT0+e1xuICAgICAgICAgICAgY29uc3QgaXNIaWRkZW5JbnB1dCA9IG5vZGUudGFnTmFtZSA9PT0gJ0lOUFVUJyAmJiBub2RlLnR5cGUgPT09ICdoaWRkZW4nO1xuICAgICAgICAgICAgaWYgKG5vZGUuZGlzYWJsZWQgfHwgbm9kZS5oaWRkZW4gfHwgaXNIaWRkZW5JbnB1dCkgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX1NLSVA7IC8vIGAudGFiSW5kZXhgIGlzIG5vdCB0aGUgc2FtZSBhcyB0aGUgYHRhYmluZGV4YCBhdHRyaWJ1dGUuIEl0IHdvcmtzIG9uIHRoZVxuICAgICAgICAgICAgLy8gcnVudGltZSdzIHVuZGVyc3RhbmRpbmcgb2YgdGFiYmFiaWxpdHksIHNvIHRoaXMgYXV0b21hdGljYWxseSBhY2NvdW50c1xuICAgICAgICAgICAgLy8gZm9yIGFueSBraW5kIG9mIGVsZW1lbnQgdGhhdCBjb3VsZCBiZSB0YWJiZWQgdG8uXG4gICAgICAgICAgICByZXR1cm4gbm9kZS50YWJJbmRleCA+PSAwID8gTm9kZUZpbHRlci5GSUxURVJfQUNDRVBUIDogTm9kZUZpbHRlci5GSUxURVJfU0tJUDtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHdoaWxlKHdhbGtlci5uZXh0Tm9kZSgpKW5vZGVzLnB1c2god2Fsa2VyLmN1cnJlbnROb2RlKTsgLy8gd2UgZG8gbm90IHRha2UgaW50byBhY2NvdW50IHRoZSBvcmRlciBvZiBub2RlcyB3aXRoIHBvc2l0aXZlIGB0YWJJbmRleGAgYXMgaXRcbiAgICAvLyBoaW5kZXJzIGFjY2Vzc2liaWxpdHkgdG8gaGF2ZSB0YWIgb3JkZXIgZGlmZmVyZW50IGZyb20gdmlzdWFsIG9yZGVyLlxuICAgIHJldHVybiBub2Rlcztcbn1cbi8qKlxuICogUmV0dXJucyB0aGUgZmlyc3QgdmlzaWJsZSBlbGVtZW50IGluIGEgbGlzdC5cbiAqIE5PVEU6IE9ubHkgY2hlY2tzIHZpc2liaWxpdHkgdXAgdG8gdGhlIGBjb250YWluZXJgLlxuICovIGZ1bmN0aW9uICRkMzg2M2M0NmExN2U4YTI4JHZhciRmaW5kVmlzaWJsZShlbGVtZW50cywgY29udGFpbmVyKSB7XG4gICAgZm9yIChjb25zdCBlbGVtZW50IG9mIGVsZW1lbnRzKXtcbiAgICAgICAgLy8gd2Ugc3RvcCBjaGVja2luZyBpZiBpdCdzIGhpZGRlbiBhdCB0aGUgYGNvbnRhaW5lcmAgbGV2ZWwgKGV4Y2x1ZGluZylcbiAgICAgICAgaWYgKCEkZDM4NjNjNDZhMTdlOGEyOCR2YXIkaXNIaWRkZW4oZWxlbWVudCwge1xuICAgICAgICAgICAgdXBUbzogY29udGFpbmVyXG4gICAgICAgIH0pKSByZXR1cm4gZWxlbWVudDtcbiAgICB9XG59XG5mdW5jdGlvbiAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkaXNIaWRkZW4obm9kZSwgeyB1cFRvOiB1cFRvICB9KSB7XG4gICAgaWYgKGdldENvbXB1dGVkU3R5bGUobm9kZSkudmlzaWJpbGl0eSA9PT0gJ2hpZGRlbicpIHJldHVybiB0cnVlO1xuICAgIHdoaWxlKG5vZGUpe1xuICAgICAgICAvLyB3ZSBzdG9wIGF0IGB1cFRvYCAoZXhjbHVkaW5nIGl0KVxuICAgICAgICBpZiAodXBUbyAhPT0gdW5kZWZpbmVkICYmIG5vZGUgPT09IHVwVG8pIHJldHVybiBmYWxzZTtcbiAgICAgICAgaWYgKGdldENvbXB1dGVkU3R5bGUobm9kZSkuZGlzcGxheSA9PT0gJ25vbmUnKSByZXR1cm4gdHJ1ZTtcbiAgICAgICAgbm9kZSA9IG5vZGUucGFyZW50RWxlbWVudDtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuZnVuY3Rpb24gJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGlzU2VsZWN0YWJsZUlucHV0KGVsZW1lbnQpIHtcbiAgICByZXR1cm4gZWxlbWVudCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQgJiYgJ3NlbGVjdCcgaW4gZWxlbWVudDtcbn1cbmZ1bmN0aW9uICRkMzg2M2M0NmExN2U4YTI4JHZhciRmb2N1cyhlbGVtZW50LCB7IHNlbGVjdDogc2VsZWN0ID0gZmFsc2UgIH0gPSB7fSkge1xuICAgIC8vIG9ubHkgZm9jdXMgaWYgdGhhdCBlbGVtZW50IGlzIGZvY3VzYWJsZVxuICAgIGlmIChlbGVtZW50ICYmIGVsZW1lbnQuZm9jdXMpIHtcbiAgICAgICAgY29uc3QgcHJldmlvdXNseUZvY3VzZWRFbGVtZW50ID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDsgLy8gTk9URTogd2UgcHJldmVudCBzY3JvbGxpbmcgb24gZm9jdXMsIHRvIG1pbmltaXplIGphcnJpbmcgdHJhbnNpdGlvbnMgZm9yIHVzZXJzXG4gICAgICAgIGVsZW1lbnQuZm9jdXMoe1xuICAgICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZVxuICAgICAgICB9KTsgLy8gb25seSBzZWxlY3QgaWYgaXRzIG5vdCB0aGUgc2FtZSBlbGVtZW50LCBpdCBzdXBwb3J0cyBzZWxlY3Rpb24gYW5kIHdlIG5lZWQgdG8gc2VsZWN0XG4gICAgICAgIGlmIChlbGVtZW50ICE9PSBwcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQgJiYgJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGlzU2VsZWN0YWJsZUlucHV0KGVsZW1lbnQpICYmIHNlbGVjdCkgZWxlbWVudC5zZWxlY3QoKTtcbiAgICB9XG59XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBGb2N1c1Njb3BlIHN0YWNrXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICRkMzg2M2M0NmExN2U4YTI4JHZhciRmb2N1c1Njb3Blc1N0YWNrID0gJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGNyZWF0ZUZvY3VzU2NvcGVzU3RhY2soKTtcbmZ1bmN0aW9uICRkMzg2M2M0NmExN2U4YTI4JHZhciRjcmVhdGVGb2N1c1Njb3Blc1N0YWNrKCkge1xuICAgIC8qKiBBIHN0YWNrIG9mIGZvY3VzIHNjb3Blcywgd2l0aCB0aGUgYWN0aXZlIG9uZSBhdCB0aGUgdG9wICovIGxldCBzdGFjayA9IFtdO1xuICAgIHJldHVybiB7XG4gICAgICAgIGFkZCAoZm9jdXNTY29wZSkge1xuICAgICAgICAgICAgLy8gcGF1c2UgdGhlIGN1cnJlbnRseSBhY3RpdmUgZm9jdXMgc2NvcGUgKGF0IHRoZSB0b3Agb2YgdGhlIHN0YWNrKVxuICAgICAgICAgICAgY29uc3QgYWN0aXZlRm9jdXNTY29wZSA9IHN0YWNrWzBdO1xuICAgICAgICAgICAgaWYgKGZvY3VzU2NvcGUgIT09IGFjdGl2ZUZvY3VzU2NvcGUpIGFjdGl2ZUZvY3VzU2NvcGUgPT09IG51bGwgfHwgYWN0aXZlRm9jdXNTY29wZSA9PT0gdm9pZCAwIHx8IGFjdGl2ZUZvY3VzU2NvcGUucGF1c2UoKTtcbiAgICAgICAgICAgICAvLyByZW1vdmUgaW4gY2FzZSBpdCBhbHJlYWR5IGV4aXN0cyAoYmVjYXVzZSB3ZSdsbCByZS1hZGQgaXQgYXQgdGhlIHRvcCBvZiB0aGUgc3RhY2spXG4gICAgICAgICAgICBzdGFjayA9ICRkMzg2M2M0NmExN2U4YTI4JHZhciRhcnJheVJlbW92ZShzdGFjaywgZm9jdXNTY29wZSk7XG4gICAgICAgICAgICBzdGFjay51bnNoaWZ0KGZvY3VzU2NvcGUpO1xuICAgICAgICB9LFxuICAgICAgICByZW1vdmUgKGZvY3VzU2NvcGUpIHtcbiAgICAgICAgICAgIHZhciBfc3RhY2skO1xuICAgICAgICAgICAgc3RhY2sgPSAkZDM4NjNjNDZhMTdlOGEyOCR2YXIkYXJyYXlSZW1vdmUoc3RhY2ssIGZvY3VzU2NvcGUpO1xuICAgICAgICAgICAgKF9zdGFjayQgPSBzdGFja1swXSkgPT09IG51bGwgfHwgX3N0YWNrJCA9PT0gdm9pZCAwIHx8IF9zdGFjayQucmVzdW1lKCk7XG4gICAgICAgIH1cbiAgICB9O1xufVxuZnVuY3Rpb24gJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGFycmF5UmVtb3ZlKGFycmF5LCBpdGVtKSB7XG4gICAgY29uc3QgdXBkYXRlZEFycmF5ID0gW1xuICAgICAgICAuLi5hcnJheVxuICAgIF07XG4gICAgY29uc3QgaW5kZXggPSB1cGRhdGVkQXJyYXkuaW5kZXhPZihpdGVtKTtcbiAgICBpZiAoaW5kZXggIT09IC0xKSB1cGRhdGVkQXJyYXkuc3BsaWNlKGluZGV4LCAxKTtcbiAgICByZXR1cm4gdXBkYXRlZEFycmF5O1xufVxuZnVuY3Rpb24gJGQzODYzYzQ2YTE3ZThhMjgkdmFyJHJlbW92ZUxpbmtzKGl0ZW1zKSB7XG4gICAgcmV0dXJuIGl0ZW1zLmZpbHRlcigoaXRlbSk9Pml0ZW0udGFnTmFtZSAhPT0gJ0EnXG4gICAgKTtcbn1cbmNvbnN0ICRkMzg2M2M0NmExN2U4YTI4JGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5ID0gJGQzODYzYzQ2YTE3ZThhMjgkZXhwb3J0JDIwZTQwMjg5NjQxZmJiYjY7XG5cblxuXG5cbmV4cG9ydCB7JGQzODYzYzQ2YTE3ZThhMjgkZXhwb3J0JDIwZTQwMjg5NjQxZmJiYjYgYXMgRm9jdXNTY29wZSwgJGQzODYzYzQ2YTE3ZThhMjgkZXhwb3J0JGJlOTJiNmY1ZjAzYzBmZTkgYXMgUm9vdH07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5tanMubWFwXG4iXSwibmFtZXMiOlsiJDQ1UUh2JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIiwiZm9yd2FyZFJlZiIsIiQ0NVFIdiRmb3J3YXJkUmVmIiwidXNlU3RhdGUiLCIkNDVRSHYkdXNlU3RhdGUiLCJ1c2VSZWYiLCIkNDVRSHYkdXNlUmVmIiwidXNlRWZmZWN0IiwiJDQ1UUh2JHVzZUVmZmVjdCIsInVzZUNhbGxiYWNrIiwiJDQ1UUh2JHVzZUNhbGxiYWNrIiwiY3JlYXRlRWxlbWVudCIsIiQ0NVFIdiRjcmVhdGVFbGVtZW50IiwidXNlQ29tcG9zZWRSZWZzIiwiJDQ1UUh2JHVzZUNvbXBvc2VkUmVmcyIsIlByaW1pdGl2ZSIsIiQ0NVFIdiRQcmltaXRpdmUiLCJ1c2VDYWxsYmFja1JlZiIsIiQ0NVFIdiR1c2VDYWxsYmFja1JlZiIsIiRkMzg2M2M0NmExN2U4YTI4JHZhciRBVVRPRk9DVVNfT05fTU9VTlQiLCIkZDM4NjNjNDZhMTdlOGEyOCR2YXIkQVVUT0ZPQ1VTX09OX1VOTU9VTlQiLCIkZDM4NjNjNDZhMTdlOGEyOCR2YXIkRVZFTlRfT1BUSU9OUyIsImJ1YmJsZXMiLCJjYW5jZWxhYmxlIiwiJGQzODYzYzQ2YTE3ZThhMjgkdmFyJEZPQ1VTX1NDT1BFX05BTUUiLCIkZDM4NjNjNDZhMTdlOGEyOCRleHBvcnQkMjBlNDAyODk2NDFmYmJiNiIsInByb3BzIiwiZm9yd2FyZGVkUmVmIiwibG9vcCIsInRyYXBwZWQiLCJvbk1vdW50QXV0b0ZvY3VzIiwib25Nb3VudEF1dG9Gb2N1c1Byb3AiLCJvblVubW91bnRBdXRvRm9jdXMiLCJvblVubW91bnRBdXRvRm9jdXNQcm9wIiwic2NvcGVQcm9wcyIsImNvbnRhaW5lcjEiLCJzZXRDb250YWluZXIiLCJsYXN0Rm9jdXNlZEVsZW1lbnRSZWYiLCJjb21wb3NlZFJlZnMiLCJub2RlIiwiZm9jdXNTY29wZSIsInBhdXNlZCIsInBhdXNlIiwicmVzdW1lIiwiY3VycmVudCIsImhhbmRsZUZvY3VzSW4iLCJldmVudCIsInRhcmdldCIsImNvbnRhaW5zIiwiJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZvY3VzIiwic2VsZWN0IiwiaGFuZGxlRm9jdXNPdXQiLCJyZWxhdGVkVGFyZ2V0IiwiaGFuZGxlTXV0YXRpb25zIiwibXV0YXRpb25zIiwiZm9jdXNlZEVsZW1lbnQiLCJkb2N1bWVudCIsImFjdGl2ZUVsZW1lbnQiLCJib2R5IiwibXV0YXRpb24iLCJyZW1vdmVkTm9kZXMiLCJsZW5ndGgiLCJhZGRFdmVudExpc3RlbmVyIiwibXV0YXRpb25PYnNlcnZlciIsIk11dGF0aW9uT2JzZXJ2ZXIiLCJvYnNlcnZlIiwiY2hpbGRMaXN0Iiwic3VidHJlZSIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJkaXNjb25uZWN0IiwiJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZvY3VzU2NvcGVzU3RhY2siLCJhZGQiLCJwcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQiLCJoYXNGb2N1c2VkQ2FuZGlkYXRlIiwibW91bnRFdmVudCIsIkN1c3RvbUV2ZW50IiwiZGlzcGF0Y2hFdmVudCIsImRlZmF1bHRQcmV2ZW50ZWQiLCIkZDM4NjNjNDZhMTdlOGEyOCR2YXIkZm9jdXNGaXJzdCIsIiRkMzg2M2M0NmExN2U4YTI4JHZhciRyZW1vdmVMaW5rcyIsIiRkMzg2M2M0NmExN2U4YTI4JHZhciRnZXRUYWJiYWJsZUNhbmRpZGF0ZXMiLCJzZXRUaW1lb3V0IiwidW5tb3VudEV2ZW50IiwicmVtb3ZlIiwiaGFuZGxlS2V5RG93biIsImlzVGFiS2V5Iiwia2V5IiwiYWx0S2V5IiwiY3RybEtleSIsIm1ldGFLZXkiLCJjb250YWluZXIiLCJjdXJyZW50VGFyZ2V0IiwiZmlyc3QiLCJsYXN0IiwiJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGdldFRhYmJhYmxlRWRnZXMiLCJoYXNUYWJiYWJsZUVsZW1lbnRzSW5zaWRlIiwicHJldmVudERlZmF1bHQiLCJzaGlmdEtleSIsImRpdiIsInRhYkluZGV4IiwicmVmIiwib25LZXlEb3duIiwiT2JqZWN0IiwiYXNzaWduIiwiZGlzcGxheU5hbWUiLCJjYW5kaWRhdGVzIiwiY2FuZGlkYXRlIiwiJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGZpbmRWaXNpYmxlIiwicmV2ZXJzZSIsIm5vZGVzIiwid2Fsa2VyIiwiY3JlYXRlVHJlZVdhbGtlciIsIk5vZGVGaWx0ZXIiLCJTSE9XX0VMRU1FTlQiLCJhY2NlcHROb2RlIiwiaXNIaWRkZW5JbnB1dCIsInRhZ05hbWUiLCJ0eXBlIiwiZGlzYWJsZWQiLCJoaWRkZW4iLCJGSUxURVJfU0tJUCIsIkZJTFRFUl9BQ0NFUFQiLCJuZXh0Tm9kZSIsInB1c2giLCJjdXJyZW50Tm9kZSIsImVsZW1lbnRzIiwiZWxlbWVudCIsIiRkMzg2M2M0NmExN2U4YTI4JHZhciRpc0hpZGRlbiIsInVwVG8iLCJnZXRDb21wdXRlZFN0eWxlIiwidmlzaWJpbGl0eSIsInVuZGVmaW5lZCIsImRpc3BsYXkiLCJwYXJlbnRFbGVtZW50IiwiJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGlzU2VsZWN0YWJsZUlucHV0IiwiSFRNTElucHV0RWxlbWVudCIsImZvY3VzIiwicHJldmVudFNjcm9sbCIsIiRkMzg2M2M0NmExN2U4YTI4JHZhciRjcmVhdGVGb2N1c1Njb3Blc1N0YWNrIiwic3RhY2siLCJhY3RpdmVGb2N1c1Njb3BlIiwiJGQzODYzYzQ2YTE3ZThhMjgkdmFyJGFycmF5UmVtb3ZlIiwidW5zaGlmdCIsIl9zdGFjayQiLCJhcnJheSIsIml0ZW0iLCJ1cGRhdGVkQXJyYXkiLCJpbmRleCIsImluZGV4T2YiLCJzcGxpY2UiLCJpdGVtcyIsImZpbHRlciIsIiRkMzg2M2M0NmExN2U4YTI4JGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IiwiRm9jdXNTY29wZSIsIlJvb3QiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-focus-scope/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-id/dist/index.mjs": /*!********************************************************!*\ !*** ./node_modules/@radix-ui/react-id/dist/index.mjs ***! \********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("var react__WEBPACK_IMPORTED_MODULE_0___namespace_cache;\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useId: () => (/* binding */ $1746a345f3d73bb7$export$f680877a34711e37)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @radix-ui/react-use-layout-effect */ \"(ssr)/./node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs\");\n\n\nconst $1746a345f3d73bb7$var$useReactId = /*#__PURE__*/ (react__WEBPACK_IMPORTED_MODULE_0___namespace_cache || (react__WEBPACK_IMPORTED_MODULE_0___namespace_cache = __webpack_require__.t(react__WEBPACK_IMPORTED_MODULE_0__, 2)))[\"useId\".toString()] || (()=>undefined);\nlet $1746a345f3d73bb7$var$count = 0;\nfunction $1746a345f3d73bb7$export$f680877a34711e37(deterministicId) {\n const [id, setId] = react__WEBPACK_IMPORTED_MODULE_0__.useState($1746a345f3d73bb7$var$useReactId()); // React versions older than 18 will have client-side ids only.\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_1__.useLayoutEffect)(()=>{\n if (!deterministicId) setId((reactId)=>reactId !== null && reactId !== void 0 ? reactId : String($1746a345f3d73bb7$var$count++));\n }, [\n deterministicId\n ]);\n return deterministicId || (id ? `radix-${id}` : \"\");\n}\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWlkL2Rpc3QvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBc0M7QUFDc0Q7QUFJNUYsTUFBTUcsbUNBQW1DSCx5TEFBWSxDQUFDLFFBQVFJLFFBQVEsR0FBRyxJQUFLLEtBQUlDLFNBQVE7QUFFMUYsSUFBSUMsOEJBQThCO0FBQ2xDLFNBQVNDLDBDQUEwQ0MsZUFBZTtJQUM5RCxNQUFNLENBQUNDLElBQUlDLE1BQU0sR0FBR1YsMkNBQXFCLENBQUNHLHFDQUFxQywrREFBK0Q7SUFDOUlELGtGQUFzQkEsQ0FBQztRQUNuQixJQUFJLENBQUNNLGlCQUFpQkUsTUFBTSxDQUFDRSxVQUFVQSxZQUFZLFFBQVFBLFlBQVksS0FBSyxJQUFJQSxVQUFVQyxPQUFPUDtJQUVyRyxHQUFHO1FBQ0NFO0tBQ0g7SUFDRCxPQUFPQSxtQkFBb0JDLENBQUFBLEtBQUssQ0FBQyxNQUFNLEVBQUVBLEdBQUcsQ0FBQyxHQUFHLEVBQUM7QUFDckQ7QUFLNEQsQ0FDNUQsa0NBQWtDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZW1iZWRjaGFpbi1hZG1pbi8uL25vZGVfbW9kdWxlcy9AcmFkaXgtdWkvcmVhY3QtaWQvZGlzdC9pbmRleC5tanM/YzY0OSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyAkMkFPRHgkcmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQge3VzZUxheW91dEVmZmVjdCBhcyAkMkFPRHgkdXNlTGF5b3V0RWZmZWN0fSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXVzZS1sYXlvdXQtZWZmZWN0XCI7XG5cblxuXG5jb25zdCAkMTc0NmEzNDVmM2Q3M2JiNyR2YXIkdXNlUmVhY3RJZCA9ICQyQU9EeCRyZWFjdFsndXNlSWQnLnRvU3RyaW5nKCldIHx8ICgoKT0+dW5kZWZpbmVkXG4pO1xubGV0ICQxNzQ2YTM0NWYzZDczYmI3JHZhciRjb3VudCA9IDA7XG5mdW5jdGlvbiAkMTc0NmEzNDVmM2Q3M2JiNyRleHBvcnQkZjY4MDg3N2EzNDcxMWUzNyhkZXRlcm1pbmlzdGljSWQpIHtcbiAgICBjb25zdCBbaWQsIHNldElkXSA9ICQyQU9EeCRyZWFjdC51c2VTdGF0ZSgkMTc0NmEzNDVmM2Q3M2JiNyR2YXIkdXNlUmVhY3RJZCgpKTsgLy8gUmVhY3QgdmVyc2lvbnMgb2xkZXIgdGhhbiAxOCB3aWxsIGhhdmUgY2xpZW50LXNpZGUgaWRzIG9ubHkuXG4gICAgJDJBT0R4JHVzZUxheW91dEVmZmVjdCgoKT0+e1xuICAgICAgICBpZiAoIWRldGVybWluaXN0aWNJZCkgc2V0SWQoKHJlYWN0SWQpPT5yZWFjdElkICE9PSBudWxsICYmIHJlYWN0SWQgIT09IHZvaWQgMCA/IHJlYWN0SWQgOiBTdHJpbmcoJDE3NDZhMzQ1ZjNkNzNiYjckdmFyJGNvdW50KyspXG4gICAgICAgICk7XG4gICAgfSwgW1xuICAgICAgICBkZXRlcm1pbmlzdGljSWRcbiAgICBdKTtcbiAgICByZXR1cm4gZGV0ZXJtaW5pc3RpY0lkIHx8IChpZCA/IGByYWRpeC0ke2lkfWAgOiAnJyk7XG59XG5cblxuXG5cbmV4cG9ydCB7JDE3NDZhMzQ1ZjNkNzNiYjckZXhwb3J0JGY2ODA4NzdhMzQ3MTFlMzcgYXMgdXNlSWR9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXgubWpzLm1hcFxuIl0sIm5hbWVzIjpbIiQyQU9EeCRyZWFjdCIsInVzZUxheW91dEVmZmVjdCIsIiQyQU9EeCR1c2VMYXlvdXRFZmZlY3QiLCIkMTc0NmEzNDVmM2Q3M2JiNyR2YXIkdXNlUmVhY3RJZCIsInRvU3RyaW5nIiwidW5kZWZpbmVkIiwiJDE3NDZhMzQ1ZjNkNzNiYjckdmFyJGNvdW50IiwiJDE3NDZhMzQ1ZjNkNzNiYjckZXhwb3J0JGY2ODA4NzdhMzQ3MTFlMzciLCJkZXRlcm1pbmlzdGljSWQiLCJpZCIsInNldElkIiwidXNlU3RhdGUiLCJyZWFjdElkIiwiU3RyaW5nIiwidXNlSWQiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-id/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-label/dist/index.mjs": /*!***********************************************************!*\ !*** ./node_modules/@radix-ui/react-label/dist/index.mjs ***! \***********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Label: () => (/* binding */ $b73a6c6685e72184$export$b04be29aa201d4f5),\n/* harmony export */ Root: () => (/* binding */ $b73a6c6685e72184$export$be92b6f5f03c0fe9)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n\n\n\n/* -------------------------------------------------------------------------------------------------\n * Label\n * -----------------------------------------------------------------------------------------------*/ const $b73a6c6685e72184$var$NAME = \"Label\";\nconst $b73a6c6685e72184$export$b04be29aa201d4f5 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_2__.Primitive.label, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, props, {\n ref: forwardedRef,\n onMouseDown: (event)=>{\n var _props$onMouseDown;\n (_props$onMouseDown = props.onMouseDown) === null || _props$onMouseDown === void 0 || _props$onMouseDown.call(props, event); // prevent text selection when double clicking label\n if (!event.defaultPrevented && event.detail > 1) event.preventDefault();\n }\n }));\n});\n/*#__PURE__*/ Object.assign($b73a6c6685e72184$export$b04be29aa201d4f5, {\n displayName: $b73a6c6685e72184$var$NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ const $b73a6c6685e72184$export$be92b6f5f03c0fe9 = $b73a6c6685e72184$export$b04be29aa201d4f5;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWxhYmVsL2Rpc3QvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQXNGO0FBQ087QUFDckI7QUFLeEU7O2tHQUVrRyxHQUFHLE1BQU1PLDZCQUE2QjtBQUN4SSxNQUFNQyw0Q0FBNEMsV0FBVyxHQUFHTixpREFBaUJBLENBQUMsQ0FBQ08sT0FBT0M7SUFDdEYsT0FBTyxXQUFXLEdBQUdOLG9EQUFvQkEsQ0FBQ0UsZ0VBQWdCQSxDQUFDSyxLQUFLLEVBQUVYLDhFQUFvQ0EsQ0FBQyxDQUFDLEdBQUdTLE9BQU87UUFDOUdHLEtBQUtGO1FBQ0xHLGFBQWEsQ0FBQ0M7WUFDVixJQUFJQztZQUNIQSxDQUFBQSxxQkFBcUJOLE1BQU1JLFdBQVcsTUFBTSxRQUFRRSx1QkFBdUIsS0FBSyxLQUFLQSxtQkFBbUJDLElBQUksQ0FBQ1AsT0FBT0ssUUFBUSxvREFBb0Q7WUFDakwsSUFBSSxDQUFDQSxNQUFNRyxnQkFBZ0IsSUFBSUgsTUFBTUksTUFBTSxHQUFHLEdBQUdKLE1BQU1LLGNBQWM7UUFDekU7SUFDSjtBQUNKO0FBQ0EsV0FBVyxHQUFHQyxPQUFPQyxNQUFNLENBQUNiLDJDQUEyQztJQUNuRWMsYUFBYWY7QUFDakI7QUFDQSxrR0FBa0csR0FBRyxNQUFNZ0IsNENBQTRDZjtBQUt4QyxDQUMvRyxrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9lbWJlZGNoYWluLWFkbWluLy4vbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC1sYWJlbC9kaXN0L2luZGV4Lm1qcz9kMTBkIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAkN1Y0SlokYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2V4dGVuZHNcIjtcbmltcG9ydCB7Zm9yd2FyZFJlZiBhcyAkN1Y0SlokZm9yd2FyZFJlZiwgY3JlYXRlRWxlbWVudCBhcyAkN1Y0SlokY3JlYXRlRWxlbWVudH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQge1ByaW1pdGl2ZSBhcyAkN1Y0SlokUHJpbWl0aXZlfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXByaW1pdGl2ZVwiO1xuXG5cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBMYWJlbFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkYjczYTZjNjY4NWU3MjE4NCR2YXIkTkFNRSA9ICdMYWJlbCc7XG5jb25zdCAkYjczYTZjNjY4NWU3MjE4NCRleHBvcnQkYjA0YmUyOWFhMjAxZDRmNSA9IC8qI19fUFVSRV9fKi8gJDdWNEpaJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDdWNEpaJGNyZWF0ZUVsZW1lbnQoJDdWNEpaJFByaW1pdGl2ZS5sYWJlbCwgJDdWNEpaJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBwcm9wcywge1xuICAgICAgICByZWY6IGZvcndhcmRlZFJlZixcbiAgICAgICAgb25Nb3VzZURvd246IChldmVudCk9PntcbiAgICAgICAgICAgIHZhciBfcHJvcHMkb25Nb3VzZURvd247XG4gICAgICAgICAgICAoX3Byb3BzJG9uTW91c2VEb3duID0gcHJvcHMub25Nb3VzZURvd24pID09PSBudWxsIHx8IF9wcm9wcyRvbk1vdXNlRG93biA9PT0gdm9pZCAwIHx8IF9wcm9wcyRvbk1vdXNlRG93bi5jYWxsKHByb3BzLCBldmVudCk7IC8vIHByZXZlbnQgdGV4dCBzZWxlY3Rpb24gd2hlbiBkb3VibGUgY2xpY2tpbmcgbGFiZWxcbiAgICAgICAgICAgIGlmICghZXZlbnQuZGVmYXVsdFByZXZlbnRlZCAmJiBldmVudC5kZXRhaWwgPiAxKSBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG4gICAgfSkpO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJGI3M2E2YzY2ODVlNzIxODQkZXhwb3J0JGIwNGJlMjlhYTIwMWQ0ZjUsIHtcbiAgICBkaXNwbGF5TmFtZTogJGI3M2E2YzY2ODVlNzIxODQkdmFyJE5BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkYjczYTZjNjY4NWU3MjE4NCRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSA9ICRiNzNhNmM2Njg1ZTcyMTg0JGV4cG9ydCRiMDRiZTI5YWEyMDFkNGY1O1xuXG5cblxuXG5leHBvcnQgeyRiNzNhNmM2Njg1ZTcyMTg0JGV4cG9ydCRiMDRiZTI5YWEyMDFkNGY1IGFzIExhYmVsLCAkYjczYTZjNjY4NWU3MjE4NCRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSBhcyBSb290fTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4Lm1qcy5tYXBcbiJdLCJuYW1lcyI6WyIkN1Y0SlokYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMiLCJmb3J3YXJkUmVmIiwiJDdWNEpaJGZvcndhcmRSZWYiLCJjcmVhdGVFbGVtZW50IiwiJDdWNEpaJGNyZWF0ZUVsZW1lbnQiLCJQcmltaXRpdmUiLCIkN1Y0SlokUHJpbWl0aXZlIiwiJGI3M2E2YzY2ODVlNzIxODQkdmFyJE5BTUUiLCIkYjczYTZjNjY4NWU3MjE4NCRleHBvcnQkYjA0YmUyOWFhMjAxZDRmNSIsInByb3BzIiwiZm9yd2FyZGVkUmVmIiwibGFiZWwiLCJyZWYiLCJvbk1vdXNlRG93biIsImV2ZW50IiwiX3Byb3BzJG9uTW91c2VEb3duIiwiY2FsbCIsImRlZmF1bHRQcmV2ZW50ZWQiLCJkZXRhaWwiLCJwcmV2ZW50RGVmYXVsdCIsIk9iamVjdCIsImFzc2lnbiIsImRpc3BsYXlOYW1lIiwiJGI3M2E2YzY2ODVlNzIxODQkZXhwb3J0JGJlOTJiNmY1ZjAzYzBmZTkiLCJMYWJlbCIsIlJvb3QiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-label/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-portal/dist/index.mjs": /*!************************************************************!*\ !*** ./node_modules/@radix-ui/react-portal/dist/index.mjs ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Portal: () => (/* binding */ $f1701beae083dbae$export$602eac185826482c),\n/* harmony export */ Root: () => (/* binding */ $f1701beae083dbae$export$be92b6f5f03c0fe9)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-dom */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-dom.js\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n\n\n\n\n/* -------------------------------------------------------------------------------------------------\n * Portal\n * -----------------------------------------------------------------------------------------------*/ const $f1701beae083dbae$var$PORTAL_NAME = \"Portal\";\nconst $f1701beae083dbae$export$602eac185826482c = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n var _globalThis$document;\n const { container: container = globalThis === null || globalThis === void 0 ? void 0 : (_globalThis$document = globalThis.document) === null || _globalThis$document === void 0 ? void 0 : _globalThis$document.body, ...portalProps } = props;\n return container ? /*#__PURE__*/ react_dom__WEBPACK_IMPORTED_MODULE_2__.createPortal(/*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_3__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, portalProps, {\n ref: forwardedRef\n })), container) : null;\n});\n/*#__PURE__*/ Object.assign($f1701beae083dbae$export$602eac185826482c, {\n displayName: $f1701beae083dbae$var$PORTAL_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ const $f1701beae083dbae$export$be92b6f5f03c0fe9 = $f1701beae083dbae$export$602eac185826482c;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXBvcnRhbC9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBc0Y7QUFDTztBQUNyRDtBQUNnQztBQU14RTs7a0dBRWtHLEdBQUcsTUFBTVEsb0NBQW9DO0FBQy9JLE1BQU1DLDRDQUE0QyxXQUFXLEdBQUdQLGlEQUFpQkEsQ0FBQyxDQUFDUSxPQUFPQztJQUN0RixJQUFJQztJQUNKLE1BQU0sRUFBRUMsV0FBV0EsWUFBWUMsZUFBZSxRQUFRQSxlQUFlLEtBQUssSUFBSSxLQUFLLElBQUksQ0FBQ0YsdUJBQXVCRSxXQUFXQyxRQUFRLE1BQU0sUUFBUUgseUJBQXlCLEtBQUssSUFBSSxLQUFLLElBQUlBLHFCQUFxQkksSUFBSSxFQUFHLEdBQUdDLGFBQWEsR0FBR1A7SUFDMU8sT0FBT0csWUFBWSxXQUFXLEdBQUdSLG1EQUE0QixDQUFDLFdBQVcsR0FBR0Qsb0RBQW9CQSxDQUFDRyxnRUFBZ0JBLENBQUNZLEdBQUcsRUFBRW5CLDhFQUFvQ0EsQ0FBQyxDQUFDLEdBQUdpQixhQUFhO1FBQ3pLRyxLQUFLVDtJQUNULEtBQUtFLGFBQWE7QUFDdEI7QUFDQSxXQUFXLEdBQUdRLE9BQU9DLE1BQU0sQ0FBQ2IsMkNBQTJDO0lBQ25FYyxhQUFhZjtBQUNqQjtBQUNBLGtHQUFrRyxHQUFHLE1BQU1nQiw0Q0FBNENmO0FBS3ZDLENBQ2hILGtDQUFrQyIsInNvdXJjZXMiOlsid2VicGFjazovL2VtYmVkY2hhaW4tYWRtaW4vLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXBvcnRhbC9kaXN0L2luZGV4Lm1qcz8yYzY1Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAkN1NYbDIkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2V4dGVuZHNcIjtcbmltcG9ydCB7Zm9yd2FyZFJlZiBhcyAkN1NYbDIkZm9yd2FyZFJlZiwgY3JlYXRlRWxlbWVudCBhcyAkN1NYbDIkY3JlYXRlRWxlbWVudH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgJDdTWGwyJHJlYWN0ZG9tIGZyb20gXCJyZWFjdC1kb21cIjtcbmltcG9ydCB7UHJpbWl0aXZlIGFzICQ3U1hsMiRQcmltaXRpdmV9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtcHJpbWl0aXZlXCI7XG5cblxuXG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogUG9ydGFsXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICRmMTcwMWJlYWUwODNkYmFlJHZhciRQT1JUQUxfTkFNRSA9ICdQb3J0YWwnO1xuY29uc3QgJGYxNzAxYmVhZTA4M2RiYWUkZXhwb3J0JDYwMmVhYzE4NTgyNjQ4MmMgPSAvKiNfX1BVUkVfXyovICQ3U1hsMiRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIHZhciBfZ2xvYmFsVGhpcyRkb2N1bWVudDtcbiAgICBjb25zdCB7IGNvbnRhaW5lcjogY29udGFpbmVyID0gZ2xvYmFsVGhpcyA9PT0gbnVsbCB8fCBnbG9iYWxUaGlzID09PSB2b2lkIDAgPyB2b2lkIDAgOiAoX2dsb2JhbFRoaXMkZG9jdW1lbnQgPSBnbG9iYWxUaGlzLmRvY3VtZW50KSA9PT0gbnVsbCB8fCBfZ2xvYmFsVGhpcyRkb2N1bWVudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2dsb2JhbFRoaXMkZG9jdW1lbnQuYm9keSAsIC4uLnBvcnRhbFByb3BzIH0gPSBwcm9wcztcbiAgICByZXR1cm4gY29udGFpbmVyID8gLyojX19QVVJFX18qLyAkN1NYbDIkcmVhY3Rkb20uY3JlYXRlUG9ydGFsKC8qI19fUFVSRV9fKi8gJDdTWGwyJGNyZWF0ZUVsZW1lbnQoJDdTWGwyJFByaW1pdGl2ZS5kaXYsICQ3U1hsMiRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7fSwgcG9ydGFsUHJvcHMsIHtcbiAgICAgICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgICB9KSksIGNvbnRhaW5lcikgOiBudWxsO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJGYxNzAxYmVhZTA4M2RiYWUkZXhwb3J0JDYwMmVhYzE4NTgyNjQ4MmMsIHtcbiAgICBkaXNwbGF5TmFtZTogJGYxNzAxYmVhZTA4M2RiYWUkdmFyJFBPUlRBTF9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGYxNzAxYmVhZTA4M2RiYWUkZXhwb3J0JGJlOTJiNmY1ZjAzYzBmZTkgPSAkZjE3MDFiZWFlMDgzZGJhZSRleHBvcnQkNjAyZWFjMTg1ODI2NDgyYztcblxuXG5cblxuZXhwb3J0IHskZjE3MDFiZWFlMDgzZGJhZSRleHBvcnQkNjAyZWFjMTg1ODI2NDgyYyBhcyBQb3J0YWwsICRmMTcwMWJlYWUwODNkYmFlJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IGFzIFJvb3R9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXgubWpzLm1hcFxuIl0sIm5hbWVzIjpbIiQ3U1hsMiRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyIsImZvcndhcmRSZWYiLCIkN1NYbDIkZm9yd2FyZFJlZiIsImNyZWF0ZUVsZW1lbnQiLCIkN1NYbDIkY3JlYXRlRWxlbWVudCIsIiQ3U1hsMiRyZWFjdGRvbSIsIlByaW1pdGl2ZSIsIiQ3U1hsMiRQcmltaXRpdmUiLCIkZjE3MDFiZWFlMDgzZGJhZSR2YXIkUE9SVEFMX05BTUUiLCIkZjE3MDFiZWFlMDgzZGJhZSRleHBvcnQkNjAyZWFjMTg1ODI2NDgyYyIsInByb3BzIiwiZm9yd2FyZGVkUmVmIiwiX2dsb2JhbFRoaXMkZG9jdW1lbnQiLCJjb250YWluZXIiLCJnbG9iYWxUaGlzIiwiZG9jdW1lbnQiLCJib2R5IiwicG9ydGFsUHJvcHMiLCJjcmVhdGVQb3J0YWwiLCJkaXYiLCJyZWYiLCJPYmplY3QiLCJhc3NpZ24iLCJkaXNwbGF5TmFtZSIsIiRmMTcwMWJlYWUwODNkYmFlJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IiwiUG9ydGFsIiwiUm9vdCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-portal/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-presence/dist/index.mjs": /*!**************************************************************!*\ !*** ./node_modules/@radix-ui/react-presence/dist/index.mjs ***! \**************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Presence: () => (/* binding */ $921a889cee6df7e8$export$99c2b779aa4e8b8b)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-dom */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-dom.js\");\n/* harmony import */ var _radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-compose-refs */ \"(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-use-layout-effect */ \"(ssr)/./node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs\");\n\n\n\n\nfunction $fe963b355347cc68$export$3e6543de14f8614f(initialState, machine) {\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useReducer)((state, event)=>{\n const nextState = machine[state][event];\n return nextState !== null && nextState !== void 0 ? nextState : state;\n }, initialState);\n}\nconst $921a889cee6df7e8$export$99c2b779aa4e8b8b = (props)=>{\n const { present: present, children: children } = props;\n const presence = $921a889cee6df7e8$var$usePresence(present);\n const child = typeof children === \"function\" ? children({\n present: presence.isPresent\n }) : react__WEBPACK_IMPORTED_MODULE_0__.Children.only(children);\n const ref = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__.useComposedRefs)(presence.ref, child.ref);\n const forceMount = typeof children === \"function\";\n return forceMount || presence.isPresent ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.cloneElement)(child, {\n ref: ref\n }) : null;\n};\n$921a889cee6df7e8$export$99c2b779aa4e8b8b.displayName = \"Presence\";\n/* -------------------------------------------------------------------------------------------------\n * usePresence\n * -----------------------------------------------------------------------------------------------*/ function $921a889cee6df7e8$var$usePresence(present) {\n const [node1, setNode] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)();\n const stylesRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)({});\n const prevPresentRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(present);\n const prevAnimationNameRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(\"none\");\n const initialState = present ? \"mounted\" : \"unmounted\";\n const [state, send] = $fe963b355347cc68$export$3e6543de14f8614f(initialState, {\n mounted: {\n UNMOUNT: \"unmounted\",\n ANIMATION_OUT: \"unmountSuspended\"\n },\n unmountSuspended: {\n MOUNT: \"mounted\",\n ANIMATION_END: \"unmounted\"\n },\n unmounted: {\n MOUNT: \"mounted\"\n }\n });\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n const currentAnimationName = $921a889cee6df7e8$var$getAnimationName(stylesRef.current);\n prevAnimationNameRef.current = state === \"mounted\" ? currentAnimationName : \"none\";\n }, [\n state\n ]);\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_3__.useLayoutEffect)(()=>{\n const styles = stylesRef.current;\n const wasPresent = prevPresentRef.current;\n const hasPresentChanged = wasPresent !== present;\n if (hasPresentChanged) {\n const prevAnimationName = prevAnimationNameRef.current;\n const currentAnimationName = $921a889cee6df7e8$var$getAnimationName(styles);\n if (present) send(\"MOUNT\");\n else if (currentAnimationName === \"none\" || (styles === null || styles === void 0 ? void 0 : styles.display) === \"none\") // so we unmount instantly\n send(\"UNMOUNT\");\n else {\n /**\n * When `present` changes to `false`, we check changes to animation-name to\n * determine whether an animation has started. We chose this approach (reading\n * computed styles) because there is no `animationrun` event and `animationstart`\n * fires after `animation-delay` has expired which would be too late.\n */ const isAnimating = prevAnimationName !== currentAnimationName;\n if (wasPresent && isAnimating) send(\"ANIMATION_OUT\");\n else send(\"UNMOUNT\");\n }\n prevPresentRef.current = present;\n }\n }, [\n present,\n send\n ]);\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_3__.useLayoutEffect)(()=>{\n if (node1) {\n /**\n * Triggering an ANIMATION_OUT during an ANIMATION_IN will fire an `animationcancel`\n * event for ANIMATION_IN after we have entered `unmountSuspended` state. So, we\n * make sure we only trigger ANIMATION_END for the currently active animation.\n */ const handleAnimationEnd = (event)=>{\n const currentAnimationName = $921a889cee6df7e8$var$getAnimationName(stylesRef.current);\n const isCurrentAnimation = currentAnimationName.includes(event.animationName);\n if (event.target === node1 && isCurrentAnimation) // a frame after the animation ends, creating a flash of visible content.\n // By manually flushing we ensure they sync within a frame, removing the flash.\n (0,react_dom__WEBPACK_IMPORTED_MODULE_1__.flushSync)(()=>send(\"ANIMATION_END\"));\n };\n const handleAnimationStart = (event)=>{\n if (event.target === node1) prevAnimationNameRef.current = $921a889cee6df7e8$var$getAnimationName(stylesRef.current);\n };\n node1.addEventListener(\"animationstart\", handleAnimationStart);\n node1.addEventListener(\"animationcancel\", handleAnimationEnd);\n node1.addEventListener(\"animationend\", handleAnimationEnd);\n return ()=>{\n node1.removeEventListener(\"animationstart\", handleAnimationStart);\n node1.removeEventListener(\"animationcancel\", handleAnimationEnd);\n node1.removeEventListener(\"animationend\", handleAnimationEnd);\n };\n } else // We avoid doing so during cleanup as the node may change but still exist.\n send(\"ANIMATION_END\");\n }, [\n node1,\n send\n ]);\n return {\n isPresent: [\n \"mounted\",\n \"unmountSuspended\"\n ].includes(state),\n ref: (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((node)=>{\n if (node) stylesRef.current = getComputedStyle(node);\n setNode(node);\n }, [])\n };\n}\n/* -----------------------------------------------------------------------------------------------*/ function $921a889cee6df7e8$var$getAnimationName(styles) {\n return (styles === null || styles === void 0 ? void 0 : styles.animationName) || \"none\";\n}\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXByZXNlbmNlL2Rpc3QvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQWdQO0FBQ3hMO0FBQytCO0FBQ0s7QUFPNUYsU0FBU29CLDBDQUEwQ0MsWUFBWSxFQUFFQyxPQUFPO0lBQ3BFLE9BQU9ULGlEQUFpQkEsQ0FBQyxDQUFDVSxPQUFPQztRQUM3QixNQUFNQyxZQUFZSCxPQUFPLENBQUNDLE1BQU0sQ0FBQ0MsTUFBTTtRQUN2QyxPQUFPQyxjQUFjLFFBQVFBLGNBQWMsS0FBSyxJQUFJQSxZQUFZRjtJQUNwRSxHQUFHRjtBQUNQO0FBR0EsTUFBTUssNENBQTRDLENBQUNDO0lBQy9DLE1BQU0sRUFBRUMsU0FBU0EsT0FBTyxFQUFHQyxVQUFVQSxRQUFRLEVBQUcsR0FBR0Y7SUFDbkQsTUFBTUcsV0FBV0Msa0NBQWtDSDtJQUNuRCxNQUFNSSxRQUFRLE9BQU9ILGFBQWEsYUFBYUEsU0FBUztRQUNwREQsU0FBU0UsU0FBU0csU0FBUztJQUMvQixLQUFLaEMsMkNBQWVBLENBQUNpQyxJQUFJLENBQUNMO0lBQzFCLE1BQU1NLE1BQU1sQiw2RUFBc0JBLENBQUNhLFNBQVNLLEdBQUcsRUFBRUgsTUFBTUcsR0FBRztJQUMxRCxNQUFNQyxhQUFhLE9BQU9QLGFBQWE7SUFDdkMsT0FBT08sY0FBY04sU0FBU0csU0FBUyxHQUFHLFdBQVcsR0FBRzlCLG1EQUFtQkEsQ0FBQzZCLE9BQU87UUFDL0VHLEtBQUtBO0lBQ1QsS0FBSztBQUNUO0FBQ0FULDBDQUEwQ1csV0FBVyxHQUFHO0FBQ3hEOztrR0FFa0csR0FBRyxTQUFTTixrQ0FBa0NILE9BQU87SUFDbkosTUFBTSxDQUFDVSxPQUFPQyxRQUFRLEdBQUdsQywrQ0FBZUE7SUFDeEMsTUFBTW1DLFlBQVlqQyw2Q0FBYUEsQ0FBQyxDQUFDO0lBQ2pDLE1BQU1rQyxpQkFBaUJsQyw2Q0FBYUEsQ0FBQ3FCO0lBQ3JDLE1BQU1jLHVCQUF1Qm5DLDZDQUFhQSxDQUFDO0lBQzNDLE1BQU1jLGVBQWVPLFVBQVUsWUFBWTtJQUMzQyxNQUFNLENBQUNMLE9BQU9vQixLQUFLLEdBQUd2QiwwQ0FBMENDLGNBQWM7UUFDMUV1QixTQUFTO1lBQ0xDLFNBQVM7WUFDVEMsZUFBZTtRQUNuQjtRQUNBQyxrQkFBa0I7WUFDZEMsT0FBTztZQUNQQyxlQUFlO1FBQ25CO1FBQ0FDLFdBQVc7WUFDUEYsT0FBTztRQUNYO0lBQ0o7SUFDQXZDLGdEQUFnQkEsQ0FBQztRQUNiLE1BQU0wQyx1QkFBdUJDLHVDQUF1Q1osVUFBVWEsT0FBTztRQUNyRlgscUJBQXFCVyxPQUFPLEdBQUc5QixVQUFVLFlBQVk0Qix1QkFBdUI7SUFDaEYsR0FBRztRQUNDNUI7S0FDSDtJQUNESixrRkFBc0JBLENBQUM7UUFDbkIsTUFBTW1DLFNBQVNkLFVBQVVhLE9BQU87UUFDaEMsTUFBTUUsYUFBYWQsZUFBZVksT0FBTztRQUN6QyxNQUFNRyxvQkFBb0JELGVBQWUzQjtRQUN6QyxJQUFJNEIsbUJBQW1CO1lBQ25CLE1BQU1DLG9CQUFvQmYscUJBQXFCVyxPQUFPO1lBQ3RELE1BQU1GLHVCQUF1QkMsdUNBQXVDRTtZQUNwRSxJQUFJMUIsU0FBU2UsS0FBSztpQkFDYixJQUFJUSx5QkFBeUIsVUFBVSxDQUFDRyxXQUFXLFFBQVFBLFdBQVcsS0FBSyxJQUFJLEtBQUssSUFBSUEsT0FBT0ksT0FBTyxNQUFNLFFBQ2pILDBCQUEwQjtZQUMxQmYsS0FBSztpQkFDQTtnQkFDRDs7Ozs7U0FLUCxHQUFHLE1BQU1nQixjQUFjRixzQkFBc0JOO2dCQUN0QyxJQUFJSSxjQUFjSSxhQUFhaEIsS0FBSztxQkFDL0JBLEtBQUs7WUFDZDtZQUNBRixlQUFlWSxPQUFPLEdBQUd6QjtRQUM3QjtJQUNKLEdBQUc7UUFDQ0E7UUFDQWU7S0FDSDtJQUNEeEIsa0ZBQXNCQSxDQUFDO1FBQ25CLElBQUltQixPQUFPO1lBQ1A7Ozs7T0FJTCxHQUFHLE1BQU1zQixxQkFBcUIsQ0FBQ3BDO2dCQUN0QixNQUFNMkIsdUJBQXVCQyx1Q0FBdUNaLFVBQVVhLE9BQU87Z0JBQ3JGLE1BQU1RLHFCQUFxQlYscUJBQXFCVyxRQUFRLENBQUN0QyxNQUFNdUMsYUFBYTtnQkFDNUUsSUFBSXZDLE1BQU13QyxNQUFNLEtBQUsxQixTQUFTdUIsb0JBQzlCLHlFQUF5RTtnQkFDekUsK0VBQStFO2dCQUMvRTlDLG9EQUFnQkEsQ0FBQyxJQUFJNEIsS0FBSztZQUU5QjtZQUNBLE1BQU1zQix1QkFBdUIsQ0FBQ3pDO2dCQUMxQixJQUFJQSxNQUFNd0MsTUFBTSxLQUFLMUIsT0FDckJJLHFCQUFxQlcsT0FBTyxHQUFHRCx1Q0FBdUNaLFVBQVVhLE9BQU87WUFDM0Y7WUFDQWYsTUFBTTRCLGdCQUFnQixDQUFDLGtCQUFrQkQ7WUFDekMzQixNQUFNNEIsZ0JBQWdCLENBQUMsbUJBQW1CTjtZQUMxQ3RCLE1BQU00QixnQkFBZ0IsQ0FBQyxnQkFBZ0JOO1lBQ3ZDLE9BQU87Z0JBQ0h0QixNQUFNNkIsbUJBQW1CLENBQUMsa0JBQWtCRjtnQkFDNUMzQixNQUFNNkIsbUJBQW1CLENBQUMsbUJBQW1CUDtnQkFDN0N0QixNQUFNNkIsbUJBQW1CLENBQUMsZ0JBQWdCUDtZQUM5QztRQUNKLE9BQ0EsMkVBQTJFO1FBQzNFakIsS0FBSztJQUNULEdBQUc7UUFDQ0w7UUFDQUs7S0FDSDtJQUNELE9BQU87UUFDSFYsV0FBVztZQUNQO1lBQ0E7U0FDSCxDQUFDNkIsUUFBUSxDQUFDdkM7UUFDWFksS0FBS3hCLGtEQUFrQkEsQ0FBQyxDQUFDeUQ7WUFDckIsSUFBSUEsTUFBTTVCLFVBQVVhLE9BQU8sR0FBR2dCLGlCQUFpQkQ7WUFDL0M3QixRQUFRNkI7UUFDWixHQUFHLEVBQUU7SUFDVDtBQUNKO0FBQ0Esa0dBQWtHLEdBQUcsU0FBU2hCLHVDQUF1Q0UsTUFBTTtJQUN2SixPQUFPLENBQUNBLFdBQVcsUUFBUUEsV0FBVyxLQUFLLElBQUksS0FBSyxJQUFJQSxPQUFPUyxhQUFhLEtBQUs7QUFDckY7QUFLK0QsQ0FDL0Qsa0NBQWtDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZW1iZWRjaGFpbi1hZG1pbi8uL25vZGVfbW9kdWxlcy9AcmFkaXgtdWkvcmVhY3QtcHJlc2VuY2UvZGlzdC9pbmRleC5tanM/OWM1MSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoaWxkcmVuIGFzICRpcXEzciRDaGlsZHJlbiwgY2xvbmVFbGVtZW50IGFzICRpcXEzciRjbG9uZUVsZW1lbnQsIHVzZVN0YXRlIGFzICRpcXEzciR1c2VTdGF0ZSwgdXNlUmVmIGFzICRpcXEzciR1c2VSZWYsIHVzZUVmZmVjdCBhcyAkaXFxM3IkdXNlRWZmZWN0LCB1c2VDYWxsYmFjayBhcyAkaXFxM3IkdXNlQ2FsbGJhY2ssIHVzZVJlZHVjZXIgYXMgJGlxcTNyJHVzZVJlZHVjZXJ9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHtmbHVzaFN5bmMgYXMgJGlxcTNyJGZsdXNoU3luY30gZnJvbSBcInJlYWN0LWRvbVwiO1xuaW1wb3J0IHt1c2VDb21wb3NlZFJlZnMgYXMgJGlxcTNyJHVzZUNvbXBvc2VkUmVmc30gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1jb21wb3NlLXJlZnNcIjtcbmltcG9ydCB7dXNlTGF5b3V0RWZmZWN0IGFzICRpcXEzciR1c2VMYXlvdXRFZmZlY3R9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtdXNlLWxheW91dC1lZmZlY3RcIjtcblxuXG5cblxuXG5cbmZ1bmN0aW9uICRmZTk2M2IzNTUzNDdjYzY4JGV4cG9ydCQzZTY1NDNkZTE0Zjg2MTRmKGluaXRpYWxTdGF0ZSwgbWFjaGluZSkge1xuICAgIHJldHVybiAkaXFxM3IkdXNlUmVkdWNlcigoc3RhdGUsIGV2ZW50KT0+e1xuICAgICAgICBjb25zdCBuZXh0U3RhdGUgPSBtYWNoaW5lW3N0YXRlXVtldmVudF07XG4gICAgICAgIHJldHVybiBuZXh0U3RhdGUgIT09IG51bGwgJiYgbmV4dFN0YXRlICE9PSB2b2lkIDAgPyBuZXh0U3RhdGUgOiBzdGF0ZTtcbiAgICB9LCBpbml0aWFsU3RhdGUpO1xufVxuXG5cbmNvbnN0ICQ5MjFhODg5Y2VlNmRmN2U4JGV4cG9ydCQ5OWMyYjc3OWFhNGU4YjhiID0gKHByb3BzKT0+e1xuICAgIGNvbnN0IHsgcHJlc2VudDogcHJlc2VudCAsIGNoaWxkcmVuOiBjaGlsZHJlbiAgfSA9IHByb3BzO1xuICAgIGNvbnN0IHByZXNlbmNlID0gJDkyMWE4ODljZWU2ZGY3ZTgkdmFyJHVzZVByZXNlbmNlKHByZXNlbnQpO1xuICAgIGNvbnN0IGNoaWxkID0gdHlwZW9mIGNoaWxkcmVuID09PSAnZnVuY3Rpb24nID8gY2hpbGRyZW4oe1xuICAgICAgICBwcmVzZW50OiBwcmVzZW5jZS5pc1ByZXNlbnRcbiAgICB9KSA6ICRpcXEzciRDaGlsZHJlbi5vbmx5KGNoaWxkcmVuKTtcbiAgICBjb25zdCByZWYgPSAkaXFxM3IkdXNlQ29tcG9zZWRSZWZzKHByZXNlbmNlLnJlZiwgY2hpbGQucmVmKTtcbiAgICBjb25zdCBmb3JjZU1vdW50ID0gdHlwZW9mIGNoaWxkcmVuID09PSAnZnVuY3Rpb24nO1xuICAgIHJldHVybiBmb3JjZU1vdW50IHx8IHByZXNlbmNlLmlzUHJlc2VudCA/IC8qI19fUFVSRV9fKi8gJGlxcTNyJGNsb25lRWxlbWVudChjaGlsZCwge1xuICAgICAgICByZWY6IHJlZlxuICAgIH0pIDogbnVsbDtcbn07XG4kOTIxYTg4OWNlZTZkZjdlOCRleHBvcnQkOTljMmI3NzlhYTRlOGI4Yi5kaXNwbGF5TmFtZSA9ICdQcmVzZW5jZSc7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiB1c2VQcmVzZW5jZVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBmdW5jdGlvbiAkOTIxYTg4OWNlZTZkZjdlOCR2YXIkdXNlUHJlc2VuY2UocHJlc2VudCkge1xuICAgIGNvbnN0IFtub2RlMSwgc2V0Tm9kZV0gPSAkaXFxM3IkdXNlU3RhdGUoKTtcbiAgICBjb25zdCBzdHlsZXNSZWYgPSAkaXFxM3IkdXNlUmVmKHt9KTtcbiAgICBjb25zdCBwcmV2UHJlc2VudFJlZiA9ICRpcXEzciR1c2VSZWYocHJlc2VudCk7XG4gICAgY29uc3QgcHJldkFuaW1hdGlvbk5hbWVSZWYgPSAkaXFxM3IkdXNlUmVmKCdub25lJyk7XG4gICAgY29uc3QgaW5pdGlhbFN0YXRlID0gcHJlc2VudCA/ICdtb3VudGVkJyA6ICd1bm1vdW50ZWQnO1xuICAgIGNvbnN0IFtzdGF0ZSwgc2VuZF0gPSAkZmU5NjNiMzU1MzQ3Y2M2OCRleHBvcnQkM2U2NTQzZGUxNGY4NjE0Zihpbml0aWFsU3RhdGUsIHtcbiAgICAgICAgbW91bnRlZDoge1xuICAgICAgICAgICAgVU5NT1VOVDogJ3VubW91bnRlZCcsXG4gICAgICAgICAgICBBTklNQVRJT05fT1VUOiAndW5tb3VudFN1c3BlbmRlZCdcbiAgICAgICAgfSxcbiAgICAgICAgdW5tb3VudFN1c3BlbmRlZDoge1xuICAgICAgICAgICAgTU9VTlQ6ICdtb3VudGVkJyxcbiAgICAgICAgICAgIEFOSU1BVElPTl9FTkQ6ICd1bm1vdW50ZWQnXG4gICAgICAgIH0sXG4gICAgICAgIHVubW91bnRlZDoge1xuICAgICAgICAgICAgTU9VTlQ6ICdtb3VudGVkJ1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgJGlxcTNyJHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBjb25zdCBjdXJyZW50QW5pbWF0aW9uTmFtZSA9ICQ5MjFhODg5Y2VlNmRmN2U4JHZhciRnZXRBbmltYXRpb25OYW1lKHN0eWxlc1JlZi5jdXJyZW50KTtcbiAgICAgICAgcHJldkFuaW1hdGlvbk5hbWVSZWYuY3VycmVudCA9IHN0YXRlID09PSAnbW91bnRlZCcgPyBjdXJyZW50QW5pbWF0aW9uTmFtZSA6ICdub25lJztcbiAgICB9LCBbXG4gICAgICAgIHN0YXRlXG4gICAgXSk7XG4gICAgJGlxcTNyJHVzZUxheW91dEVmZmVjdCgoKT0+e1xuICAgICAgICBjb25zdCBzdHlsZXMgPSBzdHlsZXNSZWYuY3VycmVudDtcbiAgICAgICAgY29uc3Qgd2FzUHJlc2VudCA9IHByZXZQcmVzZW50UmVmLmN1cnJlbnQ7XG4gICAgICAgIGNvbnN0IGhhc1ByZXNlbnRDaGFuZ2VkID0gd2FzUHJlc2VudCAhPT0gcHJlc2VudDtcbiAgICAgICAgaWYgKGhhc1ByZXNlbnRDaGFuZ2VkKSB7XG4gICAgICAgICAgICBjb25zdCBwcmV2QW5pbWF0aW9uTmFtZSA9IHByZXZBbmltYXRpb25OYW1lUmVmLmN1cnJlbnQ7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50QW5pbWF0aW9uTmFtZSA9ICQ5MjFhODg5Y2VlNmRmN2U4JHZhciRnZXRBbmltYXRpb25OYW1lKHN0eWxlcyk7XG4gICAgICAgICAgICBpZiAocHJlc2VudCkgc2VuZCgnTU9VTlQnKTtcbiAgICAgICAgICAgIGVsc2UgaWYgKGN1cnJlbnRBbmltYXRpb25OYW1lID09PSAnbm9uZScgfHwgKHN0eWxlcyA9PT0gbnVsbCB8fCBzdHlsZXMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN0eWxlcy5kaXNwbGF5KSA9PT0gJ25vbmUnKSAvLyBJZiB0aGVyZSBpcyBubyBleGl0IGFuaW1hdGlvbiBvciB0aGUgZWxlbWVudCBpcyBoaWRkZW4sIGFuaW1hdGlvbnMgd29uJ3QgcnVuXG4gICAgICAgICAgICAvLyBzbyB3ZSB1bm1vdW50IGluc3RhbnRseVxuICAgICAgICAgICAgc2VuZCgnVU5NT1VOVCcpO1xuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAqIFdoZW4gYHByZXNlbnRgIGNoYW5nZXMgdG8gYGZhbHNlYCwgd2UgY2hlY2sgY2hhbmdlcyB0byBhbmltYXRpb24tbmFtZSB0b1xuICAgICAgICAgKiBkZXRlcm1pbmUgd2hldGhlciBhbiBhbmltYXRpb24gaGFzIHN0YXJ0ZWQuIFdlIGNob3NlIHRoaXMgYXBwcm9hY2ggKHJlYWRpbmdcbiAgICAgICAgICogY29tcHV0ZWQgc3R5bGVzKSBiZWNhdXNlIHRoZXJlIGlzIG5vIGBhbmltYXRpb25ydW5gIGV2ZW50IGFuZCBgYW5pbWF0aW9uc3RhcnRgXG4gICAgICAgICAqIGZpcmVzIGFmdGVyIGBhbmltYXRpb24tZGVsYXlgIGhhcyBleHBpcmVkIHdoaWNoIHdvdWxkIGJlIHRvbyBsYXRlLlxuICAgICAgICAgKi8gY29uc3QgaXNBbmltYXRpbmcgPSBwcmV2QW5pbWF0aW9uTmFtZSAhPT0gY3VycmVudEFuaW1hdGlvbk5hbWU7XG4gICAgICAgICAgICAgICAgaWYgKHdhc1ByZXNlbnQgJiYgaXNBbmltYXRpbmcpIHNlbmQoJ0FOSU1BVElPTl9PVVQnKTtcbiAgICAgICAgICAgICAgICBlbHNlIHNlbmQoJ1VOTU9VTlQnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHByZXZQcmVzZW50UmVmLmN1cnJlbnQgPSBwcmVzZW50O1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBwcmVzZW50LFxuICAgICAgICBzZW5kXG4gICAgXSk7XG4gICAgJGlxcTNyJHVzZUxheW91dEVmZmVjdCgoKT0+e1xuICAgICAgICBpZiAobm9kZTEpIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICogVHJpZ2dlcmluZyBhbiBBTklNQVRJT05fT1VUIGR1cmluZyBhbiBBTklNQVRJT05fSU4gd2lsbCBmaXJlIGFuIGBhbmltYXRpb25jYW5jZWxgXG4gICAgICAgKiBldmVudCBmb3IgQU5JTUFUSU9OX0lOIGFmdGVyIHdlIGhhdmUgZW50ZXJlZCBgdW5tb3VudFN1c3BlbmRlZGAgc3RhdGUuIFNvLCB3ZVxuICAgICAgICogbWFrZSBzdXJlIHdlIG9ubHkgdHJpZ2dlciBBTklNQVRJT05fRU5EIGZvciB0aGUgY3VycmVudGx5IGFjdGl2ZSBhbmltYXRpb24uXG4gICAgICAgKi8gY29uc3QgaGFuZGxlQW5pbWF0aW9uRW5kID0gKGV2ZW50KT0+e1xuICAgICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRBbmltYXRpb25OYW1lID0gJDkyMWE4ODljZWU2ZGY3ZTgkdmFyJGdldEFuaW1hdGlvbk5hbWUoc3R5bGVzUmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGlzQ3VycmVudEFuaW1hdGlvbiA9IGN1cnJlbnRBbmltYXRpb25OYW1lLmluY2x1ZGVzKGV2ZW50LmFuaW1hdGlvbk5hbWUpO1xuICAgICAgICAgICAgICAgIGlmIChldmVudC50YXJnZXQgPT09IG5vZGUxICYmIGlzQ3VycmVudEFuaW1hdGlvbikgLy8gV2l0aCBSZWFjdCAxOCBjb25jdXJyZW5jeSB0aGlzIHVwZGF0ZSBpcyBhcHBsaWVkXG4gICAgICAgICAgICAgICAgLy8gYSBmcmFtZSBhZnRlciB0aGUgYW5pbWF0aW9uIGVuZHMsIGNyZWF0aW5nIGEgZmxhc2ggb2YgdmlzaWJsZSBjb250ZW50LlxuICAgICAgICAgICAgICAgIC8vIEJ5IG1hbnVhbGx5IGZsdXNoaW5nIHdlIGVuc3VyZSB0aGV5IHN5bmMgd2l0aGluIGEgZnJhbWUsIHJlbW92aW5nIHRoZSBmbGFzaC5cbiAgICAgICAgICAgICAgICAkaXFxM3IkZmx1c2hTeW5jKCgpPT5zZW5kKCdBTklNQVRJT05fRU5EJylcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUFuaW1hdGlvblN0YXJ0ID0gKGV2ZW50KT0+e1xuICAgICAgICAgICAgICAgIGlmIChldmVudC50YXJnZXQgPT09IG5vZGUxKSAvLyBpZiBhbmltYXRpb24gb2NjdXJyZWQsIHN0b3JlIGl0cyBuYW1lIGFzIHRoZSBwcmV2aW91cyBhbmltYXRpb24uXG4gICAgICAgICAgICAgICAgcHJldkFuaW1hdGlvbk5hbWVSZWYuY3VycmVudCA9ICQ5MjFhODg5Y2VlNmRmN2U4JHZhciRnZXRBbmltYXRpb25OYW1lKHN0eWxlc1JlZi5jdXJyZW50KTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBub2RlMS5hZGRFdmVudExpc3RlbmVyKCdhbmltYXRpb25zdGFydCcsIGhhbmRsZUFuaW1hdGlvblN0YXJ0KTtcbiAgICAgICAgICAgIG5vZGUxLmFkZEV2ZW50TGlzdGVuZXIoJ2FuaW1hdGlvbmNhbmNlbCcsIGhhbmRsZUFuaW1hdGlvbkVuZCk7XG4gICAgICAgICAgICBub2RlMS5hZGRFdmVudExpc3RlbmVyKCdhbmltYXRpb25lbmQnLCBoYW5kbGVBbmltYXRpb25FbmQpO1xuICAgICAgICAgICAgcmV0dXJuICgpPT57XG4gICAgICAgICAgICAgICAgbm9kZTEucmVtb3ZlRXZlbnRMaXN0ZW5lcignYW5pbWF0aW9uc3RhcnQnLCBoYW5kbGVBbmltYXRpb25TdGFydCk7XG4gICAgICAgICAgICAgICAgbm9kZTEucmVtb3ZlRXZlbnRMaXN0ZW5lcignYW5pbWF0aW9uY2FuY2VsJywgaGFuZGxlQW5pbWF0aW9uRW5kKTtcbiAgICAgICAgICAgICAgICBub2RlMS5yZW1vdmVFdmVudExpc3RlbmVyKCdhbmltYXRpb25lbmQnLCBoYW5kbGVBbmltYXRpb25FbmQpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfSBlbHNlIC8vIFRyYW5zaXRpb24gdG8gdGhlIHVubW91bnRlZCBzdGF0ZSBpZiB0aGUgbm9kZSBpcyByZW1vdmVkIHByZW1hdHVyZWx5LlxuICAgICAgICAvLyBXZSBhdm9pZCBkb2luZyBzbyBkdXJpbmcgY2xlYW51cCBhcyB0aGUgbm9kZSBtYXkgY2hhbmdlIGJ1dCBzdGlsbCBleGlzdC5cbiAgICAgICAgc2VuZCgnQU5JTUFUSU9OX0VORCcpO1xuICAgIH0sIFtcbiAgICAgICAgbm9kZTEsXG4gICAgICAgIHNlbmRcbiAgICBdKTtcbiAgICByZXR1cm4ge1xuICAgICAgICBpc1ByZXNlbnQ6IFtcbiAgICAgICAgICAgICdtb3VudGVkJyxcbiAgICAgICAgICAgICd1bm1vdW50U3VzcGVuZGVkJ1xuICAgICAgICBdLmluY2x1ZGVzKHN0YXRlKSxcbiAgICAgICAgcmVmOiAkaXFxM3IkdXNlQ2FsbGJhY2soKG5vZGUpPT57XG4gICAgICAgICAgICBpZiAobm9kZSkgc3R5bGVzUmVmLmN1cnJlbnQgPSBnZXRDb21wdXRlZFN0eWxlKG5vZGUpO1xuICAgICAgICAgICAgc2V0Tm9kZShub2RlKTtcbiAgICAgICAgfSwgW10pXG4gICAgfTtcbn1cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gZnVuY3Rpb24gJDkyMWE4ODljZWU2ZGY3ZTgkdmFyJGdldEFuaW1hdGlvbk5hbWUoc3R5bGVzKSB7XG4gICAgcmV0dXJuIChzdHlsZXMgPT09IG51bGwgfHwgc3R5bGVzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzdHlsZXMuYW5pbWF0aW9uTmFtZSkgfHwgJ25vbmUnO1xufVxuXG5cblxuXG5leHBvcnQgeyQ5MjFhODg5Y2VlNmRmN2U4JGV4cG9ydCQ5OWMyYjc3OWFhNGU4YjhiIGFzIFByZXNlbmNlfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4Lm1qcy5tYXBcbiJdLCJuYW1lcyI6WyJDaGlsZHJlbiIsIiRpcXEzciRDaGlsZHJlbiIsImNsb25lRWxlbWVudCIsIiRpcXEzciRjbG9uZUVsZW1lbnQiLCJ1c2VTdGF0ZSIsIiRpcXEzciR1c2VTdGF0ZSIsInVzZVJlZiIsIiRpcXEzciR1c2VSZWYiLCJ1c2VFZmZlY3QiLCIkaXFxM3IkdXNlRWZmZWN0IiwidXNlQ2FsbGJhY2siLCIkaXFxM3IkdXNlQ2FsbGJhY2siLCJ1c2VSZWR1Y2VyIiwiJGlxcTNyJHVzZVJlZHVjZXIiLCJmbHVzaFN5bmMiLCIkaXFxM3IkZmx1c2hTeW5jIiwidXNlQ29tcG9zZWRSZWZzIiwiJGlxcTNyJHVzZUNvbXBvc2VkUmVmcyIsInVzZUxheW91dEVmZmVjdCIsIiRpcXEzciR1c2VMYXlvdXRFZmZlY3QiLCIkZmU5NjNiMzU1MzQ3Y2M2OCRleHBvcnQkM2U2NTQzZGUxNGY4NjE0ZiIsImluaXRpYWxTdGF0ZSIsIm1hY2hpbmUiLCJzdGF0ZSIsImV2ZW50IiwibmV4dFN0YXRlIiwiJDkyMWE4ODljZWU2ZGY3ZTgkZXhwb3J0JDk5YzJiNzc5YWE0ZThiOGIiLCJwcm9wcyIsInByZXNlbnQiLCJjaGlsZHJlbiIsInByZXNlbmNlIiwiJDkyMWE4ODljZWU2ZGY3ZTgkdmFyJHVzZVByZXNlbmNlIiwiY2hpbGQiLCJpc1ByZXNlbnQiLCJvbmx5IiwicmVmIiwiZm9yY2VNb3VudCIsImRpc3BsYXlOYW1lIiwibm9kZTEiLCJzZXROb2RlIiwic3R5bGVzUmVmIiwicHJldlByZXNlbnRSZWYiLCJwcmV2QW5pbWF0aW9uTmFtZVJlZiIsInNlbmQiLCJtb3VudGVkIiwiVU5NT1VOVCIsIkFOSU1BVElPTl9PVVQiLCJ1bm1vdW50U3VzcGVuZGVkIiwiTU9VTlQiLCJBTklNQVRJT05fRU5EIiwidW5tb3VudGVkIiwiY3VycmVudEFuaW1hdGlvbk5hbWUiLCIkOTIxYTg4OWNlZTZkZjdlOCR2YXIkZ2V0QW5pbWF0aW9uTmFtZSIsImN1cnJlbnQiLCJzdHlsZXMiLCJ3YXNQcmVzZW50IiwiaGFzUHJlc2VudENoYW5nZWQiLCJwcmV2QW5pbWF0aW9uTmFtZSIsImRpc3BsYXkiLCJpc0FuaW1hdGluZyIsImhhbmRsZUFuaW1hdGlvbkVuZCIsImlzQ3VycmVudEFuaW1hdGlvbiIsImluY2x1ZGVzIiwiYW5pbWF0aW9uTmFtZSIsInRhcmdldCIsImhhbmRsZUFuaW1hdGlvblN0YXJ0IiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJub2RlIiwiZ2V0Q29tcHV0ZWRTdHlsZSIsIlByZXNlbmNlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-presence/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs": /*!***************************************************************!*\ !*** ./node_modules/@radix-ui/react-primitive/dist/index.mjs ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Primitive: () => (/* binding */ $8927f6f2acc4f386$export$250ffa63cdc0d034),\n/* harmony export */ Root: () => (/* binding */ $8927f6f2acc4f386$export$be92b6f5f03c0fe9),\n/* harmony export */ dispatchDiscreteCustomEvent: () => (/* binding */ $8927f6f2acc4f386$export$6d1a0317bde7de7f)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-dom */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-dom.js\");\n/* harmony import */ var _radix_ui_react_slot__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-slot */ \"(ssr)/./node_modules/@radix-ui/react-slot/dist/index.mjs\");\n\n\n\n\nconst $8927f6f2acc4f386$var$NODES = [\n \"a\",\n \"button\",\n \"div\",\n \"form\",\n \"h2\",\n \"h3\",\n \"img\",\n \"input\",\n \"label\",\n \"li\",\n \"nav\",\n \"ol\",\n \"p\",\n \"span\",\n \"svg\",\n \"ul\"\n]; // Temporary while we await merge of this fix:\n// https://github.com/DefinitelyTyped/DefinitelyTyped/pull/55396\n// prettier-ignore\n/* -------------------------------------------------------------------------------------------------\n * Primitive\n * -----------------------------------------------------------------------------------------------*/ const $8927f6f2acc4f386$export$250ffa63cdc0d034 = $8927f6f2acc4f386$var$NODES.reduce((primitive, node)=>{\n const Node = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { asChild: asChild, ...primitiveProps } = props;\n const Comp = asChild ? _radix_ui_react_slot__WEBPACK_IMPORTED_MODULE_3__.Slot : node;\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n window[Symbol.for(\"radix-ui\")] = true;\n }, []);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(Comp, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, primitiveProps, {\n ref: forwardedRef\n }));\n });\n Node.displayName = `Primitive.${node}`;\n return {\n ...primitive,\n [node]: Node\n };\n}, {});\n/* -------------------------------------------------------------------------------------------------\n * Utils\n * -----------------------------------------------------------------------------------------------*/ /**\n * Flush custom event dispatch\n * https://github.com/radix-ui/primitives/pull/1378\n *\n * React batches *all* event handlers since version 18, this introduces certain considerations when using custom event types.\n *\n * Internally, React prioritises events in the following order:\n * - discrete\n * - continuous\n * - default\n *\n * https://github.com/facebook/react/blob/a8a4742f1c54493df00da648a3f9d26e3db9c8b5/packages/react-dom/src/events/ReactDOMEventListener.js#L294-L350\n *\n * `discrete` is an important distinction as updates within these events are applied immediately.\n * React however, is not able to infer the priority of custom event types due to how they are detected internally.\n * Because of this, it's possible for updates from custom events to be unexpectedly batched when\n * dispatched by another `discrete` event.\n *\n * In order to ensure that updates from custom events are applied predictably, we need to manually flush the batch.\n * This utility should be used when dispatching a custom event from within another `discrete` event, this utility\n * is not nessesary when dispatching known event types, or if dispatching a custom type inside a non-discrete event.\n * For example:\n *\n * dispatching a known click 👎\n * target.dispatchEvent(new Event(‘click’))\n *\n * dispatching a custom type within a non-discrete event 👎\n * onScroll={(event) => event.target.dispatchEvent(new CustomEvent(‘customType’))}\n *\n * dispatching a custom type within a `discrete` event 👍\n * onPointerDown={(event) => dispatchDiscreteCustomEvent(event.target, new CustomEvent(‘customType’))}\n *\n * Note: though React classifies `focus`, `focusin` and `focusout` events as `discrete`, it's not recommended to use\n * this utility with them. This is because it's possible for those handlers to be called implicitly during render\n * e.g. when focus is within a component as it is unmounted, or when managing focus on mount.\n */ function $8927f6f2acc4f386$export$6d1a0317bde7de7f(target, event) {\n if (target) (0,react_dom__WEBPACK_IMPORTED_MODULE_2__.flushSync)(()=>target.dispatchEvent(event));\n}\n/* -----------------------------------------------------------------------------------------------*/ const $8927f6f2acc4f386$export$be92b6f5f03c0fe9 = $8927f6f2acc4f386$export$250ffa63cdc0d034;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXByaW1pdGl2ZS9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQXNGO0FBQ3NDO0FBQ3BFO0FBQ0M7QUFNekQsTUFBTVcsOEJBQThCO0lBQ2hDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0NBQ0gsRUFBRSw4Q0FBOEM7QUFDakQsZ0VBQWdFO0FBQ2hFLGtCQUFrQjtBQUNsQjs7a0dBRWtHLEdBQUcsTUFBTUMsNENBQTRDRCw0QkFBNEJFLE1BQU0sQ0FBQyxDQUFDQyxXQUFXQztJQUNsTSxNQUFNQyxPQUFPLFdBQVcsR0FBR2QsaURBQWlCQSxDQUFDLENBQUNlLE9BQU9DO1FBQ2pELE1BQU0sRUFBRUMsU0FBU0EsT0FBTyxFQUFHLEdBQUdDLGdCQUFnQixHQUFHSDtRQUNqRCxNQUFNSSxPQUFPRixVQUFVVCxzREFBV0EsR0FBR0s7UUFDckNYLGdEQUFnQkEsQ0FBQztZQUNia0IsTUFBTSxDQUFDQyxPQUFPQyxHQUFHLENBQUMsWUFBWSxHQUFHO1FBQ3JDLEdBQUcsRUFBRTtRQUNMLE9BQU8sV0FBVyxHQUFHbEIsb0RBQW9CQSxDQUFDZSxNQUFNckIsOEVBQW9DQSxDQUFDLENBQUMsR0FBR29CLGdCQUFnQjtZQUNyR0ssS0FBS1A7UUFDVDtJQUNKO0lBQ0FGLEtBQUtVLFdBQVcsR0FBRyxDQUFDLFVBQVUsRUFBRVgsS0FBSyxDQUFDO0lBQ3RDLE9BQU87UUFDSCxHQUFHRCxTQUFTO1FBQ1osQ0FBQ0MsS0FBSyxFQUFFQztJQUNaO0FBQ0osR0FBRyxDQUFDO0FBQ0o7O2tHQUVrRyxHQUFHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQW1DcEcsR0FBRyxTQUFTVywwQ0FBMENDLE1BQU0sRUFBRUMsS0FBSztJQUNoRSxJQUFJRCxRQUFRcEIsb0RBQWdCQSxDQUFDLElBQUlvQixPQUFPRSxhQUFhLENBQUNEO0FBRTFEO0FBQ0Esa0dBQWtHLEdBQUcsTUFBTUUsNENBQTRDbkI7QUFLc0MsQ0FDN0wsa0NBQWtDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZW1iZWRjaGFpbi1hZG1pbi8uL25vZGVfbW9kdWxlcy9AcmFkaXgtdWkvcmVhY3QtcHJpbWl0aXZlL2Rpc3QvaW5kZXgubWpzPzcxZmQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICQ0cTVGcSRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZXh0ZW5kc1wiO1xuaW1wb3J0IHtmb3J3YXJkUmVmIGFzICQ0cTVGcSRmb3J3YXJkUmVmLCB1c2VFZmZlY3QgYXMgJDRxNUZxJHVzZUVmZmVjdCwgY3JlYXRlRWxlbWVudCBhcyAkNHE1RnEkY3JlYXRlRWxlbWVudH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQge2ZsdXNoU3luYyBhcyAkNHE1RnEkZmx1c2hTeW5jfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQge1Nsb3QgYXMgJDRxNUZxJFNsb3R9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3Qtc2xvdFwiO1xuXG5cblxuXG5cbmNvbnN0ICQ4OTI3ZjZmMmFjYzRmMzg2JHZhciROT0RFUyA9IFtcbiAgICAnYScsXG4gICAgJ2J1dHRvbicsXG4gICAgJ2RpdicsXG4gICAgJ2Zvcm0nLFxuICAgICdoMicsXG4gICAgJ2gzJyxcbiAgICAnaW1nJyxcbiAgICAnaW5wdXQnLFxuICAgICdsYWJlbCcsXG4gICAgJ2xpJyxcbiAgICAnbmF2JyxcbiAgICAnb2wnLFxuICAgICdwJyxcbiAgICAnc3BhbicsXG4gICAgJ3N2ZycsXG4gICAgJ3VsJ1xuXTsgLy8gVGVtcG9yYXJ5IHdoaWxlIHdlIGF3YWl0IG1lcmdlIG9mIHRoaXMgZml4OlxuLy8gaHR0cHM6Ly9naXRodWIuY29tL0RlZmluaXRlbHlUeXBlZC9EZWZpbml0ZWx5VHlwZWQvcHVsbC81NTM5NlxuLy8gcHJldHRpZXItaWdub3JlXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBQcmltaXRpdmVcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDg5MjdmNmYyYWNjNGYzODYkZXhwb3J0JDI1MGZmYTYzY2RjMGQwMzQgPSAkODkyN2Y2ZjJhY2M0ZjM4NiR2YXIkTk9ERVMucmVkdWNlKChwcmltaXRpdmUsIG5vZGUpPT57XG4gICAgY29uc3QgTm9kZSA9IC8qI19fUFVSRV9fKi8gJDRxNUZxJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgICAgIGNvbnN0IHsgYXNDaGlsZDogYXNDaGlsZCAsIC4uLnByaW1pdGl2ZVByb3BzIH0gPSBwcm9wcztcbiAgICAgICAgY29uc3QgQ29tcCA9IGFzQ2hpbGQgPyAkNHE1RnEkU2xvdCA6IG5vZGU7XG4gICAgICAgICQ0cTVGcSR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgICAgIHdpbmRvd1tTeW1ib2wuZm9yKCdyYWRpeC11aScpXSA9IHRydWU7XG4gICAgICAgIH0sIFtdKTtcbiAgICAgICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDRxNUZxJGNyZWF0ZUVsZW1lbnQoQ29tcCwgJDRxNUZxJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBwcmltaXRpdmVQcm9wcywge1xuICAgICAgICAgICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgICAgICAgfSkpO1xuICAgIH0pO1xuICAgIE5vZGUuZGlzcGxheU5hbWUgPSBgUHJpbWl0aXZlLiR7bm9kZX1gO1xuICAgIHJldHVybiB7XG4gICAgICAgIC4uLnByaW1pdGl2ZSxcbiAgICAgICAgW25vZGVdOiBOb2RlXG4gICAgfTtcbn0sIHt9KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFV0aWxzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIC8qKlxuICogRmx1c2ggY3VzdG9tIGV2ZW50IGRpc3BhdGNoXG4gKiBodHRwczovL2dpdGh1Yi5jb20vcmFkaXgtdWkvcHJpbWl0aXZlcy9wdWxsLzEzNzhcbiAqXG4gKiBSZWFjdCBiYXRjaGVzICphbGwqIGV2ZW50IGhhbmRsZXJzIHNpbmNlIHZlcnNpb24gMTgsIHRoaXMgaW50cm9kdWNlcyBjZXJ0YWluIGNvbnNpZGVyYXRpb25zIHdoZW4gdXNpbmcgY3VzdG9tIGV2ZW50IHR5cGVzLlxuICpcbiAqIEludGVybmFsbHksIFJlYWN0IHByaW9yaXRpc2VzIGV2ZW50cyBpbiB0aGUgZm9sbG93aW5nIG9yZGVyOlxuICogIC0gZGlzY3JldGVcbiAqICAtIGNvbnRpbnVvdXNcbiAqICAtIGRlZmF1bHRcbiAqXG4gKiBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svcmVhY3QvYmxvYi9hOGE0NzQyZjFjNTQ0OTNkZjAwZGE2NDhhM2Y5ZDI2ZTNkYjljOGI1L3BhY2thZ2VzL3JlYWN0LWRvbS9zcmMvZXZlbnRzL1JlYWN0RE9NRXZlbnRMaXN0ZW5lci5qcyNMMjk0LUwzNTBcbiAqXG4gKiBgZGlzY3JldGVgIGlzIGFuICBpbXBvcnRhbnQgZGlzdGluY3Rpb24gYXMgdXBkYXRlcyB3aXRoaW4gdGhlc2UgZXZlbnRzIGFyZSBhcHBsaWVkIGltbWVkaWF0ZWx5LlxuICogUmVhY3QgaG93ZXZlciwgaXMgbm90IGFibGUgdG8gaW5mZXIgdGhlIHByaW9yaXR5IG9mIGN1c3RvbSBldmVudCB0eXBlcyBkdWUgdG8gaG93IHRoZXkgYXJlIGRldGVjdGVkIGludGVybmFsbHkuXG4gKiBCZWNhdXNlIG9mIHRoaXMsIGl0J3MgcG9zc2libGUgZm9yIHVwZGF0ZXMgZnJvbSBjdXN0b20gZXZlbnRzIHRvIGJlIHVuZXhwZWN0ZWRseSBiYXRjaGVkIHdoZW5cbiAqIGRpc3BhdGNoZWQgYnkgYW5vdGhlciBgZGlzY3JldGVgIGV2ZW50LlxuICpcbiAqIEluIG9yZGVyIHRvIGVuc3VyZSB0aGF0IHVwZGF0ZXMgZnJvbSBjdXN0b20gZXZlbnRzIGFyZSBhcHBsaWVkIHByZWRpY3RhYmx5LCB3ZSBuZWVkIHRvIG1hbnVhbGx5IGZsdXNoIHRoZSBiYXRjaC5cbiAqIFRoaXMgdXRpbGl0eSBzaG91bGQgYmUgdXNlZCB3aGVuIGRpc3BhdGNoaW5nIGEgY3VzdG9tIGV2ZW50IGZyb20gd2l0aGluIGFub3RoZXIgYGRpc2NyZXRlYCBldmVudCwgdGhpcyB1dGlsaXR5XG4gKiBpcyBub3QgbmVzc2VzYXJ5IHdoZW4gZGlzcGF0Y2hpbmcga25vd24gZXZlbnQgdHlwZXMsIG9yIGlmIGRpc3BhdGNoaW5nIGEgY3VzdG9tIHR5cGUgaW5zaWRlIGEgbm9uLWRpc2NyZXRlIGV2ZW50LlxuICogRm9yIGV4YW1wbGU6XG4gKlxuICogZGlzcGF0Y2hpbmcgYSBrbm93biBjbGljayDwn5GOXG4gKiB0YXJnZXQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQo4oCYY2xpY2vigJkpKVxuICpcbiAqIGRpc3BhdGNoaW5nIGEgY3VzdG9tIHR5cGUgd2l0aGluIGEgbm9uLWRpc2NyZXRlIGV2ZW50IPCfkY5cbiAqIG9uU2Nyb2xsPXsoZXZlbnQpID0+IGV2ZW50LnRhcmdldC5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCjigJhjdXN0b21UeXBl4oCZKSl9XG4gKlxuICogZGlzcGF0Y2hpbmcgYSBjdXN0b20gdHlwZSB3aXRoaW4gYSBgZGlzY3JldGVgIGV2ZW50IPCfkY1cbiAqIG9uUG9pbnRlckRvd249eyhldmVudCkgPT4gZGlzcGF0Y2hEaXNjcmV0ZUN1c3RvbUV2ZW50KGV2ZW50LnRhcmdldCwgbmV3IEN1c3RvbUV2ZW50KOKAmGN1c3RvbVR5cGXigJkpKX1cbiAqXG4gKiBOb3RlOiB0aG91Z2ggUmVhY3QgY2xhc3NpZmllcyBgZm9jdXNgLCBgZm9jdXNpbmAgYW5kIGBmb2N1c291dGAgZXZlbnRzIGFzIGBkaXNjcmV0ZWAsIGl0J3MgIG5vdCByZWNvbW1lbmRlZCB0byB1c2VcbiAqIHRoaXMgdXRpbGl0eSB3aXRoIHRoZW0uIFRoaXMgaXMgYmVjYXVzZSBpdCdzIHBvc3NpYmxlIGZvciB0aG9zZSBoYW5kbGVycyB0byBiZSBjYWxsZWQgaW1wbGljaXRseSBkdXJpbmcgcmVuZGVyXG4gKiBlLmcuIHdoZW4gZm9jdXMgaXMgd2l0aGluIGEgY29tcG9uZW50IGFzIGl0IGlzIHVubW91bnRlZCwgb3Igd2hlbiBtYW5hZ2luZyBmb2N1cyBvbiBtb3VudC5cbiAqLyBmdW5jdGlvbiAkODkyN2Y2ZjJhY2M0ZjM4NiRleHBvcnQkNmQxYTAzMTdiZGU3ZGU3Zih0YXJnZXQsIGV2ZW50KSB7XG4gICAgaWYgKHRhcmdldCkgJDRxNUZxJGZsdXNoU3luYygoKT0+dGFyZ2V0LmRpc3BhdGNoRXZlbnQoZXZlbnQpXG4gICAgKTtcbn1cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDg5MjdmNmYyYWNjNGYzODYkZXhwb3J0JGJlOTJiNmY1ZjAzYzBmZTkgPSAkODkyN2Y2ZjJhY2M0ZjM4NiRleHBvcnQkMjUwZmZhNjNjZGMwZDAzNDtcblxuXG5cblxuZXhwb3J0IHskODkyN2Y2ZjJhY2M0ZjM4NiRleHBvcnQkMjUwZmZhNjNjZGMwZDAzNCBhcyBQcmltaXRpdmUsICQ4OTI3ZjZmMmFjYzRmMzg2JGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IGFzIFJvb3QsICQ4OTI3ZjZmMmFjYzRmMzg2JGV4cG9ydCQ2ZDFhMDMxN2JkZTdkZTdmIGFzIGRpc3BhdGNoRGlzY3JldGVDdXN0b21FdmVudH07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5tanMubWFwXG4iXSwibmFtZXMiOlsiJDRxNUZxJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIiwiZm9yd2FyZFJlZiIsIiQ0cTVGcSRmb3J3YXJkUmVmIiwidXNlRWZmZWN0IiwiJDRxNUZxJHVzZUVmZmVjdCIsImNyZWF0ZUVsZW1lbnQiLCIkNHE1RnEkY3JlYXRlRWxlbWVudCIsImZsdXNoU3luYyIsIiQ0cTVGcSRmbHVzaFN5bmMiLCJTbG90IiwiJDRxNUZxJFNsb3QiLCIkODkyN2Y2ZjJhY2M0ZjM4NiR2YXIkTk9ERVMiLCIkODkyN2Y2ZjJhY2M0ZjM4NiRleHBvcnQkMjUwZmZhNjNjZGMwZDAzNCIsInJlZHVjZSIsInByaW1pdGl2ZSIsIm5vZGUiLCJOb2RlIiwicHJvcHMiLCJmb3J3YXJkZWRSZWYiLCJhc0NoaWxkIiwicHJpbWl0aXZlUHJvcHMiLCJDb21wIiwid2luZG93IiwiU3ltYm9sIiwiZm9yIiwicmVmIiwiZGlzcGxheU5hbWUiLCIkODkyN2Y2ZjJhY2M0ZjM4NiRleHBvcnQkNmQxYTAzMTdiZGU3ZGU3ZiIsInRhcmdldCIsImV2ZW50IiwiZGlzcGF0Y2hFdmVudCIsIiQ4OTI3ZjZmMmFjYzRmMzg2JGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IiwiUHJpbWl0aXZlIiwiUm9vdCIsImRpc3BhdGNoRGlzY3JldGVDdXN0b21FdmVudCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-scroll-area/dist/index.mjs": /*!*****************************************************************!*\ !*** ./node_modules/@radix-ui/react-scroll-area/dist/index.mjs ***! \*****************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Corner: () => (/* binding */ $57acba87d6e25586$export$ac61190d9fc311a9),\n/* harmony export */ Root: () => (/* binding */ $57acba87d6e25586$export$be92b6f5f03c0fe9),\n/* harmony export */ ScrollArea: () => (/* binding */ $57acba87d6e25586$export$ccf8d8d7bbf3c2cc),\n/* harmony export */ ScrollAreaCorner: () => (/* binding */ $57acba87d6e25586$export$56969d565df7cc4b),\n/* harmony export */ ScrollAreaScrollbar: () => (/* binding */ $57acba87d6e25586$export$2fabd85d0eba3c57),\n/* harmony export */ ScrollAreaThumb: () => (/* binding */ $57acba87d6e25586$export$9fba1154677d7cd2),\n/* harmony export */ ScrollAreaViewport: () => (/* binding */ $57acba87d6e25586$export$a21cbf9f11fca853),\n/* harmony export */ Scrollbar: () => (/* binding */ $57acba87d6e25586$export$9a4e88b92edfce6b),\n/* harmony export */ Thumb: () => (/* binding */ $57acba87d6e25586$export$6521433ed15a34db),\n/* harmony export */ Viewport: () => (/* binding */ $57acba87d6e25586$export$d5c6c08dc2d3ca7),\n/* harmony export */ createScrollAreaScope: () => (/* binding */ $57acba87d6e25586$export$488468afe3a6f2b1)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_presence__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @radix-ui/react-presence */ \"(ssr)/./node_modules/@radix-ui/react-presence/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_context__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-context */ \"(ssr)/./node_modules/@radix-ui/react-context/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-compose-refs */ \"(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @radix-ui/react-use-callback-ref */ \"(ssr)/./node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_direction__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @radix-ui/react-direction */ \"(ssr)/./node_modules/@radix-ui/react-direction/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @radix-ui/react-use-layout-effect */ \"(ssr)/./node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs\");\n/* harmony import */ var _radix_ui_number__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @radix-ui/number */ \"(ssr)/./node_modules/@radix-ui/number/dist/index.mjs\");\n/* harmony import */ var _radix_ui_primitive__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @radix-ui/primitive */ \"(ssr)/./node_modules/@radix-ui/primitive/dist/index.mjs\");\n\n\n\n\n\n\n\n\n\n\n\nfunction $6c2e24571c90391f$export$3e6543de14f8614f(initialState, machine) {\n return (0,react__WEBPACK_IMPORTED_MODULE_1__.useReducer)((state, event)=>{\n const nextState = machine[state][event];\n return nextState !== null && nextState !== void 0 ? nextState : state;\n }, initialState);\n}\n/* -------------------------------------------------------------------------------------------------\n * ScrollArea\n * -----------------------------------------------------------------------------------------------*/ const $57acba87d6e25586$var$SCROLL_AREA_NAME = \"ScrollArea\";\nconst [$57acba87d6e25586$var$createScrollAreaContext, $57acba87d6e25586$export$488468afe3a6f2b1] = (0,_radix_ui_react_context__WEBPACK_IMPORTED_MODULE_2__.createContextScope)($57acba87d6e25586$var$SCROLL_AREA_NAME);\nconst [$57acba87d6e25586$var$ScrollAreaProvider, $57acba87d6e25586$var$useScrollAreaContext] = $57acba87d6e25586$var$createScrollAreaContext($57acba87d6e25586$var$SCROLL_AREA_NAME);\nconst $57acba87d6e25586$export$ccf8d8d7bbf3c2cc = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeScrollArea: __scopeScrollArea, type: type = \"hover\", dir: dir, scrollHideDelay: scrollHideDelay = 600, ...scrollAreaProps } = props;\n const [scrollArea, setScrollArea] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [viewport, setViewport] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [content, setContent] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [scrollbarX, setScrollbarX] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [scrollbarY, setScrollbarY] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [cornerWidth, setCornerWidth] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(0);\n const [cornerHeight, setCornerHeight] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(0);\n const [scrollbarXEnabled, setScrollbarXEnabled] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [scrollbarYEnabled, setScrollbarYEnabled] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_3__.useComposedRefs)(forwardedRef, (node)=>setScrollArea(node));\n const direction = (0,_radix_ui_react_direction__WEBPACK_IMPORTED_MODULE_4__.useDirection)(dir);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollAreaProvider, {\n scope: __scopeScrollArea,\n type: type,\n dir: direction,\n scrollHideDelay: scrollHideDelay,\n scrollArea: scrollArea,\n viewport: viewport,\n onViewportChange: setViewport,\n content: content,\n onContentChange: setContent,\n scrollbarX: scrollbarX,\n onScrollbarXChange: setScrollbarX,\n scrollbarXEnabled: scrollbarXEnabled,\n onScrollbarXEnabledChange: setScrollbarXEnabled,\n scrollbarY: scrollbarY,\n onScrollbarYChange: setScrollbarY,\n scrollbarYEnabled: scrollbarYEnabled,\n onScrollbarYEnabledChange: setScrollbarYEnabled,\n onCornerWidthChange: setCornerWidth,\n onCornerHeightChange: setCornerHeight\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_5__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n dir: direction\n }, scrollAreaProps, {\n ref: composedRefs,\n style: {\n position: \"relative\",\n // Pass corner sizes as CSS vars to reduce re-renders of context consumers\n [\"--radix-scroll-area-corner-width\"]: cornerWidth + \"px\",\n [\"--radix-scroll-area-corner-height\"]: cornerHeight + \"px\",\n ...props.style\n }\n })));\n});\n/*#__PURE__*/ Object.assign($57acba87d6e25586$export$ccf8d8d7bbf3c2cc, {\n displayName: $57acba87d6e25586$var$SCROLL_AREA_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * ScrollAreaViewport\n * -----------------------------------------------------------------------------------------------*/ const $57acba87d6e25586$var$VIEWPORT_NAME = \"ScrollAreaViewport\";\nconst $57acba87d6e25586$export$a21cbf9f11fca853 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeScrollArea: __scopeScrollArea, children: children, ...viewportProps } = props;\n const context = $57acba87d6e25586$var$useScrollAreaContext($57acba87d6e25586$var$VIEWPORT_NAME, __scopeScrollArea);\n const ref = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_3__.useComposedRefs)(forwardedRef, ref, context.onViewportChange);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(\"style\", {\n dangerouslySetInnerHTML: {\n __html: `[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}`\n }\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_5__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"data-radix-scroll-area-viewport\": \"\"\n }, viewportProps, {\n ref: composedRefs,\n style: {\n /**\n * We don't support `visible` because the intention is to have at least one scrollbar\n * if this component is used and `visible` will behave like `auto` in that case\n * https://developer.mozilla.org/en-US/docs/Web/CSS/overflowed#description\n *\n * We don't handle `auto` because the intention is for the native implementation\n * to be hidden if using this component. We just want to ensure the node is scrollable\n * so could have used either `scroll` or `auto` here. We picked `scroll` to prevent\n * the browser from having to work out whether to render native scrollbars or not,\n * we tell it to with the intention of hiding them in CSS.\n */ overflowX: context.scrollbarXEnabled ? \"scroll\" : \"hidden\",\n overflowY: context.scrollbarYEnabled ? \"scroll\" : \"hidden\",\n ...props.style\n }\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(\"div\", {\n ref: context.onContentChange,\n style: {\n minWidth: \"100%\",\n display: \"table\"\n }\n }, children)));\n});\n/*#__PURE__*/ Object.assign($57acba87d6e25586$export$a21cbf9f11fca853, {\n displayName: $57acba87d6e25586$var$VIEWPORT_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * ScrollAreaScrollbar\n * -----------------------------------------------------------------------------------------------*/ const $57acba87d6e25586$var$SCROLLBAR_NAME = \"ScrollAreaScrollbar\";\nconst $57acba87d6e25586$export$2fabd85d0eba3c57 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { forceMount: forceMount, ...scrollbarProps } = props;\n const context = $57acba87d6e25586$var$useScrollAreaContext($57acba87d6e25586$var$SCROLLBAR_NAME, props.__scopeScrollArea);\n const { onScrollbarXEnabledChange: onScrollbarXEnabledChange, onScrollbarYEnabledChange: onScrollbarYEnabledChange } = context;\n const isHorizontal = props.orientation === \"horizontal\";\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n isHorizontal ? onScrollbarXEnabledChange(true) : onScrollbarYEnabledChange(true);\n return ()=>{\n isHorizontal ? onScrollbarXEnabledChange(false) : onScrollbarYEnabledChange(false);\n };\n }, [\n isHorizontal,\n onScrollbarXEnabledChange,\n onScrollbarYEnabledChange\n ]);\n return context.type === \"hover\" ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollAreaScrollbarHover, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, scrollbarProps, {\n ref: forwardedRef,\n forceMount: forceMount\n })) : context.type === \"scroll\" ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollAreaScrollbarScroll, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, scrollbarProps, {\n ref: forwardedRef,\n forceMount: forceMount\n })) : context.type === \"auto\" ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollAreaScrollbarAuto, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, scrollbarProps, {\n ref: forwardedRef,\n forceMount: forceMount\n })) : context.type === \"always\" ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollAreaScrollbarVisible, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, scrollbarProps, {\n ref: forwardedRef\n })) : null;\n});\n/*#__PURE__*/ Object.assign($57acba87d6e25586$export$2fabd85d0eba3c57, {\n displayName: $57acba87d6e25586$var$SCROLLBAR_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ const $57acba87d6e25586$var$ScrollAreaScrollbarHover = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { forceMount: forceMount, ...scrollbarProps } = props;\n const context = $57acba87d6e25586$var$useScrollAreaContext($57acba87d6e25586$var$SCROLLBAR_NAME, props.__scopeScrollArea);\n const [visible, setVisible] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const scrollArea = context.scrollArea;\n let hideTimer = 0;\n if (scrollArea) {\n const handlePointerEnter = ()=>{\n window.clearTimeout(hideTimer);\n setVisible(true);\n };\n const handlePointerLeave = ()=>{\n hideTimer = window.setTimeout(()=>setVisible(false), context.scrollHideDelay);\n };\n scrollArea.addEventListener(\"pointerenter\", handlePointerEnter);\n scrollArea.addEventListener(\"pointerleave\", handlePointerLeave);\n return ()=>{\n window.clearTimeout(hideTimer);\n scrollArea.removeEventListener(\"pointerenter\", handlePointerEnter);\n scrollArea.removeEventListener(\"pointerleave\", handlePointerLeave);\n };\n }\n }, [\n context.scrollArea,\n context.scrollHideDelay\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_presence__WEBPACK_IMPORTED_MODULE_6__.Presence, {\n present: forceMount || visible\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollAreaScrollbarAuto, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"data-state\": visible ? \"visible\" : \"hidden\"\n }, scrollbarProps, {\n ref: forwardedRef\n })));\n});\nconst $57acba87d6e25586$var$ScrollAreaScrollbarScroll = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { forceMount: forceMount, ...scrollbarProps } = props;\n const context = $57acba87d6e25586$var$useScrollAreaContext($57acba87d6e25586$var$SCROLLBAR_NAME, props.__scopeScrollArea);\n const isHorizontal = props.orientation === \"horizontal\";\n const debounceScrollEnd = $57acba87d6e25586$var$useDebounceCallback(()=>send(\"SCROLL_END\"), 100);\n const [state, send] = $6c2e24571c90391f$export$3e6543de14f8614f(\"hidden\", {\n hidden: {\n SCROLL: \"scrolling\"\n },\n scrolling: {\n SCROLL_END: \"idle\",\n POINTER_ENTER: \"interacting\"\n },\n interacting: {\n SCROLL: \"interacting\",\n POINTER_LEAVE: \"idle\"\n },\n idle: {\n HIDE: \"hidden\",\n SCROLL: \"scrolling\",\n POINTER_ENTER: \"interacting\"\n }\n });\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (state === \"idle\") {\n const hideTimer = window.setTimeout(()=>send(\"HIDE\"), context.scrollHideDelay);\n return ()=>window.clearTimeout(hideTimer);\n }\n }, [\n state,\n context.scrollHideDelay,\n send\n ]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const viewport = context.viewport;\n const scrollDirection = isHorizontal ? \"scrollLeft\" : \"scrollTop\";\n if (viewport) {\n let prevScrollPos = viewport[scrollDirection];\n const handleScroll = ()=>{\n const scrollPos = viewport[scrollDirection];\n const hasScrollInDirectionChanged = prevScrollPos !== scrollPos;\n if (hasScrollInDirectionChanged) {\n send(\"SCROLL\");\n debounceScrollEnd();\n }\n prevScrollPos = scrollPos;\n };\n viewport.addEventListener(\"scroll\", handleScroll);\n return ()=>viewport.removeEventListener(\"scroll\", handleScroll);\n }\n }, [\n context.viewport,\n isHorizontal,\n send,\n debounceScrollEnd\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_presence__WEBPACK_IMPORTED_MODULE_6__.Presence, {\n present: forceMount || state !== \"hidden\"\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollAreaScrollbarVisible, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"data-state\": state === \"hidden\" ? \"hidden\" : \"visible\"\n }, scrollbarProps, {\n ref: forwardedRef,\n onPointerEnter: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_7__.composeEventHandlers)(props.onPointerEnter, ()=>send(\"POINTER_ENTER\")),\n onPointerLeave: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_7__.composeEventHandlers)(props.onPointerLeave, ()=>send(\"POINTER_LEAVE\"))\n })));\n});\nconst $57acba87d6e25586$var$ScrollAreaScrollbarAuto = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const context = $57acba87d6e25586$var$useScrollAreaContext($57acba87d6e25586$var$SCROLLBAR_NAME, props.__scopeScrollArea);\n const { forceMount: forceMount, ...scrollbarProps } = props;\n const [visible, setVisible] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const isHorizontal = props.orientation === \"horizontal\";\n const handleResize = $57acba87d6e25586$var$useDebounceCallback(()=>{\n if (context.viewport) {\n const isOverflowX = context.viewport.offsetWidth < context.viewport.scrollWidth;\n const isOverflowY = context.viewport.offsetHeight < context.viewport.scrollHeight;\n setVisible(isHorizontal ? isOverflowX : isOverflowY);\n }\n }, 10);\n $57acba87d6e25586$var$useResizeObserver(context.viewport, handleResize);\n $57acba87d6e25586$var$useResizeObserver(context.content, handleResize);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_presence__WEBPACK_IMPORTED_MODULE_6__.Presence, {\n present: forceMount || visible\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollAreaScrollbarVisible, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"data-state\": visible ? \"visible\" : \"hidden\"\n }, scrollbarProps, {\n ref: forwardedRef\n })));\n});\n/* -----------------------------------------------------------------------------------------------*/ const $57acba87d6e25586$var$ScrollAreaScrollbarVisible = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { orientation: orientation = \"vertical\", ...scrollbarProps } = props;\n const context = $57acba87d6e25586$var$useScrollAreaContext($57acba87d6e25586$var$SCROLLBAR_NAME, props.__scopeScrollArea);\n const thumbRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const pointerOffsetRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(0);\n const [sizes, setSizes] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)({\n content: 0,\n viewport: 0,\n scrollbar: {\n size: 0,\n paddingStart: 0,\n paddingEnd: 0\n }\n });\n const thumbRatio = $57acba87d6e25586$var$getThumbRatio(sizes.viewport, sizes.content);\n const commonProps = {\n ...scrollbarProps,\n sizes: sizes,\n onSizesChange: setSizes,\n hasThumb: Boolean(thumbRatio > 0 && thumbRatio < 1),\n onThumbChange: (thumb)=>thumbRef.current = thumb,\n onThumbPointerUp: ()=>pointerOffsetRef.current = 0,\n onThumbPointerDown: (pointerPos)=>pointerOffsetRef.current = pointerPos\n };\n function getScrollPosition(pointerPos, dir) {\n return $57acba87d6e25586$var$getScrollPositionFromPointer(pointerPos, pointerOffsetRef.current, sizes, dir);\n }\n if (orientation === \"horizontal\") return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollAreaScrollbarX, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, commonProps, {\n ref: forwardedRef,\n onThumbPositionChange: ()=>{\n if (context.viewport && thumbRef.current) {\n const scrollPos = context.viewport.scrollLeft;\n const offset = $57acba87d6e25586$var$getThumbOffsetFromScroll(scrollPos, sizes, context.dir);\n thumbRef.current.style.transform = `translate3d(${offset}px, 0, 0)`;\n }\n },\n onWheelScroll: (scrollPos)=>{\n if (context.viewport) context.viewport.scrollLeft = scrollPos;\n },\n onDragScroll: (pointerPos)=>{\n if (context.viewport) context.viewport.scrollLeft = getScrollPosition(pointerPos, context.dir);\n }\n }));\n if (orientation === \"vertical\") return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollAreaScrollbarY, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, commonProps, {\n ref: forwardedRef,\n onThumbPositionChange: ()=>{\n if (context.viewport && thumbRef.current) {\n const scrollPos = context.viewport.scrollTop;\n const offset = $57acba87d6e25586$var$getThumbOffsetFromScroll(scrollPos, sizes);\n thumbRef.current.style.transform = `translate3d(0, ${offset}px, 0)`;\n }\n },\n onWheelScroll: (scrollPos)=>{\n if (context.viewport) context.viewport.scrollTop = scrollPos;\n },\n onDragScroll: (pointerPos)=>{\n if (context.viewport) context.viewport.scrollTop = getScrollPosition(pointerPos);\n }\n }));\n return null;\n});\n/* -----------------------------------------------------------------------------------------------*/ const $57acba87d6e25586$var$ScrollAreaScrollbarX = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { sizes: sizes, onSizesChange: onSizesChange, ...scrollbarProps } = props;\n const context = $57acba87d6e25586$var$useScrollAreaContext($57acba87d6e25586$var$SCROLLBAR_NAME, props.__scopeScrollArea);\n const [computedStyle, setComputedStyle] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)();\n const ref = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const composeRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_3__.useComposedRefs)(forwardedRef, ref, context.onScrollbarXChange);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (ref.current) setComputedStyle(getComputedStyle(ref.current));\n }, [\n ref\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollAreaScrollbarImpl, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"data-orientation\": \"horizontal\"\n }, scrollbarProps, {\n ref: composeRefs,\n sizes: sizes,\n style: {\n bottom: 0,\n left: context.dir === \"rtl\" ? \"var(--radix-scroll-area-corner-width)\" : 0,\n right: context.dir === \"ltr\" ? \"var(--radix-scroll-area-corner-width)\" : 0,\n [\"--radix-scroll-area-thumb-width\"]: $57acba87d6e25586$var$getThumbSize(sizes) + \"px\",\n ...props.style\n },\n onThumbPointerDown: (pointerPos)=>props.onThumbPointerDown(pointerPos.x),\n onDragScroll: (pointerPos)=>props.onDragScroll(pointerPos.x),\n onWheelScroll: (event, maxScrollPos)=>{\n if (context.viewport) {\n const scrollPos = context.viewport.scrollLeft + event.deltaX;\n props.onWheelScroll(scrollPos); // prevent window scroll when wheeling on scrollbar\n if ($57acba87d6e25586$var$isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos)) event.preventDefault();\n }\n },\n onResize: ()=>{\n if (ref.current && context.viewport && computedStyle) onSizesChange({\n content: context.viewport.scrollWidth,\n viewport: context.viewport.offsetWidth,\n scrollbar: {\n size: ref.current.clientWidth,\n paddingStart: $57acba87d6e25586$var$toInt(computedStyle.paddingLeft),\n paddingEnd: $57acba87d6e25586$var$toInt(computedStyle.paddingRight)\n }\n });\n }\n }));\n});\nconst $57acba87d6e25586$var$ScrollAreaScrollbarY = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { sizes: sizes, onSizesChange: onSizesChange, ...scrollbarProps } = props;\n const context = $57acba87d6e25586$var$useScrollAreaContext($57acba87d6e25586$var$SCROLLBAR_NAME, props.__scopeScrollArea);\n const [computedStyle, setComputedStyle] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)();\n const ref = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const composeRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_3__.useComposedRefs)(forwardedRef, ref, context.onScrollbarYChange);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (ref.current) setComputedStyle(getComputedStyle(ref.current));\n }, [\n ref\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollAreaScrollbarImpl, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"data-orientation\": \"vertical\"\n }, scrollbarProps, {\n ref: composeRefs,\n sizes: sizes,\n style: {\n top: 0,\n right: context.dir === \"ltr\" ? 0 : undefined,\n left: context.dir === \"rtl\" ? 0 : undefined,\n bottom: \"var(--radix-scroll-area-corner-height)\",\n [\"--radix-scroll-area-thumb-height\"]: $57acba87d6e25586$var$getThumbSize(sizes) + \"px\",\n ...props.style\n },\n onThumbPointerDown: (pointerPos)=>props.onThumbPointerDown(pointerPos.y),\n onDragScroll: (pointerPos)=>props.onDragScroll(pointerPos.y),\n onWheelScroll: (event, maxScrollPos)=>{\n if (context.viewport) {\n const scrollPos = context.viewport.scrollTop + event.deltaY;\n props.onWheelScroll(scrollPos); // prevent window scroll when wheeling on scrollbar\n if ($57acba87d6e25586$var$isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos)) event.preventDefault();\n }\n },\n onResize: ()=>{\n if (ref.current && context.viewport && computedStyle) onSizesChange({\n content: context.viewport.scrollHeight,\n viewport: context.viewport.offsetHeight,\n scrollbar: {\n size: ref.current.clientHeight,\n paddingStart: $57acba87d6e25586$var$toInt(computedStyle.paddingTop),\n paddingEnd: $57acba87d6e25586$var$toInt(computedStyle.paddingBottom)\n }\n });\n }\n }));\n});\n/* -----------------------------------------------------------------------------------------------*/ const [$57acba87d6e25586$var$ScrollbarProvider, $57acba87d6e25586$var$useScrollbarContext] = $57acba87d6e25586$var$createScrollAreaContext($57acba87d6e25586$var$SCROLLBAR_NAME);\nconst $57acba87d6e25586$var$ScrollAreaScrollbarImpl = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeScrollArea: __scopeScrollArea, sizes: sizes, hasThumb: hasThumb, onThumbChange: onThumbChange, onThumbPointerUp: onThumbPointerUp, onThumbPointerDown: onThumbPointerDown, onThumbPositionChange: onThumbPositionChange, onDragScroll: onDragScroll, onWheelScroll: onWheelScroll, onResize: onResize, ...scrollbarProps } = props;\n const context = $57acba87d6e25586$var$useScrollAreaContext($57acba87d6e25586$var$SCROLLBAR_NAME, __scopeScrollArea);\n const [scrollbar, setScrollbar] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const composeRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_3__.useComposedRefs)(forwardedRef, (node)=>setScrollbar(node));\n const rectRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const prevWebkitUserSelectRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(\"\");\n const viewport = context.viewport;\n const maxScrollPos = sizes.content - sizes.viewport;\n const handleWheelScroll = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_8__.useCallbackRef)(onWheelScroll);\n const handleThumbPositionChange = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_8__.useCallbackRef)(onThumbPositionChange);\n const handleResize = $57acba87d6e25586$var$useDebounceCallback(onResize, 10);\n function handleDragScroll(event) {\n if (rectRef.current) {\n const x = event.clientX - rectRef.current.left;\n const y = event.clientY - rectRef.current.top;\n onDragScroll({\n x: x,\n y: y\n });\n }\n }\n /**\n * We bind wheel event imperatively so we can switch off passive\n * mode for document wheel event to allow it to be prevented\n */ (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const handleWheel = (event)=>{\n const element = event.target;\n const isScrollbarWheel = scrollbar === null || scrollbar === void 0 ? void 0 : scrollbar.contains(element);\n if (isScrollbarWheel) handleWheelScroll(event, maxScrollPos);\n };\n document.addEventListener(\"wheel\", handleWheel, {\n passive: false\n });\n return ()=>document.removeEventListener(\"wheel\", handleWheel, {\n passive: false\n });\n }, [\n viewport,\n scrollbar,\n maxScrollPos,\n handleWheelScroll\n ]);\n /**\n * Update thumb position on sizes change\n */ (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(handleThumbPositionChange, [\n sizes,\n handleThumbPositionChange\n ]);\n $57acba87d6e25586$var$useResizeObserver(scrollbar, handleResize);\n $57acba87d6e25586$var$useResizeObserver(context.content, handleResize);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollbarProvider, {\n scope: __scopeScrollArea,\n scrollbar: scrollbar,\n hasThumb: hasThumb,\n onThumbChange: (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_8__.useCallbackRef)(onThumbChange),\n onThumbPointerUp: (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_8__.useCallbackRef)(onThumbPointerUp),\n onThumbPositionChange: handleThumbPositionChange,\n onThumbPointerDown: (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_8__.useCallbackRef)(onThumbPointerDown)\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_5__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, scrollbarProps, {\n ref: composeRefs,\n style: {\n position: \"absolute\",\n ...scrollbarProps.style\n },\n onPointerDown: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_7__.composeEventHandlers)(props.onPointerDown, (event)=>{\n const mainPointer = 0;\n if (event.button === mainPointer) {\n const element = event.target;\n element.setPointerCapture(event.pointerId);\n rectRef.current = scrollbar.getBoundingClientRect(); // pointer capture doesn't prevent text selection in Safari\n // so we remove text selection manually when scrolling\n prevWebkitUserSelectRef.current = document.body.style.webkitUserSelect;\n document.body.style.webkitUserSelect = \"none\";\n handleDragScroll(event);\n }\n }),\n onPointerMove: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_7__.composeEventHandlers)(props.onPointerMove, handleDragScroll),\n onPointerUp: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_7__.composeEventHandlers)(props.onPointerUp, (event)=>{\n const element = event.target;\n if (element.hasPointerCapture(event.pointerId)) element.releasePointerCapture(event.pointerId);\n document.body.style.webkitUserSelect = prevWebkitUserSelectRef.current;\n rectRef.current = null;\n })\n })));\n});\n/* -------------------------------------------------------------------------------------------------\n * ScrollAreaThumb\n * -----------------------------------------------------------------------------------------------*/ const $57acba87d6e25586$var$THUMB_NAME = \"ScrollAreaThumb\";\nconst $57acba87d6e25586$export$9fba1154677d7cd2 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { forceMount: forceMount, ...thumbProps } = props;\n const scrollbarContext = $57acba87d6e25586$var$useScrollbarContext($57acba87d6e25586$var$THUMB_NAME, props.__scopeScrollArea);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_presence__WEBPACK_IMPORTED_MODULE_6__.Presence, {\n present: forceMount || scrollbarContext.hasThumb\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollAreaThumbImpl, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n ref: forwardedRef\n }, thumbProps)));\n});\nconst $57acba87d6e25586$var$ScrollAreaThumbImpl = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeScrollArea: __scopeScrollArea, style: style, ...thumbProps } = props;\n const scrollAreaContext = $57acba87d6e25586$var$useScrollAreaContext($57acba87d6e25586$var$THUMB_NAME, __scopeScrollArea);\n const scrollbarContext = $57acba87d6e25586$var$useScrollbarContext($57acba87d6e25586$var$THUMB_NAME, __scopeScrollArea);\n const { onThumbPositionChange: onThumbPositionChange } = scrollbarContext;\n const composedRef = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_3__.useComposedRefs)(forwardedRef, (node)=>scrollbarContext.onThumbChange(node));\n const removeUnlinkedScrollListenerRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)();\n const debounceScrollEnd = $57acba87d6e25586$var$useDebounceCallback(()=>{\n if (removeUnlinkedScrollListenerRef.current) {\n removeUnlinkedScrollListenerRef.current();\n removeUnlinkedScrollListenerRef.current = undefined;\n }\n }, 100);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const viewport = scrollAreaContext.viewport;\n if (viewport) {\n /**\n * We only bind to native scroll event so we know when scroll starts and ends.\n * When scroll starts we start a requestAnimationFrame loop that checks for\n * changes to scroll position. That rAF loop triggers our thumb position change\n * when relevant to avoid scroll-linked effects. We cancel the loop when scroll ends.\n * https://developer.mozilla.org/en-US/docs/Mozilla/Performance/Scroll-linked_effects\n */ const handleScroll = ()=>{\n debounceScrollEnd();\n if (!removeUnlinkedScrollListenerRef.current) {\n const listener = $57acba87d6e25586$var$addUnlinkedScrollListener(viewport, onThumbPositionChange);\n removeUnlinkedScrollListenerRef.current = listener;\n onThumbPositionChange();\n }\n };\n onThumbPositionChange();\n viewport.addEventListener(\"scroll\", handleScroll);\n return ()=>viewport.removeEventListener(\"scroll\", handleScroll);\n }\n }, [\n scrollAreaContext.viewport,\n debounceScrollEnd,\n onThumbPositionChange\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_5__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"data-state\": scrollbarContext.hasThumb ? \"visible\" : \"hidden\"\n }, thumbProps, {\n ref: composedRef,\n style: {\n width: \"var(--radix-scroll-area-thumb-width)\",\n height: \"var(--radix-scroll-area-thumb-height)\",\n ...style\n },\n onPointerDownCapture: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_7__.composeEventHandlers)(props.onPointerDownCapture, (event)=>{\n const thumb = event.target;\n const thumbRect = thumb.getBoundingClientRect();\n const x = event.clientX - thumbRect.left;\n const y = event.clientY - thumbRect.top;\n scrollbarContext.onThumbPointerDown({\n x: x,\n y: y\n });\n }),\n onPointerUp: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_7__.composeEventHandlers)(props.onPointerUp, scrollbarContext.onThumbPointerUp)\n }));\n});\n/*#__PURE__*/ Object.assign($57acba87d6e25586$export$9fba1154677d7cd2, {\n displayName: $57acba87d6e25586$var$THUMB_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * ScrollAreaCorner\n * -----------------------------------------------------------------------------------------------*/ const $57acba87d6e25586$var$CORNER_NAME = \"ScrollAreaCorner\";\nconst $57acba87d6e25586$export$56969d565df7cc4b = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const context = $57acba87d6e25586$var$useScrollAreaContext($57acba87d6e25586$var$CORNER_NAME, props.__scopeScrollArea);\n const hasBothScrollbarsVisible = Boolean(context.scrollbarX && context.scrollbarY);\n const hasCorner = context.type !== \"scroll\" && hasBothScrollbarsVisible;\n return hasCorner ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($57acba87d6e25586$var$ScrollAreaCornerImpl, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, props, {\n ref: forwardedRef\n })) : null;\n});\n/*#__PURE__*/ Object.assign($57acba87d6e25586$export$56969d565df7cc4b, {\n displayName: $57acba87d6e25586$var$CORNER_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ const $57acba87d6e25586$var$ScrollAreaCornerImpl = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeScrollArea: __scopeScrollArea, ...cornerProps } = props;\n const context = $57acba87d6e25586$var$useScrollAreaContext($57acba87d6e25586$var$CORNER_NAME, __scopeScrollArea);\n const [width1, setWidth] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(0);\n const [height1, setHeight] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(0);\n const hasSize = Boolean(width1 && height1);\n $57acba87d6e25586$var$useResizeObserver(context.scrollbarX, ()=>{\n var _context$scrollbarX;\n const height = ((_context$scrollbarX = context.scrollbarX) === null || _context$scrollbarX === void 0 ? void 0 : _context$scrollbarX.offsetHeight) || 0;\n context.onCornerHeightChange(height);\n setHeight(height);\n });\n $57acba87d6e25586$var$useResizeObserver(context.scrollbarY, ()=>{\n var _context$scrollbarY;\n const width = ((_context$scrollbarY = context.scrollbarY) === null || _context$scrollbarY === void 0 ? void 0 : _context$scrollbarY.offsetWidth) || 0;\n context.onCornerWidthChange(width);\n setWidth(width);\n });\n return hasSize ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_5__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, cornerProps, {\n ref: forwardedRef,\n style: {\n width: width1,\n height: height1,\n position: \"absolute\",\n right: context.dir === \"ltr\" ? 0 : undefined,\n left: context.dir === \"rtl\" ? 0 : undefined,\n bottom: 0,\n ...props.style\n }\n })) : null;\n});\n/* -----------------------------------------------------------------------------------------------*/ function $57acba87d6e25586$var$toInt(value) {\n return value ? parseInt(value, 10) : 0;\n}\nfunction $57acba87d6e25586$var$getThumbRatio(viewportSize, contentSize) {\n const ratio = viewportSize / contentSize;\n return isNaN(ratio) ? 0 : ratio;\n}\nfunction $57acba87d6e25586$var$getThumbSize(sizes) {\n const ratio = $57acba87d6e25586$var$getThumbRatio(sizes.viewport, sizes.content);\n const scrollbarPadding = sizes.scrollbar.paddingStart + sizes.scrollbar.paddingEnd;\n const thumbSize = (sizes.scrollbar.size - scrollbarPadding) * ratio; // minimum of 18 matches macOS minimum\n return Math.max(thumbSize, 18);\n}\nfunction $57acba87d6e25586$var$getScrollPositionFromPointer(pointerPos, pointerOffset, sizes, dir = \"ltr\") {\n const thumbSizePx = $57acba87d6e25586$var$getThumbSize(sizes);\n const thumbCenter = thumbSizePx / 2;\n const offset = pointerOffset || thumbCenter;\n const thumbOffsetFromEnd = thumbSizePx - offset;\n const minPointerPos = sizes.scrollbar.paddingStart + offset;\n const maxPointerPos = sizes.scrollbar.size - sizes.scrollbar.paddingEnd - thumbOffsetFromEnd;\n const maxScrollPos = sizes.content - sizes.viewport;\n const scrollRange = dir === \"ltr\" ? [\n 0,\n maxScrollPos\n ] : [\n maxScrollPos * -1,\n 0\n ];\n const interpolate = $57acba87d6e25586$var$linearScale([\n minPointerPos,\n maxPointerPos\n ], scrollRange);\n return interpolate(pointerPos);\n}\nfunction $57acba87d6e25586$var$getThumbOffsetFromScroll(scrollPos, sizes, dir = \"ltr\") {\n const thumbSizePx = $57acba87d6e25586$var$getThumbSize(sizes);\n const scrollbarPadding = sizes.scrollbar.paddingStart + sizes.scrollbar.paddingEnd;\n const scrollbar = sizes.scrollbar.size - scrollbarPadding;\n const maxScrollPos = sizes.content - sizes.viewport;\n const maxThumbPos = scrollbar - thumbSizePx;\n const scrollClampRange = dir === \"ltr\" ? [\n 0,\n maxScrollPos\n ] : [\n maxScrollPos * -1,\n 0\n ];\n const scrollWithoutMomentum = (0,_radix_ui_number__WEBPACK_IMPORTED_MODULE_9__.clamp)(scrollPos, scrollClampRange);\n const interpolate = $57acba87d6e25586$var$linearScale([\n 0,\n maxScrollPos\n ], [\n 0,\n maxThumbPos\n ]);\n return interpolate(scrollWithoutMomentum);\n} // https://github.com/tmcw-up-for-adoption/simple-linear-scale/blob/master/index.js\nfunction $57acba87d6e25586$var$linearScale(input, output) {\n return (value)=>{\n if (input[0] === input[1] || output[0] === output[1]) return output[0];\n const ratio = (output[1] - output[0]) / (input[1] - input[0]);\n return output[0] + ratio * (value - input[0]);\n };\n}\nfunction $57acba87d6e25586$var$isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos) {\n return scrollPos > 0 && scrollPos < maxScrollPos;\n} // Custom scroll handler to avoid scroll-linked effects\n// https://developer.mozilla.org/en-US/docs/Mozilla/Performance/Scroll-linked_effects\nconst $57acba87d6e25586$var$addUnlinkedScrollListener = (node, handler = ()=>{})=>{\n let prevPosition = {\n left: node.scrollLeft,\n top: node.scrollTop\n };\n let rAF = 0;\n (function loop() {\n const position = {\n left: node.scrollLeft,\n top: node.scrollTop\n };\n const isHorizontalScroll = prevPosition.left !== position.left;\n const isVerticalScroll = prevPosition.top !== position.top;\n if (isHorizontalScroll || isVerticalScroll) handler();\n prevPosition = position;\n rAF = window.requestAnimationFrame(loop);\n })();\n return ()=>window.cancelAnimationFrame(rAF);\n};\nfunction $57acba87d6e25586$var$useDebounceCallback(callback, delay) {\n const handleCallback = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_8__.useCallbackRef)(callback);\n const debounceTimerRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(0);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>()=>window.clearTimeout(debounceTimerRef.current), []);\n return (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(()=>{\n window.clearTimeout(debounceTimerRef.current);\n debounceTimerRef.current = window.setTimeout(handleCallback, delay);\n }, [\n handleCallback,\n delay\n ]);\n}\nfunction $57acba87d6e25586$var$useResizeObserver(element, onResize) {\n const handleResize = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_8__.useCallbackRef)(onResize);\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_10__.useLayoutEffect)(()=>{\n let rAF = 0;\n if (element) {\n /**\n * Resize Observer will throw an often benign error that says `ResizeObserver loop\n * completed with undelivered notifications`. This means that ResizeObserver was not\n * able to deliver all observations within a single animation frame, so we use\n * `requestAnimationFrame` to ensure we don't deliver unnecessary observations.\n * Further reading: https://github.com/WICG/resize-observer/issues/38\n */ const resizeObserver = new ResizeObserver(()=>{\n cancelAnimationFrame(rAF);\n rAF = window.requestAnimationFrame(handleResize);\n });\n resizeObserver.observe(element);\n return ()=>{\n window.cancelAnimationFrame(rAF);\n resizeObserver.unobserve(element);\n };\n }\n }, [\n element,\n handleResize\n ]);\n}\n/* -----------------------------------------------------------------------------------------------*/ const $57acba87d6e25586$export$be92b6f5f03c0fe9 = $57acba87d6e25586$export$ccf8d8d7bbf3c2cc;\nconst $57acba87d6e25586$export$d5c6c08dc2d3ca7 = $57acba87d6e25586$export$a21cbf9f11fca853;\nconst $57acba87d6e25586$export$9a4e88b92edfce6b = $57acba87d6e25586$export$2fabd85d0eba3c57;\nconst $57acba87d6e25586$export$6521433ed15a34db = $57acba87d6e25586$export$9fba1154677d7cd2;\nconst $57acba87d6e25586$export$ac61190d9fc311a9 = $57acba87d6e25586$export$56969d565df7cc4b;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXNjcm9sbC1hcmVhL2Rpc3QvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBc0Y7QUFDNkw7QUFDM007QUFDSDtBQUNtQjtBQUNEO0FBQ0U7QUFDWDtBQUNjO0FBQ3JDO0FBQ2lDO0FBY3hGLFNBQVNtQywwQ0FBMENDLFlBQVksRUFBRUMsT0FBTztJQUNwRSxPQUFPckIsaURBQWlCQSxDQUFDLENBQUNzQixPQUFPQztRQUM3QixNQUFNQyxZQUFZSCxPQUFPLENBQUNDLE1BQU0sQ0FBQ0MsTUFBTTtRQUN2QyxPQUFPQyxjQUFjLFFBQVFBLGNBQWMsS0FBSyxJQUFJQSxZQUFZRjtJQUNwRSxHQUFHRjtBQUNQO0FBR0E7O2tHQUVrRyxHQUFHLE1BQU1LLHlDQUF5QztBQUNwSixNQUFNLENBQUNDLCtDQUErQ0MsMENBQTBDLEdBQUdyQiwyRUFBeUJBLENBQUNtQjtBQUM3SCxNQUFNLENBQUNHLDBDQUEwQ0MsMkNBQTJDLEdBQUdILDhDQUE4Q0Q7QUFDN0ksTUFBTUssNENBQTRDLFdBQVcsR0FBRzVDLGlEQUFpQkEsQ0FBQyxDQUFDNkMsT0FBT0M7SUFDdEYsTUFBTSxFQUFFQyxtQkFBbUJBLGlCQUFpQixFQUFHQyxNQUFNQSxPQUFPLE9BQU8sRUFBR0MsS0FBS0EsR0FBRyxFQUFHQyxpQkFBaUJBLGtCQUFrQixHQUFHLEVBQUcsR0FBR0MsaUJBQWlCLEdBQUdOO0lBQ2pKLE1BQU0sQ0FBQ08sWUFBWUMsY0FBYyxHQUFHbkQsK0NBQWVBLENBQUM7SUFDcEQsTUFBTSxDQUFDb0QsVUFBVUMsWUFBWSxHQUFHckQsK0NBQWVBLENBQUM7SUFDaEQsTUFBTSxDQUFDc0QsU0FBU0MsV0FBVyxHQUFHdkQsK0NBQWVBLENBQUM7SUFDOUMsTUFBTSxDQUFDd0QsWUFBWUMsY0FBYyxHQUFHekQsK0NBQWVBLENBQUM7SUFDcEQsTUFBTSxDQUFDMEQsWUFBWUMsY0FBYyxHQUFH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WUFBWSxDQUFDc0wsaUJBQWlCckksT0FBTztRQUM1Q3FJLGlCQUFpQnJJLE9BQU8sR0FBR2xELE9BQU9HLFVBQVUsQ0FBQ21MLGdCQUFnQkQ7SUFDakUsR0FBRztRQUNDQztRQUNBRDtLQUNIO0FBQ0w7QUFDQSxTQUFTcEosd0NBQXdDc0UsT0FBTyxFQUFFdkIsUUFBUTtJQUM5RCxNQUFNdEQsZUFBZXBILGdGQUFxQkEsQ0FBQzBLO0lBQzNDdEssbUZBQXNCQSxDQUFDO1FBQ25CLElBQUlvUSxNQUFNO1FBQ1YsSUFBSXZFLFNBQVM7WUFDVDs7Ozs7O09BTUwsR0FBRyxNQUFNaUYsaUJBQWlCLElBQUlDLGVBQWU7Z0JBQ3BDTixxQkFBcUJMO2dCQUNyQkEsTUFBTTlLLE9BQU9rTCxxQkFBcUIsQ0FBQ3hKO1lBQ3ZDO1lBQ0E4SixlQUFlRSxPQUFPLENBQUNuRjtZQUN2QixPQUFPO2dCQUNIdkcsT0FBT21MLG9CQUFvQixDQUFDTDtnQkFDNUJVLGVBQWVHLFNBQVMsQ0FBQ3BGO1lBQzdCO1FBQ0o7SUFDSixHQUFHO1FBQ0NBO1FBQ0E3RTtLQUNIO0FBQ0w7QUFDQSxrR0FBa0csR0FBRyxNQUFNa0ssNENBQTRDbFE7QUFDdkosTUFBTW1RLDJDQUEyQ3JOO0FBQ2pELE1BQU1zTiw0Q0FBNEMzTTtBQUNsRCxNQUFNNE0sNENBQTRDckU7QUFDbEQsTUFBTXNFLDRDQUE0Q3hEO0FBSzZsQixDQUMvb0Isa0NBQWtDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZW1iZWRjaGFpbi1hZG1pbi8uL25vZGVfbW9kdWxlcy9AcmFkaXgtdWkvcmVhY3Qtc2Nyb2xsLWFyZWEvZGlzdC9pbmRleC5tanM/YzIzNyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJGZuRk05JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIGZyb20gXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9leHRlbmRzXCI7XG5pbXBvcnQge2ZvcndhcmRSZWYgYXMgJGZuRk05JGZvcndhcmRSZWYsIHVzZVN0YXRlIGFzICRmbkZNOSR1c2VTdGF0ZSwgY3JlYXRlRWxlbWVudCBhcyAkZm5GTTkkY3JlYXRlRWxlbWVudCwgdXNlUmVmIGFzICRmbkZNOSR1c2VSZWYsIEZyYWdtZW50IGFzICRmbkZNOSRGcmFnbWVudCwgdXNlRWZmZWN0IGFzICRmbkZNOSR1c2VFZmZlY3QsIHVzZUNhbGxiYWNrIGFzICRmbkZNOSR1c2VDYWxsYmFjaywgdXNlUmVkdWNlciBhcyAkZm5GTTkkdXNlUmVkdWNlcn0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQge1ByaW1pdGl2ZSBhcyAkZm5GTTkkUHJpbWl0aXZlfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXByaW1pdGl2ZVwiO1xuaW1wb3J0IHtQcmVzZW5jZSBhcyAkZm5GTTkkUHJlc2VuY2V9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtcHJlc2VuY2VcIjtcbmltcG9ydCB7Y3JlYXRlQ29udGV4dFNjb3BlIGFzICRmbkZNOSRjcmVhdGVDb250ZXh0U2NvcGV9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtY29udGV4dFwiO1xuaW1wb3J0IHt1c2VDb21wb3NlZFJlZnMgYXMgJGZuRk05JHVzZUNvbXBvc2VkUmVmc30gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1jb21wb3NlLXJlZnNcIjtcbmltcG9ydCB7dXNlQ2FsbGJhY2tSZWYgYXMgJGZuRk05JHVzZUNhbGxiYWNrUmVmfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXVzZS1jYWxsYmFjay1yZWZcIjtcbmltcG9ydCB7dXNlRGlyZWN0aW9uIGFzICRmbkZNOSR1c2VEaXJlY3Rpb259IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtZGlyZWN0aW9uXCI7XG5pbXBvcnQge3VzZUxheW91dEVmZmVjdCBhcyAkZm5GTTkkdXNlTGF5b3V0RWZmZWN0fSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXVzZS1sYXlvdXQtZWZmZWN0XCI7XG5pbXBvcnQge2NsYW1wIGFzICRmbkZNOSRjbGFtcH0gZnJvbSBcIkByYWRpeC11aS9udW1iZXJcIjtcbmltcG9ydCB7Y29tcG9zZUV2ZW50SGFuZGxlcnMgYXMgJGZuRk05JGNvbXBvc2VFdmVudEhhbmRsZXJzfSBmcm9tIFwiQHJhZGl4LXVpL3ByaW1pdGl2ZVwiO1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5mdW5jdGlvbiAkNmMyZTI0NTcxYzkwMzkxZiRleHBvcnQkM2U2NTQzZGUxNGY4NjE0Zihpbml0aWFsU3RhdGUsIG1hY2hpbmUpIHtcbiAgICByZXR1cm4gJGZuRk05JHVzZVJlZHVjZXIoKHN0YXRlLCBldmVudCk9PntcbiAgICAgICAgY29uc3QgbmV4dFN0YXRlID0gbWFjaGluZVtzdGF0ZV1bZXZlbnRdO1xuICAgICAgICByZXR1cm4gbmV4dFN0YXRlICE9PSBudWxsICYmIG5leHRTdGF0ZSAhPT0gdm9pZCAwID8gbmV4dFN0YXRlIDogc3RhdGU7XG4gICAgfSwgaW5pdGlhbFN0YXRlKTtcbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBTY3JvbGxBcmVhXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTQ1JPTExfQVJFQV9OQU1FID0gJ1Njcm9sbEFyZWEnO1xuY29uc3QgWyQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRjcmVhdGVTY3JvbGxBcmVhQ29udGV4dCwgJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JDQ4ODQ2OGFmZTNhNmYyYjFdID0gJGZuRk05JGNyZWF0ZUNvbnRleHRTY29wZSgkNTdhY2JhODdkNmUyNTU4NiR2YXIkU0NST0xMX0FSRUFfTkFNRSk7XG5jb25zdCBbJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNjcm9sbEFyZWFQcm92aWRlciwgJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHVzZVNjcm9sbEFyZWFDb250ZXh0XSA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRjcmVhdGVTY3JvbGxBcmVhQ29udGV4dCgkNTdhY2JhODdkNmUyNTU4NiR2YXIkU0NST0xMX0FSRUFfTkFNRSk7XG5jb25zdCAkNTdhY2JhODdkNmUyNTU4NiRleHBvcnQkY2NmOGQ4ZDdiYmYzYzJjYyA9IC8qI19fUFVSRV9fKi8gJGZuRk05JGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlU2Nyb2xsQXJlYTogX19zY29wZVNjcm9sbEFyZWEgLCB0eXBlOiB0eXBlID0gJ2hvdmVyJyAsIGRpcjogZGlyICwgc2Nyb2xsSGlkZURlbGF5OiBzY3JvbGxIaWRlRGVsYXkgPSA2MDAgLCAuLi5zY3JvbGxBcmVhUHJvcHMgfSA9IHByb3BzO1xuICAgIGNvbnN0IFtzY3JvbGxBcmVhLCBzZXRTY3JvbGxBcmVhXSA9ICRmbkZNOSR1c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBbdmlld3BvcnQsIHNldFZpZXdwb3J0XSA9ICRmbkZNOSR1c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBbY29udGVudCwgc2V0Q29udGVudF0gPSAkZm5GTTkkdXNlU3RhdGUobnVsbCk7XG4gICAgY29uc3QgW3Njcm9sbGJhclgsIHNldFNjcm9sbGJhclhdID0gJGZuRk05JHVzZVN0YXRlKG51bGwpO1xuICAgIGNvbnN0IFtzY3JvbGxiYXJZLCBzZXRTY3JvbGxiYXJZXSA9ICRmbkZNOSR1c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBbY29ybmVyV2lkdGgsIHNldENvcm5lcldpZHRoXSA9ICRmbkZNOSR1c2VTdGF0ZSgwKTtcbiAgICBjb25zdCBbY29ybmVySGVpZ2h0LCBzZXRDb3JuZXJIZWlnaHRdID0gJGZuRk05JHVzZVN0YXRlKDApO1xuICAgIGNvbnN0IFtzY3JvbGxiYXJYRW5hYmxlZCwgc2V0U2Nyb2xsYmFyWEVuYWJsZWRdID0gJGZuRk05JHVzZVN0YXRlKGZhbHNlKTtcbiAgICBjb25zdCBbc2Nyb2xsYmFyWUVuYWJsZWQsIHNldFNjcm9sbGJhcllFbmFibGVkXSA9ICRmbkZNOSR1c2VTdGF0ZShmYWxzZSk7XG4gICAgY29uc3QgY29tcG9zZWRSZWZzID0gJGZuRk05JHVzZUNvbXBvc2VkUmVmcyhmb3J3YXJkZWRSZWYsIChub2RlKT0+c2V0U2Nyb2xsQXJlYShub2RlKVxuICAgICk7XG4gICAgY29uc3QgZGlyZWN0aW9uID0gJGZuRk05JHVzZURpcmVjdGlvbihkaXIpO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICRmbkZNOSRjcmVhdGVFbGVtZW50KCQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTY3JvbGxBcmVhUHJvdmlkZXIsIHtcbiAgICAgICAgc2NvcGU6IF9fc2NvcGVTY3JvbGxBcmVhLFxuICAgICAgICB0eXBlOiB0eXBlLFxuICAgICAgICBkaXI6IGRpcmVjdGlvbixcbiAgICAgICAgc2Nyb2xsSGlkZURlbGF5OiBzY3JvbGxIaWRlRGVsYXksXG4gICAgICAgIHNjcm9sbEFyZWE6IHNjcm9sbEFyZWEsXG4gICAgICAgIHZpZXdwb3J0OiB2aWV3cG9ydCxcbiAgICAgICAgb25WaWV3cG9ydENoYW5nZTogc2V0Vmlld3BvcnQsXG4gICAgICAgIGNvbnRlbnQ6IGNvbnRlbnQsXG4gICAgICAgIG9uQ29udGVudENoYW5nZTogc2V0Q29udGVudCxcbiAgICAgICAgc2Nyb2xsYmFyWDogc2Nyb2xsYmFyWCxcbiAgICAgICAgb25TY3JvbGxiYXJYQ2hhbmdlOiBzZXRTY3JvbGxiYXJYLFxuICAgICAgICBzY3JvbGxiYXJYRW5hYmxlZDogc2Nyb2xsYmFyWEVuYWJsZWQsXG4gICAgICAgIG9uU2Nyb2xsYmFyWEVuYWJsZWRDaGFuZ2U6IHNldFNjcm9sbGJhclhFbmFibGVkLFxuICAgICAgICBzY3JvbGxiYXJZOiBzY3JvbGxiYXJZLFxuICAgICAgICBvblNjcm9sbGJhcllDaGFuZ2U6IHNldFNjcm9sbGJhclksXG4gICAgICAgIHNjcm9sbGJhcllFbmFibGVkOiBzY3JvbGxiYXJZRW5hYmxlZCxcbiAgICAgICAgb25TY3JvbGxiYXJZRW5hYmxlZENoYW5nZTogc2V0U2Nyb2xsYmFyWUVuYWJsZWQsXG4gICAgICAgIG9uQ29ybmVyV2lkdGhDaGFuZ2U6IHNldENvcm5lcldpZHRoLFxuICAgICAgICBvbkNvcm5lckhlaWdodENoYW5nZTogc2V0Q29ybmVySGVpZ2h0XG4gICAgfSwgLyojX19QVVJFX18qLyAkZm5GTTkkY3JlYXRlRWxlbWVudCgkZm5GTTkkUHJpbWl0aXZlLmRpdiwgJGZuRk05JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHtcbiAgICAgICAgZGlyOiBkaXJlY3Rpb25cbiAgICB9LCBzY3JvbGxBcmVhUHJvcHMsIHtcbiAgICAgICAgcmVmOiBjb21wb3NlZFJlZnMsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcbiAgICAgICAgICAgIC8vIFBhc3MgY29ybmVyIHNpemVzIGFzIENTUyB2YXJzIHRvIHJlZHVjZSByZS1yZW5kZXJzIG9mIGNvbnRleHQgY29uc3VtZXJzXG4gICAgICAgICAgICBbJy0tcmFkaXgtc2Nyb2xsLWFyZWEtY29ybmVyLXdpZHRoJ106IGNvcm5lcldpZHRoICsgJ3B4JyxcbiAgICAgICAgICAgIFsnLS1yYWRpeC1zY3JvbGwtYXJlYS1jb3JuZXItaGVpZ2h0J106IGNvcm5lckhlaWdodCArICdweCcsXG4gICAgICAgICAgICAuLi5wcm9wcy5zdHlsZVxuICAgICAgICB9XG4gICAgfSkpKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCRjY2Y4ZDhkN2JiZjNjMmNjLCB7XG4gICAgZGlzcGxheU5hbWU6ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTQ1JPTExfQVJFQV9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFNjcm9sbEFyZWFWaWV3cG9ydFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkNTdhY2JhODdkNmUyNTU4NiR2YXIkVklFV1BPUlRfTkFNRSA9ICdTY3JvbGxBcmVhVmlld3BvcnQnO1xuY29uc3QgJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JGEyMWNiZjlmMTFmY2E4NTMgPSAvKiNfX1BVUkVfXyovICRmbkZNOSRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgX19zY29wZVNjcm9sbEFyZWE6IF9fc2NvcGVTY3JvbGxBcmVhICwgY2hpbGRyZW46IGNoaWxkcmVuICwgLi4udmlld3BvcnRQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgY29udGV4dCA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciR1c2VTY3JvbGxBcmVhQ29udGV4dCgkNTdhY2JhODdkNmUyNTU4NiR2YXIkVklFV1BPUlRfTkFNRSwgX19zY29wZVNjcm9sbEFyZWEpO1xuICAgIGNvbnN0IHJlZiA9ICRmbkZNOSR1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgY29tcG9zZWRSZWZzID0gJGZuRk05JHVzZUNvbXBvc2VkUmVmcyhmb3J3YXJkZWRSZWYsIHJlZiwgY29udGV4dC5vblZpZXdwb3J0Q2hhbmdlKTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAkZm5GTTkkY3JlYXRlRWxlbWVudCgkZm5GTTkkRnJhZ21lbnQsIG51bGwsIC8qI19fUFVSRV9fKi8gJGZuRk05JGNyZWF0ZUVsZW1lbnQoXCJzdHlsZVwiLCB7XG4gICAgICAgIGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MOiB7XG4gICAgICAgICAgICBfX2h0bWw6IGBbZGF0YS1yYWRpeC1zY3JvbGwtYXJlYS12aWV3cG9ydF17c2Nyb2xsYmFyLXdpZHRoOm5vbmU7LW1zLW92ZXJmbG93LXN0eWxlOm5vbmU7LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2g7fVtkYXRhLXJhZGl4LXNjcm9sbC1hcmVhLXZpZXdwb3J0XTo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfWBcbiAgICAgICAgfVxuICAgIH0pLCAvKiNfX1BVUkVfXyovICRmbkZNOSRjcmVhdGVFbGVtZW50KCRmbkZNOSRQcmltaXRpdmUuZGl2LCAkZm5GTTkkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe1xuICAgICAgICBcImRhdGEtcmFkaXgtc2Nyb2xsLWFyZWEtdmlld3BvcnRcIjogXCJcIlxuICAgIH0sIHZpZXdwb3J0UHJvcHMsIHtcbiAgICAgICAgcmVmOiBjb21wb3NlZFJlZnMsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAqIFdlIGRvbid0IHN1cHBvcnQgYHZpc2libGVgIGJlY2F1c2UgdGhlIGludGVudGlvbiBpcyB0byBoYXZlIGF0IGxlYXN0IG9uZSBzY3JvbGxiYXJcbiAgICAgICAqIGlmIHRoaXMgY29tcG9uZW50IGlzIHVzZWQgYW5kIGB2aXNpYmxlYCB3aWxsIGJlaGF2ZSBsaWtlIGBhdXRvYCBpbiB0aGF0IGNhc2VcbiAgICAgICAqIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy9vdmVyZmxvd2VkI2Rlc2NyaXB0aW9uXG4gICAgICAgKlxuICAgICAgICogV2UgZG9uJ3QgaGFuZGxlIGBhdXRvYCBiZWNhdXNlIHRoZSBpbnRlbnRpb24gaXMgZm9yIHRoZSBuYXRpdmUgaW1wbGVtZW50YXRpb25cbiAgICAgICAqIHRvIGJlIGhpZGRlbiBpZiB1c2luZyB0aGlzIGNvbXBvbmVudC4gV2UganVzdCB3YW50IHRvIGVuc3VyZSB0aGUgbm9kZSBpcyBzY3JvbGxhYmxlXG4gICAgICAgKiBzbyBjb3VsZCBoYXZlIHVzZWQgZWl0aGVyIGBzY3JvbGxgIG9yIGBhdXRvYCBoZXJlLiBXZSBwaWNrZWQgYHNjcm9sbGAgdG8gcHJldmVudFxuICAgICAgICogdGhlIGJyb3dzZXIgZnJvbSBoYXZpbmcgdG8gd29yayBvdXQgd2hldGhlciB0byByZW5kZXIgbmF0aXZlIHNjcm9sbGJhcnMgb3Igbm90LFxuICAgICAgICogd2UgdGVsbCBpdCB0byB3aXRoIHRoZSBpbnRlbnRpb24gb2YgaGlkaW5nIHRoZW0gaW4gQ1NTLlxuICAgICAgICovIG92ZXJmbG93WDogY29udGV4dC5zY3JvbGxiYXJYRW5hYmxlZCA/ICdzY3JvbGwnIDogJ2hpZGRlbicsXG4gICAgICAgICAgICBvdmVyZmxvd1k6IGNvbnRleHQuc2Nyb2xsYmFyWUVuYWJsZWQgPyAnc2Nyb2xsJyA6ICdoaWRkZW4nLFxuICAgICAgICAgICAgLi4ucHJvcHMuc3R5bGVcbiAgICAgICAgfVxuICAgIH0pLCAvKiNfX1BVUkVfXyovICRmbkZNOSRjcmVhdGVFbGVtZW50KFwiZGl2XCIsIHtcbiAgICAgICAgcmVmOiBjb250ZXh0Lm9uQ29udGVudENoYW5nZSxcbiAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgIG1pbldpZHRoOiAnMTAwJScsXG4gICAgICAgICAgICBkaXNwbGF5OiAndGFibGUnXG4gICAgICAgIH1cbiAgICB9LCBjaGlsZHJlbikpKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCRhMjFjYmY5ZjExZmNhODUzLCB7XG4gICAgZGlzcGxheU5hbWU6ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRWSUVXUE9SVF9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFNjcm9sbEFyZWFTY3JvbGxiYXJcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNDUk9MTEJBUl9OQU1FID0gJ1Njcm9sbEFyZWFTY3JvbGxiYXInO1xuY29uc3QgJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JDJmYWJkODVkMGViYTNjNTcgPSAvKiNfX1BVUkVfXyovICRmbkZNOSRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgZm9yY2VNb3VudDogZm9yY2VNb3VudCAsIC4uLnNjcm9sbGJhclByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBjb250ZXh0ID0gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHVzZVNjcm9sbEFyZWFDb250ZXh0KCQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTQ1JPTExCQVJfTkFNRSwgcHJvcHMuX19zY29wZVNjcm9sbEFyZWEpO1xuICAgIGNvbnN0IHsgb25TY3JvbGxiYXJYRW5hYmxlZENoYW5nZTogb25TY3JvbGxiYXJYRW5hYmxlZENoYW5nZSAsIG9uU2Nyb2xsYmFyWUVuYWJsZWRDaGFuZ2U6IG9uU2Nyb2xsYmFyWUVuYWJsZWRDaGFuZ2UgIH0gPSBjb250ZXh0O1xuICAgIGNvbnN0IGlzSG9yaXpvbnRhbCA9IHByb3BzLm9yaWVudGF0aW9uID09PSAnaG9yaXpvbnRhbCc7XG4gICAgJGZuRk05JHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBpc0hvcml6b250YWwgPyBvblNjcm9sbGJhclhFbmFibGVkQ2hhbmdlKHRydWUpIDogb25TY3JvbGxiYXJZRW5hYmxlZENoYW5nZSh0cnVlKTtcbiAgICAgICAgcmV0dXJuICgpPT57XG4gICAgICAgICAgICBpc0hvcml6b250YWwgPyBvblNjcm9sbGJhclhFbmFibGVkQ2hhbmdlKGZhbHNlKSA6IG9uU2Nyb2xsYmFyWUVuYWJsZWRDaGFuZ2UoZmFsc2UpO1xuICAgICAgICB9O1xuICAgIH0sIFtcbiAgICAgICAgaXNIb3Jpem9udGFsLFxuICAgICAgICBvblNjcm9sbGJhclhFbmFibGVkQ2hhbmdlLFxuICAgICAgICBvblNjcm9sbGJhcllFbmFibGVkQ2hhbmdlXG4gICAgXSk7XG4gICAgcmV0dXJuIGNvbnRleHQudHlwZSA9PT0gJ2hvdmVyJyA/IC8qI19fUFVSRV9fKi8gJGZuRk05JGNyZWF0ZUVsZW1lbnQoJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNjcm9sbEFyZWFTY3JvbGxiYXJIb3ZlciwgJGZuRk05JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBzY3JvbGxiYXJQcm9wcywge1xuICAgICAgICByZWY6IGZvcndhcmRlZFJlZixcbiAgICAgICAgZm9yY2VNb3VudDogZm9yY2VNb3VudFxuICAgIH0pKSA6IGNvbnRleHQudHlwZSA9PT0gJ3Njcm9sbCcgPyAvKiNfX1BVUkVfXyovICRmbkZNOSRjcmVhdGVFbGVtZW50KCQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTY3JvbGxBcmVhU2Nyb2xsYmFyU2Nyb2xsLCAkZm5GTTkkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIHNjcm9sbGJhclByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmLFxuICAgICAgICBmb3JjZU1vdW50OiBmb3JjZU1vdW50XG4gICAgfSkpIDogY29udGV4dC50eXBlID09PSAnYXV0bycgPyAvKiNfX1BVUkVfXyovICRmbkZNOSRjcmVhdGVFbGVtZW50KCQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTY3JvbGxBcmVhU2Nyb2xsYmFyQXV0bywgJGZuRk05JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBzY3JvbGxiYXJQcm9wcywge1xuICAgICAgICByZWY6IGZvcndhcmRlZFJlZixcbiAgICAgICAgZm9yY2VNb3VudDogZm9yY2VNb3VudFxuICAgIH0pKSA6IGNvbnRleHQudHlwZSA9PT0gJ2Fsd2F5cycgPyAvKiNfX1BVUkVfXyovICRmbkZNOSRjcmVhdGVFbGVtZW50KCQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTY3JvbGxBcmVhU2Nyb2xsYmFyVmlzaWJsZSwgJGZuRk05JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBzY3JvbGxiYXJQcm9wcywge1xuICAgICAgICByZWY6IGZvcndhcmRlZFJlZlxuICAgIH0pKSA6IG51bGw7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkNTdhY2JhODdkNmUyNTU4NiRleHBvcnQkMmZhYmQ4NWQwZWJhM2M1Nywge1xuICAgIGRpc3BsYXlOYW1lOiAkNTdhY2JhODdkNmUyNTU4NiR2YXIkU0NST0xMQkFSX05BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkNTdhY2JhODdkNmUyNTU4NiR2YXIkU2Nyb2xsQXJlYVNjcm9sbGJhckhvdmVyID0gLyojX19QVVJFX18qLyAkZm5GTTkkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICBjb25zdCB7IGZvcmNlTW91bnQ6IGZvcmNlTW91bnQgLCAuLi5zY3JvbGxiYXJQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgY29udGV4dCA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciR1c2VTY3JvbGxBcmVhQ29udGV4dCgkNTdhY2JhODdkNmUyNTU4NiR2YXIkU0NST0xMQkFSX05BTUUsIHByb3BzLl9fc2NvcGVTY3JvbGxBcmVhKTtcbiAgICBjb25zdCBbdmlzaWJsZSwgc2V0VmlzaWJsZV0gPSAkZm5GTTkkdXNlU3RhdGUoZmFsc2UpO1xuICAgICRmbkZNOSR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgY29uc3Qgc2Nyb2xsQXJlYSA9IGNvbnRleHQuc2Nyb2xsQXJlYTtcbiAgICAgICAgbGV0IGhpZGVUaW1lciA9IDA7XG4gICAgICAgIGlmIChzY3JvbGxBcmVhKSB7XG4gICAgICAgICAgICBjb25zdCBoYW5kbGVQb2ludGVyRW50ZXIgPSAoKT0+e1xuICAgICAgICAgICAgICAgIHdpbmRvdy5jbGVhclRpbWVvdXQoaGlkZVRpbWVyKTtcbiAgICAgICAgICAgICAgICBzZXRWaXNpYmxlKHRydWUpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZVBvaW50ZXJMZWF2ZSA9ICgpPT57XG4gICAgICAgICAgICAgICAgaGlkZVRpbWVyID0gd2luZG93LnNldFRpbWVvdXQoKCk9PnNldFZpc2libGUoZmFsc2UpXG4gICAgICAgICAgICAgICAgLCBjb250ZXh0LnNjcm9sbEhpZGVEZWxheSk7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgc2Nyb2xsQXJlYS5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVyZW50ZXInLCBoYW5kbGVQb2ludGVyRW50ZXIpO1xuICAgICAgICAgICAgc2Nyb2xsQXJlYS5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVybGVhdmUnLCBoYW5kbGVQb2ludGVyTGVhdmUpO1xuICAgICAgICAgICAgcmV0dXJuICgpPT57XG4gICAgICAgICAgICAgICAgd2luZG93LmNsZWFyVGltZW91dChoaWRlVGltZXIpO1xuICAgICAgICAgICAgICAgIHNjcm9sbEFyZWEucmVtb3ZlRXZlbnRMaXN0ZW5lcigncG9pbnRlcmVudGVyJywgaGFuZGxlUG9pbnRlckVudGVyKTtcbiAgICAgICAgICAgICAgICBzY3JvbGxBcmVhLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJsZWF2ZScsIGhhbmRsZVBvaW50ZXJMZWF2ZSk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBjb250ZXh0LnNjcm9sbEFyZWEsXG4gICAgICAgIGNvbnRleHQuc2Nyb2xsSGlkZURlbGF5XG4gICAgXSk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJGZuRk05JGNyZWF0ZUVsZW1lbnQoJGZuRk05JFByZXNlbmNlLCB7XG4gICAgICAgIHByZXNlbnQ6IGZvcmNlTW91bnQgfHwgdmlzaWJsZVxuICAgIH0sIC8qI19fUFVSRV9fKi8gJGZuRk05JGNyZWF0ZUVsZW1lbnQoJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNjcm9sbEFyZWFTY3JvbGxiYXJBdXRvLCAkZm5GTTkkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe1xuICAgICAgICBcImRhdGEtc3RhdGVcIjogdmlzaWJsZSA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nXG4gICAgfSwgc2Nyb2xsYmFyUHJvcHMsIHtcbiAgICAgICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgICB9KSkpO1xufSk7XG5jb25zdCAkNTdhY2JhODdkNmUyNTU4NiR2YXIkU2Nyb2xsQXJlYVNjcm9sbGJhclNjcm9sbCA9IC8qI19fUFVSRV9fKi8gJGZuRk05JGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBmb3JjZU1vdW50OiBmb3JjZU1vdW50ICwgLi4uc2Nyb2xsYmFyUHJvcHMgfSA9IHByb3BzO1xuICAgIGNvbnN0IGNvbnRleHQgPSAkNTdhY2JhODdkNmUyNTU4NiR2YXIkdXNlU2Nyb2xsQXJlYUNvbnRleHQoJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNDUk9MTEJBUl9OQU1FLCBwcm9wcy5fX3Njb3BlU2Nyb2xsQXJlYSk7XG4gICAgY29uc3QgaXNIb3Jpem9udGFsID0gcHJvcHMub3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJztcbiAgICBjb25zdCBkZWJvdW5jZVNjcm9sbEVuZCA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciR1c2VEZWJvdW5jZUNhbGxiYWNrKCgpPT5zZW5kKCdTQ1JPTExfRU5EJylcbiAgICAsIDEwMCk7XG4gICAgY29uc3QgW3N0YXRlLCBzZW5kXSA9ICQ2YzJlMjQ1NzFjOTAzOTFmJGV4cG9ydCQzZTY1NDNkZTE0Zjg2MTRmKCdoaWRkZW4nLCB7XG4gICAgICAgIGhpZGRlbjoge1xuICAgICAgICAgICAgU0NST0xMOiAnc2Nyb2xsaW5nJ1xuICAgICAgICB9LFxuICAgICAgICBzY3JvbGxpbmc6IHtcbiAgICAgICAgICAgIFNDUk9MTF9FTkQ6ICdpZGxlJyxcbiAgICAgICAgICAgIFBPSU5URVJfRU5URVI6ICdpbnRlcmFjdGluZydcbiAgICAgICAgfSxcbiAgICAgICAgaW50ZXJhY3Rpbmc6IHtcbiAgICAgICAgICAgIFNDUk9MTDogJ2ludGVyYWN0aW5nJyxcbiAgICAgICAgICAgIFBPSU5URVJfTEVBVkU6ICdpZGxlJ1xuICAgICAgICB9LFxuICAgICAgICBpZGxlOiB7XG4gICAgICAgICAgICBISURFOiAnaGlkZGVuJyxcbiAgICAgICAgICAgIFNDUk9MTDogJ3Njcm9sbGluZycsXG4gICAgICAgICAgICBQT0lOVEVSX0VOVEVSOiAnaW50ZXJhY3RpbmcnXG4gICAgICAgIH1cbiAgICB9KTtcbiAgICAkZm5GTTkkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGlmIChzdGF0ZSA9PT0gJ2lkbGUnKSB7XG4gICAgICAgICAgICBjb25zdCBoaWRlVGltZXIgPSB3aW5kb3cuc2V0VGltZW91dCgoKT0+c2VuZCgnSElERScpXG4gICAgICAgICAgICAsIGNvbnRleHQuc2Nyb2xsSGlkZURlbGF5KTtcbiAgICAgICAgICAgIHJldHVybiAoKT0+d2luZG93LmNsZWFyVGltZW91dChoaWRlVGltZXIpXG4gICAgICAgICAgICA7XG4gICAgICAgIH1cbiAgICB9LCBbXG4gICAgICAgIHN0YXRlLFxuICAgICAgICBjb250ZXh0LnNjcm9sbEhpZGVEZWxheSxcbiAgICAgICAgc2VuZFxuICAgIF0pO1xuICAgICRmbkZNOSR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgY29uc3Qgdmlld3BvcnQgPSBjb250ZXh0LnZpZXdwb3J0O1xuICAgICAgICBjb25zdCBzY3JvbGxEaXJlY3Rpb24gPSBpc0hvcml6b250YWwgPyAnc2Nyb2xsTGVmdCcgOiAnc2Nyb2xsVG9wJztcbiAgICAgICAgaWYgKHZpZXdwb3J0KSB7XG4gICAgICAgICAgICBsZXQgcHJldlNjcm9sbFBvcyA9IHZpZXdwb3J0W3Njcm9sbERpcmVjdGlvbl07XG4gICAgICAgICAgICBjb25zdCBoYW5kbGVTY3JvbGwgPSAoKT0+e1xuICAgICAgICAgICAgICAgIGNvbnN0IHNjcm9sbFBvcyA9IHZpZXdwb3J0W3Njcm9sbERpcmVjdGlvbl07XG4gICAgICAgICAgICAgICAgY29uc3QgaGFzU2Nyb2xsSW5EaXJlY3Rpb25DaGFuZ2VkID0gcHJldlNjcm9sbFBvcyAhPT0gc2Nyb2xsUG9zO1xuICAgICAgICAgICAgICAgIGlmIChoYXNTY3JvbGxJbkRpcmVjdGlvbkNoYW5nZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgc2VuZCgnU0NST0xMJyk7XG4gICAgICAgICAgICAgICAgICAgIGRlYm91bmNlU2Nyb2xsRW5kKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHByZXZTY3JvbGxQb3MgPSBzY3JvbGxQb3M7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgdmlld3BvcnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgaGFuZGxlU2Nyb2xsKTtcbiAgICAgICAgICAgIHJldHVybiAoKT0+dmlld3BvcnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgaGFuZGxlU2Nyb2xsKVxuICAgICAgICAgICAgO1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBjb250ZXh0LnZpZXdwb3J0LFxuICAgICAgICBpc0hvcml6b250YWwsXG4gICAgICAgIHNlbmQsXG4gICAgICAgIGRlYm91bmNlU2Nyb2xsRW5kXG4gICAgXSk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJGZuRk05JGNyZWF0ZUVsZW1lbnQoJGZuRk05JFByZXNlbmNlLCB7XG4gICAgICAgIHByZXNlbnQ6IGZvcmNlTW91bnQgfHwgc3RhdGUgIT09ICdoaWRkZW4nXG4gICAgfSwgLyojX19QVVJFX18qLyAkZm5GTTkkY3JlYXRlRWxlbWVudCgkNTdhY2JhODdkNmUyNTU4NiR2YXIkU2Nyb2xsQXJlYVNjcm9sbGJhclZpc2libGUsICRmbkZNOSRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7XG4gICAgICAgIFwiZGF0YS1zdGF0ZVwiOiBzdGF0ZSA9PT0gJ2hpZGRlbicgPyAnaGlkZGVuJyA6ICd2aXNpYmxlJ1xuICAgIH0sIHNjcm9sbGJhclByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmLFxuICAgICAgICBvblBvaW50ZXJFbnRlcjogJGZuRk05JGNvbXBvc2VFdmVudEhhbmRsZXJzKHByb3BzLm9uUG9pbnRlckVudGVyLCAoKT0+c2VuZCgnUE9JTlRFUl9FTlRFUicpXG4gICAgICAgICksXG4gICAgICAgIG9uUG9pbnRlckxlYXZlOiAkZm5GTTkkY29tcG9zZUV2ZW50SGFuZGxlcnMocHJvcHMub25Qb2ludGVyTGVhdmUsICgpPT5zZW5kKCdQT0lOVEVSX0xFQVZFJylcbiAgICAgICAgKVxuICAgIH0pKSk7XG59KTtcbmNvbnN0ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTY3JvbGxBcmVhU2Nyb2xsYmFyQXV0byA9IC8qI19fUFVSRV9fKi8gJGZuRk05JGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgY29udGV4dCA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciR1c2VTY3JvbGxBcmVhQ29udGV4dCgkNTdhY2JhODdkNmUyNTU4NiR2YXIkU0NST0xMQkFSX05BTUUsIHByb3BzLl9fc2NvcGVTY3JvbGxBcmVhKTtcbiAgICBjb25zdCB7IGZvcmNlTW91bnQ6IGZvcmNlTW91bnQgLCAuLi5zY3JvbGxiYXJQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgW3Zpc2libGUsIHNldFZpc2libGVdID0gJGZuRk05JHVzZVN0YXRlKGZhbHNlKTtcbiAgICBjb25zdCBpc0hvcml6b250YWwgPSBwcm9wcy5vcmllbnRhdGlvbiA9PT0gJ2hvcml6b250YWwnO1xuICAgIGNvbnN0IGhhbmRsZVJlc2l6ZSA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciR1c2VEZWJvdW5jZUNhbGxiYWNrKCgpPT57XG4gICAgICAgIGlmIChjb250ZXh0LnZpZXdwb3J0KSB7XG4gICAgICAgICAgICBjb25zdCBpc092ZXJmbG93WCA9IGNvbnRleHQudmlld3BvcnQub2Zmc2V0V2lkdGggPCBjb250ZXh0LnZpZXdwb3J0LnNjcm9sbFdpZHRoO1xuICAgICAgICAgICAgY29uc3QgaXNPdmVyZmxvd1kgPSBjb250ZXh0LnZpZXdwb3J0Lm9mZnNldEhlaWdodCA8IGNvbnRleHQudmlld3BvcnQuc2Nyb2xsSGVpZ2h0O1xuICAgICAgICAgICAgc2V0VmlzaWJsZShpc0hvcml6b250YWwgPyBpc092ZXJmbG93WCA6IGlzT3ZlcmZsb3dZKTtcbiAgICAgICAgfVxuICAgIH0sIDEwKTtcbiAgICAkNTdhY2JhODdkNmUyNTU4NiR2YXIkdXNlUmVzaXplT2JzZXJ2ZXIoY29udGV4dC52aWV3cG9ydCwgaGFuZGxlUmVzaXplKTtcbiAgICAkNTdhY2JhODdkNmUyNTU4NiR2YXIkdXNlUmVzaXplT2JzZXJ2ZXIoY29udGV4dC5jb250ZW50LCBoYW5kbGVSZXNpemUpO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICRmbkZNOSRjcmVhdGVFbGVtZW50KCRmbkZNOSRQcmVzZW5jZSwge1xuICAgICAgICBwcmVzZW50OiBmb3JjZU1vdW50IHx8IHZpc2libGVcbiAgICB9LCAvKiNfX1BVUkVfXyovICRmbkZNOSRjcmVhdGVFbGVtZW50KCQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTY3JvbGxBcmVhU2Nyb2xsYmFyVmlzaWJsZSwgJGZuRk05JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHtcbiAgICAgICAgXCJkYXRhLXN0YXRlXCI6IHZpc2libGUgPyAndmlzaWJsZScgOiAnaGlkZGVuJ1xuICAgIH0sIHNjcm9sbGJhclByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gICAgfSkpKTtcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkNTdhY2JhODdkNmUyNTU4NiR2YXIkU2Nyb2xsQXJlYVNjcm9sbGJhclZpc2libGUgPSAvKiNfX1BVUkVfXyovICRmbkZNOSRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgb3JpZW50YXRpb246IG9yaWVudGF0aW9uID0gJ3ZlcnRpY2FsJyAsIC4uLnNjcm9sbGJhclByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBjb250ZXh0ID0gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHVzZVNjcm9sbEFyZWFDb250ZXh0KCQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTQ1JPTExCQVJfTkFNRSwgcHJvcHMuX19zY29wZVNjcm9sbEFyZWEpO1xuICAgIGNvbnN0IHRodW1iUmVmID0gJGZuRk05JHVzZVJlZihudWxsKTtcbiAgICBjb25zdCBwb2ludGVyT2Zmc2V0UmVmID0gJGZuRk05JHVzZVJlZigwKTtcbiAgICBjb25zdCBbc2l6ZXMsIHNldFNpemVzXSA9ICRmbkZNOSR1c2VTdGF0ZSh7XG4gICAgICAgIGNvbnRlbnQ6IDAsXG4gICAgICAgIHZpZXdwb3J0OiAwLFxuICAgICAgICBzY3JvbGxiYXI6IHtcbiAgICAgICAgICAgIHNpemU6IDAsXG4gICAgICAgICAgICBwYWRkaW5nU3RhcnQ6IDAsXG4gICAgICAgICAgICBwYWRkaW5nRW5kOiAwXG4gICAgICAgIH1cbiAgICB9KTtcbiAgICBjb25zdCB0aHVtYlJhdGlvID0gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGdldFRodW1iUmF0aW8oc2l6ZXMudmlld3BvcnQsIHNpemVzLmNvbnRlbnQpO1xuICAgIGNvbnN0IGNvbW1vblByb3BzID0ge1xuICAgICAgICAuLi5zY3JvbGxiYXJQcm9wcyxcbiAgICAgICAgc2l6ZXM6IHNpemVzLFxuICAgICAgICBvblNpemVzQ2hhbmdlOiBzZXRTaXplcyxcbiAgICAgICAgaGFzVGh1bWI6IEJvb2xlYW4odGh1bWJSYXRpbyA+IDAgJiYgdGh1bWJSYXRpbyA8IDEpLFxuICAgICAgICBvblRodW1iQ2hhbmdlOiAodGh1bWIpPT50aHVtYlJlZi5jdXJyZW50ID0gdGh1bWJcbiAgICAgICAgLFxuICAgICAgICBvblRodW1iUG9pbnRlclVwOiAoKT0+cG9pbnRlck9mZnNldFJlZi5jdXJyZW50ID0gMFxuICAgICAgICAsXG4gICAgICAgIG9uVGh1bWJQb2ludGVyRG93bjogKHBvaW50ZXJQb3MpPT5wb2ludGVyT2Zmc2V0UmVmLmN1cnJlbnQgPSBwb2ludGVyUG9zXG4gICAgfTtcbiAgICBmdW5jdGlvbiBnZXRTY3JvbGxQb3NpdGlvbihwb2ludGVyUG9zLCBkaXIpIHtcbiAgICAgICAgcmV0dXJuICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRnZXRTY3JvbGxQb3NpdGlvbkZyb21Qb2ludGVyKHBvaW50ZXJQb3MsIHBvaW50ZXJPZmZzZXRSZWYuY3VycmVudCwgc2l6ZXMsIGRpcik7XG4gICAgfVxuICAgIGlmIChvcmllbnRhdGlvbiA9PT0gJ2hvcml6b250YWwnKSByZXR1cm4gLyojX19QVVJFX18qLyAkZm5GTTkkY3JlYXRlRWxlbWVudCgkNTdhY2JhODdkNmUyNTU4NiR2YXIkU2Nyb2xsQXJlYVNjcm9sbGJhclgsICRmbkZNOSRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7fSwgY29tbW9uUHJvcHMsIHtcbiAgICAgICAgcmVmOiBmb3J3YXJkZWRSZWYsXG4gICAgICAgIG9uVGh1bWJQb3NpdGlvbkNoYW5nZTogKCk9PntcbiAgICAgICAgICAgIGlmIChjb250ZXh0LnZpZXdwb3J0ICYmIHRodW1iUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBzY3JvbGxQb3MgPSBjb250ZXh0LnZpZXdwb3J0LnNjcm9sbExlZnQ7XG4gICAgICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGdldFRodW1iT2Zmc2V0RnJvbVNjcm9sbChzY3JvbGxQb3MsIHNpemVzLCBjb250ZXh0LmRpcik7XG4gICAgICAgICAgICAgICAgdGh1bWJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBgdHJhbnNsYXRlM2QoJHtvZmZzZXR9cHgsIDAsIDApYDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgb25XaGVlbFNjcm9sbDogKHNjcm9sbFBvcyk9PntcbiAgICAgICAgICAgIGlmIChjb250ZXh0LnZpZXdwb3J0KSBjb250ZXh0LnZpZXdwb3J0LnNjcm9sbExlZnQgPSBzY3JvbGxQb3M7XG4gICAgICAgIH0sXG4gICAgICAgIG9uRHJhZ1Njcm9sbDogKHBvaW50ZXJQb3MpPT57XG4gICAgICAgICAgICBpZiAoY29udGV4dC52aWV3cG9ydCkgY29udGV4dC52aWV3cG9ydC5zY3JvbGxMZWZ0ID0gZ2V0U2Nyb2xsUG9zaXRpb24ocG9pbnRlclBvcywgY29udGV4dC5kaXIpO1xuICAgICAgICB9XG4gICAgfSkpO1xuICAgIGlmIChvcmllbnRhdGlvbiA9PT0gJ3ZlcnRpY2FsJykgcmV0dXJuIC8qI19fUFVSRV9fKi8gJGZuRk05JGNyZWF0ZUVsZW1lbnQoJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNjcm9sbEFyZWFTY3JvbGxiYXJZLCAkZm5GTTkkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIGNvbW1vblByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmLFxuICAgICAgICBvblRodW1iUG9zaXRpb25DaGFuZ2U6ICgpPT57XG4gICAgICAgICAgICBpZiAoY29udGV4dC52aWV3cG9ydCAmJiB0aHVtYlJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2Nyb2xsUG9zID0gY29udGV4dC52aWV3cG9ydC5zY3JvbGxUb3A7XG4gICAgICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGdldFRodW1iT2Zmc2V0RnJvbVNjcm9sbChzY3JvbGxQb3MsIHNpemVzKTtcbiAgICAgICAgICAgICAgICB0aHVtYlJlZi5jdXJyZW50LnN0eWxlLnRyYW5zZm9ybSA9IGB0cmFuc2xhdGUzZCgwLCAke29mZnNldH1weCwgMClgO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBvbldoZWVsU2Nyb2xsOiAoc2Nyb2xsUG9zKT0+e1xuICAgICAgICAgICAgaWYgKGNvbnRleHQudmlld3BvcnQpIGNvbnRleHQudmlld3BvcnQuc2Nyb2xsVG9wID0gc2Nyb2xsUG9zO1xuICAgICAgICB9LFxuICAgICAgICBvbkRyYWdTY3JvbGw6IChwb2ludGVyUG9zKT0+e1xuICAgICAgICAgICAgaWYgKGNvbnRleHQudmlld3BvcnQpIGNvbnRleHQudmlld3BvcnQuc2Nyb2xsVG9wID0gZ2V0U2Nyb2xsUG9zaXRpb24ocG9pbnRlclBvcyk7XG4gICAgICAgIH1cbiAgICB9KSk7XG4gICAgcmV0dXJuIG51bGw7XG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNjcm9sbEFyZWFTY3JvbGxiYXJYID0gLyojX19QVVJFX18qLyAkZm5GTTkkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICBjb25zdCB7IHNpemVzOiBzaXplcyAsIG9uU2l6ZXNDaGFuZ2U6IG9uU2l6ZXNDaGFuZ2UgLCAuLi5zY3JvbGxiYXJQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgY29udGV4dCA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciR1c2VTY3JvbGxBcmVhQ29udGV4dCgkNTdhY2JhODdkNmUyNTU4NiR2YXIkU0NST0xMQkFSX05BTUUsIHByb3BzLl9fc2NvcGVTY3JvbGxBcmVhKTtcbiAgICBjb25zdCBbY29tcHV0ZWRTdHlsZSwgc2V0Q29tcHV0ZWRTdHlsZV0gPSAkZm5GTTkkdXNlU3RhdGUoKTtcbiAgICBjb25zdCByZWYgPSAkZm5GTTkkdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IGNvbXBvc2VSZWZzID0gJGZuRk05JHVzZUNvbXBvc2VkUmVmcyhmb3J3YXJkZWRSZWYsIHJlZiwgY29udGV4dC5vblNjcm9sbGJhclhDaGFuZ2UpO1xuICAgICRmbkZNOSR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgaWYgKHJlZi5jdXJyZW50KSBzZXRDb21wdXRlZFN0eWxlKGdldENvbXB1dGVkU3R5bGUocmVmLmN1cnJlbnQpKTtcbiAgICB9LCBbXG4gICAgICAgIHJlZlxuICAgIF0pO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICRmbkZNOSRjcmVhdGVFbGVtZW50KCQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTY3JvbGxBcmVhU2Nyb2xsYmFySW1wbCwgJGZuRk05JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHtcbiAgICAgICAgXCJkYXRhLW9yaWVudGF0aW9uXCI6IFwiaG9yaXpvbnRhbFwiXG4gICAgfSwgc2Nyb2xsYmFyUHJvcHMsIHtcbiAgICAgICAgcmVmOiBjb21wb3NlUmVmcyxcbiAgICAgICAgc2l6ZXM6IHNpemVzLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgYm90dG9tOiAwLFxuICAgICAgICAgICAgbGVmdDogY29udGV4dC5kaXIgPT09ICdydGwnID8gJ3ZhcigtLXJhZGl4LXNjcm9sbC1hcmVhLWNvcm5lci13aWR0aCknIDogMCxcbiAgICAgICAgICAgIHJpZ2h0OiBjb250ZXh0LmRpciA9PT0gJ2x0cicgPyAndmFyKC0tcmFkaXgtc2Nyb2xsLWFyZWEtY29ybmVyLXdpZHRoKScgOiAwLFxuICAgICAgICAgICAgWyctLXJhZGl4LXNjcm9sbC1hcmVhLXRodW1iLXdpZHRoJ106ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRnZXRUaHVtYlNpemUoc2l6ZXMpICsgJ3B4JyxcbiAgICAgICAgICAgIC4uLnByb3BzLnN0eWxlXG4gICAgICAgIH0sXG4gICAgICAgIG9uVGh1bWJQb2ludGVyRG93bjogKHBvaW50ZXJQb3MpPT5wcm9wcy5vblRodW1iUG9pbnRlckRvd24ocG9pbnRlclBvcy54KVxuICAgICAgICAsXG4gICAgICAgIG9uRHJhZ1Njcm9sbDogKHBvaW50ZXJQb3MpPT5wcm9wcy5vbkRyYWdTY3JvbGwocG9pbnRlclBvcy54KVxuICAgICAgICAsXG4gICAgICAgIG9uV2hlZWxTY3JvbGw6IChldmVudCwgbWF4U2Nyb2xsUG9zKT0+e1xuICAgICAgICAgICAgaWYgKGNvbnRleHQudmlld3BvcnQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBzY3JvbGxQb3MgPSBjb250ZXh0LnZpZXdwb3J0LnNjcm9sbExlZnQgKyBldmVudC5kZWx0YVg7XG4gICAgICAgICAgICAgICAgcHJvcHMub25XaGVlbFNjcm9sbChzY3JvbGxQb3MpOyAvLyBwcmV2ZW50IHdpbmRvdyBzY3JvbGwgd2hlbiB3aGVlbGluZyBvbiBzY3JvbGxiYXJcbiAgICAgICAgICAgICAgICBpZiAoJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGlzU2Nyb2xsaW5nV2l0aGluU2Nyb2xsYmFyQm91bmRzKHNjcm9sbFBvcywgbWF4U2Nyb2xsUG9zKSkgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgb25SZXNpemU6ICgpPT57XG4gICAgICAgICAgICBpZiAocmVmLmN1cnJlbnQgJiYgY29udGV4dC52aWV3cG9ydCAmJiBjb21wdXRlZFN0eWxlKSBvblNpemVzQ2hhbmdlKHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBjb250ZXh0LnZpZXdwb3J0LnNjcm9sbFdpZHRoLFxuICAgICAgICAgICAgICAgIHZpZXdwb3J0OiBjb250ZXh0LnZpZXdwb3J0Lm9mZnNldFdpZHRoLFxuICAgICAgICAgICAgICAgIHNjcm9sbGJhcjoge1xuICAgICAgICAgICAgICAgICAgICBzaXplOiByZWYuY3VycmVudC5jbGllbnRXaWR0aCxcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZ1N0YXJ0OiAkNTdhY2JhODdkNmUyNTU4NiR2YXIkdG9JbnQoY29tcHV0ZWRTdHlsZS5wYWRkaW5nTGVmdCksXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmdFbmQ6ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciR0b0ludChjb21wdXRlZFN0eWxlLnBhZGRpbmdSaWdodClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pKTtcbn0pO1xuY29uc3QgJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNjcm9sbEFyZWFTY3JvbGxiYXJZID0gLyojX19QVVJFX18qLyAkZm5GTTkkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICBjb25zdCB7IHNpemVzOiBzaXplcyAsIG9uU2l6ZXNDaGFuZ2U6IG9uU2l6ZXNDaGFuZ2UgLCAuLi5zY3JvbGxiYXJQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgY29udGV4dCA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciR1c2VTY3JvbGxBcmVhQ29udGV4dCgkNTdhY2JhODdkNmUyNTU4NiR2YXIkU0NST0xMQkFSX05BTUUsIHByb3BzLl9fc2NvcGVTY3JvbGxBcmVhKTtcbiAgICBjb25zdCBbY29tcHV0ZWRTdHlsZSwgc2V0Q29tcHV0ZWRTdHlsZV0gPSAkZm5GTTkkdXNlU3RhdGUoKTtcbiAgICBjb25zdCByZWYgPSAkZm5GTTkkdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IGNvbXBvc2VSZWZzID0gJGZuRk05JHVzZUNvbXBvc2VkUmVmcyhmb3J3YXJkZWRSZWYsIHJlZiwgY29udGV4dC5vblNjcm9sbGJhcllDaGFuZ2UpO1xuICAgICRmbkZNOSR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgaWYgKHJlZi5jdXJyZW50KSBzZXRDb21wdXRlZFN0eWxlKGdldENvbXB1dGVkU3R5bGUocmVmLmN1cnJlbnQpKTtcbiAgICB9LCBbXG4gICAgICAgIHJlZlxuICAgIF0pO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICRmbkZNOSRjcmVhdGVFbGVtZW50KCQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTY3JvbGxBcmVhU2Nyb2xsYmFySW1wbCwgJGZuRk05JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHtcbiAgICAgICAgXCJkYXRhLW9yaWVudGF0aW9uXCI6IFwidmVydGljYWxcIlxuICAgIH0sIHNjcm9sbGJhclByb3BzLCB7XG4gICAgICAgIHJlZjogY29tcG9zZVJlZnMsXG4gICAgICAgIHNpemVzOiBzaXplcyxcbiAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgIHRvcDogMCxcbiAgICAgICAgICAgIHJpZ2h0OiBjb250ZXh0LmRpciA9PT0gJ2x0cicgPyAwIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgbGVmdDogY29udGV4dC5kaXIgPT09ICdydGwnID8gMCA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGJvdHRvbTogJ3ZhcigtLXJhZGl4LXNjcm9sbC1hcmVhLWNvcm5lci1oZWlnaHQpJyxcbiAgICAgICAgICAgIFsnLS1yYWRpeC1zY3JvbGwtYXJlYS10aHVtYi1oZWlnaHQnXTogJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGdldFRodW1iU2l6ZShzaXplcykgKyAncHgnLFxuICAgICAgICAgICAgLi4ucHJvcHMuc3R5bGVcbiAgICAgICAgfSxcbiAgICAgICAgb25UaHVtYlBvaW50ZXJEb3duOiAocG9pbnRlclBvcyk9PnByb3BzLm9uVGh1bWJQb2ludGVyRG93bihwb2ludGVyUG9zLnkpXG4gICAgICAgICxcbiAgICAgICAgb25EcmFnU2Nyb2xsOiAocG9pbnRlclBvcyk9PnByb3BzLm9uRHJhZ1Njcm9sbChwb2ludGVyUG9zLnkpXG4gICAgICAgICxcbiAgICAgICAgb25XaGVlbFNjcm9sbDogKGV2ZW50LCBtYXhTY3JvbGxQb3MpPT57XG4gICAgICAgICAgICBpZiAoY29udGV4dC52aWV3cG9ydCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHNjcm9sbFBvcyA9IGNvbnRleHQudmlld3BvcnQuc2Nyb2xsVG9wICsgZXZlbnQuZGVsdGFZO1xuICAgICAgICAgICAgICAgIHByb3BzLm9uV2hlZWxTY3JvbGwoc2Nyb2xsUG9zKTsgLy8gcHJldmVudCB3aW5kb3cgc2Nyb2xsIHdoZW4gd2hlZWxpbmcgb24gc2Nyb2xsYmFyXG4gICAgICAgICAgICAgICAgaWYgKCQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRpc1Njcm9sbGluZ1dpdGhpblNjcm9sbGJhckJvdW5kcyhzY3JvbGxQb3MsIG1heFNjcm9sbFBvcykpIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIG9uUmVzaXplOiAoKT0+e1xuICAgICAgICAgICAgaWYgKHJlZi5jdXJyZW50ICYmIGNvbnRleHQudmlld3BvcnQgJiYgY29tcHV0ZWRTdHlsZSkgb25TaXplc0NoYW5nZSh7XG4gICAgICAgICAgICAgICAgY29udGVudDogY29udGV4dC52aWV3cG9ydC5zY3JvbGxIZWlnaHQsXG4gICAgICAgICAgICAgICAgdmlld3BvcnQ6IGNvbnRleHQudmlld3BvcnQub2Zmc2V0SGVpZ2h0LFxuICAgICAgICAgICAgICAgIHNjcm9sbGJhcjoge1xuICAgICAgICAgICAgICAgICAgICBzaXplOiByZWYuY3VycmVudC5jbGllbnRIZWlnaHQsXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmdTdGFydDogJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHRvSW50KGNvbXB1dGVkU3R5bGUucGFkZGluZ1RvcCksXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmdFbmQ6ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciR0b0ludChjb21wdXRlZFN0eWxlLnBhZGRpbmdCb3R0b20pXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9KSk7XG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgWyQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTY3JvbGxiYXJQcm92aWRlciwgJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHVzZVNjcm9sbGJhckNvbnRleHRdID0gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGNyZWF0ZVNjcm9sbEFyZWFDb250ZXh0KCQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTQ1JPTExCQVJfTkFNRSk7XG5jb25zdCAkNTdhY2JhODdkNmUyNTU4NiR2YXIkU2Nyb2xsQXJlYVNjcm9sbGJhckltcGwgPSAvKiNfX1BVUkVfXyovICRmbkZNOSRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgX19zY29wZVNjcm9sbEFyZWE6IF9fc2NvcGVTY3JvbGxBcmVhICwgc2l6ZXM6IHNpemVzICwgaGFzVGh1bWI6IGhhc1RodW1iICwgb25UaHVtYkNoYW5nZTogb25UaHVtYkNoYW5nZSAsIG9uVGh1bWJQb2ludGVyVXA6IG9uVGh1bWJQb2ludGVyVXAgLCBvblRodW1iUG9pbnRlckRvd246IG9uVGh1bWJQb2ludGVyRG93biAsIG9uVGh1bWJQb3NpdGlvbkNoYW5nZTogb25UaHVtYlBvc2l0aW9uQ2hhbmdlICwgb25EcmFnU2Nyb2xsOiBvbkRyYWdTY3JvbGwgLCBvbldoZWVsU2Nyb2xsOiBvbldoZWVsU2Nyb2xsICwgb25SZXNpemU6IG9uUmVzaXplICwgLi4uc2Nyb2xsYmFyUHJvcHMgfSA9IHByb3BzO1xuICAgIGNvbnN0IGNvbnRleHQgPSAkNTdhY2JhODdkNmUyNTU4NiR2YXIkdXNlU2Nyb2xsQXJlYUNvbnRleHQoJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNDUk9MTEJBUl9OQU1FLCBfX3Njb3BlU2Nyb2xsQXJlYSk7XG4gICAgY29uc3QgW3Njcm9sbGJhciwgc2V0U2Nyb2xsYmFyXSA9ICRmbkZNOSR1c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBjb21wb3NlUmVmcyA9ICRmbkZNOSR1c2VDb21wb3NlZFJlZnMoZm9yd2FyZGVkUmVmLCAobm9kZSk9PnNldFNjcm9sbGJhcihub2RlKVxuICAgICk7XG4gICAgY29uc3QgcmVjdFJlZiA9ICRmbkZNOSR1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgcHJldldlYmtpdFVzZXJTZWxlY3RSZWYgPSAkZm5GTTkkdXNlUmVmKCcnKTtcbiAgICBjb25zdCB2aWV3cG9ydCA9IGNvbnRleHQudmlld3BvcnQ7XG4gICAgY29uc3QgbWF4U2Nyb2xsUG9zID0gc2l6ZXMuY29udGVudCAtIHNpemVzLnZpZXdwb3J0O1xuICAgIGNvbnN0IGhhbmRsZVdoZWVsU2Nyb2xsID0gJGZuRk05JHVzZUNhbGxiYWNrUmVmKG9uV2hlZWxTY3JvbGwpO1xuICAgIGNvbnN0IGhhbmRsZVRodW1iUG9zaXRpb25DaGFuZ2UgPSAkZm5GTTkkdXNlQ2FsbGJhY2tSZWYob25UaHVtYlBvc2l0aW9uQ2hhbmdlKTtcbiAgICBjb25zdCBoYW5kbGVSZXNpemUgPSAkNTdhY2JhODdkNmUyNTU4NiR2YXIkdXNlRGVib3VuY2VDYWxsYmFjayhvblJlc2l6ZSwgMTApO1xuICAgIGZ1bmN0aW9uIGhhbmRsZURyYWdTY3JvbGwoZXZlbnQpIHtcbiAgICAgICAgaWYgKHJlY3RSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgY29uc3QgeCA9IGV2ZW50LmNsaWVudFggLSByZWN0UmVmLmN1cnJlbnQubGVmdDtcbiAgICAgICAgICAgIGNvbnN0IHkgPSBldmVudC5jbGllbnRZIC0gcmVjdFJlZi5jdXJyZW50LnRvcDtcbiAgICAgICAgICAgIG9uRHJhZ1Njcm9sbCh7XG4gICAgICAgICAgICAgICAgeDogeCxcbiAgICAgICAgICAgICAgICB5OiB5XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICogV2UgYmluZCB3aGVlbCBldmVudCBpbXBlcmF0aXZlbHkgc28gd2UgY2FuIHN3aXRjaCBvZmYgcGFzc2l2ZVxuICAgKiBtb2RlIGZvciBkb2N1bWVudCB3aGVlbCBldmVudCB0byBhbGxvdyBpdCB0byBiZSBwcmV2ZW50ZWRcbiAgICovICRmbkZNOSR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgY29uc3QgaGFuZGxlV2hlZWwgPSAoZXZlbnQpPT57XG4gICAgICAgICAgICBjb25zdCBlbGVtZW50ID0gZXZlbnQudGFyZ2V0O1xuICAgICAgICAgICAgY29uc3QgaXNTY3JvbGxiYXJXaGVlbCA9IHNjcm9sbGJhciA9PT0gbnVsbCB8fCBzY3JvbGxiYXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNjcm9sbGJhci5jb250YWlucyhlbGVtZW50KTtcbiAgICAgICAgICAgIGlmIChpc1Njcm9sbGJhcldoZWVsKSBoYW5kbGVXaGVlbFNjcm9sbChldmVudCwgbWF4U2Nyb2xsUG9zKTtcbiAgICAgICAgfTtcbiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignd2hlZWwnLCBoYW5kbGVXaGVlbCwge1xuICAgICAgICAgICAgcGFzc2l2ZTogZmFsc2VcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiAoKT0+ZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignd2hlZWwnLCBoYW5kbGVXaGVlbCwge1xuICAgICAgICAgICAgICAgIHBhc3NpdmU6IGZhbHNlXG4gICAgICAgICAgICB9KVxuICAgICAgICA7XG4gICAgfSwgW1xuICAgICAgICB2aWV3cG9ydCxcbiAgICAgICAgc2Nyb2xsYmFyLFxuICAgICAgICBtYXhTY3JvbGxQb3MsXG4gICAgICAgIGhhbmRsZVdoZWVsU2Nyb2xsXG4gICAgXSk7XG4gICAgLyoqXG4gICAqIFVwZGF0ZSB0aHVtYiBwb3NpdGlvbiBvbiBzaXplcyBjaGFuZ2VcbiAgICovICRmbkZNOSR1c2VFZmZlY3QoaGFuZGxlVGh1bWJQb3NpdGlvbkNoYW5nZSwgW1xuICAgICAgICBzaXplcyxcbiAgICAgICAgaGFuZGxlVGh1bWJQb3NpdGlvbkNoYW5nZVxuICAgIF0pO1xuICAgICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciR1c2VSZXNpemVPYnNlcnZlcihzY3JvbGxiYXIsIGhhbmRsZVJlc2l6ZSk7XG4gICAgJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHVzZVJlc2l6ZU9ic2VydmVyKGNvbnRleHQuY29udGVudCwgaGFuZGxlUmVzaXplKTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAkZm5GTTkkY3JlYXRlRWxlbWVudCgkNTdhY2JhODdkNmUyNTU4NiR2YXIkU2Nyb2xsYmFyUHJvdmlkZXIsIHtcbiAgICAgICAgc2NvcGU6IF9fc2NvcGVTY3JvbGxBcmVhLFxuICAgICAgICBzY3JvbGxiYXI6IHNjcm9sbGJhcixcbiAgICAgICAgaGFzVGh1bWI6IGhhc1RodW1iLFxuICAgICAgICBvblRodW1iQ2hhbmdlOiAkZm5GTTkkdXNlQ2FsbGJhY2tSZWYob25UaHVtYkNoYW5nZSksXG4gICAgICAgIG9uVGh1bWJQb2ludGVyVXA6ICRmbkZNOSR1c2VDYWxsYmFja1JlZihvblRodW1iUG9pbnRlclVwKSxcbiAgICAgICAgb25UaHVtYlBvc2l0aW9uQ2hhbmdlOiBoYW5kbGVUaHVtYlBvc2l0aW9uQ2hhbmdlLFxuICAgICAgICBvblRodW1iUG9pbnRlckRvd246ICRmbkZNOSR1c2VDYWxsYmFja1JlZihvblRodW1iUG9pbnRlckRvd24pXG4gICAgfSwgLyojX19QVVJFX18qLyAkZm5GTTkkY3JlYXRlRWxlbWVudCgkZm5GTTkkUHJpbWl0aXZlLmRpdiwgJGZuRk05JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBzY3JvbGxiYXJQcm9wcywge1xuICAgICAgICByZWY6IGNvbXBvc2VSZWZzLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgICAgICAuLi5zY3JvbGxiYXJQcm9wcy5zdHlsZVxuICAgICAgICB9LFxuICAgICAgICBvblBvaW50ZXJEb3duOiAkZm5GTTkkY29tcG9zZUV2ZW50SGFuZGxlcnMocHJvcHMub25Qb2ludGVyRG93biwgKGV2ZW50KT0+e1xuICAgICAgICAgICAgY29uc3QgbWFpblBvaW50ZXIgPSAwO1xuICAgICAgICAgICAgaWYgKGV2ZW50LmJ1dHRvbiA9PT0gbWFpblBvaW50ZXIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBlbGVtZW50ID0gZXZlbnQudGFyZ2V0O1xuICAgICAgICAgICAgICAgIGVsZW1lbnQuc2V0UG9pbnRlckNhcHR1cmUoZXZlbnQucG9pbnRlcklkKTtcbiAgICAgICAgICAgICAgICByZWN0UmVmLmN1cnJlbnQgPSBzY3JvbGxiYXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7IC8vIHBvaW50ZXIgY2FwdHVyZSBkb2Vzbid0IHByZXZlbnQgdGV4dCBzZWxlY3Rpb24gaW4gU2FmYXJpXG4gICAgICAgICAgICAgICAgLy8gc28gd2UgcmVtb3ZlIHRleHQgc2VsZWN0aW9uIG1hbnVhbGx5IHdoZW4gc2Nyb2xsaW5nXG4gICAgICAgICAgICAgICAgcHJldldlYmtpdFVzZXJTZWxlY3RSZWYuY3VycmVudCA9IGRvY3VtZW50LmJvZHkuc3R5bGUud2Via2l0VXNlclNlbGVjdDtcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLndlYmtpdFVzZXJTZWxlY3QgPSAnbm9uZSc7XG4gICAgICAgICAgICAgICAgaGFuZGxlRHJhZ1Njcm9sbChldmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgICBvblBvaW50ZXJNb3ZlOiAkZm5GTTkkY29tcG9zZUV2ZW50SGFuZGxlcnMocHJvcHMub25Qb2ludGVyTW92ZSwgaGFuZGxlRHJhZ1Njcm9sbCksXG4gICAgICAgIG9uUG9pbnRlclVwOiAkZm5GTTkkY29tcG9zZUV2ZW50SGFuZGxlcnMocHJvcHMub25Qb2ludGVyVXAsIChldmVudCk9PntcbiAgICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPSBldmVudC50YXJnZXQ7XG4gICAgICAgICAgICBpZiAoZWxlbWVudC5oYXNQb2ludGVyQ2FwdHVyZShldmVudC5wb2ludGVySWQpKSBlbGVtZW50LnJlbGVhc2VQb2ludGVyQ2FwdHVyZShldmVudC5wb2ludGVySWQpO1xuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS53ZWJraXRVc2VyU2VsZWN0ID0gcHJldldlYmtpdFVzZXJTZWxlY3RSZWYuY3VycmVudDtcbiAgICAgICAgICAgIHJlY3RSZWYuY3VycmVudCA9IG51bGw7XG4gICAgICAgIH0pXG4gICAgfSkpKTtcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogU2Nyb2xsQXJlYVRodW1iXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRUSFVNQl9OQU1FID0gJ1Njcm9sbEFyZWFUaHVtYic7XG5jb25zdCAkNTdhY2JhODdkNmUyNTU4NiRleHBvcnQkOWZiYTExNTQ2NzdkN2NkMiA9IC8qI19fUFVSRV9fKi8gJGZuRk05JGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBmb3JjZU1vdW50OiBmb3JjZU1vdW50ICwgLi4udGh1bWJQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3Qgc2Nyb2xsYmFyQ29udGV4dCA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciR1c2VTY3JvbGxiYXJDb250ZXh0KCQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRUSFVNQl9OQU1FLCBwcm9wcy5fX3Njb3BlU2Nyb2xsQXJlYSk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJGZuRk05JGNyZWF0ZUVsZW1lbnQoJGZuRk05JFByZXNlbmNlLCB7XG4gICAgICAgIHByZXNlbnQ6IGZvcmNlTW91bnQgfHwgc2Nyb2xsYmFyQ29udGV4dC5oYXNUaHVtYlxuICAgIH0sIC8qI19fUFVSRV9fKi8gJGZuRk05JGNyZWF0ZUVsZW1lbnQoJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNjcm9sbEFyZWFUaHVtYkltcGwsICRmbkZNOSRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gICAgfSwgdGh1bWJQcm9wcykpKTtcbn0pO1xuY29uc3QgJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNjcm9sbEFyZWFUaHVtYkltcGwgPSAvKiNfX1BVUkVfXyovICRmbkZNOSRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgX19zY29wZVNjcm9sbEFyZWE6IF9fc2NvcGVTY3JvbGxBcmVhICwgc3R5bGU6IHN0eWxlICwgLi4udGh1bWJQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3Qgc2Nyb2xsQXJlYUNvbnRleHQgPSAkNTdhY2JhODdkNmUyNTU4NiR2YXIkdXNlU2Nyb2xsQXJlYUNvbnRleHQoJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFRIVU1CX05BTUUsIF9fc2NvcGVTY3JvbGxBcmVhKTtcbiAgICBjb25zdCBzY3JvbGxiYXJDb250ZXh0ID0gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHVzZVNjcm9sbGJhckNvbnRleHQoJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFRIVU1CX05BTUUsIF9fc2NvcGVTY3JvbGxBcmVhKTtcbiAgICBjb25zdCB7IG9uVGh1bWJQb3NpdGlvbkNoYW5nZTogb25UaHVtYlBvc2l0aW9uQ2hhbmdlICB9ID0gc2Nyb2xsYmFyQ29udGV4dDtcbiAgICBjb25zdCBjb21wb3NlZFJlZiA9ICRmbkZNOSR1c2VDb21wb3NlZFJlZnMoZm9yd2FyZGVkUmVmLCAobm9kZSk9PnNjcm9sbGJhckNvbnRleHQub25UaHVtYkNoYW5nZShub2RlKVxuICAgICk7XG4gICAgY29uc3QgcmVtb3ZlVW5saW5rZWRTY3JvbGxMaXN0ZW5lclJlZiA9ICRmbkZNOSR1c2VSZWYoKTtcbiAgICBjb25zdCBkZWJvdW5jZVNjcm9sbEVuZCA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciR1c2VEZWJvdW5jZUNhbGxiYWNrKCgpPT57XG4gICAgICAgIGlmIChyZW1vdmVVbmxpbmtlZFNjcm9sbExpc3RlbmVyUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIHJlbW92ZVVubGlua2VkU2Nyb2xsTGlzdGVuZXJSZWYuY3VycmVudCgpO1xuICAgICAgICAgICAgcmVtb3ZlVW5saW5rZWRTY3JvbGxMaXN0ZW5lclJlZi5jdXJyZW50ID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgfSwgMTAwKTtcbiAgICAkZm5GTTkkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGNvbnN0IHZpZXdwb3J0ID0gc2Nyb2xsQXJlYUNvbnRleHQudmlld3BvcnQ7XG4gICAgICAgIGlmICh2aWV3cG9ydCkge1xuICAgICAgICAgICAgLyoqXG4gICAgICAgKiBXZSBvbmx5IGJpbmQgdG8gbmF0aXZlIHNjcm9sbCBldmVudCBzbyB3ZSBrbm93IHdoZW4gc2Nyb2xsIHN0YXJ0cyBhbmQgZW5kcy5cbiAgICAgICAqIFdoZW4gc2Nyb2xsIHN0YXJ0cyB3ZSBzdGFydCBhIHJlcXVlc3RBbmltYXRpb25GcmFtZSBsb29wIHRoYXQgY2hlY2tzIGZvclxuICAgICAgICogY2hhbmdlcyB0byBzY3JvbGwgcG9zaXRpb24uIFRoYXQgckFGIGxvb3AgdHJpZ2dlcnMgb3VyIHRodW1iIHBvc2l0aW9uIGNoYW5nZVxuICAgICAgICogd2hlbiByZWxldmFudCB0byBhdm9pZCBzY3JvbGwtbGlua2VkIGVmZmVjdHMuIFdlIGNhbmNlbCB0aGUgbG9vcCB3aGVuIHNjcm9sbCBlbmRzLlxuICAgICAgICogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9Nb3ppbGxhL1BlcmZvcm1hbmNlL1Njcm9sbC1saW5rZWRfZWZmZWN0c1xuICAgICAgICovIGNvbnN0IGhhbmRsZVNjcm9sbCA9ICgpPT57XG4gICAgICAgICAgICAgICAgZGVib3VuY2VTY3JvbGxFbmQoKTtcbiAgICAgICAgICAgICAgICBpZiAoIXJlbW92ZVVubGlua2VkU2Nyb2xsTGlzdGVuZXJSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBsaXN0ZW5lciA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRhZGRVbmxpbmtlZFNjcm9sbExpc3RlbmVyKHZpZXdwb3J0LCBvblRodW1iUG9zaXRpb25DaGFuZ2UpO1xuICAgICAgICAgICAgICAgICAgICByZW1vdmVVbmxpbmtlZFNjcm9sbExpc3RlbmVyUmVmLmN1cnJlbnQgPSBsaXN0ZW5lcjtcbiAgICAgICAgICAgICAgICAgICAgb25UaHVtYlBvc2l0aW9uQ2hhbmdlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIG9uVGh1bWJQb3NpdGlvbkNoYW5nZSgpO1xuICAgICAgICAgICAgdmlld3BvcnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgaGFuZGxlU2Nyb2xsKTtcbiAgICAgICAgICAgIHJldHVybiAoKT0+dmlld3BvcnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgaGFuZGxlU2Nyb2xsKVxuICAgICAgICAgICAgO1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBzY3JvbGxBcmVhQ29udGV4dC52aWV3cG9ydCxcbiAgICAgICAgZGVib3VuY2VTY3JvbGxFbmQsXG4gICAgICAgIG9uVGh1bWJQb3NpdGlvbkNoYW5nZVxuICAgIF0pO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICRmbkZNOSRjcmVhdGVFbGVtZW50KCRmbkZNOSRQcmltaXRpdmUuZGl2LCAkZm5GTTkkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe1xuICAgICAgICBcImRhdGEtc3RhdGVcIjogc2Nyb2xsYmFyQ29udGV4dC5oYXNUaHVtYiA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nXG4gICAgfSwgdGh1bWJQcm9wcywge1xuICAgICAgICByZWY6IGNvbXBvc2VkUmVmLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgd2lkdGg6ICd2YXIoLS1yYWRpeC1zY3JvbGwtYXJlYS10aHVtYi13aWR0aCknLFxuICAgICAgICAgICAgaGVpZ2h0OiAndmFyKC0tcmFkaXgtc2Nyb2xsLWFyZWEtdGh1bWItaGVpZ2h0KScsXG4gICAgICAgICAgICAuLi5zdHlsZVxuICAgICAgICB9LFxuICAgICAgICBvblBvaW50ZXJEb3duQ2FwdHVyZTogJGZuRk05JGNvbXBvc2VFdmVudEhhbmRsZXJzKHByb3BzLm9uUG9pbnRlckRvd25DYXB0dXJlLCAoZXZlbnQpPT57XG4gICAgICAgICAgICBjb25zdCB0aHVtYiA9IGV2ZW50LnRhcmdldDtcbiAgICAgICAgICAgIGNvbnN0IHRodW1iUmVjdCA9IHRodW1iLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgY29uc3QgeCA9IGV2ZW50LmNsaWVudFggLSB0aHVtYlJlY3QubGVmdDtcbiAgICAgICAgICAgIGNvbnN0IHkgPSBldmVudC5jbGllbnRZIC0gdGh1bWJSZWN0LnRvcDtcbiAgICAgICAgICAgIHNjcm9sbGJhckNvbnRleHQub25UaHVtYlBvaW50ZXJEb3duKHtcbiAgICAgICAgICAgICAgICB4OiB4LFxuICAgICAgICAgICAgICAgIHk6IHlcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KSxcbiAgICAgICAgb25Qb2ludGVyVXA6ICRmbkZNOSRjb21wb3NlRXZlbnRIYW5kbGVycyhwcm9wcy5vblBvaW50ZXJVcCwgc2Nyb2xsYmFyQ29udGV4dC5vblRodW1iUG9pbnRlclVwKVxuICAgIH0pKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCQ5ZmJhMTE1NDY3N2Q3Y2QyLCB7XG4gICAgZGlzcGxheU5hbWU6ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRUSFVNQl9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFNjcm9sbEFyZWFDb3JuZXJcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJENPUk5FUl9OQU1FID0gJ1Njcm9sbEFyZWFDb3JuZXInO1xuY29uc3QgJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JDU2OTY5ZDU2NWRmN2NjNGIgPSAvKiNfX1BVUkVfXyovICRmbkZNOSRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IGNvbnRleHQgPSAkNTdhY2JhODdkNmUyNTU4NiR2YXIkdXNlU2Nyb2xsQXJlYUNvbnRleHQoJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJENPUk5FUl9OQU1FLCBwcm9wcy5fX3Njb3BlU2Nyb2xsQXJlYSk7XG4gICAgY29uc3QgaGFzQm90aFNjcm9sbGJhcnNWaXNpYmxlID0gQm9vbGVhbihjb250ZXh0LnNjcm9sbGJhclggJiYgY29udGV4dC5zY3JvbGxiYXJZKTtcbiAgICBjb25zdCBoYXNDb3JuZXIgPSBjb250ZXh0LnR5cGUgIT09ICdzY3JvbGwnICYmIGhhc0JvdGhTY3JvbGxiYXJzVmlzaWJsZTtcbiAgICByZXR1cm4gaGFzQ29ybmVyID8gLyojX19QVVJFX18qLyAkZm5GTTkkY3JlYXRlRWxlbWVudCgkNTdhY2JhODdkNmUyNTU4NiR2YXIkU2Nyb2xsQXJlYUNvcm5lckltcGwsICRmbkZNOSRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7fSwgcHJvcHMsIHtcbiAgICAgICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgICB9KSkgOiBudWxsO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JDU2OTY5ZDU2NWRmN2NjNGIsIHtcbiAgICBkaXNwbGF5TmFtZTogJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJENPUk5FUl9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNjcm9sbEFyZWFDb3JuZXJJbXBsID0gLyojX19QVVJFX18qLyAkZm5GTTkkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICBjb25zdCB7IF9fc2NvcGVTY3JvbGxBcmVhOiBfX3Njb3BlU2Nyb2xsQXJlYSAsIC4uLmNvcm5lclByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBjb250ZXh0ID0gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHVzZVNjcm9sbEFyZWFDb250ZXh0KCQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRDT1JORVJfTkFNRSwgX19zY29wZVNjcm9sbEFyZWEpO1xuICAgIGNvbnN0IFt3aWR0aDEsIHNldFdpZHRoXSA9ICRmbkZNOSR1c2VTdGF0ZSgwKTtcbiAgICBjb25zdCBbaGVpZ2h0MSwgc2V0SGVpZ2h0XSA9ICRmbkZNOSR1c2VTdGF0ZSgwKTtcbiAgICBjb25zdCBoYXNTaXplID0gQm9vbGVhbih3aWR0aDEgJiYgaGVpZ2h0MSk7XG4gICAgJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHVzZVJlc2l6ZU9ic2VydmVyKGNvbnRleHQuc2Nyb2xsYmFyWCwgKCk9PntcbiAgICAgICAgdmFyIF9jb250ZXh0JHNjcm9sbGJhclg7XG4gICAgICAgIGNvbnN0IGhlaWdodCA9ICgoX2NvbnRleHQkc2Nyb2xsYmFyWCA9IGNvbnRleHQuc2Nyb2xsYmFyWCkgPT09IG51bGwgfHwgX2NvbnRleHQkc2Nyb2xsYmFyWCA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2NvbnRleHQkc2Nyb2xsYmFyWC5vZmZzZXRIZWlnaHQpIHx8IDA7XG4gICAgICAgIGNvbnRleHQub25Db3JuZXJIZWlnaHRDaGFuZ2UoaGVpZ2h0KTtcbiAgICAgICAgc2V0SGVpZ2h0KGhlaWdodCk7XG4gICAgfSk7XG4gICAgJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHVzZVJlc2l6ZU9ic2VydmVyKGNvbnRleHQuc2Nyb2xsYmFyWSwgKCk9PntcbiAgICAgICAgdmFyIF9jb250ZXh0JHNjcm9sbGJhclk7XG4gICAgICAgIGNvbnN0IHdpZHRoID0gKChfY29udGV4dCRzY3JvbGxiYXJZID0gY29udGV4dC5zY3JvbGxiYXJZKSA9PT0gbnVsbCB8fCBfY29udGV4dCRzY3JvbGxiYXJZID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfY29udGV4dCRzY3JvbGxiYXJZLm9mZnNldFdpZHRoKSB8fCAwO1xuICAgICAgICBjb250ZXh0Lm9uQ29ybmVyV2lkdGhDaGFuZ2Uod2lkdGgpO1xuICAgICAgICBzZXRXaWR0aCh3aWR0aCk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGhhc1NpemUgPyAvKiNfX1BVUkVfXyovICRmbkZNOSRjcmVhdGVFbGVtZW50KCRmbkZNOSRQcmltaXRpdmUuZGl2LCAkZm5GTTkkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIGNvcm5lclByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgd2lkdGg6IHdpZHRoMSxcbiAgICAgICAgICAgIGhlaWdodDogaGVpZ2h0MSxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICAgICAgcmlnaHQ6IGNvbnRleHQuZGlyID09PSAnbHRyJyA/IDAgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBsZWZ0OiBjb250ZXh0LmRpciA9PT0gJ3J0bCcgPyAwIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgYm90dG9tOiAwLFxuICAgICAgICAgICAgLi4ucHJvcHMuc3R5bGVcbiAgICAgICAgfVxuICAgIH0pKSA6IG51bGw7XG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gZnVuY3Rpb24gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHRvSW50KHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlID8gcGFyc2VJbnQodmFsdWUsIDEwKSA6IDA7XG59XG5mdW5jdGlvbiAkNTdhY2JhODdkNmUyNTU4NiR2YXIkZ2V0VGh1bWJSYXRpbyh2aWV3cG9ydFNpemUsIGNvbnRlbnRTaXplKSB7XG4gICAgY29uc3QgcmF0aW8gPSB2aWV3cG9ydFNpemUgLyBjb250ZW50U2l6ZTtcbiAgICByZXR1cm4gaXNOYU4ocmF0aW8pID8gMCA6IHJhdGlvO1xufVxuZnVuY3Rpb24gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGdldFRodW1iU2l6ZShzaXplcykge1xuICAgIGNvbnN0IHJhdGlvID0gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGdldFRodW1iUmF0aW8oc2l6ZXMudmlld3BvcnQsIHNpemVzLmNvbnRlbnQpO1xuICAgIGNvbnN0IHNjcm9sbGJhclBhZGRpbmcgPSBzaXplcy5zY3JvbGxiYXIucGFkZGluZ1N0YXJ0ICsgc2l6ZXMuc2Nyb2xsYmFyLnBhZGRpbmdFbmQ7XG4gICAgY29uc3QgdGh1bWJTaXplID0gKHNpemVzLnNjcm9sbGJhci5zaXplIC0gc2Nyb2xsYmFyUGFkZGluZykgKiByYXRpbzsgLy8gbWluaW11bSBvZiAxOCBtYXRjaGVzIG1hY09TIG1pbmltdW1cbiAgICByZXR1cm4gTWF0aC5tYXgodGh1bWJTaXplLCAxOCk7XG59XG5mdW5jdGlvbiAkNTdhY2JhODdkNmUyNTU4NiR2YXIkZ2V0U2Nyb2xsUG9zaXRpb25Gcm9tUG9pbnRlcihwb2ludGVyUG9zLCBwb2ludGVyT2Zmc2V0LCBzaXplcywgZGlyID0gJ2x0cicpIHtcbiAgICBjb25zdCB0aHVtYlNpemVQeCA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRnZXRUaHVtYlNpemUoc2l6ZXMpO1xuICAgIGNvbnN0IHRodW1iQ2VudGVyID0gdGh1bWJTaXplUHggLyAyO1xuICAgIGNvbnN0IG9mZnNldCA9IHBvaW50ZXJPZmZzZXQgfHwgdGh1bWJDZW50ZXI7XG4gICAgY29uc3QgdGh1bWJPZmZzZXRGcm9tRW5kID0gdGh1bWJTaXplUHggLSBvZmZzZXQ7XG4gICAgY29uc3QgbWluUG9pbnRlclBvcyA9IHNpemVzLnNjcm9sbGJhci5wYWRkaW5nU3RhcnQgKyBvZmZzZXQ7XG4gICAgY29uc3QgbWF4UG9pbnRlclBvcyA9IHNpemVzLnNjcm9sbGJhci5zaXplIC0gc2l6ZXMuc2Nyb2xsYmFyLnBhZGRpbmdFbmQgLSB0aHVtYk9mZnNldEZyb21FbmQ7XG4gICAgY29uc3QgbWF4U2Nyb2xsUG9zID0gc2l6ZXMuY29udGVudCAtIHNpemVzLnZpZXdwb3J0O1xuICAgIGNvbnN0IHNjcm9sbFJhbmdlID0gZGlyID09PSAnbHRyJyA/IFtcbiAgICAgICAgMCxcbiAgICAgICAgbWF4U2Nyb2xsUG9zXG4gICAgXSA6IFtcbiAgICAgICAgbWF4U2Nyb2xsUG9zICogLTEsXG4gICAgICAgIDBcbiAgICBdO1xuICAgIGNvbnN0IGludGVycG9sYXRlID0gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGxpbmVhclNjYWxlKFtcbiAgICAgICAgbWluUG9pbnRlclBvcyxcbiAgICAgICAgbWF4UG9pbnRlclBvc1xuICAgIF0sIHNjcm9sbFJhbmdlKTtcbiAgICByZXR1cm4gaW50ZXJwb2xhdGUocG9pbnRlclBvcyk7XG59XG5mdW5jdGlvbiAkNTdhY2JhODdkNmUyNTU4NiR2YXIkZ2V0VGh1bWJPZmZzZXRGcm9tU2Nyb2xsKHNjcm9sbFBvcywgc2l6ZXMsIGRpciA9ICdsdHInKSB7XG4gICAgY29uc3QgdGh1bWJTaXplUHggPSAkNTdhY2JhODdkNmUyNTU4NiR2YXIkZ2V0VGh1bWJTaXplKHNpemVzKTtcbiAgICBjb25zdCBzY3JvbGxiYXJQYWRkaW5nID0gc2l6ZXMuc2Nyb2xsYmFyLnBhZGRpbmdTdGFydCArIHNpemVzLnNjcm9sbGJhci5wYWRkaW5nRW5kO1xuICAgIGNvbnN0IHNjcm9sbGJhciA9IHNpemVzLnNjcm9sbGJhci5zaXplIC0gc2Nyb2xsYmFyUGFkZGluZztcbiAgICBjb25zdCBtYXhTY3JvbGxQb3MgPSBzaXplcy5jb250ZW50IC0gc2l6ZXMudmlld3BvcnQ7XG4gICAgY29uc3QgbWF4VGh1bWJQb3MgPSBzY3JvbGxiYXIgLSB0aHVtYlNpemVQeDtcbiAgICBjb25zdCBzY3JvbGxDbGFtcFJhbmdlID0gZGlyID09PSAnbHRyJyA/IFtcbiAgICAgICAgMCxcbiAgICAgICAgbWF4U2Nyb2xsUG9zXG4gICAgXSA6IFtcbiAgICAgICAgbWF4U2Nyb2xsUG9zICogLTEsXG4gICAgICAgIDBcbiAgICBdO1xuICAgIGNvbnN0IHNjcm9sbFdpdGhvdXRNb21lbnR1bSA9ICRmbkZNOSRjbGFtcChzY3JvbGxQb3MsIHNjcm9sbENsYW1wUmFuZ2UpO1xuICAgIGNvbnN0IGludGVycG9sYXRlID0gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGxpbmVhclNjYWxlKFtcbiAgICAgICAgMCxcbiAgICAgICAgbWF4U2Nyb2xsUG9zXG4gICAgXSwgW1xuICAgICAgICAwLFxuICAgICAgICBtYXhUaHVtYlBvc1xuICAgIF0pO1xuICAgIHJldHVybiBpbnRlcnBvbGF0ZShzY3JvbGxXaXRob3V0TW9tZW50dW0pO1xufSAvLyBodHRwczovL2dpdGh1Yi5jb20vdG1jdy11cC1mb3ItYWRvcHRpb24vc2ltcGxlLWxpbmVhci1zY2FsZS9ibG9iL21hc3Rlci9pbmRleC5qc1xuZnVuY3Rpb24gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGxpbmVhclNjYWxlKGlucHV0LCBvdXRwdXQpIHtcbiAgICByZXR1cm4gKHZhbHVlKT0+e1xuICAgICAgICBpZiAoaW5wdXRbMF0gPT09IGlucHV0WzFdIHx8IG91dHB1dFswXSA9PT0gb3V0cHV0WzFdKSByZXR1cm4gb3V0cHV0WzBdO1xuICAgICAgICBjb25zdCByYXRpbyA9IChvdXRwdXRbMV0gLSBvdXRwdXRbMF0pIC8gKGlucHV0WzFdIC0gaW5wdXRbMF0pO1xuICAgICAgICByZXR1cm4gb3V0cHV0WzBdICsgcmF0aW8gKiAodmFsdWUgLSBpbnB1dFswXSk7XG4gICAgfTtcbn1cbmZ1bmN0aW9uICQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRpc1Njcm9sbGluZ1dpdGhpblNjcm9sbGJhckJvdW5kcyhzY3JvbGxQb3MsIG1heFNjcm9sbFBvcykge1xuICAgIHJldHVybiBzY3JvbGxQb3MgPiAwICYmIHNjcm9sbFBvcyA8IG1heFNjcm9sbFBvcztcbn0gLy8gQ3VzdG9tIHNjcm9sbCBoYW5kbGVyIHRvIGF2b2lkIHNjcm9sbC1saW5rZWQgZWZmZWN0c1xuLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9Nb3ppbGxhL1BlcmZvcm1hbmNlL1Njcm9sbC1saW5rZWRfZWZmZWN0c1xuY29uc3QgJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGFkZFVubGlua2VkU2Nyb2xsTGlzdGVuZXIgPSAobm9kZSwgaGFuZGxlciA9ICgpPT57fSk9PntcbiAgICBsZXQgcHJldlBvc2l0aW9uID0ge1xuICAgICAgICBsZWZ0OiBub2RlLnNjcm9sbExlZnQsXG4gICAgICAgIHRvcDogbm9kZS5zY3JvbGxUb3BcbiAgICB9O1xuICAgIGxldCByQUYgPSAwO1xuICAgIChmdW5jdGlvbiBsb29wKCkge1xuICAgICAgICBjb25zdCBwb3NpdGlvbiA9IHtcbiAgICAgICAgICAgIGxlZnQ6IG5vZGUuc2Nyb2xsTGVmdCxcbiAgICAgICAgICAgIHRvcDogbm9kZS5zY3JvbGxUb3BcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgaXNIb3Jpem9udGFsU2Nyb2xsID0gcHJldlBvc2l0aW9uLmxlZnQgIT09IHBvc2l0aW9uLmxlZnQ7XG4gICAgICAgIGNvbnN0IGlzVmVydGljYWxTY3JvbGwgPSBwcmV2UG9zaXRpb24udG9wICE9PSBwb3NpdGlvbi50b3A7XG4gICAgICAgIGlmIChpc0hvcml6b250YWxTY3JvbGwgfHwgaXNWZXJ0aWNhbFNjcm9sbCkgaGFuZGxlcigpO1xuICAgICAgICBwcmV2UG9zaXRpb24gPSBwb3NpdGlvbjtcbiAgICAgICAgckFGID0gd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZShsb29wKTtcbiAgICB9KSgpO1xuICAgIHJldHVybiAoKT0+d2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lKHJBRilcbiAgICA7XG59O1xuZnVuY3Rpb24gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHVzZURlYm91bmNlQ2FsbGJhY2soY2FsbGJhY2ssIGRlbGF5KSB7XG4gICAgY29uc3QgaGFuZGxlQ2FsbGJhY2sgPSAkZm5GTTkkdXNlQ2FsbGJhY2tSZWYoY2FsbGJhY2spO1xuICAgIGNvbnN0IGRlYm91bmNlVGltZXJSZWYgPSAkZm5GTTkkdXNlUmVmKDApO1xuICAgICRmbkZNOSR1c2VFZmZlY3QoKCk9PigpPT53aW5kb3cuY2xlYXJUaW1lb3V0KGRlYm91bmNlVGltZXJSZWYuY3VycmVudClcbiAgICAsIFtdKTtcbiAgICByZXR1cm4gJGZuRk05JHVzZUNhbGxiYWNrKCgpPT57XG4gICAgICAgIHdpbmRvdy5jbGVhclRpbWVvdXQoZGVib3VuY2VUaW1lclJlZi5jdXJyZW50KTtcbiAgICAgICAgZGVib3VuY2VUaW1lclJlZi5jdXJyZW50ID0gd2luZG93LnNldFRpbWVvdXQoaGFuZGxlQ2FsbGJhY2ssIGRlbGF5KTtcbiAgICB9LCBbXG4gICAgICAgIGhhbmRsZUNhbGxiYWNrLFxuICAgICAgICBkZWxheVxuICAgIF0pO1xufVxuZnVuY3Rpb24gJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHVzZVJlc2l6ZU9ic2VydmVyKGVsZW1lbnQsIG9uUmVzaXplKSB7XG4gICAgY29uc3QgaGFuZGxlUmVzaXplID0gJGZuRk05JHVzZUNhbGxiYWNrUmVmKG9uUmVzaXplKTtcbiAgICAkZm5GTTkkdXNlTGF5b3V0RWZmZWN0KCgpPT57XG4gICAgICAgIGxldCByQUYgPSAwO1xuICAgICAgICBpZiAoZWxlbWVudCkge1xuICAgICAgICAgICAgLyoqXG4gICAgICAgKiBSZXNpemUgT2JzZXJ2ZXIgd2lsbCB0aHJvdyBhbiBvZnRlbiBiZW5pZ24gZXJyb3IgdGhhdCBzYXlzIGBSZXNpemVPYnNlcnZlciBsb29wXG4gICAgICAgKiBjb21wbGV0ZWQgd2l0aCB1bmRlbGl2ZXJlZCBub3RpZmljYXRpb25zYC4gVGhpcyBtZWFucyB0aGF0IFJlc2l6ZU9ic2VydmVyIHdhcyBub3RcbiAgICAgICAqIGFibGUgdG8gZGVsaXZlciBhbGwgb2JzZXJ2YXRpb25zIHdpdGhpbiBhIHNpbmdsZSBhbmltYXRpb24gZnJhbWUsIHNvIHdlIHVzZVxuICAgICAgICogYHJlcXVlc3RBbmltYXRpb25GcmFtZWAgdG8gZW5zdXJlIHdlIGRvbid0IGRlbGl2ZXIgdW5uZWNlc3Nhcnkgb2JzZXJ2YXRpb25zLlxuICAgICAgICogRnVydGhlciByZWFkaW5nOiBodHRwczovL2dpdGh1Yi5jb20vV0lDRy9yZXNpemUtb2JzZXJ2ZXIvaXNzdWVzLzM4XG4gICAgICAgKi8gY29uc3QgcmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKCk9PntcbiAgICAgICAgICAgICAgICBjYW5jZWxBbmltYXRpb25GcmFtZShyQUYpO1xuICAgICAgICAgICAgICAgIHJBRiA9IHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoaGFuZGxlUmVzaXplKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZShlbGVtZW50KTtcbiAgICAgICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgICAgIHdpbmRvdy5jYW5jZWxBbmltYXRpb25GcmFtZShyQUYpO1xuICAgICAgICAgICAgICAgIHJlc2l6ZU9ic2VydmVyLnVub2JzZXJ2ZShlbGVtZW50KTtcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9LCBbXG4gICAgICAgIGVsZW1lbnQsXG4gICAgICAgIGhhbmRsZVJlc2l6ZVxuICAgIF0pO1xufVxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkNTdhY2JhODdkNmUyNTU4NiRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCRjY2Y4ZDhkN2JiZjNjMmNjO1xuY29uc3QgJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JGQ1YzZjMDhkYzJkM2NhNyA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCRhMjFjYmY5ZjExZmNhODUzO1xuY29uc3QgJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JDlhNGU4OGI5MmVkZmNlNmIgPSAkNTdhY2JhODdkNmUyNTU4NiRleHBvcnQkMmZhYmQ4NWQwZWJhM2M1NztcbmNvbnN0ICQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCQ2NTIxNDMzZWQxNWEzNGRiID0gJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JDlmYmExMTU0Njc3ZDdjZDI7XG5jb25zdCAkNTdhY2JhODdkNmUyNTU4NiRleHBvcnQkYWM2MTE5MGQ5ZmMzMTFhOSA9ICQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCQ1Njk2OWQ1NjVkZjdjYzRiO1xuXG5cblxuXG5leHBvcnQgeyQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCQ0ODg0NjhhZmUzYTZmMmIxIGFzIGNyZWF0ZVNjcm9sbEFyZWFTY29wZSwgJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JGNjZjhkOGQ3YmJmM2MyY2MgYXMgU2Nyb2xsQXJlYSwgJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JGEyMWNiZjlmMTFmY2E4NTMgYXMgU2Nyb2xsQXJlYVZpZXdwb3J0LCAkNTdhY2JhODdkNmUyNTU4NiRleHBvcnQkMmZhYmQ4NWQwZWJhM2M1NyBhcyBTY3JvbGxBcmVhU2Nyb2xsYmFyLCAkNTdhY2JhODdkNmUyNTU4NiRleHBvcnQkOWZiYTExNTQ2NzdkN2NkMiBhcyBTY3JvbGxBcmVhVGh1bWIsICQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCQ1Njk2OWQ1NjVkZjdjYzRiIGFzIFNjcm9sbEFyZWFDb3JuZXIsICQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IGFzIFJvb3QsICQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCRkNWM2YzA4ZGMyZDNjYTcgYXMgVmlld3BvcnQsICQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCQ5YTRlODhiOTJlZGZjZTZiIGFzIFNjcm9sbGJhciwgJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JDY1MjE0MzNlZDE1YTM0ZGIgYXMgVGh1bWIsICQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCRhYzYxMTkwZDlmYzMxMWE5IGFzIENvcm5lcn07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5tanMubWFwXG4iXSwibmFtZXMiOlsiJGZuRk05JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIiwiZm9yd2FyZFJlZiIsIiRmbkZNOSRmb3J3YXJkUmVmIiwidXNlU3RhdGUiLCIkZm5GTTkkdXNlU3RhdGUiLCJjcmVhdGVFbGVtZW50IiwiJGZuRk05JGNyZWF0ZUVsZW1lbnQiLCJ1c2VSZWYiLCIkZm5GTTkkdXNlUmVmIiwiRnJhZ21lbnQiLCIkZm5GTTkkRnJhZ21lbnQiLCJ1c2VFZmZlY3QiLCIkZm5GTTkkdXNlRWZmZWN0IiwidXNlQ2FsbGJhY2siLCIkZm5GTTkkdXNlQ2FsbGJhY2siLCJ1c2VSZWR1Y2VyIiwiJGZuRk05JHVzZVJlZHVjZXIiLCJQcmltaXRpdmUiLCIkZm5GTTkkUHJpbWl0aXZlIiwiUHJlc2VuY2UiLCIkZm5GTTkkUHJlc2VuY2UiLCJjcmVhdGVDb250ZXh0U2NvcGUiLCIkZm5GTTkkY3JlYXRlQ29udGV4dFNjb3BlIiwidXNlQ29tcG9zZWRSZWZzIiwiJGZuRk05JHVzZUNvbXBvc2VkUmVmcyIsInVzZUNhbGxiYWNrUmVmIiwiJGZuRk05JHVzZUNhbGxiYWNrUmVmIiwidXNlRGlyZWN0aW9uIiwiJGZuRk05JHVzZURpcmVjdGlvbiIsInVzZUxheW91dEVmZmVjdCIsIiRmbkZNOSR1c2VMYXlvdXRFZmZlY3QiLCJjbGFtcCIsIiRmbkZNOSRjbGFtcCIsImNvbXBvc2VFdmVudEhhbmRsZXJzIiwiJGZuRk05JGNvbXBvc2VFdmVudEhhbmRsZXJzIiwiJDZjMmUyNDU3MWM5MDM5MWYkZXhwb3J0JDNlNjU0M2RlMTRmODYxNGYiLCJpbml0aWFsU3RhdGUiLCJtYWNoaW5lIiwic3RhdGUiLCJldmVudCIsIm5leHRTdGF0ZSIsIiQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTQ1JPTExfQVJFQV9OQU1FIiwiJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGNyZWF0ZVNjcm9sbEFyZWFDb250ZXh0IiwiJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JDQ4ODQ2OGFmZTNhNmYyYjEiLCIkNTdhY2JhODdkNmUyNTU4NiR2YXIkU2Nyb2xsQXJlYVByb3ZpZGVyIiwiJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHVzZVNjcm9sbEFyZWFDb250ZXh0IiwiJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JGNjZjhkOGQ3YmJmM2MyY2MiLCJwcm9wcyIsImZvcndhcmRlZFJlZiIsIl9fc2NvcGVTY3JvbGxBcmVhIiwidHlwZSIsImRpciIsInNjcm9sbEhpZGVEZWxheSIsInNjcm9sbEFyZWFQcm9wcyIsInNjcm9sbEFyZWEiLCJzZXRTY3JvbGxBcmVhIiwidmlld3BvcnQiLCJzZXRWaWV3cG9ydCIsImNvbnRlbnQiLCJzZXRDb250ZW50Iiwic2Nyb2xsYmFyWCIsInNldFNjcm9sbGJhclgiLCJzY3JvbGxiYXJZIiwic2V0U2Nyb2xsYmFyWSIsImNvcm5lcldpZHRoIiwic2V0Q29ybmVyV2lkdGgiLCJjb3JuZXJIZWlnaHQiLCJzZXRDb3JuZXJIZWlnaHQiLCJzY3JvbGxiYXJYRW5hYmxlZCIsInNldFNjcm9sbGJhclhFbmFibGVkIiwic2Nyb2xsYmFyWUVuYWJsZWQiLCJzZXRTY3JvbGxiYXJZRW5hYmxlZCIsImNvbXBvc2VkUmVmcyIsIm5vZGUiLCJkaXJlY3Rpb24iLCJzY29wZSIsIm9uVmlld3BvcnRDaGFuZ2UiLCJvbkNvbnRlbnRDaGFuZ2UiLCJvblNjcm9sbGJhclhDaGFuZ2UiLCJvblNjcm9sbGJhclhFbmFibGVkQ2hhbmdlIiwib25TY3JvbGxiYXJZQ2hhbmdlIiwib25TY3JvbGxiYXJZRW5hYmxlZENoYW5nZSIsIm9uQ29ybmVyV2lkdGhDaGFuZ2UiLCJvbkNvcm5lckhlaWdodENoYW5nZSIsImRpdiIsInJlZiIsInN0eWxlIiwicG9zaXRpb24iLCJPYmplY3QiLCJhc3NpZ24iLCJkaXNwbGF5TmFtZSIsIiQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRWSUVXUE9SVF9OQU1FIiwiJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JGEyMWNiZjlmMTFmY2E4NTMiLCJjaGlsZHJlbiIsInZpZXdwb3J0UHJvcHMiLCJjb250ZXh0IiwiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwiLCJfX2h0bWwiLCJvdmVyZmxvd1giLCJvdmVyZmxvd1kiLCJtaW5XaWR0aCIsImRpc3BsYXkiLCIkNTdhY2JhODdkNmUyNTU4NiR2YXIkU0NST0xMQkFSX05BTUUiLCIkNTdhY2JhODdkNmUyNTU4NiRleHBvcnQkMmZhYmQ4NWQwZWJhM2M1NyIsImZvcmNlTW91bnQiLCJzY3JvbGxiYXJQcm9wcyIsImlzSG9yaXpvbnRhbCIsIm9yaWVudGF0aW9uIiwiJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNjcm9sbEFyZWFTY3JvbGxiYXJIb3ZlciIsIiQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTY3JvbGxBcmVhU2Nyb2xsYmFyU2Nyb2xsIiwiJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNjcm9sbEFyZWFTY3JvbGxiYXJBdXRvIiwiJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNjcm9sbEFyZWFTY3JvbGxiYXJWaXNpYmxlIiwidmlzaWJsZSIsInNldFZpc2libGUiLCJoaWRlVGltZXIiLCJoYW5kbGVQb2ludGVyRW50ZXIiLCJ3aW5kb3ciLCJjbGVhclRpbWVvdXQiLCJoYW5kbGVQb2ludGVyTGVhdmUiLCJzZXRUaW1lb3V0IiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJwcmVzZW50IiwiZGVib3VuY2VTY3JvbGxFbmQiLCIkNTdhY2JhODdkNmUyNTU4NiR2YXIkdXNlRGVib3VuY2VDYWxsYmFjayIsInNlbmQiLCJoaWRkZW4iLCJTQ1JPTEwiLCJzY3JvbGxpbmciLCJTQ1JPTExfRU5EIiwiUE9JTlRFUl9FTlRFUiIsImludGVyYWN0aW5nIiwiUE9JTlRFUl9MRUFWRSIsImlkbGUiLCJISURFIiwic2Nyb2xsRGlyZWN0aW9uIiwicHJldlNjcm9sbFBvcyIsImhhbmRsZVNjcm9sbCIsInNjcm9sbFBvcyIsImhhc1Njcm9sbEluRGlyZWN0aW9uQ2hhbmdlZCIsIm9uUG9pbnRlckVudGVyIiwib25Qb2ludGVyTGVhdmUiLCJoYW5kbGVSZXNpemUiLCJpc092ZXJmbG93WCIsIm9mZnNldFdpZHRoIiwic2Nyb2xsV2lkdGgiLCJpc092ZXJmbG93WSIsIm9mZnNldEhlaWdodCIsInNjcm9sbEhlaWdodCIsIiQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciR1c2VSZXNpemVPYnNlcnZlciIsInRodW1iUmVmIiwicG9pbnRlck9mZnNldFJlZiIsInNpemVzIiwic2V0U2l6ZXMiLCJzY3JvbGxiYXIiLCJzaXplIiwicGFkZGluZ1N0YXJ0IiwicGFkZGluZ0VuZCIsInRodW1iUmF0aW8iLCIkNTdhY2JhODdkNmUyNTU4NiR2YXIkZ2V0VGh1bWJSYXRpbyIsImNvbW1vblByb3BzIiwib25TaXplc0NoYW5nZSIsImhhc1RodW1iIiwiQm9vbGVhbiIsIm9uVGh1bWJDaGFuZ2UiLCJ0aHVtYiIsImN1cnJlbnQiLCJvblRodW1iUG9pbnRlclVwIiwib25UaHVtYlBvaW50ZXJEb3duIiwicG9pbnRlclBvcyIsImdldFNjcm9sbFBvc2l0aW9uIiwiJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGdldFNjcm9sbFBvc2l0aW9uRnJvbVBvaW50ZXIiLCIkNTdhY2JhODdkNmUyNTU4NiR2YXIkU2Nyb2xsQXJlYVNjcm9sbGJhclgiLCJvblRodW1iUG9zaXRpb25DaGFuZ2UiLCJzY3JvbGxMZWZ0Iiwib2Zmc2V0IiwiJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGdldFRodW1iT2Zmc2V0RnJvbVNjcm9sbCIsInRyYW5zZm9ybSIsIm9uV2hlZWxTY3JvbGwiLCJvbkRyYWdTY3JvbGwiLCIkNTdhY2JhODdkNmUyNTU4NiR2YXIkU2Nyb2xsQXJlYVNjcm9sbGJhclkiLCJzY3JvbGxUb3AiLCJjb21wdXRlZFN0eWxlIiwic2V0Q29tcHV0ZWRTdHlsZSIsImNvbXBvc2VSZWZzIiwiZ2V0Q29tcHV0ZWRTdHlsZSIsIiQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTY3JvbGxBcmVhU2Nyb2xsYmFySW1wbCIsImJvdHRvbSIsImxlZnQiLCJyaWdodCIsIiQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRnZXRUaHVtYlNpemUiLCJ4IiwibWF4U2Nyb2xsUG9zIiwiZGVsdGFYIiwiJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJGlzU2Nyb2xsaW5nV2l0aGluU2Nyb2xsYmFyQm91bmRzIiwicHJldmVudERlZmF1bHQiLCJvblJlc2l6ZSIsImNsaWVudFdpZHRoIiwiJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJHRvSW50IiwicGFkZGluZ0xlZnQiLCJwYWRkaW5nUmlnaHQiLCJ0b3AiLCJ1bmRlZmluZWQiLCJ5IiwiZGVsdGFZIiwiY2xpZW50SGVpZ2h0IiwicGFkZGluZ1RvcCIsInBhZGRpbmdCb3R0b20iLCIkNTdhY2JhODdkNmUyNTU4NiR2YXIkU2Nyb2xsYmFyUHJvdmlkZXIiLCIkNTdhY2JhODdkNmUyNTU4NiR2YXIkdXNlU2Nyb2xsYmFyQ29udGV4dCIsInNldFNjcm9sbGJhciIsInJlY3RSZWYiLCJwcmV2V2Via2l0VXNlclNlbGVjdFJlZiIsImhhbmRsZVdoZWVsU2Nyb2xsIiwiaGFuZGxlVGh1bWJQb3NpdGlvbkNoYW5nZSIsImhhbmRsZURyYWdTY3JvbGwiLCJjbGllbnRYIiwiY2xpZW50WSIsImhhbmRsZVdoZWVsIiwiZWxlbWVudCIsInRhcmdldCIsImlzU2Nyb2xsYmFyV2hlZWwiLCJjb250YWlucyIsImRvY3VtZW50IiwicGFzc2l2ZSIsIm9uUG9pbnRlckRvd24iLCJtYWluUG9pbnRlciIsImJ1dHRvbiIsInNldFBvaW50ZXJDYXB0dXJlIiwicG9pbnRlcklkIiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0IiwiYm9keSIsIndlYmtpdFVzZXJTZWxlY3QiLCJvblBvaW50ZXJNb3ZlIiwib25Qb2ludGVyVXAiLCJoYXNQb2ludGVyQ2FwdHVyZSIsInJlbGVhc2VQb2ludGVyQ2FwdHVyZSIsIiQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRUSFVNQl9OQU1FIiwiJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JDlmYmExMTU0Njc3ZDdjZDIiLCJ0aHVtYlByb3BzIiwic2Nyb2xsYmFyQ29udGV4dCIsIiQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRTY3JvbGxBcmVhVGh1bWJJbXBsIiwic2Nyb2xsQXJlYUNvbnRleHQiLCJjb21wb3NlZFJlZiIsInJlbW92ZVVubGlua2VkU2Nyb2xsTGlzdGVuZXJSZWYiLCJsaXN0ZW5lciIsIiQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRhZGRVbmxpbmtlZFNjcm9sbExpc3RlbmVyIiwid2lkdGgiLCJoZWlnaHQiLCJvblBvaW50ZXJEb3duQ2FwdHVyZSIsInRodW1iUmVjdCIsIiQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRDT1JORVJfTkFNRSIsIiQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCQ1Njk2OWQ1NjVkZjdjYzRiIiwiaGFzQm90aFNjcm9sbGJhcnNWaXNpYmxlIiwiaGFzQ29ybmVyIiwiJDU3YWNiYTg3ZDZlMjU1ODYkdmFyJFNjcm9sbEFyZWFDb3JuZXJJbXBsIiwiY29ybmVyUHJvcHMiLCJ3aWR0aDEiLCJzZXRXaWR0aCIsImhlaWdodDEiLCJzZXRIZWlnaHQiLCJoYXNTaXplIiwiX2NvbnRleHQkc2Nyb2xsYmFyWCIsIl9jb250ZXh0JHNjcm9sbGJhclkiLCJ2YWx1ZSIsInBhcnNlSW50Iiwidmlld3BvcnRTaXplIiwiY29udGVudFNpemUiLCJyYXRpbyIsImlzTmFOIiwic2Nyb2xsYmFyUGFkZGluZyIsInRodW1iU2l6ZSIsIk1hdGgiLCJtYXgiLCJwb2ludGVyT2Zmc2V0IiwidGh1bWJTaXplUHgiLCJ0aHVtYkNlbnRlciIsInRodW1iT2Zmc2V0RnJvbUVuZCIsIm1pblBvaW50ZXJQb3MiLCJtYXhQb2ludGVyUG9zIiwic2Nyb2xsUmFuZ2UiLCJpbnRlcnBvbGF0ZSIsIiQ1N2FjYmE4N2Q2ZTI1NTg2JHZhciRsaW5lYXJTY2FsZSIsIm1heFRodW1iUG9zIiwic2Nyb2xsQ2xhbXBSYW5nZSIsInNjcm9sbFdpdGhvdXRNb21lbnR1bSIsImlucHV0Iiwib3V0cHV0IiwiaGFuZGxlciIsInByZXZQb3NpdGlvbiIsInJBRiIsImxvb3AiLCJpc0hvcml6b250YWxTY3JvbGwiLCJpc1ZlcnRpY2FsU2Nyb2xsIiwicmVxdWVzdEFuaW1hdGlvbkZyYW1lIiwiY2FuY2VsQW5pbWF0aW9uRnJhbWUiLCJjYWxsYmFjayIsImRlbGF5IiwiaGFuZGxlQ2FsbGJhY2siLCJkZWJvdW5jZVRpbWVyUmVmIiwicmVzaXplT2JzZXJ2ZXIiLCJSZXNpemVPYnNlcnZlciIsIm9ic2VydmUiLCJ1bm9ic2VydmUiLCIkNTdhY2JhODdkNmUyNTU4NiRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSIsIiQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCRkNWM2YzA4ZGMyZDNjYTciLCIkNTdhY2JhODdkNmUyNTU4NiRleHBvcnQkOWE0ZTg4YjkyZWRmY2U2YiIsIiQ1N2FjYmE4N2Q2ZTI1NTg2JGV4cG9ydCQ2NTIxNDMzZWQxNWEzNGRiIiwiJDU3YWNiYTg3ZDZlMjU1ODYkZXhwb3J0JGFjNjExOTBkOWZjMzExYTkiLCJjcmVhdGVTY3JvbGxBcmVhU2NvcGUiLCJTY3JvbGxBcmVhIiwiU2Nyb2xsQXJlYVZpZXdwb3J0IiwiU2Nyb2xsQXJlYVNjcm9sbGJhciIsIlNjcm9sbEFyZWFUaHVtYiIsIlNjcm9sbEFyZWFDb3JuZXIiLCJSb290IiwiVmlld3BvcnQiLCJTY3JvbGxiYXIiLCJUaHVtYiIsIkNvcm5lciJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-scroll-area/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-select/dist/index.mjs": /*!************************************************************!*\ !*** ./node_modules/@radix-ui/react-select/dist/index.mjs ***! \************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Arrow: () => (/* binding */ $cc7e05a45900e73f$export$21b07c8f274aebd5),\n/* harmony export */ Content: () => (/* binding */ $cc7e05a45900e73f$export$7c6e2c02157bb7d2),\n/* harmony export */ Group: () => (/* binding */ $cc7e05a45900e73f$export$eb2fcfdbd7ba97d4),\n/* harmony export */ Icon: () => (/* binding */ $cc7e05a45900e73f$export$f04a61298a47a40f),\n/* harmony export */ Item: () => (/* binding */ $cc7e05a45900e73f$export$6d08773d2e66f8f2),\n/* harmony export */ ItemIndicator: () => (/* binding */ $cc7e05a45900e73f$export$c3468e2714d175fa),\n/* harmony export */ ItemText: () => (/* binding */ $cc7e05a45900e73f$export$d6e5bf9c43ea9319),\n/* harmony export */ Label: () => (/* binding */ $cc7e05a45900e73f$export$b04be29aa201d4f5),\n/* harmony export */ Portal: () => (/* binding */ $cc7e05a45900e73f$export$602eac185826482c),\n/* harmony export */ Root: () => (/* binding */ $cc7e05a45900e73f$export$be92b6f5f03c0fe9),\n/* harmony export */ ScrollDownButton: () => (/* binding */ $cc7e05a45900e73f$export$bf1aedc3039c8d63),\n/* harmony export */ ScrollUpButton: () => (/* binding */ $cc7e05a45900e73f$export$2f60d3ec9ad468f2),\n/* harmony export */ Select: () => (/* binding */ $cc7e05a45900e73f$export$ef9b1a59e592288f),\n/* harmony export */ SelectArrow: () => (/* binding */ $cc7e05a45900e73f$export$314f4cb8f8099628),\n/* harmony export */ SelectContent: () => (/* binding */ $cc7e05a45900e73f$export$c973a4b3cb86a03d),\n/* harmony export */ SelectGroup: () => (/* binding */ $cc7e05a45900e73f$export$ee25a334c55de1f4),\n/* harmony export */ SelectIcon: () => (/* binding */ $cc7e05a45900e73f$export$99b400cabb58c515),\n/* harmony export */ SelectItem: () => (/* binding */ $cc7e05a45900e73f$export$13ef48a934230896),\n/* harmony export */ SelectItemIndicator: () => (/* binding */ $cc7e05a45900e73f$export$6b9198de19accfe6),\n/* harmony export */ SelectItemText: () => (/* binding */ $cc7e05a45900e73f$export$3572fb0fb821ff49),\n/* harmony export */ SelectLabel: () => (/* binding */ $cc7e05a45900e73f$export$f67338d29bd972f8),\n/* harmony export */ SelectPortal: () => (/* binding */ $cc7e05a45900e73f$export$b2af6c9944296213),\n/* harmony export */ SelectScrollDownButton: () => (/* binding */ $cc7e05a45900e73f$export$ff951e476c12189),\n/* harmony export */ SelectScrollUpButton: () => (/* binding */ $cc7e05a45900e73f$export$d8117927658af6d7),\n/* harmony export */ SelectSeparator: () => (/* binding */ $cc7e05a45900e73f$export$eba4b1df07cb1d3),\n/* harmony export */ SelectTrigger: () => (/* binding */ $cc7e05a45900e73f$export$3ac1e88a1c0b9f1),\n/* harmony export */ SelectValue: () => (/* binding */ $cc7e05a45900e73f$export$e288731fd71264f0),\n/* harmony export */ SelectViewport: () => (/* binding */ $cc7e05a45900e73f$export$9ed6e7b40248d36d),\n/* harmony export */ Separator: () => (/* binding */ $cc7e05a45900e73f$export$1ff3c3f08ae963c0),\n/* harmony export */ Trigger: () => (/* binding */ $cc7e05a45900e73f$export$41fb9f06171c75f4),\n/* harmony export */ Value: () => (/* binding */ $cc7e05a45900e73f$export$4c8d1a57a761ef94),\n/* harmony export */ Viewport: () => (/* binding */ $cc7e05a45900e73f$export$d5c6c08dc2d3ca7),\n/* harmony export */ createSelectScope: () => (/* binding */ $cc7e05a45900e73f$export$286727a75dc039bd)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-dom */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-dom.js\");\n/* harmony import */ var _radix_ui_number__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! @radix-ui/number */ \"(ssr)/./node_modules/@radix-ui/number/dist/index.mjs\");\n/* harmony import */ var _radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @radix-ui/primitive */ \"(ssr)/./node_modules/@radix-ui/primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_collection__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-collection */ \"(ssr)/./node_modules/@radix-ui/react-collection/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @radix-ui/react-compose-refs */ \"(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_context__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @radix-ui/react-context */ \"(ssr)/./node_modules/@radix-ui/react-context/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_direction__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @radix-ui/react-direction */ \"(ssr)/./node_modules/@radix-ui/react-direction/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_dismissable_layer__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! @radix-ui/react-dismissable-layer */ \"(ssr)/./node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_focus_guards__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @radix-ui/react-focus-guards */ \"(ssr)/./node_modules/@radix-ui/react-focus-guards/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_focus_scope__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @radix-ui/react-focus-scope */ \"(ssr)/./node_modules/@radix-ui/react-focus-scope/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_id__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @radix-ui/react-id */ \"(ssr)/./node_modules/@radix-ui/react-id/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_popper__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @radix-ui/react-popper */ \"(ssr)/./node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-popper/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_portal__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @radix-ui/react-portal */ \"(ssr)/./node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-portal/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_slot__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @radix-ui/react-slot */ \"(ssr)/./node_modules/@radix-ui/react-slot/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! @radix-ui/react-use-callback-ref */ \"(ssr)/./node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_controllable_state__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @radix-ui/react-use-controllable-state */ \"(ssr)/./node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @radix-ui/react-use-layout-effect */ \"(ssr)/./node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_previous__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! @radix-ui/react-use-previous */ \"(ssr)/./node_modules/@radix-ui/react-use-previous/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_visually_hidden__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! @radix-ui/react-visually-hidden */ \"(ssr)/./node_modules/@radix-ui/react-visually-hidden/dist/index.mjs\");\n/* harmony import */ var aria_hidden__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! aria-hidden */ \"(ssr)/./node_modules/aria-hidden/dist/es2015/index.js\");\n/* harmony import */ var react_remove_scroll__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! react-remove-scroll */ \"(ssr)/./node_modules/react-remove-scroll/dist/es2015/Combination.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst $cc7e05a45900e73f$var$OPEN_KEYS = [\n \" \",\n \"Enter\",\n \"ArrowUp\",\n \"ArrowDown\"\n];\nconst $cc7e05a45900e73f$var$SELECTION_KEYS = [\n \" \",\n \"Enter\"\n];\n/* -------------------------------------------------------------------------------------------------\n * Select\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$SELECT_NAME = \"Select\";\nconst [$cc7e05a45900e73f$var$Collection, $cc7e05a45900e73f$var$useCollection, $cc7e05a45900e73f$var$createCollectionScope] = (0,_radix_ui_react_collection__WEBPACK_IMPORTED_MODULE_3__.createCollection)($cc7e05a45900e73f$var$SELECT_NAME);\nconst [$cc7e05a45900e73f$var$createSelectContext, $cc7e05a45900e73f$export$286727a75dc039bd] = (0,_radix_ui_react_context__WEBPACK_IMPORTED_MODULE_4__.createContextScope)($cc7e05a45900e73f$var$SELECT_NAME, [\n $cc7e05a45900e73f$var$createCollectionScope,\n _radix_ui_react_popper__WEBPACK_IMPORTED_MODULE_5__.createPopperScope\n]);\nconst $cc7e05a45900e73f$var$usePopperScope = (0,_radix_ui_react_popper__WEBPACK_IMPORTED_MODULE_5__.createPopperScope)();\nconst [$cc7e05a45900e73f$var$SelectProvider, $cc7e05a45900e73f$var$useSelectContext] = $cc7e05a45900e73f$var$createSelectContext($cc7e05a45900e73f$var$SELECT_NAME);\nconst [$cc7e05a45900e73f$var$SelectNativeOptionsProvider, $cc7e05a45900e73f$var$useSelectNativeOptionsContext] = $cc7e05a45900e73f$var$createSelectContext($cc7e05a45900e73f$var$SELECT_NAME);\nconst $cc7e05a45900e73f$export$ef9b1a59e592288f = (props)=>{\n const { __scopeSelect: __scopeSelect, children: children, open: openProp, defaultOpen: defaultOpen, onOpenChange: onOpenChange, value: valueProp, defaultValue: defaultValue, onValueChange: onValueChange, dir: dir, name: name, autoComplete: autoComplete, disabled: disabled, required: required } = props;\n const popperScope = $cc7e05a45900e73f$var$usePopperScope(__scopeSelect);\n const [trigger, setTrigger] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [valueNode, setValueNode] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [valueNodeHasChildren, setValueNodeHasChildren] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const direction = (0,_radix_ui_react_direction__WEBPACK_IMPORTED_MODULE_6__.useDirection)(dir);\n const [open = false, setOpen] = (0,_radix_ui_react_use_controllable_state__WEBPACK_IMPORTED_MODULE_7__.useControllableState)({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange\n });\n const [value, setValue] = (0,_radix_ui_react_use_controllable_state__WEBPACK_IMPORTED_MODULE_7__.useControllableState)({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange\n });\n const triggerPointerDownPosRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null); // We set this to true by default so that events bubble to forms without JS (SSR)\n const isFormControl = trigger ? Boolean(trigger.closest(\"form\")) : true;\n const [nativeOptionsSet, setNativeOptionsSet] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(new Set()); // The native `select` only associates the correct default value if the corresponding\n // `option` is rendered as a child **at the same time** as itself.\n // Because it might take a few renders for our items to gather the information to build\n // the native `option`(s), we generate a key on the `select` to make sure React re-builds it\n // each time the options change.\n const nativeSelectKey = Array.from(nativeOptionsSet).map((option)=>option.props.value).join(\";\");\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_popper__WEBPACK_IMPORTED_MODULE_5__.Root, popperScope, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$SelectProvider, {\n required: required,\n scope: __scopeSelect,\n trigger: trigger,\n onTriggerChange: setTrigger,\n valueNode: valueNode,\n onValueNodeChange: setValueNode,\n valueNodeHasChildren: valueNodeHasChildren,\n onValueNodeHasChildrenChange: setValueNodeHasChildren,\n contentId: (0,_radix_ui_react_id__WEBPACK_IMPORTED_MODULE_8__.useId)(),\n value: value,\n onValueChange: setValue,\n open: open,\n onOpenChange: setOpen,\n dir: direction,\n triggerPointerDownPosRef: triggerPointerDownPosRef,\n disabled: disabled\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$Collection.Provider, {\n scope: __scopeSelect\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$SelectNativeOptionsProvider, {\n scope: props.__scopeSelect,\n onNativeOptionAdd: (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)((option)=>{\n setNativeOptionsSet((prev)=>new Set(prev).add(option));\n }, []),\n onNativeOptionRemove: (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)((option)=>{\n setNativeOptionsSet((prev)=>{\n const optionsSet = new Set(prev);\n optionsSet.delete(option);\n return optionsSet;\n });\n }, [])\n }, children)), isFormControl ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$BubbleSelect, {\n key: nativeSelectKey,\n \"aria-hidden\": true,\n required: required,\n tabIndex: -1,\n name: name,\n autoComplete: autoComplete,\n value: value // enable form autofill\n ,\n onChange: (event)=>setValue(event.target.value),\n disabled: disabled\n }, value === undefined ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(\"option\", {\n value: \"\"\n }) : null, Array.from(nativeOptionsSet)) : null));\n};\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$ef9b1a59e592288f, {\n displayName: $cc7e05a45900e73f$var$SELECT_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectTrigger\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$TRIGGER_NAME = \"SelectTrigger\";\nconst $cc7e05a45900e73f$export$3ac1e88a1c0b9f1 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeSelect: __scopeSelect, disabled: disabled = false, ...triggerProps } = props;\n const popperScope = $cc7e05a45900e73f$var$usePopperScope(__scopeSelect);\n const context = $cc7e05a45900e73f$var$useSelectContext($cc7e05a45900e73f$var$TRIGGER_NAME, __scopeSelect);\n const isDisabled = context.disabled || disabled;\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_9__.useComposedRefs)(forwardedRef, context.onTriggerChange);\n const getItems = $cc7e05a45900e73f$var$useCollection(__scopeSelect);\n const [searchRef, handleTypeaheadSearch, resetTypeahead] = $cc7e05a45900e73f$var$useTypeaheadSearch((search)=>{\n const enabledItems = getItems().filter((item)=>!item.disabled);\n const currentItem = enabledItems.find((item)=>item.value === context.value);\n const nextItem = $cc7e05a45900e73f$var$findNextItem(enabledItems, search, currentItem);\n if (nextItem !== undefined) context.onValueChange(nextItem.value);\n });\n const handleOpen = ()=>{\n if (!isDisabled) {\n context.onOpenChange(true); // reset typeahead when we open\n resetTypeahead();\n }\n };\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_popper__WEBPACK_IMPORTED_MODULE_5__.Anchor, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n asChild: true\n }, popperScope), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_10__.Primitive.button, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n type: \"button\",\n role: \"combobox\",\n \"aria-controls\": context.contentId,\n \"aria-expanded\": context.open,\n \"aria-required\": context.required,\n \"aria-autocomplete\": \"none\",\n dir: context.dir,\n \"data-state\": context.open ? \"open\" : \"closed\",\n disabled: isDisabled,\n \"data-disabled\": isDisabled ? \"\" : undefined,\n \"data-placeholder\": $cc7e05a45900e73f$var$shouldShowPlaceholder(context.value) ? \"\" : undefined\n }, triggerProps, {\n ref: composedRefs // Enable compatibility with native label or custom `Label` \"click\" for Safari:\n ,\n onClick: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(triggerProps.onClick, (event)=>{\n // Whilst browsers generally have no issue focusing the trigger when clicking\n // on a label, Safari seems to struggle with the fact that there's no `onClick`.\n // We force `focus` in this case. Note: this doesn't create any other side-effect\n // because we are preventing default in `onPointerDown` so effectively\n // this only runs for a label \"click\"\n event.currentTarget.focus();\n }),\n onPointerDown: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(triggerProps.onPointerDown, (event)=>{\n // prevent implicit pointer capture\n // https://www.w3.org/TR/pointerevents3/#implicit-pointer-capture\n const target = event.target;\n if (target.hasPointerCapture(event.pointerId)) target.releasePointerCapture(event.pointerId);\n // only call handler if it's the left button (mousedown gets triggered by all mouse buttons)\n // but not when the control key is pressed (avoiding MacOS right click)\n if (event.button === 0 && event.ctrlKey === false) {\n handleOpen();\n context.triggerPointerDownPosRef.current = {\n x: Math.round(event.pageX),\n y: Math.round(event.pageY)\n }; // prevent trigger from stealing focus from the active item after opening.\n event.preventDefault();\n }\n }),\n onKeyDown: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(triggerProps.onKeyDown, (event)=>{\n const isTypingAhead = searchRef.current !== \"\";\n const isModifierKey = event.ctrlKey || event.altKey || event.metaKey;\n if (!isModifierKey && event.key.length === 1) handleTypeaheadSearch(event.key);\n if (isTypingAhead && event.key === \" \") return;\n if ($cc7e05a45900e73f$var$OPEN_KEYS.includes(event.key)) {\n handleOpen();\n event.preventDefault();\n }\n })\n })));\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$3ac1e88a1c0b9f1, {\n displayName: $cc7e05a45900e73f$var$TRIGGER_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectValue\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$VALUE_NAME = \"SelectValue\";\nconst $cc7e05a45900e73f$export$e288731fd71264f0 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n // We ignore `className` and `style` as this part shouldn't be styled.\n const { __scopeSelect: __scopeSelect, className: className, style: style, children: children, placeholder: placeholder = \"\", ...valueProps } = props;\n const context = $cc7e05a45900e73f$var$useSelectContext($cc7e05a45900e73f$var$VALUE_NAME, __scopeSelect);\n const { onValueNodeHasChildrenChange: onValueNodeHasChildrenChange } = context;\n const hasChildren = children !== undefined;\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_9__.useComposedRefs)(forwardedRef, context.onValueNodeChange);\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_12__.useLayoutEffect)(()=>{\n onValueNodeHasChildrenChange(hasChildren);\n }, [\n onValueNodeHasChildrenChange,\n hasChildren\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_10__.Primitive.span, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, valueProps, {\n ref: composedRefs // we don't want events from the portalled `SelectValue` children to bubble\n ,\n style: {\n pointerEvents: \"none\"\n }\n }), $cc7e05a45900e73f$var$shouldShowPlaceholder(context.value) ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, placeholder) : children);\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$e288731fd71264f0, {\n displayName: $cc7e05a45900e73f$var$VALUE_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectIcon\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$ICON_NAME = \"SelectIcon\";\nconst $cc7e05a45900e73f$export$99b400cabb58c515 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeSelect: __scopeSelect, children: children, ...iconProps } = props;\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_10__.Primitive.span, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"aria-hidden\": true\n }, iconProps, {\n ref: forwardedRef\n }), children || \"▼\");\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$99b400cabb58c515, {\n displayName: $cc7e05a45900e73f$var$ICON_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectPortal\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$PORTAL_NAME = \"SelectPortal\";\nconst $cc7e05a45900e73f$export$b2af6c9944296213 = (props)=>{\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_portal__WEBPACK_IMPORTED_MODULE_13__.Portal, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n asChild: true\n }, props));\n};\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$b2af6c9944296213, {\n displayName: $cc7e05a45900e73f$var$PORTAL_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectContent\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$CONTENT_NAME = \"SelectContent\";\nconst $cc7e05a45900e73f$export$c973a4b3cb86a03d = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const context = $cc7e05a45900e73f$var$useSelectContext($cc7e05a45900e73f$var$CONTENT_NAME, props.__scopeSelect);\n const [fragment, setFragment] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(); // setting the fragment in `useLayoutEffect` as `DocumentFragment` doesn't exist on the server\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_12__.useLayoutEffect)(()=>{\n setFragment(new DocumentFragment());\n }, []);\n if (!context.open) {\n const frag = fragment;\n return frag ? /*#__PURE__*/ (0,react_dom__WEBPACK_IMPORTED_MODULE_2__.createPortal)(/*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$SelectContentProvider, {\n scope: props.__scopeSelect\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$Collection.Slot, {\n scope: props.__scopeSelect\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(\"div\", null, props.children))), frag) : null;\n }\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$SelectContentImpl, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, props, {\n ref: forwardedRef\n }));\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$c973a4b3cb86a03d, {\n displayName: $cc7e05a45900e73f$var$CONTENT_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectContentImpl\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$CONTENT_MARGIN = 10;\nconst [$cc7e05a45900e73f$var$SelectContentProvider, $cc7e05a45900e73f$var$useSelectContentContext] = $cc7e05a45900e73f$var$createSelectContext($cc7e05a45900e73f$var$CONTENT_NAME);\nconst $cc7e05a45900e73f$var$CONTENT_IMPL_NAME = \"SelectContentImpl\";\nconst $cc7e05a45900e73f$var$SelectContentImpl = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeSelect: __scopeSelect, position: position = \"item-aligned\", onCloseAutoFocus: onCloseAutoFocus, onEscapeKeyDown: onEscapeKeyDown, onPointerDownOutside: onPointerDownOutside, side: // PopperContent props\n side, sideOffset: sideOffset, align: align, alignOffset: alignOffset, arrowPadding: arrowPadding, collisionBoundary: collisionBoundary, collisionPadding: collisionPadding, sticky: sticky, hideWhenDetached: hideWhenDetached, avoidCollisions: avoidCollisions, ...contentProps } = props;\n const context = $cc7e05a45900e73f$var$useSelectContext($cc7e05a45900e73f$var$CONTENT_NAME, __scopeSelect);\n const [content, setContent] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [viewport, setViewport] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_9__.useComposedRefs)(forwardedRef, (node)=>setContent(node));\n const [selectedItem, setSelectedItem] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [selectedItemText, setSelectedItemText] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const getItems = $cc7e05a45900e73f$var$useCollection(__scopeSelect);\n const [isPositioned, setIsPositioned] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const firstValidItemFoundRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(false); // aria-hide everything except the content (better supported equivalent to setting aria-modal)\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (content) return (0,aria_hidden__WEBPACK_IMPORTED_MODULE_14__.hideOthers)(content);\n }, [\n content\n ]); // Make sure the whole tree has focus guards as our `Select` may be\n // the last element in the DOM (because of the `Portal`)\n (0,_radix_ui_react_focus_guards__WEBPACK_IMPORTED_MODULE_15__.useFocusGuards)();\n const focusFirst = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)((candidates)=>{\n const [firstItem, ...restItems] = getItems().map((item)=>item.ref.current);\n const [lastItem] = restItems.slice(-1);\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates){\n // if focus is already where we want to go, we don't want to keep going through the candidates\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate === null || candidate === void 0 || candidate.scrollIntoView({\n block: \"nearest\"\n }); // viewport might have padding so scroll to its edges when focusing first/last items.\n if (candidate === firstItem && viewport) viewport.scrollTop = 0;\n if (candidate === lastItem && viewport) viewport.scrollTop = viewport.scrollHeight;\n candidate === null || candidate === void 0 || candidate.focus();\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n }, [\n getItems,\n viewport\n ]);\n const focusSelectedItem = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(()=>focusFirst([\n selectedItem,\n content\n ]), [\n focusFirst,\n selectedItem,\n content\n ]); // Since this is not dependent on layout, we want to ensure this runs at the same time as\n // other effects across components. Hence why we don't call `focusSelectedItem` inside `position`.\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (isPositioned) focusSelectedItem();\n }, [\n isPositioned,\n focusSelectedItem\n ]); // prevent selecting items on `pointerup` in some cases after opening from `pointerdown`\n // and close on `pointerup` outside.\n const { onOpenChange: onOpenChange, triggerPointerDownPosRef: triggerPointerDownPosRef } = context;\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (content) {\n let pointerMoveDelta = {\n x: 0,\n y: 0\n };\n const handlePointerMove = (event)=>{\n var _triggerPointerDownPo, _triggerPointerDownPo2, _triggerPointerDownPo3, _triggerPointerDownPo4;\n pointerMoveDelta = {\n x: Math.abs(Math.round(event.pageX) - ((_triggerPointerDownPo = (_triggerPointerDownPo2 = triggerPointerDownPosRef.current) === null || _triggerPointerDownPo2 === void 0 ? void 0 : _triggerPointerDownPo2.x) !== null && _triggerPointerDownPo !== void 0 ? _triggerPointerDownPo : 0)),\n y: Math.abs(Math.round(event.pageY) - ((_triggerPointerDownPo3 = (_triggerPointerDownPo4 = triggerPointerDownPosRef.current) === null || _triggerPointerDownPo4 === void 0 ? void 0 : _triggerPointerDownPo4.y) !== null && _triggerPointerDownPo3 !== void 0 ? _triggerPointerDownPo3 : 0))\n };\n };\n const handlePointerUp = (event)=>{\n // If the pointer hasn't moved by a certain threshold then we prevent selecting item on `pointerup`.\n if (pointerMoveDelta.x <= 10 && pointerMoveDelta.y <= 10) event.preventDefault();\n else if (!content.contains(event.target)) onOpenChange(false);\n document.removeEventListener(\"pointermove\", handlePointerMove);\n triggerPointerDownPosRef.current = null;\n };\n if (triggerPointerDownPosRef.current !== null) {\n document.addEventListener(\"pointermove\", handlePointerMove);\n document.addEventListener(\"pointerup\", handlePointerUp, {\n capture: true,\n once: true\n });\n }\n return ()=>{\n document.removeEventListener(\"pointermove\", handlePointerMove);\n document.removeEventListener(\"pointerup\", handlePointerUp, {\n capture: true\n });\n };\n }\n }, [\n content,\n onOpenChange,\n triggerPointerDownPosRef\n ]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const close = ()=>onOpenChange(false);\n window.addEventListener(\"blur\", close);\n window.addEventListener(\"resize\", close);\n return ()=>{\n window.removeEventListener(\"blur\", close);\n window.removeEventListener(\"resize\", close);\n };\n }, [\n onOpenChange\n ]);\n const [searchRef, handleTypeaheadSearch] = $cc7e05a45900e73f$var$useTypeaheadSearch((search)=>{\n const enabledItems = getItems().filter((item)=>!item.disabled);\n const currentItem = enabledItems.find((item)=>item.ref.current === document.activeElement);\n const nextItem = $cc7e05a45900e73f$var$findNextItem(enabledItems, search, currentItem);\n if (nextItem) /**\n * Imperative focus during keydown is risky so we prevent React's batching updates\n * to avoid potential bugs. See: https://github.com/facebook/react/issues/20332\n */ setTimeout(()=>nextItem.ref.current.focus());\n });\n const itemRefCallback = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)((node, value, disabled)=>{\n const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;\n const isSelectedItem = context.value !== undefined && context.value === value;\n if (isSelectedItem || isFirstValidItem) {\n setSelectedItem(node);\n if (isFirstValidItem) firstValidItemFoundRef.current = true;\n }\n }, [\n context.value\n ]);\n const handleItemLeave = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(()=>content === null || content === void 0 ? void 0 : content.focus(), [\n content\n ]);\n const itemTextRefCallback = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)((node, value, disabled)=>{\n const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;\n const isSelectedItem = context.value !== undefined && context.value === value;\n if (isSelectedItem || isFirstValidItem) setSelectedItemText(node);\n }, [\n context.value\n ]);\n const SelectPosition = position === \"popper\" ? $cc7e05a45900e73f$var$SelectPopperPosition : $cc7e05a45900e73f$var$SelectItemAlignedPosition; // Silently ignore props that are not supported by `SelectItemAlignedPosition`\n const popperContentProps = SelectPosition === $cc7e05a45900e73f$var$SelectPopperPosition ? {\n side: side,\n sideOffset: sideOffset,\n align: align,\n alignOffset: alignOffset,\n arrowPadding: arrowPadding,\n collisionBoundary: collisionBoundary,\n collisionPadding: collisionPadding,\n sticky: sticky,\n hideWhenDetached: hideWhenDetached,\n avoidCollisions: avoidCollisions\n } : {};\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$SelectContentProvider, {\n scope: __scopeSelect,\n content: content,\n viewport: viewport,\n onViewportChange: setViewport,\n itemRefCallback: itemRefCallback,\n selectedItem: selectedItem,\n onItemLeave: handleItemLeave,\n itemTextRefCallback: itemTextRefCallback,\n focusSelectedItem: focusSelectedItem,\n selectedItemText: selectedItemText,\n position: position,\n isPositioned: isPositioned,\n searchRef: searchRef\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(react_remove_scroll__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n as: _radix_ui_react_slot__WEBPACK_IMPORTED_MODULE_17__.Slot,\n allowPinchZoom: true\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_focus_scope__WEBPACK_IMPORTED_MODULE_18__.FocusScope, {\n asChild: true // we make sure we're not trapping once it's been closed\n ,\n trapped: context.open,\n onMountAutoFocus: (event)=>{\n // we prevent open autofocus because we manually focus the selected item\n event.preventDefault();\n },\n onUnmountAutoFocus: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(onCloseAutoFocus, (event)=>{\n var _context$trigger;\n (_context$trigger = context.trigger) === null || _context$trigger === void 0 || _context$trigger.focus({\n preventScroll: true\n });\n event.preventDefault();\n })\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_dismissable_layer__WEBPACK_IMPORTED_MODULE_19__.DismissableLayer, {\n asChild: true,\n disableOutsidePointerEvents: true,\n onEscapeKeyDown: onEscapeKeyDown,\n onPointerDownOutside: onPointerDownOutside // When focus is trapped, a focusout event may still happen.\n ,\n onFocusOutside: (event)=>event.preventDefault(),\n onDismiss: ()=>context.onOpenChange(false)\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(SelectPosition, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n role: \"listbox\",\n id: context.contentId,\n \"data-state\": context.open ? \"open\" : \"closed\",\n dir: context.dir,\n onContextMenu: (event)=>event.preventDefault()\n }, contentProps, popperContentProps, {\n onPlaced: ()=>setIsPositioned(true),\n ref: composedRefs,\n style: {\n // flex layout so we can place the scroll buttons properly\n display: \"flex\",\n flexDirection: \"column\",\n // reset the outline by default as the content MAY get focused\n outline: \"none\",\n ...contentProps.style\n },\n onKeyDown: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(contentProps.onKeyDown, (event)=>{\n const isModifierKey = event.ctrlKey || event.altKey || event.metaKey; // select should not be navigated using tab key so we prevent it\n if (event.key === \"Tab\") event.preventDefault();\n if (!isModifierKey && event.key.length === 1) handleTypeaheadSearch(event.key);\n if ([\n \"ArrowUp\",\n \"ArrowDown\",\n \"Home\",\n \"End\"\n ].includes(event.key)) {\n const items = getItems().filter((item)=>!item.disabled);\n let candidateNodes = items.map((item)=>item.ref.current);\n if ([\n \"ArrowUp\",\n \"End\"\n ].includes(event.key)) candidateNodes = candidateNodes.slice().reverse();\n if ([\n \"ArrowUp\",\n \"ArrowDown\"\n ].includes(event.key)) {\n const currentElement = event.target;\n const currentIndex = candidateNodes.indexOf(currentElement);\n candidateNodes = candidateNodes.slice(currentIndex + 1);\n }\n /**\n * Imperative focus during keydown is risky so we prevent React's batching updates\n * to avoid potential bugs. See: https://github.com/facebook/react/issues/20332\n */ setTimeout(()=>focusFirst(candidateNodes));\n event.preventDefault();\n }\n })\n }))))));\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$var$SelectContentImpl, {\n displayName: $cc7e05a45900e73f$var$CONTENT_IMPL_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectItemAlignedPosition\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$ITEM_ALIGNED_POSITION_NAME = \"SelectItemAlignedPosition\";\nconst $cc7e05a45900e73f$var$SelectItemAlignedPosition = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeSelect: __scopeSelect, onPlaced: onPlaced, ...popperProps } = props;\n const context = $cc7e05a45900e73f$var$useSelectContext($cc7e05a45900e73f$var$CONTENT_NAME, __scopeSelect);\n const contentContext = $cc7e05a45900e73f$var$useSelectContentContext($cc7e05a45900e73f$var$CONTENT_NAME, __scopeSelect);\n const [contentWrapper, setContentWrapper] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [content, setContent] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_9__.useComposedRefs)(forwardedRef, (node)=>setContent(node));\n const getItems = $cc7e05a45900e73f$var$useCollection(__scopeSelect);\n const shouldExpandOnScrollRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(false);\n const shouldRepositionRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(true);\n const { viewport: viewport, selectedItem: selectedItem, selectedItemText: selectedItemText, focusSelectedItem: focusSelectedItem } = contentContext;\n const position = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(()=>{\n if (context.trigger && context.valueNode && contentWrapper && content && viewport && selectedItem && selectedItemText) {\n const triggerRect = context.trigger.getBoundingClientRect(); // -----------------------------------------------------------------------------------------\n // Horizontal positioning\n // -----------------------------------------------------------------------------------------\n const contentRect = content.getBoundingClientRect();\n const valueNodeRect = context.valueNode.getBoundingClientRect();\n const itemTextRect = selectedItemText.getBoundingClientRect();\n if (context.dir !== \"rtl\") {\n const itemTextOffset = itemTextRect.left - contentRect.left;\n const left = valueNodeRect.left - itemTextOffset;\n const leftDelta = triggerRect.left - left;\n const minContentWidth = triggerRect.width + leftDelta;\n const contentWidth = Math.max(minContentWidth, contentRect.width);\n const rightEdge = window.innerWidth - $cc7e05a45900e73f$var$CONTENT_MARGIN;\n const clampedLeft = (0,_radix_ui_number__WEBPACK_IMPORTED_MODULE_20__.clamp)(left, [\n $cc7e05a45900e73f$var$CONTENT_MARGIN,\n rightEdge - contentWidth\n ]);\n contentWrapper.style.minWidth = minContentWidth + \"px\";\n contentWrapper.style.left = clampedLeft + \"px\";\n } else {\n const itemTextOffset = contentRect.right - itemTextRect.right;\n const right = window.innerWidth - valueNodeRect.right - itemTextOffset;\n const rightDelta = window.innerWidth - triggerRect.right - right;\n const minContentWidth = triggerRect.width + rightDelta;\n const contentWidth = Math.max(minContentWidth, contentRect.width);\n const leftEdge = window.innerWidth - $cc7e05a45900e73f$var$CONTENT_MARGIN;\n const clampedRight = (0,_radix_ui_number__WEBPACK_IMPORTED_MODULE_20__.clamp)(right, [\n $cc7e05a45900e73f$var$CONTENT_MARGIN,\n leftEdge - contentWidth\n ]);\n contentWrapper.style.minWidth = minContentWidth + \"px\";\n contentWrapper.style.right = clampedRight + \"px\";\n } // -----------------------------------------------------------------------------------------\n // Vertical positioning\n // -----------------------------------------------------------------------------------------\n const items = getItems();\n const availableHeight = window.innerHeight - $cc7e05a45900e73f$var$CONTENT_MARGIN * 2;\n const itemsHeight = viewport.scrollHeight;\n const contentStyles = window.getComputedStyle(content);\n const contentBorderTopWidth = parseInt(contentStyles.borderTopWidth, 10);\n const contentPaddingTop = parseInt(contentStyles.paddingTop, 10);\n const contentBorderBottomWidth = parseInt(contentStyles.borderBottomWidth, 10);\n const contentPaddingBottom = parseInt(contentStyles.paddingBottom, 10);\n const fullContentHeight = contentBorderTopWidth + contentPaddingTop + itemsHeight + contentPaddingBottom + contentBorderBottomWidth; // prettier-ignore\n const minContentHeight = Math.min(selectedItem.offsetHeight * 5, fullContentHeight);\n const viewportStyles = window.getComputedStyle(viewport);\n const viewportPaddingTop = parseInt(viewportStyles.paddingTop, 10);\n const viewportPaddingBottom = parseInt(viewportStyles.paddingBottom, 10);\n const topEdgeToTriggerMiddle = triggerRect.top + triggerRect.height / 2 - $cc7e05a45900e73f$var$CONTENT_MARGIN;\n const triggerMiddleToBottomEdge = availableHeight - topEdgeToTriggerMiddle;\n const selectedItemHalfHeight = selectedItem.offsetHeight / 2;\n const itemOffsetMiddle = selectedItem.offsetTop + selectedItemHalfHeight;\n const contentTopToItemMiddle = contentBorderTopWidth + contentPaddingTop + itemOffsetMiddle;\n const itemMiddleToContentBottom = fullContentHeight - contentTopToItemMiddle;\n const willAlignWithoutTopOverflow = contentTopToItemMiddle <= topEdgeToTriggerMiddle;\n if (willAlignWithoutTopOverflow) {\n const isLastItem = selectedItem === items[items.length - 1].ref.current;\n contentWrapper.style.bottom = \"0px\";\n const viewportOffsetBottom = content.clientHeight - viewport.offsetTop - viewport.offsetHeight;\n const clampedTriggerMiddleToBottomEdge = Math.max(triggerMiddleToBottomEdge, selectedItemHalfHeight + (isLastItem ? viewportPaddingBottom : 0) + viewportOffsetBottom + contentBorderBottomWidth);\n const height = contentTopToItemMiddle + clampedTriggerMiddleToBottomEdge;\n contentWrapper.style.height = height + \"px\";\n } else {\n const isFirstItem = selectedItem === items[0].ref.current;\n contentWrapper.style.top = \"0px\";\n const clampedTopEdgeToTriggerMiddle = Math.max(topEdgeToTriggerMiddle, contentBorderTopWidth + viewport.offsetTop + (isFirstItem ? viewportPaddingTop : 0) + selectedItemHalfHeight);\n const height = clampedTopEdgeToTriggerMiddle + itemMiddleToContentBottom;\n contentWrapper.style.height = height + \"px\";\n viewport.scrollTop = contentTopToItemMiddle - topEdgeToTriggerMiddle + viewport.offsetTop;\n }\n contentWrapper.style.margin = `${$cc7e05a45900e73f$var$CONTENT_MARGIN}px 0`;\n contentWrapper.style.minHeight = minContentHeight + \"px\";\n contentWrapper.style.maxHeight = availableHeight + \"px\"; // -----------------------------------------------------------------------------------------\n onPlaced === null || onPlaced === void 0 || onPlaced(); // we don't want the initial scroll position adjustment to trigger \"expand on scroll\"\n // so we explicitly turn it on only after they've registered.\n requestAnimationFrame(()=>shouldExpandOnScrollRef.current = true);\n }\n }, [\n getItems,\n context.trigger,\n context.valueNode,\n contentWrapper,\n content,\n viewport,\n selectedItem,\n selectedItemText,\n context.dir,\n onPlaced\n ]);\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_12__.useLayoutEffect)(()=>position(), [\n position\n ]); // copy z-index from content to wrapper\n const [contentZIndex, setContentZIndex] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)();\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_12__.useLayoutEffect)(()=>{\n if (content) setContentZIndex(window.getComputedStyle(content).zIndex);\n }, [\n content\n ]); // When the viewport becomes scrollable at the top, the scroll up button will mount.\n // Because it is part of the normal flow, it will push down the viewport, thus throwing our\n // trigger => selectedItem alignment off by the amount the viewport was pushed down.\n // We wait for this to happen and then re-run the positining logic one more time to account for it.\n const handleScrollButtonChange = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)((node)=>{\n if (node && shouldRepositionRef.current === true) {\n position();\n focusSelectedItem === null || focusSelectedItem === void 0 || focusSelectedItem();\n shouldRepositionRef.current = false;\n }\n }, [\n position,\n focusSelectedItem\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$SelectViewportProvider, {\n scope: __scopeSelect,\n contentWrapper: contentWrapper,\n shouldExpandOnScrollRef: shouldExpandOnScrollRef,\n onScrollButtonChange: handleScrollButtonChange\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(\"div\", {\n ref: setContentWrapper,\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n position: \"fixed\",\n zIndex: contentZIndex\n }\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_10__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, popperProps, {\n ref: composedRefs,\n style: {\n // When we get the height of the content, it includes borders. If we were to set\n // the height without having `boxSizing: 'border-box'` it would be too big.\n boxSizing: \"border-box\",\n // We need to ensure the content doesn't get taller than the wrapper\n maxHeight: \"100%\",\n ...popperProps.style\n }\n }))));\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$var$SelectItemAlignedPosition, {\n displayName: $cc7e05a45900e73f$var$ITEM_ALIGNED_POSITION_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectPopperPosition\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$POPPER_POSITION_NAME = \"SelectPopperPosition\";\nconst $cc7e05a45900e73f$var$SelectPopperPosition = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeSelect: __scopeSelect, align: align = \"start\", collisionPadding: collisionPadding = $cc7e05a45900e73f$var$CONTENT_MARGIN, ...popperProps } = props;\n const popperScope = $cc7e05a45900e73f$var$usePopperScope(__scopeSelect);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_popper__WEBPACK_IMPORTED_MODULE_5__.Content, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, popperScope, popperProps, {\n ref: forwardedRef,\n align: align,\n collisionPadding: collisionPadding,\n style: {\n // Ensure border-box for floating-ui calculations\n boxSizing: \"border-box\",\n ...popperProps.style,\n \"--radix-select-content-transform-origin\": \"var(--radix-popper-transform-origin)\",\n \"--radix-select-content-available-width\": \"var(--radix-popper-available-width)\",\n \"--radix-select-content-available-height\": \"var(--radix-popper-available-height)\",\n \"--radix-select-trigger-width\": \"var(--radix-popper-anchor-width)\",\n \"--radix-select-trigger-height\": \"var(--radix-popper-anchor-height)\"\n }\n }));\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$var$SelectPopperPosition, {\n displayName: $cc7e05a45900e73f$var$POPPER_POSITION_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectViewport\n * -----------------------------------------------------------------------------------------------*/ const [$cc7e05a45900e73f$var$SelectViewportProvider, $cc7e05a45900e73f$var$useSelectViewportContext] = $cc7e05a45900e73f$var$createSelectContext($cc7e05a45900e73f$var$CONTENT_NAME, {});\nconst $cc7e05a45900e73f$var$VIEWPORT_NAME = \"SelectViewport\";\nconst $cc7e05a45900e73f$export$9ed6e7b40248d36d = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeSelect: __scopeSelect, ...viewportProps } = props;\n const contentContext = $cc7e05a45900e73f$var$useSelectContentContext($cc7e05a45900e73f$var$VIEWPORT_NAME, __scopeSelect);\n const viewportContext = $cc7e05a45900e73f$var$useSelectViewportContext($cc7e05a45900e73f$var$VIEWPORT_NAME, __scopeSelect);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_9__.useComposedRefs)(forwardedRef, contentContext.onViewportChange);\n const prevScrollTopRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(0);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(\"style\", {\n dangerouslySetInnerHTML: {\n __html: `[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}`\n }\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$Collection.Slot, {\n scope: __scopeSelect\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_10__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"data-radix-select-viewport\": \"\",\n role: \"presentation\"\n }, viewportProps, {\n ref: composedRefs,\n style: {\n // we use position: 'relative' here on the `viewport` so that when we call\n // `selectedItem.offsetTop` in calculations, the offset is relative to the viewport\n // (independent of the scrollUpButton).\n position: \"relative\",\n flex: 1,\n overflow: \"auto\",\n ...viewportProps.style\n },\n onScroll: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(viewportProps.onScroll, (event)=>{\n const viewport = event.currentTarget;\n const { contentWrapper: contentWrapper, shouldExpandOnScrollRef: shouldExpandOnScrollRef } = viewportContext;\n if (shouldExpandOnScrollRef !== null && shouldExpandOnScrollRef !== void 0 && shouldExpandOnScrollRef.current && contentWrapper) {\n const scrolledBy = Math.abs(prevScrollTopRef.current - viewport.scrollTop);\n if (scrolledBy > 0) {\n const availableHeight = window.innerHeight - $cc7e05a45900e73f$var$CONTENT_MARGIN * 2;\n const cssMinHeight = parseFloat(contentWrapper.style.minHeight);\n const cssHeight = parseFloat(contentWrapper.style.height);\n const prevHeight = Math.max(cssMinHeight, cssHeight);\n if (prevHeight < availableHeight) {\n const nextHeight = prevHeight + scrolledBy;\n const clampedNextHeight = Math.min(availableHeight, nextHeight);\n const heightDiff = nextHeight - clampedNextHeight;\n contentWrapper.style.height = clampedNextHeight + \"px\";\n if (contentWrapper.style.bottom === \"0px\") {\n viewport.scrollTop = heightDiff > 0 ? heightDiff : 0; // ensure the content stays pinned to the bottom\n contentWrapper.style.justifyContent = \"flex-end\";\n }\n }\n }\n }\n prevScrollTopRef.current = viewport.scrollTop;\n })\n }))));\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$9ed6e7b40248d36d, {\n displayName: $cc7e05a45900e73f$var$VIEWPORT_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectGroup\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$GROUP_NAME = \"SelectGroup\";\nconst [$cc7e05a45900e73f$var$SelectGroupContextProvider, $cc7e05a45900e73f$var$useSelectGroupContext] = $cc7e05a45900e73f$var$createSelectContext($cc7e05a45900e73f$var$GROUP_NAME);\nconst $cc7e05a45900e73f$export$ee25a334c55de1f4 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeSelect: __scopeSelect, ...groupProps } = props;\n const groupId = (0,_radix_ui_react_id__WEBPACK_IMPORTED_MODULE_8__.useId)();\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$SelectGroupContextProvider, {\n scope: __scopeSelect,\n id: groupId\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_10__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n role: \"group\",\n \"aria-labelledby\": groupId\n }, groupProps, {\n ref: forwardedRef\n })));\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$ee25a334c55de1f4, {\n displayName: $cc7e05a45900e73f$var$GROUP_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectLabel\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$LABEL_NAME = \"SelectLabel\";\nconst $cc7e05a45900e73f$export$f67338d29bd972f8 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeSelect: __scopeSelect, ...labelProps } = props;\n const groupContext = $cc7e05a45900e73f$var$useSelectGroupContext($cc7e05a45900e73f$var$LABEL_NAME, __scopeSelect);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_10__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n id: groupContext.id\n }, labelProps, {\n ref: forwardedRef\n }));\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$f67338d29bd972f8, {\n displayName: $cc7e05a45900e73f$var$LABEL_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectItem\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$ITEM_NAME = \"SelectItem\";\nconst [$cc7e05a45900e73f$var$SelectItemContextProvider, $cc7e05a45900e73f$var$useSelectItemContext] = $cc7e05a45900e73f$var$createSelectContext($cc7e05a45900e73f$var$ITEM_NAME);\nconst $cc7e05a45900e73f$export$13ef48a934230896 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeSelect: __scopeSelect, value: value, disabled: disabled = false, textValue: textValueProp, ...itemProps } = props;\n const context = $cc7e05a45900e73f$var$useSelectContext($cc7e05a45900e73f$var$ITEM_NAME, __scopeSelect);\n const contentContext = $cc7e05a45900e73f$var$useSelectContentContext($cc7e05a45900e73f$var$ITEM_NAME, __scopeSelect);\n const isSelected = context.value === value;\n const [textValue, setTextValue] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(textValueProp !== null && textValueProp !== void 0 ? textValueProp : \"\");\n const [isFocused, setIsFocused] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_9__.useComposedRefs)(forwardedRef, (node)=>{\n var _contentContext$itemR;\n return (_contentContext$itemR = contentContext.itemRefCallback) === null || _contentContext$itemR === void 0 ? void 0 : _contentContext$itemR.call(contentContext, node, value, disabled);\n });\n const textId = (0,_radix_ui_react_id__WEBPACK_IMPORTED_MODULE_8__.useId)();\n const handleSelect = ()=>{\n if (!disabled) {\n context.onValueChange(value);\n context.onOpenChange(false);\n }\n };\n if (value === \"\") throw new Error(\"A must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.\");\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$SelectItemContextProvider, {\n scope: __scopeSelect,\n value: value,\n disabled: disabled,\n textId: textId,\n isSelected: isSelected,\n onItemTextChange: (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)((node)=>{\n setTextValue((prevTextValue)=>{\n var _node$textContent;\n return prevTextValue || ((_node$textContent = node === null || node === void 0 ? void 0 : node.textContent) !== null && _node$textContent !== void 0 ? _node$textContent : \"\").trim();\n });\n }, [])\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$Collection.ItemSlot, {\n scope: __scopeSelect,\n value: value,\n disabled: disabled,\n textValue: textValue\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_10__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n role: \"option\",\n \"aria-labelledby\": textId,\n \"data-highlighted\": isFocused ? \"\" : undefined // `isFocused` caveat fixes stuttering in VoiceOver\n ,\n \"aria-selected\": isSelected && isFocused,\n \"data-state\": isSelected ? \"checked\" : \"unchecked\",\n \"aria-disabled\": disabled || undefined,\n \"data-disabled\": disabled ? \"\" : undefined,\n tabIndex: disabled ? undefined : -1\n }, itemProps, {\n ref: composedRefs,\n onFocus: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(itemProps.onFocus, ()=>setIsFocused(true)),\n onBlur: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(itemProps.onBlur, ()=>setIsFocused(false)),\n onPointerUp: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(itemProps.onPointerUp, handleSelect),\n onPointerMove: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(itemProps.onPointerMove, (event)=>{\n if (disabled) {\n var _contentContext$onIte;\n (_contentContext$onIte = contentContext.onItemLeave) === null || _contentContext$onIte === void 0 || _contentContext$onIte.call(contentContext);\n } else // as it only means it might scroll a few pixels when using the pointer.\n event.currentTarget.focus({\n preventScroll: true\n });\n }),\n onPointerLeave: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(itemProps.onPointerLeave, (event)=>{\n if (event.currentTarget === document.activeElement) {\n var _contentContext$onIte2;\n (_contentContext$onIte2 = contentContext.onItemLeave) === null || _contentContext$onIte2 === void 0 || _contentContext$onIte2.call(contentContext);\n }\n }),\n onKeyDown: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(itemProps.onKeyDown, (event)=>{\n var _contentContext$searc;\n const isTypingAhead = ((_contentContext$searc = contentContext.searchRef) === null || _contentContext$searc === void 0 ? void 0 : _contentContext$searc.current) !== \"\";\n if (isTypingAhead && event.key === \" \") return;\n if ($cc7e05a45900e73f$var$SELECTION_KEYS.includes(event.key)) handleSelect(); // prevent page scroll if using the space key to select an item\n if (event.key === \" \") event.preventDefault();\n })\n }))));\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$13ef48a934230896, {\n displayName: $cc7e05a45900e73f$var$ITEM_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectItemText\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$ITEM_TEXT_NAME = \"SelectItemText\";\nconst $cc7e05a45900e73f$export$3572fb0fb821ff49 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n // We ignore `className` and `style` as this part shouldn't be styled.\n const { __scopeSelect: __scopeSelect, className: className, style: style, ...itemTextProps } = props;\n const context = $cc7e05a45900e73f$var$useSelectContext($cc7e05a45900e73f$var$ITEM_TEXT_NAME, __scopeSelect);\n const contentContext = $cc7e05a45900e73f$var$useSelectContentContext($cc7e05a45900e73f$var$ITEM_TEXT_NAME, __scopeSelect);\n const itemContext = $cc7e05a45900e73f$var$useSelectItemContext($cc7e05a45900e73f$var$ITEM_TEXT_NAME, __scopeSelect);\n const nativeOptionsContext = $cc7e05a45900e73f$var$useSelectNativeOptionsContext($cc7e05a45900e73f$var$ITEM_TEXT_NAME, __scopeSelect);\n const [itemTextNode, setItemTextNode] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_9__.useComposedRefs)(forwardedRef, (node)=>setItemTextNode(node), itemContext.onItemTextChange, (node)=>{\n var _contentContext$itemT;\n return (_contentContext$itemT = contentContext.itemTextRefCallback) === null || _contentContext$itemT === void 0 ? void 0 : _contentContext$itemT.call(contentContext, node, itemContext.value, itemContext.disabled);\n });\n const textContent = itemTextNode === null || itemTextNode === void 0 ? void 0 : itemTextNode.textContent;\n const nativeOption = (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(()=>/*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(\"option\", {\n key: itemContext.value,\n value: itemContext.value,\n disabled: itemContext.disabled\n }, textContent), [\n itemContext.disabled,\n itemContext.value,\n textContent\n ]);\n const { onNativeOptionAdd: onNativeOptionAdd, onNativeOptionRemove: onNativeOptionRemove } = nativeOptionsContext;\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_12__.useLayoutEffect)(()=>{\n onNativeOptionAdd(nativeOption);\n return ()=>onNativeOptionRemove(nativeOption);\n }, [\n onNativeOptionAdd,\n onNativeOptionRemove,\n nativeOption\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_10__.Primitive.span, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n id: itemContext.textId\n }, itemTextProps, {\n ref: composedRefs\n })), itemContext.isSelected && context.valueNode && !context.valueNodeHasChildren ? /*#__PURE__*/ (0,react_dom__WEBPACK_IMPORTED_MODULE_2__.createPortal)(itemTextProps.children, context.valueNode) : null);\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$3572fb0fb821ff49, {\n displayName: $cc7e05a45900e73f$var$ITEM_TEXT_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectItemIndicator\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$ITEM_INDICATOR_NAME = \"SelectItemIndicator\";\nconst $cc7e05a45900e73f$export$6b9198de19accfe6 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeSelect: __scopeSelect, ...itemIndicatorProps } = props;\n const itemContext = $cc7e05a45900e73f$var$useSelectItemContext($cc7e05a45900e73f$var$ITEM_INDICATOR_NAME, __scopeSelect);\n return itemContext.isSelected ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_10__.Primitive.span, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"aria-hidden\": true\n }, itemIndicatorProps, {\n ref: forwardedRef\n })) : null;\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$6b9198de19accfe6, {\n displayName: $cc7e05a45900e73f$var$ITEM_INDICATOR_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectScrollUpButton\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$SCROLL_UP_BUTTON_NAME = \"SelectScrollUpButton\";\nconst $cc7e05a45900e73f$export$d8117927658af6d7 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const contentContext = $cc7e05a45900e73f$var$useSelectContentContext($cc7e05a45900e73f$var$SCROLL_UP_BUTTON_NAME, props.__scopeSelect);\n const viewportContext = $cc7e05a45900e73f$var$useSelectViewportContext($cc7e05a45900e73f$var$SCROLL_UP_BUTTON_NAME, props.__scopeSelect);\n const [canScrollUp1, setCanScrollUp] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_9__.useComposedRefs)(forwardedRef, viewportContext.onScrollButtonChange);\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_12__.useLayoutEffect)(()=>{\n if (contentContext.viewport && contentContext.isPositioned) {\n const viewport = contentContext.viewport;\n function handleScroll() {\n const canScrollUp = viewport.scrollTop > 0;\n setCanScrollUp(canScrollUp);\n }\n handleScroll();\n viewport.addEventListener(\"scroll\", handleScroll);\n return ()=>viewport.removeEventListener(\"scroll\", handleScroll);\n }\n }, [\n contentContext.viewport,\n contentContext.isPositioned\n ]);\n return canScrollUp1 ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$SelectScrollButtonImpl, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, props, {\n ref: composedRefs,\n onAutoScroll: ()=>{\n const { viewport: viewport, selectedItem: selectedItem } = contentContext;\n if (viewport && selectedItem) viewport.scrollTop = viewport.scrollTop - selectedItem.offsetHeight;\n }\n })) : null;\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$d8117927658af6d7, {\n displayName: $cc7e05a45900e73f$var$SCROLL_UP_BUTTON_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectScrollDownButton\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$SCROLL_DOWN_BUTTON_NAME = \"SelectScrollDownButton\";\nconst $cc7e05a45900e73f$export$ff951e476c12189 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const contentContext = $cc7e05a45900e73f$var$useSelectContentContext($cc7e05a45900e73f$var$SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);\n const viewportContext = $cc7e05a45900e73f$var$useSelectViewportContext($cc7e05a45900e73f$var$SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);\n const [canScrollDown1, setCanScrollDown] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_9__.useComposedRefs)(forwardedRef, viewportContext.onScrollButtonChange);\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_12__.useLayoutEffect)(()=>{\n if (contentContext.viewport && contentContext.isPositioned) {\n const viewport = contentContext.viewport;\n function handleScroll() {\n const maxScroll = viewport.scrollHeight - viewport.clientHeight; // we use Math.ceil here because if the UI is zoomed-in\n // `scrollTop` is not always reported as an integer\n const canScrollDown = Math.ceil(viewport.scrollTop) < maxScroll;\n setCanScrollDown(canScrollDown);\n }\n handleScroll();\n viewport.addEventListener(\"scroll\", handleScroll);\n return ()=>viewport.removeEventListener(\"scroll\", handleScroll);\n }\n }, [\n contentContext.viewport,\n contentContext.isPositioned\n ]);\n return canScrollDown1 ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cc7e05a45900e73f$var$SelectScrollButtonImpl, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, props, {\n ref: composedRefs,\n onAutoScroll: ()=>{\n const { viewport: viewport, selectedItem: selectedItem } = contentContext;\n if (viewport && selectedItem) viewport.scrollTop = viewport.scrollTop + selectedItem.offsetHeight;\n }\n })) : null;\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$ff951e476c12189, {\n displayName: $cc7e05a45900e73f$var$SCROLL_DOWN_BUTTON_NAME\n});\nconst $cc7e05a45900e73f$var$SelectScrollButtonImpl = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeSelect: __scopeSelect, onAutoScroll: onAutoScroll, ...scrollIndicatorProps } = props;\n const contentContext = $cc7e05a45900e73f$var$useSelectContentContext(\"SelectScrollButton\", __scopeSelect);\n const autoScrollTimerRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const getItems = $cc7e05a45900e73f$var$useCollection(__scopeSelect);\n const clearAutoScrollTimer = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(()=>{\n if (autoScrollTimerRef.current !== null) {\n window.clearInterval(autoScrollTimerRef.current);\n autoScrollTimerRef.current = null;\n }\n }, []);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n return ()=>clearAutoScrollTimer();\n }, [\n clearAutoScrollTimer\n ]); // When the viewport becomes scrollable on either side, the relevant scroll button will mount.\n // Because it is part of the normal flow, it will push down (top button) or shrink (bottom button)\n // the viewport, potentially causing the active item to now be partially out of view.\n // We re-run the `scrollIntoView` logic to make sure it stays within the viewport.\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_12__.useLayoutEffect)(()=>{\n var _activeItem$ref$curre;\n const activeItem = getItems().find((item)=>item.ref.current === document.activeElement);\n activeItem === null || activeItem === void 0 || (_activeItem$ref$curre = activeItem.ref.current) === null || _activeItem$ref$curre === void 0 || _activeItem$ref$curre.scrollIntoView({\n block: \"nearest\"\n });\n }, [\n getItems\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_10__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"aria-hidden\": true\n }, scrollIndicatorProps, {\n ref: forwardedRef,\n style: {\n flexShrink: 0,\n ...scrollIndicatorProps.style\n },\n onPointerDown: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(scrollIndicatorProps.onPointerDown, ()=>{\n if (autoScrollTimerRef.current === null) autoScrollTimerRef.current = window.setInterval(onAutoScroll, 50);\n }),\n onPointerMove: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(scrollIndicatorProps.onPointerMove, ()=>{\n var _contentContext$onIte3;\n (_contentContext$onIte3 = contentContext.onItemLeave) === null || _contentContext$onIte3 === void 0 || _contentContext$onIte3.call(contentContext);\n if (autoScrollTimerRef.current === null) autoScrollTimerRef.current = window.setInterval(onAutoScroll, 50);\n }),\n onPointerLeave: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_11__.composeEventHandlers)(scrollIndicatorProps.onPointerLeave, ()=>{\n clearAutoScrollTimer();\n })\n }));\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectSeparator\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$SEPARATOR_NAME = \"SelectSeparator\";\nconst $cc7e05a45900e73f$export$eba4b1df07cb1d3 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeSelect: __scopeSelect, ...separatorProps } = props;\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_10__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"aria-hidden\": true\n }, separatorProps, {\n ref: forwardedRef\n }));\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$eba4b1df07cb1d3, {\n displayName: $cc7e05a45900e73f$var$SEPARATOR_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * SelectArrow\n * -----------------------------------------------------------------------------------------------*/ const $cc7e05a45900e73f$var$ARROW_NAME = \"SelectArrow\";\nconst $cc7e05a45900e73f$export$314f4cb8f8099628 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeSelect: __scopeSelect, ...arrowProps } = props;\n const popperScope = $cc7e05a45900e73f$var$usePopperScope(__scopeSelect);\n const context = $cc7e05a45900e73f$var$useSelectContext($cc7e05a45900e73f$var$ARROW_NAME, __scopeSelect);\n const contentContext = $cc7e05a45900e73f$var$useSelectContentContext($cc7e05a45900e73f$var$ARROW_NAME, __scopeSelect);\n return context.open && contentContext.position === \"popper\" ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_popper__WEBPACK_IMPORTED_MODULE_5__.Arrow, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, popperScope, arrowProps, {\n ref: forwardedRef\n })) : null;\n});\n/*#__PURE__*/ Object.assign($cc7e05a45900e73f$export$314f4cb8f8099628, {\n displayName: $cc7e05a45900e73f$var$ARROW_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ function $cc7e05a45900e73f$var$shouldShowPlaceholder(value) {\n return value === \"\" || value === undefined;\n}\nconst $cc7e05a45900e73f$var$BubbleSelect = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { value: value, ...selectProps } = props;\n const ref = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_9__.useComposedRefs)(forwardedRef, ref);\n const prevValue = (0,_radix_ui_react_use_previous__WEBPACK_IMPORTED_MODULE_21__.usePrevious)(value); // Bubble value change to parents (e.g form change event)\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const select = ref.current;\n const selectProto = window.HTMLSelectElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(selectProto, \"value\");\n const setValue = descriptor.set;\n if (prevValue !== value && setValue) {\n const event = new Event(\"change\", {\n bubbles: true\n });\n setValue.call(select, value);\n select.dispatchEvent(event);\n }\n }, [\n prevValue,\n value\n ]);\n /**\n * We purposefully use a `select` here to support form autofill as much\n * as possible.\n *\n * We purposefully do not add the `value` attribute here to allow the value\n * to be set programatically and bubble to any parent form `onChange` event.\n * Adding the `value` will cause React to consider the programatic\n * dispatch a duplicate and it will get swallowed.\n *\n * We use `VisuallyHidden` rather than `display: \"none\"` because Safari autofill\n * won't work otherwise.\n */ return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_visually_hidden__WEBPACK_IMPORTED_MODULE_22__.VisuallyHidden, {\n asChild: true\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(\"select\", (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, selectProps, {\n ref: composedRefs,\n defaultValue: value\n })));\n});\n$cc7e05a45900e73f$var$BubbleSelect.displayName = \"BubbleSelect\";\nfunction $cc7e05a45900e73f$var$useTypeaheadSearch(onSearchChange) {\n const handleSearchChange = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_23__.useCallbackRef)(onSearchChange);\n const searchRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(\"\");\n const timerRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(0);\n const handleTypeaheadSearch = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)((key)=>{\n const search = searchRef.current + key;\n handleSearchChange(search);\n (function updateSearch(value) {\n searchRef.current = value;\n window.clearTimeout(timerRef.current); // Reset `searchRef` 1 second after it was last updated\n if (value !== \"\") timerRef.current = window.setTimeout(()=>updateSearch(\"\"), 1000);\n })(search);\n }, [\n handleSearchChange\n ]);\n const resetTypeahead = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(()=>{\n searchRef.current = \"\";\n window.clearTimeout(timerRef.current);\n }, []);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n return ()=>window.clearTimeout(timerRef.current);\n }, []);\n return [\n searchRef,\n handleTypeaheadSearch,\n resetTypeahead\n ];\n}\n/**\n * This is the \"meat\" of the typeahead matching logic. It takes in a list of items,\n * the search and the current item, and returns the next item (or `undefined`).\n *\n * We normalize the search because if a user has repeatedly pressed a character,\n * we want the exact same behavior as if we only had that one character\n * (ie. cycle through items starting with that character)\n *\n * We also reorder the items by wrapping the array around the current item.\n * This is so we always look forward from the current item, and picking the first\n * item will always be the correct one.\n *\n * Finally, if the normalized search is exactly one character, we exclude the\n * current item from the values because otherwise it would be the first to match always\n * and focus would never move. This is as opposed to the regular case, where we\n * don't want focus to move if the current item still matches.\n */ function $cc7e05a45900e73f$var$findNextItem(items, search, currentItem) {\n const isRepeated = search.length > 1 && Array.from(search).every((char)=>char === search[0]);\n const normalizedSearch = isRepeated ? search[0] : search;\n const currentItemIndex = currentItem ? items.indexOf(currentItem) : -1;\n let wrappedItems = $cc7e05a45900e73f$var$wrapArray(items, Math.max(currentItemIndex, 0));\n const excludeCurrentItem = normalizedSearch.length === 1;\n if (excludeCurrentItem) wrappedItems = wrappedItems.filter((v)=>v !== currentItem);\n const nextItem = wrappedItems.find((item)=>item.textValue.toLowerCase().startsWith(normalizedSearch.toLowerCase()));\n return nextItem !== currentItem ? nextItem : undefined;\n}\n/**\n * Wraps an array around itself at a given start index\n * Example: `wrapArray(['a', 'b', 'c', 'd'], 2) === ['c', 'd', 'a', 'b']`\n */ function $cc7e05a45900e73f$var$wrapArray(array, startIndex) {\n return array.map((_, index)=>array[(startIndex + index) % array.length]);\n}\nconst $cc7e05a45900e73f$export$be92b6f5f03c0fe9 = $cc7e05a45900e73f$export$ef9b1a59e592288f;\nconst $cc7e05a45900e73f$export$41fb9f06171c75f4 = $cc7e05a45900e73f$export$3ac1e88a1c0b9f1;\nconst $cc7e05a45900e73f$export$4c8d1a57a761ef94 = $cc7e05a45900e73f$export$e288731fd71264f0;\nconst $cc7e05a45900e73f$export$f04a61298a47a40f = $cc7e05a45900e73f$export$99b400cabb58c515;\nconst $cc7e05a45900e73f$export$602eac185826482c = $cc7e05a45900e73f$export$b2af6c9944296213;\nconst $cc7e05a45900e73f$export$7c6e2c02157bb7d2 = $cc7e05a45900e73f$export$c973a4b3cb86a03d;\nconst $cc7e05a45900e73f$export$d5c6c08dc2d3ca7 = $cc7e05a45900e73f$export$9ed6e7b40248d36d;\nconst $cc7e05a45900e73f$export$eb2fcfdbd7ba97d4 = $cc7e05a45900e73f$export$ee25a334c55de1f4;\nconst $cc7e05a45900e73f$export$b04be29aa201d4f5 = $cc7e05a45900e73f$export$f67338d29bd972f8;\nconst $cc7e05a45900e73f$export$6d08773d2e66f8f2 = $cc7e05a45900e73f$export$13ef48a934230896;\nconst $cc7e05a45900e73f$export$d6e5bf9c43ea9319 = $cc7e05a45900e73f$export$3572fb0fb821ff49;\nconst $cc7e05a45900e73f$export$c3468e2714d175fa = $cc7e05a45900e73f$export$6b9198de19accfe6;\nconst $cc7e05a45900e73f$export$2f60d3ec9ad468f2 = $cc7e05a45900e73f$export$d8117927658af6d7;\nconst $cc7e05a45900e73f$export$bf1aedc3039c8d63 = $cc7e05a45900e73f$export$ff951e476c12189;\nconst $cc7e05a45900e73f$export$1ff3c3f08ae963c0 = $cc7e05a45900e73f$export$eba4b1df07cb1d3;\nconst $cc7e05a45900e73f$export$21b07c8f274aebd5 = $cc7e05a45900e73f$export$314f4cb8f8099628;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXNlbGVjdC9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBc0Y7QUFDdUw7QUFDL007QUFDUDtBQUNpQztBQUNEO0FBQ0E7QUFDQztBQUNWO0FBQ2dCO0FBQ1Q7QUFDVDtBQUNuQjtBQUM0SDtBQUN0SDtBQUNTO0FBQ2Y7QUFDZ0M7QUFDa0I7QUFDZjtBQUNiO0FBQ1M7QUFDNUI7QUFDWTtBQTJCeEUsTUFBTXFFLGtDQUFrQztJQUNwQztJQUNBO0lBQ0E7SUFDQTtDQUNIO0FBQ0QsTUFBTUMsdUNBQXVDO0lBQ3pDO0lBQ0E7Q0FDSDtBQUNEOztrR0FFa0csR0FBRyxNQUFNQyxvQ0FBb0M7QUFDL0ksTUFBTSxDQUFDQyxrQ0FBa0NDLHFDQUFxQ0MsNENBQTRDLEdBQUdsRCw0RUFBdUJBLENBQUMrQztBQUNySixNQUFNLENBQUNJLDJDQUEyQ0MsMENBQTBDLEdBQUdoRCwyRUFBeUJBLENBQUMyQyxtQ0FBbUM7SUFDeEpHO0lBQ0FsQyxxRUFBd0JBO0NBQzNCO0FBQ0QsTUFBTXFDLHVDQUF1Q3JDLHlFQUF3QkE7QUFDckUsTUFBTSxDQUFDc0Msc0NBQXNDQyx1Q0FBdUMsR0FBR0osMENBQTBDSjtBQUNqSSxNQUFNLENBQUNTLG1EQUFtREMsb0RBQW9ELEdBQUdOLDBDQUEwQ0o7QUFDM0osTUFBTVcsNENBQTRDLENBQUNDO0lBQy9DLE1BQU0sRUFBRUMsZUFBZUEsYUFBYSxFQUFHQyxVQUFVQSxRQUFRLEVBQUdDLE1BQU1DLFFBQVEsRUFBR0MsYUFBYUEsV0FBVyxFQUFHQyxjQUFjQSxZQUFZLEVBQUdDLE9BQU9DLFNBQVMsRUFBR0MsY0FBY0EsWUFBWSxFQUFHQyxlQUFlQSxhQUFhLEVBQUdDLEtBQUtBLEdBQUcsRUFBR0MsTUFBTUEsSUFBSSxFQUFHQyxjQUFjQSxZQUFZLEVBQUdDLFVB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LElBQUlrVSxvQkFBb0JGLGVBQWVBLGFBQWFsVyxNQUFNLENBQUMsQ0FBQ3FXLElBQUlBLE1BQU1uVztJQUV0RSxNQUFNRSxXQUFXOFYsYUFBYS9WLElBQUksQ0FBQyxDQUFDRixPQUFPQSxLQUFLdVEsU0FBUyxDQUFDOEYsV0FBVyxHQUFHQyxVQUFVLENBQUNQLGlCQUFpQk0sV0FBVztJQUUvRyxPQUFPbFcsYUFBYUYsY0FBY0UsV0FBV3RCO0FBQ2pEO0FBQ0E7OztDQUdDLEdBQUcsU0FBU3FYLGdDQUFnQ0ssS0FBSyxFQUFFQyxVQUFVO0lBQzFELE9BQU9ELE1BQU05WSxHQUFHLENBQUMsQ0FBQ2daLEdBQUdDLFFBQVFILEtBQUssQ0FBQyxDQUFDQyxhQUFhRSxLQUFJLElBQUtILE1BQU10VSxNQUFNLENBQUM7QUFFM0U7QUFDQSxNQUFNMFUsNENBQTRDMWI7QUFDbEQsTUFBTTJiLDRDQUE0QzFYO0FBQ2xELE1BQU0yWCw0Q0FBNEN6VTtBQUNsRCxNQUFNMFUsNENBQTRDalU7QUFDbEQsTUFBTWtVLDRDQUE0Qy9UO0FBQ2xELE1BQU1nVSw0Q0FBNEM5VDtBQUNsRCxNQUFNK1QsMkNBQTJDMUk7QUFDakQsTUFBTTJJLDRDQUE0Q3RIO0FBQ2xELE1BQU11SCw0Q0FBNENuSDtBQUNsRCxNQUFNb0gsNENBQTRDOUc7QUFDbEQsTUFBTStHLDRDQUE0Q25GO0FBQ2xELE1BQU1vRiw0Q0FBNEMzRTtBQUNsRCxNQUFNNEUsNENBQTRDekU7QUFDbEQsTUFBTTBFLDRDQUE0Q2xFO0FBQ2xELE1BQU1tRSw0Q0FBNENuRDtBQUNsRCxNQUFNb0QsNENBQTRDakQ7QUFLOHpELENBQ2gzRCxrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9lbWJlZGNoYWluLWFkbWluLy4vbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC1zZWxlY3QvZGlzdC9pbmRleC5tanM/OGM0MiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJDAxYjljJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIGZyb20gXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9leHRlbmRzXCI7XG5pbXBvcnQge3VzZVN0YXRlIGFzICQwMWI5YyR1c2VTdGF0ZSwgdXNlUmVmIGFzICQwMWI5YyR1c2VSZWYsIGNyZWF0ZUVsZW1lbnQgYXMgJDAxYjljJGNyZWF0ZUVsZW1lbnQsIHVzZUNhbGxiYWNrIGFzICQwMWI5YyR1c2VDYWxsYmFjaywgZm9yd2FyZFJlZiBhcyAkMDFiOWMkZm9yd2FyZFJlZiwgRnJhZ21lbnQgYXMgJDAxYjljJEZyYWdtZW50LCB1c2VFZmZlY3QgYXMgJDAxYjljJHVzZUVmZmVjdCwgdXNlTWVtbyBhcyAkMDFiOWMkdXNlTWVtb30gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQge2NyZWF0ZVBvcnRhbCBhcyAkMDFiOWMkY3JlYXRlUG9ydGFsfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQge2NsYW1wIGFzICQwMWI5YyRjbGFtcH0gZnJvbSBcIkByYWRpeC11aS9udW1iZXJcIjtcbmltcG9ydCB7Y29tcG9zZUV2ZW50SGFuZGxlcnMgYXMgJDAxYjljJGNvbXBvc2VFdmVudEhhbmRsZXJzfSBmcm9tIFwiQHJhZGl4LXVpL3ByaW1pdGl2ZVwiO1xuaW1wb3J0IHtjcmVhdGVDb2xsZWN0aW9uIGFzICQwMWI5YyRjcmVhdGVDb2xsZWN0aW9ufSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LWNvbGxlY3Rpb25cIjtcbmltcG9ydCB7dXNlQ29tcG9zZWRSZWZzIGFzICQwMWI5YyR1c2VDb21wb3NlZFJlZnN9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtY29tcG9zZS1yZWZzXCI7XG5pbXBvcnQge2NyZWF0ZUNvbnRleHRTY29wZSBhcyAkMDFiOWMkY3JlYXRlQ29udGV4dFNjb3BlfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LWNvbnRleHRcIjtcbmltcG9ydCB7dXNlRGlyZWN0aW9uIGFzICQwMWI5YyR1c2VEaXJlY3Rpb259IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtZGlyZWN0aW9uXCI7XG5pbXBvcnQge0Rpc21pc3NhYmxlTGF5ZXIgYXMgJDAxYjljJERpc21pc3NhYmxlTGF5ZXJ9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtZGlzbWlzc2FibGUtbGF5ZXJcIjtcbmltcG9ydCB7dXNlRm9jdXNHdWFyZHMgYXMgJDAxYjljJHVzZUZvY3VzR3VhcmRzfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LWZvY3VzLWd1YXJkc1wiO1xuaW1wb3J0IHtGb2N1c1Njb3BlIGFzICQwMWI5YyRGb2N1c1Njb3BlfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LWZvY3VzLXNjb3BlXCI7XG5pbXBvcnQge3VzZUlkIGFzICQwMWI5YyR1c2VJZH0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1pZFwiO1xuaW1wb3J0IHtjcmVhdGVQb3BwZXJTY29wZSBhcyAkMDFiOWMkY3JlYXRlUG9wcGVyU2NvcGUsIFJvb3QgYXMgJDAxYjljJFJvb3QsIEFuY2hvciBhcyAkMDFiOWMkQW5jaG9yLCBDb250ZW50IGFzICQwMWI5YyRDb250ZW50LCBBcnJvdyBhcyAkMDFiOWMkQXJyb3d9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtcG9wcGVyXCI7XG5pbXBvcnQge1BvcnRhbCBhcyAkMDFiOWMkUG9ydGFsfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXBvcnRhbFwiO1xuaW1wb3J0IHtQcmltaXRpdmUgYXMgJDAxYjljJFByaW1pdGl2ZX0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1wcmltaXRpdmVcIjtcbmltcG9ydCB7U2xvdCBhcyAkMDFiOWMkU2xvdH0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1zbG90XCI7XG5pbXBvcnQge3VzZUNhbGxiYWNrUmVmIGFzICQwMWI5YyR1c2VDYWxsYmFja1JlZn0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC11c2UtY2FsbGJhY2stcmVmXCI7XG5pbXBvcnQge3VzZUNvbnRyb2xsYWJsZVN0YXRlIGFzICQwMWI5YyR1c2VDb250cm9sbGFibGVTdGF0ZX0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC11c2UtY29udHJvbGxhYmxlLXN0YXRlXCI7XG5pbXBvcnQge3VzZUxheW91dEVmZmVjdCBhcyAkMDFiOWMkdXNlTGF5b3V0RWZmZWN0fSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXVzZS1sYXlvdXQtZWZmZWN0XCI7XG5pbXBvcnQge3VzZVByZXZpb3VzIGFzICQwMWI5YyR1c2VQcmV2aW91c30gZnJvbSBcIkByYWRpeC11aS9yZWFjdC11c2UtcHJldmlvdXNcIjtcbmltcG9ydCB7VmlzdWFsbHlIaWRkZW4gYXMgJDAxYjljJFZpc3VhbGx5SGlkZGVufSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXZpc3VhbGx5LWhpZGRlblwiO1xuaW1wb3J0IHtoaWRlT3RoZXJzIGFzICQwMWI5YyRoaWRlT3RoZXJzfSBmcm9tIFwiYXJpYS1oaWRkZW5cIjtcbmltcG9ydCB7UmVtb3ZlU2Nyb2xsIGFzICQwMWI5YyRSZW1vdmVTY3JvbGx9IGZyb20gXCJyZWFjdC1yZW1vdmUtc2Nyb2xsXCI7XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJE9QRU5fS0VZUyA9IFtcbiAgICAnICcsXG4gICAgJ0VudGVyJyxcbiAgICAnQXJyb3dVcCcsXG4gICAgJ0Fycm93RG93bidcbl07XG5jb25zdCAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU0VMRUNUSU9OX0tFWVMgPSBbXG4gICAgJyAnLFxuICAgICdFbnRlcidcbl07XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBTZWxlY3RcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNFTEVDVF9OQU1FID0gJ1NlbGVjdCc7XG5jb25zdCBbJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENvbGxlY3Rpb24sICRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VDb2xsZWN0aW9uLCAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkY3JlYXRlQ29sbGVjdGlvblNjb3BlXSA9ICQwMWI5YyRjcmVhdGVDb2xsZWN0aW9uKCRjYzdlMDVhNDU5MDBlNzNmJHZhciRTRUxFQ1RfTkFNRSk7XG5jb25zdCBbJGNjN2UwNWE0NTkwMGU3M2YkdmFyJGNyZWF0ZVNlbGVjdENvbnRleHQsICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQyODY3MjdhNzVkYzAzOWJkXSA9ICQwMWI5YyRjcmVhdGVDb250ZXh0U2NvcGUoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNFTEVDVF9OQU1FLCBbXG4gICAgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJGNyZWF0ZUNvbGxlY3Rpb25TY29wZSxcbiAgICAkMDFiOWMkY3JlYXRlUG9wcGVyU2NvcGVcbl0pO1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVBvcHBlclNjb3BlID0gJDAxYjljJGNyZWF0ZVBvcHBlclNjb3BlKCk7XG5jb25zdCBbJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdFByb3ZpZGVyLCAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlU2VsZWN0Q29udGV4dF0gPSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkY3JlYXRlU2VsZWN0Q29udGV4dCgkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU0VMRUNUX05BTUUpO1xuY29uc3QgWyRjYzdlMDVhNDU5MDBlNzNmJHZhciRTZWxlY3ROYXRpdmVPcHRpb25zUHJvdmlkZXIsICRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VTZWxlY3ROYXRpdmVPcHRpb25zQ29udGV4dF0gPSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkY3JlYXRlU2VsZWN0Q29udGV4dCgkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU0VMRUNUX05BTUUpO1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGVmOWIxYTU5ZTU5MjI4OGYgPSAocHJvcHMpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlU2VsZWN0OiBfX3Njb3BlU2VsZWN0ICwgY2hpbGRyZW46IGNoaWxkcmVuICwgb3Blbjogb3BlblByb3AgLCBkZWZhdWx0T3BlbjogZGVmYXVsdE9wZW4gLCBvbk9wZW5DaGFuZ2U6IG9uT3BlbkNoYW5nZSAsIHZhbHVlOiB2YWx1ZVByb3AgLCBkZWZhdWx0VmFsdWU6IGRlZmF1bHRWYWx1ZSAsIG9uVmFsdWVDaGFuZ2U6IG9uVmFsdWVDaGFuZ2UgLCBkaXI6IGRpciAsIG5hbWU6IG5hbWUgLCBhdXRvQ29tcGxldGU6IGF1dG9Db21wbGV0ZSAsIGRpc2FibGVkOiBkaXNhYmxlZCAsIHJlcXVpcmVkOiByZXF1aXJlZCAgfSA9IHByb3BzO1xuICAgIGNvbnN0IHBvcHBlclNjb3BlID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVBvcHBlclNjb3BlKF9fc2NvcGVTZWxlY3QpO1xuICAgIGNvbnN0IFt0cmlnZ2VyLCBzZXRUcmlnZ2VyXSA9ICQwMWI5YyR1c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBbdmFsdWVOb2RlLCBzZXRWYWx1ZU5vZGVdID0gJDAxYjljJHVzZVN0YXRlKG51bGwpO1xuICAgIGNvbnN0IFt2YWx1ZU5vZGVIYXNDaGlsZHJlbiwgc2V0VmFsdWVOb2RlSGFzQ2hpbGRyZW5dID0gJDAxYjljJHVzZVN0YXRlKGZhbHNlKTtcbiAgICBjb25zdCBkaXJlY3Rpb24gPSAkMDFiOWMkdXNlRGlyZWN0aW9uKGRpcik7XG4gICAgY29uc3QgW29wZW4gPSBmYWxzZSwgc2V0T3Blbl0gPSAkMDFiOWMkdXNlQ29udHJvbGxhYmxlU3RhdGUoe1xuICAgICAgICBwcm9wOiBvcGVuUHJvcCxcbiAgICAgICAgZGVmYXVsdFByb3A6IGRlZmF1bHRPcGVuLFxuICAgICAgICBvbkNoYW5nZTogb25PcGVuQ2hhbmdlXG4gICAgfSk7XG4gICAgY29uc3QgW3ZhbHVlLCBzZXRWYWx1ZV0gPSAkMDFiOWMkdXNlQ29udHJvbGxhYmxlU3RhdGUoe1xuICAgICAgICBwcm9wOiB2YWx1ZVByb3AsXG4gICAgICAgIGRlZmF1bHRQcm9wOiBkZWZhdWx0VmFsdWUsXG4gICAgICAgIG9uQ2hhbmdlOiBvblZhbHVlQ2hhbmdlXG4gICAgfSk7XG4gICAgY29uc3QgdHJpZ2dlclBvaW50ZXJEb3duUG9zUmVmID0gJDAxYjljJHVzZVJlZihudWxsKTsgLy8gV2Ugc2V0IHRoaXMgdG8gdHJ1ZSBieSBkZWZhdWx0IHNvIHRoYXQgZXZlbnRzIGJ1YmJsZSB0byBmb3JtcyB3aXRob3V0IEpTIChTU1IpXG4gICAgY29uc3QgaXNGb3JtQ29udHJvbCA9IHRyaWdnZXIgPyBCb29sZWFuKHRyaWdnZXIuY2xvc2VzdCgnZm9ybScpKSA6IHRydWU7XG4gICAgY29uc3QgW25hdGl2ZU9wdGlvbnNTZXQsIHNldE5hdGl2ZU9wdGlvbnNTZXRdID0gJDAxYjljJHVzZVN0YXRlKG5ldyBTZXQoKSk7IC8vIFRoZSBuYXRpdmUgYHNlbGVjdGAgb25seSBhc3NvY2lhdGVzIHRoZSBjb3JyZWN0IGRlZmF1bHQgdmFsdWUgaWYgdGhlIGNvcnJlc3BvbmRpbmdcbiAgICAvLyBgb3B0aW9uYCBpcyByZW5kZXJlZCBhcyBhIGNoaWxkICoqYXQgdGhlIHNhbWUgdGltZSoqIGFzIGl0c2VsZi5cbiAgICAvLyBCZWNhdXNlIGl0IG1pZ2h0IHRha2UgYSBmZXcgcmVuZGVycyBmb3Igb3VyIGl0ZW1zIHRvIGdhdGhlciB0aGUgaW5mb3JtYXRpb24gdG8gYnVpbGRcbiAgICAvLyB0aGUgbmF0aXZlIGBvcHRpb25gKHMpLCB3ZSBnZW5lcmF0ZSBhIGtleSBvbiB0aGUgYHNlbGVjdGAgdG8gbWFrZSBzdXJlIFJlYWN0IHJlLWJ1aWxkcyBpdFxuICAgIC8vIGVhY2ggdGltZSB0aGUgb3B0aW9ucyBjaGFuZ2UuXG4gICAgY29uc3QgbmF0aXZlU2VsZWN0S2V5ID0gQXJyYXkuZnJvbShuYXRpdmVPcHRpb25zU2V0KS5tYXAoKG9wdGlvbik9Pm9wdGlvbi5wcm9wcy52YWx1ZVxuICAgICkuam9pbignOycpO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICQwMWI5YyRjcmVhdGVFbGVtZW50KCQwMWI5YyRSb290LCBwb3BwZXJTY29wZSwgLyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlRWxlbWVudCgkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0UHJvdmlkZXIsIHtcbiAgICAgICAgcmVxdWlyZWQ6IHJlcXVpcmVkLFxuICAgICAgICBzY29wZTogX19zY29wZVNlbGVjdCxcbiAgICAgICAgdHJpZ2dlcjogdHJpZ2dlcixcbiAgICAgICAgb25UcmlnZ2VyQ2hhbmdlOiBzZXRUcmlnZ2VyLFxuICAgICAgICB2YWx1ZU5vZGU6IHZhbHVlTm9kZSxcbiAgICAgICAgb25WYWx1ZU5vZGVDaGFuZ2U6IHNldFZhbHVlTm9kZSxcbiAgICAgICAgdmFsdWVOb2RlSGFzQ2hpbGRyZW46IHZhbHVlTm9kZUhhc0NoaWxkcmVuLFxuICAgICAgICBvblZhbHVlTm9kZUhhc0NoaWxkcmVuQ2hhbmdlOiBzZXRWYWx1ZU5vZGVIYXNDaGlsZHJlbixcbiAgICAgICAgY29udGVudElkOiAkMDFiOWMkdXNlSWQoKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlLFxuICAgICAgICBvblZhbHVlQ2hhbmdlOiBzZXRWYWx1ZSxcbiAgICAgICAgb3Blbjogb3BlbixcbiAgICAgICAgb25PcGVuQ2hhbmdlOiBzZXRPcGVuLFxuICAgICAgICBkaXI6IGRpcmVjdGlvbixcbiAgICAgICAgdHJpZ2dlclBvaW50ZXJEb3duUG9zUmVmOiB0cmlnZ2VyUG9pbnRlckRvd25Qb3NSZWYsXG4gICAgICAgIGRpc2FibGVkOiBkaXNhYmxlZFxuICAgIH0sIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENvbGxlY3Rpb24uUHJvdmlkZXIsIHtcbiAgICAgICAgc2NvcGU6IF9fc2NvcGVTZWxlY3RcbiAgICB9LCAvKiNfX1BVUkVfXyovICQwMWI5YyRjcmVhdGVFbGVtZW50KCRjYzdlMDVhNDU5MDBlNzNmJHZhciRTZWxlY3ROYXRpdmVPcHRpb25zUHJvdmlkZXIsIHtcbiAgICAgICAgc2NvcGU6IHByb3BzLl9fc2NvcGVTZWxlY3QsXG4gICAgICAgIG9uTmF0aXZlT3B0aW9uQWRkOiAkMDFiOWMkdXNlQ2FsbGJhY2soKG9wdGlvbik9PntcbiAgICAgICAgICAgIHNldE5hdGl2ZU9wdGlvbnNTZXQoKHByZXYpPT5uZXcgU2V0KHByZXYpLmFkZChvcHRpb24pXG4gICAgICAgICAgICApO1xuICAgICAgICB9LCBbXSksXG4gICAgICAgIG9uTmF0aXZlT3B0aW9uUmVtb3ZlOiAkMDFiOWMkdXNlQ2FsbGJhY2soKG9wdGlvbik9PntcbiAgICAgICAgICAgIHNldE5hdGl2ZU9wdGlvbnNTZXQoKHByZXYpPT57XG4gICAgICAgICAgICAgICAgY29uc3Qgb3B0aW9uc1NldCA9IG5ldyBTZXQocHJldik7XG4gICAgICAgICAgICAgICAgb3B0aW9uc1NldC5kZWxldGUob3B0aW9uKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gb3B0aW9uc1NldDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9LCBbXSlcbiAgICB9LCBjaGlsZHJlbikpLCBpc0Zvcm1Db250cm9sID8gLyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlRWxlbWVudCgkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkQnViYmxlU2VsZWN0LCB7XG4gICAgICAgIGtleTogbmF0aXZlU2VsZWN0S2V5LFxuICAgICAgICBcImFyaWEtaGlkZGVuXCI6IHRydWUsXG4gICAgICAgIHJlcXVpcmVkOiByZXF1aXJlZCxcbiAgICAgICAgdGFiSW5kZXg6IC0xLFxuICAgICAgICBuYW1lOiBuYW1lLFxuICAgICAgICBhdXRvQ29tcGxldGU6IGF1dG9Db21wbGV0ZSxcbiAgICAgICAgdmFsdWU6IHZhbHVlIC8vIGVuYWJsZSBmb3JtIGF1dG9maWxsXG4gICAgICAgICxcbiAgICAgICAgb25DaGFuZ2U6IChldmVudCk9PnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSlcbiAgICAgICAgLFxuICAgICAgICBkaXNhYmxlZDogZGlzYWJsZWRcbiAgICB9LCB2YWx1ZSA9PT0gdW5kZWZpbmVkID8gLyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlRWxlbWVudChcIm9wdGlvblwiLCB7XG4gICAgICAgIHZhbHVlOiBcIlwiXG4gICAgfSkgOiBudWxsLCBBcnJheS5mcm9tKG5hdGl2ZU9wdGlvbnNTZXQpKSA6IG51bGwpKTtcbn07XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGVmOWIxYTU5ZTU5MjI4OGYsIHtcbiAgICBkaXNwbGF5TmFtZTogJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNFTEVDVF9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFNlbGVjdFRyaWdnZXJcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFRSSUdHRVJfTkFNRSA9ICdTZWxlY3RUcmlnZ2VyJztcbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQzYWMxZTg4YTFjMGI5ZjEgPSAvKiNfX1BVUkVfXyovICQwMWI5YyRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgX19zY29wZVNlbGVjdDogX19zY29wZVNlbGVjdCAsIGRpc2FibGVkOiBkaXNhYmxlZCA9IGZhbHNlICwgLi4udHJpZ2dlclByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBwb3BwZXJTY29wZSA9ICRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VQb3BwZXJTY29wZShfX3Njb3BlU2VsZWN0KTtcbiAgICBjb25zdCBjb250ZXh0ID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdENvbnRleHQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFRSSUdHRVJfTkFNRSwgX19zY29wZVNlbGVjdCk7XG4gICAgY29uc3QgaXNEaXNhYmxlZCA9IGNvbnRleHQuZGlzYWJsZWQgfHwgZGlzYWJsZWQ7XG4gICAgY29uc3QgY29tcG9zZWRSZWZzID0gJDAxYjljJHVzZUNvbXBvc2VkUmVmcyhmb3J3YXJkZWRSZWYsIGNvbnRleHQub25UcmlnZ2VyQ2hhbmdlKTtcbiAgICBjb25zdCBnZXRJdGVtcyA9ICRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VDb2xsZWN0aW9uKF9fc2NvcGVTZWxlY3QpO1xuICAgIGNvbnN0IFtzZWFyY2hSZWYsIGhhbmRsZVR5cGVhaGVhZFNlYXJjaCwgcmVzZXRUeXBlYWhlYWRdID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVR5cGVhaGVhZFNlYXJjaCgoc2VhcmNoKT0+e1xuICAgICAgICBjb25zdCBlbmFibGVkSXRlbXMgPSBnZXRJdGVtcygpLmZpbHRlcigoaXRlbSk9PiFpdGVtLmRpc2FibGVkXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRJdGVtID0gZW5hYmxlZEl0ZW1zLmZpbmQoKGl0ZW0pPT5pdGVtLnZhbHVlID09PSBjb250ZXh0LnZhbHVlXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IG5leHRJdGVtID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJGZpbmROZXh0SXRlbShlbmFibGVkSXRlbXMsIHNlYXJjaCwgY3VycmVudEl0ZW0pO1xuICAgICAgICBpZiAobmV4dEl0ZW0gIT09IHVuZGVmaW5lZCkgY29udGV4dC5vblZhbHVlQ2hhbmdlKG5leHRJdGVtLnZhbHVlKTtcbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVPcGVuID0gKCk9PntcbiAgICAgICAgaWYgKCFpc0Rpc2FibGVkKSB7XG4gICAgICAgICAgICBjb250ZXh0Lm9uT3BlbkNoYW5nZSh0cnVlKTsgLy8gcmVzZXQgdHlwZWFoZWFkIHdoZW4gd2Ugb3BlblxuICAgICAgICAgICAgcmVzZXRUeXBlYWhlYWQoKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJDAxYjljJEFuY2hvciwgJDAxYjljJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHtcbiAgICAgICAgYXNDaGlsZDogdHJ1ZVxuICAgIH0sIHBvcHBlclNjb3BlKSwgLyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlRWxlbWVudCgkMDFiOWMkUHJpbWl0aXZlLmJ1dHRvbiwgJDAxYjljJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHtcbiAgICAgICAgdHlwZTogXCJidXR0b25cIixcbiAgICAgICAgcm9sZTogXCJjb21ib2JveFwiLFxuICAgICAgICBcImFyaWEtY29udHJvbHNcIjogY29udGV4dC5jb250ZW50SWQsXG4gICAgICAgIFwiYXJpYS1leHBhbmRlZFwiOiBjb250ZXh0Lm9wZW4sXG4gICAgICAgIFwiYXJpYS1yZXF1aXJlZFwiOiBjb250ZXh0LnJlcXVpcmVkLFxuICAgICAgICBcImFyaWEtYXV0b2NvbXBsZXRlXCI6IFwibm9uZVwiLFxuICAgICAgICBkaXI6IGNvbnRleHQuZGlyLFxuICAgICAgICBcImRhdGEtc3RhdGVcIjogY29udGV4dC5vcGVuID8gJ29wZW4nIDogJ2Nsb3NlZCcsXG4gICAgICAgIGRpc2FibGVkOiBpc0Rpc2FibGVkLFxuICAgICAgICBcImRhdGEtZGlzYWJsZWRcIjogaXNEaXNhYmxlZCA/ICcnIDogdW5kZWZpbmVkLFxuICAgICAgICBcImRhdGEtcGxhY2Vob2xkZXJcIjogJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHNob3VsZFNob3dQbGFjZWhvbGRlcihjb250ZXh0LnZhbHVlKSA/ICcnIDogdW5kZWZpbmVkXG4gICAgfSwgdHJpZ2dlclByb3BzLCB7XG4gICAgICAgIHJlZjogY29tcG9zZWRSZWZzIC8vIEVuYWJsZSBjb21wYXRpYmlsaXR5IHdpdGggbmF0aXZlIGxhYmVsIG9yIGN1c3RvbSBgTGFiZWxgIFwiY2xpY2tcIiBmb3IgU2FmYXJpOlxuICAgICAgICAsXG4gICAgICAgIG9uQ2xpY2s6ICQwMWI5YyRjb21wb3NlRXZlbnRIYW5kbGVycyh0cmlnZ2VyUHJvcHMub25DbGljaywgKGV2ZW50KT0+e1xuICAgICAgICAgICAgLy8gV2hpbHN0IGJyb3dzZXJzIGdlbmVyYWxseSBoYXZlIG5vIGlzc3VlIGZvY3VzaW5nIHRoZSB0cmlnZ2VyIHdoZW4gY2xpY2tpbmdcbiAgICAgICAgICAgIC8vIG9uIGEgbGFiZWwsIFNhZmFyaSBzZWVtcyB0byBzdHJ1Z2dsZSB3aXRoIHRoZSBmYWN0IHRoYXQgdGhlcmUncyBubyBgb25DbGlja2AuXG4gICAgICAgICAgICAvLyBXZSBmb3JjZSBgZm9jdXNgIGluIHRoaXMgY2FzZS4gTm90ZTogdGhpcyBkb2Vzbid0IGNyZWF0ZSBhbnkgb3RoZXIgc2lkZS1lZmZlY3RcbiAgICAgICAgICAgIC8vIGJlY2F1c2Ugd2UgYXJlIHByZXZlbnRpbmcgZGVmYXVsdCBpbiBgb25Qb2ludGVyRG93bmAgc28gZWZmZWN0aXZlbHlcbiAgICAgICAgICAgIC8vIHRoaXMgb25seSBydW5zIGZvciBhIGxhYmVsIFwiY2xpY2tcIlxuICAgICAgICAgICAgZXZlbnQuY3VycmVudFRhcmdldC5mb2N1cygpO1xuICAgICAgICB9KSxcbiAgICAgICAgb25Qb2ludGVyRG93bjogJDAxYjljJGNvbXBvc2VFdmVudEhhbmRsZXJzKHRyaWdnZXJQcm9wcy5vblBvaW50ZXJEb3duLCAoZXZlbnQpPT57XG4gICAgICAgICAgICAvLyBwcmV2ZW50IGltcGxpY2l0IHBvaW50ZXIgY2FwdHVyZVxuICAgICAgICAgICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL3BvaW50ZXJldmVudHMzLyNpbXBsaWNpdC1wb2ludGVyLWNhcHR1cmVcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldDtcbiAgICAgICAgICAgIGlmICh0YXJnZXQuaGFzUG9pbnRlckNhcHR1cmUoZXZlbnQucG9pbnRlcklkKSkgdGFyZ2V0LnJlbGVhc2VQb2ludGVyQ2FwdHVyZShldmVudC5wb2ludGVySWQpO1xuICAgICAgICAgICAgIC8vIG9ubHkgY2FsbCBoYW5kbGVyIGlmIGl0J3MgdGhlIGxlZnQgYnV0dG9uIChtb3VzZWRvd24gZ2V0cyB0cmlnZ2VyZWQgYnkgYWxsIG1vdXNlIGJ1dHRvbnMpXG4gICAgICAgICAgICAvLyBidXQgbm90IHdoZW4gdGhlIGNvbnRyb2wga2V5IGlzIHByZXNzZWQgKGF2b2lkaW5nIE1hY09TIHJpZ2h0IGNsaWNrKVxuICAgICAgICAgICAgaWYgKGV2ZW50LmJ1dHRvbiA9PT0gMCAmJiBldmVudC5jdHJsS2V5ID09PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIGhhbmRsZU9wZW4oKTtcbiAgICAgICAgICAgICAgICBjb250ZXh0LnRyaWdnZXJQb2ludGVyRG93blBvc1JlZi5jdXJyZW50ID0ge1xuICAgICAgICAgICAgICAgICAgICB4OiBNYXRoLnJvdW5kKGV2ZW50LnBhZ2VYKSxcbiAgICAgICAgICAgICAgICAgICAgeTogTWF0aC5yb3VuZChldmVudC5wYWdlWSlcbiAgICAgICAgICAgICAgICB9OyAvLyBwcmV2ZW50IHRyaWdnZXIgZnJvbSBzdGVhbGluZyBmb2N1cyBmcm9tIHRoZSBhY3RpdmUgaXRlbSBhZnRlciBvcGVuaW5nLlxuICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgICBvbktleURvd246ICQwMWI5YyRjb21wb3NlRXZlbnRIYW5kbGVycyh0cmlnZ2VyUHJvcHMub25LZXlEb3duLCAoZXZlbnQpPT57XG4gICAgICAgICAgICBjb25zdCBpc1R5cGluZ0FoZWFkID0gc2VhcmNoUmVmLmN1cnJlbnQgIT09ICcnO1xuICAgICAgICAgICAgY29uc3QgaXNNb2RpZmllcktleSA9IGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQuYWx0S2V5IHx8IGV2ZW50Lm1ldGFLZXk7XG4gICAgICAgICAgICBpZiAoIWlzTW9kaWZpZXJLZXkgJiYgZXZlbnQua2V5Lmxlbmd0aCA9PT0gMSkgaGFuZGxlVHlwZWFoZWFkU2VhcmNoKGV2ZW50LmtleSk7XG4gICAgICAgICAgICBpZiAoaXNUeXBpbmdBaGVhZCAmJiBldmVudC5rZXkgPT09ICcgJykgcmV0dXJuO1xuICAgICAgICAgICAgaWYgKCRjYzdlMDVhNDU5MDBlNzNmJHZhciRPUEVOX0tFWVMuaW5jbHVkZXMoZXZlbnQua2V5KSkge1xuICAgICAgICAgICAgICAgIGhhbmRsZU9wZW4oKTtcbiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH0pKSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkM2FjMWU4OGExYzBiOWYxLCB7XG4gICAgZGlzcGxheU5hbWU6ICRjYzdlMDVhNDU5MDBlNzNmJHZhciRUUklHR0VSX05BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogU2VsZWN0VmFsdWVcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFZBTFVFX05BTUUgPSAnU2VsZWN0VmFsdWUnO1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGUyODg3MzFmZDcxMjY0ZjAgPSAvKiNfX1BVUkVfXyovICQwMWI5YyRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIC8vIFdlIGlnbm9yZSBgY2xhc3NOYW1lYCBhbmQgYHN0eWxlYCBhcyB0aGlzIHBhcnQgc2hvdWxkbid0IGJlIHN0eWxlZC5cbiAgICBjb25zdCB7IF9fc2NvcGVTZWxlY3Q6IF9fc2NvcGVTZWxlY3QgLCBjbGFzc05hbWU6IGNsYXNzTmFtZSAsIHN0eWxlOiBzdHlsZSAsIGNoaWxkcmVuOiBjaGlsZHJlbiAsIHBsYWNlaG9sZGVyOiBwbGFjZWhvbGRlciA9ICcnICwgLi4udmFsdWVQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgY29udGV4dCA9ICRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VTZWxlY3RDb250ZXh0KCRjYzdlMDVhNDU5MDBlNzNmJHZhciRWQUxVRV9OQU1FLCBfX3Njb3BlU2VsZWN0KTtcbiAgICBjb25zdCB7IG9uVmFsdWVOb2RlSGFzQ2hpbGRyZW5DaGFuZ2U6IG9uVmFsdWVOb2RlSGFzQ2hpbGRyZW5DaGFuZ2UgIH0gPSBjb250ZXh0O1xuICAgIGNvbnN0IGhhc0NoaWxkcmVuID0gY2hpbGRyZW4gIT09IHVuZGVmaW5lZDtcbiAgICBjb25zdCBjb21wb3NlZFJlZnMgPSAkMDFiOWMkdXNlQ29tcG9zZWRSZWZzKGZvcndhcmRlZFJlZiwgY29udGV4dC5vblZhbHVlTm9kZUNoYW5nZSk7XG4gICAgJDAxYjljJHVzZUxheW91dEVmZmVjdCgoKT0+e1xuICAgICAgICBvblZhbHVlTm9kZUhhc0NoaWxkcmVuQ2hhbmdlKGhhc0NoaWxkcmVuKTtcbiAgICB9LCBbXG4gICAgICAgIG9uVmFsdWVOb2RlSGFzQ2hpbGRyZW5DaGFuZ2UsXG4gICAgICAgIGhhc0NoaWxkcmVuXG4gICAgXSk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJDAxYjljJFByaW1pdGl2ZS5zcGFuLCAkMDFiOWMkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIHZhbHVlUHJvcHMsIHtcbiAgICAgICAgcmVmOiBjb21wb3NlZFJlZnMgLy8gd2UgZG9uJ3Qgd2FudCBldmVudHMgZnJvbSB0aGUgcG9ydGFsbGVkIGBTZWxlY3RWYWx1ZWAgY2hpbGRyZW4gdG8gYnViYmxlXG4gICAgICAgICxcbiAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgIHBvaW50ZXJFdmVudHM6ICdub25lJ1xuICAgICAgICB9XG4gICAgfSksICRjYzdlMDVhNDU5MDBlNzNmJHZhciRzaG91bGRTaG93UGxhY2Vob2xkZXIoY29udGV4dC52YWx1ZSkgPyAvKiNfX1BVUkVfXyovICQwMWI5YyRjcmVhdGVFbGVtZW50KCQwMWI5YyRGcmFnbWVudCwgbnVsbCwgcGxhY2Vob2xkZXIpIDogY2hpbGRyZW4pO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGUyODg3MzFmZDcxMjY0ZjAsIHtcbiAgICBkaXNwbGF5TmFtZTogJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFZBTFVFX05BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogU2VsZWN0SWNvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkSUNPTl9OQU1FID0gJ1NlbGVjdEljb24nO1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDk5YjQwMGNhYmI1OGM1MTUgPSAvKiNfX1BVUkVfXyovICQwMWI5YyRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgX19zY29wZVNlbGVjdDogX19zY29wZVNlbGVjdCAsIGNoaWxkcmVuOiBjaGlsZHJlbiAsIC4uLmljb25Qcm9wcyB9ID0gcHJvcHM7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJDAxYjljJFByaW1pdGl2ZS5zcGFuLCAkMDFiOWMkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe1xuICAgICAgICBcImFyaWEtaGlkZGVuXCI6IHRydWVcbiAgICB9LCBpY29uUHJvcHMsIHtcbiAgICAgICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgICB9KSwgY2hpbGRyZW4gfHwgJ+KWvCcpO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDk5YjQwMGNhYmI1OGM1MTUsIHtcbiAgICBkaXNwbGF5TmFtZTogJGNjN2UwNWE0NTkwMGU3M2YkdmFyJElDT05fTkFNRVxufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBTZWxlY3RQb3J0YWxcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFBPUlRBTF9OQU1FID0gJ1NlbGVjdFBvcnRhbCc7XG5jb25zdCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkYjJhZjZjOTk0NDI5NjIxMyA9IChwcm9wcyk9PntcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlRWxlbWVudCgkMDFiOWMkUG9ydGFsLCAkMDFiOWMkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe1xuICAgICAgICBhc0NoaWxkOiB0cnVlXG4gICAgfSwgcHJvcHMpKTtcbn07XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGIyYWY2Yzk5NDQyOTYyMTMsIHtcbiAgICBkaXNwbGF5TmFtZTogJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFBPUlRBTF9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFNlbGVjdENvbnRlbnRcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENPTlRFTlRfTkFNRSA9ICdTZWxlY3RDb250ZW50JztcbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRjOTczYTRiM2NiODZhMDNkID0gLyojX19QVVJFX18qLyAkMDFiOWMkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICBjb25zdCBjb250ZXh0ID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdENvbnRleHQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENPTlRFTlRfTkFNRSwgcHJvcHMuX19zY29wZVNlbGVjdCk7XG4gICAgY29uc3QgW2ZyYWdtZW50LCBzZXRGcmFnbWVudF0gPSAkMDFiOWMkdXNlU3RhdGUoKTsgLy8gc2V0dGluZyB0aGUgZnJhZ21lbnQgaW4gYHVzZUxheW91dEVmZmVjdGAgYXMgYERvY3VtZW50RnJhZ21lbnRgIGRvZXNuJ3QgZXhpc3Qgb24gdGhlIHNlcnZlclxuICAgICQwMWI5YyR1c2VMYXlvdXRFZmZlY3QoKCk9PntcbiAgICAgICAgc2V0RnJhZ21lbnQobmV3IERvY3VtZW50RnJhZ21lbnQoKSk7XG4gICAgfSwgW10pO1xuICAgIGlmICghY29udGV4dC5vcGVuKSB7XG4gICAgICAgIGNvbnN0IGZyYWcgPSBmcmFnbWVudDtcbiAgICAgICAgcmV0dXJuIGZyYWcgPyAvKiNfX1BVUkVfXyovICQwMWI5YyRjcmVhdGVQb3J0YWwoLyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlRWxlbWVudCgkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0Q29udGVudFByb3ZpZGVyLCB7XG4gICAgICAgICAgICBzY29wZTogcHJvcHMuX19zY29wZVNlbGVjdFxuICAgICAgICB9LCAvKiNfX1BVUkVfXyovICQwMWI5YyRjcmVhdGVFbGVtZW50KCRjYzdlMDVhNDU5MDBlNzNmJHZhciRDb2xsZWN0aW9uLlNsb3QsIHtcbiAgICAgICAgICAgIHNjb3BlOiBwcm9wcy5fX3Njb3BlU2VsZWN0XG4gICAgICAgIH0sIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgbnVsbCwgcHJvcHMuY2hpbGRyZW4pKSksIGZyYWcpIDogbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdENvbnRlbnRJbXBsLCAkMDFiOWMkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIHByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gICAgfSkpO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGM5NzNhNGIzY2I4NmEwM2QsIHtcbiAgICBkaXNwbGF5TmFtZTogJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENPTlRFTlRfTkFNRVxufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBTZWxlY3RDb250ZW50SW1wbFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkQ09OVEVOVF9NQVJHSU4gPSAxMDtcbmNvbnN0IFskY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0Q29udGVudFByb3ZpZGVyLCAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlU2VsZWN0Q29udGVudENvbnRleHRdID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJGNyZWF0ZVNlbGVjdENvbnRleHQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENPTlRFTlRfTkFNRSk7XG5jb25zdCAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkQ09OVEVOVF9JTVBMX05BTUUgPSAnU2VsZWN0Q29udGVudEltcGwnO1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdENvbnRlbnRJbXBsID0gLyojX19QVVJFX18qLyAkMDFiOWMkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICBjb25zdCB7IF9fc2NvcGVTZWxlY3Q6IF9fc2NvcGVTZWxlY3QgLCBwb3NpdGlvbjogcG9zaXRpb24gPSAnaXRlbS1hbGlnbmVkJyAsIG9uQ2xvc2VBdXRvRm9jdXM6IG9uQ2xvc2VBdXRvRm9jdXMgLCBvbkVzY2FwZUtleURvd246IG9uRXNjYXBlS2V5RG93biAsIG9uUG9pbnRlckRvd25PdXRzaWRlOiBvblBvaW50ZXJEb3duT3V0c2lkZSAsIHNpZGU6IC8vXG4gICAgLy8gUG9wcGVyQ29udGVudCBwcm9wc1xuICAgIHNpZGUgLCBzaWRlT2Zmc2V0OiBzaWRlT2Zmc2V0ICwgYWxpZ246IGFsaWduICwgYWxpZ25PZmZzZXQ6IGFsaWduT2Zmc2V0ICwgYXJyb3dQYWRkaW5nOiBhcnJvd1BhZGRpbmcgLCBjb2xsaXNpb25Cb3VuZGFyeTogY29sbGlzaW9uQm91bmRhcnkgLCBjb2xsaXNpb25QYWRkaW5nOiBjb2xsaXNpb25QYWRkaW5nICwgc3RpY2t5OiBzdGlja3kgLCBoaWRlV2hlbkRldGFjaGVkOiBoaWRlV2hlbkRldGFjaGVkICwgYXZvaWRDb2xsaXNpb25zOiBhdm9pZENvbGxpc2lvbnMgLCAvL1xuICAgIC4uLmNvbnRlbnRQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgY29udGV4dCA9ICRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VTZWxlY3RDb250ZXh0KCRjYzdlMDVhNDU5MDBlNzNmJHZhciRDT05URU5UX05BTUUsIF9fc2NvcGVTZWxlY3QpO1xuICAgIGNvbnN0IFtjb250ZW50LCBzZXRDb250ZW50XSA9ICQwMWI5YyR1c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBbdmlld3BvcnQsIHNldFZpZXdwb3J0XSA9ICQwMWI5YyR1c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBjb21wb3NlZFJlZnMgPSAkMDFiOWMkdXNlQ29tcG9zZWRSZWZzKGZvcndhcmRlZFJlZiwgKG5vZGUpPT5zZXRDb250ZW50KG5vZGUpXG4gICAgKTtcbiAgICBjb25zdCBbc2VsZWN0ZWRJdGVtLCBzZXRTZWxlY3RlZEl0ZW1dID0gJDAxYjljJHVzZVN0YXRlKG51bGwpO1xuICAgIGNvbnN0IFtzZWxlY3RlZEl0ZW1UZXh0LCBzZXRTZWxlY3RlZEl0ZW1UZXh0XSA9ICQwMWI5YyR1c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBnZXRJdGVtcyA9ICRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VDb2xsZWN0aW9uKF9fc2NvcGVTZWxlY3QpO1xuICAgIGNvbnN0IFtpc1Bvc2l0aW9uZWQsIHNldElzUG9zaXRpb25lZF0gPSAkMDFiOWMkdXNlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IGZpcnN0VmFsaWRJdGVtRm91bmRSZWYgPSAkMDFiOWMkdXNlUmVmKGZhbHNlKTsgLy8gYXJpYS1oaWRlIGV2ZXJ5dGhpbmcgZXhjZXB0IHRoZSBjb250ZW50IChiZXR0ZXIgc3VwcG9ydGVkIGVxdWl2YWxlbnQgdG8gc2V0dGluZyBhcmlhLW1vZGFsKVxuICAgICQwMWI5YyR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgaWYgKGNvbnRlbnQpIHJldHVybiAkMDFiOWMkaGlkZU90aGVycyhjb250ZW50KTtcbiAgICB9LCBbXG4gICAgICAgIGNvbnRlbnRcbiAgICBdKTsgLy8gTWFrZSBzdXJlIHRoZSB3aG9sZSB0cmVlIGhhcyBmb2N1cyBndWFyZHMgYXMgb3VyIGBTZWxlY3RgIG1heSBiZVxuICAgIC8vIHRoZSBsYXN0IGVsZW1lbnQgaW4gdGhlIERPTSAoYmVjYXVzZSBvZiB0aGUgYFBvcnRhbGApXG4gICAgJDAxYjljJHVzZUZvY3VzR3VhcmRzKCk7XG4gICAgY29uc3QgZm9jdXNGaXJzdCA9ICQwMWI5YyR1c2VDYWxsYmFjaygoY2FuZGlkYXRlcyk9PntcbiAgICAgICAgY29uc3QgW2ZpcnN0SXRlbSwgLi4ucmVzdEl0ZW1zXSA9IGdldEl0ZW1zKCkubWFwKChpdGVtKT0+aXRlbS5yZWYuY3VycmVudFxuICAgICAgICApO1xuICAgICAgICBjb25zdCBbbGFzdEl0ZW1dID0gcmVzdEl0ZW1zLnNsaWNlKC0xKTtcbiAgICAgICAgY29uc3QgUFJFVklPVVNMWV9GT0NVU0VEX0VMRU1FTlQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50O1xuICAgICAgICBmb3IgKGNvbnN0IGNhbmRpZGF0ZSBvZiBjYW5kaWRhdGVzKXtcbiAgICAgICAgICAgIC8vIGlmIGZvY3VzIGlzIGFscmVhZHkgd2hlcmUgd2Ugd2FudCB0byBnbywgd2UgZG9uJ3Qgd2FudCB0byBrZWVwIGdvaW5nIHRocm91Z2ggdGhlIGNhbmRpZGF0ZXNcbiAgICAgICAgICAgIGlmIChjYW5kaWRhdGUgPT09IFBSRVZJT1VTTFlfRk9DVVNFRF9FTEVNRU5UKSByZXR1cm47XG4gICAgICAgICAgICBjYW5kaWRhdGUgPT09IG51bGwgfHwgY2FuZGlkYXRlID09PSB2b2lkIDAgfHwgY2FuZGlkYXRlLnNjcm9sbEludG9WaWV3KHtcbiAgICAgICAgICAgICAgICBibG9jazogJ25lYXJlc3QnXG4gICAgICAgICAgICB9KTsgLy8gdmlld3BvcnQgbWlnaHQgaGF2ZSBwYWRkaW5nIHNvIHNjcm9sbCB0byBpdHMgZWRnZXMgd2hlbiBmb2N1c2luZyBmaXJzdC9sYXN0IGl0ZW1zLlxuICAgICAgICAgICAgaWYgKGNhbmRpZGF0ZSA9PT0gZmlyc3RJdGVtICYmIHZpZXdwb3J0KSB2aWV3cG9ydC5zY3JvbGxUb3AgPSAwO1xuICAgICAgICAgICAgaWYgKGNhbmRpZGF0ZSA9PT0gbGFzdEl0ZW0gJiYgdmlld3BvcnQpIHZpZXdwb3J0LnNjcm9sbFRvcCA9IHZpZXdwb3J0LnNjcm9sbEhlaWdodDtcbiAgICAgICAgICAgIGNhbmRpZGF0ZSA9PT0gbnVsbCB8fCBjYW5kaWRhdGUgPT09IHZvaWQgMCB8fCBjYW5kaWRhdGUuZm9jdXMoKTtcbiAgICAgICAgICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ICE9PSBQUkVWSU9VU0xZX0ZPQ1VTRURfRUxFTUVOVCkgcmV0dXJuO1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBnZXRJdGVtcyxcbiAgICAgICAgdmlld3BvcnRcbiAgICBdKTtcbiAgICBjb25zdCBmb2N1c1NlbGVjdGVkSXRlbSA9ICQwMWI5YyR1c2VDYWxsYmFjaygoKT0+Zm9jdXNGaXJzdChbXG4gICAgICAgICAgICBzZWxlY3RlZEl0ZW0sXG4gICAgICAgICAgICBjb250ZW50XG4gICAgICAgIF0pXG4gICAgLCBbXG4gICAgICAgIGZvY3VzRmlyc3QsXG4gICAgICAgIHNlbGVjdGVkSXRlbSxcbiAgICAgICAgY29udGVudFxuICAgIF0pOyAvLyBTaW5jZSB0aGlzIGlzIG5vdCBkZXBlbmRlbnQgb24gbGF5b3V0LCB3ZSB3YW50IHRvIGVuc3VyZSB0aGlzIHJ1bnMgYXQgdGhlIHNhbWUgdGltZSBhc1xuICAgIC8vIG90aGVyIGVmZmVjdHMgYWNyb3NzIGNvbXBvbmVudHMuIEhlbmNlIHdoeSB3ZSBkb24ndCBjYWxsIGBmb2N1c1NlbGVjdGVkSXRlbWAgaW5zaWRlIGBwb3NpdGlvbmAuXG4gICAgJDAxYjljJHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBpZiAoaXNQb3NpdGlvbmVkKSBmb2N1c1NlbGVjdGVkSXRlbSgpO1xuICAgIH0sIFtcbiAgICAgICAgaXNQb3NpdGlvbmVkLFxuICAgICAgICBmb2N1c1NlbGVjdGVkSXRlbVxuICAgIF0pOyAvLyBwcmV2ZW50IHNlbGVjdGluZyBpdGVtcyBvbiBgcG9pbnRlcnVwYCBpbiBzb21lIGNhc2VzIGFmdGVyIG9wZW5pbmcgZnJvbSBgcG9pbnRlcmRvd25gXG4gICAgLy8gYW5kIGNsb3NlIG9uIGBwb2ludGVydXBgIG91dHNpZGUuXG4gICAgY29uc3QgeyBvbk9wZW5DaGFuZ2U6IG9uT3BlbkNoYW5nZSAsIHRyaWdnZXJQb2ludGVyRG93blBvc1JlZjogdHJpZ2dlclBvaW50ZXJEb3duUG9zUmVmICB9ID0gY29udGV4dDtcbiAgICAkMDFiOWMkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGlmIChjb250ZW50KSB7XG4gICAgICAgICAgICBsZXQgcG9pbnRlck1vdmVEZWx0YSA9IHtcbiAgICAgICAgICAgICAgICB4OiAwLFxuICAgICAgICAgICAgICAgIHk6IDBcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBjb25zdCBoYW5kbGVQb2ludGVyTW92ZSA9IChldmVudCk9PntcbiAgICAgICAgICAgICAgICB2YXIgX3RyaWdnZXJQb2ludGVyRG93blBvLCBfdHJpZ2dlclBvaW50ZXJEb3duUG8yLCBfdHJpZ2dlclBvaW50ZXJEb3duUG8zLCBfdHJpZ2dlclBvaW50ZXJEb3duUG80O1xuICAgICAgICAgICAgICAgIHBvaW50ZXJNb3ZlRGVsdGEgPSB7XG4gICAgICAgICAgICAgICAgICAgIHg6IE1hdGguYWJzKE1hdGgucm91bmQoZXZlbnQucGFnZVgpIC0gKChfdHJpZ2dlclBvaW50ZXJEb3duUG8gPSAoX3RyaWdnZXJQb2ludGVyRG93blBvMiA9IHRyaWdnZXJQb2ludGVyRG93blBvc1JlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfdHJpZ2dlclBvaW50ZXJEb3duUG8yID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfdHJpZ2dlclBvaW50ZXJEb3duUG8yLngpICE9PSBudWxsICYmIF90cmlnZ2VyUG9pbnRlckRvd25QbyAhPT0gdm9pZCAwID8gX3RyaWdnZXJQb2ludGVyRG93blBvIDogMCkpLFxuICAgICAgICAgICAgICAgICAgICB5OiBNYXRoLmFicyhNYXRoLnJvdW5kKGV2ZW50LnBhZ2VZKSAtICgoX3RyaWdnZXJQb2ludGVyRG93blBvMyA9IChfdHJpZ2dlclBvaW50ZXJEb3duUG80ID0gdHJpZ2dlclBvaW50ZXJEb3duUG9zUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF90cmlnZ2VyUG9pbnRlckRvd25QbzQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF90cmlnZ2VyUG9pbnRlckRvd25QbzQueSkgIT09IG51bGwgJiYgX3RyaWdnZXJQb2ludGVyRG93blBvMyAhPT0gdm9pZCAwID8gX3RyaWdnZXJQb2ludGVyRG93blBvMyA6IDApKVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgY29uc3QgaGFuZGxlUG9pbnRlclVwID0gKGV2ZW50KT0+e1xuICAgICAgICAgICAgICAgIC8vIElmIHRoZSBwb2ludGVyIGhhc24ndCBtb3ZlZCBieSBhIGNlcnRhaW4gdGhyZXNob2xkIHRoZW4gd2UgcHJldmVudCBzZWxlY3RpbmcgaXRlbSBvbiBgcG9pbnRlcnVwYC5cbiAgICAgICAgICAgICAgICBpZiAocG9pbnRlck1vdmVEZWx0YS54IDw9IDEwICYmIHBvaW50ZXJNb3ZlRGVsdGEueSA8PSAxMCkgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICBlbHNlIC8vIG90aGVyd2lzZSwgaWYgdGhlIGV2ZW50IHdhcyBvdXRzaWRlIHRoZSBjb250ZW50LCBjbG9zZS5cbiAgICAgICAgICAgICAgICBpZiAoIWNvbnRlbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSkgb25PcGVuQ2hhbmdlKGZhbHNlKTtcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdwb2ludGVybW92ZScsIGhhbmRsZVBvaW50ZXJNb3ZlKTtcbiAgICAgICAgICAgICAgICB0cmlnZ2VyUG9pbnRlckRvd25Qb3NSZWYuY3VycmVudCA9IG51bGw7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgaWYgKHRyaWdnZXJQb2ludGVyRG93blBvc1JlZi5jdXJyZW50ICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcm1vdmUnLCBoYW5kbGVQb2ludGVyTW92ZSk7XG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcnVwJywgaGFuZGxlUG9pbnRlclVwLCB7XG4gICAgICAgICAgICAgICAgICAgIGNhcHR1cmU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIG9uY2U6IHRydWVcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJtb3ZlJywgaGFuZGxlUG9pbnRlck1vdmUpO1xuICAgICAgICAgICAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJ1cCcsIGhhbmRsZVBvaW50ZXJVcCwge1xuICAgICAgICAgICAgICAgICAgICBjYXB0dXJlOiB0cnVlXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBjb250ZW50LFxuICAgICAgICBvbk9wZW5DaGFuZ2UsXG4gICAgICAgIHRyaWdnZXJQb2ludGVyRG93blBvc1JlZlxuICAgIF0pO1xuICAgICQwMWI5YyR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgY29uc3QgY2xvc2UgPSAoKT0+b25PcGVuQ2hhbmdlKGZhbHNlKVxuICAgICAgICA7XG4gICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdibHVyJywgY2xvc2UpO1xuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgY2xvc2UpO1xuICAgICAgICByZXR1cm4gKCk9PntcbiAgICAgICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdibHVyJywgY2xvc2UpO1xuICAgICAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIGNsb3NlKTtcbiAgICAgICAgfTtcbiAgICB9LCBbXG4gICAgICAgIG9uT3BlbkNoYW5nZVxuICAgIF0pO1xuICAgIGNvbnN0IFtzZWFyY2hSZWYsIGhhbmRsZVR5cGVhaGVhZFNlYXJjaF0gPSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlVHlwZWFoZWFkU2VhcmNoKChzZWFyY2gpPT57XG4gICAgICAgIGNvbnN0IGVuYWJsZWRJdGVtcyA9IGdldEl0ZW1zKCkuZmlsdGVyKChpdGVtKT0+IWl0ZW0uZGlzYWJsZWRcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgY3VycmVudEl0ZW0gPSBlbmFibGVkSXRlbXMuZmluZCgoaXRlbSk9Pml0ZW0ucmVmLmN1cnJlbnQgPT09IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnRcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgbmV4dEl0ZW0gPSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkZmluZE5leHRJdGVtKGVuYWJsZWRJdGVtcywgc2VhcmNoLCBjdXJyZW50SXRlbSk7XG4gICAgICAgIGlmIChuZXh0SXRlbSkgLyoqXG4gICAgICAgKiBJbXBlcmF0aXZlIGZvY3VzIGR1cmluZyBrZXlkb3duIGlzIHJpc2t5IHNvIHdlIHByZXZlbnQgUmVhY3QncyBiYXRjaGluZyB1cGRhdGVzXG4gICAgICAgKiB0byBhdm9pZCBwb3RlbnRpYWwgYnVncy4gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svcmVhY3QvaXNzdWVzLzIwMzMyXG4gICAgICAgKi8gc2V0VGltZW91dCgoKT0+bmV4dEl0ZW0ucmVmLmN1cnJlbnQuZm9jdXMoKVxuICAgICAgICApO1xuICAgIH0pO1xuICAgIGNvbnN0IGl0ZW1SZWZDYWxsYmFjayA9ICQwMWI5YyR1c2VDYWxsYmFjaygobm9kZSwgdmFsdWUsIGRpc2FibGVkKT0+e1xuICAgICAgICBjb25zdCBpc0ZpcnN0VmFsaWRJdGVtID0gIWZpcnN0VmFsaWRJdGVtRm91bmRSZWYuY3VycmVudCAmJiAhZGlzYWJsZWQ7XG4gICAgICAgIGNvbnN0IGlzU2VsZWN0ZWRJdGVtID0gY29udGV4dC52YWx1ZSAhPT0gdW5kZWZpbmVkICYmIGNvbnRleHQudmFsdWUgPT09IHZhbHVlO1xuICAgICAgICBpZiAoaXNTZWxlY3RlZEl0ZW0gfHwgaXNGaXJzdFZhbGlkSXRlbSkge1xuICAgICAgICAgICAgc2V0U2VsZWN0ZWRJdGVtKG5vZGUpO1xuICAgICAgICAgICAgaWYgKGlzRmlyc3RWYWxpZEl0ZW0pIGZpcnN0VmFsaWRJdGVtRm91bmRSZWYuY3VycmVudCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9LCBbXG4gICAgICAgIGNvbnRleHQudmFsdWVcbiAgICBdKTtcbiAgICBjb25zdCBoYW5kbGVJdGVtTGVhdmUgPSAkMDFiOWMkdXNlQ2FsbGJhY2soKCk9PmNvbnRlbnQgPT09IG51bGwgfHwgY29udGVudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogY29udGVudC5mb2N1cygpXG4gICAgLCBbXG4gICAgICAgIGNvbnRlbnRcbiAgICBdKTtcbiAgICBjb25zdCBpdGVtVGV4dFJlZkNhbGxiYWNrID0gJDAxYjljJHVzZUNhbGxiYWNrKChub2RlLCB2YWx1ZSwgZGlzYWJsZWQpPT57XG4gICAgICAgIGNvbnN0IGlzRmlyc3RWYWxpZEl0ZW0gPSAhZmlyc3RWYWxpZEl0ZW1Gb3VuZFJlZi5jdXJyZW50ICYmICFkaXNhYmxlZDtcbiAgICAgICAgY29uc3QgaXNTZWxlY3RlZEl0ZW0gPSBjb250ZXh0LnZhbHVlICE9PSB1bmRlZmluZWQgJiYgY29udGV4dC52YWx1ZSA9PT0gdmFsdWU7XG4gICAgICAgIGlmIChpc1NlbGVjdGVkSXRlbSB8fCBpc0ZpcnN0VmFsaWRJdGVtKSBzZXRTZWxlY3RlZEl0ZW1UZXh0KG5vZGUpO1xuICAgIH0sIFtcbiAgICAgICAgY29udGV4dC52YWx1ZVxuICAgIF0pO1xuICAgIGNvbnN0IFNlbGVjdFBvc2l0aW9uID0gcG9zaXRpb24gPT09ICdwb3BwZXInID8gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdFBvcHBlclBvc2l0aW9uIDogJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdEl0ZW1BbGlnbmVkUG9zaXRpb247IC8vIFNpbGVudGx5IGlnbm9yZSBwcm9wcyB0aGF0IGFyZSBub3Qgc3VwcG9ydGVkIGJ5IGBTZWxlY3RJdGVtQWxpZ25lZFBvc2l0aW9uYFxuICAgIGNvbnN0IHBvcHBlckNvbnRlbnRQcm9wcyA9IFNlbGVjdFBvc2l0aW9uID09PSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0UG9wcGVyUG9zaXRpb24gPyB7XG4gICAgICAgIHNpZGU6IHNpZGUsXG4gICAgICAgIHNpZGVPZmZzZXQ6IHNpZGVPZmZzZXQsXG4gICAgICAgIGFsaWduOiBhbGlnbixcbiAgICAgICAgYWxpZ25PZmZzZXQ6IGFsaWduT2Zmc2V0LFxuICAgICAgICBhcnJvd1BhZGRpbmc6IGFycm93UGFkZGluZyxcbiAgICAgICAgY29sbGlzaW9uQm91bmRhcnk6IGNvbGxpc2lvbkJvdW5kYXJ5LFxuICAgICAgICBjb2xsaXNpb25QYWRkaW5nOiBjb2xsaXNpb25QYWRkaW5nLFxuICAgICAgICBzdGlja3k6IHN0aWNreSxcbiAgICAgICAgaGlkZVdoZW5EZXRhY2hlZDogaGlkZVdoZW5EZXRhY2hlZCxcbiAgICAgICAgYXZvaWRDb2xsaXNpb25zOiBhdm9pZENvbGxpc2lvbnNcbiAgICB9IDoge307XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdENvbnRlbnRQcm92aWRlciwge1xuICAgICAgICBzY29wZTogX19zY29wZVNlbGVjdCxcbiAgICAgICAgY29udGVudDogY29udGVudCxcbiAgICAgICAgdmlld3BvcnQ6IHZpZXdwb3J0LFxuICAgICAgICBvblZpZXdwb3J0Q2hhbmdlOiBzZXRWaWV3cG9ydCxcbiAgICAgICAgaXRlbVJlZkNhbGxiYWNrOiBpdGVtUmVmQ2FsbGJhY2ssXG4gICAgICAgIHNlbGVjdGVkSXRlbTogc2VsZWN0ZWRJdGVtLFxuICAgICAgICBvbkl0ZW1MZWF2ZTogaGFuZGxlSXRlbUxlYXZlLFxuICAgICAgICBpdGVtVGV4dFJlZkNhbGxiYWNrOiBpdGVtVGV4dFJlZkNhbGxiYWNrLFxuICAgICAgICBmb2N1c1NlbGVjdGVkSXRlbTogZm9jdXNTZWxlY3RlZEl0ZW0sXG4gICAgICAgIHNlbGVjdGVkSXRlbVRleHQ6IHNlbGVjdGVkSXRlbVRleHQsXG4gICAgICAgIHBvc2l0aW9uOiBwb3NpdGlvbixcbiAgICAgICAgaXNQb3NpdGlvbmVkOiBpc1Bvc2l0aW9uZWQsXG4gICAgICAgIHNlYXJjaFJlZjogc2VhcmNoUmVmXG4gICAgfSwgLyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlRWxlbWVudCgkMDFiOWMkUmVtb3ZlU2Nyb2xsLCB7XG4gICAgICAgIGFzOiAkMDFiOWMkU2xvdCxcbiAgICAgICAgYWxsb3dQaW5jaFpvb206IHRydWVcbiAgICB9LCAvKiNfX1BVUkVfXyovICQwMWI5YyRjcmVhdGVFbGVtZW50KCQwMWI5YyRGb2N1c1Njb3BlLCB7XG4gICAgICAgIGFzQ2hpbGQ6IHRydWUgLy8gd2UgbWFrZSBzdXJlIHdlJ3JlIG5vdCB0cmFwcGluZyBvbmNlIGl0J3MgYmVlbiBjbG9zZWRcbiAgICAgICAgLFxuICAgICAgICB0cmFwcGVkOiBjb250ZXh0Lm9wZW4sXG4gICAgICAgIG9uTW91bnRBdXRvRm9jdXM6IChldmVudCk9PntcbiAgICAgICAgICAgIC8vIHdlIHByZXZlbnQgb3BlbiBhdXRvZm9jdXMgYmVjYXVzZSB3ZSBtYW51YWxseSBmb2N1cyB0aGUgc2VsZWN0ZWQgaXRlbVxuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfSxcbiAgICAgICAgb25Vbm1vdW50QXV0b0ZvY3VzOiAkMDFiOWMkY29tcG9zZUV2ZW50SGFuZGxlcnMob25DbG9zZUF1dG9Gb2N1cywgKGV2ZW50KT0+e1xuICAgICAgICAgICAgdmFyIF9jb250ZXh0JHRyaWdnZXI7XG4gICAgICAgICAgICAoX2NvbnRleHQkdHJpZ2dlciA9IGNvbnRleHQudHJpZ2dlcikgPT09IG51bGwgfHwgX2NvbnRleHQkdHJpZ2dlciA9PT0gdm9pZCAwIHx8IF9jb250ZXh0JHRyaWdnZXIuZm9jdXMoe1xuICAgICAgICAgICAgICAgIHByZXZlbnRTY3JvbGw6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfSlcbiAgICB9LCAvKiNfX1BVUkVfXyovICQwMWI5YyRjcmVhdGVFbGVtZW50KCQwMWI5YyREaXNtaXNzYWJsZUxheWVyLCB7XG4gICAgICAgIGFzQ2hpbGQ6IHRydWUsXG4gICAgICAgIGRpc2FibGVPdXRzaWRlUG9pbnRlckV2ZW50czogdHJ1ZSxcbiAgICAgICAgb25Fc2NhcGVLZXlEb3duOiBvbkVzY2FwZUtleURvd24sXG4gICAgICAgIG9uUG9pbnRlckRvd25PdXRzaWRlOiBvblBvaW50ZXJEb3duT3V0c2lkZSAvLyBXaGVuIGZvY3VzIGlzIHRyYXBwZWQsIGEgZm9jdXNvdXQgZXZlbnQgbWF5IHN0aWxsIGhhcHBlbi5cbiAgICAgICAgLFxuICAgICAgICBvbkZvY3VzT3V0c2lkZTogKGV2ZW50KT0+ZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAsXG4gICAgICAgIG9uRGlzbWlzczogKCk9PmNvbnRleHQub25PcGVuQ2hhbmdlKGZhbHNlKVxuICAgIH0sIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoU2VsZWN0UG9zaXRpb24sICQwMWI5YyRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7XG4gICAgICAgIHJvbGU6IFwibGlzdGJveFwiLFxuICAgICAgICBpZDogY29udGV4dC5jb250ZW50SWQsXG4gICAgICAgIFwiZGF0YS1zdGF0ZVwiOiBjb250ZXh0Lm9wZW4gPyAnb3BlbicgOiAnY2xvc2VkJyxcbiAgICAgICAgZGlyOiBjb250ZXh0LmRpcixcbiAgICAgICAgb25Db250ZXh0TWVudTogKGV2ZW50KT0+ZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgIH0sIGNvbnRlbnRQcm9wcywgcG9wcGVyQ29udGVudFByb3BzLCB7XG4gICAgICAgIG9uUGxhY2VkOiAoKT0+c2V0SXNQb3NpdGlvbmVkKHRydWUpXG4gICAgICAgICxcbiAgICAgICAgcmVmOiBjb21wb3NlZFJlZnMsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAvLyBmbGV4IGxheW91dCBzbyB3ZSBjYW4gcGxhY2UgdGhlIHNjcm9sbCBidXR0b25zIHByb3Blcmx5XG4gICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgICAgICAgICAgIC8vIHJlc2V0IHRoZSBvdXRsaW5lIGJ5IGRlZmF1bHQgYXMgdGhlIGNvbnRlbnQgTUFZIGdldCBmb2N1c2VkXG4gICAgICAgICAgICBvdXRsaW5lOiAnbm9uZScsXG4gICAgICAgICAgICAuLi5jb250ZW50UHJvcHMuc3R5bGVcbiAgICAgICAgfSxcbiAgICAgICAgb25LZXlEb3duOiAkMDFiOWMkY29tcG9zZUV2ZW50SGFuZGxlcnMoY29udGVudFByb3BzLm9uS2V5RG93biwgKGV2ZW50KT0+e1xuICAgICAgICAgICAgY29uc3QgaXNNb2RpZmllcktleSA9IGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQuYWx0S2V5IHx8IGV2ZW50Lm1ldGFLZXk7IC8vIHNlbGVjdCBzaG91bGQgbm90IGJlIG5hdmlnYXRlZCB1c2luZyB0YWIga2V5IHNvIHdlIHByZXZlbnQgaXRcbiAgICAgICAgICAgIGlmIChldmVudC5rZXkgPT09ICdUYWInKSBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgaWYgKCFpc01vZGlmaWVyS2V5ICYmIGV2ZW50LmtleS5sZW5ndGggPT09IDEpIGhhbmRsZVR5cGVhaGVhZFNlYXJjaChldmVudC5rZXkpO1xuICAgICAgICAgICAgaWYgKFtcbiAgICAgICAgICAgICAgICAnQXJyb3dVcCcsXG4gICAgICAgICAgICAgICAgJ0Fycm93RG93bicsXG4gICAgICAgICAgICAgICAgJ0hvbWUnLFxuICAgICAgICAgICAgICAgICdFbmQnXG4gICAgICAgICAgICBdLmluY2x1ZGVzKGV2ZW50LmtleSkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpdGVtcyA9IGdldEl0ZW1zKCkuZmlsdGVyKChpdGVtKT0+IWl0ZW0uZGlzYWJsZWRcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIGxldCBjYW5kaWRhdGVOb2RlcyA9IGl0ZW1zLm1hcCgoaXRlbSk9Pml0ZW0ucmVmLmN1cnJlbnRcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIGlmIChbXG4gICAgICAgICAgICAgICAgICAgICdBcnJvd1VwJyxcbiAgICAgICAgICAgICAgICAgICAgJ0VuZCdcbiAgICAgICAgICAgICAgICBdLmluY2x1ZGVzKGV2ZW50LmtleSkpIGNhbmRpZGF0ZU5vZGVzID0gY2FuZGlkYXRlTm9kZXMuc2xpY2UoKS5yZXZlcnNlKCk7XG4gICAgICAgICAgICAgICAgaWYgKFtcbiAgICAgICAgICAgICAgICAgICAgJ0Fycm93VXAnLFxuICAgICAgICAgICAgICAgICAgICAnQXJyb3dEb3duJ1xuICAgICAgICAgICAgICAgIF0uaW5jbHVkZXMoZXZlbnQua2V5KSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjdXJyZW50RWxlbWVudCA9IGV2ZW50LnRhcmdldDtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY3VycmVudEluZGV4ID0gY2FuZGlkYXRlTm9kZXMuaW5kZXhPZihjdXJyZW50RWxlbWVudCk7XG4gICAgICAgICAgICAgICAgICAgIGNhbmRpZGF0ZU5vZGVzID0gY2FuZGlkYXRlTm9kZXMuc2xpY2UoY3VycmVudEluZGV4ICsgMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgKiBJbXBlcmF0aXZlIGZvY3VzIGR1cmluZyBrZXlkb3duIGlzIHJpc2t5IHNvIHdlIHByZXZlbnQgUmVhY3QncyBiYXRjaGluZyB1cGRhdGVzXG4gICAgICAgICAqIHRvIGF2b2lkIHBvdGVudGlhbCBidWdzLiBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC9pc3N1ZXMvMjAzMzJcbiAgICAgICAgICovIHNldFRpbWVvdXQoKCk9PmZvY3VzRmlyc3QoY2FuZGlkYXRlTm9kZXMpXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH0pKSkpKSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0Q29udGVudEltcGwsIHtcbiAgICBkaXNwbGF5TmFtZTogJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENPTlRFTlRfSU1QTF9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFNlbGVjdEl0ZW1BbGlnbmVkUG9zaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJElURU1fQUxJR05FRF9QT1NJVElPTl9OQU1FID0gJ1NlbGVjdEl0ZW1BbGlnbmVkUG9zaXRpb24nO1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdEl0ZW1BbGlnbmVkUG9zaXRpb24gPSAvKiNfX1BVUkVfXyovICQwMWI5YyRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgX19zY29wZVNlbGVjdDogX19zY29wZVNlbGVjdCAsIG9uUGxhY2VkOiBvblBsYWNlZCAsIC4uLnBvcHBlclByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBjb250ZXh0ID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdENvbnRleHQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENPTlRFTlRfTkFNRSwgX19zY29wZVNlbGVjdCk7XG4gICAgY29uc3QgY29udGVudENvbnRleHQgPSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlU2VsZWN0Q29udGVudENvbnRleHQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENPTlRFTlRfTkFNRSwgX19zY29wZVNlbGVjdCk7XG4gICAgY29uc3QgW2NvbnRlbnRXcmFwcGVyLCBzZXRDb250ZW50V3JhcHBlcl0gPSAkMDFiOWMkdXNlU3RhdGUobnVsbCk7XG4gICAgY29uc3QgW2NvbnRlbnQsIHNldENvbnRlbnRdID0gJDAxYjljJHVzZVN0YXRlKG51bGwpO1xuICAgIGNvbnN0IGNvbXBvc2VkUmVmcyA9ICQwMWI5YyR1c2VDb21wb3NlZFJlZnMoZm9yd2FyZGVkUmVmLCAobm9kZSk9PnNldENvbnRlbnQobm9kZSlcbiAgICApO1xuICAgIGNvbnN0IGdldEl0ZW1zID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZUNvbGxlY3Rpb24oX19zY29wZVNlbGVjdCk7XG4gICAgY29uc3Qgc2hvdWxkRXhwYW5kT25TY3JvbGxSZWYgPSAkMDFiOWMkdXNlUmVmKGZhbHNlKTtcbiAgICBjb25zdCBzaG91bGRSZXBvc2l0aW9uUmVmID0gJDAxYjljJHVzZVJlZih0cnVlKTtcbiAgICBjb25zdCB7IHZpZXdwb3J0OiB2aWV3cG9ydCAsIHNlbGVjdGVkSXRlbTogc2VsZWN0ZWRJdGVtICwgc2VsZWN0ZWRJdGVtVGV4dDogc2VsZWN0ZWRJdGVtVGV4dCAsIGZvY3VzU2VsZWN0ZWRJdGVtOiBmb2N1c1NlbGVjdGVkSXRlbSAgfSA9IGNvbnRlbnRDb250ZXh0O1xuICAgIGNvbnN0IHBvc2l0aW9uID0gJDAxYjljJHVzZUNhbGxiYWNrKCgpPT57XG4gICAgICAgIGlmIChjb250ZXh0LnRyaWdnZXIgJiYgY29udGV4dC52YWx1ZU5vZGUgJiYgY29udGVudFdyYXBwZXIgJiYgY29udGVudCAmJiB2aWV3cG9ydCAmJiBzZWxlY3RlZEl0ZW0gJiYgc2VsZWN0ZWRJdGVtVGV4dCkge1xuICAgICAgICAgICAgY29uc3QgdHJpZ2dlclJlY3QgPSBjb250ZXh0LnRyaWdnZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7IC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICAvLyAgSG9yaXpvbnRhbCBwb3NpdGlvbmluZ1xuICAgICAgICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIGNvbnN0IGNvbnRlbnRSZWN0ID0gY29udGVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlTm9kZVJlY3QgPSBjb250ZXh0LnZhbHVlTm9kZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIGNvbnN0IGl0ZW1UZXh0UmVjdCA9IHNlbGVjdGVkSXRlbVRleHQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICBpZiAoY29udGV4dC5kaXIgIT09ICdydGwnKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaXRlbVRleHRPZmZzZXQgPSBpdGVtVGV4dFJlY3QubGVmdCAtIGNvbnRlbnRSZWN0LmxlZnQ7XG4gICAgICAgICAgICAgICAgY29uc3QgbGVmdCA9IHZhbHVlTm9kZVJlY3QubGVmdCAtIGl0ZW1UZXh0T2Zmc2V0O1xuICAgICAgICAgICAgICAgIGNvbnN0IGxlZnREZWx0YSA9IHRyaWdnZXJSZWN0LmxlZnQgLSBsZWZ0O1xuICAgICAgICAgICAgICAgIGNvbnN0IG1pbkNvbnRlbnRXaWR0aCA9IHRyaWdnZXJSZWN0LndpZHRoICsgbGVmdERlbHRhO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvbnRlbnRXaWR0aCA9IE1hdGgubWF4KG1pbkNvbnRlbnRXaWR0aCwgY29udGVudFJlY3Qud2lkdGgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHJpZ2h0RWRnZSA9IHdpbmRvdy5pbm5lcldpZHRoIC0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENPTlRFTlRfTUFSR0lOO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNsYW1wZWRMZWZ0ID0gJDAxYjljJGNsYW1wKGxlZnQsIFtcbiAgICAgICAgICAgICAgICAgICAgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENPTlRFTlRfTUFSR0lOLFxuICAgICAgICAgICAgICAgICAgICByaWdodEVkZ2UgLSBjb250ZW50V2lkdGhcbiAgICAgICAgICAgICAgICBdKTtcbiAgICAgICAgICAgICAgICBjb250ZW50V3JhcHBlci5zdHlsZS5taW5XaWR0aCA9IG1pbkNvbnRlbnRXaWR0aCArICdweCc7XG4gICAgICAgICAgICAgICAgY29udGVudFdyYXBwZXIuc3R5bGUubGVmdCA9IGNsYW1wZWRMZWZ0ICsgJ3B4JztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaXRlbVRleHRPZmZzZXQgPSBjb250ZW50UmVjdC5yaWdodCAtIGl0ZW1UZXh0UmVjdC5yaWdodDtcbiAgICAgICAgICAgICAgICBjb25zdCByaWdodCA9IHdpbmRvdy5pbm5lcldpZHRoIC0gdmFsdWVOb2RlUmVjdC5yaWdodCAtIGl0ZW1UZXh0T2Zmc2V0O1xuICAgICAgICAgICAgICAgIGNvbnN0IHJpZ2h0RGVsdGEgPSB3aW5kb3cuaW5uZXJXaWR0aCAtIHRyaWdnZXJSZWN0LnJpZ2h0IC0gcmlnaHQ7XG4gICAgICAgICAgICAgICAgY29uc3QgbWluQ29udGVudFdpZHRoID0gdHJpZ2dlclJlY3Qud2lkdGggKyByaWdodERlbHRhO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvbnRlbnRXaWR0aCA9IE1hdGgubWF4KG1pbkNvbnRlbnRXaWR0aCwgY29udGVudFJlY3Qud2lkdGgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGxlZnRFZGdlID0gd2luZG93LmlubmVyV2lkdGggLSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkQ09OVEVOVF9NQVJHSU47XG4gICAgICAgICAgICAgICAgY29uc3QgY2xhbXBlZFJpZ2h0ID0gJDAxYjljJGNsYW1wKHJpZ2h0LCBbXG4gICAgICAgICAgICAgICAgICAgICRjYzdlMDVhNDU5MDBlNzNmJHZhciRDT05URU5UX01BUkdJTixcbiAgICAgICAgICAgICAgICAgICAgbGVmdEVkZ2UgLSBjb250ZW50V2lkdGhcbiAgICAgICAgICAgICAgICBdKTtcbiAgICAgICAgICAgICAgICBjb250ZW50V3JhcHBlci5zdHlsZS5taW5XaWR0aCA9IG1pbkNvbnRlbnRXaWR0aCArICdweCc7XG4gICAgICAgICAgICAgICAgY29udGVudFdyYXBwZXIuc3R5bGUucmlnaHQgPSBjbGFtcGVkUmlnaHQgKyAncHgnO1xuICAgICAgICAgICAgfSAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgICAgICAgLy8gVmVydGljYWwgcG9zaXRpb25pbmdcbiAgICAgICAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgICAgICBjb25zdCBpdGVtcyA9IGdldEl0ZW1zKCk7XG4gICAgICAgICAgICBjb25zdCBhdmFpbGFibGVIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQgLSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkQ09OVEVOVF9NQVJHSU4gKiAyO1xuICAgICAgICAgICAgY29uc3QgaXRlbXNIZWlnaHQgPSB2aWV3cG9ydC5zY3JvbGxIZWlnaHQ7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50U3R5bGVzID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoY29udGVudCk7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50Qm9yZGVyVG9wV2lkdGggPSBwYXJzZUludChjb250ZW50U3R5bGVzLmJvcmRlclRvcFdpZHRoLCAxMCk7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50UGFkZGluZ1RvcCA9IHBhcnNlSW50KGNvbnRlbnRTdHlsZXMucGFkZGluZ1RvcCwgMTApO1xuICAgICAgICAgICAgY29uc3QgY29udGVudEJvcmRlckJvdHRvbVdpZHRoID0gcGFyc2VJbnQoY29udGVudFN0eWxlcy5ib3JkZXJCb3R0b21XaWR0aCwgMTApO1xuICAgICAgICAgICAgY29uc3QgY29udGVudFBhZGRpbmdCb3R0b20gPSBwYXJzZUludChjb250ZW50U3R5bGVzLnBhZGRpbmdCb3R0b20sIDEwKTtcbiAgICAgICAgICAgIGNvbnN0IGZ1bGxDb250ZW50SGVpZ2h0ID0gY29udGVudEJvcmRlclRvcFdpZHRoICsgY29udGVudFBhZGRpbmdUb3AgKyBpdGVtc0hlaWdodCArIGNvbnRlbnRQYWRkaW5nQm90dG9tICsgY29udGVudEJvcmRlckJvdHRvbVdpZHRoOyAvLyBwcmV0dGllci1pZ25vcmVcbiAgICAgICAgICAgIGNvbnN0IG1pbkNvbnRlbnRIZWlnaHQgPSBNYXRoLm1pbihzZWxlY3RlZEl0ZW0ub2Zmc2V0SGVpZ2h0ICogNSwgZnVsbENvbnRlbnRIZWlnaHQpO1xuICAgICAgICAgICAgY29uc3Qgdmlld3BvcnRTdHlsZXMgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh2aWV3cG9ydCk7XG4gICAgICAgICAgICBjb25zdCB2aWV3cG9ydFBhZGRpbmdUb3AgPSBwYXJzZUludCh2aWV3cG9ydFN0eWxlcy5wYWRkaW5nVG9wLCAxMCk7XG4gICAgICAgICAgICBjb25zdCB2aWV3cG9ydFBhZGRpbmdCb3R0b20gPSBwYXJzZUludCh2aWV3cG9ydFN0eWxlcy5wYWRkaW5nQm90dG9tLCAxMCk7XG4gICAgICAgICAgICBjb25zdCB0b3BFZGdlVG9UcmlnZ2VyTWlkZGxlID0gdHJpZ2dlclJlY3QudG9wICsgdHJpZ2dlclJlY3QuaGVpZ2h0IC8gMiAtICRjYzdlMDVhNDU5MDBlNzNmJHZhciRDT05URU5UX01BUkdJTjtcbiAgICAgICAgICAgIGNvbnN0IHRyaWdnZXJNaWRkbGVUb0JvdHRvbUVkZ2UgPSBhdmFpbGFibGVIZWlnaHQgLSB0b3BFZGdlVG9UcmlnZ2VyTWlkZGxlO1xuICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWRJdGVtSGFsZkhlaWdodCA9IHNlbGVjdGVkSXRlbS5vZmZzZXRIZWlnaHQgLyAyO1xuICAgICAgICAgICAgY29uc3QgaXRlbU9mZnNldE1pZGRsZSA9IHNlbGVjdGVkSXRlbS5vZmZzZXRUb3AgKyBzZWxlY3RlZEl0ZW1IYWxmSGVpZ2h0O1xuICAgICAgICAgICAgY29uc3QgY29udGVudFRvcFRvSXRlbU1pZGRsZSA9IGNvbnRlbnRCb3JkZXJUb3BXaWR0aCArIGNvbnRlbnRQYWRkaW5nVG9wICsgaXRlbU9mZnNldE1pZGRsZTtcbiAgICAgICAgICAgIGNvbnN0IGl0ZW1NaWRkbGVUb0NvbnRlbnRCb3R0b20gPSBmdWxsQ29udGVudEhlaWdodCAtIGNvbnRlbnRUb3BUb0l0ZW1NaWRkbGU7XG4gICAgICAgICAgICBjb25zdCB3aWxsQWxpZ25XaXRob3V0VG9wT3ZlcmZsb3cgPSBjb250ZW50VG9wVG9JdGVtTWlkZGxlIDw9IHRvcEVkZ2VUb1RyaWdnZXJNaWRkbGU7XG4gICAgICAgICAgICBpZiAod2lsbEFsaWduV2l0aG91dFRvcE92ZXJmbG93KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaXNMYXN0SXRlbSA9IHNlbGVjdGVkSXRlbSA9PT0gaXRlbXNbaXRlbXMubGVuZ3RoIC0gMV0ucmVmLmN1cnJlbnQ7XG4gICAgICAgICAgICAgICAgY29udGVudFdyYXBwZXIuc3R5bGUuYm90dG9tID0gXCIwcHhcIjtcbiAgICAgICAgICAgICAgICBjb25zdCB2aWV3cG9ydE9mZnNldEJvdHRvbSA9IGNvbnRlbnQuY2xpZW50SGVpZ2h0IC0gdmlld3BvcnQub2Zmc2V0VG9wIC0gdmlld3BvcnQub2Zmc2V0SGVpZ2h0O1xuICAgICAgICAgICAgICAgIGNvbnN0IGNsYW1wZWRUcmlnZ2VyTWlkZGxlVG9Cb3R0b21FZGdlID0gTWF0aC5tYXgodHJpZ2dlck1pZGRsZVRvQm90dG9tRWRnZSwgc2VsZWN0ZWRJdGVtSGFsZkhlaWdodCArIChpc0xhc3RJdGVtID8gdmlld3BvcnRQYWRkaW5nQm90dG9tIDogMCkgKyB2aWV3cG9ydE9mZnNldEJvdHRvbSArIGNvbnRlbnRCb3JkZXJCb3R0b21XaWR0aCk7XG4gICAgICAgICAgICAgICAgY29uc3QgaGVpZ2h0ID0gY29udGVudFRvcFRvSXRlbU1pZGRsZSArIGNsYW1wZWRUcmlnZ2VyTWlkZGxlVG9Cb3R0b21FZGdlO1xuICAgICAgICAgICAgICAgIGNvbnRlbnRXcmFwcGVyLnN0eWxlLmhlaWdodCA9IGhlaWdodCArICdweCc7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IGlzRmlyc3RJdGVtID0gc2VsZWN0ZWRJdGVtID09PSBpdGVtc1swXS5yZWYuY3VycmVudDtcbiAgICAgICAgICAgICAgICBjb250ZW50V3JhcHBlci5zdHlsZS50b3AgPSBcIjBweFwiO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNsYW1wZWRUb3BFZGdlVG9UcmlnZ2VyTWlkZGxlID0gTWF0aC5tYXgodG9wRWRnZVRvVHJpZ2dlck1pZGRsZSwgY29udGVudEJvcmRlclRvcFdpZHRoICsgdmlld3BvcnQub2Zmc2V0VG9wICsgKGlzRmlyc3RJdGVtID8gdmlld3BvcnRQYWRkaW5nVG9wIDogMCkgKyBzZWxlY3RlZEl0ZW1IYWxmSGVpZ2h0KTtcbiAgICAgICAgICAgICAgICBjb25zdCBoZWlnaHQgPSBjbGFtcGVkVG9wRWRnZVRvVHJpZ2dlck1pZGRsZSArIGl0ZW1NaWRkbGVUb0NvbnRlbnRCb3R0b207XG4gICAgICAgICAgICAgICAgY29udGVudFdyYXBwZXIuc3R5bGUuaGVpZ2h0ID0gaGVpZ2h0ICsgJ3B4JztcbiAgICAgICAgICAgICAgICB2aWV3cG9ydC5zY3JvbGxUb3AgPSBjb250ZW50VG9wVG9JdGVtTWlkZGxlIC0gdG9wRWRnZVRvVHJpZ2dlck1pZGRsZSArIHZpZXdwb3J0Lm9mZnNldFRvcDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnRlbnRXcmFwcGVyLnN0eWxlLm1hcmdpbiA9IGAkeyRjYzdlMDVhNDU5MDBlNzNmJHZhciRDT05URU5UX01BUkdJTn1weCAwYDtcbiAgICAgICAgICAgIGNvbnRlbnRXcmFwcGVyLnN0eWxlLm1pbkhlaWdodCA9IG1pbkNvbnRlbnRIZWlnaHQgKyAncHgnO1xuICAgICAgICAgICAgY29udGVudFdyYXBwZXIuc3R5bGUubWF4SGVpZ2h0ID0gYXZhaWxhYmxlSGVpZ2h0ICsgJ3B4JzsgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICAgICAgIG9uUGxhY2VkID09PSBudWxsIHx8IG9uUGxhY2VkID09PSB2b2lkIDAgfHwgb25QbGFjZWQoKTsgLy8gd2UgZG9uJ3Qgd2FudCB0aGUgaW5pdGlhbCBzY3JvbGwgcG9zaXRpb24gYWRqdXN0bWVudCB0byB0cmlnZ2VyIFwiZXhwYW5kIG9uIHNjcm9sbFwiXG4gICAgICAgICAgICAvLyBzbyB3ZSBleHBsaWNpdGx5IHR1cm4gaXQgb24gb25seSBhZnRlciB0aGV5J3ZlIHJlZ2lzdGVyZWQuXG4gICAgICAgICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PnNob3VsZEV4cGFuZE9uU2Nyb2xsUmVmLmN1cnJlbnQgPSB0cnVlXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBnZXRJdGVtcyxcbiAgICAgICAgY29udGV4dC50cmlnZ2VyLFxuICAgICAgICBjb250ZXh0LnZhbHVlTm9kZSxcbiAgICAgICAgY29udGVudFdyYXBwZXIsXG4gICAgICAgIGNvbnRlbnQsXG4gICAgICAgIHZpZXdwb3J0LFxuICAgICAgICBzZWxlY3RlZEl0ZW0sXG4gICAgICAgIHNlbGVjdGVkSXRlbVRleHQsXG4gICAgICAgIGNvbnRleHQuZGlyLFxuICAgICAgICBvblBsYWNlZFxuICAgIF0pO1xuICAgICQwMWI5YyR1c2VMYXlvdXRFZmZlY3QoKCk9PnBvc2l0aW9uKClcbiAgICAsIFtcbiAgICAgICAgcG9zaXRpb25cbiAgICBdKTsgLy8gY29weSB6LWluZGV4IGZyb20gY29udGVudCB0byB3cmFwcGVyXG4gICAgY29uc3QgW2NvbnRlbnRaSW5kZXgsIHNldENvbnRlbnRaSW5kZXhdID0gJDAxYjljJHVzZVN0YXRlKCk7XG4gICAgJDAxYjljJHVzZUxheW91dEVmZmVjdCgoKT0+e1xuICAgICAgICBpZiAoY29udGVudCkgc2V0Q29udGVudFpJbmRleCh3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShjb250ZW50KS56SW5kZXgpO1xuICAgIH0sIFtcbiAgICAgICAgY29udGVudFxuICAgIF0pOyAvLyBXaGVuIHRoZSB2aWV3cG9ydCBiZWNvbWVzIHNjcm9sbGFibGUgYXQgdGhlIHRvcCwgdGhlIHNjcm9sbCB1cCBidXR0b24gd2lsbCBtb3VudC5cbiAgICAvLyBCZWNhdXNlIGl0IGlzIHBhcnQgb2YgdGhlIG5vcm1hbCBmbG93LCBpdCB3aWxsIHB1c2ggZG93biB0aGUgdmlld3BvcnQsIHRodXMgdGhyb3dpbmcgb3VyXG4gICAgLy8gdHJpZ2dlciA9PiBzZWxlY3RlZEl0ZW0gYWxpZ25tZW50IG9mZiBieSB0aGUgYW1vdW50IHRoZSB2aWV3cG9ydCB3YXMgcHVzaGVkIGRvd24uXG4gICAgLy8gV2Ugd2FpdCBmb3IgdGhpcyB0byBoYXBwZW4gYW5kIHRoZW4gcmUtcnVuIHRoZSBwb3NpdGluaW5nIGxvZ2ljIG9uZSBtb3JlIHRpbWUgdG8gYWNjb3VudCBmb3IgaXQuXG4gICAgY29uc3QgaGFuZGxlU2Nyb2xsQnV0dG9uQ2hhbmdlID0gJDAxYjljJHVzZUNhbGxiYWNrKChub2RlKT0+e1xuICAgICAgICBpZiAobm9kZSAmJiBzaG91bGRSZXBvc2l0aW9uUmVmLmN1cnJlbnQgPT09IHRydWUpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uKCk7XG4gICAgICAgICAgICBmb2N1c1NlbGVjdGVkSXRlbSA9PT0gbnVsbCB8fCBmb2N1c1NlbGVjdGVkSXRlbSA9PT0gdm9pZCAwIHx8IGZvY3VzU2VsZWN0ZWRJdGVtKCk7XG4gICAgICAgICAgICBzaG91bGRSZXBvc2l0aW9uUmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH0sIFtcbiAgICAgICAgcG9zaXRpb24sXG4gICAgICAgIGZvY3VzU2VsZWN0ZWRJdGVtXG4gICAgXSk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdFZpZXdwb3J0UHJvdmlkZXIsIHtcbiAgICAgICAgc2NvcGU6IF9fc2NvcGVTZWxlY3QsXG4gICAgICAgIGNvbnRlbnRXcmFwcGVyOiBjb250ZW50V3JhcHBlcixcbiAgICAgICAgc2hvdWxkRXhwYW5kT25TY3JvbGxSZWY6IHNob3VsZEV4cGFuZE9uU2Nyb2xsUmVmLFxuICAgICAgICBvblNjcm9sbEJ1dHRvbkNoYW5nZTogaGFuZGxlU2Nyb2xsQnV0dG9uQ2hhbmdlXG4gICAgfSwgLyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlRWxlbWVudChcImRpdlwiLCB7XG4gICAgICAgIHJlZjogc2V0Q29udGVudFdyYXBwZXIsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAnZml4ZWQnLFxuICAgICAgICAgICAgekluZGV4OiBjb250ZW50WkluZGV4XG4gICAgICAgIH1cbiAgICB9LCAvKiNfX1BVUkVfXyovICQwMWI5YyRjcmVhdGVFbGVtZW50KCQwMWI5YyRQcmltaXRpdmUuZGl2LCAkMDFiOWMkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIHBvcHBlclByb3BzLCB7XG4gICAgICAgIHJlZjogY29tcG9zZWRSZWZzLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgLy8gV2hlbiB3ZSBnZXQgdGhlIGhlaWdodCBvZiB0aGUgY29udGVudCwgaXQgaW5jbHVkZXMgYm9yZGVycy4gSWYgd2Ugd2VyZSB0byBzZXRcbiAgICAgICAgICAgIC8vIHRoZSBoZWlnaHQgd2l0aG91dCBoYXZpbmcgYGJveFNpemluZzogJ2JvcmRlci1ib3gnYCBpdCB3b3VsZCBiZSB0b28gYmlnLlxuICAgICAgICAgICAgYm94U2l6aW5nOiAnYm9yZGVyLWJveCcsXG4gICAgICAgICAgICAvLyBXZSBuZWVkIHRvIGVuc3VyZSB0aGUgY29udGVudCBkb2Vzbid0IGdldCB0YWxsZXIgdGhhbiB0aGUgd3JhcHBlclxuICAgICAgICAgICAgbWF4SGVpZ2h0OiAnMTAwJScsXG4gICAgICAgICAgICAuLi5wb3BwZXJQcm9wcy5zdHlsZVxuICAgICAgICB9XG4gICAgfSkpKSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0SXRlbUFsaWduZWRQb3NpdGlvbiwge1xuICAgIGRpc3BsYXlOYW1lOiAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkSVRFTV9BTElHTkVEX1BPU0lUSU9OX05BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogU2VsZWN0UG9wcGVyUG9zaXRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFBPUFBFUl9QT1NJVElPTl9OQU1FID0gJ1NlbGVjdFBvcHBlclBvc2l0aW9uJztcbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJHZhciRTZWxlY3RQb3BwZXJQb3NpdGlvbiA9IC8qI19fUFVSRV9fKi8gJDAxYjljJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlU2VsZWN0OiBfX3Njb3BlU2VsZWN0ICwgYWxpZ246IGFsaWduID0gJ3N0YXJ0JyAsIGNvbGxpc2lvblBhZGRpbmc6IGNvbGxpc2lvblBhZGRpbmcgPSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkQ09OVEVOVF9NQVJHSU4gLCAuLi5wb3BwZXJQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgcG9wcGVyU2NvcGUgPSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlUG9wcGVyU2NvcGUoX19zY29wZVNlbGVjdCk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJDAxYjljJENvbnRlbnQsICQwMWI5YyRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7fSwgcG9wcGVyU2NvcGUsIHBvcHBlclByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmLFxuICAgICAgICBhbGlnbjogYWxpZ24sXG4gICAgICAgIGNvbGxpc2lvblBhZGRpbmc6IGNvbGxpc2lvblBhZGRpbmcsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAvLyBFbnN1cmUgYm9yZGVyLWJveCBmb3IgZmxvYXRpbmctdWkgY2FsY3VsYXRpb25zXG4gICAgICAgICAgICBib3hTaXppbmc6ICdib3JkZXItYm94JyxcbiAgICAgICAgICAgIC4uLnBvcHBlclByb3BzLnN0eWxlLFxuICAgICAgICAgICAgJy0tcmFkaXgtc2VsZWN0LWNvbnRlbnQtdHJhbnNmb3JtLW9yaWdpbic6ICd2YXIoLS1yYWRpeC1wb3BwZXItdHJhbnNmb3JtLW9yaWdpbiknLFxuICAgICAgICAgICAgJy0tcmFkaXgtc2VsZWN0LWNvbnRlbnQtYXZhaWxhYmxlLXdpZHRoJzogJ3ZhcigtLXJhZGl4LXBvcHBlci1hdmFpbGFibGUtd2lkdGgpJyxcbiAgICAgICAgICAgICctLXJhZGl4LXNlbGVjdC1jb250ZW50LWF2YWlsYWJsZS1oZWlnaHQnOiAndmFyKC0tcmFkaXgtcG9wcGVyLWF2YWlsYWJsZS1oZWlnaHQpJyxcbiAgICAgICAgICAgICctLXJhZGl4LXNlbGVjdC10cmlnZ2VyLXdpZHRoJzogJ3ZhcigtLXJhZGl4LXBvcHBlci1hbmNob3Itd2lkdGgpJyxcbiAgICAgICAgICAgICctLXJhZGl4LXNlbGVjdC10cmlnZ2VyLWhlaWdodCc6ICd2YXIoLS1yYWRpeC1wb3BwZXItYW5jaG9yLWhlaWdodCknXG4gICAgICAgIH1cbiAgICB9KSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0UG9wcGVyUG9zaXRpb24sIHtcbiAgICBkaXNwbGF5TmFtZTogJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFBPUFBFUl9QT1NJVElPTl9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFNlbGVjdFZpZXdwb3J0XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0IFskY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0Vmlld3BvcnRQcm92aWRlciwgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdFZpZXdwb3J0Q29udGV4dF0gPSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkY3JlYXRlU2VsZWN0Q29udGV4dCgkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkQ09OVEVOVF9OQU1FLCB7fSk7XG5jb25zdCAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkVklFV1BPUlRfTkFNRSA9ICdTZWxlY3RWaWV3cG9ydCc7XG5jb25zdCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkOWVkNmU3YjQwMjQ4ZDM2ZCA9IC8qI19fUFVSRV9fKi8gJDAxYjljJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlU2VsZWN0OiBfX3Njb3BlU2VsZWN0ICwgLi4udmlld3BvcnRQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgY29udGVudENvbnRleHQgPSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlU2VsZWN0Q29udGVudENvbnRleHQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFZJRVdQT1JUX05BTUUsIF9fc2NvcGVTZWxlY3QpO1xuICAgIGNvbnN0IHZpZXdwb3J0Q29udGV4dCA9ICRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VTZWxlY3RWaWV3cG9ydENvbnRleHQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFZJRVdQT1JUX05BTUUsIF9fc2NvcGVTZWxlY3QpO1xuICAgIGNvbnN0IGNvbXBvc2VkUmVmcyA9ICQwMWI5YyR1c2VDb21wb3NlZFJlZnMoZm9yd2FyZGVkUmVmLCBjb250ZW50Q29udGV4dC5vblZpZXdwb3J0Q2hhbmdlKTtcbiAgICBjb25zdCBwcmV2U2Nyb2xsVG9wUmVmID0gJDAxYjljJHVzZVJlZigwKTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlRWxlbWVudCgkMDFiOWMkRnJhZ21lbnQsIG51bGwsIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoXCJzdHlsZVwiLCB7XG4gICAgICAgIGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MOiB7XG4gICAgICAgICAgICBfX2h0bWw6IGBbZGF0YS1yYWRpeC1zZWxlY3Qtdmlld3BvcnRde3Njcm9sbGJhci13aWR0aDpub25lOy1tcy1vdmVyZmxvdy1zdHlsZTpub25lOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNoO31bZGF0YS1yYWRpeC1zZWxlY3Qtdmlld3BvcnRdOjotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5Om5vbmV9YFxuICAgICAgICB9XG4gICAgfSksIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENvbGxlY3Rpb24uU2xvdCwge1xuICAgICAgICBzY29wZTogX19zY29wZVNlbGVjdFxuICAgIH0sIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJDAxYjljJFByaW1pdGl2ZS5kaXYsICQwMWI5YyRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7XG4gICAgICAgIFwiZGF0YS1yYWRpeC1zZWxlY3Qtdmlld3BvcnRcIjogXCJcIixcbiAgICAgICAgcm9sZTogXCJwcmVzZW50YXRpb25cIlxuICAgIH0sIHZpZXdwb3J0UHJvcHMsIHtcbiAgICAgICAgcmVmOiBjb21wb3NlZFJlZnMsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAvLyB3ZSB1c2UgcG9zaXRpb246ICdyZWxhdGl2ZScgaGVyZSBvbiB0aGUgYHZpZXdwb3J0YCBzbyB0aGF0IHdoZW4gd2UgY2FsbFxuICAgICAgICAgICAgLy8gYHNlbGVjdGVkSXRlbS5vZmZzZXRUb3BgIGluIGNhbGN1bGF0aW9ucywgdGhlIG9mZnNldCBpcyByZWxhdGl2ZSB0byB0aGUgdmlld3BvcnRcbiAgICAgICAgICAgIC8vIChpbmRlcGVuZGVudCBvZiB0aGUgc2Nyb2xsVXBCdXR0b24pLlxuICAgICAgICAgICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgICAgICAgICBmbGV4OiAxLFxuICAgICAgICAgICAgb3ZlcmZsb3c6ICdhdXRvJyxcbiAgICAgICAgICAgIC4uLnZpZXdwb3J0UHJvcHMuc3R5bGVcbiAgICAgICAgfSxcbiAgICAgICAgb25TY3JvbGw6ICQwMWI5YyRjb21wb3NlRXZlbnRIYW5kbGVycyh2aWV3cG9ydFByb3BzLm9uU2Nyb2xsLCAoZXZlbnQpPT57XG4gICAgICAgICAgICBjb25zdCB2aWV3cG9ydCA9IGV2ZW50LmN1cnJlbnRUYXJnZXQ7XG4gICAgICAgICAgICBjb25zdCB7IGNvbnRlbnRXcmFwcGVyOiBjb250ZW50V3JhcHBlciAsIHNob3VsZEV4cGFuZE9uU2Nyb2xsUmVmOiBzaG91bGRFeHBhbmRPblNjcm9sbFJlZiAgfSA9IHZpZXdwb3J0Q29udGV4dDtcbiAgICAgICAgICAgIGlmIChzaG91bGRFeHBhbmRPblNjcm9sbFJlZiAhPT0gbnVsbCAmJiBzaG91bGRFeHBhbmRPblNjcm9sbFJlZiAhPT0gdm9pZCAwICYmIHNob3VsZEV4cGFuZE9uU2Nyb2xsUmVmLmN1cnJlbnQgJiYgY29udGVudFdyYXBwZXIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBzY3JvbGxlZEJ5ID0gTWF0aC5hYnMocHJldlNjcm9sbFRvcFJlZi5jdXJyZW50IC0gdmlld3BvcnQuc2Nyb2xsVG9wKTtcbiAgICAgICAgICAgICAgICBpZiAoc2Nyb2xsZWRCeSA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYXZhaWxhYmxlSGVpZ2h0ID0gd2luZG93LmlubmVySGVpZ2h0IC0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENPTlRFTlRfTUFSR0lOICogMjtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY3NzTWluSGVpZ2h0ID0gcGFyc2VGbG9hdChjb250ZW50V3JhcHBlci5zdHlsZS5taW5IZWlnaHQpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjc3NIZWlnaHQgPSBwYXJzZUZsb2F0KGNvbnRlbnRXcmFwcGVyLnN0eWxlLmhlaWdodCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHByZXZIZWlnaHQgPSBNYXRoLm1heChjc3NNaW5IZWlnaHQsIGNzc0hlaWdodCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChwcmV2SGVpZ2h0IDwgYXZhaWxhYmxlSGVpZ2h0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXh0SGVpZ2h0ID0gcHJldkhlaWdodCArIHNjcm9sbGVkQnk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjbGFtcGVkTmV4dEhlaWdodCA9IE1hdGgubWluKGF2YWlsYWJsZUhlaWdodCwgbmV4dEhlaWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBoZWlnaHREaWZmID0gbmV4dEhlaWdodCAtIGNsYW1wZWROZXh0SGVpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudFdyYXBwZXIuc3R5bGUuaGVpZ2h0ID0gY2xhbXBlZE5leHRIZWlnaHQgKyAncHgnO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvbnRlbnRXcmFwcGVyLnN0eWxlLmJvdHRvbSA9PT0gJzBweCcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3cG9ydC5zY3JvbGxUb3AgPSBoZWlnaHREaWZmID4gMCA/IGhlaWdodERpZmYgOiAwOyAvLyBlbnN1cmUgdGhlIGNvbnRlbnQgc3RheXMgcGlubmVkIHRvIHRoZSBib3R0b21cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50V3JhcHBlci5zdHlsZS5qdXN0aWZ5Q29udGVudCA9ICdmbGV4LWVuZCc7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwcmV2U2Nyb2xsVG9wUmVmLmN1cnJlbnQgPSB2aWV3cG9ydC5zY3JvbGxUb3A7XG4gICAgICAgIH0pXG4gICAgfSkpKSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkOWVkNmU3YjQwMjQ4ZDM2ZCwge1xuICAgIGRpc3BsYXlOYW1lOiAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkVklFV1BPUlRfTkFNRVxufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBTZWxlY3RHcm91cFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkR1JPVVBfTkFNRSA9ICdTZWxlY3RHcm91cCc7XG5jb25zdCBbJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdEdyb3VwQ29udGV4dFByb3ZpZGVyLCAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlU2VsZWN0R3JvdXBDb250ZXh0XSA9ICRjYzdlMDVhNDU5MDBlNzNmJHZhciRjcmVhdGVTZWxlY3RDb250ZXh0KCRjYzdlMDVhNDU5MDBlNzNmJHZhciRHUk9VUF9OQU1FKTtcbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRlZTI1YTMzNGM1NWRlMWY0ID0gLyojX19QVVJFX18qLyAkMDFiOWMkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICBjb25zdCB7IF9fc2NvcGVTZWxlY3Q6IF9fc2NvcGVTZWxlY3QgLCAuLi5ncm91cFByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBncm91cElkID0gJDAxYjljJHVzZUlkKCk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdEdyb3VwQ29udGV4dFByb3ZpZGVyLCB7XG4gICAgICAgIHNjb3BlOiBfX3Njb3BlU2VsZWN0LFxuICAgICAgICBpZDogZ3JvdXBJZFxuICAgIH0sIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJDAxYjljJFByaW1pdGl2ZS5kaXYsICQwMWI5YyRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7XG4gICAgICAgIHJvbGU6IFwiZ3JvdXBcIixcbiAgICAgICAgXCJhcmlhLWxhYmVsbGVkYnlcIjogZ3JvdXBJZFxuICAgIH0sIGdyb3VwUHJvcHMsIHtcbiAgICAgICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgICB9KSkpO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGVlMjVhMzM0YzU1ZGUxZjQsIHtcbiAgICBkaXNwbGF5TmFtZTogJGNjN2UwNWE0NTkwMGU3M2YkdmFyJEdST1VQX05BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogU2VsZWN0TGFiZWxcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJExBQkVMX05BTUUgPSAnU2VsZWN0TGFiZWwnO1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGY2NzMzOGQyOWJkOTcyZjggPSAvKiNfX1BVUkVfXyovICQwMWI5YyRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgX19zY29wZVNlbGVjdDogX19zY29wZVNlbGVjdCAsIC4uLmxhYmVsUHJvcHMgfSA9IHByb3BzO1xuICAgIGNvbnN0IGdyb3VwQ29udGV4dCA9ICRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VTZWxlY3RHcm91cENvbnRleHQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJExBQkVMX05BTUUsIF9fc2NvcGVTZWxlY3QpO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICQwMWI5YyRjcmVhdGVFbGVtZW50KCQwMWI5YyRQcmltaXRpdmUuZGl2LCAkMDFiOWMkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe1xuICAgICAgICBpZDogZ3JvdXBDb250ZXh0LmlkXG4gICAgfSwgbGFiZWxQcm9wcywge1xuICAgICAgICByZWY6IGZvcndhcmRlZFJlZlxuICAgIH0pKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRmNjczMzhkMjliZDk3MmY4LCB7XG4gICAgZGlzcGxheU5hbWU6ICRjYzdlMDVhNDU5MDBlNzNmJHZhciRMQUJFTF9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFNlbGVjdEl0ZW1cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJElURU1fTkFNRSA9ICdTZWxlY3RJdGVtJztcbmNvbnN0IFskY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0SXRlbUNvbnRleHRQcm92aWRlciwgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdEl0ZW1Db250ZXh0XSA9ICRjYzdlMDVhNDU5MDBlNzNmJHZhciRjcmVhdGVTZWxlY3RDb250ZXh0KCRjYzdlMDVhNDU5MDBlNzNmJHZhciRJVEVNX05BTUUpO1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDEzZWY0OGE5MzQyMzA4OTYgPSAvKiNfX1BVUkVfXyovICQwMWI5YyRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgX19zY29wZVNlbGVjdDogX19zY29wZVNlbGVjdCAsIHZhbHVlOiB2YWx1ZSAsIGRpc2FibGVkOiBkaXNhYmxlZCA9IGZhbHNlICwgdGV4dFZhbHVlOiB0ZXh0VmFsdWVQcm9wICwgLi4uaXRlbVByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBjb250ZXh0ID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdENvbnRleHQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJElURU1fTkFNRSwgX19zY29wZVNlbGVjdCk7XG4gICAgY29uc3QgY29udGVudENvbnRleHQgPSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlU2VsZWN0Q29udGVudENvbnRleHQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJElURU1fTkFNRSwgX19zY29wZVNlbGVjdCk7XG4gICAgY29uc3QgaXNTZWxlY3RlZCA9IGNvbnRleHQudmFsdWUgPT09IHZhbHVlO1xuICAgIGNvbnN0IFt0ZXh0VmFsdWUsIHNldFRleHRWYWx1ZV0gPSAkMDFiOWMkdXNlU3RhdGUodGV4dFZhbHVlUHJvcCAhPT0gbnVsbCAmJiB0ZXh0VmFsdWVQcm9wICE9PSB2b2lkIDAgPyB0ZXh0VmFsdWVQcm9wIDogJycpO1xuICAgIGNvbnN0IFtpc0ZvY3VzZWQsIHNldElzRm9jdXNlZF0gPSAkMDFiOWMkdXNlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IGNvbXBvc2VkUmVmcyA9ICQwMWI5YyR1c2VDb21wb3NlZFJlZnMoZm9yd2FyZGVkUmVmLCAobm9kZSk9PntcbiAgICAgICAgdmFyIF9jb250ZW50Q29udGV4dCRpdGVtUjtcbiAgICAgICAgcmV0dXJuIChfY29udGVudENvbnRleHQkaXRlbVIgPSBjb250ZW50Q29udGV4dC5pdGVtUmVmQ2FsbGJhY2spID09PSBudWxsIHx8IF9jb250ZW50Q29udGV4dCRpdGVtUiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2NvbnRlbnRDb250ZXh0JGl0ZW1SLmNhbGwoY29udGVudENvbnRleHQsIG5vZGUsIHZhbHVlLCBkaXNhYmxlZCk7XG4gICAgfSk7XG4gICAgY29uc3QgdGV4dElkID0gJDAxYjljJHVzZUlkKCk7XG4gICAgY29uc3QgaGFuZGxlU2VsZWN0ID0gKCk9PntcbiAgICAgICAgaWYgKCFkaXNhYmxlZCkge1xuICAgICAgICAgICAgY29udGV4dC5vblZhbHVlQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgICAgIGNvbnRleHQub25PcGVuQ2hhbmdlKGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgaWYgKHZhbHVlID09PSAnJykgdGhyb3cgbmV3IEVycm9yKCdBIDxTZWxlY3QuSXRlbSAvPiBtdXN0IGhhdmUgYSB2YWx1ZSBwcm9wIHRoYXQgaXMgbm90IGFuIGVtcHR5IHN0cmluZy4gVGhpcyBpcyBiZWNhdXNlIHRoZSBTZWxlY3QgdmFsdWUgY2FuIGJlIHNldCB0byBhbiBlbXB0eSBzdHJpbmcgdG8gY2xlYXIgdGhlIHNlbGVjdGlvbiBhbmQgc2hvdyB0aGUgcGxhY2Vob2xkZXIuJyk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdEl0ZW1Db250ZXh0UHJvdmlkZXIsIHtcbiAgICAgICAgc2NvcGU6IF9fc2NvcGVTZWxlY3QsXG4gICAgICAgIHZhbHVlOiB2YWx1ZSxcbiAgICAgICAgZGlzYWJsZWQ6IGRpc2FibGVkLFxuICAgICAgICB0ZXh0SWQ6IHRleHRJZCxcbiAgICAgICAgaXNTZWxlY3RlZDogaXNTZWxlY3RlZCxcbiAgICAgICAgb25JdGVtVGV4dENoYW5nZTogJDAxYjljJHVzZUNhbGxiYWNrKChub2RlKT0+e1xuICAgICAgICAgICAgc2V0VGV4dFZhbHVlKChwcmV2VGV4dFZhbHVlKT0+e1xuICAgICAgICAgICAgICAgIHZhciBfbm9kZSR0ZXh0Q29udGVudDtcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJldlRleHRWYWx1ZSB8fCAoKF9ub2RlJHRleHRDb250ZW50ID0gbm9kZSA9PT0gbnVsbCB8fCBub2RlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBub2RlLnRleHRDb250ZW50KSAhPT0gbnVsbCAmJiBfbm9kZSR0ZXh0Q29udGVudCAhPT0gdm9pZCAwID8gX25vZGUkdGV4dENvbnRlbnQgOiAnJykudHJpbSgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIFtdKVxuICAgIH0sIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENvbGxlY3Rpb24uSXRlbVNsb3QsIHtcbiAgICAgICAgc2NvcGU6IF9fc2NvcGVTZWxlY3QsXG4gICAgICAgIHZhbHVlOiB2YWx1ZSxcbiAgICAgICAgZGlzYWJsZWQ6IGRpc2FibGVkLFxuICAgICAgICB0ZXh0VmFsdWU6IHRleHRWYWx1ZVxuICAgIH0sIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJDAxYjljJFByaW1pdGl2ZS5kaXYsICQwMWI5YyRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7XG4gICAgICAgIHJvbGU6IFwib3B0aW9uXCIsXG4gICAgICAgIFwiYXJpYS1sYWJlbGxlZGJ5XCI6IHRleHRJZCxcbiAgICAgICAgXCJkYXRhLWhpZ2hsaWdodGVkXCI6IGlzRm9jdXNlZCA/ICcnIDogdW5kZWZpbmVkIC8vIGBpc0ZvY3VzZWRgIGNhdmVhdCBmaXhlcyBzdHV0dGVyaW5nIGluIFZvaWNlT3ZlclxuICAgICAgICAsXG4gICAgICAgIFwiYXJpYS1zZWxlY3RlZFwiOiBpc1NlbGVjdGVkICYmIGlzRm9jdXNlZCxcbiAgICAgICAgXCJkYXRhLXN0YXRlXCI6IGlzU2VsZWN0ZWQgPyAnY2hlY2tlZCcgOiAndW5jaGVja2VkJyxcbiAgICAgICAgXCJhcmlhLWRpc2FibGVkXCI6IGRpc2FibGVkIHx8IHVuZGVmaW5lZCxcbiAgICAgICAgXCJkYXRhLWRpc2FibGVkXCI6IGRpc2FibGVkID8gJycgOiB1bmRlZmluZWQsXG4gICAgICAgIHRhYkluZGV4OiBkaXNhYmxlZCA/IHVuZGVmaW5lZCA6IC0xXG4gICAgfSwgaXRlbVByb3BzLCB7XG4gICAgICAgIHJlZjogY29tcG9zZWRSZWZzLFxuICAgICAgICBvbkZvY3VzOiAkMDFiOWMkY29tcG9zZUV2ZW50SGFuZGxlcnMoaXRlbVByb3BzLm9uRm9jdXMsICgpPT5zZXRJc0ZvY3VzZWQodHJ1ZSlcbiAgICAgICAgKSxcbiAgICAgICAgb25CbHVyOiAkMDFiOWMkY29tcG9zZUV2ZW50SGFuZGxlcnMoaXRlbVByb3BzLm9uQmx1ciwgKCk9PnNldElzRm9jdXNlZChmYWxzZSlcbiAgICAgICAgKSxcbiAgICAgICAgb25Qb2ludGVyVXA6ICQwMWI5YyRjb21wb3NlRXZlbnRIYW5kbGVycyhpdGVtUHJvcHMub25Qb2ludGVyVXAsIGhhbmRsZVNlbGVjdCksXG4gICAgICAgIG9uUG9pbnRlck1vdmU6ICQwMWI5YyRjb21wb3NlRXZlbnRIYW5kbGVycyhpdGVtUHJvcHMub25Qb2ludGVyTW92ZSwgKGV2ZW50KT0+e1xuICAgICAgICAgICAgaWYgKGRpc2FibGVkKSB7XG4gICAgICAgICAgICAgICAgdmFyIF9jb250ZW50Q29udGV4dCRvbkl0ZTtcbiAgICAgICAgICAgICAgICAoX2NvbnRlbnRDb250ZXh0JG9uSXRlID0gY29udGVudENvbnRleHQub25JdGVtTGVhdmUpID09PSBudWxsIHx8IF9jb250ZW50Q29udGV4dCRvbkl0ZSA9PT0gdm9pZCAwIHx8IF9jb250ZW50Q29udGV4dCRvbkl0ZS5jYWxsKGNvbnRlbnRDb250ZXh0KTtcbiAgICAgICAgICAgIH0gZWxzZSAvLyBldmVuIHRob3VnaCBzYWZhcmkgZG9lc24ndCBzdXBwb3J0IHRoaXMgb3B0aW9uLCBpdCdzIGFjY2VwdGFibGVcbiAgICAgICAgICAgIC8vIGFzIGl0IG9ubHkgbWVhbnMgaXQgbWlnaHQgc2Nyb2xsIGEgZmV3IHBpeGVscyB3aGVuIHVzaW5nIHRoZSBwb2ludGVyLlxuICAgICAgICAgICAgZXZlbnQuY3VycmVudFRhcmdldC5mb2N1cyh7XG4gICAgICAgICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pLFxuICAgICAgICBvblBvaW50ZXJMZWF2ZTogJDAxYjljJGNvbXBvc2VFdmVudEhhbmRsZXJzKGl0ZW1Qcm9wcy5vblBvaW50ZXJMZWF2ZSwgKGV2ZW50KT0+e1xuICAgICAgICAgICAgaWYgKGV2ZW50LmN1cnJlbnRUYXJnZXQgPT09IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICB2YXIgX2NvbnRlbnRDb250ZXh0JG9uSXRlMjtcbiAgICAgICAgICAgICAgICAoX2NvbnRlbnRDb250ZXh0JG9uSXRlMiA9IGNvbnRlbnRDb250ZXh0Lm9uSXRlbUxlYXZlKSA9PT0gbnVsbCB8fCBfY29udGVudENvbnRleHQkb25JdGUyID09PSB2b2lkIDAgfHwgX2NvbnRlbnRDb250ZXh0JG9uSXRlMi5jYWxsKGNvbnRlbnRDb250ZXh0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICAgIG9uS2V5RG93bjogJDAxYjljJGNvbXBvc2VFdmVudEhhbmRsZXJzKGl0ZW1Qcm9wcy5vbktleURvd24sIChldmVudCk9PntcbiAgICAgICAgICAgIHZhciBfY29udGVudENvbnRleHQkc2VhcmM7XG4gICAgICAgICAgICBjb25zdCBpc1R5cGluZ0FoZWFkID0gKChfY29udGVudENvbnRleHQkc2VhcmMgPSBjb250ZW50Q29udGV4dC5zZWFyY2hSZWYpID09PSBudWxsIHx8IF9jb250ZW50Q29udGV4dCRzZWFyYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2NvbnRlbnRDb250ZXh0JHNlYXJjLmN1cnJlbnQpICE9PSAnJztcbiAgICAgICAgICAgIGlmIChpc1R5cGluZ0FoZWFkICYmIGV2ZW50LmtleSA9PT0gJyAnKSByZXR1cm47XG4gICAgICAgICAgICBpZiAoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNFTEVDVElPTl9LRVlTLmluY2x1ZGVzKGV2ZW50LmtleSkpIGhhbmRsZVNlbGVjdCgpOyAvLyBwcmV2ZW50IHBhZ2Ugc2Nyb2xsIGlmIHVzaW5nIHRoZSBzcGFjZSBrZXkgdG8gc2VsZWN0IGFuIGl0ZW1cbiAgICAgICAgICAgIGlmIChldmVudC5rZXkgPT09ICcgJykgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfSlcbiAgICB9KSkpKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQxM2VmNDhhOTM0MjMwODk2LCB7XG4gICAgZGlzcGxheU5hbWU6ICRjYzdlMDVhNDU5MDBlNzNmJHZhciRJVEVNX05BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogU2VsZWN0SXRlbVRleHRcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJElURU1fVEVYVF9OQU1FID0gJ1NlbGVjdEl0ZW1UZXh0JztcbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQzNTcyZmIwZmI4MjFmZjQ5ID0gLyojX19QVVJFX18qLyAkMDFiOWMkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICAvLyBXZSBpZ25vcmUgYGNsYXNzTmFtZWAgYW5kIGBzdHlsZWAgYXMgdGhpcyBwYXJ0IHNob3VsZG4ndCBiZSBzdHlsZWQuXG4gICAgY29uc3QgeyBfX3Njb3BlU2VsZWN0OiBfX3Njb3BlU2VsZWN0ICwgY2xhc3NOYW1lOiBjbGFzc05hbWUgLCBzdHlsZTogc3R5bGUgLCAuLi5pdGVtVGV4dFByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBjb250ZXh0ID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdENvbnRleHQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJElURU1fVEVYVF9OQU1FLCBfX3Njb3BlU2VsZWN0KTtcbiAgICBjb25zdCBjb250ZW50Q29udGV4dCA9ICRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VTZWxlY3RDb250ZW50Q29udGV4dCgkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkSVRFTV9URVhUX05BTUUsIF9fc2NvcGVTZWxlY3QpO1xuICAgIGNvbnN0IGl0ZW1Db250ZXh0ID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdEl0ZW1Db250ZXh0KCRjYzdlMDVhNDU5MDBlNzNmJHZhciRJVEVNX1RFWFRfTkFNRSwgX19zY29wZVNlbGVjdCk7XG4gICAgY29uc3QgbmF0aXZlT3B0aW9uc0NvbnRleHQgPSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlU2VsZWN0TmF0aXZlT3B0aW9uc0NvbnRleHQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJElURU1fVEVYVF9OQU1FLCBfX3Njb3BlU2VsZWN0KTtcbiAgICBjb25zdCBbaXRlbVRleHROb2RlLCBzZXRJdGVtVGV4dE5vZGVdID0gJDAxYjljJHVzZVN0YXRlKG51bGwpO1xuICAgIGNvbnN0IGNvbXBvc2VkUmVmcyA9ICQwMWI5YyR1c2VDb21wb3NlZFJlZnMoZm9yd2FyZGVkUmVmLCAobm9kZSk9PnNldEl0ZW1UZXh0Tm9kZShub2RlKVxuICAgICwgaXRlbUNvbnRleHQub25JdGVtVGV4dENoYW5nZSwgKG5vZGUpPT57XG4gICAgICAgIHZhciBfY29udGVudENvbnRleHQkaXRlbVQ7XG4gICAgICAgIHJldHVybiAoX2NvbnRlbnRDb250ZXh0JGl0ZW1UID0gY29udGVudENvbnRleHQuaXRlbVRleHRSZWZDYWxsYmFjaykgPT09IG51bGwgfHwgX2NvbnRlbnRDb250ZXh0JGl0ZW1UID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfY29udGVudENvbnRleHQkaXRlbVQuY2FsbChjb250ZW50Q29udGV4dCwgbm9kZSwgaXRlbUNvbnRleHQudmFsdWUsIGl0ZW1Db250ZXh0LmRpc2FibGVkKTtcbiAgICB9KTtcbiAgICBjb25zdCB0ZXh0Q29udGVudCA9IGl0ZW1UZXh0Tm9kZSA9PT0gbnVsbCB8fCBpdGVtVGV4dE5vZGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGl0ZW1UZXh0Tm9kZS50ZXh0Q29udGVudDtcbiAgICBjb25zdCBuYXRpdmVPcHRpb24gPSAkMDFiOWMkdXNlTWVtbygoKT0+LyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlRWxlbWVudChcIm9wdGlvblwiLCB7XG4gICAgICAgICAgICBrZXk6IGl0ZW1Db250ZXh0LnZhbHVlLFxuICAgICAgICAgICAgdmFsdWU6IGl0ZW1Db250ZXh0LnZhbHVlLFxuICAgICAgICAgICAgZGlzYWJsZWQ6IGl0ZW1Db250ZXh0LmRpc2FibGVkXG4gICAgICAgIH0sIHRleHRDb250ZW50KVxuICAgICwgW1xuICAgICAgICBpdGVtQ29udGV4dC5kaXNhYmxlZCxcbiAgICAgICAgaXRlbUNvbnRleHQudmFsdWUsXG4gICAgICAgIHRleHRDb250ZW50XG4gICAgXSk7XG4gICAgY29uc3QgeyBvbk5hdGl2ZU9wdGlvbkFkZDogb25OYXRpdmVPcHRpb25BZGQgLCBvbk5hdGl2ZU9wdGlvblJlbW92ZTogb25OYXRpdmVPcHRpb25SZW1vdmUgIH0gPSBuYXRpdmVPcHRpb25zQ29udGV4dDtcbiAgICAkMDFiOWMkdXNlTGF5b3V0RWZmZWN0KCgpPT57XG4gICAgICAgIG9uTmF0aXZlT3B0aW9uQWRkKG5hdGl2ZU9wdGlvbik7XG4gICAgICAgIHJldHVybiAoKT0+b25OYXRpdmVPcHRpb25SZW1vdmUobmF0aXZlT3B0aW9uKVxuICAgICAgICA7XG4gICAgfSwgW1xuICAgICAgICBvbk5hdGl2ZU9wdGlvbkFkZCxcbiAgICAgICAgb25OYXRpdmVPcHRpb25SZW1vdmUsXG4gICAgICAgIG5hdGl2ZU9wdGlvblxuICAgIF0pO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICQwMWI5YyRjcmVhdGVFbGVtZW50KCQwMWI5YyRGcmFnbWVudCwgbnVsbCwgLyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlRWxlbWVudCgkMDFiOWMkUHJpbWl0aXZlLnNwYW4sICQwMWI5YyRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7XG4gICAgICAgIGlkOiBpdGVtQ29udGV4dC50ZXh0SWRcbiAgICB9LCBpdGVtVGV4dFByb3BzLCB7XG4gICAgICAgIHJlZjogY29tcG9zZWRSZWZzXG4gICAgfSkpLCBpdGVtQ29udGV4dC5pc1NlbGVjdGVkICYmIGNvbnRleHQudmFsdWVOb2RlICYmICFjb250ZXh0LnZhbHVlTm9kZUhhc0NoaWxkcmVuID8gLyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlUG9ydGFsKGl0ZW1UZXh0UHJvcHMuY2hpbGRyZW4sIGNvbnRleHQudmFsdWVOb2RlKSA6IG51bGwpO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDM1NzJmYjBmYjgyMWZmNDksIHtcbiAgICBkaXNwbGF5TmFtZTogJGNjN2UwNWE0NTkwMGU3M2YkdmFyJElURU1fVEVYVF9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFNlbGVjdEl0ZW1JbmRpY2F0b3JcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkdmFyJElURU1fSU5ESUNBVE9SX05BTUUgPSAnU2VsZWN0SXRlbUluZGljYXRvcic7XG5jb25zdCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkNmI5MTk4ZGUxOWFjY2ZlNiA9IC8qI19fUFVSRV9fKi8gJDAxYjljJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlU2VsZWN0OiBfX3Njb3BlU2VsZWN0ICwgLi4uaXRlbUluZGljYXRvclByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBpdGVtQ29udGV4dCA9ICRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VTZWxlY3RJdGVtQ29udGV4dCgkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkSVRFTV9JTkRJQ0FUT1JfTkFNRSwgX19zY29wZVNlbGVjdCk7XG4gICAgcmV0dXJuIGl0ZW1Db250ZXh0LmlzU2VsZWN0ZWQgPyAvKiNfX1BVUkVfXyovICQwMWI5YyRjcmVhdGVFbGVtZW50KCQwMWI5YyRQcmltaXRpdmUuc3BhbiwgJDAxYjljJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHtcbiAgICAgICAgXCJhcmlhLWhpZGRlblwiOiB0cnVlXG4gICAgfSwgaXRlbUluZGljYXRvclByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gICAgfSkpIDogbnVsbDtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQ2YjkxOThkZTE5YWNjZmU2LCB7XG4gICAgZGlzcGxheU5hbWU6ICRjYzdlMDVhNDU5MDBlNzNmJHZhciRJVEVNX0lORElDQVRPUl9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFNlbGVjdFNjcm9sbFVwQnV0dG9uXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJHZhciRTQ1JPTExfVVBfQlVUVE9OX05BTUUgPSAnU2VsZWN0U2Nyb2xsVXBCdXR0b24nO1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGQ4MTE3OTI3NjU4YWY2ZDcgPSAvKiNfX1BVUkVfXyovICQwMWI5YyRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IGNvbnRlbnRDb250ZXh0ID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdENvbnRlbnRDb250ZXh0KCRjYzdlMDVhNDU5MDBlNzNmJHZhciRTQ1JPTExfVVBfQlVUVE9OX05BTUUsIHByb3BzLl9fc2NvcGVTZWxlY3QpO1xuICAgIGNvbnN0IHZpZXdwb3J0Q29udGV4dCA9ICRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VTZWxlY3RWaWV3cG9ydENvbnRleHQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNDUk9MTF9VUF9CVVRUT05fTkFNRSwgcHJvcHMuX19zY29wZVNlbGVjdCk7XG4gICAgY29uc3QgW2NhblNjcm9sbFVwMSwgc2V0Q2FuU2Nyb2xsVXBdID0gJDAxYjljJHVzZVN0YXRlKGZhbHNlKTtcbiAgICBjb25zdCBjb21wb3NlZFJlZnMgPSAkMDFiOWMkdXNlQ29tcG9zZWRSZWZzKGZvcndhcmRlZFJlZiwgdmlld3BvcnRDb250ZXh0Lm9uU2Nyb2xsQnV0dG9uQ2hhbmdlKTtcbiAgICAkMDFiOWMkdXNlTGF5b3V0RWZmZWN0KCgpPT57XG4gICAgICAgIGlmIChjb250ZW50Q29udGV4dC52aWV3cG9ydCAmJiBjb250ZW50Q29udGV4dC5pc1Bvc2l0aW9uZWQpIHtcbiAgICAgICAgICAgIGNvbnN0IHZpZXdwb3J0ID0gY29udGVudENvbnRleHQudmlld3BvcnQ7XG4gICAgICAgICAgICBmdW5jdGlvbiBoYW5kbGVTY3JvbGwoKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2FuU2Nyb2xsVXAgPSB2aWV3cG9ydC5zY3JvbGxUb3AgPiAwO1xuICAgICAgICAgICAgICAgIHNldENhblNjcm9sbFVwKGNhblNjcm9sbFVwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGhhbmRsZVNjcm9sbCgpO1xuICAgICAgICAgICAgdmlld3BvcnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgaGFuZGxlU2Nyb2xsKTtcbiAgICAgICAgICAgIHJldHVybiAoKT0+dmlld3BvcnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgaGFuZGxlU2Nyb2xsKVxuICAgICAgICAgICAgO1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBjb250ZW50Q29udGV4dC52aWV3cG9ydCxcbiAgICAgICAgY29udGVudENvbnRleHQuaXNQb3NpdGlvbmVkXG4gICAgXSk7XG4gICAgcmV0dXJuIGNhblNjcm9sbFVwMSA/IC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdFNjcm9sbEJ1dHRvbkltcGwsICQwMWI5YyRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7fSwgcHJvcHMsIHtcbiAgICAgICAgcmVmOiBjb21wb3NlZFJlZnMsXG4gICAgICAgIG9uQXV0b1Njcm9sbDogKCk9PntcbiAgICAgICAgICAgIGNvbnN0IHsgdmlld3BvcnQ6IHZpZXdwb3J0ICwgc2VsZWN0ZWRJdGVtOiBzZWxlY3RlZEl0ZW0gIH0gPSBjb250ZW50Q29udGV4dDtcbiAgICAgICAgICAgIGlmICh2aWV3cG9ydCAmJiBzZWxlY3RlZEl0ZW0pIHZpZXdwb3J0LnNjcm9sbFRvcCA9IHZpZXdwb3J0LnNjcm9sbFRvcCAtIHNlbGVjdGVkSXRlbS5vZmZzZXRIZWlnaHQ7XG4gICAgICAgIH1cbiAgICB9KSkgOiBudWxsO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGQ4MTE3OTI3NjU4YWY2ZDcsIHtcbiAgICBkaXNwbGF5TmFtZTogJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNDUk9MTF9VUF9CVVRUT05fTkFNRVxufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBTZWxlY3RTY3JvbGxEb3duQnV0dG9uXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJHZhciRTQ1JPTExfRE9XTl9CVVRUT05fTkFNRSA9ICdTZWxlY3RTY3JvbGxEb3duQnV0dG9uJztcbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRmZjk1MWU0NzZjMTIxODkgPSAvKiNfX1BVUkVfXyovICQwMWI5YyRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IGNvbnRlbnRDb250ZXh0ID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdENvbnRlbnRDb250ZXh0KCRjYzdlMDVhNDU5MDBlNzNmJHZhciRTQ1JPTExfRE9XTl9CVVRUT05fTkFNRSwgcHJvcHMuX19zY29wZVNlbGVjdCk7XG4gICAgY29uc3Qgdmlld3BvcnRDb250ZXh0ID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdFZpZXdwb3J0Q29udGV4dCgkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU0NST0xMX0RPV05fQlVUVE9OX05BTUUsIHByb3BzLl9fc2NvcGVTZWxlY3QpO1xuICAgIGNvbnN0IFtjYW5TY3JvbGxEb3duMSwgc2V0Q2FuU2Nyb2xsRG93bl0gPSAkMDFiOWMkdXNlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IGNvbXBvc2VkUmVmcyA9ICQwMWI5YyR1c2VDb21wb3NlZFJlZnMoZm9yd2FyZGVkUmVmLCB2aWV3cG9ydENvbnRleHQub25TY3JvbGxCdXR0b25DaGFuZ2UpO1xuICAgICQwMWI5YyR1c2VMYXlvdXRFZmZlY3QoKCk9PntcbiAgICAgICAgaWYgKGNvbnRlbnRDb250ZXh0LnZpZXdwb3J0ICYmIGNvbnRlbnRDb250ZXh0LmlzUG9zaXRpb25lZCkge1xuICAgICAgICAgICAgY29uc3Qgdmlld3BvcnQgPSBjb250ZW50Q29udGV4dC52aWV3cG9ydDtcbiAgICAgICAgICAgIGZ1bmN0aW9uIGhhbmRsZVNjcm9sbCgpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBtYXhTY3JvbGwgPSB2aWV3cG9ydC5zY3JvbGxIZWlnaHQgLSB2aWV3cG9ydC5jbGllbnRIZWlnaHQ7IC8vIHdlIHVzZSBNYXRoLmNlaWwgaGVyZSBiZWNhdXNlIGlmIHRoZSBVSSBpcyB6b29tZWQtaW5cbiAgICAgICAgICAgICAgICAvLyBgc2Nyb2xsVG9wYCBpcyBub3QgYWx3YXlzIHJlcG9ydGVkIGFzIGFuIGludGVnZXJcbiAgICAgICAgICAgICAgICBjb25zdCBjYW5TY3JvbGxEb3duID0gTWF0aC5jZWlsKHZpZXdwb3J0LnNjcm9sbFRvcCkgPCBtYXhTY3JvbGw7XG4gICAgICAgICAgICAgICAgc2V0Q2FuU2Nyb2xsRG93bihjYW5TY3JvbGxEb3duKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGhhbmRsZVNjcm9sbCgpO1xuICAgICAgICAgICAgdmlld3BvcnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgaGFuZGxlU2Nyb2xsKTtcbiAgICAgICAgICAgIHJldHVybiAoKT0+dmlld3BvcnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgaGFuZGxlU2Nyb2xsKVxuICAgICAgICAgICAgO1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBjb250ZW50Q29udGV4dC52aWV3cG9ydCxcbiAgICAgICAgY29udGVudENvbnRleHQuaXNQb3NpdGlvbmVkXG4gICAgXSk7XG4gICAgcmV0dXJuIGNhblNjcm9sbERvd24xID8gLyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlRWxlbWVudCgkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0U2Nyb2xsQnV0dG9uSW1wbCwgJDAxYjljJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBwcm9wcywge1xuICAgICAgICByZWY6IGNvbXBvc2VkUmVmcyxcbiAgICAgICAgb25BdXRvU2Nyb2xsOiAoKT0+e1xuICAgICAgICAgICAgY29uc3QgeyB2aWV3cG9ydDogdmlld3BvcnQgLCBzZWxlY3RlZEl0ZW06IHNlbGVjdGVkSXRlbSAgfSA9IGNvbnRlbnRDb250ZXh0O1xuICAgICAgICAgICAgaWYgKHZpZXdwb3J0ICYmIHNlbGVjdGVkSXRlbSkgdmlld3BvcnQuc2Nyb2xsVG9wID0gdmlld3BvcnQuc2Nyb2xsVG9wICsgc2VsZWN0ZWRJdGVtLm9mZnNldEhlaWdodDtcbiAgICAgICAgfVxuICAgIH0pKSA6IG51bGw7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkZmY5NTFlNDc2YzEyMTg5LCB7XG4gICAgZGlzcGxheU5hbWU6ICRjYzdlMDVhNDU5MDBlNzNmJHZhciRTQ1JPTExfRE9XTl9CVVRUT05fTkFNRVxufSk7XG5jb25zdCAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0U2Nyb2xsQnV0dG9uSW1wbCA9IC8qI19fUFVSRV9fKi8gJDAxYjljJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlU2VsZWN0OiBfX3Njb3BlU2VsZWN0ICwgb25BdXRvU2Nyb2xsOiBvbkF1dG9TY3JvbGwgLCAuLi5zY3JvbGxJbmRpY2F0b3JQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgY29udGVudENvbnRleHQgPSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlU2VsZWN0Q29udGVudENvbnRleHQoJ1NlbGVjdFNjcm9sbEJ1dHRvbicsIF9fc2NvcGVTZWxlY3QpO1xuICAgIGNvbnN0IGF1dG9TY3JvbGxUaW1lclJlZiA9ICQwMWI5YyR1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgZ2V0SXRlbXMgPSAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlQ29sbGVjdGlvbihfX3Njb3BlU2VsZWN0KTtcbiAgICBjb25zdCBjbGVhckF1dG9TY3JvbGxUaW1lciA9ICQwMWI5YyR1c2VDYWxsYmFjaygoKT0+e1xuICAgICAgICBpZiAoYXV0b1Njcm9sbFRpbWVyUmVmLmN1cnJlbnQgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHdpbmRvdy5jbGVhckludGVydmFsKGF1dG9TY3JvbGxUaW1lclJlZi5jdXJyZW50KTtcbiAgICAgICAgICAgIGF1dG9TY3JvbGxUaW1lclJlZi5jdXJyZW50ID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH0sIFtdKTtcbiAgICAkMDFiOWMkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIHJldHVybiAoKT0+Y2xlYXJBdXRvU2Nyb2xsVGltZXIoKVxuICAgICAgICA7XG4gICAgfSwgW1xuICAgICAgICBjbGVhckF1dG9TY3JvbGxUaW1lclxuICAgIF0pOyAvLyBXaGVuIHRoZSB2aWV3cG9ydCBiZWNvbWVzIHNjcm9sbGFibGUgb24gZWl0aGVyIHNpZGUsIHRoZSByZWxldmFudCBzY3JvbGwgYnV0dG9uIHdpbGwgbW91bnQuXG4gICAgLy8gQmVjYXVzZSBpdCBpcyBwYXJ0IG9mIHRoZSBub3JtYWwgZmxvdywgaXQgd2lsbCBwdXNoIGRvd24gKHRvcCBidXR0b24pIG9yIHNocmluayAoYm90dG9tIGJ1dHRvbilcbiAgICAvLyB0aGUgdmlld3BvcnQsIHBvdGVudGlhbGx5IGNhdXNpbmcgdGhlIGFjdGl2ZSBpdGVtIHRvIG5vdyBiZSBwYXJ0aWFsbHkgb3V0IG9mIHZpZXcuXG4gICAgLy8gV2UgcmUtcnVuIHRoZSBgc2Nyb2xsSW50b1ZpZXdgIGxvZ2ljIHRvIG1ha2Ugc3VyZSBpdCBzdGF5cyB3aXRoaW4gdGhlIHZpZXdwb3J0LlxuICAgICQwMWI5YyR1c2VMYXlvdXRFZmZlY3QoKCk9PntcbiAgICAgICAgdmFyIF9hY3RpdmVJdGVtJHJlZiRjdXJyZTtcbiAgICAgICAgY29uc3QgYWN0aXZlSXRlbSA9IGdldEl0ZW1zKCkuZmluZCgoaXRlbSk9Pml0ZW0ucmVmLmN1cnJlbnQgPT09IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnRcbiAgICAgICAgKTtcbiAgICAgICAgYWN0aXZlSXRlbSA9PT0gbnVsbCB8fCBhY3RpdmVJdGVtID09PSB2b2lkIDAgfHwgKF9hY3RpdmVJdGVtJHJlZiRjdXJyZSA9IGFjdGl2ZUl0ZW0ucmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hY3RpdmVJdGVtJHJlZiRjdXJyZSA9PT0gdm9pZCAwIHx8IF9hY3RpdmVJdGVtJHJlZiRjdXJyZS5zY3JvbGxJbnRvVmlldyh7XG4gICAgICAgICAgICBibG9jazogJ25lYXJlc3QnXG4gICAgICAgIH0pO1xuICAgIH0sIFtcbiAgICAgICAgZ2V0SXRlbXNcbiAgICBdKTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlRWxlbWVudCgkMDFiOWMkUHJpbWl0aXZlLmRpdiwgJDAxYjljJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHtcbiAgICAgICAgXCJhcmlhLWhpZGRlblwiOiB0cnVlXG4gICAgfSwgc2Nyb2xsSW5kaWNhdG9yUHJvcHMsIHtcbiAgICAgICAgcmVmOiBmb3J3YXJkZWRSZWYsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICBmbGV4U2hyaW5rOiAwLFxuICAgICAgICAgICAgLi4uc2Nyb2xsSW5kaWNhdG9yUHJvcHMuc3R5bGVcbiAgICAgICAgfSxcbiAgICAgICAgb25Qb2ludGVyRG93bjogJDAxYjljJGNvbXBvc2VFdmVudEhhbmRsZXJzKHNjcm9sbEluZGljYXRvclByb3BzLm9uUG9pbnRlckRvd24sICgpPT57XG4gICAgICAgICAgICBpZiAoYXV0b1Njcm9sbFRpbWVyUmVmLmN1cnJlbnQgPT09IG51bGwpIGF1dG9TY3JvbGxUaW1lclJlZi5jdXJyZW50ID0gd2luZG93LnNldEludGVydmFsKG9uQXV0b1Njcm9sbCwgNTApO1xuICAgICAgICB9KSxcbiAgICAgICAgb25Qb2ludGVyTW92ZTogJDAxYjljJGNvbXBvc2VFdmVudEhhbmRsZXJzKHNjcm9sbEluZGljYXRvclByb3BzLm9uUG9pbnRlck1vdmUsICgpPT57XG4gICAgICAgICAgICB2YXIgX2NvbnRlbnRDb250ZXh0JG9uSXRlMztcbiAgICAgICAgICAgIChfY29udGVudENvbnRleHQkb25JdGUzID0gY29udGVudENvbnRleHQub25JdGVtTGVhdmUpID09PSBudWxsIHx8IF9jb250ZW50Q29udGV4dCRvbkl0ZTMgPT09IHZvaWQgMCB8fCBfY29udGVudENvbnRleHQkb25JdGUzLmNhbGwoY29udGVudENvbnRleHQpO1xuICAgICAgICAgICAgaWYgKGF1dG9TY3JvbGxUaW1lclJlZi5jdXJyZW50ID09PSBudWxsKSBhdXRvU2Nyb2xsVGltZXJSZWYuY3VycmVudCA9IHdpbmRvdy5zZXRJbnRlcnZhbChvbkF1dG9TY3JvbGwsIDUwKTtcbiAgICAgICAgfSksXG4gICAgICAgIG9uUG9pbnRlckxlYXZlOiAkMDFiOWMkY29tcG9zZUV2ZW50SGFuZGxlcnMoc2Nyb2xsSW5kaWNhdG9yUHJvcHMub25Qb2ludGVyTGVhdmUsICgpPT57XG4gICAgICAgICAgICBjbGVhckF1dG9TY3JvbGxUaW1lcigpO1xuICAgICAgICB9KVxuICAgIH0pKTtcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogU2VsZWN0U2VwYXJhdG9yXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJHZhciRTRVBBUkFUT1JfTkFNRSA9ICdTZWxlY3RTZXBhcmF0b3InO1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGViYTRiMWRmMDdjYjFkMyA9IC8qI19fUFVSRV9fKi8gJDAxYjljJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlU2VsZWN0OiBfX3Njb3BlU2VsZWN0ICwgLi4uc2VwYXJhdG9yUHJvcHMgfSA9IHByb3BzO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICQwMWI5YyRjcmVhdGVFbGVtZW50KCQwMWI5YyRQcmltaXRpdmUuZGl2LCAkMDFiOWMkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe1xuICAgICAgICBcImFyaWEtaGlkZGVuXCI6IHRydWVcbiAgICB9LCBzZXBhcmF0b3JQcm9wcywge1xuICAgICAgICByZWY6IGZvcndhcmRlZFJlZlxuICAgIH0pKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRlYmE0YjFkZjA3Y2IxZDMsIHtcbiAgICBkaXNwbGF5TmFtZTogJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNFUEFSQVRPUl9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFNlbGVjdEFycm93XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJHZhciRBUlJPV19OQU1FID0gJ1NlbGVjdEFycm93JztcbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQzMTRmNGNiOGY4MDk5NjI4ID0gLyojX19QVVJFX18qLyAkMDFiOWMkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICBjb25zdCB7IF9fc2NvcGVTZWxlY3Q6IF9fc2NvcGVTZWxlY3QgLCAuLi5hcnJvd1Byb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBwb3BwZXJTY29wZSA9ICRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VQb3BwZXJTY29wZShfX3Njb3BlU2VsZWN0KTtcbiAgICBjb25zdCBjb250ZXh0ID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdENvbnRleHQoJGNjN2UwNWE0NTkwMGU3M2YkdmFyJEFSUk9XX05BTUUsIF9fc2NvcGVTZWxlY3QpO1xuICAgIGNvbnN0IGNvbnRlbnRDb250ZXh0ID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdENvbnRlbnRDb250ZXh0KCRjYzdlMDVhNDU5MDBlNzNmJHZhciRBUlJPV19OQU1FLCBfX3Njb3BlU2VsZWN0KTtcbiAgICByZXR1cm4gY29udGV4dC5vcGVuICYmIGNvbnRlbnRDb250ZXh0LnBvc2l0aW9uID09PSAncG9wcGVyJyA/IC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoJDAxYjljJEFycm93LCAkMDFiOWMkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIHBvcHBlclNjb3BlLCBhcnJvd1Byb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gICAgfSkpIDogbnVsbDtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQzMTRmNGNiOGY4MDk5NjI4LCB7XG4gICAgZGlzcGxheU5hbWU6ICRjYzdlMDVhNDU5MDBlNzNmJHZhciRBUlJPV19OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gZnVuY3Rpb24gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHNob3VsZFNob3dQbGFjZWhvbGRlcih2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZSA9PT0gJycgfHwgdmFsdWUgPT09IHVuZGVmaW5lZDtcbn1cbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJHZhciRCdWJibGVTZWxlY3QgPSAvKiNfX1BVUkVfXyovICQwMWI5YyRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgdmFsdWU6IHZhbHVlICwgLi4uc2VsZWN0UHJvcHMgfSA9IHByb3BzO1xuICAgIGNvbnN0IHJlZiA9ICQwMWI5YyR1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgY29tcG9zZWRSZWZzID0gJDAxYjljJHVzZUNvbXBvc2VkUmVmcyhmb3J3YXJkZWRSZWYsIHJlZik7XG4gICAgY29uc3QgcHJldlZhbHVlID0gJDAxYjljJHVzZVByZXZpb3VzKHZhbHVlKTsgLy8gQnViYmxlIHZhbHVlIGNoYW5nZSB0byBwYXJlbnRzIChlLmcgZm9ybSBjaGFuZ2UgZXZlbnQpXG4gICAgJDAxYjljJHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBjb25zdCBzZWxlY3QgPSByZWYuY3VycmVudDtcbiAgICAgICAgY29uc3Qgc2VsZWN0UHJvdG8gPSB3aW5kb3cuSFRNTFNlbGVjdEVsZW1lbnQucHJvdG90eXBlO1xuICAgICAgICBjb25zdCBkZXNjcmlwdG9yID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihzZWxlY3RQcm90bywgJ3ZhbHVlJyk7XG4gICAgICAgIGNvbnN0IHNldFZhbHVlID0gZGVzY3JpcHRvci5zZXQ7XG4gICAgICAgIGlmIChwcmV2VmFsdWUgIT09IHZhbHVlICYmIHNldFZhbHVlKSB7XG4gICAgICAgICAgICBjb25zdCBldmVudCA9IG5ldyBFdmVudCgnY2hhbmdlJywge1xuICAgICAgICAgICAgICAgIGJ1YmJsZXM6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgc2V0VmFsdWUuY2FsbChzZWxlY3QsIHZhbHVlKTtcbiAgICAgICAgICAgIHNlbGVjdC5kaXNwYXRjaEV2ZW50KGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH0sIFtcbiAgICAgICAgcHJldlZhbHVlLFxuICAgICAgICB2YWx1ZVxuICAgIF0pO1xuICAgIC8qKlxuICAgKiBXZSBwdXJwb3NlZnVsbHkgdXNlIGEgYHNlbGVjdGAgaGVyZSB0byBzdXBwb3J0IGZvcm0gYXV0b2ZpbGwgYXMgbXVjaFxuICAgKiBhcyBwb3NzaWJsZS5cbiAgICpcbiAgICogV2UgcHVycG9zZWZ1bGx5IGRvIG5vdCBhZGQgdGhlIGB2YWx1ZWAgYXR0cmlidXRlIGhlcmUgdG8gYWxsb3cgdGhlIHZhbHVlXG4gICAqIHRvIGJlIHNldCBwcm9ncmFtYXRpY2FsbHkgYW5kIGJ1YmJsZSB0byBhbnkgcGFyZW50IGZvcm0gYG9uQ2hhbmdlYCBldmVudC5cbiAgICogQWRkaW5nIHRoZSBgdmFsdWVgIHdpbGwgY2F1c2UgUmVhY3QgdG8gY29uc2lkZXIgdGhlIHByb2dyYW1hdGljXG4gICAqIGRpc3BhdGNoIGEgZHVwbGljYXRlIGFuZCBpdCB3aWxsIGdldCBzd2FsbG93ZWQuXG4gICAqXG4gICAqIFdlIHVzZSBgVmlzdWFsbHlIaWRkZW5gIHJhdGhlciB0aGFuIGBkaXNwbGF5OiBcIm5vbmVcImAgYmVjYXVzZSBTYWZhcmkgYXV0b2ZpbGxcbiAgICogd29uJ3Qgd29yayBvdGhlcndpc2UuXG4gICAqLyByZXR1cm4gLyojX19QVVJFX18qLyAkMDFiOWMkY3JlYXRlRWxlbWVudCgkMDFiOWMkVmlzdWFsbHlIaWRkZW4sIHtcbiAgICAgICAgYXNDaGlsZDogdHJ1ZVxuICAgIH0sIC8qI19fUFVSRV9fKi8gJDAxYjljJGNyZWF0ZUVsZW1lbnQoXCJzZWxlY3RcIiwgJDAxYjljJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBzZWxlY3RQcm9wcywge1xuICAgICAgICByZWY6IGNvbXBvc2VkUmVmcyxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiB2YWx1ZVxuICAgIH0pKSk7XG59KTtcbiRjYzdlMDVhNDU5MDBlNzNmJHZhciRCdWJibGVTZWxlY3QuZGlzcGxheU5hbWUgPSAnQnViYmxlU2VsZWN0JztcbmZ1bmN0aW9uICRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VUeXBlYWhlYWRTZWFyY2gob25TZWFyY2hDaGFuZ2UpIHtcbiAgICBjb25zdCBoYW5kbGVTZWFyY2hDaGFuZ2UgPSAkMDFiOWMkdXNlQ2FsbGJhY2tSZWYob25TZWFyY2hDaGFuZ2UpO1xuICAgIGNvbnN0IHNlYXJjaFJlZiA9ICQwMWI5YyR1c2VSZWYoJycpO1xuICAgIGNvbnN0IHRpbWVyUmVmID0gJDAxYjljJHVzZVJlZigwKTtcbiAgICBjb25zdCBoYW5kbGVUeXBlYWhlYWRTZWFyY2ggPSAkMDFiOWMkdXNlQ2FsbGJhY2soKGtleSk9PntcbiAgICAgICAgY29uc3Qgc2VhcmNoID0gc2VhcmNoUmVmLmN1cnJlbnQgKyBrZXk7XG4gICAgICAgIGhhbmRsZVNlYXJjaENoYW5nZShzZWFyY2gpO1xuICAgICAgICAoZnVuY3Rpb24gdXBkYXRlU2VhcmNoKHZhbHVlKSB7XG4gICAgICAgICAgICBzZWFyY2hSZWYuY3VycmVudCA9IHZhbHVlO1xuICAgICAgICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aW1lclJlZi5jdXJyZW50KTsgLy8gUmVzZXQgYHNlYXJjaFJlZmAgMSBzZWNvbmQgYWZ0ZXIgaXQgd2FzIGxhc3QgdXBkYXRlZFxuICAgICAgICAgICAgaWYgKHZhbHVlICE9PSAnJykgdGltZXJSZWYuY3VycmVudCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpPT51cGRhdGVTZWFyY2goJycpXG4gICAgICAgICAgICAsIDEwMDApO1xuICAgICAgICB9KShzZWFyY2gpO1xuICAgIH0sIFtcbiAgICAgICAgaGFuZGxlU2VhcmNoQ2hhbmdlXG4gICAgXSk7XG4gICAgY29uc3QgcmVzZXRUeXBlYWhlYWQgPSAkMDFiOWMkdXNlQ2FsbGJhY2soKCk9PntcbiAgICAgICAgc2VhcmNoUmVmLmN1cnJlbnQgPSAnJztcbiAgICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aW1lclJlZi5jdXJyZW50KTtcbiAgICB9LCBbXSk7XG4gICAgJDAxYjljJHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICByZXR1cm4gKCk9PndpbmRvdy5jbGVhclRpbWVvdXQodGltZXJSZWYuY3VycmVudClcbiAgICAgICAgO1xuICAgIH0sIFtdKTtcbiAgICByZXR1cm4gW1xuICAgICAgICBzZWFyY2hSZWYsXG4gICAgICAgIGhhbmRsZVR5cGVhaGVhZFNlYXJjaCxcbiAgICAgICAgcmVzZXRUeXBlYWhlYWRcbiAgICBdO1xufVxuLyoqXG4gKiBUaGlzIGlzIHRoZSBcIm1lYXRcIiBvZiB0aGUgdHlwZWFoZWFkIG1hdGNoaW5nIGxvZ2ljLiBJdCB0YWtlcyBpbiBhIGxpc3Qgb2YgaXRlbXMsXG4gKiB0aGUgc2VhcmNoIGFuZCB0aGUgY3VycmVudCBpdGVtLCBhbmQgcmV0dXJucyB0aGUgbmV4dCBpdGVtIChvciBgdW5kZWZpbmVkYCkuXG4gKlxuICogV2Ugbm9ybWFsaXplIHRoZSBzZWFyY2ggYmVjYXVzZSBpZiBhIHVzZXIgaGFzIHJlcGVhdGVkbHkgcHJlc3NlZCBhIGNoYXJhY3RlcixcbiAqIHdlIHdhbnQgdGhlIGV4YWN0IHNhbWUgYmVoYXZpb3IgYXMgaWYgd2Ugb25seSBoYWQgdGhhdCBvbmUgY2hhcmFjdGVyXG4gKiAoaWUuIGN5Y2xlIHRocm91Z2ggaXRlbXMgc3RhcnRpbmcgd2l0aCB0aGF0IGNoYXJhY3RlcilcbiAqXG4gKiBXZSBhbHNvIHJlb3JkZXIgdGhlIGl0ZW1zIGJ5IHdyYXBwaW5nIHRoZSBhcnJheSBhcm91bmQgdGhlIGN1cnJlbnQgaXRlbS5cbiAqIFRoaXMgaXMgc28gd2UgYWx3YXlzIGxvb2sgZm9yd2FyZCBmcm9tIHRoZSBjdXJyZW50IGl0ZW0sIGFuZCBwaWNraW5nIHRoZSBmaXJzdFxuICogaXRlbSB3aWxsIGFsd2F5cyBiZSB0aGUgY29ycmVjdCBvbmUuXG4gKlxuICogRmluYWxseSwgaWYgdGhlIG5vcm1hbGl6ZWQgc2VhcmNoIGlzIGV4YWN0bHkgb25lIGNoYXJhY3Rlciwgd2UgZXhjbHVkZSB0aGVcbiAqIGN1cnJlbnQgaXRlbSBmcm9tIHRoZSB2YWx1ZXMgYmVjYXVzZSBvdGhlcndpc2UgaXQgd291bGQgYmUgdGhlIGZpcnN0IHRvIG1hdGNoIGFsd2F5c1xuICogYW5kIGZvY3VzIHdvdWxkIG5ldmVyIG1vdmUuIFRoaXMgaXMgYXMgb3Bwb3NlZCB0byB0aGUgcmVndWxhciBjYXNlLCB3aGVyZSB3ZVxuICogZG9uJ3Qgd2FudCBmb2N1cyB0byBtb3ZlIGlmIHRoZSBjdXJyZW50IGl0ZW0gc3RpbGwgbWF0Y2hlcy5cbiAqLyBmdW5jdGlvbiAkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkZmluZE5leHRJdGVtKGl0ZW1zLCBzZWFyY2gsIGN1cnJlbnRJdGVtKSB7XG4gICAgY29uc3QgaXNSZXBlYXRlZCA9IHNlYXJjaC5sZW5ndGggPiAxICYmIEFycmF5LmZyb20oc2VhcmNoKS5ldmVyeSgoY2hhcik9PmNoYXIgPT09IHNlYXJjaFswXVxuICAgICk7XG4gICAgY29uc3Qgbm9ybWFsaXplZFNlYXJjaCA9IGlzUmVwZWF0ZWQgPyBzZWFyY2hbMF0gOiBzZWFyY2g7XG4gICAgY29uc3QgY3VycmVudEl0ZW1JbmRleCA9IGN1cnJlbnRJdGVtID8gaXRlbXMuaW5kZXhPZihjdXJyZW50SXRlbSkgOiAtMTtcbiAgICBsZXQgd3JhcHBlZEl0ZW1zID0gJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHdyYXBBcnJheShpdGVtcywgTWF0aC5tYXgoY3VycmVudEl0ZW1JbmRleCwgMCkpO1xuICAgIGNvbnN0IGV4Y2x1ZGVDdXJyZW50SXRlbSA9IG5vcm1hbGl6ZWRTZWFyY2gubGVuZ3RoID09PSAxO1xuICAgIGlmIChleGNsdWRlQ3VycmVudEl0ZW0pIHdyYXBwZWRJdGVtcyA9IHdyYXBwZWRJdGVtcy5maWx0ZXIoKHYpPT52ICE9PSBjdXJyZW50SXRlbVxuICAgICk7XG4gICAgY29uc3QgbmV4dEl0ZW0gPSB3cmFwcGVkSXRlbXMuZmluZCgoaXRlbSk9Pml0ZW0udGV4dFZhbHVlLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aChub3JtYWxpemVkU2VhcmNoLnRvTG93ZXJDYXNlKCkpXG4gICAgKTtcbiAgICByZXR1cm4gbmV4dEl0ZW0gIT09IGN1cnJlbnRJdGVtID8gbmV4dEl0ZW0gOiB1bmRlZmluZWQ7XG59XG4vKipcbiAqIFdyYXBzIGFuIGFycmF5IGFyb3VuZCBpdHNlbGYgYXQgYSBnaXZlbiBzdGFydCBpbmRleFxuICogRXhhbXBsZTogYHdyYXBBcnJheShbJ2EnLCAnYicsICdjJywgJ2QnXSwgMikgPT09IFsnYycsICdkJywgJ2EnLCAnYiddYFxuICovIGZ1bmN0aW9uICRjYzdlMDVhNDU5MDBlNzNmJHZhciR3cmFwQXJyYXkoYXJyYXksIHN0YXJ0SW5kZXgpIHtcbiAgICByZXR1cm4gYXJyYXkubWFwKChfLCBpbmRleCk9PmFycmF5WyhzdGFydEluZGV4ICsgaW5kZXgpICUgYXJyYXkubGVuZ3RoXVxuICAgICk7XG59XG5jb25zdCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSA9ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRlZjliMWE1OWU1OTIyODhmO1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDQxZmI5ZjA2MTcxYzc1ZjQgPSAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkM2FjMWU4OGExYzBiOWYxO1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDRjOGQxYTU3YTc2MWVmOTQgPSAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkZTI4ODczMWZkNzEyNjRmMDtcbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRmMDRhNjEyOThhNDdhNDBmID0gJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDk5YjQwMGNhYmI1OGM1MTU7XG5jb25zdCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkNjAyZWFjMTg1ODI2NDgyYyA9ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRiMmFmNmM5OTQ0Mjk2MjEzO1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDdjNmUyYzAyMTU3YmI3ZDIgPSAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkYzk3M2E0YjNjYjg2YTAzZDtcbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRkNWM2YzA4ZGMyZDNjYTcgPSAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkOWVkNmU3YjQwMjQ4ZDM2ZDtcbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRlYjJmY2ZkYmQ3YmE5N2Q0ID0gJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGVlMjVhMzM0YzU1ZGUxZjQ7XG5jb25zdCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkYjA0YmUyOWFhMjAxZDRmNSA9ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRmNjczMzhkMjliZDk3MmY4O1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDZkMDg3NzNkMmU2NmY4ZjIgPSAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkMTNlZjQ4YTkzNDIzMDg5NjtcbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRkNmU1YmY5YzQzZWE5MzE5ID0gJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDM1NzJmYjBmYjgyMWZmNDk7XG5jb25zdCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkYzM0NjhlMjcxNGQxNzVmYSA9ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQ2YjkxOThkZTE5YWNjZmU2O1xuY29uc3QgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDJmNjBkM2VjOWFkNDY4ZjIgPSAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkZDgxMTc5Mjc2NThhZjZkNztcbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRiZjFhZWRjMzAzOWM4ZDYzID0gJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGZmOTUxZTQ3NmMxMjE4OTtcbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQxZmYzYzNmMDhhZTk2M2MwID0gJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGViYTRiMWRmMDdjYjFkMztcbmNvbnN0ICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQyMWIwN2M4ZjI3NGFlYmQ1ID0gJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDMxNGY0Y2I4ZjgwOTk2Mjg7XG5cblxuXG5cbmV4cG9ydCB7JGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDI4NjcyN2E3NWRjMDM5YmQgYXMgY3JlYXRlU2VsZWN0U2NvcGUsICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRlZjliMWE1OWU1OTIyODhmIGFzIFNlbGVjdCwgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDNhYzFlODhhMWMwYjlmMSBhcyBTZWxlY3RUcmlnZ2VyLCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkZTI4ODczMWZkNzEyNjRmMCBhcyBTZWxlY3RWYWx1ZSwgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDk5YjQwMGNhYmI1OGM1MTUgYXMgU2VsZWN0SWNvbiwgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGIyYWY2Yzk5NDQyOTYyMTMgYXMgU2VsZWN0UG9ydGFsLCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkYzk3M2E0YjNjYjg2YTAzZCBhcyBTZWxlY3RDb250ZW50LCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkOWVkNmU3YjQwMjQ4ZDM2ZCBhcyBTZWxlY3RWaWV3cG9ydCwgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGVlMjVhMzM0YzU1ZGUxZjQgYXMgU2VsZWN0R3JvdXAsICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRmNjczMzhkMjliZDk3MmY4IGFzIFNlbGVjdExhYmVsLCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkMTNlZjQ4YTkzNDIzMDg5NiBhcyBTZWxlY3RJdGVtLCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkMzU3MmZiMGZiODIxZmY0OSBhcyBTZWxlY3RJdGVtVGV4dCwgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDZiOTE5OGRlMTlhY2NmZTYgYXMgU2VsZWN0SXRlbUluZGljYXRvciwgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGQ4MTE3OTI3NjU4YWY2ZDcgYXMgU2VsZWN0U2Nyb2xsVXBCdXR0b24sICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRmZjk1MWU0NzZjMTIxODkgYXMgU2VsZWN0U2Nyb2xsRG93bkJ1dHRvbiwgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGViYTRiMWRmMDdjYjFkMyBhcyBTZWxlY3RTZXBhcmF0b3IsICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQzMTRmNGNiOGY4MDk5NjI4IGFzIFNlbGVjdEFycm93LCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSBhcyBSb290LCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkNDFmYjlmMDYxNzFjNzVmNCBhcyBUcmlnZ2VyLCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkNGM4ZDFhNTdhNzYxZWY5NCBhcyBWYWx1ZSwgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGYwNGE2MTI5OGE0N2E0MGYgYXMgSWNvbiwgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDYwMmVhYzE4NTgyNjQ4MmMgYXMgUG9ydGFsLCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkN2M2ZTJjMDIxNTdiYjdkMiBhcyBDb250ZW50LCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkZDVjNmMwOGRjMmQzY2E3IGFzIFZpZXdwb3J0LCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkZWIyZmNmZGJkN2JhOTdkNCBhcyBHcm91cCwgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGIwNGJlMjlhYTIwMWQ0ZjUgYXMgTGFiZWwsICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQ2ZDA4NzczZDJlNjZmOGYyIGFzIEl0ZW0sICRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRkNmU1YmY5YzQzZWE5MzE5IGFzIEl0ZW1UZXh0LCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkYzM0NjhlMjcxNGQxNzVmYSBhcyBJdGVtSW5kaWNhdG9yLCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkMmY2MGQzZWM5YWQ0NjhmMiBhcyBTY3JvbGxVcEJ1dHRvbiwgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGJmMWFlZGMzMDM5YzhkNjMgYXMgU2Nyb2xsRG93bkJ1dHRvbiwgJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDFmZjNjM2YwOGFlOTYzYzAgYXMgU2VwYXJhdG9yLCAkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkMjFiMDdjOGYyNzRhZWJkNSBhcyBBcnJvd307XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5tanMubWFwXG4iXSwibmFtZXMiOlsiJDAxYjljJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIiwidXNlU3RhdGUiLCIkMDFiOWMkdXNlU3RhdGUiLCJ1c2VSZWYiLCIkMDFiOWMkdXNlUmVmIiwiY3JlYXRlRWxlbWVudCIsIiQwMWI5YyRjcmVhdGVFbGVtZW50IiwidXNlQ2FsbGJhY2siLCIkMDFiOWMkdXNlQ2FsbGJhY2siLCJmb3J3YXJkUmVmIiwiJDAxYjljJGZvcndhcmRSZWYiLCJGcmFnbWVudCIsIiQwMWI5YyRGcmFnbWVudCIsInVzZUVmZmVjdCIsIiQwMWI5YyR1c2VFZmZlY3QiLCJ1c2VNZW1vIiwiJDAxYjljJHVzZU1lbW8iLCJjcmVhdGVQb3J0YWwiLCIkMDFiOWMkY3JlYXRlUG9ydGFsIiwiY2xhbXAiLCIkMDFiOWMkY2xhbXAiLCJjb21wb3NlRXZlbnRIYW5kbGVycyIsIiQwMWI5YyRjb21wb3NlRXZlbnRIYW5kbGVycyIsImNyZWF0ZUNvbGxlY3Rpb24iLCIkMDFiOWMkY3JlYXRlQ29sbGVjdGlvbiIsInVzZUNvbXBvc2VkUmVmcyIsIiQwMWI5YyR1c2VDb21wb3NlZFJlZnMiLCJjcmVhdGVDb250ZXh0U2NvcGUiLCIkMDFiOWMkY3JlYXRlQ29udGV4dFNjb3BlIiwidXNlRGlyZWN0aW9uIiwiJDAxYjljJHVzZURpcmVjdGlvbiIsIkRpc21pc3NhYmxlTGF5ZXIiLCIkMDFiOWMkRGlzbWlzc2FibGVMYXllciIsInVzZUZvY3VzR3VhcmRzIiwiJDAxYjljJHVzZUZvY3VzR3VhcmRzIiwiRm9jdXNTY29wZSIsIiQwMWI5YyRGb2N1c1Njb3BlIiwidXNlSWQiLCIkMDFiOWMkdXNlSWQiLCJjcmVhdGVQb3BwZXJTY29wZSIsIiQwMWI5YyRjcmVhdGVQb3BwZXJTY29wZSIsIlJvb3QiLCIkMDFiOWMkUm9vdCIsIkFuY2hvciIsIiQwMWI5YyRBbmNob3IiLCJDb250ZW50IiwiJDAxYjljJENvbnRlbnQiLCJBcnJvdyIsIiQwMWI5YyRBcnJvdyIsIlBvcnRhbCIsIiQwMWI5YyRQb3J0YWwiLCJQcmltaXRpdmUiLCIkMDFiOWMkUHJpbWl0aXZlIiwiU2xvdCIsIiQwMWI5YyRTbG90IiwidXNlQ2FsbGJhY2tSZWYiLCIkMDFiOWMkdXNlQ2FsbGJhY2tSZWYiLCJ1c2VDb250cm9sbGFibGVTdGF0ZSIsIiQwMWI5YyR1c2VDb250cm9sbGFibGVTdGF0ZSIsInVzZUxheW91dEVmZmVjdCIsIiQwMWI5YyR1c2VMYXlvdXRFZmZlY3QiLCJ1c2VQcmV2aW91cyIsIiQwMWI5YyR1c2VQcmV2aW91cyIsIlZpc3VhbGx5SGlkZGVuIiwiJDAxYjljJFZpc3VhbGx5SGlkZGVuIiwiaGlkZU90aGVycyIsIiQwMWI5YyRoaWRlT3RoZXJzIiwiUmVtb3ZlU2Nyb2xsIiwiJDAxYjljJFJlbW92ZVNjcm9sbCIsIiRjYzdlMDVhNDU5MDBlNzNmJHZhciRPUEVOX0tFWVMiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU0VMRUNUSU9OX0tFWVMiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU0VMRUNUX05BTUUiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkQ29sbGVjdGlvbiIsIiRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VDb2xsZWN0aW9uIiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJGNyZWF0ZUNvbGxlY3Rpb25TY29wZSIsIiRjYzdlMDVhNDU5MDBlNzNmJHZhciRjcmVhdGVTZWxlY3RDb250ZXh0IiwiJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDI4NjcyN2E3NWRjMDM5YmQiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlUG9wcGVyU2NvcGUiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0UHJvdmlkZXIiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlU2VsZWN0Q29udGV4dCIsIiRjYzdlMDVhNDU5MDBlNzNmJHZhciRTZWxlY3ROYXRpdmVPcHRpb25zUHJvdmlkZXIiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlU2VsZWN0TmF0aXZlT3B0aW9uc0NvbnRleHQiLCIkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkZWY5YjFhNTllNTkyMjg4ZiIsInByb3BzIiwiX19zY29wZVNlbGVjdCIsImNoaWxkcmVuIiwib3BlbiIsIm9wZW5Qcm9wIiwiZGVmYXVsdE9wZW4iLCJvbk9wZW5DaGFuZ2UiLCJ2YWx1ZSIsInZhbHVlUHJvcCIsImRlZmF1bHRWYWx1ZSIsIm9uVmFsdWVDaGFuZ2UiLCJkaXIiLCJuYW1lIiwiYXV0b0NvbXBsZXRlIiwiZGlzYWJsZWQiLCJyZXF1aXJlZCIsInBvcHBlclNjb3BlIiwidHJpZ2dlciIsInNldFRyaWdnZXIiLCJ2YWx1ZU5vZGUiLCJzZXRWYWx1ZU5vZGUiLCJ2YWx1ZU5vZGVIYXNDaGlsZHJlbiIsInNldFZhbHVlTm9kZUhhc0NoaWxkcmVuIiwiZGlyZWN0aW9uIiwic2V0T3BlbiIsInByb3AiLCJkZWZhdWx0UHJvcCIsIm9uQ2hhbmdlIiwic2V0VmFsdWUiLCJ0cmlnZ2VyUG9pbnRlckRvd25Qb3NSZWYiLCJpc0Zvcm1Db250cm9sIiwiQm9vbGVhbiIsImNsb3Nlc3QiLCJuYXRpdmVPcHRpb25zU2V0Iiwic2V0TmF0aXZlT3B0aW9uc1NldCIsIlNldCIsIm5hdGl2ZVNlbGVjdEtleSIsIkFycmF5IiwiZnJvbSIsIm1hcCIsIm9wdGlvbiIsImpvaW4iLCJzY29wZSIsIm9uVHJpZ2dlckNoYW5nZSIsIm9uVmFsdWVOb2RlQ2hhbmdlIiwib25WYWx1ZU5vZGVIYXNDaGlsZHJlbkNoYW5nZSIsImNvbnRlbnRJZCIsIlByb3ZpZGVyIiwib25OYXRpdmVPcHRpb25BZGQiLCJwcmV2IiwiYWRkIiwib25OYXRpdmVPcHRpb25SZW1vdmUiLCJvcHRpb25zU2V0IiwiZGVsZXRlIiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJEJ1YmJsZVNlbGVjdCIsImtleSIsInRhYkluZGV4IiwiZXZlbnQiLCJ0YXJnZXQiLCJ1bmRlZmluZWQiLCJPYmplY3QiLCJhc3NpZ24iLCJkaXNwbGF5TmFtZSIsIiRjYzdlMDVhNDU5MDBlNzNmJHZhciRUUklHR0VSX05BTUUiLCIkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkM2FjMWU4OGExYzBiOWYxIiwiZm9yd2FyZGVkUmVmIiwidHJpZ2dlclByb3BzIiwiY29udGV4dCIsImlzRGlzYWJsZWQiLCJjb21wb3NlZFJlZnMiLCJnZXRJdGVtcyIsInNlYXJjaFJlZiIsImhhbmRsZVR5cGVhaGVhZFNlYXJjaCIsInJlc2V0VHlwZWFoZWFkIiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVR5cGVhaGVhZFNlYXJjaCIsInNlYXJjaCIsImVuYWJsZWRJdGVtcyIsImZpbHRlciIsIml0ZW0iLCJjdXJyZW50SXRlbSIsImZpbmQiLCJuZXh0SXRlbSIsIiRjYzdlMDVhNDU5MDBlNzNmJHZhciRmaW5kTmV4dEl0ZW0iLCJoYW5kbGVPcGVuIiwiYXNDaGlsZCIsImJ1dHRvbiIsInR5cGUiLCJyb2xlIiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHNob3VsZFNob3dQbGFjZWhvbGRlciIsInJlZiIsIm9uQ2xpY2siLCJjdXJyZW50VGFyZ2V0IiwiZm9jdXMiLCJvblBvaW50ZXJEb3duIiwiaGFzUG9pbnRlckNhcHR1cmUiLCJwb2ludGVySWQiLCJyZWxlYXNlUG9pbnRlckNhcHR1cmUiLCJjdHJsS2V5IiwiY3VycmVudCIsIngiLCJNYXRoIiwicm91bmQiLCJwYWdlWCIsInkiLCJwYWdlWSIsInByZXZlbnREZWZhdWx0Iiwib25LZXlEb3duIiwiaXNUeXBpbmdBaGVhZCIsImlzTW9kaWZpZXJLZXkiLCJhbHRLZXkiLCJtZXRhS2V5IiwibGVuZ3RoIiwiaW5jbHVkZXMiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkVkFMVUVfTkFNRSIsIiRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRlMjg4NzMxZmQ3MTI2NGYwIiwiY2xhc3NOYW1lIiwic3R5bGUiLCJwbGFjZWhvbGRlciIsInZhbHVlUHJvcHMiLCJoYXNDaGlsZHJlbiIsInNwYW4iLCJwb2ludGVyRXZlbnRzIiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJElDT05fTkFNRSIsIiRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQ5OWI0MDBjYWJiNThjNTE1IiwiaWNvblByb3BzIiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFBPUlRBTF9OQU1FIiwiJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGIyYWY2Yzk5NDQyOTYyMTMiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkQ09OVEVOVF9OQU1FIiwiJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGM5NzNhNGIzY2I4NmEwM2QiLCJmcmFnbWVudCIsInNldEZyYWdtZW50IiwiRG9jdW1lbnRGcmFnbWVudCIsImZyYWciLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0Q29udGVudFByb3ZpZGVyIiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdENvbnRlbnRJbXBsIiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENPTlRFTlRfTUFSR0lOIiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdENvbnRlbnRDb250ZXh0IiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJENPTlRFTlRfSU1QTF9OQU1FIiwicG9zaXRpb24iLCJvbkNsb3NlQXV0b0ZvY3VzIiwib25Fc2NhcGVLZXlEb3duIiwib25Qb2ludGVyRG93bk91dHNpZGUiLCJzaWRlIiwic2lkZU9mZnNldCIsImFsaWduIiwiYWxpZ25PZmZzZXQiLCJhcnJvd1BhZGRpbmciLCJjb2xsaXNpb25Cb3VuZGFyeSIsImNvbGxpc2lvblBhZGRpbmciLCJzdGlja3kiLCJoaWRlV2hlbkRldGFjaGVkIiwiYXZvaWRDb2xsaXNpb25zIiwiY29udGVudFByb3BzIiwiY29udGVudCIsInNldENvbnRlbnQiLCJ2aWV3cG9ydCIsInNldFZpZXdwb3J0Iiwibm9kZSIsInNlbGVjdGVkSXRlbSIsInNldFNlbGVjdGVkSXRlbSIsInNlbGVjdGVkSXRlbVRleHQiLCJzZXRTZWxlY3RlZEl0ZW1UZXh0IiwiaXNQb3NpdGlvbmVkIiwic2V0SXNQb3NpdGlvbmVkIiwiZmlyc3RWYWxpZEl0ZW1Gb3VuZFJlZiIsImZvY3VzRmlyc3QiLCJjYW5kaWRhdGVzIiwiZmlyc3RJdGVtIiwicmVzdEl0ZW1zIiwibGFzdEl0ZW0iLCJzbGljZSIsIlBSRVZJT1VTTFlfRk9DVVNFRF9FTEVNRU5UIiwiZG9jdW1lbnQiLCJhY3RpdmVFbGVtZW50IiwiY2FuZGlkYXRlIiwic2Nyb2xsSW50b1ZpZXciLCJibG9jayIsInNjcm9sbFRvcCIsInNjcm9sbEhlaWdodCIsImZvY3VzU2VsZWN0ZWRJdGVtIiwicG9pbnRlck1vdmVEZWx0YSIsImhhbmRsZVBvaW50ZXJNb3ZlIiwiX3RyaWdnZXJQb2ludGVyRG93blBvIiwiX3RyaWdnZXJQb2ludGVyRG93blBvMiIsIl90cmlnZ2VyUG9pbnRlckRvd25QbzMiLCJfdHJpZ2dlclBvaW50ZXJEb3duUG80IiwiYWJzIiwiaGFuZGxlUG9pbnRlclVwIiwiY29udGFpbnMiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiYWRkRXZlbnRMaXN0ZW5lciIsImNhcHR1cmUiLCJvbmNlIiwiY2xvc2UiLCJ3aW5kb3ciLCJzZXRUaW1lb3V0IiwiaXRlbVJlZkNhbGxiYWNrIiwiaXNGaXJzdFZhbGlkSXRlbSIsImlzU2VsZWN0ZWRJdGVtIiwiaGFuZGxlSXRlbUxlYXZlIiwiaXRlbVRleHRSZWZDYWxsYmFjayIsIlNlbGVjdFBvc2l0aW9uIiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdFBvcHBlclBvc2l0aW9uIiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdEl0ZW1BbGlnbmVkUG9zaXRpb24iLCJwb3BwZXJDb250ZW50UHJvcHMiLCJvblZpZXdwb3J0Q2hhbmdlIiwib25JdGVtTGVhdmUiLCJhcyIsImFsbG93UGluY2hab29tIiwidHJhcHBlZCIsIm9uTW91bnRBdXRvRm9jdXMiLCJvblVubW91bnRBdXRvRm9jdXMiLCJfY29udGV4dCR0cmlnZ2VyIiwicHJldmVudFNjcm9sbCIsImRpc2FibGVPdXRzaWRlUG9pbnRlckV2ZW50cyIsIm9uRm9jdXNPdXRzaWRlIiwib25EaXNtaXNzIiwiaWQiLCJvbkNvbnRleHRNZW51Iiwib25QbGFjZWQiLCJkaXNwbGF5IiwiZmxleERpcmVjdGlvbiIsIm91dGxpbmUiLCJpdGVtcyIsImNhbmRpZGF0ZU5vZGVzIiwicmV2ZXJzZSIsImN1cnJlbnRFbGVtZW50IiwiY3VycmVudEluZGV4IiwiaW5kZXhPZiIsIiRjYzdlMDVhNDU5MDBlNzNmJHZhciRJVEVNX0FMSUdORURfUE9TSVRJT05fTkFNRSIsInBvcHBlclByb3BzIiwiY29udGVudENvbnRleHQiLCJjb250ZW50V3JhcHBlciIsInNldENvbnRlbnRXcmFwcGVyIiwic2hvdWxkRXhwYW5kT25TY3JvbGxSZWYiLCJzaG91bGRSZXBvc2l0aW9uUmVmIiwidHJpZ2dlclJlY3QiLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJjb250ZW50UmVjdCIsInZhbHVlTm9kZVJlY3QiLCJpdGVtVGV4dFJlY3QiLCJpdGVtVGV4dE9mZnNldCIsImxlZnQiLCJsZWZ0RGVsdGEiLCJtaW5Db250ZW50V2lkdGgiLCJ3aWR0aCIsImNvbnRlbnRXaWR0aCIsIm1heCIsInJpZ2h0RWRnZSIsImlubmVyV2lkdGgiLCJjbGFtcGVkTGVmdCIsIm1pbldpZHRoIiwicmlnaHQiLCJyaWdodERlbHRhIiwibGVmdEVkZ2UiLCJjbGFtcGVkUmlnaHQiLCJhdmFpbGFibGVIZWlnaHQiLCJpbm5lckhlaWdodCIsIml0ZW1zSGVpZ2h0IiwiY29udGVudFN0eWxlcyIsImdldENvbXB1dGVkU3R5bGUiLCJjb250ZW50Qm9yZGVyVG9wV2lkdGgiLCJwYXJzZUludCIsImJvcmRlclRvcFdpZHRoIiwiY29udGVudFBhZGRpbmdUb3AiLCJwYWRkaW5nVG9wIiwiY29udGVudEJvcmRlckJvdHRvbVdpZHRoIiwiYm9yZGVyQm90dG9tV2lkdGgiLCJjb250ZW50UGFkZGluZ0JvdHRvbSIsInBhZGRpbmdCb3R0b20iLCJmdWxsQ29udGVudEhlaWdodCIsIm1pbkNvbnRlbnRIZWlnaHQiLCJtaW4iLCJvZmZzZXRIZWlnaHQiLCJ2aWV3cG9ydFN0eWxlcyIsInZpZXdwb3J0UGFkZGluZ1RvcCIsInZpZXdwb3J0UGFkZGluZ0JvdHRvbSIsInRvcEVkZ2VUb1RyaWdnZXJNaWRkbGUiLCJ0b3AiLCJoZWlnaHQiLCJ0cmlnZ2VyTWlkZGxlVG9Cb3R0b21FZGdlIiwic2VsZWN0ZWRJdGVtSGFsZkhlaWdodCIsIml0ZW1PZmZzZXRNaWRkbGUiLCJvZmZzZXRUb3AiLCJjb250ZW50VG9wVG9JdGVtTWlkZGxlIiwiaXRlbU1pZGRsZVRvQ29udGVudEJvdHRvbSIsIndpbGxBbGlnbldpdGhvdXRUb3BPdmVyZmxvdyIsImlzTGFzdEl0ZW0iLCJib3R0b20iLCJ2aWV3cG9ydE9mZnNldEJvdHRvbSIsImNsaWVudEhlaWdodCIsImNsYW1wZWRUcmlnZ2VyTWlkZGxlVG9Cb3R0b21FZGdlIiwiaXNGaXJzdEl0ZW0iLCJjbGFtcGVkVG9wRWRnZVRvVHJpZ2dlck1pZGRsZSIsIm1hcmdpbiIsIm1pbkhlaWdodCIsIm1heEhlaWdodCIsInJlcXVlc3RBbmltYXRpb25GcmFtZSIsImNvbnRlbnRaSW5kZXgiLCJzZXRDb250ZW50WkluZGV4IiwiekluZGV4IiwiaGFuZGxlU2Nyb2xsQnV0dG9uQ2hhbmdlIiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJFNlbGVjdFZpZXdwb3J0UHJvdmlkZXIiLCJvblNjcm9sbEJ1dHRvbkNoYW5nZSIsImRpdiIsImJveFNpemluZyIsIiRjYzdlMDVhNDU5MDBlNzNmJHZhciRQT1BQRVJfUE9TSVRJT05fTkFNRSIsIiRjYzdlMDVhNDU5MDBlNzNmJHZhciR1c2VTZWxlY3RWaWV3cG9ydENvbnRleHQiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkVklFV1BPUlRfTkFNRSIsIiRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQ5ZWQ2ZTdiNDAyNDhkMzZkIiwidmlld3BvcnRQcm9wcyIsInZpZXdwb3J0Q29udGV4dCIsInByZXZTY3JvbGxUb3BSZWYiLCJkYW5nZXJvdXNseVNldElubmVySFRNTCIsIl9faHRtbCIsImZsZXgiLCJvdmVyZmxvdyIsIm9uU2Nyb2xsIiwic2Nyb2xsZWRCeSIsImNzc01pbkhlaWdodCIsInBhcnNlRmxvYXQiLCJjc3NIZWlnaHQiLCJwcmV2SGVpZ2h0IiwibmV4dEhlaWdodCIsImNsYW1wZWROZXh0SGVpZ2h0IiwiaGVpZ2h0RGlmZiIsImp1c3RpZnlDb250ZW50IiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJEdST1VQX05BTUUiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0R3JvdXBDb250ZXh0UHJvdmlkZXIiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkdXNlU2VsZWN0R3JvdXBDb250ZXh0IiwiJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGVlMjVhMzM0YzU1ZGUxZjQiLCJncm91cFByb3BzIiwiZ3JvdXBJZCIsIiRjYzdlMDVhNDU5MDBlNzNmJHZhciRMQUJFTF9OQU1FIiwiJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGY2NzMzOGQyOWJkOTcyZjgiLCJsYWJlbFByb3BzIiwiZ3JvdXBDb250ZXh0IiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJElURU1fTkFNRSIsIiRjYzdlMDVhNDU5MDBlNzNmJHZhciRTZWxlY3RJdGVtQ29udGV4dFByb3ZpZGVyIiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJHVzZVNlbGVjdEl0ZW1Db250ZXh0IiwiJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDEzZWY0OGE5MzQyMzA4OTYiLCJ0ZXh0VmFsdWUiLCJ0ZXh0VmFsdWVQcm9wIiwiaXRlbVByb3BzIiwiaXNTZWxlY3RlZCIsInNldFRleHRWYWx1ZSIsImlzRm9jdXNlZCIsInNldElzRm9jdXNlZCIsIl9jb250ZW50Q29udGV4dCRpdGVtUiIsImNhbGwiLCJ0ZXh0SWQiLCJoYW5kbGVTZWxlY3QiLCJFcnJvciIsIm9uSXRlbVRleHRDaGFuZ2UiLCJwcmV2VGV4dFZhbHVlIiwiX25vZGUkdGV4dENvbnRlbnQiLCJ0ZXh0Q29udGVudCIsInRyaW0iLCJJdGVtU2xvdCIsIm9uRm9jdXMiLCJvbkJsdXIiLCJvblBvaW50ZXJVcCIsIm9uUG9pbnRlck1vdmUiLCJfY29udGVudENvbnRleHQkb25JdGUiLCJvblBvaW50ZXJMZWF2ZSIsIl9jb250ZW50Q29udGV4dCRvbkl0ZTIiLCJfY29udGVudENvbnRleHQkc2VhcmMiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkSVRFTV9URVhUX05BTUUiLCIkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkMzU3MmZiMGZiODIxZmY0OSIsIml0ZW1UZXh0UHJvcHMiLCJpdGVtQ29udGV4dCIsIm5hdGl2ZU9wdGlvbnNDb250ZXh0IiwiaXRlbVRleHROb2RlIiwic2V0SXRlbVRleHROb2RlIiwiX2NvbnRlbnRDb250ZXh0JGl0ZW1UIiwibmF0aXZlT3B0aW9uIiwiJGNjN2UwNWE0NTkwMGU3M2YkdmFyJElURU1fSU5ESUNBVE9SX05BTUUiLCIkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkNmI5MTk4ZGUxOWFjY2ZlNiIsIml0ZW1JbmRpY2F0b3JQcm9wcyIsIiRjYzdlMDVhNDU5MDBlNzNmJHZhciRTQ1JPTExfVVBfQlVUVE9OX05BTUUiLCIkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkZDgxMTc5Mjc2NThhZjZkNyIsImNhblNjcm9sbFVwMSIsInNldENhblNjcm9sbFVwIiwiaGFuZGxlU2Nyb2xsIiwiY2FuU2Nyb2xsVXAiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU2VsZWN0U2Nyb2xsQnV0dG9uSW1wbCIsIm9uQXV0b1Njcm9sbCIsIiRjYzdlMDVhNDU5MDBlNzNmJHZhciRTQ1JPTExfRE9XTl9CVVRUT05fTkFNRSIsIiRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRmZjk1MWU0NzZjMTIxODkiLCJjYW5TY3JvbGxEb3duMSIsInNldENhblNjcm9sbERvd24iLCJtYXhTY3JvbGwiLCJjYW5TY3JvbGxEb3duIiwiY2VpbCIsInNjcm9sbEluZGljYXRvclByb3BzIiwiYXV0b1Njcm9sbFRpbWVyUmVmIiwiY2xlYXJBdXRvU2Nyb2xsVGltZXIiLCJjbGVhckludGVydmFsIiwiX2FjdGl2ZUl0ZW0kcmVmJGN1cnJlIiwiYWN0aXZlSXRlbSIsImZsZXhTaHJpbmsiLCJzZXRJbnRlcnZhbCIsIl9jb250ZW50Q29udGV4dCRvbkl0ZTMiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkU0VQQVJBVE9SX05BTUUiLCIkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkZWJhNGIxZGYwN2NiMWQzIiwic2VwYXJhdG9yUHJvcHMiLCIkY2M3ZTA1YTQ1OTAwZTczZiR2YXIkQVJST1dfTkFNRSIsIiRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQzMTRmNGNiOGY4MDk5NjI4IiwiYXJyb3dQcm9wcyIsInNlbGVjdFByb3BzIiwicHJldlZhbHVlIiwic2VsZWN0Iiwic2VsZWN0UHJvdG8iLCJIVE1MU2VsZWN0RWxlbWVudCIsInByb3RvdHlwZSIsImRlc2NyaXB0b3IiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJzZXQiLCJFdmVudCIsImJ1YmJsZXMiLCJkaXNwYXRjaEV2ZW50Iiwib25TZWFyY2hDaGFuZ2UiLCJoYW5kbGVTZWFyY2hDaGFuZ2UiLCJ0aW1lclJlZiIsInVwZGF0ZVNlYXJjaCIsImNsZWFyVGltZW91dCIsImlzUmVwZWF0ZWQiLCJldmVyeSIsImNoYXIiLCJub3JtYWxpemVkU2VhcmNoIiwiY3VycmVudEl0ZW1JbmRleCIsIndyYXBwZWRJdGVtcyIsIiRjYzdlMDVhNDU5MDBlNzNmJHZhciR3cmFwQXJyYXkiLCJleGNsdWRlQ3VycmVudEl0ZW0iLCJ2IiwidG9Mb3dlckNhc2UiLCJzdGFydHNXaXRoIiwiYXJyYXkiLCJzdGFydEluZGV4IiwiXyIsImluZGV4IiwiJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGJlOTJiNmY1ZjAzYzBmZTkiLCIkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkNDFmYjlmMDYxNzFjNzVmNCIsIiRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQ0YzhkMWE1N2E3NjFlZjk0IiwiJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGYwNGE2MTI5OGE0N2E0MGYiLCIkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkNjAyZWFjMTg1ODI2NDgyYyIsIiRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCQ3YzZlMmMwMjE1N2JiN2QyIiwiJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGQ1YzZjMDhkYzJkM2NhNyIsIiRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRlYjJmY2ZkYmQ3YmE5N2Q0IiwiJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGIwNGJlMjlhYTIwMWQ0ZjUiLCIkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkNmQwODc3M2QyZTY2ZjhmMiIsIiRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRkNmU1YmY5YzQzZWE5MzE5IiwiJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JGMzNDY4ZTI3MTRkMTc1ZmEiLCIkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkMmY2MGQzZWM5YWQ0NjhmMiIsIiRjYzdlMDVhNDU5MDBlNzNmJGV4cG9ydCRiZjFhZWRjMzAzOWM4ZDYzIiwiJGNjN2UwNWE0NTkwMGU3M2YkZXhwb3J0JDFmZjNjM2YwOGFlOTYzYzAiLCIkY2M3ZTA1YTQ1OTAwZTczZiRleHBvcnQkMjFiMDdjOGYyNzRhZWJkNSIsImNyZWF0ZVNlbGVjdFNjb3BlIiwiU2VsZWN0IiwiU2VsZWN0VHJpZ2dlciIsIlNlbGVjdFZhbHVlIiwiU2VsZWN0SWNvbiIsIlNlbGVjdFBvcnRhbCIsIlNlbGVjdENvbnRlbnQiLCJTZWxlY3RWaWV3cG9ydCIsIlNlbGVjdEdyb3VwIiwiU2VsZWN0TGFiZWwiLCJTZWxlY3RJdGVtIiwiU2VsZWN0SXRlbVRleHQiLCJTZWxlY3RJdGVtSW5kaWNhdG9yIiwiU2VsZWN0U2Nyb2xsVXBCdXR0b24iLCJTZWxlY3RTY3JvbGxEb3duQnV0dG9uIiwiU2VsZWN0U2VwYXJhdG9yIiwiU2VsZWN0QXJyb3ciLCJUcmlnZ2VyIiwiVmFsdWUiLCJJY29uIiwiVmlld3BvcnQiLCJHcm91cCIsIkxhYmVsIiwiSXRlbSIsIkl0ZW1UZXh0IiwiSXRlbUluZGljYXRvciIsIlNjcm9sbFVwQnV0dG9uIiwiU2Nyb2xsRG93bkJ1dHRvbiIsIlNlcGFyYXRvciJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-select/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs": /*!***********************************************************************************************************!*\ !*** ./node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs ***! \***********************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Branch: () => (/* binding */ $5cb92bef7577960e$export$aecb2ddcb55c95be),\n/* harmony export */ DismissableLayer: () => (/* binding */ $5cb92bef7577960e$export$177fb62ff3ec1f22),\n/* harmony export */ DismissableLayerBranch: () => (/* binding */ $5cb92bef7577960e$export$4d5eb2109db14228),\n/* harmony export */ Root: () => (/* binding */ $5cb92bef7577960e$export$be92b6f5f03c0fe9)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_primitive__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @radix-ui/primitive */ \"(ssr)/./node_modules/@radix-ui/primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-compose-refs */ \"(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @radix-ui/react-use-callback-ref */ \"(ssr)/./node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_escape_keydown__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-use-escape-keydown */ \"(ssr)/./node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs\");\n\n\n\n\n\n\n\n/* -------------------------------------------------------------------------------------------------\n * DismissableLayer\n * -----------------------------------------------------------------------------------------------*/ const $5cb92bef7577960e$var$DISMISSABLE_LAYER_NAME = \"DismissableLayer\";\nconst $5cb92bef7577960e$var$CONTEXT_UPDATE = \"dismissableLayer.update\";\nconst $5cb92bef7577960e$var$POINTER_DOWN_OUTSIDE = \"dismissableLayer.pointerDownOutside\";\nconst $5cb92bef7577960e$var$FOCUS_OUTSIDE = \"dismissableLayer.focusOutside\";\nlet $5cb92bef7577960e$var$originalBodyPointerEvents;\nconst $5cb92bef7577960e$var$DismissableLayerContext = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createContext)({\n layers: new Set(),\n layersWithOutsidePointerEventsDisabled: new Set(),\n branches: new Set()\n});\nconst $5cb92bef7577960e$export$177fb62ff3ec1f22 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n var _node$ownerDocument;\n const { disableOutsidePointerEvents: disableOutsidePointerEvents = false, onEscapeKeyDown: onEscapeKeyDown, onPointerDownOutside: onPointerDownOutside, onFocusOutside: onFocusOutside, onInteractOutside: onInteractOutside, onDismiss: onDismiss, ...layerProps } = props;\n const context = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)($5cb92bef7577960e$var$DismissableLayerContext);\n const [node1, setNode] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const ownerDocument = (_node$ownerDocument = node1 === null || node1 === void 0 ? void 0 : node1.ownerDocument) !== null && _node$ownerDocument !== void 0 ? _node$ownerDocument : globalThis === null || globalThis === void 0 ? void 0 : globalThis.document;\n const [, force] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)({});\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__.useComposedRefs)(forwardedRef, (node)=>setNode(node));\n const layers = Array.from(context.layers);\n const [highestLayerWithOutsidePointerEventsDisabled] = [\n ...context.layersWithOutsidePointerEventsDisabled\n ].slice(-1); // prettier-ignore\n const highestLayerWithOutsidePointerEventsDisabledIndex = layers.indexOf(highestLayerWithOutsidePointerEventsDisabled); // prettier-ignore\n const index = node1 ? layers.indexOf(node1) : -1;\n const isBodyPointerEventsDisabled = context.layersWithOutsidePointerEventsDisabled.size > 0;\n const isPointerEventsEnabled = index >= highestLayerWithOutsidePointerEventsDisabledIndex;\n const pointerDownOutside = $5cb92bef7577960e$var$usePointerDownOutside((event)=>{\n const target = event.target;\n const isPointerDownOnBranch = [\n ...context.branches\n ].some((branch)=>branch.contains(target));\n if (!isPointerEventsEnabled || isPointerDownOnBranch) return;\n onPointerDownOutside === null || onPointerDownOutside === void 0 || onPointerDownOutside(event);\n onInteractOutside === null || onInteractOutside === void 0 || onInteractOutside(event);\n if (!event.defaultPrevented) onDismiss === null || onDismiss === void 0 || onDismiss();\n }, ownerDocument);\n const focusOutside = $5cb92bef7577960e$var$useFocusOutside((event)=>{\n const target = event.target;\n const isFocusInBranch = [\n ...context.branches\n ].some((branch)=>branch.contains(target));\n if (isFocusInBranch) return;\n onFocusOutside === null || onFocusOutside === void 0 || onFocusOutside(event);\n onInteractOutside === null || onInteractOutside === void 0 || onInteractOutside(event);\n if (!event.defaultPrevented) onDismiss === null || onDismiss === void 0 || onDismiss();\n }, ownerDocument);\n (0,_radix_ui_react_use_escape_keydown__WEBPACK_IMPORTED_MODULE_3__.useEscapeKeydown)((event)=>{\n const isHighestLayer = index === context.layers.size - 1;\n if (!isHighestLayer) return;\n onEscapeKeyDown === null || onEscapeKeyDown === void 0 || onEscapeKeyDown(event);\n if (!event.defaultPrevented && onDismiss) {\n event.preventDefault();\n onDismiss();\n }\n }, ownerDocument);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (!node1) return;\n if (disableOutsidePointerEvents) {\n if (context.layersWithOutsidePointerEventsDisabled.size === 0) {\n $5cb92bef7577960e$var$originalBodyPointerEvents = ownerDocument.body.style.pointerEvents;\n ownerDocument.body.style.pointerEvents = \"none\";\n }\n context.layersWithOutsidePointerEventsDisabled.add(node1);\n }\n context.layers.add(node1);\n $5cb92bef7577960e$var$dispatchUpdate();\n return ()=>{\n if (disableOutsidePointerEvents && context.layersWithOutsidePointerEventsDisabled.size === 1) ownerDocument.body.style.pointerEvents = $5cb92bef7577960e$var$originalBodyPointerEvents;\n };\n }, [\n node1,\n ownerDocument,\n disableOutsidePointerEvents,\n context\n ]);\n /**\n * We purposefully prevent combining this effect with the `disableOutsidePointerEvents` effect\n * because a change to `disableOutsidePointerEvents` would remove this layer from the stack\n * and add it to the end again so the layering order wouldn't be _creation order_.\n * We only want them to be removed from context stacks when unmounted.\n */ (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n return ()=>{\n if (!node1) return;\n context.layers.delete(node1);\n context.layersWithOutsidePointerEventsDisabled.delete(node1);\n $5cb92bef7577960e$var$dispatchUpdate();\n };\n }, [\n node1,\n context\n ]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const handleUpdate = ()=>force({});\n document.addEventListener($5cb92bef7577960e$var$CONTEXT_UPDATE, handleUpdate);\n return ()=>document.removeEventListener($5cb92bef7577960e$var$CONTEXT_UPDATE, handleUpdate);\n }, []);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, layerProps, {\n ref: composedRefs,\n style: {\n pointerEvents: isBodyPointerEventsDisabled ? isPointerEventsEnabled ? \"auto\" : \"none\" : undefined,\n ...props.style\n },\n onFocusCapture: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_5__.composeEventHandlers)(props.onFocusCapture, focusOutside.onFocusCapture),\n onBlurCapture: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_5__.composeEventHandlers)(props.onBlurCapture, focusOutside.onBlurCapture),\n onPointerDownCapture: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_5__.composeEventHandlers)(props.onPointerDownCapture, pointerDownOutside.onPointerDownCapture)\n }));\n});\n/*#__PURE__*/ Object.assign($5cb92bef7577960e$export$177fb62ff3ec1f22, {\n displayName: $5cb92bef7577960e$var$DISMISSABLE_LAYER_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * DismissableLayerBranch\n * -----------------------------------------------------------------------------------------------*/ const $5cb92bef7577960e$var$BRANCH_NAME = \"DismissableLayerBranch\";\nconst $5cb92bef7577960e$export$4d5eb2109db14228 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const context = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)($5cb92bef7577960e$var$DismissableLayerContext);\n const ref = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__.useComposedRefs)(forwardedRef, ref);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const node = ref.current;\n if (node) {\n context.branches.add(node);\n return ()=>{\n context.branches.delete(node);\n };\n }\n }, [\n context.branches\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, props, {\n ref: composedRefs\n }));\n});\n/*#__PURE__*/ Object.assign($5cb92bef7577960e$export$4d5eb2109db14228, {\n displayName: $5cb92bef7577960e$var$BRANCH_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ /**\n * Listens for `pointerdown` outside a react subtree. We use `pointerdown` rather than `pointerup`\n * to mimic layer dismissing behaviour present in OS.\n * Returns props to pass to the node we want to check for outside events.\n */ function $5cb92bef7577960e$var$usePointerDownOutside(onPointerDownOutside, ownerDocument = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) {\n const handlePointerDownOutside = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_6__.useCallbackRef)(onPointerDownOutside);\n const isPointerInsideReactTreeRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(false);\n const handleClickRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(()=>{});\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const handlePointerDown = (event)=>{\n if (event.target && !isPointerInsideReactTreeRef.current) {\n const eventDetail = {\n originalEvent: event\n };\n function handleAndDispatchPointerDownOutsideEvent() {\n $5cb92bef7577960e$var$handleAndDispatchCustomEvent($5cb92bef7577960e$var$POINTER_DOWN_OUTSIDE, handlePointerDownOutside, eventDetail, {\n discrete: true\n });\n }\n /**\n * On touch devices, we need to wait for a click event because browsers implement\n * a ~350ms delay between the time the user stops touching the display and when the\n * browser executres events. We need to ensure we don't reactivate pointer-events within\n * this timeframe otherwise the browser may execute events that should have been prevented.\n *\n * Additionally, this also lets us deal automatically with cancellations when a click event\n * isn't raised because the page was considered scrolled/drag-scrolled, long-pressed, etc.\n *\n * This is why we also continuously remove the previous listener, because we cannot be\n * certain that it was raised, and therefore cleaned-up.\n */ if (event.pointerType === \"touch\") {\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n handleClickRef.current = handleAndDispatchPointerDownOutsideEvent;\n ownerDocument.addEventListener(\"click\", handleClickRef.current, {\n once: true\n });\n } else handleAndDispatchPointerDownOutsideEvent();\n } else // See: https://github.com/radix-ui/primitives/issues/2171\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n isPointerInsideReactTreeRef.current = false;\n };\n /**\n * if this hook executes in a component that mounts via a `pointerdown` event, the event\n * would bubble up to the document and trigger a `pointerDownOutside` event. We avoid\n * this by delaying the event listener registration on the document.\n * This is not React specific, but rather how the DOM works, ie:\n * ```\n * button.addEventListener('pointerdown', () => {\n * console.log('I will log');\n * document.addEventListener('pointerdown', () => {\n * console.log('I will also log');\n * })\n * });\n */ const timerId = window.setTimeout(()=>{\n ownerDocument.addEventListener(\"pointerdown\", handlePointerDown);\n }, 0);\n return ()=>{\n window.clearTimeout(timerId);\n ownerDocument.removeEventListener(\"pointerdown\", handlePointerDown);\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n };\n }, [\n ownerDocument,\n handlePointerDownOutside\n ]);\n return {\n // ensures we check React component tree (not just DOM tree)\n onPointerDownCapture: ()=>isPointerInsideReactTreeRef.current = true\n };\n}\n/**\n * Listens for when focus happens outside a react subtree.\n * Returns props to pass to the root (node) of the subtree we want to check.\n */ function $5cb92bef7577960e$var$useFocusOutside(onFocusOutside, ownerDocument = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) {\n const handleFocusOutside = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_6__.useCallbackRef)(onFocusOutside);\n const isFocusInsideReactTreeRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(false);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const handleFocus = (event)=>{\n if (event.target && !isFocusInsideReactTreeRef.current) {\n const eventDetail = {\n originalEvent: event\n };\n $5cb92bef7577960e$var$handleAndDispatchCustomEvent($5cb92bef7577960e$var$FOCUS_OUTSIDE, handleFocusOutside, eventDetail, {\n discrete: false\n });\n }\n };\n ownerDocument.addEventListener(\"focusin\", handleFocus);\n return ()=>ownerDocument.removeEventListener(\"focusin\", handleFocus);\n }, [\n ownerDocument,\n handleFocusOutside\n ]);\n return {\n onFocusCapture: ()=>isFocusInsideReactTreeRef.current = true,\n onBlurCapture: ()=>isFocusInsideReactTreeRef.current = false\n };\n}\nfunction $5cb92bef7577960e$var$dispatchUpdate() {\n const event = new CustomEvent($5cb92bef7577960e$var$CONTEXT_UPDATE);\n document.dispatchEvent(event);\n}\nfunction $5cb92bef7577960e$var$handleAndDispatchCustomEvent(name, handler, detail, { discrete: discrete }) {\n const target = detail.originalEvent.target;\n const event = new CustomEvent(name, {\n bubbles: false,\n cancelable: true,\n detail: detail\n });\n if (handler) target.addEventListener(name, handler, {\n once: true\n });\n if (discrete) (0,_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__.dispatchDiscreteCustomEvent)(target, event);\n else target.dispatchEvent(event);\n}\nconst $5cb92bef7577960e$export$be92b6f5f03c0fe9 = $5cb92bef7577960e$export$177fb62ff3ec1f22;\nconst $5cb92bef7577960e$export$aecb2ddcb55c95be = $5cb92bef7577960e$export$4d5eb2109db14228;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXNlbGVjdC9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWRpc21pc3NhYmxlLWxheWVyL2Rpc3QvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQXNGO0FBQ29LO0FBQ2xLO0FBQ21EO0FBQ3BEO0FBQ0U7QUFDTTtBQVMvRjs7a0dBRWtHLEdBQUcsTUFBTTJCLCtDQUErQztBQUMxSixNQUFNQyx1Q0FBdUM7QUFDN0MsTUFBTUMsNkNBQTZDO0FBQ25ELE1BQU1DLHNDQUFzQztBQUM1QyxJQUFJQztBQUNKLE1BQU1DLGdEQUFnRCxXQUFXLEdBQUc5QixvREFBb0JBLENBQUM7SUFDckYrQixRQUFRLElBQUlDO0lBQ1pDLHdDQUF3QyxJQUFJRDtJQUM1Q0UsVUFBVSxJQUFJRjtBQUNsQjtBQUNBLE1BQU1HLDRDQUE0QyxXQUFXLEdBQUdqQyxpREFBaUJBLENBQUMsQ0FBQ2tDLE9BQU9DO0lBQ3RGLElBQUlDO0lBQ0osTUFBTSxFQUFFQyw2QkFBNkJBLDhCQUE4QixLQUFLLEVBQUdDLGlCQUFpQkEsZUFBZSxFQUFHQyxzQkFBc0JBLG9CQUFvQixFQUFHQyxnQkFBZ0JBLGNBQWMsRUFBR0MsbUJBQW1CQSxpQkFBaUIsRUFBR0MsV0FBV0EsU0FBUyxFQUFHLEdBQUdDLFlBQVksR0FBR1Q7SUFDNVEsTUFBTVUsVUFBVTFDLGlEQUFpQkEsQ0FBQzBCO0lBQ2xDLE1BQU0sQ0FBQ2lCLE9BQU9DLFFBQVEsR0FBRzFDLCtDQUFlQSxDQUFDO0lBQ3pDLE1BQU0yQyxnQkFBZ0IsQ0FBQ1gsc0JBQXNCUyxVQUFVLFFBQVFBLFVBQVUsS0FBSyxJQUFJLEtBQUssSUFBSUEsTUFBTUUsYUFBYSxNQUFNLFFBQVFYLHdCQUF3QixLQUFLLElBQUlBLHNCQUFzQlksZUFBZSxRQUFRQSxlQUFlLEtBQUssSUFBSSxLQUFLLElBQUlBLFdBQVdDLFFBQVE7SUFDOVAsTUFBTSxHQUFHQyxNQUFNLEdBQUc5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LGVBQWV0QztnQkFDbkI7Z0JBQ0F3QyxtREFBbUQvRSxxQ0FBcUN1RixvQkFBb0JYLGFBQWE7b0JBQ3JISSxVQUFVO2dCQUNkO1lBQ0o7UUFDSjtRQUNBM0QsY0FBY3FDLGdCQUFnQixDQUFDLFdBQVcrQjtRQUMxQyxPQUFPLElBQUlwRSxjQUFjc0MsbUJBQW1CLENBQUMsV0FBVzhCO0lBRTVELEdBQUc7UUFDQ3BFO1FBQ0FrRTtLQUNIO0lBQ0QsT0FBTztRQUNIeEIsZ0JBQWdCLElBQUl5QiwwQkFBMEJqQixPQUFPLEdBQUc7UUFFeERQLGVBQWUsSUFBSXdCLDBCQUEwQmpCLE9BQU8sR0FBRztJQUMzRDtBQUNKO0FBQ0EsU0FBU2hCO0lBQ0wsTUFBTWhCLFFBQVEsSUFBSW1ELFlBQVk1RjtJQUM5QnlCLFNBQVNvRSxhQUFhLENBQUNwRDtBQUMzQjtBQUNBLFNBQVN3QyxtREFBbURhLElBQUksRUFBRUMsT0FBTyxFQUFFQyxNQUFNLEVBQUUsRUFBRWQsVUFBVUEsUUFBUSxFQUFHO0lBQ3RHLE1BQU14QyxTQUFTc0QsT0FBT2pCLGFBQWEsQ0FBQ3JDLE1BQU07SUFDMUMsTUFBTUQsUUFBUSxJQUFJbUQsWUFBWUUsTUFBTTtRQUNoQ0csU0FBUztRQUNUQyxZQUFZO1FBQ1pGLFFBQVFBO0lBQ1o7SUFDQSxJQUFJRCxTQUFTckQsT0FBT2tCLGdCQUFnQixDQUFDa0MsTUFBTUMsU0FBUztRQUNoRFgsTUFBTTtJQUNWO0lBQ0EsSUFBSUYsVUFBVTFGLHNGQUFrQ0EsQ0FBQ2tELFFBQVFEO1NBQ3BEQyxPQUFPbUQsYUFBYSxDQUFDcEQ7QUFDOUI7QUFDQSxNQUFNMEQsNENBQTRDMUY7QUFDbEQsTUFBTTJGLDRDQUE0QzVCO0FBS2tNLENBQ3BQLGtDQUFrQyIsInNvdXJjZXMiOlsid2VicGFjazovL2VtYmVkY2hhaW4tYWRtaW4vLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXNlbGVjdC9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LWRpc21pc3NhYmxlLWxheWVyL2Rpc3QvaW5kZXgubWpzP2Y3MTEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICRrcXdwSCRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZXh0ZW5kc1wiO1xuaW1wb3J0IHtjcmVhdGVDb250ZXh0IGFzICRrcXdwSCRjcmVhdGVDb250ZXh0LCBmb3J3YXJkUmVmIGFzICRrcXdwSCRmb3J3YXJkUmVmLCB1c2VDb250ZXh0IGFzICRrcXdwSCR1c2VDb250ZXh0LCB1c2VTdGF0ZSBhcyAka3F3cEgkdXNlU3RhdGUsIHVzZUVmZmVjdCBhcyAka3F3cEgkdXNlRWZmZWN0LCBjcmVhdGVFbGVtZW50IGFzICRrcXdwSCRjcmVhdGVFbGVtZW50LCB1c2VSZWYgYXMgJGtxd3BIJHVzZVJlZn0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQge2NvbXBvc2VFdmVudEhhbmRsZXJzIGFzICRrcXdwSCRjb21wb3NlRXZlbnRIYW5kbGVyc30gZnJvbSBcIkByYWRpeC11aS9wcmltaXRpdmVcIjtcbmltcG9ydCB7UHJpbWl0aXZlIGFzICRrcXdwSCRQcmltaXRpdmUsIGRpc3BhdGNoRGlzY3JldGVDdXN0b21FdmVudCBhcyAka3F3cEgkZGlzcGF0Y2hEaXNjcmV0ZUN1c3RvbUV2ZW50fSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXByaW1pdGl2ZVwiO1xuaW1wb3J0IHt1c2VDb21wb3NlZFJlZnMgYXMgJGtxd3BIJHVzZUNvbXBvc2VkUmVmc30gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1jb21wb3NlLXJlZnNcIjtcbmltcG9ydCB7dXNlQ2FsbGJhY2tSZWYgYXMgJGtxd3BIJHVzZUNhbGxiYWNrUmVmfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXVzZS1jYWxsYmFjay1yZWZcIjtcbmltcG9ydCB7dXNlRXNjYXBlS2V5ZG93biBhcyAka3F3cEgkdXNlRXNjYXBlS2V5ZG93bn0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC11c2UtZXNjYXBlLWtleWRvd25cIjtcblxuXG5cblxuXG5cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBEaXNtaXNzYWJsZUxheWVyXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRESVNNSVNTQUJMRV9MQVlFUl9OQU1FID0gJ0Rpc21pc3NhYmxlTGF5ZXInO1xuY29uc3QgJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJENPTlRFWFRfVVBEQVRFID0gJ2Rpc21pc3NhYmxlTGF5ZXIudXBkYXRlJztcbmNvbnN0ICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRQT0lOVEVSX0RPV05fT1VUU0lERSA9ICdkaXNtaXNzYWJsZUxheWVyLnBvaW50ZXJEb3duT3V0c2lkZSc7XG5jb25zdCAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRk9DVVNfT1VUU0lERSA9ICdkaXNtaXNzYWJsZUxheWVyLmZvY3VzT3V0c2lkZSc7XG5sZXQgJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJG9yaWdpbmFsQm9keVBvaW50ZXJFdmVudHM7XG5jb25zdCAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRGlzbWlzc2FibGVMYXllckNvbnRleHQgPSAvKiNfX1BVUkVfXyovICRrcXdwSCRjcmVhdGVDb250ZXh0KHtcbiAgICBsYXllcnM6IG5ldyBTZXQoKSxcbiAgICBsYXllcnNXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZDogbmV3IFNldCgpLFxuICAgIGJyYW5jaGVzOiBuZXcgU2V0KClcbn0pO1xuY29uc3QgJDVjYjkyYmVmNzU3Nzk2MGUkZXhwb3J0JDE3N2ZiNjJmZjNlYzFmMjIgPSAvKiNfX1BVUkVfXyovICRrcXdwSCRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIHZhciBfbm9kZSRvd25lckRvY3VtZW50O1xuICAgIGNvbnN0IHsgZGlzYWJsZU91dHNpZGVQb2ludGVyRXZlbnRzOiBkaXNhYmxlT3V0c2lkZVBvaW50ZXJFdmVudHMgPSBmYWxzZSAsIG9uRXNjYXBlS2V5RG93bjogb25Fc2NhcGVLZXlEb3duICwgb25Qb2ludGVyRG93bk91dHNpZGU6IG9uUG9pbnRlckRvd25PdXRzaWRlICwgb25Gb2N1c091dHNpZGU6IG9uRm9jdXNPdXRzaWRlICwgb25JbnRlcmFjdE91dHNpZGU6IG9uSW50ZXJhY3RPdXRzaWRlICwgb25EaXNtaXNzOiBvbkRpc21pc3MgLCAuLi5sYXllclByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBjb250ZXh0ID0gJGtxd3BIJHVzZUNvbnRleHQoJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJERpc21pc3NhYmxlTGF5ZXJDb250ZXh0KTtcbiAgICBjb25zdCBbbm9kZTEsIHNldE5vZGVdID0gJGtxd3BIJHVzZVN0YXRlKG51bGwpO1xuICAgIGNvbnN0IG93bmVyRG9jdW1lbnQgPSAoX25vZGUkb3duZXJEb2N1bWVudCA9IG5vZGUxID09PSBudWxsIHx8IG5vZGUxID09PSB2b2lkIDAgPyB2b2lkIDAgOiBub2RlMS5vd25lckRvY3VtZW50KSAhPT0gbnVsbCAmJiBfbm9kZSRvd25lckRvY3VtZW50ICE9PSB2b2lkIDAgPyBfbm9kZSRvd25lckRvY3VtZW50IDogZ2xvYmFsVGhpcyA9PT0gbnVsbCB8fCBnbG9iYWxUaGlzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBnbG9iYWxUaGlzLmRvY3VtZW50O1xuICAgIGNvbnN0IFssIGZvcmNlXSA9ICRrcXdwSCR1c2VTdGF0ZSh7fSk7XG4gICAgY29uc3QgY29tcG9zZWRSZWZzID0gJGtxd3BIJHVzZUNvbXBvc2VkUmVmcyhmb3J3YXJkZWRSZWYsIChub2RlKT0+c2V0Tm9kZShub2RlKVxuICAgICk7XG4gICAgY29uc3QgbGF5ZXJzID0gQXJyYXkuZnJvbShjb250ZXh0LmxheWVycyk7XG4gICAgY29uc3QgW2hpZ2hlc3RMYXllcldpdGhPdXRzaWRlUG9pbnRlckV2ZW50c0Rpc2FibGVkXSA9IFtcbiAgICAgICAgLi4uY29udGV4dC5sYXllcnNXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZFxuICAgIF0uc2xpY2UoLTEpOyAvLyBwcmV0dGllci1pZ25vcmVcbiAgICBjb25zdCBoaWdoZXN0TGF5ZXJXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZEluZGV4ID0gbGF5ZXJzLmluZGV4T2YoaGlnaGVzdExheWVyV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWQpOyAvLyBwcmV0dGllci1pZ25vcmVcbiAgICBjb25zdCBpbmRleCA9IG5vZGUxID8gbGF5ZXJzLmluZGV4T2Yobm9kZTEpIDogLTE7XG4gICAgY29uc3QgaXNCb2R5UG9pbnRlckV2ZW50c0Rpc2FibGVkID0gY29udGV4dC5sYXllcnNXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZC5zaXplID4gMDtcbiAgICBjb25zdCBpc1BvaW50ZXJFdmVudHNFbmFibGVkID0gaW5kZXggPj0gaGlnaGVzdExheWVyV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWRJbmRleDtcbiAgICBjb25zdCBwb2ludGVyRG93bk91dHNpZGUgPSAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkdXNlUG9pbnRlckRvd25PdXRzaWRlKChldmVudCk9PntcbiAgICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0O1xuICAgICAgICBjb25zdCBpc1BvaW50ZXJEb3duT25CcmFuY2ggPSBbXG4gICAgICAgICAgICAuLi5jb250ZXh0LmJyYW5jaGVzXG4gICAgICAgIF0uc29tZSgoYnJhbmNoKT0+YnJhbmNoLmNvbnRhaW5zKHRhcmdldClcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKCFpc1BvaW50ZXJFdmVudHNFbmFibGVkIHx8IGlzUG9pbnRlckRvd25PbkJyYW5jaCkgcmV0dXJuO1xuICAgICAgICBvblBvaW50ZXJEb3duT3V0c2lkZSA9PT0gbnVsbCB8fCBvblBvaW50ZXJEb3duT3V0c2lkZSA9PT0gdm9pZCAwIHx8IG9uUG9pbnRlckRvd25PdXRzaWRlKGV2ZW50KTtcbiAgICAgICAgb25JbnRlcmFjdE91dHNpZGUgPT09IG51bGwgfHwgb25JbnRlcmFjdE91dHNpZGUgPT09IHZvaWQgMCB8fCBvbkludGVyYWN0T3V0c2lkZShldmVudCk7XG4gICAgICAgIGlmICghZXZlbnQuZGVmYXVsdFByZXZlbnRlZCkgb25EaXNtaXNzID09PSBudWxsIHx8IG9uRGlzbWlzcyA9PT0gdm9pZCAwIHx8IG9uRGlzbWlzcygpO1xuICAgIH0sIG93bmVyRG9jdW1lbnQpO1xuICAgIGNvbnN0IGZvY3VzT3V0c2lkZSA9ICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciR1c2VGb2N1c091dHNpZGUoKGV2ZW50KT0+e1xuICAgICAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQ7XG4gICAgICAgIGNvbnN0IGlzRm9jdXNJbkJyYW5jaCA9IFtcbiAgICAgICAgICAgIC4uLmNvbnRleHQuYnJhbmNoZXNcbiAgICAgICAgXS5zb21lKChicmFuY2gpPT5icmFuY2guY29udGFpbnModGFyZ2V0KVxuICAgICAgICApO1xuICAgICAgICBpZiAoaXNGb2N1c0luQnJhbmNoKSByZXR1cm47XG4gICAgICAgIG9uRm9jdXNPdXRzaWRlID09PSBudWxsIHx8IG9uRm9jdXNPdXRzaWRlID09PSB2b2lkIDAgfHwgb25Gb2N1c091dHNpZGUoZXZlbnQpO1xuICAgICAgICBvbkludGVyYWN0T3V0c2lkZSA9PT0gbnVsbCB8fCBvbkludGVyYWN0T3V0c2lkZSA9PT0gdm9pZCAwIHx8IG9uSW50ZXJhY3RPdXRzaWRlKGV2ZW50KTtcbiAgICAgICAgaWYgKCFldmVudC5kZWZhdWx0UHJldmVudGVkKSBvbkRpc21pc3MgPT09IG51bGwgfHwgb25EaXNtaXNzID09PSB2b2lkIDAgfHwgb25EaXNtaXNzKCk7XG4gICAgfSwgb3duZXJEb2N1bWVudCk7XG4gICAgJGtxd3BIJHVzZUVzY2FwZUtleWRvd24oKGV2ZW50KT0+e1xuICAgICAgICBjb25zdCBpc0hpZ2hlc3RMYXllciA9IGluZGV4ID09PSBjb250ZXh0LmxheWVycy5zaXplIC0gMTtcbiAgICAgICAgaWYgKCFpc0hpZ2hlc3RMYXllcikgcmV0dXJuO1xuICAgICAgICBvbkVzY2FwZUtleURvd24gPT09IG51bGwgfHwgb25Fc2NhcGVLZXlEb3duID09PSB2b2lkIDAgfHwgb25Fc2NhcGVLZXlEb3duKGV2ZW50KTtcbiAgICAgICAgaWYgKCFldmVudC5kZWZhdWx0UHJldmVudGVkICYmIG9uRGlzbWlzcykge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIG9uRGlzbWlzcygpO1xuICAgICAgICB9XG4gICAgfSwgb3duZXJEb2N1bWVudCk7XG4gICAgJGtxd3BIJHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBpZiAoIW5vZGUxKSByZXR1cm47XG4gICAgICAgIGlmIChkaXNhYmxlT3V0c2lkZVBvaW50ZXJFdmVudHMpIHtcbiAgICAgICAgICAgIGlmIChjb250ZXh0LmxheWVyc1dpdGhPdXRzaWRlUG9pbnRlckV2ZW50c0Rpc2FibGVkLnNpemUgPT09IDApIHtcbiAgICAgICAgICAgICAgICAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkb3JpZ2luYWxCb2R5UG9pbnRlckV2ZW50cyA9IG93bmVyRG9jdW1lbnQuYm9keS5zdHlsZS5wb2ludGVyRXZlbnRzO1xuICAgICAgICAgICAgICAgIG93bmVyRG9jdW1lbnQuYm9keS5zdHlsZS5wb2ludGVyRXZlbnRzID0gJ25vbmUnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29udGV4dC5sYXllcnNXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZC5hZGQobm9kZTEpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnRleHQubGF5ZXJzLmFkZChub2RlMSk7XG4gICAgICAgICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRkaXNwYXRjaFVwZGF0ZSgpO1xuICAgICAgICByZXR1cm4gKCk9PntcbiAgICAgICAgICAgIGlmIChkaXNhYmxlT3V0c2lkZVBvaW50ZXJFdmVudHMgJiYgY29udGV4dC5sYXllcnNXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZC5zaXplID09PSAxKSBvd25lckRvY3VtZW50LmJvZHkuc3R5bGUucG9pbnRlckV2ZW50cyA9ICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRvcmlnaW5hbEJvZHlQb2ludGVyRXZlbnRzO1xuICAgICAgICB9O1xuICAgIH0sIFtcbiAgICAgICAgbm9kZTEsXG4gICAgICAgIG93bmVyRG9jdW1lbnQsXG4gICAgICAgIGRpc2FibGVPdXRzaWRlUG9pbnRlckV2ZW50cyxcbiAgICAgICAgY29udGV4dFxuICAgIF0pO1xuICAgIC8qKlxuICAgKiBXZSBwdXJwb3NlZnVsbHkgcHJldmVudCBjb21iaW5pbmcgdGhpcyBlZmZlY3Qgd2l0aCB0aGUgYGRpc2FibGVPdXRzaWRlUG9pbnRlckV2ZW50c2AgZWZmZWN0XG4gICAqIGJlY2F1c2UgYSBjaGFuZ2UgdG8gYGRpc2FibGVPdXRzaWRlUG9pbnRlckV2ZW50c2Agd291bGQgcmVtb3ZlIHRoaXMgbGF5ZXIgZnJvbSB0aGUgc3RhY2tcbiAgICogYW5kIGFkZCBpdCB0byB0aGUgZW5kIGFnYWluIHNvIHRoZSBsYXllcmluZyBvcmRlciB3b3VsZG4ndCBiZSBfY3JlYXRpb24gb3JkZXJfLlxuICAgKiBXZSBvbmx5IHdhbnQgdGhlbSB0byBiZSByZW1vdmVkIGZyb20gY29udGV4dCBzdGFja3Mgd2hlbiB1bm1vdW50ZWQuXG4gICAqLyAka3F3cEgkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgaWYgKCFub2RlMSkgcmV0dXJuO1xuICAgICAgICAgICAgY29udGV4dC5sYXllcnMuZGVsZXRlKG5vZGUxKTtcbiAgICAgICAgICAgIGNvbnRleHQubGF5ZXJzV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWQuZGVsZXRlKG5vZGUxKTtcbiAgICAgICAgICAgICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRkaXNwYXRjaFVwZGF0ZSgpO1xuICAgICAgICB9O1xuICAgIH0sIFtcbiAgICAgICAgbm9kZTEsXG4gICAgICAgIGNvbnRleHRcbiAgICBdKTtcbiAgICAka3F3cEgkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGNvbnN0IGhhbmRsZVVwZGF0ZSA9ICgpPT5mb3JjZSh7fSlcbiAgICAgICAgO1xuICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRDT05URVhUX1VQREFURSwgaGFuZGxlVXBkYXRlKTtcbiAgICAgICAgcmV0dXJuICgpPT5kb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRDT05URVhUX1VQREFURSwgaGFuZGxlVXBkYXRlKVxuICAgICAgICA7XG4gICAgfSwgW10pO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICRrcXdwSCRjcmVhdGVFbGVtZW50KCRrcXdwSCRQcmltaXRpdmUuZGl2LCAka3F3cEgkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIGxheWVyUHJvcHMsIHtcbiAgICAgICAgcmVmOiBjb21wb3NlZFJlZnMsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICBwb2ludGVyRXZlbnRzOiBpc0JvZHlQb2ludGVyRXZlbnRzRGlzYWJsZWQgPyBpc1BvaW50ZXJFdmVudHNFbmFibGVkID8gJ2F1dG8nIDogJ25vbmUnIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgLi4ucHJvcHMuc3R5bGVcbiAgICAgICAgfSxcbiAgICAgICAgb25Gb2N1c0NhcHR1cmU6ICRrcXdwSCRjb21wb3NlRXZlbnRIYW5kbGVycyhwcm9wcy5vbkZvY3VzQ2FwdHVyZSwgZm9jdXNPdXRzaWRlLm9uRm9jdXNDYXB0dXJlKSxcbiAgICAgICAgb25CbHVyQ2FwdHVyZTogJGtxd3BIJGNvbXBvc2VFdmVudEhhbmRsZXJzKHByb3BzLm9uQmx1ckNhcHR1cmUsIGZvY3VzT3V0c2lkZS5vbkJsdXJDYXB0dXJlKSxcbiAgICAgICAgb25Qb2ludGVyRG93bkNhcHR1cmU6ICRrcXdwSCRjb21wb3NlRXZlbnRIYW5kbGVycyhwcm9wcy5vblBvaW50ZXJEb3duQ2FwdHVyZSwgcG9pbnRlckRvd25PdXRzaWRlLm9uUG9pbnRlckRvd25DYXB0dXJlKVxuICAgIH0pKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQxNzdmYjYyZmYzZWMxZjIyLCB7XG4gICAgZGlzcGxheU5hbWU6ICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRESVNNSVNTQUJMRV9MQVlFUl9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIERpc21pc3NhYmxlTGF5ZXJCcmFuY2hcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJEJSQU5DSF9OQU1FID0gJ0Rpc21pc3NhYmxlTGF5ZXJCcmFuY2gnO1xuY29uc3QgJDVjYjkyYmVmNzU3Nzk2MGUkZXhwb3J0JDRkNWViMjEwOWRiMTQyMjggPSAvKiNfX1BVUkVfXyovICRrcXdwSCRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IGNvbnRleHQgPSAka3F3cEgkdXNlQ29udGV4dCgkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRGlzbWlzc2FibGVMYXllckNvbnRleHQpO1xuICAgIGNvbnN0IHJlZiA9ICRrcXdwSCR1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgY29tcG9zZWRSZWZzID0gJGtxd3BIJHVzZUNvbXBvc2VkUmVmcyhmb3J3YXJkZWRSZWYsIHJlZik7XG4gICAgJGtxd3BIJHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBjb25zdCBub2RlID0gcmVmLmN1cnJlbnQ7XG4gICAgICAgIGlmIChub2RlKSB7XG4gICAgICAgICAgICBjb250ZXh0LmJyYW5jaGVzLmFkZChub2RlKTtcbiAgICAgICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgICAgIGNvbnRleHQuYnJhbmNoZXMuZGVsZXRlKG5vZGUpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH0sIFtcbiAgICAgICAgY29udGV4dC5icmFuY2hlc1xuICAgIF0pO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICRrcXdwSCRjcmVhdGVFbGVtZW50KCRrcXdwSCRQcmltaXRpdmUuZGl2LCAka3F3cEgkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIHByb3BzLCB7XG4gICAgICAgIHJlZjogY29tcG9zZWRSZWZzXG4gICAgfSkpO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJDVjYjkyYmVmNzU3Nzk2MGUkZXhwb3J0JDRkNWViMjEwOWRiMTQyMjgsIHtcbiAgICBkaXNwbGF5TmFtZTogJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJEJSQU5DSF9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gLyoqXG4gKiBMaXN0ZW5zIGZvciBgcG9pbnRlcmRvd25gIG91dHNpZGUgYSByZWFjdCBzdWJ0cmVlLiBXZSB1c2UgYHBvaW50ZXJkb3duYCByYXRoZXIgdGhhbiBgcG9pbnRlcnVwYFxuICogdG8gbWltaWMgbGF5ZXIgZGlzbWlzc2luZyBiZWhhdmlvdXIgcHJlc2VudCBpbiBPUy5cbiAqIFJldHVybnMgcHJvcHMgdG8gcGFzcyB0byB0aGUgbm9kZSB3ZSB3YW50IHRvIGNoZWNrIGZvciBvdXRzaWRlIGV2ZW50cy5cbiAqLyBmdW5jdGlvbiAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkdXNlUG9pbnRlckRvd25PdXRzaWRlKG9uUG9pbnRlckRvd25PdXRzaWRlLCBvd25lckRvY3VtZW50ID0gZ2xvYmFsVGhpcyA9PT0gbnVsbCB8fCBnbG9iYWxUaGlzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBnbG9iYWxUaGlzLmRvY3VtZW50KSB7XG4gICAgY29uc3QgaGFuZGxlUG9pbnRlckRvd25PdXRzaWRlID0gJGtxd3BIJHVzZUNhbGxiYWNrUmVmKG9uUG9pbnRlckRvd25PdXRzaWRlKTtcbiAgICBjb25zdCBpc1BvaW50ZXJJbnNpZGVSZWFjdFRyZWVSZWYgPSAka3F3cEgkdXNlUmVmKGZhbHNlKTtcbiAgICBjb25zdCBoYW5kbGVDbGlja1JlZiA9ICRrcXdwSCR1c2VSZWYoKCk9Pnt9KTtcbiAgICAka3F3cEgkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGNvbnN0IGhhbmRsZVBvaW50ZXJEb3duID0gKGV2ZW50KT0+e1xuICAgICAgICAgICAgaWYgKGV2ZW50LnRhcmdldCAmJiAhaXNQb2ludGVySW5zaWRlUmVhY3RUcmVlUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBldmVudERldGFpbCA9IHtcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luYWxFdmVudDogZXZlbnRcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGhhbmRsZUFuZERpc3BhdGNoUG9pbnRlckRvd25PdXRzaWRlRXZlbnQoKSB7XG4gICAgICAgICAgICAgICAgICAgICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRoYW5kbGVBbmREaXNwYXRjaEN1c3RvbUV2ZW50KCQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRQT0lOVEVSX0RPV05fT1VUU0lERSwgaGFuZGxlUG9pbnRlckRvd25PdXRzaWRlLCBldmVudERldGFpbCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY3JldGU6IHRydWVcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgKiBPbiB0b3VjaCBkZXZpY2VzLCB3ZSBuZWVkIHRvIHdhaXQgZm9yIGEgY2xpY2sgZXZlbnQgYmVjYXVzZSBicm93c2VycyBpbXBsZW1lbnRcbiAgICAgICAgICogYSB+MzUwbXMgZGVsYXkgYmV0d2VlbiB0aGUgdGltZSB0aGUgdXNlciBzdG9wcyB0b3VjaGluZyB0aGUgZGlzcGxheSBhbmQgd2hlbiB0aGVcbiAgICAgICAgICogYnJvd3NlciBleGVjdXRyZXMgZXZlbnRzLiBXZSBuZWVkIHRvIGVuc3VyZSB3ZSBkb24ndCByZWFjdGl2YXRlIHBvaW50ZXItZXZlbnRzIHdpdGhpblxuICAgICAgICAgKiB0aGlzIHRpbWVmcmFtZSBvdGhlcndpc2UgdGhlIGJyb3dzZXIgbWF5IGV4ZWN1dGUgZXZlbnRzIHRoYXQgc2hvdWxkIGhhdmUgYmVlbiBwcmV2ZW50ZWQuXG4gICAgICAgICAqXG4gICAgICAgICAqIEFkZGl0aW9uYWxseSwgdGhpcyBhbHNvIGxldHMgdXMgZGVhbCBhdXRvbWF0aWNhbGx5IHdpdGggY2FuY2VsbGF0aW9ucyB3aGVuIGEgY2xpY2sgZXZlbnRcbiAgICAgICAgICogaXNuJ3QgcmFpc2VkIGJlY2F1c2UgdGhlIHBhZ2Ugd2FzIGNvbnNpZGVyZWQgc2Nyb2xsZWQvZHJhZy1zY3JvbGxlZCwgbG9uZy1wcmVzc2VkLCBldGMuXG4gICAgICAgICAqXG4gICAgICAgICAqIFRoaXMgaXMgd2h5IHdlIGFsc28gY29udGludW91c2x5IHJlbW92ZSB0aGUgcHJldmlvdXMgbGlzdGVuZXIsIGJlY2F1c2Ugd2UgY2Fubm90IGJlXG4gICAgICAgICAqIGNlcnRhaW4gdGhhdCBpdCB3YXMgcmFpc2VkLCBhbmQgdGhlcmVmb3JlIGNsZWFuZWQtdXAuXG4gICAgICAgICAqLyBpZiAoZXZlbnQucG9pbnRlclR5cGUgPT09ICd0b3VjaCcpIHtcbiAgICAgICAgICAgICAgICAgICAgb3duZXJEb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZUNsaWNrUmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgICAgICAgICBoYW5kbGVDbGlja1JlZi5jdXJyZW50ID0gaGFuZGxlQW5kRGlzcGF0Y2hQb2ludGVyRG93bk91dHNpZGVFdmVudDtcbiAgICAgICAgICAgICAgICAgICAgb3duZXJEb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZUNsaWNrUmVmLmN1cnJlbnQsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9uY2U6IHRydWVcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGhhbmRsZUFuZERpc3BhdGNoUG9pbnRlckRvd25PdXRzaWRlRXZlbnQoKTtcbiAgICAgICAgICAgIH0gZWxzZSAvLyBXZSBuZWVkIHRvIHJlbW92ZSB0aGUgZXZlbnQgbGlzdGVuZXIgaW4gY2FzZSB0aGUgb3V0c2lkZSBjbGljayBoYXMgYmVlbiBjYW5jZWxlZC5cbiAgICAgICAgICAgIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3JhZGl4LXVpL3ByaW1pdGl2ZXMvaXNzdWVzLzIxNzFcbiAgICAgICAgICAgIG93bmVyRG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVDbGlja1JlZi5jdXJyZW50KTtcbiAgICAgICAgICAgIGlzUG9pbnRlckluc2lkZVJlYWN0VHJlZVJlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgIH07XG4gICAgICAgIC8qKlxuICAgICAqIGlmIHRoaXMgaG9vayBleGVjdXRlcyBpbiBhIGNvbXBvbmVudCB0aGF0IG1vdW50cyB2aWEgYSBgcG9pbnRlcmRvd25gIGV2ZW50LCB0aGUgZXZlbnRcbiAgICAgKiB3b3VsZCBidWJibGUgdXAgdG8gdGhlIGRvY3VtZW50IGFuZCB0cmlnZ2VyIGEgYHBvaW50ZXJEb3duT3V0c2lkZWAgZXZlbnQuIFdlIGF2b2lkXG4gICAgICogdGhpcyBieSBkZWxheWluZyB0aGUgZXZlbnQgbGlzdGVuZXIgcmVnaXN0cmF0aW9uIG9uIHRoZSBkb2N1bWVudC5cbiAgICAgKiBUaGlzIGlzIG5vdCBSZWFjdCBzcGVjaWZpYywgYnV0IHJhdGhlciBob3cgdGhlIERPTSB3b3JrcywgaWU6XG4gICAgICogYGBgXG4gICAgICogYnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgKCkgPT4ge1xuICAgICAqICAgY29uc29sZS5sb2coJ0kgd2lsbCBsb2cnKTtcbiAgICAgKiAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgKCkgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnSSB3aWxsIGFsc28gbG9nJyk7XG4gICAgICogICB9KVxuICAgICAqIH0pO1xuICAgICAqLyBjb25zdCB0aW1lcklkID0gd2luZG93LnNldFRpbWVvdXQoKCk9PntcbiAgICAgICAgICAgIG93bmVyRG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcmRvd24nLCBoYW5kbGVQb2ludGVyRG93bik7XG4gICAgICAgIH0sIDApO1xuICAgICAgICByZXR1cm4gKCk9PntcbiAgICAgICAgICAgIHdpbmRvdy5jbGVhclRpbWVvdXQodGltZXJJZCk7XG4gICAgICAgICAgICBvd25lckRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgaGFuZGxlUG9pbnRlckRvd24pO1xuICAgICAgICAgICAgb3duZXJEb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZUNsaWNrUmVmLmN1cnJlbnQpO1xuICAgICAgICB9O1xuICAgIH0sIFtcbiAgICAgICAgb3duZXJEb2N1bWVudCxcbiAgICAgICAgaGFuZGxlUG9pbnRlckRvd25PdXRzaWRlXG4gICAgXSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgLy8gZW5zdXJlcyB3ZSBjaGVjayBSZWFjdCBjb21wb25lbnQgdHJlZSAobm90IGp1c3QgRE9NIHRyZWUpXG4gICAgICAgIG9uUG9pbnRlckRvd25DYXB0dXJlOiAoKT0+aXNQb2ludGVySW5zaWRlUmVhY3RUcmVlUmVmLmN1cnJlbnQgPSB0cnVlXG4gICAgfTtcbn1cbi8qKlxuICogTGlzdGVucyBmb3Igd2hlbiBmb2N1cyBoYXBwZW5zIG91dHNpZGUgYSByZWFjdCBzdWJ0cmVlLlxuICogUmV0dXJucyBwcm9wcyB0byBwYXNzIHRvIHRoZSByb290IChub2RlKSBvZiB0aGUgc3VidHJlZSB3ZSB3YW50IHRvIGNoZWNrLlxuICovIGZ1bmN0aW9uICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciR1c2VGb2N1c091dHNpZGUob25Gb2N1c091dHNpZGUsIG93bmVyRG9jdW1lbnQgPSBnbG9iYWxUaGlzID09PSBudWxsIHx8IGdsb2JhbFRoaXMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGdsb2JhbFRoaXMuZG9jdW1lbnQpIHtcbiAgICBjb25zdCBoYW5kbGVGb2N1c091dHNpZGUgPSAka3F3cEgkdXNlQ2FsbGJhY2tSZWYob25Gb2N1c091dHNpZGUpO1xuICAgIGNvbnN0IGlzRm9jdXNJbnNpZGVSZWFjdFRyZWVSZWYgPSAka3F3cEgkdXNlUmVmKGZhbHNlKTtcbiAgICAka3F3cEgkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGNvbnN0IGhhbmRsZUZvY3VzID0gKGV2ZW50KT0+e1xuICAgICAgICAgICAgaWYgKGV2ZW50LnRhcmdldCAmJiAhaXNGb2N1c0luc2lkZVJlYWN0VHJlZVJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZXZlbnREZXRhaWwgPSB7XG4gICAgICAgICAgICAgICAgICAgIG9yaWdpbmFsRXZlbnQ6IGV2ZW50XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkaGFuZGxlQW5kRGlzcGF0Y2hDdXN0b21FdmVudCgkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRk9DVVNfT1VUU0lERSwgaGFuZGxlRm9jdXNPdXRzaWRlLCBldmVudERldGFpbCwge1xuICAgICAgICAgICAgICAgICAgICBkaXNjcmV0ZTogZmFsc2VcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgb3duZXJEb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdmb2N1c2luJywgaGFuZGxlRm9jdXMpO1xuICAgICAgICByZXR1cm4gKCk9Pm93bmVyRG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignZm9jdXNpbicsIGhhbmRsZUZvY3VzKVxuICAgICAgICA7XG4gICAgfSwgW1xuICAgICAgICBvd25lckRvY3VtZW50LFxuICAgICAgICBoYW5kbGVGb2N1c091dHNpZGVcbiAgICBdKTtcbiAgICByZXR1cm4ge1xuICAgICAgICBvbkZvY3VzQ2FwdHVyZTogKCk9PmlzRm9jdXNJbnNpZGVSZWFjdFRyZWVSZWYuY3VycmVudCA9IHRydWVcbiAgICAgICAgLFxuICAgICAgICBvbkJsdXJDYXB0dXJlOiAoKT0+aXNGb2N1c0luc2lkZVJlYWN0VHJlZVJlZi5jdXJyZW50ID0gZmFsc2VcbiAgICB9O1xufVxuZnVuY3Rpb24gJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJGRpc3BhdGNoVXBkYXRlKCkge1xuICAgIGNvbnN0IGV2ZW50ID0gbmV3IEN1c3RvbUV2ZW50KCQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRDT05URVhUX1VQREFURSk7XG4gICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChldmVudCk7XG59XG5mdW5jdGlvbiAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkaGFuZGxlQW5kRGlzcGF0Y2hDdXN0b21FdmVudChuYW1lLCBoYW5kbGVyLCBkZXRhaWwsIHsgZGlzY3JldGU6IGRpc2NyZXRlICB9KSB7XG4gICAgY29uc3QgdGFyZ2V0ID0gZGV0YWlsLm9yaWdpbmFsRXZlbnQudGFyZ2V0O1xuICAgIGNvbnN0IGV2ZW50ID0gbmV3IEN1c3RvbUV2ZW50KG5hbWUsIHtcbiAgICAgICAgYnViYmxlczogZmFsc2UsXG4gICAgICAgIGNhbmNlbGFibGU6IHRydWUsXG4gICAgICAgIGRldGFpbDogZGV0YWlsXG4gICAgfSk7XG4gICAgaWYgKGhhbmRsZXIpIHRhcmdldC5hZGRFdmVudExpc3RlbmVyKG5hbWUsIGhhbmRsZXIsIHtcbiAgICAgICAgb25jZTogdHJ1ZVxuICAgIH0pO1xuICAgIGlmIChkaXNjcmV0ZSkgJGtxd3BIJGRpc3BhdGNoRGlzY3JldGVDdXN0b21FdmVudCh0YXJnZXQsIGV2ZW50KTtcbiAgICBlbHNlIHRhcmdldC5kaXNwYXRjaEV2ZW50KGV2ZW50KTtcbn1cbmNvbnN0ICQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5ID0gJDVjYjkyYmVmNzU3Nzk2MGUkZXhwb3J0JDE3N2ZiNjJmZjNlYzFmMjI7XG5jb25zdCAkNWNiOTJiZWY3NTc3OTYwZSRleHBvcnQkYWVjYjJkZGNiNTVjOTViZSA9ICQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQ0ZDVlYjIxMDlkYjE0MjI4O1xuXG5cblxuXG5leHBvcnQgeyQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQxNzdmYjYyZmYzZWMxZjIyIGFzIERpc21pc3NhYmxlTGF5ZXIsICQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQ0ZDVlYjIxMDlkYjE0MjI4IGFzIERpc21pc3NhYmxlTGF5ZXJCcmFuY2gsICQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IGFzIFJvb3QsICQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCRhZWNiMmRkY2I1NWM5NWJlIGFzIEJyYW5jaH07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5tanMubWFwXG4iXSwibmFtZXMiOlsiJGtxd3BIJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIiwiY3JlYXRlQ29udGV4dCIsIiRrcXdwSCRjcmVhdGVDb250ZXh0IiwiZm9yd2FyZFJlZiIsIiRrcXdwSCRmb3J3YXJkUmVmIiwidXNlQ29udGV4dCIsIiRrcXdwSCR1c2VDb250ZXh0IiwidXNlU3RhdGUiLCIka3F3cEgkdXNlU3RhdGUiLCJ1c2VFZmZlY3QiLCIka3F3cEgkdXNlRWZmZWN0IiwiY3JlYXRlRWxlbWVudCIsIiRrcXdwSCRjcmVhdGVFbGVtZW50IiwidXNlUmVmIiwiJGtxd3BIJHVzZVJlZiIsImNvbXBvc2VFdmVudEhhbmRsZXJzIiwiJGtxd3BIJGNvbXBvc2VFdmVudEhhbmRsZXJzIiwiUHJpbWl0aXZlIiwiJGtxd3BIJFByaW1pdGl2ZSIsImRpc3BhdGNoRGlzY3JldGVDdXN0b21FdmVudCIsIiRrcXdwSCRkaXNwYXRjaERpc2NyZXRlQ3VzdG9tRXZlbnQiLCJ1c2VDb21wb3NlZFJlZnMiLCIka3F3cEgkdXNlQ29tcG9zZWRSZWZzIiwidXNlQ2FsbGJhY2tSZWYiLCIka3F3cEgkdXNlQ2FsbGJhY2tSZWYiLCJ1c2VFc2NhcGVLZXlkb3duIiwiJGtxd3BIJHVzZUVzY2FwZUtleWRvd24iLCIkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRElTTUlTU0FCTEVfTEFZRVJfTkFNRSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRDT05URVhUX1VQREFURSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRQT0lOVEVSX0RPV05fT1VUU0lERSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRGT0NVU19PVVRTSURFIiwiJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJG9yaWdpbmFsQm9keVBvaW50ZXJFdmVudHMiLCIkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRGlzbWlzc2FibGVMYXllckNvbnRleHQiLCJsYXllcnMiLCJTZXQiLCJsYXllcnNXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZCIsImJyYW5jaGVzIiwiJDVjYjkyYmVmNzU3Nzk2MGUkZXhwb3J0JDE3N2ZiNjJmZjNlYzFmMjIiLCJwcm9wcyIsImZvcndhcmRlZFJlZiIsIl9ub2RlJG93bmVyRG9jdW1lbnQiLCJkaXNhYmxlT3V0c2lkZVBvaW50ZXJFdmVudHMiLCJvbkVzY2FwZUtleURvd24iLCJvblBvaW50ZXJEb3duT3V0c2lkZSIsIm9uRm9jdXNPdXRzaWRlIiwib25JbnRlcmFjdE91dHNpZGUiLCJvbkRpc21pc3MiLCJsYXllclByb3BzIiwiY29udGV4dCIsIm5vZGUxIiwic2V0Tm9kZSIsIm93bmVyRG9jdW1lbnQiLCJnbG9iYWxUaGlzIiwiZG9jdW1lbnQiLCJmb3JjZSIsImNvbXBvc2VkUmVmcyIsIm5vZGUiLCJBcnJheSIsImZyb20iLCJoaWdoZXN0TGF5ZXJXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZCIsInNsaWNlIiwiaGlnaGVzdExheWVyV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWRJbmRleCIsImluZGV4T2YiLCJpbmRleCIsImlzQm9keVBvaW50ZXJFdmVudHNEaXNhYmxlZCIsInNpemUiLCJpc1BvaW50ZXJFdmVudHNFbmFibGVkIiwicG9pbnRlckRvd25PdXRzaWRlIiwiJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJHVzZVBvaW50ZXJEb3duT3V0c2lkZSIsImV2ZW50IiwidGFyZ2V0IiwiaXNQb2ludGVyRG93bk9uQnJhbmNoIiwic29tZSIsImJyYW5jaCIsImNvbnRhaW5zIiwiZGVmYXVsdFByZXZlbnRlZCIsImZvY3VzT3V0c2lkZSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciR1c2VGb2N1c091dHNpZGUiLCJpc0ZvY3VzSW5CcmFuY2giLCJpc0hpZ2hlc3RMYXllciIsInByZXZlbnREZWZhdWx0IiwiYm9keSIsInN0eWxlIiwicG9pbnRlckV2ZW50cyIsImFkZCIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRkaXNwYXRjaFVwZGF0ZSIsImRlbGV0ZSIsImhhbmRsZVVwZGF0ZSIsImFkZEV2ZW50TGlzdGVuZXIiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiZGl2IiwicmVmIiwidW5kZWZpbmVkIiwib25Gb2N1c0NhcHR1cmUiLCJvbkJsdXJDYXB0dXJlIiwib25Qb2ludGVyRG93bkNhcHR1cmUiLCJPYmplY3QiLCJhc3NpZ24iLCJkaXNwbGF5TmFtZSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRCUkFOQ0hfTkFNRSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQ0ZDVlYjIxMDlkYjE0MjI4IiwiY3VycmVudCIsImhhbmRsZVBvaW50ZXJEb3duT3V0c2lkZSIsImlzUG9pbnRlckluc2lkZVJlYWN0VHJlZVJlZiIsImhhbmRsZUNsaWNrUmVmIiwiaGFuZGxlUG9pbnRlckRvd24iLCJldmVudERldGFpbCIsIm9yaWdpbmFsRXZlbnQiLCJoYW5kbGVBbmREaXNwYXRjaFBvaW50ZXJEb3duT3V0c2lkZUV2ZW50IiwiJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJGhhbmRsZUFuZERpc3BhdGNoQ3VzdG9tRXZlbnQiLCJkaXNjcmV0ZSIsInBvaW50ZXJUeXBlIiwib25jZSIsInRpbWVySWQiLCJ3aW5kb3ciLCJzZXRUaW1lb3V0IiwiY2xlYXJUaW1lb3V0IiwiaGFuZGxlRm9jdXNPdXRzaWRlIiwiaXNGb2N1c0luc2lkZVJlYWN0VHJlZVJlZiIsImhhbmRsZUZvY3VzIiwiQ3VzdG9tRXZlbnQiLCJkaXNwYXRjaEV2ZW50IiwibmFtZSIsImhhbmRsZXIiLCJkZXRhaWwiLCJidWJibGVzIiwiY2FuY2VsYWJsZSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IiwiJDVjYjkyYmVmNzU3Nzk2MGUkZXhwb3J0JGFlY2IyZGRjYjU1Yzk1YmUiLCJEaXNtaXNzYWJsZUxheWVyIiwiRGlzbWlzc2FibGVMYXllckJyYW5jaCIsIlJvb3QiLCJCcmFuY2giXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-popper/dist/index.mjs": /*!************************************************************************************************!*\ !*** ./node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-popper/dist/index.mjs ***! \************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ALIGN_OPTIONS: () => (/* binding */ $cf1ac5d9fe0e8206$export$3671ffab7b302fc9),\n/* harmony export */ Anchor: () => (/* binding */ $cf1ac5d9fe0e8206$export$b688253958b8dfe7),\n/* harmony export */ Arrow: () => (/* binding */ $cf1ac5d9fe0e8206$export$21b07c8f274aebd5),\n/* harmony export */ Content: () => (/* binding */ $cf1ac5d9fe0e8206$export$7c6e2c02157bb7d2),\n/* harmony export */ Popper: () => (/* binding */ $cf1ac5d9fe0e8206$export$badac9ada3a0bdf9),\n/* harmony export */ PopperAnchor: () => (/* binding */ $cf1ac5d9fe0e8206$export$ecd4e1ccab6ed6d),\n/* harmony export */ PopperArrow: () => (/* binding */ $cf1ac5d9fe0e8206$export$79d62cd4e10a3fd0),\n/* harmony export */ PopperContent: () => (/* binding */ $cf1ac5d9fe0e8206$export$bc4ae5855d3c4fc),\n/* harmony export */ Root: () => (/* binding */ $cf1ac5d9fe0e8206$export$be92b6f5f03c0fe9),\n/* harmony export */ SIDE_OPTIONS: () => (/* binding */ $cf1ac5d9fe0e8206$export$36f0086da09c4b9f),\n/* harmony export */ createPopperScope: () => (/* binding */ $cf1ac5d9fe0e8206$export$722aac194ae923)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @floating-ui/react-dom */ \"(ssr)/./node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.esm.js\");\n/* harmony import */ var _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @floating-ui/react-dom */ \"(ssr)/./node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs\");\n/* harmony import */ var _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @floating-ui/react-dom */ \"(ssr)/./node_modules/@floating-ui/core/dist/floating-ui.core.mjs\");\n/* harmony import */ var _radix_ui_react_arrow__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @radix-ui/react-arrow */ \"(ssr)/./node_modules/@radix-ui/react-arrow/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-compose-refs */ \"(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_context__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-context */ \"(ssr)/./node_modules/@radix-ui/react-context/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @radix-ui/react-use-callback-ref */ \"(ssr)/./node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @radix-ui/react-use-layout-effect */ \"(ssr)/./node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_size__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @radix-ui/react-use-size */ \"(ssr)/./node_modules/@radix-ui/react-use-size/dist/index.mjs\");\n\n\n\n\n\n\n\n\n\n\nconst $cf1ac5d9fe0e8206$export$36f0086da09c4b9f = [\n \"top\",\n \"right\",\n \"bottom\",\n \"left\"\n];\nconst $cf1ac5d9fe0e8206$export$3671ffab7b302fc9 = [\n \"start\",\n \"center\",\n \"end\"\n];\n/* -------------------------------------------------------------------------------------------------\n * Popper\n * -----------------------------------------------------------------------------------------------*/ const $cf1ac5d9fe0e8206$var$POPPER_NAME = \"Popper\";\nconst [$cf1ac5d9fe0e8206$var$createPopperContext, $cf1ac5d9fe0e8206$export$722aac194ae923] = (0,_radix_ui_react_context__WEBPACK_IMPORTED_MODULE_2__.createContextScope)($cf1ac5d9fe0e8206$var$POPPER_NAME);\nconst [$cf1ac5d9fe0e8206$var$PopperProvider, $cf1ac5d9fe0e8206$var$usePopperContext] = $cf1ac5d9fe0e8206$var$createPopperContext($cf1ac5d9fe0e8206$var$POPPER_NAME);\nconst $cf1ac5d9fe0e8206$export$badac9ada3a0bdf9 = (props)=>{\n const { __scopePopper: __scopePopper, children: children } = props;\n const [anchor, setAnchor] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cf1ac5d9fe0e8206$var$PopperProvider, {\n scope: __scopePopper,\n anchor: anchor,\n onAnchorChange: setAnchor\n }, children);\n};\n/*#__PURE__*/ Object.assign($cf1ac5d9fe0e8206$export$badac9ada3a0bdf9, {\n displayName: $cf1ac5d9fe0e8206$var$POPPER_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * PopperAnchor\n * -----------------------------------------------------------------------------------------------*/ const $cf1ac5d9fe0e8206$var$ANCHOR_NAME = \"PopperAnchor\";\nconst $cf1ac5d9fe0e8206$export$ecd4e1ccab6ed6d = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopePopper: __scopePopper, virtualRef: virtualRef, ...anchorProps } = props;\n const context = $cf1ac5d9fe0e8206$var$usePopperContext($cf1ac5d9fe0e8206$var$ANCHOR_NAME, __scopePopper);\n const ref = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_3__.useComposedRefs)(forwardedRef, ref);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n // Consumer can anchor the popper to something that isn't\n // a DOM node e.g. pointer position, so we override the\n // `anchorRef` with their virtual ref in this case.\n context.onAnchorChange((virtualRef === null || virtualRef === void 0 ? void 0 : virtualRef.current) || ref.current);\n });\n return virtualRef ? null : /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, anchorProps, {\n ref: composedRefs\n }));\n});\n/*#__PURE__*/ Object.assign($cf1ac5d9fe0e8206$export$ecd4e1ccab6ed6d, {\n displayName: $cf1ac5d9fe0e8206$var$ANCHOR_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * PopperContent\n * -----------------------------------------------------------------------------------------------*/ const $cf1ac5d9fe0e8206$var$CONTENT_NAME = \"PopperContent\";\nconst [$cf1ac5d9fe0e8206$var$PopperContentProvider, $cf1ac5d9fe0e8206$var$useContentContext] = $cf1ac5d9fe0e8206$var$createPopperContext($cf1ac5d9fe0e8206$var$CONTENT_NAME);\nconst $cf1ac5d9fe0e8206$export$bc4ae5855d3c4fc = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n var _arrowSize$width, _arrowSize$height, _middlewareData$arrow, _middlewareData$arrow2, _middlewareData$arrow3, _middlewareData$trans, _middlewareData$trans2, _middlewareData$hide;\n const { __scopePopper: __scopePopper, side: side = \"bottom\", sideOffset: sideOffset = 0, align: align = \"center\", alignOffset: alignOffset = 0, arrowPadding: arrowPadding = 0, avoidCollisions: avoidCollisions = true, collisionBoundary: collisionBoundary = [], collisionPadding: collisionPaddingProp = 0, sticky: sticky = \"partial\", hideWhenDetached: hideWhenDetached = false, updatePositionStrategy: updatePositionStrategy = \"optimized\", onPlaced: onPlaced, ...contentProps } = props;\n const context = $cf1ac5d9fe0e8206$var$usePopperContext($cf1ac5d9fe0e8206$var$CONTENT_NAME, __scopePopper);\n const [content, setContent] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_3__.useComposedRefs)(forwardedRef, (node)=>setContent(node));\n const [arrow, setArrow] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const arrowSize = (0,_radix_ui_react_use_size__WEBPACK_IMPORTED_MODULE_5__.useSize)(arrow);\n const arrowWidth = (_arrowSize$width = arrowSize === null || arrowSize === void 0 ? void 0 : arrowSize.width) !== null && _arrowSize$width !== void 0 ? _arrowSize$width : 0;\n const arrowHeight = (_arrowSize$height = arrowSize === null || arrowSize === void 0 ? void 0 : arrowSize.height) !== null && _arrowSize$height !== void 0 ? _arrowSize$height : 0;\n const desiredPlacement = side + (align !== \"center\" ? \"-\" + align : \"\");\n const collisionPadding = typeof collisionPaddingProp === \"number\" ? collisionPaddingProp : {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n ...collisionPaddingProp\n };\n const boundary = Array.isArray(collisionBoundary) ? collisionBoundary : [\n collisionBoundary\n ];\n const hasExplicitBoundaries = boundary.length > 0;\n const detectOverflowOptions = {\n padding: collisionPadding,\n boundary: boundary.filter($cf1ac5d9fe0e8206$var$isNotNull),\n // with `strategy: 'fixed'`, this is the only way to get it to respect boundaries\n altBoundary: hasExplicitBoundaries\n };\n const { refs: refs, floatingStyles: floatingStyles, placement: placement, isPositioned: isPositioned, middlewareData: middlewareData } = (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_6__.useFloating)({\n // default to `fixed` strategy so users don't have to pick and we also avoid focus scroll issues\n strategy: \"fixed\",\n placement: desiredPlacement,\n whileElementsMounted: (...args)=>{\n const cleanup = (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_7__.autoUpdate)(...args, {\n animationFrame: updatePositionStrategy === \"always\"\n });\n return cleanup;\n },\n elements: {\n reference: context.anchor\n },\n middleware: [\n (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_8__.offset)({\n mainAxis: sideOffset + arrowHeight,\n alignmentAxis: alignOffset\n }),\n avoidCollisions && (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_8__.shift)({\n mainAxis: true,\n crossAxis: false,\n limiter: sticky === \"partial\" ? (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_8__.limitShift)() : undefined,\n ...detectOverflowOptions\n }),\n avoidCollisions && (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_8__.flip)({\n ...detectOverflowOptions\n }),\n (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_8__.size)({\n ...detectOverflowOptions,\n apply: ({ elements: elements, rects: rects, availableWidth: availableWidth, availableHeight: availableHeight })=>{\n const { width: anchorWidth, height: anchorHeight } = rects.reference;\n const contentStyle = elements.floating.style;\n contentStyle.setProperty(\"--radix-popper-available-width\", `${availableWidth}px`);\n contentStyle.setProperty(\"--radix-popper-available-height\", `${availableHeight}px`);\n contentStyle.setProperty(\"--radix-popper-anchor-width\", `${anchorWidth}px`);\n contentStyle.setProperty(\"--radix-popper-anchor-height\", `${anchorHeight}px`);\n }\n }),\n arrow && (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_6__.arrow)({\n element: arrow,\n padding: arrowPadding\n }),\n $cf1ac5d9fe0e8206$var$transformOrigin({\n arrowWidth: arrowWidth,\n arrowHeight: arrowHeight\n }),\n hideWhenDetached && (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_8__.hide)({\n strategy: \"referenceHidden\",\n ...detectOverflowOptions\n })\n ]\n });\n const [placedSide, placedAlign] = $cf1ac5d9fe0e8206$var$getSideAndAlignFromPlacement(placement);\n const handlePlaced = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_9__.useCallbackRef)(onPlaced);\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_10__.useLayoutEffect)(()=>{\n if (isPositioned) handlePlaced === null || handlePlaced === void 0 || handlePlaced();\n }, [\n isPositioned,\n handlePlaced\n ]);\n const arrowX = (_middlewareData$arrow = middlewareData.arrow) === null || _middlewareData$arrow === void 0 ? void 0 : _middlewareData$arrow.x;\n const arrowY = (_middlewareData$arrow2 = middlewareData.arrow) === null || _middlewareData$arrow2 === void 0 ? void 0 : _middlewareData$arrow2.y;\n const cannotCenterArrow = ((_middlewareData$arrow3 = middlewareData.arrow) === null || _middlewareData$arrow3 === void 0 ? void 0 : _middlewareData$arrow3.centerOffset) !== 0;\n const [contentZIndex, setContentZIndex] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)();\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_10__.useLayoutEffect)(()=>{\n if (content) setContentZIndex(window.getComputedStyle(content).zIndex);\n }, [\n content\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(\"div\", {\n ref: refs.setFloating,\n \"data-radix-popper-content-wrapper\": \"\",\n style: {\n ...floatingStyles,\n transform: isPositioned ? floatingStyles.transform : \"translate(0, -200%)\",\n // keep off the page when measuring\n minWidth: \"max-content\",\n zIndex: contentZIndex,\n [\"--radix-popper-transform-origin\"]: [\n (_middlewareData$trans = middlewareData.transformOrigin) === null || _middlewareData$trans === void 0 ? void 0 : _middlewareData$trans.x,\n (_middlewareData$trans2 = middlewareData.transformOrigin) === null || _middlewareData$trans2 === void 0 ? void 0 : _middlewareData$trans2.y\n ].join(\" \")\n } // Floating UI interally calculates logical alignment based the `dir` attribute on\n ,\n dir: props.dir\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($cf1ac5d9fe0e8206$var$PopperContentProvider, {\n scope: __scopePopper,\n placedSide: placedSide,\n onArrowChange: setArrow,\n arrowX: arrowX,\n arrowY: arrowY,\n shouldHideArrow: cannotCenterArrow\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"data-side\": placedSide,\n \"data-align\": placedAlign\n }, contentProps, {\n ref: composedRefs,\n style: {\n ...contentProps.style,\n // if the PopperContent hasn't been placed yet (not all measurements done)\n // we prevent animations so that users's animation don't kick in too early referring wrong sides\n animation: !isPositioned ? \"none\" : undefined,\n // hide the content if using the hide middleware and should be hidden\n opacity: (_middlewareData$hide = middlewareData.hide) !== null && _middlewareData$hide !== void 0 && _middlewareData$hide.referenceHidden ? 0 : undefined\n }\n }))));\n});\n/*#__PURE__*/ Object.assign($cf1ac5d9fe0e8206$export$bc4ae5855d3c4fc, {\n displayName: $cf1ac5d9fe0e8206$var$CONTENT_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * PopperArrow\n * -----------------------------------------------------------------------------------------------*/ const $cf1ac5d9fe0e8206$var$ARROW_NAME = \"PopperArrow\";\nconst $cf1ac5d9fe0e8206$var$OPPOSITE_SIDE = {\n top: \"bottom\",\n right: \"left\",\n bottom: \"top\",\n left: \"right\"\n};\nconst $cf1ac5d9fe0e8206$export$79d62cd4e10a3fd0 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)(function $cf1ac5d9fe0e8206$export$79d62cd4e10a3fd0(props, forwardedRef) {\n const { __scopePopper: __scopePopper, ...arrowProps } = props;\n const contentContext = $cf1ac5d9fe0e8206$var$useContentContext($cf1ac5d9fe0e8206$var$ARROW_NAME, __scopePopper);\n const baseSide = $cf1ac5d9fe0e8206$var$OPPOSITE_SIDE[contentContext.placedSide];\n return(/*#__PURE__*/ // doesn't report size as we'd expect on SVG elements.\n // it reports their bounding box which is effectively the largest path inside the SVG.\n (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(\"span\", {\n ref: contentContext.onArrowChange,\n style: {\n position: \"absolute\",\n left: contentContext.arrowX,\n top: contentContext.arrowY,\n [baseSide]: 0,\n transformOrigin: {\n top: \"\",\n right: \"0 0\",\n bottom: \"center 0\",\n left: \"100% 0\"\n }[contentContext.placedSide],\n transform: {\n top: \"translateY(100%)\",\n right: \"translateY(50%) rotate(90deg) translateX(-50%)\",\n bottom: `rotate(180deg)`,\n left: \"translateY(50%) rotate(-90deg) translateX(50%)\"\n }[contentContext.placedSide],\n visibility: contentContext.shouldHideArrow ? \"hidden\" : undefined\n }\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_arrow__WEBPACK_IMPORTED_MODULE_11__.Root, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, arrowProps, {\n ref: forwardedRef,\n style: {\n ...arrowProps.style,\n // ensures the element can be measured correctly (mostly for if SVG)\n display: \"block\"\n }\n }))));\n});\n/*#__PURE__*/ Object.assign($cf1ac5d9fe0e8206$export$79d62cd4e10a3fd0, {\n displayName: $cf1ac5d9fe0e8206$var$ARROW_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ function $cf1ac5d9fe0e8206$var$isNotNull(value) {\n return value !== null;\n}\nconst $cf1ac5d9fe0e8206$var$transformOrigin = (options)=>({\n name: \"transformOrigin\",\n options: options,\n fn (data) {\n var _middlewareData$arrow4, _middlewareData$arrow5, _middlewareData$arrow6, _middlewareData$arrow7, _middlewareData$arrow8;\n const { placement: placement, rects: rects, middlewareData: middlewareData } = data;\n const cannotCenterArrow = ((_middlewareData$arrow4 = middlewareData.arrow) === null || _middlewareData$arrow4 === void 0 ? void 0 : _middlewareData$arrow4.centerOffset) !== 0;\n const isArrowHidden = cannotCenterArrow;\n const arrowWidth = isArrowHidden ? 0 : options.arrowWidth;\n const arrowHeight = isArrowHidden ? 0 : options.arrowHeight;\n const [placedSide, placedAlign] = $cf1ac5d9fe0e8206$var$getSideAndAlignFromPlacement(placement);\n const noArrowAlign = {\n start: \"0%\",\n center: \"50%\",\n end: \"100%\"\n }[placedAlign];\n const arrowXCenter = ((_middlewareData$arrow5 = (_middlewareData$arrow6 = middlewareData.arrow) === null || _middlewareData$arrow6 === void 0 ? void 0 : _middlewareData$arrow6.x) !== null && _middlewareData$arrow5 !== void 0 ? _middlewareData$arrow5 : 0) + arrowWidth / 2;\n const arrowYCenter = ((_middlewareData$arrow7 = (_middlewareData$arrow8 = middlewareData.arrow) === null || _middlewareData$arrow8 === void 0 ? void 0 : _middlewareData$arrow8.y) !== null && _middlewareData$arrow7 !== void 0 ? _middlewareData$arrow7 : 0) + arrowHeight / 2;\n let x = \"\";\n let y = \"\";\n if (placedSide === \"bottom\") {\n x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;\n y = `${-arrowHeight}px`;\n } else if (placedSide === \"top\") {\n x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;\n y = `${rects.floating.height + arrowHeight}px`;\n } else if (placedSide === \"right\") {\n x = `${-arrowHeight}px`;\n y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;\n } else if (placedSide === \"left\") {\n x = `${rects.floating.width + arrowHeight}px`;\n y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;\n }\n return {\n data: {\n x: x,\n y: y\n }\n };\n }\n });\nfunction $cf1ac5d9fe0e8206$var$getSideAndAlignFromPlacement(placement) {\n const [side, align = \"center\"] = placement.split(\"-\");\n return [\n side,\n align\n ];\n}\nconst $cf1ac5d9fe0e8206$export$be92b6f5f03c0fe9 = $cf1ac5d9fe0e8206$export$badac9ada3a0bdf9;\nconst $cf1ac5d9fe0e8206$export$b688253958b8dfe7 = $cf1ac5d9fe0e8206$export$ecd4e1ccab6ed6d;\nconst $cf1ac5d9fe0e8206$export$7c6e2c02157bb7d2 = $cf1ac5d9fe0e8206$export$bc4ae5855d3c4fc;\nconst $cf1ac5d9fe0e8206$export$21b07c8f274aebd5 = $cf1ac5d9fe0e8206$export$79d62cd4e10a3fd0;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXNlbGVjdC9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXBvcHBlci9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFzRjtBQUM0RjtBQUMrRjtBQUN2TjtBQUM2QjtBQUNDO0FBQ2hCO0FBQ2lCO0FBQ0c7QUFDekI7QUFZbkUsTUFBTTJDLDRDQUE0QztJQUM5QztJQUNBO0lBQ0E7SUFDQTtDQUNIO0FBQ0QsTUFBTUMsNENBQTRDO0lBQzlDO0lBQ0E7SUFDQTtDQUNIO0FBQ0Q7O2tHQUVrRyxHQUFHLE1BQU1DLG9DQUFvQztBQUMvSSxNQUFNLENBQUNDLDJDQUEyQ0Msd0NBQXdDLEdBQUdiLDJFQUF5QkEsQ0FBQ1c7QUFDdkgsTUFBTSxDQUFDRyxzQ0FBc0NDLHVDQUF1QyxHQUFHSCwwQ0FBMENEO0FBQ2pJLE1BQU1LLDRDQUE0QyxDQUFDQztJQUMvQyxNQUFNLEVBQUVDLGVBQWVBLGFBQWEsRUFBR0MsVUFBVUEsUUFBUSxFQUFHLEdBQUdGO0lBQy9ELE1BQU0sQ0FBQ0csUUFBUUMsVUFBVSxHQUFHckQsK0NBQWVBLENBQUM7SUFDNUMsT0FBTyxXQUFXLEdBQUdFLG9EQUFvQkEsQ0FBQzRDLHNDQUFzQztRQUM1RVEsT0FBT0o7UUFDUEUsUUFBUUE7UUFDUkcsZ0JBQWdCRjtJQUNwQixHQUFHRjtBQUNQO0FBQ0EsV0FBVyxHQUFHSyxPQUFPQyxNQUFNLENBQUNULDJDQUEyQztJQUNuRVUsYUFBYWY7QUFDakI7QUFDQTs7a0dBRWtHLEdBQUcsTUFBTWdCLG9DQUFvQztBQUMvSSxNQUFNQywyQ0FBMkMsV0FBVyxHQUFHeEQsaURBQWlCQSxDQUFDLENBQUM2QyxPQUFPWTtJQUNyRixNQUFNLEVBQUVYLGVBQWVBLGFBQWEsRUFBR1ksWUFBWUEsVUFBVSxFQUFHLEdBQUdDLGFBQWEsR0FBR2Q7SUFDbkYsTUFBTWUsVUFBVWpCLHVDQUF1Q1ksbUNBQW1DVDtJQUMxRixNQUFNZSxNQUFNM0QsNkNBQWFBLENBQUM7SUFDMUIsTUFBTTRELGVBQWVwQyw2RUFBc0JBLENBQUMrQixjQUFjSTtJQUMxRHpELGdEQUFnQkEsQ0FBQztRQUNiLHlEQUF5RDtRQUN6RCx1REFBdUQ7UUFDdkQsbURBQW1EO1FBQ25Ed0QsUUFBUVQsY0FBYyxDQUFDLENBQUNPLGVBQWUsUUFBUUEsZUFBZSxLQUFLLElBQUksS0FBSyxJQUFJQSxXQUFXSyxPQUFPLEtBQUtGLElBQUlFLE9BQU87SUFDdEg7SUFDQSxPQUFPTCxhQUFhLE9BQU8sV0FBVyxHQUFHNUQsb0RBQW9CQSxDQUFDZ0MsZ0VBQWdCQSxDQUFDa0MsR0FBRyxFQUFFdEUsOEVBQW9DQSxDQUFDLENBQUMsR0FBR2lFLGFBQWE7UUFDdElFLEtBQUtDO0lBQ1Q7QUFDSjtBQUNBLFdBQVcsR0FBR1YsT0FBT0MsTUFBTSxDQUFDRywwQ0FBMEM7SUFDbEVGLGFBQWFDO0FBQ2pCO0FBQ0E7O2tHQUVrRyxHQUFHLE1BQU1VLHFDQUFxQztBQUNoSixNQUFNLENBQUNDLDZDQUE2Q0Msd0NBQXdDLEdBQUczQiwwQ0FBMEN5QjtBQUN6SSxNQUFNRywyQ0FBMkMsV0FBVyxHQUFHcEUsaURBQWlCQSxDQUFDLENBQUM2QyxPQUFPWTtJQUNyRixJQUFJWSxrQkFBa0JDLG1CQUFtQkMsdUJBQXVCQyx3QkFBd0JDLHdCQUF3QkMsdUJBQXVCQyx3QkFBd0JDO0lBQy9KLE1BQU0sRUFBRTlCLGVBQWVBLGFBQWEsRUFBRytCLE1BQU1BLE9BQU8sUUFBUSxFQUFHQyxZQUFZQSxhQUFhLENBQUMsRUFBR0MsT0FBT0EsUUFBUSxRQUFRLEVBQUdDLGFBQWFBLGNBQWMsQ0FBQyxFQUFHQyxjQUFjQSxlQUFlLENBQUMsRUFBR0MsaUJBQWlCQSxrQkFBa0IsSUFBSSxFQUFHQyxtQkFBbUJBLG9CQUFvQixFQUFFLEVBQUdDLGtCQUFrQkMsdUJBQXVCLENBQUMsRUFBR0MsUUFBUUEsU0FBUyxTQUFTLEVBQUdDLGtCQUFrQkEsbUJBQW1CLEtBQUssRUFBR0Msd0JBQXdCQSx5QkFBeUIsV0FBVyxFQUFHQyxVQUFVQSxRQUFRLEVBQUcsR0FBR0MsY0FBYyxHQUFHN0M7SUFDM2UsTUFBTWUsVUFBVWpCLHVDQUF1Q3NCLG9DQUFvQ25CO0lBQzNGLE1BQU0sQ0FBQzZDLFNBQVNDLFdBQVcsR0FBR2hHLCtDQUFlQSxDQUFDO0lBQzlDLE1BQU1rRSxlQUFlcEMsNkVBQXNCQSxDQUFDK0IsY0FBYyxDQUFDb0MsT0FBT0QsV0FBV0M7SUFFN0UsTUFBTSxDQUFDMUUsT0FBTzJFLFNBQVMsR0FBR2xHLCtDQUFlQSxDQUFDO0lBQzFDLE1BQU1tRyxZQUFZM0QsaUVBQWNBLENBQUNqQjtJQUNqQyxNQUFNNkUsYUFBYSxDQUFDM0IsbUJBQW1CMEIsY0FBYyxRQUFRQSxjQUFjLEtBQUssSUFBSSxLQUFLLElBQUlBLFVBQVVFLEtBQUssTUFBTSxRQUFRNUIscUJBQXFCLEtBQUssSUFBSUEsbUJBQW1CO0lBQzNLLE1BQU02QixjQUFjLENBQUM1QixvQkFBb0J5QixjQUFjLFFBQVFBLGNBQWMsS0FBSyxJQUFJLEtBQUssSUFBSUEsVUFBVUksTUFBTSxNQUFNLFFBQVE3QixzQkFBc0IsS0FBSyxJQUFJQSxvQkFBb0I7SUFDaEwsTUFBTThCLG1CQUFtQnZCLE9BQVFFLENBQUFBLFVBQVUsV0FBVyxNQUFNQSxRQUFRLEVBQUM7SUFDckUsTUFBTUssbUJBQW1CLE9BQU9DLHlCQUF5QixXQUFXQSx1QkFBdUI7UUFDdkZnQixLQUFLO1FBQ0xDLE9BQU87UUFDUEMsUUFBUTtRQUNSQyxNQUFNO1FBQ04sR0FBR25CLG9CQUFvQjtJQUMzQjtJQUNBLE1BQU1vQixXQUFXQyxNQUFNQyxPQUFPLENBQUN4QixxQkFBcUJBLG9CQUFvQjtRQUNwRUE7S0FDSDtJQUNELE1BQU15Qix3QkFBd0JILFNBQVNJLE1BQU0sR0FBRztJQUNoRCxNQUFNQyx3QkFBd0I7UUFDMUJDLFNBQVMzQjtRQUNUcUIsVUFBVUEsU0FBU08sTUFBTSxDQUFDQztRQUMxQixpRkFBaUY7UUFDakZDLGFBQWFOO0lBQ2pCO0lBQ0EsTUFBTSxFQUFFTyxNQUFNQSxJQUFJLEVBQUdDLGdCQUFnQkEsY0FBYyxFQUFHQyxXQUFXQSxTQUFTLEVBQUdDLGNBQWNBLFlBQVksRUFBR0MsZ0JBQWdCQSxjQUFjLEVBQUcsR0FBR2pILG1FQUFrQkEsQ0FBQztRQUM3SixnR0FBZ0c7UUFDaEdrSCxVQUFVO1FBQ1ZILFdBQVdqQjtRQUNYcUIsc0JBQXNCLENBQUMsR0FBR0M7WUFDdEIsTUFBTUMsVUFBVW5ILGtFQUFpQkEsSUFBSWtILE1BQU07Z0JBQ3ZDRSxnQkFBZ0JwQywyQkFBMkI7WUFDL0M7WUFDQSxPQUFPbUM7UUFDWDtRQUNBRSxVQUFVO1lBQ05DLFdBQVdsRSxRQUFRWixNQUFNO1FBQzdCO1FBQ0ErRSxZQUFZO1lBQ1JySCw4REFBYUEsQ0FBQztnQkFDVnNILFVBQVVsRCxhQUFhb0I7Z0JBQ3ZCK0IsZUFBZWpEO1lBQ25CO1lBQ0FFLG1CQUFtQnRFLDZEQUFZQSxDQUFDO2dCQUM1Qm9ILFVBQVU7Z0JBQ1ZFLFdBQVc7Z0JBQ1hDLFNBQVM3QyxXQUFXLFlBQVl4RSxrRUFBaUJBLEtBQUtzSDtnQkFDdEQsR0FBR3RCLHFCQUFxQjtZQUM1QjtZQUNBNUIsbUJBQW1CbEUsNERBQVdBLENBQUM7Z0JBQzNCLEdBQUc4RixxQkFBcUI7WUFDNUI7WUFDQTVGLDREQUFXQSxDQUFDO2dCQUNSLEdBQUc0RixxQkFBcUI7Z0JBQ3hCdUIsT0FBTyxDQUFDLEVBQUVSLFVBQVVBLFFBQVEsRUFBR1MsT0FBT0EsS0FBSyxFQUFHQyxnQkFBZ0JBLGNBQWMsRUFBR0MsaUJBQWlCQSxlQUFlLEVBQUc7b0JBQzlHLE1BQU0sRUFBRXZDLE9BQU93QyxXQUFXLEVBQUd0QyxRQUFRdUMsWUFBWSxFQUFHLEdBQUdKLE1BQU1SLFNBQVM7b0JBQ3RFLE1BQU1hLGVBQWVkLFNBQVNlLFFBQVEsQ0FBQ0MsS0FBSztvQkFDNUNGLGFBQWFHLFdBQVcsQ0FBQyxrQ0FBa0MsQ0FBQyxFQUFFUCxlQUFlLEVBQUUsQ0FBQztvQkFDaEZJLGFBQWFHLFdBQVcsQ0FBQyxtQ0FBbUMsQ0FBQyxFQUFFTixnQkFBZ0IsRUFBRSxDQUFDO29CQUNsRkcsYUFBYUcsV0FBVyxDQUFDLCtCQUErQixDQUFDLEVBQUVMLFlBQVksRUFBRSxDQUFDO29CQUMxRUUsYUFBYUcsV0FBVyxDQUFDLGdDQUFnQyxDQUFDLEVBQUVKLGFBQWEsRUFBRSxDQUFDO2dCQUNoRjtZQUNKO1lBQ0F2SCxTQUFTQyw2REFBWUEsQ0FBQztnQkFDbEIySCxTQUFTNUg7Z0JBQ1Q0RixTQUFTOUI7WUFDYjtZQUNBK0Qsc0NBQXNDO2dCQUNsQ2hELFlBQVlBO2dCQUNaRSxhQUFhQTtZQUNqQjtZQUNBWCxvQkFBb0JqRSw0REFBV0EsQ0FBQztnQkFDNUJrRyxVQUFVO2dCQUNWLEdBQUdWLHFCQUFxQjtZQUM1QjtTQUNIO0lBQ0w7SUFDQSxNQUFNLENBQUNtQyxZQUFZQyxZQUFZLEdBQUdDLG1EQUFtRDlCO0lBQ3JGLE1BQU0rQixlQUFlcEgsZ0ZBQXFCQSxDQUFDeUQ7SUFDM0N2RCxtRkFBc0JBLENBQUM7UUFDbkIsSUFBSW9GLGNBQWM4QixpQkFBaUIsUUFBUUEsaUJBQWlCLEtBQUssS0FBS0E7SUFDMUUsR0FBRztRQUNDOUI7UUFDQThCO0tBQ0g7SUFDRCxNQUFNQyxTQUFTLENBQUM5RSx3QkFBd0JnRCxlQUFlcEcsS0FBSyxNQUFNLFFBQVFvRCwwQkFBMEIsS0FBSyxJQUFJLEtBQUssSUFBSUEsc0JBQXNCK0UsQ0FBQztJQUM3SSxNQUFNQyxTQUFTLENBQUMvRSx5QkFBeUIrQyxlQUFlcEcsS0FBSyxNQUFNLFFBQVFxRCwyQkFBMkIsS0FBSyxJQUFJLEtBQUssSUFBSUEsdUJBQXVCZ0YsQ0FBQztJQUNoSixNQUFNQyxvQkFBb0IsQ0FBQyxDQUFDaEYseUJBQXlCOEMsZUFBZXBHLEtBQUssTUFBTSxRQUFRc0QsMkJBQTJCLEtBQUssSUFBSSxLQUFLLElBQUlBLHVCQUF1QmlGLFlBQVksTUFBTTtJQUM3SyxNQUFNLENBQUNDLGVBQWVDLGlCQUFpQixHQUFHaEssK0NBQWVBO0lBQ3pEc0MsbUZBQXNCQSxDQUFDO1FBQ25CLElBQUl5RCxTQUFTaUUsaUJBQWlCQyxPQUFPQyxnQkFBZ0IsQ0FBQ25FLFNBQVNvRSxNQUFNO0lBQ3pFLEdBQUc7UUFDQ3BFO0tBQ0g7SUFDRCxPQUFPLFdBQVcsR0FBRzdGLG9EQUFvQkEsQ0FBQyxPQUFPO1FBQzdDK0QsS0FBS3NELEtBQUs2QyxXQUFXO1FBQ3JCLHFDQUFxQztRQUNyQ25CLE9BQU87WUFDSCxHQUFHekIsY0FBYztZQUNqQjZDLFdBQVczQyxlQUFlRixlQUFlNkMsU0FBUyxHQUFHO1lBQ3JELG1DQUFtQztZQUNuQ0MsVUFBVTtZQUNWSCxRQUFRSjtZQUNSLENBQUMsa0NBQWtDLEVBQUU7Z0JBQ2hDakYsQ0FBQUEsd0JBQXdCNkMsZUFBZTRDLGVBQWUsTUFBTSxRQUFRekYsMEJBQTBCLEtBQUssSUFBSSxLQUFLLElBQUlBLHNCQUFzQjRFLENBQUM7Z0JBQ3ZJM0UsQ0FBQUEseUJBQXlCNEMsZUFBZTRDLGVBQWUsTUFBTSxRQUFReEYsMkJBQTJCLEtBQUssSUFBSSxLQUFLLElBQUlBLHVCQUF1QjZFLENBQUM7YUFDOUksQ0FBQ1ksSUFBSSxDQUFDO1FBQ1gsRUFBRSxrRkFBa0Y7O1FBRXBGQyxLQUFLeEgsTUFBTXdILEdBQUc7SUFDbEIsR0FBRyxXQUFXLEdBQUd2SyxvREFBb0JBLENBQUNvRSw2Q0FBNkM7UUFDL0VoQixPQUFPSjtRQUNQbUcsWUFBWUE7UUFDWnFCLGVBQWV4RTtRQUNmdUQsUUFBUUE7UUFDUkUsUUFBUUE7UUFDUmdCLGlCQUFpQmQ7SUFDckIsR0FBRyxXQUFXLEdBQUczSixvREFBb0JBLENBQUNnQyxnRUFBZ0JBLENBQUNrQyxHQUFHLEVBQUV0RSw4RUFBb0NBLENBQUM7UUFDN0YsYUFBYXVKO1FBQ2IsY0FBY0M7SUFDbEIsR0FBR3hELGNBQWM7UUFDYjdCLEtBQUtDO1FBQ0wrRSxPQUFPO1lBQ0gsR0FBR25ELGFBQWFtRCxLQUFLO1lBQ3JCLDBFQUEwRTtZQUMxRSxnR0FBZ0c7WUFDaEcyQixXQUFXLENBQUNsRCxlQUFlLFNBQVNjO1lBQ3BDLHFFQUFxRTtZQUNyRXFDLFNBQVMsQ0FBQzdGLHVCQUF1QjJDLGVBQWVsRyxJQUFJLE1BQU0sUUFBUXVELHlCQUF5QixLQUFLLEtBQUtBLHFCQUFxQjhGLGVBQWUsR0FBRyxJQUFJdEM7UUFDcEo7SUFDSjtBQUNKO0FBQ0EsV0FBVyxHQUFHaEYsT0FBT0MsTUFBTSxDQUFDZSwwQ0FBMEM7SUFDbEVkLGFBQWFXO0FBQ2pCO0FBQ0E7O2tHQUVrRyxHQUFHLE1BQU0wRyxtQ0FBbUM7QUFDOUksTUFBTUMsc0NBQXNDO0lBQ3hDdkUsS0FBSztJQUNMQyxPQUFPO0lBQ1BDLFFBQVE7SUFDUkMsTUFBTTtBQUNWO0FBQ0EsTUFBTXFFLDRDQUE0QyxXQUFXLEdBQUc3SyxpREFBaUJBLENBQUMsU0FBUzZLLDBDQUEwQ2hJLEtBQUssRUFBRVksWUFBWTtJQUNwSixNQUFNLEVBQUVYLGVBQWVBLGFBQWEsRUFBRyxHQUFHZ0ksWUFBWSxHQUFHakk7SUFDekQsTUFBTWtJLGlCQUFpQjVHLHdDQUF3Q3dHLGtDQUFrQzdIO0lBQ2pHLE1BQU1rSSxXQUFXSixtQ0FBbUMsQ0FBQ0csZUFBZTlCLFVBQVUsQ0FBQztJQUMvRSxPQUFPLFdBQVcsR0FDbEIsc0RBQXNEO0lBQ3RELHNGQUFzRjtJQUN0Rm5KLG9EQUFvQkEsQ0FBQyxRQUFRO1FBQ3pCK0QsS0FBS2tILGVBQWVULGFBQWE7UUFDakN6QixPQUFPO1lBQ0hvQyxVQUFVO1lBQ1Z6RSxNQUFNdUUsZUFBZTFCLE1BQU07WUFDM0JoRCxLQUFLMEUsZUFBZXhCLE1BQU07WUFDMUIsQ0FBQ3lCLFNBQVMsRUFBRTtZQUNaYixpQkFBaUI7Z0JBQ2I5RCxLQUFLO2dCQUNMQyxPQUFPO2dCQUNQQyxRQUFRO2dCQUNSQyxNQUFNO1lBQ1YsQ0FBQyxDQUFDdUUsZUFBZTlCLFVBQVUsQ0FBQztZQUM1QmdCLFdBQVc7Z0JBQ1A1RCxLQUFLO2dCQUNMQyxPQUFPO2dCQUNQQyxRQUFRLENBQUMsY0FBYyxDQUFDO2dCQUN4QkMsTUFBTTtZQUNWLENBQUMsQ0FBQ3VFLGVBQWU5QixVQUFVLENBQUM7WUFDNUJpQyxZQUFZSCxlQUFlUixlQUFlLEdBQUcsV0FBV25DO1FBQzVEO0lBQ0osR0FBRyxXQUFXLEdBQUd0SSxvREFBb0JBLENBQUMwQix3REFBV0EsRUFBRTlCLDhFQUFvQ0EsQ0FBQyxDQUFDLEdBQUdvTCxZQUFZO1FBQ3BHakgsS0FBS0o7UUFDTG9GLE9BQU87WUFDSCxHQUFHaUMsV0FBV2pDLEtBQUs7WUFDbkIsb0VBQW9FO1lBQ3BFc0MsU0FBUztRQUNiO0lBQ0o7QUFDSjtBQUNBLFdBQVcsR0FBRy9ILE9BQU9DLE1BQU0sQ0FBQ3dILDJDQUEyQztJQUNuRXZILGFBQWFxSDtBQUNqQjtBQUNBLGtHQUFrRyxHQUFHLFNBQVMxRCxnQ0FBZ0NtRSxLQUFLO0lBQy9JLE9BQU9BLFVBQVU7QUFDckI7QUFDQSxNQUFNcEMsd0NBQXdDLENBQUNxQyxVQUFXO1FBQ2xEQyxNQUFNO1FBQ05ELFNBQVNBO1FBQ1RFLElBQUlDLElBQUk7WUFDSixJQUFJQyx3QkFBd0JDLHdCQUF3QkMsd0JBQXdCQyx3QkFBd0JDO1lBQ3BHLE1BQU0sRUFBRXhFLFdBQVdBLFNBQVMsRUFBR2lCLE9BQU9BLEtBQUssRUFBR2YsZ0JBQWdCQSxjQUFjLEVBQUcsR0FBR2lFO1lBQ2xGLE1BQU0vQixvQkFBb0IsQ0FBQyxDQUFDZ0MseUJBQXlCbEUsZUFBZXBHLEtBQUssTUFBTSxRQUFRc0ssMkJBQTJCLEtBQUssSUFBSSxLQUFLLElBQUlBLHVCQUF1Qi9CLFlBQVksTUFBTTtZQUM3SyxNQUFNb0MsZ0JBQWdCckM7WUFDdEIsTUFBTXpELGFBQWE4RixnQkFBZ0IsSUFBSVQsUUFBUXJGLFVBQVU7WUFDekQsTUFBTUUsY0FBYzRGLGdCQUFnQixJQUFJVCxRQUFRbkYsV0FBVztZQUMzRCxNQUFNLENBQUMrQyxZQUFZQyxZQUFZLEdBQUdDLG1EQUFtRDlCO1lBQ3JGLE1BQU0wRSxlQUFlO2dCQUNqQkMsT0FBTztnQkFDUEMsUUFBUTtnQkFDUkMsS0FBSztZQUNULENBQUMsQ0FBQ2hELFlBQVk7WUFDZCxNQUFNaUQsZUFBZSxDQUFDLENBQUNULHlCQUF5QixDQUFDQyx5QkFBeUJwRSxlQUFlcEcsS0FBSyxNQUFNLFFBQVF3SywyQkFBMkIsS0FBSyxJQUFJLEtBQUssSUFBSUEsdUJBQXVCckMsQ0FBQyxNQUFNLFFBQVFvQywyQkFBMkIsS0FBSyxJQUFJQSx5QkFBeUIsS0FBSzFGLGFBQWE7WUFDOVEsTUFBTW9HLGVBQWUsQ0FBQyxDQUFDUix5QkFBeUIsQ0FBQ0MseUJBQXlCdEUsZUFBZXBHLEtBQUssTUFBTSxRQUFRMEssMkJBQTJCLEtBQUssSUFBSSxLQUFLLElBQUlBLHVCQUF1QnJDLENBQUMsTUFBTSxRQUFRb0MsMkJBQTJCLEtBQUssSUFBSUEseUJBQXlCLEtBQUsxRixjQUFjO1lBQy9RLElBQUlvRCxJQUFJO1lBQ1IsSUFBSUUsSUFBSTtZQUNSLElBQUlQLGVBQWUsVUFBVTtnQkFDekJLLElBQUl3QyxnQkFBZ0JDLGVBQWUsQ0FBQyxFQUFFSSxhQUFhLEVBQUUsQ0FBQztnQkFDdEQzQyxJQUFJLENBQUMsRUFBRSxDQUFDdEQsWUFBWSxFQUFFLENBQUM7WUFDM0IsT0FBTyxJQUFJK0MsZUFBZSxPQUFPO2dCQUM3QkssSUFBSXdDLGdCQUFnQkMsZUFBZSxDQUFDLEVBQUVJLGFBQWEsRUFBRSxDQUFDO2dCQUN0RDNDLElBQUksQ0FBQyxFQUFFbEIsTUFBTU0sUUFBUSxDQUFDekMsTUFBTSxHQUFHRCxZQUFZLEVBQUUsQ0FBQztZQUNsRCxPQUFPLElBQUkrQyxlQUFlLFNBQVM7Z0JBQy9CSyxJQUFJLENBQUMsRUFBRSxDQUFDcEQsWUFBWSxFQUFFLENBQUM7Z0JBQ3ZCc0QsSUFBSXNDLGdCQUFnQkMsZUFBZSxDQUFDLEVBQUVLLGFBQWEsRUFBRSxDQUFDO1lBQzFELE9BQU8sSUFBSW5ELGVBQWUsUUFBUTtnQkFDOUJLLElBQUksQ0FBQyxFQUFFaEIsTUFBTU0sUUFBUSxDQUFDM0MsS0FBSyxHQUFHQyxZQUFZLEVBQUUsQ0FBQztnQkFDN0NzRCxJQUFJc0MsZ0JBQWdCQyxlQUFlLENBQUMsRUFBRUssYUFBYSxFQUFFLENBQUM7WUFDMUQ7WUFDQSxPQUFPO2dCQUNIWixNQUFNO29CQUNGbEMsR0FBR0E7b0JBQ0hFLEdBQUdBO2dCQUNQO1lBQ0o7UUFDSjtJQUNKO0FBRUosU0FBU0wsbURBQW1EOUIsU0FBUztJQUNqRSxNQUFNLENBQUN4QyxNQUFNRSxRQUFRLFFBQVEsQ0FBQyxHQUFHc0MsVUFBVWdGLEtBQUssQ0FBQztJQUNqRCxPQUFPO1FBQ0h4SDtRQUNBRTtLQUNIO0FBQ0w7QUFDQSxNQUFNdUgsNENBQTRDMUo7QUFDbEQsTUFBTTJKLDRDQUE0Qy9JO0FBQ2xELE1BQU1nSiw0Q0FBNENwSTtBQUNsRCxNQUFNcUksNENBQTRDNUI7QUFLaWtCLENBQ25uQixrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9lbWJlZGNoYWluLWFkbWluLy4vbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC1zZWxlY3Qvbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC1wb3BwZXIvZGlzdC9pbmRleC5tanM/Nzg5YyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJGtZOTNWJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIGZyb20gXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9leHRlbmRzXCI7XG5pbXBvcnQge3VzZVN0YXRlIGFzICRrWTkzViR1c2VTdGF0ZSwgY3JlYXRlRWxlbWVudCBhcyAka1k5M1YkY3JlYXRlRWxlbWVudCwgZm9yd2FyZFJlZiBhcyAka1k5M1YkZm9yd2FyZFJlZiwgdXNlUmVmIGFzICRrWTkzViR1c2VSZWYsIHVzZUVmZmVjdCBhcyAka1k5M1YkdXNlRWZmZWN0fSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7dXNlRmxvYXRpbmcgYXMgJGtZOTNWJHVzZUZsb2F0aW5nLCBhdXRvVXBkYXRlIGFzICRrWTkzViRhdXRvVXBkYXRlLCBvZmZzZXQgYXMgJGtZOTNWJG9mZnNldCwgc2hpZnQgYXMgJGtZOTNWJHNoaWZ0LCBsaW1pdFNoaWZ0IGFzICRrWTkzViRsaW1pdFNoaWZ0LCBmbGlwIGFzICRrWTkzViRmbGlwLCBzaXplIGFzICRrWTkzViRzaXplLCBhcnJvdyBhcyAka1k5M1YkYXJyb3csIGhpZGUgYXMgJGtZOTNWJGhpZGV9IGZyb20gXCJAZmxvYXRpbmctdWkvcmVhY3QtZG9tXCI7XG5pbXBvcnQge1Jvb3QgYXMgJGtZOTNWJFJvb3R9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtYXJyb3dcIjtcbmltcG9ydCB7dXNlQ29tcG9zZWRSZWZzIGFzICRrWTkzViR1c2VDb21wb3NlZFJlZnN9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtY29tcG9zZS1yZWZzXCI7XG5pbXBvcnQge2NyZWF0ZUNvbnRleHRTY29wZSBhcyAka1k5M1YkY3JlYXRlQ29udGV4dFNjb3BlfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LWNvbnRleHRcIjtcbmltcG9ydCB7UHJpbWl0aXZlIGFzICRrWTkzViRQcmltaXRpdmV9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtcHJpbWl0aXZlXCI7XG5pbXBvcnQge3VzZUNhbGxiYWNrUmVmIGFzICRrWTkzViR1c2VDYWxsYmFja1JlZn0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC11c2UtY2FsbGJhY2stcmVmXCI7XG5pbXBvcnQge3VzZUxheW91dEVmZmVjdCBhcyAka1k5M1YkdXNlTGF5b3V0RWZmZWN0fSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXVzZS1sYXlvdXQtZWZmZWN0XCI7XG5pbXBvcnQge3VzZVNpemUgYXMgJGtZOTNWJHVzZVNpemV9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtdXNlLXNpemVcIjtcblxuXG5cblxuXG5cblxuXG5cblxuXG5jb25zdCAkY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkMzZmMDA4NmRhMDljNGI5ZiA9IFtcbiAgICAndG9wJyxcbiAgICAncmlnaHQnLFxuICAgICdib3R0b20nLFxuICAgICdsZWZ0J1xuXTtcbmNvbnN0ICRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCQzNjcxZmZhYjdiMzAyZmM5ID0gW1xuICAgICdzdGFydCcsXG4gICAgJ2NlbnRlcicsXG4gICAgJ2VuZCdcbl07XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBQb3BwZXJcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJFBPUFBFUl9OQU1FID0gJ1BvcHBlcic7XG5jb25zdCBbJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJGNyZWF0ZVBvcHBlckNvbnRleHQsICRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCQ3MjJhYWMxOTRhZTkyM10gPSAka1k5M1YkY3JlYXRlQ29udGV4dFNjb3BlKCRjZjFhYzVkOWZlMGU4MjA2JHZhciRQT1BQRVJfTkFNRSk7XG5jb25zdCBbJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJFBvcHBlclByb3ZpZGVyLCAkY2YxYWM1ZDlmZTBlODIwNiR2YXIkdXNlUG9wcGVyQ29udGV4dF0gPSAkY2YxYWM1ZDlmZTBlODIwNiR2YXIkY3JlYXRlUG9wcGVyQ29udGV4dCgkY2YxYWM1ZDlmZTBlODIwNiR2YXIkUE9QUEVSX05BTUUpO1xuY29uc3QgJGNmMWFjNWQ5ZmUwZTgyMDYkZXhwb3J0JGJhZGFjOWFkYTNhMGJkZjkgPSAocHJvcHMpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlUG9wcGVyOiBfX3Njb3BlUG9wcGVyICwgY2hpbGRyZW46IGNoaWxkcmVuICB9ID0gcHJvcHM7XG4gICAgY29uc3QgW2FuY2hvciwgc2V0QW5jaG9yXSA9ICRrWTkzViR1c2VTdGF0ZShudWxsKTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAka1k5M1YkY3JlYXRlRWxlbWVudCgkY2YxYWM1ZDlmZTBlODIwNiR2YXIkUG9wcGVyUHJvdmlkZXIsIHtcbiAgICAgICAgc2NvcGU6IF9fc2NvcGVQb3BwZXIsXG4gICAgICAgIGFuY2hvcjogYW5jaG9yLFxuICAgICAgICBvbkFuY2hvckNoYW5nZTogc2V0QW5jaG9yXG4gICAgfSwgY2hpbGRyZW4pO1xufTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkYmFkYWM5YWRhM2EwYmRmOSwge1xuICAgIGRpc3BsYXlOYW1lOiAkY2YxYWM1ZDlmZTBlODIwNiR2YXIkUE9QUEVSX05BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogUG9wcGVyQW5jaG9yXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICRjZjFhYzVkOWZlMGU4MjA2JHZhciRBTkNIT1JfTkFNRSA9ICdQb3BwZXJBbmNob3InO1xuY29uc3QgJGNmMWFjNWQ5ZmUwZTgyMDYkZXhwb3J0JGVjZDRlMWNjYWI2ZWQ2ZCA9IC8qI19fUFVSRV9fKi8gJGtZOTNWJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlUG9wcGVyOiBfX3Njb3BlUG9wcGVyICwgdmlydHVhbFJlZjogdmlydHVhbFJlZiAsIC4uLmFuY2hvclByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBjb250ZXh0ID0gJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJHVzZVBvcHBlckNvbnRleHQoJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJEFOQ0hPUl9OQU1FLCBfX3Njb3BlUG9wcGVyKTtcbiAgICBjb25zdCByZWYgPSAka1k5M1YkdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IGNvbXBvc2VkUmVmcyA9ICRrWTkzViR1c2VDb21wb3NlZFJlZnMoZm9yd2FyZGVkUmVmLCByZWYpO1xuICAgICRrWTkzViR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgLy8gQ29uc3VtZXIgY2FuIGFuY2hvciB0aGUgcG9wcGVyIHRvIHNvbWV0aGluZyB0aGF0IGlzbid0XG4gICAgICAgIC8vIGEgRE9NIG5vZGUgZS5nLiBwb2ludGVyIHBvc2l0aW9uLCBzbyB3ZSBvdmVycmlkZSB0aGVcbiAgICAgICAgLy8gYGFuY2hvclJlZmAgd2l0aCB0aGVpciB2aXJ0dWFsIHJlZiBpbiB0aGlzIGNhc2UuXG4gICAgICAgIGNvbnRleHQub25BbmNob3JDaGFuZ2UoKHZpcnR1YWxSZWYgPT09IG51bGwgfHwgdmlydHVhbFJlZiA9PT0gdm9pZCAwID8gdm9pZCAwIDogdmlydHVhbFJlZi5jdXJyZW50KSB8fCByZWYuY3VycmVudCk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHZpcnR1YWxSZWYgPyBudWxsIDogLyojX19QVVJFX18qLyAka1k5M1YkY3JlYXRlRWxlbWVudCgka1k5M1YkUHJpbWl0aXZlLmRpdiwgJGtZOTNWJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBhbmNob3JQcm9wcywge1xuICAgICAgICByZWY6IGNvbXBvc2VkUmVmc1xuICAgIH0pKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCRlY2Q0ZTFjY2FiNmVkNmQsIHtcbiAgICBkaXNwbGF5TmFtZTogJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJEFOQ0hPUl9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFBvcHBlckNvbnRlbnRcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJENPTlRFTlRfTkFNRSA9ICdQb3BwZXJDb250ZW50JztcbmNvbnN0IFskY2YxYWM1ZDlmZTBlODIwNiR2YXIkUG9wcGVyQ29udGVudFByb3ZpZGVyLCAkY2YxYWM1ZDlmZTBlODIwNiR2YXIkdXNlQ29udGVudENvbnRleHRdID0gJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJGNyZWF0ZVBvcHBlckNvbnRleHQoJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJENPTlRFTlRfTkFNRSk7XG5jb25zdCAkY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkYmM0YWU1ODU1ZDNjNGZjID0gLyojX19QVVJFX18qLyAka1k5M1YkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICB2YXIgX2Fycm93U2l6ZSR3aWR0aCwgX2Fycm93U2l6ZSRoZWlnaHQsIF9taWRkbGV3YXJlRGF0YSRhcnJvdywgX21pZGRsZXdhcmVEYXRhJGFycm93MiwgX21pZGRsZXdhcmVEYXRhJGFycm93MywgX21pZGRsZXdhcmVEYXRhJHRyYW5zLCBfbWlkZGxld2FyZURhdGEkdHJhbnMyLCBfbWlkZGxld2FyZURhdGEkaGlkZTtcbiAgICBjb25zdCB7IF9fc2NvcGVQb3BwZXI6IF9fc2NvcGVQb3BwZXIgLCBzaWRlOiBzaWRlID0gJ2JvdHRvbScgLCBzaWRlT2Zmc2V0OiBzaWRlT2Zmc2V0ID0gMCAsIGFsaWduOiBhbGlnbiA9ICdjZW50ZXInICwgYWxpZ25PZmZzZXQ6IGFsaWduT2Zmc2V0ID0gMCAsIGFycm93UGFkZGluZzogYXJyb3dQYWRkaW5nID0gMCAsIGF2b2lkQ29sbGlzaW9uczogYXZvaWRDb2xsaXNpb25zID0gdHJ1ZSAsIGNvbGxpc2lvbkJvdW5kYXJ5OiBjb2xsaXNpb25Cb3VuZGFyeSA9IFtdICwgY29sbGlzaW9uUGFkZGluZzogY29sbGlzaW9uUGFkZGluZ1Byb3AgPSAwICwgc3RpY2t5OiBzdGlja3kgPSAncGFydGlhbCcgLCBoaWRlV2hlbkRldGFjaGVkOiBoaWRlV2hlbkRldGFjaGVkID0gZmFsc2UgLCB1cGRhdGVQb3NpdGlvblN0cmF0ZWd5OiB1cGRhdGVQb3NpdGlvblN0cmF0ZWd5ID0gJ29wdGltaXplZCcgLCBvblBsYWNlZDogb25QbGFjZWQgLCAuLi5jb250ZW50UHJvcHMgfSA9IHByb3BzO1xuICAgIGNvbnN0IGNvbnRleHQgPSAkY2YxYWM1ZDlmZTBlODIwNiR2YXIkdXNlUG9wcGVyQ29udGV4dCgkY2YxYWM1ZDlmZTBlODIwNiR2YXIkQ09OVEVOVF9OQU1FLCBfX3Njb3BlUG9wcGVyKTtcbiAgICBjb25zdCBbY29udGVudCwgc2V0Q29udGVudF0gPSAka1k5M1YkdXNlU3RhdGUobnVsbCk7XG4gICAgY29uc3QgY29tcG9zZWRSZWZzID0gJGtZOTNWJHVzZUNvbXBvc2VkUmVmcyhmb3J3YXJkZWRSZWYsIChub2RlKT0+c2V0Q29udGVudChub2RlKVxuICAgICk7XG4gICAgY29uc3QgW2Fycm93LCBzZXRBcnJvd10gPSAka1k5M1YkdXNlU3RhdGUobnVsbCk7XG4gICAgY29uc3QgYXJyb3dTaXplID0gJGtZOTNWJHVzZVNpemUoYXJyb3cpO1xuICAgIGNvbnN0IGFycm93V2lkdGggPSAoX2Fycm93U2l6ZSR3aWR0aCA9IGFycm93U2l6ZSA9PT0gbnVsbCB8fCBhcnJvd1NpemUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGFycm93U2l6ZS53aWR0aCkgIT09IG51bGwgJiYgX2Fycm93U2l6ZSR3aWR0aCAhPT0gdm9pZCAwID8gX2Fycm93U2l6ZSR3aWR0aCA6IDA7XG4gICAgY29uc3QgYXJyb3dIZWlnaHQgPSAoX2Fycm93U2l6ZSRoZWlnaHQgPSBhcnJvd1NpemUgPT09IG51bGwgfHwgYXJyb3dTaXplID09PSB2b2lkIDAgPyB2b2lkIDAgOiBhcnJvd1NpemUuaGVpZ2h0KSAhPT0gbnVsbCAmJiBfYXJyb3dTaXplJGhlaWdodCAhPT0gdm9pZCAwID8gX2Fycm93U2l6ZSRoZWlnaHQgOiAwO1xuICAgIGNvbnN0IGRlc2lyZWRQbGFjZW1lbnQgPSBzaWRlICsgKGFsaWduICE9PSAnY2VudGVyJyA/ICctJyArIGFsaWduIDogJycpO1xuICAgIGNvbnN0IGNvbGxpc2lvblBhZGRpbmcgPSB0eXBlb2YgY29sbGlzaW9uUGFkZGluZ1Byb3AgPT09ICdudW1iZXInID8gY29sbGlzaW9uUGFkZGluZ1Byb3AgOiB7XG4gICAgICAgIHRvcDogMCxcbiAgICAgICAgcmlnaHQ6IDAsXG4gICAgICAgIGJvdHRvbTogMCxcbiAgICAgICAgbGVmdDogMCxcbiAgICAgICAgLi4uY29sbGlzaW9uUGFkZGluZ1Byb3BcbiAgICB9O1xuICAgIGNvbnN0IGJvdW5kYXJ5ID0gQXJyYXkuaXNBcnJheShjb2xsaXNpb25Cb3VuZGFyeSkgPyBjb2xsaXNpb25Cb3VuZGFyeSA6IFtcbiAgICAgICAgY29sbGlzaW9uQm91bmRhcnlcbiAgICBdO1xuICAgIGNvbnN0IGhhc0V4cGxpY2l0Qm91bmRhcmllcyA9IGJvdW5kYXJ5Lmxlbmd0aCA+IDA7XG4gICAgY29uc3QgZGV0ZWN0T3ZlcmZsb3dPcHRpb25zID0ge1xuICAgICAgICBwYWRkaW5nOiBjb2xsaXNpb25QYWRkaW5nLFxuICAgICAgICBib3VuZGFyeTogYm91bmRhcnkuZmlsdGVyKCRjZjFhYzVkOWZlMGU4MjA2JHZhciRpc05vdE51bGwpLFxuICAgICAgICAvLyB3aXRoIGBzdHJhdGVneTogJ2ZpeGVkJ2AsIHRoaXMgaXMgdGhlIG9ubHkgd2F5IHRvIGdldCBpdCB0byByZXNwZWN0IGJvdW5kYXJpZXNcbiAgICAgICAgYWx0Qm91bmRhcnk6IGhhc0V4cGxpY2l0Qm91bmRhcmllc1xuICAgIH07XG4gICAgY29uc3QgeyByZWZzOiByZWZzICwgZmxvYXRpbmdTdHlsZXM6IGZsb2F0aW5nU3R5bGVzICwgcGxhY2VtZW50OiBwbGFjZW1lbnQgLCBpc1Bvc2l0aW9uZWQ6IGlzUG9zaXRpb25lZCAsIG1pZGRsZXdhcmVEYXRhOiBtaWRkbGV3YXJlRGF0YSAgfSA9ICRrWTkzViR1c2VGbG9hdGluZyh7XG4gICAgICAgIC8vIGRlZmF1bHQgdG8gYGZpeGVkYCBzdHJhdGVneSBzbyB1c2VycyBkb24ndCBoYXZlIHRvIHBpY2sgYW5kIHdlIGFsc28gYXZvaWQgZm9jdXMgc2Nyb2xsIGlzc3Vlc1xuICAgICAgICBzdHJhdGVneTogJ2ZpeGVkJyxcbiAgICAgICAgcGxhY2VtZW50OiBkZXNpcmVkUGxhY2VtZW50LFxuICAgICAgICB3aGlsZUVsZW1lbnRzTW91bnRlZDogKC4uLmFyZ3MpPT57XG4gICAgICAgICAgICBjb25zdCBjbGVhbnVwID0gJGtZOTNWJGF1dG9VcGRhdGUoLi4uYXJncywge1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbkZyYW1lOiB1cGRhdGVQb3NpdGlvblN0cmF0ZWd5ID09PSAnYWx3YXlzJ1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gY2xlYW51cDtcbiAgICAgICAgfSxcbiAgICAgICAgZWxlbWVudHM6IHtcbiAgICAgICAgICAgIHJlZmVyZW5jZTogY29udGV4dC5hbmNob3JcbiAgICAgICAgfSxcbiAgICAgICAgbWlkZGxld2FyZTogW1xuICAgICAgICAgICAgJGtZOTNWJG9mZnNldCh7XG4gICAgICAgICAgICAgICAgbWFpbkF4aXM6IHNpZGVPZmZzZXQgKyBhcnJvd0hlaWdodCxcbiAgICAgICAgICAgICAgICBhbGlnbm1lbnRBeGlzOiBhbGlnbk9mZnNldFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBhdm9pZENvbGxpc2lvbnMgJiYgJGtZOTNWJHNoaWZ0KHtcbiAgICAgICAgICAgICAgICBtYWluQXhpczogdHJ1ZSxcbiAgICAgICAgICAgICAgICBjcm9zc0F4aXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGxpbWl0ZXI6IHN0aWNreSA9PT0gJ3BhcnRpYWwnID8gJGtZOTNWJGxpbWl0U2hpZnQoKSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAuLi5kZXRlY3RPdmVyZmxvd09wdGlvbnNcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgYXZvaWRDb2xsaXNpb25zICYmICRrWTkzViRmbGlwKHtcbiAgICAgICAgICAgICAgICAuLi5kZXRlY3RPdmVyZmxvd09wdGlvbnNcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgJGtZOTNWJHNpemUoe1xuICAgICAgICAgICAgICAgIC4uLmRldGVjdE92ZXJmbG93T3B0aW9ucyxcbiAgICAgICAgICAgICAgICBhcHBseTogKHsgZWxlbWVudHM6IGVsZW1lbnRzICwgcmVjdHM6IHJlY3RzICwgYXZhaWxhYmxlV2lkdGg6IGF2YWlsYWJsZVdpZHRoICwgYXZhaWxhYmxlSGVpZ2h0OiBhdmFpbGFibGVIZWlnaHQgIH0pPT57XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgd2lkdGg6IGFuY2hvcldpZHRoICwgaGVpZ2h0OiBhbmNob3JIZWlnaHQgIH0gPSByZWN0cy5yZWZlcmVuY2U7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNvbnRlbnRTdHlsZSA9IGVsZW1lbnRzLmZsb2F0aW5nLnN0eWxlO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50U3R5bGUuc2V0UHJvcGVydHkoJy0tcmFkaXgtcG9wcGVyLWF2YWlsYWJsZS13aWR0aCcsIGAke2F2YWlsYWJsZVdpZHRofXB4YCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnRTdHlsZS5zZXRQcm9wZXJ0eSgnLS1yYWRpeC1wb3BwZXItYXZhaWxhYmxlLWhlaWdodCcsIGAke2F2YWlsYWJsZUhlaWdodH1weGApO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50U3R5bGUuc2V0UHJvcGVydHkoJy0tcmFkaXgtcG9wcGVyLWFuY2hvci13aWR0aCcsIGAke2FuY2hvcldpZHRofXB4YCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnRTdHlsZS5zZXRQcm9wZXJ0eSgnLS1yYWRpeC1wb3BwZXItYW5jaG9yLWhlaWdodCcsIGAke2FuY2hvckhlaWdodH1weGApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgYXJyb3cgJiYgJGtZOTNWJGFycm93KHtcbiAgICAgICAgICAgICAgICBlbGVtZW50OiBhcnJvdyxcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBhcnJvd1BhZGRpbmdcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJHRyYW5zZm9ybU9yaWdpbih7XG4gICAgICAgICAgICAgICAgYXJyb3dXaWR0aDogYXJyb3dXaWR0aCxcbiAgICAgICAgICAgICAgICBhcnJvd0hlaWdodDogYXJyb3dIZWlnaHRcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgaGlkZVdoZW5EZXRhY2hlZCAmJiAka1k5M1YkaGlkZSh7XG4gICAgICAgICAgICAgICAgc3RyYXRlZ3k6ICdyZWZlcmVuY2VIaWRkZW4nLFxuICAgICAgICAgICAgICAgIC4uLmRldGVjdE92ZXJmbG93T3B0aW9uc1xuICAgICAgICAgICAgfSlcbiAgICAgICAgXVxuICAgIH0pO1xuICAgIGNvbnN0IFtwbGFjZWRTaWRlLCBwbGFjZWRBbGlnbl0gPSAkY2YxYWM1ZDlmZTBlODIwNiR2YXIkZ2V0U2lkZUFuZEFsaWduRnJvbVBsYWNlbWVudChwbGFjZW1lbnQpO1xuICAgIGNvbnN0IGhhbmRsZVBsYWNlZCA9ICRrWTkzViR1c2VDYWxsYmFja1JlZihvblBsYWNlZCk7XG4gICAgJGtZOTNWJHVzZUxheW91dEVmZmVjdCgoKT0+e1xuICAgICAgICBpZiAoaXNQb3NpdGlvbmVkKSBoYW5kbGVQbGFjZWQgPT09IG51bGwgfHwgaGFuZGxlUGxhY2VkID09PSB2b2lkIDAgfHwgaGFuZGxlUGxhY2VkKCk7XG4gICAgfSwgW1xuICAgICAgICBpc1Bvc2l0aW9uZWQsXG4gICAgICAgIGhhbmRsZVBsYWNlZFxuICAgIF0pO1xuICAgIGNvbnN0IGFycm93WCA9IChfbWlkZGxld2FyZURhdGEkYXJyb3cgPSBtaWRkbGV3YXJlRGF0YS5hcnJvdykgPT09IG51bGwgfHwgX21pZGRsZXdhcmVEYXRhJGFycm93ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfbWlkZGxld2FyZURhdGEkYXJyb3cueDtcbiAgICBjb25zdCBhcnJvd1kgPSAoX21pZGRsZXdhcmVEYXRhJGFycm93MiA9IG1pZGRsZXdhcmVEYXRhLmFycm93KSA9PT0gbnVsbCB8fCBfbWlkZGxld2FyZURhdGEkYXJyb3cyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfbWlkZGxld2FyZURhdGEkYXJyb3cyLnk7XG4gICAgY29uc3QgY2Fubm90Q2VudGVyQXJyb3cgPSAoKF9taWRkbGV3YXJlRGF0YSRhcnJvdzMgPSBtaWRkbGV3YXJlRGF0YS5hcnJvdykgPT09IG51bGwgfHwgX21pZGRsZXdhcmVEYXRhJGFycm93MyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX21pZGRsZXdhcmVEYXRhJGFycm93My5jZW50ZXJPZmZzZXQpICE9PSAwO1xuICAgIGNvbnN0IFtjb250ZW50WkluZGV4LCBzZXRDb250ZW50WkluZGV4XSA9ICRrWTkzViR1c2VTdGF0ZSgpO1xuICAgICRrWTkzViR1c2VMYXlvdXRFZmZlY3QoKCk9PntcbiAgICAgICAgaWYgKGNvbnRlbnQpIHNldENvbnRlbnRaSW5kZXgod2luZG93LmdldENvbXB1dGVkU3R5bGUoY29udGVudCkuekluZGV4KTtcbiAgICB9LCBbXG4gICAgICAgIGNvbnRlbnRcbiAgICBdKTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAka1k5M1YkY3JlYXRlRWxlbWVudChcImRpdlwiLCB7XG4gICAgICAgIHJlZjogcmVmcy5zZXRGbG9hdGluZyxcbiAgICAgICAgXCJkYXRhLXJhZGl4LXBvcHBlci1jb250ZW50LXdyYXBwZXJcIjogXCJcIixcbiAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgIC4uLmZsb2F0aW5nU3R5bGVzLFxuICAgICAgICAgICAgdHJhbnNmb3JtOiBpc1Bvc2l0aW9uZWQgPyBmbG9hdGluZ1N0eWxlcy50cmFuc2Zvcm0gOiAndHJhbnNsYXRlKDAsIC0yMDAlKScsXG4gICAgICAgICAgICAvLyBrZWVwIG9mZiB0aGUgcGFnZSB3aGVuIG1lYXN1cmluZ1xuICAgICAgICAgICAgbWluV2lkdGg6ICdtYXgtY29udGVudCcsXG4gICAgICAgICAgICB6SW5kZXg6IGNvbnRlbnRaSW5kZXgsXG4gICAgICAgICAgICBbJy0tcmFkaXgtcG9wcGVyLXRyYW5zZm9ybS1vcmlnaW4nXTogW1xuICAgICAgICAgICAgICAgIChfbWlkZGxld2FyZURhdGEkdHJhbnMgPSBtaWRkbGV3YXJlRGF0YS50cmFuc2Zvcm1PcmlnaW4pID09PSBudWxsIHx8IF9taWRkbGV3YXJlRGF0YSR0cmFucyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX21pZGRsZXdhcmVEYXRhJHRyYW5zLngsXG4gICAgICAgICAgICAgICAgKF9taWRkbGV3YXJlRGF0YSR0cmFuczIgPSBtaWRkbGV3YXJlRGF0YS50cmFuc2Zvcm1PcmlnaW4pID09PSBudWxsIHx8IF9taWRkbGV3YXJlRGF0YSR0cmFuczIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9taWRkbGV3YXJlRGF0YSR0cmFuczIueVxuICAgICAgICAgICAgXS5qb2luKCcgJylcbiAgICAgICAgfSAvLyBGbG9hdGluZyBVSSBpbnRlcmFsbHkgY2FsY3VsYXRlcyBsb2dpY2FsIGFsaWdubWVudCBiYXNlZCB0aGUgYGRpcmAgYXR0cmlidXRlIG9uXG4gICAgICAgICxcbiAgICAgICAgZGlyOiBwcm9wcy5kaXJcbiAgICB9LCAvKiNfX1BVUkVfXyovICRrWTkzViRjcmVhdGVFbGVtZW50KCRjZjFhYzVkOWZlMGU4MjA2JHZhciRQb3BwZXJDb250ZW50UHJvdmlkZXIsIHtcbiAgICAgICAgc2NvcGU6IF9fc2NvcGVQb3BwZXIsXG4gICAgICAgIHBsYWNlZFNpZGU6IHBsYWNlZFNpZGUsXG4gICAgICAgIG9uQXJyb3dDaGFuZ2U6IHNldEFycm93LFxuICAgICAgICBhcnJvd1g6IGFycm93WCxcbiAgICAgICAgYXJyb3dZOiBhcnJvd1ksXG4gICAgICAgIHNob3VsZEhpZGVBcnJvdzogY2Fubm90Q2VudGVyQXJyb3dcbiAgICB9LCAvKiNfX1BVUkVfXyovICRrWTkzViRjcmVhdGVFbGVtZW50KCRrWTkzViRQcmltaXRpdmUuZGl2LCAka1k5M1YkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe1xuICAgICAgICBcImRhdGEtc2lkZVwiOiBwbGFjZWRTaWRlLFxuICAgICAgICBcImRhdGEtYWxpZ25cIjogcGxhY2VkQWxpZ25cbiAgICB9LCBjb250ZW50UHJvcHMsIHtcbiAgICAgICAgcmVmOiBjb21wb3NlZFJlZnMsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAuLi5jb250ZW50UHJvcHMuc3R5bGUsXG4gICAgICAgICAgICAvLyBpZiB0aGUgUG9wcGVyQ29udGVudCBoYXNuJ3QgYmVlbiBwbGFjZWQgeWV0IChub3QgYWxsIG1lYXN1cmVtZW50cyBkb25lKVxuICAgICAgICAgICAgLy8gd2UgcHJldmVudCBhbmltYXRpb25zIHNvIHRoYXQgdXNlcnMncyBhbmltYXRpb24gZG9uJ3Qga2ljayBpbiB0b28gZWFybHkgcmVmZXJyaW5nIHdyb25nIHNpZGVzXG4gICAgICAgICAgICBhbmltYXRpb246ICFpc1Bvc2l0aW9uZWQgPyAnbm9uZScgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAvLyBoaWRlIHRoZSBjb250ZW50IGlmIHVzaW5nIHRoZSBoaWRlIG1pZGRsZXdhcmUgYW5kIHNob3VsZCBiZSBoaWRkZW5cbiAgICAgICAgICAgIG9wYWNpdHk6IChfbWlkZGxld2FyZURhdGEkaGlkZSA9IG1pZGRsZXdhcmVEYXRhLmhpZGUpICE9PSBudWxsICYmIF9taWRkbGV3YXJlRGF0YSRoaWRlICE9PSB2b2lkIDAgJiYgX21pZGRsZXdhcmVEYXRhJGhpZGUucmVmZXJlbmNlSGlkZGVuID8gMCA6IHVuZGVmaW5lZFxuICAgICAgICB9XG4gICAgfSkpKSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkYmM0YWU1ODU1ZDNjNGZjLCB7XG4gICAgZGlzcGxheU5hbWU6ICRjZjFhYzVkOWZlMGU4MjA2JHZhciRDT05URU5UX05BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogUG9wcGVyQXJyb3dcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJEFSUk9XX05BTUUgPSAnUG9wcGVyQXJyb3cnO1xuY29uc3QgJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJE9QUE9TSVRFX1NJREUgPSB7XG4gICAgdG9wOiAnYm90dG9tJyxcbiAgICByaWdodDogJ2xlZnQnLFxuICAgIGJvdHRvbTogJ3RvcCcsXG4gICAgbGVmdDogJ3JpZ2h0J1xufTtcbmNvbnN0ICRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCQ3OWQ2MmNkNGUxMGEzZmQwID0gLyojX19QVVJFX18qLyAka1k5M1YkZm9yd2FyZFJlZihmdW5jdGlvbiAkY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkNzlkNjJjZDRlMTBhM2ZkMChwcm9wcywgZm9yd2FyZGVkUmVmKSB7XG4gICAgY29uc3QgeyBfX3Njb3BlUG9wcGVyOiBfX3Njb3BlUG9wcGVyICwgLi4uYXJyb3dQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgY29udGVudENvbnRleHQgPSAkY2YxYWM1ZDlmZTBlODIwNiR2YXIkdXNlQ29udGVudENvbnRleHQoJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJEFSUk9XX05BTUUsIF9fc2NvcGVQb3BwZXIpO1xuICAgIGNvbnN0IGJhc2VTaWRlID0gJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJE9QUE9TSVRFX1NJREVbY29udGVudENvbnRleHQucGxhY2VkU2lkZV07XG4gICAgcmV0dXJuKC8qI19fUFVSRV9fKi8gLy8gd2UgaGF2ZSB0byB1c2UgYW4gZXh0cmEgd3JhcHBlciBiZWNhdXNlIGBSZXNpemVPYnNlcnZlcmAgKHVzZWQgYnkgYHVzZVNpemVgKVxuICAgIC8vIGRvZXNuJ3QgcmVwb3J0IHNpemUgYXMgd2UnZCBleHBlY3Qgb24gU1ZHIGVsZW1lbnRzLlxuICAgIC8vIGl0IHJlcG9ydHMgdGhlaXIgYm91bmRpbmcgYm94IHdoaWNoIGlzIGVmZmVjdGl2ZWx5IHRoZSBsYXJnZXN0IHBhdGggaW5zaWRlIHRoZSBTVkcuXG4gICAgJGtZOTNWJGNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIsIHtcbiAgICAgICAgcmVmOiBjb250ZW50Q29udGV4dC5vbkFycm93Q2hhbmdlLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgICAgICBsZWZ0OiBjb250ZW50Q29udGV4dC5hcnJvd1gsXG4gICAgICAgICAgICB0b3A6IGNvbnRlbnRDb250ZXh0LmFycm93WSxcbiAgICAgICAgICAgIFtiYXNlU2lkZV06IDAsXG4gICAgICAgICAgICB0cmFuc2Zvcm1PcmlnaW46IHtcbiAgICAgICAgICAgICAgICB0b3A6ICcnLFxuICAgICAgICAgICAgICAgIHJpZ2h0OiAnMCAwJyxcbiAgICAgICAgICAgICAgICBib3R0b206ICdjZW50ZXIgMCcsXG4gICAgICAgICAgICAgICAgbGVmdDogJzEwMCUgMCdcbiAgICAgICAgICAgIH1bY29udGVudENvbnRleHQucGxhY2VkU2lkZV0sXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHtcbiAgICAgICAgICAgICAgICB0b3A6ICd0cmFuc2xhdGVZKDEwMCUpJyxcbiAgICAgICAgICAgICAgICByaWdodDogJ3RyYW5zbGF0ZVkoNTAlKSByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZVgoLTUwJSknLFxuICAgICAgICAgICAgICAgIGJvdHRvbTogYHJvdGF0ZSgxODBkZWcpYCxcbiAgICAgICAgICAgICAgICBsZWZ0OiAndHJhbnNsYXRlWSg1MCUpIHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZVgoNTAlKSdcbiAgICAgICAgICAgIH1bY29udGVudENvbnRleHQucGxhY2VkU2lkZV0sXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBjb250ZW50Q29udGV4dC5zaG91bGRIaWRlQXJyb3cgPyAnaGlkZGVuJyA6IHVuZGVmaW5lZFxuICAgICAgICB9XG4gICAgfSwgLyojX19QVVJFX18qLyAka1k5M1YkY3JlYXRlRWxlbWVudCgka1k5M1YkUm9vdCwgJGtZOTNWJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBhcnJvd1Byb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgLi4uYXJyb3dQcm9wcy5zdHlsZSxcbiAgICAgICAgICAgIC8vIGVuc3VyZXMgdGhlIGVsZW1lbnQgY2FuIGJlIG1lYXN1cmVkIGNvcnJlY3RseSAobW9zdGx5IGZvciBpZiBTVkcpXG4gICAgICAgICAgICBkaXNwbGF5OiAnYmxvY2snXG4gICAgICAgIH1cbiAgICB9KSkpKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCQ3OWQ2MmNkNGUxMGEzZmQwLCB7XG4gICAgZGlzcGxheU5hbWU6ICRjZjFhYzVkOWZlMGU4MjA2JHZhciRBUlJPV19OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gZnVuY3Rpb24gJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJGlzTm90TnVsbCh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZSAhPT0gbnVsbDtcbn1cbmNvbnN0ICRjZjFhYzVkOWZlMGU4MjA2JHZhciR0cmFuc2Zvcm1PcmlnaW4gPSAob3B0aW9ucyk9Pih7XG4gICAgICAgIG5hbWU6ICd0cmFuc2Zvcm1PcmlnaW4nLFxuICAgICAgICBvcHRpb25zOiBvcHRpb25zLFxuICAgICAgICBmbiAoZGF0YSkge1xuICAgICAgICAgICAgdmFyIF9taWRkbGV3YXJlRGF0YSRhcnJvdzQsIF9taWRkbGV3YXJlRGF0YSRhcnJvdzUsIF9taWRkbGV3YXJlRGF0YSRhcnJvdzYsIF9taWRkbGV3YXJlRGF0YSRhcnJvdzcsIF9taWRkbGV3YXJlRGF0YSRhcnJvdzg7XG4gICAgICAgICAgICBjb25zdCB7IHBsYWNlbWVudDogcGxhY2VtZW50ICwgcmVjdHM6IHJlY3RzICwgbWlkZGxld2FyZURhdGE6IG1pZGRsZXdhcmVEYXRhICB9ID0gZGF0YTtcbiAgICAgICAgICAgIGNvbnN0IGNhbm5vdENlbnRlckFycm93ID0gKChfbWlkZGxld2FyZURhdGEkYXJyb3c0ID0gbWlkZGxld2FyZURhdGEuYXJyb3cpID09PSBudWxsIHx8IF9taWRkbGV3YXJlRGF0YSRhcnJvdzQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9taWRkbGV3YXJlRGF0YSRhcnJvdzQuY2VudGVyT2Zmc2V0KSAhPT0gMDtcbiAgICAgICAgICAgIGNvbnN0IGlzQXJyb3dIaWRkZW4gPSBjYW5ub3RDZW50ZXJBcnJvdztcbiAgICAgICAgICAgIGNvbnN0IGFycm93V2lkdGggPSBpc0Fycm93SGlkZGVuID8gMCA6IG9wdGlvbnMuYXJyb3dXaWR0aDtcbiAgICAgICAgICAgIGNvbnN0IGFycm93SGVpZ2h0ID0gaXNBcnJvd0hpZGRlbiA/IDAgOiBvcHRpb25zLmFycm93SGVpZ2h0O1xuICAgICAgICAgICAgY29uc3QgW3BsYWNlZFNpZGUsIHBsYWNlZEFsaWduXSA9ICRjZjFhYzVkOWZlMGU4MjA2JHZhciRnZXRTaWRlQW5kQWxpZ25Gcm9tUGxhY2VtZW50KHBsYWNlbWVudCk7XG4gICAgICAgICAgICBjb25zdCBub0Fycm93QWxpZ24gPSB7XG4gICAgICAgICAgICAgICAgc3RhcnQ6ICcwJScsXG4gICAgICAgICAgICAgICAgY2VudGVyOiAnNTAlJyxcbiAgICAgICAgICAgICAgICBlbmQ6ICcxMDAlJ1xuICAgICAgICAgICAgfVtwbGFjZWRBbGlnbl07XG4gICAgICAgICAgICBjb25zdCBhcnJvd1hDZW50ZXIgPSAoKF9taWRkbGV3YXJlRGF0YSRhcnJvdzUgPSAoX21pZGRsZXdhcmVEYXRhJGFycm93NiA9IG1pZGRsZXdhcmVEYXRhLmFycm93KSA9PT0gbnVsbCB8fCBfbWlkZGxld2FyZURhdGEkYXJyb3c2ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfbWlkZGxld2FyZURhdGEkYXJyb3c2LngpICE9PSBudWxsICYmIF9taWRkbGV3YXJlRGF0YSRhcnJvdzUgIT09IHZvaWQgMCA/IF9taWRkbGV3YXJlRGF0YSRhcnJvdzUgOiAwKSArIGFycm93V2lkdGggLyAyO1xuICAgICAgICAgICAgY29uc3QgYXJyb3dZQ2VudGVyID0gKChfbWlkZGxld2FyZURhdGEkYXJyb3c3ID0gKF9taWRkbGV3YXJlRGF0YSRhcnJvdzggPSBtaWRkbGV3YXJlRGF0YS5hcnJvdykgPT09IG51bGwgfHwgX21pZGRsZXdhcmVEYXRhJGFycm93OCA9PT0gdm9pZCAwID8gdm9pZCAwIDogX21pZGRsZXdhcmVEYXRhJGFycm93OC55KSAhPT0gbnVsbCAmJiBfbWlkZGxld2FyZURhdGEkYXJyb3c3ICE9PSB2b2lkIDAgPyBfbWlkZGxld2FyZURhdGEkYXJyb3c3IDogMCkgKyBhcnJvd0hlaWdodCAvIDI7XG4gICAgICAgICAgICBsZXQgeCA9ICcnO1xuICAgICAgICAgICAgbGV0IHkgPSAnJztcbiAgICAgICAgICAgIGlmIChwbGFjZWRTaWRlID09PSAnYm90dG9tJykge1xuICAgICAgICAgICAgICAgIHggPSBpc0Fycm93SGlkZGVuID8gbm9BcnJvd0FsaWduIDogYCR7YXJyb3dYQ2VudGVyfXB4YDtcbiAgICAgICAgICAgICAgICB5ID0gYCR7LWFycm93SGVpZ2h0fXB4YDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAocGxhY2VkU2lkZSA9PT0gJ3RvcCcpIHtcbiAgICAgICAgICAgICAgICB4ID0gaXNBcnJvd0hpZGRlbiA/IG5vQXJyb3dBbGlnbiA6IGAke2Fycm93WENlbnRlcn1weGA7XG4gICAgICAgICAgICAgICAgeSA9IGAke3JlY3RzLmZsb2F0aW5nLmhlaWdodCArIGFycm93SGVpZ2h0fXB4YDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAocGxhY2VkU2lkZSA9PT0gJ3JpZ2h0Jykge1xuICAgICAgICAgICAgICAgIHggPSBgJHstYXJyb3dIZWlnaHR9cHhgO1xuICAgICAgICAgICAgICAgIHkgPSBpc0Fycm93SGlkZGVuID8gbm9BcnJvd0FsaWduIDogYCR7YXJyb3dZQ2VudGVyfXB4YDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAocGxhY2VkU2lkZSA9PT0gJ2xlZnQnKSB7XG4gICAgICAgICAgICAgICAgeCA9IGAke3JlY3RzLmZsb2F0aW5nLndpZHRoICsgYXJyb3dIZWlnaHR9cHhgO1xuICAgICAgICAgICAgICAgIHkgPSBpc0Fycm93SGlkZGVuID8gbm9BcnJvd0FsaWduIDogYCR7YXJyb3dZQ2VudGVyfXB4YDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgICAgICB4OiB4LFxuICAgICAgICAgICAgICAgICAgICB5OiB5XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH0pXG47XG5mdW5jdGlvbiAkY2YxYWM1ZDlmZTBlODIwNiR2YXIkZ2V0U2lkZUFuZEFsaWduRnJvbVBsYWNlbWVudChwbGFjZW1lbnQpIHtcbiAgICBjb25zdCBbc2lkZSwgYWxpZ24gPSAnY2VudGVyJ10gPSBwbGFjZW1lbnQuc3BsaXQoJy0nKTtcbiAgICByZXR1cm4gW1xuICAgICAgICBzaWRlLFxuICAgICAgICBhbGlnblxuICAgIF07XG59XG5jb25zdCAkY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSA9ICRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCRiYWRhYzlhZGEzYTBiZGY5O1xuY29uc3QgJGNmMWFjNWQ5ZmUwZTgyMDYkZXhwb3J0JGI2ODgyNTM5NThiOGRmZTcgPSAkY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkZWNkNGUxY2NhYjZlZDZkO1xuY29uc3QgJGNmMWFjNWQ5ZmUwZTgyMDYkZXhwb3J0JDdjNmUyYzAyMTU3YmI3ZDIgPSAkY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkYmM0YWU1ODU1ZDNjNGZjO1xuY29uc3QgJGNmMWFjNWQ5ZmUwZTgyMDYkZXhwb3J0JDIxYjA3YzhmMjc0YWViZDUgPSAkY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkNzlkNjJjZDRlMTBhM2ZkMDtcblxuXG5cblxuZXhwb3J0IHskY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkNzIyYWFjMTk0YWU5MjMgYXMgY3JlYXRlUG9wcGVyU2NvcGUsICRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCRiYWRhYzlhZGEzYTBiZGY5IGFzIFBvcHBlciwgJGNmMWFjNWQ5ZmUwZTgyMDYkZXhwb3J0JGVjZDRlMWNjYWI2ZWQ2ZCBhcyBQb3BwZXJBbmNob3IsICRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCRiYzRhZTU4NTVkM2M0ZmMgYXMgUG9wcGVyQ29udGVudCwgJGNmMWFjNWQ5ZmUwZTgyMDYkZXhwb3J0JDc5ZDYyY2Q0ZTEwYTNmZDAgYXMgUG9wcGVyQXJyb3csICRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IGFzIFJvb3QsICRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCRiNjg4MjUzOTU4YjhkZmU3IGFzIEFuY2hvciwgJGNmMWFjNWQ5ZmUwZTgyMDYkZXhwb3J0JDdjNmUyYzAyMTU3YmI3ZDIgYXMgQ29udGVudCwgJGNmMWFjNWQ5ZmUwZTgyMDYkZXhwb3J0JDIxYjA3YzhmMjc0YWViZDUgYXMgQXJyb3csICRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCQzNmYwMDg2ZGEwOWM0YjlmIGFzIFNJREVfT1BUSU9OUywgJGNmMWFjNWQ5ZmUwZTgyMDYkZXhwb3J0JDM2NzFmZmFiN2IzMDJmYzkgYXMgQUxJR05fT1BUSU9OU307XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5tanMubWFwXG4iXSwibmFtZXMiOlsiJGtZOTNWJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIiwidXNlU3RhdGUiLCIka1k5M1YkdXNlU3RhdGUiLCJjcmVhdGVFbGVtZW50IiwiJGtZOTNWJGNyZWF0ZUVsZW1lbnQiLCJmb3J3YXJkUmVmIiwiJGtZOTNWJGZvcndhcmRSZWYiLCJ1c2VSZWYiLCIka1k5M1YkdXNlUmVmIiwidXNlRWZmZWN0IiwiJGtZOTNWJHVzZUVmZmVjdCIsInVzZUZsb2F0aW5nIiwiJGtZOTNWJHVzZUZsb2F0aW5nIiwiYXV0b1VwZGF0ZSIsIiRrWTkzViRhdXRvVXBkYXRlIiwib2Zmc2V0IiwiJGtZOTNWJG9mZnNldCIsInNoaWZ0IiwiJGtZOTNWJHNoaWZ0IiwibGltaXRTaGlmdCIsIiRrWTkzViRsaW1pdFNoaWZ0IiwiZmxpcCIsIiRrWTkzViRmbGlwIiwic2l6ZSIsIiRrWTkzViRzaXplIiwiYXJyb3ciLCIka1k5M1YkYXJyb3ciLCJoaWRlIiwiJGtZOTNWJGhpZGUiLCJSb290IiwiJGtZOTNWJFJvb3QiLCJ1c2VDb21wb3NlZFJlZnMiLCIka1k5M1YkdXNlQ29tcG9zZWRSZWZzIiwiY3JlYXRlQ29udGV4dFNjb3BlIiwiJGtZOTNWJGNyZWF0ZUNvbnRleHRTY29wZSIsIlByaW1pdGl2ZSIsIiRrWTkzViRQcmltaXRpdmUiLCJ1c2VDYWxsYmFja1JlZiIsIiRrWTkzViR1c2VDYWxsYmFja1JlZiIsInVzZUxheW91dEVmZmVjdCIsIiRrWTkzViR1c2VMYXlvdXRFZmZlY3QiLCJ1c2VTaXplIiwiJGtZOTNWJHVzZVNpemUiLCIkY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkMzZmMDA4NmRhMDljNGI5ZiIsIiRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCQzNjcxZmZhYjdiMzAyZmM5IiwiJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJFBPUFBFUl9OQU1FIiwiJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJGNyZWF0ZVBvcHBlckNvbnRleHQiLCIkY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkNzIyYWFjMTk0YWU5MjMiLCIkY2YxYWM1ZDlmZTBlODIwNiR2YXIkUG9wcGVyUHJvdmlkZXIiLCIkY2YxYWM1ZDlmZTBlODIwNiR2YXIkdXNlUG9wcGVyQ29udGV4dCIsIiRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCRiYWRhYzlhZGEzYTBiZGY5IiwicHJvcHMiLCJfX3Njb3BlUG9wcGVyIiwiY2hpbGRyZW4iLCJhbmNob3IiLCJzZXRBbmNob3IiLCJzY29wZSIsIm9uQW5jaG9yQ2hhbmdlIiwiT2JqZWN0IiwiYXNzaWduIiwiZGlzcGxheU5hbWUiLCIkY2YxYWM1ZDlmZTBlODIwNiR2YXIkQU5DSE9SX05BTUUiLCIkY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkZWNkNGUxY2NhYjZlZDZkIiwiZm9yd2FyZGVkUmVmIiwidmlydHVhbFJlZiIsImFuY2hvclByb3BzIiwiY29udGV4dCIsInJlZiIsImNvbXBvc2VkUmVmcyIsImN1cnJlbnQiLCJkaXYiLCIkY2YxYWM1ZDlmZTBlODIwNiR2YXIkQ09OVEVOVF9OQU1FIiwiJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJFBvcHBlckNvbnRlbnRQcm92aWRlciIsIiRjZjFhYzVkOWZlMGU4MjA2JHZhciR1c2VDb250ZW50Q29udGV4dCIsIiRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCRiYzRhZTU4NTVkM2M0ZmMiLCJfYXJyb3dTaXplJHdpZHRoIiwiX2Fycm93U2l6ZSRoZWlnaHQiLCJfbWlkZGxld2FyZURhdGEkYXJyb3ciLCJfbWlkZGxld2FyZURhdGEkYXJyb3cyIiwiX21pZGRsZXdhcmVEYXRhJGFycm93MyIsIl9taWRkbGV3YXJlRGF0YSR0cmFucyIsIl9taWRkbGV3YXJlRGF0YSR0cmFuczIiLCJfbWlkZGxld2FyZURhdGEkaGlkZSIsInNpZGUiLCJzaWRlT2Zmc2V0IiwiYWxpZ24iLCJhbGlnbk9mZnNldCIsImFycm93UGFkZGluZyIsImF2b2lkQ29sbGlzaW9ucyIsImNvbGxpc2lvbkJvdW5kYXJ5IiwiY29sbGlzaW9uUGFkZGluZyIsImNvbGxpc2lvblBhZGRpbmdQcm9wIiwic3RpY2t5IiwiaGlkZVdoZW5EZXRhY2hlZCIsInVwZGF0ZVBvc2l0aW9uU3RyYXRlZ3kiLCJvblBsYWNlZCIsImNvbnRlbnRQcm9wcyIsImNvbnRlbnQiLCJzZXRDb250ZW50Iiwibm9kZSIsInNldEFycm93IiwiYXJyb3dTaXplIiwiYXJyb3dXaWR0aCIsIndpZHRoIiwiYXJyb3dIZWlnaHQiLCJoZWlnaHQiLCJkZXNpcmVkUGxhY2VtZW50IiwidG9wIiwicmlnaHQiLCJib3R0b20iLCJsZWZ0IiwiYm91bmRhcnkiLCJBcnJheSIsImlzQXJyYXkiLCJoYXNFeHBsaWNpdEJvdW5kYXJpZXMiLCJsZW5ndGgiLCJkZXRlY3RPdmVyZmxvd09wdGlvbnMiLCJwYWRkaW5nIiwiZmlsdGVyIiwiJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJGlzTm90TnVsbCIsImFsdEJvdW5kYXJ5IiwicmVmcyIsImZsb2F0aW5nU3R5bGVzIiwicGxhY2VtZW50IiwiaXNQb3NpdGlvbmVkIiwibWlkZGxld2FyZURhdGEiLCJzdHJhdGVneSIsIndoaWxlRWxlbWVudHNNb3VudGVkIiwiYXJncyIsImNsZWFudXAiLCJhbmltYXRpb25GcmFtZSIsImVsZW1lbnRzIiwicmVmZXJlbmNlIiwibWlkZGxld2FyZSIsIm1haW5BeGlzIiwiYWxpZ25tZW50QXhpcyIsImNyb3NzQXhpcyIsImxpbWl0ZXIiLCJ1bmRlZmluZWQiLCJhcHBseSIsInJlY3RzIiwiYXZhaWxhYmxlV2lkdGgiLCJhdmFpbGFibGVIZWlnaHQiLCJhbmNob3JXaWR0aCIsImFuY2hvckhlaWdodCIsImNvbnRlbnRTdHlsZSIsImZsb2F0aW5nIiwic3R5bGUiLCJzZXRQcm9wZXJ0eSIsImVsZW1lbnQiLCIkY2YxYWM1ZDlmZTBlODIwNiR2YXIkdHJhbnNmb3JtT3JpZ2luIiwicGxhY2VkU2lkZSIsInBsYWNlZEFsaWduIiwiJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJGdldFNpZGVBbmRBbGlnbkZyb21QbGFjZW1lbnQiLCJoYW5kbGVQbGFjZWQiLCJhcnJvd1giLCJ4IiwiYXJyb3dZIiwieSIsImNhbm5vdENlbnRlckFycm93IiwiY2VudGVyT2Zmc2V0IiwiY29udGVudFpJbmRleCIsInNldENvbnRlbnRaSW5kZXgiLCJ3aW5kb3ciLCJnZXRDb21wdXRlZFN0eWxlIiwiekluZGV4Iiwic2V0RmxvYXRpbmciLCJ0cmFuc2Zvcm0iLCJtaW5XaWR0aCIsInRyYW5zZm9ybU9yaWdpbiIsImpvaW4iLCJkaXIiLCJvbkFycm93Q2hhbmdlIiwic2hvdWxkSGlkZUFycm93IiwiYW5pbWF0aW9uIiwib3BhY2l0eSIsInJlZmVyZW5jZUhpZGRlbiIsIiRjZjFhYzVkOWZlMGU4MjA2JHZhciRBUlJPV19OQU1FIiwiJGNmMWFjNWQ5ZmUwZTgyMDYkdmFyJE9QUE9TSVRFX1NJREUiLCIkY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkNzlkNjJjZDRlMTBhM2ZkMCIsImFycm93UHJvcHMiLCJjb250ZW50Q29udGV4dCIsImJhc2VTaWRlIiwicG9zaXRpb24iLCJ2aXNpYmlsaXR5IiwiZGlzcGxheSIsInZhbHVlIiwib3B0aW9ucyIsIm5hbWUiLCJmbiIsImRhdGEiLCJfbWlkZGxld2FyZURhdGEkYXJyb3c0IiwiX21pZGRsZXdhcmVEYXRhJGFycm93NSIsIl9taWRkbGV3YXJlRGF0YSRhcnJvdzYiLCJfbWlkZGxld2FyZURhdGEkYXJyb3c3IiwiX21pZGRsZXdhcmVEYXRhJGFycm93OCIsImlzQXJyb3dIaWRkZW4iLCJub0Fycm93QWxpZ24iLCJzdGFydCIsImNlbnRlciIsImVuZCIsImFycm93WENlbnRlciIsImFycm93WUNlbnRlciIsInNwbGl0IiwiJGNmMWFjNWQ5ZmUwZTgyMDYkZXhwb3J0JGJlOTJiNmY1ZjAzYzBmZTkiLCIkY2YxYWM1ZDlmZTBlODIwNiRleHBvcnQkYjY4ODI1Mzk1OGI4ZGZlNyIsIiRjZjFhYzVkOWZlMGU4MjA2JGV4cG9ydCQ3YzZlMmMwMjE1N2JiN2QyIiwiJGNmMWFjNWQ5ZmUwZTgyMDYkZXhwb3J0JDIxYjA3YzhmMjc0YWViZDUiLCJjcmVhdGVQb3BwZXJTY29wZSIsIlBvcHBlciIsIlBvcHBlckFuY2hvciIsIlBvcHBlckNvbnRlbnQiLCJQb3BwZXJBcnJvdyIsIkFuY2hvciIsIkNvbnRlbnQiLCJBcnJvdyIsIlNJREVfT1BUSU9OUyIsIkFMSUdOX09QVElPTlMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-popper/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-portal/dist/index.mjs": /*!************************************************************************************************!*\ !*** ./node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-portal/dist/index.mjs ***! \************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Portal: () => (/* binding */ $f1701beae083dbae$export$602eac185826482c),\n/* harmony export */ Root: () => (/* binding */ $f1701beae083dbae$export$be92b6f5f03c0fe9)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-dom */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-dom.js\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n\n\n\n\n/* -------------------------------------------------------------------------------------------------\n * Portal\n * -----------------------------------------------------------------------------------------------*/ const $f1701beae083dbae$var$PORTAL_NAME = \"Portal\";\nconst $f1701beae083dbae$export$602eac185826482c = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n var _globalThis$document;\n const { container: container = globalThis === null || globalThis === void 0 ? void 0 : (_globalThis$document = globalThis.document) === null || _globalThis$document === void 0 ? void 0 : _globalThis$document.body, ...portalProps } = props;\n return container ? /*#__PURE__*/ react_dom__WEBPACK_IMPORTED_MODULE_2__.createPortal(/*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_3__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, portalProps, {\n ref: forwardedRef\n })), container) : null;\n});\n/*#__PURE__*/ Object.assign($f1701beae083dbae$export$602eac185826482c, {\n displayName: $f1701beae083dbae$var$PORTAL_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ const $f1701beae083dbae$export$be92b6f5f03c0fe9 = $f1701beae083dbae$export$602eac185826482c;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXNlbGVjdC9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXBvcnRhbC9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBc0Y7QUFDTztBQUNyRDtBQUNnQztBQU14RTs7a0dBRWtHLEdBQUcsTUFBTVEsb0NBQW9DO0FBQy9JLE1BQU1DLDRDQUE0QyxXQUFXLEdBQUdQLGlEQUFpQkEsQ0FBQyxDQUFDUSxPQUFPQztJQUN0RixJQUFJQztJQUNKLE1BQU0sRUFBRUMsV0FBV0EsWUFBWUMsZUFBZSxRQUFRQSxlQUFlLEtBQUssSUFBSSxLQUFLLElBQUksQ0FBQ0YsdUJBQXVCRSxXQUFXQyxRQUFRLE1BQU0sUUFBUUgseUJBQXlCLEtBQUssSUFBSSxLQUFLLElBQUlBLHFCQUFxQkksSUFBSSxFQUFHLEdBQUdDLGFBQWEsR0FBR1A7SUFDMU8sT0FBT0csWUFBWSxXQUFXLEdBQUdSLG1EQUE0QixDQUFDLFdBQVcsR0FBR0Qsb0RBQW9CQSxDQUFDRyxnRUFBZ0JBLENBQUNZLEdBQUcsRUFBRW5CLDhFQUFvQ0EsQ0FBQyxDQUFDLEdBQUdpQixhQUFhO1FBQ3pLRyxLQUFLVDtJQUNULEtBQUtFLGFBQWE7QUFDdEI7QUFDQSxXQUFXLEdBQUdRLE9BQU9DLE1BQU0sQ0FBQ2IsMkNBQTJDO0lBQ25FYyxhQUFhZjtBQUNqQjtBQUNBLGtHQUFrRyxHQUFHLE1BQU1nQiw0Q0FBNENmO0FBS3ZDLENBQ2hILGtDQUFrQyIsInNvdXJjZXMiOlsid2VicGFjazovL2VtYmVkY2hhaW4tYWRtaW4vLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXNlbGVjdC9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXBvcnRhbC9kaXN0L2luZGV4Lm1qcz9hM2RiIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAkN1NYbDIkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2V4dGVuZHNcIjtcbmltcG9ydCB7Zm9yd2FyZFJlZiBhcyAkN1NYbDIkZm9yd2FyZFJlZiwgY3JlYXRlRWxlbWVudCBhcyAkN1NYbDIkY3JlYXRlRWxlbWVudH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgJDdTWGwyJHJlYWN0ZG9tIGZyb20gXCJyZWFjdC1kb21cIjtcbmltcG9ydCB7UHJpbWl0aXZlIGFzICQ3U1hsMiRQcmltaXRpdmV9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtcHJpbWl0aXZlXCI7XG5cblxuXG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogUG9ydGFsXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICRmMTcwMWJlYWUwODNkYmFlJHZhciRQT1JUQUxfTkFNRSA9ICdQb3J0YWwnO1xuY29uc3QgJGYxNzAxYmVhZTA4M2RiYWUkZXhwb3J0JDYwMmVhYzE4NTgyNjQ4MmMgPSAvKiNfX1BVUkVfXyovICQ3U1hsMiRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIHZhciBfZ2xvYmFsVGhpcyRkb2N1bWVudDtcbiAgICBjb25zdCB7IGNvbnRhaW5lcjogY29udGFpbmVyID0gZ2xvYmFsVGhpcyA9PT0gbnVsbCB8fCBnbG9iYWxUaGlzID09PSB2b2lkIDAgPyB2b2lkIDAgOiAoX2dsb2JhbFRoaXMkZG9jdW1lbnQgPSBnbG9iYWxUaGlzLmRvY3VtZW50KSA9PT0gbnVsbCB8fCBfZ2xvYmFsVGhpcyRkb2N1bWVudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2dsb2JhbFRoaXMkZG9jdW1lbnQuYm9keSAsIC4uLnBvcnRhbFByb3BzIH0gPSBwcm9wcztcbiAgICByZXR1cm4gY29udGFpbmVyID8gLyojX19QVVJFX18qLyAkN1NYbDIkcmVhY3Rkb20uY3JlYXRlUG9ydGFsKC8qI19fUFVSRV9fKi8gJDdTWGwyJGNyZWF0ZUVsZW1lbnQoJDdTWGwyJFByaW1pdGl2ZS5kaXYsICQ3U1hsMiRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7fSwgcG9ydGFsUHJvcHMsIHtcbiAgICAgICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgICB9KSksIGNvbnRhaW5lcikgOiBudWxsO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJGYxNzAxYmVhZTA4M2RiYWUkZXhwb3J0JDYwMmVhYzE4NTgyNjQ4MmMsIHtcbiAgICBkaXNwbGF5TmFtZTogJGYxNzAxYmVhZTA4M2RiYWUkdmFyJFBPUlRBTF9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJGYxNzAxYmVhZTA4M2RiYWUkZXhwb3J0JGJlOTJiNmY1ZjAzYzBmZTkgPSAkZjE3MDFiZWFlMDgzZGJhZSRleHBvcnQkNjAyZWFjMTg1ODI2NDgyYztcblxuXG5cblxuZXhwb3J0IHskZjE3MDFiZWFlMDgzZGJhZSRleHBvcnQkNjAyZWFjMTg1ODI2NDgyYyBhcyBQb3J0YWwsICRmMTcwMWJlYWUwODNkYmFlJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IGFzIFJvb3R9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXgubWpzLm1hcFxuIl0sIm5hbWVzIjpbIiQ3U1hsMiRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyIsImZvcndhcmRSZWYiLCIkN1NYbDIkZm9yd2FyZFJlZiIsImNyZWF0ZUVsZW1lbnQiLCIkN1NYbDIkY3JlYXRlRWxlbWVudCIsIiQ3U1hsMiRyZWFjdGRvbSIsIlByaW1pdGl2ZSIsIiQ3U1hsMiRQcmltaXRpdmUiLCIkZjE3MDFiZWFlMDgzZGJhZSR2YXIkUE9SVEFMX05BTUUiLCIkZjE3MDFiZWFlMDgzZGJhZSRleHBvcnQkNjAyZWFjMTg1ODI2NDgyYyIsInByb3BzIiwiZm9yd2FyZGVkUmVmIiwiX2dsb2JhbFRoaXMkZG9jdW1lbnQiLCJjb250YWluZXIiLCJnbG9iYWxUaGlzIiwiZG9jdW1lbnQiLCJib2R5IiwicG9ydGFsUHJvcHMiLCJjcmVhdGVQb3J0YWwiLCJkaXYiLCJyZWYiLCJPYmplY3QiLCJhc3NpZ24iLCJkaXNwbGF5TmFtZSIsIiRmMTcwMWJlYWUwODNkYmFlJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IiwiUG9ydGFsIiwiUm9vdCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-portal/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-separator/dist/index.mjs": /*!***************************************************************!*\ !*** ./node_modules/@radix-ui/react-separator/dist/index.mjs ***! \***************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Root: () => (/* binding */ $89eedd556c436f6a$export$be92b6f5f03c0fe9),\n/* harmony export */ Separator: () => (/* binding */ $89eedd556c436f6a$export$1ff3c3f08ae963c0)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n\n\n\n/* -------------------------------------------------------------------------------------------------\n * Separator\n * -----------------------------------------------------------------------------------------------*/ const $89eedd556c436f6a$var$NAME = \"Separator\";\nconst $89eedd556c436f6a$var$DEFAULT_ORIENTATION = \"horizontal\";\nconst $89eedd556c436f6a$var$ORIENTATIONS = [\n \"horizontal\",\n \"vertical\"\n];\nconst $89eedd556c436f6a$export$1ff3c3f08ae963c0 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { decorative: decorative, orientation: orientationProp = $89eedd556c436f6a$var$DEFAULT_ORIENTATION, ...domProps } = props;\n const orientation = $89eedd556c436f6a$var$isValidOrientation(orientationProp) ? orientationProp : $89eedd556c436f6a$var$DEFAULT_ORIENTATION; // `aria-orientation` defaults to `horizontal` so we only need it if `orientation` is vertical\n const ariaOrientation = orientation === \"vertical\" ? orientation : undefined;\n const semanticProps = decorative ? {\n role: \"none\"\n } : {\n \"aria-orientation\": ariaOrientation,\n role: \"separator\"\n };\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_2__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"data-orientation\": orientation\n }, semanticProps, domProps, {\n ref: forwardedRef\n }));\n});\n/*#__PURE__*/ Object.assign($89eedd556c436f6a$export$1ff3c3f08ae963c0, {\n displayName: $89eedd556c436f6a$var$NAME\n});\n$89eedd556c436f6a$export$1ff3c3f08ae963c0.propTypes = {\n orientation (props, propName, componentName) {\n const propValue = props[propName];\n const strVal = String(propValue);\n if (propValue && !$89eedd556c436f6a$var$isValidOrientation(propValue)) return new Error($89eedd556c436f6a$var$getInvalidOrientationError(strVal, componentName));\n return null;\n }\n};\n/* -----------------------------------------------------------------------------------------------*/ // Split this out for clearer readability of the error message.\nfunction $89eedd556c436f6a$var$getInvalidOrientationError(value, componentName) {\n return `Invalid prop \\`orientation\\` of value \\`${value}\\` supplied to \\`${componentName}\\`, expected one of:\n - horizontal\n - vertical\n\nDefaulting to \\`${$89eedd556c436f6a$var$DEFAULT_ORIENTATION}\\`.`;\n}\nfunction $89eedd556c436f6a$var$isValidOrientation(orientation) {\n return $89eedd556c436f6a$var$ORIENTATIONS.includes(orientation);\n}\nconst $89eedd556c436f6a$export$be92b6f5f03c0fe9 = $89eedd556c436f6a$export$1ff3c3f08ae963c0;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXNlcGFyYXRvci9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFzRjtBQUNPO0FBQ3JCO0FBS3hFOztrR0FFa0csR0FBRyxNQUFNTyw2QkFBNkI7QUFDeEksTUFBTUMsNENBQTRDO0FBQ2xELE1BQU1DLHFDQUFxQztJQUN2QztJQUNBO0NBQ0g7QUFDRCxNQUFNQyw0Q0FBNEMsV0FBVyxHQUFHUixpREFBaUJBLENBQUMsQ0FBQ1MsT0FBT0M7SUFDdEYsTUFBTSxFQUFFQyxZQUFZQSxVQUFVLEVBQUdDLGFBQWFDLGtCQUFrQlAseUNBQXlDLEVBQUcsR0FBR1EsVUFBVSxHQUFHTDtJQUM1SCxNQUFNRyxjQUFjRyx5Q0FBeUNGLG1CQUFtQkEsa0JBQWtCUCwyQ0FBMkMsOEZBQThGO0lBQzNPLE1BQU1VLGtCQUFrQkosZ0JBQWdCLGFBQWFBLGNBQWNLO0lBQ25FLE1BQU1DLGdCQUFnQlAsYUFBYTtRQUMvQlEsTUFBTTtJQUNWLElBQUk7UUFDQSxvQkFBb0JIO1FBQ3BCRyxNQUFNO0lBQ1Y7SUFDQSxPQUFPLFdBQVcsR0FBR2pCLG9EQUFvQkEsQ0FBQ0UsZ0VBQWdCQSxDQUFDZ0IsR0FBRyxFQUFFdEIsOEVBQW9DQSxDQUFDO1FBQ2pHLG9CQUFvQmM7SUFDeEIsR0FBR00sZUFBZUosVUFBVTtRQUN4Qk8sS0FBS1g7SUFDVDtBQUNKO0FBQ0EsV0FBVyxHQUFHWSxPQUFPQyxNQUFNLENBQUNmLDJDQUEyQztJQUNuRWdCLGFBQWFuQjtBQUNqQjtBQUNBRywwQ0FBMENpQixTQUFTLEdBQUc7SUFDbERiLGFBQWFILEtBQUssRUFBRWlCLFFBQVEsRUFBRUMsYUFBYTtRQUN2QyxNQUFNQyxZQUFZbkIsS0FBSyxDQUFDaUIsU0FBUztRQUNqQyxNQUFNRyxTQUFTQyxPQUFPRjtRQUN0QixJQUFJQSxhQUFhLENBQUNiLHlDQUF5Q2EsWUFBWSxPQUFPLElBQUlHLE1BQU1DLGlEQUFpREgsUUFBUUY7UUFDakosT0FBTztJQUNYO0FBQ0o7QUFDQSxrR0FBa0csR0FBRywrREFBK0Q7QUFDcEssU0FBU0ssaURBQWlEQyxLQUFLLEVBQUVOLGFBQWE7SUFDMUUsT0FBTyxDQUFDLHdDQUF3QyxFQUFFTSxNQUFNLGlCQUFpQixFQUFFTixjQUFjOzs7O2dCQUk3RSxFQUFFckIsMENBQTBDLEdBQUcsQ0FBQztBQUNoRTtBQUNBLFNBQVNTLHlDQUF5Q0gsV0FBVztJQUN6RCxPQUFPTCxtQ0FBbUMyQixRQUFRLENBQUN0QjtBQUN2RDtBQUNBLE1BQU11Qiw0Q0FBNEMzQjtBQUtpRSxDQUNuSCxrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9lbWJlZGNoYWluLWFkbWluLy4vbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC1zZXBhcmF0b3IvZGlzdC9pbmRleC5tanM/YmM4OSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJDVXWG04JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIGZyb20gXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9leHRlbmRzXCI7XG5pbXBvcnQge2ZvcndhcmRSZWYgYXMgJDVXWG04JGZvcndhcmRSZWYsIGNyZWF0ZUVsZW1lbnQgYXMgJDVXWG04JGNyZWF0ZUVsZW1lbnR9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHtQcmltaXRpdmUgYXMgJDVXWG04JFByaW1pdGl2ZX0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1wcmltaXRpdmVcIjtcblxuXG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogIFNlcGFyYXRvclxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkODllZWRkNTU2YzQzNmY2YSR2YXIkTkFNRSA9ICdTZXBhcmF0b3InO1xuY29uc3QgJDg5ZWVkZDU1NmM0MzZmNmEkdmFyJERFRkFVTFRfT1JJRU5UQVRJT04gPSAnaG9yaXpvbnRhbCc7XG5jb25zdCAkODllZWRkNTU2YzQzNmY2YSR2YXIkT1JJRU5UQVRJT05TID0gW1xuICAgICdob3Jpem9udGFsJyxcbiAgICAndmVydGljYWwnXG5dO1xuY29uc3QgJDg5ZWVkZDU1NmM0MzZmNmEkZXhwb3J0JDFmZjNjM2YwOGFlOTYzYzAgPSAvKiNfX1BVUkVfXyovICQ1V1htOCRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgZGVjb3JhdGl2ZTogZGVjb3JhdGl2ZSAsIG9yaWVudGF0aW9uOiBvcmllbnRhdGlvblByb3AgPSAkODllZWRkNTU2YzQzNmY2YSR2YXIkREVGQVVMVF9PUklFTlRBVElPTiAsIC4uLmRvbVByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBvcmllbnRhdGlvbiA9ICQ4OWVlZGQ1NTZjNDM2ZjZhJHZhciRpc1ZhbGlkT3JpZW50YXRpb24ob3JpZW50YXRpb25Qcm9wKSA/IG9yaWVudGF0aW9uUHJvcCA6ICQ4OWVlZGQ1NTZjNDM2ZjZhJHZhciRERUZBVUxUX09SSUVOVEFUSU9OOyAvLyBgYXJpYS1vcmllbnRhdGlvbmAgZGVmYXVsdHMgdG8gYGhvcml6b250YWxgIHNvIHdlIG9ubHkgbmVlZCBpdCBpZiBgb3JpZW50YXRpb25gIGlzIHZlcnRpY2FsXG4gICAgY29uc3QgYXJpYU9yaWVudGF0aW9uID0gb3JpZW50YXRpb24gPT09ICd2ZXJ0aWNhbCcgPyBvcmllbnRhdGlvbiA6IHVuZGVmaW5lZDtcbiAgICBjb25zdCBzZW1hbnRpY1Byb3BzID0gZGVjb3JhdGl2ZSA/IHtcbiAgICAgICAgcm9sZTogJ25vbmUnXG4gICAgfSA6IHtcbiAgICAgICAgJ2FyaWEtb3JpZW50YXRpb24nOiBhcmlhT3JpZW50YXRpb24sXG4gICAgICAgIHJvbGU6ICdzZXBhcmF0b3InXG4gICAgfTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAkNVdYbTgkY3JlYXRlRWxlbWVudCgkNVdYbTgkUHJpbWl0aXZlLmRpdiwgJDVXWG04JGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHtcbiAgICAgICAgXCJkYXRhLW9yaWVudGF0aW9uXCI6IG9yaWVudGF0aW9uXG4gICAgfSwgc2VtYW50aWNQcm9wcywgZG9tUHJvcHMsIHtcbiAgICAgICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgICB9KSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkODllZWRkNTU2YzQzNmY2YSRleHBvcnQkMWZmM2MzZjA4YWU5NjNjMCwge1xuICAgIGRpc3BsYXlOYW1lOiAkODllZWRkNTU2YzQzNmY2YSR2YXIkTkFNRVxufSk7XG4kODllZWRkNTU2YzQzNmY2YSRleHBvcnQkMWZmM2MzZjA4YWU5NjNjMC5wcm9wVHlwZXMgPSB7XG4gICAgb3JpZW50YXRpb24gKHByb3BzLCBwcm9wTmFtZSwgY29tcG9uZW50TmFtZSkge1xuICAgICAgICBjb25zdCBwcm9wVmFsdWUgPSBwcm9wc1twcm9wTmFtZV07XG4gICAgICAgIGNvbnN0IHN0clZhbCA9IFN0cmluZyhwcm9wVmFsdWUpO1xuICAgICAgICBpZiAocHJvcFZhbHVlICYmICEkODllZWRkNTU2YzQzNmY2YSR2YXIkaXNWYWxpZE9yaWVudGF0aW9uKHByb3BWYWx1ZSkpIHJldHVybiBuZXcgRXJyb3IoJDg5ZWVkZDU1NmM0MzZmNmEkdmFyJGdldEludmFsaWRPcmllbnRhdGlvbkVycm9yKHN0clZhbCwgY29tcG9uZW50TmFtZSkpO1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG59O1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyAvLyBTcGxpdCB0aGlzIG91dCBmb3IgY2xlYXJlciByZWFkYWJpbGl0eSBvZiB0aGUgZXJyb3IgbWVzc2FnZS5cbmZ1bmN0aW9uICQ4OWVlZGQ1NTZjNDM2ZjZhJHZhciRnZXRJbnZhbGlkT3JpZW50YXRpb25FcnJvcih2YWx1ZSwgY29tcG9uZW50TmFtZSkge1xuICAgIHJldHVybiBgSW52YWxpZCBwcm9wIFxcYG9yaWVudGF0aW9uXFxgIG9mIHZhbHVlIFxcYCR7dmFsdWV9XFxgIHN1cHBsaWVkIHRvIFxcYCR7Y29tcG9uZW50TmFtZX1cXGAsIGV4cGVjdGVkIG9uZSBvZjpcbiAgLSBob3Jpem9udGFsXG4gIC0gdmVydGljYWxcblxuRGVmYXVsdGluZyB0byBcXGAkeyQ4OWVlZGQ1NTZjNDM2ZjZhJHZhciRERUZBVUxUX09SSUVOVEFUSU9OfVxcYC5gO1xufVxuZnVuY3Rpb24gJDg5ZWVkZDU1NmM0MzZmNmEkdmFyJGlzVmFsaWRPcmllbnRhdGlvbihvcmllbnRhdGlvbikge1xuICAgIHJldHVybiAkODllZWRkNTU2YzQzNmY2YSR2YXIkT1JJRU5UQVRJT05TLmluY2x1ZGVzKG9yaWVudGF0aW9uKTtcbn1cbmNvbnN0ICQ4OWVlZGQ1NTZjNDM2ZjZhJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5ID0gJDg5ZWVkZDU1NmM0MzZmNmEkZXhwb3J0JDFmZjNjM2YwOGFlOTYzYzA7XG5cblxuXG5cbmV4cG9ydCB7JDg5ZWVkZDU1NmM0MzZmNmEkZXhwb3J0JDFmZjNjM2YwOGFlOTYzYzAgYXMgU2VwYXJhdG9yLCAkODllZWRkNTU2YzQzNmY2YSRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSBhcyBSb290fTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4Lm1qcy5tYXBcbiJdLCJuYW1lcyI6WyIkNVdYbTgkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMiLCJmb3J3YXJkUmVmIiwiJDVXWG04JGZvcndhcmRSZWYiLCJjcmVhdGVFbGVtZW50IiwiJDVXWG04JGNyZWF0ZUVsZW1lbnQiLCJQcmltaXRpdmUiLCIkNVdYbTgkUHJpbWl0aXZlIiwiJDg5ZWVkZDU1NmM0MzZmNmEkdmFyJE5BTUUiLCIkODllZWRkNTU2YzQzNmY2YSR2YXIkREVGQVVMVF9PUklFTlRBVElPTiIsIiQ4OWVlZGQ1NTZjNDM2ZjZhJHZhciRPUklFTlRBVElPTlMiLCIkODllZWRkNTU2YzQzNmY2YSRleHBvcnQkMWZmM2MzZjA4YWU5NjNjMCIsInByb3BzIiwiZm9yd2FyZGVkUmVmIiwiZGVjb3JhdGl2ZSIsIm9yaWVudGF0aW9uIiwib3JpZW50YXRpb25Qcm9wIiwiZG9tUHJvcHMiLCIkODllZWRkNTU2YzQzNmY2YSR2YXIkaXNWYWxpZE9yaWVudGF0aW9uIiwiYXJpYU9yaWVudGF0aW9uIiwidW5kZWZpbmVkIiwic2VtYW50aWNQcm9wcyIsInJvbGUiLCJkaXYiLCJyZWYiLCJPYmplY3QiLCJhc3NpZ24iLCJkaXNwbGF5TmFtZSIsInByb3BUeXBlcyIsInByb3BOYW1lIiwiY29tcG9uZW50TmFtZSIsInByb3BWYWx1ZSIsInN0clZhbCIsIlN0cmluZyIsIkVycm9yIiwiJDg5ZWVkZDU1NmM0MzZmNmEkdmFyJGdldEludmFsaWRPcmllbnRhdGlvbkVycm9yIiwidmFsdWUiLCJpbmNsdWRlcyIsIiQ4OWVlZGQ1NTZjNDM2ZjZhJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IiwiU2VwYXJhdG9yIiwiUm9vdCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-separator/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-slot/dist/index.mjs": /*!**********************************************************!*\ !*** ./node_modules/@radix-ui/react-slot/dist/index.mjs ***! \**********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Root: () => (/* binding */ $5e63c961fc1ce211$export$be92b6f5f03c0fe9),\n/* harmony export */ Slot: () => (/* binding */ $5e63c961fc1ce211$export$8c6ed5c666ac1360),\n/* harmony export */ Slottable: () => (/* binding */ $5e63c961fc1ce211$export$d9f1ccf0bdb05d45)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-compose-refs */ \"(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs\");\n\n\n\n/* -------------------------------------------------------------------------------------------------\n * Slot\n * -----------------------------------------------------------------------------------------------*/ const $5e63c961fc1ce211$export$8c6ed5c666ac1360 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { children: children, ...slotProps } = props;\n const childrenArray = react__WEBPACK_IMPORTED_MODULE_1__.Children.toArray(children);\n const slottable = childrenArray.find($5e63c961fc1ce211$var$isSlottable);\n if (slottable) {\n // the new element to render is the one passed as a child of `Slottable`\n const newElement = slottable.props.children;\n const newChildren = childrenArray.map((child)=>{\n if (child === slottable) {\n // because the new element will be the one rendered, we are only interested\n // in grabbing its children (`newElement.props.children`)\n if (react__WEBPACK_IMPORTED_MODULE_1__.Children.count(newElement) > 1) return react__WEBPACK_IMPORTED_MODULE_1__.Children.only(null);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.isValidElement)(newElement) ? newElement.props.children : null;\n } else return child;\n });\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($5e63c961fc1ce211$var$SlotClone, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, slotProps, {\n ref: forwardedRef\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.isValidElement)(newElement) ? /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.cloneElement)(newElement, undefined, newChildren) : null);\n }\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($5e63c961fc1ce211$var$SlotClone, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, slotProps, {\n ref: forwardedRef\n }), children);\n});\n$5e63c961fc1ce211$export$8c6ed5c666ac1360.displayName = \"Slot\";\n/* -------------------------------------------------------------------------------------------------\n * SlotClone\n * -----------------------------------------------------------------------------------------------*/ const $5e63c961fc1ce211$var$SlotClone = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { children: children, ...slotProps } = props;\n if (/*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.isValidElement)(children)) return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.cloneElement)(children, {\n ...$5e63c961fc1ce211$var$mergeProps(slotProps, children.props),\n ref: forwardedRef ? (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__.composeRefs)(forwardedRef, children.ref) : children.ref\n });\n return react__WEBPACK_IMPORTED_MODULE_1__.Children.count(children) > 1 ? react__WEBPACK_IMPORTED_MODULE_1__.Children.only(null) : null;\n});\n$5e63c961fc1ce211$var$SlotClone.displayName = \"SlotClone\";\n/* -------------------------------------------------------------------------------------------------\n * Slottable\n * -----------------------------------------------------------------------------------------------*/ const $5e63c961fc1ce211$export$d9f1ccf0bdb05d45 = ({ children: children })=>{\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, children);\n};\n/* ---------------------------------------------------------------------------------------------- */ function $5e63c961fc1ce211$var$isSlottable(child) {\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.isValidElement)(child) && child.type === $5e63c961fc1ce211$export$d9f1ccf0bdb05d45;\n}\nfunction $5e63c961fc1ce211$var$mergeProps(slotProps, childProps) {\n // all child props should override\n const overrideProps = {\n ...childProps\n };\n for(const propName in childProps){\n const slotPropValue = slotProps[propName];\n const childPropValue = childProps[propName];\n const isHandler = /^on[A-Z]/.test(propName);\n if (isHandler) {\n // if the handler exists on both, we compose them\n if (slotPropValue && childPropValue) overrideProps[propName] = (...args)=>{\n childPropValue(...args);\n slotPropValue(...args);\n };\n else if (slotPropValue) overrideProps[propName] = slotPropValue;\n } else if (propName === \"style\") overrideProps[propName] = {\n ...slotPropValue,\n ...childPropValue\n };\n else if (propName === \"className\") overrideProps[propName] = [\n slotPropValue,\n childPropValue\n ].filter(Boolean).join(\" \");\n }\n return {\n ...slotProps,\n ...overrideProps\n };\n}\nconst $5e63c961fc1ce211$export$be92b6f5f03c0fe9 = $5e63c961fc1ce211$export$8c6ed5c666ac1360;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXNsb3QvZGlzdC9pbmRleC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQXNGO0FBQytJO0FBQ3RKO0FBSy9FOztrR0FFa0csR0FBRyxNQUFNZSw0Q0FBNEMsV0FBVyxHQUFHYixpREFBaUJBLENBQUMsQ0FBQ2MsT0FBT0M7SUFDM0wsTUFBTSxFQUFFQyxVQUFVQSxRQUFRLEVBQUcsR0FBR0MsV0FBVyxHQUFHSDtJQUM5QyxNQUFNSSxnQkFBZ0JoQiwyQ0FBZUEsQ0FBQ2lCLE9BQU8sQ0FBQ0g7SUFDOUMsTUFBTUksWUFBWUYsY0FBY0csSUFBSSxDQUFDQztJQUNyQyxJQUFJRixXQUFXO1FBQ1gsd0VBQXdFO1FBQ3hFLE1BQU1HLGFBQWFILFVBQVVOLEtBQUssQ0FBQ0UsUUFBUTtRQUMzQyxNQUFNUSxjQUFjTixjQUFjTyxHQUFHLENBQUMsQ0FBQ0M7WUFDbkMsSUFBSUEsVUFBVU4sV0FBVztnQkFDckIsMkVBQTJFO2dCQUMzRSx5REFBeUQ7Z0JBQ3pELElBQUlsQiwyQ0FBZUEsQ0FBQ3lCLEtBQUssQ0FBQ0osY0FBYyxHQUFHLE9BQU9yQiwyQ0FBZUEsQ0FBQzBCLElBQUksQ0FBQztnQkFDdkUsT0FBTyxXQUFXLEdBQUd4QixxREFBcUJBLENBQUNtQixjQUFjQSxXQUFXVCxLQUFLLENBQUNFLFFBQVEsR0FBRztZQUN6RixPQUFPLE9BQU9VO1FBQ2xCO1FBQ0EsT0FBTyxXQUFXLEdBQUdwQixvREFBb0JBLENBQUN1QixpQ0FBaUMvQiw4RUFBb0NBLENBQUMsQ0FBQyxHQUFHbUIsV0FBVztZQUMzSGEsS0FBS2Y7UUFDVCxJQUFJLFdBQVcsR0FBR1gscURBQXFCQSxDQUFDbUIsY0FBYyxXQUFXLEdBQUdmLG1EQUFtQkEsQ0FBQ2UsWUFBWVEsV0FBV1AsZUFBZTtJQUNsSTtJQUNBLE9BQU8sV0FBVyxHQUFHbEIsb0RBQW9CQSxDQUFDdUIsaUNBQWlDL0IsOEVBQW9DQSxDQUFDLENBQUMsR0FBR21CLFdBQVc7UUFDM0hhLEtBQUtmO0lBQ1QsSUFBSUM7QUFDUjtBQUNBSCwwQ0FBMENtQixXQUFXLEdBQUc7QUFDeEQ7O2tHQUVrRyxHQUFHLE1BQU1ILGtDQUFrQyxXQUFXLEdBQUc3QixpREFBaUJBLENBQUMsQ0FBQ2MsT0FBT0M7SUFDakwsTUFBTSxFQUFFQyxVQUFVQSxRQUFRLEVBQUcsR0FBR0MsV0FBVyxHQUFHSDtJQUM5QyxJQUFJLFdBQVcsR0FBR1YscURBQXFCQSxDQUFDWSxXQUFXLE9BQU8sV0FBVyxHQUFHUixtREFBbUJBLENBQUNRLFVBQVU7UUFDbEcsR0FBR2lCLGlDQUFpQ2hCLFdBQVdELFNBQVNGLEtBQUssQ0FBQztRQUM5RGdCLEtBQUtmLGVBQWVILHlFQUFrQkEsQ0FBQ0csY0FBY0MsU0FBU2MsR0FBRyxJQUFJZCxTQUFTYyxHQUFHO0lBQ3JGO0lBQ0EsT0FBTzVCLDJDQUFlQSxDQUFDeUIsS0FBSyxDQUFDWCxZQUFZLElBQUlkLDJDQUFlQSxDQUFDMEIsSUFBSSxDQUFDLFFBQVE7QUFDOUU7QUFDQUMsZ0NBQWdDRyxXQUFXLEdBQUc7QUFDOUM7O2tHQUVrRyxHQUFHLE1BQU1FLDRDQUE0QyxDQUFDLEVBQUVsQixVQUFVQSxRQUFRLEVBQUc7SUFDM0ssT0FBTyxXQUFXLEdBQUdWLG9EQUFvQkEsQ0FBQ0ksMkNBQWVBLEVBQUUsTUFBTU07QUFDckU7QUFDQSxrR0FBa0csR0FBRyxTQUFTTSxrQ0FBa0NJLEtBQUs7SUFDakosT0FBTyxXQUFXLEdBQUd0QixxREFBcUJBLENBQUNzQixVQUFVQSxNQUFNUyxJQUFJLEtBQUtEO0FBQ3hFO0FBQ0EsU0FBU0QsaUNBQWlDaEIsU0FBUyxFQUFFbUIsVUFBVTtJQUMzRCxrQ0FBa0M7SUFDbEMsTUFBTUMsZ0JBQWdCO1FBQ2xCLEdBQUdELFVBQVU7SUFDakI7SUFDQSxJQUFJLE1BQU1FLFlBQVlGLFdBQVc7UUFDN0IsTUFBTUcsZ0JBQWdCdEIsU0FBUyxDQUFDcUIsU0FBUztRQUN6QyxNQUFNRSxpQkFBaUJKLFVBQVUsQ0FBQ0UsU0FBUztRQUMzQyxNQUFNRyxZQUFZLFdBQVdDLElBQUksQ0FBQ0o7UUFDbEMsSUFBSUcsV0FBVztZQUNYLGlEQUFpRDtZQUNqRCxJQUFJRixpQkFBaUJDLGdCQUFnQkgsYUFBYSxDQUFDQyxTQUFTLEdBQUcsQ0FBQyxHQUFHSztnQkFDL0RILGtCQUFrQkc7Z0JBQ2xCSixpQkFBaUJJO1lBQ3JCO2lCQUNLLElBQUlKLGVBQWVGLGFBQWEsQ0FBQ0MsU0FBUyxHQUFHQztRQUN0RCxPQUFPLElBQUlELGFBQWEsU0FBU0QsYUFBYSxDQUFDQyxTQUFTLEdBQUc7WUFDdkQsR0FBR0MsYUFBYTtZQUNoQixHQUFHQyxjQUFjO1FBQ3JCO2FBQ0ssSUFBSUYsYUFBYSxhQUFhRCxhQUFhLENBQUNDLFNBQVMsR0FBRztZQUN6REM7WUFDQUM7U0FDSCxDQUFDSSxNQUFNLENBQUNDLFNBQVNDLElBQUksQ0FBQztJQUMzQjtJQUNBLE9BQU87UUFDSCxHQUFHN0IsU0FBUztRQUNaLEdBQUdvQixhQUFhO0lBQ3BCO0FBQ0o7QUFDQSxNQUFNVSw0Q0FBNENsQztBQUtvSCxDQUN0SyxrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9lbWJlZGNoYWluLWFkbWluLy4vbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC1zbG90L2Rpc3QvaW5kZXgubWpzPzYzYjYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICQ5SXJqWCRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZXh0ZW5kc1wiO1xuaW1wb3J0IHtmb3J3YXJkUmVmIGFzICQ5SXJqWCRmb3J3YXJkUmVmLCBDaGlsZHJlbiBhcyAkOUlyalgkQ2hpbGRyZW4sIGlzVmFsaWRFbGVtZW50IGFzICQ5SXJqWCRpc1ZhbGlkRWxlbWVudCwgY3JlYXRlRWxlbWVudCBhcyAkOUlyalgkY3JlYXRlRWxlbWVudCwgY2xvbmVFbGVtZW50IGFzICQ5SXJqWCRjbG9uZUVsZW1lbnQsIEZyYWdtZW50IGFzICQ5SXJqWCRGcmFnbWVudH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQge2NvbXBvc2VSZWZzIGFzICQ5SXJqWCRjb21wb3NlUmVmc30gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1jb21wb3NlLXJlZnNcIjtcblxuXG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogU2xvdFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkNWU2M2M5NjFmYzFjZTIxMSRleHBvcnQkOGM2ZWQ1YzY2NmFjMTM2MCA9IC8qI19fUFVSRV9fKi8gJDlJcmpYJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBjaGlsZHJlbjogY2hpbGRyZW4gLCAuLi5zbG90UHJvcHMgfSA9IHByb3BzO1xuICAgIGNvbnN0IGNoaWxkcmVuQXJyYXkgPSAkOUlyalgkQ2hpbGRyZW4udG9BcnJheShjaGlsZHJlbik7XG4gICAgY29uc3Qgc2xvdHRhYmxlID0gY2hpbGRyZW5BcnJheS5maW5kKCQ1ZTYzYzk2MWZjMWNlMjExJHZhciRpc1Nsb3R0YWJsZSk7XG4gICAgaWYgKHNsb3R0YWJsZSkge1xuICAgICAgICAvLyB0aGUgbmV3IGVsZW1lbnQgdG8gcmVuZGVyIGlzIHRoZSBvbmUgcGFzc2VkIGFzIGEgY2hpbGQgb2YgYFNsb3R0YWJsZWBcbiAgICAgICAgY29uc3QgbmV3RWxlbWVudCA9IHNsb3R0YWJsZS5wcm9wcy5jaGlsZHJlbjtcbiAgICAgICAgY29uc3QgbmV3Q2hpbGRyZW4gPSBjaGlsZHJlbkFycmF5Lm1hcCgoY2hpbGQpPT57XG4gICAgICAgICAgICBpZiAoY2hpbGQgPT09IHNsb3R0YWJsZSkge1xuICAgICAgICAgICAgICAgIC8vIGJlY2F1c2UgdGhlIG5ldyBlbGVtZW50IHdpbGwgYmUgdGhlIG9uZSByZW5kZXJlZCwgd2UgYXJlIG9ubHkgaW50ZXJlc3RlZFxuICAgICAgICAgICAgICAgIC8vIGluIGdyYWJiaW5nIGl0cyBjaGlsZHJlbiAoYG5ld0VsZW1lbnQucHJvcHMuY2hpbGRyZW5gKVxuICAgICAgICAgICAgICAgIGlmICgkOUlyalgkQ2hpbGRyZW4uY291bnQobmV3RWxlbWVudCkgPiAxKSByZXR1cm4gJDlJcmpYJENoaWxkcmVuLm9ubHkobnVsbCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDlJcmpYJGlzVmFsaWRFbGVtZW50KG5ld0VsZW1lbnQpID8gbmV3RWxlbWVudC5wcm9wcy5jaGlsZHJlbiA6IG51bGw7XG4gICAgICAgICAgICB9IGVsc2UgcmV0dXJuIGNoaWxkO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJDlJcmpYJGNyZWF0ZUVsZW1lbnQoJDVlNjNjOTYxZmMxY2UyMTEkdmFyJFNsb3RDbG9uZSwgJDlJcmpYJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBzbG90UHJvcHMsIHtcbiAgICAgICAgICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gICAgICAgIH0pLCAvKiNfX1BVUkVfXyovICQ5SXJqWCRpc1ZhbGlkRWxlbWVudChuZXdFbGVtZW50KSA/IC8qI19fUFVSRV9fKi8gJDlJcmpYJGNsb25lRWxlbWVudChuZXdFbGVtZW50LCB1bmRlZmluZWQsIG5ld0NoaWxkcmVuKSA6IG51bGwpO1xuICAgIH1cbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAkOUlyalgkY3JlYXRlRWxlbWVudCgkNWU2M2M5NjFmYzFjZTIxMSR2YXIkU2xvdENsb25lLCAkOUlyalgkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIHNsb3RQcm9wcywge1xuICAgICAgICByZWY6IGZvcndhcmRlZFJlZlxuICAgIH0pLCBjaGlsZHJlbik7XG59KTtcbiQ1ZTYzYzk2MWZjMWNlMjExJGV4cG9ydCQ4YzZlZDVjNjY2YWMxMzYwLmRpc3BsYXlOYW1lID0gJ1Nsb3QnO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogU2xvdENsb25lXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICQ1ZTYzYzk2MWZjMWNlMjExJHZhciRTbG90Q2xvbmUgPSAvKiNfX1BVUkVfXyovICQ5SXJqWCRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgY2hpbGRyZW46IGNoaWxkcmVuICwgLi4uc2xvdFByb3BzIH0gPSBwcm9wcztcbiAgICBpZiAoLyojX19QVVJFX18qLyAkOUlyalgkaXNWYWxpZEVsZW1lbnQoY2hpbGRyZW4pKSByZXR1cm4gLyojX19QVVJFX18qLyAkOUlyalgkY2xvbmVFbGVtZW50KGNoaWxkcmVuLCB7XG4gICAgICAgIC4uLiQ1ZTYzYzk2MWZjMWNlMjExJHZhciRtZXJnZVByb3BzKHNsb3RQcm9wcywgY2hpbGRyZW4ucHJvcHMpLFxuICAgICAgICByZWY6IGZvcndhcmRlZFJlZiA/ICQ5SXJqWCRjb21wb3NlUmVmcyhmb3J3YXJkZWRSZWYsIGNoaWxkcmVuLnJlZikgOiBjaGlsZHJlbi5yZWZcbiAgICB9KTtcbiAgICByZXR1cm4gJDlJcmpYJENoaWxkcmVuLmNvdW50KGNoaWxkcmVuKSA+IDEgPyAkOUlyalgkQ2hpbGRyZW4ub25seShudWxsKSA6IG51bGw7XG59KTtcbiQ1ZTYzYzk2MWZjMWNlMjExJHZhciRTbG90Q2xvbmUuZGlzcGxheU5hbWUgPSAnU2xvdENsb25lJztcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFNsb3R0YWJsZVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkNWU2M2M5NjFmYzFjZTIxMSRleHBvcnQkZDlmMWNjZjBiZGIwNWQ0NSA9ICh7IGNoaWxkcmVuOiBjaGlsZHJlbiAgfSk9PntcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAkOUlyalgkY3JlYXRlRWxlbWVudCgkOUlyalgkRnJhZ21lbnQsIG51bGwsIGNoaWxkcmVuKTtcbn07XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovIGZ1bmN0aW9uICQ1ZTYzYzk2MWZjMWNlMjExJHZhciRpc1Nsb3R0YWJsZShjaGlsZCkge1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICQ5SXJqWCRpc1ZhbGlkRWxlbWVudChjaGlsZCkgJiYgY2hpbGQudHlwZSA9PT0gJDVlNjNjOTYxZmMxY2UyMTEkZXhwb3J0JGQ5ZjFjY2YwYmRiMDVkNDU7XG59XG5mdW5jdGlvbiAkNWU2M2M5NjFmYzFjZTIxMSR2YXIkbWVyZ2VQcm9wcyhzbG90UHJvcHMsIGNoaWxkUHJvcHMpIHtcbiAgICAvLyBhbGwgY2hpbGQgcHJvcHMgc2hvdWxkIG92ZXJyaWRlXG4gICAgY29uc3Qgb3ZlcnJpZGVQcm9wcyA9IHtcbiAgICAgICAgLi4uY2hpbGRQcm9wc1xuICAgIH07XG4gICAgZm9yKGNvbnN0IHByb3BOYW1lIGluIGNoaWxkUHJvcHMpe1xuICAgICAgICBjb25zdCBzbG90UHJvcFZhbHVlID0gc2xvdFByb3BzW3Byb3BOYW1lXTtcbiAgICAgICAgY29uc3QgY2hpbGRQcm9wVmFsdWUgPSBjaGlsZFByb3BzW3Byb3BOYW1lXTtcbiAgICAgICAgY29uc3QgaXNIYW5kbGVyID0gL15vbltBLVpdLy50ZXN0KHByb3BOYW1lKTtcbiAgICAgICAgaWYgKGlzSGFuZGxlcikge1xuICAgICAgICAgICAgLy8gaWYgdGhlIGhhbmRsZXIgZXhpc3RzIG9uIGJvdGgsIHdlIGNvbXBvc2UgdGhlbVxuICAgICAgICAgICAgaWYgKHNsb3RQcm9wVmFsdWUgJiYgY2hpbGRQcm9wVmFsdWUpIG92ZXJyaWRlUHJvcHNbcHJvcE5hbWVdID0gKC4uLmFyZ3MpPT57XG4gICAgICAgICAgICAgICAgY2hpbGRQcm9wVmFsdWUoLi4uYXJncyk7XG4gICAgICAgICAgICAgICAgc2xvdFByb3BWYWx1ZSguLi5hcmdzKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBlbHNlIGlmIChzbG90UHJvcFZhbHVlKSBvdmVycmlkZVByb3BzW3Byb3BOYW1lXSA9IHNsb3RQcm9wVmFsdWU7XG4gICAgICAgIH0gZWxzZSBpZiAocHJvcE5hbWUgPT09ICdzdHlsZScpIG92ZXJyaWRlUHJvcHNbcHJvcE5hbWVdID0ge1xuICAgICAgICAgICAgLi4uc2xvdFByb3BWYWx1ZSxcbiAgICAgICAgICAgIC4uLmNoaWxkUHJvcFZhbHVlXG4gICAgICAgIH07XG4gICAgICAgIGVsc2UgaWYgKHByb3BOYW1lID09PSAnY2xhc3NOYW1lJykgb3ZlcnJpZGVQcm9wc1twcm9wTmFtZV0gPSBbXG4gICAgICAgICAgICBzbG90UHJvcFZhbHVlLFxuICAgICAgICAgICAgY2hpbGRQcm9wVmFsdWVcbiAgICAgICAgXS5maWx0ZXIoQm9vbGVhbikuam9pbignICcpO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgICAuLi5zbG90UHJvcHMsXG4gICAgICAgIC4uLm92ZXJyaWRlUHJvcHNcbiAgICB9O1xufVxuY29uc3QgJDVlNjNjOTYxZmMxY2UyMTEkZXhwb3J0JGJlOTJiNmY1ZjAzYzBmZTkgPSAkNWU2M2M5NjFmYzFjZTIxMSRleHBvcnQkOGM2ZWQ1YzY2NmFjMTM2MDtcblxuXG5cblxuZXhwb3J0IHskNWU2M2M5NjFmYzFjZTIxMSRleHBvcnQkOGM2ZWQ1YzY2NmFjMTM2MCBhcyBTbG90LCAkNWU2M2M5NjFmYzFjZTIxMSRleHBvcnQkZDlmMWNjZjBiZGIwNWQ0NSBhcyBTbG90dGFibGUsICQ1ZTYzYzk2MWZjMWNlMjExJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IGFzIFJvb3R9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXgubWpzLm1hcFxuIl0sIm5hbWVzIjpbIiQ5SXJqWCRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyIsImZvcndhcmRSZWYiLCIkOUlyalgkZm9yd2FyZFJlZiIsIkNoaWxkcmVuIiwiJDlJcmpYJENoaWxkcmVuIiwiaXNWYWxpZEVsZW1lbnQiLCIkOUlyalgkaXNWYWxpZEVsZW1lbnQiLCJjcmVhdGVFbGVtZW50IiwiJDlJcmpYJGNyZWF0ZUVsZW1lbnQiLCJjbG9uZUVsZW1lbnQiLCIkOUlyalgkY2xvbmVFbGVtZW50IiwiRnJhZ21lbnQiLCIkOUlyalgkRnJhZ21lbnQiLCJjb21wb3NlUmVmcyIsIiQ5SXJqWCRjb21wb3NlUmVmcyIsIiQ1ZTYzYzk2MWZjMWNlMjExJGV4cG9ydCQ4YzZlZDVjNjY2YWMxMzYwIiwicHJvcHMiLCJmb3J3YXJkZWRSZWYiLCJjaGlsZHJlbiIsInNsb3RQcm9wcyIsImNoaWxkcmVuQXJyYXkiLCJ0b0FycmF5Iiwic2xvdHRhYmxlIiwiZmluZCIsIiQ1ZTYzYzk2MWZjMWNlMjExJHZhciRpc1Nsb3R0YWJsZSIsIm5ld0VsZW1lbnQiLCJuZXdDaGlsZHJlbiIsIm1hcCIsImNoaWxkIiwiY291bnQiLCJvbmx5IiwiJDVlNjNjOTYxZmMxY2UyMTEkdmFyJFNsb3RDbG9uZSIsInJlZiIsInVuZGVmaW5lZCIsImRpc3BsYXlOYW1lIiwiJDVlNjNjOTYxZmMxY2UyMTEkdmFyJG1lcmdlUHJvcHMiLCIkNWU2M2M5NjFmYzFjZTIxMSRleHBvcnQkZDlmMWNjZjBiZGIwNWQ0NSIsInR5cGUiLCJjaGlsZFByb3BzIiwib3ZlcnJpZGVQcm9wcyIsInByb3BOYW1lIiwic2xvdFByb3BWYWx1ZSIsImNoaWxkUHJvcFZhbHVlIiwiaXNIYW5kbGVyIiwidGVzdCIsImFyZ3MiLCJmaWx0ZXIiLCJCb29sZWFuIiwiam9pbiIsIiQ1ZTYzYzk2MWZjMWNlMjExJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IiwiU2xvdCIsIlNsb3R0YWJsZSIsIlJvb3QiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-slot/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-toast/dist/index.mjs": /*!***********************************************************!*\ !*** ./node_modules/@radix-ui/react-toast/dist/index.mjs ***! \***********************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Action: () => (/* binding */ $054eb8030ebde76e$export$e19cd5f9376f8cee),\n/* harmony export */ Close: () => (/* binding */ $054eb8030ebde76e$export$f39c2d165cd861fe),\n/* harmony export */ Description: () => (/* binding */ $054eb8030ebde76e$export$393edc798c47379d),\n/* harmony export */ Provider: () => (/* binding */ $054eb8030ebde76e$export$2881499e37b75b9a),\n/* harmony export */ Root: () => (/* binding */ $054eb8030ebde76e$export$be92b6f5f03c0fe9),\n/* harmony export */ Title: () => (/* binding */ $054eb8030ebde76e$export$f99233281efd08a0),\n/* harmony export */ Toast: () => (/* binding */ $054eb8030ebde76e$export$8d8dc7d5f743331b),\n/* harmony export */ ToastAction: () => (/* binding */ $054eb8030ebde76e$export$3019feecfda683d2),\n/* harmony export */ ToastClose: () => (/* binding */ $054eb8030ebde76e$export$811e70f61c205839),\n/* harmony export */ ToastDescription: () => (/* binding */ $054eb8030ebde76e$export$ecddd96c53621d9a),\n/* harmony export */ ToastProvider: () => (/* binding */ $054eb8030ebde76e$export$f5d03d415824e0e),\n/* harmony export */ ToastTitle: () => (/* binding */ $054eb8030ebde76e$export$16d42d7c29b95a4),\n/* harmony export */ ToastViewport: () => (/* binding */ $054eb8030ebde76e$export$6192c2425ecfd989),\n/* harmony export */ Viewport: () => (/* binding */ $054eb8030ebde76e$export$d5c6c08dc2d3ca7),\n/* harmony export */ createToastScope: () => (/* binding */ $054eb8030ebde76e$export$8a359da18fbc9073)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-dom */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-dom.js\");\n/* harmony import */ var _radix_ui_primitive__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @radix-ui/primitive */ \"(ssr)/./node_modules/@radix-ui/primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @radix-ui/react-compose-refs */ \"(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_collection__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-collection */ \"(ssr)/./node_modules/@radix-ui/react-collection/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_context__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @radix-ui/react-context */ \"(ssr)/./node_modules/@radix-ui/react-context/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_dismissable_layer__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @radix-ui/react-dismissable-layer */ \"(ssr)/./node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_portal__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @radix-ui/react-portal */ \"(ssr)/./node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-portal/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_presence__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @radix-ui/react-presence */ \"(ssr)/./node_modules/@radix-ui/react-presence/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @radix-ui/react-use-callback-ref */ \"(ssr)/./node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_controllable_state__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @radix-ui/react-use-controllable-state */ \"(ssr)/./node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @radix-ui/react-use-layout-effect */ \"(ssr)/./node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_visually_hidden__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @radix-ui/react-visually-hidden */ \"(ssr)/./node_modules/@radix-ui/react-visually-hidden/dist/index.mjs\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/* -------------------------------------------------------------------------------------------------\n * ToastProvider\n * -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$PROVIDER_NAME = \"ToastProvider\";\nconst [$054eb8030ebde76e$var$Collection, $054eb8030ebde76e$var$useCollection, $054eb8030ebde76e$var$createCollectionScope] = (0,_radix_ui_react_collection__WEBPACK_IMPORTED_MODULE_3__.createCollection)(\"Toast\");\nconst [$054eb8030ebde76e$var$createToastContext, $054eb8030ebde76e$export$8a359da18fbc9073] = (0,_radix_ui_react_context__WEBPACK_IMPORTED_MODULE_4__.createContextScope)(\"Toast\", [\n $054eb8030ebde76e$var$createCollectionScope\n]);\nconst [$054eb8030ebde76e$var$ToastProviderProvider, $054eb8030ebde76e$var$useToastProviderContext] = $054eb8030ebde76e$var$createToastContext($054eb8030ebde76e$var$PROVIDER_NAME);\nconst $054eb8030ebde76e$export$f5d03d415824e0e = (props)=>{\n const { __scopeToast: __scopeToast, label: label = \"Notification\", duration: duration = 5000, swipeDirection: swipeDirection = \"right\", swipeThreshold: swipeThreshold = 50, children: children } = props;\n const [viewport, setViewport] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [toastCount, setToastCount] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(0);\n const isFocusedToastEscapeKeyDownRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(false);\n const isClosePausedRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(false);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($054eb8030ebde76e$var$Collection.Provider, {\n scope: __scopeToast\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($054eb8030ebde76e$var$ToastProviderProvider, {\n scope: __scopeToast,\n label: label,\n duration: duration,\n swipeDirection: swipeDirection,\n swipeThreshold: swipeThreshold,\n toastCount: toastCount,\n viewport: viewport,\n onViewportChange: setViewport,\n onToastAdd: (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(()=>setToastCount((prevCount)=>prevCount + 1), []),\n onToastRemove: (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(()=>setToastCount((prevCount)=>prevCount - 1), []),\n isFocusedToastEscapeKeyDownRef: isFocusedToastEscapeKeyDownRef,\n isClosePausedRef: isClosePausedRef\n }, children));\n};\n$054eb8030ebde76e$export$f5d03d415824e0e.propTypes = {\n label (props) {\n if (props.label && typeof props.label === \"string\" && !props.label.trim()) {\n const error = `Invalid prop \\`label\\` supplied to \\`${$054eb8030ebde76e$var$PROVIDER_NAME}\\`. Expected non-empty \\`string\\`.`;\n return new Error(error);\n }\n return null;\n }\n};\n/*#__PURE__*/ Object.assign($054eb8030ebde76e$export$f5d03d415824e0e, {\n displayName: $054eb8030ebde76e$var$PROVIDER_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * ToastViewport\n * -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$VIEWPORT_NAME = \"ToastViewport\";\nconst $054eb8030ebde76e$var$VIEWPORT_DEFAULT_HOTKEY = [\n \"F8\"\n];\nconst $054eb8030ebde76e$var$VIEWPORT_PAUSE = \"toast.viewportPause\";\nconst $054eb8030ebde76e$var$VIEWPORT_RESUME = \"toast.viewportResume\";\nconst $054eb8030ebde76e$export$6192c2425ecfd989 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeToast: __scopeToast, hotkey: hotkey = $054eb8030ebde76e$var$VIEWPORT_DEFAULT_HOTKEY, label: label = \"Notifications ({hotkey})\", ...viewportProps } = props;\n const context = $054eb8030ebde76e$var$useToastProviderContext($054eb8030ebde76e$var$VIEWPORT_NAME, __scopeToast);\n const getItems = $054eb8030ebde76e$var$useCollection(__scopeToast);\n const wrapperRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const headFocusProxyRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const tailFocusProxyRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const ref = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_5__.useComposedRefs)(forwardedRef, ref, context.onViewportChange);\n const hotkeyLabel = hotkey.join(\"+\").replace(/Key/g, \"\").replace(/Digit/g, \"\");\n const hasToasts = context.toastCount > 0;\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const handleKeyDown = (event)=>{\n var _ref$current;\n // we use `event.code` as it is consistent regardless of meta keys that were pressed.\n // for example, `event.key` for `Control+Alt+t` is `†` and `t !== †`\n const isHotkeyPressed = hotkey.every((key)=>event[key] || event.code === key);\n if (isHotkeyPressed) (_ref$current = ref.current) === null || _ref$current === void 0 || _ref$current.focus();\n };\n document.addEventListener(\"keydown\", handleKeyDown);\n return ()=>document.removeEventListener(\"keydown\", handleKeyDown);\n }, [\n hotkey\n ]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const wrapper = wrapperRef.current;\n const viewport = ref.current;\n if (hasToasts && wrapper && viewport) {\n const handlePause = ()=>{\n if (!context.isClosePausedRef.current) {\n const pauseEvent = new CustomEvent($054eb8030ebde76e$var$VIEWPORT_PAUSE);\n viewport.dispatchEvent(pauseEvent);\n context.isClosePausedRef.current = true;\n }\n };\n const handleResume = ()=>{\n if (context.isClosePausedRef.current) {\n const resumeEvent = new CustomEvent($054eb8030ebde76e$var$VIEWPORT_RESUME);\n viewport.dispatchEvent(resumeEvent);\n context.isClosePausedRef.current = false;\n }\n };\n const handleFocusOutResume = (event)=>{\n const isFocusMovingOutside = !wrapper.contains(event.relatedTarget);\n if (isFocusMovingOutside) handleResume();\n };\n const handlePointerLeaveResume = ()=>{\n const isFocusInside = wrapper.contains(document.activeElement);\n if (!isFocusInside) handleResume();\n }; // Toasts are not in the viewport React tree so we need to bind DOM events\n wrapper.addEventListener(\"focusin\", handlePause);\n wrapper.addEventListener(\"focusout\", handleFocusOutResume);\n wrapper.addEventListener(\"pointermove\", handlePause);\n wrapper.addEventListener(\"pointerleave\", handlePointerLeaveResume);\n window.addEventListener(\"blur\", handlePause);\n window.addEventListener(\"focus\", handleResume);\n return ()=>{\n wrapper.removeEventListener(\"focusin\", handlePause);\n wrapper.removeEventListener(\"focusout\", handleFocusOutResume);\n wrapper.removeEventListener(\"pointermove\", handlePause);\n wrapper.removeEventListener(\"pointerleave\", handlePointerLeaveResume);\n window.removeEventListener(\"blur\", handlePause);\n window.removeEventListener(\"focus\", handleResume);\n };\n }\n }, [\n hasToasts,\n context.isClosePausedRef\n ]);\n const getSortedTabbableCandidates = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(({ tabbingDirection: tabbingDirection })=>{\n const toastItems = getItems();\n const tabbableCandidates = toastItems.map((toastItem)=>{\n const toastNode = toastItem.ref.current;\n const toastTabbableCandidates = [\n toastNode,\n ...$054eb8030ebde76e$var$getTabbableCandidates(toastNode)\n ];\n return tabbingDirection === \"forwards\" ? toastTabbableCandidates : toastTabbableCandidates.reverse();\n });\n return (tabbingDirection === \"forwards\" ? tabbableCandidates.reverse() : tabbableCandidates).flat();\n }, [\n getItems\n ]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const viewport = ref.current; // We programmatically manage tabbing as we are unable to influence\n // the source order with portals, this allows us to reverse the\n // tab order so that it runs from most recent toast to least\n if (viewport) {\n const handleKeyDown = (event)=>{\n const isMetaKey = event.altKey || event.ctrlKey || event.metaKey;\n const isTabKey = event.key === \"Tab\" && !isMetaKey;\n if (isTabKey) {\n const focusedElement = document.activeElement;\n const isTabbingBackwards = event.shiftKey;\n const targetIsViewport = event.target === viewport; // If we're back tabbing after jumping to the viewport then we simply\n // proxy focus out to the preceding document\n if (targetIsViewport && isTabbingBackwards) {\n var _headFocusProxyRef$cu;\n (_headFocusProxyRef$cu = headFocusProxyRef.current) === null || _headFocusProxyRef$cu === void 0 || _headFocusProxyRef$cu.focus();\n return;\n }\n const tabbingDirection = isTabbingBackwards ? \"backwards\" : \"forwards\";\n const sortedCandidates = getSortedTabbableCandidates({\n tabbingDirection: tabbingDirection\n });\n const index = sortedCandidates.findIndex((candidate)=>candidate === focusedElement);\n if ($054eb8030ebde76e$var$focusFirst(sortedCandidates.slice(index + 1))) event.preventDefault();\n else {\n var _headFocusProxyRef$cu2, _tailFocusProxyRef$cu;\n // If we can't focus that means we're at the edges so we\n // proxy to the corresponding exit point and let the browser handle\n // tab/shift+tab keypress and implicitly pass focus to the next valid element in the document\n isTabbingBackwards ? (_headFocusProxyRef$cu2 = headFocusProxyRef.current) === null || _headFocusProxyRef$cu2 === void 0 || _headFocusProxyRef$cu2.focus() : (_tailFocusProxyRef$cu = tailFocusProxyRef.current) === null || _tailFocusProxyRef$cu === void 0 || _tailFocusProxyRef$cu.focus();\n }\n }\n }; // Toasts are not in the viewport React tree so we need to bind DOM events\n viewport.addEventListener(\"keydown\", handleKeyDown);\n return ()=>viewport.removeEventListener(\"keydown\", handleKeyDown);\n }\n }, [\n getItems,\n getSortedTabbableCandidates\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_dismissable_layer__WEBPACK_IMPORTED_MODULE_6__.Branch, {\n ref: wrapperRef,\n role: \"region\",\n \"aria-label\": label.replace(\"{hotkey}\", hotkeyLabel) // Ensure virtual cursor from landmarks menus triggers focus/blur for pause/resume\n ,\n tabIndex: -1 // incase list has size when empty (e.g. padding), we remove pointer events so\n ,\n style: {\n pointerEvents: hasToasts ? undefined : \"none\"\n }\n }, hasToasts && /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($054eb8030ebde76e$var$FocusProxy, {\n ref: headFocusProxyRef,\n onFocusFromOutsideViewport: ()=>{\n const tabbableCandidates = getSortedTabbableCandidates({\n tabbingDirection: \"forwards\"\n });\n $054eb8030ebde76e$var$focusFirst(tabbableCandidates);\n }\n }), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($054eb8030ebde76e$var$Collection.Slot, {\n scope: __scopeToast\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_7__.Primitive.ol, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n tabIndex: -1\n }, viewportProps, {\n ref: composedRefs\n }))), hasToasts && /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($054eb8030ebde76e$var$FocusProxy, {\n ref: tailFocusProxyRef,\n onFocusFromOutsideViewport: ()=>{\n const tabbableCandidates = getSortedTabbableCandidates({\n tabbingDirection: \"backwards\"\n });\n $054eb8030ebde76e$var$focusFirst(tabbableCandidates);\n }\n }));\n});\n/*#__PURE__*/ Object.assign($054eb8030ebde76e$export$6192c2425ecfd989, {\n displayName: $054eb8030ebde76e$var$VIEWPORT_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$FOCUS_PROXY_NAME = \"ToastFocusProxy\";\nconst $054eb8030ebde76e$var$FocusProxy = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeToast: __scopeToast, onFocusFromOutsideViewport: onFocusFromOutsideViewport, ...proxyProps } = props;\n const context = $054eb8030ebde76e$var$useToastProviderContext($054eb8030ebde76e$var$FOCUS_PROXY_NAME, __scopeToast);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_visually_hidden__WEBPACK_IMPORTED_MODULE_8__.VisuallyHidden, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"aria-hidden\": true,\n tabIndex: 0\n }, proxyProps, {\n ref: forwardedRef // Avoid page scrolling when focus is on the focus proxy\n ,\n style: {\n position: \"fixed\"\n },\n onFocus: (event)=>{\n var _context$viewport;\n const prevFocusedElement = event.relatedTarget;\n const isFocusFromOutsideViewport = !((_context$viewport = context.viewport) !== null && _context$viewport !== void 0 && _context$viewport.contains(prevFocusedElement));\n if (isFocusFromOutsideViewport) onFocusFromOutsideViewport();\n }\n }));\n});\n/*#__PURE__*/ Object.assign($054eb8030ebde76e$var$FocusProxy, {\n displayName: $054eb8030ebde76e$var$FOCUS_PROXY_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * Toast\n * -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$TOAST_NAME = \"Toast\";\nconst $054eb8030ebde76e$var$TOAST_SWIPE_START = \"toast.swipeStart\";\nconst $054eb8030ebde76e$var$TOAST_SWIPE_MOVE = \"toast.swipeMove\";\nconst $054eb8030ebde76e$var$TOAST_SWIPE_CANCEL = \"toast.swipeCancel\";\nconst $054eb8030ebde76e$var$TOAST_SWIPE_END = \"toast.swipeEnd\";\nconst $054eb8030ebde76e$export$8d8dc7d5f743331b = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { forceMount: forceMount, open: openProp, defaultOpen: defaultOpen, onOpenChange: onOpenChange, ...toastProps } = props;\n const [open = true, setOpen] = (0,_radix_ui_react_use_controllable_state__WEBPACK_IMPORTED_MODULE_9__.useControllableState)({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange\n });\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_presence__WEBPACK_IMPORTED_MODULE_10__.Presence, {\n present: forceMount || open\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($054eb8030ebde76e$var$ToastImpl, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n open: open\n }, toastProps, {\n ref: forwardedRef,\n onClose: ()=>setOpen(false),\n onPause: (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_11__.useCallbackRef)(props.onPause),\n onResume: (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_11__.useCallbackRef)(props.onResume),\n onSwipeStart: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_12__.composeEventHandlers)(props.onSwipeStart, (event)=>{\n event.currentTarget.setAttribute(\"data-swipe\", \"start\");\n }),\n onSwipeMove: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_12__.composeEventHandlers)(props.onSwipeMove, (event)=>{\n const { x: x, y: y } = event.detail.delta;\n event.currentTarget.setAttribute(\"data-swipe\", \"move\");\n event.currentTarget.style.setProperty(\"--radix-toast-swipe-move-x\", `${x}px`);\n event.currentTarget.style.setProperty(\"--radix-toast-swipe-move-y\", `${y}px`);\n }),\n onSwipeCancel: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_12__.composeEventHandlers)(props.onSwipeCancel, (event)=>{\n event.currentTarget.setAttribute(\"data-swipe\", \"cancel\");\n event.currentTarget.style.removeProperty(\"--radix-toast-swipe-move-x\");\n event.currentTarget.style.removeProperty(\"--radix-toast-swipe-move-y\");\n event.currentTarget.style.removeProperty(\"--radix-toast-swipe-end-x\");\n event.currentTarget.style.removeProperty(\"--radix-toast-swipe-end-y\");\n }),\n onSwipeEnd: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_12__.composeEventHandlers)(props.onSwipeEnd, (event)=>{\n const { x: x, y: y } = event.detail.delta;\n event.currentTarget.setAttribute(\"data-swipe\", \"end\");\n event.currentTarget.style.removeProperty(\"--radix-toast-swipe-move-x\");\n event.currentTarget.style.removeProperty(\"--radix-toast-swipe-move-y\");\n event.currentTarget.style.setProperty(\"--radix-toast-swipe-end-x\", `${x}px`);\n event.currentTarget.style.setProperty(\"--radix-toast-swipe-end-y\", `${y}px`);\n setOpen(false);\n })\n })));\n});\n/*#__PURE__*/ Object.assign($054eb8030ebde76e$export$8d8dc7d5f743331b, {\n displayName: $054eb8030ebde76e$var$TOAST_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ const [$054eb8030ebde76e$var$ToastInteractiveProvider, $054eb8030ebde76e$var$useToastInteractiveContext] = $054eb8030ebde76e$var$createToastContext($054eb8030ebde76e$var$TOAST_NAME, {\n onClose () {}\n});\nconst $054eb8030ebde76e$var$ToastImpl = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeToast: __scopeToast, type: type = \"foreground\", duration: durationProp, open: open, onClose: onClose, onEscapeKeyDown: onEscapeKeyDown, onPause: onPause, onResume: onResume, onSwipeStart: onSwipeStart, onSwipeMove: onSwipeMove, onSwipeCancel: onSwipeCancel, onSwipeEnd: onSwipeEnd, ...toastProps } = props;\n const context = $054eb8030ebde76e$var$useToastProviderContext($054eb8030ebde76e$var$TOAST_NAME, __scopeToast);\n const [node1, setNode] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_5__.useComposedRefs)(forwardedRef, (node)=>setNode(node));\n const pointerStartRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const swipeDeltaRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const duration1 = durationProp || context.duration;\n const closeTimerStartTimeRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(0);\n const closeTimerRemainingTimeRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(duration1);\n const closeTimerRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(0);\n const { onToastAdd: onToastAdd, onToastRemove: onToastRemove } = context;\n const handleClose = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_11__.useCallbackRef)(()=>{\n var _context$viewport2;\n // focus viewport if focus is within toast to read the remaining toast\n // count to SR users and ensure focus isn't lost\n const isFocusInToast = node1 === null || node1 === void 0 ? void 0 : node1.contains(document.activeElement);\n if (isFocusInToast) (_context$viewport2 = context.viewport) === null || _context$viewport2 === void 0 || _context$viewport2.focus();\n onClose();\n });\n const startTimer = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)((duration)=>{\n if (!duration || duration === Infinity) return;\n window.clearTimeout(closeTimerRef.current);\n closeTimerStartTimeRef.current = new Date().getTime();\n closeTimerRef.current = window.setTimeout(handleClose, duration);\n }, [\n handleClose\n ]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const viewport = context.viewport;\n if (viewport) {\n const handleResume = ()=>{\n startTimer(closeTimerRemainingTimeRef.current);\n onResume === null || onResume === void 0 || onResume();\n };\n const handlePause = ()=>{\n const elapsedTime = new Date().getTime() - closeTimerStartTimeRef.current;\n closeTimerRemainingTimeRef.current = closeTimerRemainingTimeRef.current - elapsedTime;\n window.clearTimeout(closeTimerRef.current);\n onPause === null || onPause === void 0 || onPause();\n };\n viewport.addEventListener($054eb8030ebde76e$var$VIEWPORT_PAUSE, handlePause);\n viewport.addEventListener($054eb8030ebde76e$var$VIEWPORT_RESUME, handleResume);\n return ()=>{\n viewport.removeEventListener($054eb8030ebde76e$var$VIEWPORT_PAUSE, handlePause);\n viewport.removeEventListener($054eb8030ebde76e$var$VIEWPORT_RESUME, handleResume);\n };\n }\n }, [\n context.viewport,\n duration1,\n onPause,\n onResume,\n startTimer\n ]); // start timer when toast opens or duration changes.\n // we include `open` in deps because closed !== unmounted when animating\n // so it could reopen before being completely unmounted\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (open && !context.isClosePausedRef.current) startTimer(duration1);\n }, [\n open,\n duration1,\n context.isClosePausedRef,\n startTimer\n ]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n onToastAdd();\n return ()=>onToastRemove();\n }, [\n onToastAdd,\n onToastRemove\n ]);\n const announceTextContent = (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(()=>{\n return node1 ? $054eb8030ebde76e$var$getAnnounceTextContent(node1) : null;\n }, [\n node1\n ]);\n if (!context.viewport) return null;\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, announceTextContent && /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($054eb8030ebde76e$var$ToastAnnounce, {\n __scopeToast: __scopeToast // Toasts are always role=status to avoid stuttering issues with role=alert in SRs.\n ,\n role: \"status\",\n \"aria-live\": type === \"foreground\" ? \"assertive\" : \"polite\",\n \"aria-atomic\": true\n }, announceTextContent), /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($054eb8030ebde76e$var$ToastInteractiveProvider, {\n scope: __scopeToast,\n onClose: handleClose\n }, /*#__PURE__*/ (0,react_dom__WEBPACK_IMPORTED_MODULE_2__.createPortal)(/*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($054eb8030ebde76e$var$Collection.ItemSlot, {\n scope: __scopeToast\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_dismissable_layer__WEBPACK_IMPORTED_MODULE_6__.Root, {\n asChild: true,\n onEscapeKeyDown: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_12__.composeEventHandlers)(onEscapeKeyDown, ()=>{\n if (!context.isFocusedToastEscapeKeyDownRef.current) handleClose();\n context.isFocusedToastEscapeKeyDownRef.current = false;\n })\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_7__.Primitive.li, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n // Ensure toasts are announced as status list or status when focused\n role: \"status\",\n \"aria-live\": \"off\",\n \"aria-atomic\": true,\n tabIndex: 0,\n \"data-state\": open ? \"open\" : \"closed\",\n \"data-swipe-direction\": context.swipeDirection\n }, toastProps, {\n ref: composedRefs,\n style: {\n userSelect: \"none\",\n touchAction: \"none\",\n ...props.style\n },\n onKeyDown: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_12__.composeEventHandlers)(props.onKeyDown, (event)=>{\n if (event.key !== \"Escape\") return;\n onEscapeKeyDown === null || onEscapeKeyDown === void 0 || onEscapeKeyDown(event.nativeEvent);\n if (!event.nativeEvent.defaultPrevented) {\n context.isFocusedToastEscapeKeyDownRef.current = true;\n handleClose();\n }\n }),\n onPointerDown: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_12__.composeEventHandlers)(props.onPointerDown, (event)=>{\n if (event.button !== 0) return;\n pointerStartRef.current = {\n x: event.clientX,\n y: event.clientY\n };\n }),\n onPointerMove: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_12__.composeEventHandlers)(props.onPointerMove, (event)=>{\n if (!pointerStartRef.current) return;\n const x = event.clientX - pointerStartRef.current.x;\n const y = event.clientY - pointerStartRef.current.y;\n const hasSwipeMoveStarted = Boolean(swipeDeltaRef.current);\n const isHorizontalSwipe = [\n \"left\",\n \"right\"\n ].includes(context.swipeDirection);\n const clamp = [\n \"left\",\n \"up\"\n ].includes(context.swipeDirection) ? Math.min : Math.max;\n const clampedX = isHorizontalSwipe ? clamp(0, x) : 0;\n const clampedY = !isHorizontalSwipe ? clamp(0, y) : 0;\n const moveStartBuffer = event.pointerType === \"touch\" ? 10 : 2;\n const delta = {\n x: clampedX,\n y: clampedY\n };\n const eventDetail = {\n originalEvent: event,\n delta: delta\n };\n if (hasSwipeMoveStarted) {\n swipeDeltaRef.current = delta;\n $054eb8030ebde76e$var$handleAndDispatchCustomEvent($054eb8030ebde76e$var$TOAST_SWIPE_MOVE, onSwipeMove, eventDetail, {\n discrete: false\n });\n } else if ($054eb8030ebde76e$var$isDeltaInDirection(delta, context.swipeDirection, moveStartBuffer)) {\n swipeDeltaRef.current = delta;\n $054eb8030ebde76e$var$handleAndDispatchCustomEvent($054eb8030ebde76e$var$TOAST_SWIPE_START, onSwipeStart, eventDetail, {\n discrete: false\n });\n event.target.setPointerCapture(event.pointerId);\n } else if (Math.abs(x) > moveStartBuffer || Math.abs(y) > moveStartBuffer) // for the current pointer down interaction\n pointerStartRef.current = null;\n }),\n onPointerUp: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_12__.composeEventHandlers)(props.onPointerUp, (event1)=>{\n const delta = swipeDeltaRef.current;\n const target = event1.target;\n if (target.hasPointerCapture(event1.pointerId)) target.releasePointerCapture(event1.pointerId);\n swipeDeltaRef.current = null;\n pointerStartRef.current = null;\n if (delta) {\n const toast = event1.currentTarget;\n const eventDetail = {\n originalEvent: event1,\n delta: delta\n };\n if ($054eb8030ebde76e$var$isDeltaInDirection(delta, context.swipeDirection, context.swipeThreshold)) $054eb8030ebde76e$var$handleAndDispatchCustomEvent($054eb8030ebde76e$var$TOAST_SWIPE_END, onSwipeEnd, eventDetail, {\n discrete: true\n });\n else $054eb8030ebde76e$var$handleAndDispatchCustomEvent($054eb8030ebde76e$var$TOAST_SWIPE_CANCEL, onSwipeCancel, eventDetail, {\n discrete: true\n });\n // Prevent click event from triggering on items within the toast when\n // pointer up is part of a swipe gesture\n toast.addEventListener(\"click\", (event)=>event.preventDefault(), {\n once: true\n });\n }\n })\n })))), context.viewport)));\n});\n$054eb8030ebde76e$var$ToastImpl.propTypes = {\n type (props) {\n if (props.type && ![\n \"foreground\",\n \"background\"\n ].includes(props.type)) {\n const error = `Invalid prop \\`type\\` supplied to \\`${$054eb8030ebde76e$var$TOAST_NAME}\\`. Expected \\`foreground | background\\`.`;\n return new Error(error);\n }\n return null;\n }\n};\n/* -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$ToastAnnounce = (props)=>{\n const { __scopeToast: __scopeToast, children: children, ...announceProps } = props;\n const context = $054eb8030ebde76e$var$useToastProviderContext($054eb8030ebde76e$var$TOAST_NAME, __scopeToast);\n const [renderAnnounceText, setRenderAnnounceText] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [isAnnounced, setIsAnnounced] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false); // render text content in the next frame to ensure toast is announced in NVDA\n $054eb8030ebde76e$var$useNextFrame(()=>setRenderAnnounceText(true)); // cleanup after announcing\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const timer = window.setTimeout(()=>setIsAnnounced(true), 1000);\n return ()=>window.clearTimeout(timer);\n }, []);\n return isAnnounced ? null : /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_portal__WEBPACK_IMPORTED_MODULE_13__.Portal, {\n asChild: true\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_visually_hidden__WEBPACK_IMPORTED_MODULE_8__.VisuallyHidden, announceProps, renderAnnounceText && /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, context.label, \" \", children)));\n};\n/* -------------------------------------------------------------------------------------------------\n * ToastTitle\n * -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$TITLE_NAME = \"ToastTitle\";\nconst $054eb8030ebde76e$export$16d42d7c29b95a4 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeToast: __scopeToast, ...titleProps } = props;\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_7__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, titleProps, {\n ref: forwardedRef\n }));\n});\n/*#__PURE__*/ Object.assign($054eb8030ebde76e$export$16d42d7c29b95a4, {\n displayName: $054eb8030ebde76e$var$TITLE_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * ToastDescription\n * -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$DESCRIPTION_NAME = \"ToastDescription\";\nconst $054eb8030ebde76e$export$ecddd96c53621d9a = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeToast: __scopeToast, ...descriptionProps } = props;\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_7__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, descriptionProps, {\n ref: forwardedRef\n }));\n});\n/*#__PURE__*/ Object.assign($054eb8030ebde76e$export$ecddd96c53621d9a, {\n displayName: $054eb8030ebde76e$var$DESCRIPTION_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * ToastAction\n * -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$ACTION_NAME = \"ToastAction\";\nconst $054eb8030ebde76e$export$3019feecfda683d2 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { altText: altText, ...actionProps } = props;\n if (!altText) return null;\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($054eb8030ebde76e$var$ToastAnnounceExclude, {\n altText: altText,\n asChild: true\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($054eb8030ebde76e$export$811e70f61c205839, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, actionProps, {\n ref: forwardedRef\n })));\n});\n$054eb8030ebde76e$export$3019feecfda683d2.propTypes = {\n altText (props) {\n if (!props.altText) return new Error(`Missing prop \\`altText\\` expected on \\`${$054eb8030ebde76e$var$ACTION_NAME}\\``);\n return null;\n }\n};\n/*#__PURE__*/ Object.assign($054eb8030ebde76e$export$3019feecfda683d2, {\n displayName: $054eb8030ebde76e$var$ACTION_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * ToastClose\n * -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$CLOSE_NAME = \"ToastClose\";\nconst $054eb8030ebde76e$export$811e70f61c205839 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeToast: __scopeToast, ...closeProps } = props;\n const interactiveContext = $054eb8030ebde76e$var$useToastInteractiveContext($054eb8030ebde76e$var$CLOSE_NAME, __scopeToast);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)($054eb8030ebde76e$var$ToastAnnounceExclude, {\n asChild: true\n }, /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_7__.Primitive.button, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n type: \"button\"\n }, closeProps, {\n ref: forwardedRef,\n onClick: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_12__.composeEventHandlers)(props.onClick, interactiveContext.onClose)\n })));\n});\n/*#__PURE__*/ Object.assign($054eb8030ebde76e$export$811e70f61c205839, {\n displayName: $054eb8030ebde76e$var$CLOSE_NAME\n});\n/* ---------------------------------------------------------------------------------------------- */ const $054eb8030ebde76e$var$ToastAnnounceExclude = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const { __scopeToast: __scopeToast, altText: altText, ...announceExcludeProps } = props;\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_7__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n \"data-radix-toast-announce-exclude\": \"\",\n \"data-radix-toast-announce-alt\": altText || undefined\n }, announceExcludeProps, {\n ref: forwardedRef\n }));\n});\nfunction $054eb8030ebde76e$var$getAnnounceTextContent(container) {\n const textContent = [];\n const childNodes = Array.from(container.childNodes);\n childNodes.forEach((node)=>{\n if (node.nodeType === node.TEXT_NODE && node.textContent) textContent.push(node.textContent);\n if ($054eb8030ebde76e$var$isHTMLElement(node)) {\n const isHidden = node.ariaHidden || node.hidden || node.style.display === \"none\";\n const isExcluded = node.dataset.radixToastAnnounceExclude === \"\";\n if (!isHidden) {\n if (isExcluded) {\n const altText = node.dataset.radixToastAnnounceAlt;\n if (altText) textContent.push(altText);\n } else textContent.push(...$054eb8030ebde76e$var$getAnnounceTextContent(node));\n }\n }\n }); // We return a collection of text rather than a single concatenated string.\n // This allows SR VO to naturally pause break between nodes while announcing.\n return textContent;\n}\n/* ---------------------------------------------------------------------------------------------- */ function $054eb8030ebde76e$var$handleAndDispatchCustomEvent(name, handler, detail, { discrete: discrete }) {\n const currentTarget = detail.originalEvent.currentTarget;\n const event = new CustomEvent(name, {\n bubbles: true,\n cancelable: true,\n detail: detail\n });\n if (handler) currentTarget.addEventListener(name, handler, {\n once: true\n });\n if (discrete) (0,_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_7__.dispatchDiscreteCustomEvent)(currentTarget, event);\n else currentTarget.dispatchEvent(event);\n}\nconst $054eb8030ebde76e$var$isDeltaInDirection = (delta, direction, threshold = 0)=>{\n const deltaX = Math.abs(delta.x);\n const deltaY = Math.abs(delta.y);\n const isDeltaX = deltaX > deltaY;\n if (direction === \"left\" || direction === \"right\") return isDeltaX && deltaX > threshold;\n else return !isDeltaX && deltaY > threshold;\n};\nfunction $054eb8030ebde76e$var$useNextFrame(callback = ()=>{}) {\n const fn = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_11__.useCallbackRef)(callback);\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_14__.useLayoutEffect)(()=>{\n let raf1 = 0;\n let raf2 = 0;\n raf1 = window.requestAnimationFrame(()=>raf2 = window.requestAnimationFrame(fn));\n return ()=>{\n window.cancelAnimationFrame(raf1);\n window.cancelAnimationFrame(raf2);\n };\n }, [\n fn\n ]);\n}\nfunction $054eb8030ebde76e$var$isHTMLElement(node) {\n return node.nodeType === node.ELEMENT_NODE;\n}\n/**\n * Returns a list of potential tabbable candidates.\n *\n * NOTE: This is only a close approximation. For example it doesn't take into account cases like when\n * elements are not visible. This cannot be worked out easily by just reading a property, but rather\n * necessitate runtime knowledge (computed styles, etc). We deal with these cases separately.\n *\n * See: https://developer.mozilla.org/en-US/docs/Web/API/TreeWalker\n * Credit: https://github.com/discord/focus-layers/blob/master/src/util/wrapFocus.tsx#L1\n */ function $054eb8030ebde76e$var$getTabbableCandidates(container) {\n const nodes = [];\n const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {\n acceptNode: (node)=>{\n const isHiddenInput = node.tagName === \"INPUT\" && node.type === \"hidden\";\n if (node.disabled || node.hidden || isHiddenInput) return NodeFilter.FILTER_SKIP; // `.tabIndex` is not the same as the `tabindex` attribute. It works on the\n // runtime's understanding of tabbability, so this automatically accounts\n // for any kind of element that could be tabbed to.\n return node.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;\n }\n });\n while(walker.nextNode())nodes.push(walker.currentNode); // we do not take into account the order of nodes with positive `tabIndex` as it\n // hinders accessibility to have tab order different from visual order.\n return nodes;\n}\nfunction $054eb8030ebde76e$var$focusFirst(candidates) {\n const previouslyFocusedElement = document.activeElement;\n return candidates.some((candidate)=>{\n // if focus is already where we want to go, we don't want to keep going through the candidates\n if (candidate === previouslyFocusedElement) return true;\n candidate.focus();\n return document.activeElement !== previouslyFocusedElement;\n });\n}\nconst $054eb8030ebde76e$export$2881499e37b75b9a = $054eb8030ebde76e$export$f5d03d415824e0e;\nconst $054eb8030ebde76e$export$d5c6c08dc2d3ca7 = $054eb8030ebde76e$export$6192c2425ecfd989;\nconst $054eb8030ebde76e$export$be92b6f5f03c0fe9 = $054eb8030ebde76e$export$8d8dc7d5f743331b;\nconst $054eb8030ebde76e$export$f99233281efd08a0 = $054eb8030ebde76e$export$16d42d7c29b95a4;\nconst $054eb8030ebde76e$export$393edc798c47379d = $054eb8030ebde76e$export$ecddd96c53621d9a;\nconst $054eb8030ebde76e$export$e19cd5f9376f8cee = $054eb8030ebde76e$export$3019feecfda683d2;\nconst $054eb8030ebde76e$export$f39c2d165cd861fe = $054eb8030ebde76e$export$811e70f61c205839;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXRvYXN0L2Rpc3QvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFzRjtBQUN1TDtBQUMvTTtBQUMwQjtBQUNEO0FBQ0E7QUFDQztBQUNPO0FBQ2hDO0FBQ007QUFDc0U7QUFDbEQ7QUFDa0I7QUFDZjtBQUNKO0FBaUJ4Rjs7a0dBRWtHLEdBQUcsTUFBTStDLHNDQUFzQztBQUNqSixNQUFNLENBQUNDLGtDQUFrQ0MscUNBQXFDQyw0Q0FBNEMsR0FBRzFCLDRFQUF1QkEsQ0FBQztBQUNySixNQUFNLENBQUMyQiwwQ0FBMENDLDBDQUEwQyxHQUFHMUIsMkVBQXlCQSxDQUFDLFNBQVM7SUFDN0h3QjtDQUNIO0FBQ0QsTUFBTSxDQUFDRyw2Q0FBNkNDLDhDQUE4QyxHQUFHSCx5Q0FBeUNKO0FBQzlJLE1BQU1RLDJDQUEyQyxDQUFDQztJQUM5QyxNQUFNLEVBQUVDLGNBQWNBLFlBQVksRUFBR0MsT0FBT0EsUUFBUSxjQUFjLEVBQUdDLFVBQVVBLFdBQVcsSUFBSSxFQUFHQyxnQkFBZ0JBLGlCQUFpQixPQUFPLEVBQUdDLGdCQUFnQkEsaUJBQWlCLEVBQUUsRUFBR0MsVUFBVUEsUUFBUSxFQUFHLEdBQUdOO0lBQzFNLE1BQU0sQ0FBQ08sVUFBVUMsWUFBWSxHQUFHOUQsK0NBQWVBLENBQUM7SUFDaEQsTUFBTSxDQUFDK0QsWUFBWUMsY0FBYyxHQUFHaEUsK0NBQWVBLENBQUM7SUFDcEQsTUFBTWlFLGlDQUFpQy9ELDZDQUFhQSxDQUFDO0lBQ3JELE1BQU1nRSxtQkFBbUJoRSw2Q0FBYUEsQ0FBQztJQUN2QyxPQUFPLFdBQVcsR0FBR0Usb0RBQW9CQSxDQUFDMEMsaUNBQWlDcUIsUUFBUSxFQUFFO1FBQ2pGQyxPQUFPYjtJQUNYLEdBQUcsV0FBVyxHQUFHbkQsb0RBQW9CQSxDQUFDK0MsNkNBQTZDO1FBQy9FaUIsT0FBT2I7UUFDUEMsT0FBT0E7UUFD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Q2xELE1BQU1vRSw0Q0FBNENqRTtBQUNsRCxNQUFNa0UsNENBQTRDOUQ7QUFLaXlCLENBQ24xQixrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9lbWJlZGNoYWluLWFkbWluLy4vbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC10b2FzdC9kaXN0L2luZGV4Lm1qcz8yMGVmIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAkZXlyWUkkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2V4dGVuZHNcIjtcbmltcG9ydCB7dXNlU3RhdGUgYXMgJGV5cllJJHVzZVN0YXRlLCB1c2VSZWYgYXMgJGV5cllJJHVzZVJlZiwgY3JlYXRlRWxlbWVudCBhcyAkZXlyWUkkY3JlYXRlRWxlbWVudCwgdXNlQ2FsbGJhY2sgYXMgJGV5cllJJHVzZUNhbGxiYWNrLCBmb3J3YXJkUmVmIGFzICRleXJZSSRmb3J3YXJkUmVmLCB1c2VFZmZlY3QgYXMgJGV5cllJJHVzZUVmZmVjdCwgdXNlTWVtbyBhcyAkZXlyWUkkdXNlTWVtbywgRnJhZ21lbnQgYXMgJGV5cllJJEZyYWdtZW50fSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7Y3JlYXRlUG9ydGFsIGFzICRleXJZSSRjcmVhdGVQb3J0YWx9IGZyb20gXCJyZWFjdC1kb21cIjtcbmltcG9ydCB7Y29tcG9zZUV2ZW50SGFuZGxlcnMgYXMgJGV5cllJJGNvbXBvc2VFdmVudEhhbmRsZXJzfSBmcm9tIFwiQHJhZGl4LXVpL3ByaW1pdGl2ZVwiO1xuaW1wb3J0IHt1c2VDb21wb3NlZFJlZnMgYXMgJGV5cllJJHVzZUNvbXBvc2VkUmVmc30gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1jb21wb3NlLXJlZnNcIjtcbmltcG9ydCB7Y3JlYXRlQ29sbGVjdGlvbiBhcyAkZXlyWUkkY3JlYXRlQ29sbGVjdGlvbn0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1jb2xsZWN0aW9uXCI7XG5pbXBvcnQge2NyZWF0ZUNvbnRleHRTY29wZSBhcyAkZXlyWUkkY3JlYXRlQ29udGV4dFNjb3BlfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LWNvbnRleHRcIjtcbmltcG9ydCB7QnJhbmNoIGFzICRleXJZSSRCcmFuY2gsIFJvb3QgYXMgJGV5cllJJFJvb3R9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtZGlzbWlzc2FibGUtbGF5ZXJcIjtcbmltcG9ydCB7UG9ydGFsIGFzICRleXJZSSRQb3J0YWx9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtcG9ydGFsXCI7XG5pbXBvcnQge1ByZXNlbmNlIGFzICRleXJZSSRQcmVzZW5jZX0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1wcmVzZW5jZVwiO1xuaW1wb3J0IHtQcmltaXRpdmUgYXMgJGV5cllJJFByaW1pdGl2ZSwgZGlzcGF0Y2hEaXNjcmV0ZUN1c3RvbUV2ZW50IGFzICRleXJZSSRkaXNwYXRjaERpc2NyZXRlQ3VzdG9tRXZlbnR9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtcHJpbWl0aXZlXCI7XG5pbXBvcnQge3VzZUNhbGxiYWNrUmVmIGFzICRleXJZSSR1c2VDYWxsYmFja1JlZn0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC11c2UtY2FsbGJhY2stcmVmXCI7XG5pbXBvcnQge3VzZUNvbnRyb2xsYWJsZVN0YXRlIGFzICRleXJZSSR1c2VDb250cm9sbGFibGVTdGF0ZX0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC11c2UtY29udHJvbGxhYmxlLXN0YXRlXCI7XG5pbXBvcnQge3VzZUxheW91dEVmZmVjdCBhcyAkZXlyWUkkdXNlTGF5b3V0RWZmZWN0fSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXVzZS1sYXlvdXQtZWZmZWN0XCI7XG5pbXBvcnQge1Zpc3VhbGx5SGlkZGVuIGFzICRleXJZSSRWaXN1YWxseUhpZGRlbn0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC12aXN1YWxseS1oaWRkZW5cIjtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogVG9hc3RQcm92aWRlclxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkUFJPVklERVJfTkFNRSA9ICdUb2FzdFByb3ZpZGVyJztcbmNvbnN0IFskMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkQ29sbGVjdGlvbiwgJDA1NGViODAzMGViZGU3NmUkdmFyJHVzZUNvbGxlY3Rpb24sICQwNTRlYjgwMzBlYmRlNzZlJHZhciRjcmVhdGVDb2xsZWN0aW9uU2NvcGVdID0gJGV5cllJJGNyZWF0ZUNvbGxlY3Rpb24oJ1RvYXN0Jyk7XG5jb25zdCBbJDA1NGViODAzMGViZGU3NmUkdmFyJGNyZWF0ZVRvYXN0Q29udGV4dCwgJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JDhhMzU5ZGExOGZiYzkwNzNdID0gJGV5cllJJGNyZWF0ZUNvbnRleHRTY29wZSgnVG9hc3QnLCBbXG4gICAgJDA1NGViODAzMGViZGU3NmUkdmFyJGNyZWF0ZUNvbGxlY3Rpb25TY29wZVxuXSk7XG5jb25zdCBbJDA1NGViODAzMGViZGU3NmUkdmFyJFRvYXN0UHJvdmlkZXJQcm92aWRlciwgJDA1NGViODAzMGViZGU3NmUkdmFyJHVzZVRvYXN0UHJvdmlkZXJDb250ZXh0XSA9ICQwNTRlYjgwMzBlYmRlNzZlJHZhciRjcmVhdGVUb2FzdENvbnRleHQoJDA1NGViODAzMGViZGU3NmUkdmFyJFBST1ZJREVSX05BTUUpO1xuY29uc3QgJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JGY1ZDAzZDQxNTgyNGUwZSA9IChwcm9wcyk9PntcbiAgICBjb25zdCB7IF9fc2NvcGVUb2FzdDogX19zY29wZVRvYXN0ICwgbGFiZWw6IGxhYmVsID0gJ05vdGlmaWNhdGlvbicgLCBkdXJhdGlvbjogZHVyYXRpb24gPSA1MDAwICwgc3dpcGVEaXJlY3Rpb246IHN3aXBlRGlyZWN0aW9uID0gJ3JpZ2h0JyAsIHN3aXBlVGhyZXNob2xkOiBzd2lwZVRocmVzaG9sZCA9IDUwICwgY2hpbGRyZW46IGNoaWxkcmVuICB9ID0gcHJvcHM7XG4gICAgY29uc3QgW3ZpZXdwb3J0LCBzZXRWaWV3cG9ydF0gPSAkZXlyWUkkdXNlU3RhdGUobnVsbCk7XG4gICAgY29uc3QgW3RvYXN0Q291bnQsIHNldFRvYXN0Q291bnRdID0gJGV5cllJJHVzZVN0YXRlKDApO1xuICAgIGNvbnN0IGlzRm9jdXNlZFRvYXN0RXNjYXBlS2V5RG93blJlZiA9ICRleXJZSSR1c2VSZWYoZmFsc2UpO1xuICAgIGNvbnN0IGlzQ2xvc2VQYXVzZWRSZWYgPSAkZXlyWUkkdXNlUmVmKGZhbHNlKTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAkZXlyWUkkY3JlYXRlRWxlbWVudCgkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkQ29sbGVjdGlvbi5Qcm92aWRlciwge1xuICAgICAgICBzY29wZTogX19zY29wZVRvYXN0XG4gICAgfSwgLyojX19QVVJFX18qLyAkZXlyWUkkY3JlYXRlRWxlbWVudCgkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVG9hc3RQcm92aWRlclByb3ZpZGVyLCB7XG4gICAgICAgIHNjb3BlOiBfX3Njb3BlVG9hc3QsXG4gICAgICAgIGxhYmVsOiBsYWJlbCxcbiAgICAgICAgZHVyYXRpb246IGR1cmF0aW9uLFxuICAgICAgICBzd2lwZURpcmVjdGlvbjogc3dpcGVEaXJlY3Rpb24sXG4gICAgICAgIHN3aXBlVGhyZXNob2xkOiBzd2lwZVRocmVzaG9sZCxcbiAgICAgICAgdG9hc3RDb3VudDogdG9hc3RDb3VudCxcbiAgICAgICAgdmlld3BvcnQ6IHZpZXdwb3J0LFxuICAgICAgICBvblZpZXdwb3J0Q2hhbmdlOiBzZXRWaWV3cG9ydCxcbiAgICAgICAgb25Ub2FzdEFkZDogJGV5cllJJHVzZUNhbGxiYWNrKCgpPT5zZXRUb2FzdENvdW50KChwcmV2Q291bnQpPT5wcmV2Q291bnQgKyAxXG4gICAgICAgICAgICApXG4gICAgICAgICwgW10pLFxuICAgICAgICBvblRvYXN0UmVtb3ZlOiAkZXlyWUkkdXNlQ2FsbGJhY2soKCk9PnNldFRvYXN0Q291bnQoKHByZXZDb3VudCk9PnByZXZDb3VudCAtIDFcbiAgICAgICAgICAgIClcbiAgICAgICAgLCBbXSksXG4gICAgICAgIGlzRm9jdXNlZFRvYXN0RXNjYXBlS2V5RG93blJlZjogaXNGb2N1c2VkVG9hc3RFc2NhcGVLZXlEb3duUmVmLFxuICAgICAgICBpc0Nsb3NlUGF1c2VkUmVmOiBpc0Nsb3NlUGF1c2VkUmVmXG4gICAgfSwgY2hpbGRyZW4pKTtcbn07XG4kMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkZjVkMDNkNDE1ODI0ZTBlLnByb3BUeXBlcyA9IHtcbiAgICBsYWJlbCAocHJvcHMpIHtcbiAgICAgICAgaWYgKHByb3BzLmxhYmVsICYmIHR5cGVvZiBwcm9wcy5sYWJlbCA9PT0gJ3N0cmluZycgJiYgIXByb3BzLmxhYmVsLnRyaW0oKSkge1xuICAgICAgICAgICAgY29uc3QgZXJyb3IgPSBgSW52YWxpZCBwcm9wIFxcYGxhYmVsXFxgIHN1cHBsaWVkIHRvIFxcYCR7JDA1NGViODAzMGViZGU3NmUkdmFyJFBST1ZJREVSX05BTUV9XFxgLiBFeHBlY3RlZCBub24tZW1wdHkgXFxgc3RyaW5nXFxgLmA7XG4gICAgICAgICAgICByZXR1cm4gbmV3IEVycm9yKGVycm9yKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG59O1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCRmNWQwM2Q0MTU4MjRlMGUsIHtcbiAgICBkaXNwbGF5TmFtZTogJDA1NGViODAzMGViZGU3NmUkdmFyJFBST1ZJREVSX05BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogVG9hc3RWaWV3cG9ydFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVklFV1BPUlRfTkFNRSA9ICdUb2FzdFZpZXdwb3J0JztcbmNvbnN0ICQwNTRlYjgwMzBlYmRlNzZlJHZhciRWSUVXUE9SVF9ERUZBVUxUX0hPVEtFWSA9IFtcbiAgICAnRjgnXG5dO1xuY29uc3QgJDA1NGViODAzMGViZGU3NmUkdmFyJFZJRVdQT1JUX1BBVVNFID0gJ3RvYXN0LnZpZXdwb3J0UGF1c2UnO1xuY29uc3QgJDA1NGViODAzMGViZGU3NmUkdmFyJFZJRVdQT1JUX1JFU1VNRSA9ICd0b2FzdC52aWV3cG9ydFJlc3VtZSc7XG5jb25zdCAkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkNjE5MmMyNDI1ZWNmZDk4OSA9IC8qI19fUFVSRV9fKi8gJGV5cllJJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlVG9hc3Q6IF9fc2NvcGVUb2FzdCAsIGhvdGtleTogaG90a2V5ID0gJDA1NGViODAzMGViZGU3NmUkdmFyJFZJRVdQT1JUX0RFRkFVTFRfSE9US0VZICwgbGFiZWw6IGxhYmVsID0gJ05vdGlmaWNhdGlvbnMgKHtob3RrZXl9KScgLCAuLi52aWV3cG9ydFByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBjb250ZXh0ID0gJDA1NGViODAzMGViZGU3NmUkdmFyJHVzZVRvYXN0UHJvdmlkZXJDb250ZXh0KCQwNTRlYjgwMzBlYmRlNzZlJHZhciRWSUVXUE9SVF9OQU1FLCBfX3Njb3BlVG9hc3QpO1xuICAgIGNvbnN0IGdldEl0ZW1zID0gJDA1NGViODAzMGViZGU3NmUkdmFyJHVzZUNvbGxlY3Rpb24oX19zY29wZVRvYXN0KTtcbiAgICBjb25zdCB3cmFwcGVyUmVmID0gJGV5cllJJHVzZVJlZihudWxsKTtcbiAgICBjb25zdCBoZWFkRm9jdXNQcm94eVJlZiA9ICRleXJZSSR1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgdGFpbEZvY3VzUHJveHlSZWYgPSAkZXlyWUkkdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IHJlZiA9ICRleXJZSSR1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgY29tcG9zZWRSZWZzID0gJGV5cllJJHVzZUNvbXBvc2VkUmVmcyhmb3J3YXJkZWRSZWYsIHJlZiwgY29udGV4dC5vblZpZXdwb3J0Q2hhbmdlKTtcbiAgICBjb25zdCBob3RrZXlMYWJlbCA9IGhvdGtleS5qb2luKCcrJykucmVwbGFjZSgvS2V5L2csICcnKS5yZXBsYWNlKC9EaWdpdC9nLCAnJyk7XG4gICAgY29uc3QgaGFzVG9hc3RzID0gY29udGV4dC50b2FzdENvdW50ID4gMDtcbiAgICAkZXlyWUkkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGNvbnN0IGhhbmRsZUtleURvd24gPSAoZXZlbnQpPT57XG4gICAgICAgICAgICB2YXIgX3JlZiRjdXJyZW50O1xuICAgICAgICAgICAgLy8gd2UgdXNlIGBldmVudC5jb2RlYCBhcyBpdCBpcyBjb25zaXN0ZW50IHJlZ2FyZGxlc3Mgb2YgbWV0YSBrZXlzIHRoYXQgd2VyZSBwcmVzc2VkLlxuICAgICAgICAgICAgLy8gZm9yIGV4YW1wbGUsIGBldmVudC5rZXlgIGZvciBgQ29udHJvbCtBbHQrdGAgaXMgYOKAoGAgYW5kIGB0ICE9PSDigKBgXG4gICAgICAgICAgICBjb25zdCBpc0hvdGtleVByZXNzZWQgPSBob3RrZXkuZXZlcnkoKGtleSk9PmV2ZW50W2tleV0gfHwgZXZlbnQuY29kZSA9PT0ga2V5XG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgaWYgKGlzSG90a2V5UHJlc3NlZCkgKF9yZWYkY3VycmVudCA9IHJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfcmVmJGN1cnJlbnQgPT09IHZvaWQgMCB8fCBfcmVmJGN1cnJlbnQuZm9jdXMoKTtcbiAgICAgICAgfTtcbiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIGhhbmRsZUtleURvd24pO1xuICAgICAgICByZXR1cm4gKCk9PmRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBoYW5kbGVLZXlEb3duKVxuICAgICAgICA7XG4gICAgfSwgW1xuICAgICAgICBob3RrZXlcbiAgICBdKTtcbiAgICAkZXlyWUkkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGNvbnN0IHdyYXBwZXIgPSB3cmFwcGVyUmVmLmN1cnJlbnQ7XG4gICAgICAgIGNvbnN0IHZpZXdwb3J0ID0gcmVmLmN1cnJlbnQ7XG4gICAgICAgIGlmIChoYXNUb2FzdHMgJiYgd3JhcHBlciAmJiB2aWV3cG9ydCkge1xuICAgICAgICAgICAgY29uc3QgaGFuZGxlUGF1c2UgPSAoKT0+e1xuICAgICAgICAgICAgICAgIGlmICghY29udGV4dC5pc0Nsb3NlUGF1c2VkUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcGF1c2VFdmVudCA9IG5ldyBDdXN0b21FdmVudCgkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVklFV1BPUlRfUEFVU0UpO1xuICAgICAgICAgICAgICAgICAgICB2aWV3cG9ydC5kaXNwYXRjaEV2ZW50KHBhdXNlRXZlbnQpO1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0LmlzQ2xvc2VQYXVzZWRSZWYuY3VycmVudCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZVJlc3VtZSA9ICgpPT57XG4gICAgICAgICAgICAgICAgaWYgKGNvbnRleHQuaXNDbG9zZVBhdXNlZFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VtZUV2ZW50ID0gbmV3IEN1c3RvbUV2ZW50KCQwNTRlYjgwMzBlYmRlNzZlJHZhciRWSUVXUE9SVF9SRVNVTUUpO1xuICAgICAgICAgICAgICAgICAgICB2aWV3cG9ydC5kaXNwYXRjaEV2ZW50KHJlc3VtZUV2ZW50KTtcbiAgICAgICAgICAgICAgICAgICAgY29udGV4dC5pc0Nsb3NlUGF1c2VkUmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgY29uc3QgaGFuZGxlRm9jdXNPdXRSZXN1bWUgPSAoZXZlbnQpPT57XG4gICAgICAgICAgICAgICAgY29uc3QgaXNGb2N1c01vdmluZ091dHNpZGUgPSAhd3JhcHBlci5jb250YWlucyhldmVudC5yZWxhdGVkVGFyZ2V0KTtcbiAgICAgICAgICAgICAgICBpZiAoaXNGb2N1c01vdmluZ091dHNpZGUpIGhhbmRsZVJlc3VtZSgpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZVBvaW50ZXJMZWF2ZVJlc3VtZSA9ICgpPT57XG4gICAgICAgICAgICAgICAgY29uc3QgaXNGb2N1c0luc2lkZSA9IHdyYXBwZXIuY29udGFpbnMoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICAgICAgaWYgKCFpc0ZvY3VzSW5zaWRlKSBoYW5kbGVSZXN1bWUoKTtcbiAgICAgICAgICAgIH07IC8vIFRvYXN0cyBhcmUgbm90IGluIHRoZSB2aWV3cG9ydCBSZWFjdCB0cmVlIHNvIHdlIG5lZWQgdG8gYmluZCBET00gZXZlbnRzXG4gICAgICAgICAgICB3cmFwcGVyLmFkZEV2ZW50TGlzdGVuZXIoJ2ZvY3VzaW4nLCBoYW5kbGVQYXVzZSk7XG4gICAgICAgICAgICB3cmFwcGVyLmFkZEV2ZW50TGlzdGVuZXIoJ2ZvY3Vzb3V0JywgaGFuZGxlRm9jdXNPdXRSZXN1bWUpO1xuICAgICAgICAgICAgd3JhcHBlci5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVybW92ZScsIGhhbmRsZVBhdXNlKTtcbiAgICAgICAgICAgIHdyYXBwZXIuYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcmxlYXZlJywgaGFuZGxlUG9pbnRlckxlYXZlUmVzdW1lKTtcbiAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdibHVyJywgaGFuZGxlUGF1c2UpO1xuICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2ZvY3VzJywgaGFuZGxlUmVzdW1lKTtcbiAgICAgICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgICAgIHdyYXBwZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcignZm9jdXNpbicsIGhhbmRsZVBhdXNlKTtcbiAgICAgICAgICAgICAgICB3cmFwcGVyLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2ZvY3Vzb3V0JywgaGFuZGxlRm9jdXNPdXRSZXN1bWUpO1xuICAgICAgICAgICAgICAgIHdyYXBwZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcigncG9pbnRlcm1vdmUnLCBoYW5kbGVQYXVzZSk7XG4gICAgICAgICAgICAgICAgd3JhcHBlci5yZW1vdmVFdmVudExpc3RlbmVyKCdwb2ludGVybGVhdmUnLCBoYW5kbGVQb2ludGVyTGVhdmVSZXN1bWUpO1xuICAgICAgICAgICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdibHVyJywgaGFuZGxlUGF1c2UpO1xuICAgICAgICAgICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdmb2N1cycsIGhhbmRsZVJlc3VtZSk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBoYXNUb2FzdHMsXG4gICAgICAgIGNvbnRleHQuaXNDbG9zZVBhdXNlZFJlZlxuICAgIF0pO1xuICAgIGNvbnN0IGdldFNvcnRlZFRhYmJhYmxlQ2FuZGlkYXRlcyA9ICRleXJZSSR1c2VDYWxsYmFjaygoeyB0YWJiaW5nRGlyZWN0aW9uOiB0YWJiaW5nRGlyZWN0aW9uICB9KT0+e1xuICAgICAgICBjb25zdCB0b2FzdEl0ZW1zID0gZ2V0SXRlbXMoKTtcbiAgICAgICAgY29uc3QgdGFiYmFibGVDYW5kaWRhdGVzID0gdG9hc3RJdGVtcy5tYXAoKHRvYXN0SXRlbSk9PntcbiAgICAgICAgICAgIGNvbnN0IHRvYXN0Tm9kZSA9IHRvYXN0SXRlbS5yZWYuY3VycmVudDtcbiAgICAgICAgICAgIGNvbnN0IHRvYXN0VGFiYmFibGVDYW5kaWRhdGVzID0gW1xuICAgICAgICAgICAgICAgIHRvYXN0Tm9kZSxcbiAgICAgICAgICAgICAgICAuLi4kMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkZ2V0VGFiYmFibGVDYW5kaWRhdGVzKHRvYXN0Tm9kZSlcbiAgICAgICAgICAgIF07XG4gICAgICAgICAgICByZXR1cm4gdGFiYmluZ0RpcmVjdGlvbiA9PT0gJ2ZvcndhcmRzJyA/IHRvYXN0VGFiYmFibGVDYW5kaWRhdGVzIDogdG9hc3RUYWJiYWJsZUNhbmRpZGF0ZXMucmV2ZXJzZSgpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuICh0YWJiaW5nRGlyZWN0aW9uID09PSAnZm9yd2FyZHMnID8gdGFiYmFibGVDYW5kaWRhdGVzLnJldmVyc2UoKSA6IHRhYmJhYmxlQ2FuZGlkYXRlcykuZmxhdCgpO1xuICAgIH0sIFtcbiAgICAgICAgZ2V0SXRlbXNcbiAgICBdKTtcbiAgICAkZXlyWUkkdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGNvbnN0IHZpZXdwb3J0ID0gcmVmLmN1cnJlbnQ7IC8vIFdlIHByb2dyYW1tYXRpY2FsbHkgbWFuYWdlIHRhYmJpbmcgYXMgd2UgYXJlIHVuYWJsZSB0byBpbmZsdWVuY2VcbiAgICAgICAgLy8gdGhlIHNvdXJjZSBvcmRlciB3aXRoIHBvcnRhbHMsIHRoaXMgYWxsb3dzIHVzIHRvIHJldmVyc2UgdGhlXG4gICAgICAgIC8vIHRhYiBvcmRlciBzbyB0aGF0IGl0IHJ1bnMgZnJvbSBtb3N0IHJlY2VudCB0b2FzdCB0byBsZWFzdFxuICAgICAgICBpZiAodmlld3BvcnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUtleURvd24gPSAoZXZlbnQpPT57XG4gICAgICAgICAgICAgICAgY29uc3QgaXNNZXRhS2V5ID0gZXZlbnQuYWx0S2V5IHx8IGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQubWV0YUtleTtcbiAgICAgICAgICAgICAgICBjb25zdCBpc1RhYktleSA9IGV2ZW50LmtleSA9PT0gJ1RhYicgJiYgIWlzTWV0YUtleTtcbiAgICAgICAgICAgICAgICBpZiAoaXNUYWJLZXkpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZm9jdXNlZEVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50O1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpc1RhYmJpbmdCYWNrd2FyZHMgPSBldmVudC5zaGlmdEtleTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdGFyZ2V0SXNWaWV3cG9ydCA9IGV2ZW50LnRhcmdldCA9PT0gdmlld3BvcnQ7IC8vIElmIHdlJ3JlIGJhY2sgdGFiYmluZyBhZnRlciBqdW1waW5nIHRvIHRoZSB2aWV3cG9ydCB0aGVuIHdlIHNpbXBseVxuICAgICAgICAgICAgICAgICAgICAvLyBwcm94eSBmb2N1cyBvdXQgdG8gdGhlIHByZWNlZGluZyBkb2N1bWVudFxuICAgICAgICAgICAgICAgICAgICBpZiAodGFyZ2V0SXNWaWV3cG9ydCAmJiBpc1RhYmJpbmdCYWNrd2FyZHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBfaGVhZEZvY3VzUHJveHlSZWYkY3U7XG4gICAgICAgICAgICAgICAgICAgICAgICAoX2hlYWRGb2N1c1Byb3h5UmVmJGN1ID0gaGVhZEZvY3VzUHJveHlSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2hlYWRGb2N1c1Byb3h5UmVmJGN1ID09PSB2b2lkIDAgfHwgX2hlYWRGb2N1c1Byb3h5UmVmJGN1LmZvY3VzKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdGFiYmluZ0RpcmVjdGlvbiA9IGlzVGFiYmluZ0JhY2t3YXJkcyA/ICdiYWNrd2FyZHMnIDogJ2ZvcndhcmRzJztcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc29ydGVkQ2FuZGlkYXRlcyA9IGdldFNvcnRlZFRhYmJhYmxlQ2FuZGlkYXRlcyh7XG4gICAgICAgICAgICAgICAgICAgICAgICB0YWJiaW5nRGlyZWN0aW9uOiB0YWJiaW5nRGlyZWN0aW9uXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IHNvcnRlZENhbmRpZGF0ZXMuZmluZEluZGV4KChjYW5kaWRhdGUpPT5jYW5kaWRhdGUgPT09IGZvY3VzZWRFbGVtZW50XG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIGlmICgkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkZm9jdXNGaXJzdChzb3J0ZWRDYW5kaWRhdGVzLnNsaWNlKGluZGV4ICsgMSkpKSBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBfaGVhZEZvY3VzUHJveHlSZWYkY3UyLCBfdGFpbEZvY3VzUHJveHlSZWYkY3U7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBJZiB3ZSBjYW4ndCBmb2N1cyB0aGF0IG1lYW5zIHdlJ3JlIGF0IHRoZSBlZGdlcyBzbyB3ZVxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gcHJveHkgdG8gdGhlIGNvcnJlc3BvbmRpbmcgZXhpdCBwb2ludCBhbmQgbGV0IHRoZSBicm93c2VyIGhhbmRsZVxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGFiL3NoaWZ0K3RhYiBrZXlwcmVzcyBhbmQgaW1wbGljaXRseSBwYXNzIGZvY3VzIHRvIHRoZSBuZXh0IHZhbGlkIGVsZW1lbnQgaW4gdGhlIGRvY3VtZW50XG4gICAgICAgICAgICAgICAgICAgICAgICBpc1RhYmJpbmdCYWNrd2FyZHMgPyAoX2hlYWRGb2N1c1Byb3h5UmVmJGN1MiA9IGhlYWRGb2N1c1Byb3h5UmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9oZWFkRm9jdXNQcm94eVJlZiRjdTIgPT09IHZvaWQgMCB8fCBfaGVhZEZvY3VzUHJveHlSZWYkY3UyLmZvY3VzKCkgOiAoX3RhaWxGb2N1c1Byb3h5UmVmJGN1ID0gdGFpbEZvY3VzUHJveHlSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX3RhaWxGb2N1c1Byb3h5UmVmJGN1ID09PSB2b2lkIDAgfHwgX3RhaWxGb2N1c1Byb3h5UmVmJGN1LmZvY3VzKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9OyAvLyBUb2FzdHMgYXJlIG5vdCBpbiB0aGUgdmlld3BvcnQgUmVhY3QgdHJlZSBzbyB3ZSBuZWVkIHRvIGJpbmQgRE9NIGV2ZW50c1xuICAgICAgICAgICAgdmlld3BvcnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIGhhbmRsZUtleURvd24pO1xuICAgICAgICAgICAgcmV0dXJuICgpPT52aWV3cG9ydC5yZW1vdmVFdmVudExpc3RlbmVyKCdrZXlkb3duJywgaGFuZGxlS2V5RG93bilcbiAgICAgICAgICAgIDtcbiAgICAgICAgfVxuICAgIH0sIFtcbiAgICAgICAgZ2V0SXRlbXMsXG4gICAgICAgIGdldFNvcnRlZFRhYmJhYmxlQ2FuZGlkYXRlc1xuICAgIF0pO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICRleXJZSSRjcmVhdGVFbGVtZW50KCRleXJZSSRCcmFuY2gsIHtcbiAgICAgICAgcmVmOiB3cmFwcGVyUmVmLFxuICAgICAgICByb2xlOiBcInJlZ2lvblwiLFxuICAgICAgICBcImFyaWEtbGFiZWxcIjogbGFiZWwucmVwbGFjZSgne2hvdGtleX0nLCBob3RrZXlMYWJlbCkgLy8gRW5zdXJlIHZpcnR1YWwgY3Vyc29yIGZyb20gbGFuZG1hcmtzIG1lbnVzIHRyaWdnZXJzIGZvY3VzL2JsdXIgZm9yIHBhdXNlL3Jlc3VtZVxuICAgICAgICAsXG4gICAgICAgIHRhYkluZGV4OiAtMSAvLyBpbmNhc2UgbGlzdCBoYXMgc2l6ZSB3aGVuIGVtcHR5IChlLmcuIHBhZGRpbmcpLCB3ZSByZW1vdmUgcG9pbnRlciBldmVudHMgc29cbiAgICAgICAgLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgcG9pbnRlckV2ZW50czogaGFzVG9hc3RzID8gdW5kZWZpbmVkIDogJ25vbmUnXG4gICAgICAgIH1cbiAgICB9LCBoYXNUb2FzdHMgJiYgLyojX19QVVJFX18qLyAkZXlyWUkkY3JlYXRlRWxlbWVudCgkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkRm9jdXNQcm94eSwge1xuICAgICAgICByZWY6IGhlYWRGb2N1c1Byb3h5UmVmLFxuICAgICAgICBvbkZvY3VzRnJvbU91dHNpZGVWaWV3cG9ydDogKCk9PntcbiAgICAgICAgICAgIGNvbnN0IHRhYmJhYmxlQ2FuZGlkYXRlcyA9IGdldFNvcnRlZFRhYmJhYmxlQ2FuZGlkYXRlcyh7XG4gICAgICAgICAgICAgICAgdGFiYmluZ0RpcmVjdGlvbjogJ2ZvcndhcmRzJ1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkZm9jdXNGaXJzdCh0YWJiYWJsZUNhbmRpZGF0ZXMpO1xuICAgICAgICB9XG4gICAgfSksIC8qI19fUFVSRV9fKi8gJGV5cllJJGNyZWF0ZUVsZW1lbnQoJDA1NGViODAzMGViZGU3NmUkdmFyJENvbGxlY3Rpb24uU2xvdCwge1xuICAgICAgICBzY29wZTogX19zY29wZVRvYXN0XG4gICAgfSwgLyojX19QVVJFX18qLyAkZXlyWUkkY3JlYXRlRWxlbWVudCgkZXlyWUkkUHJpbWl0aXZlLm9sLCAkZXlyWUkkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe1xuICAgICAgICB0YWJJbmRleDogLTFcbiAgICB9LCB2aWV3cG9ydFByb3BzLCB7XG4gICAgICAgIHJlZjogY29tcG9zZWRSZWZzXG4gICAgfSkpKSwgaGFzVG9hc3RzICYmIC8qI19fUFVSRV9fKi8gJGV5cllJJGNyZWF0ZUVsZW1lbnQoJDA1NGViODAzMGViZGU3NmUkdmFyJEZvY3VzUHJveHksIHtcbiAgICAgICAgcmVmOiB0YWlsRm9jdXNQcm94eVJlZixcbiAgICAgICAgb25Gb2N1c0Zyb21PdXRzaWRlVmlld3BvcnQ6ICgpPT57XG4gICAgICAgICAgICBjb25zdCB0YWJiYWJsZUNhbmRpZGF0ZXMgPSBnZXRTb3J0ZWRUYWJiYWJsZUNhbmRpZGF0ZXMoe1xuICAgICAgICAgICAgICAgIHRhYmJpbmdEaXJlY3Rpb246ICdiYWNrd2FyZHMnXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICQwNTRlYjgwMzBlYmRlNzZlJHZhciRmb2N1c0ZpcnN0KHRhYmJhYmxlQ2FuZGlkYXRlcyk7XG4gICAgICAgIH1cbiAgICB9KSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkNjE5MmMyNDI1ZWNmZDk4OSwge1xuICAgIGRpc3BsYXlOYW1lOiAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVklFV1BPUlRfTkFNRVxufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICQwNTRlYjgwMzBlYmRlNzZlJHZhciRGT0NVU19QUk9YWV9OQU1FID0gJ1RvYXN0Rm9jdXNQcm94eSc7XG5jb25zdCAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkRm9jdXNQcm94eSA9IC8qI19fUFVSRV9fKi8gJGV5cllJJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlVG9hc3Q6IF9fc2NvcGVUb2FzdCAsIG9uRm9jdXNGcm9tT3V0c2lkZVZpZXdwb3J0OiBvbkZvY3VzRnJvbU91dHNpZGVWaWV3cG9ydCAsIC4uLnByb3h5UHJvcHMgfSA9IHByb3BzO1xuICAgIGNvbnN0IGNvbnRleHQgPSAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkdXNlVG9hc3RQcm92aWRlckNvbnRleHQoJDA1NGViODAzMGViZGU3NmUkdmFyJEZPQ1VTX1BST1hZX05BTUUsIF9fc2NvcGVUb2FzdCk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJGV5cllJJGNyZWF0ZUVsZW1lbnQoJGV5cllJJFZpc3VhbGx5SGlkZGVuLCAkZXlyWUkkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe1xuICAgICAgICBcImFyaWEtaGlkZGVuXCI6IHRydWUsXG4gICAgICAgIHRhYkluZGV4OiAwXG4gICAgfSwgcHJveHlQcm9wcywge1xuICAgICAgICByZWY6IGZvcndhcmRlZFJlZiAvLyBBdm9pZCBwYWdlIHNjcm9sbGluZyB3aGVuIGZvY3VzIGlzIG9uIHRoZSBmb2N1cyBwcm94eVxuICAgICAgICAsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogJ2ZpeGVkJ1xuICAgICAgICB9LFxuICAgICAgICBvbkZvY3VzOiAoZXZlbnQpPT57XG4gICAgICAgICAgICB2YXIgX2NvbnRleHQkdmlld3BvcnQ7XG4gICAgICAgICAgICBjb25zdCBwcmV2Rm9jdXNlZEVsZW1lbnQgPSBldmVudC5yZWxhdGVkVGFyZ2V0O1xuICAgICAgICAgICAgY29uc3QgaXNGb2N1c0Zyb21PdXRzaWRlVmlld3BvcnQgPSAhKChfY29udGV4dCR2aWV3cG9ydCA9IGNvbnRleHQudmlld3BvcnQpICE9PSBudWxsICYmIF9jb250ZXh0JHZpZXdwb3J0ICE9PSB2b2lkIDAgJiYgX2NvbnRleHQkdmlld3BvcnQuY29udGFpbnMocHJldkZvY3VzZWRFbGVtZW50KSk7XG4gICAgICAgICAgICBpZiAoaXNGb2N1c0Zyb21PdXRzaWRlVmlld3BvcnQpIG9uRm9jdXNGcm9tT3V0c2lkZVZpZXdwb3J0KCk7XG4gICAgICAgIH1cbiAgICB9KSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkRm9jdXNQcm94eSwge1xuICAgIGRpc3BsYXlOYW1lOiAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkRk9DVVNfUFJPWFlfTkFNRVxufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBUb2FzdFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVE9BU1RfTkFNRSA9ICdUb2FzdCc7XG5jb25zdCAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVE9BU1RfU1dJUEVfU1RBUlQgPSAndG9hc3Quc3dpcGVTdGFydCc7XG5jb25zdCAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVE9BU1RfU1dJUEVfTU9WRSA9ICd0b2FzdC5zd2lwZU1vdmUnO1xuY29uc3QgJDA1NGViODAzMGViZGU3NmUkdmFyJFRPQVNUX1NXSVBFX0NBTkNFTCA9ICd0b2FzdC5zd2lwZUNhbmNlbCc7XG5jb25zdCAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVE9BU1RfU1dJUEVfRU5EID0gJ3RvYXN0LnN3aXBlRW5kJztcbmNvbnN0ICQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCQ4ZDhkYzdkNWY3NDMzMzFiID0gLyojX19QVVJFX18qLyAkZXlyWUkkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICBjb25zdCB7IGZvcmNlTW91bnQ6IGZvcmNlTW91bnQgLCBvcGVuOiBvcGVuUHJvcCAsIGRlZmF1bHRPcGVuOiBkZWZhdWx0T3BlbiAsIG9uT3BlbkNoYW5nZTogb25PcGVuQ2hhbmdlICwgLi4udG9hc3RQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgW29wZW4gPSB0cnVlLCBzZXRPcGVuXSA9ICRleXJZSSR1c2VDb250cm9sbGFibGVTdGF0ZSh7XG4gICAgICAgIHByb3A6IG9wZW5Qcm9wLFxuICAgICAgICBkZWZhdWx0UHJvcDogZGVmYXVsdE9wZW4sXG4gICAgICAgIG9uQ2hhbmdlOiBvbk9wZW5DaGFuZ2VcbiAgICB9KTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAkZXlyWUkkY3JlYXRlRWxlbWVudCgkZXlyWUkkUHJlc2VuY2UsIHtcbiAgICAgICAgcHJlc2VudDogZm9yY2VNb3VudCB8fCBvcGVuXG4gICAgfSwgLyojX19QVVJFX18qLyAkZXlyWUkkY3JlYXRlRWxlbWVudCgkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVG9hc3RJbXBsLCAkZXlyWUkkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe1xuICAgICAgICBvcGVuOiBvcGVuXG4gICAgfSwgdG9hc3RQcm9wcywge1xuICAgICAgICByZWY6IGZvcndhcmRlZFJlZixcbiAgICAgICAgb25DbG9zZTogKCk9PnNldE9wZW4oZmFsc2UpXG4gICAgICAgICxcbiAgICAgICAgb25QYXVzZTogJGV5cllJJHVzZUNhbGxiYWNrUmVmKHByb3BzLm9uUGF1c2UpLFxuICAgICAgICBvblJlc3VtZTogJGV5cllJJHVzZUNhbGxiYWNrUmVmKHByb3BzLm9uUmVzdW1lKSxcbiAgICAgICAgb25Td2lwZVN0YXJ0OiAkZXlyWUkkY29tcG9zZUV2ZW50SGFuZGxlcnMocHJvcHMub25Td2lwZVN0YXJ0LCAoZXZlbnQpPT57XG4gICAgICAgICAgICBldmVudC5jdXJyZW50VGFyZ2V0LnNldEF0dHJpYnV0ZSgnZGF0YS1zd2lwZScsICdzdGFydCcpO1xuICAgICAgICB9KSxcbiAgICAgICAgb25Td2lwZU1vdmU6ICRleXJZSSRjb21wb3NlRXZlbnRIYW5kbGVycyhwcm9wcy5vblN3aXBlTW92ZSwgKGV2ZW50KT0+e1xuICAgICAgICAgICAgY29uc3QgeyB4OiB4ICwgeTogeSAgfSA9IGV2ZW50LmRldGFpbC5kZWx0YTtcbiAgICAgICAgICAgIGV2ZW50LmN1cnJlbnRUYXJnZXQuc2V0QXR0cmlidXRlKCdkYXRhLXN3aXBlJywgJ21vdmUnKTtcbiAgICAgICAgICAgIGV2ZW50LmN1cnJlbnRUYXJnZXQuc3R5bGUuc2V0UHJvcGVydHkoJy0tcmFkaXgtdG9hc3Qtc3dpcGUtbW92ZS14JywgYCR7eH1weGApO1xuICAgICAgICAgICAgZXZlbnQuY3VycmVudFRhcmdldC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1yYWRpeC10b2FzdC1zd2lwZS1tb3ZlLXknLCBgJHt5fXB4YCk7XG4gICAgICAgIH0pLFxuICAgICAgICBvblN3aXBlQ2FuY2VsOiAkZXlyWUkkY29tcG9zZUV2ZW50SGFuZGxlcnMocHJvcHMub25Td2lwZUNhbmNlbCwgKGV2ZW50KT0+e1xuICAgICAgICAgICAgZXZlbnQuY3VycmVudFRhcmdldC5zZXRBdHRyaWJ1dGUoJ2RhdGEtc3dpcGUnLCAnY2FuY2VsJyk7XG4gICAgICAgICAgICBldmVudC5jdXJyZW50VGFyZ2V0LnN0eWxlLnJlbW92ZVByb3BlcnR5KCctLXJhZGl4LXRvYXN0LXN3aXBlLW1vdmUteCcpO1xuICAgICAgICAgICAgZXZlbnQuY3VycmVudFRhcmdldC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgnLS1yYWRpeC10b2FzdC1zd2lwZS1tb3ZlLXknKTtcbiAgICAgICAgICAgIGV2ZW50LmN1cnJlbnRUYXJnZXQuc3R5bGUucmVtb3ZlUHJvcGVydHkoJy0tcmFkaXgtdG9hc3Qtc3dpcGUtZW5kLXgnKTtcbiAgICAgICAgICAgIGV2ZW50LmN1cnJlbnRUYXJnZXQuc3R5bGUucmVtb3ZlUHJvcGVydHkoJy0tcmFkaXgtdG9hc3Qtc3dpcGUtZW5kLXknKTtcbiAgICAgICAgfSksXG4gICAgICAgIG9uU3dpcGVFbmQ6ICRleXJZSSRjb21wb3NlRXZlbnRIYW5kbGVycyhwcm9wcy5vblN3aXBlRW5kLCAoZXZlbnQpPT57XG4gICAgICAgICAgICBjb25zdCB7IHg6IHggLCB5OiB5ICB9ID0gZXZlbnQuZGV0YWlsLmRlbHRhO1xuICAgICAgICAgICAgZXZlbnQuY3VycmVudFRhcmdldC5zZXRBdHRyaWJ1dGUoJ2RhdGEtc3dpcGUnLCAnZW5kJyk7XG4gICAgICAgICAgICBldmVudC5jdXJyZW50VGFyZ2V0LnN0eWxlLnJlbW92ZVByb3BlcnR5KCctLXJhZGl4LXRvYXN0LXN3aXBlLW1vdmUteCcpO1xuICAgICAgICAgICAgZXZlbnQuY3VycmVudFRhcmdldC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgnLS1yYWRpeC10b2FzdC1zd2lwZS1tb3ZlLXknKTtcbiAgICAgICAgICAgIGV2ZW50LmN1cnJlbnRUYXJnZXQuc3R5bGUuc2V0UHJvcGVydHkoJy0tcmFkaXgtdG9hc3Qtc3dpcGUtZW5kLXgnLCBgJHt4fXB4YCk7XG4gICAgICAgICAgICBldmVudC5jdXJyZW50VGFyZ2V0LnN0eWxlLnNldFByb3BlcnR5KCctLXJhZGl4LXRvYXN0LXN3aXBlLWVuZC15JywgYCR7eX1weGApO1xuICAgICAgICAgICAgc2V0T3BlbihmYWxzZSk7XG4gICAgICAgIH0pXG4gICAgfSkpKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCQ4ZDhkYzdkNWY3NDMzMzFiLCB7XG4gICAgZGlzcGxheU5hbWU6ICQwNTRlYjgwMzBlYmRlNzZlJHZhciRUT0FTVF9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgWyQwNTRlYjgwMzBlYmRlNzZlJHZhciRUb2FzdEludGVyYWN0aXZlUHJvdmlkZXIsICQwNTRlYjgwMzBlYmRlNzZlJHZhciR1c2VUb2FzdEludGVyYWN0aXZlQ29udGV4dF0gPSAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkY3JlYXRlVG9hc3RDb250ZXh0KCQwNTRlYjgwMzBlYmRlNzZlJHZhciRUT0FTVF9OQU1FLCB7XG4gICAgb25DbG9zZSAoKSB7fVxufSk7XG5jb25zdCAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVG9hc3RJbXBsID0gLyojX19QVVJFX18qLyAkZXlyWUkkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICBjb25zdCB7IF9fc2NvcGVUb2FzdDogX19zY29wZVRvYXN0ICwgdHlwZTogdHlwZSA9ICdmb3JlZ3JvdW5kJyAsIGR1cmF0aW9uOiBkdXJhdGlvblByb3AgLCBvcGVuOiBvcGVuICwgb25DbG9zZTogb25DbG9zZSAsIG9uRXNjYXBlS2V5RG93bjogb25Fc2NhcGVLZXlEb3duICwgb25QYXVzZTogb25QYXVzZSAsIG9uUmVzdW1lOiBvblJlc3VtZSAsIG9uU3dpcGVTdGFydDogb25Td2lwZVN0YXJ0ICwgb25Td2lwZU1vdmU6IG9uU3dpcGVNb3ZlICwgb25Td2lwZUNhbmNlbDogb25Td2lwZUNhbmNlbCAsIG9uU3dpcGVFbmQ6IG9uU3dpcGVFbmQgLCAuLi50b2FzdFByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBjb250ZXh0ID0gJDA1NGViODAzMGViZGU3NmUkdmFyJHVzZVRvYXN0UHJvdmlkZXJDb250ZXh0KCQwNTRlYjgwMzBlYmRlNzZlJHZhciRUT0FTVF9OQU1FLCBfX3Njb3BlVG9hc3QpO1xuICAgIGNvbnN0IFtub2RlMSwgc2V0Tm9kZV0gPSAkZXlyWUkkdXNlU3RhdGUobnVsbCk7XG4gICAgY29uc3QgY29tcG9zZWRSZWZzID0gJGV5cllJJHVzZUNvbXBvc2VkUmVmcyhmb3J3YXJkZWRSZWYsIChub2RlKT0+c2V0Tm9kZShub2RlKVxuICAgICk7XG4gICAgY29uc3QgcG9pbnRlclN0YXJ0UmVmID0gJGV5cllJJHVzZVJlZihudWxsKTtcbiAgICBjb25zdCBzd2lwZURlbHRhUmVmID0gJGV5cllJJHVzZVJlZihudWxsKTtcbiAgICBjb25zdCBkdXJhdGlvbjEgPSBkdXJhdGlvblByb3AgfHwgY29udGV4dC5kdXJhdGlvbjtcbiAgICBjb25zdCBjbG9zZVRpbWVyU3RhcnRUaW1lUmVmID0gJGV5cllJJHVzZVJlZigwKTtcbiAgICBjb25zdCBjbG9zZVRpbWVyUmVtYWluaW5nVGltZVJlZiA9ICRleXJZSSR1c2VSZWYoZHVyYXRpb24xKTtcbiAgICBjb25zdCBjbG9zZVRpbWVyUmVmID0gJGV5cllJJHVzZVJlZigwKTtcbiAgICBjb25zdCB7IG9uVG9hc3RBZGQ6IG9uVG9hc3RBZGQgLCBvblRvYXN0UmVtb3ZlOiBvblRvYXN0UmVtb3ZlICB9ID0gY29udGV4dDtcbiAgICBjb25zdCBoYW5kbGVDbG9zZSA9ICRleXJZSSR1c2VDYWxsYmFja1JlZigoKT0+e1xuICAgICAgICB2YXIgX2NvbnRleHQkdmlld3BvcnQyO1xuICAgICAgICAvLyBmb2N1cyB2aWV3cG9ydCBpZiBmb2N1cyBpcyB3aXRoaW4gdG9hc3QgdG8gcmVhZCB0aGUgcmVtYWluaW5nIHRvYXN0XG4gICAgICAgIC8vIGNvdW50IHRvIFNSIHVzZXJzIGFuZCBlbnN1cmUgZm9jdXMgaXNuJ3QgbG9zdFxuICAgICAgICBjb25zdCBpc0ZvY3VzSW5Ub2FzdCA9IG5vZGUxID09PSBudWxsIHx8IG5vZGUxID09PSB2b2lkIDAgPyB2b2lkIDAgOiBub2RlMS5jb250YWlucyhkb2N1bWVudC5hY3RpdmVFbGVtZW50KTtcbiAgICAgICAgaWYgKGlzRm9jdXNJblRvYXN0KSAoX2NvbnRleHQkdmlld3BvcnQyID0gY29udGV4dC52aWV3cG9ydCkgPT09IG51bGwgfHwgX2NvbnRleHQkdmlld3BvcnQyID09PSB2b2lkIDAgfHwgX2NvbnRleHQkdmlld3BvcnQyLmZvY3VzKCk7XG4gICAgICAgIG9uQ2xvc2UoKTtcbiAgICB9KTtcbiAgICBjb25zdCBzdGFydFRpbWVyID0gJGV5cllJJHVzZUNhbGxiYWNrKChkdXJhdGlvbik9PntcbiAgICAgICAgaWYgKCFkdXJhdGlvbiB8fCBkdXJhdGlvbiA9PT0gSW5maW5pdHkpIHJldHVybjtcbiAgICAgICAgd2luZG93LmNsZWFyVGltZW91dChjbG9zZVRpbWVyUmVmLmN1cnJlbnQpO1xuICAgICAgICBjbG9zZVRpbWVyU3RhcnRUaW1lUmVmLmN1cnJlbnQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbiAgICAgICAgY2xvc2VUaW1lclJlZi5jdXJyZW50ID0gd2luZG93LnNldFRpbWVvdXQoaGFuZGxlQ2xvc2UsIGR1cmF0aW9uKTtcbiAgICB9LCBbXG4gICAgICAgIGhhbmRsZUNsb3NlXG4gICAgXSk7XG4gICAgJGV5cllJJHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBjb25zdCB2aWV3cG9ydCA9IGNvbnRleHQudmlld3BvcnQ7XG4gICAgICAgIGlmICh2aWV3cG9ydCkge1xuICAgICAgICAgICAgY29uc3QgaGFuZGxlUmVzdW1lID0gKCk9PntcbiAgICAgICAgICAgICAgICBzdGFydFRpbWVyKGNsb3NlVGltZXJSZW1haW5pbmdUaW1lUmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgICAgIG9uUmVzdW1lID09PSBudWxsIHx8IG9uUmVzdW1lID09PSB2b2lkIDAgfHwgb25SZXN1bWUoKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBjb25zdCBoYW5kbGVQYXVzZSA9ICgpPT57XG4gICAgICAgICAgICAgICAgY29uc3QgZWxhcHNlZFRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKSAtIGNsb3NlVGltZXJTdGFydFRpbWVSZWYuY3VycmVudDtcbiAgICAgICAgICAgICAgICBjbG9zZVRpbWVyUmVtYWluaW5nVGltZVJlZi5jdXJyZW50ID0gY2xvc2VUaW1lclJlbWFpbmluZ1RpbWVSZWYuY3VycmVudCAtIGVsYXBzZWRUaW1lO1xuICAgICAgICAgICAgICAgIHdpbmRvdy5jbGVhclRpbWVvdXQoY2xvc2VUaW1lclJlZi5jdXJyZW50KTtcbiAgICAgICAgICAgICAgICBvblBhdXNlID09PSBudWxsIHx8IG9uUGF1c2UgPT09IHZvaWQgMCB8fCBvblBhdXNlKCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgdmlld3BvcnQuYWRkRXZlbnRMaXN0ZW5lcigkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVklFV1BPUlRfUEFVU0UsIGhhbmRsZVBhdXNlKTtcbiAgICAgICAgICAgIHZpZXdwb3J0LmFkZEV2ZW50TGlzdGVuZXIoJDA1NGViODAzMGViZGU3NmUkdmFyJFZJRVdQT1JUX1JFU1VNRSwgaGFuZGxlUmVzdW1lKTtcbiAgICAgICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgICAgIHZpZXdwb3J0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJDA1NGViODAzMGViZGU3NmUkdmFyJFZJRVdQT1JUX1BBVVNFLCBoYW5kbGVQYXVzZSk7XG4gICAgICAgICAgICAgICAgdmlld3BvcnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVklFV1BPUlRfUkVTVU1FLCBoYW5kbGVSZXN1bWUpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH0sIFtcbiAgICAgICAgY29udGV4dC52aWV3cG9ydCxcbiAgICAgICAgZHVyYXRpb24xLFxuICAgICAgICBvblBhdXNlLFxuICAgICAgICBvblJlc3VtZSxcbiAgICAgICAgc3RhcnRUaW1lclxuICAgIF0pOyAvLyBzdGFydCB0aW1lciB3aGVuIHRvYXN0IG9wZW5zIG9yIGR1cmF0aW9uIGNoYW5nZXMuXG4gICAgLy8gd2UgaW5jbHVkZSBgb3BlbmAgaW4gZGVwcyBiZWNhdXNlIGNsb3NlZCAhPT0gdW5tb3VudGVkIHdoZW4gYW5pbWF0aW5nXG4gICAgLy8gc28gaXQgY291bGQgcmVvcGVuIGJlZm9yZSBiZWluZyBjb21wbGV0ZWx5IHVubW91bnRlZFxuICAgICRleXJZSSR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgaWYgKG9wZW4gJiYgIWNvbnRleHQuaXNDbG9zZVBhdXNlZFJlZi5jdXJyZW50KSBzdGFydFRpbWVyKGR1cmF0aW9uMSk7XG4gICAgfSwgW1xuICAgICAgICBvcGVuLFxuICAgICAgICBkdXJhdGlvbjEsXG4gICAgICAgIGNvbnRleHQuaXNDbG9zZVBhdXNlZFJlZixcbiAgICAgICAgc3RhcnRUaW1lclxuICAgIF0pO1xuICAgICRleXJZSSR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgb25Ub2FzdEFkZCgpO1xuICAgICAgICByZXR1cm4gKCk9Pm9uVG9hc3RSZW1vdmUoKVxuICAgICAgICA7XG4gICAgfSwgW1xuICAgICAgICBvblRvYXN0QWRkLFxuICAgICAgICBvblRvYXN0UmVtb3ZlXG4gICAgXSk7XG4gICAgY29uc3QgYW5ub3VuY2VUZXh0Q29udGVudCA9ICRleXJZSSR1c2VNZW1vKCgpPT57XG4gICAgICAgIHJldHVybiBub2RlMSA/ICQwNTRlYjgwMzBlYmRlNzZlJHZhciRnZXRBbm5vdW5jZVRleHRDb250ZW50KG5vZGUxKSA6IG51bGw7XG4gICAgfSwgW1xuICAgICAgICBub2RlMVxuICAgIF0pO1xuICAgIGlmICghY29udGV4dC52aWV3cG9ydCkgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJGV5cllJJGNyZWF0ZUVsZW1lbnQoJGV5cllJJEZyYWdtZW50LCBudWxsLCBhbm5vdW5jZVRleHRDb250ZW50ICYmIC8qI19fUFVSRV9fKi8gJGV5cllJJGNyZWF0ZUVsZW1lbnQoJDA1NGViODAzMGViZGU3NmUkdmFyJFRvYXN0QW5ub3VuY2UsIHtcbiAgICAgICAgX19zY29wZVRvYXN0OiBfX3Njb3BlVG9hc3QgLy8gVG9hc3RzIGFyZSBhbHdheXMgcm9sZT1zdGF0dXMgdG8gYXZvaWQgc3R1dHRlcmluZyBpc3N1ZXMgd2l0aCByb2xlPWFsZXJ0IGluIFNScy5cbiAgICAgICAgLFxuICAgICAgICByb2xlOiBcInN0YXR1c1wiLFxuICAgICAgICBcImFyaWEtbGl2ZVwiOiB0eXBlID09PSAnZm9yZWdyb3VuZCcgPyAnYXNzZXJ0aXZlJyA6ICdwb2xpdGUnLFxuICAgICAgICBcImFyaWEtYXRvbWljXCI6IHRydWVcbiAgICB9LCBhbm5vdW5jZVRleHRDb250ZW50KSwgLyojX19QVVJFX18qLyAkZXlyWUkkY3JlYXRlRWxlbWVudCgkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVG9hc3RJbnRlcmFjdGl2ZVByb3ZpZGVyLCB7XG4gICAgICAgIHNjb3BlOiBfX3Njb3BlVG9hc3QsXG4gICAgICAgIG9uQ2xvc2U6IGhhbmRsZUNsb3NlXG4gICAgfSwgLyojX19QVVJFX18qLyAkZXlyWUkkY3JlYXRlUG9ydGFsKC8qI19fUFVSRV9fKi8gJGV5cllJJGNyZWF0ZUVsZW1lbnQoJDA1NGViODAzMGViZGU3NmUkdmFyJENvbGxlY3Rpb24uSXRlbVNsb3QsIHtcbiAgICAgICAgc2NvcGU6IF9fc2NvcGVUb2FzdFxuICAgIH0sIC8qI19fUFVSRV9fKi8gJGV5cllJJGNyZWF0ZUVsZW1lbnQoJGV5cllJJFJvb3QsIHtcbiAgICAgICAgYXNDaGlsZDogdHJ1ZSxcbiAgICAgICAgb25Fc2NhcGVLZXlEb3duOiAkZXlyWUkkY29tcG9zZUV2ZW50SGFuZGxlcnMob25Fc2NhcGVLZXlEb3duLCAoKT0+e1xuICAgICAgICAgICAgaWYgKCFjb250ZXh0LmlzRm9jdXNlZFRvYXN0RXNjYXBlS2V5RG93blJlZi5jdXJyZW50KSBoYW5kbGVDbG9zZSgpO1xuICAgICAgICAgICAgY29udGV4dC5pc0ZvY3VzZWRUb2FzdEVzY2FwZUtleURvd25SZWYuY3VycmVudCA9IGZhbHNlO1xuICAgICAgICB9KVxuICAgIH0sIC8qI19fUFVSRV9fKi8gJGV5cllJJGNyZWF0ZUVsZW1lbnQoJGV5cllJJFByaW1pdGl2ZS5saSwgJGV5cllJJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHtcbiAgICAgICAgLy8gRW5zdXJlIHRvYXN0cyBhcmUgYW5ub3VuY2VkIGFzIHN0YXR1cyBsaXN0IG9yIHN0YXR1cyB3aGVuIGZvY3VzZWRcbiAgICAgICAgcm9sZTogXCJzdGF0dXNcIixcbiAgICAgICAgXCJhcmlhLWxpdmVcIjogXCJvZmZcIixcbiAgICAgICAgXCJhcmlhLWF0b21pY1wiOiB0cnVlLFxuICAgICAgICB0YWJJbmRleDogMCxcbiAgICAgICAgXCJkYXRhLXN0YXRlXCI6IG9wZW4gPyAnb3BlbicgOiAnY2xvc2VkJyxcbiAgICAgICAgXCJkYXRhLXN3aXBlLWRpcmVjdGlvblwiOiBjb250ZXh0LnN3aXBlRGlyZWN0aW9uXG4gICAgfSwgdG9hc3RQcm9wcywge1xuICAgICAgICByZWY6IGNvbXBvc2VkUmVmcyxcbiAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgIHVzZXJTZWxlY3Q6ICdub25lJyxcbiAgICAgICAgICAgIHRvdWNoQWN0aW9uOiAnbm9uZScsXG4gICAgICAgICAgICAuLi5wcm9wcy5zdHlsZVxuICAgICAgICB9LFxuICAgICAgICBvbktleURvd246ICRleXJZSSRjb21wb3NlRXZlbnRIYW5kbGVycyhwcm9wcy5vbktleURvd24sIChldmVudCk9PntcbiAgICAgICAgICAgIGlmIChldmVudC5rZXkgIT09ICdFc2NhcGUnKSByZXR1cm47XG4gICAgICAgICAgICBvbkVzY2FwZUtleURvd24gPT09IG51bGwgfHwgb25Fc2NhcGVLZXlEb3duID09PSB2b2lkIDAgfHwgb25Fc2NhcGVLZXlEb3duKGV2ZW50Lm5hdGl2ZUV2ZW50KTtcbiAgICAgICAgICAgIGlmICghZXZlbnQubmF0aXZlRXZlbnQuZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgICAgICAgICAgIGNvbnRleHQuaXNGb2N1c2VkVG9hc3RFc2NhcGVLZXlEb3duUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGhhbmRsZUNsb3NlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgICBvblBvaW50ZXJEb3duOiAkZXlyWUkkY29tcG9zZUV2ZW50SGFuZGxlcnMocHJvcHMub25Qb2ludGVyRG93biwgKGV2ZW50KT0+e1xuICAgICAgICAgICAgaWYgKGV2ZW50LmJ1dHRvbiAhPT0gMCkgcmV0dXJuO1xuICAgICAgICAgICAgcG9pbnRlclN0YXJ0UmVmLmN1cnJlbnQgPSB7XG4gICAgICAgICAgICAgICAgeDogZXZlbnQuY2xpZW50WCxcbiAgICAgICAgICAgICAgICB5OiBldmVudC5jbGllbnRZXG4gICAgICAgICAgICB9O1xuICAgICAgICB9KSxcbiAgICAgICAgb25Qb2ludGVyTW92ZTogJGV5cllJJGNvbXBvc2VFdmVudEhhbmRsZXJzKHByb3BzLm9uUG9pbnRlck1vdmUsIChldmVudCk9PntcbiAgICAgICAgICAgIGlmICghcG9pbnRlclN0YXJ0UmVmLmN1cnJlbnQpIHJldHVybjtcbiAgICAgICAgICAgIGNvbnN0IHggPSBldmVudC5jbGllbnRYIC0gcG9pbnRlclN0YXJ0UmVmLmN1cnJlbnQueDtcbiAgICAgICAgICAgIGNvbnN0IHkgPSBldmVudC5jbGllbnRZIC0gcG9pbnRlclN0YXJ0UmVmLmN1cnJlbnQueTtcbiAgICAgICAgICAgIGNvbnN0IGhhc1N3aXBlTW92ZVN0YXJ0ZWQgPSBCb29sZWFuKHN3aXBlRGVsdGFSZWYuY3VycmVudCk7XG4gICAgICAgICAgICBjb25zdCBpc0hvcml6b250YWxTd2lwZSA9IFtcbiAgICAgICAgICAgICAgICAnbGVmdCcsXG4gICAgICAgICAgICAgICAgJ3JpZ2h0J1xuICAgICAgICAgICAgXS5pbmNsdWRlcyhjb250ZXh0LnN3aXBlRGlyZWN0aW9uKTtcbiAgICAgICAgICAgIGNvbnN0IGNsYW1wID0gW1xuICAgICAgICAgICAgICAgICdsZWZ0JyxcbiAgICAgICAgICAgICAgICAndXAnXG4gICAgICAgICAgICBdLmluY2x1ZGVzKGNvbnRleHQuc3dpcGVEaXJlY3Rpb24pID8gTWF0aC5taW4gOiBNYXRoLm1heDtcbiAgICAgICAgICAgIGNvbnN0IGNsYW1wZWRYID0gaXNIb3Jpem9udGFsU3dpcGUgPyBjbGFtcCgwLCB4KSA6IDA7XG4gICAgICAgICAgICBjb25zdCBjbGFtcGVkWSA9ICFpc0hvcml6b250YWxTd2lwZSA/IGNsYW1wKDAsIHkpIDogMDtcbiAgICAgICAgICAgIGNvbnN0IG1vdmVTdGFydEJ1ZmZlciA9IGV2ZW50LnBvaW50ZXJUeXBlID09PSAndG91Y2gnID8gMTAgOiAyO1xuICAgICAgICAgICAgY29uc3QgZGVsdGEgPSB7XG4gICAgICAgICAgICAgICAgeDogY2xhbXBlZFgsXG4gICAgICAgICAgICAgICAgeTogY2xhbXBlZFlcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBjb25zdCBldmVudERldGFpbCA9IHtcbiAgICAgICAgICAgICAgICBvcmlnaW5hbEV2ZW50OiBldmVudCxcbiAgICAgICAgICAgICAgICBkZWx0YTogZGVsdGFcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBpZiAoaGFzU3dpcGVNb3ZlU3RhcnRlZCkge1xuICAgICAgICAgICAgICAgIHN3aXBlRGVsdGFSZWYuY3VycmVudCA9IGRlbHRhO1xuICAgICAgICAgICAgICAgICQwNTRlYjgwMzBlYmRlNzZlJHZhciRoYW5kbGVBbmREaXNwYXRjaEN1c3RvbUV2ZW50KCQwNTRlYjgwMzBlYmRlNzZlJHZhciRUT0FTVF9TV0lQRV9NT1ZFLCBvblN3aXBlTW92ZSwgZXZlbnREZXRhaWwsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzY3JldGU6IGZhbHNlXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKCQwNTRlYjgwMzBlYmRlNzZlJHZhciRpc0RlbHRhSW5EaXJlY3Rpb24oZGVsdGEsIGNvbnRleHQuc3dpcGVEaXJlY3Rpb24sIG1vdmVTdGFydEJ1ZmZlcikpIHtcbiAgICAgICAgICAgICAgICBzd2lwZURlbHRhUmVmLmN1cnJlbnQgPSBkZWx0YTtcbiAgICAgICAgICAgICAgICAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkaGFuZGxlQW5kRGlzcGF0Y2hDdXN0b21FdmVudCgkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVE9BU1RfU1dJUEVfU1RBUlQsIG9uU3dpcGVTdGFydCwgZXZlbnREZXRhaWwsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzY3JldGU6IGZhbHNlXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgZXZlbnQudGFyZ2V0LnNldFBvaW50ZXJDYXB0dXJlKGV2ZW50LnBvaW50ZXJJZCk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKE1hdGguYWJzKHgpID4gbW92ZVN0YXJ0QnVmZmVyIHx8IE1hdGguYWJzKHkpID4gbW92ZVN0YXJ0QnVmZmVyKSAvLyBVc2VyIGlzIHN3aXBpbmcgaW4gd3JvbmcgZGlyZWN0aW9uIHNvIHdlIGRpc2FibGUgc3dpcGUgZ2VzdHVyZVxuICAgICAgICAgICAgLy8gZm9yIHRoZSBjdXJyZW50IHBvaW50ZXIgZG93biBpbnRlcmFjdGlvblxuICAgICAgICAgICAgcG9pbnRlclN0YXJ0UmVmLmN1cnJlbnQgPSBudWxsO1xuICAgICAgICB9KSxcbiAgICAgICAgb25Qb2ludGVyVXA6ICRleXJZSSRjb21wb3NlRXZlbnRIYW5kbGVycyhwcm9wcy5vblBvaW50ZXJVcCwgKGV2ZW50MSk9PntcbiAgICAgICAgICAgIGNvbnN0IGRlbHRhID0gc3dpcGVEZWx0YVJlZi5jdXJyZW50O1xuICAgICAgICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQxLnRhcmdldDtcbiAgICAgICAgICAgIGlmICh0YXJnZXQuaGFzUG9pbnRlckNhcHR1cmUoZXZlbnQxLnBvaW50ZXJJZCkpIHRhcmdldC5yZWxlYXNlUG9pbnRlckNhcHR1cmUoZXZlbnQxLnBvaW50ZXJJZCk7XG4gICAgICAgICAgICBzd2lwZURlbHRhUmVmLmN1cnJlbnQgPSBudWxsO1xuICAgICAgICAgICAgcG9pbnRlclN0YXJ0UmVmLmN1cnJlbnQgPSBudWxsO1xuICAgICAgICAgICAgaWYgKGRlbHRhKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdG9hc3QgPSBldmVudDEuY3VycmVudFRhcmdldDtcbiAgICAgICAgICAgICAgICBjb25zdCBldmVudERldGFpbCA9IHtcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luYWxFdmVudDogZXZlbnQxLFxuICAgICAgICAgICAgICAgICAgICBkZWx0YTogZGVsdGFcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGlmICgkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkaXNEZWx0YUluRGlyZWN0aW9uKGRlbHRhLCBjb250ZXh0LnN3aXBlRGlyZWN0aW9uLCBjb250ZXh0LnN3aXBlVGhyZXNob2xkKSkgJDA1NGViODAzMGViZGU3NmUkdmFyJGhhbmRsZUFuZERpc3BhdGNoQ3VzdG9tRXZlbnQoJDA1NGViODAzMGViZGU3NmUkdmFyJFRPQVNUX1NXSVBFX0VORCwgb25Td2lwZUVuZCwgZXZlbnREZXRhaWwsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzY3JldGU6IHRydWVcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBlbHNlICQwNTRlYjgwMzBlYmRlNzZlJHZhciRoYW5kbGVBbmREaXNwYXRjaEN1c3RvbUV2ZW50KCQwNTRlYjgwMzBlYmRlNzZlJHZhciRUT0FTVF9TV0lQRV9DQU5DRUwsIG9uU3dpcGVDYW5jZWwsIGV2ZW50RGV0YWlsLCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc2NyZXRlOiB0cnVlXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgIC8vIFByZXZlbnQgY2xpY2sgZXZlbnQgZnJvbSB0cmlnZ2VyaW5nIG9uIGl0ZW1zIHdpdGhpbiB0aGUgdG9hc3Qgd2hlblxuICAgICAgICAgICAgICAgIC8vIHBvaW50ZXIgdXAgaXMgcGFydCBvZiBhIHN3aXBlIGdlc3R1cmVcbiAgICAgICAgICAgICAgICB0b2FzdC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIChldmVudCk9PmV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgICAgICAgICAgICAsIHtcbiAgICAgICAgICAgICAgICAgICAgb25jZTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH0pKSkpLCBjb250ZXh0LnZpZXdwb3J0KSkpO1xufSk7XG4kMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVG9hc3RJbXBsLnByb3BUeXBlcyA9IHtcbiAgICB0eXBlIChwcm9wcykge1xuICAgICAgICBpZiAocHJvcHMudHlwZSAmJiAhW1xuICAgICAgICAgICAgJ2ZvcmVncm91bmQnLFxuICAgICAgICAgICAgJ2JhY2tncm91bmQnXG4gICAgICAgIF0uaW5jbHVkZXMocHJvcHMudHlwZSkpIHtcbiAgICAgICAgICAgIGNvbnN0IGVycm9yID0gYEludmFsaWQgcHJvcCBcXGB0eXBlXFxgIHN1cHBsaWVkIHRvIFxcYCR7JDA1NGViODAzMGViZGU3NmUkdmFyJFRPQVNUX05BTUV9XFxgLiBFeHBlY3RlZCBcXGBmb3JlZ3JvdW5kIHwgYmFja2dyb3VuZFxcYC5gO1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBFcnJvcihlcnJvcik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxufTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDA1NGViODAzMGViZGU3NmUkdmFyJFRvYXN0QW5ub3VuY2UgPSAocHJvcHMpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlVG9hc3Q6IF9fc2NvcGVUb2FzdCAsIGNoaWxkcmVuOiBjaGlsZHJlbiAsIC4uLmFubm91bmNlUHJvcHMgfSA9IHByb3BzO1xuICAgIGNvbnN0IGNvbnRleHQgPSAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkdXNlVG9hc3RQcm92aWRlckNvbnRleHQoJDA1NGViODAzMGViZGU3NmUkdmFyJFRPQVNUX05BTUUsIF9fc2NvcGVUb2FzdCk7XG4gICAgY29uc3QgW3JlbmRlckFubm91bmNlVGV4dCwgc2V0UmVuZGVyQW5ub3VuY2VUZXh0XSA9ICRleXJZSSR1c2VTdGF0ZShmYWxzZSk7XG4gICAgY29uc3QgW2lzQW5ub3VuY2VkLCBzZXRJc0Fubm91bmNlZF0gPSAkZXlyWUkkdXNlU3RhdGUoZmFsc2UpOyAvLyByZW5kZXIgdGV4dCBjb250ZW50IGluIHRoZSBuZXh0IGZyYW1lIHRvIGVuc3VyZSB0b2FzdCBpcyBhbm5vdW5jZWQgaW4gTlZEQVxuICAgICQwNTRlYjgwMzBlYmRlNzZlJHZhciR1c2VOZXh0RnJhbWUoKCk9PnNldFJlbmRlckFubm91bmNlVGV4dCh0cnVlKVxuICAgICk7IC8vIGNsZWFudXAgYWZ0ZXIgYW5ub3VuY2luZ1xuICAgICRleXJZSSR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgY29uc3QgdGltZXIgPSB3aW5kb3cuc2V0VGltZW91dCgoKT0+c2V0SXNBbm5vdW5jZWQodHJ1ZSlcbiAgICAgICAgLCAxMDAwKTtcbiAgICAgICAgcmV0dXJuICgpPT53aW5kb3cuY2xlYXJUaW1lb3V0KHRpbWVyKVxuICAgICAgICA7XG4gICAgfSwgW10pO1xuICAgIHJldHVybiBpc0Fubm91bmNlZCA/IG51bGwgOiAvKiNfX1BVUkVfXyovICRleXJZSSRjcmVhdGVFbGVtZW50KCRleXJZSSRQb3J0YWwsIHtcbiAgICAgICAgYXNDaGlsZDogdHJ1ZVxuICAgIH0sIC8qI19fUFVSRV9fKi8gJGV5cllJJGNyZWF0ZUVsZW1lbnQoJGV5cllJJFZpc3VhbGx5SGlkZGVuLCBhbm5vdW5jZVByb3BzLCByZW5kZXJBbm5vdW5jZVRleHQgJiYgLyojX19QVVJFX18qLyAkZXlyWUkkY3JlYXRlRWxlbWVudCgkZXlyWUkkRnJhZ21lbnQsIG51bGwsIGNvbnRleHQubGFiZWwsIFwiIFwiLCBjaGlsZHJlbikpKTtcbn07XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBUb2FzdFRpdGxlXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICQwNTRlYjgwMzBlYmRlNzZlJHZhciRUSVRMRV9OQU1FID0gJ1RvYXN0VGl0bGUnO1xuY29uc3QgJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JDE2ZDQyZDdjMjliOTVhNCA9IC8qI19fUFVSRV9fKi8gJGV5cllJJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlVG9hc3Q6IF9fc2NvcGVUb2FzdCAsIC4uLnRpdGxlUHJvcHMgfSA9IHByb3BzO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICRleXJZSSRjcmVhdGVFbGVtZW50KCRleXJZSSRQcmltaXRpdmUuZGl2LCAkZXlyWUkkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIHRpdGxlUHJvcHMsIHtcbiAgICAgICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgICB9KSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkMTZkNDJkN2MyOWI5NWE0LCB7XG4gICAgZGlzcGxheU5hbWU6ICQwNTRlYjgwMzBlYmRlNzZlJHZhciRUSVRMRV9OQU1FXG59KTtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFRvYXN0RGVzY3JpcHRpb25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gY29uc3QgJDA1NGViODAzMGViZGU3NmUkdmFyJERFU0NSSVBUSU9OX05BTUUgPSAnVG9hc3REZXNjcmlwdGlvbic7XG5jb25zdCAkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkZWNkZGQ5NmM1MzYyMWQ5YSA9IC8qI19fUFVSRV9fKi8gJGV5cllJJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlVG9hc3Q6IF9fc2NvcGVUb2FzdCAsIC4uLmRlc2NyaXB0aW9uUHJvcHMgfSA9IHByb3BzO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICRleXJZSSRjcmVhdGVFbGVtZW50KCRleXJZSSRQcmltaXRpdmUuZGl2LCAkZXlyWUkkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIGRlc2NyaXB0aW9uUHJvcHMsIHtcbiAgICAgICAgcmVmOiBmb3J3YXJkZWRSZWZcbiAgICB9KSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkZWNkZGQ5NmM1MzYyMWQ5YSwge1xuICAgIGRpc3BsYXlOYW1lOiAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkREVTQ1JJUFRJT05fTkFNRVxufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBUb2FzdEFjdGlvblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkQUNUSU9OX05BTUUgPSAnVG9hc3RBY3Rpb24nO1xuY29uc3QgJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JDMwMTlmZWVjZmRhNjgzZDIgPSAvKiNfX1BVUkVfXyovICRleXJZSSRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgYWx0VGV4dDogYWx0VGV4dCAsIC4uLmFjdGlvblByb3BzIH0gPSBwcm9wcztcbiAgICBpZiAoIWFsdFRleHQpIHJldHVybiBudWxsO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICRleXJZSSRjcmVhdGVFbGVtZW50KCQwNTRlYjgwMzBlYmRlNzZlJHZhciRUb2FzdEFubm91bmNlRXhjbHVkZSwge1xuICAgICAgICBhbHRUZXh0OiBhbHRUZXh0LFxuICAgICAgICBhc0NoaWxkOiB0cnVlXG4gICAgfSwgLyojX19QVVJFX18qLyAkZXlyWUkkY3JlYXRlRWxlbWVudCgkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkODExZTcwZjYxYzIwNTgzOSwgJGV5cllJJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBhY3Rpb25Qcm9wcywge1xuICAgICAgICByZWY6IGZvcndhcmRlZFJlZlxuICAgIH0pKSk7XG59KTtcbiQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCQzMDE5ZmVlY2ZkYTY4M2QyLnByb3BUeXBlcyA9IHtcbiAgICBhbHRUZXh0IChwcm9wcykge1xuICAgICAgICBpZiAoIXByb3BzLmFsdFRleHQpIHJldHVybiBuZXcgRXJyb3IoYE1pc3NpbmcgcHJvcCBcXGBhbHRUZXh0XFxgIGV4cGVjdGVkIG9uIFxcYCR7JDA1NGViODAzMGViZGU3NmUkdmFyJEFDVElPTl9OQU1FfVxcYGApO1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG59O1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCQzMDE5ZmVlY2ZkYTY4M2QyLCB7XG4gICAgZGlzcGxheU5hbWU6ICQwNTRlYjgwMzBlYmRlNzZlJHZhciRBQ1RJT05fTkFNRVxufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBUb2FzdENsb3NlXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICQwNTRlYjgwMzBlYmRlNzZlJHZhciRDTE9TRV9OQU1FID0gJ1RvYXN0Q2xvc2UnO1xuY29uc3QgJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JDgxMWU3MGY2MWMyMDU4MzkgPSAvKiNfX1BVUkVfXyovICRleXJZSSRmb3J3YXJkUmVmKChwcm9wcywgZm9yd2FyZGVkUmVmKT0+e1xuICAgIGNvbnN0IHsgX19zY29wZVRvYXN0OiBfX3Njb3BlVG9hc3QgLCAuLi5jbG9zZVByb3BzIH0gPSBwcm9wcztcbiAgICBjb25zdCBpbnRlcmFjdGl2ZUNvbnRleHQgPSAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkdXNlVG9hc3RJbnRlcmFjdGl2ZUNvbnRleHQoJDA1NGViODAzMGViZGU3NmUkdmFyJENMT1NFX05BTUUsIF9fc2NvcGVUb2FzdCk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJGV5cllJJGNyZWF0ZUVsZW1lbnQoJDA1NGViODAzMGViZGU3NmUkdmFyJFRvYXN0QW5ub3VuY2VFeGNsdWRlLCB7XG4gICAgICAgIGFzQ2hpbGQ6IHRydWVcbiAgICB9LCAvKiNfX1BVUkVfXyovICRleXJZSSRjcmVhdGVFbGVtZW50KCRleXJZSSRQcmltaXRpdmUuYnV0dG9uLCAkZXlyWUkkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe1xuICAgICAgICB0eXBlOiBcImJ1dHRvblwiXG4gICAgfSwgY2xvc2VQcm9wcywge1xuICAgICAgICByZWY6IGZvcndhcmRlZFJlZixcbiAgICAgICAgb25DbGljazogJGV5cllJJGNvbXBvc2VFdmVudEhhbmRsZXJzKHByb3BzLm9uQ2xpY2ssIGludGVyYWN0aXZlQ29udGV4dC5vbkNsb3NlKVxuICAgIH0pKSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkODExZTcwZjYxYzIwNTgzOSwge1xuICAgIGRpc3BsYXlOYW1lOiAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkQ0xPU0VfTkFNRVxufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovIGNvbnN0ICQwNTRlYjgwMzBlYmRlNzZlJHZhciRUb2FzdEFubm91bmNlRXhjbHVkZSA9IC8qI19fUFVSRV9fKi8gJGV5cllJJGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgY29uc3QgeyBfX3Njb3BlVG9hc3Q6IF9fc2NvcGVUb2FzdCAsIGFsdFRleHQ6IGFsdFRleHQgLCAuLi5hbm5vdW5jZUV4Y2x1ZGVQcm9wcyB9ID0gcHJvcHM7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJGV5cllJJGNyZWF0ZUVsZW1lbnQoJGV5cllJJFByaW1pdGl2ZS5kaXYsICRleXJZSSRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyh7XG4gICAgICAgIFwiZGF0YS1yYWRpeC10b2FzdC1hbm5vdW5jZS1leGNsdWRlXCI6IFwiXCIsXG4gICAgICAgIFwiZGF0YS1yYWRpeC10b2FzdC1hbm5vdW5jZS1hbHRcIjogYWx0VGV4dCB8fCB1bmRlZmluZWRcbiAgICB9LCBhbm5vdW5jZUV4Y2x1ZGVQcm9wcywge1xuICAgICAgICByZWY6IGZvcndhcmRlZFJlZlxuICAgIH0pKTtcbn0pO1xuZnVuY3Rpb24gJDA1NGViODAzMGViZGU3NmUkdmFyJGdldEFubm91bmNlVGV4dENvbnRlbnQoY29udGFpbmVyKSB7XG4gICAgY29uc3QgdGV4dENvbnRlbnQgPSBbXTtcbiAgICBjb25zdCBjaGlsZE5vZGVzID0gQXJyYXkuZnJvbShjb250YWluZXIuY2hpbGROb2Rlcyk7XG4gICAgY2hpbGROb2Rlcy5mb3JFYWNoKChub2RlKT0+e1xuICAgICAgICBpZiAobm9kZS5ub2RlVHlwZSA9PT0gbm9kZS5URVhUX05PREUgJiYgbm9kZS50ZXh0Q29udGVudCkgdGV4dENvbnRlbnQucHVzaChub2RlLnRleHRDb250ZW50KTtcbiAgICAgICAgaWYgKCQwNTRlYjgwMzBlYmRlNzZlJHZhciRpc0hUTUxFbGVtZW50KG5vZGUpKSB7XG4gICAgICAgICAgICBjb25zdCBpc0hpZGRlbiA9IG5vZGUuYXJpYUhpZGRlbiB8fCBub2RlLmhpZGRlbiB8fCBub2RlLnN0eWxlLmRpc3BsYXkgPT09ICdub25lJztcbiAgICAgICAgICAgIGNvbnN0IGlzRXhjbHVkZWQgPSBub2RlLmRhdGFzZXQucmFkaXhUb2FzdEFubm91bmNlRXhjbHVkZSA9PT0gJyc7XG4gICAgICAgICAgICBpZiAoIWlzSGlkZGVuKSB7XG4gICAgICAgICAgICAgICAgaWYgKGlzRXhjbHVkZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYWx0VGV4dCA9IG5vZGUuZGF0YXNldC5yYWRpeFRvYXN0QW5ub3VuY2VBbHQ7XG4gICAgICAgICAgICAgICAgICAgIGlmIChhbHRUZXh0KSB0ZXh0Q29udGVudC5wdXNoKGFsdFRleHQpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB0ZXh0Q29udGVudC5wdXNoKC4uLiQwNTRlYjgwMzBlYmRlNzZlJHZhciRnZXRBbm5vdW5jZVRleHRDb250ZW50KG5vZGUpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0pOyAvLyBXZSByZXR1cm4gYSBjb2xsZWN0aW9uIG9mIHRleHQgcmF0aGVyIHRoYW4gYSBzaW5nbGUgY29uY2F0ZW5hdGVkIHN0cmluZy5cbiAgICAvLyBUaGlzIGFsbG93cyBTUiBWTyB0byBuYXR1cmFsbHkgcGF1c2UgYnJlYWsgYmV0d2VlbiBub2RlcyB3aGlsZSBhbm5vdW5jaW5nLlxuICAgIHJldHVybiB0ZXh0Q29udGVudDtcbn1cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8gZnVuY3Rpb24gJDA1NGViODAzMGViZGU3NmUkdmFyJGhhbmRsZUFuZERpc3BhdGNoQ3VzdG9tRXZlbnQobmFtZSwgaGFuZGxlciwgZGV0YWlsLCB7IGRpc2NyZXRlOiBkaXNjcmV0ZSAgfSkge1xuICAgIGNvbnN0IGN1cnJlbnRUYXJnZXQgPSBkZXRhaWwub3JpZ2luYWxFdmVudC5jdXJyZW50VGFyZ2V0O1xuICAgIGNvbnN0IGV2ZW50ID0gbmV3IEN1c3RvbUV2ZW50KG5hbWUsIHtcbiAgICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgICAgY2FuY2VsYWJsZTogdHJ1ZSxcbiAgICAgICAgZGV0YWlsOiBkZXRhaWxcbiAgICB9KTtcbiAgICBpZiAoaGFuZGxlcikgY3VycmVudFRhcmdldC5hZGRFdmVudExpc3RlbmVyKG5hbWUsIGhhbmRsZXIsIHtcbiAgICAgICAgb25jZTogdHJ1ZVxuICAgIH0pO1xuICAgIGlmIChkaXNjcmV0ZSkgJGV5cllJJGRpc3BhdGNoRGlzY3JldGVDdXN0b21FdmVudChjdXJyZW50VGFyZ2V0LCBldmVudCk7XG4gICAgZWxzZSBjdXJyZW50VGFyZ2V0LmRpc3BhdGNoRXZlbnQoZXZlbnQpO1xufVxuY29uc3QgJDA1NGViODAzMGViZGU3NmUkdmFyJGlzRGVsdGFJbkRpcmVjdGlvbiA9IChkZWx0YSwgZGlyZWN0aW9uLCB0aHJlc2hvbGQgPSAwKT0+e1xuICAgIGNvbnN0IGRlbHRhWCA9IE1hdGguYWJzKGRlbHRhLngpO1xuICAgIGNvbnN0IGRlbHRhWSA9IE1hdGguYWJzKGRlbHRhLnkpO1xuICAgIGNvbnN0IGlzRGVsdGFYID0gZGVsdGFYID4gZGVsdGFZO1xuICAgIGlmIChkaXJlY3Rpb24gPT09ICdsZWZ0JyB8fCBkaXJlY3Rpb24gPT09ICdyaWdodCcpIHJldHVybiBpc0RlbHRhWCAmJiBkZWx0YVggPiB0aHJlc2hvbGQ7XG4gICAgZWxzZSByZXR1cm4gIWlzRGVsdGFYICYmIGRlbHRhWSA+IHRocmVzaG9sZDtcbn07XG5mdW5jdGlvbiAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkdXNlTmV4dEZyYW1lKGNhbGxiYWNrID0gKCk9Pnt9KSB7XG4gICAgY29uc3QgZm4gPSAkZXlyWUkkdXNlQ2FsbGJhY2tSZWYoY2FsbGJhY2spO1xuICAgICRleXJZSSR1c2VMYXlvdXRFZmZlY3QoKCk9PntcbiAgICAgICAgbGV0IHJhZjEgPSAwO1xuICAgICAgICBsZXQgcmFmMiA9IDA7XG4gICAgICAgIHJhZjEgPSB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT5yYWYyID0gd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZShmbilcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuICgpPT57XG4gICAgICAgICAgICB3aW5kb3cuY2FuY2VsQW5pbWF0aW9uRnJhbWUocmFmMSk7XG4gICAgICAgICAgICB3aW5kb3cuY2FuY2VsQW5pbWF0aW9uRnJhbWUocmFmMik7XG4gICAgICAgIH07XG4gICAgfSwgW1xuICAgICAgICBmblxuICAgIF0pO1xufVxuZnVuY3Rpb24gJDA1NGViODAzMGViZGU3NmUkdmFyJGlzSFRNTEVsZW1lbnQobm9kZSkge1xuICAgIHJldHVybiBub2RlLm5vZGVUeXBlID09PSBub2RlLkVMRU1FTlRfTk9ERTtcbn1cbi8qKlxuICogUmV0dXJucyBhIGxpc3Qgb2YgcG90ZW50aWFsIHRhYmJhYmxlIGNhbmRpZGF0ZXMuXG4gKlxuICogTk9URTogVGhpcyBpcyBvbmx5IGEgY2xvc2UgYXBwcm94aW1hdGlvbi4gRm9yIGV4YW1wbGUgaXQgZG9lc24ndCB0YWtlIGludG8gYWNjb3VudCBjYXNlcyBsaWtlIHdoZW5cbiAqIGVsZW1lbnRzIGFyZSBub3QgdmlzaWJsZS4gVGhpcyBjYW5ub3QgYmUgd29ya2VkIG91dCBlYXNpbHkgYnkganVzdCByZWFkaW5nIGEgcHJvcGVydHksIGJ1dCByYXRoZXJcbiAqIG5lY2Vzc2l0YXRlIHJ1bnRpbWUga25vd2xlZGdlIChjb21wdXRlZCBzdHlsZXMsIGV0YykuIFdlIGRlYWwgd2l0aCB0aGVzZSBjYXNlcyBzZXBhcmF0ZWx5LlxuICpcbiAqIFNlZTogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL1RyZWVXYWxrZXJcbiAqIENyZWRpdDogaHR0cHM6Ly9naXRodWIuY29tL2Rpc2NvcmQvZm9jdXMtbGF5ZXJzL2Jsb2IvbWFzdGVyL3NyYy91dGlsL3dyYXBGb2N1cy50c3gjTDFcbiAqLyBmdW5jdGlvbiAkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkZ2V0VGFiYmFibGVDYW5kaWRhdGVzKGNvbnRhaW5lcikge1xuICAgIGNvbnN0IG5vZGVzID0gW107XG4gICAgY29uc3Qgd2Fsa2VyID0gZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcihjb250YWluZXIsIE5vZGVGaWx0ZXIuU0hPV19FTEVNRU5ULCB7XG4gICAgICAgIGFjY2VwdE5vZGU6IChub2RlKT0+e1xuICAgICAgICAgICAgY29uc3QgaXNIaWRkZW5JbnB1dCA9IG5vZGUudGFnTmFtZSA9PT0gJ0lOUFVUJyAmJiBub2RlLnR5cGUgPT09ICdoaWRkZW4nO1xuICAgICAgICAgICAgaWYgKG5vZGUuZGlzYWJsZWQgfHwgbm9kZS5oaWRkZW4gfHwgaXNIaWRkZW5JbnB1dCkgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX1NLSVA7IC8vIGAudGFiSW5kZXhgIGlzIG5vdCB0aGUgc2FtZSBhcyB0aGUgYHRhYmluZGV4YCBhdHRyaWJ1dGUuIEl0IHdvcmtzIG9uIHRoZVxuICAgICAgICAgICAgLy8gcnVudGltZSdzIHVuZGVyc3RhbmRpbmcgb2YgdGFiYmFiaWxpdHksIHNvIHRoaXMgYXV0b21hdGljYWxseSBhY2NvdW50c1xuICAgICAgICAgICAgLy8gZm9yIGFueSBraW5kIG9mIGVsZW1lbnQgdGhhdCBjb3VsZCBiZSB0YWJiZWQgdG8uXG4gICAgICAgICAgICByZXR1cm4gbm9kZS50YWJJbmRleCA+PSAwID8gTm9kZUZpbHRlci5GSUxURVJfQUNDRVBUIDogTm9kZUZpbHRlci5GSUxURVJfU0tJUDtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHdoaWxlKHdhbGtlci5uZXh0Tm9kZSgpKW5vZGVzLnB1c2god2Fsa2VyLmN1cnJlbnROb2RlKTsgLy8gd2UgZG8gbm90IHRha2UgaW50byBhY2NvdW50IHRoZSBvcmRlciBvZiBub2RlcyB3aXRoIHBvc2l0aXZlIGB0YWJJbmRleGAgYXMgaXRcbiAgICAvLyBoaW5kZXJzIGFjY2Vzc2liaWxpdHkgdG8gaGF2ZSB0YWIgb3JkZXIgZGlmZmVyZW50IGZyb20gdmlzdWFsIG9yZGVyLlxuICAgIHJldHVybiBub2Rlcztcbn1cbmZ1bmN0aW9uICQwNTRlYjgwMzBlYmRlNzZlJHZhciRmb2N1c0ZpcnN0KGNhbmRpZGF0ZXMpIHtcbiAgICBjb25zdCBwcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50O1xuICAgIHJldHVybiBjYW5kaWRhdGVzLnNvbWUoKGNhbmRpZGF0ZSk9PntcbiAgICAgICAgLy8gaWYgZm9jdXMgaXMgYWxyZWFkeSB3aGVyZSB3ZSB3YW50IHRvIGdvLCB3ZSBkb24ndCB3YW50IHRvIGtlZXAgZ29pbmcgdGhyb3VnaCB0aGUgY2FuZGlkYXRlc1xuICAgICAgICBpZiAoY2FuZGlkYXRlID09PSBwcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQpIHJldHVybiB0cnVlO1xuICAgICAgICBjYW5kaWRhdGUuZm9jdXMoKTtcbiAgICAgICAgcmV0dXJuIGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgIT09IHByZXZpb3VzbHlGb2N1c2VkRWxlbWVudDtcbiAgICB9KTtcbn1cbmNvbnN0ICQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCQyODgxNDk5ZTM3Yjc1YjlhID0gJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JGY1ZDAzZDQxNTgyNGUwZTtcbmNvbnN0ICQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCRkNWM2YzA4ZGMyZDNjYTcgPSAkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkNjE5MmMyNDI1ZWNmZDk4OTtcbmNvbnN0ICQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5ID0gJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JDhkOGRjN2Q1Zjc0MzMzMWI7XG5jb25zdCAkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkZjk5MjMzMjgxZWZkMDhhMCA9ICQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCQxNmQ0MmQ3YzI5Yjk1YTQ7XG5jb25zdCAkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkMzkzZWRjNzk4YzQ3Mzc5ZCA9ICQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCRlY2RkZDk2YzUzNjIxZDlhO1xuY29uc3QgJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JGUxOWNkNWY5Mzc2ZjhjZWUgPSAkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkMzAxOWZlZWNmZGE2ODNkMjtcbmNvbnN0ICQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCRmMzljMmQxNjVjZDg2MWZlID0gJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JDgxMWU3MGY2MWMyMDU4Mzk7XG5cblxuXG5cbmV4cG9ydCB7JDA1NGViODAzMGViZGU3NmUkZXhwb3J0JDhhMzU5ZGExOGZiYzkwNzMgYXMgY3JlYXRlVG9hc3RTY29wZSwgJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JGY1ZDAzZDQxNTgyNGUwZSBhcyBUb2FzdFByb3ZpZGVyLCAkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkNjE5MmMyNDI1ZWNmZDk4OSBhcyBUb2FzdFZpZXdwb3J0LCAkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkOGQ4ZGM3ZDVmNzQzMzMxYiBhcyBUb2FzdCwgJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JDE2ZDQyZDdjMjliOTVhNCBhcyBUb2FzdFRpdGxlLCAkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkZWNkZGQ5NmM1MzYyMWQ5YSBhcyBUb2FzdERlc2NyaXB0aW9uLCAkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkMzAxOWZlZWNmZGE2ODNkMiBhcyBUb2FzdEFjdGlvbiwgJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JDgxMWU3MGY2MWMyMDU4MzkgYXMgVG9hc3RDbG9zZSwgJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JDI4ODE0OTllMzdiNzViOWEgYXMgUHJvdmlkZXIsICQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCRkNWM2YzA4ZGMyZDNjYTcgYXMgVmlld3BvcnQsICQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IGFzIFJvb3QsICQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCRmOTkyMzMyODFlZmQwOGEwIGFzIFRpdGxlLCAkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkMzkzZWRjNzk4YzQ3Mzc5ZCBhcyBEZXNjcmlwdGlvbiwgJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JGUxOWNkNWY5Mzc2ZjhjZWUgYXMgQWN0aW9uLCAkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkZjM5YzJkMTY1Y2Q4NjFmZSBhcyBDbG9zZX07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5tanMubWFwXG4iXSwibmFtZXMiOlsiJGV5cllJJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIiwidXNlU3RhdGUiLCIkZXlyWUkkdXNlU3RhdGUiLCJ1c2VSZWYiLCIkZXlyWUkkdXNlUmVmIiwiY3JlYXRlRWxlbWVudCIsIiRleXJZSSRjcmVhdGVFbGVtZW50IiwidXNlQ2FsbGJhY2siLCIkZXlyWUkkdXNlQ2FsbGJhY2siLCJmb3J3YXJkUmVmIiwiJGV5cllJJGZvcndhcmRSZWYiLCJ1c2VFZmZlY3QiLCIkZXlyWUkkdXNlRWZmZWN0IiwidXNlTWVtbyIsIiRleXJZSSR1c2VNZW1vIiwiRnJhZ21lbnQiLCIkZXlyWUkkRnJhZ21lbnQiLCJjcmVhdGVQb3J0YWwiLCIkZXlyWUkkY3JlYXRlUG9ydGFsIiwiY29tcG9zZUV2ZW50SGFuZGxlcnMiLCIkZXlyWUkkY29tcG9zZUV2ZW50SGFuZGxlcnMiLCJ1c2VDb21wb3NlZFJlZnMiLCIkZXlyWUkkdXNlQ29tcG9zZWRSZWZzIiwiY3JlYXRlQ29sbGVjdGlvbiIsIiRleXJZSSRjcmVhdGVDb2xsZWN0aW9uIiwiY3JlYXRlQ29udGV4dFNjb3BlIiwiJGV5cllJJGNyZWF0ZUNvbnRleHRTY29wZSIsIkJyYW5jaCIsIiRleXJZSSRCcmFuY2giLCJSb290IiwiJGV5cllJJFJvb3QiLCJQb3J0YWwiLCIkZXlyWUkkUG9ydGFsIiwiUHJlc2VuY2UiLCIkZXlyWUkkUHJlc2VuY2UiLCJQcmltaXRpdmUiLCIkZXlyWUkkUHJpbWl0aXZlIiwiZGlzcGF0Y2hEaXNjcmV0ZUN1c3RvbUV2ZW50IiwiJGV5cllJJGRpc3BhdGNoRGlzY3JldGVDdXN0b21FdmVudCIsInVzZUNhbGxiYWNrUmVmIiwiJGV5cllJJHVzZUNhbGxiYWNrUmVmIiwidXNlQ29udHJvbGxhYmxlU3RhdGUiLCIkZXlyWUkkdXNlQ29udHJvbGxhYmxlU3RhdGUiLCJ1c2VMYXlvdXRFZmZlY3QiLCIkZXlyWUkkdXNlTGF5b3V0RWZmZWN0IiwiVmlzdWFsbHlIaWRkZW4iLCIkZXlyWUkkVmlzdWFsbHlIaWRkZW4iLCIkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkUFJPVklERVJfTkFNRSIsIiQwNTRlYjgwMzBlYmRlNzZlJHZhciRDb2xsZWN0aW9uIiwiJDA1NGViODAzMGViZGU3NmUkdmFyJHVzZUNvbGxlY3Rpb24iLCIkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkY3JlYXRlQ29sbGVjdGlvblNjb3BlIiwiJDA1NGViODAzMGViZGU3NmUkdmFyJGNyZWF0ZVRvYXN0Q29udGV4dCIsIiQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCQ4YTM1OWRhMThmYmM5MDczIiwiJDA1NGViODAzMGViZGU3NmUkdmFyJFRvYXN0UHJvdmlkZXJQcm92aWRlciIsIiQwNTRlYjgwMzBlYmRlNzZlJHZhciR1c2VUb2FzdFByb3ZpZGVyQ29udGV4dCIsIiQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCRmNWQwM2Q0MTU4MjRlMGUiLCJwcm9wcyIsIl9fc2NvcGVUb2FzdCIsImxhYmVsIiwiZHVyYXRpb24iLCJzd2lwZURpcmVjdGlvbiIsInN3aXBlVGhyZXNob2xkIiwiY2hpbGRyZW4iLCJ2aWV3cG9ydCIsInNldFZpZXdwb3J0IiwidG9hc3RDb3VudCIsInNldFRvYXN0Q291bnQiLCJpc0ZvY3VzZWRUb2FzdEVzY2FwZUtleURvd25SZWYiLCJpc0Nsb3NlUGF1c2VkUmVmIiwiUHJvdmlkZXIiLCJzY29wZSIsIm9uVmlld3BvcnRDaGFuZ2UiLCJvblRvYXN0QWRkIiwicHJldkNvdW50Iiwib25Ub2FzdFJlbW92ZSIsInByb3BUeXBlcyIsInRyaW0iLCJlcnJvciIsIkVycm9yIiwiT2JqZWN0IiwiYXNzaWduIiwiZGlzcGxheU5hbWUiLCIkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVklFV1BPUlRfTkFNRSIsIiQwNTRlYjgwMzBlYmRlNzZlJHZhciRWSUVXUE9SVF9ERUZBVUxUX0hPVEtFWSIsIiQwNTRlYjgwMzBlYmRlNzZlJHZhciRWSUVXUE9SVF9QQVVTRSIsIiQwNTRlYjgwMzBlYmRlNzZlJHZhciRWSUVXUE9SVF9SRVNVTUUiLCIkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkNjE5MmMyNDI1ZWNmZDk4OSIsImZvcndhcmRlZFJlZiIsImhvdGtleSIsInZpZXdwb3J0UHJvcHMiLCJjb250ZXh0IiwiZ2V0SXRlbXMiLCJ3cmFwcGVyUmVmIiwiaGVhZEZvY3VzUHJveHlSZWYiLCJ0YWlsRm9jdXNQcm94eVJlZiIsInJlZiIsImNvbXBvc2VkUmVmcyIsImhvdGtleUxhYmVsIiwiam9pbiIsInJlcGxhY2UiLCJoYXNUb2FzdHMiLCJoYW5kbGVLZXlEb3duIiwiZXZlbnQiLCJfcmVmJGN1cnJlbnQiLCJpc0hvdGtleVByZXNzZWQiLCJldmVyeSIsImtleSIsImNvZGUiLCJjdXJyZW50IiwiZm9jdXMiLCJkb2N1bWVudCIsImFkZEV2ZW50TGlzdGVuZXIiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwid3JhcHBlciIsImhhbmRsZVBhdXNlIiwicGF1c2VFdmVudCIsIkN1c3RvbUV2ZW50IiwiZGlzcGF0Y2hFdmVudCIsImhhbmRsZVJlc3VtZSIsInJlc3VtZUV2ZW50IiwiaGFuZGxlRm9jdXNPdXRSZXN1bWUiLCJpc0ZvY3VzTW92aW5nT3V0c2lkZSIsImNvbnRhaW5zIiwicmVsYXRlZFRhcmdldCIsImhhbmRsZVBvaW50ZXJMZWF2ZVJlc3VtZSIsImlzRm9jdXNJbnNpZGUiLCJhY3RpdmVFbGVtZW50Iiwid2luZG93IiwiZ2V0U29ydGVkVGFiYmFibGVDYW5kaWRhdGVzIiwidGFiYmluZ0RpcmVjdGlvbiIsInRvYXN0SXRlbXMiLCJ0YWJiYWJsZUNhbmRpZGF0ZXMiLCJtYXAiLCJ0b2FzdEl0ZW0iLCJ0b2FzdE5vZGUiLCJ0b2FzdFRhYmJhYmxlQ2FuZGlkYXRlcyIsIiQwNTRlYjgwMzBlYmRlNzZlJHZhciRnZXRUYWJiYWJsZUNhbmRpZGF0ZXMiLCJyZXZlcnNlIiwiZmxhdCIsImlzTWV0YUtleSIsImFsdEtleSIsImN0cmxLZXkiLCJtZXRhS2V5IiwiaXNUYWJLZXkiLCJmb2N1c2VkRWxlbWVudCIsImlzVGFiYmluZ0JhY2t3YXJkcyIsInNoaWZ0S2V5IiwidGFyZ2V0SXNWaWV3cG9ydCIsInRhcmdldCIsIl9oZWFkRm9jdXNQcm94eVJlZiRjdSIsInNvcnRlZENhbmRpZGF0ZXMiLCJpbmRleCIsImZpbmRJbmRleCIsImNhbmRpZGF0ZSIsIiQwNTRlYjgwMzBlYmRlNzZlJHZhciRmb2N1c0ZpcnN0Iiwic2xpY2UiLCJwcmV2ZW50RGVmYXVsdCIsIl9oZWFkRm9jdXNQcm94eVJlZiRjdTIiLCJfdGFpbEZvY3VzUHJveHlSZWYkY3UiLCJyb2xlIiwidGFiSW5kZXgiLCJzdHlsZSIsInBvaW50ZXJFdmVudHMiLCJ1bmRlZmluZWQiLCIkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkRm9jdXNQcm94eSIsIm9uRm9jdXNGcm9tT3V0c2lkZVZpZXdwb3J0IiwiU2xvdCIsIm9sIiwiJDA1NGViODAzMGViZGU3NmUkdmFyJEZPQ1VTX1BST1hZX05BTUUiLCJwcm94eVByb3BzIiwicG9zaXRpb24iLCJvbkZvY3VzIiwiX2NvbnRleHQkdmlld3BvcnQiLCJwcmV2Rm9jdXNlZEVsZW1lbnQiLCJpc0ZvY3VzRnJvbU91dHNpZGVWaWV3cG9ydCIsIiQwNTRlYjgwMzBlYmRlNzZlJHZhciRUT0FTVF9OQU1FIiwiJDA1NGViODAzMGViZGU3NmUkdmFyJFRPQVNUX1NXSVBFX1NUQVJUIiwiJDA1NGViODAzMGViZGU3NmUkdmFyJFRPQVNUX1NXSVBFX01PVkUiLCIkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVE9BU1RfU1dJUEVfQ0FOQ0VMIiwiJDA1NGViODAzMGViZGU3NmUkdmFyJFRPQVNUX1NXSVBFX0VORCIsIiQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCQ4ZDhkYzdkNWY3NDMzMzFiIiwiZm9yY2VNb3VudCIsIm9wZW4iLCJvcGVuUHJvcCIsImRlZmF1bHRPcGVuIiwib25PcGVuQ2hhbmdlIiwidG9hc3RQcm9wcyIsInNldE9wZW4iLCJwcm9wIiwiZGVmYXVsdFByb3AiLCJvbkNoYW5nZSIsInByZXNlbnQiLCIkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVG9hc3RJbXBsIiwib25DbG9zZSIsIm9uUGF1c2UiLCJvblJlc3VtZSIsIm9uU3dpcGVTdGFydCIsImN1cnJlbnRUYXJnZXQiLCJzZXRBdHRyaWJ1dGUiLCJvblN3aXBlTW92ZSIsIngiLCJ5IiwiZGV0YWlsIiwiZGVsdGEiLCJzZXRQcm9wZXJ0eSIsIm9uU3dpcGVDYW5jZWwiLCJyZW1vdmVQcm9wZXJ0eSIsIm9uU3dpcGVFbmQiLCIkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkVG9hc3RJbnRlcmFjdGl2ZVByb3ZpZGVyIiwiJDA1NGViODAzMGViZGU3NmUkdmFyJHVzZVRvYXN0SW50ZXJhY3RpdmVDb250ZXh0IiwidHlwZSIsImR1cmF0aW9uUHJvcCIsIm9uRXNjYXBlS2V5RG93biIsIm5vZGUxIiwic2V0Tm9kZSIsIm5vZGUiLCJwb2ludGVyU3RhcnRSZWYiLCJzd2lwZURlbHRhUmVmIiwiZHVyYXRpb24xIiwiY2xvc2VUaW1lclN0YXJ0VGltZVJlZiIsImNsb3NlVGltZXJSZW1haW5pbmdUaW1lUmVmIiwiY2xvc2VUaW1lclJlZiIsImhhbmRsZUNsb3NlIiwiX2NvbnRleHQkdmlld3BvcnQyIiwiaXNGb2N1c0luVG9hc3QiLCJzdGFydFRpbWVyIiwiSW5maW5pdHkiLCJjbGVhclRpbWVvdXQiLCJEYXRlIiwiZ2V0VGltZSIsInNldFRpbWVvdXQiLCJlbGFwc2VkVGltZSIsImFubm91bmNlVGV4dENvbnRlbnQiLCIkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkZ2V0QW5ub3VuY2VUZXh0Q29udGVudCIsIiQwNTRlYjgwMzBlYmRlNzZlJHZhciRUb2FzdEFubm91bmNlIiwiSXRlbVNsb3QiLCJhc0NoaWxkIiwibGkiLCJ1c2VyU2VsZWN0IiwidG91Y2hBY3Rpb24iLCJvbktleURvd24iLCJuYXRpdmVFdmVudCIsImRlZmF1bHRQcmV2ZW50ZWQiLCJvblBvaW50ZXJEb3duIiwiYnV0dG9uIiwiY2xpZW50WCIsImNsaWVudFkiLCJvblBvaW50ZXJNb3ZlIiwiaGFzU3dpcGVNb3ZlU3RhcnRlZCIsIkJvb2xlYW4iLCJpc0hvcml6b250YWxTd2lwZSIsImluY2x1ZGVzIiwiY2xhbXAiLCJNYXRoIiwibWluIiwibWF4IiwiY2xhbXBlZFgiLCJjbGFtcGVkWSIsIm1vdmVTdGFydEJ1ZmZlciIsInBvaW50ZXJUeXBlIiwiZXZlbnREZXRhaWwiLCJvcmlnaW5hbEV2ZW50IiwiJDA1NGViODAzMGViZGU3NmUkdmFyJGhhbmRsZUFuZERpc3BhdGNoQ3VzdG9tRXZlbnQiLCJkaXNjcmV0ZSIsIiQwNTRlYjgwMzBlYmRlNzZlJHZhciRpc0RlbHRhSW5EaXJlY3Rpb24iLCJzZXRQb2ludGVyQ2FwdHVyZSIsInBvaW50ZXJJZCIsImFicyIsIm9uUG9pbnRlclVwIiwiZXZlbnQxIiwiaGFzUG9pbnRlckNhcHR1cmUiLCJyZWxlYXNlUG9pbnRlckNhcHR1cmUiLCJ0b2FzdCIsIm9uY2UiLCJhbm5vdW5jZVByb3BzIiwicmVuZGVyQW5ub3VuY2VUZXh0Iiwic2V0UmVuZGVyQW5ub3VuY2VUZXh0IiwiaXNBbm5vdW5jZWQiLCJzZXRJc0Fubm91bmNlZCIsIiQwNTRlYjgwMzBlYmRlNzZlJHZhciR1c2VOZXh0RnJhbWUiLCJ0aW1lciIsIiQwNTRlYjgwMzBlYmRlNzZlJHZhciRUSVRMRV9OQU1FIiwiJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JDE2ZDQyZDdjMjliOTVhNCIsInRpdGxlUHJvcHMiLCJkaXYiLCIkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkREVTQ1JJUFRJT05fTkFNRSIsIiQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCRlY2RkZDk2YzUzNjIxZDlhIiwiZGVzY3JpcHRpb25Qcm9wcyIsIiQwNTRlYjgwMzBlYmRlNzZlJHZhciRBQ1RJT05fTkFNRSIsIiQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCQzMDE5ZmVlY2ZkYTY4M2QyIiwiYWx0VGV4dCIsImFjdGlvblByb3BzIiwiJDA1NGViODAzMGViZGU3NmUkdmFyJFRvYXN0QW5ub3VuY2VFeGNsdWRlIiwiJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JDgxMWU3MGY2MWMyMDU4MzkiLCIkMDU0ZWI4MDMwZWJkZTc2ZSR2YXIkQ0xPU0VfTkFNRSIsImNsb3NlUHJvcHMiLCJpbnRlcmFjdGl2ZUNvbnRleHQiLCJvbkNsaWNrIiwiYW5ub3VuY2VFeGNsdWRlUHJvcHMiLCJjb250YWluZXIiLCJ0ZXh0Q29udGVudCIsImNoaWxkTm9kZXMiLCJBcnJheSIsImZyb20iLCJmb3JFYWNoIiwibm9kZVR5cGUiLCJURVhUX05PREUiLCJwdXNoIiwiJDA1NGViODAzMGViZGU3NmUkdmFyJGlzSFRNTEVsZW1lbnQiLCJpc0hpZGRlbiIsImFyaWFIaWRkZW4iLCJoaWRkZW4iLCJkaXNwbGF5IiwiaXNFeGNsdWRlZCIsImRhdGFzZXQiLCJyYWRpeFRvYXN0QW5ub3VuY2VFeGNsdWRlIiwicmFkaXhUb2FzdEFubm91bmNlQWx0IiwibmFtZSIsImhhbmRsZXIiLCJidWJibGVzIiwiY2FuY2VsYWJsZSIsImRpcmVjdGlvbiIsInRocmVzaG9sZCIsImRlbHRhWCIsImRlbHRhWSIsImlzRGVsdGFYIiwiY2FsbGJhY2siLCJmbiIsInJhZjEiLCJyYWYyIiwicmVxdWVzdEFuaW1hdGlvbkZyYW1lIiwiY2FuY2VsQW5pbWF0aW9uRnJhbWUiLCJFTEVNRU5UX05PREUiLCJub2RlcyIsIndhbGtlciIsImNyZWF0ZVRyZWVXYWxrZXIiLCJOb2RlRmlsdGVyIiwiU0hPV19FTEVNRU5UIiwiYWNjZXB0Tm9kZSIsImlzSGlkZGVuSW5wdXQiLCJ0YWdOYW1lIiwiZGlzYWJsZWQiLCJGSUxURVJfU0tJUCIsIkZJTFRFUl9BQ0NFUFQiLCJuZXh0Tm9kZSIsImN1cnJlbnROb2RlIiwiY2FuZGlkYXRlcyIsInByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCIsInNvbWUiLCIkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkMjg4MTQ5OWUzN2I3NWI5YSIsIiQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCRkNWM2YzA4ZGMyZDNjYTciLCIkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSIsIiQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCRmOTkyMzMyODFlZmQwOGEwIiwiJDA1NGViODAzMGViZGU3NmUkZXhwb3J0JDM5M2VkYzc5OGM0NzM3OWQiLCIkMDU0ZWI4MDMwZWJkZTc2ZSRleHBvcnQkZTE5Y2Q1ZjkzNzZmOGNlZSIsIiQwNTRlYjgwMzBlYmRlNzZlJGV4cG9ydCRmMzljMmQxNjVjZDg2MWZlIiwiY3JlYXRlVG9hc3RTY29wZSIsIlRvYXN0UHJvdmlkZXIiLCJUb2FzdFZpZXdwb3J0IiwiVG9hc3QiLCJUb2FzdFRpdGxlIiwiVG9hc3REZXNjcmlwdGlvbiIsIlRvYXN0QWN0aW9uIiwiVG9hc3RDbG9zZSIsIlZpZXdwb3J0IiwiVGl0bGUiLCJEZXNjcmlwdGlvbiIsIkFjdGlvbiIsIkNsb3NlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-toast/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs": /*!**********************************************************************************************************!*\ !*** ./node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs ***! \**********************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Branch: () => (/* binding */ $5cb92bef7577960e$export$aecb2ddcb55c95be),\n/* harmony export */ DismissableLayer: () => (/* binding */ $5cb92bef7577960e$export$177fb62ff3ec1f22),\n/* harmony export */ DismissableLayerBranch: () => (/* binding */ $5cb92bef7577960e$export$4d5eb2109db14228),\n/* harmony export */ Root: () => (/* binding */ $5cb92bef7577960e$export$be92b6f5f03c0fe9)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_primitive__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @radix-ui/primitive */ \"(ssr)/./node_modules/@radix-ui/primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-compose-refs */ \"(ssr)/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @radix-ui/react-use-callback-ref */ \"(ssr)/./node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs\");\n/* harmony import */ var _radix_ui_react_use_escape_keydown__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-use-escape-keydown */ \"(ssr)/./node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs\");\n\n\n\n\n\n\n\n/* -------------------------------------------------------------------------------------------------\n * DismissableLayer\n * -----------------------------------------------------------------------------------------------*/ const $5cb92bef7577960e$var$DISMISSABLE_LAYER_NAME = \"DismissableLayer\";\nconst $5cb92bef7577960e$var$CONTEXT_UPDATE = \"dismissableLayer.update\";\nconst $5cb92bef7577960e$var$POINTER_DOWN_OUTSIDE = \"dismissableLayer.pointerDownOutside\";\nconst $5cb92bef7577960e$var$FOCUS_OUTSIDE = \"dismissableLayer.focusOutside\";\nlet $5cb92bef7577960e$var$originalBodyPointerEvents;\nconst $5cb92bef7577960e$var$DismissableLayerContext = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createContext)({\n layers: new Set(),\n layersWithOutsidePointerEventsDisabled: new Set(),\n branches: new Set()\n});\nconst $5cb92bef7577960e$export$177fb62ff3ec1f22 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n var _node$ownerDocument;\n const { disableOutsidePointerEvents: disableOutsidePointerEvents = false, onEscapeKeyDown: onEscapeKeyDown, onPointerDownOutside: onPointerDownOutside, onFocusOutside: onFocusOutside, onInteractOutside: onInteractOutside, onDismiss: onDismiss, ...layerProps } = props;\n const context = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)($5cb92bef7577960e$var$DismissableLayerContext);\n const [node1, setNode] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const ownerDocument = (_node$ownerDocument = node1 === null || node1 === void 0 ? void 0 : node1.ownerDocument) !== null && _node$ownerDocument !== void 0 ? _node$ownerDocument : globalThis === null || globalThis === void 0 ? void 0 : globalThis.document;\n const [, force] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)({});\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__.useComposedRefs)(forwardedRef, (node)=>setNode(node));\n const layers = Array.from(context.layers);\n const [highestLayerWithOutsidePointerEventsDisabled] = [\n ...context.layersWithOutsidePointerEventsDisabled\n ].slice(-1); // prettier-ignore\n const highestLayerWithOutsidePointerEventsDisabledIndex = layers.indexOf(highestLayerWithOutsidePointerEventsDisabled); // prettier-ignore\n const index = node1 ? layers.indexOf(node1) : -1;\n const isBodyPointerEventsDisabled = context.layersWithOutsidePointerEventsDisabled.size > 0;\n const isPointerEventsEnabled = index >= highestLayerWithOutsidePointerEventsDisabledIndex;\n const pointerDownOutside = $5cb92bef7577960e$var$usePointerDownOutside((event)=>{\n const target = event.target;\n const isPointerDownOnBranch = [\n ...context.branches\n ].some((branch)=>branch.contains(target));\n if (!isPointerEventsEnabled || isPointerDownOnBranch) return;\n onPointerDownOutside === null || onPointerDownOutside === void 0 || onPointerDownOutside(event);\n onInteractOutside === null || onInteractOutside === void 0 || onInteractOutside(event);\n if (!event.defaultPrevented) onDismiss === null || onDismiss === void 0 || onDismiss();\n }, ownerDocument);\n const focusOutside = $5cb92bef7577960e$var$useFocusOutside((event)=>{\n const target = event.target;\n const isFocusInBranch = [\n ...context.branches\n ].some((branch)=>branch.contains(target));\n if (isFocusInBranch) return;\n onFocusOutside === null || onFocusOutside === void 0 || onFocusOutside(event);\n onInteractOutside === null || onInteractOutside === void 0 || onInteractOutside(event);\n if (!event.defaultPrevented) onDismiss === null || onDismiss === void 0 || onDismiss();\n }, ownerDocument);\n (0,_radix_ui_react_use_escape_keydown__WEBPACK_IMPORTED_MODULE_3__.useEscapeKeydown)((event)=>{\n const isHighestLayer = index === context.layers.size - 1;\n if (!isHighestLayer) return;\n onEscapeKeyDown === null || onEscapeKeyDown === void 0 || onEscapeKeyDown(event);\n if (!event.defaultPrevented && onDismiss) {\n event.preventDefault();\n onDismiss();\n }\n }, ownerDocument);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n if (!node1) return;\n if (disableOutsidePointerEvents) {\n if (context.layersWithOutsidePointerEventsDisabled.size === 0) {\n $5cb92bef7577960e$var$originalBodyPointerEvents = ownerDocument.body.style.pointerEvents;\n ownerDocument.body.style.pointerEvents = \"none\";\n }\n context.layersWithOutsidePointerEventsDisabled.add(node1);\n }\n context.layers.add(node1);\n $5cb92bef7577960e$var$dispatchUpdate();\n return ()=>{\n if (disableOutsidePointerEvents && context.layersWithOutsidePointerEventsDisabled.size === 1) ownerDocument.body.style.pointerEvents = $5cb92bef7577960e$var$originalBodyPointerEvents;\n };\n }, [\n node1,\n ownerDocument,\n disableOutsidePointerEvents,\n context\n ]);\n /**\n * We purposefully prevent combining this effect with the `disableOutsidePointerEvents` effect\n * because a change to `disableOutsidePointerEvents` would remove this layer from the stack\n * and add it to the end again so the layering order wouldn't be _creation order_.\n * We only want them to be removed from context stacks when unmounted.\n */ (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n return ()=>{\n if (!node1) return;\n context.layers.delete(node1);\n context.layersWithOutsidePointerEventsDisabled.delete(node1);\n $5cb92bef7577960e$var$dispatchUpdate();\n };\n }, [\n node1,\n context\n ]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const handleUpdate = ()=>force({});\n document.addEventListener($5cb92bef7577960e$var$CONTEXT_UPDATE, handleUpdate);\n return ()=>document.removeEventListener($5cb92bef7577960e$var$CONTEXT_UPDATE, handleUpdate);\n }, []);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, layerProps, {\n ref: composedRefs,\n style: {\n pointerEvents: isBodyPointerEventsDisabled ? isPointerEventsEnabled ? \"auto\" : \"none\" : undefined,\n ...props.style\n },\n onFocusCapture: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_5__.composeEventHandlers)(props.onFocusCapture, focusOutside.onFocusCapture),\n onBlurCapture: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_5__.composeEventHandlers)(props.onBlurCapture, focusOutside.onBlurCapture),\n onPointerDownCapture: (0,_radix_ui_primitive__WEBPACK_IMPORTED_MODULE_5__.composeEventHandlers)(props.onPointerDownCapture, pointerDownOutside.onPointerDownCapture)\n }));\n});\n/*#__PURE__*/ Object.assign($5cb92bef7577960e$export$177fb62ff3ec1f22, {\n displayName: $5cb92bef7577960e$var$DISMISSABLE_LAYER_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * DismissableLayerBranch\n * -----------------------------------------------------------------------------------------------*/ const $5cb92bef7577960e$var$BRANCH_NAME = \"DismissableLayerBranch\";\nconst $5cb92bef7577960e$export$4d5eb2109db14228 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n const context = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)($5cb92bef7577960e$var$DismissableLayerContext);\n const ref = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const composedRefs = (0,_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__.useComposedRefs)(forwardedRef, ref);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const node = ref.current;\n if (node) {\n context.branches.add(node);\n return ()=>{\n context.branches.delete(node);\n };\n }\n }, [\n context.branches\n ]);\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, props, {\n ref: composedRefs\n }));\n});\n/*#__PURE__*/ Object.assign($5cb92bef7577960e$export$4d5eb2109db14228, {\n displayName: $5cb92bef7577960e$var$BRANCH_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ /**\n * Listens for `pointerdown` outside a react subtree. We use `pointerdown` rather than `pointerup`\n * to mimic layer dismissing behaviour present in OS.\n * Returns props to pass to the node we want to check for outside events.\n */ function $5cb92bef7577960e$var$usePointerDownOutside(onPointerDownOutside, ownerDocument = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) {\n const handlePointerDownOutside = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_6__.useCallbackRef)(onPointerDownOutside);\n const isPointerInsideReactTreeRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(false);\n const handleClickRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(()=>{});\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const handlePointerDown = (event)=>{\n if (event.target && !isPointerInsideReactTreeRef.current) {\n const eventDetail = {\n originalEvent: event\n };\n function handleAndDispatchPointerDownOutsideEvent() {\n $5cb92bef7577960e$var$handleAndDispatchCustomEvent($5cb92bef7577960e$var$POINTER_DOWN_OUTSIDE, handlePointerDownOutside, eventDetail, {\n discrete: true\n });\n }\n /**\n * On touch devices, we need to wait for a click event because browsers implement\n * a ~350ms delay between the time the user stops touching the display and when the\n * browser executres events. We need to ensure we don't reactivate pointer-events within\n * this timeframe otherwise the browser may execute events that should have been prevented.\n *\n * Additionally, this also lets us deal automatically with cancellations when a click event\n * isn't raised because the page was considered scrolled/drag-scrolled, long-pressed, etc.\n *\n * This is why we also continuously remove the previous listener, because we cannot be\n * certain that it was raised, and therefore cleaned-up.\n */ if (event.pointerType === \"touch\") {\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n handleClickRef.current = handleAndDispatchPointerDownOutsideEvent;\n ownerDocument.addEventListener(\"click\", handleClickRef.current, {\n once: true\n });\n } else handleAndDispatchPointerDownOutsideEvent();\n } else // See: https://github.com/radix-ui/primitives/issues/2171\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n isPointerInsideReactTreeRef.current = false;\n };\n /**\n * if this hook executes in a component that mounts via a `pointerdown` event, the event\n * would bubble up to the document and trigger a `pointerDownOutside` event. We avoid\n * this by delaying the event listener registration on the document.\n * This is not React specific, but rather how the DOM works, ie:\n * ```\n * button.addEventListener('pointerdown', () => {\n * console.log('I will log');\n * document.addEventListener('pointerdown', () => {\n * console.log('I will also log');\n * })\n * });\n */ const timerId = window.setTimeout(()=>{\n ownerDocument.addEventListener(\"pointerdown\", handlePointerDown);\n }, 0);\n return ()=>{\n window.clearTimeout(timerId);\n ownerDocument.removeEventListener(\"pointerdown\", handlePointerDown);\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n };\n }, [\n ownerDocument,\n handlePointerDownOutside\n ]);\n return {\n // ensures we check React component tree (not just DOM tree)\n onPointerDownCapture: ()=>isPointerInsideReactTreeRef.current = true\n };\n}\n/**\n * Listens for when focus happens outside a react subtree.\n * Returns props to pass to the root (node) of the subtree we want to check.\n */ function $5cb92bef7577960e$var$useFocusOutside(onFocusOutside, ownerDocument = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) {\n const handleFocusOutside = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_6__.useCallbackRef)(onFocusOutside);\n const isFocusInsideReactTreeRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(false);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n const handleFocus = (event)=>{\n if (event.target && !isFocusInsideReactTreeRef.current) {\n const eventDetail = {\n originalEvent: event\n };\n $5cb92bef7577960e$var$handleAndDispatchCustomEvent($5cb92bef7577960e$var$FOCUS_OUTSIDE, handleFocusOutside, eventDetail, {\n discrete: false\n });\n }\n };\n ownerDocument.addEventListener(\"focusin\", handleFocus);\n return ()=>ownerDocument.removeEventListener(\"focusin\", handleFocus);\n }, [\n ownerDocument,\n handleFocusOutside\n ]);\n return {\n onFocusCapture: ()=>isFocusInsideReactTreeRef.current = true,\n onBlurCapture: ()=>isFocusInsideReactTreeRef.current = false\n };\n}\nfunction $5cb92bef7577960e$var$dispatchUpdate() {\n const event = new CustomEvent($5cb92bef7577960e$var$CONTEXT_UPDATE);\n document.dispatchEvent(event);\n}\nfunction $5cb92bef7577960e$var$handleAndDispatchCustomEvent(name, handler, detail, { discrete: discrete }) {\n const target = detail.originalEvent.target;\n const event = new CustomEvent(name, {\n bubbles: false,\n cancelable: true,\n detail: detail\n });\n if (handler) target.addEventListener(name, handler, {\n once: true\n });\n if (discrete) (0,_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_4__.dispatchDiscreteCustomEvent)(target, event);\n else target.dispatchEvent(event);\n}\nconst $5cb92bef7577960e$export$be92b6f5f03c0fe9 = $5cb92bef7577960e$export$177fb62ff3ec1f22;\nconst $5cb92bef7577960e$export$aecb2ddcb55c95be = $5cb92bef7577960e$export$4d5eb2109db14228;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXRvYXN0L25vZGVfbW9kdWxlcy9AcmFkaXgtdWkvcmVhY3QtZGlzbWlzc2FibGUtbGF5ZXIvZGlzdC9pbmRleC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFBc0Y7QUFDb0s7QUFDbEs7QUFDbUQ7QUFDcEQ7QUFDRTtBQUNNO0FBUy9GOztrR0FFa0csR0FBRyxNQUFNMkIsK0NBQStDO0FBQzFKLE1BQU1DLHVDQUF1QztBQUM3QyxNQUFNQyw2Q0FBNkM7QUFDbkQsTUFBTUMsc0NBQXNDO0FBQzVDLElBQUlDO0FBQ0osTUFBTUMsZ0RBQWdELFdBQVcsR0FBRzlCLG9EQUFvQkEsQ0FBQztJQUNyRitCLFFBQVEsSUFBSUM7SUFDWkMsd0NBQXdDLElBQUlEO0lBQzVDRSxVQUFVLElBQUlGO0FBQ2xCO0FBQ0EsTUFBTUcsNENBQTRDLFdBQVcsR0FBR2pDLGlEQUFpQkEsQ0FBQyxDQUFDa0MsT0FBT0M7SUFDdEYsSUFBSUM7SUFDSixNQUFNLEVBQUVDLDZCQUE2QkEsOEJBQThCLEtBQUssRUFBR0MsaUJBQWlCQSxlQUFlLEVBQUdDLHNCQUFzQkEsb0JBQW9CLEVBQUdDLGdCQUFnQkEsY0FBYyxFQUFHQyxtQkFBbUJBLGlCQUFpQixFQUFHQyxXQUFXQSxTQUFTLEVBQUcsR0FBR0MsWUFBWSxHQUFHVDtJQUM1USxNQUFNVSxVQUFVMUMsaURBQWlCQSxDQUFDMEI7SUFDbEMsTUFBTSxDQUFDaUIsT0FBT0MsUUFBUSxHQUFHMUMsK0NBQWVBLENBQUM7SUFDekMsTUFBTTJDLGdCQUFnQixDQUFDWCxzQkFBc0JTLFVBQVUsUUFBUUEsVUFBVSxLQUFLLElBQUksS0FBSyxJQUFJQSxNQUFNRSxhQUFhLE1BQU0sUUFBUVgsd0JBQXdCLEtBQUssSUFBSUEsc0JBQXNCWSxlQUFlLFFBQVFBLGVBQWUsS0FBSyxJQUFJLEtBQUssSUFBSUEsV0FBV0MsUUFBUTtJQUM5UCxNQUFNLEdBQUdDLE1BQU0sR0FBRzlD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ZUFBZXRDO2dCQUNuQjtnQkFDQXdDLG1EQUFtRC9FLHFDQUFxQ3VGLG9CQUFvQlgsYUFBYTtvQkFDckhJLFVBQVU7Z0JBQ2Q7WUFDSjtRQUNKO1FBQ0EzRCxjQUFjcUMsZ0JBQWdCLENBQUMsV0FBVytCO1FBQzFDLE9BQU8sSUFBSXBFLGNBQWNzQyxtQkFBbUIsQ0FBQyxXQUFXOEI7SUFFNUQsR0FBRztRQUNDcEU7UUFDQWtFO0tBQ0g7SUFDRCxPQUFPO1FBQ0h4QixnQkFBZ0IsSUFBSXlCLDBCQUEwQmpCLE9BQU8sR0FBRztRQUV4RFAsZUFBZSxJQUFJd0IsMEJBQTBCakIsT0FBTyxHQUFHO0lBQzNEO0FBQ0o7QUFDQSxTQUFTaEI7SUFDTCxNQUFNaEIsUUFBUSxJQUFJbUQsWUFBWTVGO0lBQzlCeUIsU0FBU29FLGFBQWEsQ0FBQ3BEO0FBQzNCO0FBQ0EsU0FBU3dDLG1EQUFtRGEsSUFBSSxFQUFFQyxPQUFPLEVBQUVDLE1BQU0sRUFBRSxFQUFFZCxVQUFVQSxRQUFRLEVBQUc7SUFDdEcsTUFBTXhDLFNBQVNzRCxPQUFPakIsYUFBYSxDQUFDckMsTUFBTTtJQUMxQyxNQUFNRCxRQUFRLElBQUltRCxZQUFZRSxNQUFNO1FBQ2hDRyxTQUFTO1FBQ1RDLFlBQVk7UUFDWkYsUUFBUUE7SUFDWjtJQUNBLElBQUlELFNBQVNyRCxPQUFPa0IsZ0JBQWdCLENBQUNrQyxNQUFNQyxTQUFTO1FBQ2hEWCxNQUFNO0lBQ1Y7SUFDQSxJQUFJRixVQUFVMUYsc0ZBQWtDQSxDQUFDa0QsUUFBUUQ7U0FDcERDLE9BQU9tRCxhQUFhLENBQUNwRDtBQUM5QjtBQUNBLE1BQU0wRCw0Q0FBNEMxRjtBQUNsRCxNQUFNMkYsNENBQTRDNUI7QUFLa00sQ0FDcFAsa0NBQWtDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZW1iZWRjaGFpbi1hZG1pbi8uL25vZGVfbW9kdWxlcy9AcmFkaXgtdWkvcmVhY3QtdG9hc3Qvbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC1kaXNtaXNzYWJsZS1sYXllci9kaXN0L2luZGV4Lm1qcz80ZDRlIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAka3F3cEgkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2V4dGVuZHNcIjtcbmltcG9ydCB7Y3JlYXRlQ29udGV4dCBhcyAka3F3cEgkY3JlYXRlQ29udGV4dCwgZm9yd2FyZFJlZiBhcyAka3F3cEgkZm9yd2FyZFJlZiwgdXNlQ29udGV4dCBhcyAka3F3cEgkdXNlQ29udGV4dCwgdXNlU3RhdGUgYXMgJGtxd3BIJHVzZVN0YXRlLCB1c2VFZmZlY3QgYXMgJGtxd3BIJHVzZUVmZmVjdCwgY3JlYXRlRWxlbWVudCBhcyAka3F3cEgkY3JlYXRlRWxlbWVudCwgdXNlUmVmIGFzICRrcXdwSCR1c2VSZWZ9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHtjb21wb3NlRXZlbnRIYW5kbGVycyBhcyAka3F3cEgkY29tcG9zZUV2ZW50SGFuZGxlcnN9IGZyb20gXCJAcmFkaXgtdWkvcHJpbWl0aXZlXCI7XG5pbXBvcnQge1ByaW1pdGl2ZSBhcyAka3F3cEgkUHJpbWl0aXZlLCBkaXNwYXRjaERpc2NyZXRlQ3VzdG9tRXZlbnQgYXMgJGtxd3BIJGRpc3BhdGNoRGlzY3JldGVDdXN0b21FdmVudH0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC1wcmltaXRpdmVcIjtcbmltcG9ydCB7dXNlQ29tcG9zZWRSZWZzIGFzICRrcXdwSCR1c2VDb21wb3NlZFJlZnN9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtY29tcG9zZS1yZWZzXCI7XG5pbXBvcnQge3VzZUNhbGxiYWNrUmVmIGFzICRrcXdwSCR1c2VDYWxsYmFja1JlZn0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC11c2UtY2FsbGJhY2stcmVmXCI7XG5pbXBvcnQge3VzZUVzY2FwZUtleWRvd24gYXMgJGtxd3BIJHVzZUVzY2FwZUtleWRvd259IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtdXNlLWVzY2FwZS1rZXlkb3duXCI7XG5cblxuXG5cblxuXG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogRGlzbWlzc2FibGVMYXllclxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRElTTUlTU0FCTEVfTEFZRVJfTkFNRSA9ICdEaXNtaXNzYWJsZUxheWVyJztcbmNvbnN0ICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRDT05URVhUX1VQREFURSA9ICdkaXNtaXNzYWJsZUxheWVyLnVwZGF0ZSc7XG5jb25zdCAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkUE9JTlRFUl9ET1dOX09VVFNJREUgPSAnZGlzbWlzc2FibGVMYXllci5wb2ludGVyRG93bk91dHNpZGUnO1xuY29uc3QgJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJEZPQ1VTX09VVFNJREUgPSAnZGlzbWlzc2FibGVMYXllci5mb2N1c091dHNpZGUnO1xubGV0ICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRvcmlnaW5hbEJvZHlQb2ludGVyRXZlbnRzO1xuY29uc3QgJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJERpc21pc3NhYmxlTGF5ZXJDb250ZXh0ID0gLyojX19QVVJFX18qLyAka3F3cEgkY3JlYXRlQ29udGV4dCh7XG4gICAgbGF5ZXJzOiBuZXcgU2V0KCksXG4gICAgbGF5ZXJzV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWQ6IG5ldyBTZXQoKSxcbiAgICBicmFuY2hlczogbmV3IFNldCgpXG59KTtcbmNvbnN0ICQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQxNzdmYjYyZmYzZWMxZjIyID0gLyojX19QVVJFX18qLyAka3F3cEgkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICB2YXIgX25vZGUkb3duZXJEb2N1bWVudDtcbiAgICBjb25zdCB7IGRpc2FibGVPdXRzaWRlUG9pbnRlckV2ZW50czogZGlzYWJsZU91dHNpZGVQb2ludGVyRXZlbnRzID0gZmFsc2UgLCBvbkVzY2FwZUtleURvd246IG9uRXNjYXBlS2V5RG93biAsIG9uUG9pbnRlckRvd25PdXRzaWRlOiBvblBvaW50ZXJEb3duT3V0c2lkZSAsIG9uRm9jdXNPdXRzaWRlOiBvbkZvY3VzT3V0c2lkZSAsIG9uSW50ZXJhY3RPdXRzaWRlOiBvbkludGVyYWN0T3V0c2lkZSAsIG9uRGlzbWlzczogb25EaXNtaXNzICwgLi4ubGF5ZXJQcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3QgY29udGV4dCA9ICRrcXdwSCR1c2VDb250ZXh0KCQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciREaXNtaXNzYWJsZUxheWVyQ29udGV4dCk7XG4gICAgY29uc3QgW25vZGUxLCBzZXROb2RlXSA9ICRrcXdwSCR1c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBvd25lckRvY3VtZW50ID0gKF9ub2RlJG93bmVyRG9jdW1lbnQgPSBub2RlMSA9PT0gbnVsbCB8fCBub2RlMSA9PT0gdm9pZCAwID8gdm9pZCAwIDogbm9kZTEub3duZXJEb2N1bWVudCkgIT09IG51bGwgJiYgX25vZGUkb3duZXJEb2N1bWVudCAhPT0gdm9pZCAwID8gX25vZGUkb3duZXJEb2N1bWVudCA6IGdsb2JhbFRoaXMgPT09IG51bGwgfHwgZ2xvYmFsVGhpcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogZ2xvYmFsVGhpcy5kb2N1bWVudDtcbiAgICBjb25zdCBbLCBmb3JjZV0gPSAka3F3cEgkdXNlU3RhdGUoe30pO1xuICAgIGNvbnN0IGNvbXBvc2VkUmVmcyA9ICRrcXdwSCR1c2VDb21wb3NlZFJlZnMoZm9yd2FyZGVkUmVmLCAobm9kZSk9PnNldE5vZGUobm9kZSlcbiAgICApO1xuICAgIGNvbnN0IGxheWVycyA9IEFycmF5LmZyb20oY29udGV4dC5sYXllcnMpO1xuICAgIGNvbnN0IFtoaWdoZXN0TGF5ZXJXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZF0gPSBbXG4gICAgICAgIC4uLmNvbnRleHQubGF5ZXJzV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWRcbiAgICBdLnNsaWNlKC0xKTsgLy8gcHJldHRpZXItaWdub3JlXG4gICAgY29uc3QgaGlnaGVzdExheWVyV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWRJbmRleCA9IGxheWVycy5pbmRleE9mKGhpZ2hlc3RMYXllcldpdGhPdXRzaWRlUG9pbnRlckV2ZW50c0Rpc2FibGVkKTsgLy8gcHJldHRpZXItaWdub3JlXG4gICAgY29uc3QgaW5kZXggPSBub2RlMSA/IGxheWVycy5pbmRleE9mKG5vZGUxKSA6IC0xO1xuICAgIGNvbnN0IGlzQm9keVBvaW50ZXJFdmVudHNEaXNhYmxlZCA9IGNvbnRleHQubGF5ZXJzV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWQuc2l6ZSA+IDA7XG4gICAgY29uc3QgaXNQb2ludGVyRXZlbnRzRW5hYmxlZCA9IGluZGV4ID49IGhpZ2hlc3RMYXllcldpdGhPdXRzaWRlUG9pbnRlckV2ZW50c0Rpc2FibGVkSW5kZXg7XG4gICAgY29uc3QgcG9pbnRlckRvd25PdXRzaWRlID0gJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJHVzZVBvaW50ZXJEb3duT3V0c2lkZSgoZXZlbnQpPT57XG4gICAgICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldDtcbiAgICAgICAgY29uc3QgaXNQb2ludGVyRG93bk9uQnJhbmNoID0gW1xuICAgICAgICAgICAgLi4uY29udGV4dC5icmFuY2hlc1xuICAgICAgICBdLnNvbWUoKGJyYW5jaCk9PmJyYW5jaC5jb250YWlucyh0YXJnZXQpXG4gICAgICAgICk7XG4gICAgICAgIGlmICghaXNQb2ludGVyRXZlbnRzRW5hYmxlZCB8fCBpc1BvaW50ZXJEb3duT25CcmFuY2gpIHJldHVybjtcbiAgICAgICAgb25Qb2ludGVyRG93bk91dHNpZGUgPT09IG51bGwgfHwgb25Qb2ludGVyRG93bk91dHNpZGUgPT09IHZvaWQgMCB8fCBvblBvaW50ZXJEb3duT3V0c2lkZShldmVudCk7XG4gICAgICAgIG9uSW50ZXJhY3RPdXRzaWRlID09PSBudWxsIHx8IG9uSW50ZXJhY3RPdXRzaWRlID09PSB2b2lkIDAgfHwgb25JbnRlcmFjdE91dHNpZGUoZXZlbnQpO1xuICAgICAgICBpZiAoIWV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIG9uRGlzbWlzcyA9PT0gbnVsbCB8fCBvbkRpc21pc3MgPT09IHZvaWQgMCB8fCBvbkRpc21pc3MoKTtcbiAgICB9LCBvd25lckRvY3VtZW50KTtcbiAgICBjb25zdCBmb2N1c091dHNpZGUgPSAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkdXNlRm9jdXNPdXRzaWRlKChldmVudCk9PntcbiAgICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0O1xuICAgICAgICBjb25zdCBpc0ZvY3VzSW5CcmFuY2ggPSBbXG4gICAgICAgICAgICAuLi5jb250ZXh0LmJyYW5jaGVzXG4gICAgICAgIF0uc29tZSgoYnJhbmNoKT0+YnJhbmNoLmNvbnRhaW5zKHRhcmdldClcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKGlzRm9jdXNJbkJyYW5jaCkgcmV0dXJuO1xuICAgICAgICBvbkZvY3VzT3V0c2lkZSA9PT0gbnVsbCB8fCBvbkZvY3VzT3V0c2lkZSA9PT0gdm9pZCAwIHx8IG9uRm9jdXNPdXRzaWRlKGV2ZW50KTtcbiAgICAgICAgb25JbnRlcmFjdE91dHNpZGUgPT09IG51bGwgfHwgb25JbnRlcmFjdE91dHNpZGUgPT09IHZvaWQgMCB8fCBvbkludGVyYWN0T3V0c2lkZShldmVudCk7XG4gICAgICAgIGlmICghZXZlbnQuZGVmYXVsdFByZXZlbnRlZCkgb25EaXNtaXNzID09PSBudWxsIHx8IG9uRGlzbWlzcyA9PT0gdm9pZCAwIHx8IG9uRGlzbWlzcygpO1xuICAgIH0sIG93bmVyRG9jdW1lbnQpO1xuICAgICRrcXdwSCR1c2VFc2NhcGVLZXlkb3duKChldmVudCk9PntcbiAgICAgICAgY29uc3QgaXNIaWdoZXN0TGF5ZXIgPSBpbmRleCA9PT0gY29udGV4dC5sYXllcnMuc2l6ZSAtIDE7XG4gICAgICAgIGlmICghaXNIaWdoZXN0TGF5ZXIpIHJldHVybjtcbiAgICAgICAgb25Fc2NhcGVLZXlEb3duID09PSBudWxsIHx8IG9uRXNjYXBlS2V5RG93biA9PT0gdm9pZCAwIHx8IG9uRXNjYXBlS2V5RG93bihldmVudCk7XG4gICAgICAgIGlmICghZXZlbnQuZGVmYXVsdFByZXZlbnRlZCAmJiBvbkRpc21pc3MpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBvbkRpc21pc3MoKTtcbiAgICAgICAgfVxuICAgIH0sIG93bmVyRG9jdW1lbnQpO1xuICAgICRrcXdwSCR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgaWYgKCFub2RlMSkgcmV0dXJuO1xuICAgICAgICBpZiAoZGlzYWJsZU91dHNpZGVQb2ludGVyRXZlbnRzKSB7XG4gICAgICAgICAgICBpZiAoY29udGV4dC5sYXllcnNXaXRoT3V0c2lkZVBvaW50ZXJFdmVudHNEaXNhYmxlZC5zaXplID09PSAwKSB7XG4gICAgICAgICAgICAgICAgJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJG9yaWdpbmFsQm9keVBvaW50ZXJFdmVudHMgPSBvd25lckRvY3VtZW50LmJvZHkuc3R5bGUucG9pbnRlckV2ZW50cztcbiAgICAgICAgICAgICAgICBvd25lckRvY3VtZW50LmJvZHkuc3R5bGUucG9pbnRlckV2ZW50cyA9ICdub25lJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnRleHQubGF5ZXJzV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWQuYWRkKG5vZGUxKTtcbiAgICAgICAgfVxuICAgICAgICBjb250ZXh0LmxheWVycy5hZGQobm9kZTEpO1xuICAgICAgICAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkZGlzcGF0Y2hVcGRhdGUoKTtcbiAgICAgICAgcmV0dXJuICgpPT57XG4gICAgICAgICAgICBpZiAoZGlzYWJsZU91dHNpZGVQb2ludGVyRXZlbnRzICYmIGNvbnRleHQubGF5ZXJzV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWQuc2l6ZSA9PT0gMSkgb3duZXJEb2N1bWVudC5ib2R5LnN0eWxlLnBvaW50ZXJFdmVudHMgPSAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkb3JpZ2luYWxCb2R5UG9pbnRlckV2ZW50cztcbiAgICAgICAgfTtcbiAgICB9LCBbXG4gICAgICAgIG5vZGUxLFxuICAgICAgICBvd25lckRvY3VtZW50LFxuICAgICAgICBkaXNhYmxlT3V0c2lkZVBvaW50ZXJFdmVudHMsXG4gICAgICAgIGNvbnRleHRcbiAgICBdKTtcbiAgICAvKipcbiAgICogV2UgcHVycG9zZWZ1bGx5IHByZXZlbnQgY29tYmluaW5nIHRoaXMgZWZmZWN0IHdpdGggdGhlIGBkaXNhYmxlT3V0c2lkZVBvaW50ZXJFdmVudHNgIGVmZmVjdFxuICAgKiBiZWNhdXNlIGEgY2hhbmdlIHRvIGBkaXNhYmxlT3V0c2lkZVBvaW50ZXJFdmVudHNgIHdvdWxkIHJlbW92ZSB0aGlzIGxheWVyIGZyb20gdGhlIHN0YWNrXG4gICAqIGFuZCBhZGQgaXQgdG8gdGhlIGVuZCBhZ2FpbiBzbyB0aGUgbGF5ZXJpbmcgb3JkZXIgd291bGRuJ3QgYmUgX2NyZWF0aW9uIG9yZGVyXy5cbiAgICogV2Ugb25seSB3YW50IHRoZW0gdG8gYmUgcmVtb3ZlZCBmcm9tIGNvbnRleHQgc3RhY2tzIHdoZW4gdW5tb3VudGVkLlxuICAgKi8gJGtxd3BIJHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICByZXR1cm4gKCk9PntcbiAgICAgICAgICAgIGlmICghbm9kZTEpIHJldHVybjtcbiAgICAgICAgICAgIGNvbnRleHQubGF5ZXJzLmRlbGV0ZShub2RlMSk7XG4gICAgICAgICAgICBjb250ZXh0LmxheWVyc1dpdGhPdXRzaWRlUG9pbnRlckV2ZW50c0Rpc2FibGVkLmRlbGV0ZShub2RlMSk7XG4gICAgICAgICAgICAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkZGlzcGF0Y2hVcGRhdGUoKTtcbiAgICAgICAgfTtcbiAgICB9LCBbXG4gICAgICAgIG5vZGUxLFxuICAgICAgICBjb250ZXh0XG4gICAgXSk7XG4gICAgJGtxd3BIJHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBjb25zdCBoYW5kbGVVcGRhdGUgPSAoKT0+Zm9yY2Uoe30pXG4gICAgICAgIDtcbiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigkNWNiOTJiZWY3NTc3OTYwZSR2YXIkQ09OVEVYVF9VUERBVEUsIGhhbmRsZVVwZGF0ZSk7XG4gICAgICAgIHJldHVybiAoKT0+ZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigkNWNiOTJiZWY3NTc3OTYwZSR2YXIkQ09OVEVYVF9VUERBVEUsIGhhbmRsZVVwZGF0ZSlcbiAgICAgICAgO1xuICAgIH0sIFtdKTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAka3F3cEgkY3JlYXRlRWxlbWVudCgka3F3cEgkUHJpbWl0aXZlLmRpdiwgJGtxd3BIJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBsYXllclByb3BzLCB7XG4gICAgICAgIHJlZjogY29tcG9zZWRSZWZzLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgcG9pbnRlckV2ZW50czogaXNCb2R5UG9pbnRlckV2ZW50c0Rpc2FibGVkID8gaXNQb2ludGVyRXZlbnRzRW5hYmxlZCA/ICdhdXRvJyA6ICdub25lJyA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIC4uLnByb3BzLnN0eWxlXG4gICAgICAgIH0sXG4gICAgICAgIG9uRm9jdXNDYXB0dXJlOiAka3F3cEgkY29tcG9zZUV2ZW50SGFuZGxlcnMocHJvcHMub25Gb2N1c0NhcHR1cmUsIGZvY3VzT3V0c2lkZS5vbkZvY3VzQ2FwdHVyZSksXG4gICAgICAgIG9uQmx1ckNhcHR1cmU6ICRrcXdwSCRjb21wb3NlRXZlbnRIYW5kbGVycyhwcm9wcy5vbkJsdXJDYXB0dXJlLCBmb2N1c091dHNpZGUub25CbHVyQ2FwdHVyZSksXG4gICAgICAgIG9uUG9pbnRlckRvd25DYXB0dXJlOiAka3F3cEgkY29tcG9zZUV2ZW50SGFuZGxlcnMocHJvcHMub25Qb2ludGVyRG93bkNhcHR1cmUsIHBvaW50ZXJEb3duT3V0c2lkZS5vblBvaW50ZXJEb3duQ2FwdHVyZSlcbiAgICB9KSk7XG59KTtcbi8qI19fUFVSRV9fKi8gT2JqZWN0LmFzc2lnbigkNWNiOTJiZWY3NTc3OTYwZSRleHBvcnQkMTc3ZmI2MmZmM2VjMWYyMiwge1xuICAgIGRpc3BsYXlOYW1lOiAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRElTTUlTU0FCTEVfTEFZRVJfTkFNRVxufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBEaXNtaXNzYWJsZUxheWVyQnJhbmNoXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRCUkFOQ0hfTkFNRSA9ICdEaXNtaXNzYWJsZUxheWVyQnJhbmNoJztcbmNvbnN0ICQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQ0ZDVlYjIxMDlkYjE0MjI4ID0gLyojX19QVVJFX18qLyAka3F3cEgkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICBjb25zdCBjb250ZXh0ID0gJGtxd3BIJHVzZUNvbnRleHQoJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJERpc21pc3NhYmxlTGF5ZXJDb250ZXh0KTtcbiAgICBjb25zdCByZWYgPSAka3F3cEgkdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IGNvbXBvc2VkUmVmcyA9ICRrcXdwSCR1c2VDb21wb3NlZFJlZnMoZm9yd2FyZGVkUmVmLCByZWYpO1xuICAgICRrcXdwSCR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgY29uc3Qgbm9kZSA9IHJlZi5jdXJyZW50O1xuICAgICAgICBpZiAobm9kZSkge1xuICAgICAgICAgICAgY29udGV4dC5icmFuY2hlcy5hZGQobm9kZSk7XG4gICAgICAgICAgICByZXR1cm4gKCk9PntcbiAgICAgICAgICAgICAgICBjb250ZXh0LmJyYW5jaGVzLmRlbGV0ZShub2RlKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9LCBbXG4gICAgICAgIGNvbnRleHQuYnJhbmNoZXNcbiAgICBdKTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAka3F3cEgkY3JlYXRlRWxlbWVudCgka3F3cEgkUHJpbWl0aXZlLmRpdiwgJGtxd3BIJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzKHt9LCBwcm9wcywge1xuICAgICAgICByZWY6IGNvbXBvc2VkUmVmc1xuICAgIH0pKTtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQ0ZDVlYjIxMDlkYjE0MjI4LCB7XG4gICAgZGlzcGxheU5hbWU6ICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRCUkFOQ0hfTkFNRVxufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIC8qKlxuICogTGlzdGVucyBmb3IgYHBvaW50ZXJkb3duYCBvdXRzaWRlIGEgcmVhY3Qgc3VidHJlZS4gV2UgdXNlIGBwb2ludGVyZG93bmAgcmF0aGVyIHRoYW4gYHBvaW50ZXJ1cGBcbiAqIHRvIG1pbWljIGxheWVyIGRpc21pc3NpbmcgYmVoYXZpb3VyIHByZXNlbnQgaW4gT1MuXG4gKiBSZXR1cm5zIHByb3BzIHRvIHBhc3MgdG8gdGhlIG5vZGUgd2Ugd2FudCB0byBjaGVjayBmb3Igb3V0c2lkZSBldmVudHMuXG4gKi8gZnVuY3Rpb24gJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJHVzZVBvaW50ZXJEb3duT3V0c2lkZShvblBvaW50ZXJEb3duT3V0c2lkZSwgb3duZXJEb2N1bWVudCA9IGdsb2JhbFRoaXMgPT09IG51bGwgfHwgZ2xvYmFsVGhpcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogZ2xvYmFsVGhpcy5kb2N1bWVudCkge1xuICAgIGNvbnN0IGhhbmRsZVBvaW50ZXJEb3duT3V0c2lkZSA9ICRrcXdwSCR1c2VDYWxsYmFja1JlZihvblBvaW50ZXJEb3duT3V0c2lkZSk7XG4gICAgY29uc3QgaXNQb2ludGVySW5zaWRlUmVhY3RUcmVlUmVmID0gJGtxd3BIJHVzZVJlZihmYWxzZSk7XG4gICAgY29uc3QgaGFuZGxlQ2xpY2tSZWYgPSAka3F3cEgkdXNlUmVmKCgpPT57fSk7XG4gICAgJGtxd3BIJHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBjb25zdCBoYW5kbGVQb2ludGVyRG93biA9IChldmVudCk9PntcbiAgICAgICAgICAgIGlmIChldmVudC50YXJnZXQgJiYgIWlzUG9pbnRlckluc2lkZVJlYWN0VHJlZVJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZXZlbnREZXRhaWwgPSB7XG4gICAgICAgICAgICAgICAgICAgIG9yaWdpbmFsRXZlbnQ6IGV2ZW50XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBmdW5jdGlvbiBoYW5kbGVBbmREaXNwYXRjaFBvaW50ZXJEb3duT3V0c2lkZUV2ZW50KCkge1xuICAgICAgICAgICAgICAgICAgICAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkaGFuZGxlQW5kRGlzcGF0Y2hDdXN0b21FdmVudCgkNWNiOTJiZWY3NTc3OTYwZSR2YXIkUE9JTlRFUl9ET1dOX09VVFNJREUsIGhhbmRsZVBvaW50ZXJEb3duT3V0c2lkZSwgZXZlbnREZXRhaWwsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NyZXRlOiB0cnVlXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICogT24gdG91Y2ggZGV2aWNlcywgd2UgbmVlZCB0byB3YWl0IGZvciBhIGNsaWNrIGV2ZW50IGJlY2F1c2UgYnJvd3NlcnMgaW1wbGVtZW50XG4gICAgICAgICAqIGEgfjM1MG1zIGRlbGF5IGJldHdlZW4gdGhlIHRpbWUgdGhlIHVzZXIgc3RvcHMgdG91Y2hpbmcgdGhlIGRpc3BsYXkgYW5kIHdoZW4gdGhlXG4gICAgICAgICAqIGJyb3dzZXIgZXhlY3V0cmVzIGV2ZW50cy4gV2UgbmVlZCB0byBlbnN1cmUgd2UgZG9uJ3QgcmVhY3RpdmF0ZSBwb2ludGVyLWV2ZW50cyB3aXRoaW5cbiAgICAgICAgICogdGhpcyB0aW1lZnJhbWUgb3RoZXJ3aXNlIHRoZSBicm93c2VyIG1heSBleGVjdXRlIGV2ZW50cyB0aGF0IHNob3VsZCBoYXZlIGJlZW4gcHJldmVudGVkLlxuICAgICAgICAgKlxuICAgICAgICAgKiBBZGRpdGlvbmFsbHksIHRoaXMgYWxzbyBsZXRzIHVzIGRlYWwgYXV0b21hdGljYWxseSB3aXRoIGNhbmNlbGxhdGlvbnMgd2hlbiBhIGNsaWNrIGV2ZW50XG4gICAgICAgICAqIGlzbid0IHJhaXNlZCBiZWNhdXNlIHRoZSBwYWdlIHdhcyBjb25zaWRlcmVkIHNjcm9sbGVkL2RyYWctc2Nyb2xsZWQsIGxvbmctcHJlc3NlZCwgZXRjLlxuICAgICAgICAgKlxuICAgICAgICAgKiBUaGlzIGlzIHdoeSB3ZSBhbHNvIGNvbnRpbnVvdXNseSByZW1vdmUgdGhlIHByZXZpb3VzIGxpc3RlbmVyLCBiZWNhdXNlIHdlIGNhbm5vdCBiZVxuICAgICAgICAgKiBjZXJ0YWluIHRoYXQgaXQgd2FzIHJhaXNlZCwgYW5kIHRoZXJlZm9yZSBjbGVhbmVkLXVwLlxuICAgICAgICAgKi8gaWYgKGV2ZW50LnBvaW50ZXJUeXBlID09PSAndG91Y2gnKSB7XG4gICAgICAgICAgICAgICAgICAgIG93bmVyRG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVDbGlja1JlZi5jdXJyZW50KTtcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlQ2xpY2tSZWYuY3VycmVudCA9IGhhbmRsZUFuZERpc3BhdGNoUG9pbnRlckRvd25PdXRzaWRlRXZlbnQ7XG4gICAgICAgICAgICAgICAgICAgIG93bmVyRG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVDbGlja1JlZi5jdXJyZW50LCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvbmNlOiB0cnVlXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBoYW5kbGVBbmREaXNwYXRjaFBvaW50ZXJEb3duT3V0c2lkZUV2ZW50KCk7XG4gICAgICAgICAgICB9IGVsc2UgLy8gV2UgbmVlZCB0byByZW1vdmUgdGhlIGV2ZW50IGxpc3RlbmVyIGluIGNhc2UgdGhlIG91dHNpZGUgY2xpY2sgaGFzIGJlZW4gY2FuY2VsZWQuXG4gICAgICAgICAgICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9yYWRpeC11aS9wcmltaXRpdmVzL2lzc3Vlcy8yMTcxXG4gICAgICAgICAgICBvd25lckRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgaGFuZGxlQ2xpY2tSZWYuY3VycmVudCk7XG4gICAgICAgICAgICBpc1BvaW50ZXJJbnNpZGVSZWFjdFRyZWVSZWYuY3VycmVudCA9IGZhbHNlO1xuICAgICAgICB9O1xuICAgICAgICAvKipcbiAgICAgKiBpZiB0aGlzIGhvb2sgZXhlY3V0ZXMgaW4gYSBjb21wb25lbnQgdGhhdCBtb3VudHMgdmlhIGEgYHBvaW50ZXJkb3duYCBldmVudCwgdGhlIGV2ZW50XG4gICAgICogd291bGQgYnViYmxlIHVwIHRvIHRoZSBkb2N1bWVudCBhbmQgdHJpZ2dlciBhIGBwb2ludGVyRG93bk91dHNpZGVgIGV2ZW50LiBXZSBhdm9pZFxuICAgICAqIHRoaXMgYnkgZGVsYXlpbmcgdGhlIGV2ZW50IGxpc3RlbmVyIHJlZ2lzdHJhdGlvbiBvbiB0aGUgZG9jdW1lbnQuXG4gICAgICogVGhpcyBpcyBub3QgUmVhY3Qgc3BlY2lmaWMsIGJ1dCByYXRoZXIgaG93IHRoZSBET00gd29ya3MsIGllOlxuICAgICAqIGBgYFxuICAgICAqIGJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVyZG93bicsICgpID0+IHtcbiAgICAgKiAgIGNvbnNvbGUubG9nKCdJIHdpbGwgbG9nJyk7XG4gICAgICogICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVyZG93bicsICgpID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coJ0kgd2lsbCBhbHNvIGxvZycpO1xuICAgICAqICAgfSlcbiAgICAgKiB9KTtcbiAgICAgKi8gY29uc3QgdGltZXJJZCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpPT57XG4gICAgICAgICAgICBvd25lckRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgaGFuZGxlUG9pbnRlckRvd24pO1xuICAgICAgICB9LCAwKTtcbiAgICAgICAgcmV0dXJuICgpPT57XG4gICAgICAgICAgICB3aW5kb3cuY2xlYXJUaW1lb3V0KHRpbWVySWQpO1xuICAgICAgICAgICAgb3duZXJEb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdwb2ludGVyZG93bicsIGhhbmRsZVBvaW50ZXJEb3duKTtcbiAgICAgICAgICAgIG93bmVyRG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBoYW5kbGVDbGlja1JlZi5jdXJyZW50KTtcbiAgICAgICAgfTtcbiAgICB9LCBbXG4gICAgICAgIG93bmVyRG9jdW1lbnQsXG4gICAgICAgIGhhbmRsZVBvaW50ZXJEb3duT3V0c2lkZVxuICAgIF0pO1xuICAgIHJldHVybiB7XG4gICAgICAgIC8vIGVuc3VyZXMgd2UgY2hlY2sgUmVhY3QgY29tcG9uZW50IHRyZWUgKG5vdCBqdXN0IERPTSB0cmVlKVxuICAgICAgICBvblBvaW50ZXJEb3duQ2FwdHVyZTogKCk9PmlzUG9pbnRlckluc2lkZVJlYWN0VHJlZVJlZi5jdXJyZW50ID0gdHJ1ZVxuICAgIH07XG59XG4vKipcbiAqIExpc3RlbnMgZm9yIHdoZW4gZm9jdXMgaGFwcGVucyBvdXRzaWRlIGEgcmVhY3Qgc3VidHJlZS5cbiAqIFJldHVybnMgcHJvcHMgdG8gcGFzcyB0byB0aGUgcm9vdCAobm9kZSkgb2YgdGhlIHN1YnRyZWUgd2Ugd2FudCB0byBjaGVjay5cbiAqLyBmdW5jdGlvbiAkNWNiOTJiZWY3NTc3OTYwZSR2YXIkdXNlRm9jdXNPdXRzaWRlKG9uRm9jdXNPdXRzaWRlLCBvd25lckRvY3VtZW50ID0gZ2xvYmFsVGhpcyA9PT0gbnVsbCB8fCBnbG9iYWxUaGlzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBnbG9iYWxUaGlzLmRvY3VtZW50KSB7XG4gICAgY29uc3QgaGFuZGxlRm9jdXNPdXRzaWRlID0gJGtxd3BIJHVzZUNhbGxiYWNrUmVmKG9uRm9jdXNPdXRzaWRlKTtcbiAgICBjb25zdCBpc0ZvY3VzSW5zaWRlUmVhY3RUcmVlUmVmID0gJGtxd3BIJHVzZVJlZihmYWxzZSk7XG4gICAgJGtxd3BIJHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBjb25zdCBoYW5kbGVGb2N1cyA9IChldmVudCk9PntcbiAgICAgICAgICAgIGlmIChldmVudC50YXJnZXQgJiYgIWlzRm9jdXNJbnNpZGVSZWFjdFRyZWVSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGV2ZW50RGV0YWlsID0ge1xuICAgICAgICAgICAgICAgICAgICBvcmlnaW5hbEV2ZW50OiBldmVudFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJGhhbmRsZUFuZERpc3BhdGNoQ3VzdG9tRXZlbnQoJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJEZPQ1VTX09VVFNJREUsIGhhbmRsZUZvY3VzT3V0c2lkZSwgZXZlbnREZXRhaWwsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzY3JldGU6IGZhbHNlXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIG93bmVyRG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignZm9jdXNpbicsIGhhbmRsZUZvY3VzKTtcbiAgICAgICAgcmV0dXJuICgpPT5vd25lckRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2ZvY3VzaW4nLCBoYW5kbGVGb2N1cylcbiAgICAgICAgO1xuICAgIH0sIFtcbiAgICAgICAgb3duZXJEb2N1bWVudCxcbiAgICAgICAgaGFuZGxlRm9jdXNPdXRzaWRlXG4gICAgXSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgb25Gb2N1c0NhcHR1cmU6ICgpPT5pc0ZvY3VzSW5zaWRlUmVhY3RUcmVlUmVmLmN1cnJlbnQgPSB0cnVlXG4gICAgICAgICxcbiAgICAgICAgb25CbHVyQ2FwdHVyZTogKCk9PmlzRm9jdXNJbnNpZGVSZWFjdFRyZWVSZWYuY3VycmVudCA9IGZhbHNlXG4gICAgfTtcbn1cbmZ1bmN0aW9uICQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRkaXNwYXRjaFVwZGF0ZSgpIHtcbiAgICBjb25zdCBldmVudCA9IG5ldyBDdXN0b21FdmVudCgkNWNiOTJiZWY3NTc3OTYwZSR2YXIkQ09OVEVYVF9VUERBVEUpO1xuICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQoZXZlbnQpO1xufVxuZnVuY3Rpb24gJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJGhhbmRsZUFuZERpc3BhdGNoQ3VzdG9tRXZlbnQobmFtZSwgaGFuZGxlciwgZGV0YWlsLCB7IGRpc2NyZXRlOiBkaXNjcmV0ZSAgfSkge1xuICAgIGNvbnN0IHRhcmdldCA9IGRldGFpbC5vcmlnaW5hbEV2ZW50LnRhcmdldDtcbiAgICBjb25zdCBldmVudCA9IG5ldyBDdXN0b21FdmVudChuYW1lLCB7XG4gICAgICAgIGJ1YmJsZXM6IGZhbHNlLFxuICAgICAgICBjYW5jZWxhYmxlOiB0cnVlLFxuICAgICAgICBkZXRhaWw6IGRldGFpbFxuICAgIH0pO1xuICAgIGlmIChoYW5kbGVyKSB0YXJnZXQuYWRkRXZlbnRMaXN0ZW5lcihuYW1lLCBoYW5kbGVyLCB7XG4gICAgICAgIG9uY2U6IHRydWVcbiAgICB9KTtcbiAgICBpZiAoZGlzY3JldGUpICRrcXdwSCRkaXNwYXRjaERpc2NyZXRlQ3VzdG9tRXZlbnQodGFyZ2V0LCBldmVudCk7XG4gICAgZWxzZSB0YXJnZXQuZGlzcGF0Y2hFdmVudChldmVudCk7XG59XG5jb25zdCAkNWNiOTJiZWY3NTc3OTYwZSRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSA9ICQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQxNzdmYjYyZmYzZWMxZjIyO1xuY29uc3QgJDVjYjkyYmVmNzU3Nzk2MGUkZXhwb3J0JGFlY2IyZGRjYjU1Yzk1YmUgPSAkNWNiOTJiZWY3NTc3OTYwZSRleHBvcnQkNGQ1ZWIyMTA5ZGIxNDIyODtcblxuXG5cblxuZXhwb3J0IHskNWNiOTJiZWY3NTc3OTYwZSRleHBvcnQkMTc3ZmI2MmZmM2VjMWYyMiBhcyBEaXNtaXNzYWJsZUxheWVyLCAkNWNiOTJiZWY3NTc3OTYwZSRleHBvcnQkNGQ1ZWIyMTA5ZGIxNDIyOCBhcyBEaXNtaXNzYWJsZUxheWVyQnJhbmNoLCAkNWNiOTJiZWY3NTc3OTYwZSRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSBhcyBSb290LCAkNWNiOTJiZWY3NTc3OTYwZSRleHBvcnQkYWVjYjJkZGNiNTVjOTViZSBhcyBCcmFuY2h9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXgubWpzLm1hcFxuIl0sIm5hbWVzIjpbIiRrcXdwSCRiYWJlbHJ1bnRpbWVoZWxwZXJzZXNtZXh0ZW5kcyIsImNyZWF0ZUNvbnRleHQiLCIka3F3cEgkY3JlYXRlQ29udGV4dCIsImZvcndhcmRSZWYiLCIka3F3cEgkZm9yd2FyZFJlZiIsInVzZUNvbnRleHQiLCIka3F3cEgkdXNlQ29udGV4dCIsInVzZVN0YXRlIiwiJGtxd3BIJHVzZVN0YXRlIiwidXNlRWZmZWN0IiwiJGtxd3BIJHVzZUVmZmVjdCIsImNyZWF0ZUVsZW1lbnQiLCIka3F3cEgkY3JlYXRlRWxlbWVudCIsInVzZVJlZiIsIiRrcXdwSCR1c2VSZWYiLCJjb21wb3NlRXZlbnRIYW5kbGVycyIsIiRrcXdwSCRjb21wb3NlRXZlbnRIYW5kbGVycyIsIlByaW1pdGl2ZSIsIiRrcXdwSCRQcmltaXRpdmUiLCJkaXNwYXRjaERpc2NyZXRlQ3VzdG9tRXZlbnQiLCIka3F3cEgkZGlzcGF0Y2hEaXNjcmV0ZUN1c3RvbUV2ZW50IiwidXNlQ29tcG9zZWRSZWZzIiwiJGtxd3BIJHVzZUNvbXBvc2VkUmVmcyIsInVzZUNhbGxiYWNrUmVmIiwiJGtxd3BIJHVzZUNhbGxiYWNrUmVmIiwidXNlRXNjYXBlS2V5ZG93biIsIiRrcXdwSCR1c2VFc2NhcGVLZXlkb3duIiwiJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJERJU01JU1NBQkxFX0xBWUVSX05BTUUiLCIkNWNiOTJiZWY3NTc3OTYwZSR2YXIkQ09OVEVYVF9VUERBVEUiLCIkNWNiOTJiZWY3NTc3OTYwZSR2YXIkUE9JTlRFUl9ET1dOX09VVFNJREUiLCIkNWNiOTJiZWY3NTc3OTYwZSR2YXIkRk9DVVNfT1VUU0lERSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRvcmlnaW5hbEJvZHlQb2ludGVyRXZlbnRzIiwiJDVjYjkyYmVmNzU3Nzk2MGUkdmFyJERpc21pc3NhYmxlTGF5ZXJDb250ZXh0IiwibGF5ZXJzIiwiU2V0IiwibGF5ZXJzV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWQiLCJicmFuY2hlcyIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCQxNzdmYjYyZmYzZWMxZjIyIiwicHJvcHMiLCJmb3J3YXJkZWRSZWYiLCJfbm9kZSRvd25lckRvY3VtZW50IiwiZGlzYWJsZU91dHNpZGVQb2ludGVyRXZlbnRzIiwib25Fc2NhcGVLZXlEb3duIiwib25Qb2ludGVyRG93bk91dHNpZGUiLCJvbkZvY3VzT3V0c2lkZSIsIm9uSW50ZXJhY3RPdXRzaWRlIiwib25EaXNtaXNzIiwibGF5ZXJQcm9wcyIsImNvbnRleHQiLCJub2RlMSIsInNldE5vZGUiLCJvd25lckRvY3VtZW50IiwiZ2xvYmFsVGhpcyIsImRvY3VtZW50IiwiZm9yY2UiLCJjb21wb3NlZFJlZnMiLCJub2RlIiwiQXJyYXkiLCJmcm9tIiwiaGlnaGVzdExheWVyV2l0aE91dHNpZGVQb2ludGVyRXZlbnRzRGlzYWJsZWQiLCJzbGljZSIsImhpZ2hlc3RMYXllcldpdGhPdXRzaWRlUG9pbnRlckV2ZW50c0Rpc2FibGVkSW5kZXgiLCJpbmRleE9mIiwiaW5kZXgiLCJpc0JvZHlQb2ludGVyRXZlbnRzRGlzYWJsZWQiLCJzaXplIiwiaXNQb2ludGVyRXZlbnRzRW5hYmxlZCIsInBvaW50ZXJEb3duT3V0c2lkZSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciR1c2VQb2ludGVyRG93bk91dHNpZGUiLCJldmVudCIsInRhcmdldCIsImlzUG9pbnRlckRvd25PbkJyYW5jaCIsInNvbWUiLCJicmFuY2giLCJjb250YWlucyIsImRlZmF1bHRQcmV2ZW50ZWQiLCJmb2N1c091dHNpZGUiLCIkNWNiOTJiZWY3NTc3OTYwZSR2YXIkdXNlRm9jdXNPdXRzaWRlIiwiaXNGb2N1c0luQnJhbmNoIiwiaXNIaWdoZXN0TGF5ZXIiLCJwcmV2ZW50RGVmYXVsdCIsImJvZHkiLCJzdHlsZSIsInBvaW50ZXJFdmVudHMiLCJhZGQiLCIkNWNiOTJiZWY3NTc3OTYwZSR2YXIkZGlzcGF0Y2hVcGRhdGUiLCJkZWxldGUiLCJoYW5kbGVVcGRhdGUiLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImRpdiIsInJlZiIsInVuZGVmaW5lZCIsIm9uRm9jdXNDYXB0dXJlIiwib25CbHVyQ2FwdHVyZSIsIm9uUG9pbnRlckRvd25DYXB0dXJlIiwiT2JqZWN0IiwiYXNzaWduIiwiZGlzcGxheU5hbWUiLCIkNWNiOTJiZWY3NTc3OTYwZSR2YXIkQlJBTkNIX05BTUUiLCIkNWNiOTJiZWY3NTc3OTYwZSRleHBvcnQkNGQ1ZWIyMTA5ZGIxNDIyOCIsImN1cnJlbnQiLCJoYW5kbGVQb2ludGVyRG93bk91dHNpZGUiLCJpc1BvaW50ZXJJbnNpZGVSZWFjdFRyZWVSZWYiLCJoYW5kbGVDbGlja1JlZiIsImhhbmRsZVBvaW50ZXJEb3duIiwiZXZlbnREZXRhaWwiLCJvcmlnaW5hbEV2ZW50IiwiaGFuZGxlQW5kRGlzcGF0Y2hQb2ludGVyRG93bk91dHNpZGVFdmVudCIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJHZhciRoYW5kbGVBbmREaXNwYXRjaEN1c3RvbUV2ZW50IiwiZGlzY3JldGUiLCJwb2ludGVyVHlwZSIsIm9uY2UiLCJ0aW1lcklkIiwid2luZG93Iiwic2V0VGltZW91dCIsImNsZWFyVGltZW91dCIsImhhbmRsZUZvY3VzT3V0c2lkZSIsImlzRm9jdXNJbnNpZGVSZWFjdFRyZWVSZWYiLCJoYW5kbGVGb2N1cyIsIkN1c3RvbUV2ZW50IiwiZGlzcGF0Y2hFdmVudCIsIm5hbWUiLCJoYW5kbGVyIiwiZGV0YWlsIiwiYnViYmxlcyIsImNhbmNlbGFibGUiLCIkNWNiOTJiZWY3NTc3OTYwZSRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSIsIiQ1Y2I5MmJlZjc1Nzc5NjBlJGV4cG9ydCRhZWNiMmRkY2I1NWM5NWJlIiwiRGlzbWlzc2FibGVMYXllciIsIkRpc21pc3NhYmxlTGF5ZXJCcmFuY2giLCJSb290IiwiQnJhbmNoIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-portal/dist/index.mjs": /*!***********************************************************************************************!*\ !*** ./node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-portal/dist/index.mjs ***! \***********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Portal: () => (/* binding */ $f1701beae083dbae$export$602eac185826482c),\n/* harmony export */ Root: () => (/* binding */ $f1701beae083dbae$export$be92b6f5f03c0fe9)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-dom */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-dom.js\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n\n\n\n\n/* -------------------------------------------------------------------------------------------------\n * Portal\n * -----------------------------------------------------------------------------------------------*/ const $f1701beae083dbae$var$PORTAL_NAME = \"Portal\";\nconst $f1701beae083dbae$export$602eac185826482c = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n var _globalThis$document;\n const { container: container = globalThis === null || globalThis === void 0 ? void 0 : (_globalThis$document = globalThis.document) === null || _globalThis$document === void 0 ? void 0 : _globalThis$document.body, ...portalProps } = props;\n return container ? /*#__PURE__*/ react_dom__WEBPACK_IMPORTED_MODULE_2__.createPortal(/*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_3__.Primitive.div, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, portalProps, {\n ref: forwardedRef\n })), container) : null;\n});\n/*#__PURE__*/ Object.assign($f1701beae083dbae$export$602eac185826482c, {\n displayName: $f1701beae083dbae$var$PORTAL_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ const $f1701beae083dbae$export$be92b6f5f03c0fe9 = $f1701beae083dbae$export$602eac185826482c;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXRvYXN0L25vZGVfbW9kdWxlcy9AcmFkaXgtdWkvcmVhY3QtcG9ydGFsL2Rpc3QvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFzRjtBQUNPO0FBQ3JEO0FBQ2dDO0FBTXhFOztrR0FFa0csR0FBRyxNQUFNUSxvQ0FBb0M7QUFDL0ksTUFBTUMsNENBQTRDLFdBQVcsR0FBR1AsaURBQWlCQSxDQUFDLENBQUNRLE9BQU9DO0lBQ3RGLElBQUlDO0lBQ0osTUFBTSxFQUFFQyxXQUFXQSxZQUFZQyxlQUFlLFFBQVFBLGVBQWUsS0FBSyxJQUFJLEtBQUssSUFBSSxDQUFDRix1QkFBdUJFLFdBQVdDLFFBQVEsTUFBTSxRQUFRSCx5QkFBeUIsS0FBSyxJQUFJLEtBQUssSUFBSUEscUJBQXFCSSxJQUFJLEVBQUcsR0FBR0MsYUFBYSxHQUFHUDtJQUMxTyxPQUFPRyxZQUFZLFdBQVcsR0FBR1IsbURBQTRCLENBQUMsV0FBVyxHQUFHRCxvREFBb0JBLENBQUNHLGdFQUFnQkEsQ0FBQ1ksR0FBRyxFQUFFbkIsOEVBQW9DQSxDQUFDLENBQUMsR0FBR2lCLGFBQWE7UUFDektHLEtBQUtUO0lBQ1QsS0FBS0UsYUFBYTtBQUN0QjtBQUNBLFdBQVcsR0FBR1EsT0FBT0MsTUFBTSxDQUFDYiwyQ0FBMkM7SUFDbkVjLGFBQWFmO0FBQ2pCO0FBQ0Esa0dBQWtHLEdBQUcsTUFBTWdCLDRDQUE0Q2Y7QUFLdkMsQ0FDaEgsa0NBQWtDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZW1iZWRjaGFpbi1hZG1pbi8uL25vZGVfbW9kdWxlcy9AcmFkaXgtdWkvcmVhY3QtdG9hc3Qvbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC1wb3J0YWwvZGlzdC9pbmRleC5tanM/YjEwNiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJDdTWGwyJGJhYmVscnVudGltZWhlbHBlcnNlc21leHRlbmRzIGZyb20gXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9leHRlbmRzXCI7XG5pbXBvcnQge2ZvcndhcmRSZWYgYXMgJDdTWGwyJGZvcndhcmRSZWYsIGNyZWF0ZUVsZW1lbnQgYXMgJDdTWGwyJGNyZWF0ZUVsZW1lbnR9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0ICQ3U1hsMiRyZWFjdGRvbSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQge1ByaW1pdGl2ZSBhcyAkN1NYbDIkUHJpbWl0aXZlfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXByaW1pdGl2ZVwiO1xuXG5cblxuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFBvcnRhbFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkZjE3MDFiZWFlMDgzZGJhZSR2YXIkUE9SVEFMX05BTUUgPSAnUG9ydGFsJztcbmNvbnN0ICRmMTcwMWJlYWUwODNkYmFlJGV4cG9ydCQ2MDJlYWMxODU4MjY0ODJjID0gLyojX19QVVJFX18qLyAkN1NYbDIkZm9yd2FyZFJlZigocHJvcHMsIGZvcndhcmRlZFJlZik9PntcbiAgICB2YXIgX2dsb2JhbFRoaXMkZG9jdW1lbnQ7XG4gICAgY29uc3QgeyBjb250YWluZXI6IGNvbnRhaW5lciA9IGdsb2JhbFRoaXMgPT09IG51bGwgfHwgZ2xvYmFsVGhpcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogKF9nbG9iYWxUaGlzJGRvY3VtZW50ID0gZ2xvYmFsVGhpcy5kb2N1bWVudCkgPT09IG51bGwgfHwgX2dsb2JhbFRoaXMkZG9jdW1lbnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9nbG9iYWxUaGlzJGRvY3VtZW50LmJvZHkgLCAuLi5wb3J0YWxQcm9wcyB9ID0gcHJvcHM7XG4gICAgcmV0dXJuIGNvbnRhaW5lciA/IC8qI19fUFVSRV9fKi8gJDdTWGwyJHJlYWN0ZG9tLmNyZWF0ZVBvcnRhbCgvKiNfX1BVUkVfXyovICQ3U1hsMiRjcmVhdGVFbGVtZW50KCQ3U1hsMiRQcmltaXRpdmUuZGl2LCAkN1NYbDIkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIHBvcnRhbFByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmXG4gICAgfSkpLCBjb250YWluZXIpIDogbnVsbDtcbn0pO1xuLyojX19QVVJFX18qLyBPYmplY3QuYXNzaWduKCRmMTcwMWJlYWUwODNkYmFlJGV4cG9ydCQ2MDJlYWMxODU4MjY0ODJjLCB7XG4gICAgZGlzcGxheU5hbWU6ICRmMTcwMWJlYWUwODNkYmFlJHZhciRQT1JUQUxfTkFNRVxufSk7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIGNvbnN0ICRmMTcwMWJlYWUwODNkYmFlJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5ID0gJGYxNzAxYmVhZTA4M2RiYWUkZXhwb3J0JDYwMmVhYzE4NTgyNjQ4MmM7XG5cblxuXG5cbmV4cG9ydCB7JGYxNzAxYmVhZTA4M2RiYWUkZXhwb3J0JDYwMmVhYzE4NTgyNjQ4MmMgYXMgUG9ydGFsLCAkZjE3MDFiZWFlMDgzZGJhZSRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSBhcyBSb290fTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4Lm1qcy5tYXBcbiJdLCJuYW1lcyI6WyIkN1NYbDIkYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMiLCJmb3J3YXJkUmVmIiwiJDdTWGwyJGZvcndhcmRSZWYiLCJjcmVhdGVFbGVtZW50IiwiJDdTWGwyJGNyZWF0ZUVsZW1lbnQiLCIkN1NYbDIkcmVhY3Rkb20iLCJQcmltaXRpdmUiLCIkN1NYbDIkUHJpbWl0aXZlIiwiJGYxNzAxYmVhZTA4M2RiYWUkdmFyJFBPUlRBTF9OQU1FIiwiJGYxNzAxYmVhZTA4M2RiYWUkZXhwb3J0JDYwMmVhYzE4NTgyNjQ4MmMiLCJwcm9wcyIsImZvcndhcmRlZFJlZiIsIl9nbG9iYWxUaGlzJGRvY3VtZW50IiwiY29udGFpbmVyIiwiZ2xvYmFsVGhpcyIsImRvY3VtZW50IiwiYm9keSIsInBvcnRhbFByb3BzIiwiY3JlYXRlUG9ydGFsIiwiZGl2IiwicmVmIiwiT2JqZWN0IiwiYXNzaWduIiwiZGlzcGxheU5hbWUiLCIkZjE3MDFiZWFlMDgzZGJhZSRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSIsIlBvcnRhbCIsIlJvb3QiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-toast/node_modules/@radix-ui/react-portal/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs": /*!**********************************************************************!*\ !*** ./node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs ***! \**********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useCallbackRef: () => (/* binding */ $b1b2314f5f9a1d84$export$25bec8c6f54ee79a)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n\n/**\n * A custom hook that converts a callback to a ref to avoid triggering re-renders when passed as a\n * prop or avoid re-executing effects when passed as a dependency\n */ function $b1b2314f5f9a1d84$export$25bec8c6f54ee79a(callback) {\n const callbackRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(callback);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n callbackRef.current = callback;\n }); // https://github.com/facebook/react/issues/19240\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>(...args)=>{\n var _callbackRef$current;\n return (_callbackRef$current = callbackRef.current) === null || _callbackRef$current === void 0 ? void 0 : _callbackRef$current.call(callbackRef, ...args);\n }, []);\n}\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXVzZS1jYWxsYmFjay1yZWYvZGlzdC9pbmRleC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBd0c7QUFHeEc7OztDQUdDLEdBQUcsU0FBU00sMENBQTBDQyxRQUFRO0lBQzNELE1BQU1DLGNBQWNQLDZDQUFhQSxDQUFDTTtJQUNsQ0osZ0RBQWdCQSxDQUFDO1FBQ2JLLFlBQVlDLE9BQU8sR0FBR0Y7SUFDMUIsSUFBSSxpREFBaUQ7SUFDckQsT0FBT0YsOENBQWNBLENBQUMsSUFBSSxDQUFDLEdBQUdLO1lBQ3RCLElBQUlDO1lBQ0osT0FBTyxDQUFDQSx1QkFBdUJILFlBQVlDLE9BQU8sTUFBTSxRQUFRRSx5QkFBeUIsS0FBSyxJQUFJLEtBQUssSUFBSUEscUJBQXFCQyxJQUFJLENBQUNKLGdCQUFnQkU7UUFDekosR0FDRixFQUFFO0FBQ1I7QUFLcUUsQ0FDckUsa0NBQWtDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZW1iZWRjaGFpbi1hZG1pbi8uL25vZGVfbW9kdWxlcy9AcmFkaXgtdWkvcmVhY3QtdXNlLWNhbGxiYWNrLXJlZi9kaXN0L2luZGV4Lm1qcz8xMWYwIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dXNlUmVmIGFzICRsd2lXaiR1c2VSZWYsIHVzZUVmZmVjdCBhcyAkbHdpV2okdXNlRWZmZWN0LCB1c2VNZW1vIGFzICRsd2lXaiR1c2VNZW1vfSBmcm9tIFwicmVhY3RcIjtcblxuXG4vKipcbiAqIEEgY3VzdG9tIGhvb2sgdGhhdCBjb252ZXJ0cyBhIGNhbGxiYWNrIHRvIGEgcmVmIHRvIGF2b2lkIHRyaWdnZXJpbmcgcmUtcmVuZGVycyB3aGVuIHBhc3NlZCBhcyBhXG4gKiBwcm9wIG9yIGF2b2lkIHJlLWV4ZWN1dGluZyBlZmZlY3RzIHdoZW4gcGFzc2VkIGFzIGEgZGVwZW5kZW5jeVxuICovIGZ1bmN0aW9uICRiMWIyMzE0ZjVmOWExZDg0JGV4cG9ydCQyNWJlYzhjNmY1NGVlNzlhKGNhbGxiYWNrKSB7XG4gICAgY29uc3QgY2FsbGJhY2tSZWYgPSAkbHdpV2okdXNlUmVmKGNhbGxiYWNrKTtcbiAgICAkbHdpV2okdXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGNhbGxiYWNrUmVmLmN1cnJlbnQgPSBjYWxsYmFjaztcbiAgICB9KTsgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3JlYWN0L2lzc3Vlcy8xOTI0MFxuICAgIHJldHVybiAkbHdpV2okdXNlTWVtbygoKT0+KC4uLmFyZ3MpPT57XG4gICAgICAgICAgICB2YXIgX2NhbGxiYWNrUmVmJGN1cnJlbnQ7XG4gICAgICAgICAgICByZXR1cm4gKF9jYWxsYmFja1JlZiRjdXJyZW50ID0gY2FsbGJhY2tSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2NhbGxiYWNrUmVmJGN1cnJlbnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9jYWxsYmFja1JlZiRjdXJyZW50LmNhbGwoY2FsbGJhY2tSZWYsIC4uLmFyZ3MpO1xuICAgICAgICB9XG4gICAgLCBbXSk7XG59XG5cblxuXG5cbmV4cG9ydCB7JGIxYjIzMTRmNWY5YTFkODQkZXhwb3J0JDI1YmVjOGM2ZjU0ZWU3OWEgYXMgdXNlQ2FsbGJhY2tSZWZ9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXgubWpzLm1hcFxuIl0sIm5hbWVzIjpbInVzZVJlZiIsIiRsd2lXaiR1c2VSZWYiLCJ1c2VFZmZlY3QiLCIkbHdpV2okdXNlRWZmZWN0IiwidXNlTWVtbyIsIiRsd2lXaiR1c2VNZW1vIiwiJGIxYjIzMTRmNWY5YTFkODQkZXhwb3J0JDI1YmVjOGM2ZjU0ZWU3OWEiLCJjYWxsYmFjayIsImNhbGxiYWNrUmVmIiwiY3VycmVudCIsImFyZ3MiLCJfY2FsbGJhY2tSZWYkY3VycmVudCIsImNhbGwiLCJ1c2VDYWxsYmFja1JlZiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs": /*!****************************************************************************!*\ !*** ./node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs ***! \****************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useControllableState: () => (/* binding */ $71cd76cc60e0454e$export$6f32135080cb4c3)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @radix-ui/react-use-callback-ref */ \"(ssr)/./node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs\");\n\n\nfunction $71cd76cc60e0454e$export$6f32135080cb4c3({ prop: prop, defaultProp: defaultProp, onChange: onChange = ()=>{} }) {\n const [uncontrolledProp, setUncontrolledProp] = $71cd76cc60e0454e$var$useUncontrolledState({\n defaultProp: defaultProp,\n onChange: onChange\n });\n const isControlled = prop !== undefined;\n const value1 = isControlled ? prop : uncontrolledProp;\n const handleChange = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_1__.useCallbackRef)(onChange);\n const setValue = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((nextValue)=>{\n if (isControlled) {\n const setter = nextValue;\n const value = typeof nextValue === \"function\" ? setter(prop) : nextValue;\n if (value !== prop) handleChange(value);\n } else setUncontrolledProp(nextValue);\n }, [\n isControlled,\n prop,\n setUncontrolledProp,\n handleChange\n ]);\n return [\n value1,\n setValue\n ];\n}\nfunction $71cd76cc60e0454e$var$useUncontrolledState({ defaultProp: defaultProp, onChange: onChange }) {\n const uncontrolledState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(defaultProp);\n const [value] = uncontrolledState;\n const prevValueRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(value);\n const handleChange = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_1__.useCallbackRef)(onChange);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n if (prevValueRef.current !== value) {\n handleChange(value);\n prevValueRef.current = value;\n }\n }, [\n value,\n prevValueRef,\n handleChange\n ]);\n return uncontrolledState;\n}\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXVzZS1jb250cm9sbGFibGUtc3RhdGUvZGlzdC9pbmRleC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQTZJO0FBQ3BEO0FBSXpGLFNBQVNVLHlDQUF5QyxFQUFFQyxNQUFNQSxJQUFJLEVBQUdDLGFBQWFBLFdBQVcsRUFBR0MsVUFBVUEsV0FBVyxLQUFLLENBQUMsRUFBRztJQUN0SCxNQUFNLENBQUNDLGtCQUFrQkMsb0JBQW9CLEdBQUdDLDJDQUEyQztRQUN2RkosYUFBYUE7UUFDYkMsVUFBVUE7SUFDZDtJQUNBLE1BQU1JLGVBQWVOLFNBQVNPO0lBQzlCLE1BQU1DLFNBQVNGLGVBQWVOLE9BQU9HO0lBQ3JDLE1BQU1NLGVBQWVYLGdGQUFxQkEsQ0FBQ0k7SUFDM0MsTUFBTVEsV0FBV3BCLGtEQUFrQkEsQ0FBQyxDQUFDcUI7UUFDakMsSUFBSUwsY0FBYztZQUNkLE1BQU1NLFNBQVNEO1lBQ2YsTUFBTUUsUUFBUSxPQUFPRixjQUFjLGFBQWFDLE9BQU9aLFFBQVFXO1lBQy9ELElBQUlFLFVBQVViLE1BQU1TLGFBQWFJO1FBQ3JDLE9BQU9ULG9CQUFvQk87SUFDL0IsR0FBRztRQUNDTDtRQUNBTjtRQUNBSTtRQUNBSztLQUNIO0lBQ0QsT0FBTztRQUNIRDtRQUNBRTtLQUNIO0FBQ0w7QUFDQSxTQUFTTCwyQ0FBMkMsRUFBRUosYUFBYUEsV0FBVyxFQUFHQyxVQUFVQSxRQUFRLEVBQUc7SUFDbEcsTUFBTVksb0JBQW9CdEIsK0NBQWVBLENBQUNTO0lBQzFDLE1BQU0sQ0FBQ1ksTUFBTSxHQUFHQztJQUNoQixNQUFNQyxlQUFlckIsNkNBQWFBLENBQUNtQjtJQUNuQyxNQUFNSixlQUFlWCxnRkFBcUJBLENBQUNJO0lBQzNDTixnREFBZ0JBLENBQUM7UUFDYixJQUFJbUIsYUFBYUMsT0FBTyxLQUFLSCxPQUFPO1lBQ2hDSixhQUFhSTtZQUNiRSxhQUFhQyxPQUFPLEdBQUdIO1FBQzNCO0lBQ0osR0FBRztRQUNDQTtRQUNBRTtRQUNBTjtLQUNIO0lBQ0QsT0FBT0s7QUFDWDtBQUswRSxDQUMxRSxrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9lbWJlZGNoYWluLWFkbWluLy4vbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC11c2UtY29udHJvbGxhYmxlLXN0YXRlL2Rpc3QvaW5kZXgubWpzPzBhZjYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHt1c2VDYWxsYmFjayBhcyAkYm5QdzkkdXNlQ2FsbGJhY2ssIHVzZVN0YXRlIGFzICRiblB3OSR1c2VTdGF0ZSwgdXNlUmVmIGFzICRiblB3OSR1c2VSZWYsIHVzZUVmZmVjdCBhcyAkYm5QdzkkdXNlRWZmZWN0fSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7dXNlQ2FsbGJhY2tSZWYgYXMgJGJuUHc5JHVzZUNhbGxiYWNrUmVmfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXVzZS1jYWxsYmFjay1yZWZcIjtcblxuXG5cbmZ1bmN0aW9uICQ3MWNkNzZjYzYwZTA0NTRlJGV4cG9ydCQ2ZjMyMTM1MDgwY2I0YzMoeyBwcm9wOiBwcm9wICwgZGVmYXVsdFByb3A6IGRlZmF1bHRQcm9wICwgb25DaGFuZ2U6IG9uQ2hhbmdlID0gKCk9Pnt9ICB9KSB7XG4gICAgY29uc3QgW3VuY29udHJvbGxlZFByb3AsIHNldFVuY29udHJvbGxlZFByb3BdID0gJDcxY2Q3NmNjNjBlMDQ1NGUkdmFyJHVzZVVuY29udHJvbGxlZFN0YXRlKHtcbiAgICAgICAgZGVmYXVsdFByb3A6IGRlZmF1bHRQcm9wLFxuICAgICAgICBvbkNoYW5nZTogb25DaGFuZ2VcbiAgICB9KTtcbiAgICBjb25zdCBpc0NvbnRyb2xsZWQgPSBwcm9wICE9PSB1bmRlZmluZWQ7XG4gICAgY29uc3QgdmFsdWUxID0gaXNDb250cm9sbGVkID8gcHJvcCA6IHVuY29udHJvbGxlZFByb3A7XG4gICAgY29uc3QgaGFuZGxlQ2hhbmdlID0gJGJuUHc5JHVzZUNhbGxiYWNrUmVmKG9uQ2hhbmdlKTtcbiAgICBjb25zdCBzZXRWYWx1ZSA9ICRiblB3OSR1c2VDYWxsYmFjaygobmV4dFZhbHVlKT0+e1xuICAgICAgICBpZiAoaXNDb250cm9sbGVkKSB7XG4gICAgICAgICAgICBjb25zdCBzZXR0ZXIgPSBuZXh0VmFsdWU7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHR5cGVvZiBuZXh0VmFsdWUgPT09ICdmdW5jdGlvbicgPyBzZXR0ZXIocHJvcCkgOiBuZXh0VmFsdWU7XG4gICAgICAgICAgICBpZiAodmFsdWUgIT09IHByb3ApIGhhbmRsZUNoYW5nZSh2YWx1ZSk7XG4gICAgICAgIH0gZWxzZSBzZXRVbmNvbnRyb2xsZWRQcm9wKG5leHRWYWx1ZSk7XG4gICAgfSwgW1xuICAgICAgICBpc0NvbnRyb2xsZWQsXG4gICAgICAgIHByb3AsXG4gICAgICAgIHNldFVuY29udHJvbGxlZFByb3AsXG4gICAgICAgIGhhbmRsZUNoYW5nZVxuICAgIF0pO1xuICAgIHJldHVybiBbXG4gICAgICAgIHZhbHVlMSxcbiAgICAgICAgc2V0VmFsdWVcbiAgICBdO1xufVxuZnVuY3Rpb24gJDcxY2Q3NmNjNjBlMDQ1NGUkdmFyJHVzZVVuY29udHJvbGxlZFN0YXRlKHsgZGVmYXVsdFByb3A6IGRlZmF1bHRQcm9wICwgb25DaGFuZ2U6IG9uQ2hhbmdlICB9KSB7XG4gICAgY29uc3QgdW5jb250cm9sbGVkU3RhdGUgPSAkYm5QdzkkdXNlU3RhdGUoZGVmYXVsdFByb3ApO1xuICAgIGNvbnN0IFt2YWx1ZV0gPSB1bmNvbnRyb2xsZWRTdGF0ZTtcbiAgICBjb25zdCBwcmV2VmFsdWVSZWYgPSAkYm5QdzkkdXNlUmVmKHZhbHVlKTtcbiAgICBjb25zdCBoYW5kbGVDaGFuZ2UgPSAkYm5QdzkkdXNlQ2FsbGJhY2tSZWYob25DaGFuZ2UpO1xuICAgICRiblB3OSR1c2VFZmZlY3QoKCk9PntcbiAgICAgICAgaWYgKHByZXZWYWx1ZVJlZi5jdXJyZW50ICE9PSB2YWx1ZSkge1xuICAgICAgICAgICAgaGFuZGxlQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgICAgIHByZXZWYWx1ZVJlZi5jdXJyZW50ID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICB9LCBbXG4gICAgICAgIHZhbHVlLFxuICAgICAgICBwcmV2VmFsdWVSZWYsXG4gICAgICAgIGhhbmRsZUNoYW5nZVxuICAgIF0pO1xuICAgIHJldHVybiB1bmNvbnRyb2xsZWRTdGF0ZTtcbn1cblxuXG5cblxuZXhwb3J0IHskNzFjZDc2Y2M2MGUwNDU0ZSRleHBvcnQkNmYzMjEzNTA4MGNiNGMzIGFzIHVzZUNvbnRyb2xsYWJsZVN0YXRlfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4Lm1qcy5tYXBcbiJdLCJuYW1lcyI6WyJ1c2VDYWxsYmFjayIsIiRiblB3OSR1c2VDYWxsYmFjayIsInVzZVN0YXRlIiwiJGJuUHc5JHVzZVN0YXRlIiwidXNlUmVmIiwiJGJuUHc5JHVzZVJlZiIsInVzZUVmZmVjdCIsIiRiblB3OSR1c2VFZmZlY3QiLCJ1c2VDYWxsYmFja1JlZiIsIiRiblB3OSR1c2VDYWxsYmFja1JlZiIsIiQ3MWNkNzZjYzYwZTA0NTRlJGV4cG9ydCQ2ZjMyMTM1MDgwY2I0YzMiLCJwcm9wIiwiZGVmYXVsdFByb3AiLCJvbkNoYW5nZSIsInVuY29udHJvbGxlZFByb3AiLCJzZXRVbmNvbnRyb2xsZWRQcm9wIiwiJDcxY2Q3NmNjNjBlMDQ1NGUkdmFyJHVzZVVuY29udHJvbGxlZFN0YXRlIiwiaXNDb250cm9sbGVkIiwidW5kZWZpbmVkIiwidmFsdWUxIiwiaGFuZGxlQ2hhbmdlIiwic2V0VmFsdWUiLCJuZXh0VmFsdWUiLCJzZXR0ZXIiLCJ2YWx1ZSIsInVuY29udHJvbGxlZFN0YXRlIiwicHJldlZhbHVlUmVmIiwiY3VycmVudCIsInVzZUNvbnRyb2xsYWJsZVN0YXRlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs": /*!************************************************************************!*\ !*** ./node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs ***! \************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useEscapeKeydown: () => (/* binding */ $addc16e1bbe58fd0$export$3a72a57244d6e765)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @radix-ui/react-use-callback-ref */ \"(ssr)/./node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs\");\n\n\n/**\n * Listens for when the escape key is down\n */ function $addc16e1bbe58fd0$export$3a72a57244d6e765(onEscapeKeyDownProp, ownerDocument = globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) {\n const onEscapeKeyDown = (0,_radix_ui_react_use_callback_ref__WEBPACK_IMPORTED_MODULE_1__.useCallbackRef)(onEscapeKeyDownProp);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n const handleKeyDown = (event)=>{\n if (event.key === \"Escape\") onEscapeKeyDown(event);\n };\n ownerDocument.addEventListener(\"keydown\", handleKeyDown);\n return ()=>ownerDocument.removeEventListener(\"keydown\", handleKeyDown);\n }, [\n onEscapeKeyDown,\n ownerDocument\n ]);\n}\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXVzZS1lc2NhcGUta2V5ZG93bi9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBb0Q7QUFDcUM7QUFJekY7O0NBRUMsR0FBRyxTQUFTSSwwQ0FBMENDLG1CQUFtQixFQUFFQyxnQkFBZ0JDLGVBQWUsUUFBUUEsZUFBZSxLQUFLLElBQUksS0FBSyxJQUFJQSxXQUFXQyxRQUFRO0lBQ25LLE1BQU1DLGtCQUFrQk4sZ0ZBQXFCQSxDQUFDRTtJQUM5Q0osZ0RBQWdCQSxDQUFDO1FBQ2IsTUFBTVMsZ0JBQWdCLENBQUNDO1lBQ25CLElBQUlBLE1BQU1DLEdBQUcsS0FBSyxVQUFVSCxnQkFBZ0JFO1FBQ2hEO1FBQ0FMLGNBQWNPLGdCQUFnQixDQUFDLFdBQVdIO1FBQzFDLE9BQU8sSUFBSUosY0FBY1EsbUJBQW1CLENBQUMsV0FBV0o7SUFFNUQsR0FBRztRQUNDRDtRQUNBSDtLQUNIO0FBQ0w7QUFLdUUsQ0FDdkUsa0NBQWtDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZW1iZWRjaGFpbi1hZG1pbi8uL25vZGVfbW9kdWxlcy9AcmFkaXgtdWkvcmVhY3QtdXNlLWVzY2FwZS1rZXlkb3duL2Rpc3QvaW5kZXgubWpzPzBhZTQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHt1c2VFZmZlY3QgYXMgJGhQU1E1JHVzZUVmZmVjdH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQge3VzZUNhbGxiYWNrUmVmIGFzICRoUFNRNSR1c2VDYWxsYmFja1JlZn0gZnJvbSBcIkByYWRpeC11aS9yZWFjdC11c2UtY2FsbGJhY2stcmVmXCI7XG5cblxuXG4vKipcbiAqIExpc3RlbnMgZm9yIHdoZW4gdGhlIGVzY2FwZSBrZXkgaXMgZG93blxuICovIGZ1bmN0aW9uICRhZGRjMTZlMWJiZTU4ZmQwJGV4cG9ydCQzYTcyYTU3MjQ0ZDZlNzY1KG9uRXNjYXBlS2V5RG93blByb3AsIG93bmVyRG9jdW1lbnQgPSBnbG9iYWxUaGlzID09PSBudWxsIHx8IGdsb2JhbFRoaXMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGdsb2JhbFRoaXMuZG9jdW1lbnQpIHtcbiAgICBjb25zdCBvbkVzY2FwZUtleURvd24gPSAkaFBTUTUkdXNlQ2FsbGJhY2tSZWYob25Fc2NhcGVLZXlEb3duUHJvcCk7XG4gICAgJGhQU1E1JHVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBjb25zdCBoYW5kbGVLZXlEb3duID0gKGV2ZW50KT0+e1xuICAgICAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIG9uRXNjYXBlS2V5RG93bihldmVudCk7XG4gICAgICAgIH07XG4gICAgICAgIG93bmVyRG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIGhhbmRsZUtleURvd24pO1xuICAgICAgICByZXR1cm4gKCk9Pm93bmVyRG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIGhhbmRsZUtleURvd24pXG4gICAgICAgIDtcbiAgICB9LCBbXG4gICAgICAgIG9uRXNjYXBlS2V5RG93bixcbiAgICAgICAgb3duZXJEb2N1bWVudFxuICAgIF0pO1xufVxuXG5cblxuXG5leHBvcnQgeyRhZGRjMTZlMWJiZTU4ZmQwJGV4cG9ydCQzYTcyYTU3MjQ0ZDZlNzY1IGFzIHVzZUVzY2FwZUtleWRvd259O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXgubWpzLm1hcFxuIl0sIm5hbWVzIjpbInVzZUVmZmVjdCIsIiRoUFNRNSR1c2VFZmZlY3QiLCJ1c2VDYWxsYmFja1JlZiIsIiRoUFNRNSR1c2VDYWxsYmFja1JlZiIsIiRhZGRjMTZlMWJiZTU4ZmQwJGV4cG9ydCQzYTcyYTU3MjQ0ZDZlNzY1Iiwib25Fc2NhcGVLZXlEb3duUHJvcCIsIm93bmVyRG9jdW1lbnQiLCJnbG9iYWxUaGlzIiwiZG9jdW1lbnQiLCJvbkVzY2FwZUtleURvd24iLCJoYW5kbGVLZXlEb3duIiwiZXZlbnQiLCJrZXkiLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsInVzZUVzY2FwZUtleWRvd24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs": /*!***********************************************************************!*\ !*** ./node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs ***! \***********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useLayoutEffect: () => (/* binding */ $9f79659886946c16$export$e5c5a5f917a5871c)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n\n/**\n * On the server, React emits a warning when calling `useLayoutEffect`.\n * This is because neither `useLayoutEffect` nor `useEffect` run on the server.\n * We use this safe version which suppresses the warning by replacing it with a noop on the server.\n *\n * See: https://reactjs.org/docs/hooks-reference.html#uselayouteffect\n */ const $9f79659886946c16$export$e5c5a5f917a5871c = Boolean(globalThis === null || globalThis === void 0 ? void 0 : globalThis.document) ? react__WEBPACK_IMPORTED_MODULE_0__.useLayoutEffect : ()=>{};\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXVzZS1sYXlvdXQtZWZmZWN0L2Rpc3QvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQWdFO0FBR2hFOzs7Ozs7Q0FNQyxHQUFHLE1BQU1FLDRDQUE0Q0MsUUFBUUMsZUFBZSxRQUFRQSxlQUFlLEtBQUssSUFBSSxLQUFLLElBQUlBLFdBQVdDLFFBQVEsSUFBSUosa0RBQXNCQSxHQUFHLEtBQUs7QUFLckcsQ0FDdEUsa0NBQWtDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZW1iZWRjaGFpbi1hZG1pbi8uL25vZGVfbW9kdWxlcy9AcmFkaXgtdWkvcmVhY3QtdXNlLWxheW91dC1lZmZlY3QvZGlzdC9pbmRleC5tanM/MmQ2ZiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3VzZUxheW91dEVmZmVjdCBhcyAkZHhsd0gkdXNlTGF5b3V0RWZmZWN0fSBmcm9tIFwicmVhY3RcIjtcblxuXG4vKipcbiAqIE9uIHRoZSBzZXJ2ZXIsIFJlYWN0IGVtaXRzIGEgd2FybmluZyB3aGVuIGNhbGxpbmcgYHVzZUxheW91dEVmZmVjdGAuXG4gKiBUaGlzIGlzIGJlY2F1c2UgbmVpdGhlciBgdXNlTGF5b3V0RWZmZWN0YCBub3IgYHVzZUVmZmVjdGAgcnVuIG9uIHRoZSBzZXJ2ZXIuXG4gKiBXZSB1c2UgdGhpcyBzYWZlIHZlcnNpb24gd2hpY2ggc3VwcHJlc3NlcyB0aGUgd2FybmluZyBieSByZXBsYWNpbmcgaXQgd2l0aCBhIG5vb3Agb24gdGhlIHNlcnZlci5cbiAqXG4gKiBTZWU6IGh0dHBzOi8vcmVhY3Rqcy5vcmcvZG9jcy9ob29rcy1yZWZlcmVuY2UuaHRtbCN1c2VsYXlvdXRlZmZlY3RcbiAqLyBjb25zdCAkOWY3OTY1OTg4Njk0NmMxNiRleHBvcnQkZTVjNWE1ZjkxN2E1ODcxYyA9IEJvb2xlYW4oZ2xvYmFsVGhpcyA9PT0gbnVsbCB8fCBnbG9iYWxUaGlzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBnbG9iYWxUaGlzLmRvY3VtZW50KSA/ICRkeGx3SCR1c2VMYXlvdXRFZmZlY3QgOiAoKT0+e307XG5cblxuXG5cbmV4cG9ydCB7JDlmNzk2NTk4ODY5NDZjMTYkZXhwb3J0JGU1YzVhNWY5MTdhNTg3MWMgYXMgdXNlTGF5b3V0RWZmZWN0fTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4Lm1qcy5tYXBcbiJdLCJuYW1lcyI6WyJ1c2VMYXlvdXRFZmZlY3QiLCIkZHhsd0gkdXNlTGF5b3V0RWZmZWN0IiwiJDlmNzk2NTk4ODY5NDZjMTYkZXhwb3J0JGU1YzVhNWY5MTdhNTg3MWMiLCJCb29sZWFuIiwiZ2xvYmFsVGhpcyIsImRvY3VtZW50Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-use-previous/dist/index.mjs": /*!******************************************************************!*\ !*** ./node_modules/@radix-ui/react-use-previous/dist/index.mjs ***! \******************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ usePrevious: () => (/* binding */ $010c2913dbd2fe3d$export$5cae361ad82dce8b)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n\nfunction $010c2913dbd2fe3d$export$5cae361ad82dce8b(value) {\n const ref = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)({\n value: value,\n previous: value\n }); // We compare values before making an update to ensure that\n // a change has been made. This ensures the previous value is\n // persisted correctly between renders.\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>{\n if (ref.current.value !== value) {\n ref.current.previous = ref.current.value;\n ref.current.value = value;\n }\n return ref.current.previous;\n }, [\n value\n ]);\n}\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXVzZS1wcmV2aW91cy9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUF5RTtBQUd6RSxTQUFTSSwwQ0FBMENDLEtBQUs7SUFDcEQsTUFBTUMsTUFBTUwsNkNBQWFBLENBQUM7UUFDdEJJLE9BQU9BO1FBQ1BFLFVBQVVGO0lBQ2QsSUFBSSwyREFBMkQ7SUFDL0QsNkRBQTZEO0lBQzdELHVDQUF1QztJQUN2QyxPQUFPRiw4Q0FBY0EsQ0FBQztRQUNsQixJQUFJRyxJQUFJRSxPQUFPLENBQUNILEtBQUssS0FBS0EsT0FBTztZQUM3QkMsSUFBSUUsT0FBTyxDQUFDRCxRQUFRLEdBQUdELElBQUlFLE9BQU8sQ0FBQ0gsS0FBSztZQUN4Q0MsSUFBSUUsT0FBTyxDQUFDSCxLQUFLLEdBQUdBO1FBQ3hCO1FBQ0EsT0FBT0MsSUFBSUUsT0FBTyxDQUFDRCxRQUFRO0lBQy9CLEdBQUc7UUFDQ0Y7S0FDSDtBQUNMO0FBS2tFLENBQ2xFLGtDQUFrQyIsInNvdXJjZXMiOlsid2VicGFjazovL2VtYmVkY2hhaW4tYWRtaW4vLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXVzZS1wcmV2aW91cy9kaXN0L2luZGV4Lm1qcz9hMGFmIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dXNlUmVmIGFzICQ4THZ2SyR1c2VSZWYsIHVzZU1lbW8gYXMgJDhMdnZLJHVzZU1lbW99IGZyb20gXCJyZWFjdFwiO1xuXG5cbmZ1bmN0aW9uICQwMTBjMjkxM2RiZDJmZTNkJGV4cG9ydCQ1Y2FlMzYxYWQ4MmRjZThiKHZhbHVlKSB7XG4gICAgY29uc3QgcmVmID0gJDhMdnZLJHVzZVJlZih7XG4gICAgICAgIHZhbHVlOiB2YWx1ZSxcbiAgICAgICAgcHJldmlvdXM6IHZhbHVlXG4gICAgfSk7IC8vIFdlIGNvbXBhcmUgdmFsdWVzIGJlZm9yZSBtYWtpbmcgYW4gdXBkYXRlIHRvIGVuc3VyZSB0aGF0XG4gICAgLy8gYSBjaGFuZ2UgaGFzIGJlZW4gbWFkZS4gVGhpcyBlbnN1cmVzIHRoZSBwcmV2aW91cyB2YWx1ZSBpc1xuICAgIC8vIHBlcnNpc3RlZCBjb3JyZWN0bHkgYmV0d2VlbiByZW5kZXJzLlxuICAgIHJldHVybiAkOEx2dkskdXNlTWVtbygoKT0+e1xuICAgICAgICBpZiAocmVmLmN1cnJlbnQudmFsdWUgIT09IHZhbHVlKSB7XG4gICAgICAgICAgICByZWYuY3VycmVudC5wcmV2aW91cyA9IHJlZi5jdXJyZW50LnZhbHVlO1xuICAgICAgICAgICAgcmVmLmN1cnJlbnQudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVmLmN1cnJlbnQucHJldmlvdXM7XG4gICAgfSwgW1xuICAgICAgICB2YWx1ZVxuICAgIF0pO1xufVxuXG5cblxuXG5leHBvcnQgeyQwMTBjMjkxM2RiZDJmZTNkJGV4cG9ydCQ1Y2FlMzYxYWQ4MmRjZThiIGFzIHVzZVByZXZpb3VzfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4Lm1qcy5tYXBcbiJdLCJuYW1lcyI6WyJ1c2VSZWYiLCIkOEx2dkskdXNlUmVmIiwidXNlTWVtbyIsIiQ4THZ2SyR1c2VNZW1vIiwiJDAxMGMyOTEzZGJkMmZlM2QkZXhwb3J0JDVjYWUzNjFhZDgyZGNlOGIiLCJ2YWx1ZSIsInJlZiIsInByZXZpb3VzIiwiY3VycmVudCIsInVzZVByZXZpb3VzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-use-previous/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-use-size/dist/index.mjs": /*!**************************************************************!*\ !*** ./node_modules/@radix-ui/react-use-size/dist/index.mjs ***! \**************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useSize: () => (/* binding */ $db6c3485150b8e66$export$1ab7ae714698c4b8)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @radix-ui/react-use-layout-effect */ \"(ssr)/./node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs\");\n\n\nfunction $db6c3485150b8e66$export$1ab7ae714698c4b8(element) {\n const [size, setSize] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(undefined);\n (0,_radix_ui_react_use_layout_effect__WEBPACK_IMPORTED_MODULE_1__.useLayoutEffect)(()=>{\n if (element) {\n // provide size as early as possible\n setSize({\n width: element.offsetWidth,\n height: element.offsetHeight\n });\n const resizeObserver = new ResizeObserver((entries)=>{\n if (!Array.isArray(entries)) return;\n // Since we only observe the one element, we don't need to loop over the\n // array\n if (!entries.length) return;\n const entry = entries[0];\n let width;\n let height;\n if (\"borderBoxSize\" in entry) {\n const borderSizeEntry = entry[\"borderBoxSize\"]; // iron out differences between browsers\n const borderSize = Array.isArray(borderSizeEntry) ? borderSizeEntry[0] : borderSizeEntry;\n width = borderSize[\"inlineSize\"];\n height = borderSize[\"blockSize\"];\n } else {\n // for browsers that don't support `borderBoxSize`\n // we calculate it ourselves to get the correct border box.\n width = element.offsetWidth;\n height = element.offsetHeight;\n }\n setSize({\n width: width,\n height: height\n });\n });\n resizeObserver.observe(element, {\n box: \"border-box\"\n });\n return ()=>resizeObserver.unobserve(element);\n } else // not if it changes to another element.\n setSize(undefined);\n }, [\n element\n ]);\n return size;\n}\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXVzZS1zaXplL2Rpc3QvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFrRDtBQUMwQztBQUk1RixTQUFTSSwwQ0FBMENDLE9BQU87SUFDdEQsTUFBTSxDQUFDQyxNQUFNQyxRQUFRLEdBQUdOLCtDQUFlQSxDQUFDTztJQUN4Q0wsa0ZBQXNCQSxDQUFDO1FBQ25CLElBQUlFLFNBQVM7WUFDVCxvQ0FBb0M7WUFDcENFLFFBQVE7Z0JBQ0pFLE9BQU9KLFFBQVFLLFdBQVc7Z0JBQzFCQyxRQUFRTixRQUFRTyxZQUFZO1lBQ2hDO1lBQ0EsTUFBTUMsaUJBQWlCLElBQUlDLGVBQWUsQ0FBQ0M7Z0JBQ3ZDLElBQUksQ0FBQ0MsTUFBTUMsT0FBTyxDQUFDRixVQUFVO2dCQUM1Qix3RUFBd0U7Z0JBQ3pFLFFBQVE7Z0JBQ1IsSUFBSSxDQUFDQSxRQUFRRyxNQUFNLEVBQUU7Z0JBQ3JCLE1BQU1DLFFBQVFKLE9BQU8sQ0FBQyxFQUFFO2dCQUN4QixJQUFJTjtnQkFDSixJQUFJRTtnQkFDSixJQUFJLG1CQUFtQlEsT0FBTztvQkFDMUIsTUFBTUMsa0JBQWtCRCxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsd0NBQXdDO29CQUN4RixNQUFNRSxhQUFhTCxNQUFNQyxPQUFPLENBQUNHLG1CQUFtQkEsZUFBZSxDQUFDLEVBQUUsR0FBR0E7b0JBQ3pFWCxRQUFRWSxVQUFVLENBQUMsYUFBYTtvQkFDaENWLFNBQVNVLFVBQVUsQ0FBQyxZQUFZO2dCQUNwQyxPQUFPO29CQUNILGtEQUFrRDtvQkFDbEQsMkRBQTJEO29CQUMzRFosUUFBUUosUUFBUUssV0FBVztvQkFDM0JDLFNBQVNOLFFBQVFPLFlBQVk7Z0JBQ2pDO2dCQUNBTCxRQUFRO29CQUNKRSxPQUFPQTtvQkFDUEUsUUFBUUE7Z0JBQ1o7WUFDSjtZQUNBRSxlQUFlUyxPQUFPLENBQUNqQixTQUFTO2dCQUM1QmtCLEtBQUs7WUFDVDtZQUNBLE9BQU8sSUFBSVYsZUFBZVcsU0FBUyxDQUFDbkI7UUFFeEMsT0FDQSx3Q0FBd0M7UUFDeENFLFFBQVFDO0lBQ1osR0FBRztRQUNDSDtLQUNIO0lBQ0QsT0FBT0M7QUFDWDtBQUs4RCxDQUM5RCxrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9lbWJlZGNoYWluLWFkbWluLy4vbm9kZV9tb2R1bGVzL0ByYWRpeC11aS9yZWFjdC11c2Utc2l6ZS9kaXN0L2luZGV4Lm1qcz9mZTc5Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dXNlU3RhdGUgYXMgJDlneUdSJHVzZVN0YXRlfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7dXNlTGF5b3V0RWZmZWN0IGFzICQ5Z3lHUiR1c2VMYXlvdXRFZmZlY3R9IGZyb20gXCJAcmFkaXgtdWkvcmVhY3QtdXNlLWxheW91dC1lZmZlY3RcIjtcblxuXG5cbmZ1bmN0aW9uICRkYjZjMzQ4NTE1MGI4ZTY2JGV4cG9ydCQxYWI3YWU3MTQ2OThjNGI4KGVsZW1lbnQpIHtcbiAgICBjb25zdCBbc2l6ZSwgc2V0U2l6ZV0gPSAkOWd5R1IkdXNlU3RhdGUodW5kZWZpbmVkKTtcbiAgICAkOWd5R1IkdXNlTGF5b3V0RWZmZWN0KCgpPT57XG4gICAgICAgIGlmIChlbGVtZW50KSB7XG4gICAgICAgICAgICAvLyBwcm92aWRlIHNpemUgYXMgZWFybHkgYXMgcG9zc2libGVcbiAgICAgICAgICAgIHNldFNpemUoe1xuICAgICAgICAgICAgICAgIHdpZHRoOiBlbGVtZW50Lm9mZnNldFdpZHRoLFxuICAgICAgICAgICAgICAgIGhlaWdodDogZWxlbWVudC5vZmZzZXRIZWlnaHRcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29uc3QgcmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKGVudHJpZXMpPT57XG4gICAgICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGVudHJpZXMpKSByZXR1cm47XG4gICAgICAgICAgICAgICAgIC8vIFNpbmNlIHdlIG9ubHkgb2JzZXJ2ZSB0aGUgb25lIGVsZW1lbnQsIHdlIGRvbid0IG5lZWQgdG8gbG9vcCBvdmVyIHRoZVxuICAgICAgICAgICAgICAgIC8vIGFycmF5XG4gICAgICAgICAgICAgICAgaWYgKCFlbnRyaWVzLmxlbmd0aCkgcmV0dXJuO1xuICAgICAgICAgICAgICAgIGNvbnN0IGVudHJ5ID0gZW50cmllc1swXTtcbiAgICAgICAgICAgICAgICBsZXQgd2lkdGg7XG4gICAgICAgICAgICAgICAgbGV0IGhlaWdodDtcbiAgICAgICAgICAgICAgICBpZiAoJ2JvcmRlckJveFNpemUnIGluIGVudHJ5KSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGJvcmRlclNpemVFbnRyeSA9IGVudHJ5Wydib3JkZXJCb3hTaXplJ107IC8vIGlyb24gb3V0IGRpZmZlcmVuY2VzIGJldHdlZW4gYnJvd3NlcnNcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYm9yZGVyU2l6ZSA9IEFycmF5LmlzQXJyYXkoYm9yZGVyU2l6ZUVudHJ5KSA/IGJvcmRlclNpemVFbnRyeVswXSA6IGJvcmRlclNpemVFbnRyeTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGggPSBib3JkZXJTaXplWydpbmxpbmVTaXplJ107XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodCA9IGJvcmRlclNpemVbJ2Jsb2NrU2l6ZSddO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGZvciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgYGJvcmRlckJveFNpemVgXG4gICAgICAgICAgICAgICAgICAgIC8vIHdlIGNhbGN1bGF0ZSBpdCBvdXJzZWx2ZXMgdG8gZ2V0IHRoZSBjb3JyZWN0IGJvcmRlciBib3guXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoID0gZWxlbWVudC5vZmZzZXRXaWR0aDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0ID0gZWxlbWVudC5vZmZzZXRIZWlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNldFNpemUoe1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogd2lkdGgsXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogaGVpZ2h0XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJlc2l6ZU9ic2VydmVyLm9ic2VydmUoZWxlbWVudCwge1xuICAgICAgICAgICAgICAgIGJveDogJ2JvcmRlci1ib3gnXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiAoKT0+cmVzaXplT2JzZXJ2ZXIudW5vYnNlcnZlKGVsZW1lbnQpXG4gICAgICAgICAgICA7XG4gICAgICAgIH0gZWxzZSAvLyBXZSBvbmx5IHdhbnQgdG8gcmVzZXQgdG8gYHVuZGVmaW5lZGAgd2hlbiB0aGUgZWxlbWVudCBiZWNvbWVzIGBudWxsYCxcbiAgICAgICAgLy8gbm90IGlmIGl0IGNoYW5nZXMgdG8gYW5vdGhlciBlbGVtZW50LlxuICAgICAgICBzZXRTaXplKHVuZGVmaW5lZCk7XG4gICAgfSwgW1xuICAgICAgICBlbGVtZW50XG4gICAgXSk7XG4gICAgcmV0dXJuIHNpemU7XG59XG5cblxuXG5cbmV4cG9ydCB7JGRiNmMzNDg1MTUwYjhlNjYkZXhwb3J0JDFhYjdhZTcxNDY5OGM0YjggYXMgdXNlU2l6ZX07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5tanMubWFwXG4iXSwibmFtZXMiOlsidXNlU3RhdGUiLCIkOWd5R1IkdXNlU3RhdGUiLCJ1c2VMYXlvdXRFZmZlY3QiLCIkOWd5R1IkdXNlTGF5b3V0RWZmZWN0IiwiJGRiNmMzNDg1MTUwYjhlNjYkZXhwb3J0JDFhYjdhZTcxNDY5OGM0YjgiLCJlbGVtZW50Iiwic2l6ZSIsInNldFNpemUiLCJ1bmRlZmluZWQiLCJ3aWR0aCIsIm9mZnNldFdpZHRoIiwiaGVpZ2h0Iiwib2Zmc2V0SGVpZ2h0IiwicmVzaXplT2JzZXJ2ZXIiLCJSZXNpemVPYnNlcnZlciIsImVudHJpZXMiLCJBcnJheSIsImlzQXJyYXkiLCJsZW5ndGgiLCJlbnRyeSIsImJvcmRlclNpemVFbnRyeSIsImJvcmRlclNpemUiLCJvYnNlcnZlIiwiYm94IiwidW5vYnNlcnZlIiwidXNlU2l6ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-use-size/dist/index.mjs\n"); /***/ }), /***/ "(ssr)/./node_modules/@radix-ui/react-visually-hidden/dist/index.mjs": /*!*********************************************************************!*\ !*** ./node_modules/@radix-ui/react-visually-hidden/dist/index.mjs ***! \*********************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Root: () => (/* binding */ $ea1ef594cf570d83$export$be92b6f5f03c0fe9),\n/* harmony export */ VisuallyHidden: () => (/* binding */ $ea1ef594cf570d83$export$439d29a4e110a164)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"(ssr)/./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var _radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @radix-ui/react-primitive */ \"(ssr)/./node_modules/@radix-ui/react-primitive/dist/index.mjs\");\n\n\n\n/* -------------------------------------------------------------------------------------------------\n * VisuallyHidden\n * -----------------------------------------------------------------------------------------------*/ const $ea1ef594cf570d83$var$NAME = \"VisuallyHidden\";\nconst $ea1ef594cf570d83$export$439d29a4e110a164 = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.forwardRef)((props, forwardedRef)=>{\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.createElement)(_radix_ui_react_primitive__WEBPACK_IMPORTED_MODULE_2__.Primitive.span, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, props, {\n ref: forwardedRef,\n style: {\n // See: https://github.com/twbs/bootstrap/blob/master/scss/mixins/_screen-reader.scss\n position: \"absolute\",\n border: 0,\n width: 1,\n height: 1,\n padding: 0,\n margin: -1,\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n whiteSpace: \"nowrap\",\n wordWrap: \"normal\",\n ...props.style\n }\n }));\n});\n/*#__PURE__*/ Object.assign($ea1ef594cf570d83$export$439d29a4e110a164, {\n displayName: $ea1ef594cf570d83$var$NAME\n});\n/* -----------------------------------------------------------------------------------------------*/ const $ea1ef594cf570d83$export$be92b6f5f03c0fe9 = $ea1ef594cf570d83$export$439d29a4e110a164;\n //# sourceMappingURL=index.mjs.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXZpc3VhbGx5LWhpZGRlbi9kaXN0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFzRjtBQUNPO0FBQ3JCO0FBS3hFOztrR0FFa0csR0FBRyxNQUFNTyw2QkFBNkI7QUFDeEksTUFBTUMsNENBQTRDLFdBQVcsR0FBR04saURBQWlCQSxDQUFDLENBQUNPLE9BQU9DO0lBQ3RGLE9BQU8sV0FBVyxHQUFHTixvREFBb0JBLENBQUNFLGdFQUFnQkEsQ0FBQ0ssSUFBSSxFQUFFWCw4RUFBb0NBLENBQUMsQ0FBQyxHQUFHUyxPQUFPO1FBQzdHRyxLQUFLRjtRQUNMRyxPQUFPO1lBQ0gscUZBQXFGO1lBQ3JGQyxVQUFVO1lBQ1ZDLFFBQVE7WUFDUkMsT0FBTztZQUNQQyxRQUFRO1lBQ1JDLFNBQVM7WUFDVEMsUUFBUSxDQUFDO1lBQ1RDLFVBQVU7WUFDVkMsTUFBTTtZQUNOQyxZQUFZO1lBQ1pDLFVBQVU7WUFDVixHQUFHZCxNQUFNSSxLQUFLO1FBQ2xCO0lBQ0o7QUFDSjtBQUNBLFdBQVcsR0FBR1csT0FBT0MsTUFBTSxDQUFDakIsMkNBQTJDO0lBQ25Fa0IsYUFBYW5CO0FBQ2pCO0FBQ0Esa0dBQWtHLEdBQUcsTUFBTW9CLDRDQUE0Q25CO0FBSy9CLENBQ3hILGtDQUFrQyIsInNvdXJjZXMiOlsid2VicGFjazovL2VtYmVkY2hhaW4tYWRtaW4vLi9ub2RlX21vZHVsZXMvQHJhZGl4LXVpL3JlYWN0LXZpc3VhbGx5LWhpZGRlbi9kaXN0L2luZGV4Lm1qcz85NWYxIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAka1Z3bnckYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2V4dGVuZHNcIjtcbmltcG9ydCB7Zm9yd2FyZFJlZiBhcyAka1Z3bnckZm9yd2FyZFJlZiwgY3JlYXRlRWxlbWVudCBhcyAka1Z3bnckY3JlYXRlRWxlbWVudH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQge1ByaW1pdGl2ZSBhcyAka1Z3bnckUHJpbWl0aXZlfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXByaW1pdGl2ZVwiO1xuXG5cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBWaXN1YWxseUhpZGRlblxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkZWExZWY1OTRjZjU3MGQ4MyR2YXIkTkFNRSA9ICdWaXN1YWxseUhpZGRlbic7XG5jb25zdCAkZWExZWY1OTRjZjU3MGQ4MyRleHBvcnQkNDM5ZDI5YTRlMTEwYTE2NCA9IC8qI19fUFVSRV9fKi8gJGtWd253JGZvcndhcmRSZWYoKHByb3BzLCBmb3J3YXJkZWRSZWYpPT57XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gJGtWd253JGNyZWF0ZUVsZW1lbnQoJGtWd253JFByaW1pdGl2ZS5zcGFuLCAka1Z3bnckYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMoe30sIHByb3BzLCB7XG4gICAgICAgIHJlZjogZm9yd2FyZGVkUmVmLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvc2Nzcy9taXhpbnMvX3NjcmVlbi1yZWFkZXIuc2Nzc1xuICAgICAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgICAgICBib3JkZXI6IDAsXG4gICAgICAgICAgICB3aWR0aDogMSxcbiAgICAgICAgICAgIGhlaWdodDogMSxcbiAgICAgICAgICAgIHBhZGRpbmc6IDAsXG4gICAgICAgICAgICBtYXJnaW46IC0xLFxuICAgICAgICAgICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxuICAgICAgICAgICAgY2xpcDogJ3JlY3QoMCwgMCwgMCwgMCknLFxuICAgICAgICAgICAgd2hpdGVTcGFjZTogJ25vd3JhcCcsXG4gICAgICAgICAgICB3b3JkV3JhcDogJ25vcm1hbCcsXG4gICAgICAgICAgICAuLi5wcm9wcy5zdHlsZVxuICAgICAgICB9XG4gICAgfSkpO1xufSk7XG4vKiNfX1BVUkVfXyovIE9iamVjdC5hc3NpZ24oJGVhMWVmNTk0Y2Y1NzBkODMkZXhwb3J0JDQzOWQyOWE0ZTExMGExNjQsIHtcbiAgICBkaXNwbGF5TmFtZTogJGVhMWVmNTk0Y2Y1NzBkODMkdmFyJE5BTUVcbn0pO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBjb25zdCAkZWExZWY1OTRjZjU3MGQ4MyRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSA9ICRlYTFlZjU5NGNmNTcwZDgzJGV4cG9ydCQ0MzlkMjlhNGUxMTBhMTY0O1xuXG5cblxuXG5leHBvcnQgeyRlYTFlZjU5NGNmNTcwZDgzJGV4cG9ydCQ0MzlkMjlhNGUxMTBhMTY0IGFzIFZpc3VhbGx5SGlkZGVuLCAkZWExZWY1OTRjZjU3MGQ4MyRleHBvcnQkYmU5MmI2ZjVmMDNjMGZlOSBhcyBSb290fTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4Lm1qcy5tYXBcbiJdLCJuYW1lcyI6WyIka1Z3bnckYmFiZWxydW50aW1laGVscGVyc2VzbWV4dGVuZHMiLCJmb3J3YXJkUmVmIiwiJGtWd253JGZvcndhcmRSZWYiLCJjcmVhdGVFbGVtZW50IiwiJGtWd253JGNyZWF0ZUVsZW1lbnQiLCJQcmltaXRpdmUiLCIka1Z3bnckUHJpbWl0aXZlIiwiJGVhMWVmNTk0Y2Y1NzBkODMkdmFyJE5BTUUiLCIkZWExZWY1OTRjZjU3MGQ4MyRleHBvcnQkNDM5ZDI5YTRlMTEwYTE2NCIsInByb3BzIiwiZm9yd2FyZGVkUmVmIiwic3BhbiIsInJlZiIsInN0eWxlIiwicG9zaXRpb24iLCJib3JkZXIiLCJ3aWR0aCIsImhlaWdodCIsInBhZGRpbmciLCJtYXJnaW4iLCJvdmVyZmxvdyIsImNsaXAiLCJ3aGl0ZVNwYWNlIiwid29yZFdyYXAiLCJPYmplY3QiLCJhc3NpZ24iLCJkaXNwbGF5TmFtZSIsIiRlYTFlZjU5NGNmNTcwZDgzJGV4cG9ydCRiZTkyYjZmNWYwM2MwZmU5IiwiVmlzdWFsbHlIaWRkZW4iLCJSb290Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@radix-ui/react-visually-hidden/dist/index.mjs\n"); /***/ }) }; ;