@projectcor/maia-components 2.11.10 → 2.11.11-1

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 (70) hide show
  1. package/lib/components/atoms/ChatClientSelector/ChatClientSelector.js +69 -0
  2. package/lib/components/atoms/ChatClientSelector/index.js +2 -0
  3. package/lib/components/atoms/ChatDisclaimerMessage/ChatDisclaimerMessage.js +9 -0
  4. package/lib/components/atoms/ChatDisclaimerMessage/index.js +2 -0
  5. package/lib/components/atoms/ChatDisclaimerMessage/styles.js +6 -0
  6. package/lib/components/atoms/Chip/Chip.js +4 -3
  7. package/lib/components/atoms/Chip/styles.js +3 -3
  8. package/lib/components/atoms/EntitySelector/EntitySelector.js +181 -0
  9. package/lib/components/atoms/EntitySelector/EntitySelector.styles.js +57 -0
  10. package/lib/components/atoms/EntitySelector/index.js +2 -0
  11. package/lib/components/atoms/ErrorSearchProjects/ErrorSearchProjects.js +5 -3
  12. package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.js +81 -58
  13. package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.styles.js +67 -7
  14. package/lib/components/atoms/MAIAInput/MAIAInput.js +363 -18
  15. package/lib/components/atoms/MAIAInput/styles.js +99 -33
  16. package/lib/components/atoms/ProjectSelector/ProjectSelector.js +56 -193
  17. package/lib/components/atoms/index.js +2 -1
  18. package/lib/components/index.js +2 -1
  19. package/lib/components/molecules/ChatAIClientSelector/ChatAIClientSelector.js +56 -0
  20. package/lib/components/molecules/ChatAIClientSelector/index.js +2 -0
  21. package/lib/components/molecules/ChatAIContent/ChatAIContent.js +9 -1
  22. package/lib/components/molecules/ChatAIHome/ChatAIHome.js +2 -3
  23. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +1 -1
  24. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +29 -11
  25. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +6 -3
  26. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +5 -3
  27. package/lib/components/molecules/ChatAIModal/constants.js +6 -2
  28. package/lib/components/molecules/ChatFooter/ChatFooter.js +30 -10
  29. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.js +156 -0
  30. package/lib/components/molecules/ChatFooter/ChatFooterFaqs.styles.js +51 -0
  31. package/lib/components/molecules/ChatFooter/styles.js +5 -1
  32. package/lib/components/organisms/ChatAI/ChatAI.js +11 -3
  33. package/lib/components/organisms/ClientAIButton/ClientAIButton.js +26 -0
  34. package/lib/components/organisms/ClientAIButton/index.js +2 -0
  35. package/lib/constants/config.js +3 -2
  36. package/lib/context/global-context.js +1 -1
  37. package/lib/hooks/useChatManager/useChatManager.interface.js +1 -1
  38. package/lib/hooks/useChatManager/useChatManager.js +62 -40
  39. package/lib/hooks/useChatMessages/useChatMessages.js +72 -38
  40. package/lib/hooks/useFrequentlyAskedQuestions.js +68 -53
  41. package/lib/hooks/useFrequentlyUsedActions.js +73 -0
  42. package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +6 -4
  43. package/lib/hooks/useProjectSummaryConfig.js +35 -7
  44. package/lib/hooks/useRecentClientsSearch.js +176 -0
  45. package/lib/lang/br/index.js +36 -3
  46. package/lib/lang/en/index.js +36 -3
  47. package/lib/lang/es/index.js +36 -3
  48. package/lib/lang/fr/index.js +21 -2
  49. package/lib/services/cor/getProjectTasks.js +71 -0
  50. package/lib/services/maia/Agents/getAgents.js +6 -4
  51. package/lib/services/maia/Chats/getChatMessages.js +27 -14
  52. package/lib/services/maia/Chats/getChatsByUserId.js +1 -1
  53. package/lib/services/maia/FrequentlyUsedActions/getFrequentlyUsedActions.js +48 -0
  54. package/lib/services/maia/FrequentlyUsedActions/index.js +5 -0
  55. package/lib/services/maia/Orchestrator/orchestrator.js +6 -4
  56. package/lib/services/maia/RecentClients/getRecentClients.js +43 -0
  57. package/lib/services/maia/RecentClients/index.js +6 -0
  58. package/lib/services/maia/index.js +4 -2
  59. package/lib/services/query/getTaskFamilyProjectsQuery.js +5 -0
  60. package/lib/services/utils/mapChatMessages.js +12 -4
  61. package/lib/store/chatsStore.types.js +1 -1
  62. package/lib/store/faqsStore.types.js +2 -0
  63. package/lib/store/index.js +2 -1
  64. package/lib/store/useFaqsStore.js +27 -0
  65. package/lib/types/Chat.js +1 -1
  66. package/lib/types/Client.js +2 -0
  67. package/lib/types/FrequentlyAskedQuestion.js +1 -1
  68. package/lib/types/FrequentlyUsedAction.js +2 -0
  69. package/lib/types/agent.js +1 -1
  70. package/package.json +1 -1
@@ -0,0 +1,176 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
3
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
5
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
7
+ import { useLazyQuery } from '@apollo/client';
8
+ import { useEffect, useState, useCallback } from 'react';
9
+ import maia from '../services/maia';
10
+ import { useDebounce } from './useDebounce';
11
+ import { SEARCH_CLIENTS } from '../services/query';
12
+ var mapperClientsSearch = function mapperClientsSearch(values, searchValue) {
13
+ var _values$map;
14
+ return (_values$map = values === null || values === void 0 ? void 0 : values.map(function (value) {
15
+ var clientName = value.name || '';
16
+ var displayName = clientName;
17
+ if (searchValue && clientName.toLowerCase().includes(searchValue.toLowerCase())) {
18
+ var textIndex = clientName.toLowerCase().indexOf(searchValue.toLowerCase());
19
+ var valueToChange = clientName.slice(textIndex, textIndex + searchValue.length);
20
+ var escapedSearchValue = searchValue.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
21
+ displayName = clientName.replace(new RegExp(escapedSearchValue, 'i'), "<span style=\"color: #20201F; font-weight: bold;\">".concat(valueToChange, "</span>"));
22
+ }
23
+ return {
24
+ id: value.id,
25
+ name: displayName,
26
+ rawName: clientName,
27
+ totalProyectos: value.totalProyectos
28
+ };
29
+ })) !== null && _values$map !== void 0 ? _values$map : [];
30
+ };
31
+ export var useRecentClientsSearch = function useRecentClientsSearch() {
32
+ var _useState = useState([]),
33
+ _useState2 = _slicedToArray(_useState, 2),
34
+ clients = _useState2[0],
35
+ setClients = _useState2[1];
36
+ var _useState3 = useState(true),
37
+ _useState4 = _slicedToArray(_useState3, 2),
38
+ loading = _useState4[0],
39
+ setLoading = _useState4[1];
40
+ var _useState5 = useState(false),
41
+ _useState6 = _slicedToArray(_useState5, 2),
42
+ error = _useState6[0],
43
+ setError = _useState6[1];
44
+ var _useState7 = useState(''),
45
+ _useState8 = _slicedToArray(_useState7, 2),
46
+ searchValue = _useState8[0],
47
+ setSearchValue = _useState8[1];
48
+ var _useState9 = useState(false),
49
+ _useState0 = _slicedToArray(_useState9, 2),
50
+ isQueryInProgress = _useState0[0],
51
+ setIsQueryInProgress = _useState0[1];
52
+ var debouncedSearchValue = useDebounce(searchValue, 500);
53
+ var _useState1 = useState(null),
54
+ _useState10 = _slicedToArray(_useState1, 2),
55
+ recentClientsData = _useState10[0],
56
+ setRecentClientsData = _useState10[1];
57
+ var _useState11 = useState(false),
58
+ _useState12 = _slicedToArray(_useState11, 2),
59
+ loadingRecentClients = _useState12[0],
60
+ setLoadingRecentClients = _useState12[1];
61
+ var _useState13 = useState(false),
62
+ _useState14 = _slicedToArray(_useState13, 2),
63
+ recentError = _useState14[0],
64
+ setRecentError = _useState14[1];
65
+ var _useLazyQuery = useLazyQuery(SEARCH_CLIENTS, {
66
+ variables: {
67
+ page: 1,
68
+ perPage: 20,
69
+ filter: {}
70
+ }
71
+ }),
72
+ _useLazyQuery2 = _slicedToArray(_useLazyQuery, 2),
73
+ fetchSearchClients = _useLazyQuery2[0],
74
+ _useLazyQuery2$ = _useLazyQuery2[1],
75
+ searchData = _useLazyQuery2$.data,
76
+ loadingSearchClients = _useLazyQuery2$.loading,
77
+ searchError = _useLazyQuery2$.error;
78
+ var handleFetchSearchClients = function handleFetchSearchClients(value) {
79
+ var filter = value ? {
80
+ name: value,
81
+ clientStatusId: [1]
82
+ } : {};
83
+ fetchSearchClients({
84
+ variables: {
85
+ page: 1,
86
+ perPage: 20,
87
+ filter: filter
88
+ }
89
+ });
90
+ };
91
+ var fetchRecentClientsWithLoading = useCallback(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
92
+ var data, mapped, _t;
93
+ return _regeneratorRuntime.wrap(function (_context) {
94
+ while (1) switch (_context.prev = _context.next) {
95
+ case 0:
96
+ setLoading(true);
97
+ setError(false);
98
+ setRecentError(false);
99
+ setIsQueryInProgress(true);
100
+ setLoadingRecentClients(true);
101
+ _context.prev = 1;
102
+ _context.next = 2;
103
+ return maia.RecentClients.getRecentClients();
104
+ case 2:
105
+ data = _context.sent;
106
+ mapped = (Array.isArray(data) ? data : []).map(function (c) {
107
+ return _objectSpread({
108
+ id: c.id,
109
+ name: c.name
110
+ }, c.totalProyectos != null && {
111
+ totalProyectos: c.totalProyectos
112
+ });
113
+ });
114
+ setRecentClientsData(mapped);
115
+ _context.next = 4;
116
+ break;
117
+ case 3:
118
+ _context.prev = 3;
119
+ _t = _context["catch"](1);
120
+ setRecentError(true);
121
+ setRecentClientsData(null);
122
+ case 4:
123
+ _context.prev = 4;
124
+ setLoadingRecentClients(false);
125
+ return _context.finish(4);
126
+ case 5:
127
+ case "end":
128
+ return _context.stop();
129
+ }
130
+ }, _callee, null, [[1, 3, 4, 5]]);
131
+ })), []);
132
+ useEffect(function () {
133
+ if (loadingRecentClients || loadingSearchClients) {
134
+ setLoading(true);
135
+ setError(false);
136
+ }
137
+ if (recentError || searchError) {
138
+ setError(true);
139
+ setLoading(false);
140
+ setIsQueryInProgress(false);
141
+ }
142
+ }, [loadingRecentClients, loadingSearchClients, recentError, searchError]);
143
+ useEffect(function () {
144
+ var _searchData$clients;
145
+ if (!loadingRecentClients && !loadingSearchClients && isQueryInProgress) {
146
+ setIsQueryInProgress(false);
147
+ }
148
+ if (searchData !== null && searchData !== void 0 && (_searchData$clients = searchData.clients) !== null && _searchData$clients !== void 0 && _searchData$clients.data && debouncedSearchValue.trim() && !loadingSearchClients) {
149
+ var mapped = mapperClientsSearch(searchData.clients.data, debouncedSearchValue);
150
+ setClients(mapped);
151
+ setLoading(false);
152
+ setError(false);
153
+ }
154
+ if (recentClientsData !== null && !debouncedSearchValue.trim() && !loadingRecentClients && !isQueryInProgress) {
155
+ setClients(recentClientsData);
156
+ setLoading(false);
157
+ setError(false);
158
+ }
159
+ }, [searchData, recentClientsData, debouncedSearchValue, loadingRecentClients, loadingSearchClients, isQueryInProgress]);
160
+ useEffect(function () {
161
+ if (debouncedSearchValue.trim()) {
162
+ handleFetchSearchClients(debouncedSearchValue);
163
+ }
164
+ }, [debouncedSearchValue]);
165
+ var updateSearchValue = function updateSearchValue(newSearchValue) {
166
+ setSearchValue(newSearchValue);
167
+ };
168
+ return {
169
+ fetchRecentClients: fetchRecentClientsWithLoading,
170
+ recentClientsLoading: loading,
171
+ recentClientsError: error,
172
+ recentClients: clients,
173
+ updateSearchValue: updateSearchValue
174
+ };
175
+ };
176
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VMYXp5UXVlcnkiLCJ1c2VFZmZlY3QiLCJ1c2VTdGF0ZSIsInVzZUNhbGxiYWNrIiwibWFpYSIsInVzZURlYm91bmNlIiwiU0VBUkNIX0NMSUVOVFMiLCJtYXBwZXJDbGllbnRzU2VhcmNoIiwidmFsdWVzIiwic2VhcmNoVmFsdWUiLCJfdmFsdWVzJG1hcCIsIm1hcCIsInZhbHVlIiwiY2xpZW50TmFtZSIsIm5hbWUiLCJkaXNwbGF5TmFtZSIsInRvTG93ZXJDYXNlIiwiaW5jbHVkZXMiLCJ0ZXh0SW5kZXgiLCJpbmRleE9mIiwidmFsdWVUb0NoYW5nZSIsInNsaWNlIiwibGVuZ3RoIiwiZXNjYXBlZFNlYXJjaFZhbHVlIiwicmVwbGFjZSIsIlJlZ0V4cCIsImNvbmNhdCIsImlkIiwicmF3TmFtZSIsInRvdGFsUHJveWVjdG9zIiwidXNlUmVjZW50Q2xpZW50c1NlYXJjaCIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsImNsaWVudHMiLCJzZXRDbGllbnRzIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJsb2FkaW5nIiwic2V0TG9hZGluZyIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwiZXJyb3IiLCJzZXRFcnJvciIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4Iiwic2V0U2VhcmNoVmFsdWUiLCJfdXNlU3RhdGU5IiwiX3VzZVN0YXRlMCIsImlzUXVlcnlJblByb2dyZXNzIiwic2V0SXNRdWVyeUluUHJvZ3Jlc3MiLCJkZWJvdW5jZWRTZWFyY2hWYWx1ZSIsIl91c2VTdGF0ZTEiLCJfdXNlU3RhdGUxMCIsInJlY2VudENsaWVudHNEYXRhIiwic2V0UmVjZW50Q2xpZW50c0RhdGEiLCJfdXNlU3RhdGUxMSIsIl91c2VTdGF0ZTEyIiwibG9hZGluZ1JlY2VudENsaWVudHMiLCJzZXRMb2FkaW5nUmVjZW50Q2xpZW50cyIsIl91c2VTdGF0ZTEzIiwiX3VzZVN0YXRlMTQiLCJyZWNlbnRFcnJvciIsInNldFJlY2VudEVycm9yIiwiX3VzZUxhenlRdWVyeSIsInZhcmlhYmxlcyIsInBhZ2UiLCJwZXJQYWdlIiwiZmlsdGVyIiwiX3VzZUxhenlRdWVyeTIiLCJmZXRjaFNlYXJjaENsaWVudHMiLCJfdXNlTGF6eVF1ZXJ5MiQiLCJzZWFyY2hEYXRhIiwiZGF0YSIsImxvYWRpbmdTZWFyY2hDbGllbnRzIiwic2VhcmNoRXJyb3IiLCJoYW5kbGVGZXRjaFNlYXJjaENsaWVudHMiLCJjbGllbnRTdGF0dXNJZCIsImZldGNoUmVjZW50Q2xpZW50c1dpdGhMb2FkaW5nIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJtYXBwZWQiLCJfdCIsIndyYXAiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwiUmVjZW50Q2xpZW50cyIsImdldFJlY2VudENsaWVudHMiLCJzZW50IiwiQXJyYXkiLCJpc0FycmF5IiwiYyIsIl9vYmplY3RTcHJlYWQiLCJmaW5pc2giLCJzdG9wIiwiX3NlYXJjaERhdGEkY2xpZW50cyIsInRyaW0iLCJ1cGRhdGVTZWFyY2hWYWx1ZSIsIm5ld1NlYXJjaFZhbHVlIiwiZmV0Y2hSZWNlbnRDbGllbnRzIiwicmVjZW50Q2xpZW50c0xvYWRpbmciLCJyZWNlbnRDbGllbnRzRXJyb3IiLCJyZWNlbnRDbGllbnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3VzZVJlY2VudENsaWVudHNTZWFyY2gudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlTGF6eVF1ZXJ5IH0gZnJvbSAnQGFwb2xsby9jbGllbnQnXG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVN0YXRlLCB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IG1haWEgZnJvbSAnLi4vc2VydmljZXMvbWFpYSdcbmltcG9ydCB7IHVzZURlYm91bmNlIH0gZnJvbSAnLi91c2VEZWJvdW5jZSdcbmltcG9ydCB7IFNFQVJDSF9DTElFTlRTIH0gZnJvbSAnLi4vc2VydmljZXMvcXVlcnknXG5cbmV4cG9ydCB0eXBlIFJlY2VudENsaWVudFNldHRlciA9IHtcbiAgaWQ6IG51bWJlciB8IHN0cmluZ1xuICBuYW1lOiBzdHJpbmdcbiAgLyoqIE5vbWJyZSBzaW4gSFRNTCBwYXJhIHNldENsaWVudCAoY3VhbmRvIHZpZW5lIGRlIGLDunNxdWVkYSBjb24gaGlnaGxpZ2h0KSAqL1xuICByYXdOYW1lPzogc3RyaW5nXG4gIHRvdGFsUHJveWVjdG9zPzogbnVtYmVyXG59XG5cbnR5cGUgUXVlcnlDbGllbnREYXRhID0ge1xuICBjbGllbnRzOiB7XG4gICAgdG90YWw6IG51bWJlclxuICAgIHBlclBhZ2U6IG51bWJlclxuICAgIHBhZ2U6IG51bWJlciB8IG51bGxcbiAgICBsYXN0UGFnZTogbnVtYmVyXG4gICAgZGF0YTogQXJyYXk8eyBpZDogc3RyaW5nOyBuYW1lOiBzdHJpbmc7IHRvdGFsUHJveWVjdG9zPzogbnVtYmVyIH0+XG4gIH1cbn1cblxuY29uc3QgbWFwcGVyQ2xpZW50c1NlYXJjaCA9IChcbiAgdmFsdWVzOiBBcnJheTx7IGlkOiBzdHJpbmc7IG5hbWU6IHN0cmluZzsgdG90YWxQcm95ZWN0b3M/OiBudW1iZXIgfT4sXG4gIHNlYXJjaFZhbHVlPzogc3RyaW5nXG4pOiBSZWNlbnRDbGllbnRTZXR0ZXJbXSA9PiB7XG4gIHJldHVybiAoXG4gICAgdmFsdWVzPy5tYXAodmFsdWUgPT4ge1xuICAgICAgY29uc3QgY2xpZW50TmFtZSA9IHZhbHVlLm5hbWUgfHwgJydcbiAgICAgIGxldCBkaXNwbGF5TmFtZSA9IGNsaWVudE5hbWVcbiAgICAgIGlmIChzZWFyY2hWYWx1ZSAmJiBjbGllbnROYW1lLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoVmFsdWUudG9Mb3dlckNhc2UoKSkpIHtcbiAgICAgICAgY29uc3QgdGV4dEluZGV4ID0gY2xpZW50TmFtZS50b0xvd2VyQ2FzZSgpLmluZGV4T2Yoc2VhcmNoVmFsdWUudG9Mb3dlckNhc2UoKSlcbiAgICAgICAgY29uc3QgdmFsdWVUb0NoYW5nZSA9IGNsaWVudE5hbWUuc2xpY2UodGV4dEluZGV4LCB0ZXh0SW5kZXggKyBzZWFyY2hWYWx1ZS5sZW5ndGgpXG4gICAgICAgIGNvbnN0IGVzY2FwZWRTZWFyY2hWYWx1ZSA9IHNlYXJjaFZhbHVlLnJlcGxhY2UoL1suKis/XiR7fSgpfFtcXF1cXFxcXS9nLCAnXFxcXCQmJylcbiAgICAgICAgZGlzcGxheU5hbWUgPSBjbGllbnROYW1lLnJlcGxhY2UoXG4gICAgICAgICAgbmV3IFJlZ0V4cChlc2NhcGVkU2VhcmNoVmFsdWUsICdpJyksXG4gICAgICAgICAgYDxzcGFuIHN0eWxlPVwiY29sb3I6ICMyMDIwMUY7IGZvbnQtd2VpZ2h0OiBib2xkO1wiPiR7dmFsdWVUb0NoYW5nZX08L3NwYW4+YFxuICAgICAgICApXG4gICAgICB9XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpZDogdmFsdWUuaWQsXG4gICAgICAgIG5hbWU6IGRpc3BsYXlOYW1lLFxuICAgICAgICByYXdOYW1lOiBjbGllbnROYW1lLFxuICAgICAgICB0b3RhbFByb3llY3RvczogdmFsdWUudG90YWxQcm95ZWN0b3MsXG4gICAgICB9XG4gICAgfSkgPz8gW11cbiAgKVxufVxuXG5leHBvcnQgY29uc3QgdXNlUmVjZW50Q2xpZW50c1NlYXJjaCA9ICgpID0+IHtcbiAgY29uc3QgW2NsaWVudHMsIHNldENsaWVudHNdID0gdXNlU3RhdGU8UmVjZW50Q2xpZW50U2V0dGVyW10+KFtdKVxuICBjb25zdCBbbG9hZGluZywgc2V0TG9hZGluZ10gPSB1c2VTdGF0ZSh0cnVlKVxuICBjb25zdCBbZXJyb3IsIHNldEVycm9yXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbc2VhcmNoVmFsdWUsIHNldFNlYXJjaFZhbHVlXSA9IHVzZVN0YXRlKCcnKVxuICBjb25zdCBbaXNRdWVyeUluUHJvZ3Jlc3MsIHNldElzUXVlcnlJblByb2dyZXNzXSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gIGNvbnN0IGRlYm91bmNlZFNlYXJjaFZhbHVlID0gdXNlRGVib3VuY2Uoc2VhcmNoVmFsdWUsIDUwMClcblxuICBjb25zdCBbcmVjZW50Q2xpZW50c0RhdGEsIHNldFJlY2VudENsaWVudHNEYXRhXSA9IHVzZVN0YXRlPFJlY2VudENsaWVudFNldHRlcltdIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW2xvYWRpbmdSZWNlbnRDbGllbnRzLCBzZXRMb2FkaW5nUmVjZW50Q2xpZW50c10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW3JlY2VudEVycm9yLCBzZXRSZWNlbnRFcnJvcl0gPSB1c2VTdGF0ZShmYWxzZSlcblxuICBjb25zdCBbZmV0Y2hTZWFyY2hDbGllbnRzLCB7IGRhdGE6IHNlYXJjaERhdGEsIGxvYWRpbmc6IGxvYWRpbmdTZWFyY2hDbGllbnRzLCBlcnJvcjogc2VhcmNoRXJyb3IgfV0gPVxuICAgIHVzZUxhenlRdWVyeTxRdWVyeUNsaWVudERhdGE+KFNFQVJDSF9DTElFTlRTLCB7XG4gICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgcGFnZTogMSxcbiAgICAgICAgcGVyUGFnZTogMjAsXG4gICAgICAgIGZpbHRlcjoge30sXG4gICAgICB9LFxuICAgIH0pXG5cbiAgY29uc3QgaGFuZGxlRmV0Y2hTZWFyY2hDbGllbnRzID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICBjb25zdCBmaWx0ZXIgPSB2YWx1ZSA/IHsgbmFtZTogdmFsdWUsIGNsaWVudFN0YXR1c0lkOiBbMV0gfSA6IHt9XG4gICAgZmV0Y2hTZWFyY2hDbGllbnRzKHtcbiAgICAgIHZhcmlhYmxlczoge1xuICAgICAgICBwYWdlOiAxLFxuICAgICAgICBwZXJQYWdlOiAyMCxcbiAgICAgICAgZmlsdGVyLFxuICAgICAgfSxcbiAgICB9KVxuICB9XG5cbiAgY29uc3QgZmV0Y2hSZWNlbnRDbGllbnRzV2l0aExvYWRpbmcgPSB1c2VDYWxsYmFjayhhc3luYyAoKSA9PiB7XG4gICAgc2V0TG9hZGluZyh0cnVlKVxuICAgIHNldEVycm9yKGZhbHNlKVxuICAgIHNldFJlY2VudEVycm9yKGZhbHNlKVxuICAgIHNldElzUXVlcnlJblByb2dyZXNzKHRydWUpXG4gICAgc2V0TG9hZGluZ1JlY2VudENsaWVudHModHJ1ZSlcbiAgICB0cnkge1xuICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IG1haWEuUmVjZW50Q2xpZW50cy5nZXRSZWNlbnRDbGllbnRzKClcbiAgICAgIGNvbnN0IG1hcHBlZCA9IChBcnJheS5pc0FycmF5KGRhdGEpID8gZGF0YSA6IFtdKS5tYXAoXG4gICAgICAgIChjOiB7IGlkOiBudW1iZXI7IG5hbWU6IHN0cmluZzsgdG90YWxQcm95ZWN0b3M/OiBudW1iZXIgfSkgPT4gKHtcbiAgICAgICAgICBpZDogYy5pZCxcbiAgICAgICAgICBuYW1lOiBjLm5hbWUsXG4gICAgICAgICAgLi4uKGMudG90YWxQcm95ZWN0b3MgIT0gbnVsbCAmJiB7IHRvdGFsUHJveWVjdG9zOiBjLnRvdGFsUHJveWVjdG9zIH0pLFxuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgc2V0UmVjZW50Q2xpZW50c0RhdGEobWFwcGVkKVxuICAgIH0gY2F0Y2gge1xuICAgICAgc2V0UmVjZW50RXJyb3IodHJ1ZSlcbiAgICAgIHNldFJlY2VudENsaWVudHNEYXRhKG51bGwpXG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHNldExvYWRpbmdSZWNlbnRDbGllbnRzKGZhbHNlKVxuICAgIH1cbiAgfSwgW10pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAobG9hZGluZ1JlY2VudENsaWVudHMgfHwgbG9hZGluZ1NlYXJjaENsaWVudHMpIHtcbiAgICAgIHNldExvYWRpbmcodHJ1ZSlcbiAgICAgIHNldEVycm9yKGZhbHNlKVxuICAgIH1cbiAgICBpZiAocmVjZW50RXJyb3IgfHwgc2VhcmNoRXJyb3IpIHtcbiAgICAgIHNldEVycm9yKHRydWUpXG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgICAgc2V0SXNRdWVyeUluUHJvZ3Jlc3MoZmFsc2UpXG4gICAgfVxuICB9LCBbbG9hZGluZ1JlY2VudENsaWVudHMsIGxvYWRpbmdTZWFyY2hDbGllbnRzLCByZWNlbnRFcnJvciwgc2VhcmNoRXJyb3JdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFsb2FkaW5nUmVjZW50Q2xpZW50cyAmJiAhbG9hZGluZ1NlYXJjaENsaWVudHMgJiYgaXNRdWVyeUluUHJvZ3Jlc3MpIHtcbiAgICAgIHNldElzUXVlcnlJblByb2dyZXNzKGZhbHNlKVxuICAgIH1cblxuICAgIGlmIChzZWFyY2hEYXRhPy5jbGllbnRzPy5kYXRhICYmIGRlYm91bmNlZFNlYXJjaFZhbHVlLnRyaW0oKSAmJiAhbG9hZGluZ1NlYXJjaENsaWVudHMpIHtcbiAgICAgIGNvbnN0IG1hcHBlZCA9IG1hcHBlckNsaWVudHNTZWFyY2goc2VhcmNoRGF0YS5jbGllbnRzLmRhdGEsIGRlYm91bmNlZFNlYXJjaFZhbHVlKVxuICAgICAgc2V0Q2xpZW50cyhtYXBwZWQpXG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgICAgc2V0RXJyb3IoZmFsc2UpXG4gICAgfVxuICAgIGlmIChyZWNlbnRDbGllbnRzRGF0YSAhPT0gbnVsbCAmJiAhZGVib3VuY2VkU2VhcmNoVmFsdWUudHJpbSgpICYmICFsb2FkaW5nUmVjZW50Q2xpZW50cyAmJiAhaXNRdWVyeUluUHJvZ3Jlc3MpIHtcbiAgICAgIHNldENsaWVudHMocmVjZW50Q2xpZW50c0RhdGEpXG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgICAgc2V0RXJyb3IoZmFsc2UpXG4gICAgfVxuICB9LCBbXG4gICAgc2VhcmNoRGF0YSxcbiAgICByZWNlbnRDbGllbnRzRGF0YSxcbiAgICBkZWJvdW5jZWRTZWFyY2hWYWx1ZSxcbiAgICBsb2FkaW5nUmVjZW50Q2xpZW50cyxcbiAgICBsb2FkaW5nU2VhcmNoQ2xpZW50cyxcbiAgICBpc1F1ZXJ5SW5Qcm9ncmVzcyxcbiAgXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChkZWJvdW5jZWRTZWFyY2hWYWx1ZS50cmltKCkpIHtcbiAgICAgIGhhbmRsZUZldGNoU2VhcmNoQ2xpZW50cyhkZWJvdW5jZWRTZWFyY2hWYWx1ZSlcbiAgICB9XG4gIH0sIFtkZWJvdW5jZWRTZWFyY2hWYWx1ZV0pXG5cbiAgY29uc3QgdXBkYXRlU2VhcmNoVmFsdWUgPSAobmV3U2VhcmNoVmFsdWU6IHN0cmluZykgPT4ge1xuICAgIHNldFNlYXJjaFZhbHVlKG5ld1NlYXJjaFZhbHVlKVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBmZXRjaFJlY2VudENsaWVudHM6IGZldGNoUmVjZW50Q2xpZW50c1dpdGhMb2FkaW5nLFxuICAgIHJlY2VudENsaWVudHNMb2FkaW5nOiBsb2FkaW5nLFxuICAgIHJlY2VudENsaWVudHNFcnJvcjogZXJyb3IsXG4gICAgcmVjZW50Q2xpZW50czogY2xpZW50cyxcbiAgICB1cGRhdGVTZWFyY2hWYWx1ZSxcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxTQUFTQSxZQUFZLFFBQVEsZ0JBQWdCO0FBQzdDLFNBQVNDLFNBQVMsRUFBRUMsUUFBUSxFQUFFQyxXQUFXLFFBQVEsT0FBTztBQUN4RCxPQUFPQyxJQUFJLE1BQU0sa0JBQWtCO0FBQ25DLFNBQVNDLFdBQVcsUUFBUSxlQUFlO0FBQzNDLFNBQVNDLGNBQWMsUUFBUSxtQkFBbUI7QUFvQmxELElBQU1DLG1CQUFtQixHQUFHLFNBQXRCQSxtQkFBbUJBLENBQ3ZCQyxNQUFvRSxFQUNwRUMsV0FBb0IsRUFDSztFQUFBLElBQUFDLFdBQUE7RUFDekIsUUFBQUEsV0FBQSxHQUNFRixNQUFNLGFBQU5BLE1BQU0sdUJBQU5BLE1BQU0sQ0FBRUcsR0FBRyxDQUFDLFVBQUFDLEtBQUssRUFBSTtJQUNuQixJQUFNQyxVQUFVLEdBQUdELEtBQUssQ0FBQ0UsSUFBSSxJQUFJLEVBQUU7SUFDbkMsSUFBSUMsV0FBVyxHQUFHRixVQUFVO0lBQzVCLElBQUlKLFdBQVcsSUFBSUksVUFBVSxDQUFDRyxXQUFXLENBQUMsQ0FBQyxDQUFDQyxRQUFR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
@@ -83,7 +83,7 @@ var homeMenu = {
83
83
  createAgent: 'Criar agente'
84
84
  }
85
85
  };
86
- export default _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, SECTIONS.projectSummary, _objectSpread(_objectSpread({}, genericSection), projectSummarySection)), SECTIONS.chatAI, _objectSpread(_objectSpread(_objectSpread({}, genericSection), projectSummarySection), {}, {
86
+ export default _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, SECTIONS.projectSummary, _objectSpread(_objectSpread({}, genericSection), projectSummarySection)), SECTIONS.chatAI, _objectSpread(_objectSpread(_objectSpread({}, genericSection), projectSummarySection), {}, {
87
87
  homeMenu: homeMenu,
88
88
  button: 'IA',
89
89
  title: 'Olá, {{name}}!',
@@ -125,7 +125,9 @@ export default _defineProperty(_defineProperty(_defineProperty(_defineProperty({
125
125
  writing: 'Escrevendo',
126
126
  loadingMore: 'Carregando mais mensagens',
127
127
  footer: {
128
- placeholder: 'Escreva sua pergunta aqui…'
128
+ placeholder: 'Escreva sua pergunta aqui…',
129
+ agentLabel: 'O Agente',
130
+ disclaimer: '{{agentName}} pode cometer erros. Verifique as informações importantes.'
129
131
  },
130
132
  error: 'Ocorreu um erro ao gerar sua resposta, por favor, tente novamente.',
131
133
  errorAccessDenied: 'Você não tem acesso para interagir com este agente. É possível que suas configurações de acessibilidade tenham mudado. Por favor, contate a pessoa na sua organização que gerencia agentes para obter mais informações.',
@@ -149,6 +151,14 @@ export default _defineProperty(_defineProperty(_defineProperty(_defineProperty({
149
151
  fileReadError: 'Erro ao ler o arquivo.',
150
152
  sheetLoadError: 'Erro ao carregar a planilha selecionada.'
151
153
  }
154
+ },
155
+ slashCommands: {
156
+ frequentActions: 'Ações frequentes',
157
+ selectTask: 'Selecione uma tarefa',
158
+ searchPlaceholder: 'Buscar...',
159
+ loading: 'Carregando...',
160
+ noActiveTasks: 'Sem tarefas ativas',
161
+ clearTask: 'Limpar tarefa selecionada'
152
162
  }
153
163
  },
154
164
  deleteQuestionModal: {
@@ -229,6 +239,10 @@ export default _defineProperty(_defineProperty(_defineProperty(_defineProperty({
229
239
  },
230
240
  chipLlm: {
231
241
  tooltip: 'Este agente utiliza o modelo: {{model}}'
242
+ },
243
+ clientSelector: {
244
+ project: 'projeto',
245
+ projects: 'projetos'
232
246
  }
233
247
  })), SECTIONS.abmAgent, _objectSpread(_objectSpread({}, genericSection), {}, {
234
248
  legendDeletedAgent: 'Este agente foi excluído no dia',
@@ -380,5 +394,24 @@ export default _defineProperty(_defineProperty(_defineProperty(_defineProperty({
380
394
  withoutClient: 'Sem cliente',
381
395
  withoutTitle: 'Sem título'
382
396
  }
397
+ })), SECTIONS.clientSelector, _objectSpread(_objectSpread({}, genericSection), {}, {
398
+ clientSelector: {
399
+ title: 'Em qual cliente você gostaria de ajuda?',
400
+ hello: {
401
+ title: 'Sou MAIA, sua especialista em clientes.',
402
+ subtitle: 'Para te dar respostas precisas, preciso saber sobre qual cliente vamos conversar. Qual você escolhe?'
403
+ },
404
+ subtitle: 'Selecione o cliente para que a MAIA responda com base em um contexto.',
405
+ labelClient: 'Selecione um cliente',
406
+ placeholder: 'Buscar cliente pelo nome',
407
+ changeClient: 'Mudar de cliente',
408
+ recentClients: 'Recentes',
409
+ searchingClients: 'Buscando seus clientes...',
410
+ errorMessage: 'Tivemos um problema ao carregar os clientes. Por favor, tente novamente em alguns minutos.',
411
+ emptyRecentClients: 'Você não tem clientes recentes. Digite o nome de um cliente na busca para encontrá-lo.',
412
+ emptyState: 'Ops! Não encontramos clientes com esse nome. Tente outra busca.',
413
+ project: 'projeto',
414
+ projects: 'projetos'
415
+ }
383
416
  }));
384
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTRUNUSU9OUyIsIlByb2plY3RTdW1tYXJ5Q29uZmlnS2V5cyIsImdsb2JhbHMiLCJjbG9zZSIsImhvd1dvcmtzIiwiYnJhbmROYW1lIiwiZXhwYW5kIiwiY29sbGFwc2UiLCJnb0JhY2siLCJjb3B5IiwiY29waWVkIiwic2F2ZWQiLCJzZWxlY3RQcm9qZWN0Iiwic2F2ZSIsImNhbmNlbCIsImVycm9yIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsInRyeUFnYWluIiwiZ2VuZXJpY1NlY3Rpb24iLCJwcm9qZWN0U3VtbWFyeVNlY3Rpb24iLCJyZXN1bWUiLCJoZWxsbyIsIndlbGNvbWUiLCJmZWVkYmFjayIsInRodW1ic1VwIiwidGh1bWJzRG93biIsInNvdXJjZXMiLCJjb25maWciLCJwcm9qZWN0U3VtbWFyeSIsInByb2plY3RTdW1tYXJ5VGl0bGUiLCJzZWxlY3RlZFByb2plY3QiLCJjb25maWd1cmVSZXN1bWUiLCJnZW5lcmF0aW5nUmVzdW1lIiwiZ2VuZXJhdGVSZXN1bWUiLCJoaWRlQ29uZmlnIiwiY29uZmlndXJlU2V0dGluZ3MiLCJfZGVmaW5lUHJvcGVydHkiLCJHRU5FUkFMX1NUQVRVUyIsIklOQ09NRV9DT1NUUyIsIlRJTUVfSE9VUlMiLCJUQVNLU19QUk9HUkVTUyIsIlJFV09SS1MiLCJob21lTWVudSIsImZhcSIsImVtcHR5IiwiY2F0ZWdvcmllcyIsInByb2plY3RzIiwidGFza3MiLCJob3VycyIsInVuZGVmaW5lZCIsImNyZWF0ZWRCeSIsImNyZWF0ZWRCeVRvb2x0aXAiLCJjcmVhdGVkQnlUb29sdGlwRGVsZXRlZCIsInRpdGxlXzEiLCJ0aXRsZV8yIiwidGl0bGVfMyIsInN1YnRpdGxlIiwidGl0bGVQbSIsInN1YnRpdGxlUG0iLCJub0FnZW50cyIsImRlc2NyaXB0aW9uQ3JlYXRlIiwiY3JlYXRlQWdlbnQiLCJfb2JqZWN0U3ByZWFkIiwiY2hhdEFJIiwiYnV0dG9uIiwibmV3Q2hhdCIsImhpc3RvcnkiLCJ0b29sdGlwIiwiaXRlbSIsImRhdGUiLCJtZW51IiwicmVuYW1lIiwibG9hZGluZ01vcmUiLCJvbmJvYXJkaW5nIiwibWFpYSIsImFnZW50Q3VzdG9tIiwiaG93Q3JlYXRlQWdlbnQiLCJob3dJdFdvcmtzIiwicWEiLCJpdGVtcyIsInJlbnRhYmlsaWRhZF9wcm95ZWN0byIsImF2YW5jZV9wcm95ZWN0byIsInRhcmVhc19wcm95ZWN0byIsImNoYXQiLCJnZW5lcmF0aW5nIiwiZ2VuZXJhdGluZ0F0dGFjaG1lbnQiLCJnZW5lcmF0aW5nRGVlcFNlYXJjaCIsImdlbmVyYXRpbmdXZWJTZWFyY2giLCJ3cml0aW5nIiwiZm9vdGVyIiwicGxhY2Vob2xkZXIiLCJlcnJvckFjY2Vzc0RlbmllZCIsImNoYW5nZVByb2plY3QiLCJzZWFyY2hXZWIiLCJkZWVwU2VhcmNoIiwiYXR0YWNoRmlsZSIsInNlbmQiLCJsaW1pdEZpbGVzIiwic3RvcCIsImNhbmNlbGxlZCIsImF0dGFjaG1lbnRQcmV2aWV3TW9kYWwiLCJsb2FkaW5nIiwidW5zdXBwb3J0ZWRGaWxlTWVzc2FnZSIsInR5cGVMYWJlbCIsInVua25vd24iLCJzaXplTGFiZWwiLCJleGNlbCIsInNoZWV0U2VsZWN0b3JMYWJlbCIsImxvYWRFcnJvciIsImZpbGVSZWFkRXJyb3IiLCJzaGVldExvYWRFcnJvciIsImRlbGV0ZVF1ZXN0aW9uTW9kYWwiLCJmaXJzdFBhcnQiLCJzZWNvbmRQYXJ0IiwiZWRpdFF1ZXN0aW9uTW9kYWwiLCJuZXdOYW1lIiwibWF4TGVuZ3RoIiwibW9kYWxGaWxlRXhjZWVkcyIsImxpbWl0RmlsZXNUaXRsZSIsImxpbWl0U2l6ZVRpdGxlIiwibGltaXRGaWxlc0Rlc2NyaXB0aW9uIiwibGltaXRTaXplRGVzY3JpcHRpb24iLCJhY2NlcHQiLCJsaW1pdCIsInNvdXJjZXNJbmZvcm1hdGlvbk1vZGFsIiwiYWdlbnRzIiwibmV3QWdlbnQiLCJlZGl0IiwiYWRkRmF2b3JpdGUiLCJyZW1vdmVGYXZvcml0ZSIsImZhdm9yaXRlVG9nZ2xlZEFkZGVkU3VjY2VzcyIsImZhdm9yaXRlVG9nZ2xlZFJlbW92ZWRTdWNjZXNzIiwiZmF2b3JpdGVUb2dnbGVkRXJyb3IiLCJmYXZvcml0ZVRvZ2dsZWRSZW1vdmVkRXJyb3IiLCJtYWlhSW50cm9kdWN0aW9uIiwiY29udmVyc2F0aW9ucyIsImVtcHR5TGFiZWwiLCJzbmFja2JhciIsImRlbGV0ZUNoYXQiLCJzdWNjZXNzIiwicmVuYW1lZENoYXQiLCJsb2FkTW9yZUFnZW50cyIsImFwcHJvdmFsQm94IiwiYWN0aW9ucyIsImNyZWF0ZV90YXNrIiwiY3JlYXRlX3Rhc2tzX2JhdGNoIiwiYXBwcm92ZSIsImRlbnkiLCJzdGF0dXMiLCJhcHByb3ZlZCIsImRlbmllZCIsImNoaXBMbG0iLCJhYm1BZ2VudCIsImxlZ2VuZERlbGV0ZWRBZ2VudCIsImxlZ2VuZFByb2plY3REZWxldGVkIiwibGVnZW5kTm9BY2Nlc3MiLCJsZWdlbmROb1Blcm1pc3Npb25zIiwiYWRkQWdlbnQiLCJlZGl0QWdlbnQiLCJkZWxldGVBZ2VudCIsInNlbmRGZWVkYmFjayIsInNhdmVDaGFuZ2VzIiwiY3JlYXRlQWdlbnRMYWJlbEJ1dHRvbiIsImNvbmZpcm1BZ2VudENyZWF0ZWQiLCJjb25maXJtQWdlbnRVcGRhdGVkV2l0aEZpbGVzRXJyb3IiLCJjb25maXJtQWdlbnRXaXRoRmlsZXNFcnJvciIsImNvbmZpcm1BZ2VudERlbGV0ZWQiLCJjb25maXJtQWdlbnRVcGRhdGVkIiwiY29uZmlybUNsb3NlQ3JlYXRlQWdlbnQiLCJjb25maXJtQ2xvc2VFZGl0QWdlbnQiLCJjb25maXJtUmVsb2FkQnJvd3NlciIsImVycm9yQWdlbnRDcmVhdGVkIiwiYXR0YWNobWVudENhcmQiLCJkb3dubG9hZCIsImdlbmVyYWxTZWN0aW9uIiwiZ2VuZXJhbFNldHRpbmdzIiwicmVxdWlyZWRGaWVsZHNMYWJlbCIsImluZm9MYWJlbCIsImJhc2ljU2V0dGluZ3MiLCJzZWxlY3RFbW9qaSIsIm5hbWUiLCJuYW1lUGxhY2Vob2xkZXIiLCJiZWhhdmlvclNldHRpbmdzIiwiaW5pdGlhbFByb21wdCIsImluaXRpYWxQcm9tcHRQbGFjZWhvbGRlciIsIm1vZGVsQWlMYWJlbCIsImlucHV0UGxhY2Vob2xkZXJUaXRsZSIsImlucHV0UGxhY2Vob2xkZXIiLCJpbnRyb2R1Y3Rpb24iLCJpbnRyb2R1Y3Rpb25QbGFjZWhvbGRlciIsIm1heENhcmFjdGVyTmFtZSIsIm1heENhcmFjdGVySW5pdGlhbFByb21wdCIsIm1heElucHV0UGxhY2Vob2xkZXIiLCJtYXhDYXJhY3RlckludHJvZHVjdGlvbiIsImhvd1RvV3JpdGVQcm9tcHQiLCJ3aGF0SXNNb2RlbEFpVGl0bGUiLCJ3aGF0SXNNb2RlbEFpIiwia25vd2xlZGdlU2VjdGlvbiIsImtub3dsZWRnZVRhYiIsInNlbGVjdEZpbGVUaXRsZSIsImF0dGFjaEZpbGVzIiwiZHJvcFpvbmVUZXh0IiwiaW5mb0ZpbGVUeXBlcyIsIm1heEZpbGVzVGl0bGUiLCJtYXhGaWxlc0Rlc2NyaXB0aW9uIiwibWF4U2l6ZVRpdGxlIiwibWF4U2l6ZURlc2NyaXB0aW9uIiwiaW52YWxpZEV4dGVuc2lvbkRlc2NyaXB0aW9uIiwibW9yZUluZm8iLCJhY2Nlc3NpYmlsaXR5U2VjdGlvbiIsInRpdGxlVGFiIiwidGl0bGVTZWN0aW9uIiwic3VidGl0bGVTZWN0aW9uIiwid2hvQ2FuQWNjZXNzIiwiYWxsQ29tcGFueVRpdGxlIiwiYWxsQ29tcGFueURlc2NyaXB0aW9uIiwiY2xpZW50VGl0bGUiLCJjbGllbnREZXNjcmlwdGlvbiIsIm93blRpdGxlIiwib3duRGVzY3JpcHRpb24iLCJjbGllbnRzU2VsZWN0ZWQiLCJzZWFyY2hFcnJvciIsInNlYXJjaEVtcHR5Iiwic2VhcmNoSW5pdGlhbCIsInNlYXJjaFBsYWNlaG9sZGVyIiwiY2xpZW50SW5hY3RpdmUiLCJjbGllbnREZWxldGVkVG9vbHRpcCIsImNsaWVudERlbGV0ZWQiLCJjbGllbnRzRXJyb3IiLCJwcm9jZXNzaW5nS25vd2xlZGdlIiwiZGVzY3JpcHRpb25VcGRhdGUiLCJmaWxlUm93Iiwic3RhdHVzUm93IiwicGVuZGluZyIsInByb2Nlc3NpbmciLCJmYWlsZWQiLCJkb25lIiwibG9hZGluZ0ZpbGVzIiwiZGVsZXRlQWdlbnRNb2RhbCIsInByb2plY3RTZWxlY3RvciIsImxhYmVsUHJvamVjdCIsInJlY2VudFByb2plY3RzIiwic2VhcmNoaW5nUHJvamVjdHMiLCJlcnJvck1lc3NhZ2UiLCJlbXB0eVJlY2VudFByb2plY3RzIiwiZW1wdHlTdGF0ZSIsIndpdGhvdXRDbGllbnQiLCJ3aXRob3V0VGl0bGUiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGFuZy9ici9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTRUNUSU9OUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9jb25maWcnXG5pbXBvcnQgeyBQcm9qZWN0U3VtbWFyeUNvbmZpZ0tleXMgfSBmcm9tICcuLi8uLi90eXBlcy9Qcm9qZWN0U3VtbWFyeUNvbmZpZ0tleXMnXG5cbmNvbnN0IGdsb2JhbHMgPSB7XG4gIGNsb3NlOiAnRmVjaGFyJyxcbiAgaG93V29ya3M6ICdDb21vIGZ1bmNpb25hPycsXG4gIGJyYW5kTmFtZTogJ01BSUEnLFxuICBleHBhbmQ6ICdFeHBhbmRpcicsXG4gIGNvbGxhcHNlOiAnUmVjb2xoZXInLFxuICBnb0JhY2s6ICdWb2x0YXIgYW8gaW7DrWNpbycsXG4gIGNvcHk6ICdDb3BpYXInLFxuICBjb3BpZWQ6ICdDb3BpYWRvJyxcbiAgc2F2ZWQ6ICdTYWx2bycsXG4gIHNlbGVjdFByb2plY3Q6ICdTZWxlY2lvbmFyIHByb2pldG8nLFxuICBzYXZlOiAnU2FsdmFyJyxcbiAgY2FuY2VsOiAnQ2FuY2VsYXInLFxufVxuXG5jb25zdCBlcnJvciA9IHtcbiAgdGl0bGU6ICdPY29ycmV1IHVtIHByb2JsZW1hJyxcbiAgZGVzY3JpcHRpb246ICdObyBtb21lbnRvLCBlc3RhbW9zIGVuZnJlbnRhbmRvIGFsZ3VucyBwcm9ibGVtYXMsIHBvciBmYXZvciwgdGVudGUgbm92YW1lbnRlIGVtIGFsZ3VucyBtaW51dG9zLicsXG4gIHRyeUFnYWluOiAnVGVudGFyIG5vdmFtZW50ZScsXG59XG5cbmNvbnN0IGdlbmVyaWNTZWN0aW9uID0ge1xuICBlcnJvcixcbiAgZ2xvYmFscyxcbn1cblxuY29uc3QgcHJvamVjdFN1bW1hcnlTZWN0aW9uID0ge1xuICByZXN1bWU6ICdSZXN1bWlyJyxcbiAgaGVsbG86ICdPbMOhLCB7e25hbWV9fSEnLFxuICB3ZWxjb21lOiAnU291IGEgTUFJQSwgc3VhIGFzc2lzdGVudGUgbmEgQ09SJyxcblxuICBmZWVkYmFjazoge1xuICAgIHRodW1ic1VwOiAnRm9pIMO6dGlsIHBhcmEgbWltJyxcbiAgICB0aHVtYnNEb3duOiAnTsOjbyBmb2kgw7p0aWwgcGFyYSBtaW0nLFxuICAgIHNvdXJjZXM6ICdGdWVudGVzJyxcbiAgfSxcblxuICBjb25maWc6IHtcbiAgICBwcm9qZWN0U3VtbWFyeTogJ1Jlc3VtaXIgcHJvamV0bycsXG4gICAgcHJvamVjdFN1bW1hcnlUaXRsZTogJ1Jlc3VtbyBkZSBwcm9qZXRvcycsXG4gICAgZ29CYWNrOiAnVm9sdGFyIGFvIGluw61jaW8nLFxuICAgIHNlbGVjdGVkUHJvamVjdDogJ1Byb2pldG8gc2VsZWNpb25hZG8nLFxuICAgIHNlbGVjdFByb2plY3Q6ICdTZWxlY2lvbmFyIHByb2pldG8nLFxuICAgIGNvbmZpZ3VyZVJlc3VtZTogJ0NvbmZpZ3VyYcOnw7VlcyBhdmFuw6dhZGFzJyxcbiAgICBnZW5lcmF0aW5nUmVzdW1lOiAnR2VyYW5kbyByZXN1bW8nLFxuICAgIGdlbmVyYXRlUmVzdW1lOiAnR2VyYXInLFxuICAgIGhpZGVDb25maWc6ICdPY3VsdGFyIGNvbmZpZ3VyYcOnw7VlcycsXG4gIH0sXG5cbiAgY29uZmlndXJlU2V0dGluZ3M6IHtcbiAgICBbUHJvamVjdFN1bW1hcnlDb25maWdLZXlzLkdFTkVSQUxfU1RBVFVTXTogJ0RhdGFzIGUgcHJhem9zJyxcbiAgICBbUHJvamVjdFN1bW1hcnlDb25maWdLZXlzLklOQ09NRV9DT1NUU106ICdSZW50YWJpbGlkYWRlJyxcbiAgICBbUHJvamVjdFN1bW1hcnlDb25maWdLZXlzLlRJTUVfSE9VUlNdOiAnRXN0aW1hdGl2YSBkZSBob3JhcyBlIHVzbycsXG4gICAgW1Byb2plY3RTdW1tYXJ5Q29uZmlnS2V5cy5UQVNLU19QUk9HUkVTU106ICdUYXJlZmFzIGUgYXZhbsOnb3MnLFxuICAgIFtQcm9qZWN0U3VtbWFyeUNvbmZpZ0tleXMuUkVXT1JLU106ICdSZXRyYWJhbGhvJyxcbiAgfSxcbn1cblxuY29uc3QgaG9tZU1lbnUgPSB7XG4gIHByb2plY3RTdW1tYXJ5OiB7XG4gICAgdGl0bGU6ICdSZXN1bW8gZG8gcHJvamV0bycsXG4gICAgZGVzY3JpcHRpb246ICdFbGFib3JlIHJlbGF0w7NyaW9zIGNvbSBJQSBjb20gYmFzZSBubyBzZXUgcHJvamV0bycsXG4gIH0sXG4gIGZhcToge1xuICAgIHRpdGxlOiAnUGVyZ3VudGFzIEZyZXF1ZW50ZXMnLFxuICAgIGVtcHR5OiAnTsOjbyBow6EgcGVyZ3VudGFzIGZyZXF1ZW50ZXMnLFxuICAgIGVycm9yOlxuICAgICAgJ09wcyEgVGl2ZW1vcyB1bSBwcm9ibGVtYSBhbyBjYXJyZWdhciBhcyBwZXJndW50YXMgZnJlcXVlbnRlcy4gUG9yIGZhdm9yLCB0ZW50ZSBub3ZhbWVudGUgZW0gYWxndW5zIG1pbnV0b3MuJyxcbiAgICBjYXRlZ29yaWVzOiB7XG4gICAgICBwcm9qZWN0czogJ1Byb2pldG8nLFxuICAgICAgdGFza3M6ICdUYXJlZmFzJyxcbiAgICAgIGhvdXJzOiAnSG9yYXMnLFxuICAgICAgdW5kZWZpbmVkOiAnU2VtIGNhdGVnb3JpYScsXG4gICAgfSxcbiAgfSxcbiAgY3JlYXRlZEJ5OiAncG9yJyxcbiAgY3JlYXRlZEJ5VG9vbHRpcDogJ1VzdcOhcmlvIGNyaWFkb3IgZG8gYWdlbnRlJyxcbiAgY3JlYXRlZEJ5VG9vbHRpcERlbGV0ZWQ6ICdVc3XDoXJpbyBleGNsdcOtZG8uIFNldSBub21lIMOpIG1hbnRpZG8gcGFyYSByZWZlcsOqbmNpYS4nLFxuICBoZWxsbzoge1xuICAgIHRpdGxlOiAnUHJvbnRvISBKw6EgZXN0b3UgdXNhbmRvIG8gcHJvamV0bycsXG4gICAgdGl0bGVfMTogJ0FudGVjaXBlIGRlc3Zpb3MuIFZhbW9zIGFuYWxpc2FyIGVzdGUgcHJvamV0by4nLFxuICAgIHRpdGxlXzI6ICdPIHF1ZSB2b2PDqiBxdWVyIHF1ZSBhbmFsaXNlbW9zPyBIb3JhcywgZXN0aW1hdGl2YXMsIHJldHJhYmFsaG9zPyBWb2PDqiBlc2NvbGhlIScsXG4gICAgdGl0bGVfMzogJ1ZhbW9zIHJldmlzYXIgbyBhbmRhbWVudG8gZGVzdGUgcHJvamV0by4nLFxuICAgIHN1YnRpdGxlOiAnUGFyYSBjb21lw6dhciwgcG9zc28gdGUgYWp1ZGFyIGNvbSBlc3NhcyBvcMOnw7Vlcy4gT3UsIHNlIHByZWZlcmlyLCBlc2NyZXZhIGRpcmV0YW1lbnRlIHN1YSBwZXJndW50YSEnLFxuICAgIHRpdGxlUG06ICdPbMOhLCB7e25hbWV9fSEgU291IHt7YWdlbnR9fSwgc3VhIGFzc2lzdGVudGUnLFxuICAgIHN1YnRpdGxlUG06ICdQYXJhIHRlIGRhciByZXNwb3N0YXMgcHJlY2lzYXMsIHByZWNpc28gc2FiZXIgc29icmUgcXVhbCBwcm9qZXRvIHZhbW9zIGNvbnZlcnNhci4gUXVhbCB2b2PDqiBlc2NvbGhlPycsXG4gIH0sXG4gIG5vQWdlbnRzOiB7XG4gICAgdGl0bGU6ICdBaW5kYSBuw6NvIGjDoSBhZ2VudGVzIGNyaWFkb3MgZW0gc3VhIGVtcHJlc2EnLFxuICAgIGRlc2NyaXB0aW9uQ3JlYXRlOlxuICAgICAgJ0VzdGEgc2XDp8OjbyBzZXLDoSBoYWJpbGl0YWRhIHF1YW5kbyB2b2PDqiBjb25maWd1cmFyIHNldSBwcmltZWlybyBhZ2VudGUuIEluaWNpZSBhIGNvbmZpZ3VyYcOnw6NvIHVzYW5kbyBvIGJvdMOjbyBhYmFpeG8uJyxcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgICdRdWFuZG8gYSBwZXNzb2EgY29tIHBlcm1pc3PDo28gcGFyYSBjcmlhciBvcyBhZ2VudGVzIG9zIGNvbmZpZ3VyYXIsIHZvY8OqIHBvZGVyw6EgYWNlc3PDoS1sb3MgYSBwYXJ0aXIgYXF1aS4nLFxuICAgIGNyZWF0ZUFnZW50OiAnQ3JpYXIgYWdlbnRlJyxcbiAgfSxcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBbU0VDVElPTlMucHJvamVjdFN1bW1hcnldOiB7XG4gICAgLi4uZ2VuZXJpY1NlY3Rpb24sXG4gICAgLi4ucHJvamVjdFN1bW1hcnlTZWN0aW9uLFxuICB9LFxuICBbU0VDVElPTlMuY2hhdEFJXToge1xuICAgIC4uLmdlbmVyaWNTZWN0aW9uLFxuICAgIC4uLnByb2plY3RTdW1tYXJ5U2VjdGlvbixcbiAgICBob21lTWVudSxcblxuICAgIGJ1dHRvbjogJ0lBJyxcbiAgICB0aXRsZTogJ09sw6EsIHt7bmFtZX19IScsXG4gICAgbmV3Q2hhdDogJ05vdm8gY2hhdCcsXG4gICAgZGVzY3JpcHRpb246ICdTb3UgYSBNQUlBLCBzdWEgYXNzaXN0ZW50ZSwgZSBlc3RvdSBhcXVpIHBhcmEgdGUgYWp1ZGFyIGNvbSBhcyBzdWFzIGTDunZpZGFzLicsXG4gICAgaGlzdG9yeToge1xuICAgICAgdG9vbHRpcDogJ0hpc3TDs3JpY28nLFxuICAgICAgdGl0bGU6ICdIaXN0w7NyaWNvIHZhemlvJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnTmVuaHVtYSBjb252ZXJzYSBlbmNvbnRyYWRhJyxcbiAgICAgIGl0ZW06IHtcbiAgICAgICAgZGF0ZTogJ8OabHRpbWEgYXR1YWxpemHDp8OjbyB7e2RhdGV9fScsXG4gICAgICB9LFxuICAgICAgbWVudToge1xuICAgICAgICByZW5hbWU6ICdSZW5vbWVhcicsXG4gICAgICAgIGRlbGV0ZTogJ0V4Y2x1aXInLFxuICAgICAgfSxcbiAgICAgIGxvYWRpbmdNb3JlOiAnQ2FycmVnYW5kbyBtYWlzIGNvbnZlcnNhcycsXG4gICAgfSxcbiAgICBvbmJvYXJkaW5nOiB7XG4gICAgICBtYWlhOiAnTUFJQScsXG4gICAgICBhZ2VudEN1c3RvbTogJ0FnZW50ZXMgY3VzdG9tJyxcbiAgICAgIGhvd0NyZWF0ZUFnZW50OiAnQ29tbyBjcmlhciB1bSBhZ2VudGU/JyxcbiAgICAgIHRvb2x0aXA6ICdDb21vIGZ1bmNpb25hPycsXG4gICAgICBob3dJdFdvcmtzOiAnQ29tbyBmdW5jaW9uYT8nLFxuICAgIH0sXG4gICAgcWE6IHtcbiAgICAgIHRpdGxlOiAnUGVyZ3VudGFzIEZyZXF1ZW50ZXMnLFxuICAgICAgaXRlbXM6IHtcbiAgICAgICAgcmVudGFiaWxpZGFkX3Byb3llY3RvOiAnUXVhbCDDqSBhIHJlbnRhYmlsaWRhZGUgZGVzdGUgcHJvamV0bz8nLFxuICAgICAgICBhdmFuY2VfcHJveWVjdG86ICdRdWFpcyBzw6NvIG9zIGF2YW7Dp29zIGRlc3RlIHByb2pldG8/JyxcbiAgICAgICAgdGFyZWFzX3Byb3llY3RvOiAnUXVhaXMgc8OjbyBhcyBwcsOzeGltYXMgdGFyZWZhcyBhIHZlbmNlcj8nLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGNoYXQ6IHtcbiAgICAgIGdlbmVyYXRpbmc6ICdBbmFsaXNhbmRvIG1lbnNhZ2VtJyxcbiAgICAgIGdlbmVyYXRpbmdBdHRhY2htZW50OiAnQW5hbGlzYW5kbyBhZGp1bnRvJyxcbiAgICAgIGdlbmVyYXRpbmdEZWVwU2VhcmNoOiAnSW5pY2lhbmRvIGEgcGVzcXVpc2EnLFxuICAgICAgZ2VuZXJhdGluZ1dlYlNlYXJjaDogJ1Blc3F1aXNhbmRvIG5hIHdlYicsXG4gICAgICB3cml0aW5nOiAnRXNjcmV2ZW5kbycsXG4gICAgICBsb2FkaW5nTW9yZTogJ0NhcnJlZ2FuZG8gbWFpcyBtZW5zYWdlbnMnLFxuICAgICAgZm9vdGVyOiB7XG4gICAgICAgIHBsYWNlaG9sZGVyOiAnRXNjcmV2YSBzdWEgcGVyZ3VudGEgYXF1aeKApicsXG4gICAgICB9LFxuICAgICAgZXJyb3I6ICdPY29ycmV1IHVtIGVycm8gYW8gZ2VyYXIgc3VhIHJlc3Bvc3RhLCBwb3IgZmF2b3IsIHRlbnRlIG5vdmFtZW50ZS4nLFxuICAgICAgZXJyb3JBY2Nlc3NEZW5pZWQ6XG4gICAgICAgICdWb2PDqiBuw6NvIHRlbSBhY2Vzc28gcGFyYSBpbnRlcmFnaXIgY29tIGVzdGUgYWdlbnRlLiDDiSBwb3Nzw612ZWwgcXVlIHN1YXMgY29uZmlndXJhw6fDtWVzIGRlIGFjZXNzaWJpbGlkYWRlIHRlbmhhbSBtdWRhZG8uIFBvciBmYXZvciwgY29udGF0ZSBhIHBlc3NvYSBuYSBzdWEgb3JnYW5pemHDp8OjbyBxdWUgZ2VyZW5jaWEgYWdlbnRlcyBwYXJhIG9idGVyIG1haXMgaW5mb3JtYcOnw7Vlcy4nLFxuICAgICAgY2hhbmdlUHJvamVjdDogJ0RldGVjdGVpIHF1ZSB2b2PDqiBxdWVyIG11ZGFyIGRlIFByb2pldG8uXFxuXFxuKipTZWxlY2lvbmUgbyBwcm9qZXRvIHBhcmEgY29udGludWFyOioqJyxcbiAgICAgIHNlYXJjaFdlYjogJ1Blc3F1aXNhciBuYSB3ZWInLFxuICAgICAgZGVlcFNlYXJjaDogJ0J1c2NhIGF2YW7Dp2FkYSBuYSBpbnRlcm5ldCAoYWNlc3NvIGEgbWFpcyBmb250ZXMpJyxcbiAgICAgIGF0dGFjaEZpbGU6ICdBbmV4YXIgYXJxdWl2bycsXG4gICAgICBzZW5kOiAnRW52aWFyJyxcbiAgICAgIGxpbWl0RmlsZXM6ICdWb2PDqiBleGNlZGV1IG8gbGltaXRlIGRlIGFuZXhvcycsXG4gICAgICBzdG9wOiAnQ2FuY2VsYXIgcGVzcXVpc2EnLFxuICAgICAgY2FuY2VsbGVkOiAnQSBwZXNxdWlzYSBmb2kgY2FuY2VsYWRhLicsXG4gICAgICBhdHRhY2htZW50UHJldmlld01vZGFsOiB7XG4gICAgICAgIGxvYWRpbmc6ICdDYXJyZWdhbmRvLi4uJyxcbiAgICAgICAgdW5zdXBwb3J0ZWRGaWxlTWVzc2FnZTpcbiAgICAgICAgICAnVGl2ZW1vcyB1bSBwcm9ibGVtYSBhbyBjYXJyZWdhciBhIHByw6ktdmlzdWFsaXphw6fDo28uIFBvciBmYXZvciwgdGVudGUgbm92YW1lbnRlIGVtIGFsZ3VucyBtaW51dG9zLicsXG4gICAgICAgIHR5cGVMYWJlbDogJ1RpcG86JyxcbiAgICAgICAgdW5rbm93bjogJ0Rlc2NvbmhlY2lkbycsXG4gICAgICAgIHNpemVMYWJlbDogJ1RhbWFuaG86JyxcbiAgICAgICAgZXhjZWw6IHtcbiAgICAgICAgICBzaGVldFNlbGVjdG9yTGFiZWw6ICdQbGFuaWxoYTonLFxuICAgICAgICAgIGxvYWRFcnJvcjogJ07Do28gZm9pIHBvc3PDrXZlbCBjYXJyZWdhciBvIGNvbnRlw7pkbyBkbyBhcnF1aXZvIEV4Y2VsLicsXG4gICAgICAgICAgZmlsZVJlYWRFcnJvcjogJ0Vycm8gYW8gbGVyIG8gYXJxdWl2by4nLFxuICAgICAgICAgIHNoZWV0TG9hZEVycm9yOiAnRXJybyBhbyBjYXJyZWdhciBhIHBsYW5pbGhhIHNlbGVjaW9uYWRhLicsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgZGVsZXRlUXVlc3Rpb25Nb2RhbDoge1xuICAgICAgdGl0bGU6ICdEZXNlamEgZXhjbHVpciBlc3RhIGNvbnZlcnNhPycsXG4gICAgICBmaXJzdFBhcnQ6ICdWb2PDqiBlc3TDoSBwcmVzdGVzIGEgZXhjbHVpcicsXG4gICAgICBzZWNvbmRQYXJ0OiAnRXN0YSBhw6fDo28gw6kgaXJyZXZlcnPDrXZlbC4nLFxuICAgICAgY2FuY2VsOiAnQ2FuY2VsYXInLFxuICAgICAgZGVsZXRlOiAnRXhjbHVpcicsXG4gICAgfSxcbiAgICBlZGl0UXVlc3Rpb25Nb2RhbDoge1xuICAgICAgbmV3TmFtZTogJ05vdm8gbm9tZScsXG4gICAgICB0aXRsZTogJ1Jlbm9tZWFyIGNvbnZlcnNhJyxcbiAgICAgIHJlbmFtZTogJ1Jlbm9tZWFyJyxcbiAgICAgIGNhbmNlbDogJ0NhbmNlbGFyJyxcbiAgICAgIG1heExlbmd0aDogJ1ZvY8OqIGF0aW5naXUgbyBsaW1pdGUgZGUgMTQwIGNhcmFjdGVyZXMuJyxcbiAgICB9LFxuICAgIG1vZGFsRmlsZUV4Y2VlZHM6IHtcbiAgICAgIGxpbWl0RmlsZXNUaXRsZTogJ03DoXguIEFuZXhvcyBleGNlZGlkb3MuJyxcbiAgICAgIGxpbWl0U2l6ZVRpdGxlOiAnVm9jw6ogZXhjZWRldSBvIGxpbWl0ZSBkZSB0YW1hbmhvIHBlcm1pdGlkbycsXG4gICAgICBsaW1pdEZpbGVzRGVzY3JpcHRpb246XG4gICAgICAgICdWb2PDqiBwb2RlIGFuZXhhciBubyBtw6F4aW1vIDUgYXJxdWl2b3MgcG9yIG1lbnNhZ2VtLiBPcyBzZWd1aW50ZXMgYXJxdWl2b3MgbsOjbyBwdWRlcmFtIHNlciBhbmV4YWRvczonLFxuICAgICAgbGltaXRTaXplRGVzY3JpcHRpb246XG4gICAgICAgICdVbSBvdSBtYWlzIGFycXVpdm9zIGV4Y2VkZW0gbyB0YW1hbmhvIG3DoXhpbW8gcGVybWl0aWRvIHBvciB0aXBvLiBPcyBzZWd1aW50ZXMgYXJxdWl2b3MgbsOjbyBwdWRlcmFtIHNlciBhbmV4YWRvczonLFxuICAgICAgYWNjZXB0OiAnQWNlaXRhcicsXG4gICAgICBsaW1pdDogJ2xpbWl0ZScsXG4gICAgfSxcbiAgICBzb3VyY2VzSW5mb3JtYXRpb25Nb2RhbDoge1xuICAgICAgdGl0bGU6ICdGdWVudGVzOicsXG4gICAgfSxcbiAgICBhZ2VudHM6IHtcbiAgICAgIHRpdGxlOiAnQWdlbnRlcycsXG4gICAgICBuZXdBZ2VudDogJ05vdm8gYWdlbnRlJyxcbiAgICAgIGNyZWF0ZUFnZW50OiAnQ3JpYXIgQWdlbnRlJyxcbiAgICAgIGVkaXQ6ICdFZGl0YXInLFxuICAgICAgbWFpYTogJyhFc3BlY2lhbGlzdGEgZGUgcHJvamV0byknLFxuICAgICAgYWRkRmF2b3JpdGU6ICdBZGljaW9uYXIgYW9zIGZhdm9yaXRvcycsXG4gICAgICByZW1vdmVGYXZvcml0ZTogJ1JlbW92ZXIgZG9zIGZhdm9yaXRvcycsXG4gICAgICBmYXZvcml0ZVRvZ2dsZWRBZGRlZFN1Y2Nlc3M6ICdBZ2VudGUgYWRpY2lvbmFkbyBhb3MgZmF2b3JpdG9zJyxcbiAgICAgIGZhdm9yaXRlVG9nZ2xlZFJlbW92ZWRTdWNjZXNzOiAnQWdlbnRlIHJlbW92aWRvIGRlIGZhdm9yaXRvcycsXG4gICAgICBmYXZvcml0ZVRvZ2dsZWRFcnJvcjogJ07Do28gZm9pIHBvc3PDrXZlbCBzYWx2YXIgc2V1IGZhdm9yaXRvLiBUZW50ZSBub3ZhbWVudGUuJyxcbiAgICAgIGZhdm9yaXRlVG9nZ2xlZFJlbW92ZWRFcnJvcjogJ07Do28gZm9pIHBvc3PDrXZlbCByZW1vdmVyIG8gZmF2b3JpdG8uIFRlbnRlIG5vdmFtZW50ZS4nLFxuICAgICAgbWFpYUludHJvZHVjdGlvbjogJ0JlbS12aW5kbyDDoCBNQUlBLCBzdWEgYXNzaXN0ZW50ZSBwYXJhIG1lbGhvcmFyIG8gc2V1IGRpYSBhIGRpYS4nLFxuICAgIH0sXG4gICAgY29udmVyc2F0aW9uczoge1xuICAgICAgdGl0bGU6ICdNaW5oYXMgY29udmVyc2FzJyxcbiAgICAgIGVycm9yOiAnT2NvcnJldSB1bSBlcnJvIGFvIGNhcnJlZ2FyIG8gaGlzdMOzcmljbyBkZSBjb252ZXJzYXMnLFxuICAgICAgZW1wdHk6ICdUb2RhcyBhcyBzdWFzIGNvbnZlcnNhcyBjb20gb3MgYWdlbnRlcyBzZXLDo28gZXhpYmlkYXMgYXF1aScsXG4gICAgICBlbXB0eUxhYmVsOiAnTWVuc2FnZW0gY29tIGFuZXhvcycsXG4gICAgICBjb2xsYXBzZTogJ1JlY29saGVyJyxcbiAgICAgIGV4cGFuZDogJ0V4cGFuZGlyJyxcbiAgICAgIG5ld0NoYXQ6ICdOb3ZvIGNoYXQnLFxuICAgIH0sXG4gICAgc25hY2tiYXI6IHtcbiAgICAgIGRlbGV0ZUNoYXQ6IHtcbiAgICAgICAgc3VjY2VzczogJ1N1YSBjb252ZXJzYSBmb2kgZXhjbHXDrWRhIGNvbSBzdWNlc3NvLicsXG4gICAgICAgIGVycm9yOiAnT2NvcnJldSB1bSBlcnJvIGluZXNwZXJhZG8uIFBvciBmYXZvciB0ZW50ZSBub3ZhbWVudGUuJyxcbiAgICAgIH0sXG4gICAgICByZW5hbWVkQ2hhdDoge1xuICAgICAgICBzdWNjZXNzOiAnQ29udmVyc2EgcmVub21lYWRhIGNvbSBzdWNlc3NvJyxcbiAgICAgICAgZXJyb3I6ICdPY29ycmV1IHVtIGVycm8gaW5lc3BlcmFkby4gUG9yIGZhdm9yIHRlbnRlIG5vdmFtZW50ZS4nLFxuICAgICAgfSxcbiAgICAgIGxvYWRNb3JlQWdlbnRzOiB7XG4gICAgICAgIGVycm9yOiAnT2NvcnJldSB1bSBlcnJvIGluZXNwZXJhZG8uIFBvciBmYXZvciB0ZW50ZSBub3ZhbWVudGUuJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBhcHByb3ZhbEJveDoge1xuICAgICAgYWN0aW9uczoge1xuICAgICAgICBjcmVhdGVfdGFzazogJ0NyaWHDp8OjbyBkZSB0YXJlZmEnLFxuICAgICAgICBjcmVhdGVfdGFza3NfYmF0Y2g6ICdDcmlhw6fDo28gZGUgdGFyZWZhcycsXG4gICAgICAgIHVua25vd246ICdBw6fDo28gZGVzY29uaGVjaWRhJyxcbiAgICAgIH0sXG4gICAgICB0aXRsZTogJ0NvbmZpcm1hw6fDo28gcmVxdWVyaWRhJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnVm9jw6ogcHJlY2lzYSBhcHJvdmFyIGEgc2VndWludGUgYcOnw6NvOicsXG4gICAgICBhcHByb3ZlOiAnQXByb3ZhcicsXG4gICAgICBkZW55OiAnTmVnYXInLFxuICAgICAgc3RhdHVzOiB7XG4gICAgICAgIGFwcHJvdmVkOiAnU29saWNpdGHDp8OjbyBBcHJvdmFkYScsXG4gICAgICAgIGRlbmllZDogJ1NvbGljaXRhw6fDo28gTmVnYWRhJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBjaGlwTGxtOiB7XG4gICAgICB0b29sdGlwOiAnRXN0ZSBhZ2VudGUgdXRpbGl6YSBvIG1vZGVsbzoge3ttb2RlbH19JyxcbiAgICB9LFxuICB9LFxuICBbU0VDVElPTlMuYWJtQWdlbnRdOiB7XG4gICAgLi4uZ2VuZXJpY1NlY3Rpb24sXG4gICAgbGVnZW5kRGVsZXRlZEFnZW50OiAnRXN0ZSBhZ2VudGUgZm9pIGV4Y2x1w61kbyBubyBkaWEnLFxuICAgIGxlZ2VuZFByb2plY3REZWxldGVkOiAnTyBwcm9qZXRvIHt7bmFtZX19IGZvaSBleGNsdcOtZG8uIE7Do28gw6kgcG9zc8OtdmVsIGNvbnRpbnVhciBhIGNvbnZlcnNhJyxcbiAgICBsZWdlbmROb0FjY2VzczogJ1ZvY8OqIG7Do28gdGVtIG1haXMgYWNlc3NvIHBhcmEgaW50ZXJhZ2lyIGNvbSBvIGFnZW50ZSB7e25hbWV9fScsXG4gICAgbGVnZW5kTm9QZXJtaXNzaW9uczogJ1ZvY8OqIG7Do28gdGVtIG1haXMgcGVybWlzc8OjbyBwYXJhIHZpc3VhbGl6YXIgb3UgaW50ZXJhZ2lyIGNvbSBvIGFnZW50ZSB7e25hbWV9fScsXG4gICAgYWdlbnRzOiAnQWdlbnRlcycsXG4gICAgYWRkQWdlbnQ6ICdBZGljaW9uYXIgbm92byBhZ2VudGUnLFxuICAgIG5ld0FnZW50OiAnTm92byBhZ2VudGUnLFxuICAgIGNyZWF0ZUFnZW50OiAnQ3JpYXIgQWdlbnRlJyxcbiAgICBlZGl0QWdlbnQ6ICdFZGl0YXIgYWdlbnRlJyxcbiAgICBjYW5jZWw6ICdDYW5jZWxhcicsXG4gICAgYWNjZXB0OiAnQWNlaXRhcicsXG4gICAgZGVsZXRlQWdlbnQ6ICdFeGNsdWlyIGFnZW50ZScsXG4gICAgY29udGludWU6ICdDb250aW51YXInLFxuICAgIGVkaXQ6ICdFZGl0YXInLFxuICAgIGZlZWRiYWNrOiAnRW52aWFyIEZlZWRiYWNrJyxcbiAgICBzZW5kRmVlZGJhY2s6ICdFbnZpYXIgZmVlZGJhY2snLFxuICAgIHNhdmVDaGFuZ2VzOiAnU2FsdmFyIGFsdGVyYcOnw7VlcycsXG4gICAgY3JlYXRlQWdlbnRMYWJlbEJ1dHRvbjogJ0NyaWFyIGFnZW50ZScsXG4gICAgY29uZmlybUFnZW50Q3JlYXRlZDogJ08gYWdlbnRlIGZvaSBjcmlhZG8gY29tIHN1Y2Vzc28nLFxuICAgIGNvbmZpcm1BZ2VudFVwZGF0ZWRXaXRoRmlsZXNFcnJvcjpcbiAgICAgICdPIGFnZW50ZSBmb2kgZWRpdGFkbyBjb20gc3VjZXNzbywgbWFzIGFsZ3VucyBhcnF1aXZvcyBuw6NvIHB1ZGVyYW0gc2VyIHByb2Nlc3NhZG9zLicsXG4gICAgY29uZmlybUFnZW50V2l0aEZpbGVzRXJyb3I6ICdPIGFnZW50ZSBmb2kgY3JpYWRvIGNvbSBzdWNlc3NvLCBtYXMgYWxndW5zIGFycXVpdm9zIG7Do28gcHVkZXJhbSBzZXIgcHJvY2Vzc2Fkb3MuJyxcbiAgICBjb25maXJtQWdlbnREZWxldGVkOiAnTyBhZ2VudGUgZm9pIGV4Y2x1w61kbyBjb20gc3VjZXNzbycsXG4gICAgY29uZmlybUFnZW50VXBkYXRlZDogJ08gYWdlbnRlIGZvaSBhdHVhbGl6YWRvIGNvbSBzdWNlc3NvJyxcbiAgICBjb25maXJtQ2xvc2VDcmVhdGVBZ2VudDogJ1RlbSBjZXJ0ZXphIHF1ZSBkZXNlamEgZmVjaGFyPyBBcyBhbHRlcmHDp8O1ZXMgc2Vyw6NvIHBlcmRpZGFzLicsXG4gICAgY29uZmlybUNsb3NlRWRpdEFnZW50OiAnVGVtIGNlcnRlemEgcXVlIGRlc2VqYSBmZWNoYXI/IEFzIGFsdGVyYcOnw7VlcyBzZXLDo28gcGVyZGlkYXMuJyxcbiAgICBjb25maXJtUmVsb2FkQnJvd3NlcjogJ1RlbSBjZXJ0ZXphIHF1ZSBkZXNlamEgcmVjYXJyZWdhciBhIHDDoWdpbmE/IEFzIGFsdGVyYcOnw7VlcyBzZXLDo28gcGVyZGlkYXMuJyxcbiAgICBlcnJvckFjY2Vzc0RlbmllZDogJ1ZvY8OqIG7Do28gdGVtIHBlcm1pc3PDo28gcGFyYSBhY2Vzc2FyIGVzdGUgYWdlbnRlLiBDb250YXRlIG8gc3Vwb3J0ZS4nLFxuICAgIGVycm9yQWdlbnRDcmVhdGVkOiAnT2NvcnJldSB1bSBlcnJvIGluZXNwZXJhZG8uIFBvciBmYXZvciB0ZW50ZSBub3ZhbWVudGUuJyxcbiAgICBhdHRhY2htZW50Q2FyZDoge1xuICAgICAgZG93bmxvYWQ6ICdEZXNjYXJyZWdhcicsXG4gICAgICBkZWxldGU6ICdFeGNsdWlyJyxcbiAgICB9LFxuICAgIGdlbmVyYWxTZWN0aW9uOiB7XG4gICAgICB0aXRsZTogJ0dlcmFsJyxcbiAgICAgIGdlbmVyYWxTZXR0aW5nczogJ0NvbmZpZ3VyYcOnw6NvIGdlcmFsJyxcbiAgICAgIHJlcXVpcmVkRmllbGRzTGFiZWw6ICcqb2JyaWdhdMOzcmlvcycsXG4gICAgICBpbmZvTGFiZWw6ICdBZGljaW9uZSB0b2RhcyBhcyBpbmZvcm1hw6fDtWVzIHBhcmEgcGVyc29uYWxpemFyIG8gY29tcG9ydGFtZW50byBkbyBzZXUgYWdlbnRlLicsXG4gICAgICBiYXNpY1NldHRpbmdzOiAnQ29uZmlndXJhw6fDo28gYsOhc2ljYScsXG4gICAgICBzZWxlY3RFbW9qaTogJ1NlbGVjaW9uYXIgZW1vamknLFxuICAgICAgbmFtZTogJ1F1YWwgw6kgbyBub21lIGRvIHNldSBhZ2VudGU/JyxcbiAgICAgIG5hbWVQbGFjZWhvbGRlcjogJ0TDqiB1bSBub21lIGFvIHNldSBhZ2VudGUnLFxuICAgICAgYmVoYXZpb3JTZXR0aW5nczogJ0NvbmZpZ3VyYcOnw6NvIGRlIGNvbXBvcnRhbWVudG8nLFxuICAgICAgaW5pdGlhbFByb21wdDogJ1F1YWlzIHPDo28gYXMgaW5zdHJ1w6fDtWVzPycsXG4gICAgICBpbml0aWFsUHJvbXB0UGxhY2Vob2xkZXI6XG4gICAgICAgICdFeGVtcGxvOiBWb2PDqiDDqSB1bSByZWRhdG9yIGRlIG3DrWRpYXMgc29jaWFpcyBxdWUgZXNjcmV2ZSBlIGFkYXB0YSBtZW5zYWdlbnMgcGFyYSBkaWZlcmVudGVzIHJlZGVzLCBnYXJhbnRpbmRvIGNvbnNpc3TDqm5jaWEgbm8gdG9tLCBuYSBwZXJzb25hbGlkYWRlIGUgbm9zIHZhbG9yZXMgZGEgbWFyY2EuJyxcbiAgICAgIG1vZGVsQWlMYWJlbDogJ01vZGVsbyBkZSBJQScsXG4gICAgICBpbnB1dFBsYWNlaG9sZGVyVGl0bGU6ICdPIHF1ZSBvIHVzdcOhcmlvIHZlcsOhIG5vIGNhbXBvIGRlIGNoYXQgYW50ZXMgZGUgZXNjcmV2ZXI/JyxcbiAgICAgIGlucHV0UGxhY2Vob2xkZXI6ICdQZXJndW50ZSBvIHF1ZSBwcmVjaXNhcuKApicsXG4gICAgICBpbnRyb2R1Y3Rpb246ICdDb21vIG8gc2V1IGFnZW50ZSB2YWkgc2UgYXByZXNlbnRhcj8nLFxuICAgICAgaW50cm9kdWN0aW9uUGxhY2Vob2xkZXI6XG4gICAgICAgICdFeGVtcGxvOiBPbMOhISDwn5GLIFZvdSB0ZSBhanVkYXIgYSBjcmlhciwgYWRhcHRhciBlIHJldmlzYXIgdGV4dG9zIHBhcmEgZGlmZXJlbnRlcyBwbGF0YWZvcm1hcywgZ2FyYW50aW5kbyBxdWUgbWFudGVuaGFtIGEgdm96LCBvIHRvbSBlIGEgcGVyc29uYWxpZGFkZSBkYSBzdWEgbWFyY2EuIFZvY8OqIHBvZGUgbWUgcGVkaXIgaWRlaWFzIHBhcmEgY2FtcGFuaGFzLCBhZGFwdGFyIHVtIHRleHRvIHBhcmEgb3V0cm8gY2FuYWwgb3UgcmV2aXNhciBhIGNvZXLDqm5jaWEgZGEgbWVuc2FnZW0uJyxcbiAgICAgIGFkZEZhdm9yaXRlOiAnQWRpY2lvbmFyIGFvcyBmYXZvcml0b3MnLFxuICAgICAgcmVtb3ZlRmF2b3JpdGU6ICdSZW1vdmVyIGRvcyBmYXZvcml0b3MnLFxuICAgICAgZXJyb3I6IHtcbiAgICAgICAgbWF4Q2FyYWN0ZXJOYW1lOiAnVm9jw6ogYXRpbmdpdSBvIGxpbWl0ZSBkZSAxNTAgY2FyYWN0ZXJlcy4nLFxuICAgICAgICBtYXhDYXJhY3RlckluaXRpYWxQcm9tcHQ6ICdWb2PDqiBhdGluZ2l1IG8gbGltaXRlIGRlIDUwMDAgY2FyYWN0ZXJlcy4nLFxuICAgICAgICBtYXhJbnB1dFBsYWNlaG9sZGVyOiAnVm9jw6ogYXRpbmdpdSBvIGxpbWl0ZSBkZSAxMDAgY2FyYWN0ZXJlcy4nLFxuICAgICAgICBtYXhDYXJhY3RlckludHJvZHVjdGlvbjogJ1ZvY8OqIGF0aW5naXUgbyBsaW1pdGUgZGUgNDAwIGNhcmFjdGVyZXMuJyxcbiAgICAgIH0sXG4gICAgICBob3dUb1dyaXRlUHJvbXB0OiAnQ29tbyBlc2NyZXZlciB1bSBwcm9tcHQnLFxuICAgICAgd2hhdElzTW9kZWxBaVRpdGxlOiAnUXVhbCBtb2RlbG8gZGUgSUEgdm9jw6ogdmFpIHVzYXI/JyxcbiAgICAgIHdoYXRJc01vZGVsQWk6ICdPIHF1ZSDDqSB1bSBtb2RlbG8gZGUgSUE/JyxcbiAgICAgIGNyZWF0ZWRCeTogJ1BvcicsXG4gICAgICBjcmVhdGVkQnlUb29sdGlwOiAnVXN1w6FyaW8gY3JpYWRvciBkbyBhZ2VudGUnLFxuICAgICAgY3JlYXRlZEJ5VG9vbHRpcERlbGV0ZWQ6ICdVc3XDoXJpbyBleGNsdcOtZG8uIFNldSBub21lIMOpIG1hbnRpZG8gcGFyYSByZWZlcsOqbmNpYS4nLFxuICAgIH0sXG4gICAga25vd2xlZGdlU2VjdGlvbjoge1xuICAgICAgdGl0bGU6ICdDb25oZWNpbWVudG8nLFxuICAgICAga25vd2xlZGdlVGFiOiAnQmFzZSBkZSBjb25oZWNpbWVudG9zJyxcbiAgICAgIGluZm9MYWJlbDogJ0NhcnJlZ3VlIG9zIGFycXVpdm9zIHF1ZSBzZXUgYWdlbnRlIHVzYXLDoSBjb21vIGZvbnRlIHBhcmEgc3VhcyByZXNwb3N0YXMuJyxcbiAgICAgIHNlbGVjdEZpbGVUaXRsZTogJ1NFTEVDSU9OQVIgQVJRVUlWT1MnLFxuICAgICAgYXR0YWNoRmlsZXM6ICdBbmV4YXIgYXJxdWl2b3MnLFxuICAgICAgZHJvcFpvbmVUZXh0OiB7XG4gICAgICAgIDE6ICdDbGlxdWUgYXF1aSBwYXJhIGNhcnJlZ2FyJyxcbiAgICAgICAgMjogJ291IGFycmFzdGUgb3MgYXJxdWl2b3MnLFxuICAgICAgfSxcbiAgICAgIGluZm9GaWxlVHlwZXM6ICcubWQsIC5wZGYsIC5kb2MsIC5kb2N4LCAudHh0LCAuY3N2LCAucG5nLCAuanBnLCAuanBlZywgLnhscywgLnhsc3ggIChtw6F4LiB0b3RhbCBkZSA1TUIpJyxcbiAgICAgIGVycm9yOiB7XG4gICAgICAgIG1heEZpbGVzVGl0bGU6ICdMaW1pdGUgZGUgdGFtYW5obyB0b3RhbCBleGNlZGlkby4nLFxuICAgICAgICBtYXhGaWxlc0Rlc2NyaXB0aW9uOlxuICAgICAgICAgICdWb2PDqiBwb2RlIGFuZXhhciBhcnF1aXZvcyBhdMOpIHVtIHRvdGFsIGRlIDUgTUIuIE9zIHNlZ3VpbnRlcyBhcnF1aXZvcyBuw6NvIHB1ZGVyYW0gc2VyIGFuZXhhZG9zOicsXG4gICAgICAgIG1heFNpemVUaXRsZTogJ1ZvY8OqIGV4Y2VkZXUgbyBsaW1pdGUgZGUgdGFtYW5obyBwZXJtaXRpZG8nLFxuICAgICAgICBtYXhTaXplRGVzY3JpcHRpb246IHtcbiAgICAgICAgICAxOiAnTyBsaW1pdGUgbcOheGltbyBkZSA1IE1CIGZvaSBhdGluZ2lkby4nLFxuICAgICAgICAgIDI6ICdFc3NlcyBhcnF1aXZvcyBuw6NvIGZvcmFtIGNhcnJlZ2Fkb3MgcG9ycXVlIGV4Y2VkZW0gbyBlc3Bhw6dvIGRpc3BvbsOtdmVsOicsXG4gICAgICAgIH0sXG4gICAgICAgIGludmFsaWRFeHRlbnNpb25EZXNjcmlwdGlvbjoge1xuICAgICAgICAgIDE6ICdTb21lbnRlIGFycXVpdm9zIGNvbSBhcyBzZWd1aW50ZXMgZXh0ZW5zw7VlcyBzw6NvIGFjZWl0b3M6IC5tZCwgLnBkZiwgLmRvYywgLmRvY3gsIC50eHQsIC5jc3YsIC5wbmcsIC5qcGcsIC5qcGVnLCAueGxzLCAueGxzeCcsXG4gICAgICAgICAgMjogJ0VzdGVzIGFycXVpdm9zIG7Do28gZm9yYW0gY2FycmVnYWRvcyBwb3JxdWUgc3VhIGV4dGVuc8OjbyBuw6NvIMOpIHBlcm1pdGlkYTonLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIG1vcmVJbmZvOiAnVmVqYSBjb21vIGZ1bmNpb25hIGFxdWknLFxuICAgIH0sXG4gICAgYWNjZXNzaWJpbGl0eVNlY3Rpb246IHtcbiAgICAgIHRpdGxlVGFiOiAnQWNlc3NpYmlsaWRhZGUnLFxuICAgICAgdGl0bGVTZWN0aW9uOiAnQWNlc3NpYmlsaWRhZGUgZG8gYWdlbnRlJyxcbiAgICAgIHN1YnRpdGxlU2VjdGlvbjogJ0VzY29saGEgcXVlbSBwb2RlIHZlciBlIHVzYXIgZXN0ZSBhZ2VudGUgbmEgc3VhIG9yZ2FuaXphw6fDo28uJyxcbiAgICAgIHdob0NhbkFjY2VzczogJ1F1ZW0gcG9kZSB1c2FyIGVzdGUgYWdlbnRlPycsXG4gICAgICBhbGxDb21wYW55VGl0bGU6ICdQYXJhIHRvZGEgYSBlbXByZXNhJyxcbiAgICAgIGFsbENvbXBhbnlEZXNjcmlwdGlvbjogJ1RvZG9zIGxvcyB1c3VhcmlvcyBkZSB0dSBvcmdhbml6YWNpw7NuIHBvZHLDoW4gdmVyIHkgdXNhciBlc3RlIGFnZW50ZS4nLFxuICAgICAgY2xpZW50VGl0bGU6ICdQYXJhIGNsaWVudGVzIGVzcGVjw61maWNvcycsXG4gICAgICBjbGllbnREZXNjcmlwdGlvbjpcbiAgICAgICAgJ0Fzb2NpYSBlc3RlIGFnZW50ZSBhIHVubyBvIG3DoXMgY2xpZW50ZXMuIFRvZG9zIGxvcyB1c3VhcmlvcyBwb2Ryw6FuIHZlciBjb24gcXXDqSBjbGllbnRlcyBlc3TDoSB2aW5jdWxhZG8uJyxcbiAgICAgIG93blRpdGxlOiAnQXBlbmFzIHBhcmEgbWltJyxcbiAgICAgIG93bkRlc2NyaXB0aW9uOiAnTyBhZ2VudGUgc2Vyw6EgcHJpdmFkbyBlIGFwZW5hcyB2b2PDqiBwb2RlcsOhIHbDqi1sbyBlIHVzw6EtbG8uJyxcbiAgICAgIGNsaWVudHNTZWxlY3RlZDogJ0NsaWVudGVzIHNlbGVjaW9uYWRvczonLFxuICAgICAgc2VhcmNoRXJyb3I6ICdPcHMhIFRpdmVtb3MgdW0gcHJvYmxlbWEgYW8gY2FycmVnYXIgb3MgY2xpZW50ZXMuIFBvZGUgdGVudGFyIG5vdmFtZW50ZSBlbSBpbnN0YW50ZXM/JyxcbiAgICAgIHNlYXJjaEVtcHR5OiAnT3BzISBOw6NvIGVuY29udHJhbW9zIGNsaWVudGVzIGNvbSBlc3NlIG5vbWUuIFRlbnRlIG91dHJhIGJ1c2NhLicsXG4gICAgICBzZWFyY2hJbml0aWFsOiAnQ29tZWNlIGEgZGlnaXRhciBvIG5vbWUgZGUgdW0gY2xpZW50ZSBwYXJhIGFzc29jacOhLWxvJyxcbiAgICAgIHNlYXJjaFBsYWNlaG9sZGVyOiAnQnVzY2FyIGNsaWVudGUnLFxuICAgICAgY2xpZW50SW5hY3RpdmU6ICdFc3RlIGNsaWVudGUgZXN0w6EgaW5hdGl2by4gUmVjb21lbmRhbW9zIHJlbW92w6otbG8gZGEgbGlzdGEuJyxcbiAgICAgIGNsaWVudERlbGV0ZWRUb29sdGlwOiAnRXN0ZSBjbGllbnRlIGZvaSBleGNsdcOtZG8uIFJlY29tZW5kYW1vcyByZW1vdsOqLWxvIGRhIGxpc3RhLicsXG4gICAgICBjbGllbnREZWxldGVkOiAnQ2xpZW50ZSBleGNsdcOtZG8nLFxuICAgICAgY2xpZW50c0Vycm9yOiAnVmVyaWZpcXVlIG9zIGNsaWVudGVzIGFzc29jaWFkb3MnLFxuICAgIH0sXG4gICAgcHJvY2Vzc2luZ0tub3dsZWRnZToge1xuICAgICAgZGVzY3JpcHRpb25DcmVhdGU6XG4gICAgICAgICdFc3RhbW9zIGNyaWFuZG8gbyBBZ2VudGUgZSBzdWEgYmFzZSBkZSBjb25oZWNpbWVudG8uIElzc28gcG9kZSBsZXZhciBhbGd1bnMgaW5zdGFudGVzLiBQb3IgZmF2b3IsIG7Do28gZmVjaGUgZXN0YSBqYW5lbGEgYXTDqSBxdWUgbyBwcm9jZXNzbyBzZWphIGNvbmNsdcOtZG8uJyxcbiAgICAgIGRlc2NyaXB0aW9uVXBkYXRlOlxuICAgICAgICAnRXN0YW1vcyBhdHVhbGl6YW5kbyBvIEFnZW50ZSBlIHN1YSBiYXNlIGRlIGNvbmhlY2ltZW50by4gSXNzbyBwb2RlIGxldmFyIGFsZ3VucyBpbnN0YW50ZXMuIFBvciBmYXZvciwgbsOjbyBmZWNoZSBlc3RhIGphbmVsYSBhdMOpIHF1ZSBvIHByb2Nlc3NvIHNlamEgY29uY2x1w61kby4nLFxuICAgICAgZmlsZVJvdzogJ0FycXVpdm8nLFxuICAgICAgc3RhdHVzUm93OiAnU3RhdHVzJyxcbiAgICAgIHBlbmRpbmc6ICdQZW5kZW50ZScsXG4gICAgICBwcm9jZXNzaW5nOiAnUHJvY2Vzc2FuZG8nLFxuICAgICAgZmFpbGVkOiAnRmFsaGEnLFxuICAgICAgZG9uZTogJ0NvbXBsZXRhZG8nLFxuICAgICAgbG9hZGluZ0ZpbGVzOiAnQ2FycmVnYW5kbyBhcnF1aXZvcy4uLicsXG4gICAgICBlcnJvcjoge30sXG4gICAgfSxcbiAgICBkZWxldGVBZ2VudE1vZGFsOiB7XG4gICAgICB0aXRsZTogJ0Rlc2VqYSBleGNsdWlyIGVzdGUgYWdlbnRlPycsXG4gICAgICBmaXJzdFBhcnQ6ICdWb2PDqiBlc3TDoSBwcmVzdGVzIGEgZXhjbHVpciAnLFxuICAgICAgc2Vjb25kUGFydDogJ0VzdGEgYcOnw6NvIG7Do28gcG9kZSBzZXIgZGVzZmVpdGEuJyxcbiAgICAgIGNhbmNlbDogJ0NhbmNlbGFyJyxcbiAgICAgIGRlbGV0ZTogJ0V4Y2x1aXInLFxuICAgIH0sXG4gIH0sXG4gIFtTRUNUSU9OUy5wcm9qZWN0U2VsZWN0b3JdOiB7XG4gICAgLi4uZ2VuZXJpY1NlY3Rpb24sXG4gICAgcHJvamVjdFNlbGVjdG9yOiB7XG4gICAgICB0aXRsZTogJ0VtIHF1YWwgcHJvamV0byB2b2PDqiBnb3N0YXJpYSBkZSBhanVkYT8nLFxuICAgICAgaGVsbG86IHtcbiAgICAgICAgdGl0bGU6ICdTb3UgTUFJQSwgc3VhIGVzcGVjaWFsaXN0YSBlbSBwcm9qZXRvcy4nLFxuICAgICAgICBzdWJ0aXRsZTpcbiAgICAgICAgICAnUGFyYSB0ZSBkYXIgcmVzcG9zdGFzIHByZWNpc2FzLCBwcmVjaXNvIHNhYmVyIHNvYnJlIHF1YWwgcHJvamV0byB2YW1vcyBjb252ZXJzYXIuIFF1YWwgdm9jw6ogZXNjb2xoZT8nLFxuICAgICAgfSxcbiAgICAgIHN1YnRpdGxlOiAnU2VsZWNpb25lIG8gcHJvamV0byBwYXJhIHF1ZSBhIE1BSUEgcmVzcG9uZGEgY29tIGJhc2UgZW0gdW0gY29udGV4dG8uJyxcbiAgICAgIGxhYmVsUHJvamVjdDogJ1NlbGVjaW9uZSB1bSBwcm9qZXRvJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnQnVzcXVlIHVtIHByb2pldG8gcGVsbyBub21lJyxcbiAgICAgIGNoYW5nZVByb2plY3Q6ICdNdWRhciBkZSBwcm9qZXRvJyxcbiAgICAgIHJlY2VudFByb2plY3RzOiAnUmVjZW50ZXMnLFxuICAgICAgc2VhcmNoaW5nUHJvamVjdHM6ICdCdXNjYW5kbyBzZXVzIHByb2pldG9zLi4uJyxcbiAgICAgIGVycm9yTWVzc2FnZTogJ09wcyEgVGl2ZW1vcyB1bSBwcm9ibGVtYSBhbyBjYXJyZWdhciBvcyBwcm9qZXRvcy4gUG9yIGZhdm9yLCB0ZW50ZSBub3ZhbWVudGUgZW0gYWxndW5zIG1pbnV0b3MuJyxcbiAgICAgIGVtcHR5UmVjZW50UHJvamVjdHM6ICdWb2PDqiBuw6NvIHRlbSBwcm9qZXRvcyByZWNlbnRlcy4gRGlnaXRlIG8gbm9tZSBkZSB1bSBwcm9qZXRvIG5hIGJ1c2NhIHBhcmEgZW5jb250csOhLWxvLicsXG4gICAgICBlbXB0eVN0YXRlOiAnT3BzISBOw6NvIGVuY29udHJhbW9zIHByb2pldG9zIGNvbSBlc3NlIG5vbWUuIFRlbnRlIG91dHJhIGJ1c2NhLicsXG4gICAgICB3aXRob3V0Q2xpZW50OiAnU2VtIGNsaWVudGUnLFxuICAgICAgd2l0aG91dFRpdGxlOiAnU2VtIHTDrXR1bG8nLFxuICAgIH0sXG4gIH0sXG59XG4iXSwibWFwcGluZ3MiOiI7OztBQUFBLFNBQVNBLFFBQVEsUUFBUSx3QkFBd0I7QUFDakQsU0FBU0Msd0JBQXdCLFFBQVEsc0NBQXNDO0FBRS9FLElBQU1DLE9BQU8sR0FBRztFQUNkQyxLQUFLLEVBQUUsUUFBUTtFQUNmQyxRQUFRLEVBQUUsZ0JBQWdCO0VBQzFCQyxTQUFTLEVBQUUsTUFBTTtFQUNqQkMsTUFBTSxFQUFFLFVBQVU7RUFDbEJDLFFBQVEsRUFBRSxVQUFVO0VBQ3BCQyxNQUFNLEVBQUUsa0JBQWtCO0VBQzFCQyxJQUFJLEVBQUUsUUFBUTtFQUNkQyxNQUFNLEVBQUUsU0FBUztFQUNqQkMsS0FBSyxFQUFFLE9BQU87RUFDZEMsYUFBYSxFQUFFLG9CQUFvQjtFQUNuQ0MsSUFBSSxFQUFFLFFBQVE7RUFDZEMsTUFBTSxFQUFFO0FBQ1YsQ0FBQztBQUVELElBQU1DLEtBQUssR0FBRztFQUNaQyxLQUFLLEVBQUUscUJBQXFCO0VBQzVCQyxXQUFXLEVBQUUsaUdBQWlHO0VB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
417
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTRUNUSU9OUyIsIlByb2plY3RTdW1tYXJ5Q29uZmlnS2V5cyIsImdsb2JhbHMiLCJjbG9zZSIsImhvd1dvcmtzIiwiYnJhbmROYW1lIiwiZXhwYW5kIiwiY29sbGFwc2UiLCJnb0JhY2siLCJjb3B5IiwiY29waWVkIiwic2F2ZWQiLCJzZWxlY3RQcm9qZWN0Iiwic2F2ZSIsImNhbmNlbCIsImVycm9yIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsInRyeUFnYWluIiwiZ2VuZXJpY1NlY3Rpb24iLCJwcm9qZWN0U3VtbWFyeVNlY3Rpb24iLCJyZXN1bWUiLCJoZWxsbyIsIndlbGNvbWUiLCJmZWVkYmFjayIsInRodW1ic1VwIiwidGh1bWJzRG93biIsInNvdXJjZXMiLCJjb25maWciLCJwcm9qZWN0U3VtbWFyeSIsInByb2plY3RTdW1tYXJ5VGl0bGUiLCJzZWxlY3RlZFByb2plY3QiLCJjb25maWd1cmVSZXN1bWUiLCJnZW5lcmF0aW5nUmVzdW1lIiwiZ2VuZXJhdGVSZXN1bWUiLCJoaWRlQ29uZmlnIiwiY29uZmlndXJlU2V0dGluZ3MiLCJfZGVmaW5lUHJvcGVydHkiLCJHRU5FUkFMX1NUQVRVUyIsIklOQ09NRV9DT1NUUyIsIlRJTUVfSE9VUlMiLCJUQVNLU19QUk9HUkVTUyIsIlJFV09SS1MiLCJob21lTWVudSIsImZhcSIsImVtcHR5IiwiY2F0ZWdvcmllcyIsInByb2plY3RzIiwidGFza3MiLCJob3VycyIsInVuZGVmaW5lZCIsImNyZWF0ZWRCeSIsImNyZWF0ZWRCeVRvb2x0aXAiLCJjcmVhdGVkQnlUb29sdGlwRGVsZXRlZCIsInRpdGxlXzEiLCJ0aXRsZV8yIiwidGl0bGVfMyIsInN1YnRpdGxlIiwidGl0bGVQbSIsInN1YnRpdGxlUG0iLCJub0FnZW50cyIsImRlc2NyaXB0aW9uQ3JlYXRlIiwiY3JlYXRlQWdlbnQiLCJfb2JqZWN0U3ByZWFkIiwiY2hhdEFJIiwiYnV0dG9uIiwibmV3Q2hhdCIsImhpc3RvcnkiLCJ0b29sdGlwIiwiaXRlbSIsImRhdGUiLCJtZW51IiwicmVuYW1lIiwibG9hZGluZ01vcmUiLCJvbmJvYXJkaW5nIiwibWFpYSIsImFnZW50Q3VzdG9tIiwiaG93Q3JlYXRlQWdlbnQiLCJob3dJdFdvcmtzIiwicWEiLCJpdGVtcyIsInJlbnRhYmlsaWRhZF9wcm95ZWN0byIsImF2YW5jZV9wcm95ZWN0byIsInRhcmVhc19wcm95ZWN0byIsImNoYXQiLCJnZW5lcmF0aW5nIiwiZ2VuZXJhdGluZ0F0dGFjaG1lbnQiLCJnZW5lcmF0aW5nRGVlcFNlYXJjaCIsImdlbmVyYXRpbmdXZWJTZWFyY2giLCJ3cml0aW5nIiwiZm9vdGVyIiwicGxhY2Vob2xkZXIiLCJhZ2VudExhYmVsIiwiZGlzY2xhaW1lciIsImVycm9yQWNjZXNzRGVuaWVkIiwiY2hhbmdlUHJvamVjdCIsInNlYXJjaFdlYiIsImRlZXBTZWFyY2giLCJhdHRhY2hGaWxlIiwic2VuZCIsImxpbWl0RmlsZXMiLCJzdG9wIiwiY2FuY2VsbGVkIiwiYXR0YWNobWVudFByZXZpZXdNb2RhbCIsImxvYWRpbmciLCJ1bnN1cHBvcnRlZEZpbGVNZXNzYWdlIiwidHlwZUxhYmVsIiwidW5rbm93biIsInNpemVMYWJlbCIsImV4Y2VsIiwic2hlZXRTZWxlY3RvckxhYmVsIiwibG9hZEVycm9yIiwiZmlsZVJlYWRFcnJvciIsInNoZWV0TG9hZEVycm9yIiwic2xhc2hDb21tYW5kcyIsImZyZXF1ZW50QWN0aW9ucyIsInNlbGVjdFRhc2siLCJzZWFyY2hQbGFjZWhvbGRlciIsIm5vQWN0aXZlVGFza3MiLCJjbGVhclRhc2siLCJkZWxldGVRdWVzdGlvbk1vZGFsIiwiZmlyc3RQYXJ0Iiwic2Vjb25kUGFydCIsImVkaXRRdWVzdGlvbk1vZGFsIiwibmV3TmFtZSIsIm1heExlbmd0aCIsIm1vZGFsRmlsZUV4Y2VlZHMiLCJsaW1pdEZpbGVzVGl0bGUiLCJsaW1pdFNpemVUaXRsZSIsImxpbWl0RmlsZXNEZXNjcmlwdGlvbiIsImxpbWl0U2l6ZURlc2NyaXB0aW9uIiwiYWNjZXB0IiwibGltaXQiLCJzb3VyY2VzSW5mb3JtYXRpb25Nb2RhbCIsImFnZW50cyIsIm5ld0FnZW50IiwiZWRpdCIsImFkZEZhdm9yaXRlIiwicmVtb3ZlRmF2b3JpdGUiLCJmYXZvcml0ZVRvZ2dsZWRBZGRlZFN1Y2Nlc3MiLCJmYXZvcml0ZVRvZ2dsZWRSZW1vdmVkU3VjY2VzcyIsImZhdm9yaXRlVG9nZ2xlZEVycm9yIiwiZmF2b3JpdGVUb2dnbGVkUmVtb3ZlZEVycm9yIiwibWFpYUludHJvZHVjdGlvbiIsImNvbnZlcnNhdGlvbnMiLCJlbXB0eUxhYmVsIiwic25hY2tiYXIiLCJkZWxldGVDaGF0Iiwic3VjY2VzcyIsInJlbmFtZWRDaGF0IiwibG9hZE1vcmVBZ2VudHMiLCJhcHByb3ZhbEJveCIsImFjdGlvbnMiLCJjcmVhdGVfdGFzayIsImNyZWF0ZV90YXNrc19iYXRjaCIsImFwcHJvdmUiLCJkZW55Iiwic3RhdHVzIiwiYXBwcm92ZWQiLCJkZW5pZWQiLCJjaGlwTGxtIiwiY2xpZW50U2VsZWN0b3IiLCJwcm9qZWN0IiwiYWJtQWdlbnQiLCJsZWdlbmREZWxldGVkQWdlbnQiLCJsZWdlbmRQcm9qZWN0RGVsZXRlZCIsImxlZ2VuZE5vQWNjZXNzIiwibGVnZW5kTm9QZXJtaXNzaW9ucyIsImFkZEFnZW50IiwiZWRpdEFnZW50IiwiZGVsZXRlQWdlbnQiLCJzZW5kRmVlZGJhY2siLCJzYXZlQ2hhbmdlcyIsImNyZWF0ZUFnZW50TGFiZWxCdXR0b24iLCJjb25maXJtQWdlbnRDcmVhdGVkIiwiY29uZmlybUFnZW50VXBkYXRlZFdpdGhGaWxlc0Vycm9yIiwiY29uZmlybUFnZW50V2l0aEZpbGVzRXJyb3IiLCJjb25maXJtQWdlbnREZWxldGVkIiwiY29uZmlybUFnZW50VXBkYXRlZCIsImNvbmZpcm1DbG9zZUNyZWF0ZUFnZW50IiwiY29uZmlybUNsb3NlRWRpdEFnZW50IiwiY29uZmlybVJlbG9hZEJyb3dzZXIiLCJlcnJvckFnZW50Q3JlYXRlZCIsImF0dGFjaG1lbnRDYXJkIiwiZG93bmxvYWQiLCJnZW5lcmFsU2VjdGlvbiIsImdlbmVyYWxTZXR0aW5ncyIsInJlcXVpcmVkRmllbGRzTGFiZWwiLCJpbmZvTGFiZWwiLCJiYXNpY1NldHRpbmdzIiwic2VsZWN0RW1vamkiLCJuYW1lIiwibmFtZVBsYWNlaG9sZGVyIiwiYmVoYXZpb3JTZXR0aW5ncyIsImluaXRpYWxQcm9tcHQiLCJpbml0aWFsUHJvbXB0UGxhY2Vob2xkZXIiLCJtb2RlbEFpTGFiZWwiLCJpbnB1dFBsYWNlaG9sZGVyVGl0bGUiLCJpbnB1dFBsYWNlaG9sZGVyIiwiaW50cm9kdWN0aW9uIiwiaW50cm9kdWN0aW9uUGxhY2Vob2xkZXIiLCJtYXhDYXJhY3Rlck5hbWUiLCJtYXhDYXJhY3RlckluaXRpYWxQcm9tcHQiLCJtYXhJbnB1dFBsYWNlaG9sZGVyIiwibWF4Q2FyYWN0ZXJJbnRyb2R1Y3Rpb24iLCJob3dUb1dyaXRlUHJvbXB0Iiwid2hhdElzTW9kZWxBaVRpdGxlIiwid2hhdElzTW9kZWxBaSIsImtub3dsZWRnZVNlY3Rpb24iLCJrbm93bGVkZ2VUYWIiLCJzZWxlY3RGaWxlVGl0bGUiLCJhdHRhY2hGaWxlcyIsImRyb3Bab25lVGV4dCIsImluZm9GaWxlVHlwZXMiLCJtYXhGaWxlc1RpdGxlIiwibWF4RmlsZXNEZXNjcmlwdGlvbiIsIm1heFNpemVUaXRsZSIsIm1heFNpemVEZXNjcmlwdGlvbiIsImludmFsaWRFeHRlbnNpb25EZXNjcmlwdGlvbiIsIm1vcmVJbmZvIiwiYWNjZXNzaWJpbGl0eVNlY3Rpb24iLCJ0aXRsZVRhYiIsInRpdGxlU2VjdGlvbiIsInN1YnRpdGxlU2VjdGlvbiIsIndob0NhbkFjY2VzcyIsImFsbENvbXBhbnlUaXRsZSIsImFsbENvbXBhbnlEZXNjcmlwdGlvbiIsImNsaWVudFRpdGxlIiwiY2xpZW50RGVzY3JpcHRpb24iLCJvd25UaXRsZSIsIm93bkRlc2NyaXB0aW9uIiwiY2xpZW50c1NlbGVjdGVkIiwic2VhcmNoRXJyb3IiLCJzZWFyY2hFbXB0eSIsInNlYXJjaEluaXRpYWwiLCJjbGllbnRJbmFjdGl2ZSIsImNsaWVudERlbGV0ZWRUb29sdGlwIiwiY2xpZW50RGVsZXRlZCIsImNsaWVudHNFcnJvciIsInByb2Nlc3NpbmdLbm93bGVkZ2UiLCJkZXNjcmlwdGlvblVwZGF0ZSIsImZpbGVSb3ciLCJzdGF0dXNSb3ciLCJwZW5kaW5nIiwicHJvY2Vzc2luZyIsImZhaWxlZCIsImRvbmUiLCJsb2FkaW5nRmlsZXMiLCJkZWxldGVBZ2VudE1vZGFsIiwicHJvamVjdFNlbGVjdG9yIiwibGFiZWxQcm9qZWN0IiwicmVjZW50UHJvamVjdHMiLCJzZWFyY2hpbmdQcm9qZWN0cyIsImVycm9yTWVzc2FnZSIsImVtcHR5UmVjZW50UHJvamVjdHMiLCJlbXB0eVN0YXRlIiwid2l0aG91dENsaWVudCIsIndpdGhvdXRUaXRsZSIsImxhYmVsQ2xpZW50IiwiY2hhbmdlQ2xpZW50IiwicmVjZW50Q2xpZW50cyIsInNlYXJjaGluZ0NsaWVudHMiLCJlbXB0eVJlY2VudENsaWVudHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGFuZy9ici9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTRUNUSU9OUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9jb25maWcnXG5pbXBvcnQgeyBQcm9qZWN0U3VtbWFyeUNvbmZpZ0tleXMgfSBmcm9tICcuLi8uLi90eXBlcy9Qcm9qZWN0U3VtbWFyeUNvbmZpZ0tleXMnXG5cbmNvbnN0IGdsb2JhbHMgPSB7XG4gIGNsb3NlOiAnRmVjaGFyJyxcbiAgaG93V29ya3M6ICdDb21vIGZ1bmNpb25hPycsXG4gIGJyYW5kTmFtZTogJ01BSUEnLFxuICBleHBhbmQ6ICdFeHBhbmRpcicsXG4gIGNvbGxhcHNlOiAnUmVjb2xoZXInLFxuICBnb0JhY2s6ICdWb2x0YXIgYW8gaW7DrWNpbycsXG4gIGNvcHk6ICdDb3BpYXInLFxuICBjb3BpZWQ6ICdDb3BpYWRvJyxcbiAgc2F2ZWQ6ICdTYWx2bycsXG4gIHNlbGVjdFByb2plY3Q6ICdTZWxlY2lvbmFyIHByb2pldG8nLFxuICBzYXZlOiAnU2FsdmFyJyxcbiAgY2FuY2VsOiAnQ2FuY2VsYXInLFxufVxuXG5jb25zdCBlcnJvciA9IHtcbiAgdGl0bGU6ICdPY29ycmV1IHVtIHByb2JsZW1hJyxcbiAgZGVzY3JpcHRpb246ICdObyBtb21lbnRvLCBlc3RhbW9zIGVuZnJlbnRhbmRvIGFsZ3VucyBwcm9ibGVtYXMsIHBvciBmYXZvciwgdGVudGUgbm92YW1lbnRlIGVtIGFsZ3VucyBtaW51dG9zLicsXG4gIHRyeUFnYWluOiAnVGVudGFyIG5vdmFtZW50ZScsXG59XG5cbmNvbnN0IGdlbmVyaWNTZWN0aW9uID0ge1xuICBlcnJvcixcbiAgZ2xvYmFscyxcbn1cblxuY29uc3QgcHJvamVjdFN1bW1hcnlTZWN0aW9uID0ge1xuICByZXN1bWU6ICdSZXN1bWlyJyxcbiAgaGVsbG86ICdPbMOhLCB7e25hbWV9fSEnLFxuICB3ZWxjb21lOiAnU291IGEgTUFJQSwgc3VhIGFzc2lzdGVudGUgbmEgQ09SJyxcblxuICBmZWVkYmFjazoge1xuICAgIHRodW1ic1VwOiAnRm9pIMO6dGlsIHBhcmEgbWltJyxcbiAgICB0aHVtYnNEb3duOiAnTsOjbyBmb2kgw7p0aWwgcGFyYSBtaW0nLFxuICAgIHNvdXJjZXM6ICdGdWVudGVzJyxcbiAgfSxcblxuICBjb25maWc6IHtcbiAgICBwcm9qZWN0U3VtbWFyeTogJ1Jlc3VtaXIgcHJvamV0bycsXG4gICAgcHJvamVjdFN1bW1hcnlUaXRsZTogJ1Jlc3VtbyBkZSBwcm9qZXRvcycsXG4gICAgZ29CYWNrOiAnVm9sdGFyIGFvIGluw61jaW8nLFxuICAgIHNlbGVjdGVkUHJvamVjdDogJ1Byb2pldG8gc2VsZWNpb25hZG8nLFxuICAgIHNlbGVjdFByb2plY3Q6ICdTZWxlY2lvbmFyIHByb2pldG8nLFxuICAgIGNvbmZpZ3VyZVJlc3VtZTogJ0NvbmZpZ3VyYcOnw7VlcyBhdmFuw6dhZGFzJyxcbiAgICBnZW5lcmF0aW5nUmVzdW1lOiAnR2VyYW5kbyByZXN1bW8nLFxuICAgIGdlbmVyYXRlUmVzdW1lOiAnR2VyYXInLFxuICAgIGhpZGVDb25maWc6ICdPY3VsdGFyIGNvbmZpZ3VyYcOnw7VlcycsXG4gIH0sXG5cbiAgY29uZmlndXJlU2V0dGluZ3M6IHtcbiAgICBbUHJvamVjdFN1bW1hcnlDb25maWdLZXlzLkdFTkVSQUxfU1RBVFVTXTogJ0RhdGFzIGUgcHJhem9zJyxcbiAgICBbUHJvamVjdFN1bW1hcnlDb25maWdLZXlzLklOQ09NRV9DT1NUU106ICdSZW50YWJpbGlkYWRlJyxcbiAgICBbUHJvamVjdFN1bW1hcnlDb25maWdLZXlzLlRJTUVfSE9VUlNdOiAnRXN0aW1hdGl2YSBkZSBob3JhcyBlIHVzbycsXG4gICAgW1Byb2plY3RTdW1tYXJ5Q29uZmlnS2V5cy5UQVNLU19QUk9HUkVTU106ICdUYXJlZmFzIGUgYXZhbsOnb3MnLFxuICAgIFtQcm9qZWN0U3VtbWFyeUNvbmZpZ0tleXMuUkVXT1JLU106ICdSZXRyYWJhbGhvJyxcbiAgfSxcbn1cblxuY29uc3QgaG9tZU1lbnUgPSB7XG4gIHByb2plY3RTdW1tYXJ5OiB7XG4gICAgdGl0bGU6ICdSZXN1bW8gZG8gcHJvamV0bycsXG4gICAgZGVzY3JpcHRpb246ICdFbGFib3JlIHJlbGF0w7NyaW9zIGNvbSBJQSBjb20gYmFzZSBubyBzZXUgcHJvamV0bycsXG4gIH0sXG4gIGZhcToge1xuICAgIHRpdGxlOiAnUGVyZ3VudGFzIEZyZXF1ZW50ZXMnLFxuICAgIGVtcHR5OiAnTsOjbyBow6EgcGVyZ3VudGFzIGZyZXF1ZW50ZXMnLFxuICAgIGVycm9yOlxuICAgICAgJ09wcyEgVGl2ZW1vcyB1bSBwcm9ibGVtYSBhbyBjYXJyZWdhciBhcyBwZXJndW50YXMgZnJlcXVlbnRlcy4gUG9yIGZhdm9yLCB0ZW50ZSBub3ZhbWVudGUgZW0gYWxndW5zIG1pbnV0b3MuJyxcbiAgICBjYXRlZ29yaWVzOiB7XG4gICAgICBwcm9qZWN0czogJ1Byb2pldG8nLFxuICAgICAgdGFza3M6ICdUYXJlZmFzJyxcbiAgICAgIGhvdXJzOiAnSG9yYXMnLFxuICAgICAgdW5kZWZpbmVkOiAnU2VtIGNhdGVnb3JpYScsXG4gICAgfSxcbiAgfSxcbiAgY3JlYXRlZEJ5OiAncG9yJyxcbiAgY3JlYXRlZEJ5VG9vbHRpcDogJ1VzdcOhcmlvIGNyaWFkb3IgZG8gYWdlbnRlJyxcbiAgY3JlYXRlZEJ5VG9vbHRpcERlbGV0ZWQ6ICdVc3XDoXJpbyBleGNsdcOtZG8uIFNldSBub21lIMOpIG1hbnRpZG8gcGFyYSByZWZlcsOqbmNpYS4nLFxuICBoZWxsbzoge1xuICAgIHRpdGxlOiAnUHJvbnRvISBKw6EgZXN0b3UgdXNhbmRvIG8gcHJvamV0bycsXG4gICAgdGl0bGVfMTogJ0FudGVjaXBlIGRlc3Zpb3MuIFZhbW9zIGFuYWxpc2FyIGVzdGUgcHJvamV0by4nLFxuICAgIHRpdGxlXzI6ICdPIHF1ZSB2b2PDqiBxdWVyIHF1ZSBhbmFsaXNlbW9zPyBIb3JhcywgZXN0aW1hdGl2YXMsIHJldHJhYmFsaG9zPyBWb2PDqiBlc2NvbGhlIScsXG4gICAgdGl0bGVfMzogJ1ZhbW9zIHJldmlzYXIgbyBhbmRhbWVudG8gZGVzdGUgcHJvamV0by4nLFxuICAgIHN1YnRpdGxlOiAnUGFyYSBjb21lw6dhciwgcG9zc28gdGUgYWp1ZGFyIGNvbSBlc3NhcyBvcMOnw7Vlcy4gT3UsIHNlIHByZWZlcmlyLCBlc2NyZXZhIGRpcmV0YW1lbnRlIHN1YSBwZXJndW50YSEnLFxuICAgIHRpdGxlUG06ICdPbMOhLCB7e25hbWV9fSEgU291IHt7YWdlbnR9fSwgc3VhIGFzc2lzdGVudGUnLFxuICAgIHN1YnRpdGxlUG06ICdQYXJhIHRlIGRhciByZXNwb3N0YXMgcHJlY2lzYXMsIHByZWNpc28gc2FiZXIgc29icmUgcXVhbCBwcm9qZXRvIHZhbW9zIGNvbnZlcnNhci4gUXVhbCB2b2PDqiBlc2NvbGhlPycsXG4gIH0sXG4gIG5vQWdlbnRzOiB7XG4gICAgdGl0bGU6ICdBaW5kYSBuw6NvIGjDoSBhZ2VudGVzIGNyaWFkb3MgZW0gc3VhIGVtcHJlc2EnLFxuICAgIGRlc2NyaXB0aW9uQ3JlYXRlOlxuICAgICAgJ0VzdGEgc2XDp8OjbyBzZXLDoSBoYWJpbGl0YWRhIHF1YW5kbyB2b2PDqiBjb25maWd1cmFyIHNldSBwcmltZWlybyBhZ2VudGUuIEluaWNpZSBhIGNvbmZpZ3VyYcOnw6NvIHVzYW5kbyBvIGJvdMOjbyBhYmFpeG8uJyxcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgICdRdWFuZG8gYSBwZXNzb2EgY29tIHBlcm1pc3PDo28gcGFyYSBjcmlhciBvcyBhZ2VudGVzIG9zIGNvbmZpZ3VyYXIsIHZvY8OqIHBvZGVyw6EgYWNlc3PDoS1sb3MgYSBwYXJ0aXIgYXF1aS4nLFxuICAgIGNyZWF0ZUFnZW50OiAnQ3JpYXIgYWdlbnRlJyxcbiAgfSxcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBbU0VDVElPTlMucHJvamVjdFN1bW1hcnldOiB7XG4gICAgLi4uZ2VuZXJpY1NlY3Rpb24sXG4gICAgLi4ucHJvamVjdFN1bW1hcnlTZWN0aW9uLFxuICB9LFxuICBbU0VDVElPTlMuY2hhdEFJXToge1xuICAgIC4uLmdlbmVyaWNTZWN0aW9uLFxuICAgIC4uLnByb2plY3RTdW1tYXJ5U2VjdGlvbixcbiAgICBob21lTWVudSxcblxuICAgIGJ1dHRvbjogJ0lBJyxcbiAgICB0aXRsZTogJ09sw6EsIHt7bmFtZX19IScsXG4gICAgbmV3Q2hhdDogJ05vdm8gY2hhdCcsXG4gICAgZGVzY3JpcHRpb246ICdTb3UgYSBNQUlBLCBzdWEgYXNzaXN0ZW50ZSwgZSBlc3RvdSBhcXVpIHBhcmEgdGUgYWp1ZGFyIGNvbSBhcyBzdWFzIGTDunZpZGFzLicsXG4gICAgaGlzdG9yeToge1xuICAgICAgdG9vbHRpcDogJ0hpc3TDs3JpY28nLFxuICAgICAgdGl0bGU6ICdIaXN0w7NyaWNvIHZhemlvJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnTmVuaHVtYSBjb252ZXJzYSBlbmNvbnRyYWRhJyxcbiAgICAgIGl0ZW06IHtcbiAgICAgICAgZGF0ZTogJ8OabHRpbWEgYXR1YWxpemHDp8OjbyB7e2RhdGV9fScsXG4gICAgICB9LFxuICAgICAgbWVudToge1xuICAgICAgICByZW5hbWU6ICdSZW5vbWVhcicsXG4gICAgICAgIGRlbGV0ZTogJ0V4Y2x1aXInLFxuICAgICAgfSxcbiAgICAgIGxvYWRpbmdNb3JlOiAnQ2FycmVnYW5kbyBtYWlzIGNvbnZlcnNhcycsXG4gICAgfSxcbiAgICBvbmJvYXJkaW5nOiB7XG4gICAgICBtYWlhOiAnTUFJQScsXG4gICAgICBhZ2VudEN1c3RvbTogJ0FnZW50ZXMgY3VzdG9tJyxcbiAgICAgIGhvd0NyZWF0ZUFnZW50OiAnQ29tbyBjcmlhciB1bSBhZ2VudGU/JyxcbiAgICAgIHRvb2x0aXA6ICdDb21vIGZ1bmNpb25hPycsXG4gICAgICBob3dJdFdvcmtzOiAnQ29tbyBmdW5jaW9uYT8nLFxuICAgIH0sXG4gICAgcWE6IHtcbiAgICAgIHRpdGxlOiAnUGVyZ3VudGFzIEZyZXF1ZW50ZXMnLFxuICAgICAgaXRlbXM6IHtcbiAgICAgICAgcmVudGFiaWxpZGFkX3Byb3llY3RvOiAnUXVhbCDDqSBhIHJlbnRhYmlsaWRhZGUgZGVzdGUgcHJvamV0bz8nLFxuICAgICAgICBhdmFuY2VfcHJveWVjdG86ICdRdWFpcyBzw6NvIG9zIGF2YW7Dp29zIGRlc3RlIHByb2pldG8/JyxcbiAgICAgICAgdGFyZWFzX3Byb3llY3RvOiAnUXVhaXMgc8OjbyBhcyBwcsOzeGltYXMgdGFyZWZhcyBhIHZlbmNlcj8nLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGNoYXQ6IHtcbiAgICAgIGdlbmVyYXRpbmc6ICdBbmFsaXNhbmRvIG1lbnNhZ2VtJyxcbiAgICAgIGdlbmVyYXRpbmdBdHRhY2htZW50OiAnQW5hbGlzYW5kbyBhZGp1bnRvJyxcbiAgICAgIGdlbmVyYXRpbmdEZWVwU2VhcmNoOiAnSW5pY2lhbmRvIGEgcGVzcXVpc2EnLFxuICAgICAgZ2VuZXJhdGluZ1dlYlNlYXJjaDogJ1Blc3F1aXNhbmRvIG5hIHdlYicsXG4gICAgICB3cml0aW5nOiAnRXNjcmV2ZW5kbycsXG4gICAgICBsb2FkaW5nTW9yZTogJ0NhcnJlZ2FuZG8gbWFpcyBtZW5zYWdlbnMnLFxuICAgICAgZm9vdGVyOiB7XG4gICAgICAgIHBsYWNlaG9sZGVyOiAnRXNjcmV2YSBzdWEgcGVyZ3VudGEgYXF1aeKApicsXG4gICAgICAgIGFnZW50TGFiZWw6ICdPIEFnZW50ZScsXG4gICAgICAgIGRpc2NsYWltZXI6ICd7e2FnZW50TmFtZX19IHBvZGUgY29tZXRlciBlcnJvcy4gVmVyaWZpcXVlIGFzIGluZm9ybWHDp8O1ZXMgaW1wb3J0YW50ZXMuJyxcbiAgICAgIH0sXG4gICAgICBlcnJvcjogJ09jb3JyZXUgdW0gZXJybyBhbyBnZXJhciBzdWEgcmVzcG9zdGEsIHBvciBmYXZvciwgdGVudGUgbm92YW1lbnRlLicsXG4gICAgICBlcnJvckFjY2Vzc0RlbmllZDpcbiAgICAgICAgJ1ZvY8OqIG7Do28gdGVtIGFjZXNzbyBwYXJhIGludGVyYWdpciBjb20gZXN0ZSBhZ2VudGUuIMOJIHBvc3PDrXZlbCBxdWUgc3VhcyBjb25maWd1cmHDp8O1ZXMgZGUgYWNlc3NpYmlsaWRhZGUgdGVuaGFtIG11ZGFkby4gUG9yIGZhdm9yLCBjb250YXRlIGEgcGVzc29hIG5hIHN1YSBvcmdhbml6YcOnw6NvIHF1ZSBnZXJlbmNpYSBhZ2VudGVzIHBhcmEgb2J0ZXIgbWFpcyBpbmZvcm1hw6fDtWVzLicsXG4gICAgICBjaGFuZ2VQcm9qZWN0OiAnRGV0ZWN0ZWkgcXVlIHZvY8OqIHF1ZXIgbXVkYXIgZGUgUHJvamV0by5cXG5cXG4qKlNlbGVjaW9uZSBvIHByb2pldG8gcGFyYSBjb250aW51YXI6KionLFxuICAgICAgc2VhcmNoV2ViOiAnUGVzcXVpc2FyIG5hIHdlYicsXG4gICAgICBkZWVwU2VhcmNoOiAnQnVzY2EgYXZhbsOnYWRhIG5hIGludGVybmV0IChhY2Vzc28gYSBtYWlzIGZvbnRlcyknLFxuICAgICAgYXR0YWNoRmlsZTogJ0FuZXhhciBhcnF1aXZvJyxcbiAgICAgIHNlbmQ6ICdFbnZpYXInLFxuICAgICAgbGltaXRGaWxlczogJ1ZvY8OqIGV4Y2VkZXUgbyBsaW1pdGUgZGUgYW5leG9zJyxcbiAgICAgIHN0b3A6ICdDYW5jZWxhciBwZXNxdWlzYScsXG4gICAgICBjYW5jZWxsZWQ6ICdBIHBlc3F1aXNhIGZvaSBjYW5jZWxhZGEuJyxcbiAgICAgIGF0dGFjaG1lbnRQcmV2aWV3TW9kYWw6IHtcbiAgICAgICAgbG9hZGluZzogJ0NhcnJlZ2FuZG8uLi4nLFxuICAgICAgICB1bnN1cHBvcnRlZEZpbGVNZXNzYWdlOlxuICAgICAgICAgICdUaXZlbW9zIHVtIHByb2JsZW1hIGFvIGNhcnJlZ2FyIGEgcHLDqS12aXN1YWxpemHDp8Ojby4gUG9yIGZhdm9yLCB0ZW50ZSBub3ZhbWVudGUgZW0gYWxndW5zIG1pbnV0b3MuJyxcbiAgICAgICAgdHlwZUxhYmVsOiAnVGlwbzonLFxuICAgICAgICB1bmtub3duOiAnRGVzY29uaGVjaWRvJyxcbiAgICAgICAgc2l6ZUxhYmVsOiAnVGFtYW5obzonLFxuICAgICAgICBleGNlbDoge1xuICAgICAgICAgIHNoZWV0U2VsZWN0b3JMYWJlbDogJ1BsYW5pbGhhOicsXG4gICAgICAgICAgbG9hZEVycm9yOiAnTsOjbyBmb2kgcG9zc8OtdmVsIGNhcnJlZ2FyIG8gY29udGXDumRvIGRvIGFycXVpdm8gRXhjZWwuJyxcbiAgICAgICAgICBmaWxlUmVhZEVycm9yOiAnRXJybyBhbyBsZXIgbyBhcnF1aXZvLicsXG4gICAgICAgICAgc2hlZXRMb2FkRXJyb3I6ICdFcnJvIGFvIGNhcnJlZ2FyIGEgcGxhbmlsaGEgc2VsZWNpb25hZGEuJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBzbGFzaENvbW1hbmRzOiB7XG4gICAgICAgIGZyZXF1ZW50QWN0aW9uczogJ0HDp8O1ZXMgZnJlcXVlbnRlcycsXG4gICAgICAgIHNlbGVjdFRhc2s6ICdTZWxlY2lvbmUgdW1hIHRhcmVmYScsXG4gICAgICAgIHNlYXJjaFBsYWNlaG9sZGVyOiAnQnVzY2FyLi4uJyxcbiAgICAgICAgbG9hZGluZzogJ0NhcnJlZ2FuZG8uLi4nLFxuICAgICAgICBub0FjdGl2ZVRhc2tzOiAnU2VtIHRhcmVmYXMgYXRpdmFzJyxcbiAgICAgICAgY2xlYXJUYXNrOiAnTGltcGFyIHRhcmVmYSBzZWxlY2lvbmFkYScsXG4gICAgICB9LFxuICAgIH0sXG4gICAgZGVsZXRlUXVlc3Rpb25Nb2RhbDoge1xuICAgICAgdGl0bGU6ICdEZXNlamEgZXhjbHVpciBlc3RhIGNvbnZlcnNhPycsXG4gICAgICBmaXJzdFBhcnQ6ICdWb2PDqiBlc3TDoSBwcmVzdGVzIGEgZXhjbHVpcicsXG4gICAgICBzZWNvbmRQYXJ0OiAnRXN0YSBhw6fDo28gw6kgaXJyZXZlcnPDrXZlbC4nLFxuICAgICAgY2FuY2VsOiAnQ2FuY2VsYXInLFxuICAgICAgZGVsZXRlOiAnRXhjbHVpcicsXG4gICAgfSxcbiAgICBlZGl0UXVlc3Rpb25Nb2RhbDoge1xuICAgICAgbmV3TmFtZTogJ05vdm8gbm9tZScsXG4gICAgICB0aXRsZTogJ1Jlbm9tZWFyIGNvbnZlcnNhJyxcbiAgICAgIHJlbmFtZTogJ1Jlbm9tZWFyJyxcbiAgICAgIGNhbmNlbDogJ0NhbmNlbGFyJyxcbiAgICAgIG1heExlbmd0aDogJ1ZvY8OqIGF0aW5naXUgbyBsaW1pdGUgZGUgMTQwIGNhcmFjdGVyZXMuJyxcbiAgICB9LFxuICAgIG1vZGFsRmlsZUV4Y2VlZHM6IHtcbiAgICAgIGxpbWl0RmlsZXNUaXRsZTogJ03DoXguIEFuZXhvcyBleGNlZGlkb3MuJyxcbiAgICAgIGxpbWl0U2l6ZVRpdGxlOiAnVm9jw6ogZXhjZWRldSBvIGxpbWl0ZSBkZSB0YW1hbmhvIHBlcm1pdGlkbycsXG4gICAgICBsaW1pdEZpbGVzRGVzY3JpcHRpb246XG4gICAgICAgICdWb2PDqiBwb2RlIGFuZXhhciBubyBtw6F4aW1vIDUgYXJxdWl2b3MgcG9yIG1lbnNhZ2VtLiBPcyBzZWd1aW50ZXMgYXJxdWl2b3MgbsOjbyBwdWRlcmFtIHNlciBhbmV4YWRvczonLFxuICAgICAgbGltaXRTaXplRGVzY3JpcHRpb246XG4gICAgICAgICdVbSBvdSBtYWlzIGFycXVpdm9zIGV4Y2VkZW0gbyB0YW1hbmhvIG3DoXhpbW8gcGVybWl0aWRvIHBvciB0aXBvLiBPcyBzZWd1aW50ZXMgYXJxdWl2b3MgbsOjbyBwdWRlcmFtIHNlciBhbmV4YWRvczonLFxuICAgICAgYWNjZXB0OiAnQWNlaXRhcicsXG4gICAgICBsaW1pdDogJ2xpbWl0ZScsXG4gICAgfSxcbiAgICBzb3VyY2VzSW5mb3JtYXRpb25Nb2RhbDoge1xuICAgICAgdGl0bGU6ICdGdWVudGVzOicsXG4gICAgfSxcbiAgICBhZ2VudHM6IHtcbiAgICAgIHRpdGxlOiAnQWdlbnRlcycsXG4gICAgICBuZXdBZ2VudDogJ05vdm8gYWdlbnRlJyxcbiAgICAgIGNyZWF0ZUFnZW50OiAnQ3JpYXIgQWdlbnRlJyxcbiAgICAgIGVkaXQ6ICdFZGl0YXInLFxuICAgICAgbWFpYTogJyhFc3BlY2lhbGlzdGEgZGUgcHJvamV0byknLFxuICAgICAgYWRkRmF2b3JpdGU6ICdBZGljaW9uYXIgYW9zIGZhdm9yaXRvcycsXG4gICAgICByZW1vdmVGYXZvcml0ZTogJ1JlbW92ZXIgZG9zIGZhdm9yaXRvcycsXG4gICAgICBmYXZvcml0ZVRvZ2dsZWRBZGRlZFN1Y2Nlc3M6ICdBZ2VudGUgYWRpY2lvbmFkbyBhb3MgZmF2b3JpdG9zJyxcbiAgICAgIGZhdm9yaXRlVG9nZ2xlZFJlbW92ZWRTdWNjZXNzOiAnQWdlbnRlIHJlbW92aWRvIGRlIGZhdm9yaXRvcycsXG4gICAgICBmYXZvcml0ZVRvZ2dsZWRFcnJvcjogJ07Do28gZm9pIHBvc3PDrXZlbCBzYWx2YXIgc2V1IGZhdm9yaXRvLiBUZW50ZSBub3ZhbWVudGUuJyxcbiAgICAgIGZhdm9yaXRlVG9nZ2xlZFJlbW92ZWRFcnJvcjogJ07Do28gZm9pIHBvc3PDrXZlbCByZW1vdmVyIG8gZmF2b3JpdG8uIFRlbnRlIG5vdmFtZW50ZS4nLFxuICAgICAgbWFpYUludHJvZHVjdGlvbjogJ0JlbS12aW5kbyDDoCBNQUlBLCBzdWEgYXNzaXN0ZW50ZSBwYXJhIG1lbGhvcmFyIG8gc2V1IGRpYSBhIGRpYS4nLFxuICAgIH0sXG4gICAgY29udmVyc2F0aW9uczoge1xuICAgICAgdGl0bGU6ICdNaW5oYXMgY29udmVyc2FzJyxcbiAgICAgIGVycm9yOiAnT2NvcnJldSB1bSBlcnJvIGFvIGNhcnJlZ2FyIG8gaGlzdMOzcmljbyBkZSBjb252ZXJzYXMnLFxuICAgICAgZW1wdHk6ICdUb2RhcyBhcyBzdWFzIGNvbnZlcnNhcyBjb20gb3MgYWdlbnRlcyBzZXLDo28gZXhpYmlkYXMgYXF1aScsXG4gICAgICBlbXB0eUxhYmVsOiAnTWVuc2FnZW0gY29tIGFuZXhvcycsXG4gICAgICBjb2xsYXBzZTogJ1JlY29saGVyJyxcbiAgICAgIGV4cGFuZDogJ0V4cGFuZGlyJyxcbiAgICAgIG5ld0NoYXQ6ICdOb3ZvIGNoYXQnLFxuICAgIH0sXG4gICAgc25hY2tiYXI6IHtcbiAgICAgIGRlbGV0ZUNoYXQ6IHtcbiAgICAgICAgc3VjY2VzczogJ1N1YSBjb252ZXJzYSBmb2kgZXhjbHXDrWRhIGNvbSBzdWNlc3NvLicsXG4gICAgICAgIGVycm9yOiAnT2NvcnJldSB1bSBlcnJvIGluZXNwZXJhZG8uIFBvciBmYXZvciB0ZW50ZSBub3ZhbWVudGUuJyxcbiAgICAgIH0sXG4gICAgICByZW5hbWVkQ2hhdDoge1xuICAgICAgICBzdWNjZXNzOiAnQ29udmVyc2EgcmVub21lYWRhIGNvbSBzdWNlc3NvJyxcbiAgICAgICAgZXJyb3I6ICdPY29ycmV1IHVtIGVycm8gaW5lc3BlcmFkby4gUG9yIGZhdm9yIHRlbnRlIG5vdmFtZW50ZS4nLFxuICAgICAgfSxcbiAgICAgIGxvYWRNb3JlQWdlbnRzOiB7XG4gICAgICAgIGVycm9yOiAnT2NvcnJldSB1bSBlcnJvIGluZXNwZXJhZG8uIFBvciBmYXZvciB0ZW50ZSBub3ZhbWVudGUuJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBhcHByb3ZhbEJveDoge1xuICAgICAgYWN0aW9uczoge1xuICAgICAgICBjcmVhdGVfdGFzazogJ0NyaWHDp8OjbyBkZSB0YXJlZmEnLFxuICAgICAgICBjcmVhdGVfdGFza3NfYmF0Y2g6ICdDcmlhw6fDo28gZGUgdGFyZWZhcycsXG4gICAgICAgIHVua25vd246ICdBw6fDo28gZGVzY29uaGVjaWRhJyxcbiAgICAgIH0sXG4gICAgICB0aXRsZTogJ0NvbmZpcm1hw6fDo28gcmVxdWVyaWRhJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnVm9jw6ogcHJlY2lzYSBhcHJvdmFyIGEgc2VndWludGUgYcOnw6NvOicsXG4gICAgICBhcHByb3ZlOiAnQXByb3ZhcicsXG4gICAgICBkZW55OiAnTmVnYXInLFxuICAgICAgc3RhdHVzOiB7XG4gICAgICAgIGFwcHJvdmVkOiAnU29saWNpdGHDp8OjbyBBcHJvdmFkYScsXG4gICAgICAgIGRlbmllZDogJ1NvbGljaXRhw6fDo28gTmVnYWRhJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBjaGlwTGxtOiB7XG4gICAgICB0b29sdGlwOiAnRXN0ZSBhZ2VudGUgdXRpbGl6YSBvIG1vZGVsbzoge3ttb2RlbH19JyxcbiAgICB9LFxuICAgIGNsaWVudFNlbGVjdG9yOiB7XG4gICAgICBwcm9qZWN0OiAncHJvamV0bycsXG4gICAgICBwcm9qZWN0czogJ3Byb2pldG9zJyxcbiAgICB9LFxuICB9LFxuICBbU0VDVElPTlMuYWJtQWdlbnRdOiB7XG4gICAgLi4uZ2VuZXJpY1NlY3Rpb24sXG4gICAgbGVnZW5kRGVsZXRlZEFnZW50OiAnRXN0ZSBhZ2VudGUgZm9pIGV4Y2x1w61kbyBubyBkaWEnLFxuICAgIGxlZ2VuZFByb2plY3REZWxldGVkOiAnTyBwcm9qZXRvIHt7bmFtZX19IGZvaSBleGNsdcOtZG8uIE7Do28gw6kgcG9zc8OtdmVsIGNvbnRpbnVhciBhIGNvbnZlcnNhJyxcbiAgICBsZWdlbmROb0FjY2VzczogJ1ZvY8OqIG7Do28gdGVtIG1haXMgYWNlc3NvIHBhcmEgaW50ZXJhZ2lyIGNvbSBvIGFnZW50ZSB7e25hbWV9fScsXG4gICAgbGVnZW5kTm9QZXJtaXNzaW9uczogJ1ZvY8OqIG7Do28gdGVtIG1haXMgcGVybWlzc8OjbyBwYXJhIHZpc3VhbGl6YXIgb3UgaW50ZXJhZ2lyIGNvbSBvIGFnZW50ZSB7e25hbWV9fScsXG4gICAgYWdlbnRzOiAnQWdlbnRlcycsXG4gICAgYWRkQWdlbnQ6ICdBZGljaW9uYXIgbm92byBhZ2VudGUnLFxuICAgIG5ld0FnZW50OiAnTm92byBhZ2VudGUnLFxuICAgIGNyZWF0ZUFnZW50OiAnQ3JpYXIgQWdlbnRlJyxcbiAgICBlZGl0QWdlbnQ6ICdFZGl0YXIgYWdlbnRlJyxcbiAgICBjYW5jZWw6ICdDYW5jZWxhcicsXG4gICAgYWNjZXB0OiAnQWNlaXRhcicsXG4gICAgZGVsZXRlQWdlbnQ6ICdFeGNsdWlyIGFnZW50ZScsXG4gICAgY29udGludWU6ICdDb250aW51YXInLFxuICAgIGVkaXQ6ICdFZGl0YXInLFxuICAgIGZlZWRiYWNrOiAnRW52aWFyIEZlZWRiYWNrJyxcbiAgICBzZW5kRmVlZGJhY2s6ICdFbnZpYXIgZmVlZGJhY2snLFxuICAgIHNhdmVDaGFuZ2VzOiAnU2FsdmFyIGFsdGVyYcOnw7VlcycsXG4gICAgY3JlYXRlQWdlbnRMYWJlbEJ1dHRvbjogJ0NyaWFyIGFnZW50ZScsXG4gICAgY29uZmlybUFnZW50Q3JlYXRlZDogJ08gYWdlbnRlIGZvaSBjcmlhZG8gY29tIHN1Y2Vzc28nLFxuICAgIGNvbmZpcm1BZ2VudFVwZGF0ZWRXaXRoRmlsZXNFcnJvcjpcbiAgICAgICdPIGFnZW50ZSBmb2kgZWRpdGFkbyBjb20gc3VjZXNzbywgbWFzIGFsZ3VucyBhcnF1aXZvcyBuw6NvIHB1ZGVyYW0gc2VyIHByb2Nlc3NhZG9zLicsXG4gICAgY29uZmlybUFnZW50V2l0aEZpbGVzRXJyb3I6ICdPIGFnZW50ZSBmb2kgY3JpYWRvIGNvbSBzdWNlc3NvLCBtYXMgYWxndW5zIGFycXVpdm9zIG7Do28gcHVkZXJhbSBzZXIgcHJvY2Vzc2Fkb3MuJyxcbiAgICBjb25maXJtQWdlbnREZWxldGVkOiAnTyBhZ2VudGUgZm9pIGV4Y2x1w61kbyBjb20gc3VjZXNzbycsXG4gICAgY29uZmlybUFnZW50VXBkYXRlZDogJ08gYWdlbnRlIGZvaSBhdHVhbGl6YWRvIGNvbSBzdWNlc3NvJyxcbiAgICBjb25maXJtQ2xvc2VDcmVhdGVBZ2VudDogJ1RlbSBjZXJ0ZXphIHF1ZSBkZXNlamEgZmVjaGFyPyBBcyBhbHRlcmHDp8O1ZXMgc2Vyw6NvIHBlcmRpZGFzLicsXG4gICAgY29uZmlybUNsb3NlRWRpdEFnZW50OiAnVGVtIGNlcnRlemEgcXVlIGRlc2VqYSBmZWNoYXI/IEFzIGFsdGVyYcOnw7VlcyBzZXLDo28gcGVyZGlkYXMuJyxcbiAgICBjb25maXJtUmVsb2FkQnJvd3NlcjogJ1RlbSBjZXJ0ZXphIHF1ZSBkZXNlamEgcmVjYXJyZWdhciBhIHDDoWdpbmE/IEFzIGFsdGVyYcOnw7VlcyBzZXLDo28gcGVyZGlkYXMuJyxcbiAgICBlcnJvckFjY2Vzc0RlbmllZDogJ1ZvY8OqIG7Do28gdGVtIHBlcm1pc3PDo28gcGFyYSBhY2Vzc2FyIGVzdGUgYWdlbnRlLiBDb250YXRlIG8gc3Vwb3J0ZS4nLFxuICAgIGVycm9yQWdlbnRDcmVhdGVkOiAnT2NvcnJldSB1bSBlcnJvIGluZXNwZXJhZG8uIFBvciBmYXZvciB0ZW50ZSBub3ZhbWVudGUuJyxcbiAgICBhdHRhY2htZW50Q2FyZDoge1xuICAgICAgZG93bmxvYWQ6ICdEZXNjYXJyZWdhcicsXG4gICAgICBkZWxldGU6ICdFeGNsdWlyJyxcbiAgICB9LFxuICAgIGdlbmVyYWxTZWN0aW9uOiB7XG4gICAgICB0aXRsZTogJ0dlcmFsJyxcbiAgICAgIGdlbmVyYWxTZXR0aW5nczogJ0NvbmZpZ3VyYcOnw6NvIGdlcmFsJyxcbiAgICAgIHJlcXVpcmVkRmllbGRzTGFiZWw6ICcqb2JyaWdhdMOzcmlvcycsXG4gICAgICBpbmZvTGFiZWw6ICdBZGljaW9uZSB0b2RhcyBhcyBpbmZvcm1hw6fDtWVzIHBhcmEgcGVyc29uYWxpemFyIG8gY29tcG9ydGFtZW50byBkbyBzZXUgYWdlbnRlLicsXG4gICAgICBiYXNpY1NldHRpbmdzOiAnQ29uZmlndXJhw6fDo28gYsOhc2ljYScsXG4gICAgICBzZWxlY3RFbW9qaTogJ1NlbGVjaW9uYXIgZW1vamknLFxuICAgICAgbmFtZTogJ1F1YWwgw6kgbyBub21lIGRvIHNldSBhZ2VudGU/JyxcbiAgICAgIG5hbWVQbGFjZWhvbGRlcjogJ0TDqiB1bSBub21lIGFvIHNldSBhZ2VudGUnLFxuICAgICAgYmVoYXZpb3JTZXR0aW5nczogJ0NvbmZpZ3VyYcOnw6NvIGRlIGNvbXBvcnRhbWVudG8nLFxuICAgICAgaW5pdGlhbFByb21wdDogJ1F1YWlzIHPDo28gYXMgaW5zdHJ1w6fDtWVzPycsXG4gICAgICBpbml0aWFsUHJvbXB0UGxhY2Vob2xkZXI6XG4gICAgICAgICdFeGVtcGxvOiBWb2PDqiDDqSB1bSByZWRhdG9yIGRlIG3DrWRpYXMgc29jaWFpcyBxdWUgZXNjcmV2ZSBlIGFkYXB0YSBtZW5zYWdlbnMgcGFyYSBkaWZlcmVudGVzIHJlZGVzLCBnYXJhbnRpbmRvIGNvbnNpc3TDqm5jaWEgbm8gdG9tLCBuYSBwZXJzb25hbGlkYWRlIGUgbm9zIHZhbG9yZXMgZGEgbWFyY2EuJyxcbiAgICAgIG1vZGVsQWlMYWJlbDogJ01vZGVsbyBkZSBJQScsXG4gICAgICBpbnB1dFBsYWNlaG9sZGVyVGl0bGU6ICdPIHF1ZSBvIHVzdcOhcmlvIHZlcsOhIG5vIGNhbXBvIGRlIGNoYXQgYW50ZXMgZGUgZXNjcmV2ZXI/JyxcbiAgICAgIGlucHV0UGxhY2Vob2xkZXI6ICdQZXJndW50ZSBvIHF1ZSBwcmVjaXNhcuKApicsXG4gICAgICBpbnRyb2R1Y3Rpb246ICdDb21vIG8gc2V1IGFnZW50ZSB2YWkgc2UgYXByZXNlbnRhcj8nLFxuICAgICAgaW50cm9kdWN0aW9uUGxhY2Vob2xkZXI6XG4gICAgICAgICdFeGVtcGxvOiBPbMOhISDwn5GLIFZvdSB0ZSBhanVkYXIgYSBjcmlhciwgYWRhcHRhciBlIHJldmlzYXIgdGV4dG9zIHBhcmEgZGlmZXJlbnRlcyBwbGF0YWZvcm1hcywgZ2FyYW50aW5kbyBxdWUgbWFudGVuaGFtIGEgdm96LCBvIHRvbSBlIGEgcGVyc29uYWxpZGFkZSBkYSBzdWEgbWFyY2EuIFZvY8OqIHBvZGUgbWUgcGVkaXIgaWRlaWFzIHBhcmEgY2FtcGFuaGFzLCBhZGFwdGFyIHVtIHRleHRvIHBhcmEgb3V0cm8gY2FuYWwgb3UgcmV2aXNhciBhIGNvZXLDqm5jaWEgZGEgbWVuc2FnZW0uJyxcbiAgICAgIGFkZEZhdm9yaXRlOiAnQWRpY2lvbmFyIGFvcyBmYXZvcml0b3MnLFxuICAgICAgcmVtb3ZlRmF2b3JpdGU6ICdSZW1vdmVyIGRvcyBmYXZvcml0b3MnLFxuICAgICAgZXJyb3I6IHtcbiAgICAgICAgbWF4Q2FyYWN0ZXJOYW1lOiAnVm9jw6ogYXRpbmdpdSBvIGxpbWl0ZSBkZSAxNTAgY2FyYWN0ZXJlcy4nLFxuICAgICAgICBtYXhDYXJhY3RlckluaXRpYWxQcm9tcHQ6ICdWb2PDqiBhdGluZ2l1IG8gbGltaXRlIGRlIDUwMDAgY2FyYWN0ZXJlcy4nLFxuICAgICAgICBtYXhJbnB1dFBsYWNlaG9sZGVyOiAnVm9jw6ogYXRpbmdpdSBvIGxpbWl0ZSBkZSAxMDAgY2FyYWN0ZXJlcy4nLFxuICAgICAgICBtYXhDYXJhY3RlckludHJvZHVjdGlvbjogJ1ZvY8OqIGF0aW5naXUgbyBsaW1pdGUgZGUgNDAwIGNhcmFjdGVyZXMuJyxcbiAgICAgIH0sXG4gICAgICBob3dUb1dyaXRlUHJvbXB0OiAnQ29tbyBlc2NyZXZlciB1bSBwcm9tcHQnLFxuICAgICAgd2hhdElzTW9kZWxBaVRpdGxlOiAnUXVhbCBtb2RlbG8gZGUgSUEgdm9jw6ogdmFpIHVzYXI/JyxcbiAgICAgIHdoYXRJc01vZGVsQWk6ICdPIHF1ZSDDqSB1bSBtb2RlbG8gZGUgSUE/JyxcbiAgICAgIGNyZWF0ZWRCeTogJ1BvcicsXG4gICAgICBjcmVhdGVkQnlUb29sdGlwOiAnVXN1w6FyaW8gY3JpYWRvciBkbyBhZ2VudGUnLFxuICAgICAgY3JlYXRlZEJ5VG9vbHRpcERlbGV0ZWQ6ICdVc3XDoXJpbyBleGNsdcOtZG8uIFNldSBub21lIMOpIG1hbnRpZG8gcGFyYSByZWZlcsOqbmNpYS4nLFxuICAgIH0sXG4gICAga25vd2xlZGdlU2VjdGlvbjoge1xuICAgICAgdGl0bGU6ICdDb25oZWNpbWVudG8nLFxuICAgICAga25vd2xlZGdlVGFiOiAnQmFzZSBkZSBjb25oZWNpbWVudG9zJyxcbiAgICAgIGluZm9MYWJlbDogJ0NhcnJlZ3VlIG9zIGFycXVpdm9zIHF1ZSBzZXUgYWdlbnRlIHVzYXLDoSBjb21vIGZvbnRlIHBhcmEgc3VhcyByZXNwb3N0YXMuJyxcbiAgICAgIHNlbGVjdEZpbGVUaXRsZTogJ1NFTEVDSU9OQVIgQVJRVUlWT1MnLFxuICAgICAgYXR0YWNoRmlsZXM6ICdBbmV4YXIgYXJxdWl2b3MnLFxuICAgICAgZHJvcFpvbmVUZXh0OiB7XG4gICAgICAgIDE6ICdDbGlxdWUgYXF1aSBwYXJhIGNhcnJlZ2FyJyxcbiAgICAgICAgMjogJ291IGFycmFzdGUgb3MgYXJxdWl2b3MnLFxuICAgICAgfSxcbiAgICAgIGluZm9GaWxlVHlwZXM6ICcubWQsIC5wZGYsIC5kb2MsIC5kb2N4LCAudHh0LCAuY3N2LCAucG5nLCAuanBnLCAuanBlZywgLnhscywgLnhsc3ggIChtw6F4LiB0b3RhbCBkZSA1TUIpJyxcbiAgICAgIGVycm9yOiB7XG4gICAgICAgIG1heEZpbGVzVGl0bGU6ICdMaW1pdGUgZGUgdGFtYW5obyB0b3RhbCBleGNlZGlkby4nLFxuICAgICAgICBtYXhGaWxlc0Rlc2NyaXB0aW9uOlxuICAgICAgICAgICdWb2PDqiBwb2RlIGFuZXhhciBhcnF1aXZvcyBhdMOpIHVtIHRvdGFsIGRlIDUgTUIuIE9zIHNlZ3VpbnRlcyBhcnF1aXZvcyBuw6NvIHB1ZGVyYW0gc2VyIGFuZXhhZG9zOicsXG4gICAgICAgIG1heFNpemVUaXRsZTogJ1ZvY8OqIGV4Y2VkZXUgbyBsaW1pdGUgZGUgdGFtYW5obyBwZXJtaXRpZG8nLFxuICAgICAgICBtYXhTaXplRGVzY3JpcHRpb246IHtcbiAgICAgICAgICAxOiAnTyBsaW1pdGUgbcOheGltbyBkZSA1IE1CIGZvaSBhdGluZ2lkby4nLFxuICAgICAgICAgIDI6ICdFc3NlcyBhcnF1aXZvcyBuw6NvIGZvcmFtIGNhcnJlZ2Fkb3MgcG9ycXVlIGV4Y2VkZW0gbyBlc3Bhw6dvIGRpc3BvbsOtdmVsOicsXG4gICAgICAgIH0sXG4gICAgICAgIGludmFsaWRFeHRlbnNpb25EZXNjcmlwdGlvbjoge1xuICAgICAgICAgIDE6ICdTb21lbnRlIGFycXVpdm9zIGNvbSBhcyBzZWd1aW50ZXMgZXh0ZW5zw7VlcyBzw6NvIGFjZWl0b3M6IC5tZCwgLnBkZiwgLmRvYywgLmRvY3gsIC50eHQsIC5jc3YsIC5wbmcsIC5qcGcsIC5qcGVnLCAueGxzLCAueGxzeCcsXG4gICAgICAgICAgMjogJ0VzdGVzIGFycXVpdm9zIG7Do28gZm9yYW0gY2FycmVnYWRvcyBwb3JxdWUgc3VhIGV4dGVuc8OjbyBuw6NvIMOpIHBlcm1pdGlkYTonLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIG1vcmVJbmZvOiAnVmVqYSBjb21vIGZ1bmNpb25hIGFxdWknLFxuICAgIH0sXG4gICAgYWNjZXNzaWJpbGl0eVNlY3Rpb246IHtcbiAgICAgIHRpdGxlVGFiOiAnQWNlc3NpYmlsaWRhZGUnLFxuICAgICAgdGl0bGVTZWN0aW9uOiAnQWNlc3NpYmlsaWRhZGUgZG8gYWdlbnRlJyxcbiAgICAgIHN1YnRpdGxlU2VjdGlvbjogJ0VzY29saGEgcXVlbSBwb2RlIHZlciBlIHVzYXIgZXN0ZSBhZ2VudGUgbmEgc3VhIG9yZ2FuaXphw6fDo28uJyxcbiAgICAgIHdob0NhbkFjY2VzczogJ1F1ZW0gcG9kZSB1c2FyIGVzdGUgYWdlbnRlPycsXG4gICAgICBhbGxDb21wYW55VGl0bGU6ICdQYXJhIHRvZGEgYSBlbXByZXNhJyxcbiAgICAgIGFsbENvbXBhbnlEZXNjcmlwdGlvbjogJ1RvZG9zIGxvcyB1c3VhcmlvcyBkZSB0dSBvcmdhbml6YWNpw7NuIHBvZHLDoW4gdmVyIHkgdXNhciBlc3RlIGFnZW50ZS4nLFxuICAgICAgY2xpZW50VGl0bGU6ICdQYXJhIGNsaWVudGVzIGVzcGVjw61maWNvcycsXG4gICAgICBjbGllbnREZXNjcmlwdGlvbjpcbiAgICAgICAgJ0Fzb2NpYSBlc3RlIGFnZW50ZSBhIHVubyBvIG3DoXMgY2xpZW50ZXMuIFRvZG9zIGxvcyB1c3VhcmlvcyBwb2Ryw6FuIHZlciBjb24gcXXDqSBjbGllbnRlcyBlc3TDoSB2aW5jdWxhZG8uJyxcbiAgICAgIG93blRpdGxlOiAnQXBlbmFzIHBhcmEgbWltJyxcbiAgICAgIG93bkRlc2NyaXB0aW9uOiAnTyBhZ2VudGUgc2Vyw6EgcHJpdmFkbyBlIGFwZW5hcyB2b2PDqiBwb2RlcsOhIHbDqi1sbyBlIHVzw6EtbG8uJyxcbiAgICAgIGNsaWVudHNTZWxlY3RlZDogJ0NsaWVudGVzIHNlbGVjaW9uYWRvczonLFxuICAgICAgc2VhcmNoRXJyb3I6ICdPcHMhIFRpdmVtb3MgdW0gcHJvYmxlbWEgYW8gY2FycmVnYXIgb3MgY2xpZW50ZXMuIFBvZGUgdGVudGFyIG5vdmFtZW50ZSBlbSBpbnN0YW50ZXM/JyxcbiAgICAgIHNlYXJjaEVtcHR5OiAnT3BzISBOw6NvIGVuY29udHJhbW9zIGNsaWVudGVzIGNvbSBlc3NlIG5vbWUuIFRlbnRlIG91dHJhIGJ1c2NhLicsXG4gICAgICBzZWFyY2hJbml0aWFsOiAnQ29tZWNlIGEgZGlnaXRhciBvIG5vbWUgZGUgdW0gY2xpZW50ZSBwYXJhIGFzc29jacOhLWxvJyxcbiAgICAgIHNlYXJjaFBsYWNlaG9sZGVyOiAnQnVzY2FyIGNsaWVudGUnLFxuICAgICAgY2xpZW50SW5hY3RpdmU6ICdFc3RlIGNsaWVudGUgZXN0w6EgaW5hdGl2by4gUmVjb21lbmRhbW9zIHJlbW92w6otbG8gZGEgbGlzdGEuJyxcbiAgICAgIGNsaWVudERlbGV0ZWRUb29sdGlwOiAnRXN0ZSBjbGllbnRlIGZvaSBleGNsdcOtZG8uIFJlY29tZW5kYW1vcyByZW1vdsOqLWxvIGRhIGxpc3RhLicsXG4gICAgICBjbGllbnREZWxldGVkOiAnQ2xpZW50ZSBleGNsdcOtZG8nLFxuICAgICAgY2xpZW50c0Vycm9yOiAnVmVyaWZpcXVlIG9zIGNsaWVudGVzIGFzc29jaWFkb3MnLFxuICAgIH0sXG4gICAgcHJvY2Vzc2luZ0tub3dsZWRnZToge1xuICAgICAgZGVzY3JpcHRpb25DcmVhdGU6XG4gICAgICAgICdFc3RhbW9zIGNyaWFuZG8gbyBBZ2VudGUgZSBzdWEgYmFzZSBkZSBjb25oZWNpbWVudG8uIElzc28gcG9kZSBsZXZhciBhbGd1bnMgaW5zdGFudGVzLiBQb3IgZmF2b3IsIG7Do28gZmVjaGUgZXN0YSBqYW5lbGEgYXTDqSBxdWUgbyBwcm9jZXNzbyBzZWphIGNvbmNsdcOtZG8uJyxcbiAgICAgIGRlc2NyaXB0aW9uVXBkYXRlOlxuICAgICAgICAnRXN0YW1vcyBhdHVhbGl6YW5kbyBvIEFnZW50ZSBlIHN1YSBiYXNlIGRlIGNvbmhlY2ltZW50by4gSXNzbyBwb2RlIGxldmFyIGFsZ3VucyBpbnN0YW50ZXMuIFBvciBmYXZvciwgbsOjbyBmZWNoZSBlc3RhIGphbmVsYSBhdMOpIHF1ZSBvIHByb2Nlc3NvIHNlamEgY29uY2x1w61kby4nLFxuICAgICAgZmlsZVJvdzogJ0FycXVpdm8nLFxuICAgICAgc3RhdHVzUm93OiAnU3RhdHVzJyxcbiAgICAgIHBlbmRpbmc6ICdQZW5kZW50ZScsXG4gICAgICBwcm9jZXNzaW5nOiAnUHJvY2Vzc2FuZG8nLFxuICAgICAgZmFpbGVkOiAnRmFsaGEnLFxuICAgICAgZG9uZTogJ0NvbXBsZXRhZG8nLFxuICAgICAgbG9hZGluZ0ZpbGVzOiAnQ2FycmVnYW5kbyBhcnF1aXZvcy4uLicsXG4gICAgICBlcnJvcjoge30sXG4gICAgfSxcbiAgICBkZWxldGVBZ2VudE1vZGFsOiB7XG4gICAgICB0aXRsZTogJ0Rlc2VqYSBleGNsdWlyIGVzdGUgYWdlbnRlPycsXG4gICAgICBmaXJzdFBhcnQ6ICdWb2PDqiBlc3TDoSBwcmVzdGVzIGEgZXhjbHVpciAnLFxuICAgICAgc2Vjb25kUGFydDogJ0VzdGEgYcOnw6NvIG7Do28gcG9kZSBzZXIgZGVzZmVpdGEuJyxcbiAgICAgIGNhbmNlbDogJ0NhbmNlbGFyJyxcbiAgICAgIGRlbGV0ZTogJ0V4Y2x1aXInLFxuICAgIH0sXG4gIH0sXG4gIFtTRUNUSU9OUy5wcm9qZWN0U2VsZWN0b3JdOiB7XG4gICAgLi4uZ2VuZXJpY1NlY3Rpb24sXG4gICAgcHJvamVjdFNlbGVjdG9yOiB7XG4gICAgICB0aXRsZTogJ0VtIHF1YWwgcHJvamV0byB2b2PDqiBnb3N0YXJpYSBkZSBhanVkYT8nLFxuICAgICAgaGVsbG86IHtcbiAgICAgICAgdGl0bGU6ICdTb3UgTUFJQSwgc3VhIGVzcGVjaWFsaXN0YSBlbSBwcm9qZXRvcy4nLFxuICAgICAgICBzdWJ0aXRsZTpcbiAgICAgICAgICAnUGFyYSB0ZSBkYXIgcmVzcG9zdGFzIHByZWNpc2FzLCBwcmVjaXNvIHNhYmVyIHNvYnJlIHF1YWwgcHJvamV0byB2YW1vcyBjb252ZXJzYXIuIFF1YWwgdm9jw6ogZXNjb2xoZT8nLFxuICAgICAgfSxcbiAgICAgIHN1YnRpdGxlOiAnU2VsZWNpb25lIG8gcHJvamV0byBwYXJhIHF1ZSBhIE1BSUEgcmVzcG9uZGEgY29tIGJhc2UgZW0gdW0gY29udGV4dG8uJyxcbiAgICAgIGxhYmVsUHJvamVjdDogJ1NlbGVjaW9uZSB1bSBwcm9qZXRvJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnQnVzcXVlIHVtIHByb2pldG8gcGVsbyBub21lJyxcbiAgICAgIGNoYW5nZVByb2plY3Q6ICdNdWRhciBkZSBwcm9qZXRvJyxcbiAgICAgIHJlY2VudFByb2plY3RzOiAnUmVjZW50ZXMnLFxuICAgICAgc2VhcmNoaW5nUHJvamVjdHM6ICdCdXNjYW5kbyBzZXVzIHByb2pldG9zLi4uJyxcbiAgICAgIGVycm9yTWVzc2FnZTogJ09wcyEgVGl2ZW1vcyB1bSBwcm9ibGVtYSBhbyBjYXJyZWdhciBvcyBwcm9qZXRvcy4gUG9yIGZhdm9yLCB0ZW50ZSBub3ZhbWVudGUgZW0gYWxndW5zIG1pbnV0b3MuJyxcbiAgICAgIGVtcHR5UmVjZW50UHJvamVjdHM6ICdWb2PDqiBuw6NvIHRlbSBwcm9qZXRvcyByZWNlbnRlcy4gRGlnaXRlIG8gbm9tZSBkZSB1bSBwcm9qZXRvIG5hIGJ1c2NhIHBhcmEgZW5jb250csOhLWxvLicsXG4gICAgICBlbXB0eVN0YXRlOiAnT3BzISBOw6NvIGVuY29udHJhbW9zIHByb2pldG9zIGNvbSBlc3NlIG5vbWUuIFRlbnRlIG91dHJhIGJ1c2NhLicsXG4gICAgICB3aXRob3V0Q2xpZW50OiAnU2VtIGNsaWVudGUnLFxuICAgICAgd2l0aG91dFRpdGxlOiAnU2VtIHTDrXR1bG8nLFxuICAgIH0sXG4gIH0sXG4gIFtTRUNUSU9OUy5jbGllbnRTZWxlY3Rvcl06IHtcbiAgICAuLi5nZW5lcmljU2VjdGlvbixcbiAgICBjbGllbnRTZWxlY3Rvcjoge1xuICAgICAgdGl0bGU6ICdFbSBxdWFsIGNsaWVudGUgdm9jw6ogZ29zdGFyaWEgZGUgYWp1ZGE/JyxcbiAgICAgIGhlbGxvOiB7XG4gICAgICAgIHRpdGxlOiAnU291IE1BSUEsIHN1YSBlc3BlY2lhbGlzdGEgZW0gY2xpZW50ZXMuJyxcbiAgICAgICAgc3VidGl0bGU6XG4gICAgICAgICAgJ1BhcmEgdGUgZGFyIHJlc3Bvc3RhcyBwcmVjaXNhcywgcHJlY2lzbyBzYWJlciBzb2JyZSBxdWFsIGNsaWVudGUgdmFtb3MgY29udmVyc2FyLiBRdWFsIHZvY8OqIGVzY29saGU/JyxcbiAgICAgIH0sXG4gICAgICBzdWJ0aXRsZTogJ1NlbGVjaW9uZSBvIGNsaWVudGUgcGFyYSBxdWUgYSBNQUlBIHJlc3BvbmRhIGNvbSBiYXNlIGVtIHVtIGNvbnRleHRvLicsXG4gICAgICBsYWJlbENsaWVudDogJ1NlbGVjaW9uZSB1bSBjbGllbnRlJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnQnVzY2FyIGNsaWVudGUgcGVsbyBub21lJyxcbiAgICAgIGNoYW5nZUNsaWVudDogJ011ZGFyIGRlIGNsaWVudGUnLFxuICAgICAgcmVjZW50Q2xpZW50czogJ1JlY2VudGVzJyxcbiAgICAgIHNlYXJjaGluZ0NsaWVudHM6ICdCdXNjYW5kbyBzZXVzIGNsaWVudGVzLi4uJyxcbiAgICAgIGVycm9yTWVzc2FnZTogJ1RpdmVtb3MgdW0gcHJvYmxlbWEgYW8gY2FycmVnYXIgb3MgY2xpZW50ZXMuIFBvciBmYXZvciwgdGVudGUgbm92YW1lbnRlIGVtIGFsZ3VucyBtaW51dG9zLicsXG4gICAgICBlbXB0eVJlY2VudENsaWVudHM6ICdWb2PDqiBuw6NvIHRlbSBjbGllbnRlcyByZWNlbnRlcy4gRGlnaXRlIG8gbm9tZSBkZSB1bSBjbGllbnRlIG5hIGJ1c2NhIHBhcmEgZW5jb250csOhLWxvLicsXG4gICAgICBlbXB0eVN0YXRlOiAnT3BzISBOw6NvIGVuY29udHJhbW9zIGNsaWVudGVzIGNvbSBlc3NlIG5vbWUuIFRlbnRlIG91dHJhIGJ1c2NhLicsXG4gICAgICBwcm9qZWN0OiAncHJvamV0bycsXG4gICAgICBwcm9qZWN0czogJ3Byb2pldG9zJyxcbiAgICB9LFxuICB9LFxufVxuIl0sIm1hcHBpbmdzIjoiOzs7QUFBQSxTQUFTQSxRQUFRLFFBQVEsd0JBQXdCO0FBQ2pELFNBQVNDLHdCQUF3QixRQUFRLHNDQUFzQztBQUUvRSxJQUFNQyxPQUFPLEdBQUc7RUFDZEMsS0FBSyxFQUFFLFFBQVE7RUFDZkMsUUFBUSxFQUFFLGdCQUFnQjtFQUMxQkMsU0FBUyxFQUFFLE1BQU07RUFDakJDLE1BQU0sRUFBRSxVQUFVO0VBQ2xCQyxRQUFRLEVBQUUsVUFBVTtFQUNwQkMsTUFBTSxFQUFFLGtCQUFrQjtFQUMxQkMsSUFBSSxFQUFFLFFBQVE7RUFDZEMsTUFBTSxFQUFFLFNBQVM7RUFDakJDLEtBQUssRUFBRSxPQUFPO0VBQ2RDLGFBQWEsRUFBRSxvQkFBb0I7RUFDbkNDLElBQUksRUFBRSxRQUFRO0VBQ2RDLE1BQU0sRUFBRTtBQUNWLENBQUM7QUFFRCxJQUFNQyxLQUFLLEdBQUc7RUFDWkMsS0FBSyxFQUFFLHFCQUFxQjtFQUM1QkMsV0FBVyxFQUFFLGlHQUFpRztFQUM5R0MsUUFBUSxF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