@projectcor/maia-components 2.11.110-1 → 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 (668) 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 -1233
  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 -208
  188. package/lib/components/atoms/SkillsDropdown/SkillsDropdown.styles.js +0 -77
  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/SkillCreatedByIcon.js +0 -20
  284. package/lib/components/atoms/icons/SkillIcon.js +0 -30
  285. package/lib/components/atoms/icons/SkillVisibilityEveryoneIcon.js +0 -23
  286. package/lib/components/atoms/icons/SkillVisibilityOnlyMeIcon.js +0 -23
  287. package/lib/components/atoms/icons/SkillsNavIcon.js +0 -24
  288. package/lib/components/atoms/icons/SubtaskIcon.js +0 -36
  289. package/lib/components/atoms/icons/TaskLinkIcon.js +0 -27
  290. package/lib/components/atoms/icons/TelescopeIcon.js +0 -60
  291. package/lib/components/atoms/icons/TemplateGradientIcon.js +0 -42
  292. package/lib/components/atoms/icons/TextFile.js +0 -41
  293. package/lib/components/atoms/icons/WavFile.js +0 -39
  294. package/lib/components/atoms/icons/WebmFile.js +0 -50
  295. package/lib/components/atoms/icons/XlsFile.js +0 -42
  296. package/lib/components/atoms/icons/XlsxFile.js +0 -42
  297. package/lib/components/atoms/icons/index.js +0 -54
  298. package/lib/components/atoms/index.js +0 -42
  299. package/lib/components/index.js +0 -11
  300. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.interface.js +0 -2
  301. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.js +0 -149
  302. package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.styles.js +0 -53
  303. package/lib/components/molecules/AbmSection/AbmGeneralSection.js +0 -415
  304. package/lib/components/molecules/AbmSection/AbmGeneralSection.styles.js +0 -152
  305. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.js +0 -374
  306. package/lib/components/molecules/AbmSection/AbmKnowledgeSection.styles.js +0 -106
  307. package/lib/components/molecules/AbmSection/AbmLoaderFiles.js +0 -92
  308. package/lib/components/molecules/AbmSection/AbmLoaderFiles.styles.js +0 -57
  309. package/lib/components/molecules/AbmSection/index.js +0 -4
  310. package/lib/components/molecules/ChatAIClientSelector/ChatAIClientSelector.js +0 -52
  311. package/lib/components/molecules/ChatAIClientSelector/index.js +0 -2
  312. package/lib/components/molecules/ChatAIContent/ChatAIContent.js +0 -119
  313. package/lib/components/molecules/ChatAIContent/ChatAIContent.skeleton.js +0 -187
  314. package/lib/components/molecules/ChatAIContent/ChatAIContent.styles.js +0 -6
  315. package/lib/components/molecules/ChatAIContent/index.js +0 -2
  316. package/lib/components/molecules/ChatAIHistory/ChatAIHistory.js +0 -241
  317. package/lib/components/molecules/ChatAIHistory/index.js +0 -2
  318. package/lib/components/molecules/ChatAIHistory/styles.js +0 -22
  319. package/lib/components/molecules/ChatAIHome/ChatAIHome.js +0 -649
  320. package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.js +0 -115
  321. package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.styles.js +0 -95
  322. package/lib/components/molecules/ChatAIHome/index.js +0 -2
  323. package/lib/components/molecules/ChatAIHome/styles.js +0 -335
  324. package/lib/components/molecules/ChatAIMessages/ChatAICreateAgentActions.js +0 -137
  325. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +0 -853
  326. package/lib/components/molecules/ChatAIMessages/ChatAISuggestions.js +0 -47
  327. package/lib/components/molecules/ChatAIMessages/ChatAISuggestions.styles.js +0 -37
  328. package/lib/components/molecules/ChatAIMessages/README.md +0 -101
  329. package/lib/components/molecules/ChatAIMessages/index.js +0 -2
  330. package/lib/components/molecules/ChatAIMessages/newStyles.js +0 -131
  331. package/lib/components/molecules/ChatAIMessages/styles.js +0 -94
  332. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +0 -1254
  333. package/lib/components/molecules/ChatAIModal/ChatAIModal.styles.js +0 -58
  334. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.js +0 -127
  335. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.styles.js +0 -34
  336. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/index.js +0 -2
  337. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +0 -189
  338. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.styles.js +0 -26
  339. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/index.js +0 -2
  340. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +0 -453
  341. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.styles.js +0 -108
  342. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/index.js +0 -2
  343. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.js +0 -48
  344. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.styles.js +0 -38
  345. package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/index.js +0 -2
  346. package/lib/components/molecules/ChatAIModal/constants.js +0 -40
  347. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/FloatingPanelMotion.js +0 -16
  348. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/FloatingPanelMotion.styles.js +0 -12
  349. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/constants.js +0 -13
  350. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/index.js +0 -3
  351. package/lib/components/molecules/ChatAIModal/floatingPanelMotion/useFloatingPanelDragTilt.js +0 -57
  352. package/lib/components/molecules/ChatAIModal/index.js +0 -2
  353. package/lib/components/molecules/ChatAIModal/layout.js +0 -74
  354. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.js +0 -457
  355. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.styles.js +0 -218
  356. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.js +0 -430
  357. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.styles.js +0 -169
  358. package/lib/components/molecules/ChatAIMySkills/index.js +0 -2
  359. package/lib/components/molecules/ChatAIProjectSelector/ChatAIProjectSelector.js +0 -48
  360. package/lib/components/molecules/ChatAIProjectSelector/ChatAIProjectSelector.styles.js +0 -49
  361. package/lib/components/molecules/ChatAIProjectSelector/index.js +0 -2
  362. package/lib/components/molecules/ChatFooter/ChatFooter.js +0 -337
  363. package/lib/components/molecules/ChatFooter/ChatFooterCorAccess.js +0 -32
  364. package/lib/components/molecules/ChatFooter/ChatFooterCorAccess.styles.js +0 -14
  365. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.js +0 -201
  366. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.styles.js +0 -51
  367. package/lib/components/molecules/ChatFooter/index.js +0 -2
  368. package/lib/components/molecules/ChatFooter/styles.js +0 -23
  369. package/lib/components/molecules/ContextMentionInput/ContextMentionInput.js +0 -60
  370. package/lib/components/molecules/ContextMentionInput/ContextMentionInput.styles.js +0 -6
  371. package/lib/components/molecules/ContextMentionInput/index.js +0 -2
  372. package/lib/components/molecules/MessageFeedback/MessageFeedback.js +0 -118
  373. package/lib/components/molecules/MessageFeedback/index.js +0 -2
  374. package/lib/components/molecules/MessageFeedback/styles.js +0 -14
  375. package/lib/components/molecules/ProjectSummaryChat/ProjectSummaryChat.js +0 -127
  376. package/lib/components/molecules/ProjectSummaryChat/index.js +0 -2
  377. package/lib/components/molecules/ProjectSummaryChat/styles.js +0 -8
  378. package/lib/components/molecules/ProjectSummaryConfig/ProjectSummaryConfig.js +0 -152
  379. package/lib/components/molecules/ProjectSummaryConfig/index.js +0 -2
  380. package/lib/components/molecules/ProjectSummaryConfig/styles.js +0 -86
  381. package/lib/components/molecules/ProjectSummaryContent/ProjectSummaryContent.js +0 -49
  382. package/lib/components/molecules/ProjectSummaryContent/index.js +0 -2
  383. package/lib/components/molecules/ProjectSummaryModal/ProjectSummaryModal.js +0 -19
  384. package/lib/components/molecules/ProjectSummaryModal/index.js +0 -2
  385. package/lib/components/molecules/ProjectSummaryModal/styles.js +0 -2
  386. package/lib/components/molecules/Sidebar/Sidebar.js +0 -716
  387. package/lib/components/molecules/Sidebar/Sidebar.layout.styles.js +0 -157
  388. package/lib/components/molecules/Sidebar/Sidebar.skeleton.js +0 -48
  389. package/lib/components/molecules/Sidebar/Sidebar.styles.js +0 -75
  390. package/lib/components/molecules/Sidebar/index.js +0 -2
  391. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.js +0 -1420
  392. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.styles.js +0 -93
  393. package/lib/components/organisms/AbmAgentModal/index.js +0 -2
  394. package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.js +0 -182
  395. package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.styles.js +0 -34
  396. package/lib/components/organisms/AbmSkillGenerateModal/index.js +0 -2
  397. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.js +0 -585
  398. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.styles.js +0 -154
  399. package/lib/components/organisms/AbmSkillModal/index.js +0 -2
  400. package/lib/components/organisms/ChatAI/ChatAI.js +0 -167
  401. package/lib/components/organisms/ChatAI/index.js +0 -2
  402. package/lib/components/organisms/ChatAI/styles.js +0 -7
  403. package/lib/components/organisms/ClientAIButton/ClientAIButton.js +0 -23
  404. package/lib/components/organisms/ClientAIButton/index.js +0 -2
  405. package/lib/components/organisms/DeleteAgentModal/DeleteAgentModal.js +0 -86
  406. package/lib/components/organisms/DeleteAgentModal/DeleteAgentModal.styles.js +0 -39
  407. package/lib/components/organisms/DeleteAgentModal/index.js +0 -2
  408. package/lib/components/organisms/DeleteQuestionModal/DeleteQuestionModal.js +0 -122
  409. package/lib/components/organisms/DeleteQuestionModal/DeleteQuestionModal.styles.js +0 -47
  410. package/lib/components/organisms/DeleteQuestionModal/index.js +0 -2
  411. package/lib/components/organisms/EditQuestionModal/EditQuestionModal.js +0 -138
  412. package/lib/components/organisms/EditQuestionModal/EditQuestionModal.styles.js +0 -69
  413. package/lib/components/organisms/EditQuestionModal/index.js +0 -2
  414. package/lib/components/organisms/ModalFileExceeds/ModalFileExceeds.js +0 -113
  415. package/lib/components/organisms/ModalFileExceeds/ModalFileExceeds.styles.js +0 -54
  416. package/lib/components/organisms/ModalFileExceeds/index.js +0 -2
  417. package/lib/components/organisms/ProjectAIButton/ProjectAIButton.js +0 -26
  418. package/lib/components/organisms/ProjectAIButton/index.js +0 -2
  419. package/lib/components/organisms/ProjectSummary/ProjectSummary.js +0 -60
  420. package/lib/components/organisms/ProjectSummary/index.js +0 -2
  421. package/lib/components/organisms/ProjectSummary/styles.js +0 -7
  422. package/lib/components/organisms/SnackBar/Snackbar.interface.js +0 -2
  423. package/lib/components/organisms/SnackBar/Snackbar.js +0 -73
  424. package/lib/components/organisms/SnackBar/Snackbar.styles.js +0 -9
  425. package/lib/components/organisms/SnackBar/index.js +0 -2
  426. package/lib/components/organisms/SourcesInformation/SourceItem.js +0 -18
  427. package/lib/components/organisms/SourcesInformation/SourceItem.styles.js +0 -14
  428. package/lib/components/organisms/SourcesInformation/SourcesInformationModal.js +0 -66
  429. package/lib/components/organisms/SourcesInformation/SourcesInformationModal.styles.js +0 -27
  430. package/lib/components/organisms/SourcesInformation/index.js +0 -2
  431. package/lib/constants/config.js +0 -10
  432. package/lib/constants/formatExtensions.js +0 -55
  433. package/lib/constants/gqlClient.js +0 -4
  434. package/lib/constants/maiaHourAgentAccess.js +0 -15
  435. package/lib/constants/maiaTaskPanelAccess.js +0 -24
  436. package/lib/constants/maiaTaskPanelOutsideClick.js +0 -9
  437. package/lib/constants/maiaTaskPanelZIndex.js +0 -19
  438. package/lib/constants/permissions/config.js +0 -72
  439. package/lib/constants/permissions/index.js +0 -3
  440. package/lib/constants/permissions/types.js +0 -2
  441. package/lib/constants/permissions/utils.js +0 -18
  442. package/lib/constants/plannerSyncEvents.js +0 -15
  443. package/lib/constants/taskLinkIcon.js +0 -15
  444. package/lib/constants/taskUrls.js +0 -11
  445. package/lib/context/cor-user.js +0 -31
  446. package/lib/context/global-context.js +0 -39
  447. package/lib/dev/DevChatAI.js +0 -101
  448. package/lib/dev/DevContextMentionInput.js +0 -67
  449. package/lib/dev/ProjectSummary.js +0 -9
  450. package/lib/dev/Providers.js +0 -27
  451. package/lib/exports.js +0 -2
  452. package/lib/hooks/README.md +0 -192
  453. package/lib/hooks/index.js +0 -30
  454. package/lib/hooks/useAccessClient/index.js +0 -2
  455. package/lib/hooks/useAccessClient/useAccessClient.js +0 -81
  456. package/lib/hooks/useAgentModel/index.js +0 -2
  457. package/lib/hooks/useAgentModel/useAgentModel.js +0 -62
  458. package/lib/hooks/useAgentModel/useCreateAgent.js +0 -128
  459. package/lib/hooks/useAgentModel/useDeleteAgent.js +0 -88
  460. package/lib/hooks/useAgentModel/useUpdateAgent.js +0 -129
  461. package/lib/hooks/useAgentSuggestions.js +0 -60
  462. package/lib/hooks/useCaretPosition.js +0 -65
  463. package/lib/hooks/useChatManager/index.js +0 -2
  464. package/lib/hooks/useChatManager/useChatManager.interface.js +0 -2
  465. package/lib/hooks/useChatManager/useChatManager.js +0 -1782
  466. package/lib/hooks/useChatMessages/index.js +0 -2
  467. package/lib/hooks/useChatMessages/useChatMessages.interface.js +0 -2
  468. package/lib/hooks/useChatMessages/useChatMessages.js +0 -722
  469. package/lib/hooks/useChats/index.js +0 -2
  470. package/lib/hooks/useChats/useChats.interfaces.js +0 -2
  471. package/lib/hooks/useChats/useChats.js +0 -187
  472. package/lib/hooks/useClientSearch.js +0 -163
  473. package/lib/hooks/useContextMentions.js +0 -500
  474. package/lib/hooks/useContextPinPopover.js +0 -228
  475. package/lib/hooks/useDebounce.js +0 -18
  476. package/lib/hooks/useEntitySearch.js +0 -1053
  477. package/lib/hooks/useEvent.js +0 -93
  478. package/lib/hooks/useFrequentlyAskedQuestions.js +0 -150
  479. package/lib/hooks/useFrequentlyUsedActions.js +0 -94
  480. package/lib/hooks/useKnowledge/deleteKnowledge.js +0 -69
  481. package/lib/hooks/useKnowledge/downloadKnowledge.js +0 -81
  482. package/lib/hooks/useKnowledge/index.js +0 -4
  483. package/lib/hooks/useKnowledge/saveKnowledge.js +0 -107
  484. package/lib/hooks/useKnowledge/useKnowledgeOperations.js +0 -156
  485. package/lib/hooks/useMaiaTaskPanelZIndex.js +0 -17
  486. package/lib/hooks/useMentionAllowedTypes.js +0 -120
  487. package/lib/hooks/useMentionPopover.js +0 -342
  488. package/lib/hooks/useMinimizedPillBottomOffset.js +0 -110
  489. package/lib/hooks/useModal/index.js +0 -2
  490. package/lib/hooks/useModal/useModal.interfaces.js +0 -2
  491. package/lib/hooks/useModal/useModal.js +0 -47
  492. package/lib/hooks/useOnboardingNavigation.js +0 -20
  493. package/lib/hooks/useOrchestratorStream/index.js +0 -2
  494. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.interface.js +0 -2
  495. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +0 -269
  496. package/lib/hooks/useProjectSearch.js +0 -183
  497. package/lib/hooks/useProjectSummary.js +0 -101
  498. package/lib/hooks/useProjectSummaryConfig.js +0 -211
  499. package/lib/hooks/useProjects.js +0 -46
  500. package/lib/hooks/useRecentClientsSearch.js +0 -150
  501. package/lib/hooks/useRecentContexts.js +0 -86
  502. package/lib/hooks/useResize.js +0 -29
  503. package/lib/hooks/useSkillsCatalog.js +0 -66
  504. package/lib/hooks/useSlashCommands.js +0 -84
  505. package/lib/hooks/useSmoothStreamText/index.js +0 -2
  506. package/lib/hooks/useSmoothStreamText/useSmoothStreamText.js +0 -197
  507. package/lib/hooks/useSnackBarManager/useSnackBarManager.js +0 -41
  508. package/lib/hooks/useStreamResponse.js +0 -112
  509. package/lib/hooks/useStreamdownStyles.js +0 -13
  510. package/lib/hooks/useStreamingMessage/index.js +0 -2
  511. package/lib/hooks/useStreamingMessage/useStreamingMessage.js +0 -18
  512. package/lib/hooks/useT.js +0 -17
  513. package/lib/hooks/useTabTaskDefault.js +0 -33
  514. package/lib/hooks/useTaskPanel.js +0 -22
  515. package/lib/hooks/useTextOverflowEllipsisTooltip.js +0 -34
  516. package/lib/hooks/useToggle.js +0 -19
  517. package/lib/hooks/useToggleFavorite/index.js +0 -2
  518. package/lib/hooks/useToggleFavorite/useToggleFavorite.js +0 -83
  519. package/lib/index.css +0 -76
  520. package/lib/index.js +0 -30
  521. package/lib/lang/br/index.js +0 -785
  522. package/lib/lang/en/index.js +0 -785
  523. package/lib/lang/es/index.js +0 -786
  524. package/lib/lang/fr/index.js +0 -606
  525. package/lib/lang/index.js +0 -24
  526. package/lib/lang/utils.js +0 -33
  527. package/lib/mocks/mockChats.js +0 -395
  528. package/lib/mocks/mockOrchestrator.js +0 -5
  529. package/lib/mocks/mockProject.js +0 -11
  530. package/lib/mocks/mockProjectSummary.js +0 -6
  531. package/lib/mocks/mockedUser.js +0 -169
  532. package/lib/services/apolloClient.js +0 -3
  533. package/lib/services/appcues.js +0 -19
  534. package/lib/services/corpilot/ProjectSummary/getProjectSummary.js +0 -31
  535. package/lib/services/corpilot/ProjectSummary/index.js +0 -5
  536. package/lib/services/corpilot/client.js +0 -27
  537. package/lib/services/corpilot/index.js +0 -5
  538. package/lib/services/maia/Access/updateAccess.js +0 -59
  539. package/lib/services/maia/Actions/getFrequentlyUsedActions.js +0 -46
  540. package/lib/services/maia/Actions/getSlashCommands.js +0 -39
  541. package/lib/services/maia/Actions/index.js +0 -7
  542. package/lib/services/maia/Agents/createAgent.js +0 -39
  543. package/lib/services/maia/Agents/deleteAgent.js +0 -38
  544. package/lib/services/maia/Agents/fetchAgentDetail.js +0 -122
  545. package/lib/services/maia/Agents/getAgentById.js +0 -162
  546. package/lib/services/maia/Agents/getAgentModels.js +0 -112
  547. package/lib/services/maia/Agents/getAgentSuggestions.js +0 -44
  548. package/lib/services/maia/Agents/getAgents.js +0 -718
  549. package/lib/services/maia/Agents/setAgentToolGroups.js +0 -42
  550. package/lib/services/maia/Agents/toggleFavorite.js +0 -34
  551. package/lib/services/maia/Agents/updateAgent.js +0 -39
  552. package/lib/services/maia/Chats/deleteChat.js +0 -32
  553. package/lib/services/maia/Chats/getChatMessages.js +0 -144
  554. package/lib/services/maia/Chats/getChatsByUserId.js +0 -82
  555. package/lib/services/maia/Chats/index.js +0 -15
  556. package/lib/services/maia/Chats/markSessionAsRead.js +0 -32
  557. package/lib/services/maia/Chats/patchChat.js +0 -43
  558. package/lib/services/maia/Chats/wasHelpfulChat.js +0 -31
  559. package/lib/services/maia/Faqs/getFrequentlyAskedQuestions.js +0 -55
  560. package/lib/services/maia/Faqs/index.js +0 -5
  561. package/lib/services/maia/Knowledge/delete.js +0 -41
  562. package/lib/services/maia/Knowledge/download.js +0 -48
  563. package/lib/services/maia/Knowledge/index.js +0 -3
  564. package/lib/services/maia/Knowledge/save.js +0 -43
  565. package/lib/services/maia/Orchestrator/index.js +0 -7
  566. package/lib/services/maia/Orchestrator/orchestrator.js +0 -246
  567. package/lib/services/maia/RecentClients/getRecentClients.js +0 -43
  568. package/lib/services/maia/RecentClients/index.js +0 -6
  569. package/lib/services/maia/RecentContexts/getRecentContexts.js +0 -54
  570. package/lib/services/maia/RecentContexts/index.js +0 -6
  571. package/lib/services/maia/RecentProjects/getRecentProjects.js +0 -55
  572. package/lib/services/maia/RecentProjects/index.js +0 -6
  573. package/lib/services/maia/RecentTasks/getRecentTasks.js +0 -54
  574. package/lib/services/maia/RecentTasks/index.js +0 -6
  575. package/lib/services/maia/RecentUsers/getRecentUsers.js +0 -59
  576. package/lib/services/maia/RecentUsers/index.js +0 -6
  577. package/lib/services/maia/Skills/createSkill.js +0 -39
  578. package/lib/services/maia/Skills/deleteSkill.js +0 -38
  579. package/lib/services/maia/Skills/generateSkill.js +0 -41
  580. package/lib/services/maia/Skills/getSkills.js +0 -120
  581. package/lib/services/maia/Skills/updateSkill.js +0 -39
  582. package/lib/services/maia/client.js +0 -27
  583. package/lib/services/maia/index.js +0 -17
  584. package/lib/services/query/ClientSearchQuery.js +0 -5
  585. package/lib/services/query/entitySearchQuery.js +0 -18
  586. package/lib/services/query/index.js +0 -2
  587. package/lib/services/query/projectSearchByValueQuery.js +0 -5
  588. package/lib/services/query/taskUserTabQuery.js +0 -8
  589. package/lib/services/query/usersDirectoryQuery.js +0 -19
  590. package/lib/services/types.js +0 -6
  591. package/lib/services/utils/fetchCOR.js +0 -117
  592. package/lib/services/utils/getCookie.js +0 -10
  593. package/lib/services/utils/index.js +0 -3
  594. package/lib/services/utils/mapChatMessages.js +0 -287
  595. package/lib/services/utils/validateIsMaia.js +0 -4
  596. package/lib/store/chatsSidebarOptimistic.js +0 -92
  597. package/lib/store/chatsStore.types.js +0 -2
  598. package/lib/store/chatsStoreLifecycle.js +0 -8
  599. package/lib/store/faqsStore.types.js +0 -2
  600. package/lib/store/index.js +0 -4
  601. package/lib/store/maiaLastChatPersistence.js +0 -35
  602. package/lib/store/sessions/activeView.js +0 -22
  603. package/lib/store/sessions/index.js +0 -9
  604. package/lib/store/sessions/sessionHitlContext.js +0 -15
  605. package/lib/store/sessions/sessionNotificationSound.js +0 -57
  606. package/lib/store/sessions/sessionNotifications.js +0 -110
  607. package/lib/store/sessions/sessionNotifications.types.js +0 -2
  608. package/lib/store/sessions/sessionStreamManager.js +0 -715
  609. package/lib/store/sessions/sessionStreamingText.js +0 -80
  610. package/lib/store/sessions/sessions.types.js +0 -35
  611. package/lib/store/sessions/useSessionMeta.js +0 -39
  612. package/lib/store/sessions/useSessionStreamingText.js +0 -18
  613. package/lib/store/sessions/useSessionsStore.js +0 -197
  614. package/lib/store/useChatsStore.js +0 -387
  615. package/lib/store/useFaqsStore.js +0 -27
  616. package/lib/streamdownStyles.js +0 -9
  617. package/lib/styles/StyledCleanContainer.js +0 -7
  618. package/lib/styles/cascade.js +0 -14
  619. package/lib/styles/config.js +0 -47
  620. package/lib/styles/shared/scrollable.js +0 -3
  621. package/lib/styles/transitions.js +0 -21
  622. package/lib/types/Action.js +0 -2
  623. package/lib/types/AgentSuggestion.js +0 -2
  624. package/lib/types/Chat.js +0 -10
  625. package/lib/types/Client.js +0 -2
  626. package/lib/types/FrequentlyAskedQuestion.js +0 -2
  627. package/lib/types/Project.js +0 -2
  628. package/lib/types/ProjectSummaryConfigKeys.js +0 -9
  629. package/lib/types/Task.js +0 -2
  630. package/lib/types/agent.js +0 -2
  631. package/lib/types/agentModal.js +0 -2
  632. package/lib/types/contextMention.js +0 -37
  633. package/lib/types/global.d.js +0 -2
  634. package/lib/types/skill.js +0 -2
  635. package/lib/types/streamActivity.js +0 -2
  636. package/lib/types/userType.d.js +0 -2
  637. package/lib/utils/actionCategoryMap.js +0 -37
  638. package/lib/utils/actionIconMap.js +0 -61
  639. package/lib/utils/agentDisplayName.js +0 -42
  640. package/lib/utils/chatInputFiles.js +0 -52
  641. package/lib/utils/contextMentionIcons.js +0 -134
  642. package/lib/utils/contextMentionLabel.js +0 -4
  643. package/lib/utils/contextMentionTriggers.js +0 -51
  644. package/lib/utils/contextMentionTypeLabel.js +0 -17
  645. package/lib/utils/corConnectorMentionTypes.js +0 -41
  646. package/lib/utils/ensureStreamdownStyles.js +0 -21
  647. package/lib/utils/entityLinkRender.js +0 -135
  648. package/lib/utils/fileDownloadHelper.js +0 -40
  649. package/lib/utils/formatQuickActionMessage.js +0 -16
  650. package/lib/utils/formatUnreadCount.js +0 -6
  651. package/lib/utils/getUnitFileSize.js +0 -13
  652. package/lib/utils/hitlAnalytics.js +0 -65
  653. package/lib/utils/hoursPlannerQuickActionType.js +0 -64
  654. package/lib/utils/imagePreprocessor.js +0 -108
  655. package/lib/utils/index.js +0 -3
  656. package/lib/utils/maiaHostOpen.js +0 -19
  657. package/lib/utils/maiaStreamdownRehypePlugins.js +0 -27
  658. package/lib/utils/mapBackendLang.js +0 -8
  659. package/lib/utils/normalizeAgentConnectors.js +0 -70
  660. package/lib/utils/openTaskInCorPanel.js +0 -22
  661. package/lib/utils/orchestratorSubagents.js +0 -11
  662. package/lib/utils/renderContextMentions.js +0 -420
  663. package/lib/utils/retryCompletion.js +0 -85
  664. package/lib/utils/slashCommandMarker.js +0 -30
  665. package/lib/utils/sortManagerHoursHomeFuas.js +0 -14
  666. package/lib/utils/sseStreamContent.js +0 -17
  667. package/lib/utils/streamActivityMessages.js +0 -359
  668. package/lib/utils/validateTrimmedFields.js +0 -8
@@ -1,786 +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 compartida',
482
- useSkill: 'Usar skill',
483
- infoTooltip: 'Las skills son instrucciones que le das a un agente para que resuelva una tarea siempre de la misma forma. Mencionala con # en el chat y el agente seguirá ese paso a paso.',
484
- sharedCreatedBy: 'Creada por {{name}}',
485
- nameLabel: 'Nombre',
486
- namePlaceholder: 'Nombre de la skill',
487
- descriptionLabel: 'Descripción',
488
- descriptionPlaceholder: 'Describe brevemente para qué sirve la skill',
489
- instructionsLabel: 'Instrucciones',
490
- shareWithCompany: 'Habilitar para toda la compañía',
491
- createdBy: 'Creado por',
492
- lastUpdated: 'Última actualización',
493
- saveAndUse: 'Guardar y usar skill',
494
- contentLabel: 'Skill',
495
- contentPlaceholder: 'Escribe la skill...',
496
- emptyStateTitle: 'Aún no tienes skills creadas',
497
- emptyStateDescription: 'Haz clic en el botón de abajo para empezar a crear skills a tu medida.',
498
- emptyStateDescriptionNoPerm: 'Cuando la persona con permisos para crearlas las configure, vas a poder acceder desde acá.',
499
- emptyStateButton: 'Crear skill',
500
- searchEmptyStateTitle: 'No encontramos ninguna skill',
501
- searchEmptyStateDescription: 'Prueba con otro término o revisa tu búsqueda.',
502
- createSuccess: 'Skill creada con éxito',
503
- createError: 'No se pudo crear la skill. Intenta nuevamente.',
504
- updateSuccess: 'Skill actualizada con éxito',
505
- updateError: 'No se pudo actualizar la skill. Intenta nuevamente.',
506
- deleteSuccess: 'Skill eliminada con éxito',
507
- deleteError: 'No se pudo eliminar la skill. Intenta nuevamente.'
508
- },
509
- snackbar: {
510
- deleteChat: {
511
- success: 'Tu conversación fue eliminada con éxito.',
512
- error: 'Ocurrió un error inesperado. Por favor vuelve a intentarlo.'
513
- },
514
- renamedChat: {
515
- success: 'Conversación renombrada con éxito',
516
- error: 'Ocurrió un error inesperado. Por favor vuelve a intentarlo.'
517
- },
518
- loadMoreAgents: {
519
- error: 'Ocurrió un error inesperado. Por favor vuelve a intentarlo.'
520
- }
521
- },
522
- approvalBox: {
523
- untitledAgent: 'Agente sin nombre',
524
- actions: {
525
- create_task: 'Creación de tarea',
526
- create_tasks_batch: 'Creación de tareas',
527
- create_agent: 'Creación de agente',
528
- edit_agent: 'Edición de agente',
529
- edit_project: 'Edición de proyecto',
530
- edit_task: 'Edición de tarea',
531
- edit_tasks_batch: 'Edición de tareas',
532
- delete_task: 'Eliminación de tarea',
533
- delete_tasks_batch: 'Eliminación de tareas',
534
- task_assign: 'Asignación de usuario',
535
- task_unassign: 'Desasignación de usuario',
536
- assign_task_label: 'Asignación de etiqueta',
537
- create_labels: 'Creación de etiqueta',
538
- update_task_type: 'Actualización de tipo de tarea',
539
- update_estimated_hours: 'Actualización de horas estimadas',
540
- update_deliverable: 'Actualización de entregable',
541
- create_hour: 'Carga de horas',
542
- create_checklist: 'Creación de checklist',
543
- create_checklist_item: 'Creación de ítem del checklist',
544
- clone_task: 'Clonar tarea',
545
- get_task_date_hours: 'Consulta de horas por fecha',
546
- configure_agent_access: 'Cambiar visibilidad del agente',
547
- send_task_message: 'Envío de mensaje en la tarea',
548
- delete_checklist_item: 'Eliminación de ítem del checklist',
549
- remove_task_type: 'Eliminación de tipo de tarea',
550
- remove_task_label: 'Eliminación de etiqueta',
551
- count_deliverable: 'Actualización del contador de entregables',
552
- create_rework: 'Creación de retrabajo',
553
- update_rework: 'Actualización de retrabajo',
554
- delete_agent: 'Eliminación de agente',
555
- unknown: 'Acción desconocida'
556
- },
557
- special: {
558
- createRework: {
559
- title: 'Crear retrabajo',
560
- description: 'Se creará un retrabajo en la tarea con la información indicada.'
561
- },
562
- updateDeliverableChildren: {
563
- title: 'Actualizar avance de entregables',
564
- description: 'Se actualizará el avance de los subentregables vinculados a esta tarea.'
565
- }
566
- },
567
- fields: {
568
- name: 'Nombre',
569
- emoji: 'Emoji',
570
- introduction: 'Introducción',
571
- input_placeholder: 'Placeholder',
572
- user_prompt: 'Prompt principal',
573
- language: 'Idioma',
574
- provider: 'Provider',
575
- model_name: 'Modelo',
576
- api_key: 'API key'
577
- },
578
- title: 'Confirmación requerida',
579
- description: 'Se requiere tu aprobación para ejecutar la siguiente acción:',
580
- approve: 'Aprobar',
581
- deny: 'Denegar',
582
- manualApprovalWarning: 'Maia ha detectado que la solicitud ha sido aprobada manualmente',
583
- status: {
584
- approved: 'Solicitud Aprobada',
585
- denied: 'Solicitud Denegada'
586
- }
587
- },
588
- chipLlm: {
589
- tooltip: 'Modelo: {{model}}'
590
- },
591
- clientSelector: {
592
- project: 'proyecto',
593
- projects: 'proyectos'
594
- }
595
- })), SECTIONS.abmAgent, _objectSpread(_objectSpread({}, genericSection), {}, {
596
- legendDeletedAgent: 'Este agente ha sido eliminado el día',
597
- legendProjectDeleted: 'El proyecto {{name}} ha sido eliminado. No es posible continuar con la conversación',
598
- legendNoAccess: 'Ya no tienes acceso para interactuar con el agente {{name}}',
599
- legendNoPermissions: 'Ya no tienes permisos para visualizar ni interactuar con el agente {{name}}',
600
- legendLegacyContextSession: 'Esta conversación pertenece a un contexto anterior. Podés continuar con {{name}} en un chat nuevo.',
601
- continueInNewChat: 'Continuar en un chat nuevo',
602
- legendModelDeprecated: 'El modelo seleccionado para este agente ya no está disponible. Cambia a otro modelo para seguir utilizándolo.',
603
- legendProviderStatus: 'El modelo que usa este agente está teniendo problemas temporales. Puedes esperar a que se restablezca o cambiar a otro modelo.',
604
- changeModel: 'Cambiar modelo',
605
- agents: 'Agentes',
606
- layoutMenuTooltip: 'Disposición del chat',
607
- layoutSidebar: 'Chat lateral',
608
- layoutFullscreen: 'Chat completo',
609
- layoutFloating: 'Chat flotante',
610
- back: 'Volver',
611
- addAgent: 'Agregar nuevo agente',
612
- newAgent: 'Nuevo agente',
613
- editAgent: 'Editar agente',
614
- createAgent: 'Crear Agente',
615
- cancel: 'Cancelar',
616
- accept: 'Aceptar',
617
- deleteAgent: 'Eliminar agente',
618
- "continue": 'Continuar',
619
- edit: 'Editar',
620
- "delete": 'Eliminar',
621
- feedback: 'Enviar Feedback',
622
- sendFeedback: 'Enviar feedback',
623
- saveChanges: 'Guardar cambios',
624
- createAgentLabelButton: 'Crear agente',
625
- openAgentCreator: 'Crear agente',
626
- openMarketplace: 'Marketplace de agentes',
627
- confirmAgentUpdatedWithFilesError: 'El agente se editó exitosamente, pero hay archivos que no pudieron procesarse.',
628
- confirmAgentCreated: 'El agente se ha creado con éxito',
629
- confirmAgentDeleted: 'El agente se ha eliminado con éxito',
630
- confirmAgentWithFilesError: 'El agente se creó exitosamente, pero hay archivos que no pudieron procesarse.',
631
- confirmAgentUpdated: 'El agente se ha actualizado con éxito',
632
- confirmCloseCreateAgent: '¿Estás seguro de que quieres cerrar? Se perderán los cambios realizados.',
633
- confirmCloseEditAgent: '¿Estás seguro de que quieres cerrar? Se perderán los cambios realizados.',
634
- confirmReloadBrowser: '¿Estás seguro de que quieres recargar la página? Se perderán los cambios realizados.',
635
- errorAccessDenied: 'No tienes permisos para acceder a este agente. Contacta con soporte.',
636
- errorAgentCreated: 'Ocurrió un error inesperado. Por favor vuelve a intentarlo.',
637
- attachmentCard: {
638
- download: 'Descargar',
639
- "delete": 'Eliminar'
640
- },
641
- generalSection: {
642
- title: 'General',
643
- generalSettings: 'Configuración general',
644
- requiredFieldsLabel: '*obligatorios',
645
- infoLabel: 'Agrega toda la información para personalizar el comportamiento de tu agente',
646
- optionalLabel: 'Opcional',
647
- basicSettings: 'Configuración básica',
648
- selectEmoji: 'Seleccionar emoji',
649
- name: '¿Cuál es el nombre de tu agente?',
650
- namePlaceholder: 'Asígnale un nombre a tu agente',
651
- behaviorSettings: 'Configuración de comportamiento',
652
- initialPrompt: '¿Cuáles son las instrucciones?',
653
- 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."',
654
- modelAiLabel: 'Modelo de AI',
655
- noModelsAvailable: 'No hay modelos disponibles',
656
- inputPlaceholderTitle: '¿Qué verá el usuario en el campo de chat antes de escribir?',
657
- inputPlaceholder: 'Pregúntame lo que necesites…',
658
- introduction: '¿Cómo se va a presentar tu agente?',
659
- 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',
660
- error: {
661
- maxCaracterName: 'Completaste los 150 caracteres del límite.',
662
- maxCaracterInitialPrompt: 'Completaste los 5000 caracteres del límite.',
663
- maxInputPlaceholder: 'Completaste los 100 caracteres del límite.',
664
- maxCaracterIntroduction: 'Completaste los 400 caracteres del límite.'
665
- },
666
- howToWritePrompt: 'Cómo redactar un prompt',
667
- whatIsModelAiTitle: '¿Qué modelo de IA vas a usar?',
668
- whatIsModelAi: '¿Qué es un modelo de AI?',
669
- addFavorite: 'Agregar a favoritos',
670
- removeFavorite: 'Quitar de favoritos',
671
- createdBy: 'Por',
672
- createdByTooltip: 'Usuario creador del agente',
673
- createdByTooltipDeleted: 'Usuario eliminado. Su nombre se mantiene para referencia.'
674
- },
675
- knowledgeSection: {
676
- title: 'Conocimiento',
677
- knowledgeTab: 'Base de conocimientos',
678
- infoLabel: 'Carga los archivos que tu agente usará como fuente para sus respuestas.',
679
- selectFileTitle: 'SELECCIONAR ARCHIVOS',
680
- attachFiles: 'Adjuntar archivos',
681
- dropZoneText: {
682
- 1: 'Clic aquí para cargar',
683
- 2: 'o arrastra los archivos'
684
- },
685
- infoFileTypes: '.md, .pdf, .doc, .docx, .ppt, .pptx, .txt, .csv, .png, .jpg, .jpeg, .xls, .xlsx (máx. total de 5MB)',
686
- error: {
687
- title: 'Algunos archivos no se pudieron cargar',
688
- maxFilesTitle: 'Has superado el límite de tamaño total',
689
- maxFilesDescription: 'Solo puedes adjuntar archivos hasta un total de 5 MB. Los siguientes archivos no se pudieron adjuntar:',
690
- maxSizeTitle: 'Superaste el límite de peso permitido',
691
- maxSizeDescription: {
692
- 1: 'Se alcanzó el límite máximo de 5 MB.',
693
- 2: 'Estos archivos no se cargaron porque supera el espacio disponible:'
694
- },
695
- invalidExtensionDescription: {
696
- 1: 'Solo se aceptan archivos con las siguientes extensiones: .md, .pdf, .doc, .docx, .ppt, .pptx, .txt, .csv, .png, .jpg, .jpeg, .xls, .xlsx',
697
- 2: 'Estos archivos no se cargaron porque su extensión no está permitida:'
698
- }
699
- },
700
- moreInfo: 'Mira cómo funciona acá'
701
- },
702
- accessibilitySection: {
703
- titleTab: 'Permisos',
704
- titleSection: 'Visibilidad y permisos del agente',
705
- subtitleSection: 'Definí quién puede usar este agente y si puede acceder a datos de COR.',
706
- corPermissionsTitle: 'Permisos de acceso a datos de COR',
707
- corPermissionsSubtitle: '¿A qué tiene acceso este agente?',
708
- taskAccessTitle: 'Acceso a tareas',
709
- taskAccessDescription: 'El agente podrá leer, crear, modificar y eliminar tareas según los permisos del usuario.',
710
- visibilityTitle: 'Visibilidad del agente',
711
- whoCanAccess: '¿Quién puede usar este agente?',
712
- allCompanyTitle: 'Toda la compañía',
713
- allCompanyDescription: 'Todos los usuarios de tu organización podrán ver y usar este agente.',
714
- clientTitle: 'Para clientes específicos',
715
- clientDescription: 'Asocia este agente a uno o más clientes. Todos los usuarios podrán ver con qué clientes está vinculado.',
716
- ownTitle: 'Solo yo',
717
- ownDescription: 'Este agente será privado y no estará disponible para otros usuarios.',
718
- clientsSelected: 'Clientes seleccionados:',
719
- searchError: '¡Ups! Tuvimos un problema al cargar los clientes. ¿Puedes intentarlo de nuevo en un momento?',
720
- searchEmpty: '¡Ups! No encontramos clientes con ese nombre. Prueba realizando otra búsqueda',
721
- searchInitial: 'Comienza a escribir el nombre de un cliente para asociarlo',
722
- searchPlaceholder: 'Buscar cliente',
723
- clientInactive: 'Este cliente está inactivo. Te recomendamos quitarlo de la lista.',
724
- clientDeletedTooltip: 'Este cliente fue eliminado. Te recomendamos quitarlo de la lista.',
725
- clientDeleted: 'Cliente eliminado',
726
- clientsError: 'Revisa los clientes asociados'
727
- },
728
- processingKnowledge: {
729
- 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.',
730
- 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.',
731
- fileRow: 'Archivo',
732
- statusRow: 'Estado',
733
- pending: 'Pendiente',
734
- processing: 'Procesando',
735
- failed: 'Fallo',
736
- done: 'Completado',
737
- loadingFiles: 'Cargando archivos...',
738
- error: {}
739
- },
740
- deleteAgentModal: {
741
- title: '¿Deseas eliminar este agente?',
742
- firstPart: 'Estás por eliminar ',
743
- secondPart: 'Esta acción no se puede deshacer.',
744
- cancel: 'Cancelar',
745
- "delete": 'Eliminar'
746
- }
747
- })), SECTIONS.projectSelector, _objectSpread(_objectSpread({}, genericSection), {}, {
748
- projectSelector: {
749
- title: '¿En qué proyecto te puedo asistir?',
750
- hello: {
751
- title: 'Hola {{name}} 👋',
752
- subtitle: '¿Con qué proyecto puedo ayudarte?'
753
- },
754
- subtitle: 'Selecciona el proyecto para que MAIA te responda en base a un contexto.',
755
- labelProject: 'Selecciona un proyecto',
756
- placeholder: 'Buscar un proyecto por nombre',
757
- changeProject: 'Cambiar de proyecto',
758
- recentProjects: 'Recientes',
759
- searchingProjects: 'Buscando tus proyectos...',
760
- errorMessage: '¡Ups! Tuvimos un problema al cargar los proyectos. Por favor, intenta de nuevo en unos minutos.',
761
- emptyRecentProjects: 'No tienes proyectos recientes. Escribe el nombre de un proyecto en el buscador para encontrarlo.',
762
- emptyState: '¡Ups! No encontramos proyectos con ese nombre. Probá realizando otra búsqueda.',
763
- withoutClient: 'Sin cliente',
764
- withoutTitle: 'Sin título'
765
- }
766
- })), SECTIONS.clientSelector, _objectSpread(_objectSpread({}, genericSection), {}, {
767
- clientSelector: {
768
- title: '¿En qué cliente te puedo asistir?',
769
- hello: {
770
- title: 'Hola {{name}} 👋',
771
- subtitle: '¿Con qué cliente puedo ayudarte?'
772
- },
773
- subtitle: 'Selecciona el cliente para que MAIA te responda en base a un contexto.',
774
- labelClient: 'Selecciona un cliente',
775
- placeholder: 'Buscar cliente por su nombre',
776
- changeClient: 'Cambiar de cliente',
777
- recentClients: 'Recientes',
778
- searchingClients: 'Buscando tus clientes...',
779
- errorMessage: 'Tuvimos un problema al cargar los clientes. Por favor, intenta de nuevo en unos minutos.',
780
- emptyRecentClients: 'No tienes clientes recientes. Escribe el nombre de un cliente en el buscador para encontrarlo.',
781
- emptyState: 'Ups! No encontramos clientes con ese nombre. Probá realizando otra búsqueda.',
782
- project: 'proyecto',
783
- projects: 'proyectos'
784
- }
785
- }));
786
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTRUNUSU9OUyIsIlByb2plY3RTdW1tYXJ5Q29uZmlnS2V5cyIsImdsb2JhbHMiLCJjbG9zZSIsIm1pbmltaXplIiwiaG93V29ya3MiLCJicmFuZE5hbWUiLCJleHBhbmQiLCJjb2xsYXBzZSIsImdvQmFjayIsImNvcHkiLCJjb3BpZWQiLCJzYXZlZCIsInNlbGVjdFByb2plY3QiLCJzYXZlIiwiY2FuY2VsIiwiZXJyb3IiLCJ0aXRsZSIsImRlc2NyaXB0aW9uIiwidHJ5QWdhaW4iLCJnZW5lcmljU2VjdGlvbiIsInByb2plY3RTdW1tYXJ5U2VjdGlvbiIsInJlc3VtZSIsImhlbGxvIiwid2VsY29tZSIsImZlZWRiYWNrIiwidGh1bWJzVXAiLCJ0aHVtYnNEb3duIiwic291cmNlcyIsImNvbmZpZyIsInByb2plY3RTdW1tYXJ5IiwicHJvamVjdFN1bW1hcnlUaXRsZSIsInNlbGVjdGVkUHJvamVjdCIsImNvbmZpZ3VyZVJlc3VtZSIsImdlbmVyYXRpbmdSZXN1bWUiLCJnZW5lcmF0ZVJlc3VtZSIsImhpZGVDb25maWciLCJjb25maWd1cmVTZXR0aW5ncyIsIl9kZWZpbmVQcm9wZXJ0eSIsIkdFTkVSQUxfU1RBVFVTIiwiSU5DT01FX0NPU1RTIiwiVElNRV9IT1VSUyIsIlRBU0tTX1BST0dSRVNTIiwiUkVXT1JLUyIsImhvbWVNZW51IiwiZmFxIiwic3RhcnRUaXRsZSIsImVtcHR5IiwiY2F0ZWdvcmllcyIsInByb2plY3RzIiwidGFza3MiLCJob3VycyIsInJld29ya3MiLCJ1bmRlZmluZWQiLCJmdWEiLCJuZXdCYWRnZSIsInJlY2VudENvbnRleHRzIiwidHlwZXMiLCJjbGllbnQiLCJwcm9qZWN0IiwidGFzayIsImNvbnRleHRIb21lIiwiZ3JlZXRpbmciLCJzdWJ0aXRsZSIsInN1YnRpdGxlQ29sbGFib3JhdG9yIiwic3VidGl0bGVDb2xsYWJvcmF0b3JXaXRoSG91cnMiLCJzdWJ0aXRsZU1hbmFnZXJXaXRoSG91cnMiLCJob3Vyc1NlY3Rpb24iLCJyZWNlbnRUYXNrc1NlY3Rpb24iLCJyZWNlbnRDb250ZXh0c1NlY3Rpb25NYW5hZ2VyIiwiY29udGV4dEdyZWV0aW5nIiwicGxhbm5lckhvbWUiLCJhY3Rpb24iLCJjb2xsYWJvcmF0b3JzIiwibGFiZWxzIiwiY2hlY2tsaXN0cyIsImRlbGl2ZXJhYmxlcyIsImNyZWF0ZWRCeSIsImNyZWF0ZWRCeVRvb2x0aXAiLCJjcmVhdGVkQnlUb29sdGlwRGVsZXRlZCIsInRhc2tHcmVldGluZyIsInRpdGxlXzEiLCJ0aXRsZV8yIiwidGl0bGVfMyIsInRpdGxlUG0iLCJzdWJ0aXRsZVBtIiwibWFpYWtlciIsImNyZWF0ZU1hbnVhbEFnZW50IiwiYmFkZ2VOZXciLCJicmllZkNhcmQiLCJwcm9tcHQiLCJjb21pbmdTb29uQ2FyZCIsIl9vYmplY3RTcHJlYWQiLCJjaGF0QUkiLCJjb250ZXh0TWVudGlvbiIsImtleWJvYXJkSGludCIsInJlY2VudHNUaXRsZSIsInVzZXJOb1Bvc2l0aW9uIiwibWUiLCJ0YWJzIiwidXNlciIsIm1jcCIsInNraWxsIiwibG9hZGluZyIsInJlY2VudHMiLCJ3aXRoUXVlcnkiLCJjb3VudGVycyIsImNvbnRleHRQaW4iLCJhZGRDb250ZXh0Iiwic2VhcmNoUGxhY2Vob2xkZXIiLCJyZW1vdmUiLCJidXR0b24iLCJuZXdDaGF0Iiwib3BlbkFnZW50Q3JlYXRvciIsIm9wZW5NYXJrZXRwbGFjZSIsImhpc3RvcnkiLCJ0b29sdGlwIiwiaXRlbSIsImRhdGUiLCJtZW51IiwicmVuYW1lIiwibG9hZGluZ01vcmUiLCJvbmJvYXJkaW5nIiwibWFpYSIsImFnZW50Q3VzdG9tIiwiaG93Q3JlYXRlQWdlbnQiLCJob3dJdFdvcmtzIiwicWEiLCJpdGVtcyIsInJlbnRhYmlsaWRhZF9wcm95ZWN0byIsImF2YW5jZV9wcm95ZWN0byIsInRhcmVhc19wcm95ZWN0byIsImNoYXQiLCJnZW5lcmF0aW5nIiwiZ2VuZXJhdGluZ0F0dGFjaG1lbnQiLCJnZW5lcmF0aW5nRGVlcFNlYXJjaCIsImdlbmVyYXRpbmdXZWJTZWFyY2giLCJzdWdnZXN0aW9uc1RpdGxlIiwiY3JlYXRlQWdlbnRBY3Rpb25zVGl0bGUiLCJjcmVhdGVBZ2VudEFjdGlvblN0YXJ0Q2hhdCIsImNyZWF0ZUFnZW50QWN0aW9uS25vd2xlZGdlIiwiY3JlYXRlQWdlbnRBY3Rpb25Mb2FkRXJyb3IiLCJ3cml0aW5nIiwiZXhlY3V0aW5nQWN0aW9uIiwicHJvY2Vzc2luZyIsImFjdGl2aXR5IiwicHJlcGFyaW5nIiwiY29uc2lkZXJpbmciLCJhbG1vc3RSZWFkeSIsInRoaW5raW5nIiwiYW5hbHl6aW5nIiwicmV2aWV3aW5nIiwicGxhbm5pbmciLCJzZWFyY2giLCJzY2FubmluZyIsInN1bW1hcml6aW5nIiwiZGVlcFNlYXJjaCIsImV4cGxvcmluZyIsImNyb3NzQ2hlY2tpbmciLCJhdHRhY2htZW50IiwicmVhZGluZyIsImV4dHJhY3RpbmciLCJyZWFkaW5nUGx1cmFsIiwiZXh0cmFjdGluZ1BsdXJhbCIsImNvbXBvc2luZyIsImR5bmFtaWNDb250ZXh0VG9vbHRpcCIsImNyZWF0aW5nVGFzayIsImNyZWF0aW5nVGFza3NCYXRjaCIsImNyZWF0aW5nQWdlbnQiLCJlZGl0aW5nQWdlbnQiLCJlZGl0aW5nVGFzayIsImVkaXRpbmdUYXNrc0JhdGNoIiwiZGVsZXRpbmdUYXNrIiwiZGVsZXRpbmdUYXNrc0JhdGNoIiwiYXNzaWduaW5nVXNlciIsInVuYXNzaWduaW5nVXNlciIsImFzc2lnbmluZ0xhYmVsIiwidXBkYXRpbmdUYXNrVHlwZSIsInVwZGF0aW5nRXN0aW1hdGVkSG91cnMiLCJ1cGRhdGluZ0RlbGl2ZXJhYmxlIiwibG9nZ2luZ0hvdXJzIiwiY3JlYXRpbmdDaGVja2xpc3QiLCJjcmVhdGluZ0xhYmVsIiwiZWRpdGluZ1Byb2plY3QiLCJjcmVhdGluZ0NoZWNrbGlzdEl0ZW0iLCJxdWVyeWluZ0hvdXJzIiwiY29uZmlndXJpbmdBZ2VudEFjY2VzcyIsInNlbmRpbmdUYXNrTWVzc2FnZSIsImRlbGV0aW5nQ2hlY2tsaXN0SXRlbSIsInJlbW92aW5nVGFza1R5cGUiLCJyZW1vdmluZ0xhYmVsIiwidXBkYXRpbmdEZWxpdmVyYWJsZUNvdW50IiwiY3JlYXRpbmdSZXdvcmsiLCJ1cGRhdGluZ1Jld29yayIsImdlbmVyYXRpbmdGaWxlIiwicmVzdW1pbmdBY3Rpb24iLCJmb290ZXIiLCJwbGFjZWhvbGRlciIsIm9yY2hlc3RyYXRvclBsYWNlaG9sZGVyIiwiYWdlbnRMYWJlbCIsImRpc2NsYWltZXIiLCJkaXNjbGFpbWVyQWdlbnQiLCJjb3JBY2Nlc3NMYWJlbCIsImNvckFjY2Vzc1Rvb2x0aXAiLCJyZXRyeSIsImVycm9yQWNjZXNzRGVuaWVkIiwiZXJyb3JQcm9tcHRUb29Mb25nIiwiY2hhbmdlUHJvamVjdCIsInNlYXJjaFdlYiIsImF0dGFjaEZpbGUiLCJwbHVzTWVudUF0dGFjaCIsImRyb3BGaWxlc0hlcmUiLCJwbHVzTWVudURlZXBJbnZlc3RpZ2F0aW9uIiwicGx1c01lbnVRdWlja0FjdGlvbnMiLCJvcGVuUGx1c01lbnVBcmlhIiwib3Blbk1lbnRpb25BcmlhIiwicmVtb3ZlQXR0YWNobWVudEFyaWEiLCJyZW1vdmVBY3RpdmVUb29sQXJpYSIsInNlbmQiLCJsaW1pdEZpbGVzIiwic3RvcCIsImNhbmNlbGxlZCIsInRvb01hbnlBY3RpdmVTZXNzaW9ucyIsImF0dGFjaG1lbnRQcmV2aWV3TW9kYWwiLCJ1bnN1cHBvcnRlZEZpbGVNZXNzYWdlIiwidHlwZUxhYmVsIiwidW5rbm93biIsInNpemVMYWJlbCIsImV4Y2VsIiwic2hlZXRTZWxlY3RvckxhYmVsIiwibG9hZEVycm9yIiwiZmlsZVJlYWRFcnJvciIsInNoZWV0TG9hZEVycm9yIiwid29yZCIsImxlZ2FjeURvY1Vuc3VwcG9ydGVkIiwicHB0IiwibGVnYWN5UHB0VW5zdXBwb3J0ZWQiLCJzbGlkZUxhYmVsIiwiZW1wdHlTbGlkZSIsImRlbGV0ZVF1ZXN0aW9uTW9kYWwiLCJmaXJzdFBhcnQiLCJzZWNvbmRQYXJ0IiwiZGVsZXRlU2tpbGxNb2RhbCIsImVkaXRRdWVzdGlvbk1vZGFsIiwibmV3TmFtZSIsIm1heExlbmd0aCIsIm1vZGFsRmlsZUV4Y2VlZHMiLCJsaW1pdEZpbGVzVGl0bGUiLCJsaW1pdFNpemVUaXRsZSIsImxpbWl0RmlsZXNEZXNjcmlwdGlvbiIsImxpbWl0U2l6ZURlc2NyaXB0aW9uIiwiYWNjZXB0IiwibGltaXQiLCJzb3VyY2VzSW5mb3JtYXRpb25Nb2RhbCIsImFnZW50cyIsIm5ld0FnZW50IiwiY3JlYXRlQWdlbnQiLCJlZGl0IiwiYWRkRmF2b3JpdGUiLCJyZW1vdmVGYXZvcml0ZSIsImZhdm9yaXRlVG9nZ2xlZEFkZGVkU3VjY2VzcyIsImZhdm9yaXRlVG9nZ2xlZFJlbW92ZWRTdWNjZXNzIiwiZmF2b3JpdGVUb2dnbGVkRXJyb3IiLCJmYXZvcml0ZVRvZ2dsZWRSZW1vdmVkRXJyb3IiLCJtYWlhSW50cm9kdWN0aW9uIiwiY29udmVyc2F0aW9ucyIsImFnZW50c1NlY3Rpb25UaXRsZSIsIm1haWFrZXJOYXYiLCJteUFnZW50c05hdiIsIm15U2tpbGxzTmF2IiwiZW1wdHlMYWJlbCIsInVucmVhZExhYmVsIiwibWluaW1pemVkT3BlbiIsIm1pbmltaXplZFNlZUFuc3dlciIsInNlc3Npb25GaW5pc2hlZCIsInNlc3Npb25GaW5pc2hlZEFwcHJvdmFsIiwic2Vzc2lvbkZpbmlzaGVkRXJyb3IiLCJtYXJrZXRwbGFjZSIsImJhY2siLCJteUFnZW50c1RpdGxlIiwibXlBZ2VudHNSZWFkeVRpdGxlIiwibXlBZ2VudHNEZXNjcmlwdGlvbiIsIm15QWdlbnRzRW1wdHlTdGF0ZVRpdGxlIiwibXlBZ2VudHNFbXB0eVN0YXRlRGVzY3JpcHRpb24iLCJteUFnZW50c0VtcHR5U3RhdGVEZXNjcmlwdGlvbk5vUGVybSIsIm15QWdlbnRzRW1wdHlTdGF0ZUJ1dHRvbiIsIm15QWdlbnRzRmFsbGJhY2tJbnRybyIsIm15QWdlbnRzRmFsbGJhY2tEZXNjcmlwdGlvbiIsIm15QWdlbnRzRmFsbGJhY2tEYXRlIiwibXlBZ2VudHNUb2RheSIsIm15QWdlbnRzT25lRGF5QWdvIiwibXlBZ2VudHNEYXlzQWdvIiwiY2FyZE1lbnVBcmlhTGFiZWwiLCJ1c2UiLCJzZWFyY2hBZ2VudFBsYWNlaG9sZGVyIiwic2VhcmNoTWluTGVuZ3RoIiwic2VhcmNoTm9SZXN1bHRzIiwic2VhcmNoTm9SZXN1bHRzU3VidGl0bGUiLCJ1c2VUZW1wbGF0ZSIsInVzZU15QWdlbnQiLCJiYWRnZXMiLCJicmFuZGluZyIsImxpbmtlZGluIiwibWFya2V0aW5nIiwibXlTa2lsbHMiLCJ0YWJNeVNraWxscyIsInRhYlNoYXJlZFNraWxscyIsImRyb3Bkb3duQnV0dG9uIiwiZHJvcGRvd25DcmVhdGUiLCJkcm9wZG93bkVtcHR5IiwiZHJvcGRvd25FcnJvciIsIm15U2tpbGxzRGVzY3JpcHRpb24iLCJzaGFyZWRTa2lsbHNEZXNjcmlwdGlvbiIsImNyZWF0ZU1hbnVhbGx5IiwidmlzaWJpbGl0eU9ubHlNZSIsInZpc2liaWxpdHlFdmVyeW9uZSIsInNoYXJlZEVtcHR5U3RhdGVUaXRsZSIsInNoYXJlZEVtcHR5U3RhdGVEZXNjcmlwdGlvbiIsImNyZWF0ZVNraWxsIiwicHJldmlldyIsInByZXZpZXdFbXB0eSIsInVwbG9hZE1kIiwidXBsb2FkRXJyb3IiLCJjcmVhdGVXaXRoTWFpYSIsIndyaXRlSW5zdHJ1Y3Rpb25zIiwidXBsb2FkU2tpbGwiLCJnZW5lcmF0ZVBsYWNlaG9sZGVyIiwiZ2VuZXJhdGVXaXRoTWFpYSIsImdlbmVyYXRlTmVlZHNOYW1lIiwiZ2VuZXJhdGVTdWNjZXNzIiwiZ2VuZXJhdGVFcnJvciIsImNyZWF0ZVRpdGxlIiwiZWRpdFRpdGxlIiwidmlld1RpdGxlIiwidXNlU2tpbGwiLCJpbmZvVG9vbHRpcCIsInNoYXJlZENyZWF0ZWRCeSIsIm5hbWVMYWJlbCIsIm5hbWVQbGFjZWhvbGRlciIsImRlc2NyaXB0aW9uTGFiZWwiLCJkZXNjcmlwdGlvblBsYWNlaG9sZGVyIiwiaW5zdHJ1Y3Rpb25zTGFiZWwiLCJzaGFyZVdpdGhDb21wYW55IiwibGFzdFVwZGF0ZWQiLCJzYXZlQW5kVXNlIiwiY29udGVudExhYmVsIiwiY29udGVudFBsYWNlaG9sZGVyIiwiZW1wdHlTdGF0ZVRpdGxlIiwiZW1wdHlTdGF0ZURlc2NyaXB0aW9uIiwiZW1wdHlTdGF0ZURlc2NyaXB0aW9uTm9QZXJtIiwiZW1wdHlTdGF0ZUJ1dHRvbiIsInNlYXJjaEVtcHR5U3RhdGVUaXRsZSIsInNlYXJjaEVtcHR5U3RhdGVEZXNjcmlwdGlvbiIsImNyZWF0ZVN1Y2Nlc3MiLCJjcmVhdGVFcnJvciIsInVwZGF0ZVN1Y2Nlc3MiLCJ1cGRhdGVFcnJvciIsImRlbGV0ZVN1Y2Nlc3MiLCJkZWxldGVFcnJvciIsInNuYWNrYmFyIiwiZGVsZXRlQ2hhdCIsInN1Y2Nlc3MiLCJyZW5hbWVkQ2hhdCIsImxvYWRNb3JlQWdlbnRzIiwiYXBwcm92YWxCb3giLCJ1bnRpdGxlZEFnZW50IiwiYWN0aW9ucyIsImNyZWF0ZV90YXNrIiwiY3JlYXRlX3Rhc2tzX2JhdGNoIiwiY3JlYXRlX2FnZW50IiwiZWRpdF9hZ2VudCIsImVkaXRfcHJvamVjdCIsImVkaXRfdGFzayIsImVkaXRfdGFza3NfYmF0Y2giLCJkZWxldGVfdGFzayIsImRlbGV0ZV90YXNrc19iYXRjaCIsInRhc2tfYXNzaWduIiwidGFza191bmFzc2lnbiIsImFzc2lnbl90YXNrX2xhYmVsIiwiY3JlYXRlX2xhYmVscyIsInVwZGF0ZV90YXNrX3R5cGUiLCJ1cGRhdGVfZXN0aW1hdGVkX2hvdXJzIiwidXBkYXRlX2RlbGl2ZXJhYmxlIiwiY3JlYXRlX2hvdXIiLCJjcmVhdGVfY2hlY2tsaXN0IiwiY3JlYXRlX2NoZWNrbGlzdF9pdGVtIiwiY2xvbmVfdGFzayIsImdldF90YXNrX2RhdGVfaG91cnMiLCJjb25maWd1cmVfYWdlbnRfYWNjZXNzIiwic2VuZF90YXNrX21lc3NhZ2UiLCJkZWxldGVfY2hlY2tsaXN0X2l0ZW0iLCJyZW1vdmVfdGFza190eXBlIiwicmVtb3ZlX3Rhc2tfbGFiZWwiLCJjb3VudF9kZWxpdmVyYWJsZSIsImNyZWF0ZV9yZXdvcmsiLCJ1cGRhdGVfcmV3b3JrIiwiZGVsZXRlX2FnZW50Iiwic3BlY2lhbCIsImNyZWF0ZVJld29yayIsInVwZGF0ZURlbGl2ZXJhYmxlQ2hpbGRyZW4iLCJmaWVsZHMiLCJuYW1lIiwiZW1vamkiLCJpbnRyb2R1Y3Rpb24iLCJpbnB1dF9wbGFjZWhvbGRlciIsInVzZXJfcHJvbXB0IiwibGFuZ3VhZ2UiLCJwcm92aWRlciIsIm1vZGVsX25hbWUiLCJhcGlfa2V5IiwiYXBwcm92ZSIsImRlbnkiLCJtYW51YWxBcHByb3ZhbFdhcm5pbmciLCJzdGF0dXMiLCJhcHByb3ZlZCIsImRlbmllZCIsImNoaXBMbG0iLCJjbGllbnRTZWxlY3RvciIsImFibUFnZW50IiwibGVnZW5kRGVsZXRlZEFnZW50IiwibGVnZW5kUHJvamVjdERlbGV0ZWQiLCJsZWdlbmROb0FjY2VzcyIsImxlZ2VuZE5vUGVybWlzc2lvbnMiLCJsZWdlbmRMZWdhY3lDb250ZXh0U2Vzc2lvbiIsImNvbnRpbnVlSW5OZXdDaGF0IiwibGVnZW5kTW9kZWxEZXByZWNhdGVkIiwibGVnZW5kUHJvdmlkZXJTdGF0dXMiLCJjaGFuZ2VNb2RlbCIsImxheW91dE1lbnVUb29sdGlwIiwibGF5b3V0U2lkZWJhciIsImxheW91dEZ1bGxzY3JlZW4iLCJsYXlvdXRGbG9hdGluZyIsImFkZEFnZW50IiwiZWRpdEFnZW50IiwiZGVsZXRlQWdlbnQiLCJzZW5kRmVlZGJhY2siLCJzYXZlQ2hhbmdlcyIsImNyZWF0ZUFnZW50TGFiZWxCdXR0b24iLCJjb25maXJtQWdlbnRVcGRhdGVkV2l0aEZpbGVzRXJyb3IiLCJjb25maXJtQWdlbnRDcmVhdGVkIiwiY29uZmlybUFnZW50RGVsZXRlZCIsImNvbmZpcm1BZ2VudFdpdGhGaWxlc0Vycm9yIiwiY29uZmlybUFnZW50VXBkYXRlZCIsImNvbmZpcm1DbG9zZUNyZWF0ZUFnZW50IiwiY29uZmlybUNsb3NlRWRpdEFnZW50IiwiY29uZmlybVJlbG9hZEJyb3dzZXIiLCJlcnJvckFnZW50Q3JlYXRlZCIsImF0dGFjaG1lbnRDYXJkIiwiZG93bmxvYWQiLCJnZW5lcmFsU2VjdGlvbiIsImdlbmVyYWxTZXR0aW5ncyIsInJlcXVpcmVkRmllbGRzTGFiZWwiLCJpbmZvTGFiZWwiLCJvcHRpb25hbExhYmVsIiwiYmFzaWNTZXR0aW5ncyIsInNlbGVjdEVtb2ppIiwiYmVoYXZpb3JTZXR0aW5ncyIsImluaXRpYWxQcm9tcHQiLCJpbml0aWFsUHJvbXB0UGxhY2Vob2xkZXIiLCJtb2RlbEFpTGFiZWwiLCJub01vZGVsc0F2YWlsYWJsZSIsImlucHV0UGxhY2Vob2xkZXJUaXRsZSIsImlucHV0UGxhY2Vob2xkZXIiLCJpbnRyb2R1Y3Rpb25QbGFjZWhvbGRlciIsIm1heENhcmFjdGVyTmFtZSIsIm1heENhcmFjdGVySW5pdGlhbFByb21wdCIsIm1heElucHV0UGxhY2Vob2xkZXIiLCJtYXhDYXJhY3RlckludHJvZHVjdGlvbiIsImhvd1RvV3JpdGVQcm9tcHQiLCJ3aGF0SXNNb2RlbEFpVGl0bGUiLCJ3aGF0SXNNb2RlbEFpIiwia25vd2xlZGdlU2VjdGlvbiIsImtub3dsZWRnZVRhYiIsInNlbGVjdEZpbGVUaXRsZSIsImF0dGFjaEZpbGVzIiwiZHJvcFpvbmVUZXh0IiwiaW5mb0ZpbGVUeXBlcyIsIm1heEZpbGVzVGl0bGUiLCJtYXhGaWxlc0Rlc2NyaXB0aW9uIiwibWF4U2l6ZVRpdGxlIiwibWF4U2l6ZURlc2NyaXB0aW9uIiwiaW52YWxpZEV4dGVuc2lvbkRlc2NyaXB0aW9uIiwibW9yZUluZm8iLCJhY2Nlc3NpYmlsaXR5U2VjdGlvbiIsInRpdGxlVGFiIiwidGl0bGVTZWN0aW9uIiwic3VidGl0bGVTZWN0aW9uIiwiY29yUGVybWlzc2lvbnNUaXRsZSIsImNvclBlcm1pc3Npb25zU3VidGl0bGUiLCJ0YXNrQWNjZXNzVGl0bGUiLCJ0YXNrQWNjZXNzRGVzY3JpcHRpb24iLCJ2aXNpYmlsaXR5VGl0bGUiLCJ3aG9DYW5BY2Nlc3MiLCJhbGxDb21wYW55VGl0bGUiLCJhbGxDb21wYW55RGVzY3JpcHRpb24iLCJjbGllbnRUaXRsZSIsImNsaWVudERlc2NyaXB0aW9uIiwib3duVGl0bGUiLCJvd25EZXNjcmlwdGlvbiIsImNsaWVudHNTZWxlY3RlZCIsInNlYXJjaEVycm9yIiwic2VhcmNoRW1wdHkiLCJzZWFyY2hJbml0aWFsIiwiY2xpZW50SW5hY3RpdmUiLCJjbGllbnREZWxldGVkVG9vbHRpcCIsImNsaWVudERlbGV0ZWQiLCJjbGllbnRzRXJyb3IiLCJwcm9jZXNzaW5nS25vd2xlZGdlIiwiZGVzY3JpcHRpb25DcmVhdGUiLCJkZXNjcmlwdGlvblVwZGF0ZSIsImZpbGVSb3ciLCJzdGF0dXNSb3ciLCJwZW5kaW5nIiwiZmFpbGVkIiwiZG9uZSIsImxvYWRpbmdGaWxlcyIsImRlbGV0ZUFnZW50TW9kYWwiLCJwcm9qZWN0U2VsZWN0b3IiLCJsYWJlbFByb2plY3QiLCJyZWNlbnRQcm9qZWN0cyIsInNlYXJjaGluZ1Byb2plY3RzIiwiZXJyb3JNZXNzYWdlIiwiZW1wdHlSZWNlbnRQcm9qZWN0cyIsImVtcHR5U3RhdGUiLCJ3aXRob3V0Q2xpZW50Iiwid2l0aG91dFRpdGxlIiwibGFiZWxDbGllbnQiLCJjaGFuZ2VDbGllbnQiLCJyZWNlbnRDbGllbnRzIiwic2VhcmNoaW5nQ2xpZW50cyIsImVtcHR5UmVjZW50Q2xpZW50cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sYW5nL2VzL2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNFQ1RJT05TIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2NvbmZpZydcbmltcG9ydCB7IFByb2plY3RTdW1tYXJ5Q29uZmlnS2V5cyB9IGZyb20gJy4uLy4uL3R5cGVzL1Byb2plY3RTdW1tYXJ5Q29uZmlnS2V5cydcblxuY29uc3QgZ2xvYmFscyA9IHtcbiAgY2xvc2U6ICdDZXJyYXInLFxuICBtaW5pbWl6ZTogJ01pbmltaXphcicsXG4gIGhvd1dvcmtzOiAnQ8OzbW8gZnVuY2lvbmE/JyxcbiAgYnJhbmROYW1lOiAnTUFJQScsXG4gIGV4cGFuZDogJ0V4cGFuZGlyJyxcbiAgY29sbGFwc2U6ICdDb2xhcHNhcicsXG4gIGdvQmFjazogJ1ZvbHZlciBhbCBpbmljaW8nLFxuICBjb3B5OiAnQ29waWFyJyxcbiAgY29waWVkOiAnQ29waWFkbycsXG4gIHNhdmVkOiAnR3VhcmRhZG8nLFxuICBzZWxlY3RQcm9qZWN0OiAnU2VsZWNjaW9uYXIgcHJveWVjdG8nLFxuICBzYXZlOiAnR3VhcmRhcicsXG4gIGNhbmNlbDogJ0NhbmNlbGFyJyxcbn1cblxuY29uc3QgZXJyb3IgPSB7XG4gIHRpdGxlOiAnSGEgb2N1cnJpZG8gdW4gcHJvYmxlbWEnLFxuICBkZXNjcmlwdGlvbjogJ0VuIGVzdG9zIG1vbWVudG9zIGVzdGFtb3MgZXhwZXJpbWVudGFuZG8gYWxndW5vcyBpbmNvbnZlbmllbnRlcywgcG9yIGZhdm9yLCBpbnRlbnRlIGVuIHVub3MgbWludXRvcy4nLFxuICB0cnlBZ2FpbjogJ1ZvbHZlciBhIGludGVudGFyJyxcbn1cblxuY29uc3QgZ2VuZXJpY1NlY3Rpb24gPSB7XG4gIGVycm9yLFxuICBnbG9iYWxzLFxufVxuXG5jb25zdCBwcm9qZWN0U3VtbWFyeVNlY3Rpb24gPSB7XG4gIHJlc3VtZTogJ1Jlc3VtaXInLFxuICBoZWxsbzogJ8KhSG9sYSwge3tuYW1lfX0hJyxcbiAgd2VsY29tZTogJ1NveSBNQUlBLCB0dSBhc2lzdGVudGUgZW4gQ09SJyxcblxuICBmZWVkYmFjazoge1xuICAgIHRodW1ic1VwOiAnTWUgc2lydmnDsycsXG4gICAgdGh1bWJzRG93bjogJ05vIG1lIHNpcnZpw7MnLFxuICAgIHNvdXJjZXM6ICdGdWVudGVzJyxcbiAgfSxcblxuICBjb25maWc6IHtcbiAgICBwcm9qZWN0U3VtbWFyeTogJ1Jlc3VtaXIgcHJveWVjdG8nLFxuICAgIHByb2plY3RTdW1tYXJ5VGl0bGU6ICdSZXN1bWVuIGRlIHByb3llY3RvcycsXG4gICAgZ29CYWNrOiAnVm9sdmVyIGF0csOhcycsXG4gICAgc2VsZWN0ZWRQcm9qZWN0OiAnUHJveWVjdG8gc2VsZWNjaW9uYWRvJyxcbiAgICBzZWxlY3RQcm9qZWN0OiAnU2VsZWNjaW9uYXIgcHJveWVjdG8nLFxuICAgIGNvbmZpZ3VyZVJlc3VtZTogJ0NvbmZpZ3VyYWNpw7NuIGF2YW56YWRhJyxcbiAgICBnZW5lcmF0aW5nUmVzdW1lOiAnR2VuZXJhbmRvIHJlc3VtZW4nLFxuICAgIGdlbmVyYXRlUmVzdW1lOiAnR2VuZXJhcicsXG4gICAgaGlkZUNvbmZpZzogJ09jdWx0YXIgY29uZmlndXJhY2nDs24nLFxuICB9LFxuXG4gIGNvbmZpZ3VyZVNldHRpbmdzOiB7XG4gICAgW1Byb2plY3RTdW1tYXJ5Q29uZmlnS2V5cy5HRU5FUkFMX1NUQVRVU106ICdGZWNoYXMgeSBkZWFkbGluZXMnLFxuICAgIFtQcm9qZWN0U3VtbWFyeUNvbmZpZ0tleXMuSU5DT01FX0NPU1RTXTogJ1JlbnRhYmlsaWRhZCcsXG4gICAgW1Byb2plY3RTdW1tYXJ5Q29uZmlnS2V5cy5USU1FX0hPVVJTXTogJ0VzdGltYWNpw7NuIGRlIGhvcmFzIHkgY29uc3VtbycsXG4gICAgW1Byb2plY3RTdW1tYXJ5Q29uZmlnS2V5cy5UQVNLU19QUk9HUkVTU106ICdUYXJlYXMgeSBhdmFuY2VzJyxcbiAgICBbUHJvamVjdFN1bW1hcnlDb25maWdLZXlzLlJFV09SS1NdOiAnUmV0cmFiYWpvcycsXG4gIH0sXG59XG5cbmNvbnN0IGhvbWVNZW51ID0ge1xuICBwcm9qZWN0U3VtbWFyeToge1xuICAgIHRpdGxlOiAnUmVzdW1lbiBkZWwgcHJveWVjdG8nLFxuICAgIGRlc2NyaXB0aW9uOiAnRWxhYm9yYSBpbmZvcm1lcyBjb24gQUkgYmFzYWRvIGVuIHR1IHByb3llY3RvJyxcbiAgfSxcbiAgZmFxOiB7XG4gICAgdGl0bGU6ICdQcmVndW50YXMgZnJlY3VlbnRlcycsXG4gICAgc3RhcnRUaXRsZTogJ1B1ZWRlcyBjb21lbnphciBwb3IuLi4nLFxuICAgIGVtcHR5OiAnTm8gaGF5IHByZWd1bnRhcyBmcmVjdWVudGVzJyxcbiAgICBlcnJvcjogJ8KhVXBzISBUdXZpbW9zIHVuIHByb2JsZW1hIGFsIGNhcmdhciBsYXMgcHJlZ3VudGFzIGZyZWN1ZW50ZXMuIFBvciBmYXZvciwgaW50ZW50YSBkZSBudWV2byBlbiB1bm9zIG1pbnV0b3MuJyxcbiAgICBjYXRlZ29yaWVzOiB7XG4gICAgICBwcm9qZWN0czogJ1Byb3llY3RvJyxcbiAgICAgIHRhc2tzOiAnVGFyZWFzJyxcbiAgICAgIGhvdXJzOiAnSG9yYXMnLFxuICAgICAgcmV3b3JrczogJ1JldHJhYmFqb3MnLFxuICAgICAgdW5kZWZpbmVkOiAnU2luIGNhdGVnb3LDrWEnLFxuICAgIH0sXG4gIH0sXG4gIGZ1YToge1xuICAgIHRpdGxlOiAnQWNjaW9uZXMgZnJlY3VlbnRlcycsXG4gICAgbmV3QmFkZ2U6ICdOdWV2bycsXG4gICAgZXJyb3I6ICfCoVVwcyEgVHV2aW1vcyB1biBwcm9ibGVtYSBhbCBjYXJnYXIgbGFzIGFjY2lvbmVzIGZyZWN1ZW50ZXMuIFBvciBmYXZvciwgaW50ZW50YSBkZSBudWV2byBlbiB1bm9zIG1pbnV0b3MuJyxcbiAgfSxcbiAgcmVjZW50Q29udGV4dHM6IHtcbiAgICB0aXRsZTogJ0VsaWdlIHVuIGNvbnRleHRvIHJlY2llbnRlIHBhcmEgbWF5b3IgcHJlY2lzacOzbiBlbiBsYSByZXNwdWVzdGE6JyxcbiAgICB0eXBlczoge1xuICAgICAgY2xpZW50OiAnQ2xpZW50ZScsXG4gICAgICBwcm9qZWN0OiAnUHJveWVjdG8nLFxuICAgICAgdGFzazogJ1RhcmVhJyxcbiAgICB9LFxuICB9LFxuICBjb250ZXh0SG9tZToge1xuICAgIGdyZWV0aW5nOiAnSG9sYSwge3tuYW1lfX0g8J+RiycsXG4gICAgc3VidGl0bGU6ICdTb3kgTUFJQSwgdHUgYXNpc3RlbnRlIGVuIHRhcmVhcywgcHJveWVjdG9zIHkgY2xpZW50ZXMuXFxuwr9TZWd1aW1vcyBjb24gYWxnbyByZWNpZW50ZT8nLFxuICAgIHN1YnRpdGxlQ29sbGFib3JhdG9yOiAnU295IE1BSUEsIHR1IGFzaXN0ZW50ZSBlbiB0YXJlYXMuIMK/U2VndWltb3MgY29uIGFsZ28gcmVjaWVudGU/JyxcbiAgICBzdWJ0aXRsZUNvbGxhYm9yYXRvcldpdGhIb3VyczogJ0NvbXBsZXTDoSB0dXMgaG9yYXMgbyBlbXBlesOhIHVuIGNoYXQgc29icmUgdW5hIHRhcmVhLicsXG4gICAgc3VidGl0bGVNYW5hZ2VyV2l0aEhvdXJzOiAnwr9Qb3IgZMOzbmRlIHF1aWVyZXMgZW1wZXphcj8nLFxuICAgIGhvdXJzU2VjdGlvbjoge1xuICAgICAgdGl0bGU6ICdDYXJnYSBob3JhcycsXG4gICAgfSxcbiAgICByZWNlbnRUYXNrc1NlY3Rpb246IHtcbiAgICAgIHRpdGxlOiAnQ29uc3VsdGEgc29icmUgdW5hIHRhcmVhJyxcbiAgICAgIHN1YnRpdGxlOiAnRWxlZ8OtIHVuYSB0YXJlYSByZWNpZW50ZSBwYXJhIHVzYXJsYSBjb21vIGNvbnRleHRvLicsXG4gICAgfSxcbiAgICByZWNlbnRDb250ZXh0c1NlY3Rpb25NYW5hZ2VyOiB7XG4gICAgICB0aXRsZTogJ08gcmV0b21hIGFsZ28gcmVjaWVudGUnLFxuICAgICAgc3VidGl0bGU6ICdFbGVnw60gdW5hIHRhcmVhLCBwcm95ZWN0byBvIGNsaWVudGUgcGFyYSB1c2FybG8gY29tbyBjb250ZXh0bycsXG4gICAgfSxcbiAgICBjb250ZXh0R3JlZXRpbmc6IHtcbiAgICAgIHByb2plY3Q6ICfCv1F1w6kgcXVpZXJlcyBxdWUgYW5hbGljZW1vcz8gwr9Ib3JhcywgZXN0aW1hY2lvbmVzLCByZXRyYWJham9zPywgwqF0dSBlbGlnZXMhJyxcbiAgICAgIHRhc2s6ICdFc3RveSBhcXXDrSBwYXJhIGF5dWRhcnRlIGNvbiBlc3RhIHRhcmVhLiBVc2EgdW5hIGRlIGxhcyBmdW5jaW9uZXMgcGFyYSBjb21lbnphci4nLFxuICAgICAgY2xpZW50OiAnwr9RdcOpIHF1aWVyZXMgcXVlIGFuYWxpY2Vtb3M/IMK/UmVudGFiaWxpZGFkLCBhdmFuY2VzLCBkZWFkbGluZXM/IMKhVMO6IGVsaWdlcyEnLFxuICAgIH0sXG4gIH0sXG4gIHBsYW5uZXJIb21lOiB7XG4gICAgdGl0bGU6ICdFbXBlY2Vtb3MgY29uIHR1IGNhcmdhIGRlIGhvcmFzJyxcbiAgICBzdWJ0aXRsZTogJ8K/UG9yIGTDs25kZSBjb21lbnphbW9zPycsXG4gIH0sXG4gIGFjdGlvbjoge1xuICAgIGNhdGVnb3JpZXM6IHtcbiAgICAgIHRhc2tzOiAnQWNjaW9uZXMgc29icmUgdGFyZWFzJyxcbiAgICAgIGNvbGxhYm9yYXRvcnM6ICdDb2xhYm9yYWRvcmVzIHkgcmVzcG9uc2FibGVzJyxcbiAgICAgIGxhYmVsczogJ0V0aXF1ZXRhcyB5IHRpcG9zJyxcbiAgICAgIGNoZWNrbGlzdHM6ICdDaGVja2xpc3RzJyxcbiAgICAgIGRlbGl2ZXJhYmxlczogJ0VudHJlZ2FibGVzJyxcbiAgICAgIHJld29ya3M6ICdSZXRyYWJham9zJyxcbiAgICAgIGhvdXJzOiAnQ2FyZ2EgZGUgaG9yYXMnLFxuICAgIH0sXG4gIH0sXG4gIGNyZWF0ZWRCeTogJ3BvcicsXG4gIGNyZWF0ZWRCeVRvb2x0aXA6ICdVc3VhcmlvIGNyZWFkb3IgZGVsIGFnZW50ZScsXG4gIGNyZWF0ZWRCeVRvb2x0aXBEZWxldGVkOiAnVXN1YXJpbyBlbGltaW5hZG8uIFN1IG5vbWJyZSBzZSBtYW50aWVuZSBwYXJhIHJlZmVyZW5jaWEuJyxcbiAgdGFza0dyZWV0aW5nOiAnRXN0b3kgYXF1w60gcGFyYSBheXVkYXJ0ZSBjb24gZXN0YSB0YXJlYS4gVXNhIHVuYSBkZSBsYXMgZnVuY2lvbmVzIHBhcmEgY29tZW56YXIuJyxcbiAgaGVsbG86IHtcbiAgICB0aXRsZTogJ8KhTGlzdG8hIFlhIGVzdG95IHVzYW5kbyBlbCBwcm95ZWN0bycsXG4gICAgdGl0bGVfMTogJ0FudGljaXBhIGRlc3bDrW9zLiBBbmFsaWNlbW9zIGVzdGUgcHJveWVjdG8uJyxcbiAgICB0aXRsZV8yOiAnwr9RdcOpIHF1aWVyZXMgcXVlIGFuYWxpY2Vtb3M/IMK/SG9yYXMsIGVzdGltYWNpb25lcywgcmV0cmFiYWpvcz8sIMKhdHUgZWxpZ2VzIScsXG4gICAgdGl0bGVfMzogJ1JldmlzZW1vcyBlbCBhdmFuY2UgZGUgZXN0ZSBwcm95ZWN0by4nLFxuICAgIHN1YnRpdGxlOiAnUGFyYSBlbXBlemFyLCB0ZSBwdWVkbyBheXVkYXIgY29uIGVzdGFzIG9wY2lvbmVzLiBPIHNpIG5vLCDCoWVzY3LDrWJlbWUgZGlyZWN0YW1lbnRlIHR1IGNvbnN1bHRhIScsXG4gICAgdGl0bGVQbTogJ8KhSG9sYSwge3tuYW1lfX0hIFNveSB7e2FnZW50fX0sIHR1IGFzaXN0ZW50ZS4nLFxuICAgIHN1YnRpdGxlUG06XG4gICAgICAnUGFyYSBkYXJ0ZSByZXNwdWVzdGFzIHByZWNpc2FzLCBwcmltZXJvIG5lY2VzaXRvIHNhYmVyIHNvYnJlIHF1w6kgcHJveWVjdG8gdmFtb3MgYSBjb252ZXJzYXIuIMK/Q3XDoWwgZWxpZ2VzPycsXG4gIH0sXG4gIG1haWFrZXI6IHtcbiAgICB0aXRsZTogJ0NvbnZpZXJ0ZSBwcm9jZXNvcyByZXBldGl0aXZvcyBlbiBhZ2VudGVzIGludGVsaWdlbnRlcycsXG4gICAgZGVzY3JpcHRpb246ICdDcmVhIGFnZW50ZXMgcXVlIGFuYWxpY2VuLCBnZW5lcmVuIGNvbnRlbmlkbyBzZWfDum4gdHVzIG5lY2VzaWRhZGVzLicsXG4gICAgY3JlYXRlTWFudWFsQWdlbnQ6ICdDcmVhciBhZ2VudGUgbWFudWFsbWVudGUnLFxuICAgIGJhZGdlTmV3OiAnTnVldm8nLFxuICAgIGJyaWVmQ2FyZDoge1xuICAgICAgdGl0bGU6ICdBZ2VudGUgZXNwZWNpYWxpc3RhIGVuIGJyaWVmJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnQ3JlYSB5IG1lam9yYSBicmllZnMgcGFyYSBxdWUgZXN0w6luIGxpc3RvcyBwYXJhIHVzYXIgZW4gdGFyZWFzLicsXG4gICAgICBwcm9tcHQ6ICdRdWllcm8gY3JlYXIgdW4gYWdlbnRlIGVzcGVjaWFsaXN0YSBlbiBicmllZi4nLFxuICAgIH0sXG4gICAgY29taW5nU29vbkNhcmQ6IHtcbiAgICAgIHRpdGxlOiAnTcOhcyBwcsOzeGltYW1lbnRlJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnRXN0YW1vcyB0cmFiYWphbmRvIHBhcmEgYnJpbmRhcnRlIG3DoXMgYWdlbnRlcycsXG4gICAgfSxcbiAgfSxcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBbU0VDVElPTlMucHJvamVjdFN1bW1hcnldOiB7XG4gICAgLi4uZ2VuZXJpY1NlY3Rpb24sXG4gICAgLi4ucHJvamVjdFN1bW1hcnlTZWN0aW9uLFxuICB9LFxuICBbU0VDVElPTlMuY2hhdEFJXToge1xuICAgIC4uLmdlbmVyaWNTZWN0aW9uLFxuICAgIC4uLnByb2plY3RTdW1tYXJ5U2VjdGlvbixcbiAgICBob21lTWVudSxcblxuICAgIGNvbnRleHRNZW50aW9uOiB7XG4gICAgICBrZXlib2FyZEhpbnQ6ICdOYXZlZ2FjacOzbiBlbnRyZSBwZXN0YcOxYXM6IEAsIEBA4oCmIGVuIG9yZGVuLiBUYW1iacOpbiBBbHQvQ21kICsg4oaQL+KGkicsXG4gICAgICByZWNlbnRzVGl0bGU6ICdSZWNpZW50ZXMnLFxuICAgICAgdXNlck5vUG9zaXRpb246ICdTaW4gcG9zaWNpw7NuJyxcbiAgICAgIG1lOiAnWW8nLFxuICAgICAgdGFiczoge1xuICAgICAgICBjbGllbnQ6ICdDbGllbnRlJyxcbiAgICAgICAgcHJvamVjdDogJ1Byb3llY3RvJyxcbiAgICAgICAgdGFzazogJ1RhcmVhJyxcbiAgICAgICAgdXNlcjogJ1VzdWFyaW8nLFxuICAgICAgICBtY3A6ICdDb25lY3RvcmVzJyxcbiAgICAgICAgc2tpbGw6ICdIYWJpbGlkYWRlcycsXG4gICAgICB9LFxuICAgICAgbG9hZGluZzogJ0J1c2NhbmRvLi4uJyxcbiAgICAgIGVycm9yOiAnVHV2aW1vcyB1biBwcm9ibGVtYSBhbCBidXNjYXIuIEludGVudMOhIGRlIG51ZXZvLicsXG4gICAgICBlbXB0eToge1xuICAgICAgICByZWNlbnRzOiAnRW1wZXrDoSBhIGVzY3JpYmlyIHBhcmEgYnVzY2FyJyxcbiAgICAgICAgd2l0aFF1ZXJ5OiAnTm8gaGF5IHJlc3VsdGFkb3MgcGFyYSBcInt7cXVlcnl9fVwiJyxcbiAgICAgIH0sXG4gICAgICBjb3VudGVyczoge1xuICAgICAgICBwcm9qZWN0czogJ3Byb3llY3RvcycsXG4gICAgICAgIHRhc2tzOiAndGFyZWFzJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBjb250ZXh0UGluOiB7XG4gICAgICBhZGRDb250ZXh0OiAnQ29udGV4dG8gZ2xvYmFsJyxcbiAgICAgIHNlYXJjaFBsYWNlaG9sZGVyOiAnQnVzY2FyIGNvbnRleHRv4oCmJyxcbiAgICAgIHJlbW92ZTogJ1F1aXRhciBjb250ZXh0bycsXG4gICAgfSxcbiAgICBidXR0b246ICdJQScsXG4gICAgdGl0bGU6ICfCoUhvbGEsIHt7bmFtZX19IScsXG4gICAgZGVzY3JpcHRpb246ICdTb3kgTUFJQSB0dSBhc2lzdGVudGUgeSBlc3RveSBhcXXDrSBwYXJhIGF5dWRhcnRlIGNvbiB0dXMgY29uc3VsdGFzLicsXG4gICAgbmV3Q2hhdDogJ051ZXZvIGNoYXQnLFxuICAgIG9wZW5BZ2VudENyZWF0b3I6ICdDcmVhciBhZ2VudGUnLFxuICAgIG9wZW5NYXJrZXRwbGFjZTogJ01hcmtldHBsYWNlIGRlIGFnZW50ZXMnLFxuICAgIGhpc3Rvcnk6IHtcbiAgICAgIHRvb2x0aXA6ICdIaXN0b3JpYWwnLFxuICAgICAgdGl0bGU6ICdIaXN0b3JpYWwgdmFjw61vJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnTm8gc2UgaGFuIGVuY29udHJhZG8gY29udmVyc2FjaW9uZXMnLFxuICAgICAgaXRlbToge1xuICAgICAgICBkYXRlOiAnw5psdGltYSBhY3R1YWxpemFjacOzbiB7e2RhdGV9fScsXG4gICAgICB9LFxuICAgICAgbWVudToge1xuICAgICAgICByZW5hbWU6ICdSZW5vbWJyYXInLFxuICAgICAgICBkZWxldGU6ICdFbGltaW5hcicsXG4gICAgICB9LFxuICAgICAgbG9hZGluZ01vcmU6ICdDYXJnYW5kbyBtw6FzIGNvbnZlcnNhY2lvbmVzJyxcbiAgICB9LFxuICAgIG9uYm9hcmRpbmc6IHtcbiAgICAgIG1haWE6ICdNQUlBJyxcbiAgICAgIGFnZW50Q3VzdG9tOiAnQWdlbnRlcyBjdXN0b20nLFxuICAgICAgaG93Q3JlYXRlQWdlbnQ6ICfCv0PDs21vIGNyZWFyIHVuIGFnZW50ZT8nLFxuICAgICAgdG9vbHRpcDogJ8K/Q8OzbW8gZnVuY2lvbmE/JyxcbiAgICAgIGhvd0l0V29ya3M6ICfCv0PDs21vIGZ1bmNpb25hPycsXG4gICAgfSxcbiAgICBxYToge1xuICAgICAgdGl0bGU6ICdQcmVndW50YXMgZnJlY3VlbnRlcycsXG4gICAgICBpdGVtczoge1xuICAgICAgICByZW50YWJpbGlkYWRfcHJveWVjdG86ICfCv0N1w6FsIGVzIGxhIHJlbnRhYmlsaWRhZCBkZSBlc3RlIHByb3llY3RvPycsXG4gICAgICAgIGF2YW5jZV9wcm95ZWN0bzogJ8K/Q3XDoWxlcyBzb24gbG9zIGF2YW5jZXMgZGUgZXN0ZSBwcm95ZWN0bz8nLFxuICAgICAgICB0YXJlYXNfcHJveWVjdG86ICfCv0N1w6FsZXMgc29uIGxhcyB0YXJlYXMgcHLDs3hpbWFzIGEgdmVuY2VyPycsXG4gICAgICB9LFxuICAgIH0sXG4gICAgY2hhdDoge1xuICAgICAgZ2VuZXJhdGluZzogJ1BlbnNhbmRvJyxcbiAgICAgIGdlbmVyYXRpbmdBdHRhY2htZW50OiAnQW5hbGl6YW5kbyBhZGp1bnRvJyxcbiAgICAgIGdlbmVyYXRpbmdEZWVwU2VhcmNoOiAnSW5pY2lhbmRvIGxhIGludmVzdGlnYWNpw7NuJyxcbiAgICAgIGdlbmVyYXRpbmdXZWJTZWFyY2g6ICdCdXNjYW5kbyBlbiBsYSB3ZWInLFxuICAgICAgc3VnZ2VzdGlvbnNUaXRsZTogJ1Jlc3B1ZXN0YXMgc3VnZXJpZGFzJyxcbiAgICAgIGNyZWF0ZUFnZW50QWN0aW9uc1RpdGxlOiAnU2lndWllbnRlIHBhc28nLFxuICAgICAgY3JlYXRlQWdlbnRBY3Rpb25TdGFydENoYXQ6ICdJbmljaWFyIGNvbnZlcnNhY2nDs24gY29uIGVsIG51ZXZvIGFnZW50ZScsXG4gICAgICBjcmVhdGVBZ2VudEFjdGlvbktub3dsZWRnZTogJ1N1YmlyIGFyY2hpdm9zIGEgbGEgYmFzZSBkZSBjb25vY2ltaWVudG8nLFxuICAgICAgY3JlYXRlQWdlbnRBY3Rpb25Mb2FkRXJyb3I6ICdObyBzZSBwdWRvIGNhcmdhciBlbCBhZ2VudGUuIEludGVudGEgZGUgbnVldm8uJyxcbiAgICAgIHdyaXRpbmc6ICdFc2NyaWJpZW5kbyBsYSByZXNwdWVzdGEnLFxuICAgICAgZXhlY3V0aW5nQWN0aW9uOiAnRWplY3V0YW5kbyBhY2Npw7NuJyxcbiAgICAgIHByb2Nlc3Npbmc6ICdQcm9jZXNhbmRvJyxcbiAgICAgIGFjdGl2aXR5OiB7XG4gICAgICAgIGdlbmVyYXRpbmc6IHtcbiAgICAgICAgICBwcmVwYXJpbmc6ICdQcmVwYXJhbmRvIGxhIHJlc3B1ZXN0YScsXG4gICAgICAgICAgY29uc2lkZXJpbmc6ICdSZXZpc2FuZG8gdHUgY29uc3VsdGEnLFxuICAgICAgICAgIGFsbW9zdFJlYWR5OiAnRGVmaW5pZW5kbyBlbCBlbmZvcXVlJyxcbiAgICAgICAgfSxcbiAgICAgICAgdGhpbmtpbmc6IHtcbiAgICAgICAgICBhbmFseXppbmc6ICdBbmFsaXphbmRvIHR1IGNvbnN1bHRhJyxcbiAgICAgICAgICByZXZpZXdpbmc6ICdSZXZpc2FuZG8gZWwgY29udGV4dG8nLFxuICAgICAgICAgIHBsYW5uaW5nOiAnQXJtYW5kbyBsYSByZXNwdWVzdGEnLFxuICAgICAgICB9LFxuICAgICAgICBzZWFyY2g6IHtcbiAgICAgICAgICBzY2FubmluZzogJ0J1c2NhbmRvIGVuIGxhIHdlYicsXG4gICAgICAgICAgc3VtbWFyaXppbmc6ICdSZXZpc2FuZG8gcmVzdWx0YWRvcycsXG4gICAgICAgIH0sXG4gICAgICAgIGRlZXBTZWFyY2g6IHtcbiAgICAgICAgICBleHBsb3Jpbmc6ICdFeHBsb3JhbmRvIGZ1ZW50ZXMnLFxuICAgICAgICAgIGNyb3NzQ2hlY2tpbmc6ICdWZXJpZmljYW5kbyBsYSBpbmZvcm1hY2nDs24nLFxuICAgICAgICB9LFxuICAgICAgICBhdHRhY2htZW50OiB7XG4gICAgICAgICAgcmVhZGluZzogJ0xleWVuZG8gZWwgYWRqdW50bycsXG4gICAgICAgICAgZXh0cmFjdGluZzogJ0V4dHJheWVuZG8gbG8gcmVsZXZhbnRlJyxcbiAgICAgICAgICByZWFkaW5nUGx1cmFsOiAnTGV5ZW5kbyBsb3MgYWRqdW50b3MnLFxuICAgICAgICAgIGV4dHJhY3RpbmdQbHVyYWw6ICdFeHRyYXllbmRvIGxvIHJlbGV2YW50ZScsXG4gICAgICAgIH0sXG4gICAgICAgIHdyaXRpbmc6IHtcbiAgICAgICAgICBjb21wb3Npbmc6ICdFc2NyaWJpZW5kbyBsYSByZXNwdWVzdGEnLFxuICAgICAgICB9LFxuICAgICAgICBkeW5hbWljQ29udGV4dFRvb2x0aXA6XG4gICAgICAgICAgJ0VzdGUgY29udGV4dG8gZnVlIGdlbmVyYWRvIGRpbsOhbWljYW1lbnRlIHkgcHVlZGUgY2FtYmlhciBhIGxvIGxhcmdvIGRlIGxhIGNvbnZlcnNhY2nDs24uJyxcbiAgICAgICAgY3JlYXRpbmdUYXNrOiAnQ3JlYW5kbyB0YXJlYScsXG4gICAgICAgIGNyZWF0aW5nVGFza3NCYXRjaDogJ0NyZWFuZG8gdGFyZWFzJyxcbiAgICAgICAgY3JlYXRpbmdBZ2VudDogJ0NyZWFuZG8gYWdlbnRlJyxcbiAgICAgICAgZWRpdGluZ0FnZW50OiAnRWRpdGFuZG8gYWdlbnRlJyxcbiAgICAgICAgZWRpdGluZ1Rhc2s6ICdFZGl0YW5kbyB0YXJlYScsXG4gICAgICAgIGVkaXRpbmdUYXNrc0JhdGNoOiAnRWRpdGFuZG8gdGFyZWFzJyxcbiAgICAgICAgZGVsZXRpbmdUYXNrOiAnRWxpbWluYW5kbyB0YXJlYScsXG4gICAgICAgIGRlbGV0aW5nVGFza3NCYXRjaDogJ0VsaW1pbmFuZG8gdGFyZWFzJyxcbiAgICAgICAgYXNzaWduaW5nVXNlcjogJ0FzaWduYW5kbyB1c3VhcmlvJyxcbiAgICAgICAgdW5hc3NpZ25pbmdVc2VyOiAnRGVzYXNpZ25hbmRvIHVzdWFyaW8nLFxuICAgICAgICBhc3NpZ25pbmdMYWJlbDogJ0FzaWduYW5kbyBldGlxdWV0YScsXG4gICAgICAgIHVwZGF0aW5nVGFza1R5cGU6ICdBY3R1YWxpemFuZG8gdGlwbyBkZSB0YXJlYScsXG4gICAgICAgIHVwZGF0aW5nRXN0aW1hdGVkSG91cnM6ICdBY3R1YWxpemFuZG8gaG9yYXMgZXN0aW1hZGFzJyxcbiAgICAgICAgdXBkYXRpbmdEZWxpdmVyYWJsZTogJ0FjdHVhbGl6YW5kbyBlbnRyZWdhYmxlJyxcbiAgICAgICAgbG9nZ2luZ0hvdXJzOiAnQ2FyZ2FuZG8gaG9yYXMnLFxuICAgICAgICBjcmVhdGluZ0NoZWNrbGlzdDogJ0NyZWFuZG8gY2hlY2tsaXN0JyxcbiAgICAgICAgY3JlYXRpbmdMYWJlbDogJ0NyZWFuZG8gZXRpcXVldGEnLFxuICAgICAgICBlZGl0aW5nUHJvamVjdDogJ0VkaXRhbmRvIHByb3llY3RvJyxcbiAgICAgICAgY3JlYXRpbmdDaGVja2xpc3RJdGVtOiAnQWdyZWdhbmRvIMOtdGVtIGFsIGNoZWNrbGlzdCcsXG4gICAgICAgIHF1ZXJ5aW5nSG91cnM6ICdDb25zdWx0YW5kbyBob3JhcycsXG4gICAgICAgIGNvbmZpZ3VyaW5nQWdlbnRBY2Nlc3M6ICdDYW1iaWFuZG8gdmlzaWJpbGlkYWQgZGVsIGFnZW50ZScsXG4gICAgICAgIHNlbmRpbmdUYXNrTWVzc2FnZTogJ0VudmlhbmRvIG1lbnNhamUgZW4gbGEgdGFyZWEnLFxuICAgICAgICBkZWxldGluZ0NoZWNrbGlzdEl0ZW06ICdFbGltaW5hbmRvIMOtdGVtIGRlbCBjaGVja2xpc3QnLFxuICAgICAgICByZW1vdmluZ1Rhc2tUeXBlOiAnRWxpbWluYW5kbyB0aXBvIGRlIHRhcmVhJyxcbiAgICAgICAgcmVtb3ZpbmdMYWJlbDogJ1F1aXRhbmRvIGV0aXF1ZXRhJyxcbiAgICAgICAgdXBkYXRpbmdEZWxpdmVyYWJsZUNvdW50OiAnQWN0dWFsaXphbmRvIGNvbnRhZG9yIGRlIGVudHJlZ2FibGVzJyxcbiAgICAgICAgY3JlYXRpbmdSZXdvcms6ICdDcmVhbmRvIHJldHJhYmFqbycsXG4gICAgICAgIHVwZGF0aW5nUmV3b3JrOiAnQWN0dWFsaXphbmRvIHJldHJhYmFqbycsXG4gICAgICAgIGdlbmVyYXRpbmdGaWxlOiAnR2VuZXJhbmRvIGFyY2hpdm8nLFxuICAgICAgICByZXN1bWluZ0FjdGlvbjogJ0VqZWN1dGFuZG8gYWNjacOzbiBhcHJvYmFkYScsXG4gICAgICB9LFxuICAgICAgbG9hZGluZ01vcmU6ICdDYXJnYW5kbyBtw6FzIG1lbnNhamVzJyxcbiAgICAgIGZvb3Rlcjoge1xuICAgICAgICBwbGFjZWhvbGRlcjogJ0VzY3JpYmUgdHUgY29uc3VsdGEgYWPDoeKApicsXG4gICAgICAgIG9yY2hlc3RyYXRvclBsYWNlaG9sZGVyOiAnUHJlZ8O6bnRhbGUgYSBNYWlhLCBAIG1lbmNpb25hciBvIC8gYWNjaW9uZXMgcsOhcGlkYXMnLFxuICAgICAgICBhZ2VudExhYmVsOiAnRWwgQWdlbnRlJyxcbiAgICAgICAgZGlzY2xhaW1lcjogJ3t7YWdlbnROYW1lfX0gcHVlZGUgY29tZXRlciBlcnJvcmVzLiBDb21wcnVlYmEgbGEgaW5mb3JtYWNpw7NuIGltcG9ydGFudGUuJyxcbiAgICAgICAgZGlzY2xhaW1lckFnZW50OiAnTG9zIG1vZGVsb3MgZGUgSUEgcHVlZGVuIGNvbWV0ZXIgZXJyb3Jlcy4gVmVyaWZpY2EgbGEgaW5mb3JtYWNpw7NuIGltcG9ydGFudGUuJyxcbiAgICAgICAgY29yQWNjZXNzTGFiZWw6ICdBY2Nlc28gYSBDT1InLFxuICAgICAgICBjb3JBY2Nlc3NUb29sdGlwOiAnQWNjZXNvIGEgZGF0b3MgZGUgQ09SJyxcbiAgICAgIH0sXG4gICAgICBlcnJvcjogJ0hhIG9jdXJyaWRvIHVuIGVycm9yIGFsIGdlbmVyYXIgdHUgcmVzcHVlc3RhLCBwb3IgZmF2b3IsIGludGVudGEgbnVldmFtZW50ZS4nLFxuICAgICAgcmV0cnk6ICdSZWludGVudGFyJyxcbiAgICAgIGVycm9yQWNjZXNzRGVuaWVkOlxuICAgICAgICAnTm8gdGllbmVzIGFjY2VzbyBwYXJhIGludGVyYWN0dWFyIGNvbiBlc3RlIGFnZW50ZS4gRXMgcG9zaWJsZSBxdWUgc3UgY29uZmlndXJhY2nDs24gZGUgYWNjZXNpYmlsaWRhZCBoYXlhIGNhbWJpYWRvLiBQb3IgZmF2b3IsIGNvbnRhY3RhIGEgbGEgcGVyc29uYSBkZSB0dSBvcmdhbml6YWNpw7NuIHF1ZSBhZG1pbmlzdHJhIGxvcyBhZ2VudGVzIHBhcmEgb2J0ZW5lciBtw6FzIGluZm9ybWFjacOzbi4nLFxuICAgICAgZXJyb3JQcm9tcHRUb29Mb25nOlxuICAgICAgICAnVGUgaGFzIGV4Y2VkaWRvIGRlbCBsaW1pdGUgZGUgY29udGV4dG8ge3t1c2VkfX0gdG9rZW5zLiBQb3IgZmF2b3IgcmVpbnRlbnRhIG51ZXZhbWVudGUgbyBjb250aW7DumEgZW4gb3RybyBjaGF0JyxcbiAgICAgIGNoYW5nZVByb2plY3Q6ICdEZXRlY3RvIHF1ZSBxdWllcmVzIGNhbWJpYXIgZGUgUHJveWVjdG8uXFxuXFxuKipTZWxlY2Npb25hIGVsIHByb3llY3RvIHBhcmEgY29udGludWFyOioqJyxcbiAgICAgIHNlYXJjaFdlYjogJ0J1c2NhciBlbiBsYSB3ZWInLFxuICAgICAgZGVlcFNlYXJjaDogJ0LDunNxdWVkYSBhdmFuemFkYSBlbiBpbnRlcm5ldCAoYWNjZXNvIGEgbcOhcyBmdWVudGVzKScsXG4gICAgICBhdHRhY2hGaWxlOiAnQWRqdW50YXIgYXJjaGl2bycsXG4gICAgICBwbHVzTWVudUF0dGFjaDogJ0FkanVudGFyIGFyY2hpdm9zJyxcbiAgICAgIGRyb3BGaWxlc0hlcmU6ICdTb2x0w6EgbG9zIGFyY2hpdm9zIGFxdcOtJyxcbiAgICAgIHBsdXNNZW51RGVlcEludmVzdGlnYXRpb246ICdJbnZlc3RpZ2FyIGEgZm9uZG8nLFxuICAgICAgcGx1c01lbnVRdWlja0FjdGlvbnM6ICdBY2Npb25lcyByw6FwaWRhcycsXG4gICAgICBvcGVuUGx1c01lbnVBcmlhOiAnQWRqdW50b3MgeSBvcGNpb25lcyBkZSBiw7pzcXVlZGEnLFxuICAgICAgb3Blbk1lbnRpb25BcmlhOiAnTWVuY2lvbmFyJyxcbiAgICAgIHJlbW92ZUF0dGFjaG1lbnRBcmlhOiAnUXVpdGFyIGFyY2hpdm8nLFxuICAgICAgcmVtb3ZlQWN0aXZlVG9vbEFyaWE6ICdRdWl0YXIgbW9kbyBkZSBiw7pzcXVlZGEnLFxuICAgICAgc2VuZDogJ0VudmlhcicsXG4gICAgICBsaW1pdEZpbGVzOiAnU29sbyBwdWVkZXMgYWRqdW50YXIgaGFzdGEgNSBhcmNoaXZvcyBwb3IgbWVuc2FqZS4nLFxuICAgICAgc3RvcDogJ0RldGVuZXIgcmVzcHVlc3RhJyxcbiAgICAgIGNhbmNlbGxlZDogJ1NlIGhhIGNhbmNlbGFkbyBsYSBiw7pzcXVlZGEuJyxcbiAgICAgIHRvb01hbnlBY3RpdmVTZXNzaW9uczpcbiAgICAgICAgJ0hheSBkZW1hc2lhZGFzIGNvbnZlcnNhY2lvbmVzIGdlbmVyYW5kbyBhIGxhIHZlei4gRXNwZXLDoSBhIHF1ZSB0ZXJtaW5lIHVuYSBhbnRlcyBkZSBpbmljaWFyIG90cmEuJyxcbiAgICAgIGF0dGFjaG1lbnRQcmV2aWV3TW9kYWw6IHtcbiAgICAgICAgbG9hZGluZzogJ0NhcmdhbmRvLi4uJyxcbiAgICAgICAgdW5zdXBwb3J0ZWRGaWxlTWVzc2FnZTpcbiAgICAgICAgICAnRXN0ZSB0aXBvIGRlIGFyY2hpdm8gbm8gcHVlZGUgc2VyIHByZXZpc3VhbGl6YWRvLiBQb3IgZmF2b3IsIGludGVudGEgZGUgbnVldm8gZW4gdW5vcyBtaW51dG9zLicsXG4gICAgICAgIHR5cGVMYWJlbDogJ1RpcG86JyxcbiAgICAgICAgdW5rbm93bjogJ0Rlc2Nvbm9jaWRvJyxcbiAgICAgICAgc2l6ZUxhYmVsOiAnVGFtYcOxbzonLFxuICAgICAgICBleGNlbDoge1xuICAgICAgICAgIHNoZWV0U2VsZWN0b3JMYWJlbDogJ0hvamE6JyxcbiAgICAgICAgICBsb2FkRXJyb3I6ICdObyBzZSBwdWRvIGNhcmdhciBlbCBjb250ZW5pZG8gZGVsIGFyY2hpdm8gRXhjZWwuJyxcbiAgICAgICAgICBmaWxlUmVhZEVycm9yOiAnRXJyb3IgYWwgbGVlciBlbCBhcmNoaXZvLicsXG4gICAgICAgICAgc2hlZXRMb2FkRXJyb3I6ICdFcnJvciBhbCBjYXJnYXIgbGEgaG9qYSBzZWxlY2Npb25hZGEuJyxcbiAgICAgICAgfSxcbiAgICAgICAgd29yZDoge1xuICAgICAgICAgIGxvYWRFcnJvcjogJ05vIHNlIHB1ZG8gY2FyZ2FyIGVsIGNvbnRlbmlkbyBkZWwgZG9jdW1lbnRvIFdvcmQuJyxcbiAgICAgICAgICBsZWdhY3lEb2NVbnN1cHBvcnRlZDogJ0xhIHByZXZpc3VhbGl6YWNpw7NuIGRlIGFyY2hpdm9zIC5kb2Mgbm8gZXN0w6EgZGlzcG9uaWJsZS4gVXNhIGZvcm1hdG8gLmRvY3guJyxcbiAgICAgICAgfSxcbiAgICAgICAgcHB0OiB7XG4gICAgICAgICAgbG9hZEVycm9yOiAnTm8gc2UgcHVkbyBjYXJnYXIgZWwgY29udGVuaWRvIGRlIGxhIHByZXNlbnRhY2nDs24uJyxcbiAgICAgICAgICBsZWdhY3lQcHRVbnN1cHBvcnRlZDogJ0xhIHByZXZpc3VhbGl6YWNpw7NuIGRlIGFyY2hpdm9zIC5wcHQgbm8gZXN0w6EgZGlzcG9uaWJsZS4gVXNhIGZvcm1hdG8gLnBwdHguJyxcbiAgICAgICAgICBzbGlkZUxhYmVsOiAnRGlhcG9zaXRpdmEge3tudW1iZXJ9fScsXG4gICAgICAgICAgZW1wdHlTbGlkZTogJ0VzdGEgZGlhcG9zaXRpdmEgbm8gdGllbmUgdGV4dG8gbmkgaW3DoWdlbmVzIHBhcmEgcHJldmlzdWFsaXphci4nLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGRlbGV0ZVF1ZXN0aW9uTW9kYWw6IHtcbiAgICAgIHRpdGxlOiAnwr9EZXNlYXMgZWxpbWluYXIgZXN0YSBjb252ZXJzYWNpw7NuPycsXG4gICAgICBmaXJzdFBhcnQ6ICdFc3TDoXMgcG9yIGVsaW1pbmFyJyxcbiAgICAgIHNlY29uZFBhcnQ6ICdFc3RhIGFjY2nDs24gZXMgaXJyZXZlcnNpYmxlLicsXG4gICAgICBjYW5jZWw6ICdDYW5jZWxhcicsXG4gICAgICBkZWxldGU6ICdFbGltaW5hcicsXG4gICAgfSxcbiAgICBkZWxldGVTa2lsbE1vZGFsOiB7XG4gICAgICB0aXRsZTogJ8K/RGVzZWFzIGVsaW1pbmFyIGVzdGEgc2tpbGw/JyxcbiAgICAgIGZpcnN0UGFydDogJ0VzdMOhcyBwb3IgZWxpbWluYXInLFxuICAgICAgc2Vjb25kUGFydDogJ0VzdGEgYWNjacOzbiBlcyBpcnJldmVyc2libGUuJyxcbiAgICAgIGNhbmNlbDogJ0NhbmNlbGFyJyxcbiAgICAgIGRlbGV0ZTogJ0VsaW1pbmFyJyxcbiAgICB9LFxuICAgIGVkaXRRdWVzdGlvbk1vZGFsOiB7XG4gICAgICBuZXdOYW1lOiAnTnVldm8gbm9tYnJlJyxcbiAgICAgIHRpdGxlOiAnUmVub21icmFyIGNvbnZlcnNhY2nDs24nLFxuICAgICAgcmVuYW1lOiAnUmVub21icmFyJyxcbiAgICAgIGNhbmNlbDogJ0NhbmNlbGFyJyxcbiAgICAgIG1heExlbmd0aDogJ0NvbXBsZXRhc3RlIGxvcyAxNDAgY2FyYWN0ZXJlcyBkZWwgbMOtbWl0ZS4nLFxuICAgIH0sXG4gICAgbW9kYWxGaWxlRXhjZWVkczoge1xuICAgICAgbGltaXRGaWxlc1RpdGxlOiAnSGFzIHN1cGVyYWRvIGVsIGzDrW1pdGUgZGUgYWRqdW50b3MuJyxcbiAgICAgIGxpbWl0U2l6ZVRpdGxlOiAnSGFzIHN1cGVyYWRvIGVsIGzDrW1pdGUgZGUgcGVzbyBwZXJtaXRpZG8uJyxcbiAgICAgIGxpbWl0RmlsZXNEZXNjcmlwdGlvbjpcbiAgICAgICAgJ1NvbG8gcHVlZGVzIGFkanVudGFyIGhhc3RhIDUgYXJjaGl2b3MgcG9yIG1lbnNhamUuIExvcyBzaWd1aWVudGVzIGFyY2hpdm9zIG5vIHNlIHB1ZGllcm9uIGFkanVudGFyOicsXG4gICAgICBsaW1pdFNpemVEZXNjcmlwdGlvbjpcbiAgICAgICAgJ1VubyBvIG3DoXMgc3VwZXJhbiBlbCB0YW1hw7FvIG3DoXhpbW8gcGVybWl0aWRvIHBvciB0aXBvLiBMb3Mgc2lndWllbnRlcyBhcmNoaXZvcyBubyBzZSBwdWRpZXJvbiBhZGp1bnRhcjonLFxuICAgICAgYWNjZXB0OiAnQWNlcHRhcicsXG4gICAgICBsaW1pdDogJ2zDrW1pdGUnLFxuICAgIH0sXG4gICAgc291cmNlc0luZm9ybWF0aW9uTW9kYWw6IHtcbiAgICAgIHRpdGxlOiAnRnVlbnRlczonLFxuICAgIH0sXG4gICAgYWdlbnRzOiB7XG4gICAgICB0aXRsZTogJ0FnZW50ZXMnLFxuICAgICAgbmV3QWdlbnQ6ICdOdWV2byBhZ2VudGUnLFxuICAgICAgY3JlYXRlQWdlbnQ6ICdDcmVhciBBZ2VudGUnLFxuICAgICAgZWRpdDogJ0VkaXRhcicsXG4gICAgICBtYWlhOiAnKEVzcGVjaWFsaXN0YSBkZSBwcm95ZWN0byknLFxuICAgICAgYWRkRmF2b3JpdGU6ICdBZ3JlZ2FyIGEgZmF2b3JpdG9zJyxcbiAgICAgIHJlbW92ZUZhdm9yaXRlOiAnUXVpdGFyIGRlIGZhdm9yaXRvcycsXG4gICAgICBmYXZvcml0ZVRvZ2dsZWRBZGRlZFN1Y2Nlc3M6ICdBZ2VudGUgYWdyZWdhZG8gYSBmYXZvcml0b3MnLFxuICAgICAgZmF2b3JpdGVUb2dnbGVkUmVtb3ZlZFN1Y2Nlc3M6ICdBZ2VudGUgcmVtb3ZpZG8gZGUgZmF2b3JpdG9zJyxcbiAgICAgIGZhdm9yaXRlVG9nZ2xlZEVycm9yOiAnTm8gc2UgcHVkbyBndWFyZGFyIHR1IGZhdm9yaXRvLiBJbnRlbnRhIG51ZXZhbWVudGUuJyxcbiAgICAgIGZhdm9yaXRlVG9nZ2xlZFJlbW92ZWRFcnJvcjogJ05vIHNlIHB1ZG8gcXVpdGFyIGVsIGZhdm9yaXRvLiBJbnRlbnRhIG51ZXZhbWVudGUuJyxcbiAgICAgIG1haWFJbnRyb2R1Y3Rpb246ICdCaWVudmVuaWRvIGEgTUFJQSB0dSBhc2lzdGVudGUsIHBhcmEgbWVqb3JhciB0dSBkw61hIGEgZMOtYS4nLFxuICAgIH0sXG4gICAgY29udmVyc2F0aW9uczoge1xuICAgICAgdGl0bGU6ICdNaXMgY29udmVyc2FjaW9uZXMnLFxuICAgICAgYWdlbnRzU2VjdGlvblRpdGxlOiAnQWdlbnRlcycsXG4gICAgICBtYWlha2VyTmF2OiAnQ3JlYWRvciBkZSBhZ2VudGVzJyxcbiAgICAgIG15QWdlbnRzTmF2OiAnTWlzIGFnZW50ZXMnLFxuICAgICAgbXlTa2lsbHNOYXY6ICdTa2lsbHMnLFxuICAgICAgZXJyb3I6ICdPY3VycmnDsyB1biBlcnJvciBhbCBjYXJnYXIgZWwgaGlzdG9yaWFsIGRlIGNvbnZlcnNhY2lvbmVzJyxcbiAgICAgIGVtcHR5OiAnQXF1w60gc2UgbW9zdHJhcsOhbiB0b2RhcyB0dXMgY29udmVyc2FjaW9uZXMgY29uIGxvcyBhZ2VudGVzJyxcbiAgICAgIGVtcHR5TGFiZWw6ICdNZW5zYWplIGNvbiBhcmNoaXZvcycsXG4gICAgICB1bnJlYWRMYWJlbDogJ1NpbiBsZWVyJyxcbiAgICAgIG1pbmltaXplZE9wZW46ICdBYnJpciBNQUlBJyxcbiAgICAgIG1pbmltaXplZFNlZUFuc3dlcjogJ1ZlciByZXNwdWVzdGEnLFxuICAgICAgY29sbGFwc2U6ICdDb2xhcHNhcicsXG4gICAgICBleHBhbmQ6ICdFeHBhbmRpcicsXG4gICAgICBuZXdDaGF0OiAnTnVldm8gY2hhdCcsXG4gICAgICBnZW5lcmF0aW5nOiAnR2VuZXJhbmRvIHJlc3B1ZXN0YScsXG4gICAgICBzZXNzaW9uRmluaXNoZWQ6ICd7e3RpdGxlfX0gdGVybWluw7MgZGUgcmVzcG9uZGVyJyxcbiAgICAgIHNlc3Npb25GaW5pc2hlZEFwcHJvdmFsOiAne3t0aXRsZX19IHJlcXVpZXJlIHR1IGFwcm9iYWNpw7NuJyxcbiAgICAgIHNlc3Npb25GaW5pc2hlZEVycm9yOiAne3t0aXRsZX19IHR1dm8gdW4gZXJyb3IgYWwgcmVzcG9uZGVyJyxcbiAgICAgIG9wZW5BZ2VudENyZWF0b3I6ICdDcmVhciBhZ2VudGUnLFxuICAgICAgb3Blbk1hcmtldHBsYWNlOiAnTWFya2V0cGxhY2UgZGUgYWdlbnRlcycsXG4gICAgfSxcbiAgICBtYXJrZXRwbGFjZToge1xuICAgICAgYmFjazogJ1ZvbHZlcicsXG4gICAgICB0aXRsZTogJ0lkZWFzIHBhcmEgY3JlYXIgYWdlbnRlcycsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ0VsZWfDrSB1bmEgc3VnZXJlbmNpYSBiaWVuIGFybWFkYSB5IGFicsOtIGVsIGVkaXRvciBjb24gZWwgYWdlbnRlIHlhIHByZWNhcmdhZG8gcGFyYSBhZGFwdGFybG8gYSB0dSBjYXNvLicsXG4gICAgICBteUFnZW50c1RpdGxlOiAnTWlzIGFnZW50ZXMnLFxuICAgICAgbXlBZ2VudHNSZWFkeVRpdGxlOiAnVHVzIGFnZW50ZXMgZXN0YW4gbGlzdG9zIHBhcmEgYXl1ZGFydGUgZW4gdGFyZWFzJyxcbiAgICAgIG15QWdlbnRzRGVzY3JpcHRpb246ICdFc3RvcyBzb24gdHVzIGFnZW50ZXMgY3VzdG9tLiBTZWxlY2Npb25hIHVubyBwYXJhIGVtcGV6YXIgYSBjb252ZXJzYXIgY29uIGVzZSBwZXJmaWwuJyxcbiAgICAgIG15QWdlbnRzRW1wdHlTdGF0ZVRpdGxlOiAnQcO6biBubyB0aWVuZXMgYWdlbnRlcyBjcmVhZG9zJyxcbiAgICAgIG15QWdlbnRzRW1wdHlTdGF0ZURlc2NyaXB0aW9uOiAnSGF6IGNsaWMgZW4gZWwgYm90w7NuIGRlIGFiYWpvIHBhcmEgZW1wZXphciBhIGNyZWFyIGFnZW50ZXMgYSB0dSBtZWRpZGEuJyxcbiAgICAgIG15QWdlbnRzRW1wdHlTdGF0ZURlc2NyaXB0aW9uTm9QZXJtOlxuICAgICAgICAnQ3VhbmRvIGxhIHBlcnNvbmEgY29uIHBlcm1pc29zIHBhcmEgY3JlYXJsb3MgbG9zIGNvbmZpZ3VyZSwgdmFzIGEgcG9kZXIgYWNjZWRlciBkZXNkZSBhY8OhLicsXG4gICAgICBteUFnZW50c0VtcHR5U3RhdGVCdXR0b246ICdDcmVhciBhZ2VudGUnLFxuICAgICAgbXlBZ2VudHNGYWxsYmFja0ludHJvOiAnQWdlbnRlIHBlcnNvbmFsaXphZG8gbGlzdG8gcGFyYSBheXVkYXJ0ZSBlbiB0dSBmbHVqbyBkZSB0cmFiYWpvLicsXG4gICAgICBteUFnZW50c0ZhbGxiYWNrRGVzY3JpcHRpb246ICdIYXogY2xpY2sgZW4gdXNhciBhZ2VudGUgcGFyYSBpbmljaWFyIHVuYSBjb252ZXJzYWNpw7NuIGNvbiBlc3RlIGFnZW50ZS4nLFxuICAgICAgbXlBZ2VudHNGYWxsYmFja0RhdGU6ICdIYWNlIHBvY29zIGRpYXMnLFxuICAgICAgbXlBZ2VudHNUb2RheTogJ0hveScsXG4gICAgICBteUFnZW50c09uZURheUFnbzogJ0hhY2UgMSBkaWEnLFxuICAgICAgbXlBZ2VudHNEYXlzQWdvOiAnSGFjZSB7e2RheXN9fSBkaWFzJyxcbiAgICAgIGNhcmRNZW51QXJpYUxhYmVsOiAnTWVudSBkZSBhY2Npb25lcyBkZWwgYWdlbnRlJyxcbiAgICAgIHVzZTogJ1VzYXInLFxuICAgICAgY3JlYXRlQWdlbnQ6ICdDcmVhciBhZ2VudGUgbWFudWFsbWVudGUnLFxuICAgICAgc2VhcmNoQWdlbnRQbGFjZWhvbGRlcjogJ0J1c2NhciBhZ2VudGUuLi4nLFxuICAgICAgc2VhcmNoTWluTGVuZ3RoOiAnbcOtbi4gMyBjYXJhY3RlcmVzJyxcbiAgICAgIHNlYXJjaE5vUmVzdWx0czogJ05vIHNlIGVuY29udHJhcm9uIHJlc3VsdGFkb3MuJyxcbiAgICAgIHNlYXJjaE5vUmVzdWx0c1N1YnRpdGxlOiAnQ3JlYSB1biBhZ2VudGUgZGUgSUEgcXVlIHB1ZWRhIHBlbnNhciwgYWN0dWFyIHkgYXV0b21hdGl6YXIgZWwgdHJhYmFqbyBwYXJhIHRpJyxcbiAgICAgIHVzZVRlbXBsYXRlOiAnQ3JlYXIgZGVzZGUgZXN0YSBpZGVhJyxcbiAgICAgIHVzZU15QWdlbnQ6ICdVc2FyIGFnZW50ZScsXG4gICAgICBiYWRnZXM6IHtcbiAgICAgICAgYnJhbmRpbmc6ICdCcmFuZGluZycsXG4gICAgICAgIGxpbmtlZGluOiAnTGlua2VkSW4nLFxuICAgICAgICBtYXJrZXRpbmc6ICdNYXJrZXRpbmcnLFxuICAgICAgfSxcbiAgICB9LFxuICAgIG15U2tpbGxzOiB7XG4gICAgICB0aXRsZTogJ0VzcGVjaWFsaXphIGEgTUFJQSBjb24gdHVzIHByb3BpYXMgcmVnbGFzJyxcbiAgICAgIHN1YnRpdGxlOiAnTGFzIHNraWxscyBzb24gZ2xvYmFsZXM6IGVzdMOhbiBkaXNwb25pYmxlcyBwYXJhIHRvZG9zIHR1cyBhZ2VudGVzLicsXG4gICAgICB0YWJNeVNraWxsczogJ01pcyBza2lsbHMnLFxuICAgICAgdGFiU2hhcmVkU2tpbGxzOiAnU2tpbGxzIGNvbXBhcnRpZGFzJyxcbiAgICAgIGRyb3Bkb3duQnV0dG9uOiAnU2tpbGxzJyxcbiAgICAgIGRyb3Bkb3duQ3JlYXRlOiAnQ3JlYXIgbnVldmEgc2tpbGwnLFxuICAgICAgZHJvcGRvd25FbXB0eTogJ1RvZGF2w61hIG5vIGhheSBza2lsbHMnLFxuICAgICAgZHJvcGRvd25FcnJvcjogJ0h1Ym8gdW4gcHJvYmxlbWEuIEludGVudMOhIGRlIG51ZXZvLicsXG4gICAgICBteVNraWxsc0Rlc2NyaXB0aW9uOiAnSGFiaWxpZGFkZXMgY3JlYWRvIHBvciB0aS4nLFxuICAgICAgc2hhcmVkU2tpbGxzRGVzY3JpcHRpb246ICdIYWJpbGlkYWRlcyBjb21wYXJ0aWRhcyBwb3Igb3Ryb3MgbWllbWJyb3MgZGUgdHUgZXF1aXBvLicsXG4gICAgICBzZWFyY2hQbGFjZWhvbGRlcjogJ0J1c2NhciBoYWJpbGlkYWRlcy4uLicsXG4gICAgICBjcmVhdGVNYW51YWxseTogJ0NyZWFyIG1hbnVhbG1lbnRlJyxcbiAgICAgIHZpc2liaWxpdHlPbmx5TWU6ICdTb2xvIHlvJyxcbiAgICAgIHZpc2liaWxpdHlFdmVyeW9uZTogJ1Zpc2libGUgcGFyYSB0b2RvcycsXG4gICAgICBzaGFyZWRFbXB0eVN0YXRlVGl0bGU6ICdBw7puIG5vIGNvbXBhcnRpZXJvbiBza2lsbHMgY29udGlnby4nLFxuICAgICAgc2hhcmVkRW1wdHlTdGF0ZURlc2NyaXB0aW9uOiAnQ3VhbmRvIHR1IGNvbXBhw7HDrWEgY29tcGFydGEgc2tpbGxzLCBhcGFyZWNlcsOhbiBhcXXDrS4nLFxuICAgICAgY3JlYXRlU2tpbGw6ICdDcmVhciBza2lsbCcsXG4gICAgICBwcmV2aWV3OiAnVmlzdGEgcHJldmlhJyxcbiAgICAgIHByZXZpZXdFbXB0eTogJ05hZGEgcGFyYSBwcmV2aXN1YWxpemFyIHRvZGF2w61hLicsXG4gICAgICB1cGxvYWRNZDogJ1N1YmlyIC5tZCcsXG4gICAgICB1cGxvYWRFcnJvcjogJ1NvbG8gc2UgcGVybWl0ZW4gYXJjaGl2b3MgLm1kJyxcbiAgICAgIGNyZWF0ZVdpdGhNYWlhOiAnQ3JlYXIgY29uIE1haWEnLFxuICAgICAgd3JpdGVJbnN0cnVjdGlvbnM6ICdFc2NyaWJpciBpbnN0cnVjY2lvbmVzJyxcbiAgICAgIHVwbG9hZFNraWxsOiAnU3ViaXIgdW5hIHNraWxsJyxcbiAgICAgIGdlbmVyYXRlUGxhY2Vob2xkZXI6ICdRdWllcm8gdW5hIFNraWxsIHBhcmEgY3JlYXIgbWlzIHByb3llY3RvcycsXG4gICAgICBnZW5lcmF0ZVdpdGhNYWlhOiAnQ3JlYXIgbGEgU2tpbGwgY29uIE1haWEnLFxuICAgICAgZ2VuZXJhdGVOZWVkc05hbWU6ICdFc2NyaWLDrSB1biBub21icmUgcHJpbWVybyBwYXJhIGRlc2NyaWJpciBsYSBza2lsbCcsXG4gICAgICBnZW5lcmF0ZVN1Y2Nlc3M6ICdTa2lsbCBnZW5lcmFkYSBjb24gTWFpYScsXG4gICAgICBnZW5lcmF0ZUVycm9yOiAnTm8gc2UgcHVkbyBnZW5lcmFyIGxhIHNraWxsLiBJbnRlbnRhIG51ZXZhbWVudGUuJyxcbiAgICAgIGNhcmRNZW51QXJpYUxhYmVsOiAnTWVuw7ogZGUgYWNjaW9uZXMgZGUgbGEgc2tpbGwnLFxuICAgICAgZWRpdDogJ0VkaXRhcicsXG4gICAgICBkZWxldGU6ICdFbGltaW5hcicsXG4gICAgICBjYW5jZWw6ICdDYW5jZWxhcicsXG4gICAgICBzYXZlOiAnR3VhcmRhcicsXG4gICAgICBjbG9zZTogJ0NlcnJhcicsXG4gICAgICBjcmVhdGVUaXRsZTogJ0NyZWFjacOzbiBkZSBza2lsbCcsXG4gICAgICBlZGl0VGl0bGU6ICdFZGljacOzbiBkZSBza2lsbCcsXG4gICAgICB2aWV3VGl0bGU6ICdTa2lsbCBjb21wYXJ0aWRhJyxcbiAgICAgIHVzZVNraWxsOiAnVXNhciBza2lsbCcsXG4gICAgICBpbmZvVG9vbHRpcDpcbiAgICAgICAgJ0xhcyBza2lsbHMgc29uIGluc3RydWNjaW9uZXMgcXVlIGxlIGRhcyBhIHVuIGFnZW50ZSBwYXJhIHF1ZSByZXN1ZWx2YSB1bmEgdGFyZWEgc2llbXByZSBkZSBsYSBtaXNtYSBmb3JtYS4gTWVuY2lvbmFsYSBjb24gIyBlbiBlbCBjaGF0IHkgZWwgYWdlbnRlIHNlZ3VpcsOhIGVzZSBwYXNvIGEgcGFzby4nLFxuICAgICAgc2hhcmVkQ3JlYXRlZEJ5OiAnQ3JlYWRhIHBvciB7e25hbWV9fScsXG4gICAgICBuYW1lTGFiZWw6ICdOb21icmUnLFxuICAgICAgbmFtZVBsYWNlaG9sZGVyOiAnTm9tYnJlIGRlIGxhIHNraWxsJyxcbiAgICAgIGRlc2NyaXB0aW9uTGFiZWw6ICdEZXNjcmlwY2nDs24nLFxuICAgICAgZGVzY3JpcHRpb25QbGFjZWhvbGRlcjogJ0Rlc2NyaWJlIGJyZXZlbWVudGUgcGFyYSBxdcOpIHNpcnZlIGxhIHNraWxsJyxcbiAgICAgIGluc3RydWN0aW9uc0xhYmVsOiAnSW5zdHJ1Y2Npb25lcycsXG4gICAgICBzaGFyZVdpdGhDb21wYW55OiAnSGFiaWxpdGFyIHBhcmEgdG9kYSBsYSBjb21wYcOxw61hJyxcbiAgICAgIGNyZWF0ZWRCeTogJ0NyZWFkbyBwb3InLFxuICAgICAgbGFzdFVwZGF0ZWQ6ICfDmmx0aW1hIGFjdHVhbGl6YWNpw7NuJyxcbiAgICAgIHNhdmVBbmRVc2U6ICdHdWFyZGFyIHkgdXNhciBza2lsbCcsXG4gICAgICBjb250ZW50TGFiZWw6ICdTa2lsbCcsXG4gICAgICBjb250ZW50UGxhY2Vob2xkZXI6ICdFc2NyaWJlIGxhIHNraWxsLi4uJyxcbiAgICAgIGVtcHR5U3RhdGVUaXRsZTogJ0HDum4gbm8gdGllbmVzIHNraWxscyBjcmVhZGFzJyxcbiAgICAgIGVtcHR5U3RhdGVEZXNjcmlwdGlvbjogJ0hheiBjbGljIGVuIGVsIGJvdMOzbiBkZSBhYmFqbyBwYXJhIGVtcGV6YXIgYSBjcmVhciBza2lsbHMgYSB0dSBtZWRpZGEuJyxcbiAgICAgIGVtcHR5U3RhdGVEZXNjcmlwdGlvbk5vUGVybTpcbiAgICAgICAgJ0N1YW5kbyBsYSBwZXJzb25hIGNvbiBwZXJtaXNvcyBwYXJhIGNyZWFybGFzIGxhcyBjb25maWd1cmUsIHZhcyBhIHBvZGVyIGFjY2VkZXIgZGVzZGUgYWPDoS4nLFxuICAgICAgZW1wdHlTdGF0ZUJ1dHRvbjogJ0NyZWFyIHNraWxsJyxcbiAgICAgIHNlYXJjaEVtcHR5U3RhdGVUaXRsZTogJ05vIGVuY29udHJhbW9zIG5pbmd1bmEgc2tpbGwnLFxuICAgICAgc2VhcmNoRW1wdHlTdGF0ZURlc2NyaXB0aW9uOiAnUHJ1ZWJhIGNvbiBvdHJvIHTDqXJtaW5vIG8gcmV2aXNhIHR1IGLDunNxdWVkYS4nLFxuICAgICAgY3JlYXRlU3VjY2VzczogJ1NraWxsIGNyZWFkYSBjb24gw6l4aXRvJyxcbiAgICAgIGNyZWF0ZUVycm9yOiAnTm8gc2UgcHVkbyBjcmVhciBsYSBza2lsbC4gSW50ZW50YSBudWV2YW1lbnRlLicsXG4gICAgICB1cGRhdGVTdWNjZXNzOiAnU2tpbGwgYWN0dWFsaXphZGEgY29uIMOpeGl0bycsXG4gICAgICB1cGRhdGVFcnJvcjogJ05vIHNlIHB1ZG8gYWN0dWFsaXphciBsYSBza2lsbC4gSW50ZW50YSBudWV2YW1lbnRlLicsXG4gICAgICBkZWxldGVTdWNjZXNzOiAnU2tpbGwgZWxpbWluYWRhIGNvbiDDqXhpdG8nLFxuICAgICAgZGVsZXRlRXJyb3I6ICdObyBzZSBwdWRvIGVsaW1pbmFyIGxhIHNraWxsLiBJbnRlbnRhIG51ZXZhbWVudGUuJyxcbiAgICB9LFxuICAgIHNuYWNrYmFyOiB7XG4gICAgICBkZWxldGVDaGF0OiB7XG4gICAgICAgIHN1Y2Nlc3M6ICdUdSBjb252ZXJzYWNpw7NuIGZ1ZSBlbGltaW5hZGEgY29uIMOpeGl0by4nLFxuICAgICAgICBlcnJvcjogJ09jdXJyacOzIHVuIGVycm9yIGluZXNwZXJhZG8uIFBvciBmYXZvciB2dWVsdmUgYSBpbnRlbnRhcmxvLicsXG4gICAgICB9LFxuICAgICAgcmVuYW1lZENoYXQ6IHtcbiAgICAgICAgc3VjY2VzczogJ0NvbnZlcnNhY2nDs24gcmVub21icmFkYSBjb24gw6l4aXRvJyxcbiAgICAgICAgZXJyb3I6ICdPY3VycmnDsyB1biBlcnJvciBpbmVzcGVyYWRvLiBQb3IgZmF2b3IgdnVlbHZlIGEgaW50ZW50YXJsby4nLFxuICAgICAgfSxcbiAgICAgIGxvYWRNb3JlQWdlbnRzOiB7XG4gICAgICAgIGVycm9yOiAnT2N1cnJpw7MgdW4gZXJyb3IgaW5lc3BlcmFkby4gUG9yIGZhdm9yIHZ1ZWx2ZSBhIGludGVudGFybG8uJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBhcHByb3ZhbEJveDoge1xuICAgICAgdW50aXRsZWRBZ2VudDogJ0FnZW50ZSBzaW4gbm9tYnJlJyxcbiAgICAgIGFjdGlvbnM6IHtcbiAgICAgICAgY3JlYXRlX3Rhc2s6ICdDcmVhY2nDs24gZGUgdGFyZWEnLFxuICAgICAgICBjcmVhdGVfdGFza3NfYmF0Y2g6ICdDcmVhY2nDs24gZGUgdGFyZWFzJyxcbiAgICAgICAgY3JlYXRlX2FnZW50OiAnQ3JlYWNpw7NuIGRlIGFnZW50ZScsXG4gICAgICAgIGVkaXRfYWdlbnQ6ICdFZGljacOzbiBkZSBhZ2VudGUnLFxuICAgICAgICBlZGl0X3Byb2plY3Q6ICdFZGljacOzbiBkZSBwcm95ZWN0bycsXG4gICAgICAgIGVkaXRfdGFzazogJ0VkaWNpw7NuIGRlIHRhcmVhJyxcbiAgICAgICAgZWRpdF90YXNrc19iYXRjaDogJ0VkaWNpw7NuIGRlIHRhcmVhcycsXG4gICAgICAgIGRlbGV0ZV90YXNrOiAnRWxpbWluYWNpw7NuIGRlIHRhcmVhJyxcbiAgICAgICAgZGVsZXRlX3Rhc2tzX2JhdGNoOiAnRWxpbWluYWNpw7NuIGRlIHRhcmVhcycsXG4gICAgICAgIHRhc2tfYXNzaWduOiAnQXNpZ25hY2nDs24gZGUgdXN1YXJpbycsXG4gICAgICAgIHRhc2tfdW5hc3NpZ246ICdEZXNhc2lnbmFjacOzbiBkZSB1c3VhcmlvJyxcbiAgICAgICAgYXNzaWduX3Rhc2tfbGFiZWw6ICdBc2lnbmFjacOzbiBkZSBldGlxdWV0YScsXG4gICAgICAgIGNyZWF0ZV9sYWJlbHM6ICdDcmVhY2nDs24gZGUgZXRpcXVldGEnLFxuICAgICAgICB1cGRhdGVfdGFza190eXBlOiAnQWN0dWFsaXphY2nDs24gZGUgdGlwbyBkZSB0YXJlYScsXG4gICAgICAgIHVwZGF0ZV9lc3RpbWF0ZWRfaG91cnM6ICdBY3R1YWxpemFjacOzbiBkZSBob3JhcyBlc3RpbWFkYXMnLFxuICAgICAgICB1cGRhdGVfZGVsaXZlcmFibGU6ICdBY3R1YWxpemFjacOzbiBkZSBlbnRyZWdhYmxlJyxcbiAgICAgICAgY3JlYXRlX2hvdXI6ICdDYXJnYSBkZSBob3JhcycsXG4gICAgICAgIGNyZWF0ZV9jaGVja2xpc3Q6ICdDcmVhY2nDs24gZGUgY2hlY2tsaXN0JyxcbiAgICAgICAgY3JlYXRlX2NoZWNrbGlzdF9pdGVtOiAnQ3JlYWNpw7NuIGRlIMOtdGVtIGRlbCBjaGVja2xpc3QnLFxuICAgICAgICBjbG9uZV90YXNrOiAnQ2xvbmFyIHRhcmVhJyxcbiAgICAgICAgZ2V0X3Rhc2tfZGF0ZV9ob3VyczogJ0NvbnN1bHRhIGRlIGhvcmFzIHBvciBmZWNoYScsXG4gICAgICAgIGNvbmZpZ3VyZV9hZ2VudF9hY2Nlc3M6ICdDYW1iaWFyIHZpc2liaWxpZGFkIGRlbCBhZ2VudGUnLFxuICAgICAgICBzZW5kX3Rhc2tfbWVzc2FnZTogJ0VudsOtbyBkZSBtZW5zYWplIGVuIGxhIHRhcmVhJyxcbiAgICAgICAgZGVsZXRlX2NoZWNrbGlzdF9pdGVtOiAnRWxpbWluYWNpw7NuIGRlIMOtdGVtIGRlbCBjaGVja2xpc3QnLFxuICAgICAgICByZW1vdmVfdGFza190eXBlOiAnRWxpbWluYWNpw7NuIGRlIHRpcG8gZGUgdGFyZWEnLFxuICAgICAgICByZW1vdmVfdGFza19sYWJlbDogJ0VsaW1pbmFjacOzbiBkZSBldGlxdWV0YScsXG4gICAgICAgIGNvdW50X2RlbGl2ZXJhYmxlOiAnQWN0dWFsaXphY2nDs24gZGVsIGNvbnRhZG9yIGRlIGVudHJlZ2FibGVzJyxcbiAgICAgICAgY3JlYXRlX3Jld29yazogJ0NyZWFjacOzbiBkZSByZXRyYWJham8nLFxuICAgICAgICB1cGRhdGVfcmV3b3JrOiAnQWN0dWFsaXphY2nDs24gZGUgcmV0cmFiYWpvJyxcbiAgICAgICAgZGVsZXRlX2FnZW50OiAnRWxpbWluYWNpw7NuIGRlIGFnZW50ZScsXG4gICAgICAgIHVua25vd246ICdBY2Npw7NuIGRlc2Nvbm9jaWRhJyxcbiAgICAgIH0sXG4gICAgICBzcGVjaWFsOiB7XG4gICAgICAgIGNyZWF0ZVJld29yazoge1xuICAgICAgICAgIHRpdGxlOiAnQ3JlYXIgcmV0cmFiYWpvJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ1NlIGNyZWFyw6EgdW4gcmV0cmFiYWpvIGVuIGxhIHRhcmVhIGNvbiBsYSBpbmZvcm1hY2nDs24gaW5kaWNhZGEuJyxcbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlRGVsaXZlcmFibGVDaGlsZHJlbjoge1xuICAgICAgICAgIHRpdGxlOiAnQWN0dWFsaXphciBhdmFuY2UgZGUgZW50cmVnYWJsZXMnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnU2UgYWN0dWFsaXphcsOhIGVsIGF2YW5jZSBkZSBsb3Mgc3ViZW50cmVnYWJsZXMgdmluY3VsYWRvcyBhIGVzdGEgdGFyZWEuJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBmaWVsZHM6IHtcbiAgICAgICAgbmFtZTogJ05vbWJyZScsXG4gICAgICAgIGVtb2ppOiAnRW1vamknLFxuICAgICAgICBpbnRyb2R1Y3Rpb246ICdJbnRyb2R1Y2Npw7NuJyxcbiAgICAgICAgaW5wdXRfcGxhY2Vob2xkZXI6ICdQbGFjZWhvbGRlcicsXG4gICAgICAgIHVzZXJfcHJvbXB0OiAnUHJvbXB0IHByaW5jaXBhbCcsXG4gICAgICAgIGxhbmd1YWdlOiAnSWRpb21hJyxcbiAgICAgICAgcHJvdmlkZXI6ICdQcm92aWRlcicsXG4gICAgICAgIG1vZGVsX25hbWU6ICdNb2RlbG8nLFxuICAgICAgICBhcGlfa2V5OiAnQVBJIGtleScsXG4gICAgICB9LFxuICAgICAgdGl0bGU6ICdDb25maXJtYWNpw7NuIHJlcXVlcmlkYScsXG4gICAgICBkZXNjcmlwdGlvbjogJ1NlIHJlcXVpZXJlIHR1IGFwcm9iYWNpw7NuIHBhcmEgZWplY3V0YXIgbGEgc2lndWllbnRlIGFjY2nDs246JyxcbiAgICAgIGFwcHJvdmU6ICdBcHJvYmFyJyxcbiAgICAgIGRlbnk6ICdEZW5lZ2FyJyxcbiAgICAgIG1hbnVhbEFwcHJvdmFsV2FybmluZzogJ01haWEgaGEgZGV0ZWN0YWRvIHF1ZSBsYSBzb2xpY2l0dWQgaGEgc2lkbyBhcHJvYmFkYSBtYW51YWxtZW50ZScsXG4gICAgICBzdGF0dXM6IHtcbiAgICAgICAgYXBwcm92ZWQ6ICdTb2xpY2l0dWQgQXByb2JhZGEnLFxuICAgICAgICBkZW5pZWQ6ICdTb2xpY2l0dWQgRGVuZWdhZGEnLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGNoaXBMbG06IHtcbiAgICAgIHRvb2x0aXA6ICdNb2RlbG86IHt7bW9kZWx9fScsXG4gICAgfSxcbiAgICBjbGllbnRTZWxlY3Rvcjoge1xuICAgICAgcHJvamVjdDogJ3Byb3llY3RvJyxcbiAgICAgIHByb2plY3RzOiAncHJveWVjdG9zJyxcbiAgICB9LFxuICB9LFxuICBbU0VDVElPTlMuYWJtQWdlbnRdOiB7XG4gICAgLi4uZ2VuZXJpY1NlY3Rpb24sXG4gICAgbGVnZW5kRGVsZXRlZEFnZW50OiAnRXN0ZSBhZ2VudGUgaGEgc2lkbyBlbGltaW5hZG8gZWwgZMOtYScsXG4gICAgbGVnZW5kUHJvamVjdERlbGV0ZWQ6ICdFbCBwcm95ZWN0byB7e25hbWV9fSBoYSBzaWRvIGVsaW1pbmFkby4gTm8gZXMgcG9zaWJsZSBjb250aW51YXIgY29uIGxhIGNvbnZlcnNhY2nDs24nLFxuICAgIGxlZ2VuZE5vQWNjZXNzOiAnWWEgbm8gdGllbmVzIGFjY2VzbyBwYXJhIGludGVyYWN0dWFyIGNvbiBlbCBhZ2VudGUge3tuYW1lfX0nLFxuICAgIGxlZ2VuZE5vUGVybWlzc2lvbnM6ICdZYSBubyB0aWVuZXMgcGVybWlzb3MgcGFyYSB2aXN1YWxpemFyIG5pIGludGVyYWN0dWFyIGNvbiBlbCBhZ2VudGUge3tuYW1lfX0nLFxuICAgIGxlZ2VuZExlZ2FjeUNvbnRleHRTZXNzaW9uOlxuICAgICAgJ0VzdGEgY29udmVyc2FjacOzbiBwZXJ0ZW5lY2UgYSB1biBjb250ZXh0byBhbnRlcmlvci4gUG9kw6lzIGNvbnRpbnVhciBjb24ge3tuYW1lfX0gZW4gdW4gY2hhdCBudWV2by4nLFxuICAgIGNvbnRpbnVlSW5OZXdDaGF0OiAnQ29udGludWFyIGVuIHVuIGNoYXQgbnVldm8nLFxuICAgIGxlZ2VuZE1vZGVsRGVwcmVjYXRlZDpcbiAgICAgICdFbCBtb2RlbG8gc2VsZWNjaW9uYWRvIHBhcmEgZXN0ZSBhZ2VudGUgeWEgbm8gZXN0w6EgZGlzcG9uaWJsZS4gQ2FtYmlhIGEgb3RybyBtb2RlbG8gcGFyYSBzZWd1aXIgdXRpbGl6w6FuZG9sby4nLFxuICAgIGxlZ2VuZFByb3ZpZGVyU3RhdHVzOlxuICAgICAgJ0VsIG1vZGVsbyBxdWUgdXNhIGVzdGUgYWdlbnRlIGVzdMOhIHRlbmllbmRvIHByb2JsZW1hcyB0ZW1wb3JhbGVzLiBQdWVkZXMgZXNwZXJhciBhIHF1ZSBzZSByZXN0YWJsZXpjYSBvIGNhbWJpYXIgYSBvdHJvIG1vZGVsby4nLFxuICAgIGNoYW5nZU1vZGVsOiAnQ2FtYmlhciBtb2RlbG8nLFxuICAgIGFnZW50czogJ0FnZW50ZXMnLFxuICAgIGxheW91dE1lbnVUb29sdGlwOiAnRGlzcG9zaWNpw7NuIGRlbCBjaGF0JyxcbiAgICBsYXlvdXRTaWRlYmFyOiAnQ2hhdCBsYXRlcmFsJyxcbiAgICBsYXlvdXRGdWxsc2NyZWVuOiAnQ2hhdCBjb21wbGV0bycsXG4gICAgbGF5b3V0RmxvYXRpbmc6ICdDaGF0IGZsb3RhbnRlJyxcbiAgICBiYWNrOiAnVm9sdmVyJyxcbiAgICBhZGRBZ2VudDogJ0FncmVnYXIgbnVldm8gYWdlbnRlJyxcbiAgICBuZXdBZ2VudDogJ051ZXZvIGFnZW50ZScsXG4gICAgZWRpdEFnZW50OiAnRWRpdGFyIGFnZW50ZScsXG4gICAgY3JlYXRlQWdlbnQ6ICdDcmVhciBBZ2VudGUnLFxuICAgIGNhbmNlbDogJ0NhbmNlbGFyJyxcbiAgICBhY2NlcHQ6ICdBY2VwdGFyJyxcbiAgICBkZWxldGVBZ2VudDogJ0VsaW1pbmFyIGFnZW50ZScsXG4gICAgY29udGludWU6ICdDb250aW51YXInLFxuICAgIGVkaXQ6ICdFZGl0YXInLFxuICAgIGRlbGV0ZTogJ0VsaW1pbmFyJyxcbiAgICBmZWVkYmFjazogJ0VudmlhciBGZWVkYmFjaycsXG4gICAgc2VuZEZlZWRiYWNrOiAnRW52aWFyIGZlZWRiYWNrJyxcbiAgICBzYXZlQ2hhbmdlczogJ0d1YXJkYXIgY2FtYmlvcycsXG4gICAgY3JlYXRlQWdlbnRMYWJlbEJ1dHRvbjogJ0NyZWFyIGFnZW50ZScsXG4gICAgb3BlbkFnZW50Q3JlYXRvcjogJ0NyZWFyIGFnZW50ZScsXG4gICAgb3Blbk1hcmtldHBsYWNlOiAnTWFya2V0cGxhY2UgZGUgYWdlbnRlcycsXG4gICAgY29uZmlybUFnZW50VXBkYXRlZFdpdGhGaWxlc0Vycm9yOiAnRWwgYWdlbnRlIHNlIGVkaXTDsyBleGl0b3NhbWVudGUsIHBlcm8gaGF5IGFyY2hpdm9zIHF1ZSBubyBwdWRpZXJvbiBwcm9jZXNhcnNlLicsXG4gICAgY29uZmlybUFnZW50Q3JlYXRlZDogJ0VsIGFnZW50ZSBzZSBoYSBjcmVhZG8gY29uIMOpeGl0bycsXG4gICAgY29uZmlybUFnZW50RGVsZXRlZDogJ0VsIGFnZW50ZSBzZSBoYSBlbGltaW5hZG8gY29uIMOpeGl0bycsXG4gICAgY29uZmlybUFnZW50V2l0aEZpbGVzRXJyb3I6ICdFbCBhZ2VudGUgc2UgY3Jlw7MgZXhpdG9zYW1lbnRlLCBwZXJvIGhheSBhcmNoaXZvcyBxdWUgbm8gcHVkaWVyb24gcHJvY2VzYXJzZS4nLFxuICAgIGNvbmZpcm1BZ2VudFVwZGF0ZWQ6ICdFbCBhZ2VudGUgc2UgaGEgYWN0dWFsaXphZG8gY29uIMOpeGl0bycsXG4gICAgY29uZmlybUNsb3NlQ3JlYXRlQWdlbnQ6ICfCv0VzdMOhcyBzZWd1cm8gZGUgcXVlIHF1aWVyZXMgY2VycmFyPyBTZSBwZXJkZXLDoW4gbG9zIGNhbWJpb3MgcmVhbGl6YWRvcy4nLFxuICAgIGNvbmZpcm1DbG9zZUVkaXRBZ2VudDogJ8K/RXN0w6FzIHNlZ3VybyBkZSBxdWUgcXVpZXJlcyBjZXJyYXI/IFNlIHBlcmRlcsOhbiBsb3MgY2FtYmlvcyByZWFsaXphZG9zLicsXG4gICAgY29uZmlybVJlbG9hZEJyb3dzZXI6ICfCv0VzdMOhcyBzZWd1cm8gZGUgcXVlIHF1aWVyZXMgcmVjYXJnYXIgbGEgcMOhZ2luYT8gU2UgcGVyZGVyw6FuIGxvcyBjYW1iaW9zIHJlYWxpemFkb3MuJyxcbiAgICBlcnJvckFjY2Vzc0RlbmllZDogJ05vIHRpZW5lcyBwZXJtaXNvcyBwYXJhIGFjY2VkZXIgYSBlc3RlIGFnZW50ZS4gQ29udGFjdGEgY29uIHNvcG9ydGUuJyxcbiAgICBlcnJvckFnZW50Q3JlYXRlZDogJ09jdXJyacOzIHVuIGVycm9yIGluZXNwZXJhZG8uIFBvciBmYXZvciB2dWVsdmUgYSBpbnRlbnRhcmxvLicsXG4gICAgYXR0YWNobWVudENhcmQ6IHtcbiAgICAgIGRvd25sb2FkOiAnRGVzY2FyZ2FyJyxcbiAgICAgIGRlbGV0ZTogJ0VsaW1pbmFyJyxcbiAgICB9LFxuICAgIGdlbmVyYWxTZWN0aW9uOiB7XG4gICAgICB0aXRsZTogJ0dlbmVyYWwnLFxuICAgICAgZ2VuZXJhbFNldHRpbmdzOiAnQ29uZmlndXJhY2nDs24gZ2VuZXJhbCcsXG4gICAgICByZXF1aXJlZEZpZWxkc0xhYmVsOiAnKm9ibGlnYXRvcmlvcycsXG4gICAgICBpbmZvTGFiZWw6ICdBZ3JlZ2EgdG9kYSBsYSBpbmZvcm1hY2nDs24gcGFyYSBwZXJzb25hbGl6YXIgZWwgY29tcG9ydGFtaWVudG8gZGUgdHUgYWdlbnRlJyxcbiAgICAgIG9wdGlvbmFsTGFiZWw6ICdPcGNpb25hbCcsXG4gICAgICBiYXNpY1NldHRpbmdzOiAnQ29uZmlndXJhY2nDs24gYsOhc2ljYScsXG4gICAgICBzZWxlY3RFbW9qaTogJ1NlbGVjY2lvbmFyIGVtb2ppJyxcbiAgICAgIG5hbWU6ICfCv0N1w6FsIGVzIGVsIG5vbWJyZSBkZSB0dSBhZ2VudGU/JyxcbiAgICAgIG5hbWVQbGFjZWhvbGRlcjogJ0Fzw61nbmFsZSB1biBub21icmUgYSB0dSBhZ2VudGUnLFxuICAgICAgYmVoYXZpb3JTZXR0aW5nczogJ0NvbmZpZ3VyYWNpw7NuIGRlIGNvbXBvcnRhbWllbnRvJyxcbiAgICAgIGluaXRpYWxQcm9tcHQ6ICfCv0N1w6FsZXMgc29uIGxhcyBpbnN0cnVjY2lvbmVzPycsXG4gICAgICBpbml0aWFsUHJvbXB0UGxhY2Vob2xkZXI6XG4gICAgICAgICdFamVtcGxvOiBFcmVzIHVuIHNvY2lhbCBtZWRpYSBjb3B5d3JpdGVyIHF1ZSByZWRhY3RhIHkgYWRhcHRhIG1lbnNhamVzIHBhcmEgZGlmZXJlbnRlcyByZWRlcywgYXNlZ3VyYW5kbyBjb25zaXN0ZW5jaWEgZW4gZWwgdG9ubywgbGEgcGVyc29uYWxpZGFkIHkgbG9zIHZhbG9yZXMgZGUgbGEgbWFyY2EuXCInLFxuICAgICAgbW9kZWxBaUxhYmVsOiAnTW9kZWxvIGRlIEFJJyxcbiAgICAgIG5vTW9kZWxzQXZhaWxhYmxlOiAnTm8gaGF5IG1vZGVsb3MgZGlzcG9uaWJsZXMnLFxuICAgICAgaW5wdXRQbGFjZWhvbGRlclRpdGxlOiAnwr9RdcOpIHZlcsOhIGVsIHVzdWFyaW8gZW4gZWwgY2FtcG8gZGUgY2hhdCBhbnRlcyBkZSBlc2NyaWJpcj8nLFxuICAgICAgaW5wdXRQbGFjZWhvbGRlcjogJ1ByZWfDum50YW1lIGxvIHF1ZSBuZWNlc2l0ZXPigKYnLFxuICAgICAgaW50cm9kdWN0aW9uOiAnwr9Dw7NtbyBzZSB2YSBhIHByZXNlbnRhciB0dSBhZ2VudGU/JyxcbiAgICAgIGludHJvZHVjdGlvblBsYWNlaG9sZGVyOlxuICAgICAgICAnRWplbXBsbzogwqFIb2xhISDwn5GLLiBUZSB2b3kgYSBheXVkYXIgYSBjcmVhciwgYWRhcHRhciB5IHJldmlzYXIgY29weXMgcGFyYSBkaXN0aW50YXMgcGxhdGFmb3JtYXMgYXNlZ3VyYW5kbyBxdWUgbWFudGVuZ2FuIGxhIHZveiwgZWwgdG9ubyB5IGxhIHBlcnNvbmFsaWRhZCBkZSB0dSBtYXJjYS4gUHVlZGVzIHBlZGlybWUgcXVlIHRlIHByb3BvbmdhIGlkZWFzIHBhcmEgdW5hIGNhbXBhw7FhLCBhZGFwdGUgdW4gdGV4dG8gcGFyYSBvdHJvIGNhbmFsIG8gcmV2aXNlIGxhIGNvaGVyZW5jaWEgZGVsIG1lbnNhamUnLFxuICAgICAgZXJyb3I6IHtcbiAgICAgICAgbWF4Q2FyYWN0ZXJOYW1lOiAnQ29tcGxldGFzdGUgbG9zIDE1MCBjYXJhY3RlcmVzIGRlbCBsw61taXRlLicsXG4gICAgICAgIG1heENhcmFjdGVySW5pdGlhbFByb21wdDogJ0NvbXBsZXRhc3RlIGxvcyA1MDAwIGNhcmFjdGVyZXMgZGVsIGzDrW1pdGUuJyxcbiAgICAgICAgbWF4SW5wdXRQbGFjZWhvbGRlcjogJ0NvbXBsZXRhc3RlIGxvcyAxMDAgY2FyYWN0ZXJlcyBkZWwgbMOtbWl0ZS4nLFxuICAgICAgICBtYXhDYXJhY3RlckludHJvZHVjdGlvbjogJ0NvbXBsZXRhc3RlIGxvcyA0MDAgY2FyYWN0ZXJlcyBkZWwgbMOtbWl0ZS4nLFxuICAgICAgfSxcbiAgICAgIGhvd1RvV3JpdGVQcm9tcHQ6ICdDw7NtbyByZWRhY3RhciB1biBwcm9tcHQnLFxuICAgICAgd2hhdElzTW9kZWxBaVRpdGxlOiAnwr9RdcOpIG1vZGVsbyBkZSBJQSB2YXMgYSB1c2FyPycsXG4gICAgICB3aGF0SXNNb2RlbEFpOiAnwr9RdcOpIGVzIHVuIG1vZGVsbyBkZSBBST8nLFxuICAgICAgYWRkRmF2b3JpdGU6ICdBZ3JlZ2FyIGEgZmF2b3JpdG9zJyxcbiAgICAgIHJlbW92ZUZhdm9yaXRlOiAnUXVpdGFyIGRlIGZhdm9yaXRvcycsXG4gICAgICBjcmVhdGVkQnk6ICdQb3InLFxuICAgICAgY3JlYXRlZEJ5VG9vbHRpcDogJ1VzdWFyaW8gY3JlYWRvciBkZWwgYWdlbnRlJyxcbiAgICAgIGNyZWF0ZWRCeVRvb2x0aXBEZWxldGVkOiAnVXN1YXJpbyBlbGltaW5hZG8uIFN1IG5vbWJyZSBzZSBtYW50aWVuZSBwYXJhIHJlZmVyZW5jaWEuJyxcbiAgICB9LFxuICAgIGtub3dsZWRnZVNlY3Rpb246IHtcbiAgICAgIHRpdGxlOiAnQ29ub2NpbWllbnRvJyxcbiAgICAgIGtub3dsZWRnZVRhYjogJ0Jhc2UgZGUgY29ub2NpbWllbnRvcycsXG4gICAgICBpbmZvTGFiZWw6ICdDYXJnYSBsb3MgYXJjaGl2b3MgcXVlIHR1IGFnZW50ZSB1c2Fyw6EgY29tbyBmdWVudGUgcGFyYSBzdXMgcmVzcHVlc3Rhcy4nLFxuICAgICAgc2VsZWN0RmlsZVRpdGxlOiAnU0VMRUNDSU9OQVIgQVJDSElWT1MnLFxuICAgICAgYXR0YWNoRmlsZXM6ICdBZGp1bnRhciBhcmNoaXZvcycsXG4gICAgICBkcm9wWm9uZVRleHQ6IHtcbiAgICAgICAgMTogJ0NsaWMgYXF1w60gcGFyYSBjYXJnYXInLFxuICAgICAgICAyOiAnbyBhcnJhc3RyYSBsb3MgYXJjaGl2b3MnLFxuICAgICAgfSxcbiAgICAgIGluZm9GaWxlVHlwZXM6XG4gICAgICAgICcubWQsIC5wZGYsIC5kb2MsIC5kb2N4LCAucHB0LCAucHB0eCwgLnR4dCwgLmNzdiwgLnBuZywgLmpwZywgLmpwZWcsIC54bHMsIC54bHN4ICAobcOheC4gdG90YWwgZGUgNU1CKScsXG4gICAgICBlcnJvcjoge1xuICAgICAgICB0aXRsZTogJ0FsZ3Vub3MgYXJjaGl2b3Mgbm8gc2UgcHVkaWVyb24gY2FyZ2FyJyxcbiAgICAgICAgbWF4RmlsZXNUaXRsZTogJ0hhcyBzdXBlcmFkbyBlbCBsw61taXRlIGRlIHRhbWHDsW8gdG90YWwnLFxuICAgICAgICBtYXhGaWxlc0Rlc2NyaXB0aW9uOlxuICAgICAgICAgICdTb2xvIHB1ZWRlcyBhZGp1bnRhciBhcmNoaXZvcyBoYXN0YSB1biB0b3RhbCBkZSA1IE1CLiBMb3Mgc2lndWllbnRlcyBhcmNoaXZvcyBubyBzZSBwdWRpZXJvbiBhZGp1bnRhcjonLFxuICAgICAgICBtYXhTaXplVGl0bGU6ICdTdXBlcmFzdGUgZWwgbMOtbWl0ZSBkZSBwZXNvIHBlcm1pdGlkbycsXG4gICAgICAgIG1heFNpemVEZXNjcmlwdGlvbjoge1xuICAgICAgICAgIDE6ICdTZSBhbGNhbnrDsyBlbCBsw61taXRlIG3DoXhpbW8gZGUgNSBNQi4nLFxuICAgICAgICAgIDI6ICdFc3RvcyBhcmNoaXZvcyBubyBzZSBjYXJnYXJvbiBwb3JxdWUgc3VwZXJhIGVsIGVzcGFjaW8gZGlzcG9uaWJsZTonLFxuICAgICAgICB9LFxuICAgICAgICBpbnZhbGlkRXh0ZW5zaW9uRGVzY3JpcHRpb246IHtcbiAgICAgICAgICAxOiAnU29sbyBzZSBhY2VwdGFuIGFyY2hpdm9zIGNvbiBsYXMgc2lndWllbnRlcyBleHRlbnNpb25lczogLm1kLCAucGRmLCAuZG9jLCAuZG9jeCwgLnBwdCwgLnBwdHgsIC50eHQsIC5jc3YsIC5wbmcsIC5qcGcsIC5qcGVnLCAueGxzLCAueGxzeCcsXG4gICAgICAgICAgMjogJ0VzdG9zIGFyY2hpdm9zIG5vIHNlIGNhcmdhcm9uIHBvcnF1ZSBzdSBleHRlbnNpw7NuIG5vIGVzdMOhIHBlcm1pdGlkYTonLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIG1vcmVJbmZvOiAnTWlyYSBjw7NtbyBmdW5jaW9uYSBhY8OhJyxcbiAgICB9LFxuICAgIGFjY2Vzc2liaWxpdHlTZWN0aW9uOiB7XG4gICAgICB0aXRsZVRhYjogJ1Blcm1pc29zJyxcbiAgICAgIHRpdGxlU2VjdGlvbjogJ1Zpc2liaWxpZGFkIHkgcGVybWlzb3MgZGVsIGFnZW50ZScsXG4gICAgICBzdWJ0aXRsZVNlY3Rpb246ICdEZWZpbsOtIHF1acOpbiBwdWVkZSB1c2FyIGVzdGUgYWdlbnRlIHkgc2kgcHVlZGUgYWNjZWRlciBhIGRhdG9zIGRlIENPUi4nLFxuICAgICAgY29yUGVybWlzc2lvbnNUaXRsZTogJ1Blcm1pc29zIGRlIGFjY2VzbyBhIGRhdG9zIGRlIENPUicsXG4gICAgICBjb3JQZXJtaXNzaW9uc1N1YnRpdGxlOiAnwr9BIHF1w6kgdGllbmUgYWNjZXNvIGVzdGUgYWdlbnRlPycsXG4gICAgICB0YXNrQWNjZXNzVGl0bGU6ICdBY2Nlc28gYSB0YXJlYXMnLFxuICAgICAgdGFza0FjY2Vzc0Rlc2NyaXB0aW9uOiAnRWwgYWdlbnRlIHBvZHLDoSBsZWVyLCBjcmVhciwgbW9kaWZpY2FyIHkgZWxpbWluYXIgdGFyZWFzIHNlZ8O6biBsb3MgcGVybWlzb3MgZGVsIHVzdWFyaW8uJyxcbiAgICAgIHZpc2liaWxpdHlUaXRsZTogJ1Zpc2liaWxpZGFkIGRlbCBhZ2VudGUnLFxuICAgICAgd2hvQ2FuQWNjZXNzOiAnwr9RdWnDqW4gcHVlZGUgdXNhciBlc3RlIGFnZW50ZT8nLFxuICAgICAgYWxsQ29tcGFueVRpdGxlOiAnVG9kYSBsYSBjb21wYcOxw61hJyxcbiAgICAgIGFsbENvbXBhbnlEZXNjcmlwdGlvbjogJ1RvZG9zIGxvcyB1c3VhcmlvcyBkZSB0dSBvcmdhbml6YWNpw7NuIHBvZHLDoW4gdmVyIHkgdXNhciBlc3RlIGFnZW50ZS4nLFxuICAgICAgY2xpZW50VGl0bGU6ICdQYXJhIGNsaWVudGVzIGVzcGVjw61maWNvcycsXG4gICAgICBjbGllbnREZXNjcmlwdGlvbjpcbiAgICAgICAgJ0Fzb2NpYSBlc3RlIGFnZW50ZSBhIHVubyBvIG3DoXMgY2xpZW50ZXMuIFRvZG9zIGxvcyB1c3VhcmlvcyBwb2Ryw6FuIHZlciBjb24gcXXDqSBjbGllbnRlcyBlc3TDoSB2aW5jdWxhZG8uJyxcbiAgICAgIG93blRpdGxlOiAnU29sbyB5bycsXG4gICAgICBvd25EZXNjcmlwdGlvbjogJ0VzdGUgYWdlbnRlIHNlcsOhIHByaXZhZG8geSBubyBlc3RhcsOhIGRpc3BvbmlibGUgcGFyYSBvdHJvcyB1c3Vhcmlvcy4nLFxuICAgICAgY2xpZW50c1NlbGVjdGVkOiAnQ2xpZW50ZXMgc2VsZWNjaW9uYWRvczonLFxuICAgICAgc2VhcmNoRXJyb3I6ICfCoVVwcyEgVHV2aW1vcyB1biBwcm9ibGVtYSBhbCBjYXJnYXIgbG9zIGNsaWVudGVzLiDCv1B1ZWRlcyBpbnRlbnRhcmxvIGRlIG51ZXZvIGVuIHVuIG1vbWVudG8/JyxcbiAgICAgIHNlYXJjaEVtcHR5OiAnwqFVcHMhIE5vIGVuY29udHJhbW9zIGNsaWVudGVzIGNvbiBlc2Ugbm9tYnJlLiBQcnVlYmEgcmVhbGl6YW5kbyBvdHJhIGLDunNxdWVkYScsXG4gICAgICBzZWFyY2hJbml0aWFsOiAnQ29taWVuemEgYSBlc2NyaWJpciBlbCBub21icmUgZGUgdW4gY2xpZW50ZSBwYXJhIGFzb2NpYXJsbycsXG4gICAgICBzZWFyY2hQbGFjZWhvbGRlcjogJ0J1c2NhciBjbGllbnRlJyxcbiAgICAgIGNsaWVudEluYWN0aXZlOiAnRXN0ZSBjbGllbnRlIGVzdMOhIGluYWN0aXZvLiBUZSByZWNvbWVuZGFtb3MgcXVpdGFybG8gZGUgbGEgbGlzdGEuJyxcbiAgICAgIGNsaWVudERlbGV0ZWRUb29sdGlwOiAnRXN0ZSBjbGllbnRlIGZ1ZSBlbGltaW5hZG8uIFRlIHJlY29tZW5kYW1vcyBxdWl0YXJsbyBkZSBsYSBsaXN0YS4nLFxuICAgICAgY2xpZW50RGVsZXRlZDogJ0NsaWVudGUgZWxpbWluYWRvJyxcbiAgICAgIGNsaWVudHNFcnJvcjogJ1JldmlzYSBsb3MgY2xpZW50ZXMgYXNvY2lhZG9zJyxcbiAgICB9LFxuICAgIHByb2Nlc3NpbmdLbm93bGVkZ2U6IHtcbiAgICAgIGRlc2NyaXB0aW9uQ3JlYXRlOlxuICAgICAgICAnRXN0YW1vcyBjcmVhbmRvIGVsIEFnZW50ZSB5IHN1IGJhc2UgZGUgY29ub2NpbWllbnRvLiBFc3RvIHB1ZWRlIGxsZXZhciB1bm9zIG1vbWVudG9zLiBQb3IgZmF2b3Igbm8gY2llcnJlIGVzdGEgdmVudGFuYSBoYXN0YSBxdWUgZWwgcHJvY2VzbyBzZSBoYXlhIGZpbmFsaXphZG8uJyxcbiAgICAgIGRlc2NyaXB0aW9uVXBkYXRlOlxuICAgICAgICAnRXN0YW1vcyBhY3R1YWxpemFuZG8gZWwgQWdlbnRlIHkgc3UgYmFzZSBkZSBjb25vY2ltaWVudG8uIEVzdG8gcHVlZGUgbGxldmFyIHVub3MgbW9tZW50b3MuIFBvciBmYXZvciBubyBjaWVycmUgZXN0YSB2ZW50YW5hIGhhc3RhIHF1ZSBlbCBwcm9jZXNvIHNlIGhheWEgZmluYWxpemFkby4nLFxuICAgICAgZmlsZVJvdzogJ0FyY2hpdm8nLFxuICAgICAgc3RhdHVzUm93OiAnRXN0YWRvJyxcbiAgICAgIHBlbmRpbmc6ICdQZW5kaWVudGUnLFxuICAgICAgcHJvY2Vzc2luZzogJ1Byb2Nlc2FuZG8nLFxuICAgICAgZmFpbGVkOiAnRmFsbG8nLFxuICAgICAgZG9uZTogJ0NvbXBsZXRhZG8nLFxuICAgICAgbG9hZGluZ0ZpbGVzOiAnQ2FyZ2FuZG8gYXJjaGl2b3MuLi4nLFxuICAgICAgZXJyb3I6IHt9LFxuICAgIH0sXG4gICAgZGVsZXRlQWdlbnRNb2RhbDoge1xuICAgICAgdGl0bGU6ICfCv0Rlc2VhcyBlbGltaW5hciBlc3RlIGFnZW50ZT8nLFxuICAgICAgZmlyc3RQYXJ0OiAnRXN0w6FzIHBvciBlbGltaW5hciAnLFxuICAgICAgc2Vjb25kUGFydDogJ0VzdGEgYWNjacOzbiBubyBzZSBwdWVkZSBkZXNoYWNlci4nLFxuICAgICAgY2FuY2VsOiAnQ2FuY2VsYXInLFxuICAgICAgZGVsZXRlOiAnRWxpbWluYXInLFxuICAgIH0sXG4gIH0sXG4gIFtTRUNUSU9OUy5wcm9qZWN0U2VsZWN0b3JdOiB7XG4gICAgLi4uZ2VuZXJpY1NlY3Rpb24sXG4gICAgcHJvamVjdFNlbGVjdG9yOiB7XG4gICAgICB0aXRsZTogJ8K/RW4gcXXDqSBwcm95ZWN0byB0ZSBwdWVkbyBhc2lzdGlyPycsXG4gICAgICBoZWxsbzoge1xuICAgICAgICB0aXRsZTogJ0hvbGEge3tuYW1lfX0g8J+RiycsXG4gICAgICAgIHN1YnRpdGxlOiAnwr9Db24gcXXDqSBwcm95ZWN0byBwdWVkbyBheXVkYXJ0ZT8nLFxuICAgICAgfSxcbiAgICAgIHN1YnRpdGxlOiAnU2VsZWNjaW9uYSBlbCBwcm95ZWN0byBwYXJhIHF1ZSBNQUlBIHRlIHJlc3BvbmRhIGVuIGJhc2UgYSB1biBjb250ZXh0by4nLFxuICAgICAgbGFiZWxQcm9qZWN0OiAnU2VsZWNjaW9uYSB1biBwcm95ZWN0bycsXG4gICAgICBwbGFjZWhvbGRlcjogJ0J1c2NhciB1biBwcm95ZWN0byBwb3Igbm9tYnJlJyxcbiAgICAgIGNoYW5nZVByb2plY3Q6ICdDYW1iaWFyIGRlIHByb3llY3RvJyxcbiAgICAgIHJlY2VudFByb2plY3RzOiAnUmVjaWVudGVzJyxcbiAgICAgIHNlYXJjaGluZ1Byb2plY3RzOiAnQnVzY2FuZG8gdHVzIHByb3llY3Rvcy4uLicsXG4gICAgICBlcnJvck1lc3NhZ2U6ICfCoVVwcyEgVHV2aW1vcyB1biBwcm9ibGVtYSBhbCBjYXJnYXIgbG9zIHByb3llY3Rvcy4gUG9yIGZhdm9yLCBpbnRlbnRhIGRlIG51ZXZvIGVuIHVub3MgbWludXRvcy4nLFxuICAgICAgZW1wdHlSZWNlbnRQcm9qZWN0czpcbiAgICAgICAgJ05vIHRpZW5lcyBwcm95ZWN0b3MgcmVjaWVudGVzLiBFc2NyaWJlIGVsIG5vbWJyZSBkZSB1biBwcm95ZWN0byBlbiBlbCBidXNjYWRvciBwYXJhIGVuY29udHJhcmxvLicsXG4gICAgICBlbXB0eVN0YXRlOiAnwqFVcHMhIE5vIGVuY29udHJhbW9zIHByb3llY3RvcyBjb24gZXNlIG5vbWJyZS4gUHJvYsOhIHJlYWxpemFuZG8gb3RyYSBiw7pzcXVlZGEuJyxcbiAgICAgIHdpdGhvdXRDbGllbnQ6ICdTaW4gY2xpZW50ZScsXG4gICAgICB3aXRob3V0VGl0bGU6ICdTaW4gdMOtdHVsbycsXG4gICAgfSxcbiAgfSxcbiAgW1NFQ1RJT05TLmNsaWVudFNlbGVjdG9yXToge1xuICAgIC4uLmdlbmVyaWNTZWN0aW9uLFxuICAgIGNsaWVudFNlbGVjdG9yOiB7XG4gICAgICB0aXRsZTogJ8K/RW4gcXXDqSBjbGllbnRlIHRlIHB1ZWRvIGFzaXN0aXI/JyxcbiAgICAgIGhlbGxvOiB7XG4gICAgICAgIHRpdGxlOiAnSG9sYSB7e25hbWV9fSDwn5GLJyxcbiAgICAgICAgc3VidGl0bGU6ICfCv0NvbiBxdcOpIGNsaWVudGUgcHVlZG8gYXl1ZGFydGU/JyxcbiAgICAgIH0sXG4gICAgICBzdWJ0aXRsZTogJ1NlbGVjY2lvbmEgZWwgY2xpZW50ZSBwYXJhIHF1ZSBNQUlBIHRlIHJlc3BvbmRhIGVuIGJhc2UgYSB1biBjb250ZXh0by4nLFxuICAgICAgbGFiZWxDbGllbnQ6ICdTZWxlY2Npb25hIHVuIGNsaWVudGUnLFxuICAgICAgcGxhY2Vob2xkZXI6ICdCdXNjYXIgY2xpZW50ZSBwb3Igc3Ugbm9tYnJlJyxcbiAgICAgIGNoYW5nZUNsaWVudDogJ0NhbWJpYXIgZGUgY2xpZW50ZScsXG4gICAgICByZWNlbnRDbGllbnRzOiAnUmVjaWVudGVzJyxcbiAgICAgIHNlYXJjaGluZ0NsaWVudHM6ICdCdXNjYW5kbyB0dXMgY2xpZW50ZXMuLi4nLFxuICAgICAgZXJyb3JNZXNzYWdlOiAnVHV2aW1vcyB1biBwcm9ibGVtYSBhbCBjYXJnYXIgbG9zIGNsaWVudGVzLiBQb3IgZmF2b3IsIGludGVudGEgZGUgbnVldm8gZW4gdW5vcyBtaW51dG9zLicsXG4gICAgICBlbXB0eVJlY2VudENsaWVudHM6XG4gICAgICAgICdObyB0aWVuZXMgY2xpZW50ZXMgcmVjaWVudGVzLiBFc2NyaWJlIGVsIG5vbWJyZSBkZSB1biBjbGllbnRlIGVuIGVsIGJ1c2NhZG9yIHBhcmEgZW5jb250cmFybG8uJyxcbiAgICAgIGVtcHR5U3RhdGU6ICdVcHMhIE5vIGVuY29udHJhbW9zIGNsaWVudGVzIGNvbiBlc2Ugbm9tYnJlLiBQcm9iw6EgcmVhbGl6YW5kbyBvdHJhIGLDunNxdWVkYS4nLFxuICAgICAgcHJvamVjdDogJ3Byb3llY3RvJyxcbiAgICAgIHByb2plY3RzOiAncHJveWVjdG9zJyxcbiAgICB9LFxuICB9LFxufVxuIl0sIm1hcHBpbmdzIjoiOzs7QUFBQSxTQUFTQSxRQUFRLFFBQVEsd0JBQXdCO0FBQ2pELFNBQVNDLHdCQUF3QixRQUFRLHNDQUFzQztBQUUvRSxJQUFNQyxPQUFPLEdBQUc7RUFDZEMsS0FBSyxFQUFFLFFBQVE7RUFDZkMsUUFBUSxFQUFFLFdBQVc7RUFDckJDLFFBQVEsRUFBRSxnQkFBZ0I7RUFDMUJDLFNBQVMsRUFBRSxNQUFNO0VBQ2pCQyxNQUFNLEVBQUUsVUFBVTtFQUNsQkMsUUFBUSxFQUFFLFVBQVU7RUFDcEJDLE1BQU0sRUFBRSxrQkFBa0I7RUFDMUJDLElBQUksRUFBRSxRQUFRO0VBQ2RDLE1BQU0sRUFBRSxTQUFTO0VBQ2pCQyxLQUFLLEVBQUUsVUFBVTtFQUNqQkMsYUFBYSxFQUFFLHNCQUFzQjtFQUNyQ0MsSUFBSSxFQUFFLFNBQVM7RUFDZkMsTUFBTSxFQUFFO0FBQ1YsQ0FBQztBQUVELElBQU1DLEtBQUssR0FBRztFQUNaQyxLQUFLLEVBQUUseUJBQXlCO0VBQ2hDQyxXQUFXLEVBQUUsc0dBQXNHO0VBQ25IQyxRQUFRLEVBQUU7QUFDWixDQUFDO0FBRUQsSUFBTUMsY0FBYyxHQUFHO0VBQ3JCSixLQUFLLEVBQUxBLEtBQUs7RUFDTGQsT0FBTyxFQUFQQTtBQUNGLENBQUM7QUFFRCxJQUFNbUIscUJBQXFCLEdBQUc7RUFDNUJDLE1BQU0sRUFBRSxTQUFTO0VBQ2pCQyxLQUFLLEVBQUUsa0JBQWtCO0VBQ3pCQyxPQUFPLEVBQUUsK0JBQStCO0VBRXhDQyxRQUFRLEVBQUU7SUFDUkMsUUFBUSxFQUFFLFdBQVc7SUFDckJDLFVBQVUsRUFBRSxjQUFjO0lBQzFCQyxPQUFPLEVBQUU7RUFDWCxDQUFDO0VBRURDLE1BQU0sRUFBRTtJQUNOQyxjQUFjLEVBQUUsa0JBQWtCO0lBQ2xDQyxtQkFBbUIsRUFBRSxzQkFBc0I7SUFDM0N0QixNQUFNLEVBQUUsY0FBYztJQUN0QnVCLGVBQWUsRUFBRSx1QkFBdUI7SUFDeENuQixhQUFhLEVBQUUsc0JBQXNCO0lBQ3JDb0IsZUFBZSxFQUFFLHdCQUF3QjtJQUN6Q0MsZ0JBQWdCLEVBQUUsbUJBQW1CO0lBQ3JDQyxjQUFjLEVBQUUsU0FBUztJQUN6QkMsVUFBVSxFQUFFO0VBQ2QsQ0FBQztFQUVEQyxpQkFBaUIsRUFBQUMsZUFBQSxDQUFBQSxlQUFBLENBQUFBLGVBQUEsQ0FBQUEsZUFBQSxDQUFBQSxlQUFBLEtBQ2RyQyx3QkFBd0IsQ0FBQ3NDLGNBQWMsRUFBRyxvQkFBb0IsR0FDOUR0Qyx3QkFBd0IsQ0FBQ3VDLFlBQVksRUFBRyxjQUFjLEdBQ3REdkMsd0JBQXdCLENBQUN3QyxVQUFVLEVBQUcsK0JBQStCLEdBQ3JFeEMsd0JBQXdCLENBQUN5QyxjQUFjLEVBQUcsa0JBQWtCLEdBQzVEekMsd0JBQXdCLENBQUMwQyxPQUFPLEVBQUcsWUFBWTtBQUVwRCxDQUFDO0FBRUQsSUFBTUMsUUFBUSxHQUFHO0VBQ2ZkLGNBQWMsRUFBRTtJQUNkYixLQUFLLEVBQUUsc0JBQXNCO0lBQzdCQyxXQUFXLEVBQUU7RUFDZixDQUFDO0VBQ0QyQixHQUFHLEVBQUU7SUFDSDVCLEtBQUssRUFBRSxzQkFBc0I7SUFDN0I2QixVQUFVLEVBQUUsd0JBQXdCO0lBQ3BDQyxLQUFLLEVBQUUsNkJBQTZCO0lBQ3BDL0IsS0FBSyxFQUFFLDRHQUE0RztJQUNuSGdDLFVBQVUsRUFBRTtNQUNWQyxRQUFRLEVBQUUsVUFBVTtNQUNwQkMsS0FBSyxFQUFFLFFBQVE7TUFDZkMsS0FBSyxFQUFFLE9BQU87TUFDZEMsT0FBTyxFQUFFLFlBQVk7TUFDckJDLFNBQVMsRUFBRTtJQUNiO0VBQ0YsQ0FBQztFQUNEQyxHQUFHLEVBQUU7SUFDSHJDLEtBQUssRUFBRSxxQkFBcUI7SUFDNUJzQyxRQUFRLEVBQUUsT0FBTztJQUNqQnZDLEtBQUssRUFBRTtFQUNULENBQUM7RUFDRHdDLGNBQWMsRUFBRTtJQUNkdkMsS0FBSyxFQUFFLGtFQUFrRTtJQUN6RXdDLEtBQUssRUFBRTtNQUNMQyxNQUFNLEVBQUUsU0FBUztNQUNqQkMsT0FBTyxFQUFFLFVBQVU7TUFDbkJDLElBQUksRUFBRTtJQUNSO0VBQ0YsQ0FBQztFQUNEQyxXQUFXLEVBQUU7SUFDWEMsUUFBUSxFQUFFLG1CQUFtQjtJQUM3QkMsUUFBUSxFQUFFLHVGQUF1RjtJQUNqR0Msb0JBQW9CLEVBQUUsZ0VBQWdFO0lBQ3RGQyw2QkFBNkIsRUFBRSxzREFBc0Q7SUFDckZDLHdCQUF3QixFQUFFLDZCQUE2QjtJQUN2REMsWUFBWSxFQUFFO01BQ1psRCxLQUFLLEVBQUU7SUFDVCxDQUFDO0lBQ0RtRCxrQkFBa0IsRUFBRTtNQUNsQm5ELEtBQUssRUFBRSwwQkFBMEI7TUFDakM4QyxRQUFRLEVBQUU7SUFDWixDQUFDO0lBQ0RNLDRCQUE0QixFQUFFO01BQzVCcEQsS0FBSyxFQUFFLHdCQUF3QjtNQUMvQjhDLFFBQVEsRUFBRTtJQUNaLENBQUM7SUFDRE8sZUFBZSxFQUFFO01BQ2ZYLE9BQU8sRUFBRSw2RUFBNkU7TUFDdEZDLElBQUksRUFBRSxrRkFBa0Y7TUFDeEZGLE1BQU0sRUFBRTtJQUNWO0VBQ0YsQ0FBQztFQUNEYSxXQUFXLEVBQUU7SUFDWHRELEtBQUssRUFBRSxpQ0FBaUM7SUFDeEM4QyxRQUFRLEVBQUU7RUFDWixDQUFDO0VBQ0RTLE1BQU0sRUFBRTtJQUNOeEIsVUFBVSxFQUFFO01BQ1ZFLEtBQUssRUFBRSx1QkFBdUI7TUFDOUJ1QixhQUFhLEVBQUUsOEJBQThCO01BQzdDQyxNQUFNLEVBQUUsbUJBQW1CO01BQzNCQyxVQUFVLEVBQUUsWUFBWTtNQUN4QkMsWUFBWSxFQUFFLGFBQWE7TUFDM0J4QixPQUFPLEVBQUUsWUFBWTtNQUNyQkQsS0FBSyxFQUFFO0lBQ1Q7RUFDRixDQUFDO0VBQ0QwQixTQUFTLEVBQUUsS0FBSztFQUNoQkMsZ0JBQWdCLEVBQUUsNEJBQTRCO0VBQzlDQyx1QkFBdUIsRUFBRSwyREFBMkQ7RUFDcEZDLFlBQVksRUFBRSxrRkFBa0Y7RUFDaEd6RCxLQUFLLEVBQUU7SUFDTE4sS0FBSyxFQUFFLHFDQUFxQztJQUM1Q2dFLE9BQU8sRUFBRSw2Q0FBNkM7SUFDdERDLE9BQU8sRUFBRSw2RUFBNkU7SUFDdEZDLE9BQU8sRUFBRSx1Q0FBdUM7SUFDaERwQixRQUFRLEVBQUUsaUdBQWlHO0lBQzNHcUIsT0FBTyxFQUFFLCtDQUErQztJQUN4REMsVUFBVSxFQUNSO0VBQ0osQ0FBQztFQUNEQyxPQUFPLEVBQUU7SUFDUHJFLEtBQUssRUFBRSx3REFBd0Q7SUFDL0RDLFdBQVcsRUFBRSxxRUFBcUU7SUFDbEZxRSxpQkFBaUIsRUFBRSwwQkFBMEI7SUFDN0NDLFFBQVEsRUFBRSxPQUFPO0lBQ2pCQyxTQUFTLEVBQUU7TUFDVHhFLEtBQUssRUFBRSw4QkFBOEI7TUFDckNDLFdBQVcsRUFBRSxpRUFBaUU7TUFDOUV3RSxNQUFNLEVBQUU7SUFDVixDQUFDO0lBQ0RDLGNBQWMsRUFBRTtNQUNkMUUsS0FBSyxFQUFFLGtCQUFrQjtNQUN6QkMsV0FBVyxFQUFFO0lBQ2Y7RUFDRjtBQUNGLENBQUM7QUFFRCxlQUFBb0IsZUFBQSxDQUFBQSxlQUFBLENBQUFBLGVBQUEsQ0FBQUEsZUFBQSxDQUFBQSxlQUFBLEtBQ0d0QyxRQUFRLENBQUM4QixjQUFjLEVBQUE4RCxhQUFBLENBQUFBLGFBQUEsS0FDbkJ4RSxjQUFjLEdBQ2RDLHFCQUFxQixJQUV6QnJCLFFBQVEsQ0FBQzZGLE1BQU0sRUFBQUQsYUFBQSxDQUFBQSxhQUFBLENBQUFBLGFBQUEsS0FDWHhFLGNBQWMsR0FDZEMscUJBQXFCO0VBQ3hCdUIsUUFBUSxFQUFSQSxRQUFRO0VBRVJrRCxjQUFjLEVBQUU7SUFDZEMsWUFBWSxFQUFFLG1FQUFtRTtJQUNqRkMsWUFBWSxFQUFFLFdBQVc7SUFDekJDLGNBQWMsRUFBRSxjQUFjO0lBQzlCQyxFQUFFLEVBQUUsSUFBSTtJQUNSQyxJQUFJLEVBQUU7TUFDSnpDLE1BQU0sRUFBRSxTQUFTO01BQ2pCQyxPQUFPLEVBQUUsVUFBVTtNQUNuQkMsSUFBSSxFQUFFLE9BQU87TUFDYndDLElBQUksRUFBRSxTQUFTO01BQ2ZDLEdBQUcsRUFBRSxZQUFZO01BQ2pCQyxLQUFLLEVBQUU7SUFDVCxDQUFDO0lBQ0RDLE9BQU8sRUFBRSxhQUFhO0lBQ3RCdkYsS0FBSyxFQUFFLGtEQUFrRDtJQUN6RCtCLEtBQUssRUFBRTtNQUNMeUQsT0FBTyxFQUFFLCtCQUErQjtNQUN4Q0MsU0FBUyxFQUFFO0lBQ2IsQ0FBQztJQUNEQyxRQUFRLEVBQUU7TUFDUnpELFFBQVEsRUFBRSxXQUFXO01BQ3JCQyxLQUFLLEVBQUU7SUFDVDtFQUNGLENBQUM7RUFDRHlELFVBQVUsRUFBRTtJQUNWQyxVQUFVLEVBQUUsaUJBQWlCO0lBQzdCQyxpQkFBaUIsRUFBRSxrQkFBa0I7SUFDckNDLE1BQU0sRUFBRTtFQUNWLENBQUM7RUFDREMsTUFBTSxFQUFFLElBQUk7RUFDWjlGLEtBQUssRUFBRSxrQkFBa0I7RUFDekJDLFdBQVcsRUFBRSxxRUFBcUU7RUFDbEY4RixPQUFPLEVBQUUsWUFBWTtFQUNyQkMsZ0JBQWdCLEVBQUUsY0FBYztFQUNoQ0MsZUFBZSxFQUFFLHdCQUF3QjtFQUN6Q0MsT0FBTyxFQUFFO0lBQ1BDLE9BQU8sRUFBRSxXQUFXO0lBQ3BCbkcsS0FBSyxFQUFFLGlCQUFpQjtJQUN4QkMsV0FBVyxFQUFFLHFDQUFxQztJQUNsRG1HLElBQUksRUFBRTtNQUNKQyxJQUFJLEVBQUU7SUFDUixDQUFDO0lBQ0RDLElBQUksRUFBRTtNQUNKQyxNQUFNLEVBQUUsV0FBVztNQUNuQixVQUFRO0lBQ1YsQ0FBQztJQUNEQyxXQUFXLEVBQUU7RUFDZixDQUFDO0VBQ0RDLFVBQVUsRUFBRTtJQUNWQyxJQUFJLEVBQUUsTUFBTTtJQUNaQyxXQUFXLEVBQUUsZ0JBQWdCO0lBQzdCQyxjQUFjLEVBQUUsd0JBQXdCO0lBQ3hDVCxPQUFPLEVBQUUsaUJBQWlCO0lBQzFCVSxVQUFVLEVBQUU7RUFDZCxDQUFDO0VBQ0RDLEVBQUUsRUFBRTtJQUNGOUcsS0FBSyxFQUFFLHNCQUFzQjtJQUM3QitHLEtBQUssRUFBRTtNQUNMQyxxQkFBcUIsRUFBRSw0Q0FBNEM7TUFDbkVDLGVBQWUsRUFBRSwyQ0FBMkM7TUFDNURDLGVBQWUsRUFBRTtJQUNuQjtFQUNGLENBQUM7RUFDREMsSUFBSSxFQUFFO0lBQ0pDLFVBQVUsRUFBRSxVQUFVO0lBQ3RCQyxvQkFBb0IsRUFBRSxvQkFBb0I7SUFDMUNDLG9CQUFvQixFQUFFLDRCQUE0QjtJQUNsREMsbUJBQW1CLEVBQUUsb0JBQW9CO0lBQ3pDQyxnQkFBZ0IsRUFBRSxzQkFBc0I7SUFDeENDLHVCQUF1QixFQUFFLGdCQUFnQjtJQUN6Q0MsMEJBQTBCLEVBQUUsMENBQTBDO0lBQ3RFQywwQkFBMEIsRUFBRSwwQ0FBMEM7SUFDdEVDLDBCQUEwQixFQUFFLGdEQUFnRDtJQUM1RUMsT0FBTyxFQUFFLDBCQUEwQjtJQUNuQ0MsZUFBZSxFQUFFLG1CQUFtQjtJQUNwQ0MsVUFBVSxFQUFFLFlBQVk7SUFDeEJDLFFBQVEsRUFBRTtNQUNSWixVQUFVLEVBQUU7UUFDVmEsU0FBUyxFQUFFLHlCQUF5QjtRQUNwQ0MsV0FBVyxFQUFFLHVCQUF1QjtRQUNwQ0MsV0FBVyxFQUFFO01BQ2YsQ0FBQztNQUNEQyxRQUFRLEVBQUU7UUFDUkMsU0FBUyxFQUFFLHdCQUF3QjtRQUNuQ0MsU0FBUyxFQUFFLHVCQUF1QjtRQUNsQ0MsUUFBUSxFQUFFO01BQ1osQ0FBQztNQUNEQyxNQUFNLEVBQUU7UUFDTkMsUUFBUSxFQUFFLG9CQUFvQjtRQUM5QkMsV0FBVyxFQUFFO01BQ2YsQ0FBQztNQUNEQyxVQUFVLEVBQUU7UUFDVkMsU0FBUyxFQUFFLG9CQUFvQjtRQUMvQkMsYUFBYSxFQUFFO01BQ2pCLENBQUM7TUFDREMsVUFBVSxFQUFFO1FBQ1ZDLE9BQU8sRUFBRSxvQkFBb0I7UUFDN0JDLFVBQVUsRUFBRSx5QkFBeUI7UUFDckNDLGFBQWEsRUFBRSxzQkFBc0I7UUFDckNDLGdCQUFnQixFQUFFO01BQ3BCLENBQUM7TUFDRHJCLE9BQU8sRUFBRTtRQUNQc0IsU0FBUyxFQUFFO01BQ2IsQ0FBQztNQUNEQyxxQkFBcUIsRUFDbkIseUZBQXlGO01BQzNGQyxZQUFZLEVBQUUsZUFBZTtNQUM3QkMsa0JBQWtCLEVBQUUsZ0JBQWdCO01BQ3BDQyxhQUFhLEVBQUUsZ0JBQWdCO01BQy9CQyxZQUFZLEVBQUUsaUJBQWlCO01BQy9CQyxXQUFXLEVBQUUsZ0JBQWdCO01BQzdCQyxpQkFBaUIsRUFBRSxpQkFBaUI7TUFDcENDLFlBQVksRUFBRSxrQkFBa0I7TUFDaENDLGtCQUFrQixFQUFFLG1CQUFtQjtNQUN2Q0MsYUFBYSxFQUFFLG1CQUFtQjtNQUNsQ0MsZUFBZSxFQUFFLHNCQUFzQjtNQUN2Q0MsY0FBYyxFQUFFLG9CQUFvQjtNQUNwQ0MsZ0JBQWdCLEVBQUUsNEJBQTRCO01BQzlDQyxzQkFBc0IsRUFBRSw4QkFBOEI7TUFDdERDLG1CQUFtQixFQUFFLHlCQUF5QjtNQUM5Q0MsWUFBWSxFQUFFLGdCQUFnQjtNQUM5QkMsaUJBQWlCLEVBQUUsbUJBQW1CO01BQ3RDQyxhQUFhLEVBQUUsa0JBQWtCO01BQ2pDQyxjQUFjLEVBQUUsbUJBQW1CO01BQ25DQyxxQkFBcUIsRUFBRSw2QkFBNkI7TUFDcERDLGFBQWEsRUFBRSxtQkFBbUI7TUFDbENDLHNCQUFzQixFQUFFLGtDQUFrQztNQUMxREMsa0JBQWtCLEVBQUUsOEJBQThCO01BQ2xEQyxxQkFBcUIsRUFBRSwrQkFBK0I7TUFDdERDLGdCQUFnQixFQUFFLDBCQUEwQjtNQUM1Q0MsYUFBYSxFQUFFLG1CQUFtQjtNQUNsQ0Msd0JBQXdCLEVBQUUsc0NBQXNDO01BQ2hFQyxjQUFjLEVBQUUsbUJBQW1CO01BQ25DQyxjQUFjLEVBQUUsd0JBQXdCO01BQ3hDQyxjQUFjLEVBQUUsbUJBQW1CO01BQ25DQyxjQUFjLEVBQUU7SUFDbEIsQ0FBQztJQUNEMUUsV0FBVyxFQUFFLHVCQUF1QjtJQUNwQzJFLE1BQU0sRUFBRTtNQUNOQyxXQUFXLEVBQUUsMEJBQTBCO01BQ3ZDQyx1QkFBdUIsRUFBRSxxREFBcUQ7TUFDOUVDLFVBQVUsRUFBRSxXQUFXO01BQ3ZCQyxVQUFVLEVBQUUsMkVBQTJFO01BQ3ZGQyxlQUFlLEVBQUUsK0VBQStFO01BQ2hHQyxjQUFjLEVBQUUsY0FBYztNQUM5QkMsZ0JBQWdCLEVBQUU7SUFDcEIsQ0FBQztJQUNEM0wsS0FBSyxFQUFFLDhFQUE4RTtJQUNyRjRMLEtBQUssRUFBRSxZQUFZO0lBQ25CQyxpQkFBaUIsRUFDZixpT0FBaU87SUFDbk9DLGtCQUFrQixFQUNoQixnSEFBZ0g7SUFDbEhDLGFBQWEsRUFBRSx3RkFBd0Y7SUFDdkdDLFNBQVMsRUFBRSxrQkFBa0I7SUFDN0JwRCxVQUFVLEVBQUUsc0RBQXNEO0lBQ2xFcUQsVUFBVSxFQUFFLGtCQUFrQjtJQUM5QkMsY0FBYyxFQUFFLG1CQUFtQjtJQUNuQ0MsYUFBYSxFQUFFLHlCQUF5QjtJQUN4Q0MseUJBQXlCLEVBQUUsb0JBQW9CO0lBQy9DQyxvQkFBb0IsRUFBRSxrQkFBa0I7SUFDeENDLGdCQUFnQixFQUFFLGlDQUFpQztJQUNuREMsZUFBZSxFQUFFLFdBQVc7SUFDNUJDLG9CQUFvQixFQUFFLGdCQUFnQjtJQUN0Q0Msb0JBQW9CLEVBQUUseUJBQXlCO0lBQy9DQyxJQUFJLEVBQUUsUUFBUTtJQUNkQyxVQUFVLEVBQUUsb0RBQW9EO0lBQ2hFQyxJQUFJLEVBQUUsbUJBQW1CO0lBQ3pCQyxTQUFTLEVBQUUsOEJBQThCO0lBQ3pDQyxxQkFBcUIsRUFDbkIsbUdBQW1HO0lBQ3JHQyxzQkFBc0IsRUFBRTtNQUN0QnhILE9BQU8sRUFBRSxhQUFhO01BQ3RCeUgsc0JBQXNCLEVBQ3BCLGdHQUFnRztNQUNsR0MsU0FBUyxFQUFFLE9BQU87TUFDbEJDLE9BQU8sRUFBRSxhQUFhO01BQ3RCQyxTQUFTLEVBQUUsU0FBUztNQUNwQkMsS0FBSyxFQUFFO1FBQ0xDLGtCQUFrQixFQUFFLE9BQU87UUFDM0JDLFNBQVMsRUFBRSxtREFBbUQ7UUFDOURDLGFBQWEsRUFBRSwyQkFBMkI7UUFDMUNDLGNBQWMsRUFBRTtNQUNsQixDQUFDO01BQ0RDLElBQUksRUFBRTtRQUNKSCxTQUFTLEVBQUUsb0RBQW9EO1FBQy9ESSxvQkFBb0IsRUFBRTtNQUN4QixDQUFDO01BQ0RDLEdBQUcsRUFBRTtRQUNITCxTQUFTLEVBQUUsb0RBQW9EO1FBQy9ETSxvQkFBb0IsRUFBRSw2RUFBNkU7UUFDbkdDLFVBQVUsRUFBRSx3QkFBd0I7UUFDcENDLFVBQVUsRUFBRTtNQUNkO0lBQ0Y7RUFDRixDQUFDO0VBQ0RDLG1CQUFtQixFQUFFO0lBQ25COU4sS0FBSyxFQUFFLHFDQUFxQztJQUM1QytOLFNBQVMsRUFBRSxvQkFBb0I7SUFDL0JDLFVBQVUsRUFBRSw4QkFBOEI7SUFDMUNsTyxNQUFNLEVBQUUsVUFBVTtJQUNsQixVQUFRO0VBQ1YsQ0FBQztFQUNEbU8sZ0JBQWdCLEVBQUU7SUFDaEJqTyxLQUFLLEVBQUUsOEJBQThCO0lBQ3JDK04sU0FBUyxFQUFFLG9CQUFvQjtJQUMvQkMsVUFBVSxFQUFFLDhCQUE4QjtJQUMxQ2xPLE1BQU0sRUFBRSxVQUFVO0lBQ2xCLFVBQVE7RUFDVixDQUFDO0VBQ0RvTyxpQkFBaUIsRUFBRTtJQUNqQkMsT0FBTyxFQUFFLGNBQWM7SUFDdkJuTyxLQUFLLEVBQUUsd0JBQXdCO0lBQy9CdUcsTUFBTSxFQUFFLFdBQVc7SUFDbkJ6RyxNQUFNLEVBQUUsVUFBVTtJQUNsQnNPLFNBQVMsRUFBRTtFQUNiLENBQUM7RUFDREMsZ0JBQWdCLEVBQUU7SUFDaEJDLGVBQWUsRUFBRSxxQ0FBcUM7SUFDdERDLGNBQWMsRUFBRSwyQ0FBMkM7SUFDM0RDLHFCQUFxQixFQUNuQixxR0FBcUc7SUFDdkdDLG9CQUFvQixFQUNsQix5R0FBeUc7SUFDM0dDLE1BQU0sRUFBRSxTQUFTO0lBQ2pCQyxLQUFLLEVBQUU7RUFDVCxDQUFDO0VBQ0RDLHVCQUF1QixFQUFFO0lBQ3ZCNU8sS0FBSyxFQUFFO0VBQ1QsQ0FBQztFQUNENk8sTUFBTSxFQUFFO0lBQ043TyxLQUFLLEVBQUUsU0FBUztJQUNoQjhPLFFBQVEsRUFBRSxjQUFjO0lBQ3hCQyxXQUFXLEVBQUUsY0FBYztJQUMzQkMsSUFBSSxFQUFFLFFBQVE7SUFDZHRJLElBQUksRUFBRSw0QkFBNEI7SUFDbEN1SSxXQUFXLEVBQUUscUJBQXFCO0lBQ2xDQyxjQUFjLEVBQUUscUJBQXFCO0lBQ3JDQywyQkFBMkIsRUFBRSw2QkFBNkI7SUFDMURDLDZCQUE2QixFQUFFLDhCQUE4QjtJQUM3REMsb0JBQW9CLEVBQUUscURBQXFEO0lBQzNFQywyQkFBMkIsRUFBRSxvREFBb0Q7SUFDakZDLGdCQUFnQixFQUFFO0VBQ3BCLENBQUM7RUFDREMsYUFBYSxFQUFFO0lBQ2J4UCxLQUFLLEVBQUUsb0JBQW9CO0lBQzNCeVAsa0JBQWtCLEVBQUUsU0FBUztJQUM3QkMsVUFBVSxFQUFFLG9CQUFvQjtJQUNoQ0MsV0FBVyxFQUFFLGFBQWE7SUFDMUJDLFdBQVcsRUFBRSxRQUFRO0lBQ3JCN1AsS0FBSyxFQUFFLDJEQUEyRDtJQUNsRStCLEtBQUssRUFBRSw0REFBNEQ7SUFDbkUrTixVQUFVLEVBQUUsc0JBQXNCO0lBQ2xDQyxXQUFXLEVBQUUsVUFBVTtJQUN2QkMsYUFBYSxFQUFFLFlBQVk7SUFDM0JDLGtCQUFrQixFQUFFLGVBQWU7SUFDbkN6USxRQUFRLEVBQUUsVUFBVTtJQUNwQkQsTUFBTSxFQUFFLFVBQVU7SUFDbEJ5RyxPQUFPLEVBQUUsWUFBWTtJQUNyQnFCLFVBQVUsRUFBRSxxQkFBcUI7SUFDakM2SSxlQUFlLEVBQUUsZ0NBQWdDO0lBQ2pEQyx1QkFBdUIsRUFBRSxrQ0FBa0M7SUFDM0RDLG9CQUFvQixFQUFFLHNDQUFzQztJQUM1RG5LLGdCQUFnQixFQUFFLGNBQWM7SUFDaENDLGVBQWUsRUFBRTtFQUNuQixDQUFDO0VBQ0RtSyxXQUFXLEVBQUU7SUFDWEMsSUFBSSxFQUFFLFFBQVE7SUFDZHJRLEtBQUssRUFBRSwwQkFBMEI7SUFDakNDLFdBQVcsRUFDVCx5R0FBeUc7SUFDM0dxUSxhQUFhLEVBQUUsYUFBYTtJQUM1QkMsa0JBQWtCLEVBQUUsa0RBQWtEO0lBQ3RFQyxtQkFBbUIsRUFBRSx1RkFBdUY7SUFDNUdDLHVCQUF1QixFQUFFLCtCQUErQjtJQUN4REMsNkJBQTZCLEVBQUUseUVBQXlFO0lBQ3hHQyxtQ0FBbUMsRUFDakMsNEZBQTRGO0lBQzlGQyx3QkFBd0IsRUFBRSxjQUFjO0lBQ3hDQyxxQkFBcUIsRUFBRSxrRUFBa0U7SUFDekZDLDJCQUEyQixFQUFFLHlFQUF5RTtJQUN0R0Msb0JBQW9CLEVBQUUsaUJBQWlCO0lBQ3ZDQyxhQUFhLEVBQUUsS0FBSztJQUNwQkMsaUJBQWlCLEVBQUUsWUFBWTtJQUMvQkMsZUFBZSxFQUFFLG9CQUFvQjtJQUNyQ0MsaUJBQWlCLEVBQUUsNkJBQTZCO0lBQ2hEQyxHQUFHLEVBQUUsTUFBTTtJQUNYckMsV0FBVyxFQUFFLDBCQUEwQjtJQUN2Q3NDLHNCQUFzQixFQUFFLGtCQUFrQjtJQUMxQ0MsZUFBZSxFQUFFLG1CQUFtQjtJQUNwQ0MsZUFBZSxFQUFFLCtCQUErQjtJQUNoREMsdUJBQXVCLEVBQUUsZ0ZBQWdGO0lBQ3pHQyxXQUFXLEVBQUUsdUJBQXVCO0lBQ3BDQyxVQUFVLEVBQUUsYUFBYTtJQUN6QkMsTUFBTSxFQUFFO01BQ05DLFFBQVEsRUFBRSxVQUFVO01BQ3BCQyxRQUFRLEVBQUUsVUFBVTtNQUNwQkMsU0FBUyxFQUFFO0lBQ2I7RUFDRixDQUFDO0VBQ0RDLFFBQVEsRUFBRTtJQUNSL1IsS0FBSyxFQUFFLDJDQUEyQztJQUNsRDhDLFFBQVEsRUFBRSxvRUFBb0U7SUFDOUVrUCxXQUFXLEVBQUUsWUFBWTtJQUN6QkMsZUFBZSxFQUFFLG9CQUFvQjtJQUNyQ0MsY0FBYyxFQUFFLFFBQVE7SUFDeEJDLGNBQWMsRUFBRSxtQkFBbUI7SUFDbkNDLGFBQWEsRUFBRSx1QkFBdUI7SUFDdENDLGFBQWEsRUFBRSxxQ0FBcUM7SUFDcERDLG1CQUFtQixFQUFFLDRCQUE0QjtJQUNqREMsdUJBQXVCLEVBQUUsMERBQTBEO0lBQ25GM00saUJBQWlCLEVBQUUsdUJBQXVCO0lBQzFDNE0sY0FBYyxFQUFFLG1CQUFtQjtJQUNuQ0MsZ0JBQWdCLEVBQUUsU0FBUztJQUMzQkMsa0JBQWtCLEVBQUUsb0JBQW9CO0lBQ3hDQyxxQkFBcUIsRUFBRSxxQ0FBcUM7SUFDNURDLDJCQUEyQixFQUFFLHNEQUFzRDtJQUNuRkMsV0FBVyxFQUFFLGFBQWE7SUFDMUJDLE9BQU8sRUFBRSxjQUFjO0lBQ3ZCQyxZQUFZLEVBQUUsa0NBQWtDO0lBQ2hEQyxRQUFRLEVBQUUsV0FBVztJQUNyQkMsV0FBVyxFQUFFLCtCQUErQjtJQUM1Q0MsY0FBYyxFQUFFLGdCQUFnQjtJQUNoQ0MsaUJBQWlCLEVBQUUsd0JBQXdCO0lBQzNDQyxXQUFXLEVBQUUsaUJBQWlCO0lBQzlCQyxtQkFBbUIsRUFBRSwyQ0FBMkM7SUFDaEVDLGdCQUFnQixFQUFFLHlCQUF5QjtJQUMzQ0MsaUJBQWlCLEVBQUUsbURBQW1EO0lBQ3RFQyxlQUFlLEVBQUUseUJBQXlCO0lBQzFDQyxhQUFhLEVBQUUsa0RBQWtEO0lBQ2pFdEMsaUJBQWlCLEVBQUUsOEJBQThCO0lBQ2pEbkMsSUFBSSxFQUFFLFFBQVE7SUFDZCxVQUFRLFVBQVU7SUFDbEJsUCxNQUFNLEVBQUUsVUFBVTtJQUNsQkQsSUFBSSxFQUFFLFNBQVM7SUFDZlgsS0FBSyxFQUFFLFFBQVE7SUFDZndVLFdBQVcsRUFBRSxtQkFBbUI7SUFDaENDLFNBQVMsRUFBRSxrQkFBa0I7SUFDN0JDLFNBQVMsRUFBRSxrQkFBa0I7SUFDN0JDLFFBQVEsRUFBRSxZQUFZO0lBQ3RCQyxXQUFXLEVBQ1QsNktBQTZLO0lBQy9LQyxlQUFlLEVBQUUscUJBQXFCO0lBQ3RDQyxTQUFTLEVBQUUsUUFBUTtJQUNuQkMsZUFBZSxFQUFFLG9CQUFvQjtJQUNyQ0MsZ0JBQWdCLEVBQUUsYUFBYTtJQUMvQkMsc0JBQXNCLEVBQUUsNkNBQTZDO0lBQ3JFQyxpQkFBaUIsRUFBRSxlQUFlO0lBQ2xDQyxnQkFBZ0IsRUFBRSxpQ0FBaUM7SUFDbkR6USxTQUFTLEVBQUUsWUFBWTtJQUN2QjBRLFdBQVcsRUFBRSxzQkFBc0I7SUFDbkNDLFVBQVUsRUFBRSxzQkFBc0I7SUFDbENDLFlBQVksRUFBRSxPQUFPO0lBQ3JCQyxrQkFBa0IsRUFBRSxxQkFBcUI7SUFDekNDLGVBQWUsRUFBRSw4QkFBOEI7SUFDL0NDLHFCQUFxQixFQUFFLHdFQUF3RTtJQUMvRkMsMkJBQTJCLEVBQ3pCLDRGQUE0RjtJQUM5RkMsZ0JBQWdCLEVBQUUsYUFBYTtJQUMvQkMscUJBQXFCLEVBQUUsOEJBQThCO0lBQ3JEQywyQkFBMkIsRUFBRSwrQ0FBK0M7SUFDNUVDLGFBQWEsRUFBRSx3QkFBd0I7SUFDdkNDLFdBQVcsRUFBRSxnREFBZ0Q7SUFDN0RDLGFBQWEsRUFBRSw2QkFBNkI7SUFDNUNDLFdBQVcsRUFBRSxxREFBcUQ7SUFDbEVDLGFBQWEsRUFBRSwyQkFBMkI7SUFDMUNDLFdBQVcsRUFBRTtFQUNmLENBQUM7RUFDREMsUUFBUSxFQUFFO0lBQ1JDLFVBQVUsRUFBRTtNQUNWQyxPQUFPLEVBQUUsMENBQTBDO01BQ25EelYsS0FBSyxFQUFFO0lBQ1QsQ0FBQztJQUNEMFYsV0FBVyxFQUFFO01BQ1hELE9BQU8sRUFBRSxtQ0FBbUM7TUFDNUN6VixLQUFLLEVBQUU7SUFDVCxDQUFDO0lBQ0QyVixjQUFjLEVBQUU7TUFDZDNWLEtBQUssRUFBRTtJQUNUO0VBQ0YsQ0FBQztFQUNENFYsV0FBVyxFQUFFO0lBQ1hDLGFBQWEsRUFBRSxtQkFBbUI7SUFDbENDLE9BQU8sRUFBRTtNQUNQQyxXQUFXLEVBQUUsbUJBQW1CO01BQ2hDQyxrQkFBa0IsRUFBRSxvQkFBb0I7TUFDeENDLFlBQVksRUFBRSxvQkFBb0I7TUFDbENDLFVBQVUsRUFBRSxtQkFBbUI7TUFDL0JDLFlBQVksRUFBRSxxQkFBcUI7TUFDbkNDLFNBQVMsRUFBRSxrQkFBa0I7TUFDN0JDLGdCQUFnQixFQUFFLG1CQUFtQjtNQUNyQ0MsV0FBVyxFQUFFLHNCQUFzQjtNQUNuQ0Msa0JBQWtCLEVBQUUsdUJBQXVCO01BQzNDQyxXQUFXLEVBQUUsdUJBQXVCO01BQ3BDQyxhQUFhLEVBQUUsMEJBQTBCO01BQ3pDQyxpQkFBaUIsRUFBRSx3QkFBd0I7TUFDM0NDLGFBQWEsRUFBRSxzQkFBc0I7TUFDckNDLGdCQUFnQixFQUFFLGdDQUFnQztNQUNsREMsc0JBQXNCLEVBQUUsa0NBQWtDO01BQzFEQyxrQkFBa0IsRUFBRSw2QkFBNkI7TUFDakRDLFdBQVcsRUFBRSxnQkFBZ0I7TUFDN0JDLGdCQUFnQixFQUFFLHVCQUF1QjtNQUN6Q0MscUJBQXFCLEVBQUUsZ0NBQWdDO01BQ3ZEQyxVQUFVLEVBQUUsY0FBYztNQUMxQkMsbUJBQW1CLEVBQUUsNkJBQTZCO01BQ2xEQyxzQkFBc0IsRUFBRSxnQ0FBZ0M7TUFDeERDLGlCQUFpQixFQUFFLDhCQUE4QjtNQUNqREMscUJBQXFCLEVBQUUsbUNBQW1DO01BQzFEQyxnQkFBZ0IsRUFBRSw4QkFBOEI7TUFDaERDLGlCQUFpQixFQUFFLHlCQUF5QjtNQUM1Q0MsaUJBQWlCLEVBQUUsMkNBQTJDO01BQzlEQyxhQUFhLEVBQUUsdUJBQXVCO01BQ3RDQyxhQUFhLEVBQUUsNEJBQTRCO01BQzNDQyxZQUFZLEVBQUUsdUJBQXVCO01BQ3JDMUssT0FBTyxFQUFFO0lBQ1gsQ0FBQztJQUNEMkssT0FBTyxFQUFFO01BQ1BDLFlBQVksRUFBRTtRQUNaN1gsS0FBSyxFQUFFLGlCQUFpQjtRQUN4QkMsV0FBVyxFQUFFO01BQ2YsQ0FBQztNQUNENlgseUJBQXlCLEVBQUU7UUFDekI5WCxLQUFLLEVBQUUsa0NBQWtDO1FBQ3pDQyxXQUFXLEVBQUU7TUFDZjtJQUNGLENBQUM7SUFDRDhYLE1BQU0sRUFBRTtNQUNOQyxJQUFJLEVBQUUsUUFBUTtNQUNkQyxLQUFLLEVBQUUsT0FBTztNQUNkQyxZQUFZLEVBQUUsY0FBYztNQUM1QkMsaUJBQWlCLEVBQUUsYUFBYTtNQUNoQ0MsV0FBVyxFQUFFLGtCQUFrQjtNQUMvQkMsUUFBUSxFQUFFLFFBQVE7TUFDbEJDLFFBQVEsRUFBRSxVQUFVO01BQ3BCQyxVQUFVLEVBQUUsUUFBUTtNQUNwQkMsT0FBTyxFQUFFO0lBQ1gsQ0FBQztJQUNEeFksS0FBSyxFQUFFLHdCQUF3QjtJQUMvQkMsV0FBVyxFQUFFLDhEQUE4RDtJQUMzRXdZLE9BQU8sRUFBRSxTQUFTO0lBQ2xCQyxJQUFJLEVBQUUsU0FBUztJQUNmQyxxQkFBcUIsRUFBRSxpRUFBaUU7SUFDeEZDLE1BQU0sRUFBRTtNQUNOQyxRQUFRLEVBQUUsb0JBQW9CO01BQzlCQyxNQUFNLEVBQUU7SUFDVjtFQUNGLENBQUM7RUFDREMsT0FBTyxFQUFFO0lBQ1A1UyxPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0Q2UyxjQUFjLEVBQUU7SUFDZHRXLE9BQU8sRUFBRSxVQUFVO0lBQ25CVixRQUFRLEVBQUU7RUFDWjtBQUFDLEtBRUZqRCxRQUFRLENBQUNrYSxRQUFRLEVBQUF0VSxhQUFBLENBQUFBLGFBQUEsS0FDYnhFLGNBQWM7RUFDakIrWSxrQkFBa0IsRUFBRSxzQ0FBc0M7RUFDMURDLG9CQUFvQixFQUFFLHFGQUFxRjtFQUMzR0MsY0FBYyxFQUFFLDZEQUE2RDtFQUM3RUMsbUJBQW1CLEVBQUUsNkVBQTZFO0VBQ2xHQywwQkFBMEIsRUFDeEIsb0dBQW9HO0VBQ3RHQyxpQkFBaUIsRUFBRSw0QkFBNEI7RUFDL0NDLHFCQUFxQixFQUNuQiwrR0FBK0c7RUFDakhDLG9CQUFvQixFQUNsQixnSUFBZ0k7RUFDbElDLFdBQVcsRUFBRSxnQkFBZ0I7RUFDN0I3SyxNQUFNLEVBQUUsU0FBUztFQUNqQjhLLGlCQUFpQixFQUFFLHNCQUFzQjtFQUN6Q0MsYUFBYSxFQUFFLGNBQWM7RUFDN0JDLGdCQUFnQixFQUFFLGVBQWU7RUFDakNDLGNBQWMsRUFBRSxlQUFlO0VBQy9CekosSUFBSSxFQUFFLFFBQVE7RUFDZDBKLFFBQVEsRUFBRSxzQkFBc0I7RUFDaENqTCxRQUFRLEVBQUUsY0FBYztFQUN4QmtMLFNBQVMsRUFBRSxlQUFlO0VBQzFCakwsV0FBVyxFQUFFLGNBQWM7RUFDM0JqUCxNQUFNLEVBQUUsVUFBVTtFQUNsQjRPLE1BQU0sRUFBRSxTQUFTO0VBQ2pCdUwsV0FBVyxFQUFFLGlCQUFpQjtFQUM5QixZQUFVLFdBQVc7RUFDckJqTCxJQUFJLEVBQUUsUUFBUTtFQUNkLFVBQVEsVUFBVTtFQUNsQnhPLFFBQVEsRUFBRSxpQkFBaUI7RUFDM0IwWixZQUFZLEVBQUUsaUJBQWlCO0VBQy9CQyxXQUFXLEVBQUUsaUJBQWlCO0VBQzlCQyxzQkFBc0IsRUFBRSxjQUFjO0VBQ3RDcFUsZ0JBQWdCLEVBQUUsY0FBYztFQUNoQ0MsZUFBZSxFQUFFLHdCQUF3QjtFQUN6Q29VLGlDQUFpQyxFQUFFLGdGQUFnRjtFQUNuSEMsbUJBQW1CLEVBQUUsa0NBQWtDO0VBQ3ZEQyxtQkFBbUIsRUFBRSxxQ0FBcUM7RUFDMURDLDBCQUEwQixFQUFFLCtFQUErRTtFQUMzR0MsbUJBQW1CLEVBQUUsdUNBQXVDO0VBQzVEQyx1QkFBdUIsRUFBRSwwRUFBMEU7RUFDbkdDLHFCQUFxQixFQUFFLDBFQUEwRTtFQUNqR0Msb0JBQW9CLEVBQUUsc0ZBQXNGO0VBQzVHaFAsaUJBQWlCLEVBQUUsc0VBQXNFO0VBQ3pGaVAsaUJBQWlCLEVBQUUsNkRBQTZEO0VBQ2hGQyxjQUFjLEVBQUU7SUFDZEMsUUFBUSxFQUFFLFdBQVc7SUFDckIsVUFBUTtFQUNWLENBQUM7RUFDREMsY0FBYyxFQUFFO0lBQ2RoYixLQUFLLEVBQUUsU0FBUztJQUNoQmliLGVBQWUsRUFBRSx1QkFBdUI7SUFDeENDLG1CQUFtQixFQUFFLGVBQWU7SUFDcENDLFNBQVMsRUFBRSw2RUFBNkU7SUFDeEZDLGFBQWEsRUFBRSxVQUFVO0lBQ3pCQyxhQUFhLEVBQUUsc0JBQXNCO0lBQ3JDQyxXQUFXLEVBQUUsbUJBQW1CO0lBQ2hDdEQsSUFBSSxFQUFFLGtDQUFrQztJQUN4Qy9ELGVBQWUsRUFBRSxnQ0FBZ0M7SUFDakRzSCxnQkFBZ0IsRUFBRSxpQ0FBaUM7SUFDbkRDLGFBQWEsRUFBRSxnQ0FBZ0M7SUFDL0NDLHdCQUF3QixFQUN0QiwrS0FBK0s7SUFDakxDLFlBQVksRUFBRSxjQUFjO0lBQzVCQyxpQkFBaUIsRUFBRSw0QkFBNEI7SUFDL0NDLHFCQUFxQixFQUFFLDZEQUE2RDtJQUNwRkMsZ0JBQWdCLEVBQUUsOEJBQThCO0lBQ2hEM0QsWUFBWSxFQUFFLG9DQUFvQztJQUNsRDRELHVCQUF1QixFQUNyQixtU0FBbVM7SUFDclMvYixLQUFLLEVBQUU7TUFDTGdjLGVBQWUsRUFBRSw0Q0FBNEM7TUFDN0RDLHdCQUF3QixFQUFFLDZDQUE2QztNQUN2RUMsbUJBQW1CLEVBQUUsNENBQTRDO01BQ2pFQyx1QkFBdUIsRUFBRTtJQUMzQixDQUFDO0lBQ0RDLGdCQUFnQixFQUFFLHlCQUF5QjtJQUMzQ0Msa0JBQWtCLEVBQUUsK0JBQStCO0lBQ25EQyxhQUFhLEVBQUUsMEJBQTBCO0lBQ3pDcE4sV0FBVyxFQUFFLHFCQUFxQjtJQUNsQ0MsY0FBYyxFQUFFLHFCQUFxQjtJQUNyQ3RMLFNBQVMsRUFBRSxLQUFLO0lBQ2hCQyxnQkFBZ0IsRUFBRSw0QkFBNEI7SUFDOUNDLHVCQUF1QixFQUFFO0VBQzNCLENBQUM7RUFDRHdZLGdCQUFnQixFQUFFO0lBQ2hCdGMsS0FBSyxFQUFFLGNBQWM7SUFDckJ1YyxZQUFZLEVBQUUsdUJBQXVCO0lBQ3JDcEIsU0FBUyxFQUFFLHlFQUF5RTtJQUNwRnFCLGVBQWUsRUFBRSxzQkFBc0I7SUFDdkNDLFdBQVcsRUFBRSxtQkFBbUI7SUFDaENDLFlBQVksRUFBRTtNQUNaLENBQUMsRUFBRSx1QkFBdUI7TUFDMUIsQ0FBQyxFQUFFO0lBQ0wsQ0FBQztJQUNEQyxhQUFhLEVBQ1gsc0dBQXNHO0lBQ3hHNWMsS0FBSyxFQUFFO01BQ0xDLEtBQUssRUFBRSx3Q0FBd0M7TUFDL0M0YyxhQUFhLEVBQUUsd0NBQXdDO01BQ3ZEQyxtQkFBbUIsRUFDakIsd0dBQXdHO01BQzFHQyxZQUFZLEVBQUUsdUNBQXVDO01BQ3JEQyxrQkFBa0IsRUFBRTtRQUNsQixDQUFDLEVBQUUsc0NBQXNDO1FBQ3pDLENBQUMsRUFBRTtNQUNMLENBQUM7TUFDREMsMkJBQTJCLEVBQUU7UUFDM0IsQ0FBQyxFQUFFLDBJQUEwSTtRQUM3SSxDQUFDLEVBQUU7TUFDTDtJQUNGLENBQUM7SUFDREMsUUFBUSxFQUFFO0VBQ1osQ0FBQztFQUNEQyxvQkFBb0IsRUFBRTtJQUNwQkMsUUFBUSxFQUFFLFVBQVU7SUFDcEJDLFlBQVksRUFBRSxtQ0FBbUM7SUFDakRDLGVBQWUsRUFBRSx3RUFBd0U7SUFDekZDLG1CQUFtQixFQUFFLG1DQUFtQztJQUN4REMsc0JBQXNCLEVBQUUsa0NBQWtDO0lBQzFEQyxlQUFlLEVBQUUsaUJBQWlCO0lBQ2xDQyxxQkFBcUIsRUFBRSwwRkFBMEY7SUFDakhDLGVBQWUsRUFBRSx3QkFBd0I7SUFDekNDLFlBQVksRUFBRSxnQ0FBZ0M7SUFDOUNDLGVBQWUsRUFBRSxrQkFBa0I7SUFDbkNDLHFCQUFxQixFQUFFLHNFQUFzRTtJQUM3RkMsV0FBVyxFQUFFLDJCQUEyQjtJQUN4Q0MsaUJBQWlCLEVBQ2YseUdBQXlHO0lBQzNHQyxRQUFRLEVBQUUsU0FBUztJQUNuQkMsY0FBYyxFQUFFLHNFQUFzRTtJQUN0RkMsZUFBZSxFQUFFLHlCQUF5QjtJQUMxQ0MsV0FBVyxFQUFFLDhGQUE4RjtJQUMzR0MsV0FBVyxFQUFFLCtFQUErRTtJQUM1RkMsYUFBYSxFQUFFLDREQUE0RDtJQUMzRXpZLGlCQUFpQixFQUFFLGdCQUFnQjtJQUNuQzBZLGNBQWMsRUFBRSxtRUFBbUU7SUFDbkZDLG9CQUFvQixFQUFFLG1FQUFtRTtJQUN6RkMsYUFBYSxFQUFFLG1CQUFtQjtJQUNsQ0MsWUFBWSxFQUFFO0VBQ2hCLENBQUM7RUFDREMsbUJBQW1CLEVBQUU7SUFDbkJDLGlCQUFpQixFQUNmLGlLQUFpSztJQUNuS0MsaUJBQWlCLEVBQ2Ysc0tBQXNLO0lBQ3hLQyxPQUFPLEVBQUUsU0FBUztJQUNsQkMsU0FBUyxFQUFFLFFBQVE7SUFDbkJDLE9BQU8sRUFBRSxXQUFXO0lBQ3BCaFgsVUFBVSxFQUFFLFlBQVk7SUFDeEJpWCxNQUFNLEVBQUUsT0FBTztJQUNmQyxJQUFJLEVBQUUsWUFBWTtJQUNsQkMsWUFBWSxFQUFFLHNCQUFzQjtJQUNwQ25mLEtBQUssRUFBRSxDQUFDO0VBQ1YsQ0FBQztFQUNEb2YsZ0JBQWdCLEVBQUU7SUFDaEJuZixLQUFLLEVBQUUsK0JBQStCO0lBQ3RDK04sU0FBUyxFQUFFLHFCQUFxQjtJQUNoQ0MsVUFBVSxFQUFFLG1DQUFtQztJQUMvQ2xPLE1BQU0sRUFBRSxVQUFVO0lBQ2xCLFVBQVE7RUFDVjtBQUFDLEtBRUZmLFFBQVEsQ0FBQ3FnQixlQUFlLEVBQUF6YSxhQUFBLENBQUFBLGFBQUEsS0FDcEJ4RSxjQUFjO0VBQ2pCaWYsZUFBZSxFQUFFO0lBQ2ZwZixLQUFLLEVBQUUsb0NBQW9DO0lBQzNDTSxLQUFLLEVBQUU7TUFDTE4sS0FBSyxFQUFFLGtCQUFrQjtNQUN6QjhDLFFBQVEsRUFBRTtJQUNaLENBQUM7SUFDREEsUUFBUSxFQUFFLHlFQUF5RTtJQUNuRnVjLFlBQVksRUFBRSx3QkFBd0I7SUFDdENqVSxXQUFXLEVBQUUsK0JBQStCO0lBQzVDVSxhQUFhLEVBQUUscUJBQXFCO0lBQ3BDd1QsY0FBYyxFQUFFLFdBQVc7SUFDM0JDLGlCQUFpQixFQUFFLDJCQUEyQjtJQUM5Q0MsWUFBWSxFQUFFLGlHQUFpRztJQUMvR0MsbUJBQW1CLEVBQ2pCLGtHQUFrRztJQUNwR0MsVUFBVSxFQUFFLGdGQUFnRjtJQUM1RkMsYUFBYSxFQUFFLGFBQWE7SUFDNUJDLFlBQVksRUFBRTtFQUNoQjtBQUFDLEtBRUY3Z0IsUUFBUSxDQUFDaWEsY0FBYyxFQUFBclUsYUFBQSxDQUFBQSxhQUFBLEtBQ25CeEUsY0FBYztFQUNqQjZZLGNBQWMsRUFBRTtJQUNkaFosS0FBSyxFQUFFLG1DQUFtQztJQUMxQ00sS0FBSyxFQUFFO01BQ0xOLEtBQUssRUFBRSxrQkFBa0I7TUFDekI4QyxRQUFRLEVBQUU7SUFDWixDQUFDO0lBQ0RBLFFBQVEsRUFBRSx3RUFBd0U7SUFDbEYrYyxXQUFXLEVBQUUsdUJBQXVCO0lBQ3BDelUsV0FBVyxFQUFFLDhCQUE4QjtJQUMzQzBVLFlBQVksRUFBRSxvQkFBb0I7SUFDbENDLGFBQWEsRUFBRSxXQUFXO0lBQzFCQyxnQkFBZ0IsRUFBRSwwQkFBMEI7SUFDNUNSLFlBQVksRUFBRSwwRkFBMEY7SUFDeEdTLGtCQUFrQixFQUNoQixnR0FBZ0c7SUFDbEdQLFVBQVUsRUFBRSw4RUFBOEU7SUFDMUZoZCxPQUFPLEVBQUUsVUFBVTtJQUNuQlYsUUFBUSxFQUFFO0VBQ1o7QUFBQyIsImlnbm9yZUxpc3QiOltdfQ==