@comet/cms-admin 9.0.0-beta.3 → 9.0.0-beta.5

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 (240) hide show
  1. package/lib/blocks/PixelImageBlock.d.ts.map +1 -1
  2. package/lib/blocks/PixelImageBlock.fragment.d.ts +2 -0
  3. package/lib/blocks/PixelImageBlock.fragment.d.ts.map +1 -0
  4. package/lib/blocks/PixelImageBlock.fragment.generated.d.ts +20 -0
  5. package/lib/blocks/PixelImageBlock.fragment.generated.d.ts.map +1 -0
  6. package/lib/blocks/PixelImageBlock.fragment.generated.js +5 -0
  7. package/lib/blocks/PixelImageBlock.fragment.js +4 -0
  8. package/lib/blocks/PixelImageBlock.js +3 -2
  9. package/lib/blocks/__stories__/BlockInFinalForm.stories.js +53 -0
  10. package/lib/blocks/__stories__/RichTextBlock.stories.js +53 -0
  11. package/lib/blocks/createLinkBlock.d.ts.map +1 -1
  12. package/lib/blocks/createLinkBlock.js +50 -1
  13. package/lib/blocks/createRichTextBlock.d.ts.map +1 -1
  14. package/lib/blocks/createRichTextBlock.js +56 -20
  15. package/lib/blocks/createSeoBlock.d.ts.map +1 -1
  16. package/lib/blocks/createSeoBlock.js +6 -4
  17. package/lib/blocks/createTextLinkBlock.d.ts.map +1 -1
  18. package/lib/blocks/createTextLinkBlock.js +36 -1
  19. package/lib/blocks/factories/createBlocksBlock.d.ts.map +1 -1
  20. package/lib/blocks/factories/createBlocksBlock.js +70 -13
  21. package/lib/blocks/factories/createColumnsBlock.d.ts.map +1 -1
  22. package/lib/blocks/factories/createColumnsBlock.js +56 -6
  23. package/lib/blocks/factories/createListBlock.d.ts.map +1 -1
  24. package/lib/blocks/factories/createListBlock.js +56 -6
  25. package/lib/blocks/factories/createOneOfBlock.d.ts.map +1 -1
  26. package/lib/blocks/factories/createOneOfBlock.js +62 -5
  27. package/lib/blocks/factories/createOptionalBlock.d.ts.map +1 -1
  28. package/lib/blocks/factories/createOptionalBlock.js +38 -1
  29. package/lib/blocks/helpers/__stories__/createCompositeBlockSelectField.stories.js +106 -0
  30. package/lib/blocks/helpers/composeBlocks/composeBlocks.d.ts.map +1 -1
  31. package/lib/blocks/helpers/composeBlocks/composeBlocks.js +52 -16
  32. package/lib/blocks/helpers/composeBlocks/createCompositeBlockField.d.ts +2 -1
  33. package/lib/blocks/helpers/composeBlocks/createCompositeBlockField.d.ts.map +1 -1
  34. package/lib/blocks/helpers/composeBlocks/createCompositeBlockField.js +4 -2
  35. package/lib/blocks/helpers/composeBlocks/createSettingsBlock.d.ts +2 -1
  36. package/lib/blocks/helpers/composeBlocks/createSettingsBlock.d.ts.map +1 -1
  37. package/lib/blocks/helpers/composeBlocks/createSettingsBlock.js +5 -1
  38. package/lib/blocks/helpers/createBlockSkeleton.js +15 -1
  39. package/lib/blocks/helpers/createCompositeBlockTextField.d.ts +2 -1
  40. package/lib/blocks/helpers/createCompositeBlockTextField.d.ts.map +1 -1
  41. package/lib/blocks/helpers/createCompositeBlockTextField.js +20 -2
  42. package/lib/blocks/table/TableBlockGrid.d.ts.map +1 -1
  43. package/lib/blocks/table/TableBlockGrid.js +3 -1
  44. package/lib/blocks/table/utils/column.d.ts +16 -21
  45. package/lib/blocks/table/utils/column.d.ts.map +1 -1
  46. package/lib/blocks/table/utils/column.js +0 -11
  47. package/lib/blocks/table/utils/getClipboardValueForSchema.d.ts +1 -1
  48. package/lib/blocks/table/utils/getClipboardValueForSchema.d.ts.map +1 -1
  49. package/lib/blocks/table/utils/row.d.ts +3 -18
  50. package/lib/blocks/table/utils/row.d.ts.map +1 -1
  51. package/lib/blocks/table/utils/row.js +1 -1
  52. package/lib/blocks/table/utils/rteSchema.d.ts +1 -5
  53. package/lib/blocks/table/utils/rteSchema.d.ts.map +1 -1
  54. package/lib/blocks/tipTap/BlockStyleContext.d.ts +3 -0
  55. package/lib/blocks/tipTap/BlockStyleContext.d.ts.map +1 -0
  56. package/lib/blocks/tipTap/BlockStyleContext.js +2 -0
  57. package/lib/blocks/tipTap/InlineStyleContext.d.ts +3 -0
  58. package/lib/blocks/tipTap/InlineStyleContext.d.ts.map +1 -0
  59. package/lib/blocks/tipTap/InlineStyleContext.js +2 -0
  60. package/lib/blocks/tipTap/TipTapLinkDialog.d.ts +10 -0
  61. package/lib/blocks/tipTap/TipTapLinkDialog.d.ts.map +1 -0
  62. package/lib/blocks/tipTap/TipTapLinkDialog.js +105 -0
  63. package/lib/blocks/tipTap/TipTapToolbar.d.ts +13 -0
  64. package/lib/blocks/tipTap/TipTapToolbar.d.ts.map +1 -0
  65. package/lib/blocks/tipTap/TipTapToolbar.js +666 -0
  66. package/lib/blocks/tipTap/__stories__/TipTapRichTextBlock.stories.js +1841 -0
  67. package/lib/blocks/tipTap/createTipTapRichTextBlock.d.ts +61 -0
  68. package/lib/blocks/tipTap/createTipTapRichTextBlock.d.ts.map +1 -0
  69. package/lib/blocks/tipTap/createTipTapRichTextBlock.js +424 -0
  70. package/lib/blocks/tipTap/extensions/BlockStyleHeading.d.ts +2 -0
  71. package/lib/blocks/tipTap/extensions/BlockStyleHeading.d.ts.map +1 -0
  72. package/lib/blocks/tipTap/extensions/BlockStyleHeading.js +57 -0
  73. package/lib/blocks/tipTap/extensions/BlockStyleParagraph.d.ts +2 -0
  74. package/lib/blocks/tipTap/extensions/BlockStyleParagraph.d.ts.map +1 -0
  75. package/lib/blocks/tipTap/extensions/BlockStyleParagraph.js +56 -0
  76. package/lib/blocks/tipTap/extensions/CmsLink.d.ts +13 -0
  77. package/lib/blocks/tipTap/extensions/CmsLink.d.ts.map +1 -0
  78. package/lib/blocks/tipTap/extensions/CmsLink.js +42 -0
  79. package/lib/blocks/tipTap/extensions/InlineStyleMark.d.ts +13 -0
  80. package/lib/blocks/tipTap/extensions/InlineStyleMark.d.ts.map +1 -0
  81. package/lib/blocks/tipTap/extensions/InlineStyleMark.js +71 -0
  82. package/lib/blocks/tipTap/extensions/NonBreakingSpace.d.ts +10 -0
  83. package/lib/blocks/tipTap/extensions/NonBreakingSpace.d.ts.map +1 -0
  84. package/lib/blocks/tipTap/extensions/NonBreakingSpace.js +57 -0
  85. package/lib/blocks/tipTap/extensions/Placeholder.d.ts +10 -0
  86. package/lib/blocks/tipTap/extensions/Placeholder.d.ts.map +1 -0
  87. package/lib/blocks/tipTap/extensions/Placeholder.js +78 -0
  88. package/lib/blocks/tipTap/extensions/SoftHyphen.d.ts +10 -0
  89. package/lib/blocks/tipTap/extensions/SoftHyphen.d.ts.map +1 -0
  90. package/lib/blocks/tipTap/extensions/SoftHyphen.js +51 -0
  91. package/lib/blocks/tipTap/listLevelMaxHelpers.d.ts +6 -0
  92. package/lib/blocks/tipTap/listLevelMaxHelpers.d.ts.map +1 -0
  93. package/lib/blocks/tipTap/listLevelMaxHelpers.js +108 -0
  94. package/lib/blocks/types.d.ts +7 -0
  95. package/lib/blocks/types.d.ts.map +1 -1
  96. package/lib/builds/PublisherPage.js +2 -2
  97. package/lib/builds/StartBuildsDialog.d.ts.map +1 -1
  98. package/lib/builds/StartBuildsDialog.js +1 -1
  99. package/lib/common/__stories__/MasterMenuInMasterLayout.stories.js +87 -0
  100. package/lib/config/CometConfigContext.d.ts +8 -1
  101. package/lib/config/CometConfigContext.d.ts.map +1 -1
  102. package/lib/config/CometConfigContext.js +9 -5
  103. package/lib/contentScope/__stories__/ContentScopeProvider.stories.js +85 -0
  104. package/lib/contentScope/__stories__/ContentScopeSelect.stories.js +655 -0
  105. package/lib/contentScope/noContentScopeFallback/__stories__/NoContentScopeFallback.stories.js +7 -0
  106. package/lib/cronJobs/CronJobsGrid.js +1 -1
  107. package/lib/cronJobs/JobsGrid.js +1 -1
  108. package/lib/dam/DamTable.d.ts +5 -1
  109. package/lib/dam/DamTable.d.ts.map +1 -1
  110. package/lib/dam/DamTable.js +5 -1
  111. package/lib/dam/DataGrid/FolderDataGrid.d.ts +1 -1
  112. package/lib/dam/DataGrid/FolderDataGrid.d.ts.map +1 -1
  113. package/lib/dam/DataGrid/FolderDataGrid.js +58 -47
  114. package/lib/dam/DataGrid/selection/DamSelectionContext.d.ts +7 -4
  115. package/lib/dam/DataGrid/selection/DamSelectionContext.d.ts.map +1 -1
  116. package/lib/dam/DataGrid/selection/DamSelectionContext.js +11 -3
  117. package/lib/dam/FileForm/EditFile.d.ts.map +1 -1
  118. package/lib/dam/FileForm/EditFile.js +5 -2
  119. package/lib/dam/mediaAlternatives/MediaAlternativesGrid.d.ts.map +1 -1
  120. package/lib/dam/mediaAlternatives/MediaAlternativesGrid.js +1 -1
  121. package/lib/dashboard/widgets/LatestBuildsDashboardWidget.js +1 -1
  122. package/lib/dashboard/widgets/LatestContentUpdatesDashboardWidget.d.ts +1 -1
  123. package/lib/dashboard/widgets/LatestContentUpdatesDashboardWidget.d.ts.map +1 -1
  124. package/lib/dashboard/widgets/LatestContentUpdatesDashboardWidget.js +1 -1
  125. package/lib/dashboard/widgets/__stories__/DashboardWidgetRoot.stories.js +82 -0
  126. package/lib/dataGrid/DataGrid.d.ts +3 -0
  127. package/lib/dataGrid/DataGrid.d.ts.map +1 -0
  128. package/lib/dataGrid/DataGrid.js +19 -0
  129. package/lib/dependencies/DependenciesList.d.ts.map +1 -1
  130. package/lib/dependencies/DependenciesList.js +1 -1
  131. package/lib/dependencies/DependentsList.d.ts.map +1 -1
  132. package/lib/dependencies/DependentsList.js +1 -1
  133. package/lib/form/file/FileField.d.ts +15 -12
  134. package/lib/form/file/FileField.d.ts.map +1 -1
  135. package/lib/form/file/FileField.gql.d.ts +2 -0
  136. package/lib/form/file/FileField.gql.d.ts.map +1 -1
  137. package/lib/form/file/FileField.gql.generated.d.ts +40 -0
  138. package/lib/form/file/FileField.gql.generated.d.ts.map +1 -1
  139. package/lib/form/file/FileField.gql.generated.js +2 -1
  140. package/lib/form/file/FileField.gql.js +6 -3
  141. package/lib/form/file/FileField.js +170 -86
  142. package/lib/form/file/FileFieldMenu.d.ts +17 -0
  143. package/lib/form/file/FileFieldMenu.d.ts.map +1 -0
  144. package/lib/form/file/FileFieldMenu.js +91 -0
  145. package/lib/form/file/FileFieldRow.d.ts +12 -0
  146. package/lib/form/file/FileFieldRow.d.ts.map +1 -0
  147. package/lib/form/file/FileFieldRow.js +96 -0
  148. package/lib/form/file/__stories__/FileUploadField.stories.js +351 -0
  149. package/lib/form/file/chooseFile/BaseChooseDamFileDialog.d.ts +20 -0
  150. package/lib/form/file/chooseFile/BaseChooseDamFileDialog.d.ts.map +1 -0
  151. package/lib/form/file/chooseFile/BaseChooseDamFileDialog.js +106 -0
  152. package/lib/form/file/chooseFile/ChooseDamFileDialog.d.ts.map +1 -1
  153. package/lib/form/file/chooseFile/ChooseDamFileDialog.js +34 -89
  154. package/lib/form/file/chooseFile/ChooseDamFilesDialog.d.ts +9 -0
  155. package/lib/form/file/chooseFile/ChooseDamFilesDialog.d.ts.map +1 -0
  156. package/lib/form/file/chooseFile/ChooseDamFilesDialog.js +117 -0
  157. package/lib/graphql.generated.d.ts +19 -1
  158. package/lib/graphql.generated.d.ts.map +1 -1
  159. package/lib/index.d.ts +10 -1
  160. package/lib/index.d.ts.map +1 -1
  161. package/lib/index.js +7 -0
  162. package/lib/pages/createEditPageNode.d.ts.map +1 -1
  163. package/lib/pages/createEditPageNode.js +1 -12
  164. package/lib/pages/createUsePage.d.ts +1 -0
  165. package/lib/pages/createUsePage.d.ts.map +1 -1
  166. package/lib/pages/createUsePage.js +135 -6
  167. package/lib/pages/pageTree/PageActions.d.ts.map +1 -1
  168. package/lib/pages/pageTree/PageActions.js +21 -3
  169. package/lib/pages/pageTree/findAvailableSlug.d.ts +11 -0
  170. package/lib/pages/pageTree/findAvailableSlug.d.ts.map +1 -0
  171. package/lib/pages/pageTree/findAvailableSlug.generated.d.ts +16 -0
  172. package/lib/pages/pageTree/findAvailableSlug.generated.d.ts.map +1 -0
  173. package/lib/pages/pageTree/findAvailableSlug.generated.js +5 -0
  174. package/lib/pages/pageTree/findAvailableSlug.js +62 -0
  175. package/lib/pages/pageTree/transformToSlug.d.ts +2 -0
  176. package/lib/pages/pageTree/transformToSlug.d.ts.map +1 -0
  177. package/lib/pages/pageTree/transformToSlug.js +12 -0
  178. package/lib/pages/pageTree/useCopyPastePages/sendPages.d.ts.map +1 -1
  179. package/lib/pages/pageTree/useCopyPastePages/sendPages.generated.d.ts +0 -10
  180. package/lib/pages/pageTree/useCopyPastePages/sendPages.generated.d.ts.map +1 -1
  181. package/lib/pages/pageTree/useCopyPastePages/sendPages.generated.js +0 -1
  182. package/lib/pages/pageTree/useCopyPastePages/sendPages.js +19 -40
  183. package/lib/pages/pageTree/useCopyPastePages.d.ts.map +1 -1
  184. package/lib/pages/pageTree/useCopyPastePages.js +1 -1
  185. package/lib/pages/pageTree/{useCopyPastePages/ProgressDialog.d.ts → useProgressDialog.d.ts} +1 -1
  186. package/lib/pages/pageTree/useProgressDialog.d.ts.map +1 -0
  187. package/lib/pages/pageTree/useTranslatePagesAction.d.ts +16 -0
  188. package/lib/pages/pageTree/useTranslatePagesAction.d.ts.map +1 -0
  189. package/lib/pages/pageTree/useTranslatePagesAction.generated.d.ts +20 -0
  190. package/lib/pages/pageTree/useTranslatePagesAction.generated.d.ts.map +1 -0
  191. package/lib/pages/pageTree/useTranslatePagesAction.generated.js +5 -0
  192. package/lib/pages/pageTree/useTranslatePagesAction.js +339 -0
  193. package/lib/pages/pagesPage/PagesPageActionToolbar.d.ts.map +1 -1
  194. package/lib/pages/pagesPage/PagesPageActionToolbar.js +29 -2
  195. package/lib/pages/pagesPage/PagesPageActionToolbar.sc.d.ts +2 -2
  196. package/lib/redirects/RedirectsGrid.d.ts +1 -1
  197. package/lib/redirects/RedirectsGrid.d.ts.map +1 -1
  198. package/lib/redirects/RedirectsGrid.gql.d.ts +1 -0
  199. package/lib/redirects/RedirectsGrid.gql.d.ts.map +1 -1
  200. package/lib/redirects/RedirectsGrid.gql.generated.d.ts +8 -0
  201. package/lib/redirects/RedirectsGrid.gql.generated.d.ts.map +1 -1
  202. package/lib/redirects/RedirectsGrid.gql.generated.js +2 -1
  203. package/lib/redirects/RedirectsGrid.gql.js +3 -2
  204. package/lib/redirects/RedirectsGrid.js +107 -15
  205. package/lib/translation/AzureAiTranslatorProvider.d.ts +1 -1
  206. package/lib/translation/AzureAiTranslatorProvider.d.ts.map +1 -1
  207. package/lib/translation/AzureAiTranslatorProvider.generated.d.ts +8 -0
  208. package/lib/translation/AzureAiTranslatorProvider.generated.d.ts.map +1 -1
  209. package/lib/translation/AzureAiTranslatorProvider.generated.js +2 -1
  210. package/lib/translation/AzureAiTranslatorProvider.js +31 -2
  211. package/lib/translation/TranslatableInterface.d.ts +4 -0
  212. package/lib/translation/TranslatableInterface.d.ts.map +1 -0
  213. package/lib/translation/TranslatableInterface.js +1 -0
  214. package/lib/translation/TranslateContentMenuItem.d.ts +7 -0
  215. package/lib/translation/TranslateContentMenuItem.d.ts.map +1 -0
  216. package/lib/translation/TranslateContentMenuItem.js +99 -0
  217. package/lib/translation/createDocumentTranslationMethods.d.ts +4 -0
  218. package/lib/translation/createDocumentTranslationMethods.d.ts.map +1 -0
  219. package/lib/translation/createDocumentTranslationMethods.js +62 -0
  220. package/lib/userPermissions/UserGrid.d.ts +1 -1
  221. package/lib/userPermissions/UserGrid.d.ts.map +1 -1
  222. package/lib/userPermissions/UserGrid.js +2 -2
  223. package/lib/userPermissions/user/permissions/ContentScopeGrid.d.ts.map +1 -1
  224. package/lib/userPermissions/user/permissions/ContentScopeGrid.js +1 -1
  225. package/lib/userPermissions/user/permissions/OverrideContentScopesDialog.js +1 -1
  226. package/lib/userPermissions/user/permissions/PermissionGrid.d.ts.map +1 -1
  227. package/lib/userPermissions/user/permissions/PermissionGrid.js +1 -1
  228. package/lib/userPermissions/user/permissions/selectScopesDialogContent/SelectScopesDialogContent.d.ts.map +1 -1
  229. package/lib/userPermissions/user/permissions/selectScopesDialogContent/SelectScopesDialogContent.js +1 -1
  230. package/lib/validation/validateJson.d.ts +2 -0
  231. package/lib/validation/validateJson.d.ts.map +1 -0
  232. package/lib/validation/validateJson.js +15 -0
  233. package/lib/warnings/LatestWarningsDashboardWidget.js +1 -1
  234. package/lib/warnings/WarningsGrid.d.ts.map +1 -1
  235. package/lib/warnings/WarningsGrid.js +1 -1
  236. package/package.json +36 -26
  237. package/lib/dashboard/__stories__/DateTime.stories.d.ts +0 -7
  238. package/lib/dashboard/__stories__/DateTime.stories.d.ts.map +0 -1
  239. package/lib/pages/pageTree/useCopyPastePages/ProgressDialog.d.ts.map +0 -1
  240. /package/lib/pages/pageTree/{useCopyPastePages/ProgressDialog.js → useProgressDialog.js} +0 -0
@@ -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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9ja3MvY3JlYXRlU2VvQmxvY2sudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1YdUMiLCJmaWxlIjoiLi4vLi4vc3JjL2Jsb2Nrcy9jcmVhdGVTZW9CbG9jay50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCwgdHlwZSBGaWVsZFByb3BzLCBGaW5hbEZvcm1JbnB1dCwgTG9hZGluZywgbWVzc2FnZXMsIFNlbGVjdEZpZWxkIH0gZnJvbSBcIkBjb21ldC9hZG1pblwiO1xuaW1wb3J0IHsgQWRkLCBBcnRpZmljaWFsSW50ZWxsaWdlbmNlLCBEZWxldGUgfSBmcm9tIFwiQGNvbWV0L2FkbWluLWljb25zXCI7XG5pbXBvcnQgeyBCb3gsIERpdmlkZXIsIEdyaWQsIEljb25CdXR0b24sIFBhcGVyLCBUeXBvZ3JhcGh5IH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWxcIjtcbmltcG9ydCB7IHN0eWxlZCB9IGZyb20gXCJAbXVpL21hdGVyaWFsL3N0eWxlc1wiO1xuaW1wb3J0IGFycmF5TXV0YXRvcnMgZnJvbSBcImZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRmllbGQgYXMgUmVhY3RGaW5hbEZvcm1GaWVsZCwgdXNlRm9ybSB9IGZyb20gXCJyZWFjdC1maW5hbC1mb3JtXCI7XG5pbXBvcnQgeyBGaWVsZEFycmF5IH0gZnJvbSBcInJlYWN0LWZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyBGb3JtYXR0ZWRNZXNzYWdlLCB1c2VJbnRsIH0gZnJvbSBcInJlYWN0LWludGxcIjtcblxuaW1wb3J0IHR5cGUgeyBTZW9CbG9ja0RhdGEsIFNlb0Jsb2NrSW5wdXQgfSBmcm9tIFwiLi4vYmxvY2tzLmdlbmVyYXRlZFwiO1xuaW1wb3J0IHsgdXNlQ29udGVudEdlbmVyYXRpb25Db25maWcgfSBmcm9tIFwiLi4vZG9jdW1lbnRzL0NvbnRlbnRHZW5lcmF0aW9uQ29uZmlnQ29udGV4dFwiO1xuaW1wb3J0IHsgdmFsaWRhdGVVcmwgfSBmcm9tIFwiLi4vdmFsaWRhdGlvbi92YWxpZGF0ZVVybFwiO1xuaW1wb3J0IHsgQmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvbiB9IGZyb20gXCIuL2NvbW1vbi9CbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uXCI7XG5pbXBvcnQgeyBCbG9ja0FkbWluQ29tcG9uZW50UGFwZXIgfSBmcm9tIFwiLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyXCI7XG5pbXBvcnQgeyBCbG9ja0FkbWluQ29tcG9uZW50U2VjdGlvbkdyb3VwIH0gZnJvbSBcIi4vY29tbW9uL0Jsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXBcIjtcbmltcG9ydCB7IENvbGxhcHNpYmxlIH0gZnJvbSBcIi4vY29tbW9uL0NvbGxhcHNpYmxlXCI7XG5pbXBvcnQgeyBDb2xsYXBzaWJsZVN3aXRjaEJ1dHRvbkhlYWRlciB9IGZyb20gXCIuL2NvbW1vbi9Db2xsYXBzaWJsZVN3aXRjaEJ1dHRvbkhlYWRlclwiO1xuaW1wb3J0IHsgY3JlYXRlT3B0aW9uYWxCbG9jayB9IGZyb20gXCIuL2ZhY3Rvcmllcy9jcmVhdGVPcHRpb25hbEJsb2NrXCI7XG5pbXBvcnQgeyBCbG9ja3NGaW5hbEZvcm0gfSBmcm9tIFwiLi9mb3JtL0Jsb2Nrc0ZpbmFsRm9ybVwiO1xuaW1wb3J0IHsgY29tcG9zZUJsb2NrcyB9IGZyb20gXCIuL2hlbHBlcnMvY29tcG9zZUJsb2Nrcy9jb21wb3NlQmxvY2tzXCI7XG5pbXBvcnQgeyBjcmVhdGVCbG9ja1NrZWxldG9uIH0gZnJvbSBcIi4vaGVscGVycy9jcmVhdGVCbG9ja1NrZWxldG9uXCI7XG5pbXBvcnQgeyBkZWNvbXBvc2VVcGRhdGVTdGF0ZUFjdGlvbiB9IGZyb20gXCIuL2hlbHBlcnMvZGVjb21wb3NlVXBkYXRlU3RhdGVBY3Rpb25cIjtcbmltcG9ydCB7IHdpdGhBZGRpdGlvbmFsQmxvY2tBdHRyaWJ1dGVzIH0gZnJvbSBcIi4vaGVscGVycy93aXRoQWRkaXRpb25hbEJsb2NrQXR0cmlidXRlc1wiO1xuaW1wb3J0IHsgUGl4ZWxJbWFnZUJsb2NrIH0gZnJvbSBcIi4vUGl4ZWxJbWFnZUJsb2NrXCI7XG5pbXBvcnQgeyB0eXBlIFNlb1RhZywgdXNlU2VvVGFnR2VuZXJhdGlvbiB9IGZyb20gXCIuL3Nlby91c2VTZW9UYWdHZW5lcmF0aW9uXCI7XG5pbXBvcnQgdXNlU2l0ZW1hcENoYW5nZUZyZXF1ZW5jeUZvcm1PcHRpb25zIGZyb20gXCIuL3Nlby91c2VTaXRlbWFwQ2hhbmdlRnJlcXVlbmN5Rm9ybU9wdGlvbnNcIjtcbmltcG9ydCB1c2VTaXRlbWFwUGFnZVByaW9yaXR5Rm9ybU9wdGlvbnMgZnJvbSBcIi4vc2VvL3VzZVNpdGVtYXBQYWdlUHJpb3JpdHlGb3JtT3B0aW9uc1wiO1xuaW1wb3J0IHR5cGUgeyBCbG9ja0ludGVyZmFjZSwgQmxvY2tTdGF0ZSB9IGZyb20gXCIuL3R5cGVzXCI7XG5cbmludGVyZmFjZSBDcmVhdGVTZW9CbG9ja09wdGlvbnMge1xuICAgIGltYWdlPzogQmxvY2tJbnRlcmZhY2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTZW9CbG9jayhcbiAgICB7IGltYWdlID0gUGl4ZWxJbWFnZUJsb2NrIH06IENyZWF0ZVNlb0Jsb2NrT3B0aW9ucyA9IHt9LFxuICAgIG92ZXJyaWRlPzogKGJsb2NrOiBCbG9ja0ludGVyZmFjZSkgPT4gQmxvY2tJbnRlcmZhY2UsXG4pOiBCbG9ja0ludGVyZmFjZSB7XG4gICAgY29uc3QgT3B0aW9uYWxJbWFnZUJsb2NrID0gY3JlYXRlT3B0aW9uYWxCbG9jayhpbWFnZSwge1xuICAgICAgICB0aXRsZTogPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5zaXRlbWFwLm9wZW5HcmFwaEltYWdlXCIgZGVmYXVsdE1lc3NhZ2U9XCJPcGVuIEdyYXBoIEltYWdlXCIgLz4sXG4gICAgfSk7XG5cbiAgICBjb25zdCBjb21wb3NlZCA9IGNvbXBvc2VCbG9ja3MoeyBvcGVuR3JhcGhJbWFnZTogT3B0aW9uYWxJbWFnZUJsb2NrIH0pO1xuXG4gICAgY29uc3QgeyBhcGk6IGNvbXBvc2VkQXBpLCBibG9jazogY29tcG9zZWRCbG9jayB9ID0gY29tcG9zZWQ7XG5cbiAgICBjb25zdCBibG9jayA9IHdpdGhBZGRpdGlvbmFsQmxvY2tBdHRyaWJ1dGVzPE9taXQ8U2VvQmxvY2tEYXRhLCBcIm9wZW5HcmFwaEltYWdlXCI+Pih7XG4gICAgICAgIG5vSW5kZXg6IGZhbHNlLFxuICAgICAgICBwcmlvcml0eTogXCIwXzVcIixcbiAgICAgICAgY2hhbmdlRnJlcXVlbmN5OiBcIndlZWtseVwiLFxuICAgICAgICBhbHRlcm5hdGl2ZUxpbmtzOiBbXSxcbiAgICAgICAgaHRtbFRpdGxlOiB1bmRlZmluZWQsXG4gICAgICAgIG1ldGFEZXNjcmlwdGlvbjogdW5kZWZpbmVkLFxuICAgICAgICBvcGVuR3JhcGhUaXRsZTogdW5kZWZpbmVkLFxuICAgICAgICBvcGVuR3JhcGhEZXNjcmlwdGlvbjogdW5kZWZpbmVkLFxuICAgICAgICBzdHJ1Y3R1cmVkRGF0YTogdW5kZWZpbmVkLFxuICAgICAgICBjYW5vbmljYWxVcmw6IHVuZGVmaW5lZCxcbiAgICB9KShjb21wb3NlZEJsb2NrKTtcblxuICAgIHR5cGUgU3RhdGUgPSBCbG9ja1N0YXRlPHR5cGVvZiBibG9jaz47XG5cbiAgICBjb25zdCBTZW9CbG9jazogQmxvY2tJbnRlcmZhY2U8U2VvQmxvY2tEYXRhLCBTdGF0ZSwgU2VvQmxvY2tJbnB1dD4gPSB7XG4gICAgICAgIC4uLmNyZWF0ZUJsb2NrU2tlbGV0b24oKSxcbiAgICAgICAgLi4uYmxvY2ssXG4gICAgICAgIG5hbWU6IFwiU2VvXCIsXG5cbiAgICAgICAgZGlzcGxheU5hbWU6IDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlb1wiIGRlZmF1bHRNZXNzYWdlPVwiU0VPXCIgLz4sXG5cbiAgICAgICAgQWRtaW5Db21wb25lbnQ6ICh7IHN0YXRlLCB1cGRhdGVTdGF0ZSB9KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbnRsID0gdXNlSW50bCgpO1xuICAgICAgICAgICAgY29uc3QgeyBvcGVuR3JhcGhJbWFnZSB9ID0gY29tcG9zZWRBcGkuYWRtaW5Db21wb25lbnRzKHtcbiAgICAgICAgICAgICAgICBzdGF0ZSxcbiAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZTogZGVjb21wb3NlVXBkYXRlU3RhdGVBY3Rpb24odXBkYXRlU3RhdGUsIFtcIm9wZW5HcmFwaEltYWdlXCJdKSxcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBjb25zdCBwcmlvcml0eU9wdGlvbnMgPSB1c2VTaXRlbWFwUGFnZVByaW9yaXR5Rm9ybU9wdGlvbnMoKTtcbiAgICAgICAgICAgIGNvbnN0IGNoYW5nZUZyZXF1ZW5jeU9wdGlvbnMgPSB1c2VTaXRlbWFwQ2hhbmdlRnJlcXVlbmN5Rm9ybU9wdGlvbnMoKTtcblxuICAgICAgICAgICAgY29uc3QgZ2VuZXJhdGVTZW9UYWcgPSB1c2VTZW9UYWdHZW5lcmF0aW9uKCk7XG5cbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgPEJsb2Nrc0ZpbmFsRm9ybVxuICAgICAgICAgICAgICAgICAgICAgICAgb25TdWJtaXQ9eyh2YWx1ZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZSgocHJldlN0YXRlKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5wcmV2U3RhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh0bWxUaXRsZTogdmFsdWVzLmh0bWxUaXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0YURlc2NyaXB0aW9uOiB2YWx1ZXMubWV0YURlc2NyaXB0aW9uLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5HcmFwaFRpdGxlOiB2YWx1ZXMub3BlbkdyYXBoVGl0bGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5HcmFwaERlc2NyaXB0aW9uOiB2YWx1ZXMub3BlbkdyYXBoRGVzY3JpcHRpb24sXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0dXJlZERhdGE6IHZhbHVlcy5zdHJ1Y3R1cmVkRGF0YSxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub0luZGV4OiB2YWx1ZXMubm9JbmRleCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHk6IHZhbHVlcy5wcmlvcml0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlRnJlcXVlbmN5OiB2YWx1ZXMuY2hhbmdlRnJlcXVlbmN5LFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbm9uaWNhbFVybDogdmFsdWVzLmNhbm9uaWNhbFVybCxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRlcm5hdGl2ZUxpbmtzOiB2YWx1ZXMuYWx0ZXJuYXRpdmVMaW5rcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgbXV0YXRvcnM9e3sgLi4uYXJyYXlNdXRhdG9ycyB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgaW5pdGlhbFZhbHVlcz17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh0bWxUaXRsZTogc3RhdGUuaHRtbFRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFEZXNjcmlwdGlvbjogc3RhdGUubWV0YURlc2NyaXB0aW9uLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlbkdyYXBoVGl0bGU6IHN0YXRlLm9wZW5HcmFwaFRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5HcmFwaERlc2NyaXB0aW9uOiBzdGF0ZS5vcGVuR3JhcGhEZXNjcmlwdGlvbixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdHVyZWREYXRhOiBzdGF0ZS5zdHJ1Y3R1cmVkRGF0YSxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vSW5kZXg6IHN0YXRlLm5vSW5kZXgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHk6IHN0YXRlLnByaW9yaXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZUZyZXF1ZW5jeTogc3RhdGUuY2hhbmdlRnJlcXVlbmN5LFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2Fub25pY2FsVXJsOiBzdGF0ZS5jYW5vbmljYWxVcmwsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRlcm5hdGl2ZUxpbmtzOiBzdGF0ZS5hbHRlcm5hdGl2ZUxpbmtzLFxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIE1ldGEgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8ubWV0YS5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIk1ldGEgVGFnc1wiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5odG1sVGl0bGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIkhUTUwgVGl0bGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJodG1sVGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZVNlb1RhZz17Z2VuZXJhdGVTZW9UYWd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLm1ldGFEZXNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiTWV0YSBEZXNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cIm1ldGFEZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlU2VvVGFnPXtnZW5lcmF0ZVNlb1RhZ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlsaW5lXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3M9ezN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3NNYXg9ezV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIE9wZW4gR3JhcGggKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5vcGVuR3JhcGguc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJPcGVuIEdyYXBoXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5vcGVuR3JhcGhUaXRsZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiVGl0bGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJvcGVuR3JhcGhUaXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlU2VvVGFnPXtnZW5lcmF0ZVNlb1RhZ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLm9wZW5HcmFwaERlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJEZXNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cIm9wZW5HcmFwaERlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVTZW9UYWc9e2dlbmVyYXRlU2VvVGFnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdWx0aWxpbmU9e3RydWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3M9ezN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3NNYXg9ezV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge29wZW5HcmFwaEltYWdlfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBTdHJ1Y3R1cmVkIERhdGEgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5zdHJ1Y3R1cmVkRGF0YS5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIlN0cnVjdHVyZWQgRGF0YVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZCBuYW1lPVwic3RydWN0dXJlZERhdGFcIiBtdWx0aWxpbmU9e3RydWV9IHJvd3M9ezE1fSBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fSBmdWxsV2lkdGggLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogU2l0ZW1hcCAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLnNpdGVtYXAuc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJTaXRlbWFwXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UmVhY3RGaW5hbEZvcm1GaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwibm9JbmRleFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcnNlPXsodikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICF2OyAvLyBwYXJzZSBmcm9tIG5vSW5kZXggdG8gaW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0PXsodikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICF2OyAvLyBmb3JtYXQgYmFjayBmcm9tIGluZGV4IHRvIG5vSW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsoeyBpbnB1dDogeyBjaGVja2VkLCBvbkNoYW5nZSB9IH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG9wZW4gPSBjaGVja2VkID8gY2hlY2tlZCA6IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UGFwZXIgdmFyaWFudD1cIm91dGxpbmVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDb2xsYXBzaWJsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3Blbj17b3Blbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcj17XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoZWNrZWQ9e29wZW59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPXs8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LnNlby5zaXRlbWFwLnBhZ2VJbmRleFwiIGRlZmF1bHRNZXNzYWdlPVwiUGFnZSBJbmRleFwiIC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEaXZpZGVyIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmc9ezR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3RGaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8uc2l0ZW1hcC5wcmlvcml0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiUHJpb3JpdHlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJwcmlvcml0eVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zPXtwcmlvcml0eU9wdGlvbnN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLnNpdGVtYXAuY2hhbmdlRnJlcXVlbmN5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJDaGFuZ2UgRnJlcXVlbmN5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiY2hhbmdlRnJlcXVlbmN5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM9e2NoYW5nZUZyZXF1ZW5jeU9wdGlvbnN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvUGFwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvUmVhY3RGaW5hbEZvcm1GaWVsZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogQ2Fub25pY2FsIFRhZyAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLmNhbm9uaWNhbFRhZy5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIkNhbm9uaWNhbCBUYWdcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGQgbGFiZWw9ezxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy51cmx9IC8+fSBuYW1lPVwiY2Fub25pY2FsVXJsXCIgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH0gZnVsbFdpZHRoIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIEFsdGVybmF0ZSBIcmVmbGFuZyAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCbG9ja0FkbWluQ29tcG9uZW50U2VjdGlvbkdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPXs8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uYWx0ZXJuYXRpdmVMaW5rcy5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIkFsdGVybmF0ZSBsaW5rc1wiIC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJsb2NrQWRtaW5Db21wb25lbnRQYXBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZEFycmF5IG5hbWU9XCJhbHRlcm5hdGl2ZUxpbmtzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyh7IGZpZWxkcyB9KSA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ZmllbGRzLm1hcCgobGluaywgaSkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIGtleT17aX0gY29udGFpbmVyIHNwYWNpbmc9ezJ9IHN4PXt7IG1hcmdpbkJvdHRvbTogMiB9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgc2l6ZT17M30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uYWx0ZXJuYXRpdmVMaW5rcy5jb2RlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlPVwiQ29kZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9e2Ake2xpbmt9LmNvZGVgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJlbi1VU1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIHNpemU9XCJncm93XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17PEZvcm1hdHRlZE1lc3NhZ2Ugey4uLm1lc3NhZ2VzLnVybH0gLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT17YCR7bGlua30udXJsYH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkYXRlPXsodXJsKSA9PiB2YWxpZGF0ZVVybCh1cmwpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBhbGlnblNlbGY9XCJmbGV4LXN0YXJ0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RGVsZXRlQnV0dG9uV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SWNvbkJ1dHRvbiBvbkNsaWNrPXsoKSA9PiBmaWVsZHMucmVtb3ZlKGkpfSBzaXplPVwibGFyZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPERlbGV0ZSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvSWNvbkJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRGVsZXRlQnV0dG9uV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJsb2NrQWRtaW5Db21wb25lbnRCdXR0b24gdmFyaWFudD1cInByaW1hcnlcIiBvbkNsaWNrPXsoKSA9PiBmaWVsZHMucHVzaCh7IGNvZGU6IFwiXCIsIHVybDogXCJcIiB9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEFkZEJ1dHRvbkNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxBZGRCdXR0b25JY29uIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2Ugey4uLm1lc3NhZ2VzLmFkZH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQWRkQnV0dG9uQ29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRmllbGRBcnJheT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CbG9ja0FkbWluQ29tcG9uZW50UGFwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CbG9ja0FkbWluQ29tcG9uZW50U2VjdGlvbkdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgIDwvQmxvY2tzRmluYWxGb3JtPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICB9O1xuXG4gICAgaWYgKG92ZXJyaWRlKSB7XG4gICAgICAgIHJldHVybiBvdmVycmlkZShTZW9CbG9jayk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFNlb0Jsb2NrO1xufVxuXG4vKiBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW50ZXJmYWNlIEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uUHJvcHM8RmllbGRWYWx1ZSA9IGFueSwgRmllbGRFbGVtZW50IGV4dGVuZHMgSFRNTEVsZW1lbnQgPSBIVE1MRWxlbWVudD5cbiAgICBleHRlbmRzIEZpZWxkUHJvcHM8RmllbGRWYWx1ZSwgRmllbGRFbGVtZW50PiB7XG4gICAgbmFtZTogU2VvVGFnO1xuICAgIGdlbmVyYXRlU2VvVGFnOiAodGFnOiBTZW9UYWcsIGN1cnJlbnRWYWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSA9PiBQcm9taXNlPHN0cmluZz47XG59XG5cbi8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5mdW5jdGlvbiBGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvbjxGaWVsZFZhbHVlID0gYW55LCBGaWVsZEVsZW1lbnQgZXh0ZW5kcyBIVE1MRWxlbWVudCA9IEhUTUxFbGVtZW50Pih7XG4gICAgbmFtZSxcbiAgICBnZW5lcmF0ZVNlb1RhZyxcbiAgICBlbmRBZG9ybm1lbnQ6IHBhc3NlZEVuZEFkb3JubWVudCxcbiAgICAuLi5wcm9wc1xufTogRmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25Qcm9wczxGaWVsZFZhbHVlLCBGaWVsZEVsZW1lbnQ+KSB7XG4gICAgY29uc3QgY29udGVudEdlbmVyYXRpb25Db25maWcgPSB1c2VDb250ZW50R2VuZXJhdGlvbkNvbmZpZygpO1xuICAgIGNvbnN0IGZvcm1BcGkgPSB1c2VGb3JtKCk7XG5cbiAgICBjb25zdCBbbG9hZGluZywgc2V0TG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgICBjb25zdCBlbmRBZG9ybm1lbnQgPSBjb250ZW50R2VuZXJhdGlvbkNvbmZpZz8uc2VvID8gKFxuICAgICAgICA8PlxuICAgICAgICAgICAge3Bhc3NlZEVuZEFkb3JubWVudH1cbiAgICAgICAgICAgIDxJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgICAgICBvbkNsaWNrPXthc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHNldExvYWRpbmcodHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHNlb1RhZyA9IGF3YWl0IGdlbmVyYXRlU2VvVGFnKG5hbWUsIGZvcm1BcGkuZ2V0RmllbGRTdGF0ZShuYW1lKT8udmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICBzZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgZm9ybUFwaS5jaGFuZ2UobmFtZSwgc2VvVGFnKTtcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtsb2FkaW5nID8gPExvYWRpbmcgYmVoYXZpb3I9XCJmaWxsUGFyZW50XCIgZm9udFNpemU9XCJsYXJnZVwiIC8+IDogPEFydGlmaWNpYWxJbnRlbGxpZ2VuY2UgLz59XG4gICAgICAgICAgICA8L0ljb25CdXR0b24+XG4gICAgICAgIDwvPlxuICAgICkgOiAoXG4gICAgICAgIHBhc3NlZEVuZEFkb3JubWVudFxuICAgICk7XG5cbiAgICByZXR1cm4gPEZpZWxkIG5hbWU9e25hbWV9IGVuZEFkb3JubWVudD17ZW5kQWRvcm5tZW50fSB7Li4ucHJvcHN9IC8+O1xufVxuXG5jb25zdCBBZGRCdXR0b25Db250ZW50ID0gc3R5bGVkKFwic3BhblwiKWBcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiA0cHggMDtcbmA7XG5cbmNvbnN0IEFkZEJ1dHRvbkljb24gPSBzdHlsZWQoQWRkKWBcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uV3JhcHBlciA9IHN0eWxlZChcImRpdlwiKWBcbiAgICBwYWRkaW5nLXRvcDogMjRweDtcbmA7XG4iXX0= */",
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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9ja3MvY3JlYXRlU2VvQmxvY2sudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBYaUMiLCJmaWxlIjoiLi4vLi4vc3JjL2Jsb2Nrcy9jcmVhdGVTZW9CbG9jay50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCwgdHlwZSBGaWVsZFByb3BzLCBGaW5hbEZvcm1JbnB1dCwgTG9hZGluZywgbWVzc2FnZXMsIFNlbGVjdEZpZWxkIH0gZnJvbSBcIkBjb21ldC9hZG1pblwiO1xuaW1wb3J0IHsgQWRkLCBBcnRpZmljaWFsSW50ZWxsaWdlbmNlLCBEZWxldGUgfSBmcm9tIFwiQGNvbWV0L2FkbWluLWljb25zXCI7XG5pbXBvcnQgeyBCb3gsIERpdmlkZXIsIEdyaWQsIEljb25CdXR0b24sIFBhcGVyLCBUeXBvZ3JhcGh5IH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWxcIjtcbmltcG9ydCB7IHN0eWxlZCB9IGZyb20gXCJAbXVpL21hdGVyaWFsL3N0eWxlc1wiO1xuaW1wb3J0IGFycmF5TXV0YXRvcnMgZnJvbSBcImZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRmllbGQgYXMgUmVhY3RGaW5hbEZvcm1GaWVsZCwgdXNlRm9ybSB9IGZyb20gXCJyZWFjdC1maW5hbC1mb3JtXCI7XG5pbXBvcnQgeyBGaWVsZEFycmF5IH0gZnJvbSBcInJlYWN0LWZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyBGb3JtYXR0ZWRNZXNzYWdlLCB1c2VJbnRsIH0gZnJvbSBcInJlYWN0LWludGxcIjtcblxuaW1wb3J0IHR5cGUgeyBTZW9CbG9ja0RhdGEsIFNlb0Jsb2NrSW5wdXQgfSBmcm9tIFwiLi4vYmxvY2tzLmdlbmVyYXRlZFwiO1xuaW1wb3J0IHsgdXNlQ29udGVudEdlbmVyYXRpb25Db25maWcgfSBmcm9tIFwiLi4vZG9jdW1lbnRzL0NvbnRlbnRHZW5lcmF0aW9uQ29uZmlnQ29udGV4dFwiO1xuaW1wb3J0IHsgdmFsaWRhdGVVcmwgfSBmcm9tIFwiLi4vdmFsaWRhdGlvbi92YWxpZGF0ZVVybFwiO1xuaW1wb3J0IHsgQmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvbiB9IGZyb20gXCIuL2NvbW1vbi9CbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uXCI7XG5pbXBvcnQgeyBCbG9ja0FkbWluQ29tcG9uZW50UGFwZXIgfSBmcm9tIFwiLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyXCI7XG5pbXBvcnQgeyBCbG9ja0FkbWluQ29tcG9uZW50U2VjdGlvbkdyb3VwIH0gZnJvbSBcIi4vY29tbW9uL0Jsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXBcIjtcbmltcG9ydCB7IENvbGxhcHNpYmxlIH0gZnJvbSBcIi4vY29tbW9uL0NvbGxhcHNpYmxlXCI7XG5pbXBvcnQgeyBDb2xsYXBzaWJsZVN3aXRjaEJ1dHRvbkhlYWRlciB9IGZyb20gXCIuL2NvbW1vbi9Db2xsYXBzaWJsZVN3aXRjaEJ1dHRvbkhlYWRlclwiO1xuaW1wb3J0IHsgY3JlYXRlT3B0aW9uYWxCbG9jayB9IGZyb20gXCIuL2ZhY3Rvcmllcy9jcmVhdGVPcHRpb25hbEJsb2NrXCI7XG5pbXBvcnQgeyBCbG9ja3NGaW5hbEZvcm0gfSBmcm9tIFwiLi9mb3JtL0Jsb2Nrc0ZpbmFsRm9ybVwiO1xuaW1wb3J0IHsgY29tcG9zZUJsb2NrcyB9IGZyb20gXCIuL2hlbHBlcnMvY29tcG9zZUJsb2Nrcy9jb21wb3NlQmxvY2tzXCI7XG5pbXBvcnQgeyBjcmVhdGVCbG9ja1NrZWxldG9uIH0gZnJvbSBcIi4vaGVscGVycy9jcmVhdGVCbG9ja1NrZWxldG9uXCI7XG5pbXBvcnQgeyBkZWNvbXBvc2VVcGRhdGVTdGF0ZUFjdGlvbiB9IGZyb20gXCIuL2hlbHBlcnMvZGVjb21wb3NlVXBkYXRlU3RhdGVBY3Rpb25cIjtcbmltcG9ydCB7IHdpdGhBZGRpdGlvbmFsQmxvY2tBdHRyaWJ1dGVzIH0gZnJvbSBcIi4vaGVscGVycy93aXRoQWRkaXRpb25hbEJsb2NrQXR0cmlidXRlc1wiO1xuaW1wb3J0IHsgUGl4ZWxJbWFnZUJsb2NrIH0gZnJvbSBcIi4vUGl4ZWxJbWFnZUJsb2NrXCI7XG5pbXBvcnQgeyB0eXBlIFNlb1RhZywgdXNlU2VvVGFnR2VuZXJhdGlvbiB9IGZyb20gXCIuL3Nlby91c2VTZW9UYWdHZW5lcmF0aW9uXCI7XG5pbXBvcnQgdXNlU2l0ZW1hcENoYW5nZUZyZXF1ZW5jeUZvcm1PcHRpb25zIGZyb20gXCIuL3Nlby91c2VTaXRlbWFwQ2hhbmdlRnJlcXVlbmN5Rm9ybU9wdGlvbnNcIjtcbmltcG9ydCB1c2VTaXRlbWFwUGFnZVByaW9yaXR5Rm9ybU9wdGlvbnMgZnJvbSBcIi4vc2VvL3VzZVNpdGVtYXBQYWdlUHJpb3JpdHlGb3JtT3B0aW9uc1wiO1xuaW1wb3J0IHR5cGUgeyBCbG9ja0ludGVyZmFjZSwgQmxvY2tTdGF0ZSB9IGZyb20gXCIuL3R5cGVzXCI7XG5cbmludGVyZmFjZSBDcmVhdGVTZW9CbG9ja09wdGlvbnMge1xuICAgIGltYWdlPzogQmxvY2tJbnRlcmZhY2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTZW9CbG9jayhcbiAgICB7IGltYWdlID0gUGl4ZWxJbWFnZUJsb2NrIH06IENyZWF0ZVNlb0Jsb2NrT3B0aW9ucyA9IHt9LFxuICAgIG92ZXJyaWRlPzogKGJsb2NrOiBCbG9ja0ludGVyZmFjZSkgPT4gQmxvY2tJbnRlcmZhY2UsXG4pOiBCbG9ja0ludGVyZmFjZSB7XG4gICAgY29uc3QgT3B0aW9uYWxJbWFnZUJsb2NrID0gY3JlYXRlT3B0aW9uYWxCbG9jayhpbWFnZSwge1xuICAgICAgICB0aXRsZTogPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5zaXRlbWFwLm9wZW5HcmFwaEltYWdlXCIgZGVmYXVsdE1lc3NhZ2U9XCJPcGVuIEdyYXBoIEltYWdlXCIgLz4sXG4gICAgfSk7XG5cbiAgICBjb25zdCBjb21wb3NlZCA9IGNvbXBvc2VCbG9ja3MoeyBvcGVuR3JhcGhJbWFnZTogT3B0aW9uYWxJbWFnZUJsb2NrIH0pO1xuXG4gICAgY29uc3QgeyBhcGk6IGNvbXBvc2VkQXBpLCBibG9jazogY29tcG9zZWRCbG9jayB9ID0gY29tcG9zZWQ7XG5cbiAgICBjb25zdCBibG9jayA9IHdpdGhBZGRpdGlvbmFsQmxvY2tBdHRyaWJ1dGVzPE9taXQ8U2VvQmxvY2tEYXRhLCBcIm9wZW5HcmFwaEltYWdlXCI+Pih7XG4gICAgICAgIG5vSW5kZXg6IGZhbHNlLFxuICAgICAgICBwcmlvcml0eTogXCIwXzVcIixcbiAgICAgICAgY2hhbmdlRnJlcXVlbmN5OiBcIndlZWtseVwiLFxuICAgICAgICBhbHRlcm5hdGl2ZUxpbmtzOiBbXSxcbiAgICAgICAgaHRtbFRpdGxlOiB1bmRlZmluZWQsXG4gICAgICAgIG1ldGFEZXNjcmlwdGlvbjogdW5kZWZpbmVkLFxuICAgICAgICBvcGVuR3JhcGhUaXRsZTogdW5kZWZpbmVkLFxuICAgICAgICBvcGVuR3JhcGhEZXNjcmlwdGlvbjogdW5kZWZpbmVkLFxuICAgICAgICBzdHJ1Y3R1cmVkRGF0YTogdW5kZWZpbmVkLFxuICAgICAgICBjYW5vbmljYWxVcmw6IHVuZGVmaW5lZCxcbiAgICB9KShjb21wb3NlZEJsb2NrKTtcblxuICAgIHR5cGUgU3RhdGUgPSBCbG9ja1N0YXRlPHR5cGVvZiBibG9jaz47XG5cbiAgICBjb25zdCBTZW9CbG9jazogQmxvY2tJbnRlcmZhY2U8U2VvQmxvY2tEYXRhLCBTdGF0ZSwgU2VvQmxvY2tJbnB1dD4gPSB7XG4gICAgICAgIC4uLmNyZWF0ZUJsb2NrU2tlbGV0b24oKSxcbiAgICAgICAgLi4uYmxvY2ssXG4gICAgICAgIG5hbWU6IFwiU2VvXCIsXG5cbiAgICAgICAgZGlzcGxheU5hbWU6IDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlb1wiIGRlZmF1bHRNZXNzYWdlPVwiU0VPXCIgLz4sXG5cbiAgICAgICAgQWRtaW5Db21wb25lbnQ6ICh7IHN0YXRlLCB1cGRhdGVTdGF0ZSB9KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbnRsID0gdXNlSW50bCgpO1xuICAgICAgICAgICAgY29uc3QgeyBvcGVuR3JhcGhJbWFnZSB9ID0gY29tcG9zZWRBcGkuYWRtaW5Db21wb25lbnRzKHtcbiAgICAgICAgICAgICAgICBzdGF0ZSxcbiAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZTogZGVjb21wb3NlVXBkYXRlU3RhdGVBY3Rpb24odXBkYXRlU3RhdGUsIFtcIm9wZW5HcmFwaEltYWdlXCJdKSxcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBjb25zdCBwcmlvcml0eU9wdGlvbnMgPSB1c2VTaXRlbWFwUGFnZVByaW9yaXR5Rm9ybU9wdGlvbnMoKTtcbiAgICAgICAgICAgIGNvbnN0IGNoYW5nZUZyZXF1ZW5jeU9wdGlvbnMgPSB1c2VTaXRlbWFwQ2hhbmdlRnJlcXVlbmN5Rm9ybU9wdGlvbnMoKTtcblxuICAgICAgICAgICAgY29uc3QgZ2VuZXJhdGVTZW9UYWcgPSB1c2VTZW9UYWdHZW5lcmF0aW9uKCk7XG5cbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgPEJsb2Nrc0ZpbmFsRm9ybVxuICAgICAgICAgICAgICAgICAgICAgICAgb25TdWJtaXQ9eyh2YWx1ZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZSgocHJldlN0YXRlKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5wcmV2U3RhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh0bWxUaXRsZTogdmFsdWVzLmh0bWxUaXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0YURlc2NyaXB0aW9uOiB2YWx1ZXMubWV0YURlc2NyaXB0aW9uLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5HcmFwaFRpdGxlOiB2YWx1ZXMub3BlbkdyYXBoVGl0bGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5HcmFwaERlc2NyaXB0aW9uOiB2YWx1ZXMub3BlbkdyYXBoRGVzY3JpcHRpb24sXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0dXJlZERhdGE6IHZhbHVlcy5zdHJ1Y3R1cmVkRGF0YSxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub0luZGV4OiB2YWx1ZXMubm9JbmRleCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHk6IHZhbHVlcy5wcmlvcml0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlRnJlcXVlbmN5OiB2YWx1ZXMuY2hhbmdlRnJlcXVlbmN5LFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbm9uaWNhbFVybDogdmFsdWVzLmNhbm9uaWNhbFVybCxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRlcm5hdGl2ZUxpbmtzOiB2YWx1ZXMuYWx0ZXJuYXRpdmVMaW5rcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgbXV0YXRvcnM9e3sgLi4uYXJyYXlNdXRhdG9ycyB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgaW5pdGlhbFZhbHVlcz17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh0bWxUaXRsZTogc3RhdGUuaHRtbFRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFEZXNjcmlwdGlvbjogc3RhdGUubWV0YURlc2NyaXB0aW9uLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlbkdyYXBoVGl0bGU6IHN0YXRlLm9wZW5HcmFwaFRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5HcmFwaERlc2NyaXB0aW9uOiBzdGF0ZS5vcGVuR3JhcGhEZXNjcmlwdGlvbixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdHVyZWREYXRhOiBzdGF0ZS5zdHJ1Y3R1cmVkRGF0YSxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vSW5kZXg6IHN0YXRlLm5vSW5kZXgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHk6IHN0YXRlLnByaW9yaXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZUZyZXF1ZW5jeTogc3RhdGUuY2hhbmdlRnJlcXVlbmN5LFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2Fub25pY2FsVXJsOiBzdGF0ZS5jYW5vbmljYWxVcmwsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRlcm5hdGl2ZUxpbmtzOiBzdGF0ZS5hbHRlcm5hdGl2ZUxpbmtzLFxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIE1ldGEgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8ubWV0YS5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIk1ldGEgVGFnc1wiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5odG1sVGl0bGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIkhUTUwgVGl0bGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJodG1sVGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZVNlb1RhZz17Z2VuZXJhdGVTZW9UYWd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLm1ldGFEZXNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiTWV0YSBEZXNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cIm1ldGFEZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlU2VvVGFnPXtnZW5lcmF0ZVNlb1RhZ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlsaW5lXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3M9ezN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3NNYXg9ezV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIE9wZW4gR3JhcGggKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5vcGVuR3JhcGguc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJPcGVuIEdyYXBoXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5vcGVuR3JhcGhUaXRsZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiVGl0bGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJvcGVuR3JhcGhUaXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlU2VvVGFnPXtnZW5lcmF0ZVNlb1RhZ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLm9wZW5HcmFwaERlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJEZXNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cIm9wZW5HcmFwaERlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVTZW9UYWc9e2dlbmVyYXRlU2VvVGFnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdWx0aWxpbmU9e3RydWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3M9ezN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3NNYXg9ezV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge29wZW5HcmFwaEltYWdlfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBTdHJ1Y3R1cmVkIERhdGEgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5zdHJ1Y3R1cmVkRGF0YS5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIlN0cnVjdHVyZWQgRGF0YVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZCBuYW1lPVwic3RydWN0dXJlZERhdGFcIiBtdWx0aWxpbmU9e3RydWV9IHJvd3M9ezE1fSBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fSBmdWxsV2lkdGggLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogU2l0ZW1hcCAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLnNpdGVtYXAuc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJTaXRlbWFwXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UmVhY3RGaW5hbEZvcm1GaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwibm9JbmRleFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcnNlPXsodikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICF2OyAvLyBwYXJzZSBmcm9tIG5vSW5kZXggdG8gaW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0PXsodikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICF2OyAvLyBmb3JtYXQgYmFjayBmcm9tIGluZGV4IHRvIG5vSW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsoeyBpbnB1dDogeyBjaGVja2VkLCBvbkNoYW5nZSB9IH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG9wZW4gPSBjaGVja2VkID8gY2hlY2tlZCA6IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UGFwZXIgdmFyaWFudD1cIm91dGxpbmVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDb2xsYXBzaWJsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3Blbj17b3Blbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcj17XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoZWNrZWQ9e29wZW59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPXs8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LnNlby5zaXRlbWFwLnBhZ2VJbmRleFwiIGRlZmF1bHRNZXNzYWdlPVwiUGFnZSBJbmRleFwiIC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEaXZpZGVyIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmc9ezR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3RGaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8uc2l0ZW1hcC5wcmlvcml0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiUHJpb3JpdHlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJwcmlvcml0eVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zPXtwcmlvcml0eU9wdGlvbnN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLnNpdGVtYXAuY2hhbmdlRnJlcXVlbmN5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJDaGFuZ2UgRnJlcXVlbmN5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiY2hhbmdlRnJlcXVlbmN5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM9e2NoYW5nZUZyZXF1ZW5jeU9wdGlvbnN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvUGFwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvUmVhY3RGaW5hbEZvcm1GaWVsZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogQ2Fub25pY2FsIFRhZyAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLmNhbm9uaWNhbFRhZy5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIkNhbm9uaWNhbCBUYWdcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGQgbGFiZWw9ezxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy51cmx9IC8+fSBuYW1lPVwiY2Fub25pY2FsVXJsXCIgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH0gZnVsbFdpZHRoIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIEFsdGVybmF0ZSBIcmVmbGFuZyAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCbG9ja0FkbWluQ29tcG9uZW50U2VjdGlvbkdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPXs8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uYWx0ZXJuYXRpdmVMaW5rcy5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIkFsdGVybmF0ZSBsaW5rc1wiIC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJsb2NrQWRtaW5Db21wb25lbnRQYXBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZEFycmF5IG5hbWU9XCJhbHRlcm5hdGl2ZUxpbmtzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyh7IGZpZWxkcyB9KSA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ZmllbGRzLm1hcCgobGluaywgaSkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIGtleT17aX0gY29udGFpbmVyIHNwYWNpbmc9ezJ9IHN4PXt7IG1hcmdpbkJvdHRvbTogMiB9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgc2l6ZT17M30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uYWx0ZXJuYXRpdmVMaW5rcy5jb2RlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlPVwiQ29kZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9e2Ake2xpbmt9LmNvZGVgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJlbi1VU1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIHNpemU9XCJncm93XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17PEZvcm1hdHRlZE1lc3NhZ2Ugey4uLm1lc3NhZ2VzLnVybH0gLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT17YCR7bGlua30udXJsYH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkYXRlPXsodXJsKSA9PiB2YWxpZGF0ZVVybCh1cmwpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBhbGlnblNlbGY9XCJmbGV4LXN0YXJ0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RGVsZXRlQnV0dG9uV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SWNvbkJ1dHRvbiBvbkNsaWNrPXsoKSA9PiBmaWVsZHMucmVtb3ZlKGkpfSBzaXplPVwibGFyZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPERlbGV0ZSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvSWNvbkJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRGVsZXRlQnV0dG9uV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJsb2NrQWRtaW5Db21wb25lbnRCdXR0b24gdmFyaWFudD1cInByaW1hcnlcIiBvbkNsaWNrPXsoKSA9PiBmaWVsZHMucHVzaCh7IGNvZGU6IFwiXCIsIHVybDogXCJcIiB9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEFkZEJ1dHRvbkNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxBZGRCdXR0b25JY29uIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2Ugey4uLm1lc3NhZ2VzLmFkZH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQWRkQnV0dG9uQ29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRmllbGRBcnJheT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CbG9ja0FkbWluQ29tcG9uZW50UGFwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CbG9ja0FkbWluQ29tcG9uZW50U2VjdGlvbkdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgIDwvQmxvY2tzRmluYWxGb3JtPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICB9O1xuXG4gICAgaWYgKG92ZXJyaWRlKSB7XG4gICAgICAgIHJldHVybiBvdmVycmlkZShTZW9CbG9jayk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFNlb0Jsb2NrO1xufVxuXG4vKiBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW50ZXJmYWNlIEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uUHJvcHM8RmllbGRWYWx1ZSA9IGFueSwgRmllbGRFbGVtZW50IGV4dGVuZHMgSFRNTEVsZW1lbnQgPSBIVE1MRWxlbWVudD5cbiAgICBleHRlbmRzIEZpZWxkUHJvcHM8RmllbGRWYWx1ZSwgRmllbGRFbGVtZW50PiB7XG4gICAgbmFtZTogU2VvVGFnO1xuICAgIGdlbmVyYXRlU2VvVGFnOiAodGFnOiBTZW9UYWcsIGN1cnJlbnRWYWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSA9PiBQcm9taXNlPHN0cmluZz47XG59XG5cbi8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5mdW5jdGlvbiBGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvbjxGaWVsZFZhbHVlID0gYW55LCBGaWVsZEVsZW1lbnQgZXh0ZW5kcyBIVE1MRWxlbWVudCA9IEhUTUxFbGVtZW50Pih7XG4gICAgbmFtZSxcbiAgICBnZW5lcmF0ZVNlb1RhZyxcbiAgICBlbmRBZG9ybm1lbnQ6IHBhc3NlZEVuZEFkb3JubWVudCxcbiAgICAuLi5wcm9wc1xufTogRmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25Qcm9wczxGaWVsZFZhbHVlLCBGaWVsZEVsZW1lbnQ+KSB7XG4gICAgY29uc3QgY29udGVudEdlbmVyYXRpb25Db25maWcgPSB1c2VDb250ZW50R2VuZXJhdGlvbkNvbmZpZygpO1xuICAgIGNvbnN0IGZvcm1BcGkgPSB1c2VGb3JtKCk7XG5cbiAgICBjb25zdCBbbG9hZGluZywgc2V0TG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgICBjb25zdCBlbmRBZG9ybm1lbnQgPSBjb250ZW50R2VuZXJhdGlvbkNvbmZpZz8uc2VvID8gKFxuICAgICAgICA8PlxuICAgICAgICAgICAge3Bhc3NlZEVuZEFkb3JubWVudH1cbiAgICAgICAgICAgIDxJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgICAgICBvbkNsaWNrPXthc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHNldExvYWRpbmcodHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHNlb1RhZyA9IGF3YWl0IGdlbmVyYXRlU2VvVGFnKG5hbWUsIGZvcm1BcGkuZ2V0RmllbGRTdGF0ZShuYW1lKT8udmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICBzZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgZm9ybUFwaS5jaGFuZ2UobmFtZSwgc2VvVGFnKTtcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtsb2FkaW5nID8gPExvYWRpbmcgYmVoYXZpb3I9XCJmaWxsUGFyZW50XCIgZm9udFNpemU9XCJsYXJnZVwiIC8+IDogPEFydGlmaWNpYWxJbnRlbGxpZ2VuY2UgLz59XG4gICAgICAgICAgICA8L0ljb25CdXR0b24+XG4gICAgICAgIDwvPlxuICAgICkgOiAoXG4gICAgICAgIHBhc3NlZEVuZEFkb3JubWVudFxuICAgICk7XG5cbiAgICByZXR1cm4gPEZpZWxkIG5hbWU9e25hbWV9IGVuZEFkb3JubWVudD17ZW5kQWRvcm5tZW50fSB7Li4ucHJvcHN9IC8+O1xufVxuXG5jb25zdCBBZGRCdXR0b25Db250ZW50ID0gc3R5bGVkKFwic3BhblwiKWBcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiA0cHggMDtcbmA7XG5cbmNvbnN0IEFkZEJ1dHRvbkljb24gPSBzdHlsZWQoQWRkKWBcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uV3JhcHBlciA9IHN0eWxlZChcImRpdlwiKWBcbiAgICBwYWRkaW5nLXRvcDogMjRweDtcbmA7XG4iXX0= */",
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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ibG9ja3MvY3JlYXRlU2VvQmxvY2sudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStYeUMiLCJmaWxlIjoiLi4vLi4vc3JjL2Jsb2Nrcy9jcmVhdGVTZW9CbG9jay50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZCwgdHlwZSBGaWVsZFByb3BzLCBGaW5hbEZvcm1JbnB1dCwgTG9hZGluZywgbWVzc2FnZXMsIFNlbGVjdEZpZWxkIH0gZnJvbSBcIkBjb21ldC9hZG1pblwiO1xuaW1wb3J0IHsgQWRkLCBBcnRpZmljaWFsSW50ZWxsaWdlbmNlLCBEZWxldGUgfSBmcm9tIFwiQGNvbWV0L2FkbWluLWljb25zXCI7XG5pbXBvcnQgeyBCb3gsIERpdmlkZXIsIEdyaWQsIEljb25CdXR0b24sIFBhcGVyLCBUeXBvZ3JhcGh5IH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWxcIjtcbmltcG9ydCB7IHN0eWxlZCB9IGZyb20gXCJAbXVpL21hdGVyaWFsL3N0eWxlc1wiO1xuaW1wb3J0IGFycmF5TXV0YXRvcnMgZnJvbSBcImZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRmllbGQgYXMgUmVhY3RGaW5hbEZvcm1GaWVsZCwgdXNlRm9ybSB9IGZyb20gXCJyZWFjdC1maW5hbC1mb3JtXCI7XG5pbXBvcnQgeyBGaWVsZEFycmF5IH0gZnJvbSBcInJlYWN0LWZpbmFsLWZvcm0tYXJyYXlzXCI7XG5pbXBvcnQgeyBGb3JtYXR0ZWRNZXNzYWdlLCB1c2VJbnRsIH0gZnJvbSBcInJlYWN0LWludGxcIjtcblxuaW1wb3J0IHR5cGUgeyBTZW9CbG9ja0RhdGEsIFNlb0Jsb2NrSW5wdXQgfSBmcm9tIFwiLi4vYmxvY2tzLmdlbmVyYXRlZFwiO1xuaW1wb3J0IHsgdXNlQ29udGVudEdlbmVyYXRpb25Db25maWcgfSBmcm9tIFwiLi4vZG9jdW1lbnRzL0NvbnRlbnRHZW5lcmF0aW9uQ29uZmlnQ29udGV4dFwiO1xuaW1wb3J0IHsgdmFsaWRhdGVVcmwgfSBmcm9tIFwiLi4vdmFsaWRhdGlvbi92YWxpZGF0ZVVybFwiO1xuaW1wb3J0IHsgQmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvbiB9IGZyb20gXCIuL2NvbW1vbi9CbG9ja0FkbWluQ29tcG9uZW50QnV0dG9uXCI7XG5pbXBvcnQgeyBCbG9ja0FkbWluQ29tcG9uZW50UGFwZXIgfSBmcm9tIFwiLi9jb21tb24vQmxvY2tBZG1pbkNvbXBvbmVudFBhcGVyXCI7XG5pbXBvcnQgeyBCbG9ja0FkbWluQ29tcG9uZW50U2VjdGlvbkdyb3VwIH0gZnJvbSBcIi4vY29tbW9uL0Jsb2NrQWRtaW5Db21wb25lbnRTZWN0aW9uR3JvdXBcIjtcbmltcG9ydCB7IENvbGxhcHNpYmxlIH0gZnJvbSBcIi4vY29tbW9uL0NvbGxhcHNpYmxlXCI7XG5pbXBvcnQgeyBDb2xsYXBzaWJsZVN3aXRjaEJ1dHRvbkhlYWRlciB9IGZyb20gXCIuL2NvbW1vbi9Db2xsYXBzaWJsZVN3aXRjaEJ1dHRvbkhlYWRlclwiO1xuaW1wb3J0IHsgY3JlYXRlT3B0aW9uYWxCbG9jayB9IGZyb20gXCIuL2ZhY3Rvcmllcy9jcmVhdGVPcHRpb25hbEJsb2NrXCI7XG5pbXBvcnQgeyBCbG9ja3NGaW5hbEZvcm0gfSBmcm9tIFwiLi9mb3JtL0Jsb2Nrc0ZpbmFsRm9ybVwiO1xuaW1wb3J0IHsgY29tcG9zZUJsb2NrcyB9IGZyb20gXCIuL2hlbHBlcnMvY29tcG9zZUJsb2Nrcy9jb21wb3NlQmxvY2tzXCI7XG5pbXBvcnQgeyBjcmVhdGVCbG9ja1NrZWxldG9uIH0gZnJvbSBcIi4vaGVscGVycy9jcmVhdGVCbG9ja1NrZWxldG9uXCI7XG5pbXBvcnQgeyBkZWNvbXBvc2VVcGRhdGVTdGF0ZUFjdGlvbiB9IGZyb20gXCIuL2hlbHBlcnMvZGVjb21wb3NlVXBkYXRlU3RhdGVBY3Rpb25cIjtcbmltcG9ydCB7IHdpdGhBZGRpdGlvbmFsQmxvY2tBdHRyaWJ1dGVzIH0gZnJvbSBcIi4vaGVscGVycy93aXRoQWRkaXRpb25hbEJsb2NrQXR0cmlidXRlc1wiO1xuaW1wb3J0IHsgUGl4ZWxJbWFnZUJsb2NrIH0gZnJvbSBcIi4vUGl4ZWxJbWFnZUJsb2NrXCI7XG5pbXBvcnQgeyB0eXBlIFNlb1RhZywgdXNlU2VvVGFnR2VuZXJhdGlvbiB9IGZyb20gXCIuL3Nlby91c2VTZW9UYWdHZW5lcmF0aW9uXCI7XG5pbXBvcnQgdXNlU2l0ZW1hcENoYW5nZUZyZXF1ZW5jeUZvcm1PcHRpb25zIGZyb20gXCIuL3Nlby91c2VTaXRlbWFwQ2hhbmdlRnJlcXVlbmN5Rm9ybU9wdGlvbnNcIjtcbmltcG9ydCB1c2VTaXRlbWFwUGFnZVByaW9yaXR5Rm9ybU9wdGlvbnMgZnJvbSBcIi4vc2VvL3VzZVNpdGVtYXBQYWdlUHJpb3JpdHlGb3JtT3B0aW9uc1wiO1xuaW1wb3J0IHR5cGUgeyBCbG9ja0ludGVyZmFjZSwgQmxvY2tTdGF0ZSB9IGZyb20gXCIuL3R5cGVzXCI7XG5cbmludGVyZmFjZSBDcmVhdGVTZW9CbG9ja09wdGlvbnMge1xuICAgIGltYWdlPzogQmxvY2tJbnRlcmZhY2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTZW9CbG9jayhcbiAgICB7IGltYWdlID0gUGl4ZWxJbWFnZUJsb2NrIH06IENyZWF0ZVNlb0Jsb2NrT3B0aW9ucyA9IHt9LFxuICAgIG92ZXJyaWRlPzogKGJsb2NrOiBCbG9ja0ludGVyZmFjZSkgPT4gQmxvY2tJbnRlcmZhY2UsXG4pOiBCbG9ja0ludGVyZmFjZSB7XG4gICAgY29uc3QgT3B0aW9uYWxJbWFnZUJsb2NrID0gY3JlYXRlT3B0aW9uYWxCbG9jayhpbWFnZSwge1xuICAgICAgICB0aXRsZTogPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5zaXRlbWFwLm9wZW5HcmFwaEltYWdlXCIgZGVmYXVsdE1lc3NhZ2U9XCJPcGVuIEdyYXBoIEltYWdlXCIgLz4sXG4gICAgfSk7XG5cbiAgICBjb25zdCBjb21wb3NlZCA9IGNvbXBvc2VCbG9ja3MoeyBvcGVuR3JhcGhJbWFnZTogT3B0aW9uYWxJbWFnZUJsb2NrIH0pO1xuXG4gICAgY29uc3QgeyBhcGk6IGNvbXBvc2VkQXBpLCBibG9jazogY29tcG9zZWRCbG9jayB9ID0gY29tcG9zZWQ7XG5cbiAgICBjb25zdCBibG9jayA9IHdpdGhBZGRpdGlvbmFsQmxvY2tBdHRyaWJ1dGVzPE9taXQ8U2VvQmxvY2tEYXRhLCBcIm9wZW5HcmFwaEltYWdlXCI+Pih7XG4gICAgICAgIG5vSW5kZXg6IGZhbHNlLFxuICAgICAgICBwcmlvcml0eTogXCIwXzVcIixcbiAgICAgICAgY2hhbmdlRnJlcXVlbmN5OiBcIndlZWtseVwiLFxuICAgICAgICBhbHRlcm5hdGl2ZUxpbmtzOiBbXSxcbiAgICAgICAgaHRtbFRpdGxlOiB1bmRlZmluZWQsXG4gICAgICAgIG1ldGFEZXNjcmlwdGlvbjogdW5kZWZpbmVkLFxuICAgICAgICBvcGVuR3JhcGhUaXRsZTogdW5kZWZpbmVkLFxuICAgICAgICBvcGVuR3JhcGhEZXNjcmlwdGlvbjogdW5kZWZpbmVkLFxuICAgICAgICBzdHJ1Y3R1cmVkRGF0YTogdW5kZWZpbmVkLFxuICAgICAgICBjYW5vbmljYWxVcmw6IHVuZGVmaW5lZCxcbiAgICB9KShjb21wb3NlZEJsb2NrKTtcblxuICAgIHR5cGUgU3RhdGUgPSBCbG9ja1N0YXRlPHR5cGVvZiBibG9jaz47XG5cbiAgICBjb25zdCBTZW9CbG9jazogQmxvY2tJbnRlcmZhY2U8U2VvQmxvY2tEYXRhLCBTdGF0ZSwgU2VvQmxvY2tJbnB1dD4gPSB7XG4gICAgICAgIC4uLmNyZWF0ZUJsb2NrU2tlbGV0b24oKSxcbiAgICAgICAgLi4uYmxvY2ssXG4gICAgICAgIG5hbWU6IFwiU2VvXCIsXG5cbiAgICAgICAgZGlzcGxheU5hbWU6IDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlb1wiIGRlZmF1bHRNZXNzYWdlPVwiU0VPXCIgLz4sXG5cbiAgICAgICAgQWRtaW5Db21wb25lbnQ6ICh7IHN0YXRlLCB1cGRhdGVTdGF0ZSB9KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbnRsID0gdXNlSW50bCgpO1xuICAgICAgICAgICAgY29uc3QgeyBvcGVuR3JhcGhJbWFnZSB9ID0gY29tcG9zZWRBcGkuYWRtaW5Db21wb25lbnRzKHtcbiAgICAgICAgICAgICAgICBzdGF0ZSxcbiAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZTogZGVjb21wb3NlVXBkYXRlU3RhdGVBY3Rpb24odXBkYXRlU3RhdGUsIFtcIm9wZW5HcmFwaEltYWdlXCJdKSxcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBjb25zdCBwcmlvcml0eU9wdGlvbnMgPSB1c2VTaXRlbWFwUGFnZVByaW9yaXR5Rm9ybU9wdGlvbnMoKTtcbiAgICAgICAgICAgIGNvbnN0IGNoYW5nZUZyZXF1ZW5jeU9wdGlvbnMgPSB1c2VTaXRlbWFwQ2hhbmdlRnJlcXVlbmN5Rm9ybU9wdGlvbnMoKTtcblxuICAgICAgICAgICAgY29uc3QgZ2VuZXJhdGVTZW9UYWcgPSB1c2VTZW9UYWdHZW5lcmF0aW9uKCk7XG5cbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgPEJsb2Nrc0ZpbmFsRm9ybVxuICAgICAgICAgICAgICAgICAgICAgICAgb25TdWJtaXQ9eyh2YWx1ZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVTdGF0ZSgocHJldlN0YXRlKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5wcmV2U3RhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh0bWxUaXRsZTogdmFsdWVzLmh0bWxUaXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0YURlc2NyaXB0aW9uOiB2YWx1ZXMubWV0YURlc2NyaXB0aW9uLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5HcmFwaFRpdGxlOiB2YWx1ZXMub3BlbkdyYXBoVGl0bGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5HcmFwaERlc2NyaXB0aW9uOiB2YWx1ZXMub3BlbkdyYXBoRGVzY3JpcHRpb24sXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0dXJlZERhdGE6IHZhbHVlcy5zdHJ1Y3R1cmVkRGF0YSxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub0luZGV4OiB2YWx1ZXMubm9JbmRleCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHk6IHZhbHVlcy5wcmlvcml0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlRnJlcXVlbmN5OiB2YWx1ZXMuY2hhbmdlRnJlcXVlbmN5LFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbm9uaWNhbFVybDogdmFsdWVzLmNhbm9uaWNhbFVybCxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRlcm5hdGl2ZUxpbmtzOiB2YWx1ZXMuYWx0ZXJuYXRpdmVMaW5rcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgbXV0YXRvcnM9e3sgLi4uYXJyYXlNdXRhdG9ycyB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgaW5pdGlhbFZhbHVlcz17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh0bWxUaXRsZTogc3RhdGUuaHRtbFRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFEZXNjcmlwdGlvbjogc3RhdGUubWV0YURlc2NyaXB0aW9uLFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlbkdyYXBoVGl0bGU6IHN0YXRlLm9wZW5HcmFwaFRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5HcmFwaERlc2NyaXB0aW9uOiBzdGF0ZS5vcGVuR3JhcGhEZXNjcmlwdGlvbixcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdHVyZWREYXRhOiBzdGF0ZS5zdHJ1Y3R1cmVkRGF0YSxcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vSW5kZXg6IHN0YXRlLm5vSW5kZXgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHk6IHN0YXRlLnByaW9yaXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZUZyZXF1ZW5jeTogc3RhdGUuY2hhbmdlRnJlcXVlbmN5LFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2Fub25pY2FsVXJsOiBzdGF0ZS5jYW5vbmljYWxVcmwsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRlcm5hdGl2ZUxpbmtzOiBzdGF0ZS5hbHRlcm5hdGl2ZUxpbmtzLFxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIE1ldGEgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpbkJvdHRvbT17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgdmFyaWFudD1cImg0XCIgZ3V0dGVyQm90dG9tPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8ubWV0YS5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIk1ldGEgVGFnc1wiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5odG1sVGl0bGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOiBcIkhUTUwgVGl0bGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJodG1sVGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZVNlb1RhZz17Z2VuZXJhdGVTZW9UYWd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLm1ldGFEZXNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiTWV0YSBEZXNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cIm1ldGFEZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlU2VvVGFnPXtnZW5lcmF0ZVNlb1RhZ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlsaW5lXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3M9ezN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3NNYXg9ezV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIE9wZW4gR3JhcGggKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5vcGVuR3JhcGguc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJPcGVuIEdyYXBoXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXQuYmxvY2tzLnNlby5vcGVuR3JhcGhUaXRsZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiVGl0bGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJvcGVuR3JhcGhUaXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlU2VvVGFnPXtnZW5lcmF0ZVNlb1RhZ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLm9wZW5HcmFwaERlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJEZXNjcmlwdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cIm9wZW5HcmFwaERlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVTZW9UYWc9e2dlbmVyYXRlU2VvVGFnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdWx0aWxpbmU9e3RydWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3M9ezN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3NNYXg9ezV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge29wZW5HcmFwaEltYWdlfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBTdHJ1Y3R1cmVkIERhdGEgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD17OH0gbWFyZ2luQm90dG9tPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHlwb2dyYXBoeSB2YXJpYW50PVwiaDRcIiBndXR0ZXJCb3R0b20+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwiY29tZXQuYmxvY2tzLnNlby5zdHJ1Y3R1cmVkRGF0YS5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIlN0cnVjdHVyZWQgRGF0YVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZCBuYW1lPVwic3RydWN0dXJlZERhdGFcIiBtdWx0aWxpbmU9e3RydWV9IHJvd3M9ezE1fSBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fSBmdWxsV2lkdGggLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogU2l0ZW1hcCAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLnNpdGVtYXAuc2VjdGlvblRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJTaXRlbWFwXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1R5cG9ncmFwaHk+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UmVhY3RGaW5hbEZvcm1GaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwibm9JbmRleFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcnNlPXsodikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICF2OyAvLyBwYXJzZSBmcm9tIG5vSW5kZXggdG8gaW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0PXsodikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICF2OyAvLyBmb3JtYXQgYmFjayBmcm9tIGluZGV4IHRvIG5vSW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsoeyBpbnB1dDogeyBjaGVja2VkLCBvbkNoYW5nZSB9IH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG9wZW4gPSBjaGVja2VkID8gY2hlY2tlZCA6IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UGFwZXIgdmFyaWFudD1cIm91dGxpbmVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDb2xsYXBzaWJsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3Blbj17b3Blbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcj17XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlU3dpdGNoQnV0dG9uSGVhZGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoZWNrZWQ9e29wZW59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPXs8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LnNlby5zaXRlbWFwLnBhZ2VJbmRleFwiIGRlZmF1bHRNZXNzYWdlPVwiUGFnZSBJbmRleFwiIC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEaXZpZGVyIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Qm94IHBhZGRpbmc9ezR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3RGaWVsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNvbWV0LmJsb2Nrcy5zZW8uc2l0ZW1hcC5wcmlvcml0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U6IFwiUHJpb3JpdHlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJwcmlvcml0eVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zPXtwcmlvcml0eU9wdGlvbnN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJjb21ldC5ibG9ja3Muc2VvLnNpdGVtYXAuY2hhbmdlRnJlcXVlbmN5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZTogXCJDaGFuZ2UgRnJlcXVlbmN5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiY2hhbmdlRnJlcXVlbmN5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM9e2NoYW5nZUZyZXF1ZW5jeU9wdGlvbnN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvUGFwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvUmVhY3RGaW5hbEZvcm1GaWVsZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogQ2Fub25pY2FsIFRhZyAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5IHZhcmlhbnQ9XCJoNFwiIGd1dHRlckJvdHRvbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjb21ldC5ibG9ja3Muc2VvLmNhbm9uaWNhbFRhZy5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIkNhbm9uaWNhbCBUYWdcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGQgbGFiZWw9ezxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy51cmx9IC8+fSBuYW1lPVwiY2Fub25pY2FsVXJsXCIgY29tcG9uZW50PXtGaW5hbEZvcm1JbnB1dH0gZnVsbFdpZHRoIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIEFsdGVybmF0ZSBIcmVmbGFuZyAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbWFyZ2luVG9wPXs4fSBtYXJnaW5Cb3R0b209ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCbG9ja0FkbWluQ29tcG9uZW50U2VjdGlvbkdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPXs8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uYWx0ZXJuYXRpdmVMaW5rcy5zZWN0aW9uVGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIkFsdGVybmF0ZSBsaW5rc1wiIC8+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJsb2NrQWRtaW5Db21wb25lbnRQYXBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGaWVsZEFycmF5IG5hbWU9XCJhbHRlcm5hdGl2ZUxpbmtzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyh7IGZpZWxkcyB9KSA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ZmllbGRzLm1hcCgobGluaywgaSkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIGtleT17aX0gY29udGFpbmVyIHNwYWNpbmc9ezJ9IHN4PXt7IG1hcmdpbkJvdHRvbTogMiB9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyaWQgc2l6ZT17M30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImNvbWV0LmJsb2Nrcy5zZW8uYWx0ZXJuYXRpdmVMaW5rcy5jb2RlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlPVwiQ29kZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9e2Ake2xpbmt9LmNvZGVgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17RmluYWxGb3JtSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJlbi1VU1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0dyaWQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmlkIHNpemU9XCJncm93XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmllbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17PEZvcm1hdHRlZE1lc3NhZ2Ugey4uLm1lc3NhZ2VzLnVybH0gLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT17YCR7bGlua30udXJsYH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ZpbmFsRm9ybUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkYXRlPXsodXJsKSA9PiB2YWxpZGF0ZVVybCh1cmwpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JpZCBhbGlnblNlbGY9XCJmbGV4LXN0YXJ0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RGVsZXRlQnV0dG9uV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SWNvbkJ1dHRvbiBvbkNsaWNrPXsoKSA9PiBmaWVsZHMucmVtb3ZlKGkpfSBzaXplPVwibGFyZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPERlbGV0ZSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvSWNvbkJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRGVsZXRlQnV0dG9uV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9HcmlkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvR3JpZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJsb2NrQWRtaW5Db21wb25lbnRCdXR0b24gdmFyaWFudD1cInByaW1hcnlcIiBvbkNsaWNrPXsoKSA9PiBmaWVsZHMucHVzaCh7IGNvZGU6IFwiXCIsIHVybDogXCJcIiB9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEFkZEJ1dHRvbkNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxBZGRCdXR0b25JY29uIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2Ugey4uLm1lc3NhZ2VzLmFkZH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQWRkQnV0dG9uQ29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQmxvY2tBZG1pbkNvbXBvbmVudEJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRmllbGRBcnJheT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CbG9ja0FkbWluQ29tcG9uZW50UGFwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CbG9ja0FkbWluQ29tcG9uZW50U2VjdGlvbkdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgIDwvQmxvY2tzRmluYWxGb3JtPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICB9O1xuXG4gICAgaWYgKG92ZXJyaWRlKSB7XG4gICAgICAgIHJldHVybiBvdmVycmlkZShTZW9CbG9jayk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFNlb0Jsb2NrO1xufVxuXG4vKiBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW50ZXJmYWNlIEZpZWxkV2l0aENvbnRlbnRHZW5lcmF0aW9uUHJvcHM8RmllbGRWYWx1ZSA9IGFueSwgRmllbGRFbGVtZW50IGV4dGVuZHMgSFRNTEVsZW1lbnQgPSBIVE1MRWxlbWVudD5cbiAgICBleHRlbmRzIEZpZWxkUHJvcHM8RmllbGRWYWx1ZSwgRmllbGRFbGVtZW50PiB7XG4gICAgbmFtZTogU2VvVGFnO1xuICAgIGdlbmVyYXRlU2VvVGFnOiAodGFnOiBTZW9UYWcsIGN1cnJlbnRWYWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSA9PiBQcm9taXNlPHN0cmluZz47XG59XG5cbi8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5mdW5jdGlvbiBGaWVsZFdpdGhDb250ZW50R2VuZXJhdGlvbjxGaWVsZFZhbHVlID0gYW55LCBGaWVsZEVsZW1lbnQgZXh0ZW5kcyBIVE1MRWxlbWVudCA9IEhUTUxFbGVtZW50Pih7XG4gICAgbmFtZSxcbiAgICBnZW5lcmF0ZVNlb1RhZyxcbiAgICBlbmRBZG9ybm1lbnQ6IHBhc3NlZEVuZEFkb3JubWVudCxcbiAgICAuLi5wcm9wc1xufTogRmllbGRXaXRoQ29udGVudEdlbmVyYXRpb25Qcm9wczxGaWVsZFZhbHVlLCBGaWVsZEVsZW1lbnQ+KSB7XG4gICAgY29uc3QgY29udGVudEdlbmVyYXRpb25Db25maWcgPSB1c2VDb250ZW50R2VuZXJhdGlvbkNvbmZpZygpO1xuICAgIGNvbnN0IGZvcm1BcGkgPSB1c2VGb3JtKCk7XG5cbiAgICBjb25zdCBbbG9hZGluZywgc2V0TG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgICBjb25zdCBlbmRBZG9ybm1lbnQgPSBjb250ZW50R2VuZXJhdGlvbkNvbmZpZz8uc2VvID8gKFxuICAgICAgICA8PlxuICAgICAgICAgICAge3Bhc3NlZEVuZEFkb3JubWVudH1cbiAgICAgICAgICAgIDxJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgICAgICBvbkNsaWNrPXthc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHNldExvYWRpbmcodHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHNlb1RhZyA9IGF3YWl0IGdlbmVyYXRlU2VvVGFnKG5hbWUsIGZvcm1BcGkuZ2V0RmllbGRTdGF0ZShuYW1lKT8udmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICBzZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgZm9ybUFwaS5jaGFuZ2UobmFtZSwgc2VvVGFnKTtcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtsb2FkaW5nID8gPExvYWRpbmcgYmVoYXZpb3I9XCJmaWxsUGFyZW50XCIgZm9udFNpemU9XCJsYXJnZVwiIC8+IDogPEFydGlmaWNpYWxJbnRlbGxpZ2VuY2UgLz59XG4gICAgICAgICAgICA8L0ljb25CdXR0b24+XG4gICAgICAgIDwvPlxuICAgICkgOiAoXG4gICAgICAgIHBhc3NlZEVuZEFkb3JubWVudFxuICAgICk7XG5cbiAgICByZXR1cm4gPEZpZWxkIG5hbWU9e25hbWV9IGVuZEFkb3JubWVudD17ZW5kQWRvcm5tZW50fSB7Li4ucHJvcHN9IC8+O1xufVxuXG5jb25zdCBBZGRCdXR0b25Db250ZW50ID0gc3R5bGVkKFwic3BhblwiKWBcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiA0cHggMDtcbmA7XG5cbmNvbnN0IEFkZEJ1dHRvbkljb24gPSBzdHlsZWQoQWRkKWBcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uV3JhcHBlciA9IHN0eWxlZChcImRpdlwiKWBcbiAgICBwYWRkaW5nLXRvcDogMjRweDtcbmA7XG4iXX0= */",
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 +1 @@
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,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"}
@@ -1,4 +1,8 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
3
+ function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
4
+ function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
5
+ function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
2
6
  function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
3
7
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
8
  function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
@@ -96,7 +100,38 @@ export function createTextLinkBlock(_ref, override) {
96
100
  var blockContent = (_block$extractTextCon = (_block$extractTextCon2 = block.extractTextContents) === null || _block$extractTextCon2 === void 0 ? void 0 : _block$extractTextCon2.call(block, state, options)) !== null && _block$extractTextCon !== void 0 ? _block$extractTextCon : [];
97
101
  content.push.apply(content, _toConsumableArray(blockContent));
98
102
  return content;
99
- }
103
+ },
104
+ translateContent: function () {
105
+ var _translateContent = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(state, translate) {
106
+ var translatedText, _t;
107
+ return _regenerator().w(function (_context) {
108
+ while (1) switch (_context.n) {
109
+ case 0:
110
+ if (!state.text) {
111
+ _context.n = 2;
112
+ break;
113
+ }
114
+ _context.n = 1;
115
+ return translate(state.text);
116
+ case 1:
117
+ _t = _context.v;
118
+ _context.n = 3;
119
+ break;
120
+ case 2:
121
+ _t = state.text;
122
+ case 3:
123
+ translatedText = _t;
124
+ return _context.a(2, _objectSpread(_objectSpread({}, state), {}, {
125
+ text: translatedText
126
+ }));
127
+ }
128
+ }, _callee);
129
+ }));
130
+ function translateContent(_x, _x2) {
131
+ return _translateContent.apply(this, arguments);
132
+ }
133
+ return translateContent;
134
+ }()
100
135
  });
101
136
  if (override) {
102
137
  return override(TextLinkBlock);
@@ -1 +1 @@
1
- {"version":3,"file":"createBlocksBlock.d.ts","sourceRoot":"","sources":["../../../src/blocks/factories/createBlocksBlock.tsx"],"names":[],"mappings":"AAcA,OAAO,EAGH,KAAK,iBAAiB,EACtB,KAAK,SAAS,EAMjB,MAAM,OAAO,CAAC;AACf,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAkBtE,OAAO,KAAK,EAAmB,cAAc,EAAE,UAAU,EAAkB,MAAM,UAAU,CAAC;AAM5F,KAAK,2BAA2B,GAAG,EAAE,CAAC;AAEtC,KAAK,eAAe,CAChB,CAAC,SAAS,cAAc,GAAG,cAAc,EACzC,oBAAoB,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,2BAA2B,IAClF;IACA,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;CACpB,GAAG,oBAAoB,CAAC;AAOzB,MAAM,WAAW,gBAAgB,CAAC,oBAAoB,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,2BAA2B;IAChH,MAAM,EAAE,eAAe,CAAC,cAAc,EAAE,oBAAoB,CAAC,EAAE,CAAC;CACnE;AAED,MAAM,WAAW,mBAAmB,CAAC,oBAAoB,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,2BAA2B;IACnH,MAAM,EAAE,KAAK,CACT;QACI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QACvB,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,OAAO,CAAC;QAEjB,KAAK,EAAE,GAAG,CAAC;KACd,GAAG,oBAAoB,CAC3B,CAAC;CACL;AAED,MAAM,WAAW,iBAAiB,CAAC,oBAAoB,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,2BAA2B;IACjH,MAAM,EAAE,KAAK,CACT;QACI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QACvB,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,OAAO,CAAC;QAEjB,KAAK,EAAE,GAAG,CAAC;KACd,GAAG,oBAAoB,CAC3B,CAAC;CACL;AAED,KAAK,SAAS,GAAG,MAAM,CAAC;AAExB,UAAU,8BAA8B,CAAC,KAAK,GAAG,OAAO;IACpD,YAAY,EAAE,KAAK,CAAC;CACvB;AAED,UAAU,wBAAwB,CAAC,oBAAoB,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACnF,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE;SAClB,GAAG,IAAI,MAAM,oBAAoB,GAAG,8BAA8B,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;KACjG,CAAC;IACF,8BAA8B,CAAC,EAAE,iBAAiB,CAAC;QAC/C,IAAI,EAAE,eAAe,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC;QAC5D,QAAQ,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,cAAc,EAAE,oBAAoB,CAAC,KAAK,IAAI,CAAC;QAChF,WAAW,EAAE,MAAM,IAAI,CAAC;KAC3B,CAAC,CAAC;IACH,qBAAqB,CAAC,EAAE,iBAAiB,CAAC;QAAE,IAAI,EAAE,eAAe,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAA;KAAE,CAAC,CAAC;IAC3G,IAAI,CAAC,EAAE,KAAK,CAAC,iBAAiB,GAAG,MAAM,CAAC,CAAC;CAC5C;AAED,wBAAgB,iBAAiB,CAAC,oBAAoB,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,2BAA2B,EAChH,EACI,eAAe,EACf,IAAI,EACJ,WAAwF,EACxF,gBAAgB,EAChB,oBAAoB,EACpB,8BAA8B,EAC9B,qBAAqB,EACrB,IAAI,GACP,EAAE,wBAAwB,CAAC,oBAAoB,CAAC,EACjD,QAAQ,CAAC,EAAE,CACP,KAAK,EAAE,cAAc,CACjB,mBAAmB,CAAC,oBAAoB,CAAC,EACzC,gBAAgB,CAAC,oBAAoB,CAAC,EACtC,iBAAiB,CAAC,oBAAoB,CAAC,CAC1C,KACA,cAAc,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,EAAE,gBAAgB,CAAC,oBAAoB,CAAC,EAAE,iBAAiB,CAAC,oBAAoB,CAAC,CAAC,GAChJ,cAAc,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,EAAE,gBAAgB,CAAC,oBAAoB,CAAC,EAAE,iBAAiB,CAAC,oBAAoB,CAAC,CAAC,CAyxB5I"}
1
+ {"version":3,"file":"createBlocksBlock.d.ts","sourceRoot":"","sources":["../../../src/blocks/factories/createBlocksBlock.tsx"],"names":[],"mappings":"AAcA,OAAO,EAGH,KAAK,iBAAiB,EACtB,KAAK,SAAS,EAMjB,MAAM,OAAO,CAAC;AACf,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAkBtE,OAAO,KAAK,EAAmB,cAAc,EAAE,UAAU,EAAkB,MAAM,UAAU,CAAC;AAM5F,KAAK,2BAA2B,GAAG,EAAE,CAAC;AAEtC,KAAK,eAAe,CAChB,CAAC,SAAS,cAAc,GAAG,cAAc,EACzC,oBAAoB,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,2BAA2B,IAClF;IACA,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;CACpB,GAAG,oBAAoB,CAAC;AAOzB,MAAM,WAAW,gBAAgB,CAAC,oBAAoB,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,2BAA2B;IAChH,MAAM,EAAE,eAAe,CAAC,cAAc,EAAE,oBAAoB,CAAC,EAAE,CAAC;CACnE;AAED,MAAM,WAAW,mBAAmB,CAAC,oBAAoB,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,2BAA2B;IACnH,MAAM,EAAE,KAAK,CACT;QACI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QACvB,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,OAAO,CAAC;QAEjB,KAAK,EAAE,GAAG,CAAC;KACd,GAAG,oBAAoB,CAC3B,CAAC;CACL;AAED,MAAM,WAAW,iBAAiB,CAAC,oBAAoB,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,2BAA2B;IACjH,MAAM,EAAE,KAAK,CACT;QACI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QACvB,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,OAAO,CAAC;QAEjB,KAAK,EAAE,GAAG,CAAC;KACd,GAAG,oBAAoB,CAC3B,CAAC;CACL;AAED,KAAK,SAAS,GAAG,MAAM,CAAC;AAExB,UAAU,8BAA8B,CAAC,KAAK,GAAG,OAAO;IACpD,YAAY,EAAE,KAAK,CAAC;CACvB;AAED,UAAU,wBAAwB,CAAC,oBAAoB,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACnF,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE;SAClB,GAAG,IAAI,MAAM,oBAAoB,GAAG,8BAA8B,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;KACjG,CAAC;IACF,8BAA8B,CAAC,EAAE,iBAAiB,CAAC;QAC/C,IAAI,EAAE,eAAe,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC;QAC5D,QAAQ,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,cAAc,EAAE,oBAAoB,CAAC,KAAK,IAAI,CAAC;QAChF,WAAW,EAAE,MAAM,IAAI,CAAC;KAC3B,CAAC,CAAC;IACH,qBAAqB,CAAC,EAAE,iBAAiB,CAAC;QAAE,IAAI,EAAE,eAAe,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAA;KAAE,CAAC,CAAC;IAC3G,IAAI,CAAC,EAAE,KAAK,CAAC,iBAAiB,GAAG,MAAM,CAAC,CAAC;CAC5C;AAED,wBAAgB,iBAAiB,CAAC,oBAAoB,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,2BAA2B,EAChH,EACI,eAAe,EACf,IAAI,EACJ,WAAwF,EACxF,gBAAgB,EAChB,oBAAoB,EACpB,8BAA8B,EAC9B,qBAAqB,EACrB,IAAI,GACP,EAAE,wBAAwB,CAAC,oBAAoB,CAAC,EACjD,QAAQ,CAAC,EAAE,CACP,KAAK,EAAE,cAAc,CACjB,mBAAmB,CAAC,oBAAoB,CAAC,EACzC,gBAAgB,CAAC,oBAAoB,CAAC,EACtC,iBAAiB,CAAC,oBAAoB,CAAC,CAC1C,KACA,cAAc,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,EAAE,gBAAgB,CAAC,oBAAoB,CAAC,EAAE,iBAAiB,CAAC,oBAAoB,CAAC,CAAC,GAChJ,cAAc,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,EAAE,gBAAgB,CAAC,oBAAoB,CAAC,EAAE,iBAAiB,CAAC,oBAAoB,CAAC,CAAC,CAuyB5I"}