@projectcor/maia-components 2.11.10-5 → 2.11.10-7
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.
- package/lib/components/atoms/Chip/Chip.js +3 -4
- package/lib/components/atoms/Chip/styles.js +3 -3
- package/lib/components/atoms/ErrorSearchProjects/ErrorSearchProjects.js +3 -5
- package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.js +34 -54
- package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.js +47 -13
- package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.styles.js +16 -5
- package/lib/components/atoms/ProjectSelector/ProjectSelector.js +193 -56
- package/lib/components/index.js +1 -2
- package/lib/components/molecules/ChatAIContent/ChatAIContent.js +11 -31
- package/lib/components/molecules/ChatAIHome/ChatAIHome.js +3 -2
- package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +1 -1
- package/lib/components/molecules/ChatAIMessages/newStyles.js +2 -2
- package/lib/components/molecules/ChatAIModal/ChatAIModal.js +11 -29
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +3 -6
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +3 -5
- package/lib/components/molecules/ChatAIModal/constants.js +2 -6
- package/lib/components/molecules/ChatFooter/ChatFooter.js +10 -23
- package/lib/components/molecules/ChatFooter/styles.js +1 -5
- package/lib/components/organisms/ChatAI/ChatAI.js +3 -11
- package/lib/constants/config.js +2 -3
- package/lib/context/global-context.js +1 -1
- package/lib/hooks/useChatManager/useChatManager.interface.js +1 -1
- package/lib/hooks/useChatManager/useChatManager.js +40 -62
- package/lib/hooks/useChatMessages/useChatMessages.js +38 -72
- package/lib/hooks/useFrequentlyAskedQuestions.js +53 -68
- package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +4 -6
- package/lib/hooks/useProjectSummaryConfig.js +7 -35
- package/lib/lang/br/index.js +2 -25
- package/lib/lang/en/index.js +2 -25
- package/lib/lang/es/index.js +2 -25
- package/lib/lang/fr/index.js +2 -21
- package/lib/services/maia/Agents/getAgents.js +4 -6
- package/lib/services/maia/Chats/getChatMessages.js +14 -27
- package/lib/services/maia/Chats/getChatsByUserId.js +1 -1
- package/lib/services/maia/Orchestrator/orchestrator.js +4 -6
- package/lib/services/maia/index.js +2 -4
- package/lib/services/utils/mapChatMessages.js +4 -12
- package/lib/store/chatsStore.types.js +1 -1
- package/lib/store/index.js +1 -2
- package/lib/types/Chat.js +1 -1
- package/lib/types/FrequentlyAskedQuestion.js +1 -1
- package/lib/types/agent.js +1 -1
- package/package.json +1 -1
- package/lib/components/atoms/ChatClientSelector/ChatClientSelector.js +0 -69
- package/lib/components/atoms/ChatClientSelector/index.js +0 -2
- package/lib/components/atoms/EntitySelector/EntitySelector.js +0 -181
- package/lib/components/atoms/EntitySelector/EntitySelector.styles.js +0 -57
- package/lib/components/atoms/EntitySelector/index.js +0 -2
- package/lib/components/molecules/ChatAIClientSelector/ChatAIClientSelector.js +0 -56
- package/lib/components/molecules/ChatAIClientSelector/index.js +0 -2
- package/lib/components/molecules/ChatFooter/ChatFooterFaqs.js +0 -156
- package/lib/components/molecules/ChatFooter/ChatFooterFaqs.styles.js +0 -51
- package/lib/components/organisms/ClientAIButton/ClientAIButton.js +0 -26
- package/lib/components/organisms/ClientAIButton/index.js +0 -2
- package/lib/hooks/useRecentClientsSearch.js +0 -176
- package/lib/services/maia/RecentClients/getRecentClients.js +0 -43
- package/lib/services/maia/RecentClients/index.js +0 -6
- package/lib/store/faqsStore.types.js +0 -2
- package/lib/store/useFaqsStore.js +0 -27
- package/lib/types/Client.js +0 -2
|
@@ -1,77 +1,214 @@
|
|
|
1
1
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
|
-
import {
|
|
2
|
+
import { useRef, useState, useEffect } from 'react';
|
|
3
|
+
import { ChevronRight } from '@projectcor/icons/lib/components/ChevronRight';
|
|
4
|
+
import { Search } from '@projectcor/icons/lib/components/Search';
|
|
5
|
+
import pallete from '@projectcor/theme/lib/base/colors';
|
|
3
6
|
import { useTranslation } from 'react-i18next';
|
|
4
|
-
import {
|
|
7
|
+
import { SCPSInput, SCPSWrapper, SCPSContainer, SCPSSelectContainer, SCPSResultContainer, SCPSRecentTitle, SCPSRecentList, SCPSRecentItem, SCPSRecentItemInfo, SCPSRecentItemClient, SCPSRecentItemTitle, SCPSRecentItemIcon, SCPSProjectsList } from './ProjectSelector.styles';
|
|
5
8
|
import { useProjectSearch } from '../../../hooks/useProjectSearch';
|
|
6
9
|
import { EVENTS, useEvent } from '../../../hooks/useEvent';
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
return {
|
|
12
|
-
id: project.id,
|
|
13
|
-
primary: project.title || withoutTitle,
|
|
14
|
-
secondary: (_project$client$name = (_project$client = project.client) === null || _project$client === void 0 ? void 0 : _project$client.name) !== null && _project$client$name !== void 0 ? _project$client$name : withoutClient
|
|
15
|
-
};
|
|
16
|
-
};
|
|
10
|
+
import { LoaderSearchProjects } from '../LoadingSearchProjects';
|
|
11
|
+
import { ErrorSearchProjects } from '../ErrorSearchProjects';
|
|
12
|
+
import { EmptySearchProjects } from '../EmptySearchProjects';
|
|
13
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
17
14
|
export var ProjectSelector = function ProjectSelector(_ref) {
|
|
18
15
|
var onProjectSelected = _ref.onProjectSelected;
|
|
19
|
-
var
|
|
16
|
+
var inputRef = useRef(null);
|
|
17
|
+
var _useTranslation = useTranslation(['project_selector_section']),
|
|
20
18
|
t = _useTranslation.t;
|
|
21
19
|
var eventAmplitude = useEvent();
|
|
22
|
-
var _useState = useState(''),
|
|
23
|
-
_useState2 = _slicedToArray(_useState, 2),
|
|
24
|
-
searchValue = _useState2[0],
|
|
25
|
-
setSearchValue = _useState2[1];
|
|
26
20
|
var _useProjectSearch = useProjectSearch(),
|
|
27
21
|
fetchRecentProjects = _useProjectSearch.fetchRecentProjects,
|
|
28
22
|
recentProjectsLoading = _useProjectSearch.recentProjectsLoading,
|
|
29
23
|
recentProjectsError = _useProjectSearch.recentProjectsError,
|
|
30
24
|
recentProjects = _useProjectSearch.recentProjects,
|
|
31
25
|
updateSearchValue = _useProjectSearch.updateSearchValue;
|
|
32
|
-
var
|
|
33
|
-
|
|
34
|
-
|
|
26
|
+
var _useState = useState(''),
|
|
27
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
28
|
+
searchValue = _useState2[0],
|
|
29
|
+
setSearchValue = _useState2[1];
|
|
30
|
+
var _useState3 = useState(false),
|
|
31
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
32
|
+
isProjectSelected = _useState4[0],
|
|
33
|
+
setIsProjectSelected = _useState4[1];
|
|
34
|
+
useEffect(function () {
|
|
35
|
+
fetchRecentProjects();
|
|
36
|
+
eventAmplitude(EVENTS.aiChatSearchContextOpen);
|
|
37
|
+
}, [fetchRecentProjects, eventAmplitude]);
|
|
38
|
+
var handleClickOutside = function handleClickOutside(e) {
|
|
39
|
+
if (inputRef.current) {
|
|
40
|
+
var target = e.target;
|
|
41
|
+
var wrapper = inputRef.current.closest('#project_selector');
|
|
42
|
+
if (wrapper && !wrapper.contains(target)) {
|
|
43
|
+
// No cerramos, solo limpiamos si es necesario
|
|
44
|
+
}
|
|
45
|
+
}
|
|
35
46
|
};
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}, [recentProjects, t]);
|
|
41
|
-
var translations = useMemo(function () {
|
|
42
|
-
return {
|
|
43
|
-
placeholder: t('projectSelector.placeholder'),
|
|
44
|
-
recentTitle: t('projectSelector.recentProjects'),
|
|
45
|
-
searching: t('projectSelector.searchingProjects'),
|
|
46
|
-
empty: t('projectSelector.emptyState'),
|
|
47
|
-
error: t('projectSelector.errorMessage'),
|
|
48
|
-
withoutSecondary: t('projectSelector.withoutClient')
|
|
47
|
+
useEffect(function () {
|
|
48
|
+
document.addEventListener('mousedown', handleClickOutside);
|
|
49
|
+
return function () {
|
|
50
|
+
document.removeEventListener('mousedown', handleClickOutside);
|
|
49
51
|
};
|
|
50
|
-
}, [
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
52
|
+
}, []);
|
|
53
|
+
useEffect(function () {
|
|
54
|
+
if (!isProjectSelected) {
|
|
55
|
+
var timer = setTimeout(function () {
|
|
56
|
+
var _inputRef$current;
|
|
57
|
+
(_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.focus();
|
|
58
|
+
}, 0);
|
|
59
|
+
return function () {
|
|
60
|
+
return clearTimeout(timer);
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
return undefined;
|
|
64
|
+
}, [isProjectSelected]);
|
|
65
|
+
var handlers = {
|
|
66
|
+
handleChangeInput: function handleChangeInput(e) {
|
|
67
|
+
var searchInputValue = e.target.value;
|
|
68
|
+
setSearchValue(searchInputValue);
|
|
69
|
+
updateSearchValue(searchInputValue);
|
|
70
|
+
},
|
|
71
|
+
handleProjectSelected: function handleProjectSelected(project) {
|
|
72
|
+
setIsProjectSelected(true);
|
|
73
|
+
if (onProjectSelected) {
|
|
74
|
+
onProjectSelected(project);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
};
|
|
78
|
+
var filterProjects = recentProjects === null || recentProjects === void 0 ? void 0 : recentProjects.filter(function (project) {
|
|
79
|
+
var _project$client;
|
|
80
|
+
if (!searchValue.trim()) return true;
|
|
81
|
+
var projectName = project.title || '';
|
|
82
|
+
var clientName = ((_project$client = project.client) === null || _project$client === void 0 ? void 0 : _project$client.name) || '';
|
|
83
|
+
return projectName.toLowerCase().includes(searchValue.toLowerCase()) || clientName.toLowerCase().includes(searchValue.toLowerCase());
|
|
84
|
+
});
|
|
85
|
+
var showRecentProjects = !searchValue.trim() && !isProjectSelected;
|
|
86
|
+
var showSearchResults = searchValue.trim() && !isProjectSelected;
|
|
87
|
+
var renderContent = function renderContent() {
|
|
88
|
+
// Si hay búsqueda activa, mostrar resultados de búsqueda
|
|
89
|
+
if (showSearchResults) {
|
|
90
|
+
if (recentProjectsLoading) {
|
|
91
|
+
return /*#__PURE__*/_jsx(LoaderSearchProjects, {
|
|
92
|
+
text: t('projectSelector.searchingProjects')
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
if (recentProjectsError) {
|
|
96
|
+
return /*#__PURE__*/_jsx(ErrorSearchProjects, {});
|
|
97
|
+
}
|
|
98
|
+
if (filterProjects && filterProjects.length > 0) {
|
|
99
|
+
return /*#__PURE__*/_jsx(SCPSProjectsList, {
|
|
100
|
+
children: filterProjects.map(function (project) {
|
|
101
|
+
var _project$client$name, _project$client2;
|
|
102
|
+
return /*#__PURE__*/_jsxs(SCPSRecentItem, {
|
|
103
|
+
onClick: function onClick() {
|
|
104
|
+
var resultType = 'custom';
|
|
105
|
+
eventAmplitude(EVENTS.aiChatSearchContextSelectResult, {
|
|
106
|
+
result_type: resultType
|
|
107
|
+
});
|
|
108
|
+
handlers.handleProjectSelected(project);
|
|
109
|
+
},
|
|
110
|
+
children: [/*#__PURE__*/_jsxs(SCPSRecentItemInfo, {
|
|
111
|
+
children: [/*#__PURE__*/_jsx(SCPSRecentItemClient, {
|
|
112
|
+
children: (_project$client$name = (_project$client2 = project.client) === null || _project$client2 === void 0 ? void 0 : _project$client2.name) !== null && _project$client$name !== void 0 ? _project$client$name : t('projectSelector.withoutClient')
|
|
113
|
+
}), /*#__PURE__*/_jsx(SCPSRecentItemTitle, {
|
|
114
|
+
dangerouslySetInnerHTML: {
|
|
115
|
+
__html: project.title || t('projectSelector.withoutTitle')
|
|
116
|
+
}
|
|
117
|
+
})]
|
|
118
|
+
}), /*#__PURE__*/_jsx(SCPSRecentItemIcon, {
|
|
119
|
+
children: /*#__PURE__*/_jsx(ChevronRight, {
|
|
120
|
+
width: "16px",
|
|
121
|
+
height: "16px",
|
|
122
|
+
color: pallete.colors.secondary
|
|
123
|
+
})
|
|
124
|
+
})]
|
|
125
|
+
}, project.id);
|
|
126
|
+
})
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
return /*#__PURE__*/_jsx(EmptySearchProjects, {
|
|
130
|
+
message: t('projectSelector.emptyState'),
|
|
131
|
+
searchValue: searchValue
|
|
58
132
|
});
|
|
59
|
-
onProjectSelected === null || onProjectSelected === void 0 || onProjectSelected(project);
|
|
60
133
|
}
|
|
134
|
+
|
|
135
|
+
// Si no hay búsqueda, mostrar proyectos recientes
|
|
136
|
+
if (showRecentProjects) {
|
|
137
|
+
if (recentProjectsLoading) {
|
|
138
|
+
return /*#__PURE__*/_jsx(LoaderSearchProjects, {
|
|
139
|
+
text: t('projectSelector.searchingProjects')
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
if (recentProjectsError) {
|
|
143
|
+
return /*#__PURE__*/_jsx(ErrorSearchProjects, {});
|
|
144
|
+
}
|
|
145
|
+
if (recentProjects && recentProjects.length > 0) {
|
|
146
|
+
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
147
|
+
children: [/*#__PURE__*/_jsx(SCPSRecentTitle, {
|
|
148
|
+
children: t('projectSelector.recentProjects')
|
|
149
|
+
}), /*#__PURE__*/_jsx(SCPSRecentList, {
|
|
150
|
+
$recentProjects: true,
|
|
151
|
+
children: recentProjects.map(function (project) {
|
|
152
|
+
var _project$client$name2, _project$client3;
|
|
153
|
+
return /*#__PURE__*/_jsxs(SCPSRecentItem, {
|
|
154
|
+
onClick: function onClick() {
|
|
155
|
+
var resultType = 'recent';
|
|
156
|
+
eventAmplitude(EVENTS.aiChatSearchContextSelectResult, {
|
|
157
|
+
result_type: resultType
|
|
158
|
+
});
|
|
159
|
+
handlers.handleProjectSelected(project);
|
|
160
|
+
},
|
|
161
|
+
children: [/*#__PURE__*/_jsxs(SCPSRecentItemInfo, {
|
|
162
|
+
children: [/*#__PURE__*/_jsx(SCPSRecentItemClient, {
|
|
163
|
+
children: (_project$client$name2 = (_project$client3 = project.client) === null || _project$client3 === void 0 ? void 0 : _project$client3.name) !== null && _project$client$name2 !== void 0 ? _project$client$name2 : t('projectSelector.withoutClient')
|
|
164
|
+
}), /*#__PURE__*/_jsx(SCPSRecentItemTitle, {
|
|
165
|
+
dangerouslySetInnerHTML: {
|
|
166
|
+
__html: project.title || t('projectSelector.withoutTitle')
|
|
167
|
+
}
|
|
168
|
+
})]
|
|
169
|
+
}), /*#__PURE__*/_jsx(SCPSRecentItemIcon, {
|
|
170
|
+
children: /*#__PURE__*/_jsx(ChevronRight, {
|
|
171
|
+
width: "16px",
|
|
172
|
+
height: "16px",
|
|
173
|
+
color: pallete.colors.secondary
|
|
174
|
+
})
|
|
175
|
+
})]
|
|
176
|
+
}, project.id);
|
|
177
|
+
})
|
|
178
|
+
})]
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
// Si no hay proyectos recientes y no está cargando ni hay error
|
|
183
|
+
return null;
|
|
184
|
+
}
|
|
185
|
+
return null;
|
|
61
186
|
};
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
187
|
+
return /*#__PURE__*/_jsx(SCPSContainer, {
|
|
188
|
+
id: "project_selector",
|
|
189
|
+
children: !isProjectSelected && /*#__PURE__*/_jsxs(_Fragment, {
|
|
190
|
+
children: [/*#__PURE__*/_jsx(SCPSWrapper, {
|
|
191
|
+
children: /*#__PURE__*/_jsx(SCPSSelectContainer, {
|
|
192
|
+
children: /*#__PURE__*/_jsxs(SCPSResultContainer, {
|
|
193
|
+
children: [/*#__PURE__*/_jsx(Search, {
|
|
194
|
+
width: "16px",
|
|
195
|
+
height: "16px",
|
|
196
|
+
color: pallete.colors.secondary
|
|
197
|
+
}), /*#__PURE__*/_jsx(SCPSInput, {
|
|
198
|
+
value: searchValue,
|
|
199
|
+
onChange: handlers.handleChangeInput,
|
|
200
|
+
ref: inputRef,
|
|
201
|
+
placeholder: t('projectSelector.placeholder')
|
|
202
|
+
})]
|
|
203
|
+
})
|
|
204
|
+
})
|
|
205
|
+
}), /*#__PURE__*/_jsx("div", {
|
|
206
|
+
style: {
|
|
207
|
+
width: '100%'
|
|
208
|
+
},
|
|
209
|
+
children: renderContent()
|
|
210
|
+
})]
|
|
211
|
+
})
|
|
75
212
|
});
|
|
76
213
|
};
|
|
77
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VNZW1vIiwidXNlU3RhdGUiLCJ1c2VFZmZlY3QiLCJ1c2VUcmFuc2xhdGlvbiIsIkVudGl0eVNlbGVjdG9yIiwidXNlUHJvamVjdFNlYXJjaCIsIkVWRU5UUyIsInVzZUV2ZW50IiwiU0VDVElPTlMiLCJqc3giLCJfanN4IiwibWFwUHJvamVjdFRvRW50aXR5SXRlbSIsInByb2plY3QiLCJ3aXRob3V0Q2xpZW50Iiwid2l0aG91dFRpdGxlIiwiX3Byb2plY3QkY2xpZW50JG5hbWUiLCJfcHJvamVjdCRjbGllbnQiLCJpZCIsInByaW1hcnkiLCJ0aXRsZSIsInNlY29uZGFyeSIsImNsaWVudCIsIm5hbWUiLCJQcm9qZWN0U2VsZWN0b3IiLCJfcmVmIiwib25Qcm9qZWN0U2VsZWN0ZWQiLCJfdXNlVHJhbnNsYXRpb24iLCJwcm9qZWN0U2VsZWN0b3IiLCJ0IiwiZXZlbnRBbXBsaXR1ZGUiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJzZWFyY2hWYWx1ZSIsInNldFNlYXJjaFZhbHVlIiwiX3VzZVByb2plY3RTZWFyY2giLCJmZXRjaFJlY2VudFByb2plY3RzIiwicmVjZW50UHJvamVjdHNMb2FkaW5nIiwicmVjZW50UHJvamVjdHNFcnJvciIsInJlY2VudFByb2plY3RzIiwidXBkYXRlU2VhcmNoVmFsdWUiLCJoYW5kbGVTZWFyY2hDaGFuZ2UiLCJ2YWx1ZSIsImVudGl0eUl0ZW1zIiwibWFwIiwicCIsInRyYW5zbGF0aW9ucyIsInBsYWNlaG9sZGVyIiwicmVjZW50VGl0bGUiLCJzZWFyY2hpbmciLCJlbXB0eSIsImVycm9yIiwid2l0aG91dFNlY29uZGFyeSIsImhhbmRsZUl0ZW1TZWxlY3RlZCIsIml0ZW0iLCJmaW5kIiwiU3RyaW5nIiwiYWlDaGF0U2VhcmNoQ29udGV4dFNlbGVjdFJlc3VsdCIsInJlc3VsdF90eXBlIiwiYWlDaGF0U2VhcmNoQ29udGV4dE9wZW4iLCJpdGVtcyIsImxvYWRpbmciLCJvblNlYXJjaENoYW5nZSIsImZldGNoUmVjZW50Iiwib25JdGVtU2VsZWN0ZWQiLCJjb250YWluZXJJZCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL1Byb2plY3RTZWxlY3Rvci9Qcm9qZWN0U2VsZWN0b3IudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZDLCB1c2VNZW1vLCB1c2VTdGF0ZSwgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ3JlYWN0LWkxOG5leHQnXG5pbXBvcnQgeyBFbnRpdHlTZWxlY3RvciwgRW50aXR5U2VsZWN0b3JJdGVtIH0gZnJvbSAnLi4vRW50aXR5U2VsZWN0b3IvRW50aXR5U2VsZWN0b3InXG5pbXBvcnQgeyB1c2VQcm9qZWN0U2VhcmNoLCBQcm9qZWN0U2V0dGVyIH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlUHJvamVjdFNlYXJjaCdcbmltcG9ydCB7IEVWRU5UUywgdXNlRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VFdmVudCdcbmltcG9ydCB7IFNFQ1RJT05TIH0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL2NvbmZpZydcblxudHlwZSBQcm9qZWN0U2VsZWN0b3JQcm9wcyA9IHtcbiAgb25Qcm9qZWN0U2VsZWN0ZWQ/OiAocHJvamVjdDogUHJvamVjdFNldHRlcikgPT4gdm9pZFxufVxuXG5jb25zdCBtYXBQcm9qZWN0VG9FbnRpdHlJdGVtID0gKFxuICBwcm9qZWN0OiBQcm9qZWN0U2V0dGVyLFxuICB3aXRob3V0Q2xpZW50OiBzdHJpbmcsXG4gIHdpdGhvdXRUaXRsZTogc3RyaW5nXG4pOiBFbnRpdHlTZWxlY3Rvckl0ZW0gPT4gKHtcbiAgaWQ6IHByb2plY3QuaWQsXG4gIHByaW1hcnk6IHByb2plY3QudGl0bGUgfHwgd2l0aG91dFRpdGxlLFxuICBzZWNvbmRhcnk6IHByb2plY3QuY2xpZW50Py5uYW1lID8/IHdpdGhvdXRDbGllbnQsXG59KVxuXG5leHBvcnQgY29uc3QgUHJvamVjdFNlbGVjdG9yOiBGQzxQcm9qZWN0U2VsZWN0b3JQcm9wcz4gPSAoeyBvblByb2plY3RTZWxlY3RlZCB9KSA9PiB7XG4gIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oW1NFQ1RJT05TLnByb2plY3RTZWxlY3Rvcl0pXG4gIGNvbnN0IGV2ZW50QW1wbGl0dWRlID0gdXNlRXZlbnQoKVxuICBjb25zdCBbc2VhcmNoVmFsdWUsIHNldFNlYXJjaFZhbHVlXSA9IHVzZVN0YXRlKCcnKVxuXG4gIGNvbnN0IHsgZmV0Y2hSZWNlbnRQcm9qZWN0cywgcmVjZW50UHJvamVjdHNMb2FkaW5nLCByZWNlbnRQcm9qZWN0c0Vycm9yLCByZWNlbnRQcm9qZWN0cywgdXBkYXRlU2VhcmNoVmFsdWUgfSA9XG4gICAgdXNlUHJvamVjdFNlYXJjaCgpXG5cbiAgY29uc3QgaGFuZGxlU2VhcmNoQ2hhbmdlID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICBzZXRTZWFyY2hWYWx1ZSh2YWx1ZSlcbiAgICB1cGRhdGVTZWFyY2hWYWx1ZSh2YWx1ZSlcbiAgfVxuXG4gIGNvbnN0IGVudGl0eUl0ZW1zID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgKHJlY2VudFByb2plY3RzIHx8IFtdKS5tYXAocCA9PlxuICAgICAgICBtYXBQcm9qZWN0VG9FbnRpdHlJdGVtKHAsIHQoJ3Byb2plY3RTZWxlY3Rvci53aXRob3V0Q2xpZW50JyksIHQoJ3Byb2plY3RTZWxlY3Rvci53aXRob3V0VGl0bGUnKSlcbiAgICAgICksXG4gICAgW3JlY2VudFByb2plY3RzLCB0XVxuICApXG5cbiAgY29uc3QgdHJhbnNsYXRpb25zID0gdXNlTWVtbyhcbiAgICAoKSA9PiAoe1xuICAgICAgcGxhY2Vob2xkZXI6IHQoJ3Byb2plY3RTZWxlY3Rvci5wbGFjZWhvbGRlcicpLFxuICAgICAgcmVjZW50VGl0bGU6IHQoJ3Byb2plY3RTZWxlY3Rvci5yZWNlbnRQcm9qZWN0cycpLFxuICAgICAgc2VhcmNoaW5nOiB0KCdwcm9qZWN0U2VsZWN0b3Iuc2VhcmNoaW5nUHJvamVjdHMnKSxcbiAgICAgIGVtcHR5OiB0KCdwcm9qZWN0U2VsZWN0b3IuZW1wdHlTdGF0ZScpLFxuICAgICAgZXJyb3I6IHQoJ3Byb2plY3RTZWxlY3Rvci5lcnJvck1lc3NhZ2UnKSxcbiAgICAgIHdpdGhvdXRTZWNvbmRhcnk6IHQoJ3Byb2plY3RTZWxlY3Rvci53aXRob3V0Q2xpZW50JyksXG4gICAgfSksXG4gICAgW3RdXG4gIClcblxuICBjb25zdCBoYW5kbGVJdGVtU2VsZWN0ZWQgPSAoaXRlbTogRW50aXR5U2VsZWN0b3JJdGVtKSA9PiB7XG4gICAgY29uc3QgcHJvamVjdCA9IHJlY2VudFByb2plY3RzPy5maW5kKHAgPT4gU3RyaW5nKHAuaWQpID09PSBTdHJpbmcoaXRlbS5pZCkpXG4gICAgaWYgKHByb2plY3QpIHtcbiAgICAgIGV2ZW50QW1wbGl0dWRlKEVWRU5UUy5haUNoYXRTZWFyY2hDb250ZXh0U2VsZWN0UmVzdWx0LCB7IHJlc3VsdF90eXBlOiAnY3VzdG9tJyB9KVxuICAgICAgb25Qcm9qZWN0U2VsZWN0ZWQ/Lihwcm9qZWN0KVxuICAgIH1cbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdFNlYXJjaENvbnRleHRPcGVuKVxuICB9LCBbZXZlbnRBbXBsaXR1ZGVdKVxuXG4gIHJldHVybiAoXG4gICAgPEVudGl0eVNlbGVjdG9yXG4gICAgICBpdGVtcz17ZW50aXR5SXRlbXN9XG4gICAgICBsb2FkaW5nPXtyZWNlbnRQcm9qZWN0c0xvYWRpbmd9XG4gICAgICBlcnJvcj17cmVjZW50UHJvamVjdHNFcnJvcn1cbiAgICAgIHNlYXJjaFZhbHVlPXtzZWFyY2hWYWx1ZX1cbiAgICAgIG9uU2VhcmNoQ2hhbmdlPXtoYW5kbGVTZWFyY2hDaGFuZ2V9XG4gICAgICBmZXRjaFJlY2VudD17ZmV0Y2hSZWNlbnRQcm9qZWN0c31cbiAgICAgIG9uSXRlbVNlbGVjdGVkPXtoYW5kbGVJdGVtU2VsZWN0ZWR9XG4gICAgICB0cmFuc2xhdGlvbnM9e3RyYW5zbGF0aW9uc31cbiAgICAgIGNvbnRhaW5lcklkPVwicHJvamVjdF9zZWxlY3RvclwiXG4gICAgLz5cbiAgKVxufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUEsU0FBYUEsT0FBTyxFQUFFQyxRQUFRLEVBQUVDLFNBQVMsUUFBUSxPQUFPO0FBQ3hELFNBQVNDLGNBQWMsUUFBUSxlQUFlO0FBQzlDLFNBQVNDLGNBQWMsUUFBNEIsa0NBQWtDO0FBQ3JGLFNBQVNDLGdCQUFnQixRQUF1QixpQ0FBaUM7QUFDakYsU0FBU0MsTUFBTSxFQUFFQyxRQUFRLFFBQVEseUJBQXlCO0FBQzFELFNBQVNDLFFBQVEsUUFBUSwyQkFBMkI7QUFBQSxTQUFBQyxHQUFBLElBQUFDLElBQUE7QUFNcEQsSUFBTUMsc0JBQXNCLEdBQUcsU0FBekJBLHNCQUFzQkEsQ0FDMUJDLE9BQXNCLEVBQ3RCQyxhQUFxQixFQUNyQkMsWUFBb0I7RUFBQSxJQUFBQyxvQkFBQSxFQUFBQyxlQUFBO0VBQUEsT0FDSTtJQUN4QkMsRUFBRSxFQUFFTCxPQUFPLENBQUNLLEVBQUU7SUFDZEMsT0FBTyxFQUFFTixPQUFPLENBQUNPLEtBQUssSUFBSUwsWUFBWTtJQUN0Q00sU0FBUyxHQUFBTCxvQkFBQSxJQUFBQyxlQUFBLEdBQUVKLE9BQU8sQ0FBQ1MsTUFBTSxjQUFBTCxlQUFBLHVCQUFkQSxlQUFBLENBQWdCTSxJQUFJLGNBQUFQLG9CQUFBLGNBQUFBLG9CQUFBLEdBQUlGO0VBQ3JDLENBQUM7QUFBQSxDQUFDO0FBRUYsT0FBTyxJQUFNVSxlQUF5QyxHQUFHLFNBQTVDQSxlQUF5Q0EsQ0FBQUMsSUFBQSxFQUE4QjtFQUFBLElBQXhCQyxpQkFBaUIsR0FBQUQsSUFBQSxDQUFqQkMsaUJBQWlCO0VBQzNFLElBQUFDLGVBQUEsR0FBY3ZCLGNBQWMsQ0FBQyxDQUFDSyxRQUFRLENBQUNtQixlQUFlLENBQUMsQ0FBQztJQUFoREMsQ0FBQyxHQUFBRixlQUFBLENBQURFLENBQUM7RUFDVCxJQUFNQyxjQUFjLEdBQUd0QixRQUFRLENBQUMsQ0FBQztFQUNqQyxJQUFBdUIsU0FBQSxHQUFzQzdCLFFBQVEsQ0FBQyxFQUFFLENBQUM7SUFBQThCLFVBQUEsR0FBQUMsY0FBQSxDQUFBRixTQUFBO0lBQTNDRyxXQUFXLEdBQUFGLFVBQUE7SUFBRUcsY0FBYyxHQUFBSCxVQUFBO0VBRWxDLElBQUFJLGlCQUFBLEdBQ0U5QixnQkFBZ0IsQ0FBQyxDQUFDO0lBRForQixtQkFBbUIsR0FBQUQsaUJBQUEsQ0FBbkJDLG1CQUFtQjtJQUFFQyxxQkFBcUIsR0FBQUYsaUJBQUEsQ0FBckJFLHFCQUFxQjtJQUFFQyxtQkFBbUIsR0FBQUgsaUJBQUEsQ0FBbkJHLG1CQUFtQjtJQUFFQyxjQUFjLEdBQUFKLGlCQUFBLENBQWRJLGNBQWM7SUFBRUMsaUJBQWlCLEdBQUFMLGlCQUFBLENBQWpCSyxpQkFBaUI7RUFHMUcsSUFBTUMsa0JBQWtCLEdBQUcsU0FBckJBLGtCQUFrQkEsQ0FBSUMsS0FBYSxFQUFLO0lBQzVDUixjQUFjLENBQUNRLEtBQUssQ0FBQztJQUNyQkYsaUJBQWlCLENBQUNFLEtBQUssQ0FBQztFQUMxQixDQUFDO0VBRUQsSUFBTUMsV0FBVyxHQUFHM0MsT0FBTyxDQUN6QjtJQUFBLE9BQ0UsQ0FBQ3VDLGNBQWMsSUFBSSxFQUFFLEVBQUVLLEdBQUcsQ0FBQyxVQUFBQyxDQUFDO01BQUEsT0FDMUJsQyxzQkFBc0IsQ0FBQ2tDLENBQUMsRUFBRWpCLENBQUMsQ0FBQywrQkFBK0IsQ0FBQyxFQUFFQSxDQUFDLENBQUMsOEJBQThCLENBQUMsQ0FBQztJQUFBLENBQ2xHLENBQUM7RUFBQSxHQUNILENBQUNXLGNBQWMsRUFBRVgsQ0FBQyxDQUNwQixDQUFDO0VBRUQsSUFBTWtCLFlBQVksR0FBRzlDLE9BQU8sQ0FDMUI7SUFBQSxPQUFPO01BQ0wrQyxXQUFXLEVBQUVuQixDQUFDLENBQUMsNkJBQTZCLENBQUM7TUFDN0NvQixXQUFXLEVBQUVwQixDQUFDLENBQUMsZ0NBQWdDLENBQUM7TUFDaERxQixTQUFTLEVBQUVyQixDQUFDLENBQUMsbUNBQW1DLENBQUM7TUFDakRzQixLQUFLLEVBQUV0QixDQUFDLENBQUMsNEJBQTRCLENBQUM7TUFDdEN1QixLQUFLLEVBQUV2QixDQUFDLENBQUMsOEJBQThCLENBQUM7TUFDeEN3QixnQkFBZ0IsRUFBRXhCLENBQUMsQ0FBQywrQkFBK0I7SUFDckQsQ0FBQztFQUFBLENBQUMsRUFDRixDQUFDQSxDQUFDLENBQ0osQ0FBQztFQUVELElBQU15QixrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQWtCQSxDQUFJQyxJQUF3QixFQUFLO0lBQ3ZELElBQU0xQyxPQUFPLEdBQUcyQixjQUFjLGFBQWRBLGNBQWMsdUJBQWRBLGNBQWMsQ0FBRWdCLElBQUksQ0FBQyxVQUFBVixDQUFDO01BQUEsT0FBSVcsTUFBTSxDQUFDWCxDQUFDLENBQUM1QixFQUFFLENBQUMsS0FBS3VDLE1BQU0sQ0FBQ0YsSUFBSSxDQUFDckMsRUFBRSxDQUFDO0lBQUEsRUFBQztJQUMzRSxJQUFJTCxPQUFPLEVBQUU7TUFDWGlCLGNBQWMsQ0FBQ3ZCLE1BQU0sQ0FBQ21ELCtCQUErQixFQUFFO1FBQUVDLFdBQVcsRUFBRTtNQUFTLENBQUMsQ0FBQztNQUNqRmpDLGlCQUFpQixhQUFqQkEsaUJBQWlCLGVBQWpCQSxpQkFBaUIsQ0FBR2IsT0FBTyxDQUFDO0lBQzlCO0VBQ0YsQ0FBQztFQUVEVixTQUFTLENBQUMsWUFBTTtJQUNkMkIsY0FBYyxDQUFDdkIsTUFBTSxDQUFDcUQsdUJBQXVCLENBQUM7RUFDaEQsQ0FBQyxFQUFFLENBQUM5QixjQUFjLENBQUMsQ0FBQztFQUVwQixvQkFDRW5CLElBQUEsQ0FBQ04sY0FBYztJQUNid0QsS0FBSyxFQUFFakIsV0FBWTtJQUNuQmtCLE9BQU8sRUFBRXhCLHFCQUFzQjtJQUMvQmMsS0FBSyxFQUFFYixtQkFBb0I7SUFDM0JMLFdBQVcsRUFBRUEsV0FBWTtJQUN6QjZCLGNBQWMsRUFBRXJCLGtCQUFtQjtJQUNuQ3NCLFdBQVcsRUFBRTNCLG1CQUFvQjtJQUNqQzRCLGNBQWMsRUFBRVgsa0JBQW1CO0lBQ25DUCxZQUFZLEVBQUVBLFlBQWE7SUFDM0JtQixXQUFXLEVBQUM7RUFBa0IsQ0FDL0IsQ0FBQztBQUVOLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
214
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VSZWYiLCJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsIkNoZXZyb25SaWdodCIsIlNlYXJjaCIsInBhbGxldGUiLCJ1c2VUcmFuc2xhdGlvbiIsIlNDUFNJbnB1dCIsIlNDUFNXcmFwcGVyIiwiU0NQU0NvbnRhaW5lciIsIlNDUFNTZWxlY3RDb250YWluZXIiLCJTQ1BTUmVzdWx0Q29udGFpbmVyIiwiU0NQU1JlY2VudFRpdGxlIiwiU0NQU1JlY2VudExpc3QiLCJTQ1BTUmVjZW50SXRlbSIsIlNDUFNSZWNlbnRJdGVtSW5mbyIsIlNDUFNSZWNlbnRJdGVtQ2xpZW50IiwiU0NQU1JlY2VudEl0ZW1UaXRsZSIsIlNDUFNSZWNlbnRJdGVtSWNvbiIsIlNDUFNQcm9qZWN0c0xpc3QiLCJ1c2VQcm9qZWN0U2VhcmNoIiwiRVZFTlRTIiwidXNlRXZlbnQiLCJMb2FkZXJTZWFyY2hQcm9qZWN0cyIsIkVycm9yU2VhcmNoUHJvamVjdHMiLCJFbXB0eVNlYXJjaFByb2plY3RzIiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkZyYWdtZW50IiwiX0ZyYWdtZW50IiwiUHJvamVjdFNlbGVjdG9yIiwiX3JlZiIsIm9uUHJvamVjdFNlbGVjdGVkIiwiaW5wdXRSZWYiLCJfdXNlVHJhbnNsYXRpb24iLCJ0IiwiZXZlbnRBbXBsaXR1ZGUiLCJfdXNlUHJvamVjdFNlYXJjaCIsImZldGNoUmVjZW50UHJvamVjdHMiLCJyZWNlbnRQcm9qZWN0c0xvYWRpbmciLCJyZWNlbnRQcm9qZWN0c0Vycm9yIiwicmVjZW50UHJvamVjdHMiLCJ1cGRhdGVTZWFyY2hWYWx1ZSIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsInNlYXJjaFZhbHVlIiwic2V0U2VhcmNoVmFsdWUiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImlzUHJvamVjdFNlbGVjdGVkIiwic2V0SXNQcm9qZWN0U2VsZWN0ZWQiLCJhaUNoYXRTZWFyY2hDb250ZXh0T3BlbiIsImhhbmRsZUNsaWNrT3V0c2lkZSIsImUiLCJjdXJyZW50IiwidGFyZ2V0Iiwid3JhcHBlciIsImNsb3Nlc3QiLCJjb250YWlucyIsImRvY3VtZW50IiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJ0aW1lciIsInNldFRpbWVvdXQiLCJfaW5wdXRSZWYkY3VycmVudCIsImZvY3VzIiwiY2xlYXJUaW1lb3V0IiwidW5kZWZpbmVkIiwiaGFuZGxlcnMiLCJoYW5kbGVDaGFuZ2VJbnB1dCIsInNlYXJjaElucHV0VmFsdWUiLCJ2YWx1ZSIsImhhbmRsZVByb2plY3RTZWxlY3RlZCIsInByb2plY3QiLCJmaWx0ZXJQcm9qZWN0cyIsImZpbHRlciIsIl9wcm9qZWN0JGNsaWVudCIsInRyaW0iLCJwcm9qZWN0TmFtZSIsInRpdGxlIiwiY2xpZW50TmFtZSIsImNsaWVudCIsIm5hbWUiLCJ0b0xvd2VyQ2FzZSIsImluY2x1ZGVzIiwic2hvd1JlY2VudFByb2plY3RzIiwic2hvd1NlYXJjaFJlc3VsdHMiLCJyZW5kZXJDb250ZW50IiwidGV4dCIsImxlbmd0aCIsImNoaWxkcmVuIiwibWFwIiwiX3Byb2plY3QkY2xpZW50JG5hbWUiLCJfcHJvamVjdCRjbGllbnQyIiwib25DbGljayIsInJlc3VsdFR5cGUiLCJhaUNoYXRTZWFyY2hDb250ZXh0U2VsZWN0UmVzdWx0IiwicmVzdWx0X3R5cGUiLCJkYW5nZXJvdXNseVNldElubmVySFRNTCIsIl9faHRtbCIsIndpZHRoIiwiaGVpZ2h0IiwiY29sb3IiLCJjb2xvcnMiLCJzZWNvbmRhcnkiLCJpZCIsIm1lc3NhZ2UiLCIkcmVjZW50UHJvamVjdHMiLCJfcHJvamVjdCRjbGllbnQkbmFtZTIiLCJfcHJvamVjdCRjbGllbnQzIiwib25DaGFuZ2UiLCJyZWYiLCJwbGFjZWhvbGRlciIsInN0eWxlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXRvbXMvUHJvamVjdFNlbGVjdG9yL1Byb2plY3RTZWxlY3Rvci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRkMsIFJlZk9iamVjdCwgdXNlUmVmLCB1c2VTdGF0ZSwgdXNlRWZmZWN0LCBDaGFuZ2VFdmVudCB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgQ2hldnJvblJpZ2h0IH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvQ2hldnJvblJpZ2h0J1xuaW1wb3J0IHsgU2VhcmNoIH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvU2VhcmNoJ1xuaW1wb3J0IHBhbGxldGUgZnJvbSAnQHByb2plY3Rjb3IvdGhlbWUvbGliL2Jhc2UvY29sb3JzJ1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHtcbiAgU0NQU0lucHV0LFxuICBTQ1BTV3JhcHBlcixcbiAgU0NQU0NvbnRhaW5lcixcbiAgU0NQU1NlbGVjdENvbnRhaW5lcixcbiAgU0NQU1Jlc3VsdENvbnRhaW5lcixcbiAgU0NQU1JlY2VudFRpdGxlLFxuICBTQ1BTUmVjZW50TGlzdCxcbiAgU0NQU1JlY2VudEl0ZW0sXG4gIFNDUFNSZWNlbnRJdGVtSW5mbyxcbiAgU0NQU1JlY2VudEl0ZW1DbGllbnQsXG4gIFNDUFNSZWNlbnRJdGVtVGl0bGUsXG4gIFNDUFNSZWNlbnRJdGVtSWNvbixcbiAgU0NQU1Byb2plY3RzTGlzdCxcbn0gZnJvbSAnLi9Qcm9qZWN0U2VsZWN0b3Iuc3R5bGVzJ1xuaW1wb3J0IHsgdXNlUHJvamVjdFNlYXJjaCwgUHJvamVjdFNldHRlciB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZVByb2plY3RTZWFyY2gnXG5pbXBvcnQgeyBFVkVOVFMsIHVzZUV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlRXZlbnQnXG5pbXBvcnQgeyBMb2FkZXJTZWFyY2hQcm9qZWN0cyB9IGZyb20gJy4uL0xvYWRpbmdTZWFyY2hQcm9qZWN0cydcbmltcG9ydCB7IEVycm9yU2VhcmNoUHJvamVjdHMgfSBmcm9tICcuLi9FcnJvclNlYXJjaFByb2plY3RzJ1xuaW1wb3J0IHsgRW1wdHlTZWFyY2hQcm9qZWN0cyB9IGZyb20gJy4uL0VtcHR5U2VhcmNoUHJvamVjdHMnXG5cbnR5cGUgUHJvamVjdFNlbGVjdG9yUHJvcHMgPSB7XG4gIG9uUHJvamVjdFNlbGVjdGVkPzogKHByb2plY3Q6IFByb2plY3RTZXR0ZXIpID0+IHZvaWRcbn1cblxuZXhwb3J0IGNvbnN0IFByb2plY3RTZWxlY3RvcjogRkM8UHJvamVjdFNlbGVjdG9yUHJvcHM+ID0gKHsgb25Qcm9qZWN0U2VsZWN0ZWQgfSkgPT4ge1xuICBjb25zdCBpbnB1dFJlZjogUmVmT2JqZWN0PEhUTUxJbnB1dEVsZW1lbnQ+ID0gdXNlUmVmKG51bGwpXG4gIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oWydwcm9qZWN0X3NlbGVjdG9yX3NlY3Rpb24nXSlcbiAgY29uc3QgZXZlbnRBbXBsaXR1ZGUgPSB1c2VFdmVudCgpXG5cbiAgY29uc3QgeyBmZXRjaFJlY2VudFByb2plY3RzLCByZWNlbnRQcm9qZWN0c0xvYWRpbmcsIHJlY2VudFByb2plY3RzRXJyb3IsIHJlY2VudFByb2plY3RzLCB1cGRhdGVTZWFyY2hWYWx1ZSB9ID1cbiAgICB1c2VQcm9qZWN0U2VhcmNoKClcblxuICBjb25zdCBbc2VhcmNoVmFsdWUsIHNldFNlYXJjaFZhbHVlXSA9IHVzZVN0YXRlKCcnKVxuICBjb25zdCBbaXNQcm9qZWN0U2VsZWN0ZWQsIHNldElzUHJvamVjdFNlbGVjdGVkXSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZmV0Y2hSZWNlbnRQcm9qZWN0cygpXG4gICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdFNlYXJjaENvbnRleHRPcGVuKVxuICB9LCBbZmV0Y2hSZWNlbnRQcm9qZWN0cywgZXZlbnRBbXBsaXR1ZGVdKVxuXG4gIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZSA9IChlOiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgaWYgKGlucHV0UmVmLmN1cnJlbnQpIHtcbiAgICAgIGNvbnN0IHRhcmdldCA9IGUudGFyZ2V0IGFzIE5vZGVcbiAgICAgIGNvbnN0IHdyYXBwZXIgPSBpbnB1dFJlZi5jdXJyZW50LmNsb3Nlc3QoJyNwcm9qZWN0X3NlbGVjdG9yJylcblxuICAgICAgaWYgKHdyYXBwZXIgJiYgIXdyYXBwZXIuY29udGFpbnModGFyZ2V0KSkge1xuICAgICAgICAvLyBObyBjZXJyYW1vcywgc29sbyBsaW1waWFtb3Mgc2kgZXMgbmVjZXNhcmlvXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBoYW5kbGVDbGlja091dHNpZGUpXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIGhhbmRsZUNsaWNrT3V0c2lkZSlcbiAgICB9XG4gIH0sIFtdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFpc1Byb2plY3RTZWxlY3RlZCkge1xuICAgICAgY29uc3QgdGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgaW5wdXRSZWYuY3VycmVudD8uZm9jdXMoKVxuICAgICAgfSwgMClcbiAgICAgIHJldHVybiAoKSA9PiBjbGVhclRpbWVvdXQodGltZXIpXG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWRcbiAgfSwgW2lzUHJvamVjdFNlbGVjdGVkXSlcblxuICBjb25zdCBoYW5kbGVycyA9IHtcbiAgICBoYW5kbGVDaGFuZ2VJbnB1dDogKGU6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSA9PiB7XG4gICAgICBjb25zdCBzZWFyY2hJbnB1dFZhbHVlID0gZS50YXJnZXQudmFsdWVcbiAgICAgIHNldFNlYXJjaFZhbHVlKHNlYXJjaElucHV0VmFsdWUpXG4gICAgICB1cGRhdGVTZWFyY2hWYWx1ZShzZWFyY2hJbnB1dFZhbHVlKVxuICAgIH0sXG4gICAgaGFuZGxlUHJvamVjdFNlbGVjdGVkOiAocHJvamVjdDogUHJvamVjdFNldHRlcikgPT4ge1xuICAgICAgc2V0SXNQcm9qZWN0U2VsZWN0ZWQodHJ1ZSlcbiAgICAgIGlmIChvblByb2plY3RTZWxlY3RlZCkge1xuICAgICAgICBvblByb2plY3RTZWxlY3RlZChwcm9qZWN0KVxuICAgICAgfVxuICAgIH0sXG4gIH1cblxuICBjb25zdCBmaWx0ZXJQcm9qZWN0cyA9IHJlY2VudFByb2plY3RzPy5maWx0ZXIocHJvamVjdCA9PiB7XG4gICAgaWYgKCFzZWFyY2hWYWx1ZS50cmltKCkpIHJldHVybiB0cnVlXG4gICAgY29uc3QgcHJvamVjdE5hbWUgPSBwcm9qZWN0LnRpdGxlIHx8ICcnXG4gICAgY29uc3QgY2xpZW50TmFtZSA9IHByb2plY3QuY2xpZW50Py5uYW1lIHx8ICcnXG4gICAgcmV0dXJuIChcbiAgICAgIHByb2plY3ROYW1lLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoVmFsdWUudG9Mb3dlckNhc2UoKSkgfHxcbiAgICAgIGNsaWVudE5hbWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2hWYWx1ZS50b0xvd2VyQ2FzZSgpKVxuICAgIClcbiAgfSlcblxuICBjb25zdCBzaG93UmVjZW50UHJvamVjdHMgPSAhc2VhcmNoVmFsdWUudHJpbSgpICYmICFpc1Byb2plY3RTZWxlY3RlZFxuICBjb25zdCBzaG93U2VhcmNoUmVzdWx0cyA9IHNlYXJjaFZhbHVlLnRyaW0oKSAmJiAhaXNQcm9qZWN0U2VsZWN0ZWRcblxuICBjb25zdCByZW5kZXJDb250ZW50ID0gKCkgPT4ge1xuICAgIC8vIFNpIGhheSBiw7pzcXVlZGEgYWN0aXZhLCBtb3N0cmFyIHJlc3VsdGFkb3MgZGUgYsO6c3F1ZWRhXG4gICAgaWYgKHNob3dTZWFyY2hSZXN1bHRzKSB7XG4gICAgICBpZiAocmVjZW50UHJvamVjdHNMb2FkaW5nKSB7XG4gICAgICAgIHJldHVybiA8TG9hZGVyU2VhcmNoUHJvamVjdHMgdGV4dD17dCgncHJvamVjdFNlbGVjdG9yLnNlYXJjaGluZ1Byb2plY3RzJyl9IC8+XG4gICAgICB9XG5cbiAgICAgIGlmIChyZWNlbnRQcm9qZWN0c0Vycm9yKSB7XG4gICAgICAgIHJldHVybiA8RXJyb3JTZWFyY2hQcm9qZWN0cyAvPlxuICAgICAgfVxuXG4gICAgICBpZiAoZmlsdGVyUHJvamVjdHMgJiYgZmlsdGVyUHJvamVjdHMubGVuZ3RoID4gMCkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxTQ1BTUHJvamVjdHNMaXN0PlxuICAgICAgICAgICAge2ZpbHRlclByb2plY3RzLm1hcChwcm9qZWN0ID0+IChcbiAgICAgICAgICAgICAgPFNDUFNSZWNlbnRJdGVtXG4gICAgICAgICAgICAgICAga2V5PXtwcm9qZWN0LmlkfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdFR5cGUgPSAnY3VzdG9tJ1xuICAgICAgICAgICAgICAgICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdFNlYXJjaENvbnRleHRTZWxlY3RSZXN1bHQsIHsgcmVzdWx0X3R5cGU6IHJlc3VsdFR5cGUgfSlcbiAgICAgICAgICAgICAgICAgIGhhbmRsZXJzLmhhbmRsZVByb2plY3RTZWxlY3RlZChwcm9qZWN0KVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8U0NQU1JlY2VudEl0ZW1JbmZvPlxuICAgICAgICAgICAgICAgICAgPFNDUFNSZWNlbnRJdGVtQ2xpZW50PlxuICAgICAgICAgICAgICAgICAgICB7cHJvamVjdC5jbGllbnQ/Lm5hbWUgPz8gdCgncHJvamVjdFNlbGVjdG9yLndpdGhvdXRDbGllbnQnKX1cbiAgICAgICAgICAgICAgICAgIDwvU0NQU1JlY2VudEl0ZW1DbGllbnQ+XG4gICAgICAgICAgICAgICAgICA8U0NQU1JlY2VudEl0ZW1UaXRsZVxuICAgICAgICAgICAgICAgICAgICBkYW5nZXJvdXNseVNldElubmVySFRNTD17eyBfX2h0bWw6IHByb2plY3QudGl0bGUgfHwgdCgncHJvamVjdFNlbGVjdG9yLndpdGhvdXRUaXRsZScpIH19XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvU0NQU1JlY2VudEl0ZW1JbmZvPlxuICAgICAgICAgICAgICAgIDxTQ1BTUmVjZW50SXRlbUljb24+XG4gICAgICAgICAgICAgICAgICA8Q2hldnJvblJpZ2h0IHdpZHRoPVwiMTZweFwiIGhlaWdodD1cIjE2cHhcIiBjb2xvcj17cGFsbGV0ZS5jb2xvcnMuc2Vjb25kYXJ5fSAvPlxuICAgICAgICAgICAgICAgIDwvU0NQU1JlY2VudEl0ZW1JY29uPlxuICAgICAgICAgICAgICA8L1NDUFNSZWNlbnRJdGVtPlxuICAgICAgICAgICAgKSl9XG4gICAgICAgICAgPC9TQ1BTUHJvamVjdHNMaXN0PlxuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIHJldHVybiA8RW1wdHlTZWFyY2hQcm9qZWN0cyBtZXNzYWdlPXt0KCdwcm9qZWN0U2VsZWN0b3IuZW1wdHlTdGF0ZScpfSBzZWFyY2hWYWx1ZT17c2VhcmNoVmFsdWV9IC8+XG4gICAgfVxuXG4gICAgLy8gU2kgbm8gaGF5IGLDunNxdWVkYSwgbW9zdHJhciBwcm95ZWN0b3MgcmVjaWVudGVzXG4gICAgaWYgKHNob3dSZWNlbnRQcm9qZWN0cykge1xuICAgICAgaWYgKHJlY2VudFByb2plY3RzTG9hZGluZykge1xuICAgICAgICByZXR1cm4gPExvYWRlclNlYXJjaFByb2plY3RzIHRleHQ9e3QoJ3Byb2plY3RTZWxlY3Rvci5zZWFyY2hpbmdQcm9qZWN0cycpfSAvPlxuICAgICAgfVxuXG4gICAgICBpZiAocmVjZW50UHJvamVjdHNFcnJvcikge1xuICAgICAgICByZXR1cm4gPEVycm9yU2VhcmNoUHJvamVjdHMgLz5cbiAgICAgIH1cblxuICAgICAgaWYgKHJlY2VudFByb2plY3RzICYmIHJlY2VudFByb2plY3RzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8PlxuICAgICAgICAgICAgPFNDUFNSZWNlbnRUaXRsZT57dCgncHJvamVjdFNlbGVjdG9yLnJlY2VudFByb2plY3RzJyl9PC9TQ1BTUmVjZW50VGl0bGU+XG4gICAgICAgICAgICA8U0NQU1JlY2VudExpc3QgJHJlY2VudFByb2plY3RzPlxuICAgICAgICAgICAgICB7cmVjZW50UHJvamVjdHMubWFwKHByb2plY3QgPT4gKFxuICAgICAgICAgICAgICAgIDxTQ1BTUmVjZW50SXRlbVxuICAgICAgICAgICAgICAgICAga2V5PXtwcm9qZWN0LmlkfVxuICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZXN1bHRUeXBlID0gJ3JlY2VudCdcbiAgICAgICAgICAgICAgICAgICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdFNlYXJjaENvbnRleHRTZWxlY3RSZXN1bHQsIHsgcmVzdWx0X3R5cGU6IHJlc3VsdFR5cGUgfSlcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlcnMuaGFuZGxlUHJvamVjdFNlbGVjdGVkKHByb2plY3QpXG4gICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxTQ1BTUmVjZW50SXRlbUluZm8+XG4gICAgICAgICAgICAgICAgICAgIDxTQ1BTUmVjZW50SXRlbUNsaWVudD5cbiAgICAgICAgICAgICAgICAgICAgICB7cHJvamVjdC5jbGllbnQ/Lm5hbWUgPz8gdCgncHJvamVjdFNlbGVjdG9yLndpdGhvdXRDbGllbnQnKX1cbiAgICAgICAgICAgICAgICAgICAgPC9TQ1BTUmVjZW50SXRlbUNsaWVudD5cbiAgICAgICAgICAgICAgICAgICAgPFNDUFNSZWNlbnRJdGVtVGl0bGVcbiAgICAgICAgICAgICAgICAgICAgICBkYW5nZXJvdXNseVNldElubmVySFRNTD17eyBfX2h0bWw6IHByb2plY3QudGl0bGUgfHwgdCgncHJvamVjdFNlbGVjdG9yLndpdGhvdXRUaXRsZScpIH19XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8L1NDUFNSZWNlbnRJdGVtSW5mbz5cbiAgICAgICAgICAgICAgICAgIDxTQ1BTUmVjZW50SXRlbUljb24+XG4gICAgICAgICAgICAgICAgICAgIDxDaGV2cm9uUmlnaHQgd2lkdGg9XCIxNnB4XCIgaGVpZ2h0PVwiMTZweFwiIGNvbG9yPXtwYWxsZXRlLmNvbG9ycy5zZWNvbmRhcnl9IC8+XG4gICAgICAgICAgICAgICAgICA8L1NDUFNSZWNlbnRJdGVtSWNvbj5cbiAgICAgICAgICAgICAgICA8L1NDUFNSZWNlbnRJdGVtPlxuICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgIDwvU0NQU1JlY2VudExpc3Q+XG4gICAgICAgICAgPC8+XG4gICAgICAgIClcbiAgICAgIH1cblxuICAgICAgLy8gU2kgbm8gaGF5IHByb3llY3RvcyByZWNpZW50ZXMgeSBubyBlc3TDoSBjYXJnYW5kbyBuaSBoYXkgZXJyb3JcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPFNDUFNDb250YWluZXIgaWQ9XCJwcm9qZWN0X3NlbGVjdG9yXCI+XG4gICAgICB7IWlzUHJvamVjdFNlbGVjdGVkICYmIChcbiAgICAgICAgPD5cbiAgICAgICAgICA8U0NQU1dyYXBwZXI+XG4gICAgICAgICAgICA8U0NQU1NlbGVjdENvbnRhaW5lcj5cbiAgICAgICAgICAgICAgPFNDUFNSZXN1bHRDb250YWluZXI+XG4gICAgICAgICAgICAgICAgPFNlYXJjaCB3aWR0aD1cIjE2cHhcIiBoZWlnaHQ9XCIxNnB4XCIgY29sb3I9e3BhbGxldGUuY29sb3JzLnNlY29uZGFyeX0gLz5cbiAgICAgICAgICAgICAgICA8U0NQU0lucHV0XG4gICAgICAgICAgICAgICAgICB2YWx1ZT17c2VhcmNoVmFsdWV9XG4gICAgICAgICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlcnMuaGFuZGxlQ2hhbmdlSW5wdXR9XG4gICAgICAgICAgICAgICAgICByZWY9e2lucHV0UmVmfVxuICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3QoJ3Byb2plY3RTZWxlY3Rvci5wbGFjZWhvbGRlcicpfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvU0NQU1Jlc3VsdENvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvU0NQU1NlbGVjdENvbnRhaW5lcj5cbiAgICAgICAgICA8L1NDUFNXcmFwcGVyPlxuICAgICAgICAgIDxkaXYgc3R5bGU9e3sgd2lkdGg6ICcxMDAlJyB9fT57cmVuZGVyQ29udGVudCgpfTwvZGl2PlxuICAgICAgICA8Lz5cbiAgICAgICl9XG4gICAgPC9TQ1BTQ29udGFpbmVyPlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxTQUF3QkEsTUFBTSxFQUFFQyxRQUFRLEVBQUVDLFNBQVMsUUFBcUIsT0FBTztBQUMvRSxTQUFTQyxZQUFZLFFBQVEsK0NBQStDO0FBQzVFLFNBQVNDLE1BQU0sUUFBUSx5Q0FBeUM7QUFDaEUsT0FBT0MsT0FBTyxNQUFNLG1DQUFtQztBQUN2RCxTQUFTQyxjQUFjLFFBQVEsZUFBZTtBQUM5QyxTQUNFQyxTQUFTLEVBQ1RDLFdBQVcsRUFDWEMsYUFBYSxFQUNiQyxtQkFBbUIsRUFDbkJDLG1CQUFtQixFQUNuQkMsZUFBZSxFQUNmQyxjQUFjLEVBQ2RDLGNBQWMsRUFDZEMsa0JBQWtCLEVBQ2xCQyxvQkFBb0IsRUFDcEJDLG1CQUFtQixFQUNuQkMsa0JBQWtCLEVBQ2xCQyxnQkFBZ0IsUUFDWCwwQkFBMEI7QUFDakMsU0FBU0MsZ0JBQWdCLFFBQXVCLGlDQUFpQztBQUNqRixTQUFTQyxNQUFNLEVBQUVDLFFBQVEsUUFBUSx5QkFBeUI7QUFDMUQsU0FBU0Msb0JBQW9CLFFBQVEsMEJBQTBCO0FBQy9E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
|
package/lib/components/index.js
CHANGED
|
@@ -6,5 +6,4 @@ export { ProjectSummaryModal } from './molecules/ProjectSummaryModal';
|
|
|
6
6
|
export { ProjectSummary } from './organisms/ProjectSummary';
|
|
7
7
|
export { ChatAI } from './organisms/ChatAI';
|
|
8
8
|
export { ProjectAIButton } from './organisms/ProjectAIButton';
|
|
9
|
-
|
|
10
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJNQUlBQnV0dG9uIiwiTWFpYVdyYXBwZXIiLCJNQUlBRXJyb3IiLCJBSUljb24iLCJQcm9qZWN0U3VtbWFyeU1vZGFsIiwiUHJvamVjdFN1bW1hcnkiLCJDaGF0QUkiLCJQcm9qZWN0QUlCdXR0b24iLCJDbGllbnRBSUJ1dHRvbiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IE1BSUFCdXR0b24gfSBmcm9tICcuL2F0b21zL01BSUFCdXR0b24nXG5leHBvcnQgeyBNYWlhV3JhcHBlciB9IGZyb20gJy4vYXRvbXMvTWFpYVdyYXBwZXInXG5leHBvcnQgeyBNQUlBRXJyb3IgfSBmcm9tICcuL2F0b21zL01BSUFFcnJvcidcblxuZXhwb3J0IHsgQUlJY29uIH0gZnJvbSAnLi9hdG9tcy9pY29ucydcblxuZXhwb3J0IHsgUHJvamVjdFN1bW1hcnlNb2RhbCB9IGZyb20gJy4vbW9sZWN1bGVzL1Byb2plY3RTdW1tYXJ5TW9kYWwnXG5cbmV4cG9ydCB7IFByb2plY3RTdW1tYXJ5IH0gZnJvbSAnLi9vcmdhbmlzbXMvUHJvamVjdFN1bW1hcnknXG5leHBvcnQgeyBDaGF0QUkgfSBmcm9tICcuL29yZ2FuaXNtcy9DaGF0QUknXG5leHBvcnQgeyBQcm9qZWN0QUlCdXR0b24gfSBmcm9tICcuL29yZ2FuaXNtcy9Qcm9qZWN0QUlCdXR0b24nXG5leHBvcnQgeyBDbGllbnRBSUJ1dHRvbiB9IGZyb20gJy4vb3JnYW5pc21zL0NsaWVudEFJQnV0dG9uJ1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxVQUFVLFFBQVEsb0JBQW9CO0FBQy9DLFNBQVNDLFdBQVcsUUFBUSxxQkFBcUI7QUFDakQsU0FBU0MsU0FBUyxRQUFRLG1CQUFtQjtBQUU3QyxTQUFTQyxNQUFNLFFBQVEsZUFBZTtBQUV0QyxTQUFTQyxtQkFBbUIsUUFBUSxpQ0FBaUM7QUFFckUsU0FBU0MsY0FBYyxRQUFRLDRCQUE0QjtBQUMzRCxTQUFTQyxNQUFNLFFBQVEsb0JBQW9CO0FBQzNDLFNBQVNDLGVBQWUsUUFBUSw2QkFBNkI7QUFDN0QsU0FBU0MsY0FBYyxRQUFRLDRCQUE0QiIsImlnbm9yZUxpc3QiOltdfQ==
|
|
9
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJNQUlBQnV0dG9uIiwiTWFpYVdyYXBwZXIiLCJNQUlBRXJyb3IiLCJBSUljb24iLCJQcm9qZWN0U3VtbWFyeU1vZGFsIiwiUHJvamVjdFN1bW1hcnkiLCJDaGF0QUkiLCJQcm9qZWN0QUlCdXR0b24iXSwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tcG9uZW50cy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBNQUlBQnV0dG9uIH0gZnJvbSAnLi9hdG9tcy9NQUlBQnV0dG9uJ1xuZXhwb3J0IHsgTWFpYVdyYXBwZXIgfSBmcm9tICcuL2F0b21zL01haWFXcmFwcGVyJ1xuZXhwb3J0IHsgTUFJQUVycm9yIH0gZnJvbSAnLi9hdG9tcy9NQUlBRXJyb3InXG5cbmV4cG9ydCB7IEFJSWNvbiB9IGZyb20gJy4vYXRvbXMvaWNvbnMnXG5cbmV4cG9ydCB7IFByb2plY3RTdW1tYXJ5TW9kYWwgfSBmcm9tICcuL21vbGVjdWxlcy9Qcm9qZWN0U3VtbWFyeU1vZGFsJ1xuXG5leHBvcnQgeyBQcm9qZWN0U3VtbWFyeSB9IGZyb20gJy4vb3JnYW5pc21zL1Byb2plY3RTdW1tYXJ5J1xuZXhwb3J0IHsgQ2hhdEFJIH0gZnJvbSAnLi9vcmdhbmlzbXMvQ2hhdEFJJ1xuZXhwb3J0IHsgUHJvamVjdEFJQnV0dG9uIH0gZnJvbSAnLi9vcmdhbmlzbXMvUHJvamVjdEFJQnV0dG9uJ1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxVQUFVLFFBQVEsb0JBQW9CO0FBQy9DLFNBQVNDLFdBQVcsUUFBUSxxQkFBcUI7QUFDakQsU0FBU0MsU0FBUyxRQUFRLG1CQUFtQjtBQUU3QyxTQUFTQyxNQUFNLFFBQVEsZUFBZTtBQUV0QyxTQUFTQyxtQkFBbUIsUUFBUSxpQ0FBaUM7QUFFckUsU0FBU0MsY0FBYyxRQUFRLDRCQUE0QjtBQUMzRCxTQUFTQyxNQUFNLFFBQVEsb0JBQW9CO0FBQzNDLFNBQVNDLGVBQWUsUUFBUSw2QkFBNkIiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,23 +1,13 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
2
|
/* eslint-disable react/function-component-definition */
|
|
3
|
-
import React
|
|
3
|
+
import React from 'react';
|
|
4
4
|
import { ChatAIHome } from '../ChatAIHome';
|
|
5
5
|
import { ProjectSummaryContent } from '../ProjectSummaryContent';
|
|
6
6
|
import { options } from '../ChatAIModal/constants';
|
|
7
7
|
import { ChatAIProjectSelector } from '../ChatAIProjectSelector';
|
|
8
|
-
import { ChatAIClientSelector } from '../ChatAIClientSelector';
|
|
9
8
|
import { SCCAIContentWrapper } from './ChatAIContent.styles';
|
|
10
|
-
|
|
11
|
-
// Carga diferida: ChatAIMessages usa streamdown + @streamdown/code (Shiki), que pueden
|
|
12
|
-
// ese código hasta que el usuario abre el chat y se evita romper la UI si Shiki/xlsx fallan.
|
|
9
|
+
import { ChatAIMessages } from '../ChatAIMessages';
|
|
13
10
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
|
-
var ChatAIMessagesLazy = /*#__PURE__*/lazy(function () {
|
|
15
|
-
return import('../ChatAIMessages').then(function (m) {
|
|
16
|
-
return {
|
|
17
|
-
"default": m.ChatAIMessages
|
|
18
|
-
};
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
11
|
export var ChatAIContent = function ChatAIContent(_ref) {
|
|
22
12
|
var currentOption = _ref.currentOption,
|
|
23
13
|
handlers = _ref.handlers,
|
|
@@ -29,17 +19,14 @@ export var ChatAIContent = function ChatAIContent(_ref) {
|
|
|
29
19
|
agents = _ref.agents;
|
|
30
20
|
if (currentOption === options.chat) {
|
|
31
21
|
return /*#__PURE__*/_jsx(SCCAIContentWrapper, {
|
|
32
|
-
children: /*#__PURE__*/_jsx(
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
agents: agents,
|
|
41
|
-
expanded: expanded
|
|
42
|
-
})
|
|
22
|
+
children: /*#__PURE__*/_jsx(ChatAIMessages, {
|
|
23
|
+
userInitialMessage: refs.userInitialMessage,
|
|
24
|
+
initialChatId: refs.initialChatId,
|
|
25
|
+
onError: onError,
|
|
26
|
+
onSendMessageReady: onSendMessageReady,
|
|
27
|
+
attachments: refs.userInitialMessage.attachments,
|
|
28
|
+
agents: agents,
|
|
29
|
+
expanded: expanded
|
|
43
30
|
})
|
|
44
31
|
});
|
|
45
32
|
}
|
|
@@ -57,13 +44,6 @@ export var ChatAIContent = function ChatAIContent(_ref) {
|
|
|
57
44
|
})
|
|
58
45
|
});
|
|
59
46
|
}
|
|
60
|
-
if (currentOption === options.clientSelector) {
|
|
61
|
-
return /*#__PURE__*/_jsx(SCCAIContentWrapper, {
|
|
62
|
-
children: /*#__PURE__*/_jsx(ChatAIClientSelector, {
|
|
63
|
-
handlers: handlers.handleGoHome
|
|
64
|
-
})
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
47
|
return /*#__PURE__*/_jsx(SCCAIContentWrapper, {
|
|
68
48
|
children: /*#__PURE__*/_jsx(ChatAIHome, {
|
|
69
49
|
handlers: handlers,
|
|
@@ -73,4 +53,4 @@ export var ChatAIContent = function ChatAIContent(_ref) {
|
|
|
73
53
|
})
|
|
74
54
|
});
|
|
75
55
|
};
|
|
76
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkNoYXRBSUhvbWUiLCJQcm9qZWN0U3VtbWFyeUNvbnRlbnQiLCJvcHRpb25zIiwiQ2hhdEFJUHJvamVjdFNlbGVjdG9yIiwiU0NDQUlDb250ZW50V3JhcHBlciIsIkNoYXRBSU1lc3NhZ2VzIiwianN4IiwiX2pzeCIsIkNoYXRBSUNvbnRlbnQiLCJfcmVmIiwiY3VycmVudE9wdGlvbiIsImhhbmRsZXJzIiwib25FcnJvciIsInJlZnMiLCJvblNlbmRNZXNzYWdlUmVhZHkiLCJleHBhbmRlZCIsImhhc05vQWdlbnRzIiwiYWdlbnRzIiwiY2hhdCIsImNoaWxkcmVuIiwidXNlckluaXRpYWxNZXNzYWdlIiwiaW5pdGlhbENoYXRJZCIsImF0dGFjaG1lbnRzIiwicHJvamVjdFN1bW1hcnkiLCJvblJlc3RhcnRTdW1tYXJ5IiwiaG9tZSIsInByb2plY3RTZWxlY3RvciIsImhhbmRsZUdvSG9tZSIsIm9uU3RhcnRDaGF0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRBSUNvbnRlbnQvQ2hhdEFJQ29udGVudC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuLyogZXNsaW50LWRpc2FibGUgcmVhY3QvZnVuY3Rpb24tY29tcG9uZW50LWRlZmluaXRpb24gKi9cbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCdcbmltcG9ydCB7IENoYXRBSUhvbWUgfSBmcm9tICcuLi9DaGF0QUlIb21lJ1xuaW1wb3J0IHsgUHJvamVjdFN1bW1hcnlDb250ZW50IH0gZnJvbSAnLi4vUHJvamVjdFN1bW1hcnlDb250ZW50J1xuXG5pbXBvcnQgeyBvcHRpb25zIH0gZnJvbSAnLi4vQ2hhdEFJTW9kYWwvY29uc3RhbnRzJ1xuaW1wb3J0IHsgQXR0YWNobWVudEZpbGUgfSBmcm9tICcuLi9DaGF0Rm9vdGVyL0NoYXRGb290ZXInXG5pbXBvcnQgeyBDaGF0QUlQcm9qZWN0U2VsZWN0b3IgfSBmcm9tICcuLi9DaGF0QUlQcm9qZWN0U2VsZWN0b3InXG5pbXBvcnQgeyBBZ2VudCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL2FnZW50J1xuaW1wb3J0IHsgU0NDQUlDb250ZW50V3JhcHBlciB9IGZyb20gJy4vQ2hhdEFJQ29udGVudC5zdHlsZXMnXG5pbXBvcnQgeyBDaGF0QUlNZXNzYWdlcyB9IGZyb20gJy4uL0NoYXRBSU1lc3NhZ2VzJ1xuXG50eXBlIENoYXRBSUNvbnRlbnRQcm9wcyA9IHtcbiAgY3VycmVudE9wdGlvbjogb3B0aW9uc1xuICBoYW5kbGVyczogUmVjb3JkPG9wdGlvbnMsICh2YWx1ZT86IGFueSkgPT4gdm9pZD4gJiB7XG4gICAgY2hhdDogKG1lc3NhZ2U/OiBzdHJpbmcsIGF0dGFjaG1lbnRzPzogQXR0YWNobWVudEZpbGVbXSwgZmFxSWQ/OiBzdHJpbmcpID0+IHZvaWRcbiAgICBzdGFydENoYXQ/OiAobWVzc2FnZTogc3RyaW5nKSA9PiB2b2lkXG4gICAgaGFuZGxlR29Ib21lOiAoKSA9PiB2b2lkXG4gIH1cbiAgb25FcnJvcjogKCkgPT4gdm9pZFxuICByZWZzOiB7XG4gICAgdXNlckluaXRpYWxNZXNzYWdlOiB7IG1lc3NhZ2U6IHN0cmluZzsgYXR0YWNobWVudHM6IEF0dGFjaG1lbnRGaWxlW107IGZhcUlkPzogc3RyaW5nIH1cbiAgICBpbml0aWFsQ2hhdElkOiBzdHJpbmcgfCBudWxsXG4gIH1cbiAgb25TZW5kTWVzc2FnZVJlYWR5PzogKFxuICAgIHNlbmRNZXNzYWdlOiAobWVzc2FnZTogc3RyaW5nKSA9PiB2b2lkLFxuICAgIHN0b3BHZW5lcmF0aW9uOiAoKSA9PiB2b2lkLFxuICAgIGlzU3RyZWFtaW5nOiBib29sZWFuLFxuICAgIGlzV3JpdGluZzogYm9vbGVhblxuICApID0+IHZvaWRcbiAgZXhwYW5kZWQ/OiBib29sZWFuXG4gIGhhc05vQWdlbnRzPzogYm9vbGVhblxuICBhZ2VudHM/OiBBZ2VudFtdXG59XG5cbmV4cG9ydCBjb25zdCBDaGF0QUlDb250ZW50ID0gKHtcbiAgY3VycmVudE9wdGlvbixcbiAgaGFuZGxlcnMsXG4gIG9uRXJyb3IsXG4gIHJlZnMsXG4gIG9uU2VuZE1lc3NhZ2VSZWFkeSxcbiAgZXhwYW5kZWQsXG4gIGhhc05vQWdlbnRzLFxuICBhZ2VudHMsXG59OiBDaGF0QUlDb250ZW50UHJvcHMpID0+IHtcbiAgaWYgKGN1cnJlbnRPcHRpb24gPT09IG9wdGlvbnMuY2hhdCkge1xuICAgIHJldHVybiAoXG4gICAgICA8U0NDQUlDb250ZW50V3JhcHBlcj5cbiAgICAgICAgPENoYXRBSU1lc3NhZ2VzXG4gICAgICAgICAgdXNlckluaXRpYWxNZXNzYWdlPXtyZWZzLnVzZXJJbml0aWFsTWVzc2FnZX1cbiAgICAgICAgICBpbml0aWFsQ2hhdElkPXtyZWZzLmluaXRpYWxDaGF0SWR9XG4gICAgICAgICAgb25FcnJvcj17b25FcnJvcn1cbiAgICAgICAgICBvblNlbmRNZXNzYWdlUmVhZHk9e29uU2VuZE1lc3NhZ2VSZWFkeX1cbiAgICAgICAgICBhdHRhY2htZW50cz17cmVmcy51c2VySW5pdGlhbE1lc3NhZ2UuYXR0YWNobWVudHN9XG4gICAgICAgICAgYWdlbnRzPXthZ2VudHN9XG4gICAgICAgICAgZXhwYW5kZWQ9e2V4cGFuZGVkfVxuICAgICAgICAvPlxuICAgICAgPC9TQ0NBSUNvbnRlbnRXcmFwcGVyPlxuICAgIClcbiAgfVxuXG4gIGlmIChjdXJyZW50T3B0aW9uID09PSBvcHRpb25zLnByb2plY3RTdW1tYXJ5KSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxTQ0NBSUNvbnRlbnRXcmFwcGVyPlxuICAgICAgICA8UHJvamVjdFN1bW1hcnlDb250ZW50IG9uUmVzdGFydFN1bW1hcnk9e2hhbmRsZXJzLmhvbWV9IC8+XG4gICAgICA8L1NDQ0FJQ29udGVudFdyYXBwZXI+XG4gICAgKVxuICB9XG5cbiAgaWYgKGN1cnJlbnRPcHRpb24gPT09IG9wdGlvbnMucHJvamVjdFNlbGVjdG9yKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxTQ0NBSUNvbnRlbnRXcmFwcGVyPlxuICAgICAgICA8Q2hhdEFJUHJvamVjdFNlbGVjdG9yIGhhbmRsZXJzPXtoYW5kbGVycy5oYW5kbGVHb0hvbWV9IC8+XG4gICAgICA8L1NDQ0FJQ29udGVudFdyYXBwZXI+XG4gICAgKVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8U0NDQUlDb250ZW50V3JhcHBlcj5cbiAgICAgIDxDaGF0QUlIb21lIGhhbmRsZXJzPXtoYW5kbGVyc30gb25TdGFydENoYXQ9e2hhbmRsZXJzLmNoYXR9IGV4cGFuZGVkPXtleHBhbmRlZH0gaGFzTm9BZ2VudHM9e2hhc05vQWdlbnRzfSAvPlxuICAgIDwvU0NDQUlDb250ZW50V3JhcHBlcj5cbiAgKVxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0EsT0FBT0EsS0FBSyxNQUFNLE9BQU87QUFDekIsU0FBU0MsVUFBVSxRQUFRLGVBQWU7QUFDMUMsU0FBU0MscUJBQXFCLFFBQVEsMEJBQTBCO0FBRWhFLFNBQVNDLE9BQU8sUUFBUSwwQkFBMEI7QUFFbEQsU0FBU0MscUJBQXFCLFFBQVEsMEJBQTBCO0FBRWhFLFNBQVNDLG1CQUFtQixRQUFRLHdCQUF3QjtBQUM1RCxTQUFTQyxjQUFjLFFBQVEsbUJBQW1CO0FBQUEsU0FBQUMsR0FBQSxJQUFBQyxJQUFBO0FBeUJsRCxPQUFPLElBQU1DLGFBQWEsR0FBRyxTQUFoQkEsYUFBYUEsQ0FBQUMsSUFBQSxFQVNBO0VBQUEsSUFSeEJDLGFBQWEsR0FBQUQsSUFBQSxDQUFiQyxhQUFhO0lBQ2JDLFFBQVEsR0FBQUYsSUFBQSxDQUFSRSxRQUFRO0lBQ1JDLE9BQU8sR0FBQUgsSUFBQSxDQUFQRyxPQUFPO0lBQ1BDLElBQUksR0FBQUosSUFBQSxDQUFKSSxJQUFJO0lBQ0pDLGtCQUFrQixHQUFBTCxJQUFBLENBQWxCSyxrQkFBa0I7SUFDbEJDLFFBQVEsR0FBQU4sSUFBQSxDQUFSTSxRQUFRO0lBQ1JDLFdBQVcsR0FBQVAsSUFBQSxDQUFYTyxXQUFXO0lBQ1hDLE1BQU0sR0FBQVIsSUFBQSxDQUFOUSxNQUFNO0VBRU4sSUFBSVAsYUFBYSxLQUFLUixPQUFPLENBQUNnQixJQUFJLEVBQUU7SUFDbEMsb0JBQ0VYLElBQUEsQ0FBQ0gsbUJBQW1CO01BQUFlLFFBQUEsZUFDbEJaLElBQUEsQ0FBQ0YsY0FBYztRQUNiZSxrQkFBa0IsRUFBRVAsSUFBSSxDQUFDTyxrQkFBbUI7UUFDNUNDLGFBQWEsRUFBRVIsSUFBSSxDQUFDUSxhQUFjO1FBQ2xDVCxPQUFPLEVBQUVBLE9BQVE7UUFDakJFLGtCQUFrQixFQUFFQSxrQkFBbUI7UUFDdkNRLFdBQVcsRUFBRVQsSUFBSSxDQUFDTyxrQkFBa0IsQ0FBQ0UsV0FBWTtRQUNqREwsTUFBTSxFQUFFQSxNQUFPO1FBQ2ZGLFFBQVEsRUFBRUE7TUFBUyxDQUNwQjtJQUFDLENBQ2lCLENBQUM7RUFFMUI7RUFFQSxJQUFJTCxhQUFhLEtBQUtSLE9BQU8sQ0FBQ3FCLGNBQWMsRUFBRTtJQUM1QyxvQkFDRWhCLElBQUEsQ0FBQ0gsbUJBQW1CO01BQUFlLFFBQUEsZUFDbEJaLElBQUEsQ0FBQ04scUJBQXFCO1FBQUN1QixnQkFBZ0IsRUFBRWIsUUFBUSxDQUFDYztNQUFLLENBQUU7SUFBQyxDQUN2QyxDQUFDO0VBRTFCO0VBRUEsSUFBSWYsYUFBYSxLQUFLUixPQUFPLENBQUN3QixlQUFlLEVBQUU7SUFDN0Msb0JBQ0VuQixJQUFBLENBQUNILG1CQUFtQjtNQUFBZSxRQUFBLGVBQ2xCWixJQUFBLENBQUNKLHFCQUFxQjtRQUFDUSxRQUFRLEVBQUVBLFFBQVEsQ0FBQ2dCO01BQWEsQ0FBRTtJQUFDLENBQ3ZDLENBQUM7RUFFMUI7RUFFQSxvQkFDRXBCLElBQUEsQ0FBQ0gsbUJBQW1CO0lBQUFlLFFBQUEsZUFDbEJaLElBQUEsQ0FBQ1AsVUFBVTtNQUFDVyxRQUFRLEVBQUVBLFFBQVM7TUFBQ2lCLFdBQVcsRUFBRWpCLFFBQVEsQ0FBQ08sSUFBSztNQUFDSCxRQUFRLEVBQUVBLFFBQVM7TUFBQ0MsV0FBVyxFQUFFQTtJQUFZLENBQUU7RUFBQyxDQUN6RixDQUFDO0FBRTFCLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -2,6 +2,7 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
|
2
2
|
/* eslint-disable react/function-component-definition */
|
|
3
3
|
/* eslint-disable jsx-a11y/click-events-have-key-events */
|
|
4
4
|
/* eslint-disable jsx-a11y/no-static-element-interactions */
|
|
5
|
+
/* eslint-disable no-console */
|
|
5
6
|
import { useEffect, useRef, useState, useCallback, useMemo } from 'react';
|
|
6
7
|
import { Template } from '@projectcor/icons/lib/components/Template';
|
|
7
8
|
import { Tooltip } from '@projectcor/tooltipv2/lib/components/Tooltip';
|
|
@@ -189,7 +190,7 @@ export var ChatAIHome = function ChatAIHome(_ref) {
|
|
|
189
190
|
expanded: expanded,
|
|
190
191
|
children: !isMAIA && (agent === null || agent === void 0 ? void 0 : agent.introduction)
|
|
191
192
|
})]
|
|
192
|
-
}), showProjectSummary &&
|
|
193
|
+
}), showProjectSummary && /*#__PURE__*/_jsxs(SCCAHWrapperSummaryProject, {
|
|
193
194
|
onClick: handlers.projectSummary,
|
|
194
195
|
children: [/*#__PURE__*/_jsx(SCCAIHomeProjectSummary, {
|
|
195
196
|
children: /*#__PURE__*/_jsx(Template, {
|
|
@@ -218,4 +219,4 @@ export var ChatAIHome = function ChatAIHome(_ref) {
|
|
|
218
219
|
})
|
|
219
220
|
});
|
|
220
221
|
};
|
|
221
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJ1c2VSZWYiLCJ1c2VTdGF0ZSIsInVzZUNhbGxiYWNrIiwidXNlTWVtbyIsIlRlbXBsYXRlIiwiVG9vbHRpcCIsInVzZVQiLCJ1c2VVc2VyIiwiR0xPQkFMX0NPTE9SUyIsIlNDQ0FJSG9tZUNvbnRhaW5lciIsIlNDQ0FJSG9tZUNvbnRlbnQiLCJTQ0NBSUhvbWVDb250ZW50SW5uZXIiLCJTQ0NBSUhvbWVHcmFkaWVudFRvcCIsIlNDQ0FJSG9tZUdyYWRpZW50Qm90dG9tIiwiU0NDQUlIb21lSGVhZGVyIiwiU0NDQUlIb21lR3JlZXRpbmciLCJTQ0NBSUhvbWVBZ2VudEluZm9Db250YWluZXIiLCJTQ0NBSUhvbWVBZ2VudEluZm8iLCJTQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeSIsIlNDQ0FJSG9tZVByb2plY3RTdW1tYXJ5Q29udGVudCIsIlNDQ0FJSG9tZVByb2plY3RTdW1tYXJ5VGl0bGUiLCJTQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeURlc2NyaXB0aW9uIiwiU0NDQUhXcmFwcGVyU3VtbWFyeVByb2plY3QiLCJTQ0NBSUhvbWVJbnRyb2R1Y3Rpb24iLCJTQ0NBSUhvbWVDcmVhdGVkQnlDb250YWluZXIiLCJTQ0NBSUhvbWVDcmVhdGVkQnlUZXh0IiwiU0NDQUlIb21lQ3JlYXRlZEJ5VGV4dE5hbWUiLCJTQ0NBSUhvbWVFbXB0eUNvbnRhaW5lciIsIlNDQ0FJSG9tZUVtcHR5VGV4dENvbnRhaW5lciIsIlNDQ0FJSG9tZUVtcHR5RGVzY3JpcHRpb24iLCJTQ0NBSUhvbWVFbXB0eUJ1dHRvbiIsIlNDQ0FJSG9tZUljb25Db250YWluZXIiLCJTQ0NBSUhvbWVHcmFkaWVudDEiLCJTQ0NBSUhvbWVHcmFkaWVudDIiLCJTQ0NBSUhvbWVMb2dvV3JhcHBlciIsInVzZUdsb2JhbENvbnRleHQiLCJ2YWxpZGF0ZUlzTWFpYSIsIkZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucyIsIkVtcHR5U3RhdGVBZ2VudHMiLCJFVkVOVFMiLCJ1c2VFdmVudCIsIk1BSUFJc29sb2dvIiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkZyZXF1ZW50UXVlc3Rpb25zIiwiQ2hhdEFJSG9tZSIsIl9yZWYiLCJoYW5kbGVycyIsIm9uU3RhcnRDaGF0IiwiZXhwYW5kZWQiLCJoYXNOb0FnZW50cyIsIl91c2VUIiwidCIsImkxOG4iLCJfdXNlR2xvYmFsQ29udGV4dCIsImFnZW50Iiwic2VjdGlvbiIsInVzZXIiLCJldmVudCIsImlzTUFJQSIsImxhbmciLCJsYW5ndWFnZSIsInN1bW1hcnlQcm9qZWN0QWNjZXNzIiwid2luZG93IiwiU3RyaW5nIiwiTUFJQV9QUk9KRUNUX1NVTU1BUllfRkVBVFVSRV9BQ0NFU1MiLCJ0b0xvd2VyQ2FzZSIsIm1haWFQcm9qZWN0U3VtbWFyeUFjY2VzcyIsImZhcXNBY2Nlc3MiLCJzaG93UHJvamVjdFN1bW1hcnkiLCJzaG93RkFRcyIsImNvbnRlbnRDb250YWluZXJSZWYiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJzaG93VG9wR3JhZGllbnQiLCJzZXRTaG93VG9wR3JhZGllbnQiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsInNob3dCb3R0b21HcmFkaWVudCIsInNldFNob3dCb3R0b21HcmFkaWVudCIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwiaXNTY3JvbGxpbmciLCJzZXRJc1Njcm9sbGluZyIsInNjcm9sbFRpbWVvdXRSZWYiLCJncmVldGluZyIsImludHJvIiwiaW50cm9kdWN0aW9uIiwiQXJyYXkiLCJpc0FycmF5IiwibGVuZ3RoIiwiTWF0aCIsImZsb29yIiwicmFuZG9tIiwiaWQiLCJjaGVja1Njcm9sbCIsImNvbnRhaW5lciIsImN1cnJlbnQiLCJzY3JvbGxUb3AiLCJzY3JvbGxIZWlnaHQiLCJjbGllbnRIZWlnaHQiLCJpc1Njcm9sbGFibGUiLCJpc0F0VG9wIiwiaXNBdEJvdHRvbSIsImNsZWFyVGltZW91dCIsInNldFRpbWVvdXQiLCJ1bmRlZmluZWQiLCJhZGRFdmVudExpc3RlbmVyIiwidGltZW91dElkIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIl91c2VyJHBlcm1pc3Npb25zIiwiX3VzZXIkcGVybWlzc2lvbnMyIiwiY2hpbGRyZW4iLCJwZXJtaXNzaW9ucyIsImFpX2FnZW50cyIsImNyZWF0ZSIsIk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFMiLCJvbkNsaWNrIiwib3Blbk1vZGFsIiwib3B0aW9uIiwiZG9jdW1lbnQiLCJkaXNwYXRjaEV2ZW50IiwiQ3VzdG9tRXZlbnQiLCJkZXRhaWwiLCJhZ2VudFZhbHVlcyIsImlzT3BlbiIsInJlbmRlckhlYWRlckNvbnRlbnQiLCJfYWdlbnQkY3JlYXRlZF9ieSIsIl9hZ2VudCRjcmVhdGVkX2J5MiIsImVtb2ppIiwibmFtZSIsImNyZWF0ZWRfYnkiLCJ0aXRsZSIsImlzX2RlbGV0ZWQiLCJzdHlsZSIsImRpc3BsYXkiLCJmbGV4RGlyZWN0aW9uIiwiYWxpZ25JdGVtcyIsImdhcCIsInJlZiIsIiRpc0FnZW50VmlldyIsIiRzaG93IiwiJGdhcCIsIiRtYXhXaWR0aCIsImVudGl0eSIsInByb2plY3RTdW1tYXJ5IiwiY29sb3IiLCJwcmltYXJ5IiwiaGVpZ2h0Iiwid2lkdGgiLCJhZ2VudElkIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRBSUhvbWUvQ2hhdEFJSG9tZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvZnVuY3Rpb24tY29tcG9uZW50LWRlZmluaXRpb24gKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L2NsaWNrLWV2ZW50cy1oYXZlLWtleS1ldmVudHMgKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L25vLXN0YXRpYy1lbGVtZW50LWludGVyYWN0aW9ucyAqL1xuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlLCB1c2VDYWxsYmFjaywgdXNlTWVtbyB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgVGVtcGxhdGUgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9UZW1wbGF0ZSdcblxuaW1wb3J0IHsgVG9vbHRpcCB9IGZyb20gJ0Bwcm9qZWN0Y29yL3Rvb2x0aXB2Mi9saWIvY29tcG9uZW50cy9Ub29sdGlwJ1xuaW1wb3J0IHsgdXNlVCB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZVQnXG5pbXBvcnQgeyB1c2VVc2VyIH0gZnJvbSAnLi4vLi4vLi4vY29udGV4dC9jb3ItdXNlcidcblxuaW1wb3J0IHsgR0xPQkFMX0NPTE9SUyB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9jb25maWcnXG5cbmltcG9ydCB7IG9wdGlvbnMgfSBmcm9tICcuLi9DaGF0QUlNb2RhbC9jb25zdGFudHMnXG5cbmltcG9ydCB7XG4gIFNDQ0FJSG9tZUNvbnRhaW5lcixcbiAgU0NDQUlIb21lQ29udGVudCxcbiAgU0NDQUlIb21lQ29udGVudElubmVyLFxuICBTQ0NBSUhvbWVHcmFkaWVudFRvcCxcbiAgU0NDQUlIb21lR3JhZGllbnRCb3R0b20sXG4gIFNDQ0FJSG9tZUhlYWRlcixcbiAgU0NDQUlIb21lR3JlZXRpbmcsXG4gIFNDQ0FJSG9tZUFnZW50SW5mb0NvbnRhaW5lcixcbiAgU0NDQUlIb21lQWdlbnRJbmZvLFxuICBTQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeSxcbiAgU0NDQUlIb21lUHJvamVjdFN1bW1hcnlDb250ZW50LFxuICBTQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeVRpdGxlLFxuICBTQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeURlc2NyaXB0aW9uLFxuICBTQ0NBSFdyYXBwZXJTdW1tYXJ5UHJvamVjdCxcbiAgU0NDQUlIb21lSW50cm9kdWN0aW9uLFxuICBTQ0NBSUhvbWVDcmVhdGVkQnlDb250YWluZXIsXG4gIFNDQ0FJSG9tZUNyZWF0ZWRCeVRleHQsXG4gIFNDQ0FJSG9tZUNyZWF0ZWRCeVRleHROYW1lLFxuICBTQ0NBSUhvbWVFbXB0eUNvbnRhaW5lcixcbiAgU0NDQUlIb21lRW1wdHlUZXh0Q29udGFpbmVyLFxuICBTQ0NBSUhvbWVFbXB0eURlc2NyaXB0aW9uLFxuICBTQ0NBSUhvbWVFbXB0eUJ1dHRvbixcbiAgU0NDQUlIb21lSWNvbkNvbnRhaW5lcixcbiAgU0NDQUlIb21lR3JhZGllbnQxLFxuICBTQ0NBSUhvbWVHcmFkaWVudDIsXG4gIFNDQ0FJSG9tZUxvZ29XcmFwcGVyLFxufSBmcm9tICcuL3N0eWxlcydcbmltcG9ydCB7IHVzZUdsb2JhbENvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9jb250ZXh0L2dsb2JhbC1jb250ZXh0J1xuaW1wb3J0IHsgdmFsaWRhdGVJc01haWEgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy91dGlscy92YWxpZGF0ZUlzTWFpYSdcbmltcG9ydCB7IEFnZW50IH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvYWdlbnQnXG5pbXBvcnQgeyBBdHRhY2htZW50RmlsZSB9IGZyb20gJy4uL0NoYXRGb290ZXIvQ2hhdEZvb3RlcidcbmltcG9ydCB7IEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucyB9IGZyb20gJy4uLy4uL2F0b21zL0ZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucydcbmltcG9ydCB7IEVtcHR5U3RhdGVBZ2VudHMgfSBmcm9tICcuLi8uLi9hdG9tcy9pY29ucy9FbXB0eVN0YXRlQWdlbnRzJ1xuaW1wb3J0IHsgRVZFTlRTLCB1c2VFdmVudCB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZUV2ZW50J1xuaW1wb3J0IHsgTUFJQUlzb2xvZ28gfSBmcm9tICcuLi8uLi9hdG9tcy9pY29ucy9NQUlBSXNvbG9nbydcblxudHlwZSBDaGF0QUlIb21lUHJvcHMgPSB7XG4gIG9uU3RhcnRDaGF0OiAobWVzc2FnZTogc3RyaW5nLCBhdHRhY2htZW50cz86IEF0dGFjaG1lbnRGaWxlW10gfCBudWxsLCBmYXFJZD86IHN0cmluZykgPT4gdm9pZFxuICBoYW5kbGVyczogUmVjb3JkPG9wdGlvbnMsICgpID0+IHZvaWQ+XG4gIGV4cGFuZGVkPzogYm9vbGVhblxuICBoYXNOb0FnZW50cz86IGJvb2xlYW5cbn1cblxuZXhwb3J0IGVudW0gRnJlcXVlbnRRdWVzdGlvbnMge1xuICByZW50YWJpbGlkYWRfcHJveWVjdG8gPSAncmVudGFiaWxpZGFkX3Byb3llY3RvJyxcbiAgYXZhbmNlX3Byb3llY3RvID0gJ2F2YW5jZV9wcm95ZWN0bycsXG59XG5cbmV4cG9ydCBjb25zdCBDaGF0QUlIb21lID0gKHsgaGFuZGxlcnMsIG9uU3RhcnRDaGF0LCBleHBhbmRlZCwgaGFzTm9BZ2VudHMgfTogQ2hhdEFJSG9tZVByb3BzKSA9PiB7XG4gIGNvbnN0IHsgdCwgaTE4biB9ID0gdXNlVCgpXG4gIGNvbnN0IHsgYWdlbnQsIHNlY3Rpb24gfSA9IHVzZUdsb2JhbENvbnRleHQoKVxuICBjb25zdCB1c2VyID0gdXNlVXNlcigpXG4gIGNvbnN0IGV2ZW50ID0gdXNlRXZlbnQoKVxuXG4gIGNvbnN0IGlzTUFJQSA9IHZhbGlkYXRlSXNNYWlhKGFnZW50IGFzIEFnZW50KVxuICBjb25zdCBsYW5nID0gaTE4bi5sYW5ndWFnZSA9PT0gJ2JyJyA/ICdwdCcgOiBpMThuLmxhbmd1YWdlXG5cbiAgY29uc3Qgc3VtbWFyeVByb2plY3RBY2Nlc3MgPVxuICAgIHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmXG4gICAgKFN0cmluZyh3aW5kb3cuTUFJQV9QUk9KRUNUX1NVTU1BUllfRkVBVFVSRV9BQ0NFU1MpLnRvTG93ZXJDYXNlKCkgPT09ICd0cnVlJyB8fFxuICAgICAgU3RyaW5nKHdpbmRvdy5tYWlhUHJvamVjdFN1bW1hcnlBY2Nlc3MpLnRvTG93ZXJDYXNlKCkgPT09ICd0cnVlJylcbiAgY29uc3QgZmFxc0FjY2VzcyA9IHRydWVcbiAgY29uc3Qgc2hvd1Byb2plY3RTdW1tYXJ5ID0gISEoaXNNQUlBICYmIHN1bW1hcnlQcm9qZWN0QWNjZXNzKVxuICBjb25zdCBzaG93RkFRcyA9ICEhKGlzTUFJQSAmJiBmYXFzQWNjZXNzKVxuXG4gIC8vIEzDs2dpY2EgZGVsIHNjcm9sbCBjb24gZ3JhZGllbnRlc1xuICBjb25zdCBjb250ZW50Q29udGFpbmVyUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICBjb25zdCBbc2hvd1RvcEdyYWRpZW50LCBzZXRTaG93VG9wR3JhZGllbnRdID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFtzaG93Qm90dG9tR3JhZGllbnQsIHNldFNob3dCb3R0b21HcmFkaWVudF0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2lzU2Nyb2xsaW5nLCBzZXRJc1Njcm9sbGluZ10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3Qgc2Nyb2xsVGltZW91dFJlZiA9IHVzZVJlZjxSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IG51bGw+KG51bGwpXG5cbiAgLy8gU2FsdWRvIGFsZWF0b3JpbyBkZXNkZSBhZ2VudC5pbnRyb2R1Y3Rpb24gKGFycmF5IGNvbiAzIHZhcmlhbnRlcyBkZWwgYmFjaylcbiAgY29uc3QgZ3JlZXRpbmcgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBpbnRybyA9IGFnZW50Py5pbnRyb2R1Y3Rpb25cbiAgICBpZiAoIWludHJvKSByZXR1cm4gJydcbiAgICBpZiAoQXJyYXkuaXNBcnJheShpbnRybykgJiYgaW50cm8ubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIGludHJvW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGludHJvLmxlbmd0aCldXG4gICAgfVxuICAgIHJldHVybiB0eXBlb2YgaW50cm8gPT09ICdzdHJpbmcnID8gaW50cm8gOiAnJ1xuICB9LCBbYWdlbnQ/LmlkLCBhZ2VudD8uaW50cm9kdWN0aW9uLCBzZWN0aW9uXSlcblxuICBjb25zdCBjaGVja1Njcm9sbCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBjb25zdCBjb250YWluZXIgPSBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnRcbiAgICBpZiAoIWNvbnRhaW5lciB8fCAhc2hvd0ZBUXMpIHJldHVyblxuXG4gICAgY29uc3QgeyBzY3JvbGxUb3AsIHNjcm9sbEhlaWdodCwgY2xpZW50SGVpZ2h0IH0gPSBjb250YWluZXJcbiAgICBjb25zdCBpc1Njcm9sbGFibGUgPSBzY3JvbGxIZWlnaHQgPiBjbGllbnRIZWlnaHRcbiAgICBjb25zdCBpc0F0VG9wID0gc2Nyb2xsVG9wID09PSAwXG4gICAgY29uc3QgaXNBdEJvdHRvbSA9IHNjcm9sbFRvcCArIGNsaWVudEhlaWdodCA+PSBzY3JvbGxIZWlnaHQgLSAxXG5cbiAgICBzZXRTaG93VG9wR3JhZGllbnQoaXNTY3JvbGxhYmxlICYmICFpc0F0VG9wKVxuICAgIHNldFNob3dCb3R0b21HcmFkaWVudChpc1Njcm9sbGFibGUgJiYgIWlzQXRCb3R0b20pXG4gICAgc2V0SXNTY3JvbGxpbmcodHJ1ZSlcblxuICAgIGlmIChzY3JvbGxUaW1lb3V0UmVmLmN1cnJlbnQpIHtcbiAgICAgIGNsZWFyVGltZW91dChzY3JvbGxUaW1lb3V0UmVmLmN1cnJlbnQpXG4gICAgfVxuXG4gICAgc2Nyb2xsVGltZW91dFJlZi5jdXJyZW50ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBzZXRJc1Njcm9sbGluZyhmYWxzZSlcbiAgICB9LCAxNTApXG4gIH0sIFtzaG93RkFRc10pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIXNob3dGQVFzKSB7XG4gICAgICBzZXRTaG93VG9wR3JhZGllbnQoZmFsc2UpXG4gICAgICBzZXRTaG93Qm90dG9tR3JhZGllbnQoZmFsc2UpXG4gICAgICByZXR1cm4gdW5kZWZpbmVkXG4gICAgfVxuXG4gICAgY29uc3QgY29udGFpbmVyID0gY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50XG4gICAgaWYgKCFjb250YWluZXIpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWRcbiAgICB9XG5cbiAgICBjaGVja1Njcm9sbCgpXG4gICAgY29udGFpbmVyLmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGNoZWNrU2Nyb2xsKVxuXG4gICAgY29uc3QgdGltZW91dElkID0gc2V0VGltZW91dChjaGVja1Njcm9sbCwgMTAwKVxuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGNvbnRhaW5lci5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBjaGVja1Njcm9sbClcbiAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SWQpXG4gICAgICBpZiAoc2Nyb2xsVGltZW91dFJlZi5jdXJyZW50KSB7XG4gICAgICAgIGNsZWFyVGltZW91dChzY3JvbGxUaW1lb3V0UmVmLmN1cnJlbnQpXG4gICAgICB9XG4gICAgfVxuICB9LCBbc2hvd0ZBUXMsIGNoZWNrU2Nyb2xsXSlcblxuICBpZiAoaGFzTm9BZ2VudHMpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFNDQ0FJSG9tZUNvbnRhaW5lcj5cbiAgICAgICAgPFNDQ0FJSG9tZUNvbnRlbnQ+XG4gICAgICAgICAgPFNDQ0FJSG9tZUVtcHR5Q29udGFpbmVyPlxuICAgICAgICAgICAgPEVtcHR5U3RhdGVBZ2VudHMgLz5cbiAgICAgICAgICAgIDxTQ0NBSUhvbWVFbXB0eVRleHRDb250YWluZXI+XG4gICAgICAgICAgICAgIDxTQ0NBSUhvbWVHcmVldGluZz57dCgnaG9tZU1lbnUubm9BZ2VudHMudGl0bGUnKX08L1NDQ0FJSG9tZUdyZWV0aW5nPlxuICAgICAgICAgICAgICA8U0NDQUlIb21lRW1wdHlEZXNjcmlwdGlvbj5cbiAgICAgICAgICAgICAgICB7dXNlci5wZXJtaXNzaW9ucz8uYWlfYWdlbnRzPy5jcmVhdGVcbiAgICAgICAgICAgICAgICAgID8gdCgnaG9tZU1lbnUubm9BZ2VudHMuZGVzY3JpcHRpb25DcmVhdGUnKVxuICAgICAgICAgICAgICAgICAgOiB0KCdob21lTWVudS5ub0FnZW50cy5kZXNjcmlwdGlvbicpfVxuICAgICAgICAgICAgICA8L1NDQ0FJSG9tZUVtcHR5RGVzY3JpcHRpb24+XG4gICAgICAgICAgICA8L1NDQ0FJSG9tZUVtcHR5VGV4dENvbnRhaW5lcj5cbiAgICAgICAgICAgIHt1c2VyLnBlcm1pc3Npb25zPy5haV9hZ2VudHM/LmNyZWF0ZSAmJiB3aW5kb3cuTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UUyAmJiAoXG4gICAgICAgICAgICAgIDxTQ0NBSUhvbWVFbXB0eUJ1dHRvblxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgIGV2ZW50KEVWRU5UUy5vcGVuTW9kYWwsIHsgb3B0aW9uOiAnbmV3X2FnZW50JyB9KVxuICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChcbiAgICAgICAgICAgICAgICAgICAgbmV3IEN1c3RvbUV2ZW50KCdhYm0tYWdlbnQtbW9kYWwtc2V0LXZhbHVlcycsIHtcbiAgICAgICAgICAgICAgICAgICAgICBkZXRhaWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFnZW50VmFsdWVzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlzT3BlbjogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3QoJ2hvbWVNZW51Lm5vQWdlbnRzLmNyZWF0ZUFnZW50Jyl9XG4gICAgICAgICAgICAgIDwvU0NDQUlIb21lRW1wdHlCdXR0b24+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvU0NDQUlIb21lRW1wdHlDb250YWluZXI+XG4gICAgICAgIDwvU0NDQUlIb21lQ29udGVudD5cbiAgICAgIDwvU0NDQUlIb21lQ29udGFpbmVyPlxuICAgIClcbiAgfVxuXG4gIGNvbnN0IHJlbmRlckhlYWRlckNvbnRlbnQgPSAoKSA9PiB7XG4gICAgaWYgKCFpc01BSUEpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxTQ0NBSUhvbWVBZ2VudEluZm9Db250YWluZXI+XG4gICAgICAgICAgPFNDQ0FJSG9tZUFnZW50SW5mbz5cbiAgICAgICAgICAgIHthZ2VudD8uZW1vaml9IHthZ2VudD8ubmFtZX1cbiAgICAgICAgICA8L1NDQ0FJSG9tZUFnZW50SW5mbz5cbiAgICAgICAgICB7YWdlbnQ/LmNyZWF0ZWRfYnkgJiYgIWlzTUFJQSAmJiAoXG4gICAgICAgICAgICA8U0NDQUlIb21lQ3JlYXRlZEJ5Q29udGFpbmVyPlxuICAgICAgICAgICAgICA8VG9vbHRpcFxuICAgICAgICAgICAgICAgIHRpdGxlPXtcbiAgICAgICAgICAgICAgICAgIGFnZW50Py5jcmVhdGVkX2J5Py5pc19kZWxldGVkID8gdCgnaG9tZU1lbnUuY3JlYXRlZEJ5VG9vbHRpcERlbGV0ZWQnKSA6IHQoJ2hvbWVNZW51LmNyZWF0ZWRCeVRvb2x0aXAnKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxTQ0NBSUhvbWVDcmVhdGVkQnlUZXh0PlxuICAgICAgICAgICAgICAgICAge3QoJ2hvbWVNZW51LmNyZWF0ZWRCeScpfXsnICd9XG4gICAgICAgICAgICAgICAgICA8U0NDQUlIb21lQ3JlYXRlZEJ5VGV4dE5hbWU+e2FnZW50Py5jcmVhdGVkX2J5Py5uYW1lfTwvU0NDQUlIb21lQ3JlYXRlZEJ5VGV4dE5hbWU+XG4gICAgICAgICAgICAgICAgPC9TQ0NBSUhvbWVDcmVhdGVkQnlUZXh0PlxuICAgICAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgICAgICA8L1NDQ0FJSG9tZUNyZWF0ZWRCeUNvbnRhaW5lcj5cbiAgICAgICAgICApfVxuICAgICAgICA8L1NDQ0FJSG9tZUFnZW50SW5mb0NvbnRhaW5lcj5cbiAgICAgIClcbiAgICB9XG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBzdHlsZT17eyBkaXNwbGF5OiAnZmxleCcsIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLCBhbGlnbkl0ZW1zOiAnY2VudGVyJywgZ2FwOiAnOHB4JyB9fT5cbiAgICAgICAgPFNDQ0FJSG9tZUljb25Db250YWluZXI+XG4gICAgICAgICAgPFNDQ0FJSG9tZUdyYWRpZW50MSAvPlxuICAgICAgICAgIDxTQ0NBSUhvbWVHcmFkaWVudDIgLz5cbiAgICAgICAgICA8U0NDQUlIb21lTG9nb1dyYXBwZXI+XG4gICAgICAgICAgICA8TUFJQUlzb2xvZ28gLz5cbiAgICAgICAgICA8L1NDQ0FJSG9tZUxvZ29XcmFwcGVyPlxuICAgICAgICA8L1NDQ0FJSG9tZUljb25Db250YWluZXI+XG4gICAgICAgIDxTQ0NBSUhvbWVHcmVldGluZz57Z3JlZXRpbmd9PC9TQ0NBSUhvbWVHcmVldGluZz5cbiAgICAgIDwvZGl2PlxuICAgIClcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPFNDQ0FJSG9tZUNvbnRhaW5lciBzaG93RkFRcz17c2hvd0ZBUXN9PlxuICAgICAgPFNDQ0FJSG9tZUNvbnRlbnQgcmVmPXtjb250ZW50Q29udGFpbmVyUmVmfSBzaG93RkFRcz17c2hvd0ZBUXN9ICRpc0FnZW50Vmlldz17IWlzTUFJQX0+XG4gICAgICAgIHtzaG93RkFRcyAmJiA8U0NDQUlIb21lR3JhZGllbnRUb3AgJHNob3c9e3Nob3dUb3BHcmFkaWVudH0gLz59XG4gICAgICAgIDxTQ0NBSUhvbWVDb250ZW50SW5uZXIgc2hvd0ZBUXM9e3Nob3dGQVFzfSAkaXNBZ2VudFZpZXc9eyFpc01BSUF9PlxuICAgICAgICAgIDxTQ0NBSUhvbWVIZWFkZXJcbiAgICAgICAgICAgICRnYXA9e2lzTUFJQSAmJiBzZWN0aW9uICE9PSAncHJvamVjdCcgPyAnOHB4JyA6ICcyMHB4J31cbiAgICAgICAgICAgICRtYXhXaWR0aD17aXNNQUlBID8gJzEwMCUnIDogJzM4MHB4J31cbiAgICAgICAgICAgICRpc0FnZW50Vmlldz17IWlzTUFJQX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7cmVuZGVySGVhZGVyQ29udGVudCgpfVxuXG4gICAgICAgICAgICB7c2VjdGlvbiAhPT0gJ3Byb2plY3QnICYmIChcbiAgICAgICAgICAgICAgPFNDQ0FJSG9tZUludHJvZHVjdGlvbiBleHBhbmRlZD17ZXhwYW5kZWR9PnshaXNNQUlBICYmIGFnZW50Py5pbnRyb2R1Y3Rpb259PC9TQ0NBSUhvbWVJbnRyb2R1Y3Rpb24+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvU0NDQUlIb21lSGVhZGVyPlxuICAgICAgICAgIHtzaG93UHJvamVjdFN1bW1hcnkgJiYgYWdlbnQ/LmVudGl0eSA9PT0gJ3Byb2plY3QnICYmIChcbiAgICAgICAgICAgIDxTQ0NBSFdyYXBwZXJTdW1tYXJ5UHJvamVjdCBvbkNsaWNrPXtoYW5kbGVycy5wcm9qZWN0U3VtbWFyeX0+XG4gICAgICAgICAgICAgIDxTQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeT5cbiAgICAgICAgICAgICAgICA8VGVtcGxhdGUgY29sb3I9e0dMT0JBTF9DT0xPUlMucHJpbWFyeX0gaGVpZ2h0PXsyNH0gd2lkdGg9ezI0fSAvPlxuICAgICAgICAgICAgICA8L1NDQ0FJSG9tZVByb2plY3RTdW1tYXJ5PlxuICAgICAgICAgICAgICA8U0NDQUlIb21lUHJvamVjdFN1bW1hcnlDb250ZW50PlxuICAgICAgICAgICAgICAgIDxTQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeVRpdGxlPnt0KCdob21lTWVudS5wcm9qZWN0U3VtbWFyeS50aXRsZScpfTwvU0NDQUlIb21lUHJvamVjdFN1bW1hcnlUaXRsZT5cbiAgICAgICAgICAgICAgICA8U0NDQUlIb21lUHJvamVjdFN1bW1hcnlEZXNjcmlwdGlvbj5cbiAgICAgICAgICAgICAgICAgIHt0KCdob21lTWVudS5wcm9qZWN0U3VtbWFyeS5kZXNjcmlwdGlvbicpfVxuICAgICAgICAgICAgICAgIDwvU0NDQUlIb21lUHJvamVjdFN1bW1hcnlEZXNjcmlwdGlvbj5cbiAgICAgICAgICAgICAgPC9TQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeUNvbnRlbnQ+XG4gICAgICAgICAgICA8L1NDQ0FIV3JhcHBlclN1bW1hcnlQcm9qZWN0PlxuICAgICAgICAgICl9XG4gICAgICAgICAge3Nob3dGQVFzICYmIChcbiAgICAgICAgICAgIDxGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnNcbiAgICAgICAgICAgICAgb25TdGFydENoYXQ9e29uU3RhcnRDaGF0fVxuICAgICAgICAgICAgICBzaG93RkFRcz17c2hvd0ZBUXN9XG4gICAgICAgICAgICAgIHNob3dQcm9qZWN0U3VtbWFyeT17c2hvd1Byb2plY3RTdW1tYXJ5fVxuICAgICAgICAgICAgICBhZ2VudElkPXthZ2VudD8uaWR9XG4gICAgICAgICAgICAgIGxhbmc9e2xhbmd9XG4gICAgICAgICAgICAgIGlzU2Nyb2xsaW5nPXtpc1Njcm9sbGluZ31cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9TQ0NBSUhvbWVDb250ZW50SW5uZXI+XG4gICAgICAgIHtzaG93RkFRcyAmJiA8U0NDQUlIb21lR3JhZGllbnRCb3R0b20gJHNob3c9e3Nob3dCb3R0b21HcmFkaWVudH0gLz59XG4gICAgICA8L1NDQ0FJSG9tZUNvbnRlbnQ+XG4gICAgPC9TQ0NBSUhvbWVDb250YWluZXI+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTtBQUNBLFNBQVNBLFNBQVMsRUFBRUMsTUFBTSxFQUFFQyxRQUFRLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxRQUFRLE9BQU87QUFDekUsU0FBU0MsUUFBUSxRQUFRLDJDQUEyQztBQUVwRSxTQUFTQyxPQUFPLFFBQVEsOENBQThDO0FBQ3RFLFNBQVNDLElBQUksUUFBUSxxQkFBcUI7QUFDMUMsU0FBU0MsT0FBTyxRQUFRLDJCQUEyQjtBQUVuRCxTQUFTQyxhQUFhLFFBQVEsd0JBQXdCO0FBSXRELFNBQ0VDLGtCQUFrQixFQUNsQkMsZ0JBQWdCLEVBQ2hCQyxxQkFBcUIsRUFDckJDLG9CQUFvQixFQUNwQkMsdUJBQXVCLEVBQ3ZCQyxlQUFlLEVBQ2ZDLGlCQUFpQixFQUNq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
|
|
222
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJ1c2VSZWYiLCJ1c2VTdGF0ZSIsInVzZUNhbGxiYWNrIiwidXNlTWVtbyIsIlRlbXBsYXRlIiwiVG9vbHRpcCIsInVzZVQiLCJ1c2VVc2VyIiwiR0xPQkFMX0NPTE9SUyIsIlNDQ0FJSG9tZUNvbnRhaW5lciIsIlNDQ0FJSG9tZUNvbnRlbnQiLCJTQ0NBSUhvbWVDb250ZW50SW5uZXIiLCJTQ0NBSUhvbWVHcmFkaWVudFRvcCIsIlNDQ0FJSG9tZUdyYWRpZW50Qm90dG9tIiwiU0NDQUlIb21lSGVhZGVyIiwiU0NDQUlIb21lR3JlZXRpbmciLCJTQ0NBSUhvbWVBZ2VudEluZm9Db250YWluZXIiLCJTQ0NBSUhvbWVBZ2VudEluZm8iLCJTQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeSIsIlNDQ0FJSG9tZVByb2plY3RTdW1tYXJ5Q29udGVudCIsIlNDQ0FJSG9tZVByb2plY3RTdW1tYXJ5VGl0bGUiLCJTQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeURlc2NyaXB0aW9uIiwiU0NDQUhXcmFwcGVyU3VtbWFyeVByb2plY3QiLCJTQ0NBSUhvbWVJbnRyb2R1Y3Rpb24iLCJTQ0NBSUhvbWVDcmVhdGVkQnlDb250YWluZXIiLCJTQ0NBSUhvbWVDcmVhdGVkQnlUZXh0IiwiU0NDQUlIb21lQ3JlYXRlZEJ5VGV4dE5hbWUiLCJTQ0NBSUhvbWVFbXB0eUNvbnRhaW5lciIsIlNDQ0FJSG9tZUVtcHR5VGV4dENvbnRhaW5lciIsIlNDQ0FJSG9tZUVtcHR5RGVzY3JpcHRpb24iLCJTQ0NBSUhvbWVFbXB0eUJ1dHRvbiIsIlNDQ0FJSG9tZUljb25Db250YWluZXIiLCJTQ0NBSUhvbWVHcmFkaWVudDEiLCJTQ0NBSUhvbWVHcmFkaWVudDIiLCJTQ0NBSUhvbWVMb2dvV3JhcHBlciIsInVzZUdsb2JhbENvbnRleHQiLCJ2YWxpZGF0ZUlzTWFpYSIsIkZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucyIsIkVtcHR5U3RhdGVBZ2VudHMiLCJFVkVOVFMiLCJ1c2VFdmVudCIsIk1BSUFJc29sb2dvIiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkZyZXF1ZW50UXVlc3Rpb25zIiwiQ2hhdEFJSG9tZSIsIl9yZWYiLCJoYW5kbGVycyIsIm9uU3RhcnRDaGF0IiwiZXhwYW5kZWQiLCJoYXNOb0FnZW50cyIsIl91c2VUIiwidCIsImkxOG4iLCJfdXNlR2xvYmFsQ29udGV4dCIsImFnZW50Iiwic2VjdGlvbiIsInVzZXIiLCJldmVudCIsImlzTUFJQSIsImxhbmciLCJsYW5ndWFnZSIsInN1bW1hcnlQcm9qZWN0QWNjZXNzIiwid2luZG93IiwiU3RyaW5nIiwiTUFJQV9QUk9KRUNUX1NVTU1BUllfRkVBVFVSRV9BQ0NFU1MiLCJ0b0xvd2VyQ2FzZSIsIm1haWFQcm9qZWN0U3VtbWFyeUFjY2VzcyIsImZhcXNBY2Nlc3MiLCJzaG93UHJvamVjdFN1bW1hcnkiLCJzaG93RkFRcyIsImNvbnRlbnRDb250YWluZXJSZWYiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJzaG93VG9wR3JhZGllbnQiLCJzZXRTaG93VG9wR3JhZGllbnQiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsInNob3dCb3R0b21HcmFkaWVudCIsInNldFNob3dCb3R0b21HcmFkaWVudCIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwiaXNTY3JvbGxpbmciLCJzZXRJc1Njcm9sbGluZyIsInNjcm9sbFRpbWVvdXRSZWYiLCJncmVldGluZyIsImludHJvIiwiaW50cm9kdWN0aW9uIiwiQXJyYXkiLCJpc0FycmF5IiwibGVuZ3RoIiwiTWF0aCIsImZsb29yIiwicmFuZG9tIiwiaWQiLCJjaGVja1Njcm9sbCIsImNvbnRhaW5lciIsImN1cnJlbnQiLCJzY3JvbGxUb3AiLCJzY3JvbGxIZWlnaHQiLCJjbGllbnRIZWlnaHQiLCJpc1Njcm9sbGFibGUiLCJpc0F0VG9wIiwiaXNBdEJvdHRvbSIsImNsZWFyVGltZW91dCIsInNldFRpbWVvdXQiLCJ1bmRlZmluZWQiLCJhZGRFdmVudExpc3RlbmVyIiwidGltZW91dElkIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIl91c2VyJHBlcm1pc3Npb25zIiwiX3VzZXIkcGVybWlzc2lvbnMyIiwiY2hpbGRyZW4iLCJwZXJtaXNzaW9ucyIsImFpX2FnZW50cyIsImNyZWF0ZSIsIk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFMiLCJvbkNsaWNrIiwib3Blbk1vZGFsIiwib3B0aW9uIiwiZG9jdW1lbnQiLCJkaXNwYXRjaEV2ZW50IiwiQ3VzdG9tRXZlbnQiLCJkZXRhaWwiLCJhZ2VudFZhbHVlcyIsImlzT3BlbiIsInJlbmRlckhlYWRlckNvbnRlbnQiLCJfYWdlbnQkY3JlYXRlZF9ieSIsIl9hZ2VudCRjcmVhdGVkX2J5MiIsImVtb2ppIiwibmFtZSIsImNyZWF0ZWRfYnkiLCJ0aXRsZSIsImlzX2RlbGV0ZWQiLCJzdHlsZSIsImRpc3BsYXkiLCJmbGV4RGlyZWN0aW9uIiwiYWxpZ25JdGVtcyIsImdhcCIsInJlZiIsIiRpc0FnZW50VmlldyIsIiRzaG93IiwiJGdhcCIsIiRtYXhXaWR0aCIsInByb2plY3RTdW1tYXJ5IiwiY29sb3IiLCJwcmltYXJ5IiwiaGVpZ2h0Iiwid2lkdGgiLCJhZ2VudElkIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRBSUhvbWUvQ2hhdEFJSG9tZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvZnVuY3Rpb24tY29tcG9uZW50LWRlZmluaXRpb24gKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L2NsaWNrLWV2ZW50cy1oYXZlLWtleS1ldmVudHMgKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L25vLXN0YXRpYy1lbGVtZW50LWludGVyYWN0aW9ucyAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlLCB1c2VDYWxsYmFjaywgdXNlTWVtbyB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgVGVtcGxhdGUgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9UZW1wbGF0ZSdcblxuaW1wb3J0IHsgVG9vbHRpcCB9IGZyb20gJ0Bwcm9qZWN0Y29yL3Rvb2x0aXB2Mi9saWIvY29tcG9uZW50cy9Ub29sdGlwJ1xuaW1wb3J0IHsgdXNlVCB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZVQnXG5pbXBvcnQgeyB1c2VVc2VyIH0gZnJvbSAnLi4vLi4vLi4vY29udGV4dC9jb3ItdXNlcidcblxuaW1wb3J0IHsgR0xPQkFMX0NPTE9SUyB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9jb25maWcnXG5cbmltcG9ydCB7IG9wdGlvbnMgfSBmcm9tICcuLi9DaGF0QUlNb2RhbC9jb25zdGFudHMnXG5cbmltcG9ydCB7XG4gIFNDQ0FJSG9tZUNvbnRhaW5lcixcbiAgU0NDQUlIb21lQ29udGVudCxcbiAgU0NDQUlIb21lQ29udGVudElubmVyLFxuICBTQ0NBSUhvbWVHcmFkaWVudFRvcCxcbiAgU0NDQUlIb21lR3JhZGllbnRCb3R0b20sXG4gIFNDQ0FJSG9tZUhlYWRlcixcbiAgU0NDQUlIb21lR3JlZXRpbmcsXG4gIFNDQ0FJSG9tZUFnZW50SW5mb0NvbnRhaW5lcixcbiAgU0NDQUlIb21lQWdlbnRJbmZvLFxuICBTQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeSxcbiAgU0NDQUlIb21lUHJvamVjdFN1bW1hcnlDb250ZW50LFxuICBTQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeVRpdGxlLFxuICBTQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeURlc2NyaXB0aW9uLFxuICBTQ0NBSFdyYXBwZXJTdW1tYXJ5UHJvamVjdCxcbiAgU0NDQUlIb21lSW50cm9kdWN0aW9uLFxuICBTQ0NBSUhvbWVDcmVhdGVkQnlDb250YWluZXIsXG4gIFNDQ0FJSG9tZUNyZWF0ZWRCeVRleHQsXG4gIFNDQ0FJSG9tZUNyZWF0ZWRCeVRleHROYW1lLFxuICBTQ0NBSUhvbWVFbXB0eUNvbnRhaW5lcixcbiAgU0NDQUlIb21lRW1wdHlUZXh0Q29udGFpbmVyLFxuICBTQ0NBSUhvbWVFbXB0eURlc2NyaXB0aW9uLFxuICBTQ0NBSUhvbWVFbXB0eUJ1dHRvbixcbiAgU0NDQUlIb21lSWNvbkNvbnRhaW5lcixcbiAgU0NDQUlIb21lR3JhZGllbnQxLFxuICBTQ0NBSUhvbWVHcmFkaWVudDIsXG4gIFNDQ0FJSG9tZUxvZ29XcmFwcGVyLFxufSBmcm9tICcuL3N0eWxlcydcbmltcG9ydCB7IHVzZUdsb2JhbENvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9jb250ZXh0L2dsb2JhbC1jb250ZXh0J1xuaW1wb3J0IHsgdmFsaWRhdGVJc01haWEgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy91dGlscy92YWxpZGF0ZUlzTWFpYSdcbmltcG9ydCB7IEFnZW50IH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvYWdlbnQnXG5pbXBvcnQgeyBBdHRhY2htZW50RmlsZSB9IGZyb20gJy4uL0NoYXRGb290ZXIvQ2hhdEZvb3RlcidcbmltcG9ydCB7IEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucyB9IGZyb20gJy4uLy4uL2F0b21zL0ZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9ucydcbmltcG9ydCB7IEVtcHR5U3RhdGVBZ2VudHMgfSBmcm9tICcuLi8uLi9hdG9tcy9pY29ucy9FbXB0eVN0YXRlQWdlbnRzJ1xuaW1wb3J0IHsgRVZFTlRTLCB1c2VFdmVudCB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZUV2ZW50J1xuaW1wb3J0IHsgTUFJQUlzb2xvZ28gfSBmcm9tICcuLi8uLi9hdG9tcy9pY29ucy9NQUlBSXNvbG9nbydcblxudHlwZSBDaGF0QUlIb21lUHJvcHMgPSB7XG4gIG9uU3RhcnRDaGF0OiAobWVzc2FnZTogc3RyaW5nLCBhdHRhY2htZW50cz86IEF0dGFjaG1lbnRGaWxlW10gfCBudWxsLCBmYXFJZD86IHN0cmluZykgPT4gdm9pZFxuICBoYW5kbGVyczogUmVjb3JkPG9wdGlvbnMsICgpID0+IHZvaWQ+XG4gIGV4cGFuZGVkPzogYm9vbGVhblxuICBoYXNOb0FnZW50cz86IGJvb2xlYW5cbn1cblxuZXhwb3J0IGVudW0gRnJlcXVlbnRRdWVzdGlvbnMge1xuICByZW50YWJpbGlkYWRfcHJveWVjdG8gPSAncmVudGFiaWxpZGFkX3Byb3llY3RvJyxcbiAgYXZhbmNlX3Byb3llY3RvID0gJ2F2YW5jZV9wcm95ZWN0bycsXG59XG5cbmV4cG9ydCBjb25zdCBDaGF0QUlIb21lID0gKHsgaGFuZGxlcnMsIG9uU3RhcnRDaGF0LCBleHBhbmRlZCwgaGFzTm9BZ2VudHMgfTogQ2hhdEFJSG9tZVByb3BzKSA9PiB7XG4gIGNvbnN0IHsgdCwgaTE4biB9ID0gdXNlVCgpXG4gIGNvbnN0IHsgYWdlbnQsIHNlY3Rpb24gfSA9IHVzZUdsb2JhbENvbnRleHQoKVxuICBjb25zdCB1c2VyID0gdXNlVXNlcigpXG4gIGNvbnN0IGV2ZW50ID0gdXNlRXZlbnQoKVxuXG4gIGNvbnN0IGlzTUFJQSA9IHZhbGlkYXRlSXNNYWlhKGFnZW50IGFzIEFnZW50KVxuICBjb25zdCBsYW5nID0gaTE4bi5sYW5ndWFnZSA9PT0gJ2JyJyA/ICdwdCcgOiBpMThuLmxhbmd1YWdlXG5cbiAgY29uc3Qgc3VtbWFyeVByb2plY3RBY2Nlc3MgPVxuICAgIHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmXG4gICAgKFN0cmluZyh3aW5kb3cuTUFJQV9QUk9KRUNUX1NVTU1BUllfRkVBVFVSRV9BQ0NFU1MpLnRvTG93ZXJDYXNlKCkgPT09ICd0cnVlJyB8fFxuICAgICAgU3RyaW5nKHdpbmRvdy5tYWlhUHJvamVjdFN1bW1hcnlBY2Nlc3MpLnRvTG93ZXJDYXNlKCkgPT09ICd0cnVlJylcbiAgY29uc3QgZmFxc0FjY2VzcyA9IHRydWVcbiAgY29uc3Qgc2hvd1Byb2plY3RTdW1tYXJ5ID0gISEoaXNNQUlBICYmIHN1bW1hcnlQcm9qZWN0QWNjZXNzKVxuICBjb25zdCBzaG93RkFRcyA9ICEhKGlzTUFJQSAmJiBmYXFzQWNjZXNzKVxuXG4gIC8vIEzDs2dpY2EgZGVsIHNjcm9sbCBjb24gZ3JhZGllbnRlc1xuICBjb25zdCBjb250ZW50Q29udGFpbmVyUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICBjb25zdCBbc2hvd1RvcEdyYWRpZW50LCBzZXRTaG93VG9wR3JhZGllbnRdID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFtzaG93Qm90dG9tR3JhZGllbnQsIHNldFNob3dCb3R0b21HcmFkaWVudF0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2lzU2Nyb2xsaW5nLCBzZXRJc1Njcm9sbGluZ10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3Qgc2Nyb2xsVGltZW91dFJlZiA9IHVzZVJlZjxSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IG51bGw+KG51bGwpXG5cbiAgLy8gU2FsdWRvIGFsZWF0b3JpbyBkZXNkZSBhZ2VudC5pbnRyb2R1Y3Rpb24gKGFycmF5IGNvbiAzIHZhcmlhbnRlcyBkZWwgYmFjaylcbiAgY29uc3QgZ3JlZXRpbmcgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBpbnRybyA9IGFnZW50Py5pbnRyb2R1Y3Rpb25cbiAgICBpZiAoIWludHJvKSByZXR1cm4gJydcbiAgICBpZiAoQXJyYXkuaXNBcnJheShpbnRybykgJiYgaW50cm8ubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIGludHJvW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGludHJvLmxlbmd0aCldXG4gICAgfVxuICAgIHJldHVybiB0eXBlb2YgaW50cm8gPT09ICdzdHJpbmcnID8gaW50cm8gOiAnJ1xuICB9LCBbYWdlbnQ/LmlkLCBhZ2VudD8uaW50cm9kdWN0aW9uLCBzZWN0aW9uXSlcblxuICBjb25zdCBjaGVja1Njcm9sbCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBjb25zdCBjb250YWluZXIgPSBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnRcbiAgICBpZiAoIWNvbnRhaW5lciB8fCAhc2hvd0ZBUXMpIHJldHVyblxuXG4gICAgY29uc3QgeyBzY3JvbGxUb3AsIHNjcm9sbEhlaWdodCwgY2xpZW50SGVpZ2h0IH0gPSBjb250YWluZXJcbiAgICBjb25zdCBpc1Njcm9sbGFibGUgPSBzY3JvbGxIZWlnaHQgPiBjbGllbnRIZWlnaHRcbiAgICBjb25zdCBpc0F0VG9wID0gc2Nyb2xsVG9wID09PSAwXG4gICAgY29uc3QgaXNBdEJvdHRvbSA9IHNjcm9sbFRvcCArIGNsaWVudEhlaWdodCA+PSBzY3JvbGxIZWlnaHQgLSAxXG5cbiAgICBzZXRTaG93VG9wR3JhZGllbnQoaXNTY3JvbGxhYmxlICYmICFpc0F0VG9wKVxuICAgIHNldFNob3dCb3R0b21HcmFkaWVudChpc1Njcm9sbGFibGUgJiYgIWlzQXRCb3R0b20pXG4gICAgc2V0SXNTY3JvbGxpbmcodHJ1ZSlcblxuICAgIGlmIChzY3JvbGxUaW1lb3V0UmVmLmN1cnJlbnQpIHtcbiAgICAgIGNsZWFyVGltZW91dChzY3JvbGxUaW1lb3V0UmVmLmN1cnJlbnQpXG4gICAgfVxuXG4gICAgc2Nyb2xsVGltZW91dFJlZi5jdXJyZW50ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBzZXRJc1Njcm9sbGluZyhmYWxzZSlcbiAgICB9LCAxNTApXG4gIH0sIFtzaG93RkFRc10pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIXNob3dGQVFzKSB7XG4gICAgICBzZXRTaG93VG9wR3JhZGllbnQoZmFsc2UpXG4gICAgICBzZXRTaG93Qm90dG9tR3JhZGllbnQoZmFsc2UpXG4gICAgICByZXR1cm4gdW5kZWZpbmVkXG4gICAgfVxuXG4gICAgY29uc3QgY29udGFpbmVyID0gY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50XG4gICAgaWYgKCFjb250YWluZXIpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWRcbiAgICB9XG5cbiAgICBjaGVja1Njcm9sbCgpXG4gICAgY29udGFpbmVyLmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGNoZWNrU2Nyb2xsKVxuXG4gICAgY29uc3QgdGltZW91dElkID0gc2V0VGltZW91dChjaGVja1Njcm9sbCwgMTAwKVxuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGNvbnRhaW5lci5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBjaGVja1Njcm9sbClcbiAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SWQpXG4gICAgICBpZiAoc2Nyb2xsVGltZW91dFJlZi5jdXJyZW50KSB7XG4gICAgICAgIGNsZWFyVGltZW91dChzY3JvbGxUaW1lb3V0UmVmLmN1cnJlbnQpXG4gICAgICB9XG4gICAgfVxuICB9LCBbc2hvd0ZBUXMsIGNoZWNrU2Nyb2xsXSlcblxuICBpZiAoaGFzTm9BZ2VudHMpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFNDQ0FJSG9tZUNvbnRhaW5lcj5cbiAgICAgICAgPFNDQ0FJSG9tZUNvbnRlbnQ+XG4gICAgICAgICAgPFNDQ0FJSG9tZUVtcHR5Q29udGFpbmVyPlxuICAgICAgICAgICAgPEVtcHR5U3RhdGVBZ2VudHMgLz5cbiAgICAgICAgICAgIDxTQ0NBSUhvbWVFbXB0eVRleHRDb250YWluZXI+XG4gICAgICAgICAgICAgIDxTQ0NBSUhvbWVHcmVldGluZz57dCgnaG9tZU1lbnUubm9BZ2VudHMudGl0bGUnKX08L1NDQ0FJSG9tZUdyZWV0aW5nPlxuICAgICAgICAgICAgICA8U0NDQUlIb21lRW1wdHlEZXNjcmlwdGlvbj5cbiAgICAgICAgICAgICAgICB7dXNlci5wZXJtaXNzaW9ucz8uYWlfYWdlbnRzPy5jcmVhdGVcbiAgICAgICAgICAgICAgICAgID8gdCgnaG9tZU1lbnUubm9BZ2VudHMuZGVzY3JpcHRpb25DcmVhdGUnKVxuICAgICAgICAgICAgICAgICAgOiB0KCdob21lTWVudS5ub0FnZW50cy5kZXNjcmlwdGlvbicpfVxuICAgICAgICAgICAgICA8L1NDQ0FJSG9tZUVtcHR5RGVzY3JpcHRpb24+XG4gICAgICAgICAgICA8L1NDQ0FJSG9tZUVtcHR5VGV4dENvbnRhaW5lcj5cbiAgICAgICAgICAgIHt1c2VyLnBlcm1pc3Npb25zPy5haV9hZ2VudHM/LmNyZWF0ZSAmJiB3aW5kb3cuTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UUyAmJiAoXG4gICAgICAgICAgICAgIDxTQ0NBSUhvbWVFbXB0eUJ1dHRvblxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgIGV2ZW50KEVWRU5UUy5vcGVuTW9kYWwsIHsgb3B0aW9uOiAnbmV3X2FnZW50JyB9KVxuICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChcbiAgICAgICAgICAgICAgICAgICAgbmV3IEN1c3RvbUV2ZW50KCdhYm0tYWdlbnQtbW9kYWwtc2V0LXZhbHVlcycsIHtcbiAgICAgICAgICAgICAgICAgICAgICBkZXRhaWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFnZW50VmFsdWVzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlzT3BlbjogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3QoJ2hvbWVNZW51Lm5vQWdlbnRzLmNyZWF0ZUFnZW50Jyl9XG4gICAgICAgICAgICAgIDwvU0NDQUlIb21lRW1wdHlCdXR0b24+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvU0NDQUlIb21lRW1wdHlDb250YWluZXI+XG4gICAgICAgIDwvU0NDQUlIb21lQ29udGVudD5cbiAgICAgIDwvU0NDQUlIb21lQ29udGFpbmVyPlxuICAgIClcbiAgfVxuXG4gIGNvbnN0IHJlbmRlckhlYWRlckNvbnRlbnQgPSAoKSA9PiB7XG4gICAgaWYgKCFpc01BSUEpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxTQ0NBSUhvbWVBZ2VudEluZm9Db250YWluZXI+XG4gICAgICAgICAgPFNDQ0FJSG9tZUFnZW50SW5mbz5cbiAgICAgICAgICAgIHthZ2VudD8uZW1vaml9IHthZ2VudD8ubmFtZX1cbiAgICAgICAgICA8L1NDQ0FJSG9tZUFnZW50SW5mbz5cbiAgICAgICAgICB7YWdlbnQ/LmNyZWF0ZWRfYnkgJiYgIWlzTUFJQSAmJiAoXG4gICAgICAgICAgICA8U0NDQUlIb21lQ3JlYXRlZEJ5Q29udGFpbmVyPlxuICAgICAgICAgICAgICA8VG9vbHRpcFxuICAgICAgICAgICAgICAgIHRpdGxlPXtcbiAgICAgICAgICAgICAgICAgIGFnZW50Py5jcmVhdGVkX2J5Py5pc19kZWxldGVkID8gdCgnaG9tZU1lbnUuY3JlYXRlZEJ5VG9vbHRpcERlbGV0ZWQnKSA6IHQoJ2hvbWVNZW51LmNyZWF0ZWRCeVRvb2x0aXAnKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxTQ0NBSUhvbWVDcmVhdGVkQnlUZXh0PlxuICAgICAgICAgICAgICAgICAge3QoJ2hvbWVNZW51LmNyZWF0ZWRCeScpfXsnICd9XG4gICAgICAgICAgICAgICAgICA8U0NDQUlIb21lQ3JlYXRlZEJ5VGV4dE5hbWU+e2FnZW50Py5jcmVhdGVkX2J5Py5uYW1lfTwvU0NDQUlIb21lQ3JlYXRlZEJ5VGV4dE5hbWU+XG4gICAgICAgICAgICAgICAgPC9TQ0NBSUhvbWVDcmVhdGVkQnlUZXh0PlxuICAgICAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgICAgICA8L1NDQ0FJSG9tZUNyZWF0ZWRCeUNvbnRhaW5lcj5cbiAgICAgICAgICApfVxuICAgICAgICA8L1NDQ0FJSG9tZUFnZW50SW5mb0NvbnRhaW5lcj5cbiAgICAgIClcbiAgICB9XG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBzdHlsZT17eyBkaXNwbGF5OiAnZmxleCcsIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLCBhbGlnbkl0ZW1zOiAnY2VudGVyJywgZ2FwOiAnOHB4JyB9fT5cbiAgICAgICAgPFNDQ0FJSG9tZUljb25Db250YWluZXI+XG4gICAgICAgICAgPFNDQ0FJSG9tZUdyYWRpZW50MSAvPlxuICAgICAgICAgIDxTQ0NBSUhvbWVHcmFkaWVudDIgLz5cbiAgICAgICAgICA8U0NDQUlIb21lTG9nb1dyYXBwZXI+XG4gICAgICAgICAgICA8TUFJQUlzb2xvZ28gLz5cbiAgICAgICAgICA8L1NDQ0FJSG9tZUxvZ29XcmFwcGVyPlxuICAgICAgICA8L1NDQ0FJSG9tZUljb25Db250YWluZXI+XG4gICAgICAgIDxTQ0NBSUhvbWVHcmVldGluZz57Z3JlZXRpbmd9PC9TQ0NBSUhvbWVHcmVldGluZz5cbiAgICAgIDwvZGl2PlxuICAgIClcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPFNDQ0FJSG9tZUNvbnRhaW5lciBzaG93RkFRcz17c2hvd0ZBUXN9PlxuICAgICAgPFNDQ0FJSG9tZUNvbnRlbnQgcmVmPXtjb250ZW50Q29udGFpbmVyUmVmfSBzaG93RkFRcz17c2hvd0ZBUXN9ICRpc0FnZW50Vmlldz17IWlzTUFJQX0+XG4gICAgICAgIHtzaG93RkFRcyAmJiA8U0NDQUlIb21lR3JhZGllbnRUb3AgJHNob3c9e3Nob3dUb3BHcmFkaWVudH0gLz59XG4gICAgICAgIDxTQ0NBSUhvbWVDb250ZW50SW5uZXIgc2hvd0ZBUXM9e3Nob3dGQVFzfSAkaXNBZ2VudFZpZXc9eyFpc01BSUF9PlxuICAgICAgICAgIDxTQ0NBSUhvbWVIZWFkZXJcbiAgICAgICAgICAgICRnYXA9e2lzTUFJQSAmJiBzZWN0aW9uICE9PSAncHJvamVjdCcgPyAnOHB4JyA6ICcyMHB4J31cbiAgICAgICAgICAgICRtYXhXaWR0aD17aXNNQUlBID8gJzEwMCUnIDogJzM4MHB4J31cbiAgICAgICAgICAgICRpc0FnZW50Vmlldz17IWlzTUFJQX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7cmVuZGVySGVhZGVyQ29udGVudCgpfVxuXG4gICAgICAgICAgICB7c2VjdGlvbiAhPT0gJ3Byb2plY3QnICYmIChcbiAgICAgICAgICAgICAgPFNDQ0FJSG9tZUludHJvZHVjdGlvbiBleHBhbmRlZD17ZXhwYW5kZWR9PnshaXNNQUlBICYmIGFnZW50Py5pbnRyb2R1Y3Rpb259PC9TQ0NBSUhvbWVJbnRyb2R1Y3Rpb24+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvU0NDQUlIb21lSGVhZGVyPlxuICAgICAgICAgIHtzaG93UHJvamVjdFN1bW1hcnkgJiYgKFxuICAgICAgICAgICAgPFNDQ0FIV3JhcHBlclN1bW1hcnlQcm9qZWN0IG9uQ2xpY2s9e2hhbmRsZXJzLnByb2plY3RTdW1tYXJ5fT5cbiAgICAgICAgICAgICAgPFNDQ0FJSG9tZVByb2plY3RTdW1tYXJ5PlxuICAgICAgICAgICAgICAgIDxUZW1wbGF0ZSBjb2xvcj17R0xPQkFMX0NPTE9SUy5wcmltYXJ5fSBoZWlnaHQ9ezI0fSB3aWR0aD17MjR9IC8+XG4gICAgICAgICAgICAgIDwvU0NDQUlIb21lUHJvamVjdFN1bW1hcnk+XG4gICAgICAgICAgICAgIDxTQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeUNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgPFNDQ0FJSG9tZVByb2plY3RTdW1tYXJ5VGl0bGU+e3QoJ2hvbWVNZW51LnByb2plY3RTdW1tYXJ5LnRpdGxlJyl9PC9TQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeVRpdGxlPlxuICAgICAgICAgICAgICAgIDxTQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeURlc2NyaXB0aW9uPlxuICAgICAgICAgICAgICAgICAge3QoJ2hvbWVNZW51LnByb2plY3RTdW1tYXJ5LmRlc2NyaXB0aW9uJyl9XG4gICAgICAgICAgICAgICAgPC9TQ0NBSUhvbWVQcm9qZWN0U3VtbWFyeURlc2NyaXB0aW9uPlxuICAgICAgICAgICAgICA8L1NDQ0FJSG9tZVByb2plY3RTdW1tYXJ5Q29udGVudD5cbiAgICAgICAgICAgIDwvU0NDQUhXcmFwcGVyU3VtbWFyeVByb2plY3Q+XG4gICAgICAgICAgKX1cbiAgICAgICAgICB7c2hvd0ZBUXMgJiYgKFxuICAgICAgICAgICAgPEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uc1xuICAgICAgICAgICAgICBvblN0YXJ0Q2hhdD17b25TdGFydENoYXR9XG4gICAgICAgICAgICAgIHNob3dGQVFzPXtzaG93RkFRc31cbiAgICAgICAgICAgICAgc2hvd1Byb2plY3RTdW1tYXJ5PXtzaG93UHJvamVjdFN1bW1hcnl9XG4gICAgICAgICAgICAgIGFnZW50SWQ9e2FnZW50Py5pZH1cbiAgICAgICAgICAgICAgbGFuZz17bGFuZ31cbiAgICAgICAgICAgICAgaXNTY3JvbGxpbmc9e2lzU2Nyb2xsaW5nfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L1NDQ0FJSG9tZUNvbnRlbnRJbm5lcj5cbiAgICAgICAge3Nob3dGQVFzICYmIDxTQ0NBSUhvbWVHcmFkaWVudEJvdHRvbSAkc2hvdz17c2hvd0JvdHRvbUdyYWRpZW50fSAvPn1cbiAgICAgIDwvU0NDQUlIb21lQ29udGVudD5cbiAgICA8L1NDQ0FJSG9tZUNvbnRhaW5lcj5cbiAgKVxufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxTQUFTLEVBQUVDLE1BQU0sRUFBRUMsUUFBUSxFQUFFQyxXQUFXLEVBQUVDLE9BQU8sUUFBUSxPQUFPO0FBQ3pFLFNBQVNDLFFBQVEsUUFBUSwyQ0FBMkM7QUFFcEUsU0FBU0MsT0FBTyxRQUFRLDhDQUE4QztBQUN0RSxTQUFTQyxJQUFJLFFBQVEscUJBQXFCO0FBQzFDLFNBQVNDLE9BQU8sUUFBUSwyQkFBMkI7QUFFbkQsU0FBU0MsYUFBYSxRQUFRLHdCQUF3QjtBQUl0RCxTQUNFQyxrQkFBa0IsRUFDbEJDLGdCQUFnQixFQUNoQkMscUJBQXFCLEVBQ3JCQyxvQkFBb0IsRUFDcEJDLHVCQUF1QixFQUN2QkMsZUFBZSxFQUNmQyxpQkFBaUIsRUFDakJD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
|