@projectcor/maia-components 2.11.9-4 → 2.11.9-6
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/ApprovalBox/ApprovalBox.js +2 -5
- package/lib/components/atoms/ApprovalBox/ApprovalBox.styles.js +12 -15
- package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.js +5 -20
- package/lib/components/atoms/ChatClientSelector/ChatClientSelector.js +69 -0
- package/lib/components/atoms/ChatClientSelector/index.js +2 -0
- package/lib/components/atoms/Chip/Chip.js +4 -3
- package/lib/components/atoms/Chip/styles.js +2 -2
- package/lib/components/atoms/EntitySelector/EntitySelector.js +181 -0
- package/lib/components/atoms/EntitySelector/EntitySelector.styles.js +57 -0
- package/lib/components/atoms/EntitySelector/index.js +2 -0
- package/lib/components/atoms/ErrorSearchProjects/ErrorSearchProjects.js +5 -3
- package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.js +4 -3
- package/lib/components/atoms/MAIAInput/MAIAInput.js +12 -35
- package/lib/components/atoms/MAIAInput/styles.js +39 -38
- package/lib/components/atoms/MAIAMessage/MAIAMessage.interfaces.js +1 -1
- package/lib/components/atoms/MAIAMessage/MAIAMessage.js +6 -23
- package/lib/components/atoms/ProjectSelector/ProjectSelector.js +56 -193
- package/lib/components/atoms/ProjectSelector/ProjectSelector.styles.js +2 -2
- package/lib/components/index.js +2 -1
- package/lib/components/molecules/ChatAIClientSelector/ChatAIClientSelector.js +56 -0
- package/lib/components/molecules/ChatAIClientSelector/index.js +2 -0
- package/lib/components/molecules/ChatAIContent/ChatAIContent.js +10 -3
- package/lib/components/molecules/ChatAIHome/ChatAIHome.js +2 -3
- package/lib/components/molecules/ChatAIHome/styles.js +5 -5
- package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +239 -176
- package/lib/components/molecules/ChatAIMessages/newStyles.js +29 -118
- package/lib/components/molecules/ChatAIModal/ChatAIModal.js +18 -6
- package/lib/components/molecules/ChatAIModal/ChatAIModal.styles.js +2 -2
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +6 -4
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.styles.js +3 -3
- package/lib/components/molecules/ChatAIModal/constants.js +6 -2
- package/lib/components/molecules/ChatFooter/ChatFooter.js +7 -4
- package/lib/components/molecules/Sidebar/Sidebar.js +2 -2
- package/lib/components/organisms/ChatAI/ChatAI.js +11 -5
- package/lib/components/organisms/ClientAIButton/ClientAIButton.js +26 -0
- package/lib/components/organisms/ClientAIButton/index.js +2 -0
- package/lib/constants/config.js +3 -2
- package/lib/context/global-context.js +1 -1
- package/lib/hooks/useChatManager/useChatManager.js +49 -19
- package/lib/hooks/useChatMessages/useChatMessages.js +72 -38
- package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +6 -4
- package/lib/hooks/useProjectSummaryConfig.js +35 -7
- package/lib/hooks/useRecentClientsSearch.js +176 -0
- package/lib/index.css +15 -297
- package/lib/lang/br/index.js +25 -2
- package/lib/lang/en/index.js +25 -2
- package/lib/lang/es/index.js +25 -2
- package/lib/lang/fr/index.js +21 -2
- package/lib/services/maia/Agents/getAgents.js +6 -4
- package/lib/services/maia/Chats/getChatMessages.js +27 -14
- package/lib/services/maia/Chats/getChatsByUserId.js +1 -1
- package/lib/services/maia/Orchestrator/orchestrator.js +6 -4
- package/lib/services/maia/RecentClients/getRecentClients.js +43 -0
- package/lib/services/maia/RecentClients/index.js +6 -0
- package/lib/services/maia/index.js +4 -2
- package/lib/services/utils/mapChatMessages.js +12 -4
- package/lib/store/chatsStore.types.js +1 -1
- package/lib/types/Chat.js +1 -1
- package/lib/types/Client.js +2 -0
- package/lib/types/agent.js +1 -1
- package/package.json +16 -24
- package/lib/hooks/useStreamdownStyles.js +0 -20
- package/lib/streamdownStyles.js +0 -6
|
@@ -1,136 +1,47 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/indent */
|
|
2
|
+
/* eslint-disable react/function-component-definition */
|
|
2
3
|
import styled, { css, keyframes } from 'styled-components';
|
|
3
|
-
import { GLOBAL_COLORS } from '../../../styles/config';
|
|
4
4
|
export var MessageWrapper = styled.div.withConfig({
|
|
5
5
|
displayName: "newStyles__MessageWrapper",
|
|
6
6
|
componentId: "sc-1k23l8x-0"
|
|
7
7
|
})(["padding:16px;"]);
|
|
8
|
-
|
|
9
|
-
/** Contenedor exterior del área de mensajes. Cuando expanded, no hace scroll; el scroll lo tiene SCMessagesScroll. */
|
|
10
|
-
export var SCMessagesOuter = styled.div.withConfig({
|
|
11
|
-
displayName: "newStyles__SCMessagesOuter",
|
|
12
|
-
componentId: "sc-1k23l8x-1"
|
|
13
|
-
})(["display:flex;flex-grow:1;justify-content:center;position:relative;min-height:0;", ""], function (_ref) {
|
|
14
|
-
var $scrollOnParent = _ref.$scrollOnParent;
|
|
15
|
-
return $scrollOnParent ? '' : 'overflow: auto;';
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
/** Cuando expanded, este contenedor hace scroll para que el botón "ir al final" quede fijo en el área del chat */
|
|
19
|
-
export var SCMessagesScroll = styled.div.withConfig({
|
|
20
|
-
displayName: "newStyles__SCMessagesScroll",
|
|
21
|
-
componentId: "sc-1k23l8x-2"
|
|
22
|
-
})(["flex:1;min-height:0;overflow-y:auto;display:flex;justify-content:center;"]);
|
|
23
|
-
|
|
24
|
-
/** Contenedor interior de mensajes (maxWidth 864px). Cuando expanded, overflow visible para que scroll lo tenga SCMessagesScroll */
|
|
25
|
-
export var SCMessagesInner = styled.div.withConfig({
|
|
26
|
-
displayName: "newStyles__SCMessagesInner",
|
|
27
|
-
componentId: "sc-1k23l8x-3"
|
|
28
|
-
})(["flex-grow:1;display:flex;flex-direction:column;gap:36px;padding:0 16px;max-width:864px;", ""], function (_ref2) {
|
|
29
|
-
var $scrollOnParent = _ref2.$scrollOnParent;
|
|
30
|
-
return $scrollOnParent ? 'overflow: visible;' : 'overflow-y: auto;';
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
/** Columna para loading/loading messages */
|
|
34
|
-
export var SCLoadingMessagesColumn = styled.div.withConfig({
|
|
35
|
-
displayName: "newStyles__SCLoadingMessagesColumn",
|
|
36
|
-
componentId: "sc-1k23l8x-4"
|
|
37
|
-
})(["display:flex;flex-direction:column;"]);
|
|
38
|
-
|
|
39
|
-
/** Lista de opciones (MessageOptions) */
|
|
40
|
-
export var SCOptionsList = styled.div.withConfig({
|
|
41
|
-
displayName: "newStyles__SCOptionsList",
|
|
42
|
-
componentId: "sc-1k23l8x-5"
|
|
43
|
-
})(["display:flex;flex-direction:column;gap:12px;"]);
|
|
44
|
-
export var SCOptionItem = styled.div.withConfig({
|
|
45
|
-
displayName: "newStyles__SCOptionItem",
|
|
46
|
-
componentId: "sc-1k23l8x-6"
|
|
47
|
-
})(["color:", ";font-size:14px;line-height:140%;cursor:", ";opacity:", ";"], GLOBAL_COLORS.dark, function (_ref3) {
|
|
48
|
-
var $hasSelection = _ref3.$hasSelection;
|
|
49
|
-
return $hasSelection ? 'not-allowed' : 'pointer';
|
|
50
|
-
}, function (_ref4) {
|
|
51
|
-
var $dimmed = _ref4.$dimmed;
|
|
52
|
-
return $dimmed ? 0.5 : 1;
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
/** Header del mensaje del asistente (avatar + nombre) */
|
|
56
|
-
export var SCAssistantMessageHeader = styled.div.withConfig({
|
|
57
|
-
displayName: "newStyles__SCAssistantMessageHeader",
|
|
58
|
-
componentId: "sc-1k23l8x-7"
|
|
59
|
-
})(["display:flex;align-items:center;gap:8px;"]);
|
|
60
|
-
export var SCAssistantName = styled.span.withConfig({
|
|
61
|
-
displayName: "newStyles__SCAssistantName",
|
|
62
|
-
componentId: "sc-1k23l8x-8"
|
|
63
|
-
})(["font-size:16px;font-weight:700;color:rgba(32,32,31,1);"]);
|
|
64
|
-
|
|
65
|
-
/** Wrapper del avatar del asistente */
|
|
66
|
-
export var SCAssistantAvatar = styled.div.withConfig({
|
|
67
|
-
displayName: "newStyles__SCAssistantAvatar",
|
|
68
|
-
componentId: "sc-1k23l8x-9"
|
|
69
|
-
})(["width:18px;height:18px;font-size:18px;display:flex;align-items:center;justify-content:center;cursor:default;"]);
|
|
70
|
-
|
|
71
|
-
/** Enlace de tarea (task link) */
|
|
72
|
-
export var SCTaskLink = styled.a.withConfig({
|
|
73
|
-
displayName: "newStyles__SCTaskLink",
|
|
74
|
-
componentId: "sc-1k23l8x-10"
|
|
75
|
-
})(["text-decoration:underline !important;color:#337ab7 !important;cursor:pointer;"]);
|
|
76
|
-
|
|
77
|
-
/** Wrapper de un mensaje (posición, flex, gap) */
|
|
78
|
-
export var SCMessageItemWrapper = styled.div.withConfig({
|
|
79
|
-
displayName: "newStyles__SCMessageItemWrapper",
|
|
80
|
-
componentId: "sc-1k23l8x-11"
|
|
81
|
-
})(["position:relative;display:flex;gap:8px;flex-direction:column;", ""], function (_ref5) {
|
|
82
|
-
var $isAssistant = _ref5.$isAssistant;
|
|
83
|
-
return $isAssistant && 'justify-content: start;';
|
|
84
|
-
});
|
|
85
|
-
|
|
86
|
-
/** Contenedor interior del mensaje (attachments + approval + content) */
|
|
87
|
-
export var SCMessageItemInner = styled.div.withConfig({
|
|
88
|
-
displayName: "newStyles__SCMessageItemInner",
|
|
89
|
-
componentId: "sc-1k23l8x-12"
|
|
90
|
-
})(["display:flex;flex-direction:column;gap:8px;min-width:0;max-width:100%;"]);
|
|
91
|
-
|
|
92
|
-
/** Fila de attachments (flex end, wrap) */
|
|
93
|
-
export var SCAttachmentsRow = styled.div.withConfig({
|
|
94
|
-
displayName: "newStyles__SCAttachmentsRow",
|
|
95
|
-
componentId: "sc-1k23l8x-13"
|
|
96
|
-
})(["display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap;"]);
|
|
97
|
-
|
|
98
|
-
/** Columna de acciones de approval */
|
|
99
|
-
export var SCApprovalActionsColumn = styled.div.withConfig({
|
|
100
|
-
displayName: "newStyles__SCApprovalActionsColumn",
|
|
101
|
-
componentId: "sc-1k23l8x-14"
|
|
102
|
-
})(["display:flex;flex-direction:column;gap:12px;"]);
|
|
103
8
|
export var SCCAIMessageWrapper = styled.div.withConfig({
|
|
104
9
|
displayName: "newStyles__SCCAIMessageWrapper",
|
|
105
|
-
componentId: "sc-1k23l8x-
|
|
106
|
-
})(["
|
|
107
|
-
var isCurrentUser =
|
|
10
|
+
componentId: "sc-1k23l8x-1"
|
|
11
|
+
})(["padding:", ";border-radius:12px;background-color:", ";border:", ";display:flex;flex-direction:column;gap:16px;", " h1{font-size:24px;line-height:122%;font-weight:600;color:rgba(32,32,31,1);}h2{font-family:Work Sans;font-weight:600;font-size:20px;line-height:125%;color:rgba(32,32,31,1);}h3{font-family:Work Sans;font-weight:600;font-size:18px;line-height:114.99999999999999%;color:rgba(32,32,31,1);}h4{font-family:Work Sans;font-weight:600;font-size:16px;line-height:114.99999999999999%;color:rgba(32,32,31,1);}h5{font-family:Work Sans;font-weight:600;font-size:16px;line-height:122%;color:rgba(32,32,31,1);}h6{font-family:Work Sans;font-weight:400;font-size:16px;line-height:122%;color:rgba(32,32,31,1);}p{line-height:140%;font-size:16px;font-weight:400;line-height:", ";color:", ";font-family:", ";letter-spacing:", ";}blockquote{margin:0 !important;border-left:none;border-top:0.5px solid rgba(242,242,242,1);border-bottom:0.5px solid rgba(242,242,242,1);padding:16px 0 16px 12px;color:rgba(102,102,102,1);font-size:16px;line-height:140%;font-style:italic;p{padding-left:12px !important;margin:0 !important;border-left:1px solid rgba(217,217,217,1) !important;}}a{text-decoration:underline !important;font-size:16px;color:#337ab7 !important;}&.has-task-links a{text-decoration:none !important;color:#202020 !important;font-weight:600 !important;position:relative;padding-left:24px;&:hover{text-decoration:underline !important;}&::before{content:'';position:absolute;left:0;top:0;width:20px;height:20px;background-image:url(\"data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 18C11.125 18 12.125 17.4375 12.6875 16.5625C13.7188 16.7812 14.8438 16.4688 15.6562 15.6562C16.4375 14.875 16.75 13.75 16.5312 12.7188C17.4062 12.1562 18 11.1562 18 10C18 8.875 17.4062 7.875 16.5312 7.3125C16.75 6.28125 16.4375 5.15625 15.6562 4.34375C14.8438 3.5625 13.7188 3.25 12.6875 3.46875C12.125 2.59375 11.125 2 10 2C8.84375 2 7.84375 2.59375 7.28125 3.46875C6.25 3.25 5.125 3.5625 4.34375 4.34375C3.53125 5.15625 3.21875 6.28125 3.4375 7.3125C2.5625 7.875 2 8.875 2 10C2 11.1562 2.5625 12.1562 3.4375 12.7188C3.21875 13.75 3.53125 14.875 4.34375 15.6562C5.125 16.4688 6.25 16.7812 7.28125 16.5625C7.84375 17.4375 8.84375 18 10 18ZM8.0625 14.625C7.40625 14.9375 6.34375 15.5625 5.375 14.5938C4.375 13.5938 5.125 12.4688 5.375 11.9375C4.71875 11.6875 3.5 11.375 3.5 10C3.5 8.59375 4.8125 8.3125 5.375 8.09375C5.09375 7.46875 4.4375 6.375 5.40625 5.40625C6.40625 4.40625 7.53125 5.15625 8.0625 5.40625C8.3125 4.75 8.625 3.5 10 3.5C11.4062 3.5 11.6875 4.84375 11.9062 5.40625C12.5312 5.125 13.625 4.46875 14.5938 5.4375C15.5938 6.4375 14.8438 7.5625 14.5938 8.09375C15.25 8.34375 16.4688 8.65625 16.4688 10.0312C16.4688 11.4375 15.1562 11.7188 14.5938 11.9375C14.875 12.5625 15.5625 13.6562 14.5938 14.625C13.7188 15.5 12.8438 15.0625 11.9062 14.625C11.6562 15.2812 11.3438 16.5 10 16.5C8.5625 16.5 8.28125 15.1875 8.0625 14.625Z' fill='%238740BF'/%3E%3C/svg%3E\");background-size:contain;background-repeat:no-repeat;background-position:center;}}ul{list-style:inside !important;padding-left:15px !important;& > li{list-style:inside !important;margin-bottom:8px !important;color:rgba(32,32,31,1);font-size:16px;}}hr{margin:0 !important;padding:0 !important;}ol{margin:0 !important;& > li{margin-bottom:8px !important;color:rgba(32,32,31,1);font-size:16px;p:last-child{margin-bottom:14px !important;}}}"], function (_ref) {
|
|
12
|
+
var isCurrentUser = _ref.isCurrentUser;
|
|
108
13
|
return isCurrentUser ? '12px' : '0px';
|
|
109
|
-
}, function (
|
|
110
|
-
var isCurrentUser =
|
|
111
|
-
isFrontendCancelled =
|
|
14
|
+
}, function (_ref2) {
|
|
15
|
+
var isCurrentUser = _ref2.isCurrentUser,
|
|
16
|
+
isFrontendCancelled = _ref2.isFrontendCancelled;
|
|
112
17
|
if (isFrontendCancelled) return 'transparent';
|
|
113
|
-
if (isCurrentUser) return '
|
|
18
|
+
if (isCurrentUser) return 'rgba(235, 219, 248, 1)';
|
|
114
19
|
return 'transparent';
|
|
115
|
-
}, function (
|
|
116
|
-
var isCurrentUser =
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
20
|
+
}, function (_ref3) {
|
|
21
|
+
var isCurrentUser = _ref3.isCurrentUser,
|
|
22
|
+
isFrontendCancelled = _ref3.isFrontendCancelled;
|
|
23
|
+
if (isFrontendCancelled) return 'none';
|
|
24
|
+
if (isCurrentUser) return '0.5px solid rgba(235, 219, 248, 1)';
|
|
25
|
+
return 'none';
|
|
26
|
+
}, function (_ref4) {
|
|
27
|
+
var isCurrentUser = _ref4.isCurrentUser;
|
|
28
|
+
return isCurrentUser && css(["overflow-wrap:anywhere;align-self:flex-end;"]);
|
|
29
|
+
}, function (_ref5) {
|
|
30
|
+
var isCurrentUser = _ref5.isCurrentUser;
|
|
120
31
|
return isCurrentUser ? 'normal' : '1.6';
|
|
121
|
-
}, function (
|
|
122
|
-
var isFrontendCancelled =
|
|
32
|
+
}, function (_ref6) {
|
|
33
|
+
var isFrontendCancelled = _ref6.isFrontendCancelled;
|
|
123
34
|
return isFrontendCancelled ? '#999' : 'rgba(32, 32, 31, 1)';
|
|
124
|
-
}, function (
|
|
125
|
-
var isFrontendCancelled =
|
|
35
|
+
}, function (_ref7) {
|
|
36
|
+
var isFrontendCancelled = _ref7.isFrontendCancelled;
|
|
126
37
|
return isFrontendCancelled ? '"Work Sans"' : 'inherit';
|
|
127
|
-
}, function (
|
|
128
|
-
var isFrontendCancelled =
|
|
38
|
+
}, function (_ref8) {
|
|
39
|
+
var isFrontendCancelled = _ref8.isFrontendCancelled;
|
|
129
40
|
return isFrontendCancelled ? '-0.21px' : 'normal';
|
|
130
41
|
});
|
|
131
|
-
var fadeInUp = keyframes(["from{opacity:0;transform:translateX(
|
|
42
|
+
var fadeInUp = keyframes(["from{opacity:0;transform:translateX(50%) translateY(10px);}to{opacity:1;transform:translateX(50%) translateY(0);}"]);
|
|
132
43
|
export var ScrollToBottomButton = styled.button.withConfig({
|
|
133
44
|
displayName: "newStyles__ScrollToBottomButton",
|
|
134
|
-
componentId: "sc-1k23l8x-
|
|
135
|
-
})(["display:flex;width:40px;height:40px;justify-content:center;align-items:center;gap:10px;aspect-ratio:1/1;border-radius:21.5px;border:1px solid #d9d9d9;background:#fff;box-shadow:0 4px 4px 0 rgba(0,0,0,0.05);position:absolute;bottom:15px;
|
|
136
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJjc3MiLCJrZXlmcmFtZXMiLCJHTE9CQUxfQ09MT1JTIiwiTWVzc2FnZVdyYXBwZXIiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsIlNDTWVzc2FnZXNPdXRlciIsIl9yZWYiLCIkc2Nyb2xsT25QYXJlbnQiLCJTQ01lc3NhZ2VzU2Nyb2xsIiwiU0NNZXNzYWdlc0lubmVyIiwiX3JlZjIiLCJTQ0xvYWRpbmdNZXNzYWdlc0NvbHVtbiIsIlNDT3B0aW9uc0xpc3QiLCJTQ09wdGlvbkl0ZW0iLCJkYXJrIiwiX3JlZjMiLCIkaGFzU2VsZWN0aW9uIiwiX3JlZjQiLCIkZGltbWVkIiwiU0NBc3Npc3RhbnRNZXNzYWdlSGVhZGVyIiwiU0NBc3Npc3RhbnROYW1lIiwic3BhbiIsIlNDQXNzaXN0YW50QXZhdGFyIiwiU0NUYXNrTGluayIsImEiLCJTQ01lc3NhZ2VJdGVtV3JhcHBlciIsIl9yZWY1IiwiJGlzQXNzaXN0YW50IiwiU0NNZXNzYWdlSXRlbUlubmVyIiwiU0NBdHRhY2htZW50c1JvdyIsIlNDQXBwcm92YWxBY3Rpb25zQ29sdW1uIiwiU0NDQUlNZXNzYWdlV3JhcHBlciIsIl9yZWY2IiwiaXNDdXJyZW50VXNlciIsIl9yZWY3IiwiaXNGcm9udGVuZENhbmNlbGxlZCIsIl9yZWY4IiwiX3JlZjkiLCJfcmVmMCIsIl9yZWYxIiwiX3JlZjEwIiwiZmFkZUluVXAiLCJTY3JvbGxUb0JvdHRvbUJ1dHRvbiIsImJ1dHRvbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0QUlNZXNzYWdlcy9uZXdTdHlsZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L2luZGVudCAqL1xuaW1wb3J0IHN0eWxlZCwgeyBjc3MsIGtleWZyYW1lcyB9IGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJ1xuaW1wb3J0IHsgR0xPQkFMX0NPTE9SUyB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9jb25maWcnXG5cbmV4cG9ydCBjb25zdCBNZXNzYWdlV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIHBhZGRpbmc6IDE2cHg7XG5gXG5cbi8qKiBDb250ZW5lZG9yIGV4dGVyaW9yIGRlbCDDoXJlYSBkZSBtZW5zYWplcy4gQ3VhbmRvIGV4cGFuZGVkLCBubyBoYWNlIHNjcm9sbDsgZWwgc2Nyb2xsIGxvIHRpZW5lIFNDTWVzc2FnZXNTY3JvbGwuICovXG5leHBvcnQgY29uc3QgU0NNZXNzYWdlc091dGVyID0gc3R5bGVkLmRpdjx7ICRzY3JvbGxPblBhcmVudD86IGJvb2xlYW4gfT5gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZ3JvdzogMTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMDtcbiAgJHsoeyAkc2Nyb2xsT25QYXJlbnQgfSkgPT4gKCRzY3JvbGxPblBhcmVudCA/ICcnIDogJ292ZXJmbG93OiBhdXRvOycpfVxuYFxuXG4vKiogQ3VhbmRvIGV4cGFuZGVkLCBlc3RlIGNvbnRlbmVkb3IgaGFjZSBzY3JvbGwgcGFyYSBxdWUgZWwgYm90w7NuIFwiaXIgYWwgZmluYWxcIiBxdWVkZSBmaWpvIGVuIGVsIMOhcmVhIGRlbCBjaGF0ICovXG5leHBvcnQgY29uc3QgU0NNZXNzYWdlc1Njcm9sbCA9IHN0eWxlZC5kaXZgXG4gIGZsZXg6IDE7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuYFxuXG4vKiogQ29udGVuZWRvciBpbnRlcmlvciBkZSBtZW5zYWplcyAobWF4V2lkdGggODY0cHgpLiBDdWFuZG8gZXhwYW5kZWQsIG92ZXJmbG93IHZpc2libGUgcGFyYSBxdWUgc2Nyb2xsIGxvIHRlbmdhIFNDTWVzc2FnZXNTY3JvbGwgKi9cbmV4cG9ydCBjb25zdCBTQ01lc3NhZ2VzSW5uZXIgPSBzdHlsZWQuZGl2PHsgJHNjcm9sbE9uUGFyZW50PzogYm9vbGVhbiB9PmBcbiAgZmxleC1ncm93OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDM2cHg7XG4gIHBhZGRpbmc6IDAgMTZweDtcbiAgbWF4LXdpZHRoOiA4NjRweDtcbiAgJHsoeyAkc2Nyb2xsT25QYXJlbnQgfSkgPT4gKCRzY3JvbGxPblBhcmVudCA/ICdvdmVyZmxvdzogdmlzaWJsZTsnIDogJ292ZXJmbG93LXk6IGF1dG87Jyl9XG5gXG5cbi8qKiBDb2x1bW5hIHBhcmEgbG9hZGluZy9sb2FkaW5nIG1lc3NhZ2VzICovXG5leHBvcnQgY29uc3QgU0NMb2FkaW5nTWVzc2FnZXNDb2x1bW4gPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuYFxuXG4vKiogTGlzdGEgZGUgb3BjaW9uZXMgKE1lc3NhZ2VPcHRpb25zKSAqL1xuZXhwb3J0IGNvbnN0IFNDT3B0aW9uc0xpc3QgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDEycHg7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ09wdGlvbkl0ZW0gPSBzdHlsZWQuZGl2PHsgJGhhc1NlbGVjdGlvbj86IGJvb2xlYW47ICRkaW1tZWQ/OiBib29sZWFuIH0+YFxuICBjb2xvcjogJHtHTE9CQUxfQ09MT1JTLmRhcmt9O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICBjdXJzb3I6ICR7KHsgJGhhc1NlbGVjdGlvbiB9KSA9PiAoJGhhc1NlbGVjdGlvbiA/ICdub3QtYWxsb3dlZCcgOiAncG9pbnRlcicpfTtcbiAgb3BhY2l0eTogJHsoeyAkZGltbWVkIH0pID0+ICgkZGltbWVkID8gMC41IDogMSl9O1xuYFxuXG4vKiogSGVhZGVyIGRlbCBtZW5zYWplIGRlbCBhc2lzdGVudGUgKGF2YXRhciArIG5vbWJyZSkgKi9cbmV4cG9ydCBjb25zdCBTQ0Fzc2lzdGFudE1lc3NhZ2VIZWFkZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDhweDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQXNzaXN0YW50TmFtZSA9IHN0eWxlZC5zcGFuYFxuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiByZ2JhKDMyLCAzMiwgMzEsIDEpO1xuYFxuXG4vKiogV3JhcHBlciBkZWwgYXZhdGFyIGRlbCBhc2lzdGVudGUgKi9cbmV4cG9ydCBjb25zdCBTQ0Fzc2lzdGFudEF2YXRhciA9IHN0eWxlZC5kaXZgXG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGN1cnNvcjogZGVmYXVsdDtcbmBcblxuLyoqIEVubGFjZSBkZSB0YXJlYSAodGFzayBsaW5rKSAqL1xuZXhwb3J0IGNvbnN0IFNDVGFza0xpbmsgPSBzdHlsZWQuYWBcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbiAgY29sb3I6ICMzMzdhYjcgIWltcG9ydGFudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuYFxuXG4vKiogV3JhcHBlciBkZSB1biBtZW5zYWplIChwb3NpY2nDs24sIGZsZXgsIGdhcCkgKi9cbmV4cG9ydCBjb25zdCBTQ01lc3NhZ2VJdGVtV3JhcHBlciA9IHN0eWxlZC5kaXY8eyAkaXNBc3Npc3RhbnQ/OiBib29sZWFuIH0+YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogOHB4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAkeyh7ICRpc0Fzc2lzdGFudCB9KSA9PiAkaXNBc3Npc3RhbnQgJiYgJ2p1c3RpZnktY29udGVudDogc3RhcnQ7J31cbmBcblxuLyoqIENvbnRlbmVkb3IgaW50ZXJpb3IgZGVsIG1lbnNhamUgKGF0dGFjaG1lbnRzICsgYXBwcm92YWwgKyBjb250ZW50KSAqL1xuZXhwb3J0IGNvbnN0IFNDTWVzc2FnZUl0ZW1Jbm5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogOHB4O1xuICBtaW4td2lkdGg6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbmBcblxuLyoqIEZpbGEgZGUgYXR0YWNobWVudHMgKGZsZXggZW5kLCB3cmFwKSAqL1xuZXhwb3J0IGNvbnN0IFNDQXR0YWNobWVudHNSb3cgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBnYXA6IDEycHg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbmBcblxuLyoqIENvbHVtbmEgZGUgYWNjaW9uZXMgZGUgYXBwcm92YWwgKi9cbmV4cG9ydCBjb25zdCBTQ0FwcHJvdmFsQWN0aW9uc0NvbHVtbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTJweDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTWVzc2FnZVdyYXBwZXIgPSBzdHlsZWQuZGl2PHsgaXNDdXJyZW50VXNlcjogYm9vbGVhbjsgaXNGcm9udGVuZENhbmNlbGxlZD86IGJvb2xlYW4gfT5gXG4gIG1pbi13aWR0aDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkeyh7IGlzQ3VycmVudFVzZXIgfSkgPT4gKGlzQ3VycmVudFVzZXIgPyAnMTJweCcgOiAnMHB4Jyl9O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgaXNDdXJyZW50VXNlciwgaXNGcm9udGVuZENhbmNlbGxlZCB9KSA9PiB7XG4gICAgaWYgKGlzRnJvbnRlbmRDYW5jZWxsZWQpIHJldHVybiAndHJhbnNwYXJlbnQnXG4gICAgaWYgKGlzQ3VycmVudFVzZXIpIHJldHVybiAnI0Y3RjBGQydcbiAgICByZXR1cm4gJ3RyYW5zcGFyZW50J1xuICB9fTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxNnB4O1xuICAkeyh7IGlzQ3VycmVudFVzZXIgfSkgPT5cbiAgICBpc0N1cnJlbnRVc2VyICYmXG4gICAgY3NzYFxuICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICAgIG1heC13aWR0aDogNzUlO1xuICAgIGB9XG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMTIyJTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiByZ2JhKDMyLCAzMiwgMzEsIDEpO1xuICB9XG5cbiAgaDIge1xuICAgIGZvbnQtZmFtaWx5OiBXb3JrIFNhbnM7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEyNSU7XG4gICAgY29sb3I6IHJnYmEoMzIsIDMyLCAzMSwgMSk7XG4gIH1cblxuICBoMyB7XG4gICAgZm9udC1mYW1pbHk6IFdvcmsgU2FucztcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMTE0Ljk5OTk5OTk5OTk5OTk5JTtcbiAgICBjb2xvcjogcmdiYSgzMiwgMzIsIDMxLCAxKTtcbiAgfVxuXG4gIGg0IHtcbiAgICBmb250LWZhbWlseTogV29yayBTYW5zO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxMTQuOTk5OTk5OTk5OTk5OTklO1xuICAgIGNvbG9yOiByZ2JhKDMyLCAzMiwgMzEsIDEpO1xuICB9XG5cbiAgaDUge1xuICAgIGZvbnQtZmFtaWx5OiBXb3JrIFNhbnM7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEyMiU7XG4gICAgY29sb3I6IHJnYmEoMzIsIDMyLCAzMSwgMSk7XG4gIH1cblxuICBoNiB7XG4gICAgZm9udC1mYW1pbHk6IFdvcmsgU2FucztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMTIyJTtcbiAgICBjb2xvcjogcmdiYSgzMiwgMzIsIDMxLCAxKTtcbiAgfVxuXG4gIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAkeyh7IGlzQ3VycmVudFVzZXIgfSkgPT4gKGlzQ3VycmVudFVzZXIgPyAnbm9ybWFsJyA6ICcxLjYnKX07XG4gICAgY29sb3I6ICR7KHsgaXNGcm9udGVuZENhbmNlbGxlZCB9KSA9PiAoaXNGcm9udGVuZENhbmNlbGxlZCA/ICcjOTk5JyA6ICdyZ2JhKDMyLCAzMiwgMzEsIDEpJyl9O1xuICAgIGZvbnQtZmFtaWx5OiAkeyh7IGlzRnJvbnRlbmRDYW5jZWxsZWQgfSkgPT4gKGlzRnJvbnRlbmRDYW5jZWxsZWQgPyAnXCJXb3JrIFNhbnNcIicgOiAnaW5oZXJpdCcpfTtcbiAgICBsZXR0ZXItc3BhY2luZzogJHsoeyBpc0Zyb250ZW5kQ2FuY2VsbGVkIH0pID0+IChpc0Zyb250ZW5kQ2FuY2VsbGVkID8gJy0wLjIxcHgnIDogJ25vcm1hbCcpfTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgIC8qIGNvbG9yOiAkeyh7IGlzQ3VycmVudFVzZXIgfSkgPT4gKGlzQ3VycmVudFVzZXIgPyAncmdiYSgzMiwgMzIsIDMxLCAxKScgOiAncmdiYSgxMDIsIDEwMiwgMTAyLCAxKScpfTsgKi9cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICBib3JkZXItdG9wOiAwLjVweCBzb2xpZCByZ2JhKDI0MiwgMjQyLCAyNDIsIDEpO1xuICAgIGJvcmRlci1ib3R0b206IDAuNXB4IHNvbGlkIHJnYmEoMjQyLCAyNDIsIDI0MiwgMSk7XG4gICAgcGFkZGluZzogMTZweCAwIDE2cHggMTJweDtcbiAgICBjb2xvcjogcmdiYSgxMDIsIDEwMiwgMTAyLCAxKTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHAge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgyMTcsIDIxNywgMjE3LCAxKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGNvbG9yOiAjMzM3YWI3ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmLmhhcy10YXNrLWxpbmtzIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMjAyMDIwICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMjAnIGhlaWdodD0nMjAnIHZpZXdCb3g9JzAgMCAyMCAyMCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nTTEwIDE4QzExLjEyNSAxOCAxMi4xMjUgMTcuNDM3NSAxMi42ODc1IDE2LjU2MjVDMTMuNzE4OCAxNi43ODEyIDE0Ljg0MzggMTYuNDY4OCAxNS42NTYyIDE1LjY1NjJDMTYuNDM3NSAxNC44NzUgMTYuNzUgMTMuNzUgMTYuNTMxMiAxMi43MTg4QzE3LjQwNjIgMTIuMTU2MiAxOCAxMS4xNTYyIDE4IDEwQzE4IDguODc1IDE3LjQwNjIgNy44NzUgMTYuNTMxMiA3LjMxMjVDMTYuNzUgNi4yODEyNSAxNi40Mzc1IDUuMTU2MjUgMTUuNjU2MiA0LjM0Mzc1QzE0Ljg0MzggMy41NjI1IDEzLjcxODggMy4yNSAxMi42ODc1IDMuNDY4NzVDMTIuMTI1IDIuNTkzNzUgMTEuMTI1IDIgMTAgMkM4Ljg0Mzc1IDIgNy44NDM3NSAyLjU5Mzc1IDcuMjgxMjUgMy40Njg3NUM2LjI1IDMuMjUgNS4xMjUgMy41NjI1IDQuMzQzNzUgNC4zNDM3NUMzLjUzMTI1IDUuMTU2MjUgMy4yMTg3NSA2LjI4MTI1IDMuNDM3NSA3LjMxMjVDMi41NjI1IDcuODc1IDIgOC44NzUgMiAxMEMyIDExLjE1NjIgMi41NjI1IDEyLjE1NjIgMy40Mzc1IDEyLjcxODhDMy4yMTg3NSAxMy43NSAzLjUzMTI1IDE0Ljg3NSA0LjM0Mzc1IDE1LjY1NjJDNS4xMjUgMTYuNDY4OCA2LjI1IDE2Ljc4MTIgNy4yODEyNSAxNi41NjI1QzcuODQzNzUgMTcuNDM3NSA4Ljg0Mzc1IDE4IDEwIDE4Wk04LjA2MjUgMTQuNjI1QzcuNDA2MjUgMTQuOTM3NSA2LjM0Mzc1IDE1LjU2MjUgNS4zNzUgMTQuNTkzOEM0LjM3NSAxMy41OTM4IDUuMTI1IDEyLjQ2ODggNS4zNzUgMTEuOTM3NUM0LjcxODc1IDExLjY4NzUgMy41IDExLjM3NSAzLjUgMTBDMy41IDguNTkzNzUgNC44MTI1IDguMzEyNSA1LjM3NSA4LjA5Mzc1QzUuMDkzNzUgNy40Njg3NSA0LjQzNzUgNi4zNzUgNS40MDYyNSA1LjQwNjI1QzYuNDA2MjUgNC40MDYyNSA3LjUzMTI1IDUuMTU2MjUgOC4wNjI1IDUuNDA2MjVDOC4zMTI1IDQuNzUgOC42MjUgMy41IDEwIDMuNUMxMS40MDYyIDMuNSAxMS42ODc1IDQuODQzNzUgMTEuOTA2MiA1LjQwNjI1QzEyLjUzMTIgNS4xMjUgMTMuNjI1IDQuNDY4NzUgMTQuNTkzOCA1LjQzNzVDMTUuNTkzOCA2LjQzNzUgMTQuODQzOCA3LjU2MjUgMTQuNTkzOCA4LjA5Mzc1QzE1LjI1IDguMzQzNzUgMTYuNDY4OCA4LjY1NjI1IDE2LjQ2ODggMTAuMDMxMkMxNi40Njg4IDExLjQzNzUgMTUuMTU2MiAxMS43MTg4IDE0LjU5MzggMTEuOTM3NUMxNC44NzUgMTIuNTYyNSAxNS41NjI1IDEzLjY1NjIgMTQuNTkzOCAxNC42MjVDMTMuNzE4OCAxNS41IDEyLjg0MzggMTUuMDYyNSAxMS45MDYyIDE0LjYyNUMxMS42NTYyIDE1LjI4MTIgMTEuMzQzOCAxNi41IDEwIDE2LjVDOC41NjI1IDE2LjUgOC4yODEyNSAxNS4xODc1IDguMDYyNSAxNC42MjVaJyBmaWxsPSclMjM4NzQwQkYnLyUzRSUzQy9zdmclM0VcIik7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBpbnNpZGUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHggIWltcG9ydGFudDtcbiAgICAmID4gbGkge1xuICAgICAgbGlzdC1zdHlsZTogaW5zaWRlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHggIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiByZ2JhKDMyLCAzMiwgMzEsIDEpO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgfVxuXG4gIGhyIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICBvbCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgJiA+IGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDhweCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6IHJnYmEoMzIsIDMyLCAzMSwgMSk7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBwOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5gXG5cbmNvbnN0IGZhZGVJblVwID0ga2V5ZnJhbWVzYFxuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDEwcHgpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDApO1xuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBTY3JvbGxUb0JvdHRvbUJ1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDEwcHg7XG4gIGFzcGVjdC1yYXRpbzogMS8xO1xuICBib3JkZXItcmFkaXVzOiAyMS41cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkOWQ5ZDk7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxNXB4O1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxMDtcbiAgYW5pbWF0aW9uOiAke2ZhZGVJblVwfSAwLjNzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgfVxuYFxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBLE9BQU9BLE1BQU0sSUFBSUMsR0FBRyxFQUFFQyxTQUFTLFFBQVEsbUJBQW1CO0FBQzFELFNBQVNDLGFBQWEsUUFBUSx3QkFBd0I7QUFFdEQsT0FBTyxJQUFNQyxjQUFjLEdBQUdKLE1BQU0sQ0FBQ0ssR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHFCQUV2Qzs7QUFFRDtBQUNBLE9BQU8sSUFBTUMsZUFBZSxHQUFHVCxNQUFNLENBQUNLLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSw0RkFNckMsVUFBQUUsSUFBQTtFQUFBLElBQUdDLGVBQWUsR0FBQUQsSUFBQSxDQUFmQyxlQUFlO0VBQUEsT0FBUUEsZUFBZSxHQUFHLEVBQUUsR0FBRyxpQkFBaUI7QUFBQSxDQUFDLENBQ3RFOztBQUVEO0FBQ0EsT0FBTyxJQUFNQyxnQkFBZ0IsR0FBR1osTUFBTSxDQUFDSyxHQUFHLENBQUFDLFVB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
|
|
45
|
+
componentId: "sc-1k23l8x-2"
|
|
46
|
+
})(["display:flex;width:40px;height:40px;justify-content:center;align-items:center;gap:10px;aspect-ratio:1/1;border-radius:21.5px;border:1px solid #d9d9d9;background:#fff;box-shadow:0 4px 4px 0 rgba(0,0,0,0.05);position:absolute;bottom:15px;right:50%;transform:translateX(50%);cursor:pointer;z-index:10;animation:", " 0.3s ease;transition:background 0.3s ease;&:hover{background:#f7f7f7;}"], fadeInUp);
|
|
47
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJjc3MiLCJrZXlmcmFtZXMiLCJNZXNzYWdlV3JhcHBlciIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwiU0NDQUlNZXNzYWdlV3JhcHBlciIsIl9yZWYiLCJpc0N1cnJlbnRVc2VyIiwiX3JlZjIiLCJpc0Zyb250ZW5kQ2FuY2VsbGVkIiwiX3JlZjMiLCJfcmVmNCIsIl9yZWY1IiwiX3JlZjYiLCJfcmVmNyIsIl9yZWY4IiwiZmFkZUluVXAiLCJTY3JvbGxUb0JvdHRvbUJ1dHRvbiIsImJ1dHRvbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0QUlNZXNzYWdlcy9uZXdTdHlsZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L2luZGVudCAqL1xuLyogZXNsaW50LWRpc2FibGUgcmVhY3QvZnVuY3Rpb24tY29tcG9uZW50LWRlZmluaXRpb24gKi9cbmltcG9ydCBzdHlsZWQsIHsgY3NzLCBrZXlmcmFtZXMgfSBmcm9tICdzdHlsZWQtY29tcG9uZW50cydcblxuZXhwb3J0IGNvbnN0IE1lc3NhZ2VXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgcGFkZGluZzogMTZweDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTWVzc2FnZVdyYXBwZXIgPSBzdHlsZWQuZGl2PHsgaXNDdXJyZW50VXNlcjogYm9vbGVhbjsgaXNGcm9udGVuZENhbmNlbGxlZD86IGJvb2xlYW4gfT5gXG4gIHBhZGRpbmc6ICR7KHsgaXNDdXJyZW50VXNlciB9KSA9PiAoaXNDdXJyZW50VXNlciA/ICcxMnB4JyA6ICcwcHgnKX07XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgaXNDdXJyZW50VXNlciwgaXNGcm9udGVuZENhbmNlbGxlZCB9KSA9PiB7XG4gICAgaWYgKGlzRnJvbnRlbmRDYW5jZWxsZWQpIHJldHVybiAndHJhbnNwYXJlbnQnXG4gICAgaWYgKGlzQ3VycmVudFVzZXIpIHJldHVybiAncmdiYSgyMzUsIDIxOSwgMjQ4LCAxKSdcbiAgICByZXR1cm4gJ3RyYW5zcGFyZW50J1xuICB9fTtcbiAgYm9yZGVyOiAkeyh7IGlzQ3VycmVudFVzZXIsIGlzRnJvbnRlbmRDYW5jZWxsZWQgfSkgPT4ge1xuICAgIGlmIChpc0Zyb250ZW5kQ2FuY2VsbGVkKSByZXR1cm4gJ25vbmUnXG4gICAgaWYgKGlzQ3VycmVudFVzZXIpIHJldHVybiAnMC41cHggc29saWQgcmdiYSgyMzUsIDIxOSwgMjQ4LCAxKSdcbiAgICByZXR1cm4gJ25vbmUnXG4gIH19O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDE2cHg7XG4gICR7KHsgaXNDdXJyZW50VXNlciB9KSA9PlxuICAgIGlzQ3VycmVudFVzZXIgJiZcbiAgICBjc3NgXG4gICAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbiAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgIGB9XG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMTIyJTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiByZ2JhKDMyLCAzMiwgMzEsIDEpO1xuICB9XG5cbiAgaDIge1xuICAgIGZvbnQtZmFtaWx5OiBXb3JrIFNhbnM7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEyNSU7XG4gICAgY29sb3I6IHJnYmEoMzIsIDMyLCAzMSwgMSk7XG4gIH1cblxuICBoMyB7XG4gICAgZm9udC1mYW1pbHk6IFdvcmsgU2FucztcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMTE0Ljk5OTk5OTk5OTk5OTk5JTtcbiAgICBjb2xvcjogcmdiYSgzMiwgMzIsIDMxLCAxKTtcbiAgfVxuXG4gIGg0IHtcbiAgICBmb250LWZhbWlseTogV29yayBTYW5zO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxMTQuOTk5OTk5OTk5OTk5OTklO1xuICAgIGNvbG9yOiByZ2JhKDMyLCAzMiwgMzEsIDEpO1xuICB9XG5cbiAgaDUge1xuICAgIGZvbnQtZmFtaWx5OiBXb3JrIFNhbnM7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEyMiU7XG4gICAgY29sb3I6IHJnYmEoMzIsIDMyLCAzMSwgMSk7XG4gIH1cblxuICBoNiB7XG4gICAgZm9udC1mYW1pbHk6IFdvcmsgU2FucztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMTIyJTtcbiAgICBjb2xvcjogcmdiYSgzMiwgMzIsIDMxLCAxKTtcbiAgfVxuXG4gIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAkeyh7IGlzQ3VycmVudFVzZXIgfSkgPT4gKGlzQ3VycmVudFVzZXIgPyAnbm9ybWFsJyA6ICcxLjYnKX07XG4gICAgY29sb3I6ICR7KHsgaXNGcm9udGVuZENhbmNlbGxlZCB9KSA9PiAoaXNGcm9udGVuZENhbmNlbGxlZCA/ICcjOTk5JyA6ICdyZ2JhKDMyLCAzMiwgMzEsIDEpJyl9O1xuICAgIGZvbnQtZmFtaWx5OiAkeyh7IGlzRnJvbnRlbmRDYW5jZWxsZWQgfSkgPT4gKGlzRnJvbnRlbmRDYW5jZWxsZWQgPyAnXCJXb3JrIFNhbnNcIicgOiAnaW5oZXJpdCcpfTtcbiAgICBsZXR0ZXItc3BhY2luZzogJHsoeyBpc0Zyb250ZW5kQ2FuY2VsbGVkIH0pID0+IChpc0Zyb250ZW5kQ2FuY2VsbGVkID8gJy0wLjIxcHgnIDogJ25vcm1hbCcpfTtcbiAgICAvKiBjb2xvcjogJHsoeyBpc0N1cnJlbnRVc2VyIH0pID0+IChpc0N1cnJlbnRVc2VyID8gJ3JnYmEoMzIsIDMyLCAzMSwgMSknIDogJ3JnYmEoMTAyLCAxMDIsIDEwMiwgMSknKX07ICovXG4gIH1cblxuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICBib3JkZXItdG9wOiAwLjVweCBzb2xpZCByZ2JhKDI0MiwgMjQyLCAyNDIsIDEpO1xuICAgIGJvcmRlci1ib3R0b206IDAuNXB4IHNvbGlkIHJnYmEoMjQyLCAyNDIsIDI0MiwgMSk7XG4gICAgcGFkZGluZzogMTZweCAwIDE2cHggMTJweDtcbiAgICBjb2xvcjogcmdiYSgxMDIsIDEwMiwgMTAyLCAxKTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHAge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgyMTcsIDIxNywgMjE3LCAxKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGNvbG9yOiAjMzM3YWI3ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmLmhhcy10YXNrLWxpbmtzIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMjAyMDIwICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMjAnIGhlaWdodD0nMjAnIHZpZXdCb3g9JzAgMCAyMCAyMCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nTTEwIDE4QzExLjEyNSAxOCAxMi4xMjUgMTcuNDM3NSAxMi42ODc1IDE2LjU2MjVDMTMuNzE4OCAxNi43ODEyIDE0Ljg0MzggMTYuNDY4OCAxNS42NTYyIDE1LjY1NjJDMTYuNDM3NSAxNC44NzUgMTYuNzUgMTMuNzUgMTYuNTMxMiAxMi43MTg4QzE3LjQwNjIgMTIuMTU2MiAxOCAxMS4xNTYyIDE4IDEwQzE4IDguODc1IDE3LjQwNjIgNy44NzUgMTYuNTMxMiA3LjMxMjVDMTYuNzUgNi4yODEyNSAxNi40Mzc1IDUuMTU2MjUgMTUuNjU2MiA0LjM0Mzc1QzE0Ljg0MzggMy41NjI1IDEzLjcxODggMy4yNSAxMi42ODc1IDMuNDY4NzVDMTIuMTI1IDIuNTkzNzUgMTEuMTI1IDIgMTAgMkM4Ljg0Mzc1IDIgNy44NDM3NSAyLjU5Mzc1IDcuMjgxMjUgMy40Njg3NUM2LjI1IDMuMjUgNS4xMjUgMy41NjI1IDQuMzQzNzUgNC4zNDM3NUMzLjUzMTI1IDUuMTU2MjUgMy4yMTg3NSA2LjI4MTI1IDMuNDM3NSA3LjMxMjVDMi41NjI1IDcuODc1IDIgOC44NzUgMiAxMEMyIDExLjE1NjIgMi41NjI1IDEyLjE1NjIgMy40Mzc1IDEyLjcxODhDMy4yMTg3NSAxMy43NSAzLjUzMTI1IDE0Ljg3NSA0LjM0Mzc1IDE1LjY1NjJDNS4xMjUgMTYuNDY4OCA2LjI1IDE2Ljc4MTIgNy4yODEyNSAxNi41NjI1QzcuODQzNzUgMTcuNDM3NSA4Ljg0Mzc1IDE4IDEwIDE4Wk04LjA2MjUgMTQuNjI1QzcuNDA2MjUgMTQuOTM3NSA2LjM0Mzc1IDE1LjU2MjUgNS4zNzUgMTQuNTkzOEM0LjM3NSAxMy41OTM4IDUuMTI1IDEyLjQ2ODggNS4zNzUgMTEuOTM3NUM0LjcxODc1IDExLjY4NzUgMy41IDExLjM3NSAzLjUgMTBDMy41IDguNTkzNzUgNC44MTI1IDguMzEyNSA1LjM3NSA4LjA5Mzc1QzUuMDkzNzUgNy40Njg3NSA0LjQzNzUgNi4zNzUgNS40MDYyNSA1LjQwNjI1QzYuNDA2MjUgNC40MDYyNSA3LjUzMTI1IDUuMTU2MjUgOC4wNjI1IDUuNDA2MjVDOC4zMTI1IDQuNzUgOC42MjUgMy41IDEwIDMuNUMxMS40MDYyIDMuNSAxMS42ODc1IDQuODQzNzUgMTEuOTA2MiA1LjQwNjI1QzEyLjUzMTIgNS4xMjUgMTMuNjI1IDQuNDY4NzUgMTQuNTkzOCA1LjQzNzVDMTUuNTkzOCA2LjQzNzUgMTQuODQzOCA3LjU2MjUgMTQuNTkzOCA4LjA5Mzc1QzE1LjI1IDguMzQzNzUgMTYuNDY4OCA4LjY1NjI1IDE2LjQ2ODggMTAuMDMxMkMxNi40Njg4IDExLjQzNzUgMTUuMTU2MiAxMS43MTg4IDE0LjU5MzggMTEuOTM3NUMxNC44NzUgMTIuNTYyNSAxNS41NjI1IDEzLjY1NjIgMTQuNTkzOCAxNC42MjVDMTMuNzE4OCAxNS41IDEyLjg0MzggMTUuMDYyNSAxMS45MDYyIDE0LjYyNUMxMS42NTYyIDE1LjI4MTIgMTEuMzQzOCAxNi41IDEwIDE2LjVDOC41NjI1IDE2LjUgOC4yODEyNSAxNS4xODc1IDguMDYyNSAxNC42MjVaJyBmaWxsPSclMjM4NzQwQkYnLyUzRSUzQy9zdmclM0VcIik7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBpbnNpZGUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHggIWltcG9ydGFudDtcbiAgICAmID4gbGkge1xuICAgICAgbGlzdC1zdHlsZTogaW5zaWRlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHggIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiByZ2JhKDMyLCAzMiwgMzEsIDEpO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgfVxuXG4gIGhyIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICBvbCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgJiA+IGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDhweCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6IHJnYmEoMzIsIDMyLCAzMSwgMSk7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBwOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5gXG5cbmNvbnN0IGZhZGVJblVwID0ga2V5ZnJhbWVzYFxuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpIHRyYW5zbGF0ZVkoMTBweCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSkgdHJhbnNsYXRlWSgwKTtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU2Nyb2xsVG9Cb3R0b21CdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxMHB4O1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgYm9yZGVyLXJhZGl1czogMjEuNXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDlkOWQ5O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDRweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTVweDtcbiAgcmlnaHQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogMTA7XG4gIGFuaW1hdGlvbjogJHtmYWRlSW5VcH0gMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZTtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgfVxuYFxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0EsT0FBT0EsTUFBTSxJQUFJQyxHQUFHLEVBQUVDLFNBQVMsUUFBUSxtQkFBbUI7QUFFMUQsT0FBTyxJQUFNQyxjQUFjLEdBQUdILE1BQU0sQ0FBQ0ksR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHFCQUV2QztBQUVELE9BQU8sSUFBTUMsbUJBQW1CLEdBQUdSLE1BQU0sQ0FBQ0ksR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLG01R0FDaEMsVUFBQUUsSUFBQTtFQUFBLElBQUdDLGFBQWEsR0FBQUQsSUFBQSxDQUFiQyxhQUFhO0VBQUEsT0FBUUEsYUFBYSxHQUFHLE1BQU0sR0FBRyxLQUFLO0FBQUEsQ0FBQyxFQUU5QyxVQUFBQyxLQUFBLEVBQTRDO0VBQUEsSUFBekNELGFBQWEsR0FBQUMsS0FBQSxDQUFiRCxhQUFhO0lBQUVFLG1CQUFtQixHQUFBRCxLQUFBLENBQW5CQyxtQkFBbUI7RUFDdkQsSUFBSUEsbUJBQW1CLEVBQUUsT0FBTyxhQUFhO0VBQzdDLElBQUlGLGFBQWEsRUFBRSxPQUFPLHdCQUF3QjtFQUNsRCxPQUFPLGFBQWE7QUFDdEIsQ0FBQyxFQUNTLFVBQUFHLEtBQUEsRUFBNEM7RUFBQSxJQUF6Q0gsYUFBYSxHQUFBRyxLQUFBLENBQWJILGFBQWE7SUFBRUUsbUJBQW1CLEdBQUFDLEtBQUEsQ0FBbkJELG1CQUFtQjtFQUM3QyxJQUFJQSxtQkFBbUIsRUFBRSxPQUFPLE1BQU07RUFDdEMsSUFBSUYsYUFBYSxFQUFFLE9BQU8sb0NBQW9DO0VBQzlELE9BQU8sTUFBTTtBQUNmLENBQUMsRUFJQyxVQUFBSSxLQUFBO0VBQUEsSUFBR0osYUFBYSxHQUFBSSxLQUFBLENBQWJKLGFBQWE7RUFBQSxPQUNoQkEsYUFBYSxJQUNiVCxHQUFHLGlEQUdGO0FBQUEsR0FxRGMsVUFBQWMsS0FBQTtFQUFBLElBQUdMLGFBQWEsR0FBQUssS0FBQSxDQUFiTCxhQUFhO0VBQUEsT0FBUUEsYUFBYSxHQUFHLFFBQVEsR0FBRyxLQUFLO0FBQUEsQ0FBQyxFQUMvRCxVQUFBTSxLQUFBO0VBQUEsSUFBR0osbUJBQW1CLEdBQUFJLEtBQUEsQ0FBbkJKLG1CQUFtQjtFQUFBLE9BQVFBLG1CQUFtQixHQUFHLE1BQU0sR0FBRyxxQkFBcUI7QUFBQSxDQUFDLEVBQzdFLFVBQUFLLEtBQUE7RUFBQSxJQUFHTCxtQkFBbUIsR0FBQUssS0FBQSxDQUFuQkwsbUJBQW1CO0VBQUEsT0FBUUEsbUJBQW1CLEdBQUcsYUFBYSxHQUFHLFNBQVM7QUFBQSxDQUFDLEVBQzNFLFVBQUFNLEtBQUE7RUFBQSxJQUFHTixtQkFBbUIsR0FBQU0sS0FBQSxDQUFuQk4sbUJBQW1CO0VBQUEsT0FBUUEsbUJBQW1CLEdBQUcsU0FBUyxHQUFHLFFBQVE7QUFBQSxDQUFDLENBK0U5RjtBQUVELElBQU1PLFFBQVEsR0FBR2pCLFNBQVMsdUhBU3pCO0FBRUQsT0FBTyxJQUFNa0Isb0JBQW9CLEdBQUdwQixNQUFNLENBQUNxQixNQUFNLENBQUFoQixVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHdZQWtCbENZLFFBQVEsQ0FLdEIiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -39,7 +39,7 @@ var validateAccessByFeature = function validateAccessByFeature(section) {
|
|
|
39
39
|
if (section === 'header' && (window.MAIA_CHAT_AI_FEATURE_ACCESS_MULTI_AGENTS || window.MAIA_CHAT_AI_FEATURE_ACCESS)) {
|
|
40
40
|
return true;
|
|
41
41
|
}
|
|
42
|
-
if (section === 'project' && window.MAIA_CHAT_AI_FEATURE_ACCESS) {
|
|
42
|
+
if ((section === 'project' || section === 'client') && window.MAIA_CHAT_AI_FEATURE_ACCESS) {
|
|
43
43
|
return true;
|
|
44
44
|
}
|
|
45
45
|
return false;
|
|
@@ -108,9 +108,11 @@ export var ChatAIModal = function ChatAIModal(_ref) {
|
|
|
108
108
|
section = _useGlobalContext.section,
|
|
109
109
|
agent = _useGlobalContext.agent,
|
|
110
110
|
project = _useGlobalContext.project,
|
|
111
|
+
client = _useGlobalContext.client,
|
|
111
112
|
toggleWebSearch = _useGlobalContext.toggleWebSearch,
|
|
112
113
|
isWebSearchActive = _useGlobalContext.isWebSearchActive,
|
|
113
|
-
setChipsProject = _useGlobalContext.setChipsProject
|
|
114
|
+
setChipsProject = _useGlobalContext.setChipsProject,
|
|
115
|
+
setClient = _useGlobalContext.setClient;
|
|
114
116
|
var _useGetAgents = useGetAgents({
|
|
115
117
|
selectAgent: selectAgent,
|
|
116
118
|
section: section,
|
|
@@ -133,12 +135,18 @@ export var ChatAIModal = function ChatAIModal(_ref) {
|
|
|
133
135
|
var isMAIA = validateIsMaia(agent);
|
|
134
136
|
var userHasPermissions = ((user === null || user === void 0 || (_user$permissions = user.permissions) === null || _user$permissions === void 0 || (_user$permissions = _user$permissions.ai_agents) === null || _user$permissions === void 0 ? void 0 : _user$permissions.create) || (user === null || user === void 0 || (_user$permissions2 = user.permissions) === null || _user$permissions2 === void 0 || (_user$permissions2 = _user$permissions2.ai_agents) === null || _user$permissions2 === void 0 ? void 0 : _user$permissions2.edit) || (user === null || user === void 0 || (_user$permissions3 = user.permissions) === null || _user$permissions3 === void 0 || (_user$permissions3 = _user$permissions3.ai_agents) === null || _user$permissions3 === void 0 ? void 0 : _user$permissions3["delete"])) && window.MAIA_CHAT_AI_FEATURE_ACCESS_MULTI_AGENTS;
|
|
135
137
|
var computedCurrentOption = useMemo(function () {
|
|
136
|
-
var
|
|
138
|
+
var isProjectSpecialist = isMAIA && ((agent === null || agent === void 0 ? void 0 : agent.entity) === 'project' || (agent === null || agent === void 0 ? void 0 : agent.entity) == null);
|
|
139
|
+
var isClientSpecialist = isMAIA && (agent === null || agent === void 0 ? void 0 : agent.entity) === 'client';
|
|
140
|
+
var shouldShowProjectSelector = currentOption !== options.chat && isProjectSpecialist && !project;
|
|
141
|
+
var shouldShowClientSelector = currentOption !== options.chat && isClientSpecialist && !client;
|
|
137
142
|
if (shouldShowProjectSelector) {
|
|
138
143
|
return options.projectSelector;
|
|
139
144
|
}
|
|
145
|
+
if (shouldShowClientSelector) {
|
|
146
|
+
return options.clientSelector;
|
|
147
|
+
}
|
|
140
148
|
return currentOption;
|
|
141
|
-
}, [
|
|
149
|
+
}, [currentOption, project, client, isMAIA, agent === null || agent === void 0 ? void 0 : agent.entity]);
|
|
142
150
|
var agentsFetchedRef = useRef(false);
|
|
143
151
|
var selector = document.querySelector("#".concat(ID_MODAL_CHAT_AGENT));
|
|
144
152
|
var _useState21 = useState(false),
|
|
@@ -204,6 +212,10 @@ export var ChatAIModal = function ChatAIModal(_ref) {
|
|
|
204
212
|
setNewChatKey(function (prev) {
|
|
205
213
|
return prev + 1;
|
|
206
214
|
});
|
|
215
|
+
// No borrar el cliente si es agente de clientes (igual que el proyecto se mantiene)
|
|
216
|
+
if ((agent === null || agent === void 0 ? void 0 : agent.entity) !== 'client') {
|
|
217
|
+
setClient === null || setClient === void 0 || setClient(null);
|
|
218
|
+
}
|
|
207
219
|
}
|
|
208
220
|
if ((!agent || agent !== null && agent !== void 0 && agent.is_deleted || agent !== null && agent !== void 0 && agent.has_not_permissions || agent !== null && agent !== void 0 && agent.has_not_access || agent !== null && agent !== void 0 && agent.project_deleted) && agents.data.length > 0) {
|
|
209
221
|
selectAgent(agents.data[0]);
|
|
@@ -215,7 +227,7 @@ export var ChatAIModal = function ChatAIModal(_ref) {
|
|
|
215
227
|
if (resetSelectedChatRef.current) {
|
|
216
228
|
resetSelectedChatRef.current();
|
|
217
229
|
}
|
|
218
|
-
}, [options.home, options.chat, currentOption, isWebSearchActive, toggleWebSearch, agent, agents, selectAgent]);
|
|
230
|
+
}, [options.home, options.chat, currentOption, isWebSearchActive, toggleWebSearch, agent, agents, selectAgent, setClient]);
|
|
219
231
|
var handleResetChat = useCallback(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
220
232
|
return _regeneratorRuntime.wrap(function (_context) {
|
|
221
233
|
while (1) switch (_context.prev = _context.next) {
|
|
@@ -310,4 +322,4 @@ export var ChatAIModal = function ChatAIModal(_ref) {
|
|
|
310
322
|
}), /*#__PURE__*/_jsx(Snackbar, {})]
|
|
311
323
|
}), selector);
|
|
312
324
|
};
|
|
313
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VDYWxsYmFjayIsInVzZU1lbW8iLCJ1c2VTdGF0ZSIsInVzZVJlZiIsInVzZUVmZmVjdCIsIlJlYWN0RE9NIiwibW9tZW50IiwidXNlVHJhbnNsYXRpb24iLCJ1c2VVc2VyIiwiTUFJQUVycm9yIiwiQ2hhdEFJQ29udGVudCIsImJ1aWxkSGFuZGxlcnMiLCJvcHRpb25zIiwiU2lkZWJhciIsInVzZUdldEFnZW50cyIsInVzZUdsb2JhbENvbnRleHQiLCJDaGF0QUlNb2RhbEhlYWRlciIsIlNuYWNrYmFyIiwiUHJvamVjdFN1bW1hcnlDb250ZW50IiwiQWJtQWdlbnRNb2RhbCIsIlNFQ1RJT05TIiwiU0NDQUlNQ29udGVudCIsIlNDQ0FJTUNvbnRlbnRXcmFwcGVyIiwiU0NDQUlNV3JhcHBlciIsIkNoYXRBaU1vZGFsRm9vdGVyIiwidmFsaWRhdGVJc01haWEiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiSURfTU9EQUxfQ0hBVF9BR0VOVCIsInZhbGlkYXRlQWNjZXNzQnlGZWF0dXJlIiwic2VjdGlvbiIsIndpbmRvdyIsIk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFMiLCJNQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1MiLCJDaGF0QUlNb2RhbCIsIl9yZWYiLCJfdXNlciRwZXJtaXNzaW9ucyIsIl91c2VyJHBlcm1pc3Npb25zMiIsIl91c2VyJHBlcm1pc3Npb25zMyIsIl9hZ2VudHMkZGF0YSIsImhhbmRsZUNsb3NlIiwidXNlciIsIl91c2VUcmFuc2xhdGlvbiIsImFibUFnZW50IiwiaTE4biIsIl91c2VTdGF0ZSIsIm1lc3NhZ2UiLCJhdHRhY2htZW50cyIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsInVzZXJJbml0aWFsTWVzc2FnZSIsInNldFVzZXJJbml0aWFsTWVzc2FnZSIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiaW5pdGlhbENoYXRJZCIsInNldEluaXRpYWxDaGF0SWQiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsIm5ld0NoYXRLZXkiLCJzZXROZXdDaGF0S2V5IiwiX3VzZVN0YXRlNyIsIl91c2VTdGF0ZTgiLCJzZW5kTWVzc2FnZUZ1bmN0aW9uIiwic2V0U2VuZE1lc3NhZ2VGdW5jdGlvbiIsIl91c2VTdGF0ZTkiLCJfdXNlU3RhdGUwIiwic3RvcEdlbmVyYXRpb25GdW5jdGlvbiIsInNldFN0b3BHZW5lcmF0aW9uRnVuY3Rpb24iLCJfdXNlU3RhdGUxIiwiX3VzZVN0YXRlMTAiLCJpc1N0cmVhbWluZyIsInNldElzU3RyZWFtaW5nIiwiX3VzZVN0YXRlMTEiLCJfdXNlU3RhdGUxMiIsImlzV3JpdGluZyIsInNldElzV3JpdGluZyIsIl91c2VTdGF0ZTEzIiwiX3VzZVN0YXRlMTQiLCJyZWZldGNoQ2hhdHMiLCJzZXRSZWZldGNoQ2hhdHMiLCJfdXNlU3RhdGUxNSIsImhvbWUiLCJfdXNlU3RhdGUxNiIsImN1cnJlbnRPcHRpb24iLCJzZXRDdXJyZW50T3B0aW9uIiwiX3VzZVN0YXRlMTciLCJfdXNlU3RhdGUxOCIsImhhc0Vycm9yIiwic2V0SGFzRXJyb3IiLCJoYW5kbGVycyIsIl91c2VTdGF0ZTE5IiwiX3VzZVN0YXRlMjAiLCJzaWRlYmFySGFzRXJyb3IiLCJzZXRTaWRlYmFySGFzRXJyb3IiLCJyZXNldFNlbGVjdGVkQ2hhdFJlZiIsImxhbmciLCJsYW5ndWFnZSIsImxvY2FsZSIsIl91c2VHbG9iYWxDb250ZXh0Iiwic2VsZWN0QWdlbnQiLCJhZ2VudCIsInByb2plY3QiLCJ0b2dnbGVXZWJTZWFyY2giLCJpc1dlYlNlYXJjaEFjdGl2ZSIsInNldENoaXBzUHJvamVjdCIsIl91c2VHZXRBZ2VudHMiLCJoYW5kbGVHb0hvbWUiLCJhZ2VudHMiLCJsb2FkaW5nIiwibG9hZGluZ01vcmUiLCJhZ2VudEVycm9yIiwiZXJyb3IiLCJoYXNOb0FnZW50cyIsImhhbmRsZUdldEFnZW50cyIsImxvYWRNb3JlQWdlbnRzIiwiYWRkQWdlbnQiLCJyZW1vdmVBZ2VudCIsInVwZGF0ZUFnZW50IiwidXBkYXRlQWdlbnRGYXZvcml0ZSIsInNlbGVjdEZpcnN0QWdlbnQiLCJzb3J0QWdlbnRzTGlzdCIsImlzTUFJQSIsInVzZXJIYXNQZXJtaXNzaW9ucyIsInBlcm1pc3Npb25zIiwiYWlfYWdlbnRzIiwiY3JlYXRlIiwiZWRpdCIsImNvbXB1dGVkQ3VycmVudE9wdGlvbiIsInNob3VsZFNob3dQcm9qZWN0U2VsZWN0b3IiLCJjaGF0IiwicHJvamVjdFNlbGVjdG9yIiwiYWdlbnRzRmV0Y2hlZFJlZiIsInNlbGVjdG9yIiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwiY29uY2F0IiwiX3VzZVN0YXRlMjEiLCJfdXNlU3RhdGUyMiIsImV4cGFuZGVkIiwic2V0RXhwYW5kZWQiLCJzdGFydENoYXQiLCJmYXFJZCIsInByZXYiLCJfb2JqZWN0U3ByZWFkIiwiZ29Ub0NoYXQiLCJzZXNzaW9uRXh0ZXJuYWxJZCIsInNlbGVjdGVkQWdlbnQiLCJkYXRhIiwiZmluZCIsImFnZW50SXRlbSIsImlkIiwiYWdlbnRJZCIsImRpc3BhdGNoRXZlbnQiLCJDdXN0b21FdmVudCIsImhhbmRsZVNlbmRNZXNzYWdlUmVhZHkiLCJzZW5kTWVzc2FnZSIsInN0b3BHZW5lcmF0aW9uIiwic3RyZWFtaW5nIiwid3JpdGluZyIsImhhbmRsZVNlbmRNZXNzYWdlIiwiaXNfZGVsZXRlZCIsImhhc19ub3RfcGVybWlzc2lvbnMiLCJoYXNfbm90X2FjY2VzcyIsInByb2plY3RfZGVsZXRlZCIsImxlbmd0aCIsImN1cnJlbnQiLCJoYW5kbGVSZXNldENoYXQiLCJfYXN5bmNUb0dlbmVyYXRvciIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJtYXJrIiwiX2NhbGxlZSIsIndyYXAiLCJfY29udGV4dCIsIm5leHQiLCJzdG9wIiwic2hvd05ld0NoYXQiLCJjcmVhdGVQb3J0YWwiLCJjaGlsZHJlbiIsIm9uR29Ub0NoYXQiLCJvbkVycm9yIiwiaGFuZGxlR29Ub0hvbWUiLCJoYW5kbGVTZXRSZWZldGNoQ2hhdHMiLCJoYXNNb3JlIiwiaGFzX21vcmUiLCJvbkFnZW50VXBkYXRlIiwicmVmcyIsIm9uU2VuZE1lc3NhZ2VSZWFkeSIsIm9uUmVzdGFydFN1bW1hcnkiLCJoYW5kbGVTdG9wR2VuZXJhdGlvbiIsImNoYXRJZCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0QUlNb2RhbC9DaGF0QUlNb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tbmVzdGVkLXRlcm5hcnkgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9pbmRlbnQgKi9cbi8qIGVzbGludC1kaXNhYmxlIHJlYWN0L2pzeC1uby11c2VsZXNzLWZyYWdtZW50ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG4vKiBlc2xpbnQtZGlzYWJsZSByZWFjdC9uby1hcnJheS1pbmRleC1rZXkgKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L2NsaWNrLWV2ZW50cy1oYXZlLWtleS1ldmVudHMgKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L25vLXN0YXRpYy1lbGVtZW50LWludGVyYWN0aW9ucyAqL1xuLyogZXNsaW50LWRpc2FibGUgcmVhY3QvZnVuY3Rpb24tY29tcG9uZW50LWRlZmluaXRpb24gKi9cbi8qIGVzbGludC1kaXNhYmxlIHJlYWN0L3JlcXVpcmUtZGVmYXVsdC1wcm9wcyAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuaW1wb3J0IHsgUmVmT2JqZWN0LCB1c2VDYWxsYmFjaywgdXNlTWVtbywgdXNlU3RhdGUsIHVzZVJlZiwgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgUmVhY3RET00gZnJvbSAncmVhY3QtZG9tJ1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnXG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ3JlYWN0LWkxOG5leHQnXG5pbXBvcnQgeyB1c2VVc2VyIH0gZnJvbSAnLi4vLi4vLi4vY29udGV4dC9jb3ItdXNlcidcbmltcG9ydCB7IE1BSUFFcnJvciB9IGZyb20gJy4uLy4uL2F0b21zL01BSUFFcnJvcidcblxuaW1wb3J0IHsgQ2hhdEFJQ29udGVudCB9IGZyb20gJy4uL0NoYXRBSUNvbnRlbnQnXG5pbXBvcnQgeyBidWlsZEhhbmRsZXJzLCBvcHRpb25zIH0gZnJvbSAnLi9jb25zdGFudHMnXG5pbXBvcnQgeyBTaWRlYmFyIH0gZnJvbSAnLi4vU2lkZWJhcidcbmltcG9ydCB7IHVzZUdldEFnZW50cyB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL21haWEvQWdlbnRzL2dldEFnZW50cydcbmltcG9ydCB7IHVzZUdsb2JhbENvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9jb250ZXh0L2dsb2JhbC1jb250ZXh0J1xuaW1wb3J0IHsgQXR0YWNobWVudEZpbGUgfSBmcm9tICcuLi9DaGF0Rm9vdGVyL0NoYXRGb290ZXInXG5pbXBvcnQgeyBDaGF0QUlNb2RhbEhlYWRlciB9IGZyb20gJy4vY29tcG9uZW50cy9DaGF0QWlNb2RhbEhlYWRlci9DaGF0QWlNb2RhbEhlYWRlcidcbmltcG9ydCB7IFNuYWNrYmFyIH0gZnJvbSAnLi4vLi4vb3JnYW5pc21zL1NuYWNrQmFyL1NuYWNrYmFyJ1xuaW1wb3J0IHsgUHJvamVjdFN1bW1hcnlDb250ZW50IH0gZnJvbSAnLi4vUHJvamVjdFN1bW1hcnlDb250ZW50J1xuaW1wb3J0IHsgQWJtQWdlbnRNb2RhbCB9IGZyb20gJy4uLy4uL29yZ2FuaXNtcy9BYm1BZ2VudE1vZGFsL0FibUFnZW50TW9kYWwnXG5pbXBvcnQgeyBTRUNUSU9OUyB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9jb25maWcnXG5pbXBvcnQgeyBTQ0NBSU1Db250ZW50LCBTQ0NBSU1Db250ZW50V3JhcHBlciwgU0NDQUlNV3JhcHBlciB9IGZyb20gJy4vQ2hhdEFJTW9kYWwuc3R5bGVzJ1xuaW1wb3J0IHsgQ2hhdEFpTW9kYWxGb290ZXIgfSBmcm9tICcuL2NvbXBvbmVudHMvQ2hhdEFpTW9kYWxGb290ZXInXG5pbXBvcnQgeyB2YWxpZGF0ZUlzTWFpYSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL3ZhbGlkYXRlSXNNYWlhJ1xuaW1wb3J0IHsgQWdlbnQgfSBmcm9tICcuLi8uLi8uLi90eXBlcy9hZ2VudCdcblxudHlwZSBDaGF0QUlNb2RhbFByb3BzID0ge1xuICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgaGFuZGxlQ2xvc2U/OiAoKSA9PiB2b2lkXG4gIHBhcmVudFJlZj86IFJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD5cbn1cblxuZXhwb3J0IGNvbnN0IElEX01PREFMX0NIQVRfQUdFTlQgPSAnbW9kYWxzLXBvcnRhbC1tYWlhLWNoYXQtYWdlbnQnXG5cbmNvbnN0IHZhbGlkYXRlQWNjZXNzQnlGZWF0dXJlID0gKHNlY3Rpb246IHN0cmluZykgPT4ge1xuICBpZiAoc2VjdGlvbiA9PT0gJ2hlYWRlcicgJiYgKHdpbmRvdy5NQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1NfTVVMVElfQUdFTlRTIHx8IHdpbmRvdy5NQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1MpKSB7XG4gICAgcmV0dXJuIHRydWVcbiAgfVxuICBpZiAoc2VjdGlvbiA9PT0gJ3Byb2plY3QnICYmIHdpbmRvdy5NQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1MpIHtcbiAgICByZXR1cm4gdHJ1ZVxuICB9XG4gIHJldHVybiBmYWxzZVxufVxuXG5leHBvcnQgY29uc3QgQ2hhdEFJTW9kYWwgPSAoeyBoYW5kbGVDbG9zZSB9OiBDaGF0QUlNb2RhbFByb3BzKSA9PiB7XG4gIGNvbnN0IHVzZXIgPSB1c2VVc2VyKClcbiAgY29uc3QgeyBpMThuIH0gPSB1c2VUcmFuc2xhdGlvbihbU0VDVElPTlMuYWJtQWdlbnRdKVxuICBjb25zdCBbdXNlckluaXRpYWxNZXNzYWdlLCBzZXRVc2VySW5pdGlhbE1lc3NhZ2VdID0gdXNlU3RhdGU8e1xuICAgIG1lc3NhZ2U6IHN0cmluZ1xuICAgIGF0dGFjaG1lbnRzOiBBdHRhY2htZW50RmlsZVtdXG4gICAgZmFxSWQ/OiBzdHJpbmdcbiAgfT4oe1xuICAgIG1lc3NhZ2U6ICcnLFxuICAgIGF0dGFjaG1lbnRzOiBbXSxcbiAgfSlcbiAgY29uc3QgW2luaXRpYWxDaGF0SWQsIHNldEluaXRpYWxDaGF0SWRdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW25ld0NoYXRLZXksIHNldE5ld0NoYXRLZXldID0gdXNlU3RhdGUoMClcbiAgY29uc3QgW3NlbmRNZXNzYWdlRnVuY3Rpb24sIHNldFNlbmRNZXNzYWdlRnVuY3Rpb25dID0gdXNlU3RhdGU8XG4gICAgKChtZXNzYWdlOiBzdHJpbmcsIGF0dGFjaG1lbnRzPzogQXR0YWNobWVudEZpbGVbXSkgPT4gdm9pZCkgfCBudWxsXG4gID4obnVsbClcbiAgY29uc3QgW3N0b3BHZW5lcmF0aW9uRnVuY3Rpb24sIHNldFN0b3BHZW5lcmF0aW9uRnVuY3Rpb25dID0gdXNlU3RhdGU8KCgpID0+IHZvaWQpIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW2lzU3RyZWFtaW5nLCBzZXRJc1N0cmVhbWluZ10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2lzV3JpdGluZywgc2V0SXNXcml0aW5nXSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gIGNvbnN0IFtyZWZldGNoQ2hhdHMsIHNldFJlZmV0Y2hDaGF0c10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2N1cnJlbnRPcHRpb24sIHNldEN1cnJlbnRPcHRpb25dID0gdXNlU3RhdGUob3B0aW9ucy5ob21lKVxuICBjb25zdCBbaGFzRXJyb3IsIHNldEhhc0Vycm9yXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBoYW5kbGVycyA9IHVzZU1lbW8oKCkgPT4gYnVpbGRIYW5kbGVycyhzZXRDdXJyZW50T3B0aW9uLCBzZXRIYXNFcnJvciksIFtdKVxuICBjb25zdCBbc2lkZWJhckhhc0Vycm9yLCBzZXRTaWRlYmFySGFzRXJyb3JdID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IHJlc2V0U2VsZWN0ZWRDaGF0UmVmID0gdXNlUmVmPCgoKSA9PiB2b2lkKSB8IG51bGw+KG51bGwpXG4gIGNvbnN0IGxhbmcgPSBpMThuLmxhbmd1YWdlID09PSAnYnInID8gJ3B0LWJyJyA6IGkxOG4ubGFuZ3VhZ2VcblxuICBtb21lbnQubG9jYWxlKGxhbmcpXG5cbiAgY29uc3QgeyBzZWxlY3RBZ2VudCwgc2VjdGlvbiwgYWdlbnQsIHByb2plY3QsIHRvZ2dsZVdlYlNlYXJjaCwgaXNXZWJTZWFyY2hBY3RpdmUsIHNldENoaXBzUHJvamVjdCB9ID1cbiAgICB1c2VHbG9iYWxDb250ZXh0KClcblxuICBjb25zdCB7XG4gICAgYWdlbnRzLFxuICAgIGxvYWRpbmcsXG4gICAgbG9hZGluZ01vcmUsXG4gICAgZXJyb3I6IGFnZW50RXJyb3IsXG4gICAgaGFzTm9BZ2VudHMsXG4gICAgaGFuZGxlR2V0QWdlbnRzLFxuICAgIGxvYWRNb3JlQWdlbnRzLFxuICAgIGFkZEFnZW50LFxuICAgIHJlbW92ZUFnZW50LFxuICAgIHVwZGF0ZUFnZW50LFxuICAgIHVwZGF0ZUFnZW50RmF2b3JpdGUsXG4gICAgc2VsZWN0Rmlyc3RBZ2VudCxcbiAgICBzb3J0QWdlbnRzTGlzdCxcbiAgfSA9IHVzZUdldEFnZW50cyh7IHNlbGVjdEFnZW50LCBzZWN0aW9uLCBhZ2VudCwgaGFuZGxlR29Ib21lOiBoYW5kbGVycy5ob21lIH0pXG5cbiAgY29uc3QgaXNNQUlBID0gdmFsaWRhdGVJc01haWEoYWdlbnQgYXMgQWdlbnQpXG5cbiAgY29uc3QgdXNlckhhc1Blcm1pc3Npb25zID1cbiAgICAodXNlcj8ucGVybWlzc2lvbnM/LmFpX2FnZW50cz8uY3JlYXRlIHx8XG4gICAgICB1c2VyPy5wZXJtaXNzaW9ucz8uYWlfYWdlbnRzPy5lZGl0IHx8XG4gICAgICB1c2VyPy5wZXJtaXNzaW9ucz8uYWlfYWdlbnRzPy5kZWxldGUpICYmXG4gICAgd2luZG93Lk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFNcblxuICBjb25zdCBjb21wdXRlZEN1cnJlbnRPcHRpb24gPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBzaG91bGRTaG93UHJvamVjdFNlbGVjdG9yID0gY3VycmVudE9wdGlvbiAhPT0gb3B0aW9ucy5jaGF0ICYmIGlzTUFJQSAmJiAhcHJvamVjdFxuXG4gICAgaWYgKHNob3VsZFNob3dQcm9qZWN0U2VsZWN0b3IpIHtcbiAgICAgIHJldHVybiBvcHRpb25zLnByb2plY3RTZWxlY3RvclxuICAgIH1cbiAgICByZXR1cm4gY3VycmVudE9wdGlvblxuICB9LCBbc2VjdGlvbiwgY3VycmVudE9wdGlvbiwgcHJvamVjdCwgaXNNQUlBXSlcblxuICBjb25zdCBhZ2VudHNGZXRjaGVkUmVmID0gdXNlUmVmKGZhbHNlKVxuXG4gIGNvbnN0IHNlbGVjdG9yID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgIyR7SURfTU9EQUxfQ0hBVF9BR0VOVH1gKVxuXG4gIGNvbnN0IFtleHBhbmRlZCwgc2V0RXhwYW5kZWRdID0gdXNlU3RhdGUoZmFsc2UpXG5cbiAgY29uc3Qgc3RhcnRDaGF0ID0gdXNlQ2FsbGJhY2soXG4gICAgKG1lc3NhZ2U/OiBzdHJpbmcsIGF0dGFjaG1lbnRzPzogQXR0YWNobWVudEZpbGVbXSwgZmFxSWQ/OiBzdHJpbmcpID0+IHtcbiAgICAgIGlmIChzaWRlYmFySGFzRXJyb3IpIHtcbiAgICAgICAgc2V0U2lkZWJhckhhc0Vycm9yKGZhbHNlKVxuICAgICAgfVxuICAgICAgc2V0SW5pdGlhbENoYXRJZChudWxsKVxuICAgICAgc2V0TmV3Q2hhdEtleShwcmV2ID0+IHByZXYgKyAxKVxuICAgICAgc2V0VXNlckluaXRpYWxNZXNzYWdlKHtcbiAgICAgICAgbWVzc2FnZTogbWVzc2FnZSB8fCAnJyxcbiAgICAgICAgYXR0YWNobWVudHM6IGF0dGFjaG1lbnRzIHx8IFtdLFxuICAgICAgICAuLi4oZmFxSWQgPyB7IGZhcUlkIH0gOiB7fSksXG4gICAgICB9KVxuICAgICAgaGFuZGxlcnMuY2hhdCgpXG4gICAgfSxcbiAgICBbaGFuZGxlcnMsIHNpZGViYXJIYXNFcnJvcl1cbiAgKVxuXG4gIGNvbnN0IGdvVG9DaGF0ID0gdXNlQ2FsbGJhY2soXG4gICAgKGNoYXQ6IGFueSkgPT4ge1xuICAgICAgc2V0VXNlckluaXRpYWxNZXNzYWdlKHsgbWVzc2FnZTogJycsIGF0dGFjaG1lbnRzOiBbXSB9KVxuICAgICAgc2V0SW5pdGlhbENoYXRJZChjaGF0LnNlc3Npb25FeHRlcm5hbElkKVxuICAgICAgY29uc3Qgc2VsZWN0ZWRBZ2VudCA9IGFnZW50cy5kYXRhLmZpbmQoYWdlbnRJdGVtID0+IGFnZW50SXRlbS5pZCA9PT0gY2hhdC5hZ2VudElkKVxuICAgICAgaWYgKHNlbGVjdGVkQWdlbnQpIHtcbiAgICAgICAgc2VsZWN0QWdlbnQoc2VsZWN0ZWRBZ2VudClcbiAgICAgIH1cbiAgICAgIC8vIERpc3BhdGNoIGV2ZW50IHRvIGNsZWFyIHRoZSBpbnB1dCB0ZXh0YXJlYVxuICAgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoJ2NoYXQtc2Vzc2lvbi1jaGFuZ2VkJykpXG4gICAgICBoYW5kbGVycy5jaGF0KClcbiAgICB9LFxuICAgIFtoYW5kbGVycywgYWdlbnRzLCBzZWxlY3RBZ2VudF1cbiAgKVxuXG4gIGNvbnN0IGhhbmRsZVNlbmRNZXNzYWdlUmVhZHkgPSB1c2VDYWxsYmFjayhcbiAgICAoXG4gICAgICBzZW5kTWVzc2FnZTogKG1lc3NhZ2U6IHN0cmluZywgYXR0YWNobWVudHM/OiBBdHRhY2htZW50RmlsZVtdKSA9PiB2b2lkLFxuICAgICAgc3RvcEdlbmVyYXRpb246ICgpID0+IHZvaWQsXG4gICAgICBzdHJlYW1pbmc6IGJvb2xlYW4sXG4gICAgICB3cml0aW5nOiBib29sZWFuXG4gICAgKSA9PiB7XG4gICAgICBzZXRTZW5kTWVzc2FnZUZ1bmN0aW9uKCgpID0+IHNlbmRNZXNzYWdlKVxuICAgICAgc2V0U3RvcEdlbmVyYXRpb25GdW5jdGlvbigoKSA9PiBzdG9wR2VuZXJhdGlvbilcbiAgICAgIHNldElzU3RyZWFtaW5nKHN0cmVhbWluZylcbiAgICAgIHNldElzV3JpdGluZyh3cml0aW5nKVxuICAgIH0sXG4gICAgW11cbiAgKVxuXG4gIGNvbnN0IGhhbmRsZVNlbmRNZXNzYWdlID0gdXNlQ2FsbGJhY2soXG4gICAgKG1lc3NhZ2U6IHN0cmluZywgYXR0YWNobWVudHM/OiBBdHRhY2htZW50RmlsZVtdKSA9PiB7XG4gICAgICBpZiAoc2lkZWJhckhhc0Vycm9yKSB7XG4gICAgICAgIHNldFNpZGViYXJIYXNFcnJvcihmYWxzZSlcbiAgICAgIH1cbiAgICAgIGlmIChzZW5kTWVzc2FnZUZ1bmN0aW9uICYmIGNvbXB1dGVkQ3VycmVudE9wdGlvbiA9PT0gb3B0aW9ucy5jaGF0KSB7XG4gICAgICAgIHNlbmRNZXNzYWdlRnVuY3Rpb24obWVzc2FnZSwgYXR0YWNobWVudHMpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdGFydENoYXQobWVzc2FnZSwgYXR0YWNobWVudHMpXG4gICAgICB9XG4gICAgfSxcbiAgICBbc2VuZE1lc3NhZ2VGdW5jdGlvbiwgc3RhcnRDaGF0LCBjb21wdXRlZEN1cnJlbnRPcHRpb24sIHNpZGViYXJIYXNFcnJvcl1cbiAgKVxuXG4gIGNvbnN0IGhhbmRsZUdvSG9tZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAvLyBTaSBlc3RhbW9zIGVuIHVuYSBjb252ZXJzYWNpw7NuIHkgdmFtb3MgYSBob21lLCByZXNldGVhciBpbml0aWFsQ2hhdElkIHkgaW5jcmVtZW50YXIgbmV3Q2hhdEtleVxuICAgIGlmIChjdXJyZW50T3B0aW9uID09PSBvcHRpb25zLmNoYXQpIHtcbiAgICAgIHNldEluaXRpYWxDaGF0SWQobnVsbClcbiAgICAgIHNldE5ld0NoYXRLZXkocHJldiA9PiBwcmV2ICsgMSlcbiAgICB9XG4gICAgaWYgKFxuICAgICAgKCFhZ2VudCB8fCBhZ2VudD8uaXNfZGVsZXRlZCB8fCBhZ2VudD8uaGFzX25vdF9wZXJtaXNzaW9ucyB8fCBhZ2VudD8uaGFzX25vdF9hY2Nlc3MgfHwgYWdlbnQ/LnByb2plY3RfZGVsZXRlZCkgJiZcbiAgICAgIGFnZW50cy5kYXRhLmxlbmd0aCA+IDBcbiAgICApIHtcbiAgICAgIHNlbGVjdEFnZW50KGFnZW50cy5kYXRhWzBdKVxuICAgIH1cbiAgICBzZXRDdXJyZW50T3B0aW9uKG9wdGlvbnMuaG9tZSlcbiAgICBzZXRDaGlwc1Byb2plY3QobnVsbClcbiAgICBzZXRIYXNFcnJvcihmYWxzZSlcbiAgICBpc1dlYlNlYXJjaEFjdGl2ZSAmJiB0b2dnbGVXZWJTZWFyY2goKVxuICAgIGlmIChyZXNldFNlbGVjdGVkQ2hhdFJlZi5jdXJyZW50KSB7XG4gICAgICByZXNldFNlbGVjdGVkQ2hhdFJlZi5jdXJyZW50KClcbiAgICB9XG4gIH0sIFtvcHRpb25zLmhvbWUsIG9wdGlvbnMuY2hhdCwgY3VycmVudE9wdGlvbiwgaXNXZWJTZWFyY2hBY3RpdmUsIHRvZ2dsZVdlYlNlYXJjaCwgYWdlbnQsIGFnZW50cywgc2VsZWN0QWdlbnRdKVxuXG4gIGNvbnN0IGhhbmRsZVJlc2V0Q2hhdCA9IHVzZUNhbGxiYWNrKGFzeW5jICgpID0+IHtcbiAgICBzZXRVc2VySW5pdGlhbE1lc3NhZ2UoeyBtZXNzYWdlOiAnJywgYXR0YWNobWVudHM6IFtdIH0pXG4gICAgc2V0SW5pdGlhbENoYXRJZChudWxsKVxuICAgIC8vIERpc3BhdGNoIGV2ZW50IHRvIGNsZWFyIHRoZSBpbnB1dCB0ZXh0YXJlYVxuICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCdjaGF0LXNlc3Npb24tY2hhbmdlZCcpKVxuICAgIGhhbmRsZUdvSG9tZSgpXG4gIH0sIFtoYW5kbGVHb0hvbWVdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFhZ2VudHNGZXRjaGVkUmVmLmN1cnJlbnQpIHtcbiAgICAgIGFnZW50c0ZldGNoZWRSZWYuY3VycmVudCA9IHRydWVcbiAgICAgIGhhbmRsZUdldEFnZW50cygpXG4gICAgfVxuICB9LCBbaGFuZGxlR2V0QWdlbnRzXSlcblxuICBjb25zdCBzaG93TmV3Q2hhdCA9IGNvbXB1dGVkQ3VycmVudE9wdGlvbiAhPT0gb3B0aW9ucy5jaGF0XG5cbiAgcmV0dXJuIChcbiAgICBzZWxlY3RvciAmJlxuICAgIFJlYWN0RE9NLmNyZWF0ZVBvcnRhbChcbiAgICAgIDxTQ0NBSU1XcmFwcGVyIGV4cGFuZGVkPXtleHBhbmRlZH0+XG4gICAgICAgIDxTQ0NBSU1Db250ZW50V3JhcHBlciBleHBhbmRlZD17ZXhwYW5kZWR9PlxuICAgICAgICAgIHt2YWxpZGF0ZUFjY2Vzc0J5RmVhdHVyZShzZWN0aW9uKSAmJiAoXG4gICAgICAgICAgICA8U2lkZWJhclxuICAgICAgICAgICAgICBvbkdvVG9DaGF0PXtnb1RvQ2hhdH1cbiAgICAgICAgICAgICAgb25FcnJvcj17KCkgPT4gc2V0U2lkZWJhckhhc0Vycm9yKHRydWUpfVxuICAgICAgICAgICAgICBoYW5kbGVHb1RvSG9tZT17aGFuZGxlR29Ib21lfVxuICAgICAgICAgICAgICBzaG93TmV3Q2hhdD17c2hvd05ld0NoYXR9XG4gICAgICAgICAgICAgIHJlZmV0Y2hDaGF0cz17cmVmZXRjaENoYXRzfVxuICAgICAgICAgICAgICBoYW5kbGVTZXRSZWZldGNoQ2hhdHM9e3NldFJlZmV0Y2hDaGF0c31cbiAgICAgICAgICAgICAgaGFzRXJyb3I9e3NpZGViYXJIYXNFcnJvcn1cbiAgICAgICAgICAgICAgcmVzZXRTZWxlY3RlZENoYXRSZWY9e3Jlc2V0U2VsZWN0ZWRDaGF0UmVmfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIDxTQ0NBSU1Db250ZW50IGV4cGFuZGVkPXtleHBhbmRlZH0+XG4gICAgICAgICAgICB7LyogSGVhZGVyICovfVxuICAgICAgICAgICAgPENoYXRBSU1vZGFsSGVhZGVyXG4gICAgICAgICAgICAgIGV4cGFuZGVkPXtleHBhbmRlZH1cbiAgICAgICAgICAgICAgc2V0RXhwYW5kZWQ9e3NldEV4cGFuZGVkfVxuICAgICAgICAgICAgICBoYW5kbGVDbG9zZT17aGFuZGxlQ2xvc2V9XG4gICAgICAgICAgICAgIGFnZW50cz17YWdlbnRzLmRhdGF9XG4gICAgICAgICAgICAgIGhhc0Vycm9yPXshIWFnZW50RXJyb3J9XG4gICAgICAgICAgICAgIGxvYWRpbmc9e2xvYWRpbmd9XG4gICAgICAgICAgICAgIGxvYWRpbmdNb3JlPXtsb2FkaW5nTW9yZX1cbiAgICAgICAgICAgICAgaGFzTW9yZT17YWdlbnRzLmhhc19tb3JlfVxuICAgICAgICAgICAgICBoYW5kbGVSZXNldENoYXQ9e2hhbmRsZVJlc2V0Q2hhdH1cbiAgICAgICAgICAgICAgb25BZ2VudFVwZGF0ZT17dXBkYXRlQWdlbnRGYXZvcml0ZX1cbiAgICAgICAgICAgICAgbG9hZE1vcmVBZ2VudHM9e2xvYWRNb3JlQWdlbnRzfVxuICAgICAgICAgICAgICBzb3J0QWdlbnRzTGlzdD17c29ydEFnZW50c0xpc3R9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgey8qIENvbnRlbnQgKi99XG5cbiAgICAgICAgICAgIHtoYXNFcnJvciA/IChcbiAgICAgICAgICAgICAgPE1BSUFFcnJvciAvPlxuICAgICAgICAgICAgKSA6IHZhbGlkYXRlQWNjZXNzQnlGZWF0dXJlKHNlY3Rpb24pID8gKFxuICAgICAgICAgICAgICA8Q2hhdEFJQ29udGVudFxuICAgICAgICAgICAgICAgIGN1cnJlbnRPcHRpb249e2NvbXB1dGVkQ3VycmVudE9wdGlvbn1cbiAgICAgICAgICAgICAgICBoYW5kbGVycz17eyAuLi5oYW5kbGVycywgY2hhdDogc3RhcnRDaGF0LCBob21lOiBoYW5kbGVycy5ob21lLCBoYW5kbGVHb0hvbWUgfX1cbiAgICAgICAgICAgICAgICBvbkVycm9yPXsoKSA9PiBzZXRIYXNFcnJvcih0cnVlKX1cbiAgICAgICAgICAgICAgICByZWZzPXt7IHVzZXJJbml0aWFsTWVzc2FnZSwgaW5pdGlhbENoYXRJZCB9fVxuICAgICAgICAgICAgICAgIG9uU2VuZE1lc3NhZ2VSZWFkeT17aGFuZGxlU2VuZE1lc3NhZ2VSZWFkeX1cbiAgICAgICAgICAgICAgICBleHBhbmRlZD17ZXhwYW5kZWR9XG4gICAgICAgICAgICAgICAgaGFzTm9BZ2VudHM9e2hhc05vQWdlbnRzfVxuICAgICAgICAgICAgICAgIGFnZW50cz17YWdlbnRzLmRhdGF9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICA8UHJvamVjdFN1bW1hcnlDb250ZW50IG9uUmVzdGFydFN1bW1hcnk9e2hhbmRsZXJzLmhvbWV9IC8+XG4gICAgICAgICAgICApfVxuXG4gICAgICAgICAgICB7LyogRm9vdGVyICovfVxuICAgICAgICAgICAgeygoY29tcHV0ZWRDdXJyZW50T3B0aW9uID09PSBvcHRpb25zLmhvbWUgJiYgISFhZ2VudHM/LmRhdGE/Lmxlbmd0aCkgfHxcbiAgICAgICAgICAgICAgY29tcHV0ZWRDdXJyZW50T3B0aW9uID09PSBvcHRpb25zLmNoYXQpICYmXG4gICAgICAgICAgICAgICFoYXNFcnJvciAmJlxuICAgICAgICAgICAgICAhbG9hZGluZyAmJlxuICAgICAgICAgICAgICB2YWxpZGF0ZUFjY2Vzc0J5RmVhdHVyZShzZWN0aW9uKSAmJiAoXG4gICAgICAgICAgICAgICAgPENoYXRBaU1vZGFsRm9vdGVyXG4gICAgICAgICAgICAgICAgICBhZ2VudD17YWdlbnR9XG4gICAgICAgICAgICAgICAgICBoYW5kbGVTZW5kTWVzc2FnZT17aGFuZGxlU2VuZE1lc3NhZ2V9XG4gICAgICAgICAgICAgICAgICBoYW5kbGVTdG9wR2VuZXJhdGlvbj17c3RvcEdlbmVyYXRpb25GdW5jdGlvbn1cbiAgICAgICAgICAgICAgICAgIGlzU3RyZWFtaW5nPXtpc1N0cmVhbWluZ31cbiAgICAgICAgICAgICAgICAgIGlzV3JpdGluZz17aXNXcml0aW5nfVxuICAgICAgICAgICAgICAgICAgY2hhdElkPXtpbml0aWFsQ2hhdElkfVxuICAgICAgICAgICAgICAgICAgbmV3Q2hhdEtleT17bmV3Q2hhdEtleX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgIDwvU0NDQUlNQ29udGVudD5cbiAgICAgICAgPC9TQ0NBSU1Db250ZW50V3JhcHBlcj5cbiAgICAgICAge3VzZXJIYXNQZXJtaXNzaW9ucyAmJiAoXG4gICAgICAgICAgPEFibUFnZW50TW9kYWxcbiAgICAgICAgICAgIGFkZEFnZW50PXthZGRBZ2VudH1cbiAgICAgICAgICAgIHVwZGF0ZUFnZW50PXt1cGRhdGVBZ2VudH1cbiAgICAgICAgICAgIHJlbW92ZUFnZW50PXtyZW1vdmVBZ2VudH1cbiAgICAgICAgICAgIHVwZGF0ZUFnZW50RmF2b3JpdGU9e3VwZGF0ZUFnZW50RmF2b3JpdGV9XG4gICAgICAgICAgICBzZWxlY3RGaXJzdEFnZW50PXtzZWxlY3RGaXJzdEFnZW50fVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICAgIDxTbmFja2JhciAvPlxuICAgICAgPC9TQ0NBSU1XcmFwcGVyPixcbiAgICAgIHNlbGVjdG9yXG4gICAgKVxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBb0JBLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxRQUFRLEVBQUVDLE1BQU0sRUFBRUMsU0FBUyxRQUFRLE9BQU87QUFDcEYsT0FBT0MsUUFBUSxNQUFNLFdBQVc7QUFDaEMsT0FBT0MsTUFBTSxNQUFNLFFBQVE7QUFDM0IsU0FBU0MsY0FBYyxRQUFRLGVBQWU7QUFDOUMsU0FBU0MsT0FBTyxRQUFRLDJCQUEyQjtBQUNuRCxTQUFTQyxTQUFTLFFBQVEsdUJBQXVCO0FBRWpELFNBQVNDLGFBQWEsUUFBUSxrQkFBa0I7QUFDaEQsU0FBU0Ms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RUFBRVEsUUFBUSxDQUFDUixJQUFJO1lBQUV5QixZQUFZLEVBQVpBO1VBQVksRUFBRztVQUM5RXlFLE9BQU8sRUFBRSxTQUFUQSxPQUFPQSxDQUFBO1lBQUEsT0FBUTNGLFdBQVcsQ0FBQyxJQUFJLENBQUM7VUFBQSxDQUFDO1VBQ2pDaUcsSUFBSSxFQUFFO1lBQUV2SSxrQkFBa0IsRUFBbEJBLGtCQUFrQjtZQUFFSSxhQUFhLEVBQWJBO1VBQWMsQ0FBRTtVQUM1Q29JLGtCQUFrQixFQUFFaEMsc0JBQXVCO1VBQzNDaEIsUUFBUSxFQUFFQSxRQUFTO1VBQ25CMUIsV0FBVyxFQUFFQSxXQUFZO1VBQ3pCTCxNQUFNLEVBQUVBLE1BQU0sQ0FBQ3dDO1FBQUssQ0FDckIsQ0FBQyxnQkFFRjFILElBQUEsQ0FBQ1QscUJBQXFCO1VBQUMySyxnQkFBZ0IsRUFBRWxHLFFBQVEsQ0FBQ1I7UUFBSyxDQUFFLENBQzFELEVBR0EsQ0FBRThDLHFCQUFxQixLQUFLckgsT0FBTyxDQUFDdUUsSUFBSSxJQUFJLENBQUMsRUFBQzBCLE1BQU0sYUFBTkEsTUFBTSxnQkFBQXBFLFlBQUEsR0FBTm9FLE1BQU0sQ0FBRXdDLElBQUksY0FBQTVHLFlBQUEsZUFBWkEsWUFBQSxDQUFjNkgsTUFBTSxLQUNqRXJDLHFCQUFxQixLQUFLckgsT0FBTyxDQUFDdUgsSUFBSSxLQUN0QyxDQUFDMUMsUUFBUSxJQUNULENBQUNxQixPQUFPLElBQ1IvRSx1QkFBdUIsQ0FBQ0MsT0FBTyxDQUFDLGlCQUM5QkwsSUFBQSxDQUFDSCxpQkFBaUI7VUFDaEI4RSxLQUFLLEVBQUVBLEtBQU07VUFDYjJELGlCQUFpQixFQUFFQSxpQkFBa0I7VUFDckM2QixvQkFBb0IsRUFBRTFILHNCQUF1QjtVQUM3Q0ksV0FBVyxFQUFFQSxXQUFZO1VBQ3pCSSxTQUFTLEVBQUVBLFNBQVU7VUFDckJtSCxNQUFNLEVBQUV2SSxhQUFjO1VBQ3RCSSxVQUFVLEVBQUVBO1FBQVcsQ0FDeEIsQ0FDRjtNQUFBLENBQ1UsQ0FBQztJQUFBLENBQ0ksQ0FBQyxFQUN0QmdFLGtCQUFrQixpQkFDakJqRyxJQUFBLENBQUNSLGFBQWE7TUFDWmtHLFFBQVEsRUFBRUEsUUFBUztNQUNuQkUsV0FBVyxFQUFFQSxXQUFZO01BQ3pCRCxXQUFXLEVBQUVBLFdBQVk7TUFDekJFLG1CQUFtQixFQUFFQSxtQkFBb0I7TUFDekNDLGdCQUFnQixFQUFFQTtJQUFpQixDQUNwQyxDQUNGLGVBQ0Q5RixJQUFBLENBQUNWLFFBQVEsSUFBRSxDQUFDO0VBQUEsQ0FDQyxDQUFDLEVBQ2hCcUgsUUFDRixDQUFDO0FBRUwsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
325
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VDYWxsYmFjayIsInVzZU1lbW8iLCJ1c2VTdGF0ZSIsInVzZVJlZiIsInVzZUVmZmVjdCIsIlJlYWN0RE9NIiwibW9tZW50IiwidXNlVHJhbnNsYXRpb24iLCJ1c2VVc2VyIiwiTUFJQUVycm9yIiwiQ2hhdEFJQ29udGVudCIsImJ1aWxkSGFuZGxlcnMiLCJvcHRpb25zIiwiU2lkZWJhciIsInVzZUdldEFnZW50cyIsInVzZUdsb2JhbENvbnRleHQiLCJDaGF0QUlNb2RhbEhlYWRlciIsIlNuYWNrYmFyIiwiUHJvamVjdFN1bW1hcnlDb250ZW50IiwiQWJtQWdlbnRNb2RhbCIsIlNFQ1RJT05TIiwiU0NDQUlNQ29udGVudCIsIlNDQ0FJTUNvbnRlbnRXcmFwcGVyIiwiU0NDQUlNV3JhcHBlciIsIkNoYXRBaU1vZGFsRm9vdGVyIiwidmFsaWRhdGVJc01haWEiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiSURfTU9EQUxfQ0hBVF9BR0VOVCIsInZhbGlkYXRlQWNjZXNzQnlGZWF0dXJlIiwic2VjdGlvbiIsIndpbmRvdyIsIk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFMiLCJNQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1MiLCJDaGF0QUlNb2RhbCIsIl9yZWYiLCJfdXNlciRwZXJtaXNzaW9ucyIsIl91c2VyJHBlcm1pc3Npb25zMiIsIl91c2VyJHBlcm1pc3Npb25zMyIsIl9hZ2VudHMkZGF0YSIsImhhbmRsZUNsb3NlIiwidXNlciIsIl91c2VUcmFuc2xhdGlvbiIsImFibUFnZW50IiwiaTE4biIsIl91c2VTdGF0ZSIsIm1lc3NhZ2UiLCJhdHRhY2htZW50cyIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsInVzZXJJbml0aWFsTWVzc2FnZSIsInNldFVzZXJJbml0aWFsTWVzc2FnZSIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiaW5pdGlhbENoYXRJZCIsInNldEluaXRpYWxDaGF0SWQiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsIm5ld0NoYXRLZXkiLCJzZXROZXdDaGF0S2V5IiwiX3VzZVN0YXRlNyIsIl91c2VTdGF0ZTgiLCJzZW5kTWVzc2FnZUZ1bmN0aW9uIiwic2V0U2VuZE1lc3NhZ2VGdW5jdGlvbiIsIl91c2VTdGF0ZTkiLCJfdXNlU3RhdGUwIiwic3RvcEdlbmVyYXRpb25GdW5jdGlvbiIsInNldFN0b3BHZW5lcmF0aW9uRnVuY3Rpb24iLCJfdXNlU3RhdGUxIiwiX3VzZVN0YXRlMTAiLCJpc1N0cmVhbWluZyIsInNldElzU3RyZWFtaW5nIiwiX3VzZVN0YXRlMTEiLCJfdXNlU3RhdGUxMiIsImlzV3JpdGluZyIsInNldElzV3JpdGluZyIsIl91c2VTdGF0ZTEzIiwiX3VzZVN0YXRlMTQiLCJyZWZldGNoQ2hhdHMiLCJzZXRSZWZldGNoQ2hhdHMiLCJfdXNlU3RhdGUxNSIsImhvbWUiLCJfdXNlU3RhdGUxNiIsImN1cnJlbnRPcHRpb24iLCJzZXRDdXJyZW50T3B0aW9uIiwiX3VzZVN0YXRlMTciLCJfdXNlU3RhdGUxOCIsImhhc0Vycm9yIiwic2V0SGFzRXJyb3IiLCJoYW5kbGVycyIsIl91c2VTdGF0ZTE5IiwiX3VzZVN0YXRlMjAiLCJzaWRlYmFySGFzRXJyb3IiLCJzZXRTaWRlYmFySGFzRXJyb3IiLCJyZXNldFNlbGVjdGVkQ2hhdFJlZiIsImxhbmciLCJsYW5ndWFnZSIsImxvY2FsZSIsIl91c2VHbG9iYWxDb250ZXh0Iiwic2VsZWN0QWdlbnQiLCJhZ2VudCIsInByb2plY3QiLCJjbGllbnQiLCJ0b2dnbGVXZWJTZWFyY2giLCJpc1dlYlNlYXJjaEFjdGl2ZSIsInNldENoaXBzUHJvamVjdCIsInNldENsaWVudCIsIl91c2VHZXRBZ2VudHMiLCJoYW5kbGVHb0hvbWUiLCJhZ2VudHMiLCJsb2FkaW5nIiwibG9hZGluZ01vcmUiLCJhZ2VudEVycm9yIiwiZXJyb3IiLCJoYXNOb0FnZW50cyIsImhhbmRsZUdldEFnZW50cyIsImxvYWRNb3JlQWdlbnRzIiwiYWRkQWdlbnQiLCJyZW1vdmVBZ2VudCIsInVwZGF0ZUFnZW50IiwidXBkYXRlQWdlbnRGYXZvcml0ZSIsInNlbGVjdEZpcnN0QWdlbnQiLCJzb3J0QWdlbnRzTGlzdCIsImlzTUFJQSIsInVzZXJIYXNQZXJtaXNzaW9ucyIsInBlcm1pc3Npb25zIiwiYWlfYWdlbnRzIiwiY3JlYXRlIiwiZWRpdCIsImNvbXB1dGVkQ3VycmVudE9wdGlvbiIsImlzUHJvamVjdFNwZWNpYWxpc3QiLCJlbnRpdHkiLCJpc0NsaWVudFNwZWNpYWxpc3QiLCJzaG91bGRTaG93UHJvamVjdFNlbGVjdG9yIiwiY2hhdCIsInNob3VsZFNob3dDbGllbnRTZWxlY3RvciIsInByb2plY3RTZWxlY3RvciIsImNsaWVudFNlbGVjdG9yIiwiYWdlbnRzRmV0Y2hlZFJlZiIsInNlbGVjdG9yIiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwiY29uY2F0IiwiX3VzZVN0YXRlMjEiLCJfdXNlU3RhdGUyMiIsImV4cGFuZGVkIiwic2V0RXhwYW5kZWQiLCJzdGFydENoYXQiLCJmYXFJZCIsInByZXYiLCJfb2JqZWN0U3ByZWFkIiwiZ29Ub0NoYXQiLCJzZXNzaW9uRXh0ZXJuYWxJZCIsInNlbGVjdGVkQWdlbnQiLCJkYXRhIiwiZmluZCIsImFnZW50SXRlbSIsImlkIiwiYWdlbnRJZCIsImRpc3BhdGNoRXZlbnQiLCJDdXN0b21FdmVudCIsImhhbmRsZVNlbmRNZXNzYWdlUmVhZHkiLCJzZW5kTWVzc2FnZSIsInN0b3BHZW5lcmF0aW9uIiwic3RyZWFtaW5nIiwid3JpdGluZyIsImhhbmRsZVNlbmRNZXNzYWdlIiwiaXNfZGVsZXRlZCIsImhhc19ub3RfcGVybWlzc2lvbnMiLCJoYXNfbm90X2FjY2VzcyIsInByb2plY3RfZGVsZXRlZCIsImxlbmd0aCIsImN1cnJlbnQiLCJoYW5kbGVSZXNldENoYXQiLCJfYXN5bmNUb0dlbmVyYXRvciIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJtYXJrIiwiX2NhbGxlZSIsIndyYXAiLCJfY29udGV4dCIsIm5leHQiLCJzdG9wIiwic2hvd05ld0NoYXQiLCJjcmVhdGVQb3J0YWwiLCJjaGlsZHJlbiIsIm9uR29Ub0NoYXQiLCJvbkVycm9yIiwiaGFuZGxlR29Ub0hvbWUiLCJoYW5kbGVTZXRSZWZldGNoQ2hhdHMiLCJoYXNNb3JlIiwiaGFzX21vcmUiLCJvbkFnZW50VXBkYXRlIiwicmVmcyIsIm9uU2VuZE1lc3NhZ2VSZWFkeSIsIm9uUmVzdGFydFN1bW1hcnkiLCJoYW5kbGVTdG9wR2VuZXJhdGlvbiIsImNoYXRJZCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0QUlNb2RhbC9DaGF0QUlNb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tbmVzdGVkLXRlcm5hcnkgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9pbmRlbnQgKi9cbi8qIGVzbGludC1kaXNhYmxlIHJlYWN0L2pzeC1uby11c2VsZXNzLWZyYWdtZW50ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG4vKiBlc2xpbnQtZGlzYWJsZSByZWFjdC9uby1hcnJheS1pbmRleC1rZXkgKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L2NsaWNrLWV2ZW50cy1oYXZlLWtleS1ldmVudHMgKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L25vLXN0YXRpYy1lbGVtZW50LWludGVyYWN0aW9ucyAqL1xuLyogZXNsaW50LWRpc2FibGUgcmVhY3QvZnVuY3Rpb24tY29tcG9uZW50LWRlZmluaXRpb24gKi9cbi8qIGVzbGludC1kaXNhYmxlIHJlYWN0L3JlcXVpcmUtZGVmYXVsdC1wcm9wcyAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuaW1wb3J0IHsgUmVmT2JqZWN0LCB1c2VDYWxsYmFjaywgdXNlTWVtbywgdXNlU3RhdGUsIHVzZVJlZiwgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgUmVhY3RET00gZnJvbSAncmVhY3QtZG9tJ1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnXG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ3JlYWN0LWkxOG5leHQnXG5pbXBvcnQgeyB1c2VVc2VyIH0gZnJvbSAnLi4vLi4vLi4vY29udGV4dC9jb3ItdXNlcidcbmltcG9ydCB7IE1BSUFFcnJvciB9IGZyb20gJy4uLy4uL2F0b21zL01BSUFFcnJvcidcblxuaW1wb3J0IHsgQ2hhdEFJQ29udGVudCB9IGZyb20gJy4uL0NoYXRBSUNvbnRlbnQnXG5pbXBvcnQgeyBidWlsZEhhbmRsZXJzLCBvcHRpb25zIH0gZnJvbSAnLi9jb25zdGFudHMnXG5pbXBvcnQgeyBTaWRlYmFyIH0gZnJvbSAnLi4vU2lkZWJhcidcbmltcG9ydCB7IHVzZUdldEFnZW50cyB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL21haWEvQWdlbnRzL2dldEFnZW50cydcbmltcG9ydCB7IHVzZUdsb2JhbENvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9jb250ZXh0L2dsb2JhbC1jb250ZXh0J1xuaW1wb3J0IHsgQXR0YWNobWVudEZpbGUgfSBmcm9tICcuLi9DaGF0Rm9vdGVyL0NoYXRGb290ZXInXG5pbXBvcnQgeyBDaGF0QUlNb2RhbEhlYWRlciB9IGZyb20gJy4vY29tcG9uZW50cy9DaGF0QWlNb2RhbEhlYWRlci9DaGF0QWlNb2RhbEhlYWRlcidcbmltcG9ydCB7IFNuYWNrYmFyIH0gZnJvbSAnLi4vLi4vb3JnYW5pc21zL1NuYWNrQmFyL1NuYWNrYmFyJ1xuaW1wb3J0IHsgUHJvamVjdFN1bW1hcnlDb250ZW50IH0gZnJvbSAnLi4vUHJvamVjdFN1bW1hcnlDb250ZW50J1xuaW1wb3J0IHsgQWJtQWdlbnRNb2RhbCB9IGZyb20gJy4uLy4uL29yZ2FuaXNtcy9BYm1BZ2VudE1vZGFsL0FibUFnZW50TW9kYWwnXG5pbXBvcnQgeyBTRUNUSU9OUyB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9jb25maWcnXG5pbXBvcnQgeyBTQ0NBSU1Db250ZW50LCBTQ0NBSU1Db250ZW50V3JhcHBlciwgU0NDQUlNV3JhcHBlciB9IGZyb20gJy4vQ2hhdEFJTW9kYWwuc3R5bGVzJ1xuaW1wb3J0IHsgQ2hhdEFpTW9kYWxGb290ZXIgfSBmcm9tICcuL2NvbXBvbmVudHMvQ2hhdEFpTW9kYWxGb290ZXInXG5pbXBvcnQgeyB2YWxpZGF0ZUlzTWFpYSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxzL3ZhbGlkYXRlSXNNYWlhJ1xuaW1wb3J0IHsgQWdlbnQgfSBmcm9tICcuLi8uLi8uLi90eXBlcy9hZ2VudCdcblxudHlwZSBDaGF0QUlNb2RhbFByb3BzID0ge1xuICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgaGFuZGxlQ2xvc2U/OiAoKSA9PiB2b2lkXG4gIHBhcmVudFJlZj86IFJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD5cbn1cblxuZXhwb3J0IGNvbnN0IElEX01PREFMX0NIQVRfQUdFTlQgPSAnbW9kYWxzLXBvcnRhbC1tYWlhLWNoYXQtYWdlbnQnXG5cbmNvbnN0IHZhbGlkYXRlQWNjZXNzQnlGZWF0dXJlID0gKHNlY3Rpb246IHN0cmluZykgPT4ge1xuICBpZiAoc2VjdGlvbiA9PT0gJ2hlYWRlcicgJiYgKHdpbmRvdy5NQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1NfTVVMVElfQUdFTlRTIHx8IHdpbmRvdy5NQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1MpKSB7XG4gICAgcmV0dXJuIHRydWVcbiAgfVxuICBpZiAoKHNlY3Rpb24gPT09ICdwcm9qZWN0JyB8fCBzZWN0aW9uID09PSAnY2xpZW50JykgJiYgd2luZG93Lk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTUykge1xuICAgIHJldHVybiB0cnVlXG4gIH1cbiAgcmV0dXJuIGZhbHNlXG59XG5cbmV4cG9ydCBjb25zdCBDaGF0QUlNb2RhbCA9ICh7IGhhbmRsZUNsb3NlIH06IENoYXRBSU1vZGFsUHJvcHMpID0+IHtcbiAgY29uc3QgdXNlciA9IHVzZVVzZXIoKVxuICBjb25zdCB7IGkxOG4gfSA9IHVzZVRyYW5zbGF0aW9uKFtTRUNUSU9OUy5hYm1BZ2VudF0pXG4gIGNvbnN0IFt1c2VySW5pdGlhbE1lc3NhZ2UsIHNldFVzZXJJbml0aWFsTWVzc2FnZV0gPSB1c2VTdGF0ZTx7XG4gICAgbWVzc2FnZTogc3RyaW5nXG4gICAgYXR0YWNobWVudHM6IEF0dGFjaG1lbnRGaWxlW11cbiAgICBmYXFJZD86IHN0cmluZ1xuICB9Pih7XG4gICAgbWVzc2FnZTogJycsXG4gICAgYXR0YWNobWVudHM6IFtdLFxuICB9KVxuICBjb25zdCBbaW5pdGlhbENoYXRJZCwgc2V0SW5pdGlhbENoYXRJZF0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKVxuICBjb25zdCBbbmV3Q2hhdEtleSwgc2V0TmV3Q2hhdEtleV0gPSB1c2VTdGF0ZSgwKVxuICBjb25zdCBbc2VuZE1lc3NhZ2VGdW5jdGlvbiwgc2V0U2VuZE1lc3NhZ2VGdW5jdGlvbl0gPSB1c2VTdGF0ZTxcbiAgICAoKG1lc3NhZ2U6IHN0cmluZywgYXR0YWNobWVudHM/OiBBdHRhY2htZW50RmlsZVtdKSA9PiB2b2lkKSB8IG51bGxcbiAgPihudWxsKVxuICBjb25zdCBbc3RvcEdlbmVyYXRpb25GdW5jdGlvbiwgc2V0U3RvcEdlbmVyYXRpb25GdW5jdGlvbl0gPSB1c2VTdGF0ZTwoKCkgPT4gdm9pZCkgfCBudWxsPihudWxsKVxuICBjb25zdCBbaXNTdHJlYW1pbmcsIHNldElzU3RyZWFtaW5nXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbaXNXcml0aW5nLCBzZXRJc1dyaXRpbmddID0gdXNlU3RhdGUoZmFsc2UpXG5cbiAgY29uc3QgW3JlZmV0Y2hDaGF0cywgc2V0UmVmZXRjaENoYXRzXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbY3VycmVudE9wdGlvbiwgc2V0Q3VycmVudE9wdGlvbl0gPSB1c2VTdGF0ZShvcHRpb25zLmhvbWUpXG4gIGNvbnN0IFtoYXNFcnJvciwgc2V0SGFzRXJyb3JdID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IGhhbmRsZXJzID0gdXNlTWVtbygoKSA9PiBidWlsZEhhbmRsZXJzKHNldEN1cnJlbnRPcHRpb24sIHNldEhhc0Vycm9yKSwgW10pXG4gIGNvbnN0IFtzaWRlYmFySGFzRXJyb3IsIHNldFNpZGViYXJIYXNFcnJvcl0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgcmVzZXRTZWxlY3RlZENoYXRSZWYgPSB1c2VSZWY8KCgpID0+IHZvaWQpIHwgbnVsbD4obnVsbClcbiAgY29uc3QgbGFuZyA9IGkxOG4ubGFuZ3VhZ2UgPT09ICdicicgPyAncHQtYnInIDogaTE4bi5sYW5ndWFnZVxuXG4gIG1vbWVudC5sb2NhbGUobGFuZylcblxuICBjb25zdCB7XG4gICAgc2VsZWN0QWdlbnQsXG4gICAgc2VjdGlvbixcbiAgICBhZ2VudCxcbiAgICBwcm9qZWN0LFxuICAgIGNsaWVudCxcbiAgICB0b2dnbGVXZWJTZWFyY2gsXG4gICAgaXNXZWJTZWFyY2hBY3RpdmUsXG4gICAgc2V0Q2hpcHNQcm9qZWN0LFxuICAgIHNldENsaWVudCxcbiAgfSA9IHVzZUdsb2JhbENvbnRleHQoKVxuXG4gIGNvbnN0IHtcbiAgICBhZ2VudHMsXG4gICAgbG9hZGluZyxcbiAgICBsb2FkaW5nTW9yZSxcbiAgICBlcnJvcjogYWdlbnRFcnJvcixcbiAgICBoYXNOb0FnZW50cyxcbiAgICBoYW5kbGVHZXRBZ2VudHMsXG4gICAgbG9hZE1vcmVBZ2VudHMsXG4gICAgYWRkQWdlbnQsXG4gICAgcmVtb3ZlQWdlbnQsXG4gICAgdXBkYXRlQWdlbnQsXG4gICAgdXBkYXRlQWdlbnRGYXZvcml0ZSxcbiAgICBzZWxlY3RGaXJzdEFnZW50LFxuICAgIHNvcnRBZ2VudHNMaXN0LFxuICB9ID0gdXNlR2V0QWdlbnRzKHsgc2VsZWN0QWdlbnQsIHNlY3Rpb24sIGFnZW50LCBoYW5kbGVHb0hvbWU6IGhhbmRsZXJzLmhvbWUgfSlcblxuICBjb25zdCBpc01BSUEgPSB2YWxpZGF0ZUlzTWFpYShhZ2VudCBhcyBBZ2VudClcblxuICBjb25zdCB1c2VySGFzUGVybWlzc2lvbnMgPVxuICAgICh1c2VyPy5wZXJtaXNzaW9ucz8uYWlfYWdlbnRzPy5jcmVhdGUgfHxcbiAgICAgIHVzZXI/LnBlcm1pc3Npb25zPy5haV9hZ2VudHM/LmVkaXQgfHxcbiAgICAgIHVzZXI/LnBlcm1pc3Npb25zPy5haV9hZ2VudHM/LmRlbGV0ZSkgJiZcbiAgICB3aW5kb3cuTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UU1xuXG4gIGNvbnN0IGNvbXB1dGVkQ3VycmVudE9wdGlvbiA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGlzUHJvamVjdFNwZWNpYWxpc3QgPSBpc01BSUEgJiYgKGFnZW50Py5lbnRpdHkgPT09ICdwcm9qZWN0JyB8fCBhZ2VudD8uZW50aXR5ID09IG51bGwpXG4gICAgY29uc3QgaXNDbGllbnRTcGVjaWFsaXN0ID0gaXNNQUlBICYmIGFnZW50Py5lbnRpdHkgPT09ICdjbGllbnQnXG5cbiAgICBjb25zdCBzaG91bGRTaG93UHJvamVjdFNlbGVjdG9yID0gY3VycmVudE9wdGlvbiAhPT0gb3B0aW9ucy5jaGF0ICYmIGlzUHJvamVjdFNwZWNpYWxpc3QgJiYgIXByb2plY3RcbiAgICBjb25zdCBzaG91bGRTaG93Q2xpZW50U2VsZWN0b3IgPSBjdXJyZW50T3B0aW9uICE9PSBvcHRpb25zLmNoYXQgJiYgaXNDbGllbnRTcGVjaWFsaXN0ICYmICFjbGllbnRcblxuICAgIGlmIChzaG91bGRTaG93UHJvamVjdFNlbGVjdG9yKSB7XG4gICAgICByZXR1cm4gb3B0aW9ucy5wcm9qZWN0U2VsZWN0b3JcbiAgICB9XG4gICAgaWYgKHNob3VsZFNob3dDbGllbnRTZWxlY3Rvcikge1xuICAgICAgcmV0dXJuIG9wdGlvbnMuY2xpZW50U2VsZWN0b3JcbiAgICB9XG4gICAgcmV0dXJuIGN1cnJlbnRPcHRpb25cbiAgfSwgW2N1cnJlbnRPcHRpb24sIHByb2plY3QsIGNsaWVudCwgaXNNQUlBLCBhZ2VudD8uZW50aXR5XSlcblxuICBjb25zdCBhZ2VudHNGZXRjaGVkUmVmID0gdXNlUmVmKGZhbHNlKVxuXG4gIGNvbnN0IHNlbGVjdG9yID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgIyR7SURfTU9EQUxfQ0hBVF9BR0VOVH1gKVxuXG4gIGNvbnN0IFtleHBhbmRlZCwgc2V0RXhwYW5kZWRdID0gdXNlU3RhdGUoZmFsc2UpXG5cbiAgY29uc3Qgc3RhcnRDaGF0ID0gdXNlQ2FsbGJhY2soXG4gICAgKG1lc3NhZ2U/OiBzdHJpbmcsIGF0dGFjaG1lbnRzPzogQXR0YWNobWVudEZpbGVbXSwgZmFxSWQ/OiBzdHJpbmcpID0+IHtcbiAgICAgIGlmIChzaWRlYmFySGFzRXJyb3IpIHtcbiAgICAgICAgc2V0U2lkZWJhckhhc0Vycm9yKGZhbHNlKVxuICAgICAgfVxuICAgICAgc2V0SW5pdGlhbENoYXRJZChudWxsKVxuICAgICAgc2V0TmV3Q2hhdEtleShwcmV2ID0+IHByZXYgKyAxKVxuICAgICAgc2V0VXNlckluaXRpYWxNZXNzYWdlKHtcbiAgICAgICAgbWVzc2FnZTogbWVzc2FnZSB8fCAnJyxcbiAgICAgICAgYXR0YWNobWVudHM6IGF0dGFjaG1lbnRzIHx8IFtdLFxuICAgICAgICAuLi4oZmFxSWQgPyB7IGZhcUlkIH0gOiB7fSksXG4gICAgICB9KVxuICAgICAgaGFuZGxlcnMuY2hhdCgpXG4gICAgfSxcbiAgICBbaGFuZGxlcnMsIHNpZGViYXJIYXNFcnJvcl1cbiAgKVxuXG4gIGNvbnN0IGdvVG9DaGF0ID0gdXNlQ2FsbGJhY2soXG4gICAgKGNoYXQ6IGFueSkgPT4ge1xuICAgICAgc2V0VXNlckluaXRpYWxNZXNzYWdlKHsgbWVzc2FnZTogJycsIGF0dGFjaG1lbnRzOiBbXSB9KVxuICAgICAgc2V0SW5pdGlhbENoYXRJZChjaGF0LnNlc3Npb25FeHRlcm5hbElkKVxuICAgICAgY29uc3Qgc2VsZWN0ZWRBZ2VudCA9IGFnZW50cy5kYXRhLmZpbmQoYWdlbnRJdGVtID0+IGFnZW50SXRlbS5pZCA9PT0gY2hhdC5hZ2VudElkKVxuICAgICAgaWYgKHNlbGVjdGVkQWdlbnQpIHtcbiAgICAgICAgc2VsZWN0QWdlbnQoc2VsZWN0ZWRBZ2VudClcbiAgICAgIH1cbiAgICAgIC8vIERpc3BhdGNoIGV2ZW50IHRvIGNsZWFyIHRoZSBpbnB1dCB0ZXh0YXJlYVxuICAgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoJ2NoYXQtc2Vzc2lvbi1jaGFuZ2VkJykpXG4gICAgICBoYW5kbGVycy5jaGF0KClcbiAgICB9LFxuICAgIFtoYW5kbGVycywgYWdlbnRzLCBzZWxlY3RBZ2VudF1cbiAgKVxuXG4gIGNvbnN0IGhhbmRsZVNlbmRNZXNzYWdlUmVhZHkgPSB1c2VDYWxsYmFjayhcbiAgICAoXG4gICAgICBzZW5kTWVzc2FnZTogKG1lc3NhZ2U6IHN0cmluZywgYXR0YWNobWVudHM/OiBBdHRhY2htZW50RmlsZVtdKSA9PiB2b2lkLFxuICAgICAgc3RvcEdlbmVyYXRpb246ICgpID0+IHZvaWQsXG4gICAgICBzdHJlYW1pbmc6IGJvb2xlYW4sXG4gICAgICB3cml0aW5nOiBib29sZWFuXG4gICAgKSA9PiB7XG4gICAgICBzZXRTZW5kTWVzc2FnZUZ1bmN0aW9uKCgpID0+IHNlbmRNZXNzYWdlKVxuICAgICAgc2V0U3RvcEdlbmVyYXRpb25GdW5jdGlvbigoKSA9PiBzdG9wR2VuZXJhdGlvbilcbiAgICAgIHNldElzU3RyZWFtaW5nKHN0cmVhbWluZylcbiAgICAgIHNldElzV3JpdGluZyh3cml0aW5nKVxuICAgIH0sXG4gICAgW11cbiAgKVxuXG4gIGNvbnN0IGhhbmRsZVNlbmRNZXNzYWdlID0gdXNlQ2FsbGJhY2soXG4gICAgKG1lc3NhZ2U6IHN0cmluZywgYXR0YWNobWVudHM/OiBBdHRhY2htZW50RmlsZVtdKSA9PiB7XG4gICAgICBpZiAoc2lkZWJhckhhc0Vycm9yKSB7XG4gICAgICAgIHNldFNpZGViYXJIYXNFcnJvcihmYWxzZSlcbiAgICAgIH1cbiAgICAgIGlmIChzZW5kTWVzc2FnZUZ1bmN0aW9uICYmIGNvbXB1dGVkQ3VycmVudE9wdGlvbiA9PT0gb3B0aW9ucy5jaGF0KSB7XG4gICAgICAgIHNlbmRNZXNzYWdlRnVuY3Rpb24obWVzc2FnZSwgYXR0YWNobWVudHMpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdGFydENoYXQobWVzc2FnZSwgYXR0YWNobWVudHMpXG4gICAgICB9XG4gICAgfSxcbiAgICBbc2VuZE1lc3NhZ2VGdW5jdGlvbiwgc3RhcnRDaGF0LCBjb21wdXRlZEN1cnJlbnRPcHRpb24sIHNpZGViYXJIYXNFcnJvcl1cbiAgKVxuXG4gIGNvbnN0IGhhbmRsZUdvSG9tZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAvLyBTaSBlc3RhbW9zIGVuIHVuYSBjb252ZXJzYWNpw7NuIHkgdmFtb3MgYSBob21lLCByZXNldGVhciBpbml0aWFsQ2hhdElkIHkgaW5jcmVtZW50YXIgbmV3Q2hhdEtleVxuICAgIGlmIChjdXJyZW50T3B0aW9uID09PSBvcHRpb25zLmNoYXQpIHtcbiAgICAgIHNldEluaXRpYWxDaGF0SWQobnVsbClcbiAgICAgIHNldE5ld0NoYXRLZXkocHJldiA9PiBwcmV2ICsgMSlcbiAgICAgIC8vIE5vIGJvcnJhciBlbCBjbGllbnRlIHNpIGVzIGFnZW50ZSBkZSBjbGllbnRlcyAoaWd1YWwgcXVlIGVsIHByb3llY3RvIHNlIG1hbnRpZW5lKVxuICAgICAgaWYgKGFnZW50Py5lbnRpdHkgIT09ICdjbGllbnQnKSB7XG4gICAgICAgIHNldENsaWVudD8uKG51bGwpXG4gICAgICB9XG4gICAgfVxuICAgIGlmIChcbiAgICAgICghYWdlbnQgfHwgYWdlbnQ/LmlzX2RlbGV0ZWQgfHwgYWdlbnQ/Lmhhc19ub3RfcGVybWlzc2lvbnMgfHwgYWdlbnQ/Lmhhc19ub3RfYWNjZXNzIHx8IGFnZW50Py5wcm9qZWN0X2RlbGV0ZWQpICYmXG4gICAgICBhZ2VudHMuZGF0YS5sZW5ndGggPiAwXG4gICAgKSB7XG4gICAgICBzZWxlY3RBZ2VudChhZ2VudHMuZGF0YVswXSlcbiAgICB9XG4gICAgc2V0Q3VycmVudE9wdGlvbihvcHRpb25zLmhvbWUpXG4gICAgc2V0Q2hpcHNQcm9qZWN0KG51bGwpXG4gICAgc2V0SGFzRXJyb3IoZmFsc2UpXG4gICAgaXNXZWJTZWFyY2hBY3RpdmUgJiYgdG9nZ2xlV2ViU2VhcmNoKClcbiAgICBpZiAocmVzZXRTZWxlY3RlZENoYXRSZWYuY3VycmVudCkge1xuICAgICAgcmVzZXRTZWxlY3RlZENoYXRSZWYuY3VycmVudCgpXG4gICAgfVxuICB9LCBbXG4gICAgb3B0aW9ucy5ob21lLFxuICAgIG9wdGlvbnMuY2hhdCxcbiAgICBjdXJyZW50T3B0aW9uLFxuICAgIGlzV2ViU2VhcmNoQWN0aXZlLFxuICAgIHRvZ2dsZVdlYlNlYXJjaCxcbiAgICBhZ2VudCxcbiAgICBhZ2VudHMsXG4gICAgc2VsZWN0QWdlbnQsXG4gICAgc2V0Q2xpZW50LFxuICBdKVxuXG4gIGNvbnN0IGhhbmRsZVJlc2V0Q2hhdCA9IHVzZUNhbGxiYWNrKGFzeW5jICgpID0+IHtcbiAgICBzZXRVc2VySW5pdGlhbE1lc3NhZ2UoeyBtZXNzYWdlOiAnJywgYXR0YWNobWVudHM6IFtdIH0pXG4gICAgc2V0SW5pdGlhbENoYXRJZChudWxsKVxuICAgIC8vIERpc3BhdGNoIGV2ZW50IHRvIGNsZWFyIHRoZSBpbnB1dCB0ZXh0YXJlYVxuICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCdjaGF0LXNlc3Npb24tY2hhbmdlZCcpKVxuICAgIGhhbmRsZUdvSG9tZSgpXG4gIH0sIFtoYW5kbGVHb0hvbWVdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFhZ2VudHNGZXRjaGVkUmVmLmN1cnJlbnQpIHtcbiAgICAgIGFnZW50c0ZldGNoZWRSZWYuY3VycmVudCA9IHRydWVcbiAgICAgIGhhbmRsZUdldEFnZW50cygpXG4gICAgfVxuICB9LCBbaGFuZGxlR2V0QWdlbnRzXSlcblxuICBjb25zdCBzaG93TmV3Q2hhdCA9IGNvbXB1dGVkQ3VycmVudE9wdGlvbiAhPT0gb3B0aW9ucy5jaGF0XG5cbiAgcmV0dXJuIChcbiAgICBzZWxlY3RvciAmJlxuICAgIFJlYWN0RE9NLmNyZWF0ZVBvcnRhbChcbiAgICAgIDxTQ0NBSU1XcmFwcGVyIGV4cGFuZGVkPXtleHBhbmRlZH0+XG4gICAgICAgIDxTQ0NBSU1Db250ZW50V3JhcHBlciBleHBhbmRlZD17ZXhwYW5kZWR9PlxuICAgICAgICAgIHt2YWxpZGF0ZUFjY2Vzc0J5RmVhdHVyZShzZWN0aW9uKSAmJiAoXG4gICAgICAgICAgICA8U2lkZWJhclxuICAgICAgICAgICAgICBvbkdvVG9DaGF0PXtnb1RvQ2hhdH1cbiAgICAgICAgICAgICAgb25FcnJvcj17KCkgPT4gc2V0U2lkZWJhckhhc0Vycm9yKHRydWUpfVxuICAgICAgICAgICAgICBoYW5kbGVHb1RvSG9tZT17aGFuZGxlR29Ib21lfVxuICAgICAgICAgICAgICBzaG93TmV3Q2hhdD17c2hvd05ld0NoYXR9XG4gICAgICAgICAgICAgIHJlZmV0Y2hDaGF0cz17cmVmZXRjaENoYXRzfVxuICAgICAgICAgICAgICBoYW5kbGVTZXRSZWZldGNoQ2hhdHM9e3NldFJlZmV0Y2hDaGF0c31cbiAgICAgICAgICAgICAgaGFzRXJyb3I9e3NpZGViYXJIYXNFcnJvcn1cbiAgICAgICAgICAgICAgcmVzZXRTZWxlY3RlZENoYXRSZWY9e3Jlc2V0U2VsZWN0ZWRDaGF0UmVmfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIDxTQ0NBSU1Db250ZW50IGV4cGFuZGVkPXtleHBhbmRlZH0+XG4gICAgICAgICAgICB7LyogSGVhZGVyICovfVxuICAgICAgICAgICAgPENoYXRBSU1vZGFsSGVhZGVyXG4gICAgICAgICAgICAgIGV4cGFuZGVkPXtleHBhbmRlZH1cbiAgICAgICAgICAgICAgc2V0RXhwYW5kZWQ9e3NldEV4cGFuZGVkfVxuICAgICAgICAgICAgICBoYW5kbGVDbG9zZT17aGFuZGxlQ2xvc2V9XG4gICAgICAgICAgICAgIGFnZW50cz17YWdlbnRzLmRhdGF9XG4gICAgICAgICAgICAgIGhhc0Vycm9yPXshIWFnZW50RXJyb3J9XG4gICAgICAgICAgICAgIGxvYWRpbmc9e2xvYWRpbmd9XG4gICAgICAgICAgICAgIGxvYWRpbmdNb3JlPXtsb2FkaW5nTW9yZX1cbiAgICAgICAgICAgICAgaGFzTW9yZT17YWdlbnRzLmhhc19tb3JlfVxuICAgICAgICAgICAgICBoYW5kbGVSZXNldENoYXQ9e2hhbmRsZVJlc2V0Q2hhdH1cbiAgICAgICAgICAgICAgb25BZ2VudFVwZGF0ZT17dXBkYXRlQWdlbnRGYXZvcml0ZX1cbiAgICAgICAgICAgICAgbG9hZE1vcmVBZ2VudHM9e2xvYWRNb3JlQWdlbnRzfVxuICAgICAgICAgICAgICBzb3J0QWdlbnRzTGlzdD17c29ydEFnZW50c0xpc3R9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgey8qIENvbnRlbnQgKi99XG5cbiAgICAgICAgICAgIHtoYXNFcnJvciA/IChcbiAgICAgICAgICAgICAgPE1BSUFFcnJvciAvPlxuICAgICAgICAgICAgKSA6IHZhbGlkYXRlQWNjZXNzQnlGZWF0dXJlKHNlY3Rpb24pID8gKFxuICAgICAgICAgICAgICA8Q2hhdEFJQ29udGVudFxuICAgICAgICAgICAgICAgIGN1cnJlbnRPcHRpb249e2NvbXB1dGVkQ3VycmVudE9wdGlvbn1cbiAgICAgICAgICAgICAgICBoYW5kbGVycz17eyAuLi5oYW5kbGVycywgY2hhdDogc3RhcnRDaGF0LCBob21lOiBoYW5kbGVycy5ob21lLCBoYW5kbGVHb0hvbWUgfX1cbiAgICAgICAgICAgICAgICBvbkVycm9yPXsoKSA9PiBzZXRIYXNFcnJvcih0cnVlKX1cbiAgICAgICAgICAgICAgICByZWZzPXt7IHVzZXJJbml0aWFsTWVzc2FnZSwgaW5pdGlhbENoYXRJZCB9fVxuICAgICAgICAgICAgICAgIG9uU2VuZE1lc3NhZ2VSZWFkeT17aGFuZGxlU2VuZE1lc3NhZ2VSZWFkeX1cbiAgICAgICAgICAgICAgICBleHBhbmRlZD17ZXhwYW5kZWR9XG4gICAgICAgICAgICAgICAgaGFzTm9BZ2VudHM9e2hhc05vQWdlbnRzfVxuICAgICAgICAgICAgICAgIGFnZW50cz17YWdlbnRzLmRhdGF9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICA8UHJvamVjdFN1bW1hcnlDb250ZW50IG9uUmVzdGFydFN1bW1hcnk9e2hhbmRsZXJzLmhvbWV9IC8+XG4gICAgICAgICAgICApfVxuXG4gICAgICAgICAgICB7LyogRm9vdGVyICovfVxuICAgICAgICAgICAgeygoY29tcHV0ZWRDdXJyZW50T3B0aW9uID09PSBvcHRpb25zLmhvbWUgJiYgISFhZ2VudHM/LmRhdGE/Lmxlbmd0aCkgfHxcbiAgICAgICAgICAgICAgY29tcHV0ZWRDdXJyZW50T3B0aW9uID09PSBvcHRpb25zLmNoYXQpICYmXG4gICAgICAgICAgICAgICFoYXNFcnJvciAmJlxuICAgICAgICAgICAgICAhbG9hZGluZyAmJlxuICAgICAgICAgICAgICB2YWxpZGF0ZUFjY2Vzc0J5RmVhdHVyZShzZWN0aW9uKSAmJiAoXG4gICAgICAgICAgICAgICAgPENoYXRBaU1vZGFsRm9vdGVyXG4gICAgICAgICAgICAgICAgICBhZ2VudD17YWdlbnR9XG4gICAgICAgICAgICAgICAgICBoYW5kbGVTZW5kTWVzc2FnZT17aGFuZGxlU2VuZE1lc3NhZ2V9XG4gICAgICAgICAgICAgICAgICBoYW5kbGVTdG9wR2VuZXJhdGlvbj17c3RvcEdlbmVyYXRpb25GdW5jdGlvbn1cbiAgICAgICAgICAgICAgICAgIGlzU3RyZWFtaW5nPXtpc1N0cmVhbWluZ31cbiAgICAgICAgICAgICAgICAgIGlzV3JpdGluZz17aXNXcml0aW5nfVxuICAgICAgICAgICAgICAgICAgY2hhdElkPXtpbml0aWFsQ2hhdElkfVxuICAgICAgICAgICAgICAgICAgbmV3Q2hhdEtleT17bmV3Q2hhdEtleX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgIDwvU0NDQUlNQ29udGVudD5cbiAgICAgICAgPC9TQ0NBSU1Db250ZW50V3JhcHBlcj5cbiAgICAgICAge3VzZXJIYXNQZXJtaXNzaW9ucyAmJiAoXG4gICAgICAgICAgPEFibUFnZW50TW9kYWxcbiAgICAgICAgICAgIGFkZEFnZW50PXthZGRBZ2VudH1cbiAgICAgICAgICAgIHVwZGF0ZUFnZW50PXt1cGRhdGVBZ2VudH1cbiAgICAgICAgICAgIHJlbW92ZUFnZW50PXtyZW1vdmVBZ2VudH1cbiAgICAgICAgICAgIHVwZGF0ZUFnZW50RmF2b3JpdGU9e3VwZGF0ZUFnZW50RmF2b3JpdGV9XG4gICAgICAgICAgICBzZWxlY3RGaXJzdEFnZW50PXtzZWxlY3RGaXJzdEFnZW50fVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICAgIDxTbmFja2JhciAvPlxuICAgICAgPC9TQ0NBSU1XcmFwcGVyPixcbiAgICAgIHNlbGVjdG9yXG4gICAgKVxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBb0JBLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxRQUFRLEVBQUVDLE1BQU0sRUFBRUMsU0FBUyxRQUFRLE9BQU87QUFDcEYsT0FBT0MsUUFBUSxNQUFNLFdBQVc7QUFDaEMsT0FBT0MsTUFBTSxNQUFNLFFBQVE7QUFDM0IsU0FBU0MsY0FBYyxRQUFRLGVBQWU7QUFDOUMsU0FBU0MsT0FBTyxRQUFRLDJCQUEyQjtBQUNuRCxTQUFTQyxTQUFTLFFBQVEsdUJBQXVCO0FBRWpELFNBQVNDLGFBQWEsUUFBUSxrQkFBa0I7QUFDaEQsU0FBU0MsYUFBYSxFQUFFQyxPQUFPLFFBQVEsYUFBYTtBQUNwRCxTQUFTQyxPQUFPLFFBQVEsWUFBWTtBQUNwQyxTQUFTQyxZQUFZLFFBQVEseUNBQXlDO0FB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
|
|
@@ -20,7 +20,7 @@ export var SCCAIMContentWrapper = styled.div.withConfig({
|
|
|
20
20
|
export var SCCAIMContent = styled.div.withConfig({
|
|
21
21
|
displayName: "ChatAIModalstyles__SCCAIMContent",
|
|
22
22
|
componentId: "sc-7bgzxb-2"
|
|
23
|
-
})(["background:
|
|
23
|
+
})(["background:linear-gradient(180deg,#fde9fe 0%,#ffffff 100%);border-radius:inherit;border-top-left-radius:0;border-bottom-left-radius:0;display:flex;flex-direction:column;height:100%;overflow:hidden;transition:all 0.3s ease-out-in;", ""], function (_ref3) {
|
|
24
24
|
var expanded = _ref3.expanded;
|
|
25
25
|
return expanded ? {
|
|
26
26
|
flex: 1
|
|
@@ -28,4 +28,4 @@ export var SCCAIMContent = styled.div.withConfig({
|
|
|
28
28
|
width: '480px'
|
|
29
29
|
};
|
|
30
30
|
});
|
|
31
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJTQ0NBSU1XcmFwcGVyIiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJfcmVmIiwiZXhwYW5kZWQiLCJ3aWR0aCIsIlNDQ0FJTUNvbnRlbnRXcmFwcGVyIiwiX3JlZjIiLCJTQ0NBSU1Db250ZW50IiwiX3JlZjMiLCJmbGV4Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRBSU1vZGFsL0NoYXRBSU1vZGFsLnN0eWxlcy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cydcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTVdyYXBwZXIgPSBzdHlsZWQuZGl2PHsgZXhwYW5kZWQ6IGJvb2xlYW4gfT5gXG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDEwOTk7XG4gIGhlaWdodDogMTAwdmg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcGFkZGluZzogMTZweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1vdXQtaW47XG4gICR7KHsgZXhwYW5kZWQgfSkgPT4gKGV4cGFuZGVkID8geyB3aWR0aDogJzEwMCUnIH0gOiB7fSl9XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1Db250ZW50V3JhcHBlciA9IHN0eWxlZC5kaXY8eyBleHBhbmRlZDogYm9vbGVhbiB9PmBcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGJveC1zaGFkb3c6IDBweCA0cHggMTZweCByZ2JhKDE4LCAxOCwgMTgsIDAuMjQpO1xuICBmb250LWZhbWlseTogV29yayBTYW5zO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLW91dC1pbjtcbiAgJHsoeyBleHBhbmRlZCB9KSA9PiAoZXhwYW5kZWQgPyB7IHdpZHRoOiAnMTAwJScgfSA6IHt9KX1cbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUNvbnRlbnQgPSBzdHlsZWQuZGl2PHsgZXhwYW5kZWQ6IGJvb2xlYW4gfT5gXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNmZGU5ZmUgMCUsICNmZmZmZmYgMTAwJSk7XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQtaW47XG4gICR7KHsgZXhwYW5kZWQgfSkgPT4gKGV4cGFuZGVkID8geyBmbGV4OiAxIH0gOiB7IHdpZHRoOiAnNDgwcHgnIH0pfVxuYFxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxNQUFNLE1BQU0sbUJBQW1CO0FBRXRDLE9BQU8sSUFBTUMsYUFBYSxHQUFHRCxNQUFNLENBQUNFLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSwwS0FXbkMsVUFBQUMsSUFBQTtFQUFBLElBQUdDLFFBQVEsR0FBQUQsSUFBQSxDQUFSQyxRQUFRO0VBQUEsT0FBUUEsUUFBUSxHQUFHO0lBQUVDLEtBQUssRUFBRTtFQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7QUFBQSxDQUFDLENBQ3hEO0FBRUQsT0FBTyxJQUFNQyxvQkFBb0IsR0FBR1QsTUFBTSxDQUFDRSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsMEpBTzFDLFVBQUFLLEtBQUE7RUFBQSxJQUFHSCxRQUFRLEdBQUFHLEtBQUEsQ0FBUkgsUUFBUTtFQUFBLE9BQVFBLFFBQVEsR0FBRztJQUFFQyxLQUFLLEVBQUU7RUFBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQUEsQ0FBQyxDQUN4RDtBQUVELE9BQU8sSUFBTUcsYUFBYSxHQUFHWCxNQUFNLENBQUNFLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxrUEFVbkMsVUFBQU8sS0FBQTtFQUFBLElBQUdMLFFBQVEsR0FBQUssS0FBQSxDQUFSTCxRQUFRO0VBQUEsT0FBUUEsUUFBUSxHQUFHO0lBQUVNLElBQUksRUFBRTtFQUFFLENBQUMsR0FBRztJQUFFTCxLQUFLLEVBQUU7RUFBUSxDQUFDO0FBQUEsQ0FBQyxDQUNsRSIsImlnbm9yZUxpc3QiOltdfQ==
|