@envive-ai/react-hooks 0.3.11 → 0.3.13

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 (210) hide show
  1. package/dist/application/commerce-api.cjs +21 -41
  2. package/dist/application/commerce-api.d.cts +2 -4
  3. package/dist/application/commerce-api.d.ts +2 -4
  4. package/dist/application/commerce-api.js +21 -41
  5. package/dist/application/models/api/widgetTextRequest.d.cts +2 -1
  6. package/dist/application/models/api/widgetTextRequest.d.ts +2 -1
  7. package/dist/application/models/chatElementDisplayLocationV3.cjs +3 -1
  8. package/dist/application/models/chatElementDisplayLocationV3.d.cts +3 -1
  9. package/dist/application/models/chatElementDisplayLocationV3.d.ts +3 -1
  10. package/dist/application/models/chatElementDisplayLocationV3.js +3 -1
  11. package/dist/application/models/guards/api/index.cjs +6 -6
  12. package/dist/application/models/guards/api/index.js +6 -6
  13. package/dist/application/models/index.cjs +18 -18
  14. package/dist/application/models/index.js +18 -18
  15. package/dist/application/models/validators/validateResponse.cjs +3 -3
  16. package/dist/application/models/validators/validateResponse.js +3 -3
  17. package/dist/application/models/variantInfo/variantInfo.cjs +1 -1
  18. package/dist/application/models/variantInfo/variantInfo.d.cts +1 -1
  19. package/dist/application/models/variantInfo/variantInfo.d.ts +1 -1
  20. package/dist/application/models/variantInfo/variantInfo.js +1 -1
  21. package/dist/application/utils/analyticsUtils.cjs +5 -5
  22. package/dist/application/utils/analyticsUtils.d.cts +2 -2
  23. package/dist/application/utils/analyticsUtils.d.ts +2 -2
  24. package/dist/application/utils/analyticsUtils.js +3 -3
  25. package/dist/application/utils/nodeSelector.cjs +12 -14
  26. package/dist/application/utils/nodeSelector.js +12 -14
  27. package/dist/application/utils/widgetTextRequestToApiRequest.cjs +2 -1
  28. package/dist/application/utils/widgetTextRequestToApiRequest.js +2 -1
  29. package/dist/atoms/app/index.d.cts +7 -7
  30. package/dist/atoms/app/index.d.ts +7 -7
  31. package/dist/atoms/chat/chatState.cjs +5 -5
  32. package/dist/atoms/chat/chatState.d.cts +19 -19
  33. package/dist/atoms/chat/chatState.d.ts +19 -19
  34. package/dist/atoms/chat/chatState.js +3 -3
  35. package/dist/atoms/chat/form.d.cts +2 -2
  36. package/dist/atoms/chat/form.d.ts +2 -2
  37. package/dist/atoms/chat/index.d.ts +2 -2
  38. package/dist/atoms/chat/lastMessage.d.cts +2 -2
  39. package/dist/atoms/chat/lastMessage.d.ts +2 -2
  40. package/dist/atoms/chat/messageQueue.d.cts +6 -6
  41. package/dist/atoms/chat/messageQueue.d.ts +6 -6
  42. package/dist/atoms/chat/performanceMetrics.d.cts +6 -6
  43. package/dist/atoms/chat/performanceMetrics.d.ts +6 -6
  44. package/dist/atoms/chat/renderedWidgetRefs.d.cts +2 -2
  45. package/dist/atoms/chat/renderedWidgetRefs.d.ts +2 -2
  46. package/dist/atoms/chat/replies.cjs +4 -4
  47. package/dist/atoms/chat/replies.d.cts +3 -3
  48. package/dist/atoms/chat/replies.d.ts +3 -3
  49. package/dist/atoms/chat/replies.js +3 -3
  50. package/dist/atoms/chat/suggestions.d.cts +2 -2
  51. package/dist/atoms/chat/suggestions.d.ts +2 -2
  52. package/dist/atoms/envive/enviveConfig.d.cts +13 -13
  53. package/dist/atoms/envive/enviveConfig.d.ts +13 -13
  54. package/dist/atoms/globalSearch/globalSearch.d.cts +5 -5
  55. package/dist/atoms/globalSearch/globalSearch.d.ts +5 -5
  56. package/dist/atoms/org/customerService.d.cts +6 -6
  57. package/dist/atoms/org/customerService.d.ts +6 -6
  58. package/dist/atoms/org/graphqlConfig.d.cts +4 -4
  59. package/dist/atoms/org/graphqlConfig.d.ts +4 -4
  60. package/dist/atoms/org/index.cjs +1 -1
  61. package/dist/atoms/org/index.js +1 -1
  62. package/dist/atoms/org/newOrgConfigAtom.d.cts +2 -2
  63. package/dist/atoms/org/newOrgConfigAtom.d.ts +2 -2
  64. package/dist/atoms/org/orgAnalyticsConfig.d.cts +5 -5
  65. package/dist/atoms/org/orgAnalyticsConfig.d.ts +5 -5
  66. package/dist/atoms/search/chatSearch.d.cts +17 -17
  67. package/dist/atoms/search/searchAPI.d.cts +13 -13
  68. package/dist/atoms/search/searchAPI.d.ts +13 -13
  69. package/dist/atoms/search/utils.d.cts +1 -1
  70. package/dist/atoms/search/utils.d.ts +1 -1
  71. package/dist/atoms/widget/chatPreviewLoading.d.cts +2 -2
  72. package/dist/atoms/widget/chatPreviewLoading.d.ts +2 -2
  73. package/dist/contexts/amplitudeContext/amplitudeContext.cjs +5 -5
  74. package/dist/contexts/amplitudeContext/amplitudeContext.d.cts +3 -2
  75. package/dist/contexts/amplitudeContext/amplitudeContext.d.ts +3 -2
  76. package/dist/contexts/amplitudeContext/amplitudeContext.js +5 -5
  77. package/dist/contexts/amplitudeContext/index.cjs +3 -3
  78. package/dist/contexts/amplitudeContext/index.d.cts +1 -1
  79. package/dist/contexts/amplitudeContext/index.d.ts +1 -1
  80. package/dist/contexts/amplitudeContext/index.js +1 -1
  81. package/dist/contexts/cdnContext/cdnContext.cjs +1 -1
  82. package/dist/contexts/cdnContext/cdnContext.js +1 -1
  83. package/dist/contexts/enviveConfigContext/enviveConfigContext.cjs +1 -1
  84. package/dist/contexts/enviveConfigContext/enviveConfigContext.js +1 -1
  85. package/dist/contexts/enviveContext/enviveContext.cjs +17 -14
  86. package/dist/contexts/enviveContext/enviveContext.d.cts +4 -1
  87. package/dist/contexts/enviveContext/enviveContext.d.ts +4 -1
  88. package/dist/contexts/enviveContext/enviveContext.js +17 -14
  89. package/dist/contexts/graphqlContext/graphqlContext.cjs +2 -2
  90. package/dist/contexts/graphqlContext/graphqlContext.js +2 -2
  91. package/dist/contexts/graphqlContext/mockV3Config.cjs +3 -2
  92. package/dist/contexts/graphqlContext/mockV3Config.js +3 -2
  93. package/dist/contexts/hardcopyContext/hardcopyContext.cjs +18 -8
  94. package/dist/contexts/hardcopyContext/hardcopyContext.d.cts +6 -4
  95. package/dist/contexts/hardcopyContext/hardcopyContext.d.ts +6 -4
  96. package/dist/contexts/hardcopyContext/hardcopyContext.js +16 -6
  97. package/dist/contexts/newOrgConfigContext/newOrgConfigContext.cjs +1 -1
  98. package/dist/contexts/newOrgConfigContext/newOrgConfigContext.js +1 -1
  99. package/dist/contexts/pageContext/pageContext.cjs +11 -7
  100. package/dist/contexts/pageContext/pageContext.js +11 -7
  101. package/dist/contexts/pageContext/types.d.cts +1 -1
  102. package/dist/contexts/salesAgentContext/chatAPI.cjs +11 -11
  103. package/dist/contexts/salesAgentContext/chatAPI.js +4 -4
  104. package/dist/contexts/salesAgentContext/salesAgentContext.cjs +1 -1
  105. package/dist/contexts/salesAgentContext/salesAgentContext.js +1 -1
  106. package/dist/contexts/salesAgentContext/salesAgentService.cjs +9 -8
  107. package/dist/contexts/salesAgentContext/salesAgentService.js +7 -6
  108. package/dist/contexts/searchContext/searchContext.cjs +2 -2
  109. package/dist/contexts/searchContext/searchContext.js +2 -2
  110. package/dist/contexts/systemSettingsContext/systemSettingsContext.cjs +1 -1
  111. package/dist/contexts/systemSettingsContext/systemSettingsContext.d.cts +2 -2
  112. package/dist/contexts/systemSettingsContext/systemSettingsContext.d.ts +2 -2
  113. package/dist/contexts/systemSettingsContext/systemSettingsContext.js +1 -1
  114. package/dist/contexts/types.cjs +1 -1
  115. package/dist/contexts/types.d.cts +4 -2
  116. package/dist/contexts/types.d.ts +4 -2
  117. package/dist/contexts/types.js +1 -1
  118. package/dist/contexts/typesV3.cjs +1 -1
  119. package/dist/contexts/typesV3.d.cts +27 -2
  120. package/dist/contexts/typesV3.d.ts +27 -2
  121. package/dist/contexts/typesV3.js +1 -1
  122. package/dist/contexts/userIdentityContext/userIdentityContext.cjs +2 -34
  123. package/dist/contexts/userIdentityContext/userIdentityContext.d.cts +1 -2
  124. package/dist/contexts/userIdentityContext/userIdentityContext.d.ts +1 -2
  125. package/dist/contexts/userIdentityContext/userIdentityContext.js +2 -33
  126. package/dist/hooks/AmplitudeOperations/useAmplitudeOperations.cjs +1 -1
  127. package/dist/hooks/AmplitudeOperations/useAmplitudeOperations.d.cts +2 -2
  128. package/dist/hooks/AmplitudeOperations/useAmplitudeOperations.d.ts +2 -2
  129. package/dist/hooks/AmplitudeOperations/useAmplitudeOperations.js +1 -1
  130. package/dist/hooks/ChatToggle/useChatToggle.cjs +6 -5
  131. package/dist/hooks/ChatToggle/useChatToggle.js +4 -3
  132. package/dist/hooks/GrabAndScroll/useGrabAndScroll.d.cts +2 -2
  133. package/dist/hooks/GrabAndScroll/useGrabAndScroll.d.ts +2 -2
  134. package/dist/hooks/Search/useSearch.cjs +9 -8
  135. package/dist/hooks/Search/useSearch.js +4 -3
  136. package/dist/hooks/Search/useSearchInput.cjs +7 -7
  137. package/dist/hooks/Search/useSearchInput.js +4 -4
  138. package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.cjs +6 -5
  139. package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.d.cts +2 -2
  140. package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.d.ts +2 -2
  141. package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.js +3 -2
  142. package/dist/hooks/UpdateAnalyticsProps/useUpdateAnalyticsProps.cjs +4 -3
  143. package/dist/hooks/UpdateAnalyticsProps/useUpdateAnalyticsProps.js +3 -2
  144. package/dist/hooks/utils.d.ts +1 -1
  145. package/dist/services/amplitudeService/amplitudeService.cjs +17 -57
  146. package/dist/services/amplitudeService/amplitudeService.d.cts +4 -47
  147. package/dist/services/amplitudeService/amplitudeService.d.ts +4 -47
  148. package/dist/services/amplitudeService/amplitudeService.js +14 -52
  149. package/dist/services/amplitudeService/eventNames.cjs +59 -0
  150. package/dist/services/amplitudeService/eventNames.d.cts +54 -0
  151. package/dist/services/amplitudeService/eventNames.d.ts +54 -0
  152. package/dist/services/amplitudeService/eventNames.js +57 -0
  153. package/dist/services/amplitudeService/index.cjs +3 -2
  154. package/dist/services/amplitudeService/index.d.cts +2 -1
  155. package/dist/services/amplitudeService/index.d.ts +2 -1
  156. package/dist/services/amplitudeService/index.js +2 -1
  157. package/dist/services/ga4ProjectionService/ga4EventSchema.cjs +108 -0
  158. package/dist/services/ga4ProjectionService/ga4EventSchema.js +108 -0
  159. package/dist/services/ga4ProjectionService/ga4ProjectionService.cjs +71 -0
  160. package/dist/services/ga4ProjectionService/ga4ProjectionService.js +71 -0
  161. package/dist/types/customerService.cjs +2 -1
  162. package/dist/types/customerService.d.cts +2 -1
  163. package/dist/types/customerService.d.ts +2 -1
  164. package/dist/types/customerService.js +2 -1
  165. package/dist/types/enviveConfig.d.cts +4 -1
  166. package/dist/types/enviveConfig.d.ts +4 -1
  167. package/package.json +2 -7
  168. package/src/application/commerce-api.ts +25 -49
  169. package/src/application/models/api/widgetTextRequest.ts +1 -0
  170. package/src/application/models/chatElementDisplayLocationV3.ts +2 -0
  171. package/src/application/models/variantInfo/variantInfo.ts +1 -1
  172. package/src/application/utils/analyticsUtils.ts +1 -1
  173. package/src/application/utils/nodeSelector.ts +15 -14
  174. package/src/application/utils/widgetTextRequestToApiRequest.ts +1 -0
  175. package/src/atoms/chat/chatState.ts +1 -1
  176. package/src/atoms/chat/replies.ts +1 -1
  177. package/src/contexts/amplitudeContext/amplitudeContext.tsx +0 -1
  178. package/src/contexts/enviveContext/enviveContext.tsx +5 -2
  179. package/src/contexts/graphqlContext/mockV3Config.ts +3 -0
  180. package/src/contexts/hardcopyContext/hardcopyContext.tsx +20 -2
  181. package/src/contexts/pageContext/pageContext.tsx +9 -5
  182. package/src/contexts/salesAgentContext/chatAPI.ts +0 -1
  183. package/src/contexts/salesAgentContext/salesAgentService.ts +5 -2
  184. package/src/contexts/types.ts +3 -1
  185. package/src/contexts/typesV3.ts +28 -0
  186. package/src/contexts/userIdentityContext/__tests__/userIdentityContext.test.tsx +1 -66
  187. package/src/contexts/userIdentityContext/userIdentityContext.tsx +0 -47
  188. package/src/hooks/AmplitudeOperations/useAmplitudeOperations.ts +2 -4
  189. package/src/hooks/ChatToggle/useChatToggle.ts +2 -4
  190. package/src/hooks/Search/useSearch.tsx +2 -4
  191. package/src/hooks/Search/useSearchInput.ts +1 -1
  192. package/src/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.ts +2 -4
  193. package/src/hooks/UpdateAnalyticsProps/useUpdateAnalyticsProps.ts +2 -4
  194. package/src/services/amplitudeService/amplitudeService.ts +14 -50
  195. package/src/services/amplitudeService/eventNames.ts +52 -0
  196. package/src/services/ga4ProjectionService/__tests__/ga4ProjectionService.test.ts +334 -0
  197. package/src/services/ga4ProjectionService/ga4EventSchema.ts +143 -0
  198. package/src/services/ga4ProjectionService/ga4ProjectionService.ts +137 -0
  199. package/src/types/customerService.ts +1 -0
  200. package/src/types/enviveConfig.ts +3 -0
  201. package/dist/hooks/IdentifyUser/index.cjs +0 -3
  202. package/dist/hooks/IdentifyUser/index.d.cts +0 -2
  203. package/dist/hooks/IdentifyUser/index.d.ts +0 -2
  204. package/dist/hooks/IdentifyUser/index.js +0 -3
  205. package/dist/hooks/IdentifyUser/useIdentifyUser.cjs +0 -35
  206. package/dist/hooks/IdentifyUser/useIdentifyUser.d.cts +0 -10
  207. package/dist/hooks/IdentifyUser/useIdentifyUser.d.ts +0 -10
  208. package/dist/hooks/IdentifyUser/useIdentifyUser.js +0 -34
  209. package/src/hooks/IdentifyUser/index.ts +0 -1
  210. package/src/hooks/IdentifyUser/useIdentifyUser.ts +0 -29
@@ -128,7 +128,8 @@ const mockV3FrontendConfig = {
128
128
  neverShowSingleProductCards: false,
129
129
  welcomeMessageTitle: "Welcome to Envive AI",
130
130
  welcomeMessageText: "Your personal shopper trained on the collective knowledge of thousands of real experts!",
131
- chatFooterTextFieldPlaceholderText: "Ask me anything..."
131
+ chatFooterTextFieldPlaceholderText: "Ask me anything...",
132
+ partialViewConfig: { disabled: true }
132
133
  },
133
134
  customerServiceIntegration: {
134
135
  provider: require_customerService.CustomerServiceType.unsupported,
@@ -262,4 +263,4 @@ const mockV3FrontendConfig = {
262
263
  //#endregion
263
264
  exports.mockV3ColorsConfig = mockV3ColorsConfig;
264
265
  exports.mockV3FrontendConfig = mockV3FrontendConfig;
265
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja1YzQ29uZmlnLmNqcyIsIm5hbWVzIjpbIm1vY2tWM0NvbG9yc0NvbmZpZzogQ2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwPENvbG9yTWFwcGluZ1YzPiIsIm1vY2tWM0Zyb250ZW5kQ29uZmlnOiBGcm9udGVuZENvbmZpZ1YzIiwiQ29uZmlnVmVyc2lvbkVudW0iLCJUaGVtZSIsImNvbG9yVmFyIiwiQ29sb3JOYW1lcyIsIkZsb2F0aW5nQnV0dG9uTG9jYXRpb24iLCJDaGF0SGVhZGVyVmFyaWFudCIsIlNwYXJrbGVJY29uQ29sb3IiLCJDdXN0b21lclNlcnZpY2VUeXBlIiwiV2lkZ2V0VHlwZVYzIiwiUHJvbXB0QnV0dG9uVmFyaWFudCIsIlByb21wdENhcm91c2VsUm93cyIsIkFuaW1hdGlvblNwZWVkIiwiSW1hZ2VHYWxsZXJ5TGF5b3V0IiwiV2lkZ2V0S2luZCIsIldpZGdldFdyYXBwZXJWYXJpYW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL2dyYXBocWxDb250ZXh0L21vY2tWM0NvbmZpZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGF0SGVhZGVyVmFyaWFudCB9IGZyb20gJ0BlbnZpdmUtYWkvcmVhY3QtdG9vbGtpdC12My9DaGF0SGVhZGVyJztcbmltcG9ydCB7IEltYWdlR2FsbGVyeUxheW91dCB9IGZyb20gJ0BlbnZpdmUtYWkvcmVhY3QtdG9vbGtpdC12My9JbWFnZUdhbGxlcnknO1xuaW1wb3J0IHsgUHJvbXB0QnV0dG9uVmFyaWFudCB9IGZyb20gJ0BlbnZpdmUtYWkvcmVhY3QtdG9vbGtpdC12My9Qcm9tcHRCdXR0b24nO1xuaW1wb3J0IHsgQW5pbWF0aW9uU3BlZWQsIFByb21wdENhcm91c2VsUm93cyB9IGZyb20gJ0BlbnZpdmUtYWkvcmVhY3QtdG9vbGtpdC12My9Qcm9tcHRDYXJvdXNlbCc7XG5pbXBvcnQgeyBXaWRnZXRLaW5kIH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL1NvY2lhbFByb29mJztcbmltcG9ydCB7IFRoZW1lIH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL1Rva2Vucyc7XG5pbXBvcnQgeyBTcGFya2xlSWNvbkNvbG9yIH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL1dlbGNvbWVNZXNzYWdlJztcbmltcG9ydCB7IFdpZGdldFdyYXBwZXJWYXJpYW50IH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL1dpZGdldFdyYXBwZXInO1xuaW1wb3J0IHsgQ2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscyc7XG5pbXBvcnQgeyBDb2xvck1hcHBpbmdWMywgQ29sb3JOYW1lcywgY29sb3JWYXIgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2NvbG9yc0NvbmZpZ1YzJztcbmltcG9ydCB7IEZyb250ZW5kQ29uZmlnVjMgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2Zyb250ZW5kQ29uZmlnVjMnO1xuXG5pbXBvcnQgeyBGbG9hdGluZ0J1dHRvbkxvY2F0aW9uIH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL0Zsb2F0aW5nQnV0dG9uJztcbmltcG9ydCB7IEN1c3RvbWVyU2VydmljZVR5cGUgfSBmcm9tICdzcmMvdHlwZXMvY3VzdG9tZXJTZXJ2aWNlJztcbmltcG9ydCB7IENvbmZpZ1ZlcnNpb25FbnVtLCBXaWRnZXRUeXBlVjMgfSBmcm9tICcuLi90eXBlc1YzJztcblxuY29uc3QgbW9ja0ltYWdlcyA9IFtcbiAge1xuICAgIHNyYzogJ2h0dHBzOi8vcGljc3VtLnBob3Rvcy80MDAvNjAwJyxcbiAgICBhbHQ6ICdJbWFnZSAxJyxcbiAgfSxcbiAge1xuICAgIHNyYzogJ2h0dHBzOi8vcGljc3VtLnBob3Rvcy80MDAvNjAwJyxcbiAgICBhbHQ6ICdJbWFnZSAyJyxcbiAgfSxcbiAge1xuICAgIHNyYzogJ2h0dHBzOi8vcGljc3VtLnBob3Rvcy80MDAvNjAwJyxcbiAgICBhbHQ6ICdJbWFnZSAzJyxcbiAgfSxcbiAge1xuICAgIHNyYzogJ2h0dHBzOi8vcGljc3VtLnBob3Rvcy80MDAvNjAwJyxcbiAgICBhbHQ6ICdJbWFnZSA0JyxcbiAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBtb2NrVjNDb2xvcnNDb25maWc6IENhbWVsQ2FzZWRQcm9wZXJ0aWVzRGVlcDxDb2xvck1hcHBpbmdWMz4gPSB7XG4gIHRleHRQcmltYXJ5OiAnIzAyMTQxNCcsXG4gIHRleHRTZWNvbmRhcnk6ICcjNjY2NjY2JyxcbiAgdGV4dEFjY2VudDogJyM0NzhEODcnLFxuICB0ZXh0TGluazogJyMwNDJFMkMnLFxuICB0ZXh0TGlnaHQ6ICcjRkZGRkZGJyxcbiAgYmFja2dyb3VuZFByaW1hcnk6ICcjMUY1RjUxJyxcbiAgYmFja2dyb3VuZFNlY29uZGFyeTogJyNGOUY2RUEnLFxuICBiYWNrZ3JvdW5kVGVydGlhcnk6ICcjRUVFQ0REJyxcbiAgYmFja2dyb3VuZERhcms6ICcjMDIxNDE0JyxcbiAgYmFja2dyb3VuZExpZ2h0OiAnI0ZGRkZGRicsXG4gIGJvcmRlckxpZ2h0OiAnI0U2RTdFNycsXG4gIGJvcmRlck1lZGl1bTogJyNCM0I4QjgnLFxuICBib3JkZXJEYXJrOiAnIzAyMTQxNCcsXG4gIGFjY2VudFByaW1hcnk6ICcjMUY1RjUxJyxcbiAgYWNjZW50U2Vjb25kYXJ5OiAnI0FFODY1OScsXG59O1xuXG5leHBvcnQgY29uc3QgbW9ja1YzRnJvbnRlbmRDb25maWc6IEZyb250ZW5kQ29uZmlnVjMgPSB7XG4gIHVpQ29uZmlnczoge1xuICAgIHZlcnNpb246IENvbmZpZ1ZlcnNpb25FbnVtLlYzLFxuICAgIHNob3J0TmFtZTogJ0Vudml2ZSBBSScsXG4gICAgbG9va0FuZEZlZWw6IHtcbiAgICAgIHRoZW1lOiBUaGVtZS5TVEFOREFSRCxcbiAgICAgIGFnZW50TmFtZTogJ0Vudml2ZSBBSScsXG4gICAgICBjaGF0SGVhZGVyTG9nb0RhcmtTcmM6ICdodHRwczovL2Nkbi5zcGlmZnkuYWkvb3RoZXIvYXNzZXRzL2Vudml2ZS1haS9FbnZpdmVfTG9nb19ESy5zdmcnLFxuICAgICAgY2hhdEhlYWRlckxvZ29MaWdodFNyYzogJ2h0dHBzOi8vY2RuLnNwaWZmeS5haS9vdGhlci9hc3NldHMvZW52aXZlLWFpL0Vudml2ZV9Mb2dvX0x0LnN2ZycsXG4gICAgICB3aWRnZXRMb2dvU3JjOiAnaHR0cHM6Ly9jZG4uc3BpZmZ5LmFpL290aGVyL2Fzc2V0cy9lbnZpdmUtYWkvRW52aXZlX0xvZ29fREsuc3ZnJyxcbiAgICAgIGhpZGVXaWRnZXRMb2dvOiBmYWxzZSxcbiAgICAgIGVsZW1lbnRSYWRpdXM6IDgsXG4gICAgICBpbWFnZUFzcGVjdFJhdGlvOiAnMS8xJyxcbiAgICAgIGJ1dHRvbkNvbG9yczoge1xuICAgICAgICBsaWdodEJ1dHRvbkJhY2tncm91bmRDb2xvcjogY29sb3JWYXIoQ29sb3JOYW1lcy5CYWNrZ3JvdW5kU2Vjb25kYXJ5KSxcbiAgICAgICAgbGlnaHRCdXR0b25JY29uQ29sb3I6IGNvbG9yVmFyKENvbG9yTmFtZXMuQWNjZW50UHJpbWFyeSksXG4gICAgICAgIGRhcmtCdXR0b25CYWNrZ3JvdW5kQ29sb3I6IGNvbG9yVmFyKENvbG9yTmFtZXMuQmFja2dyb3VuZERhcmspLFxuICAgICAgICBkYXJrQnV0dG9uSWNvbkNvbG9yOiBjb2xvclZhcihDb2xvck5hbWVzLkFjY2VudFByaW1hcnkpLFxuICAgICAgfSxcbiAgICAgIHR5cG9ncmFwaHk6IHtcbiAgICAgICAgdGl0bGVGb250RmFtaWx5OiAnUG9wcGlucycsXG4gICAgICAgIGhlYWRlckZvbnRGYW1pbHk6ICdQb3BwaW5zJyxcbiAgICAgICAgYm9keUZvbnRGYW1pbHk6ICdJbnRlciBWYXJpYWJsZScsXG4gICAgICAgIGZvbnRTaXplOiB7XG4gICAgICAgICAgdDE6ICczMnB4JyxcbiAgICAgICAgICB0MjogJzI4cHgnLFxuICAgICAgICAgIHQzOiAnMjRweCcsXG4gICAgICAgICAgaDE6ICcyMHB4JyxcbiAgICAgICAgICBoMjogJzE2cHgnLFxuICAgICAgICAgIGgzOiAnMTRweCcsXG4gICAgICAgICAgYjE6ICcyMHB4JyxcbiAgICAgICAgICBiMjogJzE2cHgnLFxuICAgICAgICAgIGIzOiAnMTRweCcsXG4gICAgICAgICAgYjQ6ICcxMnB4JyxcbiAgICAgICAgICBiNTogJzEwcHgnLFxuICAgICAgICAgIGwxOiAnMTRweCcsXG4gICAgICAgICAgbDI6ICcxMnB4JyxcbiAgICAgICAgfSxcbiAgICAgICAgZm9udFdlaWdodDoge1xuICAgICAgICAgIHJnOiAnNDAwJyxcbiAgICAgICAgICBtZDogJzUwMCcsXG4gICAgICAgICAgc2I6ICc2MDAnLFxuICAgICAgICB9LFxuICAgICAgICBsZXR0ZXJTcGFjaW5nOiB7XG4gICAgICAgICAgJzAnOiAnMGVtJyxcbiAgICAgICAgICAnd2lkZS0xJzogJzFweCcsXG4gICAgICAgIH0sXG4gICAgICAgIGxpbmVIZWlnaHQ6IHtcbiAgICAgICAgICAnMTI0JzogMS4yNCxcbiAgICAgICAgICAnMTIwJzogMS4yLFxuICAgICAgICAgICcxMTgnOiAxLjE4LFxuICAgICAgICAgICcxMTYnOiAxLjE2LFxuICAgICAgICAgICcxMTQnOiAxLjE0LFxuICAgICAgICAgICcxNDgnOiAxLjQ4LFxuICAgICAgICAgICcxNDAnOiAxLjQsXG4gICAgICAgICAgJzEyOCc6IDEuMjgsXG4gICAgICAgICAgJzEzMCc6IDEuMyxcbiAgICAgICAgICAnMTMzJzogMS4zMyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBmbG9hdGluZ0J1dHRvbjoge1xuICAgICAgcG9zaXRpb246IEZsb2F0aW5nQnV0dG9uTG9jYXRpb24uQk9UVE9NX1JJR0hULFxuICAgICAgYmFja2dyb3VuZENvbG9yOiBDb2xvck5hbWVzLkJhY2tncm91bmRQcmltYXJ5LFxuICAgICAgbW9kZTogJ2RhcmsnLFxuICAgICAgc2hvd09wdGlvbjogJ2Fsd2F5cycsXG4gICAgICBzdHlsZTogJ2F0dGFjaGVkJyxcbiAgICAgIGljb25TVkdTcmM6ICcnLFxuICAgIH0sXG4gICAgZmxvYXRpbmdDaGF0OiB7XG4gICAgICBoZWFkZXJCYWNrZ3JvdW5kQ29sb3I6IENvbG9yTmFtZXMuQmFja2dyb3VuZFByaW1hcnksXG4gICAgICBoZWFkZXJNb2RlOiBDaGF0SGVhZGVyVmFyaWFudC5EQVJLLFxuICAgICAgd2VsY29tZU1lc3NhZ2VJY29uQ29sb3I6IFNwYXJrbGVJY29uQ29sb3IuQUNDRU5UX1BSSU1BUlksXG4gICAgICBzaG93VmVyaWZpZWRCdXllcjogdHJ1ZSxcbiAgICAgIHVzZXJRdWVyeUlucHV0RW5hYmxlZDogdHJ1ZSxcbiAgICAgIHNob3dFbnZpdmVMb2dvOiB0cnVlLFxuICAgICAgaWdub3JlRmlyc3RNb2RlbFJlc3BvbnNlOiBmYWxzZSxcbiAgICAgIG5ldmVyU2hvd1NpbmdsZVByb2R1Y3RDYXJkczogZmFsc2UsXG4gICAgICB3ZWxjb21lTWVzc2FnZVRpdGxlOiAnV2VsY29tZSB0byBFbnZpdmUgQUknLFxuICAgICAgd2VsY29tZU1lc3NhZ2VUZXh0OlxuICAgICAgICAnWW91ciBwZXJzb25hbCBzaG9wcGVyIHRyYWluZWQgb24gdGhlIGNvbGxlY3RpdmUga25vd2xlZGdlIG9mIHRob3VzYW5kcyBvZiByZWFsIGV4cGVydHMhJyxcbiAgICAgIGNoYXRGb290ZXJUZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgIH0sXG4gICAgY3VzdG9tZXJTZXJ2aWNlSW50ZWdyYXRpb246IHtcbiAgICAgIHByb3ZpZGVyOiBDdXN0b21lclNlcnZpY2VUeXBlLnVuc3VwcG9ydGVkLFxuICAgICAgZW5hYmxlZDogZmFsc2UsXG4gICAgICBzdXBwcmVzc01lcmNoYW50QnV0dG9uOiBmYWxzZSxcbiAgICB9LFxuICAgIHNpbmdsZVBhZ2VBcHBsaWNhdGlvblNldHRpbmdzOiB7XG4gICAgICBlbmFibGVkOiBmYWxzZSxcbiAgICAgIHJlZnJlc2hJbnRlcnZhbDogMTAwMCxcbiAgICB9LFxuICB9LFxuICBwYWdlVmFyaWFudHM6IFtdLFxuICBtb3VudGluZ0NvbmZpZ3M6IHt9LFxuICB3aWRnZXRDb25maWdzOiB7XG4gICAgJ3Byb21wdC1jYXJvdXNlbC10ZXN0LWxpZ2h0LXdpZGdldCc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAncHJvbXB0LWNhcm91c2VsLXRlc3QtbGlnaHQtd2lkZ2V0JyxcbiAgICAgIGNvbnRlbnRJZDogJ3Byb21wdC1jYXJvdXNlbC10ZXN0LWxpZ2h0LXdpZGdldCcsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlVjMuUHJvbXB0Q2Fyb3VzZWxWMyxcblxuICAgICAgcHJvbXB0QnV0dG9uVHlwZTogUHJvbXB0QnV0dG9uVmFyaWFudC5MSUdIVCxcbiAgICAgIGJvbGRGaXJzdEJ1dHRvbjogZmFsc2UsXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5BTFdBWVNfT05FLFxuICAgICAgYW5pbWF0aW9uU3BlZWQ6IEFuaW1hdGlvblNwZWVkLkZBU1QsXG4gICAgfSxcbiAgICAncHJvbXB0LWNhcm91c2VsLXRlc3QtZGFyay13aWRnZXQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3Byb21wdC1jYXJvdXNlbC10ZXN0LWRhcmstd2lkZ2V0JyxcbiAgICAgIGNvbnRlbnRJZDogJ3Byb21wdC1jYXJvdXNlbC10ZXN0LWRhcmstd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5Qcm9tcHRDYXJvdXNlbFYzLFxuXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkRBUkssXG4gICAgICBib2xkRmlyc3RCdXR0b246IGZhbHNlLFxuICAgICAgcHJvbXB0Q2Fyb3VzZWxSb3dzOiBQcm9tcHRDYXJvdXNlbFJvd3MuQUxXQVlTX09ORSxcbiAgICAgIGFuaW1hdGlvblNwZWVkOiBBbmltYXRpb25TcGVlZC5GQVNULFxuICAgIH0sXG4gICAgJ3RpdGxlZC1wcm9tcHQtY2Fyb3VzZWwtdGVzdC1saWdodC13aWRnZXQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3RpdGxlZC1wcm9tcHQtY2Fyb3VzZWwtdGVzdC1saWdodC13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAndGl0bGVkLXByb21wdC1jYXJvdXNlbC10ZXN0LWxpZ2h0LXdpZGdldCcsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlVjMuVGl0bGVkUHJvbXB0Q2Fyb3VzZWxWMyxcblxuICAgICAgcHJvbXB0QnV0dG9uVHlwZTogUHJvbXB0QnV0dG9uVmFyaWFudC5MSUdIVCxcbiAgICAgIGJvbGRGaXJzdEJ1dHRvbjogZmFsc2UsXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5BTFdBWVNfT05FLFxuICAgICAgYW5pbWF0aW9uU3BlZWQ6IEFuaW1hdGlvblNwZWVkLkZBU1QsXG4gICAgfSxcbiAgICAndGl0bGVkLXByb21wdC1jYXJvdXNlbC10ZXN0LWRhcmstd2lkZ2V0Jzoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6ICd0aXRsZWQtcHJvbXB0LWNhcm91c2VsLXRlc3QtZGFyay13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAndGl0bGVkLXByb21wdC1jYXJvdXNlbC10ZXN0LWRhcmstd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5UaXRsZWRQcm9tcHRDYXJvdXNlbFYzLFxuXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkRBUkssXG4gICAgICBib2xkRmlyc3RCdXR0b246IGZhbHNlLFxuICAgICAgcHJvbXB0Q2Fyb3VzZWxSb3dzOiBQcm9tcHRDYXJvdXNlbFJvd3MuQUxXQVlTX09ORSxcbiAgICAgIGFuaW1hdGlvblNwZWVkOiBBbmltYXRpb25TcGVlZC5GQVNULFxuICAgIH0sXG4gICAgJ3NvY2lhbC1wcm9vZi10ZXN0LXdpZGdldC1mb3VyLWdyaWQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3NvY2lhbC1wcm9vZi10ZXN0LXdpZGdldC1mb3VyLWdyaWQnLFxuICAgICAgY29udGVudElkOiAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LWZvdXItZ3JpZCcsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlVjMuU29jaWFsUHJvb2ZWMyxcblxuICAgICAgaW1hZ2VHYWxsZXJ5TGF5b3V0OiBJbWFnZUdhbGxlcnlMYXlvdXQuRk9VUl9HUklELFxuICAgICAga2luZDogV2lkZ2V0S2luZC5TVEFUSUMsXG4gICAgICB2YXJpYW50OiBXaWRnZXRXcmFwcGVyVmFyaWFudC5JTkxJTkVfV0lUSF9CT1JERVIsXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5UV09fT05fTU9CSUxFX09ORV9PTl9ERVNLVE9QLFxuICAgICAgcHJpbWFyeUJ1dHRvblZhcmlhbnQ6IFByb21wdEJ1dHRvblZhcmlhbnQuREFSSyxcbiAgICAgIHNlY29uZGFyeUJ1dHRvblZhcmlhbnQ6IFByb21wdEJ1dHRvblZhcmlhbnQuTElHSFQsXG4gICAgICBpbWFnZXM6IG1vY2tJbWFnZXMsXG4gICAgfSxcbiAgICAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LXNpbmdsZSc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LXNpbmdsZScsXG4gICAgICBjb250ZW50SWQ6ICdzb2NpYWwtcHJvb2YtdGVzdC13aWRnZXQtc2luZ2xlJyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5Tb2NpYWxQcm9vZlYzLFxuXG4gICAgICBpbWFnZUdhbGxlcnlMYXlvdXQ6IEltYWdlR2FsbGVyeUxheW91dC5TSU5HTEUsXG4gICAgICBraW5kOiBXaWRnZXRLaW5kLlNUQVRJQyxcbiAgICAgIHZhcmlhbnQ6IFdpZGdldFdyYXBwZXJWYXJpYW50LkNBUkRfTk9fQk9SREVSLFxuICAgICAgcHJvbXB0Q2Fyb3VzZWxSb3dzOiBQcm9tcHRDYXJvdXNlbFJvd3MuVFdPX09OX01PQklMRV9PTkVfT05fREVTS1RPUCxcbiAgICAgIHByaW1hcnlCdXR0b25WYXJpYW50OiBQcm9tcHRCdXR0b25WYXJpYW50LkRBUkssXG4gICAgICBzZWNvbmRhcnlCdXR0b25WYXJpYW50OiBQcm9tcHRCdXR0b25WYXJpYW50LkxJR0hULFxuICAgICAgaW1hZ2VzOiBtb2NrSW1hZ2VzLFxuICAgIH0sXG4gICAgJ3NvY2lhbC1wcm9vZi10ZXN0LXdpZGdldC1mb3VyLWhvcml6b250YWwnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3NvY2lhbC1wcm9vZi10ZXN0LXdpZGdldC1mb3VyLWhvcml6b250YWwnLFxuICAgICAgY29udGVudElkOiAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LWZvdXItaG9yaXpvbnRhbCcsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlVjMuU29jaWFsUHJvb2ZWMyxcblxuICAgICAgaW1hZ2VHYWxsZXJ5TGF5b3V0OiBJbWFnZUdhbGxlcnlMYXlvdXQuRk9VUl9IT1JJWk9OVEFMLFxuICAgICAga2luZDogV2lkZ2V0S2luZC5TVEFUSUMsXG4gICAgICB2YXJpYW50OiBXaWRnZXRXcmFwcGVyVmFyaWFudC5DQVJEX1dJVEhfQk9SREVSLFxuICAgICAgcHJvbXB0Q2Fyb3VzZWxSb3dzOiBQcm9tcHRDYXJvdXNlbFJvd3MuVFdPX09OX01PQklMRV9PTkVfT05fREVTS1RPUCxcbiAgICAgIHByaW1hcnlCdXR0b25WYXJpYW50OiBQcm9tcHRCdXR0b25WYXJpYW50LkRBUkssXG4gICAgICBzZWNvbmRhcnlCdXR0b25WYXJpYW50OiBQcm9tcHRCdXR0b25WYXJpYW50LkxJR0hULFxuICAgICAgaW1hZ2VzOiBtb2NrSW1hZ2VzLFxuICAgIH0sXG4gICAgJ3R5cGluZy1hbmltYXRpb24tdGVzdC1saWdodC13aWRnZXQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3R5cGluZy1hbmltYXRpb24tdGVzdC1saWdodC13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAndHlwaW5nLWFuaW1hdGlvbi10ZXN0LWxpZ2h0LXdpZGdldCcsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlVjMuVHlwaW5nQW5pbWF0aW9uVjMsXG4gICAgICB3aWRnZXRWYXJpYW50OiBXaWRnZXRXcmFwcGVyVmFyaWFudC5DQVJEX1dJVEhfQk9SREVSLFxuICAgICAgcHJvbXB0QnV0dG9uVHlwZTogUHJvbXB0QnV0dG9uVmFyaWFudC5MSUdIVCxcbiAgICAgIHByb21wdENhcm91c2VsUm93czogUHJvbXB0Q2Fyb3VzZWxSb3dzLkFMV0FZU19PTkUsXG4gICAgICBzaG93VGV4dEZpZWxkOiB0cnVlLFxuICAgIH0sXG4gICAgJ3R5cGluZy1hbmltYXRpb24tdGVzdC1kYXJrLXdpZGdldCc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAndHlwaW5nLWFuaW1hdGlvbi10ZXN0LWRhcmstd2lkZ2V0JyxcbiAgICAgIGNvbnRlbnRJZDogJ3R5cGluZy1hbmltYXRpb24tdGVzdC1kYXJrLXdpZGdldCcsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlVjMuVHlwaW5nQW5pbWF0aW9uVjMsXG4gICAgICB3aWRnZXRWYXJpYW50OiBXaWRnZXRXcmFwcGVyVmFyaWFudC5DQVJEX1dJVEhfQk9SREVSLFxuICAgICAgcHJvbXB0QnV0dG9uVHlwZTogUHJvbXB0QnV0dG9uVmFyaWFudC5EQVJLLFxuICAgICAgcHJvbXB0Q2Fyb3VzZWxSb3dzOiBQcm9tcHRDYXJvdXNlbFJvd3MuQUxXQVlTX09ORSxcbiAgICAgIHNob3dUZXh0RmllbGQ6IHRydWUsXG4gICAgfSxcbiAgICAncHJvbXB0LWJ1dHRvbi1jYXJvdXNlbC13aXRoLWltYWdlLXRlc3Qtd2lkZ2V0Jzoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6ICdwcm9tcHQtYnV0dG9uLWNhcm91c2VsLXdpdGgtaW1hZ2UtdGVzdC13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAncHJvbXB0LWJ1dHRvbi1jYXJvdXNlbC13aXRoLWltYWdlLXRlc3Qtd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5Qcm9tcHRCdXR0b25DYXJvdXNlbFdpdGhJbWFnZVYzLFxuICAgICAgcHJvbXB0QnV0dG9uVHlwZTogUHJvbXB0QnV0dG9uVmFyaWFudC5MSUdIVCxcbiAgICAgIGltYWdlOiBtb2NrSW1hZ2VzWzBdLFxuICAgICAgaGlkZVRleHRGaWVsZDogZmFsc2UsXG4gICAgfSxcbiAgICAncHJvZHVjdC1jYXJkLXRlc3Qtd2lkZ2V0Jzoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6ICdwcm9kdWN0LWNhcmQtdGVzdC13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAncHJvZHVjdC1jYXJkLXRlc3Qtd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5Qcm9kdWN0Q2FyZFYzLFxuICAgICAgcHJvbXB0QnV0dG9uVHlwZTogUHJvbXB0QnV0dG9uVmFyaWFudC5MSUdIVCxcbiAgICAgIGl0YWxpY2l6ZUhlYWRsaW5lOiBmYWxzZSxcbiAgICAgIGZhbGxiYWNrQ29sb3I6ICcjRjlGNkVBJyxcbiAgICAgIGltYWdlU3JjOlxuICAgICAgICAnaHR0cHM6Ly93d3cuYmFuZG9saWVyc3R5bGUuY29tL2Nkbi9zaG9wL2ZpbGVzL0xpbHkxN19CbGFja19Hb2xkX0Nocm9tZV9NT0RfRGVjMjVfNi5qcGc/dj0xNzY1ODQ0MjcyJyxcbiAgICB9LFxuICAgICdmdWxsLXBhZ2Utc2FsZXMtYWdlbnQtd2lkZ2V0Jzoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6ICdmdWxsLXBhZ2Utc2FsZXMtYWdlbnQtd2lkZ2V0JyxcbiAgICAgIGNvbnRlbnRJZDogJ2Z1bGwtcGFnZS1zYWxlcy1hZ2VudC13aWRnZXQnLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZVYzLkZ1bGxQYWdlU2FsZXNBZ2VudFYzLFxuICAgICAgYXV0b0hlaWdodDogdHJ1ZSxcbiAgICB9LFxuICB9LFxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBZ0JBLE1BQU0sYUFBYTtDQUNqQjtFQUNFLEtBQUs7RUFDTCxLQUFLO0VBQ047Q0FDRDtF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
266
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja1YzQ29uZmlnLmNqcyIsIm5hbWVzIjpbIm1vY2tWM0NvbG9yc0NvbmZpZzogQ2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwPENvbG9yTWFwcGluZ1YzPiIsIm1vY2tWM0Zyb250ZW5kQ29uZmlnOiBGcm9udGVuZENvbmZpZ1YzIiwiQ29uZmlnVmVyc2lvbkVudW0iLCJUaGVtZSIsImNvbG9yVmFyIiwiQ29sb3JOYW1lcyIsIkZsb2F0aW5nQnV0dG9uTG9jYXRpb24iLCJDaGF0SGVhZGVyVmFyaWFudCIsIlNwYXJrbGVJY29uQ29sb3IiLCJDdXN0b21lclNlcnZpY2VUeXBlIiwiV2lkZ2V0VHlwZVYzIiwiUHJvbXB0QnV0dG9uVmFyaWFudCIsIlByb21wdENhcm91c2VsUm93cyIsIkFuaW1hdGlvblNwZWVkIiwiSW1hZ2VHYWxsZXJ5TGF5b3V0IiwiV2lkZ2V0S2luZCIsIldpZGdldFdyYXBwZXJWYXJpYW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL2dyYXBocWxDb250ZXh0L21vY2tWM0NvbmZpZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGF0SGVhZGVyVmFyaWFudCB9IGZyb20gJ0BlbnZpdmUtYWkvcmVhY3QtdG9vbGtpdC12My9DaGF0SGVhZGVyJztcbmltcG9ydCB7IEltYWdlR2FsbGVyeUxheW91dCB9IGZyb20gJ0BlbnZpdmUtYWkvcmVhY3QtdG9vbGtpdC12My9JbWFnZUdhbGxlcnknO1xuaW1wb3J0IHsgUHJvbXB0QnV0dG9uVmFyaWFudCB9IGZyb20gJ0BlbnZpdmUtYWkvcmVhY3QtdG9vbGtpdC12My9Qcm9tcHRCdXR0b24nO1xuaW1wb3J0IHsgQW5pbWF0aW9uU3BlZWQsIFByb21wdENhcm91c2VsUm93cyB9IGZyb20gJ0BlbnZpdmUtYWkvcmVhY3QtdG9vbGtpdC12My9Qcm9tcHRDYXJvdXNlbCc7XG5pbXBvcnQgeyBXaWRnZXRLaW5kIH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL1NvY2lhbFByb29mJztcbmltcG9ydCB7IFRoZW1lIH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL1Rva2Vucyc7XG5pbXBvcnQgeyBTcGFya2xlSWNvbkNvbG9yIH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL1dlbGNvbWVNZXNzYWdlJztcbmltcG9ydCB7IFdpZGdldFdyYXBwZXJWYXJpYW50IH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL1dpZGdldFdyYXBwZXInO1xuaW1wb3J0IHsgQ2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscyc7XG5pbXBvcnQgeyBDb2xvck1hcHBpbmdWMywgQ29sb3JOYW1lcywgY29sb3JWYXIgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2NvbG9yc0NvbmZpZ1YzJztcbmltcG9ydCB7IEZyb250ZW5kQ29uZmlnVjMgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2Zyb250ZW5kQ29uZmlnVjMnO1xuXG5pbXBvcnQgeyBGbG9hdGluZ0J1dHRvbkxvY2F0aW9uIH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL0Zsb2F0aW5nQnV0dG9uJztcbmltcG9ydCB7IEN1c3RvbWVyU2VydmljZVR5cGUgfSBmcm9tICdzcmMvdHlwZXMvY3VzdG9tZXJTZXJ2aWNlJztcbmltcG9ydCB7IENvbmZpZ1ZlcnNpb25FbnVtLCBXaWRnZXRUeXBlVjMgfSBmcm9tICcuLi90eXBlc1YzJztcblxuY29uc3QgbW9ja0ltYWdlcyA9IFtcbiAge1xuICAgIHNyYzogJ2h0dHBzOi8vcGljc3VtLnBob3Rvcy80MDAvNjAwJyxcbiAgICBhbHQ6ICdJbWFnZSAxJyxcbiAgfSxcbiAge1xuICAgIHNyYzogJ2h0dHBzOi8vcGljc3VtLnBob3Rvcy80MDAvNjAwJyxcbiAgICBhbHQ6ICdJbWFnZSAyJyxcbiAgfSxcbiAge1xuICAgIHNyYzogJ2h0dHBzOi8vcGljc3VtLnBob3Rvcy80MDAvNjAwJyxcbiAgICBhbHQ6ICdJbWFnZSAzJyxcbiAgfSxcbiAge1xuICAgIHNyYzogJ2h0dHBzOi8vcGljc3VtLnBob3Rvcy80MDAvNjAwJyxcbiAgICBhbHQ6ICdJbWFnZSA0JyxcbiAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBtb2NrVjNDb2xvcnNDb25maWc6IENhbWVsQ2FzZWRQcm9wZXJ0aWVzRGVlcDxDb2xvck1hcHBpbmdWMz4gPSB7XG4gIHRleHRQcmltYXJ5OiAnIzAyMTQxNCcsXG4gIHRleHRTZWNvbmRhcnk6ICcjNjY2NjY2JyxcbiAgdGV4dEFjY2VudDogJyM0NzhEODcnLFxuICB0ZXh0TGluazogJyMwNDJFMkMnLFxuICB0ZXh0TGlnaHQ6ICcjRkZGRkZGJyxcbiAgYmFja2dyb3VuZFByaW1hcnk6ICcjMUY1RjUxJyxcbiAgYmFja2dyb3VuZFNlY29uZGFyeTogJyNGOUY2RUEnLFxuICBiYWNrZ3JvdW5kVGVydGlhcnk6ICcjRUVFQ0REJyxcbiAgYmFja2dyb3VuZERhcms6ICcjMDIxNDE0JyxcbiAgYmFja2dyb3VuZExpZ2h0OiAnI0ZGRkZGRicsXG4gIGJvcmRlckxpZ2h0OiAnI0U2RTdFNycsXG4gIGJvcmRlck1lZGl1bTogJyNCM0I4QjgnLFxuICBib3JkZXJEYXJrOiAnIzAyMTQxNCcsXG4gIGFjY2VudFByaW1hcnk6ICcjMUY1RjUxJyxcbiAgYWNjZW50U2Vjb25kYXJ5OiAnI0FFODY1OScsXG59O1xuXG5leHBvcnQgY29uc3QgbW9ja1YzRnJvbnRlbmRDb25maWc6IEZyb250ZW5kQ29uZmlnVjMgPSB7XG4gIHVpQ29uZmlnczoge1xuICAgIHZlcnNpb246IENvbmZpZ1ZlcnNpb25FbnVtLlYzLFxuICAgIHNob3J0TmFtZTogJ0Vudml2ZSBBSScsXG4gICAgbG9va0FuZEZlZWw6IHtcbiAgICAgIHRoZW1lOiBUaGVtZS5TVEFOREFSRCxcbiAgICAgIGFnZW50TmFtZTogJ0Vudml2ZSBBSScsXG4gICAgICBjaGF0SGVhZGVyTG9nb0RhcmtTcmM6ICdodHRwczovL2Nkbi5zcGlmZnkuYWkvb3RoZXIvYXNzZXRzL2Vudml2ZS1haS9FbnZpdmVfTG9nb19ESy5zdmcnLFxuICAgICAgY2hhdEhlYWRlckxvZ29MaWdodFNyYzogJ2h0dHBzOi8vY2RuLnNwaWZmeS5haS9vdGhlci9hc3NldHMvZW52aXZlLWFpL0Vudml2ZV9Mb2dvX0x0LnN2ZycsXG4gICAgICB3aWRnZXRMb2dvU3JjOiAnaHR0cHM6Ly9jZG4uc3BpZmZ5LmFpL290aGVyL2Fzc2V0cy9lbnZpdmUtYWkvRW52aXZlX0xvZ29fREsuc3ZnJyxcbiAgICAgIGhpZGVXaWRnZXRMb2dvOiBmYWxzZSxcbiAgICAgIGVsZW1lbnRSYWRpdXM6IDgsXG4gICAgICBpbWFnZUFzcGVjdFJhdGlvOiAnMS8xJyxcbiAgICAgIGJ1dHRvbkNvbG9yczoge1xuICAgICAgICBsaWdodEJ1dHRvbkJhY2tncm91bmRDb2xvcjogY29sb3JWYXIoQ29sb3JOYW1lcy5CYWNrZ3JvdW5kU2Vjb25kYXJ5KSxcbiAgICAgICAgbGlnaHRCdXR0b25JY29uQ29sb3I6IGNvbG9yVmFyKENvbG9yTmFtZXMuQWNjZW50UHJpbWFyeSksXG4gICAgICAgIGRhcmtCdXR0b25CYWNrZ3JvdW5kQ29sb3I6IGNvbG9yVmFyKENvbG9yTmFtZXMuQmFja2dyb3VuZERhcmspLFxuICAgICAgICBkYXJrQnV0dG9uSWNvbkNvbG9yOiBjb2xvclZhcihDb2xvck5hbWVzLkFjY2VudFByaW1hcnkpLFxuICAgICAgfSxcbiAgICAgIHR5cG9ncmFwaHk6IHtcbiAgICAgICAgdGl0bGVGb250RmFtaWx5OiAnUG9wcGlucycsXG4gICAgICAgIGhlYWRlckZvbnRGYW1pbHk6ICdQb3BwaW5zJyxcbiAgICAgICAgYm9keUZvbnRGYW1pbHk6ICdJbnRlciBWYXJpYWJsZScsXG4gICAgICAgIGZvbnRTaXplOiB7XG4gICAgICAgICAgdDE6ICczMnB4JyxcbiAgICAgICAgICB0MjogJzI4cHgnLFxuICAgICAgICAgIHQzOiAnMjRweCcsXG4gICAgICAgICAgaDE6ICcyMHB4JyxcbiAgICAgICAgICBoMjogJzE2cHgnLFxuICAgICAgICAgIGgzOiAnMTRweCcsXG4gICAgICAgICAgYjE6ICcyMHB4JyxcbiAgICAgICAgICBiMjogJzE2cHgnLFxuICAgICAgICAgIGIzOiAnMTRweCcsXG4gICAgICAgICAgYjQ6ICcxMnB4JyxcbiAgICAgICAgICBiNTogJzEwcHgnLFxuICAgICAgICAgIGwxOiAnMTRweCcsXG4gICAgICAgICAgbDI6ICcxMnB4JyxcbiAgICAgICAgfSxcbiAgICAgICAgZm9udFdlaWdodDoge1xuICAgICAgICAgIHJnOiAnNDAwJyxcbiAgICAgICAgICBtZDogJzUwMCcsXG4gICAgICAgICAgc2I6ICc2MDAnLFxuICAgICAgICB9LFxuICAgICAgICBsZXR0ZXJTcGFjaW5nOiB7XG4gICAgICAgICAgJzAnOiAnMGVtJyxcbiAgICAgICAgICAnd2lkZS0xJzogJzFweCcsXG4gICAgICAgIH0sXG4gICAgICAgIGxpbmVIZWlnaHQ6IHtcbiAgICAgICAgICAnMTI0JzogMS4yNCxcbiAgICAgICAgICAnMTIwJzogMS4yLFxuICAgICAgICAgICcxMTgnOiAxLjE4LFxuICAgICAgICAgICcxMTYnOiAxLjE2LFxuICAgICAgICAgICcxMTQnOiAxLjE0LFxuICAgICAgICAgICcxNDgnOiAxLjQ4LFxuICAgICAgICAgICcxNDAnOiAxLjQsXG4gICAgICAgICAgJzEyOCc6IDEuMjgsXG4gICAgICAgICAgJzEzMCc6IDEuMyxcbiAgICAgICAgICAnMTMzJzogMS4zMyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBmbG9hdGluZ0J1dHRvbjoge1xuICAgICAgcG9zaXRpb246IEZsb2F0aW5nQnV0dG9uTG9jYXRpb24uQk9UVE9NX1JJR0hULFxuICAgICAgYmFja2dyb3VuZENvbG9yOiBDb2xvck5hbWVzLkJhY2tncm91bmRQcmltYXJ5LFxuICAgICAgbW9kZTogJ2RhcmsnLFxuICAgICAgc2hvd09wdGlvbjogJ2Fsd2F5cycsXG4gICAgICBzdHlsZTogJ2F0dGFjaGVkJyxcbiAgICAgIGljb25TVkdTcmM6ICcnLFxuICAgIH0sXG4gICAgZmxvYXRpbmdDaGF0OiB7XG4gICAgICBoZWFkZXJCYWNrZ3JvdW5kQ29sb3I6IENvbG9yTmFtZXMuQmFja2dyb3VuZFByaW1hcnksXG4gICAgICBoZWFkZXJNb2RlOiBDaGF0SGVhZGVyVmFyaWFudC5EQVJLLFxuICAgICAgd2VsY29tZU1lc3NhZ2VJY29uQ29sb3I6IFNwYXJrbGVJY29uQ29sb3IuQUNDRU5UX1BSSU1BUlksXG4gICAgICBzaG93VmVyaWZpZWRCdXllcjogdHJ1ZSxcbiAgICAgIHVzZXJRdWVyeUlucHV0RW5hYmxlZDogdHJ1ZSxcbiAgICAgIHNob3dFbnZpdmVMb2dvOiB0cnVlLFxuICAgICAgaWdub3JlRmlyc3RNb2RlbFJlc3BvbnNlOiBmYWxzZSxcbiAgICAgIG5ldmVyU2hvd1NpbmdsZVByb2R1Y3RDYXJkczogZmFsc2UsXG4gICAgICB3ZWxjb21lTWVzc2FnZVRpdGxlOiAnV2VsY29tZSB0byBFbnZpdmUgQUknLFxuICAgICAgd2VsY29tZU1lc3NhZ2VUZXh0OlxuICAgICAgICAnWW91ciBwZXJzb25hbCBzaG9wcGVyIHRyYWluZWQgb24gdGhlIGNvbGxlY3RpdmUga25vd2xlZGdlIG9mIHRob3VzYW5kcyBvZiByZWFsIGV4cGVydHMhJyxcbiAgICAgIGNoYXRGb290ZXJUZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgICAgcGFydGlhbFZpZXdDb25maWc6IHtcbiAgICAgICAgZGlzYWJsZWQ6IHRydWUsXG4gICAgICB9LFxuICAgIH0sXG4gICAgY3VzdG9tZXJTZXJ2aWNlSW50ZWdyYXRpb246IHtcbiAgICAgIHByb3ZpZGVyOiBDdXN0b21lclNlcnZpY2VUeXBlLnVuc3VwcG9ydGVkLFxuICAgICAgZW5hYmxlZDogZmFsc2UsXG4gICAgICBzdXBwcmVzc01lcmNoYW50QnV0dG9uOiBmYWxzZSxcbiAgICB9LFxuICAgIHNpbmdsZVBhZ2VBcHBsaWNhdGlvblNldHRpbmdzOiB7XG4gICAgICBlbmFibGVkOiBmYWxzZSxcbiAgICAgIHJlZnJlc2hJbnRlcnZhbDogMTAwMCxcbiAgICB9LFxuICB9LFxuICBwYWdlVmFyaWFudHM6IFtdLFxuICBtb3VudGluZ0NvbmZpZ3M6IHt9LFxuICB3aWRnZXRDb25maWdzOiB7XG4gICAgJ3Byb21wdC1jYXJvdXNlbC10ZXN0LWxpZ2h0LXdpZGdldCc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAncHJvbXB0LWNhcm91c2VsLXRlc3QtbGlnaHQtd2lkZ2V0JyxcbiAgICAgIGNvbnRlbnRJZDogJ3Byb21wdC1jYXJvdXNlbC10ZXN0LWxpZ2h0LXdpZGdldCcsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlVjMuUHJvbXB0Q2Fyb3VzZWxWMyxcblxuICAgICAgcHJvbXB0QnV0dG9uVHlwZTogUHJvbXB0QnV0dG9uVmFyaWFudC5MSUdIVCxcbiAgICAgIGJvbGRGaXJzdEJ1dHRvbjogZmFsc2UsXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5BTFdBWVNfT05FLFxuICAgICAgYW5pbWF0aW9uU3BlZWQ6IEFuaW1hdGlvblNwZWVkLkZBU1QsXG4gICAgfSxcbiAgICAncHJvbXB0LWNhcm91c2VsLXRlc3QtZGFyay13aWRnZXQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3Byb21wdC1jYXJvdXNlbC10ZXN0LWRhcmstd2lkZ2V0JyxcbiAgICAgIGNvbnRlbnRJZDogJ3Byb21wdC1jYXJvdXNlbC10ZXN0LWRhcmstd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5Qcm9tcHRDYXJvdXNlbFYzLFxuXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkRBUkssXG4gICAgICBib2xkRmlyc3RCdXR0b246IGZhbHNlLFxuICAgICAgcHJvbXB0Q2Fyb3VzZWxSb3dzOiBQcm9tcHRDYXJvdXNlbFJvd3MuQUxXQVlTX09ORSxcbiAgICAgIGFuaW1hdGlvblNwZWVkOiBBbmltYXRpb25TcGVlZC5GQVNULFxuICAgIH0sXG4gICAgJ3RpdGxlZC1wcm9tcHQtY2Fyb3VzZWwtdGVzdC1saWdodC13aWRnZXQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3RpdGxlZC1wcm9tcHQtY2Fyb3VzZWwtdGVzdC1saWdodC13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAndGl0bGVkLXByb21wdC1jYXJvdXNlbC10ZXN0LWxpZ2h0LXdpZGdldCcsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlVjMuVGl0bGVkUHJvbXB0Q2Fyb3VzZWxWMyxcblxuICAgICAgcHJvbXB0QnV0dG9uVHlwZTogUHJvbXB0QnV0dG9uVmFyaWFudC5MSUdIVCxcbiAgICAgIGJvbGRGaXJzdEJ1dHRvbjogZmFsc2UsXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5BTFdBWVNfT05FLFxuICAgICAgYW5pbWF0aW9uU3BlZWQ6IEFuaW1hdGlvblNwZWVkLkZBU1QsXG4gICAgfSxcbiAgICAndGl0bGVkLXByb21wdC1jYXJvdXNlbC10ZXN0LWRhcmstd2lkZ2V0Jzoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6ICd0aXRsZWQtcHJvbXB0LWNhcm91c2VsLXRlc3QtZGFyay13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAndGl0bGVkLXByb21wdC1jYXJvdXNlbC10ZXN0LWRhcmstd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5UaXRsZWRQcm9tcHRDYXJvdXNlbFYzLFxuXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkRBUkssXG4gICAgICBib2xkRmlyc3RCdXR0b246IGZhbHNlLFxuICAgICAgcHJvbXB0Q2Fyb3VzZWxSb3dzOiBQcm9tcHRDYXJvdXNlbFJvd3MuQUxXQVlTX09ORSxcbiAgICAgIGFuaW1hdGlvblNwZWVkOiBBbmltYXRpb25TcGVlZC5GQVNULFxuICAgIH0sXG4gICAgJ3NvY2lhbC1wcm9vZi10ZXN0LXdpZGdldC1mb3VyLWdyaWQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3NvY2lhbC1wcm9vZi10ZXN0LXdpZGdldC1mb3VyLWdyaWQnLFxuICAgICAgY29udGVudElkOiAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LWZvdXItZ3JpZCcsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlVjMuU29jaWFsUHJvb2ZWMyxcblxuICAgICAgaW1hZ2VHYWxsZXJ5TGF5b3V0OiBJbWFnZUdhbGxlcnlMYXlvdXQuRk9VUl9HUklELFxuICAgICAga2luZDogV2lkZ2V0S2luZC5TVEFUSUMsXG4gICAgICB2YXJpYW50OiBXaWRnZXRXcmFwcGVyVmFyaWFudC5JTkxJTkVfV0lUSF9CT1JERVIsXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5UV09fT05fTU9CSUxFX09ORV9PTl9ERVNLVE9QLFxuICAgICAgcHJpbWFyeUJ1dHRvblZhcmlhbnQ6IFByb21wdEJ1dHRvblZhcmlhbnQuREFSSyxcbiAgICAgIHNlY29uZGFyeUJ1dHRvblZhcmlhbnQ6IFByb21wdEJ1dHRvblZhcmlhbnQuTElHSFQsXG4gICAgICBpbWFnZXM6IG1vY2tJbWFnZXMsXG4gICAgfSxcbiAgICAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LXNpbmdsZSc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LXNpbmdsZScsXG4gICAgICBjb250ZW50SWQ6ICdzb2NpYWwtcHJvb2YtdGVzdC13aWRnZXQtc2luZ2xlJyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5Tb2NpYWxQcm9vZlYzLFxuXG4gICAgICBpbWFnZUdhbGxlcnlMYXlvdXQ6IEltYWdlR2FsbGVyeUxheW91dC5TSU5HTEUsXG4gICAgICBraW5kOiBXaWRnZXRLaW5kLlNUQVRJQyxcbiAgICAgIHZhcmlhbnQ6IFdpZGdldFdyYXBwZXJWYXJpYW50LkNBUkRfTk9fQk9SREVSLFxuICAgICAgcHJvbXB0Q2Fyb3VzZWxSb3dzOiBQcm9tcHRDYXJvdXNlbFJvd3MuVFdPX09OX01PQklMRV9PTkVfT05fREVTS1RPUCxcbiAgICAgIHByaW1hcnlCdXR0b25WYXJpYW50OiBQcm9tcHRCdXR0b25WYXJpYW50LkRBUkssXG4gICAgICBzZWNvbmRhcnlCdXR0b25WYXJpYW50OiBQcm9tcHRCdXR0b25WYXJpYW50LkxJR0hULFxuICAgICAgaW1hZ2VzOiBtb2NrSW1hZ2VzLFxuICAgIH0sXG4gICAgJ3NvY2lhbC1wcm9vZi10ZXN0LXdpZGdldC1mb3VyLWhvcml6b250YWwnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3NvY2lhbC1wcm9vZi10ZXN0LXdpZGdldC1mb3VyLWhvcml6b250YWwnLFxuICAgICAgY29udGVudElkOiAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LWZvdXItaG9yaXpvbnRhbCcsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlVjMuU29jaWFsUHJvb2ZWMyxcblxuICAgICAgaW1hZ2VHYWxsZXJ5TGF5b3V0OiBJbWFnZUdhbGxlcnlMYXlvdXQuRk9VUl9IT1JJWk9OVEFMLFxuICAgICAga2luZDogV2lkZ2V0S2luZC5TVEFUSUMsXG4gICAgICB2YXJpYW50OiBXaWRnZXRXcmFwcGVyVmFyaWFudC5DQVJEX1dJVEhfQk9SREVSLFxuICAgICAgcHJvbXB0Q2Fyb3VzZWxSb3dzOiBQcm9tcHRDYXJvdXNlbFJvd3MuVFdPX09OX01PQklMRV9PTkVfT05fREVTS1RPUCxcbiAgICAgIHByaW1hcnlCdXR0b25WYXJpYW50OiBQcm9tcHRCdXR0b25WYXJpYW50LkRBUkssXG4gICAgICBzZWNvbmRhcnlCdXR0b25WYXJpYW50OiBQcm9tcHRCdXR0b25WYXJpYW50LkxJR0hULFxuICAgICAgaW1hZ2VzOiBtb2NrSW1hZ2VzLFxuICAgIH0sXG4gICAgJ3R5cGluZy1hbmltYXRpb24tdGVzdC1saWdodC13aWRnZXQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3R5cGluZy1hbmltYXRpb24tdGVzdC1saWdodC13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAndHlwaW5nLWFuaW1hdGlvbi10ZXN0LWxpZ2h0LXdpZGdldCcsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlVjMuVHlwaW5nQW5pbWF0aW9uVjMsXG4gICAgICB3aWRnZXRWYXJpYW50OiBXaWRnZXRXcmFwcGVyVmFyaWFudC5DQVJEX1dJVEhfQk9SREVSLFxuICAgICAgcHJvbXB0QnV0dG9uVHlwZTogUHJvbXB0QnV0dG9uVmFyaWFudC5MSUdIVCxcbiAgICAgIHByb21wdENhcm91c2VsUm93czogUHJvbXB0Q2Fyb3VzZWxSb3dzLkFMV0FZU19PTkUsXG4gICAgICBzaG93VGV4dEZpZWxkOiB0cnVlLFxuICAgIH0sXG4gICAgJ3R5cGluZy1hbmltYXRpb24tdGVzdC1kYXJrLXdpZGdldCc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAndHlwaW5nLWFuaW1hdGlvbi10ZXN0LWRhcmstd2lkZ2V0JyxcbiAgICAgIGNvbnRlbnRJZDogJ3R5cGluZy1hbmltYXRpb24tdGVzdC1kYXJrLXdpZGdldCcsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlVjMuVHlwaW5nQW5pbWF0aW9uVjMsXG4gICAgICB3aWRnZXRWYXJpYW50OiBXaWRnZXRXcmFwcGVyVmFyaWFudC5DQVJEX1dJVEhfQk9SREVSLFxuICAgICAgcHJvbXB0QnV0dG9uVHlwZTogUHJvbXB0QnV0dG9uVmFyaWFudC5EQVJLLFxuICAgICAgcHJvbXB0Q2Fyb3VzZWxSb3dzOiBQcm9tcHRDYXJvdXNlbFJvd3MuQUxXQVlTX09ORSxcbiAgICAgIHNob3dUZXh0RmllbGQ6IHRydWUsXG4gICAgfSxcbiAgICAncHJvbXB0LWJ1dHRvbi1jYXJvdXNlbC13aXRoLWltYWdlLXRlc3Qtd2lkZ2V0Jzoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6ICdwcm9tcHQtYnV0dG9uLWNhcm91c2VsLXdpdGgtaW1hZ2UtdGVzdC13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAncHJvbXB0LWJ1dHRvbi1jYXJvdXNlbC13aXRoLWltYWdlLXRlc3Qtd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5Qcm9tcHRCdXR0b25DYXJvdXNlbFdpdGhJbWFnZVYzLFxuICAgICAgcHJvbXB0QnV0dG9uVHlwZTogUHJvbXB0QnV0dG9uVmFyaWFudC5MSUdIVCxcbiAgICAgIGltYWdlOiBtb2NrSW1hZ2VzWzBdLFxuICAgICAgaGlkZVRleHRGaWVsZDogZmFsc2UsXG4gICAgfSxcbiAgICAncHJvZHVjdC1jYXJkLXRlc3Qtd2lkZ2V0Jzoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6ICdwcm9kdWN0LWNhcmQtdGVzdC13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAncHJvZHVjdC1jYXJkLXRlc3Qtd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5Qcm9kdWN0Q2FyZFYzLFxuICAgICAgcHJvbXB0QnV0dG9uVHlwZTogUHJvbXB0QnV0dG9uVmFyaWFudC5MSUdIVCxcbiAgICAgIGl0YWxpY2l6ZUhlYWRsaW5lOiBmYWxzZSxcbiAgICAgIGZhbGxiYWNrQ29sb3I6ICcjRjlGNkVBJyxcbiAgICAgIGltYWdlU3JjOlxuICAgICAgICAnaHR0cHM6Ly93d3cuYmFuZG9saWVyc3R5bGUuY29tL2Nkbi9zaG9wL2ZpbGVzL0xpbHkxN19CbGFja19Hb2xkX0Nocm9tZV9NT0RfRGVjMjVfNi5qcGc/dj0xNzY1ODQ0MjcyJyxcbiAgICB9LFxuICAgICdmdWxsLXBhZ2Utc2FsZXMtYWdlbnQtd2lkZ2V0Jzoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6ICdmdWxsLXBhZ2Utc2FsZXMtYWdlbnQtd2lkZ2V0JyxcbiAgICAgIGNvbnRlbnRJZDogJ2Z1bGwtcGFnZS1zYWxlcy1hZ2VudC13aWRnZXQnLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZVYzLkZ1bGxQYWdlU2FsZXNBZ2VudFYzLFxuICAgICAgYXV0b0hlaWdodDogdHJ1ZSxcbiAgICB9LFxuICB9LFxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7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
@@ -127,7 +127,8 @@ const mockV3FrontendConfig = {
127
127
  neverShowSingleProductCards: false,
128
128
  welcomeMessageTitle: "Welcome to Envive AI",
129
129
  welcomeMessageText: "Your personal shopper trained on the collective knowledge of thousands of real experts!",
130
- chatFooterTextFieldPlaceholderText: "Ask me anything..."
130
+ chatFooterTextFieldPlaceholderText: "Ask me anything...",
131
+ partialViewConfig: { disabled: true }
131
132
  },
132
133
  customerServiceIntegration: {
133
134
  provider: CustomerServiceType.unsupported,
@@ -260,4 +261,4 @@ const mockV3FrontendConfig = {
260
261
 
261
262
  //#endregion
262
263
  export { mockV3ColorsConfig, mockV3FrontendConfig };
263
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja1YzQ29uZmlnLmpzIiwibmFtZXMiOlsibW9ja1YzQ29sb3JzQ29uZmlnOiBDYW1lbENhc2VkUHJvcGVydGllc0RlZXA8Q29sb3JNYXBwaW5nVjM+IiwibW9ja1YzRnJvbnRlbmRDb25maWc6IEZyb250ZW5kQ29uZmlnVjMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvZ3JhcGhxbENvbnRleHQvbW9ja1YzQ29uZmlnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYXRIZWFkZXJWYXJpYW50IH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL0NoYXRIZWFkZXInO1xuaW1wb3J0IHsgSW1hZ2VHYWxsZXJ5TGF5b3V0IH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL0ltYWdlR2FsbGVyeSc7XG5pbXBvcnQgeyBQcm9tcHRCdXR0b25WYXJpYW50IH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL1Byb21wdEJ1dHRvbic7XG5pbXBvcnQgeyBBbmltYXRpb25TcGVlZCwgUHJvbXB0Q2Fyb3VzZWxSb3dzIH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL1Byb21wdENhcm91c2VsJztcbmltcG9ydCB7IFdpZGdldEtpbmQgfSBmcm9tICdAZW52aXZlLWFpL3JlYWN0LXRvb2xraXQtdjMvU29jaWFsUHJvb2YnO1xuaW1wb3J0IHsgVGhlbWUgfSBmcm9tICdAZW52aXZlLWFpL3JlYWN0LXRvb2xraXQtdjMvVG9rZW5zJztcbmltcG9ydCB7IFNwYXJrbGVJY29uQ29sb3IgfSBmcm9tICdAZW52aXZlLWFpL3JlYWN0LXRvb2xraXQtdjMvV2VsY29tZU1lc3NhZ2UnO1xuaW1wb3J0IHsgV2lkZ2V0V3JhcHBlclZhcmlhbnQgfSBmcm9tICdAZW52aXZlLWFpL3JlYWN0LXRvb2xraXQtdjMvV2lkZ2V0V3JhcHBlcic7XG5pbXBvcnQgeyBDYW1lbENhc2VkUHJvcGVydGllc0RlZXAgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IENvbG9yTWFwcGluZ1YzLCBDb2xvck5hbWVzLCBjb2xvclZhciB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvY29sb3JzQ29uZmlnVjMnO1xuaW1wb3J0IHsgRnJvbnRlbmRDb25maWdWMyB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvZnJvbnRlbmRDb25maWdWMyc7XG5cbmltcG9ydCB7IEZsb2F0aW5nQnV0dG9uTG9jYXRpb24gfSBmcm9tICdAZW52aXZlLWFpL3JlYWN0LXRvb2xraXQtdjMvRmxvYXRpbmdCdXR0b24nO1xuaW1wb3J0IHsgQ3VzdG9tZXJTZXJ2aWNlVHlwZSB9IGZyb20gJ3NyYy90eXBlcy9jdXN0b21lclNlcnZpY2UnO1xuaW1wb3J0IHsgQ29uZmlnVmVyc2lvbkVudW0sIFdpZGdldFR5cGVWMyB9IGZyb20gJy4uL3R5cGVzVjMnO1xuXG5jb25zdCBtb2NrSW1hZ2VzID0gW1xuICB7XG4gICAgc3JjOiAnaHR0cHM6Ly9waWNzdW0ucGhvdG9zLzQwMC82MDAnLFxuICAgIGFsdDogJ0ltYWdlIDEnLFxuICB9LFxuICB7XG4gICAgc3JjOiAnaHR0cHM6Ly9waWNzdW0ucGhvdG9zLzQwMC82MDAnLFxuICAgIGFsdDogJ0ltYWdlIDInLFxuICB9LFxuICB7XG4gICAgc3JjOiAnaHR0cHM6Ly9waWNzdW0ucGhvdG9zLzQwMC82MDAnLFxuICAgIGFsdDogJ0ltYWdlIDMnLFxuICB9LFxuICB7XG4gICAgc3JjOiAnaHR0cHM6Ly9waWNzdW0ucGhvdG9zLzQwMC82MDAnLFxuICAgIGFsdDogJ0ltYWdlIDQnLFxuICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IG1vY2tWM0NvbG9yc0NvbmZpZzogQ2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwPENvbG9yTWFwcGluZ1YzPiA9IHtcbiAgdGV4dFByaW1hcnk6ICcjMDIxNDE0JyxcbiAgdGV4dFNlY29uZGFyeTogJyM2NjY2NjYnLFxuICB0ZXh0QWNjZW50OiAnIzQ3OEQ4NycsXG4gIHRleHRMaW5rOiAnIzA0MkUyQycsXG4gIHRleHRMaWdodDogJyNGRkZGRkYnLFxuICBiYWNrZ3JvdW5kUHJpbWFyeTogJyMxRjVGNTEnLFxuICBiYWNrZ3JvdW5kU2Vjb25kYXJ5OiAnI0Y5RjZFQScsXG4gIGJhY2tncm91bmRUZXJ0aWFyeTogJyNFRUVDREQnLFxuICBiYWNrZ3JvdW5kRGFyazogJyMwMjE0MTQnLFxuICBiYWNrZ3JvdW5kTGlnaHQ6ICcjRkZGRkZGJyxcbiAgYm9yZGVyTGlnaHQ6ICcjRTZFN0U3JyxcbiAgYm9yZGVyTWVkaXVtOiAnI0IzQjhCOCcsXG4gIGJvcmRlckRhcms6ICcjMDIxNDE0JyxcbiAgYWNjZW50UHJpbWFyeTogJyMxRjVGNTEnLFxuICBhY2NlbnRTZWNvbmRhcnk6ICcjQUU4NjU5Jyxcbn07XG5cbmV4cG9ydCBjb25zdCBtb2NrVjNGcm9udGVuZENvbmZpZzogRnJvbnRlbmRDb25maWdWMyA9IHtcbiAgdWlDb25maWdzOiB7XG4gICAgdmVyc2lvbjogQ29uZmlnVmVyc2lvbkVudW0uVjMsXG4gICAgc2hvcnROYW1lOiAnRW52aXZlIEFJJyxcbiAgICBsb29rQW5kRmVlbDoge1xuICAgICAgdGhlbWU6IFRoZW1lLlNUQU5EQVJELFxuICAgICAgYWdlbnROYW1lOiAnRW52aXZlIEFJJyxcbiAgICAgIGNoYXRIZWFkZXJMb2dvRGFya1NyYzogJ2h0dHBzOi8vY2RuLnNwaWZmeS5haS9vdGhlci9hc3NldHMvZW52aXZlLWFpL0Vudml2ZV9Mb2dvX0RLLnN2ZycsXG4gICAgICBjaGF0SGVhZGVyTG9nb0xpZ2h0U3JjOiAnaHR0cHM6Ly9jZG4uc3BpZmZ5LmFpL290aGVyL2Fzc2V0cy9lbnZpdmUtYWkvRW52aXZlX0xvZ29fTHQuc3ZnJyxcbiAgICAgIHdpZGdldExvZ29TcmM6ICdodHRwczovL2Nkbi5zcGlmZnkuYWkvb3RoZXIvYXNzZXRzL2Vudml2ZS1haS9FbnZpdmVfTG9nb19ESy5zdmcnLFxuICAgICAgaGlkZVdpZGdldExvZ286IGZhbHNlLFxuICAgICAgZWxlbWVudFJhZGl1czogOCxcbiAgICAgIGltYWdlQXNwZWN0UmF0aW86ICcxLzEnLFxuICAgICAgYnV0dG9uQ29sb3JzOiB7XG4gICAgICAgIGxpZ2h0QnV0dG9uQmFja2dyb3VuZENvbG9yOiBjb2xvclZhcihDb2xvck5hbWVzLkJhY2tncm91bmRTZWNvbmRhcnkpLFxuICAgICAgICBsaWdodEJ1dHRvbkljb25Db2xvcjogY29sb3JWYXIoQ29sb3JOYW1lcy5BY2NlbnRQcmltYXJ5KSxcbiAgICAgICAgZGFya0J1dHRvbkJhY2tncm91bmRDb2xvcjogY29sb3JWYXIoQ29sb3JOYW1lcy5CYWNrZ3JvdW5kRGFyayksXG4gICAgICAgIGRhcmtCdXR0b25JY29uQ29sb3I6IGNvbG9yVmFyKENvbG9yTmFtZXMuQWNjZW50UHJpbWFyeSksXG4gICAgICB9LFxuICAgICAgdHlwb2dyYXBoeToge1xuICAgICAgICB0aXRsZUZvbnRGYW1pbHk6ICdQb3BwaW5zJyxcbiAgICAgICAgaGVhZGVyRm9udEZhbWlseTogJ1BvcHBpbnMnLFxuICAgICAgICBib2R5Rm9udEZhbWlseTogJ0ludGVyIFZhcmlhYmxlJyxcbiAgICAgICAgZm9udFNpemU6IHtcbiAgICAgICAgICB0MTogJzMycHgnLFxuICAgICAgICAgIHQyOiAnMjhweCcsXG4gICAgICAgICAgdDM6ICcyNHB4JyxcbiAgICAgICAgICBoMTogJzIwcHgnLFxuICAgICAgICAgIGgyOiAnMTZweCcsXG4gICAgICAgICAgaDM6ICcxNHB4JyxcbiAgICAgICAgICBiMTogJzIwcHgnLFxuICAgICAgICAgIGIyOiAnMTZweCcsXG4gICAgICAgICAgYjM6ICcxNHB4JyxcbiAgICAgICAgICBiNDogJzEycHgnLFxuICAgICAgICAgIGI1OiAnMTBweCcsXG4gICAgICAgICAgbDE6ICcxNHB4JyxcbiAgICAgICAgICBsMjogJzEycHgnLFxuICAgICAgICB9LFxuICAgICAgICBmb250V2VpZ2h0OiB7XG4gICAgICAgICAgcmc6ICc0MDAnLFxuICAgICAgICAgIG1kOiAnNTAwJyxcbiAgICAgICAgICBzYjogJzYwMCcsXG4gICAgICAgIH0sXG4gICAgICAgIGxldHRlclNwYWNpbmc6IHtcbiAgICAgICAgICAnMCc6ICcwZW0nLFxuICAgICAgICAgICd3aWRlLTEnOiAnMXB4JyxcbiAgICAgICAgfSxcbiAgICAgICAgbGluZUhlaWdodDoge1xuICAgICAgICAgICcxMjQnOiAxLjI0LFxuICAgICAgICAgICcxMjAnOiAxLjIsXG4gICAgICAgICAgJzExOCc6IDEuMTgsXG4gICAgICAgICAgJzExNic6IDEuMTYsXG4gICAgICAgICAgJzExNCc6IDEuMTQsXG4gICAgICAgICAgJzE0OCc6IDEuNDgsXG4gICAgICAgICAgJzE0MCc6IDEuNCxcbiAgICAgICAgICAnMTI4JzogMS4yOCxcbiAgICAgICAgICAnMTMwJzogMS4zLFxuICAgICAgICAgICcxMzMnOiAxLjMzLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGZsb2F0aW5nQnV0dG9uOiB7XG4gICAgICBwb3NpdGlvbjogRmxvYXRpbmdCdXR0b25Mb2NhdGlvbi5CT1RUT01fUklHSFQsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IENvbG9yTmFtZXMuQmFja2dyb3VuZFByaW1hcnksXG4gICAgICBtb2RlOiAnZGFyaycsXG4gICAgICBzaG93T3B0aW9uOiAnYWx3YXlzJyxcbiAgICAgIHN0eWxlOiAnYXR0YWNoZWQnLFxuICAgICAgaWNvblNWR1NyYzogJycsXG4gICAgfSxcbiAgICBmbG9hdGluZ0NoYXQ6IHtcbiAgICAgIGhlYWRlckJhY2tncm91bmRDb2xvcjogQ29sb3JOYW1lcy5CYWNrZ3JvdW5kUHJpbWFyeSxcbiAgICAgIGhlYWRlck1vZGU6IENoYXRIZWFkZXJWYXJpYW50LkRBUkssXG4gICAgICB3ZWxjb21lTWVzc2FnZUljb25Db2xvcjogU3BhcmtsZUljb25Db2xvci5BQ0NFTlRfUFJJTUFSWSxcbiAgICAgIHNob3dWZXJpZmllZEJ1eWVyOiB0cnVlLFxuICAgICAgdXNlclF1ZXJ5SW5wdXRFbmFibGVkOiB0cnVlLFxuICAgICAgc2hvd0Vudml2ZUxvZ286IHRydWUsXG4gICAgICBpZ25vcmVGaXJzdE1vZGVsUmVzcG9uc2U6IGZhbHNlLFxuICAgICAgbmV2ZXJTaG93U2luZ2xlUHJvZHVjdENhcmRzOiBmYWxzZSxcbiAgICAgIHdlbGNvbWVNZXNzYWdlVGl0bGU6ICdXZWxjb21lIHRvIEVudml2ZSBBSScsXG4gICAgICB3ZWxjb21lTWVzc2FnZVRleHQ6XG4gICAgICAgICdZb3VyIHBlcnNvbmFsIHNob3BwZXIgdHJhaW5lZCBvbiB0aGUgY29sbGVjdGl2ZSBrbm93bGVkZ2Ugb2YgdGhvdXNhbmRzIG9mIHJlYWwgZXhwZXJ0cyEnLFxuICAgICAgY2hhdEZvb3RlclRleHRGaWVsZFBsYWNlaG9sZGVyVGV4dDogJ0FzayBtZSBhbnl0aGluZy4uLicsXG4gICAgfSxcbiAgICBjdXN0b21lclNlcnZpY2VJbnRlZ3JhdGlvbjoge1xuICAgICAgcHJvdmlkZXI6IEN1c3RvbWVyU2VydmljZVR5cGUudW5zdXBwb3J0ZWQsXG4gICAgICBlbmFibGVkOiBmYWxzZSxcbiAgICAgIHN1cHByZXNzTWVyY2hhbnRCdXR0b246IGZhbHNlLFxuICAgIH0sXG4gICAgc2luZ2xlUGFnZUFwcGxpY2F0aW9uU2V0dGluZ3M6IHtcbiAgICAgIGVuYWJsZWQ6IGZhbHNlLFxuICAgICAgcmVmcmVzaEludGVydmFsOiAxMDAwLFxuICAgIH0sXG4gIH0sXG4gIHBhZ2VWYXJpYW50czogW10sXG4gIG1vdW50aW5nQ29uZmlnczoge30sXG4gIHdpZGdldENvbmZpZ3M6IHtcbiAgICAncHJvbXB0LWNhcm91c2VsLXRlc3QtbGlnaHQtd2lkZ2V0Jzoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6ICdwcm9tcHQtY2Fyb3VzZWwtdGVzdC1saWdodC13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAncHJvbXB0LWNhcm91c2VsLXRlc3QtbGlnaHQtd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5Qcm9tcHRDYXJvdXNlbFYzLFxuXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkxJR0hULFxuICAgICAgYm9sZEZpcnN0QnV0dG9uOiBmYWxzZSxcbiAgICAgIHByb21wdENhcm91c2VsUm93czogUHJvbXB0Q2Fyb3VzZWxSb3dzLkFMV0FZU19PTkUsXG4gICAgICBhbmltYXRpb25TcGVlZDogQW5pbWF0aW9uU3BlZWQuRkFTVCxcbiAgICB9LFxuICAgICdwcm9tcHQtY2Fyb3VzZWwtdGVzdC1kYXJrLXdpZGdldCc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAncHJvbXB0LWNhcm91c2VsLXRlc3QtZGFyay13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAncHJvbXB0LWNhcm91c2VsLXRlc3QtZGFyay13aWRnZXQnLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZVYzLlByb21wdENhcm91c2VsVjMsXG5cbiAgICAgIHByb21wdEJ1dHRvblR5cGU6IFByb21wdEJ1dHRvblZhcmlhbnQuREFSSyxcbiAgICAgIGJvbGRGaXJzdEJ1dHRvbjogZmFsc2UsXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5BTFdBWVNfT05FLFxuICAgICAgYW5pbWF0aW9uU3BlZWQ6IEFuaW1hdGlvblNwZWVkLkZBU1QsXG4gICAgfSxcbiAgICAndGl0bGVkLXByb21wdC1jYXJvdXNlbC10ZXN0LWxpZ2h0LXdpZGdldCc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAndGl0bGVkLXByb21wdC1jYXJvdXNlbC10ZXN0LWxpZ2h0LXdpZGdldCcsXG4gICAgICBjb250ZW50SWQ6ICd0aXRsZWQtcHJvbXB0LWNhcm91c2VsLXRlc3QtbGlnaHQtd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5UaXRsZWRQcm9tcHRDYXJvdXNlbFYzLFxuXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkxJR0hULFxuICAgICAgYm9sZEZpcnN0QnV0dG9uOiBmYWxzZSxcbiAgICAgIHByb21wdENhcm91c2VsUm93czogUHJvbXB0Q2Fyb3VzZWxSb3dzLkFMV0FZU19PTkUsXG4gICAgICBhbmltYXRpb25TcGVlZDogQW5pbWF0aW9uU3BlZWQuRkFTVCxcbiAgICB9LFxuICAgICd0aXRsZWQtcHJvbXB0LWNhcm91c2VsLXRlc3QtZGFyay13aWRnZXQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3RpdGxlZC1wcm9tcHQtY2Fyb3VzZWwtdGVzdC1kYXJrLXdpZGdldCcsXG4gICAgICBjb250ZW50SWQ6ICd0aXRsZWQtcHJvbXB0LWNhcm91c2VsLXRlc3QtZGFyay13aWRnZXQnLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZVYzLlRpdGxlZFByb21wdENhcm91c2VsVjMsXG5cbiAgICAgIHByb21wdEJ1dHRvblR5cGU6IFByb21wdEJ1dHRvblZhcmlhbnQuREFSSyxcbiAgICAgIGJvbGRGaXJzdEJ1dHRvbjogZmFsc2UsXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5BTFdBWVNfT05FLFxuICAgICAgYW5pbWF0aW9uU3BlZWQ6IEFuaW1hdGlvblNwZWVkLkZBU1QsXG4gICAgfSxcbiAgICAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LWZvdXItZ3JpZCc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LWZvdXItZ3JpZCcsXG4gICAgICBjb250ZW50SWQ6ICdzb2NpYWwtcHJvb2YtdGVzdC13aWRnZXQtZm91ci1ncmlkJyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5Tb2NpYWxQcm9vZlYzLFxuXG4gICAgICBpbWFnZUdhbGxlcnlMYXlvdXQ6IEltYWdlR2FsbGVyeUxheW91dC5GT1VSX0dSSUQsXG4gICAgICBraW5kOiBXaWRnZXRLaW5kLlNUQVRJQyxcbiAgICAgIHZhcmlhbnQ6IFdpZGdldFdyYXBwZXJWYXJpYW50LklOTElORV9XSVRIX0JPUkRFUixcbiAgICAgIHByb21wdENhcm91c2VsUm93czogUHJvbXB0Q2Fyb3VzZWxSb3dzLlRXT19PTl9NT0JJTEVfT05FX09OX0RFU0tUT1AsXG4gICAgICBwcmltYXJ5QnV0dG9uVmFyaWFudDogUHJvbXB0QnV0dG9uVmFyaWFudC5EQVJLLFxuICAgICAgc2Vjb25kYXJ5QnV0dG9uVmFyaWFudDogUHJvbXB0QnV0dG9uVmFyaWFudC5MSUdIVCxcbiAgICAgIGltYWdlczogbW9ja0ltYWdlcyxcbiAgICB9LFxuICAgICdzb2NpYWwtcHJvb2YtdGVzdC13aWRnZXQtc2luZ2xlJzoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6ICdzb2NpYWwtcHJvb2YtdGVzdC13aWRnZXQtc2luZ2xlJyxcbiAgICAgIGNvbnRlbnRJZDogJ3NvY2lhbC1wcm9vZi10ZXN0LXdpZGdldC1zaW5nbGUnLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZVYzLlNvY2lhbFByb29mVjMsXG5cbiAgICAgIGltYWdlR2FsbGVyeUxheW91dDogSW1hZ2VHYWxsZXJ5TGF5b3V0LlNJTkdMRSxcbiAgICAgIGtpbmQ6IFdpZGdldEtpbmQuU1RBVElDLFxuICAgICAgdmFyaWFudDogV2lkZ2V0V3JhcHBlclZhcmlhbnQuQ0FSRF9OT19CT1JERVIsXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5UV09fT05fTU9CSUxFX09ORV9PTl9ERVNLVE9QLFxuICAgICAgcHJpbWFyeUJ1dHRvblZhcmlhbnQ6IFByb21wdEJ1dHRvblZhcmlhbnQuREFSSyxcbiAgICAgIHNlY29uZGFyeUJ1dHRvblZhcmlhbnQ6IFByb21wdEJ1dHRvblZhcmlhbnQuTElHSFQsXG4gICAgICBpbWFnZXM6IG1vY2tJbWFnZXMsXG4gICAgfSxcbiAgICAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LWZvdXItaG9yaXpvbnRhbCc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LWZvdXItaG9yaXpvbnRhbCcsXG4gICAgICBjb250ZW50SWQ6ICdzb2NpYWwtcHJvb2YtdGVzdC13aWRnZXQtZm91ci1ob3Jpem9udGFsJyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5Tb2NpYWxQcm9vZlYzLFxuXG4gICAgICBpbWFnZUdhbGxlcnlMYXlvdXQ6IEltYWdlR2FsbGVyeUxheW91dC5GT1VSX0hPUklaT05UQUwsXG4gICAgICBraW5kOiBXaWRnZXRLaW5kLlNUQVRJQyxcbiAgICAgIHZhcmlhbnQ6IFdpZGdldFdyYXBwZXJWYXJpYW50LkNBUkRfV0lUSF9CT1JERVIsXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5UV09fT05fTU9CSUxFX09ORV9PTl9ERVNLVE9QLFxuICAgICAgcHJpbWFyeUJ1dHRvblZhcmlhbnQ6IFByb21wdEJ1dHRvblZhcmlhbnQuREFSSyxcbiAgICAgIHNlY29uZGFyeUJ1dHRvblZhcmlhbnQ6IFByb21wdEJ1dHRvblZhcmlhbnQuTElHSFQsXG4gICAgICBpbWFnZXM6IG1vY2tJbWFnZXMsXG4gICAgfSxcbiAgICAndHlwaW5nLWFuaW1hdGlvbi10ZXN0LWxpZ2h0LXdpZGdldCc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAndHlwaW5nLWFuaW1hdGlvbi10ZXN0LWxpZ2h0LXdpZGdldCcsXG4gICAgICBjb250ZW50SWQ6ICd0eXBpbmctYW5pbWF0aW9uLXRlc3QtbGlnaHQtd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5UeXBpbmdBbmltYXRpb25WMyxcbiAgICAgIHdpZGdldFZhcmlhbnQ6IFdpZGdldFdyYXBwZXJWYXJpYW50LkNBUkRfV0lUSF9CT1JERVIsXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkxJR0hULFxuICAgICAgcHJvbXB0Q2Fyb3VzZWxSb3dzOiBQcm9tcHRDYXJvdXNlbFJvd3MuQUxXQVlTX09ORSxcbiAgICAgIHNob3dUZXh0RmllbGQ6IHRydWUsXG4gICAgfSxcbiAgICAndHlwaW5nLWFuaW1hdGlvbi10ZXN0LWRhcmstd2lkZ2V0Jzoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6ICd0eXBpbmctYW5pbWF0aW9uLXRlc3QtZGFyay13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAndHlwaW5nLWFuaW1hdGlvbi10ZXN0LWRhcmstd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5UeXBpbmdBbmltYXRpb25WMyxcbiAgICAgIHdpZGdldFZhcmlhbnQ6IFdpZGdldFdyYXBwZXJWYXJpYW50LkNBUkRfV0lUSF9CT1JERVIsXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkRBUkssXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5BTFdBWVNfT05FLFxuICAgICAgc2hvd1RleHRGaWVsZDogdHJ1ZSxcbiAgICB9LFxuICAgICdwcm9tcHQtYnV0dG9uLWNhcm91c2VsLXdpdGgtaW1hZ2UtdGVzdC13aWRnZXQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3Byb21wdC1idXR0b24tY2Fyb3VzZWwtd2l0aC1pbWFnZS10ZXN0LXdpZGdldCcsXG4gICAgICBjb250ZW50SWQ6ICdwcm9tcHQtYnV0dG9uLWNhcm91c2VsLXdpdGgtaW1hZ2UtdGVzdC13aWRnZXQnLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZVYzLlByb21wdEJ1dHRvbkNhcm91c2VsV2l0aEltYWdlVjMsXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkxJR0hULFxuICAgICAgaW1hZ2U6IG1vY2tJbWFnZXNbMF0sXG4gICAgICBoaWRlVGV4dEZpZWxkOiBmYWxzZSxcbiAgICB9LFxuICAgICdwcm9kdWN0LWNhcmQtdGVzdC13aWRnZXQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3Byb2R1Y3QtY2FyZC10ZXN0LXdpZGdldCcsXG4gICAgICBjb250ZW50SWQ6ICdwcm9kdWN0LWNhcmQtdGVzdC13aWRnZXQnLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZVYzLlByb2R1Y3RDYXJkVjMsXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkxJR0hULFxuICAgICAgaXRhbGljaXplSGVhZGxpbmU6IGZhbHNlLFxuICAgICAgZmFsbGJhY2tDb2xvcjogJyNGOUY2RUEnLFxuICAgICAgaW1hZ2VTcmM6XG4gICAgICAgICdodHRwczovL3d3dy5iYW5kb2xpZXJzdHlsZS5jb20vY2RuL3Nob3AvZmlsZXMvTGlseTE3X0JsYWNrX0dvbGRfQ2hyb21lX01PRF9EZWMyNV82LmpwZz92PTE3NjU4NDQyNzInLFxuICAgIH0sXG4gICAgJ2Z1bGwtcGFnZS1zYWxlcy1hZ2VudC13aWRnZXQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ2Z1bGwtcGFnZS1zYWxlcy1hZ2VudC13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAnZnVsbC1wYWdlLXNhbGVzLWFnZW50LXdpZGdldCcsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlVjMuRnVsbFBhZ2VTYWxlc0FnZW50VjMsXG4gICAgICBhdXRvSGVpZ2h0OiB0cnVlLFxuICAgIH0sXG4gIH0sXG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQWdCQSxNQUFNLGFBQWE7Q0FDakI7RUFDRSxLQUFLO0VBQ0wsS0FBSztFQUNOO0NBQ0Q7RUFDRSxLQUFLO0VBQ0wsS0FBSztFQUNOO0NBQ0Q7RUFDRSxLQUFLO0VBQ0wsS0FBSztFQUNOO0NBQ0Q7RUFDRSxLQUFLO0VBQ0wsS0FBSztFQUNOO0NBQ0Y7QUFFRCxNQUFhQSxxQkFBK0Q7Q0FDMUUsYUFBYTtDQUNiLGVBQWU7Q0FDZixZQUFZO0NBQ1osVUFBVTtDQUNWLFdBQVc7Q0FDWCxtQkFBbUI7Q0FDbkIscUJBQXFCO0NBQ3JCLG9CQUFvQjtDQUNwQixnQkFBZ0I7Q0FDaEIsaUJBQWlCO0NBQ2pCLGFBQWE7Q0FDYixjQUFjO0NBQ2QsWUFBWTtDQUNaLGVBQWU7Q0FDZixpQkFB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
264
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja1YzQ29uZmlnLmpzIiwibmFtZXMiOlsibW9ja1YzQ29sb3JzQ29uZmlnOiBDYW1lbENhc2VkUHJvcGVydGllc0RlZXA8Q29sb3JNYXBwaW5nVjM+IiwibW9ja1YzRnJvbnRlbmRDb25maWc6IEZyb250ZW5kQ29uZmlnVjMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvZ3JhcGhxbENvbnRleHQvbW9ja1YzQ29uZmlnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYXRIZWFkZXJWYXJpYW50IH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL0NoYXRIZWFkZXInO1xuaW1wb3J0IHsgSW1hZ2VHYWxsZXJ5TGF5b3V0IH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL0ltYWdlR2FsbGVyeSc7XG5pbXBvcnQgeyBQcm9tcHRCdXR0b25WYXJpYW50IH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL1Byb21wdEJ1dHRvbic7XG5pbXBvcnQgeyBBbmltYXRpb25TcGVlZCwgUHJvbXB0Q2Fyb3VzZWxSb3dzIH0gZnJvbSAnQGVudml2ZS1haS9yZWFjdC10b29sa2l0LXYzL1Byb21wdENhcm91c2VsJztcbmltcG9ydCB7IFdpZGdldEtpbmQgfSBmcm9tICdAZW52aXZlLWFpL3JlYWN0LXRvb2xraXQtdjMvU29jaWFsUHJvb2YnO1xuaW1wb3J0IHsgVGhlbWUgfSBmcm9tICdAZW52aXZlLWFpL3JlYWN0LXRvb2xraXQtdjMvVG9rZW5zJztcbmltcG9ydCB7IFNwYXJrbGVJY29uQ29sb3IgfSBmcm9tICdAZW52aXZlLWFpL3JlYWN0LXRvb2xraXQtdjMvV2VsY29tZU1lc3NhZ2UnO1xuaW1wb3J0IHsgV2lkZ2V0V3JhcHBlclZhcmlhbnQgfSBmcm9tICdAZW52aXZlLWFpL3JlYWN0LXRvb2xraXQtdjMvV2lkZ2V0V3JhcHBlcic7XG5pbXBvcnQgeyBDYW1lbENhc2VkUHJvcGVydGllc0RlZXAgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IENvbG9yTWFwcGluZ1YzLCBDb2xvck5hbWVzLCBjb2xvclZhciB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvY29sb3JzQ29uZmlnVjMnO1xuaW1wb3J0IHsgRnJvbnRlbmRDb25maWdWMyB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvZnJvbnRlbmRDb25maWdWMyc7XG5cbmltcG9ydCB7IEZsb2F0aW5nQnV0dG9uTG9jYXRpb24gfSBmcm9tICdAZW52aXZlLWFpL3JlYWN0LXRvb2xraXQtdjMvRmxvYXRpbmdCdXR0b24nO1xuaW1wb3J0IHsgQ3VzdG9tZXJTZXJ2aWNlVHlwZSB9IGZyb20gJ3NyYy90eXBlcy9jdXN0b21lclNlcnZpY2UnO1xuaW1wb3J0IHsgQ29uZmlnVmVyc2lvbkVudW0sIFdpZGdldFR5cGVWMyB9IGZyb20gJy4uL3R5cGVzVjMnO1xuXG5jb25zdCBtb2NrSW1hZ2VzID0gW1xuICB7XG4gICAgc3JjOiAnaHR0cHM6Ly9waWNzdW0ucGhvdG9zLzQwMC82MDAnLFxuICAgIGFsdDogJ0ltYWdlIDEnLFxuICB9LFxuICB7XG4gICAgc3JjOiAnaHR0cHM6Ly9waWNzdW0ucGhvdG9zLzQwMC82MDAnLFxuICAgIGFsdDogJ0ltYWdlIDInLFxuICB9LFxuICB7XG4gICAgc3JjOiAnaHR0cHM6Ly9waWNzdW0ucGhvdG9zLzQwMC82MDAnLFxuICAgIGFsdDogJ0ltYWdlIDMnLFxuICB9LFxuICB7XG4gICAgc3JjOiAnaHR0cHM6Ly9waWNzdW0ucGhvdG9zLzQwMC82MDAnLFxuICAgIGFsdDogJ0ltYWdlIDQnLFxuICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IG1vY2tWM0NvbG9yc0NvbmZpZzogQ2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwPENvbG9yTWFwcGluZ1YzPiA9IHtcbiAgdGV4dFByaW1hcnk6ICcjMDIxNDE0JyxcbiAgdGV4dFNlY29uZGFyeTogJyM2NjY2NjYnLFxuICB0ZXh0QWNjZW50OiAnIzQ3OEQ4NycsXG4gIHRleHRMaW5rOiAnIzA0MkUyQycsXG4gIHRleHRMaWdodDogJyNGRkZGRkYnLFxuICBiYWNrZ3JvdW5kUHJpbWFyeTogJyMxRjVGNTEnLFxuICBiYWNrZ3JvdW5kU2Vjb25kYXJ5OiAnI0Y5RjZFQScsXG4gIGJhY2tncm91bmRUZXJ0aWFyeTogJyNFRUVDREQnLFxuICBiYWNrZ3JvdW5kRGFyazogJyMwMjE0MTQnLFxuICBiYWNrZ3JvdW5kTGlnaHQ6ICcjRkZGRkZGJyxcbiAgYm9yZGVyTGlnaHQ6ICcjRTZFN0U3JyxcbiAgYm9yZGVyTWVkaXVtOiAnI0IzQjhCOCcsXG4gIGJvcmRlckRhcms6ICcjMDIxNDE0JyxcbiAgYWNjZW50UHJpbWFyeTogJyMxRjVGNTEnLFxuICBhY2NlbnRTZWNvbmRhcnk6ICcjQUU4NjU5Jyxcbn07XG5cbmV4cG9ydCBjb25zdCBtb2NrVjNGcm9udGVuZENvbmZpZzogRnJvbnRlbmRDb25maWdWMyA9IHtcbiAgdWlDb25maWdzOiB7XG4gICAgdmVyc2lvbjogQ29uZmlnVmVyc2lvbkVudW0uVjMsXG4gICAgc2hvcnROYW1lOiAnRW52aXZlIEFJJyxcbiAgICBsb29rQW5kRmVlbDoge1xuICAgICAgdGhlbWU6IFRoZW1lLlNUQU5EQVJELFxuICAgICAgYWdlbnROYW1lOiAnRW52aXZlIEFJJyxcbiAgICAgIGNoYXRIZWFkZXJMb2dvRGFya1NyYzogJ2h0dHBzOi8vY2RuLnNwaWZmeS5haS9vdGhlci9hc3NldHMvZW52aXZlLWFpL0Vudml2ZV9Mb2dvX0RLLnN2ZycsXG4gICAgICBjaGF0SGVhZGVyTG9nb0xpZ2h0U3JjOiAnaHR0cHM6Ly9jZG4uc3BpZmZ5LmFpL290aGVyL2Fzc2V0cy9lbnZpdmUtYWkvRW52aXZlX0xvZ29fTHQuc3ZnJyxcbiAgICAgIHdpZGdldExvZ29TcmM6ICdodHRwczovL2Nkbi5zcGlmZnkuYWkvb3RoZXIvYXNzZXRzL2Vudml2ZS1haS9FbnZpdmVfTG9nb19ESy5zdmcnLFxuICAgICAgaGlkZVdpZGdldExvZ286IGZhbHNlLFxuICAgICAgZWxlbWVudFJhZGl1czogOCxcbiAgICAgIGltYWdlQXNwZWN0UmF0aW86ICcxLzEnLFxuICAgICAgYnV0dG9uQ29sb3JzOiB7XG4gICAgICAgIGxpZ2h0QnV0dG9uQmFja2dyb3VuZENvbG9yOiBjb2xvclZhcihDb2xvck5hbWVzLkJhY2tncm91bmRTZWNvbmRhcnkpLFxuICAgICAgICBsaWdodEJ1dHRvbkljb25Db2xvcjogY29sb3JWYXIoQ29sb3JOYW1lcy5BY2NlbnRQcmltYXJ5KSxcbiAgICAgICAgZGFya0J1dHRvbkJhY2tncm91bmRDb2xvcjogY29sb3JWYXIoQ29sb3JOYW1lcy5CYWNrZ3JvdW5kRGFyayksXG4gICAgICAgIGRhcmtCdXR0b25JY29uQ29sb3I6IGNvbG9yVmFyKENvbG9yTmFtZXMuQWNjZW50UHJpbWFyeSksXG4gICAgICB9LFxuICAgICAgdHlwb2dyYXBoeToge1xuICAgICAgICB0aXRsZUZvbnRGYW1pbHk6ICdQb3BwaW5zJyxcbiAgICAgICAgaGVhZGVyRm9udEZhbWlseTogJ1BvcHBpbnMnLFxuICAgICAgICBib2R5Rm9udEZhbWlseTogJ0ludGVyIFZhcmlhYmxlJyxcbiAgICAgICAgZm9udFNpemU6IHtcbiAgICAgICAgICB0MTogJzMycHgnLFxuICAgICAgICAgIHQyOiAnMjhweCcsXG4gICAgICAgICAgdDM6ICcyNHB4JyxcbiAgICAgICAgICBoMTogJzIwcHgnLFxuICAgICAgICAgIGgyOiAnMTZweCcsXG4gICAgICAgICAgaDM6ICcxNHB4JyxcbiAgICAgICAgICBiMTogJzIwcHgnLFxuICAgICAgICAgIGIyOiAnMTZweCcsXG4gICAgICAgICAgYjM6ICcxNHB4JyxcbiAgICAgICAgICBiNDogJzEycHgnLFxuICAgICAgICAgIGI1OiAnMTBweCcsXG4gICAgICAgICAgbDE6ICcxNHB4JyxcbiAgICAgICAgICBsMjogJzEycHgnLFxuICAgICAgICB9LFxuICAgICAgICBmb250V2VpZ2h0OiB7XG4gICAgICAgICAgcmc6ICc0MDAnLFxuICAgICAgICAgIG1kOiAnNTAwJyxcbiAgICAgICAgICBzYjogJzYwMCcsXG4gICAgICAgIH0sXG4gICAgICAgIGxldHRlclNwYWNpbmc6IHtcbiAgICAgICAgICAnMCc6ICcwZW0nLFxuICAgICAgICAgICd3aWRlLTEnOiAnMXB4JyxcbiAgICAgICAgfSxcbiAgICAgICAgbGluZUhlaWdodDoge1xuICAgICAgICAgICcxMjQnOiAxLjI0LFxuICAgICAgICAgICcxMjAnOiAxLjIsXG4gICAgICAgICAgJzExOCc6IDEuMTgsXG4gICAgICAgICAgJzExNic6IDEuMTYsXG4gICAgICAgICAgJzExNCc6IDEuMTQsXG4gICAgICAgICAgJzE0OCc6IDEuNDgsXG4gICAgICAgICAgJzE0MCc6IDEuNCxcbiAgICAgICAgICAnMTI4JzogMS4yOCxcbiAgICAgICAgICAnMTMwJzogMS4zLFxuICAgICAgICAgICcxMzMnOiAxLjMzLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGZsb2F0aW5nQnV0dG9uOiB7XG4gICAgICBwb3NpdGlvbjogRmxvYXRpbmdCdXR0b25Mb2NhdGlvbi5CT1RUT01fUklHSFQsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IENvbG9yTmFtZXMuQmFja2dyb3VuZFByaW1hcnksXG4gICAgICBtb2RlOiAnZGFyaycsXG4gICAgICBzaG93T3B0aW9uOiAnYWx3YXlzJyxcbiAgICAgIHN0eWxlOiAnYXR0YWNoZWQnLFxuICAgICAgaWNvblNWR1NyYzogJycsXG4gICAgfSxcbiAgICBmbG9hdGluZ0NoYXQ6IHtcbiAgICAgIGhlYWRlckJhY2tncm91bmRDb2xvcjogQ29sb3JOYW1lcy5CYWNrZ3JvdW5kUHJpbWFyeSxcbiAgICAgIGhlYWRlck1vZGU6IENoYXRIZWFkZXJWYXJpYW50LkRBUkssXG4gICAgICB3ZWxjb21lTWVzc2FnZUljb25Db2xvcjogU3BhcmtsZUljb25Db2xvci5BQ0NFTlRfUFJJTUFSWSxcbiAgICAgIHNob3dWZXJpZmllZEJ1eWVyOiB0cnVlLFxuICAgICAgdXNlclF1ZXJ5SW5wdXRFbmFibGVkOiB0cnVlLFxuICAgICAgc2hvd0Vudml2ZUxvZ286IHRydWUsXG4gICAgICBpZ25vcmVGaXJzdE1vZGVsUmVzcG9uc2U6IGZhbHNlLFxuICAgICAgbmV2ZXJTaG93U2luZ2xlUHJvZHVjdENhcmRzOiBmYWxzZSxcbiAgICAgIHdlbGNvbWVNZXNzYWdlVGl0bGU6ICdXZWxjb21lIHRvIEVudml2ZSBBSScsXG4gICAgICB3ZWxjb21lTWVzc2FnZVRleHQ6XG4gICAgICAgICdZb3VyIHBlcnNvbmFsIHNob3BwZXIgdHJhaW5lZCBvbiB0aGUgY29sbGVjdGl2ZSBrbm93bGVkZ2Ugb2YgdGhvdXNhbmRzIG9mIHJlYWwgZXhwZXJ0cyEnLFxuICAgICAgY2hhdEZvb3RlclRleHRGaWVsZFBsYWNlaG9sZGVyVGV4dDogJ0FzayBtZSBhbnl0aGluZy4uLicsXG4gICAgICBwYXJ0aWFsVmlld0NvbmZpZzoge1xuICAgICAgICBkaXNhYmxlZDogdHJ1ZSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBjdXN0b21lclNlcnZpY2VJbnRlZ3JhdGlvbjoge1xuICAgICAgcHJvdmlkZXI6IEN1c3RvbWVyU2VydmljZVR5cGUudW5zdXBwb3J0ZWQsXG4gICAgICBlbmFibGVkOiBmYWxzZSxcbiAgICAgIHN1cHByZXNzTWVyY2hhbnRCdXR0b246IGZhbHNlLFxuICAgIH0sXG4gICAgc2luZ2xlUGFnZUFwcGxpY2F0aW9uU2V0dGluZ3M6IHtcbiAgICAgIGVuYWJsZWQ6IGZhbHNlLFxuICAgICAgcmVmcmVzaEludGVydmFsOiAxMDAwLFxuICAgIH0sXG4gIH0sXG4gIHBhZ2VWYXJpYW50czogW10sXG4gIG1vdW50aW5nQ29uZmlnczoge30sXG4gIHdpZGdldENvbmZpZ3M6IHtcbiAgICAncHJvbXB0LWNhcm91c2VsLXRlc3QtbGlnaHQtd2lkZ2V0Jzoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6ICdwcm9tcHQtY2Fyb3VzZWwtdGVzdC1saWdodC13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAncHJvbXB0LWNhcm91c2VsLXRlc3QtbGlnaHQtd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5Qcm9tcHRDYXJvdXNlbFYzLFxuXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkxJR0hULFxuICAgICAgYm9sZEZpcnN0QnV0dG9uOiBmYWxzZSxcbiAgICAgIHByb21wdENhcm91c2VsUm93czogUHJvbXB0Q2Fyb3VzZWxSb3dzLkFMV0FZU19PTkUsXG4gICAgICBhbmltYXRpb25TcGVlZDogQW5pbWF0aW9uU3BlZWQuRkFTVCxcbiAgICB9LFxuICAgICdwcm9tcHQtY2Fyb3VzZWwtdGVzdC1kYXJrLXdpZGdldCc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAncHJvbXB0LWNhcm91c2VsLXRlc3QtZGFyay13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAncHJvbXB0LWNhcm91c2VsLXRlc3QtZGFyay13aWRnZXQnLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZVYzLlByb21wdENhcm91c2VsVjMsXG5cbiAgICAgIHByb21wdEJ1dHRvblR5cGU6IFByb21wdEJ1dHRvblZhcmlhbnQuREFSSyxcbiAgICAgIGJvbGRGaXJzdEJ1dHRvbjogZmFsc2UsXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5BTFdBWVNfT05FLFxuICAgICAgYW5pbWF0aW9uU3BlZWQ6IEFuaW1hdGlvblNwZWVkLkZBU1QsXG4gICAgfSxcbiAgICAndGl0bGVkLXByb21wdC1jYXJvdXNlbC10ZXN0LWxpZ2h0LXdpZGdldCc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAndGl0bGVkLXByb21wdC1jYXJvdXNlbC10ZXN0LWxpZ2h0LXdpZGdldCcsXG4gICAgICBjb250ZW50SWQ6ICd0aXRsZWQtcHJvbXB0LWNhcm91c2VsLXRlc3QtbGlnaHQtd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5UaXRsZWRQcm9tcHRDYXJvdXNlbFYzLFxuXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkxJR0hULFxuICAgICAgYm9sZEZpcnN0QnV0dG9uOiBmYWxzZSxcbiAgICAgIHByb21wdENhcm91c2VsUm93czogUHJvbXB0Q2Fyb3VzZWxSb3dzLkFMV0FZU19PTkUsXG4gICAgICBhbmltYXRpb25TcGVlZDogQW5pbWF0aW9uU3BlZWQuRkFTVCxcbiAgICB9LFxuICAgICd0aXRsZWQtcHJvbXB0LWNhcm91c2VsLXRlc3QtZGFyay13aWRnZXQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3RpdGxlZC1wcm9tcHQtY2Fyb3VzZWwtdGVzdC1kYXJrLXdpZGdldCcsXG4gICAgICBjb250ZW50SWQ6ICd0aXRsZWQtcHJvbXB0LWNhcm91c2VsLXRlc3QtZGFyay13aWRnZXQnLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZVYzLlRpdGxlZFByb21wdENhcm91c2VsVjMsXG5cbiAgICAgIHByb21wdEJ1dHRvblR5cGU6IFByb21wdEJ1dHRvblZhcmlhbnQuREFSSyxcbiAgICAgIGJvbGRGaXJzdEJ1dHRvbjogZmFsc2UsXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5BTFdBWVNfT05FLFxuICAgICAgYW5pbWF0aW9uU3BlZWQ6IEFuaW1hdGlvblNwZWVkLkZBU1QsXG4gICAgfSxcbiAgICAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LWZvdXItZ3JpZCc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LWZvdXItZ3JpZCcsXG4gICAgICBjb250ZW50SWQ6ICdzb2NpYWwtcHJvb2YtdGVzdC13aWRnZXQtZm91ci1ncmlkJyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5Tb2NpYWxQcm9vZlYzLFxuXG4gICAgICBpbWFnZUdhbGxlcnlMYXlvdXQ6IEltYWdlR2FsbGVyeUxheW91dC5GT1VSX0dSSUQsXG4gICAgICBraW5kOiBXaWRnZXRLaW5kLlNUQVRJQyxcbiAgICAgIHZhcmlhbnQ6IFdpZGdldFdyYXBwZXJWYXJpYW50LklOTElORV9XSVRIX0JPUkRFUixcbiAgICAgIHByb21wdENhcm91c2VsUm93czogUHJvbXB0Q2Fyb3VzZWxSb3dzLlRXT19PTl9NT0JJTEVfT05FX09OX0RFU0tUT1AsXG4gICAgICBwcmltYXJ5QnV0dG9uVmFyaWFudDogUHJvbXB0QnV0dG9uVmFyaWFudC5EQVJLLFxuICAgICAgc2Vjb25kYXJ5QnV0dG9uVmFyaWFudDogUHJvbXB0QnV0dG9uVmFyaWFudC5MSUdIVCxcbiAgICAgIGltYWdlczogbW9ja0ltYWdlcyxcbiAgICB9LFxuICAgICdzb2NpYWwtcHJvb2YtdGVzdC13aWRnZXQtc2luZ2xlJzoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6ICdzb2NpYWwtcHJvb2YtdGVzdC13aWRnZXQtc2luZ2xlJyxcbiAgICAgIGNvbnRlbnRJZDogJ3NvY2lhbC1wcm9vZi10ZXN0LXdpZGdldC1zaW5nbGUnLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZVYzLlNvY2lhbFByb29mVjMsXG5cbiAgICAgIGltYWdlR2FsbGVyeUxheW91dDogSW1hZ2VHYWxsZXJ5TGF5b3V0LlNJTkdMRSxcbiAgICAgIGtpbmQ6IFdpZGdldEtpbmQuU1RBVElDLFxuICAgICAgdmFyaWFudDogV2lkZ2V0V3JhcHBlclZhcmlhbnQuQ0FSRF9OT19CT1JERVIsXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5UV09fT05fTU9CSUxFX09ORV9PTl9ERVNLVE9QLFxuICAgICAgcHJpbWFyeUJ1dHRvblZhcmlhbnQ6IFByb21wdEJ1dHRvblZhcmlhbnQuREFSSyxcbiAgICAgIHNlY29uZGFyeUJ1dHRvblZhcmlhbnQ6IFByb21wdEJ1dHRvblZhcmlhbnQuTElHSFQsXG4gICAgICBpbWFnZXM6IG1vY2tJbWFnZXMsXG4gICAgfSxcbiAgICAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LWZvdXItaG9yaXpvbnRhbCc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAnc29jaWFsLXByb29mLXRlc3Qtd2lkZ2V0LWZvdXItaG9yaXpvbnRhbCcsXG4gICAgICBjb250ZW50SWQ6ICdzb2NpYWwtcHJvb2YtdGVzdC13aWRnZXQtZm91ci1ob3Jpem9udGFsJyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5Tb2NpYWxQcm9vZlYzLFxuXG4gICAgICBpbWFnZUdhbGxlcnlMYXlvdXQ6IEltYWdlR2FsbGVyeUxheW91dC5GT1VSX0hPUklaT05UQUwsXG4gICAgICBraW5kOiBXaWRnZXRLaW5kLlNUQVRJQyxcbiAgICAgIHZhcmlhbnQ6IFdpZGdldFdyYXBwZXJWYXJpYW50LkNBUkRfV0lUSF9CT1JERVIsXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5UV09fT05fTU9CSUxFX09ORV9PTl9ERVNLVE9QLFxuICAgICAgcHJpbWFyeUJ1dHRvblZhcmlhbnQ6IFByb21wdEJ1dHRvblZhcmlhbnQuREFSSyxcbiAgICAgIHNlY29uZGFyeUJ1dHRvblZhcmlhbnQ6IFByb21wdEJ1dHRvblZhcmlhbnQuTElHSFQsXG4gICAgICBpbWFnZXM6IG1vY2tJbWFnZXMsXG4gICAgfSxcbiAgICAndHlwaW5nLWFuaW1hdGlvbi10ZXN0LWxpZ2h0LXdpZGdldCc6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiAndHlwaW5nLWFuaW1hdGlvbi10ZXN0LWxpZ2h0LXdpZGdldCcsXG4gICAgICBjb250ZW50SWQ6ICd0eXBpbmctYW5pbWF0aW9uLXRlc3QtbGlnaHQtd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5UeXBpbmdBbmltYXRpb25WMyxcbiAgICAgIHdpZGdldFZhcmlhbnQ6IFdpZGdldFdyYXBwZXJWYXJpYW50LkNBUkRfV0lUSF9CT1JERVIsXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkxJR0hULFxuICAgICAgcHJvbXB0Q2Fyb3VzZWxSb3dzOiBQcm9tcHRDYXJvdXNlbFJvd3MuQUxXQVlTX09ORSxcbiAgICAgIHNob3dUZXh0RmllbGQ6IHRydWUsXG4gICAgfSxcbiAgICAndHlwaW5nLWFuaW1hdGlvbi10ZXN0LWRhcmstd2lkZ2V0Jzoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6ICd0eXBpbmctYW5pbWF0aW9uLXRlc3QtZGFyay13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAndHlwaW5nLWFuaW1hdGlvbi10ZXN0LWRhcmstd2lkZ2V0JyxcbiAgICAgIHR5cGU6IFdpZGdldFR5cGVWMy5UeXBpbmdBbmltYXRpb25WMyxcbiAgICAgIHdpZGdldFZhcmlhbnQ6IFdpZGdldFdyYXBwZXJWYXJpYW50LkNBUkRfV0lUSF9CT1JERVIsXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkRBUkssXG4gICAgICBwcm9tcHRDYXJvdXNlbFJvd3M6IFByb21wdENhcm91c2VsUm93cy5BTFdBWVNfT05FLFxuICAgICAgc2hvd1RleHRGaWVsZDogdHJ1ZSxcbiAgICB9LFxuICAgICdwcm9tcHQtYnV0dG9uLWNhcm91c2VsLXdpdGgtaW1hZ2UtdGVzdC13aWRnZXQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3Byb21wdC1idXR0b24tY2Fyb3VzZWwtd2l0aC1pbWFnZS10ZXN0LXdpZGdldCcsXG4gICAgICBjb250ZW50SWQ6ICdwcm9tcHQtYnV0dG9uLWNhcm91c2VsLXdpdGgtaW1hZ2UtdGVzdC13aWRnZXQnLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZVYzLlByb21wdEJ1dHRvbkNhcm91c2VsV2l0aEltYWdlVjMsXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkxJR0hULFxuICAgICAgaW1hZ2U6IG1vY2tJbWFnZXNbMF0sXG4gICAgICBoaWRlVGV4dEZpZWxkOiBmYWxzZSxcbiAgICB9LFxuICAgICdwcm9kdWN0LWNhcmQtdGVzdC13aWRnZXQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ3Byb2R1Y3QtY2FyZC10ZXN0LXdpZGdldCcsXG4gICAgICBjb250ZW50SWQ6ICdwcm9kdWN0LWNhcmQtdGVzdC13aWRnZXQnLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZVYzLlByb2R1Y3RDYXJkVjMsXG4gICAgICBwcm9tcHRCdXR0b25UeXBlOiBQcm9tcHRCdXR0b25WYXJpYW50LkxJR0hULFxuICAgICAgaXRhbGljaXplSGVhZGxpbmU6IGZhbHNlLFxuICAgICAgZmFsbGJhY2tDb2xvcjogJyNGOUY2RUEnLFxuICAgICAgaW1hZ2VTcmM6XG4gICAgICAgICdodHRwczovL3d3dy5iYW5kb2xpZXJzdHlsZS5jb20vY2RuL3Nob3AvZmlsZXMvTGlseTE3X0JsYWNrX0dvbGRfQ2hyb21lX01PRF9EZWMyNV82LmpwZz92PTE3NjU4NDQyNzInLFxuICAgIH0sXG4gICAgJ2Z1bGwtcGFnZS1zYWxlcy1hZ2VudC13aWRnZXQnOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogJ2Z1bGwtcGFnZS1zYWxlcy1hZ2VudC13aWRnZXQnLFxuICAgICAgY29udGVudElkOiAnZnVsbC1wYWdlLXNhbGVzLWFnZW50LXdpZGdldCcsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlVjMuRnVsbFBhZ2VTYWxlc0FnZW50VjMsXG4gICAgICBhdXRvSGVpZ2h0OiB0cnVlLFxuICAgIH0sXG4gIH0sXG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQWdCQSxNQUFNLGFBQWE7Q0FDakI7RUFDRSxLQUFLO0VBQ0wsS0FBSztFQUNOO0NBQ0Q7RUFDRSxLQUFLO0VBQ0wsS0FBSztFQUNOO0NBQ0Q7RUFDRSxLQUFLO0VBQ0wsS0FBSztFQUNOO0NBQ0Q7RUFDRSxLQUFLO0VBQ0wsS0FBSztFQUNOO0NBQ0Y7QUFFRCxNQUFhQSxxQkFBK0Q7Q0FDMUUsYUFBYTtDQUNiLGVBQWU7Q0FDZixZQUFZO0NBQ1osVUFBVTtDQUNWLFdBQVc7Q0FDWCxtQkFBbUI7Q0FDbkIscUJBQXFCO0NBQ3JCLG9CQUFvQjtDQUNwQixnQkFBZ0I7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
@@ -1,16 +1,19 @@
1
1
  const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
2
2
  const require_logger = require('../../application/logging/logger.cjs');
3
+ const require_urlsParser = require('../../application/utils/urlsParser.cjs');
3
4
  const require_snakeToCamelTransformer = require('../../application/models/utils/snakeToCamelTransformer.cjs');
5
+ const require_contexts_typesV3 = require('../typesV3.cjs');
6
+ const require_eventNames = require('../../services/amplitudeService/eventNames.cjs');
7
+ require('../../services/amplitudeService/amplitudeService.cjs');
8
+ require('../../application/utils/index.cjs');
4
9
  const require_atoms_app_index = require('../../atoms/app/index.cjs');
10
+ const require_application_commerce_api = require('../../application/commerce-api.cjs');
5
11
  const require_featureFlagServiceContext = require('../featureFlagServiceContext/featureFlagServiceContext.cjs');
6
- const require_contexts_typesV3 = require('../typesV3.cjs');
7
- const require_amplitudeService = require('../../services/amplitudeService/amplitudeService.cjs');
8
12
  const require_amplitudeContext = require('../amplitudeContext/amplitudeContext.cjs');
9
- const require_application_commerce_api = require('../../application/commerce-api.cjs');
10
13
  require('../amplitudeContext/index.cjs');
11
14
  let react = require("react");
12
- let jotai = require("jotai");
13
15
  let react_jsx_runtime = require("react/jsx-runtime");
16
+ let jotai = require("jotai");
14
17
  let uuid = require("uuid");
15
18
 
16
19
  //#region src/contexts/hardcopyContext/hardcopyContext.tsx
@@ -168,23 +171,29 @@ const MOCK_HARDCOPY_RESPONSE = {
168
171
  }
169
172
  };
170
173
  const HardcopyContext = (0, react.createContext)(void 0);
171
- const HardcopyProvider = ({ children }) => {
174
+ const HardcopyProvider = ({ children, hardcopyOverride }) => {
172
175
  const languages = (0, react.useMemo)(() => navigator.languages, []);
173
176
  const [isLoading, setIsLoading] = (0, react.useState)(false);
174
177
  const context = (0, jotai.useAtomValue)(require_atoms_app_index.appDetailsAtom);
175
178
  const { trackEvent } = require_amplitudeContext.useAmplitude();
176
179
  const { featureFlagService } = require_featureFlagServiceContext.useFeatureFlagService();
177
180
  const getHardcopyFromBackend = (0, react.useCallback)(async (request) => {
181
+ if (hardcopyOverride?.[request.widgetType]) {
182
+ require_logger.default.logInfo("hardcopyContext | using hardcopy override", request.widgetType);
183
+ return hardcopyOverride[request.widgetType];
184
+ }
185
+ const overrideConfigVersion = require_urlsParser.getQueryParam("spiffy_config_version") || require_urlsParser.getQueryParam("envive_config_version") || void 0;
178
186
  const widgetTextRequest = {
179
187
  requestId: (0, uuid.v4)(),
180
188
  widgetType: request.widgetType,
181
189
  context,
182
190
  featureFlags: featureFlagService?.getFeatureFlags() || {},
183
191
  language: languages[0] || "en",
192
+ overrideConfigVersion,
184
193
  url: window.location.href
185
194
  };
186
195
  trackEvent({
187
- eventName: require_amplitudeService.EnviveMetricsEventName.WidgetTextRequest,
196
+ eventName: require_eventNames.EnviveMetricsEventName.WidgetTextRequest,
188
197
  eventProps: {
189
198
  widget_type: request.widgetType,
190
199
  request_id: widgetTextRequest.requestId
@@ -196,7 +205,7 @@ const HardcopyProvider = ({ children }) => {
196
205
  const convertedResponse = convertToHardcopyResponse(response);
197
206
  require_logger.default.logInfo("hardcopyContext | converted response", convertedResponse);
198
207
  trackEvent({
199
- eventName: require_amplitudeService.EnviveMetricsEventName.WidgetTextResponse,
208
+ eventName: require_eventNames.EnviveMetricsEventName.WidgetTextResponse,
200
209
  eventProps: {
201
210
  widget_type: request.widgetType,
202
211
  response_id: response.responseId,
@@ -218,6 +227,7 @@ const HardcopyProvider = ({ children }) => {
218
227
  }, [
219
228
  context,
220
229
  featureFlagService,
230
+ hardcopyOverride,
221
231
  languages,
222
232
  trackEvent
223
233
  ]);
@@ -252,4 +262,4 @@ const useHardcopy = () => {
252
262
  //#endregion
253
263
  exports.HardcopyProvider = HardcopyProvider;
254
264
  exports.useHardcopy = useHardcopy;
255
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFyZGNvcHlDb250ZXh0LmNqcyIsIm5hbWVzIjpbInRvQ2FtZWxDYXNlIiwiTU9DS19IQVJEQ09QWV9SRVNQT05TRTogUGFydGlhbDxSZWNvcmQ8V2lkZ2V0VHlwZVYzLCBIYXJkY29weVJlc3BvbnNlPj4iLCJXaWRnZXRUeXBlVjMiLCJIYXJkY29weVByb3ZpZGVyOiBSZWFjdC5GQzx7IGNoaWxkcmVuOiBSZWFjdE5vZGUgfT4iLCJhcHBEZXRhaWxzQXRvbSIsInVzZUFtcGxpdHVkZSIsInVzZUZlYXR1cmVGbGFnU2VydmljZSIsIndpZGdldFRleHRSZXF1ZXN0OiBXaWRnZXRUZXh0UmVxdWVzdCIsIkVudml2ZU1ldHJpY3NFdmVudE5hbWUiLCJDb21tZXJjZUFwaUNsaWVudCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0cy9oYXJkY29weUNvbnRleHQvaGFyZGNvcHlDb250ZXh0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWFjdE5vZGUsIGNyZWF0ZUNvbnRleHQsIHVzZUNhbGxiYWNrLCB1c2VDb250ZXh0LCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBMb2dnZXIgZnJvbSAnc3JjL2FwcGxpY2F0aW9uL2xvZ2dpbmcvbG9nZ2VyJztcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJztcbmltcG9ydCBDb21tZXJjZUFwaUNsaWVudCBmcm9tICdzcmMvYXBwbGljYXRpb24vY29tbWVyY2UtYXBpJztcbmltcG9ydCB7IFdpZGdldFN0cmluZywgV2lkZ2V0VGV4dCB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvYXBpL3dpZGdldFRleHQnO1xuaW1wb3J0IHsgV2lkZ2V0VGV4dFJlcXVlc3QgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2FwaS93aWRnZXRUZXh0UmVxdWVzdCc7XG5cbmltcG9ydCB7IHVzZUF0b21WYWx1ZSB9IGZyb20gJ2pvdGFpJztcbmltcG9ydCB7IGFwcERldGFpbHNBdG9tIH0gZnJvbSAnc3JjL2F0b21zL2FwcCc7XG5pbXBvcnQgeyBFbnZpdmVNZXRyaWNzRXZlbnROYW1lIH0gZnJvbSAnc3JjL3NlcnZpY2VzL2FtcGxpdHVkZVNlcnZpY2UvYW1wbGl0dWRlU2VydmljZSc7XG5pbXBvcnQgeyB0b0NhbWVsQ2FzZSB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvdXRpbHMvc25ha2VUb0NhbWVsVHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgVXNlckV2ZW50IH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscyc7XG5pbXBvcnQgeyBXaWRnZXRUeXBlVjMgfSBmcm9tICcuLi90eXBlc1YzJztcbmltcG9ydCB7IHVzZUZlYXR1cmVGbGFnU2VydmljZSB9IGZyb20gJy4uL2ZlYXR1cmVGbGFnU2VydmljZUNvbnRleHQvZmVhdHVyZUZsYWdTZXJ2aWNlQ29udGV4dCc7XG5pbXBvcnQgeyB1c2VBbXBsaXR1ZGUgfSBmcm9tICcuLi9hbXBsaXR1ZGVDb250ZXh0JztcblxuaW50ZXJmYWNlIEhhcmRjb3B5UmVxdWVzdCB7XG4gIHdpZGdldFR5cGU6IFdpZGdldFR5cGVWMztcbiAgdXNlckV2ZW50OiBVc2VyRXZlbnQ7XG59XG5cbmV4cG9ydCB0eXBlIEhhcmRjb3B5UmVzcG9uc2UgPSB7XG4gIHJlc3BvbnNlSWQ6IHN0cmluZztcbiAgbGFuZ3VhZ2U6IHN0cmluZztcbiAgcmF3VmFsdWVzPzogUmVjb3JkPHN0cmluZywgV2lkZ2V0U3RyaW5nIHwgV2lkZ2V0U3RyaW5nW10+O1xuICB2YWx1ZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IHN0cmluZ1tdPjtcbn07XG5cbmludGVyZmFjZSBIYXJkY29weUNvbnRleHRUeXBlIHtcbiAgZ2V0SGFyZGNvcHk6IChIYXJkY29weVJlcXVlc3Q6IEhhcmRjb3B5UmVxdWVzdCkgPT4gUHJvbWlzZTxIYXJkY29weVJlc3BvbnNlPjtcbiAgaXNMb2FkaW5nOiBib29sZWFuO1xufVxuXG5jb25zdCBjb252ZXJ0VG9IYXJkY29weVJlc3BvbnNlID0gKHJlc3BvbnNlOiBXaWRnZXRUZXh0KTogSGFyZGNvcHlSZXNwb25zZSA9PiB7XG4gIHJldHVybiB7XG4gICAgcmVzcG9uc2VJZDogcmVzcG9uc2UucmVzcG9uc2VJZCxcbiAgICBsYW5ndWFnZTogcmVzcG9uc2UubGFuZ3VhZ2UsXG4gICAgcmF3VmFsdWVzOiByZXNwb25zZS52YWx1ZXMsXG4gICAgdmFsdWVzOiBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgICBPYmplY3QuZW50cmllcyhyZXNwb25zZS52YWx1ZXMpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBbXG4gICAgICAgIC8vIFRyYW5zZm9ybSB0aGUga2V5IGZyb20gc25ha2VfY2FzZSB0byBjYW1lbENhc2VcbiAgICAgICAgdG9DYW1lbENhc2Uoa2V5KSxcbiAgICAgICAgdmFsdWUubGVuZ3RoID09PSAxID8gdmFsdWVbMF0udmFsdWUgOiB2YWx1ZS5tYXAodiA9PiB2LnZhbHVlKSxcbiAgICAgIF0pLFxuICAgICksXG4gIH07XG59O1xuXG4vLyBUaGVzZSBhcmUganVzdCBzYW1wbGUgcmVzcG9uc2VzIGZvciB0aGUgc2FrZSBvZiB0ZXN0aW5nLlxuLy8gQXMgd2Ugc3RhcnQgdG8gYnVpbGQgdGhlIGFjdHVhbCB3aWRnZXRzIHdlIHNob3VsZCBkZXRlcm1pbmUgd2hhdCB0aGUgYWN0dWFsXG4vLyB2YWx1ZXMgYW5kIHRoZWlyIG5hbWVzIHNob3VsZCBiZS5cbmNvbnN0IE1PQ0tfSEFSRENPUFlfUkVTUE9OU0U6IFBhcnRpYWw8UmVjb3JkPFdpZGdldFR5cGVWMywgSGFyZGNvcHlSZXNwb25zZT4+ID0ge1xuICBbV2lkZ2V0VHlwZVYzLlByb21wdENhcm91c2VsVjNdOiB7XG4gICAgcmVzcG9uc2VJZDogdXVpZCgpLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgcHJvbXB0QnV0dG9uVGV4dHM6IFtcbiAgICAgICAgJ1doYXQgYXJlIHlvdXIgYmVzdCBzZWxsZXJzPycsXG4gICAgICAgICdTaG93IG1lIHN1bW1lciBkcmVzc2VzJyxcbiAgICAgICAgJ0RvIHlvdSBoYXZlIGZyZWUgc2hpcHBpbmc/JyxcbiAgICAgICAgJ1doYXQgc2l6ZXMgYXJlIGF2YWlsYWJsZT8nLFxuICAgICAgICAnQ2FuIEkgcmV0dXJuIGl0ZW1zPycsXG4gICAgICBdLFxuICAgIH0sXG4gIH0sXG4gIFtXaWRnZXRUeXBlVjMuVGl0bGVkUHJvbXB0Q2Fyb3VzZWxWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB0aXRsZUxhYmVsOiAnTmVlZCBzb21lIGhlbHA/JyxcbiAgICAgIHByb21wdEJ1dHRvblRleHRzOiBbXG4gICAgICAgICdXaGF0IGFyZSB5b3VyIGJlc3Qgc2VsbGVycz8nLFxuICAgICAgICAnU2hvdyBtZSBzdW1tZXIgZHJlc3NlcycsXG4gICAgICAgICdEbyB5b3UgaGF2ZSBmcmVlIHNoaXBwaW5nPycsXG4gICAgICAgICdXaGF0IHNpemVzIGFyZSBhdmFpbGFibGU/JyxcbiAgICAgICAgJ0NhbiBJIHJldHVybiBpdGVtcz8nLFxuICAgICAgXSxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLlNvY2lhbFByb29mVjNdOiB7XG4gICAgcmVzcG9uc2VJZDogJ21vY2stcmVzcG9uc2UtaWQnLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgdGl0bGVMYWJlbDogJ1Nob3BwaW5nIEFzc2lzdGFudCcsXG4gICAgICBudW1iZXJPZkN1c3RvbWVyc1RleHQ6ICcxMjMgY3VzdG9tZXJzJyxcbiAgICAgIGN1c3RvbWVyUXVlcnlUZXh0OiAnZm91bmQgd2hhdCB0aGV5IHdlcmUgbG9va2luZyBmb3IuLi4nLFxuICAgICAgcHJpbWFyeUJ1dHRvblRleHQ6ICdTdGFydCBzaG9wcGluZycsXG4gICAgICBzZWNvbmRhcnlCdXR0b25UaXRsZVRleHQ6ICdQb3B1bGFyIHNlYXJjaGVzJyxcbiAgICAgIHNlY29uZGFyeUJ1dHRvblRleHRzOiBbXG4gICAgICAgICdXaHkgc2hvdWxkIEkgYnV5IGZyb20geW91PycsXG4gICAgICAgICdIb3cgZG8gSSByZXR1cm4gYW4gaXRlbT8nLFxuICAgICAgICAnTmV3IGFycml2YWxzJyxcbiAgICAgICAgJ1NhbGUgaXRlbXMnLFxuICAgICAgICAnUG9wdWxhciBpdGVtcycsXG4gICAgICBdLFxuICAgICAgdGV4dEZpZWxkUGxhY2Vob2xkZXJUZXh0OiAnQXNrIG1lIGFueXRoaW5nLi4uJyxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLlR5cGluZ0FuaW1hdGlvblYzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHRpdGxlTGFiZWw6ICdTaG9wcGluZyBBc3Npc3RhbnQnLFxuICAgICAgaGVhZGxpbmVUZXh0OiAnTmVlZCBoZWxwIGZpbmRpbmcnLFxuICAgICAgYW5pbWF0ZWRUZXh0U2VxdWVuY2U6IFtcbiAgICAgICAgJ3RoZSBwZXJmZWN0IGdpZnQgZm9yIHlvdXIgbG92ZWQgb25lcz8nLFxuICAgICAgICAnc29tZXRoaW5nIHNwZWNpYWwgZm9yIHRoZSBob2xpZGF5cz8nLFxuICAgICAgICAndGhlIGlkZWFsIHByZXNlbnQgZm9yIHNvbWVvbmUgc3BlY2lhbD8nLFxuICAgICAgXSxcbiAgICAgIGhpbnRUZXh0OiAnQXNrIG1lIGFueXRoaW5nJyxcbiAgICAgIHByb21wdEJ1dHRvblRleHRzOiBbXG4gICAgICAgICdXaGF0IGFyZSB5b3VyIGJlc3Qgc2VsbGVycz8nLFxuICAgICAgICAnU2hvdyBtZSBzdW1tZXIgZHJlc3NlcycsXG4gICAgICAgICdEbyB5b3UgaGF2ZSBmcmVlIHNoaXBwaW5nPycsXG4gICAgICAgICdXaGF0IHNpemVzIGFyZSBhdmFpbGFibGU/JyxcbiAgICAgIF0sXG4gICAgICB0ZXh0RmllbGRBcmlhTGFiZWw6ICdBc2sgbWUgYW55dGhpbmcnLFxuICAgIH0sXG4gIH0sXG4gIFtXaWRnZXRUeXBlVjMuQ2hhdFByZXZpZXdDb21wYXJpc29uVjNdOiB7XG4gICAgcmVzcG9uc2VJZDogJ21vY2stcmVzcG9uc2UtaWQnLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgdGl0bGVMYWJlbDogJ1Nob3BwaW5nIEFzc2lzdGFudCcsXG4gICAgICBoZWFkbGluZVRleHQ6ICdOZWVkIGhlbHAgY29tcGFyaW5nPycsXG4gICAgICB0ZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgIH0sXG4gIH0sXG4gIFtXaWRnZXRUeXBlVjMuQ2hhdFByZXZpZXdMb2FkaW5nVjNdOiB7XG4gICAgcmVzcG9uc2VJZDogJ21vY2stcmVzcG9uc2UtaWQnLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgdGl0bGVMYWJlbDogJ1Nob3BwaW5nIEFzc2lzdGFudCcsXG4gICAgICB0ZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgIH0sXG4gIH0sXG4gIFtXaWRnZXRUeXBlVjMuQ2hhdFByZXZpZXdWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB0aXRsZUxhYmVsOiAnU2hvcHBpbmcgQXNzaXN0YW50JyxcbiAgICAgIHRleHRGaWVsZFBsYWNlaG9sZGVyVGV4dDogJ0FzayBtZSBhbnl0aGluZy4uLicsXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5Qcm9tcHRCdXR0b25DYXJvdXNlbFdpdGhJbWFnZVYzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHRpdGxlTGFiZWw6ICdOZWVkIHNvbWUgaGVscD8nLFxuICAgICAgcHJvbXB0QnV0dG9uc1RleHRzOiBbJ0hlbHAgbWUgZmluZCBhIHByb2R1Y3QnLCBcIldoYXQncyBvbiB5b3VyIG1pbmQ/XCIsICdUYWxrIHRvIGEgaHVtYW4nXSxcbiAgICAgIHRleHRGaWVsZFBsYWNlaG9sZGVyVGV4dDogJ0FzayBtZSBhbnl0aGluZy4uLicsXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5Qcm9kdWN0Q2FyZFYzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIGhlYWRsaW5lOiAnRGlzY292ZXIgWW91ciBQZXJmZWN0IFN0eWxlJyxcbiAgICAgIGFuaW1hdGVkVGV4dDogW1xuICAgICAgICAndGhlIHBlcmZlY3Qgb3V0Zml0IGZvciBhbnkgb2NjYXNpb24nLFxuICAgICAgICAndHJlbmRpbmcgZmFzaGlvbiB0aGF0IGZpdHMgeW91ciBsaWZlc3R5bGUnLFxuICAgICAgICAncXVhbGl0eSBwaWVjZXMgdGhhdCBsYXN0JyxcbiAgICAgIF0sXG4gICAgICBwcm9tcHRzOiBbXG4gICAgICAgICdXaGF0IGFyZSB5b3VyIGJlc3Qgc2VsbGVycz8nLFxuICAgICAgICAnU2hvdyBtZSBzdW1tZXIgZHJlc3NlcycsXG4gICAgICAgICdEbyB5b3UgaGF2ZSBmcmVlIHNoaXBwaW5nPycsXG4gICAgICAgICdXaGF0IHNpemVzIGFyZSBhdmFpbGFibGU/JyxcbiAgICAgICAgJ0NhbiBJIHJldHVybiBpdGVtcz8nLFxuICAgICAgXSxcbiAgICAgIHBsYWNlaG9sZGVyOiAnQXNrIG1lIGFueXRoaW5nLi4uJyxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLkZsb2F0aW5nQ2hhdFYzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHdlbGNvbWVNZXNzYWdlVGl0bGU6ICdXZWxjb21lIHRvIEVudml2ZSBBSScsXG4gICAgICB3ZWxjb21lTWVzc2FnZVRleHQ6XG4gICAgICAgICdZb3VyIHBlcnNvbmFsIHNob3BwZXIgdHJhaW5lZCBvbiB0aGUgY29sbGVjdGl2ZSBrbm93bGVkZ2Ugb2YgdGhvdXNhbmRzIG9mIHJlYWwgZXhwZXJ0cyEnLFxuICAgICAgY2hhdEZvb3RlclRleHRGaWVsZFBsYWNlaG9sZGVyVGV4dDogJ0FzayBtZSBhbnl0aGluZy4uLicsXG4gICAgICBkaXNjbGFpbWVyVGV4dDogJ1RoaXMgaXMgYSBkaXNjbGFpbWVyLi4uJyxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLkZ1bGxQYWdlU2FsZXNBZ2VudFYzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHdlbGNvbWVNZXNzYWdlVGl0bGU6ICdXZWxjb21lIHRvIEVudml2ZSBBSScsXG4gICAgICB3ZWxjb21lTWVzc2FnZVRleHQ6XG4gICAgICAgICdZb3VyIHBlcnNvbmFsIHNob3BwZXIgdHJhaW5lZCBvbiB0aGUgY29sbGVjdGl2ZSBrbm93bGVkZ2Ugb2YgdGhvdXNhbmRzIG9mIHJlYWwgZXhwZXJ0cyEnLFxuICAgICAgY2hhdEZvb3RlclRleHRGaWVsZFBsYWNlaG9sZGVyVGV4dDogJ0FzayBtZSBhbnl0aGluZy4uLicsXG4gICAgICBkaXNjbGFpbWVyVGV4dDogJ1RoaXMgaXMgYSBkaXNjbGFpbWVyLi4uJyxcbiAgICB9LFxuICB9LFxufTtcblxuY29uc3QgSGFyZGNvcHlDb250ZXh0ID0gY3JlYXRlQ29udGV4dDxIYXJkY29weUNvbnRleHRUeXBlIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuXG5leHBvcnQgY29uc3QgSGFyZGNvcHlQcm92aWRlcjogUmVhY3QuRkM8eyBjaGlsZHJlbjogUmVhY3ROb2RlIH0+ID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xuICBjb25zdCBsYW5ndWFnZXMgPSB1c2VNZW1vKCgpID0+IG5hdmlnYXRvci5sYW5ndWFnZXMsIFtdKTtcbiAgY29uc3QgW2lzTG9hZGluZywgc2V0SXNMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgY29udGV4dCA9IHVzZUF0b21WYWx1ZShhcHBEZXRhaWxzQXRvbSk7XG4gIGNvbnN0IHsgdHJhY2tFdmVudCB9ID0gdXNlQW1wbGl0dWRlKCk7XG5cbiAgY29uc3QgeyBmZWF0dXJlRmxhZ1NlcnZpY2UgfSA9IHVzZUZlYXR1cmVGbGFnU2VydmljZSgpO1xuICBjb25zdCBnZXRIYXJkY29weUZyb21CYWNrZW5kID0gdXNlQ2FsbGJhY2soXG4gICAgYXN5bmMgKHJlcXVlc3Q6IEhhcmRjb3B5UmVxdWVzdCk6IFByb21pc2U8SGFyZGNvcHlSZXNwb25zZT4gPT4ge1xuICAgICAgY29uc3Qgd2lkZ2V0VGV4dFJlcXVlc3Q6IFdpZGdldFRleHRSZXF1ZXN0ID0ge1xuICAgICAgICByZXF1ZXN0SWQ6IHV1aWQoKSxcbiAgICAgICAgd2lkZ2V0VHlwZTogcmVxdWVzdC53aWRnZXRUeXBlLFxuICAgICAgICBjb250ZXh0LFxuICAgICAgICBmZWF0dXJlRmxhZ3M6IGZlYXR1cmVGbGFnU2VydmljZT8uZ2V0RmVhdHVyZUZsYWdzKCkgfHwge30sXG4gICAgICAgIGxhbmd1YWdlOiBsYW5ndWFnZXNbMF0gfHwgJ2VuJyxcbiAgICAgICAgdXJsOiB3aW5kb3cubG9jYXRpb24uaHJlZixcbiAgICAgIH07XG4gICAgICB0cmFja0V2ZW50KHtcbiAgICAgICAgZXZlbnROYW1lOiBFbnZpdmVNZXRyaWNzRXZlbnROYW1lLldpZGdldFRleHRSZXF1ZXN0LFxuICAgICAgICBldmVudFByb3BzOiB7XG4gICAgICAgICAgd2lkZ2V0X3R5cGU6IHJlcXVlc3Qud2lkZ2V0VHlwZSxcbiAgICAgICAgICByZXF1ZXN0X2lkOiB3aWRnZXRUZXh0UmVxdWVzdC5yZXF1ZXN0SWQsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgQ29tbWVyY2VBcGlDbGllbnQuZ2V0SGFyZGNvcHkod2lkZ2V0VGV4dFJlcXVlc3QpO1xuICAgICAgICBpZiAocmVzcG9uc2UpIHtcbiAgICAgICAgICBjb25zdCBjb252ZXJ0ZWRSZXNwb25zZSA9IGNvbnZlcnRUb0hhcmRjb3B5UmVzcG9uc2UocmVzcG9uc2UpO1xuICAgICAgICAgIExvZ2dlci5sb2dJbmZvKCdoYXJkY29weUNvbnRleHQgfCBjb252ZXJ0ZWQgcmVzcG9uc2UnLCBjb252ZXJ0ZWRSZXNwb25zZSk7XG4gICAgICAgICAgdHJhY2tFdmVudCh7XG4gICAgICAgICAgICBldmVudE5hbWU6IEVudml2ZU1ldHJpY3NFdmVudE5hbWUuV2lkZ2V0VGV4dFJlc3BvbnNlLFxuICAgICAgICAgICAgZXZlbnRQcm9wczoge1xuICAgICAgICAgICAgICB3aWRnZXRfdHlwZTogcmVxdWVzdC53aWRnZXRUeXBlLFxuICAgICAgICAgICAgICByZXNwb25zZV9pZDogcmVzcG9uc2UucmVzcG9uc2VJZCxcbiAgICAgICAgICAgICAgd2lkZ2V0X3RleHQ6IHJlc3BvbnNlLnZhbHVlcyxcbiAgICAgICAgICAgICAgcmVxdWVzdF9pZDogd2lkZ2V0VGV4dFJlcXVlc3QucmVxdWVzdElkLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm4gY29udmVydGVkUmVzcG9uc2U7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIExvZ2dlci5sb2dFcnJvcignaGFyZGNvcHlDb250ZXh0IHwgZXJyb3IgZ2V0dGluZyBoYXJkY29weSBmcm9tIGJhY2tlbmQnLCBlcnJvcik7XG4gICAgICB9XG4gICAgICBjb25zdCBtb2NrUmVzcG9uc2UgPSBNT0NLX0hBUkRDT1BZX1JFU1BPTlNFW3JlcXVlc3Qud2lkZ2V0VHlwZV07XG4gICAgICBpZiAobW9ja1Jlc3BvbnNlKSB7XG4gICAgICAgIExvZ2dlci5sb2dJbmZvKCdoYXJkY29weUNvbnRleHQgfCBubyByZWFsIHJlc3BvbnNlLCB1c2luZyBtb2NrJywgbW9ja1Jlc3BvbnNlKTtcbiAgICAgICAgcmV0dXJuIG1vY2tSZXNwb25zZTtcbiAgICAgIH1cbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gaGFyZGNvcHkgcmVzcG9uc2UgZm91bmQgZm9yIHdpZGdldCB0eXBlOiAke3JlcXVlc3Qud2lkZ2V0VHlwZX1gKTtcbiAgICB9LFxuICAgIFtjb250ZXh0LCBmZWF0dXJlRmxhZ1NlcnZpY2UsIGxhbmd1YWdlcywgdHJhY2tFdmVudF0sXG4gICk7XG5cbiAgY29uc3QgZ2V0SGFyZGNvcHkgPSB1c2VDYWxsYmFjayhcbiAgICBhc3luYyAocmVxdWVzdDogSGFyZGNvcHlSZXF1ZXN0KTogUHJvbWlzZTxIYXJkY29weVJlc3BvbnNlPiA9PiB7XG4gICAgICBzZXRJc0xvYWRpbmcodHJ1ZSk7XG4gICAgICBMb2dnZXIubG9nSW5mbygnaGFyZGNvcHlDb250ZXh0IHwgcmV0cmlldmluZyBoYXJkY29weScsIGxhbmd1YWdlcyk7XG5cbiAgICAgIExvZ2dlci5sb2dJbmZvKCdoYXJkY29weUNvbnRleHQgfCByZXF1ZXN0JywgcmVxdWVzdCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGdldEhhcmRjb3B5RnJvbUJhY2tlbmQocmVxdWVzdCk7XG4gICAgICBMb2dnZXIubG9nSW5mbygnaGFyZGNvcHlDb250ZXh0IHwgcmV0dXJuaW5nIGhhcmRjb3B5IHJlc3BvbnNlJywgcmVzcG9uc2UpO1xuICAgICAgaWYgKCFyZXNwb25zZSkge1xuICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIGhhcmRjb3B5IHJlc3BvbnNlIGZvdW5kIGZvciB3aWRnZXQgdHlwZTogJHtyZXF1ZXN0LndpZGdldFR5cGV9YCk7XG4gICAgICB9XG4gICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlO1xuICAgIH0sXG4gICAgW2dldEhhcmRjb3B5RnJvbUJhY2tlbmQsIGxhbmd1YWdlc10sXG4gICk7XG5cbiAgY29uc3QgdmFsdWUgPSB1c2VNZW1vKCgpID0+ICh7IGdldEhhcmRjb3B5LCBpc0xvYWRpbmcgfSksIFtnZXRIYXJkY29weSwgaXNMb2FkaW5nXSk7XG5cbiAgcmV0dXJuIDxIYXJkY29weUNvbnRleHQuUHJvdmlkZXIgdmFsdWU9e3ZhbHVlfT57Y2hpbGRyZW59PC9IYXJkY29weUNvbnRleHQuUHJvdmlkZXI+O1xufTtcblxuZXhwb3J0IGNvbnN0IHVzZUhhcmRjb3B5ID0gKCkgPT4ge1xuICBjb25zdCBjb250ZXh0ID0gdXNlQ29udGV4dChIYXJkY29weUNvbnRleHQpO1xuICBpZiAoIWNvbnRleHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3VzZUhhcmRjb3B5IG11c3QgYmUgdXNlZCB3aXRoaW4gYSBIYXJkY29weVByb3ZpZGVyJyk7XG4gIH1cbiAgcmV0dXJuIGNvbnRleHQ7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBaUNBLE1BQU0sNkJBQTZCLGFBQTJDO0FBQzVFLFFBQU87RUFDTCxZQUFZLFNBQVM7RUFDckIsVUFBVSxTQUFTO0VBQ25CLFdBQVcsU0FBUztFQUNwQixRQUFRLE9BQU8sWUFDYixPQUFPLFFBQVEsU0FBUyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssV0FBVyxDQUVwREEsNENBQVksSUFBSSxFQUNoQixNQUFNLFdBQVcsSUFBSSxNQUFNLEdBQUcsUUFBUSxNQUFNLEtBQUksTUFBSyxFQUFFLE1BQU0sQ0FDOUQsQ0FBQyxDQUNIO0VBQ0Y7O0FBTUgsTUFBTUMseUJBQTBFO0VBQzdFQyxzQ0FBYSxtQkFBbUI7RUFDL0IsMEJBQWtCO0VBQ2xCLFVBQVU7RUFDVixRQUFRLEVBQ04sbUJBQW1CO0dBQ2pCO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDRCxFQUNGO0VBQ0Y7RUFDQUEs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
265
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFyZGNvcHlDb250ZXh0LmNqcyIsIm5hbWVzIjpbInRvQ2FtZWxDYXNlIiwiTU9DS19IQVJEQ09QWV9SRVNQT05TRTogUGFydGlhbDxSZWNvcmQ8V2lkZ2V0VHlwZVYzLCBIYXJkY29weVJlc3BvbnNlPj4iLCJXaWRnZXRUeXBlVjMiLCJIYXJkY29weVByb3ZpZGVyOiBSZWFjdC5GQzxIYXJkY29weVByb3ZpZGVyUHJvcHM+IiwiYXBwRGV0YWlsc0F0b20iLCJ1c2VBbXBsaXR1ZGUiLCJ1c2VGZWF0dXJlRmxhZ1NlcnZpY2UiLCJnZXRRdWVyeVBhcmFtIiwid2lkZ2V0VGV4dFJlcXVlc3Q6IFdpZGdldFRleHRSZXF1ZXN0IiwiRW52aXZlTWV0cmljc0V2ZW50TmFtZSIsIkNvbW1lcmNlQXBpQ2xpZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL2hhcmRjb3B5Q29udGV4dC9oYXJkY29weUNvbnRleHQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlYWN0Tm9kZSwgY3JlYXRlQ29udGV4dCwgdXNlQ2FsbGJhY2ssIHVzZUNvbnRleHQsIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IExvZ2dlciBmcm9tICdzcmMvYXBwbGljYXRpb24vbG9nZ2luZy9sb2dnZXInO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IENvbW1lcmNlQXBpQ2xpZW50IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9jb21tZXJjZS1hcGknO1xuaW1wb3J0IHsgV2lkZ2V0U3RyaW5nLCBXaWRnZXRUZXh0IH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvd2lkZ2V0VGV4dCc7XG5pbXBvcnQgeyBXaWRnZXRUZXh0UmVxdWVzdCB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvYXBpL3dpZGdldFRleHRSZXF1ZXN0JztcblxuaW1wb3J0IHsgdXNlQXRvbVZhbHVlIH0gZnJvbSAnam90YWknO1xuaW1wb3J0IHsgYXBwRGV0YWlsc0F0b20gfSBmcm9tICdzcmMvYXRvbXMvYXBwJztcbmltcG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICdzcmMvc2VydmljZXMvYW1wbGl0dWRlU2VydmljZS9hbXBsaXR1ZGVTZXJ2aWNlJztcbmltcG9ydCB7IHRvQ2FtZWxDYXNlIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy91dGlscy9zbmFrZVRvQ2FtZWxUcmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBVc2VyRXZlbnQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IGdldFF1ZXJ5UGFyYW0gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vdXRpbHMnO1xuaW1wb3J0IHsgV2lkZ2V0VHlwZVYzIH0gZnJvbSAnLi4vdHlwZXNWMyc7XG5pbXBvcnQgeyB1c2VGZWF0dXJlRmxhZ1NlcnZpY2UgfSBmcm9tICcuLi9mZWF0dXJlRmxhZ1NlcnZpY2VDb250ZXh0L2ZlYXR1cmVGbGFnU2VydmljZUNvbnRleHQnO1xuaW1wb3J0IHsgdXNlQW1wbGl0dWRlIH0gZnJvbSAnLi4vYW1wbGl0dWRlQ29udGV4dCc7XG5cbmludGVyZmFjZSBIYXJkY29weVJlcXVlc3Qge1xuICB3aWRnZXRUeXBlOiBXaWRnZXRUeXBlVjM7XG4gIHVzZXJFdmVudDogVXNlckV2ZW50O1xufVxuXG5leHBvcnQgdHlwZSBIYXJkY29weVJlc3BvbnNlID0ge1xuICByZXNwb25zZUlkOiBzdHJpbmc7XG4gIGxhbmd1YWdlOiBzdHJpbmc7XG4gIHJhd1ZhbHVlcz86IFJlY29yZDxzdHJpbmcsIFdpZGdldFN0cmluZyB8IFdpZGdldFN0cmluZ1tdPjtcbiAgdmFsdWVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBzdHJpbmdbXT47XG59O1xuXG5pbnRlcmZhY2UgSGFyZGNvcHlDb250ZXh0VHlwZSB7XG4gIGdldEhhcmRjb3B5OiAoSGFyZGNvcHlSZXF1ZXN0OiBIYXJkY29weVJlcXVlc3QpID0+IFByb21pc2U8SGFyZGNvcHlSZXNwb25zZT47XG4gIGlzTG9hZGluZzogYm9vbGVhbjtcbn1cblxuY29uc3QgY29udmVydFRvSGFyZGNvcHlSZXNwb25zZSA9IChyZXNwb25zZTogV2lkZ2V0VGV4dCk6IEhhcmRjb3B5UmVzcG9uc2UgPT4ge1xuICByZXR1cm4ge1xuICAgIHJlc3BvbnNlSWQ6IHJlc3BvbnNlLnJlc3BvbnNlSWQsXG4gICAgbGFuZ3VhZ2U6IHJlc3BvbnNlLmxhbmd1YWdlLFxuICAgIHJhd1ZhbHVlczogcmVzcG9uc2UudmFsdWVzLFxuICAgIHZhbHVlczogT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgICAgT2JqZWN0LmVudHJpZXMocmVzcG9uc2UudmFsdWVzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4gW1xuICAgICAgICAvLyBUcmFuc2Zvcm0gdGhlIGtleSBmcm9tIHNuYWtlX2Nhc2UgdG8gY2FtZWxDYXNlXG4gICAgICAgIHRvQ2FtZWxDYXNlKGtleSksXG4gICAgICAgIHZhbHVlLmxlbmd0aCA9PT0gMSA/IHZhbHVlWzBdLnZhbHVlIDogdmFsdWUubWFwKHYgPT4gdi52YWx1ZSksXG4gICAgICBdKSxcbiAgICApLFxuICB9O1xufTtcblxuLy8gVGhlc2UgYXJlIGp1c3Qgc2FtcGxlIHJlc3BvbnNlcyBmb3IgdGhlIHNha2Ugb2YgdGVzdGluZy5cbi8vIEFzIHdlIHN0YXJ0IHRvIGJ1aWxkIHRoZSBhY3R1YWwgd2lkZ2V0cyB3ZSBzaG91bGQgZGV0ZXJtaW5lIHdoYXQgdGhlIGFjdHVhbFxuLy8gdmFsdWVzIGFuZCB0aGVpciBuYW1lcyBzaG91bGQgYmUuXG5jb25zdCBNT0NLX0hBUkRDT1BZX1JFU1BPTlNFOiBQYXJ0aWFsPFJlY29yZDxXaWRnZXRUeXBlVjMsIEhhcmRjb3B5UmVzcG9uc2U+PiA9IHtcbiAgW1dpZGdldFR5cGVWMy5Qcm9tcHRDYXJvdXNlbFYzXToge1xuICAgIHJlc3BvbnNlSWQ6IHV1aWQoKSxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHByb21wdEJ1dHRvblRleHRzOiBbXG4gICAgICAgICdXaGF0IGFyZSB5b3VyIGJlc3Qgc2VsbGVycz8nLFxuICAgICAgICAnU2hvdyBtZSBzdW1tZXIgZHJlc3NlcycsXG4gICAgICAgICdEbyB5b3UgaGF2ZSBmcmVlIHNoaXBwaW5nPycsXG4gICAgICAgICdXaGF0IHNpemVzIGFyZSBhdmFpbGFibGU/JyxcbiAgICAgICAgJ0NhbiBJIHJldHVybiBpdGVtcz8nLFxuICAgICAgXSxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLlRpdGxlZFByb21wdENhcm91c2VsVjNdOiB7XG4gICAgcmVzcG9uc2VJZDogJ21vY2stcmVzcG9uc2UtaWQnLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgdGl0bGVMYWJlbDogJ05lZWQgc29tZSBoZWxwPycsXG4gICAgICBwcm9tcHRCdXR0b25UZXh0czogW1xuICAgICAgICAnV2hhdCBhcmUgeW91ciBiZXN0IHNlbGxlcnM/JyxcbiAgICAgICAgJ1Nob3cgbWUgc3VtbWVyIGRyZXNzZXMnLFxuICAgICAgICAnRG8geW91IGhhdmUgZnJlZSBzaGlwcGluZz8nLFxuICAgICAgICAnV2hhdCBzaXplcyBhcmUgYXZhaWxhYmxlPycsXG4gICAgICAgICdDYW4gSSByZXR1cm4gaXRlbXM/JyxcbiAgICAgIF0sXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5Tb2NpYWxQcm9vZlYzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHRpdGxlTGFiZWw6ICdTaG9wcGluZyBBc3Npc3RhbnQnLFxuICAgICAgbnVtYmVyT2ZDdXN0b21lcnNUZXh0OiAnMTIzIGN1c3RvbWVycycsXG4gICAgICBjdXN0b21lclF1ZXJ5VGV4dDogJ2ZvdW5kIHdoYXQgdGhleSB3ZXJlIGxvb2tpbmcgZm9yLi4uJyxcbiAgICAgIHByaW1hcnlCdXR0b25UZXh0OiAnU3RhcnQgc2hvcHBpbmcnLFxuICAgICAgc2Vjb25kYXJ5QnV0dG9uVGl0bGVUZXh0OiAnUG9wdWxhciBzZWFyY2hlcycsXG4gICAgICBzZWNvbmRhcnlCdXR0b25UZXh0czogW1xuICAgICAgICAnV2h5IHNob3VsZCBJIGJ1eSBmcm9tIHlvdT8nLFxuICAgICAgICAnSG93IGRvIEkgcmV0dXJuIGFuIGl0ZW0/JyxcbiAgICAgICAgJ05ldyBhcnJpdmFscycsXG4gICAgICAgICdTYWxlIGl0ZW1zJyxcbiAgICAgICAgJ1BvcHVsYXIgaXRlbXMnLFxuICAgICAgXSxcbiAgICAgIHRleHRGaWVsZFBsYWNlaG9sZGVyVGV4dDogJ0FzayBtZSBhbnl0aGluZy4uLicsXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5UeXBpbmdBbmltYXRpb25WM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB0aXRsZUxhYmVsOiAnU2hvcHBpbmcgQXNzaXN0YW50JyxcbiAgICAgIGhlYWRsaW5lVGV4dDogJ05lZWQgaGVscCBmaW5kaW5nJyxcbiAgICAgIGFuaW1hdGVkVGV4dFNlcXVlbmNlOiBbXG4gICAgICAgICd0aGUgcGVyZmVjdCBnaWZ0IGZvciB5b3VyIGxvdmVkIG9uZXM/JyxcbiAgICAgICAgJ3NvbWV0aGluZyBzcGVjaWFsIGZvciB0aGUgaG9saWRheXM/JyxcbiAgICAgICAgJ3RoZSBpZGVhbCBwcmVzZW50IGZvciBzb21lb25lIHNwZWNpYWw/JyxcbiAgICAgIF0sXG4gICAgICBoaW50VGV4dDogJ0FzayBtZSBhbnl0aGluZycsXG4gICAgICBwcm9tcHRCdXR0b25UZXh0czogW1xuICAgICAgICAnV2hhdCBhcmUgeW91ciBiZXN0IHNlbGxlcnM/JyxcbiAgICAgICAgJ1Nob3cgbWUgc3VtbWVyIGRyZXNzZXMnLFxuICAgICAgICAnRG8geW91IGhhdmUgZnJlZSBzaGlwcGluZz8nLFxuICAgICAgICAnV2hhdCBzaXplcyBhcmUgYXZhaWxhYmxlPycsXG4gICAgICBdLFxuICAgICAgdGV4dEZpZWxkQXJpYUxhYmVsOiAnQXNrIG1lIGFueXRoaW5nJyxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLkNoYXRQcmV2aWV3Q29tcGFyaXNvblYzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHRpdGxlTGFiZWw6ICdTaG9wcGluZyBBc3Npc3RhbnQnLFxuICAgICAgaGVhZGxpbmVUZXh0OiAnTmVlZCBoZWxwIGNvbXBhcmluZz8nLFxuICAgICAgdGV4dEZpZWxkUGxhY2Vob2xkZXJUZXh0OiAnQXNrIG1lIGFueXRoaW5nLi4uJyxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLkNoYXRQcmV2aWV3TG9hZGluZ1YzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHRpdGxlTGFiZWw6ICdTaG9wcGluZyBBc3Npc3RhbnQnLFxuICAgICAgdGV4dEZpZWxkUGxhY2Vob2xkZXJUZXh0OiAnQXNrIG1lIGFueXRoaW5nLi4uJyxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLkNoYXRQcmV2aWV3VjNdOiB7XG4gICAgcmVzcG9uc2VJZDogJ21vY2stcmVzcG9uc2UtaWQnLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgdGl0bGVMYWJlbDogJ1Nob3BwaW5nIEFzc2lzdGFudCcsXG4gICAgICB0ZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgIH0sXG4gIH0sXG4gIFtXaWRnZXRUeXBlVjMuUHJvbXB0QnV0dG9uQ2Fyb3VzZWxXaXRoSW1hZ2VWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB0aXRsZUxhYmVsOiAnTmVlZCBzb21lIGhlbHA/JyxcbiAgICAgIHByb21wdEJ1dHRvbnNUZXh0czogWydIZWxwIG1lIGZpbmQgYSBwcm9kdWN0JywgXCJXaGF0J3Mgb24geW91ciBtaW5kP1wiLCAnVGFsayB0byBhIGh1bWFuJ10sXG4gICAgICB0ZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgIH0sXG4gIH0sXG4gIFtXaWRnZXRUeXBlVjMuUHJvZHVjdENhcmRWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICBoZWFkbGluZTogJ0Rpc2NvdmVyIFlvdXIgUGVyZmVjdCBTdHlsZScsXG4gICAgICBhbmltYXRlZFRleHQ6IFtcbiAgICAgICAgJ3RoZSBwZXJmZWN0IG91dGZpdCBmb3IgYW55IG9jY2FzaW9uJyxcbiAgICAgICAgJ3RyZW5kaW5nIGZhc2hpb24gdGhhdCBmaXRzIHlvdXIgbGlmZXN0eWxlJyxcbiAgICAgICAgJ3F1YWxpdHkgcGllY2VzIHRoYXQgbGFzdCcsXG4gICAgICBdLFxuICAgICAgcHJvbXB0czogW1xuICAgICAgICAnV2hhdCBhcmUgeW91ciBiZXN0IHNlbGxlcnM/JyxcbiAgICAgICAgJ1Nob3cgbWUgc3VtbWVyIGRyZXNzZXMnLFxuICAgICAgICAnRG8geW91IGhhdmUgZnJlZSBzaGlwcGluZz8nLFxuICAgICAgICAnV2hhdCBzaXplcyBhcmUgYXZhaWxhYmxlPycsXG4gICAgICAgICdDYW4gSSByZXR1cm4gaXRlbXM/JyxcbiAgICAgIF0sXG4gICAgICBwbGFjZWhvbGRlcjogJ0FzayBtZSBhbnl0aGluZy4uLicsXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5GbG9hdGluZ0NoYXRWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB3ZWxjb21lTWVzc2FnZVRpdGxlOiAnV2VsY29tZSB0byBFbnZpdmUgQUknLFxuICAgICAgd2VsY29tZU1lc3NhZ2VUZXh0OlxuICAgICAgICAnWW91ciBwZXJzb25hbCBzaG9wcGVyIHRyYWluZWQgb24gdGhlIGNvbGxlY3RpdmUga25vd2xlZGdlIG9mIHRob3VzYW5kcyBvZiByZWFsIGV4cGVydHMhJyxcbiAgICAgIGNoYXRGb290ZXJUZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgICAgZGlzY2xhaW1lclRleHQ6ICdUaGlzIGlzIGEgZGlzY2xhaW1lci4uLicsXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5GdWxsUGFnZVNhbGVzQWdlbnRWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB3ZWxjb21lTWVzc2FnZVRpdGxlOiAnV2VsY29tZSB0byBFbnZpdmUgQUknLFxuICAgICAgd2VsY29tZU1lc3NhZ2VUZXh0OlxuICAgICAgICAnWW91ciBwZXJzb25hbCBzaG9wcGVyIHRyYWluZWQgb24gdGhlIGNvbGxlY3RpdmUga25vd2xlZGdlIG9mIHRob3VzYW5kcyBvZiByZWFsIGV4cGVydHMhJyxcbiAgICAgIGNoYXRGb290ZXJUZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgICAgZGlzY2xhaW1lclRleHQ6ICdUaGlzIGlzIGEgZGlzY2xhaW1lci4uLicsXG4gICAgfSxcbiAgfSxcbn07XG5cbmNvbnN0IEhhcmRjb3B5Q29udGV4dCA9IGNyZWF0ZUNvbnRleHQ8SGFyZGNvcHlDb250ZXh0VHlwZSB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuaW50ZXJmYWNlIEhhcmRjb3B5UHJvdmlkZXJQcm9wcyB7XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG4gIGhhcmRjb3B5T3ZlcnJpZGU/OiBQYXJ0aWFsPFJlY29yZDxXaWRnZXRUeXBlVjMsIEhhcmRjb3B5UmVzcG9uc2U+Pjtcbn1cblxuZXhwb3J0IGNvbnN0IEhhcmRjb3B5UHJvdmlkZXI6IFJlYWN0LkZDPEhhcmRjb3B5UHJvdmlkZXJQcm9wcz4gPSAoe1xuICBjaGlsZHJlbixcbiAgaGFyZGNvcHlPdmVycmlkZSxcbn0pID0+IHtcbiAgY29uc3QgbGFuZ3VhZ2VzID0gdXNlTWVtbygoKSA9PiBuYXZpZ2F0b3IubGFuZ3VhZ2VzLCBbXSk7XG4gIGNvbnN0IFtpc0xvYWRpbmcsIHNldElzTG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGNvbnRleHQgPSB1c2VBdG9tVmFsdWUoYXBwRGV0YWlsc0F0b20pO1xuICBjb25zdCB7IHRyYWNrRXZlbnQgfSA9IHVzZUFtcGxpdHVkZSgpO1xuXG4gIGNvbnN0IHsgZmVhdHVyZUZsYWdTZXJ2aWNlIH0gPSB1c2VGZWF0dXJlRmxhZ1NlcnZpY2UoKTtcbiAgY29uc3QgZ2V0SGFyZGNvcHlGcm9tQmFja2VuZCA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jIChyZXF1ZXN0OiBIYXJkY29weVJlcXVlc3QpOiBQcm9taXNlPEhhcmRjb3B5UmVzcG9uc2U+ID0+IHtcbiAgICAgIGlmIChoYXJkY29weU92ZXJyaWRlPy5bcmVxdWVzdC53aWRnZXRUeXBlXSkge1xuICAgICAgICBMb2dnZXIubG9nSW5mbygnaGFyZGNvcHlDb250ZXh0IHwgdXNpbmcgaGFyZGNvcHkgb3ZlcnJpZGUnLCByZXF1ZXN0LndpZGdldFR5cGUpO1xuICAgICAgICByZXR1cm4gaGFyZGNvcHlPdmVycmlkZVtyZXF1ZXN0LndpZGdldFR5cGVdITtcbiAgICAgIH1cbiAgICAgIGNvbnN0IG92ZXJyaWRlQ29uZmlnVmVyc2lvbiA9XG4gICAgICAgIGdldFF1ZXJ5UGFyYW0oJ3NwaWZmeV9jb25maWdfdmVyc2lvbicpIHx8XG4gICAgICAgIGdldFF1ZXJ5UGFyYW0oJ2Vudml2ZV9jb25maWdfdmVyc2lvbicpIHx8XG4gICAgICAgIHVuZGVmaW5lZDtcbiAgICAgIGNvbnN0IHdpZGdldFRleHRSZXF1ZXN0OiBXaWRnZXRUZXh0UmVxdWVzdCA9IHtcbiAgICAgICAgcmVxdWVzdElkOiB1dWlkKCksXG4gICAgICAgIHdpZGdldFR5cGU6IHJlcXVlc3Qud2lkZ2V0VHlwZSxcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgZmVhdHVyZUZsYWdzOiBmZWF0dXJlRmxhZ1NlcnZpY2U/LmdldEZlYXR1cmVGbGFncygpIHx8IHt9LFxuICAgICAgICBsYW5ndWFnZTogbGFuZ3VhZ2VzWzBdIHx8ICdlbicsXG4gICAgICAgIG92ZXJyaWRlQ29uZmlnVmVyc2lvbixcbiAgICAgICAgdXJsOiB3aW5kb3cubG9jYXRpb24uaHJlZixcbiAgICAgIH07XG4gICAgICB0cmFja0V2ZW50KHtcbiAgICAgICAgZXZlbnROYW1lOiBFbnZpdmVNZXRyaWNzRXZlbnROYW1lLldpZGdldFRleHRSZXF1ZXN0LFxuICAgICAgICBldmVudFByb3BzOiB7XG4gICAgICAgICAgd2lkZ2V0X3R5cGU6IHJlcXVlc3Qud2lkZ2V0VHlwZSxcbiAgICAgICAgICByZXF1ZXN0X2lkOiB3aWRnZXRUZXh0UmVxdWVzdC5yZXF1ZXN0SWQsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgQ29tbWVyY2VBcGlDbGllbnQuZ2V0SGFyZGNvcHkod2lkZ2V0VGV4dFJlcXVlc3QpO1xuICAgICAgICBpZiAocmVzcG9uc2UpIHtcbiAgICAgICAgICBjb25zdCBjb252ZXJ0ZWRSZXNwb25zZSA9IGNvbnZlcnRUb0hhcmRjb3B5UmVzcG9uc2UocmVzcG9uc2UpO1xuICAgICAgICAgIExvZ2dlci5sb2dJbmZvKCdoYXJkY29weUNvbnRleHQgfCBjb252ZXJ0ZWQgcmVzcG9uc2UnLCBjb252ZXJ0ZWRSZXNwb25zZSk7XG4gICAgICAgICAgdHJhY2tFdmVudCh7XG4gICAgICAgICAgICBldmVudE5hbWU6IEVudml2ZU1ldHJpY3NFdmVudE5hbWUuV2lkZ2V0VGV4dFJlc3BvbnNlLFxuICAgICAgICAgICAgZXZlbnRQcm9wczoge1xuICAgICAgICAgICAgICB3aWRnZXRfdHlwZTogcmVxdWVzdC53aWRnZXRUeXBlLFxuICAgICAgICAgICAgICByZXNwb25zZV9pZDogcmVzcG9uc2UucmVzcG9uc2VJZCxcbiAgICAgICAgICAgICAgd2lkZ2V0X3RleHQ6IHJlc3BvbnNlLnZhbHVlcyxcbiAgICAgICAgICAgICAgcmVxdWVzdF9pZDogd2lkZ2V0VGV4dFJlcXVlc3QucmVxdWVzdElkLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm4gY29udmVydGVkUmVzcG9uc2U7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIExvZ2dlci5sb2dFcnJvcignaGFyZGNvcHlDb250ZXh0IHwgZXJyb3IgZ2V0dGluZyBoYXJkY29weSBmcm9tIGJhY2tlbmQnLCBlcnJvcik7XG4gICAgICB9XG4gICAgICBjb25zdCBtb2NrUmVzcG9uc2UgPSBNT0NLX0hBUkRDT1BZX1JFU1BPTlNFW3JlcXVlc3Qud2lkZ2V0VHlwZV07XG4gICAgICBpZiAobW9ja1Jlc3BvbnNlKSB7XG4gICAgICAgIExvZ2dlci5sb2dJbmZvKCdoYXJkY29weUNvbnRleHQgfCBubyByZWFsIHJlc3BvbnNlLCB1c2luZyBtb2NrJywgbW9ja1Jlc3BvbnNlKTtcbiAgICAgICAgcmV0dXJuIG1vY2tSZXNwb25zZTtcbiAgICAgIH1cbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gaGFyZGNvcHkgcmVzcG9uc2UgZm91bmQgZm9yIHdpZGdldCB0eXBlOiAke3JlcXVlc3Qud2lkZ2V0VHlwZX1gKTtcbiAgICB9LFxuICAgIFtjb250ZXh0LCBmZWF0dXJlRmxhZ1NlcnZpY2UsIGhhcmRjb3B5T3ZlcnJpZGUsIGxhbmd1YWdlcywgdHJhY2tFdmVudF0sXG4gICk7XG5cbiAgY29uc3QgZ2V0SGFyZGNvcHkgPSB1c2VDYWxsYmFjayhcbiAgICBhc3luYyAocmVxdWVzdDogSGFyZGNvcHlSZXF1ZXN0KTogUHJvbWlzZTxIYXJkY29weVJlc3BvbnNlPiA9PiB7XG4gICAgICBzZXRJc0xvYWRpbmcodHJ1ZSk7XG4gICAgICBMb2dnZXIubG9nSW5mbygnaGFyZGNvcHlDb250ZXh0IHwgcmV0cmlldmluZyBoYXJkY29weScsIGxhbmd1YWdlcyk7XG5cbiAgICAgIExvZ2dlci5sb2dJbmZvKCdoYXJkY29weUNvbnRleHQgfCByZXF1ZXN0JywgcmVxdWVzdCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGdldEhhcmRjb3B5RnJvbUJhY2tlbmQocmVxdWVzdCk7XG4gICAgICBMb2dnZXIubG9nSW5mbygnaGFyZGNvcHlDb250ZXh0IHwgcmV0dXJuaW5nIGhhcmRjb3B5IHJlc3BvbnNlJywgcmVzcG9uc2UpO1xuICAgICAgaWYgKCFyZXNwb25zZSkge1xuICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIGhhcmRjb3B5IHJlc3BvbnNlIGZvdW5kIGZvciB3aWRnZXQgdHlwZTogJHtyZXF1ZXN0LndpZGdldFR5cGV9YCk7XG4gICAgICB9XG4gICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlO1xuICAgIH0sXG4gICAgW2dldEhhcmRjb3B5RnJvbUJhY2tlbmQsIGxhbmd1YWdlc10sXG4gICk7XG5cbiAgY29uc3QgdmFsdWUgPSB1c2VNZW1vKCgpID0+ICh7IGdldEhhcmRjb3B5LCBpc0xvYWRpbmcgfSksIFtnZXRIYXJkY29weSwgaXNMb2FkaW5nXSk7XG5cbiAgcmV0dXJuIDxIYXJkY29weUNvbnRleHQuUHJvdmlkZXIgdmFsdWU9e3ZhbHVlfT57Y2hpbGRyZW59PC9IYXJkY29weUNvbnRleHQuUHJvdmlkZXI+O1xufTtcblxuZXhwb3J0IGNvbnN0IHVzZUhhcmRjb3B5ID0gKCkgPT4ge1xuICBjb25zdCBjb250ZXh0ID0gdXNlQ29udGV4dChIYXJkY29weUNvbnRleHQpO1xuICBpZiAoIWNvbnRleHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3VzZUhhcmRjb3B5IG11c3QgYmUgdXNlZCB3aXRoaW4gYSBIYXJkY29weVByb3ZpZGVyJyk7XG4gIH1cbiAgcmV0dXJuIGNvbnRleHQ7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBa0NBLE1BQU0sNkJBQTZCLGFBQTJDO0FBQzVFLFFBQU87RUFDTCxZQUFZLFNBQVM7RUFDckIsVUFBVSxTQUFTO0VBQ25CLFdBQVcsU0FBUztFQUNwQixRQUFRLE9BQU8sWUFDYixPQUFPLFFBQVEsU0FBUyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssV0FBVyxDQUVwREEsNENBQVksSUFBSSxFQUNoQixNQUFNLFdBQVcsSUFBSSxNQUFNLEdBQUcsUUFBUSxNQUFNLEtBQUksTUFBSyxFQUFFLE1BQU0sQ0FDOUQsQ0FBQyxDQUNIO0VBQ0Y7O0FBTUgsTUFBTUMseUJBQTBFO0VBQzdFQyxzQ0FBYSxtQkFBbUI7RUFDL0IsMEJBQWtCO0VBQ2xCLFVBQVU7RUFDVixRQUFRLEVBQ04sbUJBQW1CO0dBQ2pCO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDRCxFQUNGO0VBQ0Y7RUFDQUEsc0NBQWEseUJBQXlCO0VBQ3JDLFlBQVk7RUFDWixVQUFVO0VBQ1YsUUFBUTtHQUNOLFlBQVk7R0FDWixtQkFBbUI7SUFDakI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNEO0dBQ0Y7RUFDRjtFQUNBQSxzQ0FBYSxnQkFBZ0I7RUFDNUIsWUFBWTtFQUNaLFVBQVU7RUFDVixRQUFRO0dBQ04sWUFBWTtHQUNaLHVCQUF1QjtHQUN2QixtQkFBbUI7R0FDbkIsbUJBQW1CO0dBQ25CLDBCQUEwQjtHQUMxQixzQkFBc0I7SUFDcEI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNEO0dBQ0QsMEJBQTBCO0dBQzNCO0VBQ0Y7RUFDQUEsc0NBQWEsb0JBQW9CO0VBQ2hDLFlBQVk7RUFDWixVQUFVO0VBQ1YsUUFBUTtHQUNOLFlBQVk7R0FDWixjQUFjO0dBQ2Qsc0JBQXNCO0lBQ3BCO0lBQ0E7SUFDQTtJQUNEO0dBQ0QsVUFBVTtHQUNWLG1CQUFtQjtJQUNqQjtJQUNBO0lBQ0E7SUFDQTtJQUNEO0dBQ0Qsb0JBQW9CO0dBQ3JCO0VBQ0Y7RUFDQUEsc0NBQWEsMEJBQTBCO0VBQ3RDLFlBQVk7RUFDWixVQUFVO0VBQ1YsUUFBUTtHQUNOLFlBQVk7R0FDWixjQUFjO0dBQ2QsMEJBQTBCO0dBQzNCO0VBQ0Y7RUFDQUEsc0NBQWEsdUJBQXVCO0VBQ25DLFlBQVk7RUFDWixVQUFVO0VBQ1YsUUFBUTtHQUNOLFlBQVk7R0FDWiwwQkFBMEI7R0FDM0I7RUFDRjtFQUNBQSxzQ0FBYSxnQkFBZ0I7RUFDNUIsWUFBWTtFQUNaLFVBQVU7RUFDVixRQUFRO0dBQ04sWUFBWTtHQUNaLDBCQUEwQjtHQUMzQjtFQUNGO0VBQ0FBLHNDQUFhLGtDQUFrQztFQUM5QyxZQUFZO0VBQ1osVUFBVTtFQUNWLFFBQVE7R0FDTixZQUFZO0dBQ1osb0JBQW9CO0lBQUM7SUFBMEI7SUFBd0I7SUFBa0I7R0FDekYsMEJBQTBCO0dBQzNCO0VBQ0Y7RUFDQUEsc0NBQWEsZ0JBQWdCO0VBQzVCLFlBQVk7RUFDWixVQUFVO0VBQ1YsUUFBUTtHQUNOLFVBQVU7R0FDVixjQUFjO0lBQ1o7SUFDQTtJQUNBO0lBQ0Q7R0FDRCxTQUFTO0lBQ1A7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNEO0dBQ0QsYUFBYTtHQUNkO0VBQ0Y7RUFDQUEsc0NBQWEsaUJBQWlCO0VBQzdCLFlBQVk7RUFDWixVQUFVO0VBQ1YsUUFBUTtHQUNOLHFCQUFxQjtHQUNyQixvQkFDRTtHQUNGLG9DQUFvQztHQUNwQyxnQkFBZ0I7R0FDakI7RUFDRjtFQUNBQSxzQ0FBYSx1QkFBdUI7RUFDbkMsWUFBWTtFQUNaLFVBQVU7RUFDVixRQUFRO0dBQ04scUJBQXFCO0dBQ3JCLG9CQUNFO0dBQ0Ysb0NBQW9DO0dBQ3BDLGdCQUFnQjtHQUNqQjtFQUNGO0NBQ0Y7QUFFRCxNQUFNLDJDQUFpRSxPQUFVO0FBT2pGLE1BQWFDLG9CQUFxRCxFQUNoRSxVQUNBLHVCQUNJO0NBQ0osTUFBTSxxQ0FBMEIsVUFBVSxXQUFXLEVBQUUsQ0FBQztDQUN4RCxNQUFNLENBQUMsV0FBVyxvQ0FBeUIsTUFBTTtDQUNqRCxNQUFNLGtDQUF1QkMsdUNBQWU7Q0FDNUMsTUFBTSxFQUFFLGVBQWVDLHVDQUFjO0NBRXJDLE1BQU0sRUFBRSx1QkFBdUJDLHlEQUF1QjtDQUN0RCxNQUFNLGdEQUNKLE9BQU8sWUFBd0Q7QUFDN0QsTUFBSSxtQkFBbUIsUUFBUSxhQUFhO0FBQzFDLDBCQUFPLFFBQVEsNkNBQTZDLFFBQVEsV0FBVztBQUMvRSxVQUFPLGlCQUFpQixRQUFROztFQUVsQyxNQUFNLHdCQUNKQyxpQ0FBYyx3QkFBd0IsSUFDdENBLGlDQUFjLHdCQUF3QixJQUN0QztFQUNGLE1BQU1DLG9CQUF1QztHQUMzQyx5QkFBaUI7R0FDakIsWUFBWSxRQUFRO0dBQ3BCO0dBQ0EsY0FBYyxvQkFBb0IsaUJBQWlCLElBQUksRUFBRTtHQUN6RCxVQUFVLFVBQVUsTUFBTTtHQUMxQjtHQUNBLEtBQUssT0FBTyxTQUFTO0dBQ3RCO0FBQ0QsYUFBVztHQUNULFdBQVdDLDBDQUF1QjtHQUNsQyxZQUFZO0lBQ1YsYUFBYSxRQUFRO0lBQ3JCLFlBQVksa0JBQWtCO0lBQy9CO0dBQ0YsQ0FBQztBQUNGLE1BQUk7R0FDRixNQUFNLFdBQVcsTUFBTUMseUNBQWtCLFlBQVksa0JBQWtCO0FBQ3ZFLE9BQUksVUFBVTtJQUNaLE1BQU0sb0JBQW9CLDBCQUEwQixTQUFTO0FBQzdELDJCQUFPLFFBQVEsd0NBQXdDLGtCQUFrQjtBQUN6RSxlQUFXO0tBQ1QsV0FBV0QsMENBQXVCO0tBQ2xDLFlBQVk7TUFDVixhQUFhLFFBQVE7TUFDckIsYUFBYSxTQUFTO01BQ3RCLGFBQWEsU0FBUztNQUN0QixZQUFZLGtCQUFrQjtNQUMvQjtLQUNGLENBQUM7QUFDRixXQUFPOztXQUVGLE9BQU87QUFDZCwwQkFBTyxTQUFTLHlEQUF5RCxNQUFNOztFQUVqRixNQUFNLGVBQWUsdUJBQXVCLFFBQVE7QUFDcEQsTUFBSSxjQUFjO0FBQ2hCLDBCQUFPLFFBQVEsa0RBQWtELGFBQWE7QUFDOUUsVUFBTzs7QUFFVCxRQUFNLElBQUksTUFBTSwrQ0FBK0MsUUFBUSxhQUFhO0lBRXRGO0VBQUM7RUFBUztFQUFvQjtFQUFrQjtFQUFXO0VBQVcsQ0FDdkU7Q0FFRCxNQUFNLHFDQUNKLE9BQU8sWUFBd0Q7QUFDN0QsZUFBYSxLQUFLO0FBQ2xCLHlCQUFPLFFBQVEseUNBQXlDLFVBQVU7QUFFbEUseUJBQU8sUUFBUSw2QkFBNkIsUUFBUTtFQUNwRCxNQUFNLFdBQVcsTUFBTSx1QkFBdUIsUUFBUTtBQUN0RCx5QkFBTyxRQUFRLGlEQUFpRCxTQUFTO0FBQ3pFLE1BQUksQ0FBQyxVQUFVO0FBQ2IsZ0JBQWEsTUFBTTtBQUNuQixTQUFNLElBQUksTUFBTSwrQ0FBK0MsUUFBUSxhQUFhOztBQUV0RixlQUFhLE1BQU07QUFDbkIsU0FBTztJQUVULENBQUMsd0JBQXdCLFVBQVUsQ0FDcEM7Q0FFRCxNQUFNLGtDQUF1QjtFQUFFO0VBQWE7RUFBVyxHQUFHLENBQUMsYUFBYSxVQUFVLENBQUM7QUFFbkYsUUFBTywyQ0FBQyxnQkFBZ0I7RUFBZ0I7RUFBUTtHQUFvQzs7QUFHdEYsTUFBYSxvQkFBb0I7Q0FDL0IsTUFBTSxnQ0FBcUIsZ0JBQWdCO0FBQzNDLEtBQUksQ0FBQyxRQUNILE9BQU0sSUFBSSxNQUFNLHFEQUFxRDtBQUV2RSxRQUFPIn0=
@@ -1,6 +1,6 @@
1
1
  import { WidgetTypeV3 } from "../typesV3.cjs";
2
- import { UserEvent } from "../../application/models/api/userEvent.cjs";
3
2
  import { WidgetString } from "../../application/models/api/widgetText.cjs";
3
+ import { UserEvent } from "../../application/models/api/userEvent.cjs";
4
4
  import { ReactNode } from "react";
5
5
 
6
6
  //#region src/contexts/hardcopyContext/hardcopyContext.d.ts
@@ -18,10 +18,12 @@ interface HardcopyContextType {
18
18
  getHardcopy: (HardcopyRequest: HardcopyRequest) => Promise<HardcopyResponse>;
19
19
  isLoading: boolean;
20
20
  }
21
- declare const HardcopyProvider: React.FC<{
21
+ interface HardcopyProviderProps {
22
22
  children: ReactNode;
23
- }>;
23
+ hardcopyOverride?: Partial<Record<WidgetTypeV3, HardcopyResponse>>;
24
+ }
25
+ declare const HardcopyProvider: React.FC<HardcopyProviderProps>;
24
26
  declare const useHardcopy: () => HardcopyContextType;
25
27
  //#endregion
26
28
  export { HardcopyProvider, HardcopyResponse, useHardcopy };
27
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFyZGNvcHlDb250ZXh0LmQuY3RzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0cy9oYXJkY29weUNvbnRleHQvaGFyZGNvcHlDb250ZXh0LmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgV2lkZ2V0U3RyaW5nIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvd2lkZ2V0VGV4dCc7XG5pbXBvcnQgeyBVc2VyRXZlbnQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IFdpZGdldFR5cGVWMyB9IGZyb20gJy4uL3R5cGVzVjMnO1xuaW50ZXJmYWNlIEhhcmRjb3B5UmVxdWVzdCB7XG4gICAgd2lkZ2V0VHlwZTogV2lkZ2V0VHlwZVYzO1xuICAgIHVzZXJFdmVudDogVXNlckV2ZW50O1xufVxuZXhwb3J0IHR5cGUgSGFyZGNvcHlSZXNwb25zZSA9IHtcbiAgICByZXNwb25zZUlkOiBzdHJpbmc7XG4gICAgbGFuZ3VhZ2U6IHN0cmluZztcbiAgICByYXdWYWx1ZXM/OiBSZWNvcmQ8c3RyaW5nLCBXaWRnZXRTdHJpbmcgfCBXaWRnZXRTdHJpbmdbXT47XG4gICAgdmFsdWVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBzdHJpbmdbXT47XG59O1xuaW50ZXJmYWNlIEhhcmRjb3B5Q29udGV4dFR5cGUge1xuICAgIGdldEhhcmRjb3B5OiAoSGFyZGNvcHlSZXF1ZXN0OiBIYXJkY29weVJlcXVlc3QpID0+IFByb21pc2U8SGFyZGNvcHlSZXNwb25zZT47XG4gICAgaXNMb2FkaW5nOiBib29sZWFuO1xufVxuZXhwb3J0IGRlY2xhcmUgY29uc3QgSGFyZGNvcHlQcm92aWRlcjogUmVhY3QuRkM8e1xuICAgIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG59PjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IHVzZUhhcmRjb3B5OiAoKSA9PiBIYXJkY29weUNvbnRleHRUeXBlO1xuZXhwb3J0IHt9O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFJQSxJQUFJLGtCQUFrQjtDQUFDO09BQUc7T0FBQTtDQUFBO0FBQzFCLElBQVcsbUJBQWlCO0NBQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBQzVCLElBQUksc0JBQW9CO0NBQUE7T0FBQTtPQUFBO09BQUE7Q0FBQTtBQUN4QixJQUFBLG1CQUFBO0NBQUE7T0FBQTtPQUFBLE1BQUE7Q0FBQTtBQUNBLElBQVcsY0FBYyxDQUFDLFdBQUssb0JBQUEifQ==
29
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFyZGNvcHlDb250ZXh0LmQuY3RzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0cy9oYXJkY29weUNvbnRleHQvaGFyZGNvcHlDb250ZXh0LmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgV2lkZ2V0U3RyaW5nIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvd2lkZ2V0VGV4dCc7XG5pbXBvcnQgeyBVc2VyRXZlbnQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IFdpZGdldFR5cGVWMyB9IGZyb20gJy4uL3R5cGVzVjMnO1xuaW50ZXJmYWNlIEhhcmRjb3B5UmVxdWVzdCB7XG4gICAgd2lkZ2V0VHlwZTogV2lkZ2V0VHlwZVYzO1xuICAgIHVzZXJFdmVudDogVXNlckV2ZW50O1xufVxuZXhwb3J0IHR5cGUgSGFyZGNvcHlSZXNwb25zZSA9IHtcbiAgICByZXNwb25zZUlkOiBzdHJpbmc7XG4gICAgbGFuZ3VhZ2U6IHN0cmluZztcbiAgICByYXdWYWx1ZXM/OiBSZWNvcmQ8c3RyaW5nLCBXaWRnZXRTdHJpbmcgfCBXaWRnZXRTdHJpbmdbXT47XG4gICAgdmFsdWVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBzdHJpbmdbXT47XG59O1xuaW50ZXJmYWNlIEhhcmRjb3B5Q29udGV4dFR5cGUge1xuICAgIGdldEhhcmRjb3B5OiAoSGFyZGNvcHlSZXF1ZXN0OiBIYXJkY29weVJlcXVlc3QpID0+IFByb21pc2U8SGFyZGNvcHlSZXNwb25zZT47XG4gICAgaXNMb2FkaW5nOiBib29sZWFuO1xufVxuaW50ZXJmYWNlIEhhcmRjb3B5UHJvdmlkZXJQcm9wcyB7XG4gICAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbiAgICBoYXJkY29weU92ZXJyaWRlPzogUGFydGlhbDxSZWNvcmQ8V2lkZ2V0VHlwZVYzLCBIYXJkY29weVJlc3BvbnNlPj47XG59XG5leHBvcnQgZGVjbGFyZSBjb25zdCBIYXJkY29weVByb3ZpZGVyOiBSZWFjdC5GQzxIYXJkY29weVByb3ZpZGVyUHJvcHM+O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlSGFyZGNvcHk6ICgpID0+IEhhcmRjb3B5Q29udGV4dFR5cGU7XG5leHBvcnQge307XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUlBLElBQUksa0JBQWtCO0NBQUM7T0FBRztPQUFBO0NBQUE7QUFDMUIsSUFBVyxtQkFBaUI7Q0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO0NBQUE7QUFDNUIsSUFBSSxzQkFBb0I7Q0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ3hCLElBQUEsd0JBQUE7Q0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7Q0FBQTtBQUNBLElBQVcsbUJBQW1CO0NBQUM7T0FBQTtPQUFBLE1BQUE7Q0FBQTtBQUMvQixJQUFXLGNBQVcsQ0FBQSxXQUFBLG9CQUFBIn0=
@@ -1,6 +1,6 @@
1
1
  import { WidgetTypeV3 } from "../typesV3.js";
2
- import { UserEvent } from "../../application/models/api/userEvent.js";
3
2
  import { WidgetString } from "../../application/models/api/widgetText.js";
3
+ import { UserEvent } from "../../application/models/api/userEvent.js";
4
4
  import { ReactNode } from "react";
5
5
 
6
6
  //#region src/contexts/hardcopyContext/hardcopyContext.d.ts
@@ -18,10 +18,12 @@ interface HardcopyContextType {
18
18
  getHardcopy: (HardcopyRequest: HardcopyRequest) => Promise<HardcopyResponse>;
19
19
  isLoading: boolean;
20
20
  }
21
- declare const HardcopyProvider: React.FC<{
21
+ interface HardcopyProviderProps {
22
22
  children: ReactNode;
23
- }>;
23
+ hardcopyOverride?: Partial<Record<WidgetTypeV3, HardcopyResponse>>;
24
+ }
25
+ declare const HardcopyProvider: React.FC<HardcopyProviderProps>;
24
26
  declare const useHardcopy: () => HardcopyContextType;
25
27
  //#endregion
26
28
  export { HardcopyProvider, HardcopyResponse, useHardcopy };
27
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFyZGNvcHlDb250ZXh0LmQudHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL2hhcmRjb3B5Q29udGV4dC9oYXJkY29weUNvbnRleHQuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBXaWRnZXRTdHJpbmcgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2FwaS93aWRnZXRUZXh0JztcbmltcG9ydCB7IFVzZXJFdmVudCB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuaW1wb3J0IHsgV2lkZ2V0VHlwZVYzIH0gZnJvbSAnLi4vdHlwZXNWMyc7XG5pbnRlcmZhY2UgSGFyZGNvcHlSZXF1ZXN0IHtcbiAgICB3aWRnZXRUeXBlOiBXaWRnZXRUeXBlVjM7XG4gICAgdXNlckV2ZW50OiBVc2VyRXZlbnQ7XG59XG5leHBvcnQgdHlwZSBIYXJkY29weVJlc3BvbnNlID0ge1xuICAgIHJlc3BvbnNlSWQ6IHN0cmluZztcbiAgICBsYW5ndWFnZTogc3RyaW5nO1xuICAgIHJhd1ZhbHVlcz86IFJlY29yZDxzdHJpbmcsIFdpZGdldFN0cmluZyB8IFdpZGdldFN0cmluZ1tdPjtcbiAgICB2YWx1ZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IHN0cmluZ1tdPjtcbn07XG5pbnRlcmZhY2UgSGFyZGNvcHlDb250ZXh0VHlwZSB7XG4gICAgZ2V0SGFyZGNvcHk6IChIYXJkY29weVJlcXVlc3Q6IEhhcmRjb3B5UmVxdWVzdCkgPT4gUHJvbWlzZTxIYXJkY29weVJlc3BvbnNlPjtcbiAgICBpc0xvYWRpbmc6IGJvb2xlYW47XG59XG5leHBvcnQgZGVjbGFyZSBjb25zdCBIYXJkY29weVByb3ZpZGVyOiBSZWFjdC5GQzx7XG4gICAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbn0+O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlSGFyZGNvcHk6ICgpID0+IEhhcmRjb3B5Q29udGV4dFR5cGU7XG5leHBvcnQge307XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUlBLElBQUksa0JBQWtCO0NBQUM7T0FBRztPQUFBO0NBQUE7QUFDMUIsSUFBVyxtQkFBaUI7Q0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO0NBQUE7QUFDNUIsSUFBSSxzQkFBb0I7Q0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ3hCLElBQUEsbUJBQUE7Q0FBQTtPQUFBO09BQUEsTUFBQTtDQUFBO0FBQ0EsSUFBVyxjQUFjLENBQUMsV0FBSyxvQkFBQSJ9
29
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFyZGNvcHlDb250ZXh0LmQudHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL2hhcmRjb3B5Q29udGV4dC9oYXJkY29weUNvbnRleHQuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBXaWRnZXRTdHJpbmcgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2FwaS93aWRnZXRUZXh0JztcbmltcG9ydCB7IFVzZXJFdmVudCB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuaW1wb3J0IHsgV2lkZ2V0VHlwZVYzIH0gZnJvbSAnLi4vdHlwZXNWMyc7XG5pbnRlcmZhY2UgSGFyZGNvcHlSZXF1ZXN0IHtcbiAgICB3aWRnZXRUeXBlOiBXaWRnZXRUeXBlVjM7XG4gICAgdXNlckV2ZW50OiBVc2VyRXZlbnQ7XG59XG5leHBvcnQgdHlwZSBIYXJkY29weVJlc3BvbnNlID0ge1xuICAgIHJlc3BvbnNlSWQ6IHN0cmluZztcbiAgICBsYW5ndWFnZTogc3RyaW5nO1xuICAgIHJhd1ZhbHVlcz86IFJlY29yZDxzdHJpbmcsIFdpZGdldFN0cmluZyB8IFdpZGdldFN0cmluZ1tdPjtcbiAgICB2YWx1ZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IHN0cmluZ1tdPjtcbn07XG5pbnRlcmZhY2UgSGFyZGNvcHlDb250ZXh0VHlwZSB7XG4gICAgZ2V0SGFyZGNvcHk6IChIYXJkY29weVJlcXVlc3Q6IEhhcmRjb3B5UmVxdWVzdCkgPT4gUHJvbWlzZTxIYXJkY29weVJlc3BvbnNlPjtcbiAgICBpc0xvYWRpbmc6IGJvb2xlYW47XG59XG5pbnRlcmZhY2UgSGFyZGNvcHlQcm92aWRlclByb3BzIHtcbiAgICBjaGlsZHJlbjogUmVhY3ROb2RlO1xuICAgIGhhcmRjb3B5T3ZlcnJpZGU/OiBQYXJ0aWFsPFJlY29yZDxXaWRnZXRUeXBlVjMsIEhhcmRjb3B5UmVzcG9uc2U+Pjtcbn1cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IEhhcmRjb3B5UHJvdmlkZXI6IFJlYWN0LkZDPEhhcmRjb3B5UHJvdmlkZXJQcm9wcz47XG5leHBvcnQgZGVjbGFyZSBjb25zdCB1c2VIYXJkY29weTogKCkgPT4gSGFyZGNvcHlDb250ZXh0VHlwZTtcbmV4cG9ydCB7fTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBSUEsSUFBSSxrQkFBa0I7Q0FBQztPQUFHO09BQUE7Q0FBQTtBQUMxQixJQUFXLG1CQUFpQjtDQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7Q0FBQTtBQUM1QixJQUFJLHNCQUFvQjtDQUFBO09BQUE7T0FBQTtPQUFBO0NBQUE7QUFDeEIsSUFBQSx3QkFBQTtDQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ0EsSUFBVyxtQkFBbUI7Q0FBQztPQUFBO09BQUEsTUFBQTtDQUFBO0FBQy9CLElBQVcsY0FBVyxDQUFBLFdBQUEsb0JBQUEifQ==
@@ -1,15 +1,18 @@
1
1
  import logger_default from "../../application/logging/logger.js";
2
+ import { getQueryParam } from "../../application/utils/urlsParser.js";
2
3
  import { toCamelCase } from "../../application/models/utils/snakeToCamelTransformer.js";
4
+ import { WidgetTypeV3 } from "../typesV3.js";
5
+ import { EnviveMetricsEventName } from "../../services/amplitudeService/eventNames.js";
6
+ import "../../services/amplitudeService/amplitudeService.js";
7
+ import "../../application/utils/index.js";
3
8
  import { appDetailsAtom } from "../../atoms/app/index.js";
9
+ import commerce_api_default from "../../application/commerce-api.js";
4
10
  import { useFeatureFlagService } from "../featureFlagServiceContext/featureFlagServiceContext.js";
5
- import { WidgetTypeV3 } from "../typesV3.js";
6
- import { EnviveMetricsEventName } from "../../services/amplitudeService/amplitudeService.js";
7
11
  import { useAmplitude } from "../amplitudeContext/amplitudeContext.js";
8
- import commerce_api_default from "../../application/commerce-api.js";
9
12
  import "../amplitudeContext/index.js";
10
13
  import { createContext, useCallback, useContext, useMemo, useState } from "react";
11
- import { useAtomValue } from "jotai";
12
14
  import { jsx } from "react/jsx-runtime";
15
+ import { useAtomValue } from "jotai";
13
16
  import { v4 } from "uuid";
14
17
 
15
18
  //#region src/contexts/hardcopyContext/hardcopyContext.tsx
@@ -167,19 +170,25 @@ const MOCK_HARDCOPY_RESPONSE = {
167
170
  }
168
171
  };
169
172
  const HardcopyContext = createContext(void 0);
170
- const HardcopyProvider = ({ children }) => {
173
+ const HardcopyProvider = ({ children, hardcopyOverride }) => {
171
174
  const languages = useMemo(() => navigator.languages, []);
172
175
  const [isLoading, setIsLoading] = useState(false);
173
176
  const context = useAtomValue(appDetailsAtom);
174
177
  const { trackEvent } = useAmplitude();
175
178
  const { featureFlagService } = useFeatureFlagService();
176
179
  const getHardcopyFromBackend = useCallback(async (request) => {
180
+ if (hardcopyOverride?.[request.widgetType]) {
181
+ logger_default.logInfo("hardcopyContext | using hardcopy override", request.widgetType);
182
+ return hardcopyOverride[request.widgetType];
183
+ }
184
+ const overrideConfigVersion = getQueryParam("spiffy_config_version") || getQueryParam("envive_config_version") || void 0;
177
185
  const widgetTextRequest = {
178
186
  requestId: v4(),
179
187
  widgetType: request.widgetType,
180
188
  context,
181
189
  featureFlags: featureFlagService?.getFeatureFlags() || {},
182
190
  language: languages[0] || "en",
191
+ overrideConfigVersion,
183
192
  url: window.location.href
184
193
  };
185
194
  trackEvent({
@@ -217,6 +226,7 @@ const HardcopyProvider = ({ children }) => {
217
226
  }, [
218
227
  context,
219
228
  featureFlagService,
229
+ hardcopyOverride,
220
230
  languages,
221
231
  trackEvent
222
232
  ]);
@@ -250,4 +260,4 @@ const useHardcopy = () => {
250
260
 
251
261
  //#endregion
252
262
  export { HardcopyProvider, useHardcopy };
253
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFyZGNvcHlDb250ZXh0LmpzIiwibmFtZXMiOlsiTU9DS19IQVJEQ09QWV9SRVNQT05TRTogUGFydGlhbDxSZWNvcmQ8V2lkZ2V0VHlwZVYzLCBIYXJkY29weVJlc3BvbnNlPj4iLCJ1dWlkIiwiSGFyZGNvcHlQcm92aWRlcjogUmVhY3QuRkM8eyBjaGlsZHJlbjogUmVhY3ROb2RlIH0+Iiwid2lkZ2V0VGV4dFJlcXVlc3Q6IFdpZGdldFRleHRSZXF1ZXN0IiwiQ29tbWVyY2VBcGlDbGllbnQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvaGFyZGNvcHlDb250ZXh0L2hhcmRjb3B5Q29udGV4dC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVhY3ROb2RlLCBjcmVhdGVDb250ZXh0LCB1c2VDYWxsYmFjaywgdXNlQ29udGV4dCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgTG9nZ2VyIGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9sb2dnaW5nL2xvZ2dlcic7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgQ29tbWVyY2VBcGlDbGllbnQgZnJvbSAnc3JjL2FwcGxpY2F0aW9uL2NvbW1lcmNlLWFwaSc7XG5pbXBvcnQgeyBXaWRnZXRTdHJpbmcsIFdpZGdldFRleHQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2FwaS93aWRnZXRUZXh0JztcbmltcG9ydCB7IFdpZGdldFRleHRSZXF1ZXN0IH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvd2lkZ2V0VGV4dFJlcXVlc3QnO1xuXG5pbXBvcnQgeyB1c2VBdG9tVmFsdWUgfSBmcm9tICdqb3RhaSc7XG5pbXBvcnQgeyBhcHBEZXRhaWxzQXRvbSB9IGZyb20gJ3NyYy9hdG9tcy9hcHAnO1xuaW1wb3J0IHsgRW52aXZlTWV0cmljc0V2ZW50TmFtZSB9IGZyb20gJ3NyYy9zZXJ2aWNlcy9hbXBsaXR1ZGVTZXJ2aWNlL2FtcGxpdHVkZVNlcnZpY2UnO1xuaW1wb3J0IHsgdG9DYW1lbENhc2UgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL3V0aWxzL3NuYWtlVG9DYW1lbFRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFVzZXJFdmVudCB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuaW1wb3J0IHsgV2lkZ2V0VHlwZVYzIH0gZnJvbSAnLi4vdHlwZXNWMyc7XG5pbXBvcnQgeyB1c2VGZWF0dXJlRmxhZ1NlcnZpY2UgfSBmcm9tICcuLi9mZWF0dXJlRmxhZ1NlcnZpY2VDb250ZXh0L2ZlYXR1cmVGbGFnU2VydmljZUNvbnRleHQnO1xuaW1wb3J0IHsgdXNlQW1wbGl0dWRlIH0gZnJvbSAnLi4vYW1wbGl0dWRlQ29udGV4dCc7XG5cbmludGVyZmFjZSBIYXJkY29weVJlcXVlc3Qge1xuICB3aWRnZXRUeXBlOiBXaWRnZXRUeXBlVjM7XG4gIHVzZXJFdmVudDogVXNlckV2ZW50O1xufVxuXG5leHBvcnQgdHlwZSBIYXJkY29weVJlc3BvbnNlID0ge1xuICByZXNwb25zZUlkOiBzdHJpbmc7XG4gIGxhbmd1YWdlOiBzdHJpbmc7XG4gIHJhd1ZhbHVlcz86IFJlY29yZDxzdHJpbmcsIFdpZGdldFN0cmluZyB8IFdpZGdldFN0cmluZ1tdPjtcbiAgdmFsdWVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBzdHJpbmdbXT47XG59O1xuXG5pbnRlcmZhY2UgSGFyZGNvcHlDb250ZXh0VHlwZSB7XG4gIGdldEhhcmRjb3B5OiAoSGFyZGNvcHlSZXF1ZXN0OiBIYXJkY29weVJlcXVlc3QpID0+IFByb21pc2U8SGFyZGNvcHlSZXNwb25zZT47XG4gIGlzTG9hZGluZzogYm9vbGVhbjtcbn1cblxuY29uc3QgY29udmVydFRvSGFyZGNvcHlSZXNwb25zZSA9IChyZXNwb25zZTogV2lkZ2V0VGV4dCk6IEhhcmRjb3B5UmVzcG9uc2UgPT4ge1xuICByZXR1cm4ge1xuICAgIHJlc3BvbnNlSWQ6IHJlc3BvbnNlLnJlc3BvbnNlSWQsXG4gICAgbGFuZ3VhZ2U6IHJlc3BvbnNlLmxhbmd1YWdlLFxuICAgIHJhd1ZhbHVlczogcmVzcG9uc2UudmFsdWVzLFxuICAgIHZhbHVlczogT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgICAgT2JqZWN0LmVudHJpZXMocmVzcG9uc2UudmFsdWVzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4gW1xuICAgICAgICAvLyBUcmFuc2Zvcm0gdGhlIGtleSBmcm9tIHNuYWtlX2Nhc2UgdG8gY2FtZWxDYXNlXG4gICAgICAgIHRvQ2FtZWxDYXNlKGtleSksXG4gICAgICAgIHZhbHVlLmxlbmd0aCA9PT0gMSA/IHZhbHVlWzBdLnZhbHVlIDogdmFsdWUubWFwKHYgPT4gdi52YWx1ZSksXG4gICAgICBdKSxcbiAgICApLFxuICB9O1xufTtcblxuLy8gVGhlc2UgYXJlIGp1c3Qgc2FtcGxlIHJlc3BvbnNlcyBmb3IgdGhlIHNha2Ugb2YgdGVzdGluZy5cbi8vIEFzIHdlIHN0YXJ0IHRvIGJ1aWxkIHRoZSBhY3R1YWwgd2lkZ2V0cyB3ZSBzaG91bGQgZGV0ZXJtaW5lIHdoYXQgdGhlIGFjdHVhbFxuLy8gdmFsdWVzIGFuZCB0aGVpciBuYW1lcyBzaG91bGQgYmUuXG5jb25zdCBNT0NLX0hBUkRDT1BZX1JFU1BPTlNFOiBQYXJ0aWFsPFJlY29yZDxXaWRnZXRUeXBlVjMsIEhhcmRjb3B5UmVzcG9uc2U+PiA9IHtcbiAgW1dpZGdldFR5cGVWMy5Qcm9tcHRDYXJvdXNlbFYzXToge1xuICAgIHJlc3BvbnNlSWQ6IHV1aWQoKSxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHByb21wdEJ1dHRvblRleHRzOiBbXG4gICAgICAgICdXaGF0IGFyZSB5b3VyIGJlc3Qgc2VsbGVycz8nLFxuICAgICAgICAnU2hvdyBtZSBzdW1tZXIgZHJlc3NlcycsXG4gICAgICAgICdEbyB5b3UgaGF2ZSBmcmVlIHNoaXBwaW5nPycsXG4gICAgICAgICdXaGF0IHNpemVzIGFyZSBhdmFpbGFibGU/JyxcbiAgICAgICAgJ0NhbiBJIHJldHVybiBpdGVtcz8nLFxuICAgICAgXSxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLlRpdGxlZFByb21wdENhcm91c2VsVjNdOiB7XG4gICAgcmVzcG9uc2VJZDogJ21vY2stcmVzcG9uc2UtaWQnLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgdGl0bGVMYWJlbDogJ05lZWQgc29tZSBoZWxwPycsXG4gICAgICBwcm9tcHRCdXR0b25UZXh0czogW1xuICAgICAgICAnV2hhdCBhcmUgeW91ciBiZXN0IHNlbGxlcnM/JyxcbiAgICAgICAgJ1Nob3cgbWUgc3VtbWVyIGRyZXNzZXMnLFxuICAgICAgICAnRG8geW91IGhhdmUgZnJlZSBzaGlwcGluZz8nLFxuICAgICAgICAnV2hhdCBzaXplcyBhcmUgYXZhaWxhYmxlPycsXG4gICAgICAgICdDYW4gSSByZXR1cm4gaXRlbXM/JyxcbiAgICAgIF0sXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5Tb2NpYWxQcm9vZlYzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHRpdGxlTGFiZWw6ICdTaG9wcGluZyBBc3Npc3RhbnQnLFxuICAgICAgbnVtYmVyT2ZDdXN0b21lcnNUZXh0OiAnMTIzIGN1c3RvbWVycycsXG4gICAgICBjdXN0b21lclF1ZXJ5VGV4dDogJ2ZvdW5kIHdoYXQgdGhleSB3ZXJlIGxvb2tpbmcgZm9yLi4uJyxcbiAgICAgIHByaW1hcnlCdXR0b25UZXh0OiAnU3RhcnQgc2hvcHBpbmcnLFxuICAgICAgc2Vjb25kYXJ5QnV0dG9uVGl0bGVUZXh0OiAnUG9wdWxhciBzZWFyY2hlcycsXG4gICAgICBzZWNvbmRhcnlCdXR0b25UZXh0czogW1xuICAgICAgICAnV2h5IHNob3VsZCBJIGJ1eSBmcm9tIHlvdT8nLFxuICAgICAgICAnSG93IGRvIEkgcmV0dXJuIGFuIGl0ZW0/JyxcbiAgICAgICAgJ05ldyBhcnJpdmFscycsXG4gICAgICAgICdTYWxlIGl0ZW1zJyxcbiAgICAgICAgJ1BvcHVsYXIgaXRlbXMnLFxuICAgICAgXSxcbiAgICAgIHRleHRGaWVsZFBsYWNlaG9sZGVyVGV4dDogJ0FzayBtZSBhbnl0aGluZy4uLicsXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5UeXBpbmdBbmltYXRpb25WM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB0aXRsZUxhYmVsOiAnU2hvcHBpbmcgQXNzaXN0YW50JyxcbiAgICAgIGhlYWRsaW5lVGV4dDogJ05lZWQgaGVscCBmaW5kaW5nJyxcbiAgICAgIGFuaW1hdGVkVGV4dFNlcXVlbmNlOiBbXG4gICAgICAgICd0aGUgcGVyZmVjdCBnaWZ0IGZvciB5b3VyIGxvdmVkIG9uZXM/JyxcbiAgICAgICAgJ3NvbWV0aGluZyBzcGVjaWFsIGZvciB0aGUgaG9saWRheXM/JyxcbiAgICAgICAgJ3RoZSBpZGVhbCBwcmVzZW50IGZvciBzb21lb25lIHNwZWNpYWw/JyxcbiAgICAgIF0sXG4gICAgICBoaW50VGV4dDogJ0FzayBtZSBhbnl0aGluZycsXG4gICAgICBwcm9tcHRCdXR0b25UZXh0czogW1xuICAgICAgICAnV2hhdCBhcmUgeW91ciBiZXN0IHNlbGxlcnM/JyxcbiAgICAgICAgJ1Nob3cgbWUgc3VtbWVyIGRyZXNzZXMnLFxuICAgICAgICAnRG8geW91IGhhdmUgZnJlZSBzaGlwcGluZz8nLFxuICAgICAgICAnV2hhdCBzaXplcyBhcmUgYXZhaWxhYmxlPycsXG4gICAgICBdLFxuICAgICAgdGV4dEZpZWxkQXJpYUxhYmVsOiAnQXNrIG1lIGFueXRoaW5nJyxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLkNoYXRQcmV2aWV3Q29tcGFyaXNvblYzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHRpdGxlTGFiZWw6ICdTaG9wcGluZyBBc3Npc3RhbnQnLFxuICAgICAgaGVhZGxpbmVUZXh0OiAnTmVlZCBoZWxwIGNvbXBhcmluZz8nLFxuICAgICAgdGV4dEZpZWxkUGxhY2Vob2xkZXJUZXh0OiAnQXNrIG1lIGFueXRoaW5nLi4uJyxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLkNoYXRQcmV2aWV3TG9hZGluZ1YzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHRpdGxlTGFiZWw6ICdTaG9wcGluZyBBc3Npc3RhbnQnLFxuICAgICAgdGV4dEZpZWxkUGxhY2Vob2xkZXJUZXh0OiAnQXNrIG1lIGFueXRoaW5nLi4uJyxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLkNoYXRQcmV2aWV3VjNdOiB7XG4gICAgcmVzcG9uc2VJZDogJ21vY2stcmVzcG9uc2UtaWQnLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgdGl0bGVMYWJlbDogJ1Nob3BwaW5nIEFzc2lzdGFudCcsXG4gICAgICB0ZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgIH0sXG4gIH0sXG4gIFtXaWRnZXRUeXBlVjMuUHJvbXB0QnV0dG9uQ2Fyb3VzZWxXaXRoSW1hZ2VWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB0aXRsZUxhYmVsOiAnTmVlZCBzb21lIGhlbHA/JyxcbiAgICAgIHByb21wdEJ1dHRvbnNUZXh0czogWydIZWxwIG1lIGZpbmQgYSBwcm9kdWN0JywgXCJXaGF0J3Mgb24geW91ciBtaW5kP1wiLCAnVGFsayB0byBhIGh1bWFuJ10sXG4gICAgICB0ZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgIH0sXG4gIH0sXG4gIFtXaWRnZXRUeXBlVjMuUHJvZHVjdENhcmRWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICBoZWFkbGluZTogJ0Rpc2NvdmVyIFlvdXIgUGVyZmVjdCBTdHlsZScsXG4gICAgICBhbmltYXRlZFRleHQ6IFtcbiAgICAgICAgJ3RoZSBwZXJmZWN0IG91dGZpdCBmb3IgYW55IG9jY2FzaW9uJyxcbiAgICAgICAgJ3RyZW5kaW5nIGZhc2hpb24gdGhhdCBmaXRzIHlvdXIgbGlmZXN0eWxlJyxcbiAgICAgICAgJ3F1YWxpdHkgcGllY2VzIHRoYXQgbGFzdCcsXG4gICAgICBdLFxuICAgICAgcHJvbXB0czogW1xuICAgICAgICAnV2hhdCBhcmUgeW91ciBiZXN0IHNlbGxlcnM/JyxcbiAgICAgICAgJ1Nob3cgbWUgc3VtbWVyIGRyZXNzZXMnLFxuICAgICAgICAnRG8geW91IGhhdmUgZnJlZSBzaGlwcGluZz8nLFxuICAgICAgICAnV2hhdCBzaXplcyBhcmUgYXZhaWxhYmxlPycsXG4gICAgICAgICdDYW4gSSByZXR1cm4gaXRlbXM/JyxcbiAgICAgIF0sXG4gICAgICBwbGFjZWhvbGRlcjogJ0FzayBtZSBhbnl0aGluZy4uLicsXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5GbG9hdGluZ0NoYXRWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB3ZWxjb21lTWVzc2FnZVRpdGxlOiAnV2VsY29tZSB0byBFbnZpdmUgQUknLFxuICAgICAgd2VsY29tZU1lc3NhZ2VUZXh0OlxuICAgICAgICAnWW91ciBwZXJzb25hbCBzaG9wcGVyIHRyYWluZWQgb24gdGhlIGNvbGxlY3RpdmUga25vd2xlZGdlIG9mIHRob3VzYW5kcyBvZiByZWFsIGV4cGVydHMhJyxcbiAgICAgIGNoYXRGb290ZXJUZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgICAgZGlzY2xhaW1lclRleHQ6ICdUaGlzIGlzIGEgZGlzY2xhaW1lci4uLicsXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5GdWxsUGFnZVNhbGVzQWdlbnRWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB3ZWxjb21lTWVzc2FnZVRpdGxlOiAnV2VsY29tZSB0byBFbnZpdmUgQUknLFxuICAgICAgd2VsY29tZU1lc3NhZ2VUZXh0OlxuICAgICAgICAnWW91ciBwZXJzb25hbCBzaG9wcGVyIHRyYWluZWQgb24gdGhlIGNvbGxlY3RpdmUga25vd2xlZGdlIG9mIHRob3VzYW5kcyBvZiByZWFsIGV4cGVydHMhJyxcbiAgICAgIGNoYXRGb290ZXJUZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgICAgZGlzY2xhaW1lclRleHQ6ICdUaGlzIGlzIGEgZGlzY2xhaW1lci4uLicsXG4gICAgfSxcbiAgfSxcbn07XG5cbmNvbnN0IEhhcmRjb3B5Q29udGV4dCA9IGNyZWF0ZUNvbnRleHQ8SGFyZGNvcHlDb250ZXh0VHlwZSB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuZXhwb3J0IGNvbnN0IEhhcmRjb3B5UHJvdmlkZXI6IFJlYWN0LkZDPHsgY2hpbGRyZW46IFJlYWN0Tm9kZSB9PiA9ICh7IGNoaWxkcmVuIH0pID0+IHtcbiAgY29uc3QgbGFuZ3VhZ2VzID0gdXNlTWVtbygoKSA9PiBuYXZpZ2F0b3IubGFuZ3VhZ2VzLCBbXSk7XG4gIGNvbnN0IFtpc0xvYWRpbmcsIHNldElzTG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGNvbnRleHQgPSB1c2VBdG9tVmFsdWUoYXBwRGV0YWlsc0F0b20pO1xuICBjb25zdCB7IHRyYWNrRXZlbnQgfSA9IHVzZUFtcGxpdHVkZSgpO1xuXG4gIGNvbnN0IHsgZmVhdHVyZUZsYWdTZXJ2aWNlIH0gPSB1c2VGZWF0dXJlRmxhZ1NlcnZpY2UoKTtcbiAgY29uc3QgZ2V0SGFyZGNvcHlGcm9tQmFja2VuZCA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jIChyZXF1ZXN0OiBIYXJkY29weVJlcXVlc3QpOiBQcm9taXNlPEhhcmRjb3B5UmVzcG9uc2U+ID0+IHtcbiAgICAgIGNvbnN0IHdpZGdldFRleHRSZXF1ZXN0OiBXaWRnZXRUZXh0UmVxdWVzdCA9IHtcbiAgICAgICAgcmVxdWVzdElkOiB1dWlkKCksXG4gICAgICAgIHdpZGdldFR5cGU6IHJlcXVlc3Qud2lkZ2V0VHlwZSxcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgZmVhdHVyZUZsYWdzOiBmZWF0dXJlRmxhZ1NlcnZpY2U/LmdldEZlYXR1cmVGbGFncygpIHx8IHt9LFxuICAgICAgICBsYW5ndWFnZTogbGFuZ3VhZ2VzWzBdIHx8ICdlbicsXG4gICAgICAgIHVybDogd2luZG93LmxvY2F0aW9uLmhyZWYsXG4gICAgICB9O1xuICAgICAgdHJhY2tFdmVudCh7XG4gICAgICAgIGV2ZW50TmFtZTogRW52aXZlTWV0cmljc0V2ZW50TmFtZS5XaWRnZXRUZXh0UmVxdWVzdCxcbiAgICAgICAgZXZlbnRQcm9wczoge1xuICAgICAgICAgIHdpZGdldF90eXBlOiByZXF1ZXN0LndpZGdldFR5cGUsXG4gICAgICAgICAgcmVxdWVzdF9pZDogd2lkZ2V0VGV4dFJlcXVlc3QucmVxdWVzdElkLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IENvbW1lcmNlQXBpQ2xpZW50LmdldEhhcmRjb3B5KHdpZGdldFRleHRSZXF1ZXN0KTtcbiAgICAgICAgaWYgKHJlc3BvbnNlKSB7XG4gICAgICAgICAgY29uc3QgY29udmVydGVkUmVzcG9uc2UgPSBjb252ZXJ0VG9IYXJkY29weVJlc3BvbnNlKHJlc3BvbnNlKTtcbiAgICAgICAgICBMb2dnZXIubG9nSW5mbygnaGFyZGNvcHlDb250ZXh0IHwgY29udmVydGVkIHJlc3BvbnNlJywgY29udmVydGVkUmVzcG9uc2UpO1xuICAgICAgICAgIHRyYWNrRXZlbnQoe1xuICAgICAgICAgICAgZXZlbnROYW1lOiBFbnZpdmVNZXRyaWNzRXZlbnROYW1lLldpZGdldFRleHRSZXNwb25zZSxcbiAgICAgICAgICAgIGV2ZW50UHJvcHM6IHtcbiAgICAgICAgICAgICAgd2lkZ2V0X3R5cGU6IHJlcXVlc3Qud2lkZ2V0VHlwZSxcbiAgICAgICAgICAgICAgcmVzcG9uc2VfaWQ6IHJlc3BvbnNlLnJlc3BvbnNlSWQsXG4gICAgICAgICAgICAgIHdpZGdldF90ZXh0OiByZXNwb25zZS52YWx1ZXMsXG4gICAgICAgICAgICAgIHJlcXVlc3RfaWQ6IHdpZGdldFRleHRSZXF1ZXN0LnJlcXVlc3RJZCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgcmV0dXJuIGNvbnZlcnRlZFJlc3BvbnNlO1xuICAgICAgICB9XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBMb2dnZXIubG9nRXJyb3IoJ2hhcmRjb3B5Q29udGV4dCB8IGVycm9yIGdldHRpbmcgaGFyZGNvcHkgZnJvbSBiYWNrZW5kJywgZXJyb3IpO1xuICAgICAgfVxuICAgICAgY29uc3QgbW9ja1Jlc3BvbnNlID0gTU9DS19IQVJEQ09QWV9SRVNQT05TRVtyZXF1ZXN0LndpZGdldFR5cGVdO1xuICAgICAgaWYgKG1vY2tSZXNwb25zZSkge1xuICAgICAgICBMb2dnZXIubG9nSW5mbygnaGFyZGNvcHlDb250ZXh0IHwgbm8gcmVhbCByZXNwb25zZSwgdXNpbmcgbW9jaycsIG1vY2tSZXNwb25zZSk7XG4gICAgICAgIHJldHVybiBtb2NrUmVzcG9uc2U7XG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIGhhcmRjb3B5IHJlc3BvbnNlIGZvdW5kIGZvciB3aWRnZXQgdHlwZTogJHtyZXF1ZXN0LndpZGdldFR5cGV9YCk7XG4gICAgfSxcbiAgICBbY29udGV4dCwgZmVhdHVyZUZsYWdTZXJ2aWNlLCBsYW5ndWFnZXMsIHRyYWNrRXZlbnRdLFxuICApO1xuXG4gIGNvbnN0IGdldEhhcmRjb3B5ID0gdXNlQ2FsbGJhY2soXG4gICAgYXN5bmMgKHJlcXVlc3Q6IEhhcmRjb3B5UmVxdWVzdCk6IFByb21pc2U8SGFyZGNvcHlSZXNwb25zZT4gPT4ge1xuICAgICAgc2V0SXNMb2FkaW5nKHRydWUpO1xuICAgICAgTG9nZ2VyLmxvZ0luZm8oJ2hhcmRjb3B5Q29udGV4dCB8IHJldHJpZXZpbmcgaGFyZGNvcHknLCBsYW5ndWFnZXMpO1xuXG4gICAgICBMb2dnZXIubG9nSW5mbygnaGFyZGNvcHlDb250ZXh0IHwgcmVxdWVzdCcsIHJlcXVlc3QpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBnZXRIYXJkY29weUZyb21CYWNrZW5kKHJlcXVlc3QpO1xuICAgICAgTG9nZ2VyLmxvZ0luZm8oJ2hhcmRjb3B5Q29udGV4dCB8IHJldHVybmluZyBoYXJkY29weSByZXNwb25zZScsIHJlc3BvbnNlKTtcbiAgICAgIGlmICghcmVzcG9uc2UpIHtcbiAgICAgICAgc2V0SXNMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBoYXJkY29weSByZXNwb25zZSBmb3VuZCBmb3Igd2lkZ2V0IHR5cGU6ICR7cmVxdWVzdC53aWRnZXRUeXBlfWApO1xuICAgICAgfVxuICAgICAgc2V0SXNMb2FkaW5nKGZhbHNlKTtcbiAgICAgIHJldHVybiByZXNwb25zZTtcbiAgICB9LFxuICAgIFtnZXRIYXJkY29weUZyb21CYWNrZW5kLCBsYW5ndWFnZXNdLFxuICApO1xuXG4gIGNvbnN0IHZhbHVlID0gdXNlTWVtbygoKSA9PiAoeyBnZXRIYXJkY29weSwgaXNMb2FkaW5nIH0pLCBbZ2V0SGFyZGNvcHksIGlzTG9hZGluZ10pO1xuXG4gIHJldHVybiA8SGFyZGNvcHlDb250ZXh0LlByb3ZpZGVyIHZhbHVlPXt2YWx1ZX0+e2NoaWxkcmVufTwvSGFyZGNvcHlDb250ZXh0LlByb3ZpZGVyPjtcbn07XG5cbmV4cG9ydCBjb25zdCB1c2VIYXJkY29weSA9ICgpID0+IHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoSGFyZGNvcHlDb250ZXh0KTtcbiAgaWYgKCFjb250ZXh0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCd1c2VIYXJkY29weSBtdXN0IGJlIHVzZWQgd2l0aGluIGEgSGFyZGNvcHlQcm92aWRlcicpO1xuICB9XG4gIHJldHVybiBjb250ZXh0O1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBaUNBLE1BQU0sNkJBQTZCLGFBQTJDO0FBQzVFLFFBQU87RUFDTCxZQUFZLFNBQVM7RUFDckIsVUFBVSxTQUFTO0VBQ25CLFdBQVcsU0FBUztFQUNwQixRQUFRLE9BQU8sWUFDYixPQUFPLFFBQVEsU0FBUyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssV0FBVyxDQUVwRCxZQUFZLElBQUksRUFDaEIsTUFBTSxXQUFXLElBQUksTUFBTSxHQUFHLFFBQVEsTUFBTSxLQUFJLE1BQUssRUFBRSxNQUFNLENBQzlELENBQUMsQ0FDSDtFQUNGOztBQU1ILE1BQU1BLHlCQUEwRTtFQUM3RSxhQUFhLG1CQUFtQjtFQUMvQixZQUFZQyxJQUFNO0VBQ2xCLFVBQVU7RUFDVixRQUFRLEVBQ04sbUJBQW1CO0dBQ2pCO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDRCxFQUNGO0VBQ0Y7RUFDQSxhQUFhLHlCQUF5QjtFQUNyQyxZQUFZO0VBQ1osVUFBVTtFQUNWLFFBQVE7R0FDTixZQUFZO0dBQ1osbUJBQW1CO0lBQ2pCO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDRDtHQUNGO0VBQ0Y7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
263
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFyZGNvcHlDb250ZXh0LmpzIiwibmFtZXMiOlsiTU9DS19IQVJEQ09QWV9SRVNQT05TRTogUGFydGlhbDxSZWNvcmQ8V2lkZ2V0VHlwZVYzLCBIYXJkY29weVJlc3BvbnNlPj4iLCJ1dWlkIiwiSGFyZGNvcHlQcm92aWRlcjogUmVhY3QuRkM8SGFyZGNvcHlQcm92aWRlclByb3BzPiIsIndpZGdldFRleHRSZXF1ZXN0OiBXaWRnZXRUZXh0UmVxdWVzdCIsIkNvbW1lcmNlQXBpQ2xpZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL2hhcmRjb3B5Q29udGV4dC9oYXJkY29weUNvbnRleHQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlYWN0Tm9kZSwgY3JlYXRlQ29udGV4dCwgdXNlQ2FsbGJhY2ssIHVzZUNvbnRleHQsIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IExvZ2dlciBmcm9tICdzcmMvYXBwbGljYXRpb24vbG9nZ2luZy9sb2dnZXInO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IENvbW1lcmNlQXBpQ2xpZW50IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9jb21tZXJjZS1hcGknO1xuaW1wb3J0IHsgV2lkZ2V0U3RyaW5nLCBXaWRnZXRUZXh0IH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvd2lkZ2V0VGV4dCc7XG5pbXBvcnQgeyBXaWRnZXRUZXh0UmVxdWVzdCB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvYXBpL3dpZGdldFRleHRSZXF1ZXN0JztcblxuaW1wb3J0IHsgdXNlQXRvbVZhbHVlIH0gZnJvbSAnam90YWknO1xuaW1wb3J0IHsgYXBwRGV0YWlsc0F0b20gfSBmcm9tICdzcmMvYXRvbXMvYXBwJztcbmltcG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICdzcmMvc2VydmljZXMvYW1wbGl0dWRlU2VydmljZS9hbXBsaXR1ZGVTZXJ2aWNlJztcbmltcG9ydCB7IHRvQ2FtZWxDYXNlIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy91dGlscy9zbmFrZVRvQ2FtZWxUcmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBVc2VyRXZlbnQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IGdldFF1ZXJ5UGFyYW0gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vdXRpbHMnO1xuaW1wb3J0IHsgV2lkZ2V0VHlwZVYzIH0gZnJvbSAnLi4vdHlwZXNWMyc7XG5pbXBvcnQgeyB1c2VGZWF0dXJlRmxhZ1NlcnZpY2UgfSBmcm9tICcuLi9mZWF0dXJlRmxhZ1NlcnZpY2VDb250ZXh0L2ZlYXR1cmVGbGFnU2VydmljZUNvbnRleHQnO1xuaW1wb3J0IHsgdXNlQW1wbGl0dWRlIH0gZnJvbSAnLi4vYW1wbGl0dWRlQ29udGV4dCc7XG5cbmludGVyZmFjZSBIYXJkY29weVJlcXVlc3Qge1xuICB3aWRnZXRUeXBlOiBXaWRnZXRUeXBlVjM7XG4gIHVzZXJFdmVudDogVXNlckV2ZW50O1xufVxuXG5leHBvcnQgdHlwZSBIYXJkY29weVJlc3BvbnNlID0ge1xuICByZXNwb25zZUlkOiBzdHJpbmc7XG4gIGxhbmd1YWdlOiBzdHJpbmc7XG4gIHJhd1ZhbHVlcz86IFJlY29yZDxzdHJpbmcsIFdpZGdldFN0cmluZyB8IFdpZGdldFN0cmluZ1tdPjtcbiAgdmFsdWVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBzdHJpbmdbXT47XG59O1xuXG5pbnRlcmZhY2UgSGFyZGNvcHlDb250ZXh0VHlwZSB7XG4gIGdldEhhcmRjb3B5OiAoSGFyZGNvcHlSZXF1ZXN0OiBIYXJkY29weVJlcXVlc3QpID0+IFByb21pc2U8SGFyZGNvcHlSZXNwb25zZT47XG4gIGlzTG9hZGluZzogYm9vbGVhbjtcbn1cblxuY29uc3QgY29udmVydFRvSGFyZGNvcHlSZXNwb25zZSA9IChyZXNwb25zZTogV2lkZ2V0VGV4dCk6IEhhcmRjb3B5UmVzcG9uc2UgPT4ge1xuICByZXR1cm4ge1xuICAgIHJlc3BvbnNlSWQ6IHJlc3BvbnNlLnJlc3BvbnNlSWQsXG4gICAgbGFuZ3VhZ2U6IHJlc3BvbnNlLmxhbmd1YWdlLFxuICAgIHJhd1ZhbHVlczogcmVzcG9uc2UudmFsdWVzLFxuICAgIHZhbHVlczogT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgICAgT2JqZWN0LmVudHJpZXMocmVzcG9uc2UudmFsdWVzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4gW1xuICAgICAgICAvLyBUcmFuc2Zvcm0gdGhlIGtleSBmcm9tIHNuYWtlX2Nhc2UgdG8gY2FtZWxDYXNlXG4gICAgICAgIHRvQ2FtZWxDYXNlKGtleSksXG4gICAgICAgIHZhbHVlLmxlbmd0aCA9PT0gMSA/IHZhbHVlWzBdLnZhbHVlIDogdmFsdWUubWFwKHYgPT4gdi52YWx1ZSksXG4gICAgICBdKSxcbiAgICApLFxuICB9O1xufTtcblxuLy8gVGhlc2UgYXJlIGp1c3Qgc2FtcGxlIHJlc3BvbnNlcyBmb3IgdGhlIHNha2Ugb2YgdGVzdGluZy5cbi8vIEFzIHdlIHN0YXJ0IHRvIGJ1aWxkIHRoZSBhY3R1YWwgd2lkZ2V0cyB3ZSBzaG91bGQgZGV0ZXJtaW5lIHdoYXQgdGhlIGFjdHVhbFxuLy8gdmFsdWVzIGFuZCB0aGVpciBuYW1lcyBzaG91bGQgYmUuXG5jb25zdCBNT0NLX0hBUkRDT1BZX1JFU1BPTlNFOiBQYXJ0aWFsPFJlY29yZDxXaWRnZXRUeXBlVjMsIEhhcmRjb3B5UmVzcG9uc2U+PiA9IHtcbiAgW1dpZGdldFR5cGVWMy5Qcm9tcHRDYXJvdXNlbFYzXToge1xuICAgIHJlc3BvbnNlSWQ6IHV1aWQoKSxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHByb21wdEJ1dHRvblRleHRzOiBbXG4gICAgICAgICdXaGF0IGFyZSB5b3VyIGJlc3Qgc2VsbGVycz8nLFxuICAgICAgICAnU2hvdyBtZSBzdW1tZXIgZHJlc3NlcycsXG4gICAgICAgICdEbyB5b3UgaGF2ZSBmcmVlIHNoaXBwaW5nPycsXG4gICAgICAgICdXaGF0IHNpemVzIGFyZSBhdmFpbGFibGU/JyxcbiAgICAgICAgJ0NhbiBJIHJldHVybiBpdGVtcz8nLFxuICAgICAgXSxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLlRpdGxlZFByb21wdENhcm91c2VsVjNdOiB7XG4gICAgcmVzcG9uc2VJZDogJ21vY2stcmVzcG9uc2UtaWQnLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgdGl0bGVMYWJlbDogJ05lZWQgc29tZSBoZWxwPycsXG4gICAgICBwcm9tcHRCdXR0b25UZXh0czogW1xuICAgICAgICAnV2hhdCBhcmUgeW91ciBiZXN0IHNlbGxlcnM/JyxcbiAgICAgICAgJ1Nob3cgbWUgc3VtbWVyIGRyZXNzZXMnLFxuICAgICAgICAnRG8geW91IGhhdmUgZnJlZSBzaGlwcGluZz8nLFxuICAgICAgICAnV2hhdCBzaXplcyBhcmUgYXZhaWxhYmxlPycsXG4gICAgICAgICdDYW4gSSByZXR1cm4gaXRlbXM/JyxcbiAgICAgIF0sXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5Tb2NpYWxQcm9vZlYzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHRpdGxlTGFiZWw6ICdTaG9wcGluZyBBc3Npc3RhbnQnLFxuICAgICAgbnVtYmVyT2ZDdXN0b21lcnNUZXh0OiAnMTIzIGN1c3RvbWVycycsXG4gICAgICBjdXN0b21lclF1ZXJ5VGV4dDogJ2ZvdW5kIHdoYXQgdGhleSB3ZXJlIGxvb2tpbmcgZm9yLi4uJyxcbiAgICAgIHByaW1hcnlCdXR0b25UZXh0OiAnU3RhcnQgc2hvcHBpbmcnLFxuICAgICAgc2Vjb25kYXJ5QnV0dG9uVGl0bGVUZXh0OiAnUG9wdWxhciBzZWFyY2hlcycsXG4gICAgICBzZWNvbmRhcnlCdXR0b25UZXh0czogW1xuICAgICAgICAnV2h5IHNob3VsZCBJIGJ1eSBmcm9tIHlvdT8nLFxuICAgICAgICAnSG93IGRvIEkgcmV0dXJuIGFuIGl0ZW0/JyxcbiAgICAgICAgJ05ldyBhcnJpdmFscycsXG4gICAgICAgICdTYWxlIGl0ZW1zJyxcbiAgICAgICAgJ1BvcHVsYXIgaXRlbXMnLFxuICAgICAgXSxcbiAgICAgIHRleHRGaWVsZFBsYWNlaG9sZGVyVGV4dDogJ0FzayBtZSBhbnl0aGluZy4uLicsXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5UeXBpbmdBbmltYXRpb25WM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB0aXRsZUxhYmVsOiAnU2hvcHBpbmcgQXNzaXN0YW50JyxcbiAgICAgIGhlYWRsaW5lVGV4dDogJ05lZWQgaGVscCBmaW5kaW5nJyxcbiAgICAgIGFuaW1hdGVkVGV4dFNlcXVlbmNlOiBbXG4gICAgICAgICd0aGUgcGVyZmVjdCBnaWZ0IGZvciB5b3VyIGxvdmVkIG9uZXM/JyxcbiAgICAgICAgJ3NvbWV0aGluZyBzcGVjaWFsIGZvciB0aGUgaG9saWRheXM/JyxcbiAgICAgICAgJ3RoZSBpZGVhbCBwcmVzZW50IGZvciBzb21lb25lIHNwZWNpYWw/JyxcbiAgICAgIF0sXG4gICAgICBoaW50VGV4dDogJ0FzayBtZSBhbnl0aGluZycsXG4gICAgICBwcm9tcHRCdXR0b25UZXh0czogW1xuICAgICAgICAnV2hhdCBhcmUgeW91ciBiZXN0IHNlbGxlcnM/JyxcbiAgICAgICAgJ1Nob3cgbWUgc3VtbWVyIGRyZXNzZXMnLFxuICAgICAgICAnRG8geW91IGhhdmUgZnJlZSBzaGlwcGluZz8nLFxuICAgICAgICAnV2hhdCBzaXplcyBhcmUgYXZhaWxhYmxlPycsXG4gICAgICBdLFxuICAgICAgdGV4dEZpZWxkQXJpYUxhYmVsOiAnQXNrIG1lIGFueXRoaW5nJyxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLkNoYXRQcmV2aWV3Q29tcGFyaXNvblYzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHRpdGxlTGFiZWw6ICdTaG9wcGluZyBBc3Npc3RhbnQnLFxuICAgICAgaGVhZGxpbmVUZXh0OiAnTmVlZCBoZWxwIGNvbXBhcmluZz8nLFxuICAgICAgdGV4dEZpZWxkUGxhY2Vob2xkZXJUZXh0OiAnQXNrIG1lIGFueXRoaW5nLi4uJyxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLkNoYXRQcmV2aWV3TG9hZGluZ1YzXToge1xuICAgIHJlc3BvbnNlSWQ6ICdtb2NrLXJlc3BvbnNlLWlkJyxcbiAgICBsYW5ndWFnZTogJ2VuJyxcbiAgICB2YWx1ZXM6IHtcbiAgICAgIHRpdGxlTGFiZWw6ICdTaG9wcGluZyBBc3Npc3RhbnQnLFxuICAgICAgdGV4dEZpZWxkUGxhY2Vob2xkZXJUZXh0OiAnQXNrIG1lIGFueXRoaW5nLi4uJyxcbiAgICB9LFxuICB9LFxuICBbV2lkZ2V0VHlwZVYzLkNoYXRQcmV2aWV3VjNdOiB7XG4gICAgcmVzcG9uc2VJZDogJ21vY2stcmVzcG9uc2UtaWQnLFxuICAgIGxhbmd1YWdlOiAnZW4nLFxuICAgIHZhbHVlczoge1xuICAgICAgdGl0bGVMYWJlbDogJ1Nob3BwaW5nIEFzc2lzdGFudCcsXG4gICAgICB0ZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgIH0sXG4gIH0sXG4gIFtXaWRnZXRUeXBlVjMuUHJvbXB0QnV0dG9uQ2Fyb3VzZWxXaXRoSW1hZ2VWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB0aXRsZUxhYmVsOiAnTmVlZCBzb21lIGhlbHA/JyxcbiAgICAgIHByb21wdEJ1dHRvbnNUZXh0czogWydIZWxwIG1lIGZpbmQgYSBwcm9kdWN0JywgXCJXaGF0J3Mgb24geW91ciBtaW5kP1wiLCAnVGFsayB0byBhIGh1bWFuJ10sXG4gICAgICB0ZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgIH0sXG4gIH0sXG4gIFtXaWRnZXRUeXBlVjMuUHJvZHVjdENhcmRWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICBoZWFkbGluZTogJ0Rpc2NvdmVyIFlvdXIgUGVyZmVjdCBTdHlsZScsXG4gICAgICBhbmltYXRlZFRleHQ6IFtcbiAgICAgICAgJ3RoZSBwZXJmZWN0IG91dGZpdCBmb3IgYW55IG9jY2FzaW9uJyxcbiAgICAgICAgJ3RyZW5kaW5nIGZhc2hpb24gdGhhdCBmaXRzIHlvdXIgbGlmZXN0eWxlJyxcbiAgICAgICAgJ3F1YWxpdHkgcGllY2VzIHRoYXQgbGFzdCcsXG4gICAgICBdLFxuICAgICAgcHJvbXB0czogW1xuICAgICAgICAnV2hhdCBhcmUgeW91ciBiZXN0IHNlbGxlcnM/JyxcbiAgICAgICAgJ1Nob3cgbWUgc3VtbWVyIGRyZXNzZXMnLFxuICAgICAgICAnRG8geW91IGhhdmUgZnJlZSBzaGlwcGluZz8nLFxuICAgICAgICAnV2hhdCBzaXplcyBhcmUgYXZhaWxhYmxlPycsXG4gICAgICAgICdDYW4gSSByZXR1cm4gaXRlbXM/JyxcbiAgICAgIF0sXG4gICAgICBwbGFjZWhvbGRlcjogJ0FzayBtZSBhbnl0aGluZy4uLicsXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5GbG9hdGluZ0NoYXRWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB3ZWxjb21lTWVzc2FnZVRpdGxlOiAnV2VsY29tZSB0byBFbnZpdmUgQUknLFxuICAgICAgd2VsY29tZU1lc3NhZ2VUZXh0OlxuICAgICAgICAnWW91ciBwZXJzb25hbCBzaG9wcGVyIHRyYWluZWQgb24gdGhlIGNvbGxlY3RpdmUga25vd2xlZGdlIG9mIHRob3VzYW5kcyBvZiByZWFsIGV4cGVydHMhJyxcbiAgICAgIGNoYXRGb290ZXJUZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgICAgZGlzY2xhaW1lclRleHQ6ICdUaGlzIGlzIGEgZGlzY2xhaW1lci4uLicsXG4gICAgfSxcbiAgfSxcbiAgW1dpZGdldFR5cGVWMy5GdWxsUGFnZVNhbGVzQWdlbnRWM106IHtcbiAgICByZXNwb25zZUlkOiAnbW9jay1yZXNwb25zZS1pZCcsXG4gICAgbGFuZ3VhZ2U6ICdlbicsXG4gICAgdmFsdWVzOiB7XG4gICAgICB3ZWxjb21lTWVzc2FnZVRpdGxlOiAnV2VsY29tZSB0byBFbnZpdmUgQUknLFxuICAgICAgd2VsY29tZU1lc3NhZ2VUZXh0OlxuICAgICAgICAnWW91ciBwZXJzb25hbCBzaG9wcGVyIHRyYWluZWQgb24gdGhlIGNvbGxlY3RpdmUga25vd2xlZGdlIG9mIHRob3VzYW5kcyBvZiByZWFsIGV4cGVydHMhJyxcbiAgICAgIGNoYXRGb290ZXJUZXh0RmllbGRQbGFjZWhvbGRlclRleHQ6ICdBc2sgbWUgYW55dGhpbmcuLi4nLFxuICAgICAgZGlzY2xhaW1lclRleHQ6ICdUaGlzIGlzIGEgZGlzY2xhaW1lci4uLicsXG4gICAgfSxcbiAgfSxcbn07XG5cbmNvbnN0IEhhcmRjb3B5Q29udGV4dCA9IGNyZWF0ZUNvbnRleHQ8SGFyZGNvcHlDb250ZXh0VHlwZSB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuaW50ZXJmYWNlIEhhcmRjb3B5UHJvdmlkZXJQcm9wcyB7XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG4gIGhhcmRjb3B5T3ZlcnJpZGU/OiBQYXJ0aWFsPFJlY29yZDxXaWRnZXRUeXBlVjMsIEhhcmRjb3B5UmVzcG9uc2U+Pjtcbn1cblxuZXhwb3J0IGNvbnN0IEhhcmRjb3B5UHJvdmlkZXI6IFJlYWN0LkZDPEhhcmRjb3B5UHJvdmlkZXJQcm9wcz4gPSAoe1xuICBjaGlsZHJlbixcbiAgaGFyZGNvcHlPdmVycmlkZSxcbn0pID0+IHtcbiAgY29uc3QgbGFuZ3VhZ2VzID0gdXNlTWVtbygoKSA9PiBuYXZpZ2F0b3IubGFuZ3VhZ2VzLCBbXSk7XG4gIGNvbnN0IFtpc0xvYWRpbmcsIHNldElzTG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGNvbnRleHQgPSB1c2VBdG9tVmFsdWUoYXBwRGV0YWlsc0F0b20pO1xuICBjb25zdCB7IHRyYWNrRXZlbnQgfSA9IHVzZUFtcGxpdHVkZSgpO1xuXG4gIGNvbnN0IHsgZmVhdHVyZUZsYWdTZXJ2aWNlIH0gPSB1c2VGZWF0dXJlRmxhZ1NlcnZpY2UoKTtcbiAgY29uc3QgZ2V0SGFyZGNvcHlGcm9tQmFja2VuZCA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jIChyZXF1ZXN0OiBIYXJkY29weVJlcXVlc3QpOiBQcm9taXNlPEhhcmRjb3B5UmVzcG9uc2U+ID0+IHtcbiAgICAgIGlmIChoYXJkY29weU92ZXJyaWRlPy5bcmVxdWVzdC53aWRnZXRUeXBlXSkge1xuICAgICAgICBMb2dnZXIubG9nSW5mbygnaGFyZGNvcHlDb250ZXh0IHwgdXNpbmcgaGFyZGNvcHkgb3ZlcnJpZGUnLCByZXF1ZXN0LndpZGdldFR5cGUpO1xuICAgICAgICByZXR1cm4gaGFyZGNvcHlPdmVycmlkZVtyZXF1ZXN0LndpZGdldFR5cGVdITtcbiAgICAgIH1cbiAgICAgIGNvbnN0IG92ZXJyaWRlQ29uZmlnVmVyc2lvbiA9XG4gICAgICAgIGdldFF1ZXJ5UGFyYW0oJ3NwaWZmeV9jb25maWdfdmVyc2lvbicpIHx8XG4gICAgICAgIGdldFF1ZXJ5UGFyYW0oJ2Vudml2ZV9jb25maWdfdmVyc2lvbicpIHx8XG4gICAgICAgIHVuZGVmaW5lZDtcbiAgICAgIGNvbnN0IHdpZGdldFRleHRSZXF1ZXN0OiBXaWRnZXRUZXh0UmVxdWVzdCA9IHtcbiAgICAgICAgcmVxdWVzdElkOiB1dWlkKCksXG4gICAgICAgIHdpZGdldFR5cGU6IHJlcXVlc3Qud2lkZ2V0VHlwZSxcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgZmVhdHVyZUZsYWdzOiBmZWF0dXJlRmxhZ1NlcnZpY2U/LmdldEZlYXR1cmVGbGFncygpIHx8IHt9LFxuICAgICAgICBsYW5ndWFnZTogbGFuZ3VhZ2VzWzBdIHx8ICdlbicsXG4gICAgICAgIG92ZXJyaWRlQ29uZmlnVmVyc2lvbixcbiAgICAgICAgdXJsOiB3aW5kb3cubG9jYXRpb24uaHJlZixcbiAgICAgIH07XG4gICAgICB0cmFja0V2ZW50KHtcbiAgICAgICAgZXZlbnROYW1lOiBFbnZpdmVNZXRyaWNzRXZlbnROYW1lLldpZGdldFRleHRSZXF1ZXN0LFxuICAgICAgICBldmVudFByb3BzOiB7XG4gICAgICAgICAgd2lkZ2V0X3R5cGU6IHJlcXVlc3Qud2lkZ2V0VHlwZSxcbiAgICAgICAgICByZXF1ZXN0X2lkOiB3aWRnZXRUZXh0UmVxdWVzdC5yZXF1ZXN0SWQsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgQ29tbWVyY2VBcGlDbGllbnQuZ2V0SGFyZGNvcHkod2lkZ2V0VGV4dFJlcXVlc3QpO1xuICAgICAgICBpZiAocmVzcG9uc2UpIHtcbiAgICAgICAgICBjb25zdCBjb252ZXJ0ZWRSZXNwb25zZSA9IGNvbnZlcnRUb0hhcmRjb3B5UmVzcG9uc2UocmVzcG9uc2UpO1xuICAgICAgICAgIExvZ2dlci5sb2dJbmZvKCdoYXJkY29weUNvbnRleHQgfCBjb252ZXJ0ZWQgcmVzcG9uc2UnLCBjb252ZXJ0ZWRSZXNwb25zZSk7XG4gICAgICAgICAgdHJhY2tFdmVudCh7XG4gICAgICAgICAgICBldmVudE5hbWU6IEVudml2ZU1ldHJpY3NFdmVudE5hbWUuV2lkZ2V0VGV4dFJlc3BvbnNlLFxuICAgICAgICAgICAgZXZlbnRQcm9wczoge1xuICAgICAgICAgICAgICB3aWRnZXRfdHlwZTogcmVxdWVzdC53aWRnZXRUeXBlLFxuICAgICAgICAgICAgICByZXNwb25zZV9pZDogcmVzcG9uc2UucmVzcG9uc2VJZCxcbiAgICAgICAgICAgICAgd2lkZ2V0X3RleHQ6IHJlc3BvbnNlLnZhbHVlcyxcbiAgICAgICAgICAgICAgcmVxdWVzdF9pZDogd2lkZ2V0VGV4dFJlcXVlc3QucmVxdWVzdElkLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm4gY29udmVydGVkUmVzcG9uc2U7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIExvZ2dlci5sb2dFcnJvcignaGFyZGNvcHlDb250ZXh0IHwgZXJyb3IgZ2V0dGluZyBoYXJkY29weSBmcm9tIGJhY2tlbmQnLCBlcnJvcik7XG4gICAgICB9XG4gICAgICBjb25zdCBtb2NrUmVzcG9uc2UgPSBNT0NLX0hBUkRDT1BZX1JFU1BPTlNFW3JlcXVlc3Qud2lkZ2V0VHlwZV07XG4gICAgICBpZiAobW9ja1Jlc3BvbnNlKSB7XG4gICAgICAgIExvZ2dlci5sb2dJbmZvKCdoYXJkY29weUNvbnRleHQgfCBubyByZWFsIHJlc3BvbnNlLCB1c2luZyBtb2NrJywgbW9ja1Jlc3BvbnNlKTtcbiAgICAgICAgcmV0dXJuIG1vY2tSZXNwb25zZTtcbiAgICAgIH1cbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gaGFyZGNvcHkgcmVzcG9uc2UgZm91bmQgZm9yIHdpZGdldCB0eXBlOiAke3JlcXVlc3Qud2lkZ2V0VHlwZX1gKTtcbiAgICB9LFxuICAgIFtjb250ZXh0LCBmZWF0dXJlRmxhZ1NlcnZpY2UsIGhhcmRjb3B5T3ZlcnJpZGUsIGxhbmd1YWdlcywgdHJhY2tFdmVudF0sXG4gICk7XG5cbiAgY29uc3QgZ2V0SGFyZGNvcHkgPSB1c2VDYWxsYmFjayhcbiAgICBhc3luYyAocmVxdWVzdDogSGFyZGNvcHlSZXF1ZXN0KTogUHJvbWlzZTxIYXJkY29weVJlc3BvbnNlPiA9PiB7XG4gICAgICBzZXRJc0xvYWRpbmcodHJ1ZSk7XG4gICAgICBMb2dnZXIubG9nSW5mbygnaGFyZGNvcHlDb250ZXh0IHwgcmV0cmlldmluZyBoYXJkY29weScsIGxhbmd1YWdlcyk7XG5cbiAgICAgIExvZ2dlci5sb2dJbmZvKCdoYXJkY29weUNvbnRleHQgfCByZXF1ZXN0JywgcmVxdWVzdCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGdldEhhcmRjb3B5RnJvbUJhY2tlbmQocmVxdWVzdCk7XG4gICAgICBMb2dnZXIubG9nSW5mbygnaGFyZGNvcHlDb250ZXh0IHwgcmV0dXJuaW5nIGhhcmRjb3B5IHJlc3BvbnNlJywgcmVzcG9uc2UpO1xuICAgICAgaWYgKCFyZXNwb25zZSkge1xuICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIGhhcmRjb3B5IHJlc3BvbnNlIGZvdW5kIGZvciB3aWRnZXQgdHlwZTogJHtyZXF1ZXN0LndpZGdldFR5cGV9YCk7XG4gICAgICB9XG4gICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlO1xuICAgIH0sXG4gICAgW2dldEhhcmRjb3B5RnJvbUJhY2tlbmQsIGxhbmd1YWdlc10sXG4gICk7XG5cbiAgY29uc3QgdmFsdWUgPSB1c2VNZW1vKCgpID0+ICh7IGdldEhhcmRjb3B5LCBpc0xvYWRpbmcgfSksIFtnZXRIYXJkY29weSwgaXNMb2FkaW5nXSk7XG5cbiAgcmV0dXJuIDxIYXJkY29weUNvbnRleHQuUHJvdmlkZXIgdmFsdWU9e3ZhbHVlfT57Y2hpbGRyZW59PC9IYXJkY29weUNvbnRleHQuUHJvdmlkZXI+O1xufTtcblxuZXhwb3J0IGNvbnN0IHVzZUhhcmRjb3B5ID0gKCkgPT4ge1xuICBjb25zdCBjb250ZXh0ID0gdXNlQ29udGV4dChIYXJkY29weUNvbnRleHQpO1xuICBpZiAoIWNvbnRleHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3VzZUhhcmRjb3B5IG11c3QgYmUgdXNlZCB3aXRoaW4gYSBIYXJkY29weVByb3ZpZGVyJyk7XG4gIH1cbiAgcmV0dXJuIGNvbnRleHQ7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFrQ0EsTUFBTSw2QkFBNkIsYUFBMkM7QUFDNUUsUUFBTztFQUNMLFlBQVksU0FBUztFQUNyQixVQUFVLFNBQVM7RUFDbkIsV0FBVyxTQUFTO0VBQ3BCLFFBQVEsT0FBTyxZQUNiLE9BQU8sUUFBUSxTQUFTLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxXQUFXLENBRXBELFlBQVksSUFBSSxFQUNoQixNQUFNLFdBQVcsSUFBSSxNQUFNLEdBQUcsUUFBUSxNQUFNLEtBQUksTUFBSyxFQUFFLE1BQU0sQ0FDOUQsQ0FBQyxDQUNIO0VBQ0Y7O0FBTUgsTUFBTUEseUJBQTBFO0VBQzdFLGFBQWEsbUJBQW1CO0VBQy9CLFlBQVlDLElBQU07RUFDbEIsVUFBVTtFQUNWLFFBQVEsRUFDTixtQkFBbUI7R0FDakI7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNELEVBQ0Y7RUFDRjtFQUNBLGFBQWEseUJBQXlCO0VBQ3JDLFlBQVk7RUFDWixVQUFVO0VBQ1YsUUFBUTtHQUNOLFlBQVk7R0FDWixtQkFBbUI7SUFDakI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNEO0dBQ0Y7RUFDRjtFQUNBLGFBQWEsZ0JBQWdCO0VBQzVCLFlBQVk7RUFDWixVQUFVO0VBQ1YsUUFBUTtHQUNOLFlBQVk7R0FDWix1QkFBdUI7R0FDdkIsbUJBQW1CO0dBQ25CLG1CQUFtQjtHQUNuQiwwQkFBMEI7R0FDMUIsc0JBQXNCO0lBQ3BCO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDRDtHQUNELDBCQUEwQjtHQUMzQjtFQUNGO0VBQ0EsYUFBYSxvQkFBb0I7RUFDaEMsWUFBWTtFQUNaLFVBQVU7RUFDVixRQUFRO0dBQ04sWUFBWTtHQUNaLGNBQWM7R0FDZCxzQkFBc0I7SUFDcEI7SUFDQTtJ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
@@ -4,8 +4,8 @@ const require_newOrgConfigAtom = require('../../atoms/org/newOrgConfigAtom.cjs')
4
4
  const require_useGraphQLConfig = require('../../hooks/GraphQLConfig/useGraphQLConfig.cjs');
5
5
  let react = require("react");
6
6
  react = require_rolldown_runtime.__toESM(react);
7
- let jotai = require("jotai");
8
7
  let react_jsx_runtime = require("react/jsx-runtime");
8
+ let jotai = require("jotai");
9
9
 
10
10
  //#region src/contexts/newOrgConfigContext/newOrgConfigContext.tsx
11
11
  const NewOrgConfigContext = (0, react.createContext)(void 0);
@@ -2,8 +2,8 @@ import { orgShortNameAtom } from "../../atoms/envive/enviveConfig.js";
2
2
  import { newOrgConfigAtom } from "../../atoms/org/newOrgConfigAtom.js";
3
3
  import { useUIConfig } from "../../hooks/GraphQLConfig/useGraphQLConfig.js";
4
4
  import React, { createContext, useContext, useMemo } from "react";
5
- import { useAtomValue, useSetAtom } from "jotai";
6
5
  import { jsx } from "react/jsx-runtime";
6
+ import { useAtomValue, useSetAtom } from "jotai";
7
7
 
8
8
  //#region src/contexts/newOrgConfigContext/newOrgConfigContext.tsx
9
9
  const NewOrgConfigContext = createContext(void 0);