@projectcor/maia-components 2.35.6 → 2.36.0

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 (101) hide show
  1. package/README.md +2 -0
  2. package/lib/components/atoms/ActionableButton.js +1 -6
  3. package/lib/components/atoms/ContextMentionChip/buildChipElement.js +12 -1
  4. package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.js +127 -5
  5. package/lib/components/atoms/ContextMentionItem/ContextMentionItem.js +2 -29
  6. package/lib/components/atoms/ContextMentionItem/ContextMentionItem.styles.js +24 -33
  7. package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.js +2 -19
  8. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.js +4 -20
  9. package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.styles.js +7 -18
  10. package/lib/components/atoms/MAIAInput/MAIAInput.js +243 -42
  11. package/lib/components/atoms/MAIAInput/styles.js +41 -44
  12. package/lib/components/atoms/SkillsDropdown/SkillsDropdown.js +208 -0
  13. package/lib/components/atoms/SkillsDropdown/SkillsDropdown.styles.js +77 -0
  14. package/lib/components/atoms/SkillsDropdown/index.js +2 -0
  15. package/lib/components/atoms/icons/PlusIcon.js +29 -0
  16. package/lib/components/atoms/icons/SkillCreatedByIcon.js +20 -0
  17. package/lib/components/atoms/icons/SkillVisibilityEveryoneIcon.js +23 -0
  18. package/lib/components/atoms/icons/SkillVisibilityOnlyMeIcon.js +23 -0
  19. package/lib/components/atoms/icons/SkillsNavIcon.js +4 -7
  20. package/lib/components/atoms/icons/index.js +5 -1
  21. package/lib/components/molecules/ChatAIContent/ChatAIContent.js +5 -3
  22. package/lib/components/molecules/ChatAIHome/ChatAIHome.js +5 -16
  23. package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.js +2 -23
  24. package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.styles.js +5 -33
  25. package/lib/components/molecules/ChatAIHome/styles.js +2 -11
  26. package/lib/components/molecules/ChatAIMessages/ChatAICreateAgentActions.js +20 -31
  27. package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +2 -7
  28. package/lib/components/molecules/ChatAIModal/ChatAIModal.js +61 -21
  29. package/lib/components/molecules/ChatAIModal/ChatAIModal.styles.js +2 -2
  30. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.js +1 -8
  31. package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.styles.js +9 -15
  32. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +3 -14
  33. package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.styles.js +2 -2
  34. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +11 -17
  35. package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.styles.js +5 -14
  36. package/lib/components/molecules/ChatAIModal/layout.js +2 -2
  37. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.js +2 -12
  38. package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.styles.js +3 -3
  39. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.js +334 -272
  40. package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.styles.js +132 -109
  41. package/lib/components/molecules/ChatFooter/ChatFooter.js +57 -63
  42. package/lib/components/molecules/ChatFooter/styles.js +6 -12
  43. package/lib/components/molecules/ContextMentionInput/ContextMentionInput.js +1 -3
  44. package/lib/components/molecules/MessageFeedback/MessageFeedback.js +5 -15
  45. package/lib/components/molecules/Sidebar/Sidebar.js +15 -7
  46. package/lib/components/molecules/Sidebar/Sidebar.layout.styles.js +3 -3
  47. package/lib/components/organisms/AbmAgentModal/AbmAgentModal.js +11 -36
  48. package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.js +26 -38
  49. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.js +430 -209
  50. package/lib/components/organisms/AbmSkillModal/AbmSkillModal.styles.js +131 -74
  51. package/lib/components/organisms/ChatAI/ChatAI.js +1 -6
  52. package/lib/constants/config.js +1 -4
  53. package/lib/constants/permissions/utils.js +3 -3
  54. package/lib/hooks/useChatManager/useChatManager.js +34 -55
  55. package/lib/hooks/useContextMentions.js +96 -56
  56. package/lib/hooks/useEntitySearch.js +92 -278
  57. package/lib/hooks/useEvent.js +15 -2
  58. package/lib/hooks/useMentionAllowedTypes.js +9 -25
  59. package/lib/hooks/useMentionPopover.js +9 -33
  60. package/lib/hooks/useSkillsCatalog.js +66 -0
  61. package/lib/lang/br/index.js +35 -12
  62. package/lib/lang/en/index.js +35 -12
  63. package/lib/lang/es/index.js +36 -13
  64. package/lib/lang/fr/index.js +36 -13
  65. package/lib/services/maia/Chats/getChatsByUserId.js +1 -1
  66. package/lib/services/maia/Orchestrator/orchestrator.js +11 -5
  67. package/lib/services/maia/Skills/createSkill.js +1 -1
  68. package/lib/services/maia/Skills/getSkills.js +70 -40
  69. package/lib/services/maia/Skills/updateSkill.js +1 -1
  70. package/lib/services/maia/index.js +2 -4
  71. package/lib/services/utils/fetchCOR.js +57 -106
  72. package/lib/services/utils/index.js +1 -2
  73. package/lib/store/faqsStore.types.js +1 -1
  74. package/lib/store/index.js +1 -2
  75. package/lib/store/sessions/sessionStreamManager.js +35 -61
  76. package/lib/store/sessions/sessions.types.js +1 -1
  77. package/lib/store/useChatsStore.js +3 -3
  78. package/lib/test/buttonMock.js +22 -0
  79. package/lib/test/fetchPolyfill.js +160 -0
  80. package/lib/test/fileMock.js +2 -0
  81. package/lib/test/global-context.js +49 -0
  82. package/lib/test/iconMock.js +19 -0
  83. package/lib/test/mockFetch.js +49 -0
  84. package/lib/test/portalRoot.js +13 -0
  85. package/lib/test/styleMock.js +2 -0
  86. package/lib/test/test-utils.js +26 -0
  87. package/lib/test/tooltipMock.js +11 -0
  88. package/lib/types/Chat.js +1 -1
  89. package/lib/types/FrequentlyAskedQuestion.js +1 -1
  90. package/lib/types/skill.js +1 -1
  91. package/lib/utils/contextMentionTriggers.js +2 -5
  92. package/lib/utils/renderContextMentions.js +39 -18
  93. package/package.json +9 -6
  94. package/lib/components/molecules/UsageBlockedBanner/UsageBlockedBanner.js +0 -33
  95. package/lib/components/molecules/UsageBlockedBanner/UsageBlockedBanner.styles.js +0 -47
  96. package/lib/components/molecules/UsageBlockedBanner/index.js +0 -2
  97. package/lib/services/maia/Usage/getUsage.js +0 -45
  98. package/lib/services/maia/Usage/index.js +0 -6
  99. package/lib/services/utils/MaiaApiError.js +0 -34
  100. package/lib/store/useUsageStore.js +0 -108
  101. package/lib/types/usage.js +0 -9
@@ -59,99 +59,90 @@ export var SCMITaskRowSurface = styled.div.withConfig({
59
59
  return $active ? 'var(--cor-color-grey-100, #f4f4f4)' : 'transparent';
60
60
  });
61
61
 
62
- /** Superficie de la fila skill: misma estructura que SCMITaskRowSurface pero con hover #f9f9f9. */
63
- export var SCMISkillRowSurface = styled(SCMITaskRowSurface).withConfig({
64
- displayName: "ContextMentionItemstyles__SCMISkillRowSurface",
65
- componentId: "sc-1jfoi4u-10"
66
- })(["background:", ";&:hover{background:#f9f9f9;}"], function (_ref4) {
67
- var $active = _ref4.$active;
68
- return $active ? '#f9f9f9' : 'transparent';
69
- });
70
-
71
62
  /** Fila de tarea: mismo ícono que enlaces de tarea en mensajes del asistente */
72
63
  export var SCMITaskRowInner = styled.div.withConfig({
73
64
  displayName: "ContextMentionItemstyles__SCMITaskRowInner",
74
- componentId: "sc-1jfoi4u-11"
65
+ componentId: "sc-1jfoi4u-10"
75
66
  })(["display:flex;align-items:center;gap:8px;flex:1;min-width:0;width:100%;padding:8px 0;"]);
76
67
 
77
68
  /** Título de tarea + nombre de proyecto en una línea */
78
69
  export var SCMITaskTitleRow = styled.div.withConfig({
79
70
  displayName: "ContextMentionItemstyles__SCMITaskTitleRow",
80
- componentId: "sc-1jfoi4u-12"
71
+ componentId: "sc-1jfoi4u-11"
81
72
  })(["display:flex;align-items:center;gap:8px;flex:1;min-width:0;"]);
82
73
  export var SCMITaskProjectName = styled.span.withConfig({
83
74
  displayName: "ContextMentionItemstyles__SCMITaskProjectName",
84
- componentId: "sc-1jfoi4u-13"
75
+ componentId: "sc-1jfoi4u-12"
85
76
  })(["flex:0 1 auto;max-width:46%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--cor-color-text-tertiary,#808080);font-family:var(--cor-typography-font-family,'Work Sans');font-size:var(--cor-typography-font-size-xs,12px);font-style:normal;font-weight:400;line-height:var(--cor-typography-line-height-20,20px);text-align:right;"]);
86
77
 
87
78
  /** Contenedor del ícono de tarea en la fila de mención. */
88
79
  export var SCMITaskIconWrap = styled.span.withConfig({
89
80
  displayName: "ContextMentionItemstyles__SCMITaskIconWrap",
90
- componentId: "sc-1jfoi4u-14"
81
+ componentId: "sc-1jfoi4u-13"
91
82
  })(["width:20px;height:20px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;"]);
92
83
 
93
84
  /** Contenedor del ícono de subtarea (cor-ui Subtask) en la fila de mención. */
94
85
  export var SCMITaskSubtaskIconWrap = styled.span.withConfig({
95
86
  displayName: "ContextMentionItemstyles__SCMITaskSubtaskIconWrap",
96
- componentId: "sc-1jfoi4u-15"
87
+ componentId: "sc-1jfoi4u-14"
97
88
  })(["flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;"]);
98
89
  export var SCMITaskTitle = styled.div.withConfig({
99
90
  displayName: "ContextMentionItemstyles__SCMITaskTitle",
100
- componentId: "sc-1jfoi4u-16"
91
+ componentId: "sc-1jfoi4u-15"
101
92
  })(["display:block;flex:1 1 0;min-width:0;color:#20201f;font-family:var(--cor-typography-font-family,'Work Sans');font-size:var(--cor-typography-font-size-sm,14px);font-style:normal;font-weight:400;line-height:var(--cor-typography-line-height-20,20px);letter-spacing:var(--cor-typography-letter-spacing-0,0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;"]);
102
93
  export var SCMIBreadcrumb = styled.div.withConfig({
103
94
  displayName: "ContextMentionItemstyles__SCMIBreadcrumb",
104
- componentId: "sc-1jfoi4u-17"
95
+ componentId: "sc-1jfoi4u-16"
105
96
  })(["display:flex;padding-left:4px;align-items:flex-end;gap:var(--cor-space-space-xxs,2px);color:var(--cor-color-text-tertiary,#808080);text-align:center;font-family:var(--cor-typography-font-family,'Work Sans');font-size:var(--cor-typography-font-size-xxs,10px);font-style:normal;font-weight:400;line-height:var(--cor-typography-line-height-12,12px);letter-spacing:var(--cor-typography-letter-spacing-neg1,-1px);"]);
106
97
  export var SCMIBreadcrumbParent = styled.div.withConfig({
107
98
  displayName: "ContextMentionItemstyles__SCMIBreadcrumbParent",
108
- componentId: "sc-1jfoi4u-18"
99
+ componentId: "sc-1jfoi4u-17"
109
100
  })(["display:flex;align-items:flex-start;gap:var(--cor-space-space-xxs,2px);svg{width:12px;height:12px;}"]);
110
101
 
111
102
  /** Fila tipo “pill” para usuarios (directorio): avatar + nombre | posición */
112
103
  export var SCMIRowUser = styled.div.withConfig({
113
104
  displayName: "ContextMentionItemstyles__SCMIRowUser",
114
- componentId: "sc-1jfoi4u-19"
115
- })(["display:flex;padding:4px;align-items:center;gap:8px;align-self:stretch;margin:0 16px;border-radius:4px;background:", ";cursor:pointer;transition:background-color 0.15s ease;&:hover{background:var(--cor-color-grey-100,#f4f4f4);}"], function (_ref5) {
116
- var $active = _ref5.$active;
105
+ componentId: "sc-1jfoi4u-18"
106
+ })(["display:flex;padding:4px;align-items:center;gap:8px;align-self:stretch;margin:0 16px;border-radius:4px;background:", ";cursor:pointer;transition:background-color 0.15s ease;&:hover{background:var(--cor-color-grey-100,#f4f4f4);}"], function (_ref4) {
107
+ var $active = _ref4.$active;
117
108
  return $active ? 'var(--cor-color-grey-100, #f4f4f4)' : 'transparent';
118
109
  });
119
110
  export var SCMUserAvatarWrap = styled.div.withConfig({
120
111
  displayName: "ContextMentionItemstyles__SCMUserAvatarWrap",
121
- componentId: "sc-1jfoi4u-20"
112
+ componentId: "sc-1jfoi4u-19"
122
113
  })(["display:flex;width:24px;height:24px;justify-content:center;align-items:center;flex-shrink:0;"]);
123
114
  export var SCMUserAvatarImg = styled.img.withConfig({
124
115
  displayName: "ContextMentionItemstyles__SCMUserAvatarImg",
125
- componentId: "sc-1jfoi4u-21"
116
+ componentId: "sc-1jfoi4u-20"
126
117
  })(["width:24px;height:24px;flex-shrink:0;border-radius:24px;object-fit:cover;background:lightgray;"]);
127
118
  export var SCMUserAvatarFallback = styled.span.withConfig({
128
119
  displayName: "ContextMentionItemstyles__SCMUserAvatarFallback",
129
- componentId: "sc-1jfoi4u-22"
120
+ componentId: "sc-1jfoi4u-21"
130
121
  })(["display:flex;width:24px;height:24px;flex-shrink:0;align-items:center;justify-content:center;border-radius:24px;background:var(--cor-color-grey-200,#e0e0e0);color:var(--cor-color-text-secondary,#666);font-family:var(--cor-typography-font-family,'Work Sans');font-size:10px;font-weight:600;line-height:1;"]);
131
122
  export var SCMUserInfo = styled.div.withConfig({
132
123
  displayName: "ContextMentionItemstyles__SCMUserInfo",
133
- componentId: "sc-1jfoi4u-23"
124
+ componentId: "sc-1jfoi4u-22"
134
125
  })(["display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;flex:1 0 0;min-width:0;"]);
135
126
  export var SCMUserNamePositionRow = styled.div.withConfig({
136
127
  displayName: "ContextMentionItemstyles__SCMUserNamePositionRow",
137
- componentId: "sc-1jfoi4u-24"
128
+ componentId: "sc-1jfoi4u-23"
138
129
  })(["display:flex;align-items:flex-start;gap:8px;align-self:stretch;min-width:0;"]);
139
130
  export var SCMUserNameCell = styled.div.withConfig({
140
131
  displayName: "ContextMentionItemstyles__SCMUserNameCell",
141
- componentId: "sc-1jfoi4u-25"
142
- })(["display:flex;min-width:0;max-width:55%;padding-right:", ";align-items:flex-start;gap:10px;border-right:", ";"], function (_ref6) {
143
- var $withDivider = _ref6.$withDivider;
132
+ componentId: "sc-1jfoi4u-24"
133
+ })(["display:flex;min-width:0;max-width:55%;padding-right:", ";align-items:flex-start;gap:10px;border-right:", ";"], function (_ref5) {
134
+ var $withDivider = _ref5.$withDivider;
144
135
  return $withDivider ? '8px' : '0';
145
- }, function (_ref7) {
146
- var $withDivider = _ref7.$withDivider;
136
+ }, function (_ref6) {
137
+ var $withDivider = _ref6.$withDivider;
147
138
  return $withDivider ? '1px solid #e0e0e0' : 'none';
148
139
  });
149
140
  export var SCMUserNameText = styled.div.withConfig({
150
141
  displayName: "ContextMentionItemstyles__SCMUserNameText",
151
- componentId: "sc-1jfoi4u-26"
142
+ componentId: "sc-1jfoi4u-25"
152
143
  })(["display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden;color:#20201f;text-overflow:ellipsis;font-family:var(--cor-typography-font-family,'Work Sans');font-size:14px;font-style:normal;font-weight:500;line-height:130%;min-width:0;"]);
153
144
  export var SCMUserPositionText = styled.span.withConfig({
154
145
  displayName: "ContextMentionItemstyles__SCMUserPositionText",
155
- componentId: "sc-1jfoi4u-27"
146
+ componentId: "sc-1jfoi4u-26"
156
147
  })(["flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#666;font-family:var(--cor-typography-font-family,'Work Sans');font-size:var(--cor-typography-font-size-sm,14px);font-style:normal;font-weight:400;line-height:var(--cor-typography-line-height-20,20px);letter-spacing:var(--cor-typography-letter-spacing-0,0);"]);
157
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJTQ01JUm93IiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJfcmVmIiwiJGFjdGl2ZSIsIlNDTUlQcm9qZWN0Um93IiwiU0NNSVByb2plY3RDb250ZW50IiwiX3JlZjIiLCJTQ01JTmFtZSIsIlNDTUlUaXRsZSIsIlNDTUlQcm9qZWN0VGl0bGUiLCJTQ01JVGl0bGVIaWdobGlnaHQiLCJzcGFuIiwiU0NNUHJvamVjdE1ldGFDbGllbnROYW1lIiwiU0NNSVRhc2tSb3dXcmFwIiwiU0NNSVRhc2tSb3dTdXJmYWNlIiwiX3JlZjMiLCJTQ01JU2tpbGxSb3dTdXJmYWNlIiwiX3JlZjQiLCJTQ01JVGFza1Jvd0lubmVyIiwiU0NNSVRhc2tUaXRsZVJvdyIsIlNDTUlUYXNrUHJvamVjdE5hbWUiLCJTQ01JVGFza0ljb25XcmFwIiwiU0NNSVRhc2tTdWJ0YXNrSWNvbldyYXAiLCJTQ01JVGFza1RpdGxlIiwiU0NNSUJyZWFkY3J1bWIiLCJTQ01JQnJlYWRjcnVtYlBhcmVudCIsIlNDTUlSb3dVc2VyIiwiX3JlZjUiLCJTQ01Vc2VyQXZhdGFyV3JhcCIsIlNDTVVzZXJBdmF0YXJJbWciLCJpbWciLCJTQ01Vc2VyQXZhdGFyRmFsbGJhY2siLCJTQ01Vc2VySW5mbyIsIlNDTVVzZXJOYW1lUG9zaXRpb25Sb3ciLCJTQ01Vc2VyTmFtZUNlbGwiLCJfcmVmNiIsIiR3aXRoRGl2aWRlciIsIl9yZWY3IiwiU0NNVXNlck5hbWVUZXh0IiwiU0NNVXNlclBvc2l0aW9uVGV4dCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL0NvbnRleHRNZW50aW9uSXRlbS9Db250ZXh0TWVudGlvbkl0ZW0uc3R5bGVzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJ1xuXG5leHBvcnQgY29uc3QgU0NNSVJvdyA9IHN0eWxlZC5kaXY8eyAkYWN0aXZlPzogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMCAxNnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XG4gIGJhY2tncm91bmQ6ICR7KHsgJGFjdGl2ZSB9KSA9PiAoJGFjdGl2ZSA/ICd2YXIoLS1jb3ItY29sb3ItZ3JleS0xMDAsICNmNGY0ZjQpJyA6ICd0cmFuc3BhcmVudCcpfTtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb3ItY29sb3ItZ3JleS0xMDAsICNmNGY0ZjQpO1xuICB9XG5gXG5cbi8qKiBSb3cgZGUgcHJveWVjdG86IGVsIGhvdmVyL2JhY2tncm91bmQgdml2ZSBlbiBlbCBjb250ZW5lZG9yIGhpam8uICovXG5leHBvcnQgY29uc3QgU0NNSVByb2plY3RSb3cgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAwIDE2cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIGN1cnNvcjogcG9pbnRlcjtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTUlQcm9qZWN0Q29udGVudCA9IHN0eWxlZC5kaXY8eyAkYWN0aXZlPzogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgcGFkZGluZzogMCA0cHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcbiAgYmFja2dyb3VuZDogJHsoeyAkYWN0aXZlIH0pID0+ICgkYWN0aXZlID8gJ3ZhcigtLWNvci1jb2xvci1ncmV5LTEwMCwgI2Y0ZjRmNCknIDogJ3RyYW5zcGFyZW50Jyl9O1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvci1jb2xvci1ncmV5LTEwMCwgI2Y0ZjRmNCk7XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFNDTUlOYW1lID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogOHB4IDA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAycHg7XG4gIGZsZXg6IDE7XG4gIG1pbi13aWR0aDogMDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTUlUaXRsZSA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctbGVmdDogM3B4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogIzIwMjAxZjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtZmFtaWx5LCAnV29yayBTYW5zJyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1zaXplLXNtLCAxNHB4KTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29yLXR5cG9ncmFwaHktbGluZS1oZWlnaHQtMjAsIDIwcHgpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tY29yLXR5cG9ncmFwaHktbGV0dGVyLXNwYWNpbmctMCwgMCk7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5gXG5cbi8qKiBWYXJpYW50ZSBwYXJhIHByb3llY3RvOiBzaW4gcGFkZGluZyBpbnRlcm5vLCBlbCBlc3BhY2lhZG8gaG9yaXpvbnRhbCBsbyBkYSBlbCBwYWRyZSAoU0NNSVJvdykuICovXG5leHBvcnQgY29uc3QgU0NNSVByb2plY3RUaXRsZSA9IHN0eWxlZChTQ01JVGl0bGUpYFxuICBwYWRkaW5nLWxlZnQ6IDA7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01JVGl0bGVIaWdobGlnaHQgPSBzdHlsZWQuc3BhbmBcbiAgY29sb3I6ICM4NzQwYmY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICM4NzQwYmY7XG5gXG5cbi8qKiBGaWxhIHByb3llY3RvOiBub21icmUgZGVsIGNsaWVudGUgKHNlY3VuZGFyaW8pLCBkZWJham8gZWwgdMOtdHVsbyBkZWwgcHJveWVjdG8gKi9cbmV4cG9ydCBjb25zdCBTQ01Qcm9qZWN0TWV0YUNsaWVudE5hbWUgPSBzdHlsZWQuc3BhbmBcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogNHB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjogdmFyKC0tY29yLWNvbG9yLXRleHQtdGVydGlhcnksICM4MDgwODApO1xuICBmb250LWZhbWlseTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1mYW1pbHksICdXb3JrIFNhbnMnKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LXNpemUteHhzLCAxMHB4KTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29yLXR5cG9ncmFwaHktbGluZS1oZWlnaHQtMTIsIDEycHgpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tY29yLXR5cG9ncmFwaHktbGV0dGVyLXNwYWNpbmctbmVnMSwgLTFweCk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5gXG5cbi8qKiBGaWxhIHRhcmVhIChwYWRyZSk6IHNpbiBmb25kbyBlbiBob3ZlcjsgaWd1YWwgcXVlIGBTQ01JUHJvamVjdFJvd2AuICovXG5leHBvcnQgY29uc3QgU0NNSVRhc2tSb3dXcmFwID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMCAxNnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5gXG5cbi8qKiBTdXBlcmZpY2llIGRlIGxhIGZpbGEgdGFyZWE6IGhvdmVyIHkgYWN0aXZvIChoaWpvKSwgY29tbyBgU0NNSVByb2plY3RDb250ZW50YC4gKi9cbmV4cG9ydCBjb25zdCBTQ01JVGFza1Jvd1N1cmZhY2UgPSBzdHlsZWQuZGl2PHsgJGFjdGl2ZT86IGJvb2xlYW4gfT5gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBhZGRpbmc6IDAgNHB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XG4gIGJhY2tncm91bmQ6ICR7KHsgJGFjdGl2ZSB9KSA9PiAoJGFjdGl2ZSA/ICd2YXIoLS1jb3ItY29sb3ItZ3JleS0xMDAsICNmNGY0ZjQpJyA6ICd0cmFuc3BhcmVudCcpfTtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb3ItY29sb3ItZ3JleS0xMDAsICNmNGY0ZjQpO1xuICB9XG5gXG5cbi8qKiBTdXBlcmZpY2llIGRlIGxhIGZpbGEgc2tpbGw6IG1pc21hIGVzdHJ1Y3R1cmEgcXVlIFNDTUlUYXNrUm93U3VyZmFjZSBwZXJvIGNvbiBob3ZlciAjZjlmOWY5LiAqL1xuZXhwb3J0IGNvbnN0IFNDTUlTa2lsbFJvd1N1cmZhY2UgPSBzdHlsZWQoU0NNSVRhc2tSb3dTdXJmYWNlKWBcbiAgYmFja2dyb3VuZDogJHsoeyAkYWN0aXZlIH0pID0+ICgkYWN0aXZlID8gJyNmOWY5ZjknIDogJ3RyYW5zcGFyZW50Jyl9O1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmOWY5Zjk7XG4gIH1cbmBcblxuLyoqIEZpbGEgZGUgdGFyZWE6IG1pc21vIMOtY29ubyBxdWUgZW5sYWNlcyBkZSB0YXJlYSBlbiBtZW5zYWplcyBkZWwgYXNpc3RlbnRlICovXG5leHBvcnQgY29uc3QgU0NNSVRhc2tSb3dJbm5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogOHB4O1xuICBmbGV4OiAxO1xuICBtaW4td2lkdGg6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA4cHggMDtcbmBcblxuLyoqIFTDrXR1bG8gZGUgdGFyZWEgKyBub21icmUgZGUgcHJveWVjdG8gZW4gdW5hIGzDrW5lYSAqL1xuZXhwb3J0IGNvbnN0IFNDTUlUYXNrVGl0bGVSb3cgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDhweDtcbiAgZmxleDogMTtcbiAgbWluLXdpZHRoOiAwO1xuYFxuXG5leHBvcnQgY29uc3QgU0NNSVRhc2tQcm9qZWN0TmFtZSA9IHN0eWxlZC5zcGFuYFxuICBmbGV4OiAwIDEgYXV0bztcbiAgbWF4LXdpZHRoOiA0NiU7XG4gIG1pbi13aWR0aDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNvbG9yOiB2YXIoLS1jb3ItY29sb3ItdGV4dC10ZXJ0aWFyeSwgIzgwODA4MCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LWZhbWlseSwgJ1dvcmsgU2FucycpO1xuICBmb250LXNpemU6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtc2l6ZS14cywgMTJweCk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWNvci10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0LTIwLCAyMHB4KTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5gXG5cbi8qKiBDb250ZW5lZG9yIGRlbCDDrWNvbm8gZGUgdGFyZWEgZW4gbGEgZmlsYSBkZSBtZW5jacOzbi4gKi9cbmV4cG9ydCBjb25zdCBTQ01JVGFza0ljb25XcmFwID0gc3R5bGVkLnNwYW5gXG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5gXG5cbi8qKiBDb250ZW5lZG9yIGRlbCDDrWNvbm8gZGUgc3VidGFyZWEgKGNvci11aSBTdWJ0YXNrKSBlbiBsYSBmaWxhIGRlIG1lbmNpw7NuLiAqL1xuZXhwb3J0IGNvbnN0IFNDTUlUYXNrU3VidGFza0ljb25XcmFwID0gc3R5bGVkLnNwYW5gXG4gIGZsZXgtc2hyaW5rOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01JVGFza1RpdGxlID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXg6IDEgMSAwO1xuICBtaW4td2lkdGg6IDA7XG4gIGNvbG9yOiAjMjAyMDFmO1xuICBmb250LWZhbWlseTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1mYW1pbHksICdXb3JrIFNhbnMnKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LXNpemUtc20sIDE0cHgpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1saW5lLWhlaWdodC0yMCwgMjBweCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1sZXR0ZXItc3BhY2luZy0wLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01JQnJlYWRjcnVtYiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctbGVmdDogNHB4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIGdhcDogdmFyKC0tY29yLXNwYWNlLXNwYWNlLXh4cywgMnB4KTtcbiAgY29sb3I6IHZhcigtLWNvci1jb2xvci10ZXh0LXRlcnRpYXJ5LCAjODA4MDgwKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LWZhbWlseTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1mYW1pbHksICdXb3JrIFNhbnMnKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LXNpemUteHhzLCAxMHB4KTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29yLXR5cG9ncmFwaHktbGluZS1oZWlnaHQtMTIsIDEycHgpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tY29yLXR5cG9ncmFwaHktbGV0dGVyLXNwYWNpbmctbmVnMSwgLTFweCk7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01JQnJlYWRjcnVtYlBhcmVudCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IHZhcigtLWNvci1zcGFjZS1zcGFjZS14eHMsIDJweCk7XG5cbiAgc3ZnIHtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gIH1cbmBcblxuLyoqIEZpbGEgdGlwbyDigJxwaWxs4oCdIHBhcmEgdXN1YXJpb3MgKGRpcmVjdG9yaW8pOiBhdmF0YXIgKyBub21icmUgfCBwb3NpY2nDs24gKi9cbmV4cG9ydCBjb25zdCBTQ01JUm93VXNlciA9IHN0eWxlZC5kaXY8eyAkYWN0aXZlPzogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogNHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDhweDtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgbWFyZ2luOiAwIDE2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZDogJHsoeyAkYWN0aXZlIH0pID0+ICgkYWN0aXZlID8gJ3ZhcigtLWNvci1jb2xvci1ncmV5LTEwMCwgI2Y0ZjRmNCknIDogJ3RyYW5zcGFyZW50Jyl9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb3ItY29sb3ItZ3JleS0xMDAsICNmNGY0ZjQpO1xuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01Vc2VyQXZhdGFyV3JhcCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXNocmluazogMDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTVVzZXJBdmF0YXJJbWcgPSBzdHlsZWQuaW1nYFxuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBmbGV4LXNocmluazogMDtcbiAgYm9yZGVyLXJhZGl1czogMjRweDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJhY2tncm91bmQ6IGxpZ2h0Z3JheTtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTVVzZXJBdmF0YXJGYWxsYmFjayA9IHN0eWxlZC5zcGFuYFxuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBmbGV4LXNocmluazogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvci1jb2xvci1ncmV5LTIwMCwgI2UwZTBlMCk7XG4gIGNvbG9yOiB2YXIoLS1jb3ItY29sb3ItdGV4dC1zZWNvbmRhcnksICM2NjYpO1xuICBmb250LWZhbWlseTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1mYW1pbHksICdXb3JrIFNhbnMnKTtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMTtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTVVzZXJJbmZvID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IDRweDtcbiAgZmxleDogMSAwIDA7XG4gIG1pbi13aWR0aDogMDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTVVzZXJOYW1lUG9zaXRpb25Sb3cgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiA4cHg7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIG1pbi13aWR0aDogMDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTVVzZXJOYW1lQ2VsbCA9IHN0eWxlZC5kaXY8eyAkd2l0aERpdmlkZXI/OiBib29sZWFuIH0+YFxuICBkaXNwbGF5OiBmbGV4O1xuICBtaW4td2lkdGg6IDA7XG4gIG1heC13aWR0aDogNTUlO1xuICBwYWRkaW5nLXJpZ2h0OiAkeyh7ICR3aXRoRGl2aWRlciB9KSA9PiAoJHdpdGhEaXZpZGVyID8gJzhweCcgOiAnMCcpfTtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGdhcDogMTBweDtcbiAgYm9yZGVyLXJpZ2h0OiAkeyh7ICR3aXRoRGl2aWRlciB9KSA9PiAoJHdpdGhEaXZpZGVyID8gJzFweCBzb2xpZCAjZTBlMGUwJyA6ICdub25lJyl9O1xuYFxuXG5leHBvcnQgY29uc3QgU0NNVXNlck5hbWVUZXh0ID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtbGluZS1jbGFtcDogMTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICMyMDIwMWY7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBmb250LWZhbWlseTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1mYW1pbHksICdXb3JrIFNhbnMnKTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxMzAlO1xuICBtaW4td2lkdGg6IDA7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01Vc2VyUG9zaXRpb25UZXh0ID0gc3R5bGVkLnNwYW5gXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBtaW4td2lkdGg6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtZmFtaWx5LCAnV29yayBTYW5zJyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1zaXplLXNtLCAxNHB4KTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29yLXR5cG9ncmFwaHktbGluZS1oZWlnaHQtMjAsIDIwcHgpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tY29yLXR5cG9ncmFwaHktbGV0dGVyLXNwYWNpbmctMCwgMCk7XG5gXG4iXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLE1BQU0sTUFBTSxtQkFBbUI7QUFFdEMsT0FBTyxJQUFNQyxPQUFPLEdBQUdELE1BQU0sQ0FBQ0UsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHVQQVNqQixVQUFBQyxJQUFBO0VBQUEsSUFBR0MsT0FBTyxHQUFBRCxJQUFBLENBQVBDLE9BQU87RUFBQSxPQUFRQSxPQUFPLEdBQUcsb0NBQW9DLEdBQUcsYUFBYTtBQUFBLENBQUMsQ0FLaEc7O0FBRUQ7QUFDQSxPQUFPLElBQU1DLGNBQWMsR0FBR1IsTUFBTSxDQUFDRSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEseUZBTXZDO0FBRUQsT0FBTyxJQUFNSSxrQkFBa0IsR0FBR1QsTUFBTSxDQUFDRSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsaU1BTzVCLFVBQUFLLEtBQUE7RUFBQSxJQUFHSCxPQUFPLEdBQUFHLEtBQUEsQ0FBUEgsT0FBTztFQUFBLE9BQVFBLE9BQU8sR0FBRyxvQ0FBb0MsR0FBRyxhQUFhO0FBQUEsQ0FBQyxDQUtoRztBQUVELE9BQU8sSUFBTUksUUFBUSxHQUFHWCxNQUFNLENBQUNFLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxrSUFTakM7QUFFRCxPQUFPLElBQU1PLFNBQVMsR0FBR1osTUFBTSxDQUFDRSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsNFlBZWxDOztBQUVEO0FBQ0EsT0FBTyxJQUFNUSxnQkFBZ0IsR0FBR2IsTUFBTSxDQUFDWSxTQUFTLENBQUMsQ0FBQVQsVUFB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
148
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJTQ01JUm93IiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJfcmVmIiwiJGFjdGl2ZSIsIlNDTUlQcm9qZWN0Um93IiwiU0NNSVByb2plY3RDb250ZW50IiwiX3JlZjIiLCJTQ01JTmFtZSIsIlNDTUlUaXRsZSIsIlNDTUlQcm9qZWN0VGl0bGUiLCJTQ01JVGl0bGVIaWdobGlnaHQiLCJzcGFuIiwiU0NNUHJvamVjdE1ldGFDbGllbnROYW1lIiwiU0NNSVRhc2tSb3dXcmFwIiwiU0NNSVRhc2tSb3dTdXJmYWNlIiwiX3JlZjMiLCJTQ01JVGFza1Jvd0lubmVyIiwiU0NNSVRhc2tUaXRsZVJvdyIsIlNDTUlUYXNrUHJvamVjdE5hbWUiLCJTQ01JVGFza0ljb25XcmFwIiwiU0NNSVRhc2tTdWJ0YXNrSWNvbldyYXAiLCJTQ01JVGFza1RpdGxlIiwiU0NNSUJyZWFkY3J1bWIiLCJTQ01JQnJlYWRjcnVtYlBhcmVudCIsIlNDTUlSb3dVc2VyIiwiX3JlZjQiLCJTQ01Vc2VyQXZhdGFyV3JhcCIsIlNDTVVzZXJBdmF0YXJJbWciLCJpbWciLCJTQ01Vc2VyQXZhdGFyRmFsbGJhY2siLCJTQ01Vc2VySW5mbyIsIlNDTVVzZXJOYW1lUG9zaXRpb25Sb3ciLCJTQ01Vc2VyTmFtZUNlbGwiLCJfcmVmNSIsIiR3aXRoRGl2aWRlciIsIl9yZWY2IiwiU0NNVXNlck5hbWVUZXh0IiwiU0NNVXNlclBvc2l0aW9uVGV4dCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL0NvbnRleHRNZW50aW9uSXRlbS9Db250ZXh0TWVudGlvbkl0ZW0uc3R5bGVzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJ1xuXG5leHBvcnQgY29uc3QgU0NNSVJvdyA9IHN0eWxlZC5kaXY8eyAkYWN0aXZlPzogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMCAxNnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XG4gIGJhY2tncm91bmQ6ICR7KHsgJGFjdGl2ZSB9KSA9PiAoJGFjdGl2ZSA/ICd2YXIoLS1jb3ItY29sb3ItZ3JleS0xMDAsICNmNGY0ZjQpJyA6ICd0cmFuc3BhcmVudCcpfTtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb3ItY29sb3ItZ3JleS0xMDAsICNmNGY0ZjQpO1xuICB9XG5gXG5cbi8qKiBSb3cgZGUgcHJveWVjdG86IGVsIGhvdmVyL2JhY2tncm91bmQgdml2ZSBlbiBlbCBjb250ZW5lZG9yIGhpam8uICovXG5leHBvcnQgY29uc3QgU0NNSVByb2plY3RSb3cgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAwIDE2cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIGN1cnNvcjogcG9pbnRlcjtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTUlQcm9qZWN0Q29udGVudCA9IHN0eWxlZC5kaXY8eyAkYWN0aXZlPzogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgcGFkZGluZzogMCA0cHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcbiAgYmFja2dyb3VuZDogJHsoeyAkYWN0aXZlIH0pID0+ICgkYWN0aXZlID8gJ3ZhcigtLWNvci1jb2xvci1ncmV5LTEwMCwgI2Y0ZjRmNCknIDogJ3RyYW5zcGFyZW50Jyl9O1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvci1jb2xvci1ncmV5LTEwMCwgI2Y0ZjRmNCk7XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFNDTUlOYW1lID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogOHB4IDA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAycHg7XG4gIGZsZXg6IDE7XG4gIG1pbi13aWR0aDogMDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTUlUaXRsZSA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctbGVmdDogM3B4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogIzIwMjAxZjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtZmFtaWx5LCAnV29yayBTYW5zJyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1zaXplLXNtLCAxNHB4KTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29yLXR5cG9ncmFwaHktbGluZS1oZWlnaHQtMjAsIDIwcHgpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tY29yLXR5cG9ncmFwaHktbGV0dGVyLXNwYWNpbmctMCwgMCk7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5gXG5cbi8qKiBWYXJpYW50ZSBwYXJhIHByb3llY3RvOiBzaW4gcGFkZGluZyBpbnRlcm5vLCBlbCBlc3BhY2lhZG8gaG9yaXpvbnRhbCBsbyBkYSBlbCBwYWRyZSAoU0NNSVJvdykuICovXG5leHBvcnQgY29uc3QgU0NNSVByb2plY3RUaXRsZSA9IHN0eWxlZChTQ01JVGl0bGUpYFxuICBwYWRkaW5nLWxlZnQ6IDA7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01JVGl0bGVIaWdobGlnaHQgPSBzdHlsZWQuc3BhbmBcbiAgY29sb3I6ICM4NzQwYmY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICM4NzQwYmY7XG5gXG5cbi8qKiBGaWxhIHByb3llY3RvOiBub21icmUgZGVsIGNsaWVudGUgKHNlY3VuZGFyaW8pLCBkZWJham8gZWwgdMOtdHVsbyBkZWwgcHJveWVjdG8gKi9cbmV4cG9ydCBjb25zdCBTQ01Qcm9qZWN0TWV0YUNsaWVudE5hbWUgPSBzdHlsZWQuc3BhbmBcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogNHB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjogdmFyKC0tY29yLWNvbG9yLXRleHQtdGVydGlhcnksICM4MDgwODApO1xuICBmb250LWZhbWlseTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1mYW1pbHksICdXb3JrIFNhbnMnKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LXNpemUteHhzLCAxMHB4KTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29yLXR5cG9ncmFwaHktbGluZS1oZWlnaHQtMTIsIDEycHgpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tY29yLXR5cG9ncmFwaHktbGV0dGVyLXNwYWNpbmctbmVnMSwgLTFweCk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5gXG5cbi8qKiBGaWxhIHRhcmVhIChwYWRyZSk6IHNpbiBmb25kbyBlbiBob3ZlcjsgaWd1YWwgcXVlIGBTQ01JUHJvamVjdFJvd2AuICovXG5leHBvcnQgY29uc3QgU0NNSVRhc2tSb3dXcmFwID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMCAxNnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5gXG5cbi8qKiBTdXBlcmZpY2llIGRlIGxhIGZpbGEgdGFyZWE6IGhvdmVyIHkgYWN0aXZvIChoaWpvKSwgY29tbyBgU0NNSVByb2plY3RDb250ZW50YC4gKi9cbmV4cG9ydCBjb25zdCBTQ01JVGFza1Jvd1N1cmZhY2UgPSBzdHlsZWQuZGl2PHsgJGFjdGl2ZT86IGJvb2xlYW4gfT5gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBhZGRpbmc6IDAgNHB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XG4gIGJhY2tncm91bmQ6ICR7KHsgJGFjdGl2ZSB9KSA9PiAoJGFjdGl2ZSA/ICd2YXIoLS1jb3ItY29sb3ItZ3JleS0xMDAsICNmNGY0ZjQpJyA6ICd0cmFuc3BhcmVudCcpfTtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb3ItY29sb3ItZ3JleS0xMDAsICNmNGY0ZjQpO1xuICB9XG5gXG5cbi8qKiBGaWxhIGRlIHRhcmVhOiBtaXNtbyDDrWNvbm8gcXVlIGVubGFjZXMgZGUgdGFyZWEgZW4gbWVuc2FqZXMgZGVsIGFzaXN0ZW50ZSAqL1xuZXhwb3J0IGNvbnN0IFNDTUlUYXNrUm93SW5uZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDhweDtcbiAgZmxleDogMTtcbiAgbWluLXdpZHRoOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogOHB4IDA7XG5gXG5cbi8qKiBUw610dWxvIGRlIHRhcmVhICsgbm9tYnJlIGRlIHByb3llY3RvIGVuIHVuYSBsw61uZWEgKi9cbmV4cG9ydCBjb25zdCBTQ01JVGFza1RpdGxlUm93ID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA4cHg7XG4gIGZsZXg6IDE7XG4gIG1pbi13aWR0aDogMDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTUlUYXNrUHJvamVjdE5hbWUgPSBzdHlsZWQuc3BhbmBcbiAgZmxleDogMCAxIGF1dG87XG4gIG1heC13aWR0aDogNDYlO1xuICBtaW4td2lkdGg6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjogdmFyKC0tY29yLWNvbG9yLXRleHQtdGVydGlhcnksICM4MDgwODApO1xuICBmb250LWZhbWlseTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1mYW1pbHksICdXb3JrIFNhbnMnKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LXNpemUteHMsIDEycHgpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1saW5lLWhlaWdodC0yMCwgMjBweCk7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuYFxuXG4vKiogQ29udGVuZWRvciBkZWwgw61jb25vIGRlIHRhcmVhIGVuIGxhIGZpbGEgZGUgbWVuY2nDs24uICovXG5leHBvcnQgY29uc3QgU0NNSVRhc2tJY29uV3JhcCA9IHN0eWxlZC5zcGFuYFxuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBmbGV4LXNocmluazogMDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuYFxuXG4vKiogQ29udGVuZWRvciBkZWwgw61jb25vIGRlIHN1YnRhcmVhIChjb3ItdWkgU3VidGFzaykgZW4gbGEgZmlsYSBkZSBtZW5jacOzbi4gKi9cbmV4cG9ydCBjb25zdCBTQ01JVGFza1N1YnRhc2tJY29uV3JhcCA9IHN0eWxlZC5zcGFuYFxuICBmbGV4LXNocmluazogMDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuYFxuXG5leHBvcnQgY29uc3QgU0NNSVRhc2tUaXRsZSA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4OiAxIDEgMDtcbiAgbWluLXdpZHRoOiAwO1xuICBjb2xvcjogIzIwMjAxZjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtZmFtaWx5LCAnV29yayBTYW5zJyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1zaXplLXNtLCAxNHB4KTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29yLXR5cG9ncmFwaHktbGluZS1oZWlnaHQtMjAsIDIwcHgpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tY29yLXR5cG9ncmFwaHktbGV0dGVyLXNwYWNpbmctMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuYFxuXG5leHBvcnQgY29uc3QgU0NNSUJyZWFkY3J1bWIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBnYXA6IHZhcigtLWNvci1zcGFjZS1zcGFjZS14eHMsIDJweCk7XG4gIGNvbG9yOiB2YXIoLS1jb3ItY29sb3ItdGV4dC10ZXJ0aWFyeSwgIzgwODA4MCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtZmFtaWx5LCAnV29yayBTYW5zJyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY29yLXR5cG9ncmFwaHktZm9udC1zaXplLXh4cywgMTBweCk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWNvci10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0LTEyLCAxMnB4KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWNvci10eXBvZ3JhcGh5LWxldHRlci1zcGFjaW5nLW5lZzEsIC0xcHgpO1xuYFxuXG5leHBvcnQgY29uc3QgU0NNSUJyZWFkY3J1bWJQYXJlbnQgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiB2YXIoLS1jb3Itc3BhY2Utc3BhY2UteHhzLCAycHgpO1xuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICB9XG5gXG5cbi8qKiBGaWxhIHRpcG8g4oCccGlsbOKAnSBwYXJhIHVzdWFyaW9zIChkaXJlY3RvcmlvKTogYXZhdGFyICsgbm9tYnJlIHwgcG9zaWNpw7NuICovXG5leHBvcnQgY29uc3QgU0NNSVJvd1VzZXIgPSBzdHlsZWQuZGl2PHsgJGFjdGl2ZT86IGJvb2xlYW4gfT5gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDRweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA4cHg7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIG1hcmdpbjogMCAxNnB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJhY2tncm91bmQ6ICR7KHsgJGFjdGl2ZSB9KSA9PiAoJGFjdGl2ZSA/ICd2YXIoLS1jb3ItY29sb3ItZ3JleS0xMDAsICNmNGY0ZjQpJyA6ICd0cmFuc3BhcmVudCcpfTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29yLWNvbG9yLWdyZXktMTAwLCAjZjRmNGY0KTtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NNVXNlckF2YXRhcldyYXAgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1zaHJpbms6IDA7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01Vc2VyQXZhdGFySW1nID0gc3R5bGVkLmltZ2BcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBiYWNrZ3JvdW5kOiBsaWdodGdyYXk7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01Vc2VyQXZhdGFyRmFsbGJhY2sgPSBzdHlsZWQuc3BhbmBcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAyNHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb3ItY29sb3ItZ3JleS0yMDAsICNlMGUwZTApO1xuICBjb2xvcjogdmFyKC0tY29yLWNvbG9yLXRleHQtc2Vjb25kYXJ5LCAjNjY2KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtZmFtaWx5LCAnV29yayBTYW5zJyk7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01Vc2VySW5mbyA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiA0cHg7XG4gIGZsZXg6IDEgMCAwO1xuICBtaW4td2lkdGg6IDA7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01Vc2VyTmFtZVBvc2l0aW9uUm93ID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGdhcDogOHB4O1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBtaW4td2lkdGg6IDA7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01Vc2VyTmFtZUNlbGwgPSBzdHlsZWQuZGl2PHsgJHdpdGhEaXZpZGVyPzogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLXdpZHRoOiAwO1xuICBtYXgtd2lkdGg6IDU1JTtcbiAgcGFkZGluZy1yaWdodDogJHsoeyAkd2l0aERpdmlkZXIgfSkgPT4gKCR3aXRoRGl2aWRlciA/ICc4cHgnIDogJzAnKX07XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IDEwcHg7XG4gIGJvcmRlci1yaWdodDogJHsoeyAkd2l0aERpdmlkZXIgfSkgPT4gKCR3aXRoRGl2aWRlciA/ICcxcHggc29saWQgI2UwZTBlMCcgOiAnbm9uZScpfTtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTVVzZXJOYW1lVGV4dCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWxpbmUtY2xhbXA6IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAjMjAyMDFmO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtZmFtaWx5LCAnV29yayBTYW5zJyk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTMwJTtcbiAgbWluLXdpZHRoOiAwO1xuYFxuXG5leHBvcnQgY29uc3QgU0NNVXNlclBvc2l0aW9uVGV4dCA9IHN0eWxlZC5zcGFuYFxuICBmbGV4OiAxIDEgYXV0bztcbiAgbWluLXdpZHRoOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1jb3ItdHlwb2dyYXBoeS1mb250LWZhbWlseSwgJ1dvcmsgU2FucycpO1xuICBmb250LXNpemU6IHZhcigtLWNvci10eXBvZ3JhcGh5LWZvbnQtc2l6ZS1zbSwgMTRweCk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWNvci10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0LTIwLCAyMHB4KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWNvci10eXBvZ3JhcGh5LWxldHRlci1zcGFjaW5nLTAsIDApO1xuYFxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxNQUFNLE1BQU0sbUJBQW1CO0FBRXRDLE9BQU8sSUFBTUMsT0FBTyxHQUFHRCxNQUFNLENBQUNFLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSx1UEFTakIsVUFBQUMsSUFBQTtFQUFBLElBQUdDLE9BQU8sR0FBQUQsSUFBQSxDQUFQQyxPQUFPO0VB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
@@ -5,7 +5,6 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
5
5
  import { forwardRef, useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState } from 'react';
6
6
  import { InformationCircle } from '@projectcor/icons/lib/components/InformationCircle';
7
7
  import { Tooltip } from '@projectcor/tooltipv2/lib/components/Tooltip';
8
- import { SKILLS_SEARCH_MIN_QUERY_LENGTH } from '../../../constants/config';
9
8
  import { useT } from '../../../hooks/useT';
10
9
  import { getMentionTabPrefix } from '../../../utils/contextMentionTriggers';
11
10
  import { ContextMentionItem } from '../ContextMentionItem';
@@ -36,8 +35,6 @@ export var ContextMentionPopover = /*#__PURE__*/forwardRef(function (_ref, ref)
36
35
  loading = _ref.loading,
37
36
  error = _ref.error,
38
37
  hideRecentsLabel = _ref.hideRecentsLabel,
39
- _ref$skillsCatalogEmp = _ref.skillsCatalogEmpty,
40
- skillsCatalogEmpty = _ref$skillsCatalogEmp === void 0 ? false : _ref$skillsCatalogEmp,
41
38
  hasMore = _ref.hasMore,
42
39
  isLoadingMore = _ref.isLoadingMore,
43
40
  onReachListEnd = _ref.onReachListEnd,
@@ -148,14 +145,6 @@ export var ContextMentionPopover = /*#__PURE__*/forwardRef(function (_ref, ref)
148
145
  }
149
146
  }, [items, activeIndex, updateActiveIndex, onItemSelected, onRequestClose]);
150
147
  var emptyMessage = useMemo(function () {
151
- if (activeType === 'skill') {
152
- if (searchValue.trim()) {
153
- return t('contextMention.empty.skillWithQuery', {
154
- query: searchValue
155
- });
156
- }
157
- return t('contextMention.empty.skillNoItems');
158
- }
159
148
  if (searchValue.trim()) {
160
149
  return t('contextMention.empty.withQuery', {
161
150
  query: searchValue,
@@ -165,8 +154,7 @@ export var ContextMentionPopover = /*#__PURE__*/forwardRef(function (_ref, ref)
165
154
  return t('contextMention.empty.recents', {
166
155
  defaultValue: 'Empezá a escribir para buscar'
167
156
  });
168
- }, [activeType, searchValue, t]);
169
- var skillQueryTooShort = activeType === 'skill' && !skillsCatalogEmpty && searchValue.trim().length > 0 && searchValue.trim().length < SKILLS_SEARCH_MIN_QUERY_LENGTH;
157
+ }, [searchValue, t]);
170
158
  var renderBody = function renderBody() {
171
159
  if (loading) {
172
160
  return /*#__PURE__*/_jsx(SCMPStateWrapper, {
@@ -182,11 +170,6 @@ export var ContextMentionPopover = /*#__PURE__*/forwardRef(function (_ref, ref)
182
170
  })
183
171
  });
184
172
  }
185
- if (skillQueryTooShort) {
186
- return /*#__PURE__*/_jsx(SCMPStateWrapper, {
187
- children: t('contextMention.skillQueryTooShort')
188
- });
189
- }
190
173
  if (items.length === 0) {
191
174
  return /*#__PURE__*/_jsx(SCMPStateWrapper, {
192
175
  children: emptyMessage
@@ -304,4 +287,4 @@ export var ContextMentionPopover = /*#__PURE__*/forwardRef(function (_ref, ref)
304
287
  });
305
288
  });
306
289
  ContextMentionPopover.displayName = 'ContextMentionPopover';
307
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmb3J3YXJkUmVmIiwidXNlQ2FsbGJhY2siLCJ1c2VFZmZlY3QiLCJ1c2VMYXlvdXRFZmZlY3QiLCJ1c2VNZW1vIiwidXNlUmVmIiwidXNlU3RhdGUiLCJJbmZvcm1hdGlvbkNpcmNsZSIsIlRvb2x0aXAiLCJTS0lMTFNfU0VBUkNIX01JTl9RVUVSWV9MRU5HVEgiLCJ1c2VUIiwiZ2V0TWVudGlvblRhYlByZWZpeCIsIkNvbnRleHRNZW50aW9uSXRlbSIsIkxvYWRlciIsIlNDTVBDb250YWluZXIiLCJTQ01QRGl2aWRlciIsIlNDTVBEaXZpZGVyV3JhcHBlciIsIlNDTVBSZWNlbnRzTGFiZWwiLCJTQ01QUmVjZW50c1JvdyIsIlNDTVBSZWNlbnRzVGl0bGUiLCJTQ01QTGlzdCIsIlNDTVBTdGF0ZVdyYXBwZXIiLCJTQ01QS2V5Ym9hcmRIaW50IiwiU0NNUFRhYiIsIlNDTVBUYWJzRmFkZSIsIlNDTVBUYWJzR3JvdXAiLCJTQ01QVGFic1JvdyIsIlNDTVBUYWJzU2Nyb2xsV3JhcCIsIlNDTVBMb2FkTW9yZVJvdyIsIlNDTVBTZWFyY2hSb3ciLCJTQ01QU2VhcmNoSW5wdXQiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiVEFCX0kxOE5fS0VZUyIsImNsaWVudCIsInByb2plY3QiLCJ0YXNrIiwidXNlciIsIm1jcCIsInNraWxsIiwiVEFCX0ZBTExCQUNLUyIsIkNvbnRleHRNZW50aW9uUG9wb3ZlciIsIl9yZWYiLCJyZWYiLCJhbGxvd2VkVHlwZXMiLCJhY3RpdmVUeXBlIiwib25UeXBlQ2hhbmdlIiwiaXRlbXMiLCJsb2FkaW5nIiwiZXJyb3IiLCJoaWRlUmVjZW50c0xhYmVsIiwiX3JlZiRza2lsbHNDYXRhbG9nRW1wIiwic2tpbGxzQ2F0YWxvZ0VtcHR5IiwiaGFzTW9yZSIsImlzTG9hZGluZ01vcmUiLCJvblJlYWNoTGlzdEVuZCIsInNlYXJjaFZhbHVlIiwib25JdGVtU2VsZWN0ZWQiLCJjb250cm9sbGVkSW5kZXgiLCJhY3RpdmVJbmRleCIsIm9uQWN0aXZlSW5kZXhDaGFuZ2UiLCJpc0tleWJvYXJkTmF2QWN0aXZlIiwib25Nb3VzZU1vdmVJbkxpc3QiLCJzdHlsZSIsImtleWJvYXJkSGludCIsInNob3dTZWFyY2hJbnB1dCIsInNlYXJjaFBsYWNlaG9sZGVyIiwib25TZWFyY2hDaGFuZ2UiLCJvblJlcXVlc3RDbG9zZSIsImhpZGVUYWJQcmVmaXgiLCJ0b29sdGlwWkluZGV4IiwiX3VzZVQiLCJ0IiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwiaW50ZXJuYWxJbmRleCIsInNldEludGVybmFsSW5kZXgiLCJsaXN0UmVmIiwidGFic1Njcm9sbFJlZiIsIl91c2VTdGF0ZTMiLCJsZWZ0IiwicmlnaHQiLCJfdXNlU3RhdGU0IiwidGFic1Njcm9sbCIsInNldFRhYnNTY3JvbGwiLCJ1cGRhdGVUYWJzU2Nyb2xsU3RhdGUiLCJlbCIsImN1cnJlbnQiLCJzY3JvbGxMZWZ0Iiwic2Nyb2xsV2lkdGgiLCJjbGllbnRXaWR0aCIsImhhc092ZXJmbG93IiwidW5kZWZpbmVkIiwib2JzZXJ2ZXIiLCJSZXNpemVPYnNlcnZlciIsIm9ic2VydmUiLCJhZGRFdmVudExpc3RlbmVyIiwicGFzc2l2ZSIsImRpc2Nvbm5lY3QiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwibGVuZ3RoIiwiYWN0aXZlVGFiIiwicXVlcnlTZWxlY3RvciIsImNvbmNhdCIsInNjcm9sbEludG9WaWV3IiwiYmxvY2siLCJpbmxpbmUiLCJ1cGRhdGVBY3RpdmVJbmRleCIsImlkeCIsInByZXZJc0xvYWRpbmdNb3JlUmVmIiwiX2l0ZW1FbHMkYWN0aXZlSW5kZXgiLCJsaXN0RWwiLCJpdGVtRWxzIiwicXVlcnlTZWxlY3RvckFsbCIsImhhbmRsZVNlYXJjaEtleURvd24iLCJlIiwia2V5IiwicHJldmVudERlZmF1bHQiLCJNYXRoIiwibWluIiwibWF4IiwiaXRlbSIsImVtcHR5TWVzc2FnZSIsInRyaW0iLCJxdWVyeSIsImRlZmF1bHRWYWx1ZSIsInNraWxsUXVlcnlUb29TaG9ydCIsInJlbmRlckJvZHkiLCJjaGlsZHJlbiIsIm9uTW91c2VNb3ZlIiwib25TY3JvbGwiLCJjdXJyZW50VGFyZ2V0IiwidGhyZXNob2xkIiwibmVhckJvdHRvbSIsInNjcm9sbFRvcCIsImNsaWVudEhlaWdodCIsInNjcm9sbEhlaWdodCIsIm1hcCIsIndpZHRoIiwiYWN0aXZlIiwib25TZWxlY3QiLCJvbkhvdmVyIiwidHlwZSIsImlkIiwic2l6ZSIsInJvbGUiLCJvbk1vdXNlRG93biIsInN0b3BQcm9wYWdhdGlvbiIsImF1dG9Gb2N1cyIsInZhbHVlIiwicGxhY2Vob2xkZXIiLCJvbkNoYW5nZSIsInRhcmdldCIsIm9uS2V5RG93biIsIiRzaWRlIiwiJHZpc2libGUiLCJsYWJlbCIsImF0UHJlZml4IiwiJGFjdGl2ZSIsIl9vYmplY3RTcHJlYWQiLCJ0aXRsZSIsInpJbmRleCIsImhlaWdodCIsImNvbG9yIiwiZGlzcGxheU5hbWUiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9hdG9tcy9Db250ZXh0TWVudGlvblBvcG92ZXIvQ29udGV4dE1lbnRpb25Qb3BvdmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDU1NQcm9wZXJ0aWVzLFxuICBmb3J3YXJkUmVmLFxuICBLZXlib2FyZEV2ZW50LFxuICB1c2VDYWxsYmFjayxcbiAgdXNlRWZmZWN0LFxuICB1c2VMYXlvdXRFZmZlY3QsXG4gIHVzZU1lbW8sXG4gIHVzZVJlZixcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgSW5mb3JtYXRpb25DaXJjbGUgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9JbmZvcm1hdGlvbkNpcmNsZSdcbmltcG9ydCB7IFRvb2x0aXAgfSBmcm9tICdAcHJvamVjdGNvci90b29sdGlwdjIvbGliL2NvbXBvbmVudHMvVG9vbHRpcCdcbmltcG9ydCB7IFNLSUxMU19TRUFSQ0hfTUlOX1FVRVJZX0xFTkdUSCB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9jb25maWcnXG5pbXBvcnQgeyB1c2VUIH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlVCdcbmltcG9ydCB7IENvbnRleHRFbnRpdHlUeXBlLCBDb250ZXh0TWVudGlvbkl0ZW0gYXMgQ29udGV4dE1lbnRpb25JdGVtVHlwZSB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL2NvbnRleHRNZW50aW9uJ1xuaW1wb3J0IHsgZ2V0TWVudGlvblRhYlByZWZpeCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2NvbnRleHRNZW50aW9uVHJpZ2dlcnMnXG5pbXBvcnQgeyBDb250ZXh0TWVudGlvbkl0ZW0gfSBmcm9tICcuLi9Db250ZXh0TWVudGlvbkl0ZW0nXG5pbXBvcnQgeyBMb2FkZXIgfSBmcm9tICcuLi9Mb2FkZXInXG5pbXBvcnQge1xuICBTQ01QQ29udGFpbmVyLFxuICBTQ01QRGl2aWRlcixcbiAgU0NNUERpdmlkZXJXcmFwcGVyLFxuICBTQ01QUmVjZW50c0xhYmVsLFxuICBTQ01QUmVjZW50c1JvdyxcbiAgU0NNUFJlY2VudHNUaXRsZSxcbiAgU0NNUExpc3QsXG4gIFNDTVBTdGF0ZVdyYXBwZXIsXG4gIFNDTVBLZXlib2FyZEhpbnQsXG4gIFNDTVBUYWIsXG4gIFNDTVBUYWJzRmFkZSxcbiAgU0NNUFRhYnNHcm91cCxcbiAgU0NNUFRhYnNSb3csXG4gIFNDTVBUYWJzU2Nyb2xsV3JhcCxcbiAgU0NNUExvYWRNb3JlUm93LFxuICBTQ01QU2VhcmNoUm93LFxuICBTQ01QU2VhcmNoSW5wdXQsXG59IGZyb20gJy4vQ29udGV4dE1lbnRpb25Qb3BvdmVyLnN0eWxlcydcblxuZXhwb3J0IHR5cGUgQ29udGV4dE1lbnRpb25Qb3BvdmVyUHJvcHMgPSB7XG4gIGFsbG93ZWRUeXBlczogQ29udGV4dEVudGl0eVR5cGVbXVxuICBhY3RpdmVUeXBlOiBDb250ZXh0RW50aXR5VHlwZVxuICBvblR5cGVDaGFuZ2U6ICh0eXBlOiBDb250ZXh0RW50aXR5VHlwZSkgPT4gdm9pZFxuICBpdGVtczogQ29udGV4dE1lbnRpb25JdGVtVHlwZVtdXG4gIGxvYWRpbmc6IGJvb2xlYW5cbiAgZXJyb3I6IGJvb2xlYW5cbiAgaGlkZVJlY2VudHNMYWJlbD86IGJvb2xlYW5cbiAgc2tpbGxzQ2F0YWxvZ0VtcHR5PzogYm9vbGVhblxuICBoYXNNb3JlPzogYm9vbGVhblxuICBpc0xvYWRpbmdNb3JlPzogYm9vbGVhblxuICBvblJlYWNoTGlzdEVuZD86ICgpID0+IHZvaWRcbiAgc2VhcmNoVmFsdWU6IHN0cmluZ1xuICBvbkl0ZW1TZWxlY3RlZDogKGl0ZW06IENvbnRleHRNZW50aW9uSXRlbVR5cGUpID0+IHZvaWRcbiAgLyoqIMONbmRpY2UgcHJlc2VsZWNjaW9uYWRvIChuYXZlZ2FjacOzbiBwb3IgdGVjbGFkbyBleHRlcm5hKS4gU2kgbm8gc2UgcGFzYSwgc2UgbWFuZWphIGludGVybmFtZW50ZS4gKi9cbiAgYWN0aXZlSW5kZXg/OiBudW1iZXJcbiAgb25BY3RpdmVJbmRleENoYW5nZT86IChpZHg6IG51bWJlcikgPT4gdm9pZFxuICBpc0tleWJvYXJkTmF2QWN0aXZlPzogYm9vbGVhblxuICBvbk1vdXNlTW92ZUluTGlzdD86ICgpID0+IHZvaWRcbiAgc3R5bGU/OiBDU1NQcm9wZXJ0aWVzXG4gIGtleWJvYXJkSGludD86IHN0cmluZ1xuICAvKipcbiAgICogTW9kbyBcInBpblwiIChzZWd1bmRvIHB1bnRvIGRlIGVudHJhZGEsIFJGQyDCpzYpOiByZW5kZXJpemEgdW4gaW5wdXQgZGUgYsO6c3F1ZWRhIHByb3Bpb1xuICAgKiAoZW4gbWVuY2lvbmVzIGVsIHRleHRvIGxvIHByb3ZlZSBlbCBlZGl0b3IpLiBIYWJpbGl0YSBuYXZlZ2FjacOzbiBwb3IgdGVjbGFkbyBpbnRlcm5hLlxuICAgKi9cbiAgc2hvd1NlYXJjaElucHV0PzogYm9vbGVhblxuICAvKiogUGxhY2Vob2xkZXIgZGVsIGlucHV0IGRlIGLDunNxdWVkYSBlbiBtb2RvIHBpbi4gKi9cbiAgc2VhcmNoUGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgLyoqIENhbWJpb3MgZGVsIGlucHV0IGRlIGLDunNxdWVkYSBlbiBtb2RvIHBpbiAoY29udHJvbGFkbyBwb3IgYHNlYXJjaFZhbHVlYCkuICovXG4gIG9uU2VhcmNoQ2hhbmdlPzogKHZhbHVlOiBzdHJpbmcpID0+IHZvaWRcbiAgLyoqIEVzY2FwZSBkZW50cm8gZGVsIGlucHV0IGRlIGLDunNxdWVkYSBlbiBtb2RvIHBpbi4gKi9cbiAgb25SZXF1ZXN0Q2xvc2U/OiAoKSA9PiB2b2lkXG4gIC8qKiBPY3VsdGEgZWwgcHJlZmlqbyBgQGAvYEBAYCBkZSBsYXMgdGFicyAobm8gYXBsaWNhIGVuIG1vZG8gcGluKS4gKi9cbiAgaGlkZVRhYlByZWZpeD86IGJvb2xlYW5cbiAgLyoqIHotaW5kZXggZGVsIHRvb2x0aXAgZGVsIMOtY29ubyBkZSBpbmZvICh0YXNrIHBhbmVsIGVsZXZhIE1BSUEgYSB+OTgwMDAwMSkuICovXG4gIHRvb2x0aXBaSW5kZXg/OiBudW1iZXJcbn1cblxuY29uc3QgVEFCX0kxOE5fS0VZUzogUmVjb3JkPENvbnRleHRFbnRpdHlUeXBlLCBzdHJpbmc+ID0ge1xuICBjbGllbnQ6ICdjb250ZXh0TWVudGlvbi50YWJzLmNsaWVudCcsXG4gIHByb2plY3Q6ICdjb250ZXh0TWVudGlvbi50YWJzLnByb2plY3QnLFxuICB0YXNrOiAnY29udGV4dE1lbnRpb24udGFicy50YXNrJyxcbiAgdXNlcjogJ2NvbnRleHRNZW50aW9uLnRhYnMudXNlcicsXG4gIG1jcDogJ2NvbnRleHRNZW50aW9uLnRhYnMubWNwJyxcbiAgc2tpbGw6ICdjb250ZXh0TWVudGlvbi50YWJzLnNraWxsJyxcbn1cblxuY29uc3QgVEFCX0ZBTExCQUNLUzogUmVjb3JkPENvbnRleHRFbnRpdHlUeXBlLCBzdHJpbmc+ID0ge1xuICBjbGllbnQ6ICdDbGllbnRlJyxcbiAgcHJvamVjdDogJ1Byb3llY3RvJyxcbiAgdGFzazogJ1RhcmVhJyxcbiAgdXNlcjogJ1VzdWFyaW8nLFxuICBtY3A6ICdDb25lY3RvcmVzJyxcbiAgc2tpbGw6ICdIYWJpbGlkYWRlcycsXG59XG5cbmV4cG9ydCBjb25zdCBDb250ZXh0TWVudGlvblBvcG92ZXIgPSBmb3J3YXJkUmVmPEhUTUxEaXZFbGVtZW50LCBDb250ZXh0TWVudGlvblBvcG92ZXJQcm9wcz4oXG4gIChcbiAgICB7XG4gICAgICBhbGxvd2VkVHlwZXMsXG4gICAgICBhY3RpdmVUeXBlLFxuICAgICAgb25UeXBlQ2hhbmdlLFxuICAgICAgaXRlbXMsXG4gICAgICBsb2FkaW5nLFxuICAgICAgZXJyb3IsXG4gICAgICBoaWRlUmVjZW50c0xhYmVsLFxuICAgICAgc2tpbGxzQ2F0YWxvZ0VtcHR5ID0gZmFsc2UsXG4gICAgICBoYXNNb3JlLFxuICAgICAgaXNMb2FkaW5nTW9yZSxcbiAgICAgIG9uUmVhY2hMaXN0RW5kLFxuICAgICAgc2VhcmNoVmFsdWUsXG4gICAgICBvbkl0ZW1TZWxlY3RlZCxcbiAgICAgIGFjdGl2ZUluZGV4OiBjb250cm9sbGVkSW5kZXgsXG4gICAgICBvbkFjdGl2ZUluZGV4Q2hhbmdlLFxuICAgICAgaXNLZXlib2FyZE5hdkFjdGl2ZSxcbiAgICAgIG9uTW91c2VNb3ZlSW5MaXN0LFxuICAgICAgc3R5bGUsXG4gICAgICBrZXlib2FyZEhpbnQsXG4gICAgICBzaG93U2VhcmNoSW5wdXQsXG4gICAgICBzZWFyY2hQbGFjZWhvbGRlcixcbiAgICAgIG9uU2VhcmNoQ2hhbmdlLFxuICAgICAgb25SZXF1ZXN0Q2xvc2UsXG4gICAgICBoaWRlVGFiUHJlZml4LFxuICAgICAgdG9vbHRpcFpJbmRleCxcbiAgICB9LFxuICAgIHJlZlxuICApID0+IHtcbiAgICBjb25zdCB7IHQgfSA9IHVzZVQoKVxuICAgIGNvbnN0IFtpbnRlcm5hbEluZGV4LCBzZXRJbnRlcm5hbEluZGV4XSA9IHVzZVN0YXRlKDApXG4gICAgY29uc3QgYWN0aXZlSW5kZXggPSBjb250cm9sbGVkSW5kZXggPz8gaW50ZXJuYWxJbmRleFxuICAgIGNvbnN0IGxpc3RSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG4gICAgY29uc3QgdGFic1Njcm9sbFJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbClcbiAgICBjb25zdCBbdGFic1Njcm9sbCwgc2V0VGFic1Njcm9sbF0gPSB1c2VTdGF0ZSh7IGxlZnQ6IGZhbHNlLCByaWdodDogZmFsc2UgfSlcblxuICAgIGNvbnN0IHVwZGF0ZVRhYnNTY3JvbGxTdGF0ZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgIGNvbnN0IGVsID0gdGFic1Njcm9sbFJlZi5jdXJyZW50XG4gICAgICBpZiAoIWVsKSByZXR1cm5cblxuICAgICAgY29uc3QgeyBzY3JvbGxMZWZ0LCBzY3JvbGxXaWR0aCwgY2xpZW50V2lkdGggfSA9IGVsXG4gICAgICBjb25zdCBoYXNPdmVyZmxvdyA9IHNjcm9sbFdpZHRoID4gY2xpZW50V2lkdGggKyAxXG5cbiAgICAgIHNldFRhYnNTY3JvbGwoe1xuICAgICAgICBsZWZ0OiBoYXNPdmVyZmxvdyAmJiBzY3JvbGxMZWZ0ID4gMSxcbiAgICAgICAgcmlnaHQ6IGhhc092ZXJmbG93ICYmIHNjcm9sbExlZnQgKyBjbGllbnRXaWR0aCA8IHNjcm9sbFdpZHRoIC0gMSxcbiAgICAgIH0pXG4gICAgfSwgW10pXG5cbiAgICB1c2VMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgICAgY29uc3QgZWwgPSB0YWJzU2Nyb2xsUmVmLmN1cnJlbnRcbiAgICAgIGlmICghZWwpIHJldHVybiB1bmRlZmluZWRcblxuICAgICAgdXBkYXRlVGFic1Njcm9sbFN0YXRlKClcblxuICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIodXBkYXRlVGFic1Njcm9sbFN0YXRlKVxuICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZShlbClcbiAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHVwZGF0ZVRhYnNTY3JvbGxTdGF0ZSwgeyBwYXNzaXZlOiB0cnVlIH0pXG5cbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKVxuICAgICAgICBlbC5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB1cGRhdGVUYWJzU2Nyb2xsU3RhdGUpXG4gICAgICB9XG4gICAgfSwgW2FsbG93ZWRUeXBlcy5sZW5ndGgsIHVwZGF0ZVRhYnNTY3JvbGxTdGF0ZV0pXG5cbiAgICB1c2VMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgICAgY29uc3QgZWwgPSB0YWJzU2Nyb2xsUmVmLmN1cnJlbnRcbiAgICAgIGlmICghZWwpIHJldHVyblxuXG4gICAgICBjb25zdCBhY3RpdmVUYWIgPSBlbC5xdWVyeVNlbGVjdG9yKGBbZGF0YS1tZW50aW9uLXRhYj1cIiR7YWN0aXZlVHlwZX1cIl1gKVxuICAgICAgYWN0aXZlVGFiPy5zY3JvbGxJbnRvVmlldyh7IGJsb2NrOiAnbmVhcmVzdCcsIGlubGluZTogJ25lYXJlc3QnIH0pXG4gICAgICB1cGRhdGVUYWJzU2Nyb2xsU3RhdGUoKVxuICAgIH0sIFthY3RpdmVUeXBlLCBhbGxvd2VkVHlwZXMsIHVwZGF0ZVRhYnNTY3JvbGxTdGF0ZV0pXG5cbiAgICBjb25zdCB1cGRhdGVBY3RpdmVJbmRleCA9IHVzZUNhbGxiYWNrKFxuICAgICAgKGlkeDogbnVtYmVyKSA9PiB7XG4gICAgICAgIGlmIChvbkFjdGl2ZUluZGV4Q2hhbmdlKSBvbkFjdGl2ZUluZGV4Q2hhbmdlKGlkeClcbiAgICAgICAgZWxzZSBzZXRJbnRlcm5hbEluZGV4KGlkeClcbiAgICAgIH0sXG4gICAgICBbb25BY3RpdmVJbmRleENoYW5nZV1cbiAgICApXG5cbiAgICAvLyBSZXNldCBhbCBjYW1iaWFyIGRlIHRhYiBvIGNhbnRpZGFkIGRlIHJlc3VsdGFkb3MgKG5vIGVuIGxvYWQgbW9yZSlcbiAgICBjb25zdCBwcmV2SXNMb2FkaW5nTW9yZVJlZiA9IHVzZVJlZihmYWxzZSlcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgcHJldklzTG9hZGluZ01vcmVSZWYuY3VycmVudCA9IGlzTG9hZGluZ01vcmUgPz8gZmFsc2VcbiAgICAgIH1cbiAgICB9LCBbaXNMb2FkaW5nTW9yZV0pXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHByZXZJc0xvYWRpbmdNb3JlUmVmLmN1cnJlbnQpIHJldHVyblxuICAgICAgdXBkYXRlQWN0aXZlSW5kZXgoMClcbiAgICB9LCBbYWN0aXZlVHlwZSwgaXRlbXMubGVuZ3RoLCB1cGRhdGVBY3RpdmVJbmRleF0pXG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgY29uc3QgbGlzdEVsID0gbGlzdFJlZi5jdXJyZW50XG4gICAgICBpZiAoIWxpc3RFbCB8fCBpdGVtcy5sZW5ndGggPT09IDApIHJldHVyblxuICAgICAgY29uc3QgaXRlbUVscyA9IGxpc3RFbC5xdWVyeVNlbGVjdG9yQWxsKCdbZGF0YS1tZW50aW9uLWl0ZW1dJylcbiAgICAgIGl0ZW1FbHNbYWN0aXZlSW5kZXhdPy5zY3JvbGxJbnRvVmlldyh7IGJsb2NrOiAnbmVhcmVzdCcgfSlcbiAgICB9LCBbYWN0aXZlSW5kZXgsIGl0ZW1zLmxlbmd0aF0pXG5cbiAgICBjb25zdCBoYW5kbGVTZWFyY2hLZXlEb3duID0gdXNlQ2FsbGJhY2soXG4gICAgICAoZTogS2V5Ym9hcmRFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgICAgICBpZiAoZS5rZXkgPT09ICdBcnJvd0Rvd24nKSB7XG4gICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgdXBkYXRlQWN0aXZlSW5kZXgoaXRlbXMubGVuZ3RoID4gMCA/IE1hdGgubWluKGFjdGl2ZUluZGV4ICsgMSwgaXRlbXMubGVuZ3RoIC0gMSkgOiAwKVxuICAgICAgICB9IGVsc2UgaWYgKGUua2V5ID09PSAnQXJyb3dVcCcpIHtcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KClcbiAgICAgICAgICB1cGRhdGVBY3RpdmVJbmRleChNYXRoLm1heChhY3RpdmVJbmRleCAtIDEsIDApKVxuICAgICAgICB9IGVsc2UgaWYgKGUua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgY29uc3QgaXRlbSA9IGl0ZW1zW2FjdGl2ZUluZGV4XVxuICAgICAgICAgIGlmIChpdGVtKSBvbkl0ZW1TZWxlY3RlZChpdGVtKVxuICAgICAgICB9IGVsc2UgaWYgKGUua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgIG9uUmVxdWVzdENsb3NlPy4oKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgW2l0ZW1zLCBhY3RpdmVJbmRleCwgdXBkYXRlQWN0aXZlSW5kZXgsIG9uSXRlbVNlbGVjdGVkLCBvblJlcXVlc3RDbG9zZV1cbiAgICApXG5cbiAgICBjb25zdCBlbXB0eU1lc3NhZ2UgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGlmIChhY3RpdmVUeXBlID09PSAnc2tpbGwnKSB7XG4gICAgICAgIGlmIChzZWFyY2hWYWx1ZS50cmltKCkpIHtcbiAgICAgICAgICByZXR1cm4gdCgnY29udGV4dE1lbnRpb24uZW1wdHkuc2tpbGxXaXRoUXVlcnknLCB7XG4gICAgICAgICAgICBxdWVyeTogc2VhcmNoVmFsdWUsXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdCgnY29udGV4dE1lbnRpb24uZW1wdHkuc2tpbGxOb0l0ZW1zJylcbiAgICAgIH1cbiAgICAgIGlmIChzZWFyY2hWYWx1ZS50cmltKCkpIHtcbiAgICAgICAgcmV0dXJuIHQoJ2NvbnRleHRNZW50aW9uLmVtcHR5LndpdGhRdWVyeScsIHtcbiAgICAgICAgICBxdWVyeTogc2VhcmNoVmFsdWUsXG4gICAgICAgICAgZGVmYXVsdFZhbHVlOiBgTm8gaGF5IHJlc3VsdGFkb3MgcGFyYSBcIiR7c2VhcmNoVmFsdWV9XCJgLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgcmV0dXJuIHQoJ2NvbnRleHRNZW50aW9uLmVtcHR5LnJlY2VudHMnLCB7IGRlZmF1bHRWYWx1ZTogJ0VtcGV6w6EgYSBlc2NyaWJpciBwYXJhIGJ1c2NhcicgfSlcbiAgICB9LCBbYWN0aXZlVHlwZSwgc2VhcmNoVmFsdWUsIHRdKVxuXG4gICAgY29uc3Qgc2tpbGxRdWVyeVRvb1Nob3J0ID1cbiAgICAgIGFjdGl2ZVR5cGUgPT09ICdza2lsbCcgJiZcbiAgICAgICFza2lsbHNDYXRhbG9nRW1wdHkgJiZcbiAgICAgIHNlYXJjaFZhbHVlLnRyaW0oKS5sZW5ndGggPiAwICYmXG4gICAgICBzZWFyY2hWYWx1ZS50cmltKCkubGVuZ3RoIDwgU0tJTExTX1NFQVJDSF9NSU5fUVVFUllfTEVOR1RIXG5cbiAgICBjb25zdCByZW5kZXJCb2R5ID0gKCkgPT4ge1xuICAgICAgaWYgKGxvYWRpbmcpIHtcbiAgICAgICAgcmV0dXJuIDxTQ01QU3RhdGVXcmFwcGVyPnt0KCdjb250ZXh0TWVudGlvbi5sb2FkaW5nJywgeyBkZWZhdWx0VmFsdWU6ICdCdXNjYW5kby4uLicgfSl9PC9TQ01QU3RhdGVXcmFwcGVyPlxuICAgICAgfVxuICAgICAgaWYgKGVycm9yKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPFNDTVBTdGF0ZVdyYXBwZXI+XG4gICAgICAgICAgICB7dCgnY29udGV4dE1lbnRpb24uZXJyb3InLCB7IGRlZmF1bHRWYWx1ZTogJ0h1Ym8gdW4gcHJvYmxlbWEgYWwgYnVzY2FyJyB9KX1cbiAgICAgICAgICA8L1NDTVBTdGF0ZVdyYXBwZXI+XG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIGlmIChza2lsbFF1ZXJ5VG9vU2hvcnQpIHtcbiAgICAgICAgcmV0dXJuIDxTQ01QU3RhdGVXcmFwcGVyPnt0KCdjb250ZXh0TWVudGlvbi5za2lsbFF1ZXJ5VG9vU2hvcnQnKX08L1NDTVBTdGF0ZVdyYXBwZXI+XG4gICAgICB9XG4gICAgICBpZiAoaXRlbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybiA8U0NNUFN0YXRlV3JhcHBlcj57ZW1wdHlNZXNzYWdlfTwvU0NNUFN0YXRlV3JhcHBlcj5cbiAgICAgIH1cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxTQ01QTGlzdFxuICAgICAgICAgIHJlZj17bGlzdFJlZn1cbiAgICAgICAgICBkYXRhLWtleWJvYXJkLW5hdj17aXNLZXlib2FyZE5hdkFjdGl2ZSB8fCB1bmRlZmluZWR9XG4gICAgICAgICAgb25Nb3VzZU1vdmU9e29uTW91c2VNb3ZlSW5MaXN0fVxuICAgICAgICAgIG9uU2Nyb2xsPXtlID0+IHtcbiAgICAgICAgICAgIGlmICghb25SZWFjaExpc3RFbmQgfHwgIWhhc01vcmUgfHwgaXNMb2FkaW5nTW9yZSkgcmV0dXJuXG4gICAgICAgICAgICBjb25zdCBlbCA9IGUuY3VycmVudFRhcmdldFxuICAgICAgICAgICAgY29uc3QgdGhyZXNob2xkID0gMjRcbiAgICAgICAgICAgIGNvbnN0IG5lYXJCb3R0b20gPSBlbC5zY3JvbGxUb3AgKyBlbC5jbGllbnRIZWlnaHQgPj0gZWwuc2Nyb2xsSGVpZ2h0IC0gdGhyZXNob2xkXG4gICAgICAgICAgICBpZiAobmVhckJvdHRvbSkge1xuICAgICAgICAgICAgICBvblJlYWNoTGlzdEVuZCgpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIHshc2VhcmNoVmFsdWUudHJpbSgpICYmIGFjdGl2ZVR5cGUgIT09ICd1c2VyJyAmJiAhaGlkZVJlY2VudHNMYWJlbCA/IChcbiAgICAgICAgICAgIDxTQ01QUmVjZW50c1Jvdz5cbiAgICAgICAgICAgICAgPFNDTVBSZWNlbnRzVGl0bGU+XG4gICAgICAgICAgICAgICAgPFNDTVBSZWNlbnRzTGFiZWw+e3QoJ2NvbnRleHRNZW50aW9uLnJlY2VudHNUaXRsZScsIHsgZGVmYXVsdFZhbHVlOiAnUmVjaWVudGVzJyB9KX08L1NDTVBSZWNlbnRzTGFiZWw+XG4gICAgICAgICAgICAgIDwvU0NNUFJlY2VudHNUaXRsZT5cbiAgICAgICAgICAgIDwvU0NNUFJlY2VudHNSb3c+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAge2l0ZW1zLm1hcCgoaXRlbSwgaWR4KSA9PiAoXG4gICAgICAgICAgICA8ZGl2IGtleT17YCR7aXRlbS50eXBlfS0ke2l0ZW0uaWR9YH0gZGF0YS1tZW50aW9uLWl0ZW0gc3R5bGU9e3sgd2lkdGg6ICcxMDAlJyB9fT5cbiAgICAgICAgICAgICAgPENvbnRleHRNZW50aW9uSXRlbVxuICAgICAgICAgICAgICAgIGl0ZW09e2l0ZW19XG4gICAgICAgICAgICAgICAgYWN0aXZlPXtpZHggPT09IGFjdGl2ZUluZGV4fVxuICAgICAgICAgICAgICAgIG9uU2VsZWN0PXtvbkl0ZW1TZWxlY3RlZH1cbiAgICAgICAgICAgICAgICBvbkhvdmVyPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgICBpZiAoIWlzS2V5Ym9hcmROYXZBY3RpdmUpIHVwZGF0ZUFjdGl2ZUluZGV4KGlkeClcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKSl9XG4gICAgICAgICAge2lzTG9hZGluZ01vcmUgPyAoXG4gICAgICAgICAgICA8U0NNUExvYWRNb3JlUm93PlxuICAgICAgICAgICAgICA8TG9hZGVyIHNpemU9XCJzbWFsbFwiIC8+XG4gICAgICAgICAgICA8L1NDTVBMb2FkTW9yZVJvdz5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9TQ01QTGlzdD5cbiAgICAgIClcbiAgICB9XG5cbiAgICByZXR1cm4gKFxuICAgICAgPFNDTVBDb250YWluZXJcbiAgICAgICAgcmVmPXtyZWZ9XG4gICAgICAgIHN0eWxlPXtzdHlsZX1cbiAgICAgICAgcm9sZT1cImxpc3Rib3hcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiQ29udGV4dCBtZW50aW9uIHBpY2tlclwiXG4gICAgICAgIG9uTW91c2VEb3duPXtlID0+IGUuc3RvcFByb3BhZ2F0aW9uKCl9XG4gICAgICA+XG4gICAgICAgIHtzaG93U2VhcmNoSW5wdXQgPyAoXG4gICAgICAgICAgPFNDTVBTZWFyY2hSb3c+XG4gICAgICAgICAgICB7LyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzeC1hMTF5L25vLWF1dG9mb2N1cyAqL31cbiAgICAgICAgICAgIDxTQ01QU2VhcmNoSW5wdXRcbiAgICAgICAgICAgICAgYXV0b0ZvY3VzXG4gICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgdmFsdWU9e3NlYXJjaFZhbHVlfVxuICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17c2VhcmNoUGxhY2Vob2xkZXJ9XG4gICAgICAgICAgICAgIG9uQ2hhbmdlPXtlID0+IG9uU2VhcmNoQ2hhbmdlPy4oZS50YXJnZXQudmFsdWUpfVxuICAgICAgICAgICAgICBvbktleURvd249e2hhbmRsZVNlYXJjaEtleURvd259XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvU0NNUFNlYXJjaFJvdz5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDxTQ01QVGFic1Jvdz5cbiAgICAgICAgICA8U0NNUFRhYnNTY3JvbGxXcmFwPlxuICAgICAgICAgICAgPFNDTVBUYWJzRmFkZSAkc2lkZT1cImxlZnRcIiAkdmlzaWJsZT17dGFic1Njcm9sbC5sZWZ0fSBhcmlhLWhpZGRlbiAvPlxuICAgICAgICAgICAgPFNDTVBUYWJzR3JvdXAgcmVmPXt0YWJzU2Nyb2xsUmVmfT5cbiAgICAgICAgICAgICAge2FsbG93ZWRUeXBlcy5tYXAodHlwZSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgbGFiZWwgPSB0KFRBQl9JMThOX0tFWVNbdHlwZV0sIHsgZGVmYXVsdFZhbHVlOiBUQUJfRkFMTEJBQ0tTW3R5cGVdIH0pXG4gICAgICAgICAgICAgICAgY29uc3QgYXRQcmVmaXggPSBoaWRlVGFiUHJlZml4ID8gJycgOiBnZXRNZW50aW9uVGFiUHJlZml4KHR5cGUpXG4gICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgIDxTQ01QVGFiXG4gICAgICAgICAgICAgICAgICAgIGtleT17dHlwZX1cbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgIGRhdGEtbWVudGlvbi10YWI9e3R5cGV9XG4gICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9e2F0UHJlZml4ID8gYCR7YXRQcmVmaXh9ICR7bGFiZWx9YCA6IGxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAkYWN0aXZlPXt0eXBlID09PSBhY3RpdmVUeXBlfVxuICAgICAgICAgICAgICAgICAgICBvbk1vdXNlRG93bj17ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKVxuICAgICAgICAgICAgICAgICAgICAgIG9uVHlwZUNoYW5nZSh0eXBlKVxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7YXRQcmVmaXh9XG4gICAgICAgICAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICAgICAgICAgIDwvU0NNUFRhYj5cbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9TQ01QVGFic0dyb3VwPlxuICAgICAgICAgICAgPFNDTVBUYWJzRmFkZSAkc2lkZT1cInJpZ2h0XCIgJHZpc2libGU9e3RhYnNTY3JvbGwucmlnaHR9IGFyaWEtaGlkZGVuIC8+XG4gICAgICAgICAgPC9TQ01QVGFic1Njcm9sbFdyYXA+XG4gICAgICAgICAgPFRvb2x0aXAgdGl0bGU9e2tleWJvYXJkSGludCB8fCAnJ30gey4uLih0b29sdGlwWkluZGV4ICE9IG51bGwgPyB7IHpJbmRleDogdG9vbHRpcFpJbmRleCB9IDoge30pfT5cbiAgICAgICAgICAgIDxTQ01QS2V5Ym9hcmRIaW50PlxuICAgICAgICAgICAgICA8SW5mb3JtYXRpb25DaXJjbGUgd2lkdGg9ezIwfSBoZWlnaHQ9ezIwfSBjb2xvcj1cIiM4MDgwODBcIiAvPlxuICAgICAgICAgICAgPC9TQ01QS2V5Ym9hcmRIaW50PlxuICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgPC9TQ01QVGFic1Jvdz5cbiAgICAgICAgPFNDTVBEaXZpZGVyV3JhcHBlcj5cbiAgICAgICAgICA8U0NNUERpdmlkZXIgLz5cbiAgICAgICAgPC9TQ01QRGl2aWRlcldyYXBwZXI+XG4gICAgICAgIHtyZW5kZXJCb2R5KCl9XG4gICAgICA8L1NDTVBDb250YWluZXI+XG4gICAgKVxuICB9XG4pXG5cbkNvbnRleHRNZW50aW9uUG9wb3Zlci5kaXNwbGF5TmFtZSA9ICdDb250ZXh0TWVudGlvblBvcG92ZXInXG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxTQUVFQSxVQUFVLEVBRVZDLFdBQVcsRUFDWEMsU0FBUyxFQUNUQyxlQUFlLEVBQ2ZDLE9BQU8sRUFDUEMsTUFBTSxFQUNOQyxRQUFRLFFBQ0gsT0FBTztBQUNkLFNBQVNDLGlCQUFpQixRQUFRLG9EQUFvRDtBQUN0RixTQUFTQyxPQUFPLFFBQVEsOENBQThDO0FBQ3RFLFNBQVNDLDhCQUE4QixRQUFRLDJCQUEyQjtBQUMxRSxTQUFTQyxJQUFJLFFBQVEscUJBQXFCO0FBRTFDLFNBQVNDLG1CQUFtQixRQUFRLHVDQUF1QztBQUMzRSxTQUFTQyxrQkFBa0IsUUFBUSx1QkFBdUI7QUFDMUQsU0FBU0MsTUFBTSxRQUFRLFdBQVc7QUFDbEMsU0FDRUMsYUFBYSxFQUNiQyxXQUFXLEVBQ1hDLGtCQUFrQixFQUNsQkMsZ0JBQWdCLEVBQ2hCQyxjQUFjLEVBQ2RDLGdCQUFnQixFQUNoQkMsUUFBUSxFQUNSQyxnQkFBZ0IsRUFDaEJDLGdCQUFnQixFQUNoQkMsT0FBTyxFQUNQQyxZQUFZLEVBQ1pDLGFBQWEsRUFDYkMsV0FBVyxFQUNYQyxrQkFBa0IsRUFDbEJD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
290
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmb3J3YXJkUmVmIiwidXNlQ2FsbGJhY2siLCJ1c2VFZmZlY3QiLCJ1c2VMYXlvdXRFZmZlY3QiLCJ1c2VNZW1vIiwidXNlUmVmIiwidXNlU3RhdGUiLCJJbmZvcm1hdGlvbkNpcmNsZSIsIlRvb2x0aXAiLCJ1c2VUIiwiZ2V0TWVudGlvblRhYlByZWZpeCIsIkNvbnRleHRNZW50aW9uSXRlbSIsIkxvYWRlciIsIlNDTVBDb250YWluZXIiLCJTQ01QRGl2aWRlciIsIlNDTVBEaXZpZGVyV3JhcHBlciIsIlNDTVBSZWNlbnRzTGFiZWwiLCJTQ01QUmVjZW50c1JvdyIsIlNDTVBSZWNlbnRzVGl0bGUiLCJTQ01QTGlzdCIsIlNDTVBTdGF0ZVdyYXBwZXIiLCJTQ01QS2V5Ym9hcmRIaW50IiwiU0NNUFRhYiIsIlNDTVBUYWJzRmFkZSIsIlNDTVBUYWJzR3JvdXAiLCJTQ01QVGFic1JvdyIsIlNDTVBUYWJzU2Nyb2xsV3JhcCIsIlNDTVBMb2FkTW9yZVJvdyIsIlNDTVBTZWFyY2hSb3ciLCJTQ01QU2VhcmNoSW5wdXQiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiVEFCX0kxOE5fS0VZUyIsImNsaWVudCIsInByb2plY3QiLCJ0YXNrIiwidXNlciIsIm1jcCIsInNraWxsIiwiVEFCX0ZBTExCQUNLUyIsIkNvbnRleHRNZW50aW9uUG9wb3ZlciIsIl9yZWYiLCJyZWYiLCJhbGxvd2VkVHlwZXMiLCJhY3RpdmVUeXBlIiwib25UeXBlQ2hhbmdlIiwiaXRlbXMiLCJsb2FkaW5nIiwiZXJyb3IiLCJoaWRlUmVjZW50c0xhYmVsIiwiaGFzTW9yZSIsImlzTG9hZGluZ01vcmUiLCJvblJlYWNoTGlzdEVuZCIsInNlYXJjaFZhbHVlIiwib25JdGVtU2VsZWN0ZWQiLCJjb250cm9sbGVkSW5kZXgiLCJhY3RpdmVJbmRleCIsIm9uQWN0aXZlSW5kZXhDaGFuZ2UiLCJpc0tleWJvYXJkTmF2QWN0aXZlIiwib25Nb3VzZU1vdmVJbkxpc3QiLCJzdHlsZSIsImtleWJvYXJkSGludCIsInNob3dTZWFyY2hJbnB1dCIsInNlYXJjaFBsYWNlaG9sZGVyIiwib25TZWFyY2hDaGFuZ2UiLCJvblJlcXVlc3RDbG9zZSIsImhpZGVUYWJQcmVmaXgiLCJ0b29sdGlwWkluZGV4IiwiX3VzZVQiLCJ0IiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwiaW50ZXJuYWxJbmRleCIsInNldEludGVybmFsSW5kZXgiLCJsaXN0UmVmIiwidGFic1Njcm9sbFJlZiIsIl91c2VTdGF0ZTMiLCJsZWZ0IiwicmlnaHQiLCJfdXNlU3RhdGU0IiwidGFic1Njcm9sbCIsInNldFRhYnNTY3JvbGwiLCJ1cGRhdGVUYWJzU2Nyb2xsU3RhdGUiLCJlbCIsImN1cnJlbnQiLCJzY3JvbGxMZWZ0Iiwic2Nyb2xsV2lkdGgiLCJjbGllbnRXaWR0aCIsImhhc092ZXJmbG93IiwidW5kZWZpbmVkIiwib2JzZXJ2ZXIiLCJSZXNpemVPYnNlcnZlciIsIm9ic2VydmUiLCJhZGRFdmVudExpc3RlbmVyIiwicGFzc2l2ZSIsImRpc2Nvbm5lY3QiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwibGVuZ3RoIiwiYWN0aXZlVGFiIiwicXVlcnlTZWxlY3RvciIsImNvbmNhdCIsInNjcm9sbEludG9WaWV3IiwiYmxvY2siLCJpbmxpbmUiLCJ1cGRhdGVBY3RpdmVJbmRleCIsImlkeCIsInByZXZJc0xvYWRpbmdNb3JlUmVmIiwiX2l0ZW1FbHMkYWN0aXZlSW5kZXgiLCJsaXN0RWwiLCJpdGVtRWxzIiwicXVlcnlTZWxlY3RvckFsbCIsImhhbmRsZVNlYXJjaEtleURvd24iLCJlIiwia2V5IiwicHJldmVudERlZmF1bHQiLCJNYXRoIiwibWluIiwibWF4IiwiaXRlbSIsImVtcHR5TWVzc2FnZSIsInRyaW0iLCJxdWVyeSIsImRlZmF1bHRWYWx1ZSIsInJlbmRlckJvZHkiLCJjaGlsZHJlbiIsIm9uTW91c2VNb3ZlIiwib25TY3JvbGwiLCJjdXJyZW50VGFyZ2V0IiwidGhyZXNob2xkIiwibmVhckJvdHRvbSIsInNjcm9sbFRvcCIsImNsaWVudEhlaWdodCIsInNjcm9sbEhlaWdodCIsIm1hcCIsIndpZHRoIiwiYWN0aXZlIiwib25TZWxlY3QiLCJvbkhvdmVyIiwidHlwZSIsImlkIiwic2l6ZSIsInJvbGUiLCJvbk1vdXNlRG93biIsInN0b3BQcm9wYWdhdGlvbiIsImF1dG9Gb2N1cyIsInZhbHVlIiwicGxhY2Vob2xkZXIiLCJvbkNoYW5nZSIsInRhcmdldCIsIm9uS2V5RG93biIsIiRzaWRlIiwiJHZpc2libGUiLCJsYWJlbCIsImF0UHJlZml4IiwiJGFjdGl2ZSIsIl9vYmplY3RTcHJlYWQiLCJ0aXRsZSIsInpJbmRleCIsImhlaWdodCIsImNvbG9yIiwiZGlzcGxheU5hbWUiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9hdG9tcy9Db250ZXh0TWVudGlvblBvcG92ZXIvQ29udGV4dE1lbnRpb25Qb3BvdmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDU1NQcm9wZXJ0aWVzLFxuICBmb3J3YXJkUmVmLFxuICBLZXlib2FyZEV2ZW50LFxuICB1c2VDYWxsYmFjayxcbiAgdXNlRWZmZWN0LFxuICB1c2VMYXlvdXRFZmZlY3QsXG4gIHVzZU1lbW8sXG4gIHVzZVJlZixcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgSW5mb3JtYXRpb25DaXJjbGUgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9JbmZvcm1hdGlvbkNpcmNsZSdcbmltcG9ydCB7IFRvb2x0aXAgfSBmcm9tICdAcHJvamVjdGNvci90b29sdGlwdjIvbGliL2NvbXBvbmVudHMvVG9vbHRpcCdcbmltcG9ydCB7IHVzZVQgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VUJ1xuaW1wb3J0IHsgQ29udGV4dEVudGl0eVR5cGUsIENvbnRleHRNZW50aW9uSXRlbSBhcyBDb250ZXh0TWVudGlvbkl0ZW1UeXBlIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvY29udGV4dE1lbnRpb24nXG5pbXBvcnQgeyBnZXRNZW50aW9uVGFiUHJlZml4IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvY29udGV4dE1lbnRpb25UcmlnZ2VycydcbmltcG9ydCB7IENvbnRleHRNZW50aW9uSXRlbSB9IGZyb20gJy4uL0NvbnRleHRNZW50aW9uSXRlbSdcbmltcG9ydCB7IExvYWRlciB9IGZyb20gJy4uL0xvYWRlcidcbmltcG9ydCB7XG4gIFNDTVBDb250YWluZXIsXG4gIFNDTVBEaXZpZGVyLFxuICBTQ01QRGl2aWRlcldyYXBwZXIsXG4gIFNDTVBSZWNlbnRzTGFiZWwsXG4gIFNDTVBSZWNlbnRzUm93LFxuICBTQ01QUmVjZW50c1RpdGxlLFxuICBTQ01QTGlzdCxcbiAgU0NNUFN0YXRlV3JhcHBlcixcbiAgU0NNUEtleWJvYXJkSGludCxcbiAgU0NNUFRhYixcbiAgU0NNUFRhYnNGYWRlLFxuICBTQ01QVGFic0dyb3VwLFxuICBTQ01QVGFic1JvdyxcbiAgU0NNUFRhYnNTY3JvbGxXcmFwLFxuICBTQ01QTG9hZE1vcmVSb3csXG4gIFNDTVBTZWFyY2hSb3csXG4gIFNDTVBTZWFyY2hJbnB1dCxcbn0gZnJvbSAnLi9Db250ZXh0TWVudGlvblBvcG92ZXIuc3R5bGVzJ1xuXG5leHBvcnQgdHlwZSBDb250ZXh0TWVudGlvblBvcG92ZXJQcm9wcyA9IHtcbiAgYWxsb3dlZFR5cGVzOiBDb250ZXh0RW50aXR5VHlwZVtdXG4gIGFjdGl2ZVR5cGU6IENvbnRleHRFbnRpdHlUeXBlXG4gIG9uVHlwZUNoYW5nZTogKHR5cGU6IENvbnRleHRFbnRpdHlUeXBlKSA9PiB2b2lkXG4gIGl0ZW1zOiBDb250ZXh0TWVudGlvbkl0ZW1UeXBlW11cbiAgbG9hZGluZzogYm9vbGVhblxuICBlcnJvcjogYm9vbGVhblxuICBoaWRlUmVjZW50c0xhYmVsPzogYm9vbGVhblxuICBoYXNNb3JlPzogYm9vbGVhblxuICBpc0xvYWRpbmdNb3JlPzogYm9vbGVhblxuICBvblJlYWNoTGlzdEVuZD86ICgpID0+IHZvaWRcbiAgc2VhcmNoVmFsdWU6IHN0cmluZ1xuICBvbkl0ZW1TZWxlY3RlZDogKGl0ZW06IENvbnRleHRNZW50aW9uSXRlbVR5cGUpID0+IHZvaWRcbiAgLyoqIMONbmRpY2UgcHJlc2VsZWNjaW9uYWRvIChuYXZlZ2FjacOzbiBwb3IgdGVjbGFkbyBleHRlcm5hKS4gU2kgbm8gc2UgcGFzYSwgc2UgbWFuZWphIGludGVybmFtZW50ZS4gKi9cbiAgYWN0aXZlSW5kZXg/OiBudW1iZXJcbiAgb25BY3RpdmVJbmRleENoYW5nZT86IChpZHg6IG51bWJlcikgPT4gdm9pZFxuICBpc0tleWJvYXJkTmF2QWN0aXZlPzogYm9vbGVhblxuICBvbk1vdXNlTW92ZUluTGlzdD86ICgpID0+IHZvaWRcbiAgc3R5bGU/OiBDU1NQcm9wZXJ0aWVzXG4gIGtleWJvYXJkSGludD86IHN0cmluZ1xuICAvKipcbiAgICogTW9kbyBcInBpblwiIChzZWd1bmRvIHB1bnRvIGRlIGVudHJhZGEsIFJGQyDCpzYpOiByZW5kZXJpemEgdW4gaW5wdXQgZGUgYsO6c3F1ZWRhIHByb3Bpb1xuICAgKiAoZW4gbWVuY2lvbmVzIGVsIHRleHRvIGxvIHByb3ZlZSBlbCBlZGl0b3IpLiBIYWJpbGl0YSBuYXZlZ2FjacOzbiBwb3IgdGVjbGFkbyBpbnRlcm5hLlxuICAgKi9cbiAgc2hvd1NlYXJjaElucHV0PzogYm9vbGVhblxuICAvKiogUGxhY2Vob2xkZXIgZGVsIGlucHV0IGRlIGLDunNxdWVkYSBlbiBtb2RvIHBpbi4gKi9cbiAgc2VhcmNoUGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgLyoqIENhbWJpb3MgZGVsIGlucHV0IGRlIGLDunNxdWVkYSBlbiBtb2RvIHBpbiAoY29udHJvbGFkbyBwb3IgYHNlYXJjaFZhbHVlYCkuICovXG4gIG9uU2VhcmNoQ2hhbmdlPzogKHZhbHVlOiBzdHJpbmcpID0+IHZvaWRcbiAgLyoqIEVzY2FwZSBkZW50cm8gZGVsIGlucHV0IGRlIGLDunNxdWVkYSBlbiBtb2RvIHBpbi4gKi9cbiAgb25SZXF1ZXN0Q2xvc2U/OiAoKSA9PiB2b2lkXG4gIC8qKiBPY3VsdGEgZWwgcHJlZmlqbyBgQGAvYEBAYCBkZSBsYXMgdGFicyAobm8gYXBsaWNhIGVuIG1vZG8gcGluKS4gKi9cbiAgaGlkZVRhYlByZWZpeD86IGJvb2xlYW5cbiAgLyoqIHotaW5kZXggZGVsIHRvb2x0aXAgZGVsIMOtY29ubyBkZSBpbmZvICh0YXNrIHBhbmVsIGVsZXZhIE1BSUEgYSB+OTgwMDAwMSkuICovXG4gIHRvb2x0aXBaSW5kZXg/OiBudW1iZXJcbn1cblxuY29uc3QgVEFCX0kxOE5fS0VZUzogUmVjb3JkPENvbnRleHRFbnRpdHlUeXBlLCBzdHJpbmc+ID0ge1xuICBjbGllbnQ6ICdjb250ZXh0TWVudGlvbi50YWJzLmNsaWVudCcsXG4gIHByb2plY3Q6ICdjb250ZXh0TWVudGlvbi50YWJzLnByb2plY3QnLFxuICB0YXNrOiAnY29udGV4dE1lbnRpb24udGFicy50YXNrJyxcbiAgdXNlcjogJ2NvbnRleHRNZW50aW9uLnRhYnMudXNlcicsXG4gIG1jcDogJ2NvbnRleHRNZW50aW9uLnRhYnMubWNwJyxcbiAgc2tpbGw6ICdjb250ZXh0TWVudGlvbi50YWJzLnNraWxsJyxcbn1cblxuY29uc3QgVEFCX0ZBTExCQUNLUzogUmVjb3JkPENvbnRleHRFbnRpdHlUeXBlLCBzdHJpbmc+ID0ge1xuICBjbGllbnQ6ICdDbGllbnRlJyxcbiAgcHJvamVjdDogJ1Byb3llY3RvJyxcbiAgdGFzazogJ1RhcmVhJyxcbiAgdXNlcjogJ1VzdWFyaW8nLFxuICBtY3A6ICdDb25lY3RvcmVzJyxcbiAgc2tpbGw6ICdIYWJpbGlkYWRlcycsXG59XG5cbmV4cG9ydCBjb25zdCBDb250ZXh0TWVudGlvblBvcG92ZXIgPSBmb3J3YXJkUmVmPEhUTUxEaXZFbGVtZW50LCBDb250ZXh0TWVudGlvblBvcG92ZXJQcm9wcz4oXG4gIChcbiAgICB7XG4gICAgICBhbGxvd2VkVHlwZXMsXG4gICAgICBhY3RpdmVUeXBlLFxuICAgICAgb25UeXBlQ2hhbmdlLFxuICAgICAgaXRlbXMsXG4gICAgICBsb2FkaW5nLFxuICAgICAgZXJyb3IsXG4gICAgICBoaWRlUmVjZW50c0xhYmVsLFxuICAgICAgaGFzTW9yZSxcbiAgICAgIGlzTG9hZGluZ01vcmUsXG4gICAgICBvblJlYWNoTGlzdEVuZCxcbiAgICAgIHNlYXJjaFZhbHVlLFxuICAgICAgb25JdGVtU2VsZWN0ZWQsXG4gICAgICBhY3RpdmVJbmRleDogY29udHJvbGxlZEluZGV4LFxuICAgICAgb25BY3RpdmVJbmRleENoYW5nZSxcbiAgICAgIGlzS2V5Ym9hcmROYXZBY3RpdmUsXG4gICAgICBvbk1vdXNlTW92ZUluTGlzdCxcbiAgICAgIHN0eWxlLFxuICAgICAga2V5Ym9hcmRIaW50LFxuICAgICAgc2hvd1NlYXJjaElucHV0LFxuICAgICAgc2VhcmNoUGxhY2Vob2xkZXIsXG4gICAgICBvblNlYXJjaENoYW5nZSxcbiAgICAgIG9uUmVxdWVzdENsb3NlLFxuICAgICAgaGlkZVRhYlByZWZpeCxcbiAgICAgIHRvb2x0aXBaSW5kZXgsXG4gICAgfSxcbiAgICByZWZcbiAgKSA9PiB7XG4gICAgY29uc3QgeyB0IH0gPSB1c2VUKClcbiAgICBjb25zdCBbaW50ZXJuYWxJbmRleCwgc2V0SW50ZXJuYWxJbmRleF0gPSB1c2VTdGF0ZSgwKVxuICAgIGNvbnN0IGFjdGl2ZUluZGV4ID0gY29udHJvbGxlZEluZGV4ID8/IGludGVybmFsSW5kZXhcbiAgICBjb25zdCBsaXN0UmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICAgIGNvbnN0IHRhYnNTY3JvbGxSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG4gICAgY29uc3QgW3RhYnNTY3JvbGwsIHNldFRhYnNTY3JvbGxdID0gdXNlU3RhdGUoeyBsZWZ0OiBmYWxzZSwgcmlnaHQ6IGZhbHNlIH0pXG5cbiAgICBjb25zdCB1cGRhdGVUYWJzU2Nyb2xsU3RhdGUgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBjb25zdCBlbCA9IHRhYnNTY3JvbGxSZWYuY3VycmVudFxuICAgICAgaWYgKCFlbCkgcmV0dXJuXG5cbiAgICAgIGNvbnN0IHsgc2Nyb2xsTGVmdCwgc2Nyb2xsV2lkdGgsIGNsaWVudFdpZHRoIH0gPSBlbFxuICAgICAgY29uc3QgaGFzT3ZlcmZsb3cgPSBzY3JvbGxXaWR0aCA+IGNsaWVudFdpZHRoICsgMVxuXG4gICAgICBzZXRUYWJzU2Nyb2xsKHtcbiAgICAgICAgbGVmdDogaGFzT3ZlcmZsb3cgJiYgc2Nyb2xsTGVmdCA+IDEsXG4gICAgICAgIHJpZ2h0OiBoYXNPdmVyZmxvdyAmJiBzY3JvbGxMZWZ0ICsgY2xpZW50V2lkdGggPCBzY3JvbGxXaWR0aCAtIDEsXG4gICAgICB9KVxuICAgIH0sIFtdKVxuXG4gICAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IGVsID0gdGFic1Njcm9sbFJlZi5jdXJyZW50XG4gICAgICBpZiAoIWVsKSByZXR1cm4gdW5kZWZpbmVkXG5cbiAgICAgIHVwZGF0ZVRhYnNTY3JvbGxTdGF0ZSgpXG5cbiAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IFJlc2l6ZU9ic2VydmVyKHVwZGF0ZVRhYnNTY3JvbGxTdGF0ZSlcbiAgICAgIG9ic2VydmVyLm9ic2VydmUoZWwpXG4gICAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB1cGRhdGVUYWJzU2Nyb2xsU3RhdGUsIHsgcGFzc2l2ZTogdHJ1ZSB9KVxuXG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KClcbiAgICAgICAgZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgdXBkYXRlVGFic1Njcm9sbFN0YXRlKVxuICAgICAgfVxuICAgIH0sIFthbGxvd2VkVHlwZXMubGVuZ3RoLCB1cGRhdGVUYWJzU2Nyb2xsU3RhdGVdKVxuXG4gICAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IGVsID0gdGFic1Njcm9sbFJlZi5jdXJyZW50XG4gICAgICBpZiAoIWVsKSByZXR1cm5cblxuICAgICAgY29uc3QgYWN0aXZlVGFiID0gZWwucXVlcnlTZWxlY3RvcihgW2RhdGEtbWVudGlvbi10YWI9XCIke2FjdGl2ZVR5cGV9XCJdYClcbiAgICAgIGFjdGl2ZVRhYj8uc2Nyb2xsSW50b1ZpZXcoeyBibG9jazogJ25lYXJlc3QnLCBpbmxpbmU6ICduZWFyZXN0JyB9KVxuICAgICAgdXBkYXRlVGFic1Njcm9sbFN0YXRlKClcbiAgICB9LCBbYWN0aXZlVHlwZSwgYWxsb3dlZFR5cGVzLCB1cGRhdGVUYWJzU2Nyb2xsU3RhdGVdKVxuXG4gICAgY29uc3QgdXBkYXRlQWN0aXZlSW5kZXggPSB1c2VDYWxsYmFjayhcbiAgICAgIChpZHg6IG51bWJlcikgPT4ge1xuICAgICAgICBpZiAob25BY3RpdmVJbmRleENoYW5nZSkgb25BY3RpdmVJbmRleENoYW5nZShpZHgpXG4gICAgICAgIGVsc2Ugc2V0SW50ZXJuYWxJbmRleChpZHgpXG4gICAgICB9LFxuICAgICAgW29uQWN0aXZlSW5kZXhDaGFuZ2VdXG4gICAgKVxuXG4gICAgLy8gUmVzZXQgYWwgY2FtYmlhciBkZSB0YWIgbyBjYW50aWRhZCBkZSByZXN1bHRhZG9zIChubyBlbiBsb2FkIG1vcmUpXG4gICAgY29uc3QgcHJldklzTG9hZGluZ01vcmVSZWYgPSB1c2VSZWYoZmFsc2UpXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIHByZXZJc0xvYWRpbmdNb3JlUmVmLmN1cnJlbnQgPSBpc0xvYWRpbmdNb3JlID8/IGZhbHNlXG4gICAgICB9XG4gICAgfSwgW2lzTG9hZGluZ01vcmVdKVxuXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmIChwcmV2SXNMb2FkaW5nTW9yZVJlZi5jdXJyZW50KSByZXR1cm5cbiAgICAgIHVwZGF0ZUFjdGl2ZUluZGV4KDApXG4gICAgfSwgW2FjdGl2ZVR5cGUsIGl0ZW1zLmxlbmd0aCwgdXBkYXRlQWN0aXZlSW5kZXhdKVxuXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IGxpc3RFbCA9IGxpc3RSZWYuY3VycmVudFxuICAgICAgaWYgKCFsaXN0RWwgfHwgaXRlbXMubGVuZ3RoID09PSAwKSByZXR1cm5cbiAgICAgIGNvbnN0IGl0ZW1FbHMgPSBsaXN0RWwucXVlcnlTZWxlY3RvckFsbCgnW2RhdGEtbWVudGlvbi1pdGVtXScpXG4gICAgICBpdGVtRWxzW2FjdGl2ZUluZGV4XT8uc2Nyb2xsSW50b1ZpZXcoeyBibG9jazogJ25lYXJlc3QnIH0pXG4gICAgfSwgW2FjdGl2ZUluZGV4LCBpdGVtcy5sZW5ndGhdKVxuXG4gICAgY29uc3QgaGFuZGxlU2VhcmNoS2V5RG93biA9IHVzZUNhbGxiYWNrKFxuICAgICAgKGU6IEtleWJvYXJkRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pID0+IHtcbiAgICAgICAgaWYgKGUua2V5ID09PSAnQXJyb3dEb3duJykge1xuICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgIHVwZGF0ZUFjdGl2ZUluZGV4KGl0ZW1zLmxlbmd0aCA+IDAgPyBNYXRoLm1pbihhY3RpdmVJbmRleCArIDEsIGl0ZW1zLmxlbmd0aCAtIDEpIDogMClcbiAgICAgICAgfSBlbHNlIGlmIChlLmtleSA9PT0gJ0Fycm93VXAnKSB7XG4gICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgdXBkYXRlQWN0aXZlSW5kZXgoTWF0aC5tYXgoYWN0aXZlSW5kZXggLSAxLCAwKSlcbiAgICAgICAgfSBlbHNlIGlmIChlLmtleSA9PT0gJ0VudGVyJykge1xuICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgIGNvbnN0IGl0ZW0gPSBpdGVtc1thY3RpdmVJbmRleF1cbiAgICAgICAgICBpZiAoaXRlbSkgb25JdGVtU2VsZWN0ZWQoaXRlbSlcbiAgICAgICAgfSBlbHNlIGlmIChlLmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KClcbiAgICAgICAgICBvblJlcXVlc3RDbG9zZT8uKClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIFtpdGVtcywgYWN0aXZlSW5kZXgsIHVwZGF0ZUFjdGl2ZUluZGV4LCBvbkl0ZW1TZWxlY3RlZCwgb25SZXF1ZXN0Q2xvc2VdXG4gICAgKVxuXG4gICAgY29uc3QgZW1wdHlNZXNzYWdlID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBpZiAoc2VhcmNoVmFsdWUudHJpbSgpKSB7XG4gICAgICAgIHJldHVybiB0KCdjb250ZXh0TWVudGlvbi5lbXB0eS53aXRoUXVlcnknLCB7XG4gICAgICAgICAgcXVlcnk6IHNlYXJjaFZhbHVlLFxuICAgICAgICAgIGRlZmF1bHRWYWx1ZTogYE5vIGhheSByZXN1bHRhZG9zIHBhcmEgXCIke3NlYXJjaFZhbHVlfVwiYCxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICAgIHJldHVybiB0KCdjb250ZXh0TWVudGlvbi5lbXB0eS5yZWNlbnRzJywgeyBkZWZhdWx0VmFsdWU6ICdFbXBlesOhIGEgZXNjcmliaXIgcGFyYSBidXNjYXInIH0pXG4gICAgfSwgW3NlYXJjaFZhbHVlLCB0XSlcblxuICAgIGNvbnN0IHJlbmRlckJvZHkgPSAoKSA9PiB7XG4gICAgICBpZiAobG9hZGluZykge1xuICAgICAgICByZXR1cm4gPFNDTVBTdGF0ZVdyYXBwZXI+e3QoJ2NvbnRleHRNZW50aW9uLmxvYWRpbmcnLCB7IGRlZmF1bHRWYWx1ZTogJ0J1c2NhbmRvLi4uJyB9KX08L1NDTVBTdGF0ZVdyYXBwZXI+XG4gICAgICB9XG4gICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8U0NNUFN0YXRlV3JhcHBlcj5cbiAgICAgICAgICAgIHt0KCdjb250ZXh0TWVudGlvbi5lcnJvcicsIHsgZGVmYXVsdFZhbHVlOiAnSHVibyB1biBwcm9ibGVtYSBhbCBidXNjYXInIH0pfVxuICAgICAgICAgIDwvU0NNUFN0YXRlV3JhcHBlcj5cbiAgICAgICAgKVxuICAgICAgfVxuICAgICAgaWYgKGl0ZW1zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gPFNDTVBTdGF0ZVdyYXBwZXI+e2VtcHR5TWVzc2FnZX08L1NDTVBTdGF0ZVdyYXBwZXI+XG4gICAgICB9XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8U0NNUExpc3RcbiAgICAgICAgICByZWY9e2xpc3RSZWZ9XG4gICAgICAgICAgZGF0YS1rZXlib2FyZC1uYXY9e2lzS2V5Ym9hcmROYXZBY3RpdmUgfHwgdW5kZWZpbmVkfVxuICAgICAgICAgIG9uTW91c2VNb3ZlPXtvbk1vdXNlTW92ZUluTGlzdH1cbiAgICAgICAgICBvblNjcm9sbD17ZSA9PiB7XG4gICAgICAgICAgICBpZiAoIW9uUmVhY2hMaXN0RW5kIHx8ICFoYXNNb3JlIHx8IGlzTG9hZGluZ01vcmUpIHJldHVyblxuICAgICAgICAgICAgY29uc3QgZWwgPSBlLmN1cnJlbnRUYXJnZXRcbiAgICAgICAgICAgIGNvbnN0IHRocmVzaG9sZCA9IDI0XG4gICAgICAgICAgICBjb25zdCBuZWFyQm90dG9tID0gZWwuc2Nyb2xsVG9wICsgZWwuY2xpZW50SGVpZ2h0ID49IGVsLnNjcm9sbEhlaWdodCAtIHRocmVzaG9sZFxuICAgICAgICAgICAgaWYgKG5lYXJCb3R0b20pIHtcbiAgICAgICAgICAgICAgb25SZWFjaExpc3RFbmQoKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICB7IXNlYXJjaFZhbHVlLnRyaW0oKSAmJiBhY3RpdmVUeXBlICE9PSAndXNlcicgJiYgIWhpZGVSZWNlbnRzTGFiZWwgPyAoXG4gICAgICAgICAgICA8U0NNUFJlY2VudHNSb3c+XG4gICAgICAgICAgICAgIDxTQ01QUmVjZW50c1RpdGxlPlxuICAgICAgICAgICAgICAgIDxTQ01QUmVjZW50c0xhYmVsPnt0KCdjb250ZXh0TWVudGlvbi5yZWNlbnRzVGl0bGUnLCB7IGRlZmF1bHRWYWx1ZTogJ1JlY2llbnRlcycgfSl9PC9TQ01QUmVjZW50c0xhYmVsPlxuICAgICAgICAgICAgICA8L1NDTVBSZWNlbnRzVGl0bGU+XG4gICAgICAgICAgICA8L1NDTVBSZWNlbnRzUm93PlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIHtpdGVtcy5tYXAoKGl0ZW0sIGlkeCkgPT4gKFxuICAgICAgICAgICAgPGRpdiBrZXk9e2Ake2l0ZW0udHlwZX0tJHtpdGVtLmlkfWB9IGRhdGEtbWVudGlvbi1pdGVtIHN0eWxlPXt7IHdpZHRoOiAnMTAwJScgfX0+XG4gICAgICAgICAgICAgIDxDb250ZXh0TWVudGlvbkl0ZW1cbiAgICAgICAgICAgICAgICBpdGVtPXtpdGVtfVxuICAgICAgICAgICAgICAgIGFjdGl2ZT17aWR4ID09PSBhY3RpdmVJbmRleH1cbiAgICAgICAgICAgICAgICBvblNlbGVjdD17b25JdGVtU2VsZWN0ZWR9XG4gICAgICAgICAgICAgICAgb25Ib3Zlcj17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgaWYgKCFpc0tleWJvYXJkTmF2QWN0aXZlKSB1cGRhdGVBY3RpdmVJbmRleChpZHgpXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICkpfVxuICAgICAgICAgIHtpc0xvYWRpbmdNb3JlID8gKFxuICAgICAgICAgICAgPFNDTVBMb2FkTW9yZVJvdz5cbiAgICAgICAgICAgICAgPExvYWRlciBzaXplPVwic21hbGxcIiAvPlxuICAgICAgICAgICAgPC9TQ01QTG9hZE1vcmVSb3c+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvU0NNUExpc3Q+XG4gICAgICApXG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxTQ01QQ29udGFpbmVyXG4gICAgICAgIHJlZj17cmVmfVxuICAgICAgICBzdHlsZT17c3R5bGV9XG4gICAgICAgIHJvbGU9XCJsaXN0Ym94XCJcbiAgICAgICAgYXJpYS1sYWJlbD1cIkNvbnRleHQgbWVudGlvbiBwaWNrZXJcIlxuICAgICAgICBvbk1vdXNlRG93bj17ZSA9PiBlLnN0b3BQcm9wYWdhdGlvbigpfVxuICAgICAgPlxuICAgICAgICB7c2hvd1NlYXJjaElucHV0ID8gKFxuICAgICAgICAgIDxTQ01QU2VhcmNoUm93PlxuICAgICAgICAgICAgey8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc3gtYTExeS9uby1hdXRvZm9jdXMgKi99XG4gICAgICAgICAgICA8U0NNUFNlYXJjaElucHV0XG4gICAgICAgICAgICAgIGF1dG9Gb2N1c1xuICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgIHZhbHVlPXtzZWFyY2hWYWx1ZX1cbiAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3NlYXJjaFBsYWNlaG9sZGVyfVxuICAgICAgICAgICAgICBvbkNoYW5nZT17ZSA9PiBvblNlYXJjaENoYW5nZT8uKGUudGFyZ2V0LnZhbHVlKX1cbiAgICAgICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVTZWFyY2hLZXlEb3dufVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L1NDTVBTZWFyY2hSb3c+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgICA8U0NNUFRhYnNSb3c+XG4gICAgICAgICAgPFNDTVBUYWJzU2Nyb2xsV3JhcD5cbiAgICAgICAgICAgIDxTQ01QVGFic0ZhZGUgJHNpZGU9XCJsZWZ0XCIgJHZpc2libGU9e3RhYnNTY3JvbGwubGVmdH0gYXJpYS1oaWRkZW4gLz5cbiAgICAgICAgICAgIDxTQ01QVGFic0dyb3VwIHJlZj17dGFic1Njcm9sbFJlZn0+XG4gICAgICAgICAgICAgIHthbGxvd2VkVHlwZXMubWFwKHR5cGUgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGxhYmVsID0gdChUQUJfSTE4Tl9LRVlTW3R5cGVdLCB7IGRlZmF1bHRWYWx1ZTogVEFCX0ZBTExCQUNLU1t0eXBlXSB9KVxuICAgICAgICAgICAgICAgIGNvbnN0IGF0UHJlZml4ID0gaGlkZVRhYlByZWZpeCA/ICcnIDogZ2V0TWVudGlvblRhYlByZWZpeCh0eXBlKVxuICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICA8U0NNUFRhYlxuICAgICAgICAgICAgICAgICAgICBrZXk9e3R5cGV9XG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICBkYXRhLW1lbnRpb24tdGFiPXt0eXBlfVxuICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPXthdFByZWZpeCA/IGAke2F0UHJlZml4fSAke2xhYmVsfWAgOiBsYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgJGFjdGl2ZT17dHlwZSA9PT0gYWN0aXZlVHlwZX1cbiAgICAgICAgICAgICAgICAgICAgb25Nb3VzZURvd249e2UgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICAgICAgICAgICAgICBvblR5cGVDaGFuZ2UodHlwZSlcbiAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge2F0UHJlZml4fVxuICAgICAgICAgICAgICAgICAgICB7bGFiZWx9XG4gICAgICAgICAgICAgICAgICA8L1NDTVBUYWI+XG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgIDwvU0NNUFRhYnNHcm91cD5cbiAgICAgICAgICAgIDxTQ01QVGFic0ZhZGUgJHNpZGU9XCJyaWdodFwiICR2aXNpYmxlPXt0YWJzU2Nyb2xsLnJpZ2h0fSBhcmlhLWhpZGRlbiAvPlxuICAgICAgICAgIDwvU0NNUFRhYnNTY3JvbGxXcmFwPlxuICAgICAgICAgIDxUb29sdGlwIHRpdGxlPXtrZXlib2FyZEhpbnQgfHwgJyd9IHsuLi4odG9vbHRpcFpJbmRleCAhPSBudWxsID8geyB6SW5kZXg6IHRvb2x0aXBaSW5kZXggfSA6IHt9KX0+XG4gICAgICAgICAgICA8U0NNUEtleWJvYXJkSGludD5cbiAgICAgICAgICAgICAgPEluZm9ybWF0aW9uQ2lyY2xlIHdpZHRoPXsyMH0gaGVpZ2h0PXsyMH0gY29sb3I9XCIjODA4MDgwXCIgLz5cbiAgICAgICAgICAgIDwvU0NNUEtleWJvYXJkSGludD5cbiAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIDwvU0NNUFRhYnNSb3c+XG4gICAgICAgIDxTQ01QRGl2aWRlcldyYXBwZXI+XG4gICAgICAgICAgPFNDTVBEaXZpZGVyIC8+XG4gICAgICAgIDwvU0NNUERpdmlkZXJXcmFwcGVyPlxuICAgICAgICB7cmVuZGVyQm9keSgpfVxuICAgICAgPC9TQ01QQ29udGFpbmVyPlxuICAgIClcbiAgfVxuKVxuXG5Db250ZXh0TWVudGlvblBvcG92ZXIuZGlzcGxheU5hbWUgPSAnQ29udGV4dE1lbnRpb25Qb3BvdmVyJ1xuIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUEsU0FFRUEsVUFBVSxFQUVWQyxXQUFXLEVBQ1hDLFNBQVMsRUFDVEMsZUFBZSxFQUNmQyxPQUFPLEVBQ1BDLE1BQU0sRUFDTkMsUUFBUSxRQUNILE9BQU87QUFDZCxTQUFTQyxpQkFBaUIsUUFBUSxvREFBb0Q7QUFDdEYsU0FBU0MsT0FBTyxRQUFRLDhDQUE4QztBQUN0RSxTQUFTQyxJQUFJLFFBQVEscUJBQXFCO0FBRTFDLFNBQVNDLG1CQUFtQixRQUFRLHVDQUF1QztBQUMzRSxTQUFTQyxrQkFBa0IsUUFBUSx1QkFBdUI7QUFDMUQsU0FBU0MsTUFBTSxRQUFRLFdBQVc7QUFDbEMsU0FDRUMsYUFBYSxFQUNiQyxXQUFXLEVBQ1hDLGtCQUFrQixFQUNsQkMsZ0JBQWdCLEVBQ2hCQyxjQUFjLEVBQ2RDLGdCQUFnQixFQUNoQkMsUUFBUSxFQUNSQyxnQkFBZ0IsRUFDaEJDLGdCQUFnQixFQUNoQkMsT0FBTyxFQUNQQyxZQUFZLEVBQ1pDLGFBQWEsRUFDYkMsV0FBVyxFQUNYQyxrQkFBa0IsRUFDbEJDLGVBQWUsRUFDZkMsYUFBYSxFQUNiQyxlQUFlLFFBQ1YsZ0NBQWdDO0FBQUEsU0FBQUMsR0FBQSxJQUFBQyxJQUFBLEVBQUFDLElBQUEsSUFBQUMsS0FBQTtBQXVDdkMsSUFBTUMsYUFBZ0QsR0FBRztFQUN2REMsTUFBTSxFQUFFLDRCQUE0QjtFQUNwQ0MsT0FBTyxFQUFFLDZCQUE2QjtFQUN0Q0MsSUFBSSxFQUFFLDBCQUEwQjtFQUNoQ0MsSUFBSSxFQUFFLDBCQUEwQjtFQUNoQ0MsR0FBRyxFQUFFLHlCQUF5QjtFQUM5QkMsS0FBSyxFQUFFO0FBQ1QsQ0FBQztBQUVELElBQU1DLGFBQWdELEdBQUc7RUFDdkROLE1BQU0sRUFBRSxTQUFTO0VBQ2pCQyxPQUFPLEVBQUUsVUFBVTtFQUNuQkMsSUFBSSxFQUFFLE9BQU87RUFDYkMsSUFBSSxFQUFFLFNBQVM7RUFDZkMsR0FBRyxFQUFFLFlBQVk7RUFDakJDLEtBQUssRUFBRTtBQUNULENBQUM7QUFFRCxPQUFPLElBQU1FLHFCQUFxQixnQkFBRzFDLFVBQVUsQ0FDN0MsVUFBQTJDLElBQUEsRUEyQkVDLEdBQUcsRUFDQTtFQUFBLElBMUJEQyxZQUFZLEdBQUFGLElBQUEsQ0FBWkUsWUFBWTtJQUNaQyxVQUFVLEdBQUFILElBQUEsQ0FBVkcsVUFBVTtJQUNWQyxZQUFZLEdBQUFKLElBQUEsQ0FBWkksWUFBWTtJQUNaQyxLQUFLLEdBQUFMLElBQUEsQ0FBTEssS0FBSztJQUNMQyxPQUFPLEdBQUFOLElBQUEsQ0FBUE0sT0FBTztJQUNQQyxLQUFLLEdBQUFQLElBQUEsQ0FBTE8sS0FBSztJQUNMQyxnQkFBZ0IsR0FBQVIsSUFBQSxDQUFoQlEsZ0JBQWdCO0lBQ2hCQyxPQUFPLEdBQUFULElBQUEsQ0FBUFMsT0FBTztJQUNQQyxhQUFhLEdBQUFWLElBQUEsQ0FBYlUsYUFBYTtJQUNiQyxjQUFjLEdBQUFYLElBQUEsQ0FBZFcsY0FBYztJQUNkQyxXQUFXLEdBQUFaLElBQUEsQ0FBWFksV0FBVztJQUNYQyxjQUFjLEdBQUFiLElBQUEsQ0FBZGEsY0FBYztJQUNEQyxlQUFlLEdBQUFkLElBQUEsQ0FBNUJlLFdBQVc7SUFDWEMsbUJBQW1CLEdBQUFoQixJQUFBLENBQW5CZ0IsbUJBQW1CO0lBQ25CQyxtQkFBbUIsR0FBQWpCLElBQUEsQ0FBbkJpQixtQkFBbUI7SUFDbkJDLGlCQUFpQixHQUFBbEIsSUFBQSxDQUFqQmtCLGlCQUFpQjtJQUNqQkMsS0FBSyxHQUFBbkIsSUFBQSxDQUFMbUIsS0FBSztJQUNMQyxZQUFZLEdBQUFwQixJQUFBLENBQVpvQixZQUFZO0lBQ1pDLGVBQWUsR0FBQXJCLElBQUEsQ0FBZnFCLGVBQWU7SUFDZkMsaUJBQWlCLEdBQUF0QixJQUFBLENBQWpCc0IsaUJBQWlCO0lBQ2pCQyxjQUFjLEdBQUF2QixJQUFBLENBQWR1QixjQUFjO0lBQ2RDLGNBQWMsR0FBQXhCLElBQUEsQ0FBZHdCLGNBQWM7SUFDZEMsYUFBYSxHQUFBekIsSUFBQSxDQUFieUIsYUFBYTtJQUNiQyxhQUFhLEdBQUExQixJQUFBLENBQWIwQixhQUFhO0VBSWYsSUFBQUMsS0FBQSxHQUFjN0QsSUFBSSxDQUFDLENBQUM7SUFBWjhELENBQUMsR0FBQUQsS0FBQSxDQUFEQyxDQUFDO0VBQ1QsSUFBQUMsU0FBQSxHQUEwQ2xFLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFBQW1FLFVBQUEsR0FBQUMsY0FBQSxDQUFBRixTQUFBO0lBQTlDRyxhQUFhLEdBQUFGLFVBQUE7SUFBRUcsZ0JBQWdCLEdBQUFILFVBQUE7RUFDdEMsSUFBTWYsV0FBVyxHQUFHRCxlQUFlLGFBQWZBLGVBQWUsY0FBZkEsZUFBZSxHQUFJa0IsYUFBYTtFQUNwRCxJQUFNRSxPQUFPLEdBQUd4RSxNQUFNLENBQWlCLElBQUksQ0FBQztFQUM1QyxJQUFNeUUsYUFBYSxHQUFHekUsTUFBTSxDQUFpQixJQUFJLENBQUM7RUFDbEQsSUFBQTBFLFVBQUEsR0FBb0N6RSxRQUFRLENBQUM7TUFBRTBFLElBQUksRUFBRSxLQUFLO01BQUVDLEtBQUssRUFBRTtJQUFNLENBQUMsQ0FBQztJQUFBQyxVQUFBLEdBQUFSLGNBQUEsQ0FBQUssVUFBQTtJQUFwRUksVUFBVSxHQUFBRCxVQUFBO0lBQUVFLGFBQWEsR0FBQUYsVUFBQTtFQUVoQyxJQUFNRyxxQkFBcUIsR0FBR3BGLFdBQVcsQ0FBQyxZQUFNO0lBQzlDLElBQU1xRixFQUFFLEdBQUdSLGFBQWEsQ0FBQ1MsT0FBTztJQUNoQyxJQUFJLENBQUNELEVBQUUsRUFBRTtJQUVULElBQVFFLFVBQVUsR0FBK0JGLEVBQUUsQ0FBM0NFLFVBQVU7TUFBRUMsV0FBVyxHQUFrQkgsRUFBRSxDQUEvQkcsV0FBVztNQUFFQyxXQUFXLEdBQUtKLEVBQUUsQ0FBbEJJLFdBQVc7SUFDNUMsSUFBTUMsV0FBVyxHQUFHRixXQUFXLEdBQUdDLFdBQVcsR0FBRyxDQUFDO0lBRWpETixhQUFhLENBQUM7TUFDWkosSUFBSSxFQUFFVyxXQUFXLElBQUlILFVBQVUsR0FBRyxDQUFDO01BQ25DUCxLQUFLLEVBQUVVLFdBQVcsSUFBSUgsVUFBVSxHQUFHRSxXQUFXLEdBQUdELFdBQVcsR0FBRztJQUNqRSxDQUFDLENBQUM7RUFDSixDQUFDLEVBQUUsRUFBRSxDQUFDO0VBRU50RixlQUFlLENBQUMsWUFBTTtJQUNwQixJQUFNbUYsRUFBRSxHQUFHUixhQUFhLENBQUNTLE9BQU87SUFDaEMsSUFBSSxDQUFDRCxFQUFFLEVBQUUsT0FBT00sU0FBUztJQUV6QlAscUJBQXFCLENBQUMsQ0FBQztJQUV2QixJQUFNUSxRQUFRLEdBQUcsSUFBSUMsY0FBYyxDQUFDVCxxQkFBcUIsQ0FBQztJQUMxRFEsUUFBUSxDQUFDRSxPQUFPLENBQUNULEVBQUUsQ0FBQztJQUNwQkEsRUFBRSxDQUFDVSxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUVYLHFCQUFxQixFQUFFO01BQUVZLE9BQU8sRUFBRTtJQUFLLENBQUMsQ0FBQztJQUV2RSxPQUFPLFlBQU07TUFDWEosUUFBUSxDQUFDSyxVQUFVLENBQUMsQ0FBQztNQUNyQlosRUFBRSxDQUFDYSxtQkFBbUIsQ0FBQyxRQUFRLEVBQUVkLHFCQUFxQixDQUFDO0lBQ3pELENBQUM7RUFDSCxDQUFDLEVBQUUsQ0FBQ3hDLFlBQVksQ0FBQ3VELE1BQU0sRUFBRWYscUJBQXFCLENBQUMsQ0FBQztFQUVoRGxGLGVBQWUsQ0FBQyxZQUFNO0lBQ3BCLElBQU1tRixFQUFFLEdBQUdSLGFBQWEsQ0FBQ1MsT0FBTztJQUNoQyxJQUFJLENBQUNELEVBQUUsRUFBRTtJQUVULElBQU1lLFNBQVMsR0FBR2YsRUFBRSxDQUFDZ0IsYUFBYSx3QkFBQUMsTUFBQSxDQUF1QnpELFVBQVUsUUFBSSxDQUFDO0lBQ3hFdUQsU0FBUyxhQUFUQSxTQUFTLGVBQVRBLFNBQVMsQ0FBRUcsY0FBYyxDQUFDO01BQUVDLEtBQUssRUFBRSxTQUFTO01BQUVDLE1BQU0sRUFBRTtJQUFVLENBQUMsQ0FBQztJQUNsRXJCLHFCQUFxQixDQUFDLENBQUM7RUFDekIsQ0FBQyxFQUFFLENBQUN2QyxVQUFVLEVBQUVELFlBQVksRUFBRXdDLHFCQUFxQixDQUFDLENBQUM7RUFFckQsSUFBTXNCLGlCQUFpQixHQUFHMUcsV0FBVyxDQUNuQyxVQUFDMkcsR0FBVyxFQUFLO0lBQ2YsSUFBSWpELG1CQUFtQixFQUFFQSxtQkFBbUIsQ0FBQ2lELEdBQUcsQ0FBQyxNQUM1Q2hDLGdCQUFnQixDQUFDZ0MsR0FBRyxDQUFDO0VBQzVCLENBQUMsRUFDRCxDQUFDakQsbUJBQW1CLENBQ3RCLENBQUM7O0VBRUQ7RUFDQSxJQUFNa0Qsb0JBQW9CLEdBQUd4RyxNQUFNLENBQUMsS0FBSyxDQUFDO0VBQzFDSCxTQUFTLENBQUMsWUFBTTtJQUNkLE9BQU8sWUFBTTtNQUNYMkcsb0JBQW9CLENBQUN0QixPQUFPLEdBQUdsQyxhQUFhLGFBQWJBLGFBQWEsY0FBYkEsYUFBYSxHQUFJLEtBQUs7SUFDdkQsQ0FBQztFQUNILENBQUMsRUFBRSxDQUFDQSxhQUFhLENBQUMsQ0FBQztFQUVuQm5ELFNBQVMsQ0FBQyxZQUFNO0lBQ2QsSUFBSTJHLG9CQUFvQixDQUFDdEIsT0FBTyxFQUFFO0lBQ2xDb0IsaUJBQWlCLENBQUMsQ0FBQyxDQUFDO0VBQ3RCLENBQUMsRUFBRSxDQUFDN0QsVUFBVSxFQUFFRSxLQUFLLENBQUNvRCxNQUFNLEVBQUVPLGlCQUFpQixDQUFDLENBQUM7RUFFakR6RyxTQUFTLENBQUMsWUFBTTtJQUFBLElBQUE0RyxvQkFBQTtJQUNkLElBQU1DLE1BQU0sR0FBR2xDLE9BQU8sQ0FBQ1UsT0FBTztJQUM5QixJQUFJLENBQUN3QixNQUFNLElBQUkvRCxLQUFLLENBQUNvRCxNQUFNLEtBQUssQ0FBQyxFQUFFO0lBQ25DLElBQU1ZLE9BQU8sR0FBR0QsTUFBTSxDQUFDRSxnQkFBZ0IsQ0FBQyxxQkFBcUIsQ0FBQztJQUM5RCxDQUFBSCxvQkFBQSxHQUFBRSxPQUFPLENBQUN0RCxXQUFXLENBQUMsY0FBQW9ELG9CQUFBLGVBQXBCQSxvQkFBQSxDQUFzQk4sY0FBYyxDQUFDO01BQUVDLEtBQUssRUFBRTtJQUFVLENBQUMsQ0FBQztFQUM1RCxDQUFDLEVBQUUsQ0FBQy9DLFdBQVcsRUFBRVYsS0FBSyxDQUFDb0QsTUFBTSxDQUFDLENBQUM7RUFFL0IsSUFBTWMsbUJBQW1CLEdBQUdqSCxXQUFXLENBQ3JDLFVBQUNrSCxDQUFrQyxFQUFLO0lBQ3RDLElBQUlBLENBQUMsQ0FBQ0MsR0FBRyxLQUFLLFdBQVcsRUFBRTtNQUN6QkQsQ0FBQyxDQUFDRSxjQUFjLENBQUMsQ0FBQztNQUNsQlYsaUJBQWlCLENBQUMzRCxLQUFLLENBQUNvRCxNQUFNLEdBQUcsQ0FBQyxHQUFHa0IsSUFBSSxDQUFDQyxHQUFHLENBQUM3RCxXQUFXLEdBQUcsQ0FBQyxFQUFFVixLQUFLLENBQUNvRCxNQUFNLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZGLENBQUMsTUFBTSxJQUFJZSxDQUFDLENBQUNDLEdBQUcsS0FBSyxTQUFTLEVBQUU7TUFDOUJELENBQUMsQ0FBQ0UsY0FBYyxDQUFDLENBQUM7TUFDbEJWLGlCQUFpQixDQUFDVyxJQUFJLENBQUNFLEdBQUcsQ0FBQzlELFdBQVcsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDakQsQ0FBQyxNQUFNLElBQUl5RCxDQUFDLENBQUNDLEdBQUcsS0FBSyxPQUFPLEVBQUU7TUFDNUJELENBQUMsQ0FBQ0UsY0FBYyxDQUFDLENBQUM7TUFDbEIsSUFBTUksSUFBSSxHQUFHekUsS0FBSyxDQUFDVSxXQUFXLENBQUM7TUFDL0IsSUFBSStELElBQUksRUFBRWpFLGNBQWMsQ0FBQ2lFLElBQUksQ0FBQztJQUNoQyxDQUFDLE1BQU0sSUFBSU4sQ0FBQyxDQUFDQyxHQUFHLEtBQUssUUFBUSxFQUFFO01BQzdCRCxDQUFDLENBQUNFLGNBQWMsQ0FBQyxDQUFDO01BQ2xCbEQsY0FBYyxhQUFkQSxjQUFjLGVBQWRBLGNBQWMsQ0FBRyxDQUFDO0lBQ3BCO0VBQ0YsQ0FBQyxFQUNELENBQUNuQixLQUFLLEVBQUVVLFdBQVcsRUFBRWlELGlCQUFpQixFQUFFbkQsY0FBYyxFQUFFVyxjQUFjLENBQ3hFLENBQUM7RUFFRCxJQUFNdUQsWUFBWSxHQUFHdEgsT0FBTyxDQUFDLFlBQU07SUFDakMsSUFBSW1ELFdBQVcsQ0FBQ29FLElBQUksQ0FBQyxDQUFDLEVBQUU7TUFDdEIsT0FBT3BELENBQUMsQ0FBQyxnQ0FBZ0MsRUFBRTtRQUN6Q3FELEtBQUssRUFBRXJFLFdBQVc7UUFDbEJzRSxZQUFZLDhCQUFBdEIsTUFBQSxDQUE2QmhELFdBQVc7TUFDdEQsQ0FBQyxDQUFDO0lBQ0o7SUFDQSxPQUFPZ0IsQ0FBQyxDQUFDLDhCQUE4QixFQUFFO01BQUVzRCxZQUFZLEVBQUU7SUFBZ0MsQ0FBQyxDQUFDO0VBQzdGLENBQUMsRUFBRSxDQUFDdEUsV0FBVyxFQUFFZ0IsQ0FBQyxDQUFDLENBQUM7RUFFcEIsSUFBTXVELFVBQVUsR0FBRyxTQUFiQSxVQUFVQSxDQUFBLEVBQVM7SUFDdkIsSUFBSTdFLE9BQU8sRUFBRTtNQUNYLG9CQUFPbEIsSUFBQSxDQUFDWCxnQkFBZ0I7UUFBQTJHLFFBQUEsRUFBRXhELENBQUMsQ0FBQyx3QkFBd0IsRUFBRTtVQUFFc0QsWUFBWSxFQUFFO1FBQWMsQ0FBQztNQUFDLENBQW1CLENBQUM7SUFDNUc7SUFDQSxJQUFJM0UsS0FBSyxFQUFFO01BQ1Qsb0JBQ0VuQixJQUFBLENBQUNYLGdCQUFnQjtRQUFBMkcsUUFBQSxFQUNkeEQsQ0FBQyxDQUFDLHNCQUFzQixFQUFFO1VBQUVzRCxZQUFZLEVBQUU7UUFBNkIsQ0FBQztNQUFDLENBQzFELENBQUM7SUFFdkI7SUFDQSxJQUFJN0UsS0FBSyxDQUFDb0QsTUFBTSxLQUFLLENBQUMsRUFBRTtNQUN0QixvQkFBT3JFLElBQUEsQ0FBQ1gsZ0JBQWdCO1FBQUEyRyxRQUFBLEVBQUVMO01BQVksQ0FBbUIsQ0FBQztJQUM1RDtJQUNBLG9CQUNFekYsS0FBQSxDQUFDZCxRQUFRO01BQ1B5QixHQUFHLEVBQUVpQyxPQUFRO01BQ2IscUJBQW1CakIsbUJBQW1CLElBQUlnQyxTQUFVO01BQ3BEb0MsV0FBVyxFQUFFbkUsaUJBQWtCO01BQy9Cb0UsUUFBUSxFQUFFLFNBQVZBLFFBQVFBLENBQUVkLENBQUMsRUFBSTtRQUNiLElBQUksQ0FBQzdELGNBQWMsSUFBSSxDQUFDRixPQUFPLElBQUlDLGFBQWEsRUFBRTtRQUNsRCxJQUFNaUMsRUFBRSxHQUFHNkIsQ0FBQyxDQUFDZSxhQUFhO1FBQzFCLElBQU1DLFNBQVMsR0FBRyxFQUFFO1FBQ3BCLElBQU1DLFVBQVUsR0FBRzlDLEVBQUUsQ0FBQytDLFNBQVMsR0FBRy9DLEVBQUUsQ0FBQ2dELFlBQVksSUFBSWhELEVBQUUsQ0FBQ2lELFlBQVksR0FBR0osU0FBUztRQUNoRixJQUFJQyxVQUFVLEVBQUU7VUFDZDlFLGNBQWMsQ0FBQyxDQUFDO1FBQ2xCO01BQ0YsQ0FBRTtNQUFBeUUsUUFBQSxHQUVELENBQUN4RSxXQUFXLENBQUNvRSxJQUFJLENBQUMsQ0FBQyxJQUFJN0UsVUFBVSxLQUFLLE1BQU0sSUFBSSxDQUFDSyxnQkFBZ0IsZ0JBQ2hFcEIsSUFBQSxDQUFDZCxjQUFjO1FBQUE4RyxRQUFBLGVBQ2JoRyxJQUFBLENBQUNiLGdCQUFnQjtVQUFBNkcsUUFBQSxlQUNmaEcsSUFBQSxDQUFDZixnQkFBZ0I7WUFBQStHLFFBQUEsRUFBRXhELENBQUMsQ0FBQyw2QkFBNkIsRUFBRTtjQUFFc0QsWUFBWSxFQUFFO1lBQVksQ0FBQztVQUFDLENBQW1CO1FBQUMsQ0FDdEY7TUFBQyxDQUNMLENBQUMsR0FDZixJQUFJLEVBQ1A3RSxLQUFLLENBQUN3RixHQUFHLENBQUMsVUFBQ2YsSUFBSSxFQUFFYixHQUFHO1FBQUEsb0JBQ25CN0UsSUFBQTtVQUFxQyx5QkFBaUI7VUFBQytCLEtBQUssRUFBRTtZQUFFMkUsS0FBSyxFQUFFO1VBQU8sQ0FBRTtVQUFBVixRQUFBLGVBQzlFaEcsSUFBQSxDQUFDcEIsa0JBQWtCO1lBQ2pCOEcsSUFBSSxFQUFFQSxJQUFLO1lBQ1hpQixNQUFNLEVBQUU5QixHQUFHLEtBQUtsRCxXQUFZO1lBQzVCaUYsUUFBUSxFQUFFbkYsY0FBZTtZQUN6Qm9GLE9BQU8sRUFBRSxTQUFUQSxPQUFPQSxDQUFBLEVBQVE7Y0FDYixJQUFJLENBQUNoRixtQkFBbUIsRUFBRStDLGlCQUFpQixDQUFDQyxHQUFHLENBQUM7WUFDbEQ7VUFBRSxDQUNIO1FBQUMsTUFBQUwsTUFBQSxDQVJTa0IsSUFBSSxDQUFDb0IsSUFBSSxPQUFBdEMsTUFBQSxDQUFJa0IsSUFBSSxDQUFDcUIsRUFBRSxDQVM1QixDQUFDO01BQUEsQ0FDUCxDQUFDLEVBQ0R6RixhQUFhLGdCQUNadEIsSUFBQSxDQUFDSixlQUFlO1FBQUFvRyxRQUFBLGVBQ2RoRyxJQUFBLENBQUNuQixNQUFNO1VBQUNtSSxJQUFJLEVBQUM7UUFBTyxDQUFFO01BQUMsQ0FDUixDQUFDLEdBQ2hCLElBQUk7SUFBQSxDQUNBLENBQUM7RUFFZixDQUFDO0VBRUQsb0JBQ0U5RyxLQUFBLENBQUNwQixhQUFhO0lBQ1orQixHQUFHLEVBQUVBLEdBQUk7SUFDVGtCLEtBQUssRUFBRUEsS0FBTTtJQUNia0YsSUFBSSxFQUFDLFNBQVM7SUFDZCxjQUFXLHdCQUF3QjtJQUNuQ0MsV0FBVyxFQUFFLFNBQWJBLFdBQVdBLENBQUU5QixDQUFDO01BQUEsT0FBSUEsQ0FBQyxDQUFDK0IsZUFBZSxDQUFDLENBQUM7SUFBQSxDQUFDO0lBQUFuQixRQUFBLEdBRXJDL0QsZUFBZSxnQkFDZGpDLElBQUEsQ0FBQ0gsYUFBYTtNQUFBbUcsUUFBQSxlQUVaaEcsSUFBQSxDQUFDRixlQUFlO1FBQ2RzSCxTQUFTO1FBQ1ROLElBQUksRUFBQyxNQUFNO1FBQ1hPLEtBQUssRUFBRTdGLFdBQVk7UUFDbkI4RixXQUFXLEVBQUVwRixpQkFBa0I7UUFDL0JxRixRQUFRLEVBQUUsU0FBVkEsUUFBUUEsQ0FBRW5DLENBQUM7VUFBQSxPQUFJakQsY0FBYyxhQUFkQSxjQUFjLHVCQUFkQSxjQUFjLENBQUdpRCxDQUFDLENBQUNvQyxNQUFNLENBQUNILEtBQUssQ0FBQztRQUFBLENBQUM7UUFDaERJLFNBQVMsRUFBRXRDO01BQW9CLENBQ2hDO0lBQUMsQ0FDVyxDQUFDLEdBQ2QsSUFBSSxlQUNSakYsS0FBQSxDQUFDUixXQUFXO01BQUFzRyxRQUFBLGdCQUNWOUYsS0FBQSxDQUFDUCxrQkFBa0I7UUFBQXFHLFFBQUEsZ0JBQ2pCaEcsSUFBQSxDQUFDUixZQUFZO1VBQUNrSSxLQUFLLEVBQUMsTUFBTTtVQUFDQyxRQUFRLEVBQUV2RSxVQUFVLENBQUNILElBQUs7VUFBQztRQUFXLENBQUUsQ0FBQyxlQUNwRWpELElBQUEsQ0FBQ1AsYUFBYTtVQUFDb0IsR0FBRyxFQUFFa0MsYUFBYztVQUFBaUQsUUFBQSxFQUMvQmxGLFlBQVksQ0FBQzJGLEdBQUcsQ0FBQyxVQUFBSyxJQUFJLEVBQUk7WUFDeEIsSUFBTWMsS0FBSyxHQUFHcEYsQ0FBQyxDQUFDckMsYUFBYSxDQUFDMkcsSUFBSSxDQUFDLEVBQUU7Y0FBRWhCLFlBQVksRUFBRXBGLGFBQWEsQ0FBQ29HLElBQUk7WUFBRSxDQUFDLENBQUM7WUFDM0UsSUFBTWUsUUFBUSxHQUFHeEYsYUFBYSxHQUFHLEVBQUUsR0FBRzFELG1CQUFtQixDQUFDbUksSUFBSSxDQUFDO1lBQy9ELG9CQUNFNUcsS0FBQSxDQUFDWCxPQUFPO2NBRU51SCxJQUFJLEVBQUMsUUFBUTtjQUNiLG9CQUFrQkEsSUFBSztjQUN2QixjQUFZZSxRQUFRLE1BQUFyRCxNQUFBLENBQU1xRCxRQUFRLE9BQUFyRCxNQUFBLENBQUlvRCxLQUFLLElBQUtBLEtBQU07Y0FDdERFLE9BQU8sRUFBRWhCLElBQUksS0FBSy9GLFVBQVc7Y0FDN0JtRyxXQUFXLEVBQUUsU0FBYkEsV0FBV0EsQ0FBRTlCLENBQUMsRUFBSTtnQkFDaEJBLENBQUMsQ0FBQ0UsY0FBYyxDQUFDLENBQUM7Z0JBQ2xCRixDQUFDLENBQUMrQixlQUFlLENBQUMsQ0FBQztnQkFDbkJuRyxZQUFZLENBQUM4RixJQUFJLENBQUM7Y0FDcEIsQ0FBRTtjQUFBZCxRQUFBLEdBRUQ2QixRQUFRLEVBQ1JELEtBQUs7WUFBQSxHQVpEZCxJQWFFLENBQUM7VUFFZCxDQUFDO1FBQUMsQ0FDVyxDQUFDLGVBQ2hCOUcsSUFBQSxDQUFDUixZQUFZO1VBQUNrSSxLQUFLLEVBQUMsT0FBTztVQUFDQyxRQUFRLEVBQUV2RSxVQUFVLENBQUNGLEtBQU07VUFBQztRQUFXLENBQUUsQ0FBQztNQUFBLENBQ3BELENBQUMsZUFDckJsRCxJQUFBLENBQUN2QixPQUFPLEVBQUFzSixhQUFBLENBQUFBLGFBQUE7UUFBQ0MsS0FBSyxFQUFFaEcsWUFBWSxJQUFJO01BQUcsR0FBTU0sYUFBYSxJQUFJLElBQUksR0FBRztRQUFFMkYsTUFBTSxFQUFFM0Y7TUFBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQUEwRCxRQUFBLGVBQzdGaEcsSUFBQSxDQUFDVixnQkFBZ0I7VUFBQTBHLFFBQUEsZUFDZmhHLElBQUEsQ0FBQ3hCLGlCQUFpQjtZQUFDa0ksS0FBSyxFQUFFLEVBQUc7WUFBQ3dCLE1BQU0sRUFBRSxFQUFHO1lBQUNDLEtBQUssRUFBQztVQUFTLENBQUU7UUFBQyxDQUM1QztNQUFDLEVBQ1osQ0FBQztJQUFBLENBQ0MsQ0FBQyxlQUNkbkksSUFBQSxDQUFDaEIsa0JBQWtCO01BQUFnSCxRQUFBLGVBQ2pCaEcsSUFBQSxDQUFDakIsV0FBVyxJQUFFO0lBQUMsQ0FDRyxDQUFDLEVBQ3BCZ0gsVUFBVSxDQUFDLENBQUM7RUFBQSxDQUNBLENBQUM7QUFFcEIsQ0FDRixDQUFDO0FBRURwRixxQkFBcUIsQ0FBQ3lILFdBQVcsR0FBRyx1QkFBdUIiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -5,7 +5,6 @@ import { useRef } from 'react';
5
5
  import { Tooltip } from '@projectcor/tooltipv2/lib/components/Tooltip';
6
6
  import { useT } from '../../../hooks/useT';
7
7
  import { useResizeListener } from '../../../hooks/useResize';
8
- import { useUsageStore } from '../../../store/useUsageStore';
9
8
  import { useGlobalContext } from '../../../context/global-context';
10
9
  import { useFrequentlyUsedActions } from '../../../hooks/useFrequentlyUsedActions';
11
10
  import { EVENTS, useEvent } from '../../../hooks/useEvent';
@@ -23,9 +22,7 @@ function FUAListItem(_ref) {
23
22
  onClick = _ref.onClick,
24
23
  index = _ref.index,
25
24
  _ref$highlighted = _ref.highlighted,
26
- highlighted = _ref$highlighted === void 0 ? false : _ref$highlighted,
27
- _ref$disabled = _ref.disabled,
28
- disabled = _ref$disabled === void 0 ? false : _ref$disabled;
25
+ highlighted = _ref$highlighted === void 0 ? false : _ref$highlighted;
29
26
  var titleRef = useRef(null);
30
27
  var _useResizeListener = useResizeListener(titleRef, [action.title]),
31
28
  showTitleTooltip = _useResizeListener.showTooltip;
@@ -34,9 +31,7 @@ function FUAListItem(_ref) {
34
31
  return /*#__PURE__*/_jsxs(SCFUAItem, {
35
32
  $index: index,
36
33
  $highlighted: highlighted,
37
- $disabled: disabled,
38
- onClick: disabled ? undefined : onClick,
39
- "aria-disabled": disabled,
34
+ onClick: onClick,
40
35
  children: [/*#__PURE__*/_jsx(SCFUAItemIcon, {
41
36
  children: CustomIcon ? /*#__PURE__*/_jsx(CustomIcon, {
42
37
  width: 20,
@@ -76,21 +71,11 @@ export var FrequentlyUsedActions = function FrequentlyUsedActions(_ref2) {
76
71
  var _useGlobalContext = useGlobalContext(),
77
72
  section = _useGlobalContext.section;
78
73
  var eventAmplitude = useEvent();
79
- // Del store y no por props: es la misma fuente de verdad que usa el composer, y
80
- // evita enhebrar el flag por toda la cadena de padres.
81
- var usageBlocked = useUsageStore(function (state) {
82
- return state.blocked;
83
- });
84
74
  var fetched = useFrequentlyUsedActions(actionsProp == null ? agentId : undefined, section);
85
75
  var actions = actionsProp !== null && actionsProp !== void 0 ? actionsProp : fetched.actions;
86
76
  var loading = loadingProp !== null && loadingProp !== void 0 ? loadingProp : fetched.loading;
87
77
  var error = errorProp !== null && errorProp !== void 0 ? errorProp : fetched.error;
88
78
  var handleActionClick = function handleActionClick(action) {
89
- // Una acción frecuente arranca un chat igual que escribir en el composer, así que
90
- // con el pool agotado tiene que estar tan cortada como el input. Sin esto el
91
- // usuario mandaba la consulta y recibía el 402 renderizado como si fuera la
92
- // respuesta de MAIA.
93
- if (usageBlocked) return;
94
79
  eventAmplitude(EVENTS.aiChatQuickActionSelect, {
95
80
  type_quick_action: resolveQuickActionType(action),
96
81
  origin_quick_action: resolveQuickActionOrigin(section, variant)
@@ -126,8 +111,7 @@ export var FrequentlyUsedActions = function FrequentlyUsedActions(_ref2) {
126
111
  highlighted: isPlannerSection && index === 0,
127
112
  onClick: function onClick() {
128
113
  return handleActionClick(action);
129
- },
130
- disabled: usageBlocked
114
+ }
131
115
  }, action.id);
132
116
  })
133
117
  })]
@@ -135,4 +119,4 @@ export var FrequentlyUsedActions = function FrequentlyUsedActions(_ref2) {
135
119
  })]
136
120
  });
137
121
  };
138
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VSZWYiLCJUb29sdGlwIiwidXNlVCIsInVzZVJlc2l6ZUxpc3RlbmVyIiwidXNlVXNhZ2VTdG9yZSIsInVzZUdsb2JhbENvbnRleHQiLCJ1c2VGcmVxdWVudGx5VXNlZEFjdGlvbnMiLCJFVkVOVFMiLCJ1c2VFdmVudCIsInJlc29sdmVRdWlja0FjdGlvbk9yaWdpbiIsInJlc29sdmVRdWlja0FjdGlvblR5cGUiLCJGYXFzSWNvbiIsImdldEFjdGlvbkljb24iLCJGcmVxdWVudGx5VXNlZEFjdGlvbnNTa2VsZXRvbiIsIkVycm9yU2VhcmNoRmFxcyIsIkZhZGUiLCJTQ0ZVQUNvbnRhaW5lciIsIlNDRlVBVGl0bGUiLCJTQ0ZVQUxpc3RDb250YWluZXIiLCJTQ0ZVQUxpc3QiLCJTQ0ZVQUl0ZW0iLCJTQ0ZVQUl0ZW1JY29uIiwiU0NGVUFJdGVtQ29udGVudCIsIlNDRlVBSXRlbVRpdGxlIiwiU0NGVUFJdGVtU3VidGl0bGUiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiRlVBTGlzdEl0ZW0iLCJfcmVmIiwiYWN0aW9uIiwiaXNTY3JvbGxpbmciLCJvbkNsaWNrIiwiaW5kZXgiLCJfcmVmJGhpZ2hsaWdodGVkIiwiaGlnaGxpZ2h0ZWQiLCJfcmVmJGRpc2FibGVkIiwiZGlzYWJsZWQiLCJ0aXRsZVJlZiIsIl91c2VSZXNpemVMaXN0ZW5lciIsInRpdGxlIiwic2hvd1RpdGxlVG9vbHRpcCIsInNob3dUb29sdGlwIiwidGl0bGVXaXRoUHJlZml4IiwiY29uY2F0IiwiQ3VzdG9tSWNvbiIsImljb24iLCIkaW5kZXgiLCIkaGlnaGxpZ2h0ZWQiLCIkZGlzYWJsZWQiLCJ1bmRlZmluZWQiLCJjaGlsZHJlbiIsIndpZHRoIiwiaGVpZ2h0IiwidXNlR3JhZGllbnQiLCJyZWYiLCJzdWJ0aXRsZSIsIkZyZXF1ZW50bHlVc2VkQWN0aW9ucyIsIl9yZWYyIiwib25TdGFydENoYXQiLCJhZ2VudElkIiwiX3JlZjIkaXNTY3JvbGxpbmciLCJhY3Rpb25zUHJvcCIsImFjdGlvbnMiLCJsb2FkaW5nUHJvcCIsImxvYWRpbmciLCJlcnJvclByb3AiLCJlcnJvciIsIl9yZWYyJHZhcmlhbnQiLCJ2YXJpYW50IiwiX3VzZVQiLCJ0IiwiX3VzZUdsb2JhbENvbnRleHQiLCJzZWN0aW9uIiwiZXZlbnRBbXBsaXR1ZGUiLCJ1c2FnZUJsb2NrZWQiLCJzdGF0ZSIsImJsb2NrZWQiLCJmZXRjaGVkIiwiaGFuZGxlQWN0aW9uQ2xpY2siLCJhaUNoYXRRdWlja0FjdGlvblNlbGVjdCIsInR5cGVfcXVpY2tfYWN0aW9uIiwib3JpZ2luX3F1aWNrX2FjdGlvbiIsImlkIiwibGVuZ3RoIiwiZ2V0QWN0aW9uc1N0YXR1cyIsImlzUGxhbm5lclNlY3Rpb24iLCJzaG93VGl0bGUiLCIkY29tcGFjdCIsIm1lc3NhZ2UiLCJtYXAiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9hdG9tcy9GcmVxdWVudGx5VXNlZEFjdGlvbnMvRnJlcXVlbnRseVVzZWRBY3Rpb25zLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSByZWFjdC9mdW5jdGlvbi1jb21wb25lbnQtZGVmaW5pdGlvbiAqL1xuLyogZXNsaW50LWRpc2FibGUganN4LWExMXkvY2xpY2stZXZlbnRzLWhhdmUta2V5LWV2ZW50cyAqL1xuLyogZXNsaW50LWRpc2FibGUganN4LWExMXkvbm8tc3RhdGljLWVsZW1lbnQtaW50ZXJhY3Rpb25zICovXG5pbXBvcnQgeyB1c2VSZWYgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IFRvb2x0aXAgfSBmcm9tICdAcHJvamVjdGNvci90b29sdGlwdjIvbGliL2NvbXBvbmVudHMvVG9vbHRpcCdcbmltcG9ydCB7IHVzZVQgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VUJ1xuaW1wb3J0IHsgdXNlUmVzaXplTGlzdGVuZXIgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VSZXNpemUnXG5pbXBvcnQgdHlwZSB7IEFjdGlvbiB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL0FjdGlvbidcbmltcG9ydCB7IHVzZVVzYWdlU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS91c2VVc2FnZVN0b3JlJ1xuaW1wb3J0IHsgdXNlR2xvYmFsQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2NvbnRleHQvZ2xvYmFsLWNvbnRleHQnXG5pbXBvcnQgeyB1c2VGcmVxdWVudGx5VXNlZEFjdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VGcmVxdWVudGx5VXNlZEFjdGlvbnMnXG5pbXBvcnQgeyBFVkVOVFMsIHVzZUV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlRXZlbnQnXG5pbXBvcnQgeyByZXNvbHZlUXVpY2tBY3Rpb25PcmlnaW4sIHJlc29sdmVRdWlja0FjdGlvblR5cGUgfSBmcm9tICcuLi8uLi8uLi91dGlscy9ob3Vyc1BsYW5uZXJRdWlja0FjdGlvblR5cGUnXG5pbXBvcnQgeyBBdHRhY2htZW50RmlsZSB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9DaGF0Rm9vdGVyL0NoYXRGb290ZXInXG5pbXBvcnQgeyBGYXFzSWNvbiB9IGZyb20gJy4uL2ljb25zL0ZhcXNJY29uJ1xuaW1wb3J0IHsgZ2V0QWN0aW9uSWNvbiB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2FjdGlvbkljb25NYXAnXG5pbXBvcnQgeyBGcmVxdWVudGx5VXNlZEFjdGlvbnNTa2VsZXRvbiB9IGZyb20gJy4vRnJlcXVlbnRseVVzZWRBY3Rpb25zLnNrZWxldG9uJ1xuaW1wb3J0IHsgRXJyb3JTZWFyY2hGYXFzIH0gZnJvbSAnLi4vRXJyb3JTZWFyY2hGYXFzJ1xuaW1wb3J0IHsgRmFkZSB9IGZyb20gJy4uL0ZhZGUnXG5pbXBvcnQge1xuICBTQ0ZVQUNvbnRhaW5lcixcbiAgU0NGVUFUaXRsZSxcbiAgU0NGVUFMaXN0Q29udGFpbmVyLFxuICBTQ0ZVQUxpc3QsXG4gIFNDRlVBSXRlbSxcbiAgU0NGVUFJdGVtSWNvbixcbiAgU0NGVUFJdGVtQ29udGVudCxcbiAgU0NGVUFJdGVtVGl0bGUsXG4gIFNDRlVBSXRlbVN1YnRpdGxlLFxufSBmcm9tICcuL0ZyZXF1ZW50bHlVc2VkQWN0aW9ucy5zdHlsZXMnXG5cbmZ1bmN0aW9uIEZVQUxpc3RJdGVtKHtcbiAgYWN0aW9uLFxuICBpc1Njcm9sbGluZyxcbiAgb25DbGljayxcbiAgaW5kZXgsXG4gIGhpZ2hsaWdodGVkID0gZmFsc2UsXG4gIGRpc2FibGVkID0gZmFsc2UsXG59OiB7XG4gIGFjdGlvbjogQWN0aW9uXG4gIGlzU2Nyb2xsaW5nOiBib29sZWFuXG4gIG9uQ2xpY2s6ICgpID0+IHZvaWRcbiAgaW5kZXg6IG51bWJlclxuICBoaWdobGlnaHRlZD86IGJvb2xlYW5cbiAgZGlzYWJsZWQ/OiBib29sZWFuXG59KSB7XG4gIGNvbnN0IHRpdGxlUmVmID0gdXNlUmVmPEhUTUxTcGFuRWxlbWVudD4obnVsbClcbiAgY29uc3QgeyBzaG93VG9vbHRpcDogc2hvd1RpdGxlVG9vbHRpcCB9ID0gdXNlUmVzaXplTGlzdGVuZXIodGl0bGVSZWYsIFthY3Rpb24udGl0bGVdKVxuICBjb25zdCB0aXRsZVdpdGhQcmVmaXggPSBgLyR7YWN0aW9uLnRpdGxlfWBcbiAgY29uc3QgQ3VzdG9tSWNvbiA9IGdldEFjdGlvbkljb24oYWN0aW9uLmljb24pXG5cbiAgcmV0dXJuIChcbiAgICA8U0NGVUFJdGVtXG4gICAgICAkaW5kZXg9e2luZGV4fVxuICAgICAgJGhpZ2hsaWdodGVkPXtoaWdobGlnaHRlZH1cbiAgICAgICRkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICBvbkNsaWNrPXtkaXNhYmxlZCA/IHVuZGVmaW5lZCA6IG9uQ2xpY2t9XG4gICAgICBhcmlhLWRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICA+XG4gICAgICA8U0NGVUFJdGVtSWNvbj5cbiAgICAgICAge0N1c3RvbUljb24gPyA8Q3VzdG9tSWNvbiB3aWR0aD17MjB9IGhlaWdodD17MjB9IC8+IDogPEZhcXNJY29uIHVzZUdyYWRpZW50IGhlaWdodD17MjB9IHdpZHRoPXsyMH0gLz59XG4gICAgICA8L1NDRlVBSXRlbUljb24+XG4gICAgICA8U0NGVUFJdGVtQ29udGVudD5cbiAgICAgICAgPFNDRlVBSXRlbVRpdGxlIHJlZj17dGl0bGVSZWZ9PlxuICAgICAgICAgIHtpc1Njcm9sbGluZyA/IChcbiAgICAgICAgICAgIHRpdGxlV2l0aFByZWZpeFxuICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICA8VG9vbHRpcCB0aXRsZT17c2hvd1RpdGxlVG9vbHRpcCA/IHRpdGxlV2l0aFByZWZpeCA6ICcnfT5cbiAgICAgICAgICAgICAgPHNwYW4+e3RpdGxlV2l0aFByZWZpeH08L3NwYW4+XG4gICAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9TQ0ZVQUl0ZW1UaXRsZT5cbiAgICAgICAge2FjdGlvbi5zdWJ0aXRsZSA/IDxTQ0ZVQUl0ZW1TdWJ0aXRsZT57YWN0aW9uLnN1YnRpdGxlfTwvU0NGVUFJdGVtU3VidGl0bGU+IDogbnVsbH1cbiAgICAgIDwvU0NGVUFJdGVtQ29udGVudD5cbiAgICA8L1NDRlVBSXRlbT5cbiAgKVxufVxuXG50eXBlIEZyZXF1ZW50bHlVc2VkQWN0aW9uc1Byb3BzID0ge1xuICBvblN0YXJ0Q2hhdDogKFxuICAgIG1lc3NhZ2U6IHN0cmluZyxcbiAgICBhdHRhY2htZW50cz86IEF0dGFjaG1lbnRGaWxlW10gfCBudWxsLFxuICAgIGZhcUlkPzogc3RyaW5nLFxuICAgIGFnZW50U3VnZ2VzdGlvbklkPzogc3RyaW5nLFxuICAgIG1lbnRpb25zPzogbnVsbCxcbiAgICBmdWFJZD86IHN0cmluZ1xuICApID0+IHZvaWRcbiAgYWdlbnRJZD86IHN0cmluZ1xuICBpc1Njcm9sbGluZz86IGJvb2xlYW5cbiAgYWN0aW9ucz86IEFjdGlvbltdXG4gIGxvYWRpbmc/OiBib29sZWFuXG4gIGVycm9yPzogc3RyaW5nIHwgbnVsbFxuICB2YXJpYW50PzogJ2RlZmF1bHQnIHwgJ3BsYW5uZXInXG59XG5cbmV4cG9ydCBjb25zdCBGcmVxdWVudGx5VXNlZEFjdGlvbnMgPSAoe1xuICBvblN0YXJ0Q2hhdCxcbiAgYWdlbnRJZCxcbiAgaXNTY3JvbGxpbmcgPSBmYWxzZSxcbiAgYWN0aW9uczogYWN0aW9uc1Byb3AsXG4gIGxvYWRpbmc6IGxvYWRpbmdQcm9wLFxuICBlcnJvcjogZXJyb3JQcm9wLFxuICB2YXJpYW50ID0gJ2RlZmF1bHQnLFxufTogRnJlcXVlbnRseVVzZWRBY3Rpb25zUHJvcHMpID0+IHtcbiAgY29uc3QgeyB0IH0gPSB1c2VUKClcbiAgY29uc3QgeyBzZWN0aW9uIH0gPSB1c2VHbG9iYWxDb250ZXh0KClcbiAgY29uc3QgZXZlbnRBbXBsaXR1ZGUgPSB1c2VFdmVudCgpXG4gIC8vIERlbCBzdG9yZSB5IG5vIHBvciBwcm9wczogZXMgbGEgbWlzbWEgZnVlbnRlIGRlIHZlcmRhZCBxdWUgdXNhIGVsIGNvbXBvc2VyLCB5XG4gIC8vIGV2aXRhIGVuaGVicmFyIGVsIGZsYWcgcG9yIHRvZGEgbGEgY2FkZW5hIGRlIHBhZHJlcy5cbiAgY29uc3QgdXNhZ2VCbG9ja2VkID0gdXNlVXNhZ2VTdG9yZShzdGF0ZSA9PiBzdGF0ZS5ibG9ja2VkKVxuICBjb25zdCBmZXRjaGVkID0gdXNlRnJlcXVlbnRseVVzZWRBY3Rpb25zKGFjdGlvbnNQcm9wID09IG51bGwgPyBhZ2VudElkIDogdW5kZWZpbmVkLCBzZWN0aW9uKVxuICBjb25zdCBhY3Rpb25zID0gYWN0aW9uc1Byb3AgPz8gZmV0Y2hlZC5hY3Rpb25zXG4gIGNvbnN0IGxvYWRpbmcgPSBsb2FkaW5nUHJvcCA/PyBmZXRjaGVkLmxvYWRpbmdcbiAgY29uc3QgZXJyb3IgPSBlcnJvclByb3AgPz8gZmV0Y2hlZC5lcnJvclxuXG4gIGNvbnN0IGhhbmRsZUFjdGlvbkNsaWNrID0gKGFjdGlvbjogQWN0aW9uKSA9PiB7XG4gICAgLy8gVW5hIGFjY2nDs24gZnJlY3VlbnRlIGFycmFuY2EgdW4gY2hhdCBpZ3VhbCBxdWUgZXNjcmliaXIgZW4gZWwgY29tcG9zZXIsIGFzw60gcXVlXG4gICAgLy8gY29uIGVsIHBvb2wgYWdvdGFkbyB0aWVuZSBxdWUgZXN0YXIgdGFuIGNvcnRhZGEgY29tbyBlbCBpbnB1dC4gU2luIGVzdG8gZWxcbiAgICAvLyB1c3VhcmlvIG1hbmRhYmEgbGEgY29uc3VsdGEgeSByZWNpYsOtYSBlbCA0MDIgcmVuZGVyaXphZG8gY29tbyBzaSBmdWVyYSBsYVxuICAgIC8vIHJlc3B1ZXN0YSBkZSBNQUlBLlxuICAgIGlmICh1c2FnZUJsb2NrZWQpIHJldHVyblxuXG4gICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdFF1aWNrQWN0aW9uU2VsZWN0LCB7XG4gICAgICB0eXBlX3F1aWNrX2FjdGlvbjogcmVzb2x2ZVF1aWNrQWN0aW9uVHlwZShhY3Rpb24pLFxuICAgICAgb3JpZ2luX3F1aWNrX2FjdGlvbjogcmVzb2x2ZVF1aWNrQWN0aW9uT3JpZ2luKHNlY3Rpb24sIHZhcmlhbnQpLFxuICAgIH0pXG4gICAgb25TdGFydENoYXQoYWN0aW9uLnRpdGxlLCBudWxsLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgbnVsbCwgYWN0aW9uLmlkKVxuICB9XG5cbiAgaWYgKCFsb2FkaW5nICYmICFlcnJvciAmJiBhY3Rpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBudWxsXG4gIH1cblxuICBjb25zdCBnZXRBY3Rpb25zU3RhdHVzID0gKCkgPT4ge1xuICAgIGlmIChsb2FkaW5nKSByZXR1cm4gJ2xvYWRpbmcnXG4gICAgaWYgKGVycm9yKSByZXR1cm4gJ2Vycm9yJ1xuICAgIHJldHVybiAnbGlzdCdcbiAgfVxuXG4gIGNvbnN0IGlzUGxhbm5lclNlY3Rpb24gPSBzZWN0aW9uID09PSAncGxhbm5lcicgfHwgdmFyaWFudCA9PT0gJ3BsYW5uZXInXG4gIGNvbnN0IHNob3dUaXRsZSA9ICFpc1BsYW5uZXJTZWN0aW9uICYmICFsb2FkaW5nICYmICFlcnJvciAmJiBhY3Rpb25zLmxlbmd0aCA+IDBcblxuICByZXR1cm4gKFxuICAgIDxTQ0ZVQUNvbnRhaW5lciAkY29tcGFjdD17IXNob3dUaXRsZX0+XG4gICAgICB7c2hvd1RpdGxlICYmIChcbiAgICAgICAgPFNDRlVBVGl0bGU+XG4gICAgICAgICAgPHNwYW4+e3QoJ2hvbWVNZW51LmZ1YS50aXRsZScpfTwvc3Bhbj5cbiAgICAgICAgPC9TQ0ZVQVRpdGxlPlxuICAgICAgKX1cbiAgICAgIDxTQ0ZVQUxpc3RDb250YWluZXI+XG4gICAgICAgIDxGYWRlIGtleT17Z2V0QWN0aW9uc1N0YXR1cygpfT5cbiAgICAgICAgICB7bG9hZGluZyAmJiAhZXJyb3IgJiYgPEZyZXF1ZW50bHlVc2VkQWN0aW9uc1NrZWxldG9uIC8+fVxuICAgICAgICAgIHtlcnJvciAmJiA8RXJyb3JTZWFyY2hGYXFzIG1lc3NhZ2U9e3QoJ2hvbWVNZW51LmZ1YS5lcnJvcicpfSAvPn1cbiAgICAgICAgICB7IWxvYWRpbmcgJiYgIWVycm9yICYmIGFjdGlvbnMubGVuZ3RoID4gMCAmJiAoXG4gICAgICAgICAgICA8U0NGVUFMaXN0PlxuICAgICAgICAgICAgICB7YWN0aW9ucy5tYXAoKGFjdGlvbiwgaW5kZXgpID0+IChcbiAgICAgICAgICAgICAgICA8RlVBTGlzdEl0ZW1cbiAgICAgICAgICAgICAgICAgIGtleT17YWN0aW9uLmlkfVxuICAgICAgICAgICAgICAgICAgaW5kZXg9e2luZGV4fVxuICAgICAgICAgICAgICAgICAgYWN0aW9uPXthY3Rpb259XG4gICAgICAgICAgICAgICAgICBpc1Njcm9sbGluZz17aXNTY3JvbGxpbmd9XG4gICAgICAgICAgICAgICAgICBoaWdobGlnaHRlZD17aXNQbGFubmVyU2VjdGlvbiAmJiBpbmRleCA9PT0gMH1cbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZUFjdGlvbkNsaWNrKGFjdGlvbil9XG4gICAgICAgICAgICAgICAgICBkaXNhYmxlZD17dXNhZ2VCbG9ja2VkfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC9TQ0ZVQUxpc3Q+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9GYWRlPlxuICAgICAgPC9TQ0ZVQUxpc3RDb250YWluZXI+XG4gICAgPC9TQ0ZVQUNvbnRhaW5lcj5cbiAgKVxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxNQUFNLFFBQVEsT0FBTztBQUM5QixTQUFTQyxPQUFPLFFBQVEsOENBQThDO0FBQ3RFLFNBQVNDLElBQUksUUFBUSxxQkFBcUI7QUFDMUMsU0FBU0MsaUJBQWlCLFFBQVEsMEJBQTBCO0FBRTVELFNBQVNDLGFBQWEsUUFBUSw4QkFBOEI7QUFDNUQsU0FBU0MsZ0JBQWdCLFFBQVEsaUNBQWlDO0FBQ2xFLFNBQVNDLHdCQUF3QixRQUFRLHlDQUF5QztBQUNsRixTQUFTQyxNQUFNLEVBQUVDLFFBQVEsUUFBUSx5QkFBeUI7QUFDMUQsU0FBU0Msd0JBQXdCLEVBQUVDLHNCQUFzQixRQUFRLDRDQUE0QztBQUU3RyxTQUFTQyxRQUFRLFFBQVEsbUJBQW1CO0FBQzVDLFNBQVNDLGFBQWEsUUFBUSw4QkFBOEI7QUFDNUQsU0FBU0MsNkJBQTZCLFFBQVEsa0NBQWtDO0FBQ2hGLFNBQVNDLGVBQWUsUUFBUSxvQkFBb0I7QUFDcEQsU0FBU0MsSUFBSSxRQUFRLFNBQVM7QUFDOUIsU0FDRUMsY0FBYyxFQUNkQyxVQUFVLEVBQ1ZDLGtCQUFrQixFQUNsQkMsU0FBUyxFQUNUQyxTQUFTLEVBQ1RDLGFBQWEsRUFDYkMsZ0JBQWdCLEVBQ2hCQyxjQUFjLEVBQ2RDLGlCQUFpQixRQUNaLGdDQUFnQztBQUFBLFNBQUFDLEdBQUEsSUFBQUMsSUFBQSxFQUFBQyxJQUFBLElBQUFDLEtBQUE7QUFFdkMsU0FBU0MsV0FBV0EsQ0FBQUMsSUFBQSxFQWNqQjtFQUFBLElBYkRDLE1BQU0sR0FBQUQsSUFBQSxDQUFOQyxNQUFNO0lBQ05DLFdBQVcsR0FBQUYsSUFBQSxDQUFYRSxXQUFXO0lBQ1hDLE9BQU8sR0FBQUgsSUFBQSxDQUFQRyxPQUFPO0lBQ1BDLEtBQUssR0FBQUosSUFBQSxDQUFMSSxLQUFL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
122
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VSZWYiLCJUb29sdGlwIiwidXNlVCIsInVzZVJlc2l6ZUxpc3RlbmVyIiwidXNlR2xvYmFsQ29udGV4dCIsInVzZUZyZXF1ZW50bHlVc2VkQWN0aW9ucyIsIkVWRU5UUyIsInVzZUV2ZW50IiwicmVzb2x2ZVF1aWNrQWN0aW9uT3JpZ2luIiwicmVzb2x2ZVF1aWNrQWN0aW9uVHlwZSIsIkZhcXNJY29uIiwiZ2V0QWN0aW9uSWNvbiIsIkZyZXF1ZW50bHlVc2VkQWN0aW9uc1NrZWxldG9uIiwiRXJyb3JTZWFyY2hGYXFzIiwiRmFkZSIsIlNDRlVBQ29udGFpbmVyIiwiU0NGVUFUaXRsZSIsIlNDRlVBTGlzdENvbnRhaW5lciIsIlNDRlVBTGlzdCIsIlNDRlVBSXRlbSIsIlNDRlVBSXRlbUljb24iLCJTQ0ZVQUl0ZW1Db250ZW50IiwiU0NGVUFJdGVtVGl0bGUiLCJTQ0ZVQUl0ZW1TdWJ0aXRsZSIsImpzeCIsIl9qc3giLCJqc3hzIiwiX2pzeHMiLCJGVUFMaXN0SXRlbSIsIl9yZWYiLCJhY3Rpb24iLCJpc1Njcm9sbGluZyIsIm9uQ2xpY2siLCJpbmRleCIsIl9yZWYkaGlnaGxpZ2h0ZWQiLCJoaWdobGlnaHRlZCIsInRpdGxlUmVmIiwiX3VzZVJlc2l6ZUxpc3RlbmVyIiwidGl0bGUiLCJzaG93VGl0bGVUb29sdGlwIiwic2hvd1Rvb2x0aXAiLCJ0aXRsZVdpdGhQcmVmaXgiLCJjb25jYXQiLCJDdXN0b21JY29uIiwiaWNvbiIsIiRpbmRleCIsIiRoaWdobGlnaHRlZCIsImNoaWxkcmVuIiwid2lkdGgiLCJoZWlnaHQiLCJ1c2VHcmFkaWVudCIsInJlZiIsInN1YnRpdGxlIiwiRnJlcXVlbnRseVVzZWRBY3Rpb25zIiwiX3JlZjIiLCJvblN0YXJ0Q2hhdCIsImFnZW50SWQiLCJfcmVmMiRpc1Njcm9sbGluZyIsImFjdGlvbnNQcm9wIiwiYWN0aW9ucyIsImxvYWRpbmdQcm9wIiwibG9hZGluZyIsImVycm9yUHJvcCIsImVycm9yIiwiX3JlZjIkdmFyaWFudCIsInZhcmlhbnQiLCJfdXNlVCIsInQiLCJfdXNlR2xvYmFsQ29udGV4dCIsInNlY3Rpb24iLCJldmVudEFtcGxpdHVkZSIsImZldGNoZWQiLCJ1bmRlZmluZWQiLCJoYW5kbGVBY3Rpb25DbGljayIsImFpQ2hhdFF1aWNrQWN0aW9uU2VsZWN0IiwidHlwZV9xdWlja19hY3Rpb24iLCJvcmlnaW5fcXVpY2tfYWN0aW9uIiwiaWQiLCJsZW5ndGgiLCJnZXRBY3Rpb25zU3RhdHVzIiwiaXNQbGFubmVyU2VjdGlvbiIsInNob3dUaXRsZSIsIiRjb21wYWN0IiwibWVzc2FnZSIsIm1hcCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL0ZyZXF1ZW50bHlVc2VkQWN0aW9ucy9GcmVxdWVudGx5VXNlZEFjdGlvbnMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIHJlYWN0L2Z1bmN0aW9uLWNvbXBvbmVudC1kZWZpbml0aW9uICovXG4vKiBlc2xpbnQtZGlzYWJsZSBqc3gtYTExeS9jbGljay1ldmVudHMtaGF2ZS1rZXktZXZlbnRzICovXG4vKiBlc2xpbnQtZGlzYWJsZSBqc3gtYTExeS9uby1zdGF0aWMtZWxlbWVudC1pbnRlcmFjdGlvbnMgKi9cbmltcG9ydCB7IHVzZVJlZiB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgVG9vbHRpcCB9IGZyb20gJ0Bwcm9qZWN0Y29yL3Rvb2x0aXB2Mi9saWIvY29tcG9uZW50cy9Ub29sdGlwJ1xuaW1wb3J0IHsgdXNlVCB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZVQnXG5pbXBvcnQgeyB1c2VSZXNpemVMaXN0ZW5lciB9IGZyb20gJy4uLy4uLy4uL2hvb2tzL3VzZVJlc2l6ZSdcbmltcG9ydCB0eXBlIHsgQWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvQWN0aW9uJ1xuaW1wb3J0IHsgdXNlR2xvYmFsQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2NvbnRleHQvZ2xvYmFsLWNvbnRleHQnXG5pbXBvcnQgeyB1c2VGcmVxdWVudGx5VXNlZEFjdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VGcmVxdWVudGx5VXNlZEFjdGlvbnMnXG5pbXBvcnQgeyBFVkVOVFMsIHVzZUV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlRXZlbnQnXG5pbXBvcnQgeyByZXNvbHZlUXVpY2tBY3Rpb25PcmlnaW4sIHJlc29sdmVRdWlja0FjdGlvblR5cGUgfSBmcm9tICcuLi8uLi8uLi91dGlscy9ob3Vyc1BsYW5uZXJRdWlja0FjdGlvblR5cGUnXG5pbXBvcnQgeyBBdHRhY2htZW50RmlsZSB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9DaGF0Rm9vdGVyL0NoYXRGb290ZXInXG5pbXBvcnQgeyBGYXFzSWNvbiB9IGZyb20gJy4uL2ljb25zL0ZhcXNJY29uJ1xuaW1wb3J0IHsgZ2V0QWN0aW9uSWNvbiB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2FjdGlvbkljb25NYXAnXG5pbXBvcnQgeyBGcmVxdWVudGx5VXNlZEFjdGlvbnNTa2VsZXRvbiB9IGZyb20gJy4vRnJlcXVlbnRseVVzZWRBY3Rpb25zLnNrZWxldG9uJ1xuaW1wb3J0IHsgRXJyb3JTZWFyY2hGYXFzIH0gZnJvbSAnLi4vRXJyb3JTZWFyY2hGYXFzJ1xuaW1wb3J0IHsgRmFkZSB9IGZyb20gJy4uL0ZhZGUnXG5pbXBvcnQge1xuICBTQ0ZVQUNvbnRhaW5lcixcbiAgU0NGVUFUaXRsZSxcbiAgU0NGVUFMaXN0Q29udGFpbmVyLFxuICBTQ0ZVQUxpc3QsXG4gIFNDRlVBSXRlbSxcbiAgU0NGVUFJdGVtSWNvbixcbiAgU0NGVUFJdGVtQ29udGVudCxcbiAgU0NGVUFJdGVtVGl0bGUsXG4gIFNDRlVBSXRlbVN1YnRpdGxlLFxufSBmcm9tICcuL0ZyZXF1ZW50bHlVc2VkQWN0aW9ucy5zdHlsZXMnXG5cbmZ1bmN0aW9uIEZVQUxpc3RJdGVtKHtcbiAgYWN0aW9uLFxuICBpc1Njcm9sbGluZyxcbiAgb25DbGljayxcbiAgaW5kZXgsXG4gIGhpZ2hsaWdodGVkID0gZmFsc2UsXG59OiB7XG4gIGFjdGlvbjogQWN0aW9uXG4gIGlzU2Nyb2xsaW5nOiBib29sZWFuXG4gIG9uQ2xpY2s6ICgpID0+IHZvaWRcbiAgaW5kZXg6IG51bWJlclxuICBoaWdobGlnaHRlZD86IGJvb2xlYW5cbn0pIHtcbiAgY29uc3QgdGl0bGVSZWYgPSB1c2VSZWY8SFRNTFNwYW5FbGVtZW50PihudWxsKVxuICBjb25zdCB7IHNob3dUb29sdGlwOiBzaG93VGl0bGVUb29sdGlwIH0gPSB1c2VSZXNpemVMaXN0ZW5lcih0aXRsZVJlZiwgW2FjdGlvbi50aXRsZV0pXG4gIGNvbnN0IHRpdGxlV2l0aFByZWZpeCA9IGAvJHthY3Rpb24udGl0bGV9YFxuICBjb25zdCBDdXN0b21JY29uID0gZ2V0QWN0aW9uSWNvbihhY3Rpb24uaWNvbilcblxuICByZXR1cm4gKFxuICAgIDxTQ0ZVQUl0ZW0gJGluZGV4PXtpbmRleH0gJGhpZ2hsaWdodGVkPXtoaWdobGlnaHRlZH0gb25DbGljaz17b25DbGlja30+XG4gICAgICA8U0NGVUFJdGVtSWNvbj5cbiAgICAgICAge0N1c3RvbUljb24gPyA8Q3VzdG9tSWNvbiB3aWR0aD17MjB9IGhlaWdodD17MjB9IC8+IDogPEZhcXNJY29uIHVzZUdyYWRpZW50IGhlaWdodD17MjB9IHdpZHRoPXsyMH0gLz59XG4gICAgICA8L1NDRlVBSXRlbUljb24+XG4gICAgICA8U0NGVUFJdGVtQ29udGVudD5cbiAgICAgICAgPFNDRlVBSXRlbVRpdGxlIHJlZj17dGl0bGVSZWZ9PlxuICAgICAgICAgIHtpc1Njcm9sbGluZyA/IChcbiAgICAgICAgICAgIHRpdGxlV2l0aFByZWZpeFxuICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICA8VG9vbHRpcCB0aXRsZT17c2hvd1RpdGxlVG9vbHRpcCA/IHRpdGxlV2l0aFByZWZpeCA6ICcnfT5cbiAgICAgICAgICAgICAgPHNwYW4+e3RpdGxlV2l0aFByZWZpeH08L3NwYW4+XG4gICAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9TQ0ZVQUl0ZW1UaXRsZT5cbiAgICAgICAge2FjdGlvbi5zdWJ0aXRsZSA/IDxTQ0ZVQUl0ZW1TdWJ0aXRsZT57YWN0aW9uLnN1YnRpdGxlfTwvU0NGVUFJdGVtU3VidGl0bGU+IDogbnVsbH1cbiAgICAgIDwvU0NGVUFJdGVtQ29udGVudD5cbiAgICA8L1NDRlVBSXRlbT5cbiAgKVxufVxuXG50eXBlIEZyZXF1ZW50bHlVc2VkQWN0aW9uc1Byb3BzID0ge1xuICBvblN0YXJ0Q2hhdDogKFxuICAgIG1lc3NhZ2U6IHN0cmluZyxcbiAgICBhdHRhY2htZW50cz86IEF0dGFjaG1lbnRGaWxlW10gfCBudWxsLFxuICAgIGZhcUlkPzogc3RyaW5nLFxuICAgIGFnZW50U3VnZ2VzdGlvbklkPzogc3RyaW5nLFxuICAgIG1lbnRpb25zPzogbnVsbCxcbiAgICBmdWFJZD86IHN0cmluZ1xuICApID0+IHZvaWRcbiAgYWdlbnRJZD86IHN0cmluZ1xuICBpc1Njcm9sbGluZz86IGJvb2xlYW5cbiAgYWN0aW9ucz86IEFjdGlvbltdXG4gIGxvYWRpbmc/OiBib29sZWFuXG4gIGVycm9yPzogc3RyaW5nIHwgbnVsbFxuICB2YXJpYW50PzogJ2RlZmF1bHQnIHwgJ3BsYW5uZXInXG59XG5cbmV4cG9ydCBjb25zdCBGcmVxdWVudGx5VXNlZEFjdGlvbnMgPSAoe1xuICBvblN0YXJ0Q2hhdCxcbiAgYWdlbnRJZCxcbiAgaXNTY3JvbGxpbmcgPSBmYWxzZSxcbiAgYWN0aW9uczogYWN0aW9uc1Byb3AsXG4gIGxvYWRpbmc6IGxvYWRpbmdQcm9wLFxuICBlcnJvcjogZXJyb3JQcm9wLFxuICB2YXJpYW50ID0gJ2RlZmF1bHQnLFxufTogRnJlcXVlbnRseVVzZWRBY3Rpb25zUHJvcHMpID0+IHtcbiAgY29uc3QgeyB0IH0gPSB1c2VUKClcbiAgY29uc3QgeyBzZWN0aW9uIH0gPSB1c2VHbG9iYWxDb250ZXh0KClcbiAgY29uc3QgZXZlbnRBbXBsaXR1ZGUgPSB1c2VFdmVudCgpXG4gIGNvbnN0IGZldGNoZWQgPSB1c2VGcmVxdWVudGx5VXNlZEFjdGlvbnMoYWN0aW9uc1Byb3AgPT0gbnVsbCA/IGFnZW50SWQgOiB1bmRlZmluZWQsIHNlY3Rpb24pXG4gIGNvbnN0IGFjdGlvbnMgPSBhY3Rpb25zUHJvcCA/PyBmZXRjaGVkLmFjdGlvbnNcbiAgY29uc3QgbG9hZGluZyA9IGxvYWRpbmdQcm9wID8/IGZldGNoZWQubG9hZGluZ1xuICBjb25zdCBlcnJvciA9IGVycm9yUHJvcCA/PyBmZXRjaGVkLmVycm9yXG5cbiAgY29uc3QgaGFuZGxlQWN0aW9uQ2xpY2sgPSAoYWN0aW9uOiBBY3Rpb24pID0+IHtcbiAgICBldmVudEFtcGxpdHVkZShFVkVOVFMuYWlDaGF0UXVpY2tBY3Rpb25TZWxlY3QsIHtcbiAgICAgIHR5cGVfcXVpY2tfYWN0aW9uOiByZXNvbHZlUXVpY2tBY3Rpb25UeXBlKGFjdGlvbiksXG4gICAgICBvcmlnaW5fcXVpY2tfYWN0aW9uOiByZXNvbHZlUXVpY2tBY3Rpb25PcmlnaW4oc2VjdGlvbiwgdmFyaWFudCksXG4gICAgfSlcbiAgICBvblN0YXJ0Q2hhdChhY3Rpb24udGl0bGUsIG51bGwsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCBudWxsLCBhY3Rpb24uaWQpXG4gIH1cblxuICBpZiAoIWxvYWRpbmcgJiYgIWVycm9yICYmIGFjdGlvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIGNvbnN0IGdldEFjdGlvbnNTdGF0dXMgPSAoKSA9PiB7XG4gICAgaWYgKGxvYWRpbmcpIHJldHVybiAnbG9hZGluZydcbiAgICBpZiAoZXJyb3IpIHJldHVybiAnZXJyb3InXG4gICAgcmV0dXJuICdsaXN0J1xuICB9XG5cbiAgY29uc3QgaXNQbGFubmVyU2VjdGlvbiA9IHNlY3Rpb24gPT09ICdwbGFubmVyJyB8fCB2YXJpYW50ID09PSAncGxhbm5lcidcbiAgY29uc3Qgc2hvd1RpdGxlID0gIWlzUGxhbm5lclNlY3Rpb24gJiYgIWxvYWRpbmcgJiYgIWVycm9yICYmIGFjdGlvbnMubGVuZ3RoID4gMFxuXG4gIHJldHVybiAoXG4gICAgPFNDRlVBQ29udGFpbmVyICRjb21wYWN0PXshc2hvd1RpdGxlfT5cbiAgICAgIHtzaG93VGl0bGUgJiYgKFxuICAgICAgICA8U0NGVUFUaXRsZT5cbiAgICAgICAgICA8c3Bhbj57dCgnaG9tZU1lbnUuZnVhLnRpdGxlJyl9PC9zcGFuPlxuICAgICAgICA8L1NDRlVBVGl0bGU+XG4gICAgICApfVxuICAgICAgPFNDRlVBTGlzdENvbnRhaW5lcj5cbiAgICAgICAgPEZhZGUga2V5PXtnZXRBY3Rpb25zU3RhdHVzKCl9PlxuICAgICAgICAgIHtsb2FkaW5nICYmICFlcnJvciAmJiA8RnJlcXVlbnRseVVzZWRBY3Rpb25zU2tlbGV0b24gLz59XG4gICAgICAgICAge2Vycm9yICYmIDxFcnJvclNlYXJjaEZhcXMgbWVzc2FnZT17dCgnaG9tZU1lbnUuZnVhLmVycm9yJyl9IC8+fVxuICAgICAgICAgIHshbG9hZGluZyAmJiAhZXJyb3IgJiYgYWN0aW9ucy5sZW5ndGggPiAwICYmIChcbiAgICAgICAgICAgIDxTQ0ZVQUxpc3Q+XG4gICAgICAgICAgICAgIHthY3Rpb25zLm1hcCgoYWN0aW9uLCBpbmRleCkgPT4gKFxuICAgICAgICAgICAgICAgIDxGVUFMaXN0SXRlbVxuICAgICAgICAgICAgICAgICAga2V5PXthY3Rpb24uaWR9XG4gICAgICAgICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICAgICAgICBhY3Rpb249e2FjdGlvbn1cbiAgICAgICAgICAgICAgICAgIGlzU2Nyb2xsaW5nPXtpc1Njcm9sbGluZ31cbiAgICAgICAgICAgICAgICAgIGhpZ2hsaWdodGVkPXtpc1BsYW5uZXJTZWN0aW9uICYmIGluZGV4ID09PSAwfVxuICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlQWN0aW9uQ2xpY2soYWN0aW9uKX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgIDwvU0NGVUFMaXN0PlxuICAgICAgICAgICl9XG4gICAgICAgIDwvRmFkZT5cbiAgICAgIDwvU0NGVUFMaXN0Q29udGFpbmVyPlxuICAgIDwvU0NGVUFDb250YWluZXI+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0EsU0FBU0EsTUFBTSxRQUFRLE9BQU87QUFDOUIsU0FBU0MsT0FBTyxRQUFRLDhDQUE4QztBQUN0RSxTQUFTQyxJQUFJLFFBQVEscUJBQXFCO0FBQzFDLFNBQVNDLGlCQUFpQixRQUFRLDBCQUEwQjtBQUU1RCxTQUFTQyxnQkFBZ0IsUUFBUSxpQ0FBaUM7QUFDbEUsU0FBU0Msd0JBQXdCLFFBQVEseUNBQXlDO0FBQ2xGLFNBQVNDLE1BQU0sRUFBRUMsUUFBUSxRQUFRLHlCQUF5QjtBQUMxRCxTQUFTQyx3QkFBd0IsRUFBRUMsc0JBQXNCLFFBQVEsNENBQTRDO0FBRTdHLFNBQVNDLFFBQVEsUUFBUSxtQkFBbUI7QUFDNUMsU0FBU0MsYUFBYSxRQUFRLDhCQUE4QjtBQUM1RCxTQUFTQyw2QkFBNkIsUUFBUSxrQ0FBa0M7QUFDaEYsU0FBU0MsZUFBZSxRQUFRLG9CQUFvQjtBQUNwRCxTQUFTQyxJQUFJLFFBQVEsU0FBUztBQUM5QixTQUNFQyxjQUFjLEVBQ2RDLFVBQVUsRUFDVkMsa0JBQWtCLEVBQ2xCQyxTQUFTLEVBQ1RDLFNBQVMsRUFDVEMsYUFBYSxFQUNiQyxnQkFBZ0IsRUFDaEJDLGNBQWMsRUFDZEMsaUJBQWlCLFFBQ1osZ0NBQWdDO0FBQUEsU0FBQUMsR0FBQSxJQUFBQyxJQUFBLEVBQUFDLElBQUEsSUFBQUMsS0FBQTtBQUV2QyxTQUFTQyxXQUFXQSxDQUFBQyxJQUFBLEVBWWpCO0VBQUEsSUFYREMsTUFBTSxHQUFBRCxJQUFBLENBQU5DLE1BQU07SUFDTkMsV0FBVyxHQUFBRixJQUFBLENBQVhFLFdBQVc7SUFDWEMsT0FBTyxHQUFBSCxJQUFBLENBQVBHLE9BQU87SUFDUEMsS0FBSyxHQUFBSixJQUFBLENBQUxJ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