@comet/cms-admin 8.0.0-beta.1 → 8.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/lib/blocks/DamVideoBlock.d.ts.map +1 -1
  2. package/lib/blocks/DamVideoBlock.js +8 -5
  3. package/lib/blocks/InternalLinkBlock.d.ts.map +1 -1
  4. package/lib/blocks/PixelImageBlock.d.ts.map +1 -1
  5. package/lib/blocks/PixelImageBlock.js +18 -16
  6. package/lib/blocks/SvgImageBlock.d.ts.map +1 -1
  7. package/lib/blocks/SvgImageBlock.js +17 -15
  8. package/lib/blocks/context/BlockContext.d.ts +6 -1
  9. package/lib/blocks/context/BlockContext.d.ts.map +1 -1
  10. package/lib/blocks/context/BlockContext.js +2 -2
  11. package/lib/blocks/context/BlockContextProvider.d.ts +2 -1
  12. package/lib/blocks/context/BlockContextProvider.d.ts.map +1 -1
  13. package/lib/blocks/context/BlockContextProvider.js +1 -1
  14. package/lib/blocks/context/useBlockContext.d.ts +2 -1
  15. package/lib/blocks/context/useBlockContext.d.ts.map +1 -1
  16. package/lib/blocks/context/useBlockContext.js +16 -1
  17. package/lib/blocks/createLinkBlock.js +1 -1
  18. package/lib/blocks/createSeoBlock.js +4 -4
  19. package/lib/blocks/createTextImageBlock.d.ts.map +1 -1
  20. package/lib/blocks/createTextImageBlock.js +4 -3
  21. package/lib/blocks/factories/createCompositeBlock.d.ts.map +1 -1
  22. package/lib/blocks/factories/createCompositeBlock.js +3 -1
  23. package/lib/blocks/factories/createOneOfBlock.js +7 -5
  24. package/lib/blocks/helpers/composeBlocks/composeBlocks.d.ts +3 -2
  25. package/lib/blocks/helpers/composeBlocks/composeBlocks.d.ts.map +1 -1
  26. package/lib/blocks/image/EditImageDialog.js +7 -6
  27. package/lib/blocks/rte/extension/CmsLink/createCmsLinkToolbarButton.d.ts.map +1 -1
  28. package/lib/blocks/rte/extension/CmsLink/createCmsLinkToolbarButton.js +33 -24
  29. package/lib/blocks/seo/useSeoTagGeneration.js +4 -4
  30. package/lib/blocks/types.d.ts +3 -3
  31. package/lib/blocks/types.d.ts.map +1 -1
  32. package/lib/blocks/types.js +0 -1
  33. package/lib/common/DropdownMenuItem.sc.d.ts +1 -1
  34. package/lib/common/SearchInput.js +9 -3
  35. package/lib/common/header/about/build-information/buildInformation.d.ts +6 -0
  36. package/lib/common/header/about/build-information/buildInformation.d.ts.map +1 -0
  37. package/lib/common/header/about/build-information/buildInformation.js +5 -0
  38. package/lib/common/header/about/build-information/useBuildInformation.d.ts +1 -1
  39. package/lib/common/header/about/build-information/useBuildInformation.d.ts.map +1 -1
  40. package/lib/common/header/about/build-information/useBuildInformation.js +2 -3
  41. package/lib/common/useSaveState.d.ts.map +1 -1
  42. package/lib/common/useSaveState.js +18 -13
  43. package/lib/config/CometConfigContext.d.ts +28 -0
  44. package/lib/config/CometConfigContext.d.ts.map +1 -0
  45. package/lib/{blocks/CmsBlockContextProvider.js → config/CometConfigContext.js} +31 -13
  46. package/lib/contentLanguage/contentLanguageConfig.d.ts +6 -0
  47. package/lib/contentLanguage/contentLanguageConfig.d.ts.map +1 -0
  48. package/lib/contentLanguage/contentLanguageConfig.js +18 -0
  49. package/lib/contentLanguage/useContentLanguage.d.ts +7 -0
  50. package/lib/contentLanguage/useContentLanguage.d.ts.map +1 -0
  51. package/lib/contentLanguage/useContentLanguage.js +13 -0
  52. package/lib/cronJobs/CronJobsGrid.d.ts.map +1 -1
  53. package/lib/cronJobs/CronJobsGrid.js +1 -0
  54. package/lib/cronJobs/JobsGrid.d.ts.map +1 -1
  55. package/lib/cronJobs/JobsGrid.js +1 -0
  56. package/lib/dam/DamPage.js +3 -3
  57. package/lib/dam/DataGrid/DamContextMenu.js +4 -3
  58. package/lib/dam/DataGrid/FolderDataGrid.js +2 -2
  59. package/lib/dam/DataGrid/fileUpload/useDamFileUpload.d.ts.map +1 -1
  60. package/lib/dam/DataGrid/fileUpload/useDamFileUpload.js +11 -5
  61. package/lib/dam/DataGrid/label/DamItemLabelColumn.d.ts.map +1 -1
  62. package/lib/dam/DataGrid/label/DamItemLabelColumn.js +26 -23
  63. package/lib/dam/FileForm/Duplicates.d.ts.map +1 -1
  64. package/lib/dam/FileForm/Duplicates.js +5 -9
  65. package/lib/dam/FileForm/EditFile.d.ts.map +1 -1
  66. package/lib/dam/FileForm/EditFile.js +9 -9
  67. package/lib/dam/FileForm/FileSettingsFields.js +8 -8
  68. package/lib/dam/FileForm/ReplaceFileButton.d.ts.map +1 -1
  69. package/lib/dam/FileForm/ReplaceFileButton.js +8 -4
  70. package/lib/dam/MoveDamItemDialog/MoveDamItemDialog.d.ts.map +1 -1
  71. package/lib/dam/MoveDamItemDialog/MoveDamItemDialog.js +2 -3
  72. package/lib/dam/blocks/DamFileDownloadLinkBlock.d.ts.map +1 -1
  73. package/lib/dam/config/DamScopeProvider.js +2 -2
  74. package/lib/dam/config/{DamConfigContext.d.ts → damConfig.d.ts} +5 -2
  75. package/lib/dam/config/damConfig.d.ts.map +1 -0
  76. package/lib/dam/config/damConfig.js +14 -0
  77. package/lib/dam/config/useDamAcceptedMimeTypes.js +2 -2
  78. package/lib/dashboard/widgets/LatestBuildsDashboardWidget.js +2 -2
  79. package/lib/dependencies/DependencyList.d.ts.map +1 -1
  80. package/lib/dependencies/DependencyList.js +4 -2
  81. package/lib/dependencies/DependencyList.sc.d.ts +1 -1
  82. package/lib/dependencies/dependenciesConfig.d.ts +10 -0
  83. package/lib/dependencies/dependenciesConfig.d.ts.map +1 -0
  84. package/lib/dependencies/dependenciesConfig.js +16 -0
  85. package/lib/form/file/FinalFormFileUpload.d.ts.map +1 -1
  86. package/lib/form/file/FinalFormFileUpload.js +3 -3
  87. package/lib/form/file/chooseFile/ChooseFileDialog.d.ts.map +1 -1
  88. package/lib/form/file/chooseFile/ChooseFileDialog.js +37 -34
  89. package/lib/imgproxy/imgproxyConfig.d.ts +6 -0
  90. package/lib/imgproxy/imgproxyConfig.d.ts.map +1 -0
  91. package/lib/imgproxy/imgproxyConfig.js +14 -0
  92. package/lib/index.d.ts +7 -12
  93. package/lib/index.d.ts.map +1 -1
  94. package/lib/index.js +20 -75
  95. package/lib/pages/createEditPageNode.d.ts.map +1 -1
  96. package/lib/pages/createEditPageNode.js +3 -3
  97. package/lib/pages/createUsePage.d.ts.map +1 -1
  98. package/lib/pages/createUsePage.js +5 -10
  99. package/lib/pages/pageTree/MovePageMenuItem.d.ts.map +1 -1
  100. package/lib/pages/pageTree/MovePageMenuItem.js +5 -3
  101. package/lib/pages/pageTree/PageActions.d.ts.map +1 -1
  102. package/lib/pages/pageTree/PageActions.js +5 -4
  103. package/lib/pages/pageTree/PageLabel.d.ts.map +1 -1
  104. package/lib/pages/pageTree/PageLabel.js +8 -8
  105. package/lib/pages/pageTree/PageTree.js +11 -11
  106. package/lib/pages/pageTree/PageTreeContext.d.ts +0 -2
  107. package/lib/pages/pageTree/PageTreeContext.d.ts.map +1 -1
  108. package/lib/pages/pageTree/PageTreeRow.d.ts.map +1 -1
  109. package/lib/pages/pageTree/PageTreeRow.js +3 -3
  110. package/lib/pages/pageTree/PageTypeIcon.d.ts.map +1 -1
  111. package/lib/pages/pageTree/PageTypeIcon.js +3 -3
  112. package/lib/pages/pageTree/useCopyPastePages/sendPages.d.ts +4 -5
  113. package/lib/pages/pageTree/useCopyPastePages/sendPages.d.ts.map +1 -1
  114. package/lib/pages/pageTree/useCopyPastePages/sendPages.js +20 -18
  115. package/lib/pages/pageTree/useCopyPastePages.d.ts.map +1 -1
  116. package/lib/pages/pageTree/useCopyPastePages.js +8 -5
  117. package/lib/pages/pageTreeConfig.d.ts +13 -0
  118. package/lib/pages/pageTreeConfig.d.ts.map +1 -0
  119. package/lib/pages/pageTreeConfig.js +14 -0
  120. package/lib/pages/pageTreeSelect/PageTreeSelectDialog.d.ts.map +1 -1
  121. package/lib/pages/pageTreeSelect/PageTreeSelectDialog.js +11 -14
  122. package/lib/pages/pagesPage/ConfirmPageActionDialog.d.ts.map +1 -1
  123. package/lib/pages/pagesPage/ConfirmPageActionDialog.js +1 -5
  124. package/lib/pages/pagesPage/PagesPage.d.ts +1 -3
  125. package/lib/pages/pagesPage/PagesPage.d.ts.map +1 -1
  126. package/lib/pages/pagesPage/PagesPage.js +4 -6
  127. package/lib/pages/pagesPage/PagesPageActionToolbar.sc.d.ts +2 -2
  128. package/lib/pages/usePageTreeDocumentAnchors.js +3 -3
  129. package/lib/preview/block/BlockPreview.d.ts.map +1 -1
  130. package/lib/preview/block/BlockPreview.js +6 -8
  131. package/lib/preview/common/ToggleButton.d.ts +1 -1
  132. package/lib/preview/site/SitePreview.js +1 -1
  133. package/lib/preview/site/SitePreview.sc.d.ts +1 -1
  134. package/lib/redirects/RedirectsGrid.d.ts.map +1 -1
  135. package/lib/redirects/RedirectsGrid.js +3 -2
  136. package/lib/redirects/createRedirectsPage.d.ts.map +1 -1
  137. package/lib/redirects/createRedirectsPage.js +26 -2
  138. package/lib/{sitesConfig/SitesConfigContext.d.ts → siteConfigs/siteConfigsConfig.d.ts} +2 -3
  139. package/lib/siteConfigs/siteConfigsConfig.d.ts.map +1 -0
  140. package/lib/siteConfigs/siteConfigsConfig.js +5 -0
  141. package/lib/{sitesConfig → siteConfigs}/useSiteConfig.d.ts +1 -1
  142. package/lib/{sitesConfig → siteConfigs}/useSiteConfig.d.ts.map +1 -1
  143. package/lib/{sitesConfig → siteConfigs}/useSiteConfig.js +2 -2
  144. package/lib/siteConfigs/useSiteConfigs.d.ts +3 -0
  145. package/lib/siteConfigs/useSiteConfigs.d.ts.map +1 -0
  146. package/lib/siteConfigs/useSiteConfigs.js +14 -0
  147. package/package.json +22 -19
  148. package/lib/blocks/CmsBlockContextProvider.d.ts +0 -28
  149. package/lib/blocks/CmsBlockContextProvider.d.ts.map +0 -1
  150. package/lib/blocks/useCmsBlockContext.d.ts +0 -4
  151. package/lib/blocks/useCmsBlockContext.d.ts.map +0 -1
  152. package/lib/blocks/useCmsBlockContext.js +0 -10
  153. package/lib/common/header/about/build-information/BuildInformationContext.d.ts +0 -7
  154. package/lib/common/header/about/build-information/BuildInformationContext.d.ts.map +0 -1
  155. package/lib/common/header/about/build-information/BuildInformationContext.js +0 -8
  156. package/lib/common/header/about/build-information/BuildInformationProvider.d.ts +0 -8
  157. package/lib/common/header/about/build-information/BuildInformationProvider.d.ts.map +0 -1
  158. package/lib/common/header/about/build-information/BuildInformationProvider.js +0 -16
  159. package/lib/dam/config/DamConfigContext.d.ts.map +0 -1
  160. package/lib/dam/config/DamConfigContext.js +0 -8
  161. package/lib/dam/config/DamConfigProvider.d.ts +0 -8
  162. package/lib/dam/config/DamConfigProvider.d.ts.map +0 -1
  163. package/lib/dam/config/DamConfigProvider.js +0 -25
  164. package/lib/dam/config/useDamConfig.d.ts +0 -3
  165. package/lib/dam/config/useDamConfig.d.ts.map +0 -1
  166. package/lib/dam/config/useDamConfig.js +0 -12
  167. package/lib/dependencies/DependenciesConfig.d.ts +0 -11
  168. package/lib/dependencies/DependenciesConfig.d.ts.map +0 -1
  169. package/lib/dependencies/DependenciesConfig.js +0 -20
  170. package/lib/locale/LocaleContext.d.ts +0 -7
  171. package/lib/locale/LocaleContext.d.ts.map +0 -1
  172. package/lib/locale/LocaleContext.js +0 -12
  173. package/lib/locale/LocaleProvider.d.ts +0 -8
  174. package/lib/locale/LocaleProvider.d.ts.map +0 -1
  175. package/lib/locale/LocaleProvider.js +0 -18
  176. package/lib/locale/useLocale.d.ts +0 -7
  177. package/lib/locale/useLocale.d.ts.map +0 -1
  178. package/lib/locale/useLocale.js +0 -14
  179. package/lib/sitesConfig/SitesConfigContext.d.ts.map +0 -1
  180. package/lib/sitesConfig/SitesConfigContext.js +0 -8
  181. package/lib/sitesConfig/SitesConfigProvider.d.ts +0 -8
  182. package/lib/sitesConfig/SitesConfigProvider.d.ts.map +0 -1
  183. package/lib/sitesConfig/SitesConfigProvider.js +0 -16
  184. package/lib/sitesConfig/useSitesConfig.d.ts +0 -3
  185. package/lib/sitesConfig/useSitesConfig.d.ts.map +0 -1
  186. package/lib/sitesConfig/useSitesConfig.js +0 -15
@@ -461,7 +461,7 @@ var createOneOfBlock = exports.createOneOfBlock = function createOneOfBlock(_ref
461
461
  name: "blockType",
462
462
  options: options,
463
463
  fullWidth: true,
464
- required: !allowEmpty
464
+ required: true
465
465
  })
466
466
  }), isInPaper && activeBlock.block && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Divider, {})]
467
467
  }), variant === "radio" && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
@@ -530,9 +530,11 @@ var createOneOfBlock = exports.createOneOfBlock = function createOneOfBlock(_ref
530
530
  },
531
531
  dynamicDisplayName: function dynamicDisplayName(state) {
532
532
  var _getActiveBlock5 = getActiveBlock(state),
533
- block = _getActiveBlock5.block;
533
+ block = _getActiveBlock5.block,
534
+ blockState = _getActiveBlock5.state;
534
535
  if (block != null) {
535
- return block.displayName;
536
+ var _block$dynamicDisplay, _block$dynamicDisplay2;
537
+ return (_block$dynamicDisplay = (_block$dynamicDisplay2 = block.dynamicDisplayName) === null || _block$dynamicDisplay2 === void 0 ? void 0 : _block$dynamicDisplay2.call(block, blockState.props)) !== null && _block$dynamicDisplay !== void 0 ? _block$dynamicDisplay : block.displayName;
536
538
  } else {
537
539
  return displayName;
538
540
  }
@@ -569,7 +571,7 @@ var ToggleButtonGroup = /*#__PURE__*/(0, _styles.styled)(_material.ToggleButtonG
569
571
  styles: "display:flex"
570
572
  } : {
571
573
  name: "zjik7",
572
- styles: "display:flex/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ibG9ja3MvZmFjdG9yaWVzL2NyZWF0ZU9uZU9mQmxvY2sudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBlc0QiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL2Jsb2Nrcy9mYWN0b3JpZXMvY3JlYXRlT25lT2ZCbG9jay50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCwgUmFkaW9Hcm91cEZpZWxkLCBTZWxlY3RGaWVsZCB9IGZyb20gXCJAY29tZXQvYWRtaW5cIjtcbmltcG9ydCB7IEJveCwgRGl2aWRlciwgVG9nZ2xlQnV0dG9uIGFzIE11aVRvZ2dsZUJ1dHRvbiwgVG9nZ2xlQnV0dG9uR3JvdXAgYXMgTXVpVG9nZ2xlQnV0dG9uR3JvdXAgfSBmcm9tIFwiQG11aS9tYXRlcmlhbFwiO1xuaW1wb3J0IHsgc3R5bGVkIH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWwvc3R5bGVzXCI7XG5pbXBvcnQgaXNFcXVhbCBmcm9tIFwibG9kYXNoLmlzZXF1YWxcIjtcbmltcG9ydCB7IHR5cGUgRGlzcGF0Y2gsIHR5cGUgUmVhY3ROb2RlLCB0eXBlIFNldFN0YXRlQWN0aW9uLCB1c2VDYWxsYmFjaywgdXNlTWVtbyB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gXCJyZWFjdC1pbnRsXCI7XG5cbmltcG9ydCB7IHVzZUNvbnRlbnRTY29wZSB9IGZyb20gXCIuLi8uLi9jb250ZW50U2NvcGUvUHJvdmlkZXJcIjtcbmltcG9ydCB7IHVzZUJsb2NrQWRtaW5Db21wb25lbnRQYXBlciB9IGZyb20gXCIuLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyXCI7XG5pbXBvcnQgeyBIaWRkZW5JblN1YnJvdXRlIH0gZnJvbSBcIi4uL2NvbW1vbi9IaWRkZW5JblN1YnJvdXRlXCI7XG5pbXBvcnQgeyB1c2VCbG9ja3NDb25maWcgfSBmcm9tIFwiLi4vY29uZmlnL0Jsb2Nrc0NvbmZpZ0NvbnRleHRcIjtcbmltcG9ydCB7IEJsb2Nrc0ZpbmFsRm9ybSB9IGZyb20gXCIuLi9mb3JtL0Jsb2Nrc0ZpbmFsRm9ybVwiO1xuaW1wb3J0IHsgY3JlYXRlQmxvY2tTa2VsZXRvbiB9IGZyb20gXCIuLi9oZWxwZXJzL2NyZWF0ZUJsb2NrU2tlbGV0b25cIjtcbmltcG9ydCB7IEhvdmVyUHJldmlld0NvbXBvbmVudCB9IGZyb20gXCIuLi9pZnJhbWVicmlkZ2UvSG92ZXJQcmV2aWV3Q29tcG9uZW50XCI7XG5pbXBvcnQgeyBTZWxlY3RQcmV2aWV3Q29tcG9uZW50IH0gZnJvbSBcIi4uL2lmcmFtZWJyaWRnZS9TZWxlY3RQcmV2aWV3Q29tcG9uZW50XCI7XG5pbXBvcnQgeyBCbG9ja0NhdGVnb3J5LCB0eXBlIEJsb2NrSW50ZXJmYWNlLCB0eXBlIEJsb2NrUHJldmlld1N0YXRlSW50ZXJmYWNlLCB0eXBlIEJsb2NrU3RhdGUsIHR5cGUgQ3VzdG9tQmxvY2tDYXRlZ29yeSB9IGZyb20gXCIuLi90eXBlc1wiO1xuaW1wb3J0IHsgcmVzb2x2ZU5ld1N0YXRlIH0gZnJvbSBcIi4uL3V0aWxzXCI7XG5pbXBvcnQgeyBwYXJhbGxlbEFzeW5jRXZlcnkgfSBmcm9tIFwiLi4vdXRpbHMvcGFyYWxsZWxBc3luY0V2ZXJ5XCI7XG5cbmludGVyZmFjZSBPbmVPZkJsb2NrSXRlbTxUIGV4dGVuZHMgQmxvY2tJbnRlcmZhY2UgPSBCbG9ja0ludGVyZmFjZT4ge1xuICAgIHR5cGU6IHN0cmluZztcbiAgICBwcm9wczogQmxvY2tTdGF0ZTxUPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPbmVPZkJsb2NrU3RhdGUge1xuICAgIGF0dGFjaGVkQmxvY2tzOiBPbmVPZkJsb2NrSXRlbVtdO1xuICAgIGFjdGl2ZVR5cGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT25lT2ZCbG9ja0ZyYWdtZW50IHtcbiAgICBhdHRhY2hlZEJsb2Nrczoge1xuICAgICAgICB0eXBlOiBzdHJpbmc7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIHByb3BzOiBhbnk7XG4gICAgfVtdO1xuICAgIGFjdGl2ZVR5cGU/OiBzdHJpbmc7XG4gICAgYmxvY2s/OiB7XG4gICAgICAgIHR5cGU6IHN0cmluZztcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgcHJvcHM6IGFueTtcbiAgICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9uZU9mQmxvY2tQcmV2aWV3U3RhdGUgZXh0ZW5kcyBCbG9ja1ByZXZpZXdTdGF0ZUludGVyZmFjZSB7XG4gICAgYmxvY2s/OiB7XG4gICAgICAgIHR5cGU6IHN0cmluZztcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgcHJvcHM6IGFueTtcbiAgICB9O1xufVxuXG50eXBlIEFjdGl2ZVR5cGU8Q29uZmlnIGV4dGVuZHMgYm9vbGVhbj4gPSBDb25maWcgZXh0ZW5kcyBmYWxzZSA/IHsgYWN0aXZlVHlwZTogc3RyaW5nIH0gOiB7IGFjdGl2ZVR5cGU/OiBzdHJpbmcgfTtcblxuZXhwb3J0IHR5cGUgT25lT2ZCbG9ja091dHB1dDxDb25maWcgZXh0ZW5kcyBib29sZWFuPiA9IHtcbiAgICBhdHRhY2hlZEJsb2Nrczoge1xuICAgICAgICB0eXBlOiBzdHJpbmc7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIHByb3BzOiBhbnk7XG4gICAgfVtdO1xufSAmIEFjdGl2ZVR5cGU8Q29uZmlnPjtcblxudHlwZSBCbG9ja1R5cGUgPSBzdHJpbmc7XG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZU9uZU9mQmxvY2tPcHRpb25zPFQgZXh0ZW5kcyBib29sZWFuPiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGRpc3BsYXlOYW1lPzogUmVhY3ROb2RlO1xuICAgIHN1cHBvcnRlZEJsb2NrczogUmVjb3JkPEJsb2NrVHlwZSwgQmxvY2tJbnRlcmZhY2U+O1xuICAgIGNhdGVnb3J5PzogQmxvY2tDYXRlZ29yeSB8IEN1c3RvbUJsb2NrQ2F0ZWdvcnk7XG4gICAgdmFyaWFudD86IFwic2VsZWN0XCIgfCBcInJhZGlvXCIgfCBcInRvZ2dsZVwiO1xuICAgIGFsbG93RW1wdHk/OiBUO1xufVxuXG5leHBvcnQgY29uc3QgY3JlYXRlT25lT2ZCbG9jayA9IDxUIGV4dGVuZHMgYm9vbGVhbiA9IGJvb2xlYW4+KFxuICAgIHtcbiAgICAgICAgc3VwcG9ydGVkQmxvY2tzLFxuICAgICAgICBuYW1lLFxuICAgICAgICBkaXNwbGF5TmFtZSA9IFwiU3dpdGNoXCIsXG4gICAgICAgIGNhdGVnb3J5ID0gQmxvY2tDYXRlZ29yeS5PdGhlcixcbiAgICAgICAgdmFyaWFudCA9IFwic2VsZWN0XCIsXG4gICAgICAgIGFsbG93RW1wdHk6IHBhc3NlZEFsbG93RW1wdHksXG4gICAgfTogQ3JlYXRlT25lT2ZCbG9ja09wdGlvbnM8VD4sXG4gICAgb3ZlcnJpZGU/OiAoXG4gICAgICAgIGJsb2NrOiBCbG9ja0ludGVyZmFjZTxPbmVPZkJsb2NrRnJhZ21lbnQsIE9uZU9mQmxvY2tTdGF0ZSwgT25lT2ZCbG9ja091dHB1dDxUPiwgT25lT2ZCbG9ja1ByZXZpZXdTdGF0ZT4sXG4gICAgKSA9PiBCbG9ja0ludGVyZmFjZTxPbmVPZkJsb2NrRnJhZ21lbnQsIE9uZU9mQmxvY2tTdGF0ZSwgT25lT2ZCbG9ja091dHB1dDxUPiwgT25lT2ZCbG9ja1ByZXZpZXdTdGF0ZT4sXG4pOiBCbG9ja0ludGVyZmFjZTxPbmVPZkJsb2NrRnJhZ21lbnQsIE9uZU9mQmxvY2tTdGF0ZSwgT25lT2ZCbG9ja091dHB1dDxUPiwgT25lT2ZCbG9ja1ByZXZpZXdTdGF0ZT4gPT4ge1xuICAgIC8vIGFsbG93RW1wdHkgY2FuJ3QgaGF2ZSBhIGRlZmF1bHQgdHlwZSBiZWNhdXNlIGl0J3MgdHlwZWQgYnkgYSBnZW5lcmljXG4gICAgY29uc3QgYWxsb3dFbXB0eSA9IChwYXNzZWRBbGxvd0VtcHR5ID8/IHRydWUpIHNhdGlzZmllcyBib29sZWFuO1xuXG4gICAgZnVuY3Rpb24gYmxvY2tGb3JUeXBlKHR5cGU6IHN0cmluZyk6IEJsb2NrSW50ZXJmYWNlIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiBzdXBwb3J0ZWRCbG9ja3NbdHlwZV0gPz8gbnVsbDtcbiAgICB9XG4gICAgLy8gaGVscGVyIHRvIGdldCBjb21tb24gdmFsdWVzIG9mIHRoZSBzZWxlY3RlZCBibG9jayBieSBTdGF0ZVxuICAgIGZ1bmN0aW9uIGdldEFjdGl2ZUJsb2NrKHM6IE9uZU9mQmxvY2tTdGF0ZSkge1xuICAgICAgICBpZiAoIXMuYWN0aXZlVHlwZSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBzdGF0ZTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIGJsb2NrOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgdHlwZTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBhY3RpdmVCbG9ja1N0YXRlID0gcy5hdHRhY2hlZEJsb2Nrcy5maW5kKChjKSA9PiBjLnR5cGUgPT09IHMuYWN0aXZlVHlwZSk7XG4gICAgICAgIGlmICghYWN0aXZlQmxvY2tTdGF0ZSkge1xuICAgICAgICAgICAgbGV0IG1lc3NhZ2UgPSBgQ2FuJ3QgZmluZCByZWZlcmVuY2UgdG8gYWN0aXZlIGJsb2NrIG9mIHR5cGUgXCIke3MuYWN0aXZlVHlwZX1cIi5gO1xuXG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09IFwiZGV2ZWxvcG1lbnRcIikge1xuICAgICAgICAgICAgICAgIG1lc3NhZ2UgKz0gYCBUaGlzIGlzIHByb2JhYmx5IGR1ZSB0byBhIG1pc3NpbmcgXCJ4LWluY2x1ZGUtaW52aXNpYmxlLWNvbnRlbnRcIiBIVFRQIGhlYWRlci4gUGxlYXNlIG1ha2Ugc3VyZSB0byBpbmNsdWRlIHRoZSBoZWFkZXIgd2hlbiBmZXRjaGluZyB0aGUgYmxvY2suYDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGJsb2NrID0gYWN0aXZlQmxvY2tTdGF0ZSA/IGJsb2NrRm9yVHlwZShhY3RpdmVCbG9ja1N0YXRlLnR5cGUpIDogdW5kZWZpbmVkO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBzdGF0ZTogYWN0aXZlQmxvY2tTdGF0ZSxcbiAgICAgICAgICAgIGJsb2NrLFxuICAgICAgICAgICAgdHlwZTogYWN0aXZlQmxvY2tTdGF0ZS50eXBlLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGNvbnN0IE9uZU9mQmxvY2s6IEJsb2NrSW50ZXJmYWNlPE9uZU9mQmxvY2tGcmFnbWVudCwgT25lT2ZCbG9ja1N0YXRlLCBPbmVPZkJsb2NrT3V0cHV0PFQ+LCBPbmVPZkJsb2NrUHJldmlld1N0YXRlPiA9IHtcbiAgICAgICAgLi4uY3JlYXRlQmxvY2tTa2VsZXRvbigpLFxuXG4gICAgICAgIG5hbWUsXG5cbiAgICAgICAgZGlzcGxheU5hbWUsXG5cbiAgICAgICAgY2F0ZWdvcnksXG5cbiAgICAgICAgZGVmYXVsdFZhbHVlczogKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGFsbG93RW1wdHkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBhdHRhY2hlZEJsb2NrczogW10sXG4gICAgICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGU6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCBbYmxvY2tUeXBlLCBibG9ja10gPSBPYmplY3QuZW50cmllcyhzdXBwb3J0ZWRCbG9ja3MpWzBdO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgYXR0YWNoZWRCbG9ja3M6IFt7IHR5cGU6IGJsb2NrVHlwZSwgcHJvcHM6IGJsb2NrLmRlZmF1bHRWYWx1ZXMoKSB9XSxcbiAgICAgICAgICAgICAgICAgICAgYWN0aXZlVHlwZTogYmxvY2tUeXBlLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG5cbiAgICAgICAgaW5wdXQyU3RhdGU6ICh7IGF0dGFjaGVkQmxvY2tzLCBhY3RpdmVUeXBlLCBibG9jaywgLi4uYWRkaXRpb25hbEZpZWxkcyB9KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzdGF0ZTogT25lT2ZCbG9ja1N0YXRlID0ge1xuICAgICAgICAgICAgICAgIC4uLmFkZGl0aW9uYWxGaWVsZHMsXG4gICAgICAgICAgICAgICAgYXR0YWNoZWRCbG9ja3M6IFtdLFxuICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGU6IGFjdGl2ZVR5cGUgJiYgc3VwcG9ydGVkQmxvY2tzW2FjdGl2ZVR5cGVdID8gYWN0aXZlVHlwZSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBhdHRhY2hlZEJsb2Nrcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGl0ZW0udHlwZSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoIWJsb2NrKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybihgVW5rbm93biBibG9jayB0eXBlIFwiJHtpdGVtLnR5cGV9XCJgKTtcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3RhdGUuYXR0YWNoZWRCbG9ja3MucHVzaCh7IC4uLml0ZW0sIHByb3BzOiBibG9jay5pbnB1dDJTdGF0ZShpdGVtLnByb3BzKSB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgICB9LFxuICAgICAgICBzdGF0ZTJPdXRwdXQ6ICh7IGF0dGFjaGVkQmxvY2tzLCBhY3RpdmVUeXBlLCAuLi5hZGRpdGlvbmFsRmllbGRzIH0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4uYWRkaXRpb25hbEZpZWxkcyxcbiAgICAgICAgICAgICAgICBhdHRhY2hlZEJsb2NrczogYXR0YWNoZWRCbG9ja3MubWFwKChjKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGMudHlwZSk7XG4gICAgICAgICAgICAgICAgICAgIGlmICghYmxvY2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gQmxvY2sgZm91bmQgZm9yIHR5cGUgJHtjLnR5cGV9YCk7IC8vIGZvciBUU1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBjLnR5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9wczogYmxvY2suc3RhdGUyT3V0cHV0KGMucHJvcHMpLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGUsXG4gICAgICAgICAgICB9IGFzIE9uZU9mQmxvY2tPdXRwdXQ8VD47XG4gICAgICAgIH0sXG5cbiAgICAgICAgb3V0cHV0MlN0YXRlOiBhc3luYyAoeyBhdHRhY2hlZEJsb2NrcywgYWN0aXZlVHlwZSwgLi4uYWRkaXRpb25hbEZpZWxkcyB9LCBjb250ZXh0KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzdGF0ZTogT25lT2ZCbG9ja1N0YXRlID0ge1xuICAgICAgICAgICAgICAgIGF0dGFjaGVkQmxvY2tzOiBbXSxcbiAgICAgICAgICAgICAgICBhY3RpdmVUeXBlLFxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGF0dGFjaGVkQmxvY2tzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYmxvY2sgPSBibG9ja0ZvclR5cGUoaXRlbS50eXBlKTtcblxuICAgICAgICAgICAgICAgIGlmICghYmxvY2spIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBCbG9jayBmb3VuZCBmb3IgdHlwZSAke2l0ZW0udHlwZX1gKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzdGF0ZS5hdHRhY2hlZEJsb2Nrcy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICAgICAgICAgICAgcHJvcHM6IGF3YWl0IGJsb2NrLm91dHB1dDJTdGF0ZShpdGVtLnByb3BzLCBjb250ZXh0KSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgICB9LFxuXG4gICAgICAgIGNyZWF0ZVByZXZpZXdTdGF0ZTogKHN0YXRlLCBwcmV2aWV3Q3R4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7IHN0YXRlOiBibG9ja1N0YXRlLCBibG9jayB9ID0gZ2V0QWN0aXZlQmxvY2soc3RhdGUpO1xuICAgICAgICAgICAgY29uc3QgeyBhdHRhY2hlZEJsb2NrcywgYWN0aXZlVHlwZSwgLi4uYWRkaXRpb25hbEZpZWxkcyB9ID0gc3RhdGU7XG5cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4uYWRkaXRpb25hbEZpZWxkcyxcbiAgICAgICAgICAgICAgICBibG9jazogYmxvY2tTdGF0ZVxuICAgICAgICAgICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogYmxvY2tTdGF0ZS50eXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uYmxvY2s/LmNyZWF0ZVByZXZpZXdTdGF0ZShibG9ja1N0YXRlLnByb3BzLCBwcmV2aWV3Q3R4KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkbWluTWV0YTogeyByb3V0ZTogYCR7cHJldmlld0N0eC5wYXJlbnRVcmx9IyR7YmxvY2tTdGF0ZS50eXBlfWAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSxcblxuICAgICAgICBpc1ZhbGlkOiBhc3luYyAoc3RhdGUpID0+XG4gICAgICAgICAgICBwYXJhbGxlbEFzeW5jRXZlcnkoc3RhdGUuYXR0YWNoZWRCbG9ja3MsIGFzeW5jIChjKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgYmxvY2sgPSBibG9ja0ZvclR5cGUoYy50eXBlKTtcbiAgICAgICAgICAgICAgICBpZiAoIWJsb2NrKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gQmxvY2sgZm91bmQgZm9yIHR5cGUgJHtjLnR5cGV9YCk7IC8vIGZvciBUU1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gYmxvY2suaXNWYWxpZChjLnByb3BzKTtcbiAgICAgICAgICAgIH0pLFxuXG4gICAgICAgIGFuY2hvcnM6IChzdGF0ZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBzdGF0ZTogYmxvY2tTdGF0ZSwgYmxvY2sgfSA9IGdldEFjdGl2ZUJsb2NrKHN0YXRlKTtcblxuICAgICAgICAgICAgaWYgKGJsb2NrU3RhdGUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGJsb2NrPy5hbmNob3JzPy4oYmxvY2tTdGF0ZS5wcm9wcykgPz8gW107XG4gICAgICAgIH0sXG5cbiAgICAgICAgZGVwZW5kZW5jaWVzOiAoc3RhdGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHsgc3RhdGU6IGJsb2NrU3RhdGUsIGJsb2NrIH0gPSBnZXRBY3RpdmVCbG9jayhzdGF0ZSk7XG5cbiAgICAgICAgICAgIGlmIChibG9ja1N0YXRlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBibG9jaz8uZGVwZW5kZW5jaWVzPy4oYmxvY2tTdGF0ZS5wcm9wcykgPz8gW107XG4gICAgICAgIH0sXG5cbiAgICAgICAgcmVwbGFjZURlcGVuZGVuY2llc0luT3V0cHV0OiAob3V0cHV0LCByZXBsYWNlbWVudHMpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG5ld091dHB1dDogT25lT2ZCbG9ja091dHB1dDxUPiA9IHsgLi4ub3V0cHV0LCBhdHRhY2hlZEJsb2NrczogW10gfTtcblxuICAgICAgICAgICAgZm9yIChjb25zdCBjIG9mIG91dHB1dC5hdHRhY2hlZEJsb2Nrcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGMudHlwZSk7XG4gICAgICAgICAgICAgICAgaWYgKCFibG9jaykge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIEJsb2NrIGZvdW5kIGZvciB0eXBlICR7Yy50eXBlfWApOyAvLyBmb3IgVFNcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBuZXdPdXRwdXQuYXR0YWNoZWRCbG9ja3MucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgIC4uLmMsXG4gICAgICAgICAgICAgICAgICAgIHByb3BzOiBibG9jay5yZXBsYWNlRGVwZW5kZW5jaWVzSW5PdXRwdXQoYy5wcm9wcywgcmVwbGFjZW1lbnRzKSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIG5ld091dHB1dDtcbiAgICAgICAgfSxcblxuICAgICAgICBkZWZpbmVzT3duUGFkZGluZzogdHJ1ZSxcblxuICAgICAgICBBZG1pbkNvbXBvbmVudDogKHsgc3RhdGUsIHVwZGF0ZVN0YXRlIH0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzSW5QYXBlciA9IHVzZUJsb2NrQWRtaW5Db21wb25lbnRQYXBlcigpO1xuXG4gICAgICAgICAgICBjb25zdCB7IHNjb3BlIH0gPSB1c2VDb250ZW50U2NvcGUoKTtcbiAgICAgICAgICAgIGNvbnN0IHsgaXNCbG9ja1N1cHBvcnRlZCB9ID0gdXNlQmxvY2tzQ29uZmlnKCk7XG5cbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbnMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgZmlsdGVyZWRTdXBwb3J0ZWRCbG9ja3M7XG5cbiAgICAgICAgICAgICAgICBpZiAoaXNCbG9ja1N1cHBvcnRlZCkge1xuICAgICAgICAgICAgICAgICAgICBmaWx0ZXJlZFN1cHBvcnRlZEJsb2NrcyA9IE9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5lbnRyaWVzKHN1cHBvcnRlZEJsb2NrcykuZmlsdGVyKChbLCBibG9ja10pID0+IGlzQmxvY2tTdXBwb3J0ZWQoYmxvY2ssIHNjb3BlKSksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyZWRTdXBwb3J0ZWRCbG9ja3MgPSBzdXBwb3J0ZWRCbG9ja3M7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3Qgb3B0aW9uczogQXJyYXk8eyB2YWx1ZTogc3RyaW5nOyBsYWJlbDogUmVhY3ROb2RlIH0+ID0gYWxsb3dFbXB0eVxuICAgICAgICAgICAgICAgICAgICA/IFt7IHZhbHVlOiBcIm5vbmVcIiwgbGFiZWw6IDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLm9uZU9mQmxvY2suZW1wdHlcIiBkZWZhdWx0TWVzc2FnZT1cIk5vbmVcIiAvPiB9XVxuICAgICAgICAgICAgICAgICAgICA6IFtdO1xuXG4gICAgICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMoZmlsdGVyZWRTdXBwb3J0ZWRCbG9ja3MpLmZvckVhY2goKFtibG9ja1R5cGUsIGJsb2NrXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IGJsb2NrVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBibG9jay5kaXNwbGF5TmFtZSxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gb3B0aW9ucztcbiAgICAgICAgICAgIH0sIFtzY29wZSwgaXNCbG9ja1N1cHBvcnRlZF0pO1xuXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVCbG9ja1NlbGVjdCA9IHVzZUNhbGxiYWNrKFxuICAgICAgICAgICAgICAgIChibG9ja1R5cGU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZSgocHJldlN0YXRlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgbmV3U3RhdGU6IE9uZU9mQmxvY2tTdGF0ZSA9IHByZXZTdGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChibG9ja1R5cGUgPT09IFwibm9uZVwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdW5zZWxlY3QsIG5vIGJsb2NrIHNlbGVjdGVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3U3RhdGUgPSB7IC4uLnByZXZTdGF0ZSwgYWN0aXZlVHlwZTogdW5kZWZpbmVkIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNoZWNrIGlmIHdlIGhhdmUgYSBibG9jayBvZiB0aGUgc2FtZSB0eXBlIGFscmVhZHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXRjaCA9IHByZXZTdGF0ZS5hdHRhY2hlZEJsb2Nrcy5maW5kKChjKSA9PiBjLnR5cGUgPT09IGJsb2NrVHlwZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG1hdGNoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHdlIGhhdmUgYW4gZXhpc3RpbmcgYmxvY2sgd2l0aCBzYW1lIHR5cGUsIHNvIHNlbGVjdCBpdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdTdGF0ZSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLnByZXZTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGU6IGJsb2NrVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB3ZSBoYXZlIG5vIGV4aXN0aW5nIGJsb2NrLCB3ZSBuZWVkIHRvIGNyZWF0ZSBhbmQgc2VsZWN0IGEgbmV3IGJsb2NrXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGJsb2NrVHlwZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYmxvY2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gQmxvY2sgZm91bmQgZm9yIHR5cGUgJHtibG9ja1R5cGV9YCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdJdGVtOiBPbmVPZkJsb2NrSXRlbSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IGJsb2NrVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3BzOiBibG9jay5kZWZhdWx0VmFsdWVzKCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3U3RhdGUgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5wcmV2U3RhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRhY2hlZEJsb2NrczogWy4uLnByZXZTdGF0ZS5hdHRhY2hlZEJsb2NrcywgbmV3SXRlbV0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3RpdmVUeXBlOiBibG9ja1R5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gY2xlYW4gdXAgdGhlIHByZXZpb3VzIHNlbGVjdGVkIGJsb2NrXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB3aGVuIHByZXZpb3VzIGJsb2NrIGhhcyBubyB2YWx1ZXMgKHZhbHVlcyBhcmUgZXF1YWwgdG8gZGVmYXVsdCB2YWx1ZXMpXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGVuIHdlIHJlbW92ZSB0aGUgYmxvY2tcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMgcHJldmVudHMgZnJvbSBzYXZpbmcgcG9zc2libHkgaW52YWxpZCBibG9ja3MgZm9yIGlycmVsZXZhbnQgKG5vdCBzZWxlY3RlZCkgYmxvY2tzXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwcmV2aW91c1NlbGVjdGVkQmxvY2sgPSBnZXRBY3RpdmVCbG9jayhwcmV2U3RhdGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV3U2VsZWN0ZWRCbG9jayA9IGdldEFjdGl2ZUJsb2NrKG5ld1N0YXRlKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHByZXZpb3VzU2VsZWN0ZWRCbG9jay5ibG9jayAmJiBwcmV2aW91c1NlbGVjdGVkQmxvY2suc3RhdGUgJiYgbmV3U2VsZWN0ZWRCbG9jay50eXBlICE9PSBwcmV2aW91c1NlbGVjdGVkQmxvY2sudHlwZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc0VxdWFsKHByZXZpb3VzU2VsZWN0ZWRCbG9jay5ibG9jay5kZWZhdWx0VmFsdWVzKCksIHByZXZpb3VzU2VsZWN0ZWRCbG9jay5zdGF0ZS5wcm9wcykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3U3RhdGUgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5uZXdTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dGFjaGVkQmxvY2tzOiBuZXdTdGF0ZS5hdHRhY2hlZEJsb2Nrcy5maWx0ZXIoKGMpID0+IGMudHlwZSAhPT0gcHJldmlvdXNTZWxlY3RlZEJsb2NrLnN0YXRlLnR5cGUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ld1N0YXRlO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFt1cGRhdGVTdGF0ZV0sXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICBjb25zdCBjcmVhdGVVcGRhdGVTdWJCbG9ja3NGbiA9IHVzZUNhbGxiYWNrKFxuICAgICAgICAgICAgICAgIChibG9ja1R5cGU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICAgICAgICAgICAgICBjb25zdCB1cGRhdGVTdWJCbG9ja3NGbjogRGlzcGF0Y2g8U2V0U3RhdGVBY3Rpb248YW55Pj4gPSAoc2V0U3RhdGVBY3Rpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZVN0YXRlKChwcmV2U3RhdGUpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dGFjaGVkQmxvY2tzOiBwcmV2U3RhdGUuYXR0YWNoZWRCbG9ja3MubWFwKChjKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjLnR5cGUgPT09IGJsb2NrVHlwZSA/IHsgLi4uYywgcHJvcHM6IHJlc29sdmVOZXdTdGF0ZSh7IHByZXZTdGF0ZTogYy5wcm9wcywgc2V0U3RhdGVBY3Rpb24gfSkgfSA6IGMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVwZGF0ZVN1YkJsb2Nrc0ZuO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgW3VwZGF0ZVN0YXRlXSxcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIGNvbnN0IGFjdGl2ZUJsb2NrID0gZ2V0QWN0aXZlQmxvY2soc3RhdGUpO1xuICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWRCbG9ja1R5cGUgPSBhY3RpdmVCbG9jay5ibG9jayA/IGFjdGl2ZUJsb2NrLnN0YXRlLnR5cGUgOiBcIm5vbmVcIjtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8U2VsZWN0UHJldmlld0NvbXBvbmVudD5cbiAgICAgICAgICAgICAgICAgICAgPEhpZGRlbkluU3Vicm91dGU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmdCb3R0b209e2lzSW5QYXBlciA/IDAgOiAzfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tzRmluYWxGb3JtPHsgYmxvY2tUeXBlOiBzdHJpbmcgfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25TdWJtaXQ9eyh7IGJsb2NrVHlwZSB9KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVCbG9ja1NlbGVjdChibG9ja1R5cGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsVmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja1R5cGU6IHNlbGVjdGVkQmxvY2tUeXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3ZhcmlhbnQgPT09IFwic2VsZWN0XCIgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmc9e2lzSW5QYXBlciA/IDMgOiAwfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdEZpZWxkIG5hbWU9XCJibG9ja1R5cGVcIiBvcHRpb25zPXtvcHRpb25zfSBmdWxsV2lkdGggcmVxdWlyZWQ9eyFhbGxvd0VtcHR5fSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpc0luUGFwZXIgJiYgYWN0aXZlQmxvY2suYmxvY2sgJiYgPERpdmlkZXIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3ZhcmlhbnQgPT09IFwicmFkaW9cIiAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggZGlzcGxheT1cImZsZXhcIiBmbGV4RGlyZWN0aW9uPVwiY29sdW1uXCIgcGFkZGluZz17M30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxSYWRpb0dyb3VwRmllbGQgbmFtZT1cImJsb2NrVHlwZVwiIGZ1bGxXaWR0aCBvcHRpb25zPXtvcHRpb25zfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHthY3RpdmVCbG9jay5ibG9jayAmJiA8RGl2aWRlciAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7dmFyaWFudCA9PT0gXCJ0b2dnbGVcIiAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggcGFkZGluZz17aXNJblBhcGVyID8gMyA6IDB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGQgbmFtZT1cImJsb2NrVHlwZVwiIGZ1bGxXaWR0aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsoeyBpbnB1dDogeyB2YWx1ZSwgb25DaGFuZ2UgfSB9KSA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRvZ2dsZUJ1dHRvbkdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXt2YWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9eyhldmVudCwgYmxvY2tUeXBlOiBzdHJpbmcgfCBudWxsKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoYmxvY2tUeXBlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2UoYmxvY2tUeXBlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhjbHVzaXZlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7b3B0aW9ucy5tYXAoKG9wdGlvbikgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRvZ2dsZUJ1dHRvbiB2YWx1ZT17b3B0aW9uLnZhbHVlfSBrZXk9e29wdGlvbi52YWx1ZX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVG9nZ2xlQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1RvZ2dsZUJ1dHRvbkdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9GaWVsZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aXNJblBhcGVyICYmIGFjdGl2ZUJsb2NrLmJsb2NrICYmIDxEaXZpZGVyIC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CbG9ja3NGaW5hbEZvcm0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgPC9IaWRkZW5JblN1YnJvdXRlPlxuICAgICAgICAgICAgICAgICAgICB7YWN0aXZlQmxvY2suYmxvY2sgJiYgYWN0aXZlQmxvY2suc3RhdGUgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmc9e2lzSW5QYXBlciAmJiAhYWN0aXZlQmxvY2suYmxvY2suZGVmaW5lc093blBhZGRpbmcgPyAzIDogMH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEhvdmVyUHJldmlld0NvbXBvbmVudCBrZXk9e2FjdGl2ZUJsb2NrLnR5cGV9IGNvbXBvbmVudFNsdWc9e2AjJHthY3RpdmVCbG9jay50eXBlfWB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aXZlQmxvY2suYmxvY2suQWRtaW5Db21wb25lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlPXthY3RpdmVCbG9jay5zdGF0ZS5wcm9wc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZVN0YXRlPXtjcmVhdGVVcGRhdGVTdWJCbG9ja3NGbihhY3RpdmVCbG9jay5zdGF0ZS50eXBlKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0hvdmVyUHJldmlld0NvbXBvbmVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgICA8L1NlbGVjdFByZXZpZXdDb21wb25lbnQ+XG4gICAgICAgICAgICApO1xuICAgICAgICB9LFxuICAgICAgICBwcmV2aWV3Q29udGVudDogKHN0YXRlLCBjdHgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHsgYmxvY2ssIHN0YXRlOiBhY3RpdmVCbG9ja1N0YXRlIH0gPSBnZXRBY3RpdmVCbG9jayhzdGF0ZSk7XG5cbiAgICAgICAgICAgIGlmIChibG9jayAmJiBhY3RpdmVCbG9ja1N0YXRlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGJsb2NrLnByZXZpZXdDb250ZW50KGFjdGl2ZUJsb2NrU3RhdGUucHJvcHMsIGN0eCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcblxuICAgICAgICBkeW5hbWljRGlzcGxheU5hbWU6IChzdGF0ZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBibG9jayB9ID0gZ2V0QWN0aXZlQmxvY2soc3RhdGUpO1xuXG4gICAgICAgICAgICBpZiAoYmxvY2sgIT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBibG9jay5kaXNwbGF5TmFtZTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRpc3BsYXlOYW1lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuXG4gICAgICAgIGV4dHJhY3RUZXh0Q29udGVudHM6IChzdGF0ZSwgb3B0aW9ucykgPT4ge1xuICAgICAgICAgICAgY29uc3QgaW5jbHVkZUludmlzaWJsZUNvbnRlbnQgPSBvcHRpb25zPy5pbmNsdWRlSW52aXNpYmxlQ29udGVudCA/PyBmYWxzZTtcblxuICAgICAgICAgICAgY29uc3QgY29udGVudCA9IHN0YXRlLmF0dGFjaGVkQmxvY2tzLnJlZHVjZTxzdHJpbmdbXT4oKGNvbnRlbnQsIGNoaWxkKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgYmxvY2sgPSBibG9ja0ZvclR5cGUoY2hpbGQudHlwZSk7XG4gICAgICAgICAgICAgICAgaWYgKCFibG9jaykge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIEJsb2NrIGZvdW5kIGZvciB0eXBlICR7Y2hpbGQudHlwZX1gKTsgLy8gZm9yIFRTXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKGNoaWxkLnR5cGUgIT09IHN0YXRlLmFjdGl2ZVR5cGUgJiYgIWluY2x1ZGVJbnZpc2libGVDb250ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBjb250ZW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiBbLi4uY29udGVudCwgLi4uKGJsb2NrLmV4dHJhY3RUZXh0Q29udGVudHM/LihjaGlsZC5wcm9wcywgb3B0aW9ucykgPz8gW10pXTtcbiAgICAgICAgICAgIH0sIFtdKTtcbiAgICAgICAgICAgIHJldHVybiBjb250ZW50O1xuICAgICAgICB9LFxuICAgIH07XG4gICAgaWYgKG92ZXJyaWRlKSB7XG4gICAgICAgIHJldHVybiBvdmVycmlkZShPbmVPZkJsb2NrKTtcbiAgICB9XG4gICAgcmV0dXJuIE9uZU9mQmxvY2s7XG59O1xuXG5jb25zdCBUb2dnbGVCdXR0b25Hcm91cCA9IHN0eWxlZChNdWlUb2dnbGVCdXR0b25Hcm91cClgXG4gICAgZGlzcGxheTogZmxleDtcbmA7XG5cbmNvbnN0IFRvZ2dsZUJ1dHRvbiA9IHN0eWxlZChNdWlUb2dnbGVCdXR0b24pYFxuICAgIGZsZXg6IDE7XG4gICAgY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUucGFsZXR0ZS50ZXh0LnByaW1hcnl9O1xuYDtcbiJdfQ== */",
574
+ styles: "display:flex/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ibG9ja3MvZmFjdG9yaWVzL2NyZWF0ZU9uZU9mQmxvY2sudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBlc0QiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL2Jsb2Nrcy9mYWN0b3JpZXMvY3JlYXRlT25lT2ZCbG9jay50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCwgUmFkaW9Hcm91cEZpZWxkLCBTZWxlY3RGaWVsZCB9IGZyb20gXCJAY29tZXQvYWRtaW5cIjtcbmltcG9ydCB7IEJveCwgRGl2aWRlciwgVG9nZ2xlQnV0dG9uIGFzIE11aVRvZ2dsZUJ1dHRvbiwgVG9nZ2xlQnV0dG9uR3JvdXAgYXMgTXVpVG9nZ2xlQnV0dG9uR3JvdXAgfSBmcm9tIFwiQG11aS9tYXRlcmlhbFwiO1xuaW1wb3J0IHsgc3R5bGVkIH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWwvc3R5bGVzXCI7XG5pbXBvcnQgaXNFcXVhbCBmcm9tIFwibG9kYXNoLmlzZXF1YWxcIjtcbmltcG9ydCB7IHR5cGUgRGlzcGF0Y2gsIHR5cGUgUmVhY3ROb2RlLCB0eXBlIFNldFN0YXRlQWN0aW9uLCB1c2VDYWxsYmFjaywgdXNlTWVtbyB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gXCJyZWFjdC1pbnRsXCI7XG5cbmltcG9ydCB7IHVzZUNvbnRlbnRTY29wZSB9IGZyb20gXCIuLi8uLi9jb250ZW50U2NvcGUvUHJvdmlkZXJcIjtcbmltcG9ydCB7IHVzZUJsb2NrQWRtaW5Db21wb25lbnRQYXBlciB9IGZyb20gXCIuLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyXCI7XG5pbXBvcnQgeyBIaWRkZW5JblN1YnJvdXRlIH0gZnJvbSBcIi4uL2NvbW1vbi9IaWRkZW5JblN1YnJvdXRlXCI7XG5pbXBvcnQgeyB1c2VCbG9ja3NDb25maWcgfSBmcm9tIFwiLi4vY29uZmlnL0Jsb2Nrc0NvbmZpZ0NvbnRleHRcIjtcbmltcG9ydCB7IEJsb2Nrc0ZpbmFsRm9ybSB9IGZyb20gXCIuLi9mb3JtL0Jsb2Nrc0ZpbmFsRm9ybVwiO1xuaW1wb3J0IHsgY3JlYXRlQmxvY2tTa2VsZXRvbiB9IGZyb20gXCIuLi9oZWxwZXJzL2NyZWF0ZUJsb2NrU2tlbGV0b25cIjtcbmltcG9ydCB7IEhvdmVyUHJldmlld0NvbXBvbmVudCB9IGZyb20gXCIuLi9pZnJhbWVicmlkZ2UvSG92ZXJQcmV2aWV3Q29tcG9uZW50XCI7XG5pbXBvcnQgeyBTZWxlY3RQcmV2aWV3Q29tcG9uZW50IH0gZnJvbSBcIi4uL2lmcmFtZWJyaWRnZS9TZWxlY3RQcmV2aWV3Q29tcG9uZW50XCI7XG5pbXBvcnQgeyBCbG9ja0NhdGVnb3J5LCB0eXBlIEJsb2NrSW50ZXJmYWNlLCB0eXBlIEJsb2NrUHJldmlld1N0YXRlSW50ZXJmYWNlLCB0eXBlIEJsb2NrU3RhdGUsIHR5cGUgQ3VzdG9tQmxvY2tDYXRlZ29yeSB9IGZyb20gXCIuLi90eXBlc1wiO1xuaW1wb3J0IHsgcmVzb2x2ZU5ld1N0YXRlIH0gZnJvbSBcIi4uL3V0aWxzXCI7XG5pbXBvcnQgeyBwYXJhbGxlbEFzeW5jRXZlcnkgfSBmcm9tIFwiLi4vdXRpbHMvcGFyYWxsZWxBc3luY0V2ZXJ5XCI7XG5cbmludGVyZmFjZSBPbmVPZkJsb2NrSXRlbTxUIGV4dGVuZHMgQmxvY2tJbnRlcmZhY2UgPSBCbG9ja0ludGVyZmFjZT4ge1xuICAgIHR5cGU6IHN0cmluZztcbiAgICBwcm9wczogQmxvY2tTdGF0ZTxUPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPbmVPZkJsb2NrU3RhdGUge1xuICAgIGF0dGFjaGVkQmxvY2tzOiBPbmVPZkJsb2NrSXRlbVtdO1xuICAgIGFjdGl2ZVR5cGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT25lT2ZCbG9ja0ZyYWdtZW50IHtcbiAgICBhdHRhY2hlZEJsb2Nrczoge1xuICAgICAgICB0eXBlOiBzdHJpbmc7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIHByb3BzOiBhbnk7XG4gICAgfVtdO1xuICAgIGFjdGl2ZVR5cGU/OiBzdHJpbmc7XG4gICAgYmxvY2s/OiB7XG4gICAgICAgIHR5cGU6IHN0cmluZztcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgcHJvcHM6IGFueTtcbiAgICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9uZU9mQmxvY2tQcmV2aWV3U3RhdGUgZXh0ZW5kcyBCbG9ja1ByZXZpZXdTdGF0ZUludGVyZmFjZSB7XG4gICAgYmxvY2s/OiB7XG4gICAgICAgIHR5cGU6IHN0cmluZztcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgcHJvcHM6IGFueTtcbiAgICB9O1xufVxuXG50eXBlIEFjdGl2ZVR5cGU8Q29uZmlnIGV4dGVuZHMgYm9vbGVhbj4gPSBDb25maWcgZXh0ZW5kcyBmYWxzZSA/IHsgYWN0aXZlVHlwZTogc3RyaW5nIH0gOiB7IGFjdGl2ZVR5cGU/OiBzdHJpbmcgfTtcblxuZXhwb3J0IHR5cGUgT25lT2ZCbG9ja091dHB1dDxDb25maWcgZXh0ZW5kcyBib29sZWFuPiA9IHtcbiAgICBhdHRhY2hlZEJsb2Nrczoge1xuICAgICAgICB0eXBlOiBzdHJpbmc7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIHByb3BzOiBhbnk7XG4gICAgfVtdO1xufSAmIEFjdGl2ZVR5cGU8Q29uZmlnPjtcblxudHlwZSBCbG9ja1R5cGUgPSBzdHJpbmc7XG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZU9uZU9mQmxvY2tPcHRpb25zPFQgZXh0ZW5kcyBib29sZWFuPiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGRpc3BsYXlOYW1lPzogUmVhY3ROb2RlO1xuICAgIHN1cHBvcnRlZEJsb2NrczogUmVjb3JkPEJsb2NrVHlwZSwgQmxvY2tJbnRlcmZhY2U+O1xuICAgIGNhdGVnb3J5PzogQmxvY2tDYXRlZ29yeSB8IEN1c3RvbUJsb2NrQ2F0ZWdvcnk7XG4gICAgdmFyaWFudD86IFwic2VsZWN0XCIgfCBcInJhZGlvXCIgfCBcInRvZ2dsZVwiO1xuICAgIGFsbG93RW1wdHk/OiBUO1xufVxuXG5leHBvcnQgY29uc3QgY3JlYXRlT25lT2ZCbG9jayA9IDxUIGV4dGVuZHMgYm9vbGVhbiA9IGJvb2xlYW4+KFxuICAgIHtcbiAgICAgICAgc3VwcG9ydGVkQmxvY2tzLFxuICAgICAgICBuYW1lLFxuICAgICAgICBkaXNwbGF5TmFtZSA9IFwiU3dpdGNoXCIsXG4gICAgICAgIGNhdGVnb3J5ID0gQmxvY2tDYXRlZ29yeS5PdGhlcixcbiAgICAgICAgdmFyaWFudCA9IFwic2VsZWN0XCIsXG4gICAgICAgIGFsbG93RW1wdHk6IHBhc3NlZEFsbG93RW1wdHksXG4gICAgfTogQ3JlYXRlT25lT2ZCbG9ja09wdGlvbnM8VD4sXG4gICAgb3ZlcnJpZGU/OiAoXG4gICAgICAgIGJsb2NrOiBCbG9ja0ludGVyZmFjZTxPbmVPZkJsb2NrRnJhZ21lbnQsIE9uZU9mQmxvY2tTdGF0ZSwgT25lT2ZCbG9ja091dHB1dDxUPiwgT25lT2ZCbG9ja1ByZXZpZXdTdGF0ZT4sXG4gICAgKSA9PiBCbG9ja0ludGVyZmFjZTxPbmVPZkJsb2NrRnJhZ21lbnQsIE9uZU9mQmxvY2tTdGF0ZSwgT25lT2ZCbG9ja091dHB1dDxUPiwgT25lT2ZCbG9ja1ByZXZpZXdTdGF0ZT4sXG4pOiBCbG9ja0ludGVyZmFjZTxPbmVPZkJsb2NrRnJhZ21lbnQsIE9uZU9mQmxvY2tTdGF0ZSwgT25lT2ZCbG9ja091dHB1dDxUPiwgT25lT2ZCbG9ja1ByZXZpZXdTdGF0ZT4gPT4ge1xuICAgIC8vIGFsbG93RW1wdHkgY2FuJ3QgaGF2ZSBhIGRlZmF1bHQgdHlwZSBiZWNhdXNlIGl0J3MgdHlwZWQgYnkgYSBnZW5lcmljXG4gICAgY29uc3QgYWxsb3dFbXB0eSA9IChwYXNzZWRBbGxvd0VtcHR5ID8/IHRydWUpIHNhdGlzZmllcyBib29sZWFuO1xuXG4gICAgZnVuY3Rpb24gYmxvY2tGb3JUeXBlKHR5cGU6IHN0cmluZyk6IEJsb2NrSW50ZXJmYWNlIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiBzdXBwb3J0ZWRCbG9ja3NbdHlwZV0gPz8gbnVsbDtcbiAgICB9XG4gICAgLy8gaGVscGVyIHRvIGdldCBjb21tb24gdmFsdWVzIG9mIHRoZSBzZWxlY3RlZCBibG9jayBieSBTdGF0ZVxuICAgIGZ1bmN0aW9uIGdldEFjdGl2ZUJsb2NrKHM6IE9uZU9mQmxvY2tTdGF0ZSkge1xuICAgICAgICBpZiAoIXMuYWN0aXZlVHlwZSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBzdGF0ZTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIGJsb2NrOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgdHlwZTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBhY3RpdmVCbG9ja1N0YXRlID0gcy5hdHRhY2hlZEJsb2Nrcy5maW5kKChjKSA9PiBjLnR5cGUgPT09IHMuYWN0aXZlVHlwZSk7XG4gICAgICAgIGlmICghYWN0aXZlQmxvY2tTdGF0ZSkge1xuICAgICAgICAgICAgbGV0IG1lc3NhZ2UgPSBgQ2FuJ3QgZmluZCByZWZlcmVuY2UgdG8gYWN0aXZlIGJsb2NrIG9mIHR5cGUgXCIke3MuYWN0aXZlVHlwZX1cIi5gO1xuXG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09IFwiZGV2ZWxvcG1lbnRcIikge1xuICAgICAgICAgICAgICAgIG1lc3NhZ2UgKz0gYCBUaGlzIGlzIHByb2JhYmx5IGR1ZSB0byBhIG1pc3NpbmcgXCJ4LWluY2x1ZGUtaW52aXNpYmxlLWNvbnRlbnRcIiBIVFRQIGhlYWRlci4gUGxlYXNlIG1ha2Ugc3VyZSB0byBpbmNsdWRlIHRoZSBoZWFkZXIgd2hlbiBmZXRjaGluZyB0aGUgYmxvY2suYDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGJsb2NrID0gYWN0aXZlQmxvY2tTdGF0ZSA/IGJsb2NrRm9yVHlwZShhY3RpdmVCbG9ja1N0YXRlLnR5cGUpIDogdW5kZWZpbmVkO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBzdGF0ZTogYWN0aXZlQmxvY2tTdGF0ZSxcbiAgICAgICAgICAgIGJsb2NrLFxuICAgICAgICAgICAgdHlwZTogYWN0aXZlQmxvY2tTdGF0ZS50eXBlLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGNvbnN0IE9uZU9mQmxvY2s6IEJsb2NrSW50ZXJmYWNlPE9uZU9mQmxvY2tGcmFnbWVudCwgT25lT2ZCbG9ja1N0YXRlLCBPbmVPZkJsb2NrT3V0cHV0PFQ+LCBPbmVPZkJsb2NrUHJldmlld1N0YXRlPiA9IHtcbiAgICAgICAgLi4uY3JlYXRlQmxvY2tTa2VsZXRvbigpLFxuXG4gICAgICAgIG5hbWUsXG5cbiAgICAgICAgZGlzcGxheU5hbWUsXG5cbiAgICAgICAgY2F0ZWdvcnksXG5cbiAgICAgICAgZGVmYXVsdFZhbHVlczogKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGFsbG93RW1wdHkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBhdHRhY2hlZEJsb2NrczogW10sXG4gICAgICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGU6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCBbYmxvY2tUeXBlLCBibG9ja10gPSBPYmplY3QuZW50cmllcyhzdXBwb3J0ZWRCbG9ja3MpWzBdO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgYXR0YWNoZWRCbG9ja3M6IFt7IHR5cGU6IGJsb2NrVHlwZSwgcHJvcHM6IGJsb2NrLmRlZmF1bHRWYWx1ZXMoKSB9XSxcbiAgICAgICAgICAgICAgICAgICAgYWN0aXZlVHlwZTogYmxvY2tUeXBlLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG5cbiAgICAgICAgaW5wdXQyU3RhdGU6ICh7IGF0dGFjaGVkQmxvY2tzLCBhY3RpdmVUeXBlLCBibG9jaywgLi4uYWRkaXRpb25hbEZpZWxkcyB9KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzdGF0ZTogT25lT2ZCbG9ja1N0YXRlID0ge1xuICAgICAgICAgICAgICAgIC4uLmFkZGl0aW9uYWxGaWVsZHMsXG4gICAgICAgICAgICAgICAgYXR0YWNoZWRCbG9ja3M6IFtdLFxuICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGU6IGFjdGl2ZVR5cGUgJiYgc3VwcG9ydGVkQmxvY2tzW2FjdGl2ZVR5cGVdID8gYWN0aXZlVHlwZSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBhdHRhY2hlZEJsb2Nrcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGl0ZW0udHlwZSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoIWJsb2NrKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybihgVW5rbm93biBibG9jayB0eXBlIFwiJHtpdGVtLnR5cGV9XCJgKTtcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3RhdGUuYXR0YWNoZWRCbG9ja3MucHVzaCh7IC4uLml0ZW0sIHByb3BzOiBibG9jay5pbnB1dDJTdGF0ZShpdGVtLnByb3BzKSB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgICB9LFxuICAgICAgICBzdGF0ZTJPdXRwdXQ6ICh7IGF0dGFjaGVkQmxvY2tzLCBhY3RpdmVUeXBlLCAuLi5hZGRpdGlvbmFsRmllbGRzIH0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4uYWRkaXRpb25hbEZpZWxkcyxcbiAgICAgICAgICAgICAgICBhdHRhY2hlZEJsb2NrczogYXR0YWNoZWRCbG9ja3MubWFwKChjKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGMudHlwZSk7XG4gICAgICAgICAgICAgICAgICAgIGlmICghYmxvY2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gQmxvY2sgZm91bmQgZm9yIHR5cGUgJHtjLnR5cGV9YCk7IC8vIGZvciBUU1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBjLnR5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9wczogYmxvY2suc3RhdGUyT3V0cHV0KGMucHJvcHMpLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGUsXG4gICAgICAgICAgICB9IGFzIE9uZU9mQmxvY2tPdXRwdXQ8VD47XG4gICAgICAgIH0sXG5cbiAgICAgICAgb3V0cHV0MlN0YXRlOiBhc3luYyAoeyBhdHRhY2hlZEJsb2NrcywgYWN0aXZlVHlwZSwgLi4uYWRkaXRpb25hbEZpZWxkcyB9LCBjb250ZXh0KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzdGF0ZTogT25lT2ZCbG9ja1N0YXRlID0ge1xuICAgICAgICAgICAgICAgIGF0dGFjaGVkQmxvY2tzOiBbXSxcbiAgICAgICAgICAgICAgICBhY3RpdmVUeXBlLFxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGF0dGFjaGVkQmxvY2tzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYmxvY2sgPSBibG9ja0ZvclR5cGUoaXRlbS50eXBlKTtcblxuICAgICAgICAgICAgICAgIGlmICghYmxvY2spIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBCbG9jayBmb3VuZCBmb3IgdHlwZSAke2l0ZW0udHlwZX1gKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzdGF0ZS5hdHRhY2hlZEJsb2Nrcy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICAgICAgICAgICAgcHJvcHM6IGF3YWl0IGJsb2NrLm91dHB1dDJTdGF0ZShpdGVtLnByb3BzLCBjb250ZXh0KSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgICB9LFxuXG4gICAgICAgIGNyZWF0ZVByZXZpZXdTdGF0ZTogKHN0YXRlLCBwcmV2aWV3Q3R4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7IHN0YXRlOiBibG9ja1N0YXRlLCBibG9jayB9ID0gZ2V0QWN0aXZlQmxvY2soc3RhdGUpO1xuICAgICAgICAgICAgY29uc3QgeyBhdHRhY2hlZEJsb2NrcywgYWN0aXZlVHlwZSwgLi4uYWRkaXRpb25hbEZpZWxkcyB9ID0gc3RhdGU7XG5cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4uYWRkaXRpb25hbEZpZWxkcyxcbiAgICAgICAgICAgICAgICBibG9jazogYmxvY2tTdGF0ZVxuICAgICAgICAgICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogYmxvY2tTdGF0ZS50eXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uYmxvY2s/LmNyZWF0ZVByZXZpZXdTdGF0ZShibG9ja1N0YXRlLnByb3BzLCBwcmV2aWV3Q3R4KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkbWluTWV0YTogeyByb3V0ZTogYCR7cHJldmlld0N0eC5wYXJlbnRVcmx9IyR7YmxvY2tTdGF0ZS50eXBlfWAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSxcblxuICAgICAgICBpc1ZhbGlkOiBhc3luYyAoc3RhdGUpID0+XG4gICAgICAgICAgICBwYXJhbGxlbEFzeW5jRXZlcnkoc3RhdGUuYXR0YWNoZWRCbG9ja3MsIGFzeW5jIChjKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgYmxvY2sgPSBibG9ja0ZvclR5cGUoYy50eXBlKTtcbiAgICAgICAgICAgICAgICBpZiAoIWJsb2NrKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gQmxvY2sgZm91bmQgZm9yIHR5cGUgJHtjLnR5cGV9YCk7IC8vIGZvciBUU1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gYmxvY2suaXNWYWxpZChjLnByb3BzKTtcbiAgICAgICAgICAgIH0pLFxuXG4gICAgICAgIGFuY2hvcnM6IChzdGF0ZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBzdGF0ZTogYmxvY2tTdGF0ZSwgYmxvY2sgfSA9IGdldEFjdGl2ZUJsb2NrKHN0YXRlKTtcblxuICAgICAgICAgICAgaWYgKGJsb2NrU3RhdGUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGJsb2NrPy5hbmNob3JzPy4oYmxvY2tTdGF0ZS5wcm9wcykgPz8gW107XG4gICAgICAgIH0sXG5cbiAgICAgICAgZGVwZW5kZW5jaWVzOiAoc3RhdGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHsgc3RhdGU6IGJsb2NrU3RhdGUsIGJsb2NrIH0gPSBnZXRBY3RpdmVCbG9jayhzdGF0ZSk7XG5cbiAgICAgICAgICAgIGlmIChibG9ja1N0YXRlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBibG9jaz8uZGVwZW5kZW5jaWVzPy4oYmxvY2tTdGF0ZS5wcm9wcykgPz8gW107XG4gICAgICAgIH0sXG5cbiAgICAgICAgcmVwbGFjZURlcGVuZGVuY2llc0luT3V0cHV0OiAob3V0cHV0LCByZXBsYWNlbWVudHMpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG5ld091dHB1dDogT25lT2ZCbG9ja091dHB1dDxUPiA9IHsgLi4ub3V0cHV0LCBhdHRhY2hlZEJsb2NrczogW10gfTtcblxuICAgICAgICAgICAgZm9yIChjb25zdCBjIG9mIG91dHB1dC5hdHRhY2hlZEJsb2Nrcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGMudHlwZSk7XG4gICAgICAgICAgICAgICAgaWYgKCFibG9jaykge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIEJsb2NrIGZvdW5kIGZvciB0eXBlICR7Yy50eXBlfWApOyAvLyBmb3IgVFNcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBuZXdPdXRwdXQuYXR0YWNoZWRCbG9ja3MucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgIC4uLmMsXG4gICAgICAgICAgICAgICAgICAgIHByb3BzOiBibG9jay5yZXBsYWNlRGVwZW5kZW5jaWVzSW5PdXRwdXQoYy5wcm9wcywgcmVwbGFjZW1lbnRzKSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIG5ld091dHB1dDtcbiAgICAgICAgfSxcblxuICAgICAgICBkZWZpbmVzT3duUGFkZGluZzogdHJ1ZSxcblxuICAgICAgICBBZG1pbkNvbXBvbmVudDogKHsgc3RhdGUsIHVwZGF0ZVN0YXRlIH0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzSW5QYXBlciA9IHVzZUJsb2NrQWRtaW5Db21wb25lbnRQYXBlcigpO1xuXG4gICAgICAgICAgICBjb25zdCB7IHNjb3BlIH0gPSB1c2VDb250ZW50U2NvcGUoKTtcbiAgICAgICAgICAgIGNvbnN0IHsgaXNCbG9ja1N1cHBvcnRlZCB9ID0gdXNlQmxvY2tzQ29uZmlnKCk7XG5cbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbnMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgZmlsdGVyZWRTdXBwb3J0ZWRCbG9ja3M7XG5cbiAgICAgICAgICAgICAgICBpZiAoaXNCbG9ja1N1cHBvcnRlZCkge1xuICAgICAgICAgICAgICAgICAgICBmaWx0ZXJlZFN1cHBvcnRlZEJsb2NrcyA9IE9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5lbnRyaWVzKHN1cHBvcnRlZEJsb2NrcykuZmlsdGVyKChbLCBibG9ja10pID0+IGlzQmxvY2tTdXBwb3J0ZWQoYmxvY2ssIHNjb3BlKSksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyZWRTdXBwb3J0ZWRCbG9ja3MgPSBzdXBwb3J0ZWRCbG9ja3M7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3Qgb3B0aW9uczogQXJyYXk8eyB2YWx1ZTogc3RyaW5nOyBsYWJlbDogUmVhY3ROb2RlIH0+ID0gYWxsb3dFbXB0eVxuICAgICAgICAgICAgICAgICAgICA/IFt7IHZhbHVlOiBcIm5vbmVcIiwgbGFiZWw6IDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLm9uZU9mQmxvY2suZW1wdHlcIiBkZWZhdWx0TWVzc2FnZT1cIk5vbmVcIiAvPiB9XVxuICAgICAgICAgICAgICAgICAgICA6IFtdO1xuXG4gICAgICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMoZmlsdGVyZWRTdXBwb3J0ZWRCbG9ja3MpLmZvckVhY2goKFtibG9ja1R5cGUsIGJsb2NrXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IGJsb2NrVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBibG9jay5kaXNwbGF5TmFtZSxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gb3B0aW9ucztcbiAgICAgICAgICAgIH0sIFtzY29wZSwgaXNCbG9ja1N1cHBvcnRlZF0pO1xuXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVCbG9ja1NlbGVjdCA9IHVzZUNhbGxiYWNrKFxuICAgICAgICAgICAgICAgIChibG9ja1R5cGU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZSgocHJldlN0YXRlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgbmV3U3RhdGU6IE9uZU9mQmxvY2tTdGF0ZSA9IHByZXZTdGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChibG9ja1R5cGUgPT09IFwibm9uZVwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdW5zZWxlY3QsIG5vIGJsb2NrIHNlbGVjdGVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3U3RhdGUgPSB7IC4uLnByZXZTdGF0ZSwgYWN0aXZlVHlwZTogdW5kZWZpbmVkIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNoZWNrIGlmIHdlIGhhdmUgYSBibG9jayBvZiB0aGUgc2FtZSB0eXBlIGFscmVhZHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXRjaCA9IHByZXZTdGF0ZS5hdHRhY2hlZEJsb2Nrcy5maW5kKChjKSA9PiBjLnR5cGUgPT09IGJsb2NrVHlwZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG1hdGNoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHdlIGhhdmUgYW4gZXhpc3RpbmcgYmxvY2sgd2l0aCBzYW1lIHR5cGUsIHNvIHNlbGVjdCBpdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdTdGF0ZSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLnByZXZTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGU6IGJsb2NrVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB3ZSBoYXZlIG5vIGV4aXN0aW5nIGJsb2NrLCB3ZSBuZWVkIHRvIGNyZWF0ZSBhbmQgc2VsZWN0IGEgbmV3IGJsb2NrXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGJsb2NrVHlwZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYmxvY2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gQmxvY2sgZm91bmQgZm9yIHR5cGUgJHtibG9ja1R5cGV9YCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdJdGVtOiBPbmVPZkJsb2NrSXRlbSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IGJsb2NrVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3BzOiBibG9jay5kZWZhdWx0VmFsdWVzKCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3U3RhdGUgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5wcmV2U3RhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRhY2hlZEJsb2NrczogWy4uLnByZXZTdGF0ZS5hdHRhY2hlZEJsb2NrcywgbmV3SXRlbV0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3RpdmVUeXBlOiBibG9ja1R5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gY2xlYW4gdXAgdGhlIHByZXZpb3VzIHNlbGVjdGVkIGJsb2NrXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB3aGVuIHByZXZpb3VzIGJsb2NrIGhhcyBubyB2YWx1ZXMgKHZhbHVlcyBhcmUgZXF1YWwgdG8gZGVmYXVsdCB2YWx1ZXMpXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGVuIHdlIHJlbW92ZSB0aGUgYmxvY2tcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMgcHJldmVudHMgZnJvbSBzYXZpbmcgcG9zc2libHkgaW52YWxpZCBibG9ja3MgZm9yIGlycmVsZXZhbnQgKG5vdCBzZWxlY3RlZCkgYmxvY2tzXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwcmV2aW91c1NlbGVjdGVkQmxvY2sgPSBnZXRBY3RpdmVCbG9jayhwcmV2U3RhdGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV3U2VsZWN0ZWRCbG9jayA9IGdldEFjdGl2ZUJsb2NrKG5ld1N0YXRlKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHByZXZpb3VzU2VsZWN0ZWRCbG9jay5ibG9jayAmJiBwcmV2aW91c1NlbGVjdGVkQmxvY2suc3RhdGUgJiYgbmV3U2VsZWN0ZWRCbG9jay50eXBlICE9PSBwcmV2aW91c1NlbGVjdGVkQmxvY2sudHlwZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc0VxdWFsKHByZXZpb3VzU2VsZWN0ZWRCbG9jay5ibG9jay5kZWZhdWx0VmFsdWVzKCksIHByZXZpb3VzU2VsZWN0ZWRCbG9jay5zdGF0ZS5wcm9wcykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3U3RhdGUgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5uZXdTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dGFjaGVkQmxvY2tzOiBuZXdTdGF0ZS5hdHRhY2hlZEJsb2Nrcy5maWx0ZXIoKGMpID0+IGMudHlwZSAhPT0gcHJldmlvdXNTZWxlY3RlZEJsb2NrLnN0YXRlLnR5cGUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ld1N0YXRlO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFt1cGRhdGVTdGF0ZV0sXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICBjb25zdCBjcmVhdGVVcGRhdGVTdWJCbG9ja3NGbiA9IHVzZUNhbGxiYWNrKFxuICAgICAgICAgICAgICAgIChibG9ja1R5cGU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICAgICAgICAgICAgICBjb25zdCB1cGRhdGVTdWJCbG9ja3NGbjogRGlzcGF0Y2g8U2V0U3RhdGVBY3Rpb248YW55Pj4gPSAoc2V0U3RhdGVBY3Rpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZVN0YXRlKChwcmV2U3RhdGUpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dGFjaGVkQmxvY2tzOiBwcmV2U3RhdGUuYXR0YWNoZWRCbG9ja3MubWFwKChjKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjLnR5cGUgPT09IGJsb2NrVHlwZSA/IHsgLi4uYywgcHJvcHM6IHJlc29sdmVOZXdTdGF0ZSh7IHByZXZTdGF0ZTogYy5wcm9wcywgc2V0U3RhdGVBY3Rpb24gfSkgfSA6IGMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVwZGF0ZVN1YkJsb2Nrc0ZuO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgW3VwZGF0ZVN0YXRlXSxcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIGNvbnN0IGFjdGl2ZUJsb2NrID0gZ2V0QWN0aXZlQmxvY2soc3RhdGUpO1xuICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWRCbG9ja1R5cGUgPSBhY3RpdmVCbG9jay5ibG9jayA/IGFjdGl2ZUJsb2NrLnN0YXRlLnR5cGUgOiBcIm5vbmVcIjtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8U2VsZWN0UHJldmlld0NvbXBvbmVudD5cbiAgICAgICAgICAgICAgICAgICAgPEhpZGRlbkluU3Vicm91dGU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmdCb3R0b209e2lzSW5QYXBlciA/IDAgOiAzfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tzRmluYWxGb3JtPHsgYmxvY2tUeXBlOiBzdHJpbmcgfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25TdWJtaXQ9eyh7IGJsb2NrVHlwZSB9KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVCbG9ja1NlbGVjdChibG9ja1R5cGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsVmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja1R5cGU6IHNlbGVjdGVkQmxvY2tUeXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3ZhcmlhbnQgPT09IFwic2VsZWN0XCIgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmc9e2lzSW5QYXBlciA/IDMgOiAwfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdEZpZWxkIG5hbWU9XCJibG9ja1R5cGVcIiBvcHRpb25zPXtvcHRpb25zfSBmdWxsV2lkdGggcmVxdWlyZWQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aXNJblBhcGVyICYmIGFjdGl2ZUJsb2NrLmJsb2NrICYmIDxEaXZpZGVyIC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt2YXJpYW50ID09PSBcInJhZGlvXCIgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IGRpc3BsYXk9XCJmbGV4XCIgZmxleERpcmVjdGlvbj1cImNvbHVtblwiIHBhZGRpbmc9ezN9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UmFkaW9Hcm91cEZpZWxkIG5hbWU9XCJibG9ja1R5cGVcIiBmdWxsV2lkdGggb3B0aW9ucz17b3B0aW9uc30gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7YWN0aXZlQmxvY2suYmxvY2sgJiYgPERpdmlkZXIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3ZhcmlhbnQgPT09IFwidG9nZ2xlXCIgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmc9e2lzSW5QYXBlciA/IDMgOiAwfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkIG5hbWU9XCJibG9ja1R5cGVcIiBmdWxsV2lkdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgaW5wdXQ6IHsgdmFsdWUsIG9uQ2hhbmdlIH0gfSkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUb2dnbGVCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17dmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXsoZXZlbnQsIGJsb2NrVHlwZTogc3RyaW5nIHwgbnVsbCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGJsb2NrVHlwZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlKGJsb2NrVHlwZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4Y2x1c2l2ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbnMubWFwKChvcHRpb24pID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUb2dnbGVCdXR0b24gdmFsdWU9e29wdGlvbi52YWx1ZX0ga2V5PXtvcHRpb24udmFsdWV9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtvcHRpb24ubGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1RvZ2dsZUJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Ub2dnbGVCdXR0b25Hcm91cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2lzSW5QYXBlciAmJiBhY3RpdmVCbG9jay5ibG9jayAmJiA8RGl2aWRlciAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tzRmluYWxGb3JtPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgIDwvSGlkZGVuSW5TdWJyb3V0ZT5cbiAgICAgICAgICAgICAgICAgICAge2FjdGl2ZUJsb2NrLmJsb2NrICYmIGFjdGl2ZUJsb2NrLnN0YXRlID8gKFxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBwYWRkaW5nPXtpc0luUGFwZXIgJiYgIWFjdGl2ZUJsb2NrLmJsb2NrLmRlZmluZXNPd25QYWRkaW5nID8gMyA6IDB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxIb3ZlclByZXZpZXdDb21wb25lbnQga2V5PXthY3RpdmVCbG9jay50eXBlfSBjb21wb25lbnRTbHVnPXtgIyR7YWN0aXZlQmxvY2sudHlwZX1gfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFjdGl2ZUJsb2NrLmJsb2NrLkFkbWluQ29tcG9uZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZT17YWN0aXZlQmxvY2suc3RhdGUucHJvcHN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZT17Y3JlYXRlVXBkYXRlU3ViQmxvY2tzRm4oYWN0aXZlQmxvY2suc3RhdGUudHlwZSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Ib3ZlclByZXZpZXdDb21wb25lbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgPC9TZWxlY3RQcmV2aWV3Q29tcG9uZW50PlxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICAgICAgcHJldmlld0NvbnRlbnQ6IChzdGF0ZSwgY3R4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7IGJsb2NrLCBzdGF0ZTogYWN0aXZlQmxvY2tTdGF0ZSB9ID0gZ2V0QWN0aXZlQmxvY2soc3RhdGUpO1xuXG4gICAgICAgICAgICBpZiAoYmxvY2sgJiYgYWN0aXZlQmxvY2tTdGF0ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBibG9jay5wcmV2aWV3Q29udGVudChhY3RpdmVCbG9ja1N0YXRlLnByb3BzLCBjdHgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG5cbiAgICAgICAgZHluYW1pY0Rpc3BsYXlOYW1lOiAoc3RhdGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHsgYmxvY2ssIHN0YXRlOiBibG9ja1N0YXRlIH0gPSBnZXRBY3RpdmVCbG9jayhzdGF0ZSk7XG5cbiAgICAgICAgICAgIGlmIChibG9jayAhPSBudWxsKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGJsb2NrLmR5bmFtaWNEaXNwbGF5TmFtZT8uKGJsb2NrU3RhdGUucHJvcHMpID8/IGJsb2NrLmRpc3BsYXlOYW1lO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZGlzcGxheU5hbWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG5cbiAgICAgICAgZXh0cmFjdFRleHRDb250ZW50czogKHN0YXRlLCBvcHRpb25zKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbmNsdWRlSW52aXNpYmxlQ29udGVudCA9IG9wdGlvbnM/LmluY2x1ZGVJbnZpc2libGVDb250ZW50ID8/IGZhbHNlO1xuXG4gICAgICAgICAgICBjb25zdCBjb250ZW50ID0gc3RhdGUuYXR0YWNoZWRCbG9ja3MucmVkdWNlPHN0cmluZ1tdPigoY29udGVudCwgY2hpbGQpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBibG9jayA9IGJsb2NrRm9yVHlwZShjaGlsZC50eXBlKTtcbiAgICAgICAgICAgICAgICBpZiAoIWJsb2NrKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gQmxvY2sgZm91bmQgZm9yIHR5cGUgJHtjaGlsZC50eXBlfWApOyAvLyBmb3IgVFNcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoY2hpbGQudHlwZSAhPT0gc3RhdGUuYWN0aXZlVHlwZSAmJiAhaW5jbHVkZUludmlzaWJsZUNvbnRlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIFsuLi5jb250ZW50LCAuLi4oYmxvY2suZXh0cmFjdFRleHRDb250ZW50cz8uKGNoaWxkLnByb3BzLCBvcHRpb25zKSA/PyBbXSldO1xuICAgICAgICAgICAgfSwgW10pO1xuICAgICAgICAgICAgcmV0dXJuIGNvbnRlbnQ7XG4gICAgICAgIH0sXG4gICAgfTtcbiAgICBpZiAob3ZlcnJpZGUpIHtcbiAgICAgICAgcmV0dXJuIG92ZXJyaWRlKE9uZU9mQmxvY2spO1xuICAgIH1cbiAgICByZXR1cm4gT25lT2ZCbG9jaztcbn07XG5cbmNvbnN0IFRvZ2dsZUJ1dHRvbkdyb3VwID0gc3R5bGVkKE11aVRvZ2dsZUJ1dHRvbkdyb3VwKWBcbiAgICBkaXNwbGF5OiBmbGV4O1xuYDtcblxuY29uc3QgVG9nZ2xlQnV0dG9uID0gc3R5bGVkKE11aVRvZ2dsZUJ1dHRvbilgXG4gICAgZmxleDogMTtcbiAgICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5wYWxldHRlLnRleHQucHJpbWFyeX07XG5gO1xuIl19 */",
573
575
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
574
576
  });
575
577
  var ToggleButton = /*#__PURE__*/(0, _styles.styled)(_material.ToggleButton, process.env.NODE_ENV === "production" ? {
@@ -580,4 +582,4 @@ var ToggleButton = /*#__PURE__*/(0, _styles.styled)(_material.ToggleButton, proc
580
582
  })("flex:1;color:", function (_ref13) {
581
583
  var theme = _ref13.theme;
582
584
  return theme.palette.text.primary;
583
- }, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ibG9ja3MvZmFjdG9yaWVzL2NyZWF0ZU9uZU9mQmxvY2sudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThlNEMiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL2Jsb2Nrcy9mYWN0b3JpZXMvY3JlYXRlT25lT2ZCbG9jay50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCwgUmFkaW9Hcm91cEZpZWxkLCBTZWxlY3RGaWVsZCB9IGZyb20gXCJAY29tZXQvYWRtaW5cIjtcbmltcG9ydCB7IEJveCwgRGl2aWRlciwgVG9nZ2xlQnV0dG9uIGFzIE11aVRvZ2dsZUJ1dHRvbiwgVG9nZ2xlQnV0dG9uR3JvdXAgYXMgTXVpVG9nZ2xlQnV0dG9uR3JvdXAgfSBmcm9tIFwiQG11aS9tYXRlcmlhbFwiO1xuaW1wb3J0IHsgc3R5bGVkIH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWwvc3R5bGVzXCI7XG5pbXBvcnQgaXNFcXVhbCBmcm9tIFwibG9kYXNoLmlzZXF1YWxcIjtcbmltcG9ydCB7IHR5cGUgRGlzcGF0Y2gsIHR5cGUgUmVhY3ROb2RlLCB0eXBlIFNldFN0YXRlQWN0aW9uLCB1c2VDYWxsYmFjaywgdXNlTWVtbyB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gXCJyZWFjdC1pbnRsXCI7XG5cbmltcG9ydCB7IHVzZUNvbnRlbnRTY29wZSB9IGZyb20gXCIuLi8uLi9jb250ZW50U2NvcGUvUHJvdmlkZXJcIjtcbmltcG9ydCB7IHVzZUJsb2NrQWRtaW5Db21wb25lbnRQYXBlciB9IGZyb20gXCIuLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyXCI7XG5pbXBvcnQgeyBIaWRkZW5JblN1YnJvdXRlIH0gZnJvbSBcIi4uL2NvbW1vbi9IaWRkZW5JblN1YnJvdXRlXCI7XG5pbXBvcnQgeyB1c2VCbG9ja3NDb25maWcgfSBmcm9tIFwiLi4vY29uZmlnL0Jsb2Nrc0NvbmZpZ0NvbnRleHRcIjtcbmltcG9ydCB7IEJsb2Nrc0ZpbmFsRm9ybSB9IGZyb20gXCIuLi9mb3JtL0Jsb2Nrc0ZpbmFsRm9ybVwiO1xuaW1wb3J0IHsgY3JlYXRlQmxvY2tTa2VsZXRvbiB9IGZyb20gXCIuLi9oZWxwZXJzL2NyZWF0ZUJsb2NrU2tlbGV0b25cIjtcbmltcG9ydCB7IEhvdmVyUHJldmlld0NvbXBvbmVudCB9IGZyb20gXCIuLi9pZnJhbWVicmlkZ2UvSG92ZXJQcmV2aWV3Q29tcG9uZW50XCI7XG5pbXBvcnQgeyBTZWxlY3RQcmV2aWV3Q29tcG9uZW50IH0gZnJvbSBcIi4uL2lmcmFtZWJyaWRnZS9TZWxlY3RQcmV2aWV3Q29tcG9uZW50XCI7XG5pbXBvcnQgeyBCbG9ja0NhdGVnb3J5LCB0eXBlIEJsb2NrSW50ZXJmYWNlLCB0eXBlIEJsb2NrUHJldmlld1N0YXRlSW50ZXJmYWNlLCB0eXBlIEJsb2NrU3RhdGUsIHR5cGUgQ3VzdG9tQmxvY2tDYXRlZ29yeSB9IGZyb20gXCIuLi90eXBlc1wiO1xuaW1wb3J0IHsgcmVzb2x2ZU5ld1N0YXRlIH0gZnJvbSBcIi4uL3V0aWxzXCI7XG5pbXBvcnQgeyBwYXJhbGxlbEFzeW5jRXZlcnkgfSBmcm9tIFwiLi4vdXRpbHMvcGFyYWxsZWxBc3luY0V2ZXJ5XCI7XG5cbmludGVyZmFjZSBPbmVPZkJsb2NrSXRlbTxUIGV4dGVuZHMgQmxvY2tJbnRlcmZhY2UgPSBCbG9ja0ludGVyZmFjZT4ge1xuICAgIHR5cGU6IHN0cmluZztcbiAgICBwcm9wczogQmxvY2tTdGF0ZTxUPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPbmVPZkJsb2NrU3RhdGUge1xuICAgIGF0dGFjaGVkQmxvY2tzOiBPbmVPZkJsb2NrSXRlbVtdO1xuICAgIGFjdGl2ZVR5cGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT25lT2ZCbG9ja0ZyYWdtZW50IHtcbiAgICBhdHRhY2hlZEJsb2Nrczoge1xuICAgICAgICB0eXBlOiBzdHJpbmc7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIHByb3BzOiBhbnk7XG4gICAgfVtdO1xuICAgIGFjdGl2ZVR5cGU/OiBzdHJpbmc7XG4gICAgYmxvY2s/OiB7XG4gICAgICAgIHR5cGU6IHN0cmluZztcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgcHJvcHM6IGFueTtcbiAgICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9uZU9mQmxvY2tQcmV2aWV3U3RhdGUgZXh0ZW5kcyBCbG9ja1ByZXZpZXdTdGF0ZUludGVyZmFjZSB7XG4gICAgYmxvY2s/OiB7XG4gICAgICAgIHR5cGU6IHN0cmluZztcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgcHJvcHM6IGFueTtcbiAgICB9O1xufVxuXG50eXBlIEFjdGl2ZVR5cGU8Q29uZmlnIGV4dGVuZHMgYm9vbGVhbj4gPSBDb25maWcgZXh0ZW5kcyBmYWxzZSA/IHsgYWN0aXZlVHlwZTogc3RyaW5nIH0gOiB7IGFjdGl2ZVR5cGU/OiBzdHJpbmcgfTtcblxuZXhwb3J0IHR5cGUgT25lT2ZCbG9ja091dHB1dDxDb25maWcgZXh0ZW5kcyBib29sZWFuPiA9IHtcbiAgICBhdHRhY2hlZEJsb2Nrczoge1xuICAgICAgICB0eXBlOiBzdHJpbmc7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIHByb3BzOiBhbnk7XG4gICAgfVtdO1xufSAmIEFjdGl2ZVR5cGU8Q29uZmlnPjtcblxudHlwZSBCbG9ja1R5cGUgPSBzdHJpbmc7XG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZU9uZU9mQmxvY2tPcHRpb25zPFQgZXh0ZW5kcyBib29sZWFuPiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGRpc3BsYXlOYW1lPzogUmVhY3ROb2RlO1xuICAgIHN1cHBvcnRlZEJsb2NrczogUmVjb3JkPEJsb2NrVHlwZSwgQmxvY2tJbnRlcmZhY2U+O1xuICAgIGNhdGVnb3J5PzogQmxvY2tDYXRlZ29yeSB8IEN1c3RvbUJsb2NrQ2F0ZWdvcnk7XG4gICAgdmFyaWFudD86IFwic2VsZWN0XCIgfCBcInJhZGlvXCIgfCBcInRvZ2dsZVwiO1xuICAgIGFsbG93RW1wdHk/OiBUO1xufVxuXG5leHBvcnQgY29uc3QgY3JlYXRlT25lT2ZCbG9jayA9IDxUIGV4dGVuZHMgYm9vbGVhbiA9IGJvb2xlYW4+KFxuICAgIHtcbiAgICAgICAgc3VwcG9ydGVkQmxvY2tzLFxuICAgICAgICBuYW1lLFxuICAgICAgICBkaXNwbGF5TmFtZSA9IFwiU3dpdGNoXCIsXG4gICAgICAgIGNhdGVnb3J5ID0gQmxvY2tDYXRlZ29yeS5PdGhlcixcbiAgICAgICAgdmFyaWFudCA9IFwic2VsZWN0XCIsXG4gICAgICAgIGFsbG93RW1wdHk6IHBhc3NlZEFsbG93RW1wdHksXG4gICAgfTogQ3JlYXRlT25lT2ZCbG9ja09wdGlvbnM8VD4sXG4gICAgb3ZlcnJpZGU/OiAoXG4gICAgICAgIGJsb2NrOiBCbG9ja0ludGVyZmFjZTxPbmVPZkJsb2NrRnJhZ21lbnQsIE9uZU9mQmxvY2tTdGF0ZSwgT25lT2ZCbG9ja091dHB1dDxUPiwgT25lT2ZCbG9ja1ByZXZpZXdTdGF0ZT4sXG4gICAgKSA9PiBCbG9ja0ludGVyZmFjZTxPbmVPZkJsb2NrRnJhZ21lbnQsIE9uZU9mQmxvY2tTdGF0ZSwgT25lT2ZCbG9ja091dHB1dDxUPiwgT25lT2ZCbG9ja1ByZXZpZXdTdGF0ZT4sXG4pOiBCbG9ja0ludGVyZmFjZTxPbmVPZkJsb2NrRnJhZ21lbnQsIE9uZU9mQmxvY2tTdGF0ZSwgT25lT2ZCbG9ja091dHB1dDxUPiwgT25lT2ZCbG9ja1ByZXZpZXdTdGF0ZT4gPT4ge1xuICAgIC8vIGFsbG93RW1wdHkgY2FuJ3QgaGF2ZSBhIGRlZmF1bHQgdHlwZSBiZWNhdXNlIGl0J3MgdHlwZWQgYnkgYSBnZW5lcmljXG4gICAgY29uc3QgYWxsb3dFbXB0eSA9IChwYXNzZWRBbGxvd0VtcHR5ID8/IHRydWUpIHNhdGlzZmllcyBib29sZWFuO1xuXG4gICAgZnVuY3Rpb24gYmxvY2tGb3JUeXBlKHR5cGU6IHN0cmluZyk6IEJsb2NrSW50ZXJmYWNlIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiBzdXBwb3J0ZWRCbG9ja3NbdHlwZV0gPz8gbnVsbDtcbiAgICB9XG4gICAgLy8gaGVscGVyIHRvIGdldCBjb21tb24gdmFsdWVzIG9mIHRoZSBzZWxlY3RlZCBibG9jayBieSBTdGF0ZVxuICAgIGZ1bmN0aW9uIGdldEFjdGl2ZUJsb2NrKHM6IE9uZU9mQmxvY2tTdGF0ZSkge1xuICAgICAgICBpZiAoIXMuYWN0aXZlVHlwZSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBzdGF0ZTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIGJsb2NrOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgdHlwZTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBhY3RpdmVCbG9ja1N0YXRlID0gcy5hdHRhY2hlZEJsb2Nrcy5maW5kKChjKSA9PiBjLnR5cGUgPT09IHMuYWN0aXZlVHlwZSk7XG4gICAgICAgIGlmICghYWN0aXZlQmxvY2tTdGF0ZSkge1xuICAgICAgICAgICAgbGV0IG1lc3NhZ2UgPSBgQ2FuJ3QgZmluZCByZWZlcmVuY2UgdG8gYWN0aXZlIGJsb2NrIG9mIHR5cGUgXCIke3MuYWN0aXZlVHlwZX1cIi5gO1xuXG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09IFwiZGV2ZWxvcG1lbnRcIikge1xuICAgICAgICAgICAgICAgIG1lc3NhZ2UgKz0gYCBUaGlzIGlzIHByb2JhYmx5IGR1ZSB0byBhIG1pc3NpbmcgXCJ4LWluY2x1ZGUtaW52aXNpYmxlLWNvbnRlbnRcIiBIVFRQIGhlYWRlci4gUGxlYXNlIG1ha2Ugc3VyZSB0byBpbmNsdWRlIHRoZSBoZWFkZXIgd2hlbiBmZXRjaGluZyB0aGUgYmxvY2suYDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGJsb2NrID0gYWN0aXZlQmxvY2tTdGF0ZSA/IGJsb2NrRm9yVHlwZShhY3RpdmVCbG9ja1N0YXRlLnR5cGUpIDogdW5kZWZpbmVkO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBzdGF0ZTogYWN0aXZlQmxvY2tTdGF0ZSxcbiAgICAgICAgICAgIGJsb2NrLFxuICAgICAgICAgICAgdHlwZTogYWN0aXZlQmxvY2tTdGF0ZS50eXBlLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGNvbnN0IE9uZU9mQmxvY2s6IEJsb2NrSW50ZXJmYWNlPE9uZU9mQmxvY2tGcmFnbWVudCwgT25lT2ZCbG9ja1N0YXRlLCBPbmVPZkJsb2NrT3V0cHV0PFQ+LCBPbmVPZkJsb2NrUHJldmlld1N0YXRlPiA9IHtcbiAgICAgICAgLi4uY3JlYXRlQmxvY2tTa2VsZXRvbigpLFxuXG4gICAgICAgIG5hbWUsXG5cbiAgICAgICAgZGlzcGxheU5hbWUsXG5cbiAgICAgICAgY2F0ZWdvcnksXG5cbiAgICAgICAgZGVmYXVsdFZhbHVlczogKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGFsbG93RW1wdHkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBhdHRhY2hlZEJsb2NrczogW10sXG4gICAgICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGU6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCBbYmxvY2tUeXBlLCBibG9ja10gPSBPYmplY3QuZW50cmllcyhzdXBwb3J0ZWRCbG9ja3MpWzBdO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgYXR0YWNoZWRCbG9ja3M6IFt7IHR5cGU6IGJsb2NrVHlwZSwgcHJvcHM6IGJsb2NrLmRlZmF1bHRWYWx1ZXMoKSB9XSxcbiAgICAgICAgICAgICAgICAgICAgYWN0aXZlVHlwZTogYmxvY2tUeXBlLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG5cbiAgICAgICAgaW5wdXQyU3RhdGU6ICh7IGF0dGFjaGVkQmxvY2tzLCBhY3RpdmVUeXBlLCBibG9jaywgLi4uYWRkaXRpb25hbEZpZWxkcyB9KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzdGF0ZTogT25lT2ZCbG9ja1N0YXRlID0ge1xuICAgICAgICAgICAgICAgIC4uLmFkZGl0aW9uYWxGaWVsZHMsXG4gICAgICAgICAgICAgICAgYXR0YWNoZWRCbG9ja3M6IFtdLFxuICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGU6IGFjdGl2ZVR5cGUgJiYgc3VwcG9ydGVkQmxvY2tzW2FjdGl2ZVR5cGVdID8gYWN0aXZlVHlwZSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBhdHRhY2hlZEJsb2Nrcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGl0ZW0udHlwZSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoIWJsb2NrKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybihgVW5rbm93biBibG9jayB0eXBlIFwiJHtpdGVtLnR5cGV9XCJgKTtcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3RhdGUuYXR0YWNoZWRCbG9ja3MucHVzaCh7IC4uLml0ZW0sIHByb3BzOiBibG9jay5pbnB1dDJTdGF0ZShpdGVtLnByb3BzKSB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgICB9LFxuICAgICAgICBzdGF0ZTJPdXRwdXQ6ICh7IGF0dGFjaGVkQmxvY2tzLCBhY3RpdmVUeXBlLCAuLi5hZGRpdGlvbmFsRmllbGRzIH0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4uYWRkaXRpb25hbEZpZWxkcyxcbiAgICAgICAgICAgICAgICBhdHRhY2hlZEJsb2NrczogYXR0YWNoZWRCbG9ja3MubWFwKChjKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGMudHlwZSk7XG4gICAgICAgICAgICAgICAgICAgIGlmICghYmxvY2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gQmxvY2sgZm91bmQgZm9yIHR5cGUgJHtjLnR5cGV9YCk7IC8vIGZvciBUU1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBjLnR5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9wczogYmxvY2suc3RhdGUyT3V0cHV0KGMucHJvcHMpLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGUsXG4gICAgICAgICAgICB9IGFzIE9uZU9mQmxvY2tPdXRwdXQ8VD47XG4gICAgICAgIH0sXG5cbiAgICAgICAgb3V0cHV0MlN0YXRlOiBhc3luYyAoeyBhdHRhY2hlZEJsb2NrcywgYWN0aXZlVHlwZSwgLi4uYWRkaXRpb25hbEZpZWxkcyB9LCBjb250ZXh0KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzdGF0ZTogT25lT2ZCbG9ja1N0YXRlID0ge1xuICAgICAgICAgICAgICAgIGF0dGFjaGVkQmxvY2tzOiBbXSxcbiAgICAgICAgICAgICAgICBhY3RpdmVUeXBlLFxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGF0dGFjaGVkQmxvY2tzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYmxvY2sgPSBibG9ja0ZvclR5cGUoaXRlbS50eXBlKTtcblxuICAgICAgICAgICAgICAgIGlmICghYmxvY2spIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBCbG9jayBmb3VuZCBmb3IgdHlwZSAke2l0ZW0udHlwZX1gKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzdGF0ZS5hdHRhY2hlZEJsb2Nrcy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICAgICAgICAgICAgcHJvcHM6IGF3YWl0IGJsb2NrLm91dHB1dDJTdGF0ZShpdGVtLnByb3BzLCBjb250ZXh0KSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgICB9LFxuXG4gICAgICAgIGNyZWF0ZVByZXZpZXdTdGF0ZTogKHN0YXRlLCBwcmV2aWV3Q3R4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7IHN0YXRlOiBibG9ja1N0YXRlLCBibG9jayB9ID0gZ2V0QWN0aXZlQmxvY2soc3RhdGUpO1xuICAgICAgICAgICAgY29uc3QgeyBhdHRhY2hlZEJsb2NrcywgYWN0aXZlVHlwZSwgLi4uYWRkaXRpb25hbEZpZWxkcyB9ID0gc3RhdGU7XG5cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4uYWRkaXRpb25hbEZpZWxkcyxcbiAgICAgICAgICAgICAgICBibG9jazogYmxvY2tTdGF0ZVxuICAgICAgICAgICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogYmxvY2tTdGF0ZS50eXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uYmxvY2s/LmNyZWF0ZVByZXZpZXdTdGF0ZShibG9ja1N0YXRlLnByb3BzLCBwcmV2aWV3Q3R4KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkbWluTWV0YTogeyByb3V0ZTogYCR7cHJldmlld0N0eC5wYXJlbnRVcmx9IyR7YmxvY2tTdGF0ZS50eXBlfWAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSxcblxuICAgICAgICBpc1ZhbGlkOiBhc3luYyAoc3RhdGUpID0+XG4gICAgICAgICAgICBwYXJhbGxlbEFzeW5jRXZlcnkoc3RhdGUuYXR0YWNoZWRCbG9ja3MsIGFzeW5jIChjKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgYmxvY2sgPSBibG9ja0ZvclR5cGUoYy50eXBlKTtcbiAgICAgICAgICAgICAgICBpZiAoIWJsb2NrKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gQmxvY2sgZm91bmQgZm9yIHR5cGUgJHtjLnR5cGV9YCk7IC8vIGZvciBUU1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gYmxvY2suaXNWYWxpZChjLnByb3BzKTtcbiAgICAgICAgICAgIH0pLFxuXG4gICAgICAgIGFuY2hvcnM6IChzdGF0ZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBzdGF0ZTogYmxvY2tTdGF0ZSwgYmxvY2sgfSA9IGdldEFjdGl2ZUJsb2NrKHN0YXRlKTtcblxuICAgICAgICAgICAgaWYgKGJsb2NrU3RhdGUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGJsb2NrPy5hbmNob3JzPy4oYmxvY2tTdGF0ZS5wcm9wcykgPz8gW107XG4gICAgICAgIH0sXG5cbiAgICAgICAgZGVwZW5kZW5jaWVzOiAoc3RhdGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHsgc3RhdGU6IGJsb2NrU3RhdGUsIGJsb2NrIH0gPSBnZXRBY3RpdmVCbG9jayhzdGF0ZSk7XG5cbiAgICAgICAgICAgIGlmIChibG9ja1N0YXRlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBibG9jaz8uZGVwZW5kZW5jaWVzPy4oYmxvY2tTdGF0ZS5wcm9wcykgPz8gW107XG4gICAgICAgIH0sXG5cbiAgICAgICAgcmVwbGFjZURlcGVuZGVuY2llc0luT3V0cHV0OiAob3V0cHV0LCByZXBsYWNlbWVudHMpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG5ld091dHB1dDogT25lT2ZCbG9ja091dHB1dDxUPiA9IHsgLi4ub3V0cHV0LCBhdHRhY2hlZEJsb2NrczogW10gfTtcblxuICAgICAgICAgICAgZm9yIChjb25zdCBjIG9mIG91dHB1dC5hdHRhY2hlZEJsb2Nrcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGMudHlwZSk7XG4gICAgICAgICAgICAgICAgaWYgKCFibG9jaykge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIEJsb2NrIGZvdW5kIGZvciB0eXBlICR7Yy50eXBlfWApOyAvLyBmb3IgVFNcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBuZXdPdXRwdXQuYXR0YWNoZWRCbG9ja3MucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgIC4uLmMsXG4gICAgICAgICAgICAgICAgICAgIHByb3BzOiBibG9jay5yZXBsYWNlRGVwZW5kZW5jaWVzSW5PdXRwdXQoYy5wcm9wcywgcmVwbGFjZW1lbnRzKSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIG5ld091dHB1dDtcbiAgICAgICAgfSxcblxuICAgICAgICBkZWZpbmVzT3duUGFkZGluZzogdHJ1ZSxcblxuICAgICAgICBBZG1pbkNvbXBvbmVudDogKHsgc3RhdGUsIHVwZGF0ZVN0YXRlIH0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzSW5QYXBlciA9IHVzZUJsb2NrQWRtaW5Db21wb25lbnRQYXBlcigpO1xuXG4gICAgICAgICAgICBjb25zdCB7IHNjb3BlIH0gPSB1c2VDb250ZW50U2NvcGUoKTtcbiAgICAgICAgICAgIGNvbnN0IHsgaXNCbG9ja1N1cHBvcnRlZCB9ID0gdXNlQmxvY2tzQ29uZmlnKCk7XG5cbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbnMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgZmlsdGVyZWRTdXBwb3J0ZWRCbG9ja3M7XG5cbiAgICAgICAgICAgICAgICBpZiAoaXNCbG9ja1N1cHBvcnRlZCkge1xuICAgICAgICAgICAgICAgICAgICBmaWx0ZXJlZFN1cHBvcnRlZEJsb2NrcyA9IE9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5lbnRyaWVzKHN1cHBvcnRlZEJsb2NrcykuZmlsdGVyKChbLCBibG9ja10pID0+IGlzQmxvY2tTdXBwb3J0ZWQoYmxvY2ssIHNjb3BlKSksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyZWRTdXBwb3J0ZWRCbG9ja3MgPSBzdXBwb3J0ZWRCbG9ja3M7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3Qgb3B0aW9uczogQXJyYXk8eyB2YWx1ZTogc3RyaW5nOyBsYWJlbDogUmVhY3ROb2RlIH0+ID0gYWxsb3dFbXB0eVxuICAgICAgICAgICAgICAgICAgICA/IFt7IHZhbHVlOiBcIm5vbmVcIiwgbGFiZWw6IDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLm9uZU9mQmxvY2suZW1wdHlcIiBkZWZhdWx0TWVzc2FnZT1cIk5vbmVcIiAvPiB9XVxuICAgICAgICAgICAgICAgICAgICA6IFtdO1xuXG4gICAgICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMoZmlsdGVyZWRTdXBwb3J0ZWRCbG9ja3MpLmZvckVhY2goKFtibG9ja1R5cGUsIGJsb2NrXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IGJsb2NrVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBibG9jay5kaXNwbGF5TmFtZSxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gb3B0aW9ucztcbiAgICAgICAgICAgIH0sIFtzY29wZSwgaXNCbG9ja1N1cHBvcnRlZF0pO1xuXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVCbG9ja1NlbGVjdCA9IHVzZUNhbGxiYWNrKFxuICAgICAgICAgICAgICAgIChibG9ja1R5cGU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZSgocHJldlN0YXRlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgbmV3U3RhdGU6IE9uZU9mQmxvY2tTdGF0ZSA9IHByZXZTdGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChibG9ja1R5cGUgPT09IFwibm9uZVwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdW5zZWxlY3QsIG5vIGJsb2NrIHNlbGVjdGVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3U3RhdGUgPSB7IC4uLnByZXZTdGF0ZSwgYWN0aXZlVHlwZTogdW5kZWZpbmVkIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNoZWNrIGlmIHdlIGhhdmUgYSBibG9jayBvZiB0aGUgc2FtZSB0eXBlIGFscmVhZHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXRjaCA9IHByZXZTdGF0ZS5hdHRhY2hlZEJsb2Nrcy5maW5kKChjKSA9PiBjLnR5cGUgPT09IGJsb2NrVHlwZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG1hdGNoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHdlIGhhdmUgYW4gZXhpc3RpbmcgYmxvY2sgd2l0aCBzYW1lIHR5cGUsIHNvIHNlbGVjdCBpdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdTdGF0ZSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLnByZXZTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGU6IGJsb2NrVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB3ZSBoYXZlIG5vIGV4aXN0aW5nIGJsb2NrLCB3ZSBuZWVkIHRvIGNyZWF0ZSBhbmQgc2VsZWN0IGEgbmV3IGJsb2NrXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGJsb2NrVHlwZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYmxvY2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gQmxvY2sgZm91bmQgZm9yIHR5cGUgJHtibG9ja1R5cGV9YCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdJdGVtOiBPbmVPZkJsb2NrSXRlbSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IGJsb2NrVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3BzOiBibG9jay5kZWZhdWx0VmFsdWVzKCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3U3RhdGUgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5wcmV2U3RhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRhY2hlZEJsb2NrczogWy4uLnByZXZTdGF0ZS5hdHRhY2hlZEJsb2NrcywgbmV3SXRlbV0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3RpdmVUeXBlOiBibG9ja1R5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gY2xlYW4gdXAgdGhlIHByZXZpb3VzIHNlbGVjdGVkIGJsb2NrXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB3aGVuIHByZXZpb3VzIGJsb2NrIGhhcyBubyB2YWx1ZXMgKHZhbHVlcyBhcmUgZXF1YWwgdG8gZGVmYXVsdCB2YWx1ZXMpXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGVuIHdlIHJlbW92ZSB0aGUgYmxvY2tcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMgcHJldmVudHMgZnJvbSBzYXZpbmcgcG9zc2libHkgaW52YWxpZCBibG9ja3MgZm9yIGlycmVsZXZhbnQgKG5vdCBzZWxlY3RlZCkgYmxvY2tzXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwcmV2aW91c1NlbGVjdGVkQmxvY2sgPSBnZXRBY3RpdmVCbG9jayhwcmV2U3RhdGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV3U2VsZWN0ZWRCbG9jayA9IGdldEFjdGl2ZUJsb2NrKG5ld1N0YXRlKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHByZXZpb3VzU2VsZWN0ZWRCbG9jay5ibG9jayAmJiBwcmV2aW91c1NlbGVjdGVkQmxvY2suc3RhdGUgJiYgbmV3U2VsZWN0ZWRCbG9jay50eXBlICE9PSBwcmV2aW91c1NlbGVjdGVkQmxvY2sudHlwZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc0VxdWFsKHByZXZpb3VzU2VsZWN0ZWRCbG9jay5ibG9jay5kZWZhdWx0VmFsdWVzKCksIHByZXZpb3VzU2VsZWN0ZWRCbG9jay5zdGF0ZS5wcm9wcykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3U3RhdGUgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5uZXdTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dGFjaGVkQmxvY2tzOiBuZXdTdGF0ZS5hdHRhY2hlZEJsb2Nrcy5maWx0ZXIoKGMpID0+IGMudHlwZSAhPT0gcHJldmlvdXNTZWxlY3RlZEJsb2NrLnN0YXRlLnR5cGUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ld1N0YXRlO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFt1cGRhdGVTdGF0ZV0sXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICBjb25zdCBjcmVhdGVVcGRhdGVTdWJCbG9ja3NGbiA9IHVzZUNhbGxiYWNrKFxuICAgICAgICAgICAgICAgIChibG9ja1R5cGU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICAgICAgICAgICAgICBjb25zdCB1cGRhdGVTdWJCbG9ja3NGbjogRGlzcGF0Y2g8U2V0U3RhdGVBY3Rpb248YW55Pj4gPSAoc2V0U3RhdGVBY3Rpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZVN0YXRlKChwcmV2U3RhdGUpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dGFjaGVkQmxvY2tzOiBwcmV2U3RhdGUuYXR0YWNoZWRCbG9ja3MubWFwKChjKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjLnR5cGUgPT09IGJsb2NrVHlwZSA/IHsgLi4uYywgcHJvcHM6IHJlc29sdmVOZXdTdGF0ZSh7IHByZXZTdGF0ZTogYy5wcm9wcywgc2V0U3RhdGVBY3Rpb24gfSkgfSA6IGMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVwZGF0ZVN1YkJsb2Nrc0ZuO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgW3VwZGF0ZVN0YXRlXSxcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIGNvbnN0IGFjdGl2ZUJsb2NrID0gZ2V0QWN0aXZlQmxvY2soc3RhdGUpO1xuICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWRCbG9ja1R5cGUgPSBhY3RpdmVCbG9jay5ibG9jayA/IGFjdGl2ZUJsb2NrLnN0YXRlLnR5cGUgOiBcIm5vbmVcIjtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8U2VsZWN0UHJldmlld0NvbXBvbmVudD5cbiAgICAgICAgICAgICAgICAgICAgPEhpZGRlbkluU3Vicm91dGU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmdCb3R0b209e2lzSW5QYXBlciA/IDAgOiAzfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tzRmluYWxGb3JtPHsgYmxvY2tUeXBlOiBzdHJpbmcgfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25TdWJtaXQ9eyh7IGJsb2NrVHlwZSB9KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVCbG9ja1NlbGVjdChibG9ja1R5cGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsVmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja1R5cGU6IHNlbGVjdGVkQmxvY2tUeXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3ZhcmlhbnQgPT09IFwic2VsZWN0XCIgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmc9e2lzSW5QYXBlciA/IDMgOiAwfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdEZpZWxkIG5hbWU9XCJibG9ja1R5cGVcIiBvcHRpb25zPXtvcHRpb25zfSBmdWxsV2lkdGggcmVxdWlyZWQ9eyFhbGxvd0VtcHR5fSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpc0luUGFwZXIgJiYgYWN0aXZlQmxvY2suYmxvY2sgJiYgPERpdmlkZXIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3ZhcmlhbnQgPT09IFwicmFkaW9cIiAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggZGlzcGxheT1cImZsZXhcIiBmbGV4RGlyZWN0aW9uPVwiY29sdW1uXCIgcGFkZGluZz17M30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxSYWRpb0dyb3VwRmllbGQgbmFtZT1cImJsb2NrVHlwZVwiIGZ1bGxXaWR0aCBvcHRpb25zPXtvcHRpb25zfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHthY3RpdmVCbG9jay5ibG9jayAmJiA8RGl2aWRlciAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7dmFyaWFudCA9PT0gXCJ0b2dnbGVcIiAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggcGFkZGluZz17aXNJblBhcGVyID8gMyA6IDB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGQgbmFtZT1cImJsb2NrVHlwZVwiIGZ1bGxXaWR0aD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsoeyBpbnB1dDogeyB2YWx1ZSwgb25DaGFuZ2UgfSB9KSA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRvZ2dsZUJ1dHRvbkdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXt2YWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9eyhldmVudCwgYmxvY2tUeXBlOiBzdHJpbmcgfCBudWxsKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoYmxvY2tUeXBlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2UoYmxvY2tUeXBlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhjbHVzaXZlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7b3B0aW9ucy5tYXAoKG9wdGlvbikgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRvZ2dsZUJ1dHRvbiB2YWx1ZT17b3B0aW9uLnZhbHVlfSBrZXk9e29wdGlvbi52YWx1ZX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVG9nZ2xlQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1RvZ2dsZUJ1dHRvbkdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9GaWVsZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aXNJblBhcGVyICYmIGFjdGl2ZUJsb2NrLmJsb2NrICYmIDxEaXZpZGVyIC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CbG9ja3NGaW5hbEZvcm0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgPC9IaWRkZW5JblN1YnJvdXRlPlxuICAgICAgICAgICAgICAgICAgICB7YWN0aXZlQmxvY2suYmxvY2sgJiYgYWN0aXZlQmxvY2suc3RhdGUgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmc9e2lzSW5QYXBlciAmJiAhYWN0aXZlQmxvY2suYmxvY2suZGVmaW5lc093blBhZGRpbmcgPyAzIDogMH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEhvdmVyUHJldmlld0NvbXBvbmVudCBrZXk9e2FjdGl2ZUJsb2NrLnR5cGV9IGNvbXBvbmVudFNsdWc9e2AjJHthY3RpdmVCbG9jay50eXBlfWB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aXZlQmxvY2suYmxvY2suQWRtaW5Db21wb25lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlPXthY3RpdmVCbG9jay5zdGF0ZS5wcm9wc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZVN0YXRlPXtjcmVhdGVVcGRhdGVTdWJCbG9ja3NGbihhY3RpdmVCbG9jay5zdGF0ZS50eXBlKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0hvdmVyUHJldmlld0NvbXBvbmVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgICA8L1NlbGVjdFByZXZpZXdDb21wb25lbnQ+XG4gICAgICAgICAgICApO1xuICAgICAgICB9LFxuICAgICAgICBwcmV2aWV3Q29udGVudDogKHN0YXRlLCBjdHgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHsgYmxvY2ssIHN0YXRlOiBhY3RpdmVCbG9ja1N0YXRlIH0gPSBnZXRBY3RpdmVCbG9jayhzdGF0ZSk7XG5cbiAgICAgICAgICAgIGlmIChibG9jayAmJiBhY3RpdmVCbG9ja1N0YXRlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGJsb2NrLnByZXZpZXdDb250ZW50KGFjdGl2ZUJsb2NrU3RhdGUucHJvcHMsIGN0eCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcblxuICAgICAgICBkeW5hbWljRGlzcGxheU5hbWU6IChzdGF0ZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBibG9jayB9ID0gZ2V0QWN0aXZlQmxvY2soc3RhdGUpO1xuXG4gICAgICAgICAgICBpZiAoYmxvY2sgIT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBibG9jay5kaXNwbGF5TmFtZTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRpc3BsYXlOYW1lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuXG4gICAgICAgIGV4dHJhY3RUZXh0Q29udGVudHM6IChzdGF0ZSwgb3B0aW9ucykgPT4ge1xuICAgICAgICAgICAgY29uc3QgaW5jbHVkZUludmlzaWJsZUNvbnRlbnQgPSBvcHRpb25zPy5pbmNsdWRlSW52aXNpYmxlQ29udGVudCA/PyBmYWxzZTtcblxuICAgICAgICAgICAgY29uc3QgY29udGVudCA9IHN0YXRlLmF0dGFjaGVkQmxvY2tzLnJlZHVjZTxzdHJpbmdbXT4oKGNvbnRlbnQsIGNoaWxkKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgYmxvY2sgPSBibG9ja0ZvclR5cGUoY2hpbGQudHlwZSk7XG4gICAgICAgICAgICAgICAgaWYgKCFibG9jaykge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIEJsb2NrIGZvdW5kIGZvciB0eXBlICR7Y2hpbGQudHlwZX1gKTsgLy8gZm9yIFRTXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKGNoaWxkLnR5cGUgIT09IHN0YXRlLmFjdGl2ZVR5cGUgJiYgIWluY2x1ZGVJbnZpc2libGVDb250ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBjb250ZW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiBbLi4uY29udGVudCwgLi4uKGJsb2NrLmV4dHJhY3RUZXh0Q29udGVudHM/LihjaGlsZC5wcm9wcywgb3B0aW9ucykgPz8gW10pXTtcbiAgICAgICAgICAgIH0sIFtdKTtcbiAgICAgICAgICAgIHJldHVybiBjb250ZW50O1xuICAgICAgICB9LFxuICAgIH07XG4gICAgaWYgKG92ZXJyaWRlKSB7XG4gICAgICAgIHJldHVybiBvdmVycmlkZShPbmVPZkJsb2NrKTtcbiAgICB9XG4gICAgcmV0dXJuIE9uZU9mQmxvY2s7XG59O1xuXG5jb25zdCBUb2dnbGVCdXR0b25Hcm91cCA9IHN0eWxlZChNdWlUb2dnbGVCdXR0b25Hcm91cClgXG4gICAgZGlzcGxheTogZmxleDtcbmA7XG5cbmNvbnN0IFRvZ2dsZUJ1dHRvbiA9IHN0eWxlZChNdWlUb2dnbGVCdXR0b24pYFxuICAgIGZsZXg6IDE7XG4gICAgY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUucGFsZXR0ZS50ZXh0LnByaW1hcnl9O1xuYDtcbiJdfQ== */"));
585
+ }, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ibG9ja3MvZmFjdG9yaWVzL2NyZWF0ZU9uZU9mQmxvY2sudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThlNEMiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL2Jsb2Nrcy9mYWN0b3JpZXMvY3JlYXRlT25lT2ZCbG9jay50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCwgUmFkaW9Hcm91cEZpZWxkLCBTZWxlY3RGaWVsZCB9IGZyb20gXCJAY29tZXQvYWRtaW5cIjtcbmltcG9ydCB7IEJveCwgRGl2aWRlciwgVG9nZ2xlQnV0dG9uIGFzIE11aVRvZ2dsZUJ1dHRvbiwgVG9nZ2xlQnV0dG9uR3JvdXAgYXMgTXVpVG9nZ2xlQnV0dG9uR3JvdXAgfSBmcm9tIFwiQG11aS9tYXRlcmlhbFwiO1xuaW1wb3J0IHsgc3R5bGVkIH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWwvc3R5bGVzXCI7XG5pbXBvcnQgaXNFcXVhbCBmcm9tIFwibG9kYXNoLmlzZXF1YWxcIjtcbmltcG9ydCB7IHR5cGUgRGlzcGF0Y2gsIHR5cGUgUmVhY3ROb2RlLCB0eXBlIFNldFN0YXRlQWN0aW9uLCB1c2VDYWxsYmFjaywgdXNlTWVtbyB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gXCJyZWFjdC1pbnRsXCI7XG5cbmltcG9ydCB7IHVzZUNvbnRlbnRTY29wZSB9IGZyb20gXCIuLi8uLi9jb250ZW50U2NvcGUvUHJvdmlkZXJcIjtcbmltcG9ydCB7IHVzZUJsb2NrQWRtaW5Db21wb25lbnRQYXBlciB9IGZyb20gXCIuLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyXCI7XG5pbXBvcnQgeyBIaWRkZW5JblN1YnJvdXRlIH0gZnJvbSBcIi4uL2NvbW1vbi9IaWRkZW5JblN1YnJvdXRlXCI7XG5pbXBvcnQgeyB1c2VCbG9ja3NDb25maWcgfSBmcm9tIFwiLi4vY29uZmlnL0Jsb2Nrc0NvbmZpZ0NvbnRleHRcIjtcbmltcG9ydCB7IEJsb2Nrc0ZpbmFsRm9ybSB9IGZyb20gXCIuLi9mb3JtL0Jsb2Nrc0ZpbmFsRm9ybVwiO1xuaW1wb3J0IHsgY3JlYXRlQmxvY2tTa2VsZXRvbiB9IGZyb20gXCIuLi9oZWxwZXJzL2NyZWF0ZUJsb2NrU2tlbGV0b25cIjtcbmltcG9ydCB7IEhvdmVyUHJldmlld0NvbXBvbmVudCB9IGZyb20gXCIuLi9pZnJhbWVicmlkZ2UvSG92ZXJQcmV2aWV3Q29tcG9uZW50XCI7XG5pbXBvcnQgeyBTZWxlY3RQcmV2aWV3Q29tcG9uZW50IH0gZnJvbSBcIi4uL2lmcmFtZWJyaWRnZS9TZWxlY3RQcmV2aWV3Q29tcG9uZW50XCI7XG5pbXBvcnQgeyBCbG9ja0NhdGVnb3J5LCB0eXBlIEJsb2NrSW50ZXJmYWNlLCB0eXBlIEJsb2NrUHJldmlld1N0YXRlSW50ZXJmYWNlLCB0eXBlIEJsb2NrU3RhdGUsIHR5cGUgQ3VzdG9tQmxvY2tDYXRlZ29yeSB9IGZyb20gXCIuLi90eXBlc1wiO1xuaW1wb3J0IHsgcmVzb2x2ZU5ld1N0YXRlIH0gZnJvbSBcIi4uL3V0aWxzXCI7XG5pbXBvcnQgeyBwYXJhbGxlbEFzeW5jRXZlcnkgfSBmcm9tIFwiLi4vdXRpbHMvcGFyYWxsZWxBc3luY0V2ZXJ5XCI7XG5cbmludGVyZmFjZSBPbmVPZkJsb2NrSXRlbTxUIGV4dGVuZHMgQmxvY2tJbnRlcmZhY2UgPSBCbG9ja0ludGVyZmFjZT4ge1xuICAgIHR5cGU6IHN0cmluZztcbiAgICBwcm9wczogQmxvY2tTdGF0ZTxUPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPbmVPZkJsb2NrU3RhdGUge1xuICAgIGF0dGFjaGVkQmxvY2tzOiBPbmVPZkJsb2NrSXRlbVtdO1xuICAgIGFjdGl2ZVR5cGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT25lT2ZCbG9ja0ZyYWdtZW50IHtcbiAgICBhdHRhY2hlZEJsb2Nrczoge1xuICAgICAgICB0eXBlOiBzdHJpbmc7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIHByb3BzOiBhbnk7XG4gICAgfVtdO1xuICAgIGFjdGl2ZVR5cGU/OiBzdHJpbmc7XG4gICAgYmxvY2s/OiB7XG4gICAgICAgIHR5cGU6IHN0cmluZztcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgcHJvcHM6IGFueTtcbiAgICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9uZU9mQmxvY2tQcmV2aWV3U3RhdGUgZXh0ZW5kcyBCbG9ja1ByZXZpZXdTdGF0ZUludGVyZmFjZSB7XG4gICAgYmxvY2s/OiB7XG4gICAgICAgIHR5cGU6IHN0cmluZztcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgcHJvcHM6IGFueTtcbiAgICB9O1xufVxuXG50eXBlIEFjdGl2ZVR5cGU8Q29uZmlnIGV4dGVuZHMgYm9vbGVhbj4gPSBDb25maWcgZXh0ZW5kcyBmYWxzZSA/IHsgYWN0aXZlVHlwZTogc3RyaW5nIH0gOiB7IGFjdGl2ZVR5cGU/OiBzdHJpbmcgfTtcblxuZXhwb3J0IHR5cGUgT25lT2ZCbG9ja091dHB1dDxDb25maWcgZXh0ZW5kcyBib29sZWFuPiA9IHtcbiAgICBhdHRhY2hlZEJsb2Nrczoge1xuICAgICAgICB0eXBlOiBzdHJpbmc7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIHByb3BzOiBhbnk7XG4gICAgfVtdO1xufSAmIEFjdGl2ZVR5cGU8Q29uZmlnPjtcblxudHlwZSBCbG9ja1R5cGUgPSBzdHJpbmc7XG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZU9uZU9mQmxvY2tPcHRpb25zPFQgZXh0ZW5kcyBib29sZWFuPiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGRpc3BsYXlOYW1lPzogUmVhY3ROb2RlO1xuICAgIHN1cHBvcnRlZEJsb2NrczogUmVjb3JkPEJsb2NrVHlwZSwgQmxvY2tJbnRlcmZhY2U+O1xuICAgIGNhdGVnb3J5PzogQmxvY2tDYXRlZ29yeSB8IEN1c3RvbUJsb2NrQ2F0ZWdvcnk7XG4gICAgdmFyaWFudD86IFwic2VsZWN0XCIgfCBcInJhZGlvXCIgfCBcInRvZ2dsZVwiO1xuICAgIGFsbG93RW1wdHk/OiBUO1xufVxuXG5leHBvcnQgY29uc3QgY3JlYXRlT25lT2ZCbG9jayA9IDxUIGV4dGVuZHMgYm9vbGVhbiA9IGJvb2xlYW4+KFxuICAgIHtcbiAgICAgICAgc3VwcG9ydGVkQmxvY2tzLFxuICAgICAgICBuYW1lLFxuICAgICAgICBkaXNwbGF5TmFtZSA9IFwiU3dpdGNoXCIsXG4gICAgICAgIGNhdGVnb3J5ID0gQmxvY2tDYXRlZ29yeS5PdGhlcixcbiAgICAgICAgdmFyaWFudCA9IFwic2VsZWN0XCIsXG4gICAgICAgIGFsbG93RW1wdHk6IHBhc3NlZEFsbG93RW1wdHksXG4gICAgfTogQ3JlYXRlT25lT2ZCbG9ja09wdGlvbnM8VD4sXG4gICAgb3ZlcnJpZGU/OiAoXG4gICAgICAgIGJsb2NrOiBCbG9ja0ludGVyZmFjZTxPbmVPZkJsb2NrRnJhZ21lbnQsIE9uZU9mQmxvY2tTdGF0ZSwgT25lT2ZCbG9ja091dHB1dDxUPiwgT25lT2ZCbG9ja1ByZXZpZXdTdGF0ZT4sXG4gICAgKSA9PiBCbG9ja0ludGVyZmFjZTxPbmVPZkJsb2NrRnJhZ21lbnQsIE9uZU9mQmxvY2tTdGF0ZSwgT25lT2ZCbG9ja091dHB1dDxUPiwgT25lT2ZCbG9ja1ByZXZpZXdTdGF0ZT4sXG4pOiBCbG9ja0ludGVyZmFjZTxPbmVPZkJsb2NrRnJhZ21lbnQsIE9uZU9mQmxvY2tTdGF0ZSwgT25lT2ZCbG9ja091dHB1dDxUPiwgT25lT2ZCbG9ja1ByZXZpZXdTdGF0ZT4gPT4ge1xuICAgIC8vIGFsbG93RW1wdHkgY2FuJ3QgaGF2ZSBhIGRlZmF1bHQgdHlwZSBiZWNhdXNlIGl0J3MgdHlwZWQgYnkgYSBnZW5lcmljXG4gICAgY29uc3QgYWxsb3dFbXB0eSA9IChwYXNzZWRBbGxvd0VtcHR5ID8/IHRydWUpIHNhdGlzZmllcyBib29sZWFuO1xuXG4gICAgZnVuY3Rpb24gYmxvY2tGb3JUeXBlKHR5cGU6IHN0cmluZyk6IEJsb2NrSW50ZXJmYWNlIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiBzdXBwb3J0ZWRCbG9ja3NbdHlwZV0gPz8gbnVsbDtcbiAgICB9XG4gICAgLy8gaGVscGVyIHRvIGdldCBjb21tb24gdmFsdWVzIG9mIHRoZSBzZWxlY3RlZCBibG9jayBieSBTdGF0ZVxuICAgIGZ1bmN0aW9uIGdldEFjdGl2ZUJsb2NrKHM6IE9uZU9mQmxvY2tTdGF0ZSkge1xuICAgICAgICBpZiAoIXMuYWN0aXZlVHlwZSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBzdGF0ZTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIGJsb2NrOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgdHlwZTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBhY3RpdmVCbG9ja1N0YXRlID0gcy5hdHRhY2hlZEJsb2Nrcy5maW5kKChjKSA9PiBjLnR5cGUgPT09IHMuYWN0aXZlVHlwZSk7XG4gICAgICAgIGlmICghYWN0aXZlQmxvY2tTdGF0ZSkge1xuICAgICAgICAgICAgbGV0IG1lc3NhZ2UgPSBgQ2FuJ3QgZmluZCByZWZlcmVuY2UgdG8gYWN0aXZlIGJsb2NrIG9mIHR5cGUgXCIke3MuYWN0aXZlVHlwZX1cIi5gO1xuXG4gICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09IFwiZGV2ZWxvcG1lbnRcIikge1xuICAgICAgICAgICAgICAgIG1lc3NhZ2UgKz0gYCBUaGlzIGlzIHByb2JhYmx5IGR1ZSB0byBhIG1pc3NpbmcgXCJ4LWluY2x1ZGUtaW52aXNpYmxlLWNvbnRlbnRcIiBIVFRQIGhlYWRlci4gUGxlYXNlIG1ha2Ugc3VyZSB0byBpbmNsdWRlIHRoZSBoZWFkZXIgd2hlbiBmZXRjaGluZyB0aGUgYmxvY2suYDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGJsb2NrID0gYWN0aXZlQmxvY2tTdGF0ZSA/IGJsb2NrRm9yVHlwZShhY3RpdmVCbG9ja1N0YXRlLnR5cGUpIDogdW5kZWZpbmVkO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBzdGF0ZTogYWN0aXZlQmxvY2tTdGF0ZSxcbiAgICAgICAgICAgIGJsb2NrLFxuICAgICAgICAgICAgdHlwZTogYWN0aXZlQmxvY2tTdGF0ZS50eXBlLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGNvbnN0IE9uZU9mQmxvY2s6IEJsb2NrSW50ZXJmYWNlPE9uZU9mQmxvY2tGcmFnbWVudCwgT25lT2ZCbG9ja1N0YXRlLCBPbmVPZkJsb2NrT3V0cHV0PFQ+LCBPbmVPZkJsb2NrUHJldmlld1N0YXRlPiA9IHtcbiAgICAgICAgLi4uY3JlYXRlQmxvY2tTa2VsZXRvbigpLFxuXG4gICAgICAgIG5hbWUsXG5cbiAgICAgICAgZGlzcGxheU5hbWUsXG5cbiAgICAgICAgY2F0ZWdvcnksXG5cbiAgICAgICAgZGVmYXVsdFZhbHVlczogKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGFsbG93RW1wdHkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBhdHRhY2hlZEJsb2NrczogW10sXG4gICAgICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGU6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCBbYmxvY2tUeXBlLCBibG9ja10gPSBPYmplY3QuZW50cmllcyhzdXBwb3J0ZWRCbG9ja3MpWzBdO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgYXR0YWNoZWRCbG9ja3M6IFt7IHR5cGU6IGJsb2NrVHlwZSwgcHJvcHM6IGJsb2NrLmRlZmF1bHRWYWx1ZXMoKSB9XSxcbiAgICAgICAgICAgICAgICAgICAgYWN0aXZlVHlwZTogYmxvY2tUeXBlLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG5cbiAgICAgICAgaW5wdXQyU3RhdGU6ICh7IGF0dGFjaGVkQmxvY2tzLCBhY3RpdmVUeXBlLCBibG9jaywgLi4uYWRkaXRpb25hbEZpZWxkcyB9KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzdGF0ZTogT25lT2ZCbG9ja1N0YXRlID0ge1xuICAgICAgICAgICAgICAgIC4uLmFkZGl0aW9uYWxGaWVsZHMsXG4gICAgICAgICAgICAgICAgYXR0YWNoZWRCbG9ja3M6IFtdLFxuICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGU6IGFjdGl2ZVR5cGUgJiYgc3VwcG9ydGVkQmxvY2tzW2FjdGl2ZVR5cGVdID8gYWN0aXZlVHlwZSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBhdHRhY2hlZEJsb2Nrcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGl0ZW0udHlwZSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoIWJsb2NrKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybihgVW5rbm93biBibG9jayB0eXBlIFwiJHtpdGVtLnR5cGV9XCJgKTtcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3RhdGUuYXR0YWNoZWRCbG9ja3MucHVzaCh7IC4uLml0ZW0sIHByb3BzOiBibG9jay5pbnB1dDJTdGF0ZShpdGVtLnByb3BzKSB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgICB9LFxuICAgICAgICBzdGF0ZTJPdXRwdXQ6ICh7IGF0dGFjaGVkQmxvY2tzLCBhY3RpdmVUeXBlLCAuLi5hZGRpdGlvbmFsRmllbGRzIH0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4uYWRkaXRpb25hbEZpZWxkcyxcbiAgICAgICAgICAgICAgICBhdHRhY2hlZEJsb2NrczogYXR0YWNoZWRCbG9ja3MubWFwKChjKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGMudHlwZSk7XG4gICAgICAgICAgICAgICAgICAgIGlmICghYmxvY2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gQmxvY2sgZm91bmQgZm9yIHR5cGUgJHtjLnR5cGV9YCk7IC8vIGZvciBUU1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBjLnR5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9wczogYmxvY2suc3RhdGUyT3V0cHV0KGMucHJvcHMpLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGUsXG4gICAgICAgICAgICB9IGFzIE9uZU9mQmxvY2tPdXRwdXQ8VD47XG4gICAgICAgIH0sXG5cbiAgICAgICAgb3V0cHV0MlN0YXRlOiBhc3luYyAoeyBhdHRhY2hlZEJsb2NrcywgYWN0aXZlVHlwZSwgLi4uYWRkaXRpb25hbEZpZWxkcyB9LCBjb250ZXh0KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzdGF0ZTogT25lT2ZCbG9ja1N0YXRlID0ge1xuICAgICAgICAgICAgICAgIGF0dGFjaGVkQmxvY2tzOiBbXSxcbiAgICAgICAgICAgICAgICBhY3RpdmVUeXBlLFxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGF0dGFjaGVkQmxvY2tzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYmxvY2sgPSBibG9ja0ZvclR5cGUoaXRlbS50eXBlKTtcblxuICAgICAgICAgICAgICAgIGlmICghYmxvY2spIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBCbG9jayBmb3VuZCBmb3IgdHlwZSAke2l0ZW0udHlwZX1gKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzdGF0ZS5hdHRhY2hlZEJsb2Nrcy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICAgICAgICAgICAgcHJvcHM6IGF3YWl0IGJsb2NrLm91dHB1dDJTdGF0ZShpdGVtLnByb3BzLCBjb250ZXh0KSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgICB9LFxuXG4gICAgICAgIGNyZWF0ZVByZXZpZXdTdGF0ZTogKHN0YXRlLCBwcmV2aWV3Q3R4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7IHN0YXRlOiBibG9ja1N0YXRlLCBibG9jayB9ID0gZ2V0QWN0aXZlQmxvY2soc3RhdGUpO1xuICAgICAgICAgICAgY29uc3QgeyBhdHRhY2hlZEJsb2NrcywgYWN0aXZlVHlwZSwgLi4uYWRkaXRpb25hbEZpZWxkcyB9ID0gc3RhdGU7XG5cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4uYWRkaXRpb25hbEZpZWxkcyxcbiAgICAgICAgICAgICAgICBibG9jazogYmxvY2tTdGF0ZVxuICAgICAgICAgICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogYmxvY2tTdGF0ZS50eXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uYmxvY2s/LmNyZWF0ZVByZXZpZXdTdGF0ZShibG9ja1N0YXRlLnByb3BzLCBwcmV2aWV3Q3R4KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkbWluTWV0YTogeyByb3V0ZTogYCR7cHJldmlld0N0eC5wYXJlbnRVcmx9IyR7YmxvY2tTdGF0ZS50eXBlfWAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSxcblxuICAgICAgICBpc1ZhbGlkOiBhc3luYyAoc3RhdGUpID0+XG4gICAgICAgICAgICBwYXJhbGxlbEFzeW5jRXZlcnkoc3RhdGUuYXR0YWNoZWRCbG9ja3MsIGFzeW5jIChjKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgYmxvY2sgPSBibG9ja0ZvclR5cGUoYy50eXBlKTtcbiAgICAgICAgICAgICAgICBpZiAoIWJsb2NrKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gQmxvY2sgZm91bmQgZm9yIHR5cGUgJHtjLnR5cGV9YCk7IC8vIGZvciBUU1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gYmxvY2suaXNWYWxpZChjLnByb3BzKTtcbiAgICAgICAgICAgIH0pLFxuXG4gICAgICAgIGFuY2hvcnM6IChzdGF0ZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBzdGF0ZTogYmxvY2tTdGF0ZSwgYmxvY2sgfSA9IGdldEFjdGl2ZUJsb2NrKHN0YXRlKTtcblxuICAgICAgICAgICAgaWYgKGJsb2NrU3RhdGUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGJsb2NrPy5hbmNob3JzPy4oYmxvY2tTdGF0ZS5wcm9wcykgPz8gW107XG4gICAgICAgIH0sXG5cbiAgICAgICAgZGVwZW5kZW5jaWVzOiAoc3RhdGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHsgc3RhdGU6IGJsb2NrU3RhdGUsIGJsb2NrIH0gPSBnZXRBY3RpdmVCbG9jayhzdGF0ZSk7XG5cbiAgICAgICAgICAgIGlmIChibG9ja1N0YXRlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBibG9jaz8uZGVwZW5kZW5jaWVzPy4oYmxvY2tTdGF0ZS5wcm9wcykgPz8gW107XG4gICAgICAgIH0sXG5cbiAgICAgICAgcmVwbGFjZURlcGVuZGVuY2llc0luT3V0cHV0OiAob3V0cHV0LCByZXBsYWNlbWVudHMpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG5ld091dHB1dDogT25lT2ZCbG9ja091dHB1dDxUPiA9IHsgLi4ub3V0cHV0LCBhdHRhY2hlZEJsb2NrczogW10gfTtcblxuICAgICAgICAgICAgZm9yIChjb25zdCBjIG9mIG91dHB1dC5hdHRhY2hlZEJsb2Nrcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGMudHlwZSk7XG4gICAgICAgICAgICAgICAgaWYgKCFibG9jaykge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIEJsb2NrIGZvdW5kIGZvciB0eXBlICR7Yy50eXBlfWApOyAvLyBmb3IgVFNcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBuZXdPdXRwdXQuYXR0YWNoZWRCbG9ja3MucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgIC4uLmMsXG4gICAgICAgICAgICAgICAgICAgIHByb3BzOiBibG9jay5yZXBsYWNlRGVwZW5kZW5jaWVzSW5PdXRwdXQoYy5wcm9wcywgcmVwbGFjZW1lbnRzKSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIG5ld091dHB1dDtcbiAgICAgICAgfSxcblxuICAgICAgICBkZWZpbmVzT3duUGFkZGluZzogdHJ1ZSxcblxuICAgICAgICBBZG1pbkNvbXBvbmVudDogKHsgc3RhdGUsIHVwZGF0ZVN0YXRlIH0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzSW5QYXBlciA9IHVzZUJsb2NrQWRtaW5Db21wb25lbnRQYXBlcigpO1xuXG4gICAgICAgICAgICBjb25zdCB7IHNjb3BlIH0gPSB1c2VDb250ZW50U2NvcGUoKTtcbiAgICAgICAgICAgIGNvbnN0IHsgaXNCbG9ja1N1cHBvcnRlZCB9ID0gdXNlQmxvY2tzQ29uZmlnKCk7XG5cbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbnMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgZmlsdGVyZWRTdXBwb3J0ZWRCbG9ja3M7XG5cbiAgICAgICAgICAgICAgICBpZiAoaXNCbG9ja1N1cHBvcnRlZCkge1xuICAgICAgICAgICAgICAgICAgICBmaWx0ZXJlZFN1cHBvcnRlZEJsb2NrcyA9IE9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5lbnRyaWVzKHN1cHBvcnRlZEJsb2NrcykuZmlsdGVyKChbLCBibG9ja10pID0+IGlzQmxvY2tTdXBwb3J0ZWQoYmxvY2ssIHNjb3BlKSksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyZWRTdXBwb3J0ZWRCbG9ja3MgPSBzdXBwb3J0ZWRCbG9ja3M7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3Qgb3B0aW9uczogQXJyYXk8eyB2YWx1ZTogc3RyaW5nOyBsYWJlbDogUmVhY3ROb2RlIH0+ID0gYWxsb3dFbXB0eVxuICAgICAgICAgICAgICAgICAgICA/IFt7IHZhbHVlOiBcIm5vbmVcIiwgbGFiZWw6IDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLm9uZU9mQmxvY2suZW1wdHlcIiBkZWZhdWx0TWVzc2FnZT1cIk5vbmVcIiAvPiB9XVxuICAgICAgICAgICAgICAgICAgICA6IFtdO1xuXG4gICAgICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMoZmlsdGVyZWRTdXBwb3J0ZWRCbG9ja3MpLmZvckVhY2goKFtibG9ja1R5cGUsIGJsb2NrXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IGJsb2NrVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBibG9jay5kaXNwbGF5TmFtZSxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gb3B0aW9ucztcbiAgICAgICAgICAgIH0sIFtzY29wZSwgaXNCbG9ja1N1cHBvcnRlZF0pO1xuXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVCbG9ja1NlbGVjdCA9IHVzZUNhbGxiYWNrKFxuICAgICAgICAgICAgICAgIChibG9ja1R5cGU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZSgocHJldlN0YXRlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgbmV3U3RhdGU6IE9uZU9mQmxvY2tTdGF0ZSA9IHByZXZTdGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChibG9ja1R5cGUgPT09IFwibm9uZVwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdW5zZWxlY3QsIG5vIGJsb2NrIHNlbGVjdGVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3U3RhdGUgPSB7IC4uLnByZXZTdGF0ZSwgYWN0aXZlVHlwZTogdW5kZWZpbmVkIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNoZWNrIGlmIHdlIGhhdmUgYSBibG9jayBvZiB0aGUgc2FtZSB0eXBlIGFscmVhZHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXRjaCA9IHByZXZTdGF0ZS5hdHRhY2hlZEJsb2Nrcy5maW5kKChjKSA9PiBjLnR5cGUgPT09IGJsb2NrVHlwZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG1hdGNoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHdlIGhhdmUgYW4gZXhpc3RpbmcgYmxvY2sgd2l0aCBzYW1lIHR5cGUsIHNvIHNlbGVjdCBpdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdTdGF0ZSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLnByZXZTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2ZVR5cGU6IGJsb2NrVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB3ZSBoYXZlIG5vIGV4aXN0aW5nIGJsb2NrLCB3ZSBuZWVkIHRvIGNyZWF0ZSBhbmQgc2VsZWN0IGEgbmV3IGJsb2NrXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGJsb2NrID0gYmxvY2tGb3JUeXBlKGJsb2NrVHlwZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYmxvY2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gQmxvY2sgZm91bmQgZm9yIHR5cGUgJHtibG9ja1R5cGV9YCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdJdGVtOiBPbmVPZkJsb2NrSXRlbSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IGJsb2NrVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3BzOiBibG9jay5kZWZhdWx0VmFsdWVzKCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3U3RhdGUgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5wcmV2U3RhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRhY2hlZEJsb2NrczogWy4uLnByZXZTdGF0ZS5hdHRhY2hlZEJsb2NrcywgbmV3SXRlbV0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3RpdmVUeXBlOiBibG9ja1R5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gY2xlYW4gdXAgdGhlIHByZXZpb3VzIHNlbGVjdGVkIGJsb2NrXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB3aGVuIHByZXZpb3VzIGJsb2NrIGhhcyBubyB2YWx1ZXMgKHZhbHVlcyBhcmUgZXF1YWwgdG8gZGVmYXVsdCB2YWx1ZXMpXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGVuIHdlIHJlbW92ZSB0aGUgYmxvY2tcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMgcHJldmVudHMgZnJvbSBzYXZpbmcgcG9zc2libHkgaW52YWxpZCBibG9ja3MgZm9yIGlycmVsZXZhbnQgKG5vdCBzZWxlY3RlZCkgYmxvY2tzXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwcmV2aW91c1NlbGVjdGVkQmxvY2sgPSBnZXRBY3RpdmVCbG9jayhwcmV2U3RhdGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV3U2VsZWN0ZWRCbG9jayA9IGdldEFjdGl2ZUJsb2NrKG5ld1N0YXRlKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHByZXZpb3VzU2VsZWN0ZWRCbG9jay5ibG9jayAmJiBwcmV2aW91c1NlbGVjdGVkQmxvY2suc3RhdGUgJiYgbmV3U2VsZWN0ZWRCbG9jay50eXBlICE9PSBwcmV2aW91c1NlbGVjdGVkQmxvY2sudHlwZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc0VxdWFsKHByZXZpb3VzU2VsZWN0ZWRCbG9jay5ibG9jay5kZWZhdWx0VmFsdWVzKCksIHByZXZpb3VzU2VsZWN0ZWRCbG9jay5zdGF0ZS5wcm9wcykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3U3RhdGUgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5uZXdTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dGFjaGVkQmxvY2tzOiBuZXdTdGF0ZS5hdHRhY2hlZEJsb2Nrcy5maWx0ZXIoKGMpID0+IGMudHlwZSAhPT0gcHJldmlvdXNTZWxlY3RlZEJsb2NrLnN0YXRlLnR5cGUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ld1N0YXRlO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFt1cGRhdGVTdGF0ZV0sXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICBjb25zdCBjcmVhdGVVcGRhdGVTdWJCbG9ja3NGbiA9IHVzZUNhbGxiYWNrKFxuICAgICAgICAgICAgICAgIChibG9ja1R5cGU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICAgICAgICAgICAgICBjb25zdCB1cGRhdGVTdWJCbG9ja3NGbjogRGlzcGF0Y2g8U2V0U3RhdGVBY3Rpb248YW55Pj4gPSAoc2V0U3RhdGVBY3Rpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZVN0YXRlKChwcmV2U3RhdGUpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dGFjaGVkQmxvY2tzOiBwcmV2U3RhdGUuYXR0YWNoZWRCbG9ja3MubWFwKChjKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjLnR5cGUgPT09IGJsb2NrVHlwZSA/IHsgLi4uYywgcHJvcHM6IHJlc29sdmVOZXdTdGF0ZSh7IHByZXZTdGF0ZTogYy5wcm9wcywgc2V0U3RhdGVBY3Rpb24gfSkgfSA6IGMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVwZGF0ZVN1YkJsb2Nrc0ZuO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgW3VwZGF0ZVN0YXRlXSxcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIGNvbnN0IGFjdGl2ZUJsb2NrID0gZ2V0QWN0aXZlQmxvY2soc3RhdGUpO1xuICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWRCbG9ja1R5cGUgPSBhY3RpdmVCbG9jay5ibG9jayA/IGFjdGl2ZUJsb2NrLnN0YXRlLnR5cGUgOiBcIm5vbmVcIjtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8U2VsZWN0UHJldmlld0NvbXBvbmVudD5cbiAgICAgICAgICAgICAgICAgICAgPEhpZGRlbkluU3Vicm91dGU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmdCb3R0b209e2lzSW5QYXBlciA/IDAgOiAzfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tzRmluYWxGb3JtPHsgYmxvY2tUeXBlOiBzdHJpbmcgfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25TdWJtaXQ9eyh7IGJsb2NrVHlwZSB9KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVCbG9ja1NlbGVjdChibG9ja1R5cGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsVmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja1R5cGU6IHNlbGVjdGVkQmxvY2tUeXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3ZhcmlhbnQgPT09IFwic2VsZWN0XCIgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmc9e2lzSW5QYXBlciA/IDMgOiAwfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdEZpZWxkIG5hbWU9XCJibG9ja1R5cGVcIiBvcHRpb25zPXtvcHRpb25zfSBmdWxsV2lkdGggcmVxdWlyZWQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aXNJblBhcGVyICYmIGFjdGl2ZUJsb2NrLmJsb2NrICYmIDxEaXZpZGVyIC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt2YXJpYW50ID09PSBcInJhZGlvXCIgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IGRpc3BsYXk9XCJmbGV4XCIgZmxleERpcmVjdGlvbj1cImNvbHVtblwiIHBhZGRpbmc9ezN9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UmFkaW9Hcm91cEZpZWxkIG5hbWU9XCJibG9ja1R5cGVcIiBmdWxsV2lkdGggb3B0aW9ucz17b3B0aW9uc30gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7YWN0aXZlQmxvY2suYmxvY2sgJiYgPERpdmlkZXIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3ZhcmlhbnQgPT09IFwidG9nZ2xlXCIgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmc9e2lzSW5QYXBlciA/IDMgOiAwfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkIG5hbWU9XCJibG9ja1R5cGVcIiBmdWxsV2lkdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgaW5wdXQ6IHsgdmFsdWUsIG9uQ2hhbmdlIH0gfSkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUb2dnbGVCdXR0b25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17dmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXsoZXZlbnQsIGJsb2NrVHlwZTogc3RyaW5nIHwgbnVsbCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGJsb2NrVHlwZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlKGJsb2NrVHlwZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4Y2x1c2l2ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbnMubWFwKChvcHRpb24pID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUb2dnbGVCdXR0b24gdmFsdWU9e29wdGlvbi52YWx1ZX0ga2V5PXtvcHRpb24udmFsdWV9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtvcHRpb24ubGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1RvZ2dsZUJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Ub2dnbGVCdXR0b25Hcm91cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2lzSW5QYXBlciAmJiBhY3RpdmVCbG9jay5ibG9jayAmJiA8RGl2aWRlciAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tzRmluYWxGb3JtPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgIDwvSGlkZGVuSW5TdWJyb3V0ZT5cbiAgICAgICAgICAgICAgICAgICAge2FjdGl2ZUJsb2NrLmJsb2NrICYmIGFjdGl2ZUJsb2NrLnN0YXRlID8gKFxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBwYWRkaW5nPXtpc0luUGFwZXIgJiYgIWFjdGl2ZUJsb2NrLmJsb2NrLmRlZmluZXNPd25QYWRkaW5nID8gMyA6IDB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxIb3ZlclByZXZpZXdDb21wb25lbnQga2V5PXthY3RpdmVCbG9jay50eXBlfSBjb21wb25lbnRTbHVnPXtgIyR7YWN0aXZlQmxvY2sudHlwZX1gfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFjdGl2ZUJsb2NrLmJsb2NrLkFkbWluQ29tcG9uZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZT17YWN0aXZlQmxvY2suc3RhdGUucHJvcHN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZT17Y3JlYXRlVXBkYXRlU3ViQmxvY2tzRm4oYWN0aXZlQmxvY2suc3RhdGUudHlwZSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Ib3ZlclByZXZpZXdDb21wb25lbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgPC9TZWxlY3RQcmV2aWV3Q29tcG9uZW50PlxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICAgICAgcHJldmlld0NvbnRlbnQ6IChzdGF0ZSwgY3R4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7IGJsb2NrLCBzdGF0ZTogYWN0aXZlQmxvY2tTdGF0ZSB9ID0gZ2V0QWN0aXZlQmxvY2soc3RhdGUpO1xuXG4gICAgICAgICAgICBpZiAoYmxvY2sgJiYgYWN0aXZlQmxvY2tTdGF0ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBibG9jay5wcmV2aWV3Q29udGVudChhY3RpdmVCbG9ja1N0YXRlLnByb3BzLCBjdHgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG5cbiAgICAgICAgZHluYW1pY0Rpc3BsYXlOYW1lOiAoc3RhdGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHsgYmxvY2ssIHN0YXRlOiBibG9ja1N0YXRlIH0gPSBnZXRBY3RpdmVCbG9jayhzdGF0ZSk7XG5cbiAgICAgICAgICAgIGlmIChibG9jayAhPSBudWxsKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGJsb2NrLmR5bmFtaWNEaXNwbGF5TmFtZT8uKGJsb2NrU3RhdGUucHJvcHMpID8/IGJsb2NrLmRpc3BsYXlOYW1lO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZGlzcGxheU5hbWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG5cbiAgICAgICAgZXh0cmFjdFRleHRDb250ZW50czogKHN0YXRlLCBvcHRpb25zKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbmNsdWRlSW52aXNpYmxlQ29udGVudCA9IG9wdGlvbnM/LmluY2x1ZGVJbnZpc2libGVDb250ZW50ID8/IGZhbHNlO1xuXG4gICAgICAgICAgICBjb25zdCBjb250ZW50ID0gc3RhdGUuYXR0YWNoZWRCbG9ja3MucmVkdWNlPHN0cmluZ1tdPigoY29udGVudCwgY2hpbGQpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBibG9jayA9IGJsb2NrRm9yVHlwZShjaGlsZC50eXBlKTtcbiAgICAgICAgICAgICAgICBpZiAoIWJsb2NrKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gQmxvY2sgZm91bmQgZm9yIHR5cGUgJHtjaGlsZC50eXBlfWApOyAvLyBmb3IgVFNcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoY2hpbGQudHlwZSAhPT0gc3RhdGUuYWN0aXZlVHlwZSAmJiAhaW5jbHVkZUludmlzaWJsZUNvbnRlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIFsuLi5jb250ZW50LCAuLi4oYmxvY2suZXh0cmFjdFRleHRDb250ZW50cz8uKGNoaWxkLnByb3BzLCBvcHRpb25zKSA/PyBbXSldO1xuICAgICAgICAgICAgfSwgW10pO1xuICAgICAgICAgICAgcmV0dXJuIGNvbnRlbnQ7XG4gICAgICAgIH0sXG4gICAgfTtcbiAgICBpZiAob3ZlcnJpZGUpIHtcbiAgICAgICAgcmV0dXJuIG92ZXJyaWRlKE9uZU9mQmxvY2spO1xuICAgIH1cbiAgICByZXR1cm4gT25lT2ZCbG9jaztcbn07XG5cbmNvbnN0IFRvZ2dsZUJ1dHRvbkdyb3VwID0gc3R5bGVkKE11aVRvZ2dsZUJ1dHRvbkdyb3VwKWBcbiAgICBkaXNwbGF5OiBmbGV4O1xuYDtcblxuY29uc3QgVG9nZ2xlQnV0dG9uID0gc3R5bGVkKE11aVRvZ2dsZUJ1dHRvbilgXG4gICAgZmxleDogMTtcbiAgICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5wYWxldHRlLnRleHQucHJpbWFyeX07XG5gO1xuIl19 */"));
@@ -1,5 +1,6 @@
1
1
  import { type Dispatch, type SetStateAction } from "react";
2
- import { type BlockContext, type BlockInterface, type BlockMethods } from "../../types";
2
+ import { type BlockContext } from "../../context/BlockContext";
3
+ import { type BlockInterface, type BlockMethods } from "../../types";
3
4
  import { type AdminComponentPropsMap, type AdminComponentsMap, type ChildBlockCountMap, type CompositeBlocksConfig, type DataMapInputApi, type DataMapOutputApi, type DataMapState, type IsValidMap, type PreviewMap } from "./types";
4
5
  export type CompositeBlockInterface<C extends CompositeBlocksConfig> = BlockInterface<DataMapInputApi<C>, DataMapState<C>, DataMapOutputApi<C>>;
5
6
  export type ComposeBlocksApi<C extends CompositeBlocksConfig> = {
@@ -13,7 +14,7 @@ export type ComposeBlocksApi<C extends CompositeBlocksConfig> = {
13
14
  state: DataMapState<C>;
14
15
  updateState: Dispatch<SetStateAction<DataMapState<C>>>;
15
16
  }) => AdminComponentsMap<C>;
16
- previews: (state: DataMapState<C>, ctx?: BlockContext) => PreviewMap<C>;
17
+ previews: (state: DataMapState<C>, context: BlockContext) => PreviewMap<C>;
17
18
  childBlockCounts: (state: DataMapState<C>) => ChildBlockCountMap<C>;
18
19
  isValids: (state: DataMapState<C>) => IsValidMap<C>;
19
20
  };
@@ -1 +1 @@
1
- {"version":3,"file":"composeBlocks.d.ts","sourceRoot":"","sources":["../../../../src/blocks/helpers/composeBlocks/composeBlocks.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAG3D,OAAO,EAAE,KAAK,YAAY,EAAwB,KAAK,cAAc,EAAE,KAAK,YAAY,EAAuB,MAAM,aAAa,CAAC;AAInI,OAAO,EACH,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,UAAU,EAElB,MAAM,SAAS,CAAC;AAKjB,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,qBAAqB,IAAI,cAAc,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;AAQhJ,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,qBAAqB,IAAI;IAC5D,KAAK,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;IAE9E,GAAG,EAAE;QACD,mBAAmB,EAAE,CAAC,KAAK,EAAE;YAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;YAAC,WAAW,EAAE,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;SAAE,KAAK,sBAAsB,CAAC,CAAC,CAAC,CAAC;QAC9I,eAAe,EAAE,CAAC,KAAK,EAAE;YAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;YAAC,WAAW,EAAE,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;SAAE,KAAK,kBAAkB,CAAC,CAAC,CAAC,CAAC;QACtI,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC;QACxE,gBAAgB,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC,CAAC,CAAC,CAAC;QACpE,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC;KACvD,CAAC;CACL,CAAC;AAIF,wBAAgB,aAAa,CAAC,CAAC,SAAS,qBAAqB,EAAE,eAAe,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAmNtG"}
1
+ {"version":3,"file":"composeBlocks.d.ts","sourceRoot":"","sources":["../../../../src/blocks/helpers/composeBlocks/composeBlocks.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAG3D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAwB,KAAK,cAAc,EAAE,KAAK,YAAY,EAAuB,MAAM,aAAa,CAAC;AAIhH,OAAO,EACH,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,UAAU,EAElB,MAAM,SAAS,CAAC;AAKjB,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,qBAAqB,IAAI,cAAc,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;AAQhJ,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,qBAAqB,IAAI;IAC5D,KAAK,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;IAE9E,GAAG,EAAE;QACD,mBAAmB,EAAE,CAAC,KAAK,EAAE;YAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;YAAC,WAAW,EAAE,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;SAAE,KAAK,sBAAsB,CAAC,CAAC,CAAC,CAAC;QAC9I,eAAe,EAAE,CAAC,KAAK,EAAE;YAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;YAAC,WAAW,EAAE,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;SAAE,KAAK,kBAAkB,CAAC,CAAC,CAAC,CAAC;QACtI,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC;QAC3E,gBAAgB,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC,CAAC,CAAC,CAAC;QACpE,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC;KACvD,CAAC;CACL,CAAC;AAIF,wBAAgB,aAAa,CAAC,CAAC,SAAS,qBAAqB,EAAE,eAAe,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAmNtG"}
@@ -17,7 +17,7 @@ var _reactIntl = require("react-intl");
17
17
  var _ImageCrop = require("../../common/image/ImageCrop");
18
18
  var _Provider = require("../../contentScope/Provider");
19
19
  var _CropSettingsFields = require("../../dam/FileForm/CropSettingsFields");
20
- var _DependenciesConfig = require("../../dependencies/DependenciesConfig");
20
+ var _dependenciesConfig = require("../../dependencies/dependenciesConfig");
21
21
  var _jsxRuntime = require("react/jsx-runtime");
22
22
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
23
23
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -43,7 +43,7 @@ var DialogContent = /*#__PURE__*/(0, _styles.styled)(_material.DialogContent, pr
43
43
  styles: "display:grid;grid-template-columns:auto 320px;padding:0;padding-left:40px"
44
44
  } : {
45
45
  name: "1jo98c",
46
- styles: "display:grid;grid-template-columns:auto 320px;padding:0;padding-left:40px/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ibG9ja3MvaW1hZ2UvRWRpdEltYWdlRGlhbG9nLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnRThDIiwiZmlsZSI6Ii4uLy4uLy4uL3NyYy9ibG9ja3MvaW1hZ2UvRWRpdEltYWdlRGlhbG9nLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBcInJlYWN0LWltYWdlLWNyb3AvZGlzdC9SZWFjdENyb3AuY3NzXCI7XG5cbmltcG9ydCB7IHVzZUFwb2xsb0NsaWVudCB9IGZyb20gXCJAYXBvbGxvL2NsaWVudFwiO1xuaW1wb3J0IHsgQ2FuY2VsQnV0dG9uLCBGaWVsZCwgRm9ybVNlY3Rpb24sIG1lc3NhZ2VzLCBTYXZlQnV0dG9uIH0gZnJvbSBcIkBjb21ldC9hZG1pblwiO1xuaW1wb3J0IHsgT3Blbk5ld1RhYiB9IGZyb20gXCJAY29tZXQvYWRtaW4taWNvbnNcIjtcbmltcG9ydCB7XG4gICAgQm94LFxuICAgIEJ1dHRvbixcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1pbXBvcnRzXG4gICAgRGlhbG9nLFxuICAgIERpYWxvZ0FjdGlvbnMsXG4gICAgRGlhbG9nQ29udGVudCBhcyBNdWlEaWFsb2dDb250ZW50LFxuICAgIERpYWxvZ1RpdGxlLFxuICAgIERpdmlkZXIsXG4gICAgRm9ybUNvbnRyb2xMYWJlbCxcbiAgICBHcmlkLFxuICAgIFN3aXRjaCxcbiAgICBUeXBvZ3JhcGh5LFxufSBmcm9tIFwiQG11aS9tYXRlcmlhbFwiO1xuaW1wb3J0IHsgc3R5bGVkIH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWwvc3R5bGVzXCI7XG5pbXBvcnQgaXNFcXVhbCBmcm9tIFwibG9kYXNoLmlzZXF1YWxcIjtcbmltcG9ydCB7IHR5cGUgQ2hhbmdlRXZlbnQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEZvcm0gfSBmcm9tIFwicmVhY3QtZmluYWwtZm9ybVwiO1xuaW1wb3J0IHsgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gXCJyZWFjdC1pbnRsXCI7XG5cbmltcG9ydCB7IEltYWdlQ3JvcCB9IGZyb20gXCIuLi8uLi9jb21tb24vaW1hZ2UvSW1hZ2VDcm9wXCI7XG5pbXBvcnQgeyB1c2VDb250ZW50U2NvcGUgfSBmcm9tIFwiLi4vLi4vY29udGVudFNjb3BlL1Byb3ZpZGVyXCI7XG5pbXBvcnQgeyBDcm9wU2V0dGluZ3NGaWVsZHMgfSBmcm9tIFwiLi4vLi4vZGFtL0ZpbGVGb3JtL0Nyb3BTZXR0aW5nc0ZpZWxkc1wiO1xuaW1wb3J0IHsgdHlwZSBFZGl0SW1hZ2VGb3JtVmFsdWVzIH0gZnJvbSBcIi4uLy4uL2RhbS9GaWxlRm9ybS9FZGl0RmlsZVwiO1xuaW1wb3J0IHsgdXNlRGVwZW5kZW5jaWVzQ29uZmlnIH0gZnJvbSBcIi4uLy4uL2RlcGVuZGVuY2llcy9EZXBlbmRlbmNpZXNDb25maWdcIjtcbmltcG9ydCB7IHR5cGUgR1FMRm9jYWxQb2ludCB9IGZyb20gXCIuLi8uLi9ncmFwaHFsLmdlbmVyYXRlZFwiO1xuXG50eXBlIENyb3BBcmVhID0ge1xuICAgIGZvY2FsUG9pbnQ6IEdRTEZvY2FsUG9pbnQ7XG4gICAgd2lkdGg/OiBudW1iZXI7XG4gICAgaGVpZ2h0PzogbnVtYmVyO1xuICAgIHg/OiBudW1iZXI7XG4gICAgeT86IG51bWJlcjtcbn07XG5cbmNvbnN0IGltYWdlU3R5bGUgPSB7IG1heFdpZHRoOiBcIjYwdndcIiwgbWF4SGVpZ2h0OiBcIjcwdmhcIiB9O1xuXG5pbnRlcmZhY2UgRm9ybVZhbHVlcyBleHRlbmRzIEVkaXRJbWFnZUZvcm1WYWx1ZXMge1xuICAgIHVzZUluaGVyaXRlZERhbVNldHRpbmdzPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgICBpbWFnZToge1xuICAgICAgICBuYW1lOiBzdHJpbmc7XG4gICAgICAgIHVybDogc3RyaW5nO1xuICAgICAgICB3aWR0aDogbnVtYmVyO1xuICAgICAgICBoZWlnaHQ6IG51bWJlcjtcbiAgICAgICAgc2l6ZT86IG51bWJlcjtcbiAgICB9O1xuICAgIGRhbUZpbGVJZDogc3RyaW5nO1xuICAgIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gICAgaW5pdGlhbFZhbHVlczoge1xuICAgICAgICB1c2VJbmhlcml0ZWREYW1TZXR0aW5ncz86IGJvb2xlYW47XG4gICAgICAgIGNyb3BBcmVhPzogQ3JvcEFyZWE7XG4gICAgfTtcbiAgICBvblN1Ym1pdDogKGNyb3BBcmVhOiBDcm9wQXJlYSB8IHVuZGVmaW5lZCkgPT4gdm9pZDtcbiAgICBpbmhlcml0ZWREYW1TZXR0aW5ncz86IHsgY3JvcEFyZWE6IENyb3BBcmVhIH07XG59XG5cbmNvbnN0IERpYWxvZ0NvbnRlbnQgPSBzdHlsZWQoTXVpRGlhbG9nQ29udGVudClgXG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMzIwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG5gO1xuXG5leHBvcnQgZnVuY3Rpb24gRWRpdEltYWdlRGlhbG9nKHsgaW1hZ2UsIGluaXRpYWxWYWx1ZXMsIG9uU3VibWl0LCBvbkNsb3NlLCBpbmhlcml0ZWREYW1TZXR0aW5ncywgZGFtRmlsZUlkIH06IFByb3BzKSB7XG4gICAgY29uc3QgY29udGVudFNjb3BlID0gdXNlQ29udGVudFNjb3BlKCk7XG4gICAgY29uc3QgYXBvbGxvQ2xpZW50ID0gdXNlQXBvbGxvQ2xpZW50KCk7XG4gICAgY29uc3QgZGVwZW5kZW5jeU1hcCA9IHVzZURlcGVuZGVuY2llc0NvbmZpZygpO1xuXG4gICAgY29uc3QgaGFuZGxlU3VibWl0ID0gKHZhbHVlczogRm9ybVZhbHVlcykgPT4ge1xuICAgICAgICBpZiAodmFsdWVzLnVzZUluaGVyaXRlZERhbVNldHRpbmdzKSB7XG4gICAgICAgICAgICBvblN1Ym1pdCh1bmRlZmluZWQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbGV0IGNyb3BBcmVhOiBDcm9wQXJlYTtcblxuICAgICAgICAgICAgaWYgKHZhbHVlcy5mb2NhbFBvaW50ID09PSBcIlNNQVJUXCIpIHtcbiAgICAgICAgICAgICAgICBjcm9wQXJlYSA9IHtcbiAgICAgICAgICAgICAgICAgICAgZm9jYWxQb2ludDogXCJTTUFSVFwiLFxuICAgICAgICAgICAgICAgICAgICB4OiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIHk6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY3JvcEFyZWEgPSB7XG4gICAgICAgICAgICAgICAgICAgIGZvY2FsUG9pbnQ6IHZhbHVlcy5mb2NhbFBvaW50ID8/IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgeDogdmFsdWVzLmNyb3AueCxcbiAgICAgICAgICAgICAgICAgICAgeTogdmFsdWVzLmNyb3AueSxcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHZhbHVlcy5jcm9wLndpZHRoID8gTWF0aC5jZWlsKHZhbHVlcy5jcm9wLndpZHRoKSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB2YWx1ZXMuY3JvcC5oZWlnaHQgPyBNYXRoLmNlaWwodmFsdWVzLmNyb3AuaGVpZ2h0KSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBvblN1Ym1pdChjcm9wQXJlYSk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgcmV0dXJuIChcbiAgICAgICAgPEZvcm1cbiAgICAgICAgICAgIG9uU3VibWl0PXtoYW5kbGVTdWJtaXR9XG4gICAgICAgICAgICBpbml0aWFsVmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgdXNlSW5oZXJpdGVkRGFtU2V0dGluZ3M6IGluaXRpYWxWYWx1ZXMudXNlSW5oZXJpdGVkRGFtU2V0dGluZ3MsXG4gICAgICAgICAgICAgICAgZm9jYWxQb2ludDogaW5pdGlhbFZhbHVlcy5jcm9wQXJlYT8uZm9jYWxQb2ludCA/PyBcIlNNQVJUXCIsXG4gICAgICAgICAgICAgICAgY3JvcDoge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogaW5pdGlhbFZhbHVlcy5jcm9wQXJlYT8ud2lkdGggPz8gMTAwLFxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGluaXRpYWxWYWx1ZXMuY3JvcEFyZWE/LmhlaWdodCA/PyAxMDAsXG4gICAgICAgICAgICAgICAgICAgIHg6IGluaXRpYWxWYWx1ZXMuY3JvcEFyZWE/LnggPz8gMCxcbiAgICAgICAgICAgICAgICAgICAgeTogaW5pdGlhbFZhbHVlcy5jcm9wQXJlYT8ueSA/PyAwLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgaW5pdGlhbFZhbHVlc0VxdWFsPXtpc0VxdWFsfVxuICAgICAgICA+XG4gICAgICAgICAgICB7KHsgaGFuZGxlU3VibWl0LCB2YWx1ZXMgfSkgPT4gKFxuICAgICAgICAgICAgICAgIDxEaWFsb2cgb3BlbiBvbkNsb3NlPXtvbkNsb3NlfSBtYXhXaWR0aD17ZmFsc2V9PlxuICAgICAgICAgICAgICAgICAgICA8RGlhbG9nRm9ybVdyYXBwZXIgb25TdWJtaXQ9e2hhbmRsZVN1Ym1pdH0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8RGlhbG9nVGl0bGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgY29udGFpbmVyIGp1c3RpZnlDb250ZW50PVwic3BhY2UtYmV0d2VlblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBpdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2UuZWRpdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlPVwiRWRpdCBpbWFnZSDigJ57ZmlsZW5hbWV94oCdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZTogaW1hZ2UubmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIGl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImNvbWV0LmJsb2Nrcy5pbWFnZS5kaW1lbnNpb25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U9XCJ7d2lkdGh9eHtoZWlnaHR9cHhcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBpbWFnZS53aWR0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogaW1hZ2UuaGVpZ2h0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2ltYWdlLnNpemUgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2Uuc2l6ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZT1cIiB8IHtzaXplLCBudW1iZXIsIDo6IC4wMCBtZWFzdXJlLXVuaXQvZGlnaXRhbC1tZWdhYnl0ZX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZTogaW1hZ2Uuc2l6ZSAvIDEwMjQgLyAxMDI0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9EaWFsb2dUaXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxEaWFsb2dDb250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJbWFnZUNyb3Agc3JjPXtpbWFnZS51cmx9IGltYWdlU3R5bGU9e2ltYWdlU3R5bGV9IGRpc2FibGVkPXt2YWx1ZXMudXNlSW5oZXJpdGVkRGFtU2V0dGluZ3N9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2luaGVyaXRlZERhbVNldHRpbmdzICE9PSB1bmRlZmluZWQgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmc9ezh9IHBhZGRpbmdUb3A9ezB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybVNlY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPXs8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5pbWFnZS5kYW1cIiBkZWZhdWx0TWVzc2FnZT1cIkRBTVwiIC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZU1hcmdpbkJvdHRvbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwidXNlSW5oZXJpdGVkRGFtU2V0dGluZ3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29tZXQuYmxvY2tzLmltYWdlLnVzZUluaGVyaXRlZERhbVNldHRpbmdzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlPVwiVXNlIGluaGVyaXRlZCBEQU0gc2V0dGluZ3M/XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgaW5wdXQ6IHsgY2hlY2tlZCwgb25DaGFuZ2UgfSB9KSA9PiA8WWVzTm9Td2l0Y2ggY2hlY2tlZD17Y2hlY2tlZH0gb25DaGFuZ2U9e29uQ2hhbmdlfSAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybVNlY3Rpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ZGVwZW5kZW5jeU1hcFtcIkRhbUZpbGVcIl0gJiYgZGFtRmlsZUlkICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBwYWRkaW5nPXs3fSBwYWRkaW5nVG9wPXswfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXJpYW50PVwib3V0bGluZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yPVwiaW5oZXJpdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17YXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwYXRoID0gYXdhaXQgZGVwZW5kZW5jeU1hcFtcIkRhbUZpbGVcIl0ucmVzb2x2ZVBhdGgoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBvbGxvQ2xpZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGRhbUZpbGVJZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVybCA9IGNvbnRlbnRTY29wZS5tYXRjaC51cmwgKyBwYXRoO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cub3Blbih1cmwsIFwiX2JsYW5rXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnRJY29uPXs8T3Blbk5ld1RhYiAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5pbWFnZS5vcGVuSW5EYW1cIiBkZWZhdWx0TWVzc2FnZT1cIk9wZW4gaW4gREFNXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEaXZpZGVyIHN4PXt7IG1hcmdpbkxlZnQ6IDgsIG1hcmdpblJpZ2h0OiA4IH19IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBwYWRkaW5nPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDcm9wU2V0dGluZ3NGaWVsZHMgZGlzYWJsZWQ9e2luaGVyaXRlZERhbVNldHRpbmdzID09PSB1bmRlZmluZWQgPyBmYWxzZSA6IHZhbHVlcy51c2VJbmhlcml0ZWREYW1TZXR0aW5nc30gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0RpYWxvZ0NvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8RGlhbG9nQWN0aW9ucz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q2FuY2VsQnV0dG9uIHR5cGU9XCJidXR0b25cIiBvbkNsaWNrPXtvbkNsb3NlfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTYXZlQnV0dG9uIHR5cGU9XCJzdWJtaXRcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9EaWFsb2dBY3Rpb25zPlxuICAgICAgICAgICAgICAgICAgICA8L0RpYWxvZ0Zvcm1XcmFwcGVyPlxuICAgICAgICAgICAgICAgIDwvRGlhbG9nPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgPC9Gb3JtPlxuICAgICk7XG59XG5cbmludGVyZmFjZSBZZXNOb1N3aXRjaFByb3BzIHtcbiAgICBjaGVja2VkPzogYm9vbGVhbjtcbiAgICBvbkNoYW5nZT86IChldmVudDogQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pID0+IHZvaWQ7XG59XG5cbmNvbnN0IFllc05vU3dpdGNoID0gKHsgY2hlY2tlZCwgb25DaGFuZ2UgfTogWWVzTm9Td2l0Y2hQcm9wcykgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICAgIDxGb3JtQ29udHJvbExhYmVsXG4gICAgICAgICAgICBjb250cm9sPXs8U3dpdGNoIGNoZWNrZWQ9e2NoZWNrZWR9IG9uQ2hhbmdlPXtvbkNoYW5nZX0gLz59XG4gICAgICAgICAgICBsYWJlbD17Y2hlY2tlZCA/IDxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy55ZXN9IC8+IDogPEZvcm1hdHRlZE1lc3NhZ2Ugey4uLm1lc3NhZ2VzLm5vfSAvPn1cbiAgICAgICAgLz5cbiAgICApO1xufTtcblxuY29uc3QgRGlhbG9nRm9ybVdyYXBwZXIgPSBzdHlsZWQoXCJmb3JtXCIpYFxuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBtaW4tY29udGVudCBhdXRvIG1pbi1jb250ZW50O1xuICAgIGdyaWQtY29sdW1uLWdhcDogMHB4O1xuICAgIGdyaWQtcm93LWdhcDogMHB4O1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbmA7XG4iXX0= */",
46
+ styles: "display:grid;grid-template-columns:auto 320px;padding:0;padding-left:40px/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ibG9ja3MvaW1hZ2UvRWRpdEltYWdlRGlhbG9nLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnRThDIiwiZmlsZSI6Ii4uLy4uLy4uL3NyYy9ibG9ja3MvaW1hZ2UvRWRpdEltYWdlRGlhbG9nLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBcInJlYWN0LWltYWdlLWNyb3AvZGlzdC9SZWFjdENyb3AuY3NzXCI7XG5cbmltcG9ydCB7IHVzZUFwb2xsb0NsaWVudCB9IGZyb20gXCJAYXBvbGxvL2NsaWVudFwiO1xuaW1wb3J0IHsgQ2FuY2VsQnV0dG9uLCBGaWVsZCwgRm9ybVNlY3Rpb24sIG1lc3NhZ2VzLCBTYXZlQnV0dG9uIH0gZnJvbSBcIkBjb21ldC9hZG1pblwiO1xuaW1wb3J0IHsgT3Blbk5ld1RhYiB9IGZyb20gXCJAY29tZXQvYWRtaW4taWNvbnNcIjtcbmltcG9ydCB7XG4gICAgQm94LFxuICAgIEJ1dHRvbixcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1pbXBvcnRzXG4gICAgRGlhbG9nLFxuICAgIERpYWxvZ0FjdGlvbnMsXG4gICAgRGlhbG9nQ29udGVudCBhcyBNdWlEaWFsb2dDb250ZW50LFxuICAgIERpYWxvZ1RpdGxlLFxuICAgIERpdmlkZXIsXG4gICAgRm9ybUNvbnRyb2xMYWJlbCxcbiAgICBHcmlkLFxuICAgIFN3aXRjaCxcbiAgICBUeXBvZ3JhcGh5LFxufSBmcm9tIFwiQG11aS9tYXRlcmlhbFwiO1xuaW1wb3J0IHsgc3R5bGVkIH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWwvc3R5bGVzXCI7XG5pbXBvcnQgaXNFcXVhbCBmcm9tIFwibG9kYXNoLmlzZXF1YWxcIjtcbmltcG9ydCB7IHR5cGUgQ2hhbmdlRXZlbnQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEZvcm0gfSBmcm9tIFwicmVhY3QtZmluYWwtZm9ybVwiO1xuaW1wb3J0IHsgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gXCJyZWFjdC1pbnRsXCI7XG5cbmltcG9ydCB7IEltYWdlQ3JvcCB9IGZyb20gXCIuLi8uLi9jb21tb24vaW1hZ2UvSW1hZ2VDcm9wXCI7XG5pbXBvcnQgeyB1c2VDb250ZW50U2NvcGUgfSBmcm9tIFwiLi4vLi4vY29udGVudFNjb3BlL1Byb3ZpZGVyXCI7XG5pbXBvcnQgeyBDcm9wU2V0dGluZ3NGaWVsZHMgfSBmcm9tIFwiLi4vLi4vZGFtL0ZpbGVGb3JtL0Nyb3BTZXR0aW5nc0ZpZWxkc1wiO1xuaW1wb3J0IHsgdHlwZSBFZGl0SW1hZ2VGb3JtVmFsdWVzIH0gZnJvbSBcIi4uLy4uL2RhbS9GaWxlRm9ybS9FZGl0RmlsZVwiO1xuaW1wb3J0IHsgdXNlRGVwZW5kZW5jaWVzQ29uZmlnIH0gZnJvbSBcIi4uLy4uL2RlcGVuZGVuY2llcy9kZXBlbmRlbmNpZXNDb25maWdcIjtcbmltcG9ydCB7IHR5cGUgR1FMRm9jYWxQb2ludCB9IGZyb20gXCIuLi8uLi9ncmFwaHFsLmdlbmVyYXRlZFwiO1xuXG50eXBlIENyb3BBcmVhID0ge1xuICAgIGZvY2FsUG9pbnQ6IEdRTEZvY2FsUG9pbnQ7XG4gICAgd2lkdGg/OiBudW1iZXI7XG4gICAgaGVpZ2h0PzogbnVtYmVyO1xuICAgIHg/OiBudW1iZXI7XG4gICAgeT86IG51bWJlcjtcbn07XG5cbmNvbnN0IGltYWdlU3R5bGUgPSB7IG1heFdpZHRoOiBcIjYwdndcIiwgbWF4SGVpZ2h0OiBcIjcwdmhcIiB9O1xuXG5pbnRlcmZhY2UgRm9ybVZhbHVlcyBleHRlbmRzIEVkaXRJbWFnZUZvcm1WYWx1ZXMge1xuICAgIHVzZUluaGVyaXRlZERhbVNldHRpbmdzPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgICBpbWFnZToge1xuICAgICAgICBuYW1lOiBzdHJpbmc7XG4gICAgICAgIHVybDogc3RyaW5nO1xuICAgICAgICB3aWR0aDogbnVtYmVyO1xuICAgICAgICBoZWlnaHQ6IG51bWJlcjtcbiAgICAgICAgc2l6ZT86IG51bWJlcjtcbiAgICB9O1xuICAgIGRhbUZpbGVJZDogc3RyaW5nO1xuICAgIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gICAgaW5pdGlhbFZhbHVlczoge1xuICAgICAgICB1c2VJbmhlcml0ZWREYW1TZXR0aW5ncz86IGJvb2xlYW47XG4gICAgICAgIGNyb3BBcmVhPzogQ3JvcEFyZWE7XG4gICAgfTtcbiAgICBvblN1Ym1pdDogKGNyb3BBcmVhOiBDcm9wQXJlYSB8IHVuZGVmaW5lZCkgPT4gdm9pZDtcbiAgICBpbmhlcml0ZWREYW1TZXR0aW5ncz86IHsgY3JvcEFyZWE6IENyb3BBcmVhIH07XG59XG5cbmNvbnN0IERpYWxvZ0NvbnRlbnQgPSBzdHlsZWQoTXVpRGlhbG9nQ29udGVudClgXG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMzIwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG5gO1xuXG5leHBvcnQgZnVuY3Rpb24gRWRpdEltYWdlRGlhbG9nKHsgaW1hZ2UsIGluaXRpYWxWYWx1ZXMsIG9uU3VibWl0LCBvbkNsb3NlLCBpbmhlcml0ZWREYW1TZXR0aW5ncywgZGFtRmlsZUlkIH06IFByb3BzKSB7XG4gICAgY29uc3QgY29udGVudFNjb3BlID0gdXNlQ29udGVudFNjb3BlKCk7XG4gICAgY29uc3QgYXBvbGxvQ2xpZW50ID0gdXNlQXBvbGxvQ2xpZW50KCk7XG4gICAgY29uc3QgeyBlbnRpdHlEZXBlbmRlbmN5TWFwIH0gPSB1c2VEZXBlbmRlbmNpZXNDb25maWcoKTtcblxuICAgIGNvbnN0IGhhbmRsZVN1Ym1pdCA9ICh2YWx1ZXM6IEZvcm1WYWx1ZXMpID0+IHtcbiAgICAgICAgaWYgKHZhbHVlcy51c2VJbmhlcml0ZWREYW1TZXR0aW5ncykge1xuICAgICAgICAgICAgb25TdWJtaXQodW5kZWZpbmVkKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGxldCBjcm9wQXJlYTogQ3JvcEFyZWE7XG5cbiAgICAgICAgICAgIGlmICh2YWx1ZXMuZm9jYWxQb2ludCA9PT0gXCJTTUFSVFwiKSB7XG4gICAgICAgICAgICAgICAgY3JvcEFyZWEgPSB7XG4gICAgICAgICAgICAgICAgICAgIGZvY2FsUG9pbnQ6IFwiU01BUlRcIixcbiAgICAgICAgICAgICAgICAgICAgeDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICB5OiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNyb3BBcmVhID0ge1xuICAgICAgICAgICAgICAgICAgICBmb2NhbFBvaW50OiB2YWx1ZXMuZm9jYWxQb2ludCA/PyB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIHg6IHZhbHVlcy5jcm9wLngsXG4gICAgICAgICAgICAgICAgICAgIHk6IHZhbHVlcy5jcm9wLnksXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2YWx1ZXMuY3JvcC53aWR0aCA/IE1hdGguY2VpbCh2YWx1ZXMuY3JvcC53aWR0aCkgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogdmFsdWVzLmNyb3AuaGVpZ2h0ID8gTWF0aC5jZWlsKHZhbHVlcy5jcm9wLmhlaWdodCkgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgb25TdWJtaXQoY3JvcEFyZWEpO1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDxGb3JtXG4gICAgICAgICAgICBvblN1Ym1pdD17aGFuZGxlU3VibWl0fVxuICAgICAgICAgICAgaW5pdGlhbFZhbHVlcz17e1xuICAgICAgICAgICAgICAgIHVzZUluaGVyaXRlZERhbVNldHRpbmdzOiBpbml0aWFsVmFsdWVzLnVzZUluaGVyaXRlZERhbVNldHRpbmdzLFxuICAgICAgICAgICAgICAgIGZvY2FsUG9pbnQ6IGluaXRpYWxWYWx1ZXMuY3JvcEFyZWE/LmZvY2FsUG9pbnQgPz8gXCJTTUFSVFwiLFxuICAgICAgICAgICAgICAgIGNyb3A6IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGluaXRpYWxWYWx1ZXMuY3JvcEFyZWE/LndpZHRoID8/IDEwMCxcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBpbml0aWFsVmFsdWVzLmNyb3BBcmVhPy5oZWlnaHQgPz8gMTAwLFxuICAgICAgICAgICAgICAgICAgICB4OiBpbml0aWFsVmFsdWVzLmNyb3BBcmVhPy54ID8/IDAsXG4gICAgICAgICAgICAgICAgICAgIHk6IGluaXRpYWxWYWx1ZXMuY3JvcEFyZWE/LnkgPz8gMCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIGluaXRpYWxWYWx1ZXNFcXVhbD17aXNFcXVhbH1cbiAgICAgICAgPlxuICAgICAgICAgICAgeyh7IGhhbmRsZVN1Ym1pdCwgdmFsdWVzIH0pID0+IChcbiAgICAgICAgICAgICAgICA8RGlhbG9nIG9wZW4gb25DbG9zZT17b25DbG9zZX0gbWF4V2lkdGg9e2ZhbHNlfT5cbiAgICAgICAgICAgICAgICAgICAgPERpYWxvZ0Zvcm1XcmFwcGVyIG9uU3VibWl0PXtoYW5kbGVTdWJtaXR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPERpYWxvZ1RpdGxlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIGNvbnRhaW5lciBqdXN0aWZ5Q29udGVudD1cInNwYWNlLWJldHdlZW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgaXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29tZXQuYmxvY2tzLmltYWdlLmVkaXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZT1cIkVkaXQgaW1hZ2Ug4oCee2ZpbGVuYW1lfeKAnVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZW5hbWU6IGltYWdlLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBpdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2UuZGltZW5zaW9uc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlPVwie3dpZHRofXh7aGVpZ2h0fXB4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogaW1hZ2Uud2lkdGgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGltYWdlLmhlaWdodCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZS5zaXplICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29tZXQuYmxvY2tzLmltYWdlLnNpemVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U9XCIgfCB7c2l6ZSwgbnVtYmVyLCA6OiAuMDAgbWVhc3VyZS11bml0L2RpZ2l0YWwtbWVnYWJ5dGV9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU6IGltYWdlLnNpemUgLyAxMDI0IC8gMTAyNCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvRGlhbG9nVGl0bGU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8RGlhbG9nQ29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDcm9wIHNyYz17aW1hZ2UudXJsfSBpbWFnZVN0eWxlPXtpbWFnZVN0eWxlfSBkaXNhYmxlZD17dmFsdWVzLnVzZUluaGVyaXRlZERhbVNldHRpbmdzfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpbmhlcml0ZWREYW1TZXR0aW5ncyAhPT0gdW5kZWZpbmVkICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBwYWRkaW5nPXs4fSBwYWRkaW5nVG9wPXswfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1TZWN0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT17PEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2UuZGFtXCIgZGVmYXVsdE1lc3NhZ2U9XCJEQU1cIiAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVNYXJnaW5Cb3R0b21cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cInVzZUluaGVyaXRlZERhbVNldHRpbmdzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImNvbWV0LmJsb2Nrcy5pbWFnZS51c2VJbmhlcml0ZWREYW1TZXR0aW5nc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZT1cIlVzZSBpbmhlcml0ZWQgREFNIHNldHRpbmdzP1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyh7IGlucHV0OiB7IGNoZWNrZWQsIG9uQ2hhbmdlIH0gfSkgPT4gPFllc05vU3dpdGNoIGNoZWNrZWQ9e2NoZWNrZWR9IG9uQ2hhbmdlPXtvbkNoYW5nZX0gLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ZpZWxkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm1TZWN0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2VudGl0eURlcGVuZGVuY3lNYXBbXCJEYW1GaWxlXCJdICYmIGRhbUZpbGVJZCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggcGFkZGluZz17N30gcGFkZGluZ1RvcD17MH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyaWFudD1cIm91dGxpbmVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcj1cImluaGVyaXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2FzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcGF0aCA9IGF3YWl0IGVudGl0eURlcGVuZGVuY3lNYXBbXCJEYW1GaWxlXCJdLnJlc29sdmVQYXRoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwb2xsb0NsaWVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBkYW1GaWxlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1cmwgPSBjb250ZW50U2NvcGUubWF0Y2gudXJsICsgcGF0aDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93Lm9wZW4odXJsLCBcIl9ibGFua1wiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0SWNvbj17PE9wZW5OZXdUYWIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2Uub3BlbkluRGFtXCIgZGVmYXVsdE1lc3NhZ2U9XCJPcGVuIGluIERBTVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RGl2aWRlciBzeD17eyBtYXJnaW5MZWZ0OiA4LCBtYXJnaW5SaWdodDogOCB9fSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggcGFkZGluZz17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q3JvcFNldHRpbmdzRmllbGRzIGRpc2FibGVkPXtpbmhlcml0ZWREYW1TZXR0aW5ncyA9PT0gdW5kZWZpbmVkID8gZmFsc2UgOiB2YWx1ZXMudXNlSW5oZXJpdGVkRGFtU2V0dGluZ3N9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9EaWFsb2dDb250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgPERpYWxvZ0FjdGlvbnM+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPENhbmNlbEJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgb25DbGljaz17b25DbG9zZX0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2F2ZUJ1dHRvbiB0eXBlPVwic3VibWl0XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvRGlhbG9nQWN0aW9ucz5cbiAgICAgICAgICAgICAgICAgICAgPC9EaWFsb2dGb3JtV3JhcHBlcj5cbiAgICAgICAgICAgICAgICA8L0RpYWxvZz5cbiAgICAgICAgICAgICl9XG4gICAgICAgIDwvRm9ybT5cbiAgICApO1xufVxuXG5pbnRlcmZhY2UgWWVzTm9Td2l0Y2hQcm9wcyB7XG4gICAgY2hlY2tlZD86IGJvb2xlYW47XG4gICAgb25DaGFuZ2U/OiAoZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSA9PiB2b2lkO1xufVxuXG5jb25zdCBZZXNOb1N3aXRjaCA9ICh7IGNoZWNrZWQsIG9uQ2hhbmdlIH06IFllc05vU3dpdGNoUHJvcHMpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgICA8Rm9ybUNvbnRyb2xMYWJlbFxuICAgICAgICAgICAgY29udHJvbD17PFN3aXRjaCBjaGVja2VkPXtjaGVja2VkfSBvbkNoYW5nZT17b25DaGFuZ2V9IC8+fVxuICAgICAgICAgICAgbGFiZWw9e2NoZWNrZWQgPyA8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMueWVzfSAvPiA6IDxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy5ub30gLz59XG4gICAgICAgIC8+XG4gICAgKTtcbn07XG5cbmNvbnN0IERpYWxvZ0Zvcm1XcmFwcGVyID0gc3R5bGVkKFwiZm9ybVwiKWBcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogbWluLWNvbnRlbnQgYXV0byBtaW4tY29udGVudDtcbiAgICBncmlkLWNvbHVtbi1nYXA6IDBweDtcbiAgICBncmlkLXJvdy1nYXA6IDBweDtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5gO1xuIl19 */",
47
47
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
48
48
  });
49
49
  function EditImageDialog(_ref) {
@@ -56,7 +56,8 @@ function EditImageDialog(_ref) {
56
56
  damFileId = _ref.damFileId;
57
57
  var contentScope = (0, _Provider.useContentScope)();
58
58
  var apolloClient = (0, _client.useApolloClient)();
59
- var dependencyMap = (0, _DependenciesConfig.useDependenciesConfig)();
59
+ var _useDependenciesConfi = (0, _dependenciesConfig.useDependenciesConfig)(),
60
+ entityDependencyMap = _useDependenciesConfi.entityDependencyMap;
60
61
  var handleSubmit = function handleSubmit(values) {
61
62
  if (values.useInheritedDamSettings) {
62
63
  onSubmit(undefined);
@@ -174,7 +175,7 @@ function EditImageDialog(_ref) {
174
175
  }
175
176
  })
176
177
  })
177
- }), dependencyMap["DamFile"] && damFileId && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
178
+ }), entityDependencyMap["DamFile"] && damFileId && /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Box, {
178
179
  padding: 7,
179
180
  paddingTop: 0,
180
181
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Button, {
@@ -186,7 +187,7 @@ function EditImageDialog(_ref) {
186
187
  while (1) switch (_context.prev = _context.next) {
187
188
  case 0:
188
189
  _context.next = 2;
189
- return dependencyMap["DamFile"].resolvePath({
190
+ return entityDependencyMap["DamFile"].resolvePath({
190
191
  apolloClient: apolloClient,
191
192
  id: damFileId
192
193
  });
@@ -253,6 +254,6 @@ var DialogFormWrapper = /*#__PURE__*/(0, _styles.styled)("form", process.env.NOD
253
254
  styles: "display:grid;grid-template-columns:1fr;grid-template-rows:min-content auto min-content;grid-column-gap:0px;grid-row-gap:0px;max-height:100%;overflow:hidden"
254
255
  } : {
255
256
  name: "kgh6ty",
256
- styles: "display:grid;grid-template-columns:1fr;grid-template-rows:min-content auto min-content;grid-column-gap:0px;grid-row-gap:0px;max-height:100%;overflow:hidden/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ibG9ja3MvaW1hZ2UvRWRpdEltYWdlRGlhbG9nLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyT3dDIiwiZmlsZSI6Ii4uLy4uLy4uL3NyYy9ibG9ja3MvaW1hZ2UvRWRpdEltYWdlRGlhbG9nLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBcInJlYWN0LWltYWdlLWNyb3AvZGlzdC9SZWFjdENyb3AuY3NzXCI7XG5cbmltcG9ydCB7IHVzZUFwb2xsb0NsaWVudCB9IGZyb20gXCJAYXBvbGxvL2NsaWVudFwiO1xuaW1wb3J0IHsgQ2FuY2VsQnV0dG9uLCBGaWVsZCwgRm9ybVNlY3Rpb24sIG1lc3NhZ2VzLCBTYXZlQnV0dG9uIH0gZnJvbSBcIkBjb21ldC9hZG1pblwiO1xuaW1wb3J0IHsgT3Blbk5ld1RhYiB9IGZyb20gXCJAY29tZXQvYWRtaW4taWNvbnNcIjtcbmltcG9ydCB7XG4gICAgQm94LFxuICAgIEJ1dHRvbixcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1pbXBvcnRzXG4gICAgRGlhbG9nLFxuICAgIERpYWxvZ0FjdGlvbnMsXG4gICAgRGlhbG9nQ29udGVudCBhcyBNdWlEaWFsb2dDb250ZW50LFxuICAgIERpYWxvZ1RpdGxlLFxuICAgIERpdmlkZXIsXG4gICAgRm9ybUNvbnRyb2xMYWJlbCxcbiAgICBHcmlkLFxuICAgIFN3aXRjaCxcbiAgICBUeXBvZ3JhcGh5LFxufSBmcm9tIFwiQG11aS9tYXRlcmlhbFwiO1xuaW1wb3J0IHsgc3R5bGVkIH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWwvc3R5bGVzXCI7XG5pbXBvcnQgaXNFcXVhbCBmcm9tIFwibG9kYXNoLmlzZXF1YWxcIjtcbmltcG9ydCB7IHR5cGUgQ2hhbmdlRXZlbnQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEZvcm0gfSBmcm9tIFwicmVhY3QtZmluYWwtZm9ybVwiO1xuaW1wb3J0IHsgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gXCJyZWFjdC1pbnRsXCI7XG5cbmltcG9ydCB7IEltYWdlQ3JvcCB9IGZyb20gXCIuLi8uLi9jb21tb24vaW1hZ2UvSW1hZ2VDcm9wXCI7XG5pbXBvcnQgeyB1c2VDb250ZW50U2NvcGUgfSBmcm9tIFwiLi4vLi4vY29udGVudFNjb3BlL1Byb3ZpZGVyXCI7XG5pbXBvcnQgeyBDcm9wU2V0dGluZ3NGaWVsZHMgfSBmcm9tIFwiLi4vLi4vZGFtL0ZpbGVGb3JtL0Nyb3BTZXR0aW5nc0ZpZWxkc1wiO1xuaW1wb3J0IHsgdHlwZSBFZGl0SW1hZ2VGb3JtVmFsdWVzIH0gZnJvbSBcIi4uLy4uL2RhbS9GaWxlRm9ybS9FZGl0RmlsZVwiO1xuaW1wb3J0IHsgdXNlRGVwZW5kZW5jaWVzQ29uZmlnIH0gZnJvbSBcIi4uLy4uL2RlcGVuZGVuY2llcy9EZXBlbmRlbmNpZXNDb25maWdcIjtcbmltcG9ydCB7IHR5cGUgR1FMRm9jYWxQb2ludCB9IGZyb20gXCIuLi8uLi9ncmFwaHFsLmdlbmVyYXRlZFwiO1xuXG50eXBlIENyb3BBcmVhID0ge1xuICAgIGZvY2FsUG9pbnQ6IEdRTEZvY2FsUG9pbnQ7XG4gICAgd2lkdGg/OiBudW1iZXI7XG4gICAgaGVpZ2h0PzogbnVtYmVyO1xuICAgIHg/OiBudW1iZXI7XG4gICAgeT86IG51bWJlcjtcbn07XG5cbmNvbnN0IGltYWdlU3R5bGUgPSB7IG1heFdpZHRoOiBcIjYwdndcIiwgbWF4SGVpZ2h0OiBcIjcwdmhcIiB9O1xuXG5pbnRlcmZhY2UgRm9ybVZhbHVlcyBleHRlbmRzIEVkaXRJbWFnZUZvcm1WYWx1ZXMge1xuICAgIHVzZUluaGVyaXRlZERhbVNldHRpbmdzPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgICBpbWFnZToge1xuICAgICAgICBuYW1lOiBzdHJpbmc7XG4gICAgICAgIHVybDogc3RyaW5nO1xuICAgICAgICB3aWR0aDogbnVtYmVyO1xuICAgICAgICBoZWlnaHQ6IG51bWJlcjtcbiAgICAgICAgc2l6ZT86IG51bWJlcjtcbiAgICB9O1xuICAgIGRhbUZpbGVJZDogc3RyaW5nO1xuICAgIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gICAgaW5pdGlhbFZhbHVlczoge1xuICAgICAgICB1c2VJbmhlcml0ZWREYW1TZXR0aW5ncz86IGJvb2xlYW47XG4gICAgICAgIGNyb3BBcmVhPzogQ3JvcEFyZWE7XG4gICAgfTtcbiAgICBvblN1Ym1pdDogKGNyb3BBcmVhOiBDcm9wQXJlYSB8IHVuZGVmaW5lZCkgPT4gdm9pZDtcbiAgICBpbmhlcml0ZWREYW1TZXR0aW5ncz86IHsgY3JvcEFyZWE6IENyb3BBcmVhIH07XG59XG5cbmNvbnN0IERpYWxvZ0NvbnRlbnQgPSBzdHlsZWQoTXVpRGlhbG9nQ29udGVudClgXG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMzIwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG5gO1xuXG5leHBvcnQgZnVuY3Rpb24gRWRpdEltYWdlRGlhbG9nKHsgaW1hZ2UsIGluaXRpYWxWYWx1ZXMsIG9uU3VibWl0LCBvbkNsb3NlLCBpbmhlcml0ZWREYW1TZXR0aW5ncywgZGFtRmlsZUlkIH06IFByb3BzKSB7XG4gICAgY29uc3QgY29udGVudFNjb3BlID0gdXNlQ29udGVudFNjb3BlKCk7XG4gICAgY29uc3QgYXBvbGxvQ2xpZW50ID0gdXNlQXBvbGxvQ2xpZW50KCk7XG4gICAgY29uc3QgZGVwZW5kZW5jeU1hcCA9IHVzZURlcGVuZGVuY2llc0NvbmZpZygpO1xuXG4gICAgY29uc3QgaGFuZGxlU3VibWl0ID0gKHZhbHVlczogRm9ybVZhbHVlcykgPT4ge1xuICAgICAgICBpZiAodmFsdWVzLnVzZUluaGVyaXRlZERhbVNldHRpbmdzKSB7XG4gICAgICAgICAgICBvblN1Ym1pdCh1bmRlZmluZWQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbGV0IGNyb3BBcmVhOiBDcm9wQXJlYTtcblxuICAgICAgICAgICAgaWYgKHZhbHVlcy5mb2NhbFBvaW50ID09PSBcIlNNQVJUXCIpIHtcbiAgICAgICAgICAgICAgICBjcm9wQXJlYSA9IHtcbiAgICAgICAgICAgICAgICAgICAgZm9jYWxQb2ludDogXCJTTUFSVFwiLFxuICAgICAgICAgICAgICAgICAgICB4OiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIHk6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY3JvcEFyZWEgPSB7XG4gICAgICAgICAgICAgICAgICAgIGZvY2FsUG9pbnQ6IHZhbHVlcy5mb2NhbFBvaW50ID8/IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgeDogdmFsdWVzLmNyb3AueCxcbiAgICAgICAgICAgICAgICAgICAgeTogdmFsdWVzLmNyb3AueSxcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHZhbHVlcy5jcm9wLndpZHRoID8gTWF0aC5jZWlsKHZhbHVlcy5jcm9wLndpZHRoKSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiB2YWx1ZXMuY3JvcC5oZWlnaHQgPyBNYXRoLmNlaWwodmFsdWVzLmNyb3AuaGVpZ2h0KSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBvblN1Ym1pdChjcm9wQXJlYSk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgcmV0dXJuIChcbiAgICAgICAgPEZvcm1cbiAgICAgICAgICAgIG9uU3VibWl0PXtoYW5kbGVTdWJtaXR9XG4gICAgICAgICAgICBpbml0aWFsVmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgdXNlSW5oZXJpdGVkRGFtU2V0dGluZ3M6IGluaXRpYWxWYWx1ZXMudXNlSW5oZXJpdGVkRGFtU2V0dGluZ3MsXG4gICAgICAgICAgICAgICAgZm9jYWxQb2ludDogaW5pdGlhbFZhbHVlcy5jcm9wQXJlYT8uZm9jYWxQb2ludCA/PyBcIlNNQVJUXCIsXG4gICAgICAgICAgICAgICAgY3JvcDoge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogaW5pdGlhbFZhbHVlcy5jcm9wQXJlYT8ud2lkdGggPz8gMTAwLFxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGluaXRpYWxWYWx1ZXMuY3JvcEFyZWE/LmhlaWdodCA/PyAxMDAsXG4gICAgICAgICAgICAgICAgICAgIHg6IGluaXRpYWxWYWx1ZXMuY3JvcEFyZWE/LnggPz8gMCxcbiAgICAgICAgICAgICAgICAgICAgeTogaW5pdGlhbFZhbHVlcy5jcm9wQXJlYT8ueSA/PyAwLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgaW5pdGlhbFZhbHVlc0VxdWFsPXtpc0VxdWFsfVxuICAgICAgICA+XG4gICAgICAgICAgICB7KHsgaGFuZGxlU3VibWl0LCB2YWx1ZXMgfSkgPT4gKFxuICAgICAgICAgICAgICAgIDxEaWFsb2cgb3BlbiBvbkNsb3NlPXtvbkNsb3NlfSBtYXhXaWR0aD17ZmFsc2V9PlxuICAgICAgICAgICAgICAgICAgICA8RGlhbG9nRm9ybVdyYXBwZXIgb25TdWJtaXQ9e2hhbmRsZVN1Ym1pdH0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8RGlhbG9nVGl0bGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgY29udGFpbmVyIGp1c3RpZnlDb250ZW50PVwic3BhY2UtYmV0d2VlblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBpdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2UuZWRpdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlPVwiRWRpdCBpbWFnZSDigJ57ZmlsZW5hbWV94oCdXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZTogaW1hZ2UubmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIGl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImNvbWV0LmJsb2Nrcy5pbWFnZS5kaW1lbnNpb25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U9XCJ7d2lkdGh9eHtoZWlnaHR9cHhcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBpbWFnZS53aWR0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogaW1hZ2UuaGVpZ2h0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2ltYWdlLnNpemUgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2Uuc2l6ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZT1cIiB8IHtzaXplLCBudW1iZXIsIDo6IC4wMCBtZWFzdXJlLXVuaXQvZGlnaXRhbC1tZWdhYnl0ZX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZTogaW1hZ2Uuc2l6ZSAvIDEwMjQgLyAxMDI0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9EaWFsb2dUaXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxEaWFsb2dDb250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJbWFnZUNyb3Agc3JjPXtpbWFnZS51cmx9IGltYWdlU3R5bGU9e2ltYWdlU3R5bGV9IGRpc2FibGVkPXt2YWx1ZXMudXNlSW5oZXJpdGVkRGFtU2V0dGluZ3N9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2luaGVyaXRlZERhbVNldHRpbmdzICE9PSB1bmRlZmluZWQgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmc9ezh9IHBhZGRpbmdUb3A9ezB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybVNlY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPXs8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5pbWFnZS5kYW1cIiBkZWZhdWx0TWVzc2FnZT1cIkRBTVwiIC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZU1hcmdpbkJvdHRvbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwidXNlSW5oZXJpdGVkRGFtU2V0dGluZ3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29tZXQuYmxvY2tzLmltYWdlLnVzZUluaGVyaXRlZERhbVNldHRpbmdzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlPVwiVXNlIGluaGVyaXRlZCBEQU0gc2V0dGluZ3M/XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgaW5wdXQ6IHsgY2hlY2tlZCwgb25DaGFuZ2UgfSB9KSA9PiA8WWVzTm9Td2l0Y2ggY2hlY2tlZD17Y2hlY2tlZH0gb25DaGFuZ2U9e29uQ2hhbmdlfSAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybVNlY3Rpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ZGVwZW5kZW5jeU1hcFtcIkRhbUZpbGVcIl0gJiYgZGFtRmlsZUlkICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBwYWRkaW5nPXs3fSBwYWRkaW5nVG9wPXswfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXJpYW50PVwib3V0bGluZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yPVwiaW5oZXJpdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17YXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwYXRoID0gYXdhaXQgZGVwZW5kZW5jeU1hcFtcIkRhbUZpbGVcIl0ucmVzb2x2ZVBhdGgoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBvbGxvQ2xpZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGRhbUZpbGVJZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVybCA9IGNvbnRlbnRTY29wZS5tYXRjaC51cmwgKyBwYXRoO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cub3Blbih1cmwsIFwiX2JsYW5rXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnRJY29uPXs8T3Blbk5ld1RhYiAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5pbWFnZS5vcGVuSW5EYW1cIiBkZWZhdWx0TWVzc2FnZT1cIk9wZW4gaW4gREFNXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEaXZpZGVyIHN4PXt7IG1hcmdpbkxlZnQ6IDgsIG1hcmdpblJpZ2h0OiA4IH19IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBwYWRkaW5nPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDcm9wU2V0dGluZ3NGaWVsZHMgZGlzYWJsZWQ9e2luaGVyaXRlZERhbVNldHRpbmdzID09PSB1bmRlZmluZWQgPyBmYWxzZSA6IHZhbHVlcy51c2VJbmhlcml0ZWREYW1TZXR0aW5nc30gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0RpYWxvZ0NvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8RGlhbG9nQWN0aW9ucz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q2FuY2VsQnV0dG9uIHR5cGU9XCJidXR0b25cIiBvbkNsaWNrPXtvbkNsb3NlfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTYXZlQnV0dG9uIHR5cGU9XCJzdWJtaXRcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9EaWFsb2dBY3Rpb25zPlxuICAgICAgICAgICAgICAgICAgICA8L0RpYWxvZ0Zvcm1XcmFwcGVyPlxuICAgICAgICAgICAgICAgIDwvRGlhbG9nPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgPC9Gb3JtPlxuICAgICk7XG59XG5cbmludGVyZmFjZSBZZXNOb1N3aXRjaFByb3BzIHtcbiAgICBjaGVja2VkPzogYm9vbGVhbjtcbiAgICBvbkNoYW5nZT86IChldmVudDogQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pID0+IHZvaWQ7XG59XG5cbmNvbnN0IFllc05vU3dpdGNoID0gKHsgY2hlY2tlZCwgb25DaGFuZ2UgfTogWWVzTm9Td2l0Y2hQcm9wcykgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICAgIDxGb3JtQ29udHJvbExhYmVsXG4gICAgICAgICAgICBjb250cm9sPXs8U3dpdGNoIGNoZWNrZWQ9e2NoZWNrZWR9IG9uQ2hhbmdlPXtvbkNoYW5nZX0gLz59XG4gICAgICAgICAgICBsYWJlbD17Y2hlY2tlZCA/IDxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy55ZXN9IC8+IDogPEZvcm1hdHRlZE1lc3NhZ2Ugey4uLm1lc3NhZ2VzLm5vfSAvPn1cbiAgICAgICAgLz5cbiAgICApO1xufTtcblxuY29uc3QgRGlhbG9nRm9ybVdyYXBwZXIgPSBzdHlsZWQoXCJmb3JtXCIpYFxuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBtaW4tY29udGVudCBhdXRvIG1pbi1jb250ZW50O1xuICAgIGdyaWQtY29sdW1uLWdhcDogMHB4O1xuICAgIGdyaWQtcm93LWdhcDogMHB4O1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbmA7XG4iXX0= */",
257
+ styles: "display:grid;grid-template-columns:1fr;grid-template-rows:min-content auto min-content;grid-column-gap:0px;grid-row-gap:0px;max-height:100%;overflow:hidden/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ibG9ja3MvaW1hZ2UvRWRpdEltYWdlRGlhbG9nLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyT3dDIiwiZmlsZSI6Ii4uLy4uLy4uL3NyYy9ibG9ja3MvaW1hZ2UvRWRpdEltYWdlRGlhbG9nLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBcInJlYWN0LWltYWdlLWNyb3AvZGlzdC9SZWFjdENyb3AuY3NzXCI7XG5cbmltcG9ydCB7IHVzZUFwb2xsb0NsaWVudCB9IGZyb20gXCJAYXBvbGxvL2NsaWVudFwiO1xuaW1wb3J0IHsgQ2FuY2VsQnV0dG9uLCBGaWVsZCwgRm9ybVNlY3Rpb24sIG1lc3NhZ2VzLCBTYXZlQnV0dG9uIH0gZnJvbSBcIkBjb21ldC9hZG1pblwiO1xuaW1wb3J0IHsgT3Blbk5ld1RhYiB9IGZyb20gXCJAY29tZXQvYWRtaW4taWNvbnNcIjtcbmltcG9ydCB7XG4gICAgQm94LFxuICAgIEJ1dHRvbixcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1pbXBvcnRzXG4gICAgRGlhbG9nLFxuICAgIERpYWxvZ0FjdGlvbnMsXG4gICAgRGlhbG9nQ29udGVudCBhcyBNdWlEaWFsb2dDb250ZW50LFxuICAgIERpYWxvZ1RpdGxlLFxuICAgIERpdmlkZXIsXG4gICAgRm9ybUNvbnRyb2xMYWJlbCxcbiAgICBHcmlkLFxuICAgIFN3aXRjaCxcbiAgICBUeXBvZ3JhcGh5LFxufSBmcm9tIFwiQG11aS9tYXRlcmlhbFwiO1xuaW1wb3J0IHsgc3R5bGVkIH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWwvc3R5bGVzXCI7XG5pbXBvcnQgaXNFcXVhbCBmcm9tIFwibG9kYXNoLmlzZXF1YWxcIjtcbmltcG9ydCB7IHR5cGUgQ2hhbmdlRXZlbnQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEZvcm0gfSBmcm9tIFwicmVhY3QtZmluYWwtZm9ybVwiO1xuaW1wb3J0IHsgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gXCJyZWFjdC1pbnRsXCI7XG5cbmltcG9ydCB7IEltYWdlQ3JvcCB9IGZyb20gXCIuLi8uLi9jb21tb24vaW1hZ2UvSW1hZ2VDcm9wXCI7XG5pbXBvcnQgeyB1c2VDb250ZW50U2NvcGUgfSBmcm9tIFwiLi4vLi4vY29udGVudFNjb3BlL1Byb3ZpZGVyXCI7XG5pbXBvcnQgeyBDcm9wU2V0dGluZ3NGaWVsZHMgfSBmcm9tIFwiLi4vLi4vZGFtL0ZpbGVGb3JtL0Nyb3BTZXR0aW5nc0ZpZWxkc1wiO1xuaW1wb3J0IHsgdHlwZSBFZGl0SW1hZ2VGb3JtVmFsdWVzIH0gZnJvbSBcIi4uLy4uL2RhbS9GaWxlRm9ybS9FZGl0RmlsZVwiO1xuaW1wb3J0IHsgdXNlRGVwZW5kZW5jaWVzQ29uZmlnIH0gZnJvbSBcIi4uLy4uL2RlcGVuZGVuY2llcy9kZXBlbmRlbmNpZXNDb25maWdcIjtcbmltcG9ydCB7IHR5cGUgR1FMRm9jYWxQb2ludCB9IGZyb20gXCIuLi8uLi9ncmFwaHFsLmdlbmVyYXRlZFwiO1xuXG50eXBlIENyb3BBcmVhID0ge1xuICAgIGZvY2FsUG9pbnQ6IEdRTEZvY2FsUG9pbnQ7XG4gICAgd2lkdGg/OiBudW1iZXI7XG4gICAgaGVpZ2h0PzogbnVtYmVyO1xuICAgIHg/OiBudW1iZXI7XG4gICAgeT86IG51bWJlcjtcbn07XG5cbmNvbnN0IGltYWdlU3R5bGUgPSB7IG1heFdpZHRoOiBcIjYwdndcIiwgbWF4SGVpZ2h0OiBcIjcwdmhcIiB9O1xuXG5pbnRlcmZhY2UgRm9ybVZhbHVlcyBleHRlbmRzIEVkaXRJbWFnZUZvcm1WYWx1ZXMge1xuICAgIHVzZUluaGVyaXRlZERhbVNldHRpbmdzPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgICBpbWFnZToge1xuICAgICAgICBuYW1lOiBzdHJpbmc7XG4gICAgICAgIHVybDogc3RyaW5nO1xuICAgICAgICB3aWR0aDogbnVtYmVyO1xuICAgICAgICBoZWlnaHQ6IG51bWJlcjtcbiAgICAgICAgc2l6ZT86IG51bWJlcjtcbiAgICB9O1xuICAgIGRhbUZpbGVJZDogc3RyaW5nO1xuICAgIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gICAgaW5pdGlhbFZhbHVlczoge1xuICAgICAgICB1c2VJbmhlcml0ZWREYW1TZXR0aW5ncz86IGJvb2xlYW47XG4gICAgICAgIGNyb3BBcmVhPzogQ3JvcEFyZWE7XG4gICAgfTtcbiAgICBvblN1Ym1pdDogKGNyb3BBcmVhOiBDcm9wQXJlYSB8IHVuZGVmaW5lZCkgPT4gdm9pZDtcbiAgICBpbmhlcml0ZWREYW1TZXR0aW5ncz86IHsgY3JvcEFyZWE6IENyb3BBcmVhIH07XG59XG5cbmNvbnN0IERpYWxvZ0NvbnRlbnQgPSBzdHlsZWQoTXVpRGlhbG9nQ29udGVudClgXG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMzIwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG5gO1xuXG5leHBvcnQgZnVuY3Rpb24gRWRpdEltYWdlRGlhbG9nKHsgaW1hZ2UsIGluaXRpYWxWYWx1ZXMsIG9uU3VibWl0LCBvbkNsb3NlLCBpbmhlcml0ZWREYW1TZXR0aW5ncywgZGFtRmlsZUlkIH06IFByb3BzKSB7XG4gICAgY29uc3QgY29udGVudFNjb3BlID0gdXNlQ29udGVudFNjb3BlKCk7XG4gICAgY29uc3QgYXBvbGxvQ2xpZW50ID0gdXNlQXBvbGxvQ2xpZW50KCk7XG4gICAgY29uc3QgeyBlbnRpdHlEZXBlbmRlbmN5TWFwIH0gPSB1c2VEZXBlbmRlbmNpZXNDb25maWcoKTtcblxuICAgIGNvbnN0IGhhbmRsZVN1Ym1pdCA9ICh2YWx1ZXM6IEZvcm1WYWx1ZXMpID0+IHtcbiAgICAgICAgaWYgKHZhbHVlcy51c2VJbmhlcml0ZWREYW1TZXR0aW5ncykge1xuICAgICAgICAgICAgb25TdWJtaXQodW5kZWZpbmVkKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGxldCBjcm9wQXJlYTogQ3JvcEFyZWE7XG5cbiAgICAgICAgICAgIGlmICh2YWx1ZXMuZm9jYWxQb2ludCA9PT0gXCJTTUFSVFwiKSB7XG4gICAgICAgICAgICAgICAgY3JvcEFyZWEgPSB7XG4gICAgICAgICAgICAgICAgICAgIGZvY2FsUG9pbnQ6IFwiU01BUlRcIixcbiAgICAgICAgICAgICAgICAgICAgeDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICB5OiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNyb3BBcmVhID0ge1xuICAgICAgICAgICAgICAgICAgICBmb2NhbFBvaW50OiB2YWx1ZXMuZm9jYWxQb2ludCA/PyB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIHg6IHZhbHVlcy5jcm9wLngsXG4gICAgICAgICAgICAgICAgICAgIHk6IHZhbHVlcy5jcm9wLnksXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2YWx1ZXMuY3JvcC53aWR0aCA/IE1hdGguY2VpbCh2YWx1ZXMuY3JvcC53aWR0aCkgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogdmFsdWVzLmNyb3AuaGVpZ2h0ID8gTWF0aC5jZWlsKHZhbHVlcy5jcm9wLmhlaWdodCkgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgb25TdWJtaXQoY3JvcEFyZWEpO1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDxGb3JtXG4gICAgICAgICAgICBvblN1Ym1pdD17aGFuZGxlU3VibWl0fVxuICAgICAgICAgICAgaW5pdGlhbFZhbHVlcz17e1xuICAgICAgICAgICAgICAgIHVzZUluaGVyaXRlZERhbVNldHRpbmdzOiBpbml0aWFsVmFsdWVzLnVzZUluaGVyaXRlZERhbVNldHRpbmdzLFxuICAgICAgICAgICAgICAgIGZvY2FsUG9pbnQ6IGluaXRpYWxWYWx1ZXMuY3JvcEFyZWE/LmZvY2FsUG9pbnQgPz8gXCJTTUFSVFwiLFxuICAgICAgICAgICAgICAgIGNyb3A6IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGluaXRpYWxWYWx1ZXMuY3JvcEFyZWE/LndpZHRoID8/IDEwMCxcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBpbml0aWFsVmFsdWVzLmNyb3BBcmVhPy5oZWlnaHQgPz8gMTAwLFxuICAgICAgICAgICAgICAgICAgICB4OiBpbml0aWFsVmFsdWVzLmNyb3BBcmVhPy54ID8/IDAsXG4gICAgICAgICAgICAgICAgICAgIHk6IGluaXRpYWxWYWx1ZXMuY3JvcEFyZWE/LnkgPz8gMCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIGluaXRpYWxWYWx1ZXNFcXVhbD17aXNFcXVhbH1cbiAgICAgICAgPlxuICAgICAgICAgICAgeyh7IGhhbmRsZVN1Ym1pdCwgdmFsdWVzIH0pID0+IChcbiAgICAgICAgICAgICAgICA8RGlhbG9nIG9wZW4gb25DbG9zZT17b25DbG9zZX0gbWF4V2lkdGg9e2ZhbHNlfT5cbiAgICAgICAgICAgICAgICAgICAgPERpYWxvZ0Zvcm1XcmFwcGVyIG9uU3VibWl0PXtoYW5kbGVTdWJtaXR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPERpYWxvZ1RpdGxlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIGNvbnRhaW5lciBqdXN0aWZ5Q29udGVudD1cInNwYWNlLWJldHdlZW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgaXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29tZXQuYmxvY2tzLmltYWdlLmVkaXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZT1cIkVkaXQgaW1hZ2Ug4oCee2ZpbGVuYW1lfeKAnVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZW5hbWU6IGltYWdlLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBpdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2UuZGltZW5zaW9uc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlPVwie3dpZHRofXh7aGVpZ2h0fXB4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogaW1hZ2Uud2lkdGgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGltYWdlLmhlaWdodCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpbWFnZS5zaXplICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29tZXQuYmxvY2tzLmltYWdlLnNpemVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U9XCIgfCB7c2l6ZSwgbnVtYmVyLCA6OiAuMDAgbWVhc3VyZS11bml0L2RpZ2l0YWwtbWVnYWJ5dGV9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU6IGltYWdlLnNpemUgLyAxMDI0IC8gMTAyNCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvRGlhbG9nVGl0bGU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8RGlhbG9nQ29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2VDcm9wIHNyYz17aW1hZ2UudXJsfSBpbWFnZVN0eWxlPXtpbWFnZVN0eWxlfSBkaXNhYmxlZD17dmFsdWVzLnVzZUluaGVyaXRlZERhbVNldHRpbmdzfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpbmhlcml0ZWREYW1TZXR0aW5ncyAhPT0gdW5kZWZpbmVkICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBwYWRkaW5nPXs4fSBwYWRkaW5nVG9wPXswfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1TZWN0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT17PEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2UuZGFtXCIgZGVmYXVsdE1lc3NhZ2U9XCJEQU1cIiAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVNYXJnaW5Cb3R0b21cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cInVzZUluaGVyaXRlZERhbVNldHRpbmdzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImNvbWV0LmJsb2Nrcy5pbWFnZS51c2VJbmhlcml0ZWREYW1TZXR0aW5nc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZT1cIlVzZSBpbmhlcml0ZWQgREFNIHNldHRpbmdzP1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyh7IGlucHV0OiB7IGNoZWNrZWQsIG9uQ2hhbmdlIH0gfSkgPT4gPFllc05vU3dpdGNoIGNoZWNrZWQ9e2NoZWNrZWR9IG9uQ2hhbmdlPXtvbkNoYW5nZX0gLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ZpZWxkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm1TZWN0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2VudGl0eURlcGVuZGVuY3lNYXBbXCJEYW1GaWxlXCJdICYmIGRhbUZpbGVJZCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggcGFkZGluZz17N30gcGFkZGluZ1RvcD17MH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyaWFudD1cIm91dGxpbmVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcj1cImluaGVyaXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2FzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcGF0aCA9IGF3YWl0IGVudGl0eURlcGVuZGVuY3lNYXBbXCJEYW1GaWxlXCJdLnJlc29sdmVQYXRoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwb2xsb0NsaWVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBkYW1GaWxlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1cmwgPSBjb250ZW50U2NvcGUubWF0Y2gudXJsICsgcGF0aDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93Lm9wZW4odXJsLCBcIl9ibGFua1wiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0SWNvbj17PE9wZW5OZXdUYWIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3MuaW1hZ2Uub3BlbkluRGFtXCIgZGVmYXVsdE1lc3NhZ2U9XCJPcGVuIGluIERBTVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RGl2aWRlciBzeD17eyBtYXJnaW5MZWZ0OiA4LCBtYXJnaW5SaWdodDogOCB9fSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggcGFkZGluZz17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q3JvcFNldHRpbmdzRmllbGRzIGRpc2FibGVkPXtpbmhlcml0ZWREYW1TZXR0aW5ncyA9PT0gdW5kZWZpbmVkID8gZmFsc2UgOiB2YWx1ZXMudXNlSW5oZXJpdGVkRGFtU2V0dGluZ3N9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9EaWFsb2dDb250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgPERpYWxvZ0FjdGlvbnM+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPENhbmNlbEJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgb25DbGljaz17b25DbG9zZX0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2F2ZUJ1dHRvbiB0eXBlPVwic3VibWl0XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvRGlhbG9nQWN0aW9ucz5cbiAgICAgICAgICAgICAgICAgICAgPC9EaWFsb2dGb3JtV3JhcHBlcj5cbiAgICAgICAgICAgICAgICA8L0RpYWxvZz5cbiAgICAgICAgICAgICl9XG4gICAgICAgIDwvRm9ybT5cbiAgICApO1xufVxuXG5pbnRlcmZhY2UgWWVzTm9Td2l0Y2hQcm9wcyB7XG4gICAgY2hlY2tlZD86IGJvb2xlYW47XG4gICAgb25DaGFuZ2U/OiAoZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSA9PiB2b2lkO1xufVxuXG5jb25zdCBZZXNOb1N3aXRjaCA9ICh7IGNoZWNrZWQsIG9uQ2hhbmdlIH06IFllc05vU3dpdGNoUHJvcHMpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgICA8Rm9ybUNvbnRyb2xMYWJlbFxuICAgICAgICAgICAgY29udHJvbD17PFN3aXRjaCBjaGVja2VkPXtjaGVja2VkfSBvbkNoYW5nZT17b25DaGFuZ2V9IC8+fVxuICAgICAgICAgICAgbGFiZWw9e2NoZWNrZWQgPyA8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMueWVzfSAvPiA6IDxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy5ub30gLz59XG4gICAgICAgIC8+XG4gICAgKTtcbn07XG5cbmNvbnN0IERpYWxvZ0Zvcm1XcmFwcGVyID0gc3R5bGVkKFwiZm9ybVwiKWBcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogbWluLWNvbnRlbnQgYXV0byBtaW4tY29udGVudDtcbiAgICBncmlkLWNvbHVtbi1nYXA6IDBweDtcbiAgICBncmlkLXJvdy1nYXA6IDBweDtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5gO1xuIl19 */",
257
258
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
258
259
  });
@@ -1 +1 @@
1
- {"version":3,"file":"createCmsLinkToolbarButton.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/rte/extension/CmsLink/createCmsLinkToolbarButton.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,WAAW,EAAkC,MAAM,UAAU,CAAC;AACvE,OAAO,EAAmB,KAAK,YAAY,EAAkC,MAAM,OAAO,CAAC;AAG3F,OAAO,EAAE,KAAK,cAAc,EAAmB,MAAM,gBAAgB,CAAC;AAGtE,UAAU,MAAM;IACZ,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,CAAC,WAAW,EAAE,WAAW,KAAK,IAAI,CAAC;CACtD;AAED,UAAU,iCAAiC;IACvC,IAAI,EAAE,cAAc,CAAC;CACxB;AAED,wBAAgB,0BAA0B,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,iCAAiC,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,YAAY,CA+HlI"}
1
+ {"version":3,"file":"createCmsLinkToolbarButton.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/rte/extension/CmsLink/createCmsLinkToolbarButton.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,WAAW,EAAkC,MAAM,UAAU,CAAC;AACvE,OAAO,EAAmB,KAAK,YAAY,EAAkC,MAAM,OAAO,CAAC;AAG3F,OAAO,EAAE,KAAK,cAAc,EAAmB,MAAM,gBAAgB,CAAC;AAGtE,UAAU,MAAM;IACZ,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,CAAC,WAAW,EAAE,WAAW,KAAK,IAAI,CAAC;CACtD;AAED,UAAU,iCAAiC;IACvC,IAAI,EAAE,cAAc,CAAC;CACxB;AAED,wBAAgB,0BAA0B,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,iCAAiC,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,YAAY,CA6HlI"}