@envive-ai/react-hooks 0.1.3 → 0.1.4

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 (428) hide show
  1. package/dist/adapters/amplitude/index.cjs +13 -13
  2. package/dist/adapters/amplitude/index.d.cts +5 -3
  3. package/dist/adapters/amplitude/index.d.ts +5 -3
  4. package/dist/adapters/amplitude/index.js +10 -10
  5. package/dist/api-B2euFL-5.cjs +269 -0
  6. package/dist/api-XRr_lAG6.js +190 -0
  7. package/dist/application/config/index.cjs +14 -5
  8. package/dist/application/config/index.d.cts +2 -1
  9. package/dist/application/config/index.d.ts +2 -1
  10. package/dist/application/config/index.js +14 -5
  11. package/dist/application/models/graphql/index.cjs +12 -12
  12. package/dist/application/models/graphql/index.d.cts +1 -1
  13. package/dist/application/models/graphql/index.d.ts +1 -1
  14. package/dist/application/models/graphql/index.js +10 -10
  15. package/dist/application/models/guards/api/index.cjs +2 -2
  16. package/dist/application/models/guards/api/index.d.cts +2 -2
  17. package/dist/application/models/guards/api/index.d.ts +2 -2
  18. package/dist/application/models/guards/api/index.js +2 -2
  19. package/dist/application/models/index.cjs +54 -54
  20. package/dist/application/models/index.d.cts +8 -9
  21. package/dist/application/models/index.d.ts +8 -9
  22. package/dist/application/models/index.js +10 -10
  23. package/dist/application/models/utilityTypes/index.cjs +1 -1
  24. package/dist/application/models/utilityTypes/index.d.cts +1 -1
  25. package/dist/application/models/utilityTypes/index.d.ts +1 -1
  26. package/dist/application/models/utilityTypes/index.js +1 -1
  27. package/dist/application/models/variantInfo/index.cjs +1 -1
  28. package/dist/application/models/variantInfo/index.d.cts +1 -1
  29. package/dist/application/models/variantInfo/index.d.ts +1 -1
  30. package/dist/application/models/variantInfo/index.js +1 -1
  31. package/dist/application/service/customerService/index.cjs +2 -2
  32. package/dist/application/service/customerService/index.d.cts +2 -2
  33. package/dist/application/service/customerService/index.d.ts +2 -2
  34. package/dist/application/service/customerService/index.js +2 -2
  35. package/dist/application/service/index.cjs +37 -757
  36. package/dist/application/service/index.d.cts +14 -22
  37. package/dist/application/service/index.d.ts +14 -22
  38. package/dist/application/service/index.js +12 -727
  39. package/dist/application/utils/index.cjs +37 -37
  40. package/dist/application/utils/index.d.cts +13 -13
  41. package/dist/application/utils/index.d.ts +12 -12
  42. package/dist/application/utils/index.js +10 -10
  43. package/dist/atomStore-B1cgmbP0.js +32 -0
  44. package/dist/atomStore-JwGb7pcy.cjs +58 -0
  45. package/dist/atoms/app/index.cjs +16 -16
  46. package/dist/atoms/app/index.d.cts +11 -11
  47. package/dist/atoms/app/index.d.ts +12 -12
  48. package/dist/atoms/app/index.js +10 -10
  49. package/dist/atoms/atomStore/index.cjs +1 -2
  50. package/dist/atoms/atomStore/index.d.cts +2 -1
  51. package/dist/atoms/atomStore/index.d.ts +2 -1
  52. package/dist/atoms/atomStore/index.js +1 -2
  53. package/dist/atoms/chat/index.cjs +40 -40
  54. package/dist/atoms/chat/index.d.cts +37 -37
  55. package/dist/atoms/chat/index.d.ts +38 -38
  56. package/dist/atoms/chat/index.js +10 -10
  57. package/dist/atoms/globalSearch/index.cjs +1 -1
  58. package/dist/atoms/globalSearch/index.d.cts +7 -6
  59. package/dist/atoms/globalSearch/index.d.ts +7 -6
  60. package/dist/atoms/globalSearch/index.js +1 -1
  61. package/dist/atoms/org/index.cjs +37 -40
  62. package/dist/atoms/org/index.d.cts +32 -53
  63. package/dist/atoms/org/index.d.ts +31 -52
  64. package/dist/atoms/org/index.js +11 -12
  65. package/dist/atoms/search/index.cjs +41 -43
  66. package/dist/atoms/search/index.d.cts +9 -10
  67. package/dist/atoms/search/index.d.ts +9 -10
  68. package/dist/atoms/search/index.js +10 -12
  69. package/dist/bandolier-B76-OE75.cjs +1230 -0
  70. package/dist/bandolier-DRn_x1g1.js +1230 -0
  71. package/dist/carpe-kHi4RLB5.cjs +608 -0
  72. package/dist/carpe-qrSU99gq.js +606 -0
  73. package/dist/{chat-CCgyDehy.cjs → chat-BgONoYU7.cjs} +2 -1
  74. package/dist/chat-CLJ4NWcN.js +26 -0
  75. package/dist/{components-CScS7Ii-.cjs → components-BKZbet67.cjs} +2 -1
  76. package/dist/components-CV1fhAkj.js +11 -0
  77. package/dist/config/locators/components/chat/index.cjs +1 -1
  78. package/dist/config/locators/components/chat/index.d.cts +1 -1
  79. package/dist/config/locators/components/chat/index.d.ts +1 -1
  80. package/dist/config/locators/components/chat/index.js +1 -1
  81. package/dist/config/locators/components/chat/variants/index.cjs +2 -1
  82. package/dist/config/locators/components/chat/variants/index.d.cts +2 -1
  83. package/dist/config/locators/components/chat/variants/index.d.ts +2 -1
  84. package/dist/config/locators/components/chat/variants/index.js +2 -1
  85. package/dist/config/locators/components/index.cjs +1 -1
  86. package/dist/config/locators/components/index.d.cts +1 -1
  87. package/dist/config/locators/components/index.d.ts +1 -1
  88. package/dist/config/locators/components/index.js +1 -1
  89. package/dist/config/locators/components/search/index.cjs +2 -1
  90. package/dist/config/locators/components/search/index.d.cts +2 -1
  91. package/dist/config/locators/components/search/index.d.ts +2 -1
  92. package/dist/config/locators/components/search/index.js +2 -1
  93. package/dist/config/locators/index.cjs +4 -4
  94. package/dist/config/locators/index.d.cts +4 -3
  95. package/dist/config/locators/index.d.ts +4 -3
  96. package/dist/config/locators/index.js +4 -4
  97. package/dist/contexts/index.cjs +20 -23
  98. package/dist/contexts/index.d.cts +38 -19
  99. package/dist/contexts/index.d.ts +41 -22
  100. package/dist/contexts/index.js +11 -17
  101. package/dist/contexts-CQDwe3rK.cjs +14333 -0
  102. package/dist/contexts-e2sM-B9g.js +12919 -0
  103. package/dist/coterie-mMirPcHP.js +240 -0
  104. package/dist/coterie-yQ-_JXSw.cjs +240 -0
  105. package/dist/customerService-BG1uNZZ1.cjs +36 -0
  106. package/dist/customerService-BHQRnLhC.js +23 -0
  107. package/dist/custservice-types-C83itZmy.cjs +35 -0
  108. package/dist/custservice-types-DPQ-4TI6.js +23 -0
  109. package/dist/default-8Jfv8ehQ.cjs +199 -0
  110. package/dist/default-C8PQf-38.js +176 -0
  111. package/dist/default-LukSiCz1.js +4 -0
  112. package/dist/default-rJSJ887P.cjs +4 -0
  113. package/dist/divIds-CWkntTsx.js +23 -0
  114. package/dist/{divIds-CFyAjjp3.cjs → divIds-DEL_-qU0.cjs} +2 -1
  115. package/dist/dreamlandBaby-DHltv12Z.cjs +347 -0
  116. package/dist/dreamlandBaby-cG0HM9bt.js +347 -0
  117. package/dist/{embedded-BlXJUbik.cjs → embedded--2L0F4b5.cjs} +2 -1
  118. package/dist/embedded-C5uJqmuD.js +23 -0
  119. package/dist/entrypoints-CNUvSgnk.js +7 -0
  120. package/dist/entrypoints-DM9Sm18O.cjs +19 -0
  121. package/dist/events/index.cjs +1 -1
  122. package/dist/events/index.d.cts +2 -1
  123. package/dist/events/index.d.ts +2 -1
  124. package/dist/events/index.js +1 -1
  125. package/dist/events-ClCDFK7t.js +78 -0
  126. package/dist/events-Da7gpmGv.cjs +90 -0
  127. package/dist/featureFlagService-5wdmW02z.d.ts +18 -0
  128. package/dist/featureFlagService-DaelrXEk.d.cts +18 -0
  129. package/dist/fiveCbd-Cvnwh03g.cjs +614 -0
  130. package/dist/fiveCbd-DhYMlsf9.js +614 -0
  131. package/dist/forLoveAndLemons-C8DuUexW.js +666 -0
  132. package/dist/forLoveAndLemons-DR6a1zjJ.cjs +668 -0
  133. package/dist/{globalSearch-hxbXekus.cjs → globalSearch-BTeZxvk1.cjs} +2 -1
  134. package/dist/globalSearch-b0wC7ZEO.js +14 -0
  135. package/dist/greenpan-B4Pu65kV.js +398 -0
  136. package/dist/greenpan-BL5p6j7f.cjs +398 -0
  137. package/dist/grooveLife-DjKWHoN3.cjs +343 -0
  138. package/dist/grooveLife-JK0TyaPz.js +343 -0
  139. package/dist/homegrownCannabis-DxqSDkmS.js +411 -0
  140. package/dist/homegrownCannabis-ZnfCqW-m.cjs +411 -0
  141. package/dist/hooks/index.cjs +38 -38
  142. package/dist/hooks/index.d.cts +25 -16
  143. package/dist/hooks/index.d.ts +30 -21
  144. package/dist/hooks/index.js +11 -17
  145. package/dist/index-BTK5uzs6.d.cts +98 -0
  146. package/dist/index-BfuO9b0Q.d.ts +749 -0
  147. package/dist/index-BzgkfbNO.d.cts +228 -0
  148. package/dist/index-C62lPpy4.d.cts +25 -0
  149. package/dist/index-CExtydIH.d.ts +9 -0
  150. package/dist/index-CKKkTsms.d.ts +39 -0
  151. package/dist/index-CNsGWfS6.d.cts +749 -0
  152. package/dist/index-CYtsPztZ.d.cts +203 -0
  153. package/dist/index-C_C0tLeD.d.ts +203 -0
  154. package/dist/index-ClJ0nMsR.d.cts +184 -0
  155. package/dist/index-Cx9e-fRi.d.ts +184 -0
  156. package/dist/index-D2VaMPA3.d.ts +98 -0
  157. package/dist/index-D46Rd0io.d.cts +39 -0
  158. package/dist/index-DFL1dIT_.d.ts +7 -0
  159. package/dist/index-DPx8s5YH.d.ts +25 -0
  160. package/dist/index-Dxpscrvz.d.ts +228 -0
  161. package/dist/index-MFbPQ8Ji.d.ts +95 -0
  162. package/dist/index-VSFakgAI.d.cts +95 -0
  163. package/dist/index-jBATkcc_.d.cts +9 -0
  164. package/dist/index-zZjcds15.d.cts +7 -0
  165. package/dist/interceptors/index.cjs +12 -13
  166. package/dist/interceptors/index.d.cts +10 -10
  167. package/dist/interceptors/index.d.ts +10 -10
  168. package/dist/interceptors/index.js +10 -11
  169. package/dist/jackArcher-CXf_IAmC.js +728 -0
  170. package/dist/jackArcher-mGkojXek.cjs +728 -0
  171. package/dist/jordanCraig-BvCvPRoR.js +1787 -0
  172. package/dist/jordanCraig-Dv8pVCiS.cjs +1787 -0
  173. package/dist/kindredBravely-UQP7wiNu.cjs +491 -0
  174. package/dist/kindredBravely-X8F_LNph.js +491 -0
  175. package/dist/kutFromTheKloth-BhYKk3CN.cjs +370 -0
  176. package/dist/kutFromTheKloth-D1xsTSJr.js +370 -0
  177. package/dist/larryAndSerges-1411NuZa.cjs +262 -0
  178. package/dist/larryAndSerges-DVIRLItu.js +262 -0
  179. package/dist/leapsAndRebounds-BJ8mwr33.js +361 -0
  180. package/dist/leapsAndRebounds-UcP9EJVO.cjs +361 -0
  181. package/dist/logger-Dln20ans.cjs +26 -0
  182. package/dist/logger-pdEEY8T2.js +20 -0
  183. package/dist/longevityrx-BFSv9GF5.cjs +321 -0
  184. package/dist/longevityrx-Cp6wleWr.js +321 -0
  185. package/dist/lookOptic-BGhU4910.js +283 -0
  186. package/dist/lookOptic-KieSqskd.cjs +283 -0
  187. package/dist/mantraBrand-CHQw-0nw.cjs +751 -0
  188. package/dist/mantraBrand-DrqG9uqO.js +751 -0
  189. package/dist/medterra-CLG6Co1C.cjs +584 -0
  190. package/dist/medterra-D8ZX9NZC.js +584 -0
  191. package/dist/modells-BzyPwN2m.cjs +485 -0
  192. package/dist/modells-CAfqOCW4.js +485 -0
  193. package/dist/nodeSelector-B3bPtEjX.d.cts +31 -0
  194. package/dist/nodeSelector-BiCDowlK.d.ts +31 -0
  195. package/dist/orgConfigResults--dAwtw3W.d.ts +881 -0
  196. package/dist/orgConfigResults-BL0XBA6x.d.cts +881 -0
  197. package/dist/pressedFloral-DULBuQwR.cjs +662 -0
  198. package/dist/pressedFloral-Dp-7Fk3S.js +662 -0
  199. package/dist/search-filter-types-BNTLVXqQ.d.cts +102 -0
  200. package/dist/search-filter-types-DkmH1TxJ.d.ts +102 -0
  201. package/dist/skinPerfection-BxuYCeJX.js +335 -0
  202. package/dist/skinPerfection-Cd3XZ6By.cjs +335 -0
  203. package/dist/snapSupplements-Bf6htPM0.js +286 -0
  204. package/dist/snapSupplements-ZFnXyMuZ.cjs +286 -0
  205. package/dist/socialProofClasses-DdzG1tZy.js +10 -0
  206. package/dist/socialProofClasses-ky69yppk.cjs +40 -0
  207. package/dist/spanx-CwDPQaGj.js +662 -0
  208. package/dist/spanx-Cyd4qDlK.cjs +664 -0
  209. package/dist/spanxStaging-D43nyAGy.js +846 -0
  210. package/dist/spanxStaging-ijbYnHzr.cjs +849 -0
  211. package/dist/suggestionBarV2-types-CwOXzIKq.js +10 -0
  212. package/dist/{suggestionBarV2-types-DG3Ekk44.cjs → suggestionBarV2-types-Dc4-zJlV.cjs} +2 -1
  213. package/dist/supergoop-BnbFG7hm.cjs +338 -0
  214. package/dist/supergoop-CY043wIg.js +336 -0
  215. package/dist/test-types-CXVJxTeu.d.ts +40 -0
  216. package/dist/test-types-CuOq25VT.d.cts +40 -0
  217. package/dist/types/index.cjs +2 -2
  218. package/dist/types/index.d.cts +2 -2
  219. package/dist/types/index.d.ts +2 -2
  220. package/dist/types/index.js +2 -2
  221. package/dist/types-BF_CJeck.js +177 -0
  222. package/dist/types-CD4LFta-.d.cts +33 -0
  223. package/dist/types-CNH4sfF-.cjs +231 -0
  224. package/dist/types-DBdI0j89.d.ts +33 -0
  225. package/dist/uniqueVintage-Cui74mlJ.js +1212 -0
  226. package/dist/uniqueVintage-R2Jcu1y1.cjs +1214 -0
  227. package/dist/variant-CKVRF2-W.d.ts +13 -0
  228. package/dist/variant-raYuOP4L.d.cts +13 -0
  229. package/dist/venaCbd-o5_vOp4e.js +366 -0
  230. package/dist/venaCbd-r-IxEVc1.cjs +366 -0
  231. package/dist/westonJonBoucher-C95EuCl-.js +423 -0
  232. package/dist/westonJonBoucher-DjGEW3ZB.cjs +423 -0
  233. package/dist/wineEnthusiast-DeTFY8Gm.js +941 -0
  234. package/dist/wineEnthusiast-DvfcV5B3.cjs +941 -0
  235. package/dist/wolfMattress-6xPfOJt3.js +373 -0
  236. package/dist/wolfMattress-BjGnGKjP.cjs +373 -0
  237. package/dist/wolfTactical-Bi3WZu0m.cjs +350 -0
  238. package/dist/wolfTactical-C_F9-oPX.js +350 -0
  239. package/package.json +1 -1
  240. package/src/adapters/amplitude/amplitudeAdapter.ts +32 -9
  241. package/src/adapters/spiffy/commerce/api.ts +17 -8
  242. package/src/adapters/spiffy/commerce/graphql.ts +16 -5
  243. package/src/application/config/generalStaticConfig.ts +5 -2
  244. package/src/application/models/api/orgConfigResults.ts +6 -2
  245. package/src/application/models/validators/validateGraphQLColorsConfig.ts +23 -21
  246. package/src/application/service/cdnService.ts +4 -2
  247. package/src/application/service/index.ts +0 -1
  248. package/src/application/service/pageVariantService.ts +5 -5
  249. package/src/application/service/searchService.ts +9 -2
  250. package/src/application/service/windowChatToggleService.ts +28 -19
  251. package/src/application/service/windowFrontendConfigService.ts +7 -4
  252. package/src/atoms/app/index.ts +26 -17
  253. package/src/atoms/app/variant.ts +1 -0
  254. package/src/atoms/chat/messageQueue.ts +1 -1
  255. package/src/atoms/envive/enviveConfig.ts +81 -0
  256. package/src/atoms/org/graphqlConfig.ts +29 -11
  257. package/src/atoms/org/merchantCss.ts +114 -0
  258. package/src/atoms/org/org.ts +101 -64
  259. package/src/atoms/org/orgPageConfig.ts +9 -6
  260. package/src/atoms/org/orgUIConfig.ts +22 -9
  261. package/src/atoms/search/chatSearch.ts +85 -67
  262. package/src/contexts/chatContext.tsx +4 -1
  263. package/src/contexts/enviveConfigContext.tsx +37 -26
  264. package/src/contexts/enviveCssContext.tsx +20 -0
  265. package/src/contexts/index.ts +2 -0
  266. package/src/contexts/orgConfigContext.tsx +106 -0
  267. package/src/contexts/systemSettingsContext.tsx +2 -2
  268. package/src/contexts/types.ts +12 -9
  269. package/src/hooks/index.ts +1 -0
  270. package/src/hooks/useSearch.tsx +10 -6
  271. package/src/hooks/utils.ts +1 -1
  272. package/src/interceptors/useFormEscalation.ts +26 -9
  273. package/src/types.ts +0 -2
  274. package/dist/api-BtzLHcfU.cjs +0 -268
  275. package/dist/api-kpPTZhV9.js +0 -189
  276. package/dist/atomStore-BNQyGmU_.cjs +0 -57
  277. package/dist/atomStore-TnLPtYns.js +0 -31
  278. package/dist/bandolier-CQrxBHsk.cjs +0 -1230
  279. package/dist/bandolier-Di9DpZ8e.js +0 -1230
  280. package/dist/carpe-3NJOR-Rj.cjs +0 -608
  281. package/dist/carpe-DmWKaIQq.js +0 -606
  282. package/dist/cdnService-BNreZjqy.js +0 -18
  283. package/dist/cdnService-vLxePdrU.cjs +0 -23
  284. package/dist/chat-CCQMmhc1.cjs +0 -5057
  285. package/dist/chat-Dk6KPb1K.js +0 -25
  286. package/dist/chat-H6YcCS4I.js +0 -4113
  287. package/dist/components-DAQxVIn9.js +0 -10
  288. package/dist/coterie-D0UFsFC5.cjs +0 -240
  289. package/dist/coterie-JblRmIZL.js +0 -240
  290. package/dist/customerService-C4wc0glQ.js +0 -22
  291. package/dist/customerService-zsDlp7g2.cjs +0 -35
  292. package/dist/custservice-types-D8Npo-5Z.js +0 -22
  293. package/dist/custservice-types-E9_OSaZ7.cjs +0 -34
  294. package/dist/default-C5ZTV8HA.cjs +0 -4
  295. package/dist/default-DPv8m-eQ.js +0 -175
  296. package/dist/default-DRKBosow.cjs +0 -198
  297. package/dist/default-ao0vRl0W.js +0 -4
  298. package/dist/divIds-BWvq-i6I.js +0 -22
  299. package/dist/dreamlandBaby-CyS8oW8X.js +0 -347
  300. package/dist/dreamlandBaby-y7kSvwH2.cjs +0 -347
  301. package/dist/embedded-C1jvFj3v.js +0 -22
  302. package/dist/entrypoints-CmmOszXO.js +0 -6
  303. package/dist/entrypoints-fowCLUT2.cjs +0 -18
  304. package/dist/enviveConfigContext-Bs8kepnO.cjs +0 -48
  305. package/dist/enviveConfigContext-CWVdVWKW.js +0 -34
  306. package/dist/events-DgFzlVJR.js +0 -77
  307. package/dist/events-bH-24eRW.cjs +0 -89
  308. package/dist/featureFlagService-CroFRxvD.d.cts +0 -17
  309. package/dist/featureFlagService-NkJ2fuEj.d.ts +0 -17
  310. package/dist/featureGates-BMWXU0dS.d.ts +0 -90
  311. package/dist/featureGates-N_gyHCTn.d.cts +0 -90
  312. package/dist/fiveCbd-CXVuIBiZ.cjs +0 -614
  313. package/dist/fiveCbd-Cyc3-Ab9.js +0 -614
  314. package/dist/forLoveAndLemons-CxQS0USq.cjs +0 -668
  315. package/dist/forLoveAndLemons-D8mcgmdk.js +0 -666
  316. package/dist/frontendConfig-KeNqU1wa.d.cts +0 -790
  317. package/dist/frontendConfig-cPvCTWm6.d.ts +0 -790
  318. package/dist/globalSearch-BC0rOX3E.js +0 -13
  319. package/dist/greenpan-JM6SHcqO.js +0 -398
  320. package/dist/greenpan-eIzyxVsn.cjs +0 -398
  321. package/dist/grooveLife-BmsUc2cD.js +0 -343
  322. package/dist/grooveLife-KdTizVUn.cjs +0 -343
  323. package/dist/homegrownCannabis-C0GDai4r.cjs +0 -411
  324. package/dist/homegrownCannabis-a9udocBT.js +0 -411
  325. package/dist/hooks-DjOa7ihH.cjs +0 -7331
  326. package/dist/hooks-fneW8SWw.js +0 -7152
  327. package/dist/index-BQErGgfM.d.cts +0 -202
  328. package/dist/index-BdNKc2ix.d.cts +0 -8
  329. package/dist/index-BrXuc_Ck.d.cts +0 -24
  330. package/dist/index-C4zjAR1c.d.cts +0 -227
  331. package/dist/index-CGB6CAmr.d.ts +0 -6
  332. package/dist/index-CIco0cCQ.d.ts +0 -183
  333. package/dist/index-COG1kOZG.d.ts +0 -749
  334. package/dist/index-CVxe7FpL.d.cts +0 -6
  335. package/dist/index-Cn1SeI5y.d.cts +0 -183
  336. package/dist/index-CnqHN_jz.d.ts +0 -202
  337. package/dist/index-Cqg6ltII.d.ts +0 -38
  338. package/dist/index-DE_7Q8qK.d.ts +0 -94
  339. package/dist/index-Da0UzyI9.d.ts +0 -24
  340. package/dist/index-DbWWcYax.d.cts +0 -749
  341. package/dist/index-DtoVXd6O.d.cts +0 -97
  342. package/dist/index-JClBRnSX.d.cts +0 -94
  343. package/dist/index-ghzD_356.d.ts +0 -8
  344. package/dist/index-hdbCEjYy.d.cts +0 -38
  345. package/dist/index-luJrHgPN.d.ts +0 -97
  346. package/dist/index-tfRj22E1.d.ts +0 -227
  347. package/dist/jackArcher-B6OJ0N3a.cjs +0 -728
  348. package/dist/jackArcher-B9fe4Hv8.js +0 -728
  349. package/dist/jordanCraig-0CB_m_ts.cjs +0 -1787
  350. package/dist/jordanCraig-DNm1iw1L.js +0 -1787
  351. package/dist/kindredBravely-CZgt7DJA.js +0 -491
  352. package/dist/kindredBravely-KvYPbckZ.cjs +0 -491
  353. package/dist/kutFromTheKloth-BxgtWZs9.cjs +0 -370
  354. package/dist/kutFromTheKloth-SmteSZjk.js +0 -370
  355. package/dist/larryAndSerges-6O_u3L90.cjs +0 -261
  356. package/dist/larryAndSerges-DO-zG8ES.js +0 -261
  357. package/dist/leapsAndRebounds-BK62AmXw.js +0 -361
  358. package/dist/leapsAndRebounds-gPsWVUmQ.cjs +0 -361
  359. package/dist/logger-Be0NyKaY.cjs +0 -25
  360. package/dist/logger-BexDfK3W.js +0 -19
  361. package/dist/longevityrx-DjKbwJo3.cjs +0 -321
  362. package/dist/longevityrx-eq5TeUcy.js +0 -321
  363. package/dist/lookOptic-BPPqms_j.cjs +0 -283
  364. package/dist/lookOptic-jRpBXQCN.js +0 -283
  365. package/dist/mantraBrand-BZOZfkUK.js +0 -751
  366. package/dist/mantraBrand-Cp8zptkj.cjs +0 -751
  367. package/dist/medterra-BHYCBgvQ.cjs +0 -584
  368. package/dist/medterra-CShe6CLY.js +0 -584
  369. package/dist/modells-DE7-gmjK.cjs +0 -485
  370. package/dist/modells-DFyJxNwT.js +0 -485
  371. package/dist/nodeSelector-DpKXszfU.d.ts +0 -30
  372. package/dist/nodeSelector-vKB44CDB.d.cts +0 -30
  373. package/dist/org-Bkn6fl6I.cjs +0 -106
  374. package/dist/org-CX8HFbc9.js +0 -63
  375. package/dist/pressedFloral-BMkCVs8c.cjs +0 -662
  376. package/dist/pressedFloral-aK9br-LF.js +0 -662
  377. package/dist/search-DtIFZeMA.cjs +0 -743
  378. package/dist/search-eWwg8pNn.js +0 -542
  379. package/dist/search-filter-types-ByJnFPc4.d.cts +0 -101
  380. package/dist/search-filter-types-DPgeG8FS.d.ts +0 -101
  381. package/dist/skinPerfection-B9G6yLM2.js +0 -335
  382. package/dist/skinPerfection-BBC1q65Z.cjs +0 -335
  383. package/dist/snapSupplements-D7hx6Kgj.cjs +0 -286
  384. package/dist/snapSupplements-DKvJl__T.js +0 -286
  385. package/dist/socialProofClasses-BYLiEXpU.cjs +0 -39
  386. package/dist/socialProofClasses-CkJufEGb.js +0 -9
  387. package/dist/spanx-D-ZKkxjM.cjs +0 -664
  388. package/dist/spanx-yl7YfVrf.js +0 -662
  389. package/dist/spanxStaging-CXeIg6zI.cjs +0 -849
  390. package/dist/spanxStaging-DzGXL9wD.js +0 -846
  391. package/dist/suggestionBarV2-types-B0RbMStE.js +0 -9
  392. package/dist/supergoop-CSpDPOpl.cjs +0 -337
  393. package/dist/supergoop-D0UkuRiA.js +0 -335
  394. package/dist/test-types-C9b_OdfO.d.ts +0 -39
  395. package/dist/test-types-CpKCxk8U.d.cts +0 -39
  396. package/dist/types-BE4faOO_.d.cts +0 -32
  397. package/dist/types-C3S1H4hl.js +0 -176
  398. package/dist/types-TD8g7LnH.d.ts +0 -32
  399. package/dist/types-lcjuhDBt.cjs +0 -230
  400. package/dist/uniqueVintage-DygVpCqU.cjs +0 -1214
  401. package/dist/uniqueVintage-_n0FZFVj.js +0 -1212
  402. package/dist/useMessageInterceptor-BP6gzo8a.js +0 -57
  403. package/dist/useMessageInterceptor-BnUG2Pzt.cjs +0 -72
  404. package/dist/variant-DH4zusMi.d.cts +0 -12
  405. package/dist/variant-DTEqSBHd.d.ts +0 -12
  406. package/dist/variantInfo-BTvC6CQh.js +0 -1
  407. package/dist/variantInfo-Cz2YXraO.cjs +0 -0
  408. package/dist/venaCbd-BS0dvdBm.js +0 -366
  409. package/dist/venaCbd-Pqg0bj-P.cjs +0 -366
  410. package/dist/westonJonBoucher-CLw8Hy6u.js +0 -423
  411. package/dist/westonJonBoucher-CeA0jwxe.cjs +0 -423
  412. package/dist/wineEnthusiast-M9P18d1w.js +0 -941
  413. package/dist/wineEnthusiast-gHBaQMbe.cjs +0 -941
  414. package/dist/wolfMattress-BQHjoQYu.js +0 -373
  415. package/dist/wolfMattress-CdmN-Evm.cjs +0 -373
  416. package/dist/wolfTactical-Cc2ZLBRh.js +0 -350
  417. package/dist/wolfTactical-dObnPgAG.cjs +0 -350
  418. package/src/application/service/environmentService.ts +0 -51
  419. package/src/extension.ts +0 -63
  420. package/src/initialize.ts +0 -163
  421. package/src/main.tsx +0 -108
  422. package/src/merchants/uniqueVintage/views/useUniqueVintageChatSearch.ts +0 -147
  423. /package/dist/{atomStore-FSZd_20F.js → locators-Dc5ZT0aF.js} +0 -0
  424. /package/dist/{atomStore-B3tsg6mF.cjs → locators-lQMJj830.cjs} +0 -0
  425. /package/dist/{locators-C2DX_nX6.js → utilityTypes-BVikejDo.js} +0 -0
  426. /package/dist/{locators-CUpyd9Wt.cjs → utilityTypes-C4h2wgAK.cjs} +0 -0
  427. /package/dist/{utilityTypes-DMdsI0DG.cjs → variantInfo-CNRTY0gH.cjs} +0 -0
  428. /package/dist/{utilityTypes-UWdNHElu.js → variantInfo-CzhR5W6h.js} +0 -0
@@ -0,0 +1,1212 @@
1
+ import "./logger-pdEEY8T2.js";
2
+ import "./api-XRr_lAG6.js";
3
+ import { CdnService, ChatElementDisplayLocation, DOMInsertionType, FeatureGates, GridInsertionType } from "./contexts-e2sM-B9g.js";
4
+ import { CategoryExtractorType, ColorNames, CustomerServiceIntegrationMode, CustomerServiceType, OrgShortName, PageVariantTestType, WidgetType, colorVar } from "./types-BF_CJeck.js";
5
+ import "./atomStore-B1cgmbP0.js";
6
+ import "./customerService-BHQRnLhC.js";
7
+ import "./globalSearch-b0wC7ZEO.js";
8
+ import "./utilityTypes-BVikejDo.js";
9
+ import "./variantInfo-CzhR5W6h.js";
10
+ import "./events-ClCDFK7t.js";
11
+ import { SuggestionBarLocationForMetrics } from "./suggestionBarV2-types-CwOXzIKq.js";
12
+ import { BOTTOM_REVIEWS_BAR_ID, CHAT_PREVIEW_CONTAINER_ID, GLOBAL_SEARCH_ENTRYPOINT_ID, MOBILE_GLOBAL_SEARCH_ENTRYPOINT_ID, TOP_SUGGESTION_BAR_PDP_ID } from "./divIds-CWkntTsx.js";
13
+ import "./chat-CLJ4NWcN.js";
14
+ import "./components-CV1fhAkj.js";
15
+ import { BOTTOM_SUGGESTION_BAR_TESTID, CHAT_PREVIEW_TESTID, GLOBAL_SEARCH_ENTRYPOINT_TESTID, TOP_SUGGESTION_BAR_TESTID } from "./embedded-C5uJqmuD.js";
16
+ import "./locators-Dc5ZT0aF.js";
17
+ import { defaultOrgUIConfig } from "./default-C8PQf-38.js";
18
+ import { PageVisitCategory } from "@spiffy-ai/commerce-api-client";
19
+
20
+ //#region src/merchants/uniqueVintage/uniqueVintage.ts
21
+ const uniqueVintageColors = {
22
+ [ColorNames.TextPrimary]: "#000000",
23
+ [ColorNames.TextSecondary]: "#595959",
24
+ [ColorNames.TextAccent]: "#1D4A4F",
25
+ [ColorNames.TextLink]: "#222222",
26
+ [ColorNames.TextLight]: "#FFFFFF",
27
+ [ColorNames.BackgroundPrimary]: "#FADDD5",
28
+ [ColorNames.BackgroundSecondary]: "#FFFDF3",
29
+ [ColorNames.BackgroundSecondaryDark]: "#EBE9E0",
30
+ [ColorNames.BackgroundTertiary]: "#1D4A4F",
31
+ [ColorNames.BackgroundDark]: "#222222",
32
+ [ColorNames.BackgroundLight]: "#FFFFFF",
33
+ [ColorNames.BackgroundSaturated]: "#FADDD5",
34
+ [ColorNames.BorderLight]: "#E7E7E7",
35
+ [ColorNames.BorderMedium]: "#C2C4C8",
36
+ [ColorNames.BorderDark]: "#595959",
37
+ [ColorNames.BorderOutline]: "#222222",
38
+ [ColorNames.AccentPrimary]: "#FADDD5",
39
+ [ColorNames.AccentSecondary]: "#C0E7D6"
40
+ };
41
+ const uniqueVintageOrgUIConfig = () => {
42
+ const defaultUniqueVintageOrgConfig = defaultOrgUIConfig(OrgShortName.UniqueVintage);
43
+ return {
44
+ ...defaultUniqueVintageOrgConfig,
45
+ chatMessageConfig: {
46
+ ...defaultUniqueVintageOrgConfig.chatMessageConfig,
47
+ assistantChatTitle: "Unique Vintage AI",
48
+ variant: "standard"
49
+ },
50
+ chatHeader: {
51
+ ...defaultUniqueVintageOrgConfig.chatHeader,
52
+ chevronColor: colorVar(ColorNames.BackgroundDark),
53
+ expandedColor: colorVar(ColorNames.BackgroundPrimary),
54
+ imageSrc: CdnService.getAssetURL("unique-vintage-long-logo.png", OrgShortName.UniqueVintage)
55
+ },
56
+ chatPreviewConfig: {
57
+ ...defaultUniqueVintageOrgConfig.chatPreviewConfig,
58
+ variant: "filled",
59
+ filledBackgroundColor: colorVar(ColorNames.AccentSecondary),
60
+ iconFillColor: colorVar(ColorNames.AccentPrimary),
61
+ buttonTextColor: colorVar(ColorNames.TextLight),
62
+ buttonBackgroundColor: colorVar(ColorNames.BackgroundDark),
63
+ buttonTextHoverColor: colorVar(ColorNames.TextPrimary),
64
+ buttonBackgroundHoverColor: colorVar(ColorNames.BackgroundSecondaryDark),
65
+ topMargin: 10,
66
+ copies: {
67
+ plp: [
68
+ "a classic swimsuit that's perfect for poolside glamour?",
69
+ "a skirt that twirls like it's straight out of the '50s?",
70
+ "a handbag inspired by iconic eras?",
71
+ "a dress that turns every head in the room?"
72
+ ],
73
+ pdp: [
74
+ "the vintage-inspired details that make this piece timeless?",
75
+ "what makes this style a true throwback treasure?",
76
+ "what luxe materials will elevate your look?",
77
+ "the size that's right for you?"
78
+ ]
79
+ },
80
+ staticSuggestionCopies: {
81
+ plp: [
82
+ "What casual vintage pieces work for everyday wear?",
83
+ "What pieces can I mix and match for a vintage-inspired wardrobe?",
84
+ "What shoes are perfect for date nights and special occasions?",
85
+ "What accessories can I add to elevate my vintage look?"
86
+ ],
87
+ pdp: [
88
+ "What size will give me the right fit?",
89
+ "How do I keep this piece in perfect condition for years to come?",
90
+ "What features makes this piece the ideal statement for a vintage lover?",
91
+ "How does this piece embody the spirit of past eras with modern style?"
92
+ ]
93
+ },
94
+ headerConfig: {
95
+ title: "Shopping Assistant",
96
+ sparklesColor: void 0,
97
+ imageHeight: 24,
98
+ imageSrc: CdnService.getAssetURL("unique-vintage-long-logo.png", OrgShortName.UniqueVintage)
99
+ },
100
+ footerConfig: {
101
+ ...defaultUniqueVintageOrgConfig.chatPreviewConfig.footerConfig,
102
+ replyButtonText: "What can I help you find?",
103
+ replyButtonIcon: "magnifyingGlass",
104
+ hasFade: false
105
+ }
106
+ },
107
+ floatingEntrypointConfig: {
108
+ ...defaultUniqueVintageOrgConfig.floatingEntrypointConfig,
109
+ showOption: "always",
110
+ expandedColor: colorVar(ColorNames.BorderOutline),
111
+ iconStrokeColor: colorVar(ColorNames.BackgroundDark),
112
+ iconFillColor: colorVar(ColorNames.BackgroundDark),
113
+ expansionText: {
114
+ pdp: "Will this complete your retro wardrobe?",
115
+ plp: "What vintage treasure will you find today?"
116
+ }
117
+ },
118
+ productCardConfig: { ...defaultUniqueVintageOrgConfig.productCardConfig },
119
+ productReviewConfig: {
120
+ ...defaultUniqueVintageOrgConfig.productReviewConfig,
121
+ colorVariant: "brand",
122
+ incentivizedReviewFlag: false
123
+ },
124
+ welcomeSectionConfig: {
125
+ ...defaultUniqueVintageOrgConfig.welcomeSectionConfig,
126
+ title: "Welcome to Unique Vintage AI!",
127
+ colorVariant: "brand",
128
+ subtitle: "Hello, darling! I'm here to help you find everything you need to channel your unique, vintage-inspired style. Whether you're searching for the perfect outfit, need sizing advice, or just want to explore fabulous accessories, let's make your shopping experience as glamorous as you are!"
129
+ },
130
+ customerServiceIntegration: {
131
+ integrationMode: CustomerServiceIntegrationMode.simple,
132
+ provider: CustomerServiceType.zowie
133
+ },
134
+ conversationalSearch: {
135
+ enabled: true,
136
+ replyInput: {
137
+ sendIcon: "search",
138
+ placeholder: "What can I help you find?"
139
+ },
140
+ entrypointContainer: "id|chat-search-entrypoint",
141
+ productGridContainer: "id|chat-search-product-page",
142
+ searchContent: "query|.ss__autocomplete--target",
143
+ pageContent: "id|MainContent",
144
+ generalSearchBtn: "query|button.modal__close-button"
145
+ },
146
+ searchConfig: {
147
+ enableGlobalSearch: true,
148
+ searchFilterConfig: [
149
+ {
150
+ filterId: "color",
151
+ displayName: "Color",
152
+ attribute: "colors",
153
+ type: "dynamic",
154
+ sorting: { type: "alphabetic" }
155
+ },
156
+ {
157
+ filterId: "size",
158
+ displayName: "Size",
159
+ type: "dynamic",
160
+ attribute: "sizes",
161
+ sorting: {
162
+ type: "custom",
163
+ map: {
164
+ "One Size": 10,
165
+ "XXS / 0": 20,
166
+ "XS / 2": 30,
167
+ "S / 4": 40,
168
+ "M / 6 - 8": 50,
169
+ "L / 10 - 12": 60,
170
+ "XL / 14": 70,
171
+ "1X / 16": 80,
172
+ "2X / 18": 90,
173
+ "3X / 20": 100,
174
+ "4X / 22 - 24": 110,
175
+ "5X / 26": 120,
176
+ "6X": 130
177
+ }
178
+ }
179
+ },
180
+ {
181
+ filterId: "price",
182
+ displayName: "Price",
183
+ type: "price",
184
+ bucketSize: 50
185
+ }
186
+ ]
187
+ },
188
+ merchantOverrideCss: `
189
+ #spiffy-modal-container {
190
+ z-index: 2147483001 !important;
191
+ }
192
+ .spiffy-star-rating-star {
193
+ fill: var(--spiffy-colors-text-accent) !important;
194
+ }
195
+ .spiffy-product-review-header-reviewer {
196
+ color: var(--spiffy-colors-text-primary) !important;
197
+ }
198
+
199
+ /* WelcomeSection light text override */
200
+ .spiffy-welcome-section-message-title {
201
+ color: var(--spiffy-colors-text-light) !important;
202
+ }
203
+ .spiffy-welcome-section-message-subtitle {
204
+ color: var(--spiffy-colors-text-light) !important;
205
+ }
206
+
207
+ #spiffy-ai-chat-preview {
208
+ display: block;
209
+ }
210
+ #chat-search-product-page {
211
+ display: block;
212
+ }
213
+ #chat-search-nav-entrypoint {
214
+ display: flex;
215
+ }
216
+ #spiffy-ai-chat-preview.is-pdp {
217
+ padding-top: 8px;
218
+ border-top: solid 1px var(--spiffy-colors-border-light);
219
+ }
220
+ #spiffy-top-suggestion-bar-id {
221
+ display: block;
222
+ }
223
+ #spiffy-ai-chat-preview {
224
+ display: block;
225
+ }
226
+ #spiffy-bottom-reviews-bar-id {
227
+ display: block;
228
+ }
229
+ .spiffy-chat-search-entrypoint-container {
230
+ background: var(--spiffy-colors-background-primary) !important;
231
+ border-color: var(--spiffy-colors-background-dark) !important;
232
+ }
233
+ .spiffy-chat-search-entrypoint-container .spiffy-button-base-button {
234
+ color: var(--spiffy-colors-text-primary) !important;
235
+ border: none;
236
+ }
237
+ .spiffy-chat-search-entrypoint-text p {
238
+ font-family: 'Bookmania-SemiBold' !important;
239
+ font-size: 16px !important;
240
+ }
241
+ #spiffy-ai-chat-preview-contents h1, h2, h3, h4, h5, h6 {
242
+ --chakra-fonts-heading: 'Bookmania-Regular', 'Poppins', sans-serif;
243
+ }
244
+ .spiffy-headline {
245
+ font-family: 'Bookmania-Regular', 'Poppins', sans-serif;
246
+ }
247
+ #spiffy-model-container h1, h2, h3, h4, h5, h6 {
248
+ font-family: var(--chakra-fonts-heading);
249
+ }
250
+ #spiffy-model-container h1, h2, h3, h4, h5, h6 {
251
+ --chakra-fonts-heading: 'Bookmania-Regular', 'Poppins', sans-serif;
252
+ }
253
+ .spiffy-suggestion-button-question-class {
254
+ border: 1px solid var(--spiffy-colors-border-light);
255
+ }
256
+ .spiffy-tag-pill-text {
257
+ color: var(--spiffy-colors-text-light) !important;
258
+ }
259
+ #return-to-results-button {
260
+ display: block;
261
+ }
262
+ .spiffy-back-to-results-button {
263
+ margin-left: 30px;
264
+ margin-top: 30px;
265
+ @media (max-width: 768px) {
266
+ margin-left: 20px;
267
+ margin-top: 20px;
268
+ }
269
+ }
270
+ @media (max-width: 992px) {
271
+ #chat-search-entrypoint {
272
+ display: none;
273
+ }
274
+ }
275
+ #chat-search-entrypoint-mobile {
276
+ display: none;
277
+ }
278
+ .ss__autocomplete--active #chat-search-entrypoint-mobile {
279
+ display: flex;
280
+ }
281
+ .spiffy-product-card-title {
282
+ font-family: var(--chakra-fonts-heading);
283
+ color: var(--spiffy-colors-text-link);
284
+ }
285
+ .spiffy-product-card-text-color {
286
+ color: var(--spiffy-colors-text-secondary);
287
+ }
288
+
289
+ .spiffy-chat-header-close-button {
290
+ color: var(--spiffy-colors-background-primary);
291
+ background-color: var(--spiffy-colors-background-tertiary);
292
+ }
293
+
294
+ #spiffy-top-suggestion-bar-contents .spiffy-suggestion-button-question-class span {
295
+ color: var(--spiffy-colors-text-accent) !important;
296
+ }
297
+
298
+ #spiffy-top-suggestion-bar-contents .spiffy-suggestion-button-question-class svg {
299
+ fill: var(--spiffy-colors-text-accent) !important;
300
+ stroke: var(--spiffy-colors-text-accent) !important;
301
+ }
302
+
303
+ #spiffy-bottom-suggestion-bar-contents .spiffy-suggestion-button-question-class svg {
304
+ fill: var(--spiffy-colors-accent-primary) !important;
305
+ stroke: var(--spiffy-colors-accent-primary) !important;
306
+ }
307
+
308
+ #spiffy-bottom-suggestion-bar-contents .spiffy-suggestion-button-question-class:hover svg {
309
+ fill: var(--spiffy-colors-text-link) !important;
310
+ stroke: var(--spiffy-colors-text-link) !important;
311
+ }
312
+
313
+ #spiffy-ai-global-search-entrypoint.global-entry-desktop {
314
+ display: block;
315
+ }
316
+ #spiffy-ai-global-search-entrypoint-mobile.global-entry-mobile {
317
+ display: none;
318
+ }
319
+
320
+ @media (max-width: 992px) {
321
+ #spiffy-ai-global-search-entrypoint.global-entry-desktop {
322
+ display: none;
323
+ }
324
+ #spiffy-ai-global-search-entrypoint-mobile.global-entry-mobile {
325
+ display: block;
326
+ }
327
+ }
328
+
329
+ #spiffy-ai-global-search-entrypoint.global-entry-desktop .spiffy-global-search-input-container {
330
+ height: 80px;
331
+ }
332
+
333
+ .spiffy-global-search-input-container .spiffy-global-search-text {
334
+ font-family: "Poly", serif;
335
+ color: var(--spiffy-colors-text-link) !important;
336
+ font-weight: 500;
337
+ line-height: 80px;
338
+ padding-top: 6px;
339
+ }
340
+
341
+ .spiffy-search-overlay-content .spiffy-headline {
342
+ font-family: "Poly", serif;
343
+ @media (min-width: 480px) {
344
+ font-size: 32px;
345
+ }
346
+ }
347
+
348
+ .spiffy-search-overlay-content .spiffy-body-text {
349
+ font-family: "Poly", serif;
350
+ }
351
+
352
+ .spiffy-global-search-input-container svg {
353
+ width: 26px;
354
+ }
355
+ `
356
+ };
357
+ };
358
+ const uniqueVintagePageConfig = () => ({
359
+ pageVariants: [
360
+ {
361
+ variantId: "search-results",
362
+ variantType: "page_visit",
363
+ variantTests: [
364
+ { testType: PageVariantTestType.ShopifyPLP },
365
+ {
366
+ testType: PageVariantTestType.QueryParam,
367
+ queryParam: "q"
368
+ },
369
+ {
370
+ testType: PageVariantTestType.PageCategory,
371
+ extractor: {
372
+ type: CategoryExtractorType.VisitCategoryDefault,
373
+ value: PageVisitCategory.Other
374
+ }
375
+ }
376
+ ],
377
+ widgetMounting: []
378
+ },
379
+ {
380
+ variantId: "plp-global-search",
381
+ variantType: "plp",
382
+ variantTests: [{ testType: PageVariantTestType.ShopifyPLP }, {
383
+ testType: PageVariantTestType.FeatureGate,
384
+ featureGate: FeatureGates.IsGlobalSearchEnabled
385
+ }],
386
+ plpIdExtractor: "shopify-collection-id",
387
+ widgetMounting: [
388
+ {
389
+ mountingConfigId: "globalSearchEntryPoint",
390
+ widgetConfigId: "globalSearchEntryPoint"
391
+ },
392
+ {
393
+ mountingConfigId: "globalSearchEntryPointMobile",
394
+ widgetConfigId: "globalSearchEntryPointMobile"
395
+ },
396
+ {
397
+ mountingConfigId: "chatPreviewPLP",
398
+ widgetConfigId: "chatPreviewPLP"
399
+ }
400
+ ]
401
+ },
402
+ {
403
+ variantId: "plp-search",
404
+ variantType: "plp",
405
+ variantTests: [{
406
+ testType: PageVariantTestType.FeatureGate,
407
+ featureGate: FeatureGates.IsNewFeatureEnabled
408
+ }, { testType: PageVariantTestType.ShopifyPLP }],
409
+ plpIdExtractor: "shopify-collection-id",
410
+ widgetMounting: [{
411
+ mountingConfigId: "chatPreviewPLP",
412
+ widgetConfigId: "searchPromptPLP"
413
+ }]
414
+ },
415
+ {
416
+ variantId: "plp",
417
+ variantType: "plp",
418
+ variantTests: [{ testType: PageVariantTestType.ShopifyPLP }],
419
+ plpIdExtractor: "shopify-collection-id",
420
+ widgetMounting: [{
421
+ mountingConfigId: "chatPreviewPLP",
422
+ widgetConfigId: "chatPreviewPLP"
423
+ }]
424
+ },
425
+ {
426
+ variantId: "pdpDressesHasReviewsGlobalSearch",
427
+ variantType: "pdp",
428
+ variantTests: [
429
+ { testType: PageVariantTestType.ShopifyPDP },
430
+ {
431
+ testType: PageVariantTestType.InCollection,
432
+ collections: ["dresses"]
433
+ },
434
+ {
435
+ testType: PageVariantTestType.HasReviews,
436
+ reviewMinimum: 4
437
+ },
438
+ {
439
+ testType: PageVariantTestType.FeatureGate,
440
+ featureGate: FeatureGates.IsGlobalSearchEnabled
441
+ }
442
+ ],
443
+ productIdExtractor: "shopify-product-id",
444
+ widgetMounting: [
445
+ {
446
+ mountingConfigId: "globalSearchEntryPoint",
447
+ widgetConfigId: "globalSearchEntryPoint"
448
+ },
449
+ {
450
+ mountingConfigId: "globalSearchEntryPointMobile",
451
+ widgetConfigId: "globalSearchEntryPointMobile"
452
+ },
453
+ {
454
+ mountingConfigId: "topSuggestionBarPDP",
455
+ widgetConfigId: "topSuggestionsBarDressesHasReviews"
456
+ },
457
+ {
458
+ mountingConfigId: "chatPreviewPDP",
459
+ widgetConfigId: "chatPreviewPDP"
460
+ },
461
+ {
462
+ mountingConfigId: "bottomSuggestionBarPDP",
463
+ widgetConfigId: "bottomSuggestionsBar"
464
+ }
465
+ ]
466
+ },
467
+ {
468
+ variantId: "pdpDressesNoReviewsGlobalSearch",
469
+ variantType: "pdp",
470
+ variantTests: [
471
+ { testType: PageVariantTestType.ShopifyPDP },
472
+ {
473
+ testType: PageVariantTestType.InCollection,
474
+ collections: ["dresses"]
475
+ },
476
+ {
477
+ testType: PageVariantTestType.FeatureGate,
478
+ featureGate: FeatureGates.IsGlobalSearchEnabled
479
+ }
480
+ ],
481
+ productIdExtractor: "shopify-product-id",
482
+ widgetMounting: [
483
+ {
484
+ mountingConfigId: "globalSearchEntryPoint",
485
+ widgetConfigId: "globalSearchEntryPoint"
486
+ },
487
+ {
488
+ mountingConfigId: "globalSearchEntryPointMobile",
489
+ widgetConfigId: "globalSearchEntryPointMobile"
490
+ },
491
+ {
492
+ mountingConfigId: "topSuggestionBarPDP",
493
+ widgetConfigId: "topSuggestionsBarDressesNoReviews"
494
+ },
495
+ {
496
+ mountingConfigId: "chatPreviewPDP",
497
+ widgetConfigId: "chatPreviewPDP"
498
+ },
499
+ {
500
+ mountingConfigId: "bottomSuggestionBarPDP",
501
+ widgetConfigId: "bottomSuggestionsBar"
502
+ }
503
+ ]
504
+ },
505
+ {
506
+ variantId: "pdpSwimwearHasReviewsGlobalSearch",
507
+ variantType: "pdp",
508
+ variantTests: [
509
+ { testType: PageVariantTestType.ShopifyPDP },
510
+ {
511
+ testType: PageVariantTestType.InCollection,
512
+ collections: ["swim-html"]
513
+ },
514
+ {
515
+ testType: PageVariantTestType.HasReviews,
516
+ reviewMinimum: 4
517
+ },
518
+ {
519
+ testType: PageVariantTestType.FeatureGate,
520
+ featureGate: FeatureGates.IsGlobalSearchEnabled
521
+ }
522
+ ],
523
+ productIdExtractor: "shopify-product-id",
524
+ widgetMounting: [
525
+ {
526
+ mountingConfigId: "globalSearchEntryPoint",
527
+ widgetConfigId: "globalSearchEntryPoint"
528
+ },
529
+ {
530
+ mountingConfigId: "globalSearchEntryPointMobile",
531
+ widgetConfigId: "globalSearchEntryPointMobile"
532
+ },
533
+ {
534
+ mountingConfigId: "topSuggestionBarPDP",
535
+ widgetConfigId: "topSuggestionsBarSwimwearHasReviews"
536
+ },
537
+ {
538
+ mountingConfigId: "chatPreviewPDP",
539
+ widgetConfigId: "chatPreviewPDP"
540
+ },
541
+ {
542
+ mountingConfigId: "bottomSuggestionBarPDP",
543
+ widgetConfigId: "bottomSuggestionsBar"
544
+ }
545
+ ]
546
+ },
547
+ {
548
+ variantId: "pdpSwimwearNoReviewsGlobalSearch",
549
+ variantType: "pdp",
550
+ variantTests: [
551
+ { testType: PageVariantTestType.ShopifyPDP },
552
+ {
553
+ testType: PageVariantTestType.InCollection,
554
+ collections: ["swim-html"]
555
+ },
556
+ {
557
+ testType: PageVariantTestType.FeatureGate,
558
+ featureGate: FeatureGates.IsGlobalSearchEnabled
559
+ }
560
+ ],
561
+ productIdExtractor: "shopify-product-id",
562
+ widgetMounting: [
563
+ {
564
+ mountingConfigId: "globalSearchEntryPoint",
565
+ widgetConfigId: "globalSearchEntryPoint"
566
+ },
567
+ {
568
+ mountingConfigId: "globalSearchEntryPointMobile",
569
+ widgetConfigId: "globalSearchEntryPointMobile"
570
+ },
571
+ {
572
+ mountingConfigId: "topSuggestionBarPDP",
573
+ widgetConfigId: "topSuggestionsBarSwimwearNoReviews"
574
+ },
575
+ {
576
+ mountingConfigId: "chatPreviewPDP",
577
+ widgetConfigId: "chatPreviewPDP"
578
+ },
579
+ {
580
+ mountingConfigId: "bottomSuggestionBarPDP",
581
+ widgetConfigId: "bottomSuggestionsBar"
582
+ }
583
+ ]
584
+ },
585
+ {
586
+ variantId: "pdpShoesHasReviewsGlobalSearch",
587
+ variantType: "pdp",
588
+ variantTests: [
589
+ { testType: PageVariantTestType.ShopifyPDP },
590
+ {
591
+ testType: PageVariantTestType.InCollection,
592
+ collections: ["shoes"]
593
+ },
594
+ {
595
+ testType: PageVariantTestType.HasReviews,
596
+ reviewMinimum: 4
597
+ },
598
+ {
599
+ testType: PageVariantTestType.FeatureGate,
600
+ featureGate: FeatureGates.IsGlobalSearchEnabled
601
+ }
602
+ ],
603
+ productIdExtractor: "shopify-product-id",
604
+ widgetMounting: [
605
+ {
606
+ mountingConfigId: "globalSearchEntryPoint",
607
+ widgetConfigId: "globalSearchEntryPoint"
608
+ },
609
+ {
610
+ mountingConfigId: "globalSearchEntryPointMobile",
611
+ widgetConfigId: "globalSearchEntryPointMobile"
612
+ },
613
+ {
614
+ mountingConfigId: "topSuggestionBarPDP",
615
+ widgetConfigId: "topSuggestionsBarShoesHasReviews"
616
+ },
617
+ {
618
+ mountingConfigId: "chatPreviewPDP",
619
+ widgetConfigId: "chatPreviewPDP"
620
+ },
621
+ {
622
+ mountingConfigId: "bottomSuggestionBarPDP",
623
+ widgetConfigId: "bottomSuggestionsBar"
624
+ }
625
+ ]
626
+ },
627
+ {
628
+ variantId: "pdpShoesNoReviewsGlobalSearch",
629
+ variantType: "pdp",
630
+ variantTests: [
631
+ { testType: PageVariantTestType.ShopifyPDP },
632
+ {
633
+ testType: PageVariantTestType.InCollection,
634
+ collections: ["shoes"]
635
+ },
636
+ {
637
+ testType: PageVariantTestType.FeatureGate,
638
+ featureGate: FeatureGates.IsGlobalSearchEnabled
639
+ }
640
+ ],
641
+ productIdExtractor: "shopify-product-id",
642
+ widgetMounting: [
643
+ {
644
+ mountingConfigId: "globalSearchEntryPoint",
645
+ widgetConfigId: "globalSearchEntryPoint"
646
+ },
647
+ {
648
+ mountingConfigId: "globalSearchEntryPointMobile",
649
+ widgetConfigId: "globalSearchEntryPointMobile"
650
+ },
651
+ {
652
+ mountingConfigId: "topSuggestionBarPDP",
653
+ widgetConfigId: "topSuggestionsBarShoesNoReviews"
654
+ },
655
+ {
656
+ mountingConfigId: "chatPreviewPDP",
657
+ widgetConfigId: "chatPreviewPDP"
658
+ },
659
+ {
660
+ mountingConfigId: "bottomSuggestionBarPDP",
661
+ widgetConfigId: "bottomSuggestionsBar"
662
+ }
663
+ ]
664
+ },
665
+ {
666
+ variantId: "pdpGlobalSearch",
667
+ variantType: "pdp",
668
+ variantTests: [{ testType: PageVariantTestType.ShopifyPDP }, {
669
+ testType: PageVariantTestType.FeatureGate,
670
+ featureGate: FeatureGates.IsGlobalSearchEnabled
671
+ }],
672
+ productIdExtractor: "shopify-product-id",
673
+ widgetMounting: [
674
+ {
675
+ mountingConfigId: "globalSearchEntryPoint",
676
+ widgetConfigId: "globalSearchEntryPoint"
677
+ },
678
+ {
679
+ mountingConfigId: "globalSearchEntryPointMobile",
680
+ widgetConfigId: "globalSearchEntryPointMobile"
681
+ },
682
+ {
683
+ mountingConfigId: "topSuggestionBarPDP",
684
+ widgetConfigId: "topSuggestionsBar"
685
+ },
686
+ {
687
+ mountingConfigId: "chatPreviewPDP",
688
+ widgetConfigId: "chatPreviewPDP"
689
+ },
690
+ {
691
+ mountingConfigId: "bottomSuggestionBarPDP",
692
+ widgetConfigId: "bottomSuggestionsBar"
693
+ }
694
+ ]
695
+ },
696
+ {
697
+ variantId: "pdpDressesHasReviews",
698
+ variantType: "pdp",
699
+ variantTests: [
700
+ { testType: PageVariantTestType.ShopifyPDP },
701
+ {
702
+ testType: PageVariantTestType.InCollection,
703
+ collections: ["dresses"]
704
+ },
705
+ {
706
+ testType: PageVariantTestType.HasReviews,
707
+ reviewMinimum: 4
708
+ }
709
+ ],
710
+ productIdExtractor: "shopify-product-id",
711
+ widgetMounting: [
712
+ {
713
+ mountingConfigId: "topSuggestionBarPDP",
714
+ widgetConfigId: "topSuggestionsBarDressesHasReviews"
715
+ },
716
+ {
717
+ mountingConfigId: "chatPreviewPDP",
718
+ widgetConfigId: "chatPreviewPDP"
719
+ },
720
+ {
721
+ mountingConfigId: "bottomSuggestionBarPDP",
722
+ widgetConfigId: "bottomSuggestionsBar"
723
+ }
724
+ ]
725
+ },
726
+ {
727
+ variantId: "pdpDressesNoReviews",
728
+ variantType: "pdp",
729
+ variantTests: [{ testType: PageVariantTestType.ShopifyPDP }, {
730
+ testType: PageVariantTestType.InCollection,
731
+ collections: ["dresses"]
732
+ }],
733
+ productIdExtractor: "shopify-product-id",
734
+ widgetMounting: [
735
+ {
736
+ mountingConfigId: "topSuggestionBarPDP",
737
+ widgetConfigId: "topSuggestionsBarDressesNoReviews"
738
+ },
739
+ {
740
+ mountingConfigId: "chatPreviewPDP",
741
+ widgetConfigId: "chatPreviewPDP"
742
+ },
743
+ {
744
+ mountingConfigId: "bottomSuggestionBarPDP",
745
+ widgetConfigId: "bottomSuggestionsBar"
746
+ }
747
+ ]
748
+ },
749
+ {
750
+ variantId: "pdpSwimwearHasReviews",
751
+ variantType: "pdp",
752
+ variantTests: [
753
+ { testType: PageVariantTestType.ShopifyPDP },
754
+ {
755
+ testType: PageVariantTestType.InCollection,
756
+ collections: ["swim-html"]
757
+ },
758
+ {
759
+ testType: PageVariantTestType.HasReviews,
760
+ reviewMinimum: 4
761
+ }
762
+ ],
763
+ productIdExtractor: "shopify-product-id",
764
+ widgetMounting: [
765
+ {
766
+ mountingConfigId: "topSuggestionBarPDP",
767
+ widgetConfigId: "topSuggestionsBarSwimwearHasReviews"
768
+ },
769
+ {
770
+ mountingConfigId: "chatPreviewPDP",
771
+ widgetConfigId: "chatPreviewPDP"
772
+ },
773
+ {
774
+ mountingConfigId: "bottomSuggestionBarPDP",
775
+ widgetConfigId: "bottomSuggestionsBar"
776
+ }
777
+ ]
778
+ },
779
+ {
780
+ variantId: "pdpSwimwearNoReviews",
781
+ variantType: "pdp",
782
+ variantTests: [{ testType: PageVariantTestType.ShopifyPDP }, {
783
+ testType: PageVariantTestType.InCollection,
784
+ collections: ["swim-html"]
785
+ }],
786
+ productIdExtractor: "shopify-product-id",
787
+ widgetMounting: [
788
+ {
789
+ mountingConfigId: "topSuggestionBarPDP",
790
+ widgetConfigId: "topSuggestionsBarSwimwearNoReviews"
791
+ },
792
+ {
793
+ mountingConfigId: "chatPreviewPDP",
794
+ widgetConfigId: "chatPreviewPDP"
795
+ },
796
+ {
797
+ mountingConfigId: "bottomSuggestionBarPDP",
798
+ widgetConfigId: "bottomSuggestionsBar"
799
+ }
800
+ ]
801
+ },
802
+ {
803
+ variantId: "pdpShoesHasReviews",
804
+ variantType: "pdp",
805
+ variantTests: [
806
+ { testType: PageVariantTestType.ShopifyPDP },
807
+ {
808
+ testType: PageVariantTestType.InCollection,
809
+ collections: ["shoes"]
810
+ },
811
+ {
812
+ testType: PageVariantTestType.HasReviews,
813
+ reviewMinimum: 4
814
+ }
815
+ ],
816
+ productIdExtractor: "shopify-product-id",
817
+ widgetMounting: [
818
+ {
819
+ mountingConfigId: "topSuggestionBarPDP",
820
+ widgetConfigId: "topSuggestionsBarShoesHasReviews"
821
+ },
822
+ {
823
+ mountingConfigId: "chatPreviewPDP",
824
+ widgetConfigId: "chatPreviewPDP"
825
+ },
826
+ {
827
+ mountingConfigId: "bottomSuggestionBarPDP",
828
+ widgetConfigId: "bottomSuggestionsBar"
829
+ }
830
+ ]
831
+ },
832
+ {
833
+ variantId: "pdpShoesNoReviews",
834
+ variantType: "pdp",
835
+ variantTests: [{ testType: PageVariantTestType.ShopifyPDP }, {
836
+ testType: PageVariantTestType.InCollection,
837
+ collections: ["shoes"]
838
+ }],
839
+ productIdExtractor: "shopify-product-id",
840
+ widgetMounting: [
841
+ {
842
+ mountingConfigId: "topSuggestionBarPDP",
843
+ widgetConfigId: "topSuggestionsBarShoesNoReviews"
844
+ },
845
+ {
846
+ mountingConfigId: "chatPreviewPDP",
847
+ widgetConfigId: "chatPreviewPDP"
848
+ },
849
+ {
850
+ mountingConfigId: "bottomSuggestionBarPDP",
851
+ widgetConfigId: "bottomSuggestionsBar"
852
+ }
853
+ ]
854
+ },
855
+ {
856
+ variantId: "pdp",
857
+ variantType: "pdp",
858
+ variantTests: [{ testType: PageVariantTestType.ShopifyPDP }],
859
+ productIdExtractor: "shopify-product-id",
860
+ widgetMounting: [
861
+ {
862
+ mountingConfigId: "topSuggestionBarPDP",
863
+ widgetConfigId: "topSuggestionsBar"
864
+ },
865
+ {
866
+ mountingConfigId: "chatPreviewPDP",
867
+ widgetConfigId: "chatPreviewPDP"
868
+ },
869
+ {
870
+ mountingConfigId: "bottomSuggestionBarPDP",
871
+ widgetConfigId: "bottomSuggestionsBar"
872
+ }
873
+ ]
874
+ }
875
+ ],
876
+ widgetConfigs: {
877
+ globalSearchEntryPoint: {
878
+ widgetConfigId: "globalSearchEntryPoint",
879
+ type: WidgetType.SearchZeroStateEntryPoint,
880
+ searchZeroStateVariant: "backgroundTertiary",
881
+ searchInputVariant: "standard",
882
+ suggestionButtonConfig: {
883
+ variant: "darkAccent",
884
+ hoverVariant: "secondaryAccent"
885
+ },
886
+ layout: "icon",
887
+ compactLabel: "Search",
888
+ searchBoxPlaceholder: "Try \"Colorful maxi for a summer wedding\"",
889
+ initialSuggestions: [
890
+ "Vintage dresses",
891
+ "Maxi dresses",
892
+ "Disney outfit",
893
+ "Barbie collection",
894
+ "1970s jumpsuit",
895
+ "One-piece swimsuit",
896
+ "Cinderella divine dresses"
897
+ ]
898
+ },
899
+ globalSearchEntryPointMobile: {
900
+ widgetConfigId: "globalSearchEntryPointMobile",
901
+ type: WidgetType.SearchZeroStateEntryPoint,
902
+ searchZeroStateVariant: "backgroundTertiary",
903
+ searchInputVariant: "standard",
904
+ suggestionButtonConfig: {
905
+ variant: "darkAccent",
906
+ hoverVariant: "secondaryAccent"
907
+ },
908
+ layout: "icon",
909
+ searchBoxPlaceholder: "Try \"Colorful maxi for a summer wedding\"",
910
+ initialSuggestions: [
911
+ "Vintage dresses",
912
+ "Maxi dresses",
913
+ "Disney outfit",
914
+ "Barbie collection",
915
+ "1970s jumpsuit",
916
+ "One-piece swimsuit",
917
+ "Cinderella divine dresses"
918
+ ]
919
+ },
920
+ topSuggestionsBar: {
921
+ widgetConfigId: "topSuggestionsBar",
922
+ contentId: "spiffy-top-suggestion-bar-contents",
923
+ type: WidgetType.SuggestionBarV2,
924
+ metricDisplayLocation: ChatElementDisplayLocation.TOP_REVIEWS_SNIPPET,
925
+ location: SuggestionBarLocationForMetrics.SUGGESTION_BAR_TOP,
926
+ variant: "primary",
927
+ hoverVariant: "secondaryDark",
928
+ buttonTexts: { default: [
929
+ "Summarize the reviews",
930
+ "What retro charm will this piece bring to my wardrobe?",
931
+ "What occasions is this piece perfect for?",
932
+ "How do others describe the fit and feel?",
933
+ "What makes this piece stand out for others?"
934
+ ] },
935
+ boldFirstButton: true,
936
+ twoRowsOnMobile: false,
937
+ buttonBorderRadius: "md"
938
+ },
939
+ topSuggestionsBarDressesHasReviews: {
940
+ widgetConfigId: "topSuggestionsBarDressesHasReviews",
941
+ contentId: "spiffy-top-suggestion-bar-contents",
942
+ type: WidgetType.SuggestionBarV2,
943
+ metricDisplayLocation: ChatElementDisplayLocation.TOP_REVIEWS_SNIPPET,
944
+ location: SuggestionBarLocationForMetrics.SUGGESTION_BAR_TOP,
945
+ variant: "primary",
946
+ hoverVariant: "secondaryDark",
947
+ buttonTexts: { default: [
948
+ "Summarize the reviews",
949
+ "Which unique accessories pair with this?",
950
+ "Is the fit flowy or figure-enhancing?",
951
+ "Is it true to size?"
952
+ ] },
953
+ boldFirstButton: true,
954
+ twoRowsOnMobile: false,
955
+ buttonBorderRadius: "md"
956
+ },
957
+ topSuggestionsBarDressesNoReviews: {
958
+ widgetConfigId: "topSuggestionsBarDressesNoReviews",
959
+ contentId: "spiffy-top-suggestion-bar-contents",
960
+ type: WidgetType.SuggestionBarV2,
961
+ metricDisplayLocation: ChatElementDisplayLocation.TOP_REVIEWS_SNIPPET,
962
+ location: SuggestionBarLocationForMetrics.SUGGESTION_BAR_TOP,
963
+ variant: "primary",
964
+ hoverVariant: "secondaryDark",
965
+ buttonTexts: { default: [
966
+ "What occasion is this dress for?",
967
+ "Which unique accessories pair with this?",
968
+ "Is the fit flowy or figure-enhancing?",
969
+ "Is it true to size?"
970
+ ] },
971
+ boldFirstButton: true,
972
+ twoRowsOnMobile: false,
973
+ buttonBorderRadius: "md"
974
+ },
975
+ topSuggestionsBarSwimwearHasReviews: {
976
+ widgetConfigId: "topSuggestionsBarSwimwearHasReviews",
977
+ contentId: "spiffy-top-suggestion-bar-contents",
978
+ type: WidgetType.SuggestionBarV2,
979
+ metricDisplayLocation: ChatElementDisplayLocation.TOP_REVIEWS_SNIPPET,
980
+ location: SuggestionBarLocationForMetrics.SUGGESTION_BAR_TOP,
981
+ variant: "primary",
982
+ hoverVariant: "secondaryDark",
983
+ buttonTexts: { default: [
984
+ "Summarize the reviews",
985
+ "Which accessories pair well?",
986
+ "Does the top have padding?",
987
+ "Does it run true to size?"
988
+ ] },
989
+ boldFirstButton: true,
990
+ twoRowsOnMobile: false,
991
+ buttonBorderRadius: "md"
992
+ },
993
+ topSuggestionsBarSwimwearNoReviews: {
994
+ widgetConfigId: "topSuggestionsBarSwimwearNoReviews",
995
+ contentId: "spiffy-top-suggestion-bar-contents",
996
+ type: WidgetType.SuggestionBarV2,
997
+ metricDisplayLocation: ChatElementDisplayLocation.TOP_REVIEWS_SNIPPET,
998
+ location: SuggestionBarLocationForMetrics.SUGGESTION_BAR_TOP,
999
+ variant: "primary",
1000
+ hoverVariant: "secondaryDark",
1001
+ buttonTexts: { default: [
1002
+ "Does it run true to size?",
1003
+ "Which accessories pair well?",
1004
+ "Does the top have padding?",
1005
+ "Does it run true to size?"
1006
+ ] },
1007
+ boldFirstButton: true,
1008
+ twoRowsOnMobile: false,
1009
+ buttonBorderRadius: "md"
1010
+ },
1011
+ topSuggestionsBarShoesHasReviews: {
1012
+ widgetConfigId: "topSuggestionsBarShoesHasReviews",
1013
+ contentId: "spiffy-top-suggestion-bar-contents",
1014
+ type: WidgetType.SuggestionBarV2,
1015
+ metricDisplayLocation: ChatElementDisplayLocation.TOP_REVIEWS_SNIPPET,
1016
+ location: SuggestionBarLocationForMetrics.SUGGESTION_BAR_TOP,
1017
+ variant: "primary",
1018
+ hoverVariant: "secondaryDark",
1019
+ buttonTexts: { default: [
1020
+ "Summarize the reviews",
1021
+ "Is this good for a night out?",
1022
+ "Are these true to size?",
1023
+ "Are these good for casual wear?"
1024
+ ] },
1025
+ boldFirstButton: true,
1026
+ twoRowsOnMobile: false,
1027
+ buttonBorderRadius: "md"
1028
+ },
1029
+ topSuggestionsBarShoesNoReviews: {
1030
+ widgetConfigId: "topSuggestionsBarShoesNoReviews",
1031
+ contentId: "spiffy-top-suggestion-bar-contents",
1032
+ type: WidgetType.SuggestionBarV2,
1033
+ metricDisplayLocation: ChatElementDisplayLocation.TOP_REVIEWS_SNIPPET,
1034
+ location: SuggestionBarLocationForMetrics.SUGGESTION_BAR_TOP,
1035
+ variant: "primary",
1036
+ hoverVariant: "secondaryDark",
1037
+ buttonTexts: { default: [
1038
+ "What era inspired these shoes?",
1039
+ "Is this good for a night out?",
1040
+ "Are these true to size?",
1041
+ "Are these good for casual wear?"
1042
+ ] },
1043
+ boldFirstButton: true,
1044
+ twoRowsOnMobile: false,
1045
+ buttonBorderRadius: "md"
1046
+ },
1047
+ searchPromptPLP: {
1048
+ widgetConfigId: "searchPromptPLP",
1049
+ type: WidgetType.SearchPrompt,
1050
+ variant: "primary",
1051
+ title: "Find exactly what you're looking for...",
1052
+ headerConfig: {
1053
+ title: "Search Assistant",
1054
+ logo: "search-logo.svg",
1055
+ logoHeight: 25,
1056
+ orgShortName: "unique-vintage"
1057
+ },
1058
+ suggestionButtons: {
1059
+ variant: "darkPrimary",
1060
+ hoverVariant: "secondary",
1061
+ buttonTexts: [
1062
+ "Vintage dresses",
1063
+ "Maxi dresses",
1064
+ "Disney outfit",
1065
+ "Barbie collection",
1066
+ "1970s jumpsuit",
1067
+ "One-piece swimsuit",
1068
+ "Cinderella divine dresses"
1069
+ ]
1070
+ },
1071
+ footerConfig: {
1072
+ replyButtonText: "Be as specific as you like...",
1073
+ replyButtonIcon: "ai-search"
1074
+ }
1075
+ },
1076
+ chatPreviewPLP: {
1077
+ widgetConfigId: "chatPreview",
1078
+ type: WidgetType.ChatPreview,
1079
+ variant: "filled",
1080
+ addSeparators: true,
1081
+ footerConfig: {
1082
+ replyButtonText: "What can I help you find?",
1083
+ replyButtonIcon: "magnifyingGlass"
1084
+ }
1085
+ },
1086
+ chatPreviewPDP: {
1087
+ widgetConfigId: "chatPreviewPDP",
1088
+ type: WidgetType.ChatPreview,
1089
+ variant: "filled",
1090
+ addSeparators: true
1091
+ },
1092
+ bottomSuggestionsBar: {
1093
+ widgetConfigId: "bottomSuggestionsBar",
1094
+ contentId: "spiffy-bottom-suggestion-bar-contents",
1095
+ type: WidgetType.SuggestionBarV2,
1096
+ metricDisplayLocation: ChatElementDisplayLocation.BOTTOM_REVIEWS_SNIPPET,
1097
+ location: SuggestionBarLocationForMetrics.SUGGESTION_BAR_BOTTOM,
1098
+ variant: "dark",
1099
+ hoverVariant: "secondaryDark",
1100
+ buttonTexts: { default: [
1101
+ "Summarize the reviews",
1102
+ "What retro charm will this piece bring to my wardrobe?",
1103
+ "What occasions is this piece perfect for?",
1104
+ "How do others describe the fit and feel?",
1105
+ "What makes this piece stand out for others?"
1106
+ ] },
1107
+ boldFirstButton: true,
1108
+ twoRowsOnMobile: true,
1109
+ animationSpeed: "none",
1110
+ buttonBorderRadius: "md"
1111
+ }
1112
+ },
1113
+ mountingConfigs: {
1114
+ globalSearchEntryPoint: {
1115
+ mountingConfigId: "globalSearchEntryPoint",
1116
+ containerId: GLOBAL_SEARCH_ENTRYPOINT_ID,
1117
+ testId: GLOBAL_SEARCH_ENTRYPOINT_TESTID,
1118
+ insertionPoint: {
1119
+ selector: ".header__search.header__search--desktop",
1120
+ insertionType: DOMInsertionType.AFTER
1121
+ },
1122
+ suppressionSelector: ".search-modal__content.search-modal__content-bottom",
1123
+ className: "global-entry-desktop",
1124
+ style: {
1125
+ zIndex: "2147483647",
1126
+ marginRight: "32px",
1127
+ height: "80px"
1128
+ }
1129
+ },
1130
+ globalSearchEntryPointMobile: {
1131
+ mountingConfigId: "globalSearchEntryPoint",
1132
+ containerId: MOBILE_GLOBAL_SEARCH_ENTRYPOINT_ID,
1133
+ testId: GLOBAL_SEARCH_ENTRYPOINT_TESTID,
1134
+ insertionPoint: {
1135
+ selector: "sticky-header.header-wrapper:has(.mobile-search)",
1136
+ insertionType: DOMInsertionType.AFTER
1137
+ },
1138
+ suppressionSelector: ".mobile-search .search-modal__form",
1139
+ className: "global-entry-mobile",
1140
+ style: {
1141
+ zIndex: "2147483647",
1142
+ marginTop: "8px",
1143
+ marginLeft: "15px",
1144
+ marginRight: "15px"
1145
+ }
1146
+ },
1147
+ chatPreviewPLP: {
1148
+ mountingConfigId: "chatPreviewPLP",
1149
+ containerId: CHAT_PREVIEW_CONTAINER_ID,
1150
+ testId: CHAT_PREVIEW_TESTID,
1151
+ insertionPoint: {
1152
+ selector: ".collection .product-grid",
1153
+ insertionType: DOMInsertionType.AFTER
1154
+ },
1155
+ gridInsertionType: GridInsertionType.ROW_2
1156
+ },
1157
+ chatPreviewPDP: {
1158
+ mountingConfigId: "chatPreviewPDP",
1159
+ containerId: CHAT_PREVIEW_CONTAINER_ID,
1160
+ testId: CHAT_PREVIEW_TESTID,
1161
+ insertionPoint: {
1162
+ selector: ".product__accordion",
1163
+ insertionType: DOMInsertionType.BEFORE
1164
+ },
1165
+ style: {
1166
+ marginTop: "16px",
1167
+ marginBottom: "8px"
1168
+ }
1169
+ },
1170
+ topSuggestionBarPDP: {
1171
+ mountingConfigId: "topSuggestionBarPDP",
1172
+ containerId: TOP_SUGGESTION_BAR_PDP_ID,
1173
+ testId: TOP_SUGGESTION_BAR_TESTID,
1174
+ insertionPoint: {
1175
+ selector: "div:has(> .main_price)",
1176
+ insertionType: DOMInsertionType.AFTER
1177
+ },
1178
+ style: {
1179
+ marginTop: "16px",
1180
+ marginBottom: "16px"
1181
+ }
1182
+ },
1183
+ bottomSuggestionBarPDP: {
1184
+ mountingConfigId: "bottomSuggestionBarPDP",
1185
+ containerId: BOTTOM_REVIEWS_BAR_ID,
1186
+ testId: BOTTOM_SUGGESTION_BAR_TESTID,
1187
+ insertionPoint: {
1188
+ selector: ".junip-product-review-summary-wrapper + div.junip-separator",
1189
+ insertionType: DOMInsertionType.ADJACENT_AFTER_END,
1190
+ selectionIndex: 0
1191
+ },
1192
+ style: {
1193
+ marginTop: "16px",
1194
+ marginBottom: "16px"
1195
+ }
1196
+ }
1197
+ }
1198
+ });
1199
+ const uniqueVintageOrgInfo = {
1200
+ shortName: OrgShortName.UniqueVintage,
1201
+ name: "Unique Vintage",
1202
+ domain: "unique-vintage.com",
1203
+ defaultProductId: "red-cowgirl-print-swing-shirt-dress",
1204
+ alwaysEnabledMerchants: true,
1205
+ orgUIConfig: uniqueVintageOrgUIConfig,
1206
+ orgColors: () => uniqueVintageColors,
1207
+ orgPageConfig: uniqueVintagePageConfig
1208
+ };
1209
+
1210
+ //#endregion
1211
+ export { uniqueVintageOrgInfo };
1212
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pcXVlVmludGFnZS1DdWk3NG1sSi5qcyIsIm5hbWVzIjpbInVuaXF1ZVZpbnRhZ2VDb2xvcnM6IENvbG9yTWFwcGluZyJdLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXJjaGFudHMvdW5pcXVlVmludGFnZS91bmlxdWVWaW50YWdlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENkblNlcnZpY2UgfSBmcm9tIFwic3JjL2FwcGxpY2F0aW9uL3NlcnZpY2UvY2RuU2VydmljZVwiO1xuaW1wb3J0IHsgR3JpZEluc2VydGlvblR5cGUgfSBmcm9tIFwic3JjL2FwcGxpY2F0aW9uL3NlcnZpY2UvZG9tTXV0YXRpb25zL0dyaWRJbnNlcnRpb25TZXJ2aWNlXCI7XG5pbXBvcnQgeyBET01JbnNlcnRpb25UeXBlIH0gZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9zZXJ2aWNlL2RvbU11dGF0aW9ucy9kb21JbnNlcnRpb25TZXJ2aWNlXCI7XG5pbXBvcnQgeyBkZWZhdWx0T3JnVUlDb25maWcgfSBmcm9tIFwic3JjL21lcmNoYW50cy9kZWZhdWx0XCI7XG5pbXBvcnQge1xuICBDYXRlZ29yeUV4dHJhY3RvclR5cGUsXG4gIENoYXRQcmV2aWV3V2lkZ2V0Q29uZmlnLFxuICBDb2xvck1hcHBpbmcsXG4gIENvbG9yTmFtZXMsXG4gIGNvbG9yVmFyLFxuICBTZWFyY2hFbnRyeVBvaW50V2lkZ2V0Q29uZmlnLFxuICBPcmdQYWdlQ29uZmlnLFxuICBPcmdVSUNvbmZpZyxcbiAgUGFnZVZhcmlhbnRUZXN0VHlwZSxcbiAgU2VhcmNoUHJvbXB0V2lkZ2V0Q29uZmlnLFxuICBTdWdnZXN0aW9uQmFyV2lkZ2V0VjJDb25maWcsXG4gIFdpZGdldFR5cGUsXG59IGZyb20gXCJzcmMvY29udGV4dHMvdHlwZXNcIjtcbmltcG9ydCB7XG4gIEN1c3RvbWVyU2VydmljZUludGVncmF0aW9uTW9kZSxcbiAgQ3VzdG9tZXJTZXJ2aWNlVHlwZSxcbn0gZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9zZXJ2aWNlL2N1c3RvbWVyU2VydmljZS90eXBlc1wiO1xuaW1wb3J0IHtcbiAgQ0hBVF9QUkVWSUVXX1RFU1RJRCxcbiAgVE9QX1NVR0dFU1RJT05fQkFSX1RFU1RJRCxcbiAgQk9UVE9NX1NVR0dFU1RJT05fQkFSX1RFU1RJRCxcbiAgR0xPQkFMX1NFQVJDSF9FTlRSWVBPSU5UX1RFU1RJRCxcbn0gZnJvbSBcInNyYy9jb25maWcvbG9jYXRvcnNcIjtcbmltcG9ydCB7IENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uIH0gZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9tb2RlbHMvY2hhdEVsZW1lbnREaXNwbGF5TG9jYXRpb25cIjtcbmltcG9ydCB7XG4gIENIQVRfUFJFVklFV19DT05UQUlORVJfSUQsXG4gIFRPUF9TVUdHRVNUSU9OX0JBUl9QRFBfSUQsXG4gIEJPVFRPTV9SRVZJRVdTX0JBUl9JRCxcbiAgR0xPQkFMX1NFQVJDSF9FTlRSWVBPSU5UX0lELFxuICBNT0JJTEVfR0xPQkFMX1NFQVJDSF9FTlRSWVBPSU5UX0lELFxufSBmcm9tIFwic3JjL2NvbmZpZy9kaXZJZHNcIjtcbmltcG9ydCB7IFBhZ2VWaXNpdENhdGVnb3J5IH0gZnJvbSBcIkBzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudFwiO1xuaW1wb3J0IHsgRmVhdHVyZUdhdGVzIH0gZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9tb2RlbHMvZmVhdHVyZUdhdGVzXCI7XG5pbXBvcnQgeyBTdWdnZXN0aW9uQmFyTG9jYXRpb25Gb3JNZXRyaWNzIH0gZnJvbSBcInNyYy90eXBlcy9zdWdnZXN0aW9uQmFyVjItdHlwZXNcIjtcbmltcG9ydCB7IEJhc2ljT3JnSW5mb1R5cGUsIE9yZ1Nob3J0TmFtZSB9IGZyb20gXCJzcmMvYXBwbGljYXRpb24vbW9kZWxzXCI7XG5cbmNvbnN0IHVuaXF1ZVZpbnRhZ2VDb2xvcnM6IENvbG9yTWFwcGluZyA9IHtcbiAgW0NvbG9yTmFtZXMuVGV4dFByaW1hcnldOiBcIiMwMDAwMDBcIixcbiAgW0NvbG9yTmFtZXMuVGV4dFNlY29uZGFyeV06IFwiIzU5NTk1OVwiLFxuICBbQ29sb3JOYW1lcy5UZXh0QWNjZW50XTogXCIjMUQ0QTRGXCIsXG4gIFtDb2xvck5hbWVzLlRleHRMaW5rXTogXCIjMjIyMjIyXCIsXG4gIFtDb2xvck5hbWVzLlRleHRMaWdodF06IFwiI0ZGRkZGRlwiLFxuICBbQ29sb3JOYW1lcy5CYWNrZ3JvdW5kUHJpbWFyeV06IFwiI0ZBRERENVwiLFxuICBbQ29sb3JOYW1lcy5CYWNrZ3JvdW5kU2Vjb25kYXJ5XTogXCIjRkZGREYzXCIsXG4gIFtDb2xvck5hbWVzLkJhY2tncm91bmRTZWNvbmRhcnlEYXJrXTogXCIjRUJFOUUwXCIsXG4gIFtDb2xvck5hbWVzLkJhY2tncm91bmRUZXJ0aWFyeV06IFwiIzFENEE0RlwiLFxuICBbQ29sb3JOYW1lcy5CYWNrZ3JvdW5kRGFya106IFwiIzIyMjIyMlwiLFxuICBbQ29sb3JOYW1lcy5CYWNrZ3JvdW5kTGlnaHRdOiBcIiNGRkZGRkZcIixcbiAgW0NvbG9yTmFtZXMuQmFja2dyb3VuZFNhdHVyYXRlZF06IFwiI0ZBRERENVwiLFxuICBbQ29sb3JOYW1lcy5Cb3JkZXJMaWdodF06IFwiI0U3RTdFN1wiLFxuICBbQ29sb3JOYW1lcy5Cb3JkZXJNZWRpdW1dOiBcIiNDMkM0QzhcIixcbiAgW0NvbG9yTmFtZXMuQm9yZGVyRGFya106IFwiIzU5NTk1OVwiLFxuICBbQ29sb3JOYW1lcy5Cb3JkZXJPdXRsaW5lXTogXCIjMjIyMjIyXCIsXG4gIFtDb2xvck5hbWVzLkFjY2VudFByaW1hcnldOiBcIiNGQURERDVcIixcbiAgW0NvbG9yTmFtZXMuQWNjZW50U2Vjb25kYXJ5XTogXCIjQzBFN0Q2XCIsXG59O1xuXG5jb25zdCB1bmlxdWVWaW50YWdlT3JnVUlDb25maWcgPSAoKTogT3JnVUlDb25maWcgPT4ge1xuICBjb25zdCBkZWZhdWx0VW5pcXVlVmludGFnZU9yZ0NvbmZpZyA9IGRlZmF1bHRPcmdVSUNvbmZpZyhcbiAgICBPcmdTaG9ydE5hbWUuVW5pcXVlVmludGFnZVxuICApO1xuXG4gIHJldHVybiB7XG4gICAgLi4uZGVmYXVsdFVuaXF1ZVZpbnRhZ2VPcmdDb25maWcsXG4gICAgY2hhdE1lc3NhZ2VDb25maWc6IHtcbiAgICAgIC4uLmRlZmF1bHRVbmlxdWVWaW50YWdlT3JnQ29uZmlnLmNoYXRNZXNzYWdlQ29uZmlnISxcbiAgICAgIGFzc2lzdGFudENoYXRUaXRsZTogXCJVbmlxdWUgVmludGFnZSBBSVwiLFxuICAgICAgdmFyaWFudDogXCJzdGFuZGFyZFwiLFxuICAgIH0sXG4gICAgY2hhdEhlYWRlcjoge1xuICAgICAgLi4uZGVmYXVsdFVuaXF1ZVZpbnRhZ2VPcmdDb25maWcuY2hhdEhlYWRlcixcbiAgICAgIGNoZXZyb25Db2xvcjogY29sb3JWYXIoQ29sb3JOYW1lcy5CYWNrZ3JvdW5kRGFyayksXG4gICAgICBleHBhbmRlZENvbG9yOiBjb2xvclZhcihDb2xvck5hbWVzLkJhY2tncm91bmRQcmltYXJ5KSxcbiAgICAgIGltYWdlU3JjOiBDZG5TZXJ2aWNlLmdldEFzc2V0VVJMKFxuICAgICAgICBcInVuaXF1ZS12aW50YWdlLWxvbmctbG9nby5wbmdcIixcbiAgICAgICAgT3JnU2hvcnROYW1lLlVuaXF1ZVZpbnRhZ2VcbiAgICAgICksXG4gICAgICAvLyBpY29uOiB1bmlxdWVWaW50YWdlTG9nbyxcbiAgICB9LFxuICAgIGNoYXRQcmV2aWV3Q29uZmlnOiB7XG4gICAgICAuLi5kZWZhdWx0VW5pcXVlVmludGFnZU9yZ0NvbmZpZy5jaGF0UHJldmlld0NvbmZpZyEsXG4gICAgICB2YXJpYW50OiBcImZpbGxlZFwiLFxuICAgICAgZmlsbGVkQmFja2dyb3VuZENvbG9yOiBjb2xvclZhcihDb2xvck5hbWVzLkFjY2VudFNlY29uZGFyeSksXG4gICAgICBpY29uRmlsbENvbG9yOiBjb2xvclZhcihDb2xvck5hbWVzLkFjY2VudFByaW1hcnkpLFxuICAgICAgYnV0dG9uVGV4dENvbG9yOiBjb2xvclZhcihDb2xvck5hbWVzLlRleHRMaWdodCksXG4gICAgICBidXR0b25CYWNrZ3JvdW5kQ29sb3I6IGNvbG9yVmFyKENvbG9yTmFtZXMuQmFja2dyb3VuZERhcmspLFxuICAgICAgYnV0dG9uVGV4dEhvdmVyQ29sb3I6IGNvbG9yVmFyKENvbG9yTmFtZXMuVGV4dFByaW1hcnkpLFxuICAgICAgYnV0dG9uQmFja2dyb3VuZEhvdmVyQ29sb3I6IGNvbG9yVmFyKENvbG9yTmFtZXMuQmFja2dyb3VuZFNlY29uZGFyeURhcmspLFxuICAgICAgdG9wTWFyZ2luOiAxMCxcbiAgICAgIGNvcGllczoge1xuICAgICAgICBwbHA6IFtcbiAgICAgICAgICBcImEgY2xhc3NpYyBzd2ltc3VpdCB0aGF0J3MgcGVyZmVjdCBmb3IgcG9vbHNpZGUgZ2xhbW91cj9cIixcbiAgICAgICAgICBcImEgc2tpcnQgdGhhdCB0d2lybHMgbGlrZSBpdCdzIHN0cmFpZ2h0IG91dCBvZiB0aGUgJzUwcz9cIixcbiAgICAgICAgICBcImEgaGFuZGJhZyBpbnNwaXJlZCBieSBpY29uaWMgZXJhcz9cIixcbiAgICAgICAgICBcImEgZHJlc3MgdGhhdCB0dXJucyBldmVyeSBoZWFkIGluIHRoZSByb29tP1wiLFxuICAgICAgICBdLFxuICAgICAgICBwZHA6IFtcbiAgICAgICAgICBcInRoZSB2aW50YWdlLWluc3BpcmVkIGRldGFpbHMgdGhhdCBtYWtlIHRoaXMgcGllY2UgdGltZWxlc3M/XCIsXG4gICAgICAgICAgXCJ3aGF0IG1ha2VzIHRoaXMgc3R5bGUgYSB0cnVlIHRocm93YmFjayB0cmVhc3VyZT9cIixcbiAgICAgICAgICBcIndoYXQgbHV4ZSBtYXRlcmlhbHMgd2lsbCBlbGV2YXRlIHlvdXIgbG9vaz9cIixcbiAgICAgICAgICBcInRoZSBzaXplIHRoYXQncyByaWdodCBmb3IgeW91P1wiLFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHN0YXRpY1N1Z2dlc3Rpb25Db3BpZXM6IHtcbiAgICAgICAgcGxwOiBbXG4gICAgICAgICAgXCJXaGF0IGNhc3VhbCB2aW50YWdlIHBpZWNlcyB3b3JrIGZvciBldmVyeWRheSB3ZWFyP1wiLFxuICAgICAgICAgIFwiV2hhdCBwaWVjZXMgY2FuIEkgbWl4IGFuZCBtYXRjaCBmb3IgYSB2aW50YWdlLWluc3BpcmVkIHdhcmRyb2JlP1wiLFxuICAgICAgICAgIFwiV2hhdCBzaG9lcyBhcmUgcGVyZmVjdCBmb3IgZGF0ZSBuaWdodHMgYW5kIHNwZWNpYWwgb2NjYXNpb25zP1wiLFxuICAgICAgICAgIFwiV2hhdCBhY2Nlc3NvcmllcyBjYW4gSSBhZGQgdG8gZWxldmF0ZSBteSB2aW50YWdlIGxvb2s/XCIsXG4gICAgICAgIF0sXG4gICAgICAgIHBkcDogW1xuICAgICAgICAgIFwiV2hhdCBzaXplIHdpbGwgZ2l2ZSBtZSB0aGUgcmlnaHQgZml0P1wiLFxuICAgICAgICAgIFwiSG93IGRvIEkga2VlcCB0aGlzIHBpZWNlIGluIHBlcmZlY3QgY29uZGl0aW9uIGZvciB5ZWFycyB0byBjb21lP1wiLFxuICAgICAgICAgIFwiV2hhdCBmZWF0dXJlcyBtYWtlcyB0aGlzIHBpZWNlIHRoZSBpZGVhbCBzdGF0ZW1lbnQgZm9yIGEgdmludGFnZSBsb3Zlcj9cIixcbiAgICAgICAgICBcIkhvdyBkb2VzIHRoaXMgcGllY2UgZW1ib2R5IHRoZSBzcGlyaXQgb2YgcGFzdCBlcmFzIHdpdGggbW9kZXJuIHN0eWxlP1wiLFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIGhlYWRlckNvbmZpZzoge1xuICAgICAgICB0aXRsZTogXCJTaG9wcGluZyBBc3Npc3RhbnRcIixcbiAgICAgICAgc3BhcmtsZXNDb2xvcjogdW5kZWZpbmVkLFxuICAgICAgICBpbWFnZUhlaWdodDogMjQsXG4gICAgICAgIGltYWdlU3JjOiBDZG5TZXJ2aWNlLmdldEFzc2V0VVJMKFxuICAgICAgICAgIFwidW5pcXVlLXZpbnRhZ2UtbG9uZy1sb2dvLnBuZ1wiLFxuICAgICAgICAgIE9yZ1Nob3J0TmFtZS5VbmlxdWVWaW50YWdlXG4gICAgICAgICksXG4gICAgICB9LFxuICAgICAgZm9vdGVyQ29uZmlnOiB7XG4gICAgICAgIC4uLmRlZmF1bHRVbmlxdWVWaW50YWdlT3JnQ29uZmlnLmNoYXRQcmV2aWV3Q29uZmlnIS5mb290ZXJDb25maWcsXG4gICAgICAgIHJlcGx5QnV0dG9uVGV4dDogXCJXaGF0IGNhbiBJIGhlbHAgeW91IGZpbmQ/XCIsXG4gICAgICAgIHJlcGx5QnV0dG9uSWNvbjogXCJtYWduaWZ5aW5nR2xhc3NcIixcbiAgICAgICAgaGFzRmFkZTogZmFsc2UsXG4gICAgICB9LFxuICAgIH0sXG4gICAgZmxvYXRpbmdFbnRyeXBvaW50Q29uZmlnOiB7XG4gICAgICAuLi5kZWZhdWx0VW5pcXVlVmludGFnZU9yZ0NvbmZpZy5mbG9hdGluZ0VudHJ5cG9pbnRDb25maWchLFxuICAgICAgc2hvd09wdGlvbjogXCJhbHdheXNcIixcbiAgICAgIGV4cGFuZGVkQ29sb3I6IGNvbG9yVmFyKENvbG9yTmFtZXMuQm9yZGVyT3V0bGluZSksXG4gICAgICBpY29uU3Ryb2tlQ29sb3I6IGNvbG9yVmFyKENvbG9yTmFtZXMuQmFja2dyb3VuZERhcmspLFxuICAgICAgaWNvbkZpbGxDb2xvcjogY29sb3JWYXIoQ29sb3JOYW1lcy5CYWNrZ3JvdW5kRGFyayksXG4gICAgICBleHBhbnNpb25UZXh0OiB7XG4gICAgICAgIHBkcDogXCJXaWxsIHRoaXMgY29tcGxldGUgeW91ciByZXRybyB3YXJkcm9iZT9cIixcbiAgICAgICAgcGxwOiBcIldoYXQgdmludGFnZSB0cmVhc3VyZSB3aWxsIHlvdSBmaW5kIHRvZGF5P1wiLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHByb2R1Y3RDYXJkQ29uZmlnOiB7XG4gICAgICAuLi5kZWZhdWx0VW5pcXVlVmludGFnZU9yZ0NvbmZpZy5wcm9kdWN0Q2FyZENvbmZpZyEsXG4gICAgfSxcbiAgICBwcm9kdWN0UmV2aWV3Q29uZmlnOiB7XG4gICAgICAuLi5kZWZhdWx0VW5pcXVlVmludGFnZU9yZ0NvbmZpZy5wcm9kdWN0UmV2aWV3Q29uZmlnISxcbiAgICAgIGNvbG9yVmFyaWFudDogXCJicmFuZFwiLFxuICAgICAgaW5jZW50aXZpemVkUmV2aWV3RmxhZzogZmFsc2UsXG4gICAgfSxcbiAgICB3ZWxjb21lU2VjdGlvbkNvbmZpZzoge1xuICAgICAgLi4uZGVmYXVsdFVuaXF1ZVZpbnRhZ2VPcmdDb25maWcud2VsY29tZVNlY3Rpb25Db25maWchLFxuICAgICAgdGl0bGU6IFwiV2VsY29tZSB0byBVbmlxdWUgVmludGFnZSBBSSFcIixcbiAgICAgIGNvbG9yVmFyaWFudDogXCJicmFuZFwiLFxuICAgICAgc3VidGl0bGU6XG4gICAgICAgIFwiSGVsbG8sIGRhcmxpbmchIEknbSBoZXJlIHRvIGhlbHAgeW91IGZpbmQgZXZlcnl0aGluZyB5b3UgbmVlZCB0byBjaGFubmVsIHlvdXIgdW5pcXVlLCB2aW50YWdlLWluc3BpcmVkIHN0eWxlLiBXaGV0aGVyIHlvdSdyZSBzZWFyY2hpbmcgZm9yIHRoZSBwZXJmZWN0IG91dGZpdCwgbmVlZCBzaXppbmcgYWR2aWNlLCBvciBqdXN0IHdhbnQgdG8gZXhwbG9yZSBmYWJ1bG91cyBhY2Nlc3NvcmllcywgbGV0J3MgbWFrZSB5b3VyIHNob3BwaW5nIGV4cGVyaWVuY2UgYXMgZ2xhbW9yb3VzIGFzIHlvdSBhcmUhXCIsXG4gICAgfSxcbiAgICBjdXN0b21lclNlcnZpY2VJbnRlZ3JhdGlvbjoge1xuICAgICAgaW50ZWdyYXRpb25Nb2RlOiBDdXN0b21lclNlcnZpY2VJbnRlZ3JhdGlvbk1vZGUuc2ltcGxlLFxuICAgICAgcHJvdmlkZXI6IEN1c3RvbWVyU2VydmljZVR5cGUuem93aWUsXG4gICAgfSxcbiAgICBjb252ZXJzYXRpb25hbFNlYXJjaDoge1xuICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgIHJlcGx5SW5wdXQ6IHtcbiAgICAgICAgc2VuZEljb246IFwic2VhcmNoXCIsXG4gICAgICAgIHBsYWNlaG9sZGVyOiBcIldoYXQgY2FuIEkgaGVscCB5b3UgZmluZD9cIixcbiAgICAgIH0sXG4gICAgICAvLyBUT0RPOiBNaWdyYXRlIGl0IHRvIHRoZSBuZXcgbW91bnQgcG9pbnQgc3RydWN0dXJlLlxuICAgICAgZW50cnlwb2ludENvbnRhaW5lcjogXCJpZHxjaGF0LXNlYXJjaC1lbnRyeXBvaW50XCIsXG4gICAgICBwcm9kdWN0R3JpZENvbnRhaW5lcjogXCJpZHxjaGF0LXNlYXJjaC1wcm9kdWN0LXBhZ2VcIixcbiAgICAgIHNlYXJjaENvbnRlbnQ6IFwicXVlcnl8LnNzX19hdXRvY29tcGxldGUtLXRhcmdldFwiLFxuICAgICAgcGFnZUNvbnRlbnQ6IFwiaWR8TWFpbkNvbnRlbnRcIixcbiAgICAgIGdlbmVyYWxTZWFyY2hCdG46IFwicXVlcnl8YnV0dG9uLm1vZGFsX19jbG9zZS1idXR0b25cIixcbiAgICB9LFxuICAgIHNlYXJjaENvbmZpZzoge1xuICAgICAgZW5hYmxlR2xvYmFsU2VhcmNoOiB0cnVlLFxuICAgICAgc2VhcmNoRmlsdGVyQ29uZmlnOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBmaWx0ZXJJZDogXCJjb2xvclwiLFxuICAgICAgICAgIGRpc3BsYXlOYW1lOiBcIkNvbG9yXCIsXG4gICAgICAgICAgYXR0cmlidXRlOiBcImNvbG9yc1wiLFxuICAgICAgICAgIHR5cGU6IFwiZHluYW1pY1wiLFxuICAgICAgICAgIHNvcnRpbmc6IHtcbiAgICAgICAgICAgIHR5cGU6IFwiYWxwaGFiZXRpY1wiLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBmaWx0ZXJJZDogXCJzaXplXCIsXG4gICAgICAgICAgZGlzcGxheU5hbWU6IFwiU2l6ZVwiLFxuICAgICAgICAgIHR5cGU6IFwiZHluYW1pY1wiLFxuICAgICAgICAgIGF0dHJpYnV0ZTogXCJzaXplc1wiLFxuICAgICAgICAgIHNvcnRpbmc6IHtcbiAgICAgICAgICAgIHR5cGU6IFwiY3VzdG9tXCIsXG4gICAgICAgICAgICBtYXA6IHtcbiAgICAgICAgICAgICAgXCJPbmUgU2l6ZVwiOiAxMCxcbiAgICAgICAgICAgICAgXCJYWFMgLyAwXCI6IDIwLFxuICAgICAgICAgICAgICBcIlhTIC8gMlwiOiAzMCxcbiAgICAgICAgICAgICAgXCJTIC8gNFwiOiA0MCxcbiAgICAgICAgICAgICAgXCJNIC8gNiAtIDhcIjogNTAsXG4gICAgICAgICAgICAgIFwiTCAvIDEwIC0gMTJcIjogNjAsXG4gICAgICAgICAgICAgIFwiWEwgLyAxNFwiOiA3MCxcbiAgICAgICAgICAgICAgXCIxWCAvIDE2XCI6IDgwLFxuICAgICAgICAgICAgICBcIjJYIC8gMThcIjogOTAsXG4gICAgICAgICAgICAgIFwiM1ggLyAyMFwiOiAxMDAsXG4gICAgICAgICAgICAgIFwiNFggLyAyMiAtIDI0XCI6IDExMCxcbiAgICAgICAgICAgICAgXCI1WCAvIDI2XCI6IDEyMCxcbiAgICAgICAgICAgICAgXCI2WFwiOiAxMzAsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBmaWx0ZXJJZDogXCJwcmljZVwiLFxuICAgICAgICAgIGRpc3BsYXlOYW1lOiBcIlByaWNlXCIsXG4gICAgICAgICAgdHlwZTogXCJwcmljZVwiLFxuICAgICAgICAgIGJ1Y2tldFNpemU6IDUwLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuXG4gICAgbWVyY2hhbnRPdmVycmlkZUNzczogYFxuICAgICAgI3NwaWZmeS1tb2RhbC1jb250YWluZXIge1xuICAgICAgICB6LWluZGV4OiAyMTQ3NDgzMDAxICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAuc3BpZmZ5LXN0YXItcmF0aW5nLXN0YXIge1xuICAgICAgICBmaWxsOiB2YXIoLS1zcGlmZnktY29sb3JzLXRleHQtYWNjZW50KSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLnNwaWZmeS1wcm9kdWN0LXJldmlldy1oZWFkZXItcmV2aWV3ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tc3BpZmZ5LWNvbG9ycy10ZXh0LXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC8qIFdlbGNvbWVTZWN0aW9uIGxpZ2h0IHRleHQgb3ZlcnJpZGUgKi9cbiAgICAgIC5zcGlmZnktd2VsY29tZS1zZWN0aW9uLW1lc3NhZ2UtdGl0bGUge1xuICAgICAgICBjb2xvcjogdmFyKC0tc3BpZmZ5LWNvbG9ycy10ZXh0LWxpZ2h0KSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLnNwaWZmeS13ZWxjb21lLXNlY3Rpb24tbWVzc2FnZS1zdWJ0aXRsZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1zcGlmZnktY29sb3JzLXRleHQtbGlnaHQpICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgICNzcGlmZnktYWktY2hhdC1wcmV2aWV3IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICAjY2hhdC1zZWFyY2gtcHJvZHVjdC1wYWdlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICAjY2hhdC1zZWFyY2gtbmF2LWVudHJ5cG9pbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG4gICAgICAjc3BpZmZ5LWFpLWNoYXQtcHJldmlldy5pcy1wZHAge1xuICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggdmFyKC0tc3BpZmZ5LWNvbG9ycy1ib3JkZXItbGlnaHQpO1xuICAgICAgfVxuICAgICAgI3NwaWZmeS10b3Atc3VnZ2VzdGlvbi1iYXItaWQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICAgICNzcGlmZnktYWktY2hhdC1wcmV2aWV3IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICAjc3BpZmZ5LWJvdHRvbS1yZXZpZXdzLWJhci1pZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgLnNwaWZmeS1jaGF0LXNlYXJjaC1lbnRyeXBvaW50LWNvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNwaWZmeS1jb2xvcnMtYmFja2dyb3VuZC1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXNwaWZmeS1jb2xvcnMtYmFja2dyb3VuZC1kYXJrKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLnNwaWZmeS1jaGF0LXNlYXJjaC1lbnRyeXBvaW50LWNvbnRhaW5lciAuc3BpZmZ5LWJ1dHRvbi1iYXNlLWJ1dHRvbiB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1zcGlmZnktY29sb3JzLXRleHQtcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgfVxuICAgICAgLnNwaWZmeS1jaGF0LXNlYXJjaC1lbnRyeXBvaW50LXRleHQgcCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnQm9va21hbmlhLVNlbWlCb2xkJyAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgICNzcGlmZnktYWktY2hhdC1wcmV2aWV3LWNvbnRlbnRzIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgICAtLWNoYWtyYS1mb250cy1oZWFkaW5nOiAnQm9va21hbmlhLVJlZ3VsYXInLCAnUG9wcGlucycsIHNhbnMtc2VyaWY7XG4gICAgICB9XG4gICAgICAuc3BpZmZ5LWhlYWRsaW5lIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdCb29rbWFuaWEtUmVndWxhcicsICdQb3BwaW5zJywgc2Fucy1zZXJpZjtcbiAgICAgIH1cbiAgICAgICNzcGlmZnktbW9kZWwtY29udGFpbmVyIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tY2hha3JhLWZvbnRzLWhlYWRpbmcpO1xuICAgICAgfVxuICAgICAgI3NwaWZmeS1tb2RlbC1jb250YWluZXIgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgICAgIC0tY2hha3JhLWZvbnRzLWhlYWRpbmc6ICdCb29rbWFuaWEtUmVndWxhcicsICdQb3BwaW5zJywgc2Fucy1zZXJpZjtcbiAgICAgIH1cbiAgICAgIC5zcGlmZnktc3VnZ2VzdGlvbi1idXR0b24tcXVlc3Rpb24tY2xhc3Mge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zcGlmZnktY29sb3JzLWJvcmRlci1saWdodCk7XG4gICAgICB9XG4gICAgICAuc3BpZmZ5LXRhZy1waWxsLXRleHQge1xuICAgICAgICBjb2xvcjogdmFyKC0tc3BpZmZ5LWNvbG9ycy10ZXh0LWxpZ2h0KSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgI3JldHVybi10by1yZXN1bHRzLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgLnNwaWZmeS1iYWNrLXRvLXJlc3VsdHMtYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgICAjY2hhdC1zZWFyY2gtZW50cnlwb2ludCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgI2NoYXQtc2VhcmNoLWVudHJ5cG9pbnQtbW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC5zc19fYXV0b2NvbXBsZXRlLS1hY3RpdmUgI2NoYXQtc2VhcmNoLWVudHJ5cG9pbnQtbW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIH1cbiAgICAgIC5zcGlmZnktcHJvZHVjdC1jYXJkLXRpdGxlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWNoYWtyYS1mb250cy1oZWFkaW5nKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXNwaWZmeS1jb2xvcnMtdGV4dC1saW5rKTtcbiAgICAgIH1cbiAgICAgIC5zcGlmZnktcHJvZHVjdC1jYXJkLXRleHQtY29sb3Ige1xuICAgICAgICBjb2xvcjogdmFyKC0tc3BpZmZ5LWNvbG9ycy10ZXh0LXNlY29uZGFyeSk7XG4gICAgICB9XG5cbiAgICAgIC5zcGlmZnktY2hhdC1oZWFkZXItY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXNwaWZmeS1jb2xvcnMtYmFja2dyb3VuZC1wcmltYXJ5KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3BpZmZ5LWNvbG9ycy1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTtcbiAgICAgIH1cblxuICAgICAgI3NwaWZmeS10b3Atc3VnZ2VzdGlvbi1iYXItY29udGVudHMgLnNwaWZmeS1zdWdnZXN0aW9uLWJ1dHRvbi1xdWVzdGlvbi1jbGFzcyBzcGFuIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXNwaWZmeS1jb2xvcnMtdGV4dC1hY2NlbnQpICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgICNzcGlmZnktdG9wLXN1Z2dlc3Rpb24tYmFyLWNvbnRlbnRzIC5zcGlmZnktc3VnZ2VzdGlvbi1idXR0b24tcXVlc3Rpb24tY2xhc3Mgc3ZnIHtcbiAgICAgICAgZmlsbDogdmFyKC0tc3BpZmZ5LWNvbG9ycy10ZXh0LWFjY2VudCkgIWltcG9ydGFudDtcbiAgICAgICAgc3Ryb2tlOiB2YXIoLS1zcGlmZnktY29sb3JzLXRleHQtYWNjZW50KSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAjc3BpZmZ5LWJvdHRvbS1zdWdnZXN0aW9uLWJhci1jb250ZW50cyAuc3BpZmZ5LXN1Z2dlc3Rpb24tYnV0dG9uLXF1ZXN0aW9uLWNsYXNzIHN2ZyB7XG4gICAgICAgIGZpbGw6IHZhcigtLXNwaWZmeS1jb2xvcnMtYWNjZW50LXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gICAgICAgIHN0cm9rZTogdmFyKC0tc3BpZmZ5LWNvbG9ycy1hY2NlbnQtcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgI3NwaWZmeS1ib3R0b20tc3VnZ2VzdGlvbi1iYXItY29udGVudHMgLnNwaWZmeS1zdWdnZXN0aW9uLWJ1dHRvbi1xdWVzdGlvbi1jbGFzczpob3ZlciBzdmcge1xuICAgICAgICBmaWxsOiB2YXIoLS1zcGlmZnktY29sb3JzLXRleHQtbGluaykgIWltcG9ydGFudDtcbiAgICAgICAgc3Ryb2tlOiB2YXIoLS1zcGlmZnktY29sb3JzLXRleHQtbGluaykgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgI3NwaWZmeS1haS1nbG9iYWwtc2VhcmNoLWVudHJ5cG9pbnQuZ2xvYmFsLWVudHJ5LWRlc2t0b3Age1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICAgICNzcGlmZnktYWktZ2xvYmFsLXNlYXJjaC1lbnRyeXBvaW50LW1vYmlsZS5nbG9iYWwtZW50cnktbW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICNzcGlmZnktYWktZ2xvYmFsLXNlYXJjaC1lbnRyeXBvaW50Lmdsb2JhbC1lbnRyeS1kZXNrdG9wIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgICNzcGlmZnktYWktZ2xvYmFsLXNlYXJjaC1lbnRyeXBvaW50LW1vYmlsZS5nbG9iYWwtZW50cnktbW9iaWxlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfSBcblxuICAgICAgI3NwaWZmeS1haS1nbG9iYWwtc2VhcmNoLWVudHJ5cG9pbnQuZ2xvYmFsLWVudHJ5LWRlc2t0b3AgLnNwaWZmeS1nbG9iYWwtc2VhcmNoLWlucHV0LWNvbnRhaW5lciB7XG4gICAgICAgIGhlaWdodDogODBweDtcbiAgICAgIH1cblxuICAgICAgLnNwaWZmeS1nbG9iYWwtc2VhcmNoLWlucHV0LWNvbnRhaW5lciAuc3BpZmZ5LWdsb2JhbC1zZWFyY2gtdGV4dCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlBvbHlcIiwgc2VyaWY7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1zcGlmZnktY29sb3JzLXRleHQtbGluaykgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDgwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiA2cHg7XG4gICAgICB9XG5cbiAgICAgIC5zcGlmZnktc2VhcmNoLW92ZXJsYXktY29udGVudCAuc3BpZmZ5LWhlYWRsaW5lIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiUG9seVwiLCBzZXJpZjtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zcGlmZnktc2VhcmNoLW92ZXJsYXktY29udGVudCAuc3BpZmZ5LWJvZHktdGV4dCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlBvbHlcIiwgc2VyaWY7XG4gICAgICB9XG5cbiAgICAgIC5zcGlmZnktZ2xvYmFsLXNlYXJjaC1pbnB1dC1jb250YWluZXIgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDI2cHg7XG4gICAgICB9XG4gICAgYCxcbiAgfTtcbn07XG5cbmNvbnN0IHVuaXF1ZVZpbnRhZ2VQYWdlQ29uZmlnID0gKCk6IE9yZ1BhZ2VDb25maWcgPT4gKHtcbiAgcGFnZVZhcmlhbnRzOiBbXG4gICAge1xuICAgICAgdmFyaWFudElkOiBcInNlYXJjaC1yZXN1bHRzXCIsXG4gICAgICB2YXJpYW50VHlwZTogXCJwYWdlX3Zpc2l0XCIsXG4gICAgICB2YXJpYW50VGVzdHM6IFtcbiAgICAgICAgeyB0ZXN0VHlwZTogUGFnZVZhcmlhbnRUZXN0VHlwZS5TaG9waWZ5UExQIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0ZXN0VHlwZTogUGFnZVZhcmlhbnRUZXN0VHlwZS5RdWVyeVBhcmFtLFxuICAgICAgICAgIHF1ZXJ5UGFyYW06IFwicVwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuUGFnZUNhdGVnb3J5LFxuICAgICAgICAgIGV4dHJhY3Rvcjoge1xuICAgICAgICAgICAgdHlwZTogQ2F0ZWdvcnlFeHRyYWN0b3JUeXBlLlZpc2l0Q2F0ZWdvcnlEZWZhdWx0LFxuICAgICAgICAgICAgdmFsdWU6IFBhZ2VWaXNpdENhdGVnb3J5Lk90aGVyLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgd2lkZ2V0TW91bnRpbmc6IFtdLFxuICAgIH0sXG4gICAge1xuICAgICAgdmFyaWFudElkOiBcInBscC1nbG9iYWwtc2VhcmNoXCIsXG4gICAgICB2YXJpYW50VHlwZTogXCJwbHBcIixcbiAgICAgIHZhcmlhbnRUZXN0czogW1xuICAgICAgICB7IHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLlNob3BpZnlQTFAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLkZlYXR1cmVHYXRlLFxuICAgICAgICAgIGZlYXR1cmVHYXRlOiBGZWF0dXJlR2F0ZXMuSXNHbG9iYWxTZWFyY2hFbmFibGVkLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIHBscElkRXh0cmFjdG9yOiBcInNob3BpZnktY29sbGVjdGlvbi1pZFwiLFxuICAgICAgd2lkZ2V0TW91bnRpbmc6IFtcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiZ2xvYmFsU2VhcmNoRW50cnlQb2ludFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImdsb2JhbFNlYXJjaEVudHJ5UG9pbnRcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiZ2xvYmFsU2VhcmNoRW50cnlQb2ludE1vYmlsZVwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImdsb2JhbFNlYXJjaEVudHJ5UG9pbnRNb2JpbGVcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiY2hhdFByZXZpZXdQTFBcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJjaGF0UHJldmlld1BMUFwiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHZhcmlhbnRJZDogXCJwbHAtc2VhcmNoXCIsXG4gICAgICB2YXJpYW50VHlwZTogXCJwbHBcIixcbiAgICAgIHZhcmlhbnRUZXN0czogW1xuICAgICAgICB7XG4gICAgICAgICAgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuRmVhdHVyZUdhdGUsXG4gICAgICAgICAgZmVhdHVyZUdhdGU6IEZlYXR1cmVHYXRlcy5Jc05ld0ZlYXR1cmVFbmFibGVkLFxuICAgICAgICB9LFxuICAgICAgICB7IHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLlNob3BpZnlQTFAgfSxcbiAgICAgIF0sXG4gICAgICBwbHBJZEV4dHJhY3RvcjogXCJzaG9waWZ5LWNvbGxlY3Rpb24taWRcIixcbiAgICAgIHdpZGdldE1vdW50aW5nOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImNoYXRQcmV2aWV3UExQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwic2VhcmNoUHJvbXB0UExQXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgdmFyaWFudElkOiBcInBscFwiLFxuICAgICAgdmFyaWFudFR5cGU6IFwicGxwXCIsXG4gICAgICB2YXJpYW50VGVzdHM6IFt7IHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLlNob3BpZnlQTFAgfV0sXG4gICAgICBwbHBJZEV4dHJhY3RvcjogXCJzaG9waWZ5LWNvbGxlY3Rpb24taWRcIixcbiAgICAgIHdpZGdldE1vdW50aW5nOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImNoYXRQcmV2aWV3UExQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiY2hhdFByZXZpZXdQTFBcIixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICB2YXJpYW50SWQ6IFwicGRwRHJlc3Nlc0hhc1Jldmlld3NHbG9iYWxTZWFyY2hcIixcbiAgICAgIHZhcmlhbnRUeXBlOiBcInBkcFwiLFxuICAgICAgdmFyaWFudFRlc3RzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0ZXN0VHlwZTogUGFnZVZhcmlhbnRUZXN0VHlwZS5TaG9waWZ5UERQLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuSW5Db2xsZWN0aW9uLFxuICAgICAgICAgIGNvbGxlY3Rpb25zOiBbXCJkcmVzc2VzXCJdLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuSGFzUmV2aWV3cyxcbiAgICAgICAgICByZXZpZXdNaW5pbXVtOiA0LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuRmVhdHVyZUdhdGUsXG4gICAgICAgICAgZmVhdHVyZUdhdGU6IEZlYXR1cmVHYXRlcy5Jc0dsb2JhbFNlYXJjaEVuYWJsZWQsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgcHJvZHVjdElkRXh0cmFjdG9yOiBcInNob3BpZnktcHJvZHVjdC1pZFwiLFxuICAgICAgd2lkZ2V0TW91bnRpbmc6IFtcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiZ2xvYmFsU2VhcmNoRW50cnlQb2ludFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImdsb2JhbFNlYXJjaEVudHJ5UG9pbnRcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiZ2xvYmFsU2VhcmNoRW50cnlQb2ludE1vYmlsZVwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImdsb2JhbFNlYXJjaEVudHJ5UG9pbnRNb2JpbGVcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwidG9wU3VnZ2VzdGlvbkJhclBEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcInRvcFN1Z2dlc3Rpb25zQmFyRHJlc3Nlc0hhc1Jldmlld3NcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiY2hhdFByZXZpZXdQRFBcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJjaGF0UHJldmlld1BEUFwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJib3R0b21TdWdnZXN0aW9uQmFyUERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiYm90dG9tU3VnZ2VzdGlvbnNCYXJcIixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICB2YXJpYW50SWQ6IFwicGRwRHJlc3Nlc05vUmV2aWV3c0dsb2JhbFNlYXJjaFwiLFxuICAgICAgdmFyaWFudFR5cGU6IFwicGRwXCIsXG4gICAgICB2YXJpYW50VGVzdHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLlNob3BpZnlQRFAsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0ZXN0VHlwZTogUGFnZVZhcmlhbnRUZXN0VHlwZS5JbkNvbGxlY3Rpb24sXG4gICAgICAgICAgY29sbGVjdGlvbnM6IFtcImRyZXNzZXNcIl0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0ZXN0VHlwZTogUGFnZVZhcmlhbnRUZXN0VHlwZS5GZWF0dXJlR2F0ZSxcbiAgICAgICAgICBmZWF0dXJlR2F0ZTogRmVhdHVyZUdhdGVzLklzR2xvYmFsU2VhcmNoRW5hYmxlZCxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBwcm9kdWN0SWRFeHRyYWN0b3I6IFwic2hvcGlmeS1wcm9kdWN0LWlkXCIsXG4gICAgICB3aWRnZXRNb3VudGluZzogW1xuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJnbG9iYWxTZWFyY2hFbnRyeVBvaW50XCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiZ2xvYmFsU2VhcmNoRW50cnlQb2ludFwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJnbG9iYWxTZWFyY2hFbnRyeVBvaW50TW9iaWxlXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiZ2xvYmFsU2VhcmNoRW50cnlQb2ludE1vYmlsZVwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJ0b3BTdWdnZXN0aW9uQmFyUERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwidG9wU3VnZ2VzdGlvbnNCYXJEcmVzc2VzTm9SZXZpZXdzXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImNoYXRQcmV2aWV3UERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiY2hhdFByZXZpZXdQRFBcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiYm90dG9tU3VnZ2VzdGlvbkJhclBEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImJvdHRvbVN1Z2dlc3Rpb25zQmFyXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgdmFyaWFudElkOiBcInBkcFN3aW13ZWFySGFzUmV2aWV3c0dsb2JhbFNlYXJjaFwiLFxuICAgICAgdmFyaWFudFR5cGU6IFwicGRwXCIsXG4gICAgICB2YXJpYW50VGVzdHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLlNob3BpZnlQRFAsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0ZXN0VHlwZTogUGFnZVZhcmlhbnRUZXN0VHlwZS5JbkNvbGxlY3Rpb24sXG4gICAgICAgICAgY29sbGVjdGlvbnM6IFtcInN3aW0taHRtbFwiXSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLkhhc1Jldmlld3MsXG4gICAgICAgICAgcmV2aWV3TWluaW11bTogNCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLkZlYXR1cmVHYXRlLFxuICAgICAgICAgIGZlYXR1cmVHYXRlOiBGZWF0dXJlR2F0ZXMuSXNHbG9iYWxTZWFyY2hFbmFibGVkLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIHByb2R1Y3RJZEV4dHJhY3RvcjogXCJzaG9waWZ5LXByb2R1Y3QtaWRcIixcbiAgICAgIHdpZGdldE1vdW50aW5nOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImdsb2JhbFNlYXJjaEVudHJ5UG9pbnRcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJnbG9iYWxTZWFyY2hFbnRyeVBvaW50XCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImdsb2JhbFNlYXJjaEVudHJ5UG9pbnRNb2JpbGVcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJnbG9iYWxTZWFyY2hFbnRyeVBvaW50TW9iaWxlXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcInRvcFN1Z2dlc3Rpb25CYXJQRFBcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJ0b3BTdWdnZXN0aW9uc0JhclN3aW13ZWFySGFzUmV2aWV3c1wiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJjaGF0UHJldmlld1BEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImNoYXRQcmV2aWV3UERQXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImJvdHRvbVN1Z2dlc3Rpb25CYXJQRFBcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJib3R0b21TdWdnZXN0aW9uc0JhclwiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHZhcmlhbnRJZDogXCJwZHBTd2ltd2Vhck5vUmV2aWV3c0dsb2JhbFNlYXJjaFwiLFxuICAgICAgdmFyaWFudFR5cGU6IFwicGRwXCIsXG4gICAgICB2YXJpYW50VGVzdHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLlNob3BpZnlQRFAsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0ZXN0VHlwZTogUGFnZVZhcmlhbnRUZXN0VHlwZS5JbkNvbGxlY3Rpb24sXG4gICAgICAgICAgY29sbGVjdGlvbnM6IFtcInN3aW0taHRtbFwiXSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLkZlYXR1cmVHYXRlLFxuICAgICAgICAgIGZlYXR1cmVHYXRlOiBGZWF0dXJlR2F0ZXMuSXNHbG9iYWxTZWFyY2hFbmFibGVkLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIHByb2R1Y3RJZEV4dHJhY3RvcjogXCJzaG9waWZ5LXByb2R1Y3QtaWRcIixcbiAgICAgIHdpZGdldE1vdW50aW5nOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImdsb2JhbFNlYXJjaEVudHJ5UG9pbnRcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJnbG9iYWxTZWFyY2hFbnRyeVBvaW50XCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImdsb2JhbFNlYXJjaEVudHJ5UG9pbnRNb2JpbGVcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJnbG9iYWxTZWFyY2hFbnRyeVBvaW50TW9iaWxlXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcInRvcFN1Z2dlc3Rpb25CYXJQRFBcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJ0b3BTdWdnZXN0aW9uc0JhclN3aW13ZWFyTm9SZXZpZXdzXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImNoYXRQcmV2aWV3UERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiY2hhdFByZXZpZXdQRFBcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiYm90dG9tU3VnZ2VzdGlvbkJhclBEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImJvdHRvbVN1Z2dlc3Rpb25zQmFyXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgdmFyaWFudElkOiBcInBkcFNob2VzSGFzUmV2aWV3c0dsb2JhbFNlYXJjaFwiLFxuICAgICAgdmFyaWFudFR5cGU6IFwicGRwXCIsXG4gICAgICB2YXJpYW50VGVzdHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLlNob3BpZnlQRFAsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0ZXN0VHlwZTogUGFnZVZhcmlhbnRUZXN0VHlwZS5JbkNvbGxlY3Rpb24sXG4gICAgICAgICAgY29sbGVjdGlvbnM6IFtcInNob2VzXCJdLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuSGFzUmV2aWV3cyxcbiAgICAgICAgICByZXZpZXdNaW5pbXVtOiA0LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuRmVhdHVyZUdhdGUsXG4gICAgICAgICAgZmVhdHVyZUdhdGU6IEZlYXR1cmVHYXRlcy5Jc0dsb2JhbFNlYXJjaEVuYWJsZWQsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgcHJvZHVjdElkRXh0cmFjdG9yOiBcInNob3BpZnktcHJvZHVjdC1pZFwiLFxuICAgICAgd2lkZ2V0TW91bnRpbmc6IFtcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiZ2xvYmFsU2VhcmNoRW50cnlQb2ludFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImdsb2JhbFNlYXJjaEVudHJ5UG9pbnRcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiZ2xvYmFsU2VhcmNoRW50cnlQb2ludE1vYmlsZVwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImdsb2JhbFNlYXJjaEVudHJ5UG9pbnRNb2JpbGVcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwidG9wU3VnZ2VzdGlvbkJhclBEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcInRvcFN1Z2dlc3Rpb25zQmFyU2hvZXNIYXNSZXZpZXdzXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImNoYXRQcmV2aWV3UERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiY2hhdFByZXZpZXdQRFBcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiYm90dG9tU3VnZ2VzdGlvbkJhclBEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImJvdHRvbVN1Z2dlc3Rpb25zQmFyXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgdmFyaWFudElkOiBcInBkcFNob2VzTm9SZXZpZXdzR2xvYmFsU2VhcmNoXCIsXG4gICAgICB2YXJpYW50VHlwZTogXCJwZHBcIixcbiAgICAgIHZhcmlhbnRUZXN0czogW1xuICAgICAgICB7XG4gICAgICAgICAgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuU2hvcGlmeVBEUCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLkluQ29sbGVjdGlvbixcbiAgICAgICAgICBjb2xsZWN0aW9uczogW1wic2hvZXNcIl0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0ZXN0VHlwZTogUGFnZVZhcmlhbnRUZXN0VHlwZS5GZWF0dXJlR2F0ZSxcbiAgICAgICAgICBmZWF0dXJlR2F0ZTogRmVhdHVyZUdhdGVzLklzR2xvYmFsU2VhcmNoRW5hYmxlZCxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBwcm9kdWN0SWRFeHRyYWN0b3I6IFwic2hvcGlmeS1wcm9kdWN0LWlkXCIsXG4gICAgICB3aWRnZXRNb3VudGluZzogW1xuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJnbG9iYWxTZWFyY2hFbnRyeVBvaW50XCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiZ2xvYmFsU2VhcmNoRW50cnlQb2ludFwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJnbG9iYWxTZWFyY2hFbnRyeVBvaW50TW9iaWxlXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiZ2xvYmFsU2VhcmNoRW50cnlQb2ludE1vYmlsZVwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJ0b3BTdWdnZXN0aW9uQmFyUERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwidG9wU3VnZ2VzdGlvbnNCYXJTaG9lc05vUmV2aWV3c1wiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJjaGF0UHJldmlld1BEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImNoYXRQcmV2aWV3UERQXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImJvdHRvbVN1Z2dlc3Rpb25CYXJQRFBcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJib3R0b21TdWdnZXN0aW9uc0JhclwiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHZhcmlhbnRJZDogXCJwZHBHbG9iYWxTZWFyY2hcIixcbiAgICAgIHZhcmlhbnRUeXBlOiBcInBkcFwiLFxuICAgICAgdmFyaWFudFRlc3RzOiBbXG4gICAgICAgIHsgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuU2hvcGlmeVBEUCB9LFxuICAgICAgICB7XG4gICAgICAgICAgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuRmVhdHVyZUdhdGUsXG4gICAgICAgICAgZmVhdHVyZUdhdGU6IEZlYXR1cmVHYXRlcy5Jc0dsb2JhbFNlYXJjaEVuYWJsZWQsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgcHJvZHVjdElkRXh0cmFjdG9yOiBcInNob3BpZnktcHJvZHVjdC1pZFwiLFxuICAgICAgd2lkZ2V0TW91bnRpbmc6IFtcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiZ2xvYmFsU2VhcmNoRW50cnlQb2ludFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImdsb2JhbFNlYXJjaEVudHJ5UG9pbnRcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiZ2xvYmFsU2VhcmNoRW50cnlQb2ludE1vYmlsZVwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImdsb2JhbFNlYXJjaEVudHJ5UG9pbnRNb2JpbGVcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwidG9wU3VnZ2VzdGlvbkJhclBEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcInRvcFN1Z2dlc3Rpb25zQmFyXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImNoYXRQcmV2aWV3UERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiY2hhdFByZXZpZXdQRFBcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiYm90dG9tU3VnZ2VzdGlvbkJhclBEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImJvdHRvbVN1Z2dlc3Rpb25zQmFyXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgdmFyaWFudElkOiBcInBkcERyZXNzZXNIYXNSZXZpZXdzXCIsXG4gICAgICB2YXJpYW50VHlwZTogXCJwZHBcIixcbiAgICAgIHZhcmlhbnRUZXN0czogW1xuICAgICAgICB7XG4gICAgICAgICAgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuU2hvcGlmeVBEUCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLkluQ29sbGVjdGlvbixcbiAgICAgICAgICBjb2xsZWN0aW9uczogW1wiZHJlc3Nlc1wiXSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLkhhc1Jldmlld3MsXG4gICAgICAgICAgcmV2aWV3TWluaW11bTogNCxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBwcm9kdWN0SWRFeHRyYWN0b3I6IFwic2hvcGlmeS1wcm9kdWN0LWlkXCIsXG4gICAgICB3aWRnZXRNb3VudGluZzogW1xuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJ0b3BTdWdnZXN0aW9uQmFyUERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwidG9wU3VnZ2VzdGlvbnNCYXJEcmVzc2VzSGFzUmV2aWV3c1wiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJjaGF0UHJldmlld1BEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImNoYXRQcmV2aWV3UERQXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImJvdHRvbVN1Z2dlc3Rpb25CYXJQRFBcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJib3R0b21TdWdnZXN0aW9uc0JhclwiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHZhcmlhbnRJZDogXCJwZHBEcmVzc2VzTm9SZXZpZXdzXCIsXG4gICAgICB2YXJpYW50VHlwZTogXCJwZHBcIixcbiAgICAgIHZhcmlhbnRUZXN0czogW1xuICAgICAgICB7XG4gICAgICAgICAgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuU2hvcGlmeVBEUCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLkluQ29sbGVjdGlvbixcbiAgICAgICAgICBjb2xsZWN0aW9uczogW1wiZHJlc3Nlc1wiXSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBwcm9kdWN0SWRFeHRyYWN0b3I6IFwic2hvcGlmeS1wcm9kdWN0LWlkXCIsXG4gICAgICB3aWRnZXRNb3VudGluZzogW1xuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJ0b3BTdWdnZXN0aW9uQmFyUERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwidG9wU3VnZ2VzdGlvbnNCYXJEcmVzc2VzTm9SZXZpZXdzXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImNoYXRQcmV2aWV3UERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiY2hhdFByZXZpZXdQRFBcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiYm90dG9tU3VnZ2VzdGlvbkJhclBEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImJvdHRvbVN1Z2dlc3Rpb25zQmFyXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgdmFyaWFudElkOiBcInBkcFN3aW13ZWFySGFzUmV2aWV3c1wiLFxuICAgICAgdmFyaWFudFR5cGU6IFwicGRwXCIsXG4gICAgICB2YXJpYW50VGVzdHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLlNob3BpZnlQRFAsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0ZXN0VHlwZTogUGFnZVZhcmlhbnRUZXN0VHlwZS5JbkNvbGxlY3Rpb24sXG4gICAgICAgICAgY29sbGVjdGlvbnM6IFtcInN3aW0taHRtbFwiXSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLkhhc1Jldmlld3MsXG4gICAgICAgICAgcmV2aWV3TWluaW11bTogNCxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBwcm9kdWN0SWRFeHRyYWN0b3I6IFwic2hvcGlmeS1wcm9kdWN0LWlkXCIsXG4gICAgICB3aWRnZXRNb3VudGluZzogW1xuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJ0b3BTdWdnZXN0aW9uQmFyUERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwidG9wU3VnZ2VzdGlvbnNCYXJTd2ltd2Vhckhhc1Jldmlld3NcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiY2hhdFByZXZpZXdQRFBcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJjaGF0UHJldmlld1BEUFwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJib3R0b21TdWdnZXN0aW9uQmFyUERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiYm90dG9tU3VnZ2VzdGlvbnNCYXJcIixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICB2YXJpYW50SWQ6IFwicGRwU3dpbXdlYXJOb1Jldmlld3NcIixcbiAgICAgIHZhcmlhbnRUeXBlOiBcInBkcFwiLFxuICAgICAgdmFyaWFudFRlc3RzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0ZXN0VHlwZTogUGFnZVZhcmlhbnRUZXN0VHlwZS5TaG9waWZ5UERQLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuSW5Db2xsZWN0aW9uLFxuICAgICAgICAgIGNvbGxlY3Rpb25zOiBbXCJzd2ltLWh0bWxcIl0sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgcHJvZHVjdElkRXh0cmFjdG9yOiBcInNob3BpZnktcHJvZHVjdC1pZFwiLFxuICAgICAgd2lkZ2V0TW91bnRpbmc6IFtcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwidG9wU3VnZ2VzdGlvbkJhclBEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcInRvcFN1Z2dlc3Rpb25zQmFyU3dpbXdlYXJOb1Jldmlld3NcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiY2hhdFByZXZpZXdQRFBcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJjaGF0UHJldmlld1BEUFwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJib3R0b21TdWdnZXN0aW9uQmFyUERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiYm90dG9tU3VnZ2VzdGlvbnNCYXJcIixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICB2YXJpYW50SWQ6IFwicGRwU2hvZXNIYXNSZXZpZXdzXCIsXG4gICAgICB2YXJpYW50VHlwZTogXCJwZHBcIixcbiAgICAgIHZhcmlhbnRUZXN0czogW1xuICAgICAgICB7XG4gICAgICAgICAgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuU2hvcGlmeVBEUCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLkluQ29sbGVjdGlvbixcbiAgICAgICAgICBjb2xsZWN0aW9uczogW1wic2hvZXNcIl0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0ZXN0VHlwZTogUGFnZVZhcmlhbnRUZXN0VHlwZS5IYXNSZXZpZXdzLFxuICAgICAgICAgIHJldmlld01pbmltdW06IDQsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgcHJvZHVjdElkRXh0cmFjdG9yOiBcInNob3BpZnktcHJvZHVjdC1pZFwiLFxuICAgICAgd2lkZ2V0TW91bnRpbmc6IFtcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwidG9wU3VnZ2VzdGlvbkJhclBEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcInRvcFN1Z2dlc3Rpb25zQmFyU2hvZXNIYXNSZXZpZXdzXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImNoYXRQcmV2aWV3UERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiY2hhdFByZXZpZXdQRFBcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiYm90dG9tU3VnZ2VzdGlvbkJhclBEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImJvdHRvbVN1Z2dlc3Rpb25zQmFyXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgdmFyaWFudElkOiBcInBkcFNob2VzTm9SZXZpZXdzXCIsXG4gICAgICB2YXJpYW50VHlwZTogXCJwZHBcIixcbiAgICAgIHZhcmlhbnRUZXN0czogW1xuICAgICAgICB7XG4gICAgICAgICAgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuU2hvcGlmeVBEUCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRlc3RUeXBlOiBQYWdlVmFyaWFudFRlc3RUeXBlLkluQ29sbGVjdGlvbixcbiAgICAgICAgICBjb2xsZWN0aW9uczogW1wic2hvZXNcIl0sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgcHJvZHVjdElkRXh0cmFjdG9yOiBcInNob3BpZnktcHJvZHVjdC1pZFwiLFxuICAgICAgd2lkZ2V0TW91bnRpbmc6IFtcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwidG9wU3VnZ2VzdGlvbkJhclBEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcInRvcFN1Z2dlc3Rpb25zQmFyU2hvZXNOb1Jldmlld3NcIixcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiY2hhdFByZXZpZXdQRFBcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJjaGF0UHJldmlld1BEUFwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJib3R0b21TdWdnZXN0aW9uQmFyUERQXCIsXG4gICAgICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiYm90dG9tU3VnZ2VzdGlvbnNCYXJcIixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICB2YXJpYW50SWQ6IFwicGRwXCIsXG4gICAgICB2YXJpYW50VHlwZTogXCJwZHBcIixcbiAgICAgIHZhcmlhbnRUZXN0czogW3sgdGVzdFR5cGU6IFBhZ2VWYXJpYW50VGVzdFR5cGUuU2hvcGlmeVBEUCB9XSxcbiAgICAgIHByb2R1Y3RJZEV4dHJhY3RvcjogXCJzaG9waWZ5LXByb2R1Y3QtaWRcIixcbiAgICAgIHdpZGdldE1vdW50aW5nOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcInRvcFN1Z2dlc3Rpb25CYXJQRFBcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJ0b3BTdWdnZXN0aW9uc0JhclwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbW91bnRpbmdDb25maWdJZDogXCJjaGF0UHJldmlld1BEUFwiLFxuICAgICAgICAgIHdpZGdldENvbmZpZ0lkOiBcImNoYXRQcmV2aWV3UERQXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImJvdHRvbVN1Z2dlc3Rpb25CYXJQRFBcIixcbiAgICAgICAgICB3aWRnZXRDb25maWdJZDogXCJib3R0b21TdWdnZXN0aW9uc0JhclwiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICBdLFxuICB3aWRnZXRDb25maWdzOiB7XG4gICAgZ2xvYmFsU2VhcmNoRW50cnlQb2ludDoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwiZ2xvYmFsU2VhcmNoRW50cnlQb2ludFwiLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZS5TZWFyY2haZXJvU3RhdGVFbnRyeVBvaW50LFxuICAgICAgc2VhcmNoWmVyb1N0YXRlVmFyaWFudDogXCJiYWNrZ3JvdW5kVGVydGlhcnlcIixcbiAgICAgIHNlYXJjaElucHV0VmFyaWFudDogXCJzdGFuZGFyZFwiLFxuICAgICAgc3VnZ2VzdGlvbkJ1dHRvbkNvbmZpZzoge1xuICAgICAgICB2YXJpYW50OiBcImRhcmtBY2NlbnRcIixcbiAgICAgICAgaG92ZXJWYXJpYW50OiBcInNlY29uZGFyeUFjY2VudFwiLFxuICAgICAgfSxcbiAgICAgIGxheW91dDogXCJpY29uXCIsXG4gICAgICBjb21wYWN0TGFiZWw6IFwiU2VhcmNoXCIsXG4gICAgICBzZWFyY2hCb3hQbGFjZWhvbGRlcjogJ1RyeSBcIkNvbG9yZnVsIG1heGkgZm9yIGEgc3VtbWVyIHdlZGRpbmdcIicsXG4gICAgICBpbml0aWFsU3VnZ2VzdGlvbnM6IFtcbiAgICAgICAgXCJWaW50YWdlIGRyZXNzZXNcIixcbiAgICAgICAgXCJNYXhpIGRyZXNzZXNcIixcbiAgICAgICAgXCJEaXNuZXkgb3V0Zml0XCIsXG4gICAgICAgIFwiQmFyYmllIGNvbGxlY3Rpb25cIixcbiAgICAgICAgXCIxOTcwcyBqdW1wc3VpdFwiLFxuICAgICAgICBcIk9uZS1waWVjZSBzd2ltc3VpdFwiLFxuICAgICAgICBcIkNpbmRlcmVsbGEgZGl2aW5lIGRyZXNzZXNcIixcbiAgICAgIF0sXG4gICAgfSBzYXRpc2ZpZXMgU2VhcmNoRW50cnlQb2ludFdpZGdldENvbmZpZyxcbiAgICBnbG9iYWxTZWFyY2hFbnRyeVBvaW50TW9iaWxlOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogXCJnbG9iYWxTZWFyY2hFbnRyeVBvaW50TW9iaWxlXCIsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlLlNlYXJjaFplcm9TdGF0ZUVudHJ5UG9pbnQsXG4gICAgICBzZWFyY2haZXJvU3RhdGVWYXJpYW50OiBcImJhY2tncm91bmRUZXJ0aWFyeVwiLFxuICAgICAgc2VhcmNoSW5wdXRWYXJpYW50OiBcInN0YW5kYXJkXCIsXG4gICAgICBzdWdnZXN0aW9uQnV0dG9uQ29uZmlnOiB7XG4gICAgICAgIHZhcmlhbnQ6IFwiZGFya0FjY2VudFwiLFxuICAgICAgICBob3ZlclZhcmlhbnQ6IFwic2Vjb25kYXJ5QWNjZW50XCIsXG4gICAgICB9LFxuICAgICAgbGF5b3V0OiBcImljb25cIixcbiAgICAgIHNlYXJjaEJveFBsYWNlaG9sZGVyOiAnVHJ5IFwiQ29sb3JmdWwgbWF4aSBmb3IgYSBzdW1tZXIgd2VkZGluZ1wiJyxcbiAgICAgIGluaXRpYWxTdWdnZXN0aW9uczogW1xuICAgICAgICBcIlZpbnRhZ2UgZHJlc3Nlc1wiLFxuICAgICAgICBcIk1heGkgZHJlc3Nlc1wiLFxuICAgICAgICBcIkRpc25leSBvdXRmaXRcIixcbiAgICAgICAgXCJCYXJiaWUgY29sbGVjdGlvblwiLFxuICAgICAgICBcIjE5NzBzIGp1bXBzdWl0XCIsXG4gICAgICAgIFwiT25lLXBpZWNlIHN3aW1zdWl0XCIsXG4gICAgICAgIFwiQ2luZGVyZWxsYSBkaXZpbmUgZHJlc3Nlc1wiLFxuICAgICAgXSxcbiAgICB9IHNhdGlzZmllcyBTZWFyY2hFbnRyeVBvaW50V2lkZ2V0Q29uZmlnLFxuICAgIHRvcFN1Z2dlc3Rpb25zQmFyOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogXCJ0b3BTdWdnZXN0aW9uc0JhclwiLFxuICAgICAgY29udGVudElkOiBcInNwaWZmeS10b3Atc3VnZ2VzdGlvbi1iYXItY29udGVudHNcIixcbiAgICAgIHR5cGU6IFdpZGdldFR5cGUuU3VnZ2VzdGlvbkJhclYyLFxuICAgICAgbWV0cmljRGlzcGxheUxvY2F0aW9uOiBDaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvbi5UT1BfUkVWSUVXU19TTklQUEVULFxuICAgICAgbG9jYXRpb246IFN1Z2dlc3Rpb25CYXJMb2NhdGlvbkZvck1ldHJpY3MuU1VHR0VTVElPTl9CQVJfVE9QLFxuICAgICAgdmFyaWFudDogXCJwcmltYXJ5XCIsXG4gICAgICBob3ZlclZhcmlhbnQ6IFwic2Vjb25kYXJ5RGFya1wiLFxuICAgICAgYnV0dG9uVGV4dHM6IHtcbiAgICAgICAgZGVmYXVsdDogW1xuICAgICAgICAgIFwiU3VtbWFyaXplIHRoZSByZXZpZXdzXCIsXG4gICAgICAgICAgXCJXaGF0IHJldHJvIGNoYXJtIHdpbGwgdGhpcyBwaWVjZSBicmluZyB0byBteSB3YXJkcm9iZT9cIixcbiAgICAgICAgICBcIldoYXQgb2NjYXNpb25zIGlzIHRoaXMgcGllY2UgcGVyZmVjdCBmb3I/XCIsXG4gICAgICAgICAgXCJIb3cgZG8gb3RoZXJzIGRlc2NyaWJlIHRoZSBmaXQgYW5kIGZlZWw/XCIsXG4gICAgICAgICAgXCJXaGF0IG1ha2VzIHRoaXMgcGllY2Ugc3RhbmQgb3V0IGZvciBvdGhlcnM/XCIsXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAgYm9sZEZpcnN0QnV0dG9uOiB0cnVlLFxuICAgICAgdHdvUm93c09uTW9iaWxlOiBmYWxzZSxcbiAgICAgIGJ1dHRvbkJvcmRlclJhZGl1czogXCJtZFwiLFxuICAgIH0gc2F0aXNmaWVzIFN1Z2dlc3Rpb25CYXJXaWRnZXRWMkNvbmZpZyxcbiAgICB0b3BTdWdnZXN0aW9uc0JhckRyZXNzZXNIYXNSZXZpZXdzOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogXCJ0b3BTdWdnZXN0aW9uc0JhckRyZXNzZXNIYXNSZXZpZXdzXCIsXG4gICAgICBjb250ZW50SWQ6IFwic3BpZmZ5LXRvcC1zdWdnZXN0aW9uLWJhci1jb250ZW50c1wiLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZS5TdWdnZXN0aW9uQmFyVjIsXG4gICAgICBtZXRyaWNEaXNwbGF5TG9jYXRpb246IENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uLlRPUF9SRVZJRVdTX1NOSVBQRVQsXG4gICAgICBsb2NhdGlvbjogU3VnZ2VzdGlvbkJhckxvY2F0aW9uRm9yTWV0cmljcy5TVUdHRVNUSU9OX0JBUl9UT1AsXG4gICAgICB2YXJpYW50OiBcInByaW1hcnlcIixcbiAgICAgIGhvdmVyVmFyaWFudDogXCJzZWNvbmRhcnlEYXJrXCIsXG4gICAgICBidXR0b25UZXh0czoge1xuICAgICAgICBkZWZhdWx0OiBbXG4gICAgICAgICAgXCJTdW1tYXJpemUgdGhlIHJldmlld3NcIixcbiAgICAgICAgICBcIldoaWNoIHVuaXF1ZSBhY2Nlc3NvcmllcyBwYWlyIHdpdGggdGhpcz9cIixcbiAgICAgICAgICBcIklzIHRoZSBmaXQgZmxvd3kgb3IgZmlndXJlLWVuaGFuY2luZz9cIixcbiAgICAgICAgICBcIklzIGl0IHRydWUgdG8gc2l6ZT9cIixcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICBib2xkRmlyc3RCdXR0b246IHRydWUsXG4gICAgICB0d29Sb3dzT25Nb2JpbGU6IGZhbHNlLFxuICAgICAgYnV0dG9uQm9yZGVyUmFkaXVzOiBcIm1kXCIsXG4gICAgfSBzYXRpc2ZpZXMgU3VnZ2VzdGlvbkJhcldpZGdldFYyQ29uZmlnLFxuICAgIHRvcFN1Z2dlc3Rpb25zQmFyRHJlc3Nlc05vUmV2aWV3czoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwidG9wU3VnZ2VzdGlvbnNCYXJEcmVzc2VzTm9SZXZpZXdzXCIsXG4gICAgICBjb250ZW50SWQ6IFwic3BpZmZ5LXRvcC1zdWdnZXN0aW9uLWJhci1jb250ZW50c1wiLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZS5TdWdnZXN0aW9uQmFyVjIsXG4gICAgICBtZXRyaWNEaXNwbGF5TG9jYXRpb246IENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uLlRPUF9SRVZJRVdTX1NOSVBQRVQsXG4gICAgICBsb2NhdGlvbjogU3VnZ2VzdGlvbkJhckxvY2F0aW9uRm9yTWV0cmljcy5TVUdHRVNUSU9OX0JBUl9UT1AsXG4gICAgICB2YXJpYW50OiBcInByaW1hcnlcIixcbiAgICAgIGhvdmVyVmFyaWFudDogXCJzZWNvbmRhcnlEYXJrXCIsXG4gICAgICBidXR0b25UZXh0czoge1xuICAgICAgICBkZWZhdWx0OiBbXG4gICAgICAgICAgXCJXaGF0IG9jY2FzaW9uIGlzIHRoaXMgZHJlc3MgZm9yP1wiLFxuICAgICAgICAgIFwiV2hpY2ggdW5pcXVlIGFjY2Vzc29yaWVzIHBhaXIgd2l0aCB0aGlzP1wiLFxuICAgICAgICAgIFwiSXMgdGhlIGZpdCBmbG93eSBvciBmaWd1cmUtZW5oYW5jaW5nP1wiLFxuICAgICAgICAgIFwiSXMgaXQgdHJ1ZSB0byBzaXplP1wiLFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIGJvbGRGaXJzdEJ1dHRvbjogdHJ1ZSxcbiAgICAgIHR3b1Jvd3NPbk1vYmlsZTogZmFsc2UsXG4gICAgICBidXR0b25Cb3JkZXJSYWRpdXM6IFwibWRcIixcbiAgICB9IHNhdGlzZmllcyBTdWdnZXN0aW9uQmFyV2lkZ2V0VjJDb25maWcsXG4gICAgdG9wU3VnZ2VzdGlvbnNCYXJTd2ltd2Vhckhhc1Jldmlld3M6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiBcInRvcFN1Z2dlc3Rpb25zQmFyU3dpbXdlYXJIYXNSZXZpZXdzXCIsXG4gICAgICBjb250ZW50SWQ6IFwic3BpZmZ5LXRvcC1zdWdnZXN0aW9uLWJhci1jb250ZW50c1wiLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZS5TdWdnZXN0aW9uQmFyVjIsXG4gICAgICBtZXRyaWNEaXNwbGF5TG9jYXRpb246IENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uLlRPUF9SRVZJRVdTX1NOSVBQRVQsXG4gICAgICBsb2NhdGlvbjogU3VnZ2VzdGlvbkJhckxvY2F0aW9uRm9yTWV0cmljcy5TVUdHRVNUSU9OX0JBUl9UT1AsXG4gICAgICB2YXJpYW50OiBcInByaW1hcnlcIixcbiAgICAgIGhvdmVyVmFyaWFudDogXCJzZWNvbmRhcnlEYXJrXCIsXG4gICAgICBidXR0b25UZXh0czoge1xuICAgICAgICBkZWZhdWx0OiBbXG4gICAgICAgICAgXCJTdW1tYXJpemUgdGhlIHJldmlld3NcIixcbiAgICAgICAgICBcIldoaWNoIGFjY2Vzc29yaWVzIHBhaXIgd2VsbD9cIixcbiAgICAgICAgICBcIkRvZXMgdGhlIHRvcCBoYXZlIHBhZGRpbmc/XCIsXG4gICAgICAgICAgXCJEb2VzIGl0IHJ1biB0cnVlIHRvIHNpemU/XCIsXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAgYm9sZEZpcnN0QnV0dG9uOiB0cnVlLFxuICAgICAgdHdvUm93c09uTW9iaWxlOiBmYWxzZSxcbiAgICAgIGJ1dHRvbkJvcmRlclJhZGl1czogXCJtZFwiLFxuICAgIH0gc2F0aXNmaWVzIFN1Z2dlc3Rpb25CYXJXaWRnZXRWMkNvbmZpZyxcbiAgICB0b3BTdWdnZXN0aW9uc0JhclN3aW13ZWFyTm9SZXZpZXdzOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogXCJ0b3BTdWdnZXN0aW9uc0JhclN3aW13ZWFyTm9SZXZpZXdzXCIsXG4gICAgICBjb250ZW50SWQ6IFwic3BpZmZ5LXRvcC1zdWdnZXN0aW9uLWJhci1jb250ZW50c1wiLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZS5TdWdnZXN0aW9uQmFyVjIsXG4gICAgICBtZXRyaWNEaXNwbGF5TG9jYXRpb246IENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uLlRPUF9SRVZJRVdTX1NOSVBQRVQsXG4gICAgICBsb2NhdGlvbjogU3VnZ2VzdGlvbkJhckxvY2F0aW9uRm9yTWV0cmljcy5TVUdHRVNUSU9OX0JBUl9UT1AsXG4gICAgICB2YXJpYW50OiBcInByaW1hcnlcIixcbiAgICAgIGhvdmVyVmFyaWFudDogXCJzZWNvbmRhcnlEYXJrXCIsXG4gICAgICBidXR0b25UZXh0czoge1xuICAgICAgICBkZWZhdWx0OiBbXG4gICAgICAgICAgXCJEb2VzIGl0IHJ1biB0cnVlIHRvIHNpemU/XCIsXG4gICAgICAgICAgXCJXaGljaCBhY2Nlc3NvcmllcyBwYWlyIHdlbGw/XCIsXG4gICAgICAgICAgXCJEb2VzIHRoZSB0b3AgaGF2ZSBwYWRkaW5nP1wiLFxuICAgICAgICAgIFwiRG9lcyBpdCBydW4gdHJ1ZSB0byBzaXplP1wiLFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIGJvbGRGaXJzdEJ1dHRvbjogdHJ1ZSxcbiAgICAgIHR3b1Jvd3NPbk1vYmlsZTogZmFsc2UsXG4gICAgICBidXR0b25Cb3JkZXJSYWRpdXM6IFwibWRcIixcbiAgICB9IHNhdGlzZmllcyBTdWdnZXN0aW9uQmFyV2lkZ2V0VjJDb25maWcsXG4gICAgdG9wU3VnZ2VzdGlvbnNCYXJTaG9lc0hhc1Jldmlld3M6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiBcInRvcFN1Z2dlc3Rpb25zQmFyU2hvZXNIYXNSZXZpZXdzXCIsXG4gICAgICBjb250ZW50SWQ6IFwic3BpZmZ5LXRvcC1zdWdnZXN0aW9uLWJhci1jb250ZW50c1wiLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZS5TdWdnZXN0aW9uQmFyVjIsXG4gICAgICBtZXRyaWNEaXNwbGF5TG9jYXRpb246IENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uLlRPUF9SRVZJRVdTX1NOSVBQRVQsXG4gICAgICBsb2NhdGlvbjogU3VnZ2VzdGlvbkJhckxvY2F0aW9uRm9yTWV0cmljcy5TVUdHRVNUSU9OX0JBUl9UT1AsXG4gICAgICB2YXJpYW50OiBcInByaW1hcnlcIixcbiAgICAgIGhvdmVyVmFyaWFudDogXCJzZWNvbmRhcnlEYXJrXCIsXG4gICAgICBidXR0b25UZXh0czoge1xuICAgICAgICBkZWZhdWx0OiBbXG4gICAgICAgICAgXCJTdW1tYXJpemUgdGhlIHJldmlld3NcIixcbiAgICAgICAgICBcIklzIHRoaXMgZ29vZCBmb3IgYSBuaWdodCBvdXQ/XCIsXG4gICAgICAgICAgXCJBcmUgdGhlc2UgdHJ1ZSB0byBzaXplP1wiLFxuICAgICAgICAgIFwiQXJlIHRoZXNlIGdvb2QgZm9yIGNhc3VhbCB3ZWFyP1wiLFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIGJvbGRGaXJzdEJ1dHRvbjogdHJ1ZSxcbiAgICAgIHR3b1Jvd3NPbk1vYmlsZTogZmFsc2UsXG4gICAgICBidXR0b25Cb3JkZXJSYWRpdXM6IFwibWRcIixcbiAgICB9IHNhdGlzZmllcyBTdWdnZXN0aW9uQmFyV2lkZ2V0VjJDb25maWcsXG4gICAgdG9wU3VnZ2VzdGlvbnNCYXJTaG9lc05vUmV2aWV3czoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwidG9wU3VnZ2VzdGlvbnNCYXJTaG9lc05vUmV2aWV3c1wiLFxuICAgICAgY29udGVudElkOiBcInNwaWZmeS10b3Atc3VnZ2VzdGlvbi1iYXItY29udGVudHNcIixcbiAgICAgIHR5cGU6IFdpZGdldFR5cGUuU3VnZ2VzdGlvbkJhclYyLFxuICAgICAgbWV0cmljRGlzcGxheUxvY2F0aW9uOiBDaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvbi5UT1BfUkVWSUVXU19TTklQUEVULFxuICAgICAgbG9jYXRpb246IFN1Z2dlc3Rpb25CYXJMb2NhdGlvbkZvck1ldHJpY3MuU1VHR0VTVElPTl9CQVJfVE9QLFxuICAgICAgdmFyaWFudDogXCJwcmltYXJ5XCIsXG4gICAgICBob3ZlclZhcmlhbnQ6IFwic2Vjb25kYXJ5RGFya1wiLFxuICAgICAgYnV0dG9uVGV4dHM6IHtcbiAgICAgICAgZGVmYXVsdDogW1xuICAgICAgICAgIFwiV2hhdCBlcmEgaW5zcGlyZWQgdGhlc2Ugc2hvZXM/XCIsXG4gICAgICAgICAgXCJJcyB0aGlzIGdvb2QgZm9yIGEgbmlnaHQgb3V0P1wiLFxuICAgICAgICAgIFwiQXJlIHRoZXNlIHRydWUgdG8gc2l6ZT9cIixcbiAgICAgICAgICBcIkFyZSB0aGVzZSBnb29kIGZvciBjYXN1YWwgd2Vhcj9cIixcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICBib2xkRmlyc3RCdXR0b246IHRydWUsXG4gICAgICB0d29Sb3dzT25Nb2JpbGU6IGZhbHNlLFxuICAgICAgYnV0dG9uQm9yZGVyUmFkaXVzOiBcIm1kXCIsXG4gICAgfSBzYXRpc2ZpZXMgU3VnZ2VzdGlvbkJhcldpZGdldFYyQ29uZmlnLFxuICAgIHNlYXJjaFByb21wdFBMUDoge1xuICAgICAgd2lkZ2V0Q29uZmlnSWQ6IFwic2VhcmNoUHJvbXB0UExQXCIsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlLlNlYXJjaFByb21wdCxcbiAgICAgIHZhcmlhbnQ6IFwicHJpbWFyeVwiLFxuICAgICAgdGl0bGU6IFwiRmluZCBleGFjdGx5IHdoYXQgeW91J3JlIGxvb2tpbmcgZm9yLi4uXCIsXG4gICAgICBoZWFkZXJDb25maWc6IHtcbiAgICAgICAgdGl0bGU6IFwiU2VhcmNoIEFzc2lzdGFudFwiLFxuICAgICAgICBsb2dvOiBcInNlYXJjaC1sb2dvLnN2Z1wiLFxuICAgICAgICBsb2dvSGVpZ2h0OiAyNSxcbiAgICAgICAgb3JnU2hvcnROYW1lOiBcInVuaXF1ZS12aW50YWdlXCIsXG4gICAgICB9LFxuICAgICAgc3VnZ2VzdGlvbkJ1dHRvbnM6IHtcbiAgICAgICAgdmFyaWFudDogXCJkYXJrUHJpbWFyeVwiLFxuICAgICAgICBob3ZlclZhcmlhbnQ6IFwic2Vjb25kYXJ5XCIsXG4gICAgICAgIGJ1dHRvblRleHRzOiBbXG4gICAgICAgICAgXCJWaW50YWdlIGRyZXNzZXNcIixcbiAgICAgICAgICBcIk1heGkgZHJlc3Nlc1wiLFxuICAgICAgICAgIFwiRGlzbmV5IG91dGZpdFwiLFxuICAgICAgICAgIFwiQmFyYmllIGNvbGxlY3Rpb25cIixcbiAgICAgICAgICBcIjE5NzBzIGp1bXBzdWl0XCIsXG4gICAgICAgICAgXCJPbmUtcGllY2Ugc3dpbXN1aXRcIixcbiAgICAgICAgICBcIkNpbmRlcmVsbGEgZGl2aW5lIGRyZXNzZXNcIixcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICBmb290ZXJDb25maWc6IHtcbiAgICAgICAgcmVwbHlCdXR0b25UZXh0OiBcIkJlIGFzIHNwZWNpZmljIGFzIHlvdSBsaWtlLi4uXCIsXG4gICAgICAgIHJlcGx5QnV0dG9uSWNvbjogXCJhaS1zZWFyY2hcIixcbiAgICAgIH0sXG4gICAgfSBzYXRpc2ZpZXMgU2VhcmNoUHJvbXB0V2lkZ2V0Q29uZmlnLFxuICAgIGNoYXRQcmV2aWV3UExQOiB7XG4gICAgICB3aWRnZXRDb25maWdJZDogXCJjaGF0UHJldmlld1wiLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZS5DaGF0UHJldmlldyxcbiAgICAgIHZhcmlhbnQ6IFwiZmlsbGVkXCIsXG4gICAgICBhZGRTZXBhcmF0b3JzOiB0cnVlLFxuICAgICAgZm9vdGVyQ29uZmlnOiB7XG4gICAgICAgIHJlcGx5QnV0dG9uVGV4dDogXCJXaGF0IGNhbiBJIGhlbHAgeW91IGZpbmQ/XCIsXG4gICAgICAgIHJlcGx5QnV0dG9uSWNvbjogXCJtYWduaWZ5aW5nR2xhc3NcIixcbiAgICAgIH0sXG4gICAgfSBzYXRpc2ZpZXMgQ2hhdFByZXZpZXdXaWRnZXRDb25maWcsXG4gICAgY2hhdFByZXZpZXdQRFA6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiBcImNoYXRQcmV2aWV3UERQXCIsXG4gICAgICB0eXBlOiBXaWRnZXRUeXBlLkNoYXRQcmV2aWV3LFxuICAgICAgdmFyaWFudDogXCJmaWxsZWRcIixcbiAgICAgIGFkZFNlcGFyYXRvcnM6IHRydWUsXG4gICAgfSBzYXRpc2ZpZXMgQ2hhdFByZXZpZXdXaWRnZXRDb25maWcsXG4gICAgYm90dG9tU3VnZ2VzdGlvbnNCYXI6IHtcbiAgICAgIHdpZGdldENvbmZpZ0lkOiBcImJvdHRvbVN1Z2dlc3Rpb25zQmFyXCIsXG4gICAgICBjb250ZW50SWQ6IFwic3BpZmZ5LWJvdHRvbS1zdWdnZXN0aW9uLWJhci1jb250ZW50c1wiLFxuICAgICAgdHlwZTogV2lkZ2V0VHlwZS5TdWdnZXN0aW9uQmFyVjIsXG4gICAgICBtZXRyaWNEaXNwbGF5TG9jYXRpb246IENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uLkJPVFRPTV9SRVZJRVdTX1NOSVBQRVQsXG4gICAgICBsb2NhdGlvbjogU3VnZ2VzdGlvbkJhckxvY2F0aW9uRm9yTWV0cmljcy5TVUdHRVNUSU9OX0JBUl9CT1RUT00sXG4gICAgICB2YXJpYW50OiBcImRhcmtcIixcbiAgICAgIGhvdmVyVmFyaWFudDogXCJzZWNvbmRhcnlEYXJrXCIsXG4gICAgICBidXR0b25UZXh0czoge1xuICAgICAgICBkZWZhdWx0OiBbXG4gICAgICAgICAgXCJTdW1tYXJpemUgdGhlIHJldmlld3NcIixcbiAgICAgICAgICBcIldoYXQgcmV0cm8gY2hhcm0gd2lsbCB0aGlzIHBpZWNlIGJyaW5nIHRvIG15IHdhcmRyb2JlP1wiLFxuICAgICAgICAgIFwiV2hhdCBvY2Nhc2lvbnMgaXMgdGhpcyBwaWVjZSBwZXJmZWN0IGZvcj9cIixcbiAgICAgICAgICBcIkhvdyBkbyBvdGhlcnMgZGVzY3JpYmUgdGhlIGZpdCBhbmQgZmVlbD9cIixcbiAgICAgICAgICBcIldoYXQgbWFrZXMgdGhpcyBwaWVjZSBzdGFuZCBvdXQgZm9yIG90aGVycz9cIixcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICBib2xkRmlyc3RCdXR0b246IHRydWUsXG4gICAgICB0d29Sb3dzT25Nb2JpbGU6IHRydWUsXG4gICAgICBhbmltYXRpb25TcGVlZDogXCJub25lXCIsXG4gICAgICBidXR0b25Cb3JkZXJSYWRpdXM6IFwibWRcIixcbiAgICB9IHNhdGlzZmllcyBTdWdnZXN0aW9uQmFyV2lkZ2V0VjJDb25maWcsXG4gIH0sXG4gIG1vdW50aW5nQ29uZmlnczoge1xuICAgIGdsb2JhbFNlYXJjaEVudHJ5UG9pbnQ6IHtcbiAgICAgIG1vdW50aW5nQ29uZmlnSWQ6IFwiZ2xvYmFsU2VhcmNoRW50cnlQb2ludFwiLFxuICAgICAgY29udGFpbmVySWQ6IEdMT0JBTF9TRUFSQ0hfRU5UUllQT0lOVF9JRCxcbiAgICAgIHRlc3RJZDogR0xPQkFMX1NFQVJDSF9FTlRSWVBPSU5UX1RFU1RJRCxcbiAgICAgIGluc2VydGlvblBvaW50OiB7XG4gICAgICAgIHNlbGVjdG9yOiBcIi5oZWFkZXJfX3NlYXJjaC5oZWFkZXJfX3NlYXJjaC0tZGVza3RvcFwiLFxuICAgICAgICBpbnNlcnRpb25UeXBlOiBET01JbnNlcnRpb25UeXBlLkFGVEVSLFxuICAgICAgfSxcbiAgICAgIHN1cHByZXNzaW9uU2VsZWN0b3I6XG4gICAgICAgIFwiLnNlYXJjaC1tb2RhbF9fY29udGVudC5zZWFyY2gtbW9kYWxfX2NvbnRlbnQtYm90dG9tXCIsXG4gICAgICBjbGFzc05hbWU6IFwiZ2xvYmFsLWVudHJ5LWRlc2t0b3BcIixcbiAgICAgIHN0eWxlOiB7XG4gICAgICAgIHpJbmRleDogXCIyMTQ3NDgzNjQ3XCIsXG4gICAgICAgIG1hcmdpblJpZ2h0OiBcIjMycHhcIixcbiAgICAgICAgaGVpZ2h0OiBcIjgwcHhcIixcbiAgICAgIH0sXG4gICAgfSxcbiAgICBnbG9iYWxTZWFyY2hFbnRyeVBvaW50TW9iaWxlOiB7XG4gICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImdsb2JhbFNlYXJjaEVudHJ5UG9pbnRcIixcbiAgICAgIGNvbnRhaW5lcklkOiBNT0JJTEVfR0xPQkFMX1NFQVJDSF9FTlRSWVBPSU5UX0lELFxuICAgICAgdGVzdElkOiBHTE9CQUxfU0VBUkNIX0VOVFJZUE9JTlRfVEVTVElELFxuICAgICAgaW5zZXJ0aW9uUG9pbnQ6IHtcbiAgICAgICAgc2VsZWN0b3I6IFwic3RpY2t5LWhlYWRlci5oZWFkZXItd3JhcHBlcjpoYXMoLm1vYmlsZS1zZWFyY2gpXCIsXG4gICAgICAgIGluc2VydGlvblR5cGU6IERPTUluc2VydGlvblR5cGUuQUZURVIsXG4gICAgICB9LFxuICAgICAgc3VwcHJlc3Npb25TZWxlY3RvcjogXCIubW9iaWxlLXNlYXJjaCAuc2VhcmNoLW1vZGFsX19mb3JtXCIsXG4gICAgICBjbGFzc05hbWU6IFwiZ2xvYmFsLWVudHJ5LW1vYmlsZVwiLFxuICAgICAgc3R5bGU6IHtcbiAgICAgICAgekluZGV4OiBcIjIxNDc0ODM2NDdcIixcbiAgICAgICAgbWFyZ2luVG9wOiBcIjhweFwiLFxuICAgICAgICBtYXJnaW5MZWZ0OiBcIjE1cHhcIixcbiAgICAgICAgbWFyZ2luUmlnaHQ6IFwiMTVweFwiLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGNoYXRQcmV2aWV3UExQOiB7XG4gICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcImNoYXRQcmV2aWV3UExQXCIsXG4gICAgICBjb250YWluZXJJZDogQ0hBVF9QUkVWSUVXX0NPTlRBSU5FUl9JRCxcbiAgICAgIHRlc3RJZDogQ0hBVF9QUkVWSUVXX1RFU1RJRCxcbiAgICAgIGluc2VydGlvblBvaW50OiB7XG4gICAgICAgIHNlbGVjdG9yOiBcIi5jb2xsZWN0aW9uIC5wcm9kdWN0LWdyaWRcIixcbiAgICAgICAgaW5zZXJ0aW9uVHlwZTogRE9NSW5zZXJ0aW9uVHlwZS5BRlRFUixcbiAgICAgIH0sXG4gICAgICBncmlkSW5zZXJ0aW9uVHlwZTogR3JpZEluc2VydGlvblR5cGUuUk9XXzIsXG4gICAgfSxcbiAgICBjaGF0UHJldmlld1BEUDoge1xuICAgICAgbW91bnRpbmdDb25maWdJZDogXCJjaGF0UHJldmlld1BEUFwiLFxuICAgICAgY29udGFpbmVySWQ6IENIQVRfUFJFVklFV19DT05UQUlORVJfSUQsXG4gICAgICB0ZXN0SWQ6IENIQVRfUFJFVklFV19URVNUSUQsXG4gICAgICBpbnNlcnRpb25Qb2ludDoge1xuICAgICAgICBzZWxlY3RvcjogXCIucHJvZHVjdF9fYWNjb3JkaW9uXCIsXG4gICAgICAgIGluc2VydGlvblR5cGU6IERPTUluc2VydGlvblR5cGUuQkVGT1JFLFxuICAgICAgfSxcbiAgICAgIHN0eWxlOiB7XG4gICAgICAgIG1hcmdpblRvcDogXCIxNnB4XCIsXG4gICAgICAgIG1hcmdpbkJvdHRvbTogXCI4cHhcIixcbiAgICAgIH0sXG4gICAgfSxcbiAgICB0b3BTdWdnZXN0aW9uQmFyUERQOiB7XG4gICAgICBtb3VudGluZ0NvbmZpZ0lkOiBcInRvcFN1Z2dlc3Rpb25CYXJQRFBcIixcbiAgICAgIGNvbnRhaW5lcklkOiBUT1BfU1VHR0VTVElPTl9CQVJfUERQX0lELFxuICAgICAgdGVzdElkOiBUT1BfU1VHR0VTVElPTl9CQVJfVEVTVElELFxuICAgICAgaW5zZXJ0aW9uUG9pbnQ6IHtcbiAgICAgICAgc2VsZWN0b3I6IFwiZGl2Omhhcyg+IC5tYWluX3ByaWNlKVwiLFxuICAgICAgICBpbnNlcnRpb25UeXBlOiBET01JbnNlcnRpb25UeXBlLkFGVEVSLFxuICAgICAgfSxcbiAgICAgIHN0eWxlOiB7XG4gICAgICAgIG1hcmdpblRvcDogXCIxNnB4XCIsXG4gICAgICAgIG1hcmdpbkJvdHRvbTogXCIxNnB4XCIsXG4gICAgICB9LFxuICAgIH0sXG4gICAgYm90dG9tU3VnZ2VzdGlvbkJhclBEUDoge1xuICAgICAgbW91bnRpbmdDb25maWdJZDogXCJib3R0b21TdWdnZXN0aW9uQmFyUERQXCIsXG4gICAgICBjb250YWluZXJJZDogQk9UVE9NX1JFVklFV1NfQkFSX0lELFxuICAgICAgdGVzdElkOiBCT1RUT01fU1VHR0VTVElPTl9CQVJfVEVTVElELFxuICAgICAgaW5zZXJ0aW9uUG9pbnQ6IHtcbiAgICAgICAgc2VsZWN0b3I6IFwiLmp1bmlwLXByb2R1Y3QtcmV2aWV3LXN1bW1hcnktd3JhcHBlciArIGRpdi5qdW5pcC1zZXBhcmF0b3JcIixcbiAgICAgICAgaW5zZXJ0aW9uVHlwZTogRE9NSW5zZXJ0aW9uVHlwZS5BREpBQ0VOVF9BRlRFUl9FTkQsXG4gICAgICAgIHNlbGVjdGlvbkluZGV4OiAwLFxuICAgICAgfSxcbiAgICAgIHN0eWxlOiB7XG4gICAgICAgIG1hcmdpblRvcDogXCIxNnB4XCIsXG4gICAgICAgIG1hcmdpbkJvdHRvbTogXCIxNnB4XCIsXG4gICAgICB9LFxuICAgIH0sXG4gIH0sXG59KTtcblxuY29uc3QgdW5pcXVlVmludGFnZU9yZ0luZm8gPSB7XG4gIHNob3J0TmFtZTogT3JnU2hvcnROYW1lLlVuaXF1ZVZpbnRhZ2UsXG4gIG5hbWU6IFwiVW5pcXVlIFZpbnRhZ2VcIixcbiAgZG9tYWluOiBcInVuaXF1ZS12aW50YWdlLmNvbVwiLFxuICBkZWZhdWx0UHJvZHVjdElkOiBcInJlZC1jb3dnaXJsLXByaW50LXN3aW5nLXNoaXJ0LWRyZXNzXCIsXG4gIGFsd2F5c0VuYWJsZWRNZXJjaGFudHM6IHRydWUsXG4gIG9yZ1VJQ29uZmlnOiB1bmlxdWVWaW50YWdlT3JnVUlDb25maWcsXG4gIG9yZ0NvbG9yczogKCkgPT4gdW5pcXVlVmludGFnZUNvbG9ycyxcbiAgb3JnUGFnZUNvbmZpZzogdW5pcXVlVmludGFnZVBhZ2VDb25maWcsXG59IHNhdGlzZmllcyBCYXNpY09yZ0luZm9UeXBlO1xuXG5leHBvcnQgeyB1bmlxdWVWaW50YWdlT3JnSW5mbyB9O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXlDQSxNQUFNQSxzQkFBb0M7RUFDdkMsV0FBVyxjQUFjO0VBQ3pCLFdBQVcsZ0JBQWdCO0VBQzNCLFdBQVcsYUFBYTtFQUN4QixXQUFXLFdBQVc7RUFDdEIsV0FBVyxZQUFZO0VBQ3ZCLFdBQVcsb0JBQW9CO0VBQy9CLFdBQVcsc0JBQXNCO0VBQ2pDLFdBQVcsMEJBQTBCO0VBQ3JDLFdBQVcscUJBQXFCO0VBQ2hDLFdBQVcsaUJBQWlCO0VBQzVCLFdBQVcsa0JBQWtCO0VBQzdCLFdB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