@projectcor/maia-components 2.11.67-0 → 2.11.67-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/atoms/ContextMentionChip/ContextMentionChip.styles.js +3 -7
- package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.js +2 -4
- package/lib/components/atoms/ContextMentionItem/ContextMentionItem.js +2 -29
- package/lib/components/atoms/ContextMentionItem/ContextMentionItem.styles.js +24 -33
- package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.js +6 -26
- package/lib/components/atoms/MAIAInput/MAIAInput.js +202 -40
- package/lib/components/atoms/MAIAInput/styles.js +64 -24
- package/lib/components/atoms/MAIAMessage/MAIAMessage.js +4 -2
- package/lib/components/atoms/MAIAViz/MAIAViz.js +97 -0
- package/lib/components/atoms/MAIAViz/MAIAViz.parse.js +131 -0
- package/lib/components/atoms/MAIAViz/MAIAViz.skeleton.js +40 -0
- package/lib/components/atoms/MAIAViz/MAIAViz.styles.js +8 -0
- package/lib/components/atoms/MAIAViz/MAIAViz.types.js +49 -0
- package/lib/components/atoms/MAIAViz/MAIAVizBar.js +123 -0
- package/lib/components/atoms/MAIAViz/MAIAVizDonut.js +111 -0
- package/lib/components/atoms/MAIAViz/MAIAVizKpis.js +34 -0
- package/lib/components/atoms/MAIAViz/README.md +85 -0
- package/lib/components/atoms/MAIAViz/index.js +2 -0
- package/lib/components/atoms/icons/index.js +1 -3
- package/lib/components/molecules/ChatAIContent/ChatAIContent.js +1 -14
- package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +12 -31
- package/lib/components/molecules/ChatAIModal/ChatAIModal.js +4 -34
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +2 -2
- package/lib/components/molecules/ChatAIModal/constants.js +2 -6
- package/lib/components/molecules/ContextMentionInput/ContextMentionInput.js +1 -3
- package/lib/components/molecules/Sidebar/Sidebar.js +4 -16
- package/lib/components/organisms/DeleteQuestionModal/DeleteQuestionModal.js +1 -8
- package/lib/constants/config.js +1 -4
- package/lib/constants/permissions/index.js +2 -2
- package/lib/constants/permissions/utils.js +1 -4
- package/lib/context/global-context.js +1 -1
- package/lib/dev/DevContextMentionInput.js +3 -1
- package/lib/hooks/useChatManager/useChatManager.js +20 -7
- package/lib/hooks/useChatMessages/useChatMessages.js +2 -4
- package/lib/hooks/useContextMentions.js +15 -60
- package/lib/hooks/useEntitySearch.js +108 -294
- package/lib/hooks/useMentionAllowedTypes.js +10 -45
- package/lib/hooks/useMentionPopover.js +48 -54
- package/lib/hooks/useOrchestratorStream/useOrchestratorStream.js +10 -7
- package/lib/hooks/useProjectSummaryConfig.js +32 -17
- package/lib/lang/br/index.js +11 -54
- package/lib/lang/en/index.js +11 -54
- package/lib/lang/es/index.js +11 -54
- package/lib/lang/fr/index.js +11 -54
- package/lib/services/maia/Agents/getAgents.js +8 -10
- package/lib/services/maia/Chats/getChatMessages.js +22 -4
- package/lib/services/maia/Orchestrator/orchestrator.js +9 -7
- package/lib/types/Chat.js +1 -1
- package/lib/types/Hitl.js +2 -0
- package/lib/types/contextMention.js +1 -1
- package/lib/utils/contextMentionIcons.js +1 -29
- package/lib/utils/maiaStreamdownRenderers.js +16 -0
- package/lib/utils/renderContextMentions.js +4 -9
- package/package.json +1 -1
- package/lib/components/atoms/icons/SkillIcon.js +0 -30
- package/lib/components/atoms/icons/SkillsNavIcon.js +0 -27
- package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.js +0 -357
- package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.styles.js +0 -145
- package/lib/components/molecules/ChatAIMySkills/index.js +0 -2
- package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.js +0 -160
- package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.styles.js +0 -34
- package/lib/components/organisms/AbmSkillGenerateModal/index.js +0 -2
- package/lib/components/organisms/AbmSkillModal/AbmSkillModal.js +0 -446
- package/lib/components/organisms/AbmSkillModal/AbmSkillModal.styles.js +0 -98
- package/lib/components/organisms/AbmSkillModal/index.js +0 -2
- package/lib/services/maia/Skills/createSkill.js +0 -39
- package/lib/services/maia/Skills/deleteSkill.js +0 -38
- package/lib/services/maia/Skills/generateSkill.js +0 -41
- package/lib/services/maia/Skills/getSkills.js +0 -90
- package/lib/services/maia/Skills/updateSkill.js +0 -39
- package/lib/types/skill.js +0 -2
- package/lib/utils/contextMentionTriggers.js +0 -53
- package/lib/utils/corConnectorMentionTypes.js +0 -37
- package/lib/utils/normalizeAgentConnectors.js +0 -32
|
@@ -22,7 +22,7 @@ import { EmptyHistoryIcon } from '../../atoms/icons/EmptyHistory';
|
|
|
22
22
|
import { useResizeListener } from '../../../hooks/useResize';
|
|
23
23
|
import { useChats } from '../../../hooks/useChats';
|
|
24
24
|
import { SidebarChatsSkeleton } from './Sidebar.skeleton';
|
|
25
|
-
import { ErrorState, MAIAIcon, MaiaStoreIcon, MyAgentsNavIcon,
|
|
25
|
+
import { ErrorState, MAIAIcon, MaiaStoreIcon, MyAgentsNavIcon, NewChat } from '../../atoms/icons';
|
|
26
26
|
import { EVENTS, useEvent } from '../../../hooks/useEvent';
|
|
27
27
|
import { useT } from '../../../hooks/useT';
|
|
28
28
|
import { OptionItem } from '../../atoms/CardMenu/CardMenu';
|
|
@@ -33,7 +33,6 @@ import { useUser } from '../../../context/cor-user';
|
|
|
33
33
|
import { FeedbackButton } from '../../atoms/FeedbackButton';
|
|
34
34
|
import { useGlobalContext } from '../../../context/global-context';
|
|
35
35
|
import { fetchMaia } from '../../../services/maia/client';
|
|
36
|
-
import { canAccessToSkills } from '../../../constants/permissions';
|
|
37
36
|
import { mapCORLang } from '../../../lang/utils';
|
|
38
37
|
import { formatChatListTitleMentions } from '../../../utils/renderContextMentions';
|
|
39
38
|
import { getAgentDisplayName } from '../../../utils/agentDisplayName';
|
|
@@ -200,7 +199,6 @@ export var Sidebar = function Sidebar(_ref3) {
|
|
|
200
199
|
} : _ref3$onError,
|
|
201
200
|
handleGoToHome = _ref3.handleGoToHome,
|
|
202
201
|
handleOpenMarketplace = _ref3.handleOpenMarketplace,
|
|
203
|
-
handleOpenSkills = _ref3.handleOpenSkills,
|
|
204
202
|
showNewChat = _ref3.showNewChat,
|
|
205
203
|
refetchChats = _ref3.refetchChats,
|
|
206
204
|
handleSetRefetchChats = _ref3.handleSetRefetchChats,
|
|
@@ -252,10 +250,9 @@ export var Sidebar = function Sidebar(_ref3) {
|
|
|
252
250
|
var canCreateAgents = !!(userPermissions !== null && userPermissions !== void 0 && userPermissions.create);
|
|
253
251
|
var hasMultiAgentsFeatureAccess = !!window.MAIA_CHAT_AI_FEATURE_ACCESS_MULTI_AGENTS;
|
|
254
252
|
var canViewAgents = !!(userPermissions !== null && userPermissions !== void 0 && userPermissions.view) && hasMultiAgentsFeatureAccess;
|
|
255
|
-
var canViewSkills = canViewAgents && canAccessToSkills();
|
|
256
253
|
var showMarketplaceSidebarButton = !!canCreateAgents && !!window.MAIA_MARKETPLACE_MAIAKER;
|
|
257
|
-
var agentNavButtonCount = (showMarketplaceSidebarButton ? 1 : 0) + (canViewAgents ? 1 : 0)
|
|
258
|
-
var showAgentsNavBlock = showMarketplaceSidebarButton || canViewAgents
|
|
254
|
+
var agentNavButtonCount = (showMarketplaceSidebarButton ? 1 : 0) + (canViewAgents ? 1 : 0);
|
|
255
|
+
var showAgentsNavBlock = showMarketplaceSidebarButton || canViewAgents;
|
|
259
256
|
useEffect(function () {
|
|
260
257
|
if (resetSelectedChatRef) {
|
|
261
258
|
resetSelectedChatRef.current = function () {
|
|
@@ -558,15 +555,6 @@ export var Sidebar = function Sidebar(_ref3) {
|
|
|
558
555
|
}), /*#__PURE__*/_jsx(SCSSidebarMaiakerNavLabel, {
|
|
559
556
|
children: t('conversations.myAgentsNav')
|
|
560
557
|
})]
|
|
561
|
-
}) : null, canViewSkills ? /*#__PURE__*/_jsxs(SCSSidebarMaiakerNavButton, {
|
|
562
|
-
type: "button",
|
|
563
|
-
onClick: handleOpenSkills,
|
|
564
|
-
$active: agentsNavActive === 'mySkills',
|
|
565
|
-
children: [/*#__PURE__*/_jsx(SkillsNavIcon, {
|
|
566
|
-
size: 16
|
|
567
|
-
}), /*#__PURE__*/_jsx(SCSSidebarMaiakerNavLabel, {
|
|
568
|
-
children: t('conversations.mySkillsNav')
|
|
569
|
-
})]
|
|
570
558
|
}) : null]
|
|
571
559
|
}) : null, /*#__PURE__*/_jsx(SCSSidebarConversationsHeading, {
|
|
572
560
|
children: t('conversations.title')
|
|
@@ -639,4 +627,4 @@ export var Sidebar = function Sidebar(_ref3) {
|
|
|
639
627
|
})]
|
|
640
628
|
});
|
|
641
629
|
};
|
|
642
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJ1c2VNZW1vIiwidXNlUmVmIiwidXNlU3RhdGUiLCJDaGV2cm9uRG91YmxlTGVmdCIsIkhpc3RvcnkiLCJDVUJ1dHRvbiIsIk1lbnVEb3RzIiwiUGVuY2lsIiwiVHJhc2giLCJUb29sdGlwIiwiRW1wdHlIaXN0b3J5SWNvbiIsInVzZVJlc2l6ZUxpc3RlbmVyIiwidXNlQ2hhdHMiLCJTaWRlYmFyQ2hhdHNTa2VsZXRvbiIsIkVycm9yU3RhdGUiLCJNQUlBSWNvbiIsIk1haWFTdG9yZUljb24iLCJNeUFnZW50c05hdkljb24iLCJTa2lsbHNOYXZJY29uIiwiTmV3Q2hhdCIsIkVWRU5UUyIsInVzZUV2ZW50IiwidXNlVCIsIk9wdGlvbkl0ZW0iLCJFZGl0UXVlc3Rpb25Nb2RhbCIsIkRlbGV0ZVF1ZXN0aW9uTW9kYWwiLCJFcnJvckljb24iLCJ1c2VVc2VyIiwiRmVlZGJhY2tCdXR0b24iLCJ1c2VHbG9iYWxDb250ZXh0IiwiZmV0Y2hNYWlhIiwiY2FuQWNjZXNzVG9Ta2lsbHMiLCJtYXBDT1JMYW5nIiwiZm9ybWF0Q2hhdExpc3RUaXRsZU1lbnRpb25zIiwiZ2V0QWdlbnREaXNwbGF5TmFtZSIsIlNDTEhDV3JhcHBlciIsIlNDTEhDV3JhcHBlckFnZW50IiwiU0NMSENXcmFwcGVyQWdlbnRUZXh0IiwiU0NMSENXcmFwcGVyQnV0dG9uQWN0aW9ucyIsIlNDTEhDV3JhcHBlckNvbnRlbnQiLCJTQ0xIQ1dyYXBwZXJUaXRsZSIsIlNDU1dyYXBwZXJDb2xsYXBzZWRCdXR0b24iLCJTQ1NXcmFwcGVyTmV3Q2hhdEljb24iLCJTQ1NXcmFwcGVyQWdlbnRzTmF2SWNvbiIsIlNDU1NpZGViYXJSb290IiwiU0NTU2lkZWJhclRvb2xiYXIiLCJTQ1NTaWRlYmFyQm9keSIsIlNDU1NpZGViYXJPcGVuUGFuZWwiLCJTQ1NTaWRlYmFyQWdlbnRzQmxvY2siLCJTQ1NTaWRlYmFyQWdlbnRzQWN0aW9ucyIsIlNDU1NpZGViYXJNYWlha2VyTmF2QnV0dG9uIiwiU0NTU2lkZWJhck1haWFrZXJOYXZMYWJlbCIsIlNDU1NpZGViYXJNYWlha2VyTmF2QmFkZ2VOZXciLCJTQ1NTaWRlYmFyQ29udmVyc2F0aW9uc0hlYWRpbmciLCJTQ1NTaWRlYmFyQ2hhdHNTY3JvbGwiLCJTQ1NTaWRlYmFyRXJyb3JTdGF0ZUNvbHVtbiIsIlNDU1NpZGViYXJFcnJvclN0YXRlVG9wIiwiU0NTU2lkZWJhckVycm9yQmFubmVyIiwiU0NTU2lkZWJhckVycm9yQmFubmVySWNvbldyYXAiLCJTQ1NTaWRlYmFyRXJyb3JCYW5uZXJNZXNzYWdlIiwiU0NTU2lkZWJhckxvYWRpbmdBcmVhIiwiU0NTU2lkZWJhckxvYWRNb3JlUm93IiwiU0NTU2lkZWJhckVtcHR5Q2hhdHMiLCJTQ1NTaWRlYmFyRW1wdHlDaGF0c1RleHQiLCJTQ1NTaWRlYmFyQ2hhdHNGb290ZXIiLCJTQ1NTaWRlYmFyRm9vdGVyQWN0aW9ucyIsIlNDU1NpZGViYXJDb2xsYXBzZWREaXZpZGVyIiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkZyYWdtZW50IiwiX0ZyYWdtZW50IiwiYWN0aW9ucyIsImVkaXQiLCJwcm9wcyIsIl9vYmplY3RTcHJlYWQiLCJkZWxldGUiLCJMaXN0SGlzdG9yeUNoYXQiLCJfcmVmIiwiY2hhdCIsIm9uQ2xpY2siLCJpc01vZGFsT3BlbiIsIm9uT3Blbk1vZGFsIiwib25DbG9zZU1vZGFsIiwiaGFuZGxlcnMiLCJpc1NlbGVjdGVkIiwiaW5kZXgiLCJ0ZXh0UmVmIiwiYWdlbnRSZWYiLCJkaXNwbGF5VGl0bGUiLCJ0aXRsZSIsImRpc3BsYXlBZ2VudCIsImFnZW50VHlwZSIsImFnZW50IiwiY29udGV4dE5hbWUiLCJwcm9qZWN0TmFtZSIsImNsaWVudE5hbWUiLCJfdXNlUmVzaXplTGlzdGVuZXIiLCJzaG93VG9vbHRpcCIsIl91c2VSZXNpemVMaXN0ZW5lcjIiLCJzaG93VG9vbHRpcEFnZW50IiwiX3VzZVQiLCJ0IiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwiYWN0aW9uIiwic2V0QWN0aW9uIiwibWVudUl0ZW1zIiwibGFiZWwiLCJvbkNsaWNrSXRlbSIsImNoYXRJZCIsIkljb24iLCJldmVudEtleSIsInBtQWlNZW51RWRpdCIsInBtQWlNZW51RGVsZXRlIiwiaGFuZGxlQ29uZmlybUFjdGlvbiIsImNoYXREYXRhIiwiaGFuZGxlVXBkYXRlQ2hhdCIsImhhbmRsZURlbGV0ZUNoYXQiLCJjaGlsZHJlbiIsImUiLCJzdG9wUHJvcGFnYXRpb24iLCIkaW5kZXgiLCJyZWYiLCJjb25jYXQiLCJ3aWR0aCIsImhlaWdodCIsInN0eWxlIiwiZm9udFNpemUiLCJlbW9qaSIsImljb25Pbmx5Iiwic2l6ZSIsInZhcmlhbnQiLCJldmVudCIsImlkIiwicG9zaXRpb24iLCJ0b3AiLCJyaWdodCIsImJhY2tncm91bmRDb2xvciIsInpJbmRleCIsImRpc3BsYXkiLCJmbGV4RGlyZWN0aW9uIiwiYm9yZGVyUmFkaXVzIiwiYm9yZGVyIiwibWluV2lkdGgiLCJtYXAiLCJfcmVmMiIsInNlc3Npb25FeHRlcm5hbElkIiwib25DbG9zZSIsImhhbmRsZVNldElzT3Blbk1vZGFsIiwiU2lkZWJhciIsIl9yZWYzIiwiX3VzZXIkcGVybWlzc2lvbnMiLCJvbkdvVG9DaGF0IiwiX3JlZjMkb25FcnJvciIsIm9uRXJyb3IiLCJoYW5kbGVHb1RvSG9tZSIsImhhbmRsZU9wZW5NYXJrZXRwbGFjZSIsImhhbmRsZU9wZW5Ta2lsbHMiLCJzaG93TmV3Q2hhdCIsInJlZmV0Y2hDaGF0cyIsImhhbmRsZVNldFJlZmV0Y2hDaGF0cyIsImhhc0Vycm9yIiwicmVzZXRTZWxlY3RlZENoYXRSZWYiLCJfcmVmMyRhZ2VudHNOYXZBY3RpdmUiLCJhZ2VudHNOYXZBY3RpdmUiLCJfdXNlVDIiLCJpMThuIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJpc09wZW4iLCJzZXRJc09wZW4iLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsImlzT3Blbk1vZGFsIiwic2V0SXNPcGVuTW9kYWwiLCJfdXNlU3RhdGU3IiwiX3VzZVN0YXRlOCIsInNlbGVjdGVkQ2hhdCIsInNldFNlbGVjdGVkQ2hhdCIsImNoYXRzRmV0Y2hlZFJlZiIsInBlbmRpbmdTZXNzaW9uc1JlZmV0Y2hSZWYiLCJjaGF0c0NvbnRhaW5lclJlZiIsInNob3VsZEZldGNoU2Vzc2lvbnMiLCJ1c2VyIiwiZXZlbnRBbXBsaXR1ZGUiLCJfdXNlR2xvYmFsQ29udGV4dCIsInNlbGVjdGVkQWdlbnQiLCJzZWxlY3RBZ2VudCIsInNldFByb2plY3QiLCJzZXRDbGllbnQiLCJzZXRUYXNrIiwiX3VzZUNoYXRzIiwibG9hZGluZ0NoYXRzIiwiY2hhdHMiLCJkZWxldGVDaGF0IiwidXBkYXRlQ2hhdCIsImZldGNoQ2hhdHMiLCJsaW1pdCIsIm9mZnNldCIsImhhc01vcmVDaGF0cyIsImxvYWRNb3JlQ2hhdHMiLCJpc0xvYWRpbmdNb3JlQ2hhdHMiLCJ1c2VyUGVybWlzc2lvbnMiLCJwZXJtaXNzaW9ucyIsImFpX2FnZW50cyIsImNhbkNyZWF0ZUFnZW50cyIsImNyZWF0ZSIsImhhc011bHRpQWdlbnRzRmVhdHVyZUFjY2VzcyIsIndpbmRvdyIsIk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFMiLCJjYW5WaWV3QWdlbnRzIiwidmlldyIsImNhblZpZXdTa2lsbHMiLCJzaG93TWFya2V0cGxhY2VTaWRlYmFyQnV0dG9uIiwiTUFJQV9NQVJLRVRQTEFDRV9NQUlBS0VSIiwiYWdlbnROYXZCdXR0b25Db3VudCIsInNob3dBZ2VudHNOYXZCbG9jayIsImN1cnJlbnQiLCJfcmVmNCIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwid3JhcCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJzdG9wIiwiX3giLCJhcHBseSIsImFyZ3VtZW50cyIsImhhbmRsZU9wZW5Nb2RhbCIsImhhbmRsZUNsb3NlTW9kYWwiLCJoYW5kbGVDbGlja091dHNpZGUiLCJ0YXJnZXQiLCJjbG9zZXN0IiwiZG9jdW1lbnQiLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImhhbmRsZVRvZ2dsZVNpZGViYXIiLCJhaUNoYXRTaWRlYmFyIiwiaGFuZGxlT3BlbkNyZWF0ZUFnZW50IiwiX3JlZjUiLCJfY2FsbGVlMiIsInJlc3BvbnNlIiwiZGF0YSIsIm1haWFrZXJBZ2VudCIsIl90IiwiX2NvbnRleHQyIiwicGF0aCIsImxhbmd1YWdlIiwibWV0aG9kIiwic2VudCIsImpzb24iLCJmaW5kIiwidHlwZSIsImVudGl0eSIsImFicnVwdCIsImhhbmRsZVNjcm9sbCIsIl9jaGF0c0NvbnRhaW5lclJlZiRjdSIsInNjcm9sbFRvcCIsInNjcm9sbEhlaWdodCIsImNsaWVudEhlaWdodCIsImlzQXRCb3R0b20iLCJjb250YWluZXIiLCJoYW5kbGVOZXdDaGF0IiwiX3JlZjYiLCJfY2FsbGVlMyIsIl9jb250ZXh0MyIsImFpU2lkZWJhck5ld0NoYXQiLCJoYW5kbGVSZWZldGNoU2Vzc2lvbiIsInNob3dOZXdDaGF0QnV0dG9uIiwiaXNfZGVsZXRlZCIsImhhc19ub3RfcGVybWlzc2lvbnMiLCJoYXNfbm90X2FjY2VzcyIsIiRpc09wZW4iLCJjb2xvciIsIiRhY3RpdmUiLCJhaUNoYXRNcE9wZW4iLCJhaVNpZGViYXJNeUFnZW50cyIsIiRoYXNDaGF0cyIsImxlbmd0aCIsIiRvZmZzZXRWYXJpYW50IiwiJGFnZW50TmF2QnV0dG9uQ291bnQiLCJjb3VudCIsIiRqdXN0aWZ5QmV0d2VlbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vbGVjdWxlcy9TaWRlYmFyL1NpZGViYXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLXBhcmFtLXJlYXNzaWduICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tc2hhZG93ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1uZXN0ZWQtdGVybmFyeSAqL1xuLyogZXNsaW50LWRpc2FibGUganN4LWExMXkvY2xpY2stZXZlbnRzLWhhdmUta2V5LWV2ZW50cyAqL1xuLyogZXNsaW50LWRpc2FibGUganN4LWExMXkvbm8tc3RhdGljLWVsZW1lbnQtaW50ZXJhY3Rpb25zICovXG5pbXBvcnQgeyBNdXRhYmxlUmVmT2JqZWN0LCB1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IENoZXZyb25Eb3VibGVMZWZ0IH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvQ2hldnJvbkRvdWJsZUxlZnQnXG5pbXBvcnQgeyBIaXN0b3J5IH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvSGlzdG9yeSdcbmltcG9ydCB7IENVQnV0dG9uIH0gZnJvbSAnQHByb2plY3Rjb3IvYnV0dG9uL2xpYi9jb21wb25lbnRzL0NVQnV0dG9uJ1xuaW1wb3J0IHsgTWVudURvdHMgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9NZW51RG90cydcbmltcG9ydCB7IFBlbmNpbCB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL1BlbmNpbCdcbmltcG9ydCB7IFRyYXNoIH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvVHJhc2gnXG5cbmltcG9ydCB7IFRvb2x0aXAgfSBmcm9tICdAcHJvamVjdGNvci90b29sdGlwdjIvbGliL2NvbXBvbmVudHMvVG9vbHRpcCdcblxuaW1wb3J0IHsgRW1wdHlIaXN0b3J5SWNvbiB9IGZyb20gJy4uLy4uL2F0b21zL2ljb25zL0VtcHR5SGlzdG9yeSdcbmltcG9ydCB7IHVzZVJlc2l6ZUxpc3RlbmVyIH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlUmVzaXplJ1xuaW1wb3J0IHsgdXNlQ2hhdHMgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VDaGF0cydcbmltcG9ydCB7IFNpZGViYXJDaGF0c1NrZWxldG9uIH0gZnJvbSAnLi9TaWRlYmFyLnNrZWxldG9uJ1xuaW1wb3J0IHsgRXJyb3JTdGF0ZSwgTUFJQUljb24sIE1haWFTdG9yZUljb24sIE15QWdlbnRzTmF2SWNvbiwgU2tpbGxzTmF2SWNvbiwgTmV3Q2hhdCB9IGZyb20gJy4uLy4uL2F0b21zL2ljb25zJ1xuaW1wb3J0IHsgRVZFTlRTLCB1c2VFdmVudCB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZUV2ZW50J1xuaW1wb3J0IHsgdXNlVCB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZVQnXG5pbXBvcnQgeyBPcHRpb25JdGVtIH0gZnJvbSAnLi4vLi4vYXRvbXMvQ2FyZE1lbnUvQ2FyZE1lbnUnXG5pbXBvcnQgeyBFZGl0UXVlc3Rpb25Nb2RhbCB9IGZyb20gJy4uLy4uL29yZ2FuaXNtcy9FZGl0UXVlc3Rpb25Nb2RhbCdcbmltcG9ydCB7IERlbGV0ZVF1ZXN0aW9uTW9kYWwgfSBmcm9tICcuLi8uLi9vcmdhbmlzbXMvRGVsZXRlUXVlc3Rpb25Nb2RhbCdcbmltcG9ydCB7IEVycm9ySWNvbiB9IGZyb20gJy4uLy4uL2F0b21zL2ljb25zL0Vycm9ySWNvbidcbmltcG9ydCB7IHVzZVVzZXIgfSBmcm9tICcuLi8uLi8uLi9jb250ZXh0L2Nvci11c2VyJ1xuaW1wb3J0IHsgRmVlZGJhY2tCdXR0b24gfSBmcm9tICcuLi8uLi9hdG9tcy9GZWVkYmFja0J1dHRvbidcbmltcG9ydCB7IHVzZUdsb2JhbENvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9jb250ZXh0L2dsb2JhbC1jb250ZXh0J1xuaW1wb3J0IHsgZmV0Y2hNYWlhIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbWFpYS9jbGllbnQnXG5pbXBvcnQgeyBjYW5BY2Nlc3NUb1NraWxscyB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9wZXJtaXNzaW9ucydcbmltcG9ydCB7IG1hcENPUkxhbmcgfSBmcm9tICcuLi8uLi8uLi9sYW5nL3V0aWxzJ1xuaW1wb3J0IHsgZm9ybWF0Q2hhdExpc3RUaXRsZU1lbnRpb25zIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvcmVuZGVyQ29udGV4dE1lbnRpb25zJ1xuaW1wb3J0IHsgZ2V0QWdlbnREaXNwbGF5TmFtZSB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2FnZW50RGlzcGxheU5hbWUnXG5pbXBvcnQge1xuICBTQ0xIQ1dyYXBwZXIsXG4gIFNDTEhDV3JhcHBlckFnZW50LFxuICBTQ0xIQ1dyYXBwZXJBZ2VudFRleHQsXG4gIFNDTEhDV3JhcHBlckJ1dHRvbkFjdGlvbnMsXG4gIFNDTEhDV3JhcHBlckNvbnRlbnQsXG4gIFNDTEhDV3JhcHBlclRpdGxlLFxuICBTQ1NXcmFwcGVyQ29sbGFwc2VkQnV0dG9uLFxuICBTQ1NXcmFwcGVyTmV3Q2hhdEljb24sXG4gIFNDU1dyYXBwZXJBZ2VudHNOYXZJY29uLFxufSBmcm9tICcuL1NpZGViYXIuc3R5bGVzJ1xuaW1wb3J0IHtcbiAgU0NTU2lkZWJhclJvb3QsXG4gIFNDU1NpZGViYXJUb29sYmFyLFxuICBTQ1NTaWRlYmFyQm9keSxcbiAgU0NTU2lkZWJhck9wZW5QYW5lbCxcbiAgU0NTU2lkZWJhckFnZW50c0Jsb2NrLFxuICBTQ1NTaWRlYmFyQWdlbnRzQWN0aW9ucyxcbiAgU0NTU2lkZWJhck1haWFrZXJOYXZCdXR0b24sXG4gIFNDU1NpZGViYXJNYWlha2VyTmF2TGFiZWwsXG4gIFNDU1NpZGViYXJNYWlha2VyTmF2QmFkZ2VOZXcsXG4gIFNDU1NpZGViYXJDb252ZXJzYXRpb25zSGVhZGluZyxcbiAgU0NTU2lkZWJhckNoYXRzU2Nyb2xsLFxuICBTQ1NTaWRlYmFyRXJyb3JTdGF0ZUNvbHVtbixcbiAgU0NTU2lkZWJhckVycm9yU3RhdGVUb3AsXG4gIFNDU1NpZGViYXJFcnJvckJhbm5lcixcbiAgU0NTU2lkZWJhckVycm9yQmFubmVySWNvbldyYXAsXG4gIFNDU1NpZGViYXJFcnJvckJhbm5lck1lc3NhZ2UsXG4gIFNDU1NpZGViYXJMb2FkaW5nQXJlYSxcbiAgU0NTU2lkZWJhckxvYWRNb3JlUm93LFxuICBTQ1NTaWRlYmFyRW1wdHlDaGF0cyxcbiAgU0NTU2lkZWJhckVtcHR5Q2hhdHNUZXh0LFxuICBTQ1NTaWRlYmFyQ2hhdHNGb290ZXIsXG4gIFNDU1NpZGViYXJGb290ZXJBY3Rpb25zLFxuICBTQ1NTaWRlYmFyQ29sbGFwc2VkRGl2aWRlcixcbn0gZnJvbSAnLi9TaWRlYmFyLmxheW91dC5zdHlsZXMnXG5cbmNvbnN0IGFjdGlvbnMgPSB7XG4gIGVkaXQ6IChwcm9wczogYW55KSA9PiA8RWRpdFF1ZXN0aW9uTW9kYWwgey4uLnByb3BzfSAvPixcbiAgZGVsZXRlOiAocHJvcHM6IGFueSkgPT4gPERlbGV0ZVF1ZXN0aW9uTW9kYWwgey4uLnByb3BzfSAvPixcbn1cblxuLyoqIEFicmV2aWEgXCJlc3BlY2lhbGlzdGFcIi9cImVzcGVjaWFsaXN0XCIg4oaSIFwiRXNwLlwiIChFUy9QVCkgeSBcInNwZWNpYWxpc3RcIiDihpIgXCJTcGVjLlwiIChFTikgZW4gZWwgbm9tYnJlIGRlbCBhZ2VudGUuICovXG5jb25zdCBMaXN0SGlzdG9yeUNoYXQgPSAoe1xuICBjaGF0LFxuICBvbkNsaWNrLFxuICBpc01vZGFsT3BlbixcbiAgb25PcGVuTW9kYWwsXG4gIG9uQ2xvc2VNb2RhbCxcbiAgaGFuZGxlcnMsXG4gIGlzU2VsZWN0ZWQsXG4gIGluZGV4LFxufToge1xuICBjaGF0OiBhbnlcbiAgb25DbGljazogKGNoYXQ6IGFueSkgPT4gdm9pZFxuICBpc01vZGFsT3BlbjogYm9vbGVhblxuICBvbk9wZW5Nb2RhbDogKGNoYXRJZDogc3RyaW5nKSA9PiB2b2lkXG4gIG9uQ2xvc2VNb2RhbDogKCkgPT4gdm9pZFxuICBoYW5kbGVyczoge1xuICAgIGhhbmRsZURlbGV0ZUNoYXQ6IChjaGF0OiBhbnkpID0+IHZvaWRcbiAgICBoYW5kbGVVcGRhdGVDaGF0OiAoY2hhdDogYW55KSA9PiB2b2lkXG4gIH1cbiAgaXNTZWxlY3RlZDogYm9vbGVhblxuICBpbmRleDogbnVtYmVyXG59KSA9PiB7XG4gIGNvbnN0IHRleHRSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IGFnZW50UmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICBjb25zdCBkaXNwbGF5VGl0bGUgPSB1c2VNZW1vKCgpID0+IGZvcm1hdENoYXRMaXN0VGl0bGVNZW50aW9ucyhjaGF0LnRpdGxlKSwgW2NoYXQudGl0bGVdKVxuICBjb25zdCBkaXNwbGF5QWdlbnQgPSBnZXRBZ2VudERpc3BsYXlOYW1lKGNoYXQuYWdlbnRUeXBlLCBjaGF0LmFnZW50KVxuICBjb25zdCBjb250ZXh0TmFtZSA9IGNoYXQucHJvamVjdE5hbWUgfHwgY2hhdC5jbGllbnROYW1lXG4gIGNvbnN0IHsgc2hvd1Rvb2x0aXAgfSA9IHVzZVJlc2l6ZUxpc3RlbmVyKHRleHRSZWYsIFtkaXNwbGF5VGl0bGVdKVxuICBjb25zdCB7IHNob3dUb29sdGlwOiBzaG93VG9vbHRpcEFnZW50IH0gPSB1c2VSZXNpemVMaXN0ZW5lcihhZ2VudFJlZiwgW2NoYXQuYWdlbnRdKVxuICBjb25zdCB7IHQgfSA9IHVzZVQoKVxuICBjb25zdCBbYWN0aW9uLCBzZXRBY3Rpb25dID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbClcblxuICBjb25zdCBtZW51SXRlbXMgPSBbXG4gICAge1xuICAgICAgbGFiZWw6IHQoJ2hpc3RvcnkubWVudS5yZW5hbWUnKSxcbiAgICAgIG9uQ2xpY2tJdGVtOiAoY2hhdElkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgc2V0QWN0aW9uKCdlZGl0JylcbiAgICAgICAgb25PcGVuTW9kYWwoY2hhdElkKVxuICAgICAgfSxcbiAgICAgIEljb246IFBlbmNpbCxcbiAgICAgIGV2ZW50S2V5OiBFVkVOVFMucG1BaU1lbnVFZGl0LFxuICAgIH0sXG4gICAge1xuICAgICAgbGFiZWw6IHQoJ2hpc3RvcnkubWVudS5kZWxldGUnKSxcbiAgICAgIG9uQ2xpY2tJdGVtOiAoY2hhdElkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgc2V0QWN0aW9uKCdkZWxldGUnKVxuICAgICAgICBvbk9wZW5Nb2RhbChjaGF0SWQpXG4gICAgICB9LFxuICAgICAgSWNvbjogVHJhc2gsXG4gICAgICBldmVudEtleTogRVZFTlRTLnBtQWlNZW51RGVsZXRlLFxuICAgIH0sXG4gIF1cblxuICBjb25zdCBoYW5kbGVDb25maXJtQWN0aW9uID0gKGNoYXREYXRhOiBhbnkpID0+IHtcbiAgICBpZiAoYWN0aW9uID09PSAnZWRpdCcpIHtcbiAgICAgIGhhbmRsZXJzLmhhbmRsZVVwZGF0ZUNoYXQoY2hhdERhdGEpXG4gICAgfSBlbHNlIHtcbiAgICAgIGhhbmRsZXJzLmhhbmRsZURlbGV0ZUNoYXQoY2hhdERhdGEpXG4gICAgfVxuICAgIHNldEFjdGlvbihudWxsKVxuICAgIG9uQ2xvc2VNb2RhbCgpXG4gIH1cblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8U0NMSENXcmFwcGVyQ29udGVudFxuICAgICAgICBvbkNsaWNrPXtlID0+IHtcbiAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgb25DbGljayhjaGF0KVxuICAgICAgICB9fVxuICAgICAgICBrZXk9e2Bjb252ZXJzYXRpb24tJHtjaGF0LnNlc3Npb25FeHRlcm5hbElkfWB9XG4gICAgICAgIGlzTW9kYWxPcGVuPXtpc01vZGFsT3Blbn1cbiAgICAgICAgaXNTZWxlY3RlZD17aXNTZWxlY3RlZH1cbiAgICAgICAgJGluZGV4PXtpbmRleH1cbiAgICAgID5cbiAgICAgICAgPFNDTEhDV3JhcHBlcj5cbiAgICAgICAgICA8VG9vbHRpcCB0aXRsZT17c2hvd1Rvb2x0aXAgPyBkaXNwbGF5VGl0bGUgOiAnJ30+XG4gICAgICAgICAgICA8U0NMSENXcmFwcGVyVGl0bGUgcmVmPXt0ZXh0UmVmfT57ZGlzcGxheVRpdGxlIHx8IHQoJ2NvbnZlcnNhdGlvbnMuZW1wdHlMYWJlbCcpfTwvU0NMSENXcmFwcGVyVGl0bGU+XG4gICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICAgIDxUb29sdGlwIHRpdGxlPXtzaG93VG9vbHRpcEFnZW50ID8gZGlzcGxheUFnZW50ICsgKGNvbnRleHROYW1lID8gYCAtICR7Y29udGV4dE5hbWV9YCA6ICcnKSA6ICcnfT5cbiAgICAgICAgICAgIDxTQ0xIQ1dyYXBwZXJBZ2VudD5cbiAgICAgICAgICAgICAge2NoYXQuYWdlbnRUeXBlID09PSAnY2xvbmUnID8gKFxuICAgICAgICAgICAgICAgIDxNQUlBSWNvbiB3aWR0aD17MTR9IGhlaWdodD17MTR9IC8+XG4gICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgPHNwYW4gc3R5bGU9e3sgZm9udFNpemU6ICcxNHB4JyB9fT57Y2hhdC5lbW9qaX08L3NwYW4+XG4gICAgICAgICAgICAgICl9XG5cbiAgICAgICAgICAgICAgPFNDTEhDV3JhcHBlckFnZW50VGV4dCByZWY9e2FnZW50UmVmfT5cbiAgICAgICAgICAgICAgICB7ZGlzcGxheUFnZW50fVxuICAgICAgICAgICAgICAgIHtjb250ZXh0TmFtZSAmJiBgIC0gJHtjb250ZXh0TmFtZX1gfVxuICAgICAgICAgICAgICA8L1NDTEhDV3JhcHBlckFnZW50VGV4dD5cbiAgICAgICAgICAgIDwvU0NMSENXcmFwcGVyQWdlbnQ+XG4gICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICA8L1NDTEhDV3JhcHBlcj5cbiAgICAgICAgPFNDTEhDV3JhcHBlckJ1dHRvbkFjdGlvbnM+XG4gICAgICAgICAgPENVQnV0dG9uXG4gICAgICAgICAgICBpY29uT25seVxuICAgICAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgICAgIHZhcmlhbnQ9XCJ0ZXh0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e2V2ZW50ID0+IHtcbiAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICAgICAgb25PcGVuTW9kYWwoY2hhdC5pZClcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPE1lbnVEb3RzIHdpZHRoPXsyMH0gaGVpZ2h0PXsyMH0gLz5cbiAgICAgICAgICA8L0NVQnV0dG9uPlxuICAgICAgICAgIHtpc01vZGFsT3BlbiAmJiAhYWN0aW9uICYmIChcbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgZGF0YS1tb2RhbC1jb250YWluZXJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgICAgICAgICB0b3A6ICczMnB4JyxcbiAgICAgICAgICAgICAgICByaWdodDogJzE2cHgnLFxuICAgICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogJ3doaXRlJyxcbiAgICAgICAgICAgICAgICB6SW5kZXg6IDEwMDAsXG4gICAgICAgICAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICAgICAgICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxuICAgICAgICAgICAgICAgIGJvcmRlclJhZGl1czogJzRweCcsXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAnMXB4IHNvbGlkIHJnYmEoMjI0LCAyMjQsIDIyNCwgMSknLFxuICAgICAgICAgICAgICAgIG1pbldpZHRoOiAnMTI0cHgnLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7bWVudUl0ZW1zLm1hcCgoeyBsYWJlbCwgb25DbGlja0l0ZW0sIEljb24sIGV2ZW50S2V5IH0pID0+IChcbiAgICAgICAgICAgICAgICA8T3B0aW9uSXRlbVxuICAgICAgICAgICAgICAgICAga2V5PXtsYWJlbH1cbiAgICAgICAgICAgICAgICAgIGxhYmVsPXtsYWJlbH1cbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2xpY2tJdGVtKGNoYXQuaWQpfVxuICAgICAgICAgICAgICAgICAgSWNvbj17SWNvbn1cbiAgICAgICAgICAgICAgICAgIGV2ZW50S2V5PXtldmVudEtleX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICl9XG4gICAgICAgIDwvU0NMSENXcmFwcGVyQnV0dG9uQWN0aW9ucz5cbiAgICAgIDwvU0NMSENXcmFwcGVyQ29udGVudD5cbiAgICAgIHshIWFjdGlvbiAmJlxuICAgICAgICBhY3Rpb25zW2FjdGlvbl0oe1xuICAgICAgICAgIG9uQ2xvc2U6ICgpID0+IHtcbiAgICAgICAgICAgIG9uQ2xvc2VNb2RhbCgpXG4gICAgICAgICAgICBzZXRBY3Rpb24obnVsbClcbiAgICAgICAgICB9LFxuICAgICAgICAgIGNoYXQsXG4gICAgICAgICAgaGFuZGxlcnM6IHtcbiAgICAgICAgICAgIGhhbmRsZUNvbmZpcm1BY3Rpb24sXG4gICAgICAgICAgICBoYW5kbGVTZXRJc09wZW5Nb2RhbDogb25DbG9zZU1vZGFsLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pfVxuICAgIDwvPlxuICApXG59XG5cbmV4cG9ydCBjb25zdCBTaWRlYmFyID0gKHtcbiAgb25Hb1RvQ2hhdCxcbiAgb25FcnJvciA9ICgpID0+IG51bGwsXG4gIGhhbmRsZUdvVG9Ib21lLFxuICBoYW5kbGVPcGVuTWFya2V0cGxhY2UsXG4gIGhhbmRsZU9wZW5Ta2lsbHMsXG4gIHNob3dOZXdDaGF0LFxuICByZWZldGNoQ2hhdHMsXG4gIGhhbmRsZVNldFJlZmV0Y2hDaGF0cyxcbiAgaGFzRXJyb3IsXG4gIHJlc2V0U2VsZWN0ZWRDaGF0UmVmLFxuICBhZ2VudHNOYXZBY3RpdmUgPSBudWxsLFxufToge1xuICBvbkdvVG9DaGF0OiAoY2hhdElkOiBzdHJpbmcpID0+IHZvaWRcbiAgb25FcnJvcjogKCkgPT4gdm9pZFxuICBoYW5kbGVHb1RvSG9tZTogKCkgPT4gdm9pZFxuICBoYW5kbGVPcGVuTWFya2V0cGxhY2U6ICgpID0+IHZvaWRcbiAgaGFuZGxlT3BlblNraWxsczogKCkgPT4gdm9pZFxuICBzaG93TmV3Q2hhdDogYm9vbGVhblxuICByZWZldGNoQ2hhdHM6IGJvb2xlYW5cbiAgaGFuZGxlU2V0UmVmZXRjaENoYXRzOiAocmVmZXRjaDogYm9vbGVhbikgPT4gdm9pZFxuICBoYXNFcnJvcjogYm9vbGVhblxuICByZXNldFNlbGVjdGVkQ2hhdFJlZj86IE11dGFibGVSZWZPYmplY3Q8KCgpID0+IHZvaWQpIHwgbnVsbD5cbiAgLyoqIFJlc2FsdGEgTWFpYWtlciwgTWlzIGFnZW50ZXMgbyBNaXMgc2tpbGxzICovXG4gIGFnZW50c05hdkFjdGl2ZT86ICdtYWlha2VyJyB8ICdteUFnZW50cycgfCAnbXlTa2lsbHMnIHwgbnVsbFxufSkgPT4ge1xuICBjb25zdCB7IHQsIGkxOG4gfSA9IHVzZVQoKVxuICBjb25zdCBbaXNPcGVuLCBzZXRJc09wZW5dID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFtpc09wZW5Nb2RhbCwgc2V0SXNPcGVuTW9kYWxdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW3NlbGVjdGVkQ2hhdCwgc2V0U2VsZWN0ZWRDaGF0XSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpXG4gIGNvbnN0IGNoYXRzRmV0Y2hlZFJlZiA9IHVzZVJlZihmYWxzZSlcbiAgY29uc3QgcGVuZGluZ1Nlc3Npb25zUmVmZXRjaFJlZiA9IHVzZVJlZihmYWxzZSlcbiAgY29uc3QgY2hhdHNDb250YWluZXJSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IHNob3VsZEZldGNoU2Vzc2lvbnMgPSBpc09wZW5cbiAgY29uc3QgdXNlciA9IHVzZVVzZXIoKVxuICBjb25zdCBldmVudEFtcGxpdHVkZSA9IHVzZUV2ZW50KClcbiAgY29uc3QgeyBhZ2VudDogc2VsZWN0ZWRBZ2VudCwgc2VsZWN0QWdlbnQsIHNldFByb2plY3QsIHNldENsaWVudCwgc2V0VGFzayB9ID0gdXNlR2xvYmFsQ29udGV4dCgpXG4gIGNvbnN0IHtcbiAgICBsb2FkaW5nQ2hhdHMsXG4gICAgY2hhdHMsXG4gICAgZGVsZXRlQ2hhdCxcbiAgICB1cGRhdGVDaGF0LFxuICAgIGZldGNoQ2hhdHMsXG4gICAgbGltaXQsXG4gICAgb2Zmc2V0LFxuICAgIGhhc01vcmVDaGF0cyxcbiAgICBsb2FkTW9yZUNoYXRzLFxuICAgIGlzTG9hZGluZ01vcmVDaGF0cyxcbiAgfSA9IHVzZUNoYXRzKHtcbiAgICBvbkVycm9yLFxuICB9KVxuXG4gIGNvbnN0IHVzZXJQZXJtaXNzaW9ucyA9IHVzZXI/LnBlcm1pc3Npb25zPy5haV9hZ2VudHNcbiAgY29uc3QgY2FuQ3JlYXRlQWdlbnRzID0gISF1c2VyUGVybWlzc2lvbnM/LmNyZWF0ZVxuICBjb25zdCBoYXNNdWx0aUFnZW50c0ZlYXR1cmVBY2Nlc3MgPSAhIXdpbmRvdy5NQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1NfTVVMVElfQUdFTlRTXG4gIGNvbnN0IGNhblZpZXdBZ2VudHMgPSAhIXVzZXJQZXJtaXNzaW9ucz8udmlldyAmJiBoYXNNdWx0aUFnZW50c0ZlYXR1cmVBY2Nlc3NcbiAgY29uc3QgY2FuVmlld1NraWxscyA9IGNhblZpZXdBZ2VudHMgJiYgY2FuQWNjZXNzVG9Ta2lsbHMoKVxuICBjb25zdCBzaG93TWFya2V0cGxhY2VTaWRlYmFyQnV0dG9uID0gISFjYW5DcmVhdGVBZ2VudHMgJiYgISF3aW5kb3cuTUFJQV9NQVJLRVRQTEFDRV9NQUlBS0VSXG4gIGNvbnN0IGFnZW50TmF2QnV0dG9uQ291bnQgPSAoKHNob3dNYXJrZXRwbGFjZVNpZGViYXJCdXR0b24gPyAxIDogMCkgK1xuICAgIChjYW5WaWV3QWdlbnRzID8gMSA6IDApICtcbiAgICAoY2FuVmlld1NraWxscyA/IDEgOiAwKSkgYXMgMCB8IDEgfCAyIHwgM1xuICBjb25zdCBzaG93QWdlbnRzTmF2QmxvY2sgPSBzaG93TWFya2V0cGxhY2VTaWRlYmFyQnV0dG9uIHx8IGNhblZpZXdBZ2VudHMgfHwgY2FuVmlld1NraWxsc1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHJlc2V0U2VsZWN0ZWRDaGF0UmVmKSB7XG4gICAgICByZXNldFNlbGVjdGVkQ2hhdFJlZi5jdXJyZW50ID0gKCkgPT4gc2V0U2VsZWN0ZWRDaGF0KG51bGwpXG4gICAgfVxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAocmVzZXRTZWxlY3RlZENoYXRSZWYpIHtcbiAgICAgICAgcmVzZXRTZWxlY3RlZENoYXRSZWYuY3VycmVudCA9IG51bGxcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtyZXNldFNlbGVjdGVkQ2hhdFJlZl0pXG5cbiAgY29uc3QgaGFuZGxlRGVsZXRlQ2hhdCA9IGFzeW5jIChjaGF0OiBhbnkpID0+IHtcbiAgICBkZWxldGVDaGF0KGNoYXQuc2Vzc2lvbkV4dGVybmFsSWQpXG4gICAgc2V0SXNPcGVuTW9kYWwobnVsbClcbiAgICBoYW5kbGVHb1RvSG9tZSgpXG4gIH1cblxuICBjb25zdCBoYW5kbGVVcGRhdGVDaGF0ID0gKGNoYXQ6IGFueSkgPT4ge1xuICAgIHVwZGF0ZUNoYXQoY2hhdClcbiAgICBzZXRJc09wZW5Nb2RhbChudWxsKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlT3Blbk1vZGFsID0gKGNoYXRJZDogc3RyaW5nKSA9PiB7XG4gICAgaWYgKGlzT3Blbk1vZGFsICYmIGlzT3Blbk1vZGFsICE9PSBjaGF0SWQpIHtcbiAgICAgIHNldElzT3Blbk1vZGFsKG51bGwpXG4gICAgfSBlbHNlIHtcbiAgICAgIHNldElzT3Blbk1vZGFsKGNoYXRJZClcbiAgICB9XG4gIH1cblxuICBjb25zdCBoYW5kbGVDbG9zZU1vZGFsID0gKCkgPT4ge1xuICAgIHNldElzT3Blbk1vZGFsKG51bGwpXG4gIH1cblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZSA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgaWYgKGlzT3Blbk1vZGFsICYmICEoZXZlbnQudGFyZ2V0IGFzIEVsZW1lbnQpLmNsb3Nlc3QoJ1tkYXRhLW1vZGFsLWNvbnRhaW5lcl0nKSkge1xuICAgICAgICBzZXRJc09wZW5Nb2RhbChudWxsKVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChpc09wZW5Nb2RhbCkge1xuICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgaGFuZGxlQ2xpY2tPdXRzaWRlKVxuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBoYW5kbGVDbGlja091dHNpZGUpXG4gICAgfVxuICB9LCBbaXNPcGVuTW9kYWxdKVxuXG4gIGNvbnN0IGhhbmRsZVRvZ2dsZVNpZGViYXIgPSAoKSA9PiB7XG4gICAgaWYgKGlzT3Blbk1vZGFsKSB7XG4gICAgICBzZXRJc09wZW5Nb2RhbChudWxsKVxuICAgIH1cbiAgICBldmVudEFtcGxpdHVkZShFVkVOVFMuYWlDaGF0U2lkZWJhciwgeyBhY3Rpb246IGlzT3BlbiA/ICdjbG9zZScgOiAnb3BlbicgfSlcbiAgICBzZXRJc09wZW4ocHJldiA9PiAhcHJldilcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZU9wZW5DcmVhdGVBZ2VudCA9IGFzeW5jICgpID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaE1haWEoe1xuICAgICAgICBwYXRoOiBgYWdlbnRzP2FnZW50X3R5cGU9Y2xvbmUmbGFuZz0ke21hcENPUkxhbmcoaTE4bi5sYW5ndWFnZSl9YCxcbiAgICAgICAgbWV0aG9kOiAnR0VUJyxcbiAgICAgIH0pXG4gICAgICBjb25zdCBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpXG4gICAgICBjb25zdCBtYWlha2VyQWdlbnQgPSAoZGF0YS5kYXRhIHx8IFtdKS5maW5kKChhZ2VudDogYW55KSA9PiBhZ2VudC50eXBlID09PSAnY2xvbmUnICYmIGFnZW50LmVudGl0eSA9PT0gJ2dsb2JhbCcpXG5cbiAgICAgIGlmICghbWFpYWtlckFnZW50KSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBzZXRQcm9qZWN0KG51bGwpXG4gICAgICBzZXRDbGllbnQ/LihudWxsKVxuICAgICAgc2V0VGFzayhudWxsKVxuICAgICAgc2VsZWN0QWdlbnQobWFpYWtlckFnZW50KVxuICAgICAgaGFuZGxlR29Ub0hvbWUoKVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBvbkVycm9yKClcbiAgICB9XG4gIH1cblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghc2hvdWxkRmV0Y2hTZXNzaW9ucykge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGlmICghY2hhdHNGZXRjaGVkUmVmLmN1cnJlbnQpIHtcbiAgICAgIGNoYXRzRmV0Y2hlZFJlZi5jdXJyZW50ID0gdHJ1ZVxuICAgICAgZmV0Y2hDaGF0cyh7IGxpbWl0LCBvZmZzZXQgfSlcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBpZiAocGVuZGluZ1Nlc3Npb25zUmVmZXRjaFJlZi5jdXJyZW50IHx8IHJlZmV0Y2hDaGF0cykge1xuICAgICAgcGVuZGluZ1Nlc3Npb25zUmVmZXRjaFJlZi5jdXJyZW50ID0gZmFsc2VcbiAgICAgIGZldGNoQ2hhdHMoeyBsaW1pdCwgb2Zmc2V0IH0pXG4gICAgICBpZiAocmVmZXRjaENoYXRzKSB7XG4gICAgICAgIGhhbmRsZVNldFJlZmV0Y2hDaGF0cyhmYWxzZSlcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtzaG91bGRGZXRjaFNlc3Npb25zLCByZWZldGNoQ2hhdHMsIGhhbmRsZVNldFJlZmV0Y2hDaGF0cywgZmV0Y2hDaGF0cywgbGltaXQsIG9mZnNldF0pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBoYW5kbGVTY3JvbGwgPSAoKSA9PiB7XG4gICAgICBpZiAoIWNoYXRzQ29udGFpbmVyUmVmLmN1cnJlbnQgfHwgIWhhc01vcmVDaGF0cyB8fCBpc0xvYWRpbmdNb3JlQ2hhdHMgfHwgaGFzRXJyb3IpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHsgc2Nyb2xsVG9wLCBzY3JvbGxIZWlnaHQsIGNsaWVudEhlaWdodCB9ID0gY2hhdHNDb250YWluZXJSZWYuY3VycmVudFxuICAgICAgY29uc3QgaXNBdEJvdHRvbSA9IHNjcm9sbFRvcCArIGNsaWVudEhlaWdodCA+PSBzY3JvbGxIZWlnaHQgLSAxMFxuXG4gICAgICBpZiAoaXNBdEJvdHRvbSkge1xuICAgICAgICBsb2FkTW9yZUNoYXRzKClcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBjb250YWluZXIgPSBjaGF0c0NvbnRhaW5lclJlZi5jdXJyZW50XG4gICAgaWYgKGNvbnRhaW5lcikge1xuICAgICAgY29udGFpbmVyLmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGhhbmRsZVNjcm9sbClcbiAgICB9XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgaWYgKGNvbnRhaW5lcikge1xuICAgICAgICBjb250YWluZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgaGFuZGxlU2Nyb2xsKVxuICAgICAgfVxuICAgIH1cbiAgfSwgW2hhc01vcmVDaGF0cywgaXNMb2FkaW5nTW9yZUNoYXRzLCBsb2FkTW9yZUNoYXRzLCBoYXNFcnJvcl0pXG5cbiAgY29uc3QgaGFuZGxlTmV3Q2hhdCA9IGFzeW5jICgpID0+IHtcbiAgICBldmVudEFtcGxpdHVkZShFVkVOVFMuYWlTaWRlYmFyTmV3Q2hhdClcbiAgICBpZiAoaXNPcGVuTW9kYWwpIHtcbiAgICAgIHNldElzT3Blbk1vZGFsKG51bGwpXG4gICAgfVxuICAgIHNldFNlbGVjdGVkQ2hhdChudWxsKVxuICAgIGlmIChzaG91bGRGZXRjaFNlc3Npb25zKSB7XG4gICAgICBhd2FpdCBmZXRjaENoYXRzKHsgbGltaXQsIG9mZnNldDogMCB9KVxuICAgIH0gZWxzZSB7XG4gICAgICBwZW5kaW5nU2Vzc2lvbnNSZWZldGNoUmVmLmN1cnJlbnQgPSB0cnVlXG4gICAgfVxuICAgIGhhbmRsZUdvVG9Ib21lKClcbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgaGFuZGxlUmVmZXRjaFNlc3Npb24gPSAoKSA9PiB7XG4gICAgICBpZiAoc2hvdWxkRmV0Y2hTZXNzaW9ucykge1xuICAgICAgICBmZXRjaENoYXRzKHsgbGltaXQ6IDIwLCBvZmZzZXQ6IDAgfSlcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICBwZW5kaW5nU2Vzc2lvbnNSZWZldGNoUmVmLmN1cnJlbnQgPSB0cnVlXG4gICAgfVxuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3JlZmV0Y2gtc2Vzc2lvbicsIGhhbmRsZVJlZmV0Y2hTZXNzaW9uKVxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdyZWZldGNoLXNlc3Npb24nLCBoYW5kbGVSZWZldGNoU2Vzc2lvbilcbiAgICB9XG4gIH0sIFtzaG91bGRGZXRjaFNlc3Npb25zLCBmZXRjaENoYXRzXSlcblxuICBjb25zdCBzaG93TmV3Q2hhdEJ1dHRvbiA9XG4gICAgIXNob3dOZXdDaGF0ICYmXG4gICAgIWhhc0Vycm9yICYmXG4gICAgIWxvYWRpbmdDaGF0cyAmJlxuICAgICgodXNlclBlcm1pc3Npb25zPy52aWV3ICYmXG4gICAgICAhc2VsZWN0ZWRBZ2VudD8uaXNfZGVsZXRlZCAmJlxuICAgICAgIXNlbGVjdGVkQWdlbnQ/Lmhhc19ub3RfcGVybWlzc2lvbnMgJiZcbiAgICAgICFzZWxlY3RlZEFnZW50Py5oYXNfbm90X2FjY2VzcykgfHxcbiAgICAgICghdXNlclBlcm1pc3Npb25zPy52aWV3ICYmXG4gICAgICAgICFzZWxlY3RlZEFnZW50Py5pc19kZWxldGVkICYmXG4gICAgICAgICFzZWxlY3RlZEFnZW50Py5oYXNfbm90X3Blcm1pc3Npb25zICYmXG4gICAgICAgICFzZWxlY3RlZEFnZW50Py5oYXNfbm90X2FjY2VzcykpXG5cbiAgcmV0dXJuIChcbiAgICA8U0NTU2lkZWJhclJvb3QgJGlzT3Blbj17aXNPcGVufT5cbiAgICAgIDxTQ1NTaWRlYmFyVG9vbGJhciAkaXNPcGVuPXtpc09wZW59PlxuICAgICAgICA8VG9vbHRpcCB0aXRsZT17aXNPcGVuID8gdCgnY29udmVyc2F0aW9ucy5jb2xsYXBzZScpIDogdCgnaGlzdG9yeS50b29sdGlwJyl9PlxuICAgICAgICAgIDxTQ1NXcmFwcGVyQ29sbGFwc2VkQnV0dG9uIG9uQ2xpY2s9e2hhbmRsZVRvZ2dsZVNpZGViYXJ9IGlzT3Blbj17aXNPcGVufT5cbiAgICAgICAgICAgIHtpc09wZW4gPyAoXG4gICAgICAgICAgICAgIDxDaGV2cm9uRG91YmxlTGVmdCBjb2xvcj1cInJnYmEoMTAyLCAxMDIsIDEwMiwgMSlcIiB3aWR0aD17MTZ9IGhlaWdodD17MTZ9IC8+XG4gICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICA8SGlzdG9yeSBjb2xvcj1cInJnYmEoMTMsIDEzLCAxMywgMSlcIiB3aWR0aD17MjB9IGhlaWdodD17MjB9IC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvU0NTV3JhcHBlckNvbGxhcHNlZEJ1dHRvbj5cbiAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICB7c2hvd05ld0NoYXRCdXR0b24gPyAoXG4gICAgICAgICAgPFRvb2x0aXAgdGl0bGU9e3QoJ2NvbnZlcnNhdGlvbnMubmV3Q2hhdCcpfT5cbiAgICAgICAgICAgIDxTQ1NXcmFwcGVyTmV3Q2hhdEljb24gb25DbGljaz17aGFuZGxlTmV3Q2hhdH0+XG4gICAgICAgICAgICAgIDxOZXdDaGF0IHdpZHRoPXsxNn0gaGVpZ2h0PXsxNn0gLz5cbiAgICAgICAgICAgIDwvU0NTV3JhcHBlck5ld0NoYXRJY29uPlxuICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIHshaXNPcGVuICYmIHNob3dBZ2VudHNOYXZCbG9jayA/IChcbiAgICAgICAgICA8PlxuICAgICAgICAgICAgPFNDU1NpZGViYXJDb2xsYXBzZWREaXZpZGVyIC8+XG4gICAgICAgICAgICB7c2hvd01hcmtldHBsYWNlU2lkZWJhckJ1dHRvbiA/IChcbiAgICAgICAgICAgICAgPFRvb2x0aXAgdGl0bGU9e3QoJ2NvbnZlcnNhdGlvbnMubWFpYWtlck5hdicpfT5cbiAgICAgICAgICAgICAgICA8U0NTV3JhcHBlckFnZW50c05hdkljb25cbiAgICAgICAgICAgICAgICAgICRhY3RpdmU9e2FnZW50c05hdkFjdGl2ZSA9PT0gJ21haWFrZXInfVxuICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBldmVudEFtcGxpdHVkZShFVkVOVFMuYWlDaGF0TXBPcGVuKVxuICAgICAgICAgICAgICAgICAgICBoYW5kbGVPcGVuQ3JlYXRlQWdlbnQoKVxuICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8TWFpYVN0b3JlSWNvbiBzaXplPXsxNn0gLz5cbiAgICAgICAgICAgICAgICA8L1NDU1dyYXBwZXJBZ2VudHNOYXZJY29uPlxuICAgICAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIHtjYW5WaWV3QWdlbnRzID8gKFxuICAgICAgICAgICAgICA8VG9vbHRpcCB0aXRsZT17dCgnY29udmVyc2F0aW9ucy5teUFnZW50c05hdicpfT5cbiAgICAgICAgICAgICAgICA8U0NTV3JhcHBlckFnZW50c05hdkljb25cbiAgICAgICAgICAgICAgICAgICRhY3RpdmU9e2FnZW50c05hdkFjdGl2ZSA9PT0gJ215QWdlbnRzJ31cbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpU2lkZWJhck15QWdlbnRzKVxuICAgICAgICAgICAgICAgICAgICBoYW5kbGVPcGVuTWFya2V0cGxhY2UoKVxuICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8TXlBZ2VudHNOYXZJY29uIHNpemU9ezE2fSAvPlxuICAgICAgICAgICAgICAgIDwvU0NTV3JhcHBlckFnZW50c05hdkljb24+XG4gICAgICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvU0NTU2lkZWJhclRvb2xiYXI+XG4gICAgICA8U0NTU2lkZWJhckJvZHkgJGlzT3Blbj17aXNPcGVufT5cbiAgICAgICAge2lzT3BlbiA/IChcbiAgICAgICAgICA8U0NTU2lkZWJhck9wZW5QYW5lbD5cbiAgICAgICAgICAgIDxTQ1NTaWRlYmFyQWdlbnRzQmxvY2s+XG4gICAgICAgICAgICAgIHtzaG93QWdlbnRzTmF2QmxvY2sgPyAoXG4gICAgICAgICAgICAgICAgPFNDU1NpZGViYXJBZ2VudHNBY3Rpb25zPlxuICAgICAgICAgICAgICAgICAge3Nob3dNYXJrZXRwbGFjZVNpZGViYXJCdXR0b24gPyAoXG4gICAgICAgICAgICAgICAgICAgIDxTQ1NTaWRlYmFyTWFpYWtlck5hdkJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50QW1wbGl0dWRlKEVWRU5UUy5haUNoYXRNcE9wZW4pXG4gICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVPcGVuQ3JlYXRlQWdlbnQoKVxuICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgJGFjdGl2ZT17YWdlbnRzTmF2QWN0aXZlID09PSAnbWFpYWtlcid9XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8TWFpYVN0b3JlSWNvbiBzaXplPXsxNn0gLz5cbiAgICAgICAgICAgICAgICAgICAgICA8U0NTU2lkZWJhck1haWFrZXJOYXZMYWJlbD57dCgnY29udmVyc2F0aW9ucy5tYWlha2VyTmF2Jyl9PC9TQ1NTaWRlYmFyTWFpYWtlck5hdkxhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgIDxTQ1NTaWRlYmFyTWFpYWtlck5hdkJhZGdlTmV3Pnt0KCdob21lTWVudS5tYWlha2VyLmJhZGdlTmV3Jyl9PC9TQ1NTaWRlYmFyTWFpYWtlck5hdkJhZGdlTmV3PlxuICAgICAgICAgICAgICAgICAgICA8L1NDU1NpZGViYXJNYWlha2VyTmF2QnV0dG9uPlxuICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgICB7Y2FuVmlld0FnZW50cyA/IChcbiAgICAgICAgICAgICAgICAgICAgPFNDU1NpZGViYXJNYWlha2VyTmF2QnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpU2lkZWJhck15QWdlbnRzKVxuICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlT3Blbk1hcmtldHBsYWNlKClcbiAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICRhY3RpdmU9e2FnZW50c05hdkFjdGl2ZSA9PT0gJ215QWdlbnRzJ31cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDxNeUFnZW50c05hdkljb24gc2l6ZT17MTZ9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgPFNDU1NpZGViYXJNYWlha2VyTmF2TGFiZWw+e3QoJ2NvbnZlcnNhdGlvbnMubXlBZ2VudHNOYXYnKX08L1NDU1NpZGViYXJNYWlha2VyTmF2TGFiZWw+XG4gICAgICAgICAgICAgICAgICAgIDwvU0NTU2lkZWJhck1haWFrZXJOYXZCdXR0b24+XG4gICAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgIHtjYW5WaWV3U2tpbGxzID8gKFxuICAgICAgICAgICAgICAgICAgICA8U0NTU2lkZWJhck1haWFrZXJOYXZCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVPcGVuU2tpbGxzfVxuICAgICAgICAgICAgICAgICAgICAgICRhY3RpdmU9e2FnZW50c05hdkFjdGl2ZSA9PT0gJ215U2tpbGxzJ31cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDxTa2lsbHNOYXZJY29uIHNpemU9ezE2fSAvPlxuICAgICAgICAgICAgICAgICAgICAgIDxTQ1NTaWRlYmFyTWFpYWtlck5hdkxhYmVsPnt0KCdjb252ZXJzYXRpb25zLm15U2tpbGxzTmF2Jyl9PC9TQ1NTaWRlYmFyTWFpYWtlck5hdkxhYmVsPlxuICAgICAgICAgICAgICAgICAgICA8L1NDU1NpZGViYXJNYWlha2VyTmF2QnV0dG9uPlxuICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgPC9TQ1NTaWRlYmFyQWdlbnRzQWN0aW9ucz5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgIDxTQ1NTaWRlYmFyQ29udmVyc2F0aW9uc0hlYWRpbmc+e3QoJ2NvbnZlcnNhdGlvbnMudGl0bGUnKX08L1NDU1NpZGViYXJDb252ZXJzYXRpb25zSGVhZGluZz5cbiAgICAgICAgICAgIDwvU0NTU2lkZWJhckFnZW50c0Jsb2NrPlxuICAgICAgICAgICAgPFNDU1NpZGViYXJDaGF0c1Njcm9sbFxuICAgICAgICAgICAgICByZWY9e2NoYXRzQ29udGFpbmVyUmVmfVxuICAgICAgICAgICAgICAkaGFzQ2hhdHM9e2NoYXRzLmxlbmd0aCA+IDB9XG4gICAgICAgICAgICAgICRvZmZzZXRWYXJpYW50PXtoYXNFcnJvciA/ICdlcnJvcicgOiAnZGVmYXVsdCd9XG4gICAgICAgICAgICAgICRhZ2VudE5hdkJ1dHRvbkNvdW50PXthZ2VudE5hdkJ1dHRvbkNvdW50fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aGFzRXJyb3IgJiYgIWNoYXRzLmxlbmd0aCA/IChcbiAgICAgICAgICAgICAgICA8U0NTU2lkZWJhckVycm9yU3RhdGVDb2x1bW4+XG4gICAgICAgICAgICAgICAgICA8U0NTU2lkZWJhckVycm9yU3RhdGVUb3A+XG4gICAgICAgICAgICAgICAgICAgIDxFcnJvclN0YXRlIC8+XG4gICAgICAgICAgICAgICAgICA8L1NDU1NpZGViYXJFcnJvclN0YXRlVG9wPlxuICAgICAgICAgICAgICAgICAgPFNDU1NpZGViYXJFcnJvckJhbm5lcj5cbiAgICAgICAgICAgICAgICAgICAgPFNDU1NpZGViYXJFcnJvckJhbm5lckljb25XcmFwPlxuICAgICAgICAgICAgICAgICAgICAgIDxFcnJvckljb24gLz5cbiAgICAgICAgICAgICAgICAgICAgPC9TQ1NTaWRlYmFyRXJyb3JCYW5uZXJJY29uV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgPFNDU1NpZGViYXJFcnJvckJhbm5lck1lc3NhZ2U+e3QoJ2NvbnZlcnNhdGlvbnMuZXJyb3InKX08L1NDU1NpZGViYXJFcnJvckJhbm5lck1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgICA8L1NDU1NpZGViYXJFcnJvckJhbm5lcj5cbiAgICAgICAgICAgICAgICA8L1NDU1NpZGViYXJFcnJvclN0YXRlQ29sdW1uPlxuICAgICAgICAgICAgICApIDogbG9hZGluZ0NoYXRzID8gKFxuICAgICAgICAgICAgICAgIDxTQ1NTaWRlYmFyTG9hZGluZ0FyZWE+XG4gICAgICAgICAgICAgICAgICA8U2lkZWJhckNoYXRzU2tlbGV0b24gLz5cbiAgICAgICAgICAgICAgICA8L1NDU1NpZGViYXJMb2FkaW5nQXJlYT5cbiAgICAgICAgICAgICAgKSA6IGNoYXRzLmxlbmd0aCA/IChcbiAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAge2NoYXRzLm1hcCgoY2hhdCwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICA8TGlzdEhpc3RvcnlDaGF0XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXk9e2NoYXQuaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICAgICAgICAgICAgICBjaGF0PXtjaGF0fVxuICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17Y2hhdERhdGEgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaXNPcGVuTW9kYWwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRJc09wZW5Nb2RhbChudWxsKVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNldFNlbGVjdGVkQ2hhdChjaGF0RGF0YS5zZXNzaW9uRXh0ZXJuYWxJZClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb25Hb1RvQ2hhdChjaGF0RGF0YSlcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICBpc01vZGFsT3Blbj17aXNPcGVuTW9kYWwgPT09IGNoYXQuaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICBvbk9wZW5Nb2RhbD17aGFuZGxlT3Blbk1vZGFsfVxuICAgICAgICAgICAgICAgICAgICAgICAgb25DbG9zZU1vZGFsPXtoYW5kbGVDbG9zZU1vZGFsfVxuICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlcnM9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlRGVsZXRlQ2hhdCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlVXBkYXRlQ2hhdCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICBpc1NlbGVjdGVkPXtzZWxlY3RlZENoYXQgPT09IGNoYXQuc2Vzc2lvbkV4dGVybmFsSWR9XG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICB7aXNMb2FkaW5nTW9yZUNoYXRzICYmIChcbiAgICAgICAgICAgICAgICAgICAgPFNDU1NpZGViYXJMb2FkTW9yZVJvdz5cbiAgICAgICAgICAgICAgICAgICAgICA8U2lkZWJhckNoYXRzU2tlbGV0b24gY291bnQ9ezJ9IC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU0NTU2lkZWJhckxvYWRNb3JlUm93PlxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICA8U0NTU2lkZWJhckVtcHR5Q2hhdHM+XG4gICAgICAgICAgICAgICAgICA8RW1wdHlIaXN0b3J5SWNvbiAvPlxuICAgICAgICAgICAgICAgICAgPFNDU1NpZGViYXJFbXB0eUNoYXRzVGV4dD57dCgnY29udmVyc2F0aW9ucy5lbXB0eScpfTwvU0NTU2lkZWJhckVtcHR5Q2hhdHNUZXh0PlxuICAgICAgICAgICAgICAgIDwvU0NTU2lkZWJhckVtcHR5Q2hhdHM+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L1NDU1NpZGViYXJDaGF0c1Njcm9sbD5cbiAgICAgICAgICAgIDxTQ1NTaWRlYmFyQ2hhdHNGb290ZXI+XG4gICAgICAgICAgICAgIHtoYXNFcnJvciAmJiBjaGF0cy5sZW5ndGggPyAoXG4gICAgICAgICAgICAgICAgPFNDU1NpZGViYXJFcnJvckJhbm5lcj5cbiAgICAgICAgICAgICAgICAgIDxTQ1NTaWRlYmFyRXJyb3JCYW5uZXJJY29uV3JhcD5cbiAgICAgICAgICAgICAgICAgICAgPEVycm9ySWNvbiAvPlxuICAgICAgICAgICAgICAgICAgPC9TQ1NTaWRlYmFyRXJyb3JCYW5uZXJJY29uV3JhcD5cbiAgICAgICAgICAgICAgICAgIDxTQ1NTaWRlYmFyRXJyb3JCYW5uZXJNZXNzYWdlPnt0KCdjb252ZXJzYXRpb25zLmVycm9yJyl9PC9TQ1NTaWRlYmFyRXJyb3JCYW5uZXJNZXNzYWdlPlxuICAgICAgICAgICAgICAgIDwvU0NTU2lkZWJhckVycm9yQmFubmVyPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDwvU0NTU2lkZWJhckNoYXRzRm9vdGVyPlxuICAgICAgICAgIDwvU0NTU2lkZWJhck9wZW5QYW5lbD5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDxTQ1NTaWRlYmFyRm9vdGVyQWN0aW9ucyAkaXNPcGVuPXtpc09wZW59ICRqdXN0aWZ5QmV0d2Vlbj17ISFzZWxlY3RlZEFnZW50fT5cbiAgICAgICAgICB7c2VsZWN0ZWRBZ2VudCA/IDxGZWVkYmFja0J1dHRvbiBzZWxlY3RlZEFnZW50PXtzZWxlY3RlZEFnZW50fSBpc09wZW49e2lzT3Blbn0gLz4gOiBudWxsfVxuICAgICAgICA8L1NDU1NpZGViYXJGb290ZXJBY3Rpb25zPlxuICAgICAgPC9TQ1NTaWRlYmFyQm9keT5cbiAgICA8L1NDU1NpZGViYXJSb290PlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQTJCQSxTQUFTLEVBQUVDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxRQUFRLFFBQVEsT0FBTztBQUM5RSxTQUFTQyxpQkFBaUIsUUFBUSxvREFBb0Q7QUFDdEYsU0FBU0MsT0FBTyxRQUFRLDBDQUEwQztBQUNsRSxTQUFTQyxRQUFRLFFBQVEsNENBQTRDO0FBQ3JFLFNBQVNDLFFBQVEsUUFBUSwyQ0FBMkM7QUFDcEUsU0FBU0MsTUFBTSxRQUFR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
|
|
630
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJ1c2VNZW1vIiwidXNlUmVmIiwidXNlU3RhdGUiLCJDaGV2cm9uRG91YmxlTGVmdCIsIkhpc3RvcnkiLCJDVUJ1dHRvbiIsIk1lbnVEb3RzIiwiUGVuY2lsIiwiVHJhc2giLCJUb29sdGlwIiwiRW1wdHlIaXN0b3J5SWNvbiIsInVzZVJlc2l6ZUxpc3RlbmVyIiwidXNlQ2hhdHMiLCJTaWRlYmFyQ2hhdHNTa2VsZXRvbiIsIkVycm9yU3RhdGUiLCJNQUlBSWNvbiIsIk1haWFTdG9yZUljb24iLCJNeUFnZW50c05hdkljb24iLCJOZXdDaGF0IiwiRVZFTlRTIiwidXNlRXZlbnQiLCJ1c2VUIiwiT3B0aW9uSXRlbSIsIkVkaXRRdWVzdGlvbk1vZGFsIiwiRGVsZXRlUXVlc3Rpb25Nb2RhbCIsIkVycm9ySWNvbiIsInVzZVVzZXIiLCJGZWVkYmFja0J1dHRvbiIsInVzZUdsb2JhbENvbnRleHQiLCJmZXRjaE1haWEiLCJtYXBDT1JMYW5nIiwiZm9ybWF0Q2hhdExpc3RUaXRsZU1lbnRpb25zIiwiZ2V0QWdlbnREaXNwbGF5TmFtZSIsIlNDTEhDV3JhcHBlciIsIlNDTEhDV3JhcHBlckFnZW50IiwiU0NMSENXcmFwcGVyQWdlbnRUZXh0IiwiU0NMSENXcmFwcGVyQnV0dG9uQWN0aW9ucyIsIlNDTEhDV3JhcHBlckNvbnRlbnQiLCJTQ0xIQ1dyYXBwZXJUaXRsZSIsIlNDU1dyYXBwZXJDb2xsYXBzZWRCdXR0b24iLCJTQ1NXcmFwcGVyTmV3Q2hhdEljb24iLCJTQ1NXcmFwcGVyQWdlbnRzTmF2SWNvbiIsIlNDU1NpZGViYXJSb290IiwiU0NTU2lkZWJhclRvb2xiYXIiLCJTQ1NTaWRlYmFyQm9keSIsIlNDU1NpZGViYXJPcGVuUGFuZWwiLCJTQ1NTaWRlYmFyQWdlbnRzQmxvY2siLCJTQ1NTaWRlYmFyQWdlbnRzQWN0aW9ucyIsIlNDU1NpZGViYXJNYWlha2VyTmF2QnV0dG9uIiwiU0NTU2lkZWJhck1haWFrZXJOYXZMYWJlbCIsIlNDU1NpZGViYXJNYWlha2VyTmF2QmFkZ2VOZXciLCJTQ1NTaWRlYmFyQ29udmVyc2F0aW9uc0hlYWRpbmciLCJTQ1NTaWRlYmFyQ2hhdHNTY3JvbGwiLCJTQ1NTaWRlYmFyRXJyb3JTdGF0ZUNvbHVtbiIsIlNDU1NpZGViYXJFcnJvclN0YXRlVG9wIiwiU0NTU2lkZWJhckVycm9yQmFubmVyIiwiU0NTU2lkZWJhckVycm9yQmFubmVySWNvbldyYXAiLCJTQ1NTaWRlYmFyRXJyb3JCYW5uZXJNZXNzYWdlIiwiU0NTU2lkZWJhckxvYWRpbmdBcmVhIiwiU0NTU2lkZWJhckxvYWRNb3JlUm93IiwiU0NTU2lkZWJhckVtcHR5Q2hhdHMiLCJTQ1NTaWRlYmFyRW1wdHlDaGF0c1RleHQiLCJTQ1NTaWRlYmFyQ2hhdHNGb290ZXIiLCJTQ1NTaWRlYmFyRm9vdGVyQWN0aW9ucyIsIlNDU1NpZGViYXJDb2xsYXBzZWREaXZpZGVyIiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkZyYWdtZW50IiwiX0ZyYWdtZW50IiwiYWN0aW9ucyIsImVkaXQiLCJwcm9wcyIsIl9vYmplY3RTcHJlYWQiLCJkZWxldGUiLCJMaXN0SGlzdG9yeUNoYXQiLCJfcmVmIiwiY2hhdCIsIm9uQ2xpY2siLCJpc01vZGFsT3BlbiIsIm9uT3Blbk1vZGFsIiwib25DbG9zZU1vZGFsIiwiaGFuZGxlcnMiLCJpc1NlbGVjdGVkIiwiaW5kZXgiLCJ0ZXh0UmVmIiwiYWdlbnRSZWYiLCJkaXNwbGF5VGl0bGUiLCJ0aXRsZSIsImRpc3BsYXlBZ2VudCIsImFnZW50VHlwZSIsImFnZW50IiwiY29udGV4dE5hbWUiLCJwcm9qZWN0TmFtZSIsImNsaWVudE5hbWUiLCJfdXNlUmVzaXplTGlzdGVuZXIiLCJzaG93VG9vbHRpcCIsIl91c2VSZXNpemVMaXN0ZW5lcjIiLCJzaG93VG9vbHRpcEFnZW50IiwiX3VzZVQiLCJ0IiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwiYWN0aW9uIiwic2V0QWN0aW9uIiwibWVudUl0ZW1zIiwibGFiZWwiLCJvbkNsaWNrSXRlbSIsImNoYXRJZCIsIkljb24iLCJldmVudEtleSIsInBtQWlNZW51RWRpdCIsInBtQWlNZW51RGVsZXRlIiwiaGFuZGxlQ29uZmlybUFjdGlvbiIsImNoYXREYXRhIiwiaGFuZGxlVXBkYXRlQ2hhdCIsImhhbmRsZURlbGV0ZUNoYXQiLCJjaGlsZHJlbiIsImUiLCJzdG9wUHJvcGFnYXRpb24iLCIkaW5kZXgiLCJyZWYiLCJjb25jYXQiLCJ3aWR0aCIsImhlaWdodCIsInN0eWxlIiwiZm9udFNpemUiLCJlbW9qaSIsImljb25Pbmx5Iiwic2l6ZSIsInZhcmlhbnQiLCJldmVudCIsImlkIiwicG9zaXRpb24iLCJ0b3AiLCJyaWdodCIsImJhY2tncm91bmRDb2xvciIsInpJbmRleCIsImRpc3BsYXkiLCJmbGV4RGlyZWN0aW9uIiwiYm9yZGVyUmFkaXVzIiwiYm9yZGVyIiwibWluV2lkdGgiLCJtYXAiLCJfcmVmMiIsInNlc3Npb25FeHRlcm5hbElkIiwib25DbG9zZSIsImhhbmRsZVNldElzT3Blbk1vZGFsIiwiU2lkZWJhciIsIl9yZWYzIiwiX3VzZXIkcGVybWlzc2lvbnMiLCJvbkdvVG9DaGF0IiwiX3JlZjMkb25FcnJvciIsIm9uRXJyb3IiLCJoYW5kbGVHb1RvSG9tZSIsImhhbmRsZU9wZW5NYXJrZXRwbGFjZSIsInNob3dOZXdDaGF0IiwicmVmZXRjaENoYXRzIiwiaGFuZGxlU2V0UmVmZXRjaENoYXRzIiwiaGFzRXJyb3IiLCJyZXNldFNlbGVjdGVkQ2hhdFJlZiIsIl9yZWYzJGFnZW50c05hdkFjdGl2ZSIsImFnZW50c05hdkFjdGl2ZSIsIl91c2VUMiIsImkxOG4iLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImlzT3BlbiIsInNldElzT3BlbiIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwiaXNPcGVuTW9kYWwiLCJzZXRJc09wZW5Nb2RhbCIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4Iiwic2VsZWN0ZWRDaGF0Iiwic2V0U2VsZWN0ZWRDaGF0IiwiY2hhdHNGZXRjaGVkUmVmIiwicGVuZGluZ1Nlc3Npb25zUmVmZXRjaFJlZiIsImNoYXRzQ29udGFpbmVyUmVmIiwic2hvdWxkRmV0Y2hTZXNzaW9ucyIsInVzZXIiLCJldmVudEFtcGxpdHVkZSIsIl91c2VHbG9iYWxDb250ZXh0Iiwic2VsZWN0ZWRBZ2VudCIsInNlbGVjdEFnZW50Iiwic2V0UHJvamVjdCIsInNldENsaWVudCIsInNldFRhc2siLCJfdXNlQ2hhdHMiLCJsb2FkaW5nQ2hhdHMiLCJjaGF0cyIsImRlbGV0ZUNoYXQiLCJ1cGRhdGVDaGF0IiwiZmV0Y2hDaGF0cyIsImxpbWl0Iiwib2Zmc2V0IiwiaGFzTW9yZUNoYXRzIiwibG9hZE1vcmVDaGF0cyIsImlzTG9hZGluZ01vcmVDaGF0cyIsInVzZXJQZXJtaXNzaW9ucyIsInBlcm1pc3Npb25zIiwiYWlfYWdlbnRzIiwiY2FuQ3JlYXRlQWdlbnRzIiwiY3JlYXRlIiwiaGFzTXVsdGlBZ2VudHNGZWF0dXJlQWNjZXNzIiwid2luZG93IiwiTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UUyIsImNhblZpZXdBZ2VudHMiLCJ2aWV3Iiwic2hvd01hcmtldHBsYWNlU2lkZWJhckJ1dHRvbiIsIk1BSUFfTUFSS0VUUExBQ0VfTUFJQUtFUiIsImFnZW50TmF2QnV0dG9uQ291bnQiLCJzaG93QWdlbnRzTmF2QmxvY2siLCJjdXJyZW50IiwiX3JlZjQiLCJfYXN5bmNUb0dlbmVyYXRvciIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJtYXJrIiwiX2NhbGxlZSIsIndyYXAiLCJfY29udGV4dCIsInByZXYiLCJuZXh0Iiwic3RvcCIsIl94IiwiYXBwbHkiLCJhcmd1bWVudHMiLCJoYW5kbGVPcGVuTW9kYWwiLCJoYW5kbGVDbG9zZU1vZGFsIiwiaGFuZGxlQ2xpY2tPdXRzaWRlIiwidGFyZ2V0IiwiY2xvc2VzdCIsImRvY3VtZW50IiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJoYW5kbGVUb2dnbGVTaWRlYmFyIiwiYWlDaGF0U2lkZWJhciIsImhhbmRsZU9wZW5DcmVhdGVBZ2VudCIsIl9yZWY1IiwiX2NhbGxlZTIiLCJyZXNwb25zZSIsImRhdGEiLCJtYWlha2VyQWdlbnQiLCJfdCIsIl9jb250ZXh0MiIsInBhdGgiLCJsYW5ndWFnZSIsIm1ldGhvZCIsInNlbnQiLCJqc29uIiwiZmluZCIsInR5cGUiLCJlbnRpdHkiLCJhYnJ1cHQiLCJoYW5kbGVTY3JvbGwiLCJfY2hhdHNDb250YWluZXJSZWYkY3UiLCJzY3JvbGxUb3AiLCJzY3JvbGxIZWlnaHQiLCJjbGllbnRIZWlnaHQiLCJpc0F0Qm90dG9tIiwiY29udGFpbmVyIiwiaGFuZGxlTmV3Q2hhdCIsIl9yZWY2IiwiX2NhbGxlZTMiLCJfY29udGV4dDMiLCJhaVNpZGViYXJOZXdDaGF0IiwiaGFuZGxlUmVmZXRjaFNlc3Npb24iLCJzaG93TmV3Q2hhdEJ1dHRvbiIsImlzX2RlbGV0ZWQiLCJoYXNfbm90X3Blcm1pc3Npb25zIiwiaGFzX25vdF9hY2Nlc3MiLCIkaXNPcGVuIiwiY29sb3IiLCIkYWN0aXZlIiwiYWlDaGF0TXBPcGVuIiwiYWlTaWRlYmFyTXlBZ2VudHMiLCIkaGFzQ2hhdHMiLCJsZW5ndGgiLCIkb2Zmc2V0VmFyaWFudCIsIiRhZ2VudE5hdkJ1dHRvbkNvdW50IiwiY291bnQiLCIkanVzdGlmeUJldHdlZW4iXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tb2xlY3VsZXMvU2lkZWJhci9TaWRlYmFyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1wYXJhbS1yZWFzc2lnbiAqL1xuLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXNoYWRvdyAqL1xuLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tbmVzdGVkLXRlcm5hcnkgKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L2NsaWNrLWV2ZW50cy1oYXZlLWtleS1ldmVudHMgKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L25vLXN0YXRpYy1lbGVtZW50LWludGVyYWN0aW9ucyAqL1xuaW1wb3J0IHsgTXV0YWJsZVJlZk9iamVjdCwgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBDaGV2cm9uRG91YmxlTGVmdCB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL0NoZXZyb25Eb3VibGVMZWZ0J1xuaW1wb3J0IHsgSGlzdG9yeSB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL0hpc3RvcnknXG5pbXBvcnQgeyBDVUJ1dHRvbiB9IGZyb20gJ0Bwcm9qZWN0Y29yL2J1dHRvbi9saWIvY29tcG9uZW50cy9DVUJ1dHRvbidcbmltcG9ydCB7IE1lbnVEb3RzIH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvTWVudURvdHMnXG5pbXBvcnQgeyBQZW5jaWwgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9QZW5jaWwnXG5pbXBvcnQgeyBUcmFzaCB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL1RyYXNoJ1xuXG5pbXBvcnQgeyBUb29sdGlwIH0gZnJvbSAnQHByb2plY3Rjb3IvdG9vbHRpcHYyL2xpYi9jb21wb25lbnRzL1Rvb2x0aXAnXG5cbmltcG9ydCB7IEVtcHR5SGlzdG9yeUljb24gfSBmcm9tICcuLi8uLi9hdG9tcy9pY29ucy9FbXB0eUhpc3RvcnknXG5pbXBvcnQgeyB1c2VSZXNpemVMaXN0ZW5lciB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZVJlc2l6ZSdcbmltcG9ydCB7IHVzZUNoYXRzIH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlQ2hhdHMnXG5pbXBvcnQgeyBTaWRlYmFyQ2hhdHNTa2VsZXRvbiB9IGZyb20gJy4vU2lkZWJhci5za2VsZXRvbidcbmltcG9ydCB7IEVycm9yU3RhdGUsIE1BSUFJY29uLCBNYWlhU3RvcmVJY29uLCBNeUFnZW50c05hdkljb24sIE5ld0NoYXQgfSBmcm9tICcuLi8uLi9hdG9tcy9pY29ucydcbmltcG9ydCB7IEVWRU5UUywgdXNlRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VFdmVudCdcbmltcG9ydCB7IHVzZVQgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VUJ1xuaW1wb3J0IHsgT3B0aW9uSXRlbSB9IGZyb20gJy4uLy4uL2F0b21zL0NhcmRNZW51L0NhcmRNZW51J1xuaW1wb3J0IHsgRWRpdFF1ZXN0aW9uTW9kYWwgfSBmcm9tICcuLi8uLi9vcmdhbmlzbXMvRWRpdFF1ZXN0aW9uTW9kYWwnXG5pbXBvcnQgeyBEZWxldGVRdWVzdGlvbk1vZGFsIH0gZnJvbSAnLi4vLi4vb3JnYW5pc21zL0RlbGV0ZVF1ZXN0aW9uTW9kYWwnXG5pbXBvcnQgeyBFcnJvckljb24gfSBmcm9tICcuLi8uLi9hdG9tcy9pY29ucy9FcnJvckljb24nXG5pbXBvcnQgeyB1c2VVc2VyIH0gZnJvbSAnLi4vLi4vLi4vY29udGV4dC9jb3ItdXNlcidcbmltcG9ydCB7IEZlZWRiYWNrQnV0dG9uIH0gZnJvbSAnLi4vLi4vYXRvbXMvRmVlZGJhY2tCdXR0b24nXG5pbXBvcnQgeyB1c2VHbG9iYWxDb250ZXh0IH0gZnJvbSAnLi4vLi4vLi4vY29udGV4dC9nbG9iYWwtY29udGV4dCdcbmltcG9ydCB7IGZldGNoTWFpYSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL21haWEvY2xpZW50J1xuaW1wb3J0IHsgbWFwQ09STGFuZyB9IGZyb20gJy4uLy4uLy4uL2xhbmcvdXRpbHMnXG5pbXBvcnQgeyBmb3JtYXRDaGF0TGlzdFRpdGxlTWVudGlvbnMgfSBmcm9tICcuLi8uLi8uLi91dGlscy9yZW5kZXJDb250ZXh0TWVudGlvbnMnXG5pbXBvcnQgeyBnZXRBZ2VudERpc3BsYXlOYW1lIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvYWdlbnREaXNwbGF5TmFtZSdcbmltcG9ydCB7XG4gIFNDTEhDV3JhcHBlcixcbiAgU0NMSENXcmFwcGVyQWdlbnQsXG4gIFNDTEhDV3JhcHBlckFnZW50VGV4dCxcbiAgU0NMSENXcmFwcGVyQnV0dG9uQWN0aW9ucyxcbiAgU0NMSENXcmFwcGVyQ29udGVudCxcbiAgU0NMSENXcmFwcGVyVGl0bGUsXG4gIFNDU1dyYXBwZXJDb2xsYXBzZWRCdXR0b24sXG4gIFNDU1dyYXBwZXJOZXdDaGF0SWNvbixcbiAgU0NTV3JhcHBlckFnZW50c05hdkljb24sXG59IGZyb20gJy4vU2lkZWJhci5zdHlsZXMnXG5pbXBvcnQge1xuICBTQ1NTaWRlYmFyUm9vdCxcbiAgU0NTU2lkZWJhclRvb2xiYXIsXG4gIFNDU1NpZGViYXJCb2R5LFxuICBTQ1NTaWRlYmFyT3BlblBhbmVsLFxuICBTQ1NTaWRlYmFyQWdlbnRzQmxvY2ssXG4gIFNDU1NpZGViYXJBZ2VudHNBY3Rpb25zLFxuICBTQ1NTaWRlYmFyTWFpYWtlck5hdkJ1dHRvbixcbiAgU0NTU2lkZWJhck1haWFrZXJOYXZMYWJlbCxcbiAgU0NTU2lkZWJhck1haWFrZXJOYXZCYWRnZU5ldyxcbiAgU0NTU2lkZWJhckNvbnZlcnNhdGlvbnNIZWFkaW5nLFxuICBTQ1NTaWRlYmFyQ2hhdHNTY3JvbGwsXG4gIFNDU1NpZGViYXJFcnJvclN0YXRlQ29sdW1uLFxuICBTQ1NTaWRlYmFyRXJyb3JTdGF0ZVRvcCxcbiAgU0NTU2lkZWJhckVycm9yQmFubmVyLFxuICBTQ1NTaWRlYmFyRXJyb3JCYW5uZXJJY29uV3JhcCxcbiAgU0NTU2lkZWJhckVycm9yQmFubmVyTWVzc2FnZSxcbiAgU0NTU2lkZWJhckxvYWRpbmdBcmVhLFxuICBTQ1NTaWRlYmFyTG9hZE1vcmVSb3csXG4gIFNDU1NpZGViYXJFbXB0eUNoYXRzLFxuICBTQ1NTaWRlYmFyRW1wdHlDaGF0c1RleHQsXG4gIFNDU1NpZGViYXJDaGF0c0Zvb3RlcixcbiAgU0NTU2lkZWJhckZvb3RlckFjdGlvbnMsXG4gIFNDU1NpZGViYXJDb2xsYXBzZWREaXZpZGVyLFxufSBmcm9tICcuL1NpZGViYXIubGF5b3V0LnN0eWxlcydcblxuY29uc3QgYWN0aW9ucyA9IHtcbiAgZWRpdDogKHByb3BzOiBhbnkpID0+IDxFZGl0UXVlc3Rpb25Nb2RhbCB7Li4ucHJvcHN9IC8+LFxuICBkZWxldGU6IChwcm9wczogYW55KSA9PiA8RGVsZXRlUXVlc3Rpb25Nb2RhbCB7Li4ucHJvcHN9IC8+LFxufVxuXG4vKiogQWJyZXZpYSBcImVzcGVjaWFsaXN0YVwiL1wiZXNwZWNpYWxpc3RcIiDihpIgXCJFc3AuXCIgKEVTL1BUKSB5IFwic3BlY2lhbGlzdFwiIOKGkiBcIlNwZWMuXCIgKEVOKSBlbiBlbCBub21icmUgZGVsIGFnZW50ZS4gKi9cbmNvbnN0IExpc3RIaXN0b3J5Q2hhdCA9ICh7XG4gIGNoYXQsXG4gIG9uQ2xpY2ssXG4gIGlzTW9kYWxPcGVuLFxuICBvbk9wZW5Nb2RhbCxcbiAgb25DbG9zZU1vZGFsLFxuICBoYW5kbGVycyxcbiAgaXNTZWxlY3RlZCxcbiAgaW5kZXgsXG59OiB7XG4gIGNoYXQ6IGFueVxuICBvbkNsaWNrOiAoY2hhdDogYW55KSA9PiB2b2lkXG4gIGlzTW9kYWxPcGVuOiBib29sZWFuXG4gIG9uT3Blbk1vZGFsOiAoY2hhdElkOiBzdHJpbmcpID0+IHZvaWRcbiAgb25DbG9zZU1vZGFsOiAoKSA9PiB2b2lkXG4gIGhhbmRsZXJzOiB7XG4gICAgaGFuZGxlRGVsZXRlQ2hhdDogKGNoYXQ6IGFueSkgPT4gdm9pZFxuICAgIGhhbmRsZVVwZGF0ZUNoYXQ6IChjaGF0OiBhbnkpID0+IHZvaWRcbiAgfVxuICBpc1NlbGVjdGVkOiBib29sZWFuXG4gIGluZGV4OiBudW1iZXJcbn0pID0+IHtcbiAgY29uc3QgdGV4dFJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbClcbiAgY29uc3QgYWdlbnRSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IGRpc3BsYXlUaXRsZSA9IHVzZU1lbW8oKCkgPT4gZm9ybWF0Q2hhdExpc3RUaXRsZU1lbnRpb25zKGNoYXQudGl0bGUpLCBbY2hhdC50aXRsZV0pXG4gIGNvbnN0IGRpc3BsYXlBZ2VudCA9IGdldEFnZW50RGlzcGxheU5hbWUoY2hhdC5hZ2VudFR5cGUsIGNoYXQuYWdlbnQpXG4gIGNvbnN0IGNvbnRleHROYW1lID0gY2hhdC5wcm9qZWN0TmFtZSB8fCBjaGF0LmNsaWVudE5hbWVcbiAgY29uc3QgeyBzaG93VG9vbHRpcCB9ID0gdXNlUmVzaXplTGlzdGVuZXIodGV4dFJlZiwgW2Rpc3BsYXlUaXRsZV0pXG4gIGNvbnN0IHsgc2hvd1Rvb2x0aXA6IHNob3dUb29sdGlwQWdlbnQgfSA9IHVzZVJlc2l6ZUxpc3RlbmVyKGFnZW50UmVmLCBbY2hhdC5hZ2VudF0pXG4gIGNvbnN0IHsgdCB9ID0gdXNlVCgpXG4gIGNvbnN0IFthY3Rpb24sIHNldEFjdGlvbl0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKVxuXG4gIGNvbnN0IG1lbnVJdGVtcyA9IFtcbiAgICB7XG4gICAgICBsYWJlbDogdCgnaGlzdG9yeS5tZW51LnJlbmFtZScpLFxuICAgICAgb25DbGlja0l0ZW06IChjaGF0SWQ6IHN0cmluZykgPT4ge1xuICAgICAgICBzZXRBY3Rpb24oJ2VkaXQnKVxuICAgICAgICBvbk9wZW5Nb2RhbChjaGF0SWQpXG4gICAgICB9LFxuICAgICAgSWNvbjogUGVuY2lsLFxuICAgICAgZXZlbnRLZXk6IEVWRU5UUy5wbUFpTWVudUVkaXQsXG4gICAgfSxcbiAgICB7XG4gICAgICBsYWJlbDogdCgnaGlzdG9yeS5tZW51LmRlbGV0ZScpLFxuICAgICAgb25DbGlja0l0ZW06IChjaGF0SWQ6IHN0cmluZykgPT4ge1xuICAgICAgICBzZXRBY3Rpb24oJ2RlbGV0ZScpXG4gICAgICAgIG9uT3Blbk1vZGFsKGNoYXRJZClcbiAgICAgIH0sXG4gICAgICBJY29uOiBUcmFzaCxcbiAgICAgIGV2ZW50S2V5OiBFVkVOVFMucG1BaU1lbnVEZWxldGUsXG4gICAgfSxcbiAgXVxuXG4gIGNvbnN0IGhhbmRsZUNvbmZpcm1BY3Rpb24gPSAoY2hhdERhdGE6IGFueSkgPT4ge1xuICAgIGlmIChhY3Rpb24gPT09ICdlZGl0Jykge1xuICAgICAgaGFuZGxlcnMuaGFuZGxlVXBkYXRlQ2hhdChjaGF0RGF0YSlcbiAgICB9IGVsc2Uge1xuICAgICAgaGFuZGxlcnMuaGFuZGxlRGVsZXRlQ2hhdChjaGF0RGF0YSlcbiAgICB9XG4gICAgc2V0QWN0aW9uKG51bGwpXG4gICAgb25DbG9zZU1vZGFsKClcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIDxTQ0xIQ1dyYXBwZXJDb250ZW50XG4gICAgICAgIG9uQ2xpY2s9e2UgPT4ge1xuICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICBvbkNsaWNrKGNoYXQpXG4gICAgICAgIH19XG4gICAgICAgIGtleT17YGNvbnZlcnNhdGlvbi0ke2NoYXQuc2Vzc2lvbkV4dGVybmFsSWR9YH1cbiAgICAgICAgaXNNb2RhbE9wZW49e2lzTW9kYWxPcGVufVxuICAgICAgICBpc1NlbGVjdGVkPXtpc1NlbGVjdGVkfVxuICAgICAgICAkaW5kZXg9e2luZGV4fVxuICAgICAgPlxuICAgICAgICA8U0NMSENXcmFwcGVyPlxuICAgICAgICAgIDxUb29sdGlwIHRpdGxlPXtzaG93VG9vbHRpcCA/IGRpc3BsYXlUaXRsZSA6ICcnfT5cbiAgICAgICAgICAgIDxTQ0xIQ1dyYXBwZXJUaXRsZSByZWY9e3RleHRSZWZ9PntkaXNwbGF5VGl0bGUgfHwgdCgnY29udmVyc2F0aW9ucy5lbXB0eUxhYmVsJyl9PC9TQ0xIQ1dyYXBwZXJUaXRsZT5cbiAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgICAgPFRvb2x0aXAgdGl0bGU9e3Nob3dUb29sdGlwQWdlbnQgPyBkaXNwbGF5QWdlbnQgKyAoY29udGV4dE5hbWUgPyBgIC0gJHtjb250ZXh0TmFtZX1gIDogJycpIDogJyd9PlxuICAgICAgICAgICAgPFNDTEhDV3JhcHBlckFnZW50PlxuICAgICAgICAgICAgICB7Y2hhdC5hZ2VudFR5cGUgPT09ICdjbG9uZScgPyAoXG4gICAgICAgICAgICAgICAgPE1BSUFJY29uIHdpZHRoPXsxNH0gaGVpZ2h0PXsxNH0gLz5cbiAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICA8c3BhbiBzdHlsZT17eyBmb250U2l6ZTogJzE0cHgnIH19PntjaGF0LmVtb2ppfTwvc3Bhbj5cbiAgICAgICAgICAgICAgKX1cblxuICAgICAgICAgICAgICA8U0NMSENXcmFwcGVyQWdlbnRUZXh0IHJlZj17YWdlbnRSZWZ9PlxuICAgICAgICAgICAgICAgIHtkaXNwbGF5QWdlbnR9XG4gICAgICAgICAgICAgICAge2NvbnRleHROYW1lICYmIGAgLSAke2NvbnRleHROYW1lfWB9XG4gICAgICAgICAgICAgIDwvU0NMSENXcmFwcGVyQWdlbnRUZXh0PlxuICAgICAgICAgICAgPC9TQ0xIQ1dyYXBwZXJBZ2VudD5cbiAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIDwvU0NMSENXcmFwcGVyPlxuICAgICAgICA8U0NMSENXcmFwcGVyQnV0dG9uQWN0aW9ucz5cbiAgICAgICAgICA8Q1VCdXR0b25cbiAgICAgICAgICAgIGljb25Pbmx5XG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgdmFyaWFudD1cInRleHRcIlxuICAgICAgICAgICAgb25DbGljaz17ZXZlbnQgPT4ge1xuICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxuICAgICAgICAgICAgICBvbk9wZW5Nb2RhbChjaGF0LmlkKVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8TWVudURvdHMgd2lkdGg9ezIwfSBoZWlnaHQ9ezIwfSAvPlxuICAgICAgICAgIDwvQ1VCdXR0b24+XG4gICAgICAgICAge2lzTW9kYWxPcGVuICYmICFhY3Rpb24gJiYgKFxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBkYXRhLW1vZGFsLWNvbnRhaW5lclxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICAgICAgICAgIHRvcDogJzMycHgnLFxuICAgICAgICAgICAgICAgIHJpZ2h0OiAnMTZweCcsXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiAnd2hpdGUnLFxuICAgICAgICAgICAgICAgIHpJbmRleDogMTAwMCxcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgICAgICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXG4gICAgICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnNHB4JyxcbiAgICAgICAgICAgICAgICBib3JkZXI6ICcxcHggc29saWQgcmdiYSgyMjQsIDIyNCwgMjI0LCAxKScsXG4gICAgICAgICAgICAgICAgbWluV2lkdGg6ICcxMjRweCcsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHttZW51SXRlbXMubWFwKCh7IGxhYmVsLCBvbkNsaWNrSXRlbSwgSWNvbiwgZXZlbnRLZXkgfSkgPT4gKFxuICAgICAgICAgICAgICAgIDxPcHRpb25JdGVtXG4gICAgICAgICAgICAgICAgICBrZXk9e2xhYmVsfVxuICAgICAgICAgICAgICAgICAgbGFiZWw9e2xhYmVsfVxuICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DbGlja0l0ZW0oY2hhdC5pZCl9XG4gICAgICAgICAgICAgICAgICBJY29uPXtJY29ufVxuICAgICAgICAgICAgICAgICAgZXZlbnRLZXk9e2V2ZW50S2V5fVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9TQ0xIQ1dyYXBwZXJCdXR0b25BY3Rpb25zPlxuICAgICAgPC9TQ0xIQ1dyYXBwZXJDb250ZW50PlxuICAgICAgeyEhYWN0aW9uICYmXG4gICAgICAgIGFjdGlvbnNbYWN0aW9uXSh7XG4gICAgICAgICAgb25DbG9zZTogKCkgPT4ge1xuICAgICAgICAgICAgb25DbG9zZU1vZGFsKClcbiAgICAgICAgICAgIHNldEFjdGlvbihudWxsKVxuICAgICAgICAgIH0sXG4gICAgICAgICAgY2hhdCxcbiAgICAgICAgICBoYW5kbGVyczoge1xuICAgICAgICAgICAgaGFuZGxlQ29uZmlybUFjdGlvbixcbiAgICAgICAgICAgIGhhbmRsZVNldElzT3Blbk1vZGFsOiBvbkNsb3NlTW9kYWwsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSl9XG4gICAgPC8+XG4gIClcbn1cblxuZXhwb3J0IGNvbnN0IFNpZGViYXIgPSAoe1xuICBvbkdvVG9DaGF0LFxuICBvbkVycm9yID0gKCkgPT4gbnVsbCxcbiAgaGFuZGxlR29Ub0hvbWUsXG4gIGhhbmRsZU9wZW5NYXJrZXRwbGFjZSxcbiAgc2hvd05ld0NoYXQsXG4gIHJlZmV0Y2hDaGF0cyxcbiAgaGFuZGxlU2V0UmVmZXRjaENoYXRzLFxuICBoYXNFcnJvcixcbiAgcmVzZXRTZWxlY3RlZENoYXRSZWYsXG4gIGFnZW50c05hdkFjdGl2ZSA9IG51bGwsXG59OiB7XG4gIG9uR29Ub0NoYXQ6IChjaGF0SWQ6IHN0cmluZykgPT4gdm9pZFxuICBvbkVycm9yOiAoKSA9PiB2b2lkXG4gIGhhbmRsZUdvVG9Ib21lOiAoKSA9PiB2b2lkXG4gIGhhbmRsZU9wZW5NYXJrZXRwbGFjZTogKCkgPT4gdm9pZFxuICBzaG93TmV3Q2hhdDogYm9vbGVhblxuICByZWZldGNoQ2hhdHM6IGJvb2xlYW5cbiAgaGFuZGxlU2V0UmVmZXRjaENoYXRzOiAocmVmZXRjaDogYm9vbGVhbikgPT4gdm9pZFxuICBoYXNFcnJvcjogYm9vbGVhblxuICByZXNldFNlbGVjdGVkQ2hhdFJlZj86IE11dGFibGVSZWZPYmplY3Q8KCgpID0+IHZvaWQpIHwgbnVsbD5cbiAgLyoqIFJlc2FsdGEgTWFpYWtlciBvIE1pcyBhZ2VudGVzICovXG4gIGFnZW50c05hdkFjdGl2ZT86ICdtYWlha2VyJyB8ICdteUFnZW50cycgfCBudWxsXG59KSA9PiB7XG4gIGNvbnN0IHsgdCwgaTE4biB9ID0gdXNlVCgpXG4gIGNvbnN0IFtpc09wZW4sIHNldElzT3Blbl0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2lzT3Blbk1vZGFsLCBzZXRJc09wZW5Nb2RhbF0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKVxuICBjb25zdCBbc2VsZWN0ZWRDaGF0LCBzZXRTZWxlY3RlZENoYXRdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbClcbiAgY29uc3QgY2hhdHNGZXRjaGVkUmVmID0gdXNlUmVmKGZhbHNlKVxuICBjb25zdCBwZW5kaW5nU2Vzc2lvbnNSZWZldGNoUmVmID0gdXNlUmVmKGZhbHNlKVxuICBjb25zdCBjaGF0c0NvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbClcbiAgY29uc3Qgc2hvdWxkRmV0Y2hTZXNzaW9ucyA9IGlzT3BlblxuICBjb25zdCB1c2VyID0gdXNlVXNlcigpXG4gIGNvbnN0IGV2ZW50QW1wbGl0dWRlID0gdXNlRXZlbnQoKVxuICBjb25zdCB7IGFnZW50OiBzZWxlY3RlZEFnZW50LCBzZWxlY3RBZ2VudCwgc2V0UHJvamVjdCwgc2V0Q2xpZW50LCBzZXRUYXNrIH0gPSB1c2VHbG9iYWxDb250ZXh0KClcbiAgY29uc3Qge1xuICAgIGxvYWRpbmdDaGF0cyxcbiAgICBjaGF0cyxcbiAgICBkZWxldGVDaGF0LFxuICAgIHVwZGF0ZUNoYXQsXG4gICAgZmV0Y2hDaGF0cyxcbiAgICBsaW1pdCxcbiAgICBvZmZzZXQsXG4gICAgaGFzTW9yZUNoYXRzLFxuICAgIGxvYWRNb3JlQ2hhdHMsXG4gICAgaXNMb2FkaW5nTW9yZUNoYXRzLFxuICB9ID0gdXNlQ2hhdHMoe1xuICAgIG9uRXJyb3IsXG4gIH0pXG5cbiAgY29uc3QgdXNlclBlcm1pc3Npb25zID0gdXNlcj8ucGVybWlzc2lvbnM/LmFpX2FnZW50c1xuICBjb25zdCBjYW5DcmVhdGVBZ2VudHMgPSAhIXVzZXJQZXJtaXNzaW9ucz8uY3JlYXRlXG4gIGNvbnN0IGhhc011bHRpQWdlbnRzRmVhdHVyZUFjY2VzcyA9ICEhd2luZG93Lk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFNcbiAgY29uc3QgY2FuVmlld0FnZW50cyA9ICEhdXNlclBlcm1pc3Npb25zPy52aWV3ICYmIGhhc011bHRpQWdlbnRzRmVhdHVyZUFjY2Vzc1xuICBjb25zdCBzaG93TWFya2V0cGxhY2VTaWRlYmFyQnV0dG9uID0gISFjYW5DcmVhdGVBZ2VudHMgJiYgISF3aW5kb3cuTUFJQV9NQVJLRVRQTEFDRV9NQUlBS0VSXG4gIGNvbnN0IGFnZW50TmF2QnV0dG9uQ291bnQgPSAoKHNob3dNYXJrZXRwbGFjZVNpZGViYXJCdXR0b24gPyAxIDogMCkgKyAoY2FuVmlld0FnZW50cyA/IDEgOiAwKSkgYXMgMCB8IDEgfCAyXG4gIGNvbnN0IHNob3dBZ2VudHNOYXZCbG9jayA9IHNob3dNYXJrZXRwbGFjZVNpZGViYXJCdXR0b24gfHwgY2FuVmlld0FnZW50c1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHJlc2V0U2VsZWN0ZWRDaGF0UmVmKSB7XG4gICAgICByZXNldFNlbGVjdGVkQ2hhdFJlZi5jdXJyZW50ID0gKCkgPT4gc2V0U2VsZWN0ZWRDaGF0KG51bGwpXG4gICAgfVxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAocmVzZXRTZWxlY3RlZENoYXRSZWYpIHtcbiAgICAgICAgcmVzZXRTZWxlY3RlZENoYXRSZWYuY3VycmVudCA9IG51bGxcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtyZXNldFNlbGVjdGVkQ2hhdFJlZl0pXG5cbiAgY29uc3QgaGFuZGxlRGVsZXRlQ2hhdCA9IGFzeW5jIChjaGF0OiBhbnkpID0+IHtcbiAgICBkZWxldGVDaGF0KGNoYXQuc2Vzc2lvbkV4dGVybmFsSWQpXG4gICAgc2V0SXNPcGVuTW9kYWwobnVsbClcbiAgICBoYW5kbGVHb1RvSG9tZSgpXG4gIH1cblxuICBjb25zdCBoYW5kbGVVcGRhdGVDaGF0ID0gKGNoYXQ6IGFueSkgPT4ge1xuICAgIHVwZGF0ZUNoYXQoY2hhdClcbiAgICBzZXRJc09wZW5Nb2RhbChudWxsKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlT3Blbk1vZGFsID0gKGNoYXRJZDogc3RyaW5nKSA9PiB7XG4gICAgaWYgKGlzT3Blbk1vZGFsICYmIGlzT3Blbk1vZGFsICE9PSBjaGF0SWQpIHtcbiAgICAgIHNldElzT3Blbk1vZGFsKG51bGwpXG4gICAgfSBlbHNlIHtcbiAgICAgIHNldElzT3Blbk1vZGFsKGNoYXRJZClcbiAgICB9XG4gIH1cblxuICBjb25zdCBoYW5kbGVDbG9zZU1vZGFsID0gKCkgPT4ge1xuICAgIHNldElzT3Blbk1vZGFsKG51bGwpXG4gIH1cblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZSA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgaWYgKGlzT3Blbk1vZGFsICYmICEoZXZlbnQudGFyZ2V0IGFzIEVsZW1lbnQpLmNsb3Nlc3QoJ1tkYXRhLW1vZGFsLWNvbnRhaW5lcl0nKSkge1xuICAgICAgICBzZXRJc09wZW5Nb2RhbChudWxsKVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChpc09wZW5Nb2RhbCkge1xuICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgaGFuZGxlQ2xpY2tPdXRzaWRlKVxuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBoYW5kbGVDbGlja091dHNpZGUpXG4gICAgfVxuICB9LCBbaXNPcGVuTW9kYWxdKVxuXG4gIGNvbnN0IGhhbmRsZVRvZ2dsZVNpZGViYXIgPSAoKSA9PiB7XG4gICAgaWYgKGlzT3Blbk1vZGFsKSB7XG4gICAgICBzZXRJc09wZW5Nb2RhbChudWxsKVxuICAgIH1cbiAgICBldmVudEFtcGxpdHVkZShFVkVOVFMuYWlDaGF0U2lkZWJhciwgeyBhY3Rpb246IGlzT3BlbiA/ICdjbG9zZScgOiAnb3BlbicgfSlcbiAgICBzZXRJc09wZW4ocHJldiA9PiAhcHJldilcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZU9wZW5DcmVhdGVBZ2VudCA9IGFzeW5jICgpID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaE1haWEoe1xuICAgICAgICBwYXRoOiBgYWdlbnRzP2FnZW50X3R5cGU9Y2xvbmUmbGFuZz0ke21hcENPUkxhbmcoaTE4bi5sYW5ndWFnZSl9YCxcbiAgICAgICAgbWV0aG9kOiAnR0VUJyxcbiAgICAgIH0pXG4gICAgICBjb25zdCBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpXG4gICAgICBjb25zdCBtYWlha2VyQWdlbnQgPSAoZGF0YS5kYXRhIHx8IFtdKS5maW5kKChhZ2VudDogYW55KSA9PiBhZ2VudC50eXBlID09PSAnY2xvbmUnICYmIGFnZW50LmVudGl0eSA9PT0gJ2dsb2JhbCcpXG5cbiAgICAgIGlmICghbWFpYWtlckFnZW50KSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBzZXRQcm9qZWN0KG51bGwpXG4gICAgICBzZXRDbGllbnQ/LihudWxsKVxuICAgICAgc2V0VGFzayhudWxsKVxuICAgICAgc2VsZWN0QWdlbnQobWFpYWtlckFnZW50KVxuICAgICAgaGFuZGxlR29Ub0hvbWUoKVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBvbkVycm9yKClcbiAgICB9XG4gIH1cblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghc2hvdWxkRmV0Y2hTZXNzaW9ucykge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGlmICghY2hhdHNGZXRjaGVkUmVmLmN1cnJlbnQpIHtcbiAgICAgIGNoYXRzRmV0Y2hlZFJlZi5jdXJyZW50ID0gdHJ1ZVxuICAgICAgZmV0Y2hDaGF0cyh7IGxpbWl0LCBvZmZzZXQgfSlcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBpZiAocGVuZGluZ1Nlc3Npb25zUmVmZXRjaFJlZi5jdXJyZW50IHx8IHJlZmV0Y2hDaGF0cykge1xuICAgICAgcGVuZGluZ1Nlc3Npb25zUmVmZXRjaFJlZi5jdXJyZW50ID0gZmFsc2VcbiAgICAgIGZldGNoQ2hhdHMoeyBsaW1pdCwgb2Zmc2V0IH0pXG4gICAgICBpZiAocmVmZXRjaENoYXRzKSB7XG4gICAgICAgIGhhbmRsZVNldFJlZmV0Y2hDaGF0cyhmYWxzZSlcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtzaG91bGRGZXRjaFNlc3Npb25zLCByZWZldGNoQ2hhdHMsIGhhbmRsZVNldFJlZmV0Y2hDaGF0cywgZmV0Y2hDaGF0cywgbGltaXQsIG9mZnNldF0pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBoYW5kbGVTY3JvbGwgPSAoKSA9PiB7XG4gICAgICBpZiAoIWNoYXRzQ29udGFpbmVyUmVmLmN1cnJlbnQgfHwgIWhhc01vcmVDaGF0cyB8fCBpc0xvYWRpbmdNb3JlQ2hhdHMgfHwgaGFzRXJyb3IpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHsgc2Nyb2xsVG9wLCBzY3JvbGxIZWlnaHQsIGNsaWVudEhlaWdodCB9ID0gY2hhdHNDb250YWluZXJSZWYuY3VycmVudFxuICAgICAgY29uc3QgaXNBdEJvdHRvbSA9IHNjcm9sbFRvcCArIGNsaWVudEhlaWdodCA+PSBzY3JvbGxIZWlnaHQgLSAxMFxuXG4gICAgICBpZiAoaXNBdEJvdHRvbSkge1xuICAgICAgICBsb2FkTW9yZUNoYXRzKClcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBjb250YWluZXIgPSBjaGF0c0NvbnRhaW5lclJlZi5jdXJyZW50XG4gICAgaWYgKGNvbnRhaW5lcikge1xuICAgICAgY29udGFpbmVyLmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGhhbmRsZVNjcm9sbClcbiAgICB9XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgaWYgKGNvbnRhaW5lcikge1xuICAgICAgICBjb250YWluZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgaGFuZGxlU2Nyb2xsKVxuICAgICAgfVxuICAgIH1cbiAgfSwgW2hhc01vcmVDaGF0cywgaXNMb2FkaW5nTW9yZUNoYXRzLCBsb2FkTW9yZUNoYXRzLCBoYXNFcnJvcl0pXG5cbiAgY29uc3QgaGFuZGxlTmV3Q2hhdCA9IGFzeW5jICgpID0+IHtcbiAgICBldmVudEFtcGxpdHVkZShFVkVOVFMuYWlTaWRlYmFyTmV3Q2hhdClcbiAgICBpZiAoaXNPcGVuTW9kYWwpIHtcbiAgICAgIHNldElzT3Blbk1vZGFsKG51bGwpXG4gICAgfVxuICAgIHNldFNlbGVjdGVkQ2hhdChudWxsKVxuICAgIGlmIChzaG91bGRGZXRjaFNlc3Npb25zKSB7XG4gICAgICBhd2FpdCBmZXRjaENoYXRzKHsgbGltaXQsIG9mZnNldDogMCB9KVxuICAgIH0gZWxzZSB7XG4gICAgICBwZW5kaW5nU2Vzc2lvbnNSZWZldGNoUmVmLmN1cnJlbnQgPSB0cnVlXG4gICAgfVxuICAgIGhhbmRsZUdvVG9Ib21lKClcbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgaGFuZGxlUmVmZXRjaFNlc3Npb24gPSAoKSA9PiB7XG4gICAgICBpZiAoc2hvdWxkRmV0Y2hTZXNzaW9ucykge1xuICAgICAgICBmZXRjaENoYXRzKHsgbGltaXQ6IDIwLCBvZmZzZXQ6IDAgfSlcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICBwZW5kaW5nU2Vzc2lvbnNSZWZldGNoUmVmLmN1cnJlbnQgPSB0cnVlXG4gICAgfVxuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3JlZmV0Y2gtc2Vzc2lvbicsIGhhbmRsZVJlZmV0Y2hTZXNzaW9uKVxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdyZWZldGNoLXNlc3Npb24nLCBoYW5kbGVSZWZldGNoU2Vzc2lvbilcbiAgICB9XG4gIH0sIFtzaG91bGRGZXRjaFNlc3Npb25zLCBmZXRjaENoYXRzXSlcblxuICBjb25zdCBzaG93TmV3Q2hhdEJ1dHRvbiA9XG4gICAgIXNob3dOZXdDaGF0ICYmXG4gICAgIWhhc0Vycm9yICYmXG4gICAgIWxvYWRpbmdDaGF0cyAmJlxuICAgICgodXNlclBlcm1pc3Npb25zPy52aWV3ICYmXG4gICAgICAhc2VsZWN0ZWRBZ2VudD8uaXNfZGVsZXRlZCAmJlxuICAgICAgIXNlbGVjdGVkQWdlbnQ/Lmhhc19ub3RfcGVybWlzc2lvbnMgJiZcbiAgICAgICFzZWxlY3RlZEFnZW50Py5oYXNfbm90X2FjY2VzcykgfHxcbiAgICAgICghdXNlclBlcm1pc3Npb25zPy52aWV3ICYmXG4gICAgICAgICFzZWxlY3RlZEFnZW50Py5pc19kZWxldGVkICYmXG4gICAgICAgICFzZWxlY3RlZEFnZW50Py5oYXNfbm90X3Blcm1pc3Npb25zICYmXG4gICAgICAgICFzZWxlY3RlZEFnZW50Py5oYXNfbm90X2FjY2VzcykpXG5cbiAgcmV0dXJuIChcbiAgICA8U0NTU2lkZWJhclJvb3QgJGlzT3Blbj17aXNPcGVufT5cbiAgICAgIDxTQ1NTaWRlYmFyVG9vbGJhciAkaXNPcGVuPXtpc09wZW59PlxuICAgICAgICA8VG9vbHRpcCB0aXRsZT17aXNPcGVuID8gdCgnY29udmVyc2F0aW9ucy5jb2xsYXBzZScpIDogdCgnaGlzdG9yeS50b29sdGlwJyl9PlxuICAgICAgICAgIDxTQ1NXcmFwcGVyQ29sbGFwc2VkQnV0dG9uIG9uQ2xpY2s9e2hhbmRsZVRvZ2dsZVNpZGViYXJ9IGlzT3Blbj17aXNPcGVufT5cbiAgICAgICAgICAgIHtpc09wZW4gPyAoXG4gICAgICAgICAgICAgIDxDaGV2cm9uRG91YmxlTGVmdCBjb2xvcj1cInJnYmEoMTAyLCAxMDIsIDEwMiwgMSlcIiB3aWR0aD17MTZ9IGhlaWdodD17MTZ9IC8+XG4gICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICA8SGlzdG9yeSBjb2xvcj1cInJnYmEoMTMsIDEzLCAxMywgMSlcIiB3aWR0aD17MjB9IGhlaWdodD17MjB9IC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvU0NTV3JhcHBlckNvbGxhcHNlZEJ1dHRvbj5cbiAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICB7c2hvd05ld0NoYXRCdXR0b24gPyAoXG4gICAgICAgICAgPFRvb2x0aXAgdGl0bGU9e3QoJ2NvbnZlcnNhdGlvbnMubmV3Q2hhdCcpfT5cbiAgICAgICAgICAgIDxTQ1NXcmFwcGVyTmV3Q2hhdEljb24gb25DbGljaz17aGFuZGxlTmV3Q2hhdH0+XG4gICAgICAgICAgICAgIDxOZXdDaGF0IHdpZHRoPXsxNn0gaGVpZ2h0PXsxNn0gLz5cbiAgICAgICAgICAgIDwvU0NTV3JhcHBlck5ld0NoYXRJY29uPlxuICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIHshaXNPcGVuICYmIHNob3dBZ2VudHNOYXZCbG9jayA/IChcbiAgICAgICAgICA8PlxuICAgICAgICAgICAgPFNDU1NpZGViYXJDb2xsYXBzZWREaXZpZGVyIC8+XG4gICAgICAgICAgICB7c2hvd01hcmtldHBsYWNlU2lkZWJhckJ1dHRvbiA/IChcbiAgICAgICAgICAgICAgPFRvb2x0aXAgdGl0bGU9e3QoJ2NvbnZlcnNhdGlvbnMubWFpYWtlck5hdicpfT5cbiAgICAgICAgICAgICAgICA8U0NTV3JhcHBlckFnZW50c05hdkljb25cbiAgICAgICAgICAgICAgICAgICRhY3RpdmU9e2FnZW50c05hdkFjdGl2ZSA9PT0gJ21haWFrZXInfVxuICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBldmVudEFtcGxpdHVkZShFVkVOVFMuYWlDaGF0TXBPcGVuKVxuICAgICAgICAgICAgICAgICAgICBoYW5kbGVPcGVuQ3JlYXRlQWdlbnQoKVxuICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8TWFpYVN0b3JlSWNvbiBzaXplPXsxNn0gLz5cbiAgICAgICAgICAgICAgICA8L1NDU1dyYXBwZXJBZ2VudHNOYXZJY29uPlxuICAgICAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIHtjYW5WaWV3QWdlbnRzID8gKFxuICAgICAgICAgICAgICA8VG9vbHRpcCB0aXRsZT17dCgnY29udmVyc2F0aW9ucy5teUFnZW50c05hdicpfT5cbiAgICAgICAgICAgICAgICA8U0NTV3JhcHBlckFnZW50c05hdkljb25cbiAgICAgICAgICAgICAgICAgICRhY3RpdmU9e2FnZW50c05hdkFjdGl2ZSA9PT0gJ215QWdlbnRzJ31cbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpU2lkZWJhck15QWdlbnRzKVxuICAgICAgICAgICAgICAgICAgICBoYW5kbGVPcGVuTWFya2V0cGxhY2UoKVxuICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8TXlBZ2VudHNOYXZJY29uIHNpemU9ezE2fSAvPlxuICAgICAgICAgICAgICAgIDwvU0NTV3JhcHBlckFnZW50c05hdkljb24+XG4gICAgICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvU0NTU2lkZWJhclRvb2xiYXI+XG4gICAgICA8U0NTU2lkZWJhckJvZHkgJGlzT3Blbj17aXNPcGVufT5cbiAgICAgICAge2lzT3BlbiA/IChcbiAgICAgICAgICA8U0NTU2lkZWJhck9wZW5QYW5lbD5cbiAgICAgICAgICAgIDxTQ1NTaWRlYmFyQWdlbnRzQmxvY2s+XG4gICAgICAgICAgICAgIHtzaG93QWdlbnRzTmF2QmxvY2sgPyAoXG4gICAgICAgICAgICAgICAgPFNDU1NpZGViYXJBZ2VudHNBY3Rpb25zPlxuICAgICAgICAgICAgICAgICAge3Nob3dNYXJrZXRwbGFjZVNpZGViYXJCdXR0b24gPyAoXG4gICAgICAgICAgICAgICAgICAgIDxTQ1NTaWRlYmFyTWFpYWtlck5hdkJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50QW1wbGl0dWRlKEVWRU5UUy5haUNoYXRNcE9wZW4pXG4gICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVPcGVuQ3JlYXRlQWdlbnQoKVxuICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgJGFjdGl2ZT17YWdlbnRzTmF2QWN0aXZlID09PSAnbWFpYWtlcid9XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8TWFpYVN0b3JlSWNvbiBzaXplPXsxNn0gLz5cbiAgICAgICAgICAgICAgICAgICAgICA8U0NTU2lkZWJhck1haWFrZXJOYXZMYWJlbD57dCgnY29udmVyc2F0aW9ucy5tYWlha2VyTmF2Jyl9PC9TQ1NTaWRlYmFyTWFpYWtlck5hdkxhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgIDxTQ1NTaWRlYmFyTWFpYWtlck5hdkJhZGdlTmV3Pnt0KCdob21lTWVudS5tYWlha2VyLmJhZGdlTmV3Jyl9PC9TQ1NTaWRlYmFyTWFpYWtlck5hdkJhZGdlTmV3PlxuICAgICAgICAgICAgICAgICAgICA8L1NDU1NpZGViYXJNYWlha2VyTmF2QnV0dG9uPlxuICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgICB7Y2FuVmlld0FnZW50cyA/IChcbiAgICAgICAgICAgICAgICAgICAgPFNDU1NpZGViYXJNYWlha2VyTmF2QnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpU2lkZWJhck15QWdlbnRzKVxuICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlT3Blbk1hcmtldHBsYWNlKClcbiAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICRhY3RpdmU9e2FnZW50c05hdkFjdGl2ZSA9PT0gJ215QWdlbnRzJ31cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDxNeUFnZW50c05hdkljb24gc2l6ZT17MTZ9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgPFNDU1NpZGViYXJNYWlha2VyTmF2TGFiZWw+e3QoJ2NvbnZlcnNhdGlvbnMubXlBZ2VudHNOYXYnKX08L1NDU1NpZGViYXJNYWlha2VyTmF2TGFiZWw+XG4gICAgICAgICAgICAgICAgICAgIDwvU0NTU2lkZWJhck1haWFrZXJOYXZCdXR0b24+XG4gICAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgICA8L1NDU1NpZGViYXJBZ2VudHNBY3Rpb25zPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgPFNDU1NpZGViYXJDb252ZXJzYXRpb25zSGVhZGluZz57dCgnY29udmVyc2F0aW9ucy50aXRsZScpfTwvU0NTU2lkZWJhckNvbnZlcnNhdGlvbnNIZWFkaW5nPlxuICAgICAgICAgICAgPC9TQ1NTaWRlYmFyQWdlbnRzQmxvY2s+XG4gICAgICAgICAgICA8U0NTU2lkZWJhckNoYXRzU2Nyb2xsXG4gICAgICAgICAgICAgIHJlZj17Y2hhdHNDb250YWluZXJSZWZ9XG4gICAgICAgICAgICAgICRoYXNDaGF0cz17Y2hhdHMubGVuZ3RoID4gMH1cbiAgICAgICAgICAgICAgJG9mZnNldFZhcmlhbnQ9e2hhc0Vycm9yID8gJ2Vycm9yJyA6ICdkZWZhdWx0J31cbiAgICAgICAgICAgICAgJGFnZW50TmF2QnV0dG9uQ291bnQ9e2FnZW50TmF2QnV0dG9uQ291bnR9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtoYXNFcnJvciAmJiAhY2hhdHMubGVuZ3RoID8gKFxuICAgICAgICAgICAgICAgIDxTQ1NTaWRlYmFyRXJyb3JTdGF0ZUNvbHVtbj5cbiAgICAgICAgICAgICAgICAgIDxTQ1NTaWRlYmFyRXJyb3JTdGF0ZVRvcD5cbiAgICAgICAgICAgICAgICAgICAgPEVycm9yU3RhdGUgLz5cbiAgICAgICAgICAgICAgICAgIDwvU0NTU2lkZWJhckVycm9yU3RhdGVUb3A+XG4gICAgICAgICAgICAgICAgICA8U0NTU2lkZWJhckVycm9yQmFubmVyPlxuICAgICAgICAgICAgICAgICAgICA8U0NTU2lkZWJhckVycm9yQmFubmVySWNvbldyYXA+XG4gICAgICAgICAgICAgICAgICAgICAgPEVycm9ySWNvbiAvPlxuICAgICAgICAgICAgICAgICAgICA8L1NDU1NpZGViYXJFcnJvckJhbm5lckljb25XcmFwPlxuICAgICAgICAgICAgICAgICAgICA8U0NTU2lkZWJhckVycm9yQmFubmVyTWVzc2FnZT57dCgnY29udmVyc2F0aW9ucy5lcnJvcicpfTwvU0NTU2lkZWJhckVycm9yQmFubmVyTWVzc2FnZT5cbiAgICAgICAgICAgICAgICAgIDwvU0NTU2lkZWJhckVycm9yQmFubmVyPlxuICAgICAgICAgICAgICAgIDwvU0NTU2lkZWJhckVycm9yU3RhdGVDb2x1bW4+XG4gICAgICAgICAgICAgICkgOiBsb2FkaW5nQ2hhdHMgPyAoXG4gICAgICAgICAgICAgICAgPFNDU1NpZGViYXJMb2FkaW5nQXJlYT5cbiAgICAgICAgICAgICAgICAgIDxTaWRlYmFyQ2hhdHNTa2VsZXRvbiAvPlxuICAgICAgICAgICAgICAgIDwvU0NTU2lkZWJhckxvYWRpbmdBcmVhPlxuICAgICAgICAgICAgICApIDogY2hhdHMubGVuZ3RoID8gKFxuICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICB7Y2hhdHMubWFwKChjaGF0LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgIDxMaXN0SGlzdG9yeUNoYXRcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleT17Y2hhdC5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4PXtpbmRleH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNoYXQ9e2NoYXR9XG4gICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXtjaGF0RGF0YSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc09wZW5Nb2RhbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldElzT3Blbk1vZGFsKG51bGwpXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0U2VsZWN0ZWRDaGF0KGNoYXREYXRhLnNlc3Npb25FeHRlcm5hbElkKVxuICAgICAgICAgICAgICAgICAgICAgICAgICBvbkdvVG9DaGF0KGNoYXREYXRhKVxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlzTW9kYWxPcGVuPXtpc09wZW5Nb2RhbCA9PT0gY2hhdC5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgIG9uT3Blbk1vZGFsPXtoYW5kbGVPcGVuTW9kYWx9XG4gICAgICAgICAgICAgICAgICAgICAgICBvbkNsb3NlTW9kYWw9e2hhbmRsZUNsb3NlTW9kYWx9XG4gICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVycz17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVEZWxldGVDaGF0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVVcGRhdGVDaGF0LFxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlzU2VsZWN0ZWQ9e3NlbGVjdGVkQ2hhdCA9PT0gY2hhdC5zZXNzaW9uRXh0ZXJuYWxJZH1cbiAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgIHtpc0xvYWRpbmdNb3JlQ2hhdHMgJiYgKFxuICAgICAgICAgICAgICAgICAgICA8U0NTU2lkZWJhckxvYWRNb3JlUm93PlxuICAgICAgICAgICAgICAgICAgICAgIDxTaWRlYmFyQ2hhdHNTa2VsZXRvbiBjb3VudD17Mn0gLz5cbiAgICAgICAgICAgICAgICAgICAgPC9TQ1NTaWRlYmFyTG9hZE1vcmVSb3c+XG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgIDxTQ1NTaWRlYmFyRW1wdHlDaGF0cz5cbiAgICAgICAgICAgICAgICAgIDxFbXB0eUhpc3RvcnlJY29uIC8+XG4gICAgICAgICAgICAgICAgICA8U0NTU2lkZWJhckVtcHR5Q2hhdHNUZXh0Pnt0KCdjb252ZXJzYXRpb25zLmVtcHR5Jyl9PC9TQ1NTaWRlYmFyRW1wdHlDaGF0c1RleHQ+XG4gICAgICAgICAgICAgICAgPC9TQ1NTaWRlYmFyRW1wdHlDaGF0cz5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvU0NTU2lkZWJhckNoYXRzU2Nyb2xsPlxuICAgICAgICAgICAgPFNDU1NpZGViYXJDaGF0c0Zvb3Rlcj5cbiAgICAgICAgICAgICAge2hhc0Vycm9yICYmIGNoYXRzLmxlbmd0aCA/IChcbiAgICAgICAgICAgICAgICA8U0NTU2lkZWJhckVycm9yQmFubmVyPlxuICAgICAgICAgICAgICAgICAgPFNDU1NpZGViYXJFcnJvckJhbm5lckljb25XcmFwPlxuICAgICAgICAgICAgICAgICAgICA8RXJyb3JJY29uIC8+XG4gICAgICAgICAgICAgICAgICA8L1NDU1NpZGViYXJFcnJvckJhbm5lckljb25XcmFwPlxuICAgICAgICAgICAgICAgICAgPFNDU1NpZGViYXJFcnJvckJhbm5lck1lc3NhZ2U+e3QoJ2NvbnZlcnNhdGlvbnMuZXJyb3InKX08L1NDU1NpZGViYXJFcnJvckJhbm5lck1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgPC9TQ1NTaWRlYmFyRXJyb3JCYW5uZXI+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPC9TQ1NTaWRlYmFyQ2hhdHNGb290ZXI+XG4gICAgICAgICAgPC9TQ1NTaWRlYmFyT3BlblBhbmVsPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPFNDU1NpZGViYXJGb290ZXJBY3Rpb25zICRpc09wZW49e2lzT3Blbn0gJGp1c3RpZnlCZXR3ZWVuPXshIXNlbGVjdGVkQWdlbnR9PlxuICAgICAgICAgIHtzZWxlY3RlZEFnZW50ID8gPEZlZWRiYWNrQnV0dG9uIHNlbGVjdGVkQWdlbnQ9e3NlbGVjdGVkQWdlbnR9IGlzT3Blbj17aXNPcGVufSAvPiA6IG51bGx9XG4gICAgICAgIDwvU0NTU2lkZWJhckZvb3RlckFjdGlvbnM+XG4gICAgICA8L1NDU1NpZGViYXJCb2R5PlxuICAgIDwvU0NTU2lkZWJhclJvb3Q+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBMkJBLFNBQVMsRUFBRUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLFFBQVEsUUFBUSxPQUFPO0FBQzlFLFNBQVNDLGlCQUFpQixRQUFRLG9EQUFvRDtBQUN0RixTQUFTQyxPQUFPLFFBQVEsMENBQTBDO0FBQ2xFLFNBQVNDLFFBQVEsUUFBUSw0Q0FBNEM7QUFDckUs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
|
|
@@ -42,13 +42,6 @@ export var DeleteQuestionModal = function DeleteQuestionModal(_ref) {
|
|
|
42
42
|
secondPart: t('deleteQuestionModal.secondPart'),
|
|
43
43
|
cancel: t('deleteQuestionModal.cancel'),
|
|
44
44
|
"delete": t('deleteQuestionModal.delete')
|
|
45
|
-
},
|
|
46
|
-
skill: {
|
|
47
|
-
title: t('deleteSkillModal.title'),
|
|
48
|
-
firstPart: t('deleteSkillModal.firstPart'),
|
|
49
|
-
secondPart: t('deleteSkillModal.secondPart'),
|
|
50
|
-
cancel: t('deleteSkillModal.cancel'),
|
|
51
|
-
"delete": t('deleteSkillModal.delete')
|
|
52
45
|
}
|
|
53
46
|
};
|
|
54
47
|
if (!container) return null;
|
|
@@ -119,4 +112,4 @@ export var DeleteQuestionModal = function DeleteQuestionModal(_ref) {
|
|
|
119
112
|
})
|
|
120
113
|
}), container);
|
|
121
114
|
};
|
|
122
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdERPTSIsInVzZVJlZiIsIkNVQnV0dG9uIiwiQ3Jvc3MiLCJ1c2VUcmFuc2xhdGlvbiIsIkJhY2tkcm9wIiwiU0NFUU1Nb2RhbCIsIlNDRVFNV3JhcHBlciIsIlNDRVFNV3JhcHBlckNvbnRlbnQiLCJTQ0VRTVdyYXBwZXJGb290ZXIiLCJTQ0VRTVdyYXBwZXJIZWFkZXIiLCJTQ0VRTUhlYWRlclRpdGxlIiwiU0NFUU1Db250ZW50TGVnZW5kIiwiU0NFUU1EaXZpZGVyIiwiU0NFUU1MZWdlbmRUZXh0IiwiU0NFUU1XcmFwcGVyRGVsZXRlQnV0dG9uIiwiU0VDVElPTlMiLCJ1c2VNYWlhVGFza1BhbmVsWkluZGV4IiwiZm9ybWF0Q2hhdExpc3RUaXRsZU1lbnRpb25zIiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkRlbGV0ZVF1ZXN0aW9uTW9kYWwiLCJfcmVmIiwiX2NoYXQkdGl0bGUiLCJvbkNsb3NlIiwiaGFuZGxlcnMiLCJjaGF0IiwiX3JlZiRhY3Rpb24iLCJhY3Rpb24iLCJfdXNlVHJhbnNsYXRpb24iLCJhYm1BZ2VudCIsImNoYXRBSSIsInQiLCJiYWNrZHJvcFpJbmRleCIsImJhY2tkcm9wUmVmIiwibW9kYWxSZWYiLCJjb250YWluZXIiLCJkb2N1bWVudCIsImdldEVsZW1lbnRCeUlkIiwiZGlzcGxheVRpdGxlIiwidGl0bGUiLCJTdHJpbmciLCJzaG93TGVnZW5kIiwibGVuZ3RoIiwiY29uY2F0Iiwic2xpY2UiLCJ0cmFuc2xhdGlvbkJ5QWN0aW9uIiwiYWdlbnQiLCJmaXJzdFBhcnQiLCJzZWNvbmRQYXJ0IiwiY2FuY2VsIiwicXVlc3Rpb24iLCJza2lsbCIsImNyZWF0ZVBvcnRhbCIsImNoaWxkcmVuIiwicmVmIiwib25DbGljayIsInpJbmRleCIsImUiLCJzdG9wUHJvcGFnYXRpb24iLCJpY29uT25seSIsInZhcmlhbnQiLCJzaXplIiwiY29sb3IiLCJoZWlnaHQiLCJ3aWR0aCIsInN0eWxlIiwiX2hhbmRsZXJzJGhhbmRsZUNvbmZpIiwiaGFuZGxlQ29uZmlybUFjdGlvbiIsImNhbGwiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9vcmdhbmlzbXMvRGVsZXRlUXVlc3Rpb25Nb2RhbC9EZWxldGVRdWVzdGlvbk1vZGFsLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBwcmV0dGllci9wcmV0dGllciAqL1xuLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuLyogZXNsaW50LWRpc2FibGUganN4LWExMXkvY2xpY2stZXZlbnRzLWhhdmUta2V5LWV2ZW50cyAqL1xuLyogZXNsaW50LWRpc2FibGUganN4LWExMXkvbm8tc3RhdGljLWVsZW1lbnQtaW50ZXJhY3Rpb25zICovXG5pbXBvcnQgUmVhY3RET00gZnJvbSAncmVhY3QtZG9tJ1xuaW1wb3J0IHsgdXNlUmVmIH0gZnJvbSAncmVhY3QnXG5cbmltcG9ydCB7IENVQnV0dG9uIH0gZnJvbSAnQHByb2plY3Rjb3IvYnV0dG9uL2xpYi9jb21wb25lbnRzL0NVQnV0dG9uJ1xuaW1wb3J0IHsgQ3Jvc3MgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9Dcm9zcydcbmltcG9ydCB7IHVzZVRyYW5zbGF0aW9uIH0gZnJvbSAncmVhY3QtaTE4bmV4dCdcbmltcG9ydCB7IEJhY2tkcm9wIH0gZnJvbSAnLi4vLi4vYXRvbXMvQmFja2Ryb3AnXG5pbXBvcnQge1xuICBTQ0VRTU1vZGFsLFxuICBTQ0VRTVdyYXBwZXIsXG4gIFNDRVFNV3JhcHBlckNvbnRlbnQsXG4gIFNDRVFNV3JhcHBlckZvb3RlcixcbiAgU0NFUU1XcmFwcGVySGVhZGVyLFxuICBTQ0VRTUhlYWRlclRpdGxlLFxuICBTQ0VRTUNvbnRlbnRMZWdlbmQsXG4gIFNDRVFNRGl2aWRlcixcbiAgU0NFUU1MZWdlbmRUZXh0LFxuICBTQ0VRTVdyYXBwZXJEZWxldGVCdXR0b24sXG59IGZyb20gJy4vRGVsZXRlUXVlc3Rpb25Nb2RhbC5zdHlsZXMnXG5pbXBvcnQgeyBTRUNUSU9OUyB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9jb25maWcnXG5pbXBvcnQgeyB1c2VNYWlhVGFza1BhbmVsWkluZGV4IH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlTWFpYVRhc2tQYW5lbFpJbmRleCdcbmltcG9ydCB7IGZvcm1hdENoYXRMaXN0VGl0bGVNZW50aW9ucyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL3JlbmRlckNvbnRleHRNZW50aW9ucydcblxuZXhwb3J0IGNvbnN0IERlbGV0ZVF1ZXN0aW9uTW9kYWwgPSAoe1xuICBvbkNsb3NlLFxuICBoYW5kbGVycyxcbiAgY2hhdCxcbiAgYWN0aW9uID0gJ3F1ZXN0aW9uJyxcbn06IHtcbiAgb25DbG9zZTogKCkgPT4gdm9pZFxuICBoYW5kbGVyczoge1xuICAgIGhhbmRsZUNvbmZpcm1BY3Rpb24/OiAoY2hhdDogYW55KSA9PiB2b2lkXG4gICAgaGFuZGxlU2V0SXNPcGVuTW9kYWw/OiAocG9zaXRpb246IHN0cmluZyB8IG51bGwpID0+IHZvaWRcbiAgfVxuICBjaGF0OiBhbnlcbiAgYWN0aW9uOiAnYWdlbnQnIHwgJ3F1ZXN0aW9uJyB8ICdza2lsbCdcbn0pID0+IHtcbiAgY29uc3QgeyB0IH0gPSB1c2VUcmFuc2xhdGlvbihhY3Rpb24gPT09ICdhZ2VudCcgPyBbU0VDVElPTlMuYWJtQWdlbnRdIDogW1NFQ1RJT05TLmNoYXRBSV0pXG4gIGNvbnN0IGJhY2tkcm9wWkluZGV4ID0gdXNlTWFpYVRhc2tQYW5lbFpJbmRleCgxMTExMSwgJ25lc3RlZE1vZGFsJylcbiAgY29uc3QgYmFja2Ryb3BSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IG1vZGFsUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICBjb25zdCBjb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbW9kYWwtcm9vdC1hY3Rpb25zJylcblxuICBjb25zdCBkaXNwbGF5VGl0bGUgPSBmb3JtYXRDaGF0TGlzdFRpdGxlTWVudGlvbnMoY2hhdC50aXRsZSkgfHwgU3RyaW5nKGNoYXQ/LnRpdGxlID8/ICcnKVxuICBjb25zdCBzaG93TGVnZW5kID0gZGlzcGxheVRpdGxlLmxlbmd0aCA+PSAxNTAgPyBgJHtkaXNwbGF5VGl0bGUuc2xpY2UoMCwgMTUwKX0uLi5gIDogZGlzcGxheVRpdGxlXG5cbiAgY29uc3QgdHJhbnNsYXRpb25CeUFjdGlvbiA9IHtcbiAgICBhZ2VudDoge1xuICAgICAgdGl0bGU6IHQoJ2RlbGV0ZUFnZW50TW9kYWwudGl0bGUnKSxcbiAgICAgIGZpcnN0UGFydDogdCgnZGVsZXRlQWdlbnRNb2RhbC5maXJzdFBhcnQnKSxcbiAgICAgIHNlY29uZFBhcnQ6IHQoJ2RlbGV0ZUFnZW50TW9kYWwuc2Vjb25kUGFydCcpLFxuICAgICAgY2FuY2VsOiB0KCdkZWxldGVBZ2VudE1vZGFsLmNhbmNlbCcpLFxuICAgICAgZGVsZXRlOiB0KCdkZWxldGVBZ2VudE1vZGFsLmRlbGV0ZScpLFxuICAgIH0sXG4gICAgcXVlc3Rpb246IHtcbiAgICAgIHRpdGxlOiB0KCdkZWxldGVRdWVzdGlvbk1vZGFsLnRpdGxlJyksXG4gICAgICBmaXJzdFBhcnQ6IHQoJ2RlbGV0ZVF1ZXN0aW9uTW9kYWwuZmlyc3RQYXJ0JyksXG4gICAgICBzZWNvbmRQYXJ0OiB0KCdkZWxldGVRdWVzdGlvbk1vZGFsLnNlY29uZFBhcnQnKSxcbiAgICAgIGNhbmNlbDogdCgnZGVsZXRlUXVlc3Rpb25Nb2RhbC5jYW5jZWwnKSxcbiAgICAgIGRlbGV0ZTogdCgnZGVsZXRlUXVlc3Rpb25Nb2RhbC5kZWxldGUnKSxcbiAgICB9LFxuICAgIHNraWxsOiB7XG4gICAgICB0aXRsZTogdCgnZGVsZXRlU2tpbGxNb2RhbC50aXRsZScpLFxuICAgICAgZmlyc3RQYXJ0OiB0KCdkZWxldGVTa2lsbE1vZGFsLmZpcnN0UGFydCcpLFxuICAgICAgc2Vjb25kUGFydDogdCgnZGVsZXRlU2tpbGxNb2RhbC5zZWNvbmRQYXJ0JyksXG4gICAgICBjYW5jZWw6IHQoJ2RlbGV0ZVNraWxsTW9kYWwuY2FuY2VsJyksXG4gICAgICBkZWxldGU6IHQoJ2RlbGV0ZVNraWxsTW9kYWwuZGVsZXRlJyksXG4gICAgfSxcbiAgfVxuXG4gIGlmICghY29udGFpbmVyKSByZXR1cm4gbnVsbFxuXG4gIHJldHVybiBSZWFjdERPTS5jcmVhdGVQb3J0YWwoXG4gICAgPFNDRVFNV3JhcHBlcj5cbiAgICAgIDxCYWNrZHJvcCByZWY9e2JhY2tkcm9wUmVmfSBvbkNsaWNrPXtvbkNsb3NlfSB6SW5kZXg9e2JhY2tkcm9wWkluZGV4fT5cbiAgICAgICAgPFNDRVFNTW9kYWxcbiAgICAgICAgICBvbkNsaWNrPXtlID0+IHtcbiAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICB9fVxuICAgICAgICAgIHJlZj17bW9kYWxSZWZ9XG4gICAgICAgID5cbiAgICAgICAgICA8U0NFUU1XcmFwcGVyQ29udGVudD5cbiAgICAgICAgICAgIDxTQ0VRTVdyYXBwZXJIZWFkZXI+XG4gICAgICAgICAgICAgIDxTQ0VRTUhlYWRlclRpdGxlPnt0cmFuc2xhdGlvbkJ5QWN0aW9uW2FjdGlvbl0udGl0bGV9PC9TQ0VRTUhlYWRlclRpdGxlPlxuICAgICAgICAgICAgICB7YWN0aW9uICE9PSAnYWdlbnQnICYmIChcbiAgICAgICAgICAgICAgICA8Q1VCdXR0b24gaWNvbk9ubHkgdmFyaWFudD1cInRleHRcIiBzaXplPVwic21hbGxcIiBvbkNsaWNrPXtvbkNsb3NlfT5cbiAgICAgICAgICAgICAgICAgIDxDcm9zcyBjb2xvcj1cImluaGVyaXRcIiBoZWlnaHQ9ezE2fSB3aWR0aD17MTZ9IC8+XG4gICAgICAgICAgICAgICAgPC9DVUJ1dHRvbj5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvU0NFUU1XcmFwcGVySGVhZGVyPlxuICAgICAgICAgICAgPFNDRVFNQ29udGVudExlZ2VuZD5cbiAgICAgICAgICAgICAgPFNDRVFNRGl2aWRlciAvPlxuICAgICAgICAgICAgICA8U0NFUU1MZWdlbmRUZXh0PlxuICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAge3RyYW5zbGF0aW9uQnlBY3Rpb25bYWN0aW9uXS5maXJzdFBhcnR9IDxzcGFuPntzaG93TGVnZW5kfTwvc3Bhbj4ueycgJ31cbiAgICAgICAgICAgICAgICAgIHt0cmFuc2xhdGlvbkJ5QWN0aW9uW2FjdGlvbl0uc2Vjb25kUGFydH1cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgIDwvU0NFUU1MZWdlbmRUZXh0PlxuICAgICAgICAgICAgPC9TQ0VRTUNvbnRlbnRMZWdlbmQ+XG4gICAgICAgICAgPC9TQ0VRTVdyYXBwZXJDb250ZW50PlxuICAgICAgICAgIDxTQ0VRTVdyYXBwZXJGb290ZXI+XG4gICAgICAgICAgICA8Q1VCdXR0b25cbiAgICAgICAgICAgICAgdmFyaWFudD1cInRleHRcIlxuICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtlID0+IHtcbiAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgICAgICAgb25DbG9zZSgpXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPXt7IGNvbG9yOiAnIzIwMjAxRicgfX0+e3RyYW5zbGF0aW9uQnlBY3Rpb25bYWN0aW9uXS5jYW5jZWx9PC9zcGFuPlxuICAgICAgICAgICAgPC9DVUJ1dHRvbj5cbiAgICAgICAgICAgIDxTQ0VRTVdyYXBwZXJEZWxldGVCdXR0b24+XG4gICAgICAgICAgICAgIDxDVUJ1dHRvblxuICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJjb250YWluZWRcIlxuICAgICAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17ZSA9PiB7XG4gICAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgICAgICAgICBoYW5kbGVycy5oYW5kbGVDb25maXJtQWN0aW9uPy4oY2hhdClcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHNwYW4+e3RyYW5zbGF0aW9uQnlBY3Rpb25bYWN0aW9uXS5kZWxldGV9PC9zcGFuPlxuICAgICAgICAgICAgICA8L0NVQnV0dG9uPlxuICAgICAgICAgICAgPC9TQ0VRTVdyYXBwZXJEZWxldGVCdXR0b24+XG4gICAgICAgICAgPC9TQ0VRTVdyYXBwZXJGb290ZXI+XG4gICAgICAgIDwvU0NFUU1Nb2RhbD5cbiAgICAgIDwvQmFja2Ryb3A+XG4gICAgPC9TQ0VRTVdyYXBwZXI+LFxuICAgIGNvbnRhaW5lclxuICApXG59XG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBT0EsUUFBUSxNQUFNLFdBQVc7QUFDaEMsU0FBU0MsTUFBTSxRQUFRLE9BQU87QUFFOUIsU0FBU0MsUUFBUSxRQUFRLDRDQUE0QztBQUNyRSxTQUFTQyxLQUFLLFFBQVEsd0NBQXdDO0FBQzlELFNBQVNDLGNBQWMsUUFBUSxlQUFlO0FBQzlDLFNBQVNDLFFBQVEsUUFBUSxzQkFBc0I7QUFDL0MsU0FDRUMsVUFBVSxFQUNWQyxZQUFZLEVBQ1pDLG1CQUFtQixFQUNuQkMsa0JBQWtCLEVBQ2xCQyxrQkFBa0IsRUFDbEJDLGdCQUFnQixFQUNoQkMsa0JBQWtCLEVBQ2xCQyxZQUFZLEVBQ1pDLGVBQWUsRUFDZkMsd0JBQXdCLFFBQ25CLDhCQUE4QjtBQUNyQyxTQUFTQyxRQUFRLFFBQVEsMkJBQTJCO0FBQ3BELFNBQVNDLHNCQUFzQixRQUFRLHVDQUF1QztBQUM5RSxTQUFTQywyQkFBMkIsUUFBUSxzQ0FBc0M7QUFBQSxTQUFBQyxHQUFBLElBQUFDLElBQUEsRUFBQUMsSUFBQSxJQUFBQyxLQUFBO0FBRWxGLE9BQU8sSUFBTUMsbUJBQW1CLEdBQUcsU0FB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
|
|
115
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdERPTSIsInVzZVJlZiIsIkNVQnV0dG9uIiwiQ3Jvc3MiLCJ1c2VUcmFuc2xhdGlvbiIsIkJhY2tkcm9wIiwiU0NFUU1Nb2RhbCIsIlNDRVFNV3JhcHBlciIsIlNDRVFNV3JhcHBlckNvbnRlbnQiLCJTQ0VRTVdyYXBwZXJGb290ZXIiLCJTQ0VRTVdyYXBwZXJIZWFkZXIiLCJTQ0VRTUhlYWRlclRpdGxlIiwiU0NFUU1Db250ZW50TGVnZW5kIiwiU0NFUU1EaXZpZGVyIiwiU0NFUU1MZWdlbmRUZXh0IiwiU0NFUU1XcmFwcGVyRGVsZXRlQnV0dG9uIiwiU0VDVElPTlMiLCJ1c2VNYWlhVGFza1BhbmVsWkluZGV4IiwiZm9ybWF0Q2hhdExpc3RUaXRsZU1lbnRpb25zIiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkRlbGV0ZVF1ZXN0aW9uTW9kYWwiLCJfcmVmIiwiX2NoYXQkdGl0bGUiLCJvbkNsb3NlIiwiaGFuZGxlcnMiLCJjaGF0IiwiX3JlZiRhY3Rpb24iLCJhY3Rpb24iLCJfdXNlVHJhbnNsYXRpb24iLCJhYm1BZ2VudCIsImNoYXRBSSIsInQiLCJiYWNrZHJvcFpJbmRleCIsImJhY2tkcm9wUmVmIiwibW9kYWxSZWYiLCJjb250YWluZXIiLCJkb2N1bWVudCIsImdldEVsZW1lbnRCeUlkIiwiZGlzcGxheVRpdGxlIiwidGl0bGUiLCJTdHJpbmciLCJzaG93TGVnZW5kIiwibGVuZ3RoIiwiY29uY2F0Iiwic2xpY2UiLCJ0cmFuc2xhdGlvbkJ5QWN0aW9uIiwiYWdlbnQiLCJmaXJzdFBhcnQiLCJzZWNvbmRQYXJ0IiwiY2FuY2VsIiwicXVlc3Rpb24iLCJjcmVhdGVQb3J0YWwiLCJjaGlsZHJlbiIsInJlZiIsIm9uQ2xpY2siLCJ6SW5kZXgiLCJlIiwic3RvcFByb3BhZ2F0aW9uIiwiaWNvbk9ubHkiLCJ2YXJpYW50Iiwic2l6ZSIsImNvbG9yIiwiaGVpZ2h0Iiwid2lkdGgiLCJzdHlsZSIsIl9oYW5kbGVycyRoYW5kbGVDb25maSIsImhhbmRsZUNvbmZpcm1BY3Rpb24iLCJjYWxsIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvb3JnYW5pc21zL0RlbGV0ZVF1ZXN0aW9uTW9kYWwvRGVsZXRlUXVlc3Rpb25Nb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcHJldHRpZXIvcHJldHRpZXIgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L2NsaWNrLWV2ZW50cy1oYXZlLWtleS1ldmVudHMgKi9cbi8qIGVzbGludC1kaXNhYmxlIGpzeC1hMTF5L25vLXN0YXRpYy1lbGVtZW50LWludGVyYWN0aW9ucyAqL1xuaW1wb3J0IFJlYWN0RE9NIGZyb20gJ3JlYWN0LWRvbSdcbmltcG9ydCB7IHVzZVJlZiB9IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQgeyBDVUJ1dHRvbiB9IGZyb20gJ0Bwcm9qZWN0Y29yL2J1dHRvbi9saWIvY29tcG9uZW50cy9DVUJ1dHRvbidcbmltcG9ydCB7IENyb3NzIH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvQ3Jvc3MnXG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ3JlYWN0LWkxOG5leHQnXG5pbXBvcnQgeyBCYWNrZHJvcCB9IGZyb20gJy4uLy4uL2F0b21zL0JhY2tkcm9wJ1xuaW1wb3J0IHtcbiAgU0NFUU1Nb2RhbCxcbiAgU0NFUU1XcmFwcGVyLFxuICBTQ0VRTVdyYXBwZXJDb250ZW50LFxuICBTQ0VRTVdyYXBwZXJGb290ZXIsXG4gIFNDRVFNV3JhcHBlckhlYWRlcixcbiAgU0NFUU1IZWFkZXJUaXRsZSxcbiAgU0NFUU1Db250ZW50TGVnZW5kLFxuICBTQ0VRTURpdmlkZXIsXG4gIFNDRVFNTGVnZW5kVGV4dCxcbiAgU0NFUU1XcmFwcGVyRGVsZXRlQnV0dG9uLFxufSBmcm9tICcuL0RlbGV0ZVF1ZXN0aW9uTW9kYWwuc3R5bGVzJ1xuaW1wb3J0IHsgU0VDVElPTlMgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvY29uZmlnJ1xuaW1wb3J0IHsgdXNlTWFpYVRhc2tQYW5lbFpJbmRleCB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZU1haWFUYXNrUGFuZWxaSW5kZXgnXG5pbXBvcnQgeyBmb3JtYXRDaGF0TGlzdFRpdGxlTWVudGlvbnMgfSBmcm9tICcuLi8uLi8uLi91dGlscy9yZW5kZXJDb250ZXh0TWVudGlvbnMnXG5cbmV4cG9ydCBjb25zdCBEZWxldGVRdWVzdGlvbk1vZGFsID0gKHtcbiAgb25DbG9zZSxcbiAgaGFuZGxlcnMsXG4gIGNoYXQsXG4gIGFjdGlvbiA9ICdxdWVzdGlvbicsXG59OiB7XG4gIG9uQ2xvc2U6ICgpID0+IHZvaWRcbiAgaGFuZGxlcnM6IHtcbiAgICBoYW5kbGVDb25maXJtQWN0aW9uPzogKGNoYXQ6IGFueSkgPT4gdm9pZFxuICAgIGhhbmRsZVNldElzT3Blbk1vZGFsPzogKHBvc2l0aW9uOiBzdHJpbmcgfCBudWxsKSA9PiB2b2lkXG4gIH1cbiAgY2hhdDogYW55XG4gIGFjdGlvbjogJ2FnZW50JyB8ICdxdWVzdGlvbidcbn0pID0+IHtcbiAgY29uc3QgeyB0IH0gPSB1c2VUcmFuc2xhdGlvbihhY3Rpb24gPT09ICdhZ2VudCcgPyBbU0VDVElPTlMuYWJtQWdlbnRdIDogW1NFQ1RJT05TLmNoYXRBSV0pXG4gIGNvbnN0IGJhY2tkcm9wWkluZGV4ID0gdXNlTWFpYVRhc2tQYW5lbFpJbmRleCgxMTExMSwgJ25lc3RlZE1vZGFsJylcbiAgY29uc3QgYmFja2Ryb3BSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IG1vZGFsUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICBjb25zdCBjb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbW9kYWwtcm9vdC1hY3Rpb25zJylcblxuICBjb25zdCBkaXNwbGF5VGl0bGUgPSBmb3JtYXRDaGF0TGlzdFRpdGxlTWVudGlvbnMoY2hhdC50aXRsZSkgfHwgU3RyaW5nKGNoYXQ/LnRpdGxlID8/ICcnKVxuICBjb25zdCBzaG93TGVnZW5kID0gZGlzcGxheVRpdGxlLmxlbmd0aCA+PSAxNTAgPyBgJHtkaXNwbGF5VGl0bGUuc2xpY2UoMCwgMTUwKX0uLi5gIDogZGlzcGxheVRpdGxlXG5cbiAgY29uc3QgdHJhbnNsYXRpb25CeUFjdGlvbiA9IHtcbiAgICBhZ2VudDoge1xuICAgICAgdGl0bGU6IHQoJ2RlbGV0ZUFnZW50TW9kYWwudGl0bGUnKSxcbiAgICAgIGZpcnN0UGFydDogdCgnZGVsZXRlQWdlbnRNb2RhbC5maXJzdFBhcnQnKSxcbiAgICAgIHNlY29uZFBhcnQ6IHQoJ2RlbGV0ZUFnZW50TW9kYWwuc2Vjb25kUGFydCcpLFxuICAgICAgY2FuY2VsOiB0KCdkZWxldGVBZ2VudE1vZGFsLmNhbmNlbCcpLFxuICAgICAgZGVsZXRlOiB0KCdkZWxldGVBZ2VudE1vZGFsLmRlbGV0ZScpLFxuICAgIH0sXG4gICAgcXVlc3Rpb246IHtcbiAgICAgIHRpdGxlOiB0KCdkZWxldGVRdWVzdGlvbk1vZGFsLnRpdGxlJyksXG4gICAgICBmaXJzdFBhcnQ6IHQoJ2RlbGV0ZVF1ZXN0aW9uTW9kYWwuZmlyc3RQYXJ0JyksXG4gICAgICBzZWNvbmRQYXJ0OiB0KCdkZWxldGVRdWVzdGlvbk1vZGFsLnNlY29uZFBhcnQnKSxcbiAgICAgIGNhbmNlbDogdCgnZGVsZXRlUXVlc3Rpb25Nb2RhbC5jYW5jZWwnKSxcbiAgICAgIGRlbGV0ZTogdCgnZGVsZXRlUXVlc3Rpb25Nb2RhbC5kZWxldGUnKSxcbiAgICB9LFxuICB9XG5cbiAgaWYgKCFjb250YWluZXIpIHJldHVybiBudWxsXG5cbiAgcmV0dXJuIFJlYWN0RE9NLmNyZWF0ZVBvcnRhbChcbiAgICA8U0NFUU1XcmFwcGVyPlxuICAgICAgPEJhY2tkcm9wIHJlZj17YmFja2Ryb3BSZWZ9IG9uQ2xpY2s9e29uQ2xvc2V9IHpJbmRleD17YmFja2Ryb3BaSW5kZXh9PlxuICAgICAgICA8U0NFUU1Nb2RhbFxuICAgICAgICAgIG9uQ2xpY2s9e2UgPT4ge1xuICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKVxuICAgICAgICAgIH19XG4gICAgICAgICAgcmVmPXttb2RhbFJlZn1cbiAgICAgICAgPlxuICAgICAgICAgIDxTQ0VRTVdyYXBwZXJDb250ZW50PlxuICAgICAgICAgICAgPFNDRVFNV3JhcHBlckhlYWRlcj5cbiAgICAgICAgICAgICAgPFNDRVFNSGVhZGVyVGl0bGU+e3RyYW5zbGF0aW9uQnlBY3Rpb25bYWN0aW9uXS50aXRsZX08L1NDRVFNSGVhZGVyVGl0bGU+XG4gICAgICAgICAgICAgIHthY3Rpb24gIT09ICdhZ2VudCcgJiYgKFxuICAgICAgICAgICAgICAgIDxDVUJ1dHRvbiBpY29uT25seSB2YXJpYW50PVwidGV4dFwiIHNpemU9XCJzbWFsbFwiIG9uQ2xpY2s9e29uQ2xvc2V9PlxuICAgICAgICAgICAgICAgICAgPENyb3NzIGNvbG9yPVwiaW5oZXJpdFwiIGhlaWdodD17MTZ9IHdpZHRoPXsxNn0gLz5cbiAgICAgICAgICAgICAgICA8L0NVQnV0dG9uPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9TQ0VRTVdyYXBwZXJIZWFkZXI+XG4gICAgICAgICAgICA8U0NFUU1Db250ZW50TGVnZW5kPlxuICAgICAgICAgICAgICA8U0NFUU1EaXZpZGVyIC8+XG4gICAgICAgICAgICAgIDxTQ0VRTUxlZ2VuZFRleHQ+XG4gICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICB7dHJhbnNsYXRpb25CeUFjdGlvblthY3Rpb25dLmZpcnN0UGFydH0gPHNwYW4+e3Nob3dMZWdlbmR9PC9zcGFuPi57JyAnfVxuICAgICAgICAgICAgICAgICAge3RyYW5zbGF0aW9uQnlBY3Rpb25bYWN0aW9uXS5zZWNvbmRQYXJ0fVxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgPC9TQ0VRTUxlZ2VuZFRleHQ+XG4gICAgICAgICAgICA8L1NDRVFNQ29udGVudExlZ2VuZD5cbiAgICAgICAgICA8L1NDRVFNV3JhcHBlckNvbnRlbnQ+XG4gICAgICAgICAgPFNDRVFNV3JhcHBlckZvb3Rlcj5cbiAgICAgICAgICAgIDxDVUJ1dHRvblxuICAgICAgICAgICAgICB2YXJpYW50PVwidGV4dFwiXG4gICAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgICAgIG9uQ2xpY2s9e2UgPT4ge1xuICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICAgICAgICBvbkNsb3NlKClcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNwYW4gc3R5bGU9e3sgY29sb3I6ICcjMjAyMDFGJyB9fT57dHJhbnNsYXRpb25CeUFjdGlvblthY3Rpb25dLmNhbmNlbH08L3NwYW4+XG4gICAgICAgICAgICA8L0NVQnV0dG9uPlxuICAgICAgICAgICAgPFNDRVFNV3JhcHBlckRlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICAgICAgPENVQnV0dG9uXG4gICAgICAgICAgICAgICAgdmFyaWFudD1cImNvbnRhaW5lZFwiXG4gICAgICAgICAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgICAgICAgICBvbkNsaWNrPXtlID0+IHtcbiAgICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICAgICAgICAgIGhhbmRsZXJzLmhhbmRsZUNvbmZpcm1BY3Rpb24/LihjaGF0KVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3Bhbj57dHJhbnNsYXRpb25CeUFjdGlvblthY3Rpb25dLmRlbGV0ZX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvQ1VCdXR0b24+XG4gICAgICAgICAgICA8L1NDRVFNV3JhcHBlckRlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICA8L1NDRVFNV3JhcHBlckZvb3Rlcj5cbiAgICAgICAgPC9TQ0VRTU1vZGFsPlxuICAgICAgPC9CYWNrZHJvcD5cbiAgICA8L1NDRVFNV3JhcHBlcj4sXG4gICAgY29udGFpbmVyXG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPQSxRQUFRLE1BQU0sV0FBVztBQUNoQyxTQUFTQyxNQUFNLFFBQVEsT0FBTztBQUU5QixTQUFTQyxRQUFRLFFBQVEsNENBQTRDO0FBQ3JFLFNBQVNDLEtBQUssUUFBUSx3Q0FBd0M7QUFDOUQsU0FBU0MsY0FBYyxRQUFRLGVBQWU7QUFDOUMsU0FBU0MsUUFBUSxRQUFRLHNCQUFzQjtBQUMvQyxTQUNFQyxVQUFVLEVBQ1ZDLFlBQVksRUFDWkMsbUJBQW1CLEVBQ25CQyxrQkFBa0IsRUFDbEJDLGtCQUFrQixFQUNsQkMsZ0JBQWdCLEVBQ2hCQyxrQkFBa0IsRUFDbEJDLFlBQVksRUFDWkMsZUFBZSxFQUNmQyx3QkFBd0IsUUFDbkIsOEJBQThCO0FBQ3JDLFNBQVNDLFFBQVEsUUFBUSwyQkFBMkI7QUFDcEQsU0FBU0Msc0JBQXNCLFFBQVEsdUNBQXVDO0FBQzlFLFNBQVNDLDJCQUEyQixRQUFRLHNDQUFzQztBQUFBLFNBQUFDLEdBQUEsSUFBQUMsSUFBQSxFQUFBQyxJQUFBLElBQUFDLEtBQUE7QUFFbEYsT0FBTyxJQUFNQyxtQkFBbUIsR0FBRyxTQUF0QkEsbUJBQW1CQSxDQUFBQyxJQUFBLEVBYTFCO0VBQUEsSUFBQUMsV0FBQTtFQUFBLElBWkpDLE9BQU8sR0FBQUYsSUFBQSxDQUFQRSxPQUFPO0lBQ1BDLFFBQVEsR0FBQUgsSUFBQSxDQUFSRyxRQUFRO0lBQ1JDLElBQUksR0FBQUosSUFBQSxDQUFKSSxJQUFJO0lBQUFDLFdBQUEsR0FBQUwsSUFBQSxDQUNKTSxNQUFNO0lBQU5BLE1BQU0sR0FBQUQsV0FBQSxjQUFHLFVBQVUsR0FBQUEsV0FBQTtFQVVuQixJQUFBRSxlQUFBLEdBQWMzQixjQUFjLENBQUMwQixNQUFNLEtBQUssT0FBTyxH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
|
package/lib/constants/config.js
CHANGED
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
/** Delay unificado al escribir antes de disparar búsquedas (GraphQL / API): selectores, @ contexto, etc. */
|
|
2
2
|
export var SEARCH_QUERY_DEBOUNCE_MS = 500;
|
|
3
|
-
|
|
4
|
-
/** Longitud mínima del parámetro `q` en GET /skills (validación del backend). */
|
|
5
|
-
export var SKILLS_SEARCH_MIN_QUERY_LENGTH = 3;
|
|
6
3
|
export var SECTIONS = {
|
|
7
4
|
projectSummary: 'project_summary_section',
|
|
8
5
|
chatAI: 'chat_ai_section',
|
|
@@ -10,4 +7,4 @@ export var SECTIONS = {
|
|
|
10
7
|
projectSelector: 'project_selector_section',
|
|
11
8
|
clientSelector: 'client_selector_section'
|
|
12
9
|
};
|
|
13
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTRUFSQ0hfUVVFUllfREVCT1VOQ0VfTVMiLCJTRUNUSU9OUyIsInByb2plY3RTdW1tYXJ5IiwiY2hhdEFJIiwiYWJtQWdlbnQiLCJwcm9qZWN0U2VsZWN0b3IiLCJjbGllbnRTZWxlY3RvciJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25zdGFudHMvY29uZmlnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKiBEZWxheSB1bmlmaWNhZG8gYWwgZXNjcmliaXIgYW50ZXMgZGUgZGlzcGFyYXIgYsO6c3F1ZWRhcyAoR3JhcGhRTCAvIEFQSSk6IHNlbGVjdG9yZXMsIEAgY29udGV4dG8sIGV0Yy4gKi9cbmV4cG9ydCBjb25zdCBTRUFSQ0hfUVVFUllfREVCT1VOQ0VfTVMgPSA1MDBcblxuZXhwb3J0IGNvbnN0IFNFQ1RJT05TID0ge1xuICBwcm9qZWN0U3VtbWFyeTogJ3Byb2plY3Rfc3VtbWFyeV9zZWN0aW9uJyxcbiAgY2hhdEFJOiAnY2hhdF9haV9zZWN0aW9uJyxcbiAgYWJtQWdlbnQ6ICdhYm1fYWdlbnRfc2VjdGlvbicsXG4gIHByb2plY3RTZWxlY3RvcjogJ3Byb2plY3Rfc2VsZWN0b3Jfc2VjdGlvbicsXG4gIGNsaWVudFNlbGVjdG9yOiAnY2xpZW50X3NlbGVjdG9yX3NlY3Rpb24nLFxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBLE9BQU8sSUFBTUEsd0JBQXdCLEdBQUcsR0FBRztBQUUzQyxPQUFPLElBQU1DLFFBQVEsR0FBRztFQUN0QkMsY0FBYyxFQUFFLHlCQUF5QjtFQUN6Q0MsTUFBTSxFQUFFLGlCQUFpQjtFQUN6QkMsUUFBUSxFQUFFLG1CQUFtQjtFQUM3QkMsZUFBZSxFQUFFLDBCQUEwQjtFQUMzQ0MsY0FBYyxFQUFFO0FBQ2xCLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { buildConfigureSettingsItems } from './config';
|
|
2
|
-
export { canAccessToProjectSummary, canAccessToChatAI
|
|
3
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
2
|
+
export { canAccessToProjectSummary, canAccessToChatAI } from './utils';
|
|
3
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJidWlsZENvbmZpZ3VyZVNldHRpbmdzSXRlbXMiLCJjYW5BY2Nlc3NUb1Byb2plY3RTdW1tYXJ5IiwiY2FuQWNjZXNzVG9DaGF0QUkiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29uc3RhbnRzL3Blcm1pc3Npb25zL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGJ1aWxkQ29uZmlndXJlU2V0dGluZ3NJdGVtcyB9IGZyb20gJy4vY29uZmlnJ1xuZXhwb3J0IHsgY2FuQWNjZXNzVG9Qcm9qZWN0U3VtbWFyeSwgY2FuQWNjZXNzVG9DaGF0QUkgfSBmcm9tICcuL3V0aWxzJ1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSwyQkFBMkIsUUFBUSxVQUFVO0FBQ3RELFNBQVNDLHlCQUF5QixFQUFFQyxpQkFBaUIsUUFBUSxTQUFTIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -12,7 +12,4 @@ export var canAccessToChatAI = function canAccessToChatAI(user) {
|
|
|
12
12
|
var MAIA_CHAT_AI_ENABLED = canAccessToFeature('MAIA_CHAT_AI_FEATURE_ACCESS') || canAccessToFeature('MAIA_CHAT_AI_FEATURE_ACCESS_MULTI_AGENTS') || canAccessToFeature('MAIA_PROJECT_SUMMARY_FEATURE_ACCESS');
|
|
13
13
|
return MAIA_CHAT_AI_ENABLED && user.role_id && !DISABLED_ROLES.includes(user.role_id);
|
|
14
14
|
};
|
|
15
|
-
|
|
16
|
-
return canAccessToFeature('MAIA_SKILLS_ACCESS');
|
|
17
|
-
};
|
|
18
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDT1JVc2VyUm9sZSIsIkRJU0FCTEVEX1JPTEVTIiwiQ0xJRU5UIiwiRlJFRUxBTkNFUiIsImNhbkFjY2Vzc1RvRmVhdHVyZSIsImZlYXR1cmUiLCJGRUFUVVJFX0FDQ0VTUyIsIndpbmRvdyIsIkJvb2xlYW4iLCJjYW5BY2Nlc3NUb1Byb2plY3RTdW1tYXJ5IiwidXNlciIsIk1BSUFfUFJPSkVDVF9TVU1NQVJZX0VOQUJMRUQiLCJyb2xlX2lkIiwiaW5jbHVkZXMiLCJjYW5BY2Nlc3NUb0NoYXRBSSIsIk1BSUFfQ0hBVF9BSV9FTkFCTEVEIiwiY2FuQWNjZXNzVG9Ta2lsbHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29uc3RhbnRzL3Blcm1pc3Npb25zL3V0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENPUlVzZXIsIENPUlVzZXJSb2xlIH0gZnJvbSAnLi4vLi4vY29udGV4dC9jb3ItdXNlcidcblxuY29uc3QgRElTQUJMRURfUk9MRVMgPSBbQ09SVXNlclJvbGUuQ0xJRU5ULCBDT1JVc2VyUm9sZS5GUkVFTEFOQ0VSXVxuXG5jb25zdCBjYW5BY2Nlc3NUb0ZlYXR1cmUgPSAoZmVhdHVyZTogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IEZFQVRVUkVfQUNDRVNTID0gZmVhdHVyZSBpbiB3aW5kb3cgJiYgQm9vbGVhbih3aW5kb3dbZmVhdHVyZV0pXG5cbiAgcmV0dXJuIEZFQVRVUkVfQUNDRVNTXG59XG5cbmV4cG9ydCBjb25zdCBjYW5BY2Nlc3NUb1Byb2plY3RTdW1tYXJ5ID0gKHVzZXI6IENPUlVzZXIpID0+IHtcbiAgY29uc3QgTUFJQV9QUk9KRUNUX1NVTU1BUllfRU5BQkxFRCA9XG4gICAgY2FuQWNjZXNzVG9GZWF0dXJlKCdNQUlBX1BST0pFQ1RfU1VNTUFSWV9GRUFUVVJFX0FDQ0VTUycpIHx8XG4gICAgY2FuQWNjZXNzVG9GZWF0dXJlKCdNQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1NfTVVMVElfQUdFTlRTJykgfHxcbiAgICBjYW5BY2Nlc3NUb0ZlYXR1cmUoJ01BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTUycpXG5cbiAgcmV0dXJuIE1BSUFfUFJPSkVDVF9TVU1NQVJZX0VOQUJMRUQgJiYgdXNlci5yb2xlX2lkICYmICFESVNBQkxFRF9ST0xFUy5pbmNsdWRlcyh1c2VyLnJvbGVfaWQpXG59XG5cbmV4cG9ydCBjb25zdCBjYW5BY2Nlc3NUb0NoYXRBSSA9ICh1c2VyOiBDT1JVc2VyKSA9PiB7XG4gIGNvbnN0IE1BSUFfQ0hBVF9BSV9FTkFCTEVEID1cbiAgICBjYW5BY2Nlc3NUb0ZlYXR1cmUoJ01BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTUycpIHx8XG4gICAgY2FuQWNjZXNzVG9GZWF0dXJlKCdNQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1NfTVVMVElfQUdFTlRTJykgfHxcbiAgICBjYW5BY2Nlc3NUb0ZlYXR1cmUoJ01BSUFfUFJPSkVDVF9TVU1NQVJZX0ZFQVRVUkVfQUNDRVNTJylcblxuICByZXR1cm4gTUFJQV9DSEFUX0FJX0VOQUJMRUQgJiYgdXNlci5yb2xlX2lkICYmICFESVNBQkxFRF9ST0xFUy5pbmNsdWRlcyh1c2VyLnJvbGVfaWQpXG59XG5cbmV4cG9ydCBjb25zdCBjYW5BY2Nlc3NUb1NraWxscyA9ICgpID0+IGNhbkFjY2Vzc1RvRmVhdHVyZSgnTUFJQV9TS0lMTFNfQUNDRVNTJylcbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBa0JBLFdBQVcsUUFBUSx3QkFBd0I7QUFFN0QsSUFBTUMsY0FBYyxHQUFHLENBQUNELFdBQVcsQ0FBQ0UsTUFBTSxFQUFFRixXQUFXLENBQUNHLFVBQVUsQ0FBQztBQUVuRSxJQUFNQyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQWtCQSxDQUFJQyxPQUFlLEVBQUs7RUFDOUMsSUFBTUMsY0FBYyxHQUFHRCxPQUFPLElBQUlFLE1BQU0sSUFBSUMsT0FBTyxDQUFDRCxNQUFNLENBQUNGLE9BQU8sQ0FBQyxDQUFDO0VBRXBFLE9BQU9DLGNBQWM7QUFDdkIsQ0FBQztBQUVELE9BQU8sSUFBTUcseUJBQXlCLEdBQUcsU0FBNUJBLHlCQUF5QkEsQ0FBSUMsSUFBYSxFQUFLO0VBQzFELElBQU1DLDRCQUE0QixHQUNoQ1Asa0JBQWtCLENBQUMscUNBQXFDLENBQUMsSUFDekRBLGtCQUFrQixDQUFDLDBDQUEwQyxDQUFDLElBQzlEQSxrQkFBa0IsQ0FBQyw2QkFBNkIsQ0FBQztFQUVuRCxPQUFPTyw0QkFBNEIsSUFBSUQsSUFBSSxDQUFDRSxPQUFPLElBQUksQ0FBQ1gsY0FBYyxDQUFDWSxRQUFRLENBQUNILElBQUksQ0FBQ0UsT0FBTyxDQUFDO0FBQy9GLENBQUM7QUFFRCxPQUFPLElBQU1FLGlCQUFpQixHQUFHLFNBQXBCQSxpQkFBaUJBLENBQUlKLElBQWEsRUFBSztFQUNsRCxJQUFNSyxvQkFBb0IsR0FDeEJYLGtCQUFrQixDQUFDLDZCQUE2QixDQUFDLElBQ2pEQSxrQkFBa0IsQ0FBQywwQ0FBMEMsQ0FBQyxJQUM5REEsa0JBQWtCLENBQUMscUNBQXFDLENBQUM7RUFFM0QsT0FBT1csb0JBQW9CLElBQUlMLElBQUksQ0FBQ0UsT0FBTyxJQUFJLENBQUNYLGNBQWMsQ0FBQ1ksUUFBUSxDQUFDSCxJQUFJLENBQUNFLE9BQU8sQ0FBQztBQUN2RixDQUFDO0FBRUQsT0FBTyxJQUFNSSxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQWlCQSxDQUFBO0VBQUEsT0FBU1osa0JBQWtCLENBQUMsb0JBQW9CLENBQUM7QUFBQSIsImlnbm9yZUxpc3QiOltdfQ==
|
|
15
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDT1JVc2VyUm9sZSIsIkRJU0FCTEVEX1JPTEVTIiwiQ0xJRU5UIiwiRlJFRUxBTkNFUiIsImNhbkFjY2Vzc1RvRmVhdHVyZSIsImZlYXR1cmUiLCJGRUFUVVJFX0FDQ0VTUyIsIndpbmRvdyIsIkJvb2xlYW4iLCJjYW5BY2Nlc3NUb1Byb2plY3RTdW1tYXJ5IiwidXNlciIsIk1BSUFfUFJPSkVDVF9TVU1NQVJZX0VOQUJMRUQiLCJyb2xlX2lkIiwiaW5jbHVkZXMiLCJjYW5BY2Nlc3NUb0NoYXRBSSIsIk1BSUFfQ0hBVF9BSV9FTkFCTEVEIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnN0YW50cy9wZXJtaXNzaW9ucy91dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDT1JVc2VyLCBDT1JVc2VyUm9sZSB9IGZyb20gJy4uLy4uL2NvbnRleHQvY29yLXVzZXInXG5cbmNvbnN0IERJU0FCTEVEX1JPTEVTID0gW0NPUlVzZXJSb2xlLkNMSUVOVCwgQ09SVXNlclJvbGUuRlJFRUxBTkNFUl1cblxuY29uc3QgY2FuQWNjZXNzVG9GZWF0dXJlID0gKGZlYXR1cmU6IHN0cmluZykgPT4ge1xuICBjb25zdCBGRUFUVVJFX0FDQ0VTUyA9IGZlYXR1cmUgaW4gd2luZG93ICYmIEJvb2xlYW4od2luZG93W2ZlYXR1cmVdKVxuXG4gIHJldHVybiBGRUFUVVJFX0FDQ0VTU1xufVxuXG5leHBvcnQgY29uc3QgY2FuQWNjZXNzVG9Qcm9qZWN0U3VtbWFyeSA9ICh1c2VyOiBDT1JVc2VyKSA9PiB7XG4gIGNvbnN0IE1BSUFfUFJPSkVDVF9TVU1NQVJZX0VOQUJMRUQgPVxuICAgIGNhbkFjY2Vzc1RvRmVhdHVyZSgnTUFJQV9QUk9KRUNUX1NVTU1BUllfRkVBVFVSRV9BQ0NFU1MnKSB8fFxuICAgIGNhbkFjY2Vzc1RvRmVhdHVyZSgnTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UUycpIHx8XG4gICAgY2FuQWNjZXNzVG9GZWF0dXJlKCdNQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1MnKVxuXG4gIHJldHVybiBNQUlBX1BST0pFQ1RfU1VNTUFSWV9FTkFCTEVEICYmIHVzZXIucm9sZV9pZCAmJiAhRElTQUJMRURfUk9MRVMuaW5jbHVkZXModXNlci5yb2xlX2lkKVxufVxuXG5leHBvcnQgY29uc3QgY2FuQWNjZXNzVG9DaGF0QUkgPSAodXNlcjogQ09SVXNlcikgPT4ge1xuICBjb25zdCBNQUlBX0NIQVRfQUlfRU5BQkxFRCA9XG4gICAgY2FuQWNjZXNzVG9GZWF0dXJlKCdNQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1MnKSB8fFxuICAgIGNhbkFjY2Vzc1RvRmVhdHVyZSgnTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UUycpIHx8XG4gICAgY2FuQWNjZXNzVG9GZWF0dXJlKCdNQUlBX1BST0pFQ1RfU1VNTUFSWV9GRUFUVVJFX0FDQ0VTUycpXG5cbiAgcmV0dXJuIE1BSUFfQ0hBVF9BSV9FTkFCTEVEICYmIHVzZXIucm9sZV9pZCAmJiAhRElTQUJMRURfUk9MRVMuaW5jbHVkZXModXNlci5yb2xlX2lkKVxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFrQkEsV0FBVyxRQUFRLHdCQUF3QjtBQUU3RCxJQUFNQyxjQUFjLEdBQUcsQ0FBQ0QsV0FBVyxDQUFDRSxNQUFNLEVBQUVGLFdBQVcsQ0FBQ0csVUFBVSxDQUFDO0FBRW5FLElBQU1DLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBa0JBLENBQUlDLE9BQWUsRUFBSztFQUM5QyxJQUFNQyxjQUFjLEdBQUdELE9BQU8sSUFBSUUsTUFBTSxJQUFJQyxPQUFPLENBQUNELE1BQU0sQ0FBQ0YsT0FBTyxDQUFDLENBQUM7RUFFcEUsT0FBT0MsY0FBYztBQUN2QixDQUFDO0FBRUQsT0FBTyxJQUFNRyx5QkFBeUIsR0FBRyxTQUE1QkEseUJBQXlCQSxDQUFJQyxJQUFhLEVBQUs7RUFDMUQsSUFBTUMsNEJBQTRCLEdBQ2hDUCxrQkFBa0IsQ0FBQyxxQ0FBcUMsQ0FBQyxJQUN6REEsa0JBQWtCLENBQUMsMENBQTBDLENBQUMsSUFDOURBLGtCQUFrQixDQUFDLDZCQUE2QixDQUFDO0VBRW5ELE9BQU9PLDRCQUE0QixJQUFJRCxJQUFJLENBQUNFLE9BQU8sSUFBSSxDQUFDWCxjQUFjLENBQUNZLFFBQVEsQ0FBQ0gsSUFBSSxDQUFDRSxPQUFPLENBQUM7QUFDL0YsQ0FBQztBQUVELE9BQU8sSUFBTUUsaUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFpQkEsQ0FBSUosSUFBYSxFQUFLO0VBQ2xELElBQU1LLG9CQUFvQixHQUN4Qlgsa0JBQWtCLENBQUMsNkJBQTZCLENBQUMsSUFDakRBLGtCQUFrQixDQUFDLDBDQUEwQyxDQUFDLElBQzlEQSxrQkFBa0IsQ0FBQyxxQ0FBcUMsQ0FBQztFQUUzRCxPQUFPVyxvQkFBb0IsSUFBSUwsSUFBSSxDQUFDRSxPQUFPLElBQUksQ0FBQ1gsY0FBYyxDQUFDWSxRQUFRLENBQUNILElBQUksQ0FBQ0UsT0FBTyxDQUFDO0FBQ3ZGLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -27,4 +27,4 @@ export var useGlobalContext = function useGlobalContext() {
|
|
|
27
27
|
}
|
|
28
28
|
return context;
|
|
29
29
|
};
|
|
30
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVDb250ZXh0IiwidXNlQ29udGV4dCIsIkRFRkFVTFRfQUdFTlQiLCJpZCIsIm5hbWUiLCJjcmVhdGVkX2J5IiwiaXNfZGVsZXRlZCIsImNvbXBhbnlfaWQiLCJlbW9qaSIsImludHJvZHVjdGlvbiIsInR5cGUiLCJrbm93bGVkZ2UiLCJpc19pbnRlcm5hbCIsIkdsb2JhbENvbnRleHQiLCJ1c2VHbG9iYWxDb250ZXh0IiwiY29udGV4dCIsIkVycm9yIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnRleHQvZ2xvYmFsLWNvbnRleHQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQ29udGV4dCwgTXV0YWJsZVJlZk9iamVjdCwgdXNlQ29udGV4dCB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gJy4uL3R5cGVzL1Byb2plY3QnXG5pbXBvcnQgeyBDbGllbnQgfSBmcm9tICcuLi90eXBlcy9DbGllbnQnXG5pbXBvcnQgeyBUYXNrIH0gZnJvbSAnLi4vdHlwZXMvVGFzaydcbmltcG9ydCB7IENvbmZpZ1NldHRpbmdJdGVtIH0gZnJvbSAnLi4vY29uc3RhbnRzL3Blcm1pc3Npb25zL3R5cGVzJ1xuaW1wb3J0IHsgQWdlbnQgfSBmcm9tICcuLi90eXBlcy9hZ2VudCdcbmltcG9ydCB7IEhpdGxBcHByb3ZhbE1vZGUgfSBmcm9tICcuLi90eXBlcy9IaXRsJ1xuXG5jb25zdCBERUZBVUxUX0FHRU5UOiBBZ2VudCA9IHtcbiAgaWQ6ICcxJyxcbiAgbmFtZTogJ0FnZW50ZSBQTScsXG4gIGNyZWF0ZWRfYnk6IHsgbmFtZTogJzE3NDU0JywgaXNfZGVsZXRlZDogZmFsc2UgfSxcbiAgY29tcGFueV9pZDogJzIzMzYnLFxuICBlbW9qaTogJ/Cfk4onLFxuICBpbnRyb2R1Y3Rpb246IG51bGwsXG4gIHR5cGU6ICdwbScsXG4gIGtub3dsZWRnZTogW10sXG4gIGlzX2ludGVybmFsOiBmYWxzZSxcbn1cblxuZXhwb3J0IHsgREVGQVVMVF9BR0VOVCB9XG5cbmV4cG9ydCB0eXBlIENoaXBzUHJvamVjdCA9IHtcbiAgcHJvamVjdE5hbWU6IHN0cmluZ1xuICBjbGllbnROYW1lOiBzdHJpbmdcbiAgcHJvamVjdElkOiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgU2VjdGlvbiA9ICdwcm9qZWN0JyB8ICdoZWFkZXInIHwgJ2NsaWVudCcgfCAndGFzaydcblxudHlwZSBCYXNlR2xvYmFsQ29udGV4dFR5cGUgPSB7XG4gIHNlY3Rpb246IFNlY3Rpb25cbiAgYWdlbnQ6IEFnZW50IHwgbnVsbFxuICBzZWxlY3RBZ2VudDogKGFnZW50OiBBZ2VudCkgPT4gdm9pZFxuICBjbGVhckFnZW50OiAoKSA9PiB2b2lkXG4gIHByb2plY3Q6IFByb2plY3QgfCBudWxsXG4gIHNldFByb2plY3Q6IChwcm9qZWN0OiBQcm9qZWN0IHwgbnVsbCkgPT4gdm9pZFxuICBjbGllbnQ6IENsaWVudCB8IG51bGxcbiAgc2V0Q2xpZW50OiAoY2xpZW50OiBDbGllbnQgfCBudWxsKSA9PiB2b2lkXG4gIHRhc2s6IFRhc2sgfCBudWxsXG4gIHNldFRhc2s6ICh0YXNrOiBUYXNrIHwgbnVsbCkgPT4gdm9pZFxuICBpc1dlYlNlYXJjaEFjdGl2ZTogYm9vbGVhblxuICB0b2dnbGVXZWJTZWFyY2g6ICgpID0+IHZvaWRcbiAgaXNEZWVwU2VhcmNoQWN0aXZlOiBib29sZWFuXG4gIHRvZ2dsZURlZXBTZWFyY2g6ICgpID0+IHZvaWRcbiAgaGl0bEFwcHJvdmFsTW9kZTogSGl0bEFwcHJvdmFsTW9kZVxuICBzZXRIaXRsQXBwcm92YWxNb2RlOiAobW9kZTogSGl0bEFwcHJvdmFsTW9kZSkgPT4gdm9pZFxuICBoYXNNdWx0aUFnZW50cz86IGJvb2xlYW5cbiAgY2hpcHNQcm9qZWN0PzogQ2hpcHNQcm9qZWN0IHwgbnVsbFxuICBzZXRDaGlwc1Byb2plY3Q6IChjaGlwc1Byb2plY3Q6IENoaXBzUHJvamVjdCB8IG51bGwpID0+IHZvaWRcbn1cblxuLyoqIEZBUSBpbnllY3RhZGEgcG9yIGVsIGhvc3QgKGVqLiBiYW5uZXIgZGUgcHJveWVjdG8gZW4gQ09SKSBwYXJhIGFicmlyIGVsIGNoYXQgY29uIGVsIG1pc21vIGNyaXRlcmlvIHF1ZSB1biBjbGljIGVuIEZBUSBlbiBob21lLlxuICogYGZhcUlkYCBlcyBvcGNpb25hbDogY3VhbmRvIG5vIGV4aXN0ZSAoZWouIG1lbnNhamUgZGUgZGVzdsOtb3MgZGVsIGJhbm5lciksIGVsIGNoYXQgZW52w61hIHNvbG8gZWwgdGV4dG8gc2luIGhlYWRlciBYLUZhcS1JZC5cbiAqIGBjb250ZXh0RGF0YWAgZXMgb3BjaW9uYWw6IHBheWxvYWQgZGVsIGJhbm5lciAoZGVzdsOtby9tw6l0cmljYXMpIHF1ZSB2aWFqYSBlbiBlbCBoZWFkZXIgYFgtQ29udGV4dC1EYXRhYCBkZWwgb3JjaGVzdHJhdG9yIChKU09OIGVuIGJhc2U2NCkuICovXG5leHBvcnQgdHlwZSBCYW5uZXJFbnRyeUZhcSA9IHtcbiAgZmFxSWQ/OiBzdHJpbmdcbiAgZmFxVGl0bGU6IHN0cmluZ1xuICBjb250ZXh0RGF0YT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG59XG5cbmV4cG9ydCB0eXBlIFByb2plY3RTdW1tYXJ5Q29udGV4dFR5cGUgPSBCYXNlR2xvYmFsQ29udGV4dFR5cGUgJiB7XG4gIGNvbmZpZ3VyZVNldHRpbmdzSXRlbXM6IE11dGFibGVSZWZPYmplY3Q8Q29uZmlnU2V0dGluZ0l0ZW1bXT5cbiAgcmVzdG9yZUNvbmZpZ3VyZVNldHRpbmdzOiAoKSA9PiB2b2lkXG4gIGVudGl0eVZhbHVlczoge1xuICAgIHByb2plY3RJZDogc3RyaW5nIHwgbnVsbFxuICAgIGNsaWVudElkOiBzdHJpbmcgfCBudWxsXG4gIH1cbiAgc2V0RW50aXR5VmFsdWVzOiAoZW50aXR5OiB7IHByb2plY3RJZDogc3RyaW5nIHwgbnVsbDsgY2xpZW50SWQ6IHN0cmluZyB8IG51bGwgfSkgPT4gdm9pZFxuICAvKiogU2kgdmllbmUgZGVmaW5pZGEsIGVsIG1vZGFsIGRpc3BhcmEgdW5hIHZleiBgc3RhcnRDaGF0KGZhcVRpdGxlLCBbXSwgZmFxSWQpYCBhbCBlc3RhciBsaXN0b3MgYWdlbnRlICsgZW50aWRhZCAqL1xuICBiYW5uZXJFbnRyeUZhcT86IEJhbm5lckVudHJ5RmFxIHwgbnVsbFxufVxuXG50eXBlIEFsbG93ZWRHbG9iYWxDb250ZXh0VHlwZSA9IFByb2plY3RTdW1tYXJ5Q29udGV4dFR5cGVcblxuZXhwb3J0IHR5cGUgR2xvYmFsQ29udGV4dFR5cGU8VCBleHRlbmRzIEFsbG93ZWRHbG9iYWxDb250ZXh0VHlwZSA9IEFsbG93ZWRHbG9iYWxDb250ZXh0VHlwZT4gPSBUIHwgbnVsbFxuXG5leHBvcnQgY29uc3QgR2xvYmFsQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQ8R2xvYmFsQ29udGV4dFR5cGU+KG51bGwpXG5cbmV4cG9ydCBjb25zdCB1c2VHbG9iYWxDb250ZXh0ID0gPFQgZXh0ZW5kcyBCYXNlR2xvYmFsQ29udGV4dFR5cGUgPSBBbGxvd2VkR2xvYmFsQ29udGV4dFR5cGU+KCkgPT4ge1xuICBjb25zdCBjb250ZXh0ID0gdXNlQ29udGV4dChHbG9iYWxDb250ZXh0KVxuXG4gIGlmICghY29udGV4dCkge1xuICAgIHRocm93IG5ldyBFcnJvcigndXNlR2xvYmFsQ29udGV4dCBtdXN0IGJlIHVzZWQgd2l0aGluIGEgR2xvYmFsQ29udGV4dFByb3ZpZGVyJylcbiAgfVxuXG4gIHJldHVybiBjb250ZXh0IGFzIHVua25vd24gYXMgVFxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxhQUFhLEVBQW9CQyxVQUFVLFFBQVEsT0FBTztBQVFuRSxJQUFNQyxhQUFvQixHQUFHO0VBQzNCQyxFQUFFLEVBQUUsR0FBRztFQUNQQyxJQUFJLEVBQUUsV0FBVztFQUNqQkMsVUFBVSxFQUFFO0lBQUVELElBQUksRUFBRSxPQUFPO0lBQUVFLFVBQVUsRUFBRTtFQUFNLENBQUM7RUFDaERDLFVBQVUsRUFBRSxNQUFNO0VBQ2xCQyxLQUFLLEVBQUUsSUFBSTtFQUNYQyxZQUFZLEVBQUUsSUFBSTtFQUNsQkMsSUFBSSxFQUFFLElBQUk7RUFDVkMsU0FBUyxFQUFFLEVBQUU7RUFDYkMsV0FBVyxFQUFFO0FBQ2YsQ0FBQztBQUVELFNBQVNWLGFBQWE7O0FBZ0N0QjtBQUNBO0FBQ0E7O0FBdUJBLE9BQU8sSUFBTVcsYUFBYSxnQkFBR2IsYUFBYSxDQUFvQixJQUFJLENBQUM7QUFFbkUsT0FBTyxJQUFNYyxnQkFBZ0IsR0FBRyxTQUFuQkEsZ0JBQWdCQSxDQUFBLEVBQXFFO0VBQ2hHLElBQU1DLE9BQU8sR0FBR2QsVUFBVSxDQUFDWSxhQUFhLENBQUM7RUFFekMsSUFBSSxDQUFDRSxPQUFPLEVBQUU7SUFDWixNQUFNLElBQUlDLEtBQUssQ0FBQyw4REFBOEQsQ0FBQztFQUNqRjtFQUVBLE9BQU9ELE9BQU87QUFDaEIsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -19,6 +19,8 @@ var mockContextValue = {
|
|
|
19
19
|
toggleWebSearch: function toggleWebSearch() {},
|
|
20
20
|
isDeepSearchActive: false,
|
|
21
21
|
toggleDeepSearch: function toggleDeepSearch() {},
|
|
22
|
+
hitlApprovalMode: 'full_access',
|
|
23
|
+
setHitlApprovalMode: function setHitlApprovalMode() {},
|
|
22
24
|
chipsProject: null,
|
|
23
25
|
setChipsProject: function setChipsProject() {},
|
|
24
26
|
configureSettingsItems: {
|
|
@@ -64,4 +66,4 @@ export function DevContextMentionInput() {
|
|
|
64
66
|
})
|
|
65
67
|
});
|
|
66
68
|
}
|
|
67
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
69
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJHbG9iYWxDb250ZXh0IiwiREVGQVVMVF9BR0VOVCIsIkNvbnRleHRNZW50aW9uSW5wdXQiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwibW9ja0NvbnRleHRWYWx1ZSIsInNlY3Rpb24iLCJhZ2VudCIsIl9vYmplY3RTcHJlYWQiLCJlbnRpdHkiLCJzZWxlY3RBZ2VudCIsImNsZWFyQWdlbnQiLCJwcm9qZWN0Iiwic2V0UHJvamVjdCIsImNsaWVudCIsInNldENsaWVudCIsImlzV2ViU2VhcmNoQWN0aXZlIiwidG9nZ2xlV2ViU2VhcmNoIiwiaXNEZWVwU2VhcmNoQWN0aXZlIiwidG9nZ2xlRGVlcFNlYXJjaCIsImhpdGxBcHByb3ZhbE1vZGUiLCJzZXRIaXRsQXBwcm92YWxNb2RlIiwiY2hpcHNQcm9qZWN0Iiwic2V0Q2hpcHNQcm9qZWN0IiwiY29uZmlndXJlU2V0dGluZ3NJdGVtcyIsImN1cnJlbnQiLCJyZXN0b3JlQ29uZmlndXJlU2V0dGluZ3MiLCJ0YXNrIiwic2V0VGFzayIsImVudGl0eVZhbHVlcyIsInByb2plY3RJZCIsImNsaWVudElkIiwic2V0RW50aXR5VmFsdWVzIiwiRGV2Q29udGV4dE1lbnRpb25JbnB1dCIsIlByb3ZpZGVyIiwidmFsdWUiLCJjaGlsZHJlbiIsInN0eWxlIiwicGFkZGluZyIsIm1heFdpZHRoIiwibWFyZ2luQm90dG9tIiwiZm9udEZhbWlseSIsInBsYWNlaG9sZGVyIiwib25TZW5kTWVzc2FnZSIsInRleHQiLCJtZW50aW9ucyIsImNvbnNvbGUiLCJpbmZvIiwib25NZW50aW9uQWRkZWQiLCJtZW50aW9uIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Rldi9EZXZDb250ZXh0TWVudGlvbklucHV0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHbG9iYWxDb250ZXh0LCBERUZBVUxUX0FHRU5UIH0gZnJvbSAnLi4vY29udGV4dC9nbG9iYWwtY29udGV4dCdcbmltcG9ydCB7IENvbnRleHRNZW50aW9uSW5wdXQgfSBmcm9tICcuLi9jb21wb25lbnRzL21vbGVjdWxlcy9Db250ZXh0TWVudGlvbklucHV0J1xuaW1wb3J0IHsgQ29udGV4dE1lbnRpb24gfSBmcm9tICcuLi90eXBlcy9jb250ZXh0TWVudGlvbidcblxuY29uc3QgbW9ja0NvbnRleHRWYWx1ZSA9IHtcbiAgc2VjdGlvbjogJ2hlYWRlcicgYXMgY29uc3QsXG4gIGFnZW50OiB7IC4uLkRFRkFVTFRfQUdFTlQsIGVudGl0eTogJ2dsb2JhbCcgYXMgY29uc3QgfSxcbiAgc2VsZWN0QWdlbnQ6ICgpID0+IHt9LFxuICBjbGVhckFnZW50OiAoKSA9PiB7fSxcbiAgcHJvamVjdDogbnVsbCxcbiAgc2V0UHJvamVjdDogKCkgPT4ge30sXG4gIGNsaWVudDogbnVsbCxcbiAgc2V0Q2xpZW50OiAoKSA9PiB7fSxcbiAgaXNXZWJTZWFyY2hBY3RpdmU6IGZhbHNlLFxuICB0b2dnbGVXZWJTZWFyY2g6ICgpID0+IHt9LFxuICBpc0RlZXBTZWFyY2hBY3RpdmU6IGZhbHNlLFxuICB0b2dnbGVEZWVwU2VhcmNoOiAoKSA9PiB7fSxcbiAgaGl0bEFwcHJvdmFsTW9kZTogJ2Z1bGxfYWNjZXNzJyBhcyBjb25zdCxcbiAgc2V0SGl0bEFwcHJvdmFsTW9kZTogKCkgPT4ge30sXG4gIGNoaXBzUHJvamVjdDogbnVsbCxcbiAgc2V0Q2hpcHNQcm9qZWN0OiAoKSA9PiB7fSxcbiAgY29uZmlndXJlU2V0dGluZ3NJdGVtczogeyBjdXJyZW50OiBbXSB9LFxuICByZXN0b3JlQ29uZmlndXJlU2V0dGluZ3M6ICgpID0+IHt9LFxuICB0YXNrOiBudWxsLFxuICBzZXRUYXNrOiAoKSA9PiB7fSxcbiAgZW50aXR5VmFsdWVzOiB7IHByb2plY3RJZDogbnVsbCwgY2xpZW50SWQ6IG51bGwgfSxcbiAgc2V0RW50aXR5VmFsdWVzOiAoKSA9PiB7fSxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIERldkNvbnRleHRNZW50aW9uSW5wdXQoKSB7XG4gIHJldHVybiAoXG4gICAgPEdsb2JhbENvbnRleHQuUHJvdmlkZXIgdmFsdWU9e21vY2tDb250ZXh0VmFsdWV9PlxuICAgICAgPGRpdiBzdHlsZT17eyBwYWRkaW5nOiAyNCwgbWF4V2lkdGg6IDYwMCB9fT5cbiAgICAgICAgPGgzIHN0eWxlPXt7IG1hcmdpbkJvdHRvbTogMTYsIGZvbnRGYW1pbHk6ICdXb3JrIFNhbnMsIHNhbnMtc2VyaWYnIH19PkNvbnRleHRNZW50aW9uSW5wdXQgZGV2PC9oMz5cbiAgICAgICAgPENvbnRleHRNZW50aW9uSW5wdXRcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cIkVzY3JpYsOtIEAgcGFyYSBtZW5jaW9uYXIuLi5cIlxuICAgICAgICAgIG9uU2VuZE1lc3NhZ2U9eyh0ZXh0OiBzdHJpbmcsIG1lbnRpb25zOiBDb250ZXh0TWVudGlvbltdKSA9PiB7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgICAgICAgY29uc29sZS5pbmZvKCdzZW5kJywgeyB0ZXh0LCBtZW50aW9ucyB9KVxuICAgICAgICAgIH19XG4gICAgICAgICAgb25NZW50aW9uQWRkZWQ9eyhtZW50aW9uOiBDb250ZXh0TWVudGlvbikgPT4ge1xuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnbWVudGlvbiBhZGRlZCcsIG1lbnRpb24pXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgIDwvZGl2PlxuICAgIDwvR2xvYmFsQ29udGV4dC5Qcm92aWRlcj5cbiAgKVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7QUFBQSxTQUFTQSxhQUFhLEVBQUVDLGFBQWEsUUFBUSwyQkFBMkI7QUFDeEUsU0FBU0MsbUJBQW1CLFFBQVEsNkNBQTZDO0FBQUEsU0FBQUMsR0FBQSxJQUFBQyxJQUFBLEVBQUFDLElBQUEsSUFBQUMsS0FBQTtBQUdqRixJQUFNQyxnQkFBZ0IsR0FBRztFQUN2QkMsT0FBTyxF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
|