@comet/cms-admin 9.0.0-beta.2 → 9.0.0-beta.4

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 (653) hide show
  1. package/lib/blocks/AnchorBlock.d.ts +1 -1
  2. package/lib/blocks/AnchorBlock.d.ts.map +1 -1
  3. package/lib/blocks/DamVideoBlock.d.ts +1 -1
  4. package/lib/blocks/DamVideoBlock.d.ts.map +1 -1
  5. package/lib/blocks/DamVideoBlock.js +6 -2
  6. package/lib/blocks/EmailLinkBlock.d.ts +1 -1
  7. package/lib/blocks/EmailLinkBlock.d.ts.map +1 -1
  8. package/lib/blocks/ExternalLinkBlock.d.ts +1 -1
  9. package/lib/blocks/ExternalLinkBlock.d.ts.map +1 -1
  10. package/lib/blocks/InternalLinkBlock.d.ts +1 -1
  11. package/lib/blocks/InternalLinkBlock.d.ts.map +1 -1
  12. package/lib/blocks/PhoneLinkBlock.d.ts +1 -1
  13. package/lib/blocks/PhoneLinkBlock.d.ts.map +1 -1
  14. package/lib/blocks/PixelImageBlock.d.ts +1 -1
  15. package/lib/blocks/PixelImageBlock.d.ts.map +1 -1
  16. package/lib/blocks/PixelImageBlock.fragment.d.ts +2 -0
  17. package/lib/blocks/PixelImageBlock.fragment.d.ts.map +1 -0
  18. package/lib/blocks/PixelImageBlock.fragment.generated.d.ts +20 -0
  19. package/lib/blocks/PixelImageBlock.fragment.generated.d.ts.map +1 -0
  20. package/lib/blocks/PixelImageBlock.fragment.generated.js +5 -0
  21. package/lib/blocks/PixelImageBlock.fragment.js +4 -0
  22. package/lib/blocks/PixelImageBlock.js +12 -5
  23. package/lib/blocks/SpaceBlock.d.ts +1 -1
  24. package/lib/blocks/SpaceBlock.d.ts.map +1 -1
  25. package/lib/blocks/SvgImageBlock.d.ts +1 -1
  26. package/lib/blocks/SvgImageBlock.d.ts.map +1 -1
  27. package/lib/blocks/SvgImageBlock.js +9 -3
  28. package/lib/blocks/VimeoVideoBlock.d.ts +1 -1
  29. package/lib/blocks/VimeoVideoBlock.d.ts.map +1 -1
  30. package/lib/blocks/VimeoVideoBlock.js +9 -3
  31. package/lib/blocks/YouTubeVideoBlock.d.ts +1 -1
  32. package/lib/blocks/YouTubeVideoBlock.d.ts.map +1 -1
  33. package/lib/blocks/YouTubeVideoBlock.js +9 -3
  34. package/lib/blocks/__stories__/RichTextBlock.stories.js +53 -0
  35. package/lib/blocks/clipboard/CannotPasteBlockDialog.d.ts +1 -1
  36. package/lib/blocks/clipboard/CannotPasteBlockDialog.d.ts.map +1 -1
  37. package/lib/blocks/clipboard/useBlockClipboard.d.ts +2 -2
  38. package/lib/blocks/clipboard/useBlockClipboard.d.ts.map +1 -1
  39. package/lib/blocks/common/AdminTabsTabContent.d.ts +1 -1
  40. package/lib/blocks/common/AdminTabsTabContent.d.ts.map +1 -1
  41. package/lib/blocks/common/AdminTabsTabContent.js +2 -2
  42. package/lib/blocks/common/BlockAdminComponentButton.d.ts +1 -1
  43. package/lib/blocks/common/BlockAdminComponentButton.d.ts.map +1 -1
  44. package/lib/blocks/common/BlockAdminComponentNestedButton.d.ts +1 -1
  45. package/lib/blocks/common/BlockAdminComponentNestedButton.d.ts.map +1 -1
  46. package/lib/blocks/common/BlockAdminComponentNestedButton.js +1 -1
  47. package/lib/blocks/common/BlockAdminComponentRoot.d.ts +1 -1
  48. package/lib/blocks/common/BlockAdminComponentRoot.d.ts.map +1 -1
  49. package/lib/blocks/common/BlockAdminComponentRoot.js +1 -1
  50. package/lib/blocks/common/BlockAdminComponentSection.d.ts +1 -1
  51. package/lib/blocks/common/BlockAdminComponentSection.d.ts.map +1 -1
  52. package/lib/blocks/common/BlockAdminComponentSection.js +2 -2
  53. package/lib/blocks/common/BlockAdminComponentSectionGroup.d.ts +1 -1
  54. package/lib/blocks/common/BlockAdminComponentSectionGroup.d.ts.map +1 -1
  55. package/lib/blocks/common/BlockAdminComponentSectionGroup.js +1 -1
  56. package/lib/blocks/common/BlockAdminTabLabel.d.ts +1 -1
  57. package/lib/blocks/common/BlockAdminTabLabel.d.ts.map +1 -1
  58. package/lib/blocks/common/BlockAdminTabLabel.js +1 -1
  59. package/lib/blocks/common/BlockAdminTabs.d.ts +1 -1
  60. package/lib/blocks/common/BlockAdminTabs.d.ts.map +1 -1
  61. package/lib/blocks/common/BlockAdminTabs.js +3 -3
  62. package/lib/blocks/common/Collapsible.d.ts +1 -1
  63. package/lib/blocks/common/Collapsible.d.ts.map +1 -1
  64. package/lib/blocks/common/CollapsibleSwitchButtonHeader.d.ts +1 -1
  65. package/lib/blocks/common/CollapsibleSwitchButtonHeader.d.ts.map +1 -1
  66. package/lib/blocks/common/CollapsibleSwitchButtonHeader.js +1 -1
  67. package/lib/blocks/common/HiddenInSubroute.d.ts +1 -1
  68. package/lib/blocks/common/HiddenInSubroute.d.ts.map +1 -1
  69. package/lib/blocks/common/blockRow/BlockPreviewContent.d.ts +1 -1
  70. package/lib/blocks/common/blockRow/BlockPreviewContent.d.ts.map +1 -1
  71. package/lib/blocks/common/blockRow/BlockRow.d.ts.map +1 -1
  72. package/lib/blocks/common/blockRow/BlockRow.js +3 -1
  73. package/lib/blocks/common/blockRow/image/StackedImages.d.ts +1 -1
  74. package/lib/blocks/common/blockRow/image/StackedImages.d.ts.map +1 -1
  75. package/lib/blocks/config/BlocksConfigContext.d.ts +2 -2
  76. package/lib/blocks/config/BlocksConfigContext.d.ts.map +1 -1
  77. package/lib/blocks/context/BlockContext.d.ts +2 -2
  78. package/lib/blocks/context/BlockContext.d.ts.map +1 -1
  79. package/lib/blocks/context/BlockContextProvider.d.ts +1 -1
  80. package/lib/blocks/context/BlockContextProvider.d.ts.map +1 -1
  81. package/lib/blocks/createImageLinkBlock.d.ts +1 -1
  82. package/lib/blocks/createImageLinkBlock.d.ts.map +1 -1
  83. package/lib/blocks/createLinkBlock.d.ts +1 -1
  84. package/lib/blocks/createLinkBlock.d.ts.map +1 -1
  85. package/lib/blocks/createLinkBlock.js +50 -1
  86. package/lib/blocks/createRichTextBlock.d.ts +1 -1
  87. package/lib/blocks/createRichTextBlock.d.ts.map +1 -1
  88. package/lib/blocks/createRichTextBlock.js +56 -20
  89. package/lib/blocks/createSeoBlock.d.ts +1 -1
  90. package/lib/blocks/createSeoBlock.d.ts.map +1 -1
  91. package/lib/blocks/createSeoBlock.js +6 -4
  92. package/lib/blocks/createTableBlock.d.ts +2 -2
  93. package/lib/blocks/createTableBlock.d.ts.map +1 -1
  94. package/lib/blocks/createTextImageBlock.d.ts +2 -2
  95. package/lib/blocks/createTextImageBlock.d.ts.map +1 -1
  96. package/lib/blocks/createTextLinkBlock.d.ts +1 -1
  97. package/lib/blocks/createTextLinkBlock.d.ts.map +1 -1
  98. package/lib/blocks/createTextLinkBlock.js +36 -1
  99. package/lib/blocks/factories/columnsBlock/FinalFormColumnsSelect.d.ts +1 -1
  100. package/lib/blocks/factories/columnsBlock/FinalFormColumnsSelect.d.ts.map +1 -1
  101. package/lib/blocks/factories/columnsBlock/FinalFormLayoutSelect.d.ts +2 -2
  102. package/lib/blocks/factories/columnsBlock/FinalFormLayoutSelect.d.ts.map +1 -1
  103. package/lib/blocks/factories/columnsBlock/FinalFormLayoutSelect.js +6 -6
  104. package/lib/blocks/factories/createBlocksBlock.d.ts +1 -1
  105. package/lib/blocks/factories/createBlocksBlock.d.ts.map +1 -1
  106. package/lib/blocks/factories/createBlocksBlock.js +70 -13
  107. package/lib/blocks/factories/createColumnsBlock.d.ts +2 -2
  108. package/lib/blocks/factories/createColumnsBlock.d.ts.map +1 -1
  109. package/lib/blocks/factories/createColumnsBlock.js +56 -6
  110. package/lib/blocks/factories/createCompositeBlock.d.ts +1 -1
  111. package/lib/blocks/factories/createCompositeBlock.d.ts.map +1 -1
  112. package/lib/blocks/factories/createCompositeBlock.js +3 -1
  113. package/lib/blocks/factories/createListBlock.d.ts +2 -2
  114. package/lib/blocks/factories/createListBlock.d.ts.map +1 -1
  115. package/lib/blocks/factories/createListBlock.js +59 -7
  116. package/lib/blocks/factories/createOneOfBlock.d.ts.map +1 -1
  117. package/lib/blocks/factories/createOneOfBlock.js +62 -5
  118. package/lib/blocks/factories/createOptionalBlock.d.ts +3 -3
  119. package/lib/blocks/factories/createOptionalBlock.d.ts.map +1 -1
  120. package/lib/blocks/factories/createOptionalBlock.js +38 -1
  121. package/lib/blocks/factories/listBlock/createUseAdminComponent.d.ts +2 -2
  122. package/lib/blocks/factories/listBlock/createUseAdminComponent.d.ts.map +1 -1
  123. package/lib/blocks/factories/spaceBlock/createSpaceBlock.d.ts +1 -1
  124. package/lib/blocks/factories/spaceBlock/createSpaceBlock.d.ts.map +1 -1
  125. package/lib/blocks/form/createFinalFormBlock.d.ts +2 -2
  126. package/lib/blocks/form/createFinalFormBlock.d.ts.map +1 -1
  127. package/lib/blocks/helpers/composeBlocks/composeBlocks.d.ts +4 -4
  128. package/lib/blocks/helpers/composeBlocks/composeBlocks.d.ts.map +1 -1
  129. package/lib/blocks/helpers/composeBlocks/composeBlocks.js +52 -16
  130. package/lib/blocks/helpers/composeBlocks/createCompositeBlockField.d.ts +3 -2
  131. package/lib/blocks/helpers/composeBlocks/createCompositeBlockField.d.ts.map +1 -1
  132. package/lib/blocks/helpers/composeBlocks/createCompositeBlockField.js +4 -2
  133. package/lib/blocks/helpers/composeBlocks/createCompositeBlockFields.d.ts +1 -1
  134. package/lib/blocks/helpers/composeBlocks/createCompositeBlockFields.d.ts.map +1 -1
  135. package/lib/blocks/helpers/composeBlocks/createSettingsBlock.d.ts +3 -2
  136. package/lib/blocks/helpers/composeBlocks/createSettingsBlock.d.ts.map +1 -1
  137. package/lib/blocks/helpers/composeBlocks/createSettingsBlock.js +5 -1
  138. package/lib/blocks/helpers/composeBlocks/types.d.ts +3 -3
  139. package/lib/blocks/helpers/composeBlocks/types.d.ts.map +1 -1
  140. package/lib/blocks/helpers/composeBlocks/utils.d.ts +2 -2
  141. package/lib/blocks/helpers/composeBlocks/utils.d.ts.map +1 -1
  142. package/lib/blocks/helpers/createBlockSkeleton.js +15 -1
  143. package/lib/blocks/helpers/createCompositeBlockSelectField.d.ts +1 -1
  144. package/lib/blocks/helpers/createCompositeBlockSelectField.d.ts.map +1 -1
  145. package/lib/blocks/helpers/createCompositeBlockSwitchField.d.ts +1 -1
  146. package/lib/blocks/helpers/createCompositeBlockSwitchField.d.ts.map +1 -1
  147. package/lib/blocks/helpers/createCompositeBlockTextField.d.ts +3 -2
  148. package/lib/blocks/helpers/createCompositeBlockTextField.d.ts.map +1 -1
  149. package/lib/blocks/helpers/createCompositeBlockTextField.js +20 -2
  150. package/lib/blocks/helpers/decomposeUpdateStateAction.d.ts +1 -1
  151. package/lib/blocks/helpers/decomposeUpdateStateAction.d.ts.map +1 -1
  152. package/lib/blocks/helpers/deduplicateBlockDependencies.d.ts +1 -1
  153. package/lib/blocks/helpers/deduplicateBlockDependencies.d.ts.map +1 -1
  154. package/lib/blocks/helpers/isBlockInterface.d.ts +1 -1
  155. package/lib/blocks/helpers/isBlockInterface.d.ts.map +1 -1
  156. package/lib/blocks/helpers/withAdditionalBlockAttributes.d.ts +1 -1
  157. package/lib/blocks/helpers/withAdditionalBlockAttributes.d.ts.map +1 -1
  158. package/lib/blocks/iframebridge/IFrameMessage.d.ts +1 -1
  159. package/lib/blocks/iframebridge/IFrameMessage.d.ts.map +1 -1
  160. package/lib/blocks/image/EditImageDialog.d.ts +1 -1
  161. package/lib/blocks/image/EditImageDialog.d.ts.map +1 -1
  162. package/lib/blocks/image/EditImageDialog.js +2 -2
  163. package/lib/blocks/rte/extension/CmsLink/Decorator.d.ts +1 -1
  164. package/lib/blocks/rte/extension/CmsLink/Decorator.d.ts.map +1 -1
  165. package/lib/blocks/rte/extension/CmsLink/EditorComponent.d.ts +2 -2
  166. package/lib/blocks/rte/extension/CmsLink/EditorComponent.d.ts.map +1 -1
  167. package/lib/blocks/rte/extension/CmsLink/createCmsLinkToolbarButton.d.ts +1 -1
  168. package/lib/blocks/rte/extension/CmsLink/createCmsLinkToolbarButton.d.ts.map +1 -1
  169. package/lib/blocks/rte/extension/CmsLink/createCmsLinkToolbarButton.js +2 -2
  170. package/lib/blocks/table/CellValue.d.ts +1 -1
  171. package/lib/blocks/table/CellValue.d.ts.map +1 -1
  172. package/lib/blocks/table/CellValue.js +6 -6
  173. package/lib/blocks/table/ColumnHeader.d.ts +4 -4
  174. package/lib/blocks/table/ColumnHeader.d.ts.map +1 -1
  175. package/lib/blocks/table/ColumnHeader.js +1 -1
  176. package/lib/blocks/table/EditCell.js +4 -4
  177. package/lib/blocks/table/RowActionsCell.d.ts +2 -2
  178. package/lib/blocks/table/RowActionsCell.d.ts.map +1 -1
  179. package/lib/blocks/table/TableBlockContext.d.ts +1 -1
  180. package/lib/blocks/table/TableBlockContext.d.ts.map +1 -1
  181. package/lib/blocks/table/TableBlockContext.js +3 -1
  182. package/lib/blocks/table/TableBlockGrid.d.ts +1 -1
  183. package/lib/blocks/table/TableBlockGrid.d.ts.map +1 -1
  184. package/lib/blocks/table/dataGridStyles.d.ts +1 -1
  185. package/lib/blocks/table/dataGridStyles.d.ts.map +1 -1
  186. package/lib/blocks/table/utils/column.d.ts +3 -3
  187. package/lib/blocks/table/utils/column.d.ts.map +1 -1
  188. package/lib/blocks/table/utils/ensureMinimumTableState.d.ts +2 -2
  189. package/lib/blocks/table/utils/ensureMinimumTableState.d.ts.map +1 -1
  190. package/lib/blocks/table/utils/getClipboardValueForSchema.d.ts +1 -1
  191. package/lib/blocks/table/utils/getClipboardValueForSchema.d.ts.map +1 -1
  192. package/lib/blocks/table/utils/row.d.ts +2 -2
  193. package/lib/blocks/table/utils/row.d.ts.map +1 -1
  194. package/lib/blocks/tipTap/BlockStyleContext.d.ts +3 -0
  195. package/lib/blocks/tipTap/BlockStyleContext.d.ts.map +1 -0
  196. package/lib/blocks/tipTap/BlockStyleContext.js +2 -0
  197. package/lib/blocks/tipTap/InlineStyleContext.d.ts +3 -0
  198. package/lib/blocks/tipTap/InlineStyleContext.d.ts.map +1 -0
  199. package/lib/blocks/tipTap/InlineStyleContext.js +2 -0
  200. package/lib/blocks/tipTap/TipTapLinkDialog.d.ts +10 -0
  201. package/lib/blocks/tipTap/TipTapLinkDialog.d.ts.map +1 -0
  202. package/lib/blocks/tipTap/TipTapLinkDialog.js +105 -0
  203. package/lib/blocks/tipTap/TipTapToolbar.d.ts +12 -0
  204. package/lib/blocks/tipTap/TipTapToolbar.d.ts.map +1 -0
  205. package/lib/blocks/tipTap/TipTapToolbar.js +611 -0
  206. package/lib/blocks/tipTap/__stories__/TipTapRichTextBlock.stories.js +1566 -0
  207. package/lib/blocks/tipTap/createTipTapRichTextBlock.d.ts +56 -0
  208. package/lib/blocks/tipTap/createTipTapRichTextBlock.d.ts.map +1 -0
  209. package/lib/blocks/tipTap/createTipTapRichTextBlock.js +418 -0
  210. package/lib/blocks/tipTap/extensions/BlockStyleHeading.d.ts +2 -0
  211. package/lib/blocks/tipTap/extensions/BlockStyleHeading.d.ts.map +1 -0
  212. package/lib/blocks/tipTap/extensions/BlockStyleHeading.js +57 -0
  213. package/lib/blocks/tipTap/extensions/BlockStyleParagraph.d.ts +2 -0
  214. package/lib/blocks/tipTap/extensions/BlockStyleParagraph.d.ts.map +1 -0
  215. package/lib/blocks/tipTap/extensions/BlockStyleParagraph.js +56 -0
  216. package/lib/blocks/tipTap/extensions/CmsLink.d.ts +13 -0
  217. package/lib/blocks/tipTap/extensions/CmsLink.d.ts.map +1 -0
  218. package/lib/blocks/tipTap/extensions/CmsLink.js +42 -0
  219. package/lib/blocks/tipTap/extensions/InlineStyleMark.d.ts +13 -0
  220. package/lib/blocks/tipTap/extensions/InlineStyleMark.d.ts.map +1 -0
  221. package/lib/blocks/tipTap/extensions/InlineStyleMark.js +71 -0
  222. package/lib/blocks/tipTap/extensions/NonBreakingSpace.d.ts +10 -0
  223. package/lib/blocks/tipTap/extensions/NonBreakingSpace.d.ts.map +1 -0
  224. package/lib/blocks/tipTap/extensions/NonBreakingSpace.js +57 -0
  225. package/lib/blocks/tipTap/extensions/SoftHyphen.d.ts +10 -0
  226. package/lib/blocks/tipTap/extensions/SoftHyphen.d.ts.map +1 -0
  227. package/lib/blocks/tipTap/extensions/SoftHyphen.js +51 -0
  228. package/lib/blocks/tipTap/listLevelMaxHelpers.d.ts +6 -0
  229. package/lib/blocks/tipTap/listLevelMaxHelpers.d.ts.map +1 -0
  230. package/lib/blocks/tipTap/listLevelMaxHelpers.js +108 -0
  231. package/lib/blocks/types.d.ts +9 -2
  232. package/lib/blocks/types.d.ts.map +1 -1
  233. package/lib/blocks/utils.d.ts +1 -1
  234. package/lib/blocks/utils.d.ts.map +1 -1
  235. package/lib/builds/BuildEntry.js +1 -1
  236. package/lib/builds/PublisherPage.js +1 -1
  237. package/lib/common/InsertInBetweenAction.d.ts +1 -1
  238. package/lib/common/InsertInBetweenAction.d.ts.map +1 -1
  239. package/lib/common/InsertInBetweenAction.js +3 -3
  240. package/lib/common/MasterMenuRoutes.d.ts +1 -1
  241. package/lib/common/MasterMenuRoutes.d.ts.map +1 -1
  242. package/lib/common/PageName.js +1 -1
  243. package/lib/common/errors/errorMessages.d.ts +1 -1
  244. package/lib/common/errors/errorMessages.d.ts.map +1 -1
  245. package/lib/common/header/Header.d.ts +1 -1
  246. package/lib/common/header/Header.d.ts.map +1 -1
  247. package/lib/common/header/Header.js +1 -1
  248. package/lib/common/header/about/AboutModal.d.ts +1 -1
  249. package/lib/common/header/about/AboutModal.d.ts.map +1 -1
  250. package/lib/common/header/about/AboutModal.js +6 -6
  251. package/lib/common/header/about/build-information/useBuildInformation.d.ts +1 -1
  252. package/lib/common/header/about/build-information/useBuildInformation.d.ts.map +1 -1
  253. package/lib/common/image/ChooseFocalPoint.d.ts +1 -1
  254. package/lib/common/image/ChooseFocalPoint.d.ts.map +1 -1
  255. package/lib/common/image/ImageCrop.sc.d.ts +1 -1
  256. package/lib/common/image/ImageCrop.sc.d.ts.map +1 -1
  257. package/lib/common/image/ImageCrop.sc.js +2 -2
  258. package/lib/common/signOutButton/SignOutButton.d.ts +1 -1
  259. package/lib/common/signOutButton/SignOutButton.d.ts.map +1 -1
  260. package/lib/common/useEditState.d.ts +1 -1
  261. package/lib/common/useEditState.d.ts.map +1 -1
  262. package/lib/config/CometConfigContext.d.ts +11 -10
  263. package/lib/config/CometConfigContext.d.ts.map +1 -1
  264. package/lib/config/CometConfigContext.js +9 -5
  265. package/lib/contentLanguage/contentLanguageConfig.d.ts +1 -1
  266. package/lib/contentLanguage/contentLanguageConfig.d.ts.map +1 -1
  267. package/lib/contentLanguage/useContentLanguage.d.ts +1 -1
  268. package/lib/contentLanguage/useContentLanguage.d.ts.map +1 -1
  269. package/lib/contentScope/ContentScopeIndicator.d.ts +1 -1
  270. package/lib/contentScope/ContentScopeIndicator.d.ts.map +1 -1
  271. package/lib/contentScope/ContentScopeIndicator.js +4 -4
  272. package/lib/contentScope/ContentScopeSelect.d.ts +1 -1
  273. package/lib/contentScope/ContentScopeSelect.d.ts.map +1 -1
  274. package/lib/contentScope/ContentScopeSelect.js +2 -3
  275. package/lib/contentScope/Controls.d.ts +1 -1
  276. package/lib/contentScope/Controls.d.ts.map +1 -1
  277. package/lib/contentScope/__stories__/ContentScopeProvider.stories.js +85 -0
  278. package/lib/contentScope/__stories__/ContentScopeSelect.stories.js +655 -0
  279. package/lib/contentScope/noContentScopeFallback/NoContentScopeFallback.d.ts +1 -1
  280. package/lib/contentScope/noContentScopeFallback/NoContentScopeFallback.d.ts.map +1 -1
  281. package/lib/contentScope/noContentScopeFallback/__stories__/NoContentScopeFallback.stories.js +7 -0
  282. package/lib/contentScope/utils/defaultCreatePath.d.ts +1 -1
  283. package/lib/contentScope/utils/defaultCreatePath.d.ts.map +1 -1
  284. package/lib/contentScope/utils/groupObjectsIntoArrays.d.ts +1 -1
  285. package/lib/contentScope/utils/groupObjectsIntoArrays.d.ts.map +1 -1
  286. package/lib/cronJobs/JobLogs.js +1 -1
  287. package/lib/cronJobs/JobStatus.d.ts +1 -1
  288. package/lib/cronJobs/JobStatus.d.ts.map +1 -1
  289. package/lib/cronJobs/JobStatus.js +1 -1
  290. package/lib/dam/DamPage.d.ts +1 -1
  291. package/lib/dam/DamPage.d.ts.map +1 -1
  292. package/lib/dam/DamTable.d.ts +9 -4
  293. package/lib/dam/DamTable.d.ts.map +1 -1
  294. package/lib/dam/DamTable.js +8 -18
  295. package/lib/dam/DataGrid/DamContextMenu.d.ts +1 -1
  296. package/lib/dam/DataGrid/DamContextMenu.d.ts.map +1 -1
  297. package/lib/dam/DataGrid/FolderDataGrid.d.ts +2 -2
  298. package/lib/dam/DataGrid/FolderDataGrid.d.ts.map +1 -1
  299. package/lib/dam/DataGrid/FolderDataGrid.js +285 -276
  300. package/lib/dam/DataGrid/duplicatedFilenames/ManualDuplicatedFilenamesHandler.d.ts +1 -1
  301. package/lib/dam/DataGrid/duplicatedFilenames/ManualDuplicatedFilenamesHandler.d.ts.map +1 -1
  302. package/lib/dam/DataGrid/duplicatedFilenames/ManuallyHandleDuplicatedFilenamesDialog.d.ts +1 -1
  303. package/lib/dam/DataGrid/duplicatedFilenames/ManuallyHandleDuplicatedFilenamesDialog.d.ts.map +1 -1
  304. package/lib/dam/DataGrid/duplicatedFilenames/ManuallyHandleDuplicatedFilenamesDialog.js +2 -2
  305. package/lib/dam/DataGrid/fileUpload/FileUploadContext.d.ts +1 -1
  306. package/lib/dam/DataGrid/fileUpload/FileUploadContext.d.ts.map +1 -1
  307. package/lib/dam/DataGrid/fileUpload/FileUploadErrorDialog.d.ts +1 -1
  308. package/lib/dam/DataGrid/fileUpload/FileUploadErrorDialog.d.ts.map +1 -1
  309. package/lib/dam/DataGrid/fileUpload/FileUploadErrorDialog.js +2 -2
  310. package/lib/dam/DataGrid/fileUpload/fileUpload.utils.d.ts +1 -1
  311. package/lib/dam/DataGrid/fileUpload/fileUpload.utils.d.ts.map +1 -1
  312. package/lib/dam/DataGrid/fileUpload/useDamFileUpload.d.ts +2 -2
  313. package/lib/dam/DataGrid/fileUpload/useDamFileUpload.d.ts.map +1 -1
  314. package/lib/dam/DataGrid/filter/DamTableFilter.d.ts +1 -1
  315. package/lib/dam/DataGrid/filter/DamTableFilter.d.ts.map +1 -1
  316. package/lib/dam/DataGrid/filter/DamTableFilter.js +0 -10
  317. package/lib/dam/DataGrid/footer/DamFooter.d.ts +1 -1
  318. package/lib/dam/DataGrid/footer/DamFooter.d.ts.map +1 -1
  319. package/lib/dam/DataGrid/footer/DamFooter.js +1 -1
  320. package/lib/dam/DataGrid/label/DamItemLabel.d.ts +1 -1
  321. package/lib/dam/DataGrid/label/DamItemLabel.d.ts.map +1 -1
  322. package/lib/dam/DataGrid/label/DamItemLabel.js +3 -3
  323. package/lib/dam/DataGrid/label/DamItemLabelColumn.d.ts +5 -5
  324. package/lib/dam/DataGrid/label/DamItemLabelColumn.d.ts.map +1 -1
  325. package/lib/dam/DataGrid/label/DamItemLabelColumn.js +2 -2
  326. package/lib/dam/DataGrid/selection/DamMoreActions.d.ts +2 -1
  327. package/lib/dam/DataGrid/selection/DamMoreActions.d.ts.map +1 -1
  328. package/lib/dam/DataGrid/selection/DamMoreActions.js +4 -3
  329. package/lib/dam/DataGrid/selection/DamSelectionContext.d.ts +8 -5
  330. package/lib/dam/DataGrid/selection/DamSelectionContext.d.ts.map +1 -1
  331. package/lib/dam/DataGrid/selection/DamSelectionContext.js +11 -3
  332. package/lib/dam/DataGrid/thumbnail/DamThumbnail.d.ts +2 -2
  333. package/lib/dam/DataGrid/thumbnail/DamThumbnail.d.ts.map +1 -1
  334. package/lib/dam/DataGrid/thumbnail/DamThumbnail.js +4 -4
  335. package/lib/dam/DataGrid/useDamSearchHighlighting.d.ts +1 -1
  336. package/lib/dam/DataGrid/useDamSearchHighlighting.d.ts.map +1 -1
  337. package/lib/dam/FileForm/CropSettingsFields.d.ts +1 -1
  338. package/lib/dam/FileForm/CropSettingsFields.d.ts.map +1 -1
  339. package/lib/dam/FileForm/CropSettingsFields.js +1 -1
  340. package/lib/dam/FileForm/Duplicates.js +5 -5
  341. package/lib/dam/FileForm/EditFile.d.ts +3 -3
  342. package/lib/dam/FileForm/EditFile.d.ts.map +1 -1
  343. package/lib/dam/FileForm/EditFile.js +2 -2
  344. package/lib/dam/FileForm/FilePreview.d.ts +1 -1
  345. package/lib/dam/FileForm/FilePreview.d.ts.map +1 -1
  346. package/lib/dam/FileForm/FilePreview.js +4 -4
  347. package/lib/dam/FileForm/FileSettingsFields.d.ts +1 -1
  348. package/lib/dam/FileForm/FileSettingsFields.d.ts.map +1 -1
  349. package/lib/dam/FileForm/FileSettingsFields.js +1 -1
  350. package/lib/dam/FileForm/ReplaceFileButton.d.ts +1 -1
  351. package/lib/dam/FileForm/ReplaceFileButton.d.ts.map +1 -1
  352. package/lib/dam/FileForm/licenseType.d.ts +2 -2
  353. package/lib/dam/FileForm/licenseType.d.ts.map +1 -1
  354. package/lib/dam/FileForm/previews/AudioPreview.d.ts +1 -1
  355. package/lib/dam/FileForm/previews/AudioPreview.d.ts.map +1 -1
  356. package/lib/dam/FileForm/previews/AudioPreview.js +5 -5
  357. package/lib/dam/FileForm/previews/DefaultFilePreview.d.ts +1 -1
  358. package/lib/dam/FileForm/previews/DefaultFilePreview.d.ts.map +1 -1
  359. package/lib/dam/FileForm/previews/DefaultFilePreview.js +3 -3
  360. package/lib/dam/FileForm/previews/ImagePreview.d.ts +1 -1
  361. package/lib/dam/FileForm/previews/ImagePreview.d.ts.map +1 -1
  362. package/lib/dam/FileForm/previews/PdfPreview.d.ts +1 -1
  363. package/lib/dam/FileForm/previews/PdfPreview.d.ts.map +1 -1
  364. package/lib/dam/FileForm/previews/PdfPreview.js +2 -2
  365. package/lib/dam/FileForm/previews/VideoPreview.d.ts +1 -1
  366. package/lib/dam/FileForm/previews/VideoPreview.d.ts.map +1 -1
  367. package/lib/dam/FileForm/previews/VideoPreview.js +2 -2
  368. package/lib/dam/MoveDamItemDialog/ChooseFolder.d.ts +2 -2
  369. package/lib/dam/MoveDamItemDialog/ChooseFolder.d.ts.map +1 -1
  370. package/lib/dam/MoveDamItemDialog/ChooseFolder.js +1 -1
  371. package/lib/dam/MoveDamItemDialog/MoveDamItemDialog.d.ts +1 -1
  372. package/lib/dam/MoveDamItemDialog/MoveDamItemDialog.d.ts.map +1 -1
  373. package/lib/dam/MoveDamItemDialog/MoveDamItemDialog.js +1 -1
  374. package/lib/dam/MoveDamItemDialog/useFolderTree.d.ts +1 -1
  375. package/lib/dam/MoveDamItemDialog/useFolderTree.d.ts.map +1 -1
  376. package/lib/dam/MoveDamItemDialog/useFolderTreeSearch.d.ts +2 -2
  377. package/lib/dam/MoveDamItemDialog/useFolderTreeSearch.d.ts.map +1 -1
  378. package/lib/dam/blocks/DamFileDownloadLinkBlock.d.ts +1 -1
  379. package/lib/dam/blocks/DamFileDownloadLinkBlock.d.ts.map +1 -1
  380. package/lib/dam/blocks/DamFileDownloadLinkBlock.js +6 -2
  381. package/lib/dam/config/DamScopeProvider.d.ts +1 -1
  382. package/lib/dam/config/DamScopeProvider.d.ts.map +1 -1
  383. package/lib/dam/config/damConfig.d.ts +1 -1
  384. package/lib/dam/config/damConfig.d.ts.map +1 -1
  385. package/lib/dam/dependencies/createDamFileDependency.d.ts +1 -1
  386. package/lib/dam/dependencies/createDamFileDependency.d.ts.map +1 -1
  387. package/lib/dam/helpers/clearDamItemCache.d.ts +1 -1
  388. package/lib/dam/helpers/clearDamItemCache.d.ts.map +1 -1
  389. package/lib/dam/helpers/isFile.d.ts +1 -1
  390. package/lib/dam/helpers/isFile.d.ts.map +1 -1
  391. package/lib/dam/helpers/isFolder.d.ts +1 -1
  392. package/lib/dam/helpers/isFolder.d.ts.map +1 -1
  393. package/lib/dam/mediaAlternatives/MediaAlternativeForm.d.ts +1 -1
  394. package/lib/dam/mediaAlternatives/MediaAlternativeForm.d.ts.map +1 -1
  395. package/lib/dam/mediaAlternatives/MediaAlternativesGrid.d.ts +1 -1
  396. package/lib/dam/mediaAlternatives/MediaAlternativesGrid.d.ts.map +1 -1
  397. package/lib/dam/mediaAlternatives/MediaAlternativesGrid.js +3 -1
  398. package/lib/dashboard/DashboardHeader.d.ts +1 -1
  399. package/lib/dashboard/DashboardHeader.d.ts.map +1 -1
  400. package/lib/dashboard/DashboardHeader.js +2 -2
  401. package/lib/dashboard/__stories__/DateTime.stories.js +7 -0
  402. package/lib/dashboard/widgets/DashboardWidgetRoot.d.ts +1 -1
  403. package/lib/dashboard/widgets/DashboardWidgetRoot.d.ts.map +1 -1
  404. package/lib/dashboard/widgets/DashboardWidgetRoot.js +1 -1
  405. package/lib/dependencies/DependenciesList.d.ts +1 -1
  406. package/lib/dependencies/DependenciesList.d.ts.map +1 -1
  407. package/lib/dependencies/DependenciesList.js +3 -1
  408. package/lib/dependencies/DependentsList.d.ts +1 -1
  409. package/lib/dependencies/DependentsList.d.ts.map +1 -1
  410. package/lib/dependencies/DependentsList.js +3 -1
  411. package/lib/dependencies/createDependencyMethods.d.ts +3 -3
  412. package/lib/dependencies/createDependencyMethods.d.ts.map +1 -1
  413. package/lib/dependencies/createDocumentDependencyMethods.d.ts +3 -3
  414. package/lib/dependencies/createDocumentDependencyMethods.d.ts.map +1 -1
  415. package/lib/dependencies/dependenciesConfig.d.ts +1 -1
  416. package/lib/dependencies/dependenciesConfig.d.ts.map +1 -1
  417. package/lib/dependencies/getDisplayNameString.d.ts.map +1 -1
  418. package/lib/dependencies/getDisplayNameString.js +3 -1
  419. package/lib/dependencies/types.d.ts +2 -2
  420. package/lib/dependencies/types.d.ts.map +1 -1
  421. package/lib/documents/createDocumentRootBlocksMethods.d.ts +2 -2
  422. package/lib/documents/createDocumentRootBlocksMethods.d.ts.map +1 -1
  423. package/lib/documents/types.d.ts +10 -6
  424. package/lib/documents/types.d.ts.map +1 -1
  425. package/lib/form/file/FileField.d.ts +17 -14
  426. package/lib/form/file/FileField.d.ts.map +1 -1
  427. package/lib/form/file/FileField.gql.d.ts +2 -0
  428. package/lib/form/file/FileField.gql.d.ts.map +1 -1
  429. package/lib/form/file/FileField.gql.generated.d.ts +40 -0
  430. package/lib/form/file/FileField.gql.generated.d.ts.map +1 -1
  431. package/lib/form/file/FileField.gql.generated.js +2 -1
  432. package/lib/form/file/FileField.gql.js +6 -3
  433. package/lib/form/file/FileField.js +172 -86
  434. package/lib/form/file/FileFieldMenu.d.ts +17 -0
  435. package/lib/form/file/FileFieldMenu.d.ts.map +1 -0
  436. package/lib/form/file/FileFieldMenu.js +91 -0
  437. package/lib/form/file/FileFieldRow.d.ts +12 -0
  438. package/lib/form/file/FileFieldRow.d.ts.map +1 -0
  439. package/lib/form/file/FileFieldRow.js +96 -0
  440. package/lib/form/file/FileUploadField.d.ts +1 -1
  441. package/lib/form/file/FileUploadField.d.ts.map +1 -1
  442. package/lib/form/file/FinalFormFileUpload.d.ts +2 -2
  443. package/lib/form/file/FinalFormFileUpload.d.ts.map +1 -1
  444. package/lib/form/file/chooseFile/BaseChooseDamFileDialog.d.ts +20 -0
  445. package/lib/form/file/chooseFile/BaseChooseDamFileDialog.d.ts.map +1 -0
  446. package/lib/form/file/chooseFile/BaseChooseDamFileDialog.js +106 -0
  447. package/lib/form/file/chooseFile/ChooseDamFileDialog.d.ts +10 -0
  448. package/lib/form/file/chooseFile/ChooseDamFileDialog.d.ts.map +1 -0
  449. package/lib/form/file/chooseFile/ChooseDamFileDialog.js +63 -0
  450. package/lib/form/file/chooseFile/ChooseDamFilesDialog.d.ts +9 -0
  451. package/lib/form/file/chooseFile/ChooseDamFilesDialog.d.ts.map +1 -0
  452. package/lib/form/file/chooseFile/ChooseDamFilesDialog.js +117 -0
  453. package/lib/form/file/upload.d.ts +1 -1
  454. package/lib/form/file/upload.d.ts.map +1 -1
  455. package/lib/form/queryUpdatedAt.d.ts.map +1 -1
  456. package/lib/form/useFormSaveConflict.d.ts +2 -2
  457. package/lib/form/useFormSaveConflict.d.ts.map +1 -1
  458. package/lib/graphql.generated.d.ts +19 -14
  459. package/lib/graphql.generated.d.ts.map +1 -1
  460. package/lib/index.d.ts +12 -3
  461. package/lib/index.d.ts.map +1 -1
  462. package/lib/index.js +8 -1
  463. package/lib/pages/createEditPageNode.d.ts +2 -2
  464. package/lib/pages/createEditPageNode.d.ts.map +1 -1
  465. package/lib/pages/createEditPageNode.js +1 -12
  466. package/lib/pages/createUsePage.d.ts +3 -2
  467. package/lib/pages/createUsePage.d.ts.map +1 -1
  468. package/lib/pages/createUsePage.js +135 -6
  469. package/lib/pages/pageSearch/PageSearch.d.ts +1 -1
  470. package/lib/pages/pageSearch/PageSearch.d.ts.map +1 -1
  471. package/lib/pages/pageSearch/usePageSearch.d.ts +3 -3
  472. package/lib/pages/pageSearch/usePageSearch.d.ts.map +1 -1
  473. package/lib/pages/pageTree/CopyPasteMenuItem.d.ts +1 -1
  474. package/lib/pages/pageTree/CopyPasteMenuItem.d.ts.map +1 -1
  475. package/lib/pages/pageTree/MovePageMenuItem.d.ts +1 -1
  476. package/lib/pages/pageTree/MovePageMenuItem.d.ts.map +1 -1
  477. package/lib/pages/pageTree/PageActions.d.ts +1 -1
  478. package/lib/pages/pageTree/PageActions.d.ts.map +1 -1
  479. package/lib/pages/pageTree/PageActions.js +24 -4
  480. package/lib/pages/pageTree/PageDeleteDialog.d.ts +1 -1
  481. package/lib/pages/pageTree/PageDeleteDialog.d.ts.map +1 -1
  482. package/lib/pages/pageTree/PageInfo.d.ts +2 -2
  483. package/lib/pages/pageTree/PageInfo.d.ts.map +1 -1
  484. package/lib/pages/pageTree/PageInfo.js +3 -3
  485. package/lib/pages/pageTree/PageLabel.d.ts +2 -2
  486. package/lib/pages/pageTree/PageLabel.d.ts.map +1 -1
  487. package/lib/pages/pageTree/PageLabel.js +5 -5
  488. package/lib/pages/pageTree/PageTree.d.ts +1 -1
  489. package/lib/pages/pageTree/PageTree.d.ts.map +1 -1
  490. package/lib/pages/pageTree/PageTree.js +2 -2
  491. package/lib/pages/pageTree/PageTreeContext.d.ts +4 -4
  492. package/lib/pages/pageTree/PageTreeContext.d.ts.map +1 -1
  493. package/lib/pages/pageTree/PageTreeRow.d.ts +3 -3
  494. package/lib/pages/pageTree/PageTreeRow.d.ts.map +1 -1
  495. package/lib/pages/pageTree/PageTreeService.d.ts +2 -2
  496. package/lib/pages/pageTree/PageTreeService.d.ts.map +1 -1
  497. package/lib/pages/pageTree/PageTypeIcon.d.ts +2 -2
  498. package/lib/pages/pageTree/PageTypeIcon.d.ts.map +1 -1
  499. package/lib/pages/pageTree/PageVisibility.d.ts +1 -1
  500. package/lib/pages/pageTree/PageVisibility.d.ts.map +1 -1
  501. package/lib/pages/pageTree/PageVisibilityIcon.d.ts +1 -1
  502. package/lib/pages/pageTree/PageVisibilityIcon.d.ts.map +1 -1
  503. package/lib/pages/pageTree/common/PageTreeTableRow.d.ts +1 -1
  504. package/lib/pages/pageTree/common/PageTreeTableRow.d.ts.map +1 -1
  505. package/lib/pages/pageTree/common/PageTreeTableRow.js +2 -2
  506. package/lib/pages/pageTree/findAvailableSlug.d.ts +11 -0
  507. package/lib/pages/pageTree/findAvailableSlug.d.ts.map +1 -0
  508. package/lib/pages/pageTree/findAvailableSlug.generated.d.ts +16 -0
  509. package/lib/pages/pageTree/findAvailableSlug.generated.d.ts.map +1 -0
  510. package/lib/pages/pageTree/findAvailableSlug.generated.js +5 -0
  511. package/lib/pages/pageTree/findAvailableSlug.js +62 -0
  512. package/lib/pages/pageTree/transformToSlug.d.ts +2 -0
  513. package/lib/pages/pageTree/transformToSlug.d.ts.map +1 -0
  514. package/lib/pages/pageTree/transformToSlug.js +12 -0
  515. package/lib/pages/pageTree/useCopyPastePages/sendPages.d.ts +4 -4
  516. package/lib/pages/pageTree/useCopyPastePages/sendPages.d.ts.map +1 -1
  517. package/lib/pages/pageTree/useCopyPastePages/sendPages.generated.d.ts +0 -10
  518. package/lib/pages/pageTree/useCopyPastePages/sendPages.generated.d.ts.map +1 -1
  519. package/lib/pages/pageTree/useCopyPastePages/sendPages.generated.js +0 -1
  520. package/lib/pages/pageTree/useCopyPastePages/sendPages.js +19 -40
  521. package/lib/pages/pageTree/useCopyPastePages.d.ts +3 -3
  522. package/lib/pages/pageTree/useCopyPastePages.d.ts.map +1 -1
  523. package/lib/pages/pageTree/useCopyPastePages.js +1 -1
  524. package/lib/pages/pageTree/useDndWindowScroll/useDndWindowScroll.d.ts +1 -1
  525. package/lib/pages/pageTree/useDndWindowScroll/useDndWindowScroll.d.ts.map +1 -1
  526. package/lib/pages/pageTree/usePageTree.d.ts +2 -2
  527. package/lib/pages/pageTree/usePageTree.d.ts.map +1 -1
  528. package/lib/pages/pageTree/{useCopyPastePages/ProgressDialog.d.ts → useProgressDialog.d.ts} +1 -1
  529. package/lib/pages/pageTree/useProgressDialog.d.ts.map +1 -0
  530. package/lib/pages/pageTree/useTranslatePagesAction.d.ts +16 -0
  531. package/lib/pages/pageTree/useTranslatePagesAction.d.ts.map +1 -0
  532. package/lib/pages/pageTree/useTranslatePagesAction.generated.d.ts +20 -0
  533. package/lib/pages/pageTree/useTranslatePagesAction.generated.d.ts.map +1 -0
  534. package/lib/pages/pageTree/useTranslatePagesAction.generated.js +5 -0
  535. package/lib/pages/pageTree/useTranslatePagesAction.js +339 -0
  536. package/lib/pages/pageTreeConfig.d.ts +3 -3
  537. package/lib/pages/pageTreeConfig.d.ts.map +1 -1
  538. package/lib/pages/pageTreeSelect/FinalFormPageTreeSelect.d.ts +2 -2
  539. package/lib/pages/pageTreeSelect/FinalFormPageTreeSelect.d.ts.map +1 -1
  540. package/lib/pages/pageTreeSelect/PageTreeSelectDialog.d.ts +2 -2
  541. package/lib/pages/pageTreeSelect/PageTreeSelectDialog.d.ts.map +1 -1
  542. package/lib/pages/pageTreeSelect/PageTreeSelectDialog.js +5 -5
  543. package/lib/pages/pagesPage/ConfirmPageActionDialog.d.ts +1 -1
  544. package/lib/pages/pagesPage/ConfirmPageActionDialog.d.ts.map +1 -1
  545. package/lib/pages/pagesPage/PagesPage.d.ts +2 -2
  546. package/lib/pages/pagesPage/PagesPage.d.ts.map +1 -1
  547. package/lib/pages/pagesPage/PagesPageActionToolbar.d.ts +1 -1
  548. package/lib/pages/pagesPage/PagesPageActionToolbar.d.ts.map +1 -1
  549. package/lib/pages/pagesPage/PagesPageActionToolbar.js +29 -2
  550. package/lib/pages/pagesPage/PagesPageActionToolbar.sc.d.ts +2 -2
  551. package/lib/pages/pagesPage/PagesPageActionToolbarBatchUpdateHelper.d.ts +3 -3
  552. package/lib/pages/pagesPage/PagesPageActionToolbarBatchUpdateHelper.d.ts.map +1 -1
  553. package/lib/pages/pagesPage/createPagesQuery.d.ts +1 -1
  554. package/lib/pages/pagesPage/createPagesQuery.d.ts.map +1 -1
  555. package/lib/pages/useSaveConflictQuery.d.ts.map +1 -1
  556. package/lib/preview/block/BlockPreview.d.ts +1 -1
  557. package/lib/preview/block/BlockPreview.d.ts.map +1 -1
  558. package/lib/preview/block/BlockPreview.js +6 -4
  559. package/lib/preview/block/BlockPreviewWithTabs.d.ts +2 -2
  560. package/lib/preview/block/BlockPreviewWithTabs.d.ts.map +1 -1
  561. package/lib/preview/block/SplitPreview.d.ts +1 -1
  562. package/lib/preview/block/SplitPreview.d.ts.map +1 -1
  563. package/lib/preview/block/useBlockPreview.d.ts +1 -1
  564. package/lib/preview/block/useBlockPreview.d.ts.map +1 -1
  565. package/lib/preview/common/DeviceToggle.js +1 -1
  566. package/lib/preview/site/OpenLinkDialog.d.ts +1 -1
  567. package/lib/preview/site/OpenLinkDialog.d.ts.map +1 -1
  568. package/lib/preview/site/OpenLinkDialog.js +1 -1
  569. package/lib/preview/site/SitePreview.d.ts.map +1 -1
  570. package/lib/preview/site/SitePreview.js +9 -3
  571. package/lib/preview/site/iframebridge/SitePreviewIFrameMessage.d.ts +1 -1
  572. package/lib/preview/site/iframebridge/SitePreviewIFrameMessage.d.ts.map +1 -1
  573. package/lib/redirects/RedirectActiveness.d.ts +1 -1
  574. package/lib/redirects/RedirectActiveness.d.ts.map +1 -1
  575. package/lib/redirects/RedirectForm.d.ts +3 -3
  576. package/lib/redirects/RedirectForm.d.ts.map +1 -1
  577. package/lib/redirects/RedirectForm.gql.generated.d.ts +4 -4
  578. package/lib/redirects/RedirectForm.gql.generated.d.ts.map +1 -1
  579. package/lib/redirects/RedirectsGrid.d.ts +1 -1
  580. package/lib/redirects/RedirectsGrid.d.ts.map +1 -1
  581. package/lib/redirects/RedirectsGrid.gql.generated.d.ts +2 -2
  582. package/lib/redirects/RedirectsGrid.gql.generated.d.ts.map +1 -1
  583. package/lib/redirects/RedirectsGrid.js +2 -2
  584. package/lib/redirects/createRedirectsPage.d.ts +2 -2
  585. package/lib/redirects/createRedirectsPage.d.ts.map +1 -1
  586. package/lib/redirects/submitMutation.d.ts +3 -3
  587. package/lib/redirects/submitMutation.d.ts.map +1 -1
  588. package/lib/siteConfigs/siteConfigsConfig.d.ts +1 -1
  589. package/lib/siteConfigs/siteConfigsConfig.d.ts.map +1 -1
  590. package/lib/siteConfigs/useSiteConfig.d.ts +2 -2
  591. package/lib/siteConfigs/useSiteConfig.d.ts.map +1 -1
  592. package/lib/siteConfigs/useSiteConfigs.d.ts +1 -1
  593. package/lib/siteConfigs/useSiteConfigs.d.ts.map +1 -1
  594. package/lib/testing/test-utils.d.ts +1 -1
  595. package/lib/testing/test-utils.d.ts.map +1 -1
  596. package/lib/translation/AzureAiTranslatorProvider.d.ts +2 -2
  597. package/lib/translation/AzureAiTranslatorProvider.d.ts.map +1 -1
  598. package/lib/translation/AzureAiTranslatorProvider.generated.d.ts +8 -0
  599. package/lib/translation/AzureAiTranslatorProvider.generated.d.ts.map +1 -1
  600. package/lib/translation/AzureAiTranslatorProvider.generated.js +2 -1
  601. package/lib/translation/AzureAiTranslatorProvider.js +31 -2
  602. package/lib/translation/TranslatableInterface.d.ts +4 -0
  603. package/lib/translation/TranslatableInterface.d.ts.map +1 -0
  604. package/lib/translation/TranslatableInterface.js +1 -0
  605. package/lib/translation/TranslateContentMenuItem.d.ts +7 -0
  606. package/lib/translation/TranslateContentMenuItem.d.ts.map +1 -0
  607. package/lib/translation/TranslateContentMenuItem.js +99 -0
  608. package/lib/translation/createDocumentTranslationMethods.d.ts +4 -0
  609. package/lib/translation/createDocumentTranslationMethods.d.ts.map +1 -0
  610. package/lib/translation/createDocumentTranslationMethods.js +62 -0
  611. package/lib/userPermissions/UserGrid.d.ts +1 -1
  612. package/lib/userPermissions/UserGrid.d.ts.map +1 -1
  613. package/lib/userPermissions/UserGrid.js +4 -2
  614. package/lib/userPermissions/hooks/currentUser.d.ts +1 -1
  615. package/lib/userPermissions/hooks/currentUser.d.ts.map +1 -1
  616. package/lib/userPermissions/hooks/currentUser.js +14 -6
  617. package/lib/userPermissions/user/ImpersonationButtons.d.ts.map +1 -1
  618. package/lib/userPermissions/user/ImpersonationButtons.js +3 -1
  619. package/lib/userPermissions/user/UserPageToolbar.js +2 -2
  620. package/lib/userPermissions/user/basicData/UserBasicData.js +1 -1
  621. package/lib/userPermissions/user/permissions/ContentScopeGrid.d.ts +1 -1
  622. package/lib/userPermissions/user/permissions/ContentScopeGrid.d.ts.map +1 -1
  623. package/lib/userPermissions/user/permissions/ContentScopeGrid.js +3 -1
  624. package/lib/userPermissions/user/permissions/PermissionGrid.d.ts.map +1 -1
  625. package/lib/userPermissions/user/permissions/PermissionGrid.js +3 -1
  626. package/lib/userPermissions/user/permissions/selectScopesDialogContent/SelectScopesDialogContent.d.ts +2 -2
  627. package/lib/userPermissions/user/permissions/selectScopesDialogContent/SelectScopesDialogContent.d.ts.map +1 -1
  628. package/lib/userPermissions/user/permissions/selectScopesDialogContent/SelectScopesDialogContent.js +3 -1
  629. package/lib/validation/validateJson.d.ts +2 -0
  630. package/lib/validation/validateJson.d.ts.map +1 -0
  631. package/lib/validation/validateJson.js +15 -0
  632. package/lib/warnings/WarningActions.d.ts.map +1 -1
  633. package/lib/warnings/WarningActions.js +3 -1
  634. package/lib/warnings/WarningMessage.d.ts +1 -1
  635. package/lib/warnings/WarningMessage.d.ts.map +1 -1
  636. package/lib/warnings/WarningSeverity.d.ts +1 -1
  637. package/lib/warnings/WarningSeverity.d.ts.map +1 -1
  638. package/lib/warnings/WarningsGrid.d.ts.map +1 -1
  639. package/lib/warnings/WarningsGrid.js +3 -1
  640. package/lib/warnings/warningsConfig.d.ts +1 -1
  641. package/lib/warnings/warningsConfig.d.ts.map +1 -1
  642. package/package.json +40 -23
  643. package/lib/dam/DataGrid/filter/DamSortPopover.d.ts +0 -8
  644. package/lib/dam/DataGrid/filter/DamSortPopover.d.ts.map +0 -1
  645. package/lib/dam/DataGrid/filter/DamSortPopover.js +0 -124
  646. package/lib/dam/DataGrid/filter/DamSortPopover.sc.d.ts +0 -20
  647. package/lib/dam/DataGrid/filter/DamSortPopover.sc.d.ts.map +0 -1
  648. package/lib/dam/DataGrid/filter/DamSortPopover.sc.js +0 -71
  649. package/lib/form/file/chooseFile/ChooseFileDialog.d.ts +0 -10
  650. package/lib/form/file/chooseFile/ChooseFileDialog.d.ts.map +0 -1
  651. package/lib/form/file/chooseFile/ChooseFileDialog.js +0 -115
  652. package/lib/pages/pageTree/useCopyPastePages/ProgressDialog.d.ts.map +0 -1
  653. /package/lib/pages/pageTree/{useCopyPastePages/ProgressDialog.js → useProgressDialog.js} +0 -0
@@ -15,7 +15,7 @@ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r)
15
15
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
16
16
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
17
17
  function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
18
- import { makeRteApi, pasteAndFilterText, Rte, stateToHtml } from "@comet/admin-rte";
18
+ import { htmlToState, makeRteApi, pasteAndFilterText, Rte, stateToHtml } from "@comet/admin-rte";
19
19
  import { BlockMapBuilder, convertFromHTML, convertFromRaw, convertToRaw, EditorState, Modifier } from "draft-js";
20
20
  import isEqual from "lodash.isequal";
21
21
  import { FormattedMessage } from "react-intl";
@@ -77,53 +77,53 @@ function mapLinkEntitiesDataAsync(_x, _x2) {
77
77
  return _mapLinkEntitiesDataAsync.apply(this, arguments);
78
78
  }
79
79
  function _mapLinkEntitiesDataAsync() {
80
- _mapLinkEntitiesDataAsync = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(rawContent, fn) {
80
+ _mapLinkEntitiesDataAsync = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(rawContent, fn) {
81
81
  var convertedEntityMap;
82
- return _regenerator().w(function (_context3) {
83
- while (1) switch (_context3.n) {
82
+ return _regenerator().w(function (_context4) {
83
+ while (1) switch (_context4.n) {
84
84
  case 0:
85
- _context3.n = 1;
85
+ _context4.n = 1;
86
86
  return Promise.all(Object.entries(rawContent.entityMap).map(/*#__PURE__*/function () {
87
- var _ref9 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(_ref8) {
87
+ var _ref9 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(_ref8) {
88
88
  var _ref0, key, val, _t3, _t4, _t5, _t6, _t7, _t8;
89
- return _regenerator().w(function (_context2) {
90
- while (1) switch (_context2.n) {
89
+ return _regenerator().w(function (_context3) {
90
+ while (1) switch (_context3.n) {
91
91
  case 0:
92
92
  _ref0 = _slicedToArray(_ref8, 2), key = _ref0[0], val = _ref0[1];
93
93
  if (!(val.type === "LINK")) {
94
- _context2.n = 2;
94
+ _context3.n = 2;
95
95
  break;
96
96
  }
97
97
  _t3 = key;
98
98
  _t4 = _objectSpread;
99
99
  _t5 = _objectSpread({}, val);
100
100
  _t6 = {};
101
- _context2.n = 1;
101
+ _context3.n = 1;
102
102
  return fn(val.data);
103
103
  case 1:
104
- _t7 = _context2.v;
104
+ _t7 = _context3.v;
105
105
  _t8 = _t4(_t5, _t6, {
106
106
  data: _t7
107
107
  });
108
- return _context2.a(2, [_t3, _t8]);
108
+ return _context3.a(2, [_t3, _t8]);
109
109
  case 2:
110
- return _context2.a(2, [key, val]);
110
+ return _context3.a(2, [key, val]);
111
111
  case 3:
112
- return _context2.a(2);
112
+ return _context3.a(2);
113
113
  }
114
- }, _callee2);
114
+ }, _callee3);
115
115
  }));
116
- return function (_x5) {
116
+ return function (_x7) {
117
117
  return _ref9.apply(this, arguments);
118
118
  };
119
119
  }()));
120
120
  case 1:
121
- convertedEntityMap = _context3.v;
122
- return _context3.a(2, _objectSpread(_objectSpread({}, rawContent), {}, {
121
+ convertedEntityMap = _context4.v;
122
+ return _context4.a(2, _objectSpread(_objectSpread({}, rawContent), {}, {
123
123
  entityMap: Object.fromEntries(convertedEntityMap)
124
124
  }));
125
125
  }
126
- }, _callee3);
126
+ }, _callee4);
127
127
  }));
128
128
  return _mapLinkEntitiesDataAsync.apply(this, arguments);
129
129
  }
@@ -301,7 +301,43 @@ export var createRichTextBlock = function createRichTextBlock(options, override)
301
301
  editorState: state.editorState,
302
302
  options: rteOptions
303
303
  }).html] : [];
304
- }
304
+ },
305
+ translateContent: function () {
306
+ var _translateContent = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(state, translate) {
307
+ var content, _stateToHtml, html, entities, translatedHtml, translatedEditorState;
308
+ return _regenerator().w(function (_context2) {
309
+ while (1) switch (_context2.n) {
310
+ case 0:
311
+ content = state.editorState.getCurrentContent();
312
+ if (content.hasText()) {
313
+ _context2.n = 1;
314
+ break;
315
+ }
316
+ return _context2.a(2, state);
317
+ case 1:
318
+ _stateToHtml = stateToHtml({
319
+ editorState: state.editorState,
320
+ options: rteOptions
321
+ }), html = _stateToHtml.html, entities = _stateToHtml.entities;
322
+ _context2.n = 2;
323
+ return translate(html);
324
+ case 2:
325
+ translatedHtml = _context2.v;
326
+ translatedEditorState = htmlToState({
327
+ html: translatedHtml,
328
+ entities: entities
329
+ });
330
+ return _context2.a(2, {
331
+ editorState: translatedEditorState
332
+ });
333
+ }
334
+ }, _callee2);
335
+ }));
336
+ function translateContent(_x5, _x6) {
337
+ return _translateContent.apply(this, arguments);
338
+ }
339
+ return translateContent;
340
+ }()
305
341
  });
306
342
  if (override) {
307
343
  return override(RichTextBlock);
@@ -1,4 +1,4 @@
1
- import { type BlockInterface } from "./types";
1
+ import type { BlockInterface } from "./types";
2
2
  interface CreateSeoBlockOptions {
3
3
  image?: BlockInterface;
4
4
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createSeoBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/createSeoBlock.tsx"],"names":[],"mappings":"AA4BA,OAAO,EAAE,KAAK,cAAc,EAAmB,MAAM,SAAS,CAAC;AAE/D,UAAU,qBAAqB;IAC3B,KAAK,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,wBAAgB,cAAc,CAC1B,EAAE,KAAuB,EAAE,GAAE,qBAA0B,EACvD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,cAAc,GACrD,cAAc,CAmShB"}
1
+ {"version":3,"file":"createSeoBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/createSeoBlock.tsx"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,SAAS,CAAC;AAE1D,UAAU,qBAAqB;IAC3B,KAAK,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,wBAAgB,cAAc,CAC1B,EAAE,KAAuB,EAAE,GAAE,qBAA0B,EACvD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,cAAc,GACrD,cAAc,CAmShB"}
@@ -28,6 +28,7 @@ import { Field as ReactFinalFormField, useForm } from "react-final-form";
28
28
  import { FieldArray } from "react-final-form-arrays";
29
29
  import { FormattedMessage, useIntl } from "react-intl";
30
30
  import { useContentGenerationConfig } from "../documents/ContentGenerationConfigContext";
31
+ import { validateJson } from "../validation/validateJson";
31
32
  import { validateUrl } from "../validation/validateUrl";
32
33
  import { BlockAdminComponentButton } from "./common/BlockAdminComponentButton";
33
34
  import { BlockAdminComponentPaper } from "./common/BlockAdminComponentPaper";
@@ -200,7 +201,8 @@ export function createSeoBlock() {
200
201
  multiline: true,
201
202
  rows: 15,
202
203
  component: FinalFormInput,
203
- fullWidth: true
204
+ fullWidth: true,
205
+ validate: validateJson
204
206
  })]
205
207
  }), /*#__PURE__*/_jsxs(Box, {
206
208
  marginTop: 8,
@@ -422,7 +424,7 @@ var AddButtonContent = /*#__PURE__*/styled("span", process.env.NODE_ENV === "pro
422
424
  styles: "display:flex;flex-direction:column;align-items:center;padding:4px 0"
423
425
  } : {
424
426
  name: "3g6o2",
425
- styles: "display:flex;flex-direction:column;align-items:center;padding:4px 0/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9ja3MvY3JlYXRlU2VvQmxvY2sudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1YdUMiLCJmaWxlIjoiLi4vLi4vc3JjL2Jsb2Nrcy9jcmVhdGVTZW9CbG9jay50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCwgdHlwZSBGaWVsZFByb3BzLCBGaW5hbEZvcm1JbnB1dCwgTG9hZGluZywgbWVzc2FnZXMsIFNlbGVjdEZpZWxkIH0gZnJvbSBcIkBjb21ldC9hZG1pblwiO1xuaW1wb3J0IHsgQWRkLCBBcnRpZmljaWFsSW50ZWxsaWdlbmNlLCBEZWxldGUgfSBmcm9tIFwiQGNvbWV0L2FkbWluLWljb25zXCI7XG5pbXBvcnQgeyBCb3gsIERpdmlkZXIsIEdyaWQsIEljb25CdXR0b24sIFBhcGVyLCBUeXBvZ3JhcGh5IH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWxcIjtcbmltcG9ydCB7IHN0eWxlZCB9IGZyb20gXCJAbXVpL21hdGVyaWFsL3N0eWxlc1wiO1xuaW1wb3J0IGFycmF5TXV0YXRvcnMgZnJvbSBcImZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRmllbGQgYXMgUmVhY3RGaW5hbEZvcm1GaWVsZCwgdXNlRm9ybSB9IGZyb20gXCJyZWFjdC1maW5hbC1mb3JtXCI7XG5pbXBvcnQgeyBGaWVsZEFycmF5IH0gZnJvbSBcInJlYWN0LWZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyBGb3JtYXR0ZWRNZXNzYWdlLCB1c2VJbnRsIH0gZnJvbSBcInJlYWN0LWludGxcIjtcblxuaW1wb3J0IHsgdHlwZSBTZW9CbG9ja0RhdGEsIHR5cGUgU2VvQmxvY2tJbnB1dCB9IGZyb20gXCIuLi9ibG9ja3MuZ2VuZXJhdGVkXCI7XG5pbXBvcnQgeyB1c2VDb250ZW50R2VuZXJhdGlvbkNvbmZpZyB9IGZyb20gXCIuLi9kb2N1bWVudHMvQ29udGVudEdlbmVyYXRpb25Db25maWdDb250ZXh0XCI7XG5pbXBvcnQgeyB2YWxpZGF0ZVVybCB9IGZyb20gXCIuLi92YWxpZGF0aW9uL3ZhbGlkYXRlVXJsXCI7XG5pbXBvcnQgeyBCbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uIH0gZnJvbSBcIi4vY29tbW9uL0Jsb2NrQWRtaW5Db21wb25lbnRCdXR0b25cIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRQYXBlciB9IGZyb20gXCIuL2NvbW1vbi9CbG9ja0FkbWluQ29tcG9uZW50UGFwZXJcIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXAgfSBmcm9tIFwiLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudFNlY3Rpb25Hcm91cFwiO1xuaW1wb3J0IHsgQ29sbGFwc2libGUgfSBmcm9tIFwiLi9jb21tb24vQ29sbGFwc2libGVcIjtcbmltcG9ydCB7IENvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyIH0gZnJvbSBcIi4vY29tbW9uL0NvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyXCI7XG5pbXBvcnQgeyBjcmVhdGVPcHRpb25hbEJsb2NrIH0gZnJvbSBcIi4vZmFjdG9yaWVzL2NyZWF0ZU9wdGlvbmFsQmxvY2tcIjtcbmltcG9ydCB7IEJsb2Nrc0ZpbmFsRm9ybSB9IGZyb20gXCIuL2Zvcm0vQmxvY2tzRmluYWxGb3JtXCI7XG5pbXBvcnQgeyBjb21wb3NlQmxvY2tzIH0gZnJvbSBcIi4vaGVscGVycy9jb21wb3NlQmxvY2tzL2NvbXBvc2VCbG9ja3NcIjtcbmltcG9ydCB7IGNyZWF0ZUJsb2NrU2tlbGV0b24gfSBmcm9tIFwiLi9oZWxwZXJzL2NyZWF0ZUJsb2NrU2tlbGV0b25cIjtcbmltcG9ydCB7IGRlY29tcG9zZVVwZGF0ZVN0YXRlQWN0aW9uIH0gZnJvbSBcIi4vaGVscGVycy9kZWNvbXBvc2VVcGRhdGVTdGF0ZUFjdGlvblwiO1xuaW1wb3J0IHsgd2l0aEFkZGl0aW9uYWxCbG9ja0F0dHJpYnV0ZXMgfSBmcm9tIFwiLi9oZWxwZXJzL3dpdGhBZGRpdGlvbmFsQmxvY2tBdHRyaWJ1dGVzXCI7XG5pbXBvcnQgeyBQaXhlbEltYWdlQmxvY2sgfSBmcm9tIFwiLi9QaXhlbEltYWdlQmxvY2tcIjtcbmltcG9ydCB7IHR5cGUgU2VvVGFnLCB1c2VTZW9UYWdHZW5lcmF0aW9uIH0gZnJvbSBcIi4vc2VvL3VzZVNlb1RhZ0dlbmVyYXRpb25cIjtcbmltcG9ydCB1c2VTaXRlbWFwQ2hhbmdlRnJlcXVlbmN5Rm9ybU9wdGlvbnMgZnJvbSBcIi4vc2VvL3VzZVNpdGVtYXBDaGFuZ2VGcmVxdWVuY3lGb3JtT3B0aW9uc1wiO1xuaW1wb3J0IHVzZVNpdGVtYXBQYWdlUHJpb3JpdHlGb3JtT3B0aW9ucyBmcm9tIFwiLi9zZW8vdXNlU2l0ZW1hcFBhZ2VQcmlvcml0eUZvcm1PcHRpb25zXCI7XG5pbXBvcnQgeyB0eXBlIEJsb2NrSW50ZXJmYWNlLCB0eXBlIEJsb2NrU3RhdGUgfSBmcm9tIFwiLi90eXBlc1wiO1xuXG5pbnRlcmZhY2UgQ3JlYXRlU2VvQmxvY2tPcHRpb25zIHtcbiAgICBpbWFnZT86IEJsb2NrSW50ZXJmYWNlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VvQmxvY2soXG4gICAgeyBpbWFnZSA9IFBpeGVsSW1hZ2VCbG9jayB9OiBDcmVhdGVTZW9CbG9ja09wdGlvbnMgPSB7fSxcbiAgICBvdmVycmlkZT86IChibG9jazogQmxvY2tJbnRlcmZhY2UpID0+IEJsb2NrSW50ZXJmYWNlLFxuKTogQmxvY2tJbnRlcmZhY2Uge1xuICAgIGNvbnN0IE9wdGlvbmFsSW1hZ2VCbG9jayA9IGNyZWF0ZU9wdGlvbmFsQmxvY2soaW1hZ2UsIHtcbiAgICAgICAgdGl0bGU6IDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuc2l0ZW1hcC5vcGVuR3JhcGhJbWFnZVwiIGRlZmF1bHRNZXNzYWdlPVwiT3BlbiBHcmFwaCBJbWFnZVwiIC8+LFxuICAgIH0pO1xuXG4gICAgY29uc3QgY29tcG9zZWQgPSBjb21wb3NlQmxvY2tzKHsgb3BlbkdyYXBoSW1hZ2U6IE9wdGlvbmFsSW1hZ2VCbG9jayB9KTtcblxuICAgIGNvbnN0IHsgYXBpOiBjb21wb3NlZEFwaSwgYmxvY2s6IGNvbXBvc2VkQmxvY2sgfSA9IGNvbXBvc2VkO1xuXG4gICAgY29uc3QgYmxvY2sgPSB3aXRoQWRkaXRpb25hbEJsb2NrQXR0cmlidXRlczxPbWl0PFNlb0Jsb2NrRGF0YSwgXCJvcGVuR3JhcGhJbWFnZVwiPj4oe1xuICAgICAgICBub0luZGV4OiBmYWxzZSxcbiAgICAgICAgcHJpb3JpdHk6IFwiMF81XCIsXG4gICAgICAgIGNoYW5nZUZyZXF1ZW5jeTogXCJ3ZWVrbHlcIixcbiAgICAgICAgYWx0ZXJuYXRpdmVMaW5rczogW10sXG4gICAgICAgIGh0bWxUaXRsZTogdW5kZWZpbmVkLFxuICAgICAgICBtZXRhRGVzY3JpcHRpb246IHVuZGVmaW5lZCxcbiAgICAgICAgb3BlbkdyYXBoVGl0bGU6IHVuZGVmaW5lZCxcbiAgICAgICAgb3BlbkdyYXBoRGVzY3JpcHRpb246IHVuZGVmaW5lZCxcbiAgICAgICAgc3RydWN0dXJlZERhdGE6IHVuZGVmaW5lZCxcbiAgICAgICAgY2Fub25pY2FsVXJsOiB1bmRlZmluZWQsXG4gICAgfSkoY29tcG9zZWRCbG9jayk7XG5cbiAgICB0eXBlIFN0YXRlID0gQmxvY2tTdGF0ZTx0eXBlb2YgYmxvY2s+O1xuXG4gICAgY29uc3QgU2VvQmxvY2s6IEJsb2NrSW50ZXJmYWNlPFNlb0Jsb2NrRGF0YSwgU3RhdGUsIFNlb0Jsb2NrSW5wdXQ+ID0ge1xuICAgICAgICAuLi5jcmVhdGVCbG9ja1NrZWxldG9uKCksXG4gICAgICAgIC4uLmJsb2NrLFxuICAgICAgICBuYW1lOiBcIlNlb1wiLFxuXG4gICAgICAgIGRpc3BsYXlOYW1lOiA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW9cIiBkZWZhdWx0TWVzc2FnZT1cIlNFT1wiIC8+LFxuXG4gICAgICAgIEFkbWluQ29tcG9uZW50OiAoeyBzdGF0ZSwgdXBkYXRlU3RhdGUgfSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaW50bCA9IHVzZUludGwoKTtcbiAgICAgICAgICAgIGNvbnN0IHsgb3BlbkdyYXBoSW1hZ2UgfSA9IGNvbXBvc2VkQXBpLmFkbWluQ29tcG9uZW50cyh7XG4gICAgICAgICAgICAgICAgc3RhdGUsXG4gICAgICAgICAgICAgICAgdXBkYXRlU3RhdGU6IGRlY29tcG9zZVVwZGF0ZVN0YXRlQWN0aW9uKHVwZGF0ZVN0YXRlLCBbXCJvcGVuR3JhcGhJbWFnZVwiXSksXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgY29uc3QgcHJpb3JpdHlPcHRpb25zID0gdXNlU2l0ZW1hcFBhZ2VQcmlvcml0eUZvcm1PcHRpb25zKCk7XG4gICAgICAgICAgICBjb25zdCBjaGFuZ2VGcmVxdWVuY3lPcHRpb25zID0gdXNlU2l0ZW1hcENoYW5nZUZyZXF1ZW5jeUZvcm1PcHRpb25zKCk7XG5cbiAgICAgICAgICAgIGNvbnN0IGdlbmVyYXRlU2VvVGFnID0gdXNlU2VvVGFnR2VuZXJhdGlvbigpO1xuXG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgIDxCbG9ja3NGaW5hbEZvcm1cbiAgICAgICAgICAgICAgICAgICAgICAgIG9uU3VibWl0PXsodmFsdWVzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlU3RhdGUoKHByZXZTdGF0ZSkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBodG1sVGl0bGU6IHZhbHVlcy5odG1sVGl0bGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFEZXNjcmlwdGlvbjogdmFsdWVzLm1ldGFEZXNjcmlwdGlvbixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuR3JhcGhUaXRsZTogdmFsdWVzLm9wZW5HcmFwaFRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuR3JhcGhEZXNjcmlwdGlvbjogdmFsdWVzLm9wZW5HcmFwaERlc2NyaXB0aW9uLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdHVyZWREYXRhOiB2YWx1ZXMuc3RydWN0dXJlZERhdGEsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9JbmRleDogdmFsdWVzLm5vSW5kZXgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW9yaXR5OiB2YWx1ZXMucHJpb3JpdHksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZUZyZXF1ZW5jeTogdmFsdWVzLmNoYW5nZUZyZXF1ZW5jeSxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYW5vbmljYWxVcmw6IHZhbHVlcy5jYW5vbmljYWxVcmwsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0ZXJuYXRpdmVMaW5rczogdmFsdWVzLmFsdGVybmF0aXZlTGlua3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIG11dGF0b3JzPXt7IC4uLmFycmF5TXV0YXRvcnMgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIGluaXRpYWxWYWx1ZXM9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBodG1sVGl0bGU6IHN0YXRlLmh0bWxUaXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXRhRGVzY3JpcHRpb246IHN0YXRlLm1ldGFEZXNjcmlwdGlvbixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5HcmFwaFRpdGxlOiBzdGF0ZS5vcGVuR3JhcGhUaXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuR3JhcGhEZXNjcmlwdGlvbjogc3RhdGUub3BlbkdyYXBoRGVzY3JpcHRpb24sXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3R1cmVkRGF0YTogc3RhdGUuc3RydWN0dXJlZERhdGEsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBub0luZGV4OiBzdGF0ZS5ub0luZGV4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW9yaXR5OiBzdGF0ZS5wcmlvcml0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2VGcmVxdWVuY3k6IHN0YXRlLmNoYW5nZUZyZXF1ZW5jeSxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbm9uaWNhbFVybDogc3RhdGUuY2Fub25pY2FsVXJsLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0ZXJuYXRpdmVMaW5rczogc3RhdGUuYWx0ZXJuYXRpdmVMaW5rcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBNZXRhICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLm1ldGEuc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJNZXRhIFRhZ3NcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8uaHRtbFRpdGxlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJIVE1MIFRpdGxlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiaHRtbFRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVTZW9UYWc9e2dlbmVyYXRlU2VvVGFnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5tZXRhRGVzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIk1ldGEgRGVzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJtZXRhRGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZVNlb1RhZz17Z2VuZXJhdGVTZW9UYWd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpbGluZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzPXszfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzTWF4PXs1fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBPcGVuIEdyYXBoICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8ub3BlbkdyYXBoLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiT3BlbiBHcmFwaFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8ub3BlbkdyYXBoVGl0bGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIlRpdGxlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwib3BlbkdyYXBoVGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZVNlb1RhZz17Z2VuZXJhdGVTZW9UYWd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5vcGVuR3JhcGhEZXNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiRGVzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJvcGVuR3JhcGhEZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlU2VvVGFnPXtnZW5lcmF0ZVNlb1RhZ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlsaW5lPXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzPXszfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzTWF4PXs1fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtvcGVuR3JhcGhJbWFnZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogU3RydWN0dXJlZCBEYXRhICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uc3RydWN0dXJlZERhdGEuc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJTdHJ1Y3R1cmVkIERhdGFcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGQgbmFtZT1cInN0cnVjdHVyZWREYXRhXCIgbXVsdGlsaW5lPXt0cnVlfSByb3dzPXsxNX0gY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH0gZnVsbFdpZHRoIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIFNpdGVtYXAgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5zaXRlbWFwLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiU2l0ZW1hcFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFJlYWN0RmluYWxGb3JtRmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cIm5vSW5kZXhcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJzZT17KHYpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAhdjsgLy8gcGFyc2UgZnJvbSBub0luZGV4IHRvIGluZGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD17KHYpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAhdjsgLy8gZm9ybWF0IGJhY2sgZnJvbSBpbmRleCB0byBub0luZGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgaW5wdXQ6IHsgY2hlY2tlZCwgb25DaGFuZ2UgfSB9KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBvcGVuID0gY2hlY2tlZCA/IGNoZWNrZWQgOiBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFBhcGVyIHZhcmlhbnQ9XCJvdXRsaW5lZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q29sbGFwc2libGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW49e29wZW59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXI9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDb2xsYXBzaWJsZVN3aXRjaEJ1dHRvbkhlYWRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGVja2VkPXtvcGVufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT17PEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5zZW8uc2l0ZW1hcC5wYWdlSW5kZXhcIiBkZWZhdWx0TWVzc2FnZT1cIlBhZ2UgSW5kZXhcIiAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RGl2aWRlciAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBwYWRkaW5nPXs0fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLnNpdGVtYXAucHJpb3JpdHlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIlByaW9yaXR5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwicHJpb3JpdHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucz17cHJpb3JpdHlPcHRpb25zfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5zaXRlbWFwLmNoYW5nZUZyZXF1ZW5jeVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiQ2hhbmdlIEZyZXF1ZW5jeVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImNoYW5nZUZyZXF1ZW5jeVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zPXtjaGFuZ2VGcmVxdWVuY3lPcHRpb25zfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1BhcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1JlYWN0RmluYWxGb3JtRmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIENhbm9uaWNhbCBUYWcgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5jYW5vbmljYWxUYWcuc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJDYW5vbmljYWwgVGFnXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkIGxhYmVsPXs8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMudXJsfSAvPn0gbmFtZT1cImNhbm9uaWNhbFVybFwiIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9IGZ1bGxXaWR0aCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBBbHRlcm5hdGUgSHJlZmxhbmcgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tBZG1pbkNvbXBvbmVudFNlY3Rpb25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT17PEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLmFsdGVybmF0aXZlTGlua3Muc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJBbHRlcm5hdGUgbGlua3NcIiAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCbG9ja0FkbWluQ29tcG9uZW50UGFwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRBcnJheSBuYW1lPVwiYWx0ZXJuYXRpdmVMaW5rc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsoeyBmaWVsZHMgfSkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2ZpZWxkcy5tYXAoKGxpbmssIGkpID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBrZXk9e2l9IGNvbnRhaW5lciBzcGFjaW5nPXsyfSBzeD17eyBtYXJnaW5Cb3R0b206IDIgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIHNpemU9ezN9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLmFsdGVybmF0aXZlTGlua3MuY29kZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZT1cIkNvZGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPXtgJHtsaW5rfS5jb2RlYH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiZW4tVVNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBzaXplPVwiZ3Jvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9ezxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy51cmx9IC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9e2Ake2xpbmt9LnVybGB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWxpZGF0ZT17KHVybCkgPT4gdmFsaWRhdGVVcmwodXJsKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgYWxpZ25TZWxmPVwiZmxleC1zdGFydFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPERlbGV0ZUJ1dHRvbldyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEljb25CdXR0b24gb25DbGljaz17KCkgPT4gZmllbGRzLnJlbW92ZShpKX0gc2l6ZT1cImxhcmdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEZWxldGUgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ljb25CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0RlbGV0ZUJ1dHRvbldyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uIHZhcmlhbnQ9XCJwcmltYXJ5XCIgb25DbGljaz17KCkgPT4gZmllbGRzLnB1c2goeyBjb2RlOiBcIlwiLCB1cmw6IFwiXCIgfSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxBZGRCdXR0b25Db250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QWRkQnV0dG9uSWNvbiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy5hZGR9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0FkZEJ1dHRvbkNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Jsb2NrQWRtaW5Db21wb25lbnRCdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ZpZWxkQXJyYXk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tBZG1pbkNvbXBvbmVudFNlY3Rpb25Hcm91cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICA8L0Jsb2Nrc0ZpbmFsRm9ybT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0sXG4gICAgfTtcblxuICAgIGlmIChvdmVycmlkZSkge1xuICAgICAgICByZXR1cm4gb3ZlcnJpZGUoU2VvQmxvY2spO1xuICAgIH1cblxuICAgIHJldHVybiBTZW9CbG9jaztcbn1cblxuLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmludGVyZmFjZSBGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblByb3BzPEZpZWxkVmFsdWUgPSBhbnksIEZpZWxkRWxlbWVudCBleHRlbmRzIEhUTUxFbGVtZW50ID0gSFRNTEVsZW1lbnQ+XG4gICAgZXh0ZW5kcyBGaWVsZFByb3BzPEZpZWxkVmFsdWUsIEZpZWxkRWxlbWVudD4ge1xuICAgIG5hbWU6IFNlb1RhZztcbiAgICBnZW5lcmF0ZVNlb1RhZzogKHRhZzogU2VvVGFnLCBjdXJyZW50VmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkgPT4gUHJvbWlzZTxzdHJpbmc+O1xufVxuXG4vKiBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuZnVuY3Rpb24gRmllbGRXaXRoQ29udGVudEdlbmVyYXRpb248RmllbGRWYWx1ZSA9IGFueSwgRmllbGRFbGVtZW50IGV4dGVuZHMgSFRNTEVsZW1lbnQgPSBIVE1MRWxlbWVudD4oe1xuICAgIG5hbWUsXG4gICAgZ2VuZXJhdGVTZW9UYWcsXG4gICAgZW5kQWRvcm5tZW50OiBwYXNzZWRFbmRBZG9ybm1lbnQsXG4gICAgLi4ucHJvcHNcbn06IEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uUHJvcHM8RmllbGRWYWx1ZSwgRmllbGRFbGVtZW50Pikge1xuICAgIGNvbnN0IGNvbnRlbnRHZW5lcmF0aW9uQ29uZmlnID0gdXNlQ29udGVudEdlbmVyYXRpb25Db25maWcoKTtcbiAgICBjb25zdCBmb3JtQXBpID0gdXNlRm9ybSgpO1xuXG4gICAgY29uc3QgW2xvYWRpbmcsIHNldExvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gICAgY29uc3QgZW5kQWRvcm5tZW50ID0gY29udGVudEdlbmVyYXRpb25Db25maWc/LnNlbyA/IChcbiAgICAgICAgPD5cbiAgICAgICAgICAgIHtwYXNzZWRFbmRBZG9ybm1lbnR9XG4gICAgICAgICAgICA8SWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17YXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBzZXRMb2FkaW5nKHRydWUpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzZW9UYWcgPSBhd2FpdCBnZW5lcmF0ZVNlb1RhZyhuYW1lLCBmb3JtQXBpLmdldEZpZWxkU3RhdGUobmFtZSk/LnZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgc2V0TG9hZGluZyhmYWxzZSk7XG4gICAgICAgICAgICAgICAgICAgIGZvcm1BcGkuY2hhbmdlKG5hbWUsIHNlb1RhZyk7XG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7bG9hZGluZyA/IDxMb2FkaW5nIGJlaGF2aW9yPVwiZmlsbFBhcmVudFwiIGZvbnRTaXplPVwibGFyZ2VcIiAvPiA6IDxBcnRpZmljaWFsSW50ZWxsaWdlbmNlIC8+fVxuICAgICAgICAgICAgPC9JY29uQnV0dG9uPlxuICAgICAgICA8Lz5cbiAgICApIDogKFxuICAgICAgICBwYXNzZWRFbmRBZG9ybm1lbnRcbiAgICApO1xuXG4gICAgcmV0dXJuIDxGaWVsZCBuYW1lPXtuYW1lfSBlbmRBZG9ybm1lbnQ9e2VuZEFkb3JubWVudH0gey4uLnByb3BzfSAvPjtcbn1cblxuY29uc3QgQWRkQnV0dG9uQ29udGVudCA9IHN0eWxlZChcInNwYW5cIilgXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogNHB4IDA7XG5gO1xuXG5jb25zdCBBZGRCdXR0b25JY29uID0gc3R5bGVkKEFkZClgXG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbmA7XG5cbmNvbnN0IERlbGV0ZUJ1dHRvbldyYXBwZXIgPSBzdHlsZWQoXCJkaXZcIilgXG4gICAgcGFkZGluZy10b3A6IDI0cHg7XG5gO1xuIl19 */",
427
+ styles: "display:flex;flex-direction:column;align-items:center;padding:4px 0/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9ja3MvY3JlYXRlU2VvQmxvY2sudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9YdUMiLCJmaWxlIjoiLi4vLi4vc3JjL2Jsb2Nrcy9jcmVhdGVTZW9CbG9jay50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCwgdHlwZSBGaWVsZFByb3BzLCBGaW5hbEZvcm1JbnB1dCwgTG9hZGluZywgbWVzc2FnZXMsIFNlbGVjdEZpZWxkIH0gZnJvbSBcIkBjb21ldC9hZG1pblwiO1xuaW1wb3J0IHsgQWRkLCBBcnRpZmljaWFsSW50ZWxsaWdlbmNlLCBEZWxldGUgfSBmcm9tIFwiQGNvbWV0L2FkbWluLWljb25zXCI7XG5pbXBvcnQgeyBCb3gsIERpdmlkZXIsIEdyaWQsIEljb25CdXR0b24sIFBhcGVyLCBUeXBvZ3JhcGh5IH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWxcIjtcbmltcG9ydCB7IHN0eWxlZCB9IGZyb20gXCJAbXVpL21hdGVyaWFsL3N0eWxlc1wiO1xuaW1wb3J0IGFycmF5TXV0YXRvcnMgZnJvbSBcImZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRmllbGQgYXMgUmVhY3RGaW5hbEZvcm1GaWVsZCwgdXNlRm9ybSB9IGZyb20gXCJyZWFjdC1maW5hbC1mb3JtXCI7XG5pbXBvcnQgeyBGaWVsZEFycmF5IH0gZnJvbSBcInJlYWN0LWZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyBGb3JtYXR0ZWRNZXNzYWdlLCB1c2VJbnRsIH0gZnJvbSBcInJlYWN0LWludGxcIjtcblxuaW1wb3J0IHR5cGUgeyBTZW9CbG9ja0RhdGEsIFNlb0Jsb2NrSW5wdXQgfSBmcm9tIFwiLi4vYmxvY2tzLmdlbmVyYXRlZFwiO1xuaW1wb3J0IHsgdXNlQ29udGVudEdlbmVyYXRpb25Db25maWcgfSBmcm9tIFwiLi4vZG9jdW1lbnRzL0NvbnRlbnRHZW5lcmF0aW9uQ29uZmlnQ29udGV4dFwiO1xuaW1wb3J0IHsgdmFsaWRhdGVKc29uIH0gZnJvbSBcIi4uL3ZhbGlkYXRpb24vdmFsaWRhdGVKc29uXCI7XG5pbXBvcnQgeyB2YWxpZGF0ZVVybCB9IGZyb20gXCIuLi92YWxpZGF0aW9uL3ZhbGlkYXRlVXJsXCI7XG5pbXBvcnQgeyBCbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uIH0gZnJvbSBcIi4vY29tbW9uL0Jsb2NrQWRtaW5Db21wb25lbnRCdXR0b25cIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRQYXBlciB9IGZyb20gXCIuL2NvbW1vbi9CbG9ja0FkbWluQ29tcG9uZW50UGFwZXJcIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXAgfSBmcm9tIFwiLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudFNlY3Rpb25Hcm91cFwiO1xuaW1wb3J0IHsgQ29sbGFwc2libGUgfSBmcm9tIFwiLi9jb21tb24vQ29sbGFwc2libGVcIjtcbmltcG9ydCB7IENvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyIH0gZnJvbSBcIi4vY29tbW9uL0NvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyXCI7XG5pbXBvcnQgeyBjcmVhdGVPcHRpb25hbEJsb2NrIH0gZnJvbSBcIi4vZmFjdG9yaWVzL2NyZWF0ZU9wdGlvbmFsQmxvY2tcIjtcbmltcG9ydCB7IEJsb2Nrc0ZpbmFsRm9ybSB9IGZyb20gXCIuL2Zvcm0vQmxvY2tzRmluYWxGb3JtXCI7XG5pbXBvcnQgeyBjb21wb3NlQmxvY2tzIH0gZnJvbSBcIi4vaGVscGVycy9jb21wb3NlQmxvY2tzL2NvbXBvc2VCbG9ja3NcIjtcbmltcG9ydCB7IGNyZWF0ZUJsb2NrU2tlbGV0b24gfSBmcm9tIFwiLi9oZWxwZXJzL2NyZWF0ZUJsb2NrU2tlbGV0b25cIjtcbmltcG9ydCB7IGRlY29tcG9zZVVwZGF0ZVN0YXRlQWN0aW9uIH0gZnJvbSBcIi4vaGVscGVycy9kZWNvbXBvc2VVcGRhdGVTdGF0ZUFjdGlvblwiO1xuaW1wb3J0IHsgd2l0aEFkZGl0aW9uYWxCbG9ja0F0dHJpYnV0ZXMgfSBmcm9tIFwiLi9oZWxwZXJzL3dpdGhBZGRpdGlvbmFsQmxvY2tBdHRyaWJ1dGVzXCI7XG5pbXBvcnQgeyBQaXhlbEltYWdlQmxvY2sgfSBmcm9tIFwiLi9QaXhlbEltYWdlQmxvY2tcIjtcbmltcG9ydCB7IHR5cGUgU2VvVGFnLCB1c2VTZW9UYWdHZW5lcmF0aW9uIH0gZnJvbSBcIi4vc2VvL3VzZVNlb1RhZ0dlbmVyYXRpb25cIjtcbmltcG9ydCB1c2VTaXRlbWFwQ2hhbmdlRnJlcXVlbmN5Rm9ybU9wdGlvbnMgZnJvbSBcIi4vc2VvL3VzZVNpdGVtYXBDaGFuZ2VGcmVxdWVuY3lGb3JtT3B0aW9uc1wiO1xuaW1wb3J0IHVzZVNpdGVtYXBQYWdlUHJpb3JpdHlGb3JtT3B0aW9ucyBmcm9tIFwiLi9zZW8vdXNlU2l0ZW1hcFBhZ2VQcmlvcml0eUZvcm1PcHRpb25zXCI7XG5pbXBvcnQgdHlwZSB7IEJsb2NrSW50ZXJmYWNlLCBCbG9ja1N0YXRlIH0gZnJvbSBcIi4vdHlwZXNcIjtcblxuaW50ZXJmYWNlIENyZWF0ZVNlb0Jsb2NrT3B0aW9ucyB7XG4gICAgaW1hZ2U/OiBCbG9ja0ludGVyZmFjZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVNlb0Jsb2NrKFxuICAgIHsgaW1hZ2UgPSBQaXhlbEltYWdlQmxvY2sgfTogQ3JlYXRlU2VvQmxvY2tPcHRpb25zID0ge30sXG4gICAgb3ZlcnJpZGU/OiAoYmxvY2s6IEJsb2NrSW50ZXJmYWNlKSA9PiBCbG9ja0ludGVyZmFjZSxcbik6IEJsb2NrSW50ZXJmYWNlIHtcbiAgICBjb25zdCBPcHRpb25hbEltYWdlQmxvY2sgPSBjcmVhdGVPcHRpb25hbEJsb2NrKGltYWdlLCB7XG4gICAgICAgIHRpdGxlOiA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LnNpdGVtYXAub3BlbkdyYXBoSW1hZ2VcIiBkZWZhdWx0TWVzc2FnZT1cIk9wZW4gR3JhcGggSW1hZ2VcIiAvPixcbiAgICB9KTtcblxuICAgIGNvbnN0IGNvbXBvc2VkID0gY29tcG9zZUJsb2Nrcyh7IG9wZW5HcmFwaEltYWdlOiBPcHRpb25hbEltYWdlQmxvY2sgfSk7XG5cbiAgICBjb25zdCB7IGFwaTogY29tcG9zZWRBcGksIGJsb2NrOiBjb21wb3NlZEJsb2NrIH0gPSBjb21wb3NlZDtcblxuICAgIGNvbnN0IGJsb2NrID0gd2l0aEFkZGl0aW9uYWxCbG9ja0F0dHJpYnV0ZXM8T21pdDxTZW9CbG9ja0RhdGEsIFwib3BlbkdyYXBoSW1hZ2VcIj4+KHtcbiAgICAgICAgbm9JbmRleDogZmFsc2UsXG4gICAgICAgIHByaW9yaXR5OiBcIjBfNVwiLFxuICAgICAgICBjaGFuZ2VGcmVxdWVuY3k6IFwid2Vla2x5XCIsXG4gICAgICAgIGFsdGVybmF0aXZlTGlua3M6IFtdLFxuICAgICAgICBodG1sVGl0bGU6IHVuZGVmaW5lZCxcbiAgICAgICAgbWV0YURlc2NyaXB0aW9uOiB1bmRlZmluZWQsXG4gICAgICAgIG9wZW5HcmFwaFRpdGxlOiB1bmRlZmluZWQsXG4gICAgICAgIG9wZW5HcmFwaERlc2NyaXB0aW9uOiB1bmRlZmluZWQsXG4gICAgICAgIHN0cnVjdHVyZWREYXRhOiB1bmRlZmluZWQsXG4gICAgICAgIGNhbm9uaWNhbFVybDogdW5kZWZpbmVkLFxuICAgIH0pKGNvbXBvc2VkQmxvY2spO1xuXG4gICAgdHlwZSBTdGF0ZSA9IEJsb2NrU3RhdGU8dHlwZW9mIGJsb2NrPjtcblxuICAgIGNvbnN0IFNlb0Jsb2NrOiBCbG9ja0ludGVyZmFjZTxTZW9CbG9ja0RhdGEsIFN0YXRlLCBTZW9CbG9ja0lucHV0PiA9IHtcbiAgICAgICAgLi4uY3JlYXRlQmxvY2tTa2VsZXRvbigpLFxuICAgICAgICAuLi5ibG9jayxcbiAgICAgICAgbmFtZTogXCJTZW9cIixcblxuICAgICAgICBkaXNwbGF5TmFtZTogPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvXCIgZGVmYXVsdE1lc3NhZ2U9XCJTRU9cIiAvPixcblxuICAgICAgICBBZG1pbkNvbXBvbmVudDogKHsgc3RhdGUsIHVwZGF0ZVN0YXRlIH0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGludGwgPSB1c2VJbnRsKCk7XG4gICAgICAgICAgICBjb25zdCB7IG9wZW5HcmFwaEltYWdlIH0gPSBjb21wb3NlZEFwaS5hZG1pbkNvbXBvbmVudHMoe1xuICAgICAgICAgICAgICAgIHN0YXRlLFxuICAgICAgICAgICAgICAgIHVwZGF0ZVN0YXRlOiBkZWNvbXBvc2VVcGRhdGVTdGF0ZUFjdGlvbih1cGRhdGVTdGF0ZSwgW1wib3BlbkdyYXBoSW1hZ2VcIl0pLFxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGNvbnN0IHByaW9yaXR5T3B0aW9ucyA9IHVzZVNpdGVtYXBQYWdlUHJpb3JpdHlGb3JtT3B0aW9ucygpO1xuICAgICAgICAgICAgY29uc3QgY2hhbmdlRnJlcXVlbmN5T3B0aW9ucyA9IHVzZVNpdGVtYXBDaGFuZ2VGcmVxdWVuY3lGb3JtT3B0aW9ucygpO1xuXG4gICAgICAgICAgICBjb25zdCBnZW5lcmF0ZVNlb1RhZyA9IHVzZVNlb1RhZ0dlbmVyYXRpb24oKTtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICA8QmxvY2tzRmluYWxGb3JtXG4gICAgICAgICAgICAgICAgICAgICAgICBvblN1Ym1pdD17KHZhbHVlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZVN0YXRlKChwcmV2U3RhdGUpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLnByZXZTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHRtbFRpdGxlOiB2YWx1ZXMuaHRtbFRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXRhRGVzY3JpcHRpb246IHZhbHVlcy5tZXRhRGVzY3JpcHRpb24sXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlbkdyYXBoVGl0bGU6IHZhbHVlcy5vcGVuR3JhcGhUaXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlbkdyYXBoRGVzY3JpcHRpb246IHZhbHVlcy5vcGVuR3JhcGhEZXNjcmlwdGlvbixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3R1cmVkRGF0YTogdmFsdWVzLnN0cnVjdHVyZWREYXRhLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vSW5kZXg6IHZhbHVlcy5ub0luZGV4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmlvcml0eTogdmFsdWVzLnByaW9yaXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2VGcmVxdWVuY3k6IHZhbHVlcy5jaGFuZ2VGcmVxdWVuY3ksXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2Fub25pY2FsVXJsOiB2YWx1ZXMuY2Fub25pY2FsVXJsLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdGVybmF0aXZlTGlua3M6IHZhbHVlcy5hbHRlcm5hdGl2ZUxpbmtzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICBtdXRhdG9ycz17eyAuLi5hcnJheU11dGF0b3JzIH19XG4gICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsVmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaHRtbFRpdGxlOiBzdGF0ZS5odG1sVGl0bGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0YURlc2NyaXB0aW9uOiBzdGF0ZS5tZXRhRGVzY3JpcHRpb24sXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuR3JhcGhUaXRsZTogc3RhdGUub3BlbkdyYXBoVGl0bGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlbkdyYXBoRGVzY3JpcHRpb246IHN0YXRlLm9wZW5HcmFwaERlc2NyaXB0aW9uLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0dXJlZERhdGE6IHN0YXRlLnN0cnVjdHVyZWREYXRhLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9JbmRleDogc3RhdGUubm9JbmRleCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmlvcml0eTogc3RhdGUucHJpb3JpdHksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlRnJlcXVlbmN5OiBzdGF0ZS5jaGFuZ2VGcmVxdWVuY3ksXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYW5vbmljYWxVcmw6IHN0YXRlLmNhbm9uaWNhbFVybCxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdGVybmF0aXZlTGlua3M6IHN0YXRlLmFsdGVybmF0aXZlTGlua3MsXG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogTWV0YSAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5tZXRhLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiTWV0YSBUYWdzXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLmh0bWxUaXRsZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiSFRNTCBUaXRsZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImh0bWxUaXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlU2VvVGFnPXtnZW5lcmF0ZVNlb1RhZ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8ubWV0YURlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJNZXRhIERlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwibWV0YURlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVTZW9UYWc9e2dlbmVyYXRlU2VvVGFnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdWx0aWxpbmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93cz17M31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93c01heD17NX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogT3BlbiBHcmFwaCAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLm9wZW5HcmFwaC5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIk9wZW4gR3JhcGhcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLm9wZW5HcmFwaFRpdGxlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJUaXRsZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cIm9wZW5HcmFwaFRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVTZW9UYWc9e2dlbmVyYXRlU2VvVGFnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8ub3BlbkdyYXBoRGVzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIkRlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwib3BlbkdyYXBoRGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZVNlb1RhZz17Z2VuZXJhdGVTZW9UYWd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpbGluZT17dHJ1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93cz17M31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93c01heD17NX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7b3BlbkdyYXBoSW1hZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIFN0cnVjdHVyZWQgRGF0YSAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLnN0cnVjdHVyZWREYXRhLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiU3RydWN0dXJlZCBEYXRhXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkIG5hbWU9XCJzdHJ1Y3R1cmVkRGF0YVwiIG11bHRpbGluZT17dHJ1ZX0gcm93cz17MTV9IGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9IGZ1bGxXaWR0aCB2YWxpZGF0ZT17dmFsaWRhdGVKc29ufSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBTaXRlbWFwICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uc2l0ZW1hcC5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIlNpdGVtYXBcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxSZWFjdEZpbmFsRm9ybUZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJub0luZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyc2U9eyh2KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gIXY7IC8vIHBhcnNlIGZyb20gbm9JbmRleCB0byBpbmRleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ9eyh2KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gIXY7IC8vIGZvcm1hdCBiYWNrIGZyb20gaW5kZXggdG8gbm9JbmRleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyh7IGlucHV0OiB7IGNoZWNrZWQsIG9uQ2hhbmdlIH0gfSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3BlbiA9IGNoZWNrZWQgPyBjaGVja2VkIDogZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxQYXBlciB2YXJpYW50PVwib3V0bGluZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuPXtvcGVufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVyPXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q29sbGFwc2libGVTd2l0Y2hCdXR0b25IZWFkZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hlY2tlZD17b3Blbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9ezxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuc2VvLnNpdGVtYXAucGFnZUluZGV4XCIgZGVmYXVsdE1lc3NhZ2U9XCJQYWdlIEluZGV4XCIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPERpdmlkZXIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggcGFkZGluZz17NH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5zaXRlbWFwLnByaW9yaXR5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJQcmlvcml0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cInByaW9yaXR5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM9e3ByaW9yaXR5T3B0aW9uc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3RGaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8uc2l0ZW1hcC5jaGFuZ2VGcmVxdWVuY3lcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIkNoYW5nZSBGcmVxdWVuY3lcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJjaGFuZ2VGcmVxdWVuY3lcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucz17Y2hhbmdlRnJlcXVlbmN5T3B0aW9uc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9QYXBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9SZWFjdEZpbmFsRm9ybUZpZWxkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBDYW5vbmljYWwgVGFnICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uY2Fub25pY2FsVGFnLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiQ2Fub25pY2FsIFRhZ1wiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZCBsYWJlbD17PEZvcm1hdHRlZE1lc3NhZ2Ugey4uLm1lc3NhZ2VzLnVybH0gLz59IG5hbWU9XCJjYW5vbmljYWxVcmxcIiBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fSBmdWxsV2lkdGggLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogQWx0ZXJuYXRlIEhyZWZsYW5nICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9ezxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5hbHRlcm5hdGl2ZUxpbmtzLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiQWx0ZXJuYXRlIGxpbmtzXCIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkQXJyYXkgbmFtZT1cImFsdGVybmF0aXZlTGlua3NcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgZmllbGRzIH0pID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtmaWVsZHMubWFwKChsaW5rLCBpKSA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQga2V5PXtpfSBjb250YWluZXIgc3BhY2luZz17Mn0gc3g9e3sgbWFyZ2luQm90dG9tOiAyIH19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBzaXplPXszfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29tZXQuYmxvY2tzLnNlby5hbHRlcm5hdGl2ZUxpbmtzLmNvZGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U9XCJDb2RlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT17YCR7bGlua30uY29kZWB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cImVuLVVTXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgc2l6ZT1cImdyb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXs8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMudXJsfSAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPXtgJHtsaW5rfS51cmxgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWRhdGU9eyh1cmwpID0+IHZhbGlkYXRlVXJsKHVybCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIGFsaWduU2VsZj1cImZsZXgtc3RhcnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEZWxldGVCdXR0b25XcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJY29uQnV0dG9uIG9uQ2xpY2s9eygpID0+IGZpZWxkcy5yZW1vdmUoaSl9IHNpemU9XCJsYXJnZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RGVsZXRlIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9JY29uQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9EZWxldGVCdXR0b25XcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvbiB2YXJpYW50PVwicHJpbWFyeVwiIG9uQ2xpY2s9eygpID0+IGZpZWxkcy5wdXNoKHsgY29kZTogXCJcIiwgdXJsOiBcIlwiIH0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QWRkQnV0dG9uQ29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEFkZEJ1dHRvbkljb24gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMuYWRkfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9BZGRCdXR0b25Db250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9GaWVsZEFycmF5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Jsb2NrQWRtaW5Db21wb25lbnRQYXBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Jsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgPC9CbG9ja3NGaW5hbEZvcm0+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApO1xuICAgICAgICB9LFxuICAgIH07XG5cbiAgICBpZiAob3ZlcnJpZGUpIHtcbiAgICAgICAgcmV0dXJuIG92ZXJyaWRlKFNlb0Jsb2NrKTtcbiAgICB9XG5cbiAgICByZXR1cm4gU2VvQmxvY2s7XG59XG5cbi8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbnRlcmZhY2UgRmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25Qcm9wczxGaWVsZFZhbHVlID0gYW55LCBGaWVsZEVsZW1lbnQgZXh0ZW5kcyBIVE1MRWxlbWVudCA9IEhUTUxFbGVtZW50PlxuICAgIGV4dGVuZHMgRmllbGRQcm9wczxGaWVsZFZhbHVlLCBGaWVsZEVsZW1lbnQ+IHtcbiAgICBuYW1lOiBTZW9UYWc7XG4gICAgZ2VuZXJhdGVTZW9UYWc6ICh0YWc6IFNlb1RhZywgY3VycmVudFZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpID0+IFByb21pc2U8c3RyaW5nPjtcbn1cblxuLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmZ1bmN0aW9uIEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uPEZpZWxkVmFsdWUgPSBhbnksIEZpZWxkRWxlbWVudCBleHRlbmRzIEhUTUxFbGVtZW50ID0gSFRNTEVsZW1lbnQ+KHtcbiAgICBuYW1lLFxuICAgIGdlbmVyYXRlU2VvVGFnLFxuICAgIGVuZEFkb3JubWVudDogcGFzc2VkRW5kQWRvcm5tZW50LFxuICAgIC4uLnByb3BzXG59OiBGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblByb3BzPEZpZWxkVmFsdWUsIEZpZWxkRWxlbWVudD4pIHtcbiAgICBjb25zdCBjb250ZW50R2VuZXJhdGlvbkNvbmZpZyA9IHVzZUNvbnRlbnRHZW5lcmF0aW9uQ29uZmlnKCk7XG4gICAgY29uc3QgZm9ybUFwaSA9IHVzZUZvcm0oKTtcblxuICAgIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICAgIGNvbnN0IGVuZEFkb3JubWVudCA9IGNvbnRlbnRHZW5lcmF0aW9uQ29uZmlnPy5zZW8gPyAoXG4gICAgICAgIDw+XG4gICAgICAgICAgICB7cGFzc2VkRW5kQWRvcm5tZW50fVxuICAgICAgICAgICAgPEljb25CdXR0b25cbiAgICAgICAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2FzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2VvVGFnID0gYXdhaXQgZ2VuZXJhdGVTZW9UYWcobmFtZSwgZm9ybUFwaS5nZXRGaWVsZFN0YXRlKG5hbWUpPy52YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICBmb3JtQXBpLmNoYW5nZShuYW1lLCBzZW9UYWcpO1xuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2xvYWRpbmcgPyA8TG9hZGluZyBiZWhhdmlvcj1cImZpbGxQYXJlbnRcIiBmb250U2l6ZT1cImxhcmdlXCIgLz4gOiA8QXJ0aWZpY2lhbEludGVsbGlnZW5jZSAvPn1cbiAgICAgICAgICAgIDwvSWNvbkJ1dHRvbj5cbiAgICAgICAgPC8+XG4gICAgKSA6IChcbiAgICAgICAgcGFzc2VkRW5kQWRvcm5tZW50XG4gICAgKTtcblxuICAgIHJldHVybiA8RmllbGQgbmFtZT17bmFtZX0gZW5kQWRvcm5tZW50PXtlbmRBZG9ybm1lbnR9IHsuLi5wcm9wc30gLz47XG59XG5cbmNvbnN0IEFkZEJ1dHRvbkNvbnRlbnQgPSBzdHlsZWQoXCJzcGFuXCIpYFxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDRweCAwO1xuYDtcblxuY29uc3QgQWRkQnV0dG9uSWNvbiA9IHN0eWxlZChBZGQpYFxuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG5gO1xuXG5jb25zdCBEZWxldGVCdXR0b25XcmFwcGVyID0gc3R5bGVkKFwiZGl2XCIpYFxuICAgIHBhZGRpbmctdG9wOiAyNHB4O1xuYDtcbiJdfQ== */",
426
428
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
427
429
  });
428
430
  var AddButtonIcon = /*#__PURE__*/styled(Add, process.env.NODE_ENV === "production" ? {
@@ -435,7 +437,7 @@ var AddButtonIcon = /*#__PURE__*/styled(Add, process.env.NODE_ENV === "productio
435
437
  styles: "font-size:24px;margin-bottom:8px"
436
438
  } : {
437
439
  name: "1yvy7h3",
438
- styles: "font-size:24px;margin-bottom:8px/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9ja3MvY3JlYXRlU2VvQmxvY2sudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBYaUMiLCJmaWxlIjoiLi4vLi4vc3JjL2Jsb2Nrcy9jcmVhdGVTZW9CbG9jay50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCwgdHlwZSBGaWVsZFByb3BzLCBGaW5hbEZvcm1JbnB1dCwgTG9hZGluZywgbWVzc2FnZXMsIFNlbGVjdEZpZWxkIH0gZnJvbSBcIkBjb21ldC9hZG1pblwiO1xuaW1wb3J0IHsgQWRkLCBBcnRpZmljaWFsSW50ZWxsaWdlbmNlLCBEZWxldGUgfSBmcm9tIFwiQGNvbWV0L2FkbWluLWljb25zXCI7XG5pbXBvcnQgeyBCb3gsIERpdmlkZXIsIEdyaWQsIEljb25CdXR0b24sIFBhcGVyLCBUeXBvZ3JhcGh5IH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWxcIjtcbmltcG9ydCB7IHN0eWxlZCB9IGZyb20gXCJAbXVpL21hdGVyaWFsL3N0eWxlc1wiO1xuaW1wb3J0IGFycmF5TXV0YXRvcnMgZnJvbSBcImZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRmllbGQgYXMgUmVhY3RGaW5hbEZvcm1GaWVsZCwgdXNlRm9ybSB9IGZyb20gXCJyZWFjdC1maW5hbC1mb3JtXCI7XG5pbXBvcnQgeyBGaWVsZEFycmF5IH0gZnJvbSBcInJlYWN0LWZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyBGb3JtYXR0ZWRNZXNzYWdlLCB1c2VJbnRsIH0gZnJvbSBcInJlYWN0LWludGxcIjtcblxuaW1wb3J0IHsgdHlwZSBTZW9CbG9ja0RhdGEsIHR5cGUgU2VvQmxvY2tJbnB1dCB9IGZyb20gXCIuLi9ibG9ja3MuZ2VuZXJhdGVkXCI7XG5pbXBvcnQgeyB1c2VDb250ZW50R2VuZXJhdGlvbkNvbmZpZyB9IGZyb20gXCIuLi9kb2N1bWVudHMvQ29udGVudEdlbmVyYXRpb25Db25maWdDb250ZXh0XCI7XG5pbXBvcnQgeyB2YWxpZGF0ZVVybCB9IGZyb20gXCIuLi92YWxpZGF0aW9uL3ZhbGlkYXRlVXJsXCI7XG5pbXBvcnQgeyBCbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uIH0gZnJvbSBcIi4vY29tbW9uL0Jsb2NrQWRtaW5Db21wb25lbnRCdXR0b25cIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRQYXBlciB9IGZyb20gXCIuL2NvbW1vbi9CbG9ja0FkbWluQ29tcG9uZW50UGFwZXJcIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXAgfSBmcm9tIFwiLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudFNlY3Rpb25Hcm91cFwiO1xuaW1wb3J0IHsgQ29sbGFwc2libGUgfSBmcm9tIFwiLi9jb21tb24vQ29sbGFwc2libGVcIjtcbmltcG9ydCB7IENvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyIH0gZnJvbSBcIi4vY29tbW9uL0NvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyXCI7XG5pbXBvcnQgeyBjcmVhdGVPcHRpb25hbEJsb2NrIH0gZnJvbSBcIi4vZmFjdG9yaWVzL2NyZWF0ZU9wdGlvbmFsQmxvY2tcIjtcbmltcG9ydCB7IEJsb2Nrc0ZpbmFsRm9ybSB9IGZyb20gXCIuL2Zvcm0vQmxvY2tzRmluYWxGb3JtXCI7XG5pbXBvcnQgeyBjb21wb3NlQmxvY2tzIH0gZnJvbSBcIi4vaGVscGVycy9jb21wb3NlQmxvY2tzL2NvbXBvc2VCbG9ja3NcIjtcbmltcG9ydCB7IGNyZWF0ZUJsb2NrU2tlbGV0b24gfSBmcm9tIFwiLi9oZWxwZXJzL2NyZWF0ZUJsb2NrU2tlbGV0b25cIjtcbmltcG9ydCB7IGRlY29tcG9zZVVwZGF0ZVN0YXRlQWN0aW9uIH0gZnJvbSBcIi4vaGVscGVycy9kZWNvbXBvc2VVcGRhdGVTdGF0ZUFjdGlvblwiO1xuaW1wb3J0IHsgd2l0aEFkZGl0aW9uYWxCbG9ja0F0dHJpYnV0ZXMgfSBmcm9tIFwiLi9oZWxwZXJzL3dpdGhBZGRpdGlvbmFsQmxvY2tBdHRyaWJ1dGVzXCI7XG5pbXBvcnQgeyBQaXhlbEltYWdlQmxvY2sgfSBmcm9tIFwiLi9QaXhlbEltYWdlQmxvY2tcIjtcbmltcG9ydCB7IHR5cGUgU2VvVGFnLCB1c2VTZW9UYWdHZW5lcmF0aW9uIH0gZnJvbSBcIi4vc2VvL3VzZVNlb1RhZ0dlbmVyYXRpb25cIjtcbmltcG9ydCB1c2VTaXRlbWFwQ2hhbmdlRnJlcXVlbmN5Rm9ybU9wdGlvbnMgZnJvbSBcIi4vc2VvL3VzZVNpdGVtYXBDaGFuZ2VGcmVxdWVuY3lGb3JtT3B0aW9uc1wiO1xuaW1wb3J0IHVzZVNpdGVtYXBQYWdlUHJpb3JpdHlGb3JtT3B0aW9ucyBmcm9tIFwiLi9zZW8vdXNlU2l0ZW1hcFBhZ2VQcmlvcml0eUZvcm1PcHRpb25zXCI7XG5pbXBvcnQgeyB0eXBlIEJsb2NrSW50ZXJmYWNlLCB0eXBlIEJsb2NrU3RhdGUgfSBmcm9tIFwiLi90eXBlc1wiO1xuXG5pbnRlcmZhY2UgQ3JlYXRlU2VvQmxvY2tPcHRpb25zIHtcbiAgICBpbWFnZT86IEJsb2NrSW50ZXJmYWNlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VvQmxvY2soXG4gICAgeyBpbWFnZSA9IFBpeGVsSW1hZ2VCbG9jayB9OiBDcmVhdGVTZW9CbG9ja09wdGlvbnMgPSB7fSxcbiAgICBvdmVycmlkZT86IChibG9jazogQmxvY2tJbnRlcmZhY2UpID0+IEJsb2NrSW50ZXJmYWNlLFxuKTogQmxvY2tJbnRlcmZhY2Uge1xuICAgIGNvbnN0IE9wdGlvbmFsSW1hZ2VCbG9jayA9IGNyZWF0ZU9wdGlvbmFsQmxvY2soaW1hZ2UsIHtcbiAgICAgICAgdGl0bGU6IDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuc2l0ZW1hcC5vcGVuR3JhcGhJbWFnZVwiIGRlZmF1bHRNZXNzYWdlPVwiT3BlbiBHcmFwaCBJbWFnZVwiIC8+LFxuICAgIH0pO1xuXG4gICAgY29uc3QgY29tcG9zZWQgPSBjb21wb3NlQmxvY2tzKHsgb3BlbkdyYXBoSW1hZ2U6IE9wdGlvbmFsSW1hZ2VCbG9jayB9KTtcblxuICAgIGNvbnN0IHsgYXBpOiBjb21wb3NlZEFwaSwgYmxvY2s6IGNvbXBvc2VkQmxvY2sgfSA9IGNvbXBvc2VkO1xuXG4gICAgY29uc3QgYmxvY2sgPSB3aXRoQWRkaXRpb25hbEJsb2NrQXR0cmlidXRlczxPbWl0PFNlb0Jsb2NrRGF0YSwgXCJvcGVuR3JhcGhJbWFnZVwiPj4oe1xuICAgICAgICBub0luZGV4OiBmYWxzZSxcbiAgICAgICAgcHJpb3JpdHk6IFwiMF81XCIsXG4gICAgICAgIGNoYW5nZUZyZXF1ZW5jeTogXCJ3ZWVrbHlcIixcbiAgICAgICAgYWx0ZXJuYXRpdmVMaW5rczogW10sXG4gICAgICAgIGh0bWxUaXRsZTogdW5kZWZpbmVkLFxuICAgICAgICBtZXRhRGVzY3JpcHRpb246IHVuZGVmaW5lZCxcbiAgICAgICAgb3BlbkdyYXBoVGl0bGU6IHVuZGVmaW5lZCxcbiAgICAgICAgb3BlbkdyYXBoRGVzY3JpcHRpb246IHVuZGVmaW5lZCxcbiAgICAgICAgc3RydWN0dXJlZERhdGE6IHVuZGVmaW5lZCxcbiAgICAgICAgY2Fub25pY2FsVXJsOiB1bmRlZmluZWQsXG4gICAgfSkoY29tcG9zZWRCbG9jayk7XG5cbiAgICB0eXBlIFN0YXRlID0gQmxvY2tTdGF0ZTx0eXBlb2YgYmxvY2s+O1xuXG4gICAgY29uc3QgU2VvQmxvY2s6IEJsb2NrSW50ZXJmYWNlPFNlb0Jsb2NrRGF0YSwgU3RhdGUsIFNlb0Jsb2NrSW5wdXQ+ID0ge1xuICAgICAgICAuLi5jcmVhdGVCbG9ja1NrZWxldG9uKCksXG4gICAgICAgIC4uLmJsb2NrLFxuICAgICAgICBuYW1lOiBcIlNlb1wiLFxuXG4gICAgICAgIGRpc3BsYXlOYW1lOiA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW9cIiBkZWZhdWx0TWVzc2FnZT1cIlNFT1wiIC8+LFxuXG4gICAgICAgIEFkbWluQ29tcG9uZW50OiAoeyBzdGF0ZSwgdXBkYXRlU3RhdGUgfSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaW50bCA9IHVzZUludGwoKTtcbiAgICAgICAgICAgIGNvbnN0IHsgb3BlbkdyYXBoSW1hZ2UgfSA9IGNvbXBvc2VkQXBpLmFkbWluQ29tcG9uZW50cyh7XG4gICAgICAgICAgICAgICAgc3RhdGUsXG4gICAgICAgICAgICAgICAgdXBkYXRlU3RhdGU6IGRlY29tcG9zZVVwZGF0ZVN0YXRlQWN0aW9uKHVwZGF0ZVN0YXRlLCBbXCJvcGVuR3JhcGhJbWFnZVwiXSksXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgY29uc3QgcHJpb3JpdHlPcHRpb25zID0gdXNlU2l0ZW1hcFBhZ2VQcmlvcml0eUZvcm1PcHRpb25zKCk7XG4gICAgICAgICAgICBjb25zdCBjaGFuZ2VGcmVxdWVuY3lPcHRpb25zID0gdXNlU2l0ZW1hcENoYW5nZUZyZXF1ZW5jeUZvcm1PcHRpb25zKCk7XG5cbiAgICAgICAgICAgIGNvbnN0IGdlbmVyYXRlU2VvVGFnID0gdXNlU2VvVGFnR2VuZXJhdGlvbigpO1xuXG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgIDxCbG9ja3NGaW5hbEZvcm1cbiAgICAgICAgICAgICAgICAgICAgICAgIG9uU3VibWl0PXsodmFsdWVzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlU3RhdGUoKHByZXZTdGF0ZSkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBodG1sVGl0bGU6IHZhbHVlcy5odG1sVGl0bGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFEZXNjcmlwdGlvbjogdmFsdWVzLm1ldGFEZXNjcmlwdGlvbixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuR3JhcGhUaXRsZTogdmFsdWVzLm9wZW5HcmFwaFRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuR3JhcGhEZXNjcmlwdGlvbjogdmFsdWVzLm9wZW5HcmFwaERlc2NyaXB0aW9uLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdHVyZWREYXRhOiB2YWx1ZXMuc3RydWN0dXJlZERhdGEsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9JbmRleDogdmFsdWVzLm5vSW5kZXgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW9yaXR5OiB2YWx1ZXMucHJpb3JpdHksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZUZyZXF1ZW5jeTogdmFsdWVzLmNoYW5nZUZyZXF1ZW5jeSxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYW5vbmljYWxVcmw6IHZhbHVlcy5jYW5vbmljYWxVcmwsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0ZXJuYXRpdmVMaW5rczogdmFsdWVzLmFsdGVybmF0aXZlTGlua3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIG11dGF0b3JzPXt7IC4uLmFycmF5TXV0YXRvcnMgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIGluaXRpYWxWYWx1ZXM9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBodG1sVGl0bGU6IHN0YXRlLmh0bWxUaXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXRhRGVzY3JpcHRpb246IHN0YXRlLm1ldGFEZXNjcmlwdGlvbixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5HcmFwaFRpdGxlOiBzdGF0ZS5vcGVuR3JhcGhUaXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuR3JhcGhEZXNjcmlwdGlvbjogc3RhdGUub3BlbkdyYXBoRGVzY3JpcHRpb24sXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3R1cmVkRGF0YTogc3RhdGUuc3RydWN0dXJlZERhdGEsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBub0luZGV4OiBzdGF0ZS5ub0luZGV4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW9yaXR5OiBzdGF0ZS5wcmlvcml0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2VGcmVxdWVuY3k6IHN0YXRlLmNoYW5nZUZyZXF1ZW5jeSxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbm9uaWNhbFVybDogc3RhdGUuY2Fub25pY2FsVXJsLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0ZXJuYXRpdmVMaW5rczogc3RhdGUuYWx0ZXJuYXRpdmVMaW5rcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBNZXRhICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLm1ldGEuc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJNZXRhIFRhZ3NcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8uaHRtbFRpdGxlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJIVE1MIFRpdGxlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiaHRtbFRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVTZW9UYWc9e2dlbmVyYXRlU2VvVGFnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5tZXRhRGVzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIk1ldGEgRGVzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJtZXRhRGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZVNlb1RhZz17Z2VuZXJhdGVTZW9UYWd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpbGluZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzPXszfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzTWF4PXs1fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBPcGVuIEdyYXBoICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8ub3BlbkdyYXBoLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiT3BlbiBHcmFwaFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8ub3BlbkdyYXBoVGl0bGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIlRpdGxlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwib3BlbkdyYXBoVGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZVNlb1RhZz17Z2VuZXJhdGVTZW9UYWd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5vcGVuR3JhcGhEZXNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiRGVzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJvcGVuR3JhcGhEZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlU2VvVGFnPXtnZW5lcmF0ZVNlb1RhZ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlsaW5lPXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzPXszfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzTWF4PXs1fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtvcGVuR3JhcGhJbWFnZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogU3RydWN0dXJlZCBEYXRhICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uc3RydWN0dXJlZERhdGEuc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJTdHJ1Y3R1cmVkIERhdGFcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGQgbmFtZT1cInN0cnVjdHVyZWREYXRhXCIgbXVsdGlsaW5lPXt0cnVlfSByb3dzPXsxNX0gY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH0gZnVsbFdpZHRoIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIFNpdGVtYXAgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5zaXRlbWFwLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiU2l0ZW1hcFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFJlYWN0RmluYWxGb3JtRmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cIm5vSW5kZXhcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJzZT17KHYpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAhdjsgLy8gcGFyc2UgZnJvbSBub0luZGV4IHRvIGluZGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD17KHYpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAhdjsgLy8gZm9ybWF0IGJhY2sgZnJvbSBpbmRleCB0byBub0luZGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgaW5wdXQ6IHsgY2hlY2tlZCwgb25DaGFuZ2UgfSB9KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBvcGVuID0gY2hlY2tlZCA/IGNoZWNrZWQgOiBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFBhcGVyIHZhcmlhbnQ9XCJvdXRsaW5lZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q29sbGFwc2libGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW49e29wZW59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXI9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDb2xsYXBzaWJsZVN3aXRjaEJ1dHRvbkhlYWRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGVja2VkPXtvcGVufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT17PEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5zZW8uc2l0ZW1hcC5wYWdlSW5kZXhcIiBkZWZhdWx0TWVzc2FnZT1cIlBhZ2UgSW5kZXhcIiAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RGl2aWRlciAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBwYWRkaW5nPXs0fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLnNpdGVtYXAucHJpb3JpdHlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIlByaW9yaXR5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwicHJpb3JpdHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucz17cHJpb3JpdHlPcHRpb25zfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5zaXRlbWFwLmNoYW5nZUZyZXF1ZW5jeVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiQ2hhbmdlIEZyZXF1ZW5jeVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImNoYW5nZUZyZXF1ZW5jeVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zPXtjaGFuZ2VGcmVxdWVuY3lPcHRpb25zfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1BhcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1JlYWN0RmluYWxGb3JtRmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIENhbm9uaWNhbCBUYWcgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5jYW5vbmljYWxUYWcuc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJDYW5vbmljYWwgVGFnXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkIGxhYmVsPXs8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMudXJsfSAvPn0gbmFtZT1cImNhbm9uaWNhbFVybFwiIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9IGZ1bGxXaWR0aCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBBbHRlcm5hdGUgSHJlZmxhbmcgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tBZG1pbkNvbXBvbmVudFNlY3Rpb25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT17PEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLmFsdGVybmF0aXZlTGlua3Muc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJBbHRlcm5hdGUgbGlua3NcIiAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCbG9ja0FkbWluQ29tcG9uZW50UGFwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRBcnJheSBuYW1lPVwiYWx0ZXJuYXRpdmVMaW5rc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsoeyBmaWVsZHMgfSkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2ZpZWxkcy5tYXAoKGxpbmssIGkpID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBrZXk9e2l9IGNvbnRhaW5lciBzcGFjaW5nPXsyfSBzeD17eyBtYXJnaW5Cb3R0b206IDIgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIHNpemU9ezN9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLmFsdGVybmF0aXZlTGlua3MuY29kZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZT1cIkNvZGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPXtgJHtsaW5rfS5jb2RlYH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiZW4tVVNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBzaXplPVwiZ3Jvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9ezxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy51cmx9IC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9e2Ake2xpbmt9LnVybGB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWxpZGF0ZT17KHVybCkgPT4gdmFsaWRhdGVVcmwodXJsKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgYWxpZ25TZWxmPVwiZmxleC1zdGFydFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPERlbGV0ZUJ1dHRvbldyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEljb25CdXR0b24gb25DbGljaz17KCkgPT4gZmllbGRzLnJlbW92ZShpKX0gc2l6ZT1cImxhcmdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEZWxldGUgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ljb25CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0RlbGV0ZUJ1dHRvbldyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uIHZhcmlhbnQ9XCJwcmltYXJ5XCIgb25DbGljaz17KCkgPT4gZmllbGRzLnB1c2goeyBjb2RlOiBcIlwiLCB1cmw6IFwiXCIgfSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxBZGRCdXR0b25Db250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QWRkQnV0dG9uSWNvbiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy5hZGR9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0FkZEJ1dHRvbkNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Jsb2NrQWRtaW5Db21wb25lbnRCdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ZpZWxkQXJyYXk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tBZG1pbkNvbXBvbmVudFNlY3Rpb25Hcm91cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICA8L0Jsb2Nrc0ZpbmFsRm9ybT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0sXG4gICAgfTtcblxuICAgIGlmIChvdmVycmlkZSkge1xuICAgICAgICByZXR1cm4gb3ZlcnJpZGUoU2VvQmxvY2spO1xuICAgIH1cblxuICAgIHJldHVybiBTZW9CbG9jaztcbn1cblxuLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmludGVyZmFjZSBGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblByb3BzPEZpZWxkVmFsdWUgPSBhbnksIEZpZWxkRWxlbWVudCBleHRlbmRzIEhUTUxFbGVtZW50ID0gSFRNTEVsZW1lbnQ+XG4gICAgZXh0ZW5kcyBGaWVsZFByb3BzPEZpZWxkVmFsdWUsIEZpZWxkRWxlbWVudD4ge1xuICAgIG5hbWU6IFNlb1RhZztcbiAgICBnZW5lcmF0ZVNlb1RhZzogKHRhZzogU2VvVGFnLCBjdXJyZW50VmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkgPT4gUHJvbWlzZTxzdHJpbmc+O1xufVxuXG4vKiBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuZnVuY3Rpb24gRmllbGRXaXRoQ29udGVudEdlbmVyYXRpb248RmllbGRWYWx1ZSA9IGFueSwgRmllbGRFbGVtZW50IGV4dGVuZHMgSFRNTEVsZW1lbnQgPSBIVE1MRWxlbWVudD4oe1xuICAgIG5hbWUsXG4gICAgZ2VuZXJhdGVTZW9UYWcsXG4gICAgZW5kQWRvcm5tZW50OiBwYXNzZWRFbmRBZG9ybm1lbnQsXG4gICAgLi4ucHJvcHNcbn06IEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uUHJvcHM8RmllbGRWYWx1ZSwgRmllbGRFbGVtZW50Pikge1xuICAgIGNvbnN0IGNvbnRlbnRHZW5lcmF0aW9uQ29uZmlnID0gdXNlQ29udGVudEdlbmVyYXRpb25Db25maWcoKTtcbiAgICBjb25zdCBmb3JtQXBpID0gdXNlRm9ybSgpO1xuXG4gICAgY29uc3QgW2xvYWRpbmcsIHNldExvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gICAgY29uc3QgZW5kQWRvcm5tZW50ID0gY29udGVudEdlbmVyYXRpb25Db25maWc/LnNlbyA/IChcbiAgICAgICAgPD5cbiAgICAgICAgICAgIHtwYXNzZWRFbmRBZG9ybm1lbnR9XG4gICAgICAgICAgICA8SWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17YXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBzZXRMb2FkaW5nKHRydWUpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzZW9UYWcgPSBhd2FpdCBnZW5lcmF0ZVNlb1RhZyhuYW1lLCBmb3JtQXBpLmdldEZpZWxkU3RhdGUobmFtZSk/LnZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgc2V0TG9hZGluZyhmYWxzZSk7XG4gICAgICAgICAgICAgICAgICAgIGZvcm1BcGkuY2hhbmdlKG5hbWUsIHNlb1RhZyk7XG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7bG9hZGluZyA/IDxMb2FkaW5nIGJlaGF2aW9yPVwiZmlsbFBhcmVudFwiIGZvbnRTaXplPVwibGFyZ2VcIiAvPiA6IDxBcnRpZmljaWFsSW50ZWxsaWdlbmNlIC8+fVxuICAgICAgICAgICAgPC9JY29uQnV0dG9uPlxuICAgICAgICA8Lz5cbiAgICApIDogKFxuICAgICAgICBwYXNzZWRFbmRBZG9ybm1lbnRcbiAgICApO1xuXG4gICAgcmV0dXJuIDxGaWVsZCBuYW1lPXtuYW1lfSBlbmRBZG9ybm1lbnQ9e2VuZEFkb3JubWVudH0gey4uLnByb3BzfSAvPjtcbn1cblxuY29uc3QgQWRkQnV0dG9uQ29udGVudCA9IHN0eWxlZChcInNwYW5cIilgXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogNHB4IDA7XG5gO1xuXG5jb25zdCBBZGRCdXR0b25JY29uID0gc3R5bGVkKEFkZClgXG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbmA7XG5cbmNvbnN0IERlbGV0ZUJ1dHRvbldyYXBwZXIgPSBzdHlsZWQoXCJkaXZcIilgXG4gICAgcGFkZGluZy10b3A6IDI0cHg7XG5gO1xuIl19 */",
440
+ styles: "font-size:24px;margin-bottom:8px/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9ja3MvY3JlYXRlU2VvQmxvY2sudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTJYaUMiLCJmaWxlIjoiLi4vLi4vc3JjL2Jsb2Nrcy9jcmVhdGVTZW9CbG9jay50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCwgdHlwZSBGaWVsZFByb3BzLCBGaW5hbEZvcm1JbnB1dCwgTG9hZGluZywgbWVzc2FnZXMsIFNlbGVjdEZpZWxkIH0gZnJvbSBcIkBjb21ldC9hZG1pblwiO1xuaW1wb3J0IHsgQWRkLCBBcnRpZmljaWFsSW50ZWxsaWdlbmNlLCBEZWxldGUgfSBmcm9tIFwiQGNvbWV0L2FkbWluLWljb25zXCI7XG5pbXBvcnQgeyBCb3gsIERpdmlkZXIsIEdyaWQsIEljb25CdXR0b24sIFBhcGVyLCBUeXBvZ3JhcGh5IH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWxcIjtcbmltcG9ydCB7IHN0eWxlZCB9IGZyb20gXCJAbXVpL21hdGVyaWFsL3N0eWxlc1wiO1xuaW1wb3J0IGFycmF5TXV0YXRvcnMgZnJvbSBcImZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRmllbGQgYXMgUmVhY3RGaW5hbEZvcm1GaWVsZCwgdXNlRm9ybSB9IGZyb20gXCJyZWFjdC1maW5hbC1mb3JtXCI7XG5pbXBvcnQgeyBGaWVsZEFycmF5IH0gZnJvbSBcInJlYWN0LWZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyBGb3JtYXR0ZWRNZXNzYWdlLCB1c2VJbnRsIH0gZnJvbSBcInJlYWN0LWludGxcIjtcblxuaW1wb3J0IHR5cGUgeyBTZW9CbG9ja0RhdGEsIFNlb0Jsb2NrSW5wdXQgfSBmcm9tIFwiLi4vYmxvY2tzLmdlbmVyYXRlZFwiO1xuaW1wb3J0IHsgdXNlQ29udGVudEdlbmVyYXRpb25Db25maWcgfSBmcm9tIFwiLi4vZG9jdW1lbnRzL0NvbnRlbnRHZW5lcmF0aW9uQ29uZmlnQ29udGV4dFwiO1xuaW1wb3J0IHsgdmFsaWRhdGVKc29uIH0gZnJvbSBcIi4uL3ZhbGlkYXRpb24vdmFsaWRhdGVKc29uXCI7XG5pbXBvcnQgeyB2YWxpZGF0ZVVybCB9IGZyb20gXCIuLi92YWxpZGF0aW9uL3ZhbGlkYXRlVXJsXCI7XG5pbXBvcnQgeyBCbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uIH0gZnJvbSBcIi4vY29tbW9uL0Jsb2NrQWRtaW5Db21wb25lbnRCdXR0b25cIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRQYXBlciB9IGZyb20gXCIuL2NvbW1vbi9CbG9ja0FkbWluQ29tcG9uZW50UGFwZXJcIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXAgfSBmcm9tIFwiLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudFNlY3Rpb25Hcm91cFwiO1xuaW1wb3J0IHsgQ29sbGFwc2libGUgfSBmcm9tIFwiLi9jb21tb24vQ29sbGFwc2libGVcIjtcbmltcG9ydCB7IENvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyIH0gZnJvbSBcIi4vY29tbW9uL0NvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyXCI7XG5pbXBvcnQgeyBjcmVhdGVPcHRpb25hbEJsb2NrIH0gZnJvbSBcIi4vZmFjdG9yaWVzL2NyZWF0ZU9wdGlvbmFsQmxvY2tcIjtcbmltcG9ydCB7IEJsb2Nrc0ZpbmFsRm9ybSB9IGZyb20gXCIuL2Zvcm0vQmxvY2tzRmluYWxGb3JtXCI7XG5pbXBvcnQgeyBjb21wb3NlQmxvY2tzIH0gZnJvbSBcIi4vaGVscGVycy9jb21wb3NlQmxvY2tzL2NvbXBvc2VCbG9ja3NcIjtcbmltcG9ydCB7IGNyZWF0ZUJsb2NrU2tlbGV0b24gfSBmcm9tIFwiLi9oZWxwZXJzL2NyZWF0ZUJsb2NrU2tlbGV0b25cIjtcbmltcG9ydCB7IGRlY29tcG9zZVVwZGF0ZVN0YXRlQWN0aW9uIH0gZnJvbSBcIi4vaGVscGVycy9kZWNvbXBvc2VVcGRhdGVTdGF0ZUFjdGlvblwiO1xuaW1wb3J0IHsgd2l0aEFkZGl0aW9uYWxCbG9ja0F0dHJpYnV0ZXMgfSBmcm9tIFwiLi9oZWxwZXJzL3dpdGhBZGRpdGlvbmFsQmxvY2tBdHRyaWJ1dGVzXCI7XG5pbXBvcnQgeyBQaXhlbEltYWdlQmxvY2sgfSBmcm9tIFwiLi9QaXhlbEltYWdlQmxvY2tcIjtcbmltcG9ydCB7IHR5cGUgU2VvVGFnLCB1c2VTZW9UYWdHZW5lcmF0aW9uIH0gZnJvbSBcIi4vc2VvL3VzZVNlb1RhZ0dlbmVyYXRpb25cIjtcbmltcG9ydCB1c2VTaXRlbWFwQ2hhbmdlRnJlcXVlbmN5Rm9ybU9wdGlvbnMgZnJvbSBcIi4vc2VvL3VzZVNpdGVtYXBDaGFuZ2VGcmVxdWVuY3lGb3JtT3B0aW9uc1wiO1xuaW1wb3J0IHVzZVNpdGVtYXBQYWdlUHJpb3JpdHlGb3JtT3B0aW9ucyBmcm9tIFwiLi9zZW8vdXNlU2l0ZW1hcFBhZ2VQcmlvcml0eUZvcm1PcHRpb25zXCI7XG5pbXBvcnQgdHlwZSB7IEJsb2NrSW50ZXJmYWNlLCBCbG9ja1N0YXRlIH0gZnJvbSBcIi4vdHlwZXNcIjtcblxuaW50ZXJmYWNlIENyZWF0ZVNlb0Jsb2NrT3B0aW9ucyB7XG4gICAgaW1hZ2U/OiBCbG9ja0ludGVyZmFjZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVNlb0Jsb2NrKFxuICAgIHsgaW1hZ2UgPSBQaXhlbEltYWdlQmxvY2sgfTogQ3JlYXRlU2VvQmxvY2tPcHRpb25zID0ge30sXG4gICAgb3ZlcnJpZGU/OiAoYmxvY2s6IEJsb2NrSW50ZXJmYWNlKSA9PiBCbG9ja0ludGVyZmFjZSxcbik6IEJsb2NrSW50ZXJmYWNlIHtcbiAgICBjb25zdCBPcHRpb25hbEltYWdlQmxvY2sgPSBjcmVhdGVPcHRpb25hbEJsb2NrKGltYWdlLCB7XG4gICAgICAgIHRpdGxlOiA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LnNpdGVtYXAub3BlbkdyYXBoSW1hZ2VcIiBkZWZhdWx0TWVzc2FnZT1cIk9wZW4gR3JhcGggSW1hZ2VcIiAvPixcbiAgICB9KTtcblxuICAgIGNvbnN0IGNvbXBvc2VkID0gY29tcG9zZUJsb2Nrcyh7IG9wZW5HcmFwaEltYWdlOiBPcHRpb25hbEltYWdlQmxvY2sgfSk7XG5cbiAgICBjb25zdCB7IGFwaTogY29tcG9zZWRBcGksIGJsb2NrOiBjb21wb3NlZEJsb2NrIH0gPSBjb21wb3NlZDtcblxuICAgIGNvbnN0IGJsb2NrID0gd2l0aEFkZGl0aW9uYWxCbG9ja0F0dHJpYnV0ZXM8T21pdDxTZW9CbG9ja0RhdGEsIFwib3BlbkdyYXBoSW1hZ2VcIj4+KHtcbiAgICAgICAgbm9JbmRleDogZmFsc2UsXG4gICAgICAgIHByaW9yaXR5OiBcIjBfNVwiLFxuICAgICAgICBjaGFuZ2VGcmVxdWVuY3k6IFwid2Vla2x5XCIsXG4gICAgICAgIGFsdGVybmF0aXZlTGlua3M6IFtdLFxuICAgICAgICBodG1sVGl0bGU6IHVuZGVmaW5lZCxcbiAgICAgICAgbWV0YURlc2NyaXB0aW9uOiB1bmRlZmluZWQsXG4gICAgICAgIG9wZW5HcmFwaFRpdGxlOiB1bmRlZmluZWQsXG4gICAgICAgIG9wZW5HcmFwaERlc2NyaXB0aW9uOiB1bmRlZmluZWQsXG4gICAgICAgIHN0cnVjdHVyZWREYXRhOiB1bmRlZmluZWQsXG4gICAgICAgIGNhbm9uaWNhbFVybDogdW5kZWZpbmVkLFxuICAgIH0pKGNvbXBvc2VkQmxvY2spO1xuXG4gICAgdHlwZSBTdGF0ZSA9IEJsb2NrU3RhdGU8dHlwZW9mIGJsb2NrPjtcblxuICAgIGNvbnN0IFNlb0Jsb2NrOiBCbG9ja0ludGVyZmFjZTxTZW9CbG9ja0RhdGEsIFN0YXRlLCBTZW9CbG9ja0lucHV0PiA9IHtcbiAgICAgICAgLi4uY3JlYXRlQmxvY2tTa2VsZXRvbigpLFxuICAgICAgICAuLi5ibG9jayxcbiAgICAgICAgbmFtZTogXCJTZW9cIixcblxuICAgICAgICBkaXNwbGF5TmFtZTogPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvXCIgZGVmYXVsdE1lc3NhZ2U9XCJTRU9cIiAvPixcblxuICAgICAgICBBZG1pbkNvbXBvbmVudDogKHsgc3RhdGUsIHVwZGF0ZVN0YXRlIH0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGludGwgPSB1c2VJbnRsKCk7XG4gICAgICAgICAgICBjb25zdCB7IG9wZW5HcmFwaEltYWdlIH0gPSBjb21wb3NlZEFwaS5hZG1pbkNvbXBvbmVudHMoe1xuICAgICAgICAgICAgICAgIHN0YXRlLFxuICAgICAgICAgICAgICAgIHVwZGF0ZVN0YXRlOiBkZWNvbXBvc2VVcGRhdGVTdGF0ZUFjdGlvbih1cGRhdGVTdGF0ZSwgW1wib3BlbkdyYXBoSW1hZ2VcIl0pLFxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGNvbnN0IHByaW9yaXR5T3B0aW9ucyA9IHVzZVNpdGVtYXBQYWdlUHJpb3JpdHlGb3JtT3B0aW9ucygpO1xuICAgICAgICAgICAgY29uc3QgY2hhbmdlRnJlcXVlbmN5T3B0aW9ucyA9IHVzZVNpdGVtYXBDaGFuZ2VGcmVxdWVuY3lGb3JtT3B0aW9ucygpO1xuXG4gICAgICAgICAgICBjb25zdCBnZW5lcmF0ZVNlb1RhZyA9IHVzZVNlb1RhZ0dlbmVyYXRpb24oKTtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICA8QmxvY2tzRmluYWxGb3JtXG4gICAgICAgICAgICAgICAgICAgICAgICBvblN1Ym1pdD17KHZhbHVlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZVN0YXRlKChwcmV2U3RhdGUpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLnByZXZTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHRtbFRpdGxlOiB2YWx1ZXMuaHRtbFRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXRhRGVzY3JpcHRpb246IHZhbHVlcy5tZXRhRGVzY3JpcHRpb24sXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlbkdyYXBoVGl0bGU6IHZhbHVlcy5vcGVuR3JhcGhUaXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlbkdyYXBoRGVzY3JpcHRpb246IHZhbHVlcy5vcGVuR3JhcGhEZXNjcmlwdGlvbixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3R1cmVkRGF0YTogdmFsdWVzLnN0cnVjdHVyZWREYXRhLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vSW5kZXg6IHZhbHVlcy5ub0luZGV4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmlvcml0eTogdmFsdWVzLnByaW9yaXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2VGcmVxdWVuY3k6IHZhbHVlcy5jaGFuZ2VGcmVxdWVuY3ksXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2Fub25pY2FsVXJsOiB2YWx1ZXMuY2Fub25pY2FsVXJsLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdGVybmF0aXZlTGlua3M6IHZhbHVlcy5hbHRlcm5hdGl2ZUxpbmtzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICBtdXRhdG9ycz17eyAuLi5hcnJheU11dGF0b3JzIH19XG4gICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsVmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaHRtbFRpdGxlOiBzdGF0ZS5odG1sVGl0bGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0YURlc2NyaXB0aW9uOiBzdGF0ZS5tZXRhRGVzY3JpcHRpb24sXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuR3JhcGhUaXRsZTogc3RhdGUub3BlbkdyYXBoVGl0bGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlbkdyYXBoRGVzY3JpcHRpb246IHN0YXRlLm9wZW5HcmFwaERlc2NyaXB0aW9uLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0dXJlZERhdGE6IHN0YXRlLnN0cnVjdHVyZWREYXRhLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9JbmRleDogc3RhdGUubm9JbmRleCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmlvcml0eTogc3RhdGUucHJpb3JpdHksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlRnJlcXVlbmN5OiBzdGF0ZS5jaGFuZ2VGcmVxdWVuY3ksXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYW5vbmljYWxVcmw6IHN0YXRlLmNhbm9uaWNhbFVybCxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdGVybmF0aXZlTGlua3M6IHN0YXRlLmFsdGVybmF0aXZlTGlua3MsXG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogTWV0YSAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5tZXRhLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiTWV0YSBUYWdzXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLmh0bWxUaXRsZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiSFRNTCBUaXRsZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImh0bWxUaXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlU2VvVGFnPXtnZW5lcmF0ZVNlb1RhZ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8ubWV0YURlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJNZXRhIERlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwibWV0YURlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVTZW9UYWc9e2dlbmVyYXRlU2VvVGFnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdWx0aWxpbmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93cz17M31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93c01heD17NX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogT3BlbiBHcmFwaCAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLm9wZW5HcmFwaC5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIk9wZW4gR3JhcGhcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLm9wZW5HcmFwaFRpdGxlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJUaXRsZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cIm9wZW5HcmFwaFRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVTZW9UYWc9e2dlbmVyYXRlU2VvVGFnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8ub3BlbkdyYXBoRGVzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIkRlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwib3BlbkdyYXBoRGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZVNlb1RhZz17Z2VuZXJhdGVTZW9UYWd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpbGluZT17dHJ1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93cz17M31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93c01heD17NX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7b3BlbkdyYXBoSW1hZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIFN0cnVjdHVyZWQgRGF0YSAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLnN0cnVjdHVyZWREYXRhLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiU3RydWN0dXJlZCBEYXRhXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkIG5hbWU9XCJzdHJ1Y3R1cmVkRGF0YVwiIG11bHRpbGluZT17dHJ1ZX0gcm93cz17MTV9IGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9IGZ1bGxXaWR0aCB2YWxpZGF0ZT17dmFsaWRhdGVKc29ufSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBTaXRlbWFwICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uc2l0ZW1hcC5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIlNpdGVtYXBcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxSZWFjdEZpbmFsRm9ybUZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJub0luZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyc2U9eyh2KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gIXY7IC8vIHBhcnNlIGZyb20gbm9JbmRleCB0byBpbmRleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ9eyh2KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gIXY7IC8vIGZvcm1hdCBiYWNrIGZyb20gaW5kZXggdG8gbm9JbmRleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyh7IGlucHV0OiB7IGNoZWNrZWQsIG9uQ2hhbmdlIH0gfSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3BlbiA9IGNoZWNrZWQgPyBjaGVja2VkIDogZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxQYXBlciB2YXJpYW50PVwib3V0bGluZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuPXtvcGVufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVyPXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q29sbGFwc2libGVTd2l0Y2hCdXR0b25IZWFkZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hlY2tlZD17b3Blbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9ezxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuc2VvLnNpdGVtYXAucGFnZUluZGV4XCIgZGVmYXVsdE1lc3NhZ2U9XCJQYWdlIEluZGV4XCIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPERpdmlkZXIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggcGFkZGluZz17NH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5zaXRlbWFwLnByaW9yaXR5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJQcmlvcml0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cInByaW9yaXR5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM9e3ByaW9yaXR5T3B0aW9uc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3RGaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8uc2l0ZW1hcC5jaGFuZ2VGcmVxdWVuY3lcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIkNoYW5nZSBGcmVxdWVuY3lcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJjaGFuZ2VGcmVxdWVuY3lcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucz17Y2hhbmdlRnJlcXVlbmN5T3B0aW9uc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9QYXBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9SZWFjdEZpbmFsRm9ybUZpZWxkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBDYW5vbmljYWwgVGFnICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uY2Fub25pY2FsVGFnLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiQ2Fub25pY2FsIFRhZ1wiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZCBsYWJlbD17PEZvcm1hdHRlZE1lc3NhZ2Ugey4uLm1lc3NhZ2VzLnVybH0gLz59IG5hbWU9XCJjYW5vbmljYWxVcmxcIiBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fSBmdWxsV2lkdGggLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogQWx0ZXJuYXRlIEhyZWZsYW5nICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9ezxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5hbHRlcm5hdGl2ZUxpbmtzLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiQWx0ZXJuYXRlIGxpbmtzXCIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkQXJyYXkgbmFtZT1cImFsdGVybmF0aXZlTGlua3NcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgZmllbGRzIH0pID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtmaWVsZHMubWFwKChsaW5rLCBpKSA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQga2V5PXtpfSBjb250YWluZXIgc3BhY2luZz17Mn0gc3g9e3sgbWFyZ2luQm90dG9tOiAyIH19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBzaXplPXszfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29tZXQuYmxvY2tzLnNlby5hbHRlcm5hdGl2ZUxpbmtzLmNvZGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U9XCJDb2RlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT17YCR7bGlua30uY29kZWB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cImVuLVVTXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgc2l6ZT1cImdyb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXs8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMudXJsfSAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPXtgJHtsaW5rfS51cmxgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWRhdGU9eyh1cmwpID0+IHZhbGlkYXRlVXJsKHVybCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIGFsaWduU2VsZj1cImZsZXgtc3RhcnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEZWxldGVCdXR0b25XcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJY29uQnV0dG9uIG9uQ2xpY2s9eygpID0+IGZpZWxkcy5yZW1vdmUoaSl9IHNpemU9XCJsYXJnZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RGVsZXRlIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9JY29uQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9EZWxldGVCdXR0b25XcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvbiB2YXJpYW50PVwicHJpbWFyeVwiIG9uQ2xpY2s9eygpID0+IGZpZWxkcy5wdXNoKHsgY29kZTogXCJcIiwgdXJsOiBcIlwiIH0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QWRkQnV0dG9uQ29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEFkZEJ1dHRvbkljb24gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMuYWRkfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9BZGRCdXR0b25Db250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9GaWVsZEFycmF5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Jsb2NrQWRtaW5Db21wb25lbnRQYXBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Jsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgPC9CbG9ja3NGaW5hbEZvcm0+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApO1xuICAgICAgICB9LFxuICAgIH07XG5cbiAgICBpZiAob3ZlcnJpZGUpIHtcbiAgICAgICAgcmV0dXJuIG92ZXJyaWRlKFNlb0Jsb2NrKTtcbiAgICB9XG5cbiAgICByZXR1cm4gU2VvQmxvY2s7XG59XG5cbi8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbnRlcmZhY2UgRmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25Qcm9wczxGaWVsZFZhbHVlID0gYW55LCBGaWVsZEVsZW1lbnQgZXh0ZW5kcyBIVE1MRWxlbWVudCA9IEhUTUxFbGVtZW50PlxuICAgIGV4dGVuZHMgRmllbGRQcm9wczxGaWVsZFZhbHVlLCBGaWVsZEVsZW1lbnQ+IHtcbiAgICBuYW1lOiBTZW9UYWc7XG4gICAgZ2VuZXJhdGVTZW9UYWc6ICh0YWc6IFNlb1RhZywgY3VycmVudFZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpID0+IFByb21pc2U8c3RyaW5nPjtcbn1cblxuLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmZ1bmN0aW9uIEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uPEZpZWxkVmFsdWUgPSBhbnksIEZpZWxkRWxlbWVudCBleHRlbmRzIEhUTUxFbGVtZW50ID0gSFRNTEVsZW1lbnQ+KHtcbiAgICBuYW1lLFxuICAgIGdlbmVyYXRlU2VvVGFnLFxuICAgIGVuZEFkb3JubWVudDogcGFzc2VkRW5kQWRvcm5tZW50LFxuICAgIC4uLnByb3BzXG59OiBGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblByb3BzPEZpZWxkVmFsdWUsIEZpZWxkRWxlbWVudD4pIHtcbiAgICBjb25zdCBjb250ZW50R2VuZXJhdGlvbkNvbmZpZyA9IHVzZUNvbnRlbnRHZW5lcmF0aW9uQ29uZmlnKCk7XG4gICAgY29uc3QgZm9ybUFwaSA9IHVzZUZvcm0oKTtcblxuICAgIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICAgIGNvbnN0IGVuZEFkb3JubWVudCA9IGNvbnRlbnRHZW5lcmF0aW9uQ29uZmlnPy5zZW8gPyAoXG4gICAgICAgIDw+XG4gICAgICAgICAgICB7cGFzc2VkRW5kQWRvcm5tZW50fVxuICAgICAgICAgICAgPEljb25CdXR0b25cbiAgICAgICAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2FzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2VvVGFnID0gYXdhaXQgZ2VuZXJhdGVTZW9UYWcobmFtZSwgZm9ybUFwaS5nZXRGaWVsZFN0YXRlKG5hbWUpPy52YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICBmb3JtQXBpLmNoYW5nZShuYW1lLCBzZW9UYWcpO1xuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2xvYWRpbmcgPyA8TG9hZGluZyBiZWhhdmlvcj1cImZpbGxQYXJlbnRcIiBmb250U2l6ZT1cImxhcmdlXCIgLz4gOiA8QXJ0aWZpY2lhbEludGVsbGlnZW5jZSAvPn1cbiAgICAgICAgICAgIDwvSWNvbkJ1dHRvbj5cbiAgICAgICAgPC8+XG4gICAgKSA6IChcbiAgICAgICAgcGFzc2VkRW5kQWRvcm5tZW50XG4gICAgKTtcblxuICAgIHJldHVybiA8RmllbGQgbmFtZT17bmFtZX0gZW5kQWRvcm5tZW50PXtlbmRBZG9ybm1lbnR9IHsuLi5wcm9wc30gLz47XG59XG5cbmNvbnN0IEFkZEJ1dHRvbkNvbnRlbnQgPSBzdHlsZWQoXCJzcGFuXCIpYFxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDRweCAwO1xuYDtcblxuY29uc3QgQWRkQnV0dG9uSWNvbiA9IHN0eWxlZChBZGQpYFxuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG5gO1xuXG5jb25zdCBEZWxldGVCdXR0b25XcmFwcGVyID0gc3R5bGVkKFwiZGl2XCIpYFxuICAgIHBhZGRpbmctdG9wOiAyNHB4O1xuYDtcbiJdfQ== */",
439
441
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
440
442
  });
441
443
  var DeleteButtonWrapper = /*#__PURE__*/styled("div", process.env.NODE_ENV === "production" ? {
@@ -448,6 +450,6 @@ var DeleteButtonWrapper = /*#__PURE__*/styled("div", process.env.NODE_ENV === "p
448
450
  styles: "padding-top:24px"
449
451
  } : {
450
452
  name: "1ghu3wd",
451
- styles: "padding-top:24px/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9ja3MvY3JlYXRlU2VvQmxvY2sudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStYeUMiLCJmaWxlIjoiLi4vLi4vc3JjL2Jsb2Nrcy9jcmVhdGVTZW9CbG9jay50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCwgdHlwZSBGaWVsZFByb3BzLCBGaW5hbEZvcm1JbnB1dCwgTG9hZGluZywgbWVzc2FnZXMsIFNlbGVjdEZpZWxkIH0gZnJvbSBcIkBjb21ldC9hZG1pblwiO1xuaW1wb3J0IHsgQWRkLCBBcnRpZmljaWFsSW50ZWxsaWdlbmNlLCBEZWxldGUgfSBmcm9tIFwiQGNvbWV0L2FkbWluLWljb25zXCI7XG5pbXBvcnQgeyBCb3gsIERpdmlkZXIsIEdyaWQsIEljb25CdXR0b24sIFBhcGVyLCBUeXBvZ3JhcGh5IH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWxcIjtcbmltcG9ydCB7IHN0eWxlZCB9IGZyb20gXCJAbXVpL21hdGVyaWFsL3N0eWxlc1wiO1xuaW1wb3J0IGFycmF5TXV0YXRvcnMgZnJvbSBcImZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRmllbGQgYXMgUmVhY3RGaW5hbEZvcm1GaWVsZCwgdXNlRm9ybSB9IGZyb20gXCJyZWFjdC1maW5hbC1mb3JtXCI7XG5pbXBvcnQgeyBGaWVsZEFycmF5IH0gZnJvbSBcInJlYWN0LWZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyBGb3JtYXR0ZWRNZXNzYWdlLCB1c2VJbnRsIH0gZnJvbSBcInJlYWN0LWludGxcIjtcblxuaW1wb3J0IHsgdHlwZSBTZW9CbG9ja0RhdGEsIHR5cGUgU2VvQmxvY2tJbnB1dCB9IGZyb20gXCIuLi9ibG9ja3MuZ2VuZXJhdGVkXCI7XG5pbXBvcnQgeyB1c2VDb250ZW50R2VuZXJhdGlvbkNvbmZpZyB9IGZyb20gXCIuLi9kb2N1bWVudHMvQ29udGVudEdlbmVyYXRpb25Db25maWdDb250ZXh0XCI7XG5pbXBvcnQgeyB2YWxpZGF0ZVVybCB9IGZyb20gXCIuLi92YWxpZGF0aW9uL3ZhbGlkYXRlVXJsXCI7XG5pbXBvcnQgeyBCbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uIH0gZnJvbSBcIi4vY29tbW9uL0Jsb2NrQWRtaW5Db21wb25lbnRCdXR0b25cIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRQYXBlciB9IGZyb20gXCIuL2NvbW1vbi9CbG9ja0FkbWluQ29tcG9uZW50UGFwZXJcIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXAgfSBmcm9tIFwiLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudFNlY3Rpb25Hcm91cFwiO1xuaW1wb3J0IHsgQ29sbGFwc2libGUgfSBmcm9tIFwiLi9jb21tb24vQ29sbGFwc2libGVcIjtcbmltcG9ydCB7IENvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyIH0gZnJvbSBcIi4vY29tbW9uL0NvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyXCI7XG5pbXBvcnQgeyBjcmVhdGVPcHRpb25hbEJsb2NrIH0gZnJvbSBcIi4vZmFjdG9yaWVzL2NyZWF0ZU9wdGlvbmFsQmxvY2tcIjtcbmltcG9ydCB7IEJsb2Nrc0ZpbmFsRm9ybSB9IGZyb20gXCIuL2Zvcm0vQmxvY2tzRmluYWxGb3JtXCI7XG5pbXBvcnQgeyBjb21wb3NlQmxvY2tzIH0gZnJvbSBcIi4vaGVscGVycy9jb21wb3NlQmxvY2tzL2NvbXBvc2VCbG9ja3NcIjtcbmltcG9ydCB7IGNyZWF0ZUJsb2NrU2tlbGV0b24gfSBmcm9tIFwiLi9oZWxwZXJzL2NyZWF0ZUJsb2NrU2tlbGV0b25cIjtcbmltcG9ydCB7IGRlY29tcG9zZVVwZGF0ZVN0YXRlQWN0aW9uIH0gZnJvbSBcIi4vaGVscGVycy9kZWNvbXBvc2VVcGRhdGVTdGF0ZUFjdGlvblwiO1xuaW1wb3J0IHsgd2l0aEFkZGl0aW9uYWxCbG9ja0F0dHJpYnV0ZXMgfSBmcm9tIFwiLi9oZWxwZXJzL3dpdGhBZGRpdGlvbmFsQmxvY2tBdHRyaWJ1dGVzXCI7XG5pbXBvcnQgeyBQaXhlbEltYWdlQmxvY2sgfSBmcm9tIFwiLi9QaXhlbEltYWdlQmxvY2tcIjtcbmltcG9ydCB7IHR5cGUgU2VvVGFnLCB1c2VTZW9UYWdHZW5lcmF0aW9uIH0gZnJvbSBcIi4vc2VvL3VzZVNlb1RhZ0dlbmVyYXRpb25cIjtcbmltcG9ydCB1c2VTaXRlbWFwQ2hhbmdlRnJlcXVlbmN5Rm9ybU9wdGlvbnMgZnJvbSBcIi4vc2VvL3VzZVNpdGVtYXBDaGFuZ2VGcmVxdWVuY3lGb3JtT3B0aW9uc1wiO1xuaW1wb3J0IHVzZVNpdGVtYXBQYWdlUHJpb3JpdHlGb3JtT3B0aW9ucyBmcm9tIFwiLi9zZW8vdXNlU2l0ZW1hcFBhZ2VQcmlvcml0eUZvcm1PcHRpb25zXCI7XG5pbXBvcnQgeyB0eXBlIEJsb2NrSW50ZXJmYWNlLCB0eXBlIEJsb2NrU3RhdGUgfSBmcm9tIFwiLi90eXBlc1wiO1xuXG5pbnRlcmZhY2UgQ3JlYXRlU2VvQmxvY2tPcHRpb25zIHtcbiAgICBpbWFnZT86IEJsb2NrSW50ZXJmYWNlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VvQmxvY2soXG4gICAgeyBpbWFnZSA9IFBpeGVsSW1hZ2VCbG9jayB9OiBDcmVhdGVTZW9CbG9ja09wdGlvbnMgPSB7fSxcbiAgICBvdmVycmlkZT86IChibG9jazogQmxvY2tJbnRlcmZhY2UpID0+IEJsb2NrSW50ZXJmYWNlLFxuKTogQmxvY2tJbnRlcmZhY2Uge1xuICAgIGNvbnN0IE9wdGlvbmFsSW1hZ2VCbG9jayA9IGNyZWF0ZU9wdGlvbmFsQmxvY2soaW1hZ2UsIHtcbiAgICAgICAgdGl0bGU6IDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuc2l0ZW1hcC5vcGVuR3JhcGhJbWFnZVwiIGRlZmF1bHRNZXNzYWdlPVwiT3BlbiBHcmFwaCBJbWFnZVwiIC8+LFxuICAgIH0pO1xuXG4gICAgY29uc3QgY29tcG9zZWQgPSBjb21wb3NlQmxvY2tzKHsgb3BlbkdyYXBoSW1hZ2U6IE9wdGlvbmFsSW1hZ2VCbG9jayB9KTtcblxuICAgIGNvbnN0IHsgYXBpOiBjb21wb3NlZEFwaSwgYmxvY2s6IGNvbXBvc2VkQmxvY2sgfSA9IGNvbXBvc2VkO1xuXG4gICAgY29uc3QgYmxvY2sgPSB3aXRoQWRkaXRpb25hbEJsb2NrQXR0cmlidXRlczxPbWl0PFNlb0Jsb2NrRGF0YSwgXCJvcGVuR3JhcGhJbWFnZVwiPj4oe1xuICAgICAgICBub0luZGV4OiBmYWxzZSxcbiAgICAgICAgcHJpb3JpdHk6IFwiMF81XCIsXG4gICAgICAgIGNoYW5nZUZyZXF1ZW5jeTogXCJ3ZWVrbHlcIixcbiAgICAgICAgYWx0ZXJuYXRpdmVMaW5rczogW10sXG4gICAgICAgIGh0bWxUaXRsZTogdW5kZWZpbmVkLFxuICAgICAgICBtZXRhRGVzY3JpcHRpb246IHVuZGVmaW5lZCxcbiAgICAgICAgb3BlbkdyYXBoVGl0bGU6IHVuZGVmaW5lZCxcbiAgICAgICAgb3BlbkdyYXBoRGVzY3JpcHRpb246IHVuZGVmaW5lZCxcbiAgICAgICAgc3RydWN0dXJlZERhdGE6IHVuZGVmaW5lZCxcbiAgICAgICAgY2Fub25pY2FsVXJsOiB1bmRlZmluZWQsXG4gICAgfSkoY29tcG9zZWRCbG9jayk7XG5cbiAgICB0eXBlIFN0YXRlID0gQmxvY2tTdGF0ZTx0eXBlb2YgYmxvY2s+O1xuXG4gICAgY29uc3QgU2VvQmxvY2s6IEJsb2NrSW50ZXJmYWNlPFNlb0Jsb2NrRGF0YSwgU3RhdGUsIFNlb0Jsb2NrSW5wdXQ+ID0ge1xuICAgICAgICAuLi5jcmVhdGVCbG9ja1NrZWxldG9uKCksXG4gICAgICAgIC4uLmJsb2NrLFxuICAgICAgICBuYW1lOiBcIlNlb1wiLFxuXG4gICAgICAgIGRpc3BsYXlOYW1lOiA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW9cIiBkZWZhdWx0TWVzc2FnZT1cIlNFT1wiIC8+LFxuXG4gICAgICAgIEFkbWluQ29tcG9uZW50OiAoeyBzdGF0ZSwgdXBkYXRlU3RhdGUgfSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaW50bCA9IHVzZUludGwoKTtcbiAgICAgICAgICAgIGNvbnN0IHsgb3BlbkdyYXBoSW1hZ2UgfSA9IGNvbXBvc2VkQXBpLmFkbWluQ29tcG9uZW50cyh7XG4gICAgICAgICAgICAgICAgc3RhdGUsXG4gICAgICAgICAgICAgICAgdXBkYXRlU3RhdGU6IGRlY29tcG9zZVVwZGF0ZVN0YXRlQWN0aW9uKHVwZGF0ZVN0YXRlLCBbXCJvcGVuR3JhcGhJbWFnZVwiXSksXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgY29uc3QgcHJpb3JpdHlPcHRpb25zID0gdXNlU2l0ZW1hcFBhZ2VQcmlvcml0eUZvcm1PcHRpb25zKCk7XG4gICAgICAgICAgICBjb25zdCBjaGFuZ2VGcmVxdWVuY3lPcHRpb25zID0gdXNlU2l0ZW1hcENoYW5nZUZyZXF1ZW5jeUZvcm1PcHRpb25zKCk7XG5cbiAgICAgICAgICAgIGNvbnN0IGdlbmVyYXRlU2VvVGFnID0gdXNlU2VvVGFnR2VuZXJhdGlvbigpO1xuXG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgIDxCbG9ja3NGaW5hbEZvcm1cbiAgICAgICAgICAgICAgICAgICAgICAgIG9uU3VibWl0PXsodmFsdWVzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlU3RhdGUoKHByZXZTdGF0ZSkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBodG1sVGl0bGU6IHZhbHVlcy5odG1sVGl0bGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFEZXNjcmlwdGlvbjogdmFsdWVzLm1ldGFEZXNjcmlwdGlvbixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuR3JhcGhUaXRsZTogdmFsdWVzLm9wZW5HcmFwaFRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuR3JhcGhEZXNjcmlwdGlvbjogdmFsdWVzLm9wZW5HcmFwaERlc2NyaXB0aW9uLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdHVyZWREYXRhOiB2YWx1ZXMuc3RydWN0dXJlZERhdGEsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9JbmRleDogdmFsdWVzLm5vSW5kZXgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW9yaXR5OiB2YWx1ZXMucHJpb3JpdHksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZUZyZXF1ZW5jeTogdmFsdWVzLmNoYW5nZUZyZXF1ZW5jeSxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYW5vbmljYWxVcmw6IHZhbHVlcy5jYW5vbmljYWxVcmwsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0ZXJuYXRpdmVMaW5rczogdmFsdWVzLmFsdGVybmF0aXZlTGlua3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIG11dGF0b3JzPXt7IC4uLmFycmF5TXV0YXRvcnMgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIGluaXRpYWxWYWx1ZXM9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBodG1sVGl0bGU6IHN0YXRlLmh0bWxUaXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXRhRGVzY3JpcHRpb246IHN0YXRlLm1ldGFEZXNjcmlwdGlvbixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5HcmFwaFRpdGxlOiBzdGF0ZS5vcGVuR3JhcGhUaXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuR3JhcGhEZXNjcmlwdGlvbjogc3RhdGUub3BlbkdyYXBoRGVzY3JpcHRpb24sXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3R1cmVkRGF0YTogc3RhdGUuc3RydWN0dXJlZERhdGEsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBub0luZGV4OiBzdGF0ZS5ub0luZGV4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW9yaXR5OiBzdGF0ZS5wcmlvcml0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2VGcmVxdWVuY3k6IHN0YXRlLmNoYW5nZUZyZXF1ZW5jeSxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbm9uaWNhbFVybDogc3RhdGUuY2Fub25pY2FsVXJsLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0ZXJuYXRpdmVMaW5rczogc3RhdGUuYWx0ZXJuYXRpdmVMaW5rcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBNZXRhICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLm1ldGEuc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJNZXRhIFRhZ3NcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8uaHRtbFRpdGxlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJIVE1MIFRpdGxlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiaHRtbFRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVTZW9UYWc9e2dlbmVyYXRlU2VvVGFnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5tZXRhRGVzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIk1ldGEgRGVzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJtZXRhRGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZVNlb1RhZz17Z2VuZXJhdGVTZW9UYWd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpbGluZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzPXszfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzTWF4PXs1fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBPcGVuIEdyYXBoICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8ub3BlbkdyYXBoLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiT3BlbiBHcmFwaFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8ub3BlbkdyYXBoVGl0bGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIlRpdGxlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwib3BlbkdyYXBoVGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZVNlb1RhZz17Z2VuZXJhdGVTZW9UYWd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5vcGVuR3JhcGhEZXNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiRGVzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJvcGVuR3JhcGhEZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlU2VvVGFnPXtnZW5lcmF0ZVNlb1RhZ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlsaW5lPXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzPXszfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzTWF4PXs1fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtvcGVuR3JhcGhJbWFnZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogU3RydWN0dXJlZCBEYXRhICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uc3RydWN0dXJlZERhdGEuc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJTdHJ1Y3R1cmVkIERhdGFcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGQgbmFtZT1cInN0cnVjdHVyZWREYXRhXCIgbXVsdGlsaW5lPXt0cnVlfSByb3dzPXsxNX0gY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH0gZnVsbFdpZHRoIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIFNpdGVtYXAgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5zaXRlbWFwLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiU2l0ZW1hcFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFJlYWN0RmluYWxGb3JtRmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cIm5vSW5kZXhcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJzZT17KHYpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAhdjsgLy8gcGFyc2UgZnJvbSBub0luZGV4IHRvIGluZGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD17KHYpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAhdjsgLy8gZm9ybWF0IGJhY2sgZnJvbSBpbmRleCB0byBub0luZGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgaW5wdXQ6IHsgY2hlY2tlZCwgb25DaGFuZ2UgfSB9KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBvcGVuID0gY2hlY2tlZCA/IGNoZWNrZWQgOiBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFBhcGVyIHZhcmlhbnQ9XCJvdXRsaW5lZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q29sbGFwc2libGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW49e29wZW59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXI9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDb2xsYXBzaWJsZVN3aXRjaEJ1dHRvbkhlYWRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGVja2VkPXtvcGVufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT17PEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5zZW8uc2l0ZW1hcC5wYWdlSW5kZXhcIiBkZWZhdWx0TWVzc2FnZT1cIlBhZ2UgSW5kZXhcIiAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RGl2aWRlciAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBwYWRkaW5nPXs0fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLnNpdGVtYXAucHJpb3JpdHlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIlByaW9yaXR5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwicHJpb3JpdHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucz17cHJpb3JpdHlPcHRpb25zfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5zaXRlbWFwLmNoYW5nZUZyZXF1ZW5jeVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiQ2hhbmdlIEZyZXF1ZW5jeVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImNoYW5nZUZyZXF1ZW5jeVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zPXtjaGFuZ2VGcmVxdWVuY3lPcHRpb25zfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1BhcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1JlYWN0RmluYWxGb3JtRmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIENhbm9uaWNhbCBUYWcgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5jYW5vbmljYWxUYWcuc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJDYW5vbmljYWwgVGFnXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkIGxhYmVsPXs8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMudXJsfSAvPn0gbmFtZT1cImNhbm9uaWNhbFVybFwiIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9IGZ1bGxXaWR0aCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBBbHRlcm5hdGUgSHJlZmxhbmcgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tBZG1pbkNvbXBvbmVudFNlY3Rpb25Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT17PEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLmFsdGVybmF0aXZlTGlua3Muc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJBbHRlcm5hdGUgbGlua3NcIiAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCbG9ja0FkbWluQ29tcG9uZW50UGFwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRBcnJheSBuYW1lPVwiYWx0ZXJuYXRpdmVMaW5rc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsoeyBmaWVsZHMgfSkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2ZpZWxkcy5tYXAoKGxpbmssIGkpID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBrZXk9e2l9IGNvbnRhaW5lciBzcGFjaW5nPXsyfSBzeD17eyBtYXJnaW5Cb3R0b206IDIgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIHNpemU9ezN9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLmFsdGVybmF0aXZlTGlua3MuY29kZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZT1cIkNvZGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPXtgJHtsaW5rfS5jb2RlYH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiZW4tVVNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBzaXplPVwiZ3Jvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9ezxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy51cmx9IC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9e2Ake2xpbmt9LnVybGB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWxpZGF0ZT17KHVybCkgPT4gdmFsaWRhdGVVcmwodXJsKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgYWxpZ25TZWxmPVwiZmxleC1zdGFydFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPERlbGV0ZUJ1dHRvbldyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEljb25CdXR0b24gb25DbGljaz17KCkgPT4gZmllbGRzLnJlbW92ZShpKX0gc2l6ZT1cImxhcmdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEZWxldGUgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ljb25CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0RlbGV0ZUJ1dHRvbldyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uIHZhcmlhbnQ9XCJwcmltYXJ5XCIgb25DbGljaz17KCkgPT4gZmllbGRzLnB1c2goeyBjb2RlOiBcIlwiLCB1cmw6IFwiXCIgfSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxBZGRCdXR0b25Db250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QWRkQnV0dG9uSWNvbiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy5hZGR9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0FkZEJ1dHRvbkNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Jsb2NrQWRtaW5Db21wb25lbnRCdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ZpZWxkQXJyYXk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tBZG1pbkNvbXBvbmVudFNlY3Rpb25Hcm91cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICA8L0Jsb2Nrc0ZpbmFsRm9ybT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0sXG4gICAgfTtcblxuICAgIGlmIChvdmVycmlkZSkge1xuICAgICAgICByZXR1cm4gb3ZlcnJpZGUoU2VvQmxvY2spO1xuICAgIH1cblxuICAgIHJldHVybiBTZW9CbG9jaztcbn1cblxuLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmludGVyZmFjZSBGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblByb3BzPEZpZWxkVmFsdWUgPSBhbnksIEZpZWxkRWxlbWVudCBleHRlbmRzIEhUTUxFbGVtZW50ID0gSFRNTEVsZW1lbnQ+XG4gICAgZXh0ZW5kcyBGaWVsZFByb3BzPEZpZWxkVmFsdWUsIEZpZWxkRWxlbWVudD4ge1xuICAgIG5hbWU6IFNlb1RhZztcbiAgICBnZW5lcmF0ZVNlb1RhZzogKHRhZzogU2VvVGFnLCBjdXJyZW50VmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkgPT4gUHJvbWlzZTxzdHJpbmc+O1xufVxuXG4vKiBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuZnVuY3Rpb24gRmllbGRXaXRoQ29udGVudEdlbmVyYXRpb248RmllbGRWYWx1ZSA9IGFueSwgRmllbGRFbGVtZW50IGV4dGVuZHMgSFRNTEVsZW1lbnQgPSBIVE1MRWxlbWVudD4oe1xuICAgIG5hbWUsXG4gICAgZ2VuZXJhdGVTZW9UYWcsXG4gICAgZW5kQWRvcm5tZW50OiBwYXNzZWRFbmRBZG9ybm1lbnQsXG4gICAgLi4ucHJvcHNcbn06IEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uUHJvcHM8RmllbGRWYWx1ZSwgRmllbGRFbGVtZW50Pikge1xuICAgIGNvbnN0IGNvbnRlbnRHZW5lcmF0aW9uQ29uZmlnID0gdXNlQ29udGVudEdlbmVyYXRpb25Db25maWcoKTtcbiAgICBjb25zdCBmb3JtQXBpID0gdXNlRm9ybSgpO1xuXG4gICAgY29uc3QgW2xvYWRpbmcsIHNldExvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gICAgY29uc3QgZW5kQWRvcm5tZW50ID0gY29udGVudEdlbmVyYXRpb25Db25maWc/LnNlbyA/IChcbiAgICAgICAgPD5cbiAgICAgICAgICAgIHtwYXNzZWRFbmRBZG9ybm1lbnR9XG4gICAgICAgICAgICA8SWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17YXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBzZXRMb2FkaW5nKHRydWUpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzZW9UYWcgPSBhd2FpdCBnZW5lcmF0ZVNlb1RhZyhuYW1lLCBmb3JtQXBpLmdldEZpZWxkU3RhdGUobmFtZSk/LnZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgc2V0TG9hZGluZyhmYWxzZSk7XG4gICAgICAgICAgICAgICAgICAgIGZvcm1BcGkuY2hhbmdlKG5hbWUsIHNlb1RhZyk7XG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7bG9hZGluZyA/IDxMb2FkaW5nIGJlaGF2aW9yPVwiZmlsbFBhcmVudFwiIGZvbnRTaXplPVwibGFyZ2VcIiAvPiA6IDxBcnRpZmljaWFsSW50ZWxsaWdlbmNlIC8+fVxuICAgICAgICAgICAgPC9JY29uQnV0dG9uPlxuICAgICAgICA8Lz5cbiAgICApIDogKFxuICAgICAgICBwYXNzZWRFbmRBZG9ybm1lbnRcbiAgICApO1xuXG4gICAgcmV0dXJuIDxGaWVsZCBuYW1lPXtuYW1lfSBlbmRBZG9ybm1lbnQ9e2VuZEFkb3JubWVudH0gey4uLnByb3BzfSAvPjtcbn1cblxuY29uc3QgQWRkQnV0dG9uQ29udGVudCA9IHN0eWxlZChcInNwYW5cIilgXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogNHB4IDA7XG5gO1xuXG5jb25zdCBBZGRCdXR0b25JY29uID0gc3R5bGVkKEFkZClgXG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbmA7XG5cbmNvbnN0IERlbGV0ZUJ1dHRvbldyYXBwZXIgPSBzdHlsZWQoXCJkaXZcIilgXG4gICAgcGFkZGluZy10b3A6IDI0cHg7XG5gO1xuIl19 */",
453
+ styles: "padding-top:24px/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9ja3MvY3JlYXRlU2VvQmxvY2sudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdZeUMiLCJmaWxlIjoiLi4vLi4vc3JjL2Jsb2Nrcy9jcmVhdGVTZW9CbG9jay50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCwgdHlwZSBGaWVsZFByb3BzLCBGaW5hbEZvcm1JbnB1dCwgTG9hZGluZywgbWVzc2FnZXMsIFNlbGVjdEZpZWxkIH0gZnJvbSBcIkBjb21ldC9hZG1pblwiO1xuaW1wb3J0IHsgQWRkLCBBcnRpZmljaWFsSW50ZWxsaWdlbmNlLCBEZWxldGUgfSBmcm9tIFwiQGNvbWV0L2FkbWluLWljb25zXCI7XG5pbXBvcnQgeyBCb3gsIERpdmlkZXIsIEdyaWQsIEljb25CdXR0b24sIFBhcGVyLCBUeXBvZ3JhcGh5IH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWxcIjtcbmltcG9ydCB7IHN0eWxlZCB9IGZyb20gXCJAbXVpL21hdGVyaWFsL3N0eWxlc1wiO1xuaW1wb3J0IGFycmF5TXV0YXRvcnMgZnJvbSBcImZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRmllbGQgYXMgUmVhY3RGaW5hbEZvcm1GaWVsZCwgdXNlRm9ybSB9IGZyb20gXCJyZWFjdC1maW5hbC1mb3JtXCI7XG5pbXBvcnQgeyBGaWVsZEFycmF5IH0gZnJvbSBcInJlYWN0LWZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyBGb3JtYXR0ZWRNZXNzYWdlLCB1c2VJbnRsIH0gZnJvbSBcInJlYWN0LWludGxcIjtcblxuaW1wb3J0IHR5cGUgeyBTZW9CbG9ja0RhdGEsIFNlb0Jsb2NrSW5wdXQgfSBmcm9tIFwiLi4vYmxvY2tzLmdlbmVyYXRlZFwiO1xuaW1wb3J0IHsgdXNlQ29udGVudEdlbmVyYXRpb25Db25maWcgfSBmcm9tIFwiLi4vZG9jdW1lbnRzL0NvbnRlbnRHZW5lcmF0aW9uQ29uZmlnQ29udGV4dFwiO1xuaW1wb3J0IHsgdmFsaWRhdGVKc29uIH0gZnJvbSBcIi4uL3ZhbGlkYXRpb24vdmFsaWRhdGVKc29uXCI7XG5pbXBvcnQgeyB2YWxpZGF0ZVVybCB9IGZyb20gXCIuLi92YWxpZGF0aW9uL3ZhbGlkYXRlVXJsXCI7XG5pbXBvcnQgeyBCbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uIH0gZnJvbSBcIi4vY29tbW9uL0Jsb2NrQWRtaW5Db21wb25lbnRCdXR0b25cIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRQYXBlciB9IGZyb20gXCIuL2NvbW1vbi9CbG9ja0FkbWluQ29tcG9uZW50UGFwZXJcIjtcbmltcG9ydCB7IEJsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXAgfSBmcm9tIFwiLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudFNlY3Rpb25Hcm91cFwiO1xuaW1wb3J0IHsgQ29sbGFwc2libGUgfSBmcm9tIFwiLi9jb21tb24vQ29sbGFwc2libGVcIjtcbmltcG9ydCB7IENvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyIH0gZnJvbSBcIi4vY29tbW9uL0NvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyXCI7XG5pbXBvcnQgeyBjcmVhdGVPcHRpb25hbEJsb2NrIH0gZnJvbSBcIi4vZmFjdG9yaWVzL2NyZWF0ZU9wdGlvbmFsQmxvY2tcIjtcbmltcG9ydCB7IEJsb2Nrc0ZpbmFsRm9ybSB9IGZyb20gXCIuL2Zvcm0vQmxvY2tzRmluYWxGb3JtXCI7XG5pbXBvcnQgeyBjb21wb3NlQmxvY2tzIH0gZnJvbSBcIi4vaGVscGVycy9jb21wb3NlQmxvY2tzL2NvbXBvc2VCbG9ja3NcIjtcbmltcG9ydCB7IGNyZWF0ZUJsb2NrU2tlbGV0b24gfSBmcm9tIFwiLi9oZWxwZXJzL2NyZWF0ZUJsb2NrU2tlbGV0b25cIjtcbmltcG9ydCB7IGRlY29tcG9zZVVwZGF0ZVN0YXRlQWN0aW9uIH0gZnJvbSBcIi4vaGVscGVycy9kZWNvbXBvc2VVcGRhdGVTdGF0ZUFjdGlvblwiO1xuaW1wb3J0IHsgd2l0aEFkZGl0aW9uYWxCbG9ja0F0dHJpYnV0ZXMgfSBmcm9tIFwiLi9oZWxwZXJzL3dpdGhBZGRpdGlvbmFsQmxvY2tBdHRyaWJ1dGVzXCI7XG5pbXBvcnQgeyBQaXhlbEltYWdlQmxvY2sgfSBmcm9tIFwiLi9QaXhlbEltYWdlQmxvY2tcIjtcbmltcG9ydCB7IHR5cGUgU2VvVGFnLCB1c2VTZW9UYWdHZW5lcmF0aW9uIH0gZnJvbSBcIi4vc2VvL3VzZVNlb1RhZ0dlbmVyYXRpb25cIjtcbmltcG9ydCB1c2VTaXRlbWFwQ2hhbmdlRnJlcXVlbmN5Rm9ybU9wdGlvbnMgZnJvbSBcIi4vc2VvL3VzZVNpdGVtYXBDaGFuZ2VGcmVxdWVuY3lGb3JtT3B0aW9uc1wiO1xuaW1wb3J0IHVzZVNpdGVtYXBQYWdlUHJpb3JpdHlGb3JtT3B0aW9ucyBmcm9tIFwiLi9zZW8vdXNlU2l0ZW1hcFBhZ2VQcmlvcml0eUZvcm1PcHRpb25zXCI7XG5pbXBvcnQgdHlwZSB7IEJsb2NrSW50ZXJmYWNlLCBCbG9ja1N0YXRlIH0gZnJvbSBcIi4vdHlwZXNcIjtcblxuaW50ZXJmYWNlIENyZWF0ZVNlb0Jsb2NrT3B0aW9ucyB7XG4gICAgaW1hZ2U/OiBCbG9ja0ludGVyZmFjZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVNlb0Jsb2NrKFxuICAgIHsgaW1hZ2UgPSBQaXhlbEltYWdlQmxvY2sgfTogQ3JlYXRlU2VvQmxvY2tPcHRpb25zID0ge30sXG4gICAgb3ZlcnJpZGU/OiAoYmxvY2s6IEJsb2NrSW50ZXJmYWNlKSA9PiBCbG9ja0ludGVyZmFjZSxcbik6IEJsb2NrSW50ZXJmYWNlIHtcbiAgICBjb25zdCBPcHRpb25hbEltYWdlQmxvY2sgPSBjcmVhdGVPcHRpb25hbEJsb2NrKGltYWdlLCB7XG4gICAgICAgIHRpdGxlOiA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LnNpdGVtYXAub3BlbkdyYXBoSW1hZ2VcIiBkZWZhdWx0TWVzc2FnZT1cIk9wZW4gR3JhcGggSW1hZ2VcIiAvPixcbiAgICB9KTtcblxuICAgIGNvbnN0IGNvbXBvc2VkID0gY29tcG9zZUJsb2Nrcyh7IG9wZW5HcmFwaEltYWdlOiBPcHRpb25hbEltYWdlQmxvY2sgfSk7XG5cbiAgICBjb25zdCB7IGFwaTogY29tcG9zZWRBcGksIGJsb2NrOiBjb21wb3NlZEJsb2NrIH0gPSBjb21wb3NlZDtcblxuICAgIGNvbnN0IGJsb2NrID0gd2l0aEFkZGl0aW9uYWxCbG9ja0F0dHJpYnV0ZXM8T21pdDxTZW9CbG9ja0RhdGEsIFwib3BlbkdyYXBoSW1hZ2VcIj4+KHtcbiAgICAgICAgbm9JbmRleDogZmFsc2UsXG4gICAgICAgIHByaW9yaXR5OiBcIjBfNVwiLFxuICAgICAgICBjaGFuZ2VGcmVxdWVuY3k6IFwid2Vla2x5XCIsXG4gICAgICAgIGFsdGVybmF0aXZlTGlua3M6IFtdLFxuICAgICAgICBodG1sVGl0bGU6IHVuZGVmaW5lZCxcbiAgICAgICAgbWV0YURlc2NyaXB0aW9uOiB1bmRlZmluZWQsXG4gICAgICAgIG9wZW5HcmFwaFRpdGxlOiB1bmRlZmluZWQsXG4gICAgICAgIG9wZW5HcmFwaERlc2NyaXB0aW9uOiB1bmRlZmluZWQsXG4gICAgICAgIHN0cnVjdHVyZWREYXRhOiB1bmRlZmluZWQsXG4gICAgICAgIGNhbm9uaWNhbFVybDogdW5kZWZpbmVkLFxuICAgIH0pKGNvbXBvc2VkQmxvY2spO1xuXG4gICAgdHlwZSBTdGF0ZSA9IEJsb2NrU3RhdGU8dHlwZW9mIGJsb2NrPjtcblxuICAgIGNvbnN0IFNlb0Jsb2NrOiBCbG9ja0ludGVyZmFjZTxTZW9CbG9ja0RhdGEsIFN0YXRlLCBTZW9CbG9ja0lucHV0PiA9IHtcbiAgICAgICAgLi4uY3JlYXRlQmxvY2tTa2VsZXRvbigpLFxuICAgICAgICAuLi5ibG9jayxcbiAgICAgICAgbmFtZTogXCJTZW9cIixcblxuICAgICAgICBkaXNwbGF5TmFtZTogPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvXCIgZGVmYXVsdE1lc3NhZ2U9XCJTRU9cIiAvPixcblxuICAgICAgICBBZG1pbkNvbXBvbmVudDogKHsgc3RhdGUsIHVwZGF0ZVN0YXRlIH0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGludGwgPSB1c2VJbnRsKCk7XG4gICAgICAgICAgICBjb25zdCB7IG9wZW5HcmFwaEltYWdlIH0gPSBjb21wb3NlZEFwaS5hZG1pbkNvbXBvbmVudHMoe1xuICAgICAgICAgICAgICAgIHN0YXRlLFxuICAgICAgICAgICAgICAgIHVwZGF0ZVN0YXRlOiBkZWNvbXBvc2VVcGRhdGVTdGF0ZUFjdGlvbih1cGRhdGVTdGF0ZSwgW1wib3BlbkdyYXBoSW1hZ2VcIl0pLFxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGNvbnN0IHByaW9yaXR5T3B0aW9ucyA9IHVzZVNpdGVtYXBQYWdlUHJpb3JpdHlGb3JtT3B0aW9ucygpO1xuICAgICAgICAgICAgY29uc3QgY2hhbmdlRnJlcXVlbmN5T3B0aW9ucyA9IHVzZVNpdGVtYXBDaGFuZ2VGcmVxdWVuY3lGb3JtT3B0aW9ucygpO1xuXG4gICAgICAgICAgICBjb25zdCBnZW5lcmF0ZVNlb1RhZyA9IHVzZVNlb1RhZ0dlbmVyYXRpb24oKTtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICA8QmxvY2tzRmluYWxGb3JtXG4gICAgICAgICAgICAgICAgICAgICAgICBvblN1Ym1pdD17KHZhbHVlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZVN0YXRlKChwcmV2U3RhdGUpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLnByZXZTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHRtbFRpdGxlOiB2YWx1ZXMuaHRtbFRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXRhRGVzY3JpcHRpb246IHZhbHVlcy5tZXRhRGVzY3JpcHRpb24sXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlbkdyYXBoVGl0bGU6IHZhbHVlcy5vcGVuR3JhcGhUaXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlbkdyYXBoRGVzY3JpcHRpb246IHZhbHVlcy5vcGVuR3JhcGhEZXNjcmlwdGlvbixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3R1cmVkRGF0YTogdmFsdWVzLnN0cnVjdHVyZWREYXRhLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vSW5kZXg6IHZhbHVlcy5ub0luZGV4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmlvcml0eTogdmFsdWVzLnByaW9yaXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2VGcmVxdWVuY3k6IHZhbHVlcy5jaGFuZ2VGcmVxdWVuY3ksXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2Fub25pY2FsVXJsOiB2YWx1ZXMuY2Fub25pY2FsVXJsLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdGVybmF0aXZlTGlua3M6IHZhbHVlcy5hbHRlcm5hdGl2ZUxpbmtzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICBtdXRhdG9ycz17eyAuLi5hcnJheU11dGF0b3JzIH19XG4gICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsVmFsdWVzPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaHRtbFRpdGxlOiBzdGF0ZS5odG1sVGl0bGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0YURlc2NyaXB0aW9uOiBzdGF0ZS5tZXRhRGVzY3JpcHRpb24sXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuR3JhcGhUaXRsZTogc3RhdGUub3BlbkdyYXBoVGl0bGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlbkdyYXBoRGVzY3JpcHRpb246IHN0YXRlLm9wZW5HcmFwaERlc2NyaXB0aW9uLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0dXJlZERhdGE6IHN0YXRlLnN0cnVjdHVyZWREYXRhLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9JbmRleDogc3RhdGUubm9JbmRleCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmlvcml0eTogc3RhdGUucHJpb3JpdHksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlRnJlcXVlbmN5OiBzdGF0ZS5jaGFuZ2VGcmVxdWVuY3ksXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYW5vbmljYWxVcmw6IHN0YXRlLmNhbm9uaWNhbFVybCxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdGVybmF0aXZlTGlua3M6IHN0YXRlLmFsdGVybmF0aXZlTGlua3MsXG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogTWV0YSAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5tZXRhLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiTWV0YSBUYWdzXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLmh0bWxUaXRsZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiSFRNTCBUaXRsZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImh0bWxUaXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlU2VvVGFnPXtnZW5lcmF0ZVNlb1RhZ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8ubWV0YURlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJNZXRhIERlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwibWV0YURlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVTZW9UYWc9e2dlbmVyYXRlU2VvVGFnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdWx0aWxpbmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93cz17M31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93c01heD17NX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogT3BlbiBHcmFwaCAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLm9wZW5HcmFwaC5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIk9wZW4gR3JhcGhcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLm9wZW5HcmFwaFRpdGxlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJUaXRsZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cIm9wZW5HcmFwaFRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVTZW9UYWc9e2dlbmVyYXRlU2VvVGFnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8ub3BlbkdyYXBoRGVzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIkRlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwib3BlbkdyYXBoRGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZVNlb1RhZz17Z2VuZXJhdGVTZW9UYWd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpbGluZT17dHJ1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93cz17M31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93c01heD17NX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7b3BlbkdyYXBoSW1hZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIFN0cnVjdHVyZWQgRGF0YSAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLnN0cnVjdHVyZWREYXRhLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiU3RydWN0dXJlZCBEYXRhXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkIG5hbWU9XCJzdHJ1Y3R1cmVkRGF0YVwiIG11bHRpbGluZT17dHJ1ZX0gcm93cz17MTV9IGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9IGZ1bGxXaWR0aCB2YWxpZGF0ZT17dmFsaWRhdGVKc29ufSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBTaXRlbWFwICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uc2l0ZW1hcC5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIlNpdGVtYXBcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxSZWFjdEZpbmFsRm9ybUZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJub0luZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyc2U9eyh2KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gIXY7IC8vIHBhcnNlIGZyb20gbm9JbmRleCB0byBpbmRleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ9eyh2KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gIXY7IC8vIGZvcm1hdCBiYWNrIGZyb20gaW5kZXggdG8gbm9JbmRleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyh7IGlucHV0OiB7IGNoZWNrZWQsIG9uQ2hhbmdlIH0gfSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3BlbiA9IGNoZWNrZWQgPyBjaGVja2VkIDogZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxQYXBlciB2YXJpYW50PVwib3V0bGluZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuPXtvcGVufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVyPXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q29sbGFwc2libGVTd2l0Y2hCdXR0b25IZWFkZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hlY2tlZD17b3Blbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9ezxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuc2VvLnNpdGVtYXAucGFnZUluZGV4XCIgZGVmYXVsdE1lc3NhZ2U9XCJQYWdlIEluZGV4XCIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPERpdmlkZXIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggcGFkZGluZz17NH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5zaXRlbWFwLnByaW9yaXR5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJQcmlvcml0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cInByaW9yaXR5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM9e3ByaW9yaXR5T3B0aW9uc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3RGaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8uc2l0ZW1hcC5jaGFuZ2VGcmVxdWVuY3lcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIkNoYW5nZSBGcmVxdWVuY3lcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJjaGFuZ2VGcmVxdWVuY3lcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucz17Y2hhbmdlRnJlcXVlbmN5T3B0aW9uc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9QYXBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9SZWFjdEZpbmFsRm9ybUZpZWxkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBDYW5vbmljYWwgVGFnICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uY2Fub25pY2FsVGFnLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiQ2Fub25pY2FsIFRhZ1wiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZCBsYWJlbD17PEZvcm1hdHRlZE1lc3NhZ2Ugey4uLm1lc3NhZ2VzLnVybH0gLz59IG5hbWU9XCJjYW5vbmljYWxVcmxcIiBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fSBmdWxsV2lkdGggLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogQWx0ZXJuYXRlIEhyZWZsYW5nICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtYXJnaW5Ub3A9ezh9IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9ezxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5hbHRlcm5hdGl2ZUxpbmtzLnNlY3Rpb25UaXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiQWx0ZXJuYXRlIGxpbmtzXCIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkQXJyYXkgbmFtZT1cImFsdGVybmF0aXZlTGlua3NcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgZmllbGRzIH0pID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtmaWVsZHMubWFwKChsaW5rLCBpKSA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQga2V5PXtpfSBjb250YWluZXIgc3BhY2luZz17Mn0gc3g9e3sgbWFyZ2luQm90dG9tOiAyIH19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBzaXplPXszfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29tZXQuYmxvY2tzLnNlby5hbHRlcm5hdGl2ZUxpbmtzLmNvZGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U9XCJDb2RlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT17YCR7bGlua30uY29kZWB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cImVuLVVTXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgc2l6ZT1cImdyb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXs8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMudXJsfSAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPXtgJHtsaW5rfS51cmxgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWRhdGU9eyh1cmwpID0+IHZhbGlkYXRlVXJsKHVybCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIGFsaWduU2VsZj1cImZsZXgtc3RhcnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEZWxldGVCdXR0b25XcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJY29uQnV0dG9uIG9uQ2xpY2s9eygpID0+IGZpZWxkcy5yZW1vdmUoaSl9IHNpemU9XCJsYXJnZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RGVsZXRlIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9JY29uQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9EZWxldGVCdXR0b25XcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvbiB2YXJpYW50PVwicHJpbWFyeVwiIG9uQ2xpY2s9eygpID0+IGZpZWxkcy5wdXNoKHsgY29kZTogXCJcIiwgdXJsOiBcIlwiIH0pfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QWRkQnV0dG9uQ29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEFkZEJ1dHRvbkljb24gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMuYWRkfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9BZGRCdXR0b25Db250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9GaWVsZEFycmF5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Jsb2NrQWRtaW5Db21wb25lbnRQYXBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Jsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgPC9CbG9ja3NGaW5hbEZvcm0+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApO1xuICAgICAgICB9LFxuICAgIH07XG5cbiAgICBpZiAob3ZlcnJpZGUpIHtcbiAgICAgICAgcmV0dXJuIG92ZXJyaWRlKFNlb0Jsb2NrKTtcbiAgICB9XG5cbiAgICByZXR1cm4gU2VvQmxvY2s7XG59XG5cbi8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbnRlcmZhY2UgRmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25Qcm9wczxGaWVsZFZhbHVlID0gYW55LCBGaWVsZEVsZW1lbnQgZXh0ZW5kcyBIVE1MRWxlbWVudCA9IEhUTUxFbGVtZW50PlxuICAgIGV4dGVuZHMgRmllbGRQcm9wczxGaWVsZFZhbHVlLCBGaWVsZEVsZW1lbnQ+IHtcbiAgICBuYW1lOiBTZW9UYWc7XG4gICAgZ2VuZXJhdGVTZW9UYWc6ICh0YWc6IFNlb1RhZywgY3VycmVudFZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpID0+IFByb21pc2U8c3RyaW5nPjtcbn1cblxuLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmZ1bmN0aW9uIEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uPEZpZWxkVmFsdWUgPSBhbnksIEZpZWxkRWxlbWVudCBleHRlbmRzIEhUTUxFbGVtZW50ID0gSFRNTEVsZW1lbnQ+KHtcbiAgICBuYW1lLFxuICAgIGdlbmVyYXRlU2VvVGFnLFxuICAgIGVuZEFkb3JubWVudDogcGFzc2VkRW5kQWRvcm5tZW50LFxuICAgIC4uLnByb3BzXG59OiBGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvblByb3BzPEZpZWxkVmFsdWUsIEZpZWxkRWxlbWVudD4pIHtcbiAgICBjb25zdCBjb250ZW50R2VuZXJhdGlvbkNvbmZpZyA9IHVzZUNvbnRlbnRHZW5lcmF0aW9uQ29uZmlnKCk7XG4gICAgY29uc3QgZm9ybUFwaSA9IHVzZUZvcm0oKTtcblxuICAgIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICAgIGNvbnN0IGVuZEFkb3JubWVudCA9IGNvbnRlbnRHZW5lcmF0aW9uQ29uZmlnPy5zZW8gPyAoXG4gICAgICAgIDw+XG4gICAgICAgICAgICB7cGFzc2VkRW5kQWRvcm5tZW50fVxuICAgICAgICAgICAgPEljb25CdXR0b25cbiAgICAgICAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2FzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2VvVGFnID0gYXdhaXQgZ2VuZXJhdGVTZW9UYWcobmFtZSwgZm9ybUFwaS5nZXRGaWVsZFN0YXRlKG5hbWUpPy52YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICBmb3JtQXBpLmNoYW5nZShuYW1lLCBzZW9UYWcpO1xuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2xvYWRpbmcgPyA8TG9hZGluZyBiZWhhdmlvcj1cImZpbGxQYXJlbnRcIiBmb250U2l6ZT1cImxhcmdlXCIgLz4gOiA8QXJ0aWZpY2lhbEludGVsbGlnZW5jZSAvPn1cbiAgICAgICAgICAgIDwvSWNvbkJ1dHRvbj5cbiAgICAgICAgPC8+XG4gICAgKSA6IChcbiAgICAgICAgcGFzc2VkRW5kQWRvcm5tZW50XG4gICAgKTtcblxuICAgIHJldHVybiA8RmllbGQgbmFtZT17bmFtZX0gZW5kQWRvcm5tZW50PXtlbmRBZG9ybm1lbnR9IHsuLi5wcm9wc30gLz47XG59XG5cbmNvbnN0IEFkZEJ1dHRvbkNvbnRlbnQgPSBzdHlsZWQoXCJzcGFuXCIpYFxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDRweCAwO1xuYDtcblxuY29uc3QgQWRkQnV0dG9uSWNvbiA9IHN0eWxlZChBZGQpYFxuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG5gO1xuXG5jb25zdCBEZWxldGVCdXR0b25XcmFwcGVyID0gc3R5bGVkKFwiZGl2XCIpYFxuICAgIHBhZGRpbmctdG9wOiAyNHB4O1xuYDtcbiJdfQ== */",
452
454
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
453
455
  });
@@ -1,5 +1,5 @@
1
- import { type TableBlockData, type TableBlockInput } from "../blocks.generated";
2
- import { type RichTextBlock, type RichTextBlockState } from "./createRichTextBlock";
1
+ import type { TableBlockData, TableBlockInput } from "../blocks.generated";
2
+ import type { RichTextBlock, RichTextBlockState } from "./createRichTextBlock";
3
3
  import { type BlockInterface } from "./types";
4
4
  export type TableBlockFactoryOptions = {
5
5
  richText: RichTextBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"createTableBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/createTableBlock.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEhF,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAMpF,OAAO,EAAiB,KAAK,cAAc,EAA4B,MAAM,SAAS,CAAC;AAEvF,MAAM,MAAM,wBAAwB,GAAG;IACnC,QAAQ,EAAE,aAAa,CAAC;CAC3B,CAAC;AAEF,UAAU,wBAAwB;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,kBAAkB,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAkB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,wBAAwB,EAAE,CAAC;CAC1C;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACnC,IAAI,EAAE,kBAAkB,EAAE,CAAC;CAC9B;AAED,KAAK,UAAU,GAAG,cAAc,CAAC,cAAc,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC;AAEnF,eAAO,MAAM,gBAAgB,GAAI,6BAA6B,wBAAwB,EAAE,WAAW,CAAC,KAAK,EAAE,UAAU,KAAK,UAAU,KAAG,UAgItI,CAAC"}
1
+ {"version":3,"file":"createTableBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/createTableBlock.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3E,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAM/E,OAAO,EAAiB,KAAK,cAAc,EAA4B,MAAM,SAAS,CAAC;AAEvF,MAAM,MAAM,wBAAwB,GAAG;IACnC,QAAQ,EAAE,aAAa,CAAC;CAC3B,CAAC;AAEF,UAAU,wBAAwB;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,kBAAkB,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAkB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,wBAAwB,EAAE,CAAC;CAC1C;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACnC,IAAI,EAAE,kBAAkB,EAAE,CAAC;CAC9B;AAED,KAAK,UAAU,GAAG,cAAc,CAAC,cAAc,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC;AAEnF,eAAO,MAAM,gBAAgB,GAAI,6BAA6B,wBAAwB,EAAE,WAAW,CAAC,KAAK,EAAE,UAAU,KAAK,UAAU,KAAG,UAgItI,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { type MessageDescriptor } from "react-intl";
2
- import { type TextImageBlockData, type TextImageBlockInput } from "../blocks.generated";
3
- import { type RichTextBlock, type RichTextBlockState } from "./createRichTextBlock";
2
+ import type { TextImageBlockData, TextImageBlockInput } from "../blocks.generated";
3
+ import type { RichTextBlock, RichTextBlockState } from "./createRichTextBlock";
4
4
  import { type ImageBlockState } from "./PixelImageBlock";
5
5
  import { type BlockInterface } from "./types";
6
6
  interface State {
@@ -1 +1 @@
1
- {"version":3,"file":"createTextImageBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/createTextImageBlock.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEtE,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAIxF,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAKpF,OAAO,EAAE,KAAK,eAAe,EAAmB,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAE7D,UAAU,KAAK;IACX,IAAI,EAAE,kBAAkB,CAAC;IACzB,KAAK,EAAE,eAAe,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC;IAChC,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,4BAA4B;IACzC,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,IAAI,CAAC,EAAE,KAAK,CAAC,iBAAiB,GAAG,MAAM,CAAC,CAAC;CAC5C;AAED,QAAA,MAAM,oBAAoB,GACtB,uBAAyC,4BAA4B,EACrE,WAAW,CACP,KAAK,EAAE,cAAc,CAAC,kBAAkB,EAAE,KAAK,EAAE,mBAAmB,CAAC,KACpE,cAAc,CAAC,kBAAkB,EAAE,KAAK,EAAE,mBAAmB,CAAC,KACpE,cAAc,CAAC,kBAAkB,EAAE,KAAK,EAAE,mBAAmB,CAoF/D,CAAC;AAEF,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
1
+ {"version":3,"file":"createTextImageBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/createTextImageBlock.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAInF,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAK/E,OAAO,EAAE,KAAK,eAAe,EAAmB,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAE7D,UAAU,KAAK;IACX,IAAI,EAAE,kBAAkB,CAAC;IACzB,KAAK,EAAE,eAAe,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC;IAChC,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,4BAA4B;IACzC,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,IAAI,CAAC,EAAE,KAAK,CAAC,iBAAiB,GAAG,MAAM,CAAC,CAAC;CAC5C;AAED,QAAA,MAAM,oBAAoB,GACtB,uBAAyC,4BAA4B,EACrE,WAAW,CACP,KAAK,EAAE,cAAc,CAAC,kBAAkB,EAAE,KAAK,EAAE,mBAAmB,CAAC,KACpE,cAAc,CAAC,kBAAkB,EAAE,KAAK,EAAE,mBAAmB,CAAC,KACpE,cAAc,CAAC,kBAAkB,EAAE,KAAK,EAAE,mBAAmB,CAoF/D,CAAC;AAEF,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
@@ -1,4 +1,4 @@
1
- import { type ReactNode } from "react";
1
+ import type { ReactNode } from "react";
2
2
  import { type MessageDescriptor } from "react-intl";
3
3
  import { type BlockInterface } from "./types";
4
4
  interface CreateTextLinkBlockOptions {
@@ -1 +1 @@
1
- {"version":3,"file":"createTextLinkBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/createTextLinkBlock.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAStE,OAAO,EAAiB,KAAK,cAAc,EAAmB,MAAM,SAAS,CAAC;AAE9E,UAAU,0BAA0B;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,CAAC,EAAE,KAAK,CAAC,iBAAiB,GAAG,MAAM,CAAC,CAAC;CAC5C;AAED,wBAAgB,mBAAmB,CAC/B,EAAE,IAAI,EAAE,SAAS,EAAE,IAAiB,EAAE,WAAqD,EAAE,IAAI,EAAE,EAAE,0BAA0B,EAC/H,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,cAAc,GACrD,cAAc,CAgEhB"}
1
+ {"version":3,"file":"createTextLinkBlock.d.ts","sourceRoot":"","sources":["../../src/blocks/createTextLinkBlock.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAStE,OAAO,EAAiB,KAAK,cAAc,EAAmB,MAAM,SAAS,CAAC;AAE9E,UAAU,0BAA0B;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,CAAC,EAAE,KAAK,CAAC,iBAAiB,GAAG,MAAM,CAAC,CAAC;CAC5C;AAED,wBAAgB,mBAAmB,CAC/B,EAAE,IAAI,EAAE,SAAS,EAAE,IAAiB,EAAE,WAAqD,EAAE,IAAI,EAAE,EAAE,0BAA0B,EAC/H,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,cAAc,GACrD,cAAc,CAoEhB"}