@projectcor/maia-components 2.35.2 → 2.35.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.js +20 -4
  2. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.styles.js +18 -7
  3. package/lib/components/atoms/MAIAInput/MAIAInput.js +26 -10
  4. package/lib/components/atoms/MAIAInput/styles.js +34 -27
  5. package/lib/components/molecules/ChatAIHome/ChatAIHome.js +16 -5
  6. package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.js +23 -2
  7. package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.styles.js +33 -5
  8. package/lib/components/molecules/ChatAIHome/styles.js +11 -2
  9. package/lib/components/molecules/ChatAIMessages/ChatAICreateAgentActions.js +31 -20
  10. package/lib/components/molecules/ChatAIModal/ChatAIModal.styles.js +2 -2
  11. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.js +8 -1
  12. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.styles.js +15 -9
  13. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +14 -3
  14. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.styles.js +2 -2
  15. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +14 -3
  16. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.styles.js +14 -5
  17. package/lib/components/molecules/ChatAIModal/layout.js +2 -2
  18. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.js +12 -2
  19. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.styles.js +3 -3
  20. package/lib/components/molecules/ChatFooter/ChatFooter.js +63 -45
  21. package/lib/components/molecules/ChatFooter/styles.js +12 -6
  22. package/lib/components/molecules/Sidebar/Sidebar.layout.styles.js +2 -2
  23. package/lib/components/molecules/UsageBlockedBanner/UsageBlockedBanner.js +33 -0
  24. package/lib/components/molecules/UsageBlockedBanner/UsageBlockedBanner.styles.js +47 -0
  25. package/lib/components/molecules/UsageBlockedBanner/index.js +2 -0
  26. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.js +36 -11
  27. package/lib/components/organisms/ChatAI/ChatAI.js +6 -1
  28. package/lib/hooks/useChatManager/useChatManager.js +16 -8
  29. package/lib/lang/br/index.js +4 -1
  30. package/lib/lang/en/index.js +4 -1
  31. package/lib/lang/es/index.js +4 -1
  32. package/lib/lang/fr/index.js +5 -2
  33. package/lib/services/maia/Orchestrator/orchestrator.js +5 -11
  34. package/lib/services/maia/Usage/getUsage.js +45 -0
  35. package/lib/services/maia/Usage/index.js +6 -0
  36. package/lib/services/maia/index.js +4 -2
  37. package/lib/services/utils/MaiaApiError.js +34 -0
  38. package/lib/services/utils/fetchCOR.js +106 -57
  39. package/lib/services/utils/index.js +2 -1
  40. package/lib/store/index.js +2 -1
  41. package/lib/store/sessions/sessionStreamManager.js +24 -7
  42. package/lib/store/useUsageStore.js +108 -0
  43. package/lib/types/usage.js +9 -0
  44. package/package.json +1 -1
@@ -26,6 +26,7 @@ import { useUser } from '../../../../../context/cor-user';
26
26
  import { isMaiaCloneAgentsRoleBlocked } from '../../../../../constants/maiaTaskPanelAccess';
27
27
  import { Loader } from '../../../../atoms/Loader';
28
28
  import { useMaiaTaskPanelZIndex } from '../../../../../hooks/useMaiaTaskPanelZIndex';
29
+ import { useUsageStore } from '../../../../../store/useUsageStore';
29
30
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
30
31
  export var ChatAIModalHeader = function ChatAIModalHeader(_ref) {
31
32
  var _user$permissions, _localAgents$name;
@@ -101,10 +102,14 @@ export var ChatAIModalHeader = function ChatAIModalHeader(_ref) {
101
102
  return isMaiaAgent(agentItem) || agentItem.entity !== 'global';
102
103
  });
103
104
  }, [agents, isMaiaAgent]);
105
+ var usageBlocked = useUsageStore(function (state) {
106
+ return state.blocked;
107
+ });
104
108
  var userPermissions = user === null || user === void 0 || (_user$permissions = user.permissions) === null || _user$permissions === void 0 ? void 0 : _user$permissions.ai_agents;
105
109
  var canCreateAgent = !!(userPermissions !== null && userPermissions !== void 0 && userPermissions.create) && !!window.MAIA_CHAT_AI_FEATURE_ACCESS_MULTI_AGENTS;
106
110
  var showHeaderCreateAgentButton = canCreateAgent && (isMyAgentsSection || isMaiakerSection);
107
111
  var handleOpenCreateAgentModal = useCallback(function () {
112
+ if (usageBlocked) return;
108
113
  amplitudEvent(EVENTS.openModal, {
109
114
  option: 'create_agent'
110
115
  });
@@ -118,7 +123,7 @@ export var ChatAIModalHeader = function ChatAIModalHeader(_ref) {
118
123
  }
119
124
  }
120
125
  }));
121
- }, [amplitudEvent]);
126
+ }, [amplitudEvent, usageBlocked]);
122
127
 
123
128
  // Manejar scroll infinito para cargar más agents
124
129
  useEffect(function () {
@@ -319,8 +324,12 @@ export var ChatAIModalHeader = function ChatAIModalHeader(_ref) {
319
324
  size: "small"
320
325
  })
321
326
  })]
322
- }), (userPermissions === null || userPermissions === void 0 ? void 0 : userPermissions.create) && window.MAIA_CHAT_AI_FEATURE_ACCESS_MULTI_AGENTS && !isMyAgentsSection && !isMaiakerSection && /*#__PURE__*/_jsxs(SCCAIMHAddAgent, {
327
+ }), canCreateAgent && !isMyAgentsSection && !isMaiakerSection && /*#__PURE__*/_jsxs(SCCAIMHAddAgent, {
328
+ $disabled: usageBlocked,
329
+ role: "button",
330
+ "aria-disabled": usageBlocked,
323
331
  onClick: function onClick() {
332
+ if (usageBlocked) return;
324
333
  setIsExpanded(false);
325
334
  amplitudEvent(EVENTS.openModal, {
326
335
  option: 'create_agent'
@@ -377,6 +386,8 @@ export var ChatAIModalHeader = function ChatAIModalHeader(_ref) {
377
386
  }), showHeaderCreateAgentButton && /*#__PURE__*/_jsx(SCCAIMHCreateAgentButton, {
378
387
  type: "button",
379
388
  onClick: handleOpenCreateAgentModal,
389
+ disabled: usageBlocked,
390
+ "aria-disabled": usageBlocked,
380
391
  children: /*#__PURE__*/_jsx(SCCAIMHCreateAgentButtonText, {
381
392
  children: t('openAgentCreator')
382
393
  })
@@ -445,4 +456,4 @@ export var ChatAIModalHeader = function ChatAIModalHeader(_ref) {
445
456
  })]
446
457
  });
447
458
  };
448
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJ1c2VSZWYiLCJ1c2VTdGF0ZSIsInVzZUNhbGxiYWNrIiwidXNlTWVtbyIsIlRvb2x0aXAiLCJTdGF0dXMiLCJDaGV2cm9uRG93biIsIkNoZXZyb25MZWZ0IiwiUGx1cyIsInVzZVRyYW5zbGF0aW9uIiwiU0VDVElPTlMiLCJ1c2VHbG9iYWxDb250ZXh0IiwidXNlUmVzaXplTGlzdGVuZXIiLCJJY29uQnV0dG9uIiwiTUFJQUljb24iLCJNYWlhQ2hhdExheW91dE1lbnVJY29uIiwiTWFpYUNoYXRMYXlvdXRTaWRlYmFySWNvbiIsIk1haWFDaGF0TGF5b3V0RnVsbHNjcmVlbkljb24iLCJNYWlhQ2hhdExheW91dEZsb2F0aW5nSWNvbiIsIkNoYXRBSUFnZW50T3B0aW9uIiwiU0NDQUlNSE1vZGFsIiwiU0NDQUlNSFNlbGVjdGVkQWdlbnQiLCJTQ0NBSU1IU2VsZWN0ZWRBZ2VudFRleHQiLCJTQ0NBSU1IV3JhcHBlciIsIlNDQ0FJTUhXcmFwcGVyQnV0dG9uIiwiU0NDQUlNSFdyYXBwZXJJY29uIiwiU0NDQUlNSFdyYXBwZXJNb2RhbCIsIlNDQ0FJTUhXcmFwcGVyTW9kYWxDb250ZW50IiwiU0NDQUlNSFdyYXBwZXJNb2RhbENvbnRlbnRUaXRsZSIsIlNDQ0FJTUhBZGRBZ2VudCIsIlNDQ0FJTUhDcmVhdGVBZ2VudEJ1dHRvbiIsIlNDQ0FJTUhDcmVhdGVBZ2VudEJ1dHRvblRleHQiLCJTQ0NBSU1IRGl2aWRlciIsIlNDQ0FJTUhBZ2VudHNMaXN0IiwiU0NDQUlNSExvYWRlcldyYXBwZXIiLCJTQ0NBSU1IUGx1c0ljb25XcmFwcGVyIiwiU0NDQUlNSExheW91dE1lbnVBbmNob3IiLCJTQ0NBSU1ITGF5b3V0TWVudVBhbmVsIiwiU0NDQUlNSExheW91dE1lbnVSb3ciLCJTQ0NBSU1ITGF5b3V0TWVudVJvd0ljb24iLCJTQ0NBSU1IQmFja0J1dHRvbiIsIlNDQ0FJTUhNaW5pbWl6ZUljb24iLCJFVkVOVFMiLCJ1c2VFdmVudCIsInVzZVVzZXIiLCJpc01haWFDbG9uZUFnZW50c1JvbGVCbG9ja2VkIiwiTG9hZGVyIiwidXNlTWFpYVRhc2tQYW5lbFpJbmRleCIsImpzeCIsIl9qc3giLCJqc3hzIiwiX2pzeHMiLCJGcmFnbWVudCIsIl9GcmFnbWVudCIsIkNoYXRBSU1vZGFsSGVhZGVyIiwiX3JlZiIsIl91c2VyJHBlcm1pc3Npb25zIiwiX2xvY2FsQWdlbnRzJG5hbWUiLCJsYXlvdXRNb2RlIiwib25MYXlvdXRNb2RlQ2hhbmdlIiwiX3JlZiRkcmFnZ2FibGUiLCJkcmFnZ2FibGUiLCJvbkRyYWdTdGFydCIsIm9uRHJhZ01vdmUiLCJvbkRyYWdFbmQiLCJoYW5kbGVNaW5pbWl6ZSIsIl9yZWYkYWdlbnRzIiwiYWdlbnRzIiwiX3JlZiRoYXNFcnJvciIsImhhc0Vycm9yIiwiX3JlZiRsb2FkaW5nIiwibG9hZGluZyIsIl9yZWYkbG9hZGluZ01vcmUiLCJsb2FkaW5nTW9yZSIsIl9yZWYkaGFzTW9yZSIsImhhc01vcmUiLCJoYW5kbGVSZXNldENoYXQiLCJvbkFnZW50VXBkYXRlIiwibG9hZE1vcmVBZ2VudHMiLCJzb3J0QWdlbnRzTGlzdCIsIl9yZWYkaXNNeUFnZW50c1NlY3RpbyIsImlzTXlBZ2VudHNTZWN0aW9uIiwiX3JlZiRpc01haWFrZXJTZWN0aW9uIiwiaXNNYWlha2VyU2VjdGlvbiIsIl9yZWYkaGlkZUFnZW50U2VsZWN0byIsImhpZGVBZ2VudFNlbGVjdG9yIiwib25BZ2VudFNlbGVjdGVkIiwiX3JlZiRzaG93QmFja0J1dHRvbiIsInNob3dCYWNrQnV0dG9uIiwiX3JlZiRvbkJhY2siLCJvbkJhY2siLCJfdXNlVHJhbnNsYXRpb24iLCJhYm1BZ2VudCIsImNoYXRBSSIsInQiLCJ1c2VyIiwiYW1wbGl0dWRFdmVudCIsIl91c2VHbG9iYWxDb250ZXh0Iiwic2VsZWN0ZWRBZ2VudCIsImFnZW50Iiwic2VsZWN0QWdlbnQiLCJzZXRQcm9qZWN0Iiwic2V0Q2xpZW50Iiwic2V0VGFzayIsInNlY3Rpb24iLCJ0b29sdGlwWkluZGV4IiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwiaXNFeHBhbmRlZCIsInNldElzRXhwYW5kZWQiLCJ0ZXh0UmVmQWdlbnQiLCJkcm9wZG93blJlZiIsImxheW91dE1lbnVSZWYiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImxheW91dE1lbnVPcGVuIiwic2V0TGF5b3V0TWVudU9wZW4iLCJfdXNlUmVzaXplTGlzdGVuZXIiLCJuYW1lIiwic2hvd1Rvb2x0aXBBZ2VudCIsInNob3dUb29sdGlwIiwiYWdlbnRzUmVmIiwiaXNNYWlhQWdlbnQiLCJhZ2VudEl0ZW0iLCJ0eXBlIiwiYWdlbnRzRm9yU2VsZWN0b3IiLCJmaWx0ZXIiLCJlbnRpdHkiLCJ1c2VyUGVybWlzc2lvbnMiLCJwZXJtaXNzaW9ucyIsImFpX2FnZW50cyIsImNhbkNyZWF0ZUFnZW50IiwiY3JlYXRlIiwid2luZG93IiwiTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UUyIsInNob3dIZWFkZXJDcmVhdGVBZ2VudEJ1dHRvbiIsImhhbmRsZU9wZW5DcmVhdGVBZ2VudE1vZGFsIiwib3Blbk1vZGFsIiwib3B0aW9uIiwiZG9jdW1lbnQiLCJkaXNwYXRjaEV2ZW50IiwiQ3VzdG9tRXZlbnQiLCJkZXRhaWwiLCJhZ2VudFZhbHVlcyIsInZhbHVlcyIsImlzRWRpdGluZyIsImlzT3BlbiIsInVuZGVmaW5lZCIsImhhbmRsZVNjcm9sbCIsImN1cnJlbnQiLCJfYWdlbnRzUmVmJGN1cnJlbnQiLCJzY3JvbGxUb3AiLCJzY3JvbGxIZWlnaHQiLCJjbGllbnRIZWlnaHQiLCJkaXN0YW5jZUZyb21Cb3R0b20iLCJ0aW1lb3V0SWQiLCJzZXRUaW1lb3V0Iiwic2Nyb2xsRWxlbWVudCIsImFkZEV2ZW50TGlzdGVuZXIiLCJjbGVhclRpbWVvdXQiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwibG9jYWxBZ2VudHMiLCJfcmVmMiIsImlzX2RlbGV0ZWQiLCJoYXNfbm90X3Blcm1pc3Npb25zIiwiaGFzX25vdF9hY2Nlc3MiLCJpc19mcm9tX2NvbnZlcnNhdGlvbiIsImlzX2xlZ2FjeV9jb250ZXh0IiwiZnJvbUxpc3QiLCJmaW5kIiwiaWQiLCJzZWxlY3Rvckljb24iLCJlbW9qaSIsInNlbGVjdG9yTGFiZWwiLCJucyIsImhhbmRsZVNlbGVjdEFnZW50IiwiYWlDaGF0QWdlbnRTZWxlY3QiLCJhZ2VudF90eXBlIiwibmVlZHNFbnRpdHkiLCJoYW5kbGVFeHBhbmRNb2RhbCIsImFpQ2hhdE9wZW5BZ2VudFNlbGVjdCIsInByZXYiLCJoYW5kbGVDbGlja091dHNpZGUiLCJldmVudCIsInRhcmdldCIsImNvbnRhaW5zIiwiaGFuZGxlUGlja0xheW91dCIsIm1vZGUiLCJwcm9qZWN0UmVzdW1lRXhwYW5kIiwiZXhwYW5kZWQiLCJhaUNoYXRTZWxlY3RWaWV3T3B0aW9ucyIsImNsb25lQWdlbnRzUm9sZUJsb2NrZWQiLCJyZW5kZXJNb2RhbCIsInJlZiIsIm9uQ2xpY2siLCJsZW5ndGgiLCJjaGlsZHJlbiIsIl9vYmplY3RTcHJlYWQiLCJ0aXRsZSIsInN0eWxlIiwiZGlzcGxheSIsImFsaWduSXRlbXMiLCJnYXAiLCJwbGFjZW1lbnQiLCJ6SW5kZXgiLCJpc0FnZW50RGVsZXRlZCIsIndpZHRoIiwiaGVpZ2h0IiwiY29sb3IiLCJNQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1MiLCJtYWlhQWdlbnRzIiwibWFwIiwibWFpYUFnZW50IiwiaW5kZXgiLCJpc1NlbGVjdGVkIiwiaXNNYWlhIiwib25GYXZvcml0ZVRvZ2dsZSIsImNvbmNhdCIsInNvbWUiLCJjb21wYW55IiwiYWdlbnRzQ291bnQiLCJzaXplIiwic2hvdWxkUmVuZGVyU2VsZWN0b3IiLCIkaGFzRXJyb3IiLCIkbG9hZGluZyIsIiRoYXNBZ2VudHMiLCJvblBvaW50ZXJEb3duIiwib25Qb2ludGVyTW92ZSIsIm9uUG9pbnRlclVwIiwib25Qb2ludGVyQ2FuY2VsIiwib25Mb3N0UG9pbnRlckNhcHR1cmUiLCJjdXJzb3IiLCJ0b3VjaEFjdGlvbiIsImJ1dHRvbklkIiwiaGFuZGxlQ2xpY2siLCJhaUNoYXRPcGVuVmlld09wdGlvbnMiLCJ0b29sdGlwIiwiZGlzYWJsZVRvb2x0aXAiLCJyb2xlIiwiJGFjdGl2ZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0QUlNb2RhbC9jb21wb25lbnRzL0NoYXRBaU1vZGFsSGVhZGVyL0NoYXRBaU1vZGFsSGVhZGVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvaW5kZW50ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1uZXN0ZWQtdGVybmFyeSAqL1xuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlLCB1c2VDYWxsYmFjaywgdXNlTWVtbywgUG9pbnRlckV2ZW50IGFzIFJlYWN0UG9pbnRlckV2ZW50IH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBUb29sdGlwIH0gZnJvbSAnQHByb2plY3Rjb3IvdG9vbHRpcHYyL2xpYi9jb21wb25lbnRzL1Rvb2x0aXAnXG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9TdGF0dXMnXG5pbXBvcnQgeyBDaGV2cm9uRG93biB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL0NoZXZyb25Eb3duJ1xuaW1wb3J0IHsgQ2hldnJvbkxlZnQgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9DaGV2cm9uTGVmdCdcbmltcG9ydCB7IFBsdXMgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9QbHVzJ1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHsgU0VDVElPTlMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9jb25zdGFudHMvY29uZmlnJ1xuaW1wb3J0IHsgdXNlR2xvYmFsQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2NvbnRleHQvZ2xvYmFsLWNvbnRleHQnXG5pbXBvcnQgeyB1c2VSZXNpemVMaXN0ZW5lciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2hvb2tzL3VzZVJlc2l6ZSdcbmltcG9ydCB7IEljb25CdXR0b24gfSBmcm9tICcuLi8uLi8uLi8uLi9hdG9tcy9JY29uQnV0dG9uJ1xuaW1wb3J0IHsgTUFJQUljb24sIE1haWFDaGF0TGF5b3V0TWVudUljb24gfSBmcm9tICcuLi8uLi8uLi8uLi9hdG9tcy9pY29ucydcbmltcG9ydCB7IE1haWFDaGF0TGF5b3V0U2lkZWJhckljb24gfSBmcm9tICcuLi8uLi8uLi8uLi9hdG9tcy9pY29ucy9NYWlhQ2hhdExheW91dFNpZGViYXJJY29uJ1xuaW1wb3J0IHsgTWFpYUNoYXRMYXlvdXRGdWxsc2NyZWVuSWNvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2F0b21zL2ljb25zL01haWFDaGF0TGF5b3V0RnVsbHNjcmVlbkljb24nXG5pbXBvcnQgeyBNYWlhQ2hhdExheW91dEZsb2F0aW5nSWNvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2F0b21zL2ljb25zL01haWFDaGF0TGF5b3V0RmxvYXRpbmdJY29uJ1xuaW1wb3J0IHsgQ2hhdEFJQWdlbnRPcHRpb24gfSBmcm9tICcuLi9DaGF0QWlBZ2VudE9wdGlvbnMvQ2hhdEFpQWdlbnRPcHRpb25zJ1xuaW1wb3J0IHtcbiAgU0NDQUlNSE1vZGFsLFxuICBTQ0NBSU1IU2VsZWN0ZWRBZ2VudCxcbiAgU0NDQUlNSFNlbGVjdGVkQWdlbnRUZXh0LFxuICBTQ0NBSU1IV3JhcHBlcixcbiAgU0NDQUlNSFdyYXBwZXJCdXR0b24sXG4gIFNDQ0FJTUhXcmFwcGVySWNvbixcbiAgU0NDQUlNSFdyYXBwZXJNb2RhbCxcbiAgU0NDQUlNSFdyYXBwZXJNb2RhbENvbnRlbnQsXG4gIFNDQ0FJTUhXcmFwcGVyTW9kYWxDb250ZW50VGl0bGUsXG4gIFNDQ0FJTUhBZGRBZ2VudCxcbiAgU0NDQUlNSENyZWF0ZUFnZW50QnV0dG9uLFxuICBTQ0NBSU1IQ3JlYXRlQWdlbnRCdXR0b25UZXh0LFxuICBTQ0NBSU1IRGl2aWRlcixcbiAgU0NDQUlNSEFnZW50c0xpc3QsXG4gIFNDQ0FJTUhMb2FkZXJXcmFwcGVyLFxuICBTQ0NBSU1IUGx1c0ljb25XcmFwcGVyLFxuICBTQ0NBSU1ITGF5b3V0TWVudUFuY2hvcixcbiAgU0NDQUlNSExheW91dE1lbnVQYW5lbCxcbiAgU0NDQUlNSExheW91dE1lbnVSb3csXG4gIFNDQ0FJTUhMYXlvdXRNZW51Um93SWNvbixcbiAgU0NDQUlNSEJhY2tCdXR0b24sXG4gIFNDQ0FJTUhNaW5pbWl6ZUljb24sXG59IGZyb20gJy4vQ2hhdEFpTW9kYWxIZWFkZXIuc3R5bGVzJ1xuaW1wb3J0IHR5cGUgeyBNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZSB9IGZyb20gJy4uLy4uL2xheW91dCdcbmltcG9ydCB7IEVWRU5UUywgdXNlRXZlbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9ob29rcy91c2VFdmVudCdcbmltcG9ydCB7IHVzZVVzZXIgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9jb250ZXh0L2Nvci11c2VyJ1xuaW1wb3J0IHsgaXNNYWlhQ2xvbmVBZ2VudHNSb2xlQmxvY2tlZCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50cy9tYWlhVGFza1BhbmVsQWNjZXNzJ1xuaW1wb3J0IHsgQWdlbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi90eXBlcy9hZ2VudCdcbmltcG9ydCB7IExvYWRlciB9IGZyb20gJy4uLy4uLy4uLy4uL2F0b21zL0xvYWRlcidcbmltcG9ydCB7IHVzZU1haWFUYXNrUGFuZWxaSW5kZXggfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9ob29rcy91c2VNYWlhVGFza1BhbmVsWkluZGV4J1xuXG5leHBvcnQgY29uc3QgQ2hhdEFJTW9kYWxIZWFkZXIgPSAoe1xuICBsYXlvdXRNb2RlLFxuICBvbkxheW91dE1vZGVDaGFuZ2UsXG4gIGRyYWdnYWJsZSA9IGZhbHNlLFxuICBvbkRyYWdTdGFydCxcbiAgb25EcmFnTW92ZSxcbiAgb25EcmFnRW5kLFxuICBoYW5kbGVNaW5pbWl6ZSxcbiAgYWdlbnRzID0gW10sXG4gIGhhc0Vycm9yID0gZmFsc2UsXG4gIGxvYWRpbmcgPSBmYWxzZSxcbiAgbG9hZGluZ01vcmUgPSBmYWxzZSxcbiAgaGFzTW9yZSA9IGZhbHNlLFxuICBoYW5kbGVSZXNldENoYXQsXG4gIG9uQWdlbnRVcGRhdGUsXG4gIGxvYWRNb3JlQWdlbnRzLFxuICBzb3J0QWdlbnRzTGlzdCxcbiAgaXNNeUFnZW50c1NlY3Rpb24gPSBmYWxzZSxcbiAgaXNNYWlha2VyU2VjdGlvbiA9IGZhbHNlLFxuICBoaWRlQWdlbnRTZWxlY3RvciA9IGZhbHNlLFxuICBvbkFnZW50U2VsZWN0ZWQsXG4gIHNob3dCYWNrQnV0dG9uID0gZmFsc2UsXG4gIG9uQmFjayA9ICgpID0+IG51bGwsXG59OiB7XG4gIGxheW91dE1vZGU6IE1haWFDaGF0TW9kYWxMYXlvdXRNb2RlXG4gIG9uTGF5b3V0TW9kZUNoYW5nZTogKG1vZGU6IE1haWFDaGF0TW9kYWxMYXlvdXRNb2RlKSA9PiB2b2lkXG4gIGV4cGFuZGVkOiBib29sZWFuXG4gIGRyYWdnYWJsZT86IGJvb2xlYW5cbiAgb25EcmFnU3RhcnQ/OiAoZXZlbnQ6IFJlYWN0UG9pbnRlckV2ZW50PEhUTUxEaXZFbGVtZW50PikgPT4gdm9pZFxuICBvbkRyYWdNb3ZlPzogKGV2ZW50OiBSZWFjdFBvaW50ZXJFdmVudDxIVE1MRGl2RWxlbWVudD4pID0+IHZvaWRcbiAgb25EcmFnRW5kPzogKGV2ZW50OiBSZWFjdFBvaW50ZXJFdmVudDxIVE1MRGl2RWxlbWVudD4pID0+IHZvaWRcbiAgaGFuZGxlTWluaW1pemU/OiAoKSA9PiB2b2lkXG4gIGFnZW50czogQWdlbnRbXVxuICBoYXNFcnJvcjogYm9vbGVhblxuICBsb2FkaW5nOiBib29sZWFuXG4gIGxvYWRpbmdNb3JlPzogYm9vbGVhblxuICBoYXNNb3JlPzogYm9vbGVhblxuICBoYW5kbGVSZXNldENoYXQ6ICgpID0+IHZvaWRcbiAgb25BZ2VudFVwZGF0ZT86ICh1cGRhdGVkQWdlbnQ6IEFnZW50KSA9PiB2b2lkXG4gIGxvYWRNb3JlQWdlbnRzPzogKCkgPT4gdm9pZFxuICBzb3J0QWdlbnRzTGlzdD86ICgpID0+IHZvaWRcbiAgLyoqIFNlY2Npw7NuIFwiTWlzIGFnZW50ZXNcIjogc2kgbm8gaGF5IGFnZW50ZSBzZXRlYWRvLCBlbCBzZWxlY3RvciBtdWVzdHJhIGVsIGljb25vIGRlIE1BSUEgeSBlbCBub21icmUgZGUgbGEgc2VjY2nDs24gKi9cbiAgaXNNeUFnZW50c1NlY3Rpb24/OiBib29sZWFuXG4gIC8qKiBPY3VsdGEgZWwgY2hpcCBkZSBtb2RlbG8gTExNIChwLiBlai4gZW4gTWlzIGFnZW50ZXMgLyBNaXMgc2tpbGxzKSAqL1xuICBoaWRlQWdlbnRTZWxlY3Rvcj86IGJvb2xlYW5cbiAgLyoqIFNlY2Npw7NuIFwiQ3JlYWRvciBkZSBhZ2VudGVzXCIgKE1haWFrZXIpOiBoYWJpbGl0YSBlbCBib3TDs24gXCJDcmVhciBhZ2VudGVcIiBkZWwgaGVhZGVyICovXG4gIGlzTWFpYWtlclNlY3Rpb24/OiBib29sZWFuXG4gIC8qKlxuICAgKiBTZSBpbnZvY2EgZGVzcHXDqXMgZGVsIHJlc2V0IGN1YW5kbyBlbCBhZ2VudGUgc2VsZWNjaW9uYWRvIE5PIHJlcXVpZXJlIHNlbGVjY2nDs25cbiAgICogZGUgZW50aXR5IChjdXN0b20gbyBjbG9uZStnbG9iYWwpLiBQZXJtaXRlIHJlc29sdmVyIGBHRVQgL3YyL3Nlc3Npb25zL2FnZW50L3tpZH1gXG4gICAqIHkgbmF2ZWdhciBhIHVuYSBjb252ZXJzYWNpw7NuIGV4aXN0ZW50ZSBzaSBsYSBoYXkuXG4gICAqL1xuICBvbkFnZW50U2VsZWN0ZWQ/OiAoYWdlbnQ6IEFnZW50KSA9PiB2b2lkIHwgUHJvbWlzZTx1bmtub3duPlxuICBzaG93QmFja0J1dHRvbj86IGJvb2xlYW5cbiAgb25CYWNrPzogKCkgPT4gdm9pZFxufSkgPT4ge1xuICBjb25zdCB7IHQgfSA9IHVzZVRyYW5zbGF0aW9uKFtTRUNUSU9OUy5hYm1BZ2VudCwgU0VDVElPTlMuY2hhdEFJXSlcbiAgY29uc3QgdXNlciA9IHVzZVVzZXIoKVxuICBjb25zdCBhbXBsaXR1ZEV2ZW50ID0gdXNlRXZlbnQoKVxuICBjb25zdCB7IGFnZW50OiBzZWxlY3RlZEFnZW50LCBzZWxlY3RBZ2VudCwgc2V0UHJvamVjdCwgc2V0Q2xpZW50LCBzZXRUYXNrLCBzZWN0aW9uIH0gPSB1c2VHbG9iYWxDb250ZXh0KClcbiAgLy8gRW4gc2VjdGlvbiAndGFzaycgZWwgbW9kYWwgZGUgTWFpYSBzZSBlbGV2YSBwb3IgZW5jaW1hIGRlbCB0YXNrIHBhbmVsICh6LWluZGV4IDk4MDAwMDEpLlxuICAvLyBMb3MgdG9vbHRpcHMgc2UgbW9udGFuIGVuIHBvcnRhbCBjb24gei1pbmRleCAxNTAwIHBvciBkZWZlY3RvLCBhc8OtIHF1ZSBxdWVkYXLDrWFuIGRldHLDoXMuXG4gIC8vIFN1Ymltb3Mgc3Ugei1pbmRleCBzw7NsbyBlbiBlc3RlIGNhc28gcGFyYSBxdWUgc2UgdmVhbiBwb3IgZW5jaW1hIGRlbCBtb2RhbC5cbiAgY29uc3QgdG9vbHRpcFpJbmRleCA9IHVzZU1haWFUYXNrUGFuZWxaSW5kZXgoMTUwMCwgJ292ZXJsYXknKVxuICBjb25zdCBbaXNFeHBhbmRlZCwgc2V0SXNFeHBhbmRlZF0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgdGV4dFJlZkFnZW50ID0gdXNlUmVmPEhUTUxTcGFuRWxlbWVudD4obnVsbClcbiAgY29uc3QgZHJvcGRvd25SZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IGxheW91dE1lbnVSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IFtsYXlvdXRNZW51T3Blbiwgc2V0TGF5b3V0TWVudU9wZW5dID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IHsgc2hvd1Rvb2x0aXA6IHNob3dUb29sdGlwQWdlbnQgfSA9IHVzZVJlc2l6ZUxpc3RlbmVyKHRleHRSZWZBZ2VudCwgW3NlbGVjdGVkQWdlbnQ/Lm5hbWVdKVxuICBjb25zdCBhZ2VudHNSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG5cbiAgY29uc3QgaXNNYWlhQWdlbnQgPSB1c2VDYWxsYmFjaygoYWdlbnRJdGVtOiBBZ2VudCkgPT4gYWdlbnRJdGVtLnR5cGUgPT09ICdvcmNoZXN0cmF0b3InLCBbXSlcbiAgY29uc3QgYWdlbnRzRm9yU2VsZWN0b3IgPSB1c2VNZW1vKFxuICAgICgpID0+IGFnZW50cy5maWx0ZXIoYWdlbnRJdGVtID0+IGlzTWFpYUFnZW50KGFnZW50SXRlbSkgfHwgYWdlbnRJdGVtLmVudGl0eSAhPT0gJ2dsb2JhbCcpLFxuICAgIFthZ2VudHMsIGlzTWFpYUFnZW50XVxuICApXG5cbiAgY29uc3QgdXNlclBlcm1pc3Npb25zID0gdXNlcj8ucGVybWlzc2lvbnM/LmFpX2FnZW50c1xuICBjb25zdCBjYW5DcmVhdGVBZ2VudCA9ICEhdXNlclBlcm1pc3Npb25zPy5jcmVhdGUgJiYgISF3aW5kb3cuTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UU1xuICBjb25zdCBzaG93SGVhZGVyQ3JlYXRlQWdlbnRCdXR0b24gPSBjYW5DcmVhdGVBZ2VudCAmJiAoaXNNeUFnZW50c1NlY3Rpb24gfHwgaXNNYWlha2VyU2VjdGlvbilcblxuICBjb25zdCBoYW5kbGVPcGVuQ3JlYXRlQWdlbnRNb2RhbCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBhbXBsaXR1ZEV2ZW50KEVWRU5UUy5vcGVuTW9kYWwsIHsgb3B0aW9uOiAnY3JlYXRlX2FnZW50JyB9KVxuICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQoXG4gICAgICBuZXcgQ3VzdG9tRXZlbnQoJ2FibS1hZ2VudC1tb2RhbC1zZXQtdmFsdWVzJywge1xuICAgICAgICBkZXRhaWw6IHtcbiAgICAgICAgICBhZ2VudFZhbHVlczoge1xuICAgICAgICAgICAgdmFsdWVzOiB7XG4gICAgICAgICAgICAgIGlzRWRpdGluZzogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgaXNPcGVuOiB0cnVlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9KVxuICAgIClcbiAgfSwgW2FtcGxpdHVkRXZlbnRdKVxuXG4gIC8vIE1hbmVqYXIgc2Nyb2xsIGluZmluaXRvIHBhcmEgY2FyZ2FyIG3DoXMgYWdlbnRzXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLy8gU29sbyBjdWFuZG8gZWwgZHJvcGRvd24gZXN0w6kgYWJpZXJ0b1xuICAgIGlmICghaXNFeHBhbmRlZCkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgIH1cblxuICAgIGNvbnN0IGhhbmRsZVNjcm9sbCA9ICgpID0+IHtcbiAgICAgIGlmICghYWdlbnRzUmVmLmN1cnJlbnQgfHwgIWxvYWRNb3JlQWdlbnRzIHx8ICFoYXNNb3JlIHx8IGxvYWRpbmdNb3JlKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBjb25zdCB7IHNjcm9sbFRvcCwgc2Nyb2xsSGVpZ2h0LCBjbGllbnRIZWlnaHQgfSA9IGFnZW50c1JlZi5jdXJyZW50XG4gICAgICBjb25zdCBkaXN0YW5jZUZyb21Cb3R0b20gPSBzY3JvbGxIZWlnaHQgLSBzY3JvbGxUb3AgLSBjbGllbnRIZWlnaHRcblxuICAgICAgLy8gQ2FyZ2FyIG3DoXMgKDUwcHggYW50ZXMpXG4gICAgICBpZiAoZGlzdGFuY2VGcm9tQm90dG9tIDwgNTApIHtcbiAgICAgICAgbG9hZE1vcmVBZ2VudHMoKVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGRlbGF5IHBhcmEgYXNlZ3VyYXIgcXVlIGVsIERPTSBlc3TDqSByZW5kZXJpemFkb1xuICAgIGNvbnN0IHRpbWVvdXRJZCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgY29uc3Qgc2Nyb2xsRWxlbWVudCA9IGFnZW50c1JlZi5jdXJyZW50XG4gICAgICBpZiAoc2Nyb2xsRWxlbWVudCkge1xuICAgICAgICBzY3JvbGxFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGhhbmRsZVNjcm9sbClcbiAgICAgIH1cbiAgICB9LCAxMDApXG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJZClcbiAgICAgIGNvbnN0IHNjcm9sbEVsZW1lbnQgPSBhZ2VudHNSZWYuY3VycmVudFxuICAgICAgaWYgKHNjcm9sbEVsZW1lbnQpIHtcbiAgICAgICAgc2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBoYW5kbGVTY3JvbGwpXG4gICAgICB9XG4gICAgfVxuICB9LCBbaXNFeHBhbmRlZCwgbG9hZE1vcmVBZ2VudHMsIGhhc01vcmUsIGxvYWRpbmdNb3JlXSlcblxuICBjb25zdCBsb2NhbEFnZW50cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIHNlbGVjdGVkQWdlbnQ/LmlzX2RlbGV0ZWQgfHxcbiAgICAgIHNlbGVjdGVkQWdlbnQ/Lmhhc19ub3RfcGVybWlzc2lvbnMgfHxcbiAgICAgIHNlbGVjdGVkQWdlbnQ/Lmhhc19ub3RfYWNjZXNzIHx8XG4gICAgICBzZWxlY3RlZEFnZW50Py5pc19mcm9tX2NvbnZlcnNhdGlvbiB8fFxuICAgICAgc2VsZWN0ZWRBZ2VudD8uaXNfbGVnYWN5X2NvbnRleHRcbiAgICApIHtcbiAgICAgIHJldHVybiBzZWxlY3RlZEFnZW50XG4gICAgfVxuICAgIGNvbnN0IGZyb21MaXN0ID0gYWdlbnRzLmZpbmQoXG4gICAgICBhZ2VudCA9PlxuICAgICAgICAhYWdlbnQuaXNfZGVsZXRlZCAmJiAhYWdlbnQuaGFzX25vdF9wZXJtaXNzaW9ucyAmJiAhYWdlbnQuaGFzX25vdF9hY2Nlc3MgJiYgYWdlbnQuaWQgPT09IHNlbGVjdGVkQWdlbnQ/LmlkXG4gICAgKVxuICAgIC8vIEFnZW50ZSBoaWRyYXRhZG8gcG9yIEdFVCAocC4gZWouIG51ZXZvIGNoYXQgdHJhcyBjcmVhdGVfYWdlbnQpIHB1ZWRlIG5vIGVzdGFyIGHDum4gZW4gbGEgbGlzdGEgcGFnaW5hZGFcbiAgICByZXR1cm4gZnJvbUxpc3QgPz8gc2VsZWN0ZWRBZ2VudCA/PyBudWxsXG4gIH0sIFthZ2VudHMsIHNlbGVjdGVkQWdlbnRdKVxuXG4gIC8vIEVuICdNaXMgYWdlbnRlcycgc2luIGFnZW50ZSBzZXRlYWRvLCBlbCBzZWxlY3RvciBtdWVzdHJhIGVsIGljb25vIGRlIE1BSUEgeSBlbCBub21icmUgZGUgbGEgc2VjY2nDs25cbiAgLy8gZW4gbHVnYXIgZGVsIGFnZW50ZSwgcGFyYSBxdWUgZWwgdXN1YXJpbyBwdWVkYSBhYnJpciBlbCBkcm9wZG93biB5IGVsZWdpciB1bm8uXG4gIGNvbnN0IHNlbGVjdG9ySWNvbiA9XG4gICAgbG9jYWxBZ2VudHM/LnR5cGUgPT09ICdjdXN0b20nICYmICFsb2NhbEFnZW50cz8uaXNfbGVnYWN5X2NvbnRleHQgPyBsb2NhbEFnZW50cz8uZW1vamkgOiA8TUFJQUljb24gLz5cbiAgY29uc3Qgc2VsZWN0b3JMYWJlbCA9XG4gICAgbG9jYWxBZ2VudHM/Lm5hbWUgPz8gKGlzTXlBZ2VudHNTZWN0aW9uID8gdCgnbWFya2V0cGxhY2UubXlBZ2VudHNUaXRsZScsIHsgbnM6IFNFQ1RJT05TLmNoYXRBSSB9KSA6ICcnKVxuXG4gIGNvbnN0IGhhbmRsZVNlbGVjdEFnZW50ID0gdXNlQ2FsbGJhY2soXG4gICAgKGFnZW50OiBBZ2VudCkgPT4ge1xuICAgICAgc2VsZWN0QWdlbnQoYWdlbnQpXG4gICAgICBhbXBsaXR1ZEV2ZW50KEVWRU5UUy5haUNoYXRBZ2VudFNlbGVjdCwge1xuICAgICAgICBhZ2VudF90eXBlOiBhZ2VudD8udHlwZSxcbiAgICAgIH0pXG4gICAgICBzZXRJc0V4cGFuZGVkKGZhbHNlKVxuICAgICAgc2V0UHJvamVjdChudWxsKVxuICAgICAgc2V0Q2xpZW50Py4obnVsbClcbiAgICAgIHNldFRhc2sobnVsbClcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBoYW5kbGVSZXNldENoYXQoKVxuICAgICAgICAvLyBTaSBlbCBhZ2VudGUgbm8gZGVwZW5kZSBkZSB1bmEgZW50aXR5IChjdXN0b20gbyBjbG9uZStnbG9iYWwpIHlhIHBvZGVtb3NcbiAgICAgICAgLy8gcmVzb2x2ZXIgc2kgZXhpc3RlIHVuYSBzZXNpw7NuIHByZXZpYSB5LCBlbiBlc2UgY2FzbywgbmF2ZWdhciBhIGVsbGEuXG4gICAgICAgIC8vIFBhcmEgY2xvbmUrcHJvamVjdHxjbGllbnQsIGxhIHJlc29sdWNpw7NuIG9jdXJyZSBlbiBsb3Mgc2VsZWN0b3JzIGRlIGVudGl0eS5cbiAgICAgICAgY29uc3QgbmVlZHNFbnRpdHkgPSBhZ2VudD8udHlwZSA9PT0gJ2Nsb25lJyAmJiAoYWdlbnQ/LmVudGl0eSA9PT0gJ3Byb2plY3QnIHx8IGFnZW50Py5lbnRpdHkgPT09ICdjbGllbnQnKVxuICAgICAgICBpZiAoIW5lZWRzRW50aXR5KSB7XG4gICAgICAgICAgb25BZ2VudFNlbGVjdGVkPy4oYWdlbnQpXG4gICAgICAgIH1cbiAgICAgIH0sIDEwMClcbiAgICB9LFxuICAgIFtzZWxlY3RBZ2VudCwgYW1wbGl0dWRFdmVudCwgaGFuZGxlUmVzZXRDaGF0LCBzZXRQcm9qZWN0LCBzZXRDbGllbnQsIHNldFRhc2ssIG9uQWdlbnRTZWxlY3RlZF1cbiAgKVxuXG4gIGNvbnN0IGhhbmRsZUV4cGFuZE1vZGFsID0gKCkgPT4ge1xuICAgIGlmICghaXNFeHBhbmRlZCkge1xuICAgICAgYW1wbGl0dWRFdmVudChFVkVOVFMuYWlDaGF0T3BlbkFnZW50U2VsZWN0KVxuICAgICAgLy8gQ3VhbmRvIHNlIGFicmUgZWwgc2VsZWN0b3IsIG9yZGVuYXIgbG9zIGFnZW50ZXNcbiAgICAgIGlmIChzb3J0QWdlbnRzTGlzdCkge1xuICAgICAgICBzb3J0QWdlbnRzTGlzdCgpXG4gICAgICB9XG4gICAgfVxuICAgIHNldElzRXhwYW5kZWQocHJldiA9PiAhcHJldilcbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFpc0V4cGFuZGVkICYmICFsYXlvdXRNZW51T3Blbikge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgIH1cblxuICAgIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZSA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIE5vZGVcbiAgICAgIGlmIChpc0V4cGFuZGVkICYmIGRyb3Bkb3duUmVmLmN1cnJlbnQgJiYgIWRyb3Bkb3duUmVmLmN1cnJlbnQuY29udGFpbnModGFyZ2V0KSkge1xuICAgICAgICBzZXRJc0V4cGFuZGVkKGZhbHNlKVxuICAgICAgfVxuICAgICAgaWYgKGxheW91dE1lbnVPcGVuICYmIGxheW91dE1lbnVSZWYuY3VycmVudCAmJiAhbGF5b3V0TWVudVJlZi5jdXJyZW50LmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICAgICAgc2V0TGF5b3V0TWVudU9wZW4oZmFsc2UpXG4gICAgICB9XG4gICAgfVxuXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgaGFuZGxlQ2xpY2tPdXRzaWRlKVxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBoYW5kbGVDbGlja091dHNpZGUpXG4gICAgfVxuICB9LCBbaXNFeHBhbmRlZCwgbGF5b3V0TWVudU9wZW5dKVxuXG4gIGNvbnN0IGhhbmRsZVBpY2tMYXlvdXQgPSB1c2VDYWxsYmFjayhcbiAgICAobW9kZTogTWFpYUNoYXRNb2RhbExheW91dE1vZGUpID0+IHtcbiAgICAgIGFtcGxpdHVkRXZlbnQoRVZFTlRTLnByb2plY3RSZXN1bWVFeHBhbmQsIHtcbiAgICAgICAgZXhwYW5kZWQ6IG1vZGUgPT09ICdmdWxsc2NyZWVuJyxcbiAgICAgIH0pXG4gICAgICBhbXBsaXR1ZEV2ZW50KEVWRU5UUy5haUNoYXRTZWxlY3RWaWV3T3B0aW9ucywgeyBvcHRpb246IG1vZGUgfSlcbiAgICAgIG9uTGF5b3V0TW9kZUNoYW5nZShtb2RlKVxuICAgICAgc2V0TGF5b3V0TWVudU9wZW4oZmFsc2UpXG4gICAgfSxcbiAgICBbYW1wbGl0dWRFdmVudCwgb25MYXlvdXRNb2RlQ2hhbmdlXVxuICApXG5cbiAgY29uc3QgY2xvbmVBZ2VudHNSb2xlQmxvY2tlZCA9IGlzTWFpYUNsb25lQWdlbnRzUm9sZUJsb2NrZWQodXNlciwgc2VjdGlvbilcblxuICBjb25zdCByZW5kZXJNb2RhbCA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPFNDQ0FJTUhXcmFwcGVyXG4gICAgICAgIHJlZj17ZHJvcGRvd25SZWZ9XG4gICAgICAgIGRhdGEtbm8tZHJhZz1cInRydWVcIlxuICAgICAgICBvbkNsaWNrPXthZ2VudHMubGVuZ3RoID8gaGFuZGxlRXhwYW5kTW9kYWwgOiB1bmRlZmluZWR9XG4gICAgICAgIGlkPVwiY2hhdC1haS1tb2RhbC1oZWFkZXItd3JhcHBlclwiXG4gICAgICA+XG4gICAgICAgIDxTQ0NBSU1IU2VsZWN0ZWRBZ2VudD5cbiAgICAgICAgICA8VG9vbHRpcFxuICAgICAgICAgICAgdGl0bGU9e1xuICAgICAgICAgICAgICBzaG93VG9vbHRpcEFnZW50ID8gKFxuICAgICAgICAgICAgICAgIDxzcGFuIHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgYWxpZ25JdGVtczogJ2NlbnRlcicsIGdhcDogJzRweCcgfX0+XG4gICAgICAgICAgICAgICAgICB7bG9jYWxBZ2VudHM/LnR5cGUgPT09ICdjdXN0b20nICYmICFsb2NhbEFnZW50cz8uaXNfbGVnYWN5X2NvbnRleHQgPyAoXG4gICAgICAgICAgICAgICAgICAgIGxvY2FsQWdlbnRzPy5lbW9qaVxuICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgPE1BSUFJY29uIC8+XG4gICAgICAgICAgICAgICAgICApfXsnICd9XG4gICAgICAgICAgICAgICAgICB7bG9jYWxBZ2VudHM/Lm5hbWV9XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICcnXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHBsYWNlbWVudD17aXNFeHBhbmRlZCA/ICdsZWZ0JyA6ICd0b3AnfVxuICAgICAgICAgICAgey4uLih0b29sdGlwWkluZGV4ICE9IG51bGwgPyB7IHpJbmRleDogdG9vbHRpcFpJbmRleCB9IDoge30pfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxTQ0NBSU1IU2VsZWN0ZWRBZ2VudFRleHRcbiAgICAgICAgICAgICAgcmVmPXt0ZXh0UmVmQWdlbnR9XG4gICAgICAgICAgICAgIGlzQWdlbnREZWxldGVkPXtcbiAgICAgICAgICAgICAgICAhIXNlbGVjdGVkQWdlbnQ/LmlzX2RlbGV0ZWQgfHxcbiAgICAgICAgICAgICAgICAhIXNlbGVjdGVkQWdlbnQ/Lmhhc19ub3RfcGVybWlzc2lvbnMgfHxcbiAgICAgICAgICAgICAgICAhIXNlbGVjdGVkQWdlbnQ/Lmhhc19ub3RfYWNjZXNzIHx8XG4gICAgICAgICAgICAgICAgISFzZWxlY3RlZEFnZW50Py5pc19sZWdhY3lfY29udGV4dFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgYWxpZ25JdGVtczogJ2NlbnRlcicsIGdhcDogJzRweCcgfX0+XG4gICAgICAgICAgICAgICAge3NlbGVjdG9ySWNvbn0ge3NlbGVjdG9yTGFiZWx9XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvU0NDQUlNSFNlbGVjdGVkQWdlbnRUZXh0PlxuICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgPC9TQ0NBSU1IU2VsZWN0ZWRBZ2VudD5cbiAgICAgICAgPFNDQ0FJTUhXcmFwcGVySWNvbj5cbiAgICAgICAgICA8Q2hldnJvbkRvd24gd2lkdGg9ezE0fSBoZWlnaHQ9ezE0fSBjb2xvcj1cIiMyMDIwMUZcIiAvPlxuICAgICAgICA8L1NDQ0FJTUhXcmFwcGVySWNvbj5cbiAgICAgICAge2lzRXhwYW5kZWQgJiYgKFxuICAgICAgICAgIDxTQ0NBSU1IV3JhcHBlck1vZGFsPlxuICAgICAgICAgICAgPFNDQ0FJTUhXcmFwcGVyTW9kYWxDb250ZW50PlxuICAgICAgICAgICAgICB7d2luZG93Lk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTUyAmJiAhY2xvbmVBZ2VudHNSb2xlQmxvY2tlZCAmJiAoXG4gICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgIHsoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtYWlhQWdlbnRzID0gYWdlbnRzRm9yU2VsZWN0b3IuZmlsdGVyKGlzTWFpYUFnZW50KVxuICAgICAgICAgICAgICAgICAgICBpZiAoIW1haWFBZ2VudHMubGVuZ3RoKSByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICB7bWFpYUFnZW50cy5tYXAoKG1haWFBZ2VudCwgaW5kZXgpID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPENoYXRBSUFnZW50T3B0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5PXtgYWdlbnQtJHttYWlhQWdlbnQuaWR9YH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZ2VudD17bWFpYUFnZW50fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4PXtpbmRleH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVTZWxlY3RBZ2VudD17aGFuZGxlU2VsZWN0QWdlbnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNTZWxlY3RlZD17c2VsZWN0ZWRBZ2VudD8uaWQgPT09IG1haWFBZ2VudC5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc01haWFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkZhdm9yaXRlVG9nZ2xlPXtvbkFnZW50VXBkYXRlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgIH0pKCl9XG4gICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIHthZ2VudHNGb3JTZWxlY3Rvci5zb21lKGFnZW50ID0+IGFnZW50LnR5cGUgPT09ICdjdXN0b20nKSAmJlxuICAgICAgICAgICAgICAgIHdpbmRvdy5NQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1NfTVVMVElfQUdFTlRTICYmIChcbiAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgIDxTQ0NBSU1IV3JhcHBlck1vZGFsQ29udGVudFRpdGxlPlxuICAgICAgICAgICAgICAgICAgICAgIHt0KCdhZ2VudHMnKX0gYnkge3VzZXIuY29tcGFueX1cbiAgICAgICAgICAgICAgICAgICAgPC9TQ0NBSU1IV3JhcHBlck1vZGFsQ29udGVudFRpdGxlPlxuICAgICAgICAgICAgICAgICAgICA8U0NDQUlNSERpdmlkZXIgLz5cbiAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDxTQ0NBSU1IQWdlbnRzTGlzdCBoYXNNb3JlPXtoYXNNb3JlfSBhZ2VudHNDb3VudD17YWdlbnRzRm9yU2VsZWN0b3IubGVuZ3RofSByZWY9e2FnZW50c1JlZn0+XG4gICAgICAgICAgICAgICAge2FnZW50c0ZvclNlbGVjdG9yPy5tYXAoKGFnZW50LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICBhZ2VudD8uaXNfZGVsZXRlZCB8fFxuICAgICAgICAgICAgICAgICAgICBhZ2VudD8uaGFzX25vdF9wZXJtaXNzaW9ucyB8fFxuICAgICAgICAgICAgICAgICAgICBhZ2VudD8uaGFzX25vdF9hY2Nlc3MgfHxcbiAgICAgICAgICAgICAgICAgICAgYWdlbnQ/LnR5cGUgPT09ICdjbG9uZScgfHxcbiAgICAgICAgICAgICAgICAgICAgaXNNYWlhQWdlbnQoYWdlbnQpIHx8XG4gICAgICAgICAgICAgICAgICAgIChhZ2VudD8udHlwZSA9PT0gJ2N1c3RvbScgJiYgIXdpbmRvdy5NQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1NfTVVMVElfQUdFTlRTKVxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgPENoYXRBSUFnZW50T3B0aW9uXG4gICAgICAgICAgICAgICAgICAgICAga2V5PXtgYWdlbnQtJHthZ2VudC5pZH1gfVxuICAgICAgICAgICAgICAgICAgICAgIGFnZW50PXthZ2VudH1cbiAgICAgICAgICAgICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICAgICAgICAgICAgaGFuZGxlU2VsZWN0QWdlbnQ9e2hhbmRsZVNlbGVjdEFnZW50fVxuICAgICAgICAgICAgICAgICAgICAgIGlzU2VsZWN0ZWQ9e3NlbGVjdGVkQWdlbnQ/LmlkID09PSBhZ2VudC5pZH1cbiAgICAgICAgICAgICAgICAgICAgICBvbkZhdm9yaXRlVG9nZ2xlPXtvbkFnZW50VXBkYXRlfVxuICAgICAgICAgICAgICAgICAgICAgIHNldElzRXhwYW5kZWQ9e3NldElzRXhwYW5kZWR9XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAge2xvYWRpbmdNb3JlICYmIChcbiAgICAgICAgICAgICAgICAgIDxTQ0NBSU1ITG9hZGVyV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgPExvYWRlciBzaXplPVwic21hbGxcIiAvPlxuICAgICAgICAgICAgICAgICAgPC9TQ0NBSU1ITG9hZGVyV3JhcHBlcj5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L1NDQ0FJTUhBZ2VudHNMaXN0PlxuICAgICAgICAgICAgICB7dXNlclBlcm1pc3Npb25zPy5jcmVhdGUgJiZcbiAgICAgICAgICAgICAgICB3aW5kb3cuTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UUyAmJlxuICAgICAgICAgICAgICAgICFpc015QWdlbnRzU2VjdGlvbiAmJlxuICAgICAgICAgICAgICAgICFpc01haWFrZXJTZWN0aW9uICYmIChcbiAgICAgICAgICAgICAgICAgIDxTQ0NBSU1IQWRkQWdlbnRcbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgIHNldElzRXhwYW5kZWQoZmFsc2UpXG4gICAgICAgICAgICAgICAgICAgICAgYW1wbGl0dWRFdmVudChFVkVOVFMub3Blbk1vZGFsLCB7IG9wdGlvbjogJ2NyZWF0ZV9hZ2VudCcgfSlcbiAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5kaXNwYXRjaEV2ZW50KFxuICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEN1c3RvbUV2ZW50KCdhYm0tYWdlbnQtbW9kYWwtc2V0LXZhbHVlcycsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWdlbnRWYWx1ZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0VkaXRpbmc6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzT3BlbjogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxTQ0NBSU1IUGx1c0ljb25XcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgIDxQbHVzIGNvbG9yPVwid2hpdGVcIiB3aWR0aD17MTh9IGhlaWdodD17MTh9IC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU0NDQUlNSFBsdXNJY29uV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAge3QoJ2NyZWF0ZUFnZW50Jyl9XG4gICAgICAgICAgICAgICAgICA8L1NDQ0FJTUhBZGRBZ2VudD5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9TQ0NBSU1IV3JhcHBlck1vZGFsQ29udGVudD5cbiAgICAgICAgICA8L1NDQ0FJTUhXcmFwcGVyTW9kYWw+XG4gICAgICAgICl9XG4gICAgICA8L1NDQ0FJTUhXcmFwcGVyPlxuICAgIClcbiAgfVxuXG4gIGNvbnN0IHNob3VsZFJlbmRlclNlbGVjdG9yID1cbiAgICAhaGFzRXJyb3IgJiZcbiAgICAhbG9hZGluZyAmJlxuICAgICFoaWRlQWdlbnRTZWxlY3RvciAmJlxuICAgICghIXNlbGVjdGVkQWdlbnQgfHwgaXNNeUFnZW50c1NlY3Rpb24pICYmXG4gICAgKCEhd2luZG93Lk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFMgfHwgISF3aW5kb3cuTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTKVxuXG4gIHJldHVybiAoXG4gICAgPFNDQ0FJTUhNb2RhbFxuICAgICAgJGhhc0Vycm9yPXtoYXNFcnJvcn1cbiAgICAgICRsb2FkaW5nPXtsb2FkaW5nfVxuICAgICAgJGhhc0FnZW50cz17ISFhZ2VudHMubGVuZ3RofVxuICAgICAgb25Qb2ludGVyRG93bj17ZHJhZ2dhYmxlID8gb25EcmFnU3RhcnQgOiB1bmRlZmluZWR9XG4gICAgICBvblBvaW50ZXJNb3ZlPXtkcmFnZ2FibGUgPyBvbkRyYWdNb3ZlIDogdW5kZWZpbmVkfVxuICAgICAgb25Qb2ludGVyVXA9e2RyYWdnYWJsZSA/IG9uRHJhZ0VuZCA6IHVuZGVmaW5lZH1cbiAgICAgIG9uUG9pbnRlckNhbmNlbD17ZHJhZ2dhYmxlID8gb25EcmFnRW5kIDogdW5kZWZpbmVkfVxuICAgICAgb25Mb3N0UG9pbnRlckNhcHR1cmU9e2RyYWdnYWJsZSA/IG9uRHJhZ0VuZCA6IHVuZGVmaW5lZH1cbiAgICAgIHN0eWxlPXt7IGN1cnNvcjogZHJhZ2dhYmxlID8gJ2dyYWInIDogdW5kZWZpbmVkLCB0b3VjaEFjdGlvbjogZHJhZ2dhYmxlID8gJ21hbmlwdWxhdGlvbicgOiB1bmRlZmluZWQgfX1cbiAgICA+XG4gICAgICB7c2hvdWxkUmVuZGVyU2VsZWN0b3IgPyByZW5kZXJNb2RhbCgpIDogPGRpdiAvPn1cbiAgICAgIDxTQ0NBSU1IV3JhcHBlckJ1dHRvbiBkYXRhLW5vLWRyYWc9XCJ0cnVlXCI+XG4gICAgICAgIHtzaG93QmFja0J1dHRvbiAmJiAoXG4gICAgICAgICAgPFNDQ0FJTUhCYWNrQnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgb25CYWNrKClcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPENoZXZyb25MZWZ0IHdpZHRoPXsxNH0gaGVpZ2h0PXsxNH0gY29sb3I9XCIjMzQzNDMzXCIgLz5cbiAgICAgICAgICAgIHt0KCdiYWNrJyl9XG4gICAgICAgICAgPC9TQ0NBSU1IQmFja0J1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgICAge3Nob3dIZWFkZXJDcmVhdGVBZ2VudEJ1dHRvbiAmJiAoXG4gICAgICAgICAgPFNDQ0FJTUhDcmVhdGVBZ2VudEJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgb25DbGljaz17aGFuZGxlT3BlbkNyZWF0ZUFnZW50TW9kYWx9PlxuICAgICAgICAgICAgPFNDQ0FJTUhDcmVhdGVBZ2VudEJ1dHRvblRleHQ+e3QoJ29wZW5BZ2VudENyZWF0b3InKX08L1NDQ0FJTUhDcmVhdGVBZ2VudEJ1dHRvblRleHQ+XG4gICAgICAgICAgPC9TQ0NBSU1IQ3JlYXRlQWdlbnRCdXR0b24+XG4gICAgICAgICl9XG4gICAgICAgIDxTQ0NBSU1ITGF5b3V0TWVudUFuY2hvciByZWY9e2xheW91dE1lbnVSZWZ9IGRhdGEtbm8tZHJhZz1cInRydWVcIj5cbiAgICAgICAgICA8SWNvbkJ1dHRvblxuICAgICAgICAgICAgYnV0dG9uSWQ9XCJidG4tbWFpYS1sYXlvdXQtbWVudVwiXG4gICAgICAgICAgICBoYW5kbGVDbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoIWxheW91dE1lbnVPcGVuKSB7XG4gICAgICAgICAgICAgICAgYW1wbGl0dWRFdmVudChFVkVOVFMuYWlDaGF0T3BlblZpZXdPcHRpb25zKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHNldExheW91dE1lbnVPcGVuKHByZXYgPT4gIXByZXYpXG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgdG9vbHRpcD17dCgnbGF5b3V0TWVudVRvb2x0aXAnKX1cbiAgICAgICAgICAgIGRpc2FibGVUb29sdGlwPXtsYXlvdXRNZW51T3Blbn1cbiAgICAgICAgICAgIHRvb2x0aXBaSW5kZXg9e3Rvb2x0aXBaSW5kZXh9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPE1haWFDaGF0TGF5b3V0TWVudUljb24gLz5cbiAgICAgICAgICA8L0ljb25CdXR0b24+XG4gICAgICAgICAge2xheW91dE1lbnVPcGVuID8gKFxuICAgICAgICAgICAgPFNDQ0FJTUhMYXlvdXRNZW51UGFuZWwgcm9sZT1cIm1lbnVcIj5cbiAgICAgICAgICAgICAgPFNDQ0FJTUhMYXlvdXRNZW51Um93XG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgJGFjdGl2ZT17bGF5b3V0TW9kZSA9PT0gJ3NpZGViYXInfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZVBpY2tMYXlvdXQoJ3NpZGViYXInKX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxTQ0NBSU1ITGF5b3V0TWVudVJvd0ljb24gYXJpYS1oaWRkZW4+XG4gICAgICAgICAgICAgICAgICA8TWFpYUNoYXRMYXlvdXRTaWRlYmFySWNvbiAvPlxuICAgICAgICAgICAgICAgIDwvU0NDQUlNSExheW91dE1lbnVSb3dJY29uPlxuICAgICAgICAgICAgICAgIHt0KCdsYXlvdXRTaWRlYmFyJyl9XG4gICAgICAgICAgICAgIDwvU0NDQUlNSExheW91dE1lbnVSb3c+XG4gICAgICAgICAgICAgIDxTQ0NBSU1ITGF5b3V0TWVudVJvd1xuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICRhY3RpdmU9e2xheW91dE1vZGUgPT09ICdmdWxsc2NyZWVuJ31cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBoYW5kbGVQaWNrTGF5b3V0KCdmdWxsc2NyZWVuJyl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8U0NDQUlNSExheW91dE1lbnVSb3dJY29uIGFyaWEtaGlkZGVuPlxuICAgICAgICAgICAgICAgICAgPE1haWFDaGF0TGF5b3V0RnVsbHNjcmVlbkljb24gLz5cbiAgICAgICAgICAgICAgICA8L1NDQ0FJTUhMYXlvdXRNZW51Um93SWNvbj5cbiAgICAgICAgICAgICAgICB7dCgnbGF5b3V0RnVsbHNjcmVlbicpfVxuICAgICAgICAgICAgICA8L1NDQ0FJTUhMYXlvdXRNZW51Um93PlxuICAgICAgICAgICAgICA8U0NDQUlNSExheW91dE1lbnVSb3dcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAkYWN0aXZlPXtsYXlvdXRNb2RlID09PSAnZmxvYXRpbmcnfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZVBpY2tMYXlvdXQoJ2Zsb2F0aW5nJyl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8U0NDQUlNSExheW91dE1lbnVSb3dJY29uIGFyaWEtaGlkZGVuPlxuICAgICAgICAgICAgICAgICAgPE1haWFDaGF0TGF5b3V0RmxvYXRpbmdJY29uIC8+XG4gICAgICAgICAgICAgICAgPC9TQ0NBSU1ITGF5b3V0TWVudVJvd0ljb24+XG4gICAgICAgICAgICAgICAge3QoJ2xheW91dEZsb2F0aW5nJyl9XG4gICAgICAgICAgICAgIDwvU0NDQUlNSExheW91dE1lbnVSb3c+XG4gICAgICAgICAgICA8L1NDQ0FJTUhMYXlvdXRNZW51UGFuZWw+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvU0NDQUlNSExheW91dE1lbnVBbmNob3I+XG4gICAgICAgIHtoYW5kbGVNaW5pbWl6ZSA/IChcbiAgICAgICAgICA8SWNvbkJ1dHRvbiBoYW5kbGVDbGljaz17aGFuZGxlTWluaW1pemV9IHRvb2x0aXA9e3QoJ2dsb2JhbHMubWluaW1pemUnKX0gdG9vbHRpcFpJbmRleD17dG9vbHRpcFpJbmRleH0+XG4gICAgICAgICAgICA8U0NDQUlNSE1pbmltaXplSWNvbj5cbiAgICAgICAgICAgICAgPFN0YXR1cyB3aWR0aD17MjR9IGhlaWdodD17MjR9IC8+XG4gICAgICAgICAgICA8L1NDQ0FJTUhNaW5pbWl6ZUljb24+XG4gICAgICAgICAgPC9JY29uQnV0dG9uPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvU0NDQUlNSFdyYXBwZXJCdXR0b24+XG4gICAgPC9TQ0NBSU1ITW9kYWw+XG4gIClc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
459
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJ1c2VSZWYiLCJ1c2VTdGF0ZSIsInVzZUNhbGxiYWNrIiwidXNlTWVtbyIsIlRvb2x0aXAiLCJTdGF0dXMiLCJDaGV2cm9uRG93biIsIkNoZXZyb25MZWZ0IiwiUGx1cyIsInVzZVRyYW5zbGF0aW9uIiwiU0VDVElPTlMiLCJ1c2VHbG9iYWxDb250ZXh0IiwidXNlUmVzaXplTGlzdGVuZXIiLCJJY29uQnV0dG9uIiwiTUFJQUljb24iLCJNYWlhQ2hhdExheW91dE1lbnVJY29uIiwiTWFpYUNoYXRMYXlvdXRTaWRlYmFySWNvbiIsIk1haWFDaGF0TGF5b3V0RnVsbHNjcmVlbkljb24iLCJNYWlhQ2hhdExheW91dEZsb2F0aW5nSWNvbiIsIkNoYXRBSUFnZW50T3B0aW9uIiwiU0NDQUlNSE1vZGFsIiwiU0NDQUlNSFNlbGVjdGVkQWdlbnQiLCJTQ0NBSU1IU2VsZWN0ZWRBZ2VudFRleHQiLCJTQ0NBSU1IV3JhcHBlciIsIlNDQ0FJTUhXcmFwcGVyQnV0dG9uIiwiU0NDQUlNSFdyYXBwZXJJY29uIiwiU0NDQUlNSFdyYXBwZXJNb2RhbCIsIlNDQ0FJTUhXcmFwcGVyTW9kYWxDb250ZW50IiwiU0NDQUlNSFdyYXBwZXJNb2RhbENvbnRlbnRUaXRsZSIsIlNDQ0FJTUhBZGRBZ2VudCIsIlNDQ0FJTUhDcmVhdGVBZ2VudEJ1dHRvbiIsIlNDQ0FJTUhDcmVhdGVBZ2VudEJ1dHRvblRleHQiLCJTQ0NBSU1IRGl2aWRlciIsIlNDQ0FJTUhBZ2VudHNMaXN0IiwiU0NDQUlNSExvYWRlcldyYXBwZXIiLCJTQ0NBSU1IUGx1c0ljb25XcmFwcGVyIiwiU0NDQUlNSExheW91dE1lbnVBbmNob3IiLCJTQ0NBSU1ITGF5b3V0TWVudVBhbmVsIiwiU0NDQUlNSExheW91dE1lbnVSb3ciLCJTQ0NBSU1ITGF5b3V0TWVudVJvd0ljb24iLCJTQ0NBSU1IQmFja0J1dHRvbiIsIlNDQ0FJTUhNaW5pbWl6ZUljb24iLCJFVkVOVFMiLCJ1c2VFdmVudCIsInVzZVVzZXIiLCJpc01haWFDbG9uZUFnZW50c1JvbGVCbG9ja2VkIiwiTG9hZGVyIiwidXNlTWFpYVRhc2tQYW5lbFpJbmRleCIsInVzZVVzYWdlU3RvcmUiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiRnJhZ21lbnQiLCJfRnJhZ21lbnQiLCJDaGF0QUlNb2RhbEhlYWRlciIsIl9yZWYiLCJfdXNlciRwZXJtaXNzaW9ucyIsIl9sb2NhbEFnZW50cyRuYW1lIiwibGF5b3V0TW9kZSIsIm9uTGF5b3V0TW9kZUNoYW5nZSIsIl9yZWYkZHJhZ2dhYmxlIiwiZHJhZ2dhYmxlIiwib25EcmFnU3RhcnQiLCJvbkRyYWdNb3ZlIiwib25EcmFnRW5kIiwiaGFuZGxlTWluaW1pemUiLCJfcmVmJGFnZW50cyIsImFnZW50cyIsIl9yZWYkaGFzRXJyb3IiLCJoYXNFcnJvciIsIl9yZWYkbG9hZGluZyIsImxvYWRpbmciLCJfcmVmJGxvYWRpbmdNb3JlIiwibG9hZGluZ01vcmUiLCJfcmVmJGhhc01vcmUiLCJoYXNNb3JlIiwiaGFuZGxlUmVzZXRDaGF0Iiwib25BZ2VudFVwZGF0ZSIsImxvYWRNb3JlQWdlbnRzIiwic29ydEFnZW50c0xpc3QiLCJfcmVmJGlzTXlBZ2VudHNTZWN0aW8iLCJpc015QWdlbnRzU2VjdGlvbiIsIl9yZWYkaXNNYWlha2VyU2VjdGlvbiIsImlzTWFpYWtlclNlY3Rpb24iLCJfcmVmJGhpZGVBZ2VudFNlbGVjdG8iLCJoaWRlQWdlbnRTZWxlY3RvciIsIm9uQWdlbnRTZWxlY3RlZCIsIl9yZWYkc2hvd0JhY2tCdXR0b24iLCJzaG93QmFja0J1dHRvbiIsIl9yZWYkb25CYWNrIiwib25CYWNrIiwiX3VzZVRyYW5zbGF0aW9uIiwiYWJtQWdlbnQiLCJjaGF0QUkiLCJ0IiwidXNlciIsImFtcGxpdHVkRXZlbnQiLCJfdXNlR2xvYmFsQ29udGV4dCIsInNlbGVjdGVkQWdlbnQiLCJhZ2VudCIsInNlbGVjdEFnZW50Iiwic2V0UHJvamVjdCIsInNldENsaWVudCIsInNldFRhc2siLCJzZWN0aW9uIiwidG9vbHRpcFpJbmRleCIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsImlzRXhwYW5kZWQiLCJzZXRJc0V4cGFuZGVkIiwidGV4dFJlZkFnZW50IiwiZHJvcGRvd25SZWYiLCJsYXlvdXRNZW51UmVmIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJsYXlvdXRNZW51T3BlbiIsInNldExheW91dE1lbnVPcGVuIiwiX3VzZVJlc2l6ZUxpc3RlbmVyIiwibmFtZSIsInNob3dUb29sdGlwQWdlbnQiLCJzaG93VG9vbHRpcCIsImFnZW50c1JlZiIsImlzTWFpYUFnZW50IiwiYWdlbnRJdGVtIiwidHlwZSIsImFnZW50c0ZvclNlbGVjdG9yIiwiZmlsdGVyIiwiZW50aXR5IiwidXNhZ2VCbG9ja2VkIiwic3RhdGUiLCJibG9ja2VkIiwidXNlclBlcm1pc3Npb25zIiwicGVybWlzc2lvbnMiLCJhaV9hZ2VudHMiLCJjYW5DcmVhdGVBZ2VudCIsImNyZWF0ZSIsIndpbmRvdyIsIk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFMiLCJzaG93SGVhZGVyQ3JlYXRlQWdlbnRCdXR0b24iLCJoYW5kbGVPcGVuQ3JlYXRlQWdlbnRNb2RhbCIsIm9wZW5Nb2RhbCIsIm9wdGlvbiIsImRvY3VtZW50IiwiZGlzcGF0Y2hFdmVudCIsIkN1c3RvbUV2ZW50IiwiZGV0YWlsIiwiYWdlbnRWYWx1ZXMiLCJ2YWx1ZXMiLCJpc0VkaXRpbmciLCJpc09wZW4iLCJ1bmRlZmluZWQiLCJoYW5kbGVTY3JvbGwiLCJjdXJyZW50IiwiX2FnZW50c1JlZiRjdXJyZW50Iiwic2Nyb2xsVG9wIiwic2Nyb2xsSGVpZ2h0IiwiY2xpZW50SGVpZ2h0IiwiZGlzdGFuY2VGcm9tQm90dG9tIiwidGltZW91dElkIiwic2V0VGltZW91dCIsInNjcm9sbEVsZW1lbnQiLCJhZGRFdmVudExpc3RlbmVyIiwiY2xlYXJUaW1lb3V0IiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImxvY2FsQWdlbnRzIiwiX3JlZjIiLCJpc19kZWxldGVkIiwiaGFzX25vdF9wZXJtaXNzaW9ucyIsImhhc19ub3RfYWNjZXNzIiwiaXNfZnJvbV9jb252ZXJzYXRpb24iLCJpc19sZWdhY3lfY29udGV4dCIsImZyb21MaXN0IiwiZmluZCIsImlkIiwic2VsZWN0b3JJY29uIiwiZW1vamkiLCJzZWxlY3RvckxhYmVsIiwibnMiLCJoYW5kbGVTZWxlY3RBZ2VudCIsImFpQ2hhdEFnZW50U2VsZWN0IiwiYWdlbnRfdHlwZSIsIm5lZWRzRW50aXR5IiwiaGFuZGxlRXhwYW5kTW9kYWwiLCJhaUNoYXRPcGVuQWdlbnRTZWxlY3QiLCJwcmV2IiwiaGFuZGxlQ2xpY2tPdXRzaWRlIiwiZXZlbnQiLCJ0YXJnZXQiLCJjb250YWlucyIsImhhbmRsZVBpY2tMYXlvdXQiLCJtb2RlIiwicHJvamVjdFJlc3VtZUV4cGFuZCIsImV4cGFuZGVkIiwiYWlDaGF0U2VsZWN0Vmlld09wdGlvbnMiLCJjbG9uZUFnZW50c1JvbGVCbG9ja2VkIiwicmVuZGVyTW9kYWwiLCJyZWYiLCJvbkNsaWNrIiwibGVuZ3RoIiwiY2hpbGRyZW4iLCJfb2JqZWN0U3ByZWFkIiwidGl0bGUiLCJzdHlsZSIsImRpc3BsYXkiLCJhbGlnbkl0ZW1zIiwiZ2FwIiwicGxhY2VtZW50IiwiekluZGV4IiwiaXNBZ2VudERlbGV0ZWQiLCJ3aWR0aCIsImhlaWdodCIsImNvbG9yIiwiTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTIiwibWFpYUFnZW50cyIsIm1hcCIsIm1haWFBZ2VudCIsImluZGV4IiwiaXNTZWxlY3RlZCIsImlzTWFpYSIsIm9uRmF2b3JpdGVUb2dnbGUiLCJjb25jYXQiLCJzb21lIiwiY29tcGFueSIsImFnZW50c0NvdW50Iiwic2l6ZSIsIiRkaXNhYmxlZCIsInJvbGUiLCJzaG91bGRSZW5kZXJTZWxlY3RvciIsIiRoYXNFcnJvciIsIiRsb2FkaW5nIiwiJGhhc0FnZW50cyIsIm9uUG9pbnRlckRvd24iLCJvblBvaW50ZXJNb3ZlIiwib25Qb2ludGVyVXAiLCJvblBvaW50ZXJDYW5jZWwiLCJvbkxvc3RQb2ludGVyQ2FwdHVyZSIsImN1cnNvciIsInRvdWNoQWN0aW9uIiwiZGlzYWJsZWQiLCJidXR0b25JZCIsImhhbmRsZUNsaWNrIiwiYWlDaGF0T3BlblZpZXdPcHRpb25zIiwidG9vbHRpcCIsImRpc2FibGVUb29sdGlwIiwiJGFjdGl2ZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0QUlNb2RhbC9jb21wb25lbnRzL0NoYXRBaU1vZGFsSGVhZGVyL0NoYXRBaU1vZGFsSGVhZGVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvaW5kZW50ICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1uZXN0ZWQtdGVybmFyeSAqL1xuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlLCB1c2VDYWxsYmFjaywgdXNlTWVtbywgUG9pbnRlckV2ZW50IGFzIFJlYWN0UG9pbnRlckV2ZW50IH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBUb29sdGlwIH0gZnJvbSAnQHByb2plY3Rjb3IvdG9vbHRpcHYyL2xpYi9jb21wb25lbnRzL1Rvb2x0aXAnXG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9TdGF0dXMnXG5pbXBvcnQgeyBDaGV2cm9uRG93biB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL0NoZXZyb25Eb3duJ1xuaW1wb3J0IHsgQ2hldnJvbkxlZnQgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9DaGV2cm9uTGVmdCdcbmltcG9ydCB7IFBsdXMgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9QbHVzJ1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHsgU0VDVElPTlMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9jb25zdGFudHMvY29uZmlnJ1xuaW1wb3J0IHsgdXNlR2xvYmFsQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2NvbnRleHQvZ2xvYmFsLWNvbnRleHQnXG5pbXBvcnQgeyB1c2VSZXNpemVMaXN0ZW5lciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2hvb2tzL3VzZVJlc2l6ZSdcbmltcG9ydCB7IEljb25CdXR0b24gfSBmcm9tICcuLi8uLi8uLi8uLi9hdG9tcy9JY29uQnV0dG9uJ1xuaW1wb3J0IHsgTUFJQUljb24sIE1haWFDaGF0TGF5b3V0TWVudUljb24gfSBmcm9tICcuLi8uLi8uLi8uLi9hdG9tcy9pY29ucydcbmltcG9ydCB7IE1haWFDaGF0TGF5b3V0U2lkZWJhckljb24gfSBmcm9tICcuLi8uLi8uLi8uLi9hdG9tcy9pY29ucy9NYWlhQ2hhdExheW91dFNpZGViYXJJY29uJ1xuaW1wb3J0IHsgTWFpYUNoYXRMYXlvdXRGdWxsc2NyZWVuSWNvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2F0b21zL2ljb25zL01haWFDaGF0TGF5b3V0RnVsbHNjcmVlbkljb24nXG5pbXBvcnQgeyBNYWlhQ2hhdExheW91dEZsb2F0aW5nSWNvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2F0b21zL2ljb25zL01haWFDaGF0TGF5b3V0RmxvYXRpbmdJY29uJ1xuaW1wb3J0IHsgQ2hhdEFJQWdlbnRPcHRpb24gfSBmcm9tICcuLi9DaGF0QWlBZ2VudE9wdGlvbnMvQ2hhdEFpQWdlbnRPcHRpb25zJ1xuaW1wb3J0IHtcbiAgU0NDQUlNSE1vZGFsLFxuICBTQ0NBSU1IU2VsZWN0ZWRBZ2VudCxcbiAgU0NDQUlNSFNlbGVjdGVkQWdlbnRUZXh0LFxuICBTQ0NBSU1IV3JhcHBlcixcbiAgU0NDQUlNSFdyYXBwZXJCdXR0b24sXG4gIFNDQ0FJTUhXcmFwcGVySWNvbixcbiAgU0NDQUlNSFdyYXBwZXJNb2RhbCxcbiAgU0NDQUlNSFdyYXBwZXJNb2RhbENvbnRlbnQsXG4gIFNDQ0FJTUhXcmFwcGVyTW9kYWxDb250ZW50VGl0bGUsXG4gIFNDQ0FJTUhBZGRBZ2VudCxcbiAgU0NDQUlNSENyZWF0ZUFnZW50QnV0dG9uLFxuICBTQ0NBSU1IQ3JlYXRlQWdlbnRCdXR0b25UZXh0LFxuICBTQ0NBSU1IRGl2aWRlcixcbiAgU0NDQUlNSEFnZW50c0xpc3QsXG4gIFNDQ0FJTUhMb2FkZXJXcmFwcGVyLFxuICBTQ0NBSU1IUGx1c0ljb25XcmFwcGVyLFxuICBTQ0NBSU1ITGF5b3V0TWVudUFuY2hvcixcbiAgU0NDQUlNSExheW91dE1lbnVQYW5lbCxcbiAgU0NDQUlNSExheW91dE1lbnVSb3csXG4gIFNDQ0FJTUhMYXlvdXRNZW51Um93SWNvbixcbiAgU0NDQUlNSEJhY2tCdXR0b24sXG4gIFNDQ0FJTUhNaW5pbWl6ZUljb24sXG59IGZyb20gJy4vQ2hhdEFpTW9kYWxIZWFkZXIuc3R5bGVzJ1xuaW1wb3J0IHR5cGUgeyBNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZSB9IGZyb20gJy4uLy4uL2xheW91dCdcbmltcG9ydCB7IEVWRU5UUywgdXNlRXZlbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9ob29rcy91c2VFdmVudCdcbmltcG9ydCB7IHVzZVVzZXIgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9jb250ZXh0L2Nvci11c2VyJ1xuaW1wb3J0IHsgaXNNYWlhQ2xvbmVBZ2VudHNSb2xlQmxvY2tlZCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2NvbnN0YW50cy9tYWlhVGFza1BhbmVsQWNjZXNzJ1xuaW1wb3J0IHsgQWdlbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi90eXBlcy9hZ2VudCdcbmltcG9ydCB7IExvYWRlciB9IGZyb20gJy4uLy4uLy4uLy4uL2F0b21zL0xvYWRlcidcbmltcG9ydCB7IHVzZU1haWFUYXNrUGFuZWxaSW5kZXggfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9ob29rcy91c2VNYWlhVGFza1BhbmVsWkluZGV4J1xuaW1wb3J0IHsgdXNlVXNhZ2VTdG9yZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3N0b3JlL3VzZVVzYWdlU3RvcmUnXG5cbmV4cG9ydCBjb25zdCBDaGF0QUlNb2RhbEhlYWRlciA9ICh7XG4gIGxheW91dE1vZGUsXG4gIG9uTGF5b3V0TW9kZUNoYW5nZSxcbiAgZHJhZ2dhYmxlID0gZmFsc2UsXG4gIG9uRHJhZ1N0YXJ0LFxuICBvbkRyYWdNb3ZlLFxuICBvbkRyYWdFbmQsXG4gIGhhbmRsZU1pbmltaXplLFxuICBhZ2VudHMgPSBbXSxcbiAgaGFzRXJyb3IgPSBmYWxzZSxcbiAgbG9hZGluZyA9IGZhbHNlLFxuICBsb2FkaW5nTW9yZSA9IGZhbHNlLFxuICBoYXNNb3JlID0gZmFsc2UsXG4gIGhhbmRsZVJlc2V0Q2hhdCxcbiAgb25BZ2VudFVwZGF0ZSxcbiAgbG9hZE1vcmVBZ2VudHMsXG4gIHNvcnRBZ2VudHNMaXN0LFxuICBpc015QWdlbnRzU2VjdGlvbiA9IGZhbHNlLFxuICBpc01haWFrZXJTZWN0aW9uID0gZmFsc2UsXG4gIGhpZGVBZ2VudFNlbGVjdG9yID0gZmFsc2UsXG4gIG9uQWdlbnRTZWxlY3RlZCxcbiAgc2hvd0JhY2tCdXR0b24gPSBmYWxzZSxcbiAgb25CYWNrID0gKCkgPT4gbnVsbCxcbn06IHtcbiAgbGF5b3V0TW9kZTogTWFpYUNoYXRNb2RhbExheW91dE1vZGVcbiAgb25MYXlvdXRNb2RlQ2hhbmdlOiAobW9kZTogTWFpYUNoYXRNb2RhbExheW91dE1vZGUpID0+IHZvaWRcbiAgZXhwYW5kZWQ6IGJvb2xlYW5cbiAgZHJhZ2dhYmxlPzogYm9vbGVhblxuICBvbkRyYWdTdGFydD86IChldmVudDogUmVhY3RQb2ludGVyRXZlbnQ8SFRNTERpdkVsZW1lbnQ+KSA9PiB2b2lkXG4gIG9uRHJhZ01vdmU/OiAoZXZlbnQ6IFJlYWN0UG9pbnRlckV2ZW50PEhUTUxEaXZFbGVtZW50PikgPT4gdm9pZFxuICBvbkRyYWdFbmQ/OiAoZXZlbnQ6IFJlYWN0UG9pbnRlckV2ZW50PEhUTUxEaXZFbGVtZW50PikgPT4gdm9pZFxuICBoYW5kbGVNaW5pbWl6ZT86ICgpID0+IHZvaWRcbiAgYWdlbnRzOiBBZ2VudFtdXG4gIGhhc0Vycm9yOiBib29sZWFuXG4gIGxvYWRpbmc6IGJvb2xlYW5cbiAgbG9hZGluZ01vcmU/OiBib29sZWFuXG4gIGhhc01vcmU/OiBib29sZWFuXG4gIGhhbmRsZVJlc2V0Q2hhdDogKCkgPT4gdm9pZFxuICBvbkFnZW50VXBkYXRlPzogKHVwZGF0ZWRBZ2VudDogQWdlbnQpID0+IHZvaWRcbiAgbG9hZE1vcmVBZ2VudHM/OiAoKSA9PiB2b2lkXG4gIHNvcnRBZ2VudHNMaXN0PzogKCkgPT4gdm9pZFxuICAvKiogU2VjY2nDs24gXCJNaXMgYWdlbnRlc1wiOiBzaSBubyBoYXkgYWdlbnRlIHNldGVhZG8sIGVsIHNlbGVjdG9yIG11ZXN0cmEgZWwgaWNvbm8gZGUgTUFJQSB5IGVsIG5vbWJyZSBkZSBsYSBzZWNjacOzbiAqL1xuICBpc015QWdlbnRzU2VjdGlvbj86IGJvb2xlYW5cbiAgLyoqIE9jdWx0YSBlbCBjaGlwIGRlIG1vZGVsbyBMTE0gKHAuIGVqLiBlbiBNaXMgYWdlbnRlcyAvIE1pcyBza2lsbHMpICovXG4gIGhpZGVBZ2VudFNlbGVjdG9yPzogYm9vbGVhblxuICAvKiogU2VjY2nDs24gXCJDcmVhZG9yIGRlIGFnZW50ZXNcIiAoTWFpYWtlcik6IGhhYmlsaXRhIGVsIGJvdMOzbiBcIkNyZWFyIGFnZW50ZVwiIGRlbCBoZWFkZXIgKi9cbiAgaXNNYWlha2VyU2VjdGlvbj86IGJvb2xlYW5cbiAgLyoqXG4gICAqIFNlIGludm9jYSBkZXNwdcOpcyBkZWwgcmVzZXQgY3VhbmRvIGVsIGFnZW50ZSBzZWxlY2Npb25hZG8gTk8gcmVxdWllcmUgc2VsZWNjacOzblxuICAgKiBkZSBlbnRpdHkgKGN1c3RvbSBvIGNsb25lK2dsb2JhbCkuIFBlcm1pdGUgcmVzb2x2ZXIgYEdFVCAvdjIvc2Vzc2lvbnMvYWdlbnQve2lkfWBcbiAgICogeSBuYXZlZ2FyIGEgdW5hIGNvbnZlcnNhY2nDs24gZXhpc3RlbnRlIHNpIGxhIGhheS5cbiAgICovXG4gIG9uQWdlbnRTZWxlY3RlZD86IChhZ2VudDogQWdlbnQpID0+IHZvaWQgfCBQcm9taXNlPHVua25vd24+XG4gIHNob3dCYWNrQnV0dG9uPzogYm9vbGVhblxuICBvbkJhY2s/OiAoKSA9PiB2b2lkXG59KSA9PiB7XG4gIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oW1NFQ1RJT05TLmFibUFnZW50LCBTRUNUSU9OUy5jaGF0QUldKVxuICBjb25zdCB1c2VyID0gdXNlVXNlcigpXG4gIGNvbnN0IGFtcGxpdHVkRXZlbnQgPSB1c2VFdmVudCgpXG4gIGNvbnN0IHsgYWdlbnQ6IHNlbGVjdGVkQWdlbnQsIHNlbGVjdEFnZW50LCBzZXRQcm9qZWN0LCBzZXRDbGllbnQsIHNldFRhc2ssIHNlY3Rpb24gfSA9IHVzZUdsb2JhbENvbnRleHQoKVxuICAvLyBFbiBzZWN0aW9uICd0YXNrJyBlbCBtb2RhbCBkZSBNYWlhIHNlIGVsZXZhIHBvciBlbmNpbWEgZGVsIHRhc2sgcGFuZWwgKHotaW5kZXggOTgwMDAwMSkuXG4gIC8vIExvcyB0b29sdGlwcyBzZSBtb250YW4gZW4gcG9ydGFsIGNvbiB6LWluZGV4IDE1MDAgcG9yIGRlZmVjdG8sIGFzw60gcXVlIHF1ZWRhcsOtYW4gZGV0csOhcy5cbiAgLy8gU3ViaW1vcyBzdSB6LWluZGV4IHPDs2xvIGVuIGVzdGUgY2FzbyBwYXJhIHF1ZSBzZSB2ZWFuIHBvciBlbmNpbWEgZGVsIG1vZGFsLlxuICBjb25zdCB0b29sdGlwWkluZGV4ID0gdXNlTWFpYVRhc2tQYW5lbFpJbmRleCgxNTAwLCAnb3ZlcmxheScpXG4gIGNvbnN0IFtpc0V4cGFuZGVkLCBzZXRJc0V4cGFuZGVkXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCB0ZXh0UmVmQWdlbnQgPSB1c2VSZWY8SFRNTFNwYW5FbGVtZW50PihudWxsKVxuICBjb25zdCBkcm9wZG93blJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbClcbiAgY29uc3QgbGF5b3V0TWVudVJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbClcbiAgY29uc3QgW2xheW91dE1lbnVPcGVuLCBzZXRMYXlvdXRNZW51T3Blbl0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgeyBzaG93VG9vbHRpcDogc2hvd1Rvb2x0aXBBZ2VudCB9ID0gdXNlUmVzaXplTGlzdGVuZXIodGV4dFJlZkFnZW50LCBbc2VsZWN0ZWRBZ2VudD8ubmFtZV0pXG4gIGNvbnN0IGFnZW50c1JlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbClcblxuICBjb25zdCBpc01haWFBZ2VudCA9IHVzZUNhbGxiYWNrKChhZ2VudEl0ZW06IEFnZW50KSA9PiBhZ2VudEl0ZW0udHlwZSA9PT0gJ29yY2hlc3RyYXRvcicsIFtdKVxuICBjb25zdCBhZ2VudHNGb3JTZWxlY3RvciA9IHVzZU1lbW8oXG4gICAgKCkgPT4gYWdlbnRzLmZpbHRlcihhZ2VudEl0ZW0gPT4gaXNNYWlhQWdlbnQoYWdlbnRJdGVtKSB8fCBhZ2VudEl0ZW0uZW50aXR5ICE9PSAnZ2xvYmFsJyksXG4gICAgW2FnZW50cywgaXNNYWlhQWdlbnRdXG4gIClcblxuICBjb25zdCB1c2FnZUJsb2NrZWQgPSB1c2VVc2FnZVN0b3JlKHN0YXRlID0+IHN0YXRlLmJsb2NrZWQpXG4gIGNvbnN0IHVzZXJQZXJtaXNzaW9ucyA9IHVzZXI/LnBlcm1pc3Npb25zPy5haV9hZ2VudHNcbiAgY29uc3QgY2FuQ3JlYXRlQWdlbnQgPSAhIXVzZXJQZXJtaXNzaW9ucz8uY3JlYXRlICYmICEhd2luZG93Lk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFNcbiAgY29uc3Qgc2hvd0hlYWRlckNyZWF0ZUFnZW50QnV0dG9uID0gY2FuQ3JlYXRlQWdlbnQgJiYgKGlzTXlBZ2VudHNTZWN0aW9uIHx8IGlzTWFpYWtlclNlY3Rpb24pXG5cbiAgY29uc3QgaGFuZGxlT3BlbkNyZWF0ZUFnZW50TW9kYWwgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKHVzYWdlQmxvY2tlZCkgcmV0dXJuXG4gICAgYW1wbGl0dWRFdmVudChFVkVOVFMub3Blbk1vZGFsLCB7IG9wdGlvbjogJ2NyZWF0ZV9hZ2VudCcgfSlcbiAgICBkb2N1bWVudC5kaXNwYXRjaEV2ZW50KFxuICAgICAgbmV3IEN1c3RvbUV2ZW50KCdhYm0tYWdlbnQtbW9kYWwtc2V0LXZhbHVlcycsIHtcbiAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgYWdlbnRWYWx1ZXM6IHtcbiAgICAgICAgICAgIHZhbHVlczoge1xuICAgICAgICAgICAgICBpc0VkaXRpbmc6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGlzT3BlbjogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSlcbiAgICApXG4gIH0sIFthbXBsaXR1ZEV2ZW50LCB1c2FnZUJsb2NrZWRdKVxuXG4gIC8vIE1hbmVqYXIgc2Nyb2xsIGluZmluaXRvIHBhcmEgY2FyZ2FyIG3DoXMgYWdlbnRzXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLy8gU29sbyBjdWFuZG8gZWwgZHJvcGRvd24gZXN0w6kgYWJpZXJ0b1xuICAgIGlmICghaXNFeHBhbmRlZCkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgIH1cblxuICAgIGNvbnN0IGhhbmRsZVNjcm9sbCA9ICgpID0+IHtcbiAgICAgIGlmICghYWdlbnRzUmVmLmN1cnJlbnQgfHwgIWxvYWRNb3JlQWdlbnRzIHx8ICFoYXNNb3JlIHx8IGxvYWRpbmdNb3JlKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBjb25zdCB7IHNjcm9sbFRvcCwgc2Nyb2xsSGVpZ2h0LCBjbGllbnRIZWlnaHQgfSA9IGFnZW50c1JlZi5jdXJyZW50XG4gICAgICBjb25zdCBkaXN0YW5jZUZyb21Cb3R0b20gPSBzY3JvbGxIZWlnaHQgLSBzY3JvbGxUb3AgLSBjbGllbnRIZWlnaHRcblxuICAgICAgLy8gQ2FyZ2FyIG3DoXMgKDUwcHggYW50ZXMpXG4gICAgICBpZiAoZGlzdGFuY2VGcm9tQm90dG9tIDwgNTApIHtcbiAgICAgICAgbG9hZE1vcmVBZ2VudHMoKVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGRlbGF5IHBhcmEgYXNlZ3VyYXIgcXVlIGVsIERPTSBlc3TDqSByZW5kZXJpemFkb1xuICAgIGNvbnN0IHRpbWVvdXRJZCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgY29uc3Qgc2Nyb2xsRWxlbWVudCA9IGFnZW50c1JlZi5jdXJyZW50XG4gICAgICBpZiAoc2Nyb2xsRWxlbWVudCkge1xuICAgICAgICBzY3JvbGxFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGhhbmRsZVNjcm9sbClcbiAgICAgIH1cbiAgICB9LCAxMDApXG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJZClcbiAgICAgIGNvbnN0IHNjcm9sbEVsZW1lbnQgPSBhZ2VudHNSZWYuY3VycmVudFxuICAgICAgaWYgKHNjcm9sbEVsZW1lbnQpIHtcbiAgICAgICAgc2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBoYW5kbGVTY3JvbGwpXG4gICAgICB9XG4gICAgfVxuICB9LCBbaXNFeHBhbmRlZCwgbG9hZE1vcmVBZ2VudHMsIGhhc01vcmUsIGxvYWRpbmdNb3JlXSlcblxuICBjb25zdCBsb2NhbEFnZW50cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIHNlbGVjdGVkQWdlbnQ/LmlzX2RlbGV0ZWQgfHxcbiAgICAgIHNlbGVjdGVkQWdlbnQ/Lmhhc19ub3RfcGVybWlzc2lvbnMgfHxcbiAgICAgIHNlbGVjdGVkQWdlbnQ/Lmhhc19ub3RfYWNjZXNzIHx8XG4gICAgICBzZWxlY3RlZEFnZW50Py5pc19mcm9tX2NvbnZlcnNhdGlvbiB8fFxuICAgICAgc2VsZWN0ZWRBZ2VudD8uaXNfbGVnYWN5X2NvbnRleHRcbiAgICApIHtcbiAgICAgIHJldHVybiBzZWxlY3RlZEFnZW50XG4gICAgfVxuICAgIGNvbnN0IGZyb21MaXN0ID0gYWdlbnRzLmZpbmQoXG4gICAgICBhZ2VudCA9PlxuICAgICAgICAhYWdlbnQuaXNfZGVsZXRlZCAmJiAhYWdlbnQuaGFzX25vdF9wZXJtaXNzaW9ucyAmJiAhYWdlbnQuaGFzX25vdF9hY2Nlc3MgJiYgYWdlbnQuaWQgPT09IHNlbGVjdGVkQWdlbnQ/LmlkXG4gICAgKVxuICAgIC8vIEFnZW50ZSBoaWRyYXRhZG8gcG9yIEdFVCAocC4gZWouIG51ZXZvIGNoYXQgdHJhcyBjcmVhdGVfYWdlbnQpIHB1ZWRlIG5vIGVzdGFyIGHDum4gZW4gbGEgbGlzdGEgcGFnaW5hZGFcbiAgICByZXR1cm4gZnJvbUxpc3QgPz8gc2VsZWN0ZWRBZ2VudCA/PyBudWxsXG4gIH0sIFthZ2VudHMsIHNlbGVjdGVkQWdlbnRdKVxuXG4gIC8vIEVuICdNaXMgYWdlbnRlcycgc2luIGFnZW50ZSBzZXRlYWRvLCBlbCBzZWxlY3RvciBtdWVzdHJhIGVsIGljb25vIGRlIE1BSUEgeSBlbCBub21icmUgZGUgbGEgc2VjY2nDs25cbiAgLy8gZW4gbHVnYXIgZGVsIGFnZW50ZSwgcGFyYSBxdWUgZWwgdXN1YXJpbyBwdWVkYSBhYnJpciBlbCBkcm9wZG93biB5IGVsZWdpciB1bm8uXG4gIGNvbnN0IHNlbGVjdG9ySWNvbiA9XG4gICAgbG9jYWxBZ2VudHM/LnR5cGUgPT09ICdjdXN0b20nICYmICFsb2NhbEFnZW50cz8uaXNfbGVnYWN5X2NvbnRleHQgPyBsb2NhbEFnZW50cz8uZW1vamkgOiA8TUFJQUljb24gLz5cbiAgY29uc3Qgc2VsZWN0b3JMYWJlbCA9XG4gICAgbG9jYWxBZ2VudHM/Lm5hbWUgPz8gKGlzTXlBZ2VudHNTZWN0aW9uID8gdCgnbWFya2V0cGxhY2UubXlBZ2VudHNUaXRsZScsIHsgbnM6IFNFQ1RJT05TLmNoYXRBSSB9KSA6ICcnKVxuXG4gIGNvbnN0IGhhbmRsZVNlbGVjdEFnZW50ID0gdXNlQ2FsbGJhY2soXG4gICAgKGFnZW50OiBBZ2VudCkgPT4ge1xuICAgICAgc2VsZWN0QWdlbnQoYWdlbnQpXG4gICAgICBhbXBsaXR1ZEV2ZW50KEVWRU5UUy5haUNoYXRBZ2VudFNlbGVjdCwge1xuICAgICAgICBhZ2VudF90eXBlOiBhZ2VudD8udHlwZSxcbiAgICAgIH0pXG4gICAgICBzZXRJc0V4cGFuZGVkKGZhbHNlKVxuICAgICAgc2V0UHJvamVjdChudWxsKVxuICAgICAgc2V0Q2xpZW50Py4obnVsbClcbiAgICAgIHNldFRhc2sobnVsbClcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBoYW5kbGVSZXNldENoYXQoKVxuICAgICAgICAvLyBTaSBlbCBhZ2VudGUgbm8gZGVwZW5kZSBkZSB1bmEgZW50aXR5IChjdXN0b20gbyBjbG9uZStnbG9iYWwpIHlhIHBvZGVtb3NcbiAgICAgICAgLy8gcmVzb2x2ZXIgc2kgZXhpc3RlIHVuYSBzZXNpw7NuIHByZXZpYSB5LCBlbiBlc2UgY2FzbywgbmF2ZWdhciBhIGVsbGEuXG4gICAgICAgIC8vIFBhcmEgY2xvbmUrcHJvamVjdHxjbGllbnQsIGxhIHJlc29sdWNpw7NuIG9jdXJyZSBlbiBsb3Mgc2VsZWN0b3JzIGRlIGVudGl0eS5cbiAgICAgICAgY29uc3QgbmVlZHNFbnRpdHkgPSBhZ2VudD8udHlwZSA9PT0gJ2Nsb25lJyAmJiAoYWdlbnQ/LmVudGl0eSA9PT0gJ3Byb2plY3QnIHx8IGFnZW50Py5lbnRpdHkgPT09ICdjbGllbnQnKVxuICAgICAgICBpZiAoIW5lZWRzRW50aXR5KSB7XG4gICAgICAgICAgb25BZ2VudFNlbGVjdGVkPy4oYWdlbnQpXG4gICAgICAgIH1cbiAgICAgIH0sIDEwMClcbiAgICB9LFxuICAgIFtzZWxlY3RBZ2VudCwgYW1wbGl0dWRFdmVudCwgaGFuZGxlUmVzZXRDaGF0LCBzZXRQcm9qZWN0LCBzZXRDbGllbnQsIHNldFRhc2ssIG9uQWdlbnRTZWxlY3RlZF1cbiAgKVxuXG4gIGNvbnN0IGhhbmRsZUV4cGFuZE1vZGFsID0gKCkgPT4ge1xuICAgIGlmICghaXNFeHBhbmRlZCkge1xuICAgICAgYW1wbGl0dWRFdmVudChFVkVOVFMuYWlDaGF0T3BlbkFnZW50U2VsZWN0KVxuICAgICAgLy8gQ3VhbmRvIHNlIGFicmUgZWwgc2VsZWN0b3IsIG9yZGVuYXIgbG9zIGFnZW50ZXNcbiAgICAgIGlmIChzb3J0QWdlbnRzTGlzdCkge1xuICAgICAgICBzb3J0QWdlbnRzTGlzdCgpXG4gICAgICB9XG4gICAgfVxuICAgIHNldElzRXhwYW5kZWQocHJldiA9PiAhcHJldilcbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFpc0V4cGFuZGVkICYmICFsYXlvdXRNZW51T3Blbikge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgIH1cblxuICAgIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZSA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIE5vZGVcbiAgICAgIGlmIChpc0V4cGFuZGVkICYmIGRyb3Bkb3duUmVmLmN1cnJlbnQgJiYgIWRyb3Bkb3duUmVmLmN1cnJlbnQuY29udGFpbnModGFyZ2V0KSkge1xuICAgICAgICBzZXRJc0V4cGFuZGVkKGZhbHNlKVxuICAgICAgfVxuICAgICAgaWYgKGxheW91dE1lbnVPcGVuICYmIGxheW91dE1lbnVSZWYuY3VycmVudCAmJiAhbGF5b3V0TWVudVJlZi5jdXJyZW50LmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICAgICAgc2V0TGF5b3V0TWVudU9wZW4oZmFsc2UpXG4gICAgICB9XG4gICAgfVxuXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgaGFuZGxlQ2xpY2tPdXRzaWRlKVxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBoYW5kbGVDbGlja091dHNpZGUpXG4gICAgfVxuICB9LCBbaXNFeHBhbmRlZCwgbGF5b3V0TWVudU9wZW5dKVxuXG4gIGNvbnN0IGhhbmRsZVBpY2tMYXlvdXQgPSB1c2VDYWxsYmFjayhcbiAgICAobW9kZTogTWFpYUNoYXRNb2RhbExheW91dE1vZGUpID0+IHtcbiAgICAgIGFtcGxpdHVkRXZlbnQoRVZFTlRTLnByb2plY3RSZXN1bWVFeHBhbmQsIHtcbiAgICAgICAgZXhwYW5kZWQ6IG1vZGUgPT09ICdmdWxsc2NyZWVuJyxcbiAgICAgIH0pXG4gICAgICBhbXBsaXR1ZEV2ZW50KEVWRU5UUy5haUNoYXRTZWxlY3RWaWV3T3B0aW9ucywgeyBvcHRpb246IG1vZGUgfSlcbiAgICAgIG9uTGF5b3V0TW9kZUNoYW5nZShtb2RlKVxuICAgICAgc2V0TGF5b3V0TWVudU9wZW4oZmFsc2UpXG4gICAgfSxcbiAgICBbYW1wbGl0dWRFdmVudCwgb25MYXlvdXRNb2RlQ2hhbmdlXVxuICApXG5cbiAgY29uc3QgY2xvbmVBZ2VudHNSb2xlQmxvY2tlZCA9IGlzTWFpYUNsb25lQWdlbnRzUm9sZUJsb2NrZWQodXNlciwgc2VjdGlvbilcblxuICBjb25zdCByZW5kZXJNb2RhbCA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPFNDQ0FJTUhXcmFwcGVyXG4gICAgICAgIHJlZj17ZHJvcGRvd25SZWZ9XG4gICAgICAgIGRhdGEtbm8tZHJhZz1cInRydWVcIlxuICAgICAgICBvbkNsaWNrPXthZ2VudHMubGVuZ3RoID8gaGFuZGxlRXhwYW5kTW9kYWwgOiB1bmRlZmluZWR9XG4gICAgICAgIGlkPVwiY2hhdC1haS1tb2RhbC1oZWFkZXItd3JhcHBlclwiXG4gICAgICA+XG4gICAgICAgIDxTQ0NBSU1IU2VsZWN0ZWRBZ2VudD5cbiAgICAgICAgICA8VG9vbHRpcFxuICAgICAgICAgICAgdGl0bGU9e1xuICAgICAgICAgICAgICBzaG93VG9vbHRpcEFnZW50ID8gKFxuICAgICAgICAgICAgICAgIDxzcGFuIHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgYWxpZ25JdGVtczogJ2NlbnRlcicsIGdhcDogJzRweCcgfX0+XG4gICAgICAgICAgICAgICAgICB7bG9jYWxBZ2VudHM/LnR5cGUgPT09ICdjdXN0b20nICYmICFsb2NhbEFnZW50cz8uaXNfbGVnYWN5X2NvbnRleHQgPyAoXG4gICAgICAgICAgICAgICAgICAgIGxvY2FsQWdlbnRzPy5lbW9qaVxuICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgPE1BSUFJY29uIC8+XG4gICAgICAgICAgICAgICAgICApfXsnICd9XG4gICAgICAgICAgICAgICAgICB7bG9jYWxBZ2VudHM/Lm5hbWV9XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICcnXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHBsYWNlbWVudD17aXNFeHBhbmRlZCA/ICdsZWZ0JyA6ICd0b3AnfVxuICAgICAgICAgICAgey4uLih0b29sdGlwWkluZGV4ICE9IG51bGwgPyB7IHpJbmRleDogdG9vbHRpcFpJbmRleCB9IDoge30pfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxTQ0NBSU1IU2VsZWN0ZWRBZ2VudFRleHRcbiAgICAgICAgICAgICAgcmVmPXt0ZXh0UmVmQWdlbnR9XG4gICAgICAgICAgICAgIGlzQWdlbnREZWxldGVkPXtcbiAgICAgICAgICAgICAgICAhIXNlbGVjdGVkQWdlbnQ/LmlzX2RlbGV0ZWQgfHxcbiAgICAgICAgICAgICAgICAhIXNlbGVjdGVkQWdlbnQ/Lmhhc19ub3RfcGVybWlzc2lvbnMgfHxcbiAgICAgICAgICAgICAgICAhIXNlbGVjdGVkQWdlbnQ/Lmhhc19ub3RfYWNjZXNzIHx8XG4gICAgICAgICAgICAgICAgISFzZWxlY3RlZEFnZW50Py5pc19sZWdhY3lfY29udGV4dFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxzcGFuIHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgYWxpZ25JdGVtczogJ2NlbnRlcicsIGdhcDogJzRweCcgfX0+XG4gICAgICAgICAgICAgICAge3NlbGVjdG9ySWNvbn0ge3NlbGVjdG9yTGFiZWx9XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvU0NDQUlNSFNlbGVjdGVkQWdlbnRUZXh0PlxuICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgPC9TQ0NBSU1IU2VsZWN0ZWRBZ2VudD5cbiAgICAgICAgPFNDQ0FJTUhXcmFwcGVySWNvbj5cbiAgICAgICAgICA8Q2hldnJvbkRvd24gd2lkdGg9ezE0fSBoZWlnaHQ9ezE0fSBjb2xvcj1cIiMyMDIwMUZcIiAvPlxuICAgICAgICA8L1NDQ0FJTUhXcmFwcGVySWNvbj5cbiAgICAgICAge2lzRXhwYW5kZWQgJiYgKFxuICAgICAgICAgIDxTQ0NBSU1IV3JhcHBlck1vZGFsPlxuICAgICAgICAgICAgPFNDQ0FJTUhXcmFwcGVyTW9kYWxDb250ZW50PlxuICAgICAgICAgICAgICB7d2luZG93Lk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTUyAmJiAhY2xvbmVBZ2VudHNSb2xlQmxvY2tlZCAmJiAoXG4gICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgIHsoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtYWlhQWdlbnRzID0gYWdlbnRzRm9yU2VsZWN0b3IuZmlsdGVyKGlzTWFpYUFnZW50KVxuICAgICAgICAgICAgICAgICAgICBpZiAoIW1haWFBZ2VudHMubGVuZ3RoKSByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICB7bWFpYUFnZW50cy5tYXAoKG1haWFBZ2VudCwgaW5kZXgpID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPENoYXRBSUFnZW50T3B0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5PXtgYWdlbnQtJHttYWlhQWdlbnQuaWR9YH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZ2VudD17bWFpYUFnZW50fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4PXtpbmRleH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVTZWxlY3RBZ2VudD17aGFuZGxlU2VsZWN0QWdlbnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNTZWxlY3RlZD17c2VsZWN0ZWRBZ2VudD8uaWQgPT09IG1haWFBZ2VudC5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc01haWFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkZhdm9yaXRlVG9nZ2xlPXtvbkFnZW50VXBkYXRlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgIH0pKCl9XG4gICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIHthZ2VudHNGb3JTZWxlY3Rvci5zb21lKGFnZW50ID0+IGFnZW50LnR5cGUgPT09ICdjdXN0b20nKSAmJlxuICAgICAgICAgICAgICAgIHdpbmRvdy5NQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1NfTVVMVElfQUdFTlRTICYmIChcbiAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgIDxTQ0NBSU1IV3JhcHBlck1vZGFsQ29udGVudFRpdGxlPlxuICAgICAgICAgICAgICAgICAgICAgIHt0KCdhZ2VudHMnKX0gYnkge3VzZXIuY29tcGFueX1cbiAgICAgICAgICAgICAgICAgICAgPC9TQ0NBSU1IV3JhcHBlck1vZGFsQ29udGVudFRpdGxlPlxuICAgICAgICAgICAgICAgICAgICA8U0NDQUlNSERpdmlkZXIgLz5cbiAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDxTQ0NBSU1IQWdlbnRzTGlzdCBoYXNNb3JlPXtoYXNNb3JlfSBhZ2VudHNDb3VudD17YWdlbnRzRm9yU2VsZWN0b3IubGVuZ3RofSByZWY9e2FnZW50c1JlZn0+XG4gICAgICAgICAgICAgICAge2FnZW50c0ZvclNlbGVjdG9yPy5tYXAoKGFnZW50LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICBhZ2VudD8uaXNfZGVsZXRlZCB8fFxuICAgICAgICAgICAgICAgICAgICBhZ2VudD8uaGFzX25vdF9wZXJtaXNzaW9ucyB8fFxuICAgICAgICAgICAgICAgICAgICBhZ2VudD8uaGFzX25vdF9hY2Nlc3MgfHxcbiAgICAgICAgICAgICAgICAgICAgYWdlbnQ/LnR5cGUgPT09ICdjbG9uZScgfHxcbiAgICAgICAgICAgICAgICAgICAgaXNNYWlhQWdlbnQoYWdlbnQpIHx8XG4gICAgICAgICAgICAgICAgICAgIChhZ2VudD8udHlwZSA9PT0gJ2N1c3RvbScgJiYgIXdpbmRvdy5NQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1NfTVVMVElfQUdFTlRTKVxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgPENoYXRBSUFnZW50T3B0aW9uXG4gICAgICAgICAgICAgICAgICAgICAga2V5PXtgYWdlbnQtJHthZ2VudC5pZH1gfVxuICAgICAgICAgICAgICAgICAgICAgIGFnZW50PXthZ2VudH1cbiAgICAgICAgICAgICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICAgICAgICAgICAgaGFuZGxlU2VsZWN0QWdlbnQ9e2hhbmRsZVNlbGVjdEFnZW50fVxuICAgICAgICAgICAgICAgICAgICAgIGlzU2VsZWN0ZWQ9e3NlbGVjdGVkQWdlbnQ/LmlkID09PSBhZ2VudC5pZH1cbiAgICAgICAgICAgICAgICAgICAgICBvbkZhdm9yaXRlVG9nZ2xlPXtvbkFnZW50VXBkYXRlfVxuICAgICAgICAgICAgICAgICAgICAgIHNldElzRXhwYW5kZWQ9e3NldElzRXhwYW5kZWR9XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAge2xvYWRpbmdNb3JlICYmIChcbiAgICAgICAgICAgICAgICAgIDxTQ0NBSU1ITG9hZGVyV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgPExvYWRlciBzaXplPVwic21hbGxcIiAvPlxuICAgICAgICAgICAgICAgICAgPC9TQ0NBSU1ITG9hZGVyV3JhcHBlcj5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L1NDQ0FJTUhBZ2VudHNMaXN0PlxuICAgICAgICAgICAgICB7Y2FuQ3JlYXRlQWdlbnQgJiYgIWlzTXlBZ2VudHNTZWN0aW9uICYmICFpc01haWFrZXJTZWN0aW9uICYmIChcbiAgICAgICAgICAgICAgICAgIDxTQ0NBSU1IQWRkQWdlbnRcbiAgICAgICAgICAgICAgICAgICAgJGRpc2FibGVkPXt1c2FnZUJsb2NrZWR9XG4gICAgICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICBhcmlhLWRpc2FibGVkPXt1c2FnZUJsb2NrZWR9XG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICBpZiAodXNhZ2VCbG9ja2VkKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICBzZXRJc0V4cGFuZGVkKGZhbHNlKVxuICAgICAgICAgICAgICAgICAgICAgIGFtcGxpdHVkRXZlbnQoRVZFTlRTLm9wZW5Nb2RhbCwgeyBvcHRpb246ICdjcmVhdGVfYWdlbnQnIH0pXG4gICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBDdXN0b21FdmVudCgnYWJtLWFnZW50LW1vZGFsLXNldC12YWx1ZXMnLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRldGFpbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFnZW50VmFsdWVzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNFZGl0aW5nOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc09wZW46IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8U0NDQUlNSFBsdXNJY29uV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICA8UGx1cyBjb2xvcj1cIndoaXRlXCIgd2lkdGg9ezE4fSBoZWlnaHQ9ezE4fSAvPlxuICAgICAgICAgICAgICAgICAgICA8L1NDQ0FJTUhQbHVzSWNvbldyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgIHt0KCdjcmVhdGVBZ2VudCcpfVxuICAgICAgICAgICAgICAgICAgPC9TQ0NBSU1IQWRkQWdlbnQ+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvU0NDQUlNSFdyYXBwZXJNb2RhbENvbnRlbnQ+XG4gICAgICAgICAgPC9TQ0NBSU1IV3JhcHBlck1vZGFsPlxuICAgICAgICApfVxuICAgICAgPC9TQ0NBSU1IV3JhcHBlcj5cbiAgICApXG4gIH1cblxuICBjb25zdCBzaG91bGRSZW5kZXJTZWxlY3RvciA9XG4gICAgIWhhc0Vycm9yICYmXG4gICAgIWxvYWRpbmcgJiZcbiAgICAhaGlkZUFnZW50U2VsZWN0b3IgJiZcbiAgICAoISFzZWxlY3RlZEFnZW50IHx8IGlzTXlBZ2VudHNTZWN0aW9uKSAmJlxuICAgICghIXdpbmRvdy5NQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1NfTVVMVElfQUdFTlRTIHx8ICEhd2luZG93Lk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTUylcblxuICByZXR1cm4gKFxuICAgIDxTQ0NBSU1ITW9kYWxcbiAgICAgICRoYXNFcnJvcj17aGFzRXJyb3J9XG4gICAgICAkbG9hZGluZz17bG9hZGluZ31cbiAgICAgICRoYXNBZ2VudHM9eyEhYWdlbnRzLmxlbmd0aH1cbiAgICAgIG9uUG9pbnRlckRvd249e2RyYWdnYWJsZSA/IG9uRHJhZ1N0YXJ0IDogdW5kZWZpbmVkfVxuICAgICAgb25Qb2ludGVyTW92ZT17ZHJhZ2dhYmxlID8gb25EcmFnTW92ZSA6IHVuZGVmaW5lZH1cbiAgICAgIG9uUG9pbnRlclVwPXtkcmFnZ2FibGUgPyBvbkRyYWdFbmQgOiB1bmRlZmluZWR9XG4gICAgICBvblBvaW50ZXJDYW5jZWw9e2RyYWdnYWJsZSA/IG9uRHJhZ0VuZCA6IHVuZGVmaW5lZH1cbiAgICAgIG9uTG9zdFBvaW50ZXJDYXB0dXJlPXtkcmFnZ2FibGUgPyBvbkRyYWdFbmQgOiB1bmRlZmluZWR9XG4gICAgICBzdHlsZT17eyBjdXJzb3I6IGRyYWdnYWJsZSA/ICdncmFiJyA6IHVuZGVmaW5lZCwgdG91Y2hBY3Rpb246IGRyYWdnYWJsZSA/ICdtYW5pcHVsYXRpb24nIDogdW5kZWZpbmVkIH19XG4gICAgPlxuICAgICAge3Nob3VsZFJlbmRlclNlbGVjdG9yID8gcmVuZGVyTW9kYWwoKSA6IDxkaXYgLz59XG4gICAgICA8U0NDQUlNSFdyYXBwZXJCdXR0b24gZGF0YS1uby1kcmFnPVwidHJ1ZVwiPlxuICAgICAgICB7c2hvd0JhY2tCdXR0b24gJiYgKFxuICAgICAgICAgIDxTQ0NBSU1IQmFja0J1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgIG9uQmFjaygpXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxDaGV2cm9uTGVmdCB3aWR0aD17MTR9IGhlaWdodD17MTR9IGNvbG9yPVwiIzM0MzQzM1wiIC8+XG4gICAgICAgICAgICB7dCgnYmFjaycpfVxuICAgICAgICAgIDwvU0NDQUlNSEJhY2tCdXR0b24+XG4gICAgICAgICl9XG4gICAgICAgIHtzaG93SGVhZGVyQ3JlYXRlQWdlbnRCdXR0b24gJiYgKFxuICAgICAgICAgIDxTQ0NBSU1IQ3JlYXRlQWdlbnRCdXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgb25DbGljaz17aGFuZGxlT3BlbkNyZWF0ZUFnZW50TW9kYWx9XG4gICAgICAgICAgICBkaXNhYmxlZD17dXNhZ2VCbG9ja2VkfVxuICAgICAgICAgICAgYXJpYS1kaXNhYmxlZD17dXNhZ2VCbG9ja2VkfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxTQ0NBSU1IQ3JlYXRlQWdlbnRCdXR0b25UZXh0Pnt0KCdvcGVuQWdlbnRDcmVhdG9yJyl9PC9TQ0NBSU1IQ3JlYXRlQWdlbnRCdXR0b25UZXh0PlxuICAgICAgICAgIDwvU0NDQUlNSENyZWF0ZUFnZW50QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgICA8U0NDQUlNSExheW91dE1lbnVBbmNob3IgcmVmPXtsYXlvdXRNZW51UmVmfSBkYXRhLW5vLWRyYWc9XCJ0cnVlXCI+XG4gICAgICAgICAgPEljb25CdXR0b25cbiAgICAgICAgICAgIGJ1dHRvbklkPVwiYnRuLW1haWEtbGF5b3V0LW1lbnVcIlxuICAgICAgICAgICAgaGFuZGxlQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgaWYgKCFsYXlvdXRNZW51T3Blbikge1xuICAgICAgICAgICAgICAgIGFtcGxpdHVkRXZlbnQoRVZFTlRTLmFpQ2hhdE9wZW5WaWV3T3B0aW9ucylcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBzZXRMYXlvdXRNZW51T3BlbihwcmV2ID0+ICFwcmV2KVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIHRvb2x0aXA9e3QoJ2xheW91dE1lbnVUb29sdGlwJyl9XG4gICAgICAgICAgICBkaXNhYmxlVG9vbHRpcD17bGF5b3V0TWVudU9wZW59XG4gICAgICAgICAgICB0b29sdGlwWkluZGV4PXt0b29sdGlwWkluZGV4fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxNYWlhQ2hhdExheW91dE1lbnVJY29uIC8+XG4gICAgICAgICAgPC9JY29uQnV0dG9uPlxuICAgICAgICAgIHtsYXlvdXRNZW51T3BlbiA/IChcbiAgICAgICAgICAgIDxTQ0NBSU1ITGF5b3V0TWVudVBhbmVsIHJvbGU9XCJtZW51XCI+XG4gICAgICAgICAgICAgIDxTQ0NBSU1ITGF5b3V0TWVudVJvd1xuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICRhY3RpdmU9e2xheW91dE1vZGUgPT09ICdzaWRlYmFyJ31cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBoYW5kbGVQaWNrTGF5b3V0KCdzaWRlYmFyJyl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8U0NDQUlNSExheW91dE1lbnVSb3dJY29uIGFyaWEtaGlkZGVuPlxuICAgICAgICAgICAgICAgICAgPE1haWFDaGF0TGF5b3V0U2lkZWJhckljb24gLz5cbiAgICAgICAgICAgICAgICA8L1NDQ0FJTUhMYXlvdXRNZW51Um93SWNvbj5cbiAgICAgICAgICAgICAgICB7dCgnbGF5b3V0U2lkZWJhcicpfVxuICAgICAgICAgICAgICA8L1NDQ0FJTUhMYXlvdXRNZW51Um93PlxuICAgICAgICAgICAgICA8U0NDQUlNSExheW91dE1lbnVSb3dcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAkYWN0aXZlPXtsYXlvdXRNb2RlID09PSAnZnVsbHNjcmVlbid9XG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlUGlja0xheW91dCgnZnVsbHNjcmVlbicpfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPFNDQ0FJTUhMYXlvdXRNZW51Um93SWNvbiBhcmlhLWhpZGRlbj5cbiAgICAgICAgICAgICAgICAgIDxNYWlhQ2hhdExheW91dEZ1bGxzY3JlZW5JY29uIC8+XG4gICAgICAgICAgICAgICAgPC9TQ0NBSU1ITGF5b3V0TWVudVJvd0ljb24+XG4gICAgICAgICAgICAgICAge3QoJ2xheW91dEZ1bGxzY3JlZW4nKX1cbiAgICAgICAgICAgICAgPC9TQ0NBSU1ITGF5b3V0TWVudVJvdz5cbiAgICAgICAgICAgICAgPFNDQ0FJTUhMYXlvdXRNZW51Um93XG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgJGFjdGl2ZT17bGF5b3V0TW9kZSA9PT0gJ2Zsb2F0aW5nJ31cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBoYW5kbGVQaWNrTGF5b3V0KCdmbG9hdGluZycpfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPFNDQ0FJTUhMYXlvdXRNZW51Um93SWNvbiBhcmlhLWhpZGRlbj5cbiAgICAgICAgICAgICAgICAgIDxNYWlhQ2hhdExheW91dEZsb2F0aW5nSWNvbiAvPlxuICAgICAgICAgICAgICAgIDwvU0NDQUlNSExheW91dE1lbnVSb3dJY29uPlxuICAgICAgICAgICAgICAgIHt0KCdsYXlvdXRGbG9hdGluZycpfVxuICAgICAgICAgICAgICA8L1NDQ0FJTUhMYXlvdXRNZW51Um93PlxuICAgICAgICAgICAgPC9TQ0NBSU1ITGF5b3V0TWVudVBhbmVsPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1NDQ0FJTUhMYXlvdXRNZW51QW5jaG9yPlxuICAgICAgICB7aGFuZGxlTWluaW1pemUgPyAoXG4gICAgICAgICAgPEljb25CdXR0b24gaGFuZGxlQ2xpY2s9e2hhbmRsZU1pbmltaXplfSB0b29sdGlwPXt0KCdnbG9iYWxzLm1pbmltaXplJyl9IHRvb2x0aXBaSW5kZXg9e3Rvb2x0aXBaSW5kZXh9PlxuICAgICAgICAgICAgPFNDQ0FJTUhNaW5pbWl6ZUljb24+XG4gICAgICAgICAgICAgIDxTdGF0dXMgd2lkdGg9ezI0fSBoZWlnaHQ9ezI0fSAvPlxuICAgICAgICAgICAgPC9TQ0NBSU1ITWluaW1pemVJY29uPlxuICAgICAgICAgIDwvSWNvbkJ1dHRvbj5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICA8L1NDQ0FJTUhXcmFwcGVyQnV0dG9uPlxuICAgIDwvU0NDQUlNSE1vZGFsPlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0EsU0FBU0EsU0FBUyxFQUFFQyxNQUFNLEVBQUVDLFFBQVEsRUFBRUMsV0FBVyxFQUFFQyxPQUFPLFFBQTJDLE9BQU87QUFDNUcsU0FBU0MsT0FBTyxRQUFRLDhDQUE4QztBQUN0RSxTQUFTQyxNQUFNLFFBQVEseUNBQXlDO0FBQ2hFLFNBQVNDLFdBQVcsUUFBUSw4Q0FBOEM7QUFDMUUsU0FBU0MsV0FBVyxRQUFRLDhDQUE4QztBQUMxRSxTQUFTQyxJQUFJLFFBQVEsdUNBQXVDO0FBQzVELFNBQVNDLGNBQWMsUUFBUSxlQUFlO0FBQzlDLFNBQVNDLFFBQVEsUUFBUSxpQ0FBaUM7QUFDMUQsU0FBU0MsZ0JBQWdCLFFBQVEsdUNBQXVDO0FBQ3hFLFNBQVNDLGlCQUFpQixRQUFRLGdDQUFnQztBQUNsRSxTQUFTQyxVQUFVLFFBQVEsOEJBQThCO0FBQ3pELFNBQVNDLFFBQVEsRUFBRUMsc0JBQXNCLFFBQVEseUJBQXlCO0FBQzFFLFNBQVNDLHlCQUF5QixRQUFRLG1EQUFt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
@@ -19,7 +19,7 @@ export var SCCAIMHBackButton = styled.button.withConfig({
19
19
  export var SCCAIMHCreateAgentButton = styled.button.withConfig({
20
20
  displayName: "ChatAiModalHeaderstyles__SCCAIMHCreateAgentButton",
21
21
  componentId: "sc-r6xbtc-4"
22
- })(["display:flex;min-width:64px;padding:var(--cor-space-space-sm,8px) var(--cor-space-space-md,12px);justify-content:center;align-items:center;border-radius:var(--cor-radius-radius-md,8px);border:1px solid transparent;background:linear-gradient(#fff,#fff) padding-box,var(--Gradiente-1,linear-gradient(0deg,#4d3569 0%,#2d77bd 100%)) border-box;cursor:pointer;transition:background-color 0.2s ease-in-out,box-shadow 0.3s ease,opacity 0.3s ease;&:hover{box-shadow:-2px 3px 16px 0 rgba(45,119,189,0.15);}"]);
22
+ })(["display:flex;min-width:64px;padding:var(--cor-space-space-sm,8px) var(--cor-space-space-md,12px);justify-content:center;align-items:center;border-radius:var(--cor-radius-radius-md,8px);border:1px solid transparent;background:linear-gradient(#fff,#fff) padding-box,var(--Gradiente-1,linear-gradient(0deg,#4d3569 0%,#2d77bd 100%)) border-box;cursor:pointer;transition:background-color 0.2s ease-in-out,box-shadow 0.3s ease,opacity 0.3s ease;&:hover:not(:disabled){box-shadow:-2px 3px 16px 0 rgba(45,119,189,0.15);}&:disabled{opacity:0.5;cursor:not-allowed;}"]);
23
23
  export var SCCAIMHCreateAgentButtonText = styled.span.withConfig({
24
24
  displayName: "ChatAiModalHeaderstyles__SCCAIMHCreateAgentButtonText",
25
25
  componentId: "sc-r6xbtc-5"
@@ -61,7 +61,16 @@ export var SCCAIMMAIAText = styled.h3.withConfig({
61
61
  export var SCCAIMHAddAgent = styled.div.withConfig({
62
62
  displayName: "ChatAiModalHeaderstyles__SCCAIMHAddAgent",
63
63
  componentId: "sc-r6xbtc-13"
64
- })(["display:flex;width:100%;padding:8px 12px;align-items:center;justify-content:center;cursor:pointer;font-size:14px;line-height:140%;background-color:#08c;color:white;gap:8px;border-radius:4px;&:hover{background-color:#069;}"]);
64
+ })(["display:flex;width:100%;padding:8px 12px;align-items:center;justify-content:center;cursor:", ";opacity:", ";font-size:14px;line-height:140%;background-color:#08c;color:white;gap:8px;border-radius:4px;&:hover{background-color:", ";}"], function (_ref3) {
65
+ var $disabled = _ref3.$disabled;
66
+ return $disabled ? 'not-allowed' : 'pointer';
67
+ }, function (_ref4) {
68
+ var $disabled = _ref4.$disabled;
69
+ return $disabled ? 0.5 : 1;
70
+ }, function (_ref5) {
71
+ var $disabled = _ref5.$disabled;
72
+ return $disabled ? '#08c' : '#069';
73
+ });
65
74
  export var SCCAIMHDivider = styled.div.withConfig({
66
75
  displayName: "ChatAiModalHeaderstyles__SCCAIMHDivider",
67
76
  componentId: "sc-r6xbtc-14"
@@ -93,8 +102,8 @@ export var SCCAIMHLayoutMenuRowIcon = styled.span.withConfig({
93
102
  export var SCCAIMHLayoutMenuRow = styled.button.withConfig({
94
103
  displayName: "ChatAiModalHeaderstyles__SCCAIMHLayoutMenuRow",
95
104
  componentId: "sc-r6xbtc-21"
96
- })(["display:flex;padding:var(--cor-space-space-sm,8px);align-items:center;gap:var(--cor-space-space-sm,8px);align-self:stretch;border:none;border-radius:var(--cor-radius-radius-sm,4px);background:", ";cursor:pointer;font-family:var(--cor-typography-font-family,'Work Sans'),sans-serif;font-size:var(--cor-typography-font-size-sm,14px);font-weight:400;line-height:var(--cor-typography-line-height-20,20px);letter-spacing:var(--cor-typography-letter-spacing-0,0);color:var(--cor-color-text-primary,#202020);text-align:left;&:hover{background:var(--cor-color-grey-100,#f2f2f2);}"], function (_ref3) {
97
- var $active = _ref3.$active;
105
+ })(["display:flex;padding:var(--cor-space-space-sm,8px);align-items:center;gap:var(--cor-space-space-sm,8px);align-self:stretch;border:none;border-radius:var(--cor-radius-radius-sm,4px);background:", ";cursor:pointer;font-family:var(--cor-typography-font-family,'Work Sans'),sans-serif;font-size:var(--cor-typography-font-size-sm,14px);font-weight:400;line-height:var(--cor-typography-line-height-20,20px);letter-spacing:var(--cor-typography-letter-spacing-0,0);color:var(--cor-color-text-primary,#202020);text-align:left;&:hover{background:var(--cor-color-grey-100,#f2f2f2);}"], function (_ref6) {
106
+ var $active = _ref6.$active;
98
107
  return $active ? 'var(--cor-color-grey-100, #f2f2f2)' : 'transparent';
99
108
  });
100
109
  export var SCCAIMHPlusIconWrapper = styled.div.withConfig({
@@ -105,4 +114,4 @@ export var SCCAIMHMinimizeIcon = styled.span.withConfig({
105
114
  displayName: "ChatAiModalHeaderstyles__SCCAIMHMinimizeIcon",
106
115
  componentId: "sc-r6xbtc-23"
107
116
  })(["display:flex;align-items:center;justify-content:center;transform:rotate(-90deg);"]);
108
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJjc3MiLCJkcm9wZG93bkluIiwiU0NDQUlNSFdyYXBwZXIiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsIlNDQ0FJTUhNb2RhbCIsIlNDQ0FJTUhXcmFwcGVyQnV0dG9uIiwiU0NDQUlNSEJhY2tCdXR0b24iLCJidXR0b24iLCJTQ0NBSU1IQ3JlYXRlQWdlbnRCdXR0b24iLCJTQ0NBSU1IQ3JlYXRlQWdlbnRCdXR0b25UZXh0Iiwic3BhbiIsIlNDQ0FJTUhTZWxlY3RlZEFnZW50IiwiU0NDQUlNSFNlbGVjdGVkQWdlbnRUZXh0IiwiX3JlZiIsImlzQWdlbnREZWxldGVkIiwiU0NDQUlNSFdyYXBwZXJJY29uIiwiU0NDQUlNSFdyYXBwZXJNb2RhbCIsIlNDQ0FJTUhXcmFwcGVyTW9kYWxDb250ZW50IiwiU0NDQUlNSFdyYXBwZXJNb2RhbENvbnRlbnRUaXRsZSIsIl9yZWYyIiwiaXNDbG9uZSIsIlNDQ0FJTU1BSUFUZXh0IiwiaDMiLCJTQ0NBSU1IQWRkQWdlbnQiLCJTQ0NBSU1IRGl2aWRlciIsIlNDQ0FJV3JhcHBlciIsIlNDQ0FJTUhBZ2VudHNMaXN0IiwiU0NDQUlNSExvYWRlcldyYXBwZXIiLCJTQ0NBSU1ITGF5b3V0TWVudUFuY2hvciIsIlNDQ0FJTUhMYXlvdXRNZW51UGFuZWwiLCJTQ0NBSU1ITGF5b3V0TWVudVJvd0ljb24iLCJTQ0NBSU1ITGF5b3V0TWVudVJvdyIsIl9yZWYzIiwiJGFjdGl2ZSIsIlNDQ0FJTUhQbHVzSWNvbldyYXBwZXIiLCJTQ0NBSU1ITWluaW1pemVJY29uIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRBSU1vZGFsL2NvbXBvbmVudHMvQ2hhdEFpTW9kYWxIZWFkZXIvQ2hhdEFpTW9kYWxIZWFkZXIuc3R5bGVzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkLCB7IGNzcyB9IGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJ1xuaW1wb3J0IHsgZHJvcGRvd25JbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3N0eWxlcy90cmFuc2l0aW9ucydcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogNnB4IDhweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZ2FwOiA2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4td2lkdGg6IDkwcHg7XG4gIG1heC13aWR0aDogMjUycHg7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1ITW9kYWwgPSBzdHlsZWQuZGl2PHsgJGhhc0Vycm9yPzogYm9vbGVhbjsgJGxvYWRpbmc/OiBib29sZWFuOyAkaGFzQWdlbnRzPzogYm9vbGVhbiB9PmBcbiAgcGFkZGluZzogOHB4IDE2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1zaHJpbms6IDA7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1IV3JhcHBlckJ1dHRvbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMjRweDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhCYWNrQnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA2cHg7XG4gIGhlaWdodDogMjhweDtcbiAgcGFkZGluZzogNnB4IDhweDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMzQzNDMzO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNSENyZWF0ZUFnZW50QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLXdpZHRoOiA2NHB4O1xuICBwYWRkaW5nOiB2YXIoLS1jb3Itc3BhY2Utc3BhY2Utc20sIDhweCkgdmFyKC0tY29yLXNwYWNlLXNwYWNlLW1kLCAxMnB4KTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNvci1yYWRpdXMtcmFkaXVzLW1kLCA4cHgpO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZDpcbiAgICBsaW5lYXItZ3JhZGllbnQoI2ZmZiwgI2ZmZikgcGFkZGluZy1ib3gsXG4gICAgdmFyKC0tR3JhZGllbnRlLTEsIGxpbmVhci1ncmFkaWVudCgwZGVnLCAjNGQzNTY5IDAlLCAjMmQ3N2JkIDEwMCUpKSBib3JkZXItYm94O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246XG4gICAgYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW4tb3V0LFxuICAgIGJveC1zaGFkb3cgMC4zcyBlYXNlLFxuICAgIG9wYWNpdHkgMC4zcyBlYXNlO1xuXG4gICY6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IC0ycHggM3B4IDE2cHggMCByZ2JhKDQ1LCAxMTksIDE4OSwgMC4xNSk7XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhDcmVhdGVBZ2VudEJ1dHRvblRleHQgPSBzdHlsZWQuc3BhbmBcbiAgZmxleDogMSAwIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtZmFtaWx5LCAnV29yayBTYW5zJyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1zaXplLXhzLCAxMnB4KTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29yLXR5cG9ncmFwaHktbGluZS1oZWlnaHQtMTQsIDE0cHgpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tY29yLXR5cG9ncmFwaHktbGV0dGVyLXNwYWNpbmctMCwgMCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLUdyYWRpZW50ZS0xLCBsaW5lYXItZ3JhZGllbnQoMGRlZywgIzRkMzU2OSAwJSwgIzJkNzdiZCAxMDAlKSk7XG4gIGJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhTZWxlY3RlZEFnZW50ID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBmbGV4LWdyb3c6IDE7XG4gIG1pbi13aWR0aDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhTZWxlY3RlZEFnZW50VGV4dCA9IHN0eWxlZC5zcGFuPHsgaXNBZ2VudERlbGV0ZWQ/OiBib29sZWFuIH0+YFxuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICBjb2xvcjogIzM0MzQzMztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDZweDtcbiAgJHsoeyBpc0FnZW50RGVsZXRlZCB9KSA9PlxuICAgIGlzQWdlbnREZWxldGVkICYmXG4gICAgY3NzYFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgYH1cbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhXcmFwcGVySWNvbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNSFdyYXBwZXJNb2RhbCA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAzOHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTAwMDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhXcmFwcGVyTW9kYWxDb250ZW50ID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6IDMzNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBib3gtc2hhZG93OiAwcHggNHB4IDE2cHggMHB4IHJnYmEoMTgsIDE4LCAxOCwgMC4yNCk7XG4gIHBhZGRpbmc6IDhweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiA0cHg7XG4gICR7ZHJvcGRvd25Jbn1cbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhXcmFwcGVyTW9kYWxDb250ZW50VGl0bGUgPSBzdHlsZWQuc3Bhbjx7IGlzQ2xvbmU/OiBib29sZWFuIH0+YFxuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzJiMmIyYjtcbiAgZm9udC1mYW1pbHk6ICdXb3JrIFNhbnMnO1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJHsoeyBpc0Nsb25lIH0pID0+IChpc0Nsb25lID8gJzBweCcgOiAnMHB4IDEycHgnKX07XG4gIGN1cnNvcjogZGVmYXVsdDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTU1BSUFUZXh0ID0gc3R5bGVkLmgzYFxuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYmE0M2ZmIDAlLCAjZmY0M2NhIDUwJSwgI2JhNDNmZiAxMDAlKTtcbiAgYmFja2dyb3VuZC1zaXplOiAyMDAlIGF1dG87XG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBhbmltYXRpb246XG4gICAgc2hpbmUgM3MgbGluZWFyIGluZmluaXRlLFxuICAgIGZhZGVJblNjYWxlIDAuOHMgZWFzZS1vdXQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xuXG4gIEBrZXlmcmFtZXMgc2hpbmUge1xuICAgIHRvIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDIwMCUgY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIEBrZXlmcmFtZXMgZmFkZUluU2NhbGUge1xuICAgIDAlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1IQWRkQWdlbnQgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogOHB4IDEycHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwOGM7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZ2FwOiA4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzA2OTtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNSERpdmlkZXIgPSBzdHlsZWQuZGl2YFxuICBoZWlnaHQ6IDAuNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDlkOWQ5O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiA0cHggMHB4IDJweCAwcHg7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSVdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiAxMnB4O1xuICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNyk7XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhBZ2VudHNMaXN0ID0gc3R5bGVkLmRpdjx7IGhhc01vcmU/OiBib29sZWFuOyBhZ2VudHNDb3VudD86IG51bWJlciB9PmBcbiAgbWF4LWhlaWdodDogMjc1cHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG92ZXJzY3JvbGwtYmVoYXZpb3IteTogY29udGFpbjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiA0cHg7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1ITG9hZGVyV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIHBhZGRpbmc6IDhweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1ITGF5b3V0TWVudUFuY2hvciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhMYXlvdXRNZW51UGFuZWwgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgOHB4KTtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDExMDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IHZhcigtLWNvci1zcGFjZS1zcGFjZS1zbSwgOHB4KTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNvci1yYWRpdXMtcmFkaXVzLW1kLCA4cHgpO1xuICBib3JkZXI6IDAuNXB4IHNvbGlkIHZhcigtLUNvbG9yLUxpZ2h0LUdyYXksICNlMGUwZTApO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OlxuICAgIHZhcigtLXNkcy1zaXplLWRlcHRoLTApIHZhcigtLXNkcy1zaXplLWRlcHRoLTAyNSkgdmFyKC0tc2RzLXNpemUtZGVwdGgtMTAwKSB2YXIoLS1zZHMtc2l6ZS1kZXB0aC0wKVxuICAgICAgdmFyKC0tc2RzLWNvbG9yLWJsYWNrLTIwMCwgcmdiYSgwLCAwLCAwLCAwLjA4KSksXG4gICAgdmFyKC0tc2RzLXNpemUtZGVwdGgtMCkgdmFyKC0tc2RzLXNpemUtZGVwdGgtMDI1KSB2YXIoLS1zZHMtc2l6ZS1kZXB0aC0xMDApIHZhcigtLXNkcy1zaXplLWRlcHRoLTApXG4gICAgICB2YXIoLS1zZHMtY29sb3ItYmxhY2stMTAwLCByZ2JhKDAsIDAsIDAsIDAuMDQpKTtcbiAgbWluLXdpZHRoOiBtYXgtY29udGVudDtcbiAgJHtkcm9wZG93bklufVxuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgcmlnaHQ7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1ITGF5b3V0TWVudVJvd0ljb24gPSBzdHlsZWQuc3BhbmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyMHB4O1xuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNSExheW91dE1lbnVSb3cgPSBzdHlsZWQuYnV0dG9uPHsgJGFjdGl2ZT86IGJvb2xlYW4gfT5gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IHZhcigtLWNvci1zcGFjZS1zcGFjZS1zbSwgOHB4KTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1jb3Itc3BhY2Utc3BhY2Utc20sIDhweCk7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY29yLXJhZGl1cy1yYWRpdXMtc20sIDRweCk7XG4gIGJhY2tncm91bmQ6ICR7KHsgJGFjdGl2ZSB9KSA9PiAoJGFjdGl2ZSA/ICd2YXIoLS1jb3ItY29sb3ItZ3JleS0xMDAsICNmMmYyZjIpJyA6ICd0cmFuc3BhcmVudCcpfTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1mYW1pbHksICdXb3JrIFNhbnMnKSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LXNpemUtc20sIDE0cHgpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29yLXR5cG9ncmFwaHktbGluZS1oZWlnaHQtMjAsIDIwcHgpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tY29yLXR5cG9ncmFwaHktbGV0dGVyLXNwYWNpbmctMCwgMCk7XG4gIGNvbG9yOiB2YXIoLS1jb3ItY29sb3ItdGV4dC1wcmltYXJ5LCAjMjAyMDIwKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb3ItY29sb3ItZ3JleS0xMDAsICNmMmYyZjIpO1xuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1IUGx1c0ljb25XcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1ITWluaW1pemVJY29uID0gc3R5bGVkLnNwYW5gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuYFxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxNQUFNLElBQUlDLEdBQUcsUUFBUSxtQkFBbUI7QUFDL0MsU0FBU0MsVUFBVSxRQUFRLG1DQUFtQztBQUU5RCxPQUFPLElBQU1DLGNBQWMsR0FBR0gsTUFBTSxDQUFDSSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsK0tBV3ZDO0FBRUQsT0FBTyxJQUFNQyxZQUFZLEdBQUdSLE1BQU0sQ0FBQ0ksR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHFHQU1yQztBQUVELE9BQU8sSUFBTUUsb0JBQW9CLEdBQUdULE1BQU0sQ0FBQ0ksR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLGlEQUk3QztBQUVELE9BQU8sSUFBTUcs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
117
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJjc3MiLCJkcm9wZG93bkluIiwiU0NDQUlNSFdyYXBwZXIiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsIlNDQ0FJTUhNb2RhbCIsIlNDQ0FJTUhXcmFwcGVyQnV0dG9uIiwiU0NDQUlNSEJhY2tCdXR0b24iLCJidXR0b24iLCJTQ0NBSU1IQ3JlYXRlQWdlbnRCdXR0b24iLCJTQ0NBSU1IQ3JlYXRlQWdlbnRCdXR0b25UZXh0Iiwic3BhbiIsIlNDQ0FJTUhTZWxlY3RlZEFnZW50IiwiU0NDQUlNSFNlbGVjdGVkQWdlbnRUZXh0IiwiX3JlZiIsImlzQWdlbnREZWxldGVkIiwiU0NDQUlNSFdyYXBwZXJJY29uIiwiU0NDQUlNSFdyYXBwZXJNb2RhbCIsIlNDQ0FJTUhXcmFwcGVyTW9kYWxDb250ZW50IiwiU0NDQUlNSFdyYXBwZXJNb2RhbENvbnRlbnRUaXRsZSIsIl9yZWYyIiwiaXNDbG9uZSIsIlNDQ0FJTU1BSUFUZXh0IiwiaDMiLCJTQ0NBSU1IQWRkQWdlbnQiLCJfcmVmMyIsIiRkaXNhYmxlZCIsIl9yZWY0IiwiX3JlZjUiLCJTQ0NBSU1IRGl2aWRlciIsIlNDQ0FJV3JhcHBlciIsIlNDQ0FJTUhBZ2VudHNMaXN0IiwiU0NDQUlNSExvYWRlcldyYXBwZXIiLCJTQ0NBSU1ITGF5b3V0TWVudUFuY2hvciIsIlNDQ0FJTUhMYXlvdXRNZW51UGFuZWwiLCJTQ0NBSU1ITGF5b3V0TWVudVJvd0ljb24iLCJTQ0NBSU1ITGF5b3V0TWVudVJvdyIsIl9yZWY2IiwiJGFjdGl2ZSIsIlNDQ0FJTUhQbHVzSWNvbldyYXBwZXIiLCJTQ0NBSU1ITWluaW1pemVJY29uIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRBSU1vZGFsL2NvbXBvbmVudHMvQ2hhdEFpTW9kYWxIZWFkZXIvQ2hhdEFpTW9kYWxIZWFkZXIuc3R5bGVzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkLCB7IGNzcyB9IGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJ1xuaW1wb3J0IHsgZHJvcGRvd25JbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3N0eWxlcy90cmFuc2l0aW9ucydcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogNnB4IDhweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZ2FwOiA2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4td2lkdGg6IDkwcHg7XG4gIG1heC13aWR0aDogMjUycHg7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1ITW9kYWwgPSBzdHlsZWQuZGl2PHsgJGhhc0Vycm9yPzogYm9vbGVhbjsgJGxvYWRpbmc/OiBib29sZWFuOyAkaGFzQWdlbnRzPzogYm9vbGVhbiB9PmBcbiAgcGFkZGluZzogOHB4IDE2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1zaHJpbms6IDA7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1IV3JhcHBlckJ1dHRvbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMjRweDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhCYWNrQnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA2cHg7XG4gIGhlaWdodDogMjhweDtcbiAgcGFkZGluZzogNnB4IDhweDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMzQzNDMzO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNSENyZWF0ZUFnZW50QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLXdpZHRoOiA2NHB4O1xuICBwYWRkaW5nOiB2YXIoLS1jb3Itc3BhY2Utc3BhY2Utc20sIDhweCkgdmFyKC0tY29yLXNwYWNlLXNwYWNlLW1kLCAxMnB4KTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNvci1yYWRpdXMtcmFkaXVzLW1kLCA4cHgpO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZDpcbiAgICBsaW5lYXItZ3JhZGllbnQoI2ZmZiwgI2ZmZikgcGFkZGluZy1ib3gsXG4gICAgdmFyKC0tR3JhZGllbnRlLTEsIGxpbmVhci1ncmFkaWVudCgwZGVnLCAjNGQzNTY5IDAlLCAjMmQ3N2JkIDEwMCUpKSBib3JkZXItYm94O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246XG4gICAgYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW4tb3V0LFxuICAgIGJveC1zaGFkb3cgMC4zcyBlYXNlLFxuICAgIG9wYWNpdHkgMC4zcyBlYXNlO1xuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICAgIGJveC1zaGFkb3c6IC0ycHggM3B4IDE2cHggMCByZ2JhKDQ1LCAxMTksIDE4OSwgMC4xNSk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNSENyZWF0ZUFnZW50QnV0dG9uVGV4dCA9IHN0eWxlZC5zcGFuYFxuICBmbGV4OiAxIDAgMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LWZhbWlseTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1mYW1pbHksICdXb3JrIFNhbnMnKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LXNpemUteHMsIDEycHgpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1saW5lLWhlaWdodC0xNCwgMTRweCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1sZXR0ZXItc3BhY2luZy0wLCAwKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tR3JhZGllbnRlLTEsIGxpbmVhci1ncmFkaWVudCgwZGVnLCAjNGQzNTY5IDAlLCAjMmQ3N2JkIDEwMCUpKTtcbiAgYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNSFNlbGVjdGVkQWdlbnQgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGZsZXgtZ3JvdzogMTtcbiAgbWluLXdpZHRoOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNSFNlbGVjdGVkQWdlbnRUZXh0ID0gc3R5bGVkLnNwYW48eyBpc0FnZW50RGVsZXRlZD86IGJvb2xlYW4gfT5gXG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gIGNvbG9yOiAjMzQzNDMzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogNnB4O1xuICAkeyh7IGlzQWdlbnREZWxldGVkIH0pID0+XG4gICAgaXNBZ2VudERlbGV0ZWQgJiZcbiAgICBjc3NgXG4gICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICBgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNSFdyYXBwZXJJY29uID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1IV3JhcHBlck1vZGFsID0gc3R5bGVkLmRpdmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDM4cHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDAwO1xuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNSFdyYXBwZXJNb2RhbENvbnRlbnQgPSBzdHlsZWQuZGl2YFxuICB3aWR0aDogMzM0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGJveC1zaGFkb3c6IDBweCA0cHggMTZweCAwcHggcmdiYSgxOCwgMTgsIDE4LCAwLjI0KTtcbiAgcGFkZGluZzogOHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDRweDtcbiAgJHtkcm9wZG93bklufVxuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNSFdyYXBwZXJNb2RhbENvbnRlbnRUaXRsZSA9IHN0eWxlZC5zcGFuPHsgaXNDbG9uZT86IGJvb2xlYW4gfT5gXG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiAjMmIyYjJiO1xuICBmb250LWZhbWlseTogJ1dvcmsgU2Fucyc7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkeyh7IGlzQ2xvbmUgfSkgPT4gKGlzQ2xvbmUgPyAnMHB4JyA6ICcwcHggMTJweCcpfTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNTUFJQVRleHQgPSBzdHlsZWQuaDNgXG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNiYTQzZmYgMCUsICNmZjQzY2EgNTAlLCAjYmE0M2ZmIDEwMCUpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwMCUgYXV0bztcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFuaW1hdGlvbjpcbiAgICBzaGluZSAzcyBsaW5lYXIgaW5maW5pdGUsXG4gICAgZmFkZUluU2NhbGUgMC44cyBlYXNlLW91dDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XG5cbiAgQGtleWZyYW1lcyBzaGluZSB7XG4gICAgdG8ge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMjAwJSBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgQGtleWZyYW1lcyBmYWRlSW5TY2FsZSB7XG4gICAgMCUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhBZGRBZ2VudCA9IHN0eWxlZC5kaXY8eyAkZGlzYWJsZWQ/OiBib29sZWFuIH0+YFxuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogOHB4IDEycHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjdXJzb3I6ICR7KHsgJGRpc2FibGVkIH0pID0+ICgkZGlzYWJsZWQgPyAnbm90LWFsbG93ZWQnIDogJ3BvaW50ZXInKX07XG4gIG9wYWNpdHk6ICR7KHsgJGRpc2FibGVkIH0pID0+ICgkZGlzYWJsZWQgPyAwLjUgOiAxKX07XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwOGM7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZ2FwOiA4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyAkZGlzYWJsZWQgfSkgPT4gKCRkaXNhYmxlZCA/ICcjMDhjJyA6ICcjMDY5Jyl9O1xuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1IRGl2aWRlciA9IHN0eWxlZC5kaXZgXG4gIGhlaWdodDogMC41cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOWQ5ZDk7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDRweCAwcHggMnB4IDBweDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDEycHg7XG4gIHBhZGRpbmctbGVmdDogNHB4O1xuICBzdmcge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS43KTtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNSEFnZW50c0xpc3QgPSBzdHlsZWQuZGl2PHsgaGFzTW9yZT86IGJvb2xlYW47IGFnZW50c0NvdW50PzogbnVtYmVyIH0+YFxuICBtYXgtaGVpZ2h0OiAyNzVweDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgb3ZlcnNjcm9sbC1iZWhhdmlvci15OiBjb250YWluO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDRweDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhMb2FkZXJXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgcGFkZGluZzogOHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhMYXlvdXRNZW51QW5jaG9yID0gc3R5bGVkLmRpdmBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuYFxuXG5leHBvcnQgY29uc3QgU0NDQUlNSExheW91dE1lbnVQYW5lbCA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDEwMCUgKyA4cHgpO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTEwMDtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogdmFyKC0tY29yLXNwYWNlLXNwYWNlLXNtLCA4cHgpO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY29yLXJhZGl1cy1yYWRpdXMtbWQsIDhweCk7XG4gIGJvcmRlcjogMC41cHggc29saWQgdmFyKC0tQ29sb3ItTGlnaHQtR3JheSwgI2UwZTBlMCk7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6XG4gICAgdmFyKC0tc2RzLXNpemUtZGVwdGgtMCkgdmFyKC0tc2RzLXNpemUtZGVwdGgtMDI1KSB2YXIoLS1zZHMtc2l6ZS1kZXB0aC0xMDApIHZhcigtLXNkcy1zaXplLWRlcHRoLTApXG4gICAgICB2YXIoLS1zZHMtY29sb3ItYmxhY2stMjAwLCByZ2JhKDAsIDAsIDAsIDAuMDgpKSxcbiAgICB2YXIoLS1zZHMtc2l6ZS1kZXB0aC0wKSB2YXIoLS1zZHMtc2l6ZS1kZXB0aC0wMjUpIHZhcigtLXNkcy1zaXplLWRlcHRoLTEwMCkgdmFyKC0tc2RzLXNpemUtZGVwdGgtMClcbiAgICAgIHZhcigtLXNkcy1jb2xvci1ibGFjay0xMDAsIHJnYmEoMCwgMCwgMCwgMC4wNCkpO1xuICBtaW4td2lkdGg6IG1heC1jb250ZW50O1xuICAke2Ryb3Bkb3duSW59XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCByaWdodDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhMYXlvdXRNZW51Um93SWNvbiA9IHN0eWxlZC5zcGFuYFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDIwcHg7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0NBSU1ITGF5b3V0TWVudVJvdyA9IHN0eWxlZC5idXR0b248eyAkYWN0aXZlPzogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogdmFyKC0tY29yLXNwYWNlLXNwYWNlLXNtLCA4cHgpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLWNvci1zcGFjZS1zcGFjZS1zbSwgOHB4KTtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jb3ItcmFkaXVzLXJhZGl1cy1zbSwgNHB4KTtcbiAgYmFja2dyb3VuZDogJHsoeyAkYWN0aXZlIH0pID0+ICgkYWN0aXZlID8gJ3ZhcigtLWNvci1jb2xvci1ncmV5LTEwMCwgI2YyZjJmMiknIDogJ3RyYW5zcGFyZW50Jyl9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LWZhbWlseSwgJ1dvcmsgU2FucycpLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtc2l6ZS1zbSwgMTRweCk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1saW5lLWhlaWdodC0yMCwgMjBweCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1sZXR0ZXItc3BhY2luZy0wLCAwKTtcbiAgY29sb3I6IHZhcigtLWNvci1jb2xvci10ZXh0LXByaW1hcnksICMyMDIwMjApO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvci1jb2xvci1ncmV5LTEwMCwgI2YyZjJmMik7XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhQbHVzSWNvbldyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQ0FJTUhNaW5pbWl6ZUljb24gPSBzdHlsZWQuc3BhbmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG5gXG4iXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLE1BQU0sSUFBSUMsR0FBRyxRQUFRLG1CQUFtQjtBQUMvQyxTQUFT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
@@ -39,7 +39,7 @@ export function resolveInitialMaiaChatLayoutMode(context) {
39
39
 
40
40
  /** Ancho del panel flotante en px: base y escalado en pantallas muy anchas */
41
41
  export var MAIA_FLOATING_PANEL_WIDTH_PX = {
42
- "default": 480,
42
+ "default": 490,
43
43
  large: 600,
44
44
  xxl: 720
45
45
  };
@@ -71,4 +71,4 @@ export function getMaiaFloatingPanelWidthPx() {
71
71
  }
72
72
  return MAIA_FLOATING_PANEL_WIDTH_PX["default"];
73
73
  }
74
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJNQUlBX0NIQVRfTEFZT1VUX1NUT1JBR0VfS0VZIiwiVkFMSURfTEFZT1VUX01PREVTIiwiaXNNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZSIsInZhbHVlIiwiaW5jbHVkZXMiLCJnZXRTZWN0aW9uRm9yY2VkTGF5b3V0TW9kZSIsImNvbnRleHQiLCJfY29udGV4dCRiYW5uZXJFbnRyeUYiLCJzZWN0aW9uIiwiYmFubmVyRW50cnlGYXEiLCJmYXFUaXRsZSIsInRyaW0iLCJnZXRTdG9yZWRNYWlhQ2hhdExheW91dE1vZGUiLCJ3aW5kb3ciLCJzdG9yZWQiLCJsb2NhbFN0b3JhZ2UiLCJnZXRJdGVtIiwiX3VudXNlZCIsInNldFN0b3JlZE1haWFDaGF0TGF5b3V0TW9kZSIsIm1vZGUiLCJzZXRJdGVtIiwiX3VudXNlZDIiLCJyZXNvbHZlSW5pdGlhbE1haWFDaGF0TGF5b3V0TW9kZSIsIl9nZXRTdG9yZWRNYWlhQ2hhdExheSIsImZvcmNlZCIsIk1BSUFfRkxPQVRJTkdfUEFORUxfV0lEVEhfUFgiLCJsYXJnZSIsInh4bCIsIk1BSUFfRkxPQVRJTkdfUEFORUxfSEVJR0hUX1BYIiwiTUFJQV9GTE9BVElOR19CUkVBS1BPSU5UX0xBUkdFIiwiTUFJQV9GTE9BVElOR19CUkVBS1BPSU5UX1hYTCIsImdldE1haWFGbG9hdGluZ1BhbmVsV2lkdGhQeCIsInZ3IiwiaW5uZXJXaWR0aCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0QUlNb2RhbC9sYXlvdXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBTZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vY29udGV4dC9nbG9iYWwtY29udGV4dCdcblxuZXhwb3J0IHR5cGUgTWFpYUNoYXRNb2RhbExheW91dE1vZGUgPSAnc2lkZWJhcicgfCAnZnVsbHNjcmVlbicgfCAnZmxvYXRpbmcnXG5cbmV4cG9ydCBjb25zdCBNQUlBX0NIQVRfTEFZT1VUX1NUT1JBR0VfS0VZID0gJ21haWEtY2hhdC1tb2RhbC1sYXlvdXQtbW9kZSdcblxuY29uc3QgVkFMSURfTEFZT1VUX01PREVTOiBNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZVtdID0gWydzaWRlYmFyJywgJ2Z1bGxzY3JlZW4nLCAnZmxvYXRpbmcnXVxuXG5leHBvcnQgdHlwZSBNYWlhQ2hhdExheW91dE9wZW5Db250ZXh0ID0ge1xuICBzZWN0aW9uOiBTZWN0aW9uXG4gIGJhbm5lckVudHJ5RmFxPzogeyBmYXFUaXRsZT86IHN0cmluZyB8IG51bGwgfSB8IG51bGxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzTWFpYUNoYXRNb2RhbExheW91dE1vZGUodmFsdWU6IHVua25vd24pOiB2YWx1ZSBpcyBNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZSB7XG4gIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIFZBTElEX0xBWU9VVF9NT0RFUy5pbmNsdWRlcyh2YWx1ZSBhcyBNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZSlcbn1cblxuLyoqIExheW91dCBpbXB1ZXN0byBwb3Igc2VjY2nDs24vY29udGV4dG8gZGUgYXBlcnR1cmEgKHByaW9yaWRhZCBzb2JyZSBsb2NhbFN0b3JhZ2UpLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNlY3Rpb25Gb3JjZWRMYXlvdXRNb2RlKGNvbnRleHQ6IE1haWFDaGF0TGF5b3V0T3BlbkNvbnRleHQpOiBNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZSB8IG51bGwge1xuICBpZiAoY29udGV4dC5zZWN0aW9uID09PSAndGFzaycgfHwgY29udGV4dC5zZWN0aW9uID09PSAncGxhbm5lcicpIHJldHVybiAnZmxvYXRpbmcnXG4gIGlmIChjb250ZXh0LmJhbm5lckVudHJ5RmFxPy5mYXFUaXRsZT8udHJpbSgpKSByZXR1cm4gJ2Zsb2F0aW5nJ1xuICByZXR1cm4gbnVsbFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U3RvcmVkTWFpYUNoYXRMYXlvdXRNb2RlKCk6IE1haWFDaGF0TW9kYWxMYXlvdXRNb2RlIHwgbnVsbCB7XG4gIGlmICh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykgcmV0dXJuIG51bGxcblxuICB0cnkge1xuICAgIGNvbnN0IHN0b3JlZCA9IHdpbmRvdy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShNQUlBX0NIQVRfTEFZT1VUX1NUT1JBR0VfS0VZKVxuICAgIHJldHVybiBpc01haWFDaGF0TW9kYWxMYXlvdXRNb2RlKHN0b3JlZCkgPyBzdG9yZWQgOiBudWxsXG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBudWxsXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldFN0b3JlZE1haWFDaGF0TGF5b3V0TW9kZShtb2RlOiBNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZSk6IHZvaWQge1xuICBpZiAodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcpIHJldHVyblxuXG4gIHRyeSB7XG4gICAgd2luZG93LmxvY2FsU3RvcmFnZS5zZXRJdGVtKE1BSUFfQ0hBVF9MQVlPVVRfU1RPUkFHRV9LRVksIG1vZGUpXG4gIH0gY2F0Y2gge1xuICAgIC8vIElnbm9yYXIgcXVvdGEgZXhjZWVkZWQgbyBtb2RvIHByaXZhZG8uXG4gIH1cbn1cblxuLyoqIFJlc3VlbHZlIGVsIGxheW91dCBpbmljaWFsOiBzZWNjacOzbiBmb3J6YWRhID4gbG9jYWxTdG9yYWdlID4gc2lkZWJhci4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlSW5pdGlhbE1haWFDaGF0TGF5b3V0TW9kZShjb250ZXh0OiBNYWlhQ2hhdExheW91dE9wZW5Db250ZXh0KTogTWFpYUNoYXRNb2RhbExheW91dE1vZGUge1xuICBjb25zdCBmb3JjZWQgPSBnZXRTZWN0aW9uRm9yY2VkTGF5b3V0TW9kZShjb250ZXh0KVxuICBpZiAoZm9yY2VkKSByZXR1cm4gZm9yY2VkXG5cbiAgcmV0dXJuIGdldFN0b3JlZE1haWFDaGF0TGF5b3V0TW9kZSgpID8/ICdzaWRlYmFyJ1xufVxuXG4vKiogQW5jaG8gZGVsIHBhbmVsIGZsb3RhbnRlIGVuIHB4OiBiYXNlIHkgZXNjYWxhZG8gZW4gcGFudGFsbGFzIG11eSBhbmNoYXMgKi9cbmV4cG9ydCBjb25zdCBNQUlBX0ZMT0FUSU5HX1BBTkVMX1dJRFRIX1BYID0ge1xuICBkZWZhdWx0OiA0ODAsXG4gIGxhcmdlOiA2MDAsXG4gIHh4bDogNzIwLFxufSBhcyBjb25zdFxuXG4vKiogQWx0byBkZWwgcGFuZWwgZmxvdGFudGUgZW4gcHg6IGJhc2UgeSBlc2NhbGFkbyBlbiBwYW50YWxsYXMgbXV5IGFuY2hhcyAoZWwgQ1NTIGFwbGljYSBtYXgtaGVpZ2h0OiA4NXZoKSAqL1xuZXhwb3J0IGNvbnN0IE1BSUFfRkxPQVRJTkdfUEFORUxfSEVJR0hUX1BYID0ge1xuICBkZWZhdWx0OiA2MjAsXG4gIGxhcmdlOiA3MjAsXG4gIHh4bDogOTYwLFxufSBhcyBjb25zdFxuXG4vKiogVmlld3BvcnQgbcOtbmltbyAoYW5jaG8pIHBhcmEgdXNhciBtZWRpZGFzIGBsYXJnZWAgKi9cbmV4cG9ydCBjb25zdCBNQUlBX0ZMT0FUSU5HX0JSRUFLUE9JTlRfTEFSR0UgPSAxOTIwXG5cbi8qKiBWaWV3cG9ydCBtw61uaW1vIChhbmNobykgcGFyYSB1c2FyIG1lZGlkYXMgYHh4bGAgKi9cbmV4cG9ydCBjb25zdCBNQUlBX0ZMT0FUSU5HX0JSRUFLUE9JTlRfWFhMID0gMjU2MFxuXG4vKiogQW5jaG8gZWZlY3Rpdm8gZGVsIHBhbmVsIChtaXNtYSBsw7NnaWNhIHF1ZSBsb3MgQG1lZGlhIGRlbCBDU1MpICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0TWFpYUZsb2F0aW5nUGFuZWxXaWR0aFB4KCk6IG51bWJlciB7XG4gIGlmICh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybiBNQUlBX0ZMT0FUSU5HX1BBTkVMX1dJRFRIX1BYLmRlZmF1bHRcbiAgfVxuICBjb25zdCB2dyA9IHdpbmRvdy5pbm5lcldpZHRoXG4gIGlmICh2dyA+PSBNQUlBX0ZMT0FUSU5HX0JSRUFLUE9JTlRfWFhMKSB7XG4gICAgcmV0dXJuIE1BSUFfRkxPQVRJTkdfUEFORUxfV0lEVEhfUFgueHhsXG4gIH1cbiAgaWYgKHZ3ID49IE1BSUFfRkxPQVRJTkdfQlJFQUtQT0lOVF9MQVJHRSkge1xuICAgIHJldHVybiBNQUlBX0ZMT0FUSU5HX1BBTkVMX1dJRFRIX1BYLmxhcmdlXG4gIH1cbiAgcmV0dXJuIE1BSUFfRkxPQVRJTkdfUEFORUxfV0lEVEhfUFguZGVmYXVsdFxufVxuIl0sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLElBQU1BLDRCQUE0QixHQUFHLDZCQUE2QjtBQUV6RSxJQUFNQyxrQkFBNkMsR0FBRyxDQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxDQUFDO0FBTzNGLE9BQU8sU0FBU0MseUJBQXlCQSxDQUFDQyxLQUFjLEVBQW9DO0VBQzFGLE9BQU8sT0FBT0EsS0FBSyxLQUFLLFFBQVEsSUFBSUYsa0JBQWtCLENBQUNHLFFBQVEsQ0FBQ0QsS0FBZ0MsQ0FBQztBQUNuRzs7QUFFQTtBQUNBLE9BQU8sU0FBU0UsMEJBQTBCQSxDQUFDQyxPQUFrQyxFQUFrQztFQUFBLElBQUFDLHFCQUFBO0VBQzdHLElBQUlELE9BQU8sQ0FBQ0UsT0FBTyxLQUFLLE1BQU0sSUFBSUYsT0FBTyxDQUFDRSxPQUFPLEtBQUssU0FBUyxFQUFFLE9BQU8sVUFBVTtFQUNsRixLQUFBRCxxQkFBQSxHQUFJRCxPQUFPLENBQUNHLGNBQWMsY0FBQUYscUJBQUEsZ0JBQUFBLHFCQUFBLEdBQXRCQSxxQkFBQSxDQUF3QkcsUUFBUSxjQUFBSCxxQkFBQSxlQUFoQ0EscUJBQUEsQ0FBa0NJLElBQUksQ0FBQyxDQUFDLEVBQUUsT0FBTyxVQUFVO0VBQy9ELE9BQU8sSUFBSTtBQUNiO0FBRUEsT0FBTyxTQUFTQywyQkFBMkJBLENBQUEsRUFBbUM7RUFDNUUsSUFBSSxPQUFPQyxNQUFNLEtBQUssV0FBVyxFQUFFLE9BQU8sSUFBSTtFQUU5QyxJQUFJO0lBQ0YsSUFBTUMsTUFBTSxHQUFHRCxNQUFNLENBQUNFLFlBQVksQ0FBQ0MsT0FBTyxDQUFDaEIsNEJBQTRCLENBQUM7SUFDeEUsT0FBT0UseUJBQXlCLENBQUNZLE1BQU0sQ0FBQyxHQUFHQSxNQUFNLEdBQUcsSUFBSTtFQUMxRCxDQUFDLENBQUMsT0FBQUcsT0FBQSxFQUFNO0lBQ04sT0FBTyxJQUFJO0VBQ2I7QUFDRjtBQUVBLE9BQU8sU0FBU0MsMkJBQTJCQSxDQUFDQyxJQUE2QixFQUFRO0VBQy9FLElBQUksT0FBT04sTUFBTSxLQUFLLFdBQVcsRUFBRTtFQUVuQyxJQUFJO0lBQ0ZBLE1BQU0sQ0FBQ0UsWUFBWSxDQUFDSyxPQUFPLENBQUNwQiw0QkFBNEIsRUFBRW1CLElBQUksQ0FBQztFQUNqRSxDQUFDLENBQUMsT0FBQUUsUUFBQSxFQUFNO0lBQ047RUFBQTtBQUVKOztBQUVBO0FBQ0EsT0FBTyxTQUFTQyxnQ0FBZ0NBLENBQUNoQixPQUFrQyxFQUEyQjtFQUFBLElBQUFpQixxQkFBQTtFQUM1RyxJQUFNQyxNQUFNLEdBQUduQiwwQkFBMEIsQ0FBQ0MsT0FBTyxDQUFDO0VBQ2xELElBQUlrQixNQUFNLEVBQUUsT0FBT0EsTUFBTTtFQUV6QixRQUFBRCxxQkFBQSxHQUFPWCwyQkFBMkIsQ0FBQyxDQUFDLGNBQUFXLHFCQUFBLGNBQUFBLHFCQUFBLEdBQUksU0FBUztBQUNuRDs7QUFFQTtBQUNBLE9BQU8sSUFBTUUsNEJBQTRCLEdBQUc7RUFDMUMsV0FBUyxHQUFHO0VBQ1pDLEtBQUssRUFBRSxHQUFHO0VBQ1ZDLEdBQUcsRUFBRTtBQUNQLENBQVU7O0FBRVY7QUFDQSxPQUFPLElBQU1DLDZCQUE2QixHQUFHO0VBQzNDLFdBQVMsR0FBRztFQUNaRixLQUFLLEVBQUUsR0FBRztFQUNWQyxHQUFHLEVBQUU7QUFDUCxDQUFVOztBQUVWO0FBQ0EsT0FBTyxJQUFNRSw4QkFBOEIsR0FBRyxJQUFJOztBQUVsRDtBQUNBLE9BQU8sSUFBTUMsNEJBQTRCLEdBQUcsSUFBSTs7QUFFaEQ7QUFDQSxPQUFPLFNBQVNDLDJCQUEyQkEsQ0FBQSxFQUFXO0VBQ3BELElBQUksT0FBT2xCLE1BQU0sS0FBSyxXQUFXLEVBQUU7SUFDakMsT0FBT1ksNEJBQTRCLFdBQVE7RUFDN0M7RUFDQSxJQUFNTyxFQUFFLEdBQUduQixNQUFNLENBQUNvQixVQUFVO0VBQzVCLElBQUlELEVBQUUsSUFBSUYsNEJBQTRCLEVBQUU7SUFDdEMsT0FBT0wsNEJBQTRCLENBQUNFLEdBQUc7RUFDekM7RUFDQSxJQUFJSyxFQUFFLElBQUlILDhCQUE4QixFQUFFO0lBQ3hDLE9BQU9KLDRCQUE0QixDQUFDQyxLQUFLO0VBQzNDO0VBQ0EsT0FBT0QsNEJBQTRCLFdBQVE7QUFDN0MiLCJpZ25vcmVMaXN0IjpbXX0=
74
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJNQUlBX0NIQVRfTEFZT1VUX1NUT1JBR0VfS0VZIiwiVkFMSURfTEFZT1VUX01PREVTIiwiaXNNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZSIsInZhbHVlIiwiaW5jbHVkZXMiLCJnZXRTZWN0aW9uRm9yY2VkTGF5b3V0TW9kZSIsImNvbnRleHQiLCJfY29udGV4dCRiYW5uZXJFbnRyeUYiLCJzZWN0aW9uIiwiYmFubmVyRW50cnlGYXEiLCJmYXFUaXRsZSIsInRyaW0iLCJnZXRTdG9yZWRNYWlhQ2hhdExheW91dE1vZGUiLCJ3aW5kb3ciLCJzdG9yZWQiLCJsb2NhbFN0b3JhZ2UiLCJnZXRJdGVtIiwiX3VudXNlZCIsInNldFN0b3JlZE1haWFDaGF0TGF5b3V0TW9kZSIsIm1vZGUiLCJzZXRJdGVtIiwiX3VudXNlZDIiLCJyZXNvbHZlSW5pdGlhbE1haWFDaGF0TGF5b3V0TW9kZSIsIl9nZXRTdG9yZWRNYWlhQ2hhdExheSIsImZvcmNlZCIsIk1BSUFfRkxPQVRJTkdfUEFORUxfV0lEVEhfUFgiLCJsYXJnZSIsInh4bCIsIk1BSUFfRkxPQVRJTkdfUEFORUxfSEVJR0hUX1BYIiwiTUFJQV9GTE9BVElOR19CUkVBS1BPSU5UX0xBUkdFIiwiTUFJQV9GTE9BVElOR19CUkVBS1BPSU5UX1hYTCIsImdldE1haWFGbG9hdGluZ1BhbmVsV2lkdGhQeCIsInZ3IiwiaW5uZXJXaWR0aCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21vbGVjdWxlcy9DaGF0QUlNb2RhbC9sYXlvdXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBTZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vY29udGV4dC9nbG9iYWwtY29udGV4dCdcblxuZXhwb3J0IHR5cGUgTWFpYUNoYXRNb2RhbExheW91dE1vZGUgPSAnc2lkZWJhcicgfCAnZnVsbHNjcmVlbicgfCAnZmxvYXRpbmcnXG5cbmV4cG9ydCBjb25zdCBNQUlBX0NIQVRfTEFZT1VUX1NUT1JBR0VfS0VZID0gJ21haWEtY2hhdC1tb2RhbC1sYXlvdXQtbW9kZSdcblxuY29uc3QgVkFMSURfTEFZT1VUX01PREVTOiBNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZVtdID0gWydzaWRlYmFyJywgJ2Z1bGxzY3JlZW4nLCAnZmxvYXRpbmcnXVxuXG5leHBvcnQgdHlwZSBNYWlhQ2hhdExheW91dE9wZW5Db250ZXh0ID0ge1xuICBzZWN0aW9uOiBTZWN0aW9uXG4gIGJhbm5lckVudHJ5RmFxPzogeyBmYXFUaXRsZT86IHN0cmluZyB8IG51bGwgfSB8IG51bGxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzTWFpYUNoYXRNb2RhbExheW91dE1vZGUodmFsdWU6IHVua25vd24pOiB2YWx1ZSBpcyBNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZSB7XG4gIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIFZBTElEX0xBWU9VVF9NT0RFUy5pbmNsdWRlcyh2YWx1ZSBhcyBNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZSlcbn1cblxuLyoqIExheW91dCBpbXB1ZXN0byBwb3Igc2VjY2nDs24vY29udGV4dG8gZGUgYXBlcnR1cmEgKHByaW9yaWRhZCBzb2JyZSBsb2NhbFN0b3JhZ2UpLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNlY3Rpb25Gb3JjZWRMYXlvdXRNb2RlKGNvbnRleHQ6IE1haWFDaGF0TGF5b3V0T3BlbkNvbnRleHQpOiBNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZSB8IG51bGwge1xuICBpZiAoY29udGV4dC5zZWN0aW9uID09PSAndGFzaycgfHwgY29udGV4dC5zZWN0aW9uID09PSAncGxhbm5lcicpIHJldHVybiAnZmxvYXRpbmcnXG4gIGlmIChjb250ZXh0LmJhbm5lckVudHJ5RmFxPy5mYXFUaXRsZT8udHJpbSgpKSByZXR1cm4gJ2Zsb2F0aW5nJ1xuICByZXR1cm4gbnVsbFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U3RvcmVkTWFpYUNoYXRMYXlvdXRNb2RlKCk6IE1haWFDaGF0TW9kYWxMYXlvdXRNb2RlIHwgbnVsbCB7XG4gIGlmICh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykgcmV0dXJuIG51bGxcblxuICB0cnkge1xuICAgIGNvbnN0IHN0b3JlZCA9IHdpbmRvdy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShNQUlBX0NIQVRfTEFZT1VUX1NUT1JBR0VfS0VZKVxuICAgIHJldHVybiBpc01haWFDaGF0TW9kYWxMYXlvdXRNb2RlKHN0b3JlZCkgPyBzdG9yZWQgOiBudWxsXG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBudWxsXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldFN0b3JlZE1haWFDaGF0TGF5b3V0TW9kZShtb2RlOiBNYWlhQ2hhdE1vZGFsTGF5b3V0TW9kZSk6IHZvaWQge1xuICBpZiAodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcpIHJldHVyblxuXG4gIHRyeSB7XG4gICAgd2luZG93LmxvY2FsU3RvcmFnZS5zZXRJdGVtKE1BSUFfQ0hBVF9MQVlPVVRfU1RPUkFHRV9LRVksIG1vZGUpXG4gIH0gY2F0Y2gge1xuICAgIC8vIElnbm9yYXIgcXVvdGEgZXhjZWVkZWQgbyBtb2RvIHByaXZhZG8uXG4gIH1cbn1cblxuLyoqIFJlc3VlbHZlIGVsIGxheW91dCBpbmljaWFsOiBzZWNjacOzbiBmb3J6YWRhID4gbG9jYWxTdG9yYWdlID4gc2lkZWJhci4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlSW5pdGlhbE1haWFDaGF0TGF5b3V0TW9kZShjb250ZXh0OiBNYWlhQ2hhdExheW91dE9wZW5Db250ZXh0KTogTWFpYUNoYXRNb2RhbExheW91dE1vZGUge1xuICBjb25zdCBmb3JjZWQgPSBnZXRTZWN0aW9uRm9yY2VkTGF5b3V0TW9kZShjb250ZXh0KVxuICBpZiAoZm9yY2VkKSByZXR1cm4gZm9yY2VkXG5cbiAgcmV0dXJuIGdldFN0b3JlZE1haWFDaGF0TGF5b3V0TW9kZSgpID8/ICdzaWRlYmFyJ1xufVxuXG4vKiogQW5jaG8gZGVsIHBhbmVsIGZsb3RhbnRlIGVuIHB4OiBiYXNlIHkgZXNjYWxhZG8gZW4gcGFudGFsbGFzIG11eSBhbmNoYXMgKi9cbmV4cG9ydCBjb25zdCBNQUlBX0ZMT0FUSU5HX1BBTkVMX1dJRFRIX1BYID0ge1xuICBkZWZhdWx0OiA0OTAsXG4gIGxhcmdlOiA2MDAsXG4gIHh4bDogNzIwLFxufSBhcyBjb25zdFxuXG4vKiogQWx0byBkZWwgcGFuZWwgZmxvdGFudGUgZW4gcHg6IGJhc2UgeSBlc2NhbGFkbyBlbiBwYW50YWxsYXMgbXV5IGFuY2hhcyAoZWwgQ1NTIGFwbGljYSBtYXgtaGVpZ2h0OiA4NXZoKSAqL1xuZXhwb3J0IGNvbnN0IE1BSUFfRkxPQVRJTkdfUEFORUxfSEVJR0hUX1BYID0ge1xuICBkZWZhdWx0OiA2MjAsXG4gIGxhcmdlOiA3MjAsXG4gIHh4bDogOTYwLFxufSBhcyBjb25zdFxuXG4vKiogVmlld3BvcnQgbcOtbmltbyAoYW5jaG8pIHBhcmEgdXNhciBtZWRpZGFzIGBsYXJnZWAgKi9cbmV4cG9ydCBjb25zdCBNQUlBX0ZMT0FUSU5HX0JSRUFLUE9JTlRfTEFSR0UgPSAxOTIwXG5cbi8qKiBWaWV3cG9ydCBtw61uaW1vIChhbmNobykgcGFyYSB1c2FyIG1lZGlkYXMgYHh4bGAgKi9cbmV4cG9ydCBjb25zdCBNQUlBX0ZMT0FUSU5HX0JSRUFLUE9JTlRfWFhMID0gMjU2MFxuXG4vKiogQW5jaG8gZWZlY3Rpdm8gZGVsIHBhbmVsIChtaXNtYSBsw7NnaWNhIHF1ZSBsb3MgQG1lZGlhIGRlbCBDU1MpICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0TWFpYUZsb2F0aW5nUGFuZWxXaWR0aFB4KCk6IG51bWJlciB7XG4gIGlmICh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybiBNQUlBX0ZMT0FUSU5HX1BBTkVMX1dJRFRIX1BYLmRlZmF1bHRcbiAgfVxuICBjb25zdCB2dyA9IHdpbmRvdy5pbm5lcldpZHRoXG4gIGlmICh2dyA+PSBNQUlBX0ZMT0FUSU5HX0JSRUFLUE9JTlRfWFhMKSB7XG4gICAgcmV0dXJuIE1BSUFfRkxPQVRJTkdfUEFORUxfV0lEVEhfUFgueHhsXG4gIH1cbiAgaWYgKHZ3ID49IE1BSUFfRkxPQVRJTkdfQlJFQUtQT0lOVF9MQVJHRSkge1xuICAgIHJldHVybiBNQUlBX0ZMT0FUSU5HX1BBTkVMX1dJRFRIX1BYLmxhcmdlXG4gIH1cbiAgcmV0dXJuIE1BSUFfRkxPQVRJTkdfUEFORUxfV0lEVEhfUFguZGVmYXVsdFxufVxuIl0sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLElBQU1BLDRCQUE0QixHQUFHLDZCQUE2QjtBQUV6RSxJQUFNQyxrQkFBNkMsR0FBRyxDQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxDQUFDO0FBTzNGLE9BQU8sU0FBU0MseUJBQXlCQSxDQUFDQyxLQUFjLEVBQW9DO0VBQzFGLE9BQU8sT0FBT0EsS0FBSyxLQUFLLFFBQVEsSUFBSUYsa0JBQWtCLENBQUNHLFFBQVEsQ0FBQ0QsS0FBZ0MsQ0FBQztBQUNuRzs7QUFFQTtBQUNBLE9BQU8sU0FBU0UsMEJBQTBCQSxDQUFDQyxPQUFrQyxFQUFrQztFQUFBLElBQUFDLHFCQUFBO0VBQzdHLElBQUlELE9BQU8sQ0FBQ0UsT0FBTyxLQUFLLE1BQU0sSUFBSUYsT0FBTyxDQUFDRSxPQUFPLEtBQUssU0FBUyxFQUFFLE9BQU8sVUFBVTtFQUNsRixLQUFBRCxxQkFBQSxHQUFJRCxPQUFPLENBQUNHLGNBQWMsY0FBQUYscUJBQUEsZ0JBQUFBLHFCQUFBLEdBQXRCQSxxQkFBQSxDQUF3QkcsUUFBUSxjQUFBSCxxQkFBQSxlQUFoQ0EscUJBQUEsQ0FBa0NJLElBQUksQ0FBQyxDQUFDLEVBQUUsT0FBTyxVQUFVO0VBQy9ELE9BQU8sSUFBSTtBQUNiO0FBRUEsT0FBTyxTQUFTQywyQkFBMkJBLENBQUEsRUFBbUM7RUFDNUUsSUFBSSxPQUFPQyxNQUFNLEtBQUssV0FBVyxFQUFFLE9BQU8sSUFBSTtFQUU5QyxJQUFJO0lBQ0YsSUFBTUMsTUFBTSxHQUFHRCxNQUFNLENBQUNFLFlBQVksQ0FBQ0MsT0FBTyxDQUFDaEIsNEJBQTRCLENBQUM7SUFDeEUsT0FBT0UseUJBQXlCLENBQUNZLE1BQU0sQ0FBQyxHQUFHQSxNQUFNLEdBQUcsSUFBSTtFQUMxRCxDQUFDLENBQUMsT0FBQUcsT0FBQSxFQUFNO0lBQ04sT0FBTyxJQUFJO0VBQ2I7QUFDRjtBQUVBLE9BQU8sU0FBU0MsMkJBQTJCQSxDQUFDQyxJQUE2QixFQUFRO0VBQy9FLElBQUksT0FBT04sTUFBTSxLQUFLLFdBQVcsRUFBRTtFQUVuQyxJQUFJO0lBQ0ZBLE1BQU0sQ0FBQ0UsWUFBWSxDQUFDSyxPQUFPLENBQUNwQiw0QkFBNEIsRUFBRW1CLElBQUksQ0FBQztFQUNqRSxDQUFDLENBQUMsT0FBQUUsUUFBQSxFQUFNO0lBQ047RUFBQTtBQUVKOztBQUVBO0FBQ0EsT0FBTyxTQUFTQyxnQ0FBZ0NBLENBQUNoQixPQUFrQyxFQUEyQjtFQUFBLElBQUFpQixxQkFBQTtFQUM1RyxJQUFNQyxNQUFNLEdBQUduQiwwQkFBMEIsQ0FBQ0MsT0FBTyxDQUFDO0VBQ2xELElBQUlrQixNQUFNLEVBQUUsT0FBT0EsTUFBTTtFQUV6QixRQUFBRCxxQkFBQSxHQUFPWCwyQkFBMkIsQ0FBQyxDQUFDLGNBQUFXLHFCQUFBLGNBQUFBLHFCQUFBLEdBQUksU0FBUztBQUNuRDs7QUFFQTtBQUNBLE9BQU8sSUFBTUUsNEJBQTRCLEdBQUc7RUFDMUMsV0FBUyxHQUFHO0VBQ1pDLEtBQUssRUFBRSxHQUFHO0VBQ1ZDLEdBQUcsRUFBRTtBQUNQLENBQVU7O0FBRVY7QUFDQSxPQUFPLElBQU1DLDZCQUE2QixHQUFHO0VBQzNDLFdBQVMsR0FBRztFQUNaRixLQUFLLEVBQUUsR0FBRztFQUNWQyxHQUFHLEVBQUU7QUFDUCxDQUFVOztBQUVWO0FBQ0EsT0FBTyxJQUFNRSw4QkFBOEIsR0FBRyxJQUFJOztBQUVsRDtBQUNBLE9BQU8sSUFBTUMsNEJBQTRCLEdBQUcsSUFBSTs7QUFFaEQ7QUFDQSxPQUFPLFNBQVNDLDJCQUEyQkEsQ0FBQSxFQUFXO0VBQ3BELElBQUksT0FBT2xCLE1BQU0sS0FBSyxXQUFXLEVBQUU7SUFDakMsT0FBT1ksNEJBQTRCLFdBQVE7RUFDN0M7RUFDQSxJQUFNTyxFQUFFLEdBQUduQixNQUFNLENBQUNvQixVQUFVO0VBQzVCLElBQUlELEVBQUUsSUFBSUYsNEJBQTRCLEVBQUU7SUFDdEMsT0FBT0wsNEJBQTRCLENBQUNFLEdBQUc7RUFDekM7RUFDQSxJQUFJSyxFQUFFLElBQUlILDhCQUE4QixFQUFFO0lBQ3hDLE9BQU9KLDRCQUE0QixDQUFDQyxLQUFLO0VBQzNDO0VBQ0EsT0FBT0QsNEJBQTRCLFdBQVE7QUFDN0MiLCJpZ25vcmVMaXN0IjpbXX0=