@projectcor/maia-components 2.11.66-8 → 2.11.67-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 (99) hide show
  1. package/lib/components/atoms/Chip/Chip.js +15 -50
  2. package/lib/components/atoms/Chip/styles.js +5 -9
  3. package/lib/components/atoms/ContextMentionChip/ContextMentionChip.styles.js +9 -5
  4. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.js +4 -2
  5. package/lib/components/atoms/ContextMentionItem/ContextMentionItem.js +35 -8
  6. package/lib/components/atoms/ContextMentionItem/ContextMentionItem.styles.js +37 -28
  7. package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.js +30 -42
  8. package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.styles.js +13 -21
  9. package/lib/components/atoms/MAIAInput/MAIAInput.js +29 -24
  10. package/lib/components/atoms/icons/MAIAIsologo.js +5 -2
  11. package/lib/components/atoms/icons/SkillIcon.js +30 -0
  12. package/lib/components/atoms/icons/SkillsNavIcon.js +27 -0
  13. package/lib/components/atoms/icons/TaskLinkIcon.js +27 -0
  14. package/lib/components/atoms/icons/index.js +3 -1
  15. package/lib/components/molecules/ChatAIContent/ChatAIContent.js +19 -2
  16. package/lib/components/molecules/ChatAIHome/ChatAIHome.js +48 -298
  17. package/lib/components/molecules/ChatAIHome/styles.js +26 -63
  18. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +150 -57
  19. package/lib/components/molecules/ChatAIMessages/newStyles.js +12 -21
  20. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +80 -223
  21. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +4 -27
  22. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +46 -19
  23. package/lib/components/molecules/ChatAIModal/constants.js +6 -2
  24. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.js +123 -28
  25. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.styles.js +66 -41
  26. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.js +357 -0
  27. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.styles.js +145 -0
  28. package/lib/components/molecules/ChatAIMySkills/index.js +2 -0
  29. package/lib/components/molecules/ChatFooter/ChatFooter.js +24 -78
  30. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.js +7 -22
  31. package/lib/components/molecules/ChatFooter/styles.js +2 -11
  32. package/lib/components/molecules/ContextMentionInput/ContextMentionInput.js +3 -1
  33. package/lib/components/molecules/Sidebar/Sidebar.js +66 -21
  34. package/lib/components/molecules/Sidebar/Sidebar.layout.styles.js +40 -26
  35. package/lib/components/molecules/Sidebar/Sidebar.styles.js +10 -7
  36. package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.js +160 -0
  37. package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.styles.js +34 -0
  38. package/lib/components/organisms/AbmSkillGenerateModal/index.js +2 -0
  39. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.js +446 -0
  40. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.styles.js +98 -0
  41. package/lib/components/organisms/AbmSkillModal/index.js +2 -0
  42. package/lib/components/organisms/DeleteQuestionModal/DeleteQuestionModal.js +8 -1
  43. package/lib/components/organisms/EditQuestionModal/EditQuestionModal.js +2 -2
  44. package/lib/constants/config.js +4 -1
  45. package/lib/constants/maiaTaskPanelAccess.js +5 -7
  46. package/lib/constants/permissions/index.js +2 -2
  47. package/lib/constants/permissions/utils.js +4 -1
  48. package/lib/constants/taskLinkIcon.js +15 -6
  49. package/lib/constants/taskUrls.js +1 -3
  50. package/lib/context/global-context.js +1 -8
  51. package/lib/hooks/index.js +1 -2
  52. package/lib/hooks/useChatManager/useChatManager.js +125 -149
  53. package/lib/hooks/useChatMessages/useChatMessages.js +5 -34
  54. package/lib/hooks/useContextMentions.js +60 -15
  55. package/lib/hooks/useEntitySearch.js +337 -96
  56. package/lib/hooks/useEvent.js +4 -3
  57. package/lib/hooks/useFrequentlyAskedQuestions.js +10 -12
  58. package/lib/hooks/useFrequentlyUsedActions.js +3 -5
  59. package/lib/hooks/useMentionAllowedTypes.js +41 -16
  60. package/lib/hooks/useMentionPopover.js +54 -49
  61. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.interface.js +1 -1
  62. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +18 -27
  63. package/lib/hooks/useProjectSearch.js +28 -4
  64. package/lib/hooks/useProjectSummaryConfig.js +4 -74
  65. package/lib/hooks/useRecentClientsSearch.js +34 -4
  66. package/lib/hooks/useSmoothStreamText/useSmoothStreamText.js +16 -24
  67. package/lib/lang/br/index.js +60 -32
  68. package/lib/lang/en/index.js +60 -32
  69. package/lib/lang/es/index.js +60 -32
  70. package/lib/lang/fr/index.js +60 -32
  71. package/lib/services/maia/Actions/getFrequentlyUsedActions.js +3 -6
  72. package/lib/services/maia/Agents/getAgents.js +223 -199
  73. package/lib/services/maia/Chats/getChatMessages.js +6 -34
  74. package/lib/services/maia/Chats/getChatsByUserId.js +2 -10
  75. package/lib/services/maia/Faqs/getFrequentlyAskedQuestions.js +4 -6
  76. package/lib/services/maia/Orchestrator/orchestrator.js +5 -21
  77. package/lib/services/maia/Skills/createSkill.js +39 -0
  78. package/lib/services/maia/Skills/deleteSkill.js +38 -0
  79. package/lib/services/maia/Skills/generateSkill.js +41 -0
  80. package/lib/services/maia/Skills/getSkills.js +90 -0
  81. package/lib/services/maia/Skills/updateSkill.js +39 -0
  82. package/lib/services/maia/index.js +2 -4
  83. package/lib/services/utils/validateIsMaia.js +2 -2
  84. package/lib/types/agent.js +1 -1
  85. package/lib/types/contextMention.js +1 -1
  86. package/lib/types/skill.js +2 -0
  87. package/lib/utils/agentDisplayName.js +19 -11
  88. package/lib/utils/contextMentionIcons.js +35 -16
  89. package/lib/utils/contextMentionTriggers.js +53 -0
  90. package/lib/utils/corConnectorMentionTypes.js +37 -0
  91. package/lib/utils/hitlAnalytics.js +6 -5
  92. package/lib/utils/normalizeAgentConnectors.js +32 -0
  93. package/lib/utils/renderContextMentions.js +9 -6
  94. package/package.json +1 -1
  95. package/lib/hooks/useContextPinPopover.js +0 -235
  96. package/lib/hooks/useRecentContexts.js +0 -86
  97. package/lib/services/maia/RecentContexts/getRecentContexts.js +0 -54
  98. package/lib/services/maia/RecentContexts/index.js +0 -6
  99. package/lib/utils/entityLinkRender.js +0 -132
@@ -2,24 +2,28 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
2
  import { forwardRef, useCallback, useEffect, useMemo, useRef, useState } from 'react';
3
3
  import { InformationCircle } from '@projectcor/icons/lib/components/InformationCircle';
4
4
  import { Tooltip } from '@projectcor/tooltipv2/lib/components/Tooltip';
5
+ import { SKILLS_SEARCH_MIN_QUERY_LENGTH } from '../../../constants/config';
5
6
  import { useT } from '../../../hooks/useT';
7
+ import { getMentionTabPrefix } from '../../../utils/contextMentionTriggers';
6
8
  import { ContextMentionItem } from '../ContextMentionItem';
7
9
  import { Loader } from '../Loader';
8
- import { SCMPContainer, SCMPDivider, SCMPDividerWrapper, SCMPRecentsLabel, SCMPRecentsRow, SCMPRecentsTitle, SCMPList, SCMPStateWrapper, SCMPKeyboardHint, SCMPTab, SCMPTabsGroup, SCMPTabsRow, SCMPLoadMoreRow, SCMPSearchRow, SCMPSearchInput } from './ContextMentionPopover.styles';
10
+ import { SCMPContainer, SCMPDivider, SCMPDividerWrapper, SCMPRecentsLabel, SCMPRecentsRow, SCMPRecentsTitle, SCMPList, SCMPStateWrapper, SCMPKeyboardHint, SCMPTab, SCMPTabsGroup, SCMPTabsRow, SCMPLoadMoreRow } from './ContextMentionPopover.styles';
9
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
12
  var TAB_I18N_KEYS = {
11
13
  client: 'contextMention.tabs.client',
12
14
  project: 'contextMention.tabs.project',
13
15
  task: 'contextMention.tabs.task',
14
16
  user: 'contextMention.tabs.user',
15
- mcp: 'contextMention.tabs.mcp'
17
+ mcp: 'contextMention.tabs.mcp',
18
+ skill: 'contextMention.tabs.skill'
16
19
  };
17
20
  var TAB_FALLBACKS = {
18
21
  client: 'Cliente',
19
22
  project: 'Proyecto',
20
23
  task: 'Tarea',
21
24
  user: 'Usuario',
22
- mcp: 'Conectores'
25
+ mcp: 'Conectores',
26
+ skill: 'Habilidades'
23
27
  };
24
28
  export var ContextMentionPopover = /*#__PURE__*/forwardRef(function (_ref, ref) {
25
29
  var allowedTypes = _ref.allowedTypes,
@@ -29,6 +33,8 @@ export var ContextMentionPopover = /*#__PURE__*/forwardRef(function (_ref, ref)
29
33
  loading = _ref.loading,
30
34
  error = _ref.error,
31
35
  hideRecentsLabel = _ref.hideRecentsLabel,
36
+ _ref$skillsCatalogEmp = _ref.skillsCatalogEmpty,
37
+ skillsCatalogEmpty = _ref$skillsCatalogEmp === void 0 ? false : _ref$skillsCatalogEmp,
32
38
  hasMore = _ref.hasMore,
33
39
  isLoadingMore = _ref.isLoadingMore,
34
40
  onReachListEnd = _ref.onReachListEnd,
@@ -39,12 +45,7 @@ export var ContextMentionPopover = /*#__PURE__*/forwardRef(function (_ref, ref)
39
45
  isKeyboardNavActive = _ref.isKeyboardNavActive,
40
46
  onMouseMoveInList = _ref.onMouseMoveInList,
41
47
  style = _ref.style,
42
- keyboardHint = _ref.keyboardHint,
43
- showSearchInput = _ref.showSearchInput,
44
- searchPlaceholder = _ref.searchPlaceholder,
45
- onSearchChange = _ref.onSearchChange,
46
- onRequestClose = _ref.onRequestClose,
47
- hideTabPrefix = _ref.hideTabPrefix;
48
+ keyboardHint = _ref.keyboardHint;
48
49
  var _useT = useT(),
49
50
  t = _useT.t;
50
51
  var _useState = useState(0),
@@ -77,23 +78,15 @@ export var ContextMentionPopover = /*#__PURE__*/forwardRef(function (_ref, ref)
77
78
  block: 'nearest'
78
79
  });
79
80
  }, [activeIndex, items.length]);
80
- var handleSearchKeyDown = useCallback(function (e) {
81
- if (e.key === 'ArrowDown') {
82
- e.preventDefault();
83
- updateActiveIndex(items.length > 0 ? Math.min(activeIndex + 1, items.length - 1) : 0);
84
- } else if (e.key === 'ArrowUp') {
85
- e.preventDefault();
86
- updateActiveIndex(Math.max(activeIndex - 1, 0));
87
- } else if (e.key === 'Enter') {
88
- e.preventDefault();
89
- var item = items[activeIndex];
90
- if (item) onItemSelected(item);
91
- } else if (e.key === 'Escape') {
92
- e.preventDefault();
93
- onRequestClose === null || onRequestClose === void 0 || onRequestClose();
94
- }
95
- }, [items, activeIndex, updateActiveIndex, onItemSelected, onRequestClose]);
96
81
  var emptyMessage = useMemo(function () {
82
+ if (activeType === 'skill') {
83
+ if (searchValue.trim()) {
84
+ return t('contextMention.empty.skillWithQuery', {
85
+ query: searchValue
86
+ });
87
+ }
88
+ return t('contextMention.empty.skillNoItems');
89
+ }
97
90
  if (searchValue.trim()) {
98
91
  return t('contextMention.empty.withQuery', {
99
92
  query: searchValue,
@@ -103,7 +96,8 @@ export var ContextMentionPopover = /*#__PURE__*/forwardRef(function (_ref, ref)
103
96
  return t('contextMention.empty.recents', {
104
97
  defaultValue: 'Empezá a escribir para buscar'
105
98
  });
106
- }, [searchValue, t]);
99
+ }, [activeType, searchValue, t]);
100
+ var skillQueryTooShort = activeType === 'skill' && !skillsCatalogEmpty && searchValue.trim().length > 0 && searchValue.trim().length < SKILLS_SEARCH_MIN_QUERY_LENGTH;
107
101
  var renderBody = function renderBody() {
108
102
  if (loading) {
109
103
  return /*#__PURE__*/_jsx(SCMPStateWrapper, {
@@ -119,6 +113,11 @@ export var ContextMentionPopover = /*#__PURE__*/forwardRef(function (_ref, ref)
119
113
  })
120
114
  });
121
115
  }
116
+ if (skillQueryTooShort) {
117
+ return /*#__PURE__*/_jsx(SCMPStateWrapper, {
118
+ children: t('contextMention.skillQueryTooShort')
119
+ });
120
+ }
122
121
  if (items.length === 0) {
123
122
  return /*#__PURE__*/_jsx(SCMPStateWrapper, {
124
123
  children: emptyMessage
@@ -175,27 +174,16 @@ export var ContextMentionPopover = /*#__PURE__*/forwardRef(function (_ref, ref)
175
174
  onMouseDown: function onMouseDown(e) {
176
175
  return e.stopPropagation();
177
176
  },
178
- children: [showSearchInput ? /*#__PURE__*/_jsx(SCMPSearchRow, {
179
- children: /*#__PURE__*/_jsx(SCMPSearchInput, {
180
- autoFocus: true,
181
- type: "text",
182
- value: searchValue,
183
- placeholder: searchPlaceholder,
184
- onChange: function onChange(e) {
185
- return onSearchChange === null || onSearchChange === void 0 ? void 0 : onSearchChange(e.target.value);
186
- },
187
- onKeyDown: handleSearchKeyDown
188
- })
189
- }) : null, /*#__PURE__*/_jsxs(SCMPTabsRow, {
177
+ children: [/*#__PURE__*/_jsxs(SCMPTabsRow, {
190
178
  children: [/*#__PURE__*/_jsx(SCMPTabsGroup, {
191
- children: allowedTypes.map(function (type, tabIndex) {
179
+ children: allowedTypes.map(function (type) {
192
180
  var label = t(TAB_I18N_KEYS[type], {
193
181
  defaultValue: TAB_FALLBACKS[type]
194
182
  });
195
- var atPrefix = hideTabPrefix ? '' : '@'.repeat(tabIndex + 1);
183
+ var atPrefix = getMentionTabPrefix(type);
196
184
  return /*#__PURE__*/_jsxs(SCMPTab, {
197
185
  type: "button",
198
- "aria-label": atPrefix ? "".concat(atPrefix, " ").concat(label) : label,
186
+ "aria-label": "".concat(atPrefix, " ").concat(label),
199
187
  $active: type === activeType,
200
188
  onMouseDown: function onMouseDown(e) {
201
189
  e.preventDefault();
@@ -221,4 +209,4 @@ export var ContextMentionPopover = /*#__PURE__*/forwardRef(function (_ref, ref)
221
209
  });
222
210
  });
223
211
  ContextMentionPopover.displayName = 'ContextMentionPopover';
224
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmb3J3YXJkUmVmIiwidXNlQ2FsbGJhY2siLCJ1c2VFZmZlY3QiLCJ1c2VNZW1vIiwidXNlUmVmIiwidXNlU3RhdGUiLCJJbmZvcm1hdGlvbkNpcmNsZSIsIlRvb2x0aXAiLCJ1c2VUIiwiQ29udGV4dE1lbnRpb25JdGVtIiwiTG9hZGVyIiwiU0NNUENvbnRhaW5lciIsIlNDTVBEaXZpZGVyIiwiU0NNUERpdmlkZXJXcmFwcGVyIiwiU0NNUFJlY2VudHNMYWJlbCIsIlNDTVBSZWNlbnRzUm93IiwiU0NNUFJlY2VudHNUaXRsZSIsIlNDTVBMaXN0IiwiU0NNUFN0YXRlV3JhcHBlciIsIlNDTVBLZXlib2FyZEhpbnQiLCJTQ01QVGFiIiwiU0NNUFRhYnNHcm91cCIsIlNDTVBUYWJzUm93IiwiU0NNUExvYWRNb3JlUm93IiwiU0NNUFNlYXJjaFJvdyIsIlNDTVBTZWFyY2hJbnB1dCIsImpzeCIsIl9qc3giLCJqc3hzIiwiX2pzeHMiLCJUQUJfSTE4Tl9LRVlTIiwiY2xpZW50IiwicHJvamVjdCIsInRhc2siLCJ1c2VyIiwibWNwIiwiVEFCX0ZBTExCQUNLUyIsIkNvbnRleHRNZW50aW9uUG9wb3ZlciIsIl9yZWYiLCJyZWYiLCJhbGxvd2VkVHlwZXMiLCJhY3RpdmVUeXBlIiwib25UeXBlQ2hhbmdlIiwiaXRlbXMiLCJsb2FkaW5nIiwiZXJyb3IiLCJoaWRlUmVjZW50c0xhYmVsIiwiaGFzTW9yZSIsImlzTG9hZGluZ01vcmUiLCJvblJlYWNoTGlzdEVuZCIsInNlYXJjaFZhbHVlIiwib25JdGVtU2VsZWN0ZWQiLCJjb250cm9sbGVkSW5kZXgiLCJhY3RpdmVJbmRleCIsIm9uQWN0aXZlSW5kZXhDaGFuZ2UiLCJpc0tleWJvYXJkTmF2QWN0aXZlIiwib25Nb3VzZU1vdmVJbkxpc3QiLCJzdHlsZSIsImtleWJvYXJkSGludCIsInNob3dTZWFyY2hJbnB1dCIsInNlYXJjaFBsYWNlaG9sZGVyIiwib25TZWFyY2hDaGFuZ2UiLCJvblJlcXVlc3RDbG9zZSIsImhpZGVUYWJQcmVmaXgiLCJfdXNlVCIsInQiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJpbnRlcm5hbEluZGV4Iiwic2V0SW50ZXJuYWxJbmRleCIsImxpc3RSZWYiLCJ1cGRhdGVBY3RpdmVJbmRleCIsImlkeCIsInByZXZJc0xvYWRpbmdNb3JlUmVmIiwiY3VycmVudCIsImxlbmd0aCIsIl9pdGVtRWxzJGFjdGl2ZUluZGV4IiwibGlzdEVsIiwiaXRlbUVscyIsInF1ZXJ5U2VsZWN0b3JBbGwiLCJzY3JvbGxJbnRvVmlldyIsImJsb2NrIiwiaGFuZGxlU2VhcmNoS2V5RG93biIsImUiLCJrZXkiLCJwcmV2ZW50RGVmYXVsdCIsIk1hdGgiLCJtaW4iLCJtYXgiLCJpdGVtIiwiZW1wdHlNZXNzYWdlIiwidHJpbSIsInF1ZXJ5IiwiZGVmYXVsdFZhbHVlIiwiY29uY2F0IiwicmVuZGVyQm9keSIsImNoaWxkcmVuIiwidW5kZWZpbmVkIiwib25Nb3VzZU1vdmUiLCJvblNjcm9sbCIsImVsIiwiY3VycmVudFRhcmdldCIsInRocmVzaG9sZCIsIm5lYXJCb3R0b20iLCJzY3JvbGxUb3AiLCJjbGllbnRIZWlnaHQiLCJzY3JvbGxIZWlnaHQiLCJtYXAiLCJ3aWR0aCIsImFjdGl2ZSIsIm9uU2VsZWN0Iiwib25Ib3ZlciIsInR5cGUiLCJpZCIsInNpemUiLCJyb2xlIiwib25Nb3VzZURvd24iLCJzdG9wUHJvcGFnYXRpb24iLCJhdXRvRm9jdXMiLCJ2YWx1ZSIsInBsYWNlaG9sZGVyIiwib25DaGFuZ2UiLCJ0YXJnZXQiLCJvbktleURvd24iLCJ0YWJJbmRleCIsImxhYmVsIiwiYXRQcmVmaXgiLCJyZXBlYXQiLCIkYWN0aXZlIiwidGl0bGUiLCJoZWlnaHQiLCJjb2xvciIsImRpc3BsYXlOYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXRvbXMvQ29udGV4dE1lbnRpb25Qb3BvdmVyL0NvbnRleHRNZW50aW9uUG9wb3Zlci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ1NTUHJvcGVydGllcywgZm9yd2FyZFJlZiwgS2V5Ym9hcmRFdmVudCwgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgSW5mb3JtYXRpb25DaXJjbGUgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9JbmZvcm1hdGlvbkNpcmNsZSdcbmltcG9ydCB7IFRvb2x0aXAgfSBmcm9tICdAcHJvamVjdGNvci90b29sdGlwdjIvbGliL2NvbXBvbmVudHMvVG9vbHRpcCdcbmltcG9ydCB7IHVzZVQgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VUJ1xuaW1wb3J0IHsgQ29udGV4dEVudGl0eVR5cGUsIENvbnRleHRNZW50aW9uSXRlbSBhcyBDb250ZXh0TWVudGlvbkl0ZW1UeXBlIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvY29udGV4dE1lbnRpb24nXG5pbXBvcnQgeyBDb250ZXh0TWVudGlvbkl0ZW0gfSBmcm9tICcuLi9Db250ZXh0TWVudGlvbkl0ZW0nXG5pbXBvcnQgeyBMb2FkZXIgfSBmcm9tICcuLi9Mb2FkZXInXG5pbXBvcnQge1xuICBTQ01QQ29udGFpbmVyLFxuICBTQ01QRGl2aWRlcixcbiAgU0NNUERpdmlkZXJXcmFwcGVyLFxuICBTQ01QUmVjZW50c0xhYmVsLFxuICBTQ01QUmVjZW50c1JvdyxcbiAgU0NNUFJlY2VudHNUaXRsZSxcbiAgU0NNUExpc3QsXG4gIFNDTVBTdGF0ZVdyYXBwZXIsXG4gIFNDTVBLZXlib2FyZEhpbnQsXG4gIFNDTVBUYWIsXG4gIFNDTVBUYWJzR3JvdXAsXG4gIFNDTVBUYWJzUm93LFxuICBTQ01QTG9hZE1vcmVSb3csXG4gIFNDTVBTZWFyY2hSb3csXG4gIFNDTVBTZWFyY2hJbnB1dCxcbn0gZnJvbSAnLi9Db250ZXh0TWVudGlvblBvcG92ZXIuc3R5bGVzJ1xuXG5leHBvcnQgdHlwZSBDb250ZXh0TWVudGlvblBvcG92ZXJQcm9wcyA9IHtcbiAgYWxsb3dlZFR5cGVzOiBDb250ZXh0RW50aXR5VHlwZVtdXG4gIGFjdGl2ZVR5cGU6IENvbnRleHRFbnRpdHlUeXBlXG4gIG9uVHlwZUNoYW5nZTogKHR5cGU6IENvbnRleHRFbnRpdHlUeXBlKSA9PiB2b2lkXG4gIGl0ZW1zOiBDb250ZXh0TWVudGlvbkl0ZW1UeXBlW11cbiAgbG9hZGluZzogYm9vbGVhblxuICBlcnJvcjogYm9vbGVhblxuICBoaWRlUmVjZW50c0xhYmVsPzogYm9vbGVhblxuICBoYXNNb3JlPzogYm9vbGVhblxuICBpc0xvYWRpbmdNb3JlPzogYm9vbGVhblxuICBvblJlYWNoTGlzdEVuZD86ICgpID0+IHZvaWRcbiAgc2VhcmNoVmFsdWU6IHN0cmluZ1xuICBvbkl0ZW1TZWxlY3RlZDogKGl0ZW06IENvbnRleHRNZW50aW9uSXRlbVR5cGUpID0+IHZvaWRcbiAgLyoqIMONbmRpY2UgcHJlc2VsZWNjaW9uYWRvIChuYXZlZ2FjacOzbiBwb3IgdGVjbGFkbyBleHRlcm5hKS4gU2kgbm8gc2UgcGFzYSwgc2UgbWFuZWphIGludGVybmFtZW50ZS4gKi9cbiAgYWN0aXZlSW5kZXg/OiBudW1iZXJcbiAgb25BY3RpdmVJbmRleENoYW5nZT86IChpZHg6IG51bWJlcikgPT4gdm9pZFxuICBpc0tleWJvYXJkTmF2QWN0aXZlPzogYm9vbGVhblxuICBvbk1vdXNlTW92ZUluTGlzdD86ICgpID0+IHZvaWRcbiAgc3R5bGU/OiBDU1NQcm9wZXJ0aWVzXG4gIGtleWJvYXJkSGludD86IHN0cmluZ1xuICAvKipcbiAgICogTW9kbyBcInBpblwiIChzZWd1bmRvIHB1bnRvIGRlIGVudHJhZGEsIFJGQyDCpzYpOiByZW5kZXJpemEgdW4gaW5wdXQgZGUgYsO6c3F1ZWRhIHByb3Bpb1xuICAgKiAoZW4gbWVuY2lvbmVzIGVsIHRleHRvIGxvIHByb3ZlZSBlbCBlZGl0b3IpLiBIYWJpbGl0YSBuYXZlZ2FjacOzbiBwb3IgdGVjbGFkbyBpbnRlcm5hLlxuICAgKi9cbiAgc2hvd1NlYXJjaElucHV0PzogYm9vbGVhblxuICAvKiogUGxhY2Vob2xkZXIgZGVsIGlucHV0IGRlIGLDunNxdWVkYSBlbiBtb2RvIHBpbi4gKi9cbiAgc2VhcmNoUGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgLyoqIENhbWJpb3MgZGVsIGlucHV0IGRlIGLDunNxdWVkYSBlbiBtb2RvIHBpbiAoY29udHJvbGFkbyBwb3IgYHNlYXJjaFZhbHVlYCkuICovXG4gIG9uU2VhcmNoQ2hhbmdlPzogKHZhbHVlOiBzdHJpbmcpID0+IHZvaWRcbiAgLyoqIEVzY2FwZSBkZW50cm8gZGVsIGlucHV0IGRlIGLDunNxdWVkYSBlbiBtb2RvIHBpbi4gKi9cbiAgb25SZXF1ZXN0Q2xvc2U/OiAoKSA9PiB2b2lkXG4gIC8qKiBPY3VsdGEgZWwgcHJlZmlqbyBgQGAvYEBAYCBkZSBsYXMgdGFicyAobm8gYXBsaWNhIGVuIG1vZG8gcGluKS4gKi9cbiAgaGlkZVRhYlByZWZpeD86IGJvb2xlYW5cbn1cblxuY29uc3QgVEFCX0kxOE5fS0VZUzogUmVjb3JkPENvbnRleHRFbnRpdHlUeXBlLCBzdHJpbmc+ID0ge1xuICBjbGllbnQ6ICdjb250ZXh0TWVudGlvbi50YWJzLmNsaWVudCcsXG4gIHByb2plY3Q6ICdjb250ZXh0TWVudGlvbi50YWJzLnByb2plY3QnLFxuICB0YXNrOiAnY29udGV4dE1lbnRpb24udGFicy50YXNrJyxcbiAgdXNlcjogJ2NvbnRleHRNZW50aW9uLnRhYnMudXNlcicsXG4gIG1jcDogJ2NvbnRleHRNZW50aW9uLnRhYnMubWNwJyxcbn1cblxuY29uc3QgVEFCX0ZBTExCQUNLUzogUmVjb3JkPENvbnRleHRFbnRpdHlUeXBlLCBzdHJpbmc+ID0ge1xuICBjbGllbnQ6ICdDbGllbnRlJyxcbiAgcHJvamVjdDogJ1Byb3llY3RvJyxcbiAgdGFzazogJ1RhcmVhJyxcbiAgdXNlcjogJ1VzdWFyaW8nLFxuICBtY3A6ICdDb25lY3RvcmVzJyxcbn1cblxuZXhwb3J0IGNvbnN0IENvbnRleHRNZW50aW9uUG9wb3ZlciA9IGZvcndhcmRSZWY8SFRNTERpdkVsZW1lbnQsIENvbnRleHRNZW50aW9uUG9wb3ZlclByb3BzPihcbiAgKFxuICAgIHtcbiAgICAgIGFsbG93ZWRUeXBlcyxcbiAgICAgIGFjdGl2ZVR5cGUsXG4gICAgICBvblR5cGVDaGFuZ2UsXG4gICAgICBpdGVtcyxcbiAgICAgIGxvYWRpbmcsXG4gICAgICBlcnJvcixcbiAgICAgIGhpZGVSZWNlbnRzTGFiZWwsXG4gICAgICBoYXNNb3JlLFxuICAgICAgaXNMb2FkaW5nTW9yZSxcbiAgICAgIG9uUmVhY2hMaXN0RW5kLFxuICAgICAgc2VhcmNoVmFsdWUsXG4gICAgICBvbkl0ZW1TZWxlY3RlZCxcbiAgICAgIGFjdGl2ZUluZGV4OiBjb250cm9sbGVkSW5kZXgsXG4gICAgICBvbkFjdGl2ZUluZGV4Q2hhbmdlLFxuICAgICAgaXNLZXlib2FyZE5hdkFjdGl2ZSxcbiAgICAgIG9uTW91c2VNb3ZlSW5MaXN0LFxuICAgICAgc3R5bGUsXG4gICAgICBrZXlib2FyZEhpbnQsXG4gICAgICBzaG93U2VhcmNoSW5wdXQsXG4gICAgICBzZWFyY2hQbGFjZWhvbGRlcixcbiAgICAgIG9uU2VhcmNoQ2hhbmdlLFxuICAgICAgb25SZXF1ZXN0Q2xvc2UsXG4gICAgICBoaWRlVGFiUHJlZml4LFxuICAgIH0sXG4gICAgcmVmXG4gICkgPT4ge1xuICAgIGNvbnN0IHsgdCB9ID0gdXNlVCgpXG4gICAgY29uc3QgW2ludGVybmFsSW5kZXgsIHNldEludGVybmFsSW5kZXhdID0gdXNlU3RhdGUoMClcbiAgICBjb25zdCBhY3RpdmVJbmRleCA9IGNvbnRyb2xsZWRJbmRleCA/PyBpbnRlcm5hbEluZGV4XG4gICAgY29uc3QgbGlzdFJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbClcblxuICAgIGNvbnN0IHVwZGF0ZUFjdGl2ZUluZGV4ID0gdXNlQ2FsbGJhY2soXG4gICAgICAoaWR4OiBudW1iZXIpID0+IHtcbiAgICAgICAgaWYgKG9uQWN0aXZlSW5kZXhDaGFuZ2UpIG9uQWN0aXZlSW5kZXhDaGFuZ2UoaWR4KVxuICAgICAgICBlbHNlIHNldEludGVybmFsSW5kZXgoaWR4KVxuICAgICAgfSxcbiAgICAgIFtvbkFjdGl2ZUluZGV4Q2hhbmdlXVxuICAgIClcblxuICAgIC8vIFJlc2V0IGFsIGNhbWJpYXIgZGUgdGFiIG8gY2FudGlkYWQgZGUgcmVzdWx0YWRvcyAobm8gZW4gbG9hZCBtb3JlKVxuICAgIGNvbnN0IHByZXZJc0xvYWRpbmdNb3JlUmVmID0gdXNlUmVmKGZhbHNlKVxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBwcmV2SXNMb2FkaW5nTW9yZVJlZi5jdXJyZW50ID0gaXNMb2FkaW5nTW9yZSA/PyBmYWxzZVxuICAgICAgfVxuICAgIH0sIFtpc0xvYWRpbmdNb3JlXSlcblxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICBpZiAocHJldklzTG9hZGluZ01vcmVSZWYuY3VycmVudCkgcmV0dXJuXG4gICAgICB1cGRhdGVBY3RpdmVJbmRleCgwKVxuICAgIH0sIFthY3RpdmVUeXBlLCBpdGVtcy5sZW5ndGgsIHVwZGF0ZUFjdGl2ZUluZGV4XSlcblxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICBjb25zdCBsaXN0RWwgPSBsaXN0UmVmLmN1cnJlbnRcbiAgICAgIGlmICghbGlzdEVsIHx8IGl0ZW1zLmxlbmd0aCA9PT0gMCkgcmV0dXJuXG4gICAgICBjb25zdCBpdGVtRWxzID0gbGlzdEVsLnF1ZXJ5U2VsZWN0b3JBbGwoJ1tkYXRhLW1lbnRpb24taXRlbV0nKVxuICAgICAgaXRlbUVsc1thY3RpdmVJbmRleF0/LnNjcm9sbEludG9WaWV3KHsgYmxvY2s6ICduZWFyZXN0JyB9KVxuICAgIH0sIFthY3RpdmVJbmRleCwgaXRlbXMubGVuZ3RoXSlcblxuICAgIGNvbnN0IGhhbmRsZVNlYXJjaEtleURvd24gPSB1c2VDYWxsYmFjayhcbiAgICAgIChlOiBLZXlib2FyZEV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSA9PiB7XG4gICAgICAgIGlmIChlLmtleSA9PT0gJ0Fycm93RG93bicpIHtcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KClcbiAgICAgICAgICB1cGRhdGVBY3RpdmVJbmRleChpdGVtcy5sZW5ndGggPiAwID8gTWF0aC5taW4oYWN0aXZlSW5kZXggKyAxLCBpdGVtcy5sZW5ndGggLSAxKSA6IDApXG4gICAgICAgIH0gZWxzZSBpZiAoZS5rZXkgPT09ICdBcnJvd1VwJykge1xuICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgIHVwZGF0ZUFjdGl2ZUluZGV4KE1hdGgubWF4KGFjdGl2ZUluZGV4IC0gMSwgMCkpXG4gICAgICAgIH0gZWxzZSBpZiAoZS5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KClcbiAgICAgICAgICBjb25zdCBpdGVtID0gaXRlbXNbYWN0aXZlSW5kZXhdXG4gICAgICAgICAgaWYgKGl0ZW0pIG9uSXRlbVNlbGVjdGVkKGl0ZW0pXG4gICAgICAgIH0gZWxzZSBpZiAoZS5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgb25SZXF1ZXN0Q2xvc2U/LigpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbaXRlbXMsIGFjdGl2ZUluZGV4LCB1cGRhdGVBY3RpdmVJbmRleCwgb25JdGVtU2VsZWN0ZWQsIG9uUmVxdWVzdENsb3NlXVxuICAgIClcblxuICAgIGNvbnN0IGVtcHR5TWVzc2FnZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgaWYgKHNlYXJjaFZhbHVlLnRyaW0oKSkge1xuICAgICAgICByZXR1cm4gdCgnY29udGV4dE1lbnRpb24uZW1wdHkud2l0aFF1ZXJ5Jywge1xuICAgICAgICAgIHF1ZXJ5OiBzZWFyY2hWYWx1ZSxcbiAgICAgICAgICBkZWZhdWx0VmFsdWU6IGBObyBoYXkgcmVzdWx0YWRvcyBwYXJhIFwiJHtzZWFyY2hWYWx1ZX1cImAsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgICByZXR1cm4gdCgnY29udGV4dE1lbnRpb24uZW1wdHkucmVjZW50cycsIHsgZGVmYXVsdFZhbHVlOiAnRW1wZXrDoSBhIGVzY3JpYmlyIHBhcmEgYnVzY2FyJyB9KVxuICAgIH0sIFtzZWFyY2hWYWx1ZSwgdF0pXG5cbiAgICBjb25zdCByZW5kZXJCb2R5ID0gKCkgPT4ge1xuICAgICAgaWYgKGxvYWRpbmcpIHtcbiAgICAgICAgcmV0dXJuIDxTQ01QU3RhdGVXcmFwcGVyPnt0KCdjb250ZXh0TWVudGlvbi5sb2FkaW5nJywgeyBkZWZhdWx0VmFsdWU6ICdCdXNjYW5kby4uLicgfSl9PC9TQ01QU3RhdGVXcmFwcGVyPlxuICAgICAgfVxuICAgICAgaWYgKGVycm9yKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPFNDTVBTdGF0ZVdyYXBwZXI+XG4gICAgICAgICAgICB7dCgnY29udGV4dE1lbnRpb24uZXJyb3InLCB7IGRlZmF1bHRWYWx1ZTogJ0h1Ym8gdW4gcHJvYmxlbWEgYWwgYnVzY2FyJyB9KX1cbiAgICAgICAgICA8L1NDTVBTdGF0ZVdyYXBwZXI+XG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmIChpdGVtcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmV0dXJuIDxTQ01QU3RhdGVXcmFwcGVyPntlbXB0eU1lc3NhZ2V9PC9TQ01QU3RhdGVXcmFwcGVyPlxuICAgICAgfVxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPFNDTVBMaXN0XG4gICAgICAgICAgcmVmPXtsaXN0UmVmfVxuICAgICAgICAgIGRhdGEta2V5Ym9hcmQtbmF2PXtpc0tleWJvYXJkTmF2QWN0aXZlIHx8IHVuZGVmaW5lZH1cbiAgICAgICAgICBvbk1vdXNlTW92ZT17b25Nb3VzZU1vdmVJbkxpc3R9XG4gICAgICAgICAgb25TY3JvbGw9e2UgPT4ge1xuICAgICAgICAgICAgaWYgKCFvblJlYWNoTGlzdEVuZCB8fCAhaGFzTW9yZSB8fCBpc0xvYWRpbmdNb3JlKSByZXR1cm5cbiAgICAgICAgICAgIGNvbnN0IGVsID0gZS5jdXJyZW50VGFyZ2V0XG4gICAgICAgICAgICBjb25zdCB0aHJlc2hvbGQgPSAyNFxuICAgICAgICAgICAgY29uc3QgbmVhckJvdHRvbSA9IGVsLnNjcm9sbFRvcCArIGVsLmNsaWVudEhlaWdodCA+PSBlbC5zY3JvbGxIZWlnaHQgLSB0aHJlc2hvbGRcbiAgICAgICAgICAgIGlmIChuZWFyQm90dG9tKSB7XG4gICAgICAgICAgICAgIG9uUmVhY2hMaXN0RW5kKClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9fVxuICAgICAgICA+XG4gICAgICAgICAgeyFzZWFyY2hWYWx1ZS50cmltKCkgJiYgYWN0aXZlVHlwZSAhPT0gJ3VzZXInICYmICFoaWRlUmVjZW50c0xhYmVsID8gKFxuICAgICAgICAgICAgPFNDTVBSZWNlbnRzUm93PlxuICAgICAgICAgICAgICA8U0NNUFJlY2VudHNUaXRsZT5cbiAgICAgICAgICAgICAgICA8U0NNUFJlY2VudHNMYWJlbD57dCgnY29udGV4dE1lbnRpb24ucmVjZW50c1RpdGxlJywgeyBkZWZhdWx0VmFsdWU6ICdSZWNpZW50ZXMnIH0pfTwvU0NNUFJlY2VudHNMYWJlbD5cbiAgICAgICAgICAgICAgPC9TQ01QUmVjZW50c1RpdGxlPlxuICAgICAgICAgICAgPC9TQ01QUmVjZW50c1Jvdz5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpZHgpID0+IChcbiAgICAgICAgICAgIDxkaXYga2V5PXtgJHtpdGVtLnR5cGV9LSR7aXRlbS5pZH1gfSBkYXRhLW1lbnRpb24taXRlbSBzdHlsZT17eyB3aWR0aDogJzEwMCUnIH19PlxuICAgICAgICAgICAgICA8Q29udGV4dE1lbnRpb25JdGVtXG4gICAgICAgICAgICAgICAgaXRlbT17aXRlbX1cbiAgICAgICAgICAgICAgICBhY3RpdmU9e2lkeCA9PT0gYWN0aXZlSW5kZXh9XG4gICAgICAgICAgICAgICAgb25TZWxlY3Q9e29uSXRlbVNlbGVjdGVkfVxuICAgICAgICAgICAgICAgIG9uSG92ZXI9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgIGlmICghaXNLZXlib2FyZE5hdkFjdGl2ZSkgdXBkYXRlQWN0aXZlSW5kZXgoaWR4KVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICApKX1cbiAgICAgICAgICB7aXNMb2FkaW5nTW9yZSA/IChcbiAgICAgICAgICAgIDxTQ01QTG9hZE1vcmVSb3c+XG4gICAgICAgICAgICAgIDxMb2FkZXIgc2l6ZT1cInNtYWxsXCIgLz5cbiAgICAgICAgICAgIDwvU0NNUExvYWRNb3JlUm93PlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1NDTVBMaXN0PlxuICAgICAgKVxuICAgIH1cblxuICAgIHJldHVybiAoXG4gICAgICA8U0NNUENvbnRhaW5lclxuICAgICAgICByZWY9e3JlZn1cbiAgICAgICAgc3R5bGU9e3N0eWxlfVxuICAgICAgICByb2xlPVwibGlzdGJveFwiXG4gICAgICAgIGFyaWEtbGFiZWw9XCJDb250ZXh0IG1lbnRpb24gcGlja2VyXCJcbiAgICAgICAgb25Nb3VzZURvd249e2UgPT4gZS5zdG9wUHJvcGFnYXRpb24oKX1cbiAgICAgID5cbiAgICAgICAge3Nob3dTZWFyY2hJbnB1dCA/IChcbiAgICAgICAgICA8U0NNUFNlYXJjaFJvdz5cbiAgICAgICAgICAgIHsvKiBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganN4LWExMXkvbm8tYXV0b2ZvY3VzICovfVxuICAgICAgICAgICAgPFNDTVBTZWFyY2hJbnB1dFxuICAgICAgICAgICAgICBhdXRvRm9jdXNcbiAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICB2YWx1ZT17c2VhcmNoVmFsdWV9XG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtzZWFyY2hQbGFjZWhvbGRlcn1cbiAgICAgICAgICAgICAgb25DaGFuZ2U9e2UgPT4gb25TZWFyY2hDaGFuZ2U/LihlLnRhcmdldC52YWx1ZSl9XG4gICAgICAgICAgICAgIG9uS2V5RG93bj17aGFuZGxlU2VhcmNoS2V5RG93bn1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9TQ01QU2VhcmNoUm93PlxuICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPFNDTVBUYWJzUm93PlxuICAgICAgICAgIDxTQ01QVGFic0dyb3VwPlxuICAgICAgICAgICAge2FsbG93ZWRUeXBlcy5tYXAoKHR5cGUsIHRhYkluZGV4KSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGxhYmVsID0gdChUQUJfSTE4Tl9LRVlTW3R5cGVdLCB7IGRlZmF1bHRWYWx1ZTogVEFCX0ZBTExCQUNLU1t0eXBlXSB9KVxuICAgICAgICAgICAgICBjb25zdCBhdFByZWZpeCA9IGhpZGVUYWJQcmVmaXggPyAnJyA6ICdAJy5yZXBlYXQodGFiSW5kZXggKyAxKVxuICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDxTQ01QVGFiXG4gICAgICAgICAgICAgICAgICBrZXk9e3R5cGV9XG4gICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9e2F0UHJlZml4ID8gYCR7YXRQcmVmaXh9ICR7bGFiZWx9YCA6IGxhYmVsfVxuICAgICAgICAgICAgICAgICAgJGFjdGl2ZT17dHlwZSA9PT0gYWN0aXZlVHlwZX1cbiAgICAgICAgICAgICAgICAgIG9uTW91c2VEb3duPXtlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICAgICAgICAgICAgb25UeXBlQ2hhbmdlKHR5cGUpXG4gICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHthdFByZWZpeH1cbiAgICAgICAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICAgICAgICA8L1NDTVBUYWI+XG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH0pfVxuICAgICAgICAgIDwvU0NNUFRhYnNHcm91cD5cbiAgICAgICAgICA8VG9vbHRpcCB0aXRsZT17a2V5Ym9hcmRIaW50IHx8ICcnfT5cbiAgICAgICAgICAgIDxTQ01QS2V5Ym9hcmRIaW50PlxuICAgICAgICAgICAgICA8SW5mb3JtYXRpb25DaXJjbGUgd2lkdGg9ezIwfSBoZWlnaHQ9ezIwfSBjb2xvcj1cIiM4MDgwODBcIiAvPlxuICAgICAgICAgICAgPC9TQ01QS2V5Ym9hcmRIaW50PlxuICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgPC9TQ01QVGFic1Jvdz5cbiAgICAgICAgPFNDTVBEaXZpZGVyV3JhcHBlcj5cbiAgICAgICAgICA8U0NNUERpdmlkZXIgLz5cbiAgICAgICAgPC9TQ01QRGl2aWRlcldyYXBwZXI+XG4gICAgICAgIHtyZW5kZXJCb2R5KCl9XG4gICAgICA8L1NDTVBDb250YWluZXI+XG4gICAgKVxuICB9XG4pXG5cbkNvbnRleHRNZW50aW9uUG9wb3Zlci5kaXNwbGF5TmFtZSA9ICdDb250ZXh0TWVudGlvblBvcG92ZXInXG4iXSwibWFwcGluZ3MiOiI7QUFBQSxTQUF3QkEsVUFBVSxFQUFpQkMsV0FBVyxFQUFFQyxTQUFTLEVBQUVDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxRQUFRLFFBQVEsT0FBTztBQUNuSCxTQUFTQyxpQkFBaUIsUUFBUSxvREFBb0Q7QUFDdEYsU0FBU0MsT0FBTyxRQUFRLDhDQUE4QztBQUN0RSxTQUFTQyxJQUFJLFFBQVEscUJBQXFCO0FBRTFDLFNBQVNDLGtCQUFrQixRQUFRLHVCQUF1QjtBQUMxRCxTQUFTQyxNQUFNLFFBQVEsV0FBVztBQUNsQyxTQUNFQyxhQUFhLEVBQ2JDLFdBQVcsRUFDWEMsa0JBQWtCLEVBQ2xCQyxnQkFBZ0IsRUFDaEJDLGNBQWMs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
212
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmb3J3YXJkUmVmIiwidXNlQ2FsbGJhY2siLCJ1c2VFZmZlY3QiLCJ1c2VNZW1vIiwidXNlUmVmIiwidXNlU3RhdGUiLCJJbmZvcm1hdGlvbkNpcmNsZSIsIlRvb2x0aXAiLCJTS0lMTFNfU0VBUkNIX01JTl9RVUVSWV9MRU5HVEgiLCJ1c2VUIiwiZ2V0TWVudGlvblRhYlByZWZpeCIsIkNvbnRleHRNZW50aW9uSXRlbSIsIkxvYWRlciIsIlNDTVBDb250YWluZXIiLCJTQ01QRGl2aWRlciIsIlNDTVBEaXZpZGVyV3JhcHBlciIsIlNDTVBSZWNlbnRzTGFiZWwiLCJTQ01QUmVjZW50c1JvdyIsIlNDTVBSZWNlbnRzVGl0bGUiLCJTQ01QTGlzdCIsIlNDTVBTdGF0ZVdyYXBwZXIiLCJTQ01QS2V5Ym9hcmRIaW50IiwiU0NNUFRhYiIsIlNDTVBUYWJzR3JvdXAiLCJTQ01QVGFic1JvdyIsIlNDTVBMb2FkTW9yZVJvdyIsImpzeCIsIl9qc3giLCJqc3hzIiwiX2pzeHMiLCJUQUJfSTE4Tl9LRVlTIiwiY2xpZW50IiwicHJvamVjdCIsInRhc2siLCJ1c2VyIiwibWNwIiwic2tpbGwiLCJUQUJfRkFMTEJBQ0tTIiwiQ29udGV4dE1lbnRpb25Qb3BvdmVyIiwiX3JlZiIsInJlZiIsImFsbG93ZWRUeXBlcyIsImFjdGl2ZVR5cGUiLCJvblR5cGVDaGFuZ2UiLCJpdGVtcyIsImxvYWRpbmciLCJlcnJvciIsImhpZGVSZWNlbnRzTGFiZWwiLCJfcmVmJHNraWxsc0NhdGFsb2dFbXAiLCJza2lsbHNDYXRhbG9nRW1wdHkiLCJoYXNNb3JlIiwiaXNMb2FkaW5nTW9yZSIsIm9uUmVhY2hMaXN0RW5kIiwic2VhcmNoVmFsdWUiLCJvbkl0ZW1TZWxlY3RlZCIsImNvbnRyb2xsZWRJbmRleCIsImFjdGl2ZUluZGV4Iiwib25BY3RpdmVJbmRleENoYW5nZSIsImlzS2V5Ym9hcmROYXZBY3RpdmUiLCJvbk1vdXNlTW92ZUluTGlzdCIsInN0eWxlIiwia2V5Ym9hcmRIaW50IiwiX3VzZVQiLCJ0IiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwiaW50ZXJuYWxJbmRleCIsInNldEludGVybmFsSW5kZXgiLCJsaXN0UmVmIiwidXBkYXRlQWN0aXZlSW5kZXgiLCJpZHgiLCJwcmV2SXNMb2FkaW5nTW9yZVJlZiIsImN1cnJlbnQiLCJsZW5ndGgiLCJfaXRlbUVscyRhY3RpdmVJbmRleCIsImxpc3RFbCIsIml0ZW1FbHMiLCJxdWVyeVNlbGVjdG9yQWxsIiwic2Nyb2xsSW50b1ZpZXciLCJibG9jayIsImVtcHR5TWVzc2FnZSIsInRyaW0iLCJxdWVyeSIsImRlZmF1bHRWYWx1ZSIsImNvbmNhdCIsInNraWxsUXVlcnlUb29TaG9ydCIsInJlbmRlckJvZHkiLCJjaGlsZHJlbiIsInVuZGVmaW5lZCIsIm9uTW91c2VNb3ZlIiwib25TY3JvbGwiLCJlIiwiZWwiLCJjdXJyZW50VGFyZ2V0IiwidGhyZXNob2xkIiwibmVhckJvdHRvbSIsInNjcm9sbFRvcCIsImNsaWVudEhlaWdodCIsInNjcm9sbEhlaWdodCIsIm1hcCIsIml0ZW0iLCJ3aWR0aCIsImFjdGl2ZSIsIm9uU2VsZWN0Iiwib25Ib3ZlciIsInR5cGUiLCJpZCIsInNpemUiLCJyb2xlIiwib25Nb3VzZURvd24iLCJzdG9wUHJvcGFnYXRpb24iLCJsYWJlbCIsImF0UHJlZml4IiwiJGFjdGl2ZSIsInByZXZlbnREZWZhdWx0IiwidGl0bGUiLCJoZWlnaHQiLCJjb2xvciIsImRpc3BsYXlOYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXRvbXMvQ29udGV4dE1lbnRpb25Qb3BvdmVyL0NvbnRleHRNZW50aW9uUG9wb3Zlci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ1NTUHJvcGVydGllcywgZm9yd2FyZFJlZiwgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgSW5mb3JtYXRpb25DaXJjbGUgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9JbmZvcm1hdGlvbkNpcmNsZSdcbmltcG9ydCB7IFRvb2x0aXAgfSBmcm9tICdAcHJvamVjdGNvci90b29sdGlwdjIvbGliL2NvbXBvbmVudHMvVG9vbHRpcCdcbmltcG9ydCB7IFNLSUxMU19TRUFSQ0hfTUlOX1FVRVJZX0xFTkdUSCB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9jb25maWcnXG5pbXBvcnQgeyB1c2VUIH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlVCdcbmltcG9ydCB7IENvbnRleHRFbnRpdHlUeXBlLCBDb250ZXh0TWVudGlvbkl0ZW0gYXMgQ29udGV4dE1lbnRpb25JdGVtVHlwZSB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL2NvbnRleHRNZW50aW9uJ1xuaW1wb3J0IHsgZ2V0TWVudGlvblRhYlByZWZpeCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2NvbnRleHRNZW50aW9uVHJpZ2dlcnMnXG5pbXBvcnQgeyBDb250ZXh0TWVudGlvbkl0ZW0gfSBmcm9tICcuLi9Db250ZXh0TWVudGlvbkl0ZW0nXG5pbXBvcnQgeyBMb2FkZXIgfSBmcm9tICcuLi9Mb2FkZXInXG5pbXBvcnQge1xuICBTQ01QQ29udGFpbmVyLFxuICBTQ01QRGl2aWRlcixcbiAgU0NNUERpdmlkZXJXcmFwcGVyLFxuICBTQ01QUmVjZW50c0xhYmVsLFxuICBTQ01QUmVjZW50c1JvdyxcbiAgU0NNUFJlY2VudHNUaXRsZSxcbiAgU0NNUExpc3QsXG4gIFNDTVBTdGF0ZVdyYXBwZXIsXG4gIFNDTVBLZXlib2FyZEhpbnQsXG4gIFNDTVBUYWIsXG4gIFNDTVBUYWJzR3JvdXAsXG4gIFNDTVBUYWJzUm93LFxuICBTQ01QTG9hZE1vcmVSb3csXG59IGZyb20gJy4vQ29udGV4dE1lbnRpb25Qb3BvdmVyLnN0eWxlcydcblxuZXhwb3J0IHR5cGUgQ29udGV4dE1lbnRpb25Qb3BvdmVyUHJvcHMgPSB7XG4gIGFsbG93ZWRUeXBlczogQ29udGV4dEVudGl0eVR5cGVbXVxuICBhY3RpdmVUeXBlOiBDb250ZXh0RW50aXR5VHlwZVxuICBvblR5cGVDaGFuZ2U6ICh0eXBlOiBDb250ZXh0RW50aXR5VHlwZSkgPT4gdm9pZFxuICBpdGVtczogQ29udGV4dE1lbnRpb25JdGVtVHlwZVtdXG4gIGxvYWRpbmc6IGJvb2xlYW5cbiAgZXJyb3I6IGJvb2xlYW5cbiAgaGlkZVJlY2VudHNMYWJlbD86IGJvb2xlYW5cbiAgc2tpbGxzQ2F0YWxvZ0VtcHR5PzogYm9vbGVhblxuICBoYXNNb3JlPzogYm9vbGVhblxuICBpc0xvYWRpbmdNb3JlPzogYm9vbGVhblxuICBvblJlYWNoTGlzdEVuZD86ICgpID0+IHZvaWRcbiAgc2VhcmNoVmFsdWU6IHN0cmluZ1xuICBvbkl0ZW1TZWxlY3RlZDogKGl0ZW06IENvbnRleHRNZW50aW9uSXRlbVR5cGUpID0+IHZvaWRcbiAgLyoqIMONbmRpY2UgcHJlc2VsZWNjaW9uYWRvIChuYXZlZ2FjacOzbiBwb3IgdGVjbGFkbyBleHRlcm5hKS4gU2kgbm8gc2UgcGFzYSwgc2UgbWFuZWphIGludGVybmFtZW50ZS4gKi9cbiAgYWN0aXZlSW5kZXg/OiBudW1iZXJcbiAgb25BY3RpdmVJbmRleENoYW5nZT86IChpZHg6IG51bWJlcikgPT4gdm9pZFxuICBpc0tleWJvYXJkTmF2QWN0aXZlPzogYm9vbGVhblxuICBvbk1vdXNlTW92ZUluTGlzdD86ICgpID0+IHZvaWRcbiAgc3R5bGU/OiBDU1NQcm9wZXJ0aWVzXG4gIGtleWJvYXJkSGludD86IHN0cmluZ1xufVxuXG5jb25zdCBUQUJfSTE4Tl9LRVlTOiBSZWNvcmQ8Q29udGV4dEVudGl0eVR5cGUsIHN0cmluZz4gPSB7XG4gIGNsaWVudDogJ2NvbnRleHRNZW50aW9uLnRhYnMuY2xpZW50JyxcbiAgcHJvamVjdDogJ2NvbnRleHRNZW50aW9uLnRhYnMucHJvamVjdCcsXG4gIHRhc2s6ICdjb250ZXh0TWVudGlvbi50YWJzLnRhc2snLFxuICB1c2VyOiAnY29udGV4dE1lbnRpb24udGFicy51c2VyJyxcbiAgbWNwOiAnY29udGV4dE1lbnRpb24udGFicy5tY3AnLFxuICBza2lsbDogJ2NvbnRleHRNZW50aW9uLnRhYnMuc2tpbGwnLFxufVxuXG5jb25zdCBUQUJfRkFMTEJBQ0tTOiBSZWNvcmQ8Q29udGV4dEVudGl0eVR5cGUsIHN0cmluZz4gPSB7XG4gIGNsaWVudDogJ0NsaWVudGUnLFxuICBwcm9qZWN0OiAnUHJveWVjdG8nLFxuICB0YXNrOiAnVGFyZWEnLFxuICB1c2VyOiAnVXN1YXJpbycsXG4gIG1jcDogJ0NvbmVjdG9yZXMnLFxuICBza2lsbDogJ0hhYmlsaWRhZGVzJyxcbn1cblxuZXhwb3J0IGNvbnN0IENvbnRleHRNZW50aW9uUG9wb3ZlciA9IGZvcndhcmRSZWY8SFRNTERpdkVsZW1lbnQsIENvbnRleHRNZW50aW9uUG9wb3ZlclByb3BzPihcbiAgKFxuICAgIHtcbiAgICAgIGFsbG93ZWRUeXBlcyxcbiAgICAgIGFjdGl2ZVR5cGUsXG4gICAgICBvblR5cGVDaGFuZ2UsXG4gICAgICBpdGVtcyxcbiAgICAgIGxvYWRpbmcsXG4gICAgICBlcnJvcixcbiAgICAgIGhpZGVSZWNlbnRzTGFiZWwsXG4gICAgICBza2lsbHNDYXRhbG9nRW1wdHkgPSBmYWxzZSxcbiAgICAgIGhhc01vcmUsXG4gICAgICBpc0xvYWRpbmdNb3JlLFxuICAgICAgb25SZWFjaExpc3RFbmQsXG4gICAgICBzZWFyY2hWYWx1ZSxcbiAgICAgIG9uSXRlbVNlbGVjdGVkLFxuICAgICAgYWN0aXZlSW5kZXg6IGNvbnRyb2xsZWRJbmRleCxcbiAgICAgIG9uQWN0aXZlSW5kZXhDaGFuZ2UsXG4gICAgICBpc0tleWJvYXJkTmF2QWN0aXZlLFxuICAgICAgb25Nb3VzZU1vdmVJbkxpc3QsXG4gICAgICBzdHlsZSxcbiAgICAgIGtleWJvYXJkSGludCxcbiAgICB9LFxuICAgIHJlZlxuICApID0+IHtcbiAgICBjb25zdCB7IHQgfSA9IHVzZVQoKVxuICAgIGNvbnN0IFtpbnRlcm5hbEluZGV4LCBzZXRJbnRlcm5hbEluZGV4XSA9IHVzZVN0YXRlKDApXG4gICAgY29uc3QgYWN0aXZlSW5kZXggPSBjb250cm9sbGVkSW5kZXggPz8gaW50ZXJuYWxJbmRleFxuICAgIGNvbnN0IGxpc3RSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG5cbiAgICBjb25zdCB1cGRhdGVBY3RpdmVJbmRleCA9IHVzZUNhbGxiYWNrKFxuICAgICAgKGlkeDogbnVtYmVyKSA9PiB7XG4gICAgICAgIGlmIChvbkFjdGl2ZUluZGV4Q2hhbmdlKSBvbkFjdGl2ZUluZGV4Q2hhbmdlKGlkeClcbiAgICAgICAgZWxzZSBzZXRJbnRlcm5hbEluZGV4KGlkeClcbiAgICAgIH0sXG4gICAgICBbb25BY3RpdmVJbmRleENoYW5nZV1cbiAgICApXG5cbiAgICAvLyBSZXNldCBhbCBjYW1iaWFyIGRlIHRhYiBvIGNhbnRpZGFkIGRlIHJlc3VsdGFkb3MgKG5vIGVuIGxvYWQgbW9yZSlcbiAgICBjb25zdCBwcmV2SXNMb2FkaW5nTW9yZVJlZiA9IHVzZVJlZihmYWxzZSlcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgcHJldklzTG9hZGluZ01vcmVSZWYuY3VycmVudCA9IGlzTG9hZGluZ01vcmUgPz8gZmFsc2VcbiAgICAgIH1cbiAgICB9LCBbaXNMb2FkaW5nTW9yZV0pXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHByZXZJc0xvYWRpbmdNb3JlUmVmLmN1cnJlbnQpIHJldHVyblxuICAgICAgdXBkYXRlQWN0aXZlSW5kZXgoMClcbiAgICB9LCBbYWN0aXZlVHlwZSwgaXRlbXMubGVuZ3RoLCB1cGRhdGVBY3RpdmVJbmRleF0pXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgY29uc3QgbGlzdEVsID0gbGlzdFJlZi5jdXJyZW50XG4gICAgICBpZiAoIWxpc3RFbCB8fCBpdGVtcy5sZW5ndGggPT09IDApIHJldHVyblxuICAgICAgY29uc3QgaXRlbUVscyA9IGxpc3RFbC5xdWVyeVNlbGVjdG9yQWxsKCdbZGF0YS1tZW50aW9uLWl0ZW1dJylcbiAgICAgIGl0ZW1FbHNbYWN0aXZlSW5kZXhdPy5zY3JvbGxJbnRvVmlldyh7IGJsb2NrOiAnbmVhcmVzdCcgfSlcbiAgICB9LCBbYWN0aXZlSW5kZXgsIGl0ZW1zLmxlbmd0aF0pXG5cbiAgICBjb25zdCBlbXB0eU1lc3NhZ2UgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmIChhY3RpdmVUeXBlID09PSAnc2tpbGwnKSB7XG4gICAgICAgIGlmIChzZWFyY2hWYWx1ZS50cmltKCkpIHtcbiAgICAgICAgICByZXR1cm4gdCgnY29udGV4dE1lbnRpb24uZW1wdHkuc2tpbGxXaXRoUXVlcnknLCB7XG4gICAgICAgICAgICBxdWVyeTogc2VhcmNoVmFsdWUsXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdCgnY29udGV4dE1lbnRpb24uZW1wdHkuc2tpbGxOb0l0ZW1zJylcbiAgICAgIH1cbiAgICAgIGlmIChzZWFyY2hWYWx1ZS50cmltKCkpIHtcbiAgICAgICAgcmV0dXJuIHQoJ2NvbnRleHRNZW50aW9uLmVtcHR5LndpdGhRdWVyeScsIHtcbiAgICAgICAgICBxdWVyeTogc2VhcmNoVmFsdWUsXG4gICAgICAgICAgZGVmYXVsdFZhbHVlOiBgTm8gaGF5IHJlc3VsdGFkb3MgcGFyYSBcIiR7c2VhcmNoVmFsdWV9XCJgLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgcmV0dXJuIHQoJ2NvbnRleHRNZW50aW9uLmVtcHR5LnJlY2VudHMnLCB7IGRlZmF1bHRWYWx1ZTogJ0VtcGV6w6EgYSBlc2NyaWJpciBwYXJhIGJ1c2NhcicgfSlcbiAgICB9LCBbYWN0aXZlVHlwZSwgc2VhcmNoVmFsdWUsIHRdKVxuXG4gICAgY29uc3Qgc2tpbGxRdWVyeVRvb1Nob3J0ID1cbiAgICAgIGFjdGl2ZVR5cGUgPT09ICdza2lsbCcgJiZcbiAgICAgICFza2lsbHNDYXRhbG9nRW1wdHkgJiZcbiAgICAgIHNlYXJjaFZhbHVlLnRyaW0oKS5sZW5ndGggPiAwICYmXG4gICAgICBzZWFyY2hWYWx1ZS50cmltKCkubGVuZ3RoIDwgU0tJTExTX1NFQVJDSF9NSU5fUVVFUllfTEVOR1RIXG5cbiAgICBjb25zdCByZW5kZXJCb2R5ID0gKCkgPT4ge1xuICAgICAgaWYgKGxvYWRpbmcpIHtcbiAgICAgICAgcmV0dXJuIDxTQ01QU3RhdGVXcmFwcGVyPnt0KCdjb250ZXh0TWVudGlvbi5sb2FkaW5nJywgeyBkZWZhdWx0VmFsdWU6ICdCdXNjYW5kby4uLicgfSl9PC9TQ01QU3RhdGVXcmFwcGVyPlxuICAgICAgfVxuICAgICAgaWYgKGVycm9yKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPFNDTVBTdGF0ZVdyYXBwZXI+XG4gICAgICAgICAgICB7dCgnY29udGV4dE1lbnRpb24uZXJyb3InLCB7IGRlZmF1bHRWYWx1ZTogJ0h1Ym8gdW4gcHJvYmxlbWEgYWwgYnVzY2FyJyB9KX1cbiAgICAgICAgICA8L1NDTVBTdGF0ZVdyYXBwZXI+XG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmIChza2lsbFF1ZXJ5VG9vU2hvcnQpIHtcbiAgICAgICAgcmV0dXJuIDxTQ01QU3RhdGVXcmFwcGVyPnt0KCdjb250ZXh0TWVudGlvbi5za2lsbFF1ZXJ5VG9vU2hvcnQnKX08L1NDTVBTdGF0ZVdyYXBwZXI+XG4gICAgICB9XG4gICAgICBpZiAoaXRlbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybiA8U0NNUFN0YXRlV3JhcHBlcj57ZW1wdHlNZXNzYWdlfTwvU0NNUFN0YXRlV3JhcHBlcj5cbiAgICAgIH1cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxTQ01QTGlzdFxuICAgICAgICAgIHJlZj17bGlzdFJlZn1cbiAgICAgICAgICBkYXRhLWtleWJvYXJkLW5hdj17aXNLZXlib2FyZE5hdkFjdGl2ZSB8fCB1bmRlZmluZWR9XG4gICAgICAgICAgb25Nb3VzZU1vdmU9e29uTW91c2VNb3ZlSW5MaXN0fVxuICAgICAgICAgIG9uU2Nyb2xsPXtlID0+IHtcbiAgICAgICAgICAgIGlmICghb25SZWFjaExpc3RFbmQgfHwgIWhhc01vcmUgfHwgaXNMb2FkaW5nTW9yZSkgcmV0dXJuXG4gICAgICAgICAgICBjb25zdCBlbCA9IGUuY3VycmVudFRhcmdldFxuICAgICAgICAgICAgY29uc3QgdGhyZXNob2xkID0gMjRcbiAgICAgICAgICAgIGNvbnN0IG5lYXJCb3R0b20gPSBlbC5zY3JvbGxUb3AgKyBlbC5jbGllbnRIZWlnaHQgPj0gZWwuc2Nyb2xsSGVpZ2h0IC0gdGhyZXNob2xkXG4gICAgICAgICAgICBpZiAobmVhckJvdHRvbSkge1xuICAgICAgICAgICAgICBvblJlYWNoTGlzdEVuZCgpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIHshc2VhcmNoVmFsdWUudHJpbSgpICYmIGFjdGl2ZVR5cGUgIT09ICd1c2VyJyAmJiAhaGlkZVJlY2VudHNMYWJlbCA/IChcbiAgICAgICAgICAgIDxTQ01QUmVjZW50c1Jvdz5cbiAgICAgICAgICAgICAgPFNDTVBSZWNlbnRzVGl0bGU+XG4gICAgICAgICAgICAgICAgPFNDTVBSZWNlbnRzTGFiZWw+e3QoJ2NvbnRleHRNZW50aW9uLnJlY2VudHNUaXRsZScsIHsgZGVmYXVsdFZhbHVlOiAnUmVjaWVudGVzJyB9KX08L1NDTVBSZWNlbnRzTGFiZWw+XG4gICAgICAgICAgICAgIDwvU0NNUFJlY2VudHNUaXRsZT5cbiAgICAgICAgICAgIDwvU0NNUFJlY2VudHNSb3c+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAge2l0ZW1zLm1hcCgoaXRlbSwgaWR4KSA9PiAoXG4gICAgICAgICAgICA8ZGl2IGtleT17YCR7aXRlbS50eXBlfS0ke2l0ZW0uaWR9YH0gZGF0YS1tZW50aW9uLWl0ZW0gc3R5bGU9e3sgd2lkdGg6ICcxMDAlJyB9fT5cbiAgICAgICAgICAgICAgPENvbnRleHRNZW50aW9uSXRlbVxuICAgICAgICAgICAgICAgIGl0ZW09e2l0ZW19XG4gICAgICAgICAgICAgICAgYWN0aXZlPXtpZHggPT09IGFjdGl2ZUluZGV4fVxuICAgICAgICAgICAgICAgIG9uU2VsZWN0PXtvbkl0ZW1TZWxlY3RlZH1cbiAgICAgICAgICAgICAgICBvbkhvdmVyPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgICBpZiAoIWlzS2V5Ym9hcmROYXZBY3RpdmUpIHVwZGF0ZUFjdGl2ZUluZGV4KGlkeClcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKSl9XG4gICAgICAgICAge2lzTG9hZGluZ01vcmUgPyAoXG4gICAgICAgICAgICA8U0NNUExvYWRNb3JlUm93PlxuICAgICAgICAgICAgICA8TG9hZGVyIHNpemU9XCJzbWFsbFwiIC8+XG4gICAgICAgICAgICA8L1NDTVBMb2FkTW9yZVJvdz5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9TQ01QTGlzdD5cbiAgICAgIClcbiAgICB9XG5cbiAgICByZXR1cm4gKFxuICAgICAgPFNDTVBDb250YWluZXJcbiAgICAgICAgcmVmPXtyZWZ9XG4gICAgICAgIHN0eWxlPXtzdHlsZX1cbiAgICAgICAgcm9sZT1cImxpc3Rib3hcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiQ29udGV4dCBtZW50aW9uIHBpY2tlclwiXG4gICAgICAgIG9uTW91c2VEb3duPXtlID0+IGUuc3RvcFByb3BhZ2F0aW9uKCl9XG4gICAgICA+XG4gICAgICAgIDxTQ01QVGFic1Jvdz5cbiAgICAgICAgICA8U0NNUFRhYnNHcm91cD5cbiAgICAgICAgICAgIHthbGxvd2VkVHlwZXMubWFwKHR5cGUgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBsYWJlbCA9IHQoVEFCX0kxOE5fS0VZU1t0eXBlXSwgeyBkZWZhdWx0VmFsdWU6IFRBQl9GQUxMQkFDS1NbdHlwZV0gfSlcbiAgICAgICAgICAgICAgY29uc3QgYXRQcmVmaXggPSBnZXRNZW50aW9uVGFiUHJlZml4KHR5cGUpXG4gICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgPFNDTVBUYWJcbiAgICAgICAgICAgICAgICAgIGtleT17dHlwZX1cbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD17YCR7YXRQcmVmaXh9ICR7bGFiZWx9YH1cbiAgICAgICAgICAgICAgICAgICRhY3RpdmU9e3R5cGUgPT09IGFjdGl2ZVR5cGV9XG4gICAgICAgICAgICAgICAgICBvbk1vdXNlRG93bj17ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgICAgICAgICAgIG9uVHlwZUNoYW5nZSh0eXBlKVxuICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7YXRQcmVmaXh9XG4gICAgICAgICAgICAgICAgICB7bGFiZWx9XG4gICAgICAgICAgICAgICAgPC9TQ01QVGFiPlxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICA8L1NDTVBUYWJzR3JvdXA+XG4gICAgICAgICAgPFRvb2x0aXAgdGl0bGU9e2tleWJvYXJkSGludCB8fCAnJ30+XG4gICAgICAgICAgICA8U0NNUEtleWJvYXJkSGludD5cbiAgICAgICAgICAgICAgPEluZm9ybWF0aW9uQ2lyY2xlIHdpZHRoPXsyMH0gaGVpZ2h0PXsyMH0gY29sb3I9XCIjODA4MDgwXCIgLz5cbiAgICAgICAgICAgIDwvU0NNUEtleWJvYXJkSGludD5cbiAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIDwvU0NNUFRhYnNSb3c+XG4gICAgICAgIDxTQ01QRGl2aWRlcldyYXBwZXI+XG4gICAgICAgICAgPFNDTVBEaXZpZGVyIC8+XG4gICAgICAgIDwvU0NNUERpdmlkZXJXcmFwcGVyPlxuICAgICAgICB7cmVuZGVyQm9keSgpfVxuICAgICAgPC9TQ01QQ29udGFpbmVyPlxuICAgIClcbiAgfVxuKVxuXG5Db250ZXh0TWVudGlvblBvcG92ZXIuZGlzcGxheU5hbWUgPSAnQ29udGV4dE1lbnRpb25Qb3BvdmVyJ1xuIl0sIm1hcHBpbmdzIjoiO0FBQUEsU0FBd0JBLFVBQVUsRUFBRUMsV0FBVyxFQUFFQyxTQUFTLEVBQUVDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxRQUFRLFFBQVEsT0FBTztBQUNwRyxTQUFTQyxpQkFBaUIsUUFBUSxvREFBb0Q7QUFDdEYsU0FBU0MsT0FBTyxRQUFRLDhDQUE4QztBQUN0RSxTQUFTQyw4QkFBOEIsUUFBUSwyQkFBMkI7QUFDMUUsU0FBU0MsSUFBSSxRQUFRLHFCQUFxQjtBQUUxQyxTQUFTQyxtQkFBbUIsUUFBUSx1Q0FBdUM7QUFDM0UsU0FBU0Msa0JBQWtCLFFBQVEsdUJBQXVCO0FBQzFELFNBQVNDLE1BQU0sUUFBUSxXQUFXO0FBQ2xDLFNBQ0VDLGFBQWEsRUFDYkMsV0FBVyxFQUNYQyxrQkFBa0IsRUFDbEJDLGdCQUFnQixFQUNoQkMsY0FBYyxFQUNkQyxnQkFBZ0IsRUFDaEJDLFFBQVEsRUFDUkMsZ0JBQWdCLEVBQ2hCQyxnQkFBZ0IsRUFDaEJDLE9BQU8sRUFDUEMsYUFBYSxFQUNiQyxXQUFXLEVBQ1hDLGVBQWUsUUFDVixnQ0FBZ0M7QUFBQSxTQUFBQyxHQUFBLElBQUFDLElBQUEsRUFBQUMsSUFBQSxJQUFBQyxLQUFBO0FBeUJ2QyxJQUFNQyxhQUFnRCxHQUFHO0VBQ3ZEQyxNQUFNLEVBQUUsNEJBQTRCO0VBQ3BDQyxPQUFPLEVBQUUsNkJBQTZCO0VBQ3RDQyxJQUFJLEVBQUUsMEJBQTBCO0VBQ2hDQyxJQUFJLEVBQUUsMEJBQTBCO0VBQ2hDQyxHQUFHLEVBQUUseUJBQXlCO0VBQzlCQyxLQUFLLEVBQUU7QUFDVCxDQUFDO0FBRUQsSUFBTUMsYUFBZ0QsR0FBRztFQUN2RE4sTUFB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
@@ -30,29 +30,21 @@ export var SCMPContainer = styled.div.withConfig({
30
30
  displayName: "ContextMentionPopoverstyles__SCMPContainer",
31
31
  componentId: "sc-14gtt3h-1"
32
32
  })(["display:flex;width:100%;box-sizing:border-box;padding:12px 0;flex-direction:column;align-items:center;gap:8px;height:266px;min-height:266px;max-height:266px;border-radius:4px;border:1px solid #e0e0e0;background:#fff;box-shadow:0 1px 4px 0 rgba(0,0,0,0.08),0 1px 4px 0 rgba(0,0,0,0.04);z-index:1000;"]);
33
- export var SCMPSearchRow = styled.div.withConfig({
34
- displayName: "ContextMentionPopoverstyles__SCMPSearchRow",
35
- componentId: "sc-14gtt3h-2"
36
- })(["display:flex;padding:0 16px 4px;align-self:stretch;flex-shrink:0;"]);
37
- export var SCMPSearchInput = styled.input.withConfig({
38
- displayName: "ContextMentionPopoverstyles__SCMPSearchInput",
39
- componentId: "sc-14gtt3h-3"
40
- })(["width:100%;box-sizing:border-box;padding:8px 12px;border:1px solid var(--cor-color-grey-300,#d9d9d9);border-radius:8px;background:#fff;outline:none;font-family:var(--cor-typography-font-family,'Work Sans');font-size:var(--cor-typography-font-size-sm,14px);line-height:var(--cor-typography-line-height-20,20px);color:var(--cor-color-grey-900,#202020);&::placeholder{color:var(--cor-color-text-tertiary,#808080);}&:focus{border-color:var(--cor-color-grey-900,#202020);}"]);
41
33
  export var SCMPTabsRow = styled.div.withConfig({
42
34
  displayName: "ContextMentionPopoverstyles__SCMPTabsRow",
43
- componentId: "sc-14gtt3h-4"
35
+ componentId: "sc-14gtt3h-2"
44
36
  })(["display:flex;padding:4px 16px;align-items:center;justify-content:space-between;gap:10px;align-self:stretch;flex-shrink:0;"]);
45
37
  export var SCMPTabsGroup = styled.div.withConfig({
46
38
  displayName: "ContextMentionPopoverstyles__SCMPTabsGroup",
47
- componentId: "sc-14gtt3h-5"
39
+ componentId: "sc-14gtt3h-3"
48
40
  })(["display:flex;align-items:center;gap:16px;"]);
49
41
  export var SCMPKeyboardHint = styled.div.withConfig({
50
42
  displayName: "ContextMentionPopoverstyles__SCMPKeyboardHint",
51
- componentId: "sc-14gtt3h-6"
43
+ componentId: "sc-14gtt3h-4"
52
44
  })(["display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;user-select:none;cursor:default;"]);
53
45
  export var SCMPTab = styled.button.withConfig({
54
46
  displayName: "ContextMentionPopoverstyles__SCMPTab",
55
- componentId: "sc-14gtt3h-7"
47
+ componentId: "sc-14gtt3h-5"
56
48
  })(["display:flex;padding:0 0 2px;justify-content:center;align-items:center;gap:10px;background:transparent;border:none;border-bottom:1px solid ", ";cursor:pointer;font-family:var(--cor-typography-font-family,'Work Sans');font-size:var(--cor-typography-font-size-sm,14px);font-style:normal;font-weight:500;line-height:var(--cor-typography-line-height-20,20px);letter-spacing:var(--cor-typography-letter-spacing-0,0);color:", ";transition:color 0.12s ease;&:hover{color:var(--cor-color-grey-900,#202020);}"], function (_ref5) {
57
49
  var $active = _ref5.$active;
58
50
  return $active ? 'var(--cor-color-grey-900, #202020)' : 'transparent';
@@ -62,34 +54,34 @@ export var SCMPTab = styled.button.withConfig({
62
54
  });
63
55
  export var SCMPDividerWrapper = styled.div.withConfig({
64
56
  displayName: "ContextMentionPopoverstyles__SCMPDividerWrapper",
65
- componentId: "sc-14gtt3h-8"
57
+ componentId: "sc-14gtt3h-6"
66
58
  })(["display:flex;padding:0 8px;flex-direction:column;align-items:flex-start;gap:10px;align-self:stretch;flex-shrink:0;"]);
67
59
  export var SCMPDivider = styled.div.withConfig({
68
60
  displayName: "ContextMentionPopoverstyles__SCMPDivider",
69
- componentId: "sc-14gtt3h-9"
61
+ componentId: "sc-14gtt3h-7"
70
62
  })(["width:100%;height:1px;background:var(--cor-color-grey-300,#d9d9d9);"]);
71
63
  export var SCMPList = styled.div.withConfig({
72
64
  displayName: "ContextMentionPopoverstyles__SCMPList",
73
- componentId: "sc-14gtt3h-10"
65
+ componentId: "sc-14gtt3h-8"
74
66
  })(["display:flex;flex-direction:column;align-items:flex-start;align-self:stretch;gap:4px;flex:1 1 0;min-height:0;overflow-y:auto;overflow-x:hidden;&::-webkit-scrollbar{width:6px;}&::-webkit-scrollbar-track{background:transparent;}&::-webkit-scrollbar-thumb{background:#d0d0d0;border-radius:3px;}"]);
75
67
  export var SCMPRecentsRow = styled.div.withConfig({
76
68
  displayName: "ContextMentionPopoverstyles__SCMPRecentsRow",
77
- componentId: "sc-14gtt3h-11"
69
+ componentId: "sc-14gtt3h-9"
78
70
  })(["display:flex;padding:4px 16px;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;flex-shrink:0;align-self:stretch;border-radius:4px;"]);
79
71
  export var SCMPRecentsTitle = styled.div.withConfig({
80
72
  displayName: "ContextMentionPopoverstyles__SCMPRecentsTitle",
81
- componentId: "sc-14gtt3h-12"
73
+ componentId: "sc-14gtt3h-10"
82
74
  })(["display:flex;padding:0;align-items:center;gap:8px;"]);
83
75
  export var SCMPRecentsLabel = styled.span.withConfig({
84
76
  displayName: "ContextMentionPopoverstyles__SCMPRecentsLabel",
85
- componentId: "sc-14gtt3h-13"
77
+ componentId: "sc-14gtt3h-11"
86
78
  })(["color:var(--cor-color-text-secondary,#4d4d4d);font-family:var(--cor-typography-font-family,'Work Sans');font-size:var(--cor-typography-font-size-sm,14px);font-style:normal;font-weight:400;line-height:var(--cor-typography-line-height-20,20px);letter-spacing:var(--cor-typography-letter-spacing-0,0);"]);
87
79
  export var SCMPStateWrapper = styled.div.withConfig({
88
80
  displayName: "ContextMentionPopoverstyles__SCMPStateWrapper",
89
- componentId: "sc-14gtt3h-14"
81
+ componentId: "sc-14gtt3h-12"
90
82
  })(["display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px;align-self:stretch;flex:1 1 0;min-height:0;color:var(--cor-color-text-tertiary,#808080);font-family:var(--cor-typography-font-family,'Work Sans');font-size:var(--cor-typography-font-size-sm,14px);font-style:normal;font-weight:400;line-height:var(--cor-typography-line-height-20,20px);"]);
91
83
  export var SCMPLoadMoreRow = styled.div.withConfig({
92
84
  displayName: "ContextMentionPopoverstyles__SCMPLoadMoreRow",
93
- componentId: "sc-14gtt3h-15"
85
+ componentId: "sc-14gtt3h-13"
94
86
  })(["display:flex;justify-content:center;align-items:center;align-self:stretch;min-height:24px;padding:4px 0 8px;"]);
95
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJNQUlBX1RBU0tfUEFORUxfT1ZFUkxBWV9aX0lOREVYIiwiTUFJQV9UQVNLX1BBTkVMX01FTlRJT05fUE9QT1ZFUl9aX0lOREVYIiwiTUFJQV9UQVNLX1BBTkVMX09WRVJMQVlfQVRUUiIsIk1BSUFfTUVOVElPTl9QT1BPVkVSX0FUVFIiLCJTQ01QQW5jaG9yIiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJfcmVmIiwiJGJvdHRvbSIsImNvbmNhdCIsIl9yZWYyIiwiJGxlZnQiLCJfcmVmMyIsIiR3aWR0aCIsIl9yZWY0IiwiJHpJbmRleCIsIlNDTVBDb250YWluZXIiLCJTQ01QU2VhcmNoUm93IiwiU0NNUFNlYXJjaElucHV0IiwiaW5wdXQiLCJTQ01QVGFic1JvdyIsIlNDTVBUYWJzR3JvdXAiLCJTQ01QS2V5Ym9hcmRIaW50IiwiU0NNUFRhYiIsImJ1dHRvbiIsIl9yZWY1IiwiJGFjdGl2ZSIsIl9yZWY2IiwiU0NNUERpdmlkZXJXcmFwcGVyIiwiU0NNUERpdmlkZXIiLCJTQ01QTGlzdCIsIlNDTVBSZWNlbnRzUm93IiwiU0NNUFJlY2VudHNUaXRsZSIsIlNDTVBSZWNlbnRzTGFiZWwiLCJzcGFuIiwiU0NNUFN0YXRlV3JhcHBlciIsIlNDTVBMb2FkTW9yZVJvdyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL0NvbnRleHRNZW50aW9uUG9wb3Zlci9Db250ZXh0TWVudGlvblBvcG92ZXIuc3R5bGVzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJ1xuXG4vKipcbiAqIEFuY2hvciBmaXhlZC1wb3NpdGlvbmVkIHF1ZSBlbnZ1ZWx2ZSBhbCBwb3BvdmVyIGN1YW5kbyBzZSBsbyBwb3J0YSBhXG4gKiBgZG9jdW1lbnQuYm9keWAuIEVsIGFuY2hvIGNvaW5jaWRlIGNvbiBlbCBpbnB1dDsgYGJvdHRvbWAgYW5jbGEgZWwgcGFuZWxcbiAqIHBvciBlbmNpbWEgZGVsIGJvcmRlIHN1cGVyaW9yIGRlbCBhbmNsYS9pbnB1dC5cbiAqL1xuaW1wb3J0IHsgTUFJQV9UQVNLX1BBTkVMX09WRVJMQVlfWl9JTkRFWCB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9tYWlhVGFza1BhbmVsWkluZGV4J1xuXG4vKiogQGRlcHJlY2F0ZWQgVXNhciBNQUlBX1RBU0tfUEFORUxfT1ZFUkxBWV9aX0lOREVYIGRlc2RlIGNvbnN0YW50cy9tYWlhVGFza1BhbmVsWkluZGV4ICovXG5leHBvcnQgY29uc3QgTUFJQV9UQVNLX1BBTkVMX01FTlRJT05fUE9QT1ZFUl9aX0lOREVYID0gTUFJQV9UQVNLX1BBTkVMX09WRVJMQVlfWl9JTkRFWFxuXG5leHBvcnQgeyBNQUlBX1RBU0tfUEFORUxfT1ZFUkxBWV9BVFRSLCBNQUlBX01FTlRJT05fUE9QT1ZFUl9BVFRSIH0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL21haWFUYXNrUGFuZWxPdXRzaWRlQ2xpY2snXG5cbmV4cG9ydCBjb25zdCBTQ01QQW5jaG9yID0gc3R5bGVkLmRpdjx7XG4gICRib3R0b206IG51bWJlclxuICAkbGVmdDogbnVtYmVyXG4gICR3aWR0aDogbnVtYmVyXG4gICR6SW5kZXg/OiBudW1iZXJcbn0+YFxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogJHsoeyAkYm90dG9tIH0pID0+IGAkeyRib3R0b219cHhgfTtcbiAgbGVmdDogJHsoeyAkbGVmdCB9KSA9PiBgJHskbGVmdH1weGB9O1xuICB3aWR0aDogJHsoeyAkd2lkdGggfSkgPT4gYCR7JHdpZHRofXB4YH07XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHotaW5kZXg6ICR7KHsgJHpJbmRleCB9KSA9PiAkekluZGV4ID8/IDEyMDB9O1xuYFxuXG5leHBvcnQgY29uc3QgU0NNUENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAxMnB4IDA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogOHB4O1xuICBoZWlnaHQ6IDI2NnB4O1xuICBtaW4taGVpZ2h0OiAyNjZweDtcbiAgbWF4LWhlaWdodDogMjY2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UwZTBlMDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzpcbiAgICAwIDFweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpLFxuICAgIDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4wNCk7XG4gIHotaW5kZXg6IDEwMDA7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01QU2VhcmNoUm93ID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMCAxNnB4IDRweDtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgZmxleC1zaHJpbms6IDA7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01QU2VhcmNoSW5wdXQgPSBzdHlsZWQuaW5wdXRgXG4gIHdpZHRoOiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiA4cHggMTJweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29yLWNvbG9yLWdyZXktMzAwLCAjZDlkOWQ5KTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBvdXRsaW5lOiBub25lO1xuICBmb250LWZhbWlseTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1mYW1pbHksICdXb3JrIFNhbnMnKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LXNpemUtc20sIDE0cHgpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29yLXR5cG9ncmFwaHktbGluZS1oZWlnaHQtMjAsIDIwcHgpO1xuICBjb2xvcjogdmFyKC0tY29yLWNvbG9yLWdyZXktOTAwLCAjMjAyMDIwKTtcblxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHZhcigtLWNvci1jb2xvci10ZXh0LXRlcnRpYXJ5LCAjODA4MDgwKTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29yLWNvbG9yLWdyZXktOTAwLCAjMjAyMDIwKTtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NNUFRhYnNSb3cgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiA0cHggMTZweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBnYXA6IDEwcHg7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIGZsZXgtc2hyaW5rOiAwO1xuYFxuXG5leHBvcnQgY29uc3QgU0NNUFRhYnNHcm91cCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMTZweDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTVBLZXlib2FyZEhpbnQgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01QVGFiID0gc3R5bGVkLmJ1dHRvbjx7ICRhY3RpdmU/OiBib29sZWFuIH0+YFxuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAwIDAgMnB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHsoeyAkYWN0aXZlIH0pID0+ICgkYWN0aXZlID8gJ3ZhcigtLWNvci1jb2xvci1ncmV5LTkwMCwgIzIwMjAyMCknIDogJ3RyYW5zcGFyZW50Jyl9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LWZhbWlseSwgJ1dvcmsgU2FucycpO1xuICBmb250LXNpemU6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtc2l6ZS1zbSwgMTRweCk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWNvci10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0LTIwLCAyMHB4KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWNvci10eXBvZ3JhcGh5LWxldHRlci1zcGFjaW5nLTAsIDApO1xuICBjb2xvcjogJHsoeyAkYWN0aXZlIH0pID0+ICgkYWN0aXZlID8gJ3ZhcigtLWNvci1jb2xvci1ncmV5LTkwMCwgIzIwMjAyMCknIDogJ3ZhcigtLWNvci1jb2xvci10ZXh0LXNlY29uZGFyeSwgIzY2NiknKX07XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTJzIGVhc2U7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvci1jb2xvci1ncmV5LTkwMCwgIzIwMjAyMCk7XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFNDTVBEaXZpZGVyV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDAgOHB4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAxMHB4O1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBmbGV4LXNocmluazogMDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTVBEaXZpZGVyID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb3ItY29sb3ItZ3JleS0zMDAsICNkOWQ5ZDkpO1xuYFxuXG5leHBvcnQgY29uc3QgU0NNUExpc3QgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgZ2FwOiA0cHg7XG4gIGZsZXg6IDEgMSAwO1xuICBtaW4taGVpZ2h0OiAwO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIHdpZHRoOiA2cHg7XG4gIH1cblxuICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogI2QwZDBkMDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFNDTVBSZWNlbnRzUm93ID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogNHB4IDE2cHg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAycHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01QUmVjZW50c1RpdGxlID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA4cHg7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01QUmVjZW50c0xhYmVsID0gc3R5bGVkLnNwYW5gXG4gIGNvbG9yOiB2YXIoLS1jb3ItY29sb3ItdGV4dC1zZWNvbmRhcnksICM0ZDRkNGQpO1xuICBmb250LWZhbWlseTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1mYW1pbHksICdXb3JrIFNhbnMnKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LXNpemUtc20sIDE0cHgpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1saW5lLWhlaWdodC0yMCwgMjBweCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1sZXR0ZXItc3BhY2luZy0wLCAwKTtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTVBTdGF0ZVdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMjRweCAxNnB4O1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBmbGV4OiAxIDEgMDtcbiAgbWluLWhlaWdodDogMDtcbiAgY29sb3I6IHZhcigtLWNvci1jb2xvci10ZXh0LXRlcnRpYXJ5LCAjODA4MDgwKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtZmFtaWx5LCAnV29yayBTYW5zJyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1zaXplLXNtLCAxNHB4KTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29yLXR5cG9ncmFwaHktbGluZS1oZWlnaHQtMjAsIDIwcHgpO1xuYFxuXG5leHBvcnQgY29uc3QgU0NNUExvYWRNb3JlUm93ID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIG1pbi1oZWlnaHQ6IDI0cHg7XG4gIHBhZGRpbmc6IDRweCAwIDhweDtcbmBcbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsTUFBTSxNQUFNLG1CQUFtQjs7QUFFdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVNDLCtCQUErQixRQUFRLHdDQUF3Qzs7QUFFeEY7QUFDQSxPQUFPLElBQU1DLHVDQUF1QyxHQUFHRCwrQkFBK0I7QUFFdEYsU0FBU0UsNEJBQTRCLEVBQUVDLHlCQUF5QixRQUFRLDhDQUE4QztBQUV0SCxPQUFPLElBQU1DLFVBQVUsR0FBR0wsTUFBTSxDQUFDTSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsNEZBT3hCLFVBQUFDLElBQUE7RUFBQSxJQUFHQyxPQUFPLEdBQUFELElBQUEsQ0FBUEMsT0FBTztFQUFBLFVBQUFDLE1BQUEsQ0FBVUQsT0FBTztBQUFBLENBQUksRUFDakMsVUFBQUUsS0FBQTtFQUFBLElBQUdDLEtBQUssR0FBQUQsS0FBQSxDQUFMQyxLQUFLO0VBQUEsVUFBQUYsTUFBQSxDQUFVRSxLQUFLO0FBQUEsQ0FBSSxFQUMxQixVQUFBQyxLQUFBO0VBQUEsSUFBR0MsTUFBTSxHQUFBRCxLQUFBLENBQU5DLE1BQU07RUFBQSxVQUFBSixNQUFBLENBQVVJLE1BQU07QUFBQSxDQUFJLEVBRTNCLFVBQUFDLEtBQUE7RUFBQSxJQUFHQyxPQUFPLEdBQUFELEtBQUEsQ0FBUEMsT0FBTztFQUFBLE9BQU9BLE9BQU8sYUFBUEEsT0FBTyxjQUFQQSxPQUFPLEdBQUksSUFBSTtBQUFBLEVBQzVDO0FBRUQsT0FBTyxJQUFNQyxhQUFhLEdBQUduQixNQUFNLENBQUNNLEdBQUcsQ0FBQUMs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
87
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJNQUlBX1RBU0tfUEFORUxfT1ZFUkxBWV9aX0lOREVYIiwiTUFJQV9UQVNLX1BBTkVMX01FTlRJT05fUE9QT1ZFUl9aX0lOREVYIiwiTUFJQV9UQVNLX1BBTkVMX09WRVJMQVlfQVRUUiIsIk1BSUFfTUVOVElPTl9QT1BPVkVSX0FUVFIiLCJTQ01QQW5jaG9yIiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJfcmVmIiwiJGJvdHRvbSIsImNvbmNhdCIsIl9yZWYyIiwiJGxlZnQiLCJfcmVmMyIsIiR3aWR0aCIsIl9yZWY0IiwiJHpJbmRleCIsIlNDTVBDb250YWluZXIiLCJTQ01QVGFic1JvdyIsIlNDTVBUYWJzR3JvdXAiLCJTQ01QS2V5Ym9hcmRIaW50IiwiU0NNUFRhYiIsImJ1dHRvbiIsIl9yZWY1IiwiJGFjdGl2ZSIsIl9yZWY2IiwiU0NNUERpdmlkZXJXcmFwcGVyIiwiU0NNUERpdmlkZXIiLCJTQ01QTGlzdCIsIlNDTVBSZWNlbnRzUm93IiwiU0NNUFJlY2VudHNUaXRsZSIsIlNDTVBSZWNlbnRzTGFiZWwiLCJzcGFuIiwiU0NNUFN0YXRlV3JhcHBlciIsIlNDTVBMb2FkTW9yZVJvdyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL0NvbnRleHRNZW50aW9uUG9wb3Zlci9Db250ZXh0TWVudGlvblBvcG92ZXIuc3R5bGVzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJ1xuXG4vKipcbiAqIEFuY2hvciBmaXhlZC1wb3NpdGlvbmVkIHF1ZSBlbnZ1ZWx2ZSBhbCBwb3BvdmVyIGN1YW5kbyBzZSBsbyBwb3J0YSBhXG4gKiBgZG9jdW1lbnQuYm9keWAuIEVsIGFuY2hvIGNvaW5jaWRlIGNvbiBlbCBpbnB1dDsgYGJvdHRvbWAgYW5jbGEgZWwgcGFuZWxcbiAqIHBvciBlbmNpbWEgZGVsIGJvcmRlIHN1cGVyaW9yIGRlbCBhbmNsYS9pbnB1dC5cbiAqL1xuaW1wb3J0IHsgTUFJQV9UQVNLX1BBTkVMX09WRVJMQVlfWl9JTkRFWCB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9tYWlhVGFza1BhbmVsWkluZGV4J1xuXG4vKiogQGRlcHJlY2F0ZWQgVXNhciBNQUlBX1RBU0tfUEFORUxfT1ZFUkxBWV9aX0lOREVYIGRlc2RlIGNvbnN0YW50cy9tYWlhVGFza1BhbmVsWkluZGV4ICovXG5leHBvcnQgY29uc3QgTUFJQV9UQVNLX1BBTkVMX01FTlRJT05fUE9QT1ZFUl9aX0lOREVYID0gTUFJQV9UQVNLX1BBTkVMX09WRVJMQVlfWl9JTkRFWFxuXG5leHBvcnQgeyBNQUlBX1RBU0tfUEFORUxfT1ZFUkxBWV9BVFRSLCBNQUlBX01FTlRJT05fUE9QT1ZFUl9BVFRSIH0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL21haWFUYXNrUGFuZWxPdXRzaWRlQ2xpY2snXG5cbmV4cG9ydCBjb25zdCBTQ01QQW5jaG9yID0gc3R5bGVkLmRpdjx7XG4gICRib3R0b206IG51bWJlclxuICAkbGVmdDogbnVtYmVyXG4gICR3aWR0aDogbnVtYmVyXG4gICR6SW5kZXg/OiBudW1iZXJcbn0+YFxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogJHsoeyAkYm90dG9tIH0pID0+IGAkeyRib3R0b219cHhgfTtcbiAgbGVmdDogJHsoeyAkbGVmdCB9KSA9PiBgJHskbGVmdH1weGB9O1xuICB3aWR0aDogJHsoeyAkd2lkdGggfSkgPT4gYCR7JHdpZHRofXB4YH07XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHotaW5kZXg6ICR7KHsgJHpJbmRleCB9KSA9PiAkekluZGV4ID8/IDEyMDB9O1xuYFxuXG5leHBvcnQgY29uc3QgU0NNUENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAxMnB4IDA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogOHB4O1xuICBoZWlnaHQ6IDI2NnB4O1xuICBtaW4taGVpZ2h0OiAyNjZweDtcbiAgbWF4LWhlaWdodDogMjY2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UwZTBlMDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzpcbiAgICAwIDFweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpLFxuICAgIDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4wNCk7XG4gIHotaW5kZXg6IDEwMDA7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01QVGFic1JvdyA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDRweCAxNnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogMTBweDtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgZmxleC1zaHJpbms6IDA7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01QVGFic0dyb3VwID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxNnB4O1xuYFxuXG5leHBvcnQgY29uc3QgU0NNUEtleWJvYXJkSGludCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTVBUYWIgPSBzdHlsZWQuYnV0dG9uPHsgJGFjdGl2ZT86IGJvb2xlYW4gfT5gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDAgMCAycHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDEwcHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkeyh7ICRhY3RpdmUgfSkgPT4gKCRhY3RpdmUgPyAndmFyKC0tY29yLWNvbG9yLWdyZXktOTAwLCAjMjAyMDIwKScgOiAndHJhbnNwYXJlbnQnKX07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtZmFtaWx5LCAnV29yayBTYW5zJyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1zaXplLXNtLCAxNHB4KTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29yLXR5cG9ncmFwaHktbGluZS1oZWlnaHQtMjAsIDIwcHgpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tY29yLXR5cG9ncmFwaHktbGV0dGVyLXNwYWNpbmctMCwgMCk7XG4gIGNvbG9yOiAkeyh7ICRhY3RpdmUgfSkgPT4gKCRhY3RpdmUgPyAndmFyKC0tY29yLWNvbG9yLWdyZXktOTAwLCAjMjAyMDIwKScgOiAndmFyKC0tY29yLWNvbG9yLXRleHQtc2Vjb25kYXJ5LCAjNjY2KScpfTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xMnMgZWFzZTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29yLWNvbG9yLWdyZXktOTAwLCAjMjAyMDIwKTtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NNUERpdmlkZXJXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMCA4cHg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IDEwcHg7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIGZsZXgtc2hyaW5rOiAwO1xuYFxuXG5leHBvcnQgY29uc3QgU0NNUERpdmlkZXIgPSBzdHlsZWQuZGl2YFxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvci1jb2xvci1ncmV5LTMwMCwgI2Q5ZDlkOSk7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01QTGlzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBnYXA6IDRweDtcbiAgZmxleDogMSAxIDA7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcblxuICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6IDZweDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBiYWNrZ3JvdW5kOiAjZDBkMGQwO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NNUFJlY2VudHNSb3cgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiA0cHggMTZweDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IDJweDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTVBSZWNlbnRzVGl0bGUgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDhweDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTVBSZWNlbnRzTGFiZWwgPSBzdHlsZWQuc3BhbmBcbiAgY29sb3I6IHZhcigtLWNvci1jb2xvci10ZXh0LXNlY29uZGFyeSwgIzRkNGQ0ZCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LWZhbWlseSwgJ1dvcmsgU2FucycpO1xuICBmb250LXNpemU6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtc2l6ZS1zbSwgMTRweCk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWNvci10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0LTIwLCAyMHB4KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWNvci10eXBvZ3JhcGh5LWxldHRlci1zcGFjaW5nLTAsIDApO1xuYFxuXG5leHBvcnQgY29uc3QgU0NNUFN0YXRlV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAyNHB4IDE2cHg7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIGZsZXg6IDEgMSAwO1xuICBtaW4taGVpZ2h0OiAwO1xuICBjb2xvcjogdmFyKC0tY29yLWNvbG9yLXRleHQtdGVydGlhcnksICM4MDgwODApO1xuICBmb250LWZhbWlseTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1mYW1pbHksICdXb3JrIFNhbnMnKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LXNpemUtc20sIDE0cHgpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1saW5lLWhlaWdodC0yMCwgMjBweCk7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01QTG9hZE1vcmVSb3cgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgbWluLWhlaWdodDogMjRweDtcbiAgcGFkZGluZzogNHB4IDAgOHB4O1xuYFxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxNQUFNLE1BQU0sbUJBQW1COztBQUV0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBU0MsK0JBQStCLFFBQVEsd0NBQXdDOztBQUV4RjtBQUNBLE9BQU8sSUFBTUMsdUNBQXVDLEdBQUdELCtCQUErQjtBQUV0RixTQUFTRSw0QkFBNEIsRUFBRUMseUJBQXlCLFFBQVEsOENBQThDO0FBRXRILE9BQU8sSUFBTUMsVUFBVSxHQUFHTCxNQUFNLENBQUNNLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSw0RkFPeEIsVUFBQUMsSUFBQTtFQUFBLElBQUdDLE9BQU8sR0FBQUQsSUFBQSxDQUFQQyxPQUFPO0VBQUEsVUFBQUMsTUFBQSxDQUFVRCxPQUFPO0FBQUEsQ0FBSSxFQUNqQyxVQUFBRSxLQUFBO0VBQUEsSUFBR0MsS0FBSyxHQUFBRCxLQUFBLENBQUxDLEtBQUs7RUFBQSxVQUFBRixNQUFBLENBQVVFLEtBQUs7QUFBQSxDQUFJLEVBQzFCLFVBQUFDLEtBQUE7RUFBQSxJQUFHQyxNQUFNLEdBQUFELEtBQUEsQ0FBTkMsTUFBTTtFQUFBLFVBQUFKLE1BQUEsQ0FBVUksTUFBTTtBQUFBLENBQUksRUFFM0IsVUFBQUMsS0FBQTtFQUFBLElBQUdDLE9BQU8sR0FBQUQsS0FBQSxDQUFQQyxPQUFPO0VBQUEsT0FBT0EsT0FBTyxhQUFQQSxPQUFPLGNBQVBBLE9BQU8sR0FBSSxJQUFJO0FBQUEsRUFDNUM7QUFFRCxPQUFPLElBQU1DLGFBQWEsR0FBR25CLE1BQU0sQ0FBQ00sR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLGtUQWtCdEM7QUFFRCxPQUFPLElBQU1XLFdBQVcsR0FBR3BCLE1BQU0sQ0FBQ00sR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLGlJQVFwQztBQUVELE9BQU8sSUFBTVksYUFBYSxHQUFHckIsTUFBTSxDQUFDTSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsaURBSXRDO0FBRUQsT0FBTyxJQUFNYSxnQkFBZ0IsR0FBR3RCLE1BQU0sQ0FBQ00sR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLDZIQVF6QztBQUVELE9BQU8sSUFBTWMsT0FBTyxHQUFHdkIsTUFBTSxDQUFDd0IsTUFBTSxDQUFBakIsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSw0ZkFRUCxVQUFBZ0IsS0FBQTtFQUFBLElBQUdDLE9BQU8sR0FBQUQsS0FBQSxDQUFQQyxPQUFPO0VBQUEsT0FBUUEsT0FBTyxHQUFHLG9DQUFvQyxHQUFHLGFBQWE7QUFBQSxDQUFDLEVBUW5HLFVBQUFDLEtBQUE7RUFBQSxJQUFHRCxPQUFPLEdBQUFDLEtBQUEsQ0FBUEQsT0FBTztFQUFBLE9BQVFBLE9BQU8sR0FBRyxvQ0FBb0MsR0FBRyx1Q0FBdUM7QUFBQSxDQUFDLENBTXJIO0FBRUQsT0FBTyxJQUFNRSxrQkFBa0IsR0FBRzVCLE1BQU0sQ0FBQ00sR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLDBIQVEzQztBQUVELE9BQU8sSUFBTW9CLFdBQVcsR0FBRzdCLE1BQU0sQ0FBQ00sR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLDJFQUlwQztBQUVELE9BQU8sSUFBTXFCLFFBQVEsR0FBRzlCLE1BQU0sQ0FBQ00sR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLDJTQXVCakM7QUFFRCxPQUFPLElBQU1zQixjQUFjLEdBQUcvQixNQUFNLENBQUNNLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxxS0FVdkM7QUFFRCxPQUFPLElBQU11QixnQkFBZ0IsR0FBR2hDLE1BQU0sQ0FBQ00sR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLDBEQUt6QztBQUVELE9BQU8sSUFBTXdCLGdCQUFnQixHQUFHakMsTUFBTSxDQUFDa0MsSUFBSSxDQUFBM0IsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxrVEFRMUM7QUFFRCxPQUFPLElBQU0wQixnQkFBZ0IsR0FBR25DLE1BQU0sQ0FBQ00sR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLG1ZQWV6QztBQUVELE9BQU8sSUFBTTJCLGVBQWUsR0FBR3BDLE1BQU0sQ0FBQ00sR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLG9IQU94QyIsImlnbm9yZUxpc3QiOltdfQ==