@projectcor/maia-components 2.11.110-0 → 2.26.0

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 (667) hide show
  1. package/README.md +2 -0
  2. package/package.json +3 -3
  3. package/CHANGELOG.md +0 -642
  4. package/lib/App.js +0 -55
  5. package/lib/components/atoms/ActionableButton.js +0 -60
  6. package/lib/components/atoms/AgentActivityIndicator/AgentActivityIndicator.js +0 -89
  7. package/lib/components/atoms/AgentActivityIndicator/AgentActivityIndicator.styles.js +0 -21
  8. package/lib/components/atoms/AgentActivityIndicator/AgentActivityIndicator.utils.js +0 -9
  9. package/lib/components/atoms/AgentActivityIndicator/index.js +0 -2
  10. package/lib/components/atoms/ApprovalBox/ApprovalBox.js +0 -209
  11. package/lib/components/atoms/ApprovalBox/ApprovalBox.styles.js +0 -93
  12. package/lib/components/atoms/ApprovalBox/index.js +0 -2
  13. package/lib/components/atoms/AttachmentCard/AttachmentCard.js +0 -218
  14. package/lib/components/atoms/AttachmentCard/AttachmentCard.styles.js +0 -52
  15. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.js +0 -448
  16. package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.styles.js +0 -58
  17. package/lib/components/atoms/AttachmentCard/AttachmentCardImage.js +0 -55
  18. package/lib/components/atoms/AttachmentCard/AttachmentCardImage.styles.js +0 -14
  19. package/lib/components/atoms/AttachmentCard/index.js +0 -4
  20. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.js +0 -442
  21. package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.styles.js +0 -119
  22. package/lib/components/atoms/AttachmentPreviewModal/ExcelPreview.js +0 -222
  23. package/lib/components/atoms/AttachmentPreviewModal/PptPreview.js +0 -313
  24. package/lib/components/atoms/AttachmentPreviewModal/WordPreview.js +0 -128
  25. package/lib/components/atoms/AttachmentPreviewModal/index.js +0 -2
  26. package/lib/components/atoms/Backdrop/Backdrop.js +0 -17
  27. package/lib/components/atoms/Backdrop/Backdrop.styles.js +0 -9
  28. package/lib/components/atoms/Backdrop/index.js +0 -2
  29. package/lib/components/atoms/CardItem.js +0 -7
  30. package/lib/components/atoms/CardMenu/CardMenu.js +0 -131
  31. package/lib/components/atoms/CardMenu/index.js +0 -2
  32. package/lib/components/atoms/CardMenu/styles.js +0 -21
  33. package/lib/components/atoms/ChatClientSelector/ChatClientSelector.js +0 -77
  34. package/lib/components/atoms/ChatClientSelector/index.js +0 -2
  35. package/lib/components/atoms/ChatDisclaimerMessage/ChatDisclaimerMessage.js +0 -9
  36. package/lib/components/atoms/ChatDisclaimerMessage/index.js +0 -2
  37. package/lib/components/atoms/ChatDisclaimerMessage/styles.js +0 -6
  38. package/lib/components/atoms/Checkbox/Checkbox.js +0 -34
  39. package/lib/components/atoms/Checkbox/index.js +0 -2
  40. package/lib/components/atoms/Checkbox/styles.js +0 -39
  41. package/lib/components/atoms/Chip/Chip.js +0 -150
  42. package/lib/components/atoms/Chip/index.js +0 -2
  43. package/lib/components/atoms/Chip/styles.js +0 -43
  44. package/lib/components/atoms/ChipLlm/ChipLlm.js +0 -45
  45. package/lib/components/atoms/ChipLlm/ChipLlm.style.js +0 -21
  46. package/lib/components/atoms/ChipLlm/index.js +0 -2
  47. package/lib/components/atoms/ChipStatus/ChipStatus.interface.js +0 -2
  48. package/lib/components/atoms/ChipStatus/ChipStatus.js +0 -14
  49. package/lib/components/atoms/ChipStatus/ChipStatus.styles.js +0 -27
  50. package/lib/components/atoms/ChipStatus/index.js +0 -2
  51. package/lib/components/atoms/ClearButton.js +0 -6
  52. package/lib/components/atoms/ClientSelector/ClientSelector.js +0 -146
  53. package/lib/components/atoms/ClientSelector/ClientSelector.styles.js +0 -15
  54. package/lib/components/atoms/ClientSelector/index.js +0 -2
  55. package/lib/components/atoms/ContextMentionChip/ContextMentionChip.js +0 -38
  56. package/lib/components/atoms/ContextMentionChip/ContextMentionChip.styles.js +0 -188
  57. package/lib/components/atoms/ContextMentionChip/MentionOverflowLabel.js +0 -39
  58. package/lib/components/atoms/ContextMentionChip/buildChipElement.js +0 -445
  59. package/lib/components/atoms/ContextMentionChip/index.js +0 -4
  60. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.js +0 -533
  61. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.styles.js +0 -10
  62. package/lib/components/atoms/ContextMentionEditor/index.js +0 -2
  63. package/lib/components/atoms/ContextMentionItem/ContextMentionItem.js +0 -282
  64. package/lib/components/atoms/ContextMentionItem/ContextMentionItem.styles.js +0 -148
  65. package/lib/components/atoms/ContextMentionItem/index.js +0 -2
  66. package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.js +0 -290
  67. package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.styles.js +0 -108
  68. package/lib/components/atoms/ContextMentionPopover/index.js +0 -3
  69. package/lib/components/atoms/CopyToClipboard.js +0 -70
  70. package/lib/components/atoms/EditableLabel/EditableLabel.js +0 -110
  71. package/lib/components/atoms/EditableLabel/index.js +0 -2
  72. package/lib/components/atoms/EditableLabel/styles.js +0 -7
  73. package/lib/components/atoms/EmptySearchClients/EmptySearchClients.js +0 -22
  74. package/lib/components/atoms/EmptySearchClients/EmptySearchClients.styles.js +0 -18
  75. package/lib/components/atoms/EmptySearchClients/index.js +0 -2
  76. package/lib/components/atoms/EmptySearchProjects/EmptySearchProjects.js +0 -19
  77. package/lib/components/atoms/EmptySearchProjects/EmptySearchProjects.styles.js +0 -15
  78. package/lib/components/atoms/EmptySearchProjects/index.js +0 -2
  79. package/lib/components/atoms/EntitySelector/EntitySelector.js +0 -247
  80. package/lib/components/atoms/EntitySelector/EntitySelector.skeleton.js +0 -38
  81. package/lib/components/atoms/EntitySelector/EntitySelector.styles.js +0 -67
  82. package/lib/components/atoms/EntitySelector/index.js +0 -2
  83. package/lib/components/atoms/ErrorSearchClients/ErrorSearchClients.js +0 -14
  84. package/lib/components/atoms/ErrorSearchClients/ErrorSearchClients.styles.js +0 -15
  85. package/lib/components/atoms/ErrorSearchFaqs/ErrorSearchFaqs.js +0 -14
  86. package/lib/components/atoms/ErrorSearchFaqs/ErrorSearchFaqs.style.js +0 -15
  87. package/lib/components/atoms/ErrorSearchFaqs/index.js +0 -2
  88. package/lib/components/atoms/ErrorSearchProjects/ErrorSearchProjects.js +0 -18
  89. package/lib/components/atoms/ErrorSearchProjects/ErrorSearchProjects.style.js +0 -15
  90. package/lib/components/atoms/ErrorSearchProjects/index.js +0 -2
  91. package/lib/components/atoms/Expand/Expand.js +0 -32
  92. package/lib/components/atoms/Expand/index.js +0 -2
  93. package/lib/components/atoms/Fade/Fade.js +0 -56
  94. package/lib/components/atoms/Fade/index.js +0 -2
  95. package/lib/components/atoms/FeedbackButton/FeedbackButton.js +0 -59
  96. package/lib/components/atoms/FeedbackButton/FeedbackButton.styles.js +0 -14
  97. package/lib/components/atoms/FeedbackButton/index.js +0 -2
  98. package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.js +0 -138
  99. package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.skeleton.js +0 -44
  100. package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.styles.js +0 -43
  101. package/lib/components/atoms/FrequentlyAskedQuestions/index.js +0 -2
  102. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.js +0 -122
  103. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.skeleton.js +0 -43
  104. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.styles.js +0 -62
  105. package/lib/components/atoms/FrequentlyUsedActions/index.js +0 -2
  106. package/lib/components/atoms/GoBackButton.js +0 -24
  107. package/lib/components/atoms/HelpButton.js +0 -44
  108. package/lib/components/atoms/IconButton.js +0 -56
  109. package/lib/components/atoms/ImagePreview/ImagePreview.js +0 -96
  110. package/lib/components/atoms/ImagePreview/ImagePreview.styles.js +0 -70
  111. package/lib/components/atoms/Input/CustomInput.interface.js +0 -2
  112. package/lib/components/atoms/Input/CustomInput.js +0 -91
  113. package/lib/components/atoms/Input/CustomInput.styles.js +0 -39
  114. package/lib/components/atoms/Input/index.js +0 -2
  115. package/lib/components/atoms/ListMenuOption/ListMenuOption.js +0 -41
  116. package/lib/components/atoms/ListMenuOption/index.js +0 -2
  117. package/lib/components/atoms/ListMenuOption/styles.js +0 -9
  118. package/lib/components/atoms/Loader.js +0 -41
  119. package/lib/components/atoms/LoadingFaqs/LoadingFaqs.js +0 -11
  120. package/lib/components/atoms/LoadingFaqs/LoadingFaqs.style.js +0 -6
  121. package/lib/components/atoms/LoadingFaqs/index.js +0 -2
  122. package/lib/components/atoms/LoadingSearchClients/LoadingSearchClients.js +0 -11
  123. package/lib/components/atoms/LoadingSearchClients/LoadingSearchClients.styles.js +0 -6
  124. package/lib/components/atoms/LoadingSearchClients/index.js +0 -2
  125. package/lib/components/atoms/LoadingSearchProjects/LoadingSearchProjects.js +0 -14
  126. package/lib/components/atoms/LoadingSearchProjects/LoadingSearchProjects.style.js +0 -10
  127. package/lib/components/atoms/LoadingSearchProjects/index.js +0 -2
  128. package/lib/components/atoms/LoadingText/LoadingText.js +0 -18
  129. package/lib/components/atoms/LoadingText/index.js +0 -2
  130. package/lib/components/atoms/LoadingText/styles.js +0 -7
  131. package/lib/components/atoms/MAIAButton/MAIAButton.js +0 -33
  132. package/lib/components/atoms/MAIAButton/index.js +0 -2
  133. package/lib/components/atoms/MAIAError/MAIAError.js +0 -15
  134. package/lib/components/atoms/MAIAError/index.js +0 -2
  135. package/lib/components/atoms/MAIAInput/MAIAInput.js +0 -1232
  136. package/lib/components/atoms/MAIAInput/MAIAInputEditor.js +0 -266
  137. package/lib/components/atoms/MAIAInput/index.js +0 -2
  138. package/lib/components/atoms/MAIAInput/maiaInputLayout.js +0 -25
  139. package/lib/components/atoms/MAIAInput/styles.js +0 -186
  140. package/lib/components/atoms/MAIAMessage/MAIAMessage.interfaces.js +0 -2
  141. package/lib/components/atoms/MAIAMessage/MAIAMessage.js +0 -22
  142. package/lib/components/atoms/MAIAMessage/index.js +0 -2
  143. package/lib/components/atoms/MAIAMessage/styles.js +0 -7
  144. package/lib/components/atoms/MaiaStreamdown/MaiaStreamdown.config.js +0 -23
  145. package/lib/components/atoms/MaiaStreamdown/MaiaStreamdown.interfaces.js +0 -2
  146. package/lib/components/atoms/MaiaStreamdown/MaiaStreamdown.js +0 -51
  147. package/lib/components/atoms/MaiaStreamdown/MaiaStreamdown.styles.js +0 -26
  148. package/lib/components/atoms/MaiaStreamdown/index.js +0 -2
  149. package/lib/components/atoms/MaiaWrapper/MaiaWrapper.js +0 -18
  150. package/lib/components/atoms/MaiaWrapper/MaiaWrapperBase.js +0 -84
  151. package/lib/components/atoms/MaiaWrapper/ModernMaiaWrapper.js +0 -15
  152. package/lib/components/atoms/MaiaWrapper/index.js +0 -3
  153. package/lib/components/atoms/MaiaWrapper/styles.js +0 -21
  154. package/lib/components/atoms/ModalClientAccess/ModalClientAccess.interface.js +0 -2
  155. package/lib/components/atoms/ModalClientAccess/ModalClientAccess.js +0 -84
  156. package/lib/components/atoms/ModalClientAccess/ModalClientAccess.styles.js +0 -53
  157. package/lib/components/atoms/ModalClientAccess/index.js +0 -2
  158. package/lib/components/atoms/ModalInfo/ModalInfo.js +0 -52
  159. package/lib/components/atoms/ModalInfo/ModalInfoContent.js +0 -7
  160. package/lib/components/atoms/ModalInfo/index.js +0 -3
  161. package/lib/components/atoms/ModalInfo/styles.js +0 -7
  162. package/lib/components/atoms/ModalProject/ModalProject.interface.js +0 -2
  163. package/lib/components/atoms/ModalProject/ModalProject.js +0 -112
  164. package/lib/components/atoms/ModalProject/ModalProject.style.js +0 -59
  165. package/lib/components/atoms/ModalProject/index.js +0 -2
  166. package/lib/components/atoms/NextPageLoader.js +0 -33
  167. package/lib/components/atoms/OnboardingModalButton/OnboardingModal.js +0 -28
  168. package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.js +0 -180
  169. package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.styles.js +0 -34
  170. package/lib/components/atoms/OnboardingModalButton/index.js +0 -3
  171. package/lib/components/atoms/OptionAccessibility/OptionAccessibility.js +0 -131
  172. package/lib/components/atoms/OptionAccessibility/OptionAccessibility.styles.js +0 -59
  173. package/lib/components/atoms/OptionAccessibility/index.js +0 -2
  174. package/lib/components/atoms/OptionCorPermission/OptionCorPermission.js +0 -27
  175. package/lib/components/atoms/OptionCorPermission/OptionCorPermission.styles.js +0 -18
  176. package/lib/components/atoms/OptionCorPermission/index.js +0 -2
  177. package/lib/components/atoms/PrimaryButton.js +0 -31
  178. package/lib/components/atoms/ProjectSelector/ProjectSelector.js +0 -77
  179. package/lib/components/atoms/ProjectSelector/ProjectSelector.styles.js +0 -61
  180. package/lib/components/atoms/ProjectSelector/index.js +0 -2
  181. package/lib/components/atoms/SecondaryButton.js +0 -20
  182. package/lib/components/atoms/SessionGeneratingDot/SessionGeneratingDot.js +0 -20
  183. package/lib/components/atoms/SessionGeneratingDot/SessionGeneratingDot.styles.js +0 -20
  184. package/lib/components/atoms/SessionGeneratingDot/index.js +0 -2
  185. package/lib/components/atoms/Skeleton/Skeleton.js +0 -36
  186. package/lib/components/atoms/Skeleton/index.js +0 -2
  187. package/lib/components/atoms/SkillsDropdown/SkillsDropdown.js +0 -188
  188. package/lib/components/atoms/SkillsDropdown/SkillsDropdown.styles.js +0 -69
  189. package/lib/components/atoms/SkillsDropdown/index.js +0 -2
  190. package/lib/components/atoms/SlashCommandChip/SlashCommandChip.js +0 -16
  191. package/lib/components/atoms/SlashCommandChip/SlashCommandChip.styles.js +0 -24
  192. package/lib/components/atoms/SlashCommandChip/buildSlashChipElement.js +0 -18
  193. package/lib/components/atoms/SlashCommandChip/index.js +0 -4
  194. package/lib/components/atoms/SlashCommandDropdown/SlashCommandDropdown.js +0 -210
  195. package/lib/components/atoms/SlashCommandDropdown/SlashCommandDropdown.styles.js +0 -53
  196. package/lib/components/atoms/SlashCommandDropdown/index.js +0 -2
  197. package/lib/components/atoms/Switch/Switch.js +0 -27
  198. package/lib/components/atoms/Switch/Switch.styles.js +0 -22
  199. package/lib/components/atoms/Switch/index.js +0 -2
  200. package/lib/components/atoms/TextArea/CustomTextArea.interface.js +0 -2
  201. package/lib/components/atoms/TextArea/CustomTextArea.js +0 -93
  202. package/lib/components/atoms/TextArea/CustomTextArea.styles.js +0 -25
  203. package/lib/components/atoms/TextArea/TextArea.interfaces.js +0 -2
  204. package/lib/components/atoms/TextArea/TextArea.js +0 -172
  205. package/lib/components/atoms/TextArea/TextArea.styles.js +0 -16
  206. package/lib/components/atoms/TextArea/index.js +0 -2
  207. package/lib/components/atoms/ThirdButton.js +0 -19
  208. package/lib/components/atoms/VideoModal/VideoModal.js +0 -76
  209. package/lib/components/atoms/VideoModal/index.js +0 -2
  210. package/lib/components/atoms/WithAppCfg.js +0 -26
  211. package/lib/components/atoms/WithFeatureValidation.js +0 -23
  212. package/lib/components/atoms/WrapperCenterIcon/WrapperCenterIcon.js +0 -9
  213. package/lib/components/atoms/WrapperCenterIcon/WrapperCenterIcon.styles.js +0 -6
  214. package/lib/components/atoms/WrapperCenterIcon/index.js +0 -2
  215. package/lib/components/atoms/icons/AIIcon.js +0 -23
  216. package/lib/components/atoms/icons/AacFile.js +0 -39
  217. package/lib/components/atoms/icons/AccessibilityIcon.js +0 -42
  218. package/lib/components/atoms/icons/ActionAssignIcon.js +0 -111
  219. package/lib/components/atoms/icons/ActionCalendarIcon.js +0 -112
  220. package/lib/components/atoms/icons/ActionChargeHoursIcon.js +0 -111
  221. package/lib/components/atoms/icons/ActionChatIcon.js +0 -71
  222. package/lib/components/atoms/icons/ActionCreateIcon.js +0 -91
  223. package/lib/components/atoms/icons/ActionCreateReworkIcon.js +0 -39
  224. package/lib/components/atoms/icons/ActionCreateSubtaskIcon.js +0 -37
  225. package/lib/components/atoms/icons/ActionEditIcon.js +0 -39
  226. package/lib/components/atoms/icons/ActionSummaryMessagesIcon.js +0 -88
  227. package/lib/components/atoms/icons/ActionSummaryTaskIcon.js +0 -37
  228. package/lib/components/atoms/icons/ActionTimeBackIcon.js +0 -112
  229. package/lib/components/atoms/icons/AgentMaiaIcon.js +0 -31
  230. package/lib/components/atoms/icons/Brain.js +0 -77
  231. package/lib/components/atoms/icons/CorAccessIcon.js +0 -41
  232. package/lib/components/atoms/icons/CorLogo.js +0 -76
  233. package/lib/components/atoms/icons/CsvFile.js +0 -41
  234. package/lib/components/atoms/icons/DocFile.js +0 -41
  235. package/lib/components/atoms/icons/DocxFile.js +0 -41
  236. package/lib/components/atoms/icons/EmptyClientIllustration.js +0 -67
  237. package/lib/components/atoms/icons/EmptyHistory.js +0 -46
  238. package/lib/components/atoms/icons/EmptySearchIllustration.js +0 -37
  239. package/lib/components/atoms/icons/EmptyState.js +0 -84
  240. package/lib/components/atoms/icons/EmptyStateAgents.js +0 -58
  241. package/lib/components/atoms/icons/ErrorIcon.js +0 -14
  242. package/lib/components/atoms/icons/ErrorSearchIllustration.js +0 -52
  243. package/lib/components/atoms/icons/ErrorState.js +0 -51
  244. package/lib/components/atoms/icons/FaqChevronIcon.js +0 -39
  245. package/lib/components/atoms/icons/FaqsIcon.js +0 -51
  246. package/lib/components/atoms/icons/FlacIcon.js +0 -39
  247. package/lib/components/atoms/icons/FolderIcon.js +0 -29
  248. package/lib/components/atoms/icons/HomeIcon.js +0 -30
  249. package/lib/components/atoms/icons/ImageFile.js +0 -46
  250. package/lib/components/atoms/icons/M4aFile.js +0 -39
  251. package/lib/components/atoms/icons/MAIAIcon.js +0 -20
  252. package/lib/components/atoms/icons/MAIAIsologo.js +0 -65
  253. package/lib/components/atoms/icons/MDFile.js +0 -41
  254. package/lib/components/atoms/icons/MaiaChatLayoutFloatingIcon.js +0 -41
  255. package/lib/components/atoms/icons/MaiaChatLayoutFullscreenIcon.js +0 -41
  256. package/lib/components/atoms/icons/MaiaChatLayoutMenuIcon.js +0 -33
  257. package/lib/components/atoms/icons/MaiaChatLayoutSidebarIcon.js +0 -41
  258. package/lib/components/atoms/icons/MaiaInputAddIcon.js +0 -42
  259. package/lib/components/atoms/icons/MaiaInputAttachIcon.js +0 -29
  260. package/lib/components/atoms/icons/MaiaInputAttachmentImageIcon.js +0 -33
  261. package/lib/components/atoms/icons/MaiaInputDeepSearchIcon.js +0 -35
  262. package/lib/components/atoms/icons/MaiaInputMentionIcon.js +0 -44
  263. package/lib/components/atoms/icons/MaiaInputRobotIcon.js +0 -29
  264. package/lib/components/atoms/icons/MaiaInputSendIcon.js +0 -29
  265. package/lib/components/atoms/icons/MaiaInputSlashIcon.js +0 -29
  266. package/lib/components/atoms/icons/MaiaInputWebSearchIcon.js +0 -35
  267. package/lib/components/atoms/icons/MaiaSettingsProject.js +0 -111
  268. package/lib/components/atoms/icons/MaiaSettingsProjectV2.js +0 -193
  269. package/lib/components/atoms/icons/MaiaSparkleIcon.js +0 -75
  270. package/lib/components/atoms/icons/MaiaStoreIcon.js +0 -31
  271. package/lib/components/atoms/icons/Mp3File.js +0 -39
  272. package/lib/components/atoms/icons/Mp4File.js +0 -39
  273. package/lib/components/atoms/icons/MyAgentsNavIcon.js +0 -51
  274. package/lib/components/atoms/icons/NewChat.js +0 -29
  275. package/lib/components/atoms/icons/NotionIcon.js +0 -36
  276. package/lib/components/atoms/icons/OgaFile.js +0 -39
  277. package/lib/components/atoms/icons/OggFile.js +0 -39
  278. package/lib/components/atoms/icons/PdfFile.js +0 -39
  279. package/lib/components/atoms/icons/PlusIcon.js +0 -29
  280. package/lib/components/atoms/icons/PptFile.js +0 -47
  281. package/lib/components/atoms/icons/PptxFile.js +0 -49
  282. package/lib/components/atoms/icons/RetryIcon.js +0 -34
  283. package/lib/components/atoms/icons/SkillIcon.js +0 -30
  284. package/lib/components/atoms/icons/SkillVisibilityEveryoneIcon.js +0 -23
  285. package/lib/components/atoms/icons/SkillVisibilityOnlyMeIcon.js +0 -23
  286. package/lib/components/atoms/icons/SkillsNavIcon.js +0 -24
  287. package/lib/components/atoms/icons/SubtaskIcon.js +0 -36
  288. package/lib/components/atoms/icons/TaskLinkIcon.js +0 -27
  289. package/lib/components/atoms/icons/TelescopeIcon.js +0 -60
  290. package/lib/components/atoms/icons/TemplateGradientIcon.js +0 -42
  291. package/lib/components/atoms/icons/TextFile.js +0 -41
  292. package/lib/components/atoms/icons/WavFile.js +0 -39
  293. package/lib/components/atoms/icons/WebmFile.js +0 -50
  294. package/lib/components/atoms/icons/XlsFile.js +0 -42
  295. package/lib/components/atoms/icons/XlsxFile.js +0 -42
  296. package/lib/components/atoms/icons/index.js +0 -53
  297. package/lib/components/atoms/index.js +0 -42
  298. package/lib/components/index.js +0 -11
  299. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.interface.js +0 -2
  300. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.js +0 -149
  301. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.styles.js +0 -53
  302. package/lib/components/molecules/AbmSection/AbmGeneralSection.js +0 -415
  303. package/lib/components/molecules/AbmSection/AbmGeneralSection.styles.js +0 -152
  304. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.js +0 -374
  305. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.styles.js +0 -106
  306. package/lib/components/molecules/AbmSection/AbmLoaderFiles.js +0 -92
  307. package/lib/components/molecules/AbmSection/AbmLoaderFiles.styles.js +0 -57
  308. package/lib/components/molecules/AbmSection/index.js +0 -4
  309. package/lib/components/molecules/ChatAIClientSelector/ChatAIClientSelector.js +0 -52
  310. package/lib/components/molecules/ChatAIClientSelector/index.js +0 -2
  311. package/lib/components/molecules/ChatAIContent/ChatAIContent.js +0 -119
  312. package/lib/components/molecules/ChatAIContent/ChatAIContent.skeleton.js +0 -187
  313. package/lib/components/molecules/ChatAIContent/ChatAIContent.styles.js +0 -6
  314. package/lib/components/molecules/ChatAIContent/index.js +0 -2
  315. package/lib/components/molecules/ChatAIHistory/ChatAIHistory.js +0 -241
  316. package/lib/components/molecules/ChatAIHistory/index.js +0 -2
  317. package/lib/components/molecules/ChatAIHistory/styles.js +0 -22
  318. package/lib/components/molecules/ChatAIHome/ChatAIHome.js +0 -649
  319. package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.js +0 -115
  320. package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.styles.js +0 -95
  321. package/lib/components/molecules/ChatAIHome/index.js +0 -2
  322. package/lib/components/molecules/ChatAIHome/styles.js +0 -335
  323. package/lib/components/molecules/ChatAIMessages/ChatAICreateAgentActions.js +0 -137
  324. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +0 -853
  325. package/lib/components/molecules/ChatAIMessages/ChatAISuggestions.js +0 -47
  326. package/lib/components/molecules/ChatAIMessages/ChatAISuggestions.styles.js +0 -37
  327. package/lib/components/molecules/ChatAIMessages/README.md +0 -101
  328. package/lib/components/molecules/ChatAIMessages/index.js +0 -2
  329. package/lib/components/molecules/ChatAIMessages/newStyles.js +0 -131
  330. package/lib/components/molecules/ChatAIMessages/styles.js +0 -94
  331. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +0 -1250
  332. package/lib/components/molecules/ChatAIModal/ChatAIModal.styles.js +0 -58
  333. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.js +0 -127
  334. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.styles.js +0 -34
  335. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/index.js +0 -2
  336. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +0 -189
  337. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.styles.js +0 -26
  338. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/index.js +0 -2
  339. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +0 -453
  340. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.styles.js +0 -108
  341. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/index.js +0 -2
  342. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.js +0 -48
  343. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.styles.js +0 -38
  344. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/index.js +0 -2
  345. package/lib/components/molecules/ChatAIModal/constants.js +0 -40
  346. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/FloatingPanelMotion.js +0 -16
  347. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/FloatingPanelMotion.styles.js +0 -12
  348. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/constants.js +0 -13
  349. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/index.js +0 -3
  350. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/useFloatingPanelDragTilt.js +0 -57
  351. package/lib/components/molecules/ChatAIModal/index.js +0 -2
  352. package/lib/components/molecules/ChatAIModal/layout.js +0 -74
  353. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.js +0 -457
  354. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.styles.js +0 -218
  355. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.js +0 -384
  356. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.styles.js +0 -165
  357. package/lib/components/molecules/ChatAIMySkills/index.js +0 -2
  358. package/lib/components/molecules/ChatAIProjectSelector/ChatAIProjectSelector.js +0 -48
  359. package/lib/components/molecules/ChatAIProjectSelector/ChatAIProjectSelector.styles.js +0 -49
  360. package/lib/components/molecules/ChatAIProjectSelector/index.js +0 -2
  361. package/lib/components/molecules/ChatFooter/ChatFooter.js +0 -337
  362. package/lib/components/molecules/ChatFooter/ChatFooterCorAccess.js +0 -32
  363. package/lib/components/molecules/ChatFooter/ChatFooterCorAccess.styles.js +0 -14
  364. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.js +0 -201
  365. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.styles.js +0 -51
  366. package/lib/components/molecules/ChatFooter/index.js +0 -2
  367. package/lib/components/molecules/ChatFooter/styles.js +0 -23
  368. package/lib/components/molecules/ContextMentionInput/ContextMentionInput.js +0 -60
  369. package/lib/components/molecules/ContextMentionInput/ContextMentionInput.styles.js +0 -6
  370. package/lib/components/molecules/ContextMentionInput/index.js +0 -2
  371. package/lib/components/molecules/MessageFeedback/MessageFeedback.js +0 -118
  372. package/lib/components/molecules/MessageFeedback/index.js +0 -2
  373. package/lib/components/molecules/MessageFeedback/styles.js +0 -14
  374. package/lib/components/molecules/ProjectSummaryChat/ProjectSummaryChat.js +0 -127
  375. package/lib/components/molecules/ProjectSummaryChat/index.js +0 -2
  376. package/lib/components/molecules/ProjectSummaryChat/styles.js +0 -8
  377. package/lib/components/molecules/ProjectSummaryConfig/ProjectSummaryConfig.js +0 -152
  378. package/lib/components/molecules/ProjectSummaryConfig/index.js +0 -2
  379. package/lib/components/molecules/ProjectSummaryConfig/styles.js +0 -86
  380. package/lib/components/molecules/ProjectSummaryContent/ProjectSummaryContent.js +0 -49
  381. package/lib/components/molecules/ProjectSummaryContent/index.js +0 -2
  382. package/lib/components/molecules/ProjectSummaryModal/ProjectSummaryModal.js +0 -19
  383. package/lib/components/molecules/ProjectSummaryModal/index.js +0 -2
  384. package/lib/components/molecules/ProjectSummaryModal/styles.js +0 -2
  385. package/lib/components/molecules/Sidebar/Sidebar.js +0 -716
  386. package/lib/components/molecules/Sidebar/Sidebar.layout.styles.js +0 -157
  387. package/lib/components/molecules/Sidebar/Sidebar.skeleton.js +0 -48
  388. package/lib/components/molecules/Sidebar/Sidebar.styles.js +0 -75
  389. package/lib/components/molecules/Sidebar/index.js +0 -2
  390. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.js +0 -1420
  391. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.styles.js +0 -93
  392. package/lib/components/organisms/AbmAgentModal/index.js +0 -2
  393. package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.js +0 -182
  394. package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.styles.js +0 -34
  395. package/lib/components/organisms/AbmSkillGenerateModal/index.js +0 -2
  396. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.js +0 -550
  397. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.styles.js +0 -118
  398. package/lib/components/organisms/AbmSkillModal/index.js +0 -2
  399. package/lib/components/organisms/ChatAI/ChatAI.js +0 -167
  400. package/lib/components/organisms/ChatAI/index.js +0 -2
  401. package/lib/components/organisms/ChatAI/styles.js +0 -7
  402. package/lib/components/organisms/ClientAIButton/ClientAIButton.js +0 -23
  403. package/lib/components/organisms/ClientAIButton/index.js +0 -2
  404. package/lib/components/organisms/DeleteAgentModal/DeleteAgentModal.js +0 -86
  405. package/lib/components/organisms/DeleteAgentModal/DeleteAgentModal.styles.js +0 -39
  406. package/lib/components/organisms/DeleteAgentModal/index.js +0 -2
  407. package/lib/components/organisms/DeleteQuestionModal/DeleteQuestionModal.js +0 -122
  408. package/lib/components/organisms/DeleteQuestionModal/DeleteQuestionModal.styles.js +0 -47
  409. package/lib/components/organisms/DeleteQuestionModal/index.js +0 -2
  410. package/lib/components/organisms/EditQuestionModal/EditQuestionModal.js +0 -138
  411. package/lib/components/organisms/EditQuestionModal/EditQuestionModal.styles.js +0 -69
  412. package/lib/components/organisms/EditQuestionModal/index.js +0 -2
  413. package/lib/components/organisms/ModalFileExceeds/ModalFileExceeds.js +0 -113
  414. package/lib/components/organisms/ModalFileExceeds/ModalFileExceeds.styles.js +0 -54
  415. package/lib/components/organisms/ModalFileExceeds/index.js +0 -2
  416. package/lib/components/organisms/ProjectAIButton/ProjectAIButton.js +0 -26
  417. package/lib/components/organisms/ProjectAIButton/index.js +0 -2
  418. package/lib/components/organisms/ProjectSummary/ProjectSummary.js +0 -60
  419. package/lib/components/organisms/ProjectSummary/index.js +0 -2
  420. package/lib/components/organisms/ProjectSummary/styles.js +0 -7
  421. package/lib/components/organisms/SnackBar/Snackbar.interface.js +0 -2
  422. package/lib/components/organisms/SnackBar/Snackbar.js +0 -73
  423. package/lib/components/organisms/SnackBar/Snackbar.styles.js +0 -9
  424. package/lib/components/organisms/SnackBar/index.js +0 -2
  425. package/lib/components/organisms/SourcesInformation/SourceItem.js +0 -18
  426. package/lib/components/organisms/SourcesInformation/SourceItem.styles.js +0 -14
  427. package/lib/components/organisms/SourcesInformation/SourcesInformationModal.js +0 -66
  428. package/lib/components/organisms/SourcesInformation/SourcesInformationModal.styles.js +0 -27
  429. package/lib/components/organisms/SourcesInformation/index.js +0 -2
  430. package/lib/constants/config.js +0 -10
  431. package/lib/constants/formatExtensions.js +0 -55
  432. package/lib/constants/gqlClient.js +0 -4
  433. package/lib/constants/maiaHourAgentAccess.js +0 -15
  434. package/lib/constants/maiaTaskPanelAccess.js +0 -24
  435. package/lib/constants/maiaTaskPanelOutsideClick.js +0 -9
  436. package/lib/constants/maiaTaskPanelZIndex.js +0 -19
  437. package/lib/constants/permissions/config.js +0 -72
  438. package/lib/constants/permissions/index.js +0 -3
  439. package/lib/constants/permissions/types.js +0 -2
  440. package/lib/constants/permissions/utils.js +0 -18
  441. package/lib/constants/plannerSyncEvents.js +0 -15
  442. package/lib/constants/taskLinkIcon.js +0 -15
  443. package/lib/constants/taskUrls.js +0 -11
  444. package/lib/context/cor-user.js +0 -31
  445. package/lib/context/global-context.js +0 -39
  446. package/lib/dev/DevChatAI.js +0 -101
  447. package/lib/dev/DevContextMentionInput.js +0 -67
  448. package/lib/dev/ProjectSummary.js +0 -9
  449. package/lib/dev/Providers.js +0 -27
  450. package/lib/exports.js +0 -2
  451. package/lib/hooks/README.md +0 -192
  452. package/lib/hooks/index.js +0 -30
  453. package/lib/hooks/useAccessClient/index.js +0 -2
  454. package/lib/hooks/useAccessClient/useAccessClient.js +0 -81
  455. package/lib/hooks/useAgentModel/index.js +0 -2
  456. package/lib/hooks/useAgentModel/useAgentModel.js +0 -62
  457. package/lib/hooks/useAgentModel/useCreateAgent.js +0 -128
  458. package/lib/hooks/useAgentModel/useDeleteAgent.js +0 -88
  459. package/lib/hooks/useAgentModel/useUpdateAgent.js +0 -129
  460. package/lib/hooks/useAgentSuggestions.js +0 -60
  461. package/lib/hooks/useCaretPosition.js +0 -65
  462. package/lib/hooks/useChatManager/index.js +0 -2
  463. package/lib/hooks/useChatManager/useChatManager.interface.js +0 -2
  464. package/lib/hooks/useChatManager/useChatManager.js +0 -1782
  465. package/lib/hooks/useChatMessages/index.js +0 -2
  466. package/lib/hooks/useChatMessages/useChatMessages.interface.js +0 -2
  467. package/lib/hooks/useChatMessages/useChatMessages.js +0 -722
  468. package/lib/hooks/useChats/index.js +0 -2
  469. package/lib/hooks/useChats/useChats.interfaces.js +0 -2
  470. package/lib/hooks/useChats/useChats.js +0 -187
  471. package/lib/hooks/useClientSearch.js +0 -163
  472. package/lib/hooks/useContextMentions.js +0 -500
  473. package/lib/hooks/useContextPinPopover.js +0 -228
  474. package/lib/hooks/useDebounce.js +0 -18
  475. package/lib/hooks/useEntitySearch.js +0 -1053
  476. package/lib/hooks/useEvent.js +0 -93
  477. package/lib/hooks/useFrequentlyAskedQuestions.js +0 -150
  478. package/lib/hooks/useFrequentlyUsedActions.js +0 -94
  479. package/lib/hooks/useKnowledge/deleteKnowledge.js +0 -69
  480. package/lib/hooks/useKnowledge/downloadKnowledge.js +0 -81
  481. package/lib/hooks/useKnowledge/index.js +0 -4
  482. package/lib/hooks/useKnowledge/saveKnowledge.js +0 -107
  483. package/lib/hooks/useKnowledge/useKnowledgeOperations.js +0 -156
  484. package/lib/hooks/useMaiaTaskPanelZIndex.js +0 -17
  485. package/lib/hooks/useMentionAllowedTypes.js +0 -120
  486. package/lib/hooks/useMentionPopover.js +0 -342
  487. package/lib/hooks/useMinimizedPillBottomOffset.js +0 -110
  488. package/lib/hooks/useModal/index.js +0 -2
  489. package/lib/hooks/useModal/useModal.interfaces.js +0 -2
  490. package/lib/hooks/useModal/useModal.js +0 -47
  491. package/lib/hooks/useOnboardingNavigation.js +0 -20
  492. package/lib/hooks/useOrchestratorStream/index.js +0 -2
  493. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.interface.js +0 -2
  494. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +0 -269
  495. package/lib/hooks/useProjectSearch.js +0 -183
  496. package/lib/hooks/useProjectSummary.js +0 -101
  497. package/lib/hooks/useProjectSummaryConfig.js +0 -211
  498. package/lib/hooks/useProjects.js +0 -46
  499. package/lib/hooks/useRecentClientsSearch.js +0 -150
  500. package/lib/hooks/useRecentContexts.js +0 -86
  501. package/lib/hooks/useResize.js +0 -29
  502. package/lib/hooks/useSkillsCatalog.js +0 -66
  503. package/lib/hooks/useSlashCommands.js +0 -84
  504. package/lib/hooks/useSmoothStreamText/index.js +0 -2
  505. package/lib/hooks/useSmoothStreamText/useSmoothStreamText.js +0 -197
  506. package/lib/hooks/useSnackBarManager/useSnackBarManager.js +0 -41
  507. package/lib/hooks/useStreamResponse.js +0 -112
  508. package/lib/hooks/useStreamdownStyles.js +0 -13
  509. package/lib/hooks/useStreamingMessage/index.js +0 -2
  510. package/lib/hooks/useStreamingMessage/useStreamingMessage.js +0 -18
  511. package/lib/hooks/useT.js +0 -17
  512. package/lib/hooks/useTabTaskDefault.js +0 -33
  513. package/lib/hooks/useTaskPanel.js +0 -22
  514. package/lib/hooks/useTextOverflowEllipsisTooltip.js +0 -34
  515. package/lib/hooks/useToggle.js +0 -19
  516. package/lib/hooks/useToggleFavorite/index.js +0 -2
  517. package/lib/hooks/useToggleFavorite/useToggleFavorite.js +0 -83
  518. package/lib/index.css +0 -76
  519. package/lib/index.js +0 -30
  520. package/lib/lang/br/index.js +0 -783
  521. package/lib/lang/en/index.js +0 -783
  522. package/lib/lang/es/index.js +0 -784
  523. package/lib/lang/fr/index.js +0 -604
  524. package/lib/lang/index.js +0 -24
  525. package/lib/lang/utils.js +0 -33
  526. package/lib/mocks/mockChats.js +0 -395
  527. package/lib/mocks/mockOrchestrator.js +0 -5
  528. package/lib/mocks/mockProject.js +0 -11
  529. package/lib/mocks/mockProjectSummary.js +0 -6
  530. package/lib/mocks/mockedUser.js +0 -169
  531. package/lib/services/apolloClient.js +0 -3
  532. package/lib/services/appcues.js +0 -19
  533. package/lib/services/corpilot/ProjectSummary/getProjectSummary.js +0 -31
  534. package/lib/services/corpilot/ProjectSummary/index.js +0 -5
  535. package/lib/services/corpilot/client.js +0 -27
  536. package/lib/services/corpilot/index.js +0 -5
  537. package/lib/services/maia/Access/updateAccess.js +0 -59
  538. package/lib/services/maia/Actions/getFrequentlyUsedActions.js +0 -46
  539. package/lib/services/maia/Actions/getSlashCommands.js +0 -39
  540. package/lib/services/maia/Actions/index.js +0 -7
  541. package/lib/services/maia/Agents/createAgent.js +0 -39
  542. package/lib/services/maia/Agents/deleteAgent.js +0 -38
  543. package/lib/services/maia/Agents/fetchAgentDetail.js +0 -122
  544. package/lib/services/maia/Agents/getAgentById.js +0 -162
  545. package/lib/services/maia/Agents/getAgentModels.js +0 -112
  546. package/lib/services/maia/Agents/getAgentSuggestions.js +0 -44
  547. package/lib/services/maia/Agents/getAgents.js +0 -718
  548. package/lib/services/maia/Agents/setAgentToolGroups.js +0 -42
  549. package/lib/services/maia/Agents/toggleFavorite.js +0 -34
  550. package/lib/services/maia/Agents/updateAgent.js +0 -39
  551. package/lib/services/maia/Chats/deleteChat.js +0 -32
  552. package/lib/services/maia/Chats/getChatMessages.js +0 -144
  553. package/lib/services/maia/Chats/getChatsByUserId.js +0 -82
  554. package/lib/services/maia/Chats/index.js +0 -15
  555. package/lib/services/maia/Chats/markSessionAsRead.js +0 -32
  556. package/lib/services/maia/Chats/patchChat.js +0 -43
  557. package/lib/services/maia/Chats/wasHelpfulChat.js +0 -31
  558. package/lib/services/maia/Faqs/getFrequentlyAskedQuestions.js +0 -55
  559. package/lib/services/maia/Faqs/index.js +0 -5
  560. package/lib/services/maia/Knowledge/delete.js +0 -41
  561. package/lib/services/maia/Knowledge/download.js +0 -48
  562. package/lib/services/maia/Knowledge/index.js +0 -3
  563. package/lib/services/maia/Knowledge/save.js +0 -43
  564. package/lib/services/maia/Orchestrator/index.js +0 -7
  565. package/lib/services/maia/Orchestrator/orchestrator.js +0 -246
  566. package/lib/services/maia/RecentClients/getRecentClients.js +0 -43
  567. package/lib/services/maia/RecentClients/index.js +0 -6
  568. package/lib/services/maia/RecentContexts/getRecentContexts.js +0 -54
  569. package/lib/services/maia/RecentContexts/index.js +0 -6
  570. package/lib/services/maia/RecentProjects/getRecentProjects.js +0 -55
  571. package/lib/services/maia/RecentProjects/index.js +0 -6
  572. package/lib/services/maia/RecentTasks/getRecentTasks.js +0 -54
  573. package/lib/services/maia/RecentTasks/index.js +0 -6
  574. package/lib/services/maia/RecentUsers/getRecentUsers.js +0 -59
  575. package/lib/services/maia/RecentUsers/index.js +0 -6
  576. package/lib/services/maia/Skills/createSkill.js +0 -39
  577. package/lib/services/maia/Skills/deleteSkill.js +0 -38
  578. package/lib/services/maia/Skills/generateSkill.js +0 -41
  579. package/lib/services/maia/Skills/getSkills.js +0 -120
  580. package/lib/services/maia/Skills/updateSkill.js +0 -39
  581. package/lib/services/maia/client.js +0 -27
  582. package/lib/services/maia/index.js +0 -17
  583. package/lib/services/query/ClientSearchQuery.js +0 -5
  584. package/lib/services/query/entitySearchQuery.js +0 -18
  585. package/lib/services/query/index.js +0 -2
  586. package/lib/services/query/projectSearchByValueQuery.js +0 -5
  587. package/lib/services/query/taskUserTabQuery.js +0 -8
  588. package/lib/services/query/usersDirectoryQuery.js +0 -19
  589. package/lib/services/types.js +0 -6
  590. package/lib/services/utils/fetchCOR.js +0 -117
  591. package/lib/services/utils/getCookie.js +0 -10
  592. package/lib/services/utils/index.js +0 -3
  593. package/lib/services/utils/mapChatMessages.js +0 -287
  594. package/lib/services/utils/validateIsMaia.js +0 -4
  595. package/lib/store/chatsSidebarOptimistic.js +0 -92
  596. package/lib/store/chatsStore.types.js +0 -2
  597. package/lib/store/chatsStoreLifecycle.js +0 -8
  598. package/lib/store/faqsStore.types.js +0 -2
  599. package/lib/store/index.js +0 -4
  600. package/lib/store/maiaLastChatPersistence.js +0 -35
  601. package/lib/store/sessions/activeView.js +0 -22
  602. package/lib/store/sessions/index.js +0 -9
  603. package/lib/store/sessions/sessionHitlContext.js +0 -15
  604. package/lib/store/sessions/sessionNotificationSound.js +0 -57
  605. package/lib/store/sessions/sessionNotifications.js +0 -110
  606. package/lib/store/sessions/sessionNotifications.types.js +0 -2
  607. package/lib/store/sessions/sessionStreamManager.js +0 -715
  608. package/lib/store/sessions/sessionStreamingText.js +0 -80
  609. package/lib/store/sessions/sessions.types.js +0 -35
  610. package/lib/store/sessions/useSessionMeta.js +0 -39
  611. package/lib/store/sessions/useSessionStreamingText.js +0 -18
  612. package/lib/store/sessions/useSessionsStore.js +0 -197
  613. package/lib/store/useChatsStore.js +0 -387
  614. package/lib/store/useFaqsStore.js +0 -27
  615. package/lib/streamdownStyles.js +0 -9
  616. package/lib/styles/StyledCleanContainer.js +0 -7
  617. package/lib/styles/cascade.js +0 -14
  618. package/lib/styles/config.js +0 -47
  619. package/lib/styles/shared/scrollable.js +0 -3
  620. package/lib/styles/transitions.js +0 -21
  621. package/lib/types/Action.js +0 -2
  622. package/lib/types/AgentSuggestion.js +0 -2
  623. package/lib/types/Chat.js +0 -10
  624. package/lib/types/Client.js +0 -2
  625. package/lib/types/FrequentlyAskedQuestion.js +0 -2
  626. package/lib/types/Project.js +0 -2
  627. package/lib/types/ProjectSummaryConfigKeys.js +0 -9
  628. package/lib/types/Task.js +0 -2
  629. package/lib/types/agent.js +0 -2
  630. package/lib/types/agentModal.js +0 -2
  631. package/lib/types/contextMention.js +0 -37
  632. package/lib/types/global.d.js +0 -2
  633. package/lib/types/skill.js +0 -2
  634. package/lib/types/streamActivity.js +0 -2
  635. package/lib/types/userType.d.js +0 -2
  636. package/lib/utils/actionCategoryMap.js +0 -37
  637. package/lib/utils/actionIconMap.js +0 -61
  638. package/lib/utils/agentDisplayName.js +0 -42
  639. package/lib/utils/chatInputFiles.js +0 -52
  640. package/lib/utils/contextMentionIcons.js +0 -134
  641. package/lib/utils/contextMentionLabel.js +0 -4
  642. package/lib/utils/contextMentionTriggers.js +0 -51
  643. package/lib/utils/contextMentionTypeLabel.js +0 -17
  644. package/lib/utils/corConnectorMentionTypes.js +0 -41
  645. package/lib/utils/ensureStreamdownStyles.js +0 -21
  646. package/lib/utils/entityLinkRender.js +0 -135
  647. package/lib/utils/fileDownloadHelper.js +0 -40
  648. package/lib/utils/formatQuickActionMessage.js +0 -16
  649. package/lib/utils/formatUnreadCount.js +0 -6
  650. package/lib/utils/getUnitFileSize.js +0 -13
  651. package/lib/utils/hitlAnalytics.js +0 -65
  652. package/lib/utils/hoursPlannerQuickActionType.js +0 -64
  653. package/lib/utils/imagePreprocessor.js +0 -108
  654. package/lib/utils/index.js +0 -3
  655. package/lib/utils/maiaHostOpen.js +0 -19
  656. package/lib/utils/maiaStreamdownRehypePlugins.js +0 -27
  657. package/lib/utils/mapBackendLang.js +0 -8
  658. package/lib/utils/normalizeAgentConnectors.js +0 -70
  659. package/lib/utils/openTaskInCorPanel.js +0 -22
  660. package/lib/utils/orchestratorSubagents.js +0 -11
  661. package/lib/utils/renderContextMentions.js +0 -420
  662. package/lib/utils/retryCompletion.js +0 -85
  663. package/lib/utils/slashCommandMarker.js +0 -30
  664. package/lib/utils/sortManagerHoursHomeFuas.js +0 -14
  665. package/lib/utils/sseStreamContent.js +0 -17
  666. package/lib/utils/streamActivityMessages.js +0 -359
  667. package/lib/utils/validateTrimmedFields.js +0 -8
@@ -1,784 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
- import { SECTIONS } from '../../constants/config';
5
- import { ProjectSummaryConfigKeys } from '../../types/ProjectSummaryConfigKeys';
6
- var globals = {
7
- close: 'Cerrar',
8
- minimize: 'Minimizar',
9
- howWorks: 'Cómo funciona?',
10
- brandName: 'MAIA',
11
- expand: 'Expandir',
12
- collapse: 'Colapsar',
13
- goBack: 'Volver al inicio',
14
- copy: 'Copiar',
15
- copied: 'Copiado',
16
- saved: 'Guardado',
17
- selectProject: 'Seleccionar proyecto',
18
- save: 'Guardar',
19
- cancel: 'Cancelar'
20
- };
21
- var error = {
22
- title: 'Ha ocurrido un problema',
23
- description: 'En estos momentos estamos experimentando algunos inconvenientes, por favor, intente en unos minutos.',
24
- tryAgain: 'Volver a intentar'
25
- };
26
- var genericSection = {
27
- error: error,
28
- globals: globals
29
- };
30
- var projectSummarySection = {
31
- resume: 'Resumir',
32
- hello: '¡Hola, {{name}}!',
33
- welcome: 'Soy MAIA, tu asistente en COR',
34
- feedback: {
35
- thumbsUp: 'Me sirvió',
36
- thumbsDown: 'No me sirvió',
37
- sources: 'Fuentes'
38
- },
39
- config: {
40
- projectSummary: 'Resumir proyecto',
41
- projectSummaryTitle: 'Resumen de proyectos',
42
- goBack: 'Volver atrás',
43
- selectedProject: 'Proyecto seleccionado',
44
- selectProject: 'Seleccionar proyecto',
45
- configureResume: 'Configuración avanzada',
46
- generatingResume: 'Generando resumen',
47
- generateResume: 'Generar',
48
- hideConfig: 'Ocultar configuración'
49
- },
50
- configureSettings: _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, ProjectSummaryConfigKeys.GENERAL_STATUS, 'Fechas y deadlines'), ProjectSummaryConfigKeys.INCOME_COSTS, 'Rentabilidad'), ProjectSummaryConfigKeys.TIME_HOURS, 'Estimación de horas y consumo'), ProjectSummaryConfigKeys.TASKS_PROGRESS, 'Tareas y avances'), ProjectSummaryConfigKeys.REWORKS, 'Retrabajos')
51
- };
52
- var homeMenu = {
53
- projectSummary: {
54
- title: 'Resumen del proyecto',
55
- description: 'Elabora informes con AI basado en tu proyecto'
56
- },
57
- faq: {
58
- title: 'Preguntas frecuentes',
59
- startTitle: 'Puedes comenzar por...',
60
- empty: 'No hay preguntas frecuentes',
61
- error: '¡Ups! Tuvimos un problema al cargar las preguntas frecuentes. Por favor, intenta de nuevo en unos minutos.',
62
- categories: {
63
- projects: 'Proyecto',
64
- tasks: 'Tareas',
65
- hours: 'Horas',
66
- reworks: 'Retrabajos',
67
- undefined: 'Sin categoría'
68
- }
69
- },
70
- fua: {
71
- title: 'Acciones frecuentes',
72
- newBadge: 'Nuevo',
73
- error: '¡Ups! Tuvimos un problema al cargar las acciones frecuentes. Por favor, intenta de nuevo en unos minutos.'
74
- },
75
- recentContexts: {
76
- title: 'Elige un contexto reciente para mayor precisión en la respuesta:',
77
- types: {
78
- client: 'Cliente',
79
- project: 'Proyecto',
80
- task: 'Tarea'
81
- }
82
- },
83
- contextHome: {
84
- greeting: 'Hola, {{name}} 👋',
85
- subtitle: 'Soy MAIA, tu asistente en tareas, proyectos y clientes.\n¿Seguimos con algo reciente?',
86
- subtitleCollaborator: 'Soy MAIA, tu asistente en tareas. ¿Seguimos con algo reciente?',
87
- subtitleCollaboratorWithHours: 'Completá tus horas o empezá un chat sobre una tarea.',
88
- subtitleManagerWithHours: '¿Por dónde quieres empezar?',
89
- hoursSection: {
90
- title: 'Carga horas'
91
- },
92
- recentTasksSection: {
93
- title: 'Consulta sobre una tarea',
94
- subtitle: 'Elegí una tarea reciente para usarla como contexto.'
95
- },
96
- recentContextsSectionManager: {
97
- title: 'O retoma algo reciente',
98
- subtitle: 'Elegí una tarea, proyecto o cliente para usarlo como contexto'
99
- },
100
- contextGreeting: {
101
- project: '¿Qué quieres que analicemos? ¿Horas, estimaciones, retrabajos?, ¡tu eliges!',
102
- task: 'Estoy aquí para ayudarte con esta tarea. Usa una de las funciones para comenzar.',
103
- client: '¿Qué quieres que analicemos? ¿Rentabilidad, avances, deadlines? ¡Tú eliges!'
104
- }
105
- },
106
- plannerHome: {
107
- title: 'Empecemos con tu carga de horas',
108
- subtitle: '¿Por dónde comenzamos?'
109
- },
110
- action: {
111
- categories: {
112
- tasks: 'Acciones sobre tareas',
113
- collaborators: 'Colaboradores y responsables',
114
- labels: 'Etiquetas y tipos',
115
- checklists: 'Checklists',
116
- deliverables: 'Entregables',
117
- reworks: 'Retrabajos',
118
- hours: 'Carga de horas'
119
- }
120
- },
121
- createdBy: 'por',
122
- createdByTooltip: 'Usuario creador del agente',
123
- createdByTooltipDeleted: 'Usuario eliminado. Su nombre se mantiene para referencia.',
124
- taskGreeting: 'Estoy aquí para ayudarte con esta tarea. Usa una de las funciones para comenzar.',
125
- hello: {
126
- title: '¡Listo! Ya estoy usando el proyecto',
127
- title_1: 'Anticipa desvíos. Analicemos este proyecto.',
128
- title_2: '¿Qué quieres que analicemos? ¿Horas, estimaciones, retrabajos?, ¡tu eliges!',
129
- title_3: 'Revisemos el avance de este proyecto.',
130
- subtitle: 'Para empezar, te puedo ayudar con estas opciones. O si no, ¡escríbeme directamente tu consulta!',
131
- titlePm: '¡Hola, {{name}}! Soy {{agent}}, tu asistente.',
132
- subtitlePm: 'Para darte respuestas precisas, primero necesito saber sobre qué proyecto vamos a conversar. ¿Cuál eliges?'
133
- },
134
- maiaker: {
135
- title: 'Convierte procesos repetitivos en agentes inteligentes',
136
- description: 'Crea agentes que analicen, generen contenido según tus necesidades.',
137
- createManualAgent: 'Crear agente manualmente',
138
- badgeNew: 'Nuevo',
139
- briefCard: {
140
- title: 'Agente especialista en brief',
141
- description: 'Crea y mejora briefs para que estén listos para usar en tareas.',
142
- prompt: 'Quiero crear un agente especialista en brief.'
143
- },
144
- comingSoonCard: {
145
- title: 'Más próximamente',
146
- description: 'Estamos trabajando para brindarte más agentes'
147
- }
148
- }
149
- };
150
- export default _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, SECTIONS.projectSummary, _objectSpread(_objectSpread({}, genericSection), projectSummarySection)), SECTIONS.chatAI, _objectSpread(_objectSpread(_objectSpread({}, genericSection), projectSummarySection), {}, {
151
- homeMenu: homeMenu,
152
- contextMention: {
153
- keyboardHint: 'Navegación entre pestañas: @, @@… en orden. También Alt/Cmd + ←/→',
154
- recentsTitle: 'Recientes',
155
- userNoPosition: 'Sin posición',
156
- me: 'Yo',
157
- tabs: {
158
- client: 'Cliente',
159
- project: 'Proyecto',
160
- task: 'Tarea',
161
- user: 'Usuario',
162
- mcp: 'Conectores',
163
- skill: 'Habilidades'
164
- },
165
- loading: 'Buscando...',
166
- error: 'Tuvimos un problema al buscar. Intentá de nuevo.',
167
- empty: {
168
- recents: 'Empezá a escribir para buscar',
169
- withQuery: 'No hay resultados para "{{query}}"'
170
- },
171
- counters: {
172
- projects: 'proyectos',
173
- tasks: 'tareas'
174
- }
175
- },
176
- contextPin: {
177
- addContext: 'Contexto global',
178
- searchPlaceholder: 'Buscar contexto…',
179
- remove: 'Quitar contexto'
180
- },
181
- button: 'IA',
182
- title: '¡Hola, {{name}}!',
183
- description: 'Soy MAIA tu asistente y estoy aquí para ayudarte con tus consultas.',
184
- newChat: 'Nuevo chat',
185
- openAgentCreator: 'Crear agente',
186
- openMarketplace: 'Marketplace de agentes',
187
- history: {
188
- tooltip: 'Historial',
189
- title: 'Historial vacío',
190
- description: 'No se han encontrado conversaciones',
191
- item: {
192
- date: 'Última actualización {{date}}'
193
- },
194
- menu: {
195
- rename: 'Renombrar',
196
- "delete": 'Eliminar'
197
- },
198
- loadingMore: 'Cargando más conversaciones'
199
- },
200
- onboarding: {
201
- maia: 'MAIA',
202
- agentCustom: 'Agentes custom',
203
- howCreateAgent: '¿Cómo crear un agente?',
204
- tooltip: '¿Cómo funciona?',
205
- howItWorks: '¿Cómo funciona?'
206
- },
207
- qa: {
208
- title: 'Preguntas frecuentes',
209
- items: {
210
- rentabilidad_proyecto: '¿Cuál es la rentabilidad de este proyecto?',
211
- avance_proyecto: '¿Cuáles son los avances de este proyecto?',
212
- tareas_proyecto: '¿Cuáles son las tareas próximas a vencer?'
213
- }
214
- },
215
- chat: {
216
- generating: 'Pensando',
217
- generatingAttachment: 'Analizando adjunto',
218
- generatingDeepSearch: 'Iniciando la investigación',
219
- generatingWebSearch: 'Buscando en la web',
220
- suggestionsTitle: 'Respuestas sugeridas',
221
- createAgentActionsTitle: 'Siguiente paso',
222
- createAgentActionStartChat: 'Iniciar conversación con el nuevo agente',
223
- createAgentActionKnowledge: 'Subir archivos a la base de conocimiento',
224
- createAgentActionLoadError: 'No se pudo cargar el agente. Intenta de nuevo.',
225
- writing: 'Escribiendo la respuesta',
226
- executingAction: 'Ejecutando acción',
227
- processing: 'Procesando',
228
- activity: {
229
- generating: {
230
- preparing: 'Preparando la respuesta',
231
- considering: 'Revisando tu consulta',
232
- almostReady: 'Definiendo el enfoque'
233
- },
234
- thinking: {
235
- analyzing: 'Analizando tu consulta',
236
- reviewing: 'Revisando el contexto',
237
- planning: 'Armando la respuesta'
238
- },
239
- search: {
240
- scanning: 'Buscando en la web',
241
- summarizing: 'Revisando resultados'
242
- },
243
- deepSearch: {
244
- exploring: 'Explorando fuentes',
245
- crossChecking: 'Verificando la información'
246
- },
247
- attachment: {
248
- reading: 'Leyendo el adjunto',
249
- extracting: 'Extrayendo lo relevante',
250
- readingPlural: 'Leyendo los adjuntos',
251
- extractingPlural: 'Extrayendo lo relevante'
252
- },
253
- writing: {
254
- composing: 'Escribiendo la respuesta'
255
- },
256
- dynamicContextTooltip: 'Este contexto fue generado dinámicamente y puede cambiar a lo largo de la conversación.',
257
- creatingTask: 'Creando tarea',
258
- creatingTasksBatch: 'Creando tareas',
259
- creatingAgent: 'Creando agente',
260
- editingAgent: 'Editando agente',
261
- editingTask: 'Editando tarea',
262
- editingTasksBatch: 'Editando tareas',
263
- deletingTask: 'Eliminando tarea',
264
- deletingTasksBatch: 'Eliminando tareas',
265
- assigningUser: 'Asignando usuario',
266
- unassigningUser: 'Desasignando usuario',
267
- assigningLabel: 'Asignando etiqueta',
268
- updatingTaskType: 'Actualizando tipo de tarea',
269
- updatingEstimatedHours: 'Actualizando horas estimadas',
270
- updatingDeliverable: 'Actualizando entregable',
271
- loggingHours: 'Cargando horas',
272
- creatingChecklist: 'Creando checklist',
273
- creatingLabel: 'Creando etiqueta',
274
- editingProject: 'Editando proyecto',
275
- creatingChecklistItem: 'Agregando ítem al checklist',
276
- queryingHours: 'Consultando horas',
277
- configuringAgentAccess: 'Cambiando visibilidad del agente',
278
- sendingTaskMessage: 'Enviando mensaje en la tarea',
279
- deletingChecklistItem: 'Eliminando ítem del checklist',
280
- removingTaskType: 'Eliminando tipo de tarea',
281
- removingLabel: 'Quitando etiqueta',
282
- updatingDeliverableCount: 'Actualizando contador de entregables',
283
- creatingRework: 'Creando retrabajo',
284
- updatingRework: 'Actualizando retrabajo',
285
- generatingFile: 'Generando archivo',
286
- resumingAction: 'Ejecutando acción aprobada'
287
- },
288
- loadingMore: 'Cargando más mensajes',
289
- footer: {
290
- placeholder: 'Escribe tu consulta acá…',
291
- orchestratorPlaceholder: 'Pregúntale a Maia, @ mencionar o / acciones rápidas',
292
- agentLabel: 'El Agente',
293
- disclaimer: '{{agentName}} puede cometer errores. Comprueba la información importante.',
294
- disclaimerAgent: 'Los modelos de IA pueden cometer errores. Verifica la información importante.',
295
- corAccessLabel: 'Acceso a COR',
296
- corAccessTooltip: 'Acceso a datos de COR'
297
- },
298
- error: 'Ha ocurrido un error al generar tu respuesta, por favor, intenta nuevamente.',
299
- retry: 'Reintentar',
300
- errorAccessDenied: 'No tienes acceso para interactuar con este agente. Es posible que su configuración de accesibilidad haya cambiado. Por favor, contacta a la persona de tu organización que administra los agentes para obtener más información.',
301
- errorPromptTooLong: 'Te has excedido del limite de contexto {{used}} tokens. Por favor reintenta nuevamente o continúa en otro chat',
302
- changeProject: 'Detecto que quieres cambiar de Proyecto.\n\n**Selecciona el proyecto para continuar:**',
303
- searchWeb: 'Buscar en la web',
304
- deepSearch: 'Búsqueda avanzada en internet (acceso a más fuentes)',
305
- attachFile: 'Adjuntar archivo',
306
- plusMenuAttach: 'Adjuntar archivos',
307
- dropFilesHere: 'Soltá los archivos aquí',
308
- plusMenuDeepInvestigation: 'Investigar a fondo',
309
- plusMenuQuickActions: 'Acciones rápidas',
310
- openPlusMenuAria: 'Adjuntos y opciones de búsqueda',
311
- openMentionAria: 'Mencionar',
312
- removeAttachmentAria: 'Quitar archivo',
313
- removeActiveToolAria: 'Quitar modo de búsqueda',
314
- send: 'Enviar',
315
- limitFiles: 'Solo puedes adjuntar hasta 5 archivos por mensaje.',
316
- stop: 'Detener respuesta',
317
- cancelled: 'Se ha cancelado la búsqueda.',
318
- tooManyActiveSessions: 'Hay demasiadas conversaciones generando a la vez. Esperá a que termine una antes de iniciar otra.',
319
- attachmentPreviewModal: {
320
- loading: 'Cargando...',
321
- unsupportedFileMessage: 'Este tipo de archivo no puede ser previsualizado. Por favor, intenta de nuevo en unos minutos.',
322
- typeLabel: 'Tipo:',
323
- unknown: 'Desconocido',
324
- sizeLabel: 'Tamaño:',
325
- excel: {
326
- sheetSelectorLabel: 'Hoja:',
327
- loadError: 'No se pudo cargar el contenido del archivo Excel.',
328
- fileReadError: 'Error al leer el archivo.',
329
- sheetLoadError: 'Error al cargar la hoja seleccionada.'
330
- },
331
- word: {
332
- loadError: 'No se pudo cargar el contenido del documento Word.',
333
- legacyDocUnsupported: 'La previsualización de archivos .doc no está disponible. Usa formato .docx.'
334
- },
335
- ppt: {
336
- loadError: 'No se pudo cargar el contenido de la presentación.',
337
- legacyPptUnsupported: 'La previsualización de archivos .ppt no está disponible. Usa formato .pptx.',
338
- slideLabel: 'Diapositiva {{number}}',
339
- emptySlide: 'Esta diapositiva no tiene texto ni imágenes para previsualizar.'
340
- }
341
- }
342
- },
343
- deleteQuestionModal: {
344
- title: '¿Deseas eliminar esta conversación?',
345
- firstPart: 'Estás por eliminar',
346
- secondPart: 'Esta acción es irreversible.',
347
- cancel: 'Cancelar',
348
- "delete": 'Eliminar'
349
- },
350
- deleteSkillModal: {
351
- title: '¿Deseas eliminar esta skill?',
352
- firstPart: 'Estás por eliminar',
353
- secondPart: 'Esta acción es irreversible.',
354
- cancel: 'Cancelar',
355
- "delete": 'Eliminar'
356
- },
357
- editQuestionModal: {
358
- newName: 'Nuevo nombre',
359
- title: 'Renombrar conversación',
360
- rename: 'Renombrar',
361
- cancel: 'Cancelar',
362
- maxLength: 'Completaste los 140 caracteres del límite.'
363
- },
364
- modalFileExceeds: {
365
- limitFilesTitle: 'Has superado el límite de adjuntos.',
366
- limitSizeTitle: 'Has superado el límite de peso permitido.',
367
- limitFilesDescription: 'Solo puedes adjuntar hasta 5 archivos por mensaje. Los siguientes archivos no se pudieron adjuntar:',
368
- limitSizeDescription: 'Uno o más superan el tamaño máximo permitido por tipo. Los siguientes archivos no se pudieron adjuntar:',
369
- accept: 'Aceptar',
370
- limit: 'límite'
371
- },
372
- sourcesInformationModal: {
373
- title: 'Fuentes:'
374
- },
375
- agents: {
376
- title: 'Agentes',
377
- newAgent: 'Nuevo agente',
378
- createAgent: 'Crear Agente',
379
- edit: 'Editar',
380
- maia: '(Especialista de proyecto)',
381
- addFavorite: 'Agregar a favoritos',
382
- removeFavorite: 'Quitar de favoritos',
383
- favoriteToggledAddedSuccess: 'Agente agregado a favoritos',
384
- favoriteToggledRemovedSuccess: 'Agente removido de favoritos',
385
- favoriteToggledError: 'No se pudo guardar tu favorito. Intenta nuevamente.',
386
- favoriteToggledRemovedError: 'No se pudo quitar el favorito. Intenta nuevamente.',
387
- maiaIntroduction: 'Bienvenido a MAIA tu asistente, para mejorar tu día a día.'
388
- },
389
- conversations: {
390
- title: 'Mis conversaciones',
391
- agentsSectionTitle: 'Agentes',
392
- maiakerNav: 'Creador de agentes',
393
- myAgentsNav: 'Mis agentes',
394
- mySkillsNav: 'Skills',
395
- error: 'Ocurrió un error al cargar el historial de conversaciones',
396
- empty: 'Aquí se mostrarán todas tus conversaciones con los agentes',
397
- emptyLabel: 'Mensaje con archivos',
398
- unreadLabel: 'Sin leer',
399
- minimizedOpen: 'Abrir MAIA',
400
- minimizedSeeAnswer: 'Ver respuesta',
401
- collapse: 'Colapsar',
402
- expand: 'Expandir',
403
- newChat: 'Nuevo chat',
404
- generating: 'Generando respuesta',
405
- sessionFinished: '{{title}} terminó de responder',
406
- sessionFinishedApproval: '{{title}} requiere tu aprobación',
407
- sessionFinishedError: '{{title}} tuvo un error al responder',
408
- openAgentCreator: 'Crear agente',
409
- openMarketplace: 'Marketplace de agentes'
410
- },
411
- marketplace: {
412
- back: 'Volver',
413
- title: 'Ideas para crear agentes',
414
- description: 'Elegí una sugerencia bien armada y abrí el editor con el agente ya precargado para adaptarlo a tu caso.',
415
- myAgentsTitle: 'Mis agentes',
416
- myAgentsReadyTitle: 'Tus agentes estan listos para ayudarte en tareas',
417
- myAgentsDescription: 'Estos son tus agentes custom. Selecciona uno para empezar a conversar con ese perfil.',
418
- myAgentsEmptyStateTitle: 'Aún no tienes agentes creados',
419
- myAgentsEmptyStateDescription: 'Haz clic en el botón de abajo para empezar a crear agentes a tu medida.',
420
- myAgentsEmptyStateDescriptionNoPerm: 'Cuando la persona con permisos para crearlos los configure, vas a poder acceder desde acá.',
421
- myAgentsEmptyStateButton: 'Crear agente',
422
- myAgentsFallbackIntro: 'Agente personalizado listo para ayudarte en tu flujo de trabajo.',
423
- myAgentsFallbackDescription: 'Haz click en usar agente para iniciar una conversación con este agente.',
424
- myAgentsFallbackDate: 'Hace pocos dias',
425
- myAgentsToday: 'Hoy',
426
- myAgentsOneDayAgo: 'Hace 1 dia',
427
- myAgentsDaysAgo: 'Hace {{days}} dias',
428
- cardMenuAriaLabel: 'Menu de acciones del agente',
429
- use: 'Usar',
430
- createAgent: 'Crear agente manualmente',
431
- searchAgentPlaceholder: 'Buscar agente...',
432
- searchMinLength: 'mín. 3 caracteres',
433
- searchNoResults: 'No se encontraron resultados.',
434
- searchNoResultsSubtitle: 'Crea un agente de IA que pueda pensar, actuar y automatizar el trabajo para ti',
435
- useTemplate: 'Crear desde esta idea',
436
- useMyAgent: 'Usar agente',
437
- badges: {
438
- branding: 'Branding',
439
- linkedin: 'LinkedIn',
440
- marketing: 'Marketing'
441
- }
442
- },
443
- mySkills: {
444
- title: 'Especializa a MAIA con tus propias reglas',
445
- subtitle: 'Las skills son globales: están disponibles para todos tus agentes.',
446
- tabMySkills: 'Mis skills',
447
- tabSharedSkills: 'Skills compartidas',
448
- dropdownButton: 'Skills',
449
- dropdownCreate: 'Crear nueva skill',
450
- dropdownEmpty: 'Todavía no hay skills',
451
- dropdownError: 'Hubo un problema. Intentá de nuevo.',
452
- mySkillsDescription: 'Habilidades creado por ti.',
453
- sharedSkillsDescription: 'Habilidades compartidas por otros miembros de tu equipo.',
454
- searchPlaceholder: 'Buscar habilidades...',
455
- createManually: 'Crear manualmente',
456
- visibilityOnlyMe: 'Solo yo',
457
- visibilityEveryone: 'Visible para todos',
458
- sharedEmptyStateTitle: 'Aún no compartieron skills contigo.',
459
- sharedEmptyStateDescription: 'Cuando tu compañía comparta skills, aparecerán aquí.',
460
- createSkill: 'Crear skill',
461
- preview: 'Vista previa',
462
- previewEmpty: 'Nada para previsualizar todavía.',
463
- uploadMd: 'Subir .md',
464
- uploadError: 'Solo se permiten archivos .md',
465
- createWithMaia: 'Crear con Maia',
466
- writeInstructions: 'Escribir instrucciones',
467
- uploadSkill: 'Subir una skill',
468
- generatePlaceholder: 'Quiero una Skill para crear mis proyectos',
469
- generateWithMaia: 'Crear la Skill con Maia',
470
- generateNeedsName: 'Escribí un nombre primero para describir la skill',
471
- generateSuccess: 'Skill generada con Maia',
472
- generateError: 'No se pudo generar la skill. Intenta nuevamente.',
473
- cardMenuAriaLabel: 'Menú de acciones de la skill',
474
- edit: 'Editar',
475
- "delete": 'Eliminar',
476
- cancel: 'Cancelar',
477
- save: 'Guardar',
478
- close: 'Cerrar',
479
- createTitle: 'Creación de skill',
480
- editTitle: 'Edición de skill',
481
- viewTitle: 'Skill',
482
- sharedCreatedBy: 'Creada por {{name}}',
483
- nameLabel: 'Nombre',
484
- namePlaceholder: 'Nombre de la skill',
485
- descriptionLabel: 'Descripción',
486
- descriptionPlaceholder: 'Describe brevemente para qué sirve la skill',
487
- instructionsLabel: 'Instrucciones',
488
- shareWithCompany: 'Habilitar para toda la compañía',
489
- createdBy: 'Creado por',
490
- lastUpdated: 'Última actualización',
491
- saveAndUse: 'Guardar y usar skill',
492
- contentLabel: 'Skill',
493
- contentPlaceholder: 'Escribe la skill...',
494
- emptyStateTitle: 'Aún no tienes skills creadas',
495
- emptyStateDescription: 'Haz clic en el botón de abajo para empezar a crear skills a tu medida.',
496
- emptyStateDescriptionNoPerm: 'Cuando la persona con permisos para crearlas las configure, vas a poder acceder desde acá.',
497
- emptyStateButton: 'Crear skill',
498
- searchEmptyStateTitle: 'No encontramos ninguna skill',
499
- searchEmptyStateDescription: 'Prueba con otro término o revisa tu búsqueda.',
500
- createSuccess: 'Skill creada con éxito',
501
- createError: 'No se pudo crear la skill. Intenta nuevamente.',
502
- updateSuccess: 'Skill actualizada con éxito',
503
- updateError: 'No se pudo actualizar la skill. Intenta nuevamente.',
504
- deleteSuccess: 'Skill eliminada con éxito',
505
- deleteError: 'No se pudo eliminar la skill. Intenta nuevamente.'
506
- },
507
- snackbar: {
508
- deleteChat: {
509
- success: 'Tu conversación fue eliminada con éxito.',
510
- error: 'Ocurrió un error inesperado. Por favor vuelve a intentarlo.'
511
- },
512
- renamedChat: {
513
- success: 'Conversación renombrada con éxito',
514
- error: 'Ocurrió un error inesperado. Por favor vuelve a intentarlo.'
515
- },
516
- loadMoreAgents: {
517
- error: 'Ocurrió un error inesperado. Por favor vuelve a intentarlo.'
518
- }
519
- },
520
- approvalBox: {
521
- untitledAgent: 'Agente sin nombre',
522
- actions: {
523
- create_task: 'Creación de tarea',
524
- create_tasks_batch: 'Creación de tareas',
525
- create_agent: 'Creación de agente',
526
- edit_agent: 'Edición de agente',
527
- edit_project: 'Edición de proyecto',
528
- edit_task: 'Edición de tarea',
529
- edit_tasks_batch: 'Edición de tareas',
530
- delete_task: 'Eliminación de tarea',
531
- delete_tasks_batch: 'Eliminación de tareas',
532
- task_assign: 'Asignación de usuario',
533
- task_unassign: 'Desasignación de usuario',
534
- assign_task_label: 'Asignación de etiqueta',
535
- create_labels: 'Creación de etiqueta',
536
- update_task_type: 'Actualización de tipo de tarea',
537
- update_estimated_hours: 'Actualización de horas estimadas',
538
- update_deliverable: 'Actualización de entregable',
539
- create_hour: 'Carga de horas',
540
- create_checklist: 'Creación de checklist',
541
- create_checklist_item: 'Creación de ítem del checklist',
542
- clone_task: 'Clonar tarea',
543
- get_task_date_hours: 'Consulta de horas por fecha',
544
- configure_agent_access: 'Cambiar visibilidad del agente',
545
- send_task_message: 'Envío de mensaje en la tarea',
546
- delete_checklist_item: 'Eliminación de ítem del checklist',
547
- remove_task_type: 'Eliminación de tipo de tarea',
548
- remove_task_label: 'Eliminación de etiqueta',
549
- count_deliverable: 'Actualización del contador de entregables',
550
- create_rework: 'Creación de retrabajo',
551
- update_rework: 'Actualización de retrabajo',
552
- delete_agent: 'Eliminación de agente',
553
- unknown: 'Acción desconocida'
554
- },
555
- special: {
556
- createRework: {
557
- title: 'Crear retrabajo',
558
- description: 'Se creará un retrabajo en la tarea con la información indicada.'
559
- },
560
- updateDeliverableChildren: {
561
- title: 'Actualizar avance de entregables',
562
- description: 'Se actualizará el avance de los subentregables vinculados a esta tarea.'
563
- }
564
- },
565
- fields: {
566
- name: 'Nombre',
567
- emoji: 'Emoji',
568
- introduction: 'Introducción',
569
- input_placeholder: 'Placeholder',
570
- user_prompt: 'Prompt principal',
571
- language: 'Idioma',
572
- provider: 'Provider',
573
- model_name: 'Modelo',
574
- api_key: 'API key'
575
- },
576
- title: 'Confirmación requerida',
577
- description: 'Se requiere tu aprobación para ejecutar la siguiente acción:',
578
- approve: 'Aprobar',
579
- deny: 'Denegar',
580
- manualApprovalWarning: 'Maia ha detectado que la solicitud ha sido aprobada manualmente',
581
- status: {
582
- approved: 'Solicitud Aprobada',
583
- denied: 'Solicitud Denegada'
584
- }
585
- },
586
- chipLlm: {
587
- tooltip: 'Modelo: {{model}}'
588
- },
589
- clientSelector: {
590
- project: 'proyecto',
591
- projects: 'proyectos'
592
- }
593
- })), SECTIONS.abmAgent, _objectSpread(_objectSpread({}, genericSection), {}, {
594
- legendDeletedAgent: 'Este agente ha sido eliminado el día',
595
- legendProjectDeleted: 'El proyecto {{name}} ha sido eliminado. No es posible continuar con la conversación',
596
- legendNoAccess: 'Ya no tienes acceso para interactuar con el agente {{name}}',
597
- legendNoPermissions: 'Ya no tienes permisos para visualizar ni interactuar con el agente {{name}}',
598
- legendLegacyContextSession: 'Esta conversación pertenece a un contexto anterior. Podés continuar con {{name}} en un chat nuevo.',
599
- continueInNewChat: 'Continuar en un chat nuevo',
600
- legendModelDeprecated: 'El modelo seleccionado para este agente ya no está disponible. Cambia a otro modelo para seguir utilizándolo.',
601
- legendProviderStatus: 'El modelo que usa este agente está teniendo problemas temporales. Puedes esperar a que se restablezca o cambiar a otro modelo.',
602
- changeModel: 'Cambiar modelo',
603
- agents: 'Agentes',
604
- layoutMenuTooltip: 'Disposición del chat',
605
- layoutSidebar: 'Chat lateral',
606
- layoutFullscreen: 'Chat completo',
607
- layoutFloating: 'Chat flotante',
608
- back: 'Volver',
609
- addAgent: 'Agregar nuevo agente',
610
- newAgent: 'Nuevo agente',
611
- editAgent: 'Editar agente',
612
- createAgent: 'Crear Agente',
613
- cancel: 'Cancelar',
614
- accept: 'Aceptar',
615
- deleteAgent: 'Eliminar agente',
616
- "continue": 'Continuar',
617
- edit: 'Editar',
618
- "delete": 'Eliminar',
619
- feedback: 'Enviar Feedback',
620
- sendFeedback: 'Enviar feedback',
621
- saveChanges: 'Guardar cambios',
622
- createAgentLabelButton: 'Crear agente',
623
- openAgentCreator: 'Crear agente',
624
- openMarketplace: 'Marketplace de agentes',
625
- confirmAgentUpdatedWithFilesError: 'El agente se editó exitosamente, pero hay archivos que no pudieron procesarse.',
626
- confirmAgentCreated: 'El agente se ha creado con éxito',
627
- confirmAgentDeleted: 'El agente se ha eliminado con éxito',
628
- confirmAgentWithFilesError: 'El agente se creó exitosamente, pero hay archivos que no pudieron procesarse.',
629
- confirmAgentUpdated: 'El agente se ha actualizado con éxito',
630
- confirmCloseCreateAgent: '¿Estás seguro de que quieres cerrar? Se perderán los cambios realizados.',
631
- confirmCloseEditAgent: '¿Estás seguro de que quieres cerrar? Se perderán los cambios realizados.',
632
- confirmReloadBrowser: '¿Estás seguro de que quieres recargar la página? Se perderán los cambios realizados.',
633
- errorAccessDenied: 'No tienes permisos para acceder a este agente. Contacta con soporte.',
634
- errorAgentCreated: 'Ocurrió un error inesperado. Por favor vuelve a intentarlo.',
635
- attachmentCard: {
636
- download: 'Descargar',
637
- "delete": 'Eliminar'
638
- },
639
- generalSection: {
640
- title: 'General',
641
- generalSettings: 'Configuración general',
642
- requiredFieldsLabel: '*obligatorios',
643
- infoLabel: 'Agrega toda la información para personalizar el comportamiento de tu agente',
644
- optionalLabel: 'Opcional',
645
- basicSettings: 'Configuración básica',
646
- selectEmoji: 'Seleccionar emoji',
647
- name: '¿Cuál es el nombre de tu agente?',
648
- namePlaceholder: 'Asígnale un nombre a tu agente',
649
- behaviorSettings: 'Configuración de comportamiento',
650
- initialPrompt: '¿Cuáles son las instrucciones?',
651
- initialPromptPlaceholder: 'Ejemplo: Eres un social media copywriter que redacta y adapta mensajes para diferentes redes, asegurando consistencia en el tono, la personalidad y los valores de la marca."',
652
- modelAiLabel: 'Modelo de AI',
653
- noModelsAvailable: 'No hay modelos disponibles',
654
- inputPlaceholderTitle: '¿Qué verá el usuario en el campo de chat antes de escribir?',
655
- inputPlaceholder: 'Pregúntame lo que necesites…',
656
- introduction: '¿Cómo se va a presentar tu agente?',
657
- introductionPlaceholder: 'Ejemplo: ¡Hola! 👋. Te voy a ayudar a crear, adaptar y revisar copys para distintas plataformas asegurando que mantengan la voz, el tono y la personalidad de tu marca. Puedes pedirme que te proponga ideas para una campaña, adapte un texto para otro canal o revise la coherencia del mensaje',
658
- error: {
659
- maxCaracterName: 'Completaste los 150 caracteres del límite.',
660
- maxCaracterInitialPrompt: 'Completaste los 5000 caracteres del límite.',
661
- maxInputPlaceholder: 'Completaste los 100 caracteres del límite.',
662
- maxCaracterIntroduction: 'Completaste los 400 caracteres del límite.'
663
- },
664
- howToWritePrompt: 'Cómo redactar un prompt',
665
- whatIsModelAiTitle: '¿Qué modelo de IA vas a usar?',
666
- whatIsModelAi: '¿Qué es un modelo de AI?',
667
- addFavorite: 'Agregar a favoritos',
668
- removeFavorite: 'Quitar de favoritos',
669
- createdBy: 'Por',
670
- createdByTooltip: 'Usuario creador del agente',
671
- createdByTooltipDeleted: 'Usuario eliminado. Su nombre se mantiene para referencia.'
672
- },
673
- knowledgeSection: {
674
- title: 'Conocimiento',
675
- knowledgeTab: 'Base de conocimientos',
676
- infoLabel: 'Carga los archivos que tu agente usará como fuente para sus respuestas.',
677
- selectFileTitle: 'SELECCIONAR ARCHIVOS',
678
- attachFiles: 'Adjuntar archivos',
679
- dropZoneText: {
680
- 1: 'Clic aquí para cargar',
681
- 2: 'o arrastra los archivos'
682
- },
683
- infoFileTypes: '.md, .pdf, .doc, .docx, .ppt, .pptx, .txt, .csv, .png, .jpg, .jpeg, .xls, .xlsx (máx. total de 5MB)',
684
- error: {
685
- title: 'Algunos archivos no se pudieron cargar',
686
- maxFilesTitle: 'Has superado el límite de tamaño total',
687
- maxFilesDescription: 'Solo puedes adjuntar archivos hasta un total de 5 MB. Los siguientes archivos no se pudieron adjuntar:',
688
- maxSizeTitle: 'Superaste el límite de peso permitido',
689
- maxSizeDescription: {
690
- 1: 'Se alcanzó el límite máximo de 5 MB.',
691
- 2: 'Estos archivos no se cargaron porque supera el espacio disponible:'
692
- },
693
- invalidExtensionDescription: {
694
- 1: 'Solo se aceptan archivos con las siguientes extensiones: .md, .pdf, .doc, .docx, .ppt, .pptx, .txt, .csv, .png, .jpg, .jpeg, .xls, .xlsx',
695
- 2: 'Estos archivos no se cargaron porque su extensión no está permitida:'
696
- }
697
- },
698
- moreInfo: 'Mira cómo funciona acá'
699
- },
700
- accessibilitySection: {
701
- titleTab: 'Permisos',
702
- titleSection: 'Visibilidad y permisos del agente',
703
- subtitleSection: 'Definí quién puede usar este agente y si puede acceder a datos de COR.',
704
- corPermissionsTitle: 'Permisos de acceso a datos de COR',
705
- corPermissionsSubtitle: '¿A qué tiene acceso este agente?',
706
- taskAccessTitle: 'Acceso a tareas',
707
- taskAccessDescription: 'El agente podrá leer, crear, modificar y eliminar tareas según los permisos del usuario.',
708
- visibilityTitle: 'Visibilidad del agente',
709
- whoCanAccess: '¿Quién puede usar este agente?',
710
- allCompanyTitle: 'Toda la compañía',
711
- allCompanyDescription: 'Todos los usuarios de tu organización podrán ver y usar este agente.',
712
- clientTitle: 'Para clientes específicos',
713
- clientDescription: 'Asocia este agente a uno o más clientes. Todos los usuarios podrán ver con qué clientes está vinculado.',
714
- ownTitle: 'Solo yo',
715
- ownDescription: 'Este agente será privado y no estará disponible para otros usuarios.',
716
- clientsSelected: 'Clientes seleccionados:',
717
- searchError: '¡Ups! Tuvimos un problema al cargar los clientes. ¿Puedes intentarlo de nuevo en un momento?',
718
- searchEmpty: '¡Ups! No encontramos clientes con ese nombre. Prueba realizando otra búsqueda',
719
- searchInitial: 'Comienza a escribir el nombre de un cliente para asociarlo',
720
- searchPlaceholder: 'Buscar cliente',
721
- clientInactive: 'Este cliente está inactivo. Te recomendamos quitarlo de la lista.',
722
- clientDeletedTooltip: 'Este cliente fue eliminado. Te recomendamos quitarlo de la lista.',
723
- clientDeleted: 'Cliente eliminado',
724
- clientsError: 'Revisa los clientes asociados'
725
- },
726
- processingKnowledge: {
727
- descriptionCreate: 'Estamos creando el Agente y su base de conocimiento. Esto puede llevar unos momentos. Por favor no cierre esta ventana hasta que el proceso se haya finalizado.',
728
- descriptionUpdate: 'Estamos actualizando el Agente y su base de conocimiento. Esto puede llevar unos momentos. Por favor no cierre esta ventana hasta que el proceso se haya finalizado.',
729
- fileRow: 'Archivo',
730
- statusRow: 'Estado',
731
- pending: 'Pendiente',
732
- processing: 'Procesando',
733
- failed: 'Fallo',
734
- done: 'Completado',
735
- loadingFiles: 'Cargando archivos...',
736
- error: {}
737
- },
738
- deleteAgentModal: {
739
- title: '¿Deseas eliminar este agente?',
740
- firstPart: 'Estás por eliminar ',
741
- secondPart: 'Esta acción no se puede deshacer.',
742
- cancel: 'Cancelar',
743
- "delete": 'Eliminar'
744
- }
745
- })), SECTIONS.projectSelector, _objectSpread(_objectSpread({}, genericSection), {}, {
746
- projectSelector: {
747
- title: '¿En qué proyecto te puedo asistir?',
748
- hello: {
749
- title: 'Hola {{name}} 👋',
750
- subtitle: '¿Con qué proyecto puedo ayudarte?'
751
- },
752
- subtitle: 'Selecciona el proyecto para que MAIA te responda en base a un contexto.',
753
- labelProject: 'Selecciona un proyecto',
754
- placeholder: 'Buscar un proyecto por nombre',
755
- changeProject: 'Cambiar de proyecto',
756
- recentProjects: 'Recientes',
757
- searchingProjects: 'Buscando tus proyectos...',
758
- errorMessage: '¡Ups! Tuvimos un problema al cargar los proyectos. Por favor, intenta de nuevo en unos minutos.',
759
- emptyRecentProjects: 'No tienes proyectos recientes. Escribe el nombre de un proyecto en el buscador para encontrarlo.',
760
- emptyState: '¡Ups! No encontramos proyectos con ese nombre. Probá realizando otra búsqueda.',
761
- withoutClient: 'Sin cliente',
762
- withoutTitle: 'Sin título'
763
- }
764
- })), SECTIONS.clientSelector, _objectSpread(_objectSpread({}, genericSection), {}, {
765
- clientSelector: {
766
- title: '¿En qué cliente te puedo asistir?',
767
- hello: {
768
- title: 'Hola {{name}} 👋',
769
- subtitle: '¿Con qué cliente puedo ayudarte?'
770
- },
771
- subtitle: 'Selecciona el cliente para que MAIA te responda en base a un contexto.',
772
- labelClient: 'Selecciona un cliente',
773
- placeholder: 'Buscar cliente por su nombre',
774
- changeClient: 'Cambiar de cliente',
775
- recentClients: 'Recientes',
776
- searchingClients: 'Buscando tus clientes...',
777
- errorMessage: 'Tuvimos un problema al cargar los clientes. Por favor, intenta de nuevo en unos minutos.',
778
- emptyRecentClients: 'No tienes clientes recientes. Escribe el nombre de un cliente en el buscador para encontrarlo.',
779
- emptyState: 'Ups! No encontramos clientes con ese nombre. Probá realizando otra búsqueda.',
780
- project: 'proyecto',
781
- projects: 'proyectos'
782
- }
783
- }));
784
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTRUNUSU9OUyIsIlByb2plY3RTdW1tYXJ5Q29uZmlnS2V5cyIsImdsb2JhbHMiLCJjbG9zZSIsIm1pbmltaXplIiwiaG93V29ya3MiLCJicmFuZE5hbWUiLCJleHBhbmQiLCJjb2xsYXBzZSIsImdvQmFjayIsImNvcHkiLCJjb3BpZWQiLCJzYXZlZCIsInNlbGVjdFByb2plY3QiLCJzYXZlIiwiY2FuY2VsIiwiZXJyb3IiLCJ0aXRsZSIsImRlc2NyaXB0aW9uIiwidHJ5QWdhaW4iLCJnZW5lcmljU2VjdGlvbiIsInByb2plY3RTdW1tYXJ5U2VjdGlvbiIsInJlc3VtZSIsImhlbGxvIiwid2VsY29tZSIsImZlZWRiYWNrIiwidGh1bWJzVXAiLCJ0aHVtYnNEb3duIiwic291cmNlcyIsImNvbmZpZyIsInByb2plY3RTdW1tYXJ5IiwicHJvamVjdFN1bW1hcnlUaXRsZSIsInNlbGVjdGVkUHJvamVjdCIsImNvbmZpZ3VyZVJlc3VtZSIsImdlbmVyYXRpbmdSZXN1bWUiLCJnZW5lcmF0ZVJlc3VtZSIsImhpZGVDb25maWciLCJjb25maWd1cmVTZXR0aW5ncyIsIl9kZWZpbmVQcm9wZXJ0eSIsIkdFTkVSQUxfU1RBVFVTIiwiSU5DT01FX0NPU1RTIiwiVElNRV9IT1VSUyIsIlRBU0tTX1BST0dSRVNTIiwiUkVXT1JLUyIsImhvbWVNZW51IiwiZmFxIiwic3RhcnRUaXRsZSIsImVtcHR5IiwiY2F0ZWdvcmllcyIsInByb2plY3RzIiwidGFza3MiLCJob3VycyIsInJld29ya3MiLCJ1bmRlZmluZWQiLCJmdWEiLCJuZXdCYWRnZSIsInJlY2VudENvbnRleHRzIiwidHlwZXMiLCJjbGllbnQiLCJwcm9qZWN0IiwidGFzayIsImNvbnRleHRIb21lIiwiZ3JlZXRpbmciLCJzdWJ0aXRsZSIsInN1YnRpdGxlQ29sbGFib3JhdG9yIiwic3VidGl0bGVDb2xsYWJvcmF0b3JXaXRoSG91cnMiLCJzdWJ0aXRsZU1hbmFnZXJXaXRoSG91cnMiLCJob3Vyc1NlY3Rpb24iLCJyZWNlbnRUYXNrc1NlY3Rpb24iLCJyZWNlbnRDb250ZXh0c1NlY3Rpb25NYW5hZ2VyIiwiY29udGV4dEdyZWV0aW5nIiwicGxhbm5lckhvbWUiLCJhY3Rpb24iLCJjb2xsYWJvcmF0b3JzIiwibGFiZWxzIiwiY2hlY2tsaXN0cyIsImRlbGl2ZXJhYmxlcyIsImNyZWF0ZWRCeSIsImNyZWF0ZWRCeVRvb2x0aXAiLCJjcmVhdGVkQnlUb29sdGlwRGVsZXRlZCIsInRhc2tHcmVldGluZyIsInRpdGxlXzEiLCJ0aXRsZV8yIiwidGl0bGVfMyIsInRpdGxlUG0iLCJzdWJ0aXRsZVBtIiwibWFpYWtlciIsImNyZWF0ZU1hbnVhbEFnZW50IiwiYmFkZ2VOZXciLCJicmllZkNhcmQiLCJwcm9tcHQiLCJjb21pbmdTb29uQ2FyZCIsIl9vYmplY3RTcHJlYWQiLCJjaGF0QUkiLCJjb250ZXh0TWVudGlvbiIsImtleWJvYXJkSGludCIsInJlY2VudHNUaXRsZSIsInVzZXJOb1Bvc2l0aW9uIiwibWUiLCJ0YWJzIiwidXNlciIsIm1jcCIsInNraWxsIiwibG9hZGluZyIsInJlY2VudHMiLCJ3aXRoUXVlcnkiLCJjb3VudGVycyIsImNvbnRleHRQaW4iLCJhZGRDb250ZXh0Iiwic2VhcmNoUGxhY2Vob2xkZXIiLCJyZW1vdmUiLCJidXR0b24iLCJuZXdDaGF0Iiwib3BlbkFnZW50Q3JlYXRvciIsIm9wZW5NYXJrZXRwbGFjZSIsImhpc3RvcnkiLCJ0b29sdGlwIiwiaXRlbSIsImRhdGUiLCJtZW51IiwicmVuYW1lIiwibG9hZGluZ01vcmUiLCJvbmJvYXJkaW5nIiwibWFpYSIsImFnZW50Q3VzdG9tIiwiaG93Q3JlYXRlQWdlbnQiLCJob3dJdFdvcmtzIiwicWEiLCJpdGVtcyIsInJlbnRhYmlsaWRhZF9wcm95ZWN0byIsImF2YW5jZV9wcm95ZWN0byIsInRhcmVhc19wcm95ZWN0byIsImNoYXQiLCJnZW5lcmF0aW5nIiwiZ2VuZXJhdGluZ0F0dGFjaG1lbnQiLCJnZW5lcmF0aW5nRGVlcFNlYXJjaCIsImdlbmVyYXRpbmdXZWJTZWFyY2giLCJzdWdnZXN0aW9uc1RpdGxlIiwiY3JlYXRlQWdlbnRBY3Rpb25zVGl0bGUiLCJjcmVhdGVBZ2VudEFjdGlvblN0YXJ0Q2hhdCIsImNyZWF0ZUFnZW50QWN0aW9uS25vd2xlZGdlIiwiY3JlYXRlQWdlbnRBY3Rpb25Mb2FkRXJyb3IiLCJ3cml0aW5nIiwiZXhlY3V0aW5nQWN0aW9uIiwicHJvY2Vzc2luZyIsImFjdGl2aXR5IiwicHJlcGFyaW5nIiwiY29uc2lkZXJpbmciLCJhbG1vc3RSZWFkeSIsInRoaW5raW5nIiwiYW5hbHl6aW5nIiwicmV2aWV3aW5nIiwicGxhbm5pbmciLCJzZWFyY2giLCJzY2FubmluZyIsInN1bW1hcml6aW5nIiwiZGVlcFNlYXJjaCIsImV4cGxvcmluZyIsImNyb3NzQ2hlY2tpbmciLCJhdHRhY2htZW50IiwicmVhZGluZyIsImV4dHJhY3RpbmciLCJyZWFkaW5nUGx1cmFsIiwiZXh0cmFjdGluZ1BsdXJhbCIsImNvbXBvc2luZyIsImR5bmFtaWNDb250ZXh0VG9vbHRpcCIsImNyZWF0aW5nVGFzayIsImNyZWF0aW5nVGFza3NCYXRjaCIsImNyZWF0aW5nQWdlbnQiLCJlZGl0aW5nQWdlbnQiLCJlZGl0aW5nVGFzayIsImVkaXRpbmdUYXNrc0JhdGNoIiwiZGVsZXRpbmdUYXNrIiwiZGVsZXRpbmdUYXNrc0JhdGNoIiwiYXNzaWduaW5nVXNlciIsInVuYXNzaWduaW5nVXNlciIsImFzc2lnbmluZ0xhYmVsIiwidXBkYXRpbmdUYXNrVHlwZSIsInVwZGF0aW5nRXN0aW1hdGVkSG91cnMiLCJ1cGRhdGluZ0RlbGl2ZXJhYmxlIiwibG9nZ2luZ0hvdXJzIiwiY3JlYXRpbmdDaGVja2xpc3QiLCJjcmVhdGluZ0xhYmVsIiwiZWRpdGluZ1Byb2plY3QiLCJjcmVhdGluZ0NoZWNrbGlzdEl0ZW0iLCJxdWVyeWluZ0hvdXJzIiwiY29uZmlndXJpbmdBZ2VudEFjY2VzcyIsInNlbmRpbmdUYXNrTWVzc2FnZSIsImRlbGV0aW5nQ2hlY2tsaXN0SXRlbSIsInJlbW92aW5nVGFza1R5cGUiLCJyZW1vdmluZ0xhYmVsIiwidXBkYXRpbmdEZWxpdmVyYWJsZUNvdW50IiwiY3JlYXRpbmdSZXdvcmsiLCJ1cGRhdGluZ1Jld29yayIsImdlbmVyYXRpbmdGaWxlIiwicmVzdW1pbmdBY3Rpb24iLCJmb290ZXIiLCJwbGFjZWhvbGRlciIsIm9yY2hlc3RyYXRvclBsYWNlaG9sZGVyIiwiYWdlbnRMYWJlbCIsImRpc2NsYWltZXIiLCJkaXNjbGFpbWVyQWdlbnQiLCJjb3JBY2Nlc3NMYWJlbCIsImNvckFjY2Vzc1Rvb2x0aXAiLCJyZXRyeSIsImVycm9yQWNjZXNzRGVuaWVkIiwiZXJyb3JQcm9tcHRUb29Mb25nIiwiY2hhbmdlUHJvamVjdCIsInNlYXJjaFdlYiIsImF0dGFjaEZpbGUiLCJwbHVzTWVudUF0dGFjaCIsImRyb3BGaWxlc0hlcmUiLCJwbHVzTWVudURlZXBJbnZlc3RpZ2F0aW9uIiwicGx1c01lbnVRdWlja0FjdGlvbnMiLCJvcGVuUGx1c01lbnVBcmlhIiwib3Blbk1lbnRpb25BcmlhIiwicmVtb3ZlQXR0YWNobWVudEFyaWEiLCJyZW1vdmVBY3RpdmVUb29sQXJpYSIsInNlbmQiLCJsaW1pdEZpbGVzIiwic3RvcCIsImNhbmNlbGxlZCIsInRvb01hbnlBY3RpdmVTZXNzaW9ucyIsImF0dGFjaG1lbnRQcmV2aWV3TW9kYWwiLCJ1bnN1cHBvcnRlZEZpbGVNZXNzYWdlIiwidHlwZUxhYmVsIiwidW5rbm93biIsInNpemVMYWJlbCIsImV4Y2VsIiwic2hlZXRTZWxlY3RvckxhYmVsIiwibG9hZEVycm9yIiwiZmlsZVJlYWRFcnJvciIsInNoZWV0TG9hZEVycm9yIiwid29yZCIsImxlZ2FjeURvY1Vuc3VwcG9ydGVkIiwicHB0IiwibGVnYWN5UHB0VW5zdXBwb3J0ZWQiLCJzbGlkZUxhYmVsIiwiZW1wdHlTbGlkZSIsImRlbGV0ZVF1ZXN0aW9uTW9kYWwiLCJmaXJzdFBhcnQiLCJzZWNvbmRQYXJ0IiwiZGVsZXRlU2tpbGxNb2RhbCIsImVkaXRRdWVzdGlvbk1vZGFsIiwibmV3TmFtZSIsIm1heExlbmd0aCIsIm1vZGFsRmlsZUV4Y2VlZHMiLCJsaW1pdEZpbGVzVGl0bGUiLCJsaW1pdFNpemVUaXRsZSIsImxpbWl0RmlsZXNEZXNjcmlwdGlvbiIsImxpbWl0U2l6ZURlc2NyaXB0aW9uIiwiYWNjZXB0IiwibGltaXQiLCJzb3VyY2VzSW5mb3JtYXRpb25Nb2RhbCIsImFnZW50cyIsIm5ld0FnZW50IiwiY3JlYXRlQWdlbnQiLCJlZGl0IiwiYWRkRmF2b3JpdGUiLCJyZW1vdmVGYXZvcml0ZSIsImZhdm9yaXRlVG9nZ2xlZEFkZGVkU3VjY2VzcyIsImZhdm9yaXRlVG9nZ2xlZFJlbW92ZWRTdWNjZXNzIiwiZmF2b3JpdGVUb2dnbGVkRXJyb3IiLCJmYXZvcml0ZVRvZ2dsZWRSZW1vdmVkRXJyb3IiLCJtYWlhSW50cm9kdWN0aW9uIiwiY29udmVyc2F0aW9ucyIsImFnZW50c1NlY3Rpb25UaXRsZSIsIm1haWFrZXJOYXYiLCJteUFnZW50c05hdiIsIm15U2tpbGxzTmF2IiwiZW1wdHlMYWJlbCIsInVucmVhZExhYmVsIiwibWluaW1pemVkT3BlbiIsIm1pbmltaXplZFNlZUFuc3dlciIsInNlc3Npb25GaW5pc2hlZCIsInNlc3Npb25GaW5pc2hlZEFwcHJvdmFsIiwic2Vzc2lvbkZpbmlzaGVkRXJyb3IiLCJtYXJrZXRwbGFjZSIsImJhY2siLCJteUFnZW50c1RpdGxlIiwibXlBZ2VudHNSZWFkeVRpdGxlIiwibXlBZ2VudHNEZXNjcmlwdGlvbiIsIm15QWdlbnRzRW1wdHlTdGF0ZVRpdGxlIiwibXlBZ2VudHNFbXB0eVN0YXRlRGVzY3JpcHRpb24iLCJteUFnZW50c0VtcHR5U3RhdGVEZXNjcmlwdGlvbk5vUGVybSIsIm15QWdlbnRzRW1wdHlTdGF0ZUJ1dHRvbiIsIm15QWdlbnRzRmFsbGJhY2tJbnRybyIsIm15QWdlbnRzRmFsbGJhY2tEZXNjcmlwdGlvbiIsIm15QWdlbnRzRmFsbGJhY2tEYXRlIiwibXlBZ2VudHNUb2RheSIsIm15QWdlbnRzT25lRGF5QWdvIiwibXlBZ2VudHNEYXlzQWdvIiwiY2FyZE1lbnVBcmlhTGFiZWwiLCJ1c2UiLCJzZWFyY2hBZ2VudFBsYWNlaG9sZGVyIiwic2VhcmNoTWluTGVuZ3RoIiwic2VhcmNoTm9SZXN1bHRzIiwic2VhcmNoTm9SZXN1bHRzU3VidGl0bGUiLCJ1c2VUZW1wbGF0ZSIsInVzZU15QWdlbnQiLCJiYWRnZXMiLCJicmFuZGluZyIsImxpbmtlZGluIiwibWFya2V0aW5nIiwibXlTa2lsbHMiLCJ0YWJNeVNraWxscyIsInRhYlNoYXJlZFNraWxscyIsImRyb3Bkb3duQnV0dG9uIiwiZHJvcGRvd25DcmVhdGUiLCJkcm9wZG93bkVtcHR5IiwiZHJvcGRvd25FcnJvciIsIm15U2tpbGxzRGVzY3JpcHRpb24iLCJzaGFyZWRTa2lsbHNEZXNjcmlwdGlvbiIsImNyZWF0ZU1hbnVhbGx5IiwidmlzaWJpbGl0eU9ubHlNZSIsInZpc2liaWxpdHlFdmVyeW9uZSIsInNoYXJlZEVtcHR5U3RhdGVUaXRsZSIsInNoYXJlZEVtcHR5U3RhdGVEZXNjcmlwdGlvbiIsImNyZWF0ZVNraWxsIiwicHJldmlldyIsInByZXZpZXdFbXB0eSIsInVwbG9hZE1kIiwidXBsb2FkRXJyb3IiLCJjcmVhdGVXaXRoTWFpYSIsIndyaXRlSW5zdHJ1Y3Rpb25zIiwidXBsb2FkU2tpbGwiLCJnZW5lcmF0ZVBsYWNlaG9sZGVyIiwiZ2VuZXJhdGVXaXRoTWFpYSIsImdlbmVyYXRlTmVlZHNOYW1lIiwiZ2VuZXJhdGVTdWNjZXNzIiwiZ2VuZXJhdGVFcnJvciIsImNyZWF0ZVRpdGxlIiwiZWRpdFRpdGxlIiwidmlld1RpdGxlIiwic2hhcmVkQ3JlYXRlZEJ5IiwibmFtZUxhYmVsIiwibmFtZVBsYWNlaG9sZGVyIiwiZGVzY3JpcHRpb25MYWJlbCIsImRlc2NyaXB0aW9uUGxhY2Vob2xkZXIiLCJpbnN0cnVjdGlvbnNMYWJlbCIsInNoYXJlV2l0aENvbXBhbnkiLCJsYXN0VXBkYXRlZCIsInNhdmVBbmRVc2UiLCJjb250ZW50TGFiZWwiLCJjb250ZW50UGxhY2Vob2xkZXIiLCJlbXB0eVN0YXRlVGl0bGUiLCJlbXB0eVN0YXRlRGVzY3JpcHRpb24iLCJlbXB0eVN0YXRlRGVzY3JpcHRpb25Ob1Blcm0iLCJlbXB0eVN0YXRlQnV0dG9uIiwic2VhcmNoRW1wdHlTdGF0ZVRpdGxlIiwic2VhcmNoRW1wdHlTdGF0ZURlc2NyaXB0aW9uIiwiY3JlYXRlU3VjY2VzcyIsImNyZWF0ZUVycm9yIiwidXBkYXRlU3VjY2VzcyIsInVwZGF0ZUVycm9yIiwiZGVsZXRlU3VjY2VzcyIsImRlbGV0ZUVycm9yIiwic25hY2tiYXIiLCJkZWxldGVDaGF0Iiwic3VjY2VzcyIsInJlbmFtZWRDaGF0IiwibG9hZE1vcmVBZ2VudHMiLCJhcHByb3ZhbEJveCIsInVudGl0bGVkQWdlbnQiLCJhY3Rpb25zIiwiY3JlYXRlX3Rhc2siLCJjcmVhdGVfdGFza3NfYmF0Y2giLCJjcmVhdGVfYWdlbnQiLCJlZGl0X2FnZW50IiwiZWRpdF9wcm9qZWN0IiwiZWRpdF90YXNrIiwiZWRpdF90YXNrc19iYXRjaCIsImRlbGV0ZV90YXNrIiwiZGVsZXRlX3Rhc2tzX2JhdGNoIiwidGFza19hc3NpZ24iLCJ0YXNrX3VuYXNzaWduIiwiYXNzaWduX3Rhc2tfbGFiZWwiLCJjcmVhdGVfbGFiZWxzIiwidXBkYXRlX3Rhc2tfdHlwZSIsInVwZGF0ZV9lc3RpbWF0ZWRfaG91cnMiLCJ1cGRhdGVfZGVsaXZlcmFibGUiLCJjcmVhdGVfaG91ciIsImNyZWF0ZV9jaGVja2xpc3QiLCJjcmVhdGVfY2hlY2tsaXN0X2l0ZW0iLCJjbG9uZV90YXNrIiwiZ2V0X3Rhc2tfZGF0ZV9ob3VycyIsImNvbmZpZ3VyZV9hZ2VudF9hY2Nlc3MiLCJzZW5kX3Rhc2tfbWVzc2FnZSIsImRlbGV0ZV9jaGVja2xpc3RfaXRlbSIsInJlbW92ZV90YXNrX3R5cGUiLCJyZW1vdmVfdGFza19sYWJlbCIsImNvdW50X2RlbGl2ZXJhYmxlIiwiY3JlYXRlX3Jld29yayIsInVwZGF0ZV9yZXdvcmsiLCJkZWxldGVfYWdlbnQiLCJzcGVjaWFsIiwiY3JlYXRlUmV3b3JrIiwidXBkYXRlRGVsaXZlcmFibGVDaGlsZHJlbiIsImZpZWxkcyIsIm5hbWUiLCJlbW9qaSIsImludHJvZHVjdGlvbiIsImlucHV0X3BsYWNlaG9sZGVyIiwidXNlcl9wcm9tcHQiLCJsYW5ndWFnZSIsInByb3ZpZGVyIiwibW9kZWxfbmFtZSIsImFwaV9rZXkiLCJhcHByb3ZlIiwiZGVueSIsIm1hbnVhbEFwcHJvdmFsV2FybmluZyIsInN0YXR1cyIsImFwcHJvdmVkIiwiZGVuaWVkIiwiY2hpcExsbSIsImNsaWVudFNlbGVjdG9yIiwiYWJtQWdlbnQiLCJsZWdlbmREZWxldGVkQWdlbnQiLCJsZWdlbmRQcm9qZWN0RGVsZXRlZCIsImxlZ2VuZE5vQWNjZXNzIiwibGVnZW5kTm9QZXJtaXNzaW9ucyIsImxlZ2VuZExlZ2FjeUNvbnRleHRTZXNzaW9uIiwiY29udGludWVJbk5ld0NoYXQiLCJsZWdlbmRNb2RlbERlcHJlY2F0ZWQiLCJsZWdlbmRQcm92aWRlclN0YXR1cyIsImNoYW5nZU1vZGVsIiwibGF5b3V0TWVudVRvb2x0aXAiLCJsYXlvdXRTaWRlYmFyIiwibGF5b3V0RnVsbHNjcmVlbiIsImxheW91dEZsb2F0aW5nIiwiYWRkQWdlbnQiLCJlZGl0QWdlbnQiLCJkZWxldGVBZ2VudCIsInNlbmRGZWVkYmFjayIsInNhdmVDaGFuZ2VzIiwiY3JlYXRlQWdlbnRMYWJlbEJ1dHRvbiIsImNvbmZpcm1BZ2VudFVwZGF0ZWRXaXRoRmlsZXNFcnJvciIsImNvbmZpcm1BZ2VudENyZWF0ZWQiLCJjb25maXJtQWdlbnREZWxldGVkIiwiY29uZmlybUFnZW50V2l0aEZpbGVzRXJyb3IiLCJjb25maXJtQWdlbnRVcGRhdGVkIiwiY29uZmlybUNsb3NlQ3JlYXRlQWdlbnQiLCJjb25maXJtQ2xvc2VFZGl0QWdlbnQiLCJjb25maXJtUmVsb2FkQnJvd3NlciIsImVycm9yQWdlbnRDcmVhdGVkIiwiYXR0YWNobWVudENhcmQiLCJkb3dubG9hZCIsImdlbmVyYWxTZWN0aW9uIiwiZ2VuZXJhbFNldHRpbmdzIiwicmVxdWlyZWRGaWVsZHNMYWJlbCIsImluZm9MYWJlbCIsIm9wdGlvbmFsTGFiZWwiLCJiYXNpY1NldHRpbmdzIiwic2VsZWN0RW1vamkiLCJiZWhhdmlvclNldHRpbmdzIiwiaW5pdGlhbFByb21wdCIsImluaXRpYWxQcm9tcHRQbGFjZWhvbGRlciIsIm1vZGVsQWlMYWJlbCIsIm5vTW9kZWxzQXZhaWxhYmxlIiwiaW5wdXRQbGFjZWhvbGRlclRpdGxlIiwiaW5wdXRQbGFjZWhvbGRlciIsImludHJvZHVjdGlvblBsYWNlaG9sZGVyIiwibWF4Q2FyYWN0ZXJOYW1lIiwibWF4Q2FyYWN0ZXJJbml0aWFsUHJvbXB0IiwibWF4SW5wdXRQbGFjZWhvbGRlciIsIm1heENhcmFjdGVySW50cm9kdWN0aW9uIiwiaG93VG9Xcml0ZVByb21wdCIsIndoYXRJc01vZGVsQWlUaXRsZSIsIndoYXRJc01vZGVsQWkiLCJrbm93bGVkZ2VTZWN0aW9uIiwia25vd2xlZGdlVGFiIiwic2VsZWN0RmlsZVRpdGxlIiwiYXR0YWNoRmlsZXMiLCJkcm9wWm9uZVRleHQiLCJpbmZvRmlsZVR5cGVzIiwibWF4RmlsZXNUaXRsZSIsIm1heEZpbGVzRGVzY3JpcHRpb24iLCJtYXhTaXplVGl0bGUiLCJtYXhTaXplRGVzY3JpcHRpb24iLCJpbnZhbGlkRXh0ZW5zaW9uRGVzY3JpcHRpb24iLCJtb3JlSW5mbyIsImFjY2Vzc2liaWxpdHlTZWN0aW9uIiwidGl0bGVUYWIiLCJ0aXRsZVNlY3Rpb24iLCJzdWJ0aXRsZVNlY3Rpb24iLCJjb3JQZXJtaXNzaW9uc1RpdGxlIiwiY29yUGVybWlzc2lvbnNTdWJ0aXRsZSIsInRhc2tBY2Nlc3NUaXRsZSIsInRhc2tBY2Nlc3NEZXNjcmlwdGlvbiIsInZpc2liaWxpdHlUaXRsZSIsIndob0NhbkFjY2VzcyIsImFsbENvbXBhbnlUaXRsZSIsImFsbENvbXBhbnlEZXNjcmlwdGlvbiIsImNsaWVudFRpdGxlIiwiY2xpZW50RGVzY3JpcHRpb24iLCJvd25UaXRsZSIsIm93bkRlc2NyaXB0aW9uIiwiY2xpZW50c1NlbGVjdGVkIiwic2VhcmNoRXJyb3IiLCJzZWFyY2hFbXB0eSIsInNlYXJjaEluaXRpYWwiLCJjbGllbnRJbmFjdGl2ZSIsImNsaWVudERlbGV0ZWRUb29sdGlwIiwiY2xpZW50RGVsZXRlZCIsImNsaWVudHNFcnJvciIsInByb2Nlc3NpbmdLbm93bGVkZ2UiLCJkZXNjcmlwdGlvbkNyZWF0ZSIsImRlc2NyaXB0aW9uVXBkYXRlIiwiZmlsZVJvdyIsInN0YXR1c1JvdyIsInBlbmRpbmciLCJmYWlsZWQiLCJkb25lIiwibG9hZGluZ0ZpbGVzIiwiZGVsZXRlQWdlbnRNb2RhbCIsInByb2plY3RTZWxlY3RvciIsImxhYmVsUHJvamVjdCIsInJlY2VudFByb2plY3RzIiwic2VhcmNoaW5nUHJvamVjdHMiLCJlcnJvck1lc3NhZ2UiLCJlbXB0eVJlY2VudFByb2plY3RzIiwiZW1wdHlTdGF0ZSIsIndpdGhvdXRDbGllbnQiLCJ3aXRob3V0VGl0bGUiLCJsYWJlbENsaWVudCIsImNoYW5nZUNsaWVudCIsInJlY2VudENsaWVudHMiLCJzZWFyY2hpbmdDbGllbnRzIiwiZW1wdHlSZWNlbnRDbGllbnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xhbmcvZXMvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU0VDVElPTlMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvY29uZmlnJ1xuaW1wb3J0IHsgUHJvamVjdFN1bW1hcnlDb25maWdLZXlzIH0gZnJvbSAnLi4vLi4vdHlwZXMvUHJvamVjdFN1bW1hcnlDb25maWdLZXlzJ1xuXG5jb25zdCBnbG9iYWxzID0ge1xuICBjbG9zZTogJ0NlcnJhcicsXG4gIG1pbmltaXplOiAnTWluaW1pemFyJyxcbiAgaG93V29ya3M6ICdDw7NtbyBmdW5jaW9uYT8nLFxuICBicmFuZE5hbWU6ICdNQUlBJyxcbiAgZXhwYW5kOiAnRXhwYW5kaXInLFxuICBjb2xsYXBzZTogJ0NvbGFwc2FyJyxcbiAgZ29CYWNrOiAnVm9sdmVyIGFsIGluaWNpbycsXG4gIGNvcHk6ICdDb3BpYXInLFxuICBjb3BpZWQ6ICdDb3BpYWRvJyxcbiAgc2F2ZWQ6ICdHdWFyZGFkbycsXG4gIHNlbGVjdFByb2plY3Q6ICdTZWxlY2Npb25hciBwcm95ZWN0bycsXG4gIHNhdmU6ICdHdWFyZGFyJyxcbiAgY2FuY2VsOiAnQ2FuY2VsYXInLFxufVxuXG5jb25zdCBlcnJvciA9IHtcbiAgdGl0bGU6ICdIYSBvY3VycmlkbyB1biBwcm9ibGVtYScsXG4gIGRlc2NyaXB0aW9uOiAnRW4gZXN0b3MgbW9tZW50b3MgZXN0YW1vcyBleHBlcmltZW50YW5kbyBhbGd1bm9zIGluY29udmVuaWVudGVzLCBwb3IgZmF2b3IsIGludGVudGUgZW4gdW5vcyBtaW51dG9zLicsXG4gIHRyeUFnYWluOiAnVm9sdmVyIGEgaW50ZW50YXInLFxufVxuXG5jb25zdCBnZW5lcmljU2VjdGlvbiA9IHtcbiAgZXJyb3IsXG4gIGdsb2JhbHMsXG59XG5cbmNvbnN0IHByb2plY3RTdW1tYXJ5U2VjdGlvbiA9IHtcbiAgcmVzdW1lOiAnUmVzdW1pcicsXG4gIGhlbGxvOiAnwqFIb2xhLCB7e25hbWV9fSEnLFxuICB3ZWxjb21lOiAnU295IE1BSUEsIHR1IGFzaXN0ZW50ZSBlbiBDT1InLFxuXG4gIGZlZWRiYWNrOiB7XG4gICAgdGh1bWJzVXA6ICdNZSBzaXJ2acOzJyxcbiAgICB0aHVtYnNEb3duOiAnTm8gbWUgc2lydmnDsycsXG4gICAgc291cmNlczogJ0Z1ZW50ZXMnLFxuICB9LFxuXG4gIGNvbmZpZzoge1xuICAgIHByb2plY3RTdW1tYXJ5OiAnUmVzdW1pciBwcm95ZWN0bycsXG4gICAgcHJvamVjdFN1bW1hcnlUaXRsZTogJ1Jlc3VtZW4gZGUgcHJveWVjdG9zJyxcbiAgICBnb0JhY2s6ICdWb2x2ZXIgYXRyw6FzJyxcbiAgICBzZWxlY3RlZFByb2plY3Q6ICdQcm95ZWN0byBzZWxlY2Npb25hZG8nLFxuICAgIHNlbGVjdFByb2plY3Q6ICdTZWxlY2Npb25hciBwcm95ZWN0bycsXG4gICAgY29uZmlndXJlUmVzdW1lOiAnQ29uZmlndXJhY2nDs24gYXZhbnphZGEnLFxuICAgIGdlbmVyYXRpbmdSZXN1bWU6ICdHZW5lcmFuZG8gcmVzdW1lbicsXG4gICAgZ2VuZXJhdGVSZXN1bWU6ICdHZW5lcmFyJyxcbiAgICBoaWRlQ29uZmlnOiAnT2N1bHRhciBjb25maWd1cmFjacOzbicsXG4gIH0sXG5cbiAgY29uZmlndXJlU2V0dGluZ3M6IHtcbiAgICBbUHJvamVjdFN1bW1hcnlDb25maWdLZXlzLkdFTkVSQUxfU1RBVFVTXTogJ0ZlY2hhcyB5IGRlYWRsaW5lcycsXG4gICAgW1Byb2plY3RTdW1tYXJ5Q29uZmlnS2V5cy5JTkNPTUVfQ09TVFNdOiAnUmVudGFiaWxpZGFkJyxcbiAgICBbUHJvamVjdFN1bW1hcnlDb25maWdLZXlzLlRJTUVfSE9VUlNdOiAnRXN0aW1hY2nDs24gZGUgaG9yYXMgeSBjb25zdW1vJyxcbiAgICBbUHJvamVjdFN1bW1hcnlDb25maWdLZXlzLlRBU0tTX1BST0dSRVNTXTogJ1RhcmVhcyB5IGF2YW5jZXMnLFxuICAgIFtQcm9qZWN0U3VtbWFyeUNvbmZpZ0tleXMuUkVXT1JLU106ICdSZXRyYWJham9zJyxcbiAgfSxcbn1cblxuY29uc3QgaG9tZU1lbnUgPSB7XG4gIHByb2plY3RTdW1tYXJ5OiB7XG4gICAgdGl0bGU6ICdSZXN1bWVuIGRlbCBwcm95ZWN0bycsXG4gICAgZGVzY3JpcHRpb246ICdFbGFib3JhIGluZm9ybWVzIGNvbiBBSSBiYXNhZG8gZW4gdHUgcHJveWVjdG8nLFxuICB9LFxuICBmYXE6IHtcbiAgICB0aXRsZTogJ1ByZWd1bnRhcyBmcmVjdWVudGVzJyxcbiAgICBzdGFydFRpdGxlOiAnUHVlZGVzIGNvbWVuemFyIHBvci4uLicsXG4gICAgZW1wdHk6ICdObyBoYXkgcHJlZ3VudGFzIGZyZWN1ZW50ZXMnLFxuICAgIGVycm9yOiAnwqFVcHMhIFR1dmltb3MgdW4gcHJvYmxlbWEgYWwgY2FyZ2FyIGxhcyBwcmVndW50YXMgZnJlY3VlbnRlcy4gUG9yIGZhdm9yLCBpbnRlbnRhIGRlIG51ZXZvIGVuIHVub3MgbWludXRvcy4nLFxuICAgIGNhdGVnb3JpZXM6IHtcbiAgICAgIHByb2plY3RzOiAnUHJveWVjdG8nLFxuICAgICAgdGFza3M6ICdUYXJlYXMnLFxuICAgICAgaG91cnM6ICdIb3JhcycsXG4gICAgICByZXdvcmtzOiAnUmV0cmFiYWpvcycsXG4gICAgICB1bmRlZmluZWQ6ICdTaW4gY2F0ZWdvcsOtYScsXG4gICAgfSxcbiAgfSxcbiAgZnVhOiB7XG4gICAgdGl0bGU6ICdBY2Npb25lcyBmcmVjdWVudGVzJyxcbiAgICBuZXdCYWRnZTogJ051ZXZvJyxcbiAgICBlcnJvcjogJ8KhVXBzISBUdXZpbW9zIHVuIHByb2JsZW1hIGFsIGNhcmdhciBsYXMgYWNjaW9uZXMgZnJlY3VlbnRlcy4gUG9yIGZhdm9yLCBpbnRlbnRhIGRlIG51ZXZvIGVuIHVub3MgbWludXRvcy4nLFxuICB9LFxuICByZWNlbnRDb250ZXh0czoge1xuICAgIHRpdGxlOiAnRWxpZ2UgdW4gY29udGV4dG8gcmVjaWVudGUgcGFyYSBtYXlvciBwcmVjaXNpw7NuIGVuIGxhIHJlc3B1ZXN0YTonLFxuICAgIHR5cGVzOiB7XG4gICAgICBjbGllbnQ6ICdDbGllbnRlJyxcbiAgICAgIHByb2plY3Q6ICdQcm95ZWN0bycsXG4gICAgICB0YXNrOiAnVGFyZWEnLFxuICAgIH0sXG4gIH0sXG4gIGNvbnRleHRIb21lOiB7XG4gICAgZ3JlZXRpbmc6ICdIb2xhLCB7e25hbWV9fSDwn5GLJyxcbiAgICBzdWJ0aXRsZTogJ1NveSBNQUlBLCB0dSBhc2lzdGVudGUgZW4gdGFyZWFzLCBwcm95ZWN0b3MgeSBjbGllbnRlcy5cXG7Cv1NlZ3VpbW9zIGNvbiBhbGdvIHJlY2llbnRlPycsXG4gICAgc3VidGl0bGVDb2xsYWJvcmF0b3I6ICdTb3kgTUFJQSwgdHUgYXNpc3RlbnRlIGVuIHRhcmVhcy4gwr9TZWd1aW1vcyBjb24gYWxnbyByZWNpZW50ZT8nLFxuICAgIHN1YnRpdGxlQ29sbGFib3JhdG9yV2l0aEhvdXJzOiAnQ29tcGxldMOhIHR1cyBob3JhcyBvIGVtcGV6w6EgdW4gY2hhdCBzb2JyZSB1bmEgdGFyZWEuJyxcbiAgICBzdWJ0aXRsZU1hbmFnZXJXaXRoSG91cnM6ICfCv1BvciBkw7NuZGUgcXVpZXJlcyBlbXBlemFyPycsXG4gICAgaG91cnNTZWN0aW9uOiB7XG4gICAgICB0aXRsZTogJ0NhcmdhIGhvcmFzJyxcbiAgICB9LFxuICAgIHJlY2VudFRhc2tzU2VjdGlvbjoge1xuICAgICAgdGl0bGU6ICdDb25zdWx0YSBzb2JyZSB1bmEgdGFyZWEnLFxuICAgICAgc3VidGl0bGU6ICdFbGVnw60gdW5hIHRhcmVhIHJlY2llbnRlIHBhcmEgdXNhcmxhIGNvbW8gY29udGV4dG8uJyxcbiAgICB9LFxuICAgIHJlY2VudENvbnRleHRzU2VjdGlvbk1hbmFnZXI6IHtcbiAgICAgIHRpdGxlOiAnTyByZXRvbWEgYWxnbyByZWNpZW50ZScsXG4gICAgICBzdWJ0aXRsZTogJ0VsZWfDrSB1bmEgdGFyZWEsIHByb3llY3RvIG8gY2xpZW50ZSBwYXJhIHVzYXJsbyBjb21vIGNvbnRleHRvJyxcbiAgICB9LFxuICAgIGNvbnRleHRHcmVldGluZzoge1xuICAgICAgcHJvamVjdDogJ8K/UXXDqSBxdWllcmVzIHF1ZSBhbmFsaWNlbW9zPyDCv0hvcmFzLCBlc3RpbWFjaW9uZXMsIHJldHJhYmFqb3M/LCDCoXR1IGVsaWdlcyEnLFxuICAgICAgdGFzazogJ0VzdG95IGFxdcOtIHBhcmEgYXl1ZGFydGUgY29uIGVzdGEgdGFyZWEuIFVzYSB1bmEgZGUgbGFzIGZ1bmNpb25lcyBwYXJhIGNvbWVuemFyLicsXG4gICAgICBjbGllbnQ6ICfCv1F1w6kgcXVpZXJlcyBxdWUgYW5hbGljZW1vcz8gwr9SZW50YWJpbGlkYWQsIGF2YW5jZXMsIGRlYWRsaW5lcz8gwqFUw7ogZWxpZ2VzIScsXG4gICAgfSxcbiAgfSxcbiAgcGxhbm5lckhvbWU6IHtcbiAgICB0aXRsZTogJ0VtcGVjZW1vcyBjb24gdHUgY2FyZ2EgZGUgaG9yYXMnLFxuICAgIHN1YnRpdGxlOiAnwr9Qb3IgZMOzbmRlIGNvbWVuemFtb3M/JyxcbiAgfSxcbiAgYWN0aW9uOiB7XG4gICAgY2F0ZWdvcmllczoge1xuICAgICAgdGFza3M6ICdBY2Npb25lcyBzb2JyZSB0YXJlYXMnLFxuICAgICAgY29sbGFib3JhdG9yczogJ0NvbGFib3JhZG9yZXMgeSByZXNwb25zYWJsZXMnLFxuICAgICAgbGFiZWxzOiAnRXRpcXVldGFzIHkgdGlwb3MnLFxuICAgICAgY2hlY2tsaXN0czogJ0NoZWNrbGlzdHMnLFxuICAgICAgZGVsaXZlcmFibGVzOiAnRW50cmVnYWJsZXMnLFxuICAgICAgcmV3b3JrczogJ1JldHJhYmFqb3MnLFxuICAgICAgaG91cnM6ICdDYXJnYSBkZSBob3JhcycsXG4gICAgfSxcbiAgfSxcbiAgY3JlYXRlZEJ5OiAncG9yJyxcbiAgY3JlYXRlZEJ5VG9vbHRpcDogJ1VzdWFyaW8gY3JlYWRvciBkZWwgYWdlbnRlJyxcbiAgY3JlYXRlZEJ5VG9vbHRpcERlbGV0ZWQ6ICdVc3VhcmlvIGVsaW1pbmFkby4gU3Ugbm9tYnJlIHNlIG1hbnRpZW5lIHBhcmEgcmVmZXJlbmNpYS4nLFxuICB0YXNrR3JlZXRpbmc6ICdFc3RveSBhcXXDrSBwYXJhIGF5dWRhcnRlIGNvbiBlc3RhIHRhcmVhLiBVc2EgdW5hIGRlIGxhcyBmdW5jaW9uZXMgcGFyYSBjb21lbnphci4nLFxuICBoZWxsbzoge1xuICAgIHRpdGxlOiAnwqFMaXN0byEgWWEgZXN0b3kgdXNhbmRvIGVsIHByb3llY3RvJyxcbiAgICB0aXRsZV8xOiAnQW50aWNpcGEgZGVzdsOtb3MuIEFuYWxpY2Vtb3MgZXN0ZSBwcm95ZWN0by4nLFxuICAgIHRpdGxlXzI6ICfCv1F1w6kgcXVpZXJlcyBxdWUgYW5hbGljZW1vcz8gwr9Ib3JhcywgZXN0aW1hY2lvbmVzLCByZXRyYWJham9zPywgwqF0dSBlbGlnZXMhJyxcbiAgICB0aXRsZV8zOiAnUmV2aXNlbW9zIGVsIGF2YW5jZSBkZSBlc3RlIHByb3llY3RvLicsXG4gICAgc3VidGl0bGU6ICdQYXJhIGVtcGV6YXIsIHRlIHB1ZWRvIGF5dWRhciBjb24gZXN0YXMgb3BjaW9uZXMuIE8gc2kgbm8sIMKhZXNjcsOtYmVtZSBkaXJlY3RhbWVudGUgdHUgY29uc3VsdGEhJyxcbiAgICB0aXRsZVBtOiAnwqFIb2xhLCB7e25hbWV9fSEgU295IHt7YWdlbnR9fSwgdHUgYXNpc3RlbnRlLicsXG4gICAgc3VidGl0bGVQbTpcbiAgICAgICdQYXJhIGRhcnRlIHJlc3B1ZXN0YXMgcHJlY2lzYXMsIHByaW1lcm8gbmVjZXNpdG8gc2FiZXIgc29icmUgcXXDqSBwcm95ZWN0byB2YW1vcyBhIGNvbnZlcnNhci4gwr9DdcOhbCBlbGlnZXM/JyxcbiAgfSxcbiAgbWFpYWtlcjoge1xuICAgIHRpdGxlOiAnQ29udmllcnRlIHByb2Nlc29zIHJlcGV0aXRpdm9zIGVuIGFnZW50ZXMgaW50ZWxpZ2VudGVzJyxcbiAgICBkZXNjcmlwdGlvbjogJ0NyZWEgYWdlbnRlcyBxdWUgYW5hbGljZW4sIGdlbmVyZW4gY29udGVuaWRvIHNlZ8O6biB0dXMgbmVjZXNpZGFkZXMuJyxcbiAgICBjcmVhdGVNYW51YWxBZ2VudDogJ0NyZWFyIGFnZW50ZSBtYW51YWxtZW50ZScsXG4gICAgYmFkZ2VOZXc6ICdOdWV2bycsXG4gICAgYnJpZWZDYXJkOiB7XG4gICAgICB0aXRsZTogJ0FnZW50ZSBlc3BlY2lhbGlzdGEgZW4gYnJpZWYnLFxuICAgICAgZGVzY3JpcHRpb246ICdDcmVhIHkgbWVqb3JhIGJyaWVmcyBwYXJhIHF1ZSBlc3TDqW4gbGlzdG9zIHBhcmEgdXNhciBlbiB0YXJlYXMuJyxcbiAgICAgIHByb21wdDogJ1F1aWVybyBjcmVhciB1biBhZ2VudGUgZXNwZWNpYWxpc3RhIGVuIGJyaWVmLicsXG4gICAgfSxcbiAgICBjb21pbmdTb29uQ2FyZDoge1xuICAgICAgdGl0bGU6ICdNw6FzIHByw7N4aW1hbWVudGUnLFxuICAgICAgZGVzY3JpcHRpb246ICdFc3RhbW9zIHRyYWJhamFuZG8gcGFyYSBicmluZGFydGUgbcOhcyBhZ2VudGVzJyxcbiAgICB9LFxuICB9LFxufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIFtTRUNUSU9OUy5wcm9qZWN0U3VtbWFyeV06IHtcbiAgICAuLi5nZW5lcmljU2VjdGlvbixcbiAgICAuLi5wcm9qZWN0U3VtbWFyeVNlY3Rpb24sXG4gIH0sXG4gIFtTRUNUSU9OUy5jaGF0QUldOiB7XG4gICAgLi4uZ2VuZXJpY1NlY3Rpb24sXG4gICAgLi4ucHJvamVjdFN1bW1hcnlTZWN0aW9uLFxuICAgIGhvbWVNZW51LFxuXG4gICAgY29udGV4dE1lbnRpb246IHtcbiAgICAgIGtleWJvYXJkSGludDogJ05hdmVnYWNpw7NuIGVudHJlIHBlc3Rhw7FhczogQCwgQEDigKYgZW4gb3JkZW4uIFRhbWJpw6luIEFsdC9DbWQgKyDihpAv4oaSJyxcbiAgICAgIHJlY2VudHNUaXRsZTogJ1JlY2llbnRlcycsXG4gICAgICB1c2VyTm9Qb3NpdGlvbjogJ1NpbiBwb3NpY2nDs24nLFxuICAgICAgbWU6ICdZbycsXG4gICAgICB0YWJzOiB7XG4gICAgICAgIGNsaWVudDogJ0NsaWVudGUnLFxuICAgICAgICBwcm9qZWN0OiAnUHJveWVjdG8nLFxuICAgICAgICB0YXNrOiAnVGFyZWEnLFxuICAgICAgICB1c2VyOiAnVXN1YXJpbycsXG4gICAgICAgIG1jcDogJ0NvbmVjdG9yZXMnLFxuICAgICAgICBza2lsbDogJ0hhYmlsaWRhZGVzJyxcbiAgICAgIH0sXG4gICAgICBsb2FkaW5nOiAnQnVzY2FuZG8uLi4nLFxuICAgICAgZXJyb3I6ICdUdXZpbW9zIHVuIHByb2JsZW1hIGFsIGJ1c2Nhci4gSW50ZW50w6EgZGUgbnVldm8uJyxcbiAgICAgIGVtcHR5OiB7XG4gICAgICAgIHJlY2VudHM6ICdFbXBlesOhIGEgZXNjcmliaXIgcGFyYSBidXNjYXInLFxuICAgICAgICB3aXRoUXVlcnk6ICdObyBoYXkgcmVzdWx0YWRvcyBwYXJhIFwie3txdWVyeX19XCInLFxuICAgICAgfSxcbiAgICAgIGNvdW50ZXJzOiB7XG4gICAgICAgIHByb2plY3RzOiAncHJveWVjdG9zJyxcbiAgICAgICAgdGFza3M6ICd0YXJlYXMnLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGNvbnRleHRQaW46IHtcbiAgICAgIGFkZENvbnRleHQ6ICdDb250ZXh0byBnbG9iYWwnLFxuICAgICAgc2VhcmNoUGxhY2Vob2xkZXI6ICdCdXNjYXIgY29udGV4dG/igKYnLFxuICAgICAgcmVtb3ZlOiAnUXVpdGFyIGNvbnRleHRvJyxcbiAgICB9LFxuICAgIGJ1dHRvbjogJ0lBJyxcbiAgICB0aXRsZTogJ8KhSG9sYSwge3tuYW1lfX0hJyxcbiAgICBkZXNjcmlwdGlvbjogJ1NveSBNQUlBIHR1IGFzaXN0ZW50ZSB5IGVzdG95IGFxdcOtIHBhcmEgYXl1ZGFydGUgY29uIHR1cyBjb25zdWx0YXMuJyxcbiAgICBuZXdDaGF0OiAnTnVldm8gY2hhdCcsXG4gICAgb3BlbkFnZW50Q3JlYXRvcjogJ0NyZWFyIGFnZW50ZScsXG4gICAgb3Blbk1hcmtldHBsYWNlOiAnTWFya2V0cGxhY2UgZGUgYWdlbnRlcycsXG4gICAgaGlzdG9yeToge1xuICAgICAgdG9vbHRpcDogJ0hpc3RvcmlhbCcsXG4gICAgICB0aXRsZTogJ0hpc3RvcmlhbCB2YWPDrW8nLFxuICAgICAgZGVzY3JpcHRpb246ICdObyBzZSBoYW4gZW5jb250cmFkbyBjb252ZXJzYWNpb25lcycsXG4gICAgICBpdGVtOiB7XG4gICAgICAgIGRhdGU6ICfDmmx0aW1hIGFjdHVhbGl6YWNpw7NuIHt7ZGF0ZX19JyxcbiAgICAgIH0sXG4gICAgICBtZW51OiB7XG4gICAgICAgIHJlbmFtZTogJ1Jlbm9tYnJhcicsXG4gICAgICAgIGRlbGV0ZTogJ0VsaW1pbmFyJyxcbiAgICAgIH0sXG4gICAgICBsb2FkaW5nTW9yZTogJ0NhcmdhbmRvIG3DoXMgY29udmVyc2FjaW9uZXMnLFxuICAgIH0sXG4gICAgb25ib2FyZGluZzoge1xuICAgICAgbWFpYTogJ01BSUEnLFxuICAgICAgYWdlbnRDdXN0b206ICdBZ2VudGVzIGN1c3RvbScsXG4gICAgICBob3dDcmVhdGVBZ2VudDogJ8K/Q8OzbW8gY3JlYXIgdW4gYWdlbnRlPycsXG4gICAgICB0b29sdGlwOiAnwr9Dw7NtbyBmdW5jaW9uYT8nLFxuICAgICAgaG93SXRXb3JrczogJ8K/Q8OzbW8gZnVuY2lvbmE/JyxcbiAgICB9LFxuICAgIHFhOiB7XG4gICAgICB0aXRsZTogJ1ByZWd1bnRhcyBmcmVjdWVudGVzJyxcbiAgICAgIGl0ZW1zOiB7XG4gICAgICAgIHJlbnRhYmlsaWRhZF9wcm95ZWN0bzogJ8K/Q3XDoWwgZXMgbGEgcmVudGFiaWxpZGFkIGRlIGVzdGUgcHJveWVjdG8/JyxcbiAgICAgICAgYXZhbmNlX3Byb3llY3RvOiAnwr9DdcOhbGVzIHNvbiBsb3MgYXZhbmNlcyBkZSBlc3RlIHByb3llY3RvPycsXG4gICAgICAgIHRhcmVhc19wcm95ZWN0bzogJ8K/Q3XDoWxlcyBzb24gbGFzIHRhcmVhcyBwcsOzeGltYXMgYSB2ZW5jZXI/JyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBjaGF0OiB7XG4gICAgICBnZW5lcmF0aW5nOiAnUGVuc2FuZG8nLFxuICAgICAgZ2VuZXJhdGluZ0F0dGFjaG1lbnQ6ICdBbmFsaXphbmRvIGFkanVudG8nLFxuICAgICAgZ2VuZXJhdGluZ0RlZXBTZWFyY2g6ICdJbmljaWFuZG8gbGEgaW52ZXN0aWdhY2nDs24nLFxuICAgICAgZ2VuZXJhdGluZ1dlYlNlYXJjaDogJ0J1c2NhbmRvIGVuIGxhIHdlYicsXG4gICAgICBzdWdnZXN0aW9uc1RpdGxlOiAnUmVzcHVlc3RhcyBzdWdlcmlkYXMnLFxuICAgICAgY3JlYXRlQWdlbnRBY3Rpb25zVGl0bGU6ICdTaWd1aWVudGUgcGFzbycsXG4gICAgICBjcmVhdGVBZ2VudEFjdGlvblN0YXJ0Q2hhdDogJ0luaWNpYXIgY29udmVyc2FjacOzbiBjb24gZWwgbnVldm8gYWdlbnRlJyxcbiAgICAgIGNyZWF0ZUFnZW50QWN0aW9uS25vd2xlZGdlOiAnU3ViaXIgYXJjaGl2b3MgYSBsYSBiYXNlIGRlIGNvbm9jaW1pZW50bycsXG4gICAgICBjcmVhdGVBZ2VudEFjdGlvbkxvYWRFcnJvcjogJ05vIHNlIHB1ZG8gY2FyZ2FyIGVsIGFnZW50ZS4gSW50ZW50YSBkZSBudWV2by4nLFxuICAgICAgd3JpdGluZzogJ0VzY3JpYmllbmRvIGxhIHJlc3B1ZXN0YScsXG4gICAgICBleGVjdXRpbmdBY3Rpb246ICdFamVjdXRhbmRvIGFjY2nDs24nLFxuICAgICAgcHJvY2Vzc2luZzogJ1Byb2Nlc2FuZG8nLFxuICAgICAgYWN0aXZpdHk6IHtcbiAgICAgICAgZ2VuZXJhdGluZzoge1xuICAgICAgICAgIHByZXBhcmluZzogJ1ByZXBhcmFuZG8gbGEgcmVzcHVlc3RhJyxcbiAgICAgICAgICBjb25zaWRlcmluZzogJ1JldmlzYW5kbyB0dSBjb25zdWx0YScsXG4gICAgICAgICAgYWxtb3N0UmVhZHk6ICdEZWZpbmllbmRvIGVsIGVuZm9xdWUnLFxuICAgICAgICB9LFxuICAgICAgICB0aGlua2luZzoge1xuICAgICAgICAgIGFuYWx5emluZzogJ0FuYWxpemFuZG8gdHUgY29uc3VsdGEnLFxuICAgICAgICAgIHJldmlld2luZzogJ1JldmlzYW5kbyBlbCBjb250ZXh0bycsXG4gICAgICAgICAgcGxhbm5pbmc6ICdBcm1hbmRvIGxhIHJlc3B1ZXN0YScsXG4gICAgICAgIH0sXG4gICAgICAgIHNlYXJjaDoge1xuICAgICAgICAgIHNjYW5uaW5nOiAnQnVzY2FuZG8gZW4gbGEgd2ViJyxcbiAgICAgICAgICBzdW1tYXJpemluZzogJ1JldmlzYW5kbyByZXN1bHRhZG9zJyxcbiAgICAgICAgfSxcbiAgICAgICAgZGVlcFNlYXJjaDoge1xuICAgICAgICAgIGV4cGxvcmluZzogJ0V4cGxvcmFuZG8gZnVlbnRlcycsXG4gICAgICAgICAgY3Jvc3NDaGVja2luZzogJ1ZlcmlmaWNhbmRvIGxhIGluZm9ybWFjacOzbicsXG4gICAgICAgIH0sXG4gICAgICAgIGF0dGFjaG1lbnQ6IHtcbiAgICAgICAgICByZWFkaW5nOiAnTGV5ZW5kbyBlbCBhZGp1bnRvJyxcbiAgICAgICAgICBleHRyYWN0aW5nOiAnRXh0cmF5ZW5kbyBsbyByZWxldmFudGUnLFxuICAgICAgICAgIHJlYWRpbmdQbHVyYWw6ICdMZXllbmRvIGxvcyBhZGp1bnRvcycsXG4gICAgICAgICAgZXh0cmFjdGluZ1BsdXJhbDogJ0V4dHJheWVuZG8gbG8gcmVsZXZhbnRlJyxcbiAgICAgICAgfSxcbiAgICAgICAgd3JpdGluZzoge1xuICAgICAgICAgIGNvbXBvc2luZzogJ0VzY3JpYmllbmRvIGxhIHJlc3B1ZXN0YScsXG4gICAgICAgIH0sXG4gICAgICAgIGR5bmFtaWNDb250ZXh0VG9vbHRpcDpcbiAgICAgICAgICAnRXN0ZSBjb250ZXh0byBmdWUgZ2VuZXJhZG8gZGluw6FtaWNhbWVudGUgeSBwdWVkZSBjYW1iaWFyIGEgbG8gbGFyZ28gZGUgbGEgY29udmVyc2FjacOzbi4nLFxuICAgICAgICBjcmVhdGluZ1Rhc2s6ICdDcmVhbmRvIHRhcmVhJyxcbiAgICAgICAgY3JlYXRpbmdUYXNrc0JhdGNoOiAnQ3JlYW5kbyB0YXJlYXMnLFxuICAgICAgICBjcmVhdGluZ0FnZW50OiAnQ3JlYW5kbyBhZ2VudGUnLFxuICAgICAgICBlZGl0aW5nQWdlbnQ6ICdFZGl0YW5kbyBhZ2VudGUnLFxuICAgICAgICBlZGl0aW5nVGFzazogJ0VkaXRhbmRvIHRhcmVhJyxcbiAgICAgICAgZWRpdGluZ1Rhc2tzQmF0Y2g6ICdFZGl0YW5kbyB0YXJlYXMnLFxuICAgICAgICBkZWxldGluZ1Rhc2s6ICdFbGltaW5hbmRvIHRhcmVhJyxcbiAgICAgICAgZGVsZXRpbmdUYXNrc0JhdGNoOiAnRWxpbWluYW5kbyB0YXJlYXMnLFxuICAgICAgICBhc3NpZ25pbmdVc2VyOiAnQXNpZ25hbmRvIHVzdWFyaW8nLFxuICAgICAgICB1bmFzc2lnbmluZ1VzZXI6ICdEZXNhc2lnbmFuZG8gdXN1YXJpbycsXG4gICAgICAgIGFzc2lnbmluZ0xhYmVsOiAnQXNpZ25hbmRvIGV0aXF1ZXRhJyxcbiAgICAgICAgdXBkYXRpbmdUYXNrVHlwZTogJ0FjdHVhbGl6YW5kbyB0aXBvIGRlIHRhcmVhJyxcbiAgICAgICAgdXBkYXRpbmdFc3RpbWF0ZWRIb3VyczogJ0FjdHVhbGl6YW5kbyBob3JhcyBlc3RpbWFkYXMnLFxuICAgICAgICB1cGRhdGluZ0RlbGl2ZXJhYmxlOiAnQWN0dWFsaXphbmRvIGVudHJlZ2FibGUnLFxuICAgICAgICBsb2dnaW5nSG91cnM6ICdDYXJnYW5kbyBob3JhcycsXG4gICAgICAgIGNyZWF0aW5nQ2hlY2tsaXN0OiAnQ3JlYW5kbyBjaGVja2xpc3QnLFxuICAgICAgICBjcmVhdGluZ0xhYmVsOiAnQ3JlYW5kbyBldGlxdWV0YScsXG4gICAgICAgIGVkaXRpbmdQcm9qZWN0OiAnRWRpdGFuZG8gcHJveWVjdG8nLFxuICAgICAgICBjcmVhdGluZ0NoZWNrbGlzdEl0ZW06ICdBZ3JlZ2FuZG8gw610ZW0gYWwgY2hlY2tsaXN0JyxcbiAgICAgICAgcXVlcnlpbmdIb3VyczogJ0NvbnN1bHRhbmRvIGhvcmFzJyxcbiAgICAgICAgY29uZmlndXJpbmdBZ2VudEFjY2VzczogJ0NhbWJpYW5kbyB2aXNpYmlsaWRhZCBkZWwgYWdlbnRlJyxcbiAgICAgICAgc2VuZGluZ1Rhc2tNZXNzYWdlOiAnRW52aWFuZG8gbWVuc2FqZSBlbiBsYSB0YXJlYScsXG4gICAgICAgIGRlbGV0aW5nQ2hlY2tsaXN0SXRlbTogJ0VsaW1pbmFuZG8gw610ZW0gZGVsIGNoZWNrbGlzdCcsXG4gICAgICAgIHJlbW92aW5nVGFza1R5cGU6ICdFbGltaW5hbmRvIHRpcG8gZGUgdGFyZWEnLFxuICAgICAgICByZW1vdmluZ0xhYmVsOiAnUXVpdGFuZG8gZXRpcXVldGEnLFxuICAgICAgICB1cGRhdGluZ0RlbGl2ZXJhYmxlQ291bnQ6ICdBY3R1YWxpemFuZG8gY29udGFkb3IgZGUgZW50cmVnYWJsZXMnLFxuICAgICAgICBjcmVhdGluZ1Jld29yazogJ0NyZWFuZG8gcmV0cmFiYWpvJyxcbiAgICAgICAgdXBkYXRpbmdSZXdvcms6ICdBY3R1YWxpemFuZG8gcmV0cmFiYWpvJyxcbiAgICAgICAgZ2VuZXJhdGluZ0ZpbGU6ICdHZW5lcmFuZG8gYXJjaGl2bycsXG4gICAgICAgIHJlc3VtaW5nQWN0aW9uOiAnRWplY3V0YW5kbyBhY2Npw7NuIGFwcm9iYWRhJyxcbiAgICAgIH0sXG4gICAgICBsb2FkaW5nTW9yZTogJ0NhcmdhbmRvIG3DoXMgbWVuc2FqZXMnLFxuICAgICAgZm9vdGVyOiB7XG4gICAgICAgIHBsYWNlaG9sZGVyOiAnRXNjcmliZSB0dSBjb25zdWx0YSBhY8Oh4oCmJyxcbiAgICAgICAgb3JjaGVzdHJhdG9yUGxhY2Vob2xkZXI6ICdQcmVnw7pudGFsZSBhIE1haWEsIEAgbWVuY2lvbmFyIG8gLyBhY2Npb25lcyByw6FwaWRhcycsXG4gICAgICAgIGFnZW50TGFiZWw6ICdFbCBBZ2VudGUnLFxuICAgICAgICBkaXNjbGFpbWVyOiAne3thZ2VudE5hbWV9fSBwdWVkZSBjb21ldGVyIGVycm9yZXMuIENvbXBydWViYSBsYSBpbmZvcm1hY2nDs24gaW1wb3J0YW50ZS4nLFxuICAgICAgICBkaXNjbGFpbWVyQWdlbnQ6ICdMb3MgbW9kZWxvcyBkZSBJQSBwdWVkZW4gY29tZXRlciBlcnJvcmVzLiBWZXJpZmljYSBsYSBpbmZvcm1hY2nDs24gaW1wb3J0YW50ZS4nLFxuICAgICAgICBjb3JBY2Nlc3NMYWJlbDogJ0FjY2VzbyBhIENPUicsXG4gICAgICAgIGNvckFjY2Vzc1Rvb2x0aXA6ICdBY2Nlc28gYSBkYXRvcyBkZSBDT1InLFxuICAgICAgfSxcbiAgICAgIGVycm9yOiAnSGEgb2N1cnJpZG8gdW4gZXJyb3IgYWwgZ2VuZXJhciB0dSByZXNwdWVzdGEsIHBvciBmYXZvciwgaW50ZW50YSBudWV2YW1lbnRlLicsXG4gICAgICByZXRyeTogJ1JlaW50ZW50YXInLFxuICAgICAgZXJyb3JBY2Nlc3NEZW5pZWQ6XG4gICAgICAgICdObyB0aWVuZXMgYWNjZXNvIHBhcmEgaW50ZXJhY3R1YXIgY29uIGVzdGUgYWdlbnRlLiBFcyBwb3NpYmxlIHF1ZSBzdSBjb25maWd1cmFjacOzbiBkZSBhY2Nlc2liaWxpZGFkIGhheWEgY2FtYmlhZG8uIFBvciBmYXZvciwgY29udGFjdGEgYSBsYSBwZXJzb25hIGRlIHR1IG9yZ2FuaXphY2nDs24gcXVlIGFkbWluaXN0cmEgbG9zIGFnZW50ZXMgcGFyYSBvYnRlbmVyIG3DoXMgaW5mb3JtYWNpw7NuLicsXG4gICAgICBlcnJvclByb21wdFRvb0xvbmc6XG4gICAgICAgICdUZSBoYXMgZXhjZWRpZG8gZGVsIGxpbWl0ZSBkZSBjb250ZXh0byB7e3VzZWR9fSB0b2tlbnMuIFBvciBmYXZvciByZWludGVudGEgbnVldmFtZW50ZSBvIGNvbnRpbsO6YSBlbiBvdHJvIGNoYXQnLFxuICAgICAgY2hhbmdlUHJvamVjdDogJ0RldGVjdG8gcXVlIHF1aWVyZXMgY2FtYmlhciBkZSBQcm95ZWN0by5cXG5cXG4qKlNlbGVjY2lvbmEgZWwgcHJveWVjdG8gcGFyYSBjb250aW51YXI6KionLFxuICAgICAgc2VhcmNoV2ViOiAnQnVzY2FyIGVuIGxhIHdlYicsXG4gICAgICBkZWVwU2VhcmNoOiAnQsO6c3F1ZWRhIGF2YW56YWRhIGVuIGludGVybmV0IChhY2Nlc28gYSBtw6FzIGZ1ZW50ZXMpJyxcbiAgICAgIGF0dGFjaEZpbGU6ICdBZGp1bnRhciBhcmNoaXZvJyxcbiAgICAgIHBsdXNNZW51QXR0YWNoOiAnQWRqdW50YXIgYXJjaGl2b3MnLFxuICAgICAgZHJvcEZpbGVzSGVyZTogJ1NvbHTDoSBsb3MgYXJjaGl2b3MgYXF1w60nLFxuICAgICAgcGx1c01lbnVEZWVwSW52ZXN0aWdhdGlvbjogJ0ludmVzdGlnYXIgYSBmb25kbycsXG4gICAgICBwbHVzTWVudVF1aWNrQWN0aW9uczogJ0FjY2lvbmVzIHLDoXBpZGFzJyxcbiAgICAgIG9wZW5QbHVzTWVudUFyaWE6ICdBZGp1bnRvcyB5IG9wY2lvbmVzIGRlIGLDunNxdWVkYScsXG4gICAgICBvcGVuTWVudGlvbkFyaWE6ICdNZW5jaW9uYXInLFxuICAgICAgcmVtb3ZlQXR0YWNobWVudEFyaWE6ICdRdWl0YXIgYXJjaGl2bycsXG4gICAgICByZW1vdmVBY3RpdmVUb29sQXJpYTogJ1F1aXRhciBtb2RvIGRlIGLDunNxdWVkYScsXG4gICAgICBzZW5kOiAnRW52aWFyJyxcbiAgICAgIGxpbWl0RmlsZXM6ICdTb2xvIHB1ZWRlcyBhZGp1bnRhciBoYXN0YSA1IGFyY2hpdm9zIHBvciBtZW5zYWplLicsXG4gICAgICBzdG9wOiAnRGV0ZW5lciByZXNwdWVzdGEnLFxuICAgICAgY2FuY2VsbGVkOiAnU2UgaGEgY2FuY2VsYWRvIGxhIGLDunNxdWVkYS4nLFxuICAgICAgdG9vTWFueUFjdGl2ZVNlc3Npb25zOlxuICAgICAgICAnSGF5IGRlbWFzaWFkYXMgY29udmVyc2FjaW9uZXMgZ2VuZXJhbmRvIGEgbGEgdmV6LiBFc3BlcsOhIGEgcXVlIHRlcm1pbmUgdW5hIGFudGVzIGRlIGluaWNpYXIgb3RyYS4nLFxuICAgICAgYXR0YWNobWVudFByZXZpZXdNb2RhbDoge1xuICAgICAgICBsb2FkaW5nOiAnQ2FyZ2FuZG8uLi4nLFxuICAgICAgICB1bnN1cHBvcnRlZEZpbGVNZXNzYWdlOlxuICAgICAgICAgICdFc3RlIHRpcG8gZGUgYXJjaGl2byBubyBwdWVkZSBzZXIgcHJldmlzdWFsaXphZG8uIFBvciBmYXZvciwgaW50ZW50YSBkZSBudWV2byBlbiB1bm9zIG1pbnV0b3MuJyxcbiAgICAgICAgdHlwZUxhYmVsOiAnVGlwbzonLFxuICAgICAgICB1bmtub3duOiAnRGVzY29ub2NpZG8nLFxuICAgICAgICBzaXplTGFiZWw6ICdUYW1hw7FvOicsXG4gICAgICAgIGV4Y2VsOiB7XG4gICAgICAgICAgc2hlZXRTZWxlY3RvckxhYmVsOiAnSG9qYTonLFxuICAgICAgICAgIGxvYWRFcnJvcjogJ05vIHNlIHB1ZG8gY2FyZ2FyIGVsIGNvbnRlbmlkbyBkZWwgYXJjaGl2byBFeGNlbC4nLFxuICAgICAgICAgIGZpbGVSZWFkRXJyb3I6ICdFcnJvciBhbCBsZWVyIGVsIGFyY2hpdm8uJyxcbiAgICAgICAgICBzaGVldExvYWRFcnJvcjogJ0Vycm9yIGFsIGNhcmdhciBsYSBob2phIHNlbGVjY2lvbmFkYS4nLFxuICAgICAgICB9LFxuICAgICAgICB3b3JkOiB7XG4gICAgICAgICAgbG9hZEVycm9yOiAnTm8gc2UgcHVkbyBjYXJnYXIgZWwgY29udGVuaWRvIGRlbCBkb2N1bWVudG8gV29yZC4nLFxuICAgICAgICAgIGxlZ2FjeURvY1Vuc3VwcG9ydGVkOiAnTGEgcHJldmlzdWFsaXphY2nDs24gZGUgYXJjaGl2b3MgLmRvYyBubyBlc3TDoSBkaXNwb25pYmxlLiBVc2EgZm9ybWF0byAuZG9jeC4nLFxuICAgICAgICB9LFxuICAgICAgICBwcHQ6IHtcbiAgICAgICAgICBsb2FkRXJyb3I6ICdObyBzZSBwdWRvIGNhcmdhciBlbCBjb250ZW5pZG8gZGUgbGEgcHJlc2VudGFjacOzbi4nLFxuICAgICAgICAgIGxlZ2FjeVBwdFVuc3VwcG9ydGVkOiAnTGEgcHJldmlzdWFsaXphY2nDs24gZGUgYXJjaGl2b3MgLnBwdCBubyBlc3TDoSBkaXNwb25pYmxlLiBVc2EgZm9ybWF0byAucHB0eC4nLFxuICAgICAgICAgIHNsaWRlTGFiZWw6ICdEaWFwb3NpdGl2YSB7e251bWJlcn19JyxcbiAgICAgICAgICBlbXB0eVNsaWRlOiAnRXN0YSBkaWFwb3NpdGl2YSBubyB0aWVuZSB0ZXh0byBuaSBpbcOhZ2VuZXMgcGFyYSBwcmV2aXN1YWxpemFyLicsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgZGVsZXRlUXVlc3Rpb25Nb2RhbDoge1xuICAgICAgdGl0bGU6ICfCv0Rlc2VhcyBlbGltaW5hciBlc3RhIGNvbnZlcnNhY2nDs24/JyxcbiAgICAgIGZpcnN0UGFydDogJ0VzdMOhcyBwb3IgZWxpbWluYXInLFxuICAgICAgc2Vjb25kUGFydDogJ0VzdGEgYWNjacOzbiBlcyBpcnJldmVyc2libGUuJyxcbiAgICAgIGNhbmNlbDogJ0NhbmNlbGFyJyxcbiAgICAgIGRlbGV0ZTogJ0VsaW1pbmFyJyxcbiAgICB9LFxuICAgIGRlbGV0ZVNraWxsTW9kYWw6IHtcbiAgICAgIHRpdGxlOiAnwr9EZXNlYXMgZWxpbWluYXIgZXN0YSBza2lsbD8nLFxuICAgICAgZmlyc3RQYXJ0OiAnRXN0w6FzIHBvciBlbGltaW5hcicsXG4gICAgICBzZWNvbmRQYXJ0OiAnRXN0YSBhY2Npw7NuIGVzIGlycmV2ZXJzaWJsZS4nLFxuICAgICAgY2FuY2VsOiAnQ2FuY2VsYXInLFxuICAgICAgZGVsZXRlOiAnRWxpbWluYXInLFxuICAgIH0sXG4gICAgZWRpdFF1ZXN0aW9uTW9kYWw6IHtcbiAgICAgIG5ld05hbWU6ICdOdWV2byBub21icmUnLFxuICAgICAgdGl0bGU6ICdSZW5vbWJyYXIgY29udmVyc2FjacOzbicsXG4gICAgICByZW5hbWU6ICdSZW5vbWJyYXInLFxuICAgICAgY2FuY2VsOiAnQ2FuY2VsYXInLFxuICAgICAgbWF4TGVuZ3RoOiAnQ29tcGxldGFzdGUgbG9zIDE0MCBjYXJhY3RlcmVzIGRlbCBsw61taXRlLicsXG4gICAgfSxcbiAgICBtb2RhbEZpbGVFeGNlZWRzOiB7XG4gICAgICBsaW1pdEZpbGVzVGl0bGU6ICdIYXMgc3VwZXJhZG8gZWwgbMOtbWl0ZSBkZSBhZGp1bnRvcy4nLFxuICAgICAgbGltaXRTaXplVGl0bGU6ICdIYXMgc3VwZXJhZG8gZWwgbMOtbWl0ZSBkZSBwZXNvIHBlcm1pdGlkby4nLFxuICAgICAgbGltaXRGaWxlc0Rlc2NyaXB0aW9uOlxuICAgICAgICAnU29sbyBwdWVkZXMgYWRqdW50YXIgaGFzdGEgNSBhcmNoaXZvcyBwb3IgbWVuc2FqZS4gTG9zIHNpZ3VpZW50ZXMgYXJjaGl2b3Mgbm8gc2UgcHVkaWVyb24gYWRqdW50YXI6JyxcbiAgICAgIGxpbWl0U2l6ZURlc2NyaXB0aW9uOlxuICAgICAgICAnVW5vIG8gbcOhcyBzdXBlcmFuIGVsIHRhbWHDsW8gbcOheGltbyBwZXJtaXRpZG8gcG9yIHRpcG8uIExvcyBzaWd1aWVudGVzIGFyY2hpdm9zIG5vIHNlIHB1ZGllcm9uIGFkanVudGFyOicsXG4gICAgICBhY2NlcHQ6ICdBY2VwdGFyJyxcbiAgICAgIGxpbWl0OiAnbMOtbWl0ZScsXG4gICAgfSxcbiAgICBzb3VyY2VzSW5mb3JtYXRpb25Nb2RhbDoge1xuICAgICAgdGl0bGU6ICdGdWVudGVzOicsXG4gICAgfSxcbiAgICBhZ2VudHM6IHtcbiAgICAgIHRpdGxlOiAnQWdlbnRlcycsXG4gICAgICBuZXdBZ2VudDogJ051ZXZvIGFnZW50ZScsXG4gICAgICBjcmVhdGVBZ2VudDogJ0NyZWFyIEFnZW50ZScsXG4gICAgICBlZGl0OiAnRWRpdGFyJyxcbiAgICAgIG1haWE6ICcoRXNwZWNpYWxpc3RhIGRlIHByb3llY3RvKScsXG4gICAgICBhZGRGYXZvcml0ZTogJ0FncmVnYXIgYSBmYXZvcml0b3MnLFxuICAgICAgcmVtb3ZlRmF2b3JpdGU6ICdRdWl0YXIgZGUgZmF2b3JpdG9zJyxcbiAgICAgIGZhdm9yaXRlVG9nZ2xlZEFkZGVkU3VjY2VzczogJ0FnZW50ZSBhZ3JlZ2FkbyBhIGZhdm9yaXRvcycsXG4gICAgICBmYXZvcml0ZVRvZ2dsZWRSZW1vdmVkU3VjY2VzczogJ0FnZW50ZSByZW1vdmlkbyBkZSBmYXZvcml0b3MnLFxuICAgICAgZmF2b3JpdGVUb2dnbGVkRXJyb3I6ICdObyBzZSBwdWRvIGd1YXJkYXIgdHUgZmF2b3JpdG8uIEludGVudGEgbnVldmFtZW50ZS4nLFxuICAgICAgZmF2b3JpdGVUb2dnbGVkUmVtb3ZlZEVycm9yOiAnTm8gc2UgcHVkbyBxdWl0YXIgZWwgZmF2b3JpdG8uIEludGVudGEgbnVldmFtZW50ZS4nLFxuICAgICAgbWFpYUludHJvZHVjdGlvbjogJ0JpZW52ZW5pZG8gYSBNQUlBIHR1IGFzaXN0ZW50ZSwgcGFyYSBtZWpvcmFyIHR1IGTDrWEgYSBkw61hLicsXG4gICAgfSxcbiAgICBjb252ZXJzYXRpb25zOiB7XG4gICAgICB0aXRsZTogJ01pcyBjb252ZXJzYWNpb25lcycsXG4gICAgICBhZ2VudHNTZWN0aW9uVGl0bGU6ICdBZ2VudGVzJyxcbiAgICAgIG1haWFrZXJOYXY6ICdDcmVhZG9yIGRlIGFnZW50ZXMnLFxuICAgICAgbXlBZ2VudHNOYXY6ICdNaXMgYWdlbnRlcycsXG4gICAgICBteVNraWxsc05hdjogJ1NraWxscycsXG4gICAgICBlcnJvcjogJ09jdXJyacOzIHVuIGVycm9yIGFsIGNhcmdhciBlbCBoaXN0b3JpYWwgZGUgY29udmVyc2FjaW9uZXMnLFxuICAgICAgZW1wdHk6ICdBcXXDrSBzZSBtb3N0cmFyw6FuIHRvZGFzIHR1cyBjb252ZXJzYWNpb25lcyBjb24gbG9zIGFnZW50ZXMnLFxuICAgICAgZW1wdHlMYWJlbDogJ01lbnNhamUgY29uIGFyY2hpdm9zJyxcbiAgICAgIHVucmVhZExhYmVsOiAnU2luIGxlZXInLFxuICAgICAgbWluaW1pemVkT3BlbjogJ0FicmlyIE1BSUEnLFxuICAgICAgbWluaW1pemVkU2VlQW5zd2VyOiAnVmVyIHJlc3B1ZXN0YScsXG4gICAgICBjb2xsYXBzZTogJ0NvbGFwc2FyJyxcbiAgICAgIGV4cGFuZDogJ0V4cGFuZGlyJyxcbiAgICAgIG5ld0NoYXQ6ICdOdWV2byBjaGF0JyxcbiAgICAgIGdlbmVyYXRpbmc6ICdHZW5lcmFuZG8gcmVzcHVlc3RhJyxcbiAgICAgIHNlc3Npb25GaW5pc2hlZDogJ3t7dGl0bGV9fSB0ZXJtaW7DsyBkZSByZXNwb25kZXInLFxuICAgICAgc2Vzc2lvbkZpbmlzaGVkQXBwcm92YWw6ICd7e3RpdGxlfX0gcmVxdWllcmUgdHUgYXByb2JhY2nDs24nLFxuICAgICAgc2Vzc2lvbkZpbmlzaGVkRXJyb3I6ICd7e3RpdGxlfX0gdHV2byB1biBlcnJvciBhbCByZXNwb25kZXInLFxuICAgICAgb3BlbkFnZW50Q3JlYXRvcjogJ0NyZWFyIGFnZW50ZScsXG4gICAgICBvcGVuTWFya2V0cGxhY2U6ICdNYXJrZXRwbGFjZSBkZSBhZ2VudGVzJyxcbiAgICB9LFxuICAgIG1hcmtldHBsYWNlOiB7XG4gICAgICBiYWNrOiAnVm9sdmVyJyxcbiAgICAgIHRpdGxlOiAnSWRlYXMgcGFyYSBjcmVhciBhZ2VudGVzJyxcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnRWxlZ8OtIHVuYSBzdWdlcmVuY2lhIGJpZW4gYXJtYWRhIHkgYWJyw60gZWwgZWRpdG9yIGNvbiBlbCBhZ2VudGUgeWEgcHJlY2FyZ2FkbyBwYXJhIGFkYXB0YXJsbyBhIHR1IGNhc28uJyxcbiAgICAgIG15QWdlbnRzVGl0bGU6ICdNaXMgYWdlbnRlcycsXG4gICAgICBteUFnZW50c1JlYWR5VGl0bGU6ICdUdXMgYWdlbnRlcyBlc3RhbiBsaXN0b3MgcGFyYSBheXVkYXJ0ZSBlbiB0YXJlYXMnLFxuICAgICAgbXlBZ2VudHNEZXNjcmlwdGlvbjogJ0VzdG9zIHNvbiB0dXMgYWdlbnRlcyBjdXN0b20uIFNlbGVjY2lvbmEgdW5vIHBhcmEgZW1wZXphciBhIGNvbnZlcnNhciBjb24gZXNlIHBlcmZpbC4nLFxuICAgICAgbXlBZ2VudHNFbXB0eVN0YXRlVGl0bGU6ICdBw7puIG5vIHRpZW5lcyBhZ2VudGVzIGNyZWFkb3MnLFxuICAgICAgbXlBZ2VudHNFbXB0eVN0YXRlRGVzY3JpcHRpb246ICdIYXogY2xpYyBlbiBlbCBib3TDs24gZGUgYWJham8gcGFyYSBlbXBlemFyIGEgY3JlYXIgYWdlbnRlcyBhIHR1IG1lZGlkYS4nLFxuICAgICAgbXlBZ2VudHNFbXB0eVN0YXRlRGVzY3JpcHRpb25Ob1Blcm06XG4gICAgICAgICdDdWFuZG8gbGEgcGVyc29uYSBjb24gcGVybWlzb3MgcGFyYSBjcmVhcmxvcyBsb3MgY29uZmlndXJlLCB2YXMgYSBwb2RlciBhY2NlZGVyIGRlc2RlIGFjw6EuJyxcbiAgICAgIG15QWdlbnRzRW1wdHlTdGF0ZUJ1dHRvbjogJ0NyZWFyIGFnZW50ZScsXG4gICAgICBteUFnZW50c0ZhbGxiYWNrSW50cm86ICdBZ2VudGUgcGVyc29uYWxpemFkbyBsaXN0byBwYXJhIGF5dWRhcnRlIGVuIHR1IGZsdWpvIGRlIHRyYWJham8uJyxcbiAgICAgIG15QWdlbnRzRmFsbGJhY2tEZXNjcmlwdGlvbjogJ0hheiBjbGljayBlbiB1c2FyIGFnZW50ZSBwYXJhIGluaWNpYXIgdW5hIGNvbnZlcnNhY2nDs24gY29uIGVzdGUgYWdlbnRlLicsXG4gICAgICBteUFnZW50c0ZhbGxiYWNrRGF0ZTogJ0hhY2UgcG9jb3MgZGlhcycsXG4gICAgICBteUFnZW50c1RvZGF5OiAnSG95JyxcbiAgICAgIG15QWdlbnRzT25lRGF5QWdvOiAnSGFjZSAxIGRpYScsXG4gICAgICBteUFnZW50c0RheXNBZ286ICdIYWNlIHt7ZGF5c319IGRpYXMnLFxuICAgICAgY2FyZE1lbnVBcmlhTGFiZWw6ICdNZW51IGRlIGFjY2lvbmVzIGRlbCBhZ2VudGUnLFxuICAgICAgdXNlOiAnVXNhcicsXG4gICAgICBjcmVhdGVBZ2VudDogJ0NyZWFyIGFnZW50ZSBtYW51YWxtZW50ZScsXG4gICAgICBzZWFyY2hBZ2VudFBsYWNlaG9sZGVyOiAnQnVzY2FyIGFnZW50ZS4uLicsXG4gICAgICBzZWFyY2hNaW5MZW5ndGg6ICdtw61uLiAzIGNhcmFjdGVyZXMnLFxuICAgICAgc2VhcmNoTm9SZXN1bHRzOiAnTm8gc2UgZW5jb250cmFyb24gcmVzdWx0YWRvcy4nLFxuICAgICAgc2VhcmNoTm9SZXN1bHRzU3VidGl0bGU6ICdDcmVhIHVuIGFnZW50ZSBkZSBJQSBxdWUgcHVlZGEgcGVuc2FyLCBhY3R1YXIgeSBhdXRvbWF0aXphciBlbCB0cmFiYWpvIHBhcmEgdGknLFxuICAgICAgdXNlVGVtcGxhdGU6ICdDcmVhciBkZXNkZSBlc3RhIGlkZWEnLFxuICAgICAgdXNlTXlBZ2VudDogJ1VzYXIgYWdlbnRlJyxcbiAgICAgIGJhZGdlczoge1xuICAgICAgICBicmFuZGluZzogJ0JyYW5kaW5nJyxcbiAgICAgICAgbGlua2VkaW46ICdMaW5rZWRJbicsXG4gICAgICAgIG1hcmtldGluZzogJ01hcmtldGluZycsXG4gICAgICB9LFxuICAgIH0sXG4gICAgbXlTa2lsbHM6IHtcbiAgICAgIHRpdGxlOiAnRXNwZWNpYWxpemEgYSBNQUlBIGNvbiB0dXMgcHJvcGlhcyByZWdsYXMnLFxuICAgICAgc3VidGl0bGU6ICdMYXMgc2tpbGxzIHNvbiBnbG9iYWxlczogZXN0w6FuIGRpc3BvbmlibGVzIHBhcmEgdG9kb3MgdHVzIGFnZW50ZXMuJyxcbiAgICAgIHRhYk15U2tpbGxzOiAnTWlzIHNraWxscycsXG4gICAgICB0YWJTaGFyZWRTa2lsbHM6ICdTa2lsbHMgY29tcGFydGlkYXMnLFxuICAgICAgZHJvcGRvd25CdXR0b246ICdTa2lsbHMnLFxuICAgICAgZHJvcGRvd25DcmVhdGU6ICdDcmVhciBudWV2YSBza2lsbCcsXG4gICAgICBkcm9wZG93bkVtcHR5OiAnVG9kYXbDrWEgbm8gaGF5IHNraWxscycsXG4gICAgICBkcm9wZG93bkVycm9yOiAnSHVibyB1biBwcm9ibGVtYS4gSW50ZW50w6EgZGUgbnVldm8uJyxcbiAgICAgIG15U2tpbGxzRGVzY3JpcHRpb246ICdIYWJpbGlkYWRlcyBjcmVhZG8gcG9yIHRpLicsXG4gICAgICBzaGFyZWRTa2lsbHNEZXNjcmlwdGlvbjogJ0hhYmlsaWRhZGVzIGNvbXBhcnRpZGFzIHBvciBvdHJvcyBtaWVtYnJvcyBkZSB0dSBlcXVpcG8uJyxcbiAgICAgIHNlYXJjaFBsYWNlaG9sZGVyOiAnQnVzY2FyIGhhYmlsaWRhZGVzLi4uJyxcbiAgICAgIGNyZWF0ZU1hbnVhbGx5OiAnQ3JlYXIgbWFudWFsbWVudGUnLFxuICAgICAgdmlzaWJpbGl0eU9ubHlNZTogJ1NvbG8geW8nLFxuICAgICAgdmlzaWJpbGl0eUV2ZXJ5b25lOiAnVmlzaWJsZSBwYXJhIHRvZG9zJyxcbiAgICAgIHNoYXJlZEVtcHR5U3RhdGVUaXRsZTogJ0HDum4gbm8gY29tcGFydGllcm9uIHNraWxscyBjb250aWdvLicsXG4gICAgICBzaGFyZWRFbXB0eVN0YXRlRGVzY3JpcHRpb246ICdDdWFuZG8gdHUgY29tcGHDscOtYSBjb21wYXJ0YSBza2lsbHMsIGFwYXJlY2Vyw6FuIGFxdcOtLicsXG4gICAgICBjcmVhdGVTa2lsbDogJ0NyZWFyIHNraWxsJyxcbiAgICAgIHByZXZpZXc6ICdWaXN0YSBwcmV2aWEnLFxuICAgICAgcHJldmlld0VtcHR5OiAnTmFkYSBwYXJhIHByZXZpc3VhbGl6YXIgdG9kYXbDrWEuJyxcbiAgICAgIHVwbG9hZE1kOiAnU3ViaXIgLm1kJyxcbiAgICAgIHVwbG9hZEVycm9yOiAnU29sbyBzZSBwZXJtaXRlbiBhcmNoaXZvcyAubWQnLFxuICAgICAgY3JlYXRlV2l0aE1haWE6ICdDcmVhciBjb24gTWFpYScsXG4gICAgICB3cml0ZUluc3RydWN0aW9uczogJ0VzY3JpYmlyIGluc3RydWNjaW9uZXMnLFxuICAgICAgdXBsb2FkU2tpbGw6ICdTdWJpciB1bmEgc2tpbGwnLFxuICAgICAgZ2VuZXJhdGVQbGFjZWhvbGRlcjogJ1F1aWVybyB1bmEgU2tpbGwgcGFyYSBjcmVhciBtaXMgcHJveWVjdG9zJyxcbiAgICAgIGdlbmVyYXRlV2l0aE1haWE6ICdDcmVhciBsYSBTa2lsbCBjb24gTWFpYScsXG4gICAgICBnZW5lcmF0ZU5lZWRzTmFtZTogJ0VzY3JpYsOtIHVuIG5vbWJyZSBwcmltZXJvIHBhcmEgZGVzY3JpYmlyIGxhIHNraWxsJyxcbiAgICAgIGdlbmVyYXRlU3VjY2VzczogJ1NraWxsIGdlbmVyYWRhIGNvbiBNYWlhJyxcbiAgICAgIGdlbmVyYXRlRXJyb3I6ICdObyBzZSBwdWRvIGdlbmVyYXIgbGEgc2tpbGwuIEludGVudGEgbnVldmFtZW50ZS4nLFxuICAgICAgY2FyZE1lbnVBcmlhTGFiZWw6ICdNZW7DuiBkZSBhY2Npb25lcyBkZSBsYSBza2lsbCcsXG4gICAgICBlZGl0OiAnRWRpdGFyJyxcbiAgICAgIGRlbGV0ZTogJ0VsaW1pbmFyJyxcbiAgICAgIGNhbmNlbDogJ0NhbmNlbGFyJyxcbiAgICAgIHNhdmU6ICdHdWFyZGFyJyxcbiAgICAgIGNsb3NlOiAnQ2VycmFyJyxcbiAgICAgIGNyZWF0ZVRpdGxlOiAnQ3JlYWNpw7NuIGRlIHNraWxsJyxcbiAgICAgIGVkaXRUaXRsZTogJ0VkaWNpw7NuIGRlIHNraWxsJyxcbiAgICAgIHZpZXdUaXRsZTogJ1NraWxsJyxcbiAgICAgIHNoYXJlZENyZWF0ZWRCeTogJ0NyZWFkYSBwb3Ige3tuYW1lfX0nLFxuICAgICAgbmFtZUxhYmVsOiAnTm9tYnJlJyxcbiAgICAgIG5hbWVQbGFjZWhvbGRlcjogJ05vbWJyZSBkZSBsYSBza2lsbCcsXG4gICAgICBkZXNjcmlwdGlvbkxhYmVsOiAnRGVzY3JpcGNpw7NuJyxcbiAgICAgIGRlc2NyaXB0aW9uUGxhY2Vob2xkZXI6ICdEZXNjcmliZSBicmV2ZW1lbnRlIHBhcmEgcXXDqSBzaXJ2ZSBsYSBza2lsbCcsXG4gICAgICBpbnN0cnVjdGlvbnNMYWJlbDogJ0luc3RydWNjaW9uZXMnLFxuICAgICAgc2hhcmVXaXRoQ29tcGFueTogJ0hhYmlsaXRhciBwYXJhIHRvZGEgbGEgY29tcGHDscOtYScsXG4gICAgICBjcmVhdGVkQnk6ICdDcmVhZG8gcG9yJyxcbiAgICAgIGxhc3RVcGRhdGVkOiAnw5psdGltYSBhY3R1YWxpemFjacOzbicsXG4gICAgICBzYXZlQW5kVXNlOiAnR3VhcmRhciB5IHVzYXIgc2tpbGwnLFxuICAgICAgY29udGVudExhYmVsOiAnU2tpbGwnLFxuICAgICAgY29udGVudFBsYWNlaG9sZGVyOiAnRXNjcmliZSBsYSBza2lsbC4uLicsXG4gICAgICBlbXB0eVN0YXRlVGl0bGU6ICdBw7puIG5vIHRpZW5lcyBza2lsbHMgY3JlYWRhcycsXG4gICAgICBlbXB0eVN0YXRlRGVzY3JpcHRpb246ICdIYXogY2xpYyBlbiBlbCBib3TDs24gZGUgYWJham8gcGFyYSBlbXBlemFyIGEgY3JlYXIgc2tpbGxzIGEgdHUgbWVkaWRhLicsXG4gICAgICBlbXB0eVN0YXRlRGVzY3JpcHRpb25Ob1Blcm06XG4gICAgICAgICdDdWFuZG8gbGEgcGVyc29uYSBjb24gcGVybWlzb3MgcGFyYSBjcmVhcmxhcyBsYXMgY29uZmlndXJlLCB2YXMgYSBwb2RlciBhY2NlZGVyIGRlc2RlIGFjw6EuJyxcbiAgICAgIGVtcHR5U3RhdGVCdXR0b246ICdDcmVhciBza2lsbCcsXG4gICAgICBzZWFyY2hFbXB0eVN0YXRlVGl0bGU6ICdObyBlbmNvbnRyYW1vcyBuaW5ndW5hIHNraWxsJyxcbiAgICAgIHNlYXJjaEVtcHR5U3RhdGVEZXNjcmlwdGlvbjogJ1BydWViYSBjb24gb3RybyB0w6lybWlubyBvIHJldmlzYSB0dSBiw7pzcXVlZGEuJyxcbiAgICAgIGNyZWF0ZVN1Y2Nlc3M6ICdTa2lsbCBjcmVhZGEgY29uIMOpeGl0bycsXG4gICAgICBjcmVhdGVFcnJvcjogJ05vIHNlIHB1ZG8gY3JlYXIgbGEgc2tpbGwuIEludGVudGEgbnVldmFtZW50ZS4nLFxuICAgICAgdXBkYXRlU3VjY2VzczogJ1NraWxsIGFjdHVhbGl6YWRhIGNvbiDDqXhpdG8nLFxuICAgICAgdXBkYXRlRXJyb3I6ICdObyBzZSBwdWRvIGFjdHVhbGl6YXIgbGEgc2tpbGwuIEludGVudGEgbnVldmFtZW50ZS4nLFxuICAgICAgZGVsZXRlU3VjY2VzczogJ1NraWxsIGVsaW1pbmFkYSBjb24gw6l4aXRvJyxcbiAgICAgIGRlbGV0ZUVycm9yOiAnTm8gc2UgcHVkbyBlbGltaW5hciBsYSBza2lsbC4gSW50ZW50YSBudWV2YW1lbnRlLicsXG4gICAgfSxcbiAgICBzbmFja2Jhcjoge1xuICAgICAgZGVsZXRlQ2hhdDoge1xuICAgICAgICBzdWNjZXNzOiAnVHUgY29udmVyc2FjacOzbiBmdWUgZWxpbWluYWRhIGNvbiDDqXhpdG8uJyxcbiAgICAgICAgZXJyb3I6ICdPY3VycmnDsyB1biBlcnJvciBpbmVzcGVyYWRvLiBQb3IgZmF2b3IgdnVlbHZlIGEgaW50ZW50YXJsby4nLFxuICAgICAgfSxcbiAgICAgIHJlbmFtZWRDaGF0OiB7XG4gICAgICAgIHN1Y2Nlc3M6ICdDb252ZXJzYWNpw7NuIHJlbm9tYnJhZGEgY29uIMOpeGl0bycsXG4gICAgICAgIGVycm9yOiAnT2N1cnJpw7MgdW4gZXJyb3IgaW5lc3BlcmFkby4gUG9yIGZhdm9yIHZ1ZWx2ZSBhIGludGVudGFybG8uJyxcbiAgICAgIH0sXG4gICAgICBsb2FkTW9yZUFnZW50czoge1xuICAgICAgICBlcnJvcjogJ09jdXJyacOzIHVuIGVycm9yIGluZXNwZXJhZG8uIFBvciBmYXZvciB2dWVsdmUgYSBpbnRlbnRhcmxvLicsXG4gICAgICB9LFxuICAgIH0sXG4gICAgYXBwcm92YWxCb3g6IHtcbiAgICAgIHVudGl0bGVkQWdlbnQ6ICdBZ2VudGUgc2luIG5vbWJyZScsXG4gICAgICBhY3Rpb25zOiB7XG4gICAgICAgIGNyZWF0ZV90YXNrOiAnQ3JlYWNpw7NuIGRlIHRhcmVhJyxcbiAgICAgICAgY3JlYXRlX3Rhc2tzX2JhdGNoOiAnQ3JlYWNpw7NuIGRlIHRhcmVhcycsXG4gICAgICAgIGNyZWF0ZV9hZ2VudDogJ0NyZWFjacOzbiBkZSBhZ2VudGUnLFxuICAgICAgICBlZGl0X2FnZW50OiAnRWRpY2nDs24gZGUgYWdlbnRlJyxcbiAgICAgICAgZWRpdF9wcm9qZWN0OiAnRWRpY2nDs24gZGUgcHJveWVjdG8nLFxuICAgICAgICBlZGl0X3Rhc2s6ICdFZGljacOzbiBkZSB0YXJlYScsXG4gICAgICAgIGVkaXRfdGFza3NfYmF0Y2g6ICdFZGljacOzbiBkZSB0YXJlYXMnLFxuICAgICAgICBkZWxldGVfdGFzazogJ0VsaW1pbmFjacOzbiBkZSB0YXJlYScsXG4gICAgICAgIGRlbGV0ZV90YXNrc19iYXRjaDogJ0VsaW1pbmFjacOzbiBkZSB0YXJlYXMnLFxuICAgICAgICB0YXNrX2Fzc2lnbjogJ0FzaWduYWNpw7NuIGRlIHVzdWFyaW8nLFxuICAgICAgICB0YXNrX3VuYXNzaWduOiAnRGVzYXNpZ25hY2nDs24gZGUgdXN1YXJpbycsXG4gICAgICAgIGFzc2lnbl90YXNrX2xhYmVsOiAnQXNpZ25hY2nDs24gZGUgZXRpcXVldGEnLFxuICAgICAgICBjcmVhdGVfbGFiZWxzOiAnQ3JlYWNpw7NuIGRlIGV0aXF1ZXRhJyxcbiAgICAgICAgdXBkYXRlX3Rhc2tfdHlwZTogJ0FjdHVhbGl6YWNpw7NuIGRlIHRpcG8gZGUgdGFyZWEnLFxuICAgICAgICB1cGRhdGVfZXN0aW1hdGVkX2hvdXJzOiAnQWN0dWFsaXphY2nDs24gZGUgaG9yYXMgZXN0aW1hZGFzJyxcbiAgICAgICAgdXBkYXRlX2RlbGl2ZXJhYmxlOiAnQWN0dWFsaXphY2nDs24gZGUgZW50cmVnYWJsZScsXG4gICAgICAgIGNyZWF0ZV9ob3VyOiAnQ2FyZ2EgZGUgaG9yYXMnLFxuICAgICAgICBjcmVhdGVfY2hlY2tsaXN0OiAnQ3JlYWNpw7NuIGRlIGNoZWNrbGlzdCcsXG4gICAgICAgIGNyZWF0ZV9jaGVja2xpc3RfaXRlbTogJ0NyZWFjacOzbiBkZSDDrXRlbSBkZWwgY2hlY2tsaXN0JyxcbiAgICAgICAgY2xvbmVfdGFzazogJ0Nsb25hciB0YXJlYScsXG4gICAgICAgIGdldF90YXNrX2RhdGVfaG91cnM6ICdDb25zdWx0YSBkZSBob3JhcyBwb3IgZmVjaGEnLFxuICAgICAgICBjb25maWd1cmVfYWdlbnRfYWNjZXNzOiAnQ2FtYmlhciB2aXNpYmlsaWRhZCBkZWwgYWdlbnRlJyxcbiAgICAgICAgc2VuZF90YXNrX21lc3NhZ2U6ICdFbnbDrW8gZGUgbWVuc2FqZSBlbiBsYSB0YXJlYScsXG4gICAgICAgIGRlbGV0ZV9jaGVja2xpc3RfaXRlbTogJ0VsaW1pbmFjacOzbiBkZSDDrXRlbSBkZWwgY2hlY2tsaXN0JyxcbiAgICAgICAgcmVtb3ZlX3Rhc2tfdHlwZTogJ0VsaW1pbmFjacOzbiBkZSB0aXBvIGRlIHRhcmVhJyxcbiAgICAgICAgcmVtb3ZlX3Rhc2tfbGFiZWw6ICdFbGltaW5hY2nDs24gZGUgZXRpcXVldGEnLFxuICAgICAgICBjb3VudF9kZWxpdmVyYWJsZTogJ0FjdHVhbGl6YWNpw7NuIGRlbCBjb250YWRvciBkZSBlbnRyZWdhYmxlcycsXG4gICAgICAgIGNyZWF0ZV9yZXdvcms6ICdDcmVhY2nDs24gZGUgcmV0cmFiYWpvJyxcbiAgICAgICAgdXBkYXRlX3Jld29yazogJ0FjdHVhbGl6YWNpw7NuIGRlIHJldHJhYmFqbycsXG4gICAgICAgIGRlbGV0ZV9hZ2VudDogJ0VsaW1pbmFjacOzbiBkZSBhZ2VudGUnLFxuICAgICAgICB1bmtub3duOiAnQWNjacOzbiBkZXNjb25vY2lkYScsXG4gICAgICB9LFxuICAgICAgc3BlY2lhbDoge1xuICAgICAgICBjcmVhdGVSZXdvcms6IHtcbiAgICAgICAgICB0aXRsZTogJ0NyZWFyIHJldHJhYmFqbycsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdTZSBjcmVhcsOhIHVuIHJldHJhYmFqbyBlbiBsYSB0YXJlYSBjb24gbGEgaW5mb3JtYWNpw7NuIGluZGljYWRhLicsXG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZURlbGl2ZXJhYmxlQ2hpbGRyZW46IHtcbiAgICAgICAgICB0aXRsZTogJ0FjdHVhbGl6YXIgYXZhbmNlIGRlIGVudHJlZ2FibGVzJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ1NlIGFjdHVhbGl6YXLDoSBlbCBhdmFuY2UgZGUgbG9zIHN1YmVudHJlZ2FibGVzIHZpbmN1bGFkb3MgYSBlc3RhIHRhcmVhLicsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZmllbGRzOiB7XG4gICAgICAgIG5hbWU6ICdOb21icmUnLFxuICAgICAgICBlbW9qaTogJ0Vtb2ppJyxcbiAgICAgICAgaW50cm9kdWN0aW9uOiAnSW50cm9kdWNjacOzbicsXG4gICAgICAgIGlucHV0X3BsYWNlaG9sZGVyOiAnUGxhY2Vob2xkZXInLFxuICAgICAgICB1c2VyX3Byb21wdDogJ1Byb21wdCBwcmluY2lwYWwnLFxuICAgICAgICBsYW5ndWFnZTogJ0lkaW9tYScsXG4gICAgICAgIHByb3ZpZGVyOiAnUHJvdmlkZXInLFxuICAgICAgICBtb2RlbF9uYW1lOiAnTW9kZWxvJyxcbiAgICAgICAgYXBpX2tleTogJ0FQSSBrZXknLFxuICAgICAgfSxcbiAgICAgIHRpdGxlOiAnQ29uZmlybWFjacOzbiByZXF1ZXJpZGEnLFxuICAgICAgZGVzY3JpcHRpb246ICdTZSByZXF1aWVyZSB0dSBhcHJvYmFjacOzbiBwYXJhIGVqZWN1dGFyIGxhIHNpZ3VpZW50ZSBhY2Npw7NuOicsXG4gICAgICBhcHByb3ZlOiAnQXByb2JhcicsXG4gICAgICBkZW55OiAnRGVuZWdhcicsXG4gICAgICBtYW51YWxBcHByb3ZhbFdhcm5pbmc6ICdNYWlhIGhhIGRldGVjdGFkbyBxdWUgbGEgc29saWNpdHVkIGhhIHNpZG8gYXByb2JhZGEgbWFudWFsbWVudGUnLFxuICAgICAgc3RhdHVzOiB7XG4gICAgICAgIGFwcHJvdmVkOiAnU29saWNpdHVkIEFwcm9iYWRhJyxcbiAgICAgICAgZGVuaWVkOiAnU29saWNpdHVkIERlbmVnYWRhJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBjaGlwTGxtOiB7XG4gICAgICB0b29sdGlwOiAnTW9kZWxvOiB7e21vZGVsfX0nLFxuICAgIH0sXG4gICAgY2xpZW50U2VsZWN0b3I6IHtcbiAgICAgIHByb2plY3Q6ICdwcm95ZWN0bycsXG4gICAgICBwcm9qZWN0czogJ3Byb3llY3RvcycsXG4gICAgfSxcbiAgfSxcbiAgW1NFQ1RJT05TLmFibUFnZW50XToge1xuICAgIC4uLmdlbmVyaWNTZWN0aW9uLFxuICAgIGxlZ2VuZERlbGV0ZWRBZ2VudDogJ0VzdGUgYWdlbnRlIGhhIHNpZG8gZWxpbWluYWRvIGVsIGTDrWEnLFxuICAgIGxlZ2VuZFByb2plY3REZWxldGVkOiAnRWwgcHJveWVjdG8ge3tuYW1lfX0gaGEgc2lkbyBlbGltaW5hZG8uIE5vIGVzIHBvc2libGUgY29udGludWFyIGNvbiBsYSBjb252ZXJzYWNpw7NuJyxcbiAgICBsZWdlbmROb0FjY2VzczogJ1lhIG5vIHRpZW5lcyBhY2Nlc28gcGFyYSBpbnRlcmFjdHVhciBjb24gZWwgYWdlbnRlIHt7bmFtZX19JyxcbiAgICBsZWdlbmROb1Blcm1pc3Npb25zOiAnWWEgbm8gdGllbmVzIHBlcm1pc29zIHBhcmEgdmlzdWFsaXphciBuaSBpbnRlcmFjdHVhciBjb24gZWwgYWdlbnRlIHt7bmFtZX19JyxcbiAgICBsZWdlbmRMZWdhY3lDb250ZXh0U2Vzc2lvbjpcbiAgICAgICdFc3RhIGNvbnZlcnNhY2nDs24gcGVydGVuZWNlIGEgdW4gY29udGV4dG8gYW50ZXJpb3IuIFBvZMOpcyBjb250aW51YXIgY29uIHt7bmFtZX19IGVuIHVuIGNoYXQgbnVldm8uJyxcbiAgICBjb250aW51ZUluTmV3Q2hhdDogJ0NvbnRpbnVhciBlbiB1biBjaGF0IG51ZXZvJyxcbiAgICBsZWdlbmRNb2RlbERlcHJlY2F0ZWQ6XG4gICAgICAnRWwgbW9kZWxvIHNlbGVjY2lvbmFkbyBwYXJhIGVzdGUgYWdlbnRlIHlhIG5vIGVzdMOhIGRpc3BvbmlibGUuIENhbWJpYSBhIG90cm8gbW9kZWxvIHBhcmEgc2VndWlyIHV0aWxpesOhbmRvbG8uJyxcbiAgICBsZWdlbmRQcm92aWRlclN0YXR1czpcbiAgICAgICdFbCBtb2RlbG8gcXVlIHVzYSBlc3RlIGFnZW50ZSBlc3TDoSB0ZW5pZW5kbyBwcm9ibGVtYXMgdGVtcG9yYWxlcy4gUHVlZGVzIGVzcGVyYXIgYSBxdWUgc2UgcmVzdGFibGV6Y2EgbyBjYW1iaWFyIGEgb3RybyBtb2RlbG8uJyxcbiAgICBjaGFuZ2VNb2RlbDogJ0NhbWJpYXIgbW9kZWxvJyxcbiAgICBhZ2VudHM6ICdBZ2VudGVzJyxcbiAgICBsYXlvdXRNZW51VG9vbHRpcDogJ0Rpc3Bvc2ljacOzbiBkZWwgY2hhdCcsXG4gICAgbGF5b3V0U2lkZWJhcjogJ0NoYXQgbGF0ZXJhbCcsXG4gICAgbGF5b3V0RnVsbHNjcmVlbjogJ0NoYXQgY29tcGxldG8nLFxuICAgIGxheW91dEZsb2F0aW5nOiAnQ2hhdCBmbG90YW50ZScsXG4gICAgYmFjazogJ1ZvbHZlcicsXG4gICAgYWRkQWdlbnQ6ICdBZ3JlZ2FyIG51ZXZvIGFnZW50ZScsXG4gICAgbmV3QWdlbnQ6ICdOdWV2byBhZ2VudGUnLFxuICAgIGVkaXRBZ2VudDogJ0VkaXRhciBhZ2VudGUnLFxuICAgIGNyZWF0ZUFnZW50OiAnQ3JlYXIgQWdlbnRlJyxcbiAgICBjYW5jZWw6ICdDYW5jZWxhcicsXG4gICAgYWNjZXB0OiAnQWNlcHRhcicsXG4gICAgZGVsZXRlQWdlbnQ6ICdFbGltaW5hciBhZ2VudGUnLFxuICAgIGNvbnRpbnVlOiAnQ29udGludWFyJyxcbiAgICBlZGl0OiAnRWRpdGFyJyxcbiAgICBkZWxldGU6ICdFbGltaW5hcicsXG4gICAgZmVlZGJhY2s6ICdFbnZpYXIgRmVlZGJhY2snLFxuICAgIHNlbmRGZWVkYmFjazogJ0VudmlhciBmZWVkYmFjaycsXG4gICAgc2F2ZUNoYW5nZXM6ICdHdWFyZGFyIGNhbWJpb3MnLFxuICAgIGNyZWF0ZUFnZW50TGFiZWxCdXR0b246ICdDcmVhciBhZ2VudGUnLFxuICAgIG9wZW5BZ2VudENyZWF0b3I6ICdDcmVhciBhZ2VudGUnLFxuICAgIG9wZW5NYXJrZXRwbGFjZTogJ01hcmtldHBsYWNlIGRlIGFnZW50ZXMnLFxuICAgIGNvbmZpcm1BZ2VudFVwZGF0ZWRXaXRoRmlsZXNFcnJvcjogJ0VsIGFnZW50ZSBzZSBlZGl0w7MgZXhpdG9zYW1lbnRlLCBwZXJvIGhheSBhcmNoaXZvcyBxdWUgbm8gcHVkaWVyb24gcHJvY2VzYXJzZS4nLFxuICAgIGNvbmZpcm1BZ2VudENyZWF0ZWQ6ICdFbCBhZ2VudGUgc2UgaGEgY3JlYWRvIGNvbiDDqXhpdG8nLFxuICAgIGNvbmZpcm1BZ2VudERlbGV0ZWQ6ICdFbCBhZ2VudGUgc2UgaGEgZWxpbWluYWRvIGNvbiDDqXhpdG8nLFxuICAgIGNvbmZpcm1BZ2VudFdpdGhGaWxlc0Vycm9yOiAnRWwgYWdlbnRlIHNlIGNyZcOzIGV4aXRvc2FtZW50ZSwgcGVybyBoYXkgYXJjaGl2b3MgcXVlIG5vIHB1ZGllcm9uIHByb2Nlc2Fyc2UuJyxcbiAgICBjb25maXJtQWdlbnRVcGRhdGVkOiAnRWwgYWdlbnRlIHNlIGhhIGFjdHVhbGl6YWRvIGNvbiDDqXhpdG8nLFxuICAgIGNvbmZpcm1DbG9zZUNyZWF0ZUFnZW50OiAnwr9Fc3TDoXMgc2VndXJvIGRlIHF1ZSBxdWllcmVzIGNlcnJhcj8gU2UgcGVyZGVyw6FuIGxvcyBjYW1iaW9zIHJlYWxpemFkb3MuJyxcbiAgICBjb25maXJtQ2xvc2VFZGl0QWdlbnQ6ICfCv0VzdMOhcyBzZWd1cm8gZGUgcXVlIHF1aWVyZXMgY2VycmFyPyBTZSBwZXJkZXLDoW4gbG9zIGNhbWJpb3MgcmVhbGl6YWRvcy4nLFxuICAgIGNvbmZpcm1SZWxvYWRCcm93c2VyOiAnwr9Fc3TDoXMgc2VndXJvIGRlIHF1ZSBxdWllcmVzIHJlY2FyZ2FyIGxhIHDDoWdpbmE/IFNlIHBlcmRlcsOhbiBsb3MgY2FtYmlvcyByZWFsaXphZG9zLicsXG4gICAgZXJyb3JBY2Nlc3NEZW5pZWQ6ICdObyB0aWVuZXMgcGVybWlzb3MgcGFyYSBhY2NlZGVyIGEgZXN0ZSBhZ2VudGUuIENvbnRhY3RhIGNvbiBzb3BvcnRlLicsXG4gICAgZXJyb3JBZ2VudENyZWF0ZWQ6ICdPY3VycmnDsyB1biBlcnJvciBpbmVzcGVyYWRvLiBQb3IgZmF2b3IgdnVlbHZlIGEgaW50ZW50YXJsby4nLFxuICAgIGF0dGFjaG1lbnRDYXJkOiB7XG4gICAgICBkb3dubG9hZDogJ0Rlc2NhcmdhcicsXG4gICAgICBkZWxldGU6ICdFbGltaW5hcicsXG4gICAgfSxcbiAgICBnZW5lcmFsU2VjdGlvbjoge1xuICAgICAgdGl0bGU6ICdHZW5lcmFsJyxcbiAgICAgIGdlbmVyYWxTZXR0aW5nczogJ0NvbmZpZ3VyYWNpw7NuIGdlbmVyYWwnLFxuICAgICAgcmVxdWlyZWRGaWVsZHNMYWJlbDogJypvYmxpZ2F0b3Jpb3MnLFxuICAgICAgaW5mb0xhYmVsOiAnQWdyZWdhIHRvZGEgbGEgaW5mb3JtYWNpw7NuIHBhcmEgcGVyc29uYWxpemFyIGVsIGNvbXBvcnRhbWllbnRvIGRlIHR1IGFnZW50ZScsXG4gICAgICBvcHRpb25hbExhYmVsOiAnT3BjaW9uYWwnLFxuICAgICAgYmFzaWNTZXR0aW5nczogJ0NvbmZpZ3VyYWNpw7NuIGLDoXNpY2EnLFxuICAgICAgc2VsZWN0RW1vamk6ICdTZWxlY2Npb25hciBlbW9qaScsXG4gICAgICBuYW1lOiAnwr9DdcOhbCBlcyBlbCBub21icmUgZGUgdHUgYWdlbnRlPycsXG4gICAgICBuYW1lUGxhY2Vob2xkZXI6ICdBc8OtZ25hbGUgdW4gbm9tYnJlIGEgdHUgYWdlbnRlJyxcbiAgICAgIGJlaGF2aW9yU2V0dGluZ3M6ICdDb25maWd1cmFjacOzbiBkZSBjb21wb3J0YW1pZW50bycsXG4gICAgICBpbml0aWFsUHJvbXB0OiAnwr9DdcOhbGVzIHNvbiBsYXMgaW5zdHJ1Y2Npb25lcz8nLFxuICAgICAgaW5pdGlhbFByb21wdFBsYWNlaG9sZGVyOlxuICAgICAgICAnRWplbXBsbzogRXJlcyB1biBzb2NpYWwgbWVkaWEgY29weXdyaXRlciBxdWUgcmVkYWN0YSB5IGFkYXB0YSBtZW5zYWplcyBwYXJhIGRpZmVyZW50ZXMgcmVkZXMsIGFzZWd1cmFuZG8gY29uc2lzdGVuY2lhIGVuIGVsIHRvbm8sIGxhIHBlcnNvbmFsaWRhZCB5IGxvcyB2YWxvcmVzIGRlIGxhIG1hcmNhLlwiJyxcbiAgICAgIG1vZGVsQWlMYWJlbDogJ01vZGVsbyBkZSBBSScsXG4gICAgICBub01vZGVsc0F2YWlsYWJsZTogJ05vIGhheSBtb2RlbG9zIGRpc3BvbmlibGVzJyxcbiAgICAgIGlucHV0UGxhY2Vob2xkZXJUaXRsZTogJ8K/UXXDqSB2ZXLDoSBlbCB1c3VhcmlvIGVuIGVsIGNhbXBvIGRlIGNoYXQgYW50ZXMgZGUgZXNjcmliaXI/JyxcbiAgICAgIGlucHV0UGxhY2Vob2xkZXI6ICdQcmVnw7pudGFtZSBsbyBxdWUgbmVjZXNpdGVz4oCmJyxcbiAgICAgIGludHJvZHVjdGlvbjogJ8K/Q8OzbW8gc2UgdmEgYSBwcmVzZW50YXIgdHUgYWdlbnRlPycsXG4gICAgICBpbnRyb2R1Y3Rpb25QbGFjZWhvbGRlcjpcbiAgICAgICAgJ0VqZW1wbG86IMKhSG9sYSEg8J+Riy4gVGUgdm95IGEgYXl1ZGFyIGEgY3JlYXIsIGFkYXB0YXIgeSByZXZpc2FyIGNvcHlzIHBhcmEgZGlzdGludGFzIHBsYXRhZm9ybWFzIGFzZWd1cmFuZG8gcXVlIG1hbnRlbmdhbiBsYSB2b3osIGVsIHRvbm8geSBsYSBwZXJzb25hbGlkYWQgZGUgdHUgbWFyY2EuIFB1ZWRlcyBwZWRpcm1lIHF1ZSB0ZSBwcm9wb25nYSBpZGVhcyBwYXJhIHVuYSBjYW1wYcOxYSwgYWRhcHRlIHVuIHRleHRvIHBhcmEgb3RybyBjYW5hbCBvIHJldmlzZSBsYSBjb2hlcmVuY2lhIGRlbCBtZW5zYWplJyxcbiAgICAgIGVycm9yOiB7XG4gICAgICAgIG1heENhcmFjdGVyTmFtZTogJ0NvbXBsZXRhc3RlIGxvcyAxNTAgY2FyYWN0ZXJlcyBkZWwgbMOtbWl0ZS4nLFxuICAgICAgICBtYXhDYXJhY3RlckluaXRpYWxQcm9tcHQ6ICdDb21wbGV0YXN0ZSBsb3MgNTAwMCBjYXJhY3RlcmVzIGRlbCBsw61taXRlLicsXG4gICAgICAgIG1heElucHV0UGxhY2Vob2xkZXI6ICdDb21wbGV0YXN0ZSBsb3MgMTAwIGNhcmFjdGVyZXMgZGVsIGzDrW1pdGUuJyxcbiAgICAgICAgbWF4Q2FyYWN0ZXJJbnRyb2R1Y3Rpb246ICdDb21wbGV0YXN0ZSBsb3MgNDAwIGNhcmFjdGVyZXMgZGVsIGzDrW1pdGUuJyxcbiAgICAgIH0sXG4gICAgICBob3dUb1dyaXRlUHJvbXB0OiAnQ8OzbW8gcmVkYWN0YXIgdW4gcHJvbXB0JyxcbiAgICAgIHdoYXRJc01vZGVsQWlUaXRsZTogJ8K/UXXDqSBtb2RlbG8gZGUgSUEgdmFzIGEgdXNhcj8nLFxuICAgICAgd2hhdElzTW9kZWxBaTogJ8K/UXXDqSBlcyB1biBtb2RlbG8gZGUgQUk/JyxcbiAgICAgIGFkZEZhdm9yaXRlOiAnQWdyZWdhciBhIGZhdm9yaXRvcycsXG4gICAgICByZW1vdmVGYXZvcml0ZTogJ1F1aXRhciBkZSBmYXZvcml0b3MnLFxuICAgICAgY3JlYXRlZEJ5OiAnUG9yJyxcbiAgICAgIGNyZWF0ZWRCeVRvb2x0aXA6ICdVc3VhcmlvIGNyZWFkb3IgZGVsIGFnZW50ZScsXG4gICAgICBjcmVhdGVkQnlUb29sdGlwRGVsZXRlZDogJ1VzdWFyaW8gZWxpbWluYWRvLiBTdSBub21icmUgc2UgbWFudGllbmUgcGFyYSByZWZlcmVuY2lhLicsXG4gICAgfSxcbiAgICBrbm93bGVkZ2VTZWN0aW9uOiB7XG4gICAgICB0aXRsZTogJ0Nvbm9jaW1pZW50bycsXG4gICAgICBrbm93bGVkZ2VUYWI6ICdCYXNlIGRlIGNvbm9jaW1pZW50b3MnLFxuICAgICAgaW5mb0xhYmVsOiAnQ2FyZ2EgbG9zIGFyY2hpdm9zIHF1ZSB0dSBhZ2VudGUgdXNhcsOhIGNvbW8gZnVlbnRlIHBhcmEgc3VzIHJlc3B1ZXN0YXMuJyxcbiAgICAgIHNlbGVjdEZpbGVUaXRsZTogJ1NFTEVDQ0lPTkFSIEFSQ0hJVk9TJyxcbiAgICAgIGF0dGFjaEZpbGVzOiAnQWRqdW50YXIgYXJjaGl2b3MnLFxuICAgICAgZHJvcFpvbmVUZXh0OiB7XG4gICAgICAgIDE6ICdDbGljIGFxdcOtIHBhcmEgY2FyZ2FyJyxcbiAgICAgICAgMjogJ28gYXJyYXN0cmEgbG9zIGFyY2hpdm9zJyxcbiAgICAgIH0sXG4gICAgICBpbmZvRmlsZVR5cGVzOlxuICAgICAgICAnLm1kLCAucGRmLCAuZG9jLCAuZG9jeCwgLnBwdCwgLnBwdHgsIC50eHQsIC5jc3YsIC5wbmcsIC5qcGcsIC5qcGVnLCAueGxzLCAueGxzeCAgKG3DoXguIHRvdGFsIGRlIDVNQiknLFxuICAgICAgZXJyb3I6IHtcbiAgICAgICAgdGl0bGU6ICdBbGd1bm9zIGFyY2hpdm9zIG5vIHNlIHB1ZGllcm9uIGNhcmdhcicsXG4gICAgICAgIG1heEZpbGVzVGl0bGU6ICdIYXMgc3VwZXJhZG8gZWwgbMOtbWl0ZSBkZSB0YW1hw7FvIHRvdGFsJyxcbiAgICAgICAgbWF4RmlsZXNEZXNjcmlwdGlvbjpcbiAgICAgICAgICAnU29sbyBwdWVkZXMgYWRqdW50YXIgYXJjaGl2b3MgaGFzdGEgdW4gdG90YWwgZGUgNSBNQi4gTG9zIHNpZ3VpZW50ZXMgYXJjaGl2b3Mgbm8gc2UgcHVkaWVyb24gYWRqdW50YXI6JyxcbiAgICAgICAgbWF4U2l6ZVRpdGxlOiAnU3VwZXJhc3RlIGVsIGzDrW1pdGUgZGUgcGVzbyBwZXJtaXRpZG8nLFxuICAgICAgICBtYXhTaXplRGVzY3JpcHRpb246IHtcbiAgICAgICAgICAxOiAnU2UgYWxjYW56w7MgZWwgbMOtbWl0ZSBtw6F4aW1vIGRlIDUgTUIuJyxcbiAgICAgICAgICAyOiAnRXN0b3MgYXJjaGl2b3Mgbm8gc2UgY2FyZ2Fyb24gcG9ycXVlIHN1cGVyYSBlbCBlc3BhY2lvIGRpc3BvbmlibGU6JyxcbiAgICAgICAgfSxcbiAgICAgICAgaW52YWxpZEV4dGVuc2lvbkRlc2NyaXB0aW9uOiB7XG4gICAgICAgICAgMTogJ1NvbG8gc2UgYWNlcHRhbiBhcmNoaXZvcyBjb24gbGFzIHNpZ3VpZW50ZXMgZXh0ZW5zaW9uZXM6IC5tZCwgLnBkZiwgLmRvYywgLmRvY3gsIC5wcHQsIC5wcHR4LCAudHh0LCAuY3N2LCAucG5nLCAuanBnLCAuanBlZywgLnhscywgLnhsc3gnLFxuICAgICAgICAgIDI6ICdFc3RvcyBhcmNoaXZvcyBubyBzZSBjYXJnYXJvbiBwb3JxdWUgc3UgZXh0ZW5zacOzbiBubyBlc3TDoSBwZXJtaXRpZGE6JyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBtb3JlSW5mbzogJ01pcmEgY8OzbW8gZnVuY2lvbmEgYWPDoScsXG4gICAgfSxcbiAgICBhY2Nlc3NpYmlsaXR5U2VjdGlvbjoge1xuICAgICAgdGl0bGVUYWI6ICdQZXJtaXNvcycsXG4gICAgICB0aXRsZVNlY3Rpb246ICdWaXNpYmlsaWRhZCB5IHBlcm1pc29zIGRlbCBhZ2VudGUnLFxuICAgICAgc3VidGl0bGVTZWN0aW9uOiAnRGVmaW7DrSBxdWnDqW4gcHVlZGUgdXNhciBlc3RlIGFnZW50ZSB5IHNpIHB1ZWRlIGFjY2VkZXIgYSBkYXRvcyBkZSBDT1IuJyxcbiAgICAgIGNvclBlcm1pc3Npb25zVGl0bGU6ICdQZXJtaXNvcyBkZSBhY2Nlc28gYSBkYXRvcyBkZSBDT1InLFxuICAgICAgY29yUGVybWlzc2lvbnNTdWJ0aXRsZTogJ8K/QSBxdcOpIHRpZW5lIGFjY2VzbyBlc3RlIGFnZW50ZT8nLFxuICAgICAgdGFza0FjY2Vzc1RpdGxlOiAnQWNjZXNvIGEgdGFyZWFzJyxcbiAgICAgIHRhc2tBY2Nlc3NEZXNjcmlwdGlvbjogJ0VsIGFnZW50ZSBwb2Ryw6EgbGVlciwgY3JlYXIsIG1vZGlmaWNhciB5IGVsaW1pbmFyIHRhcmVhcyBzZWfDum4gbG9zIHBlcm1pc29zIGRlbCB1c3VhcmlvLicsXG4gICAgICB2aXNpYmlsaXR5VGl0bGU6ICdWaXNpYmlsaWRhZCBkZWwgYWdlbnRlJyxcbiAgICAgIHdob0NhbkFjY2VzczogJ8K/UXVpw6luIHB1ZWRlIHVzYXIgZXN0ZSBhZ2VudGU/JyxcbiAgICAgIGFsbENvbXBhbnlUaXRsZTogJ1RvZGEgbGEgY29tcGHDscOtYScsXG4gICAgICBhbGxDb21wYW55RGVzY3JpcHRpb246ICdUb2RvcyBsb3MgdXN1YXJpb3MgZGUgdHUgb3JnYW5pemFjacOzbiBwb2Ryw6FuIHZlciB5IHVzYXIgZXN0ZSBhZ2VudGUuJyxcbiAgICAgIGNsaWVudFRpdGxlOiAnUGFyYSBjbGllbnRlcyBlc3BlY8OtZmljb3MnLFxuICAgICAgY2xpZW50RGVzY3JpcHRpb246XG4gICAgICAgICdBc29jaWEgZXN0ZSBhZ2VudGUgYSB1bm8gbyBtw6FzIGNsaWVudGVzLiBUb2RvcyBsb3MgdXN1YXJpb3MgcG9kcsOhbiB2ZXIgY29uIHF1w6kgY2xpZW50ZXMgZXN0w6EgdmluY3VsYWRvLicsXG4gICAgICBvd25UaXRsZTogJ1NvbG8geW8nLFxuICAgICAgb3duRGVzY3JpcHRpb246ICdFc3RlIGFnZW50ZSBzZXLDoSBwcml2YWRvIHkgbm8gZXN0YXLDoSBkaXNwb25pYmxlIHBhcmEgb3Ryb3MgdXN1YXJpb3MuJyxcbiAgICAgIGNsaWVudHNTZWxlY3RlZDogJ0NsaWVudGVzIHNlbGVjY2lvbmFkb3M6JyxcbiAgICAgIHNlYXJjaEVycm9yOiAnwqFVcHMhIFR1dmltb3MgdW4gcHJvYmxlbWEgYWwgY2FyZ2FyIGxvcyBjbGllbnRlcy4gwr9QdWVkZXMgaW50ZW50YXJsbyBkZSBudWV2byBlbiB1biBtb21lbnRvPycsXG4gICAgICBzZWFyY2hFbXB0eTogJ8KhVXBzISBObyBlbmNvbnRyYW1vcyBjbGllbnRlcyBjb24gZXNlIG5vbWJyZS4gUHJ1ZWJhIHJlYWxpemFuZG8gb3RyYSBiw7pzcXVlZGEnLFxuICAgICAgc2VhcmNoSW5pdGlhbDogJ0NvbWllbnphIGEgZXNjcmliaXIgZWwgbm9tYnJlIGRlIHVuIGNsaWVudGUgcGFyYSBhc29jaWFybG8nLFxuICAgICAgc2VhcmNoUGxhY2Vob2xkZXI6ICdCdXNjYXIgY2xpZW50ZScsXG4gICAgICBjbGllbnRJbmFjdGl2ZTogJ0VzdGUgY2xpZW50ZSBlc3TDoSBpbmFjdGl2by4gVGUgcmVjb21lbmRhbW9zIHF1aXRhcmxvIGRlIGxhIGxpc3RhLicsXG4gICAgICBjbGllbnREZWxldGVkVG9vbHRpcDogJ0VzdGUgY2xpZW50ZSBmdWUgZWxpbWluYWRvLiBUZSByZWNvbWVuZGFtb3MgcXVpdGFybG8gZGUgbGEgbGlzdGEuJyxcbiAgICAgIGNsaWVudERlbGV0ZWQ6ICdDbGllbnRlIGVsaW1pbmFkbycsXG4gICAgICBjbGllbnRzRXJyb3I6ICdSZXZpc2EgbG9zIGNsaWVudGVzIGFzb2NpYWRvcycsXG4gICAgfSxcbiAgICBwcm9jZXNzaW5nS25vd2xlZGdlOiB7XG4gICAgICBkZXNjcmlwdGlvbkNyZWF0ZTpcbiAgICAgICAgJ0VzdGFtb3MgY3JlYW5kbyBlbCBBZ2VudGUgeSBzdSBiYXNlIGRlIGNvbm9jaW1pZW50by4gRXN0byBwdWVkZSBsbGV2YXIgdW5vcyBtb21lbnRvcy4gUG9yIGZhdm9yIG5vIGNpZXJyZSBlc3RhIHZlbnRhbmEgaGFzdGEgcXVlIGVsIHByb2Nlc28gc2UgaGF5YSBmaW5hbGl6YWRvLicsXG4gICAgICBkZXNjcmlwdGlvblVwZGF0ZTpcbiAgICAgICAgJ0VzdGFtb3MgYWN0dWFsaXphbmRvIGVsIEFnZW50ZSB5IHN1IGJhc2UgZGUgY29ub2NpbWllbnRvLiBFc3RvIHB1ZWRlIGxsZXZhciB1bm9zIG1vbWVudG9zLiBQb3IgZmF2b3Igbm8gY2llcnJlIGVzdGEgdmVudGFuYSBoYXN0YSBxdWUgZWwgcHJvY2VzbyBzZSBoYXlhIGZpbmFsaXphZG8uJyxcbiAgICAgIGZpbGVSb3c6ICdBcmNoaXZvJyxcbiAgICAgIHN0YXR1c1JvdzogJ0VzdGFkbycsXG4gICAgICBwZW5kaW5nOiAnUGVuZGllbnRlJyxcbiAgICAgIHByb2Nlc3Npbmc6ICdQcm9jZXNhbmRvJyxcbiAgICAgIGZhaWxlZDogJ0ZhbGxvJyxcbiAgICAgIGRvbmU6ICdDb21wbGV0YWRvJyxcbiAgICAgIGxvYWRpbmdGaWxlczogJ0NhcmdhbmRvIGFyY2hpdm9zLi4uJyxcbiAgICAgIGVycm9yOiB7fSxcbiAgICB9LFxuICAgIGRlbGV0ZUFnZW50TW9kYWw6IHtcbiAgICAgIHRpdGxlOiAnwr9EZXNlYXMgZWxpbWluYXIgZXN0ZSBhZ2VudGU/JyxcbiAgICAgIGZpcnN0UGFydDogJ0VzdMOhcyBwb3IgZWxpbWluYXIgJyxcbiAgICAgIHNlY29uZFBhcnQ6ICdFc3RhIGFjY2nDs24gbm8gc2UgcHVlZGUgZGVzaGFjZXIuJyxcbiAgICAgIGNhbmNlbDogJ0NhbmNlbGFyJyxcbiAgICAgIGRlbGV0ZTogJ0VsaW1pbmFyJyxcbiAgICB9LFxuICB9LFxuICBbU0VDVElPTlMucHJvamVjdFNlbGVjdG9yXToge1xuICAgIC4uLmdlbmVyaWNTZWN0aW9uLFxuICAgIHByb2plY3RTZWxlY3Rvcjoge1xuICAgICAgdGl0bGU6ICfCv0VuIHF1w6kgcHJveWVjdG8gdGUgcHVlZG8gYXNpc3Rpcj8nLFxuICAgICAgaGVsbG86IHtcbiAgICAgICAgdGl0bGU6ICdIb2xhIHt7bmFtZX19IPCfkYsnLFxuICAgICAgICBzdWJ0aXRsZTogJ8K/Q29uIHF1w6kgcHJveWVjdG8gcHVlZG8gYXl1ZGFydGU/JyxcbiAgICAgIH0sXG4gICAgICBzdWJ0aXRsZTogJ1NlbGVjY2lvbmEgZWwgcHJveWVjdG8gcGFyYSBxdWUgTUFJQSB0ZSByZXNwb25kYSBlbiBiYXNlIGEgdW4gY29udGV4dG8uJyxcbiAgICAgIGxhYmVsUHJvamVjdDogJ1NlbGVjY2lvbmEgdW4gcHJveWVjdG8nLFxuICAgICAgcGxhY2Vob2xkZXI6ICdCdXNjYXIgdW4gcHJveWVjdG8gcG9yIG5vbWJyZScsXG4gICAgICBjaGFuZ2VQcm9qZWN0OiAnQ2FtYmlhciBkZSBwcm95ZWN0bycsXG4gICAgICByZWNlbnRQcm9qZWN0czogJ1JlY2llbnRlcycsXG4gICAgICBzZWFyY2hpbmdQcm9qZWN0czogJ0J1c2NhbmRvIHR1cyBwcm95ZWN0b3MuLi4nLFxuICAgICAgZXJyb3JNZXNzYWdlOiAnwqFVcHMhIFR1dmltb3MgdW4gcHJvYmxlbWEgYWwgY2FyZ2FyIGxvcyBwcm95ZWN0b3MuIFBvciBmYXZvciwgaW50ZW50YSBkZSBudWV2byBlbiB1bm9zIG1pbnV0b3MuJyxcbiAgICAgIGVtcHR5UmVjZW50UHJvamVjdHM6XG4gICAgICAgICdObyB0aWVuZXMgcHJveWVjdG9zIHJlY2llbnRlcy4gRXNjcmliZSBlbCBub21icmUgZGUgdW4gcHJveWVjdG8gZW4gZWwgYnVzY2Fkb3IgcGFyYSBlbmNvbnRyYXJsby4nLFxuICAgICAgZW1wdHlTdGF0ZTogJ8KhVXBzISBObyBlbmNvbnRyYW1vcyBwcm95ZWN0b3MgY29uIGVzZSBub21icmUuIFByb2LDoSByZWFsaXphbmRvIG90cmEgYsO6c3F1ZWRhLicsXG4gICAgICB3aXRob3V0Q2xpZW50OiAnU2luIGNsaWVudGUnLFxuICAgICAgd2l0aG91dFRpdGxlOiAnU2luIHTDrXR1bG8nLFxuICAgIH0sXG4gIH0sXG4gIFtTRUNUSU9OUy5jbGllbnRTZWxlY3Rvcl06IHtcbiAgICAuLi5nZW5lcmljU2VjdGlvbixcbiAgICBjbGllbnRTZWxlY3Rvcjoge1xuICAgICAgdGl0bGU6ICfCv0VuIHF1w6kgY2xpZW50ZSB0ZSBwdWVkbyBhc2lzdGlyPycsXG4gICAgICBoZWxsbzoge1xuICAgICAgICB0aXRsZTogJ0hvbGEge3tuYW1lfX0g8J+RiycsXG4gICAgICAgIHN1YnRpdGxlOiAnwr9Db24gcXXDqSBjbGllbnRlIHB1ZWRvIGF5dWRhcnRlPycsXG4gICAgICB9LFxuICAgICAgc3VidGl0bGU6ICdTZWxlY2Npb25hIGVsIGNsaWVudGUgcGFyYSBxdWUgTUFJQSB0ZSByZXNwb25kYSBlbiBiYXNlIGEgdW4gY29udGV4dG8uJyxcbiAgICAgIGxhYmVsQ2xpZW50OiAnU2VsZWNjaW9uYSB1biBjbGllbnRlJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnQnVzY2FyIGNsaWVudGUgcG9yIHN1IG5vbWJyZScsXG4gICAgICBjaGFuZ2VDbGllbnQ6ICdDYW1iaWFyIGRlIGNsaWVudGUnLFxuICAgICAgcmVjZW50Q2xpZW50czogJ1JlY2llbnRlcycsXG4gICAgICBzZWFyY2hpbmdDbGllbnRzOiAnQnVzY2FuZG8gdHVzIGNsaWVudGVzLi4uJyxcbiAgICAgIGVycm9yTWVzc2FnZTogJ1R1dmltb3MgdW4gcHJvYmxlbWEgYWwgY2FyZ2FyIGxvcyBjbGllbnRlcy4gUG9yIGZhdm9yLCBpbnRlbnRhIGRlIG51ZXZvIGVuIHVub3MgbWludXRvcy4nLFxuICAgICAgZW1wdHlSZWNlbnRDbGllbnRzOlxuICAgICAgICAnTm8gdGllbmVzIGNsaWVudGVzIHJlY2llbnRlcy4gRXNjcmliZSBlbCBub21icmUgZGUgdW4gY2xpZW50ZSBlbiBlbCBidXNjYWRvciBwYXJhIGVuY29udHJhcmxvLicsXG4gICAgICBlbXB0eVN0YXRlOiAnVXBzISBObyBlbmNvbnRyYW1vcyBjbGllbnRlcyBjb24gZXNlIG5vbWJyZS4gUHJvYsOhIHJlYWxpemFuZG8gb3RyYSBiw7pzcXVlZGEuJyxcbiAgICAgIHByb2plY3Q6ICdwcm95ZWN0bycsXG4gICAgICBwcm9qZWN0czogJ3Byb3llY3RvcycsXG4gICAgfSxcbiAgfSxcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7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