@envive-ai/react-hooks 0.1.4 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/amplitude/index.cjs +2 -2
- package/dist/adapters/amplitude/index.js +2 -2
- package/dist/application/config/index.cjs +3 -3
- package/dist/application/config/index.js +3 -3
- package/dist/application/models/graphql/index.cjs +2 -2
- package/dist/application/models/graphql/index.js +2 -2
- package/dist/application/models/index.cjs +2 -2
- package/dist/application/models/index.d.cts +1 -1
- package/dist/application/models/index.d.ts +1 -1
- package/dist/application/models/index.js +2 -2
- package/dist/application/service/index.cjs +3 -2
- package/dist/application/service/index.d.cts +18 -4
- package/dist/application/service/index.d.ts +18 -4
- package/dist/application/service/index.js +3 -3
- package/dist/application/utils/index.cjs +2 -2
- package/dist/application/utils/index.d.cts +5 -5
- package/dist/application/utils/index.d.ts +5 -5
- package/dist/application/utils/index.js +2 -2
- package/dist/atomStore-ONYy0XuA.d.cts +24 -0
- package/dist/atomStore-kOKiEcNl.d.ts +24 -0
- package/dist/atoms/app/index.cjs +2 -2
- package/dist/atoms/app/index.d.cts +2 -2
- package/dist/atoms/app/index.d.ts +3 -3
- package/dist/atoms/app/index.js +2 -2
- package/dist/atoms/atomStore/index.d.cts +2 -24
- package/dist/atoms/atomStore/index.d.ts +2 -24
- package/dist/atoms/chat/index.cjs +2 -2
- package/dist/atoms/chat/index.d.cts +27 -27
- package/dist/atoms/chat/index.d.ts +27 -27
- package/dist/atoms/chat/index.js +2 -2
- package/dist/atoms/globalSearch/index.d.cts +5 -5
- package/dist/atoms/globalSearch/index.d.ts +6 -6
- package/dist/atoms/org/index.cjs +3 -2
- package/dist/atoms/org/index.d.cts +29 -26
- package/dist/atoms/org/index.d.ts +29 -26
- package/dist/atoms/org/index.js +3 -3
- package/dist/atoms/search/index.cjs +2 -2
- package/dist/atoms/search/index.d.cts +2 -2
- package/dist/atoms/search/index.d.ts +2 -2
- package/dist/atoms/search/index.js +2 -2
- package/dist/{bandolier-B76-OE75.cjs → bandolier-Da4wt6sm.cjs} +10 -10
- package/dist/{bandolier-DRn_x1g1.js → bandolier-DzEmYWcz.js} +10 -10
- package/dist/{carpe-kHi4RLB5.cjs → carpe-AXipz0Xl.cjs} +10 -10
- package/dist/{carpe-qrSU99gq.js → carpe-CaUKwcEa.js} +10 -10
- package/dist/{chat-CLJ4NWcN.js → chat-CHmD79E1.js} +1 -1
- package/dist/{chat-BgONoYU7.cjs → chat-_NzpO_Hn.cjs} +1 -1
- package/dist/{components-BKZbet67.cjs → components-D0XDRcaN.cjs} +1 -1
- package/dist/{components-CV1fhAkj.js → components-Dl-TMD9k.js} +1 -1
- package/dist/config/locators/components/chat/index.cjs +1 -1
- package/dist/config/locators/components/chat/index.d.cts +1 -1
- package/dist/config/locators/components/chat/index.d.ts +1 -1
- package/dist/config/locators/components/chat/index.js +1 -1
- package/dist/config/locators/components/chat/variants/index.d.cts +1 -1
- package/dist/config/locators/components/index.cjs +1 -1
- package/dist/config/locators/components/index.d.cts +1 -1
- package/dist/config/locators/components/index.d.ts +1 -1
- package/dist/config/locators/components/index.js +1 -1
- package/dist/config/locators/components/search/index.d.ts +1 -1
- package/dist/config/locators/index.cjs +4 -4
- package/dist/config/locators/index.d.cts +2 -2
- package/dist/config/locators/index.d.ts +3 -3
- package/dist/config/locators/index.js +4 -4
- package/dist/contexts/index.cjs +2 -2
- package/dist/contexts/index.d.cts +4 -72
- package/dist/contexts/index.d.ts +4 -72
- package/dist/contexts/index.js +2 -2
- package/dist/contexts-CtRlNXaS.js +7674 -0
- package/dist/contexts-CtgmnYNn.cjs +9088 -0
- package/dist/{coterie-yQ-_JXSw.cjs → coterie--MGvWeVh.cjs} +10 -10
- package/dist/{coterie-mMirPcHP.js → coterie-oKHAT0lx.js} +10 -10
- package/dist/{custservice-types-C83itZmy.cjs → custservice-types-C8-9vKWb.cjs} +1 -1
- package/dist/{custservice-types-DPQ-4TI6.js → custservice-types-CamCiXjq.js} +1 -1
- package/dist/default-B4fINY5_.cjs +4 -0
- package/dist/default-BrTQxA0c.js +4 -0
- package/dist/{default-8Jfv8ehQ.cjs → default-C3LrcbZB.cjs} +2 -2
- package/dist/{default-C8PQf-38.js → default-CXkYrLEr.js} +2 -2
- package/dist/{divIds-CWkntTsx.js → divIds-0Vj9g-fM.js} +1 -1
- package/dist/{divIds-DEL_-qU0.cjs → divIds-CjceLRD9.cjs} +1 -1
- package/dist/{dreamlandBaby-cG0HM9bt.js → dreamlandBaby-BEqt0eKF.js} +10 -10
- package/dist/{dreamlandBaby-DHltv12Z.cjs → dreamlandBaby-DBDjEJCc.cjs} +10 -10
- package/dist/{embedded--2L0F4b5.cjs → embedded-B5Wi9g0T.cjs} +1 -1
- package/dist/{embedded-C5uJqmuD.js → embedded-_cLpd6FK.js} +1 -1
- package/dist/events/index.d.cts +1 -1
- package/dist/{fiveCbd-Cvnwh03g.cjs → fiveCbd-CdqNt16h.cjs} +10 -10
- package/dist/{fiveCbd-DhYMlsf9.js → fiveCbd-D6B-sgnX.js} +10 -10
- package/dist/{forLoveAndLemons-DR6a1zjJ.cjs → forLoveAndLemons-C7GsJG7f.cjs} +6 -6
- package/dist/{forLoveAndLemons-C8DuUexW.js → forLoveAndLemons-gNDlMtPR.js} +6 -6
- package/dist/{greenpan-B4Pu65kV.js → greenpan-B5AaW4M_.js} +10 -10
- package/dist/{greenpan-BL5p6j7f.cjs → greenpan-DrORpYms.cjs} +10 -10
- package/dist/{grooveLife-DjKWHoN3.cjs → grooveLife-BJqsfH2H.cjs} +10 -10
- package/dist/{grooveLife-JK0TyaPz.js → grooveLife-xIUmDM8s.js} +10 -10
- package/dist/{homegrownCannabis-ZnfCqW-m.cjs → homegrownCannabis-8TZ21u6L.cjs} +10 -10
- package/dist/{homegrownCannabis-DxqSDkmS.js → homegrownCannabis-BtMuEvbZ.js} +10 -10
- package/dist/hooks/index.cjs +3 -5
- package/dist/hooks/index.d.cts +19 -74
- package/dist/hooks/index.d.ts +15 -70
- package/dist/hooks/index.js +3 -3
- package/dist/index-BTK5uzs6.d.cts +1 -1
- package/dist/{index-jBATkcc_.d.cts → index-BdNKc2ix.d.cts} +1 -1
- package/dist/{index-C62lPpy4.d.cts → index-BrXuc_Ck.d.cts} +1 -1
- package/dist/index-BzgkfbNO.d.cts +1 -1
- package/dist/index-CKUpnyJQ.d.ts +72 -0
- package/dist/{index-DPx8s5YH.d.ts → index-CSIOQD-A.d.ts} +1 -1
- package/dist/{index-C_C0tLeD.d.ts → index-CbJZOEU4.d.ts} +31 -31
- package/dist/{index-CExtydIH.d.ts → index-Cr2y08f1.d.ts} +1 -1
- package/dist/{index-CNsGWfS6.d.cts → index-DXpgMVpp.d.ts} +7 -7
- package/dist/index-Dxpscrvz.d.ts +1 -1
- package/dist/{index-CYtsPztZ.d.cts → index-K2kNsOTw.d.cts} +31 -31
- package/dist/index-VHFMGkO-.d.cts +72 -0
- package/dist/index-aNW5V9fh.d.cts +749 -0
- package/dist/interceptors/index.cjs +2 -2
- package/dist/interceptors/index.d.cts +2 -2
- package/dist/interceptors/index.d.ts +1 -1
- package/dist/interceptors/index.js +2 -2
- package/dist/{jackArcher-mGkojXek.cjs → jackArcher-WtkbLBZj.cjs} +10 -10
- package/dist/{jackArcher-CXf_IAmC.js → jackArcher-sO9EbgrZ.js} +10 -10
- package/dist/{jordanCraig-Dv8pVCiS.cjs → jordanCraig-471FcgqF.cjs} +10 -10
- package/dist/{jordanCraig-BvCvPRoR.js → jordanCraig-DNOncplU.js} +10 -10
- package/dist/{kindredBravely-UQP7wiNu.cjs → kindredBravely-BlLyHGMX.cjs} +9 -9
- package/dist/{kindredBravely-X8F_LNph.js → kindredBravely-cqZ4OvXp.js} +9 -9
- package/dist/{kutFromTheKloth-BhYKk3CN.cjs → kutFromTheKloth-3mOIryvt.cjs} +10 -10
- package/dist/{kutFromTheKloth-D1xsTSJr.js → kutFromTheKloth-DtVNCMKa.js} +10 -10
- package/dist/{larryAndSerges-1411NuZa.cjs → larryAndSerges-88Bvq-Us.cjs} +7 -7
- package/dist/{larryAndSerges-DVIRLItu.js → larryAndSerges-cvak6May.js} +7 -7
- package/dist/{leapsAndRebounds-BJ8mwr33.js → leapsAndRebounds-Dmf8eUPq.js} +10 -10
- package/dist/{leapsAndRebounds-UcP9EJVO.cjs → leapsAndRebounds-iWKc923H.cjs} +10 -10
- package/dist/{longevityrx-Cp6wleWr.js → longevityrx-BTMI9vn-.js} +10 -10
- package/dist/{longevityrx-BFSv9GF5.cjs → longevityrx-CobPyigd.cjs} +10 -10
- package/dist/{lookOptic-KieSqskd.cjs → lookOptic-C4H_c0JZ.cjs} +10 -10
- package/dist/{lookOptic-BGhU4910.js → lookOptic-Jwf7EAU8.js} +10 -10
- package/dist/{mantraBrand-CHQw-0nw.cjs → mantraBrand-CySGqbn6.cjs} +10 -10
- package/dist/{mantraBrand-DrqG9uqO.js → mantraBrand-DoaVj837.js} +10 -10
- package/dist/{medterra-CLG6Co1C.cjs → medterra-BnZ5p27n.cjs} +10 -10
- package/dist/{medterra-D8ZX9NZC.js → medterra-DaICcPPp.js} +10 -10
- package/dist/{modells-CAfqOCW4.js → modells-CZ1L6dD_.js} +10 -10
- package/dist/{modells-BzyPwN2m.cjs → modells-DF0SndHr.cjs} +10 -10
- package/dist/{nodeSelector-BiCDowlK.d.ts → nodeSelector-DybpVr-i.d.ts} +1 -1
- package/dist/{nodeSelector-B3bPtEjX.d.cts → nodeSelector-vKB44CDB.d.cts} +1 -1
- package/dist/orgConfigResults-BL0XBA6x.d.cts +1 -1
- package/dist/{pressedFloral-DULBuQwR.cjs → pressedFloral-B3t2cYzs.cjs} +10 -10
- package/dist/{pressedFloral-Dp-7Fk3S.js → pressedFloral-Dsws2Kfb.js} +10 -10
- package/dist/{search-filter-types-BNTLVXqQ.d.cts → search-filter-types-9rTb3jMj.d.cts} +1 -1
- package/dist/{search-filter-types-DkmH1TxJ.d.ts → search-filter-types-C-zZSpGo.d.ts} +1 -1
- package/dist/{skinPerfection-Cd3XZ6By.cjs → skinPerfection-CILQM2bR.cjs} +10 -10
- package/dist/{skinPerfection-BxuYCeJX.js → skinPerfection-DmQCntRf.js} +10 -10
- package/dist/{snapSupplements-Bf6htPM0.js → snapSupplements--X_v0KRM.js} +10 -10
- package/dist/{snapSupplements-ZFnXyMuZ.cjs → snapSupplements-Djuzl0Ed.cjs} +10 -10
- package/dist/{spanx-Cyd4qDlK.cjs → spanx-Bo81yXSF.cjs} +11 -11
- package/dist/{spanx-CwDPQaGj.js → spanx-DauxB8KE.js} +11 -11
- package/dist/{spanxStaging-ijbYnHzr.cjs → spanxStaging-BucYQvR1.cjs} +11 -11
- package/dist/{spanxStaging-D43nyAGy.js → spanxStaging-CfXUukdP.js} +11 -11
- package/dist/{suggestionBarV2-types-Dc4-zJlV.cjs → suggestionBarV2-types-B3lwrENK.cjs} +1 -1
- package/dist/{suggestionBarV2-types-CwOXzIKq.js → suggestionBarV2-types-Penx3Y67.js} +1 -1
- package/dist/{supergoop-BnbFG7hm.cjs → supergoop-8qa_NV3F.cjs} +11 -11
- package/dist/{supergoop-CY043wIg.js → supergoop-DOaui-A6.js} +11 -11
- package/dist/types/index.cjs +2 -2
- package/dist/types/index.d.cts +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.js +2 -2
- package/dist/types-CGC6Oozp.cjs +231 -0
- package/dist/types-CnTCkyvK.js +177 -0
- package/dist/{uniqueVintage-Cui74mlJ.js → uniqueVintage-BWkDgt1z.js} +10 -10
- package/dist/{uniqueVintage-R2Jcu1y1.cjs → uniqueVintage-DAne8XcL.cjs} +10 -10
- package/dist/{variant-CKVRF2-W.d.ts → variant-CC1nrywd.d.ts} +3 -3
- package/dist/{variant-raYuOP4L.d.cts → variant-CQTuQQSq.d.cts} +3 -3
- package/dist/{venaCbd-r-IxEVc1.cjs → venaCbd-B1HO_Pkr.cjs} +10 -10
- package/dist/{venaCbd-o5_vOp4e.js → venaCbd-CnByO-5R.js} +10 -10
- package/dist/{westonJonBoucher-C95EuCl-.js → westonJonBoucher-BAGXegsX.js} +10 -10
- package/dist/{westonJonBoucher-DjGEW3ZB.cjs → westonJonBoucher-BRfHWMbs.cjs} +10 -10
- package/dist/{wineEnthusiast-DvfcV5B3.cjs → wineEnthusiast-DW8JVwV8.cjs} +10 -10
- package/dist/{wineEnthusiast-DeTFY8Gm.js → wineEnthusiast-EJbhMeKQ.js} +10 -10
- package/dist/{wolfMattress-BjGnGKjP.cjs → wolfMattress-B6INZNRJ.cjs} +10 -10
- package/dist/{wolfMattress-6xPfOJt3.js → wolfMattress-D9P7ErH_.js} +10 -10
- package/dist/{wolfTactical-C_F9-oPX.js → wolfTactical-C5Pupi3J.js} +10 -10
- package/dist/{wolfTactical-Bi3WZu0m.cjs → wolfTactical-TMthZM93.cjs} +10 -10
- package/package.json +2 -1
- package/src/application/models/supportedOrgs.ts +1 -1
- package/src/application/service/graphqlConfigService.ts +59 -0
- package/src/application/service/index.ts +1 -0
- package/src/atoms/org/graphqlConfig.ts +14 -3
- package/src/atoms/org/index.ts +7 -7
- package/src/atoms/org/merchantCss.ts +5 -2
- package/src/atoms/org/org.ts +2 -42
- package/src/atoms/search/searchAPI.ts +52 -42
- package/src/hooks/index.ts +1 -3
- package/src/hooks/useDynamicVariants.ts +48 -32
- package/src/hooks/useFileUpload.ts +1 -1
- package/src/hooks/useHideElements.ts +21 -18
- package/src/hooks/useImageResolver.ts +16 -8
- package/src/hooks/useNewOrgConfig.ts +80 -0
- package/dist/contexts-CQDwe3rK.cjs +0 -14333
- package/dist/contexts-e2sM-B9g.js +0 -12919
- package/dist/default-LukSiCz1.js +0 -4
- package/dist/default-rJSJ887P.cjs +0 -4
- package/dist/index-BfuO9b0Q.d.ts +0 -749
- package/dist/types-BF_CJeck.js +0 -177
- package/dist/types-CNH4sfF-.cjs +0 -231
- package/src/hooks/useHorizontalScrollAnimation.ts +0 -115
- package/src/hooks/useReducedMotionWithOverride.ts +0 -15
- package/src/hooks/useSnapControl.ts +0 -155
- /package/dist/{locators-lQMJj830.cjs → locators-CugndTUM.cjs} +0 -0
- /package/dist/{locators-Dc5ZT0aF.js → locators-DnKpajbY.js} +0 -0
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
//#region src/application/models/colorsConfig.ts
|
|
2
|
+
var ColorNames = /* @__PURE__ */ function(ColorNames$1) {
|
|
3
|
+
ColorNames$1["TextPrimary"] = "text-primary";
|
|
4
|
+
ColorNames$1["TextSecondary"] = "text-secondary";
|
|
5
|
+
ColorNames$1["TextAccent"] = "text-accent";
|
|
6
|
+
ColorNames$1["TextLink"] = "text-link";
|
|
7
|
+
ColorNames$1["TextLight"] = "text-light";
|
|
8
|
+
ColorNames$1["BackgroundPrimary"] = "background-primary";
|
|
9
|
+
ColorNames$1["BackgroundSecondary"] = "background-secondary";
|
|
10
|
+
ColorNames$1["BackgroundSecondaryDark"] = "background-secondary-dark";
|
|
11
|
+
ColorNames$1["BackgroundTertiary"] = "background-tertiary";
|
|
12
|
+
ColorNames$1["BackgroundDark"] = "background-dark";
|
|
13
|
+
ColorNames$1["BackgroundLight"] = "background-light";
|
|
14
|
+
ColorNames$1["BackgroundSaturated"] = "background-saturated";
|
|
15
|
+
ColorNames$1["BorderLight"] = "border-light";
|
|
16
|
+
ColorNames$1["BorderMedium"] = "border-medium";
|
|
17
|
+
ColorNames$1["BorderDark"] = "border-dark";
|
|
18
|
+
ColorNames$1["BorderOutline"] = "border-outline";
|
|
19
|
+
ColorNames$1["AccentPrimary"] = "accent-primary";
|
|
20
|
+
ColorNames$1["AccentSecondary"] = "accent-secondary";
|
|
21
|
+
return ColorNames$1;
|
|
22
|
+
}(ColorNames || {});
|
|
23
|
+
const colorVar = (color) => `var(--spiffy-colors-${color})`;
|
|
24
|
+
|
|
25
|
+
//#endregion
|
|
26
|
+
//#region src/application/models/orgsEnum.ts
|
|
27
|
+
const OrgShortName = {
|
|
28
|
+
Coterie: "coterie",
|
|
29
|
+
ForLoveAndLemons: "for-love-and-lemons",
|
|
30
|
+
Greenpan: "greenpan",
|
|
31
|
+
JordanCraig: "jordan-craig",
|
|
32
|
+
LarryAndSerges: "larry_and_serges",
|
|
33
|
+
LeapsAndRebounds: "leaps-and-rebounds",
|
|
34
|
+
MantraBrand: "mantra-brand",
|
|
35
|
+
Spanx: "spanx",
|
|
36
|
+
SpanxStaging: "staging-spanx",
|
|
37
|
+
Supergoop: "supergoop",
|
|
38
|
+
UniqueVintage: "unique-vintage",
|
|
39
|
+
JackArcher: "jack-archer",
|
|
40
|
+
SkinPerfection: "skin-perfection",
|
|
41
|
+
LookOptic: "look-optic",
|
|
42
|
+
FiveCbd: "five-cbd",
|
|
43
|
+
SnapSupplements: "snap-supplements",
|
|
44
|
+
Longevityrx: "longevityrx",
|
|
45
|
+
VenaCbd: "vena-cbd",
|
|
46
|
+
Medterra: "medterra",
|
|
47
|
+
Modells: "modells",
|
|
48
|
+
PressedFloral: "pressed-floral",
|
|
49
|
+
KindredBravely: "kindred-bravely",
|
|
50
|
+
WineEnthusiast: "wine-enthusiast",
|
|
51
|
+
HomegrownCannabis: "homegrown-cannabis",
|
|
52
|
+
DreamlandBaby: "dreamland-baby",
|
|
53
|
+
Bandolier: "bandolier",
|
|
54
|
+
WestonJonBoucher: "weston-jon-boucher",
|
|
55
|
+
KutFromTheKloth: "kut-from-the-kloth",
|
|
56
|
+
GrooveLife: "groove-life",
|
|
57
|
+
Carpe: "carpe",
|
|
58
|
+
WolfTactical: "wolf-tactical",
|
|
59
|
+
WolfMattress: "wolfmattress",
|
|
60
|
+
Default: "default"
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
//#endregion
|
|
64
|
+
//#region src/application/models/supportedOrgs.ts
|
|
65
|
+
const getOrgInfo = async (orgShortName) => {
|
|
66
|
+
switch (orgShortName) {
|
|
67
|
+
case OrgShortName.Bandolier: return import("./bandolier-DzEmYWcz.js").then((module) => module.bandolierOrgInfo);
|
|
68
|
+
case OrgShortName.Carpe: return import("./carpe-CaUKwcEa.js").then((module) => module.carpeOrgInfo);
|
|
69
|
+
case OrgShortName.Coterie: return import("./coterie-oKHAT0lx.js").then((module) => module.coterieOrgInfo);
|
|
70
|
+
case OrgShortName.DreamlandBaby: return import("./dreamlandBaby-BEqt0eKF.js").then((module) => module.dreamlandBabyOrgInfo);
|
|
71
|
+
case OrgShortName.ForLoveAndLemons: return import("./forLoveAndLemons-gNDlMtPR.js").then((module) => module.forLoveAndLemonsOrgInfo);
|
|
72
|
+
case OrgShortName.Greenpan: return import("./greenpan-B5AaW4M_.js").then((module) => module.greenpanOrgInfo);
|
|
73
|
+
case OrgShortName.GrooveLife: return import("./grooveLife-xIUmDM8s.js").then((module) => module.grooveLifeOrgInfo);
|
|
74
|
+
case OrgShortName.JackArcher: return import("./jackArcher-sO9EbgrZ.js").then((module) => module.jackArcherOrgInfo);
|
|
75
|
+
case OrgShortName.JordanCraig: return import("./jordanCraig-DNOncplU.js").then((module) => module.jordanCraigOrgInfo);
|
|
76
|
+
case OrgShortName.KutFromTheKloth: return import("./kutFromTheKloth-DtVNCMKa.js").then((module) => module.kutFromTheKlothOrgInfo);
|
|
77
|
+
case OrgShortName.LarryAndSerges: return import("./larryAndSerges-cvak6May.js").then((module) => module.larryAndSergesOrgInfo);
|
|
78
|
+
case OrgShortName.LeapsAndRebounds: return import("./leapsAndRebounds-Dmf8eUPq.js").then((module) => module.leapsAndReboundsOrgInfo);
|
|
79
|
+
case OrgShortName.MantraBrand: return import("./mantraBrand-DoaVj837.js").then((module) => module.mantraBrandOrgInfo);
|
|
80
|
+
case OrgShortName.Spanx: return import("./spanx-DauxB8KE.js").then((module) => module.spanxOrgInfo);
|
|
81
|
+
case OrgShortName.SpanxStaging: return import("./spanxStaging-CfXUukdP.js").then((module) => module.spanxOrgInfo);
|
|
82
|
+
case OrgShortName.Supergoop: return import("./supergoop-DOaui-A6.js").then((module) => module.supergoopOrgInfo);
|
|
83
|
+
case OrgShortName.UniqueVintage: return import("./uniqueVintage-BWkDgt1z.js").then((module) => module.uniqueVintageOrgInfo);
|
|
84
|
+
case OrgShortName.WestonJonBoucher: return import("./westonJonBoucher-BAGXegsX.js").then((module) => module.westonJonBoucherOrgInfo);
|
|
85
|
+
case OrgShortName.WolfMattress: return import("./wolfMattress-D9P7ErH_.js").then((module) => module.wolfMattressOrgInfo);
|
|
86
|
+
case OrgShortName.WolfTactical: return import("./wolfTactical-C5Pupi3J.js").then((module) => module.wolfTacticalOrgInfo);
|
|
87
|
+
case OrgShortName.SkinPerfection: return import("./skinPerfection-DmQCntRf.js").then((module) => module.skinPerfectionOrgInfo);
|
|
88
|
+
case OrgShortName.LookOptic: return import("./lookOptic-Jwf7EAU8.js").then((module) => module.lookOpticOrgInfo);
|
|
89
|
+
case OrgShortName.FiveCbd: return import("./fiveCbd-D6B-sgnX.js").then((module) => module.fiveCbdOrgInfo);
|
|
90
|
+
case OrgShortName.SnapSupplements: return import("./snapSupplements--X_v0KRM.js").then((module) => module.snapSupplementsOrgInfo);
|
|
91
|
+
case OrgShortName.Longevityrx: return import("./longevityrx-BTMI9vn-.js").then((module) => module.longevityrxOrgInfo);
|
|
92
|
+
case OrgShortName.VenaCbd: return import("./venaCbd-CnByO-5R.js").then((module) => module.venaCbdOrgInfo);
|
|
93
|
+
case OrgShortName.Medterra: return import("./medterra-DaICcPPp.js").then((module) => module.medterraOrgInfo);
|
|
94
|
+
case OrgShortName.Modells: return import("./modells-CZ1L6dD_.js").then((module) => module.modellsOrgInfo);
|
|
95
|
+
case OrgShortName.PressedFloral: return import("./pressedFloral-Dsws2Kfb.js").then((module) => module.pressedFloralOrgInfo);
|
|
96
|
+
case OrgShortName.KindredBravely: return import("./kindredBravely-cqZ4OvXp.js").then((module) => module.kindredBravelyOrgInfo);
|
|
97
|
+
case OrgShortName.WineEnthusiast: return import("./wineEnthusiast-EJbhMeKQ.js").then((module) => module.wineEnthusiastOrgInfo);
|
|
98
|
+
case OrgShortName.HomegrownCannabis: return import("./homegrownCannabis-BtMuEvbZ.js").then((module) => module.homegrownCannabisOrgInfo);
|
|
99
|
+
default: return import("./default-BrTQxA0c.js").then((module) => module.defaultOrgInfo);
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
|
|
103
|
+
//#endregion
|
|
104
|
+
//#region src/contexts/types.ts
|
|
105
|
+
var CategoryExtractorType = /* @__PURE__ */ function(CategoryExtractorType$1) {
|
|
106
|
+
CategoryExtractorType$1["VisitCategoryMap"] = "VisitCategoryMap";
|
|
107
|
+
CategoryExtractorType$1["VisitCategoryDefault"] = "VisitCategoryDefault";
|
|
108
|
+
return CategoryExtractorType$1;
|
|
109
|
+
}(CategoryExtractorType || {});
|
|
110
|
+
var PageVariantTestType = /* @__PURE__ */ function(PageVariantTestType$1) {
|
|
111
|
+
PageVariantTestType$1["ShopifyPLP"] = "ShopifyPLP";
|
|
112
|
+
PageVariantTestType$1["ShopifyPDP"] = "ShopifyPDP";
|
|
113
|
+
PageVariantTestType$1["PageCategory"] = "PageCategory";
|
|
114
|
+
PageVariantTestType$1["CatalogCategory"] = "CatalogCategory";
|
|
115
|
+
PageVariantTestType$1["TopCatalogCategory"] = "TopCatalogCategory";
|
|
116
|
+
PageVariantTestType$1["HasReviews"] = "HasReviews";
|
|
117
|
+
PageVariantTestType$1["InCollection"] = "InCollection";
|
|
118
|
+
PageVariantTestType$1["HasMerchantTag"] = "HasMerchantTag";
|
|
119
|
+
PageVariantTestType$1["FeatureGate"] = "FeatureGate";
|
|
120
|
+
PageVariantTestType$1["PlpId"] = "PlpId";
|
|
121
|
+
PageVariantTestType$1["QueryParam"] = "QueryParam";
|
|
122
|
+
PageVariantTestType$1["ProductId"] = "ProductId";
|
|
123
|
+
PageVariantTestType$1["UserHasInteracted"] = "UserHasInteracted";
|
|
124
|
+
PageVariantTestType$1["UserHasNotInteracted"] = "UserHasNotInteracted";
|
|
125
|
+
PageVariantTestType$1["isLoading"] = "isLoading";
|
|
126
|
+
PageVariantTestType$1["isProductComparison"] = "isProductComparison";
|
|
127
|
+
PageVariantTestType$1["Fallback"] = "Fallback";
|
|
128
|
+
PageVariantTestType$1["UrlResolver"] = "UrlResolver";
|
|
129
|
+
PageVariantTestType$1["Null"] = "null";
|
|
130
|
+
return PageVariantTestType$1;
|
|
131
|
+
}(PageVariantTestType || {});
|
|
132
|
+
var WidgetType = /* @__PURE__ */ function(WidgetType$1) {
|
|
133
|
+
WidgetType$1["ChatPreview"] = "ChatPreview";
|
|
134
|
+
WidgetType$1["SocialProofV2"] = "SocialProofV2";
|
|
135
|
+
WidgetType$1["ChatPreviewV2"] = "ChatPreviewV2";
|
|
136
|
+
WidgetType$1["ChatPreviewIsLoading"] = "ChatPreviewIsLoading";
|
|
137
|
+
WidgetType$1["ChatPreviewPostInteraction"] = "ChatPreviewPostInteraction";
|
|
138
|
+
WidgetType$1["ChatPreviewProductComparison"] = "ChatPreviewProductComparison";
|
|
139
|
+
WidgetType$1["SuggestionBar"] = "SuggestionBar";
|
|
140
|
+
WidgetType$1["SuggestionBarV2"] = "SuggestionBarV2";
|
|
141
|
+
WidgetType$1["ImagePromptCard"] = "ImagePromptCard";
|
|
142
|
+
WidgetType$1["ImageBanner"] = "ImageBanner";
|
|
143
|
+
WidgetType$1["SingleImagePrompt"] = "SingleImagePrompt";
|
|
144
|
+
WidgetType$1["SearchPrompt"] = "SearchPrompt";
|
|
145
|
+
WidgetType$1["SearchZeroStateEntryPoint"] = "SearchZeroStateEntryPoint";
|
|
146
|
+
WidgetType$1["SearchResultsEntryPoint"] = "SearchResultsEntryPoint";
|
|
147
|
+
WidgetType$1["SearchOverlayHost"] = "SearchOverlayHost";
|
|
148
|
+
WidgetType$1["NoOp"] = "NoOp";
|
|
149
|
+
return WidgetType$1;
|
|
150
|
+
}(WidgetType || {});
|
|
151
|
+
|
|
152
|
+
//#endregion
|
|
153
|
+
//#region src/application/service/customerService/types.ts
|
|
154
|
+
let CustomerServiceType = /* @__PURE__ */ function(CustomerServiceType$1) {
|
|
155
|
+
CustomerServiceType$1["shopify"] = "shopify";
|
|
156
|
+
CustomerServiceType$1["gorgias"] = "gorgias";
|
|
157
|
+
CustomerServiceType$1["kustomer"] = "kustomer";
|
|
158
|
+
CustomerServiceType$1["groove"] = "groove";
|
|
159
|
+
CustomerServiceType$1["tidio"] = "tidio";
|
|
160
|
+
CustomerServiceType$1["zowie"] = "zowie";
|
|
161
|
+
CustomerServiceType$1["redo"] = "redo";
|
|
162
|
+
CustomerServiceType$1["gladly"] = "gladly";
|
|
163
|
+
CustomerServiceType$1["richpanel"] = "richpanel";
|
|
164
|
+
CustomerServiceType$1["zendesk"] = "zendesk";
|
|
165
|
+
CustomerServiceType$1["unsupported"] = "unsupported";
|
|
166
|
+
return CustomerServiceType$1;
|
|
167
|
+
}({});
|
|
168
|
+
let CustomerServiceIntegrationMode = /* @__PURE__ */ function(CustomerServiceIntegrationMode$1) {
|
|
169
|
+
CustomerServiceIntegrationMode$1["none"] = "none";
|
|
170
|
+
CustomerServiceIntegrationMode$1["simple"] = "simple";
|
|
171
|
+
CustomerServiceIntegrationMode$1["full"] = "full";
|
|
172
|
+
return CustomerServiceIntegrationMode$1;
|
|
173
|
+
}({});
|
|
174
|
+
|
|
175
|
+
//#endregion
|
|
176
|
+
export { CategoryExtractorType, ColorNames, CustomerServiceIntegrationMode, CustomerServiceType, OrgShortName, PageVariantTestType, WidgetType, colorVar, getOrgInfo };
|
|
177
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMtQ25UQ2t5dksuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2FwcGxpY2F0aW9uL21vZGVscy9jb2xvcnNDb25maWcudHMiLCIuLi9zcmMvYXBwbGljYXRpb24vbW9kZWxzL29yZ3NFbnVtLnRzIiwiLi4vc3JjL2FwcGxpY2F0aW9uL21vZGVscy9zdXBwb3J0ZWRPcmdzLnRzIiwiLi4vc3JjL2NvbnRleHRzL3R5cGVzLnRzIiwiLi4vc3JjL2FwcGxpY2F0aW9uL3NlcnZpY2UvY3VzdG9tZXJTZXJ2aWNlL3R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImVudW0gQ29sb3JOYW1lcyB7XG4gIFRleHRQcmltYXJ5ID0gJ3RleHQtcHJpbWFyeScsXG4gIFRleHRTZWNvbmRhcnkgPSAndGV4dC1zZWNvbmRhcnknLFxuICBUZXh0QWNjZW50ID0gJ3RleHQtYWNjZW50JyxcbiAgVGV4dExpbmsgPSAndGV4dC1saW5rJyxcbiAgVGV4dExpZ2h0ID0gJ3RleHQtbGlnaHQnLFxuICBCYWNrZ3JvdW5kUHJpbWFyeSA9ICdiYWNrZ3JvdW5kLXByaW1hcnknLFxuICBCYWNrZ3JvdW5kU2Vjb25kYXJ5ID0gJ2JhY2tncm91bmQtc2Vjb25kYXJ5JyxcbiAgQmFja2dyb3VuZFNlY29uZGFyeURhcmsgPSAnYmFja2dyb3VuZC1zZWNvbmRhcnktZGFyaycsXG4gIEJhY2tncm91bmRUZXJ0aWFyeSA9ICdiYWNrZ3JvdW5kLXRlcnRpYXJ5JyxcbiAgQmFja2dyb3VuZERhcmsgPSAnYmFja2dyb3VuZC1kYXJrJyxcbiAgQmFja2dyb3VuZExpZ2h0ID0gJ2JhY2tncm91bmQtbGlnaHQnLFxuICBCYWNrZ3JvdW5kU2F0dXJhdGVkID0gJ2JhY2tncm91bmQtc2F0dXJhdGVkJyxcbiAgQm9yZGVyTGlnaHQgPSAnYm9yZGVyLWxpZ2h0JyxcbiAgQm9yZGVyTWVkaXVtID0gJ2JvcmRlci1tZWRpdW0nLFxuICBCb3JkZXJEYXJrID0gJ2JvcmRlci1kYXJrJyxcbiAgQm9yZGVyT3V0bGluZSA9ICdib3JkZXItb3V0bGluZScsXG4gIEFjY2VudFByaW1hcnkgPSAnYWNjZW50LXByaW1hcnknLFxuICBBY2NlbnRTZWNvbmRhcnkgPSAnYWNjZW50LXNlY29uZGFyeScsXG59XG5cbnR5cGUgQ29sb3JNYXBwaW5nID0ge1xuICBba2V5IGluIENvbG9yTmFtZXNdOiBzdHJpbmc7XG59O1xuXG5jb25zdCBjb2xvclZhciA9IChjb2xvcjogQ29sb3JOYW1lcyk6IHN0cmluZyA9PiBgdmFyKC0tc3BpZmZ5LWNvbG9ycy0ke2NvbG9yfSlgO1xuZXhwb3J0IHsgQ29sb3JOYW1lcywgY29sb3JWYXIgfTtcbmV4cG9ydCB0eXBlIHsgQ29sb3JNYXBwaW5nIH07XG4iLCJleHBvcnQgY29uc3QgT3JnU2hvcnROYW1lID0ge1xuICBDb3RlcmllOiAnY290ZXJpZScsXG4gIEZvckxvdmVBbmRMZW1vbnM6ICdmb3ItbG92ZS1hbmQtbGVtb25zJyxcbiAgR3JlZW5wYW46ICdncmVlbnBhbicsXG4gIEpvcmRhbkNyYWlnOiAnam9yZGFuLWNyYWlnJyxcbiAgTGFycnlBbmRTZXJnZXM6ICdsYXJyeV9hbmRfc2VyZ2VzJyxcbiAgTGVhcHNBbmRSZWJvdW5kczogJ2xlYXBzLWFuZC1yZWJvdW5kcycsXG4gIE1hbnRyYUJyYW5kOiAnbWFudHJhLWJyYW5kJyxcbiAgU3Bhbng6ICdzcGFueCcsXG4gIFNwYW54U3RhZ2luZzogJ3N0YWdpbmctc3BhbngnLFxuICBTdXBlcmdvb3A6ICdzdXBlcmdvb3AnLFxuICBVbmlxdWVWaW50YWdlOiAndW5pcXVlLXZpbnRhZ2UnLFxuICBKYWNrQXJjaGVyOiAnamFjay1hcmNoZXInLFxuICAvKiAtLSBCZWxvdyBpdGVtcyBhcmUgZ2VuZXJhdGVkIGJ5IHBsb3AgLS0gKi9cbiAgU2tpblBlcmZlY3Rpb246ICdza2luLXBlcmZlY3Rpb24nLFxuICBMb29rT3B0aWM6ICdsb29rLW9wdGljJyxcbiAgRml2ZUNiZDogJ2ZpdmUtY2JkJyxcbiAgU25hcFN1cHBsZW1lbnRzOiAnc25hcC1zdXBwbGVtZW50cycsXG4gIExvbmdldml0eXJ4OiAnbG9uZ2V2aXR5cngnLFxuICBWZW5hQ2JkOiAndmVuYS1jYmQnLFxuICBNZWR0ZXJyYTogJ21lZHRlcnJhJyxcbiAgTW9kZWxsczogJ21vZGVsbHMnLFxuICBQcmVzc2VkRmxvcmFsOiAncHJlc3NlZC1mbG9yYWwnLFxuICBLaW5kcmVkQnJhdmVseTogJ2tpbmRyZWQtYnJhdmVseScsXG4gIFdpbmVFbnRodXNpYXN0OiAnd2luZS1lbnRodXNpYXN0JyxcbiAgSG9tZWdyb3duQ2FubmFiaXM6ICdob21lZ3Jvd24tY2FubmFiaXMnLFxuICBEcmVhbWxhbmRCYWJ5OiAnZHJlYW1sYW5kLWJhYnknLFxuICBCYW5kb2xpZXI6ICdiYW5kb2xpZXInLFxuICBXZXN0b25Kb25Cb3VjaGVyOiAnd2VzdG9uLWpvbi1ib3VjaGVyJyxcbiAgS3V0RnJvbVRoZUtsb3RoOiAna3V0LWZyb20tdGhlLWtsb3RoJyxcbiAgR3Jvb3ZlTGlmZTogJ2dyb292ZS1saWZlJyxcbiAgQ2FycGU6ICdjYXJwZScsXG4gIFdvbGZUYWN0aWNhbDogJ3dvbGYtdGFjdGljYWwnLFxuICBXb2xmTWF0dHJlc3M6ICd3b2xmbWF0dHJlc3MnLFxuICBEZWZhdWx0OiAnZGVmYXVsdCcsXG59IGFzIGNvbnN0O1xuIiwiaW1wb3J0IHsgT3JnU2hvcnROYW1lIH0gZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9tb2RlbHMvb3Jnc0VudW1cIjtcbmltcG9ydCB7IENvbG9yTWFwcGluZywgT3JnUGFnZUNvbmZpZywgT3JnVUlDb25maWcgfSBmcm9tIFwic3JjL2NvbnRleHRzL3R5cGVzXCI7XG5cbmV4cG9ydCB7IE9yZ1Nob3J0TmFtZSB9IGZyb20gXCIuL29yZ3NFbnVtXCI7XG5cbmV4cG9ydCB0eXBlIEJhc2ljT3JnSW5mb1R5cGUgPSB7XG4gIHNob3J0TmFtZTogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIGRvbWFpbjogc3RyaW5nO1xuICBkZWZhdWx0UHJvZHVjdElkOiBzdHJpbmc7XG4gIGFsd2F5c0VuYWJsZWRNZXJjaGFudHM6IGJvb2xlYW47XG4gIG9yZ1VJQ29uZmlnOiAoKSA9PiBPcmdVSUNvbmZpZyB8IHVuZGVmaW5lZDtcbiAgb3JnUGFnZUNvbmZpZzogKCkgPT4gT3JnUGFnZUNvbmZpZztcbiAgb3JnQ29sb3JzOiAoKSA9PiBDb2xvck1hcHBpbmcgfCB7fTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRPcmdJbmZvID0gYXN5bmMgKFxuICBvcmdTaG9ydE5hbWU/OiBzdHJpbmdcbik6IFByb21pc2U8QmFzaWNPcmdJbmZvVHlwZT4gPT4ge1xuICBzd2l0Y2ggKG9yZ1Nob3J0TmFtZSkge1xuICAgIGNhc2UgT3JnU2hvcnROYW1lLkJhbmRvbGllcjpcbiAgICAgIHJldHVybiBpbXBvcnQoXCJzcmMvbWVyY2hhbnRzL2JhbmRvbGllci9iYW5kb2xpZXJcIikudGhlbihcbiAgICAgICAgKG1vZHVsZSkgPT4gbW9kdWxlLmJhbmRvbGllck9yZ0luZm9cbiAgICAgICk7XG4gICAgY2FzZSBPcmdTaG9ydE5hbWUuQ2FycGU6XG4gICAgICByZXR1cm4gaW1wb3J0KFwic3JjL21lcmNoYW50cy9jYXJwZS9jYXJwZVwiKS50aGVuKFxuICAgICAgICAobW9kdWxlKSA9PiBtb2R1bGUuY2FycGVPcmdJbmZvXG4gICAgICApO1xuICAgIGNhc2UgT3JnU2hvcnROYW1lLkNvdGVyaWU6XG4gICAgICByZXR1cm4gaW1wb3J0KFwic3JjL21lcmNoYW50cy9jb3RlcmllL2NvdGVyaWVcIikudGhlbihcbiAgICAgICAgKG1vZHVsZSkgPT4gbW9kdWxlLmNvdGVyaWVPcmdJbmZvXG4gICAgICApO1xuICAgIGNhc2UgT3JnU2hvcnROYW1lLkRyZWFtbGFuZEJhYnk6XG4gICAgICByZXR1cm4gaW1wb3J0KFwic3JjL21lcmNoYW50cy9kcmVhbWxhbmRCYWJ5L2RyZWFtbGFuZEJhYnlcIikudGhlbihcbiAgICAgICAgKG1vZHVsZSkgPT4gbW9kdWxlLmRyZWFtbGFuZEJhYnlPcmdJbmZvXG4gICAgICApO1xuICAgIGNhc2UgT3JnU2hvcnROYW1lLkZvckxvdmVBbmRMZW1vbnM6XG4gICAgICByZXR1cm4gaW1wb3J0KFwic3JjL21lcmNoYW50cy9mb3JMb3ZlQW5kTGVtb25zL2ZvckxvdmVBbmRMZW1vbnNcIikudGhlbihcbiAgICAgICAgKG1vZHVsZSkgPT4gbW9kdWxlLmZvckxvdmVBbmRMZW1vbnNPcmdJbmZvXG4gICAgICApO1xuICAgIGNhc2UgT3JnU2hvcnROYW1lLkdyZWVucGFuOlxuICAgICAgcmV0dXJuIGltcG9ydChcInNyYy9tZXJjaGFudHMvZ3JlZW5wYW4vZ3JlZW5wYW5cIikudGhlbihcbiAgICAgICAgKG1vZHVsZSkgPT4gbW9kdWxlLmdyZWVucGFuT3JnSW5mb1xuICAgICAgKTtcbiAgICBjYXNlIE9yZ1Nob3J0TmFtZS5Hcm9vdmVMaWZlOlxuICAgICAgcmV0dXJuIGltcG9ydChcInNyYy9tZXJjaGFudHMvZ3Jvb3ZlTGlmZS9ncm9vdmVMaWZlXCIpLnRoZW4oXG4gICAgICAgIChtb2R1bGUpID0+IG1vZHVsZS5ncm9vdmVMaWZlT3JnSW5mb1xuICAgICAgKTtcbiAgICBjYXNlIE9yZ1Nob3J0TmFtZS5KYWNrQXJjaGVyOlxuICAgICAgcmV0dXJuIGltcG9ydChcInNyYy9tZXJjaGFudHMvamFja0FyY2hlci9qYWNrQXJjaGVyXCIpLnRoZW4oXG4gICAgICAgIChtb2R1bGUpID0+IG1vZHVsZS5qYWNrQXJjaGVyT3JnSW5mb1xuICAgICAgKTtcbiAgICBjYXNlIE9yZ1Nob3J0TmFtZS5Kb3JkYW5DcmFpZzpcbiAgICAgIHJldHVybiBpbXBvcnQoXCJzcmMvbWVyY2hhbnRzL2pvcmRhbkNyYWlnL2pvcmRhbkNyYWlnXCIpLnRoZW4oXG4gICAgICAgIChtb2R1bGUpID0+IG1vZHVsZS5qb3JkYW5DcmFpZ09yZ0luZm9cbiAgICAgICk7XG4gICAgY2FzZSBPcmdTaG9ydE5hbWUuS3V0RnJvbVRoZUtsb3RoOlxuICAgICAgcmV0dXJuIGltcG9ydChcInNyYy9tZXJjaGFudHMva3V0RnJvbVRoZUtsb3RoL2t1dEZyb21UaGVLbG90aFwiKS50aGVuKFxuICAgICAgICAobW9kdWxlKSA9PiBtb2R1bGUua3V0RnJvbVRoZUtsb3RoT3JnSW5mb1xuICAgICAgKTtcbiAgICBjYXNlIE9yZ1Nob3J0TmFtZS5MYXJyeUFuZFNlcmdlczpcbiAgICAgIHJldHVybiBpbXBvcnQoXCJzcmMvbWVyY2hhbnRzL2xhcnJ5QW5kU2VyZ2VzL2xhcnJ5QW5kU2VyZ2VzXCIpLnRoZW4oXG4gICAgICAgIChtb2R1bGUpID0+IG1vZHVsZS5sYXJyeUFuZFNlcmdlc09yZ0luZm9cbiAgICAgICk7XG4gICAgY2FzZSBPcmdTaG9ydE5hbWUuTGVhcHNBbmRSZWJvdW5kczpcbiAgICAgIHJldHVybiBpbXBvcnQoXCJzcmMvbWVyY2hhbnRzL2xlYXBzQW5kUmVib3VuZHMvbGVhcHNBbmRSZWJvdW5kc1wiKS50aGVuKFxuICAgICAgICAobW9kdWxlKSA9PiBtb2R1bGUubGVhcHNBbmRSZWJvdW5kc09yZ0luZm9cbiAgICAgICk7XG4gICAgY2FzZSBPcmdTaG9ydE5hbWUuTWFudHJhQnJhbmQ6XG4gICAgICByZXR1cm4gaW1wb3J0KFwic3JjL21lcmNoYW50cy9tYW50cmFCcmFuZC9tYW50cmFCcmFuZFwiKS50aGVuKFxuICAgICAgICAobW9kdWxlKSA9PiBtb2R1bGUubWFudHJhQnJhbmRPcmdJbmZvXG4gICAgICApO1xuXG4gICAgLy8gLS0tLSBTUEFOWCAtLS0tXG4gICAgY2FzZSBPcmdTaG9ydE5hbWUuU3Bhbng6XG4gICAgICByZXR1cm4gaW1wb3J0KFwic3JjL21lcmNoYW50cy9zcGFueC9zcGFueFwiKS50aGVuKFxuICAgICAgICAobW9kdWxlKSA9PiBtb2R1bGUuc3BhbnhPcmdJbmZvXG4gICAgICApO1xuICAgIC8vIFNwYW54IHN0YWdpbmcgKGhlYWRsZXNzIHNob3BpZnkpXG4gICAgY2FzZSBPcmdTaG9ydE5hbWUuU3BhbnhTdGFnaW5nOlxuICAgICAgcmV0dXJuIGltcG9ydChcInNyYy9tZXJjaGFudHMvc3Bhbngvc3BhbnhTdGFnaW5nXCIpLnRoZW4oXG4gICAgICAgIChtb2R1bGUpID0+IG1vZHVsZS5zcGFueE9yZ0luZm9cbiAgICAgICk7XG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tXG5cbiAgICBjYXNlIE9yZ1Nob3J0TmFtZS5TdXBlcmdvb3A6XG4gICAgICByZXR1cm4gaW1wb3J0KFwic3JjL21lcmNoYW50cy9zdXBlcmdvb3Avc3VwZXJnb29wXCIpLnRoZW4oXG4gICAgICAgIChtb2R1bGUpID0+IG1vZHVsZS5zdXBlcmdvb3BPcmdJbmZvXG4gICAgICApO1xuICAgIGNhc2UgT3JnU2hvcnROYW1lLlVuaXF1ZVZpbnRhZ2U6XG4gICAgICByZXR1cm4gaW1wb3J0KFwic3JjL21lcmNoYW50cy91bmlxdWVWaW50YWdlL3VuaXF1ZVZpbnRhZ2VcIikudGhlbihcbiAgICAgICAgKG1vZHVsZSkgPT4gbW9kdWxlLnVuaXF1ZVZpbnRhZ2VPcmdJbmZvXG4gICAgICApO1xuICAgIGNhc2UgT3JnU2hvcnROYW1lLldlc3RvbkpvbkJvdWNoZXI6XG4gICAgICByZXR1cm4gaW1wb3J0KFwic3JjL21lcmNoYW50cy93ZXN0b25Kb25Cb3VjaGVyL3dlc3RvbkpvbkJvdWNoZXJcIikudGhlbihcbiAgICAgICAgKG1vZHVsZSkgPT4gbW9kdWxlLndlc3RvbkpvbkJvdWNoZXJPcmdJbmZvXG4gICAgICApO1xuICAgIGNhc2UgT3JnU2hvcnROYW1lLldvbGZNYXR0cmVzczpcbiAgICAgIHJldHVybiBpbXBvcnQoXCJzcmMvbWVyY2hhbnRzL3dvbGZNYXR0cmVzcy93b2xmTWF0dHJlc3NcIikudGhlbihcbiAgICAgICAgKG1vZHVsZSkgPT4gbW9kdWxlLndvbGZNYXR0cmVzc09yZ0luZm9cbiAgICAgICk7XG4gICAgY2FzZSBPcmdTaG9ydE5hbWUuV29sZlRhY3RpY2FsOlxuICAgICAgcmV0dXJuIGltcG9ydChcInNyYy9tZXJjaGFudHMvd29sZlRhY3RpY2FsL3dvbGZUYWN0aWNhbFwiKS50aGVuKFxuICAgICAgICAobW9kdWxlKSA9PiBtb2R1bGUud29sZlRhY3RpY2FsT3JnSW5mb1xuICAgICAgKTtcbiAgICAvKiAtLSBCZWxvdyBpdGVtcyBhcmUgZ2VuZXJhdGVkIGJ5IHBsb3AgLS0gKi9cbiAgICBjYXNlIE9yZ1Nob3J0TmFtZS5Ta2luUGVyZmVjdGlvbjpcbiAgICAgIHJldHVybiBpbXBvcnQoXCJzcmMvbWVyY2hhbnRzL3NraW5QZXJmZWN0aW9uL3NraW5QZXJmZWN0aW9uXCIpLnRoZW4oXG4gICAgICAgIChtb2R1bGUpID0+IG1vZHVsZS5za2luUGVyZmVjdGlvbk9yZ0luZm9cbiAgICAgICk7XG4gICAgY2FzZSBPcmdTaG9ydE5hbWUuTG9va09wdGljOlxuICAgICAgcmV0dXJuIGltcG9ydChcInNyYy9tZXJjaGFudHMvbG9va09wdGljL2xvb2tPcHRpY1wiKS50aGVuKFxuICAgICAgICAobW9kdWxlKSA9PiBtb2R1bGUubG9va09wdGljT3JnSW5mb1xuICAgICAgKTtcbiAgICBjYXNlIE9yZ1Nob3J0TmFtZS5GaXZlQ2JkOlxuICAgICAgcmV0dXJuIGltcG9ydChcInNyYy9tZXJjaGFudHMvZml2ZUNiZC9maXZlQ2JkXCIpLnRoZW4oXG4gICAgICAgIChtb2R1bGUpID0+IG1vZHVsZS5maXZlQ2JkT3JnSW5mb1xuICAgICAgKTtcbiAgICBjYXNlIE9yZ1Nob3J0TmFtZS5TbmFwU3VwcGxlbWVudHM6XG4gICAgICByZXR1cm4gaW1wb3J0KFwic3JjL21lcmNoYW50cy9zbmFwU3VwcGxlbWVudHMvc25hcFN1cHBsZW1lbnRzXCIpLnRoZW4oXG4gICAgICAgIChtb2R1bGUpID0+IG1vZHVsZS5zbmFwU3VwcGxlbWVudHNPcmdJbmZvXG4gICAgICApO1xuICAgIGNhc2UgT3JnU2hvcnROYW1lLkxvbmdldml0eXJ4OlxuICAgICAgcmV0dXJuIGltcG9ydChcInNyYy9tZXJjaGFudHMvbG9uZ2V2aXR5cngvbG9uZ2V2aXR5cnhcIikudGhlbihcbiAgICAgICAgKG1vZHVsZSkgPT4gbW9kdWxlLmxvbmdldml0eXJ4T3JnSW5mb1xuICAgICAgKTtcbiAgICBjYXNlIE9yZ1Nob3J0TmFtZS5WZW5hQ2JkOlxuICAgICAgcmV0dXJuIGltcG9ydChcInNyYy9tZXJjaGFudHMvdmVuYUNiZC92ZW5hQ2JkXCIpLnRoZW4oXG4gICAgICAgIChtb2R1bGUpID0+IG1vZHVsZS52ZW5hQ2JkT3JnSW5mb1xuICAgICAgKTtcbiAgICBjYXNlIE9yZ1Nob3J0TmFtZS5NZWR0ZXJyYTpcbiAgICAgIHJldHVybiBpbXBvcnQoXCJzcmMvbWVyY2hhbnRzL21lZHRlcnJhL21lZHRlcnJhXCIpLnRoZW4oXG4gICAgICAgIChtb2R1bGUpID0+IG1vZHVsZS5tZWR0ZXJyYU9yZ0luZm9cbiAgICAgICk7XG5cbiAgICBjYXNlIE9yZ1Nob3J0TmFtZS5Nb2RlbGxzOlxuICAgICAgcmV0dXJuIGltcG9ydChcInNyYy9tZXJjaGFudHMvbW9kZWxscy9tb2RlbGxzXCIpLnRoZW4oXG4gICAgICAgIChtb2R1bGUpID0+IG1vZHVsZS5tb2RlbGxzT3JnSW5mb1xuICAgICAgKTtcbiAgICBjYXNlIE9yZ1Nob3J0TmFtZS5QcmVzc2VkRmxvcmFsOlxuICAgICAgcmV0dXJuIGltcG9ydChcInNyYy9tZXJjaGFudHMvcHJlc3NlZEZsb3JhbC9wcmVzc2VkRmxvcmFsXCIpLnRoZW4oXG4gICAgICAgIChtb2R1bGUpID0+IG1vZHVsZS5wcmVzc2VkRmxvcmFsT3JnSW5mb1xuICAgICAgKTtcbiAgICBjYXNlIE9yZ1Nob3J0TmFtZS5LaW5kcmVkQnJhdmVseTpcbiAgICAgIHJldHVybiBpbXBvcnQoXCJzcmMvbWVyY2hhbnRzL2tpbmRyZWRCcmF2ZWx5L2tpbmRyZWRCcmF2ZWx5XCIpLnRoZW4oXG4gICAgICAgIChtb2R1bGUpID0+IG1vZHVsZS5raW5kcmVkQnJhdmVseU9yZ0luZm9cbiAgICAgICk7XG4gICAgY2FzZSBPcmdTaG9ydE5hbWUuV2luZUVudGh1c2lhc3Q6XG4gICAgICByZXR1cm4gaW1wb3J0KFwic3JjL21lcmNoYW50cy93aW5lRW50aHVzaWFzdC93aW5lRW50aHVzaWFzdFwiKS50aGVuKFxuICAgICAgICAobW9kdWxlKSA9PiBtb2R1bGUud2luZUVudGh1c2lhc3RPcmdJbmZvXG4gICAgICApO1xuICAgIGNhc2UgT3JnU2hvcnROYW1lLkhvbWVncm93bkNhbm5hYmlzOlxuICAgICAgcmV0dXJuIGltcG9ydChcInNyYy9tZXJjaGFudHMvaG9tZWdyb3duQ2FubmFiaXMvaG9tZWdyb3duQ2FubmFiaXNcIikudGhlbihcbiAgICAgICAgKG1vZHVsZSkgPT4gbW9kdWxlLmhvbWVncm93bkNhbm5hYmlzT3JnSW5mb1xuICAgICAgKTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIGltcG9ydChcInNyYy9tZXJjaGFudHMvZGVmYXVsdFwiKS50aGVuKFxuICAgICAgICAobW9kdWxlKSA9PiBtb2R1bGUuZGVmYXVsdE9yZ0luZm9cbiAgICAgICk7XG4gIH1cbn07XG4iLCJpbXBvcnQgeyBDaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvbiB9IGZyb20gXCJzcmMvYXBwbGljYXRpb24vbW9kZWxzL2NoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uXCI7XG5pbXBvcnQge1xuICBDb2xvck1hcHBpbmcsXG4gIENvbG9yTmFtZXMsXG4gIGNvbG9yVmFyLFxufSBmcm9tIFwic3JjL2FwcGxpY2F0aW9uL21vZGVscy9jb2xvcnNDb25maWdcIjtcbmltcG9ydCB7IEZlYXR1cmVHYXRlcyB9IGZyb20gXCJzcmMvYXBwbGljYXRpb24vbW9kZWxzL2ZlYXR1cmVHYXRlc1wiO1xuaW1wb3J0IHtcbiAgQ3VzdG9tZXJTZXJ2aWNlSW50ZWdyYXRpb25Nb2RlLFxuICBDdXN0b21lclNlcnZpY2VUeXBlLFxufSBmcm9tIFwic3JjL2FwcGxpY2F0aW9uL3NlcnZpY2UvY3VzdG9tZXJTZXJ2aWNlL3R5cGVzXCI7XG5pbXBvcnQgeyBHcmlkSW5zZXJ0aW9uVHlwZSB9IGZyb20gXCJzcmMvYXBwbGljYXRpb24vc2VydmljZS9kb21NdXRhdGlvbnMvR3JpZEluc2VydGlvblNlcnZpY2VcIjtcbmltcG9ydCB7IERPTUluc2VydGlvblR5cGUgfSBmcm9tIFwic3JjL2FwcGxpY2F0aW9uL3NlcnZpY2UvZG9tTXV0YXRpb25zL2RvbUluc2VydGlvblNlcnZpY2VcIjtcblxuaW1wb3J0IHR5cGUge1xuICBQYWdlVmlzaXRDYXRlZ29yeSxcbiAgU3VwcG9ydGVkRXZlbnRQcm9kdWN0Q2F0ZWdvcnksXG59IGZyb20gXCJAc3BpZmZ5LWFpL2NvbW1lcmNlLWFwaS1jbGllbnRcIjtcbmltcG9ydCB7IENoYXRTdGF0ZSB9IGZyb20gXCJzcmMvdHlwZXMvY3VzdHNlcnZpY2UtdHlwZXNcIjtcbmltcG9ydCB7IFN1Z2dlc3Rpb25CYXJMb2NhdGlvbkZvck1ldHJpY3MgfSBmcm9tIFwic3JjL3R5cGVzL3N1Z2dlc3Rpb25CYXJWMi10eXBlc1wiO1xuaW1wb3J0IHsgVGVzdFByb3BzIH0gZnJvbSBcInNyYy90eXBlcy90ZXN0LXR5cGVzXCI7XG5cbnR5cGUgU2hvd0Zsb2F0aW5nQnV0dG9uT3B0aW9ucyA9XG4gIHwgXCJhbHdheXNcIlxuICB8IFwiYWZ0ZXItaW50ZXJhY3Rpb24tb24tbW9iaWxlLWFsd2F5cy1kZXNrdG9wXCJcbiAgfCBcImFmdGVyLWludGVyYWN0aW9uLWFueXdoZXJlXCJcbiAgfCBcIm5ldmVyXCI7XG5cbnR5cGUgRmxvYXRpbmdFbnRyeVBvaW50Q29uZmlnID0ge1xuICBwb3NpdGlvbjogXCJib3R0b20tbGVmdFwiIHwgXCJtaWRkbGUtbGVmdFwiIHwgXCJtaWRkbGUtcmlnaHRcIiB8IFwiYm90dG9tLXJpZ2h0XCI7XG4gIGV4cGFuc2lvblRleHQ/OiB7XG4gICAgcGRwOiBzdHJpbmc7XG4gICAgcGxwOiBzdHJpbmc7XG4gIH07XG4gIG1pbmltaXplZENvbG9yOiBzdHJpbmc7XG4gIGV4cGFuZGVkQ29sb3I6IHN0cmluZztcbiAgdGV4dENvbG9yPzogc3RyaW5nO1xuICBzaG93T3B0aW9uOiBTaG93RmxvYXRpbmdCdXR0b25PcHRpb25zO1xuICBpY29uU1ZHU3JjPzogc3RyaW5nO1xuICBpY29uU2l6ZT86IG51bWJlcjtcbiAgaWNvblN0cm9rZUNvbG9yPzogc3RyaW5nO1xuICBpY29uRmlsbENvbG9yPzogc3RyaW5nO1xuICBoZWlnaHQ/OiBudW1iZXI7XG4gIGZvbnRTaXplPzogbnVtYmVyO1xufTtcblxudHlwZSBXZWxjb21lU2VjdGlvblZhcmlhbnQgPSBcInN0YW5kYXJkXCIgfCBcIm91dGxpbmVkXCI7XG5cbnR5cGUgV2VsY29tZVNlY3Rpb25Db2xvclZhcmlhbnQgPSBcInN0YW5kYXJkXCIgfCBcImFjY2VudFwiIHwgXCJicmFuZFwiIHwgXCJsaWdodFwiO1xuXG50eXBlIFdlbGNvbWVTZWN0aW9uQ29uZmlnID0ge1xuICB2YXJpYW50OiBXZWxjb21lU2VjdGlvblZhcmlhbnQ7XG4gIGNvbG9yVmFyaWFudD86IFdlbGNvbWVTZWN0aW9uQ29sb3JWYXJpYW50O1xuICB0aXRsZT86IHN0cmluZztcbiAgc3VidGl0bGU/OiBzdHJpbmc7XG4gIC8vIGljb24/OiBSZWFjdC5GdW5jdGlvbkNvbXBvbmVudDxSZWFjdC5TVkdQcm9wczxTVkdTVkdFbGVtZW50Pj47XG4gIC8qIFNlcmlhbGl6YWJsZSBpY29uIG5hbWUgdGhhdCBtYXBzIHRvIGEgUmVhY3QgY29tcG9uZW50LiBQcmVmZXJyZWQgb3ZlciBpY29uIGZvciBkYXRhYmFzZSBzdG9yYWdlLiAqL1xuICBpY29uTmFtZT86IHN0cmluZztcbiAgaW1hZ2VTcmM/OiBzdHJpbmc7XG59O1xuXG50eXBlIENoYXRQcmV2aWV3Q29uZmlnID0ge1xuICB2YXJpYW50OiBcImZsYXRcIiB8IFwiZmlsbGVkXCIgfCBcIm91dGxpbmVkXCI7XG4gIGxhcmdlUHJvZHVjdENvbXBhcmlzb24/OiBib29sZWFuO1xuICBmaWxsZWRCYWNrZ3JvdW5kQ29sb3I6IHN0cmluZztcbiAgaWNvbkZpbGxDb2xvcjogc3RyaW5nO1xuICBidXR0b25UZXh0Q29sb3I/OiBzdHJpbmc7XG4gIGJ1dHRvblRleHRTZWNvbmRhcnlDb2xvcj86IHN0cmluZztcbiAgYnV0dG9uVGV4dEhvdmVyQ29sb3I/OiBzdHJpbmc7XG4gIGJ1dHRvbkJhY2tncm91bmRDb2xvcjogc3RyaW5nO1xuICBidXR0b25CYWNrZ3JvdW5kSG92ZXJDb2xvcjogc3RyaW5nO1xuICBidXR0b25Cb3JkZXJDb2xvcj86IHN0cmluZztcbiAgYnV0dG9uQm9yZGVySG92ZXJDb2xvcj86IHN0cmluZztcbiAgY29waWVzOiB7IHBkcDogc3RyaW5nW107IHBscDogc3RyaW5nW10gfTtcbiAgc3RhdGljU3VnZ2VzdGlvbkNvcGllcz86IHsgcGRwOiBzdHJpbmdbXTsgcGxwOiBzdHJpbmdbXSB9O1xuICBzdGF0aWNQTFBJbWFnZXM/OiBzdHJpbmdbXTtcbiAgZm9vdGVyQ29uZmlnPzogQ2hhdFByZXZpZXdGb290ZXJDb25maWc7XG4gIGhlYWRlckNvbmZpZz86IENoYXRQcmV2aWV3SGVhZGVyQ29uZmlnO1xuICB0b3BNYXJnaW4/OiBudW1iZXI7XG59O1xuXG50eXBlIENoYXRQcmV2aWV3SGVhZGVyQ29uZmlnID0ge1xuICB0aXRsZT86IHN0cmluZztcbiAgaW1hZ2VTcmM/OiBzdHJpbmc7XG4gIGltYWdlSGVpZ2h0PzogbnVtYmVyO1xuICBzcGFya2xlc0NvbG9yPzogc3RyaW5nOyAvLyB1c2VkIGJ5OiBzcGFueCwgdW5pcXVlVmludGFnZSwgZHJlYW1sYW5kQmFieVxuICBmb250U2l6ZT86IHN0cmluZztcbiAgaWNvbldpZHRoPzogc3RyaW5nO1xuICBpY29uSGVpZ2h0Pzogc3RyaW5nO1xufTtcblxuaW50ZXJmYWNlIENoYXRQcmV2aWV3Rm9vdGVyQ29uZmlnIHtcbiAgaGFzRmFkZT86IGJvb2xlYW47IC8vIHVzZWQgYnk6IHNwYW54LCB1bmlxdWVWaW50YWdlXG4gIHN1Z2dlc3Rpb25CdXR0b25WYXJpYW50PzogXCJkYXJrXCIgfCBcImxpZ2h0XCIgfCBcIm91dGxpbmVkXCI7XG4gIHN1Z2dlc3Rpb25zQmFja2dyb3VuZD86IHN0cmluZzsgLy8gdXNlZCBieTogY2FyYmFoblxuICByZXBseUJ1dHRvbkljb24/OlxuICAgIHwgXCJzZW5kXCJcbiAgICB8IFwibWFnbmlmeWluZ0dsYXNzXCJcbiAgICB8IFwidGhpbk1hZ25pZnlpbmdHbGFzc1wiXG4gICAgfCBcInNlYXJjaEljb25cIjtcbiAgcmVwbHlCdXR0b25UZXh0Pzogc3RyaW5nO1xuICByZXBseUlucHV0SGFzU2hhZG93PzogYm9vbGVhbjsgLy8gdXNlZCBieTogc3BhbnhcbiAgcmVwbHlJbnB1dEhhc0JvcmRlcj86IGJvb2xlYW47IC8vIHVzZWQgYnk6IHNwYW54XG4gIGJhY2tncm91bmRDb2xvcj86IHN0cmluZzsgLy8gdXNlZCBieSBzcGFueCwgdHVzaGJhYnksIHdpbGwgbmVlZCBjdXN0b20gQ1NTIHdoZW4gc3dpdGNoaW5nIG92ZXJcbn1cblxudHlwZSBQcm9kdWN0UmV2aWV3U3R5bGVWYXJpYW50ID0gXCJzdGFuZGFyZFwiIHwgXCJib3JkZXJlZFwiO1xuXG50eXBlIFByb2R1Y3RSZXZpZXdDb2xvclZhcmlhbnQgPSBcIm5ldXRyYWxcIiB8IFwiYnJhbmRcIiB8IFwicHJlbWl1bVwiO1xuXG5pbnRlcmZhY2UgUHJvZHVjdFJldmlld0NvbmZpZyB7XG4gIHN0eWxlVmFyaWFudDogUHJvZHVjdFJldmlld1N0eWxlVmFyaWFudDtcbiAgY29sb3JWYXJpYW50OiBQcm9kdWN0UmV2aWV3Q29sb3JWYXJpYW50O1xuICB2ZXJpZmllZEJ1eWVyVGl0bGU6IHN0cmluZztcbiAgaW5jZW50aXZpemVkUmV2aWV3RmxhZz86IGJvb2xlYW47XG59XG5cbnR5cGUgUGFnZUNhcmRWYXJpYW50ID0gXCJmaWxsZWRcIiB8IFwib3V0bGluZWRcIiB8IFwibWluaW1hbFwiO1xuXG50eXBlIFBhZ2VDYXJkSG92ZXJWYXJpYW50ID0gXCJub25lXCIgfCBcInNoYWRvd1wiIHwgXCJsaWZ0XCI7XG5cbnR5cGUgUGFnZUNhcmRJY29uVmFyaWFudCA9IFwicHJpbWFyeVwiIHwgXCJhY2NlbnRcIiB8IFwiYmFja2dyb3VuZFwiIHwgXCJub25lXCI7XG5cbnR5cGUgUGFnZUNhcmRDb25maWcgPSB7XG4gIHZhcmlhbnQ6IFBhZ2VDYXJkVmFyaWFudDtcbiAgaG92ZXJWYXJpYW50OiBQYWdlQ2FyZEhvdmVyVmFyaWFudDtcbiAgaWNvblZhcmlhbnQ6IFBhZ2VDYXJkSWNvblZhcmlhbnQ7XG59O1xuXG50eXBlIFByb2R1Y3RDYXJkVmFyaWFudCA9XG4gIHwgXCJmaWxsZWRcIlxuICB8IFwiYm9yZGVyZWRcIlxuICB8IFwibWluaW1hbFwiXG4gIHwgXCJ0cmFuc3BhcmVudEJvcmRlcmVkXCI7XG5cbnR5cGUgUHJvZHVjdENhcmRIb3ZlclZhcmlhbnQgPSBcImJhY2tncm91bmREYXJrXCIgfCBcIm5vbmVcIjtcblxudHlwZSBQcm9kdWN0Q2FyZExheW91dFZhcmlhbnQgPSBcIm5vcm1hbFwiIHwgXCJ0YWxsXCIgfCBcInNxdWFyZVwiO1xuXG5pbnRlcmZhY2UgUHJvZHVjdENhcmRDb25maWcge1xuICB2YXJpYW50OiBQcm9kdWN0Q2FyZFZhcmlhbnQ7XG4gIGhvdmVyVmFyaWFudDogUHJvZHVjdENhcmRIb3ZlclZhcmlhbnQ7XG4gIGxheW91dFZhcmlhbnQ6IFByb2R1Y3RDYXJkTGF5b3V0VmFyaWFudDtcbiAgcHJpY2VQcmVmaXg/OiBzdHJpbmc7XG59XG5cbnR5cGUgQ1NTd2l0Y2hDb25maWcgPSB7XG4gIHZhcmlhbnQ6IFwiYXR0YWNoZWRcIiB8IFwiZGV0YWNoZWRcIjtcbiAgYmFja2dyb3VuZENvbG9yOiBzdHJpbmc7XG4gIGJvcmRlckNvbG9yOiBzdHJpbmc7XG4gIHNlbGVjdGVkVGV4dENvbG9yOiBzdHJpbmc7XG4gIHNlbGVjdGVkQmFja2dyb3VuZENvbG9yPzogc3RyaW5nO1xuICB1bnNlbGVjdGVkVGV4dENvbG9yOiBzdHJpbmc7XG4gIHVuc2VsZWN0ZWRCYWNrZ3JvdW5kQ29sb3I/OiBzdHJpbmc7XG4gIHN1cHBvcnRUaXRsZT86IHN0cmluZztcbiAgc3BpZmZ5VGl0bGU/OiBzdHJpbmc7XG4gIHNwaWZmeVRpdGxlSGFzTG9nbz86IGJvb2xlYW47XG59O1xuXG50eXBlIENoYXRIZWFkZXJDb25maWcgPSB7XG4gIGNvbGxhcHNlZENvbG9yOiBzdHJpbmc7XG4gIGV4cGFuZGVkQ29sb3I6IHN0cmluZztcbiAgY2hldnJvbkNvbG9yOiBzdHJpbmc7XG4gIGltYWdlU3JjPzogc3RyaW5nO1xuICBpY29uPzogUmVhY3QuRnVuY3Rpb25Db21wb25lbnQ8UmVhY3QuU1ZHUHJvcHM8U1ZHU1ZHRWxlbWVudD4+O1xuICBjbG9zZUljb24/OiBSZWFjdC5GdW5jdGlvbkNvbXBvbmVudDxSZWFjdC5TVkdQcm9wczxTVkdTVkdFbGVtZW50Pj47XG4gIGJvcmRlckJvdHRvbT86IHN0cmluZztcbiAgaGVhZGVyQmFySGVpZ2h0UGFydGlhbFZpZXc6IG51bWJlcjtcbiAgaGVhZGVyQmFySGVpZ2h0RnVsbFZpZXc6IG51bWJlcjtcbiAgY3VzdG9tZXJTdXBwb3J0U3dpdGNoQ29uZmlnPzogQ1NTd2l0Y2hDb25maWc7XG59O1xuXG50eXBlIFNpbXBsZUN1c3RvbWVyU2VydmljZUludGVncmF0aW9uID0ge1xuICBpbnRlZ3JhdGlvbk1vZGU6IEN1c3RvbWVyU2VydmljZUludGVncmF0aW9uTW9kZTtcbiAgcHJvdmlkZXI6IEN1c3RvbWVyU2VydmljZVR5cGU7XG4gIHVzZVVuaWZpZWRCdXR0b24/OiBib29sZWFuO1xufTtcblxudHlwZSBGdWxsQ3VzdG9tZXJTZXJ2aWNlSW50ZWdyYXRpb24gPSB7XG4gIGludGVncmF0aW9uTW9kZTogQ3VzdG9tZXJTZXJ2aWNlSW50ZWdyYXRpb25Nb2RlO1xuICBwcm92aWRlcjogQ3VzdG9tZXJTZXJ2aWNlVHlwZTtcbiAgdXNlVW5pZmllZEJ1dHRvbj86IGJvb2xlYW47XG4gIGNoYXRFbmFibGVkRHVyaW5nQnVzaW5lc3NIb3Vycz86IGJvb2xlYW47XG4gIHNob3dOYW1lSW5wdXQ/OiBib29sZWFuO1xuICBmb3JtQWlOYW1lPzogc3RyaW5nO1xuICB3ZWxjb21lVGl0bGU6IHN0cmluZztcbiAgd2VsY29tZURlc2NyaXB0aW9uOiBzdHJpbmc7XG4gIHNob3dXZWxjb21lT25Gb3JtPzogYm9vbGVhbjtcbiAgY29udGFjdFN1YmplY3RPcHRpb25zPzogc3RyaW5nW107XG4gIGdldEN1c3RvbVdhaXRpbmdNZXNzYWdlPzogKG5hbWU/OiBzdHJpbmcpID0+IHN0cmluZztcbiAgd2l0aGluQnVzaW5lc3NIb3Vyc01lc3NhZ2U/OiBzdHJpbmc7XG4gIHdpdGhpbkJ1c2luZXNzSG91cnNXYWl0aW5nTWVzc2FnZT86IHN0cmluZztcbiAgb3V0c2lkZUJ1c2luZXNzSG91cnNNZXNzYWdlPzogc3RyaW5nO1xuICBvdXRzaWRlQnVzaW5lc3NIb3Vyc1dhaXRpbmdNZXNzYWdlPzogc3RyaW5nO1xuICB3aXRoaW5CdXNpbmVzc0hvdXJzRm9ybU1lc3NhZ2U/OiBzdHJpbmc7XG4gIG91dHNpZGVCdXNpbmVzc0hvdXJzRm9ybU1lc3NhZ2U/OiBzdHJpbmc7XG4gIHN1Z2dlc3RlZEFJUXVlc3Rpb25zPzogc3RyaW5nW107XG4gIGJ1c2luZXNzSG91cnNQb2xsaW5nPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBUaGlzIGlzIGhhbmRsZWQgYnkgdGhlIEJFLlxuICAgKi9cbiAgYnVzaW5lc3NIb3Vyc1N0YXJ0VVRDPzogc3RyaW5nO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVGhpcyBpcyBoYW5kbGVkIGJ5IHRoZSBCRS5cbiAgICovXG4gIGJ1c2luZXNzSG91cnNFbmRVVEM/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBUaGlzIGlzIGhhbmRsZWQgYnkgdGhlIEJFLlxuICAgKi9cbiAgYnVzaW5lc3NIb3Vyc1RpbWV6b25lPzogc3RyaW5nO1xuXG4gIHNob3dBSVN1Z2dlc3Rpb25zV2l0aGluQnVzaW5lc3NIb3Vycz86IGJvb2xlYW47XG4gIHdhaXRpbmdNZXNzYWdlUG9zaXRpb24/OiBcIkJFRk9SRV9NRVNTQUdFU1wiIHwgXCJBRlRFUl9NRVNTQUdFU1wiO1xuICBsZWdhbE1lc3NhZ2U/OiBzdHJpbmc7XG4gIHdpdGhpbkJ1c2luZXNzSG91cnNJbml0aWFsU3RhdGU/OiBDaGF0U3RhdGU7XG4gIG91dHNpZGVCdXNpbmVzc0hvdXJzSW5pdGlhbFN0YXRlPzogQ2hhdFN0YXRlO1xuICB3aXRoaW5CdXNpbmVzc0hvdXJzQnV0dG9udGV4dD86IHN0cmluZztcbiAgb3V0c2lkZUJ1c2luZXNzSG91cnNCdXR0b250ZXh0Pzogc3RyaW5nO1xuICByZW9wZW5DaGF0TWVzc2FnZTogc3RyaW5nO1xufTtcblxudHlwZSBDdXN0b21lclNlcnZpY2VJbnRlZ3JhdGlvbiA9XG4gIHwgU2ltcGxlQ3VzdG9tZXJTZXJ2aWNlSW50ZWdyYXRpb25cbiAgfCBGdWxsQ3VzdG9tZXJTZXJ2aWNlSW50ZWdyYXRpb247XG5cbnR5cGUgQ29udmVyc2F0aW9uYWxTZWFjaCA9IHtcbiAgZW5hYmxlZD86IGJvb2xlYW47XG4gIHJlcGx5SW5wdXQ/OiBSZXBseUlucHV0Q29uZmlnO1xuICBzdWdnZXN0aW9ucz86IHN0cmluZ1tdO1xuICBlbnRyeXBvaW50QmdDb2xvcj86IHN0cmluZztcbiAgZW50cnlwb2ludFRleHRDb2xvcj86IHN0cmluZztcbiAgZW50cnlwb2ludEJ0bkNvbG9yPzogc3RyaW5nO1xuICBlbnRyeXBvaW50QnRuVGV4dENvbG9yPzogc3RyaW5nO1xuICBlbnRyeXBvaW50QnRuQm9yZGVyQ29sb3I/OiBzdHJpbmc7XG4gIGVudHJ5cG9pbnRDb250YWluZXI/OiBzdHJpbmc7XG4gIGVudHJ5cG9pbnRUcmlnZ2VyPzogc3RyaW5nO1xuICBwcm9kdWN0R3JpZENvbnRhaW5lcj86IHN0cmluZztcbiAgZ2VuZXJhbFNlYXJjaEJ0bj86IHN0cmluZztcbiAgcGFnZUNvbnRlbnQ/OiBzdHJpbmc7XG4gIHNlYXJjaENvbnRlbnQ/OiBzdHJpbmc7XG4gIHNvcnRpbmdUaXRsZT86IHN0cmluZztcbiAgc2VsZWN0aW9uVGl0bGU/OiBzdHJpbmc7XG4gIHNvcnRpbmdGb250Pzogc3RyaW5nO1xuICBvcHRpb25zRm9udD86IHN0cmluZztcbiAgc29ydGluZ0J1dHRvblRleHQ/OiBzdHJpbmc7XG59O1xuXG50eXBlIENoYXRNZXNzYWdlVmFyaWFudCA9IFwic3RhbmRhcmRcIiB8IFwicHJlbWl1bVwiIHwgXCJhY2NlbnRcIjtcblxuaW50ZXJmYWNlIENoYXRNZXNzYWdlQ29uZmlnIHtcbiAgYXNzaXN0YW50Q2hhdFRpdGxlOiBzdHJpbmc7XG4gIHZhcmlhbnQ6IENoYXRNZXNzYWdlVmFyaWFudDtcbiAgcHJvZHVjdExpbms6IHtcbiAgICB2YXJpYW50OiBQcm9kdWN0TGlua1ZhcmlhbnQ7XG4gICAgaG92ZXJWYXJpYW50OiBQcm9kdWN0TGlua0hvdmVyVmFyaWFudDtcbiAgICBpY29uVmFyaWFudDogUHJvZHVjdExpbmtJY29uVmFyaWFudDtcbiAgfTtcbn1cblxuaW50ZXJmYWNlIFJlcGx5SW5wdXRDb25maWcge1xuICAvLyBUT0RPIGNvbnNpZGVyIG1ha2luZyB0aGlzIGEgbnVtYmVyXG4gIHNpemU/OiBcIm1kXCIgfCBcImxnXCI7XG4gIHNlbmRJY29uOiBcImFycm93VXBcIiB8IFwic2VuZFwiIHwgXCJzZWFyY2hcIjtcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBQYXJ0aWFsVmlld0NvbmZpZyB7XG4gIC8vIG1heGltdW0gaGVpZ2h0IG9mIHRoZSBwYXJ0aWFsIHZpZXcgYXMgYSBwZXJjZW50YWdlIG9mIHRoZSBzY3JlZW4gaGVpZ2h0XG4gIG1heEhlaWdodDogbnVtYmVyO1xuICBib3JkZXJSYWRpdXM/OiBzdHJpbmc7XG59XG5cbnR5cGUgUHJvZHVjdExpbmtJY29uVmFyaWFudCA9XG4gIHwgXCJhY2NlbnRQcmltYXJ5XCJcbiAgfCBcImJhY2tncm91bmRQcmltYXJ5XCJcbiAgfCBcImJhY2tncm91bmRQcmltYXJ5RGFya1wiXG4gIHwgXCJib3JkZXJMaWdodFwiXG4gIHwgXCJiYWNrZ3JvdW5kU2F0dXJhdGVkXCI7XG5cbnR5cGUgUHJvZHVjdExpbmtWYXJpYW50ID0gXCJ0ZXh0TGlua1wiO1xuXG50eXBlIFByb2R1Y3RMaW5rSG92ZXJWYXJpYW50ID0gXCJiYWNrZ3JvdW5kRGFya1wiO1xuXG50eXBlIFNlYXJjaENhcmRWYXJpYW50ID1cbiAgfCBcImJhY2tncm91bmRQcmltYXJ5XCJcbiAgfCBcImJhY2tncm91bmRTZWNvbmRhcnlcIlxuICB8IFwiYmFja2dyb3VuZFNlY29uZGFyeURhcmtcIlxuICB8IFwiYmFja2dyb3VuZExpZ2h0XCJcbiAgfCBcImJhY2tncm91bmRTYXR1cmF0ZWRcIjtcblxudHlwZSBTdWdnZXN0aW9uQnV0dG9uVmFyaWFudCA9XG4gIHwgXCJvdXRsaW5lZFwiXG4gIHwgXCJvdXRsaW5lZExpZ2h0XCJcbiAgfCBcInByaW1hcnlcIlxuICB8IFwic2Vjb25kYXJ5XCJcbiAgfCBcInRlcnRpYXJ5XCJcbiAgfCBcImRhcmtcIlxuICB8IFwiZGFya0FjY2VudFwiXG4gIHwgXCJkYXJrUHJpbWFyeVwiXG4gIHwgXCJzZWNvbmRhcnlEYXJrXCJcbiAgfCBcInNlY29uZGFyeUFjY2VudFwiXG4gIHwgXCJ0cmFuc3BhcmVudFwiXG4gIHwgXCJ0cmFuc3BhcmVudERhcmtcIlxuICB8IFwibGlnaHREYXJrXCI7XG5cbmludGVyZmFjZSBTdWdnZXN0aW9uQnV0dG9uQ29uZmlnIHtcbiAgdmFyaWFudD86IFN1Z2dlc3Rpb25CdXR0b25WYXJpYW50O1xuICBob3ZlclZhcmlhbnQ/OiBTdWdnZXN0aW9uQnV0dG9uVmFyaWFudDtcbiAgYW5zd2VyVmFyaWFudD86IFN1Z2dlc3Rpb25CdXR0b25WYXJpYW50O1xuICBib3JkZXJSYWRpdXM/OiBcInNtXCIgfCBcIm1kXCIgfCBcImxnXCI7XG59XG5cbnR5cGUgTnVtUm93cyA9IFwiZGVmYXVsdFwiIHwgXCJhbHdheXNPbmVSb3dcIiB8IFwiYWx3YXlzVHdvUm93c1wiIHwgXCJ0d29Sb3dzT25Nb2JpbGVcIjtcblxuaW50ZXJmYWNlIEFscGhhYmV0aWNGaWx0ZXJTb3J0aW5nIHtcbiAgdHlwZTogXCJhbHBoYWJldGljXCI7XG59XG5pbnRlcmZhY2UgUHJvZHVjdENvdW50RmlsdGVyU29ydGluZyB7XG4gIHR5cGU6IFwicHJvZHVjdENvdW50XCI7XG59XG5pbnRlcmZhY2UgQ3VzdG9tRmlsdGVyU29ydGluZyB7XG4gIHR5cGU6IFwiY3VzdG9tXCI7XG4gIG1hcDogUmVjb3JkPHN0cmluZywgbnVtYmVyPjtcbn1cblxudHlwZSBGaWx0ZXJTb3J0aW5nID1cbiAgfCBBbHBoYWJldGljRmlsdGVyU29ydGluZ1xuICB8IFByb2R1Y3RDb3VudEZpbHRlclNvcnRpbmdcbiAgfCBDdXN0b21GaWx0ZXJTb3J0aW5nO1xuXG5pbnRlcmZhY2UgQmFzZUZpbHRlckNvbmZpZyB7XG4gIGZpbHRlcklkOiBzdHJpbmc7XG4gIGRpc3BsYXlOYW1lOiBzdHJpbmc7XG59XG5pbnRlcmZhY2UgRHluYW1pY0ZpbHRlckNvbmZpZyBleHRlbmRzIEJhc2VGaWx0ZXJDb25maWcge1xuICB0eXBlOiBcImR5bmFtaWNcIjtcbiAgYXR0cmlidXRlOiBzdHJpbmc7XG4gIHNvcnRpbmc6IEZpbHRlclNvcnRpbmc7XG59XG5cbmludGVyZmFjZSBQcmljZUZpbHRlckNvbmZpZyBleHRlbmRzIEJhc2VGaWx0ZXJDb25maWcge1xuICB0eXBlOiBcInByaWNlXCI7XG4gIGJ1Y2tldFNpemU6IG51bWJlcjtcbn1cblxuZXhwb3J0IHR5cGUgRmlsdGVyQXR0cmlidXRlID0gRHluYW1pY0ZpbHRlckNvbmZpZyB8IFByaWNlRmlsdGVyQ29uZmlnO1xuXG5leHBvcnQgdHlwZSBTZWFyY2haZXJvU3RhdGVWYXJpYW50ID1cbiAgfCBcImJhY2tncm91bmRUZXJ0aWFyeVwiXG4gIHwgXCJiYWNrZ3JvdW5kRGFya1wiXG4gIHwgXCJiYWNrZ3JvdW5kUHJpbWFyeVwiO1xuZXhwb3J0IHR5cGUgU2VhcmNoWmVyb1N0YXRlTGF5b3V0ID0gXCJpbnB1dFwiIHwgXCJpY29uXCI7XG5cbmV4cG9ydCB0eXBlIFNlYXJjaElucHV0VmFyaWFudCA9IFwic3RhbmRhcmRcIjtcblxuZXhwb3J0IHR5cGUgU2VhcmNoSWNvblZhcmlhbnQgPSBcInRoaW5cIiB8IFwiYm9sZFwiO1xuXG5leHBvcnQgdHlwZSBTZWFyY2hGaWx0ZXJTaWRlYmFyVmFyaWFudCA9IFwiZGFya0J1dHRvblwiIHwgXCJsaWdodEJ1dHRvblwiO1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0R3JpZFZhcmlhbnQgPSBcInN0YW5kYXJkXCIgfCBcInNxdWFyZVwiO1xuXG50eXBlIFVzZXJRdWVyeUJ1dHRvbkljb24gPVxuICB8IFwibWFnbmlmeWluZ0dsYXNzXCJcbiAgfCBcInNlbmRcIlxuICB8IFwibWFnbmlmeWluZ0dsYXNzVGhpblwiXG4gIHwgXCJzZW5kQXJyb3dcIlxuICB8IFwic2VhcmNoSWNvblwiO1xuXG5pbnRlcmZhY2UgVXNlclF1ZXJ5QnV0dG9uQ29uZmlnIHtcbiAgdmFyaWFudD86IFwiYm94XCIgfCBcInVuZGVybGluZUxpZ2h0XCIgfCBcInVuZGVybGluZURhcmtcIjtcbiAgcGxhY2Vob2xkZXJUZXh0Pzogc3RyaW5nO1xuICBpY29uOiBVc2VyUXVlcnlCdXR0b25JY29uO1xufVxuXG4vLyBUT0RPOiB0aGlzIHNob3VsZCBiZSBpbmNsdWRlZCBpbiB0aGUgdG9wLWxldmVsIHdpZGdldCBjb25maWdcbmludGVyZmFjZSBUZXJtc0FuZENvbmRpdGlvbnNDb25maWcge1xuICBjb3B5OiBzdHJpbmc7XG4gIGxpbms6IHN0cmluZztcbiAgbGlua1RleHQ6IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIE1lcmNoYW50VmFyaWFudFNldHRpbmdzIHtcbiAgZHluYW1pY1ZhcmlhbnRzOiB7XG4gICAgZW5hYmxlZDogYm9vbGVhbjsgLy8gVGhpcyBmZWF0dXJlIHdpbGwgZW5hYmxlIGR5bmFtaWMgdmFyaWFudHMgZm9yIHRoZSBtZXJjaGFudC4gVXNlZnVsIGZvciBTUEEnc1xuICAgIHJlZnJlc2hJbnRlcnZhbD86IG51bWJlcjsgLy8gVGhlIGludGVydmFsIGluIG1pbGxpc2Vjb25kcyB0byBjaGVjayBmb3IgY2hhbmdlcyBpbiB0aGUgVVJMXG4gIH07XG59XG5cbmludGVyZmFjZSBGbG9hdGluZ0NoYXRDb25maWcge1xuICBlbmFibGVXYXRlcm1hcms6IGJvb2xlYW47XG4gIHVzZXJRdWVyeUlucHV0RW5hYmxlZDogYm9vbGVhbjtcbiAgaWdub3JlRmlyc3RNb2RlbFJlc3BvbnNlPzogYm9vbGVhbjtcbiAgbmV2ZXJTaG93U2luZ2xlUHJvZHVjdENhcmRzPzogYm9vbGVhbjtcbiAgdGVybXNBbmRDb25kaXRpb25zQ29uZmlnPzogVGVybXNBbmRDb25kaXRpb25zQ29uZmlnO1xuXG4gIC8vIEZvb3RlciBjb25maWdcbiAgc3VnZ2VzdGlvbkJ1dHRvbkNvbmZpZz86IFN1Z2dlc3Rpb25CdXR0b25Db25maWc7XG4gIHJlcGx5SW5wdXRDb25maWc6IFJlcGx5SW5wdXRDb25maWc7XG59XG5cbmludGVyZmFjZSBTZWFyY2hDb25maWcge1xuICBlbmFibGVHbG9iYWxTZWFyY2g6IGJvb2xlYW47XG4gIHNlYXJjaEZpbHRlckNvbmZpZzogRmlsdGVyQXR0cmlidXRlW107XG4gIHJlZGlyZWN0U2VhcmNoUmVzdWx0c1VybD86IHN0cmluZztcbiAgYWRkaXRpdmVEeW5hbWljRmlsdGVycz86IGJvb2xlYW47XG59XG5cbnR5cGUgT3JnVUlDb25maWcgPSB7XG4gIHNob3J0TmFtZTogc3RyaW5nO1xuICBpZD86IHN0cmluZztcbiAgZmxvYXRpbmdFbnRyeXBvaW50Q29uZmlnPzogRmxvYXRpbmdFbnRyeVBvaW50Q29uZmlnO1xuICAvLyBEZXByZWNhdGVkIC0gcmVtb3ZlIHdpdGggQ2hhdFByZXZpZXcgcmV3cml0ZVxuICBjaGF0UHJldmlld0NvbmZpZz86IENoYXRQcmV2aWV3Q29uZmlnO1xuXG4gIGN1c3RvbWVyU2VydmljZUludGVncmF0aW9uOiBDdXN0b21lclNlcnZpY2VJbnRlZ3JhdGlvbjtcbiAgLy8gRGVwcmVjYXRlZCAtIHJlbW92ZSB3aGVuIEdsb2JhbCBTZWFyY2ggaXMgZnVsbHkgbGF1bmNoZWRcbiAgY29udmVyc2F0aW9uYWxTZWFyY2g/OiBDb252ZXJzYXRpb25hbFNlYWNoO1xuXG4gIG1lcmNoYW50T3ZlcnJpZGVDc3M/OiBzdHJpbmc7XG5cbiAgLy8gRGVwcmVjYXRlZCBUT0RPOiBSZW1vdmUgdGhpcyBkZXByZWNhdGVkIHZhbHVlIHdoZW4gR3Jvb3ZlIENYIGhhcyBwcm9wZXIgdW5pZmllZCBidXR0b24gc3VwcG9ydFxuICAvLyBzZWxlY3RvcnMgZm9yIGVsZW1lbnRzIHRoYXQgc2hvdWxkIGJlIGhpZGRlbiB3aGVuIHRoZSBjaGF0IGlzIG9wZW5cbiAgLy8gZS5nLiBDUyB3aWRnZXRzIHdpdGggbWF4IHotaW5kZXggKFwiZGl2W2lkKj0nY3MtY29udGFpbmVyJ11cIilcbiAgaGlkZGVuRWxlbWVudFNlbGVjdG9ycz86IHN0cmluZ1tdO1xuXG4gIG1lcmNoYW50VmFyaWFudFNldHRpbmdzPzogTWVyY2hhbnRWYXJpYW50U2V0dGluZ3M7XG4gIC8vIFRPRE86IE1pZ3JhdGUgYWxsIGZsb2F0aW5nIGNoYXQgY29uZmlnIGludG8gdGhpcyB0b3AtbGV2ZWwga2V5XG4gIC8vXG4gIGZsb2F0aW5nQ2hhdENvbmZpZzogRmxvYXRpbmdDaGF0Q29uZmlnO1xuXG4gIC8vIENvbnRhaW4gYWxsIHNlYXJjaCBjb25maWcgaGVyZVxuICBzZWFyY2hDb25maWc6IFNlYXJjaENvbmZpZztcbiAgLy8gVE9ETzogTW92ZSB0aGVzZSBpbnRvIEZsb2F0aW5nQ2hhdENvbmZpZ1xuICAvLyBDaGF0IEhlYWRlciByZWxhdGVkIHZhbHVlc1xuICBjaGF0SGVhZGVyOiBDaGF0SGVhZGVyQ29uZmlnO1xuICBzdGlja3lBZ2VudFN3aXRjaFN1Z2dlc3Rpb24/OiBib29sZWFuO1xuICBwYXJ0aWFsVmlld0NvbmZpZzogUGFydGlhbFZpZXdDb25maWc7XG4gIHdlbGNvbWVTZWN0aW9uQ29uZmlnPzogV2VsY29tZVNlY3Rpb25Db25maWc7XG4gIC8vIERpZmZlcmVudCByZXNwb25zZSB2YWx1ZXNcbiAgcHJvZHVjdENhcmRDb25maWc/OiBQcm9kdWN0Q2FyZENvbmZpZztcbiAgcHJvZHVjdFJldmlld0NvbmZpZz86IFByb2R1Y3RSZXZpZXdDb25maWc7XG4gIHBhZ2VDYXJkQ29uZmlnPzogUGFnZUNhcmRDb25maWc7XG4gIGNoYXRNZXNzYWdlQ29uZmlnOiBDaGF0TWVzc2FnZUNvbmZpZztcbn07XG5cbnR5cGUgSW5zZXJ0aW9uUG9pbnQgPSB7XG4gIHNlbGVjdG9yOiBzdHJpbmc7XG4gIC8vIHRoaXMgaXMgdGhlIGluZGV4IG9mIHRoZSB0YXJnZXQgZWxlbWVudCwgMCBpZiBtaXNzaW5nXG4gIHNlbGVjdGlvbkluZGV4PzogbnVtYmVyO1xuICBpbnNlcnRpb25UeXBlOiBET01JbnNlcnRpb25UeXBlO1xufTtcblxudHlwZSBVUkxUZXN0ID0gXCJzaG9waWZ5XCIgfCBcIm51bGxcIjtcblxudHlwZSBJZEV4dHJhY3RvciA9XG4gIHwgXCJzaG9waWZ5LXByb2R1Y3QtaWRcIlxuICB8IFwic2hvcGlmeS1jb2xsZWN0aW9uLWlkXCJcbiAgfCBcInNob3BpZnktcHJvZHVjdC12YXJpYW50LWlkXCJcbiAgfCBcInVybC1yZXNvbHZlci1wcm9kdWN0LWlkXCJcbiAgfCBcInVybC1yZXNvbHZlci1wbHAtaWRcIlxuICB8IFwibnVsbFwiO1xuXG4vLyBUaGlzIGNvbnRhaW5zIGEgbWFwIGJldHdlZW4gUGFnZVZpc2l0Q2F0ZWdvcnkgYW5kIGEgbGlzdCBvZiBVUkwncyB0aGF0IGFyZSBjbGFzc2lmaWVkIGFzIHRoZSB2YWx1ZVxuZW51bSBDYXRlZ29yeUV4dHJhY3RvclR5cGUge1xuICBWaXNpdENhdGVnb3J5TWFwID0gXCJWaXNpdENhdGVnb3J5TWFwXCIsXG4gIFZpc2l0Q2F0ZWdvcnlEZWZhdWx0ID0gXCJWaXNpdENhdGVnb3J5RGVmYXVsdFwiLFxufVxuXG5pbnRlcmZhY2UgQmFzZUNhdGVnb3J5RXh0cmFjdG9yPFQgZXh0ZW5kcyBDYXRlZ29yeUV4dHJhY3RvclR5cGU+IHtcbiAgdHlwZTogVDtcbn1cblxuLy8gVGhpcyBtYXAgYmV0d2VlbnMgYSBjYXRlZ29yeSBhbmQgYSBsaXN0IG9mIHVybCBwYXR0ZXJuc1xuaW50ZXJmYWNlIFZpc2l0Q2F0ZWdvcnlNYXBcbiAgZXh0ZW5kcyBCYXNlQ2F0ZWdvcnlFeHRyYWN0b3I8Q2F0ZWdvcnlFeHRyYWN0b3JUeXBlLlZpc2l0Q2F0ZWdvcnlNYXA+IHtcbiAgbWFwOiB7XG4gICAgW2tleSBpbiBQYWdlVmlzaXRDYXRlZ29yeV0/OiBzdHJpbmdbXTtcbiAgfTtcbn1cblxuLy8gVGhpcyB3aWxsIHJldHVybiBhIGhhcmQtY29kZWQgZGVmYXVsdCBQYWdlVmlzaXRDYXRlZ29yeS4gSXQgaXMgaW50ZW5kZWQgdG8gYmUgdXNlZCBieSBmYWxsYmFjayBwYWdlIHR5cGVzXG5pbnRlcmZhY2UgVmlzaXRDYXRlZ29yeURlZmF1bHRcbiAgZXh0ZW5kcyBCYXNlQ2F0ZWdvcnlFeHRyYWN0b3I8Q2F0ZWdvcnlFeHRyYWN0b3JUeXBlLlZpc2l0Q2F0ZWdvcnlEZWZhdWx0PiB7XG4gIHZhbHVlOiBQYWdlVmlzaXRDYXRlZ29yeTtcbn1cblxudHlwZSBDYXRlZ29yeUV4dHJhY3RvciA9IFZpc2l0Q2F0ZWdvcnlNYXAgfCBWaXNpdENhdGVnb3J5RGVmYXVsdDtcblxudHlwZSBXcmFwcGluZ0VsZW1lbnQgPSB7XG4gIGNsYXNzTmFtZTogc3RyaW5nO1xuICBlbGVtZW50OiBzdHJpbmc7XG4gIGluc2VydGlvblR5cGU6IERPTUluc2VydGlvblR5cGU7XG59O1xuXG5lbnVtIFBhZ2VWYXJpYW50VGVzdFR5cGUge1xuICBTaG9waWZ5UExQID0gXCJTaG9waWZ5UExQXCIsXG4gIFNob3BpZnlQRFAgPSBcIlNob3BpZnlQRFBcIixcbiAgUGFnZUNhdGVnb3J5ID0gXCJQYWdlQ2F0ZWdvcnlcIixcbiAgQ2F0YWxvZ0NhdGVnb3J5ID0gXCJDYXRhbG9nQ2F0ZWdvcnlcIixcbiAgVG9wQ2F0YWxvZ0NhdGVnb3J5ID0gXCJUb3BDYXRhbG9nQ2F0ZWdvcnlcIixcbiAgSGFzUmV2aWV3cyA9IFwiSGFzUmV2aWV3c1wiLFxuICBJbkNvbGxlY3Rpb24gPSBcIkluQ29sbGVjdGlvblwiLFxuICBIYXNNZXJjaGFudFRhZyA9IFwiSGFzTWVyY2hhbnRUYWdcIixcbiAgRmVhdHVyZUdhdGUgPSBcIkZlYXR1cmVHYXRlXCIsXG4gIFBscElkID0gXCJQbHBJZFwiLFxuICBRdWVyeVBhcmFtID0gXCJRdWVyeVBhcmFtXCIsXG4gIFByb2R1Y3RJZCA9IFwiUHJvZHVjdElkXCIsXG4gIFVzZXJIYXNJbnRlcmFjdGVkID0gXCJVc2VySGFzSW50ZXJhY3RlZFwiLFxuICBVc2VySGFzTm90SW50ZXJhY3RlZCA9IFwiVXNlckhhc05vdEludGVyYWN0ZWRcIixcbiAgaXNMb2FkaW5nID0gXCJpc0xvYWRpbmdcIixcbiAgaXNQcm9kdWN0Q29tcGFyaXNvbiA9IFwiaXNQcm9kdWN0Q29tcGFyaXNvblwiLFxuICBGYWxsYmFjayA9IFwiRmFsbGJhY2tcIixcbiAgVXJsUmVzb2x2ZXIgPSBcIlVybFJlc29sdmVyXCIsXG4gIE51bGwgPSBcIm51bGxcIixcbn1cblxuaW50ZXJmYWNlIEJhc2VQYWdlVmFyaWFudFRlc3Q8VCBleHRlbmRzIFBhZ2VWYXJpYW50VGVzdFR5cGU+IHtcbiAgdGVzdFR5cGU6IFQ7XG59XG5cbmludGVyZmFjZSBUb3BDYXRhbG9nQ2F0ZWdvcnlcbiAgZXh0ZW5kcyBCYXNlUGFnZVZhcmlhbnRUZXN0PFBhZ2VWYXJpYW50VGVzdFR5cGUuVG9wQ2F0YWxvZ0NhdGVnb3J5PiB7XG4gIHRvcENhdGVnb3J5OiBzdHJpbmdbXTtcbn1cblxuaW50ZXJmYWNlIENhdGFsb2dDYXRlZ29yeVRlc3RcbiAgZXh0ZW5kcyBCYXNlUGFnZVZhcmlhbnRUZXN0PFBhZ2VWYXJpYW50VGVzdFR5cGUuQ2F0YWxvZ0NhdGVnb3J5PiB7XG4gIGNhdGVnb3J5OiBTdXBwb3J0ZWRFdmVudFByb2R1Y3RDYXRlZ29yeTtcbn1cblxuaW50ZXJmYWNlIEhhc1Jldmlld3NUZXN0XG4gIGV4dGVuZHMgQmFzZVBhZ2VWYXJpYW50VGVzdDxQYWdlVmFyaWFudFRlc3RUeXBlLkhhc1Jldmlld3M+IHtcbiAgcmV2aWV3TWluaW11bT86IG51bWJlcjtcbn1cblxuLy8gVGhpcyB3aWxsIHJldHVybiB0cnVlIGlmIHRoZSBwcm9kdWN0IGlzIGluIGFueSBvZiB0aGUgbGlzdGVkIGNvbGxlY3Rpb25zXG5pbnRlcmZhY2UgSW5Db2xsZWN0aW9uVGVzdFxuICBleHRlbmRzIEJhc2VQYWdlVmFyaWFudFRlc3Q8UGFnZVZhcmlhbnRUZXN0VHlwZS5JbkNvbGxlY3Rpb24+IHtcbiAgY29sbGVjdGlvbnM6IHN0cmluZ1tdO1xufVxuXG4vLyBUaGlzIHdpbGwgcmV0dXJuIHRydWUgaWYgdGhlIHByb2R1Y3QgaGFzIGFueSBvZiB0aGUgbGlzdGVkIG1lcmNoYW50IHRhZ3NcbmludGVyZmFjZSBIYXNNZXJjaGFudFRhZ1Rlc3RcbiAgZXh0ZW5kcyBCYXNlUGFnZVZhcmlhbnRUZXN0PFBhZ2VWYXJpYW50VGVzdFR5cGUuSGFzTWVyY2hhbnRUYWc+IHtcbiAgbWVyY2hhbnRUYWdzOiBzdHJpbmdbXTtcbn1cblxuaW50ZXJmYWNlIFNob3BpZnlQTFBVUkxUZXN0XG4gIGV4dGVuZHMgQmFzZVBhZ2VWYXJpYW50VGVzdDxQYWdlVmFyaWFudFRlc3RUeXBlLlNob3BpZnlQTFA+IHt9XG5cbmludGVyZmFjZSBTaG9waWZ5UERQVVJMVGVzdFxuICBleHRlbmRzIEJhc2VQYWdlVmFyaWFudFRlc3Q8UGFnZVZhcmlhbnRUZXN0VHlwZS5TaG9waWZ5UERQPiB7fVxuXG5pbnRlcmZhY2UgUGFnZUNhdGVnb3J5VGVzdFxuICBleHRlbmRzIEJhc2VQYWdlVmFyaWFudFRlc3Q8UGFnZVZhcmlhbnRUZXN0VHlwZS5QYWdlQ2F0ZWdvcnk+IHtcbiAgZXh0cmFjdG9yOiBDYXRlZ29yeUV4dHJhY3Rvcjtcbn1cblxuaW50ZXJmYWNlIEZlYXR1cmVHYXRlVGVzdFxuICBleHRlbmRzIEJhc2VQYWdlVmFyaWFudFRlc3Q8UGFnZVZhcmlhbnRUZXN0VHlwZS5GZWF0dXJlR2F0ZT4ge1xuICBmZWF0dXJlR2F0ZTogRmVhdHVyZUdhdGVzO1xufVxuXG5pbnRlcmZhY2UgUHJvZHVjdElkVGVzdFxuICBleHRlbmRzIEJhc2VQYWdlVmFyaWFudFRlc3Q8UGFnZVZhcmlhbnRUZXN0VHlwZS5Qcm9kdWN0SWQ+IHtcbiAgcHJvZHVjdElkRXh0cmFjdG9yOiBJZEV4dHJhY3RvcjtcbiAgcHJvZHVjdElkczogc3RyaW5nW107XG59XG5cbmludGVyZmFjZSBQbHBJZFRlc3QgZXh0ZW5kcyBCYXNlUGFnZVZhcmlhbnRUZXN0PFBhZ2VWYXJpYW50VGVzdFR5cGUuUGxwSWQ+IHtcbiAgcGxwSWRFeHRyYWN0b3I6IElkRXh0cmFjdG9yO1xuICBwbHBJZHM6IHN0cmluZ1tdO1xufVxuXG5pbnRlcmZhY2UgUXVlcnlQYXJhbVRlc3RcbiAgZXh0ZW5kcyBCYXNlUGFnZVZhcmlhbnRUZXN0PFBhZ2VWYXJpYW50VGVzdFR5cGUuUXVlcnlQYXJhbT4ge1xuICBxdWVyeVBhcmFtOiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBVc2VySGFzSW50ZXJhY3RlZFRlc3RcbiAgZXh0ZW5kcyBCYXNlUGFnZVZhcmlhbnRUZXN0PFBhZ2VWYXJpYW50VGVzdFR5cGUuVXNlckhhc0ludGVyYWN0ZWQ+IHt9XG5cbmludGVyZmFjZSBVc2VySGFzTm90SW50ZXJhY3RlZFRlc3RcbiAgZXh0ZW5kcyBCYXNlUGFnZVZhcmlhbnRUZXN0PFBhZ2VWYXJpYW50VGVzdFR5cGUuVXNlckhhc05vdEludGVyYWN0ZWQ+IHt9XG5cbmludGVyZmFjZSBJc0xvYWRpbmdUZXN0XG4gIGV4dGVuZHMgQmFzZVBhZ2VWYXJpYW50VGVzdDxQYWdlVmFyaWFudFRlc3RUeXBlLmlzTG9hZGluZz4ge31cblxuaW50ZXJmYWNlIElzUHJvZHVjdENvbXBhcmlzb25cbiAgZXh0ZW5kcyBCYXNlUGFnZVZhcmlhbnRUZXN0PFBhZ2VWYXJpYW50VGVzdFR5cGUuaXNQcm9kdWN0Q29tcGFyaXNvbj4ge31cblxuaW50ZXJmYWNlIFBhZ2VGYWxsYmFja1Rlc3RcbiAgZXh0ZW5kcyBCYXNlUGFnZVZhcmlhbnRUZXN0PFBhZ2VWYXJpYW50VGVzdFR5cGUuRmFsbGJhY2s+IHt9XG5cbmludGVyZmFjZSBVcmxSZXNvbHZlclRlc3RcbiAgZXh0ZW5kcyBCYXNlUGFnZVZhcmlhbnRUZXN0PFBhZ2VWYXJpYW50VGVzdFR5cGUuVXJsUmVzb2x2ZXI+IHt9XG5cbmV4cG9ydCB0eXBlIFBhZ2VWYXJpYW50VGVzdCA9XG4gIHwgUGFnZUNhdGVnb3J5VGVzdFxuICB8IFNob3BpZnlQTFBVUkxUZXN0XG4gIHwgU2hvcGlmeVBEUFVSTFRlc3RcbiAgfCBDYXRhbG9nQ2F0ZWdvcnlUZXN0XG4gIHwgVG9wQ2F0YWxvZ0NhdGVnb3J5XG4gIHwgSGFzUmV2aWV3c1Rlc3RcbiAgfCBJbkNvbGxlY3Rpb25UZXN0XG4gIHwgSGFzTWVyY2hhbnRUYWdUZXN0XG4gIHwgRmVhdHVyZUdhdGVUZXN0XG4gIHwgUHJvZHVjdElkVGVzdFxuICB8IFBscElkVGVzdFxuICB8IFF1ZXJ5UGFyYW1UZXN0XG4gIHwgVXNlckhhc0ludGVyYWN0ZWRUZXN0XG4gIHwgVXNlckhhc05vdEludGVyYWN0ZWRUZXN0XG4gIHwgSXNMb2FkaW5nVGVzdFxuICB8IElzUHJvZHVjdENvbXBhcmlzb25cbiAgfCBQYWdlRmFsbGJhY2tUZXN0XG4gIHwgVXJsUmVzb2x2ZXJUZXN0O1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gZm9yIHRoZSBzb2NpYWwgcHJvb2YgZW1iZWRkZWQgd2lkZ2V0XG4gKlxuICogQHBhcmFtIGhlYWRlclRpdGxlIC0gVGhlIHRpdGxlIHRleHQgdG8gZGlzcGxheSBpbiB0aGUgd2lkZ2V0IGhlYWRlclxuICogQHBhcmFtIHN0YXRpY1N1Z2dlc3Rpb25zIC0gQSBsaXN0IG9mIHN0cmluZ3MgdG8gZGlzcGxheSBhcyBzdWdnZXN0aW9ucyBpbiB0aGUgd2lkZ2V0XG4gKiBAcGFyYW0gc3VnZ2VzdGlvbkJ1dHRvblZhcmlhbnREZWZhdWx0IC0gVGhlIHZhcmlhbnQgb2YgdGhlIHN1Z2dlc3Rpb24gYnV0dG9uIHRvIGRpc3BsYXkgaW4gdGhlIHdpZGdldCBmb290ZXJcbiAqIEBwYXJhbSBzdWdnZXN0aW9uQnV0dG9uVmFyaWFudEFjY2VudCAtIFRoZSB2YXJpYW50IG9mIHRoZSBzdWdnZXN0aW9uIGJ1dHRvbiB0byBkaXNwbGF5IGluIHRoZSB3aWRnZXQgYm9keVxuICogQHBhcmFtIHN0YXRpY0ltYWdlSW5kZXggLSBJbmRleCBvZiB0aGUgaW1hZ2VVcmwgdG8gdXNlIGZyb20gdGhlIHByb2R1Y3QgcmVzcG9uc2VcbiAqL1xuaW50ZXJmYWNlIFNvY2lhbFByb29mQ29uZmlnIHtcbiAgY3VzdG9tZXJRdWVyeTogc3RyaW5nO1xuICBoZWFkZXJUaXRsZTogc3RyaW5nO1xuICBzdGF0aWNQTFBJbWFnZXNMYXlvdXQ/OiBcImdyaWRcIiB8IFwiaG9yaXpvbnRhbFwiO1xuICBoZWFkZXJGb250RmFtaWx5Pzogc3RyaW5nO1xuICBzdGF0aWNQTFBJbWFnZU5hbWVzPzogc3RyaW5nW107XG4gIHN0YXRpY0ltYWdlSW5kZXg/OiBudW1iZXI7XG4gIHN1Z2dlc3Rpb25CdXR0b25TdHJpbmdzOiBzdHJpbmdbXTtcbiAgc3VnZ2VzdGlvbkJ1dHRvblZhcmlhbnREZWZhdWx0OiBTdWdnZXN0aW9uQnV0dG9uVmFyaWFudDtcbiAgc3VnZ2VzdGlvbkJ1dHRvblZhcmlhbnRBY2NlbnQ/OiBTdWdnZXN0aW9uQnV0dG9uVmFyaWFudDtcbiAgc3VnZ2VzdGlvbkJ1dHRvbkRhdGFBdHRyaWJ1dGVzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgdXNlclF1ZXJ5QnV0dG9uQ29uZmlnPzogVXNlclF1ZXJ5QnV0dG9uQ29uZmlnO1xuICBsb2dvTmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciBjcmVhdGluZyB0aGUgbW91bnQgcG9pbnQgZm9yIGEgd2lkZ2V0XG4gKlxuICogQHBhcmFtIGNsYXNzTmFtZSAtIE9wdGlvbmFsIGNsYXNzIG5hbWUgdG8gYXBwbHkgdG8gdGhlIG1vdW50IHBvaW50LiBUYWlsd2luZCBjbGFzc2VzIGFyZSBzdXBwb3J0ZWRcbiAqIGFuZCBlbmNvdXJhZ2VkLiBVc2UgdGhpcyBwYXJhbWV0ZXIgdG8gc3R5bGUgdGhlIG1vdW50aW5nIGNvbnRhaW5lciBmb3IgdGhlIHdpZGdldC5cbiAqL1xuZXhwb3J0IHR5cGUgV2lkZ2V0TW91bnRpbmdDb25maWcgPSB7XG4gIG1vdW50aW5nQ29uZmlnSWQ6IHN0cmluZztcbiAgY29udGFpbmVySWQ6IHN0cmluZztcbiAgdGVzdElkOiBzdHJpbmc7XG4gIHBhcmVudEluc2VydGlvblBvaW50PzogSW5zZXJ0aW9uUG9pbnQ7XG4gIGluc2VydGlvblBvaW50OiBJbnNlcnRpb25Qb2ludDtcbiAgZ3JpZEluc2VydGlvblR5cGU/OiBHcmlkSW5zZXJ0aW9uVHlwZTtcbiAgd3JhcHBpbmdFbGVtZW50PzogV3JhcHBpbmdFbGVtZW50O1xuICBkaXZDaGVja1NlbGVjdG9yPzogc3RyaW5nO1xuICBzdXBwcmVzc2lvblNlbGVjdG9yPzogc3RyaW5nO1xuICBzdHlsZT86IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj47XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgZGF0YUF0dHJpYnV0ZXM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufTtcblxudHlwZSBTdGF0aWNXaWRnZXRNb3VudGluZyA9IHtcbiAgbW91bnRpbmdDb25maWdJZDogc3RyaW5nO1xuICB3aWRnZXRDb25maWdJZDogc3RyaW5nO1xufTtcbnR5cGUgRHluYW1pY1dpZGdldE1vdW50aW5nID0ge1xuICBtb3VudGluZ0NvbmZpZ0lkOiBzdHJpbmc7XG4gIG1vdW50aW5nUG9pbnRXaWRnZXRzOiBXaWRnZXREaXNwbGF5VGVzdHNbXTtcbn07XG5cbnR5cGUgV2lkZ2V0RGlzcGxheVRlc3RzID0ge1xuICB0ZXN0czogUGFnZVZhcmlhbnRUZXN0W107XG4gIHdpZGdldENvbmZpZ0lkOiBzdHJpbmc7XG59O1xuXG50eXBlIFdpZGdldE1vdW50aW5nID0gU3RhdGljV2lkZ2V0TW91bnRpbmcgfCBEeW5hbWljV2lkZ2V0TW91bnRpbmc7XG5cbmVudW0gV2lkZ2V0VHlwZSB7XG4gIENoYXRQcmV2aWV3ID0gXCJDaGF0UHJldmlld1wiLFxuICBTb2NpYWxQcm9vZlYyID0gXCJTb2NpYWxQcm9vZlYyXCIsXG4gIENoYXRQcmV2aWV3VjIgPSBcIkNoYXRQcmV2aWV3VjJcIixcbiAgQ2hhdFByZXZpZXdJc0xvYWRpbmcgPSBcIkNoYXRQcmV2aWV3SXNMb2FkaW5nXCIsXG4gIENoYXRQcmV2aWV3UG9zdEludGVyYWN0aW9uID0gXCJDaGF0UHJldmlld1Bvc3RJbnRlcmFjdGlvblwiLFxuICBDaGF0UHJldmlld1Byb2R1Y3RDb21wYXJpc29uID0gXCJDaGF0UHJldmlld1Byb2R1Y3RDb21wYXJpc29uXCIsXG4gIFN1Z2dlc3Rpb25CYXIgPSBcIlN1Z2dlc3Rpb25CYXJcIixcbiAgU3VnZ2VzdGlvbkJhclYyID0gXCJTdWdnZXN0aW9uQmFyVjJcIixcbiAgSW1hZ2VQcm9tcHRDYXJkID0gXCJJbWFnZVByb21wdENhcmRcIixcbiAgSW1hZ2VCYW5uZXIgPSBcIkltYWdlQmFubmVyXCIsXG4gIFNpbmdsZUltYWdlUHJvbXB0ID0gXCJTaW5nbGVJbWFnZVByb21wdFwiLFxuICBTZWFyY2hQcm9tcHQgPSBcIlNlYXJjaFByb21wdFwiLFxuICBTZWFyY2haZXJvU3RhdGVFbnRyeVBvaW50ID0gXCJTZWFyY2haZXJvU3RhdGVFbnRyeVBvaW50XCIsXG4gIFNlYXJjaFJlc3VsdHNFbnRyeVBvaW50ID0gXCJTZWFyY2hSZXN1bHRzRW50cnlQb2ludFwiLFxuICBTZWFyY2hPdmVybGF5SG9zdCA9IFwiU2VhcmNoT3ZlcmxheUhvc3RcIixcbiAgTm9PcCA9IFwiTm9PcFwiLFxufVxuXG50eXBlIFdpZGdldENvbmZpZyA9XG4gIHwgQ2hhdFByZXZpZXdXaWRnZXRDb25maWdcbiAgfCBTb2NpYWxQcm9vZlYyV2lkZ2V0Q29uZmlnXG4gIHwgQ2hhdFByZXZpZXdWMldpZGdldENvbmZpZ1xuICB8IENoYXRQcmV2aWV3UG9zdEludGVyYWN0aW9uV2lkZ2V0Q29uZmlnXG4gIHwgQ2hhdFByZXZpZXdJc0xvYWRpbmdXaWRnZXRDb25maWdcbiAgfCBDaGF0UHJldmlld1Byb2R1Y3RDb21wYXJpc29uV2lkZ2V0Q29uZmlnXG4gIHwgU3VnZ2VzdGlvbkJhcldpZGdldFYyQ29uZmlnXG4gIHwgSW1hZ2VQcm9tcHRXaWRnZXRDb25maWdcbiAgfCBJbWFnZUJhbm5lcldpZGdldENvbmZpZ1xuICB8IFNpbmdsZUltYWdlUHJvbXB0V2lkZ2V0Q29uZmlnXG4gIHwgU2VhcmNoUHJvbXB0V2lkZ2V0Q29uZmlnXG4gIHwgU2VhcmNoRW50cnlQb2ludFdpZGdldENvbmZpZ1xuICB8IFNlYXJjaFJlc3VsdHNFbnRyeVBvaW50V2lkZ2V0Q29uZmlnXG4gIHwgU2VhcmNoT3ZlcmxheUhvc3RXaWRnZXRDb25maWdcbiAgfCBOb09wV2lkZ2V0Q29uZmlnO1xuXG5pbnRlcmZhY2UgQmFzZVdpZGdldENvbmZpZzxUIGV4dGVuZHMgV2lkZ2V0VHlwZT4ge1xuICB3aWRnZXRDb25maWdJZDogc3RyaW5nO1xuICB0eXBlOiBUO1xuICBjb250ZW50SWQ/OiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBJbWFnZUJhbm5lcldpZGdldENvbmZpZ1xuICBleHRlbmRzIEJhc2VXaWRnZXRDb25maWc8V2lkZ2V0VHlwZS5JbWFnZUJhbm5lcj4ge1xuICBpbWFnZVNyYzogc3RyaW5nO1xuICB0aXRsZTogc3RyaW5nO1xuICBzdWJ0aXRsZTogc3RyaW5nO1xuICBhc3Npc3RhbnRNZXNzYWdlOiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBDaGF0UHJldmlld1dpZGdldENvbmZpZ1xuICBleHRlbmRzIEJhc2VXaWRnZXRDb25maWc8V2lkZ2V0VHlwZS5DaGF0UHJldmlldz4ge1xuICB2YXJpYW50OiBcImZpbGxlZFwiIHwgXCJmbGF0XCIgfCBcIm91dGxpbmVkXCI7XG4gIGFkZFNlcGFyYXRvcnM/OiBib29sZWFuO1xuICBzb2NpYWxQcm9vZkNvbmZpZz86IFNvY2lhbFByb29mQ29uZmlnO1xuICBmb290ZXJDb25maWc/OiBDaGF0UHJldmlld0Zvb3RlckNvbmZpZztcbn1cblxuaW50ZXJmYWNlIENoYXRQcmV2aWV3SGVhZGVyVjJDb25maWcge1xuICB0aXRsZT86IHN0cmluZzsgLy8gRGVmYXVsdDogJ1Nob3BwaW5nIEFzc2lzdGFudCdcbiAgaW1hZ2VTcmM/OiBzdHJpbmc7XG4gIGltYWdlSGVpZ2h0PzogbnVtYmVyO1xufVxuXG50eXBlIFNpbmdsZUltYWdlQ29uZmlnID0ge1xuICBsYXlvdXQ6IFwic2luZ2xlXCI7XG4gIGltYWdlSW5kZXg6IG51bWJlcjtcbn07XG50eXBlIE11bHRpSW1hZ2VDb25maWcgPSB7XG4gIGxheW91dDogXCJncmlkXCIgfCBcImhvcml6b250YWxcIjtcbiAgaW1hZ2VOYW1lczogc3RyaW5nW107XG59O1xudHlwZSBTb2NpYWxQcm9vZkltYWdlQ29uZmlnID0gU2luZ2xlSW1hZ2VDb25maWcgfCBNdWx0aUltYWdlQ29uZmlnO1xuXG50eXBlIENoYXRQcmV2aWV3U3VnZ2VzdGlvbkJ1dHRvbkNvbmZpZyA9IHtcbiAgYnV0dG9uU3RyaW5nczogc3RyaW5nW107XG4gIGFjY2VudEJ1dHRvblZhcmlhbnRzPzoge1xuICAgIGJ1dHRvbjogU3VnZ2VzdGlvbkJ1dHRvblZhcmlhbnQ7XG4gICAgaG92ZXI6IFN1Z2dlc3Rpb25CdXR0b25WYXJpYW50O1xuICB9O1xuICBidXR0b25WYXJpYW50czoge1xuICAgIGJ1dHRvbjogU3VnZ2VzdGlvbkJ1dHRvblZhcmlhbnQ7XG4gICAgaG92ZXI6IFN1Z2dlc3Rpb25CdXR0b25WYXJpYW50O1xuICB9O1xuICBudW1Sb3dzPzogTnVtUm93cztcbn07XG5cbnR5cGUgQ2hhdFByZXZpZXdBbmltYXRlZFRleHRDb25maWcgPSB7XG4gIGxlYWRpbmdUZXh0OiBzdHJpbmc7XG4gIGFuaW1hdGVkU3RyaW5nczogc3RyaW5nW107XG59O1xuXG50eXBlIENoYXRQcmV2aWV3VmFyaWFudCA9XG4gIHwgeyB2YXJpYW50OiBcImZsYXRcIiB9XG4gIHwgeyB2YXJpYW50OiBcImZpbGxlZFwiOyBiYWNrZ3JvdW5kRmlsbENvbG9yOiBzdHJpbmcgfVxuICB8IHsgdmFyaWFudDogXCJvdXRsaW5lZFwiIH07XG5cbi8vIEJhc2UgaW50ZXJmYWNlIGZvciBjb21tb24gY2hhdCBwcmV2aWV3IHByb3BlcnRpZXNcbmludGVyZmFjZSBCYXNlQ2hhdFByZXZpZXdDb25maWcge1xuICBoZWFkZXJDb25maWc6IENoYXRQcmV2aWV3SGVhZGVyVjJDb25maWc7XG4gIHN1Z2dlc3Rpb25CdXR0b25zQ29uZmlnOiBDaGF0UHJldmlld1N1Z2dlc3Rpb25CdXR0b25Db25maWc7XG4gIHVzZXJRdWVyeUJ1dHRvbkNvbmZpZzogVXNlclF1ZXJ5QnV0dG9uQ29uZmlnO1xuICBjaGF0UHJldmlld1ZhcmlhbnQ6IENoYXRQcmV2aWV3VmFyaWFudDtcbiAgYWRkU2VwYXJhdG9ycz86IGJvb2xlYW47XG59XG5cbi8vIFNwZWNpZmljIGNoYXQgcHJldmlldyB3aWRnZXQgY29uZmlndXJhdGlvbnNcbmludGVyZmFjZSBDaGF0UHJldmlld1Bvc3RJbnRlcmFjdGlvbldpZGdldENvbmZpZ1xuICBleHRlbmRzIEJhc2VXaWRnZXRDb25maWc8V2lkZ2V0VHlwZS5DaGF0UHJldmlld1Bvc3RJbnRlcmFjdGlvbj4sXG4gICAgQmFzZUNoYXRQcmV2aWV3Q29uZmlnIHtcbiAgY2hhdFByZXZpZXdWYXJpYW50OiBDaGF0UHJldmlld1ZhcmlhbnQ7XG4gIGFkZFNlcGFyYXRvcnM/OiBib29sZWFuO1xufVxuXG5pbnRlcmZhY2UgQ2hhdFByZXZpZXdJc0xvYWRpbmdXaWRnZXRDb25maWdcbiAgZXh0ZW5kcyBCYXNlV2lkZ2V0Q29uZmlnPFdpZGdldFR5cGUuQ2hhdFByZXZpZXdJc0xvYWRpbmc+LFxuICAgIEJhc2VDaGF0UHJldmlld0NvbmZpZyB7fVxuXG5pbnRlcmZhY2UgQ2hhdFByZXZpZXdQcm9kdWN0Q29tcGFyaXNvbldpZGdldENvbmZpZ1xuICBleHRlbmRzIEJhc2VXaWRnZXRDb25maWc8V2lkZ2V0VHlwZS5DaGF0UHJldmlld1Byb2R1Y3RDb21wYXJpc29uPixcbiAgICBCYXNlQ2hhdFByZXZpZXdDb25maWcge1xuICB1c2VMYXJnZVByb2R1Y3RDb21wYXJpc29uPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIENoYXRQcmV2aWV3VjJXaWRnZXRDb25maWdcbiAgZXh0ZW5kcyBCYXNlV2lkZ2V0Q29uZmlnPFdpZGdldFR5cGUuQ2hhdFByZXZpZXdWMj4sXG4gICAgQmFzZUNoYXRQcmV2aWV3Q29uZmlnIHtcbiAgYW5pbWF0ZWRUZXh0Q29uZmlnOiBDaGF0UHJldmlld0FuaW1hdGVkVGV4dENvbmZpZztcbn1cblxuaW50ZXJmYWNlIFNvY2lhbFByb29mVjJXaWRnZXRDb25maWdcbiAgZXh0ZW5kcyBCYXNlV2lkZ2V0Q29uZmlnPFdpZGdldFR5cGUuU29jaWFsUHJvb2ZWMj4sXG4gICAgQmFzZUNoYXRQcmV2aWV3Q29uZmlnIHtcbiAgY3VzdG9tZXJRdWVyeT86IHN0cmluZzsgLy8gRGVmYXVsdDogJ2Fza2VkIHdoaWNoIHByb2R1Y3RzIGFyZSB0aGUgYmVzdCdcbiAgaW1hZ2VDb25maWc6IFNvY2lhbFByb29mSW1hZ2VDb25maWc7XG59XG5cbmludGVyZmFjZSBTdWdnZXN0aW9uQmFyV2lkZ2V0VjJDb25maWdcbiAgZXh0ZW5kcyBCYXNlV2lkZ2V0Q29uZmlnPFdpZGdldFR5cGUuU3VnZ2VzdGlvbkJhclYyPiB7XG4gIG1ldHJpY0Rpc3BsYXlMb2NhdGlvbjogQ2hhdEVsZW1lbnREaXNwbGF5TG9jYXRpb247XG4gIGxvY2F0aW9uOiBTdWdnZXN0aW9uQmFyTG9jYXRpb25Gb3JNZXRyaWNzO1xuICB2YXJpYW50OiBTdWdnZXN0aW9uQnV0dG9uVmFyaWFudDtcbiAgaG92ZXJWYXJpYW50OiBTdWdnZXN0aW9uQnV0dG9uVmFyaWFudDtcbiAgYnV0dG9uVGV4dHM6IHtcbiAgICBkZWZhdWx0OiBzdHJpbmdbXTtcbiAgICBwcm9kdWN0U3BlY2lmaWM/OiB7IFtwcm9kdWN0SWQ6IHN0cmluZ106IHN0cmluZ1tdIH07XG4gIH07XG4gIGJvbGRGaXJzdEJ1dHRvbj86IGJvb2xlYW47XG4gIHR3b1Jvd3NPbk1vYmlsZT86IGJvb2xlYW47XG4gIGFuaW1hdGlvblNwZWVkPzogXCJzdGFuZGFyZFwiIHwgXCJzbG93XCIgfCBcIm5vbmVcIjtcbiAgYnV0dG9uQm9yZGVyUmFkaXVzPzogXCJzbVwiIHwgXCJtZFwiIHwgXCJsZ1wiO1xufVxuXG5pbnRlcmZhY2UgSW1hZ2VQcm9tcHRXaWRnZXRDb25maWdcbiAgZXh0ZW5kcyBCYXNlV2lkZ2V0Q29uZmlnPFdpZGdldFR5cGUuSW1hZ2VQcm9tcHRDYXJkPiB7XG4gIHVybDogc3RyaW5nO1xuICBsaWdodFRleHQ/OiBib29sZWFuO1xuICB0aXRsZTogc3RyaW5nO1xuICBzdWJ0aXRsZTogc3RyaW5nW107XG4gIHN0YXRpY1N1Z2dlc3Rpb25Db3BpZXM6IHN0cmluZ1tdO1xuICB1c2VyUXVlcnlCdXR0b25Db25maWc6IFVzZXJRdWVyeUJ1dHRvbkNvbmZpZztcbiAgZmFsbGJhY2tCYWNrZ3JvdW5kQ29sb3I/OiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBTaW5nbGVJbWFnZVByb21wdFdpZGdldENvbmZpZ1xuICBleHRlbmRzIEJhc2VXaWRnZXRDb25maWc8V2lkZ2V0VHlwZS5TaW5nbGVJbWFnZVByb21wdD4ge1xuICB0aXRsZTogc3RyaW5nO1xuICBzdGF0aWNTdWdnZXN0aW9uQ29waWVzOiBzdHJpbmdbXTtcbiAgdXNlclF1ZXJ5QnV0dG9uQ29uZmlnOiBVc2VyUXVlcnlCdXR0b25Db25maWc7XG59XG5cbmludGVyZmFjZSBTZWFyY2hFbnRyeVBvaW50V2lkZ2V0Q29uZmlnXG4gIGV4dGVuZHMgQmFzZVdpZGdldENvbmZpZzxXaWRnZXRUeXBlLlNlYXJjaFplcm9TdGF0ZUVudHJ5UG9pbnQ+IHtcbiAgc2VhcmNoWmVyb1N0YXRlVmFyaWFudDogU2VhcmNoWmVyb1N0YXRlVmFyaWFudDtcbiAgc2VhcmNoSW5wdXRWYXJpYW50OiBTZWFyY2hJbnB1dFZhcmlhbnQ7XG4gIHNlYXJjaEljb25WYXJpYW50PzogU2VhcmNoSWNvblZhcmlhbnQ7XG4gIHNlYXJjaEljb25TaXplPzogbnVtYmVyO1xuICBzdWdnZXN0aW9uQnV0dG9uQ29uZmlnOiBTdWdnZXN0aW9uQnV0dG9uQ29uZmlnO1xuICBsYXlvdXQ6IFNlYXJjaFplcm9TdGF0ZUxheW91dDtcbiAgc2VhcmNoQm94UGxhY2Vob2xkZXI6IHN0cmluZztcbiAgYW5pbWF0aW9uU3BlZWQ/OiBcInN0YW5kYXJkXCIgfCBcInNsb3dcIiB8IFwibm9uZVwiO1xuICBjb21wYWN0TGFiZWw/OiBzdHJpbmc7XG4gIGluaXRpYWxTdWdnZXN0aW9ucz86IHN0cmluZ1tdO1xuICB1c2luZ1BvcnRhbD86IGJvb2xlYW47XG59XG5cbmludGVyZmFjZSBOb09wV2lkZ2V0Q29uZmlnIGV4dGVuZHMgQmFzZVdpZGdldENvbmZpZzxXaWRnZXRUeXBlLk5vT3A+IHt9XG5pbnRlcmZhY2UgU2VhcmNoT3ZlcmxheUhvc3RXaWRnZXRDb25maWdcbiAgZXh0ZW5kcyBCYXNlV2lkZ2V0Q29uZmlnPFdpZGdldFR5cGUuU2VhcmNoT3ZlcmxheUhvc3Q+IHt9XG5cbmludGVyZmFjZSBTZWFyY2hSZXN1bHRzRW50cnlQb2ludFdpZGdldENvbmZpZ1xuICBleHRlbmRzIEJhc2VXaWRnZXRDb25maWc8V2lkZ2V0VHlwZS5TZWFyY2hSZXN1bHRzRW50cnlQb2ludD4ge1xuICBzZWFyY2hJbnB1dFZhcmlhbnQ6IFNlYXJjaElucHV0VmFyaWFudDtcbiAgc2VhcmNoRmlsdGVyU2lkZWJhclZhcmlhbnQ6IFNlYXJjaEZpbHRlclNpZGViYXJWYXJpYW50O1xuICBwcm9kdWN0R3JpZFZhcmlhbnQ6IFByb2R1Y3RHcmlkVmFyaWFudDtcbiAgc2VhcmNoQm94UGxhY2Vob2xkZXI6IHN0cmluZztcbiAgbm9SZXN1bHRzRm91bmRUZXh0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdpZGdldEhlYWRlclByb3BzIGV4dGVuZHMgVGVzdFByb3BzIHtcbiAgdGl0bGU/OiBzdHJpbmc7XG4gIGxvZ28/OiBzdHJpbmc7XG4gIGxvZ29IZWlnaHQ/OiBudW1iZXI7XG4gIG9yZ1Nob3J0TmFtZTogc3RyaW5nO1xuICB2YXJpYW50PzogU2VhcmNoUHJvbXB0VmFyaWFudDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVc2VyUXVlcnlPcHRpb25zIHtcbiAgZm9vdGVyVmFyaWFudD86IFwic3RhbmRhcmRcIjtcbiAgcmVwbHlCdXR0b25UZXh0Pzogc3RyaW5nO1xuICByZXBseUJ1dHRvbkljb24/OlxuICAgIHwgXCJtYWduaWZ5aW5nR2xhc3NcIlxuICAgIHwgXCJzZW5kXCJcbiAgICB8IFwidGhpbk1hZ25pZnlpbmdHbGFzc1wiXG4gICAgfCBcImFpLXNlYXJjaFwiO1xufVxuXG50eXBlIFNlYXJjaFByb21wdFZhcmlhbnQgPSBcInByaW1hcnlcIjtcbmludGVyZmFjZSBTZWFyY2hQcm9tcHRXaWRnZXRDb25maWdcbiAgZXh0ZW5kcyBCYXNlV2lkZ2V0Q29uZmlnPFdpZGdldFR5cGUuU2VhcmNoUHJvbXB0PiB7XG4gIHZhcmlhbnQ6IFNlYXJjaFByb21wdFZhcmlhbnQ7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGhlYWRlckNvbmZpZzogV2lkZ2V0SGVhZGVyUHJvcHM7XG4gIHN1Z2dlc3Rpb25CdXR0b25zOiB7XG4gICAgdmFyaWFudDogU3VnZ2VzdGlvbkJ1dHRvblZhcmlhbnQ7XG4gICAgaG92ZXJWYXJpYW50OiBTdWdnZXN0aW9uQnV0dG9uVmFyaWFudDtcbiAgICBidXR0b25UZXh0czogc3RyaW5nW107XG4gIH07XG4gIGZvb3RlckNvbmZpZz86IFVzZXJRdWVyeU9wdGlvbnM7XG59XG5cbnR5cGUgUGFnZVZhcmlhbnRCYXNlID0ge1xuICAvLyBVbmlxdWUgaWRlbnRpZmllciBmb3IgZWFjaCBlbnRyeSB3aXRoaW4gdGhlIHBhZ2VWYXJpYW50cy5cbiAgLy8gVXNlZnVsIHRvIGRpZmZlcmVudGlhdGUgd2hpY2ggdmFyaWFudCBpcyBsb2FkZWQgd2hlbiB0aGVyZSBhcmUgbXVsdGlwbGVzIG9mIGEgc2luZ2xlIHR5cGUuXG4gIHZhcmlhbnRJZDogc3RyaW5nO1xuICB3aWRnZXRNb3VudGluZzogV2lkZ2V0TW91bnRpbmdbXTtcbiAgdmFyaWFudFRlc3RzOiBQYWdlVmFyaWFudFRlc3RbXTtcbn07XG5cbnR5cGUgUExQUGFnZVZhcmlhbnQgPSBQYWdlVmFyaWFudEJhc2UgJiB7XG4gIHZhcmlhbnRUeXBlOiBcInBscFwiO1xuICBwbHBJZEV4dHJhY3RvcjogSWRFeHRyYWN0b3I7XG59O1xuXG50eXBlIFBEUFBhZ2VWYXJpYW50ID0gUGFnZVZhcmlhbnRCYXNlICYge1xuICB2YXJpYW50VHlwZTogXCJwZHBcIjtcbiAgcGFyZW50UHJvZHVjdElkRXh0cmFjdG9yPzogSWRFeHRyYWN0b3I7XG4gIHByb2R1Y3RJZEV4dHJhY3RvcjogSWRFeHRyYWN0b3I7XG59O1xuXG50eXBlIFZpc2l0UGFnZVZhcmlhbnQgPSBQYWdlVmFyaWFudEJhc2UgJiB7XG4gIHZhcmlhbnRUeXBlOiBcInBhZ2VfdmlzaXRcIjtcbn07XG5cbnR5cGUgT3RoZXJQYWdlVmFyaWFudCA9IFBhZ2VWYXJpYW50QmFzZSAmIHtcbiAgdmFyaWFudFR5cGU6IFwib3RoZXJcIjtcbn07XG5cbnR5cGUgSG9tZVBhZ2VWYXJpYW50ID0gUGFnZVZhcmlhbnRCYXNlICYge1xuICB2YXJpYW50VHlwZTogXCJob21lcGFnZVwiO1xufTtcblxudHlwZSBTZWFyY2hQYWdlVmFyaWFudCA9IFBhZ2VWYXJpYW50QmFzZSAmIHtcbiAgdmFyaWFudFR5cGU6IFwic2VhcmNoXCI7XG59O1xuXG5leHBvcnQgdHlwZSBQYWdlVmFyaWFudENvbmZpZyA9XG4gIHwgUExQUGFnZVZhcmlhbnRcbiAgfCBQRFBQYWdlVmFyaWFudFxuICB8IFZpc2l0UGFnZVZhcmlhbnRcbiAgfCBPdGhlclBhZ2VWYXJpYW50XG4gIHwgSG9tZVBhZ2VWYXJpYW50XG4gIHwgU2VhcmNoUGFnZVZhcmlhbnQ7XG5cbmV4cG9ydCB0eXBlIE9yZ1BhZ2VDb25maWcgPSB7XG4gIC8vIHBhZ2VWYXJpYW50cyBpcyBhIGxpc3Qgb2YgcGFnZSB2YXJpYW50cyB0aGF0IHdlIHN1cHBvcnQuXG4gIHBhZ2VWYXJpYW50czogUGFnZVZhcmlhbnRDb25maWdbXTtcbiAgLy8gd2lkZ2V0Q29uZmlncyBpcyBhIG5hbWVkIHNldCBvZiB3aWRnZXQgY29uZmlnc1xuICB3aWRnZXRDb25maWdzOiBSZWNvcmQ8c3RyaW5nLCBXaWRnZXRDb25maWc+O1xuICBtb3VudGluZ0NvbmZpZ3M6IFJlY29yZDxzdHJpbmcsIFdpZGdldE1vdW50aW5nQ29uZmlnPjtcbn07XG5cbmludGVyZmFjZSBPcmdDb25maWdDb250ZXh0VHlwZSB7XG4gIG9yZ1VJQ29uZmlnOiBPcmdVSUNvbmZpZztcbn1cblxuZXhwb3J0IHR5cGUgT3JnQ29uZmlnID0gT3JnVUlDb25maWc7XG5cbmV4cG9ydCB7XG4gIENhdGVnb3J5RXh0cmFjdG9yVHlwZSxcbiAgQ29sb3JOYW1lcyxcbiAgY29sb3JWYXIsXG4gIFBhZ2VWYXJpYW50VGVzdFR5cGUsXG4gIFdpZGdldFR5cGUsXG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEVudml2ZUNvbmZpZyB7XG4gIGFtcGxpdHVkZUFwaUtleT86IHN0cmluZztcbiAgZGF0YVJlc2lkZW5jeT86IHN0cmluZztcbiAgZW52Pzogc3RyaW5nO1xuICBiYXNlVXJsPzogc3RyaW5nO1xuICByZWFjdEFwcE5hbWU/OiBzdHJpbmc7XG4gIGNkblVybD86IHN0cmluZztcbiAgY29udGV4dFNvdXJjZT86IHN0cmluZztcbiAgb3JnTGV2ZWxBcGlLZXk/OiBzdHJpbmc7XG4gIG9yZ1Nob3J0TmFtZT86IHN0cmluZztcbiAgaWRlbnRpZnlpbmdQcmVmaXg/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIHtcbiAgQ2F0ZWdvcnlFeHRyYWN0b3IsXG4gIENoYXRNZXNzYWdlVmFyaWFudCxcbiAgQ2hhdE1lc3NhZ2VDb25maWcsXG4gIENoYXRQcmV2aWV3Q29uZmlnLFxuICBDaGF0UHJldmlld0lzTG9hZGluZ1dpZGdldENvbmZpZyxcbiAgQ2hhdFByZXZpZXdQb3N0SW50ZXJhY3Rpb25XaWRnZXRDb25maWcsXG4gIENoYXRQcmV2aWV3UHJvZHVjdENvbXBhcmlzb25XaWRnZXRDb25maWcsXG4gIENoYXRQcmV2aWV3U3VnZ2VzdGlvbkJ1dHRvbkNvbmZpZyxcbiAgU29jaWFsUHJvb2ZWMldpZGdldENvbmZpZyxcbiAgQ2hhdFByZXZpZXdIZWFkZXJWMkNvbmZpZyxcbiAgQ2hhdFByZXZpZXdWMldpZGdldENvbmZpZyxcbiAgQ2hhdFByZXZpZXdGb290ZXJDb25maWcsXG4gIENoYXRQcmV2aWV3SGVhZGVyQ29uZmlnLFxuICBDaGF0UHJldmlld1dpZGdldENvbmZpZyxcbiAgQ2hhdFByZXZpZXdWYXJpYW50LFxuICBDb2xvck1hcHBpbmcsXG4gIEN1c3RvbWVyU2VydmljZUludGVncmF0aW9uLFxuICBGbG9hdGluZ0VudHJ5UG9pbnRDb25maWcsXG4gIEZ1bGxDdXN0b21lclNlcnZpY2VJbnRlZ3JhdGlvbixcbiAgSWRFeHRyYWN0b3IsXG4gIEltYWdlQmFubmVyV2lkZ2V0Q29uZmlnLFxuICBJbWFnZVByb21wdFdpZGdldENvbmZpZyxcbiAgSW5zZXJ0aW9uUG9pbnQsXG4gIE11bHRpSW1hZ2VDb25maWcsXG4gIE9yZ0NvbmZpZ0NvbnRleHRUeXBlLFxuICBPcmdVSUNvbmZpZyxcbiAgUGFnZUNhcmRDb25maWcsXG4gIFBhZ2VDYXJkVmFyaWFudCxcbiAgUGFnZUNhcmRIb3ZlclZhcmlhbnQsXG4gIFBhZ2VDYXJkSWNvblZhcmlhbnQsXG4gIFByb2R1Y3RDYXJkQ29uZmlnLFxuICBQcm9kdWN0Q2FyZFZhcmlhbnQsXG4gIFByb2R1Y3RDYXJkTGF5b3V0VmFyaWFudCxcbiAgUHJvZHVjdENhcmRIb3ZlclZhcmlhbnQsXG4gIFByb2R1Y3RMaW5rSG92ZXJWYXJpYW50LFxuICBQcm9kdWN0TGlua0ljb25WYXJpYW50LFxuICBQcm9kdWN0TGlua1ZhcmlhbnQsXG4gIFByb2R1Y3RSZXZpZXdDb25maWcsXG4gIFByb2R1Y3RSZXZpZXdTdHlsZVZhcmlhbnQsXG4gIFByb2R1Y3RSZXZpZXdDb2xvclZhcmlhbnQsXG4gIFNlYXJjaFByb21wdFZhcmlhbnQsXG4gIFNlYXJjaFByb21wdFdpZGdldENvbmZpZyxcbiAgU2VhcmNoUmVzdWx0c0VudHJ5UG9pbnRXaWRnZXRDb25maWcsXG4gIFNob3dGbG9hdGluZ0J1dHRvbk9wdGlvbnMsXG4gIFNpbmdsZUltYWdlUHJvbXB0V2lkZ2V0Q29uZmlnLFxuICBTZWFyY2hFbnRyeVBvaW50V2lkZ2V0Q29uZmlnLFxuICBTZWFyY2hPdmVybGF5SG9zdFdpZGdldENvbmZpZyxcbiAgU29jaWFsUHJvb2ZDb25maWcsXG4gIFN1Z2dlc3Rpb25CYXJXaWRnZXRWMkNvbmZpZyxcbiAgU3VnZ2VzdGlvbkJ1dHRvbkNvbmZpZyxcbiAgU3VnZ2VzdGlvbkJ1dHRvblZhcmlhbnQsXG4gIFVSTFRlc3QsXG4gIFVzZXJRdWVyeUJ1dHRvbkNvbmZpZyxcbiAgVXNlclF1ZXJ5QnV0dG9uSWNvbixcbiAgV2VsY29tZVNlY3Rpb25Db25maWcsXG4gIFdlbGNvbWVTZWN0aW9uVmFyaWFudCxcbiAgV2VsY29tZVNlY3Rpb25Db2xvclZhcmlhbnQsXG4gIFdpZGdldENvbmZpZyxcbiAgV3JhcHBpbmdFbGVtZW50LFxuICBTZWFyY2hDYXJkVmFyaWFudCxcbiAgV2lkZ2V0RGlzcGxheVRlc3RzLFxuICBOb09wV2lkZ2V0Q29uZmlnLFxuICBXaWRnZXRNb3VudGluZyxcbiAgU3RhdGljV2lkZ2V0TW91bnRpbmcsXG4gIER5bmFtaWNXaWRnZXRNb3VudGluZyxcbiAgUERQUGFnZVZhcmlhbnQsXG4gIFBMUFBhZ2VWYXJpYW50LFxuICBWaXNpdFBhZ2VWYXJpYW50LFxuICBPdGhlclBhZ2VWYXJpYW50LFxuICBIb21lUGFnZVZhcmlhbnQsXG4gIFNlYXJjaFBhZ2VWYXJpYW50LFxuICBOdW1Sb3dzLFxufTtcbiIsImltcG9ydCB7IEN1c3RvbWVyU2VydmljZVByb3ZpZGVyIH0gZnJvbSBcIkBzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudFwiO1xuXG5leHBvcnQgZW51bSBDdXN0b21lclNlcnZpY2VUeXBlIHtcbiAgc2hvcGlmeSA9IFwic2hvcGlmeVwiLFxuICBnb3JnaWFzID0gXCJnb3JnaWFzXCIsXG4gIGt1c3RvbWVyID0gXCJrdXN0b21lclwiLFxuICBncm9vdmUgPSBcImdyb292ZVwiLFxuICB0aWRpbyA9IFwidGlkaW9cIixcbiAgem93aWUgPSBcInpvd2llXCIsXG4gIHJlZG8gPSBcInJlZG9cIixcbiAgZ2xhZGx5ID0gXCJnbGFkbHlcIixcbiAgcmljaHBhbmVsID0gXCJyaWNocGFuZWxcIixcbiAgemVuZGVzayA9IFwiemVuZGVza1wiLFxuICB1bnN1cHBvcnRlZCA9IFwidW5zdXBwb3J0ZWRcIixcbn1cbmV4cG9ydCBlbnVtIEN1c3RvbWVyU2VydmljZUludGVncmF0aW9uTW9kZSB7XG4gIG5vbmUgPSBcIm5vbmVcIixcbiAgc2ltcGxlID0gXCJzaW1wbGVcIixcbiAgZnVsbCA9IFwiZnVsbFwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbWVyU2VydmljZUludGVncmF0aW9uIHtcbiAgcHJvdmlkZXI6IEN1c3RvbWVyU2VydmljZVByb3ZpZGVyO1xuICBzdXBwb3J0ZWRJbnRlZ3JhdGlvbk1vZGVzOiBDdXN0b21lclNlcnZpY2VJbnRlZ3JhdGlvbk1vZGVbXTtcbiAgYWxsb3dGaWxlVXBsb2FkPzogYm9vbGVhbjtcbiAgbWF4ZmlsZVVwbG9hZFNpemU/OiBudW1iZXI7XG4gIC8vIFRPRE86IFJlbW92ZSB0aGlzIG1ldGhvZCB3aGVuIG1pZ3JhdGluZyBvdGhlciBwcm92aWRlcnMgdG8gdGhlIG5ldyB1bmlmaWVkIENYIGJ1dHRvbi5cbiAgb25Td2l0Y2hUb0FnZW50OiAoKSA9PiB2b2lkO1xuICBpc0VuYWJsZWQ6ICgpID0+IGJvb2xlYW47XG4gIGlzQnVzaW5lc3NIb3VyczogKGFwaUtleT86IHN0cmluZywgYXBpRW5kcG9pbnQ/OiBzdHJpbmcpID0+IFByb21pc2U8Ym9vbGVhbj47XG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxJQUFLLG9EQUFMO0FB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
|