@cimplify/cli 0.7.11 → 0.7.12
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/{add-3CEDUXNO.mjs → add-BCQCRULA.mjs} +1 -1
- package/dist/{chunk-ZFCWAYK2.mjs → chunk-NYRKS2ZC.mjs} +1 -1
- package/dist/{chunk-DAE3YSKU.mjs → chunk-R6TUXVFC.mjs} +320 -8
- package/dist/{chunk-XB4MMPXC.mjs → chunk-ZSO64OIW.mjs} +2 -2
- package/dist/dispatcher.mjs +9 -9
- package/dist/{doctor-A3YU5YOX.mjs → doctor-4FTJFRJK.mjs} +2 -2
- package/dist/{explain-WZQTCB3C.mjs → explain-6FFAG3OD.mjs} +1 -1
- package/dist/{introspect-2GJIQ6CP.mjs → introspect-2I2MHUMW.mjs} +2 -2
- package/dist/{list-F3LBI7HF.mjs → list-Y7AZYDWJ.mjs} +1 -1
- package/dist/{update-PINBW3NG.mjs → update-SBYEU77K.mjs} +1 -1
- package/package.json +2 -2
- package/templates/storefront-auto/middleware.ts +39 -0
- package/templates/storefront-auto/package.json +1 -1
- package/templates/storefront-bakery/middleware.ts +39 -0
- package/templates/storefront-bakery/package.json +1 -1
- package/templates/storefront-fashion/middleware.ts +39 -0
- package/templates/storefront-fashion/package.json +1 -1
- package/templates/storefront-grocery/middleware.ts +39 -0
- package/templates/storefront-grocery/package.json +1 -1
- package/templates/storefront-pharmacy/middleware.ts +39 -0
- package/templates/storefront-pharmacy/package.json +1 -1
- package/templates/storefront-restaurant/middleware.ts +39 -0
- package/templates/storefront-restaurant/package.json +1 -1
- package/templates/storefront-retail/middleware.ts +39 -0
- package/templates/storefront-retail/package.json +1 -1
- package/templates/storefront-services/middleware.ts +39 -0
- package/templates/storefront-services/package.json +1 -1
|
@@ -671,7 +671,46 @@ export const brand: Brand = {
|
|
|
671
671
|
* the root layout prerenderable.
|
|
672
672
|
*/
|
|
673
673
|
export const SITE_URL = "https://example.com";
|
|
674
|
-
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed retail --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed retail",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.65.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS40LjEiLCAiIiwge30sICJzaGE1MTItUDVMVU5odGJqNllmSTNpSmp3NUVMOWVVQUc2T2l0RDBXM2ZXUWNwUWpEUmMvUUlzTDB0Uk51TzFQY0R2UGNjV0wxZlNUWFhkRTFkcytsOTVEVi9PRkE9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzAuMCIsICIiLCB7fSwgInNoYTUxMi1pYkQydXN4OUpSdTdmNXB1MnRNS01JNGNwQTROZ1hKUW9ZUlA0cFE3UHhtbjFsNmsvNTNxV3RRV1pheWhZeTNYNFFaa3Q5ME90K21KRWFlWG91aW82UT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjEiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZkpJM0kwcjNDM09qL3pkQkNwYUNtQlJaWWYwN3hwYXE0eUNmRERvU0ZtK2JlV056YklsMjZwdVc4UnJhVWR1Z29Kdy85NXplck5PbjZqYXNBaHpTbWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWNLbkFoV0VzVjdUUGNBLzVFQXRlRHA2S2NKWkJRMkcrQnFFN3pheU1NaTdrTXZ3UnNidjdXVDlhT25uMFdObDRTS0VJZjQzdmpTMzFpVVB1ODBuelhnPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZS3JWd1FqSVJCUG8rNUcvdTAzd0dqYmR5NHE3cHl6Q2U5M0RLOVZKN3prVm1lZzhMSjdHYmdzaUhXZFI0eFNvZTRDQVhSRDdCY2pnYnRyNjRia1hOZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItei9vQnNSRW80NlNzRnFCd1l0RmUwa3BKZUJpakFUNDhPL1dYTEk0c3VpQ0xCa3IwM1JUdFRKTUN6U2REZDJ6bmxoOFZKaXpMMDlYVmtRZ2s4SVpvbnc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItaWs4cTdHTTExenh2WXhGYzJQZURjVDZUQnZoQ1FNYVV4ZnBoL001bDlzS3VUcy9TamczTCtCeXcwRjd3MFpWTEJabXgzMFArZ0cwRUN6ek4rTUZjbVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItUW9TeDJFa3lycmRaNmtjeUU4c3RxWjYydDBZcmE4RnM1aWE5bE94SnJoNlRNUUpLN2dRS21zY2RUSGY3cE9YS1JFS3JWd090SmNRRzNxVlNmYzg2NkE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi11d053RnB3S2VOaVphd2ZBV0JnZzBWSXp0UFRWM2loaGgxdlYzMzRoOWl2bk5Mb3J4blFNVTZGejh3RzFaYjRRaDlMQzEvTWtjeVQzWWxEWEczUnNnZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi16WTFidWw3T1dyN0RGQmlKKyt3b2ZYdm5yOEI0NWNlM1FzUVVoS3JJaFhzeWdBaDdiVGt3eWVNMWJpMWEyZzVDL3lDL044VFp5R0RFb01mbS9sOW1wZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi0wZnJsc1QvZjRGdDZJN1NNRVNUS25GM2Nac2RpY1FuMWRDTWtGL2pUOXdETEUrZ0dvaVFmdjFubVQ5ZStzN3MvZmVrdnZ5NnRaTTJqSHZJMnRrYkpEUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjEiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1YQUJWbUdwOVRnMFdzcFRWdndkdVRjNGZwcXk2Sm5BVXJTUWU2T3V5cUQvMDNuSTdyME85T1dVa01Jd0ZyaktBSXFvbHZxb0E0WnJKcHBnd0UwR3htdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLWJWNGZ6c3d1elZjS0Q5MG8vVk02UXFLeG54bERxMGcyQklTRExOVm14cm5ocHYxRERieVBoQ0lqWWZ2ellMVitNdmtLS25RdDJRNkFPODZTRUJVTFVRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4xIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLS9NaDBaaHEzT1A3ZlZzMGtjUUhaUDZsWkV0aE1HVGFTZjhVQlFZU0ZFWkRXR1hYbEVDK25KNkVxZW5hSzJ0NExCWE1lM0ErSy9HMkJWWFhkdE9yNFBRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItKzF4YzlYNDVsOHVmc0JBbTZHanZ4MnFEUklZOWxUVnQwY2dXTmNKKzFnZGhYdmtieGVQQTYweVJUd1NUdVhMMDlDTWh5Sm1qcFY3RTNOb3l4YnFGUVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4xIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0xRCtVcVpkZm51UitKeTFHZ01Kd2k4NWJENDBIMjF1Tm1PUFJXUWh3NG9SU3VvbFovQjVyaXhaNDVESzJLWE9UQ3ZtVkNlY2F1V2dFaGJ3OGJJN3RPdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUlOQXljYVd1aGxPSzN3azRtUkhHc2Rnd1lXbWQ5Y0NoZFBkRTlid1dteTZybjlWcVZOWU5GR2hPZFhyb2ZYVXh3SEluY1NpUE5iOHRObThrbkRWSWVRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS42IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItN0VIRHF1UHRoQUxTVjBqaGhqZ0VXOEZYYXZpTXg3clNxdThXNm9xQ29BdU9oS292ODE0UDk5UURWMXB4TUEzUVB2MjFZdWR2Sm5nSWhqck5JNG9wTGc9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi1NQ0ZjNjNjek1qRUluT2xjWTJjcFFDdkNOK0tnYkFuKzYweHU5Y01nUDRzS2FMQzVKTkFLdzdKSDhRZEFub0FDODhoVzFJaVNOWitHZ1ZYbE4xVWNNUT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLWg1U3hEL0l6TmhaWW5yU1pSc1VaUUlDK3ZEMEdZOGNVdnEwaXdzbWtGS2l4UkNLTExXcUNYYS9GSVE0UzFSK3NJK1BHb29qa0hzZE5yYlppTTlRcGd3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItbk9QQ21uMit5RDBaTm1LZHNYR3YvVXhNTVdiTXVLZUQ2R3lZbmNOd2RrWUR4cFF2clBTS1lqMnJXdURqQzJZNGI2dzZoamlwNWRCS0Z6RVV1WmUzdkE9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1ZaHNkRTZ4QVZmVERtemp4TDJaRFV2amorWnNneU9LZStUZFF6cWtENzJ3SU9tSGthOE51R1E2TnBUTlp2OUQyWjYzZmJ3V0tKUGVWcEV3NEVRZ1l4dz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNiIsICIiLCB7fSwgInNoYTUxMi1KRkt4TXg2dWRod0toL0xkbzI3MGUxN1FYNzEwdmd1bk1rdVBBdlhqSFN2QzZvcUxXQUhoVmhqZy9JNzFxMHUwQ0JTRXJJT0RWMUtqdjBGUU5TV2pkZz09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItRnhJWStVODFSM0xHS0N4YUhIRlJRNStnNi9pUmdHTG1lSFdkcDJBbWo0bGpRUnJFSVdIbVp5RGZEWUJSWmxweXFBN3FLeHRTOUREMWRoazhSblJJVlE9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItbUxDTmJyUWxpMTFLMXlTVW11TnQ0WlVCM09wR0lEcTRxMnZUQlRmNWNMMmxwc1JqSTlRS3FTRDBuZGpXOEZ5dmNXL0pqNDZnTWU5c3l5SEFzdk1hL0E9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjMiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLTV4b0RmWCtmTDdmYUFUbmFnbVdQcGJGdHdoL1I3N1dtTU1xcUhHUzY1QzN2dkIwWUhyZ0YrQjFZbVozNDQxdE1qNW42M2swMjEyWE5vSnd6bGhmZlF3PT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwb3N0Y3NzIjogWyJwb3N0Y3NzQDguNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy4xMiIsICJwaWNvY29sb3JzIjogIl4xLjEuMSIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjIuMSIgfSB9LCAic2hhNTEyLUZmUjhzamQ0ZW0yVDZmYjNJMk13QUpVN0hXVk1yOXpiYStlbm1RZWVXRmZDYm0rVU9DLzBYNERTOFh0cFVUTXdXTUdiaktZUDd4amZOZWt6eUdtQjNBPT0iXSwKCiAgICAicmVhY3QiOiBbInJlYWN0QDE5LjIuNiIsICIiLCB7fSwgInNoYTUxMi1zZldHR2ZhdmkweHI4UGcwc1ZzeUhNQU96aVZZS2dQTE5yUzdpZytpdk1OYjN3YkNCdzNLeHRmbHNHQkF3RDNnWVFsRS9BRVpzVExnVG9SclNDamIwUT09Il0sCgogICAgInJlYWN0LWRheS1waWNrZXIiOiBbInJlYWN0LWRheS1waWNrZXJAOS4xNC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS40LjEiLCAiQHRhYmJ5X2FpL2hpanJpLWNvbnZlcnRlciI6ICIxLjAuNSIsICJkYXRlLWZucyI6ICJeNC4xLjAiLCAiZGF0ZS1mbnMtamFsYWxpIjogIjQuMS4wLTAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0xNi44LjAiIH0gfSwgInNoYTUxMi10QmFvRFdqUHdlME01cEdydW00SDBTUjZMeWsrQk85b0hucDlKYktwR0tXMm1scmFOUGdQOUJNZnNnNXBXcHdyc3NBUm1lcWs3WUJsMm9YdXRaVGFIQT09Il0sCgogICAgInJlYWN0LWRvbSI6IFsicmVhY3QtZG9tQDE5LjIuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzY2hlZHVsZXIiOiAiXjAuMjcuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTkuMi42IiB9IH0sICJzaGE1MTItMHByTUkraHZCYlBqc1dueERMeGxDR3lNOFBONlV1V2pFVUNZbVpoTzY3eElWOVhhc2Evci92RG5xK1h5cTRMbzI3ZzhRU2JPNVl6QVJ1MEQxU3BzM2c9PSJdLAoKICAgICJyZXF1aXJlLWRpcmVjdG9yeSI6IFsicmVxdWlyZS1kaXJlY3RvcnlAMi4xLjEiLCAiIiwge30sICJzaGE1MTItZkd4RUk3K3dzRzl4cnZkanNybG1MMjJPTVRUaUhSd0FNcm9pRWVNZ3E4Z3pvTEMvUFFyN1JzUkRTVExVZy9iWkFadEYrVFZJa0hjNi80UklLcnVpK1E9PSJdLAoKICAgICJyZXNlbGVjdCI6IFsicmVzZWxlY3RANS4yLjAiLCAiIiwge30sICJzaGE1MTItQWdaM1VPWm0zWW5kZnJKNE9ZamdyVDdibUNtLzFpcWtqdkVmSC9vWWp6aDZQRDJxdzRRdVQzampuWElycGR0NE1UcE1YY2xNVDNsWGJtUlkrWFJha3c9PSJdLAoKICAgICJyb2xsZG93biI6IFsicm9sbGRvd25AMS4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQG94Yy1wcm9qZWN0L3R5cGVzIjogIj0wLjEzMC4wIiwgIkByb2xsZG93bi9wbHVnaW51dGlscyI6ICJeMS4wLjAiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZnJlZWJzZC14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtbXVzbCI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1wcGM2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgteDY0LW11c2wiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzItYXJtNjQtbXN2YyI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2YyI6ICIxLjAuMSIgfSwgImJpbiI6IHsgInJvbGxkb3duIjogImJpbi9jbGkubWpzIiB9IH0sICJzaGE1MTItWDBLUUhsak5uRWtXTnFxaXo5ekpyR3VuaDFCMEhnT3hMWHZuRnBDT2NhZHpjeTVxb2haM3RxTUVVZzAwdm5jb1Jvdlh1SzNacUNUOUtubkt6b0luRlE9PSJdLAoKICAgICJyeGpzIjogWyJyeGpzQDcuOC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjEuMCIgfSB9LCAic2hhNTEyLWRoS2Y5MDNVL1BRWlk2Ym9OTnRBR2RXYkc4NVdBYmpULzF4WW9aSUM3RkFZMHlXYXBPQlFWc1ZyRGw1OFc4Ni8vZTFWcE1OQnRSVjRNYVhmZE15U0ZBPT0iXSwKCiAgICAic2NoZWR1bGVyIjogWyJzY2hlZHVsZXJAMC4yNy4wIiwgIiIsIHt9LCAic2hhNTEyLWVOditXclZiS3UxZjN2YllKVC94dGlGNXN5QTVIUElNdGY5SWdZL25LZzBzV3F6QVVFdnFZL3htN09jWmMvcWFmTHgvaU85RmdPbWVTQXA0djV0aS9RPT0iXSwKCiAgICAic2VtdmVyIjogWyJzZW12ZXJANy44LjAiLCAiIiwgeyAiYmluIjogeyAic2VtdmVyIjogImJpbi9zZW12ZXIuanMiIH0gfSwgInNoYTUxMi1BY003ZFYvNXVsNEVla29RMjlBZ201dnJpOEpOcVJ5ajM5bzBxcFg2dkRGMkdacnR1dFpsNVJ3Z0QxWG5aamlUQWZuY3NKaE1JNDhRUUgzc044N1lOQT09Il0sCgogICAgInNoYXJwIjogWyJzaGFycEAwLjM0LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGltZy9jb2xvdXIiOiAiXjEuMC4wIiwgImRldGVjdC1saWJjIjogIl4yLjEuMiIsICJzZW12ZXIiOiAiXjcuNy4zIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWRhcndpbi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtczM5MHgiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGludXgtYXJtIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXBwYzY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4bXVzbC1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eG11c2wteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdhc20zMiI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1pYTMyIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLXg2NCI6ICIwLjM0LjUiIH0gfSwgInNoYTUxMi1PdTlJNUZ0OVdOY0NiWHJVOWNNZ1BCY0NLOExpd0xxY2J5d1czdDRvRFYzN24xcHpwdU5Mc1lpQVY4ZU9EbmpidFFsU0R3WjJjVUVlUXo0RTU0SGx0Zz09Il0sCgogICAgInNoZWxsLXF1b3RlIjogWyJzaGVsbC1xdW90ZUAxLjguMyIsICIiLCB7fSwgInNoYTUxMi1PYm1uSUY0aFhOZzFCcWhuSG1nYkRFVEY4ZExQQ2dnWldCamtRZmhacGJzelpuWXVyNURVbGpUY0NIaWk1TEMzSjVFMHllTy8xTElNeUgrVXZIUWd5dz09Il0sCgogICAgInNpZ2luZm8iOiBbInNpZ2luZm9AMi4wLjAiLCAiIiwge30sICJzaGE1MTIteWJ4MFdPMS84YlNCTEVXWFp2RWQ3Z01XM1NuM0pGbFczVHZYMW5SRWJETFJOUU5hZU5OOFdLMG1lQndQZEFhT0k3VHRSUlJKbi9FczF6aHJyQ0h1N2c9PSJdLAoKICAgICJzb3VyY2UtbWFwIjogWyJzb3VyY2UtbWFwQDAuNi4xIiwgIiIsIHt9LCAic2hhNTEyLVVqZ2FwdW1XbGJNaGtCZ3pUN1lrYzVZWFVUNDZGMGlLdThTR1hxMGJjd1A1ZHovaDBQbGo2ZW5KcWp6MVpicTJsNVdhcVluclZid1dPV015RjNGNDdnPT0iXSwKCiAgICAic291cmNlLW1hcC1qcyI6IFsic291cmNlLW1hcC1qc0AxLjIuMSIsICIiLCB7fSwgInNoYTUxMi1VWFdNS2hMT3dWS2I3MjhJVXRRUFh4ZllVK3VzZHlidFVySy84dUdFOENRTXZyaE9wd3Z6REJ3ajBRaFNMN01RYzd2SXNJU0JHOFZROCtJRFF4cGZRQT09Il0sCgogICAgInNvdXJjZS1tYXAtc3VwcG9ydCI6IFsic291cmNlLW1hcC1zdXBwb3J0QDAuNS4yMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJidWZmZXItZnJvbSI6ICJeMS4wLjAiLCAic291cmNlLW1hcCI6ICJeMC42LjAiIH0gfSwgInNoYTUxMi11QkhVM0wzY3pzSXlZWEtYODhmZHJHb3Z4ZFNDb1RHRFJaNlNZWHRTUnhMWlV6SGc1UC82Nkh0NnVvVWxIdTlFWm9kK2luWGhLbzNxUWd3WFVUL3kxdz09Il0sCgogICAgInN0YWNrYmFjayI6IFsic3RhY2tiYWNrQDAuMC4yIiwgIiIsIHt9LCAic2hhNTEyLTFYTUpFNWZRbzFqR0g2WS83ZWJud1BPQkVrSUVuVDRRRjMyZDVSMStWWGRYdmVNMElCTUp0OHpmYXhYMVAzUWhWd3JZZSs1NzYramtBTnRTUzJtQmJ3PT0iXSwKCiAgICAic3RkLWVudiI6IFsic3RkLWVudkA0LjEuMCIsICIiLCB7fSwgInNoYTUxMi1ScTd5YmNYMlJ1QzU1cjlvYVBWRVc3L3h1M3RqOHU0R2VCWUhCV0N5Y2hGdHpNSXI4NkE3ZTNQUEVCUFQzN3NIU3RLWDMrVGlYL0ZyL0FDbUpMVmxMUT09Il0sCgogICAgInN0cmluZy13aWR0aCI6IFsic3RyaW5nLXdpZHRoQDQuMi4zIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImVtb2ppLXJlZ2V4IjogIl44LjAuMCIsICJpcy1mdWxsd2lkdGgtY29kZS1wb2ludCI6ICJeMy4wLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiIH0gfSwgInNoYTUxMi13S3lRUlFwakowc0lwNjJFclNaZEdzak1KV3NhcDVvUk5paEhodTZHN0pWTy85aklCNlV5ZXZMK3RYdU9xcm5nOGovY3hLVFd5V1V3dlNUcmlpWnovZz09Il0sCgogICAgInN0cmlwLWFuc2kiOiBbInN0cmlwLWFuc2lANi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1yZWdleCI6ICJeNS4wLjEiIH0gfSwgInNoYTUxMi1ZMzhWUFNIY3FrRnJDcEZuUTl2dVNYbXF1dXY1b1hPS3BHZVQ2YUdycjNvM0djOUFsVmE2SkJmVVNPQ25ieEdHWkYrLzBvb0k3S3JQdVVTenRVZFU1QT09Il0sCgogICAgInN0eWxlZC1qc3giOiBbInN0eWxlZC1qc3hANS4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY2xpZW50LW9ubHkiOiAiMC4wLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0gMTYuOC4wIHx8IDE3LngueCB8fCBeMTguMC4wLTAgfHwgXjE5LjAuMC0wIiB9IH0sICJzaGE1MTItcVNWeURUZU1vdGR2UVlvSFdMTkd3UkZKSEMraStadmRCUllvc09GZ0MrV2cxdng0ZnJOMi9SRy9OQTdTWXFxdktOTGYzOVAyTFNSQTJwdTZuMFhZWkE9PSJdLAoKICAgICJzdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JAOC4xLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItTXBVRU4yT29kdFV6eHZLUWw3MmNVRjdSUTVFaUhzR3ZTc1ZHMGlhOWM1UmJXR0wyQ0k0QzdFcFBTOFVUQklwbG5selppTnVWNTZ3K0Z1Tnh5M3R5MlE9PSJdLAoKICAgICJ0YWlsd2luZC1tZXJnZSI6IFsidGFpbHdpbmQtbWVyZ2VAMy42LjAiLCAiIiwge30sICJzaGE1MTItdXhMN3FBVlFyaXFSUVBBeUszcGo2NlZxc2tXcW9aMzdQVzk0andPVHdOZnEvejlveXUxVitlcXJacXRSMitmQ2lYZFlPWmUvTW9kdDhHdHZxTnp1K3c9PSJdLAoKICAgICJ0YWlsd2luZGNzcyI6IFsidGFpbHdpbmRjc3NANC4zLjAiLCAiIiwge30sICJzaGE1MTIteTZueE1HQjFuTVc5UjZrOTZlNWdkSUZ6Y2ZML2dUSlJOYXFHZXMxWXZrTG5QVlh6V2dicUZGMnlMQzBUOEc3NzRuMjRjeDNQZThYcktvbmlDT0FIK1E9PSJdLAoKICAgICJ0YXBhYmxlIjogWyJ0YXBhYmxlQDIuMy4zIiwgIiIsIHt9LCAic2hhNTEyLXV4Yy96cHFGZzZ4N0M4dk9FN2xoNkxiZGE4ZUVMOXptVm0vUExlVFBCUmhoMXhDZ2RXYVErSjFDVWllR3BJZm0ySGR0c1VwUnYrSHNoaWFzQk1jYzZBPT0iXSwKCiAgICAidGVyc2VyIjogWyJ0ZXJzZXJANS4xNi45IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiAiXjAuMy4yIiwgImFjb3JuIjogIl44LjUuMCIsICJjb21tYW5kZXIiOiAiXjIuMjAuMCIsICJzb3VyY2UtbWFwLXN1cHBvcnQiOiAifjAuNS4yMCIgfSwgImJpbiI6IHsgInRlcnNlciI6ICJiaW4vdGVyc2VyIiB9IH0sICJzaGE1MTItSFBhL0ZkVEI5WEdJMkgxL2tlTEZaSHhsNldOdkFJNFlhbEhHdERRVGxNbkpjb3FTYWIxVXdMNGwxaEdFaHM2L0dtTEhCWklnL1lnQisramNiem9PRWc9PSJdLAoKICAgICJ0aW55YmVuY2giOiBbInRpbnliZW5jaEAyLjkuMCIsICIiLCB7fSwgInNoYTUxMi0wK0RVdnFXTVZhbExtaGE2bHI0a0Q4aUFNSzFIelYwL2FLbkN0V2I5djk2NDFUblAvTUZiN1BjMmJ4b3hRalRYQUVycnlYVmdVT2Z2MllxTmxscUdlZz09Il0sCgogICAgInRpbnlleGVjIjogWyJ0aW55ZXhlY0AxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1kQXFTcUUvUmFicEJLSTgraDI2R2ZMcTZWYjNKVlhzMzBYWVFqZE1qYWovYzJ0UzhJWVlNYkl6UDU5OUt0Umo3YzU3L3dZQXBiM1FqZ1JnWG1yQ3VrQT09Il0sCgogICAgInRpbnlnbG9iYnkiOiBbInRpbnlnbG9iYnlAMC4yLjE2IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImZkaXIiOiAiXjYuNS4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiIH0gfSwgInNoYTUxMi1wbjk5VmhvQUNZUjhuRkhoeHFpeCt1dnNiWGluZUFhc1dtNW9qWG9OOHhFd0s1S2QzL1RyaE5uMXdCeXVENTJVeFdSTHk4cHUra1JNbmlFaTZFcTlaZz09Il0sCgogICAgInRpbnlyYWluYm93IjogWyJ0aW55cmFpbmJvd0AzLjEuMCIsICIiLCB7fSwgInNoYTUxMi1CZitJTG1CZ3JldFVyZEp4elhNMFNnWExaM1hmaWFVdU9qL0lLUUh1VFhpcCswNVhuK3V5RVlkVmcwa1lEaXBUQmNMckNWeVV6QVB6N1FtQXJiMG1tdz09Il0sCgogICAgInRyZWUta2lsbCI6IFsidHJlZS1raWxsQDEuMi4yIiwgIiIsIHsgImJpbiI6IHsgInRyZWUta2lsbCI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1MME9ycGk4cUdwUkcvL05kK0g5MHZGQiszaUhudWUxelNTR21OT09DaDFHTEo3clVLVndWMkh2aWpwaEdRUzJVbWhVWmV3UzlWZ3Z4WUlkZ3IrZkcxQT09Il0sCgogICAgInRzbGliIjogWyJ0c2xpYkAyLjguMSIsICIiLCB7fSwgInNoYTUxMi1vSkZ1OTRIUWIrS1ZkdVNVUUw3d25wbXFuZm1Mc09BL25BaDZiNkVIMHdDRW9LMC9tUGVYVTZjM3dLRFY4M01rT3VIUFJIdFNYS0tVOTlJQmF6Uy8ydz09Il0sCgogICAgInR5cGVzY3JpcHQiOiBbInR5cGVzY3JpcHRANS45LjMiLCAiIiwgeyAiYmluIjogeyAidHNjIjogImJpbi90c2MiLCAidHNzZXJ2ZXIiOiAiYmluL3Rzc2VydmVyIiB9IH0sICJzaGE1MTItamwxdlp6UERpbkxyOWVVdDNKL3Q3VjZGZ05FdzlRanZCUGR5c3o5S2ZRREQ0MWZRckMyWTR2S1FkaWFVcEZUNGJYbGIxUkhoTHBwOHd0bTZNNVRnU3c9PSJdLAoKICAgICJ1bmRpY2ktdHlwZXMiOiBbInVuZGljaS10eXBlc0A2LjIxLjAiLCAiIiwge30sICJzaGE1MTItaXdEWnFnMFFBR3JnOVJhdjVING4wTTY0YzNta1I1OWNKNndRcCs3QzRuSTBnc21FeGFlZGFZTE5PNDRlVDRBdEJCd2piVGlHUE1sdDJNZDBUOUg5SlE9PSJdLAoKICAgICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6IFsidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmVAMS42LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIl4xNi44LjAgfHwgXjE3LjAuMCB8fCBeMTguMC4wIHx8IF4xOS4wLjAiIH0gfSwgInNoYTUxMi1QcDZHU3dHUC9OclBJcnhWRkFJa09RZXl3OGxGZW5PSGlqUVdrVVRyRHZyRjRBTHF5bFAyQy9LQ2tlUzlkcFVNM0t2WVJRaG5hNXZ0N0lMOTUrWlE5dz09Il0sCgogICAgInZpdGUiOiBbInZpdGVAOC4wLjEzIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2NzcyI6ICJeMS4zMi4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiLCAicG9zdGNzcyI6ICJeOC41LjE0IiwgInJvbGxkb3duIjogIjEuMC4xIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNiIgfSwgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiZnNldmVudHMiOiAifjIuMy4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkB0eXBlcy9ub2RlIjogIl4yMC4xOS4wIHx8ID49MjIuMTIuMCIsICJAdml0ZWpzL2RldnRvb2xzIjogIl4wLjEuMTgiLCAiZXNidWlsZCI6ICJeMC4yNy4wIHx8IF4wLjI4LjAiLCAiaml0aSI6ICI+PTEuMjEuMCIsICJsZXNzIjogIl40LjAuMCIsICJzYXNzIjogIl4xLjcwLjAiLCAic2Fzcy1lbWJlZGRlZCI6ICJeMS43MC4wIiwgInN0eWx1cyI6ICI+PTAuNTQuOCIsICJzdWdhcnNzIjogIl41LjAuMCIsICJ0ZXJzZXIiOiAiXjUuMTYuMCIsICJ0c3giOiAiXjQuOC4xIiwgInlhbWwiOiAiXjIuNC4yIiB9LCAib3B0aW9uYWxQZWVycyI6IFsiQHR5cGVzL25vZGUiLCAiQHZpdGVqcy9kZXZ0b29scyIsICJlc2J1aWxkIiwgImppdGkiLCAibGVzcyIsICJzYXNzIiwgInNhc3MtZW1iZWRkZWQiLCAic3R5bHVzIiwgInN1Z2Fyc3MiLCAidGVyc2VyIiwgInRzeCIsICJ5YW1sIl0sICJiaW4iOiB7ICJ2aXRlIjogImJpbi92aXRlLmpzIiB9IH0sICJzaGE1MTItTUZ0akJZZ3ptU3htZ0E0UkFmakl5WFdwR2Uxb0FMbmpnVVR6elY3UUx4L1RLeEN6anRNSDZGZDkvZVZLKzVGZzFxTm96NVZBd3NtTXMvTm9mcm1Kdnc9PSJdLAoKICAgICJ2aXRlc3QiOiBbInZpdGVzdEA0LjEuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdml0ZXN0L2V4cGVjdCI6ICI0LjEuNiIsICJAdml0ZXN0L21vY2tlciI6ICI0LjEuNiIsICJAdml0ZXN0L3ByZXR0eS1mb3JtYXQiOiAiNC4xLjYiLCAiQHZpdGVzdC9ydW5uZXIiOiAiNC4xLjYiLCAiQHZpdGVzdC9zbmFwc2hvdCI6ICI0LjEuNiIsICJAdml0ZXN0L3NweSI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgImVzLW1vZHVsZS1sZXhlciI6ICJeMi4wLjAiLCAiZXhwZWN0LXR5cGUiOiAiXjEuMy4wIiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJvYnVnIjogIl4yLjEuMSIsICJwYXRoZSI6ICJeMi4wLjMiLCAicGljb21hdGNoIjogIl40LjAuMyIsICJzdGQtZW52IjogIl40LjAuMC1yYy4xIiwgInRpbnliZW5jaCI6ICJeMi45LjAiLCAidGlueWV4ZWMiOiAiXjEuMC4yIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNSIsICJ0aW55cmFpbmJvdyI6ICJeMy4xLjAiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIsICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogIl4yLjMuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZWRnZS1ydW50aW1lL3ZtIjogIioiLCAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjkuMCIsICJAdHlwZXMvbm9kZSI6ICJeMjAuMC4wIHx8IF4yMi4wLjAgfHwgPj0yNC4wLjAiLCAiQHZpdGVzdC9icm93c2VyLXBsYXl3cmlnaHQiOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXByZXZpZXciOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXdlYmRyaXZlcmlvIjogIjQuMS42IiwgIkB2aXRlc3QvY292ZXJhZ2UtaXN0YW5idWwiOiAiNC4xLjYiLCAiQHZpdGVzdC9jb3ZlcmFnZS12OCI6ICI0LjEuNiIsICJAdml0ZXN0L3VpIjogIjQuMS42IiwgImhhcHB5LWRvbSI6ICIqIiwgImpzZG9tIjogIioiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZWRnZS1ydW50aW1lL3ZtIiwgIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAdHlwZXMvbm9kZSIsICJAdml0ZXN0L2Jyb3dzZXItcGxheXdyaWdodCIsICJAdml0ZXN0L2Jyb3dzZXItcHJldmlldyIsICJAdml0ZXN0L2Jyb3dzZXItd2ViZHJpdmVyaW8iLCAiQHZpdGVzdC9jb3ZlcmFnZS1pc3RhbmJ1bCIsICJAdml0ZXN0L2NvdmVyYWdlLXY4IiwgIkB2aXRlc3QvdWkiLCAiaGFwcHktZG9tIiwgImpzZG9tIl0sICJiaW4iOiB7ICJ2aXRlc3QiOiAidml0ZXN0Lm1qcyIgfSB9LCAic2hhNTEyLTZsdmpiUzNwOWI0Q3JkQ21ndXpiaDIvNHVvWGhHRTJxNzFSNE9YNXNxRjlSMWJvOVhkNmZHck1BZnZwNXduQ3psQm5GVmRDT3A2b251VFFWYm84aVVRPT0iXSwKCiAgICAid2h5LWlzLW5vZGUtcnVubmluZyI6IFsid2h5LWlzLW5vZGUtcnVubmluZ0AyLjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzaWdpbmZvIjogIl4yLjAuMCIsICJzdGFja2JhY2siOiAiMC4wLjIiIH0sICJiaW4iOiB7ICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLWhVcm1hV0JkVkRjeHZZcW55aDA5enVuS3pST1dqYlpUaU55OGRCRWprUzdlaEVEUWliWEo3WHZsbXRid3VUY2xVaUl5TitDeVhRRDRWbWtvOGZObTh3PT0iXSwKCiAgICAid3JhcC1hbnNpIjogWyJ3cmFwLWFuc2lANy4wLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMC4wIiwgInN0cmluZy13aWR0aCI6ICJeNC4xLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjAiIH0gfSwgInNoYTUxMi1ZVkdJajJrYW1MU1R4dzZOc1pqb0J4ZlN3c24weWNkZXNtYzRwK1EyMWM1elB1WjFwbCtOZnhWZHhQdGRIdm1OVk9RNlhTWUc0QVV0eXQvRmk3RDE2UT09Il0sCgogICAgInhzcyI6IFsieHNzQDEuMC4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb21tYW5kZXIiOiAiXjIuMjAuMyIsICJjc3NmaWx0ZXIiOiAiMC4wLjEwIiB9LCAiYmluIjogeyAieHNzIjogImJpbi94c3MiIH0gfSwgInNoYTUxMi1GVmRsVlZDNjdXT0lQdmZPd2hvTUVUVjcyZjZHYlc3YU9hYkJDM1d4Ti9vVWRvRU1EeUx6NE9nUnY1L2djazJaZU5xRVF1K1RiMGtsb292WE9mcFlWZz09Il0sCgogICAgInkxOG4iOiBbInkxOG5ANS4wLjgiLCAiIiwge30sICJzaGE1MTItMHBmRnplZ2VEV0pISklBbVRMUlAyRHdIamRGNXM3am85dHV6dGRReEFoSU5DZHZTKzNuR0lOcVBkMDBBcGhxSlIvMExoQU5VUzYvKzdTQ2I5OFlPZkE9PSJdLAoKICAgICJ5YW1sIjogWyJ5YW1sQDIuOS4wIiwgIiIsIHsgImJpbiI6IHsgInlhbWwiOiAiYmluLm1qcyIgfSB9LCAic2hhNTEyLTJBdmhOWDNtYjh6ZDZaeTdJTlR0U3BsMUYxNUhXNlducWowc3JXbGtLTGNwWWwvZ01JTUppeXVHcTJLZUkyWUZ4VVBqZGxCKzNMYzEwc2VNTHRMNGNBPT0iXSwKCiAgICAieWFyZ3MiOiBbInlhcmdzQDE3LjcuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjbGl1aSI6ICJeOC4wLjEiLCAiZXNjYWxhZGUiOiAiXjMuMS4xIiwgImdldC1jYWxsZXItZmlsZSI6ICJeMi4wLjUiLCAicmVxdWlyZS1kaXJlY3RvcnkiOiAiXjIuMS4xIiwgInN0cmluZy13aWR0aCI6ICJeNC4yLjMiLCAieTE4biI6ICJeNS4wLjUiLCAieWFyZ3MtcGFyc2VyIjogIl4yMS4xLjEiIH0gfSwgInNoYTUxMi03ZFN6elJRKytDS25OSS9rcktuWVJWN0pLS1BVWE1FaDYxc29hSEtnOW1yV0VoekZXaEZueFB4R2wrNjljRDFPdTYzQzEzTlVQQ25tSWNydnFDdU02dz09Il0sCgogICAgInlhcmdzLXBhcnNlciI6IFsieWFyZ3MtcGFyc2VyQDIxLjEuMSIsICIiLCB7fSwgInNoYTUxMi10VnBzSlc3RGRqZWNBaUZwYklCMWUzcXhJUXNFNk5vUGM1L2VUZHJiYklDNGgwTFZzV2hub2EzZyttMkhjbEJJdWpIenN4WjRWSlZBK0dVdWMyL0xCdz09Il0sCgogICAgInpvZCI6IFsiem9kQDQuNC4zIiwgIiIsIHt9LCAic2hhNTEyLXl0RU5GaklKRmwyVXdZZ2xkZTJqY2hXMkh3bTRHSkZMRGlTWFdkVHJKUUJJTjlGY3lwN240RGh4SkVpV05BSk1WMS9CcVdmVy9ra2c3MVVEY0hKeVRRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvY29yZSI6IFsiQGVtbmFwaS9jb3JlQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICIxLjIuMSIsICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXlxNk9rSjRwODJDQWZQbDB1OW1RZWJRSEtQSmtZN1dySXVrMjA1Y1RZblllK2syWjhZQmgxMUZyYlJHL0g2aWhpcnFjYWNPZ2wyQklPOG95TVFMZVh3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvcnVudGltZSI6IFsiQGVtbmFwaS9ydW50aW1lQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLWV3dllsazg2eFVvR0kwelFSTnEvbUMrMTZSMVFlRGxLUXkyMUtpM29TWVhOZ0xiNDVHVjFQNkEwTSsvczZueUN1TkRxZTVWcGFZODRCelhHd1Zid0ZBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvd2FzaS10aHJlYWRzIjogWyJAZW1uYXBpL3dhc2ktdGhyZWFkc0AxLjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXVUSUk3T1lGKy9NZXMvTXJjSU9ZcDV5T3RTTUxCV1NJb0xQcGNnd2lwb2lLYmxpNmszMjJ0Y29Gc3hvSUl4UERxVzAxU1FHQWdrbzRFelppMkJOdjJ3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BuYXBpLXJzL3dhc20tcnVudGltZSI6IFsiQG5hcGktcnMvd2FzbS1ydW50aW1lQDEuMS40IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB0eWJ5cy93YXNtLXV0aWwiOiAiXjAuMTAuMSIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuNy4xIiwgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjEiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLTNOUU5OZ0ExWVNsSmIva01IMWlsZEFTUDlIVzcvN2tZblJJMnN6V0phb2ZhUzFoV21iR0k0SCtkMysyMmFHelhYTjlJSituK0dpRlZjR2lwSlAxOG93PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0B0eWJ5cy93YXNtLXV0aWwiOiBbIkB0eWJ5cy93YXNtLXV0aWxAMC4xMC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItUm9CdkoyWDB3dUtsV0ZJanJ3ZmZHdzFJcVpIS1FxekljaEthYWRaWmZuTnBzQVlwMm1NMGgzNkp0UENqTkRBSEdnWWV6LzE1dU1CcGZHd2NoaGlNZ2c9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvdHNsaWIiOiBbInRzbGliQDIuOC4xIiwgIiIsIHsgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItb0pGdTk0SFFiK0tWZHVTVVFMN3ducG1xbmZtTHNPQS9uQWg2YjZFSDB3Q0VvSzAvbVBlWFU2YzN3S0RWODNNa091SFBSSHRTWEtLVTk5SUJhelMvMnc9PSJdLAoKICAgICJjaGFsay9zdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JANy4yLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItcXBDQXZSbDlzdHVPSHZlS3NuN0huY0pSdnY1MDFxSWFjS3pRbE8vK0x3eGM5KzBxMndMeXY0RGZ2dDgwL0RQbjJwcU9Cc0pkRGlvZ1hHUjkrT3Z3Unc9PSJdLAoKICAgICJuZXh0L3Bvc3Rjc3MiOiBbInBvc3Rjc3NAOC40LjMxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIm5hbm9pZCI6ICJeMy4zLjYiLCAicGljb2NvbG9ycyI6ICJeMS4wLjAiLCAic291cmNlLW1hcC1qcyI6ICJeMS4wLjIiIH0gfSwgInNoYTUxMi1QUzA4SWJvaWE5bXRzLzJ5Z1YzZUxwWTVnaG5VY2ZMVi9FWFRPVzFFMnFZeEpLR0dCVXROak43NkZZSG5NczM2Um1BUm40MWJDMEFabW4rclIwT1ZwUT09Il0sCiAgfQp9Cg==" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "retail",\n "name": "Retail",\n "tagline": "Variant-aware retail storefront with full product detail pages and instalment support.",\n "industry": "retail",\n "tags": ["retail", "electronics", "variants"],\n "stability": "stable",\n "schemaType": "Store",\n "mock": {\n "seedName": "retail",\n "seedBusinessId": "bus_currents_electronics"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n // Title supports a single \\n for a hard line break.\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-mono uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="text-[clamp(2.25rem,5vw,3.5rem)] font-bold mb-6 -tracking-[0.025em] leading-tight">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="text-2xl font-semibold mt-10 mb-3 -tracking-[0.02em]">\n {s.heading}\n </h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full catalogue with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/products/${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [Support / FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
674
|
+
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": "middleware.ts", "kind": "text", "content": `import { NextResponse, type NextRequest } from "next/server";
|
|
675
|
+
import { handleTokenRefresh, type OidcConfig } from "@cimplify/sdk/server";
|
|
676
|
+
|
|
677
|
+
function oidcConfig(): OidcConfig | null {
|
|
678
|
+
const clientId =
|
|
679
|
+
process.env.CIMPLIFY_CLIENT_ID?.trim() ||
|
|
680
|
+
process.env.NEXT_PUBLIC_CIMPLIFY_CLIENT_ID?.trim() ||
|
|
681
|
+
"";
|
|
682
|
+
if (!clientId) return null;
|
|
683
|
+
return {
|
|
684
|
+
clientId,
|
|
685
|
+
issuer: process.env.CIMPLIFY_ISSUER?.trim() || undefined,
|
|
686
|
+
authUrl: process.env.CIMPLIFY_AUTH_URL?.trim() || undefined,
|
|
687
|
+
};
|
|
688
|
+
}
|
|
689
|
+
|
|
690
|
+
// Keeps the access token fresh before account pages render. Server Components
|
|
691
|
+
// can't write cookies, so this is the one place the rotated token can be both
|
|
692
|
+
// persisted (browser) and forwarded onto the current request (this render).
|
|
693
|
+
export async function middleware(request: NextRequest) {
|
|
694
|
+
const cfg = oidcConfig();
|
|
695
|
+
if (!cfg) return NextResponse.next();
|
|
696
|
+
|
|
697
|
+
const { outcome, setCookies, cookies } = await handleTokenRefresh(request, cfg);
|
|
698
|
+
if (outcome === "noop") return NextResponse.next();
|
|
699
|
+
|
|
700
|
+
for (const { name, value } of cookies) {
|
|
701
|
+
request.cookies.set(name, value);
|
|
702
|
+
}
|
|
703
|
+
const response = NextResponse.next({ request });
|
|
704
|
+
for (const cookie of setCookies) {
|
|
705
|
+
response.headers.append("set-cookie", cookie);
|
|
706
|
+
}
|
|
707
|
+
return response;
|
|
708
|
+
}
|
|
709
|
+
|
|
710
|
+
export const config = {
|
|
711
|
+
matcher: ["/account/:path*"],
|
|
712
|
+
};
|
|
713
|
+
` }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed retail --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed retail",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.67.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS40LjEiLCAiIiwge30sICJzaGE1MTItUDVMVU5odGJqNllmSTNpSmp3NUVMOWVVQUc2T2l0RDBXM2ZXUWNwUWpEUmMvUUlzTDB0Uk51TzFQY0R2UGNjV0wxZlNUWFhkRTFkcytsOTVEVi9PRkE9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzAuMCIsICIiLCB7fSwgInNoYTUxMi1pYkQydXN4OUpSdTdmNXB1MnRNS01JNGNwQTROZ1hKUW9ZUlA0cFE3UHhtbjFsNmsvNTNxV3RRV1pheWhZeTNYNFFaa3Q5ME90K21KRWFlWG91aW82UT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjEiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZkpJM0kwcjNDM09qL3pkQkNwYUNtQlJaWWYwN3hwYXE0eUNmRERvU0ZtK2JlV056YklsMjZwdVc4UnJhVWR1Z29Kdy85NXplck5PbjZqYXNBaHpTbWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWNLbkFoV0VzVjdUUGNBLzVFQXRlRHA2S2NKWkJRMkcrQnFFN3pheU1NaTdrTXZ3UnNidjdXVDlhT25uMFdObDRTS0VJZjQzdmpTMzFpVVB1ODBuelhnPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZS3JWd1FqSVJCUG8rNUcvdTAzd0dqYmR5NHE3cHl6Q2U5M0RLOVZKN3prVm1lZzhMSjdHYmdzaUhXZFI0eFNvZTRDQVhSRDdCY2pnYnRyNjRia1hOZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItei9vQnNSRW80NlNzRnFCd1l0RmUwa3BKZUJpakFUNDhPL1dYTEk0c3VpQ0xCa3IwM1JUdFRKTUN6U2REZDJ6bmxoOFZKaXpMMDlYVmtRZ2s4SVpvbnc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItaWs4cTdHTTExenh2WXhGYzJQZURjVDZUQnZoQ1FNYVV4ZnBoL001bDlzS3VUcy9TamczTCtCeXcwRjd3MFpWTEJabXgzMFArZ0cwRUN6ek4rTUZjbVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItUW9TeDJFa3lycmRaNmtjeUU4c3RxWjYydDBZcmE4RnM1aWE5bE94SnJoNlRNUUpLN2dRS21zY2RUSGY3cE9YS1JFS3JWd090SmNRRzNxVlNmYzg2NkE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi11d053RnB3S2VOaVphd2ZBV0JnZzBWSXp0UFRWM2loaGgxdlYzMzRoOWl2bk5Mb3J4blFNVTZGejh3RzFaYjRRaDlMQzEvTWtjeVQzWWxEWEczUnNnZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi16WTFidWw3T1dyN0RGQmlKKyt3b2ZYdm5yOEI0NWNlM1FzUVVoS3JJaFhzeWdBaDdiVGt3eWVNMWJpMWEyZzVDL3lDL044VFp5R0RFb01mbS9sOW1wZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi0wZnJsc1QvZjRGdDZJN1NNRVNUS25GM2Nac2RpY1FuMWRDTWtGL2pUOXdETEUrZ0dvaVFmdjFubVQ5ZStzN3MvZmVrdnZ5NnRaTTJqSHZJMnRrYkpEUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjEiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1YQUJWbUdwOVRnMFdzcFRWdndkdVRjNGZwcXk2Sm5BVXJTUWU2T3V5cUQvMDNuSTdyME85T1dVa01Jd0ZyaktBSXFvbHZxb0E0WnJKcHBnd0UwR3htdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLWJWNGZ6c3d1elZjS0Q5MG8vVk02UXFLeG54bERxMGcyQklTRExOVm14cm5ocHYxRERieVBoQ0lqWWZ2ellMVitNdmtLS25RdDJRNkFPODZTRUJVTFVRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4xIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLS9NaDBaaHEzT1A3ZlZzMGtjUUhaUDZsWkV0aE1HVGFTZjhVQlFZU0ZFWkRXR1hYbEVDK25KNkVxZW5hSzJ0NExCWE1lM0ErSy9HMkJWWFhkdE9yNFBRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItKzF4YzlYNDVsOHVmc0JBbTZHanZ4MnFEUklZOWxUVnQwY2dXTmNKKzFnZGhYdmtieGVQQTYweVJUd1NUdVhMMDlDTWh5Sm1qcFY3RTNOb3l4YnFGUVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4xIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0xRCtVcVpkZm51UitKeTFHZ01Kd2k4NWJENDBIMjF1Tm1PUFJXUWh3NG9SU3VvbFovQjVyaXhaNDVESzJLWE9UQ3ZtVkNlY2F1V2dFaGJ3OGJJN3RPdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUlOQXljYVd1aGxPSzN3azRtUkhHc2Rnd1lXbWQ5Y0NoZFBkRTlid1dteTZybjlWcVZOWU5GR2hPZFhyb2ZYVXh3SEluY1NpUE5iOHRObThrbkRWSWVRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS42IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItN0VIRHF1UHRoQUxTVjBqaGhqZ0VXOEZYYXZpTXg3clNxdThXNm9xQ29BdU9oS292ODE0UDk5UURWMXB4TUEzUVB2MjFZdWR2Sm5nSWhqck5JNG9wTGc9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi1NQ0ZjNjNjek1qRUluT2xjWTJjcFFDdkNOK0tnYkFuKzYweHU5Y01nUDRzS2FMQzVKTkFLdzdKSDhRZEFub0FDODhoVzFJaVNOWitHZ1ZYbE4xVWNNUT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLWg1U3hEL0l6TmhaWW5yU1pSc1VaUUlDK3ZEMEdZOGNVdnEwaXdzbWtGS2l4UkNLTExXcUNYYS9GSVE0UzFSK3NJK1BHb29qa0hzZE5yYlppTTlRcGd3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItbk9QQ21uMit5RDBaTm1LZHNYR3YvVXhNTVdiTXVLZUQ2R3lZbmNOd2RrWUR4cFF2clBTS1lqMnJXdURqQzJZNGI2dzZoamlwNWRCS0Z6RVV1WmUzdkE9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1ZaHNkRTZ4QVZmVERtemp4TDJaRFV2amorWnNneU9LZStUZFF6cWtENzJ3SU9tSGthOE51R1E2TnBUTlp2OUQyWjYzZmJ3V0tKUGVWcEV3NEVRZ1l4dz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNiIsICIiLCB7fSwgInNoYTUxMi1KRkt4TXg2dWRod0toL0xkbzI3MGUxN1FYNzEwdmd1bk1rdVBBdlhqSFN2QzZvcUxXQUhoVmhqZy9JNzFxMHUwQ0JTRXJJT0RWMUtqdjBGUU5TV2pkZz09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItRnhJWStVODFSM0xHS0N4YUhIRlJRNStnNi9pUmdHTG1lSFdkcDJBbWo0bGpRUnJFSVdIbVp5RGZEWUJSWmxweXFBN3FLeHRTOUREMWRoazhSblJJVlE9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItbUxDTmJyUWxpMTFLMXlTVW11TnQ0WlVCM09wR0lEcTRxMnZUQlRmNWNMMmxwc1JqSTlRS3FTRDBuZGpXOEZ5dmNXL0pqNDZnTWU5c3l5SEFzdk1hL0E9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjMiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLTV4b0RmWCtmTDdmYUFUbmFnbVdQcGJGdHdoL1I3N1dtTU1xcUhHUzY1QzN2dkIwWUhyZ0YrQjFZbVozNDQxdE1qNW42M2swMjEyWE5vSnd6bGhmZlF3PT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwb3N0Y3NzIjogWyJwb3N0Y3NzQDguNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy4xMiIsICJwaWNvY29sb3JzIjogIl4xLjEuMSIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjIuMSIgfSB9LCAic2hhNTEyLUZmUjhzamQ0ZW0yVDZmYjNJMk13QUpVN0hXVk1yOXpiYStlbm1RZWVXRmZDYm0rVU9DLzBYNERTOFh0cFVUTXdXTUdiaktZUDd4amZOZWt6eUdtQjNBPT0iXSwKCiAgICAicmVhY3QiOiBbInJlYWN0QDE5LjIuNiIsICIiLCB7fSwgInNoYTUxMi1zZldHR2ZhdmkweHI4UGcwc1ZzeUhNQU96aVZZS2dQTE5yUzdpZytpdk1OYjN3YkNCdzNLeHRmbHNHQkF3RDNnWVFsRS9BRVpzVExnVG9SclNDamIwUT09Il0sCgogICAgInJlYWN0LWRheS1waWNrZXIiOiBbInJlYWN0LWRheS1waWNrZXJAOS4xNC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS40LjEiLCAiQHRhYmJ5X2FpL2hpanJpLWNvbnZlcnRlciI6ICIxLjAuNSIsICJkYXRlLWZucyI6ICJeNC4xLjAiLCAiZGF0ZS1mbnMtamFsYWxpIjogIjQuMS4wLTAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0xNi44LjAiIH0gfSwgInNoYTUxMi10QmFvRFdqUHdlME01cEdydW00SDBTUjZMeWsrQk85b0hucDlKYktwR0tXMm1scmFOUGdQOUJNZnNnNXBXcHdyc3NBUm1lcWs3WUJsMm9YdXRaVGFIQT09Il0sCgogICAgInJlYWN0LWRvbSI6IFsicmVhY3QtZG9tQDE5LjIuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzY2hlZHVsZXIiOiAiXjAuMjcuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTkuMi42IiB9IH0sICJzaGE1MTItMHByTUkraHZCYlBqc1dueERMeGxDR3lNOFBONlV1V2pFVUNZbVpoTzY3eElWOVhhc2Evci92RG5xK1h5cTRMbzI3ZzhRU2JPNVl6QVJ1MEQxU3BzM2c9PSJdLAoKICAgICJyZXF1aXJlLWRpcmVjdG9yeSI6IFsicmVxdWlyZS1kaXJlY3RvcnlAMi4xLjEiLCAiIiwge30sICJzaGE1MTItZkd4RUk3K3dzRzl4cnZkanNybG1MMjJPTVRUaUhSd0FNcm9pRWVNZ3E4Z3pvTEMvUFFyN1JzUkRTVExVZy9iWkFadEYrVFZJa0hjNi80UklLcnVpK1E9PSJdLAoKICAgICJyZXNlbGVjdCI6IFsicmVzZWxlY3RANS4yLjAiLCAiIiwge30sICJzaGE1MTItQWdaM1VPWm0zWW5kZnJKNE9ZamdyVDdibUNtLzFpcWtqdkVmSC9vWWp6aDZQRDJxdzRRdVQzampuWElycGR0NE1UcE1YY2xNVDNsWGJtUlkrWFJha3c9PSJdLAoKICAgICJyb2xsZG93biI6IFsicm9sbGRvd25AMS4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQG94Yy1wcm9qZWN0L3R5cGVzIjogIj0wLjEzMC4wIiwgIkByb2xsZG93bi9wbHVnaW51dGlscyI6ICJeMS4wLjAiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZnJlZWJzZC14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtbXVzbCI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1wcGM2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgteDY0LW11c2wiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzItYXJtNjQtbXN2YyI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2YyI6ICIxLjAuMSIgfSwgImJpbiI6IHsgInJvbGxkb3duIjogImJpbi9jbGkubWpzIiB9IH0sICJzaGE1MTItWDBLUUhsak5uRWtXTnFxaXo5ekpyR3VuaDFCMEhnT3hMWHZuRnBDT2NhZHpjeTVxb2haM3RxTUVVZzAwdm5jb1Jvdlh1SzNacUNUOUtubkt6b0luRlE9PSJdLAoKICAgICJyeGpzIjogWyJyeGpzQDcuOC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjEuMCIgfSB9LCAic2hhNTEyLWRoS2Y5MDNVL1BRWlk2Ym9OTnRBR2RXYkc4NVdBYmpULzF4WW9aSUM3RkFZMHlXYXBPQlFWc1ZyRGw1OFc4Ni8vZTFWcE1OQnRSVjRNYVhmZE15U0ZBPT0iXSwKCiAgICAic2NoZWR1bGVyIjogWyJzY2hlZHVsZXJAMC4yNy4wIiwgIiIsIHt9LCAic2hhNTEyLWVOditXclZiS3UxZjN2YllKVC94dGlGNXN5QTVIUElNdGY5SWdZL25LZzBzV3F6QVVFdnFZL3htN09jWmMvcWFmTHgvaU85RmdPbWVTQXA0djV0aS9RPT0iXSwKCiAgICAic2VtdmVyIjogWyJzZW12ZXJANy44LjAiLCAiIiwgeyAiYmluIjogeyAic2VtdmVyIjogImJpbi9zZW12ZXIuanMiIH0gfSwgInNoYTUxMi1BY003ZFYvNXVsNEVla29RMjlBZ201dnJpOEpOcVJ5ajM5bzBxcFg2dkRGMkdacnR1dFpsNVJ3Z0QxWG5aamlUQWZuY3NKaE1JNDhRUUgzc044N1lOQT09Il0sCgogICAgInNoYXJwIjogWyJzaGFycEAwLjM0LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGltZy9jb2xvdXIiOiAiXjEuMC4wIiwgImRldGVjdC1saWJjIjogIl4yLjEuMiIsICJzZW12ZXIiOiAiXjcuNy4zIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWRhcndpbi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtczM5MHgiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGludXgtYXJtIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXBwYzY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4bXVzbC1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eG11c2wteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdhc20zMiI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1pYTMyIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLXg2NCI6ICIwLjM0LjUiIH0gfSwgInNoYTUxMi1PdTlJNUZ0OVdOY0NiWHJVOWNNZ1BCY0NLOExpd0xxY2J5d1czdDRvRFYzN24xcHpwdU5Mc1lpQVY4ZU9EbmpidFFsU0R3WjJjVUVlUXo0RTU0SGx0Zz09Il0sCgogICAgInNoZWxsLXF1b3RlIjogWyJzaGVsbC1xdW90ZUAxLjguMyIsICIiLCB7fSwgInNoYTUxMi1PYm1uSUY0aFhOZzFCcWhuSG1nYkRFVEY4ZExQQ2dnWldCamtRZmhacGJzelpuWXVyNURVbGpUY0NIaWk1TEMzSjVFMHllTy8xTElNeUgrVXZIUWd5dz09Il0sCgogICAgInNpZ2luZm8iOiBbInNpZ2luZm9AMi4wLjAiLCAiIiwge30sICJzaGE1MTIteWJ4MFdPMS84YlNCTEVXWFp2RWQ3Z01XM1NuM0pGbFczVHZYMW5SRWJETFJOUU5hZU5OOFdLMG1lQndQZEFhT0k3VHRSUlJKbi9FczF6aHJyQ0h1N2c9PSJdLAoKICAgICJzb3VyY2UtbWFwIjogWyJzb3VyY2UtbWFwQDAuNi4xIiwgIiIsIHt9LCAic2hhNTEyLVVqZ2FwdW1XbGJNaGtCZ3pUN1lrYzVZWFVUNDZGMGlLdThTR1hxMGJjd1A1ZHovaDBQbGo2ZW5KcWp6MVpicTJsNVdhcVluclZid1dPV015RjNGNDdnPT0iXSwKCiAgICAic291cmNlLW1hcC1qcyI6IFsic291cmNlLW1hcC1qc0AxLjIuMSIsICIiLCB7fSwgInNoYTUxMi1VWFdNS2hMT3dWS2I3MjhJVXRRUFh4ZllVK3VzZHlidFVySy84dUdFOENRTXZyaE9wd3Z6REJ3ajBRaFNMN01RYzd2SXNJU0JHOFZROCtJRFF4cGZRQT09Il0sCgogICAgInNvdXJjZS1tYXAtc3VwcG9ydCI6IFsic291cmNlLW1hcC1zdXBwb3J0QDAuNS4yMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJidWZmZXItZnJvbSI6ICJeMS4wLjAiLCAic291cmNlLW1hcCI6ICJeMC42LjAiIH0gfSwgInNoYTUxMi11QkhVM0wzY3pzSXlZWEtYODhmZHJHb3Z4ZFNDb1RHRFJaNlNZWHRTUnhMWlV6SGc1UC82Nkh0NnVvVWxIdTlFWm9kK2luWGhLbzNxUWd3WFVUL3kxdz09Il0sCgogICAgInN0YWNrYmFjayI6IFsic3RhY2tiYWNrQDAuMC4yIiwgIiIsIHt9LCAic2hhNTEyLTFYTUpFNWZRbzFqR0g2WS83ZWJud1BPQkVrSUVuVDRRRjMyZDVSMStWWGRYdmVNMElCTUp0OHpmYXhYMVAzUWhWd3JZZSs1NzYramtBTnRTUzJtQmJ3PT0iXSwKCiAgICAic3RkLWVudiI6IFsic3RkLWVudkA0LjEuMCIsICIiLCB7fSwgInNoYTUxMi1ScTd5YmNYMlJ1QzU1cjlvYVBWRVc3L3h1M3RqOHU0R2VCWUhCV0N5Y2hGdHpNSXI4NkE3ZTNQUEVCUFQzN3NIU3RLWDMrVGlYL0ZyL0FDbUpMVmxMUT09Il0sCgogICAgInN0cmluZy13aWR0aCI6IFsic3RyaW5nLXdpZHRoQDQuMi4zIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImVtb2ppLXJlZ2V4IjogIl44LjAuMCIsICJpcy1mdWxsd2lkdGgtY29kZS1wb2ludCI6ICJeMy4wLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiIH0gfSwgInNoYTUxMi13S3lRUlFwakowc0lwNjJFclNaZEdzak1KV3NhcDVvUk5paEhodTZHN0pWTy85aklCNlV5ZXZMK3RYdU9xcm5nOGovY3hLVFd5V1V3dlNUcmlpWnovZz09Il0sCgogICAgInN0cmlwLWFuc2kiOiBbInN0cmlwLWFuc2lANi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1yZWdleCI6ICJeNS4wLjEiIH0gfSwgInNoYTUxMi1ZMzhWUFNIY3FrRnJDcEZuUTl2dVNYbXF1dXY1b1hPS3BHZVQ2YUdycjNvM0djOUFsVmE2SkJmVVNPQ25ieEdHWkYrLzBvb0k3S3JQdVVTenRVZFU1QT09Il0sCgogICAgInN0eWxlZC1qc3giOiBbInN0eWxlZC1qc3hANS4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY2xpZW50LW9ubHkiOiAiMC4wLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0gMTYuOC4wIHx8IDE3LngueCB8fCBeMTguMC4wLTAgfHwgXjE5LjAuMC0wIiB9IH0sICJzaGE1MTItcVNWeURUZU1vdGR2UVlvSFdMTkd3UkZKSEMraStadmRCUllvc09GZ0MrV2cxdng0ZnJOMi9SRy9OQTdTWXFxdktOTGYzOVAyTFNSQTJwdTZuMFhZWkE9PSJdLAoKICAgICJzdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JAOC4xLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItTXBVRU4yT29kdFV6eHZLUWw3MmNVRjdSUTVFaUhzR3ZTc1ZHMGlhOWM1UmJXR0wyQ0k0QzdFcFBTOFVUQklwbG5selppTnVWNTZ3K0Z1Tnh5M3R5MlE9PSJdLAoKICAgICJ0YWlsd2luZC1tZXJnZSI6IFsidGFpbHdpbmQtbWVyZ2VAMy42LjAiLCAiIiwge30sICJzaGE1MTItdXhMN3FBVlFyaXFSUVBBeUszcGo2NlZxc2tXcW9aMzdQVzk0andPVHdOZnEvejlveXUxVitlcXJacXRSMitmQ2lYZFlPWmUvTW9kdDhHdHZxTnp1K3c9PSJdLAoKICAgICJ0YWlsd2luZGNzcyI6IFsidGFpbHdpbmRjc3NANC4zLjAiLCAiIiwge30sICJzaGE1MTIteTZueE1HQjFuTVc5UjZrOTZlNWdkSUZ6Y2ZML2dUSlJOYXFHZXMxWXZrTG5QVlh6V2dicUZGMnlMQzBUOEc3NzRuMjRjeDNQZThYcktvbmlDT0FIK1E9PSJdLAoKICAgICJ0YXBhYmxlIjogWyJ0YXBhYmxlQDIuMy4zIiwgIiIsIHt9LCAic2hhNTEyLXV4Yy96cHFGZzZ4N0M4dk9FN2xoNkxiZGE4ZUVMOXptVm0vUExlVFBCUmhoMXhDZ2RXYVErSjFDVWllR3BJZm0ySGR0c1VwUnYrSHNoaWFzQk1jYzZBPT0iXSwKCiAgICAidGVyc2VyIjogWyJ0ZXJzZXJANS4xNi45IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiAiXjAuMy4yIiwgImFjb3JuIjogIl44LjUuMCIsICJjb21tYW5kZXIiOiAiXjIuMjAuMCIsICJzb3VyY2UtbWFwLXN1cHBvcnQiOiAifjAuNS4yMCIgfSwgImJpbiI6IHsgInRlcnNlciI6ICJiaW4vdGVyc2VyIiB9IH0sICJzaGE1MTItSFBhL0ZkVEI5WEdJMkgxL2tlTEZaSHhsNldOdkFJNFlhbEhHdERRVGxNbkpjb3FTYWIxVXdMNGwxaEdFaHM2L0dtTEhCWklnL1lnQisramNiem9PRWc9PSJdLAoKICAgICJ0aW55YmVuY2giOiBbInRpbnliZW5jaEAyLjkuMCIsICIiLCB7fSwgInNoYTUxMi0wK0RVdnFXTVZhbExtaGE2bHI0a0Q4aUFNSzFIelYwL2FLbkN0V2I5djk2NDFUblAvTUZiN1BjMmJ4b3hRalRYQUVycnlYVmdVT2Z2MllxTmxscUdlZz09Il0sCgogICAgInRpbnlleGVjIjogWyJ0aW55ZXhlY0AxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1kQXFTcUUvUmFicEJLSTgraDI2R2ZMcTZWYjNKVlhzMzBYWVFqZE1qYWovYzJ0UzhJWVlNYkl6UDU5OUt0Umo3YzU3L3dZQXBiM1FqZ1JnWG1yQ3VrQT09Il0sCgogICAgInRpbnlnbG9iYnkiOiBbInRpbnlnbG9iYnlAMC4yLjE2IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImZkaXIiOiAiXjYuNS4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiIH0gfSwgInNoYTUxMi1wbjk5VmhvQUNZUjhuRkhoeHFpeCt1dnNiWGluZUFhc1dtNW9qWG9OOHhFd0s1S2QzL1RyaE5uMXdCeXVENTJVeFdSTHk4cHUra1JNbmlFaTZFcTlaZz09Il0sCgogICAgInRpbnlyYWluYm93IjogWyJ0aW55cmFpbmJvd0AzLjEuMCIsICIiLCB7fSwgInNoYTUxMi1CZitJTG1CZ3JldFVyZEp4elhNMFNnWExaM1hmaWFVdU9qL0lLUUh1VFhpcCswNVhuK3V5RVlkVmcwa1lEaXBUQmNMckNWeVV6QVB6N1FtQXJiMG1tdz09Il0sCgogICAgInRyZWUta2lsbCI6IFsidHJlZS1raWxsQDEuMi4yIiwgIiIsIHsgImJpbiI6IHsgInRyZWUta2lsbCI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1MME9ycGk4cUdwUkcvL05kK0g5MHZGQiszaUhudWUxelNTR21OT09DaDFHTEo3clVLVndWMkh2aWpwaEdRUzJVbWhVWmV3UzlWZ3Z4WUlkZ3IrZkcxQT09Il0sCgogICAgInRzbGliIjogWyJ0c2xpYkAyLjguMSIsICIiLCB7fSwgInNoYTUxMi1vSkZ1OTRIUWIrS1ZkdVNVUUw3d25wbXFuZm1Mc09BL25BaDZiNkVIMHdDRW9LMC9tUGVYVTZjM3dLRFY4M01rT3VIUFJIdFNYS0tVOTlJQmF6Uy8ydz09Il0sCgogICAgInR5cGVzY3JpcHQiOiBbInR5cGVzY3JpcHRANS45LjMiLCAiIiwgeyAiYmluIjogeyAidHNjIjogImJpbi90c2MiLCAidHNzZXJ2ZXIiOiAiYmluL3Rzc2VydmVyIiB9IH0sICJzaGE1MTItamwxdlp6UERpbkxyOWVVdDNKL3Q3VjZGZ05FdzlRanZCUGR5c3o5S2ZRREQ0MWZRckMyWTR2S1FkaWFVcEZUNGJYbGIxUkhoTHBwOHd0bTZNNVRnU3c9PSJdLAoKICAgICJ1bmRpY2ktdHlwZXMiOiBbInVuZGljaS10eXBlc0A2LjIxLjAiLCAiIiwge30sICJzaGE1MTItaXdEWnFnMFFBR3JnOVJhdjVING4wTTY0YzNta1I1OWNKNndRcCs3QzRuSTBnc21FeGFlZGFZTE5PNDRlVDRBdEJCd2piVGlHUE1sdDJNZDBUOUg5SlE9PSJdLAoKICAgICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6IFsidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmVAMS42LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIl4xNi44LjAgfHwgXjE3LjAuMCB8fCBeMTguMC4wIHx8IF4xOS4wLjAiIH0gfSwgInNoYTUxMi1QcDZHU3dHUC9OclBJcnhWRkFJa09RZXl3OGxGZW5PSGlqUVdrVVRyRHZyRjRBTHF5bFAyQy9LQ2tlUzlkcFVNM0t2WVJRaG5hNXZ0N0lMOTUrWlE5dz09Il0sCgogICAgInZpdGUiOiBbInZpdGVAOC4wLjEzIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2NzcyI6ICJeMS4zMi4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiLCAicG9zdGNzcyI6ICJeOC41LjE0IiwgInJvbGxkb3duIjogIjEuMC4xIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNiIgfSwgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiZnNldmVudHMiOiAifjIuMy4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkB0eXBlcy9ub2RlIjogIl4yMC4xOS4wIHx8ID49MjIuMTIuMCIsICJAdml0ZWpzL2RldnRvb2xzIjogIl4wLjEuMTgiLCAiZXNidWlsZCI6ICJeMC4yNy4wIHx8IF4wLjI4LjAiLCAiaml0aSI6ICI+PTEuMjEuMCIsICJsZXNzIjogIl40LjAuMCIsICJzYXNzIjogIl4xLjcwLjAiLCAic2Fzcy1lbWJlZGRlZCI6ICJeMS43MC4wIiwgInN0eWx1cyI6ICI+PTAuNTQuOCIsICJzdWdhcnNzIjogIl41LjAuMCIsICJ0ZXJzZXIiOiAiXjUuMTYuMCIsICJ0c3giOiAiXjQuOC4xIiwgInlhbWwiOiAiXjIuNC4yIiB9LCAib3B0aW9uYWxQZWVycyI6IFsiQHR5cGVzL25vZGUiLCAiQHZpdGVqcy9kZXZ0b29scyIsICJlc2J1aWxkIiwgImppdGkiLCAibGVzcyIsICJzYXNzIiwgInNhc3MtZW1iZWRkZWQiLCAic3R5bHVzIiwgInN1Z2Fyc3MiLCAidGVyc2VyIiwgInRzeCIsICJ5YW1sIl0sICJiaW4iOiB7ICJ2aXRlIjogImJpbi92aXRlLmpzIiB9IH0sICJzaGE1MTItTUZ0akJZZ3ptU3htZ0E0UkFmakl5WFdwR2Uxb0FMbmpnVVR6elY3UUx4L1RLeEN6anRNSDZGZDkvZVZLKzVGZzFxTm96NVZBd3NtTXMvTm9mcm1Kdnc9PSJdLAoKICAgICJ2aXRlc3QiOiBbInZpdGVzdEA0LjEuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdml0ZXN0L2V4cGVjdCI6ICI0LjEuNiIsICJAdml0ZXN0L21vY2tlciI6ICI0LjEuNiIsICJAdml0ZXN0L3ByZXR0eS1mb3JtYXQiOiAiNC4xLjYiLCAiQHZpdGVzdC9ydW5uZXIiOiAiNC4xLjYiLCAiQHZpdGVzdC9zbmFwc2hvdCI6ICI0LjEuNiIsICJAdml0ZXN0L3NweSI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgImVzLW1vZHVsZS1sZXhlciI6ICJeMi4wLjAiLCAiZXhwZWN0LXR5cGUiOiAiXjEuMy4wIiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJvYnVnIjogIl4yLjEuMSIsICJwYXRoZSI6ICJeMi4wLjMiLCAicGljb21hdGNoIjogIl40LjAuMyIsICJzdGQtZW52IjogIl40LjAuMC1yYy4xIiwgInRpbnliZW5jaCI6ICJeMi45LjAiLCAidGlueWV4ZWMiOiAiXjEuMC4yIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNSIsICJ0aW55cmFpbmJvdyI6ICJeMy4xLjAiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIsICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogIl4yLjMuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZWRnZS1ydW50aW1lL3ZtIjogIioiLCAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjkuMCIsICJAdHlwZXMvbm9kZSI6ICJeMjAuMC4wIHx8IF4yMi4wLjAgfHwgPj0yNC4wLjAiLCAiQHZpdGVzdC9icm93c2VyLXBsYXl3cmlnaHQiOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXByZXZpZXciOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXdlYmRyaXZlcmlvIjogIjQuMS42IiwgIkB2aXRlc3QvY292ZXJhZ2UtaXN0YW5idWwiOiAiNC4xLjYiLCAiQHZpdGVzdC9jb3ZlcmFnZS12OCI6ICI0LjEuNiIsICJAdml0ZXN0L3VpIjogIjQuMS42IiwgImhhcHB5LWRvbSI6ICIqIiwgImpzZG9tIjogIioiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZWRnZS1ydW50aW1lL3ZtIiwgIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAdHlwZXMvbm9kZSIsICJAdml0ZXN0L2Jyb3dzZXItcGxheXdyaWdodCIsICJAdml0ZXN0L2Jyb3dzZXItcHJldmlldyIsICJAdml0ZXN0L2Jyb3dzZXItd2ViZHJpdmVyaW8iLCAiQHZpdGVzdC9jb3ZlcmFnZS1pc3RhbmJ1bCIsICJAdml0ZXN0L2NvdmVyYWdlLXY4IiwgIkB2aXRlc3QvdWkiLCAiaGFwcHktZG9tIiwgImpzZG9tIl0sICJiaW4iOiB7ICJ2aXRlc3QiOiAidml0ZXN0Lm1qcyIgfSB9LCAic2hhNTEyLTZsdmpiUzNwOWI0Q3JkQ21ndXpiaDIvNHVvWGhHRTJxNzFSNE9YNXNxRjlSMWJvOVhkNmZHck1BZnZwNXduQ3psQm5GVmRDT3A2b251VFFWYm84aVVRPT0iXSwKCiAgICAid2h5LWlzLW5vZGUtcnVubmluZyI6IFsid2h5LWlzLW5vZGUtcnVubmluZ0AyLjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzaWdpbmZvIjogIl4yLjAuMCIsICJzdGFja2JhY2siOiAiMC4wLjIiIH0sICJiaW4iOiB7ICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLWhVcm1hV0JkVkRjeHZZcW55aDA5enVuS3pST1dqYlpUaU55OGRCRWprUzdlaEVEUWliWEo3WHZsbXRid3VUY2xVaUl5TitDeVhRRDRWbWtvOGZObTh3PT0iXSwKCiAgICAid3JhcC1hbnNpIjogWyJ3cmFwLWFuc2lANy4wLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMC4wIiwgInN0cmluZy13aWR0aCI6ICJeNC4xLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjAiIH0gfSwgInNoYTUxMi1ZVkdJajJrYW1MU1R4dzZOc1pqb0J4ZlN3c24weWNkZXNtYzRwK1EyMWM1elB1WjFwbCtOZnhWZHhQdGRIdm1OVk9RNlhTWUc0QVV0eXQvRmk3RDE2UT09Il0sCgogICAgInhzcyI6IFsieHNzQDEuMC4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb21tYW5kZXIiOiAiXjIuMjAuMyIsICJjc3NmaWx0ZXIiOiAiMC4wLjEwIiB9LCAiYmluIjogeyAieHNzIjogImJpbi94c3MiIH0gfSwgInNoYTUxMi1GVmRsVlZDNjdXT0lQdmZPd2hvTUVUVjcyZjZHYlc3YU9hYkJDM1d4Ti9vVWRvRU1EeUx6NE9nUnY1L2djazJaZU5xRVF1K1RiMGtsb292WE9mcFlWZz09Il0sCgogICAgInkxOG4iOiBbInkxOG5ANS4wLjgiLCAiIiwge30sICJzaGE1MTItMHBmRnplZ2VEV0pISklBbVRMUlAyRHdIamRGNXM3am85dHV6dGRReEFoSU5DZHZTKzNuR0lOcVBkMDBBcGhxSlIvMExoQU5VUzYvKzdTQ2I5OFlPZkE9PSJdLAoKICAgICJ5YW1sIjogWyJ5YW1sQDIuOS4wIiwgIiIsIHsgImJpbiI6IHsgInlhbWwiOiAiYmluLm1qcyIgfSB9LCAic2hhNTEyLTJBdmhOWDNtYjh6ZDZaeTdJTlR0U3BsMUYxNUhXNlducWowc3JXbGtLTGNwWWwvZ01JTUppeXVHcTJLZUkyWUZ4VVBqZGxCKzNMYzEwc2VNTHRMNGNBPT0iXSwKCiAgICAieWFyZ3MiOiBbInlhcmdzQDE3LjcuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjbGl1aSI6ICJeOC4wLjEiLCAiZXNjYWxhZGUiOiAiXjMuMS4xIiwgImdldC1jYWxsZXItZmlsZSI6ICJeMi4wLjUiLCAicmVxdWlyZS1kaXJlY3RvcnkiOiAiXjIuMS4xIiwgInN0cmluZy13aWR0aCI6ICJeNC4yLjMiLCAieTE4biI6ICJeNS4wLjUiLCAieWFyZ3MtcGFyc2VyIjogIl4yMS4xLjEiIH0gfSwgInNoYTUxMi03ZFN6elJRKytDS25OSS9rcktuWVJWN0pLS1BVWE1FaDYxc29hSEtnOW1yV0VoekZXaEZueFB4R2wrNjljRDFPdTYzQzEzTlVQQ25tSWNydnFDdU02dz09Il0sCgogICAgInlhcmdzLXBhcnNlciI6IFsieWFyZ3MtcGFyc2VyQDIxLjEuMSIsICIiLCB7fSwgInNoYTUxMi10VnBzSlc3RGRqZWNBaUZwYklCMWUzcXhJUXNFNk5vUGM1L2VUZHJiYklDNGgwTFZzV2hub2EzZyttMkhjbEJJdWpIenN4WjRWSlZBK0dVdWMyL0xCdz09Il0sCgogICAgInpvZCI6IFsiem9kQDQuNC4zIiwgIiIsIHt9LCAic2hhNTEyLXl0RU5GaklKRmwyVXdZZ2xkZTJqY2hXMkh3bTRHSkZMRGlTWFdkVHJKUUJJTjlGY3lwN240RGh4SkVpV05BSk1WMS9CcVdmVy9ra2c3MVVEY0hKeVRRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvY29yZSI6IFsiQGVtbmFwaS9jb3JlQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICIxLjIuMSIsICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXlxNk9rSjRwODJDQWZQbDB1OW1RZWJRSEtQSmtZN1dySXVrMjA1Y1RZblllK2syWjhZQmgxMUZyYlJHL0g2aWhpcnFjYWNPZ2wyQklPOG95TVFMZVh3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvcnVudGltZSI6IFsiQGVtbmFwaS9ydW50aW1lQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLWV3dllsazg2eFVvR0kwelFSTnEvbUMrMTZSMVFlRGxLUXkyMUtpM29TWVhOZ0xiNDVHVjFQNkEwTSsvczZueUN1TkRxZTVWcGFZODRCelhHd1Zid0ZBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvd2FzaS10aHJlYWRzIjogWyJAZW1uYXBpL3dhc2ktdGhyZWFkc0AxLjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXVUSUk3T1lGKy9NZXMvTXJjSU9ZcDV5T3RTTUxCV1NJb0xQcGNnd2lwb2lLYmxpNmszMjJ0Y29Gc3hvSUl4UERxVzAxU1FHQWdrbzRFelppMkJOdjJ3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BuYXBpLXJzL3dhc20tcnVudGltZSI6IFsiQG5hcGktcnMvd2FzbS1ydW50aW1lQDEuMS40IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB0eWJ5cy93YXNtLXV0aWwiOiAiXjAuMTAuMSIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuNy4xIiwgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjEiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLTNOUU5OZ0ExWVNsSmIva01IMWlsZEFTUDlIVzcvN2tZblJJMnN6V0phb2ZhUzFoV21iR0k0SCtkMysyMmFHelhYTjlJSituK0dpRlZjR2lwSlAxOG93PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0B0eWJ5cy93YXNtLXV0aWwiOiBbIkB0eWJ5cy93YXNtLXV0aWxAMC4xMC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItUm9CdkoyWDB3dUtsV0ZJanJ3ZmZHdzFJcVpIS1FxekljaEthYWRaWmZuTnBzQVlwMm1NMGgzNkp0UENqTkRBSEdnWWV6LzE1dU1CcGZHd2NoaGlNZ2c9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvdHNsaWIiOiBbInRzbGliQDIuOC4xIiwgIiIsIHsgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItb0pGdTk0SFFiK0tWZHVTVVFMN3ducG1xbmZtTHNPQS9uQWg2YjZFSDB3Q0VvSzAvbVBlWFU2YzN3S0RWODNNa091SFBSSHRTWEtLVTk5SUJhelMvMnc9PSJdLAoKICAgICJjaGFsay9zdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JANy4yLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItcXBDQXZSbDlzdHVPSHZlS3NuN0huY0pSdnY1MDFxSWFjS3pRbE8vK0x3eGM5KzBxMndMeXY0RGZ2dDgwL0RQbjJwcU9Cc0pkRGlvZ1hHUjkrT3Z3Unc9PSJdLAoKICAgICJuZXh0L3Bvc3Rjc3MiOiBbInBvc3Rjc3NAOC40LjMxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIm5hbm9pZCI6ICJeMy4zLjYiLCAicGljb2NvbG9ycyI6ICJeMS4wLjAiLCAic291cmNlLW1hcC1qcyI6ICJeMS4wLjIiIH0gfSwgInNoYTUxMi1QUzA4SWJvaWE5bXRzLzJ5Z1YzZUxwWTVnaG5VY2ZMVi9FWFRPVzFFMnFZeEpLR0dCVXROak43NkZZSG5NczM2Um1BUm40MWJDMEFabW4rclIwT1ZwUT09Il0sCiAgfQp9Cg==" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "retail",\n "name": "Retail",\n "tagline": "Variant-aware retail storefront with full product detail pages and instalment support.",\n "industry": "retail",\n "tags": ["retail", "electronics", "variants"],\n "stability": "stable",\n "schemaType": "Store",\n "mock": {\n "seedName": "retail",\n "seedBusinessId": "bus_currents_electronics"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n // Title supports a single \\n for a hard line break.\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-mono uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="text-[clamp(2.25rem,5vw,3.5rem)] font-bold mb-6 -tracking-[0.025em] leading-tight">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="text-2xl font-semibold mt-10 mb-3 -tracking-[0.02em]">\n {s.heading}\n </h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full catalogue with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/products/${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [Support / FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
675
714
|
|
|
676
715
|
import { useState } from "react";
|
|
677
716
|
|
|
@@ -1711,7 +1750,46 @@ export const brand: Brand = {
|
|
|
1711
1750
|
* the root layout prerenderable.
|
|
1712
1751
|
*/
|
|
1713
1752
|
export const SITE_URL = "https://example.com";
|
|
1714
|
-
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed pharmacy --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed pharmacy",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.65.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS40LjEiLCAiIiwge30sICJzaGE1MTItUDVMVU5odGJqNllmSTNpSmp3NUVMOWVVQUc2T2l0RDBXM2ZXUWNwUWpEUmMvUUlzTDB0Uk51TzFQY0R2UGNjV0wxZlNUWFhkRTFkcytsOTVEVi9PRkE9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzAuMCIsICIiLCB7fSwgInNoYTUxMi1pYkQydXN4OUpSdTdmNXB1MnRNS01JNGNwQTROZ1hKUW9ZUlA0cFE3UHhtbjFsNmsvNTNxV3RRV1pheWhZeTNYNFFaa3Q5ME90K21KRWFlWG91aW82UT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjEiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZkpJM0kwcjNDM09qL3pkQkNwYUNtQlJaWWYwN3hwYXE0eUNmRERvU0ZtK2JlV056YklsMjZwdVc4UnJhVWR1Z29Kdy85NXplck5PbjZqYXNBaHpTbWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWNLbkFoV0VzVjdUUGNBLzVFQXRlRHA2S2NKWkJRMkcrQnFFN3pheU1NaTdrTXZ3UnNidjdXVDlhT25uMFdObDRTS0VJZjQzdmpTMzFpVVB1ODBuelhnPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZS3JWd1FqSVJCUG8rNUcvdTAzd0dqYmR5NHE3cHl6Q2U5M0RLOVZKN3prVm1lZzhMSjdHYmdzaUhXZFI0eFNvZTRDQVhSRDdCY2pnYnRyNjRia1hOZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItei9vQnNSRW80NlNzRnFCd1l0RmUwa3BKZUJpakFUNDhPL1dYTEk0c3VpQ0xCa3IwM1JUdFRKTUN6U2REZDJ6bmxoOFZKaXpMMDlYVmtRZ2s4SVpvbnc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItaWs4cTdHTTExenh2WXhGYzJQZURjVDZUQnZoQ1FNYVV4ZnBoL001bDlzS3VUcy9TamczTCtCeXcwRjd3MFpWTEJabXgzMFArZ0cwRUN6ek4rTUZjbVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItUW9TeDJFa3lycmRaNmtjeUU4c3RxWjYydDBZcmE4RnM1aWE5bE94SnJoNlRNUUpLN2dRS21zY2RUSGY3cE9YS1JFS3JWd090SmNRRzNxVlNmYzg2NkE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi11d053RnB3S2VOaVphd2ZBV0JnZzBWSXp0UFRWM2loaGgxdlYzMzRoOWl2bk5Mb3J4blFNVTZGejh3RzFaYjRRaDlMQzEvTWtjeVQzWWxEWEczUnNnZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi16WTFidWw3T1dyN0RGQmlKKyt3b2ZYdm5yOEI0NWNlM1FzUVVoS3JJaFhzeWdBaDdiVGt3eWVNMWJpMWEyZzVDL3lDL044VFp5R0RFb01mbS9sOW1wZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi0wZnJsc1QvZjRGdDZJN1NNRVNUS25GM2Nac2RpY1FuMWRDTWtGL2pUOXdETEUrZ0dvaVFmdjFubVQ5ZStzN3MvZmVrdnZ5NnRaTTJqSHZJMnRrYkpEUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjEiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1YQUJWbUdwOVRnMFdzcFRWdndkdVRjNGZwcXk2Sm5BVXJTUWU2T3V5cUQvMDNuSTdyME85T1dVa01Jd0ZyaktBSXFvbHZxb0E0WnJKcHBnd0UwR3htdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLWJWNGZ6c3d1elZjS0Q5MG8vVk02UXFLeG54bERxMGcyQklTRExOVm14cm5ocHYxRERieVBoQ0lqWWZ2ellMVitNdmtLS25RdDJRNkFPODZTRUJVTFVRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4xIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLS9NaDBaaHEzT1A3ZlZzMGtjUUhaUDZsWkV0aE1HVGFTZjhVQlFZU0ZFWkRXR1hYbEVDK25KNkVxZW5hSzJ0NExCWE1lM0ErSy9HMkJWWFhkdE9yNFBRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItKzF4YzlYNDVsOHVmc0JBbTZHanZ4MnFEUklZOWxUVnQwY2dXTmNKKzFnZGhYdmtieGVQQTYweVJUd1NUdVhMMDlDTWh5Sm1qcFY3RTNOb3l4YnFGUVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4xIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0xRCtVcVpkZm51UitKeTFHZ01Kd2k4NWJENDBIMjF1Tm1PUFJXUWh3NG9SU3VvbFovQjVyaXhaNDVESzJLWE9UQ3ZtVkNlY2F1V2dFaGJ3OGJJN3RPdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUlOQXljYVd1aGxPSzN3azRtUkhHc2Rnd1lXbWQ5Y0NoZFBkRTlid1dteTZybjlWcVZOWU5GR2hPZFhyb2ZYVXh3SEluY1NpUE5iOHRObThrbkRWSWVRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS42IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItN0VIRHF1UHRoQUxTVjBqaGhqZ0VXOEZYYXZpTXg3clNxdThXNm9xQ29BdU9oS292ODE0UDk5UURWMXB4TUEzUVB2MjFZdWR2Sm5nSWhqck5JNG9wTGc9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi1NQ0ZjNjNjek1qRUluT2xjWTJjcFFDdkNOK0tnYkFuKzYweHU5Y01nUDRzS2FMQzVKTkFLdzdKSDhRZEFub0FDODhoVzFJaVNOWitHZ1ZYbE4xVWNNUT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLWg1U3hEL0l6TmhaWW5yU1pSc1VaUUlDK3ZEMEdZOGNVdnEwaXdzbWtGS2l4UkNLTExXcUNYYS9GSVE0UzFSK3NJK1BHb29qa0hzZE5yYlppTTlRcGd3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItbk9QQ21uMit5RDBaTm1LZHNYR3YvVXhNTVdiTXVLZUQ2R3lZbmNOd2RrWUR4cFF2clBTS1lqMnJXdURqQzJZNGI2dzZoamlwNWRCS0Z6RVV1WmUzdkE9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1ZaHNkRTZ4QVZmVERtemp4TDJaRFV2amorWnNneU9LZStUZFF6cWtENzJ3SU9tSGthOE51R1E2TnBUTlp2OUQyWjYzZmJ3V0tKUGVWcEV3NEVRZ1l4dz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNiIsICIiLCB7fSwgInNoYTUxMi1KRkt4TXg2dWRod0toL0xkbzI3MGUxN1FYNzEwdmd1bk1rdVBBdlhqSFN2QzZvcUxXQUhoVmhqZy9JNzFxMHUwQ0JTRXJJT0RWMUtqdjBGUU5TV2pkZz09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItRnhJWStVODFSM0xHS0N4YUhIRlJRNStnNi9pUmdHTG1lSFdkcDJBbWo0bGpRUnJFSVdIbVp5RGZEWUJSWmxweXFBN3FLeHRTOUREMWRoazhSblJJVlE9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItbUxDTmJyUWxpMTFLMXlTVW11TnQ0WlVCM09wR0lEcTRxMnZUQlRmNWNMMmxwc1JqSTlRS3FTRDBuZGpXOEZ5dmNXL0pqNDZnTWU5c3l5SEFzdk1hL0E9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjMiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLTV4b0RmWCtmTDdmYUFUbmFnbVdQcGJGdHdoL1I3N1dtTU1xcUhHUzY1QzN2dkIwWUhyZ0YrQjFZbVozNDQxdE1qNW42M2swMjEyWE5vSnd6bGhmZlF3PT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwb3N0Y3NzIjogWyJwb3N0Y3NzQDguNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy4xMiIsICJwaWNvY29sb3JzIjogIl4xLjEuMSIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjIuMSIgfSB9LCAic2hhNTEyLUZmUjhzamQ0ZW0yVDZmYjNJMk13QUpVN0hXVk1yOXpiYStlbm1RZWVXRmZDYm0rVU9DLzBYNERTOFh0cFVUTXdXTUdiaktZUDd4amZOZWt6eUdtQjNBPT0iXSwKCiAgICAicmVhY3QiOiBbInJlYWN0QDE5LjIuNiIsICIiLCB7fSwgInNoYTUxMi1zZldHR2ZhdmkweHI4UGcwc1ZzeUhNQU96aVZZS2dQTE5yUzdpZytpdk1OYjN3YkNCdzNLeHRmbHNHQkF3RDNnWVFsRS9BRVpzVExnVG9SclNDamIwUT09Il0sCgogICAgInJlYWN0LWRheS1waWNrZXIiOiBbInJlYWN0LWRheS1waWNrZXJAOS4xNC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS40LjEiLCAiQHRhYmJ5X2FpL2hpanJpLWNvbnZlcnRlciI6ICIxLjAuNSIsICJkYXRlLWZucyI6ICJeNC4xLjAiLCAiZGF0ZS1mbnMtamFsYWxpIjogIjQuMS4wLTAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0xNi44LjAiIH0gfSwgInNoYTUxMi10QmFvRFdqUHdlME01cEdydW00SDBTUjZMeWsrQk85b0hucDlKYktwR0tXMm1scmFOUGdQOUJNZnNnNXBXcHdyc3NBUm1lcWs3WUJsMm9YdXRaVGFIQT09Il0sCgogICAgInJlYWN0LWRvbSI6IFsicmVhY3QtZG9tQDE5LjIuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzY2hlZHVsZXIiOiAiXjAuMjcuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTkuMi42IiB9IH0sICJzaGE1MTItMHByTUkraHZCYlBqc1dueERMeGxDR3lNOFBONlV1V2pFVUNZbVpoTzY3eElWOVhhc2Evci92RG5xK1h5cTRMbzI3ZzhRU2JPNVl6QVJ1MEQxU3BzM2c9PSJdLAoKICAgICJyZXF1aXJlLWRpcmVjdG9yeSI6IFsicmVxdWlyZS1kaXJlY3RvcnlAMi4xLjEiLCAiIiwge30sICJzaGE1MTItZkd4RUk3K3dzRzl4cnZkanNybG1MMjJPTVRUaUhSd0FNcm9pRWVNZ3E4Z3pvTEMvUFFyN1JzUkRTVExVZy9iWkFadEYrVFZJa0hjNi80UklLcnVpK1E9PSJdLAoKICAgICJyZXNlbGVjdCI6IFsicmVzZWxlY3RANS4yLjAiLCAiIiwge30sICJzaGE1MTItQWdaM1VPWm0zWW5kZnJKNE9ZamdyVDdibUNtLzFpcWtqdkVmSC9vWWp6aDZQRDJxdzRRdVQzampuWElycGR0NE1UcE1YY2xNVDNsWGJtUlkrWFJha3c9PSJdLAoKICAgICJyb2xsZG93biI6IFsicm9sbGRvd25AMS4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQG94Yy1wcm9qZWN0L3R5cGVzIjogIj0wLjEzMC4wIiwgIkByb2xsZG93bi9wbHVnaW51dGlscyI6ICJeMS4wLjAiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZnJlZWJzZC14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtbXVzbCI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1wcGM2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgteDY0LW11c2wiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzItYXJtNjQtbXN2YyI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2YyI6ICIxLjAuMSIgfSwgImJpbiI6IHsgInJvbGxkb3duIjogImJpbi9jbGkubWpzIiB9IH0sICJzaGE1MTItWDBLUUhsak5uRWtXTnFxaXo5ekpyR3VuaDFCMEhnT3hMWHZuRnBDT2NhZHpjeTVxb2haM3RxTUVVZzAwdm5jb1Jvdlh1SzNacUNUOUtubkt6b0luRlE9PSJdLAoKICAgICJyeGpzIjogWyJyeGpzQDcuOC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjEuMCIgfSB9LCAic2hhNTEyLWRoS2Y5MDNVL1BRWlk2Ym9OTnRBR2RXYkc4NVdBYmpULzF4WW9aSUM3RkFZMHlXYXBPQlFWc1ZyRGw1OFc4Ni8vZTFWcE1OQnRSVjRNYVhmZE15U0ZBPT0iXSwKCiAgICAic2NoZWR1bGVyIjogWyJzY2hlZHVsZXJAMC4yNy4wIiwgIiIsIHt9LCAic2hhNTEyLWVOditXclZiS3UxZjN2YllKVC94dGlGNXN5QTVIUElNdGY5SWdZL25LZzBzV3F6QVVFdnFZL3htN09jWmMvcWFmTHgvaU85RmdPbWVTQXA0djV0aS9RPT0iXSwKCiAgICAic2VtdmVyIjogWyJzZW12ZXJANy44LjAiLCAiIiwgeyAiYmluIjogeyAic2VtdmVyIjogImJpbi9zZW12ZXIuanMiIH0gfSwgInNoYTUxMi1BY003ZFYvNXVsNEVla29RMjlBZ201dnJpOEpOcVJ5ajM5bzBxcFg2dkRGMkdacnR1dFpsNVJ3Z0QxWG5aamlUQWZuY3NKaE1JNDhRUUgzc044N1lOQT09Il0sCgogICAgInNoYXJwIjogWyJzaGFycEAwLjM0LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGltZy9jb2xvdXIiOiAiXjEuMC4wIiwgImRldGVjdC1saWJjIjogIl4yLjEuMiIsICJzZW12ZXIiOiAiXjcuNy4zIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWRhcndpbi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtczM5MHgiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGludXgtYXJtIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXBwYzY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4bXVzbC1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eG11c2wteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdhc20zMiI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1pYTMyIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLXg2NCI6ICIwLjM0LjUiIH0gfSwgInNoYTUxMi1PdTlJNUZ0OVdOY0NiWHJVOWNNZ1BCY0NLOExpd0xxY2J5d1czdDRvRFYzN24xcHpwdU5Mc1lpQVY4ZU9EbmpidFFsU0R3WjJjVUVlUXo0RTU0SGx0Zz09Il0sCgogICAgInNoZWxsLXF1b3RlIjogWyJzaGVsbC1xdW90ZUAxLjguMyIsICIiLCB7fSwgInNoYTUxMi1PYm1uSUY0aFhOZzFCcWhuSG1nYkRFVEY4ZExQQ2dnWldCamtRZmhacGJzelpuWXVyNURVbGpUY0NIaWk1TEMzSjVFMHllTy8xTElNeUgrVXZIUWd5dz09Il0sCgogICAgInNpZ2luZm8iOiBbInNpZ2luZm9AMi4wLjAiLCAiIiwge30sICJzaGE1MTIteWJ4MFdPMS84YlNCTEVXWFp2RWQ3Z01XM1NuM0pGbFczVHZYMW5SRWJETFJOUU5hZU5OOFdLMG1lQndQZEFhT0k3VHRSUlJKbi9FczF6aHJyQ0h1N2c9PSJdLAoKICAgICJzb3VyY2UtbWFwIjogWyJzb3VyY2UtbWFwQDAuNi4xIiwgIiIsIHt9LCAic2hhNTEyLVVqZ2FwdW1XbGJNaGtCZ3pUN1lrYzVZWFVUNDZGMGlLdThTR1hxMGJjd1A1ZHovaDBQbGo2ZW5KcWp6MVpicTJsNVdhcVluclZid1dPV015RjNGNDdnPT0iXSwKCiAgICAic291cmNlLW1hcC1qcyI6IFsic291cmNlLW1hcC1qc0AxLjIuMSIsICIiLCB7fSwgInNoYTUxMi1VWFdNS2hMT3dWS2I3MjhJVXRRUFh4ZllVK3VzZHlidFVySy84dUdFOENRTXZyaE9wd3Z6REJ3ajBRaFNMN01RYzd2SXNJU0JHOFZROCtJRFF4cGZRQT09Il0sCgogICAgInNvdXJjZS1tYXAtc3VwcG9ydCI6IFsic291cmNlLW1hcC1zdXBwb3J0QDAuNS4yMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJidWZmZXItZnJvbSI6ICJeMS4wLjAiLCAic291cmNlLW1hcCI6ICJeMC42LjAiIH0gfSwgInNoYTUxMi11QkhVM0wzY3pzSXlZWEtYODhmZHJHb3Z4ZFNDb1RHRFJaNlNZWHRTUnhMWlV6SGc1UC82Nkh0NnVvVWxIdTlFWm9kK2luWGhLbzNxUWd3WFVUL3kxdz09Il0sCgogICAgInN0YWNrYmFjayI6IFsic3RhY2tiYWNrQDAuMC4yIiwgIiIsIHt9LCAic2hhNTEyLTFYTUpFNWZRbzFqR0g2WS83ZWJud1BPQkVrSUVuVDRRRjMyZDVSMStWWGRYdmVNMElCTUp0OHpmYXhYMVAzUWhWd3JZZSs1NzYramtBTnRTUzJtQmJ3PT0iXSwKCiAgICAic3RkLWVudiI6IFsic3RkLWVudkA0LjEuMCIsICIiLCB7fSwgInNoYTUxMi1ScTd5YmNYMlJ1QzU1cjlvYVBWRVc3L3h1M3RqOHU0R2VCWUhCV0N5Y2hGdHpNSXI4NkE3ZTNQUEVCUFQzN3NIU3RLWDMrVGlYL0ZyL0FDbUpMVmxMUT09Il0sCgogICAgInN0cmluZy13aWR0aCI6IFsic3RyaW5nLXdpZHRoQDQuMi4zIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImVtb2ppLXJlZ2V4IjogIl44LjAuMCIsICJpcy1mdWxsd2lkdGgtY29kZS1wb2ludCI6ICJeMy4wLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiIH0gfSwgInNoYTUxMi13S3lRUlFwakowc0lwNjJFclNaZEdzak1KV3NhcDVvUk5paEhodTZHN0pWTy85aklCNlV5ZXZMK3RYdU9xcm5nOGovY3hLVFd5V1V3dlNUcmlpWnovZz09Il0sCgogICAgInN0cmlwLWFuc2kiOiBbInN0cmlwLWFuc2lANi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1yZWdleCI6ICJeNS4wLjEiIH0gfSwgInNoYTUxMi1ZMzhWUFNIY3FrRnJDcEZuUTl2dVNYbXF1dXY1b1hPS3BHZVQ2YUdycjNvM0djOUFsVmE2SkJmVVNPQ25ieEdHWkYrLzBvb0k3S3JQdVVTenRVZFU1QT09Il0sCgogICAgInN0eWxlZC1qc3giOiBbInN0eWxlZC1qc3hANS4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY2xpZW50LW9ubHkiOiAiMC4wLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0gMTYuOC4wIHx8IDE3LngueCB8fCBeMTguMC4wLTAgfHwgXjE5LjAuMC0wIiB9IH0sICJzaGE1MTItcVNWeURUZU1vdGR2UVlvSFdMTkd3UkZKSEMraStadmRCUllvc09GZ0MrV2cxdng0ZnJOMi9SRy9OQTdTWXFxdktOTGYzOVAyTFNSQTJwdTZuMFhZWkE9PSJdLAoKICAgICJzdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JAOC4xLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItTXBVRU4yT29kdFV6eHZLUWw3MmNVRjdSUTVFaUhzR3ZTc1ZHMGlhOWM1UmJXR0wyQ0k0QzdFcFBTOFVUQklwbG5selppTnVWNTZ3K0Z1Tnh5M3R5MlE9PSJdLAoKICAgICJ0YWlsd2luZC1tZXJnZSI6IFsidGFpbHdpbmQtbWVyZ2VAMy42LjAiLCAiIiwge30sICJzaGE1MTItdXhMN3FBVlFyaXFSUVBBeUszcGo2NlZxc2tXcW9aMzdQVzk0andPVHdOZnEvejlveXUxVitlcXJacXRSMitmQ2lYZFlPWmUvTW9kdDhHdHZxTnp1K3c9PSJdLAoKICAgICJ0YWlsd2luZGNzcyI6IFsidGFpbHdpbmRjc3NANC4zLjAiLCAiIiwge30sICJzaGE1MTIteTZueE1HQjFuTVc5UjZrOTZlNWdkSUZ6Y2ZML2dUSlJOYXFHZXMxWXZrTG5QVlh6V2dicUZGMnlMQzBUOEc3NzRuMjRjeDNQZThYcktvbmlDT0FIK1E9PSJdLAoKICAgICJ0YXBhYmxlIjogWyJ0YXBhYmxlQDIuMy4zIiwgIiIsIHt9LCAic2hhNTEyLXV4Yy96cHFGZzZ4N0M4dk9FN2xoNkxiZGE4ZUVMOXptVm0vUExlVFBCUmhoMXhDZ2RXYVErSjFDVWllR3BJZm0ySGR0c1VwUnYrSHNoaWFzQk1jYzZBPT0iXSwKCiAgICAidGVyc2VyIjogWyJ0ZXJzZXJANS4xNi45IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiAiXjAuMy4yIiwgImFjb3JuIjogIl44LjUuMCIsICJjb21tYW5kZXIiOiAiXjIuMjAuMCIsICJzb3VyY2UtbWFwLXN1cHBvcnQiOiAifjAuNS4yMCIgfSwgImJpbiI6IHsgInRlcnNlciI6ICJiaW4vdGVyc2VyIiB9IH0sICJzaGE1MTItSFBhL0ZkVEI5WEdJMkgxL2tlTEZaSHhsNldOdkFJNFlhbEhHdERRVGxNbkpjb3FTYWIxVXdMNGwxaEdFaHM2L0dtTEhCWklnL1lnQisramNiem9PRWc9PSJdLAoKICAgICJ0aW55YmVuY2giOiBbInRpbnliZW5jaEAyLjkuMCIsICIiLCB7fSwgInNoYTUxMi0wK0RVdnFXTVZhbExtaGE2bHI0a0Q4aUFNSzFIelYwL2FLbkN0V2I5djk2NDFUblAvTUZiN1BjMmJ4b3hRalRYQUVycnlYVmdVT2Z2MllxTmxscUdlZz09Il0sCgogICAgInRpbnlleGVjIjogWyJ0aW55ZXhlY0AxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1kQXFTcUUvUmFicEJLSTgraDI2R2ZMcTZWYjNKVlhzMzBYWVFqZE1qYWovYzJ0UzhJWVlNYkl6UDU5OUt0Umo3YzU3L3dZQXBiM1FqZ1JnWG1yQ3VrQT09Il0sCgogICAgInRpbnlnbG9iYnkiOiBbInRpbnlnbG9iYnlAMC4yLjE2IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImZkaXIiOiAiXjYuNS4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiIH0gfSwgInNoYTUxMi1wbjk5VmhvQUNZUjhuRkhoeHFpeCt1dnNiWGluZUFhc1dtNW9qWG9OOHhFd0s1S2QzL1RyaE5uMXdCeXVENTJVeFdSTHk4cHUra1JNbmlFaTZFcTlaZz09Il0sCgogICAgInRpbnlyYWluYm93IjogWyJ0aW55cmFpbmJvd0AzLjEuMCIsICIiLCB7fSwgInNoYTUxMi1CZitJTG1CZ3JldFVyZEp4elhNMFNnWExaM1hmaWFVdU9qL0lLUUh1VFhpcCswNVhuK3V5RVlkVmcwa1lEaXBUQmNMckNWeVV6QVB6N1FtQXJiMG1tdz09Il0sCgogICAgInRyZWUta2lsbCI6IFsidHJlZS1raWxsQDEuMi4yIiwgIiIsIHsgImJpbiI6IHsgInRyZWUta2lsbCI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1MME9ycGk4cUdwUkcvL05kK0g5MHZGQiszaUhudWUxelNTR21OT09DaDFHTEo3clVLVndWMkh2aWpwaEdRUzJVbWhVWmV3UzlWZ3Z4WUlkZ3IrZkcxQT09Il0sCgogICAgInRzbGliIjogWyJ0c2xpYkAyLjguMSIsICIiLCB7fSwgInNoYTUxMi1vSkZ1OTRIUWIrS1ZkdVNVUUw3d25wbXFuZm1Mc09BL25BaDZiNkVIMHdDRW9LMC9tUGVYVTZjM3dLRFY4M01rT3VIUFJIdFNYS0tVOTlJQmF6Uy8ydz09Il0sCgogICAgInR5cGVzY3JpcHQiOiBbInR5cGVzY3JpcHRANS45LjMiLCAiIiwgeyAiYmluIjogeyAidHNjIjogImJpbi90c2MiLCAidHNzZXJ2ZXIiOiAiYmluL3Rzc2VydmVyIiB9IH0sICJzaGE1MTItamwxdlp6UERpbkxyOWVVdDNKL3Q3VjZGZ05FdzlRanZCUGR5c3o5S2ZRREQ0MWZRckMyWTR2S1FkaWFVcEZUNGJYbGIxUkhoTHBwOHd0bTZNNVRnU3c9PSJdLAoKICAgICJ1bmRpY2ktdHlwZXMiOiBbInVuZGljaS10eXBlc0A2LjIxLjAiLCAiIiwge30sICJzaGE1MTItaXdEWnFnMFFBR3JnOVJhdjVING4wTTY0YzNta1I1OWNKNndRcCs3QzRuSTBnc21FeGFlZGFZTE5PNDRlVDRBdEJCd2piVGlHUE1sdDJNZDBUOUg5SlE9PSJdLAoKICAgICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6IFsidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmVAMS42LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIl4xNi44LjAgfHwgXjE3LjAuMCB8fCBeMTguMC4wIHx8IF4xOS4wLjAiIH0gfSwgInNoYTUxMi1QcDZHU3dHUC9OclBJcnhWRkFJa09RZXl3OGxGZW5PSGlqUVdrVVRyRHZyRjRBTHF5bFAyQy9LQ2tlUzlkcFVNM0t2WVJRaG5hNXZ0N0lMOTUrWlE5dz09Il0sCgogICAgInZpdGUiOiBbInZpdGVAOC4wLjEzIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2NzcyI6ICJeMS4zMi4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiLCAicG9zdGNzcyI6ICJeOC41LjE0IiwgInJvbGxkb3duIjogIjEuMC4xIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNiIgfSwgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiZnNldmVudHMiOiAifjIuMy4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkB0eXBlcy9ub2RlIjogIl4yMC4xOS4wIHx8ID49MjIuMTIuMCIsICJAdml0ZWpzL2RldnRvb2xzIjogIl4wLjEuMTgiLCAiZXNidWlsZCI6ICJeMC4yNy4wIHx8IF4wLjI4LjAiLCAiaml0aSI6ICI+PTEuMjEuMCIsICJsZXNzIjogIl40LjAuMCIsICJzYXNzIjogIl4xLjcwLjAiLCAic2Fzcy1lbWJlZGRlZCI6ICJeMS43MC4wIiwgInN0eWx1cyI6ICI+PTAuNTQuOCIsICJzdWdhcnNzIjogIl41LjAuMCIsICJ0ZXJzZXIiOiAiXjUuMTYuMCIsICJ0c3giOiAiXjQuOC4xIiwgInlhbWwiOiAiXjIuNC4yIiB9LCAib3B0aW9uYWxQZWVycyI6IFsiQHR5cGVzL25vZGUiLCAiQHZpdGVqcy9kZXZ0b29scyIsICJlc2J1aWxkIiwgImppdGkiLCAibGVzcyIsICJzYXNzIiwgInNhc3MtZW1iZWRkZWQiLCAic3R5bHVzIiwgInN1Z2Fyc3MiLCAidGVyc2VyIiwgInRzeCIsICJ5YW1sIl0sICJiaW4iOiB7ICJ2aXRlIjogImJpbi92aXRlLmpzIiB9IH0sICJzaGE1MTItTUZ0akJZZ3ptU3htZ0E0UkFmakl5WFdwR2Uxb0FMbmpnVVR6elY3UUx4L1RLeEN6anRNSDZGZDkvZVZLKzVGZzFxTm96NVZBd3NtTXMvTm9mcm1Kdnc9PSJdLAoKICAgICJ2aXRlc3QiOiBbInZpdGVzdEA0LjEuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdml0ZXN0L2V4cGVjdCI6ICI0LjEuNiIsICJAdml0ZXN0L21vY2tlciI6ICI0LjEuNiIsICJAdml0ZXN0L3ByZXR0eS1mb3JtYXQiOiAiNC4xLjYiLCAiQHZpdGVzdC9ydW5uZXIiOiAiNC4xLjYiLCAiQHZpdGVzdC9zbmFwc2hvdCI6ICI0LjEuNiIsICJAdml0ZXN0L3NweSI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgImVzLW1vZHVsZS1sZXhlciI6ICJeMi4wLjAiLCAiZXhwZWN0LXR5cGUiOiAiXjEuMy4wIiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJvYnVnIjogIl4yLjEuMSIsICJwYXRoZSI6ICJeMi4wLjMiLCAicGljb21hdGNoIjogIl40LjAuMyIsICJzdGQtZW52IjogIl40LjAuMC1yYy4xIiwgInRpbnliZW5jaCI6ICJeMi45LjAiLCAidGlueWV4ZWMiOiAiXjEuMC4yIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNSIsICJ0aW55cmFpbmJvdyI6ICJeMy4xLjAiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIsICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogIl4yLjMuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZWRnZS1ydW50aW1lL3ZtIjogIioiLCAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjkuMCIsICJAdHlwZXMvbm9kZSI6ICJeMjAuMC4wIHx8IF4yMi4wLjAgfHwgPj0yNC4wLjAiLCAiQHZpdGVzdC9icm93c2VyLXBsYXl3cmlnaHQiOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXByZXZpZXciOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXdlYmRyaXZlcmlvIjogIjQuMS42IiwgIkB2aXRlc3QvY292ZXJhZ2UtaXN0YW5idWwiOiAiNC4xLjYiLCAiQHZpdGVzdC9jb3ZlcmFnZS12OCI6ICI0LjEuNiIsICJAdml0ZXN0L3VpIjogIjQuMS42IiwgImhhcHB5LWRvbSI6ICIqIiwgImpzZG9tIjogIioiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZWRnZS1ydW50aW1lL3ZtIiwgIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAdHlwZXMvbm9kZSIsICJAdml0ZXN0L2Jyb3dzZXItcGxheXdyaWdodCIsICJAdml0ZXN0L2Jyb3dzZXItcHJldmlldyIsICJAdml0ZXN0L2Jyb3dzZXItd2ViZHJpdmVyaW8iLCAiQHZpdGVzdC9jb3ZlcmFnZS1pc3RhbmJ1bCIsICJAdml0ZXN0L2NvdmVyYWdlLXY4IiwgIkB2aXRlc3QvdWkiLCAiaGFwcHktZG9tIiwgImpzZG9tIl0sICJiaW4iOiB7ICJ2aXRlc3QiOiAidml0ZXN0Lm1qcyIgfSB9LCAic2hhNTEyLTZsdmpiUzNwOWI0Q3JkQ21ndXpiaDIvNHVvWGhHRTJxNzFSNE9YNXNxRjlSMWJvOVhkNmZHck1BZnZwNXduQ3psQm5GVmRDT3A2b251VFFWYm84aVVRPT0iXSwKCiAgICAid2h5LWlzLW5vZGUtcnVubmluZyI6IFsid2h5LWlzLW5vZGUtcnVubmluZ0AyLjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzaWdpbmZvIjogIl4yLjAuMCIsICJzdGFja2JhY2siOiAiMC4wLjIiIH0sICJiaW4iOiB7ICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLWhVcm1hV0JkVkRjeHZZcW55aDA5enVuS3pST1dqYlpUaU55OGRCRWprUzdlaEVEUWliWEo3WHZsbXRid3VUY2xVaUl5TitDeVhRRDRWbWtvOGZObTh3PT0iXSwKCiAgICAid3JhcC1hbnNpIjogWyJ3cmFwLWFuc2lANy4wLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMC4wIiwgInN0cmluZy13aWR0aCI6ICJeNC4xLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjAiIH0gfSwgInNoYTUxMi1ZVkdJajJrYW1MU1R4dzZOc1pqb0J4ZlN3c24weWNkZXNtYzRwK1EyMWM1elB1WjFwbCtOZnhWZHhQdGRIdm1OVk9RNlhTWUc0QVV0eXQvRmk3RDE2UT09Il0sCgogICAgInhzcyI6IFsieHNzQDEuMC4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb21tYW5kZXIiOiAiXjIuMjAuMyIsICJjc3NmaWx0ZXIiOiAiMC4wLjEwIiB9LCAiYmluIjogeyAieHNzIjogImJpbi94c3MiIH0gfSwgInNoYTUxMi1GVmRsVlZDNjdXT0lQdmZPd2hvTUVUVjcyZjZHYlc3YU9hYkJDM1d4Ti9vVWRvRU1EeUx6NE9nUnY1L2djazJaZU5xRVF1K1RiMGtsb292WE9mcFlWZz09Il0sCgogICAgInkxOG4iOiBbInkxOG5ANS4wLjgiLCAiIiwge30sICJzaGE1MTItMHBmRnplZ2VEV0pISklBbVRMUlAyRHdIamRGNXM3am85dHV6dGRReEFoSU5DZHZTKzNuR0lOcVBkMDBBcGhxSlIvMExoQU5VUzYvKzdTQ2I5OFlPZkE9PSJdLAoKICAgICJ5YW1sIjogWyJ5YW1sQDIuOS4wIiwgIiIsIHsgImJpbiI6IHsgInlhbWwiOiAiYmluLm1qcyIgfSB9LCAic2hhNTEyLTJBdmhOWDNtYjh6ZDZaeTdJTlR0U3BsMUYxNUhXNlducWowc3JXbGtLTGNwWWwvZ01JTUppeXVHcTJLZUkyWUZ4VVBqZGxCKzNMYzEwc2VNTHRMNGNBPT0iXSwKCiAgICAieWFyZ3MiOiBbInlhcmdzQDE3LjcuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjbGl1aSI6ICJeOC4wLjEiLCAiZXNjYWxhZGUiOiAiXjMuMS4xIiwgImdldC1jYWxsZXItZmlsZSI6ICJeMi4wLjUiLCAicmVxdWlyZS1kaXJlY3RvcnkiOiAiXjIuMS4xIiwgInN0cmluZy13aWR0aCI6ICJeNC4yLjMiLCAieTE4biI6ICJeNS4wLjUiLCAieWFyZ3MtcGFyc2VyIjogIl4yMS4xLjEiIH0gfSwgInNoYTUxMi03ZFN6elJRKytDS25OSS9rcktuWVJWN0pLS1BVWE1FaDYxc29hSEtnOW1yV0VoekZXaEZueFB4R2wrNjljRDFPdTYzQzEzTlVQQ25tSWNydnFDdU02dz09Il0sCgogICAgInlhcmdzLXBhcnNlciI6IFsieWFyZ3MtcGFyc2VyQDIxLjEuMSIsICIiLCB7fSwgInNoYTUxMi10VnBzSlc3RGRqZWNBaUZwYklCMWUzcXhJUXNFNk5vUGM1L2VUZHJiYklDNGgwTFZzV2hub2EzZyttMkhjbEJJdWpIenN4WjRWSlZBK0dVdWMyL0xCdz09Il0sCgogICAgInpvZCI6IFsiem9kQDQuNC4zIiwgIiIsIHt9LCAic2hhNTEyLXl0RU5GaklKRmwyVXdZZ2xkZTJqY2hXMkh3bTRHSkZMRGlTWFdkVHJKUUJJTjlGY3lwN240RGh4SkVpV05BSk1WMS9CcVdmVy9ra2c3MVVEY0hKeVRRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvY29yZSI6IFsiQGVtbmFwaS9jb3JlQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICIxLjIuMSIsICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXlxNk9rSjRwODJDQWZQbDB1OW1RZWJRSEtQSmtZN1dySXVrMjA1Y1RZblllK2syWjhZQmgxMUZyYlJHL0g2aWhpcnFjYWNPZ2wyQklPOG95TVFMZVh3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvcnVudGltZSI6IFsiQGVtbmFwaS9ydW50aW1lQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLWV3dllsazg2eFVvR0kwelFSTnEvbUMrMTZSMVFlRGxLUXkyMUtpM29TWVhOZ0xiNDVHVjFQNkEwTSsvczZueUN1TkRxZTVWcGFZODRCelhHd1Zid0ZBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvd2FzaS10aHJlYWRzIjogWyJAZW1uYXBpL3dhc2ktdGhyZWFkc0AxLjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXVUSUk3T1lGKy9NZXMvTXJjSU9ZcDV5T3RTTUxCV1NJb0xQcGNnd2lwb2lLYmxpNmszMjJ0Y29Gc3hvSUl4UERxVzAxU1FHQWdrbzRFelppMkJOdjJ3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BuYXBpLXJzL3dhc20tcnVudGltZSI6IFsiQG5hcGktcnMvd2FzbS1ydW50aW1lQDEuMS40IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB0eWJ5cy93YXNtLXV0aWwiOiAiXjAuMTAuMSIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuNy4xIiwgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjEiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLTNOUU5OZ0ExWVNsSmIva01IMWlsZEFTUDlIVzcvN2tZblJJMnN6V0phb2ZhUzFoV21iR0k0SCtkMysyMmFHelhYTjlJSituK0dpRlZjR2lwSlAxOG93PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0B0eWJ5cy93YXNtLXV0aWwiOiBbIkB0eWJ5cy93YXNtLXV0aWxAMC4xMC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItUm9CdkoyWDB3dUtsV0ZJanJ3ZmZHdzFJcVpIS1FxekljaEthYWRaWmZuTnBzQVlwMm1NMGgzNkp0UENqTkRBSEdnWWV6LzE1dU1CcGZHd2NoaGlNZ2c9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvdHNsaWIiOiBbInRzbGliQDIuOC4xIiwgIiIsIHsgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItb0pGdTk0SFFiK0tWZHVTVVFMN3ducG1xbmZtTHNPQS9uQWg2YjZFSDB3Q0VvSzAvbVBlWFU2YzN3S0RWODNNa091SFBSSHRTWEtLVTk5SUJhelMvMnc9PSJdLAoKICAgICJjaGFsay9zdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JANy4yLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItcXBDQXZSbDlzdHVPSHZlS3NuN0huY0pSdnY1MDFxSWFjS3pRbE8vK0x3eGM5KzBxMndMeXY0RGZ2dDgwL0RQbjJwcU9Cc0pkRGlvZ1hHUjkrT3Z3Unc9PSJdLAoKICAgICJuZXh0L3Bvc3Rjc3MiOiBbInBvc3Rjc3NAOC40LjMxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIm5hbm9pZCI6ICJeMy4zLjYiLCAicGljb2NvbG9ycyI6ICJeMS4wLjAiLCAic291cmNlLW1hcC1qcyI6ICJeMS4wLjIiIH0gfSwgInNoYTUxMi1QUzA4SWJvaWE5bXRzLzJ5Z1YzZUxwWTVnaG5VY2ZMVi9FWFRPVzFFMnFZeEpLR0dCVXROak43NkZZSG5NczM2Um1BUm40MWJDMEFabW4rclIwT1ZwUT09Il0sCiAgfQp9Cg==" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "pharmacy",\n "name": "Pharmacy",\n "tagline": "Licensed community pharmacy with prescription uploads, pharmacist consults, and OTC catalog.",\n "industry": "healthcare",\n "tags": ["healthcare", "regulated", "prescription"],\n "stability": "stable",\n "schemaType": "Pharmacy",\n "mock": {\n "seedName": "pharmacy",\n "seedBusinessId": "bus_wellspring_pharmacy"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n // Title supports a single \\n for a hard line break.\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-mono uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="text-[clamp(2.25rem,5vw,3.5rem)] font-bold mb-6 -tracking-[0.025em] leading-tight">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="text-2xl font-semibold mt-10 mb-3 -tracking-[0.02em]">\n {s.heading}\n </h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full catalogue with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/products/${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [Support / FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
1753
|
+
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": "middleware.ts", "kind": "text", "content": `import { NextResponse, type NextRequest } from "next/server";
|
|
1754
|
+
import { handleTokenRefresh, type OidcConfig } from "@cimplify/sdk/server";
|
|
1755
|
+
|
|
1756
|
+
function oidcConfig(): OidcConfig | null {
|
|
1757
|
+
const clientId =
|
|
1758
|
+
process.env.CIMPLIFY_CLIENT_ID?.trim() ||
|
|
1759
|
+
process.env.NEXT_PUBLIC_CIMPLIFY_CLIENT_ID?.trim() ||
|
|
1760
|
+
"";
|
|
1761
|
+
if (!clientId) return null;
|
|
1762
|
+
return {
|
|
1763
|
+
clientId,
|
|
1764
|
+
issuer: process.env.CIMPLIFY_ISSUER?.trim() || undefined,
|
|
1765
|
+
authUrl: process.env.CIMPLIFY_AUTH_URL?.trim() || undefined,
|
|
1766
|
+
};
|
|
1767
|
+
}
|
|
1768
|
+
|
|
1769
|
+
// Keeps the access token fresh before account pages render. Server Components
|
|
1770
|
+
// can't write cookies, so this is the one place the rotated token can be both
|
|
1771
|
+
// persisted (browser) and forwarded onto the current request (this render).
|
|
1772
|
+
export async function middleware(request: NextRequest) {
|
|
1773
|
+
const cfg = oidcConfig();
|
|
1774
|
+
if (!cfg) return NextResponse.next();
|
|
1775
|
+
|
|
1776
|
+
const { outcome, setCookies, cookies } = await handleTokenRefresh(request, cfg);
|
|
1777
|
+
if (outcome === "noop") return NextResponse.next();
|
|
1778
|
+
|
|
1779
|
+
for (const { name, value } of cookies) {
|
|
1780
|
+
request.cookies.set(name, value);
|
|
1781
|
+
}
|
|
1782
|
+
const response = NextResponse.next({ request });
|
|
1783
|
+
for (const cookie of setCookies) {
|
|
1784
|
+
response.headers.append("set-cookie", cookie);
|
|
1785
|
+
}
|
|
1786
|
+
return response;
|
|
1787
|
+
}
|
|
1788
|
+
|
|
1789
|
+
export const config = {
|
|
1790
|
+
matcher: ["/account/:path*"],
|
|
1791
|
+
};
|
|
1792
|
+
` }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed pharmacy --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed pharmacy",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.67.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS40LjEiLCAiIiwge30sICJzaGE1MTItUDVMVU5odGJqNllmSTNpSmp3NUVMOWVVQUc2T2l0RDBXM2ZXUWNwUWpEUmMvUUlzTDB0Uk51TzFQY0R2UGNjV0wxZlNUWFhkRTFkcytsOTVEVi9PRkE9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzAuMCIsICIiLCB7fSwgInNoYTUxMi1pYkQydXN4OUpSdTdmNXB1MnRNS01JNGNwQTROZ1hKUW9ZUlA0cFE3UHhtbjFsNmsvNTNxV3RRV1pheWhZeTNYNFFaa3Q5ME90K21KRWFlWG91aW82UT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjEiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZkpJM0kwcjNDM09qL3pkQkNwYUNtQlJaWWYwN3hwYXE0eUNmRERvU0ZtK2JlV056YklsMjZwdVc4UnJhVWR1Z29Kdy85NXplck5PbjZqYXNBaHpTbWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWNLbkFoV0VzVjdUUGNBLzVFQXRlRHA2S2NKWkJRMkcrQnFFN3pheU1NaTdrTXZ3UnNidjdXVDlhT25uMFdObDRTS0VJZjQzdmpTMzFpVVB1ODBuelhnPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZS3JWd1FqSVJCUG8rNUcvdTAzd0dqYmR5NHE3cHl6Q2U5M0RLOVZKN3prVm1lZzhMSjdHYmdzaUhXZFI0eFNvZTRDQVhSRDdCY2pnYnRyNjRia1hOZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItei9vQnNSRW80NlNzRnFCd1l0RmUwa3BKZUJpakFUNDhPL1dYTEk0c3VpQ0xCa3IwM1JUdFRKTUN6U2REZDJ6bmxoOFZKaXpMMDlYVmtRZ2s4SVpvbnc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItaWs4cTdHTTExenh2WXhGYzJQZURjVDZUQnZoQ1FNYVV4ZnBoL001bDlzS3VUcy9TamczTCtCeXcwRjd3MFpWTEJabXgzMFArZ0cwRUN6ek4rTUZjbVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItUW9TeDJFa3lycmRaNmtjeUU4c3RxWjYydDBZcmE4RnM1aWE5bE94SnJoNlRNUUpLN2dRS21zY2RUSGY3cE9YS1JFS3JWd090SmNRRzNxVlNmYzg2NkE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi11d053RnB3S2VOaVphd2ZBV0JnZzBWSXp0UFRWM2loaGgxdlYzMzRoOWl2bk5Mb3J4blFNVTZGejh3RzFaYjRRaDlMQzEvTWtjeVQzWWxEWEczUnNnZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi16WTFidWw3T1dyN0RGQmlKKyt3b2ZYdm5yOEI0NWNlM1FzUVVoS3JJaFhzeWdBaDdiVGt3eWVNMWJpMWEyZzVDL3lDL044VFp5R0RFb01mbS9sOW1wZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi0wZnJsc1QvZjRGdDZJN1NNRVNUS25GM2Nac2RpY1FuMWRDTWtGL2pUOXdETEUrZ0dvaVFmdjFubVQ5ZStzN3MvZmVrdnZ5NnRaTTJqSHZJMnRrYkpEUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjEiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1YQUJWbUdwOVRnMFdzcFRWdndkdVRjNGZwcXk2Sm5BVXJTUWU2T3V5cUQvMDNuSTdyME85T1dVa01Jd0ZyaktBSXFvbHZxb0E0WnJKcHBnd0UwR3htdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLWJWNGZ6c3d1elZjS0Q5MG8vVk02UXFLeG54bERxMGcyQklTRExOVm14cm5ocHYxRERieVBoQ0lqWWZ2ellMVitNdmtLS25RdDJRNkFPODZTRUJVTFVRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4xIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLS9NaDBaaHEzT1A3ZlZzMGtjUUhaUDZsWkV0aE1HVGFTZjhVQlFZU0ZFWkRXR1hYbEVDK25KNkVxZW5hSzJ0NExCWE1lM0ErSy9HMkJWWFhkdE9yNFBRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItKzF4YzlYNDVsOHVmc0JBbTZHanZ4MnFEUklZOWxUVnQwY2dXTmNKKzFnZGhYdmtieGVQQTYweVJUd1NUdVhMMDlDTWh5Sm1qcFY3RTNOb3l4YnFGUVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4xIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0xRCtVcVpkZm51UitKeTFHZ01Kd2k4NWJENDBIMjF1Tm1PUFJXUWh3NG9SU3VvbFovQjVyaXhaNDVESzJLWE9UQ3ZtVkNlY2F1V2dFaGJ3OGJJN3RPdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUlOQXljYVd1aGxPSzN3azRtUkhHc2Rnd1lXbWQ5Y0NoZFBkRTlid1dteTZybjlWcVZOWU5GR2hPZFhyb2ZYVXh3SEluY1NpUE5iOHRObThrbkRWSWVRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS42IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItN0VIRHF1UHRoQUxTVjBqaGhqZ0VXOEZYYXZpTXg3clNxdThXNm9xQ29BdU9oS292ODE0UDk5UURWMXB4TUEzUVB2MjFZdWR2Sm5nSWhqck5JNG9wTGc9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi1NQ0ZjNjNjek1qRUluT2xjWTJjcFFDdkNOK0tnYkFuKzYweHU5Y01nUDRzS2FMQzVKTkFLdzdKSDhRZEFub0FDODhoVzFJaVNOWitHZ1ZYbE4xVWNNUT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLWg1U3hEL0l6TmhaWW5yU1pSc1VaUUlDK3ZEMEdZOGNVdnEwaXdzbWtGS2l4UkNLTExXcUNYYS9GSVE0UzFSK3NJK1BHb29qa0hzZE5yYlppTTlRcGd3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItbk9QQ21uMit5RDBaTm1LZHNYR3YvVXhNTVdiTXVLZUQ2R3lZbmNOd2RrWUR4cFF2clBTS1lqMnJXdURqQzJZNGI2dzZoamlwNWRCS0Z6RVV1WmUzdkE9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1ZaHNkRTZ4QVZmVERtemp4TDJaRFV2amorWnNneU9LZStUZFF6cWtENzJ3SU9tSGthOE51R1E2TnBUTlp2OUQyWjYzZmJ3V0tKUGVWcEV3NEVRZ1l4dz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNiIsICIiLCB7fSwgInNoYTUxMi1KRkt4TXg2dWRod0toL0xkbzI3MGUxN1FYNzEwdmd1bk1rdVBBdlhqSFN2QzZvcUxXQUhoVmhqZy9JNzFxMHUwQ0JTRXJJT0RWMUtqdjBGUU5TV2pkZz09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItRnhJWStVODFSM0xHS0N4YUhIRlJRNStnNi9pUmdHTG1lSFdkcDJBbWo0bGpRUnJFSVdIbVp5RGZEWUJSWmxweXFBN3FLeHRTOUREMWRoazhSblJJVlE9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItbUxDTmJyUWxpMTFLMXlTVW11TnQ0WlVCM09wR0lEcTRxMnZUQlRmNWNMMmxwc1JqSTlRS3FTRDBuZGpXOEZ5dmNXL0pqNDZnTWU5c3l5SEFzdk1hL0E9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjMiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLTV4b0RmWCtmTDdmYUFUbmFnbVdQcGJGdHdoL1I3N1dtTU1xcUhHUzY1QzN2dkIwWUhyZ0YrQjFZbVozNDQxdE1qNW42M2swMjEyWE5vSnd6bGhmZlF3PT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwb3N0Y3NzIjogWyJwb3N0Y3NzQDguNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy4xMiIsICJwaWNvY29sb3JzIjogIl4xLjEuMSIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjIuMSIgfSB9LCAic2hhNTEyLUZmUjhzamQ0ZW0yVDZmYjNJMk13QUpVN0hXVk1yOXpiYStlbm1RZWVXRmZDYm0rVU9DLzBYNERTOFh0cFVUTXdXTUdiaktZUDd4amZOZWt6eUdtQjNBPT0iXSwKCiAgICAicmVhY3QiOiBbInJlYWN0QDE5LjIuNiIsICIiLCB7fSwgInNoYTUxMi1zZldHR2ZhdmkweHI4UGcwc1ZzeUhNQU96aVZZS2dQTE5yUzdpZytpdk1OYjN3YkNCdzNLeHRmbHNHQkF3RDNnWVFsRS9BRVpzVExnVG9SclNDamIwUT09Il0sCgogICAgInJlYWN0LWRheS1waWNrZXIiOiBbInJlYWN0LWRheS1waWNrZXJAOS4xNC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS40LjEiLCAiQHRhYmJ5X2FpL2hpanJpLWNvbnZlcnRlciI6ICIxLjAuNSIsICJkYXRlLWZucyI6ICJeNC4xLjAiLCAiZGF0ZS1mbnMtamFsYWxpIjogIjQuMS4wLTAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0xNi44LjAiIH0gfSwgInNoYTUxMi10QmFvRFdqUHdlME01cEdydW00SDBTUjZMeWsrQk85b0hucDlKYktwR0tXMm1scmFOUGdQOUJNZnNnNXBXcHdyc3NBUm1lcWs3WUJsMm9YdXRaVGFIQT09Il0sCgogICAgInJlYWN0LWRvbSI6IFsicmVhY3QtZG9tQDE5LjIuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzY2hlZHVsZXIiOiAiXjAuMjcuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTkuMi42IiB9IH0sICJzaGE1MTItMHByTUkraHZCYlBqc1dueERMeGxDR3lNOFBONlV1V2pFVUNZbVpoTzY3eElWOVhhc2Evci92RG5xK1h5cTRMbzI3ZzhRU2JPNVl6QVJ1MEQxU3BzM2c9PSJdLAoKICAgICJyZXF1aXJlLWRpcmVjdG9yeSI6IFsicmVxdWlyZS1kaXJlY3RvcnlAMi4xLjEiLCAiIiwge30sICJzaGE1MTItZkd4RUk3K3dzRzl4cnZkanNybG1MMjJPTVRUaUhSd0FNcm9pRWVNZ3E4Z3pvTEMvUFFyN1JzUkRTVExVZy9iWkFadEYrVFZJa0hjNi80UklLcnVpK1E9PSJdLAoKICAgICJyZXNlbGVjdCI6IFsicmVzZWxlY3RANS4yLjAiLCAiIiwge30sICJzaGE1MTItQWdaM1VPWm0zWW5kZnJKNE9ZamdyVDdibUNtLzFpcWtqdkVmSC9vWWp6aDZQRDJxdzRRdVQzampuWElycGR0NE1UcE1YY2xNVDNsWGJtUlkrWFJha3c9PSJdLAoKICAgICJyb2xsZG93biI6IFsicm9sbGRvd25AMS4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQG94Yy1wcm9qZWN0L3R5cGVzIjogIj0wLjEzMC4wIiwgIkByb2xsZG93bi9wbHVnaW51dGlscyI6ICJeMS4wLjAiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZnJlZWJzZC14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtbXVzbCI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1wcGM2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgteDY0LW11c2wiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzItYXJtNjQtbXN2YyI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2YyI6ICIxLjAuMSIgfSwgImJpbiI6IHsgInJvbGxkb3duIjogImJpbi9jbGkubWpzIiB9IH0sICJzaGE1MTItWDBLUUhsak5uRWtXTnFxaXo5ekpyR3VuaDFCMEhnT3hMWHZuRnBDT2NhZHpjeTVxb2haM3RxTUVVZzAwdm5jb1Jvdlh1SzNacUNUOUtubkt6b0luRlE9PSJdLAoKICAgICJyeGpzIjogWyJyeGpzQDcuOC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjEuMCIgfSB9LCAic2hhNTEyLWRoS2Y5MDNVL1BRWlk2Ym9OTnRBR2RXYkc4NVdBYmpULzF4WW9aSUM3RkFZMHlXYXBPQlFWc1ZyRGw1OFc4Ni8vZTFWcE1OQnRSVjRNYVhmZE15U0ZBPT0iXSwKCiAgICAic2NoZWR1bGVyIjogWyJzY2hlZHVsZXJAMC4yNy4wIiwgIiIsIHt9LCAic2hhNTEyLWVOditXclZiS3UxZjN2YllKVC94dGlGNXN5QTVIUElNdGY5SWdZL25LZzBzV3F6QVVFdnFZL3htN09jWmMvcWFmTHgvaU85RmdPbWVTQXA0djV0aS9RPT0iXSwKCiAgICAic2VtdmVyIjogWyJzZW12ZXJANy44LjAiLCAiIiwgeyAiYmluIjogeyAic2VtdmVyIjogImJpbi9zZW12ZXIuanMiIH0gfSwgInNoYTUxMi1BY003ZFYvNXVsNEVla29RMjlBZ201dnJpOEpOcVJ5ajM5bzBxcFg2dkRGMkdacnR1dFpsNVJ3Z0QxWG5aamlUQWZuY3NKaE1JNDhRUUgzc044N1lOQT09Il0sCgogICAgInNoYXJwIjogWyJzaGFycEAwLjM0LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGltZy9jb2xvdXIiOiAiXjEuMC4wIiwgImRldGVjdC1saWJjIjogIl4yLjEuMiIsICJzZW12ZXIiOiAiXjcuNy4zIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWRhcndpbi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtczM5MHgiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGludXgtYXJtIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXBwYzY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4bXVzbC1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eG11c2wteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdhc20zMiI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1pYTMyIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLXg2NCI6ICIwLjM0LjUiIH0gfSwgInNoYTUxMi1PdTlJNUZ0OVdOY0NiWHJVOWNNZ1BCY0NLOExpd0xxY2J5d1czdDRvRFYzN24xcHpwdU5Mc1lpQVY4ZU9EbmpidFFsU0R3WjJjVUVlUXo0RTU0SGx0Zz09Il0sCgogICAgInNoZWxsLXF1b3RlIjogWyJzaGVsbC1xdW90ZUAxLjguMyIsICIiLCB7fSwgInNoYTUxMi1PYm1uSUY0aFhOZzFCcWhuSG1nYkRFVEY4ZExQQ2dnWldCamtRZmhacGJzelpuWXVyNURVbGpUY0NIaWk1TEMzSjVFMHllTy8xTElNeUgrVXZIUWd5dz09Il0sCgogICAgInNpZ2luZm8iOiBbInNpZ2luZm9AMi4wLjAiLCAiIiwge30sICJzaGE1MTIteWJ4MFdPMS84YlNCTEVXWFp2RWQ3Z01XM1NuM0pGbFczVHZYMW5SRWJETFJOUU5hZU5OOFdLMG1lQndQZEFhT0k3VHRSUlJKbi9FczF6aHJyQ0h1N2c9PSJdLAoKICAgICJzb3VyY2UtbWFwIjogWyJzb3VyY2UtbWFwQDAuNi4xIiwgIiIsIHt9LCAic2hhNTEyLVVqZ2FwdW1XbGJNaGtCZ3pUN1lrYzVZWFVUNDZGMGlLdThTR1hxMGJjd1A1ZHovaDBQbGo2ZW5KcWp6MVpicTJsNVdhcVluclZid1dPV015RjNGNDdnPT0iXSwKCiAgICAic291cmNlLW1hcC1qcyI6IFsic291cmNlLW1hcC1qc0AxLjIuMSIsICIiLCB7fSwgInNoYTUxMi1VWFdNS2hMT3dWS2I3MjhJVXRRUFh4ZllVK3VzZHlidFVySy84dUdFOENRTXZyaE9wd3Z6REJ3ajBRaFNMN01RYzd2SXNJU0JHOFZROCtJRFF4cGZRQT09Il0sCgogICAgInNvdXJjZS1tYXAtc3VwcG9ydCI6IFsic291cmNlLW1hcC1zdXBwb3J0QDAuNS4yMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJidWZmZXItZnJvbSI6ICJeMS4wLjAiLCAic291cmNlLW1hcCI6ICJeMC42LjAiIH0gfSwgInNoYTUxMi11QkhVM0wzY3pzSXlZWEtYODhmZHJHb3Z4ZFNDb1RHRFJaNlNZWHRTUnhMWlV6SGc1UC82Nkh0NnVvVWxIdTlFWm9kK2luWGhLbzNxUWd3WFVUL3kxdz09Il0sCgogICAgInN0YWNrYmFjayI6IFsic3RhY2tiYWNrQDAuMC4yIiwgIiIsIHt9LCAic2hhNTEyLTFYTUpFNWZRbzFqR0g2WS83ZWJud1BPQkVrSUVuVDRRRjMyZDVSMStWWGRYdmVNMElCTUp0OHpmYXhYMVAzUWhWd3JZZSs1NzYramtBTnRTUzJtQmJ3PT0iXSwKCiAgICAic3RkLWVudiI6IFsic3RkLWVudkA0LjEuMCIsICIiLCB7fSwgInNoYTUxMi1ScTd5YmNYMlJ1QzU1cjlvYVBWRVc3L3h1M3RqOHU0R2VCWUhCV0N5Y2hGdHpNSXI4NkE3ZTNQUEVCUFQzN3NIU3RLWDMrVGlYL0ZyL0FDbUpMVmxMUT09Il0sCgogICAgInN0cmluZy13aWR0aCI6IFsic3RyaW5nLXdpZHRoQDQuMi4zIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImVtb2ppLXJlZ2V4IjogIl44LjAuMCIsICJpcy1mdWxsd2lkdGgtY29kZS1wb2ludCI6ICJeMy4wLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiIH0gfSwgInNoYTUxMi13S3lRUlFwakowc0lwNjJFclNaZEdzak1KV3NhcDVvUk5paEhodTZHN0pWTy85aklCNlV5ZXZMK3RYdU9xcm5nOGovY3hLVFd5V1V3dlNUcmlpWnovZz09Il0sCgogICAgInN0cmlwLWFuc2kiOiBbInN0cmlwLWFuc2lANi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1yZWdleCI6ICJeNS4wLjEiIH0gfSwgInNoYTUxMi1ZMzhWUFNIY3FrRnJDcEZuUTl2dVNYbXF1dXY1b1hPS3BHZVQ2YUdycjNvM0djOUFsVmE2SkJmVVNPQ25ieEdHWkYrLzBvb0k3S3JQdVVTenRVZFU1QT09Il0sCgogICAgInN0eWxlZC1qc3giOiBbInN0eWxlZC1qc3hANS4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY2xpZW50LW9ubHkiOiAiMC4wLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0gMTYuOC4wIHx8IDE3LngueCB8fCBeMTguMC4wLTAgfHwgXjE5LjAuMC0wIiB9IH0sICJzaGE1MTItcVNWeURUZU1vdGR2UVlvSFdMTkd3UkZKSEMraStadmRCUllvc09GZ0MrV2cxdng0ZnJOMi9SRy9OQTdTWXFxdktOTGYzOVAyTFNSQTJwdTZuMFhZWkE9PSJdLAoKICAgICJzdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JAOC4xLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItTXBVRU4yT29kdFV6eHZLUWw3MmNVRjdSUTVFaUhzR3ZTc1ZHMGlhOWM1UmJXR0wyQ0k0QzdFcFBTOFVUQklwbG5selppTnVWNTZ3K0Z1Tnh5M3R5MlE9PSJdLAoKICAgICJ0YWlsd2luZC1tZXJnZSI6IFsidGFpbHdpbmQtbWVyZ2VAMy42LjAiLCAiIiwge30sICJzaGE1MTItdXhMN3FBVlFyaXFSUVBBeUszcGo2NlZxc2tXcW9aMzdQVzk0andPVHdOZnEvejlveXUxVitlcXJacXRSMitmQ2lYZFlPWmUvTW9kdDhHdHZxTnp1K3c9PSJdLAoKICAgICJ0YWlsd2luZGNzcyI6IFsidGFpbHdpbmRjc3NANC4zLjAiLCAiIiwge30sICJzaGE1MTIteTZueE1HQjFuTVc5UjZrOTZlNWdkSUZ6Y2ZML2dUSlJOYXFHZXMxWXZrTG5QVlh6V2dicUZGMnlMQzBUOEc3NzRuMjRjeDNQZThYcktvbmlDT0FIK1E9PSJdLAoKICAgICJ0YXBhYmxlIjogWyJ0YXBhYmxlQDIuMy4zIiwgIiIsIHt9LCAic2hhNTEyLXV4Yy96cHFGZzZ4N0M4dk9FN2xoNkxiZGE4ZUVMOXptVm0vUExlVFBCUmhoMXhDZ2RXYVErSjFDVWllR3BJZm0ySGR0c1VwUnYrSHNoaWFzQk1jYzZBPT0iXSwKCiAgICAidGVyc2VyIjogWyJ0ZXJzZXJANS4xNi45IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiAiXjAuMy4yIiwgImFjb3JuIjogIl44LjUuMCIsICJjb21tYW5kZXIiOiAiXjIuMjAuMCIsICJzb3VyY2UtbWFwLXN1cHBvcnQiOiAifjAuNS4yMCIgfSwgImJpbiI6IHsgInRlcnNlciI6ICJiaW4vdGVyc2VyIiB9IH0sICJzaGE1MTItSFBhL0ZkVEI5WEdJMkgxL2tlTEZaSHhsNldOdkFJNFlhbEhHdERRVGxNbkpjb3FTYWIxVXdMNGwxaEdFaHM2L0dtTEhCWklnL1lnQisramNiem9PRWc9PSJdLAoKICAgICJ0aW55YmVuY2giOiBbInRpbnliZW5jaEAyLjkuMCIsICIiLCB7fSwgInNoYTUxMi0wK0RVdnFXTVZhbExtaGE2bHI0a0Q4aUFNSzFIelYwL2FLbkN0V2I5djk2NDFUblAvTUZiN1BjMmJ4b3hRalRYQUVycnlYVmdVT2Z2MllxTmxscUdlZz09Il0sCgogICAgInRpbnlleGVjIjogWyJ0aW55ZXhlY0AxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1kQXFTcUUvUmFicEJLSTgraDI2R2ZMcTZWYjNKVlhzMzBYWVFqZE1qYWovYzJ0UzhJWVlNYkl6UDU5OUt0Umo3YzU3L3dZQXBiM1FqZ1JnWG1yQ3VrQT09Il0sCgogICAgInRpbnlnbG9iYnkiOiBbInRpbnlnbG9iYnlAMC4yLjE2IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImZkaXIiOiAiXjYuNS4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiIH0gfSwgInNoYTUxMi1wbjk5VmhvQUNZUjhuRkhoeHFpeCt1dnNiWGluZUFhc1dtNW9qWG9OOHhFd0s1S2QzL1RyaE5uMXdCeXVENTJVeFdSTHk4cHUra1JNbmlFaTZFcTlaZz09Il0sCgogICAgInRpbnlyYWluYm93IjogWyJ0aW55cmFpbmJvd0AzLjEuMCIsICIiLCB7fSwgInNoYTUxMi1CZitJTG1CZ3JldFVyZEp4elhNMFNnWExaM1hmaWFVdU9qL0lLUUh1VFhpcCswNVhuK3V5RVlkVmcwa1lEaXBUQmNMckNWeVV6QVB6N1FtQXJiMG1tdz09Il0sCgogICAgInRyZWUta2lsbCI6IFsidHJlZS1raWxsQDEuMi4yIiwgIiIsIHsgImJpbiI6IHsgInRyZWUta2lsbCI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1MME9ycGk4cUdwUkcvL05kK0g5MHZGQiszaUhudWUxelNTR21OT09DaDFHTEo3clVLVndWMkh2aWpwaEdRUzJVbWhVWmV3UzlWZ3Z4WUlkZ3IrZkcxQT09Il0sCgogICAgInRzbGliIjogWyJ0c2xpYkAyLjguMSIsICIiLCB7fSwgInNoYTUxMi1vSkZ1OTRIUWIrS1ZkdVNVUUw3d25wbXFuZm1Mc09BL25BaDZiNkVIMHdDRW9LMC9tUGVYVTZjM3dLRFY4M01rT3VIUFJIdFNYS0tVOTlJQmF6Uy8ydz09Il0sCgogICAgInR5cGVzY3JpcHQiOiBbInR5cGVzY3JpcHRANS45LjMiLCAiIiwgeyAiYmluIjogeyAidHNjIjogImJpbi90c2MiLCAidHNzZXJ2ZXIiOiAiYmluL3Rzc2VydmVyIiB9IH0sICJzaGE1MTItamwxdlp6UERpbkxyOWVVdDNKL3Q3VjZGZ05FdzlRanZCUGR5c3o5S2ZRREQ0MWZRckMyWTR2S1FkaWFVcEZUNGJYbGIxUkhoTHBwOHd0bTZNNVRnU3c9PSJdLAoKICAgICJ1bmRpY2ktdHlwZXMiOiBbInVuZGljaS10eXBlc0A2LjIxLjAiLCAiIiwge30sICJzaGE1MTItaXdEWnFnMFFBR3JnOVJhdjVING4wTTY0YzNta1I1OWNKNndRcCs3QzRuSTBnc21FeGFlZGFZTE5PNDRlVDRBdEJCd2piVGlHUE1sdDJNZDBUOUg5SlE9PSJdLAoKICAgICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6IFsidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmVAMS42LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIl4xNi44LjAgfHwgXjE3LjAuMCB8fCBeMTguMC4wIHx8IF4xOS4wLjAiIH0gfSwgInNoYTUxMi1QcDZHU3dHUC9OclBJcnhWRkFJa09RZXl3OGxGZW5PSGlqUVdrVVRyRHZyRjRBTHF5bFAyQy9LQ2tlUzlkcFVNM0t2WVJRaG5hNXZ0N0lMOTUrWlE5dz09Il0sCgogICAgInZpdGUiOiBbInZpdGVAOC4wLjEzIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2NzcyI6ICJeMS4zMi4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiLCAicG9zdGNzcyI6ICJeOC41LjE0IiwgInJvbGxkb3duIjogIjEuMC4xIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNiIgfSwgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiZnNldmVudHMiOiAifjIuMy4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkB0eXBlcy9ub2RlIjogIl4yMC4xOS4wIHx8ID49MjIuMTIuMCIsICJAdml0ZWpzL2RldnRvb2xzIjogIl4wLjEuMTgiLCAiZXNidWlsZCI6ICJeMC4yNy4wIHx8IF4wLjI4LjAiLCAiaml0aSI6ICI+PTEuMjEuMCIsICJsZXNzIjogIl40LjAuMCIsICJzYXNzIjogIl4xLjcwLjAiLCAic2Fzcy1lbWJlZGRlZCI6ICJeMS43MC4wIiwgInN0eWx1cyI6ICI+PTAuNTQuOCIsICJzdWdhcnNzIjogIl41LjAuMCIsICJ0ZXJzZXIiOiAiXjUuMTYuMCIsICJ0c3giOiAiXjQuOC4xIiwgInlhbWwiOiAiXjIuNC4yIiB9LCAib3B0aW9uYWxQZWVycyI6IFsiQHR5cGVzL25vZGUiLCAiQHZpdGVqcy9kZXZ0b29scyIsICJlc2J1aWxkIiwgImppdGkiLCAibGVzcyIsICJzYXNzIiwgInNhc3MtZW1iZWRkZWQiLCAic3R5bHVzIiwgInN1Z2Fyc3MiLCAidGVyc2VyIiwgInRzeCIsICJ5YW1sIl0sICJiaW4iOiB7ICJ2aXRlIjogImJpbi92aXRlLmpzIiB9IH0sICJzaGE1MTItTUZ0akJZZ3ptU3htZ0E0UkFmakl5WFdwR2Uxb0FMbmpnVVR6elY3UUx4L1RLeEN6anRNSDZGZDkvZVZLKzVGZzFxTm96NVZBd3NtTXMvTm9mcm1Kdnc9PSJdLAoKICAgICJ2aXRlc3QiOiBbInZpdGVzdEA0LjEuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdml0ZXN0L2V4cGVjdCI6ICI0LjEuNiIsICJAdml0ZXN0L21vY2tlciI6ICI0LjEuNiIsICJAdml0ZXN0L3ByZXR0eS1mb3JtYXQiOiAiNC4xLjYiLCAiQHZpdGVzdC9ydW5uZXIiOiAiNC4xLjYiLCAiQHZpdGVzdC9zbmFwc2hvdCI6ICI0LjEuNiIsICJAdml0ZXN0L3NweSI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgImVzLW1vZHVsZS1sZXhlciI6ICJeMi4wLjAiLCAiZXhwZWN0LXR5cGUiOiAiXjEuMy4wIiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJvYnVnIjogIl4yLjEuMSIsICJwYXRoZSI6ICJeMi4wLjMiLCAicGljb21hdGNoIjogIl40LjAuMyIsICJzdGQtZW52IjogIl40LjAuMC1yYy4xIiwgInRpbnliZW5jaCI6ICJeMi45LjAiLCAidGlueWV4ZWMiOiAiXjEuMC4yIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNSIsICJ0aW55cmFpbmJvdyI6ICJeMy4xLjAiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIsICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogIl4yLjMuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZWRnZS1ydW50aW1lL3ZtIjogIioiLCAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjkuMCIsICJAdHlwZXMvbm9kZSI6ICJeMjAuMC4wIHx8IF4yMi4wLjAgfHwgPj0yNC4wLjAiLCAiQHZpdGVzdC9icm93c2VyLXBsYXl3cmlnaHQiOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXByZXZpZXciOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXdlYmRyaXZlcmlvIjogIjQuMS42IiwgIkB2aXRlc3QvY292ZXJhZ2UtaXN0YW5idWwiOiAiNC4xLjYiLCAiQHZpdGVzdC9jb3ZlcmFnZS12OCI6ICI0LjEuNiIsICJAdml0ZXN0L3VpIjogIjQuMS42IiwgImhhcHB5LWRvbSI6ICIqIiwgImpzZG9tIjogIioiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZWRnZS1ydW50aW1lL3ZtIiwgIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAdHlwZXMvbm9kZSIsICJAdml0ZXN0L2Jyb3dzZXItcGxheXdyaWdodCIsICJAdml0ZXN0L2Jyb3dzZXItcHJldmlldyIsICJAdml0ZXN0L2Jyb3dzZXItd2ViZHJpdmVyaW8iLCAiQHZpdGVzdC9jb3ZlcmFnZS1pc3RhbmJ1bCIsICJAdml0ZXN0L2NvdmVyYWdlLXY4IiwgIkB2aXRlc3QvdWkiLCAiaGFwcHktZG9tIiwgImpzZG9tIl0sICJiaW4iOiB7ICJ2aXRlc3QiOiAidml0ZXN0Lm1qcyIgfSB9LCAic2hhNTEyLTZsdmpiUzNwOWI0Q3JkQ21ndXpiaDIvNHVvWGhHRTJxNzFSNE9YNXNxRjlSMWJvOVhkNmZHck1BZnZwNXduQ3psQm5GVmRDT3A2b251VFFWYm84aVVRPT0iXSwKCiAgICAid2h5LWlzLW5vZGUtcnVubmluZyI6IFsid2h5LWlzLW5vZGUtcnVubmluZ0AyLjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzaWdpbmZvIjogIl4yLjAuMCIsICJzdGFja2JhY2siOiAiMC4wLjIiIH0sICJiaW4iOiB7ICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLWhVcm1hV0JkVkRjeHZZcW55aDA5enVuS3pST1dqYlpUaU55OGRCRWprUzdlaEVEUWliWEo3WHZsbXRid3VUY2xVaUl5TitDeVhRRDRWbWtvOGZObTh3PT0iXSwKCiAgICAid3JhcC1hbnNpIjogWyJ3cmFwLWFuc2lANy4wLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMC4wIiwgInN0cmluZy13aWR0aCI6ICJeNC4xLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjAiIH0gfSwgInNoYTUxMi1ZVkdJajJrYW1MU1R4dzZOc1pqb0J4ZlN3c24weWNkZXNtYzRwK1EyMWM1elB1WjFwbCtOZnhWZHhQdGRIdm1OVk9RNlhTWUc0QVV0eXQvRmk3RDE2UT09Il0sCgogICAgInhzcyI6IFsieHNzQDEuMC4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb21tYW5kZXIiOiAiXjIuMjAuMyIsICJjc3NmaWx0ZXIiOiAiMC4wLjEwIiB9LCAiYmluIjogeyAieHNzIjogImJpbi94c3MiIH0gfSwgInNoYTUxMi1GVmRsVlZDNjdXT0lQdmZPd2hvTUVUVjcyZjZHYlc3YU9hYkJDM1d4Ti9vVWRvRU1EeUx6NE9nUnY1L2djazJaZU5xRVF1K1RiMGtsb292WE9mcFlWZz09Il0sCgogICAgInkxOG4iOiBbInkxOG5ANS4wLjgiLCAiIiwge30sICJzaGE1MTItMHBmRnplZ2VEV0pISklBbVRMUlAyRHdIamRGNXM3am85dHV6dGRReEFoSU5DZHZTKzNuR0lOcVBkMDBBcGhxSlIvMExoQU5VUzYvKzdTQ2I5OFlPZkE9PSJdLAoKICAgICJ5YW1sIjogWyJ5YW1sQDIuOS4wIiwgIiIsIHsgImJpbiI6IHsgInlhbWwiOiAiYmluLm1qcyIgfSB9LCAic2hhNTEyLTJBdmhOWDNtYjh6ZDZaeTdJTlR0U3BsMUYxNUhXNlducWowc3JXbGtLTGNwWWwvZ01JTUppeXVHcTJLZUkyWUZ4VVBqZGxCKzNMYzEwc2VNTHRMNGNBPT0iXSwKCiAgICAieWFyZ3MiOiBbInlhcmdzQDE3LjcuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjbGl1aSI6ICJeOC4wLjEiLCAiZXNjYWxhZGUiOiAiXjMuMS4xIiwgImdldC1jYWxsZXItZmlsZSI6ICJeMi4wLjUiLCAicmVxdWlyZS1kaXJlY3RvcnkiOiAiXjIuMS4xIiwgInN0cmluZy13aWR0aCI6ICJeNC4yLjMiLCAieTE4biI6ICJeNS4wLjUiLCAieWFyZ3MtcGFyc2VyIjogIl4yMS4xLjEiIH0gfSwgInNoYTUxMi03ZFN6elJRKytDS25OSS9rcktuWVJWN0pLS1BVWE1FaDYxc29hSEtnOW1yV0VoekZXaEZueFB4R2wrNjljRDFPdTYzQzEzTlVQQ25tSWNydnFDdU02dz09Il0sCgogICAgInlhcmdzLXBhcnNlciI6IFsieWFyZ3MtcGFyc2VyQDIxLjEuMSIsICIiLCB7fSwgInNoYTUxMi10VnBzSlc3RGRqZWNBaUZwYklCMWUzcXhJUXNFNk5vUGM1L2VUZHJiYklDNGgwTFZzV2hub2EzZyttMkhjbEJJdWpIenN4WjRWSlZBK0dVdWMyL0xCdz09Il0sCgogICAgInpvZCI6IFsiem9kQDQuNC4zIiwgIiIsIHt9LCAic2hhNTEyLXl0RU5GaklKRmwyVXdZZ2xkZTJqY2hXMkh3bTRHSkZMRGlTWFdkVHJKUUJJTjlGY3lwN240RGh4SkVpV05BSk1WMS9CcVdmVy9ra2c3MVVEY0hKeVRRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvY29yZSI6IFsiQGVtbmFwaS9jb3JlQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICIxLjIuMSIsICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXlxNk9rSjRwODJDQWZQbDB1OW1RZWJRSEtQSmtZN1dySXVrMjA1Y1RZblllK2syWjhZQmgxMUZyYlJHL0g2aWhpcnFjYWNPZ2wyQklPOG95TVFMZVh3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvcnVudGltZSI6IFsiQGVtbmFwaS9ydW50aW1lQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLWV3dllsazg2eFVvR0kwelFSTnEvbUMrMTZSMVFlRGxLUXkyMUtpM29TWVhOZ0xiNDVHVjFQNkEwTSsvczZueUN1TkRxZTVWcGFZODRCelhHd1Zid0ZBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvd2FzaS10aHJlYWRzIjogWyJAZW1uYXBpL3dhc2ktdGhyZWFkc0AxLjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXVUSUk3T1lGKy9NZXMvTXJjSU9ZcDV5T3RTTUxCV1NJb0xQcGNnd2lwb2lLYmxpNmszMjJ0Y29Gc3hvSUl4UERxVzAxU1FHQWdrbzRFelppMkJOdjJ3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BuYXBpLXJzL3dhc20tcnVudGltZSI6IFsiQG5hcGktcnMvd2FzbS1ydW50aW1lQDEuMS40IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB0eWJ5cy93YXNtLXV0aWwiOiAiXjAuMTAuMSIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuNy4xIiwgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjEiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLTNOUU5OZ0ExWVNsSmIva01IMWlsZEFTUDlIVzcvN2tZblJJMnN6V0phb2ZhUzFoV21iR0k0SCtkMysyMmFHelhYTjlJSituK0dpRlZjR2lwSlAxOG93PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0B0eWJ5cy93YXNtLXV0aWwiOiBbIkB0eWJ5cy93YXNtLXV0aWxAMC4xMC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItUm9CdkoyWDB3dUtsV0ZJanJ3ZmZHdzFJcVpIS1FxekljaEthYWRaWmZuTnBzQVlwMm1NMGgzNkp0UENqTkRBSEdnWWV6LzE1dU1CcGZHd2NoaGlNZ2c9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvdHNsaWIiOiBbInRzbGliQDIuOC4xIiwgIiIsIHsgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItb0pGdTk0SFFiK0tWZHVTVVFMN3ducG1xbmZtTHNPQS9uQWg2YjZFSDB3Q0VvSzAvbVBlWFU2YzN3S0RWODNNa091SFBSSHRTWEtLVTk5SUJhelMvMnc9PSJdLAoKICAgICJjaGFsay9zdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JANy4yLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItcXBDQXZSbDlzdHVPSHZlS3NuN0huY0pSdnY1MDFxSWFjS3pRbE8vK0x3eGM5KzBxMndMeXY0RGZ2dDgwL0RQbjJwcU9Cc0pkRGlvZ1hHUjkrT3Z3Unc9PSJdLAoKICAgICJuZXh0L3Bvc3Rjc3MiOiBbInBvc3Rjc3NAOC40LjMxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIm5hbm9pZCI6ICJeMy4zLjYiLCAicGljb2NvbG9ycyI6ICJeMS4wLjAiLCAic291cmNlLW1hcC1qcyI6ICJeMS4wLjIiIH0gfSwgInNoYTUxMi1QUzA4SWJvaWE5bXRzLzJ5Z1YzZUxwWTVnaG5VY2ZMVi9FWFRPVzFFMnFZeEpLR0dCVXROak43NkZZSG5NczM2Um1BUm40MWJDMEFabW4rclIwT1ZwUT09Il0sCiAgfQp9Cg==" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "pharmacy",\n "name": "Pharmacy",\n "tagline": "Licensed community pharmacy with prescription uploads, pharmacist consults, and OTC catalog.",\n "industry": "healthcare",\n "tags": ["healthcare", "regulated", "prescription"],\n "stability": "stable",\n "schemaType": "Pharmacy",\n "mock": {\n "seedName": "pharmacy",\n "seedBusinessId": "bus_wellspring_pharmacy"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n // Title supports a single \\n for a hard line break.\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-mono uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="text-[clamp(2.25rem,5vw,3.5rem)] font-bold mb-6 -tracking-[0.025em] leading-tight">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="text-2xl font-semibold mt-10 mb-3 -tracking-[0.02em]">\n {s.heading}\n </h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full catalogue with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/products/${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [Support / FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
1715
1793
|
|
|
1716
1794
|
import { useState } from "react";
|
|
1717
1795
|
|
|
@@ -2338,7 +2416,46 @@ export const brand: Brand = {
|
|
|
2338
2416
|
* the root layout prerenderable.
|
|
2339
2417
|
*/
|
|
2340
2418
|
export const SITE_URL = "https://example.com";
|
|
2341
|
-
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed restaurant --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed restaurant",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.65.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS40LjEiLCAiIiwge30sICJzaGE1MTItUDVMVU5odGJqNllmSTNpSmp3NUVMOWVVQUc2T2l0RDBXM2ZXUWNwUWpEUmMvUUlzTDB0Uk51TzFQY0R2UGNjV0wxZlNUWFhkRTFkcytsOTVEVi9PRkE9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzAuMCIsICIiLCB7fSwgInNoYTUxMi1pYkQydXN4OUpSdTdmNXB1MnRNS01JNGNwQTROZ1hKUW9ZUlA0cFE3UHhtbjFsNmsvNTNxV3RRV1pheWhZeTNYNFFaa3Q5ME90K21KRWFlWG91aW82UT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjEiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZkpJM0kwcjNDM09qL3pkQkNwYUNtQlJaWWYwN3hwYXE0eUNmRERvU0ZtK2JlV056YklsMjZwdVc4UnJhVWR1Z29Kdy85NXplck5PbjZqYXNBaHpTbWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWNLbkFoV0VzVjdUUGNBLzVFQXRlRHA2S2NKWkJRMkcrQnFFN3pheU1NaTdrTXZ3UnNidjdXVDlhT25uMFdObDRTS0VJZjQzdmpTMzFpVVB1ODBuelhnPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZS3JWd1FqSVJCUG8rNUcvdTAzd0dqYmR5NHE3cHl6Q2U5M0RLOVZKN3prVm1lZzhMSjdHYmdzaUhXZFI0eFNvZTRDQVhSRDdCY2pnYnRyNjRia1hOZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItei9vQnNSRW80NlNzRnFCd1l0RmUwa3BKZUJpakFUNDhPL1dYTEk0c3VpQ0xCa3IwM1JUdFRKTUN6U2REZDJ6bmxoOFZKaXpMMDlYVmtRZ2s4SVpvbnc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItaWs4cTdHTTExenh2WXhGYzJQZURjVDZUQnZoQ1FNYVV4ZnBoL001bDlzS3VUcy9TamczTCtCeXcwRjd3MFpWTEJabXgzMFArZ0cwRUN6ek4rTUZjbVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItUW9TeDJFa3lycmRaNmtjeUU4c3RxWjYydDBZcmE4RnM1aWE5bE94SnJoNlRNUUpLN2dRS21zY2RUSGY3cE9YS1JFS3JWd090SmNRRzNxVlNmYzg2NkE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi11d053RnB3S2VOaVphd2ZBV0JnZzBWSXp0UFRWM2loaGgxdlYzMzRoOWl2bk5Mb3J4blFNVTZGejh3RzFaYjRRaDlMQzEvTWtjeVQzWWxEWEczUnNnZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi16WTFidWw3T1dyN0RGQmlKKyt3b2ZYdm5yOEI0NWNlM1FzUVVoS3JJaFhzeWdBaDdiVGt3eWVNMWJpMWEyZzVDL3lDL044VFp5R0RFb01mbS9sOW1wZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi0wZnJsc1QvZjRGdDZJN1NNRVNUS25GM2Nac2RpY1FuMWRDTWtGL2pUOXdETEUrZ0dvaVFmdjFubVQ5ZStzN3MvZmVrdnZ5NnRaTTJqSHZJMnRrYkpEUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjEiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1YQUJWbUdwOVRnMFdzcFRWdndkdVRjNGZwcXk2Sm5BVXJTUWU2T3V5cUQvMDNuSTdyME85T1dVa01Jd0ZyaktBSXFvbHZxb0E0WnJKcHBnd0UwR3htdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLWJWNGZ6c3d1elZjS0Q5MG8vVk02UXFLeG54bERxMGcyQklTRExOVm14cm5ocHYxRERieVBoQ0lqWWZ2ellMVitNdmtLS25RdDJRNkFPODZTRUJVTFVRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4xIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLS9NaDBaaHEzT1A3ZlZzMGtjUUhaUDZsWkV0aE1HVGFTZjhVQlFZU0ZFWkRXR1hYbEVDK25KNkVxZW5hSzJ0NExCWE1lM0ErSy9HMkJWWFhkdE9yNFBRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItKzF4YzlYNDVsOHVmc0JBbTZHanZ4MnFEUklZOWxUVnQwY2dXTmNKKzFnZGhYdmtieGVQQTYweVJUd1NUdVhMMDlDTWh5Sm1qcFY3RTNOb3l4YnFGUVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4xIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0xRCtVcVpkZm51UitKeTFHZ01Kd2k4NWJENDBIMjF1Tm1PUFJXUWh3NG9SU3VvbFovQjVyaXhaNDVESzJLWE9UQ3ZtVkNlY2F1V2dFaGJ3OGJJN3RPdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUlOQXljYVd1aGxPSzN3azRtUkhHc2Rnd1lXbWQ5Y0NoZFBkRTlid1dteTZybjlWcVZOWU5GR2hPZFhyb2ZYVXh3SEluY1NpUE5iOHRObThrbkRWSWVRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS42IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItN0VIRHF1UHRoQUxTVjBqaGhqZ0VXOEZYYXZpTXg3clNxdThXNm9xQ29BdU9oS292ODE0UDk5UURWMXB4TUEzUVB2MjFZdWR2Sm5nSWhqck5JNG9wTGc9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi1NQ0ZjNjNjek1qRUluT2xjWTJjcFFDdkNOK0tnYkFuKzYweHU5Y01nUDRzS2FMQzVKTkFLdzdKSDhRZEFub0FDODhoVzFJaVNOWitHZ1ZYbE4xVWNNUT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLWg1U3hEL0l6TmhaWW5yU1pSc1VaUUlDK3ZEMEdZOGNVdnEwaXdzbWtGS2l4UkNLTExXcUNYYS9GSVE0UzFSK3NJK1BHb29qa0hzZE5yYlppTTlRcGd3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItbk9QQ21uMit5RDBaTm1LZHNYR3YvVXhNTVdiTXVLZUQ2R3lZbmNOd2RrWUR4cFF2clBTS1lqMnJXdURqQzJZNGI2dzZoamlwNWRCS0Z6RVV1WmUzdkE9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1ZaHNkRTZ4QVZmVERtemp4TDJaRFV2amorWnNneU9LZStUZFF6cWtENzJ3SU9tSGthOE51R1E2TnBUTlp2OUQyWjYzZmJ3V0tKUGVWcEV3NEVRZ1l4dz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNiIsICIiLCB7fSwgInNoYTUxMi1KRkt4TXg2dWRod0toL0xkbzI3MGUxN1FYNzEwdmd1bk1rdVBBdlhqSFN2QzZvcUxXQUhoVmhqZy9JNzFxMHUwQ0JTRXJJT0RWMUtqdjBGUU5TV2pkZz09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItRnhJWStVODFSM0xHS0N4YUhIRlJRNStnNi9pUmdHTG1lSFdkcDJBbWo0bGpRUnJFSVdIbVp5RGZEWUJSWmxweXFBN3FLeHRTOUREMWRoazhSblJJVlE9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItbUxDTmJyUWxpMTFLMXlTVW11TnQ0WlVCM09wR0lEcTRxMnZUQlRmNWNMMmxwc1JqSTlRS3FTRDBuZGpXOEZ5dmNXL0pqNDZnTWU5c3l5SEFzdk1hL0E9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjMiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLTV4b0RmWCtmTDdmYUFUbmFnbVdQcGJGdHdoL1I3N1dtTU1xcUhHUzY1QzN2dkIwWUhyZ0YrQjFZbVozNDQxdE1qNW42M2swMjEyWE5vSnd6bGhmZlF3PT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwb3N0Y3NzIjogWyJwb3N0Y3NzQDguNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy4xMiIsICJwaWNvY29sb3JzIjogIl4xLjEuMSIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjIuMSIgfSB9LCAic2hhNTEyLUZmUjhzamQ0ZW0yVDZmYjNJMk13QUpVN0hXVk1yOXpiYStlbm1RZWVXRmZDYm0rVU9DLzBYNERTOFh0cFVUTXdXTUdiaktZUDd4amZOZWt6eUdtQjNBPT0iXSwKCiAgICAicmVhY3QiOiBbInJlYWN0QDE5LjIuNiIsICIiLCB7fSwgInNoYTUxMi1zZldHR2ZhdmkweHI4UGcwc1ZzeUhNQU96aVZZS2dQTE5yUzdpZytpdk1OYjN3YkNCdzNLeHRmbHNHQkF3RDNnWVFsRS9BRVpzVExnVG9SclNDamIwUT09Il0sCgogICAgInJlYWN0LWRheS1waWNrZXIiOiBbInJlYWN0LWRheS1waWNrZXJAOS4xNC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS40LjEiLCAiQHRhYmJ5X2FpL2hpanJpLWNvbnZlcnRlciI6ICIxLjAuNSIsICJkYXRlLWZucyI6ICJeNC4xLjAiLCAiZGF0ZS1mbnMtamFsYWxpIjogIjQuMS4wLTAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0xNi44LjAiIH0gfSwgInNoYTUxMi10QmFvRFdqUHdlME01cEdydW00SDBTUjZMeWsrQk85b0hucDlKYktwR0tXMm1scmFOUGdQOUJNZnNnNXBXcHdyc3NBUm1lcWs3WUJsMm9YdXRaVGFIQT09Il0sCgogICAgInJlYWN0LWRvbSI6IFsicmVhY3QtZG9tQDE5LjIuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzY2hlZHVsZXIiOiAiXjAuMjcuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTkuMi42IiB9IH0sICJzaGE1MTItMHByTUkraHZCYlBqc1dueERMeGxDR3lNOFBONlV1V2pFVUNZbVpoTzY3eElWOVhhc2Evci92RG5xK1h5cTRMbzI3ZzhRU2JPNVl6QVJ1MEQxU3BzM2c9PSJdLAoKICAgICJyZXF1aXJlLWRpcmVjdG9yeSI6IFsicmVxdWlyZS1kaXJlY3RvcnlAMi4xLjEiLCAiIiwge30sICJzaGE1MTItZkd4RUk3K3dzRzl4cnZkanNybG1MMjJPTVRUaUhSd0FNcm9pRWVNZ3E4Z3pvTEMvUFFyN1JzUkRTVExVZy9iWkFadEYrVFZJa0hjNi80UklLcnVpK1E9PSJdLAoKICAgICJyZXNlbGVjdCI6IFsicmVzZWxlY3RANS4yLjAiLCAiIiwge30sICJzaGE1MTItQWdaM1VPWm0zWW5kZnJKNE9ZamdyVDdibUNtLzFpcWtqdkVmSC9vWWp6aDZQRDJxdzRRdVQzampuWElycGR0NE1UcE1YY2xNVDNsWGJtUlkrWFJha3c9PSJdLAoKICAgICJyb2xsZG93biI6IFsicm9sbGRvd25AMS4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQG94Yy1wcm9qZWN0L3R5cGVzIjogIj0wLjEzMC4wIiwgIkByb2xsZG93bi9wbHVnaW51dGlscyI6ICJeMS4wLjAiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZnJlZWJzZC14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtbXVzbCI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1wcGM2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgteDY0LW11c2wiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzItYXJtNjQtbXN2YyI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2YyI6ICIxLjAuMSIgfSwgImJpbiI6IHsgInJvbGxkb3duIjogImJpbi9jbGkubWpzIiB9IH0sICJzaGE1MTItWDBLUUhsak5uRWtXTnFxaXo5ekpyR3VuaDFCMEhnT3hMWHZuRnBDT2NhZHpjeTVxb2haM3RxTUVVZzAwdm5jb1Jvdlh1SzNacUNUOUtubkt6b0luRlE9PSJdLAoKICAgICJyeGpzIjogWyJyeGpzQDcuOC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjEuMCIgfSB9LCAic2hhNTEyLWRoS2Y5MDNVL1BRWlk2Ym9OTnRBR2RXYkc4NVdBYmpULzF4WW9aSUM3RkFZMHlXYXBPQlFWc1ZyRGw1OFc4Ni8vZTFWcE1OQnRSVjRNYVhmZE15U0ZBPT0iXSwKCiAgICAic2NoZWR1bGVyIjogWyJzY2hlZHVsZXJAMC4yNy4wIiwgIiIsIHt9LCAic2hhNTEyLWVOditXclZiS3UxZjN2YllKVC94dGlGNXN5QTVIUElNdGY5SWdZL25LZzBzV3F6QVVFdnFZL3htN09jWmMvcWFmTHgvaU85RmdPbWVTQXA0djV0aS9RPT0iXSwKCiAgICAic2VtdmVyIjogWyJzZW12ZXJANy44LjAiLCAiIiwgeyAiYmluIjogeyAic2VtdmVyIjogImJpbi9zZW12ZXIuanMiIH0gfSwgInNoYTUxMi1BY003ZFYvNXVsNEVla29RMjlBZ201dnJpOEpOcVJ5ajM5bzBxcFg2dkRGMkdacnR1dFpsNVJ3Z0QxWG5aamlUQWZuY3NKaE1JNDhRUUgzc044N1lOQT09Il0sCgogICAgInNoYXJwIjogWyJzaGFycEAwLjM0LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGltZy9jb2xvdXIiOiAiXjEuMC4wIiwgImRldGVjdC1saWJjIjogIl4yLjEuMiIsICJzZW12ZXIiOiAiXjcuNy4zIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWRhcndpbi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtczM5MHgiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGludXgtYXJtIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXBwYzY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4bXVzbC1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eG11c2wteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdhc20zMiI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1pYTMyIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLXg2NCI6ICIwLjM0LjUiIH0gfSwgInNoYTUxMi1PdTlJNUZ0OVdOY0NiWHJVOWNNZ1BCY0NLOExpd0xxY2J5d1czdDRvRFYzN24xcHpwdU5Mc1lpQVY4ZU9EbmpidFFsU0R3WjJjVUVlUXo0RTU0SGx0Zz09Il0sCgogICAgInNoZWxsLXF1b3RlIjogWyJzaGVsbC1xdW90ZUAxLjguMyIsICIiLCB7fSwgInNoYTUxMi1PYm1uSUY0aFhOZzFCcWhuSG1nYkRFVEY4ZExQQ2dnWldCamtRZmhacGJzelpuWXVyNURVbGpUY0NIaWk1TEMzSjVFMHllTy8xTElNeUgrVXZIUWd5dz09Il0sCgogICAgInNpZ2luZm8iOiBbInNpZ2luZm9AMi4wLjAiLCAiIiwge30sICJzaGE1MTIteWJ4MFdPMS84YlNCTEVXWFp2RWQ3Z01XM1NuM0pGbFczVHZYMW5SRWJETFJOUU5hZU5OOFdLMG1lQndQZEFhT0k3VHRSUlJKbi9FczF6aHJyQ0h1N2c9PSJdLAoKICAgICJzb3VyY2UtbWFwIjogWyJzb3VyY2UtbWFwQDAuNi4xIiwgIiIsIHt9LCAic2hhNTEyLVVqZ2FwdW1XbGJNaGtCZ3pUN1lrYzVZWFVUNDZGMGlLdThTR1hxMGJjd1A1ZHovaDBQbGo2ZW5KcWp6MVpicTJsNVdhcVluclZid1dPV015RjNGNDdnPT0iXSwKCiAgICAic291cmNlLW1hcC1qcyI6IFsic291cmNlLW1hcC1qc0AxLjIuMSIsICIiLCB7fSwgInNoYTUxMi1VWFdNS2hMT3dWS2I3MjhJVXRRUFh4ZllVK3VzZHlidFVySy84dUdFOENRTXZyaE9wd3Z6REJ3ajBRaFNMN01RYzd2SXNJU0JHOFZROCtJRFF4cGZRQT09Il0sCgogICAgInNvdXJjZS1tYXAtc3VwcG9ydCI6IFsic291cmNlLW1hcC1zdXBwb3J0QDAuNS4yMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJidWZmZXItZnJvbSI6ICJeMS4wLjAiLCAic291cmNlLW1hcCI6ICJeMC42LjAiIH0gfSwgInNoYTUxMi11QkhVM0wzY3pzSXlZWEtYODhmZHJHb3Z4ZFNDb1RHRFJaNlNZWHRTUnhMWlV6SGc1UC82Nkh0NnVvVWxIdTlFWm9kK2luWGhLbzNxUWd3WFVUL3kxdz09Il0sCgogICAgInN0YWNrYmFjayI6IFsic3RhY2tiYWNrQDAuMC4yIiwgIiIsIHt9LCAic2hhNTEyLTFYTUpFNWZRbzFqR0g2WS83ZWJud1BPQkVrSUVuVDRRRjMyZDVSMStWWGRYdmVNMElCTUp0OHpmYXhYMVAzUWhWd3JZZSs1NzYramtBTnRTUzJtQmJ3PT0iXSwKCiAgICAic3RkLWVudiI6IFsic3RkLWVudkA0LjEuMCIsICIiLCB7fSwgInNoYTUxMi1ScTd5YmNYMlJ1QzU1cjlvYVBWRVc3L3h1M3RqOHU0R2VCWUhCV0N5Y2hGdHpNSXI4NkE3ZTNQUEVCUFQzN3NIU3RLWDMrVGlYL0ZyL0FDbUpMVmxMUT09Il0sCgogICAgInN0cmluZy13aWR0aCI6IFsic3RyaW5nLXdpZHRoQDQuMi4zIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImVtb2ppLXJlZ2V4IjogIl44LjAuMCIsICJpcy1mdWxsd2lkdGgtY29kZS1wb2ludCI6ICJeMy4wLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiIH0gfSwgInNoYTUxMi13S3lRUlFwakowc0lwNjJFclNaZEdzak1KV3NhcDVvUk5paEhodTZHN0pWTy85aklCNlV5ZXZMK3RYdU9xcm5nOGovY3hLVFd5V1V3dlNUcmlpWnovZz09Il0sCgogICAgInN0cmlwLWFuc2kiOiBbInN0cmlwLWFuc2lANi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1yZWdleCI6ICJeNS4wLjEiIH0gfSwgInNoYTUxMi1ZMzhWUFNIY3FrRnJDcEZuUTl2dVNYbXF1dXY1b1hPS3BHZVQ2YUdycjNvM0djOUFsVmE2SkJmVVNPQ25ieEdHWkYrLzBvb0k3S3JQdVVTenRVZFU1QT09Il0sCgogICAgInN0eWxlZC1qc3giOiBbInN0eWxlZC1qc3hANS4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY2xpZW50LW9ubHkiOiAiMC4wLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0gMTYuOC4wIHx8IDE3LngueCB8fCBeMTguMC4wLTAgfHwgXjE5LjAuMC0wIiB9IH0sICJzaGE1MTItcVNWeURUZU1vdGR2UVlvSFdMTkd3UkZKSEMraStadmRCUllvc09GZ0MrV2cxdng0ZnJOMi9SRy9OQTdTWXFxdktOTGYzOVAyTFNSQTJwdTZuMFhZWkE9PSJdLAoKICAgICJzdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JAOC4xLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItTXBVRU4yT29kdFV6eHZLUWw3MmNVRjdSUTVFaUhzR3ZTc1ZHMGlhOWM1UmJXR0wyQ0k0QzdFcFBTOFVUQklwbG5selppTnVWNTZ3K0Z1Tnh5M3R5MlE9PSJdLAoKICAgICJ0YWlsd2luZC1tZXJnZSI6IFsidGFpbHdpbmQtbWVyZ2VAMy42LjAiLCAiIiwge30sICJzaGE1MTItdXhMN3FBVlFyaXFSUVBBeUszcGo2NlZxc2tXcW9aMzdQVzk0andPVHdOZnEvejlveXUxVitlcXJacXRSMitmQ2lYZFlPWmUvTW9kdDhHdHZxTnp1K3c9PSJdLAoKICAgICJ0YWlsd2luZGNzcyI6IFsidGFpbHdpbmRjc3NANC4zLjAiLCAiIiwge30sICJzaGE1MTIteTZueE1HQjFuTVc5UjZrOTZlNWdkSUZ6Y2ZML2dUSlJOYXFHZXMxWXZrTG5QVlh6V2dicUZGMnlMQzBUOEc3NzRuMjRjeDNQZThYcktvbmlDT0FIK1E9PSJdLAoKICAgICJ0YXBhYmxlIjogWyJ0YXBhYmxlQDIuMy4zIiwgIiIsIHt9LCAic2hhNTEyLXV4Yy96cHFGZzZ4N0M4dk9FN2xoNkxiZGE4ZUVMOXptVm0vUExlVFBCUmhoMXhDZ2RXYVErSjFDVWllR3BJZm0ySGR0c1VwUnYrSHNoaWFzQk1jYzZBPT0iXSwKCiAgICAidGVyc2VyIjogWyJ0ZXJzZXJANS4xNi45IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiAiXjAuMy4yIiwgImFjb3JuIjogIl44LjUuMCIsICJjb21tYW5kZXIiOiAiXjIuMjAuMCIsICJzb3VyY2UtbWFwLXN1cHBvcnQiOiAifjAuNS4yMCIgfSwgImJpbiI6IHsgInRlcnNlciI6ICJiaW4vdGVyc2VyIiB9IH0sICJzaGE1MTItSFBhL0ZkVEI5WEdJMkgxL2tlTEZaSHhsNldOdkFJNFlhbEhHdERRVGxNbkpjb3FTYWIxVXdMNGwxaEdFaHM2L0dtTEhCWklnL1lnQisramNiem9PRWc9PSJdLAoKICAgICJ0aW55YmVuY2giOiBbInRpbnliZW5jaEAyLjkuMCIsICIiLCB7fSwgInNoYTUxMi0wK0RVdnFXTVZhbExtaGE2bHI0a0Q4aUFNSzFIelYwL2FLbkN0V2I5djk2NDFUblAvTUZiN1BjMmJ4b3hRalRYQUVycnlYVmdVT2Z2MllxTmxscUdlZz09Il0sCgogICAgInRpbnlleGVjIjogWyJ0aW55ZXhlY0AxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1kQXFTcUUvUmFicEJLSTgraDI2R2ZMcTZWYjNKVlhzMzBYWVFqZE1qYWovYzJ0UzhJWVlNYkl6UDU5OUt0Umo3YzU3L3dZQXBiM1FqZ1JnWG1yQ3VrQT09Il0sCgogICAgInRpbnlnbG9iYnkiOiBbInRpbnlnbG9iYnlAMC4yLjE2IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImZkaXIiOiAiXjYuNS4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiIH0gfSwgInNoYTUxMi1wbjk5VmhvQUNZUjhuRkhoeHFpeCt1dnNiWGluZUFhc1dtNW9qWG9OOHhFd0s1S2QzL1RyaE5uMXdCeXVENTJVeFdSTHk4cHUra1JNbmlFaTZFcTlaZz09Il0sCgogICAgInRpbnlyYWluYm93IjogWyJ0aW55cmFpbmJvd0AzLjEuMCIsICIiLCB7fSwgInNoYTUxMi1CZitJTG1CZ3JldFVyZEp4elhNMFNnWExaM1hmaWFVdU9qL0lLUUh1VFhpcCswNVhuK3V5RVlkVmcwa1lEaXBUQmNMckNWeVV6QVB6N1FtQXJiMG1tdz09Il0sCgogICAgInRyZWUta2lsbCI6IFsidHJlZS1raWxsQDEuMi4yIiwgIiIsIHsgImJpbiI6IHsgInRyZWUta2lsbCI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1MME9ycGk4cUdwUkcvL05kK0g5MHZGQiszaUhudWUxelNTR21OT09DaDFHTEo3clVLVndWMkh2aWpwaEdRUzJVbWhVWmV3UzlWZ3Z4WUlkZ3IrZkcxQT09Il0sCgogICAgInRzbGliIjogWyJ0c2xpYkAyLjguMSIsICIiLCB7fSwgInNoYTUxMi1vSkZ1OTRIUWIrS1ZkdVNVUUw3d25wbXFuZm1Mc09BL25BaDZiNkVIMHdDRW9LMC9tUGVYVTZjM3dLRFY4M01rT3VIUFJIdFNYS0tVOTlJQmF6Uy8ydz09Il0sCgogICAgInR5cGVzY3JpcHQiOiBbInR5cGVzY3JpcHRANS45LjMiLCAiIiwgeyAiYmluIjogeyAidHNjIjogImJpbi90c2MiLCAidHNzZXJ2ZXIiOiAiYmluL3Rzc2VydmVyIiB9IH0sICJzaGE1MTItamwxdlp6UERpbkxyOWVVdDNKL3Q3VjZGZ05FdzlRanZCUGR5c3o5S2ZRREQ0MWZRckMyWTR2S1FkaWFVcEZUNGJYbGIxUkhoTHBwOHd0bTZNNVRnU3c9PSJdLAoKICAgICJ1bmRpY2ktdHlwZXMiOiBbInVuZGljaS10eXBlc0A2LjIxLjAiLCAiIiwge30sICJzaGE1MTItaXdEWnFnMFFBR3JnOVJhdjVING4wTTY0YzNta1I1OWNKNndRcCs3QzRuSTBnc21FeGFlZGFZTE5PNDRlVDRBdEJCd2piVGlHUE1sdDJNZDBUOUg5SlE9PSJdLAoKICAgICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6IFsidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmVAMS42LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIl4xNi44LjAgfHwgXjE3LjAuMCB8fCBeMTguMC4wIHx8IF4xOS4wLjAiIH0gfSwgInNoYTUxMi1QcDZHU3dHUC9OclBJcnhWRkFJa09RZXl3OGxGZW5PSGlqUVdrVVRyRHZyRjRBTHF5bFAyQy9LQ2tlUzlkcFVNM0t2WVJRaG5hNXZ0N0lMOTUrWlE5dz09Il0sCgogICAgInZpdGUiOiBbInZpdGVAOC4wLjEzIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2NzcyI6ICJeMS4zMi4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiLCAicG9zdGNzcyI6ICJeOC41LjE0IiwgInJvbGxkb3duIjogIjEuMC4xIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNiIgfSwgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiZnNldmVudHMiOiAifjIuMy4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkB0eXBlcy9ub2RlIjogIl4yMC4xOS4wIHx8ID49MjIuMTIuMCIsICJAdml0ZWpzL2RldnRvb2xzIjogIl4wLjEuMTgiLCAiZXNidWlsZCI6ICJeMC4yNy4wIHx8IF4wLjI4LjAiLCAiaml0aSI6ICI+PTEuMjEuMCIsICJsZXNzIjogIl40LjAuMCIsICJzYXNzIjogIl4xLjcwLjAiLCAic2Fzcy1lbWJlZGRlZCI6ICJeMS43MC4wIiwgInN0eWx1cyI6ICI+PTAuNTQuOCIsICJzdWdhcnNzIjogIl41LjAuMCIsICJ0ZXJzZXIiOiAiXjUuMTYuMCIsICJ0c3giOiAiXjQuOC4xIiwgInlhbWwiOiAiXjIuNC4yIiB9LCAib3B0aW9uYWxQZWVycyI6IFsiQHR5cGVzL25vZGUiLCAiQHZpdGVqcy9kZXZ0b29scyIsICJlc2J1aWxkIiwgImppdGkiLCAibGVzcyIsICJzYXNzIiwgInNhc3MtZW1iZWRkZWQiLCAic3R5bHVzIiwgInN1Z2Fyc3MiLCAidGVyc2VyIiwgInRzeCIsICJ5YW1sIl0sICJiaW4iOiB7ICJ2aXRlIjogImJpbi92aXRlLmpzIiB9IH0sICJzaGE1MTItTUZ0akJZZ3ptU3htZ0E0UkFmakl5WFdwR2Uxb0FMbmpnVVR6elY3UUx4L1RLeEN6anRNSDZGZDkvZVZLKzVGZzFxTm96NVZBd3NtTXMvTm9mcm1Kdnc9PSJdLAoKICAgICJ2aXRlc3QiOiBbInZpdGVzdEA0LjEuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdml0ZXN0L2V4cGVjdCI6ICI0LjEuNiIsICJAdml0ZXN0L21vY2tlciI6ICI0LjEuNiIsICJAdml0ZXN0L3ByZXR0eS1mb3JtYXQiOiAiNC4xLjYiLCAiQHZpdGVzdC9ydW5uZXIiOiAiNC4xLjYiLCAiQHZpdGVzdC9zbmFwc2hvdCI6ICI0LjEuNiIsICJAdml0ZXN0L3NweSI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgImVzLW1vZHVsZS1sZXhlciI6ICJeMi4wLjAiLCAiZXhwZWN0LXR5cGUiOiAiXjEuMy4wIiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJvYnVnIjogIl4yLjEuMSIsICJwYXRoZSI6ICJeMi4wLjMiLCAicGljb21hdGNoIjogIl40LjAuMyIsICJzdGQtZW52IjogIl40LjAuMC1yYy4xIiwgInRpbnliZW5jaCI6ICJeMi45LjAiLCAidGlueWV4ZWMiOiAiXjEuMC4yIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNSIsICJ0aW55cmFpbmJvdyI6ICJeMy4xLjAiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIsICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogIl4yLjMuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZWRnZS1ydW50aW1lL3ZtIjogIioiLCAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjkuMCIsICJAdHlwZXMvbm9kZSI6ICJeMjAuMC4wIHx8IF4yMi4wLjAgfHwgPj0yNC4wLjAiLCAiQHZpdGVzdC9icm93c2VyLXBsYXl3cmlnaHQiOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXByZXZpZXciOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXdlYmRyaXZlcmlvIjogIjQuMS42IiwgIkB2aXRlc3QvY292ZXJhZ2UtaXN0YW5idWwiOiAiNC4xLjYiLCAiQHZpdGVzdC9jb3ZlcmFnZS12OCI6ICI0LjEuNiIsICJAdml0ZXN0L3VpIjogIjQuMS42IiwgImhhcHB5LWRvbSI6ICIqIiwgImpzZG9tIjogIioiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZWRnZS1ydW50aW1lL3ZtIiwgIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAdHlwZXMvbm9kZSIsICJAdml0ZXN0L2Jyb3dzZXItcGxheXdyaWdodCIsICJAdml0ZXN0L2Jyb3dzZXItcHJldmlldyIsICJAdml0ZXN0L2Jyb3dzZXItd2ViZHJpdmVyaW8iLCAiQHZpdGVzdC9jb3ZlcmFnZS1pc3RhbmJ1bCIsICJAdml0ZXN0L2NvdmVyYWdlLXY4IiwgIkB2aXRlc3QvdWkiLCAiaGFwcHktZG9tIiwgImpzZG9tIl0sICJiaW4iOiB7ICJ2aXRlc3QiOiAidml0ZXN0Lm1qcyIgfSB9LCAic2hhNTEyLTZsdmpiUzNwOWI0Q3JkQ21ndXpiaDIvNHVvWGhHRTJxNzFSNE9YNXNxRjlSMWJvOVhkNmZHck1BZnZwNXduQ3psQm5GVmRDT3A2b251VFFWYm84aVVRPT0iXSwKCiAgICAid2h5LWlzLW5vZGUtcnVubmluZyI6IFsid2h5LWlzLW5vZGUtcnVubmluZ0AyLjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzaWdpbmZvIjogIl4yLjAuMCIsICJzdGFja2JhY2siOiAiMC4wLjIiIH0sICJiaW4iOiB7ICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLWhVcm1hV0JkVkRjeHZZcW55aDA5enVuS3pST1dqYlpUaU55OGRCRWprUzdlaEVEUWliWEo3WHZsbXRid3VUY2xVaUl5TitDeVhRRDRWbWtvOGZObTh3PT0iXSwKCiAgICAid3JhcC1hbnNpIjogWyJ3cmFwLWFuc2lANy4wLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMC4wIiwgInN0cmluZy13aWR0aCI6ICJeNC4xLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjAiIH0gfSwgInNoYTUxMi1ZVkdJajJrYW1MU1R4dzZOc1pqb0J4ZlN3c24weWNkZXNtYzRwK1EyMWM1elB1WjFwbCtOZnhWZHhQdGRIdm1OVk9RNlhTWUc0QVV0eXQvRmk3RDE2UT09Il0sCgogICAgInhzcyI6IFsieHNzQDEuMC4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb21tYW5kZXIiOiAiXjIuMjAuMyIsICJjc3NmaWx0ZXIiOiAiMC4wLjEwIiB9LCAiYmluIjogeyAieHNzIjogImJpbi94c3MiIH0gfSwgInNoYTUxMi1GVmRsVlZDNjdXT0lQdmZPd2hvTUVUVjcyZjZHYlc3YU9hYkJDM1d4Ti9vVWRvRU1EeUx6NE9nUnY1L2djazJaZU5xRVF1K1RiMGtsb292WE9mcFlWZz09Il0sCgogICAgInkxOG4iOiBbInkxOG5ANS4wLjgiLCAiIiwge30sICJzaGE1MTItMHBmRnplZ2VEV0pISklBbVRMUlAyRHdIamRGNXM3am85dHV6dGRReEFoSU5DZHZTKzNuR0lOcVBkMDBBcGhxSlIvMExoQU5VUzYvKzdTQ2I5OFlPZkE9PSJdLAoKICAgICJ5YW1sIjogWyJ5YW1sQDIuOS4wIiwgIiIsIHsgImJpbiI6IHsgInlhbWwiOiAiYmluLm1qcyIgfSB9LCAic2hhNTEyLTJBdmhOWDNtYjh6ZDZaeTdJTlR0U3BsMUYxNUhXNlducWowc3JXbGtLTGNwWWwvZ01JTUppeXVHcTJLZUkyWUZ4VVBqZGxCKzNMYzEwc2VNTHRMNGNBPT0iXSwKCiAgICAieWFyZ3MiOiBbInlhcmdzQDE3LjcuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjbGl1aSI6ICJeOC4wLjEiLCAiZXNjYWxhZGUiOiAiXjMuMS4xIiwgImdldC1jYWxsZXItZmlsZSI6ICJeMi4wLjUiLCAicmVxdWlyZS1kaXJlY3RvcnkiOiAiXjIuMS4xIiwgInN0cmluZy13aWR0aCI6ICJeNC4yLjMiLCAieTE4biI6ICJeNS4wLjUiLCAieWFyZ3MtcGFyc2VyIjogIl4yMS4xLjEiIH0gfSwgInNoYTUxMi03ZFN6elJRKytDS25OSS9rcktuWVJWN0pLS1BVWE1FaDYxc29hSEtnOW1yV0VoekZXaEZueFB4R2wrNjljRDFPdTYzQzEzTlVQQ25tSWNydnFDdU02dz09Il0sCgogICAgInlhcmdzLXBhcnNlciI6IFsieWFyZ3MtcGFyc2VyQDIxLjEuMSIsICIiLCB7fSwgInNoYTUxMi10VnBzSlc3RGRqZWNBaUZwYklCMWUzcXhJUXNFNk5vUGM1L2VUZHJiYklDNGgwTFZzV2hub2EzZyttMkhjbEJJdWpIenN4WjRWSlZBK0dVdWMyL0xCdz09Il0sCgogICAgInpvZCI6IFsiem9kQDQuNC4zIiwgIiIsIHt9LCAic2hhNTEyLXl0RU5GaklKRmwyVXdZZ2xkZTJqY2hXMkh3bTRHSkZMRGlTWFdkVHJKUUJJTjlGY3lwN240RGh4SkVpV05BSk1WMS9CcVdmVy9ra2c3MVVEY0hKeVRRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvY29yZSI6IFsiQGVtbmFwaS9jb3JlQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICIxLjIuMSIsICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXlxNk9rSjRwODJDQWZQbDB1OW1RZWJRSEtQSmtZN1dySXVrMjA1Y1RZblllK2syWjhZQmgxMUZyYlJHL0g2aWhpcnFjYWNPZ2wyQklPOG95TVFMZVh3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvcnVudGltZSI6IFsiQGVtbmFwaS9ydW50aW1lQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLWV3dllsazg2eFVvR0kwelFSTnEvbUMrMTZSMVFlRGxLUXkyMUtpM29TWVhOZ0xiNDVHVjFQNkEwTSsvczZueUN1TkRxZTVWcGFZODRCelhHd1Zid0ZBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvd2FzaS10aHJlYWRzIjogWyJAZW1uYXBpL3dhc2ktdGhyZWFkc0AxLjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXVUSUk3T1lGKy9NZXMvTXJjSU9ZcDV5T3RTTUxCV1NJb0xQcGNnd2lwb2lLYmxpNmszMjJ0Y29Gc3hvSUl4UERxVzAxU1FHQWdrbzRFelppMkJOdjJ3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BuYXBpLXJzL3dhc20tcnVudGltZSI6IFsiQG5hcGktcnMvd2FzbS1ydW50aW1lQDEuMS40IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB0eWJ5cy93YXNtLXV0aWwiOiAiXjAuMTAuMSIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuNy4xIiwgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjEiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLTNOUU5OZ0ExWVNsSmIva01IMWlsZEFTUDlIVzcvN2tZblJJMnN6V0phb2ZhUzFoV21iR0k0SCtkMysyMmFHelhYTjlJSituK0dpRlZjR2lwSlAxOG93PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0B0eWJ5cy93YXNtLXV0aWwiOiBbIkB0eWJ5cy93YXNtLXV0aWxAMC4xMC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItUm9CdkoyWDB3dUtsV0ZJanJ3ZmZHdzFJcVpIS1FxekljaEthYWRaWmZuTnBzQVlwMm1NMGgzNkp0UENqTkRBSEdnWWV6LzE1dU1CcGZHd2NoaGlNZ2c9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvdHNsaWIiOiBbInRzbGliQDIuOC4xIiwgIiIsIHsgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItb0pGdTk0SFFiK0tWZHVTVVFMN3ducG1xbmZtTHNPQS9uQWg2YjZFSDB3Q0VvSzAvbVBlWFU2YzN3S0RWODNNa091SFBSSHRTWEtLVTk5SUJhelMvMnc9PSJdLAoKICAgICJjaGFsay9zdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JANy4yLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItcXBDQXZSbDlzdHVPSHZlS3NuN0huY0pSdnY1MDFxSWFjS3pRbE8vK0x3eGM5KzBxMndMeXY0RGZ2dDgwL0RQbjJwcU9Cc0pkRGlvZ1hHUjkrT3Z3Unc9PSJdLAoKICAgICJuZXh0L3Bvc3Rjc3MiOiBbInBvc3Rjc3NAOC40LjMxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIm5hbm9pZCI6ICJeMy4zLjYiLCAicGljb2NvbG9ycyI6ICJeMS4wLjAiLCAic291cmNlLW1hcC1qcyI6ICJeMS4wLjIiIH0gfSwgInNoYTUxMi1QUzA4SWJvaWE5bXRzLzJ5Z1YzZUxwWTVnaG5VY2ZMVi9FWFRPVzFFMnFZeEpLR0dCVXROak43NkZZSG5NczM2Um1BUm40MWJDMEFabW4rclIwT1ZwUT09Il0sCiAgfQp9Cg==" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "restaurant",\n "name": "Restaurant",\n "tagline": "Menu-driven storefront with reservations and table-service support.",\n "industry": "food",\n "tags": ["food", "restaurant", "reservations"],\n "stability": "stable",\n "schemaType": "Restaurant",\n "mock": {\n "seedName": "restaurant",\n "seedBusinessId": "bus_mamas_kitchen"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-semibold uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="font-serif text-[clamp(2.25rem,5vw,3.5rem)] font-semibold mb-6 -tracking-[0.02em]">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="font-serif text-3xl font-semibold mt-10 mb-3">{s.heading}</h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full menu with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/shop?product=${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
2419
|
+
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": "middleware.ts", "kind": "text", "content": `import { NextResponse, type NextRequest } from "next/server";
|
|
2420
|
+
import { handleTokenRefresh, type OidcConfig } from "@cimplify/sdk/server";
|
|
2421
|
+
|
|
2422
|
+
function oidcConfig(): OidcConfig | null {
|
|
2423
|
+
const clientId =
|
|
2424
|
+
process.env.CIMPLIFY_CLIENT_ID?.trim() ||
|
|
2425
|
+
process.env.NEXT_PUBLIC_CIMPLIFY_CLIENT_ID?.trim() ||
|
|
2426
|
+
"";
|
|
2427
|
+
if (!clientId) return null;
|
|
2428
|
+
return {
|
|
2429
|
+
clientId,
|
|
2430
|
+
issuer: process.env.CIMPLIFY_ISSUER?.trim() || undefined,
|
|
2431
|
+
authUrl: process.env.CIMPLIFY_AUTH_URL?.trim() || undefined,
|
|
2432
|
+
};
|
|
2433
|
+
}
|
|
2434
|
+
|
|
2435
|
+
// Keeps the access token fresh before account pages render. Server Components
|
|
2436
|
+
// can't write cookies, so this is the one place the rotated token can be both
|
|
2437
|
+
// persisted (browser) and forwarded onto the current request (this render).
|
|
2438
|
+
export async function middleware(request: NextRequest) {
|
|
2439
|
+
const cfg = oidcConfig();
|
|
2440
|
+
if (!cfg) return NextResponse.next();
|
|
2441
|
+
|
|
2442
|
+
const { outcome, setCookies, cookies } = await handleTokenRefresh(request, cfg);
|
|
2443
|
+
if (outcome === "noop") return NextResponse.next();
|
|
2444
|
+
|
|
2445
|
+
for (const { name, value } of cookies) {
|
|
2446
|
+
request.cookies.set(name, value);
|
|
2447
|
+
}
|
|
2448
|
+
const response = NextResponse.next({ request });
|
|
2449
|
+
for (const cookie of setCookies) {
|
|
2450
|
+
response.headers.append("set-cookie", cookie);
|
|
2451
|
+
}
|
|
2452
|
+
return response;
|
|
2453
|
+
}
|
|
2454
|
+
|
|
2455
|
+
export const config = {
|
|
2456
|
+
matcher: ["/account/:path*"],
|
|
2457
|
+
};
|
|
2458
|
+
` }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed restaurant --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed restaurant",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.67.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS40LjEiLCAiIiwge30sICJzaGE1MTItUDVMVU5odGJqNllmSTNpSmp3NUVMOWVVQUc2T2l0RDBXM2ZXUWNwUWpEUmMvUUlzTDB0Uk51TzFQY0R2UGNjV0wxZlNUWFhkRTFkcytsOTVEVi9PRkE9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzAuMCIsICIiLCB7fSwgInNoYTUxMi1pYkQydXN4OUpSdTdmNXB1MnRNS01JNGNwQTROZ1hKUW9ZUlA0cFE3UHhtbjFsNmsvNTNxV3RRV1pheWhZeTNYNFFaa3Q5ME90K21KRWFlWG91aW82UT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjEiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZkpJM0kwcjNDM09qL3pkQkNwYUNtQlJaWWYwN3hwYXE0eUNmRERvU0ZtK2JlV056YklsMjZwdVc4UnJhVWR1Z29Kdy85NXplck5PbjZqYXNBaHpTbWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWNLbkFoV0VzVjdUUGNBLzVFQXRlRHA2S2NKWkJRMkcrQnFFN3pheU1NaTdrTXZ3UnNidjdXVDlhT25uMFdObDRTS0VJZjQzdmpTMzFpVVB1ODBuelhnPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZS3JWd1FqSVJCUG8rNUcvdTAzd0dqYmR5NHE3cHl6Q2U5M0RLOVZKN3prVm1lZzhMSjdHYmdzaUhXZFI0eFNvZTRDQVhSRDdCY2pnYnRyNjRia1hOZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItei9vQnNSRW80NlNzRnFCd1l0RmUwa3BKZUJpakFUNDhPL1dYTEk0c3VpQ0xCa3IwM1JUdFRKTUN6U2REZDJ6bmxoOFZKaXpMMDlYVmtRZ2s4SVpvbnc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItaWs4cTdHTTExenh2WXhGYzJQZURjVDZUQnZoQ1FNYVV4ZnBoL001bDlzS3VUcy9TamczTCtCeXcwRjd3MFpWTEJabXgzMFArZ0cwRUN6ek4rTUZjbVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItUW9TeDJFa3lycmRaNmtjeUU4c3RxWjYydDBZcmE4RnM1aWE5bE94SnJoNlRNUUpLN2dRS21zY2RUSGY3cE9YS1JFS3JWd090SmNRRzNxVlNmYzg2NkE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi11d053RnB3S2VOaVphd2ZBV0JnZzBWSXp0UFRWM2loaGgxdlYzMzRoOWl2bk5Mb3J4blFNVTZGejh3RzFaYjRRaDlMQzEvTWtjeVQzWWxEWEczUnNnZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi16WTFidWw3T1dyN0RGQmlKKyt3b2ZYdm5yOEI0NWNlM1FzUVVoS3JJaFhzeWdBaDdiVGt3eWVNMWJpMWEyZzVDL3lDL044VFp5R0RFb01mbS9sOW1wZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi0wZnJsc1QvZjRGdDZJN1NNRVNUS25GM2Nac2RpY1FuMWRDTWtGL2pUOXdETEUrZ0dvaVFmdjFubVQ5ZStzN3MvZmVrdnZ5NnRaTTJqSHZJMnRrYkpEUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjEiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1YQUJWbUdwOVRnMFdzcFRWdndkdVRjNGZwcXk2Sm5BVXJTUWU2T3V5cUQvMDNuSTdyME85T1dVa01Jd0ZyaktBSXFvbHZxb0E0WnJKcHBnd0UwR3htdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLWJWNGZ6c3d1elZjS0Q5MG8vVk02UXFLeG54bERxMGcyQklTRExOVm14cm5ocHYxRERieVBoQ0lqWWZ2ellMVitNdmtLS25RdDJRNkFPODZTRUJVTFVRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4xIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLS9NaDBaaHEzT1A3ZlZzMGtjUUhaUDZsWkV0aE1HVGFTZjhVQlFZU0ZFWkRXR1hYbEVDK25KNkVxZW5hSzJ0NExCWE1lM0ErSy9HMkJWWFhkdE9yNFBRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItKzF4YzlYNDVsOHVmc0JBbTZHanZ4MnFEUklZOWxUVnQwY2dXTmNKKzFnZGhYdmtieGVQQTYweVJUd1NUdVhMMDlDTWh5Sm1qcFY3RTNOb3l4YnFGUVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4xIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0xRCtVcVpkZm51UitKeTFHZ01Kd2k4NWJENDBIMjF1Tm1PUFJXUWh3NG9SU3VvbFovQjVyaXhaNDVESzJLWE9UQ3ZtVkNlY2F1V2dFaGJ3OGJJN3RPdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUlOQXljYVd1aGxPSzN3azRtUkhHc2Rnd1lXbWQ5Y0NoZFBkRTlid1dteTZybjlWcVZOWU5GR2hPZFhyb2ZYVXh3SEluY1NpUE5iOHRObThrbkRWSWVRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS42IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItN0VIRHF1UHRoQUxTVjBqaGhqZ0VXOEZYYXZpTXg3clNxdThXNm9xQ29BdU9oS292ODE0UDk5UURWMXB4TUEzUVB2MjFZdWR2Sm5nSWhqck5JNG9wTGc9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi1NQ0ZjNjNjek1qRUluT2xjWTJjcFFDdkNOK0tnYkFuKzYweHU5Y01nUDRzS2FMQzVKTkFLdzdKSDhRZEFub0FDODhoVzFJaVNOWitHZ1ZYbE4xVWNNUT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLWg1U3hEL0l6TmhaWW5yU1pSc1VaUUlDK3ZEMEdZOGNVdnEwaXdzbWtGS2l4UkNLTExXcUNYYS9GSVE0UzFSK3NJK1BHb29qa0hzZE5yYlppTTlRcGd3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItbk9QQ21uMit5RDBaTm1LZHNYR3YvVXhNTVdiTXVLZUQ2R3lZbmNOd2RrWUR4cFF2clBTS1lqMnJXdURqQzJZNGI2dzZoamlwNWRCS0Z6RVV1WmUzdkE9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1ZaHNkRTZ4QVZmVERtemp4TDJaRFV2amorWnNneU9LZStUZFF6cWtENzJ3SU9tSGthOE51R1E2TnBUTlp2OUQyWjYzZmJ3V0tKUGVWcEV3NEVRZ1l4dz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNiIsICIiLCB7fSwgInNoYTUxMi1KRkt4TXg2dWRod0toL0xkbzI3MGUxN1FYNzEwdmd1bk1rdVBBdlhqSFN2QzZvcUxXQUhoVmhqZy9JNzFxMHUwQ0JTRXJJT0RWMUtqdjBGUU5TV2pkZz09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItRnhJWStVODFSM0xHS0N4YUhIRlJRNStnNi9pUmdHTG1lSFdkcDJBbWo0bGpRUnJFSVdIbVp5RGZEWUJSWmxweXFBN3FLeHRTOUREMWRoazhSblJJVlE9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItbUxDTmJyUWxpMTFLMXlTVW11TnQ0WlVCM09wR0lEcTRxMnZUQlRmNWNMMmxwc1JqSTlRS3FTRDBuZGpXOEZ5dmNXL0pqNDZnTWU5c3l5SEFzdk1hL0E9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjMiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLTV4b0RmWCtmTDdmYUFUbmFnbVdQcGJGdHdoL1I3N1dtTU1xcUhHUzY1QzN2dkIwWUhyZ0YrQjFZbVozNDQxdE1qNW42M2swMjEyWE5vSnd6bGhmZlF3PT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwb3N0Y3NzIjogWyJwb3N0Y3NzQDguNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy4xMiIsICJwaWNvY29sb3JzIjogIl4xLjEuMSIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjIuMSIgfSB9LCAic2hhNTEyLUZmUjhzamQ0ZW0yVDZmYjNJMk13QUpVN0hXVk1yOXpiYStlbm1RZWVXRmZDYm0rVU9DLzBYNERTOFh0cFVUTXdXTUdiaktZUDd4amZOZWt6eUdtQjNBPT0iXSwKCiAgICAicmVhY3QiOiBbInJlYWN0QDE5LjIuNiIsICIiLCB7fSwgInNoYTUxMi1zZldHR2ZhdmkweHI4UGcwc1ZzeUhNQU96aVZZS2dQTE5yUzdpZytpdk1OYjN3YkNCdzNLeHRmbHNHQkF3RDNnWVFsRS9BRVpzVExnVG9SclNDamIwUT09Il0sCgogICAgInJlYWN0LWRheS1waWNrZXIiOiBbInJlYWN0LWRheS1waWNrZXJAOS4xNC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS40LjEiLCAiQHRhYmJ5X2FpL2hpanJpLWNvbnZlcnRlciI6ICIxLjAuNSIsICJkYXRlLWZucyI6ICJeNC4xLjAiLCAiZGF0ZS1mbnMtamFsYWxpIjogIjQuMS4wLTAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0xNi44LjAiIH0gfSwgInNoYTUxMi10QmFvRFdqUHdlME01cEdydW00SDBTUjZMeWsrQk85b0hucDlKYktwR0tXMm1scmFOUGdQOUJNZnNnNXBXcHdyc3NBUm1lcWs3WUJsMm9YdXRaVGFIQT09Il0sCgogICAgInJlYWN0LWRvbSI6IFsicmVhY3QtZG9tQDE5LjIuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzY2hlZHVsZXIiOiAiXjAuMjcuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTkuMi42IiB9IH0sICJzaGE1MTItMHByTUkraHZCYlBqc1dueERMeGxDR3lNOFBONlV1V2pFVUNZbVpoTzY3eElWOVhhc2Evci92RG5xK1h5cTRMbzI3ZzhRU2JPNVl6QVJ1MEQxU3BzM2c9PSJdLAoKICAgICJyZXF1aXJlLWRpcmVjdG9yeSI6IFsicmVxdWlyZS1kaXJlY3RvcnlAMi4xLjEiLCAiIiwge30sICJzaGE1MTItZkd4RUk3K3dzRzl4cnZkanNybG1MMjJPTVRUaUhSd0FNcm9pRWVNZ3E4Z3pvTEMvUFFyN1JzUkRTVExVZy9iWkFadEYrVFZJa0hjNi80UklLcnVpK1E9PSJdLAoKICAgICJyZXNlbGVjdCI6IFsicmVzZWxlY3RANS4yLjAiLCAiIiwge30sICJzaGE1MTItQWdaM1VPWm0zWW5kZnJKNE9ZamdyVDdibUNtLzFpcWtqdkVmSC9vWWp6aDZQRDJxdzRRdVQzampuWElycGR0NE1UcE1YY2xNVDNsWGJtUlkrWFJha3c9PSJdLAoKICAgICJyb2xsZG93biI6IFsicm9sbGRvd25AMS4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQG94Yy1wcm9qZWN0L3R5cGVzIjogIj0wLjEzMC4wIiwgIkByb2xsZG93bi9wbHVnaW51dGlscyI6ICJeMS4wLjAiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZnJlZWJzZC14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtbXVzbCI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1wcGM2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgteDY0LW11c2wiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzItYXJtNjQtbXN2YyI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2YyI6ICIxLjAuMSIgfSwgImJpbiI6IHsgInJvbGxkb3duIjogImJpbi9jbGkubWpzIiB9IH0sICJzaGE1MTItWDBLUUhsak5uRWtXTnFxaXo5ekpyR3VuaDFCMEhnT3hMWHZuRnBDT2NhZHpjeTVxb2haM3RxTUVVZzAwdm5jb1Jvdlh1SzNacUNUOUtubkt6b0luRlE9PSJdLAoKICAgICJyeGpzIjogWyJyeGpzQDcuOC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjEuMCIgfSB9LCAic2hhNTEyLWRoS2Y5MDNVL1BRWlk2Ym9OTnRBR2RXYkc4NVdBYmpULzF4WW9aSUM3RkFZMHlXYXBPQlFWc1ZyRGw1OFc4Ni8vZTFWcE1OQnRSVjRNYVhmZE15U0ZBPT0iXSwKCiAgICAic2NoZWR1bGVyIjogWyJzY2hlZHVsZXJAMC4yNy4wIiwgIiIsIHt9LCAic2hhNTEyLWVOditXclZiS3UxZjN2YllKVC94dGlGNXN5QTVIUElNdGY5SWdZL25LZzBzV3F6QVVFdnFZL3htN09jWmMvcWFmTHgvaU85RmdPbWVTQXA0djV0aS9RPT0iXSwKCiAgICAic2VtdmVyIjogWyJzZW12ZXJANy44LjAiLCAiIiwgeyAiYmluIjogeyAic2VtdmVyIjogImJpbi9zZW12ZXIuanMiIH0gfSwgInNoYTUxMi1BY003ZFYvNXVsNEVla29RMjlBZ201dnJpOEpOcVJ5ajM5bzBxcFg2dkRGMkdacnR1dFpsNVJ3Z0QxWG5aamlUQWZuY3NKaE1JNDhRUUgzc044N1lOQT09Il0sCgogICAgInNoYXJwIjogWyJzaGFycEAwLjM0LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGltZy9jb2xvdXIiOiAiXjEuMC4wIiwgImRldGVjdC1saWJjIjogIl4yLjEuMiIsICJzZW12ZXIiOiAiXjcuNy4zIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWRhcndpbi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtczM5MHgiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGludXgtYXJtIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXBwYzY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4bXVzbC1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eG11c2wteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdhc20zMiI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1pYTMyIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLXg2NCI6ICIwLjM0LjUiIH0gfSwgInNoYTUxMi1PdTlJNUZ0OVdOY0NiWHJVOWNNZ1BCY0NLOExpd0xxY2J5d1czdDRvRFYzN24xcHpwdU5Mc1lpQVY4ZU9EbmpidFFsU0R3WjJjVUVlUXo0RTU0SGx0Zz09Il0sCgogICAgInNoZWxsLXF1b3RlIjogWyJzaGVsbC1xdW90ZUAxLjguMyIsICIiLCB7fSwgInNoYTUxMi1PYm1uSUY0aFhOZzFCcWhuSG1nYkRFVEY4ZExQQ2dnWldCamtRZmhacGJzelpuWXVyNURVbGpUY0NIaWk1TEMzSjVFMHllTy8xTElNeUgrVXZIUWd5dz09Il0sCgogICAgInNpZ2luZm8iOiBbInNpZ2luZm9AMi4wLjAiLCAiIiwge30sICJzaGE1MTIteWJ4MFdPMS84YlNCTEVXWFp2RWQ3Z01XM1NuM0pGbFczVHZYMW5SRWJETFJOUU5hZU5OOFdLMG1lQndQZEFhT0k3VHRSUlJKbi9FczF6aHJyQ0h1N2c9PSJdLAoKICAgICJzb3VyY2UtbWFwIjogWyJzb3VyY2UtbWFwQDAuNi4xIiwgIiIsIHt9LCAic2hhNTEyLVVqZ2FwdW1XbGJNaGtCZ3pUN1lrYzVZWFVUNDZGMGlLdThTR1hxMGJjd1A1ZHovaDBQbGo2ZW5KcWp6MVpicTJsNVdhcVluclZid1dPV015RjNGNDdnPT0iXSwKCiAgICAic291cmNlLW1hcC1qcyI6IFsic291cmNlLW1hcC1qc0AxLjIuMSIsICIiLCB7fSwgInNoYTUxMi1VWFdNS2hMT3dWS2I3MjhJVXRRUFh4ZllVK3VzZHlidFVySy84dUdFOENRTXZyaE9wd3Z6REJ3ajBRaFNMN01RYzd2SXNJU0JHOFZROCtJRFF4cGZRQT09Il0sCgogICAgInNvdXJjZS1tYXAtc3VwcG9ydCI6IFsic291cmNlLW1hcC1zdXBwb3J0QDAuNS4yMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJidWZmZXItZnJvbSI6ICJeMS4wLjAiLCAic291cmNlLW1hcCI6ICJeMC42LjAiIH0gfSwgInNoYTUxMi11QkhVM0wzY3pzSXlZWEtYODhmZHJHb3Z4ZFNDb1RHRFJaNlNZWHRTUnhMWlV6SGc1UC82Nkh0NnVvVWxIdTlFWm9kK2luWGhLbzNxUWd3WFVUL3kxdz09Il0sCgogICAgInN0YWNrYmFjayI6IFsic3RhY2tiYWNrQDAuMC4yIiwgIiIsIHt9LCAic2hhNTEyLTFYTUpFNWZRbzFqR0g2WS83ZWJud1BPQkVrSUVuVDRRRjMyZDVSMStWWGRYdmVNMElCTUp0OHpmYXhYMVAzUWhWd3JZZSs1NzYramtBTnRTUzJtQmJ3PT0iXSwKCiAgICAic3RkLWVudiI6IFsic3RkLWVudkA0LjEuMCIsICIiLCB7fSwgInNoYTUxMi1ScTd5YmNYMlJ1QzU1cjlvYVBWRVc3L3h1M3RqOHU0R2VCWUhCV0N5Y2hGdHpNSXI4NkE3ZTNQUEVCUFQzN3NIU3RLWDMrVGlYL0ZyL0FDbUpMVmxMUT09Il0sCgogICAgInN0cmluZy13aWR0aCI6IFsic3RyaW5nLXdpZHRoQDQuMi4zIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImVtb2ppLXJlZ2V4IjogIl44LjAuMCIsICJpcy1mdWxsd2lkdGgtY29kZS1wb2ludCI6ICJeMy4wLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiIH0gfSwgInNoYTUxMi13S3lRUlFwakowc0lwNjJFclNaZEdzak1KV3NhcDVvUk5paEhodTZHN0pWTy85aklCNlV5ZXZMK3RYdU9xcm5nOGovY3hLVFd5V1V3dlNUcmlpWnovZz09Il0sCgogICAgInN0cmlwLWFuc2kiOiBbInN0cmlwLWFuc2lANi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1yZWdleCI6ICJeNS4wLjEiIH0gfSwgInNoYTUxMi1ZMzhWUFNIY3FrRnJDcEZuUTl2dVNYbXF1dXY1b1hPS3BHZVQ2YUdycjNvM0djOUFsVmE2SkJmVVNPQ25ieEdHWkYrLzBvb0k3S3JQdVVTenRVZFU1QT09Il0sCgogICAgInN0eWxlZC1qc3giOiBbInN0eWxlZC1qc3hANS4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY2xpZW50LW9ubHkiOiAiMC4wLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0gMTYuOC4wIHx8IDE3LngueCB8fCBeMTguMC4wLTAgfHwgXjE5LjAuMC0wIiB9IH0sICJzaGE1MTItcVNWeURUZU1vdGR2UVlvSFdMTkd3UkZKSEMraStadmRCUllvc09GZ0MrV2cxdng0ZnJOMi9SRy9OQTdTWXFxdktOTGYzOVAyTFNSQTJwdTZuMFhZWkE9PSJdLAoKICAgICJzdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JAOC4xLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItTXBVRU4yT29kdFV6eHZLUWw3MmNVRjdSUTVFaUhzR3ZTc1ZHMGlhOWM1UmJXR0wyQ0k0QzdFcFBTOFVUQklwbG5selppTnVWNTZ3K0Z1Tnh5M3R5MlE9PSJdLAoKICAgICJ0YWlsd2luZC1tZXJnZSI6IFsidGFpbHdpbmQtbWVyZ2VAMy42LjAiLCAiIiwge30sICJzaGE1MTItdXhMN3FBVlFyaXFSUVBBeUszcGo2NlZxc2tXcW9aMzdQVzk0andPVHdOZnEvejlveXUxVitlcXJacXRSMitmQ2lYZFlPWmUvTW9kdDhHdHZxTnp1K3c9PSJdLAoKICAgICJ0YWlsd2luZGNzcyI6IFsidGFpbHdpbmRjc3NANC4zLjAiLCAiIiwge30sICJzaGE1MTIteTZueE1HQjFuTVc5UjZrOTZlNWdkSUZ6Y2ZML2dUSlJOYXFHZXMxWXZrTG5QVlh6V2dicUZGMnlMQzBUOEc3NzRuMjRjeDNQZThYcktvbmlDT0FIK1E9PSJdLAoKICAgICJ0YXBhYmxlIjogWyJ0YXBhYmxlQDIuMy4zIiwgIiIsIHt9LCAic2hhNTEyLXV4Yy96cHFGZzZ4N0M4dk9FN2xoNkxiZGE4ZUVMOXptVm0vUExlVFBCUmhoMXhDZ2RXYVErSjFDVWllR3BJZm0ySGR0c1VwUnYrSHNoaWFzQk1jYzZBPT0iXSwKCiAgICAidGVyc2VyIjogWyJ0ZXJzZXJANS4xNi45IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiAiXjAuMy4yIiwgImFjb3JuIjogIl44LjUuMCIsICJjb21tYW5kZXIiOiAiXjIuMjAuMCIsICJzb3VyY2UtbWFwLXN1cHBvcnQiOiAifjAuNS4yMCIgfSwgImJpbiI6IHsgInRlcnNlciI6ICJiaW4vdGVyc2VyIiB9IH0sICJzaGE1MTItSFBhL0ZkVEI5WEdJMkgxL2tlTEZaSHhsNldOdkFJNFlhbEhHdERRVGxNbkpjb3FTYWIxVXdMNGwxaEdFaHM2L0dtTEhCWklnL1lnQisramNiem9PRWc9PSJdLAoKICAgICJ0aW55YmVuY2giOiBbInRpbnliZW5jaEAyLjkuMCIsICIiLCB7fSwgInNoYTUxMi0wK0RVdnFXTVZhbExtaGE2bHI0a0Q4aUFNSzFIelYwL2FLbkN0V2I5djk2NDFUblAvTUZiN1BjMmJ4b3hRalRYQUVycnlYVmdVT2Z2MllxTmxscUdlZz09Il0sCgogICAgInRpbnlleGVjIjogWyJ0aW55ZXhlY0AxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1kQXFTcUUvUmFicEJLSTgraDI2R2ZMcTZWYjNKVlhzMzBYWVFqZE1qYWovYzJ0UzhJWVlNYkl6UDU5OUt0Umo3YzU3L3dZQXBiM1FqZ1JnWG1yQ3VrQT09Il0sCgogICAgInRpbnlnbG9iYnkiOiBbInRpbnlnbG9iYnlAMC4yLjE2IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImZkaXIiOiAiXjYuNS4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiIH0gfSwgInNoYTUxMi1wbjk5VmhvQUNZUjhuRkhoeHFpeCt1dnNiWGluZUFhc1dtNW9qWG9OOHhFd0s1S2QzL1RyaE5uMXdCeXVENTJVeFdSTHk4cHUra1JNbmlFaTZFcTlaZz09Il0sCgogICAgInRpbnlyYWluYm93IjogWyJ0aW55cmFpbmJvd0AzLjEuMCIsICIiLCB7fSwgInNoYTUxMi1CZitJTG1CZ3JldFVyZEp4elhNMFNnWExaM1hmaWFVdU9qL0lLUUh1VFhpcCswNVhuK3V5RVlkVmcwa1lEaXBUQmNMckNWeVV6QVB6N1FtQXJiMG1tdz09Il0sCgogICAgInRyZWUta2lsbCI6IFsidHJlZS1raWxsQDEuMi4yIiwgIiIsIHsgImJpbiI6IHsgInRyZWUta2lsbCI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1MME9ycGk4cUdwUkcvL05kK0g5MHZGQiszaUhudWUxelNTR21OT09DaDFHTEo3clVLVndWMkh2aWpwaEdRUzJVbWhVWmV3UzlWZ3Z4WUlkZ3IrZkcxQT09Il0sCgogICAgInRzbGliIjogWyJ0c2xpYkAyLjguMSIsICIiLCB7fSwgInNoYTUxMi1vSkZ1OTRIUWIrS1ZkdVNVUUw3d25wbXFuZm1Mc09BL25BaDZiNkVIMHdDRW9LMC9tUGVYVTZjM3dLRFY4M01rT3VIUFJIdFNYS0tVOTlJQmF6Uy8ydz09Il0sCgogICAgInR5cGVzY3JpcHQiOiBbInR5cGVzY3JpcHRANS45LjMiLCAiIiwgeyAiYmluIjogeyAidHNjIjogImJpbi90c2MiLCAidHNzZXJ2ZXIiOiAiYmluL3Rzc2VydmVyIiB9IH0sICJzaGE1MTItamwxdlp6UERpbkxyOWVVdDNKL3Q3VjZGZ05FdzlRanZCUGR5c3o5S2ZRREQ0MWZRckMyWTR2S1FkaWFVcEZUNGJYbGIxUkhoTHBwOHd0bTZNNVRnU3c9PSJdLAoKICAgICJ1bmRpY2ktdHlwZXMiOiBbInVuZGljaS10eXBlc0A2LjIxLjAiLCAiIiwge30sICJzaGE1MTItaXdEWnFnMFFBR3JnOVJhdjVING4wTTY0YzNta1I1OWNKNndRcCs3QzRuSTBnc21FeGFlZGFZTE5PNDRlVDRBdEJCd2piVGlHUE1sdDJNZDBUOUg5SlE9PSJdLAoKICAgICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6IFsidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmVAMS42LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIl4xNi44LjAgfHwgXjE3LjAuMCB8fCBeMTguMC4wIHx8IF4xOS4wLjAiIH0gfSwgInNoYTUxMi1QcDZHU3dHUC9OclBJcnhWRkFJa09RZXl3OGxGZW5PSGlqUVdrVVRyRHZyRjRBTHF5bFAyQy9LQ2tlUzlkcFVNM0t2WVJRaG5hNXZ0N0lMOTUrWlE5dz09Il0sCgogICAgInZpdGUiOiBbInZpdGVAOC4wLjEzIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2NzcyI6ICJeMS4zMi4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiLCAicG9zdGNzcyI6ICJeOC41LjE0IiwgInJvbGxkb3duIjogIjEuMC4xIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNiIgfSwgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiZnNldmVudHMiOiAifjIuMy4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkB0eXBlcy9ub2RlIjogIl4yMC4xOS4wIHx8ID49MjIuMTIuMCIsICJAdml0ZWpzL2RldnRvb2xzIjogIl4wLjEuMTgiLCAiZXNidWlsZCI6ICJeMC4yNy4wIHx8IF4wLjI4LjAiLCAiaml0aSI6ICI+PTEuMjEuMCIsICJsZXNzIjogIl40LjAuMCIsICJzYXNzIjogIl4xLjcwLjAiLCAic2Fzcy1lbWJlZGRlZCI6ICJeMS43MC4wIiwgInN0eWx1cyI6ICI+PTAuNTQuOCIsICJzdWdhcnNzIjogIl41LjAuMCIsICJ0ZXJzZXIiOiAiXjUuMTYuMCIsICJ0c3giOiAiXjQuOC4xIiwgInlhbWwiOiAiXjIuNC4yIiB9LCAib3B0aW9uYWxQZWVycyI6IFsiQHR5cGVzL25vZGUiLCAiQHZpdGVqcy9kZXZ0b29scyIsICJlc2J1aWxkIiwgImppdGkiLCAibGVzcyIsICJzYXNzIiwgInNhc3MtZW1iZWRkZWQiLCAic3R5bHVzIiwgInN1Z2Fyc3MiLCAidGVyc2VyIiwgInRzeCIsICJ5YW1sIl0sICJiaW4iOiB7ICJ2aXRlIjogImJpbi92aXRlLmpzIiB9IH0sICJzaGE1MTItTUZ0akJZZ3ptU3htZ0E0UkFmakl5WFdwR2Uxb0FMbmpnVVR6elY3UUx4L1RLeEN6anRNSDZGZDkvZVZLKzVGZzFxTm96NVZBd3NtTXMvTm9mcm1Kdnc9PSJdLAoKICAgICJ2aXRlc3QiOiBbInZpdGVzdEA0LjEuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdml0ZXN0L2V4cGVjdCI6ICI0LjEuNiIsICJAdml0ZXN0L21vY2tlciI6ICI0LjEuNiIsICJAdml0ZXN0L3ByZXR0eS1mb3JtYXQiOiAiNC4xLjYiLCAiQHZpdGVzdC9ydW5uZXIiOiAiNC4xLjYiLCAiQHZpdGVzdC9zbmFwc2hvdCI6ICI0LjEuNiIsICJAdml0ZXN0L3NweSI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgImVzLW1vZHVsZS1sZXhlciI6ICJeMi4wLjAiLCAiZXhwZWN0LXR5cGUiOiAiXjEuMy4wIiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJvYnVnIjogIl4yLjEuMSIsICJwYXRoZSI6ICJeMi4wLjMiLCAicGljb21hdGNoIjogIl40LjAuMyIsICJzdGQtZW52IjogIl40LjAuMC1yYy4xIiwgInRpbnliZW5jaCI6ICJeMi45LjAiLCAidGlueWV4ZWMiOiAiXjEuMC4yIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNSIsICJ0aW55cmFpbmJvdyI6ICJeMy4xLjAiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIsICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogIl4yLjMuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZWRnZS1ydW50aW1lL3ZtIjogIioiLCAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjkuMCIsICJAdHlwZXMvbm9kZSI6ICJeMjAuMC4wIHx8IF4yMi4wLjAgfHwgPj0yNC4wLjAiLCAiQHZpdGVzdC9icm93c2VyLXBsYXl3cmlnaHQiOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXByZXZpZXciOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXdlYmRyaXZlcmlvIjogIjQuMS42IiwgIkB2aXRlc3QvY292ZXJhZ2UtaXN0YW5idWwiOiAiNC4xLjYiLCAiQHZpdGVzdC9jb3ZlcmFnZS12OCI6ICI0LjEuNiIsICJAdml0ZXN0L3VpIjogIjQuMS42IiwgImhhcHB5LWRvbSI6ICIqIiwgImpzZG9tIjogIioiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZWRnZS1ydW50aW1lL3ZtIiwgIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAdHlwZXMvbm9kZSIsICJAdml0ZXN0L2Jyb3dzZXItcGxheXdyaWdodCIsICJAdml0ZXN0L2Jyb3dzZXItcHJldmlldyIsICJAdml0ZXN0L2Jyb3dzZXItd2ViZHJpdmVyaW8iLCAiQHZpdGVzdC9jb3ZlcmFnZS1pc3RhbmJ1bCIsICJAdml0ZXN0L2NvdmVyYWdlLXY4IiwgIkB2aXRlc3QvdWkiLCAiaGFwcHktZG9tIiwgImpzZG9tIl0sICJiaW4iOiB7ICJ2aXRlc3QiOiAidml0ZXN0Lm1qcyIgfSB9LCAic2hhNTEyLTZsdmpiUzNwOWI0Q3JkQ21ndXpiaDIvNHVvWGhHRTJxNzFSNE9YNXNxRjlSMWJvOVhkNmZHck1BZnZwNXduQ3psQm5GVmRDT3A2b251VFFWYm84aVVRPT0iXSwKCiAgICAid2h5LWlzLW5vZGUtcnVubmluZyI6IFsid2h5LWlzLW5vZGUtcnVubmluZ0AyLjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzaWdpbmZvIjogIl4yLjAuMCIsICJzdGFja2JhY2siOiAiMC4wLjIiIH0sICJiaW4iOiB7ICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLWhVcm1hV0JkVkRjeHZZcW55aDA5enVuS3pST1dqYlpUaU55OGRCRWprUzdlaEVEUWliWEo3WHZsbXRid3VUY2xVaUl5TitDeVhRRDRWbWtvOGZObTh3PT0iXSwKCiAgICAid3JhcC1hbnNpIjogWyJ3cmFwLWFuc2lANy4wLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMC4wIiwgInN0cmluZy13aWR0aCI6ICJeNC4xLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjAiIH0gfSwgInNoYTUxMi1ZVkdJajJrYW1MU1R4dzZOc1pqb0J4ZlN3c24weWNkZXNtYzRwK1EyMWM1elB1WjFwbCtOZnhWZHhQdGRIdm1OVk9RNlhTWUc0QVV0eXQvRmk3RDE2UT09Il0sCgogICAgInhzcyI6IFsieHNzQDEuMC4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb21tYW5kZXIiOiAiXjIuMjAuMyIsICJjc3NmaWx0ZXIiOiAiMC4wLjEwIiB9LCAiYmluIjogeyAieHNzIjogImJpbi94c3MiIH0gfSwgInNoYTUxMi1GVmRsVlZDNjdXT0lQdmZPd2hvTUVUVjcyZjZHYlc3YU9hYkJDM1d4Ti9vVWRvRU1EeUx6NE9nUnY1L2djazJaZU5xRVF1K1RiMGtsb292WE9mcFlWZz09Il0sCgogICAgInkxOG4iOiBbInkxOG5ANS4wLjgiLCAiIiwge30sICJzaGE1MTItMHBmRnplZ2VEV0pISklBbVRMUlAyRHdIamRGNXM3am85dHV6dGRReEFoSU5DZHZTKzNuR0lOcVBkMDBBcGhxSlIvMExoQU5VUzYvKzdTQ2I5OFlPZkE9PSJdLAoKICAgICJ5YW1sIjogWyJ5YW1sQDIuOS4wIiwgIiIsIHsgImJpbiI6IHsgInlhbWwiOiAiYmluLm1qcyIgfSB9LCAic2hhNTEyLTJBdmhOWDNtYjh6ZDZaeTdJTlR0U3BsMUYxNUhXNlducWowc3JXbGtLTGNwWWwvZ01JTUppeXVHcTJLZUkyWUZ4VVBqZGxCKzNMYzEwc2VNTHRMNGNBPT0iXSwKCiAgICAieWFyZ3MiOiBbInlhcmdzQDE3LjcuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjbGl1aSI6ICJeOC4wLjEiLCAiZXNjYWxhZGUiOiAiXjMuMS4xIiwgImdldC1jYWxsZXItZmlsZSI6ICJeMi4wLjUiLCAicmVxdWlyZS1kaXJlY3RvcnkiOiAiXjIuMS4xIiwgInN0cmluZy13aWR0aCI6ICJeNC4yLjMiLCAieTE4biI6ICJeNS4wLjUiLCAieWFyZ3MtcGFyc2VyIjogIl4yMS4xLjEiIH0gfSwgInNoYTUxMi03ZFN6elJRKytDS25OSS9rcktuWVJWN0pLS1BVWE1FaDYxc29hSEtnOW1yV0VoekZXaEZueFB4R2wrNjljRDFPdTYzQzEzTlVQQ25tSWNydnFDdU02dz09Il0sCgogICAgInlhcmdzLXBhcnNlciI6IFsieWFyZ3MtcGFyc2VyQDIxLjEuMSIsICIiLCB7fSwgInNoYTUxMi10VnBzSlc3RGRqZWNBaUZwYklCMWUzcXhJUXNFNk5vUGM1L2VUZHJiYklDNGgwTFZzV2hub2EzZyttMkhjbEJJdWpIenN4WjRWSlZBK0dVdWMyL0xCdz09Il0sCgogICAgInpvZCI6IFsiem9kQDQuNC4zIiwgIiIsIHt9LCAic2hhNTEyLXl0RU5GaklKRmwyVXdZZ2xkZTJqY2hXMkh3bTRHSkZMRGlTWFdkVHJKUUJJTjlGY3lwN240RGh4SkVpV05BSk1WMS9CcVdmVy9ra2c3MVVEY0hKeVRRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvY29yZSI6IFsiQGVtbmFwaS9jb3JlQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICIxLjIuMSIsICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXlxNk9rSjRwODJDQWZQbDB1OW1RZWJRSEtQSmtZN1dySXVrMjA1Y1RZblllK2syWjhZQmgxMUZyYlJHL0g2aWhpcnFjYWNPZ2wyQklPOG95TVFMZVh3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvcnVudGltZSI6IFsiQGVtbmFwaS9ydW50aW1lQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLWV3dllsazg2eFVvR0kwelFSTnEvbUMrMTZSMVFlRGxLUXkyMUtpM29TWVhOZ0xiNDVHVjFQNkEwTSsvczZueUN1TkRxZTVWcGFZODRCelhHd1Zid0ZBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvd2FzaS10aHJlYWRzIjogWyJAZW1uYXBpL3dhc2ktdGhyZWFkc0AxLjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXVUSUk3T1lGKy9NZXMvTXJjSU9ZcDV5T3RTTUxCV1NJb0xQcGNnd2lwb2lLYmxpNmszMjJ0Y29Gc3hvSUl4UERxVzAxU1FHQWdrbzRFelppMkJOdjJ3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BuYXBpLXJzL3dhc20tcnVudGltZSI6IFsiQG5hcGktcnMvd2FzbS1ydW50aW1lQDEuMS40IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB0eWJ5cy93YXNtLXV0aWwiOiAiXjAuMTAuMSIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuNy4xIiwgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjEiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLTNOUU5OZ0ExWVNsSmIva01IMWlsZEFTUDlIVzcvN2tZblJJMnN6V0phb2ZhUzFoV21iR0k0SCtkMysyMmFHelhYTjlJSituK0dpRlZjR2lwSlAxOG93PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0B0eWJ5cy93YXNtLXV0aWwiOiBbIkB0eWJ5cy93YXNtLXV0aWxAMC4xMC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItUm9CdkoyWDB3dUtsV0ZJanJ3ZmZHdzFJcVpIS1FxekljaEthYWRaWmZuTnBzQVlwMm1NMGgzNkp0UENqTkRBSEdnWWV6LzE1dU1CcGZHd2NoaGlNZ2c9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvdHNsaWIiOiBbInRzbGliQDIuOC4xIiwgIiIsIHsgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItb0pGdTk0SFFiK0tWZHVTVVFMN3ducG1xbmZtTHNPQS9uQWg2YjZFSDB3Q0VvSzAvbVBlWFU2YzN3S0RWODNNa091SFBSSHRTWEtLVTk5SUJhelMvMnc9PSJdLAoKICAgICJjaGFsay9zdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JANy4yLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItcXBDQXZSbDlzdHVPSHZlS3NuN0huY0pSdnY1MDFxSWFjS3pRbE8vK0x3eGM5KzBxMndMeXY0RGZ2dDgwL0RQbjJwcU9Cc0pkRGlvZ1hHUjkrT3Z3Unc9PSJdLAoKICAgICJuZXh0L3Bvc3Rjc3MiOiBbInBvc3Rjc3NAOC40LjMxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIm5hbm9pZCI6ICJeMy4zLjYiLCAicGljb2NvbG9ycyI6ICJeMS4wLjAiLCAic291cmNlLW1hcC1qcyI6ICJeMS4wLjIiIH0gfSwgInNoYTUxMi1QUzA4SWJvaWE5bXRzLzJ5Z1YzZUxwWTVnaG5VY2ZMVi9FWFRPVzFFMnFZeEpLR0dCVXROak43NkZZSG5NczM2Um1BUm40MWJDMEFabW4rclIwT1ZwUT09Il0sCiAgfQp9Cg==" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "restaurant",\n "name": "Restaurant",\n "tagline": "Menu-driven storefront with reservations and table-service support.",\n "industry": "food",\n "tags": ["food", "restaurant", "reservations"],\n "stability": "stable",\n "schemaType": "Restaurant",\n "mock": {\n "seedName": "restaurant",\n "seedBusinessId": "bus_mamas_kitchen"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-semibold uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="font-serif text-[clamp(2.25rem,5vw,3.5rem)] font-semibold mb-6 -tracking-[0.02em]">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="font-serif text-3xl font-semibold mt-10 mb-3">{s.heading}</h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full menu with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/shop?product=${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
2342
2459
|
|
|
2343
2460
|
import { useState } from "react";
|
|
2344
2461
|
|
|
@@ -3114,7 +3231,46 @@ export const brand: Brand = {
|
|
|
3114
3231
|
* the root layout prerenderable.
|
|
3115
3232
|
*/
|
|
3116
3233
|
export const SITE_URL = "https://example.com";
|
|
3117
|
-
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed default --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed default",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.65.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS41LjAiLCAiIiwge30sICJzaGE1MTItbHdZTi92RFBlTlJVTGNlcG9FL0xPMlBneCs3L1JWK1M5QVJmYmM5bHIyRHRHa09EN3BBaXJ1SHZiUjFSWDNReWY2amE0N0VXSkRNc05LNXZLMDhESmc9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzIuMCIsICIiLCB7fSwgInNoYTUxMi1GRVNNT3hpbDVTZTAxNHVpL0VxOGZUNXVISm82bklSd0gwUGZKclpKWHM2R2VrM1pWRk9ycFV2M1lJWlQyMG0rZXh0VTk4SGcxWW03MlU1OHJsc3hVUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjIiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWlM0RDFKUEduL01ZUU4vU1lEV2Z0SUUvblZzTThqL0FGT1lFekFvT0UyTzNOa3RRT1pydSsvdllYR2JSL3F0ZExkSWZHQ1AwbGNvSmlZVnpzRXoraVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLXZkRkE5K0MvcmVreUdjZTdXcUhzL3hvVDBpb1pFV2FPRnlaTElWMW1FZU5GYUZEVVFyUElvOFZzMkd2SjZlZXRiM3J6RFV0VUJnenRvM0V4cFhKQjN3PT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1CZXdTT3dUSGF6djc3RFRZaUFaWFNxcUtaNEtQL0tvbkZpc0RNVlU3UElteG9XZkIyYWVwblBoZDJFNFNXejN6RHpZZ0ROYnM2akJtVGRnTm5GMDJHQT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMiIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbTQxbzdNMFlXdFVkcWs2MVRiK2puS2Iyck4rK2lSZElBU2xFeGtVb0tmSUFIMzBET0hDQjhmVkx6U1VwYldISFU4ZXNtRWlvWTYyUHh6ZXhFOE1CdUE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4yIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItamNvakI5SDdXL2pTMjlwTUtXQUsxTitmVTk5dlhvZEhEVGF0UzNiM3kvWFNPQ2lIbzBra0E3NHBMM2pKbWtvUXRZcE9DeER2YUtzMWZvMklqLzFYNXc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItMWpuNnFEVTVpaU9nRmd5Z0R6S1V1S1AwbWFUaTAvZjErc0JMZ3Zpai83NkM3N05tM3RzNnVmejlCamc1cTVkZHV4aVVJeHRxODZKSW9Cdm8xeFE0SWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4yIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1RVkxPL2N6Rk1kb01GU3FsWDNiY3N3Y0pObS8yM3IrcW9hL2pndG1GYy9xRXA2L2pYbUlrRGpGL1hJbzhkUGZHYWl3eTF4ZlFuOG83N0w3OUdlWEZndz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4yIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1oZ081QWJtMHc1VUw2RkVhMmlGblpxbzJLbEs3VFE1UWhWNXgwOWh1akJmN3Q1S3pIUTFWbWZQdVRwcVJ5L3JObFN4dWEzZVdIMzc0eHhpVnJQK2xjQT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4yIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1meThyWHh1WUV1NjAyYWJDOE1VTmFQallMSUZ6UmVPYUVJRU1LTVVhMHJGRVV4TnBWWGhzMTVLU1NRNHFscVNhTTdCNnJjajlyRFpnQURoL0lHRHpMUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjIiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0wK2JPa2lRNzc5K3IxV3BvSE9XSHFuY3Z5eVNjaTB2S3BoK215TkRZYitpbTZtZUpBekhRWGF5Nm9FZ25rSHVVR291TTFMS1Rad3FLcEJvdzZLajdDUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLW1qU2tyelpLNVFzbDBhOWQxSmdJTE9pdVpPU0RUVmRLRU5jU1hCb3FielNyc3BMUi80L0lSVkRvNXdkMkdnWmpOc3MvdmlCRkpkZXErajdxSDJueXB3PT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4yIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTF2NXZIYXNkZlFBWm9FSGFrQlY3MkxJRkFDOUpqbnltc2lLeHArR0VyL21hMytOSkNQU2FZSytxYXZJbk9vdkprZ3dGcnM3R2NjWDJkNklnREEzWjV3PT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItbWIxVm9iV242TmhlemlUazUvV0VhUjZBS1ZicndUNXNPaTZDN3prM2d5L3BEMXF0SmZVMWo0UGdUbzJOSm5PdGJMOURsM0FlZWk4dzlqSjdxQzJqWlE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4yIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1TcUtvbkY1NnZBL0wyeUh3SFljRXAyUDM0VVJwT1o3ZDFmUzYzNWNUa3BEblV0RUdkVWJoSTZOenNQZHFlU1d2QUFlR0RyeGpXak5taWJESWRGZjkvQT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXY3cVJJN2dYTFJJTmNPR1h0KzdZbUFaNmlGdXlaVk1Jb1hBeGhkOG9QK0RSOWRMZkw5R2ZOSXg3UExNeG1oWmR2cTh3YVVKQlFpV045RUtOeStUUkJRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS43IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS43IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjciLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItMVIrdHcwb3J0SEViWkRHTXltbStwTjcvQUZRL1JrRkZkdGQ3RU4rVkJweW5LbUxiUDhBM3JwRVhkc2hCSjcrOGhROXpCSmgvaTFzMHlLTnR4QW5VN3c9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjciLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjciLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi12WTdudWFtS2dmdnBBMUtvYTNvWUl3L2s3RDZrWm5wR3lOTVpXOGxvb3cyYnNCWWxhMVRGZHFUYVhuY1dkUm40cGd3TnMrOTBSaG5YaEpTY0R3UWVKQT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS43IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLXVtZ0NhclRPWVFXSWFETXZHRFJaaWorNmI5b1ZlTEl5SnpmTitBUzg4ZTBaT1UzUVRnTk5TVHRqUU9wY3ZXcjNucDFOMGo0V2daaitzYjNvWUJEc2N3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS43IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjciLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItQmFwam1BUTJhSTc4V2RNRWZlVVdpdm5mVnpCK1ZQR3dXUlFjSkUwT1VxN3FFZUVjQnNDU2YrMFQ1aVJFQk5FNW5CYjR3QTVZYTBXNklBK3NnaGRFRnc9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS43IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNyIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS43IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1aYWNMemphK1RtSmVaMWgxNHhXMkZCL1dwZWltVUQzaGFCWFFQeUpxeHZvOGpRVG1mZUE4enY1OG10ak4yQzdFSFhaRFlWY1ZZZFltQXhqa1dWdktDdz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNyIsICIiLCB7fSwgInNoYTUxMi1rYmtJNUxNV2FreXVUSXZzNmZVSjVxZElWYjFYVktzWUpBVDRPSjkzOGNITVJPWU1TZm1vUWRaeTBhYUFuamJiYzhGNjF2a29UcXovQXorL0hpSXU1UT09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjciLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS43IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItVDUzMldCdTc5MWNCeEpsQ2w2U08rSjE0bDgxRFF4NnVRSG0xYlFibUNEWTducWxFSWdremEvVUZuU0JOYVV0U2Y0MXVubGRERmpkT0JZRVFDNGI1SHc9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItYU5uR0N2YkovUkl5V28xSXVoTmRWam5ORitFakg5d3B6cE5IdCtjaS9tOUhlOUxKdlVOOHdyQ2NYanA5Y1dzR05BdXZTcFZGVHgvdnJhQUZROHFHalE9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjMiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLTV4b0RmWCtmTDdmYUFUbmFnbVdQcGJGdHdoL1I3N1dtTU1xcUhHUzY1QzN2dkIwWUhyZ0YrQjFZbVozNDQxdE1qNW42M2swMjEyWE5vSnd6bGhmZlF3PT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwb3N0Y3NzIjogWyJwb3N0Y3NzQDguNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy4xMiIsICJwaWNvY29sb3JzIjogIl4xLjEuMSIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjIuMSIgfSB9LCAic2hhNTEyLUZmUjhzamQ0ZW0yVDZmYjNJMk13QUpVN0hXVk1yOXpiYStlbm1RZWVXRmZDYm0rVU9DLzBYNERTOFh0cFVUTXdXTUdiaktZUDd4amZOZWt6eUdtQjNBPT0iXSwKCiAgICAicmVhY3QiOiBbInJlYWN0QDE5LjIuNiIsICIiLCB7fSwgInNoYTUxMi1zZldHR2ZhdmkweHI4UGcwc1ZzeUhNQU96aVZZS2dQTE5yUzdpZytpdk1OYjN3YkNCdzNLeHRmbHNHQkF3RDNnWVFsRS9BRVpzVExnVG9SclNDamIwUT09Il0sCgogICAgInJlYWN0LWRheS1waWNrZXIiOiBbInJlYWN0LWRheS1waWNrZXJAOS4xNC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS40LjEiLCAiQHRhYmJ5X2FpL2hpanJpLWNvbnZlcnRlciI6ICIxLjAuNSIsICJkYXRlLWZucyI6ICJeNC4xLjAiLCAiZGF0ZS1mbnMtamFsYWxpIjogIjQuMS4wLTAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0xNi44LjAiIH0gfSwgInNoYTUxMi10QmFvRFdqUHdlME01cEdydW00SDBTUjZMeWsrQk85b0hucDlKYktwR0tXMm1scmFOUGdQOUJNZnNnNXBXcHdyc3NBUm1lcWs3WUJsMm9YdXRaVGFIQT09Il0sCgogICAgInJlYWN0LWRvbSI6IFsicmVhY3QtZG9tQDE5LjIuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzY2hlZHVsZXIiOiAiXjAuMjcuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTkuMi42IiB9IH0sICJzaGE1MTItMHByTUkraHZCYlBqc1dueERMeGxDR3lNOFBONlV1V2pFVUNZbVpoTzY3eElWOVhhc2Evci92RG5xK1h5cTRMbzI3ZzhRU2JPNVl6QVJ1MEQxU3BzM2c9PSJdLAoKICAgICJyZXF1aXJlLWRpcmVjdG9yeSI6IFsicmVxdWlyZS1kaXJlY3RvcnlAMi4xLjEiLCAiIiwge30sICJzaGE1MTItZkd4RUk3K3dzRzl4cnZkanNybG1MMjJPTVRUaUhSd0FNcm9pRWVNZ3E4Z3pvTEMvUFFyN1JzUkRTVExVZy9iWkFadEYrVFZJa0hjNi80UklLcnVpK1E9PSJdLAoKICAgICJyZXNlbGVjdCI6IFsicmVzZWxlY3RANS4yLjAiLCAiIiwge30sICJzaGE1MTItQWdaM1VPWm0zWW5kZnJKNE9ZamdyVDdibUNtLzFpcWtqdkVmSC9vWWp6aDZQRDJxdzRRdVQzampuWElycGR0NE1UcE1YY2xNVDNsWGJtUlkrWFJha3c9PSJdLAoKICAgICJyb2xsZG93biI6IFsicm9sbGRvd25AMS4wLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQG94Yy1wcm9qZWN0L3R5cGVzIjogIj0wLjEzMi4wIiwgIkByb2xsZG93bi9wbHVnaW51dGlscyI6ICJeMS4wLjAiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLWFybTY0IjogIjEuMC4yIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi14NjQiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctZnJlZWJzZC14NjQiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjAuMiIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtbXVzbCI6ICIxLjAuMiIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1wcGM2NC1nbnUiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251IjogIjEuMC4yIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgteDY0LW11c2wiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzItYXJtNjQtbXN2YyI6ICIxLjAuMiIsICJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2YyI6ICIxLjAuMiIgfSwgImJpbiI6IHsgInJvbGxkb3duIjogIi4vYmluL2NsaS5tanMiIH0gfSwgInNoYTUxMi1vWng1elZEdFZCNDRBVzNlYWlmZ0RtbDFnV1JEWkd2amNmZHhvbkU0c3dOUEc5OFByclhqYU8vS3JuVWp6bE1uenRDQ1JWbFV1ZUExa0NYaEFSR2s2Zz09Il0sCgogICAgInJ4anMiOiBbInJ4anNANy44LjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuMS4wIiB9IH0sICJzaGE1MTItZGhLZjkwM1UvUFFaWTZib05OdEFHZFdiRzg1V0FialQvMXhZb1pJQzdGQVkweVdhcE9CUVZzVnJEbDU4Vzg2Ly9lMVZwTU5CdFJWNE1hWGZkTXlTRkE9PSJdLAoKICAgICJzY2hlZHVsZXIiOiBbInNjaGVkdWxlckAwLjI3LjAiLCAiIiwge30sICJzaGE1MTItZU52K1dyVmJLdTFmM3ZiWUpUL3h0aUY1c3lBNUhQSU10ZjlJZ1kvbktnMHNXcXpBVUV2cVkveG03T2NaYy9xYWZMeC9pTzlGZ09tZVNBcDR2NXRpL1E9PSJdLAoKICAgICJzZW12ZXIiOiBbInNlbXZlckA3LjguMCIsICIiLCB7ICJiaW4iOiB7ICJzZW12ZXIiOiAiYmluL3NlbXZlci5qcyIgfSB9LCAic2hhNTEyLUFjTTdkVi81dWw0RWVrb1EyOUFnbTV2cmk4Sk5xUnlqMzlvMHFwWDZ2REYyR1pydHV0Wmw1UndnRDFYblpqaVRBZm5jc0poTUk0OFFRSDNzTjg3WU5BPT0iXSwKCiAgICAic2hhcnAiOiBbInNoYXJwQDAuMzQuNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAaW1nL2NvbG91ciI6ICJeMS4wLjAiLCAiZGV0ZWN0LWxpYmMiOiAiXjIuMS4yIiwgInNlbXZlciI6ICJeNy43LjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWRhcndpbi14NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtYXJtNjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgteDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saW51eC1hcm0iOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtYXJtNjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtcmlzY3Y2NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eC1zMzkweCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eC14NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtd2FzbTMyIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLWlhMzIiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogIjAuMzQuNSIgfSB9LCAic2hhNTEyLU91OUk1RnQ5V05jQ2JYclU5Y01nUEJjQ0s4TGl3THFjYnl3VzN0NG9EVjM3bjFwenB1TkxzWWlBVjhlT0RuamJ0UWxTRHdaMmNVRWVRejRFNTRIbHRnPT0iXSwKCiAgICAic2hlbGwtcXVvdGUiOiBbInNoZWxsLXF1b3RlQDEuOC4zIiwgIiIsIHt9LCAic2hhNTEyLU9ibW5JRjRoWE5nMUJxaG5IbWdiREVURjhkTFBDZ2daV0Jqa1FmaFpwYnN6Wm5ZdXI1RFVsalRjQ0hpaTVMQzNKNUUweWVPLzFMSU15SCtVdkhRZ3l3PT0iXSwKCiAgICAic2lnaW5mbyI6IFsic2lnaW5mb0AyLjAuMCIsICIiLCB7fSwgInNoYTUxMi15YngwV08xLzhiU0JMRVdYWnZFZDdnTVczU24zSkZsVzNUdlgxblJFYkRMUk5RTmFlTk44V0swbWVCd1BkQWFPSTdUdFJSUkpuL0VzMXpocnJDSHU3Zz09Il0sCgogICAgInNvdXJjZS1tYXAiOiBbInNvdXJjZS1tYXBAMC42LjEiLCAiIiwge30sICJzaGE1MTItVWpnYXB1bVdsYk1oa0JnelQ3WWtjNVlYVVQ0NkYwaUt1OFNHWHEwYmN3UDVkei9oMFBsajZlbkpxanoxWmJxMmw1V2FxWW5yVmJ3V09XTXlGM0Y0N2c9PSJdLAoKICAgICJzb3VyY2UtbWFwLWpzIjogWyJzb3VyY2UtbWFwLWpzQDEuMi4xIiwgIiIsIHt9LCAic2hhNTEyLVVYV01LaExPd1ZLYjcyOElVdFFQWHhmWVUrdXNkeWJ0VXJLLzh1R0U4Q1FNdnJoT3B3dnpEQndqMFFoU0w3TVFjN3ZJc0lTQkc4VlE4K0lEUXhwZlFBPT0iXSwKCiAgICAic291cmNlLW1hcC1zdXBwb3J0IjogWyJzb3VyY2UtbWFwLXN1cHBvcnRAMC41LjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImJ1ZmZlci1mcm9tIjogIl4xLjAuMCIsICJzb3VyY2UtbWFwIjogIl4wLjYuMCIgfSB9LCAic2hhNTEyLXVCSFUzTDNjenNJeVlYS1g4OGZkckdvdnhkU0NvVEdEUlo2U1lYdFNSeExaVXpIZzVQLzY2SHQ2dW9VbEh1OUVab2QraW5YaEtvM3FRZ3dYVVQveTF3PT0iXSwKCiAgICAic3RhY2tiYWNrIjogWyJzdGFja2JhY2tAMC4wLjIiLCAiIiwge30sICJzaGE1MTItMVhNSkU1ZlFvMWpHSDZZLzdlYm53UE9CRWtJRW5UNFFGMzJkNVIxK1ZYZFh2ZU0wSUJNSnQ4emZheFgxUDNRaFZ3clllKzU3Nitqa0FOdFNTMm1CYnc9PSJdLAoKICAgICJzdGQtZW52IjogWyJzdGQtZW52QDQuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVJxN3liY1gyUnVDNTVyOW9hUFZFVzcveHUzdGo4dTRHZUJZSEJXQ3ljaEZ0ek1Jcjg2QTdlM1BQRUJQVDM3c0hTdEtYMytUaVgvRnIvQUNtSkxWbExRPT0iXSwKCiAgICAic3RyaW5nLXdpZHRoIjogWyJzdHJpbmctd2lkdGhANC4yLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZW1vamktcmVnZXgiOiAiXjguMC4wIiwgImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50IjogIl4zLjAuMCIsICJzdHJpcC1hbnNpIjogIl42LjAuMSIgfSB9LCAic2hhNTEyLXdLeVFSUXBqSjBzSXA2MkVyU1pkR3NqTUpXc2FwNW9STmloSGh1Nkc3SlZPLzlqSUI2VXlldkwrdFh1T3Fybmc4ai9jeEtUV3lXVXd2U1RyaWlaei9nPT0iXSwKCiAgICAic3RyaXAtYW5zaSI6IFsic3RyaXAtYW5zaUA2LjAuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJhbnNpLXJlZ2V4IjogIl41LjAuMSIgfSB9LCAic2hhNTEyLVkzOFZQU0hjcWtGckNwRm5ROXZ1U1htcXV1djVvWE9LcEdlVDZhR3JyM28zR2M5QWxWYTZKQmZVU09DbmJ4R0daRisvMG9vSTdLclB1VVN6dFVkVTVBPT0iXSwKCiAgICAic3R5bGVkLWpzeCI6IFsic3R5bGVkLWpzeEA1LjEuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjbGllbnQtb25seSI6ICIwLjAuMSIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICI+PSAxNi44LjAgfHwgMTcueC54IHx8IF4xOC4wLjAtMCB8fCBeMTkuMC4wLTAiIH0gfSwgInNoYTUxMi1xU1Z5RFRlTW90ZHZRWW9IV0xOR3dSRkpIQytpK1p2ZEJSWW9zT0ZnQytXZzF2eDRmck4yL1JHL05BN1NZcXF2S05MZjM5UDJMU1JBMnB1Nm4wWFlaQT09Il0sCgogICAgInN1cHBvcnRzLWNvbG9yIjogWyJzdXBwb3J0cy1jb2xvckA4LjEuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJoYXMtZmxhZyI6ICJeNC4wLjAiIH0gfSwgInNoYTUxMi1NcFVFTjJPb2R0VXp4dktRbDcyY1VGN1JRNUVpSHNHdlNzVkcwaWE5YzVSYldHTDJDSTRDN0VwUFM4VVRCSXBsbmx6WmlOdVY1NncrRnVOeHkzdHkyUT09Il0sCgogICAgInRhaWx3aW5kLW1lcmdlIjogWyJ0YWlsd2luZC1tZXJnZUAzLjYuMCIsICIiLCB7fSwgInNoYTUxMi11eEw3cUFWUXJpcVJRUEF5SzNwajY2VnFza1dxb1ozN1BXOTRqd09Ud05mcS96OW95dTFWK2VxclpxdFIyK2ZDaVhkWU9aZS9Nb2R0OEd0dnFOenUrdz09Il0sCgogICAgInRhaWx3aW5kY3NzIjogWyJ0YWlsd2luZGNzc0A0LjMuMCIsICIiLCB7fSwgInNoYTUxMi15Nm54TUdCMW5NVzlSNms5NmU1Z2RJRnpjZkwvZ1RKUk5hcUdlczFZdmtMblBWWHpXZ2JxRkYyeUxDMFQ4Rzc3NG4yNGN4M1BlOFhyS29uaUNPQUgrUT09Il0sCgogICAgInRhcGFibGUiOiBbInRhcGFibGVAMi4zLjMiLCAiIiwge30sICJzaGE1MTItdXhjL3pwcUZnNng3Qzh2T0U3bGg2TGJkYThlRUw5em1WbS9QTGVUUEJSaGgxeENnZFdhUStKMUNVaWVHcElmbTJIZHRzVXBSditIc2hpYXNCTWNjNkE9PSJdLAoKICAgICJ0ZXJzZXIiOiBbInRlcnNlckA1LjE2LjkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlLW1hcCI6ICJeMC4zLjIiLCAiYWNvcm4iOiAiXjguNS4wIiwgImNvbW1hbmRlciI6ICJeMi4yMC4wIiwgInNvdXJjZS1tYXAtc3VwcG9ydCI6ICJ+MC41LjIwIiB9LCAiYmluIjogeyAidGVyc2VyIjogImJpbi90ZXJzZXIiIH0gfSwgInNoYTUxMi1IUGEvRmRUQjlYR0kySDEva2VMRlpIeGw2V052QUk0WWFsSEd0RFFUbE1uSmNvcVNhYjFVd0w0bDFoR0VoczYvR21MSEJaSWcvWWdCKytqY2J6b09FZz09Il0sCgogICAgInRpbnliZW5jaCI6IFsidGlueWJlbmNoQDIuOS4wIiwgIiIsIHt9LCAic2hhNTEyLTArRFV2cVdNVmFsTG1oYTZscjRrRDhpQU1LMUh6VjAvYUtuQ3RXYjl2OTY0MVRuUC9NRmI3UGMyYnhveFFqVFhBRXJyeVhWZ1VPZnYyWXFObGxxR2VnPT0iXSwKCiAgICAidGlueWV4ZWMiOiBbInRpbnlleGVjQDEuMS4yIiwgIiIsIHt9LCAic2hhNTEyLWRBcVNxRS9SYWJwQktJOCtoMjZHZkxxNlZiM0pWWHMzMFhZUWpkTWphai9jMnRTOElZWU1iSXpQNTk5S3RSajdjNTcvd1lBcGIzUWpnUmdYbXJDdWtBPT0iXSwKCiAgICAidGlueWdsb2JieSI6IFsidGlueWdsb2JieUAwLjIuMTYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZmRpciI6ICJeNi41LjAiLCAicGljb21hdGNoIjogIl40LjAuNCIgfSB9LCAic2hhNTEyLXBuOTlWaG9BQ1lSOG5GSGh4cWl4K3V2c2JYaW5lQWFzV201b2pYb044eEV3SzVLZDMvVHJoTm4xd0J5dUQ1MlV4V1JMeThwdStrUk1uaUVpNkVxOVpnPT0iXSwKCiAgICAidGlueXJhaW5ib3ciOiBbInRpbnlyYWluYm93QDMuMS4wIiwgIiIsIHt9LCAic2hhNTEyLUJmK0lMbUJncmV0VXJkSnh6WE0wU2dYTFozWGZpYVV1T2ovSUtRSHVUWGlwKzA1WG4rdXlFWWRWZzBrWURpcFRCY0xyQ1Z5VXpBUHo3UW1BcmIwbW13PT0iXSwKCiAgICAidHJlZS1raWxsIjogWyJ0cmVlLWtpbGxAMS4yLjIiLCAiIiwgeyAiYmluIjogeyAidHJlZS1raWxsIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLUwwT3JwaThxR3BSRy8vTmQrSDkwdkZCKzNpSG51ZTF6U1NHbU5PT0NoMUdMSjdyVUtWd1YySHZpanBoR1FTMlVtaFVaZXdTOVZndnhZSWRncitmRzFBPT0iXSwKCiAgICAidHNsaWIiOiBbInRzbGliQDIuOC4xIiwgIiIsIHt9LCAic2hhNTEyLW9KRnU5NEhRYitLVmR1U1VRTDd3bnBtcW5mbUxzT0EvbkFoNmI2RUgwd0NFb0swL21QZVhVNmMzd0tEVjgzTWtPdUhQUkh0U1hLS1U5OUlCYXpTLzJ3PT0iXSwKCiAgICAidHlwZXNjcmlwdCI6IFsidHlwZXNjcmlwdEA1LjkuMyIsICIiLCB7ICJiaW4iOiB7ICJ0c2MiOiAiYmluL3RzYyIsICJ0c3NlcnZlciI6ICJiaW4vdHNzZXJ2ZXIiIH0gfSwgInNoYTUxMi1qbDF2WnpQRGluTHI5ZVV0M0ovdDdWNkZnTkV3OVFqdkJQZHlzejlLZlFERDQxZlFyQzJZNHZLUWRpYVVwRlQ0YlhsYjFSSGhMcHA4d3RtNk01VGdTdz09Il0sCgogICAgInVuZGljaS10eXBlcyI6IFsidW5kaWNpLXR5cGVzQDYuMjEuMCIsICIiLCB7fSwgInNoYTUxMi1pd0RacWcwUUFHcmc5UmF2NUg0bjBNNjRjM21rUjU5Y0o2d1FwKzdDNG5JMGdzbUV4YWVkYVlMTk80NGVUNEF0QkJ3amJUaUdQTWx0Mk1kMFQ5SDlKUT09Il0sCgogICAgInVzZS1zeW5jLWV4dGVybmFsLXN0b3JlIjogWyJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZUAxLjYuMCIsICIiLCB7ICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiXjE2LjguMCB8fCBeMTcuMC4wIHx8IF4xOC4wLjAgfHwgXjE5LjAuMCIgfSB9LCAic2hhNTEyLVBwNkdTd0dQL05yUElyeFZGQUlrT1FleXc4bEZlbk9IaWpRV2tVVHJEdnJGNEFMcXlsUDJDL0tDa2VTOWRwVU0zS3ZZUlFobmE1dnQ3SUw5NStaUTl3PT0iXSwKCiAgICAidml0ZSI6IFsidml0ZUA4LjAuMTQiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAibGlnaHRuaW5nY3NzIjogIl4xLjMyLjAiLCAicGljb21hdGNoIjogIl40LjAuNCIsICJwb3N0Y3NzIjogIl44LjUuMTUiLCAicm9sbGRvd24iOiAiMS4wLjIiLCAidGlueWdsb2JieSI6ICJeMC4yLjE2IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJmc2V2ZW50cyI6ICJ+Mi4zLjMiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL25vZGUiOiAiXjIwLjE5LjAgfHwgPj0yMi4xMi4wIiwgIkB2aXRlanMvZGV2dG9vbHMiOiAiXjAuMS4xOCIsICJlc2J1aWxkIjogIl4wLjI3LjAgfHwgXjAuMjguMCIsICJqaXRpIjogIj49MS4yMS4wIiwgImxlc3MiOiAiXjQuMC4wIiwgInNhc3MiOiAiXjEuNzAuMCIsICJzYXNzLWVtYmVkZGVkIjogIl4xLjcwLjAiLCAic3R5bHVzIjogIj49MC41NC44IiwgInN1Z2Fyc3MiOiAiXjUuMC4wIiwgInRlcnNlciI6ICJeNS4xNi4wIiwgInRzeCI6ICJeNC44LjEiLCAieWFtbCI6ICJeMi40LjIiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAdHlwZXMvbm9kZSIsICJAdml0ZWpzL2RldnRvb2xzIiwgImVzYnVpbGQiLCAiaml0aSIsICJsZXNzIiwgInNhc3MiLCAic2Fzcy1lbWJlZGRlZCIsICJzdHlsdXMiLCAic3VnYXJzcyIsICJ0ZXJzZXIiLCAidHN4IiwgInlhbWwiXSwgImJpbiI6IHsgInZpdGUiOiAiYmluL3ZpdGUuanMiIH0gfSwgInNoYTUxMi1zNEJKSis1eTFwWUw2T3R3NTFGSGhWSlFoUG51UmluS2lnNjRnLzErRVVOYUpzZDNnQ0tkRDMxSVBGdnN3VWdXOS82MFFUOW9GSGJaSGJRSzVpbWN4dz09Il0sCgogICAgInZpdGVzdCI6IFsidml0ZXN0QDQuMS43IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvZXhwZWN0IjogIjQuMS43IiwgIkB2aXRlc3QvbW9ja2VyIjogIjQuMS43IiwgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNyIsICJAdml0ZXN0L3J1bm5lciI6ICI0LjEuNyIsICJAdml0ZXN0L3NuYXBzaG90IjogIjQuMS43IiwgIkB2aXRlc3Qvc3B5IjogIjQuMS43IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjciLCAiZXMtbW9kdWxlLWxleGVyIjogIl4yLjAuMCIsICJleHBlY3QtdHlwZSI6ICJeMS4zLjAiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiwgIm9idWciOiAiXjIuMS4xIiwgInBhdGhlIjogIl4yLjAuMyIsICJwaWNvbWF0Y2giOiAiXjQuMC4zIiwgInN0ZC1lbnYiOiAiXjQuMC4wLXJjLjEiLCAidGlueWJlbmNoIjogIl4yLjkuMCIsICJ0aW55ZXhlYyI6ICJeMS4wLjIiLCAidGlueWdsb2JieSI6ICJeMC4yLjE1IiwgInRpbnlyYWluYm93IjogIl4zLjEuMCIsICJ2aXRlIjogIl42LjAuMCB8fCBeNy4wLjAgfHwgXjguMC4wIiwgIndoeS1pcy1ub2RlLXJ1bm5pbmciOiAiXjIuMy4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBlZGdlLXJ1bnRpbWUvdm0iOiAiKiIsICJAb3BlbnRlbGVtZXRyeS9hcGkiOiAiXjEuOS4wIiwgIkB0eXBlcy9ub2RlIjogIl4yMC4wLjAgfHwgXjIyLjAuMCB8fCA+PTI0LjAuMCIsICJAdml0ZXN0L2Jyb3dzZXItcGxheXdyaWdodCI6ICI0LjEuNyIsICJAdml0ZXN0L2Jyb3dzZXItcHJldmlldyI6ICI0LjEuNyIsICJAdml0ZXN0L2Jyb3dzZXItd2ViZHJpdmVyaW8iOiAiNC4xLjciLCAiQHZpdGVzdC9jb3ZlcmFnZS1pc3RhbmJ1bCI6ICI0LjEuNyIsICJAdml0ZXN0L2NvdmVyYWdlLXY4IjogIjQuMS43IiwgIkB2aXRlc3QvdWkiOiAiNC4xLjciLCAiaGFwcHktZG9tIjogIioiLCAianNkb20iOiAiKiIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBlZGdlLXJ1bnRpbWUvdm0iLCAiQG9wZW50ZWxlbWV0cnkvYXBpIiwgIkB0eXBlcy9ub2RlIiwgIkB2aXRlc3QvYnJvd3Nlci1wbGF5d3JpZ2h0IiwgIkB2aXRlc3QvYnJvd3Nlci1wcmV2aWV3IiwgIkB2aXRlc3QvYnJvd3Nlci13ZWJkcml2ZXJpbyIsICJAdml0ZXN0L2NvdmVyYWdlLWlzdGFuYnVsIiwgIkB2aXRlc3QvY292ZXJhZ2UtdjgiLCAiQHZpdGVzdC91aSIsICJoYXBweS1kb20iLCAianNkb20iXSwgImJpbiI6IHsgInZpdGVzdCI6ICJ2aXRlc3QubWpzIiB9IH0sICJzaGE1MTItZmxZeWFGZDJDZ29Db1UrMFVLdDNweGtzZ0MrUzAyaVRETjBuM0x0cWFNZVhzSTlTQmNkTnVqYzJrMERlRkx6VW4vMGs1Mzh5TmpPU2R3Z0NxY3J3SkE9PSJdLAoKICAgICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogWyJ3aHktaXMtbm9kZS1ydW5uaW5nQDIuMy4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInNpZ2luZm8iOiAiXjIuMC4wIiwgInN0YWNrYmFjayI6ICIwLjAuMiIgfSwgImJpbiI6IHsgIndoeS1pcy1ub2RlLXJ1bm5pbmciOiAiY2xpLmpzIiB9IH0sICJzaGE1MTItaFVybWFXQmRWRGN4dllxbnloMDl6dW5LelJPV2piWlRpTnk4ZEJFamtTN2VoRURRaWJYSjdYdmxtdGJ3dVRjbFVpSXlOK0N5WFFENFZta284Zk5tOHc9PSJdLAoKICAgICJ3cmFwLWFuc2kiOiBbIndyYXAtYW5zaUA3LjAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJhbnNpLXN0eWxlcyI6ICJeNC4wLjAiLCAic3RyaW5nLXdpZHRoIjogIl40LjEuMCIsICJzdHJpcC1hbnNpIjogIl42LjAuMCIgfSB9LCAic2hhNTEyLVlWR0lqMmthbUxTVHh3Nk5zWmpvQnhmU3dzbjB5Y2Rlc21jNHArUTIxYzV6UHVaMXBsK05meFZkeFB0ZEh2bU5WT1E2WFNZRzRBVXR5dC9GaTdEMTZRPT0iXSwKCiAgICAieHNzIjogWyJ4c3NAMS4wLjE1IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImNvbW1hbmRlciI6ICJeMi4yMC4zIiwgImNzc2ZpbHRlciI6ICIwLjAuMTAiIH0sICJiaW4iOiB7ICJ4c3MiOiAiYmluL3hzcyIgfSB9LCAic2hhNTEyLUZWZGxWVkM2N1dPSVB2Zk93aG9NRVRWNzJmNkdiVzdhT2FiQkMzV3hOL29VZG9FTUR5THo0T2dSdjUvZ2NrMlplTnFFUXUrVGIwa2xvb3ZYT2ZwWVZnPT0iXSwKCiAgICAieTE4biI6IFsieTE4bkA1LjAuOCIsICIiLCB7fSwgInNoYTUxMi0wcGZGemVnZURXSkhKSUFtVExSUDJEd0hqZEY1czdqbzl0dXp0ZFF4QWhJTkNkdlMrM25HSU5xUGQwMEFwaHFKUi8wTGhBTlVTNi8rN1NDYjk4WU9mQT09Il0sCgogICAgInlhbWwiOiBbInlhbWxAMi45LjAiLCAiIiwgeyAiYmluIjogeyAieWFtbCI6ICJiaW4ubWpzIiB9IH0sICJzaGE1MTItMkF2aE5YM21iOHpkNlp5N0lOVHRTcGwxRjE1SFc2V25xajBzcldsa0tMY3BZbC9nTUlNSml5dUdxMktlSTJZRnhVUGpkbEIrM0xjMTBzZU1MdEw0Y0E9PSJdLAoKICAgICJ5YXJncyI6IFsieWFyZ3NAMTcuNy4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImNsaXVpIjogIl44LjAuMSIsICJlc2NhbGFkZSI6ICJeMy4xLjEiLCAiZ2V0LWNhbGxlci1maWxlIjogIl4yLjAuNSIsICJyZXF1aXJlLWRpcmVjdG9yeSI6ICJeMi4xLjEiLCAic3RyaW5nLXdpZHRoIjogIl40LjIuMyIsICJ5MThuIjogIl41LjAuNSIsICJ5YXJncy1wYXJzZXIiOiAiXjIxLjEuMSIgfSB9LCAic2hhNTEyLTdkU3p6UlErK0NLbk5JL2tyS25ZUlY3SktLUFVYTUVoNjFzb2FIS2c5bXJXRWh6RldoRm54UHhHbCs2OWNEMU91NjNDMTNOVVBDbm1JY3J2cUN1TTZ3PT0iXSwKCiAgICAieWFyZ3MtcGFyc2VyIjogWyJ5YXJncy1wYXJzZXJAMjEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXRWcHNKVzdEZGplY0FpRnBiSUIxZTNxeElRc0U2Tm9QYzUvZVRkcmJiSUM0aDBMVnNXaG5vYTNnK20ySGNsQkl1akh6c3haNFZKVkErR1V1YzIvTEJ3PT0iXSwKCiAgICAiem9kIjogWyJ6b2RANC40LjMiLCAiIiwge30sICJzaGE1MTIteXRFTkZqSUpGbDJVd1lnbGRlMmpjaFcySHdtNEdKRkxEaVNYV2RUckpRQklOOUZjeXA3bjREaHhKRWlXTkFKTVYxL0JxV2ZXL2trZzcxVURjSEp5VFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvQGVtbmFwaS9jb3JlIjogWyJAZW1uYXBpL2NvcmVAMS4xMC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvd2FzaS10aHJlYWRzIjogIjEuMi4xIiwgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvQGVtbmFwaS9ydW50aW1lIjogWyJAZW1uYXBpL3J1bnRpbWVAMS4xMC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvQGVtbmFwaS93YXNpLXRocmVhZHMiOiBbIkBlbW5hcGkvd2FzaS10aHJlYWRzQDEuMi4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvQG5hcGktcnMvd2FzbS1ydW50aW1lIjogWyJAbmFwaS1ycy93YXNtLXJ1bnRpbWVAMS4xLjQiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5YnlzL3dhc20tdXRpbCI6ICJeMC4xMC4xIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICJeMS43LjEiLCAiQGVtbmFwaS9ydW50aW1lIjogIl4xLjcuMSIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvQHR5YnlzL3dhc20tdXRpbCI6IFsiQHR5YnlzL3dhc20tdXRpbEAwLjEwLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9LCAiYnVuZGxlZCI6IHRydWUgfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaS90c2xpYiI6IFsidHNsaWJAMi44LjEiLCAiIiwgeyAiYnVuZGxlZCI6IHRydWUgfSwgInNoYTUxMi1vSkZ1OTRIUWIrS1ZkdVNVUUw3d25wbXFuZm1Mc09BL25BaDZiNkVIMHdDRW9LMC9tUGVYVTZjM3dLRFY4M01rT3VIUFJIdFNYS0tVOTlJQmF6Uy8ydz09Il0sCgogICAgImNoYWxrL3N1cHBvcnRzLWNvbG9yIjogWyJzdXBwb3J0cy1jb2xvckA3LjIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJoYXMtZmxhZyI6ICJeNC4wLjAiIH0gfSwgInNoYTUxMi1xcENBdlJsOXN0dU9IdmVLc243SG5jSlJ2djUwMXFJYWNLelFsTy8rTHd4YzkrMHEyd0x5djREZnZ0ODAvRFBuMnBxT0JzSmREaW9nWEdSOStPdndSdz09Il0sCgogICAgIm5leHQvcG9zdGNzcyI6IFsicG9zdGNzc0A4LjQuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAibmFub2lkIjogIl4zLjMuNiIsICJwaWNvY29sb3JzIjogIl4xLjAuMCIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjAuMiIgfSB9LCAic2hhNTEyLVBTMDhJYm9pYTltdHMvMnlnVjNlTHBZNWdoblVjZkxWL0VYVE9XMUUycVl4SktHR0JVdE5qTjc2RllIbk1zMzZSbUFSbjQxYkMwQVptbityUjBPVnBRPT0iXSwKICB9Cn0K" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "bakery",\n "name": "Bakery",\n "tagline": "Warm, food-forward storefront with custom-order forms and same-day delivery checkout.",\n "industry": "food",\n "tags": ["food", "bakery", "pastry"],\n "stability": "stable",\n "schemaType": "Bakery",\n "mock": {\n "seedName": "default",\n "seedBusinessId": "bus_default_akua_bakery"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-semibold uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="font-serif text-[clamp(2.25rem,5vw,3.5rem)] font-semibold mb-6 -tracking-[0.02em]">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="font-serif text-3xl font-semibold mt-10 mb-3">{s.heading}</h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full menu with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/shop?product=${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
3234
|
+
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": "middleware.ts", "kind": "text", "content": `import { NextResponse, type NextRequest } from "next/server";
|
|
3235
|
+
import { handleTokenRefresh, type OidcConfig } from "@cimplify/sdk/server";
|
|
3236
|
+
|
|
3237
|
+
function oidcConfig(): OidcConfig | null {
|
|
3238
|
+
const clientId =
|
|
3239
|
+
process.env.CIMPLIFY_CLIENT_ID?.trim() ||
|
|
3240
|
+
process.env.NEXT_PUBLIC_CIMPLIFY_CLIENT_ID?.trim() ||
|
|
3241
|
+
"";
|
|
3242
|
+
if (!clientId) return null;
|
|
3243
|
+
return {
|
|
3244
|
+
clientId,
|
|
3245
|
+
issuer: process.env.CIMPLIFY_ISSUER?.trim() || undefined,
|
|
3246
|
+
authUrl: process.env.CIMPLIFY_AUTH_URL?.trim() || undefined,
|
|
3247
|
+
};
|
|
3248
|
+
}
|
|
3249
|
+
|
|
3250
|
+
// Keeps the access token fresh before account pages render. Server Components
|
|
3251
|
+
// can't write cookies, so this is the one place the rotated token can be both
|
|
3252
|
+
// persisted (browser) and forwarded onto the current request (this render).
|
|
3253
|
+
export async function middleware(request: NextRequest) {
|
|
3254
|
+
const cfg = oidcConfig();
|
|
3255
|
+
if (!cfg) return NextResponse.next();
|
|
3256
|
+
|
|
3257
|
+
const { outcome, setCookies, cookies } = await handleTokenRefresh(request, cfg);
|
|
3258
|
+
if (outcome === "noop") return NextResponse.next();
|
|
3259
|
+
|
|
3260
|
+
for (const { name, value } of cookies) {
|
|
3261
|
+
request.cookies.set(name, value);
|
|
3262
|
+
}
|
|
3263
|
+
const response = NextResponse.next({ request });
|
|
3264
|
+
for (const cookie of setCookies) {
|
|
3265
|
+
response.headers.append("set-cookie", cookie);
|
|
3266
|
+
}
|
|
3267
|
+
return response;
|
|
3268
|
+
}
|
|
3269
|
+
|
|
3270
|
+
export const config = {
|
|
3271
|
+
matcher: ["/account/:path*"],
|
|
3272
|
+
};
|
|
3273
|
+
` }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed default --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed default",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.67.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS41LjAiLCAiIiwge30sICJzaGE1MTItbHdZTi92RFBlTlJVTGNlcG9FL0xPMlBneCs3L1JWK1M5QVJmYmM5bHIyRHRHa09EN3BBaXJ1SHZiUjFSWDNReWY2amE0N0VXSkRNc05LNXZLMDhESmc9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzIuMCIsICIiLCB7fSwgInNoYTUxMi1GRVNNT3hpbDVTZTAxNHVpL0VxOGZUNXVISm82bklSd0gwUGZKclpKWHM2R2VrM1pWRk9ycFV2M1lJWlQyMG0rZXh0VTk4SGcxWW03MlU1OHJsc3hVUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjIiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWlM0RDFKUEduL01ZUU4vU1lEV2Z0SUUvblZzTThqL0FGT1lFekFvT0UyTzNOa3RRT1pydSsvdllYR2JSL3F0ZExkSWZHQ1AwbGNvSmlZVnpzRXoraVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLXZkRkE5K0MvcmVreUdjZTdXcUhzL3hvVDBpb1pFV2FPRnlaTElWMW1FZU5GYUZEVVFyUElvOFZzMkd2SjZlZXRiM3J6RFV0VUJnenRvM0V4cFhKQjN3PT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1CZXdTT3dUSGF6djc3RFRZaUFaWFNxcUtaNEtQL0tvbkZpc0RNVlU3UElteG9XZkIyYWVwblBoZDJFNFNXejN6RHpZZ0ROYnM2akJtVGRnTm5GMDJHQT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMiIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbTQxbzdNMFlXdFVkcWs2MVRiK2puS2Iyck4rK2lSZElBU2xFeGtVb0tmSUFIMzBET0hDQjhmVkx6U1VwYldISFU4ZXNtRWlvWTYyUHh6ZXhFOE1CdUE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4yIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItamNvakI5SDdXL2pTMjlwTUtXQUsxTitmVTk5dlhvZEhEVGF0UzNiM3kvWFNPQ2lIbzBra0E3NHBMM2pKbWtvUXRZcE9DeER2YUtzMWZvMklqLzFYNXc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItMWpuNnFEVTVpaU9nRmd5Z0R6S1V1S1AwbWFUaTAvZjErc0JMZ3Zpai83NkM3N05tM3RzNnVmejlCamc1cTVkZHV4aVVJeHRxODZKSW9Cdm8xeFE0SWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4yIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1RVkxPL2N6Rk1kb01GU3FsWDNiY3N3Y0pObS8yM3IrcW9hL2pndG1GYy9xRXA2L2pYbUlrRGpGL1hJbzhkUGZHYWl3eTF4ZlFuOG83N0w3OUdlWEZndz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4yIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1oZ081QWJtMHc1VUw2RkVhMmlGblpxbzJLbEs3VFE1UWhWNXgwOWh1akJmN3Q1S3pIUTFWbWZQdVRwcVJ5L3JObFN4dWEzZVdIMzc0eHhpVnJQK2xjQT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4yIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1meThyWHh1WUV1NjAyYWJDOE1VTmFQallMSUZ6UmVPYUVJRU1LTVVhMHJGRVV4TnBWWGhzMTVLU1NRNHFscVNhTTdCNnJjajlyRFpnQURoL0lHRHpMUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjIiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0wK2JPa2lRNzc5K3IxV3BvSE9XSHFuY3Z5eVNjaTB2S3BoK215TkRZYitpbTZtZUpBekhRWGF5Nm9FZ25rSHVVR291TTFMS1Rad3FLcEJvdzZLajdDUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLW1qU2tyelpLNVFzbDBhOWQxSmdJTE9pdVpPU0RUVmRLRU5jU1hCb3FielNyc3BMUi80L0lSVkRvNXdkMkdnWmpOc3MvdmlCRkpkZXErajdxSDJueXB3PT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4yIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTF2NXZIYXNkZlFBWm9FSGFrQlY3MkxJRkFDOUpqbnltc2lLeHArR0VyL21hMytOSkNQU2FZSytxYXZJbk9vdkprZ3dGcnM3R2NjWDJkNklnREEzWjV3PT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItbWIxVm9iV242TmhlemlUazUvV0VhUjZBS1ZicndUNXNPaTZDN3prM2d5L3BEMXF0SmZVMWo0UGdUbzJOSm5PdGJMOURsM0FlZWk4dzlqSjdxQzJqWlE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4yIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1TcUtvbkY1NnZBL0wyeUh3SFljRXAyUDM0VVJwT1o3ZDFmUzYzNWNUa3BEblV0RUdkVWJoSTZOenNQZHFlU1d2QUFlR0RyeGpXak5taWJESWRGZjkvQT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXY3cVJJN2dYTFJJTmNPR1h0KzdZbUFaNmlGdXlaVk1Jb1hBeGhkOG9QK0RSOWRMZkw5R2ZOSXg3UExNeG1oWmR2cTh3YVVKQlFpV045RUtOeStUUkJRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS43IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS43IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjciLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItMVIrdHcwb3J0SEViWkRHTXltbStwTjcvQUZRL1JrRkZkdGQ3RU4rVkJweW5LbUxiUDhBM3JwRVhkc2hCSjcrOGhROXpCSmgvaTFzMHlLTnR4QW5VN3c9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjciLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjciLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi12WTdudWFtS2dmdnBBMUtvYTNvWUl3L2s3RDZrWm5wR3lOTVpXOGxvb3cyYnNCWWxhMVRGZHFUYVhuY1dkUm40cGd3TnMrOTBSaG5YaEpTY0R3UWVKQT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS43IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLXVtZ0NhclRPWVFXSWFETXZHRFJaaWorNmI5b1ZlTEl5SnpmTitBUzg4ZTBaT1UzUVRnTk5TVHRqUU9wY3ZXcjNucDFOMGo0V2daaitzYjNvWUJEc2N3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS43IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjciLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItQmFwam1BUTJhSTc4V2RNRWZlVVdpdm5mVnpCK1ZQR3dXUlFjSkUwT1VxN3FFZUVjQnNDU2YrMFQ1aVJFQk5FNW5CYjR3QTVZYTBXNklBK3NnaGRFRnc9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS43IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNyIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS43IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1aYWNMemphK1RtSmVaMWgxNHhXMkZCL1dwZWltVUQzaGFCWFFQeUpxeHZvOGpRVG1mZUE4enY1OG10ak4yQzdFSFhaRFlWY1ZZZFltQXhqa1dWdktDdz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNyIsICIiLCB7fSwgInNoYTUxMi1rYmtJNUxNV2FreXVUSXZzNmZVSjVxZElWYjFYVktzWUpBVDRPSjkzOGNITVJPWU1TZm1vUWRaeTBhYUFuamJiYzhGNjF2a29UcXovQXorL0hpSXU1UT09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjciLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS43IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItVDUzMldCdTc5MWNCeEpsQ2w2U08rSjE0bDgxRFF4NnVRSG0xYlFibUNEWTducWxFSWdremEvVUZuU0JOYVV0U2Y0MXVubGRERmpkT0JZRVFDNGI1SHc9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItYU5uR0N2YkovUkl5V28xSXVoTmRWam5ORitFakg5d3B6cE5IdCtjaS9tOUhlOUxKdlVOOHdyQ2NYanA5Y1dzR05BdXZTcFZGVHgvdnJhQUZROHFHalE9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjMiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLTV4b0RmWCtmTDdmYUFUbmFnbVdQcGJGdHdoL1I3N1dtTU1xcUhHUzY1QzN2dkIwWUhyZ0YrQjFZbVozNDQxdE1qNW42M2swMjEyWE5vSnd6bGhmZlF3PT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwb3N0Y3NzIjogWyJwb3N0Y3NzQDguNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy4xMiIsICJwaWNvY29sb3JzIjogIl4xLjEuMSIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjIuMSIgfSB9LCAic2hhNTEyLUZmUjhzamQ0ZW0yVDZmYjNJMk13QUpVN0hXVk1yOXpiYStlbm1RZWVXRmZDYm0rVU9DLzBYNERTOFh0cFVUTXdXTUdiaktZUDd4amZOZWt6eUdtQjNBPT0iXSwKCiAgICAicmVhY3QiOiBbInJlYWN0QDE5LjIuNiIsICIiLCB7fSwgInNoYTUxMi1zZldHR2ZhdmkweHI4UGcwc1ZzeUhNQU96aVZZS2dQTE5yUzdpZytpdk1OYjN3YkNCdzNLeHRmbHNHQkF3RDNnWVFsRS9BRVpzVExnVG9SclNDamIwUT09Il0sCgogICAgInJlYWN0LWRheS1waWNrZXIiOiBbInJlYWN0LWRheS1waWNrZXJAOS4xNC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS40LjEiLCAiQHRhYmJ5X2FpL2hpanJpLWNvbnZlcnRlciI6ICIxLjAuNSIsICJkYXRlLWZucyI6ICJeNC4xLjAiLCAiZGF0ZS1mbnMtamFsYWxpIjogIjQuMS4wLTAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0xNi44LjAiIH0gfSwgInNoYTUxMi10QmFvRFdqUHdlME01cEdydW00SDBTUjZMeWsrQk85b0hucDlKYktwR0tXMm1scmFOUGdQOUJNZnNnNXBXcHdyc3NBUm1lcWs3WUJsMm9YdXRaVGFIQT09Il0sCgogICAgInJlYWN0LWRvbSI6IFsicmVhY3QtZG9tQDE5LjIuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzY2hlZHVsZXIiOiAiXjAuMjcuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTkuMi42IiB9IH0sICJzaGE1MTItMHByTUkraHZCYlBqc1dueERMeGxDR3lNOFBONlV1V2pFVUNZbVpoTzY3eElWOVhhc2Evci92RG5xK1h5cTRMbzI3ZzhRU2JPNVl6QVJ1MEQxU3BzM2c9PSJdLAoKICAgICJyZXF1aXJlLWRpcmVjdG9yeSI6IFsicmVxdWlyZS1kaXJlY3RvcnlAMi4xLjEiLCAiIiwge30sICJzaGE1MTItZkd4RUk3K3dzRzl4cnZkanNybG1MMjJPTVRUaUhSd0FNcm9pRWVNZ3E4Z3pvTEMvUFFyN1JzUkRTVExVZy9iWkFadEYrVFZJa0hjNi80UklLcnVpK1E9PSJdLAoKICAgICJyZXNlbGVjdCI6IFsicmVzZWxlY3RANS4yLjAiLCAiIiwge30sICJzaGE1MTItQWdaM1VPWm0zWW5kZnJKNE9ZamdyVDdibUNtLzFpcWtqdkVmSC9vWWp6aDZQRDJxdzRRdVQzampuWElycGR0NE1UcE1YY2xNVDNsWGJtUlkrWFJha3c9PSJdLAoKICAgICJyb2xsZG93biI6IFsicm9sbGRvd25AMS4wLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQG94Yy1wcm9qZWN0L3R5cGVzIjogIj0wLjEzMi4wIiwgIkByb2xsZG93bi9wbHVnaW51dGlscyI6ICJeMS4wLjAiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLWFybTY0IjogIjEuMC4yIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi14NjQiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctZnJlZWJzZC14NjQiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjAuMiIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtbXVzbCI6ICIxLjAuMiIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1wcGM2NC1nbnUiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251IjogIjEuMC4yIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgteDY0LW11c2wiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiAiMS4wLjIiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzItYXJtNjQtbXN2YyI6ICIxLjAuMiIsICJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2YyI6ICIxLjAuMiIgfSwgImJpbiI6IHsgInJvbGxkb3duIjogIi4vYmluL2NsaS5tanMiIH0gfSwgInNoYTUxMi1vWng1elZEdFZCNDRBVzNlYWlmZ0RtbDFnV1JEWkd2amNmZHhvbkU0c3dOUEc5OFByclhqYU8vS3JuVWp6bE1uenRDQ1JWbFV1ZUExa0NYaEFSR2s2Zz09Il0sCgogICAgInJ4anMiOiBbInJ4anNANy44LjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuMS4wIiB9IH0sICJzaGE1MTItZGhLZjkwM1UvUFFaWTZib05OdEFHZFdiRzg1V0FialQvMXhZb1pJQzdGQVkweVdhcE9CUVZzVnJEbDU4Vzg2Ly9lMVZwTU5CdFJWNE1hWGZkTXlTRkE9PSJdLAoKICAgICJzY2hlZHVsZXIiOiBbInNjaGVkdWxlckAwLjI3LjAiLCAiIiwge30sICJzaGE1MTItZU52K1dyVmJLdTFmM3ZiWUpUL3h0aUY1c3lBNUhQSU10ZjlJZ1kvbktnMHNXcXpBVUV2cVkveG03T2NaYy9xYWZMeC9pTzlGZ09tZVNBcDR2NXRpL1E9PSJdLAoKICAgICJzZW12ZXIiOiBbInNlbXZlckA3LjguMCIsICIiLCB7ICJiaW4iOiB7ICJzZW12ZXIiOiAiYmluL3NlbXZlci5qcyIgfSB9LCAic2hhNTEyLUFjTTdkVi81dWw0RWVrb1EyOUFnbTV2cmk4Sk5xUnlqMzlvMHFwWDZ2REYyR1pydHV0Wmw1UndnRDFYblpqaVRBZm5jc0poTUk0OFFRSDNzTjg3WU5BPT0iXSwKCiAgICAic2hhcnAiOiBbInNoYXJwQDAuMzQuNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAaW1nL2NvbG91ciI6ICJeMS4wLjAiLCAiZGV0ZWN0LWxpYmMiOiAiXjIuMS4yIiwgInNlbXZlciI6ICJeNy43LjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWRhcndpbi14NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtYXJtNjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgteDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saW51eC1hcm0iOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtYXJtNjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtcmlzY3Y2NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eC1zMzkweCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eC14NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtd2FzbTMyIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLWlhMzIiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogIjAuMzQuNSIgfSB9LCAic2hhNTEyLU91OUk1RnQ5V05jQ2JYclU5Y01nUEJjQ0s4TGl3THFjYnl3VzN0NG9EVjM3bjFwenB1TkxzWWlBVjhlT0RuamJ0UWxTRHdaMmNVRWVRejRFNTRIbHRnPT0iXSwKCiAgICAic2hlbGwtcXVvdGUiOiBbInNoZWxsLXF1b3RlQDEuOC4zIiwgIiIsIHt9LCAic2hhNTEyLU9ibW5JRjRoWE5nMUJxaG5IbWdiREVURjhkTFBDZ2daV0Jqa1FmaFpwYnN6Wm5ZdXI1RFVsalRjQ0hpaTVMQzNKNUUweWVPLzFMSU15SCtVdkhRZ3l3PT0iXSwKCiAgICAic2lnaW5mbyI6IFsic2lnaW5mb0AyLjAuMCIsICIiLCB7fSwgInNoYTUxMi15YngwV08xLzhiU0JMRVdYWnZFZDdnTVczU24zSkZsVzNUdlgxblJFYkRMUk5RTmFlTk44V0swbWVCd1BkQWFPSTdUdFJSUkpuL0VzMXpocnJDSHU3Zz09Il0sCgogICAgInNvdXJjZS1tYXAiOiBbInNvdXJjZS1tYXBAMC42LjEiLCAiIiwge30sICJzaGE1MTItVWpnYXB1bVdsYk1oa0JnelQ3WWtjNVlYVVQ0NkYwaUt1OFNHWHEwYmN3UDVkei9oMFBsajZlbkpxanoxWmJxMmw1V2FxWW5yVmJ3V09XTXlGM0Y0N2c9PSJdLAoKICAgICJzb3VyY2UtbWFwLWpzIjogWyJzb3VyY2UtbWFwLWpzQDEuMi4xIiwgIiIsIHt9LCAic2hhNTEyLVVYV01LaExPd1ZLYjcyOElVdFFQWHhmWVUrdXNkeWJ0VXJLLzh1R0U4Q1FNdnJoT3B3dnpEQndqMFFoU0w3TVFjN3ZJc0lTQkc4VlE4K0lEUXhwZlFBPT0iXSwKCiAgICAic291cmNlLW1hcC1zdXBwb3J0IjogWyJzb3VyY2UtbWFwLXN1cHBvcnRAMC41LjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImJ1ZmZlci1mcm9tIjogIl4xLjAuMCIsICJzb3VyY2UtbWFwIjogIl4wLjYuMCIgfSB9LCAic2hhNTEyLXVCSFUzTDNjenNJeVlYS1g4OGZkckdvdnhkU0NvVEdEUlo2U1lYdFNSeExaVXpIZzVQLzY2SHQ2dW9VbEh1OUVab2QraW5YaEtvM3FRZ3dYVVQveTF3PT0iXSwKCiAgICAic3RhY2tiYWNrIjogWyJzdGFja2JhY2tAMC4wLjIiLCAiIiwge30sICJzaGE1MTItMVhNSkU1ZlFvMWpHSDZZLzdlYm53UE9CRWtJRW5UNFFGMzJkNVIxK1ZYZFh2ZU0wSUJNSnQ4emZheFgxUDNRaFZ3clllKzU3Nitqa0FOdFNTMm1CYnc9PSJdLAoKICAgICJzdGQtZW52IjogWyJzdGQtZW52QDQuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVJxN3liY1gyUnVDNTVyOW9hUFZFVzcveHUzdGo4dTRHZUJZSEJXQ3ljaEZ0ek1Jcjg2QTdlM1BQRUJQVDM3c0hTdEtYMytUaVgvRnIvQUNtSkxWbExRPT0iXSwKCiAgICAic3RyaW5nLXdpZHRoIjogWyJzdHJpbmctd2lkdGhANC4yLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZW1vamktcmVnZXgiOiAiXjguMC4wIiwgImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50IjogIl4zLjAuMCIsICJzdHJpcC1hbnNpIjogIl42LjAuMSIgfSB9LCAic2hhNTEyLXdLeVFSUXBqSjBzSXA2MkVyU1pkR3NqTUpXc2FwNW9STmloSGh1Nkc3SlZPLzlqSUI2VXlldkwrdFh1T3Fybmc4ai9jeEtUV3lXVXd2U1RyaWlaei9nPT0iXSwKCiAgICAic3RyaXAtYW5zaSI6IFsic3RyaXAtYW5zaUA2LjAuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJhbnNpLXJlZ2V4IjogIl41LjAuMSIgfSB9LCAic2hhNTEyLVkzOFZQU0hjcWtGckNwRm5ROXZ1U1htcXV1djVvWE9LcEdlVDZhR3JyM28zR2M5QWxWYTZKQmZVU09DbmJ4R0daRisvMG9vSTdLclB1VVN6dFVkVTVBPT0iXSwKCiAgICAic3R5bGVkLWpzeCI6IFsic3R5bGVkLWpzeEA1LjEuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjbGllbnQtb25seSI6ICIwLjAuMSIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICI+PSAxNi44LjAgfHwgMTcueC54IHx8IF4xOC4wLjAtMCB8fCBeMTkuMC4wLTAiIH0gfSwgInNoYTUxMi1xU1Z5RFRlTW90ZHZRWW9IV0xOR3dSRkpIQytpK1p2ZEJSWW9zT0ZnQytXZzF2eDRmck4yL1JHL05BN1NZcXF2S05MZjM5UDJMU1JBMnB1Nm4wWFlaQT09Il0sCgogICAgInN1cHBvcnRzLWNvbG9yIjogWyJzdXBwb3J0cy1jb2xvckA4LjEuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJoYXMtZmxhZyI6ICJeNC4wLjAiIH0gfSwgInNoYTUxMi1NcFVFTjJPb2R0VXp4dktRbDcyY1VGN1JRNUVpSHNHdlNzVkcwaWE5YzVSYldHTDJDSTRDN0VwUFM4VVRCSXBsbmx6WmlOdVY1NncrRnVOeHkzdHkyUT09Il0sCgogICAgInRhaWx3aW5kLW1lcmdlIjogWyJ0YWlsd2luZC1tZXJnZUAzLjYuMCIsICIiLCB7fSwgInNoYTUxMi11eEw3cUFWUXJpcVJRUEF5SzNwajY2VnFza1dxb1ozN1BXOTRqd09Ud05mcS96OW95dTFWK2VxclpxdFIyK2ZDaVhkWU9aZS9Nb2R0OEd0dnFOenUrdz09Il0sCgogICAgInRhaWx3aW5kY3NzIjogWyJ0YWlsd2luZGNzc0A0LjMuMCIsICIiLCB7fSwgInNoYTUxMi15Nm54TUdCMW5NVzlSNms5NmU1Z2RJRnpjZkwvZ1RKUk5hcUdlczFZdmtMblBWWHpXZ2JxRkYyeUxDMFQ4Rzc3NG4yNGN4M1BlOFhyS29uaUNPQUgrUT09Il0sCgogICAgInRhcGFibGUiOiBbInRhcGFibGVAMi4zLjMiLCAiIiwge30sICJzaGE1MTItdXhjL3pwcUZnNng3Qzh2T0U3bGg2TGJkYThlRUw5em1WbS9QTGVUUEJSaGgxeENnZFdhUStKMUNVaWVHcElmbTJIZHRzVXBSditIc2hpYXNCTWNjNkE9PSJdLAoKICAgICJ0ZXJzZXIiOiBbInRlcnNlckA1LjE2LjkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlLW1hcCI6ICJeMC4zLjIiLCAiYWNvcm4iOiAiXjguNS4wIiwgImNvbW1hbmRlciI6ICJeMi4yMC4wIiwgInNvdXJjZS1tYXAtc3VwcG9ydCI6ICJ+MC41LjIwIiB9LCAiYmluIjogeyAidGVyc2VyIjogImJpbi90ZXJzZXIiIH0gfSwgInNoYTUxMi1IUGEvRmRUQjlYR0kySDEva2VMRlpIeGw2V052QUk0WWFsSEd0RFFUbE1uSmNvcVNhYjFVd0w0bDFoR0VoczYvR21MSEJaSWcvWWdCKytqY2J6b09FZz09Il0sCgogICAgInRpbnliZW5jaCI6IFsidGlueWJlbmNoQDIuOS4wIiwgIiIsIHt9LCAic2hhNTEyLTArRFV2cVdNVmFsTG1oYTZscjRrRDhpQU1LMUh6VjAvYUtuQ3RXYjl2OTY0MVRuUC9NRmI3UGMyYnhveFFqVFhBRXJyeVhWZ1VPZnYyWXFObGxxR2VnPT0iXSwKCiAgICAidGlueWV4ZWMiOiBbInRpbnlleGVjQDEuMS4yIiwgIiIsIHt9LCAic2hhNTEyLWRBcVNxRS9SYWJwQktJOCtoMjZHZkxxNlZiM0pWWHMzMFhZUWpkTWphai9jMnRTOElZWU1iSXpQNTk5S3RSajdjNTcvd1lBcGIzUWpnUmdYbXJDdWtBPT0iXSwKCiAgICAidGlueWdsb2JieSI6IFsidGlueWdsb2JieUAwLjIuMTYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZmRpciI6ICJeNi41LjAiLCAicGljb21hdGNoIjogIl40LjAuNCIgfSB9LCAic2hhNTEyLXBuOTlWaG9BQ1lSOG5GSGh4cWl4K3V2c2JYaW5lQWFzV201b2pYb044eEV3SzVLZDMvVHJoTm4xd0J5dUQ1MlV4V1JMeThwdStrUk1uaUVpNkVxOVpnPT0iXSwKCiAgICAidGlueXJhaW5ib3ciOiBbInRpbnlyYWluYm93QDMuMS4wIiwgIiIsIHt9LCAic2hhNTEyLUJmK0lMbUJncmV0VXJkSnh6WE0wU2dYTFozWGZpYVV1T2ovSUtRSHVUWGlwKzA1WG4rdXlFWWRWZzBrWURpcFRCY0xyQ1Z5VXpBUHo3UW1BcmIwbW13PT0iXSwKCiAgICAidHJlZS1raWxsIjogWyJ0cmVlLWtpbGxAMS4yLjIiLCAiIiwgeyAiYmluIjogeyAidHJlZS1raWxsIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLUwwT3JwaThxR3BSRy8vTmQrSDkwdkZCKzNpSG51ZTF6U1NHbU5PT0NoMUdMSjdyVUtWd1YySHZpanBoR1FTMlVtaFVaZXdTOVZndnhZSWRncitmRzFBPT0iXSwKCiAgICAidHNsaWIiOiBbInRzbGliQDIuOC4xIiwgIiIsIHt9LCAic2hhNTEyLW9KRnU5NEhRYitLVmR1U1VRTDd3bnBtcW5mbUxzT0EvbkFoNmI2RUgwd0NFb0swL21QZVhVNmMzd0tEVjgzTWtPdUhQUkh0U1hLS1U5OUlCYXpTLzJ3PT0iXSwKCiAgICAidHlwZXNjcmlwdCI6IFsidHlwZXNjcmlwdEA1LjkuMyIsICIiLCB7ICJiaW4iOiB7ICJ0c2MiOiAiYmluL3RzYyIsICJ0c3NlcnZlciI6ICJiaW4vdHNzZXJ2ZXIiIH0gfSwgInNoYTUxMi1qbDF2WnpQRGluTHI5ZVV0M0ovdDdWNkZnTkV3OVFqdkJQZHlzejlLZlFERDQxZlFyQzJZNHZLUWRpYVVwRlQ0YlhsYjFSSGhMcHA4d3RtNk01VGdTdz09Il0sCgogICAgInVuZGljaS10eXBlcyI6IFsidW5kaWNpLXR5cGVzQDYuMjEuMCIsICIiLCB7fSwgInNoYTUxMi1pd0RacWcwUUFHcmc5UmF2NUg0bjBNNjRjM21rUjU5Y0o2d1FwKzdDNG5JMGdzbUV4YWVkYVlMTk80NGVUNEF0QkJ3amJUaUdQTWx0Mk1kMFQ5SDlKUT09Il0sCgogICAgInVzZS1zeW5jLWV4dGVybmFsLXN0b3JlIjogWyJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZUAxLjYuMCIsICIiLCB7ICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiXjE2LjguMCB8fCBeMTcuMC4wIHx8IF4xOC4wLjAgfHwgXjE5LjAuMCIgfSB9LCAic2hhNTEyLVBwNkdTd0dQL05yUElyeFZGQUlrT1FleXc4bEZlbk9IaWpRV2tVVHJEdnJGNEFMcXlsUDJDL0tDa2VTOWRwVU0zS3ZZUlFobmE1dnQ3SUw5NStaUTl3PT0iXSwKCiAgICAidml0ZSI6IFsidml0ZUA4LjAuMTQiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAibGlnaHRuaW5nY3NzIjogIl4xLjMyLjAiLCAicGljb21hdGNoIjogIl40LjAuNCIsICJwb3N0Y3NzIjogIl44LjUuMTUiLCAicm9sbGRvd24iOiAiMS4wLjIiLCAidGlueWdsb2JieSI6ICJeMC4yLjE2IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJmc2V2ZW50cyI6ICJ+Mi4zLjMiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL25vZGUiOiAiXjIwLjE5LjAgfHwgPj0yMi4xMi4wIiwgIkB2aXRlanMvZGV2dG9vbHMiOiAiXjAuMS4xOCIsICJlc2J1aWxkIjogIl4wLjI3LjAgfHwgXjAuMjguMCIsICJqaXRpIjogIj49MS4yMS4wIiwgImxlc3MiOiAiXjQuMC4wIiwgInNhc3MiOiAiXjEuNzAuMCIsICJzYXNzLWVtYmVkZGVkIjogIl4xLjcwLjAiLCAic3R5bHVzIjogIj49MC41NC44IiwgInN1Z2Fyc3MiOiAiXjUuMC4wIiwgInRlcnNlciI6ICJeNS4xNi4wIiwgInRzeCI6ICJeNC44LjEiLCAieWFtbCI6ICJeMi40LjIiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAdHlwZXMvbm9kZSIsICJAdml0ZWpzL2RldnRvb2xzIiwgImVzYnVpbGQiLCAiaml0aSIsICJsZXNzIiwgInNhc3MiLCAic2Fzcy1lbWJlZGRlZCIsICJzdHlsdXMiLCAic3VnYXJzcyIsICJ0ZXJzZXIiLCAidHN4IiwgInlhbWwiXSwgImJpbiI6IHsgInZpdGUiOiAiYmluL3ZpdGUuanMiIH0gfSwgInNoYTUxMi1zNEJKSis1eTFwWUw2T3R3NTFGSGhWSlFoUG51UmluS2lnNjRnLzErRVVOYUpzZDNnQ0tkRDMxSVBGdnN3VWdXOS82MFFUOW9GSGJaSGJRSzVpbWN4dz09Il0sCgogICAgInZpdGVzdCI6IFsidml0ZXN0QDQuMS43IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvZXhwZWN0IjogIjQuMS43IiwgIkB2aXRlc3QvbW9ja2VyIjogIjQuMS43IiwgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNyIsICJAdml0ZXN0L3J1bm5lciI6ICI0LjEuNyIsICJAdml0ZXN0L3NuYXBzaG90IjogIjQuMS43IiwgIkB2aXRlc3Qvc3B5IjogIjQuMS43IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjciLCAiZXMtbW9kdWxlLWxleGVyIjogIl4yLjAuMCIsICJleHBlY3QtdHlwZSI6ICJeMS4zLjAiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiwgIm9idWciOiAiXjIuMS4xIiwgInBhdGhlIjogIl4yLjAuMyIsICJwaWNvbWF0Y2giOiAiXjQuMC4zIiwgInN0ZC1lbnYiOiAiXjQuMC4wLXJjLjEiLCAidGlueWJlbmNoIjogIl4yLjkuMCIsICJ0aW55ZXhlYyI6ICJeMS4wLjIiLCAidGlueWdsb2JieSI6ICJeMC4yLjE1IiwgInRpbnlyYWluYm93IjogIl4zLjEuMCIsICJ2aXRlIjogIl42LjAuMCB8fCBeNy4wLjAgfHwgXjguMC4wIiwgIndoeS1pcy1ub2RlLXJ1bm5pbmciOiAiXjIuMy4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBlZGdlLXJ1bnRpbWUvdm0iOiAiKiIsICJAb3BlbnRlbGVtZXRyeS9hcGkiOiAiXjEuOS4wIiwgIkB0eXBlcy9ub2RlIjogIl4yMC4wLjAgfHwgXjIyLjAuMCB8fCA+PTI0LjAuMCIsICJAdml0ZXN0L2Jyb3dzZXItcGxheXdyaWdodCI6ICI0LjEuNyIsICJAdml0ZXN0L2Jyb3dzZXItcHJldmlldyI6ICI0LjEuNyIsICJAdml0ZXN0L2Jyb3dzZXItd2ViZHJpdmVyaW8iOiAiNC4xLjciLCAiQHZpdGVzdC9jb3ZlcmFnZS1pc3RhbmJ1bCI6ICI0LjEuNyIsICJAdml0ZXN0L2NvdmVyYWdlLXY4IjogIjQuMS43IiwgIkB2aXRlc3QvdWkiOiAiNC4xLjciLCAiaGFwcHktZG9tIjogIioiLCAianNkb20iOiAiKiIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBlZGdlLXJ1bnRpbWUvdm0iLCAiQG9wZW50ZWxlbWV0cnkvYXBpIiwgIkB0eXBlcy9ub2RlIiwgIkB2aXRlc3QvYnJvd3Nlci1wbGF5d3JpZ2h0IiwgIkB2aXRlc3QvYnJvd3Nlci1wcmV2aWV3IiwgIkB2aXRlc3QvYnJvd3Nlci13ZWJkcml2ZXJpbyIsICJAdml0ZXN0L2NvdmVyYWdlLWlzdGFuYnVsIiwgIkB2aXRlc3QvY292ZXJhZ2UtdjgiLCAiQHZpdGVzdC91aSIsICJoYXBweS1kb20iLCAianNkb20iXSwgImJpbiI6IHsgInZpdGVzdCI6ICJ2aXRlc3QubWpzIiB9IH0sICJzaGE1MTItZmxZeWFGZDJDZ29Db1UrMFVLdDNweGtzZ0MrUzAyaVRETjBuM0x0cWFNZVhzSTlTQmNkTnVqYzJrMERlRkx6VW4vMGs1Mzh5TmpPU2R3Z0NxY3J3SkE9PSJdLAoKICAgICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogWyJ3aHktaXMtbm9kZS1ydW5uaW5nQDIuMy4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInNpZ2luZm8iOiAiXjIuMC4wIiwgInN0YWNrYmFjayI6ICIwLjAuMiIgfSwgImJpbiI6IHsgIndoeS1pcy1ub2RlLXJ1bm5pbmciOiAiY2xpLmpzIiB9IH0sICJzaGE1MTItaFVybWFXQmRWRGN4dllxbnloMDl6dW5LelJPV2piWlRpTnk4ZEJFamtTN2VoRURRaWJYSjdYdmxtdGJ3dVRjbFVpSXlOK0N5WFFENFZta284Zk5tOHc9PSJdLAoKICAgICJ3cmFwLWFuc2kiOiBbIndyYXAtYW5zaUA3LjAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJhbnNpLXN0eWxlcyI6ICJeNC4wLjAiLCAic3RyaW5nLXdpZHRoIjogIl40LjEuMCIsICJzdHJpcC1hbnNpIjogIl42LjAuMCIgfSB9LCAic2hhNTEyLVlWR0lqMmthbUxTVHh3Nk5zWmpvQnhmU3dzbjB5Y2Rlc21jNHArUTIxYzV6UHVaMXBsK05meFZkeFB0ZEh2bU5WT1E2WFNZRzRBVXR5dC9GaTdEMTZRPT0iXSwKCiAgICAieHNzIjogWyJ4c3NAMS4wLjE1IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImNvbW1hbmRlciI6ICJeMi4yMC4zIiwgImNzc2ZpbHRlciI6ICIwLjAuMTAiIH0sICJiaW4iOiB7ICJ4c3MiOiAiYmluL3hzcyIgfSB9LCAic2hhNTEyLUZWZGxWVkM2N1dPSVB2Zk93aG9NRVRWNzJmNkdiVzdhT2FiQkMzV3hOL29VZG9FTUR5THo0T2dSdjUvZ2NrMlplTnFFUXUrVGIwa2xvb3ZYT2ZwWVZnPT0iXSwKCiAgICAieTE4biI6IFsieTE4bkA1LjAuOCIsICIiLCB7fSwgInNoYTUxMi0wcGZGemVnZURXSkhKSUFtVExSUDJEd0hqZEY1czdqbzl0dXp0ZFF4QWhJTkNkdlMrM25HSU5xUGQwMEFwaHFKUi8wTGhBTlVTNi8rN1NDYjk4WU9mQT09Il0sCgogICAgInlhbWwiOiBbInlhbWxAMi45LjAiLCAiIiwgeyAiYmluIjogeyAieWFtbCI6ICJiaW4ubWpzIiB9IH0sICJzaGE1MTItMkF2aE5YM21iOHpkNlp5N0lOVHRTcGwxRjE1SFc2V25xajBzcldsa0tMY3BZbC9nTUlNSml5dUdxMktlSTJZRnhVUGpkbEIrM0xjMTBzZU1MdEw0Y0E9PSJdLAoKICAgICJ5YXJncyI6IFsieWFyZ3NAMTcuNy4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImNsaXVpIjogIl44LjAuMSIsICJlc2NhbGFkZSI6ICJeMy4xLjEiLCAiZ2V0LWNhbGxlci1maWxlIjogIl4yLjAuNSIsICJyZXF1aXJlLWRpcmVjdG9yeSI6ICJeMi4xLjEiLCAic3RyaW5nLXdpZHRoIjogIl40LjIuMyIsICJ5MThuIjogIl41LjAuNSIsICJ5YXJncy1wYXJzZXIiOiAiXjIxLjEuMSIgfSB9LCAic2hhNTEyLTdkU3p6UlErK0NLbk5JL2tyS25ZUlY3SktLUFVYTUVoNjFzb2FIS2c5bXJXRWh6RldoRm54UHhHbCs2OWNEMU91NjNDMTNOVVBDbm1JY3J2cUN1TTZ3PT0iXSwKCiAgICAieWFyZ3MtcGFyc2VyIjogWyJ5YXJncy1wYXJzZXJAMjEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXRWcHNKVzdEZGplY0FpRnBiSUIxZTNxeElRc0U2Tm9QYzUvZVRkcmJiSUM0aDBMVnNXaG5vYTNnK20ySGNsQkl1akh6c3haNFZKVkErR1V1YzIvTEJ3PT0iXSwKCiAgICAiem9kIjogWyJ6b2RANC40LjMiLCAiIiwge30sICJzaGE1MTIteXRFTkZqSUpGbDJVd1lnbGRlMmpjaFcySHdtNEdKRkxEaVNYV2RUckpRQklOOUZjeXA3bjREaHhKRWlXTkFKTVYxL0JxV2ZXL2trZzcxVURjSEp5VFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvQGVtbmFwaS9jb3JlIjogWyJAZW1uYXBpL2NvcmVAMS4xMC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvd2FzaS10aHJlYWRzIjogIjEuMi4xIiwgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvQGVtbmFwaS9ydW50aW1lIjogWyJAZW1uYXBpL3J1bnRpbWVAMS4xMC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvQGVtbmFwaS93YXNpLXRocmVhZHMiOiBbIkBlbW5hcGkvd2FzaS10aHJlYWRzQDEuMi4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvQG5hcGktcnMvd2FzbS1ydW50aW1lIjogWyJAbmFwaS1ycy93YXNtLXJ1bnRpbWVAMS4xLjQiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5YnlzL3dhc20tdXRpbCI6ICJeMC4xMC4xIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICJeMS43LjEiLCAiQGVtbmFwaS9ydW50aW1lIjogIl4xLjcuMSIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvQHR5YnlzL3dhc20tdXRpbCI6IFsiQHR5YnlzL3dhc20tdXRpbEAwLjEwLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9LCAiYnVuZGxlZCI6IHRydWUgfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaS90c2xpYiI6IFsidHNsaWJAMi44LjEiLCAiIiwgeyAiYnVuZGxlZCI6IHRydWUgfSwgInNoYTUxMi1vSkZ1OTRIUWIrS1ZkdVNVUUw3d25wbXFuZm1Mc09BL25BaDZiNkVIMHdDRW9LMC9tUGVYVTZjM3dLRFY4M01rT3VIUFJIdFNYS0tVOTlJQmF6Uy8ydz09Il0sCgogICAgImNoYWxrL3N1cHBvcnRzLWNvbG9yIjogWyJzdXBwb3J0cy1jb2xvckA3LjIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJoYXMtZmxhZyI6ICJeNC4wLjAiIH0gfSwgInNoYTUxMi1xcENBdlJsOXN0dU9IdmVLc243SG5jSlJ2djUwMXFJYWNLelFsTy8rTHd4YzkrMHEyd0x5djREZnZ0ODAvRFBuMnBxT0JzSmREaW9nWEdSOStPdndSdz09Il0sCgogICAgIm5leHQvcG9zdGNzcyI6IFsicG9zdGNzc0A4LjQuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAibmFub2lkIjogIl4zLjMuNiIsICJwaWNvY29sb3JzIjogIl4xLjAuMCIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjAuMiIgfSB9LCAic2hhNTEyLVBTMDhJYm9pYTltdHMvMnlnVjNlTHBZNWdoblVjZkxWL0VYVE9XMUUycVl4SktHR0JVdE5qTjc2RllIbk1zMzZSbUFSbjQxYkMwQVptbityUjBPVnBRPT0iXSwKICB9Cn0K" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "bakery",\n "name": "Bakery",\n "tagline": "Warm, food-forward storefront with custom-order forms and same-day delivery checkout.",\n "industry": "food",\n "tags": ["food", "bakery", "pastry"],\n "stability": "stable",\n "schemaType": "Bakery",\n "mock": {\n "seedName": "default",\n "seedBusinessId": "bus_default_akua_bakery"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-semibold uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="font-serif text-[clamp(2.25rem,5vw,3.5rem)] font-semibold mb-6 -tracking-[0.02em]">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="font-serif text-3xl font-semibold mt-10 mb-3">{s.heading}</h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full menu with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/shop?product=${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
3118
3274
|
|
|
3119
3275
|
import { useState } from "react";
|
|
3120
3276
|
|
|
@@ -4020,7 +4176,46 @@ export const brand: Brand = {
|
|
|
4020
4176
|
* the root layout prerenderable.
|
|
4021
4177
|
*/
|
|
4022
4178
|
export const SITE_URL = "https://example.com";
|
|
4023
|
-
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed auto --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed auto",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.65.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS40LjEiLCAiIiwge30sICJzaGE1MTItUDVMVU5odGJqNllmSTNpSmp3NUVMOWVVQUc2T2l0RDBXM2ZXUWNwUWpEUmMvUUlzTDB0Uk51TzFQY0R2UGNjV0wxZlNUWFhkRTFkcytsOTVEVi9PRkE9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzAuMCIsICIiLCB7fSwgInNoYTUxMi1pYkQydXN4OUpSdTdmNXB1MnRNS01JNGNwQTROZ1hKUW9ZUlA0cFE3UHhtbjFsNmsvNTNxV3RRV1pheWhZeTNYNFFaa3Q5ME90K21KRWFlWG91aW82UT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjEiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZkpJM0kwcjNDM09qL3pkQkNwYUNtQlJaWWYwN3hwYXE0eUNmRERvU0ZtK2JlV056YklsMjZwdVc4UnJhVWR1Z29Kdy85NXplck5PbjZqYXNBaHpTbWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWNLbkFoV0VzVjdUUGNBLzVFQXRlRHA2S2NKWkJRMkcrQnFFN3pheU1NaTdrTXZ3UnNidjdXVDlhT25uMFdObDRTS0VJZjQzdmpTMzFpVVB1ODBuelhnPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZS3JWd1FqSVJCUG8rNUcvdTAzd0dqYmR5NHE3cHl6Q2U5M0RLOVZKN3prVm1lZzhMSjdHYmdzaUhXZFI0eFNvZTRDQVhSRDdCY2pnYnRyNjRia1hOZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItei9vQnNSRW80NlNzRnFCd1l0RmUwa3BKZUJpakFUNDhPL1dYTEk0c3VpQ0xCa3IwM1JUdFRKTUN6U2REZDJ6bmxoOFZKaXpMMDlYVmtRZ2s4SVpvbnc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItaWs4cTdHTTExenh2WXhGYzJQZURjVDZUQnZoQ1FNYVV4ZnBoL001bDlzS3VUcy9TamczTCtCeXcwRjd3MFpWTEJabXgzMFArZ0cwRUN6ek4rTUZjbVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItUW9TeDJFa3lycmRaNmtjeUU4c3RxWjYydDBZcmE4RnM1aWE5bE94SnJoNlRNUUpLN2dRS21zY2RUSGY3cE9YS1JFS3JWd090SmNRRzNxVlNmYzg2NkE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi11d053RnB3S2VOaVphd2ZBV0JnZzBWSXp0UFRWM2loaGgxdlYzMzRoOWl2bk5Mb3J4blFNVTZGejh3RzFaYjRRaDlMQzEvTWtjeVQzWWxEWEczUnNnZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi16WTFidWw3T1dyN0RGQmlKKyt3b2ZYdm5yOEI0NWNlM1FzUVVoS3JJaFhzeWdBaDdiVGt3eWVNMWJpMWEyZzVDL3lDL044VFp5R0RFb01mbS9sOW1wZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi0wZnJsc1QvZjRGdDZJN1NNRVNUS25GM2Nac2RpY1FuMWRDTWtGL2pUOXdETEUrZ0dvaVFmdjFubVQ5ZStzN3MvZmVrdnZ5NnRaTTJqSHZJMnRrYkpEUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjEiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1YQUJWbUdwOVRnMFdzcFRWdndkdVRjNGZwcXk2Sm5BVXJTUWU2T3V5cUQvMDNuSTdyME85T1dVa01Jd0ZyaktBSXFvbHZxb0E0WnJKcHBnd0UwR3htdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLWJWNGZ6c3d1elZjS0Q5MG8vVk02UXFLeG54bERxMGcyQklTRExOVm14cm5ocHYxRERieVBoQ0lqWWZ2ellMVitNdmtLS25RdDJRNkFPODZTRUJVTFVRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4xIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLS9NaDBaaHEzT1A3ZlZzMGtjUUhaUDZsWkV0aE1HVGFTZjhVQlFZU0ZFWkRXR1hYbEVDK25KNkVxZW5hSzJ0NExCWE1lM0ErSy9HMkJWWFhkdE9yNFBRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItKzF4YzlYNDVsOHVmc0JBbTZHanZ4MnFEUklZOWxUVnQwY2dXTmNKKzFnZGhYdmtieGVQQTYweVJUd1NUdVhMMDlDTWh5Sm1qcFY3RTNOb3l4YnFGUVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4xIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0xRCtVcVpkZm51UitKeTFHZ01Kd2k4NWJENDBIMjF1Tm1PUFJXUWh3NG9SU3VvbFovQjVyaXhaNDVESzJLWE9UQ3ZtVkNlY2F1V2dFaGJ3OGJJN3RPdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUlOQXljYVd1aGxPSzN3azRtUkhHc2Rnd1lXbWQ5Y0NoZFBkRTlid1dteTZybjlWcVZOWU5GR2hPZFhyb2ZYVXh3SEluY1NpUE5iOHRObThrbkRWSWVRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS42IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItN0VIRHF1UHRoQUxTVjBqaGhqZ0VXOEZYYXZpTXg3clNxdThXNm9xQ29BdU9oS292ODE0UDk5UURWMXB4TUEzUVB2MjFZdWR2Sm5nSWhqck5JNG9wTGc9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi1NQ0ZjNjNjek1qRUluT2xjWTJjcFFDdkNOK0tnYkFuKzYweHU5Y01nUDRzS2FMQzVKTkFLdzdKSDhRZEFub0FDODhoVzFJaVNOWitHZ1ZYbE4xVWNNUT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLWg1U3hEL0l6TmhaWW5yU1pSc1VaUUlDK3ZEMEdZOGNVdnEwaXdzbWtGS2l4UkNLTExXcUNYYS9GSVE0UzFSK3NJK1BHb29qa0hzZE5yYlppTTlRcGd3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItbk9QQ21uMit5RDBaTm1LZHNYR3YvVXhNTVdiTXVLZUQ2R3lZbmNOd2RrWUR4cFF2clBTS1lqMnJXdURqQzJZNGI2dzZoamlwNWRCS0Z6RVV1WmUzdkE9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1ZaHNkRTZ4QVZmVERtemp4TDJaRFV2amorWnNneU9LZStUZFF6cWtENzJ3SU9tSGthOE51R1E2TnBUTlp2OUQyWjYzZmJ3V0tKUGVWcEV3NEVRZ1l4dz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNiIsICIiLCB7fSwgInNoYTUxMi1KRkt4TXg2dWRod0toL0xkbzI3MGUxN1FYNzEwdmd1bk1rdVBBdlhqSFN2QzZvcUxXQUhoVmhqZy9JNzFxMHUwQ0JTRXJJT0RWMUtqdjBGUU5TV2pkZz09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItRnhJWStVODFSM0xHS0N4YUhIRlJRNStnNi9pUmdHTG1lSFdkcDJBbWo0bGpRUnJFSVdIbVp5RGZEWUJSWmxweXFBN3FLeHRTOUREMWRoazhSblJJVlE9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItbUxDTmJyUWxpMTFLMXlTVW11TnQ0WlVCM09wR0lEcTRxMnZUQlRmNWNMMmxwc1JqSTlRS3FTRDBuZGpXOEZ5dmNXL0pqNDZnTWU5c3l5SEFzdk1hL0E9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjMiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLTV4b0RmWCtmTDdmYUFUbmFnbVdQcGJGdHdoL1I3N1dtTU1xcUhHUzY1QzN2dkIwWUhyZ0YrQjFZbVozNDQxdE1qNW42M2swMjEyWE5vSnd6bGhmZlF3PT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwb3N0Y3NzIjogWyJwb3N0Y3NzQDguNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy4xMiIsICJwaWNvY29sb3JzIjogIl4xLjEuMSIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjIuMSIgfSB9LCAic2hhNTEyLUZmUjhzamQ0ZW0yVDZmYjNJMk13QUpVN0hXVk1yOXpiYStlbm1RZWVXRmZDYm0rVU9DLzBYNERTOFh0cFVUTXdXTUdiaktZUDd4amZOZWt6eUdtQjNBPT0iXSwKCiAgICAicmVhY3QiOiBbInJlYWN0QDE5LjIuNiIsICIiLCB7fSwgInNoYTUxMi1zZldHR2ZhdmkweHI4UGcwc1ZzeUhNQU96aVZZS2dQTE5yUzdpZytpdk1OYjN3YkNCdzNLeHRmbHNHQkF3RDNnWVFsRS9BRVpzVExnVG9SclNDamIwUT09Il0sCgogICAgInJlYWN0LWRheS1waWNrZXIiOiBbInJlYWN0LWRheS1waWNrZXJAOS4xNC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS40LjEiLCAiQHRhYmJ5X2FpL2hpanJpLWNvbnZlcnRlciI6ICIxLjAuNSIsICJkYXRlLWZucyI6ICJeNC4xLjAiLCAiZGF0ZS1mbnMtamFsYWxpIjogIjQuMS4wLTAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0xNi44LjAiIH0gfSwgInNoYTUxMi10QmFvRFdqUHdlME01cEdydW00SDBTUjZMeWsrQk85b0hucDlKYktwR0tXMm1scmFOUGdQOUJNZnNnNXBXcHdyc3NBUm1lcWs3WUJsMm9YdXRaVGFIQT09Il0sCgogICAgInJlYWN0LWRvbSI6IFsicmVhY3QtZG9tQDE5LjIuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzY2hlZHVsZXIiOiAiXjAuMjcuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTkuMi42IiB9IH0sICJzaGE1MTItMHByTUkraHZCYlBqc1dueERMeGxDR3lNOFBONlV1V2pFVUNZbVpoTzY3eElWOVhhc2Evci92RG5xK1h5cTRMbzI3ZzhRU2JPNVl6QVJ1MEQxU3BzM2c9PSJdLAoKICAgICJyZXF1aXJlLWRpcmVjdG9yeSI6IFsicmVxdWlyZS1kaXJlY3RvcnlAMi4xLjEiLCAiIiwge30sICJzaGE1MTItZkd4RUk3K3dzRzl4cnZkanNybG1MMjJPTVRUaUhSd0FNcm9pRWVNZ3E4Z3pvTEMvUFFyN1JzUkRTVExVZy9iWkFadEYrVFZJa0hjNi80UklLcnVpK1E9PSJdLAoKICAgICJyZXNlbGVjdCI6IFsicmVzZWxlY3RANS4yLjAiLCAiIiwge30sICJzaGE1MTItQWdaM1VPWm0zWW5kZnJKNE9ZamdyVDdibUNtLzFpcWtqdkVmSC9vWWp6aDZQRDJxdzRRdVQzampuWElycGR0NE1UcE1YY2xNVDNsWGJtUlkrWFJha3c9PSJdLAoKICAgICJyb2xsZG93biI6IFsicm9sbGRvd25AMS4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQG94Yy1wcm9qZWN0L3R5cGVzIjogIj0wLjEzMC4wIiwgIkByb2xsZG93bi9wbHVnaW51dGlscyI6ICJeMS4wLjAiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZnJlZWJzZC14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtbXVzbCI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1wcGM2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgteDY0LW11c2wiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzItYXJtNjQtbXN2YyI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2YyI6ICIxLjAuMSIgfSwgImJpbiI6IHsgInJvbGxkb3duIjogImJpbi9jbGkubWpzIiB9IH0sICJzaGE1MTItWDBLUUhsak5uRWtXTnFxaXo5ekpyR3VuaDFCMEhnT3hMWHZuRnBDT2NhZHpjeTVxb2haM3RxTUVVZzAwdm5jb1Jvdlh1SzNacUNUOUtubkt6b0luRlE9PSJdLAoKICAgICJyeGpzIjogWyJyeGpzQDcuOC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjEuMCIgfSB9LCAic2hhNTEyLWRoS2Y5MDNVL1BRWlk2Ym9OTnRBR2RXYkc4NVdBYmpULzF4WW9aSUM3RkFZMHlXYXBPQlFWc1ZyRGw1OFc4Ni8vZTFWcE1OQnRSVjRNYVhmZE15U0ZBPT0iXSwKCiAgICAic2NoZWR1bGVyIjogWyJzY2hlZHVsZXJAMC4yNy4wIiwgIiIsIHt9LCAic2hhNTEyLWVOditXclZiS3UxZjN2YllKVC94dGlGNXN5QTVIUElNdGY5SWdZL25LZzBzV3F6QVVFdnFZL3htN09jWmMvcWFmTHgvaU85RmdPbWVTQXA0djV0aS9RPT0iXSwKCiAgICAic2VtdmVyIjogWyJzZW12ZXJANy44LjAiLCAiIiwgeyAiYmluIjogeyAic2VtdmVyIjogImJpbi9zZW12ZXIuanMiIH0gfSwgInNoYTUxMi1BY003ZFYvNXVsNEVla29RMjlBZ201dnJpOEpOcVJ5ajM5bzBxcFg2dkRGMkdacnR1dFpsNVJ3Z0QxWG5aamlUQWZuY3NKaE1JNDhRUUgzc044N1lOQT09Il0sCgogICAgInNoYXJwIjogWyJzaGFycEAwLjM0LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGltZy9jb2xvdXIiOiAiXjEuMC4wIiwgImRldGVjdC1saWJjIjogIl4yLjEuMiIsICJzZW12ZXIiOiAiXjcuNy4zIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWRhcndpbi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtczM5MHgiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGludXgtYXJtIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXBwYzY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4bXVzbC1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eG11c2wteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdhc20zMiI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1pYTMyIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLXg2NCI6ICIwLjM0LjUiIH0gfSwgInNoYTUxMi1PdTlJNUZ0OVdOY0NiWHJVOWNNZ1BCY0NLOExpd0xxY2J5d1czdDRvRFYzN24xcHpwdU5Mc1lpQVY4ZU9EbmpidFFsU0R3WjJjVUVlUXo0RTU0SGx0Zz09Il0sCgogICAgInNoZWxsLXF1b3RlIjogWyJzaGVsbC1xdW90ZUAxLjguMyIsICIiLCB7fSwgInNoYTUxMi1PYm1uSUY0aFhOZzFCcWhuSG1nYkRFVEY4ZExQQ2dnWldCamtRZmhacGJzelpuWXVyNURVbGpUY0NIaWk1TEMzSjVFMHllTy8xTElNeUgrVXZIUWd5dz09Il0sCgogICAgInNpZ2luZm8iOiBbInNpZ2luZm9AMi4wLjAiLCAiIiwge30sICJzaGE1MTIteWJ4MFdPMS84YlNCTEVXWFp2RWQ3Z01XM1NuM0pGbFczVHZYMW5SRWJETFJOUU5hZU5OOFdLMG1lQndQZEFhT0k3VHRSUlJKbi9FczF6aHJyQ0h1N2c9PSJdLAoKICAgICJzb3VyY2UtbWFwIjogWyJzb3VyY2UtbWFwQDAuNi4xIiwgIiIsIHt9LCAic2hhNTEyLVVqZ2FwdW1XbGJNaGtCZ3pUN1lrYzVZWFVUNDZGMGlLdThTR1hxMGJjd1A1ZHovaDBQbGo2ZW5KcWp6MVpicTJsNVdhcVluclZid1dPV015RjNGNDdnPT0iXSwKCiAgICAic291cmNlLW1hcC1qcyI6IFsic291cmNlLW1hcC1qc0AxLjIuMSIsICIiLCB7fSwgInNoYTUxMi1VWFdNS2hMT3dWS2I3MjhJVXRRUFh4ZllVK3VzZHlidFVySy84dUdFOENRTXZyaE9wd3Z6REJ3ajBRaFNMN01RYzd2SXNJU0JHOFZROCtJRFF4cGZRQT09Il0sCgogICAgInNvdXJjZS1tYXAtc3VwcG9ydCI6IFsic291cmNlLW1hcC1zdXBwb3J0QDAuNS4yMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJidWZmZXItZnJvbSI6ICJeMS4wLjAiLCAic291cmNlLW1hcCI6ICJeMC42LjAiIH0gfSwgInNoYTUxMi11QkhVM0wzY3pzSXlZWEtYODhmZHJHb3Z4ZFNDb1RHRFJaNlNZWHRTUnhMWlV6SGc1UC82Nkh0NnVvVWxIdTlFWm9kK2luWGhLbzNxUWd3WFVUL3kxdz09Il0sCgogICAgInN0YWNrYmFjayI6IFsic3RhY2tiYWNrQDAuMC4yIiwgIiIsIHt9LCAic2hhNTEyLTFYTUpFNWZRbzFqR0g2WS83ZWJud1BPQkVrSUVuVDRRRjMyZDVSMStWWGRYdmVNMElCTUp0OHpmYXhYMVAzUWhWd3JZZSs1NzYramtBTnRTUzJtQmJ3PT0iXSwKCiAgICAic3RkLWVudiI6IFsic3RkLWVudkA0LjEuMCIsICIiLCB7fSwgInNoYTUxMi1ScTd5YmNYMlJ1QzU1cjlvYVBWRVc3L3h1M3RqOHU0R2VCWUhCV0N5Y2hGdHpNSXI4NkE3ZTNQUEVCUFQzN3NIU3RLWDMrVGlYL0ZyL0FDbUpMVmxMUT09Il0sCgogICAgInN0cmluZy13aWR0aCI6IFsic3RyaW5nLXdpZHRoQDQuMi4zIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImVtb2ppLXJlZ2V4IjogIl44LjAuMCIsICJpcy1mdWxsd2lkdGgtY29kZS1wb2ludCI6ICJeMy4wLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiIH0gfSwgInNoYTUxMi13S3lRUlFwakowc0lwNjJFclNaZEdzak1KV3NhcDVvUk5paEhodTZHN0pWTy85aklCNlV5ZXZMK3RYdU9xcm5nOGovY3hLVFd5V1V3dlNUcmlpWnovZz09Il0sCgogICAgInN0cmlwLWFuc2kiOiBbInN0cmlwLWFuc2lANi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1yZWdleCI6ICJeNS4wLjEiIH0gfSwgInNoYTUxMi1ZMzhWUFNIY3FrRnJDcEZuUTl2dVNYbXF1dXY1b1hPS3BHZVQ2YUdycjNvM0djOUFsVmE2SkJmVVNPQ25ieEdHWkYrLzBvb0k3S3JQdVVTenRVZFU1QT09Il0sCgogICAgInN0eWxlZC1qc3giOiBbInN0eWxlZC1qc3hANS4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY2xpZW50LW9ubHkiOiAiMC4wLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0gMTYuOC4wIHx8IDE3LngueCB8fCBeMTguMC4wLTAgfHwgXjE5LjAuMC0wIiB9IH0sICJzaGE1MTItcVNWeURUZU1vdGR2UVlvSFdMTkd3UkZKSEMraStadmRCUllvc09GZ0MrV2cxdng0ZnJOMi9SRy9OQTdTWXFxdktOTGYzOVAyTFNSQTJwdTZuMFhZWkE9PSJdLAoKICAgICJzdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JAOC4xLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItTXBVRU4yT29kdFV6eHZLUWw3MmNVRjdSUTVFaUhzR3ZTc1ZHMGlhOWM1UmJXR0wyQ0k0QzdFcFBTOFVUQklwbG5selppTnVWNTZ3K0Z1Tnh5M3R5MlE9PSJdLAoKICAgICJ0YWlsd2luZC1tZXJnZSI6IFsidGFpbHdpbmQtbWVyZ2VAMy42LjAiLCAiIiwge30sICJzaGE1MTItdXhMN3FBVlFyaXFSUVBBeUszcGo2NlZxc2tXcW9aMzdQVzk0andPVHdOZnEvejlveXUxVitlcXJacXRSMitmQ2lYZFlPWmUvTW9kdDhHdHZxTnp1K3c9PSJdLAoKICAgICJ0YWlsd2luZGNzcyI6IFsidGFpbHdpbmRjc3NANC4zLjAiLCAiIiwge30sICJzaGE1MTIteTZueE1HQjFuTVc5UjZrOTZlNWdkSUZ6Y2ZML2dUSlJOYXFHZXMxWXZrTG5QVlh6V2dicUZGMnlMQzBUOEc3NzRuMjRjeDNQZThYcktvbmlDT0FIK1E9PSJdLAoKICAgICJ0YXBhYmxlIjogWyJ0YXBhYmxlQDIuMy4zIiwgIiIsIHt9LCAic2hhNTEyLXV4Yy96cHFGZzZ4N0M4dk9FN2xoNkxiZGE4ZUVMOXptVm0vUExlVFBCUmhoMXhDZ2RXYVErSjFDVWllR3BJZm0ySGR0c1VwUnYrSHNoaWFzQk1jYzZBPT0iXSwKCiAgICAidGVyc2VyIjogWyJ0ZXJzZXJANS4xNi45IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiAiXjAuMy4yIiwgImFjb3JuIjogIl44LjUuMCIsICJjb21tYW5kZXIiOiAiXjIuMjAuMCIsICJzb3VyY2UtbWFwLXN1cHBvcnQiOiAifjAuNS4yMCIgfSwgImJpbiI6IHsgInRlcnNlciI6ICJiaW4vdGVyc2VyIiB9IH0sICJzaGE1MTItSFBhL0ZkVEI5WEdJMkgxL2tlTEZaSHhsNldOdkFJNFlhbEhHdERRVGxNbkpjb3FTYWIxVXdMNGwxaEdFaHM2L0dtTEhCWklnL1lnQisramNiem9PRWc9PSJdLAoKICAgICJ0aW55YmVuY2giOiBbInRpbnliZW5jaEAyLjkuMCIsICIiLCB7fSwgInNoYTUxMi0wK0RVdnFXTVZhbExtaGE2bHI0a0Q4aUFNSzFIelYwL2FLbkN0V2I5djk2NDFUblAvTUZiN1BjMmJ4b3hRalRYQUVycnlYVmdVT2Z2MllxTmxscUdlZz09Il0sCgogICAgInRpbnlleGVjIjogWyJ0aW55ZXhlY0AxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1kQXFTcUUvUmFicEJLSTgraDI2R2ZMcTZWYjNKVlhzMzBYWVFqZE1qYWovYzJ0UzhJWVlNYkl6UDU5OUt0Umo3YzU3L3dZQXBiM1FqZ1JnWG1yQ3VrQT09Il0sCgogICAgInRpbnlnbG9iYnkiOiBbInRpbnlnbG9iYnlAMC4yLjE2IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImZkaXIiOiAiXjYuNS4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiIH0gfSwgInNoYTUxMi1wbjk5VmhvQUNZUjhuRkhoeHFpeCt1dnNiWGluZUFhc1dtNW9qWG9OOHhFd0s1S2QzL1RyaE5uMXdCeXVENTJVeFdSTHk4cHUra1JNbmlFaTZFcTlaZz09Il0sCgogICAgInRpbnlyYWluYm93IjogWyJ0aW55cmFpbmJvd0AzLjEuMCIsICIiLCB7fSwgInNoYTUxMi1CZitJTG1CZ3JldFVyZEp4elhNMFNnWExaM1hmaWFVdU9qL0lLUUh1VFhpcCswNVhuK3V5RVlkVmcwa1lEaXBUQmNMckNWeVV6QVB6N1FtQXJiMG1tdz09Il0sCgogICAgInRyZWUta2lsbCI6IFsidHJlZS1raWxsQDEuMi4yIiwgIiIsIHsgImJpbiI6IHsgInRyZWUta2lsbCI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1MME9ycGk4cUdwUkcvL05kK0g5MHZGQiszaUhudWUxelNTR21OT09DaDFHTEo3clVLVndWMkh2aWpwaEdRUzJVbWhVWmV3UzlWZ3Z4WUlkZ3IrZkcxQT09Il0sCgogICAgInRzbGliIjogWyJ0c2xpYkAyLjguMSIsICIiLCB7fSwgInNoYTUxMi1vSkZ1OTRIUWIrS1ZkdVNVUUw3d25wbXFuZm1Mc09BL25BaDZiNkVIMHdDRW9LMC9tUGVYVTZjM3dLRFY4M01rT3VIUFJIdFNYS0tVOTlJQmF6Uy8ydz09Il0sCgogICAgInR5cGVzY3JpcHQiOiBbInR5cGVzY3JpcHRANS45LjMiLCAiIiwgeyAiYmluIjogeyAidHNjIjogImJpbi90c2MiLCAidHNzZXJ2ZXIiOiAiYmluL3Rzc2VydmVyIiB9IH0sICJzaGE1MTItamwxdlp6UERpbkxyOWVVdDNKL3Q3VjZGZ05FdzlRanZCUGR5c3o5S2ZRREQ0MWZRckMyWTR2S1FkaWFVcEZUNGJYbGIxUkhoTHBwOHd0bTZNNVRnU3c9PSJdLAoKICAgICJ1bmRpY2ktdHlwZXMiOiBbInVuZGljaS10eXBlc0A2LjIxLjAiLCAiIiwge30sICJzaGE1MTItaXdEWnFnMFFBR3JnOVJhdjVING4wTTY0YzNta1I1OWNKNndRcCs3QzRuSTBnc21FeGFlZGFZTE5PNDRlVDRBdEJCd2piVGlHUE1sdDJNZDBUOUg5SlE9PSJdLAoKICAgICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6IFsidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmVAMS42LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIl4xNi44LjAgfHwgXjE3LjAuMCB8fCBeMTguMC4wIHx8IF4xOS4wLjAiIH0gfSwgInNoYTUxMi1QcDZHU3dHUC9OclBJcnhWRkFJa09RZXl3OGxGZW5PSGlqUVdrVVRyRHZyRjRBTHF5bFAyQy9LQ2tlUzlkcFVNM0t2WVJRaG5hNXZ0N0lMOTUrWlE5dz09Il0sCgogICAgInZpdGUiOiBbInZpdGVAOC4wLjEzIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2NzcyI6ICJeMS4zMi4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiLCAicG9zdGNzcyI6ICJeOC41LjE0IiwgInJvbGxkb3duIjogIjEuMC4xIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNiIgfSwgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiZnNldmVudHMiOiAifjIuMy4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkB0eXBlcy9ub2RlIjogIl4yMC4xOS4wIHx8ID49MjIuMTIuMCIsICJAdml0ZWpzL2RldnRvb2xzIjogIl4wLjEuMTgiLCAiZXNidWlsZCI6ICJeMC4yNy4wIHx8IF4wLjI4LjAiLCAiaml0aSI6ICI+PTEuMjEuMCIsICJsZXNzIjogIl40LjAuMCIsICJzYXNzIjogIl4xLjcwLjAiLCAic2Fzcy1lbWJlZGRlZCI6ICJeMS43MC4wIiwgInN0eWx1cyI6ICI+PTAuNTQuOCIsICJzdWdhcnNzIjogIl41LjAuMCIsICJ0ZXJzZXIiOiAiXjUuMTYuMCIsICJ0c3giOiAiXjQuOC4xIiwgInlhbWwiOiAiXjIuNC4yIiB9LCAib3B0aW9uYWxQZWVycyI6IFsiQHR5cGVzL25vZGUiLCAiQHZpdGVqcy9kZXZ0b29scyIsICJlc2J1aWxkIiwgImppdGkiLCAibGVzcyIsICJzYXNzIiwgInNhc3MtZW1iZWRkZWQiLCAic3R5bHVzIiwgInN1Z2Fyc3MiLCAidGVyc2VyIiwgInRzeCIsICJ5YW1sIl0sICJiaW4iOiB7ICJ2aXRlIjogImJpbi92aXRlLmpzIiB9IH0sICJzaGE1MTItTUZ0akJZZ3ptU3htZ0E0UkFmakl5WFdwR2Uxb0FMbmpnVVR6elY3UUx4L1RLeEN6anRNSDZGZDkvZVZLKzVGZzFxTm96NVZBd3NtTXMvTm9mcm1Kdnc9PSJdLAoKICAgICJ2aXRlc3QiOiBbInZpdGVzdEA0LjEuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdml0ZXN0L2V4cGVjdCI6ICI0LjEuNiIsICJAdml0ZXN0L21vY2tlciI6ICI0LjEuNiIsICJAdml0ZXN0L3ByZXR0eS1mb3JtYXQiOiAiNC4xLjYiLCAiQHZpdGVzdC9ydW5uZXIiOiAiNC4xLjYiLCAiQHZpdGVzdC9zbmFwc2hvdCI6ICI0LjEuNiIsICJAdml0ZXN0L3NweSI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgImVzLW1vZHVsZS1sZXhlciI6ICJeMi4wLjAiLCAiZXhwZWN0LXR5cGUiOiAiXjEuMy4wIiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJvYnVnIjogIl4yLjEuMSIsICJwYXRoZSI6ICJeMi4wLjMiLCAicGljb21hdGNoIjogIl40LjAuMyIsICJzdGQtZW52IjogIl40LjAuMC1yYy4xIiwgInRpbnliZW5jaCI6ICJeMi45LjAiLCAidGlueWV4ZWMiOiAiXjEuMC4yIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNSIsICJ0aW55cmFpbmJvdyI6ICJeMy4xLjAiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIsICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogIl4yLjMuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZWRnZS1ydW50aW1lL3ZtIjogIioiLCAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjkuMCIsICJAdHlwZXMvbm9kZSI6ICJeMjAuMC4wIHx8IF4yMi4wLjAgfHwgPj0yNC4wLjAiLCAiQHZpdGVzdC9icm93c2VyLXBsYXl3cmlnaHQiOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXByZXZpZXciOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXdlYmRyaXZlcmlvIjogIjQuMS42IiwgIkB2aXRlc3QvY292ZXJhZ2UtaXN0YW5idWwiOiAiNC4xLjYiLCAiQHZpdGVzdC9jb3ZlcmFnZS12OCI6ICI0LjEuNiIsICJAdml0ZXN0L3VpIjogIjQuMS42IiwgImhhcHB5LWRvbSI6ICIqIiwgImpzZG9tIjogIioiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZWRnZS1ydW50aW1lL3ZtIiwgIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAdHlwZXMvbm9kZSIsICJAdml0ZXN0L2Jyb3dzZXItcGxheXdyaWdodCIsICJAdml0ZXN0L2Jyb3dzZXItcHJldmlldyIsICJAdml0ZXN0L2Jyb3dzZXItd2ViZHJpdmVyaW8iLCAiQHZpdGVzdC9jb3ZlcmFnZS1pc3RhbmJ1bCIsICJAdml0ZXN0L2NvdmVyYWdlLXY4IiwgIkB2aXRlc3QvdWkiLCAiaGFwcHktZG9tIiwgImpzZG9tIl0sICJiaW4iOiB7ICJ2aXRlc3QiOiAidml0ZXN0Lm1qcyIgfSB9LCAic2hhNTEyLTZsdmpiUzNwOWI0Q3JkQ21ndXpiaDIvNHVvWGhHRTJxNzFSNE9YNXNxRjlSMWJvOVhkNmZHck1BZnZwNXduQ3psQm5GVmRDT3A2b251VFFWYm84aVVRPT0iXSwKCiAgICAid2h5LWlzLW5vZGUtcnVubmluZyI6IFsid2h5LWlzLW5vZGUtcnVubmluZ0AyLjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzaWdpbmZvIjogIl4yLjAuMCIsICJzdGFja2JhY2siOiAiMC4wLjIiIH0sICJiaW4iOiB7ICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLWhVcm1hV0JkVkRjeHZZcW55aDA5enVuS3pST1dqYlpUaU55OGRCRWprUzdlaEVEUWliWEo3WHZsbXRid3VUY2xVaUl5TitDeVhRRDRWbWtvOGZObTh3PT0iXSwKCiAgICAid3JhcC1hbnNpIjogWyJ3cmFwLWFuc2lANy4wLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMC4wIiwgInN0cmluZy13aWR0aCI6ICJeNC4xLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjAiIH0gfSwgInNoYTUxMi1ZVkdJajJrYW1MU1R4dzZOc1pqb0J4ZlN3c24weWNkZXNtYzRwK1EyMWM1elB1WjFwbCtOZnhWZHhQdGRIdm1OVk9RNlhTWUc0QVV0eXQvRmk3RDE2UT09Il0sCgogICAgInhzcyI6IFsieHNzQDEuMC4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb21tYW5kZXIiOiAiXjIuMjAuMyIsICJjc3NmaWx0ZXIiOiAiMC4wLjEwIiB9LCAiYmluIjogeyAieHNzIjogImJpbi94c3MiIH0gfSwgInNoYTUxMi1GVmRsVlZDNjdXT0lQdmZPd2hvTUVUVjcyZjZHYlc3YU9hYkJDM1d4Ti9vVWRvRU1EeUx6NE9nUnY1L2djazJaZU5xRVF1K1RiMGtsb292WE9mcFlWZz09Il0sCgogICAgInkxOG4iOiBbInkxOG5ANS4wLjgiLCAiIiwge30sICJzaGE1MTItMHBmRnplZ2VEV0pISklBbVRMUlAyRHdIamRGNXM3am85dHV6dGRReEFoSU5DZHZTKzNuR0lOcVBkMDBBcGhxSlIvMExoQU5VUzYvKzdTQ2I5OFlPZkE9PSJdLAoKICAgICJ5YW1sIjogWyJ5YW1sQDIuOS4wIiwgIiIsIHsgImJpbiI6IHsgInlhbWwiOiAiYmluLm1qcyIgfSB9LCAic2hhNTEyLTJBdmhOWDNtYjh6ZDZaeTdJTlR0U3BsMUYxNUhXNlducWowc3JXbGtLTGNwWWwvZ01JTUppeXVHcTJLZUkyWUZ4VVBqZGxCKzNMYzEwc2VNTHRMNGNBPT0iXSwKCiAgICAieWFyZ3MiOiBbInlhcmdzQDE3LjcuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjbGl1aSI6ICJeOC4wLjEiLCAiZXNjYWxhZGUiOiAiXjMuMS4xIiwgImdldC1jYWxsZXItZmlsZSI6ICJeMi4wLjUiLCAicmVxdWlyZS1kaXJlY3RvcnkiOiAiXjIuMS4xIiwgInN0cmluZy13aWR0aCI6ICJeNC4yLjMiLCAieTE4biI6ICJeNS4wLjUiLCAieWFyZ3MtcGFyc2VyIjogIl4yMS4xLjEiIH0gfSwgInNoYTUxMi03ZFN6elJRKytDS25OSS9rcktuWVJWN0pLS1BVWE1FaDYxc29hSEtnOW1yV0VoekZXaEZueFB4R2wrNjljRDFPdTYzQzEzTlVQQ25tSWNydnFDdU02dz09Il0sCgogICAgInlhcmdzLXBhcnNlciI6IFsieWFyZ3MtcGFyc2VyQDIxLjEuMSIsICIiLCB7fSwgInNoYTUxMi10VnBzSlc3RGRqZWNBaUZwYklCMWUzcXhJUXNFNk5vUGM1L2VUZHJiYklDNGgwTFZzV2hub2EzZyttMkhjbEJJdWpIenN4WjRWSlZBK0dVdWMyL0xCdz09Il0sCgogICAgInpvZCI6IFsiem9kQDQuNC4zIiwgIiIsIHt9LCAic2hhNTEyLXl0RU5GaklKRmwyVXdZZ2xkZTJqY2hXMkh3bTRHSkZMRGlTWFdkVHJKUUJJTjlGY3lwN240RGh4SkVpV05BSk1WMS9CcVdmVy9ra2c3MVVEY0hKeVRRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvY29yZSI6IFsiQGVtbmFwaS9jb3JlQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICIxLjIuMSIsICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXlxNk9rSjRwODJDQWZQbDB1OW1RZWJRSEtQSmtZN1dySXVrMjA1Y1RZblllK2syWjhZQmgxMUZyYlJHL0g2aWhpcnFjYWNPZ2wyQklPOG95TVFMZVh3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvcnVudGltZSI6IFsiQGVtbmFwaS9ydW50aW1lQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLWV3dllsazg2eFVvR0kwelFSTnEvbUMrMTZSMVFlRGxLUXkyMUtpM29TWVhOZ0xiNDVHVjFQNkEwTSsvczZueUN1TkRxZTVWcGFZODRCelhHd1Zid0ZBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvd2FzaS10aHJlYWRzIjogWyJAZW1uYXBpL3dhc2ktdGhyZWFkc0AxLjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXVUSUk3T1lGKy9NZXMvTXJjSU9ZcDV5T3RTTUxCV1NJb0xQcGNnd2lwb2lLYmxpNmszMjJ0Y29Gc3hvSUl4UERxVzAxU1FHQWdrbzRFelppMkJOdjJ3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BuYXBpLXJzL3dhc20tcnVudGltZSI6IFsiQG5hcGktcnMvd2FzbS1ydW50aW1lQDEuMS40IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB0eWJ5cy93YXNtLXV0aWwiOiAiXjAuMTAuMSIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuNy4xIiwgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjEiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLTNOUU5OZ0ExWVNsSmIva01IMWlsZEFTUDlIVzcvN2tZblJJMnN6V0phb2ZhUzFoV21iR0k0SCtkMysyMmFHelhYTjlJSituK0dpRlZjR2lwSlAxOG93PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0B0eWJ5cy93YXNtLXV0aWwiOiBbIkB0eWJ5cy93YXNtLXV0aWxAMC4xMC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItUm9CdkoyWDB3dUtsV0ZJanJ3ZmZHdzFJcVpIS1FxekljaEthYWRaWmZuTnBzQVlwMm1NMGgzNkp0UENqTkRBSEdnWWV6LzE1dU1CcGZHd2NoaGlNZ2c9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvdHNsaWIiOiBbInRzbGliQDIuOC4xIiwgIiIsIHsgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItb0pGdTk0SFFiK0tWZHVTVVFMN3ducG1xbmZtTHNPQS9uQWg2YjZFSDB3Q0VvSzAvbVBlWFU2YzN3S0RWODNNa091SFBSSHRTWEtLVTk5SUJhelMvMnc9PSJdLAoKICAgICJjaGFsay9zdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JANy4yLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItcXBDQXZSbDlzdHVPSHZlS3NuN0huY0pSdnY1MDFxSWFjS3pRbE8vK0x3eGM5KzBxMndMeXY0RGZ2dDgwL0RQbjJwcU9Cc0pkRGlvZ1hHUjkrT3Z3Unc9PSJdLAoKICAgICJuZXh0L3Bvc3Rjc3MiOiBbInBvc3Rjc3NAOC40LjMxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIm5hbm9pZCI6ICJeMy4zLjYiLCAicGljb2NvbG9ycyI6ICJeMS4wLjAiLCAic291cmNlLW1hcC1qcyI6ICJeMS4wLjIiIH0gfSwgInNoYTUxMi1QUzA4SWJvaWE5bXRzLzJ5Z1YzZUxwWTVnaG5VY2ZMVi9FWFRPVzFFMnFZeEpLR0dCVXROak43NkZZSG5NczM2Um1BUm40MWJDMEFabW4rclIwT1ZwUT09Il0sCiAgfQp9Cg==" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "auto",\n "name": "Auto Parts",\n "tagline": "Auto-parts storefront with vehicle fitment finder and installation booking.",\n "industry": "automotive",\n "tags": ["automotive", "parts", "fitment"],\n "stability": "stable",\n "schemaType": "AutoPartsStore",\n "mock": {\n "seedName": "auto",\n "seedBusinessId": "bus_driveline_auto"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n // Title supports a single \\n for a hard line break.\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-mono uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="text-[clamp(2.25rem,5vw,3.5rem)] font-bold mb-6 -tracking-[0.025em] leading-tight">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="text-2xl font-semibold mt-10 mb-3 -tracking-[0.02em]">\n {s.heading}\n </h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full catalogue with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/products/${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [Support / FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
4179
|
+
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": "middleware.ts", "kind": "text", "content": `import { NextResponse, type NextRequest } from "next/server";
|
|
4180
|
+
import { handleTokenRefresh, type OidcConfig } from "@cimplify/sdk/server";
|
|
4181
|
+
|
|
4182
|
+
function oidcConfig(): OidcConfig | null {
|
|
4183
|
+
const clientId =
|
|
4184
|
+
process.env.CIMPLIFY_CLIENT_ID?.trim() ||
|
|
4185
|
+
process.env.NEXT_PUBLIC_CIMPLIFY_CLIENT_ID?.trim() ||
|
|
4186
|
+
"";
|
|
4187
|
+
if (!clientId) return null;
|
|
4188
|
+
return {
|
|
4189
|
+
clientId,
|
|
4190
|
+
issuer: process.env.CIMPLIFY_ISSUER?.trim() || undefined,
|
|
4191
|
+
authUrl: process.env.CIMPLIFY_AUTH_URL?.trim() || undefined,
|
|
4192
|
+
};
|
|
4193
|
+
}
|
|
4194
|
+
|
|
4195
|
+
// Keeps the access token fresh before account pages render. Server Components
|
|
4196
|
+
// can't write cookies, so this is the one place the rotated token can be both
|
|
4197
|
+
// persisted (browser) and forwarded onto the current request (this render).
|
|
4198
|
+
export async function middleware(request: NextRequest) {
|
|
4199
|
+
const cfg = oidcConfig();
|
|
4200
|
+
if (!cfg) return NextResponse.next();
|
|
4201
|
+
|
|
4202
|
+
const { outcome, setCookies, cookies } = await handleTokenRefresh(request, cfg);
|
|
4203
|
+
if (outcome === "noop") return NextResponse.next();
|
|
4204
|
+
|
|
4205
|
+
for (const { name, value } of cookies) {
|
|
4206
|
+
request.cookies.set(name, value);
|
|
4207
|
+
}
|
|
4208
|
+
const response = NextResponse.next({ request });
|
|
4209
|
+
for (const cookie of setCookies) {
|
|
4210
|
+
response.headers.append("set-cookie", cookie);
|
|
4211
|
+
}
|
|
4212
|
+
return response;
|
|
4213
|
+
}
|
|
4214
|
+
|
|
4215
|
+
export const config = {
|
|
4216
|
+
matcher: ["/account/:path*"],
|
|
4217
|
+
};
|
|
4218
|
+
` }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed auto --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed auto",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.67.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS40LjEiLCAiIiwge30sICJzaGE1MTItUDVMVU5odGJqNllmSTNpSmp3NUVMOWVVQUc2T2l0RDBXM2ZXUWNwUWpEUmMvUUlzTDB0Uk51TzFQY0R2UGNjV0wxZlNUWFhkRTFkcytsOTVEVi9PRkE9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzAuMCIsICIiLCB7fSwgInNoYTUxMi1pYkQydXN4OUpSdTdmNXB1MnRNS01JNGNwQTROZ1hKUW9ZUlA0cFE3UHhtbjFsNmsvNTNxV3RRV1pheWhZeTNYNFFaa3Q5ME90K21KRWFlWG91aW82UT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjEiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZkpJM0kwcjNDM09qL3pkQkNwYUNtQlJaWWYwN3hwYXE0eUNmRERvU0ZtK2JlV056YklsMjZwdVc4UnJhVWR1Z29Kdy85NXplck5PbjZqYXNBaHpTbWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWNLbkFoV0VzVjdUUGNBLzVFQXRlRHA2S2NKWkJRMkcrQnFFN3pheU1NaTdrTXZ3UnNidjdXVDlhT25uMFdObDRTS0VJZjQzdmpTMzFpVVB1ODBuelhnPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZS3JWd1FqSVJCUG8rNUcvdTAzd0dqYmR5NHE3cHl6Q2U5M0RLOVZKN3prVm1lZzhMSjdHYmdzaUhXZFI0eFNvZTRDQVhSRDdCY2pnYnRyNjRia1hOZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItei9vQnNSRW80NlNzRnFCd1l0RmUwa3BKZUJpakFUNDhPL1dYTEk0c3VpQ0xCa3IwM1JUdFRKTUN6U2REZDJ6bmxoOFZKaXpMMDlYVmtRZ2s4SVpvbnc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItaWs4cTdHTTExenh2WXhGYzJQZURjVDZUQnZoQ1FNYVV4ZnBoL001bDlzS3VUcy9TamczTCtCeXcwRjd3MFpWTEJabXgzMFArZ0cwRUN6ek4rTUZjbVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItUW9TeDJFa3lycmRaNmtjeUU4c3RxWjYydDBZcmE4RnM1aWE5bE94SnJoNlRNUUpLN2dRS21zY2RUSGY3cE9YS1JFS3JWd090SmNRRzNxVlNmYzg2NkE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi11d053RnB3S2VOaVphd2ZBV0JnZzBWSXp0UFRWM2loaGgxdlYzMzRoOWl2bk5Mb3J4blFNVTZGejh3RzFaYjRRaDlMQzEvTWtjeVQzWWxEWEczUnNnZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi16WTFidWw3T1dyN0RGQmlKKyt3b2ZYdm5yOEI0NWNlM1FzUVVoS3JJaFhzeWdBaDdiVGt3eWVNMWJpMWEyZzVDL3lDL044VFp5R0RFb01mbS9sOW1wZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi0wZnJsc1QvZjRGdDZJN1NNRVNUS25GM2Nac2RpY1FuMWRDTWtGL2pUOXdETEUrZ0dvaVFmdjFubVQ5ZStzN3MvZmVrdnZ5NnRaTTJqSHZJMnRrYkpEUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjEiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1YQUJWbUdwOVRnMFdzcFRWdndkdVRjNGZwcXk2Sm5BVXJTUWU2T3V5cUQvMDNuSTdyME85T1dVa01Jd0ZyaktBSXFvbHZxb0E0WnJKcHBnd0UwR3htdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLWJWNGZ6c3d1elZjS0Q5MG8vVk02UXFLeG54bERxMGcyQklTRExOVm14cm5ocHYxRERieVBoQ0lqWWZ2ellMVitNdmtLS25RdDJRNkFPODZTRUJVTFVRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4xIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLS9NaDBaaHEzT1A3ZlZzMGtjUUhaUDZsWkV0aE1HVGFTZjhVQlFZU0ZFWkRXR1hYbEVDK25KNkVxZW5hSzJ0NExCWE1lM0ErSy9HMkJWWFhkdE9yNFBRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItKzF4YzlYNDVsOHVmc0JBbTZHanZ4MnFEUklZOWxUVnQwY2dXTmNKKzFnZGhYdmtieGVQQTYweVJUd1NUdVhMMDlDTWh5Sm1qcFY3RTNOb3l4YnFGUVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4xIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0xRCtVcVpkZm51UitKeTFHZ01Kd2k4NWJENDBIMjF1Tm1PUFJXUWh3NG9SU3VvbFovQjVyaXhaNDVESzJLWE9UQ3ZtVkNlY2F1V2dFaGJ3OGJJN3RPdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUlOQXljYVd1aGxPSzN3azRtUkhHc2Rnd1lXbWQ5Y0NoZFBkRTlid1dteTZybjlWcVZOWU5GR2hPZFhyb2ZYVXh3SEluY1NpUE5iOHRObThrbkRWSWVRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS42IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItN0VIRHF1UHRoQUxTVjBqaGhqZ0VXOEZYYXZpTXg3clNxdThXNm9xQ29BdU9oS292ODE0UDk5UURWMXB4TUEzUVB2MjFZdWR2Sm5nSWhqck5JNG9wTGc9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi1NQ0ZjNjNjek1qRUluT2xjWTJjcFFDdkNOK0tnYkFuKzYweHU5Y01nUDRzS2FMQzVKTkFLdzdKSDhRZEFub0FDODhoVzFJaVNOWitHZ1ZYbE4xVWNNUT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLWg1U3hEL0l6TmhaWW5yU1pSc1VaUUlDK3ZEMEdZOGNVdnEwaXdzbWtGS2l4UkNLTExXcUNYYS9GSVE0UzFSK3NJK1BHb29qa0hzZE5yYlppTTlRcGd3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItbk9QQ21uMit5RDBaTm1LZHNYR3YvVXhNTVdiTXVLZUQ2R3lZbmNOd2RrWUR4cFF2clBTS1lqMnJXdURqQzJZNGI2dzZoamlwNWRCS0Z6RVV1WmUzdkE9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1ZaHNkRTZ4QVZmVERtemp4TDJaRFV2amorWnNneU9LZStUZFF6cWtENzJ3SU9tSGthOE51R1E2TnBUTlp2OUQyWjYzZmJ3V0tKUGVWcEV3NEVRZ1l4dz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNiIsICIiLCB7fSwgInNoYTUxMi1KRkt4TXg2dWRod0toL0xkbzI3MGUxN1FYNzEwdmd1bk1rdVBBdlhqSFN2QzZvcUxXQUhoVmhqZy9JNzFxMHUwQ0JTRXJJT0RWMUtqdjBGUU5TV2pkZz09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItRnhJWStVODFSM0xHS0N4YUhIRlJRNStnNi9pUmdHTG1lSFdkcDJBbWo0bGpRUnJFSVdIbVp5RGZEWUJSWmxweXFBN3FLeHRTOUREMWRoazhSblJJVlE9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItbUxDTmJyUWxpMTFLMXlTVW11TnQ0WlVCM09wR0lEcTRxMnZUQlRmNWNMMmxwc1JqSTlRS3FTRDBuZGpXOEZ5dmNXL0pqNDZnTWU5c3l5SEFzdk1hL0E9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjMiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLTV4b0RmWCtmTDdmYUFUbmFnbVdQcGJGdHdoL1I3N1dtTU1xcUhHUzY1QzN2dkIwWUhyZ0YrQjFZbVozNDQxdE1qNW42M2swMjEyWE5vSnd6bGhmZlF3PT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwb3N0Y3NzIjogWyJwb3N0Y3NzQDguNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy4xMiIsICJwaWNvY29sb3JzIjogIl4xLjEuMSIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjIuMSIgfSB9LCAic2hhNTEyLUZmUjhzamQ0ZW0yVDZmYjNJMk13QUpVN0hXVk1yOXpiYStlbm1RZWVXRmZDYm0rVU9DLzBYNERTOFh0cFVUTXdXTUdiaktZUDd4amZOZWt6eUdtQjNBPT0iXSwKCiAgICAicmVhY3QiOiBbInJlYWN0QDE5LjIuNiIsICIiLCB7fSwgInNoYTUxMi1zZldHR2ZhdmkweHI4UGcwc1ZzeUhNQU96aVZZS2dQTE5yUzdpZytpdk1OYjN3YkNCdzNLeHRmbHNHQkF3RDNnWVFsRS9BRVpzVExnVG9SclNDamIwUT09Il0sCgogICAgInJlYWN0LWRheS1waWNrZXIiOiBbInJlYWN0LWRheS1waWNrZXJAOS4xNC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS40LjEiLCAiQHRhYmJ5X2FpL2hpanJpLWNvbnZlcnRlciI6ICIxLjAuNSIsICJkYXRlLWZucyI6ICJeNC4xLjAiLCAiZGF0ZS1mbnMtamFsYWxpIjogIjQuMS4wLTAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0xNi44LjAiIH0gfSwgInNoYTUxMi10QmFvRFdqUHdlME01cEdydW00SDBTUjZMeWsrQk85b0hucDlKYktwR0tXMm1scmFOUGdQOUJNZnNnNXBXcHdyc3NBUm1lcWs3WUJsMm9YdXRaVGFIQT09Il0sCgogICAgInJlYWN0LWRvbSI6IFsicmVhY3QtZG9tQDE5LjIuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzY2hlZHVsZXIiOiAiXjAuMjcuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTkuMi42IiB9IH0sICJzaGE1MTItMHByTUkraHZCYlBqc1dueERMeGxDR3lNOFBONlV1V2pFVUNZbVpoTzY3eElWOVhhc2Evci92RG5xK1h5cTRMbzI3ZzhRU2JPNVl6QVJ1MEQxU3BzM2c9PSJdLAoKICAgICJyZXF1aXJlLWRpcmVjdG9yeSI6IFsicmVxdWlyZS1kaXJlY3RvcnlAMi4xLjEiLCAiIiwge30sICJzaGE1MTItZkd4RUk3K3dzRzl4cnZkanNybG1MMjJPTVRUaUhSd0FNcm9pRWVNZ3E4Z3pvTEMvUFFyN1JzUkRTVExVZy9iWkFadEYrVFZJa0hjNi80UklLcnVpK1E9PSJdLAoKICAgICJyZXNlbGVjdCI6IFsicmVzZWxlY3RANS4yLjAiLCAiIiwge30sICJzaGE1MTItQWdaM1VPWm0zWW5kZnJKNE9ZamdyVDdibUNtLzFpcWtqdkVmSC9vWWp6aDZQRDJxdzRRdVQzampuWElycGR0NE1UcE1YY2xNVDNsWGJtUlkrWFJha3c9PSJdLAoKICAgICJyb2xsZG93biI6IFsicm9sbGRvd25AMS4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQG94Yy1wcm9qZWN0L3R5cGVzIjogIj0wLjEzMC4wIiwgIkByb2xsZG93bi9wbHVnaW51dGlscyI6ICJeMS4wLjAiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZnJlZWJzZC14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtbXVzbCI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1wcGM2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgteDY0LW11c2wiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzItYXJtNjQtbXN2YyI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2YyI6ICIxLjAuMSIgfSwgImJpbiI6IHsgInJvbGxkb3duIjogImJpbi9jbGkubWpzIiB9IH0sICJzaGE1MTItWDBLUUhsak5uRWtXTnFxaXo5ekpyR3VuaDFCMEhnT3hMWHZuRnBDT2NhZHpjeTVxb2haM3RxTUVVZzAwdm5jb1Jvdlh1SzNacUNUOUtubkt6b0luRlE9PSJdLAoKICAgICJyeGpzIjogWyJyeGpzQDcuOC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjEuMCIgfSB9LCAic2hhNTEyLWRoS2Y5MDNVL1BRWlk2Ym9OTnRBR2RXYkc4NVdBYmpULzF4WW9aSUM3RkFZMHlXYXBPQlFWc1ZyRGw1OFc4Ni8vZTFWcE1OQnRSVjRNYVhmZE15U0ZBPT0iXSwKCiAgICAic2NoZWR1bGVyIjogWyJzY2hlZHVsZXJAMC4yNy4wIiwgIiIsIHt9LCAic2hhNTEyLWVOditXclZiS3UxZjN2YllKVC94dGlGNXN5QTVIUElNdGY5SWdZL25LZzBzV3F6QVVFdnFZL3htN09jWmMvcWFmTHgvaU85RmdPbWVTQXA0djV0aS9RPT0iXSwKCiAgICAic2VtdmVyIjogWyJzZW12ZXJANy44LjAiLCAiIiwgeyAiYmluIjogeyAic2VtdmVyIjogImJpbi9zZW12ZXIuanMiIH0gfSwgInNoYTUxMi1BY003ZFYvNXVsNEVla29RMjlBZ201dnJpOEpOcVJ5ajM5bzBxcFg2dkRGMkdacnR1dFpsNVJ3Z0QxWG5aamlUQWZuY3NKaE1JNDhRUUgzc044N1lOQT09Il0sCgogICAgInNoYXJwIjogWyJzaGFycEAwLjM0LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGltZy9jb2xvdXIiOiAiXjEuMC4wIiwgImRldGVjdC1saWJjIjogIl4yLjEuMiIsICJzZW12ZXIiOiAiXjcuNy4zIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWRhcndpbi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtczM5MHgiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGludXgtYXJtIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXBwYzY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4bXVzbC1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eG11c2wteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdhc20zMiI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1pYTMyIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLXg2NCI6ICIwLjM0LjUiIH0gfSwgInNoYTUxMi1PdTlJNUZ0OVdOY0NiWHJVOWNNZ1BCY0NLOExpd0xxY2J5d1czdDRvRFYzN24xcHpwdU5Mc1lpQVY4ZU9EbmpidFFsU0R3WjJjVUVlUXo0RTU0SGx0Zz09Il0sCgogICAgInNoZWxsLXF1b3RlIjogWyJzaGVsbC1xdW90ZUAxLjguMyIsICIiLCB7fSwgInNoYTUxMi1PYm1uSUY0aFhOZzFCcWhuSG1nYkRFVEY4ZExQQ2dnWldCamtRZmhacGJzelpuWXVyNURVbGpUY0NIaWk1TEMzSjVFMHllTy8xTElNeUgrVXZIUWd5dz09Il0sCgogICAgInNpZ2luZm8iOiBbInNpZ2luZm9AMi4wLjAiLCAiIiwge30sICJzaGE1MTIteWJ4MFdPMS84YlNCTEVXWFp2RWQ3Z01XM1NuM0pGbFczVHZYMW5SRWJETFJOUU5hZU5OOFdLMG1lQndQZEFhT0k3VHRSUlJKbi9FczF6aHJyQ0h1N2c9PSJdLAoKICAgICJzb3VyY2UtbWFwIjogWyJzb3VyY2UtbWFwQDAuNi4xIiwgIiIsIHt9LCAic2hhNTEyLVVqZ2FwdW1XbGJNaGtCZ3pUN1lrYzVZWFVUNDZGMGlLdThTR1hxMGJjd1A1ZHovaDBQbGo2ZW5KcWp6MVpicTJsNVdhcVluclZid1dPV015RjNGNDdnPT0iXSwKCiAgICAic291cmNlLW1hcC1qcyI6IFsic291cmNlLW1hcC1qc0AxLjIuMSIsICIiLCB7fSwgInNoYTUxMi1VWFdNS2hMT3dWS2I3MjhJVXRRUFh4ZllVK3VzZHlidFVySy84dUdFOENRTXZyaE9wd3Z6REJ3ajBRaFNMN01RYzd2SXNJU0JHOFZROCtJRFF4cGZRQT09Il0sCgogICAgInNvdXJjZS1tYXAtc3VwcG9ydCI6IFsic291cmNlLW1hcC1zdXBwb3J0QDAuNS4yMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJidWZmZXItZnJvbSI6ICJeMS4wLjAiLCAic291cmNlLW1hcCI6ICJeMC42LjAiIH0gfSwgInNoYTUxMi11QkhVM0wzY3pzSXlZWEtYODhmZHJHb3Z4ZFNDb1RHRFJaNlNZWHRTUnhMWlV6SGc1UC82Nkh0NnVvVWxIdTlFWm9kK2luWGhLbzNxUWd3WFVUL3kxdz09Il0sCgogICAgInN0YWNrYmFjayI6IFsic3RhY2tiYWNrQDAuMC4yIiwgIiIsIHt9LCAic2hhNTEyLTFYTUpFNWZRbzFqR0g2WS83ZWJud1BPQkVrSUVuVDRRRjMyZDVSMStWWGRYdmVNMElCTUp0OHpmYXhYMVAzUWhWd3JZZSs1NzYramtBTnRTUzJtQmJ3PT0iXSwKCiAgICAic3RkLWVudiI6IFsic3RkLWVudkA0LjEuMCIsICIiLCB7fSwgInNoYTUxMi1ScTd5YmNYMlJ1QzU1cjlvYVBWRVc3L3h1M3RqOHU0R2VCWUhCV0N5Y2hGdHpNSXI4NkE3ZTNQUEVCUFQzN3NIU3RLWDMrVGlYL0ZyL0FDbUpMVmxMUT09Il0sCgogICAgInN0cmluZy13aWR0aCI6IFsic3RyaW5nLXdpZHRoQDQuMi4zIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImVtb2ppLXJlZ2V4IjogIl44LjAuMCIsICJpcy1mdWxsd2lkdGgtY29kZS1wb2ludCI6ICJeMy4wLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiIH0gfSwgInNoYTUxMi13S3lRUlFwakowc0lwNjJFclNaZEdzak1KV3NhcDVvUk5paEhodTZHN0pWTy85aklCNlV5ZXZMK3RYdU9xcm5nOGovY3hLVFd5V1V3dlNUcmlpWnovZz09Il0sCgogICAgInN0cmlwLWFuc2kiOiBbInN0cmlwLWFuc2lANi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1yZWdleCI6ICJeNS4wLjEiIH0gfSwgInNoYTUxMi1ZMzhWUFNIY3FrRnJDcEZuUTl2dVNYbXF1dXY1b1hPS3BHZVQ2YUdycjNvM0djOUFsVmE2SkJmVVNPQ25ieEdHWkYrLzBvb0k3S3JQdVVTenRVZFU1QT09Il0sCgogICAgInN0eWxlZC1qc3giOiBbInN0eWxlZC1qc3hANS4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY2xpZW50LW9ubHkiOiAiMC4wLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0gMTYuOC4wIHx8IDE3LngueCB8fCBeMTguMC4wLTAgfHwgXjE5LjAuMC0wIiB9IH0sICJzaGE1MTItcVNWeURUZU1vdGR2UVlvSFdMTkd3UkZKSEMraStadmRCUllvc09GZ0MrV2cxdng0ZnJOMi9SRy9OQTdTWXFxdktOTGYzOVAyTFNSQTJwdTZuMFhZWkE9PSJdLAoKICAgICJzdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JAOC4xLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItTXBVRU4yT29kdFV6eHZLUWw3MmNVRjdSUTVFaUhzR3ZTc1ZHMGlhOWM1UmJXR0wyQ0k0QzdFcFBTOFVUQklwbG5selppTnVWNTZ3K0Z1Tnh5M3R5MlE9PSJdLAoKICAgICJ0YWlsd2luZC1tZXJnZSI6IFsidGFpbHdpbmQtbWVyZ2VAMy42LjAiLCAiIiwge30sICJzaGE1MTItdXhMN3FBVlFyaXFSUVBBeUszcGo2NlZxc2tXcW9aMzdQVzk0andPVHdOZnEvejlveXUxVitlcXJacXRSMitmQ2lYZFlPWmUvTW9kdDhHdHZxTnp1K3c9PSJdLAoKICAgICJ0YWlsd2luZGNzcyI6IFsidGFpbHdpbmRjc3NANC4zLjAiLCAiIiwge30sICJzaGE1MTIteTZueE1HQjFuTVc5UjZrOTZlNWdkSUZ6Y2ZML2dUSlJOYXFHZXMxWXZrTG5QVlh6V2dicUZGMnlMQzBUOEc3NzRuMjRjeDNQZThYcktvbmlDT0FIK1E9PSJdLAoKICAgICJ0YXBhYmxlIjogWyJ0YXBhYmxlQDIuMy4zIiwgIiIsIHt9LCAic2hhNTEyLXV4Yy96cHFGZzZ4N0M4dk9FN2xoNkxiZGE4ZUVMOXptVm0vUExlVFBCUmhoMXhDZ2RXYVErSjFDVWllR3BJZm0ySGR0c1VwUnYrSHNoaWFzQk1jYzZBPT0iXSwKCiAgICAidGVyc2VyIjogWyJ0ZXJzZXJANS4xNi45IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiAiXjAuMy4yIiwgImFjb3JuIjogIl44LjUuMCIsICJjb21tYW5kZXIiOiAiXjIuMjAuMCIsICJzb3VyY2UtbWFwLXN1cHBvcnQiOiAifjAuNS4yMCIgfSwgImJpbiI6IHsgInRlcnNlciI6ICJiaW4vdGVyc2VyIiB9IH0sICJzaGE1MTItSFBhL0ZkVEI5WEdJMkgxL2tlTEZaSHhsNldOdkFJNFlhbEhHdERRVGxNbkpjb3FTYWIxVXdMNGwxaEdFaHM2L0dtTEhCWklnL1lnQisramNiem9PRWc9PSJdLAoKICAgICJ0aW55YmVuY2giOiBbInRpbnliZW5jaEAyLjkuMCIsICIiLCB7fSwgInNoYTUxMi0wK0RVdnFXTVZhbExtaGE2bHI0a0Q4aUFNSzFIelYwL2FLbkN0V2I5djk2NDFUblAvTUZiN1BjMmJ4b3hRalRYQUVycnlYVmdVT2Z2MllxTmxscUdlZz09Il0sCgogICAgInRpbnlleGVjIjogWyJ0aW55ZXhlY0AxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1kQXFTcUUvUmFicEJLSTgraDI2R2ZMcTZWYjNKVlhzMzBYWVFqZE1qYWovYzJ0UzhJWVlNYkl6UDU5OUt0Umo3YzU3L3dZQXBiM1FqZ1JnWG1yQ3VrQT09Il0sCgogICAgInRpbnlnbG9iYnkiOiBbInRpbnlnbG9iYnlAMC4yLjE2IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImZkaXIiOiAiXjYuNS4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiIH0gfSwgInNoYTUxMi1wbjk5VmhvQUNZUjhuRkhoeHFpeCt1dnNiWGluZUFhc1dtNW9qWG9OOHhFd0s1S2QzL1RyaE5uMXdCeXVENTJVeFdSTHk4cHUra1JNbmlFaTZFcTlaZz09Il0sCgogICAgInRpbnlyYWluYm93IjogWyJ0aW55cmFpbmJvd0AzLjEuMCIsICIiLCB7fSwgInNoYTUxMi1CZitJTG1CZ3JldFVyZEp4elhNMFNnWExaM1hmaWFVdU9qL0lLUUh1VFhpcCswNVhuK3V5RVlkVmcwa1lEaXBUQmNMckNWeVV6QVB6N1FtQXJiMG1tdz09Il0sCgogICAgInRyZWUta2lsbCI6IFsidHJlZS1raWxsQDEuMi4yIiwgIiIsIHsgImJpbiI6IHsgInRyZWUta2lsbCI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1MME9ycGk4cUdwUkcvL05kK0g5MHZGQiszaUhudWUxelNTR21OT09DaDFHTEo3clVLVndWMkh2aWpwaEdRUzJVbWhVWmV3UzlWZ3Z4WUlkZ3IrZkcxQT09Il0sCgogICAgInRzbGliIjogWyJ0c2xpYkAyLjguMSIsICIiLCB7fSwgInNoYTUxMi1vSkZ1OTRIUWIrS1ZkdVNVUUw3d25wbXFuZm1Mc09BL25BaDZiNkVIMHdDRW9LMC9tUGVYVTZjM3dLRFY4M01rT3VIUFJIdFNYS0tVOTlJQmF6Uy8ydz09Il0sCgogICAgInR5cGVzY3JpcHQiOiBbInR5cGVzY3JpcHRANS45LjMiLCAiIiwgeyAiYmluIjogeyAidHNjIjogImJpbi90c2MiLCAidHNzZXJ2ZXIiOiAiYmluL3Rzc2VydmVyIiB9IH0sICJzaGE1MTItamwxdlp6UERpbkxyOWVVdDNKL3Q3VjZGZ05FdzlRanZCUGR5c3o5S2ZRREQ0MWZRckMyWTR2S1FkaWFVcEZUNGJYbGIxUkhoTHBwOHd0bTZNNVRnU3c9PSJdLAoKICAgICJ1bmRpY2ktdHlwZXMiOiBbInVuZGljaS10eXBlc0A2LjIxLjAiLCAiIiwge30sICJzaGE1MTItaXdEWnFnMFFBR3JnOVJhdjVING4wTTY0YzNta1I1OWNKNndRcCs3QzRuSTBnc21FeGFlZGFZTE5PNDRlVDRBdEJCd2piVGlHUE1sdDJNZDBUOUg5SlE9PSJdLAoKICAgICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6IFsidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmVAMS42LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIl4xNi44LjAgfHwgXjE3LjAuMCB8fCBeMTguMC4wIHx8IF4xOS4wLjAiIH0gfSwgInNoYTUxMi1QcDZHU3dHUC9OclBJcnhWRkFJa09RZXl3OGxGZW5PSGlqUVdrVVRyRHZyRjRBTHF5bFAyQy9LQ2tlUzlkcFVNM0t2WVJRaG5hNXZ0N0lMOTUrWlE5dz09Il0sCgogICAgInZpdGUiOiBbInZpdGVAOC4wLjEzIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2NzcyI6ICJeMS4zMi4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiLCAicG9zdGNzcyI6ICJeOC41LjE0IiwgInJvbGxkb3duIjogIjEuMC4xIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNiIgfSwgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiZnNldmVudHMiOiAifjIuMy4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkB0eXBlcy9ub2RlIjogIl4yMC4xOS4wIHx8ID49MjIuMTIuMCIsICJAdml0ZWpzL2RldnRvb2xzIjogIl4wLjEuMTgiLCAiZXNidWlsZCI6ICJeMC4yNy4wIHx8IF4wLjI4LjAiLCAiaml0aSI6ICI+PTEuMjEuMCIsICJsZXNzIjogIl40LjAuMCIsICJzYXNzIjogIl4xLjcwLjAiLCAic2Fzcy1lbWJlZGRlZCI6ICJeMS43MC4wIiwgInN0eWx1cyI6ICI+PTAuNTQuOCIsICJzdWdhcnNzIjogIl41LjAuMCIsICJ0ZXJzZXIiOiAiXjUuMTYuMCIsICJ0c3giOiAiXjQuOC4xIiwgInlhbWwiOiAiXjIuNC4yIiB9LCAib3B0aW9uYWxQZWVycyI6IFsiQHR5cGVzL25vZGUiLCAiQHZpdGVqcy9kZXZ0b29scyIsICJlc2J1aWxkIiwgImppdGkiLCAibGVzcyIsICJzYXNzIiwgInNhc3MtZW1iZWRkZWQiLCAic3R5bHVzIiwgInN1Z2Fyc3MiLCAidGVyc2VyIiwgInRzeCIsICJ5YW1sIl0sICJiaW4iOiB7ICJ2aXRlIjogImJpbi92aXRlLmpzIiB9IH0sICJzaGE1MTItTUZ0akJZZ3ptU3htZ0E0UkFmakl5WFdwR2Uxb0FMbmpnVVR6elY3UUx4L1RLeEN6anRNSDZGZDkvZVZLKzVGZzFxTm96NVZBd3NtTXMvTm9mcm1Kdnc9PSJdLAoKICAgICJ2aXRlc3QiOiBbInZpdGVzdEA0LjEuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdml0ZXN0L2V4cGVjdCI6ICI0LjEuNiIsICJAdml0ZXN0L21vY2tlciI6ICI0LjEuNiIsICJAdml0ZXN0L3ByZXR0eS1mb3JtYXQiOiAiNC4xLjYiLCAiQHZpdGVzdC9ydW5uZXIiOiAiNC4xLjYiLCAiQHZpdGVzdC9zbmFwc2hvdCI6ICI0LjEuNiIsICJAdml0ZXN0L3NweSI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgImVzLW1vZHVsZS1sZXhlciI6ICJeMi4wLjAiLCAiZXhwZWN0LXR5cGUiOiAiXjEuMy4wIiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJvYnVnIjogIl4yLjEuMSIsICJwYXRoZSI6ICJeMi4wLjMiLCAicGljb21hdGNoIjogIl40LjAuMyIsICJzdGQtZW52IjogIl40LjAuMC1yYy4xIiwgInRpbnliZW5jaCI6ICJeMi45LjAiLCAidGlueWV4ZWMiOiAiXjEuMC4yIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNSIsICJ0aW55cmFpbmJvdyI6ICJeMy4xLjAiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIsICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogIl4yLjMuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZWRnZS1ydW50aW1lL3ZtIjogIioiLCAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjkuMCIsICJAdHlwZXMvbm9kZSI6ICJeMjAuMC4wIHx8IF4yMi4wLjAgfHwgPj0yNC4wLjAiLCAiQHZpdGVzdC9icm93c2VyLXBsYXl3cmlnaHQiOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXByZXZpZXciOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXdlYmRyaXZlcmlvIjogIjQuMS42IiwgIkB2aXRlc3QvY292ZXJhZ2UtaXN0YW5idWwiOiAiNC4xLjYiLCAiQHZpdGVzdC9jb3ZlcmFnZS12OCI6ICI0LjEuNiIsICJAdml0ZXN0L3VpIjogIjQuMS42IiwgImhhcHB5LWRvbSI6ICIqIiwgImpzZG9tIjogIioiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZWRnZS1ydW50aW1lL3ZtIiwgIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAdHlwZXMvbm9kZSIsICJAdml0ZXN0L2Jyb3dzZXItcGxheXdyaWdodCIsICJAdml0ZXN0L2Jyb3dzZXItcHJldmlldyIsICJAdml0ZXN0L2Jyb3dzZXItd2ViZHJpdmVyaW8iLCAiQHZpdGVzdC9jb3ZlcmFnZS1pc3RhbmJ1bCIsICJAdml0ZXN0L2NvdmVyYWdlLXY4IiwgIkB2aXRlc3QvdWkiLCAiaGFwcHktZG9tIiwgImpzZG9tIl0sICJiaW4iOiB7ICJ2aXRlc3QiOiAidml0ZXN0Lm1qcyIgfSB9LCAic2hhNTEyLTZsdmpiUzNwOWI0Q3JkQ21ndXpiaDIvNHVvWGhHRTJxNzFSNE9YNXNxRjlSMWJvOVhkNmZHck1BZnZwNXduQ3psQm5GVmRDT3A2b251VFFWYm84aVVRPT0iXSwKCiAgICAid2h5LWlzLW5vZGUtcnVubmluZyI6IFsid2h5LWlzLW5vZGUtcnVubmluZ0AyLjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzaWdpbmZvIjogIl4yLjAuMCIsICJzdGFja2JhY2siOiAiMC4wLjIiIH0sICJiaW4iOiB7ICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLWhVcm1hV0JkVkRjeHZZcW55aDA5enVuS3pST1dqYlpUaU55OGRCRWprUzdlaEVEUWliWEo3WHZsbXRid3VUY2xVaUl5TitDeVhRRDRWbWtvOGZObTh3PT0iXSwKCiAgICAid3JhcC1hbnNpIjogWyJ3cmFwLWFuc2lANy4wLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMC4wIiwgInN0cmluZy13aWR0aCI6ICJeNC4xLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjAiIH0gfSwgInNoYTUxMi1ZVkdJajJrYW1MU1R4dzZOc1pqb0J4ZlN3c24weWNkZXNtYzRwK1EyMWM1elB1WjFwbCtOZnhWZHhQdGRIdm1OVk9RNlhTWUc0QVV0eXQvRmk3RDE2UT09Il0sCgogICAgInhzcyI6IFsieHNzQDEuMC4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb21tYW5kZXIiOiAiXjIuMjAuMyIsICJjc3NmaWx0ZXIiOiAiMC4wLjEwIiB9LCAiYmluIjogeyAieHNzIjogImJpbi94c3MiIH0gfSwgInNoYTUxMi1GVmRsVlZDNjdXT0lQdmZPd2hvTUVUVjcyZjZHYlc3YU9hYkJDM1d4Ti9vVWRvRU1EeUx6NE9nUnY1L2djazJaZU5xRVF1K1RiMGtsb292WE9mcFlWZz09Il0sCgogICAgInkxOG4iOiBbInkxOG5ANS4wLjgiLCAiIiwge30sICJzaGE1MTItMHBmRnplZ2VEV0pISklBbVRMUlAyRHdIamRGNXM3am85dHV6dGRReEFoSU5DZHZTKzNuR0lOcVBkMDBBcGhxSlIvMExoQU5VUzYvKzdTQ2I5OFlPZkE9PSJdLAoKICAgICJ5YW1sIjogWyJ5YW1sQDIuOS4wIiwgIiIsIHsgImJpbiI6IHsgInlhbWwiOiAiYmluLm1qcyIgfSB9LCAic2hhNTEyLTJBdmhOWDNtYjh6ZDZaeTdJTlR0U3BsMUYxNUhXNlducWowc3JXbGtLTGNwWWwvZ01JTUppeXVHcTJLZUkyWUZ4VVBqZGxCKzNMYzEwc2VNTHRMNGNBPT0iXSwKCiAgICAieWFyZ3MiOiBbInlhcmdzQDE3LjcuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjbGl1aSI6ICJeOC4wLjEiLCAiZXNjYWxhZGUiOiAiXjMuMS4xIiwgImdldC1jYWxsZXItZmlsZSI6ICJeMi4wLjUiLCAicmVxdWlyZS1kaXJlY3RvcnkiOiAiXjIuMS4xIiwgInN0cmluZy13aWR0aCI6ICJeNC4yLjMiLCAieTE4biI6ICJeNS4wLjUiLCAieWFyZ3MtcGFyc2VyIjogIl4yMS4xLjEiIH0gfSwgInNoYTUxMi03ZFN6elJRKytDS25OSS9rcktuWVJWN0pLS1BVWE1FaDYxc29hSEtnOW1yV0VoekZXaEZueFB4R2wrNjljRDFPdTYzQzEzTlVQQ25tSWNydnFDdU02dz09Il0sCgogICAgInlhcmdzLXBhcnNlciI6IFsieWFyZ3MtcGFyc2VyQDIxLjEuMSIsICIiLCB7fSwgInNoYTUxMi10VnBzSlc3RGRqZWNBaUZwYklCMWUzcXhJUXNFNk5vUGM1L2VUZHJiYklDNGgwTFZzV2hub2EzZyttMkhjbEJJdWpIenN4WjRWSlZBK0dVdWMyL0xCdz09Il0sCgogICAgInpvZCI6IFsiem9kQDQuNC4zIiwgIiIsIHt9LCAic2hhNTEyLXl0RU5GaklKRmwyVXdZZ2xkZTJqY2hXMkh3bTRHSkZMRGlTWFdkVHJKUUJJTjlGY3lwN240RGh4SkVpV05BSk1WMS9CcVdmVy9ra2c3MVVEY0hKeVRRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvY29yZSI6IFsiQGVtbmFwaS9jb3JlQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICIxLjIuMSIsICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXlxNk9rSjRwODJDQWZQbDB1OW1RZWJRSEtQSmtZN1dySXVrMjA1Y1RZblllK2syWjhZQmgxMUZyYlJHL0g2aWhpcnFjYWNPZ2wyQklPOG95TVFMZVh3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvcnVudGltZSI6IFsiQGVtbmFwaS9ydW50aW1lQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLWV3dllsazg2eFVvR0kwelFSTnEvbUMrMTZSMVFlRGxLUXkyMUtpM29TWVhOZ0xiNDVHVjFQNkEwTSsvczZueUN1TkRxZTVWcGFZODRCelhHd1Zid0ZBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvd2FzaS10aHJlYWRzIjogWyJAZW1uYXBpL3dhc2ktdGhyZWFkc0AxLjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXVUSUk3T1lGKy9NZXMvTXJjSU9ZcDV5T3RTTUxCV1NJb0xQcGNnd2lwb2lLYmxpNmszMjJ0Y29Gc3hvSUl4UERxVzAxU1FHQWdrbzRFelppMkJOdjJ3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BuYXBpLXJzL3dhc20tcnVudGltZSI6IFsiQG5hcGktcnMvd2FzbS1ydW50aW1lQDEuMS40IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB0eWJ5cy93YXNtLXV0aWwiOiAiXjAuMTAuMSIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuNy4xIiwgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjEiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLTNOUU5OZ0ExWVNsSmIva01IMWlsZEFTUDlIVzcvN2tZblJJMnN6V0phb2ZhUzFoV21iR0k0SCtkMysyMmFHelhYTjlJSituK0dpRlZjR2lwSlAxOG93PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0B0eWJ5cy93YXNtLXV0aWwiOiBbIkB0eWJ5cy93YXNtLXV0aWxAMC4xMC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItUm9CdkoyWDB3dUtsV0ZJanJ3ZmZHdzFJcVpIS1FxekljaEthYWRaWmZuTnBzQVlwMm1NMGgzNkp0UENqTkRBSEdnWWV6LzE1dU1CcGZHd2NoaGlNZ2c9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvdHNsaWIiOiBbInRzbGliQDIuOC4xIiwgIiIsIHsgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItb0pGdTk0SFFiK0tWZHVTVVFMN3ducG1xbmZtTHNPQS9uQWg2YjZFSDB3Q0VvSzAvbVBlWFU2YzN3S0RWODNNa091SFBSSHRTWEtLVTk5SUJhelMvMnc9PSJdLAoKICAgICJjaGFsay9zdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JANy4yLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItcXBDQXZSbDlzdHVPSHZlS3NuN0huY0pSdnY1MDFxSWFjS3pRbE8vK0x3eGM5KzBxMndMeXY0RGZ2dDgwL0RQbjJwcU9Cc0pkRGlvZ1hHUjkrT3Z3Unc9PSJdLAoKICAgICJuZXh0L3Bvc3Rjc3MiOiBbInBvc3Rjc3NAOC40LjMxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIm5hbm9pZCI6ICJeMy4zLjYiLCAicGljb2NvbG9ycyI6ICJeMS4wLjAiLCAic291cmNlLW1hcC1qcyI6ICJeMS4wLjIiIH0gfSwgInNoYTUxMi1QUzA4SWJvaWE5bXRzLzJ5Z1YzZUxwWTVnaG5VY2ZMVi9FWFRPVzFFMnFZeEpLR0dCVXROak43NkZZSG5NczM2Um1BUm40MWJDMEFabW4rclIwT1ZwUT09Il0sCiAgfQp9Cg==" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "auto",\n "name": "Auto Parts",\n "tagline": "Auto-parts storefront with vehicle fitment finder and installation booking.",\n "industry": "automotive",\n "tags": ["automotive", "parts", "fitment"],\n "stability": "stable",\n "schemaType": "AutoPartsStore",\n "mock": {\n "seedName": "auto",\n "seedBusinessId": "bus_driveline_auto"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n // Title supports a single \\n for a hard line break.\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-mono uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="text-[clamp(2.25rem,5vw,3.5rem)] font-bold mb-6 -tracking-[0.025em] leading-tight">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="text-2xl font-semibold mt-10 mb-3 -tracking-[0.02em]">\n {s.heading}\n </h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full catalogue with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/products/${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [Support / FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
4024
4219
|
|
|
4025
4220
|
import { useState } from "react";
|
|
4026
4221
|
|
|
@@ -4645,7 +4840,46 @@ export const brand: Brand = {
|
|
|
4645
4840
|
* the root layout prerenderable.
|
|
4646
4841
|
*/
|
|
4647
4842
|
export const SITE_URL = "https://example.com";
|
|
4648
|
-
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed grocery --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed grocery",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.65.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS40LjEiLCAiIiwge30sICJzaGE1MTItUDVMVU5odGJqNllmSTNpSmp3NUVMOWVVQUc2T2l0RDBXM2ZXUWNwUWpEUmMvUUlzTDB0Uk51TzFQY0R2UGNjV0wxZlNUWFhkRTFkcytsOTVEVi9PRkE9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzAuMCIsICIiLCB7fSwgInNoYTUxMi1pYkQydXN4OUpSdTdmNXB1MnRNS01JNGNwQTROZ1hKUW9ZUlA0cFE3UHhtbjFsNmsvNTNxV3RRV1pheWhZeTNYNFFaa3Q5ME90K21KRWFlWG91aW82UT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjEiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZkpJM0kwcjNDM09qL3pkQkNwYUNtQlJaWWYwN3hwYXE0eUNmRERvU0ZtK2JlV056YklsMjZwdVc4UnJhVWR1Z29Kdy85NXplck5PbjZqYXNBaHpTbWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWNLbkFoV0VzVjdUUGNBLzVFQXRlRHA2S2NKWkJRMkcrQnFFN3pheU1NaTdrTXZ3UnNidjdXVDlhT25uMFdObDRTS0VJZjQzdmpTMzFpVVB1ODBuelhnPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZS3JWd1FqSVJCUG8rNUcvdTAzd0dqYmR5NHE3cHl6Q2U5M0RLOVZKN3prVm1lZzhMSjdHYmdzaUhXZFI0eFNvZTRDQVhSRDdCY2pnYnRyNjRia1hOZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItei9vQnNSRW80NlNzRnFCd1l0RmUwa3BKZUJpakFUNDhPL1dYTEk0c3VpQ0xCa3IwM1JUdFRKTUN6U2REZDJ6bmxoOFZKaXpMMDlYVmtRZ2s4SVpvbnc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItaWs4cTdHTTExenh2WXhGYzJQZURjVDZUQnZoQ1FNYVV4ZnBoL001bDlzS3VUcy9TamczTCtCeXcwRjd3MFpWTEJabXgzMFArZ0cwRUN6ek4rTUZjbVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItUW9TeDJFa3lycmRaNmtjeUU4c3RxWjYydDBZcmE4RnM1aWE5bE94SnJoNlRNUUpLN2dRS21zY2RUSGY3cE9YS1JFS3JWd090SmNRRzNxVlNmYzg2NkE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi11d053RnB3S2VOaVphd2ZBV0JnZzBWSXp0UFRWM2loaGgxdlYzMzRoOWl2bk5Mb3J4blFNVTZGejh3RzFaYjRRaDlMQzEvTWtjeVQzWWxEWEczUnNnZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi16WTFidWw3T1dyN0RGQmlKKyt3b2ZYdm5yOEI0NWNlM1FzUVVoS3JJaFhzeWdBaDdiVGt3eWVNMWJpMWEyZzVDL3lDL044VFp5R0RFb01mbS9sOW1wZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi0wZnJsc1QvZjRGdDZJN1NNRVNUS25GM2Nac2RpY1FuMWRDTWtGL2pUOXdETEUrZ0dvaVFmdjFubVQ5ZStzN3MvZmVrdnZ5NnRaTTJqSHZJMnRrYkpEUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjEiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1YQUJWbUdwOVRnMFdzcFRWdndkdVRjNGZwcXk2Sm5BVXJTUWU2T3V5cUQvMDNuSTdyME85T1dVa01Jd0ZyaktBSXFvbHZxb0E0WnJKcHBnd0UwR3htdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLWJWNGZ6c3d1elZjS0Q5MG8vVk02UXFLeG54bERxMGcyQklTRExOVm14cm5ocHYxRERieVBoQ0lqWWZ2ellMVitNdmtLS25RdDJRNkFPODZTRUJVTFVRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4xIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLS9NaDBaaHEzT1A3ZlZzMGtjUUhaUDZsWkV0aE1HVGFTZjhVQlFZU0ZFWkRXR1hYbEVDK25KNkVxZW5hSzJ0NExCWE1lM0ErSy9HMkJWWFhkdE9yNFBRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItKzF4YzlYNDVsOHVmc0JBbTZHanZ4MnFEUklZOWxUVnQwY2dXTmNKKzFnZGhYdmtieGVQQTYweVJUd1NUdVhMMDlDTWh5Sm1qcFY3RTNOb3l4YnFGUVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4xIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0xRCtVcVpkZm51UitKeTFHZ01Kd2k4NWJENDBIMjF1Tm1PUFJXUWh3NG9SU3VvbFovQjVyaXhaNDVESzJLWE9UQ3ZtVkNlY2F1V2dFaGJ3OGJJN3RPdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUlOQXljYVd1aGxPSzN3azRtUkhHc2Rnd1lXbWQ5Y0NoZFBkRTlid1dteTZybjlWcVZOWU5GR2hPZFhyb2ZYVXh3SEluY1NpUE5iOHRObThrbkRWSWVRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS42IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItN0VIRHF1UHRoQUxTVjBqaGhqZ0VXOEZYYXZpTXg3clNxdThXNm9xQ29BdU9oS292ODE0UDk5UURWMXB4TUEzUVB2MjFZdWR2Sm5nSWhqck5JNG9wTGc9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi1NQ0ZjNjNjek1qRUluT2xjWTJjcFFDdkNOK0tnYkFuKzYweHU5Y01nUDRzS2FMQzVKTkFLdzdKSDhRZEFub0FDODhoVzFJaVNOWitHZ1ZYbE4xVWNNUT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLWg1U3hEL0l6TmhaWW5yU1pSc1VaUUlDK3ZEMEdZOGNVdnEwaXdzbWtGS2l4UkNLTExXcUNYYS9GSVE0UzFSK3NJK1BHb29qa0hzZE5yYlppTTlRcGd3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItbk9QQ21uMit5RDBaTm1LZHNYR3YvVXhNTVdiTXVLZUQ2R3lZbmNOd2RrWUR4cFF2clBTS1lqMnJXdURqQzJZNGI2dzZoamlwNWRCS0Z6RVV1WmUzdkE9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1ZaHNkRTZ4QVZmVERtemp4TDJaRFV2amorWnNneU9LZStUZFF6cWtENzJ3SU9tSGthOE51R1E2TnBUTlp2OUQyWjYzZmJ3V0tKUGVWcEV3NEVRZ1l4dz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNiIsICIiLCB7fSwgInNoYTUxMi1KRkt4TXg2dWRod0toL0xkbzI3MGUxN1FYNzEwdmd1bk1rdVBBdlhqSFN2QzZvcUxXQUhoVmhqZy9JNzFxMHUwQ0JTRXJJT0RWMUtqdjBGUU5TV2pkZz09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItRnhJWStVODFSM0xHS0N4YUhIRlJRNStnNi9pUmdHTG1lSFdkcDJBbWo0bGpRUnJFSVdIbVp5RGZEWUJSWmxweXFBN3FLeHRTOUREMWRoazhSblJJVlE9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItbUxDTmJyUWxpMTFLMXlTVW11TnQ0WlVCM09wR0lEcTRxMnZUQlRmNWNMMmxwc1JqSTlRS3FTRDBuZGpXOEZ5dmNXL0pqNDZnTWU5c3l5SEFzdk1hL0E9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjMiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLTV4b0RmWCtmTDdmYUFUbmFnbVdQcGJGdHdoL1I3N1dtTU1xcUhHUzY1QzN2dkIwWUhyZ0YrQjFZbVozNDQxdE1qNW42M2swMjEyWE5vSnd6bGhmZlF3PT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwb3N0Y3NzIjogWyJwb3N0Y3NzQDguNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy4xMiIsICJwaWNvY29sb3JzIjogIl4xLjEuMSIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjIuMSIgfSB9LCAic2hhNTEyLUZmUjhzamQ0ZW0yVDZmYjNJMk13QUpVN0hXVk1yOXpiYStlbm1RZWVXRmZDYm0rVU9DLzBYNERTOFh0cFVUTXdXTUdiaktZUDd4amZOZWt6eUdtQjNBPT0iXSwKCiAgICAicmVhY3QiOiBbInJlYWN0QDE5LjIuNiIsICIiLCB7fSwgInNoYTUxMi1zZldHR2ZhdmkweHI4UGcwc1ZzeUhNQU96aVZZS2dQTE5yUzdpZytpdk1OYjN3YkNCdzNLeHRmbHNHQkF3RDNnWVFsRS9BRVpzVExnVG9SclNDamIwUT09Il0sCgogICAgInJlYWN0LWRheS1waWNrZXIiOiBbInJlYWN0LWRheS1waWNrZXJAOS4xNC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS40LjEiLCAiQHRhYmJ5X2FpL2hpanJpLWNvbnZlcnRlciI6ICIxLjAuNSIsICJkYXRlLWZucyI6ICJeNC4xLjAiLCAiZGF0ZS1mbnMtamFsYWxpIjogIjQuMS4wLTAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0xNi44LjAiIH0gfSwgInNoYTUxMi10QmFvRFdqUHdlME01cEdydW00SDBTUjZMeWsrQk85b0hucDlKYktwR0tXMm1scmFOUGdQOUJNZnNnNXBXcHdyc3NBUm1lcWs3WUJsMm9YdXRaVGFIQT09Il0sCgogICAgInJlYWN0LWRvbSI6IFsicmVhY3QtZG9tQDE5LjIuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzY2hlZHVsZXIiOiAiXjAuMjcuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTkuMi42IiB9IH0sICJzaGE1MTItMHByTUkraHZCYlBqc1dueERMeGxDR3lNOFBONlV1V2pFVUNZbVpoTzY3eElWOVhhc2Evci92RG5xK1h5cTRMbzI3ZzhRU2JPNVl6QVJ1MEQxU3BzM2c9PSJdLAoKICAgICJyZXF1aXJlLWRpcmVjdG9yeSI6IFsicmVxdWlyZS1kaXJlY3RvcnlAMi4xLjEiLCAiIiwge30sICJzaGE1MTItZkd4RUk3K3dzRzl4cnZkanNybG1MMjJPTVRUaUhSd0FNcm9pRWVNZ3E4Z3pvTEMvUFFyN1JzUkRTVExVZy9iWkFadEYrVFZJa0hjNi80UklLcnVpK1E9PSJdLAoKICAgICJyZXNlbGVjdCI6IFsicmVzZWxlY3RANS4yLjAiLCAiIiwge30sICJzaGE1MTItQWdaM1VPWm0zWW5kZnJKNE9ZamdyVDdibUNtLzFpcWtqdkVmSC9vWWp6aDZQRDJxdzRRdVQzampuWElycGR0NE1UcE1YY2xNVDNsWGJtUlkrWFJha3c9PSJdLAoKICAgICJyb2xsZG93biI6IFsicm9sbGRvd25AMS4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQG94Yy1wcm9qZWN0L3R5cGVzIjogIj0wLjEzMC4wIiwgIkByb2xsZG93bi9wbHVnaW51dGlscyI6ICJeMS4wLjAiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZnJlZWJzZC14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtbXVzbCI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1wcGM2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgteDY0LW11c2wiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzItYXJtNjQtbXN2YyI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2YyI6ICIxLjAuMSIgfSwgImJpbiI6IHsgInJvbGxkb3duIjogImJpbi9jbGkubWpzIiB9IH0sICJzaGE1MTItWDBLUUhsak5uRWtXTnFxaXo5ekpyR3VuaDFCMEhnT3hMWHZuRnBDT2NhZHpjeTVxb2haM3RxTUVVZzAwdm5jb1Jvdlh1SzNacUNUOUtubkt6b0luRlE9PSJdLAoKICAgICJyeGpzIjogWyJyeGpzQDcuOC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjEuMCIgfSB9LCAic2hhNTEyLWRoS2Y5MDNVL1BRWlk2Ym9OTnRBR2RXYkc4NVdBYmpULzF4WW9aSUM3RkFZMHlXYXBPQlFWc1ZyRGw1OFc4Ni8vZTFWcE1OQnRSVjRNYVhmZE15U0ZBPT0iXSwKCiAgICAic2NoZWR1bGVyIjogWyJzY2hlZHVsZXJAMC4yNy4wIiwgIiIsIHt9LCAic2hhNTEyLWVOditXclZiS3UxZjN2YllKVC94dGlGNXN5QTVIUElNdGY5SWdZL25LZzBzV3F6QVVFdnFZL3htN09jWmMvcWFmTHgvaU85RmdPbWVTQXA0djV0aS9RPT0iXSwKCiAgICAic2VtdmVyIjogWyJzZW12ZXJANy44LjAiLCAiIiwgeyAiYmluIjogeyAic2VtdmVyIjogImJpbi9zZW12ZXIuanMiIH0gfSwgInNoYTUxMi1BY003ZFYvNXVsNEVla29RMjlBZ201dnJpOEpOcVJ5ajM5bzBxcFg2dkRGMkdacnR1dFpsNVJ3Z0QxWG5aamlUQWZuY3NKaE1JNDhRUUgzc044N1lOQT09Il0sCgogICAgInNoYXJwIjogWyJzaGFycEAwLjM0LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGltZy9jb2xvdXIiOiAiXjEuMC4wIiwgImRldGVjdC1saWJjIjogIl4yLjEuMiIsICJzZW12ZXIiOiAiXjcuNy4zIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWRhcndpbi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtczM5MHgiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGludXgtYXJtIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXBwYzY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4bXVzbC1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eG11c2wteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdhc20zMiI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1pYTMyIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLXg2NCI6ICIwLjM0LjUiIH0gfSwgInNoYTUxMi1PdTlJNUZ0OVdOY0NiWHJVOWNNZ1BCY0NLOExpd0xxY2J5d1czdDRvRFYzN24xcHpwdU5Mc1lpQVY4ZU9EbmpidFFsU0R3WjJjVUVlUXo0RTU0SGx0Zz09Il0sCgogICAgInNoZWxsLXF1b3RlIjogWyJzaGVsbC1xdW90ZUAxLjguMyIsICIiLCB7fSwgInNoYTUxMi1PYm1uSUY0aFhOZzFCcWhuSG1nYkRFVEY4ZExQQ2dnWldCamtRZmhacGJzelpuWXVyNURVbGpUY0NIaWk1TEMzSjVFMHllTy8xTElNeUgrVXZIUWd5dz09Il0sCgogICAgInNpZ2luZm8iOiBbInNpZ2luZm9AMi4wLjAiLCAiIiwge30sICJzaGE1MTIteWJ4MFdPMS84YlNCTEVXWFp2RWQ3Z01XM1NuM0pGbFczVHZYMW5SRWJETFJOUU5hZU5OOFdLMG1lQndQZEFhT0k3VHRSUlJKbi9FczF6aHJyQ0h1N2c9PSJdLAoKICAgICJzb3VyY2UtbWFwIjogWyJzb3VyY2UtbWFwQDAuNi4xIiwgIiIsIHt9LCAic2hhNTEyLVVqZ2FwdW1XbGJNaGtCZ3pUN1lrYzVZWFVUNDZGMGlLdThTR1hxMGJjd1A1ZHovaDBQbGo2ZW5KcWp6MVpicTJsNVdhcVluclZid1dPV015RjNGNDdnPT0iXSwKCiAgICAic291cmNlLW1hcC1qcyI6IFsic291cmNlLW1hcC1qc0AxLjIuMSIsICIiLCB7fSwgInNoYTUxMi1VWFdNS2hMT3dWS2I3MjhJVXRRUFh4ZllVK3VzZHlidFVySy84dUdFOENRTXZyaE9wd3Z6REJ3ajBRaFNMN01RYzd2SXNJU0JHOFZROCtJRFF4cGZRQT09Il0sCgogICAgInNvdXJjZS1tYXAtc3VwcG9ydCI6IFsic291cmNlLW1hcC1zdXBwb3J0QDAuNS4yMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJidWZmZXItZnJvbSI6ICJeMS4wLjAiLCAic291cmNlLW1hcCI6ICJeMC42LjAiIH0gfSwgInNoYTUxMi11QkhVM0wzY3pzSXlZWEtYODhmZHJHb3Z4ZFNDb1RHRFJaNlNZWHRTUnhMWlV6SGc1UC82Nkh0NnVvVWxIdTlFWm9kK2luWGhLbzNxUWd3WFVUL3kxdz09Il0sCgogICAgInN0YWNrYmFjayI6IFsic3RhY2tiYWNrQDAuMC4yIiwgIiIsIHt9LCAic2hhNTEyLTFYTUpFNWZRbzFqR0g2WS83ZWJud1BPQkVrSUVuVDRRRjMyZDVSMStWWGRYdmVNMElCTUp0OHpmYXhYMVAzUWhWd3JZZSs1NzYramtBTnRTUzJtQmJ3PT0iXSwKCiAgICAic3RkLWVudiI6IFsic3RkLWVudkA0LjEuMCIsICIiLCB7fSwgInNoYTUxMi1ScTd5YmNYMlJ1QzU1cjlvYVBWRVc3L3h1M3RqOHU0R2VCWUhCV0N5Y2hGdHpNSXI4NkE3ZTNQUEVCUFQzN3NIU3RLWDMrVGlYL0ZyL0FDbUpMVmxMUT09Il0sCgogICAgInN0cmluZy13aWR0aCI6IFsic3RyaW5nLXdpZHRoQDQuMi4zIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImVtb2ppLXJlZ2V4IjogIl44LjAuMCIsICJpcy1mdWxsd2lkdGgtY29kZS1wb2ludCI6ICJeMy4wLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiIH0gfSwgInNoYTUxMi13S3lRUlFwakowc0lwNjJFclNaZEdzak1KV3NhcDVvUk5paEhodTZHN0pWTy85aklCNlV5ZXZMK3RYdU9xcm5nOGovY3hLVFd5V1V3dlNUcmlpWnovZz09Il0sCgogICAgInN0cmlwLWFuc2kiOiBbInN0cmlwLWFuc2lANi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1yZWdleCI6ICJeNS4wLjEiIH0gfSwgInNoYTUxMi1ZMzhWUFNIY3FrRnJDcEZuUTl2dVNYbXF1dXY1b1hPS3BHZVQ2YUdycjNvM0djOUFsVmE2SkJmVVNPQ25ieEdHWkYrLzBvb0k3S3JQdVVTenRVZFU1QT09Il0sCgogICAgInN0eWxlZC1qc3giOiBbInN0eWxlZC1qc3hANS4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY2xpZW50LW9ubHkiOiAiMC4wLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0gMTYuOC4wIHx8IDE3LngueCB8fCBeMTguMC4wLTAgfHwgXjE5LjAuMC0wIiB9IH0sICJzaGE1MTItcVNWeURUZU1vdGR2UVlvSFdMTkd3UkZKSEMraStadmRCUllvc09GZ0MrV2cxdng0ZnJOMi9SRy9OQTdTWXFxdktOTGYzOVAyTFNSQTJwdTZuMFhZWkE9PSJdLAoKICAgICJzdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JAOC4xLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItTXBVRU4yT29kdFV6eHZLUWw3MmNVRjdSUTVFaUhzR3ZTc1ZHMGlhOWM1UmJXR0wyQ0k0QzdFcFBTOFVUQklwbG5selppTnVWNTZ3K0Z1Tnh5M3R5MlE9PSJdLAoKICAgICJ0YWlsd2luZC1tZXJnZSI6IFsidGFpbHdpbmQtbWVyZ2VAMy42LjAiLCAiIiwge30sICJzaGE1MTItdXhMN3FBVlFyaXFSUVBBeUszcGo2NlZxc2tXcW9aMzdQVzk0andPVHdOZnEvejlveXUxVitlcXJacXRSMitmQ2lYZFlPWmUvTW9kdDhHdHZxTnp1K3c9PSJdLAoKICAgICJ0YWlsd2luZGNzcyI6IFsidGFpbHdpbmRjc3NANC4zLjAiLCAiIiwge30sICJzaGE1MTIteTZueE1HQjFuTVc5UjZrOTZlNWdkSUZ6Y2ZML2dUSlJOYXFHZXMxWXZrTG5QVlh6V2dicUZGMnlMQzBUOEc3NzRuMjRjeDNQZThYcktvbmlDT0FIK1E9PSJdLAoKICAgICJ0YXBhYmxlIjogWyJ0YXBhYmxlQDIuMy4zIiwgIiIsIHt9LCAic2hhNTEyLXV4Yy96cHFGZzZ4N0M4dk9FN2xoNkxiZGE4ZUVMOXptVm0vUExlVFBCUmhoMXhDZ2RXYVErSjFDVWllR3BJZm0ySGR0c1VwUnYrSHNoaWFzQk1jYzZBPT0iXSwKCiAgICAidGVyc2VyIjogWyJ0ZXJzZXJANS4xNi45IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiAiXjAuMy4yIiwgImFjb3JuIjogIl44LjUuMCIsICJjb21tYW5kZXIiOiAiXjIuMjAuMCIsICJzb3VyY2UtbWFwLXN1cHBvcnQiOiAifjAuNS4yMCIgfSwgImJpbiI6IHsgInRlcnNlciI6ICJiaW4vdGVyc2VyIiB9IH0sICJzaGE1MTItSFBhL0ZkVEI5WEdJMkgxL2tlTEZaSHhsNldOdkFJNFlhbEhHdERRVGxNbkpjb3FTYWIxVXdMNGwxaEdFaHM2L0dtTEhCWklnL1lnQisramNiem9PRWc9PSJdLAoKICAgICJ0aW55YmVuY2giOiBbInRpbnliZW5jaEAyLjkuMCIsICIiLCB7fSwgInNoYTUxMi0wK0RVdnFXTVZhbExtaGE2bHI0a0Q4aUFNSzFIelYwL2FLbkN0V2I5djk2NDFUblAvTUZiN1BjMmJ4b3hRalRYQUVycnlYVmdVT2Z2MllxTmxscUdlZz09Il0sCgogICAgInRpbnlleGVjIjogWyJ0aW55ZXhlY0AxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1kQXFTcUUvUmFicEJLSTgraDI2R2ZMcTZWYjNKVlhzMzBYWVFqZE1qYWovYzJ0UzhJWVlNYkl6UDU5OUt0Umo3YzU3L3dZQXBiM1FqZ1JnWG1yQ3VrQT09Il0sCgogICAgInRpbnlnbG9iYnkiOiBbInRpbnlnbG9iYnlAMC4yLjE2IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImZkaXIiOiAiXjYuNS4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiIH0gfSwgInNoYTUxMi1wbjk5VmhvQUNZUjhuRkhoeHFpeCt1dnNiWGluZUFhc1dtNW9qWG9OOHhFd0s1S2QzL1RyaE5uMXdCeXVENTJVeFdSTHk4cHUra1JNbmlFaTZFcTlaZz09Il0sCgogICAgInRpbnlyYWluYm93IjogWyJ0aW55cmFpbmJvd0AzLjEuMCIsICIiLCB7fSwgInNoYTUxMi1CZitJTG1CZ3JldFVyZEp4elhNMFNnWExaM1hmaWFVdU9qL0lLUUh1VFhpcCswNVhuK3V5RVlkVmcwa1lEaXBUQmNMckNWeVV6QVB6N1FtQXJiMG1tdz09Il0sCgogICAgInRyZWUta2lsbCI6IFsidHJlZS1raWxsQDEuMi4yIiwgIiIsIHsgImJpbiI6IHsgInRyZWUta2lsbCI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1MME9ycGk4cUdwUkcvL05kK0g5MHZGQiszaUhudWUxelNTR21OT09DaDFHTEo3clVLVndWMkh2aWpwaEdRUzJVbWhVWmV3UzlWZ3Z4WUlkZ3IrZkcxQT09Il0sCgogICAgInRzbGliIjogWyJ0c2xpYkAyLjguMSIsICIiLCB7fSwgInNoYTUxMi1vSkZ1OTRIUWIrS1ZkdVNVUUw3d25wbXFuZm1Mc09BL25BaDZiNkVIMHdDRW9LMC9tUGVYVTZjM3dLRFY4M01rT3VIUFJIdFNYS0tVOTlJQmF6Uy8ydz09Il0sCgogICAgInR5cGVzY3JpcHQiOiBbInR5cGVzY3JpcHRANS45LjMiLCAiIiwgeyAiYmluIjogeyAidHNjIjogImJpbi90c2MiLCAidHNzZXJ2ZXIiOiAiYmluL3Rzc2VydmVyIiB9IH0sICJzaGE1MTItamwxdlp6UERpbkxyOWVVdDNKL3Q3VjZGZ05FdzlRanZCUGR5c3o5S2ZRREQ0MWZRckMyWTR2S1FkaWFVcEZUNGJYbGIxUkhoTHBwOHd0bTZNNVRnU3c9PSJdLAoKICAgICJ1bmRpY2ktdHlwZXMiOiBbInVuZGljaS10eXBlc0A2LjIxLjAiLCAiIiwge30sICJzaGE1MTItaXdEWnFnMFFBR3JnOVJhdjVING4wTTY0YzNta1I1OWNKNndRcCs3QzRuSTBnc21FeGFlZGFZTE5PNDRlVDRBdEJCd2piVGlHUE1sdDJNZDBUOUg5SlE9PSJdLAoKICAgICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6IFsidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmVAMS42LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIl4xNi44LjAgfHwgXjE3LjAuMCB8fCBeMTguMC4wIHx8IF4xOS4wLjAiIH0gfSwgInNoYTUxMi1QcDZHU3dHUC9OclBJcnhWRkFJa09RZXl3OGxGZW5PSGlqUVdrVVRyRHZyRjRBTHF5bFAyQy9LQ2tlUzlkcFVNM0t2WVJRaG5hNXZ0N0lMOTUrWlE5dz09Il0sCgogICAgInZpdGUiOiBbInZpdGVAOC4wLjEzIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2NzcyI6ICJeMS4zMi4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiLCAicG9zdGNzcyI6ICJeOC41LjE0IiwgInJvbGxkb3duIjogIjEuMC4xIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNiIgfSwgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiZnNldmVudHMiOiAifjIuMy4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkB0eXBlcy9ub2RlIjogIl4yMC4xOS4wIHx8ID49MjIuMTIuMCIsICJAdml0ZWpzL2RldnRvb2xzIjogIl4wLjEuMTgiLCAiZXNidWlsZCI6ICJeMC4yNy4wIHx8IF4wLjI4LjAiLCAiaml0aSI6ICI+PTEuMjEuMCIsICJsZXNzIjogIl40LjAuMCIsICJzYXNzIjogIl4xLjcwLjAiLCAic2Fzcy1lbWJlZGRlZCI6ICJeMS43MC4wIiwgInN0eWx1cyI6ICI+PTAuNTQuOCIsICJzdWdhcnNzIjogIl41LjAuMCIsICJ0ZXJzZXIiOiAiXjUuMTYuMCIsICJ0c3giOiAiXjQuOC4xIiwgInlhbWwiOiAiXjIuNC4yIiB9LCAib3B0aW9uYWxQZWVycyI6IFsiQHR5cGVzL25vZGUiLCAiQHZpdGVqcy9kZXZ0b29scyIsICJlc2J1aWxkIiwgImppdGkiLCAibGVzcyIsICJzYXNzIiwgInNhc3MtZW1iZWRkZWQiLCAic3R5bHVzIiwgInN1Z2Fyc3MiLCAidGVyc2VyIiwgInRzeCIsICJ5YW1sIl0sICJiaW4iOiB7ICJ2aXRlIjogImJpbi92aXRlLmpzIiB9IH0sICJzaGE1MTItTUZ0akJZZ3ptU3htZ0E0UkFmakl5WFdwR2Uxb0FMbmpnVVR6elY3UUx4L1RLeEN6anRNSDZGZDkvZVZLKzVGZzFxTm96NVZBd3NtTXMvTm9mcm1Kdnc9PSJdLAoKICAgICJ2aXRlc3QiOiBbInZpdGVzdEA0LjEuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdml0ZXN0L2V4cGVjdCI6ICI0LjEuNiIsICJAdml0ZXN0L21vY2tlciI6ICI0LjEuNiIsICJAdml0ZXN0L3ByZXR0eS1mb3JtYXQiOiAiNC4xLjYiLCAiQHZpdGVzdC9ydW5uZXIiOiAiNC4xLjYiLCAiQHZpdGVzdC9zbmFwc2hvdCI6ICI0LjEuNiIsICJAdml0ZXN0L3NweSI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgImVzLW1vZHVsZS1sZXhlciI6ICJeMi4wLjAiLCAiZXhwZWN0LXR5cGUiOiAiXjEuMy4wIiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJvYnVnIjogIl4yLjEuMSIsICJwYXRoZSI6ICJeMi4wLjMiLCAicGljb21hdGNoIjogIl40LjAuMyIsICJzdGQtZW52IjogIl40LjAuMC1yYy4xIiwgInRpbnliZW5jaCI6ICJeMi45LjAiLCAidGlueWV4ZWMiOiAiXjEuMC4yIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNSIsICJ0aW55cmFpbmJvdyI6ICJeMy4xLjAiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIsICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogIl4yLjMuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZWRnZS1ydW50aW1lL3ZtIjogIioiLCAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjkuMCIsICJAdHlwZXMvbm9kZSI6ICJeMjAuMC4wIHx8IF4yMi4wLjAgfHwgPj0yNC4wLjAiLCAiQHZpdGVzdC9icm93c2VyLXBsYXl3cmlnaHQiOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXByZXZpZXciOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXdlYmRyaXZlcmlvIjogIjQuMS42IiwgIkB2aXRlc3QvY292ZXJhZ2UtaXN0YW5idWwiOiAiNC4xLjYiLCAiQHZpdGVzdC9jb3ZlcmFnZS12OCI6ICI0LjEuNiIsICJAdml0ZXN0L3VpIjogIjQuMS42IiwgImhhcHB5LWRvbSI6ICIqIiwgImpzZG9tIjogIioiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZWRnZS1ydW50aW1lL3ZtIiwgIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAdHlwZXMvbm9kZSIsICJAdml0ZXN0L2Jyb3dzZXItcGxheXdyaWdodCIsICJAdml0ZXN0L2Jyb3dzZXItcHJldmlldyIsICJAdml0ZXN0L2Jyb3dzZXItd2ViZHJpdmVyaW8iLCAiQHZpdGVzdC9jb3ZlcmFnZS1pc3RhbmJ1bCIsICJAdml0ZXN0L2NvdmVyYWdlLXY4IiwgIkB2aXRlc3QvdWkiLCAiaGFwcHktZG9tIiwgImpzZG9tIl0sICJiaW4iOiB7ICJ2aXRlc3QiOiAidml0ZXN0Lm1qcyIgfSB9LCAic2hhNTEyLTZsdmpiUzNwOWI0Q3JkQ21ndXpiaDIvNHVvWGhHRTJxNzFSNE9YNXNxRjlSMWJvOVhkNmZHck1BZnZwNXduQ3psQm5GVmRDT3A2b251VFFWYm84aVVRPT0iXSwKCiAgICAid2h5LWlzLW5vZGUtcnVubmluZyI6IFsid2h5LWlzLW5vZGUtcnVubmluZ0AyLjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzaWdpbmZvIjogIl4yLjAuMCIsICJzdGFja2JhY2siOiAiMC4wLjIiIH0sICJiaW4iOiB7ICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLWhVcm1hV0JkVkRjeHZZcW55aDA5enVuS3pST1dqYlpUaU55OGRCRWprUzdlaEVEUWliWEo3WHZsbXRid3VUY2xVaUl5TitDeVhRRDRWbWtvOGZObTh3PT0iXSwKCiAgICAid3JhcC1hbnNpIjogWyJ3cmFwLWFuc2lANy4wLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMC4wIiwgInN0cmluZy13aWR0aCI6ICJeNC4xLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjAiIH0gfSwgInNoYTUxMi1ZVkdJajJrYW1MU1R4dzZOc1pqb0J4ZlN3c24weWNkZXNtYzRwK1EyMWM1elB1WjFwbCtOZnhWZHhQdGRIdm1OVk9RNlhTWUc0QVV0eXQvRmk3RDE2UT09Il0sCgogICAgInhzcyI6IFsieHNzQDEuMC4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb21tYW5kZXIiOiAiXjIuMjAuMyIsICJjc3NmaWx0ZXIiOiAiMC4wLjEwIiB9LCAiYmluIjogeyAieHNzIjogImJpbi94c3MiIH0gfSwgInNoYTUxMi1GVmRsVlZDNjdXT0lQdmZPd2hvTUVUVjcyZjZHYlc3YU9hYkJDM1d4Ti9vVWRvRU1EeUx6NE9nUnY1L2djazJaZU5xRVF1K1RiMGtsb292WE9mcFlWZz09Il0sCgogICAgInkxOG4iOiBbInkxOG5ANS4wLjgiLCAiIiwge30sICJzaGE1MTItMHBmRnplZ2VEV0pISklBbVRMUlAyRHdIamRGNXM3am85dHV6dGRReEFoSU5DZHZTKzNuR0lOcVBkMDBBcGhxSlIvMExoQU5VUzYvKzdTQ2I5OFlPZkE9PSJdLAoKICAgICJ5YW1sIjogWyJ5YW1sQDIuOS4wIiwgIiIsIHsgImJpbiI6IHsgInlhbWwiOiAiYmluLm1qcyIgfSB9LCAic2hhNTEyLTJBdmhOWDNtYjh6ZDZaeTdJTlR0U3BsMUYxNUhXNlducWowc3JXbGtLTGNwWWwvZ01JTUppeXVHcTJLZUkyWUZ4VVBqZGxCKzNMYzEwc2VNTHRMNGNBPT0iXSwKCiAgICAieWFyZ3MiOiBbInlhcmdzQDE3LjcuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjbGl1aSI6ICJeOC4wLjEiLCAiZXNjYWxhZGUiOiAiXjMuMS4xIiwgImdldC1jYWxsZXItZmlsZSI6ICJeMi4wLjUiLCAicmVxdWlyZS1kaXJlY3RvcnkiOiAiXjIuMS4xIiwgInN0cmluZy13aWR0aCI6ICJeNC4yLjMiLCAieTE4biI6ICJeNS4wLjUiLCAieWFyZ3MtcGFyc2VyIjogIl4yMS4xLjEiIH0gfSwgInNoYTUxMi03ZFN6elJRKytDS25OSS9rcktuWVJWN0pLS1BVWE1FaDYxc29hSEtnOW1yV0VoekZXaEZueFB4R2wrNjljRDFPdTYzQzEzTlVQQ25tSWNydnFDdU02dz09Il0sCgogICAgInlhcmdzLXBhcnNlciI6IFsieWFyZ3MtcGFyc2VyQDIxLjEuMSIsICIiLCB7fSwgInNoYTUxMi10VnBzSlc3RGRqZWNBaUZwYklCMWUzcXhJUXNFNk5vUGM1L2VUZHJiYklDNGgwTFZzV2hub2EzZyttMkhjbEJJdWpIenN4WjRWSlZBK0dVdWMyL0xCdz09Il0sCgogICAgInpvZCI6IFsiem9kQDQuNC4zIiwgIiIsIHt9LCAic2hhNTEyLXl0RU5GaklKRmwyVXdZZ2xkZTJqY2hXMkh3bTRHSkZMRGlTWFdkVHJKUUJJTjlGY3lwN240RGh4SkVpV05BSk1WMS9CcVdmVy9ra2c3MVVEY0hKeVRRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvY29yZSI6IFsiQGVtbmFwaS9jb3JlQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICIxLjIuMSIsICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXlxNk9rSjRwODJDQWZQbDB1OW1RZWJRSEtQSmtZN1dySXVrMjA1Y1RZblllK2syWjhZQmgxMUZyYlJHL0g2aWhpcnFjYWNPZ2wyQklPOG95TVFMZVh3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvcnVudGltZSI6IFsiQGVtbmFwaS9ydW50aW1lQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLWV3dllsazg2eFVvR0kwelFSTnEvbUMrMTZSMVFlRGxLUXkyMUtpM29TWVhOZ0xiNDVHVjFQNkEwTSsvczZueUN1TkRxZTVWcGFZODRCelhHd1Zid0ZBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvd2FzaS10aHJlYWRzIjogWyJAZW1uYXBpL3dhc2ktdGhyZWFkc0AxLjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXVUSUk3T1lGKy9NZXMvTXJjSU9ZcDV5T3RTTUxCV1NJb0xQcGNnd2lwb2lLYmxpNmszMjJ0Y29Gc3hvSUl4UERxVzAxU1FHQWdrbzRFelppMkJOdjJ3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BuYXBpLXJzL3dhc20tcnVudGltZSI6IFsiQG5hcGktcnMvd2FzbS1ydW50aW1lQDEuMS40IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB0eWJ5cy93YXNtLXV0aWwiOiAiXjAuMTAuMSIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuNy4xIiwgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjEiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLTNOUU5OZ0ExWVNsSmIva01IMWlsZEFTUDlIVzcvN2tZblJJMnN6V0phb2ZhUzFoV21iR0k0SCtkMysyMmFHelhYTjlJSituK0dpRlZjR2lwSlAxOG93PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0B0eWJ5cy93YXNtLXV0aWwiOiBbIkB0eWJ5cy93YXNtLXV0aWxAMC4xMC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItUm9CdkoyWDB3dUtsV0ZJanJ3ZmZHdzFJcVpIS1FxekljaEthYWRaWmZuTnBzQVlwMm1NMGgzNkp0UENqTkRBSEdnWWV6LzE1dU1CcGZHd2NoaGlNZ2c9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvdHNsaWIiOiBbInRzbGliQDIuOC4xIiwgIiIsIHsgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItb0pGdTk0SFFiK0tWZHVTVVFMN3ducG1xbmZtTHNPQS9uQWg2YjZFSDB3Q0VvSzAvbVBlWFU2YzN3S0RWODNNa091SFBSSHRTWEtLVTk5SUJhelMvMnc9PSJdLAoKICAgICJjaGFsay9zdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JANy4yLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItcXBDQXZSbDlzdHVPSHZlS3NuN0huY0pSdnY1MDFxSWFjS3pRbE8vK0x3eGM5KzBxMndMeXY0RGZ2dDgwL0RQbjJwcU9Cc0pkRGlvZ1hHUjkrT3Z3Unc9PSJdLAoKICAgICJuZXh0L3Bvc3Rjc3MiOiBbInBvc3Rjc3NAOC40LjMxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIm5hbm9pZCI6ICJeMy4zLjYiLCAicGljb2NvbG9ycyI6ICJeMS4wLjAiLCAic291cmNlLW1hcC1qcyI6ICJeMS4wLjIiIH0gfSwgInNoYTUxMi1QUzA4SWJvaWE5bXRzLzJ5Z1YzZUxwWTVnaG5VY2ZMVi9FWFRPVzFFMnFZeEpLR0dCVXROak43NkZZSG5NczM2Um1BUm40MWJDMEFabW4rclIwT1ZwUT09Il0sCiAgfQp9Cg==" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "grocery",\n "name": "Grocery",\n "tagline": "High-SKU grocery storefront with quick-add cart UX and delivery windows.",\n "industry": "retail",\n "tags": ["food", "grocery", "delivery"],\n "stability": "stable",\n "schemaType": "GroceryStore",\n "mock": {\n "seedName": "grocery",\n "seedBusinessId": "bus_freshmart"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-semibold uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="font-serif text-[clamp(2.25rem,5vw,3.5rem)] font-semibold mb-6 -tracking-[0.02em]">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="font-serif text-3xl font-semibold mt-10 mb-3">{s.heading}</h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full menu with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/shop?product=${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
4843
|
+
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": "middleware.ts", "kind": "text", "content": `import { NextResponse, type NextRequest } from "next/server";
|
|
4844
|
+
import { handleTokenRefresh, type OidcConfig } from "@cimplify/sdk/server";
|
|
4845
|
+
|
|
4846
|
+
function oidcConfig(): OidcConfig | null {
|
|
4847
|
+
const clientId =
|
|
4848
|
+
process.env.CIMPLIFY_CLIENT_ID?.trim() ||
|
|
4849
|
+
process.env.NEXT_PUBLIC_CIMPLIFY_CLIENT_ID?.trim() ||
|
|
4850
|
+
"";
|
|
4851
|
+
if (!clientId) return null;
|
|
4852
|
+
return {
|
|
4853
|
+
clientId,
|
|
4854
|
+
issuer: process.env.CIMPLIFY_ISSUER?.trim() || undefined,
|
|
4855
|
+
authUrl: process.env.CIMPLIFY_AUTH_URL?.trim() || undefined,
|
|
4856
|
+
};
|
|
4857
|
+
}
|
|
4858
|
+
|
|
4859
|
+
// Keeps the access token fresh before account pages render. Server Components
|
|
4860
|
+
// can't write cookies, so this is the one place the rotated token can be both
|
|
4861
|
+
// persisted (browser) and forwarded onto the current request (this render).
|
|
4862
|
+
export async function middleware(request: NextRequest) {
|
|
4863
|
+
const cfg = oidcConfig();
|
|
4864
|
+
if (!cfg) return NextResponse.next();
|
|
4865
|
+
|
|
4866
|
+
const { outcome, setCookies, cookies } = await handleTokenRefresh(request, cfg);
|
|
4867
|
+
if (outcome === "noop") return NextResponse.next();
|
|
4868
|
+
|
|
4869
|
+
for (const { name, value } of cookies) {
|
|
4870
|
+
request.cookies.set(name, value);
|
|
4871
|
+
}
|
|
4872
|
+
const response = NextResponse.next({ request });
|
|
4873
|
+
for (const cookie of setCookies) {
|
|
4874
|
+
response.headers.append("set-cookie", cookie);
|
|
4875
|
+
}
|
|
4876
|
+
return response;
|
|
4877
|
+
}
|
|
4878
|
+
|
|
4879
|
+
export const config = {
|
|
4880
|
+
matcher: ["/account/:path*"],
|
|
4881
|
+
};
|
|
4882
|
+
` }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed grocery --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed grocery",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.67.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS40LjEiLCAiIiwge30sICJzaGE1MTItUDVMVU5odGJqNllmSTNpSmp3NUVMOWVVQUc2T2l0RDBXM2ZXUWNwUWpEUmMvUUlzTDB0Uk51TzFQY0R2UGNjV0wxZlNUWFhkRTFkcytsOTVEVi9PRkE9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzAuMCIsICIiLCB7fSwgInNoYTUxMi1pYkQydXN4OUpSdTdmNXB1MnRNS01JNGNwQTROZ1hKUW9ZUlA0cFE3UHhtbjFsNmsvNTNxV3RRV1pheWhZeTNYNFFaa3Q5ME90K21KRWFlWG91aW82UT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjEiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZkpJM0kwcjNDM09qL3pkQkNwYUNtQlJaWWYwN3hwYXE0eUNmRERvU0ZtK2JlV056YklsMjZwdVc4UnJhVWR1Z29Kdy85NXplck5PbjZqYXNBaHpTbWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWNLbkFoV0VzVjdUUGNBLzVFQXRlRHA2S2NKWkJRMkcrQnFFN3pheU1NaTdrTXZ3UnNidjdXVDlhT25uMFdObDRTS0VJZjQzdmpTMzFpVVB1ODBuelhnPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZS3JWd1FqSVJCUG8rNUcvdTAzd0dqYmR5NHE3cHl6Q2U5M0RLOVZKN3prVm1lZzhMSjdHYmdzaUhXZFI0eFNvZTRDQVhSRDdCY2pnYnRyNjRia1hOZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItei9vQnNSRW80NlNzRnFCd1l0RmUwa3BKZUJpakFUNDhPL1dYTEk0c3VpQ0xCa3IwM1JUdFRKTUN6U2REZDJ6bmxoOFZKaXpMMDlYVmtRZ2s4SVpvbnc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItaWs4cTdHTTExenh2WXhGYzJQZURjVDZUQnZoQ1FNYVV4ZnBoL001bDlzS3VUcy9TamczTCtCeXcwRjd3MFpWTEJabXgzMFArZ0cwRUN6ek4rTUZjbVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItUW9TeDJFa3lycmRaNmtjeUU4c3RxWjYydDBZcmE4RnM1aWE5bE94SnJoNlRNUUpLN2dRS21zY2RUSGY3cE9YS1JFS3JWd090SmNRRzNxVlNmYzg2NkE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi11d053RnB3S2VOaVphd2ZBV0JnZzBWSXp0UFRWM2loaGgxdlYzMzRoOWl2bk5Mb3J4blFNVTZGejh3RzFaYjRRaDlMQzEvTWtjeVQzWWxEWEczUnNnZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi16WTFidWw3T1dyN0RGQmlKKyt3b2ZYdm5yOEI0NWNlM1FzUVVoS3JJaFhzeWdBaDdiVGt3eWVNMWJpMWEyZzVDL3lDL044VFp5R0RFb01mbS9sOW1wZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi0wZnJsc1QvZjRGdDZJN1NNRVNUS25GM2Nac2RpY1FuMWRDTWtGL2pUOXdETEUrZ0dvaVFmdjFubVQ5ZStzN3MvZmVrdnZ5NnRaTTJqSHZJMnRrYkpEUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjEiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1YQUJWbUdwOVRnMFdzcFRWdndkdVRjNGZwcXk2Sm5BVXJTUWU2T3V5cUQvMDNuSTdyME85T1dVa01Jd0ZyaktBSXFvbHZxb0E0WnJKcHBnd0UwR3htdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLWJWNGZ6c3d1elZjS0Q5MG8vVk02UXFLeG54bERxMGcyQklTRExOVm14cm5ocHYxRERieVBoQ0lqWWZ2ellMVitNdmtLS25RdDJRNkFPODZTRUJVTFVRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4xIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLS9NaDBaaHEzT1A3ZlZzMGtjUUhaUDZsWkV0aE1HVGFTZjhVQlFZU0ZFWkRXR1hYbEVDK25KNkVxZW5hSzJ0NExCWE1lM0ErSy9HMkJWWFhkdE9yNFBRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItKzF4YzlYNDVsOHVmc0JBbTZHanZ4MnFEUklZOWxUVnQwY2dXTmNKKzFnZGhYdmtieGVQQTYweVJUd1NUdVhMMDlDTWh5Sm1qcFY3RTNOb3l4YnFGUVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4xIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0xRCtVcVpkZm51UitKeTFHZ01Kd2k4NWJENDBIMjF1Tm1PUFJXUWh3NG9SU3VvbFovQjVyaXhaNDVESzJLWE9UQ3ZtVkNlY2F1V2dFaGJ3OGJJN3RPdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUlOQXljYVd1aGxPSzN3azRtUkhHc2Rnd1lXbWQ5Y0NoZFBkRTlid1dteTZybjlWcVZOWU5GR2hPZFhyb2ZYVXh3SEluY1NpUE5iOHRObThrbkRWSWVRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS42IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItN0VIRHF1UHRoQUxTVjBqaGhqZ0VXOEZYYXZpTXg3clNxdThXNm9xQ29BdU9oS292ODE0UDk5UURWMXB4TUEzUVB2MjFZdWR2Sm5nSWhqck5JNG9wTGc9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi1NQ0ZjNjNjek1qRUluT2xjWTJjcFFDdkNOK0tnYkFuKzYweHU5Y01nUDRzS2FMQzVKTkFLdzdKSDhRZEFub0FDODhoVzFJaVNOWitHZ1ZYbE4xVWNNUT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLWg1U3hEL0l6TmhaWW5yU1pSc1VaUUlDK3ZEMEdZOGNVdnEwaXdzbWtGS2l4UkNLTExXcUNYYS9GSVE0UzFSK3NJK1BHb29qa0hzZE5yYlppTTlRcGd3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItbk9QQ21uMit5RDBaTm1LZHNYR3YvVXhNTVdiTXVLZUQ2R3lZbmNOd2RrWUR4cFF2clBTS1lqMnJXdURqQzJZNGI2dzZoamlwNWRCS0Z6RVV1WmUzdkE9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1ZaHNkRTZ4QVZmVERtemp4TDJaRFV2amorWnNneU9LZStUZFF6cWtENzJ3SU9tSGthOE51R1E2TnBUTlp2OUQyWjYzZmJ3V0tKUGVWcEV3NEVRZ1l4dz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNiIsICIiLCB7fSwgInNoYTUxMi1KRkt4TXg2dWRod0toL0xkbzI3MGUxN1FYNzEwdmd1bk1rdVBBdlhqSFN2QzZvcUxXQUhoVmhqZy9JNzFxMHUwQ0JTRXJJT0RWMUtqdjBGUU5TV2pkZz09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItRnhJWStVODFSM0xHS0N4YUhIRlJRNStnNi9pUmdHTG1lSFdkcDJBbWo0bGpRUnJFSVdIbVp5RGZEWUJSWmxweXFBN3FLeHRTOUREMWRoazhSblJJVlE9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItbUxDTmJyUWxpMTFLMXlTVW11TnQ0WlVCM09wR0lEcTRxMnZUQlRmNWNMMmxwc1JqSTlRS3FTRDBuZGpXOEZ5dmNXL0pqNDZnTWU5c3l5SEFzdk1hL0E9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjMiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLTV4b0RmWCtmTDdmYUFUbmFnbVdQcGJGdHdoL1I3N1dtTU1xcUhHUzY1QzN2dkIwWUhyZ0YrQjFZbVozNDQxdE1qNW42M2swMjEyWE5vSnd6bGhmZlF3PT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwb3N0Y3NzIjogWyJwb3N0Y3NzQDguNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy4xMiIsICJwaWNvY29sb3JzIjogIl4xLjEuMSIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjIuMSIgfSB9LCAic2hhNTEyLUZmUjhzamQ0ZW0yVDZmYjNJMk13QUpVN0hXVk1yOXpiYStlbm1RZWVXRmZDYm0rVU9DLzBYNERTOFh0cFVUTXdXTUdiaktZUDd4amZOZWt6eUdtQjNBPT0iXSwKCiAgICAicmVhY3QiOiBbInJlYWN0QDE5LjIuNiIsICIiLCB7fSwgInNoYTUxMi1zZldHR2ZhdmkweHI4UGcwc1ZzeUhNQU96aVZZS2dQTE5yUzdpZytpdk1OYjN3YkNCdzNLeHRmbHNHQkF3RDNnWVFsRS9BRVpzVExnVG9SclNDamIwUT09Il0sCgogICAgInJlYWN0LWRheS1waWNrZXIiOiBbInJlYWN0LWRheS1waWNrZXJAOS4xNC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS40LjEiLCAiQHRhYmJ5X2FpL2hpanJpLWNvbnZlcnRlciI6ICIxLjAuNSIsICJkYXRlLWZucyI6ICJeNC4xLjAiLCAiZGF0ZS1mbnMtamFsYWxpIjogIjQuMS4wLTAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0xNi44LjAiIH0gfSwgInNoYTUxMi10QmFvRFdqUHdlME01cEdydW00SDBTUjZMeWsrQk85b0hucDlKYktwR0tXMm1scmFOUGdQOUJNZnNnNXBXcHdyc3NBUm1lcWs3WUJsMm9YdXRaVGFIQT09Il0sCgogICAgInJlYWN0LWRvbSI6IFsicmVhY3QtZG9tQDE5LjIuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzY2hlZHVsZXIiOiAiXjAuMjcuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTkuMi42IiB9IH0sICJzaGE1MTItMHByTUkraHZCYlBqc1dueERMeGxDR3lNOFBONlV1V2pFVUNZbVpoTzY3eElWOVhhc2Evci92RG5xK1h5cTRMbzI3ZzhRU2JPNVl6QVJ1MEQxU3BzM2c9PSJdLAoKICAgICJyZXF1aXJlLWRpcmVjdG9yeSI6IFsicmVxdWlyZS1kaXJlY3RvcnlAMi4xLjEiLCAiIiwge30sICJzaGE1MTItZkd4RUk3K3dzRzl4cnZkanNybG1MMjJPTVRUaUhSd0FNcm9pRWVNZ3E4Z3pvTEMvUFFyN1JzUkRTVExVZy9iWkFadEYrVFZJa0hjNi80UklLcnVpK1E9PSJdLAoKICAgICJyZXNlbGVjdCI6IFsicmVzZWxlY3RANS4yLjAiLCAiIiwge30sICJzaGE1MTItQWdaM1VPWm0zWW5kZnJKNE9ZamdyVDdibUNtLzFpcWtqdkVmSC9vWWp6aDZQRDJxdzRRdVQzampuWElycGR0NE1UcE1YY2xNVDNsWGJtUlkrWFJha3c9PSJdLAoKICAgICJyb2xsZG93biI6IFsicm9sbGRvd25AMS4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQG94Yy1wcm9qZWN0L3R5cGVzIjogIj0wLjEzMC4wIiwgIkByb2xsZG93bi9wbHVnaW51dGlscyI6ICJeMS4wLjAiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZnJlZWJzZC14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtbXVzbCI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1wcGM2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgteDY0LW11c2wiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzItYXJtNjQtbXN2YyI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2YyI6ICIxLjAuMSIgfSwgImJpbiI6IHsgInJvbGxkb3duIjogImJpbi9jbGkubWpzIiB9IH0sICJzaGE1MTItWDBLUUhsak5uRWtXTnFxaXo5ekpyR3VuaDFCMEhnT3hMWHZuRnBDT2NhZHpjeTVxb2haM3RxTUVVZzAwdm5jb1Jvdlh1SzNacUNUOUtubkt6b0luRlE9PSJdLAoKICAgICJyeGpzIjogWyJyeGpzQDcuOC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjEuMCIgfSB9LCAic2hhNTEyLWRoS2Y5MDNVL1BRWlk2Ym9OTnRBR2RXYkc4NVdBYmpULzF4WW9aSUM3RkFZMHlXYXBPQlFWc1ZyRGw1OFc4Ni8vZTFWcE1OQnRSVjRNYVhmZE15U0ZBPT0iXSwKCiAgICAic2NoZWR1bGVyIjogWyJzY2hlZHVsZXJAMC4yNy4wIiwgIiIsIHt9LCAic2hhNTEyLWVOditXclZiS3UxZjN2YllKVC94dGlGNXN5QTVIUElNdGY5SWdZL25LZzBzV3F6QVVFdnFZL3htN09jWmMvcWFmTHgvaU85RmdPbWVTQXA0djV0aS9RPT0iXSwKCiAgICAic2VtdmVyIjogWyJzZW12ZXJANy44LjAiLCAiIiwgeyAiYmluIjogeyAic2VtdmVyIjogImJpbi9zZW12ZXIuanMiIH0gfSwgInNoYTUxMi1BY003ZFYvNXVsNEVla29RMjlBZ201dnJpOEpOcVJ5ajM5bzBxcFg2dkRGMkdacnR1dFpsNVJ3Z0QxWG5aamlUQWZuY3NKaE1JNDhRUUgzc044N1lOQT09Il0sCgogICAgInNoYXJwIjogWyJzaGFycEAwLjM0LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGltZy9jb2xvdXIiOiAiXjEuMC4wIiwgImRldGVjdC1saWJjIjogIl4yLjEuMiIsICJzZW12ZXIiOiAiXjcuNy4zIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWRhcndpbi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtczM5MHgiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGludXgtYXJtIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXBwYzY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4bXVzbC1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eG11c2wteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdhc20zMiI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1pYTMyIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLXg2NCI6ICIwLjM0LjUiIH0gfSwgInNoYTUxMi1PdTlJNUZ0OVdOY0NiWHJVOWNNZ1BCY0NLOExpd0xxY2J5d1czdDRvRFYzN24xcHpwdU5Mc1lpQVY4ZU9EbmpidFFsU0R3WjJjVUVlUXo0RTU0SGx0Zz09Il0sCgogICAgInNoZWxsLXF1b3RlIjogWyJzaGVsbC1xdW90ZUAxLjguMyIsICIiLCB7fSwgInNoYTUxMi1PYm1uSUY0aFhOZzFCcWhuSG1nYkRFVEY4ZExQQ2dnWldCamtRZmhacGJzelpuWXVyNURVbGpUY0NIaWk1TEMzSjVFMHllTy8xTElNeUgrVXZIUWd5dz09Il0sCgogICAgInNpZ2luZm8iOiBbInNpZ2luZm9AMi4wLjAiLCAiIiwge30sICJzaGE1MTIteWJ4MFdPMS84YlNCTEVXWFp2RWQ3Z01XM1NuM0pGbFczVHZYMW5SRWJETFJOUU5hZU5OOFdLMG1lQndQZEFhT0k3VHRSUlJKbi9FczF6aHJyQ0h1N2c9PSJdLAoKICAgICJzb3VyY2UtbWFwIjogWyJzb3VyY2UtbWFwQDAuNi4xIiwgIiIsIHt9LCAic2hhNTEyLVVqZ2FwdW1XbGJNaGtCZ3pUN1lrYzVZWFVUNDZGMGlLdThTR1hxMGJjd1A1ZHovaDBQbGo2ZW5KcWp6MVpicTJsNVdhcVluclZid1dPV015RjNGNDdnPT0iXSwKCiAgICAic291cmNlLW1hcC1qcyI6IFsic291cmNlLW1hcC1qc0AxLjIuMSIsICIiLCB7fSwgInNoYTUxMi1VWFdNS2hMT3dWS2I3MjhJVXRRUFh4ZllVK3VzZHlidFVySy84dUdFOENRTXZyaE9wd3Z6REJ3ajBRaFNMN01RYzd2SXNJU0JHOFZROCtJRFF4cGZRQT09Il0sCgogICAgInNvdXJjZS1tYXAtc3VwcG9ydCI6IFsic291cmNlLW1hcC1zdXBwb3J0QDAuNS4yMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJidWZmZXItZnJvbSI6ICJeMS4wLjAiLCAic291cmNlLW1hcCI6ICJeMC42LjAiIH0gfSwgInNoYTUxMi11QkhVM0wzY3pzSXlZWEtYODhmZHJHb3Z4ZFNDb1RHRFJaNlNZWHRTUnhMWlV6SGc1UC82Nkh0NnVvVWxIdTlFWm9kK2luWGhLbzNxUWd3WFVUL3kxdz09Il0sCgogICAgInN0YWNrYmFjayI6IFsic3RhY2tiYWNrQDAuMC4yIiwgIiIsIHt9LCAic2hhNTEyLTFYTUpFNWZRbzFqR0g2WS83ZWJud1BPQkVrSUVuVDRRRjMyZDVSMStWWGRYdmVNMElCTUp0OHpmYXhYMVAzUWhWd3JZZSs1NzYramtBTnRTUzJtQmJ3PT0iXSwKCiAgICAic3RkLWVudiI6IFsic3RkLWVudkA0LjEuMCIsICIiLCB7fSwgInNoYTUxMi1ScTd5YmNYMlJ1QzU1cjlvYVBWRVc3L3h1M3RqOHU0R2VCWUhCV0N5Y2hGdHpNSXI4NkE3ZTNQUEVCUFQzN3NIU3RLWDMrVGlYL0ZyL0FDbUpMVmxMUT09Il0sCgogICAgInN0cmluZy13aWR0aCI6IFsic3RyaW5nLXdpZHRoQDQuMi4zIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImVtb2ppLXJlZ2V4IjogIl44LjAuMCIsICJpcy1mdWxsd2lkdGgtY29kZS1wb2ludCI6ICJeMy4wLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiIH0gfSwgInNoYTUxMi13S3lRUlFwakowc0lwNjJFclNaZEdzak1KV3NhcDVvUk5paEhodTZHN0pWTy85aklCNlV5ZXZMK3RYdU9xcm5nOGovY3hLVFd5V1V3dlNUcmlpWnovZz09Il0sCgogICAgInN0cmlwLWFuc2kiOiBbInN0cmlwLWFuc2lANi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1yZWdleCI6ICJeNS4wLjEiIH0gfSwgInNoYTUxMi1ZMzhWUFNIY3FrRnJDcEZuUTl2dVNYbXF1dXY1b1hPS3BHZVQ2YUdycjNvM0djOUFsVmE2SkJmVVNPQ25ieEdHWkYrLzBvb0k3S3JQdVVTenRVZFU1QT09Il0sCgogICAgInN0eWxlZC1qc3giOiBbInN0eWxlZC1qc3hANS4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY2xpZW50LW9ubHkiOiAiMC4wLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0gMTYuOC4wIHx8IDE3LngueCB8fCBeMTguMC4wLTAgfHwgXjE5LjAuMC0wIiB9IH0sICJzaGE1MTItcVNWeURUZU1vdGR2UVlvSFdMTkd3UkZKSEMraStadmRCUllvc09GZ0MrV2cxdng0ZnJOMi9SRy9OQTdTWXFxdktOTGYzOVAyTFNSQTJwdTZuMFhZWkE9PSJdLAoKICAgICJzdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JAOC4xLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItTXBVRU4yT29kdFV6eHZLUWw3MmNVRjdSUTVFaUhzR3ZTc1ZHMGlhOWM1UmJXR0wyQ0k0QzdFcFBTOFVUQklwbG5selppTnVWNTZ3K0Z1Tnh5M3R5MlE9PSJdLAoKICAgICJ0YWlsd2luZC1tZXJnZSI6IFsidGFpbHdpbmQtbWVyZ2VAMy42LjAiLCAiIiwge30sICJzaGE1MTItdXhMN3FBVlFyaXFSUVBBeUszcGo2NlZxc2tXcW9aMzdQVzk0andPVHdOZnEvejlveXUxVitlcXJacXRSMitmQ2lYZFlPWmUvTW9kdDhHdHZxTnp1K3c9PSJdLAoKICAgICJ0YWlsd2luZGNzcyI6IFsidGFpbHdpbmRjc3NANC4zLjAiLCAiIiwge30sICJzaGE1MTIteTZueE1HQjFuTVc5UjZrOTZlNWdkSUZ6Y2ZML2dUSlJOYXFHZXMxWXZrTG5QVlh6V2dicUZGMnlMQzBUOEc3NzRuMjRjeDNQZThYcktvbmlDT0FIK1E9PSJdLAoKICAgICJ0YXBhYmxlIjogWyJ0YXBhYmxlQDIuMy4zIiwgIiIsIHt9LCAic2hhNTEyLXV4Yy96cHFGZzZ4N0M4dk9FN2xoNkxiZGE4ZUVMOXptVm0vUExlVFBCUmhoMXhDZ2RXYVErSjFDVWllR3BJZm0ySGR0c1VwUnYrSHNoaWFzQk1jYzZBPT0iXSwKCiAgICAidGVyc2VyIjogWyJ0ZXJzZXJANS4xNi45IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiAiXjAuMy4yIiwgImFjb3JuIjogIl44LjUuMCIsICJjb21tYW5kZXIiOiAiXjIuMjAuMCIsICJzb3VyY2UtbWFwLXN1cHBvcnQiOiAifjAuNS4yMCIgfSwgImJpbiI6IHsgInRlcnNlciI6ICJiaW4vdGVyc2VyIiB9IH0sICJzaGE1MTItSFBhL0ZkVEI5WEdJMkgxL2tlTEZaSHhsNldOdkFJNFlhbEhHdERRVGxNbkpjb3FTYWIxVXdMNGwxaEdFaHM2L0dtTEhCWklnL1lnQisramNiem9PRWc9PSJdLAoKICAgICJ0aW55YmVuY2giOiBbInRpbnliZW5jaEAyLjkuMCIsICIiLCB7fSwgInNoYTUxMi0wK0RVdnFXTVZhbExtaGE2bHI0a0Q4aUFNSzFIelYwL2FLbkN0V2I5djk2NDFUblAvTUZiN1BjMmJ4b3hRalRYQUVycnlYVmdVT2Z2MllxTmxscUdlZz09Il0sCgogICAgInRpbnlleGVjIjogWyJ0aW55ZXhlY0AxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1kQXFTcUUvUmFicEJLSTgraDI2R2ZMcTZWYjNKVlhzMzBYWVFqZE1qYWovYzJ0UzhJWVlNYkl6UDU5OUt0Umo3YzU3L3dZQXBiM1FqZ1JnWG1yQ3VrQT09Il0sCgogICAgInRpbnlnbG9iYnkiOiBbInRpbnlnbG9iYnlAMC4yLjE2IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImZkaXIiOiAiXjYuNS4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiIH0gfSwgInNoYTUxMi1wbjk5VmhvQUNZUjhuRkhoeHFpeCt1dnNiWGluZUFhc1dtNW9qWG9OOHhFd0s1S2QzL1RyaE5uMXdCeXVENTJVeFdSTHk4cHUra1JNbmlFaTZFcTlaZz09Il0sCgogICAgInRpbnlyYWluYm93IjogWyJ0aW55cmFpbmJvd0AzLjEuMCIsICIiLCB7fSwgInNoYTUxMi1CZitJTG1CZ3JldFVyZEp4elhNMFNnWExaM1hmaWFVdU9qL0lLUUh1VFhpcCswNVhuK3V5RVlkVmcwa1lEaXBUQmNMckNWeVV6QVB6N1FtQXJiMG1tdz09Il0sCgogICAgInRyZWUta2lsbCI6IFsidHJlZS1raWxsQDEuMi4yIiwgIiIsIHsgImJpbiI6IHsgInRyZWUta2lsbCI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1MME9ycGk4cUdwUkcvL05kK0g5MHZGQiszaUhudWUxelNTR21OT09DaDFHTEo3clVLVndWMkh2aWpwaEdRUzJVbWhVWmV3UzlWZ3Z4WUlkZ3IrZkcxQT09Il0sCgogICAgInRzbGliIjogWyJ0c2xpYkAyLjguMSIsICIiLCB7fSwgInNoYTUxMi1vSkZ1OTRIUWIrS1ZkdVNVUUw3d25wbXFuZm1Mc09BL25BaDZiNkVIMHdDRW9LMC9tUGVYVTZjM3dLRFY4M01rT3VIUFJIdFNYS0tVOTlJQmF6Uy8ydz09Il0sCgogICAgInR5cGVzY3JpcHQiOiBbInR5cGVzY3JpcHRANS45LjMiLCAiIiwgeyAiYmluIjogeyAidHNjIjogImJpbi90c2MiLCAidHNzZXJ2ZXIiOiAiYmluL3Rzc2VydmVyIiB9IH0sICJzaGE1MTItamwxdlp6UERpbkxyOWVVdDNKL3Q3VjZGZ05FdzlRanZCUGR5c3o5S2ZRREQ0MWZRckMyWTR2S1FkaWFVcEZUNGJYbGIxUkhoTHBwOHd0bTZNNVRnU3c9PSJdLAoKICAgICJ1bmRpY2ktdHlwZXMiOiBbInVuZGljaS10eXBlc0A2LjIxLjAiLCAiIiwge30sICJzaGE1MTItaXdEWnFnMFFBR3JnOVJhdjVING4wTTY0YzNta1I1OWNKNndRcCs3QzRuSTBnc21FeGFlZGFZTE5PNDRlVDRBdEJCd2piVGlHUE1sdDJNZDBUOUg5SlE9PSJdLAoKICAgICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6IFsidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmVAMS42LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIl4xNi44LjAgfHwgXjE3LjAuMCB8fCBeMTguMC4wIHx8IF4xOS4wLjAiIH0gfSwgInNoYTUxMi1QcDZHU3dHUC9OclBJcnhWRkFJa09RZXl3OGxGZW5PSGlqUVdrVVRyRHZyRjRBTHF5bFAyQy9LQ2tlUzlkcFVNM0t2WVJRaG5hNXZ0N0lMOTUrWlE5dz09Il0sCgogICAgInZpdGUiOiBbInZpdGVAOC4wLjEzIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2NzcyI6ICJeMS4zMi4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiLCAicG9zdGNzcyI6ICJeOC41LjE0IiwgInJvbGxkb3duIjogIjEuMC4xIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNiIgfSwgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiZnNldmVudHMiOiAifjIuMy4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkB0eXBlcy9ub2RlIjogIl4yMC4xOS4wIHx8ID49MjIuMTIuMCIsICJAdml0ZWpzL2RldnRvb2xzIjogIl4wLjEuMTgiLCAiZXNidWlsZCI6ICJeMC4yNy4wIHx8IF4wLjI4LjAiLCAiaml0aSI6ICI+PTEuMjEuMCIsICJsZXNzIjogIl40LjAuMCIsICJzYXNzIjogIl4xLjcwLjAiLCAic2Fzcy1lbWJlZGRlZCI6ICJeMS43MC4wIiwgInN0eWx1cyI6ICI+PTAuNTQuOCIsICJzdWdhcnNzIjogIl41LjAuMCIsICJ0ZXJzZXIiOiAiXjUuMTYuMCIsICJ0c3giOiAiXjQuOC4xIiwgInlhbWwiOiAiXjIuNC4yIiB9LCAib3B0aW9uYWxQZWVycyI6IFsiQHR5cGVzL25vZGUiLCAiQHZpdGVqcy9kZXZ0b29scyIsICJlc2J1aWxkIiwgImppdGkiLCAibGVzcyIsICJzYXNzIiwgInNhc3MtZW1iZWRkZWQiLCAic3R5bHVzIiwgInN1Z2Fyc3MiLCAidGVyc2VyIiwgInRzeCIsICJ5YW1sIl0sICJiaW4iOiB7ICJ2aXRlIjogImJpbi92aXRlLmpzIiB9IH0sICJzaGE1MTItTUZ0akJZZ3ptU3htZ0E0UkFmakl5WFdwR2Uxb0FMbmpnVVR6elY3UUx4L1RLeEN6anRNSDZGZDkvZVZLKzVGZzFxTm96NVZBd3NtTXMvTm9mcm1Kdnc9PSJdLAoKICAgICJ2aXRlc3QiOiBbInZpdGVzdEA0LjEuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdml0ZXN0L2V4cGVjdCI6ICI0LjEuNiIsICJAdml0ZXN0L21vY2tlciI6ICI0LjEuNiIsICJAdml0ZXN0L3ByZXR0eS1mb3JtYXQiOiAiNC4xLjYiLCAiQHZpdGVzdC9ydW5uZXIiOiAiNC4xLjYiLCAiQHZpdGVzdC9zbmFwc2hvdCI6ICI0LjEuNiIsICJAdml0ZXN0L3NweSI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgImVzLW1vZHVsZS1sZXhlciI6ICJeMi4wLjAiLCAiZXhwZWN0LXR5cGUiOiAiXjEuMy4wIiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJvYnVnIjogIl4yLjEuMSIsICJwYXRoZSI6ICJeMi4wLjMiLCAicGljb21hdGNoIjogIl40LjAuMyIsICJzdGQtZW52IjogIl40LjAuMC1yYy4xIiwgInRpbnliZW5jaCI6ICJeMi45LjAiLCAidGlueWV4ZWMiOiAiXjEuMC4yIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNSIsICJ0aW55cmFpbmJvdyI6ICJeMy4xLjAiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIsICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogIl4yLjMuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZWRnZS1ydW50aW1lL3ZtIjogIioiLCAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjkuMCIsICJAdHlwZXMvbm9kZSI6ICJeMjAuMC4wIHx8IF4yMi4wLjAgfHwgPj0yNC4wLjAiLCAiQHZpdGVzdC9icm93c2VyLXBsYXl3cmlnaHQiOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXByZXZpZXciOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXdlYmRyaXZlcmlvIjogIjQuMS42IiwgIkB2aXRlc3QvY292ZXJhZ2UtaXN0YW5idWwiOiAiNC4xLjYiLCAiQHZpdGVzdC9jb3ZlcmFnZS12OCI6ICI0LjEuNiIsICJAdml0ZXN0L3VpIjogIjQuMS42IiwgImhhcHB5LWRvbSI6ICIqIiwgImpzZG9tIjogIioiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZWRnZS1ydW50aW1lL3ZtIiwgIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAdHlwZXMvbm9kZSIsICJAdml0ZXN0L2Jyb3dzZXItcGxheXdyaWdodCIsICJAdml0ZXN0L2Jyb3dzZXItcHJldmlldyIsICJAdml0ZXN0L2Jyb3dzZXItd2ViZHJpdmVyaW8iLCAiQHZpdGVzdC9jb3ZlcmFnZS1pc3RhbmJ1bCIsICJAdml0ZXN0L2NvdmVyYWdlLXY4IiwgIkB2aXRlc3QvdWkiLCAiaGFwcHktZG9tIiwgImpzZG9tIl0sICJiaW4iOiB7ICJ2aXRlc3QiOiAidml0ZXN0Lm1qcyIgfSB9LCAic2hhNTEyLTZsdmpiUzNwOWI0Q3JkQ21ndXpiaDIvNHVvWGhHRTJxNzFSNE9YNXNxRjlSMWJvOVhkNmZHck1BZnZwNXduQ3psQm5GVmRDT3A2b251VFFWYm84aVVRPT0iXSwKCiAgICAid2h5LWlzLW5vZGUtcnVubmluZyI6IFsid2h5LWlzLW5vZGUtcnVubmluZ0AyLjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzaWdpbmZvIjogIl4yLjAuMCIsICJzdGFja2JhY2siOiAiMC4wLjIiIH0sICJiaW4iOiB7ICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLWhVcm1hV0JkVkRjeHZZcW55aDA5enVuS3pST1dqYlpUaU55OGRCRWprUzdlaEVEUWliWEo3WHZsbXRid3VUY2xVaUl5TitDeVhRRDRWbWtvOGZObTh3PT0iXSwKCiAgICAid3JhcC1hbnNpIjogWyJ3cmFwLWFuc2lANy4wLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMC4wIiwgInN0cmluZy13aWR0aCI6ICJeNC4xLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjAiIH0gfSwgInNoYTUxMi1ZVkdJajJrYW1MU1R4dzZOc1pqb0J4ZlN3c24weWNkZXNtYzRwK1EyMWM1elB1WjFwbCtOZnhWZHhQdGRIdm1OVk9RNlhTWUc0QVV0eXQvRmk3RDE2UT09Il0sCgogICAgInhzcyI6IFsieHNzQDEuMC4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb21tYW5kZXIiOiAiXjIuMjAuMyIsICJjc3NmaWx0ZXIiOiAiMC4wLjEwIiB9LCAiYmluIjogeyAieHNzIjogImJpbi94c3MiIH0gfSwgInNoYTUxMi1GVmRsVlZDNjdXT0lQdmZPd2hvTUVUVjcyZjZHYlc3YU9hYkJDM1d4Ti9vVWRvRU1EeUx6NE9nUnY1L2djazJaZU5xRVF1K1RiMGtsb292WE9mcFlWZz09Il0sCgogICAgInkxOG4iOiBbInkxOG5ANS4wLjgiLCAiIiwge30sICJzaGE1MTItMHBmRnplZ2VEV0pISklBbVRMUlAyRHdIamRGNXM3am85dHV6dGRReEFoSU5DZHZTKzNuR0lOcVBkMDBBcGhxSlIvMExoQU5VUzYvKzdTQ2I5OFlPZkE9PSJdLAoKICAgICJ5YW1sIjogWyJ5YW1sQDIuOS4wIiwgIiIsIHsgImJpbiI6IHsgInlhbWwiOiAiYmluLm1qcyIgfSB9LCAic2hhNTEyLTJBdmhOWDNtYjh6ZDZaeTdJTlR0U3BsMUYxNUhXNlducWowc3JXbGtLTGNwWWwvZ01JTUppeXVHcTJLZUkyWUZ4VVBqZGxCKzNMYzEwc2VNTHRMNGNBPT0iXSwKCiAgICAieWFyZ3MiOiBbInlhcmdzQDE3LjcuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjbGl1aSI6ICJeOC4wLjEiLCAiZXNjYWxhZGUiOiAiXjMuMS4xIiwgImdldC1jYWxsZXItZmlsZSI6ICJeMi4wLjUiLCAicmVxdWlyZS1kaXJlY3RvcnkiOiAiXjIuMS4xIiwgInN0cmluZy13aWR0aCI6ICJeNC4yLjMiLCAieTE4biI6ICJeNS4wLjUiLCAieWFyZ3MtcGFyc2VyIjogIl4yMS4xLjEiIH0gfSwgInNoYTUxMi03ZFN6elJRKytDS25OSS9rcktuWVJWN0pLS1BVWE1FaDYxc29hSEtnOW1yV0VoekZXaEZueFB4R2wrNjljRDFPdTYzQzEzTlVQQ25tSWNydnFDdU02dz09Il0sCgogICAgInlhcmdzLXBhcnNlciI6IFsieWFyZ3MtcGFyc2VyQDIxLjEuMSIsICIiLCB7fSwgInNoYTUxMi10VnBzSlc3RGRqZWNBaUZwYklCMWUzcXhJUXNFNk5vUGM1L2VUZHJiYklDNGgwTFZzV2hub2EzZyttMkhjbEJJdWpIenN4WjRWSlZBK0dVdWMyL0xCdz09Il0sCgogICAgInpvZCI6IFsiem9kQDQuNC4zIiwgIiIsIHt9LCAic2hhNTEyLXl0RU5GaklKRmwyVXdZZ2xkZTJqY2hXMkh3bTRHSkZMRGlTWFdkVHJKUUJJTjlGY3lwN240RGh4SkVpV05BSk1WMS9CcVdmVy9ra2c3MVVEY0hKeVRRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvY29yZSI6IFsiQGVtbmFwaS9jb3JlQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICIxLjIuMSIsICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXlxNk9rSjRwODJDQWZQbDB1OW1RZWJRSEtQSmtZN1dySXVrMjA1Y1RZblllK2syWjhZQmgxMUZyYlJHL0g2aWhpcnFjYWNPZ2wyQklPOG95TVFMZVh3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvcnVudGltZSI6IFsiQGVtbmFwaS9ydW50aW1lQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLWV3dllsazg2eFVvR0kwelFSTnEvbUMrMTZSMVFlRGxLUXkyMUtpM29TWVhOZ0xiNDVHVjFQNkEwTSsvczZueUN1TkRxZTVWcGFZODRCelhHd1Zid0ZBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvd2FzaS10aHJlYWRzIjogWyJAZW1uYXBpL3dhc2ktdGhyZWFkc0AxLjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXVUSUk3T1lGKy9NZXMvTXJjSU9ZcDV5T3RTTUxCV1NJb0xQcGNnd2lwb2lLYmxpNmszMjJ0Y29Gc3hvSUl4UERxVzAxU1FHQWdrbzRFelppMkJOdjJ3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BuYXBpLXJzL3dhc20tcnVudGltZSI6IFsiQG5hcGktcnMvd2FzbS1ydW50aW1lQDEuMS40IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB0eWJ5cy93YXNtLXV0aWwiOiAiXjAuMTAuMSIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuNy4xIiwgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjEiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLTNOUU5OZ0ExWVNsSmIva01IMWlsZEFTUDlIVzcvN2tZblJJMnN6V0phb2ZhUzFoV21iR0k0SCtkMysyMmFHelhYTjlJSituK0dpRlZjR2lwSlAxOG93PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0B0eWJ5cy93YXNtLXV0aWwiOiBbIkB0eWJ5cy93YXNtLXV0aWxAMC4xMC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItUm9CdkoyWDB3dUtsV0ZJanJ3ZmZHdzFJcVpIS1FxekljaEthYWRaWmZuTnBzQVlwMm1NMGgzNkp0UENqTkRBSEdnWWV6LzE1dU1CcGZHd2NoaGlNZ2c9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvdHNsaWIiOiBbInRzbGliQDIuOC4xIiwgIiIsIHsgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItb0pGdTk0SFFiK0tWZHVTVVFMN3ducG1xbmZtTHNPQS9uQWg2YjZFSDB3Q0VvSzAvbVBlWFU2YzN3S0RWODNNa091SFBSSHRTWEtLVTk5SUJhelMvMnc9PSJdLAoKICAgICJjaGFsay9zdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JANy4yLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItcXBDQXZSbDlzdHVPSHZlS3NuN0huY0pSdnY1MDFxSWFjS3pRbE8vK0x3eGM5KzBxMndMeXY0RGZ2dDgwL0RQbjJwcU9Cc0pkRGlvZ1hHUjkrT3Z3Unc9PSJdLAoKICAgICJuZXh0L3Bvc3Rjc3MiOiBbInBvc3Rjc3NAOC40LjMxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIm5hbm9pZCI6ICJeMy4zLjYiLCAicGljb2NvbG9ycyI6ICJeMS4wLjAiLCAic291cmNlLW1hcC1qcyI6ICJeMS4wLjIiIH0gfSwgInNoYTUxMi1QUzA4SWJvaWE5bXRzLzJ5Z1YzZUxwWTVnaG5VY2ZMVi9FWFRPVzFFMnFZeEpLR0dCVXROak43NkZZSG5NczM2Um1BUm40MWJDMEFabW4rclIwT1ZwUT09Il0sCiAgfQp9Cg==" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "grocery",\n "name": "Grocery",\n "tagline": "High-SKU grocery storefront with quick-add cart UX and delivery windows.",\n "industry": "retail",\n "tags": ["food", "grocery", "delivery"],\n "stability": "stable",\n "schemaType": "GroceryStore",\n "mock": {\n "seedName": "grocery",\n "seedBusinessId": "bus_freshmart"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-semibold uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="font-serif text-[clamp(2.25rem,5vw,3.5rem)] font-semibold mb-6 -tracking-[0.02em]">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="font-serif text-3xl font-semibold mt-10 mb-3">{s.heading}</h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full menu with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/shop?product=${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
4649
4883
|
|
|
4650
4884
|
import { useState } from "react";
|
|
4651
4885
|
|
|
@@ -5248,7 +5482,46 @@ export const brand: Brand = {
|
|
|
5248
5482
|
* the root layout prerenderable.
|
|
5249
5483
|
*/
|
|
5250
5484
|
export const SITE_URL = "https://example.com";
|
|
5251
|
-
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed services --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed services",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.65.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS40LjEiLCAiIiwge30sICJzaGE1MTItUDVMVU5odGJqNllmSTNpSmp3NUVMOWVVQUc2T2l0RDBXM2ZXUWNwUWpEUmMvUUlzTDB0Uk51TzFQY0R2UGNjV0wxZlNUWFhkRTFkcytsOTVEVi9PRkE9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzAuMCIsICIiLCB7fSwgInNoYTUxMi1pYkQydXN4OUpSdTdmNXB1MnRNS01JNGNwQTROZ1hKUW9ZUlA0cFE3UHhtbjFsNmsvNTNxV3RRV1pheWhZeTNYNFFaa3Q5ME90K21KRWFlWG91aW82UT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjEiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZkpJM0kwcjNDM09qL3pkQkNwYUNtQlJaWWYwN3hwYXE0eUNmRERvU0ZtK2JlV056YklsMjZwdVc4UnJhVWR1Z29Kdy85NXplck5PbjZqYXNBaHpTbWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWNLbkFoV0VzVjdUUGNBLzVFQXRlRHA2S2NKWkJRMkcrQnFFN3pheU1NaTdrTXZ3UnNidjdXVDlhT25uMFdObDRTS0VJZjQzdmpTMzFpVVB1ODBuelhnPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZS3JWd1FqSVJCUG8rNUcvdTAzd0dqYmR5NHE3cHl6Q2U5M0RLOVZKN3prVm1lZzhMSjdHYmdzaUhXZFI0eFNvZTRDQVhSRDdCY2pnYnRyNjRia1hOZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItei9vQnNSRW80NlNzRnFCd1l0RmUwa3BKZUJpakFUNDhPL1dYTEk0c3VpQ0xCa3IwM1JUdFRKTUN6U2REZDJ6bmxoOFZKaXpMMDlYVmtRZ2s4SVpvbnc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItaWs4cTdHTTExenh2WXhGYzJQZURjVDZUQnZoQ1FNYVV4ZnBoL001bDlzS3VUcy9TamczTCtCeXcwRjd3MFpWTEJabXgzMFArZ0cwRUN6ek4rTUZjbVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItUW9TeDJFa3lycmRaNmtjeUU4c3RxWjYydDBZcmE4RnM1aWE5bE94SnJoNlRNUUpLN2dRS21zY2RUSGY3cE9YS1JFS3JWd090SmNRRzNxVlNmYzg2NkE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi11d053RnB3S2VOaVphd2ZBV0JnZzBWSXp0UFRWM2loaGgxdlYzMzRoOWl2bk5Mb3J4blFNVTZGejh3RzFaYjRRaDlMQzEvTWtjeVQzWWxEWEczUnNnZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi16WTFidWw3T1dyN0RGQmlKKyt3b2ZYdm5yOEI0NWNlM1FzUVVoS3JJaFhzeWdBaDdiVGt3eWVNMWJpMWEyZzVDL3lDL044VFp5R0RFb01mbS9sOW1wZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi0wZnJsc1QvZjRGdDZJN1NNRVNUS25GM2Nac2RpY1FuMWRDTWtGL2pUOXdETEUrZ0dvaVFmdjFubVQ5ZStzN3MvZmVrdnZ5NnRaTTJqSHZJMnRrYkpEUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjEiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1YQUJWbUdwOVRnMFdzcFRWdndkdVRjNGZwcXk2Sm5BVXJTUWU2T3V5cUQvMDNuSTdyME85T1dVa01Jd0ZyaktBSXFvbHZxb0E0WnJKcHBnd0UwR3htdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLWJWNGZ6c3d1elZjS0Q5MG8vVk02UXFLeG54bERxMGcyQklTRExOVm14cm5ocHYxRERieVBoQ0lqWWZ2ellMVitNdmtLS25RdDJRNkFPODZTRUJVTFVRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4xIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLS9NaDBaaHEzT1A3ZlZzMGtjUUhaUDZsWkV0aE1HVGFTZjhVQlFZU0ZFWkRXR1hYbEVDK25KNkVxZW5hSzJ0NExCWE1lM0ErSy9HMkJWWFhkdE9yNFBRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItKzF4YzlYNDVsOHVmc0JBbTZHanZ4MnFEUklZOWxUVnQwY2dXTmNKKzFnZGhYdmtieGVQQTYweVJUd1NUdVhMMDlDTWh5Sm1qcFY3RTNOb3l4YnFGUVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4xIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0xRCtVcVpkZm51UitKeTFHZ01Kd2k4NWJENDBIMjF1Tm1PUFJXUWh3NG9SU3VvbFovQjVyaXhaNDVESzJLWE9UQ3ZtVkNlY2F1V2dFaGJ3OGJJN3RPdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUlOQXljYVd1aGxPSzN3azRtUkhHc2Rnd1lXbWQ5Y0NoZFBkRTlid1dteTZybjlWcVZOWU5GR2hPZFhyb2ZYVXh3SEluY1NpUE5iOHRObThrbkRWSWVRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS42IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItN0VIRHF1UHRoQUxTVjBqaGhqZ0VXOEZYYXZpTXg3clNxdThXNm9xQ29BdU9oS292ODE0UDk5UURWMXB4TUEzUVB2MjFZdWR2Sm5nSWhqck5JNG9wTGc9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi1NQ0ZjNjNjek1qRUluT2xjWTJjcFFDdkNOK0tnYkFuKzYweHU5Y01nUDRzS2FMQzVKTkFLdzdKSDhRZEFub0FDODhoVzFJaVNOWitHZ1ZYbE4xVWNNUT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLWg1U3hEL0l6TmhaWW5yU1pSc1VaUUlDK3ZEMEdZOGNVdnEwaXdzbWtGS2l4UkNLTExXcUNYYS9GSVE0UzFSK3NJK1BHb29qa0hzZE5yYlppTTlRcGd3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItbk9QQ21uMit5RDBaTm1LZHNYR3YvVXhNTVdiTXVLZUQ2R3lZbmNOd2RrWUR4cFF2clBTS1lqMnJXdURqQzJZNGI2dzZoamlwNWRCS0Z6RVV1WmUzdkE9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1ZaHNkRTZ4QVZmVERtemp4TDJaRFV2amorWnNneU9LZStUZFF6cWtENzJ3SU9tSGthOE51R1E2TnBUTlp2OUQyWjYzZmJ3V0tKUGVWcEV3NEVRZ1l4dz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNiIsICIiLCB7fSwgInNoYTUxMi1KRkt4TXg2dWRod0toL0xkbzI3MGUxN1FYNzEwdmd1bk1rdVBBdlhqSFN2QzZvcUxXQUhoVmhqZy9JNzFxMHUwQ0JTRXJJT0RWMUtqdjBGUU5TV2pkZz09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItRnhJWStVODFSM0xHS0N4YUhIRlJRNStnNi9pUmdHTG1lSFdkcDJBbWo0bGpRUnJFSVdIbVp5RGZEWUJSWmxweXFBN3FLeHRTOUREMWRoazhSblJJVlE9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItbUxDTmJyUWxpMTFLMXlTVW11TnQ0WlVCM09wR0lEcTRxMnZUQlRmNWNMMmxwc1JqSTlRS3FTRDBuZGpXOEZ5dmNXL0pqNDZnTWU5c3l5SEFzdk1hL0E9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjMiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLTV4b0RmWCtmTDdmYUFUbmFnbVdQcGJGdHdoL1I3N1dtTU1xcUhHUzY1QzN2dkIwWUhyZ0YrQjFZbVozNDQxdE1qNW42M2swMjEyWE5vSnd6bGhmZlF3PT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwb3N0Y3NzIjogWyJwb3N0Y3NzQDguNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy4xMiIsICJwaWNvY29sb3JzIjogIl4xLjEuMSIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjIuMSIgfSB9LCAic2hhNTEyLUZmUjhzamQ0ZW0yVDZmYjNJMk13QUpVN0hXVk1yOXpiYStlbm1RZWVXRmZDYm0rVU9DLzBYNERTOFh0cFVUTXdXTUdiaktZUDd4amZOZWt6eUdtQjNBPT0iXSwKCiAgICAicmVhY3QiOiBbInJlYWN0QDE5LjIuNiIsICIiLCB7fSwgInNoYTUxMi1zZldHR2ZhdmkweHI4UGcwc1ZzeUhNQU96aVZZS2dQTE5yUzdpZytpdk1OYjN3YkNCdzNLeHRmbHNHQkF3RDNnWVFsRS9BRVpzVExnVG9SclNDamIwUT09Il0sCgogICAgInJlYWN0LWRheS1waWNrZXIiOiBbInJlYWN0LWRheS1waWNrZXJAOS4xNC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS40LjEiLCAiQHRhYmJ5X2FpL2hpanJpLWNvbnZlcnRlciI6ICIxLjAuNSIsICJkYXRlLWZucyI6ICJeNC4xLjAiLCAiZGF0ZS1mbnMtamFsYWxpIjogIjQuMS4wLTAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0xNi44LjAiIH0gfSwgInNoYTUxMi10QmFvRFdqUHdlME01cEdydW00SDBTUjZMeWsrQk85b0hucDlKYktwR0tXMm1scmFOUGdQOUJNZnNnNXBXcHdyc3NBUm1lcWs3WUJsMm9YdXRaVGFIQT09Il0sCgogICAgInJlYWN0LWRvbSI6IFsicmVhY3QtZG9tQDE5LjIuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzY2hlZHVsZXIiOiAiXjAuMjcuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTkuMi42IiB9IH0sICJzaGE1MTItMHByTUkraHZCYlBqc1dueERMeGxDR3lNOFBONlV1V2pFVUNZbVpoTzY3eElWOVhhc2Evci92RG5xK1h5cTRMbzI3ZzhRU2JPNVl6QVJ1MEQxU3BzM2c9PSJdLAoKICAgICJyZXF1aXJlLWRpcmVjdG9yeSI6IFsicmVxdWlyZS1kaXJlY3RvcnlAMi4xLjEiLCAiIiwge30sICJzaGE1MTItZkd4RUk3K3dzRzl4cnZkanNybG1MMjJPTVRUaUhSd0FNcm9pRWVNZ3E4Z3pvTEMvUFFyN1JzUkRTVExVZy9iWkFadEYrVFZJa0hjNi80UklLcnVpK1E9PSJdLAoKICAgICJyZXNlbGVjdCI6IFsicmVzZWxlY3RANS4yLjAiLCAiIiwge30sICJzaGE1MTItQWdaM1VPWm0zWW5kZnJKNE9ZamdyVDdibUNtLzFpcWtqdkVmSC9vWWp6aDZQRDJxdzRRdVQzampuWElycGR0NE1UcE1YY2xNVDNsWGJtUlkrWFJha3c9PSJdLAoKICAgICJyb2xsZG93biI6IFsicm9sbGRvd25AMS4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQG94Yy1wcm9qZWN0L3R5cGVzIjogIj0wLjEzMC4wIiwgIkByb2xsZG93bi9wbHVnaW51dGlscyI6ICJeMS4wLjAiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZnJlZWJzZC14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtbXVzbCI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1wcGM2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgteDY0LW11c2wiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzItYXJtNjQtbXN2YyI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2YyI6ICIxLjAuMSIgfSwgImJpbiI6IHsgInJvbGxkb3duIjogImJpbi9jbGkubWpzIiB9IH0sICJzaGE1MTItWDBLUUhsak5uRWtXTnFxaXo5ekpyR3VuaDFCMEhnT3hMWHZuRnBDT2NhZHpjeTVxb2haM3RxTUVVZzAwdm5jb1Jvdlh1SzNacUNUOUtubkt6b0luRlE9PSJdLAoKICAgICJyeGpzIjogWyJyeGpzQDcuOC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjEuMCIgfSB9LCAic2hhNTEyLWRoS2Y5MDNVL1BRWlk2Ym9OTnRBR2RXYkc4NVdBYmpULzF4WW9aSUM3RkFZMHlXYXBPQlFWc1ZyRGw1OFc4Ni8vZTFWcE1OQnRSVjRNYVhmZE15U0ZBPT0iXSwKCiAgICAic2NoZWR1bGVyIjogWyJzY2hlZHVsZXJAMC4yNy4wIiwgIiIsIHt9LCAic2hhNTEyLWVOditXclZiS3UxZjN2YllKVC94dGlGNXN5QTVIUElNdGY5SWdZL25LZzBzV3F6QVVFdnFZL3htN09jWmMvcWFmTHgvaU85RmdPbWVTQXA0djV0aS9RPT0iXSwKCiAgICAic2VtdmVyIjogWyJzZW12ZXJANy44LjAiLCAiIiwgeyAiYmluIjogeyAic2VtdmVyIjogImJpbi9zZW12ZXIuanMiIH0gfSwgInNoYTUxMi1BY003ZFYvNXVsNEVla29RMjlBZ201dnJpOEpOcVJ5ajM5bzBxcFg2dkRGMkdacnR1dFpsNVJ3Z0QxWG5aamlUQWZuY3NKaE1JNDhRUUgzc044N1lOQT09Il0sCgogICAgInNoYXJwIjogWyJzaGFycEAwLjM0LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGltZy9jb2xvdXIiOiAiXjEuMC4wIiwgImRldGVjdC1saWJjIjogIl4yLjEuMiIsICJzZW12ZXIiOiAiXjcuNy4zIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWRhcndpbi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtczM5MHgiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGludXgtYXJtIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXBwYzY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4bXVzbC1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eG11c2wteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdhc20zMiI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1pYTMyIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLXg2NCI6ICIwLjM0LjUiIH0gfSwgInNoYTUxMi1PdTlJNUZ0OVdOY0NiWHJVOWNNZ1BCY0NLOExpd0xxY2J5d1czdDRvRFYzN24xcHpwdU5Mc1lpQVY4ZU9EbmpidFFsU0R3WjJjVUVlUXo0RTU0SGx0Zz09Il0sCgogICAgInNoZWxsLXF1b3RlIjogWyJzaGVsbC1xdW90ZUAxLjguMyIsICIiLCB7fSwgInNoYTUxMi1PYm1uSUY0aFhOZzFCcWhuSG1nYkRFVEY4ZExQQ2dnWldCamtRZmhacGJzelpuWXVyNURVbGpUY0NIaWk1TEMzSjVFMHllTy8xTElNeUgrVXZIUWd5dz09Il0sCgogICAgInNpZ2luZm8iOiBbInNpZ2luZm9AMi4wLjAiLCAiIiwge30sICJzaGE1MTIteWJ4MFdPMS84YlNCTEVXWFp2RWQ3Z01XM1NuM0pGbFczVHZYMW5SRWJETFJOUU5hZU5OOFdLMG1lQndQZEFhT0k3VHRSUlJKbi9FczF6aHJyQ0h1N2c9PSJdLAoKICAgICJzb3VyY2UtbWFwIjogWyJzb3VyY2UtbWFwQDAuNi4xIiwgIiIsIHt9LCAic2hhNTEyLVVqZ2FwdW1XbGJNaGtCZ3pUN1lrYzVZWFVUNDZGMGlLdThTR1hxMGJjd1A1ZHovaDBQbGo2ZW5KcWp6MVpicTJsNVdhcVluclZid1dPV015RjNGNDdnPT0iXSwKCiAgICAic291cmNlLW1hcC1qcyI6IFsic291cmNlLW1hcC1qc0AxLjIuMSIsICIiLCB7fSwgInNoYTUxMi1VWFdNS2hMT3dWS2I3MjhJVXRRUFh4ZllVK3VzZHlidFVySy84dUdFOENRTXZyaE9wd3Z6REJ3ajBRaFNMN01RYzd2SXNJU0JHOFZROCtJRFF4cGZRQT09Il0sCgogICAgInNvdXJjZS1tYXAtc3VwcG9ydCI6IFsic291cmNlLW1hcC1zdXBwb3J0QDAuNS4yMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJidWZmZXItZnJvbSI6ICJeMS4wLjAiLCAic291cmNlLW1hcCI6ICJeMC42LjAiIH0gfSwgInNoYTUxMi11QkhVM0wzY3pzSXlZWEtYODhmZHJHb3Z4ZFNDb1RHRFJaNlNZWHRTUnhMWlV6SGc1UC82Nkh0NnVvVWxIdTlFWm9kK2luWGhLbzNxUWd3WFVUL3kxdz09Il0sCgogICAgInN0YWNrYmFjayI6IFsic3RhY2tiYWNrQDAuMC4yIiwgIiIsIHt9LCAic2hhNTEyLTFYTUpFNWZRbzFqR0g2WS83ZWJud1BPQkVrSUVuVDRRRjMyZDVSMStWWGRYdmVNMElCTUp0OHpmYXhYMVAzUWhWd3JZZSs1NzYramtBTnRTUzJtQmJ3PT0iXSwKCiAgICAic3RkLWVudiI6IFsic3RkLWVudkA0LjEuMCIsICIiLCB7fSwgInNoYTUxMi1ScTd5YmNYMlJ1QzU1cjlvYVBWRVc3L3h1M3RqOHU0R2VCWUhCV0N5Y2hGdHpNSXI4NkE3ZTNQUEVCUFQzN3NIU3RLWDMrVGlYL0ZyL0FDbUpMVmxMUT09Il0sCgogICAgInN0cmluZy13aWR0aCI6IFsic3RyaW5nLXdpZHRoQDQuMi4zIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImVtb2ppLXJlZ2V4IjogIl44LjAuMCIsICJpcy1mdWxsd2lkdGgtY29kZS1wb2ludCI6ICJeMy4wLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiIH0gfSwgInNoYTUxMi13S3lRUlFwakowc0lwNjJFclNaZEdzak1KV3NhcDVvUk5paEhodTZHN0pWTy85aklCNlV5ZXZMK3RYdU9xcm5nOGovY3hLVFd5V1V3dlNUcmlpWnovZz09Il0sCgogICAgInN0cmlwLWFuc2kiOiBbInN0cmlwLWFuc2lANi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1yZWdleCI6ICJeNS4wLjEiIH0gfSwgInNoYTUxMi1ZMzhWUFNIY3FrRnJDcEZuUTl2dVNYbXF1dXY1b1hPS3BHZVQ2YUdycjNvM0djOUFsVmE2SkJmVVNPQ25ieEdHWkYrLzBvb0k3S3JQdVVTenRVZFU1QT09Il0sCgogICAgInN0eWxlZC1qc3giOiBbInN0eWxlZC1qc3hANS4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY2xpZW50LW9ubHkiOiAiMC4wLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0gMTYuOC4wIHx8IDE3LngueCB8fCBeMTguMC4wLTAgfHwgXjE5LjAuMC0wIiB9IH0sICJzaGE1MTItcVNWeURUZU1vdGR2UVlvSFdMTkd3UkZKSEMraStadmRCUllvc09GZ0MrV2cxdng0ZnJOMi9SRy9OQTdTWXFxdktOTGYzOVAyTFNSQTJwdTZuMFhZWkE9PSJdLAoKICAgICJzdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JAOC4xLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItTXBVRU4yT29kdFV6eHZLUWw3MmNVRjdSUTVFaUhzR3ZTc1ZHMGlhOWM1UmJXR0wyQ0k0QzdFcFBTOFVUQklwbG5selppTnVWNTZ3K0Z1Tnh5M3R5MlE9PSJdLAoKICAgICJ0YWlsd2luZC1tZXJnZSI6IFsidGFpbHdpbmQtbWVyZ2VAMy42LjAiLCAiIiwge30sICJzaGE1MTItdXhMN3FBVlFyaXFSUVBBeUszcGo2NlZxc2tXcW9aMzdQVzk0andPVHdOZnEvejlveXUxVitlcXJacXRSMitmQ2lYZFlPWmUvTW9kdDhHdHZxTnp1K3c9PSJdLAoKICAgICJ0YWlsd2luZGNzcyI6IFsidGFpbHdpbmRjc3NANC4zLjAiLCAiIiwge30sICJzaGE1MTIteTZueE1HQjFuTVc5UjZrOTZlNWdkSUZ6Y2ZML2dUSlJOYXFHZXMxWXZrTG5QVlh6V2dicUZGMnlMQzBUOEc3NzRuMjRjeDNQZThYcktvbmlDT0FIK1E9PSJdLAoKICAgICJ0YXBhYmxlIjogWyJ0YXBhYmxlQDIuMy4zIiwgIiIsIHt9LCAic2hhNTEyLXV4Yy96cHFGZzZ4N0M4dk9FN2xoNkxiZGE4ZUVMOXptVm0vUExlVFBCUmhoMXhDZ2RXYVErSjFDVWllR3BJZm0ySGR0c1VwUnYrSHNoaWFzQk1jYzZBPT0iXSwKCiAgICAidGVyc2VyIjogWyJ0ZXJzZXJANS4xNi45IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiAiXjAuMy4yIiwgImFjb3JuIjogIl44LjUuMCIsICJjb21tYW5kZXIiOiAiXjIuMjAuMCIsICJzb3VyY2UtbWFwLXN1cHBvcnQiOiAifjAuNS4yMCIgfSwgImJpbiI6IHsgInRlcnNlciI6ICJiaW4vdGVyc2VyIiB9IH0sICJzaGE1MTItSFBhL0ZkVEI5WEdJMkgxL2tlTEZaSHhsNldOdkFJNFlhbEhHdERRVGxNbkpjb3FTYWIxVXdMNGwxaEdFaHM2L0dtTEhCWklnL1lnQisramNiem9PRWc9PSJdLAoKICAgICJ0aW55YmVuY2giOiBbInRpbnliZW5jaEAyLjkuMCIsICIiLCB7fSwgInNoYTUxMi0wK0RVdnFXTVZhbExtaGE2bHI0a0Q4aUFNSzFIelYwL2FLbkN0V2I5djk2NDFUblAvTUZiN1BjMmJ4b3hRalRYQUVycnlYVmdVT2Z2MllxTmxscUdlZz09Il0sCgogICAgInRpbnlleGVjIjogWyJ0aW55ZXhlY0AxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1kQXFTcUUvUmFicEJLSTgraDI2R2ZMcTZWYjNKVlhzMzBYWVFqZE1qYWovYzJ0UzhJWVlNYkl6UDU5OUt0Umo3YzU3L3dZQXBiM1FqZ1JnWG1yQ3VrQT09Il0sCgogICAgInRpbnlnbG9iYnkiOiBbInRpbnlnbG9iYnlAMC4yLjE2IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImZkaXIiOiAiXjYuNS4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiIH0gfSwgInNoYTUxMi1wbjk5VmhvQUNZUjhuRkhoeHFpeCt1dnNiWGluZUFhc1dtNW9qWG9OOHhFd0s1S2QzL1RyaE5uMXdCeXVENTJVeFdSTHk4cHUra1JNbmlFaTZFcTlaZz09Il0sCgogICAgInRpbnlyYWluYm93IjogWyJ0aW55cmFpbmJvd0AzLjEuMCIsICIiLCB7fSwgInNoYTUxMi1CZitJTG1CZ3JldFVyZEp4elhNMFNnWExaM1hmaWFVdU9qL0lLUUh1VFhpcCswNVhuK3V5RVlkVmcwa1lEaXBUQmNMckNWeVV6QVB6N1FtQXJiMG1tdz09Il0sCgogICAgInRyZWUta2lsbCI6IFsidHJlZS1raWxsQDEuMi4yIiwgIiIsIHsgImJpbiI6IHsgInRyZWUta2lsbCI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1MME9ycGk4cUdwUkcvL05kK0g5MHZGQiszaUhudWUxelNTR21OT09DaDFHTEo3clVLVndWMkh2aWpwaEdRUzJVbWhVWmV3UzlWZ3Z4WUlkZ3IrZkcxQT09Il0sCgogICAgInRzbGliIjogWyJ0c2xpYkAyLjguMSIsICIiLCB7fSwgInNoYTUxMi1vSkZ1OTRIUWIrS1ZkdVNVUUw3d25wbXFuZm1Mc09BL25BaDZiNkVIMHdDRW9LMC9tUGVYVTZjM3dLRFY4M01rT3VIUFJIdFNYS0tVOTlJQmF6Uy8ydz09Il0sCgogICAgInR5cGVzY3JpcHQiOiBbInR5cGVzY3JpcHRANS45LjMiLCAiIiwgeyAiYmluIjogeyAidHNjIjogImJpbi90c2MiLCAidHNzZXJ2ZXIiOiAiYmluL3Rzc2VydmVyIiB9IH0sICJzaGE1MTItamwxdlp6UERpbkxyOWVVdDNKL3Q3VjZGZ05FdzlRanZCUGR5c3o5S2ZRREQ0MWZRckMyWTR2S1FkaWFVcEZUNGJYbGIxUkhoTHBwOHd0bTZNNVRnU3c9PSJdLAoKICAgICJ1bmRpY2ktdHlwZXMiOiBbInVuZGljaS10eXBlc0A2LjIxLjAiLCAiIiwge30sICJzaGE1MTItaXdEWnFnMFFBR3JnOVJhdjVING4wTTY0YzNta1I1OWNKNndRcCs3QzRuSTBnc21FeGFlZGFZTE5PNDRlVDRBdEJCd2piVGlHUE1sdDJNZDBUOUg5SlE9PSJdLAoKICAgICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6IFsidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmVAMS42LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIl4xNi44LjAgfHwgXjE3LjAuMCB8fCBeMTguMC4wIHx8IF4xOS4wLjAiIH0gfSwgInNoYTUxMi1QcDZHU3dHUC9OclBJcnhWRkFJa09RZXl3OGxGZW5PSGlqUVdrVVRyRHZyRjRBTHF5bFAyQy9LQ2tlUzlkcFVNM0t2WVJRaG5hNXZ0N0lMOTUrWlE5dz09Il0sCgogICAgInZpdGUiOiBbInZpdGVAOC4wLjEzIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2NzcyI6ICJeMS4zMi4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiLCAicG9zdGNzcyI6ICJeOC41LjE0IiwgInJvbGxkb3duIjogIjEuMC4xIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNiIgfSwgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiZnNldmVudHMiOiAifjIuMy4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkB0eXBlcy9ub2RlIjogIl4yMC4xOS4wIHx8ID49MjIuMTIuMCIsICJAdml0ZWpzL2RldnRvb2xzIjogIl4wLjEuMTgiLCAiZXNidWlsZCI6ICJeMC4yNy4wIHx8IF4wLjI4LjAiLCAiaml0aSI6ICI+PTEuMjEuMCIsICJsZXNzIjogIl40LjAuMCIsICJzYXNzIjogIl4xLjcwLjAiLCAic2Fzcy1lbWJlZGRlZCI6ICJeMS43MC4wIiwgInN0eWx1cyI6ICI+PTAuNTQuOCIsICJzdWdhcnNzIjogIl41LjAuMCIsICJ0ZXJzZXIiOiAiXjUuMTYuMCIsICJ0c3giOiAiXjQuOC4xIiwgInlhbWwiOiAiXjIuNC4yIiB9LCAib3B0aW9uYWxQZWVycyI6IFsiQHR5cGVzL25vZGUiLCAiQHZpdGVqcy9kZXZ0b29scyIsICJlc2J1aWxkIiwgImppdGkiLCAibGVzcyIsICJzYXNzIiwgInNhc3MtZW1iZWRkZWQiLCAic3R5bHVzIiwgInN1Z2Fyc3MiLCAidGVyc2VyIiwgInRzeCIsICJ5YW1sIl0sICJiaW4iOiB7ICJ2aXRlIjogImJpbi92aXRlLmpzIiB9IH0sICJzaGE1MTItTUZ0akJZZ3ptU3htZ0E0UkFmakl5WFdwR2Uxb0FMbmpnVVR6elY3UUx4L1RLeEN6anRNSDZGZDkvZVZLKzVGZzFxTm96NVZBd3NtTXMvTm9mcm1Kdnc9PSJdLAoKICAgICJ2aXRlc3QiOiBbInZpdGVzdEA0LjEuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdml0ZXN0L2V4cGVjdCI6ICI0LjEuNiIsICJAdml0ZXN0L21vY2tlciI6ICI0LjEuNiIsICJAdml0ZXN0L3ByZXR0eS1mb3JtYXQiOiAiNC4xLjYiLCAiQHZpdGVzdC9ydW5uZXIiOiAiNC4xLjYiLCAiQHZpdGVzdC9zbmFwc2hvdCI6ICI0LjEuNiIsICJAdml0ZXN0L3NweSI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgImVzLW1vZHVsZS1sZXhlciI6ICJeMi4wLjAiLCAiZXhwZWN0LXR5cGUiOiAiXjEuMy4wIiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJvYnVnIjogIl4yLjEuMSIsICJwYXRoZSI6ICJeMi4wLjMiLCAicGljb21hdGNoIjogIl40LjAuMyIsICJzdGQtZW52IjogIl40LjAuMC1yYy4xIiwgInRpbnliZW5jaCI6ICJeMi45LjAiLCAidGlueWV4ZWMiOiAiXjEuMC4yIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNSIsICJ0aW55cmFpbmJvdyI6ICJeMy4xLjAiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIsICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogIl4yLjMuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZWRnZS1ydW50aW1lL3ZtIjogIioiLCAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjkuMCIsICJAdHlwZXMvbm9kZSI6ICJeMjAuMC4wIHx8IF4yMi4wLjAgfHwgPj0yNC4wLjAiLCAiQHZpdGVzdC9icm93c2VyLXBsYXl3cmlnaHQiOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXByZXZpZXciOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXdlYmRyaXZlcmlvIjogIjQuMS42IiwgIkB2aXRlc3QvY292ZXJhZ2UtaXN0YW5idWwiOiAiNC4xLjYiLCAiQHZpdGVzdC9jb3ZlcmFnZS12OCI6ICI0LjEuNiIsICJAdml0ZXN0L3VpIjogIjQuMS42IiwgImhhcHB5LWRvbSI6ICIqIiwgImpzZG9tIjogIioiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZWRnZS1ydW50aW1lL3ZtIiwgIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAdHlwZXMvbm9kZSIsICJAdml0ZXN0L2Jyb3dzZXItcGxheXdyaWdodCIsICJAdml0ZXN0L2Jyb3dzZXItcHJldmlldyIsICJAdml0ZXN0L2Jyb3dzZXItd2ViZHJpdmVyaW8iLCAiQHZpdGVzdC9jb3ZlcmFnZS1pc3RhbmJ1bCIsICJAdml0ZXN0L2NvdmVyYWdlLXY4IiwgIkB2aXRlc3QvdWkiLCAiaGFwcHktZG9tIiwgImpzZG9tIl0sICJiaW4iOiB7ICJ2aXRlc3QiOiAidml0ZXN0Lm1qcyIgfSB9LCAic2hhNTEyLTZsdmpiUzNwOWI0Q3JkQ21ndXpiaDIvNHVvWGhHRTJxNzFSNE9YNXNxRjlSMWJvOVhkNmZHck1BZnZwNXduQ3psQm5GVmRDT3A2b251VFFWYm84aVVRPT0iXSwKCiAgICAid2h5LWlzLW5vZGUtcnVubmluZyI6IFsid2h5LWlzLW5vZGUtcnVubmluZ0AyLjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzaWdpbmZvIjogIl4yLjAuMCIsICJzdGFja2JhY2siOiAiMC4wLjIiIH0sICJiaW4iOiB7ICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLWhVcm1hV0JkVkRjeHZZcW55aDA5enVuS3pST1dqYlpUaU55OGRCRWprUzdlaEVEUWliWEo3WHZsbXRid3VUY2xVaUl5TitDeVhRRDRWbWtvOGZObTh3PT0iXSwKCiAgICAid3JhcC1hbnNpIjogWyJ3cmFwLWFuc2lANy4wLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMC4wIiwgInN0cmluZy13aWR0aCI6ICJeNC4xLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjAiIH0gfSwgInNoYTUxMi1ZVkdJajJrYW1MU1R4dzZOc1pqb0J4ZlN3c24weWNkZXNtYzRwK1EyMWM1elB1WjFwbCtOZnhWZHhQdGRIdm1OVk9RNlhTWUc0QVV0eXQvRmk3RDE2UT09Il0sCgogICAgInhzcyI6IFsieHNzQDEuMC4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb21tYW5kZXIiOiAiXjIuMjAuMyIsICJjc3NmaWx0ZXIiOiAiMC4wLjEwIiB9LCAiYmluIjogeyAieHNzIjogImJpbi94c3MiIH0gfSwgInNoYTUxMi1GVmRsVlZDNjdXT0lQdmZPd2hvTUVUVjcyZjZHYlc3YU9hYkJDM1d4Ti9vVWRvRU1EeUx6NE9nUnY1L2djazJaZU5xRVF1K1RiMGtsb292WE9mcFlWZz09Il0sCgogICAgInkxOG4iOiBbInkxOG5ANS4wLjgiLCAiIiwge30sICJzaGE1MTItMHBmRnplZ2VEV0pISklBbVRMUlAyRHdIamRGNXM3am85dHV6dGRReEFoSU5DZHZTKzNuR0lOcVBkMDBBcGhxSlIvMExoQU5VUzYvKzdTQ2I5OFlPZkE9PSJdLAoKICAgICJ5YW1sIjogWyJ5YW1sQDIuOS4wIiwgIiIsIHsgImJpbiI6IHsgInlhbWwiOiAiYmluLm1qcyIgfSB9LCAic2hhNTEyLTJBdmhOWDNtYjh6ZDZaeTdJTlR0U3BsMUYxNUhXNlducWowc3JXbGtLTGNwWWwvZ01JTUppeXVHcTJLZUkyWUZ4VVBqZGxCKzNMYzEwc2VNTHRMNGNBPT0iXSwKCiAgICAieWFyZ3MiOiBbInlhcmdzQDE3LjcuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjbGl1aSI6ICJeOC4wLjEiLCAiZXNjYWxhZGUiOiAiXjMuMS4xIiwgImdldC1jYWxsZXItZmlsZSI6ICJeMi4wLjUiLCAicmVxdWlyZS1kaXJlY3RvcnkiOiAiXjIuMS4xIiwgInN0cmluZy13aWR0aCI6ICJeNC4yLjMiLCAieTE4biI6ICJeNS4wLjUiLCAieWFyZ3MtcGFyc2VyIjogIl4yMS4xLjEiIH0gfSwgInNoYTUxMi03ZFN6elJRKytDS25OSS9rcktuWVJWN0pLS1BVWE1FaDYxc29hSEtnOW1yV0VoekZXaEZueFB4R2wrNjljRDFPdTYzQzEzTlVQQ25tSWNydnFDdU02dz09Il0sCgogICAgInlhcmdzLXBhcnNlciI6IFsieWFyZ3MtcGFyc2VyQDIxLjEuMSIsICIiLCB7fSwgInNoYTUxMi10VnBzSlc3RGRqZWNBaUZwYklCMWUzcXhJUXNFNk5vUGM1L2VUZHJiYklDNGgwTFZzV2hub2EzZyttMkhjbEJJdWpIenN4WjRWSlZBK0dVdWMyL0xCdz09Il0sCgogICAgInpvZCI6IFsiem9kQDQuNC4zIiwgIiIsIHt9LCAic2hhNTEyLXl0RU5GaklKRmwyVXdZZ2xkZTJqY2hXMkh3bTRHSkZMRGlTWFdkVHJKUUJJTjlGY3lwN240RGh4SkVpV05BSk1WMS9CcVdmVy9ra2c3MVVEY0hKeVRRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvY29yZSI6IFsiQGVtbmFwaS9jb3JlQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICIxLjIuMSIsICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXlxNk9rSjRwODJDQWZQbDB1OW1RZWJRSEtQSmtZN1dySXVrMjA1Y1RZblllK2syWjhZQmgxMUZyYlJHL0g2aWhpcnFjYWNPZ2wyQklPOG95TVFMZVh3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvcnVudGltZSI6IFsiQGVtbmFwaS9ydW50aW1lQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLWV3dllsazg2eFVvR0kwelFSTnEvbUMrMTZSMVFlRGxLUXkyMUtpM29TWVhOZ0xiNDVHVjFQNkEwTSsvczZueUN1TkRxZTVWcGFZODRCelhHd1Zid0ZBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvd2FzaS10aHJlYWRzIjogWyJAZW1uYXBpL3dhc2ktdGhyZWFkc0AxLjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXVUSUk3T1lGKy9NZXMvTXJjSU9ZcDV5T3RTTUxCV1NJb0xQcGNnd2lwb2lLYmxpNmszMjJ0Y29Gc3hvSUl4UERxVzAxU1FHQWdrbzRFelppMkJOdjJ3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BuYXBpLXJzL3dhc20tcnVudGltZSI6IFsiQG5hcGktcnMvd2FzbS1ydW50aW1lQDEuMS40IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB0eWJ5cy93YXNtLXV0aWwiOiAiXjAuMTAuMSIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuNy4xIiwgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjEiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLTNOUU5OZ0ExWVNsSmIva01IMWlsZEFTUDlIVzcvN2tZblJJMnN6V0phb2ZhUzFoV21iR0k0SCtkMysyMmFHelhYTjlJSituK0dpRlZjR2lwSlAxOG93PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0B0eWJ5cy93YXNtLXV0aWwiOiBbIkB0eWJ5cy93YXNtLXV0aWxAMC4xMC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItUm9CdkoyWDB3dUtsV0ZJanJ3ZmZHdzFJcVpIS1FxekljaEthYWRaWmZuTnBzQVlwMm1NMGgzNkp0UENqTkRBSEdnWWV6LzE1dU1CcGZHd2NoaGlNZ2c9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvdHNsaWIiOiBbInRzbGliQDIuOC4xIiwgIiIsIHsgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItb0pGdTk0SFFiK0tWZHVTVVFMN3ducG1xbmZtTHNPQS9uQWg2YjZFSDB3Q0VvSzAvbVBlWFU2YzN3S0RWODNNa091SFBSSHRTWEtLVTk5SUJhelMvMnc9PSJdLAoKICAgICJjaGFsay9zdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JANy4yLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItcXBDQXZSbDlzdHVPSHZlS3NuN0huY0pSdnY1MDFxSWFjS3pRbE8vK0x3eGM5KzBxMndMeXY0RGZ2dDgwL0RQbjJwcU9Cc0pkRGlvZ1hHUjkrT3Z3Unc9PSJdLAoKICAgICJuZXh0L3Bvc3Rjc3MiOiBbInBvc3Rjc3NAOC40LjMxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIm5hbm9pZCI6ICJeMy4zLjYiLCAicGljb2NvbG9ycyI6ICJeMS4wLjAiLCAic291cmNlLW1hcC1qcyI6ICJeMS4wLjIiIH0gfSwgInNoYTUxMi1QUzA4SWJvaWE5bXRzLzJ5Z1YzZUxwWTVnaG5VY2ZMVi9FWFRPVzFFMnFZeEpLR0dCVXROak43NkZZSG5NczM2Um1BUm40MWJDMEFabW4rclIwT1ZwUT09Il0sCiAgfQp9Cg==" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "services",\n "name": "Services",\n "tagline": "Bookable-services storefront with calendar slots and staff profiles.",\n "industry": "services",\n "tags": ["services", "bookings", "appointments"],\n "stability": "stable",\n "schemaType": "BeautySalon",\n "mock": {\n "seedName": "services",\n "seedBusinessId": "bus_serene_spa"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-semibold uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="font-serif text-[clamp(2.25rem,5vw,3.5rem)] font-semibold mb-6 -tracking-[0.02em]">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="font-serif text-3xl font-semibold mt-10 mb-3">{s.heading}</h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full menu with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/shop?product=${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
5485
|
+
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": "middleware.ts", "kind": "text", "content": `import { NextResponse, type NextRequest } from "next/server";
|
|
5486
|
+
import { handleTokenRefresh, type OidcConfig } from "@cimplify/sdk/server";
|
|
5487
|
+
|
|
5488
|
+
function oidcConfig(): OidcConfig | null {
|
|
5489
|
+
const clientId =
|
|
5490
|
+
process.env.CIMPLIFY_CLIENT_ID?.trim() ||
|
|
5491
|
+
process.env.NEXT_PUBLIC_CIMPLIFY_CLIENT_ID?.trim() ||
|
|
5492
|
+
"";
|
|
5493
|
+
if (!clientId) return null;
|
|
5494
|
+
return {
|
|
5495
|
+
clientId,
|
|
5496
|
+
issuer: process.env.CIMPLIFY_ISSUER?.trim() || undefined,
|
|
5497
|
+
authUrl: process.env.CIMPLIFY_AUTH_URL?.trim() || undefined,
|
|
5498
|
+
};
|
|
5499
|
+
}
|
|
5500
|
+
|
|
5501
|
+
// Keeps the access token fresh before account pages render. Server Components
|
|
5502
|
+
// can't write cookies, so this is the one place the rotated token can be both
|
|
5503
|
+
// persisted (browser) and forwarded onto the current request (this render).
|
|
5504
|
+
export async function middleware(request: NextRequest) {
|
|
5505
|
+
const cfg = oidcConfig();
|
|
5506
|
+
if (!cfg) return NextResponse.next();
|
|
5507
|
+
|
|
5508
|
+
const { outcome, setCookies, cookies } = await handleTokenRefresh(request, cfg);
|
|
5509
|
+
if (outcome === "noop") return NextResponse.next();
|
|
5510
|
+
|
|
5511
|
+
for (const { name, value } of cookies) {
|
|
5512
|
+
request.cookies.set(name, value);
|
|
5513
|
+
}
|
|
5514
|
+
const response = NextResponse.next({ request });
|
|
5515
|
+
for (const cookie of setCookies) {
|
|
5516
|
+
response.headers.append("set-cookie", cookie);
|
|
5517
|
+
}
|
|
5518
|
+
return response;
|
|
5519
|
+
}
|
|
5520
|
+
|
|
5521
|
+
export const config = {
|
|
5522
|
+
matcher: ["/account/:path*"],
|
|
5523
|
+
};
|
|
5524
|
+
` }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed services --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed services",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.67.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS40LjEiLCAiIiwge30sICJzaGE1MTItUDVMVU5odGJqNllmSTNpSmp3NUVMOWVVQUc2T2l0RDBXM2ZXUWNwUWpEUmMvUUlzTDB0Uk51TzFQY0R2UGNjV0wxZlNUWFhkRTFkcytsOTVEVi9PRkE9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzAuMCIsICIiLCB7fSwgInNoYTUxMi1pYkQydXN4OUpSdTdmNXB1MnRNS01JNGNwQTROZ1hKUW9ZUlA0cFE3UHhtbjFsNmsvNTNxV3RRV1pheWhZeTNYNFFaa3Q5ME90K21KRWFlWG91aW82UT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjEiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZkpJM0kwcjNDM09qL3pkQkNwYUNtQlJaWWYwN3hwYXE0eUNmRERvU0ZtK2JlV056YklsMjZwdVc4UnJhVWR1Z29Kdy85NXplck5PbjZqYXNBaHpTbWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWNLbkFoV0VzVjdUUGNBLzVFQXRlRHA2S2NKWkJRMkcrQnFFN3pheU1NaTdrTXZ3UnNidjdXVDlhT25uMFdObDRTS0VJZjQzdmpTMzFpVVB1ODBuelhnPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZS3JWd1FqSVJCUG8rNUcvdTAzd0dqYmR5NHE3cHl6Q2U5M0RLOVZKN3prVm1lZzhMSjdHYmdzaUhXZFI0eFNvZTRDQVhSRDdCY2pnYnRyNjRia1hOZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItei9vQnNSRW80NlNzRnFCd1l0RmUwa3BKZUJpakFUNDhPL1dYTEk0c3VpQ0xCa3IwM1JUdFRKTUN6U2REZDJ6bmxoOFZKaXpMMDlYVmtRZ2s4SVpvbnc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItaWs4cTdHTTExenh2WXhGYzJQZURjVDZUQnZoQ1FNYVV4ZnBoL001bDlzS3VUcy9TamczTCtCeXcwRjd3MFpWTEJabXgzMFArZ0cwRUN6ek4rTUZjbVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItUW9TeDJFa3lycmRaNmtjeUU4c3RxWjYydDBZcmE4RnM1aWE5bE94SnJoNlRNUUpLN2dRS21zY2RUSGY3cE9YS1JFS3JWd090SmNRRzNxVlNmYzg2NkE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi11d053RnB3S2VOaVphd2ZBV0JnZzBWSXp0UFRWM2loaGgxdlYzMzRoOWl2bk5Mb3J4blFNVTZGejh3RzFaYjRRaDlMQzEvTWtjeVQzWWxEWEczUnNnZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi16WTFidWw3T1dyN0RGQmlKKyt3b2ZYdm5yOEI0NWNlM1FzUVVoS3JJaFhzeWdBaDdiVGt3eWVNMWJpMWEyZzVDL3lDL044VFp5R0RFb01mbS9sOW1wZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi0wZnJsc1QvZjRGdDZJN1NNRVNUS25GM2Nac2RpY1FuMWRDTWtGL2pUOXdETEUrZ0dvaVFmdjFubVQ5ZStzN3MvZmVrdnZ5NnRaTTJqSHZJMnRrYkpEUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjEiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1YQUJWbUdwOVRnMFdzcFRWdndkdVRjNGZwcXk2Sm5BVXJTUWU2T3V5cUQvMDNuSTdyME85T1dVa01Jd0ZyaktBSXFvbHZxb0E0WnJKcHBnd0UwR3htdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLWJWNGZ6c3d1elZjS0Q5MG8vVk02UXFLeG54bERxMGcyQklTRExOVm14cm5ocHYxRERieVBoQ0lqWWZ2ellMVitNdmtLS25RdDJRNkFPODZTRUJVTFVRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4xIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLS9NaDBaaHEzT1A3ZlZzMGtjUUhaUDZsWkV0aE1HVGFTZjhVQlFZU0ZFWkRXR1hYbEVDK25KNkVxZW5hSzJ0NExCWE1lM0ErSy9HMkJWWFhkdE9yNFBRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItKzF4YzlYNDVsOHVmc0JBbTZHanZ4MnFEUklZOWxUVnQwY2dXTmNKKzFnZGhYdmtieGVQQTYweVJUd1NUdVhMMDlDTWh5Sm1qcFY3RTNOb3l4YnFGUVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4xIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0xRCtVcVpkZm51UitKeTFHZ01Kd2k4NWJENDBIMjF1Tm1PUFJXUWh3NG9SU3VvbFovQjVyaXhaNDVESzJLWE9UQ3ZtVkNlY2F1V2dFaGJ3OGJJN3RPdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUlOQXljYVd1aGxPSzN3azRtUkhHc2Rnd1lXbWQ5Y0NoZFBkRTlid1dteTZybjlWcVZOWU5GR2hPZFhyb2ZYVXh3SEluY1NpUE5iOHRObThrbkRWSWVRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS42IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItN0VIRHF1UHRoQUxTVjBqaGhqZ0VXOEZYYXZpTXg3clNxdThXNm9xQ29BdU9oS292ODE0UDk5UURWMXB4TUEzUVB2MjFZdWR2Sm5nSWhqck5JNG9wTGc9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi1NQ0ZjNjNjek1qRUluT2xjWTJjcFFDdkNOK0tnYkFuKzYweHU5Y01nUDRzS2FMQzVKTkFLdzdKSDhRZEFub0FDODhoVzFJaVNOWitHZ1ZYbE4xVWNNUT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLWg1U3hEL0l6TmhaWW5yU1pSc1VaUUlDK3ZEMEdZOGNVdnEwaXdzbWtGS2l4UkNLTExXcUNYYS9GSVE0UzFSK3NJK1BHb29qa0hzZE5yYlppTTlRcGd3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItbk9QQ21uMit5RDBaTm1LZHNYR3YvVXhNTVdiTXVLZUQ2R3lZbmNOd2RrWUR4cFF2clBTS1lqMnJXdURqQzJZNGI2dzZoamlwNWRCS0Z6RVV1WmUzdkE9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1ZaHNkRTZ4QVZmVERtemp4TDJaRFV2amorWnNneU9LZStUZFF6cWtENzJ3SU9tSGthOE51R1E2TnBUTlp2OUQyWjYzZmJ3V0tKUGVWcEV3NEVRZ1l4dz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNiIsICIiLCB7fSwgInNoYTUxMi1KRkt4TXg2dWRod0toL0xkbzI3MGUxN1FYNzEwdmd1bk1rdVBBdlhqSFN2QzZvcUxXQUhoVmhqZy9JNzFxMHUwQ0JTRXJJT0RWMUtqdjBGUU5TV2pkZz09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItRnhJWStVODFSM0xHS0N4YUhIRlJRNStnNi9pUmdHTG1lSFdkcDJBbWo0bGpRUnJFSVdIbVp5RGZEWUJSWmxweXFBN3FLeHRTOUREMWRoazhSblJJVlE9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItbUxDTmJyUWxpMTFLMXlTVW11TnQ0WlVCM09wR0lEcTRxMnZUQlRmNWNMMmxwc1JqSTlRS3FTRDBuZGpXOEZ5dmNXL0pqNDZnTWU5c3l5SEFzdk1hL0E9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjMiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLTV4b0RmWCtmTDdmYUFUbmFnbVdQcGJGdHdoL1I3N1dtTU1xcUhHUzY1QzN2dkIwWUhyZ0YrQjFZbVozNDQxdE1qNW42M2swMjEyWE5vSnd6bGhmZlF3PT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwb3N0Y3NzIjogWyJwb3N0Y3NzQDguNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy4xMiIsICJwaWNvY29sb3JzIjogIl4xLjEuMSIsICJzb3VyY2UtbWFwLWpzIjogIl4xLjIuMSIgfSB9LCAic2hhNTEyLUZmUjhzamQ0ZW0yVDZmYjNJMk13QUpVN0hXVk1yOXpiYStlbm1RZWVXRmZDYm0rVU9DLzBYNERTOFh0cFVUTXdXTUdiaktZUDd4amZOZWt6eUdtQjNBPT0iXSwKCiAgICAicmVhY3QiOiBbInJlYWN0QDE5LjIuNiIsICIiLCB7fSwgInNoYTUxMi1zZldHR2ZhdmkweHI4UGcwc1ZzeUhNQU96aVZZS2dQTE5yUzdpZytpdk1OYjN3YkNCdzNLeHRmbHNHQkF3RDNnWVFsRS9BRVpzVExnVG9SclNDamIwUT09Il0sCgogICAgInJlYWN0LWRheS1waWNrZXIiOiBbInJlYWN0LWRheS1waWNrZXJAOS4xNC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS40LjEiLCAiQHRhYmJ5X2FpL2hpanJpLWNvbnZlcnRlciI6ICIxLjAuNSIsICJkYXRlLWZucyI6ICJeNC4xLjAiLCAiZGF0ZS1mbnMtamFsYWxpIjogIjQuMS4wLTAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0xNi44LjAiIH0gfSwgInNoYTUxMi10QmFvRFdqUHdlME01cEdydW00SDBTUjZMeWsrQk85b0hucDlKYktwR0tXMm1scmFOUGdQOUJNZnNnNXBXcHdyc3NBUm1lcWs3WUJsMm9YdXRaVGFIQT09Il0sCgogICAgInJlYWN0LWRvbSI6IFsicmVhY3QtZG9tQDE5LjIuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzY2hlZHVsZXIiOiAiXjAuMjcuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTkuMi42IiB9IH0sICJzaGE1MTItMHByTUkraHZCYlBqc1dueERMeGxDR3lNOFBONlV1V2pFVUNZbVpoTzY3eElWOVhhc2Evci92RG5xK1h5cTRMbzI3ZzhRU2JPNVl6QVJ1MEQxU3BzM2c9PSJdLAoKICAgICJyZXF1aXJlLWRpcmVjdG9yeSI6IFsicmVxdWlyZS1kaXJlY3RvcnlAMi4xLjEiLCAiIiwge30sICJzaGE1MTItZkd4RUk3K3dzRzl4cnZkanNybG1MMjJPTVRUaUhSd0FNcm9pRWVNZ3E4Z3pvTEMvUFFyN1JzUkRTVExVZy9iWkFadEYrVFZJa0hjNi80UklLcnVpK1E9PSJdLAoKICAgICJyZXNlbGVjdCI6IFsicmVzZWxlY3RANS4yLjAiLCAiIiwge30sICJzaGE1MTItQWdaM1VPWm0zWW5kZnJKNE9ZamdyVDdibUNtLzFpcWtqdkVmSC9vWWp6aDZQRDJxdzRRdVQzampuWElycGR0NE1UcE1YY2xNVDNsWGJtUlkrWFJha3c9PSJdLAoKICAgICJyb2xsZG93biI6IFsicm9sbGRvd25AMS4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQG94Yy1wcm9qZWN0L3R5cGVzIjogIj0wLjEzMC4wIiwgIkByb2xsZG93bi9wbHVnaW51dGlscyI6ICJeMS4wLjAiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctZnJlZWJzZC14NjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtbXVzbCI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC1wcGM2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgteDY0LW11c2wiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzItYXJtNjQtbXN2YyI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2YyI6ICIxLjAuMSIgfSwgImJpbiI6IHsgInJvbGxkb3duIjogImJpbi9jbGkubWpzIiB9IH0sICJzaGE1MTItWDBLUUhsak5uRWtXTnFxaXo5ekpyR3VuaDFCMEhnT3hMWHZuRnBDT2NhZHpjeTVxb2haM3RxTUVVZzAwdm5jb1Jvdlh1SzNacUNUOUtubkt6b0luRlE9PSJdLAoKICAgICJyeGpzIjogWyJyeGpzQDcuOC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjEuMCIgfSB9LCAic2hhNTEyLWRoS2Y5MDNVL1BRWlk2Ym9OTnRBR2RXYkc4NVdBYmpULzF4WW9aSUM3RkFZMHlXYXBPQlFWc1ZyRGw1OFc4Ni8vZTFWcE1OQnRSVjRNYVhmZE15U0ZBPT0iXSwKCiAgICAic2NoZWR1bGVyIjogWyJzY2hlZHVsZXJAMC4yNy4wIiwgIiIsIHt9LCAic2hhNTEyLWVOditXclZiS3UxZjN2YllKVC94dGlGNXN5QTVIUElNdGY5SWdZL25LZzBzV3F6QVVFdnFZL3htN09jWmMvcWFmTHgvaU85RmdPbWVTQXA0djV0aS9RPT0iXSwKCiAgICAic2VtdmVyIjogWyJzZW12ZXJANy44LjAiLCAiIiwgeyAiYmluIjogeyAic2VtdmVyIjogImJpbi9zZW12ZXIuanMiIH0gfSwgInNoYTUxMi1BY003ZFYvNXVsNEVla29RMjlBZ201dnJpOEpOcVJ5ajM5bzBxcFg2dkRGMkdacnR1dFpsNVJ3Z0QxWG5aamlUQWZuY3NKaE1JNDhRUUgzc044N1lOQT09Il0sCgogICAgInNoYXJwIjogWyJzaGFycEAwLjM0LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGltZy9jb2xvdXIiOiAiXjEuMC4wIiwgImRldGVjdC1saWJjIjogIl4yLjEuMiIsICJzZW12ZXIiOiAiXjcuNy4zIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWRhcndpbi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtczM5MHgiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLWFybTY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGludXgtYXJtIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXBwYzY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXgteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4bXVzbC1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eG11c2wteDY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdhc20zMiI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi1pYTMyIjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLXdpbjMyLXg2NCI6ICIwLjM0LjUiIH0gfSwgInNoYTUxMi1PdTlJNUZ0OVdOY0NiWHJVOWNNZ1BCY0NLOExpd0xxY2J5d1czdDRvRFYzN24xcHpwdU5Mc1lpQVY4ZU9EbmpidFFsU0R3WjJjVUVlUXo0RTU0SGx0Zz09Il0sCgogICAgInNoZWxsLXF1b3RlIjogWyJzaGVsbC1xdW90ZUAxLjguMyIsICIiLCB7fSwgInNoYTUxMi1PYm1uSUY0aFhOZzFCcWhuSG1nYkRFVEY4ZExQQ2dnWldCamtRZmhacGJzelpuWXVyNURVbGpUY0NIaWk1TEMzSjVFMHllTy8xTElNeUgrVXZIUWd5dz09Il0sCgogICAgInNpZ2luZm8iOiBbInNpZ2luZm9AMi4wLjAiLCAiIiwge30sICJzaGE1MTIteWJ4MFdPMS84YlNCTEVXWFp2RWQ3Z01XM1NuM0pGbFczVHZYMW5SRWJETFJOUU5hZU5OOFdLMG1lQndQZEFhT0k3VHRSUlJKbi9FczF6aHJyQ0h1N2c9PSJdLAoKICAgICJzb3VyY2UtbWFwIjogWyJzb3VyY2UtbWFwQDAuNi4xIiwgIiIsIHt9LCAic2hhNTEyLVVqZ2FwdW1XbGJNaGtCZ3pUN1lrYzVZWFVUNDZGMGlLdThTR1hxMGJjd1A1ZHovaDBQbGo2ZW5KcWp6MVpicTJsNVdhcVluclZid1dPV015RjNGNDdnPT0iXSwKCiAgICAic291cmNlLW1hcC1qcyI6IFsic291cmNlLW1hcC1qc0AxLjIuMSIsICIiLCB7fSwgInNoYTUxMi1VWFdNS2hMT3dWS2I3MjhJVXRRUFh4ZllVK3VzZHlidFVySy84dUdFOENRTXZyaE9wd3Z6REJ3ajBRaFNMN01RYzd2SXNJU0JHOFZROCtJRFF4cGZRQT09Il0sCgogICAgInNvdXJjZS1tYXAtc3VwcG9ydCI6IFsic291cmNlLW1hcC1zdXBwb3J0QDAuNS4yMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJidWZmZXItZnJvbSI6ICJeMS4wLjAiLCAic291cmNlLW1hcCI6ICJeMC42LjAiIH0gfSwgInNoYTUxMi11QkhVM0wzY3pzSXlZWEtYODhmZHJHb3Z4ZFNDb1RHRFJaNlNZWHRTUnhMWlV6SGc1UC82Nkh0NnVvVWxIdTlFWm9kK2luWGhLbzNxUWd3WFVUL3kxdz09Il0sCgogICAgInN0YWNrYmFjayI6IFsic3RhY2tiYWNrQDAuMC4yIiwgIiIsIHt9LCAic2hhNTEyLTFYTUpFNWZRbzFqR0g2WS83ZWJud1BPQkVrSUVuVDRRRjMyZDVSMStWWGRYdmVNMElCTUp0OHpmYXhYMVAzUWhWd3JZZSs1NzYramtBTnRTUzJtQmJ3PT0iXSwKCiAgICAic3RkLWVudiI6IFsic3RkLWVudkA0LjEuMCIsICIiLCB7fSwgInNoYTUxMi1ScTd5YmNYMlJ1QzU1cjlvYVBWRVc3L3h1M3RqOHU0R2VCWUhCV0N5Y2hGdHpNSXI4NkE3ZTNQUEVCUFQzN3NIU3RLWDMrVGlYL0ZyL0FDbUpMVmxMUT09Il0sCgogICAgInN0cmluZy13aWR0aCI6IFsic3RyaW5nLXdpZHRoQDQuMi4zIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImVtb2ppLXJlZ2V4IjogIl44LjAuMCIsICJpcy1mdWxsd2lkdGgtY29kZS1wb2ludCI6ICJeMy4wLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiIH0gfSwgInNoYTUxMi13S3lRUlFwakowc0lwNjJFclNaZEdzak1KV3NhcDVvUk5paEhodTZHN0pWTy85aklCNlV5ZXZMK3RYdU9xcm5nOGovY3hLVFd5V1V3dlNUcmlpWnovZz09Il0sCgogICAgInN0cmlwLWFuc2kiOiBbInN0cmlwLWFuc2lANi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1yZWdleCI6ICJeNS4wLjEiIH0gfSwgInNoYTUxMi1ZMzhWUFNIY3FrRnJDcEZuUTl2dVNYbXF1dXY1b1hPS3BHZVQ2YUdycjNvM0djOUFsVmE2SkJmVVNPQ25ieEdHWkYrLzBvb0k3S3JQdVVTenRVZFU1QT09Il0sCgogICAgInN0eWxlZC1qc3giOiBbInN0eWxlZC1qc3hANS4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY2xpZW50LW9ubHkiOiAiMC4wLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiPj0gMTYuOC4wIHx8IDE3LngueCB8fCBeMTguMC4wLTAgfHwgXjE5LjAuMC0wIiB9IH0sICJzaGE1MTItcVNWeURUZU1vdGR2UVlvSFdMTkd3UkZKSEMraStadmRCUllvc09GZ0MrV2cxdng0ZnJOMi9SRy9OQTdTWXFxdktOTGYzOVAyTFNSQTJwdTZuMFhZWkE9PSJdLAoKICAgICJzdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JAOC4xLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItTXBVRU4yT29kdFV6eHZLUWw3MmNVRjdSUTVFaUhzR3ZTc1ZHMGlhOWM1UmJXR0wyQ0k0QzdFcFBTOFVUQklwbG5selppTnVWNTZ3K0Z1Tnh5M3R5MlE9PSJdLAoKICAgICJ0YWlsd2luZC1tZXJnZSI6IFsidGFpbHdpbmQtbWVyZ2VAMy42LjAiLCAiIiwge30sICJzaGE1MTItdXhMN3FBVlFyaXFSUVBBeUszcGo2NlZxc2tXcW9aMzdQVzk0andPVHdOZnEvejlveXUxVitlcXJacXRSMitmQ2lYZFlPWmUvTW9kdDhHdHZxTnp1K3c9PSJdLAoKICAgICJ0YWlsd2luZGNzcyI6IFsidGFpbHdpbmRjc3NANC4zLjAiLCAiIiwge30sICJzaGE1MTIteTZueE1HQjFuTVc5UjZrOTZlNWdkSUZ6Y2ZML2dUSlJOYXFHZXMxWXZrTG5QVlh6V2dicUZGMnlMQzBUOEc3NzRuMjRjeDNQZThYcktvbmlDT0FIK1E9PSJdLAoKICAgICJ0YXBhYmxlIjogWyJ0YXBhYmxlQDIuMy4zIiwgIiIsIHt9LCAic2hhNTEyLXV4Yy96cHFGZzZ4N0M4dk9FN2xoNkxiZGE4ZUVMOXptVm0vUExlVFBCUmhoMXhDZ2RXYVErSjFDVWllR3BJZm0ySGR0c1VwUnYrSHNoaWFzQk1jYzZBPT0iXSwKCiAgICAidGVyc2VyIjogWyJ0ZXJzZXJANS4xNi45IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiAiXjAuMy4yIiwgImFjb3JuIjogIl44LjUuMCIsICJjb21tYW5kZXIiOiAiXjIuMjAuMCIsICJzb3VyY2UtbWFwLXN1cHBvcnQiOiAifjAuNS4yMCIgfSwgImJpbiI6IHsgInRlcnNlciI6ICJiaW4vdGVyc2VyIiB9IH0sICJzaGE1MTItSFBhL0ZkVEI5WEdJMkgxL2tlTEZaSHhsNldOdkFJNFlhbEhHdERRVGxNbkpjb3FTYWIxVXdMNGwxaEdFaHM2L0dtTEhCWklnL1lnQisramNiem9PRWc9PSJdLAoKICAgICJ0aW55YmVuY2giOiBbInRpbnliZW5jaEAyLjkuMCIsICIiLCB7fSwgInNoYTUxMi0wK0RVdnFXTVZhbExtaGE2bHI0a0Q4aUFNSzFIelYwL2FLbkN0V2I5djk2NDFUblAvTUZiN1BjMmJ4b3hRalRYQUVycnlYVmdVT2Z2MllxTmxscUdlZz09Il0sCgogICAgInRpbnlleGVjIjogWyJ0aW55ZXhlY0AxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1kQXFTcUUvUmFicEJLSTgraDI2R2ZMcTZWYjNKVlhzMzBYWVFqZE1qYWovYzJ0UzhJWVlNYkl6UDU5OUt0Umo3YzU3L3dZQXBiM1FqZ1JnWG1yQ3VrQT09Il0sCgogICAgInRpbnlnbG9iYnkiOiBbInRpbnlnbG9iYnlAMC4yLjE2IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImZkaXIiOiAiXjYuNS4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiIH0gfSwgInNoYTUxMi1wbjk5VmhvQUNZUjhuRkhoeHFpeCt1dnNiWGluZUFhc1dtNW9qWG9OOHhFd0s1S2QzL1RyaE5uMXdCeXVENTJVeFdSTHk4cHUra1JNbmlFaTZFcTlaZz09Il0sCgogICAgInRpbnlyYWluYm93IjogWyJ0aW55cmFpbmJvd0AzLjEuMCIsICIiLCB7fSwgInNoYTUxMi1CZitJTG1CZ3JldFVyZEp4elhNMFNnWExaM1hmaWFVdU9qL0lLUUh1VFhpcCswNVhuK3V5RVlkVmcwa1lEaXBUQmNMckNWeVV6QVB6N1FtQXJiMG1tdz09Il0sCgogICAgInRyZWUta2lsbCI6IFsidHJlZS1raWxsQDEuMi4yIiwgIiIsIHsgImJpbiI6IHsgInRyZWUta2lsbCI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1MME9ycGk4cUdwUkcvL05kK0g5MHZGQiszaUhudWUxelNTR21OT09DaDFHTEo3clVLVndWMkh2aWpwaEdRUzJVbWhVWmV3UzlWZ3Z4WUlkZ3IrZkcxQT09Il0sCgogICAgInRzbGliIjogWyJ0c2xpYkAyLjguMSIsICIiLCB7fSwgInNoYTUxMi1vSkZ1OTRIUWIrS1ZkdVNVUUw3d25wbXFuZm1Mc09BL25BaDZiNkVIMHdDRW9LMC9tUGVYVTZjM3dLRFY4M01rT3VIUFJIdFNYS0tVOTlJQmF6Uy8ydz09Il0sCgogICAgInR5cGVzY3JpcHQiOiBbInR5cGVzY3JpcHRANS45LjMiLCAiIiwgeyAiYmluIjogeyAidHNjIjogImJpbi90c2MiLCAidHNzZXJ2ZXIiOiAiYmluL3Rzc2VydmVyIiB9IH0sICJzaGE1MTItamwxdlp6UERpbkxyOWVVdDNKL3Q3VjZGZ05FdzlRanZCUGR5c3o5S2ZRREQ0MWZRckMyWTR2S1FkaWFVcEZUNGJYbGIxUkhoTHBwOHd0bTZNNVRnU3c9PSJdLAoKICAgICJ1bmRpY2ktdHlwZXMiOiBbInVuZGljaS10eXBlc0A2LjIxLjAiLCAiIiwge30sICJzaGE1MTItaXdEWnFnMFFBR3JnOVJhdjVING4wTTY0YzNta1I1OWNKNndRcCs3QzRuSTBnc21FeGFlZGFZTE5PNDRlVDRBdEJCd2piVGlHUE1sdDJNZDBUOUg5SlE9PSJdLAoKICAgICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6IFsidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmVAMS42LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIl4xNi44LjAgfHwgXjE3LjAuMCB8fCBeMTguMC4wIHx8IF4xOS4wLjAiIH0gfSwgInNoYTUxMi1QcDZHU3dHUC9OclBJcnhWRkFJa09RZXl3OGxGZW5PSGlqUVdrVVRyRHZyRjRBTHF5bFAyQy9LQ2tlUzlkcFVNM0t2WVJRaG5hNXZ0N0lMOTUrWlE5dz09Il0sCgogICAgInZpdGUiOiBbInZpdGVAOC4wLjEzIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2NzcyI6ICJeMS4zMi4wIiwgInBpY29tYXRjaCI6ICJeNC4wLjQiLCAicG9zdGNzcyI6ICJeOC41LjE0IiwgInJvbGxkb3duIjogIjEuMC4xIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNiIgfSwgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiZnNldmVudHMiOiAifjIuMy4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkB0eXBlcy9ub2RlIjogIl4yMC4xOS4wIHx8ID49MjIuMTIuMCIsICJAdml0ZWpzL2RldnRvb2xzIjogIl4wLjEuMTgiLCAiZXNidWlsZCI6ICJeMC4yNy4wIHx8IF4wLjI4LjAiLCAiaml0aSI6ICI+PTEuMjEuMCIsICJsZXNzIjogIl40LjAuMCIsICJzYXNzIjogIl4xLjcwLjAiLCAic2Fzcy1lbWJlZGRlZCI6ICJeMS43MC4wIiwgInN0eWx1cyI6ICI+PTAuNTQuOCIsICJzdWdhcnNzIjogIl41LjAuMCIsICJ0ZXJzZXIiOiAiXjUuMTYuMCIsICJ0c3giOiAiXjQuOC4xIiwgInlhbWwiOiAiXjIuNC4yIiB9LCAib3B0aW9uYWxQZWVycyI6IFsiQHR5cGVzL25vZGUiLCAiQHZpdGVqcy9kZXZ0b29scyIsICJlc2J1aWxkIiwgImppdGkiLCAibGVzcyIsICJzYXNzIiwgInNhc3MtZW1iZWRkZWQiLCAic3R5bHVzIiwgInN1Z2Fyc3MiLCAidGVyc2VyIiwgInRzeCIsICJ5YW1sIl0sICJiaW4iOiB7ICJ2aXRlIjogImJpbi92aXRlLmpzIiB9IH0sICJzaGE1MTItTUZ0akJZZ3ptU3htZ0E0UkFmakl5WFdwR2Uxb0FMbmpnVVR6elY3UUx4L1RLeEN6anRNSDZGZDkvZVZLKzVGZzFxTm96NVZBd3NtTXMvTm9mcm1Kdnc9PSJdLAoKICAgICJ2aXRlc3QiOiBbInZpdGVzdEA0LjEuNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdml0ZXN0L2V4cGVjdCI6ICI0LjEuNiIsICJAdml0ZXN0L21vY2tlciI6ICI0LjEuNiIsICJAdml0ZXN0L3ByZXR0eS1mb3JtYXQiOiAiNC4xLjYiLCAiQHZpdGVzdC9ydW5uZXIiOiAiNC4xLjYiLCAiQHZpdGVzdC9zbmFwc2hvdCI6ICI0LjEuNiIsICJAdml0ZXN0L3NweSI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgImVzLW1vZHVsZS1sZXhlciI6ICJeMi4wLjAiLCAiZXhwZWN0LXR5cGUiOiAiXjEuMy4wIiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJvYnVnIjogIl4yLjEuMSIsICJwYXRoZSI6ICJeMi4wLjMiLCAicGljb21hdGNoIjogIl40LjAuMyIsICJzdGQtZW52IjogIl40LjAuMC1yYy4xIiwgInRpbnliZW5jaCI6ICJeMi45LjAiLCAidGlueWV4ZWMiOiAiXjEuMC4yIiwgInRpbnlnbG9iYnkiOiAiXjAuMi4xNSIsICJ0aW55cmFpbmJvdyI6ICJeMy4xLjAiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIsICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogIl4yLjMuMCIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZWRnZS1ydW50aW1lL3ZtIjogIioiLCAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjkuMCIsICJAdHlwZXMvbm9kZSI6ICJeMjAuMC4wIHx8IF4yMi4wLjAgfHwgPj0yNC4wLjAiLCAiQHZpdGVzdC9icm93c2VyLXBsYXl3cmlnaHQiOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXByZXZpZXciOiAiNC4xLjYiLCAiQHZpdGVzdC9icm93c2VyLXdlYmRyaXZlcmlvIjogIjQuMS42IiwgIkB2aXRlc3QvY292ZXJhZ2UtaXN0YW5idWwiOiAiNC4xLjYiLCAiQHZpdGVzdC9jb3ZlcmFnZS12OCI6ICI0LjEuNiIsICJAdml0ZXN0L3VpIjogIjQuMS42IiwgImhhcHB5LWRvbSI6ICIqIiwgImpzZG9tIjogIioiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZWRnZS1ydW50aW1lL3ZtIiwgIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAdHlwZXMvbm9kZSIsICJAdml0ZXN0L2Jyb3dzZXItcGxheXdyaWdodCIsICJAdml0ZXN0L2Jyb3dzZXItcHJldmlldyIsICJAdml0ZXN0L2Jyb3dzZXItd2ViZHJpdmVyaW8iLCAiQHZpdGVzdC9jb3ZlcmFnZS1pc3RhbmJ1bCIsICJAdml0ZXN0L2NvdmVyYWdlLXY4IiwgIkB2aXRlc3QvdWkiLCAiaGFwcHktZG9tIiwgImpzZG9tIl0sICJiaW4iOiB7ICJ2aXRlc3QiOiAidml0ZXN0Lm1qcyIgfSB9LCAic2hhNTEyLTZsdmpiUzNwOWI0Q3JkQ21ndXpiaDIvNHVvWGhHRTJxNzFSNE9YNXNxRjlSMWJvOVhkNmZHck1BZnZwNXduQ3psQm5GVmRDT3A2b251VFFWYm84aVVRPT0iXSwKCiAgICAid2h5LWlzLW5vZGUtcnVubmluZyI6IFsid2h5LWlzLW5vZGUtcnVubmluZ0AyLjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJzaWdpbmZvIjogIl4yLjAuMCIsICJzdGFja2JhY2siOiAiMC4wLjIiIH0sICJiaW4iOiB7ICJ3aHktaXMtbm9kZS1ydW5uaW5nIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLWhVcm1hV0JkVkRjeHZZcW55aDA5enVuS3pST1dqYlpUaU55OGRCRWprUzdlaEVEUWliWEo3WHZsbXRid3VUY2xVaUl5TitDeVhRRDRWbWtvOGZObTh3PT0iXSwKCiAgICAid3JhcC1hbnNpIjogWyJ3cmFwLWFuc2lANy4wLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMC4wIiwgInN0cmluZy13aWR0aCI6ICJeNC4xLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjAiIH0gfSwgInNoYTUxMi1ZVkdJajJrYW1MU1R4dzZOc1pqb0J4ZlN3c24weWNkZXNtYzRwK1EyMWM1elB1WjFwbCtOZnhWZHhQdGRIdm1OVk9RNlhTWUc0QVV0eXQvRmk3RDE2UT09Il0sCgogICAgInhzcyI6IFsieHNzQDEuMC4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb21tYW5kZXIiOiAiXjIuMjAuMyIsICJjc3NmaWx0ZXIiOiAiMC4wLjEwIiB9LCAiYmluIjogeyAieHNzIjogImJpbi94c3MiIH0gfSwgInNoYTUxMi1GVmRsVlZDNjdXT0lQdmZPd2hvTUVUVjcyZjZHYlc3YU9hYkJDM1d4Ti9vVWRvRU1EeUx6NE9nUnY1L2djazJaZU5xRVF1K1RiMGtsb292WE9mcFlWZz09Il0sCgogICAgInkxOG4iOiBbInkxOG5ANS4wLjgiLCAiIiwge30sICJzaGE1MTItMHBmRnplZ2VEV0pISklBbVRMUlAyRHdIamRGNXM3am85dHV6dGRReEFoSU5DZHZTKzNuR0lOcVBkMDBBcGhxSlIvMExoQU5VUzYvKzdTQ2I5OFlPZkE9PSJdLAoKICAgICJ5YW1sIjogWyJ5YW1sQDIuOS4wIiwgIiIsIHsgImJpbiI6IHsgInlhbWwiOiAiYmluLm1qcyIgfSB9LCAic2hhNTEyLTJBdmhOWDNtYjh6ZDZaeTdJTlR0U3BsMUYxNUhXNlducWowc3JXbGtLTGNwWWwvZ01JTUppeXVHcTJLZUkyWUZ4VVBqZGxCKzNMYzEwc2VNTHRMNGNBPT0iXSwKCiAgICAieWFyZ3MiOiBbInlhcmdzQDE3LjcuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjbGl1aSI6ICJeOC4wLjEiLCAiZXNjYWxhZGUiOiAiXjMuMS4xIiwgImdldC1jYWxsZXItZmlsZSI6ICJeMi4wLjUiLCAicmVxdWlyZS1kaXJlY3RvcnkiOiAiXjIuMS4xIiwgInN0cmluZy13aWR0aCI6ICJeNC4yLjMiLCAieTE4biI6ICJeNS4wLjUiLCAieWFyZ3MtcGFyc2VyIjogIl4yMS4xLjEiIH0gfSwgInNoYTUxMi03ZFN6elJRKytDS25OSS9rcktuWVJWN0pLS1BVWE1FaDYxc29hSEtnOW1yV0VoekZXaEZueFB4R2wrNjljRDFPdTYzQzEzTlVQQ25tSWNydnFDdU02dz09Il0sCgogICAgInlhcmdzLXBhcnNlciI6IFsieWFyZ3MtcGFyc2VyQDIxLjEuMSIsICIiLCB7fSwgInNoYTUxMi10VnBzSlc3RGRqZWNBaUZwYklCMWUzcXhJUXNFNk5vUGM1L2VUZHJiYklDNGgwTFZzV2hub2EzZyttMkhjbEJJdWpIenN4WjRWSlZBK0dVdWMyL0xCdz09Il0sCgogICAgInpvZCI6IFsiem9kQDQuNC4zIiwgIiIsIHt9LCAic2hhNTEyLXl0RU5GaklKRmwyVXdZZ2xkZTJqY2hXMkh3bTRHSkZMRGlTWFdkVHJKUUJJTjlGY3lwN240RGh4SkVpV05BSk1WMS9CcVdmVy9ra2c3MVVEY0hKeVRRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvY29yZSI6IFsiQGVtbmFwaS9jb3JlQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICIxLjIuMSIsICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXlxNk9rSjRwODJDQWZQbDB1OW1RZWJRSEtQSmtZN1dySXVrMjA1Y1RZblllK2syWjhZQmgxMUZyYlJHL0g2aWhpcnFjYWNPZ2wyQklPOG95TVFMZVh3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvcnVudGltZSI6IFsiQGVtbmFwaS9ydW50aW1lQDEuMTAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLWV3dllsazg2eFVvR0kwelFSTnEvbUMrMTZSMVFlRGxLUXkyMUtpM29TWVhOZ0xiNDVHVjFQNkEwTSsvczZueUN1TkRxZTVWcGFZODRCelhHd1Zid0ZBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BlbW5hcGkvd2FzaS10aHJlYWRzIjogWyJAZW1uYXBpL3dhc2ktdGhyZWFkc0AxLjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLXVUSUk3T1lGKy9NZXMvTXJjSU9ZcDV5T3RTTUxCV1NJb0xQcGNnd2lwb2lLYmxpNmszMjJ0Y29Gc3hvSUl4UERxVzAxU1FHQWdrbzRFelppMkJOdjJ3PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0BuYXBpLXJzL3dhc20tcnVudGltZSI6IFsiQG5hcGktcnMvd2FzbS1ydW50aW1lQDEuMS40IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB0eWJ5cy93YXNtLXV0aWwiOiAiXjAuMTAuMSIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuNy4xIiwgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjEiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLTNOUU5OZ0ExWVNsSmIva01IMWlsZEFTUDlIVzcvN2tZblJJMnN6V0phb2ZhUzFoV21iR0k0SCtkMysyMmFHelhYTjlJSituK0dpRlZjR2lwSlAxOG93PT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL0B0eWJ5cy93YXNtLXV0aWwiOiBbIkB0eWJ5cy93YXNtLXV0aWxAMC4xMC4yIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRzbGliIjogIl4yLjQuMCIgfSwgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItUm9CdkoyWDB3dUtsV0ZJanJ3ZmZHdzFJcVpIS1FxekljaEthYWRaWmZuTnBzQVlwMm1NMGgzNkp0UENqTkRBSEdnWWV6LzE1dU1CcGZHd2NoaGlNZ2c9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kvdHNsaWIiOiBbInRzbGliQDIuOC4xIiwgIiIsIHsgImJ1bmRsZWQiOiB0cnVlIH0sICJzaGE1MTItb0pGdTk0SFFiK0tWZHVTVVFMN3ducG1xbmZtTHNPQS9uQWg2YjZFSDB3Q0VvSzAvbVBlWFU2YzN3S0RWODNNa091SFBSSHRTWEtLVTk5SUJhelMvMnc9PSJdLAoKICAgICJjaGFsay9zdXBwb3J0cy1jb2xvciI6IFsic3VwcG9ydHMtY29sb3JANy4yLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiaGFzLWZsYWciOiAiXjQuMC4wIiB9IH0sICJzaGE1MTItcXBDQXZSbDlzdHVPSHZlS3NuN0huY0pSdnY1MDFxSWFjS3pRbE8vK0x3eGM5KzBxMndMeXY0RGZ2dDgwL0RQbjJwcU9Cc0pkRGlvZ1hHUjkrT3Z3Unc9PSJdLAoKICAgICJuZXh0L3Bvc3Rjc3MiOiBbInBvc3Rjc3NAOC40LjMxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIm5hbm9pZCI6ICJeMy4zLjYiLCAicGljb2NvbG9ycyI6ICJeMS4wLjAiLCAic291cmNlLW1hcC1qcyI6ICJeMS4wLjIiIH0gfSwgInNoYTUxMi1QUzA4SWJvaWE5bXRzLzJ5Z1YzZUxwWTVnaG5VY2ZMVi9FWFRPVzFFMnFZeEpLR0dCVXROak43NkZZSG5NczM2Um1BUm40MWJDMEFabW4rclIwT1ZwUT09Il0sCiAgfQp9Cg==" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "services",\n "name": "Services",\n "tagline": "Bookable-services storefront with calendar slots and staff profiles.",\n "industry": "services",\n "tags": ["services", "bookings", "appointments"],\n "stability": "stable",\n "schemaType": "BeautySalon",\n "mock": {\n "seedName": "services",\n "seedBusinessId": "bus_serene_spa"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-semibold uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="font-serif text-[clamp(2.25rem,5vw,3.5rem)] font-semibold mb-6 -tracking-[0.02em]">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="font-serif text-3xl font-semibold mt-10 mb-3">{s.heading}</h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full menu with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/shop?product=${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
5252
5525
|
|
|
5253
5526
|
import { useState } from "react";
|
|
5254
5527
|
|
|
@@ -5928,7 +6201,46 @@ export const brand: Brand = {
|
|
|
5928
6201
|
* the root layout prerenderable.
|
|
5929
6202
|
*/
|
|
5930
6203
|
export const SITE_URL = "https://example.com";
|
|
5931
|
-
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n\n# Playwright runtime artifacts (commit the snapshots in e2e/__snapshots__/)\ntest-results/\nplaywright-report/\nblob-report/\n.playwright/\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed fashion --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed fashion",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check:visual": "playwright test",\n "check:visual:update": "playwright test --update-snapshots",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.65.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@playwright/test": "^1.50.0",\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUwLjAiLAogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS40LjEiLCAiIiwge30sICJzaGE1MTItUDVMVU5odGJqNllmSTNpSmp3NUVMOWVVQUc2T2l0RDBXM2ZXUWNwUWpEUmMvUUlzTDB0Uk51TzFQY0R2UGNjV0wxZlNUWFhkRTFkcytsOTVEVi9PRkE9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzAuMCIsICIiLCB7fSwgInNoYTUxMi1pYkQydXN4OUpSdTdmNXB1MnRNS01JNGNwQTROZ1hKUW9ZUlA0cFE3UHhtbjFsNmsvNTNxV3RRV1pheWhZeTNYNFFaa3Q5ME90K21KRWFlWG91aW82UT09Il0sCgogICAgIkBwbGF5d3JpZ2h0L3Rlc3QiOiBbIkBwbGF5d3JpZ2h0L3Rlc3RAMS42MC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInBsYXl3cmlnaHQiOiAiMS42MC4wIiB9LCAiYmluIjogeyAicGxheXdyaWdodCI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1PNzF5WkliQWgvUHhETU5HbnMzN0dIQklmclZrRVZ5bitBWHlJYTVkT1RmYjQveE52UldWK1Z2L05NYk5DdE9EQi9wTzd2TGxGMk9UbU1WTGhtcjdBZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjEiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZkpJM0kwcjNDM09qL3pkQkNwYUNtQlJaWWYwN3hwYXE0eUNmRERvU0ZtK2JlV056YklsMjZwdVc4UnJhVWR1Z29Kdy85NXplck5PbjZqYXNBaHpTbWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWNLbkFoV0VzVjdUUGNBLzVFQXRlRHA2S2NKWkJRMkcrQnFFN3pheU1NaTdrTXZ3UnNidjdXVDlhT25uMFdObDRTS0VJZjQzdmpTMzFpVVB1ODBuelhnPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZS3JWd1FqSVJCUG8rNUcvdTAzd0dqYmR5NHE3cHl6Q2U5M0RLOVZKN3prVm1lZzhMSjdHYmdzaUhXZFI0eFNvZTRDQVhSRDdCY2pnYnRyNjRia1hOZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItei9vQnNSRW80NlNzRnFCd1l0RmUwa3BKZUJpakFUNDhPL1dYTEk0c3VpQ0xCa3IwM1JUdFRKTUN6U2REZDJ6bmxoOFZKaXpMMDlYVmtRZ2s4SVpvbnc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItaWs4cTdHTTExenh2WXhGYzJQZURjVDZUQnZoQ1FNYVV4ZnBoL001bDlzS3VUcy9TamczTCtCeXcwRjd3MFpWTEJabXgzMFArZ0cwRUN6ek4rTUZjbVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItUW9TeDJFa3lycmRaNmtjeUU4c3RxWjYydDBZcmE4RnM1aWE5bE94SnJoNlRNUUpLN2dRS21zY2RUSGY3cE9YS1JFS3JWd090SmNRRzNxVlNmYzg2NkE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi11d053RnB3S2VOaVphd2ZBV0JnZzBWSXp0UFRWM2loaGgxdlYzMzRoOWl2bk5Mb3J4blFNVTZGejh3RzFaYjRRaDlMQzEvTWtjeVQzWWxEWEczUnNnZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi16WTFidWw3T1dyN0RGQmlKKyt3b2ZYdm5yOEI0NWNlM1FzUVVoS3JJaFhzeWdBaDdiVGt3eWVNMWJpMWEyZzVDL3lDL044VFp5R0RFb01mbS9sOW1wZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi0wZnJsc1QvZjRGdDZJN1NNRVNUS25GM2Nac2RpY1FuMWRDTWtGL2pUOXdETEUrZ0dvaVFmdjFubVQ5ZStzN3MvZmVrdnZ5NnRaTTJqSHZJMnRrYkpEUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjEiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1YQUJWbUdwOVRnMFdzcFRWdndkdVRjNGZwcXk2Sm5BVXJTUWU2T3V5cUQvMDNuSTdyME85T1dVa01Jd0ZyaktBSXFvbHZxb0E0WnJKcHBnd0UwR3htdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLWJWNGZ6c3d1elZjS0Q5MG8vVk02UXFLeG54bERxMGcyQklTRExOVm14cm5ocHYxRERieVBoQ0lqWWZ2ellMVitNdmtLS25RdDJRNkFPODZTRUJVTFVRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4xIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLS9NaDBaaHEzT1A3ZlZzMGtjUUhaUDZsWkV0aE1HVGFTZjhVQlFZU0ZFWkRXR1hYbEVDK25KNkVxZW5hSzJ0NExCWE1lM0ErSy9HMkJWWFhkdE9yNFBRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItKzF4YzlYNDVsOHVmc0JBbTZHanZ4MnFEUklZOWxUVnQwY2dXTmNKKzFnZGhYdmtieGVQQTYweVJUd1NUdVhMMDlDTWh5Sm1qcFY3RTNOb3l4YnFGUVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4xIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0xRCtVcVpkZm51UitKeTFHZ01Kd2k4NWJENDBIMjF1Tm1PUFJXUWh3NG9SU3VvbFovQjVyaXhaNDVESzJLWE9UQ3ZtVkNlY2F1V2dFaGJ3OGJJN3RPdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUlOQXljYVd1aGxPSzN3azRtUkhHc2Rnd1lXbWQ5Y0NoZFBkRTlid1dteTZybjlWcVZOWU5GR2hPZFhyb2ZYVXh3SEluY1NpUE5iOHRObThrbkRWSWVRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS42IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItN0VIRHF1UHRoQUxTVjBqaGhqZ0VXOEZYYXZpTXg3clNxdThXNm9xQ29BdU9oS292ODE0UDk5UURWMXB4TUEzUVB2MjFZdWR2Sm5nSWhqck5JNG9wTGc9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi1NQ0ZjNjNjek1qRUluT2xjWTJjcFFDdkNOK0tnYkFuKzYweHU5Y01nUDRzS2FMQzVKTkFLdzdKSDhRZEFub0FDODhoVzFJaVNOWitHZ1ZYbE4xVWNNUT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLWg1U3hEL0l6TmhaWW5yU1pSc1VaUUlDK3ZEMEdZOGNVdnEwaXdzbWtGS2l4UkNLTExXcUNYYS9GSVE0UzFSK3NJK1BHb29qa0hzZE5yYlppTTlRcGd3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItbk9QQ21uMit5RDBaTm1LZHNYR3YvVXhNTVdiTXVLZUQ2R3lZbmNOd2RrWUR4cFF2clBTS1lqMnJXdURqQzJZNGI2dzZoamlwNWRCS0Z6RVV1WmUzdkE9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1ZaHNkRTZ4QVZmVERtemp4TDJaRFV2amorWnNneU9LZStUZFF6cWtENzJ3SU9tSGthOE51R1E2TnBUTlp2OUQyWjYzZmJ3V0tKUGVWcEV3NEVRZ1l4dz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNiIsICIiLCB7fSwgInNoYTUxMi1KRkt4TXg2dWRod0toL0xkbzI3MGUxN1FYNzEwdmd1bk1rdVBBdlhqSFN2QzZvcUxXQUhoVmhqZy9JNzFxMHUwQ0JTRXJJT0RWMUtqdjBGUU5TV2pkZz09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItRnhJWStVODFSM0xHS0N4YUhIRlJRNStnNi9pUmdHTG1lSFdkcDJBbWo0bGpRUnJFSVdIbVp5RGZEWUJSWmxweXFBN3FLeHRTOUREMWRoazhSblJJVlE9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItbUxDTmJyUWxpMTFLMXlTVW11TnQ0WlVCM09wR0lEcTRxMnZUQlRmNWNMMmxwc1JqSTlRS3FTRDBuZGpXOEZ5dmNXL0pqNDZnTWU5c3l5SEFzdk1hL0E9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjIiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLXhpcU1RUjR4QWVIVHVCOXVXbStmRlJjSU9nS0JNaU9CUCtlWGl5VDdqc2dWQ3ExYmtWeWd0MDBvQVNvd0I3RWR0cE9IYWFQZ0t0ODEyUDlhYitEREtBPT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwbGF5d3JpZ2h0IjogWyJwbGF5d3JpZ2h0QDEuNjAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJwbGF5d3JpZ2h0LWNvcmUiOiAiMS42MC4wIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJmc2V2ZW50cyI6ICIyLjMuMiIgfSwgImJpbiI6IHsgInBsYXl3cmlnaHQiOiAiY2xpLmpzIiB9IH0sICJzaGE1MTItaGhlSGRva004Y2RxQ2IwbGNFM3MrelQ0dDRXK3Z2anBHeHNabERuaWthcnp4OHRTek1lYmgzVWlGdGdxd0Z3blRuallRY3N5TUY4ZWkybUNPL3RwZUE9PSJdLAoKICAgICJwbGF5d3JpZ2h0LWNvcmUiOiBbInBsYXl3cmlnaHQtY29yZUAxLjYwLjAiLCAiIiwgeyAiYmluIjogeyAicGxheXdyaWdodC1jb3JlIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLTliVzZ6dlgvbTBsRWJnVEtKNllwcE9LeDhIM1ZPUEJNT0NGaDJpclhGT1Q0QmJIZ3J4NWhQandKWUxUNDBMdSs0cXREMzZxS2MvSG41NlN0VVc1N0lBPT0iXSwKCiAgICAicG9zdGNzcyI6IFsicG9zdGNzc0A4LjUuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAibmFub2lkIjogIl4zLjMuMTIiLCAicGljb2NvbG9ycyI6ICJeMS4xLjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiIH0gfSwgInNoYTUxMi1GZlI4c2pkNGVtMlQ2ZmIzSTJNd0FKVTdIV1ZNcjl6YmErZW5tUWVlV0ZmQ2JtK1VPQy8wWDREUzhYdHBVVE13V01HYmpLWVA3eGpmTmVrenlHbUIzQT09Il0sCgogICAgInJlYWN0IjogWyJyZWFjdEAxOS4yLjYiLCAiIiwge30sICJzaGE1MTItc2ZXR0dmYXZpMHhyOFBnMHNWc3lITUFPemlWWUtnUExOclM3aWcraXZNTmIzd2JDQnczS3h0ZmxzR0JBd0QzZ1lRbEUvQUVac1RMZ1RvUnJTQ2piMFE9PSJdLAoKICAgICJyZWFjdC1kYXktcGlja2VyIjogWyJyZWFjdC1kYXktcGlja2VyQDkuMTQuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZGF0ZS1mbnMvdHoiOiAiXjEuNC4xIiwgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiAiMS4wLjUiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImRhdGUtZm5zLWphbGFsaSI6ICI0LjEuMC0wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiB9IH0sICJzaGE1MTItdEJhb0RXalB3ZTBNNXBHcnVtNEgwU1I2THlrK0JPOW9IbnA5SmJLcEdLVzJtbHJhTlBnUDlCTWZzZzVwV3B3cnNzQVJtZXFrN1lCbDJvWHV0WlRhSEE9PSJdLAoKICAgICJyZWFjdC1kb20iOiBbInJlYWN0LWRvbUAxOS4yLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAic2NoZWR1bGVyIjogIl4wLjI3LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiXjE5LjIuNiIgfSB9LCAic2hhNTEyLTBwck1JK2h2QmJQanNXbnhETHhsQ0d5TThQTjZVdVdqRVVDWW1aaE82N3hJVjlYYXNhL3IvdkRucStYeXE0TG8yN2c4UVNiTzVZekFSdTBEMVNwczNnPT0iXSwKCiAgICAicmVxdWlyZS1kaXJlY3RvcnkiOiBbInJlcXVpcmUtZGlyZWN0b3J5QDIuMS4xIiwgIiIsIHt9LCAic2hhNTEyLWZHeEVJNyt3c0c5eHJ2ZGpzcmxtTDIyT01UVGlIUndBTXJvaUVlTWdxOGd6b0xDL1BRcjdSc1JEU1RMVWcvYlpBWnRGK1RWSWtIYzYvNFJJS3J1aStRPT0iXSwKCiAgICAicmVzZWxlY3QiOiBbInJlc2VsZWN0QDUuMi4wIiwgIiIsIHt9LCAic2hhNTEyLUFnWjNVT1ptM1luZGZySjRPWWpnclQ3Ym1DbS8xaXFranZFZkgvb1lqemg2UEQycXc0UXVUM2pqblhJcnBkdDRNVHBNWGNsTVQzbFhibVJZK1hSYWt3PT0iXSwKCiAgICAicm9sbGRvd24iOiBbInJvbGxkb3duQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBveGMtcHJvamVjdC90eXBlcyI6ICI9MC4xMzAuMCIsICJAcm9sbGRvd24vcGx1Z2ludXRpbHMiOiAiXjEuMC4wIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAcm9sbGRvd24vYmluZGluZy1hbmRyb2lkLWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NCI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4teDY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LW11c2wiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpIjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLWFybTY0LW1zdmMiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzIteDY0LW1zdmMiOiAiMS4wLjEiIH0sICJiaW4iOiB7ICJyb2xsZG93biI6ICJiaW4vY2xpLm1qcyIgfSB9LCAic2hhNTEyLVgwS1FIbGpObkVrV05xcWl6OXpKckd1bmgxQjBIZ094TFh2bkZwQ09jYWR6Y3k1cW9oWjN0cU1FVWcwMHZuY29Sb3ZYdUszWnFDVDlLbm5Lem9JbkZRPT0iXSwKCiAgICAicnhqcyI6IFsicnhqc0A3LjguMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi4xLjAiIH0gfSwgInNoYTUxMi1kaEtmOTAzVS9QUVpZNmJvTk50QUdkV2JHODVXQWJqVC8xeFlvWklDN0ZBWTB5V2FwT0JRVnNWckRsNThXODYvL2UxVnBNTkJ0UlY0TWFYZmRNeVNGQT09Il0sCgogICAgInNjaGVkdWxlciI6IFsic2NoZWR1bGVyQDAuMjcuMCIsICIiLCB7fSwgInNoYTUxMi1lTnYrV3JWYkt1MWYzdmJZSlQveHRpRjVzeUE1SFBJTXRmOUlnWS9uS2cwc1dxekFVRXZxWS94bTdPY1pjL3FhZkx4L2lPOUZnT21lU0FwNHY1dGkvUT09Il0sCgogICAgInNlbXZlciI6IFsic2VtdmVyQDcuOC4wIiwgIiIsIHsgImJpbiI6IHsgInNlbXZlciI6ICJiaW4vc2VtdmVyLmpzIiB9IH0sICJzaGE1MTItQWNNN2RWLzV1bDRFZWtvUTI5QWdtNXZyaThKTnFSeWozOW8wcXBYNnZERjJHWnJ0dXRabDVSd2dEMVhuWmppVEFmbmNzSmhNSTQ4UVFIM3NOODdZTkE9PSJdLAoKICAgICJzaGFycCI6IFsic2hhcnBAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBpbWcvY29sb3VyIjogIl4xLjAuMCIsICJkZXRlY3QtbGliYyI6ICJeMi4xLjIiLCAic2VtdmVyIjogIl43LjcuMyIgfSwgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtZGFyd2luLXg2NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi1hcm02NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtYXJtIjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcHBjNjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC1hcm02NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eC1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eC1wcGM2NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXMzOTB4IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXg2NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13YXNtMzIiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi14NjQiOiAiMC4zNC41IiB9IH0sICJzaGE1MTItT3U5STVGdDlXTmNDYlhyVTljTWdQQmNDSzhMaXdMcWNieXdXM3Q0b0RWMzduMXB6cHVOTHNZaUFWOGVPRG5qYnRRbFNEd1oyY1VFZVF6NEU1NEhsdGc9PSJdLAoKICAgICJzaGVsbC1xdW90ZSI6IFsic2hlbGwtcXVvdGVAMS44LjMiLCAiIiwge30sICJzaGE1MTItT2JtbklGNGhYTmcxQnFobkhtZ2JERVRGOGRMUENnZ1pXQmprUWZoWnBic3pabll1cjVEVWxqVGNDSGlpNUxDM0o1RTB5ZU8vMUxJTXlIK1V2SFFneXc9PSJdLAoKICAgICJzaWdpbmZvIjogWyJzaWdpbmZvQDIuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXlieDBXTzEvOGJTQkxFV1hadkVkN2dNVzNTbjNKRmxXM1R2WDFuUkViRExSTlFOYWVOTjhXSzBtZUJ3UGRBYU9JN1R0UlJSSm4vRXMxemhyckNIdTdnPT0iXSwKCiAgICAic291cmNlLW1hcCI6IFsic291cmNlLW1hcEAwLjYuMSIsICIiLCB7fSwgInNoYTUxMi1VamdhcHVtV2xiTWhrQmd6VDdZa2M1WVhVVDQ2RjBpS3U4U0dYcTBiY3dQNWR6L2gwUGxqNmVuSnFqejFaYnEybDVXYXFZbnJWYndXT1dNeUYzRjQ3Zz09Il0sCgogICAgInNvdXJjZS1tYXAtanMiOiBbInNvdXJjZS1tYXAtanNAMS4yLjEiLCAiIiwge30sICJzaGE1MTItVVhXTUtoTE93VktiNzI4SVV0UVBYeGZZVSt1c2R5YnRVcksvOHVHRThDUU12cmhPcHd2ekRCd2owUWhTTDdNUWM3dklzSVNCRzhWUTgrSURReHBmUUE9PSJdLAoKICAgICJzb3VyY2UtbWFwLXN1cHBvcnQiOiBbInNvdXJjZS1tYXAtc3VwcG9ydEAwLjUuMjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYnVmZmVyLWZyb20iOiAiXjEuMC4wIiwgInNvdXJjZS1tYXAiOiAiXjAuNi4wIiB9IH0sICJzaGE1MTItdUJIVTNMM2N6c0l5WVhLWDg4ZmRyR292eGRTQ29UR0RSWjZTWVh0U1J4TFpVekhnNVAvNjZIdDZ1b1VsSHU5RVpvZCtpblhoS28zcVFnd1hVVC95MXc9PSJdLAoKICAgICJzdGFja2JhY2siOiBbInN0YWNrYmFja0AwLjAuMiIsICIiLCB7fSwgInNoYTUxMi0xWE1KRTVmUW8xakdINlkvN2VibndQT0JFa0lFblQ0UUYzMmQ1UjErVlhkWHZlTTBJQk1KdDh6ZmF4WDFQM1FoVndyWWUrNTc2K2prQU50U1MybUJidz09Il0sCgogICAgInN0ZC1lbnYiOiBbInN0ZC1lbnZANC4xLjAiLCAiIiwge30sICJzaGE1MTItUnE3eWJjWDJSdUM1NXI5b2FQVkVXNy94dTN0ajh1NEdlQllIQldDeWNoRnR6TUlyODZBN2UzUFBFQlBUMzdzSFN0S1gzK1RpWC9Gci9BQ21KTFZsTFE9PSJdLAoKICAgICJzdHJpbmctd2lkdGgiOiBbInN0cmluZy13aWR0aEA0LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJlbW9qaS1yZWdleCI6ICJeOC4wLjAiLCAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiAiXjMuMC4wIiwgInN0cmlwLWFuc2kiOiAiXjYuMC4xIiB9IH0sICJzaGE1MTItd0t5UVJRcGpKMHNJcDYyRXJTWmRHc2pNSldzYXA1b1JOaWhIaHU2RzdKVk8vOWpJQjZVeWV2TCt0WHVPcXJuZzhqL2N4S1RXeVdVd3ZTVHJpaVp6L2c9PSJdLAoKICAgICJzdHJpcC1hbnNpIjogWyJzdHJpcC1hbnNpQDYuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImFuc2ktcmVnZXgiOiAiXjUuMC4xIiB9IH0sICJzaGE1MTItWTM4VlBTSGNxa0ZyQ3BGblE5dnVTWG1xdXV2NW9YT0twR2VUNmFHcnIzbzNHYzlBbFZhNkpCZlVTT0NuYnhHR1pGKy8wb29JN0tyUHVVU3p0VWRVNUE9PSJdLAoKICAgICJzdHlsZWQtanN4IjogWyJzdHlsZWQtanN4QDUuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImNsaWVudC1vbmx5IjogIjAuMC4xIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49IDE2LjguMCB8fCAxNy54LnggfHwgXjE4LjAuMC0wIHx8IF4xOS4wLjAtMCIgfSB9LCAic2hhNTEyLXFTVnlEVGVNb3RkdlFZb0hXTE5Hd1JGSkhDK2krWnZkQlJZb3NPRmdDK1dnMXZ4NGZyTjIvUkcvTkE3U1lxcXZLTkxmMzlQMkxTUkEycHU2bjBYWVpBPT0iXSwKCiAgICAic3VwcG9ydHMtY29sb3IiOiBbInN1cHBvcnRzLWNvbG9yQDguMS4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImhhcy1mbGFnIjogIl40LjAuMCIgfSB9LCAic2hhNTEyLU1wVUVOMk9vZHRVenh2S1FsNzJjVUY3UlE1RWlIc0d2U3NWRzBpYTljNVJiV0dMMkNJNEM3RXBQUzhVVEJJcGxubHpaaU51VjU2dytGdU54eTN0eTJRPT0iXSwKCiAgICAidGFpbHdpbmQtbWVyZ2UiOiBbInRhaWx3aW5kLW1lcmdlQDMuNi4wIiwgIiIsIHt9LCAic2hhNTEyLXV4TDdxQVZRcmlxUlFQQXlLM3BqNjZWcXNrV3FvWjM3UFc5NGp3T1R3TmZxL3o5b3l1MVYrZXFyWnF0UjIrZkNpWGRZT1plL01vZHQ4R3R2cU56dSt3PT0iXSwKCiAgICAidGFpbHdpbmRjc3MiOiBbInRhaWx3aW5kY3NzQDQuMy4wIiwgIiIsIHt9LCAic2hhNTEyLXk2bnhNR0Ixbk1XOVI2azk2ZTVnZElGemNmTC9nVEpSTmFxR2VzMVl2a0xuUFZYeldnYnFGRjJ5TEMwVDhHNzc0bjI0Y3gzUGU4WHJLb25pQ09BSCtRPT0iXSwKCiAgICAidGFwYWJsZSI6IFsidGFwYWJsZUAyLjMuMyIsICIiLCB7fSwgInNoYTUxMi11eGMvenBxRmc2eDdDOHZPRTdsaDZMYmRhOGVFTDl6bVZtL1BMZVRQQlJoaDF4Q2dkV2FRK0oxQ1VpZUdwSWZtMkhkdHNVcFJ2K0hzaGlhc0JNY2M2QT09Il0sCgogICAgInRlcnNlciI6IFsidGVyc2VyQDUuMTYuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAanJpZGdld2VsbC9zb3VyY2UtbWFwIjogIl4wLjMuMiIsICJhY29ybiI6ICJeOC41LjAiLCAiY29tbWFuZGVyIjogIl4yLjIwLjAiLCAic291cmNlLW1hcC1zdXBwb3J0IjogIn4wLjUuMjAiIH0sICJiaW4iOiB7ICJ0ZXJzZXIiOiAiYmluL3RlcnNlciIgfSB9LCAic2hhNTEyLUhQYS9GZFRCOVhHSTJIMS9rZUxGWkh4bDZXTnZBSTRZYWxIR3REUVRsTW5KY29xU2FiMVV3TDRsMWhHRWhzNi9HbUxIQlpJZy9ZZ0IrK2pjYnpvT0VnPT0iXSwKCiAgICAidGlueWJlbmNoIjogWyJ0aW55YmVuY2hAMi45LjAiLCAiIiwge30sICJzaGE1MTItMCtEVXZxV01WYWxMbWhhNmxyNGtEOGlBTUsxSHpWMC9hS25DdFdiOXY5NjQxVG5QL01GYjdQYzJieG94UWpUWEFFcnJ5WFZnVU9mdjJZcU5sbHFHZWc9PSJdLAoKICAgICJ0aW55ZXhlYyI6IFsidGlueWV4ZWNAMS4xLjIiLCAiIiwge30sICJzaGE1MTItZEFxU3FFL1JhYnBCS0k4K2gyNkdmTHE2VmIzSlZYczMwWFlRamRNamFqL2MydFM4SVlZTWJJelA1OTlLdFJqN2M1Ny93WUFwYjNRamdSZ1htckN1a0E9PSJdLAoKICAgICJ0aW55Z2xvYmJ5IjogWyJ0aW55Z2xvYmJ5QDAuMi4xNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJmZGlyIjogIl42LjUuMCIsICJwaWNvbWF0Y2giOiAiXjQuMC40IiB9IH0sICJzaGE1MTItcG45OVZob0FDWVI4bkZIaHhxaXgrdXZzYlhpbmVBYXNXbTVvalhvTjh4RXdLNUtkMy9UcmhObjF3Qnl1RDUyVXhXUkx5OHB1K2tSTW5pRWk2RXE5Wmc9PSJdLAoKICAgICJ0aW55cmFpbmJvdyI6IFsidGlueXJhaW5ib3dAMy4xLjAiLCAiIiwge30sICJzaGE1MTItQmYrSUxtQmdyZXRVcmRKeHpYTTBTZ1hMWjNYZmlhVXVPai9JS1FIdVRYaXArMDVYbit1eUVZZFZnMGtZRGlwVEJjTHJDVnlVekFQejdRbUFyYjBtbXc9PSJdLAoKICAgICJ0cmVlLWtpbGwiOiBbInRyZWUta2lsbEAxLjIuMiIsICIiLCB7ICJiaW4iOiB7ICJ0cmVlLWtpbGwiOiAiY2xpLmpzIiB9IH0sICJzaGE1MTItTDBPcnBpOHFHcFJHLy9OZCtIOTB2RkIrM2lIbnVlMXpTU0dtTk9PQ2gxR0xKN3JVS1Z3VjJIdmlqcGhHUVMyVW1oVVpld1M5Vmd2eFlJZGdyK2ZHMUE9PSJdLAoKICAgICJ0c2xpYiI6IFsidHNsaWJAMi44LjEiLCAiIiwge30sICJzaGE1MTItb0pGdTk0SFFiK0tWZHVTVVFMN3ducG1xbmZtTHNPQS9uQWg2YjZFSDB3Q0VvSzAvbVBlWFU2YzN3S0RWODNNa091SFBSSHRTWEtLVTk5SUJhelMvMnc9PSJdLAoKICAgICJ0eXBlc2NyaXB0IjogWyJ0eXBlc2NyaXB0QDUuOS4zIiwgIiIsIHsgImJpbiI6IHsgInRzYyI6ICJiaW4vdHNjIiwgInRzc2VydmVyIjogImJpbi90c3NlcnZlciIgfSB9LCAic2hhNTEyLWpsMXZaelBEaW5McjllVXQzSi90N1Y2RmdORXc5UWp2QlBkeXN6OUtmUURENDFmUXJDMlk0dktRZGlhVXBGVDRiWGxiMVJIaExwcDh3dG02TTVUZ1N3PT0iXSwKCiAgICAidW5kaWNpLXR5cGVzIjogWyJ1bmRpY2ktdHlwZXNANi4yMS4wIiwgIiIsIHt9LCAic2hhNTEyLWl3RFpxZzBRQUdyZzlSYXY1SDRuME02NGMzbWtSNTljSjZ3UXArN0M0bkkwZ3NtRXhhZWRhWUxOTzQ0ZVQ0QXRCQndqYlRpR1BNbHQyTWQwVDlIOUpRPT0iXSwKCiAgICAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiBbInVzZS1zeW5jLWV4dGVybmFsLXN0b3JlQDEuNi4wIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTYuOC4wIHx8IF4xNy4wLjAgfHwgXjE4LjAuMCB8fCBeMTkuMC4wIiB9IH0sICJzaGE1MTItUHA2R1N3R1AvTnJQSXJ4VkZBSWtPUWV5dzhsRmVuT0hpalFXa1VUckR2ckY0QUxxeWxQMkMvS0NrZVM5ZHBVTTNLdllSUWhuYTV2dDdJTDk1K1pROXc9PSJdLAoKICAgICJ2aXRlIjogWyJ2aXRlQDguMC4xMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJsaWdodG5pbmdjc3MiOiAiXjEuMzIuMCIsICJwaWNvbWF0Y2giOiAiXjQuMC40IiwgInBvc3Rjc3MiOiAiXjguNS4xNCIsICJyb2xsZG93biI6ICIxLjAuMSIsICJ0aW55Z2xvYmJ5IjogIl4wLjIuMTYiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImZzZXZlbnRzIjogIn4yLjMuMyIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvbm9kZSI6ICJeMjAuMTkuMCB8fCA+PTIyLjEyLjAiLCAiQHZpdGVqcy9kZXZ0b29scyI6ICJeMC4xLjE4IiwgImVzYnVpbGQiOiAiXjAuMjcuMCB8fCBeMC4yOC4wIiwgImppdGkiOiAiPj0xLjIxLjAiLCAibGVzcyI6ICJeNC4wLjAiLCAic2FzcyI6ICJeMS43MC4wIiwgInNhc3MtZW1iZWRkZWQiOiAiXjEuNzAuMCIsICJzdHlsdXMiOiAiPj0wLjU0LjgiLCAic3VnYXJzcyI6ICJeNS4wLjAiLCAidGVyc2VyIjogIl41LjE2LjAiLCAidHN4IjogIl40LjguMSIsICJ5YW1sIjogIl4yLjQuMiIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9ub2RlIiwgIkB2aXRlanMvZGV2dG9vbHMiLCAiZXNidWlsZCIsICJqaXRpIiwgImxlc3MiLCAic2FzcyIsICJzYXNzLWVtYmVkZGVkIiwgInN0eWx1cyIsICJzdWdhcnNzIiwgInRlcnNlciIsICJ0c3giLCAieWFtbCJdLCAiYmluIjogeyAidml0ZSI6ICJiaW4vdml0ZS5qcyIgfSB9LCAic2hhNTEyLU1GdGpCWWd6bVN4bWdBNFJBZmpJeVhXcEdlMW9BTG5qZ1VUenpWN1FMeC9US3hDemp0TUg2RmQ5L2VWSys1RmcxcU5vejVWQXdzbU1zL05vZnJtSnZ3PT0iXSwKCiAgICAidml0ZXN0IjogWyJ2aXRlc3RANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9leHBlY3QiOiAiNC4xLjYiLCAiQHZpdGVzdC9tb2NrZXIiOiAiNC4xLjYiLCAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgIkB2aXRlc3QvcnVubmVyIjogIjQuMS42IiwgIkB2aXRlc3Qvc25hcHNob3QiOiAiNC4xLjYiLCAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiQHZpdGVzdC91dGlscyI6ICI0LjEuNiIsICJlcy1tb2R1bGUtbGV4ZXIiOiAiXjIuMC4wIiwgImV4cGVjdC10eXBlIjogIl4xLjMuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAib2J1ZyI6ICJeMi4xLjEiLCAicGF0aGUiOiAiXjIuMC4zIiwgInBpY29tYXRjaCI6ICJeNC4wLjMiLCAic3RkLWVudiI6ICJeNC4wLjAtcmMuMSIsICJ0aW55YmVuY2giOiAiXjIuOS4wIiwgInRpbnlleGVjIjogIl4xLjAuMiIsICJ0aW55Z2xvYmJ5IjogIl4wLjIuMTUiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiwgInZpdGUiOiAiXjYuMC4wIHx8IF43LjAuMCB8fCBeOC4wLjAiLCAid2h5LWlzLW5vZGUtcnVubmluZyI6ICJeMi4zLjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVkZ2UtcnVudGltZS92bSI6ICIqIiwgIkBvcGVudGVsZW1ldHJ5L2FwaSI6ICJeMS45LjAiLCAiQHR5cGVzL25vZGUiOiAiXjIwLjAuMCB8fCBeMjIuMC4wIHx8ID49MjQuMC4wIiwgIkB2aXRlc3QvYnJvd3Nlci1wbGF5d3JpZ2h0IjogIjQuMS42IiwgIkB2aXRlc3QvYnJvd3Nlci1wcmV2aWV3IjogIjQuMS42IiwgIkB2aXRlc3QvYnJvd3Nlci13ZWJkcml2ZXJpbyI6ICI0LjEuNiIsICJAdml0ZXN0L2NvdmVyYWdlLWlzdGFuYnVsIjogIjQuMS42IiwgIkB2aXRlc3QvY292ZXJhZ2UtdjgiOiAiNC4xLjYiLCAiQHZpdGVzdC91aSI6ICI0LjEuNiIsICJoYXBweS1kb20iOiAiKiIsICJqc2RvbSI6ICIqIiB9LCAib3B0aW9uYWxQZWVycyI6IFsiQGVkZ2UtcnVudGltZS92bSIsICJAb3BlbnRlbGVtZXRyeS9hcGkiLCAiQHR5cGVzL25vZGUiLCAiQHZpdGVzdC9icm93c2VyLXBsYXl3cmlnaHQiLCAiQHZpdGVzdC9icm93c2VyLXByZXZpZXciLCAiQHZpdGVzdC9icm93c2VyLXdlYmRyaXZlcmlvIiwgIkB2aXRlc3QvY292ZXJhZ2UtaXN0YW5idWwiLCAiQHZpdGVzdC9jb3ZlcmFnZS12OCIsICJAdml0ZXN0L3VpIiwgImhhcHB5LWRvbSIsICJqc2RvbSJdLCAiYmluIjogeyAidml0ZXN0IjogInZpdGVzdC5tanMiIH0gfSwgInNoYTUxMi02bHZqYlMzcDliNENyZENtZ3V6YmgyLzR1b1hoR0UycTcxUjRPWDVzcUY5UjFibzlYZDZmR3JNQWZ2cDV3bkN6bEJuRlZkQ09wNm9udVRRVmJvOGlVUT09Il0sCgogICAgIndoeS1pcy1ub2RlLXJ1bm5pbmciOiBbIndoeS1pcy1ub2RlLXJ1bm5pbmdAMi4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAic2lnaW5mbyI6ICJeMi4wLjAiLCAic3RhY2tiYWNrIjogIjAuMC4yIiB9LCAiYmluIjogeyAid2h5LWlzLW5vZGUtcnVubmluZyI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1oVXJtYVdCZFZEY3h2WXFueWgwOXp1bkt6Uk9XamJaVGlOeThkQkVqa1M3ZWhFRFFpYlhKN1h2bG10Ynd1VGNsVWlJeU4rQ3lYUUQ0Vm1rbzhmTm04dz09Il0sCgogICAgIndyYXAtYW5zaSI6IFsid3JhcC1hbnNpQDcuMC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImFuc2ktc3R5bGVzIjogIl40LjAuMCIsICJzdHJpbmctd2lkdGgiOiAiXjQuMS4wIiwgInN0cmlwLWFuc2kiOiAiXjYuMC4wIiB9IH0sICJzaGE1MTItWVZHSWoya2FtTFNUeHc2TnNaam9CeGZTd3NuMHljZGVzbWM0cCtRMjFjNXpQdVoxcGwrTmZ4VmR4UHRkSHZtTlZPUTZYU1lHNEFVdHl0L0ZpN0QxNlE9PSJdLAoKICAgICJ4c3MiOiBbInhzc0AxLjAuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29tbWFuZGVyIjogIl4yLjIwLjMiLCAiY3NzZmlsdGVyIjogIjAuMC4xMCIgfSwgImJpbiI6IHsgInhzcyI6ICJiaW4veHNzIiB9IH0sICJzaGE1MTItRlZkbFZWQzY3V09JUHZmT3dob01FVFY3MmY2R2JXN2FPYWJCQzNXeE4vb1Vkb0VNRHlMejRPZ1J2NS9nY2syWmVOcUVRdStUYjBrbG9vdlhPZnBZVmc9PSJdLAoKICAgICJ5MThuIjogWyJ5MThuQDUuMC44IiwgIiIsIHt9LCAic2hhNTEyLTBwZkZ6ZWdlRFdKSEpJQW1UTFJQMkR3SGpkRjVzN2pvOXR1enRkUXhBaElOQ2R2UyszbkdJTnFQZDAwQXBocUpSLzBMaEFOVVM2Lys3U0NiOThZT2ZBPT0iXSwKCiAgICAieWFtbCI6IFsieWFtbEAyLjkuMCIsICIiLCB7ICJiaW4iOiB7ICJ5YW1sIjogImJpbi5tanMiIH0gfSwgInNoYTUxMi0yQXZoTlgzbWI4emQ2Wnk3SU5UdFNwbDFGMTVIVzZXbnFqMHNyV2xrS0xjcFlsL2dNSU1KaXl1R3EyS2VJMllGeFVQamRsQiszTGMxMHNlTUx0TDRjQT09Il0sCgogICAgInlhcmdzIjogWyJ5YXJnc0AxNy43LjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY2xpdWkiOiAiXjguMC4xIiwgImVzY2FsYWRlIjogIl4zLjEuMSIsICJnZXQtY2FsbGVyLWZpbGUiOiAiXjIuMC41IiwgInJlcXVpcmUtZGlyZWN0b3J5IjogIl4yLjEuMSIsICJzdHJpbmctd2lkdGgiOiAiXjQuMi4zIiwgInkxOG4iOiAiXjUuMC41IiwgInlhcmdzLXBhcnNlciI6ICJeMjEuMS4xIiB9IH0sICJzaGE1MTItN2RTenpSUSsrQ0tuTkkva3JLbllSVjdKS0tQVVhNRWg2MXNvYUhLZzltcldFaHpGV2hGbnhQeEdsKzY5Y0QxT3U2M0MxM05VUENubUljcnZxQ3VNNnc9PSJdLAoKICAgICJ5YXJncy1wYXJzZXIiOiBbInlhcmdzLXBhcnNlckAyMS4xLjEiLCAiIiwge30sICJzaGE1MTItdFZwc0pXN0RkamVjQWlGcGJJQjFlM3F4SVFzRTZOb1BjNS9lVGRyYmJJQzRoMExWc1dobm9hM2crbTJIY2xCSXVqSHpzeFo0VkpWQStHVXVjMi9MQnc9PSJdLAoKICAgICJ6b2QiOiBbInpvZEA0LjQuMyIsICIiLCB7fSwgInNoYTUxMi15dEVORmpJSkZsMlV3WWdsZGUyamNoVzJId200R0pGTERpU1hXZFRySlFCSU45RmN5cDduNERoeEpFaVdOQUpNVjEvQnFXZlcva2tnNzFVRGNISnlUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaS9AZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9LCAiYnVuZGxlZCI6IHRydWUgfSwgInNoYTUxMi15cTZPa0o0cDgyQ0FmUGwwdTltUWViUUhLUEprWTdXckl1azIwNWNUWW5ZZStrMlo4WUJoMTFGcmJSRy9INmloaXJxY2FjT2dsMkJJTzhveU1RTGVYdz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaS9AZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9LCAiYnVuZGxlZCI6IHRydWUgfSwgInNoYTUxMi1ld3ZZbGs4NnhVb0dJMHpRUk5xL21DKzE2UjFRZURsS1F5MjFLaTNvU1lYTmdMYjQ1R1YxUDZBME0rL3M2bnlDdU5EcWU1VnBhWTg0QnpYR3dWYndGQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaS9AZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9LCAiYnVuZGxlZCI6IHRydWUgfSwgInNoYTUxMi11VElJN09ZRisvTWVzL01yY0lPWXA1eU90U01MQldTSW9MUHBjZ3dpcG9pS2JsaTZrMzIydGNvRnN4b0lJeFBEcVcwMVNRR0Fna280RXpaaTJCTnYydz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaS9AbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9LCAiYnVuZGxlZCI6IHRydWUgfSwgInNoYTUxMi0zTlFOTmdBMVlTbEpiL2tNSDFpbGRBU1A5SFc3LzdrWW5SSTJzeldKYW9mYVMxaFdtYkdJNEgrZDMrMjJhR3pYWE45SUorbitHaUZWY0dpcEpQMThvdz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaS9AdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLVJvQnZKMlgwd3VLbFdGSWpyd2ZmR3cxSXFaSEtRcXpJY2hLYWFkWlpmbk5wc0FZcDJtTTBoMzZKdFBDak5EQUhHZ1llei8xNXVNQnBmR3djaGhpTWdnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL3RzbGliIjogWyJ0c2xpYkAyLjguMSIsICIiLCB7ICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLW9KRnU5NEhRYitLVmR1U1VRTDd3bnBtcW5mbUxzT0EvbkFoNmI2RUgwd0NFb0swL21QZVhVNmMzd0tEVjgzTWtPdUhQUkh0U1hLS1U5OUlCYXpTLzJ3PT0iXSwKCiAgICAiY2hhbGsvc3VwcG9ydHMtY29sb3IiOiBbInN1cHBvcnRzLWNvbG9yQDcuMi4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImhhcy1mbGFnIjogIl40LjAuMCIgfSB9LCAic2hhNTEyLXFwQ0F2Umw5c3R1T0h2ZUtzbjdIbmNKUnZ2NTAxcUlhY0t6UWxPLytMd3hjOSswcTJ3THl2NERmdnQ4MC9EUG4ycHFPQnNKZERpb2dYR1I5K092d1J3PT0iXSwKCiAgICAibmV4dC9wb3N0Y3NzIjogWyJwb3N0Y3NzQDguNC4zMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy42IiwgInBpY29jb2xvcnMiOiAiXjEuMC4wIiwgInNvdXJjZS1tYXAtanMiOiAiXjEuMC4yIiB9IH0sICJzaGE1MTItUFMwOElib2lhOW10cy8yeWdWM2VMcFk1Z2huVWNmTFYvRVhUT1cxRTJxWXhKS0dHQlV0TmpONzZGWUhuTXMzNlJtQVJuNDFiQzBBWm1uK3JSME9WcFE9PSJdLAoKICAgICJ2aXRlL2ZzZXZlbnRzIjogWyJmc2V2ZW50c0AyLjMuMyIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iIH0sICJzaGE1MTItNXhvRGZYK2ZMN2ZhQVRuYWdtV1BwYkZ0d2gvUjc3V21NTXFxSEdTNjVDM3Z2QjBZSHJnRitCMVltWjM0NDF0TWo1bjYzazAyMTJYTm9Kd3psaGZmUXc9PSJdLAogIH0KfQo=" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "fashion",\n "name": "Fashion",\n "tagline": "Editorial multi-drop fashion storefront with lookbooks and size guides.",\n "industry": "fashion",\n "tags": ["fashion", "apparel", "lookbook"],\n "stability": "stable",\n "schemaType": "Store",\n "mock": {\n "seedName": "fashion",\n "seedBusinessId": "bus_studio_frx"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n // Title supports a single \\n for a hard line break.\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-mono uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="text-[clamp(2.25rem,5vw,3.5rem)] font-bold mb-6 -tracking-[0.025em] leading-tight">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="text-2xl font-semibold mt-10 mb-3 -tracking-[0.02em]">\n {s.heading}\n </h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full catalogue with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/products/${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [Support / FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
6204
|
+
` }, { "path": "lib/site-url.ts", "kind": "text", "content": 'import { SITE_URL } from "./site.config";\n\n/** Canonical absolute URL for this storefront. */\nexport async function getSiteUrl(): Promise<string> {\n return SITE_URL;\n}\n' }, { "path": "lib/cimplify-loader.ts", "kind": "text", "content": 'import type { ImageLoader } from "next/image";\n\nimport { assetUrl, isCimplifyAsset } from "@cimplify/sdk";\n\nconst cdnBase = process.env.NEXT_PUBLIC_CIMPLIFY_CDN_URL?.trim() || undefined;\n\nconst cimplifyImageLoader: ImageLoader = ({ src, width, quality }) => {\n if (isCimplifyAsset(src, cdnBase)) {\n return assetUrl(src, {\n base: cdnBase,\n w: width,\n quality,\n format: "auto",\n });\n }\n return src;\n};\n\nexport default cimplifyImageLoader;\n' }, { "path": "lib/cart.ts", "kind": "text", "content": '"use client";\n\nimport { useCart } from "@cimplify/sdk/react";\n\n/**\n * Reactive cart count for the header pill. Subscribes to the SDK cart\n * state \u2014 updates immediately on add / remove / quantity change.\n */\nexport function useCartCount(): { count: number } {\n const { itemCount } = useCart();\n return { count: itemCount };\n}\n' }, { "path": "middleware.ts", "kind": "text", "content": `import { NextResponse, type NextRequest } from "next/server";
|
|
6205
|
+
import { handleTokenRefresh, type OidcConfig } from "@cimplify/sdk/server";
|
|
6206
|
+
|
|
6207
|
+
function oidcConfig(): OidcConfig | null {
|
|
6208
|
+
const clientId =
|
|
6209
|
+
process.env.CIMPLIFY_CLIENT_ID?.trim() ||
|
|
6210
|
+
process.env.NEXT_PUBLIC_CIMPLIFY_CLIENT_ID?.trim() ||
|
|
6211
|
+
"";
|
|
6212
|
+
if (!clientId) return null;
|
|
6213
|
+
return {
|
|
6214
|
+
clientId,
|
|
6215
|
+
issuer: process.env.CIMPLIFY_ISSUER?.trim() || undefined,
|
|
6216
|
+
authUrl: process.env.CIMPLIFY_AUTH_URL?.trim() || undefined,
|
|
6217
|
+
};
|
|
6218
|
+
}
|
|
6219
|
+
|
|
6220
|
+
// Keeps the access token fresh before account pages render. Server Components
|
|
6221
|
+
// can't write cookies, so this is the one place the rotated token can be both
|
|
6222
|
+
// persisted (browser) and forwarded onto the current request (this render).
|
|
6223
|
+
export async function middleware(request: NextRequest) {
|
|
6224
|
+
const cfg = oidcConfig();
|
|
6225
|
+
if (!cfg) return NextResponse.next();
|
|
6226
|
+
|
|
6227
|
+
const { outcome, setCookies, cookies } = await handleTokenRefresh(request, cfg);
|
|
6228
|
+
if (outcome === "noop") return NextResponse.next();
|
|
6229
|
+
|
|
6230
|
+
for (const { name, value } of cookies) {
|
|
6231
|
+
request.cookies.set(name, value);
|
|
6232
|
+
}
|
|
6233
|
+
const response = NextResponse.next({ request });
|
|
6234
|
+
for (const cookie of setCookies) {
|
|
6235
|
+
response.headers.append("set-cookie", cookie);
|
|
6236
|
+
}
|
|
6237
|
+
return response;
|
|
6238
|
+
}
|
|
6239
|
+
|
|
6240
|
+
export const config = {
|
|
6241
|
+
matcher: ["/account/:path*"],
|
|
6242
|
+
};
|
|
6243
|
+
` }, { "path": ".gitignore", "kind": "text", "content": "node_modules\n.next\n.open-next\nout\n.env\n.env.local\n.env*.local\n.DS_Store\n*.tsbuildinfo\nnext-env.d.ts\n\n# Playwright runtime artifacts (commit the snapshots in e2e/__snapshots__/)\ntest-results/\nplaywright-report/\nblob-report/\n.playwright/\n" }, { "path": "package.json", "kind": "text", "content": '{\n "name": "__STOREFRONT_NAME__",\n "private": true,\n "version": "0.0.0",\n "scripts": {\n "dev": "concurrently -k -n mock,next -c blue,magenta \\"cimplify-mock --seed fashion --quiet\\" \\"next dev\\"",\n "dev:storefront": "next dev",\n "dev:mock": "cimplify-mock --seed fashion",\n "build": "next build",\n "start": "next start",\n "typecheck": "tsc --noEmit",\n "test": "vitest",\n "test:run": "vitest run",\n "check:brand": "vitest run __tests__/brand.test.ts",\n "check:cart": "vitest run __tests__/cart-flow.test.ts",\n "check:contract": "vitest run __tests__/contract.test.ts",\n "check:visual": "playwright test",\n "check:visual:update": "playwright test --update-snapshots",\n "check": "bun run typecheck && bun run test:run"\n },\n "dependencies": {\n "@cimplify/sdk": "^0.67.0",\n "next": "^16.2.6",\n "react": "^19.0.0",\n "react-dom": "^19.0.0"\n },\n "devDependencies": {\n "@playwright/test": "^1.50.0",\n "@tailwindcss/postcss": "^4.2.4",\n "@types/node": "^22.10.0",\n "@types/react": "^19.0.0",\n "@types/react-dom": "^19.0.0",\n "concurrently": "^9.0.0",\n "tailwindcss": "^4.2.4",\n "typescript": "^5.9.3",\n "vitest": "^4.1.5"\n }\n}\n' }, { "path": "bun.lock", "kind": "binary", "content": "ewogICJsb2NrZmlsZVZlcnNpb24iOiAxLAogICJjb25maWdWZXJzaW9uIjogMSwKICAid29ya3NwYWNlcyI6IHsKICAgICIiOiB7CiAgICAgICJuYW1lIjogIl9fU1RPUkVGUk9OVF9OQU1FX18iLAogICAgICAiZGVwZW5kZW5jaWVzIjogewogICAgICAgICJAY2ltcGxpZnkvc2RrIjogIl4wLjY0LjEiLAogICAgICAgICJuZXh0IjogIl4xNi4yLjYiLAogICAgICAgICJyZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAicmVhY3QtZG9tIjogIl4xOS4wLjAiLAogICAgICB9LAogICAgICAiZGV2RGVwZW5kZW5jaWVzIjogewogICAgICAgICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUwLjAiLAogICAgICAgICJAdGFpbHdpbmRjc3MvcG9zdGNzcyI6ICJeNC4yLjQiLAogICAgICAgICJAdHlwZXMvbm9kZSI6ICJeMjIuMTAuMCIsCiAgICAgICAgIkB0eXBlcy9yZWFjdCI6ICJeMTkuMC4wIiwKICAgICAgICAiQHR5cGVzL3JlYWN0LWRvbSI6ICJeMTkuMC4wIiwKICAgICAgICAiY29uY3VycmVudGx5IjogIl45LjAuMCIsCiAgICAgICAgInRhaWx3aW5kY3NzIjogIl40LjIuNCIsCiAgICAgICAgInR5cGVzY3JpcHQiOiAiXjUuOS4zIiwKICAgICAgICAidml0ZXN0IjogIl40LjEuNSIsCiAgICAgIH0sCiAgICB9LAogIH0sCiAgInBhY2thZ2VzIjogewogICAgIkBhbGxvYy9xdWljay1scnUiOiBbIkBhbGxvYy9xdWljay1scnVANS4yLjAiLCAiIiwge30sICJzaGE1MTItVXJjQUJCKzRiVXJGQUJ3Ymx1VElCRXJYd3Zic1UvVjdUWldmbWJnSmZia3dpQnV6aVM5Z3hkT0RVeXVpZWNmZEdRODVqZ2xNVzZqdVMzK3o1VHNLTHc9PSJdLAoKICAgICJAYmFiZWwvcnVudGltZSI6IFsiQGJhYmVsL3J1bnRpbWVANy4yOS4yIiwgIiIsIHt9LCAic2hhNTEyLUppRFNoSDQ1ektIV3lHZTRaTlZSckNqQno4Tmg5VE1tWkcxa2g0UVRLOGhDQlRXQmk4RGEraTdzMWZKdzcvbFlwTTRjY2VwU05mcXpaL1F2QUJCaTVnPT0iXSwKCiAgICAiQGJhc2UtdWkvcmVhY3QiOiBbIkBiYXNlLXVpL3JlYWN0QDEuNS4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBiYWJlbC9ydW50aW1lIjogIl43LjI5LjIiLCAiQGJhc2UtdWkvdXRpbHMiOiAiMC4yLjkiLCAiQGZsb2F0aW5nLXVpL3JlYWN0LWRvbSI6ICJeMi4xLjgiLCAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiLCAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiAiXjEuNi4wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBkYXRlLWZucy90eiI6ICJeMS4yLjAiLCAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgImRhdGUtZm5zIjogIl40LjAuMCIsICJyZWFjdCI6ICJeMTcgfHwgXjE4IHx8IF4xOSIsICJyZWFjdC1kb20iOiAiXjE3IHx8IF4xOCB8fCBeMTkiIH0sICJvcHRpb25hbFBlZXJzIjogWyJAZGF0ZS1mbnMvdHoiLCAiQHR5cGVzL3JlYWN0IiwgImRhdGUtZm5zIl0gfSwgInNoYTUxMi16MWdTQWxjZWQxeVkraU0rbUhERXRJa0Q4VUkzRWJzNTJNdUJQeHZWNmY1aFJ1dGsreHZDSC93dUI3aERxRHpLOUpHNUZvTXo1bmhycXRTczF3anQxQT09Il0sCgogICAgIkBiYXNlLXVpL3V0aWxzIjogWyJAYmFzZS11aS91dGlsc0AwLjIuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFiZWwvcnVudGltZSI6ICJeNy4yOS4yIiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiwgInJlc2VsZWN0IjogIl41LjEuMSIsICJ1c2Utc3luYy1leHRlcm5hbC1zdG9yZSI6ICJeMS42LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL3JlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0IjogIl4xNyB8fCBeMTggfHwgXjE5IiwgInJlYWN0LWRvbSI6ICJeMTcgfHwgXjE4IHx8IF4xOSIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9yZWFjdCJdIH0sICJzaGE1MTIteC9QRERDWXpvcVBwanJkeWIzVmN5eWxUSTJJalVYRXRZREdpNWZvaDdLc25tTkpJSWFWd0EyR0xnREgxZHBzMUdnWGlKYkE2MGhNK0F5dVRmUXpJdnc9PSJdLAoKICAgICJAY2ltcGxpZnkvc2RrIjogWyJAY2ltcGxpZnkvc2RrQDAuNjQuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYmFzZS11aS9yZWFjdCI6ICJeMS40LjEiLCAiY2xzeCI6ICJeMi4xLjEiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImpvc2UiOiAiXjYuMi4zIiwgImxpYnBob25lbnVtYmVyLWpzIjogIjEuMTIuNDEiLCAicmVhY3QtZGF5LXBpY2tlciI6ICJeOS4xNC4wIiwgInRhaWx3aW5kLW1lcmdlIjogIl4zLjUuMCIsICJ4c3MiOiAiXjEuMC4xNSIsICJ6b2QiOiAiXjQuNC4zIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIkBwYXlzdGFjay9pbmxpbmUtanMiOiAiXjIuMjIuOCIsICJtc3ciOiAiPj0yLjAuMCIsICJyZWFjdCI6ICI+PTE3LjAuMCIsICJ2aXRlc3QiOiAiPj0yLjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBwYXlzdGFjay9pbmxpbmUtanMiLCAibXN3IiwgInJlYWN0IiwgInZpdGVzdCJdLCAiYmluIjogeyAiY2ltcGxpZnktbW9jayI6ICJkaXN0L21vY2svY2xpLm1qcyIgfSB9LCAic2hhNTEyLXFZM25nQXhBeWVSd0hSNWpKWjdlZWVOS2d2YXlabFZVdU5nbHA3NzliSml3dHdMM2NaOFV4NEwrazNTZ1J6Z0F4dEt6OVlVMm1tVkJaeEV1MTRmclV3PT0iXSwKCiAgICAiQGRhdGUtZm5zL3R6IjogWyJAZGF0ZS1mbnMvdHpAMS40LjEiLCAiIiwge30sICJzaGE1MTItUDVMVU5odGJqNllmSTNpSmp3NUVMOWVVQUc2T2l0RDBXM2ZXUWNwUWpEUmMvUUlzTDB0Uk51TzFQY0R2UGNjV0wxZlNUWFhkRTFkcytsOTVEVi9PRkE9PSJdLAoKICAgICJAZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTIteXE2T2tKNHA4MkNBZlBsMHU5bVFlYlFIS1BKa1k3V3JJdWsyMDVjVFluWWUrazJaOFlCaDExRnJiUkcvSDZpaGlycWNhY09nbDJCSU84b3lNUUxlWHc9PSJdLAoKICAgICJAZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItZXd2WWxrODZ4VW9HSTB6UVJOcS9tQysxNlIxUWVEbEtReTIxS2kzb1NZWE5nTGI0NUdWMVA2QTBNKy9zNm55Q3VORHFlNVZwYVk4NEJ6WEd3VmJ3RkE9PSJdLAoKICAgICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9IH0sICJzaGE1MTItdVRJSTdPWUYrL01lcy9NcmNJT1lwNXlPdFNNTEJXU0lvTFBwY2d3aXBvaUtibGk2azMyMnRjb0ZzeG9JSXhQRHFXMDFTUUdBZ2tvNEV6WmkyQk52Mnc9PSJdLAoKICAgICJAZXNidWlsZC9haXgtcHBjNjQiOiBbIkBlc2J1aWxkL2FpeC1wcGM2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYWl4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi0xVkNJQ1d5cGVRS2hWYkU5b1cvc0phQW1qTHhoVnFhY2RrdlBMRWp3bHR0amZ3RU5SU0NsUzhFakJ6MEt6UnlGU0NQRElrdVhXMzRKZS92azd6ZEI3UT09Il0sCgogICAgIkBlc2J1aWxkL2FuZHJvaWQtYXJtIjogWyJAZXNidWlsZC9hbmRyb2lkLWFybUAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLVFOZFFFcHM3RGZGd0UzaFhpVTRCWmVPVjY4SEh6WXdHZDBOdGhoZDN1Q2trRUtLNy9SNk1UZ00wUDdIN0ZBczVwVS9ESVdzdmlNbUVHeEVveElaK1pRPT0iXSwKCiAgICAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItYkJ5NjlwZ2ZoTUd0Q253cEMveDVRaGZ4QXovY0JnUTllbmJ0d2pmNlY5bG5QSS9oTXlUOWlXcFIxYXJtMGwza3R0VHI0TDBLU0xwS21McC9pbEtTOUE9PSJdLAoKICAgICJAZXNidWlsZC9hbmRyb2lkLXg2NCI6IFsiQGVzYnVpbGQvYW5kcm9pZC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1UVmhkVnRRSUZ1VnBJSVIyODJidGNHQzJvR1FvU2ZaZm1CZFRpcDJhbkNhVlljcVdsWlhHY2RjS0lVa2xmWDJ3ajBKa2xOWWd6MzlPQnFoMmNxWHZjUT09Il0sCgogICAgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6IFsiQGVzYnVpbGQvZGFyd2luLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVkxZ2lDZk00bmxIRFdFZlNja016ZVdOZFFTMzFCUUdzOS9yb3V3NlViOTF0a0s3OWFJTVRIM3E5eEh2ekg4ZDB3RHJ1NUNpMGtXQjhiM3VwL25sMTZnPT0iXSwKCiAgICAiQGVzYnVpbGQvZGFyd2luLXg2NCI6IFsiQGVzYnVpbGQvZGFyd2luLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQ0pzcnk4WkdNNVZGVmV5VVlCM2NkS3BkL0g2OVBZZXo0ZUpoMVcvdDM4dnp1dGRqRWp0UDdoQjZlTEtCb09keGNBbEN0RVlIelEvUEovb1U5STR1MEE9PSJdLAoKICAgICJAZXNidWlsZC9mcmVlYnNkLWFybTY0IjogWyJAZXNidWlsZC9mcmVlYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi15WXErMzlObFRSelUyWG1vUFc0bDVJZnBsOWZxU2swbkFKWU0vVi9XVUdQRUZmZWsxZXBMSEpJa1RRTTZiQnMxc3dBcGpPNW5XZ3ZyODQzZzZUanh1UT09Il0sCgogICAgIkBlc2J1aWxkL2ZyZWVic2QteDY0IjogWyJAZXNidWlsZC9mcmVlYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLTBGZ3ZPSjZVVU1mbHNIU1BMemRmRG5uQkJWb0NEdEJUVnluL01yV2xvVU52cS81U0ZtaDEzbDNkdmdSUGtEaWhSeGI3N1kxN01icWJDQWEyc3RyTVFRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtYXJtIjogWyJAZXNidWlsZC9saW51eC1hcm1AMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTIta3JvNGMwUDg1R01mRllxVzRUV09wdm1GOHJGU2hiV0duckxxbHpwNFgxVE5XalJZM0pNWVVmREN0T3hQS09JWThCMFdDOEhONTFoR1A0STRoejRBYVE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1hcm02NCI6IFsiQGVzYnVpbGQvbGludXgtYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0rODlVc1FUZlhkbWpJdlpTNm5Vbk9PTG9YbmtVVEI5aFI1UUFlTHJRZHpPU1dadk5TQVhBdGNSREhXdHFBVXRBbXY3Wk0xV1BPT2VTeER6enpNb2dpUT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiBbIkBlc2J1aWxkL2xpbnV4LWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLXlURWpvYXB5OFVQM3J2OGRCMGlwM0FmTXBSYnloU04zK2hZOG1vL2k0UVhGZUR4bWlZYkVLcDNaUmpCS2NPUDg2MlVhNGIxUERmd2x2YnV3WTdoSUdRPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtbG9vbmc2NCI6IFsiQGVzYnVpbGQvbGludXgtbG9vbmc2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItTmVxcVlrcmNHekZ3aTZDR1JHTk1PaldHR1NZT3Bxd0NqUzlmdmFVbFg1czN6d090bjFxd2cxczJpRTJzdkJlNFEvWU9HMXE2ODc1bGNBb1FLL0Y0VkE9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1taXBzNjRlbCI6IFsiQGVzYnVpbGQvbGludXgtbWlwczY0ZWxAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJub25lIiB9LCAic2hhNTEyLUljdlRsRjlkdExyZkwvTThXZ05JL3FKWUJFTlAzZWtnc0hiWVVJekV6cTVYSnp6VkVWL2ZYWTlXRlBmRUVYbXUzY2sycUpQOExHL3AzUThmN1pjMlhnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgtcHBjNjQiOiBbIkBlc2J1aWxkL2xpbnV4LXBwYzY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAicHBjNjQiIH0sICJzaGE1MTItSE95MGFMVEpUVnRvVGVHWmg0SFNYYU82TTk1cXU0azVsSmNINGd4djU2aWF5Y2Z6MVM4R08vNUpoNlg0WTFZaUkwaDdjUnlMaStIaXhNUis4OHN3YWc9PSJdLAoKICAgICJAZXNidWlsZC9saW51eC1yaXNjdjY0IjogWyJAZXNidWlsZC9saW51eC1yaXNjdjY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1pOEpVREF1ZnB6OWpPem80eUlTaENUY1h6UzA3dkVnV3p5WDNOSDJHN0xFRlZnckxFaGp3TDNhakZFNGZaSTNJNFpnaU03SkgzR1E3UmVPYlJPdlNVQT09Il0sCgogICAgIkBlc2J1aWxkL2xpbnV4LXMzOTB4IjogWyJAZXNidWlsZC9saW51eC1zMzkweEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLWpGbnUrNlViTGx6SWpQUXBXQ05oNVF0cmNOZk1MamdJYXZud1BRQWZvR3g0cTE3b2NPVTlNc1EyUVZ2Rnh3UW9XcFpUOER2VExvb1R2bU9RWGtPNTFnPT0iXSwKCiAgICAiQGVzYnVpbGQvbGludXgteDY0IjogWyJAZXNidWlsZC9saW51eC14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItNmUwY3ZYd3pPblZXSkhxK21za1A4RE5TcktCcjFiVUxCdm5GTHBjMUtZK2QraXJaU2daMDJUR3NlNUZzYWZLUzVqZzJlNHBidks2VFBYYUYvQTYrQ0E9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QtYXJtNjQiOiBbIkBlc2J1aWxkL25ldGJzZC1hcm02NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAibm9uZSIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItdlVua0JZeFpXNGhML2llOTFoU3FhU05qdWxPbllYRTFWU0x1c252SGcydTNqZXdKQnozWXpCOStvQ3c4REFCZVZxWkdnOTR0OXR5WkZvSG1hOGdXWlE9PSJdLAoKICAgICJAZXNidWlsZC9uZXRic2QteDY0IjogWyJAZXNidWlsZC9uZXRic2QteDY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJub25lIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWEFnOHBJUW41Q3poT0I4b2RJY0FtNDJRc09mYTk4U0JlS1VkbzR4YThPdlg4TGJNWnFFdGdlV0U5UC9XeHQ3TWxHMlFxdmpHdGhzK25xNDhUclVpS3c9PSJdLAoKICAgICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogWyJAZXNidWlsZC9vcGVuYnNkLWFybTY0QDAuMjUuNCIsICIiLCB7ICJvcyI6ICJvcGVuYnNkIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1DdDJXY0ZFQU5sRkR0cDFuVkFYU05CUER4eVUrajcrdElkLy9pSFhVMmYvbE41QW1PNHpMeWhEY3BSNUN6MXIwOG1WeHp0M0pweXQ0UG1YUTFPNis3QT09Il0sCgogICAgIkBlc2J1aWxkL29wZW5ic2QteDY0IjogWyJAZXNidWlsZC9vcGVuYnNkLXg2NEAwLjI1LjQiLCAiIiwgeyAib3MiOiAib3BlbmJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXhBR0doeU9ROU90bTFYdThOVDFpZkdMbkE2TTNzSnhaNml4eWxiK3ZJVVZ6dnZkNkdPQUxwd1FyWXJ0bFBvdU1xZC92U2JnZWh6NkhhVms0KzdBZmh3PT0iXSwKCiAgICAiQGVzYnVpbGQvc3Vub3MteDY0IjogWyJAZXNidWlsZC9zdW5vcy14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogInN1bm9zIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItTXcrdHp5NHBwNndaRUswK0x3cjc2cFdManJ0am1KeVVCMjN0SEtxRURQNzRSM3E5NWx1WS9iWHFYWmVZbDROWWx2d09xb1JLbEluUWlhbGdDS3k2N1E9PSJdLAoKICAgICJAZXNidWlsZC93aW4zMi1hcm02NCI6IFsiQGVzYnVpbGQvd2luMzItYXJtNjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1BVlVQNDI4VlFUU2RkZ3V6OWRPOW5nYitFNWFTY3lnN25PZUpEckYxSFBZdTU1NWdtemEzYkRHTVBobVZYTDhzdkRTb3FQQ3NDUGpiMjY1eUcva0xLUT09Il0sCgogICAgIkBlc2J1aWxkL3dpbjMyLWlhMzIiOiBbIkBlc2J1aWxkL3dpbjMyLWlhMzJAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJpYTMyIiB9LCAic2hhNTEyLWkxc1crMWkrb1d2UXpTZ2ZSY3h4RzJrNEk5bjNPOU5ScXk4VSt1dWdhVDJEeTdrTE85WTd3STcyaGFPYWh4Y2VNWDhoWkF6Z0dvdTFGaG5kUmxkeFJnPT0iXSwKCiAgICAiQGVzYnVpbGQvd2luMzIteDY0IjogWyJAZXNidWlsZC93aW4zMi14NjRAMC4yNS40IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItbk9UMnZaTnc2aEorejQzb1AxU1BlYS9HLzZBYk42WCtiR05oTnVxOE50Ukh5NHdzTWh3NzY1SUtMTm1uamVrN0d2aldCWVE4UTVWQm9ZVEZnOXkxVVE9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvY29yZSI6IFsiQGZsb2F0aW5nLXVpL2NvcmVAMS43LjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL3V0aWxzIjogIl4wLjIuMTEiIH0gfSwgInNoYTUxMi0xSWg0V1RXeXcwK2xLeUZNY0JIR2JiNVU1RnR1SEp1dWpveXlyNXpUYVdTNUVZTWVUNkpiMkF1RGVmdHNDc0V1Y2hPK21NMmlqNStxOWNyaHlkekxoUT09Il0sCgogICAgIkBmbG9hdGluZy11aS9kb20iOiBbIkBmbG9hdGluZy11aS9kb21AMS43LjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGZsb2F0aW5nLXVpL2NvcmUiOiAiXjEuNy41IiwgIkBmbG9hdGluZy11aS91dGlscyI6ICJeMC4yLjExIiB9IH0sICJzaGE1MTItOWdaU0FJNVhNMzY4ODBQUE1tLy85ZGZpRW5nWW9DNkFtMml6RVMxRkY0MDZZRnNqdnlCTW1lSjJnNFNBanUzeFd3dHV5bk5SRkwyczloZ3hwTEk1U1E9PSJdLAoKICAgICJAZmxvYXRpbmctdWkvcmVhY3QtZG9tIjogWyJAZmxvYXRpbmctdWkvcmVhY3QtZG9tQDIuMS44IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBmbG9hdGluZy11aS9kb20iOiAiXjEuNy42IiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiwgInJlYWN0LWRvbSI6ICI+PTE2LjguMCIgfSB9LCAic2hhNTEyLWNDNTJiSHdNL24vQ3hTODdGSDB5V2RuZ0VacmpkdExXL3FWcnVvNjhxZytwcks3WlE0WUdkdXQyR3lEVnBvR2VBWWUvaDg5OXJWZU9WbTZPaTQwazJBPT0iXSwKCiAgICAiQGZsb2F0aW5nLXVpL3V0aWxzIjogWyJAZmxvYXRpbmctdWkvdXRpbHNAMC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJpQi95SWg3OHBjSXhsNmxMTUcwQ2dCWEFaMlkwZVZIcU1QWXVndSs5VTBBZVQ2WUJlaUpwZjdsYmRKTkl1Z0ZQNVNJandOUmdvNERoUjFReGkyNkdnPT0iXSwKCiAgICAiQGltZy9jb2xvdXIiOiBbIkBpbWcvY29sb3VyQDEuMS4wIiwgIiIsIHt9LCAic2hhNTEyLVRkNzZxN2o1N28vdExWZGdTNzQ2Y1lBUmZTeXhrOGlFZlJ4ZXdMOWg0T016WWhiVzRUQWNwcGwwbVQ0ZXlxWGRkaDZML2p3b003NW1vN2l4YS9wQ2VRPT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtZGFyd2luLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWltdFEzV01KWGJNWTRmeGIvTmRwNkhCVE5WdFdDVUkwV2RvYnloZUdmNSthZDZ4WDhWSURPOHUyeEU0cWMvZnIwOENLRy83ZERzZUZ0bjZNNmcvcjN3PT0iXSwKCiAgICAiQGltZy9zaGFycC1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWRhcndpbi14NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZTkVGQUYvNEtRL1BlVzBOK3IrYVZWc29JWTAvcXh4aWtGMlNXZHArTlJrbU1CN3k5TEJaQVZxUTR5aEdDbS9IM0gyNzBPU3lrcW1RTUtMQmhCSkRFdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4tYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi16cWpqbzdSYXRGZkZvUDBNa1E1MWpmdUZaQm5WRTJwUmlheWRLSjFHL3JIWnZuc3JIQU9jUUFMSWk5c0E1Y281eGVuUWRUdWdDdnRiMWN1Zjc4VmY0Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1kYXJ3aW4teDY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0xSU9kNXhmVmhsR3dYK3pYdjJOOTNrMHlNT052VWxBTnlsYkp3MWVUYWg4Sy9KdHBpMTVLQytXU2lhWC9uQm1ibTJIeFJNMWdaMG5TZGpTc3JaYkdLZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm0iOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm1AMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybSIgfSwgInNoYTUxMi1iRkk3eGNLRkVMZGlOQ1ZvdjhlNDRJYTR1MmJ5QStsM1h0c0FqK1E4dGZDd082QlE4aURvallkdm9QTXFzS0RrdW9PbytYNkhaQTBzMHExMUFOTVE4QT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybTY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1leGNqWDhEZnNJY0oxMHgxS3pyNFJjV2UxZWRDOVBxdURSUlB4M1lWQ3ZRditVNXA3WWluMnMzMmZ0emlrWG9qYjFQSUZjLzlNdDI4L3kraVJrbGtydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1wcGM2NCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi1GTXV2R2lqTERZRzZsVytiL1V2eWlsVVd1NUF5dSszcjJkMVM4bm90aUdDSXlZVS83NmVpZzFVZk1ta1o3dndnT3J6S3psUWJGU3VRZmdtN0dZVVBwQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcmlzY3Y2NEAxLjIuNCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1vVkRiY1I0elVDMGNlODJ0ZXViU20reDZFVGl4dEtaQmgvcWJSRUlPY0kzY1VMekR5YjE4U3IvV2N5eDdOUlFlUXpPaUhUTmJaRkYxVXdQUzJzY3lHQT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1zMzkweCI6IFsiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi1xbXA5VnJ6Z1BnTW9HWnlQdnJRSHFrMDJ1eWpBMC9RclRPMjZUcWs2bDRaVjBNUFdJVzZMVGtxT0lvditKMXlFdTdNYkZRYURwd2R3SktoYkp2dVJ4UT09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi10SnhpaUxzbUhjOUF4MWJ6M29hT1lCVVJUWEdJUkRPREJxaHZlVkhvbnJISjkvK2s4OXFiTGwwYmNKbnMrZTR0NHJ2YU5CeGFFWnNGdFNmQWRxdVBydz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjRAMS4yLjQiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLUZWUUh1d3gxSUl1Tm93OVFBYllVekorRW44S2NWbTlMazUrdUdVUUpIYVptTUVDWm1PbGl4OUhuSDduMVRSa1hNUzBwR3hJSm9rSVZCOVN1cVpHR1h3PT0iXSwKCiAgICAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wteDY0QDEuMi40IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItK0xweUJrN0w0NFpJWHd6L1ZZZmdsYVgvb2t4ZXpFU2M2VXhEU295bzJLczZKeGM0WTdzR2pwZ1U5czRQTWdxZ2pqMWdaQ3lsVGllTmFtcUExTUY3RGc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6IFsiQGltZy9zaGFycC1saW51eC1hcm1AMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LWFybSI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItOWRMcXN2d3RnMXV1WEJHWktzeGVtOTU5NSt1anYwc0o2Vmk4d2NUQU5TRnB3Vi9HT05hdDVlQ2t6UW8vMU82elJJa2gwbS84KzVCanJScjdqRFVTWnc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4LWFybTY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1iS1F6YUpSWS9ia1BPWHlLeDVFVnVwN3FrYW9qRUNHNk5MWXN3Z2t0T1pqYVhlY1NBZUNXaVp3d2lGZjMvWStPMUhyYXVpRTNGVnNHeEZnOGMyNHJaZz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtcHBjNjQiOiBbIkBpbWcvc2hhcnAtbGludXgtcHBjNjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXBwYzY0IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInBwYzY0IiB9LCAic2hhNTEyLTd6em53TmFxVzZZdHNmckdHREE2QlJrSVNLQUFFMUpvMFFkcE5ZWE5NSHUyKzBkVHJQZmxUTE5rcGM4bDdNVVA1TTE2WkpjVXZ5c1ZXV3JNZWZacXVBPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogWyJAaW1nL3NoYXJwLWxpbnV4LXJpc2N2NjRAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi01MWdKdUxQVEthN3BpWVBhVnM4R21CeW83L1U3LzdUWk9xK2NuWEpJSFpLYXZJUkhBUDc3ZTNOMkhFbDNkZ2lxZEQvdzB5VWZpSm5JSTc3UHVEREZkdz09Il0sCgogICAgIkBpbWcvc2hhcnAtbGludXgtczM5MHgiOiBbIkBpbWcvc2hhcnAtbGludXgtczM5MHhAMC4zNC41IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiB9LCAib3MiOiAibGludXgiLCAiY3B1IjogInMzOTB4IiB9LCAic2hhNTEyLW5RdENrMFBkS2ZobzNlQzVNcmJRb2lnSjJnZDFDZ2RkVU1rYWJVaityQmV2czh0WjJjVUxPeDQ2RTdveVgrMDRXR2ZBQmdJd21NQzBWcWllVGlSNGpnPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXgteDY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU1FemQ4SFBLeFZ4VmVud0FhK0pSUHdFQzdRRmpvUFd1UzVOWm5CdDZCM3B1N0VHMkdlMGlkMW9MSFpwUEpkbjNPUUsrQlFEaXc5elN0aUhCVEpRUVFRPT0iXSwKCiAgICAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLWFybTY0QDAuMzQuNSIsICIiLCB7ICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eG11c2wtYXJtNjQiOiAiMS4yLjQiIH0sICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZnBySlI2R3RSc010Nkt5ZnE0NElzQ2hWWmVHTjk3Z1REMzMxd2VSMWV4MWMxcnlwREVBQk42VG0yeGExd0U2bFliNURkRW5rMDNOWlBxQTdJZDIxeWc9PSJdLAoKICAgICJAaW1nL3NoYXJwLWxpbnV4bXVzbC14NjQiOiBbIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NEAwLjM0LjUiLCAiIiwgeyAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIgfSwgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSmc4d05UMU1Vekl2aEJGeFZpcXJFaFdER3pxeW1vM3NWN3o3WnNhV2JaTkRMWFJKWm9SR3JqdWxwNjBZWXRWNHdmWThWSUtjV2lkam9qbExjV3JkOFE9PSJdLAoKICAgICJAaW1nL3NoYXJwLXdhc20zMiI6IFsiQGltZy9zaGFycC13YXNtMzJAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvcnVudGltZSI6ICJeMS43LjAiIH0sICJjcHUiOiAibm9uZSIgfSwgInNoYTUxMi1PZFdURWlWa1kyUEh3cWtiQkk4ZnJGeFFRRmVrSGFTU2tVSUprd3pjbFdaZTY0TzFYNFVsVWpxcXFMYVBiVXBNT1FrNkZCdS9IdGxHWE5ibElzMGh1dz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiBbIkBpbWcvc2hhcnAtd2luMzItYXJtNjRAMC4zNC41IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1XUTNBZ1dDV1lTYjJ5dCtJRzhtbkM2SmRrOVdoczdPMGd4cGhibHNMdmRoU3BTVHRtdTY5WkcxR2tiNk51dnhzTkFDd2lQVjZjTlNaTnp0MEtQc3c3Zz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6IFsiQGltZy9zaGFycC13aW4zMi1pYTMyQDAuMzQuNSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAiaWEzMiIgfSwgInNoYTUxMi1GVjltLzdObWVDbVNIREQ1ajQrNHBOSThDcDNhVytKdkxvWGNUVW8wSXF5alNmQVpKOGRJVW1pangxcWFKc0lpVStIb3N3NnhNNUtpakFXUkpDU2dOZz09Il0sCgogICAgIkBpbWcvc2hhcnAtd2luMzIteDY0IjogWyJAaW1nL3NoYXJwLXdpbjMyLXg2NEAwLjM0LjUiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi0rMjlZTXNxWTIvOWVGRWlXOTNlcVdudUxjV2N1Zm93WGV3d1NOSVQ2VXdaZFVVQ3JNM29Gak1XSC9aNi9UTW1iNGhsRmVubWZBVmJwV2V1cDJqcnlDdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogWyJAanJpZGdld2VsbC9nZW4tbWFwcGluZ0AwLjMuMTMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjIjogIl4xLjUuMCIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi0ya2t0LzduaUo2TWdFUHhGMGJZZFE2ZXRaYUErZlF2RGNMS2NraHkxeUlRT3phb0tqQkJqU2o2My9hTFZqWUUzcWhSdDVkdk0rdVV5ZkNnNlVLQ0JiQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3JlbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvcmVtYXBwaW5nQDIuMy41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjQiIH0gfSwgInNoYTUxMi1MSTl1LytsYVlHNERzMVRES1NKVzJZUHJJbGNWWU93aTJmVUM2eEI0M2x1ZUNqZ3hWNGxmZk9DWkN0WUZpSDZUTk9YK3RRS1h4OTdUNElLSGJoeUhFUT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3Jlc29sdmUtdXJpIjogWyJAanJpZGdld2VsbC9yZXNvbHZlLXVyaUAzLjEuMiIsICIiLCB7fSwgInNoYTUxMi1iUklTZ0NJalAyMC90YldTUFdNRWk1NFFWUFJaRXhrdUQ5bEpMK1VJeFVLdHdWSkE4d1cxVHJiMWpNczFSRlhvMUNCVE5aLzVocEM5UXZtS1dkb3BLdz09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXAiOiBbIkBqcmlkZ2V3ZWxsL3NvdXJjZS1tYXBAMC4zLjExIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL2dlbi1tYXBwaW5nIjogIl4wLjMuNSIsICJAanJpZGdld2VsbC90cmFjZS1tYXBwaW5nIjogIl4wLjMuMjUiIH0gfSwgInNoYTUxMi1aTXAxVjhaRmNQRzVkSVduUUxyM05TSTFNaUNVN1VFVGRTL0EwRzhWL1hXSHZKdjNac0ZxdXRKbjFZNVJQbUFQWDZGM0JpRTM5N09xdmVVLzlOQ3VJQT09Il0sCgogICAgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6IFsiQGpyaWRnZXdlbGwvc291cmNlbWFwLWNvZGVjQDEuNS41IiwgIiIsIHt9LCAic2hhNTEyLWNZUTkzMTBncnF4dWVXYmwrV3VJVUlhaVVhRGNqN1dPcTVmVmhFbGpOVmdSZk9VaFk5ZnkyelR2Zm9xV3NuZWJoOFNsNzBWU2NGYklDdkpuTEtCME9nPT0iXSwKCiAgICAiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZyI6IFsiQGpyaWRnZXdlbGwvdHJhY2UtbWFwcGluZ0AwLjMuMzEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVzb2x2ZS11cmkiOiAiXjMuMS4wIiwgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS40LjE0IiB9IH0sICJzaGE1MTItenpOUitTZFFTREp6Yzhqb2FlUDhRUW9DUXI4TnVZeDJkSUl5dGwxUWVCRVpISjl1VzZoZWJzcllnYno4aEp3VVFhbzNUV0NNdG1mVjhOdTF0d09MQXc9PSJdLAoKICAgICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9IH0sICJzaGE1MTItM05RTk5nQTFZU2xKYi9rTUgxaWxkQVNQOUhXNy83a1luUkkyc3pXSmFvZmFTMWhXbWJHSTRIK2QzKzIyYUd6WFhOOUlKK24rR2lGVmNHaXBKUDE4b3c9PSJdLAoKICAgICJAbmV4dC9lbnYiOiBbIkBuZXh0L2VudkAxNi4yLjYiLCAiIiwge30sICJzaGE1MTItZ2Q4SG9ITjR1Zmo3M1dtUjNKbVZvbHJwSlI0N0lMSzZMb3VQNXhFbFBnbGFWeGlyNmUxYTdWenZUdkRXa09vUFhUOXJra1R6eUN4QnU0eWVaZlp3Y3c9PSJdLAoKICAgICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogWyJAbmV4dC9zd2MtZGFyd2luLWFybTY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVpKR2trY05mWWdyck1rcU9kWjd6b0xhMVRPeTBxcGNNZmsvejRNaC9GS1V6NDBnVk8rSE5RV3FtTHhmNjdaNVdCNjREUnAwZGhFYnlIZmVsKzZzSlVnPT0iXSwKCiAgICAiQG5leHQvc3djLWRhcndpbi14NjQiOiBbIkBuZXh0L3N3Yy1kYXJ3aW4teDY0QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi12L1lMQkhJWTEzMkNlZDNwdUJKN1lKS3cxbHFzQ3JnY05vMmFSSmxDRXlRcnJDZVJKbHZHbG5teGhQeE5RSTNLRTNOMURONXI5VFBOUHZrYTNucTVSUT09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC1hcm02NC1nbnVAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SUE92cWxZQmJjUWprejlWUVFEWjJUMmJBUklqWFpWMUtGbHQrVjJNcjZTVy9lNEk5ZmNLc2FBMGhkeWYyRkhvVGxzVjJ4bkJkNVk5MTJyUC8xQ2U2dz09Il0sCgogICAgIkBuZXh0L3N3Yy1saW51eC1hcm02NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgtYXJtNjQtbXVzbEAxNi4yLjYiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVVSVVR1MStkTWt4SnNQRmdtK09lRXZxOXdmNXN1ancwRXZnWXk4MFRER0hUU0xUbklIZXFiMEV1OEEzc0M5NUlSZ2plalFMK2tDNG13KzR5UHhpQVhBPT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1nbnUiOiBbIkBuZXh0L3N3Yy1saW51eC14NjQtZ251QDE2LjIuNiIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLURPajE4Mm1QVjhHM1VrcmF5TG9SRU01WUVZSStEazV3djdPeDl4bDFmRmliQUVMRXNGRDBsRFBmSEllSUxsdXRNTWZkeWhsellQRUxHM3BldUthdXJ3PT0iXSwKCiAgICAiQG5leHQvc3djLWxpbnV4LXg2NC1tdXNsIjogWyJAbmV4dC9zd2MtbGludXgteDY0LW11c2xAMTYuMi42IiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItSEtRNVNQL1YvdWI3M1V2RjduL3plSmx4azJrTG10TDdXenJnNFdmbWtqbU5vczVvbkoydEt1N3laT1BkTDE4QTZTdmZuM21heDI5eW0rcnk3TmtLNGc9PSJdLAoKICAgICJAbmV4dC9zd2Mtd2luMzItYXJtNjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLWFybTY0LW1zdmNAMTYuMi42IiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1MWlhwVGxQeVM1djdIaFNtbnZzTEdQM2lJWWdZT0JuYzhyOEFybFQ1NXNHSFY4OWJSMkhsRGRCaldRK1BZNlNKTW1rOFR1VkdGdXhhbG5QM2svMER3Zz09Il0sCgogICAgIkBuZXh0L3N3Yy13aW4zMi14NjQtbXN2YyI6IFsiQG5leHQvc3djLXdpbjMyLXg2NC1tc3ZjQDE2LjIuNiIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUYwKzRpMGg5SjZDNGVFM0VBUFdzb0NrN1VXL2Riek9qeXp4WTBxbkRVT1lGdTZGRm1kWjZsOTcvWGRWMy9OejNWWXlPN1VXanlFSlVYa0dxY29YZk1BPT0iXSwKCiAgICAiQG94Yy1wcm9qZWN0L3R5cGVzIjogWyJAb3hjLXByb2plY3QvdHlwZXNAMC4xMzAuMCIsICIiLCB7fSwgInNoYTUxMi1pYkQydXN4OUpSdTdmNXB1MnRNS01JNGNwQTROZ1hKUW9ZUlA0cFE3UHhtbjFsNmsvNTNxV3RRV1pheWhZeTNYNFFaa3Q5ME90K21KRWFlWG91aW82UT09Il0sCgogICAgIkBwbGF5d3JpZ2h0L3Rlc3QiOiBbIkBwbGF5d3JpZ2h0L3Rlc3RAMS42MC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInBsYXl3cmlnaHQiOiAiMS42MC4wIiB9LCAiYmluIjogeyAicGxheXdyaWdodCI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1PNzF5WkliQWgvUHhETU5HbnMzN0dIQklmclZrRVZ5bitBWHlJYTVkT1RmYjQveE52UldWK1Z2L05NYk5DdE9EQi9wTzd2TGxGMk9UbU1WTGhtcjdBZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWFuZHJvaWQtYXJtNjRAMS4wLjEiLCAiIiwgeyAib3MiOiAiYW5kcm9pZCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItZkpJM0kwcjNDM09qL3pkQkNwYUNtQlJaWWYwN3hwYXE0eUNmRERvU0ZtK2JlV056YklsMjZwdVc4UnJhVWR1Z29Kdy85NXplck5PbjZqYXNBaHpTbWc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4tYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLWNLbkFoV0VzVjdUUGNBLzVFQXRlRHA2S2NKWkJRMkcrQnFFN3pheU1NaTdrTXZ3UnNidjdXVDlhT25uMFdObDRTS0VJZjQzdmpTMzFpVVB1ODBuelhnPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NCI6IFsiQHJvbGxkb3duL2JpbmRpbmctZGFyd2luLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1ZS3JWd1FqSVJCUG8rNUcvdTAzd0dqYmR5NHE3cHl6Q2U5M0RLOVZKN3prVm1lZzhMSjdHYmdzaUhXZFI0eFNvZTRDQVhSRDdCY2pnYnRyNjRia1hOZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogWyJAcm9sbGRvd24vYmluZGluZy1mcmVlYnNkLXg2NEAxLjAuMSIsICIiLCB7ICJvcyI6ICJmcmVlYnNkIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItei9vQnNSRW80NlNzRnFCd1l0RmUwa3BKZUJpakFUNDhPL1dYTEk0c3VpQ0xCa3IwM1JUdFRKTUN6U2REZDJ6bmxoOFZKaXpMMDlYVmtRZ2s4SVpvbnc9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItaWs4cTdHTTExenh2WXhGYzJQZURjVDZUQnZoQ1FNYVV4ZnBoL001bDlzS3VUcy9TamczTCtCeXcwRjd3MFpWTEJabXgzMFArZ0cwRUN6ek4rTUZjbVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LWdudUAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItUW9TeDJFa3lycmRaNmtjeUU4c3RxWjYydDBZcmE4RnM1aWE5bE94SnJoNlRNUUpLN2dRS21zY2RUSGY3cE9YS1JFS3JWd090SmNRRzNxVlNmYzg2NkE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC1hcm02NC1tdXNsQDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi11d053RnB3S2VOaVphd2ZBV0JnZzBWSXp0UFRWM2loaGgxdlYzMzRoOWl2bk5Mb3J4blFNVTZGejh3RzFaYjRRaDlMQzEvTWtjeVQzWWxEWEczUnNnZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXBwYzY0LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJwcGM2NCIgfSwgInNoYTUxMi16WTFidWw3T1dyN0RGQmlKKyt3b2ZYdm5yOEI0NWNlM1FzUVVoS3JJaFhzeWdBaDdiVGt3eWVNMWJpMWEyZzVDL3lDL044VFp5R0RFb01mbS9sOW1wZz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6IFsiQHJvbGxkb3duL2JpbmRpbmctbGludXgtczM5MHgtZ251QDEuMC4xIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJzMzkweCIgfSwgInNoYTUxMi0wZnJsc1QvZjRGdDZJN1NNRVNUS25GM2Nac2RpY1FuMWRDTWtGL2pUOXdETEUrZ0dvaVFmdjFubVQ5ZStzN3MvZmVrdnZ5NnRaTTJqSHZJMnRrYkpEUT09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnUiOiBbIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1nbnVAMS4wLjEiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1YQUJWbUdwOVRnMFdzcFRWdndkdVRjNGZwcXk2Sm5BVXJTUWU2T3V5cUQvMDNuSTdyME85T1dVa01Jd0ZyaktBSXFvbHZxb0E0WnJKcHBnd0UwR3htdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogWyJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtbXVzbEAxLjAuMSIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLWJWNGZ6c3d1elZjS0Q5MG8vVk02UXFLeG54bERxMGcyQklTRExOVm14cm5ocHYxRERieVBoQ0lqWWZ2ellMVitNdmtLS25RdDJRNkFPODZTRUJVTFVRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctb3Blbmhhcm1vbnktYXJtNjQiOiBbIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0QDEuMC4xIiwgIiIsIHsgIm9zIjogIm5vbmUiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLS9NaDBaaHEzT1A3ZlZzMGtjUUhaUDZsWkV0aE1HVGFTZjhVQlFZU0ZFWkRXR1hYbEVDK25KNkVxZW5hSzJ0NExCWE1lM0ErSy9HMkJWWFhkdE9yNFBRPT0iXSwKCiAgICAiQHJvbGxkb3duL2JpbmRpbmctd2FzbTMyLXdhc2kiOiBbIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBlbW5hcGkvY29yZSI6ICIxLjEwLjAiLCAiQGVtbmFwaS9ydW50aW1lIjogIjEuMTAuMCIsICJAbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiAiXjEuMS40IiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItKzF4YzlYNDVsOHVmc0JBbTZHanZ4MnFEUklZOWxUVnQwY2dXTmNKKzFnZGhYdmtieGVQQTYweVJUd1NUdVhMMDlDTWh5Sm1qcFY3RTNOb3l4YnFGUVE9PSJdLAoKICAgICJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi1hcm02NC1tc3ZjQDEuMC4xIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi0xRCtVcVpkZm51UitKeTFHZ01Kd2k4NWJENDBIMjF1Tm1PUFJXUWh3NG9SU3VvbFovQjVyaXhaNDVESzJLWE9UQ3ZtVkNlY2F1V2dFaGJ3OGJJN3RPdz09Il0sCgogICAgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLXg2NC1tc3ZjIjogWyJAcm9sbGRvd24vYmluZGluZy13aW4zMi14NjQtbXN2Y0AxLjAuMSIsICIiLCB7ICJvcyI6ICJ3aW4zMiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUlOQXljYVd1aGxPSzN3azRtUkhHc2Rnd1lXbWQ5Y0NoZFBkRTlid1dteTZybjlWcVZOWU5GR2hPZFhyb2ZYVXh3SEluY1NpUE5iOHRObThrbkRWSWVRPT0iXSwKCiAgICAiQHJvbGxkb3duL3BsdWdpbnV0aWxzIjogWyJAcm9sbGRvd24vcGx1Z2ludXRpbHNAMS4wLjEiLCAiIiwge30sICJzaGE1MTItMmo5Ykd0NUpoOGhqK3ZQdGd6UHRsNzJqMHlSeEhBeXVtb282VE5mQWpzTEIwNFV0cFN2UGJQY0RjQk14ejduKzlDWUIwYzFHeFFGeFlSZzJqaW1xR3c9PSJdLAoKICAgICJAc3RhbmRhcmQtc2NoZW1hL3NwZWMiOiBbIkBzdGFuZGFyZC1zY2hlbWEvc3BlY0AxLjEuMCIsICIiLCB7fSwgInNoYTUxMi1sMmFGeTVqQUxobmlHNUhncXJENmpYTGkvclVXckt2cU4vcUp4NnlvSnNnS2hibFZkK2lxcVU0UkNYYXZtL2pQaXR5RG81VEN2S01ucGpLbk9yaXkwdz09Il0sCgogICAgIkBzd2MvaGVscGVycyI6IFsiQHN3Yy9oZWxwZXJzQDAuNS4xNSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi44LjAiIH0gfSwgInNoYTUxMi1KUTVUdU1pNDVPd2k0L0JJTUFKQm9TUW9PSnUxMm9Pay9nQURxbGNVTDlKRWRIQjh2eWpVU3N4cWVOWG5tWEhqWUtNaTJXY1l0ZXpHRUVocVVJL0UyZz09Il0sCgogICAgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiBbIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXJAMS4wLjUiLCAiIiwge30sICJzaGE1MTItcjViQ2xLcmNJdXNEb28wNDlkU0w4Q2F3bkhSNm1SZER3aGxRdUlnWlJOdHk2OHEweDhrM0xmMUJ0UEFNeFJmL0dnbkhCbklPNHVqZDMrR1FkTFd6eFE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvbm9kZSI6IFsiQHRhaWx3aW5kY3NzL25vZGVANC4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGpyaWRnZXdlbGwvcmVtYXBwaW5nIjogIl4yLjMuNSIsICJlbmhhbmNlZC1yZXNvbHZlIjogIl41LjIxLjAiLCAiaml0aSI6ICJeMi42LjEiLCAibGlnaHRuaW5nY3NzIjogIjEuMzIuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiLCAidGFpbHdpbmRjc3MiOiAiNC4zLjAiIH0gfSwgInNoYTUxMi1hRmI0Z1VoRk9nZGg5QVhvNEl6QkVPekJra0F4bTlWaWd3REpuTUlZdjNsY2ZYQ0pWZXNOZmJFYUJsNEJOZ1ZSeWlkOTJBbWR2aXF3QlVCUktTZVkzZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZSI6IFsiQHRhaWx3aW5kY3NzL294aWRlQDQuMy4wIiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZGFyd2luLXg2NCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjQiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybTY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbCI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LW11c2wiOiAiNC4zLjAiLCAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi1hcm02NC1tc3ZjIjogIjQuMy4wIiwgIkB0YWlsd2luZGNzcy9veGlkZS13aW4zMi14NjQtbXN2YyI6ICI0LjMuMCIgfSB9LCAic2hhNTEyLUY3SFpHQmVOOUkwL0F1dUpTNVB3Y0Q4eGF5eDVyaTVHaGpZVURCRVZZVWtleHlBL2dpd2JETmpSVnJ4U2V6RTNUMjUwT1UySy93cC9sdFd4M1VPZWZnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWFuZHJvaWQtYXJtNjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1hbmRyb2lkLWFybTY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVRKUGlxNjd0S2xMdU9iUDZSa3d2VkdEb3hDTUJWdERnS2tMZmEvdXlqNy9GeXh2UXdIUytVT25WclhYZ2JFc2ZVYU1naVZ2QzRLYkpuUnIyNmhvNE5nPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi1hcm02NEA0LjMuMCIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLW9NTi9XWlJiK1NPMzdCbVVFbEVnZUVXdVU4RS9IWFJraU9EeEp4TGUxVVRIVlhMcmRWU2dmYUpWN3BTbGhSR01TT2lYTHV4VElqZnNGM3dZdno4Y2dRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWRhcndpbi14NjQiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1kYXJ3aW4teDY0QDQuMy4wIiwgIiIsIHsgIm9zIjogImRhcndpbiIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLU42Q1VtdTRhNmJLVkFEZnc3N3AraXc2WWQ5UTNPQmhlMHZlYURYK1FhemZ1VllsUXNIZkRneEJyc2pRL0lXK3p5d0w4bVRyTmQwU2RKVC96Z3R2TWRBPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWZyZWVic2QteDY0IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtZnJlZWJzZC14NjRANC4zLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLXpETDVoQmtRZEg1QzZNcHFiSzNnUUFnUDgwdHNNd1NJMjZ2ak96akp0TkNNVW8wbEZnT0l0ekhLQkl1cE9aTlF4dDNvdVBIN1JQaHZOaGlUZkNlNUNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm0tZ251ZWFiaWhmQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm0iIH0sICJzaGE1MTItUjA2SGROaTdBN09Fb01zZjZkNHRqWjcxUkNXblpRUEhqMm1ub3RTRlVSak5MZEJDK2NJZ1hRN2w4MUNxZW9pUWZ0amY2T09ibHhYTUluTWdOMlZ6TUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251IjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtZ251QDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1xVEpIRUxYOGpldGpoUlFIQ0xpbGtWTG15YnB6TlFBdGFJL2dhb1ZvaWRuL3VmYk5EYkFvOEtsSzJKK3lQb2M4d1F4dkR4Q21oLzVscjhuQzErbFRiZz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC1hcm02NC1tdXNsIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgtYXJtNjQtbXVzbEA0LjMuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItWjZzdWtpUXNuZ25XTytsMzlYNHBQYmlXVDgxSUMrUExLRitQSHhJbHlaYkdOYjlNT0RmWWxYRVZsRnZlajVCT1pJbldYMDFrVnl6ZUx2SHNYaGZjelE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtbGludXgteDY0LWdudSI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1nbnVANC4zLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1EUk5kUVJwU0d6UkdmQVJWdVZreHZNOFExMm5oMTlsNEJGL0c3ekdBMW9lKzl3Y0M2c2FGQkhUSVNycEljS3poaVh0U3JsU3JsdUNmdk11bGVkb0NUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS1saW51eC14NjQtbXVzbCI6IFsiQHRhaWx3aW5kY3NzL294aWRlLWxpbnV4LXg2NC1tdXNsQDQuMy4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItWjBJQURiRG84Ymg2STdoMklRTXg2MDFBZFhCTGZGcEVkVW90ZnQ4NmV2ZC84WlBmbFplOUNPUE84UTF2dytwZkxXSVVvOXpOL0pHWnZ3dUFKcWR1cWc9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2FzbTMyLXdhc2kiOiBbIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaUA0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZW1uYXBpL2NvcmUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuMTAuMCIsICJAZW1uYXBpL3dhc2ktdGhyZWFkcyI6ICJeMS4yLjEiLCAiQG5hcGktcnMvd2FzbS1ydW50aW1lIjogIl4xLjEuNCIsICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiLCAidHNsaWIiOiAiXjIuOC4xIiB9LCAiY3B1IjogIm5vbmUiIH0sICJzaGE1MTItSE5aR09VeEVtRWxrc1lSN1M2c0M1alRlTkdwb2JBc3k5dTdHdTBBc2tKOC8yMEZSOUdxZWJVeUIrSEJjVS9heDZCSHVpdUppK09kYTRCK1lYNkgxeUE9PSJdLAoKICAgICJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzItYXJtNjQtbXN2YyI6IFsiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLWFybTY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVBlK1JQVlRpMVQrcXltdXVScGNkdndTVlpqbmxsL2Y3bjhnQnhNTWgzeExUY3RNREtxcGRmR2ltYk15aW9xdExoVVlaeGRKOXdHTmhWN01LSHZnWnNRPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdpbjMyLXg2NC1tc3ZjIjogWyJAdGFpbHdpbmRjc3Mvb3hpZGUtd2luMzIteDY0LW1zdmNANC4zLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1NdnJmMmtYVy95ZVcvT1RlelpsQ0dPaXJYUmNVdUxJQngvNVkxMkJhUE03d0pvcnlHNmRmUy9OSkw4YUJQcXRURXgvVm00VDR2S3pGVWNLRFQrVEtVQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9wb3N0Y3NzIjogWyJAdGFpbHdpbmRjc3MvcG9zdGNzc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAYWxsb2MvcXVpY2stbHJ1IjogIl41LjIuMCIsICJAdGFpbHdpbmRjc3Mvbm9kZSI6ICI0LjMuMCIsICJAdGFpbHdpbmRjc3Mvb3hpZGUiOiAiNC4zLjAiLCAicG9zdGNzcyI6ICJeOC41LjEwIiwgInRhaWx3aW5kY3NzIjogIjQuMy4wIiB9IH0sICJzaGE1MTItSm0wNVRqeCs5eUNMR3Y1cXcxYys4NFBzZHM4TW55ckVRWUNCK0ZGazJsZ0dpVWpsUnFkeGtlNG1WVHVZcmoyeG5WWnFLaW0yQXByNXlTdVFSWUF3L3c9PSJdLAoKICAgICJAdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0gfSwgInNoYTUxMi1Sb0J2SjJYMHd1S2xXRklqcndmZkd3MUlxWkhLUXF6SWNoS2FhZFpaZm5OcHNBWXAybU0waDM2SnRQQ2pOREFIR2dZZXovMTV1TUJwZkd3Y2hoaU1nZz09Il0sCgogICAgIkB0eXBlcy9jaGFpIjogWyJAdHlwZXMvY2hhaUA1LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvZGVlcC1lcWwiOiAiKiIsICJhc3NlcnRpb24tZXJyb3IiOiAiXjIuMC4xIiB9IH0sICJzaGE1MTItTXc1NThvZUE5ZkZidjY1L3k0bUh0WERzOWJQbkZNWkFML2p4ZFBGVXBPSEhJWFg5MW1jZ0VIYlM1TGFocitwd1pGUjhBN0dRbGVSV2VJNmNHRkMyVUE9PSJdLAoKICAgICJAdHlwZXMvZGVlcC1lcWwiOiBbIkB0eXBlcy9kZWVwLWVxbEA0LjAuMiIsICIiLCB7fSwgInNoYTUxMi1jOWg5ZFZWTWlnTVBjNGJ3VHZDNWR4cXRxSlp3UVBlUHNXalBscFNPbm9qYm9yNnBHcWRrNTQxbGZBN0FxRlFyNXBCMUJSZHEwanVZOWRiODFCd3lGdz09Il0sCgogICAgIkB0eXBlcy9lc3RyZWUiOiBbIkB0eXBlcy9lc3RyZWVAMS4wLjkiLCAiIiwge30sICJzaGE1MTItR2hkUGd5MWVsNC9JbVAwNVgwNVV3NGN3Mi9NOTNCQ1VtbkV2V1pOU3RsQ3pFS01FNEZraytZcG9BNU9pSE5RbW9TN0NhZmI4WGEzUHlhOG0xUXJ6ZWc9PSJdLAoKICAgICJAdHlwZXMvbm9kZSI6IFsiQHR5cGVzL25vZGVAMjIuMTkuMTkiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidW5kaWNpLXR5cGVzIjogIn42LjIxLjAiIH0gfSwgInNoYTUxMi1keWgveE8yRmg1YllyZldhYXFHclJRUUdrTmRtWXc2QW1hQVV2WWVVTU5UV1F0dmI3OTZpa0xkbVRjaFJtT2xPaUlKMVREWGZXZ1Z4MVFrVWxRNkhldz09Il0sCgogICAgIkB0eXBlcy9yZWFjdCI6IFsiQHR5cGVzL3JlYWN0QDE5LjIuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY3NzdHlwZSI6ICJeMy4yLjIiIH0gfSwgInNoYTUxMi1lUndjR05IdmUrRThxdEVRU1NSbDZ1cmgrckZvcDR2OGdtNk84ckd2MjVDb2RidkZkTGpBMXZWUTFLa2lGRTB3MFVQT25iOHREaUZLTDVscDBydFk1UT09Il0sCgogICAgIkB0eXBlcy9yZWFjdC1kb20iOiBbIkB0eXBlcy9yZWFjdC1kb21AMTkuMi4zIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvcmVhY3QiOiAiXjE5LjIuMCIgfSB9LCAic2hhNTEyLWpwMkwvZVk2Zm4rS2dWVlFBT3FZSXRiRjBWWS9ZQXBlNU16MkYwYXlrU084Z3gzMWJZQ1p5dlNlWXhDSEt2ekhHNWVaamMrenlhUzVCckJXeWEyK2tRPT0iXSwKCiAgICAiQHZpdGVzdC9leHBlY3QiOiBbIkB2aXRlc3QvZXhwZWN0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBzdGFuZGFyZC1zY2hlbWEvc3BlYyI6ICJeMS4xLjAiLCAiQHR5cGVzL2NoYWkiOiAiXjUuMi4yIiwgIkB2aXRlc3Qvc3B5IjogIjQuMS42IiwgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAiY2hhaSI6ICJeNi4yLjIiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItN0VIRHF1UHRoQUxTVjBqaGhqZ0VXOEZYYXZpTXg3clNxdThXNm9xQ29BdU9oS292ODE0UDk5UURWMXB4TUEzUVB2MjFZdWR2Sm5nSWhqck5JNG9wTGc9PSJdLAoKICAgICJAdml0ZXN0L21vY2tlciI6IFsiQHZpdGVzdC9tb2NrZXJANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiZXN0cmVlLXdhbGtlciI6ICJeMy4wLjMiLCAibWFnaWMtc3RyaW5nIjogIl4wLjMwLjIxIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgIm1zdyI6ICJeMi40LjkiLCAidml0ZSI6ICJeNi4wLjAgfHwgXjcuMC4wIHx8IF44LjAuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIm1zdyIsICJ2aXRlIl0gfSwgInNoYTUxMi1NQ0ZjNjNjek1qRUluT2xjWTJjcFFDdkNOK0tnYkFuKzYweHU5Y01nUDRzS2FMQzVKTkFLdzdKSDhRZEFub0FDODhoVzFJaVNOWitHZ1ZYbE4xVWNNUT09Il0sCgogICAgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6IFsiQHZpdGVzdC9wcmV0dHktZm9ybWF0QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInRpbnlyYWluYm93IjogIl4zLjEuMCIgfSB9LCAic2hhNTEyLWg1U3hEL0l6TmhaWW5yU1pSc1VaUUlDK3ZEMEdZOGNVdnEwaXdzbWtGS2l4UkNLTExXcUNYYS9GSVE0UzFSK3NJK1BHb29qa0hzZE5yYlppTTlRcGd3PT0iXSwKCiAgICAiQHZpdGVzdC9ydW5uZXIiOiBbIkB2aXRlc3QvcnVubmVyQDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvdXRpbHMiOiAiNC4xLjYiLCAicGF0aGUiOiAiXjIuMC4zIiB9IH0sICJzaGE1MTItbk9QQ21uMit5RDBaTm1LZHNYR3YvVXhNTVdiTXVLZUQ2R3lZbmNOd2RrWUR4cFF2clBTS1lqMnJXdURqQzJZNGI2dzZoamlwNWRCS0Z6RVV1WmUzdkE9PSJdLAoKICAgICJAdml0ZXN0L3NuYXBzaG90IjogWyJAdml0ZXN0L3NuYXBzaG90QDQuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkB2aXRlc3QvcHJldHR5LWZvcm1hdCI6ICI0LjEuNiIsICJAdml0ZXN0L3V0aWxzIjogIjQuMS42IiwgIm1hZ2ljLXN0cmluZyI6ICJeMC4zMC4yMSIsICJwYXRoZSI6ICJeMi4wLjMiIH0gfSwgInNoYTUxMi1ZaHNkRTZ4QVZmVERtemp4TDJaRFV2amorWnNneU9LZStUZFF6cWtENzJ3SU9tSGthOE51R1E2TnBUTlp2OUQyWjYzZmJ3V0tKUGVWcEV3NEVRZ1l4dz09Il0sCgogICAgIkB2aXRlc3Qvc3B5IjogWyJAdml0ZXN0L3NweUA0LjEuNiIsICIiLCB7fSwgInNoYTUxMi1KRkt4TXg2dWRod0toL0xkbzI3MGUxN1FYNzEwdmd1bk1rdVBBdlhqSFN2QzZvcUxXQUhoVmhqZy9JNzFxMHUwQ0JTRXJJT0RWMUtqdjBGUU5TV2pkZz09Il0sCgogICAgIkB2aXRlc3QvdXRpbHMiOiBbIkB2aXRlc3QvdXRpbHNANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgImNvbnZlcnQtc291cmNlLW1hcCI6ICJeMi4wLjAiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiB9IH0sICJzaGE1MTItRnhJWStVODFSM0xHS0N4YUhIRlJRNStnNi9pUmdHTG1lSFdkcDJBbWo0bGpRUnJFSVdIbVp5RGZEWUJSWmxweXFBN3FLeHRTOUREMWRoazhSblJJVlE9PSJdLAoKICAgICJhY29ybiI6IFsiYWNvcm5AOC4xNi4wIiwgIiIsIHsgImJpbiI6IHsgImFjb3JuIjogImJpbi9hY29ybiIgfSB9LCAic2hhNTEyLVVWSnlFOU10dE9zQlFJREt3MXNrYjluQXdRdVI1d3VHRDMrODJLNkpnSmxtL1krS0k5Mm9Oc01OR1pDWWREc1Z0UkhTYWswcGNWNURubzUrNGpoOXN3PT0iXSwKCiAgICAiYW5zaS1yZWdleCI6IFsiYW5zaS1yZWdleEA1LjAuMSIsICIiLCB7fSwgInNoYTUxMi1xdUpRWGxUU1VHTDJMSDlTVVhvOFZ3c1k0c29hbmhnbzZMTlNtODRFMUxCY0U4czNPMHdwZGlSenlSOXovWlpKTWxNV3YzN3FPT2I5cGRKbE1VRUtGUT09Il0sCgogICAgImFuc2ktc3R5bGVzIjogWyJhbnNpLXN0eWxlc0A0LjMuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjb2xvci1jb252ZXJ0IjogIl4yLjAuMSIgfSB9LCAic2hhNTEyLXpiQjlyQ0pBVDFyYmppVkRiMmhxS0ZITllMeGd0azhOVVJ4WjNJWndEM0Y2TnR4YlhaUUNublNpMUxreCtJRG9oZFBsRnAyMjJ3VkFMSWhlWkpRU0VnPT0iXSwKCiAgICAiYXNzZXJ0aW9uLWVycm9yIjogWyJhc3NlcnRpb24tZXJyb3JAMi4wLjEiLCAiIiwge30sICJzaGE1MTItSXppOFJRY2ZmcUNlTlZnRmlnS2xpMXNza2xJYnBIbkNZYzZBa25YR1lvQjZnckpxeWVieTdqdjEySlVRZ21UQW5JRG5iY2sxdXhrc1Q0ZHpOM1BXQkE9PSJdLAoKICAgICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiBbImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZ0AyLjEwLjMxIiwgIiIsIHsgImJpbiI6IHsgImJhc2VsaW5lLWJyb3dzZXItbWFwcGluZyI6ICJkaXN0L2NsaS5janMiIH0gfSwgInNoYTUxMi1NdWpZTzNlUDcydXZtU0UwaTR3bHRzb2RSZklwWkFUUDNqdnpSTlJHR3hneklkN2FWb2NWSkpWM25mMDFxbnp6S0ZHeFFWQzlicFd4bDVjanhUci83UT09Il0sCgogICAgImJ1ZmZlci1mcm9tIjogWyJidWZmZXItZnJvbUAxLjEuMiIsICIiLCB7fSwgInNoYTUxMi1FK1hRQ1J3U2JhYWlDaHR2Nms2RHdnYytieCtCczZ2dUtKSEhsNWtveC9CYUtiaGlYenFRT3dLNGNPMjJ5RWxHcDJPQ21qd1ZoVDNIbXhneVBHbkpmUT09Il0sCgogICAgImNhbml1c2UtbGl0ZSI6IFsiY2FuaXVzZS1saXRlQDEuMC4zMDAwMTc5MyIsICIiLCB7fSwgInNoYTUxMi1pd1NzWVdhQ09vaDI2Y1Y4TndOUlZpSGxyZlV2WXNIRGZSVmNidG13MEtnNlBKSVpaWHdNa2oxNDQyRllMQkdrZVVmMWp1QXNVM0RUZnhXNTc5bXJQQT09Il0sCgogICAgImNoYWkiOiBbImNoYWlANi4yLjIiLCAiIiwge30sICJzaGE1MTItTlVQUmx1T2ZPaVRLQkt2V1B0U0Q0UGhGdldDcU9pMEJHU3ROV3M1N1g5anM3WEdUcHJTbUZvejVGMHRXaFI0V1BqTmVSOWpYcWRDNy9VcFNKVG5sUmc9PSJdLAoKICAgICJjaGFsayI6IFsiY2hhbGtANC4xLjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYW5zaS1zdHlsZXMiOiAiXjQuMS4wIiwgInN1cHBvcnRzLWNvbG9yIjogIl43LjEuMCIgfSB9LCAic2hhNTEyLW9LbmJoRnlSSVhwVXVlejhpQk1teUVhNG5iajRJT1F5dWhjL3d5OWtZNy9XVlBjd0lPOVZBNjY4UHU4UmtPNyswRzc2U0xST2V5dzlDcFEwNjFpNG1BPT0iXSwKCiAgICAiY2xpZW50LW9ubHkiOiBbImNsaWVudC1vbmx5QDAuMC4xIiwgIiIsIHt9LCAic2hhNTEyLUlWM091MGpTTXpacmQzcFo0OG5Ma1Q5REE3QWcxcG5QemFpUWhwVzdjM1JiY3FxenZ6elZ1K0w4Z2ZxTXAvOElNMk1RdFNpcWFDeHJyY2Z1OEk4ck1BPT0iXSwKCiAgICAiY2xpdWkiOiBbImNsaXVpQDguMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgInN0cmluZy13aWR0aCI6ICJeNC4yLjAiLCAic3RyaXAtYW5zaSI6ICJeNi4wLjEiLCAid3JhcC1hbnNpIjogIl43LjAuMCIgfSB9LCAic2hhNTEyLUJTZU5ueXVzNzVDNC8vTlE5Z1F0MS9jc1RYeW8vOFNiK2FmTEFrekFwdEZ1TXNvZDlIRm9rR051ZFpwaS9vUVY3M2huVksrc1IrNVBWUk1kK0RyN1lRPT0iXSwKCiAgICAiY2xzeCI6IFsiY2xzeEAyLjEuMSIsICIiLCB7fSwgInNoYTUxMi1lWW0wUVdCdFVyQldaV0cwZDM4Nk9HQXcxNlo5OTVQaU9WbzJCN2JqV1NiSGVkR2w1ZTBaV2FxNjVrT0dnVVNOZXNFSURrQjlJU2JUZy9KSzlkaENaQT09Il0sCgogICAgImNvbG9yLWNvbnZlcnQiOiBbImNvbG9yLWNvbnZlcnRAMi4wLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29sb3ItbmFtZSI6ICJ+MS4xLjQiIH0gfSwgInNoYTUxMi1SUkVDUHNqN2l1L3hiNW9LWWNzRkhTcHBGTm5zai81Mk9WVFJLYjR6UDVvblh3VkYzelZtbVRvTmNPZkdDK0NSRHBmSy9VNTg0Zk1nMzhaSENhRWxLUT09Il0sCgogICAgImNvbG9yLW5hbWUiOiBbImNvbG9yLW5hbWVAMS4xLjQiLCAiIiwge30sICJzaGE1MTItZE95KzNBdVczYTJ3TmJaSEl1TVpwVGNnakd1TFUvdUJML3ViY1pGOU9YYkRvOGZmNE84eVZwNUJmMGVmUzh1RW9ZbzVxNEZ4N2RZOU9nUUdYZ0FzUUE9PSJdLAoKICAgICJjb21tYW5kZXIiOiBbImNvbW1hbmRlckAyLjIwLjMiLCAiIiwge30sICJzaGE1MTItR3BWa21NOHZGMnZRVWtqMkx2Wm1EMzVKeGVKT0xDd0o5Y1VrdWd5azJudWhidjMrbUp2cExZWXQrMCtVU014RStvaitleS9sSkVuaFp3NzV4L09NY1E9PSJdLAoKICAgICJjb25jdXJyZW50bHkiOiBbImNvbmN1cnJlbnRseUA5LjIuMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJjaGFsayI6ICI0LjEuMiIsICJyeGpzIjogIjcuOC4yIiwgInNoZWxsLXF1b3RlIjogIjEuOC4zIiwgInN1cHBvcnRzLWNvbG9yIjogIjguMS4xIiwgInRyZWUta2lsbCI6ICIxLjIuMiIsICJ5YXJncyI6ICIxNy43LjIiIH0sICJiaW4iOiB7ICJjb25jIjogImRpc3QvYmluL2NvbmN1cnJlbnRseS5qcyIsICJjb25jdXJyZW50bHkiOiAiZGlzdC9iaW4vY29uY3VycmVudGx5LmpzIiB9IH0sICJzaGE1MTItZnNmck8wTXhWNjRabm95OC9sMXZWSWpqSGEyOVNaeXlxUGdRQndoaURjYVc4d0pjMlczWFdWT0d4NE0zb0pCbnYvemRVWklJcDFnRGVTOThHelA4Tmc9PSJdLAoKICAgICJjb252ZXJ0LXNvdXJjZS1tYXAiOiBbImNvbnZlcnQtc291cmNlLW1hcEAyLjAuMCIsICIiLCB7fSwgInNoYTUxMi1LdnA0NTlIclYyRkVKMUNBc2kxS3UrTVkza2FzSDE5VEZ5a1R6MnhXbU1lcTZiazJOVTNYWHZmSitRNjFtMHhrdFd3dCsxSFNZZjNKWnNUbXMzYVJKZz09Il0sCgogICAgImNzc2ZpbHRlciI6IFsiY3NzZmlsdGVyQDAuMC4xMCIsICIiLCB7fSwgInNoYTUxMi1GQWFMRGFwbHN0b1JzRFI4WEdZSDUxem5VTjBVWTduTWM2WjkvZnZFOEVYR3d2SkU5aHU3VzJ2SHd4MStiZDZnQ1lubG45bkxienhGVHJjTzlZUURadz09Il0sCgogICAgImNzc3R5cGUiOiBbImNzc3R5cGVAMy4yLjMiLCAiIiwge30sICJzaGE1MTItejFIR0tjWXkyeEE4QUdRZndybjBQQXkrUEI3WC9HU2ozVVZKVzlxS3luNDN4V2ErZ2w1blhtVTRxcUxNUnpXVkxGQzhLdXNVWDhULzBrQ2lPWXBBSVE9PSJdLAoKICAgICJkYXRlLWZucyI6IFsiZGF0ZS1mbnNANC4yLjEiLCAiIiwge30sICJzaGE1MTItMzdSaFNkeGFHMXN1ZW42VkRDemE2ck5yUWZvb3lRaDU3SEZWUHdRR0VxMlFXbGlWTHpQUVo4T2EwMTd3ZU91K0haQ256STdOM1BmL3d5b0JLZkVxckE9PSJdLAoKICAgICJkYXRlLWZucy1qYWxhbGkiOiBbImRhdGUtZm5zLWphbGFsaUA0LjEuMC0wIiwgIiIsIHt9LCAic2hhNTEyLWhUSVAveit0K3FLd0JEY21tc25taldUZHV4Q2crNUtmZHFXUXZiMlgvOEM5K2tuWVk2ZXBOL3BmeGREdXlWbFNWZUZ6MHNNNWVFZndJVVE3MFU0Y2tnPT0iXSwKCiAgICAiZGV0ZWN0LWxpYmMiOiBbImRldGVjdC1saWJjQDIuMS4yIiwgIiIsIHt9LCAic2hhNTEyLUJ0ajJCT09PODNvM1d5SDU5ZThNZ1hzeEVRVmNhcmtVT3BFWXJ1YkIwdXJ3bk4xMHlRMzY0cnNpQnlVMTFuWmxxV1labTA1aS9vZjdpbzRtemloQnRRPT0iXSwKCiAgICAiZW1vamktcmVnZXgiOiBbImVtb2ppLXJlZ2V4QDguMC4wIiwgIiIsIHt9LCAic2hhNTEyLU1Tall6Y1dOT0EwZXdBSHB6ME14cFlGdndnNnlqeTFORzN4dGVvcXo2NDRWQ28vUlBnbnIxL0dHdCtpYzNpSlR6UThFdTNUZE0xNFNhd25WVW1HRTZBPT0iXSwKCiAgICAiZW5oYW5jZWQtcmVzb2x2ZSI6IFsiZW5oYW5jZWQtcmVzb2x2ZUA1LjIxLjUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiZ3JhY2VmdWwtZnMiOiAiXjQuMi40IiwgInRhcGFibGUiOiAiXjIuMy4zIiB9IH0sICJzaGE1MTItbUxDTmJyUWxpMTFLMXlTVW11TnQ0WlVCM09wR0lEcTRxMnZUQlRmNWNMMmxwc1JqSTlRS3FTRDBuZGpXOEZ5dmNXL0pqNDZnTWU5c3l5SEFzdk1hL0E9PSJdLAoKICAgICJlcy1tb2R1bGUtbGV4ZXIiOiBbImVzLW1vZHVsZS1sZXhlckAyLjEuMCIsICIiLCB7fSwgInNoYTUxMi1uMjd6VFlNall1MWFqNE1qQ1d6U1A3RzlyNzV1dHNhb2M4bTYxd2VLK1c4Sk1CR0dReWJkNDNHc3RDWFozV05tU0Z0R1Q5d2k1OXFRVFc2bWhUUjVMUT09Il0sCgogICAgImVzYnVpbGQiOiBbImVzYnVpbGRAMC4yNS40IiwgIiIsIHsgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGVzYnVpbGQvYWl4LXBwYzY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9hbmRyb2lkLWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvYW5kcm9pZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2Rhcndpbi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZGFyd2luLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvZnJlZWJzZC14NjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWFybSI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtYXJtNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWlhMzIiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LWxvb25nNjQiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LW1pcHM2NGVsIjogIjAuMjUuNCIsICJAZXNidWlsZC9saW51eC1wcGM2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtcmlzY3Y2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbGludXgtczM5MHgiOiAiMC4yNS40IiwgIkBlc2J1aWxkL2xpbnV4LXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvbmV0YnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9uZXRic2QteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLWFybTY0IjogIjAuMjUuNCIsICJAZXNidWlsZC9vcGVuYnNkLXg2NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvc3Vub3MteDY0IjogIjAuMjUuNCIsICJAZXNidWlsZC93aW4zMi1hcm02NCI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzItaWEzMiI6ICIwLjI1LjQiLCAiQGVzYnVpbGQvd2luMzIteDY0IjogIjAuMjUuNCIgfSwgImJpbiI6IHsgImVzYnVpbGQiOiAiYmluL2VzYnVpbGQiIH0gfSwgInNoYTUxMi04cGdqTFVjVWpjZ0RnKzJRNE5ZWG5QYm8vdm5jQVk0VW15YUNtMGpaZXZFUnFDSFpJYVd3ZEpIa2Y4WFF0dTRBeFNLQ2R2clViVDBYVXIxSWRaekk4UT09Il0sCgogICAgImVzY2FsYWRlIjogWyJlc2NhbGFkZUAzLjIuMCIsICIiLCB7fSwgInNoYTUxMi1XVWoycWx4YVF0TzRnNlBxNWMyOUdUY1dHRHlkOGl0TDh6VGxpcGdFQ3ozSmVzQWlpT0tvdGQ4SlU2b3RCM1BBQ2dHNnhrSlV5Vmhib01TK2JqZS9qQT09Il0sCgogICAgImVzdHJlZS13YWxrZXIiOiBbImVzdHJlZS13YWxrZXJAMy4wLjMiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHR5cGVzL2VzdHJlZSI6ICJeMS4wLjAiIH0gfSwgInNoYTUxMi03UlVLZlhnU01Na3p0Nlp1WG1xYXBPdXJMR1BQZmdqNmw5dVJaN2xSR29sdmsweTJ5b2NjMzVMZGN4S0M1UFFaZG4yRE1xaW9BUTJOb1djclRLbW02Zz09Il0sCgogICAgImV4cGVjdC10eXBlIjogWyJleHBlY3QtdHlwZUAxLjMuMCIsICIiLCB7fSwgInNoYTUxMi1rbnZ5ZWF1WWhxak9ZdlE2Nk16blNNczgzd21IckN5Y05FTjZBbysyQWVZRWZ4VUlrdWlWeGRFYTFxbEdFUEsrV2UzbjBUSGlEY2lZU3NDY2dXL0RvQT09Il0sCgogICAgImZkaXIiOiBbImZkaXJANi41LjAiLCAiIiwgeyAicGVlckRlcGVuZGVuY2llcyI6IHsgInBpY29tYXRjaCI6ICJeMyB8fCBeNCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbInBpY29tYXRjaCJdIH0sICJzaGE1MTItdEliWXRaYnVjT3MwQlJHcVBKa3NoSlVZZEwrU0RIN2RWTThnankrRVJwM1dBVWpMRUZKRSswMmthbnlIdHdqV09ud3JLWUJpd0FtTTBwNGtMSkFuWGc9PSJdLAoKICAgICJmc2V2ZW50cyI6IFsiZnNldmVudHNAMi4zLjIiLCAiIiwgeyAib3MiOiAiZGFyd2luIiB9LCAic2hhNTEyLXhpcU1RUjR4QWVIVHVCOXVXbStmRlJjSU9nS0JNaU9CUCtlWGl5VDdqc2dWQ3ExYmtWeWd0MDBvQVNvd0I3RWR0cE9IYWFQZ0t0ODEyUDlhYitEREtBPT0iXSwKCiAgICAiZ2V0LWNhbGxlci1maWxlIjogWyJnZXQtY2FsbGVyLWZpbGVAMi4wLjUiLCAiIiwge30sICJzaGE1MTItRHlGUDNCTS8zWUhUUU9DVUwvdzBPWkhSMGxwS2VHcnhvdGNIV2NxTkVkbmx0cUZ3WFZmaEVCUTk0ZUlvMzRBZlFwbzByR2tpNGN5SWlmdFkwNmgyRmc9PSJdLAoKICAgICJncmFjZWZ1bC1mcyI6IFsiZ3JhY2VmdWwtZnNANC4yLjExIiwgIiIsIHt9LCAic2hhNTEyLVJiSjUvam1GY05OQ2NEVjVvOWVUbkJMSi9Ic3pXVjBQNzNiYytGZjRuUy9ySmorWWFTNklHeWlPTDBWb0JZWCtsMVdybDNrNjNoL0tySCtuaEowWHZRPT0iXSwKCiAgICAiaGFzLWZsYWciOiBbImhhcy1mbGFnQDQuMC4wIiwgIiIsIHt9LCAic2hhNTEyLUV5a0pUL1ExS2pUV2N0cHBnSUFnZlNPMHRLVnVaVWpoZ01yMTdrcVR1bU1sNkFmdjNFSVNsZVU3cVpVem9YREZUQUhUREM0Tk9vRy9aeFUzRXZsTVBRPT0iXSwKCiAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiBbImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50QDMuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXp5bW01K3Urc0NzU1d5RDlxTmFlalYzREZ2aENLY2xLZGl6WWFKVXVIQTgzUkxqYjduU3VHbmRkQ0hHdjBoaytLWTdCTUFsc1dlSzRVZWc2RVY2WFFnPT0iXSwKCiAgICAiaml0aSI6IFsiaml0aUAyLjcuMCIsICIiLCB7ICJiaW4iOiB7ICJqaXRpIjogImxpYi9qaXRpLWNsaS5tanMiIH0gfSwgInNoYTUxMi1BQy83Sm9mSnZaR3JybmVXTmFFbkplT0xVeCtKbEd0N3ROYTB3WmlSUFQ0TVkxd21mS2p0Mis2TzJwMnV6Mitza2xsOE9aWm1KTU5xZWtlN2tLYk5nUT09Il0sCgogICAgImpvc2UiOiBbImpvc2VANi4yLjMiLCAiIiwge30sICJzaGE1MTItWVlWREluUUtGSmZSL3hhM29qVVRsOGMyS29Ud2lMMVI1V2c5WUN5ZHdIMHgwQjlncmJ6bGc1SEM3bU1qQ3RVSmpiUS9ZbkdFWkloSTV0Q2dmVGI0SHc9PSJdLAoKICAgICJsaWJwaG9uZW51bWJlci1qcyI6IFsibGlicGhvbmVudW1iZXItanNAMS4xMi40MSIsICIiLCB7fSwgInNoYTUxMi1sc21NbUdYQnhYSUsvVk1MRWowa0w2TXRVczFrQkdqMW5UQ3ppNnpnUW9HMURFd3F3dDJEUXlIeGNMeWtjZUl4QW5mRTNoeWE3TnVJaDZQcEM2UzNmQT09Il0sCgogICAgImxpZ2h0bmluZ2NzcyI6IFsibGlnaHRuaW5nY3NzQDEuMzIuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJkZXRlY3QtbGliYyI6ICJeMi4wLjMiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImxpZ2h0bmluZ2Nzcy1hbmRyb2lkLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLWFybTY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtZGFyd2luLXg2NCI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWZyZWVic2QteDY0IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgtYXJtLWdudWVhYmloZiI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6ICIxLjMyLjAiLCAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtZ251IjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiAiMS4zMi4wIiwgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogIjEuMzIuMCIsICJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmMiOiAiMS4zMi4wIiB9IH0sICJzaGE1MTItTlhZQnppbk5yYmxmcmFQR3lyYlBvRDE5QzFoOWxmSS8xbXpnV1l2WFVUZTQxNEd6L1gxRkQyWEJaU1pNN3JSVHJNQThKTDNPdEFhR2lmcklLaFE1eVE9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtYW5kcm9pZC1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWFuZHJvaWQtYXJtNjRAMS4zMi4wIiwgIiIsIHsgIm9zIjogImFuZHJvaWQiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLVlLNy9DbFR0NGtBSzB2bzZ3M1grUG5tMEQyY2YydlBIYmhPWGRvTnRpMUdhMGFsMVA0VEJaaHdqQVR2ak53TEVCQ25LdmpKYzJqUWdIWEgwTkV3bEFnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NCI6IFsibGlnaHRuaW5nY3NzLWRhcndpbi1hcm02NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJhcm02NCIgfSwgInNoYTUxMi1SemVHOUp1NWJhZzJCdjEvbHdsVkp2QkUzcTZUdFhza2RaTExDeWZnNXB0K0hMejlCcWxJQ083TFpNN1ZITlRUbi81UFJoSEZCU2prNWxjNGNtc2NQUT09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy1kYXJ3aW4teDY0IjogWyJsaWdodG5pbmdjc3MtZGFyd2luLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZGFyd2luIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVStRc0JwMm0vczJ3cXBVWVQvNndubGFnZFpidFpkbmRTbXV0L05KcWxDY01MVFdwNW11Q3JJRCtLNVVKNmpxRDJCRnNoZWpDWVhuaVBEYk5oNzNWOHc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtZnJlZWJzZC14NjQiOiBbImxpZ2h0bmluZ2Nzcy1mcmVlYnNkLXg2NEAxLjMyLjAiLCAiIiwgeyAib3MiOiAiZnJlZWJzZCIsICJjcHUiOiAieDY0IiB9LCAic2hhNTEyLUpDVGlnZWRFa3NaazN0SFRUdGhuTWRWZkdmNjFGa3k4SmkyRTRZalVURVFYMTR4aXkvbFR6WG51MXZ3aVplM2JZZTBxK1Nwc1NIL0NUZURYSzZXSGlnPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybS1nbnVlYWJpaGYiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm0tZ251ZWFiaWhmQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtIiB9LCAic2hhNTEyLXg2cm5ucFJhMkdMMHpRT2t0NnJ0czNZRFB6ZHVMcFd2d0FGNkVNaFhGVlpYRDR0UHJCa0VGcXpHb3d6Q3NJV3NQanFTSyt0eU5FT0RVQlhlZVZIU2t3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LWdudUAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLTBubk15b3lPTFJKWGZiTU9pbGFTUmNMSDNKdzV6OUhETkdmVC9nd0NQZ2FEam54MGk4dzd2QnpGTEZSMWY2Q01MS0Y4Z1ZiZWJta1VOM2ZhL2tRSnBRPT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLWxpbnV4LWFybTY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC1hcm02NC1tdXNsQDEuMzIuMCIsICIiLCB7ICJvcyI6ICJsaW51eCIsICJjcHUiOiAiYXJtNjQiIH0sICJzaGE1MTItVXBRa29lbnI0VUpFemdWSVlwSTgwbERGdlJtUFZnNm9xYm9OSGZvSDRDUUlmTkErSE9yWjdNbzdLWlAwMmRDNkxqZ2hQUUplQnN2WGhKb2Qvd25JQmc9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LWdudSI6IFsibGlnaHRuaW5nY3NzLWxpbnV4LXg2NC1nbnVAMS4zMi4wIiwgIiIsIHsgIm9zIjogImxpbnV4IiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItVjdRcjUySWhabWRLUFZyK1Z0dzhvK1dMc1FKWUNUZDhsb0lmcERhTVJXR1VaZkJPWUVKZXlKSWtxR0lETVpQd1B4MjRwVU1md1N4eEk4cGhyL01iT0E9PSJdLAoKICAgICJsaWdodG5pbmdjc3MtbGludXgteDY0LW11c2wiOiBbImxpZ2h0bmluZ2Nzcy1saW51eC14NjQtbXVzbEAxLjMyLjAiLCAiIiwgeyAib3MiOiAibGludXgiLCAiY3B1IjogIng2NCIgfSwgInNoYTUxMi1iWWNMcCtWYjBhd3NpWGcvODB1Q1JlekNZSE5nMS9sM210MGd6SG5XVjlYUDFXNXNLYTUvVENkR1dhUi96Qk0yUGVGL0hic1F2L2oyVVJOT2lWdXhXZz09Il0sCgogICAgImxpZ2h0bmluZ2Nzcy13aW4zMi1hcm02NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzItYXJtNjQtbXN2Y0AxLjMyLjAiLCAiIiwgeyAib3MiOiAid2luMzIiLCAiY3B1IjogImFybTY0IiB9LCAic2hhNTEyLThTYkM4QlI0MHBTNmJhQ004c2J0WURTd0VWUWQ0SmxGVE9sYUQzZ1dHSGZUaFRjQUJuTkRCZGE2ZVRaZXFib2ZhbElKaEZ4MHFLemdISm1jUFRuR2R3PT0iXSwKCiAgICAibGlnaHRuaW5nY3NzLXdpbjMyLXg2NC1tc3ZjIjogWyJsaWdodG5pbmdjc3Mtd2luMzIteDY0LW1zdmNAMS4zMi4wIiwgIiIsIHsgIm9zIjogIndpbjMyIiwgImNwdSI6ICJ4NjQiIH0sICJzaGE1MTItQW1xOUIvU29aWWREaTFrRnJvam5vcVBMeFloUTRXbzVYaUw4RVZKclZzQjhBUm9DMVBXVzZWR3RUMFdLQ2Vtank4YUMrbG91Sm5qUzdVMTh4M2IwNlE9PSJdLAoKICAgICJtYWdpYy1zdHJpbmciOiBbIm1hZ2ljLXN0cmluZ0AwLjMwLjIxIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBqcmlkZ2V3ZWxsL3NvdXJjZW1hcC1jb2RlYyI6ICJeMS41LjUiIH0gfSwgInNoYTUxMi12ZDJGNFlVeUVYS0djTEhvcStURXlDanh1ZVNlSG5GeHl5ak5wODB5ZzBYVjR2VWhuRGVyL2x2dmxxTS9hckI1YlhRTjVLMi8zb2lueUNSeXg4VDJDUT09Il0sCgogICAgIm5hbm9pZCI6IFsibmFub2lkQDMuMy4xMiIsICIiLCB7ICJiaW4iOiB7ICJuYW5vaWQiOiAiYmluL25hbm9pZC5janMiIH0gfSwgInNoYTUxMi1aQjlSSC8zOXFwcTVWdTZZK05tVWFGaFFSNnBwK00yWHQ3NlhCbkV3RGFHY1ZBcWhsdnhybDNCMmJLUzVEM05IM1FSNzZ2M2FTckthRi9LaXk3bEV0UT09Il0sCgogICAgIm5leHQiOiBbIm5leHRAMTYuMi42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBuZXh0L2VudiI6ICIxNi4yLjYiLCAiQHN3Yy9oZWxwZXJzIjogIjAuNS4xNSIsICJiYXNlbGluZS1icm93c2VyLW1hcHBpbmciOiAiXjIuOS4xOSIsICJjYW5pdXNlLWxpdGUiOiAiXjEuMC4zMDAwMTU3OSIsICJwb3N0Y3NzIjogIjguNC4zMSIsICJzdHlsZWQtanN4IjogIjUuMS42IiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAbmV4dC9zd2MtZGFyd2luLWFybTY0IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtZGFyd2luLXg2NCI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LWdudSI6ICIxNi4yLjYiLCAiQG5leHQvc3djLWxpbnV4LWFybTY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy1saW51eC14NjQtZ251IjogIjE2LjIuNiIsICJAbmV4dC9zd2MtbGludXgteDY0LW11c2wiOiAiMTYuMi42IiwgIkBuZXh0L3N3Yy13aW4zMi1hcm02NC1tc3ZjIjogIjE2LjIuNiIsICJAbmV4dC9zd2Mtd2luMzIteDY0LW1zdmMiOiAiMTYuMi42IiwgInNoYXJwIjogIl4wLjM0LjUiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQG9wZW50ZWxlbWV0cnkvYXBpIjogIl4xLjEuMCIsICJAcGxheXdyaWdodC90ZXN0IjogIl4xLjUxLjEiLCAiYmFiZWwtcGx1Z2luLXJlYWN0LWNvbXBpbGVyIjogIioiLCAicmVhY3QiOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJyZWFjdC1kb20iOiAiXjE4LjIuMCB8fCAxOS4wLjAtcmMtZGU2OGQyZjQtMjAyNDEyMDQgfHwgXjE5LjAuMCIsICJzYXNzIjogIl4xLjMuMCIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkBvcGVudGVsZW1ldHJ5L2FwaSIsICJAcGxheXdyaWdodC90ZXN0IiwgImJhYmVsLXBsdWdpbi1yZWFjdC1jb21waWxlciIsICJzYXNzIl0sICJiaW4iOiB7ICJuZXh0IjogImRpc3QvYmluL25leHQiIH0gfSwgInNoYTUxMi1xT1ZnS0pnMStBdDE1TnBlVVArZUpnQ0h2VENnWHNvZ3dlcTg3UmkvSXg3UGtxUUhnNHNkYVhtU0ZxS2xnYUlYRTRrVzBnMjVMRTY4Vzg3VUFObEh0dz09Il0sCgogICAgIm9idWciOiBbIm9idWdAMi4xLjEiLCAiIiwge30sICJzaGE1MTItdVRxRjlNdVByYUFRK0lzblBmMzY2Ukc0Y1A5UnRVaTdNTE8xTjNLRWMrd2IwYTZ5S3BlTDBsbWsySUIxalk1S0hQQWxUYzZUL0pSZEMvWXF4SE53a1E9PSJdLAoKICAgICJwYXRoZSI6IFsicGF0aGVAMi4wLjMiLCAiIiwge30sICJzaGE1MTItV1VqR2NBcVAxZ1FhY29RZStPQkpzRkE3TGQ0RHlYdVVJalo1Y2M3NWNMSHZKN2R0TnNUdWdwaHhJQUR3c3BTK0FyYUFVZVBDS3JTVnRQTEZqL0Y4OHc9PSJdLAoKICAgICJwaWNvY29sb3JzIjogWyJwaWNvY29sb3JzQDEuMS4xIiwgIiIsIHt9LCAic2hhNTEyLXhjZUgyc25odGI1TTlsaXFEc21FdzU2bGUzNzZtVFprRVgvakViL1J4TkZ5ZWdOdWw3ZU5zbENYUDlGRGovTGN1MFg4S0V5TWNlUDJudHBhSHJERVZBPT0iXSwKCiAgICAicGljb21hdGNoIjogWyJwaWNvbWF0Y2hANC4wLjQiLCAiIiwge30sICJzaGE1MTItUVA4OEJBS3ZNYW0vM054SDZ2ajJvMjFSNk1qeFpVQWQ2bmx3QVMvcG5Hdk45SVZMb2NMSHhHWUl6RmhnNmZVUSs1dGg2UDRkdjRlVzlqWDNEU0lqN0E9PSJdLAoKICAgICJwbGF5d3JpZ2h0IjogWyJwbGF5d3JpZ2h0QDEuNjAuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJwbGF5d3JpZ2h0LWNvcmUiOiAiMS42MC4wIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJmc2V2ZW50cyI6ICIyLjMuMiIgfSwgImJpbiI6IHsgInBsYXl3cmlnaHQiOiAiY2xpLmpzIiB9IH0sICJzaGE1MTItaGhlSGRva004Y2RxQ2IwbGNFM3MrelQ0dDRXK3Z2anBHeHNabERuaWthcnp4OHRTek1lYmgzVWlGdGdxd0Z3blRuallRY3N5TUY4ZWkybUNPL3RwZUE9PSJdLAoKICAgICJwbGF5d3JpZ2h0LWNvcmUiOiBbInBsYXl3cmlnaHQtY29yZUAxLjYwLjAiLCAiIiwgeyAiYmluIjogeyAicGxheXdyaWdodC1jb3JlIjogImNsaS5qcyIgfSB9LCAic2hhNTEyLTliVzZ6dlgvbTBsRWJnVEtKNllwcE9LeDhIM1ZPUEJNT0NGaDJpclhGT1Q0QmJIZ3J4NWhQandKWUxUNDBMdSs0cXREMzZxS2MvSG41NlN0VVc1N0lBPT0iXSwKCiAgICAicG9zdGNzcyI6IFsicG9zdGNzc0A4LjUuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAibmFub2lkIjogIl4zLjMuMTIiLCAicGljb2NvbG9ycyI6ICJeMS4xLjEiLCAic291cmNlLW1hcC1qcyI6ICJeMS4yLjEiIH0gfSwgInNoYTUxMi1GZlI4c2pkNGVtMlQ2ZmIzSTJNd0FKVTdIV1ZNcjl6YmErZW5tUWVlV0ZmQ2JtK1VPQy8wWDREUzhYdHBVVE13V01HYmpLWVA3eGpmTmVrenlHbUIzQT09Il0sCgogICAgInJlYWN0IjogWyJyZWFjdEAxOS4yLjYiLCAiIiwge30sICJzaGE1MTItc2ZXR0dmYXZpMHhyOFBnMHNWc3lITUFPemlWWUtnUExOclM3aWcraXZNTmIzd2JDQnczS3h0ZmxzR0JBd0QzZ1lRbEUvQUVac1RMZ1RvUnJTQ2piMFE9PSJdLAoKICAgICJyZWFjdC1kYXktcGlja2VyIjogWyJyZWFjdC1kYXktcGlja2VyQDkuMTQuMCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAZGF0ZS1mbnMvdHoiOiAiXjEuNC4xIiwgIkB0YWJieV9haS9oaWpyaS1jb252ZXJ0ZXIiOiAiMS4wLjUiLCAiZGF0ZS1mbnMiOiAiXjQuMS4wIiwgImRhdGUtZm5zLWphbGFsaSI6ICI0LjEuMC0wIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49MTYuOC4wIiB9IH0sICJzaGE1MTItdEJhb0RXalB3ZTBNNXBHcnVtNEgwU1I2THlrK0JPOW9IbnA5SmJLcEdLVzJtbHJhTlBnUDlCTWZzZzVwV3B3cnNzQVJtZXFrN1lCbDJvWHV0WlRhSEE9PSJdLAoKICAgICJyZWFjdC1kb20iOiBbInJlYWN0LWRvbUAxOS4yLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAic2NoZWR1bGVyIjogIl4wLjI3LjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAicmVhY3QiOiAiXjE5LjIuNiIgfSB9LCAic2hhNTEyLTBwck1JK2h2QmJQanNXbnhETHhsQ0d5TThQTjZVdVdqRVVDWW1aaE82N3hJVjlYYXNhL3IvdkRucStYeXE0TG8yN2c4UVNiTzVZekFSdTBEMVNwczNnPT0iXSwKCiAgICAicmVxdWlyZS1kaXJlY3RvcnkiOiBbInJlcXVpcmUtZGlyZWN0b3J5QDIuMS4xIiwgIiIsIHt9LCAic2hhNTEyLWZHeEVJNyt3c0c5eHJ2ZGpzcmxtTDIyT01UVGlIUndBTXJvaUVlTWdxOGd6b0xDL1BRcjdSc1JEU1RMVWcvYlpBWnRGK1RWSWtIYzYvNFJJS3J1aStRPT0iXSwKCiAgICAicmVzZWxlY3QiOiBbInJlc2VsZWN0QDUuMi4wIiwgIiIsIHt9LCAic2hhNTEyLUFnWjNVT1ptM1luZGZySjRPWWpnclQ3Ym1DbS8xaXFranZFZkgvb1lqemg2UEQycXc0UXVUM2pqblhJcnBkdDRNVHBNWGNsTVQzbFhibVJZK1hSYWt3PT0iXSwKCiAgICAicm9sbGRvd24iOiBbInJvbGxkb3duQDEuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBveGMtcHJvamVjdC90eXBlcyI6ICI9MC4xMzAuMCIsICJAcm9sbGRvd24vcGx1Z2ludXRpbHMiOiAiXjEuMC4wIiB9LCAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7ICJAcm9sbGRvd24vYmluZGluZy1hbmRyb2lkLWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWRhcndpbi1hcm02NCI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1kYXJ3aW4teDY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWZyZWVic2QteDY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybS1nbnVlYWJpaGYiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtYXJtNjQtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LWFybTY0LW11c2wiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctbGludXgtcHBjNjQtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXMzOTB4LWdudSI6ICIxLjAuMSIsICJAcm9sbGRvd24vYmluZGluZy1saW51eC14NjQtZ251IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLWxpbnV4LXg2NC1tdXNsIjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLW9wZW5oYXJtb255LWFybTY0IjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLXdhc20zMi13YXNpIjogIjEuMC4xIiwgIkByb2xsZG93bi9iaW5kaW5nLXdpbjMyLWFybTY0LW1zdmMiOiAiMS4wLjEiLCAiQHJvbGxkb3duL2JpbmRpbmctd2luMzIteDY0LW1zdmMiOiAiMS4wLjEiIH0sICJiaW4iOiB7ICJyb2xsZG93biI6ICJiaW4vY2xpLm1qcyIgfSB9LCAic2hhNTEyLVgwS1FIbGpObkVrV05xcWl6OXpKckd1bmgxQjBIZ094TFh2bkZwQ09jYWR6Y3k1cW9oWjN0cU1FVWcwMHZuY29Sb3ZYdUszWnFDVDlLbm5Lem9JbkZRPT0iXSwKCiAgICAicnhqcyI6IFsicnhqc0A3LjguMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi4xLjAiIH0gfSwgInNoYTUxMi1kaEtmOTAzVS9QUVpZNmJvTk50QUdkV2JHODVXQWJqVC8xeFlvWklDN0ZBWTB5V2FwT0JRVnNWckRsNThXODYvL2UxVnBNTkJ0UlY0TWFYZmRNeVNGQT09Il0sCgogICAgInNjaGVkdWxlciI6IFsic2NoZWR1bGVyQDAuMjcuMCIsICIiLCB7fSwgInNoYTUxMi1lTnYrV3JWYkt1MWYzdmJZSlQveHRpRjVzeUE1SFBJTXRmOUlnWS9uS2cwc1dxekFVRXZxWS94bTdPY1pjL3FhZkx4L2lPOUZnT21lU0FwNHY1dGkvUT09Il0sCgogICAgInNlbXZlciI6IFsic2VtdmVyQDcuOC4wIiwgIiIsIHsgImJpbiI6IHsgInNlbXZlciI6ICJiaW4vc2VtdmVyLmpzIiB9IH0sICJzaGE1MTItQWNNN2RWLzV1bDRFZWtvUTI5QWdtNXZyaThKTnFSeWozOW8wcXBYNnZERjJHWnJ0dXRabDVSd2dEMVhuWmppVEFmbmNzSmhNSTQ4UVFIM3NOODdZTkE9PSJdLAoKICAgICJzaGFycCI6IFsic2hhcnBAMC4zNC41IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgIkBpbWcvY29sb3VyIjogIl4xLjAuMCIsICJkZXRlY3QtbGliYyI6ICJeMi4xLjIiLCAic2VtdmVyIjogIl43LjcuMyIgfSwgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjogeyAiQGltZy9zaGFycC1kYXJ3aW4tYXJtNjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtZGFyd2luLXg2NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saWJ2aXBzLWRhcndpbi1hcm02NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtZGFyd2luLXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtYXJtIjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC1hcm02NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXgtcHBjNjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXJpc2N2NjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4LXMzOTB4IjogIjEuMi40IiwgIkBpbWcvc2hhcnAtbGlidmlwcy1saW51eC14NjQiOiAiMS4yLjQiLCAiQGltZy9zaGFycC1saWJ2aXBzLWxpbnV4bXVzbC1hcm02NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpYnZpcHMtbGludXhtdXNsLXg2NCI6ICIxLjIuNCIsICJAaW1nL3NoYXJwLWxpbnV4LWFybSI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eC1hcm02NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eC1wcGM2NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eC1yaXNjdjY0IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXMzOTB4IjogIjAuMzQuNSIsICJAaW1nL3NoYXJwLWxpbnV4LXg2NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC1saW51eG11c2wtYXJtNjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtbGludXhtdXNsLXg2NCI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13YXNtMzIiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtd2luMzItYXJtNjQiOiAiMC4zNC41IiwgIkBpbWcvc2hhcnAtd2luMzItaWEzMiI6ICIwLjM0LjUiLCAiQGltZy9zaGFycC13aW4zMi14NjQiOiAiMC4zNC41IiB9IH0sICJzaGE1MTItT3U5STVGdDlXTmNDYlhyVTljTWdQQmNDSzhMaXdMcWNieXdXM3Q0b0RWMzduMXB6cHVOTHNZaUFWOGVPRG5qYnRRbFNEd1oyY1VFZVF6NEU1NEhsdGc9PSJdLAoKICAgICJzaGVsbC1xdW90ZSI6IFsic2hlbGwtcXVvdGVAMS44LjMiLCAiIiwge30sICJzaGE1MTItT2JtbklGNGhYTmcxQnFobkhtZ2JERVRGOGRMUENnZ1pXQmprUWZoWnBic3pabll1cjVEVWxqVGNDSGlpNUxDM0o1RTB5ZU8vMUxJTXlIK1V2SFFneXc9PSJdLAoKICAgICJzaWdpbmZvIjogWyJzaWdpbmZvQDIuMC4wIiwgIiIsIHt9LCAic2hhNTEyLXlieDBXTzEvOGJTQkxFV1hadkVkN2dNVzNTbjNKRmxXM1R2WDFuUkViRExSTlFOYWVOTjhXSzBtZUJ3UGRBYU9JN1R0UlJSSm4vRXMxemhyckNIdTdnPT0iXSwKCiAgICAic291cmNlLW1hcCI6IFsic291cmNlLW1hcEAwLjYuMSIsICIiLCB7fSwgInNoYTUxMi1VamdhcHVtV2xiTWhrQmd6VDdZa2M1WVhVVDQ2RjBpS3U4U0dYcTBiY3dQNWR6L2gwUGxqNmVuSnFqejFaYnEybDVXYXFZbnJWYndXT1dNeUYzRjQ3Zz09Il0sCgogICAgInNvdXJjZS1tYXAtanMiOiBbInNvdXJjZS1tYXAtanNAMS4yLjEiLCAiIiwge30sICJzaGE1MTItVVhXTUtoTE93VktiNzI4SVV0UVBYeGZZVSt1c2R5YnRVcksvOHVHRThDUU12cmhPcHd2ekRCd2owUWhTTDdNUWM3dklzSVNCRzhWUTgrSURReHBmUUE9PSJdLAoKICAgICJzb3VyY2UtbWFwLXN1cHBvcnQiOiBbInNvdXJjZS1tYXAtc3VwcG9ydEAwLjUuMjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiYnVmZmVyLWZyb20iOiAiXjEuMC4wIiwgInNvdXJjZS1tYXAiOiAiXjAuNi4wIiB9IH0sICJzaGE1MTItdUJIVTNMM2N6c0l5WVhLWDg4ZmRyR292eGRTQ29UR0RSWjZTWVh0U1J4TFpVekhnNVAvNjZIdDZ1b1VsSHU5RVpvZCtpblhoS28zcVFnd1hVVC95MXc9PSJdLAoKICAgICJzdGFja2JhY2siOiBbInN0YWNrYmFja0AwLjAuMiIsICIiLCB7fSwgInNoYTUxMi0xWE1KRTVmUW8xakdINlkvN2VibndQT0JFa0lFblQ0UUYzMmQ1UjErVlhkWHZlTTBJQk1KdDh6ZmF4WDFQM1FoVndyWWUrNTc2K2prQU50U1MybUJidz09Il0sCgogICAgInN0ZC1lbnYiOiBbInN0ZC1lbnZANC4xLjAiLCAiIiwge30sICJzaGE1MTItUnE3eWJjWDJSdUM1NXI5b2FQVkVXNy94dTN0ajh1NEdlQllIQldDeWNoRnR6TUlyODZBN2UzUFBFQlBUMzdzSFN0S1gzK1RpWC9Gci9BQ21KTFZsTFE9PSJdLAoKICAgICJzdHJpbmctd2lkdGgiOiBbInN0cmluZy13aWR0aEA0LjIuMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJlbW9qaS1yZWdleCI6ICJeOC4wLjAiLCAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiAiXjMuMC4wIiwgInN0cmlwLWFuc2kiOiAiXjYuMC4xIiB9IH0sICJzaGE1MTItd0t5UVJRcGpKMHNJcDYyRXJTWmRHc2pNSldzYXA1b1JOaWhIaHU2RzdKVk8vOWpJQjZVeWV2TCt0WHVPcXJuZzhqL2N4S1RXeVdVd3ZTVHJpaVp6L2c9PSJdLAoKICAgICJzdHJpcC1hbnNpIjogWyJzdHJpcC1hbnNpQDYuMC4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImFuc2ktcmVnZXgiOiAiXjUuMC4xIiB9IH0sICJzaGE1MTItWTM4VlBTSGNxa0ZyQ3BGblE5dnVTWG1xdXV2NW9YT0twR2VUNmFHcnIzbzNHYzlBbFZhNkpCZlVTT0NuYnhHR1pGKy8wb29JN0tyUHVVU3p0VWRVNUE9PSJdLAoKICAgICJzdHlsZWQtanN4IjogWyJzdHlsZWQtanN4QDUuMS42IiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImNsaWVudC1vbmx5IjogIjAuMC4xIiB9LCAicGVlckRlcGVuZGVuY2llcyI6IHsgInJlYWN0IjogIj49IDE2LjguMCB8fCAxNy54LnggfHwgXjE4LjAuMC0wIHx8IF4xOS4wLjAtMCIgfSB9LCAic2hhNTEyLXFTVnlEVGVNb3RkdlFZb0hXTE5Hd1JGSkhDK2krWnZkQlJZb3NPRmdDK1dnMXZ4NGZyTjIvUkcvTkE3U1lxcXZLTkxmMzlQMkxTUkEycHU2bjBYWVpBPT0iXSwKCiAgICAic3VwcG9ydHMtY29sb3IiOiBbInN1cHBvcnRzLWNvbG9yQDguMS4xIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImhhcy1mbGFnIjogIl40LjAuMCIgfSB9LCAic2hhNTEyLU1wVUVOMk9vZHRVenh2S1FsNzJjVUY3UlE1RWlIc0d2U3NWRzBpYTljNVJiV0dMMkNJNEM3RXBQUzhVVEJJcGxubHpaaU51VjU2dytGdU54eTN0eTJRPT0iXSwKCiAgICAidGFpbHdpbmQtbWVyZ2UiOiBbInRhaWx3aW5kLW1lcmdlQDMuNi4wIiwgIiIsIHt9LCAic2hhNTEyLXV4TDdxQVZRcmlxUlFQQXlLM3BqNjZWcXNrV3FvWjM3UFc5NGp3T1R3TmZxL3o5b3l1MVYrZXFyWnF0UjIrZkNpWGRZT1plL01vZHQ4R3R2cU56dSt3PT0iXSwKCiAgICAidGFpbHdpbmRjc3MiOiBbInRhaWx3aW5kY3NzQDQuMy4wIiwgIiIsIHt9LCAic2hhNTEyLXk2bnhNR0Ixbk1XOVI2azk2ZTVnZElGemNmTC9nVEpSTmFxR2VzMVl2a0xuUFZYeldnYnFGRjJ5TEMwVDhHNzc0bjI0Y3gzUGU4WHJLb25pQ09BSCtRPT0iXSwKCiAgICAidGFwYWJsZSI6IFsidGFwYWJsZUAyLjMuMyIsICIiLCB7fSwgInNoYTUxMi11eGMvenBxRmc2eDdDOHZPRTdsaDZMYmRhOGVFTDl6bVZtL1BMZVRQQlJoaDF4Q2dkV2FRK0oxQ1VpZUdwSWZtMkhkdHNVcFJ2K0hzaGlhc0JNY2M2QT09Il0sCgogICAgInRlcnNlciI6IFsidGVyc2VyQDUuMTYuOSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAanJpZGdld2VsbC9zb3VyY2UtbWFwIjogIl4wLjMuMiIsICJhY29ybiI6ICJeOC41LjAiLCAiY29tbWFuZGVyIjogIl4yLjIwLjAiLCAic291cmNlLW1hcC1zdXBwb3J0IjogIn4wLjUuMjAiIH0sICJiaW4iOiB7ICJ0ZXJzZXIiOiAiYmluL3RlcnNlciIgfSB9LCAic2hhNTEyLUhQYS9GZFRCOVhHSTJIMS9rZUxGWkh4bDZXTnZBSTRZYWxIR3REUVRsTW5KY29xU2FiMVV3TDRsMWhHRWhzNi9HbUxIQlpJZy9ZZ0IrK2pjYnpvT0VnPT0iXSwKCiAgICAidGlueWJlbmNoIjogWyJ0aW55YmVuY2hAMi45LjAiLCAiIiwge30sICJzaGE1MTItMCtEVXZxV01WYWxMbWhhNmxyNGtEOGlBTUsxSHpWMC9hS25DdFdiOXY5NjQxVG5QL01GYjdQYzJieG94UWpUWEFFcnJ5WFZnVU9mdjJZcU5sbHFHZWc9PSJdLAoKICAgICJ0aW55ZXhlYyI6IFsidGlueWV4ZWNAMS4xLjIiLCAiIiwge30sICJzaGE1MTItZEFxU3FFL1JhYnBCS0k4K2gyNkdmTHE2VmIzSlZYczMwWFlRamRNamFqL2MydFM4SVlZTWJJelA1OTlLdFJqN2M1Ny93WUFwYjNRamdSZ1htckN1a0E9PSJdLAoKICAgICJ0aW55Z2xvYmJ5IjogWyJ0aW55Z2xvYmJ5QDAuMi4xNiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJmZGlyIjogIl42LjUuMCIsICJwaWNvbWF0Y2giOiAiXjQuMC40IiB9IH0sICJzaGE1MTItcG45OVZob0FDWVI4bkZIaHhxaXgrdXZzYlhpbmVBYXNXbTVvalhvTjh4RXdLNUtkMy9UcmhObjF3Qnl1RDUyVXhXUkx5OHB1K2tSTW5pRWk2RXE5Wmc9PSJdLAoKICAgICJ0aW55cmFpbmJvdyI6IFsidGlueXJhaW5ib3dAMy4xLjAiLCAiIiwge30sICJzaGE1MTItQmYrSUxtQmdyZXRVcmRKeHpYTTBTZ1hMWjNYZmlhVXVPai9JS1FIdVRYaXArMDVYbit1eUVZZFZnMGtZRGlwVEJjTHJDVnlVekFQejdRbUFyYjBtbXc9PSJdLAoKICAgICJ0cmVlLWtpbGwiOiBbInRyZWUta2lsbEAxLjIuMiIsICIiLCB7ICJiaW4iOiB7ICJ0cmVlLWtpbGwiOiAiY2xpLmpzIiB9IH0sICJzaGE1MTItTDBPcnBpOHFHcFJHLy9OZCtIOTB2RkIrM2lIbnVlMXpTU0dtTk9PQ2gxR0xKN3JVS1Z3VjJIdmlqcGhHUVMyVW1oVVpld1M5Vmd2eFlJZGdyK2ZHMUE9PSJdLAoKICAgICJ0c2xpYiI6IFsidHNsaWJAMi44LjEiLCAiIiwge30sICJzaGE1MTItb0pGdTk0SFFiK0tWZHVTVVFMN3ducG1xbmZtTHNPQS9uQWg2YjZFSDB3Q0VvSzAvbVBlWFU2YzN3S0RWODNNa091SFBSSHRTWEtLVTk5SUJhelMvMnc9PSJdLAoKICAgICJ0eXBlc2NyaXB0IjogWyJ0eXBlc2NyaXB0QDUuOS4zIiwgIiIsIHsgImJpbiI6IHsgInRzYyI6ICJiaW4vdHNjIiwgInRzc2VydmVyIjogImJpbi90c3NlcnZlciIgfSB9LCAic2hhNTEyLWpsMXZaelBEaW5McjllVXQzSi90N1Y2RmdORXc5UWp2QlBkeXN6OUtmUURENDFmUXJDMlk0dktRZGlhVXBGVDRiWGxiMVJIaExwcDh3dG02TTVUZ1N3PT0iXSwKCiAgICAidW5kaWNpLXR5cGVzIjogWyJ1bmRpY2ktdHlwZXNANi4yMS4wIiwgIiIsIHt9LCAic2hhNTEyLWl3RFpxZzBRQUdyZzlSYXY1SDRuME02NGMzbWtSNTljSjZ3UXArN0M0bkkwZ3NtRXhhZWRhWUxOTzQ0ZVQ0QXRCQndqYlRpR1BNbHQyTWQwVDlIOUpRPT0iXSwKCiAgICAidXNlLXN5bmMtZXh0ZXJuYWwtc3RvcmUiOiBbInVzZS1zeW5jLWV4dGVybmFsLXN0b3JlQDEuNi4wIiwgIiIsIHsgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJyZWFjdCI6ICJeMTYuOC4wIHx8IF4xNy4wLjAgfHwgXjE4LjAuMCB8fCBeMTkuMC4wIiB9IH0sICJzaGE1MTItUHA2R1N3R1AvTnJQSXJ4VkZBSWtPUWV5dzhsRmVuT0hpalFXa1VUckR2ckY0QUxxeWxQMkMvS0NrZVM5ZHBVTTNLdllSUWhuYTV2dDdJTDk1K1pROXc9PSJdLAoKICAgICJ2aXRlIjogWyJ2aXRlQDguMC4xMyIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJsaWdodG5pbmdjc3MiOiAiXjEuMzIuMCIsICJwaWNvbWF0Y2giOiAiXjQuMC40IiwgInBvc3Rjc3MiOiAiXjguNS4xNCIsICJyb2xsZG93biI6ICIxLjAuMSIsICJ0aW55Z2xvYmJ5IjogIl4wLjIuMTYiIH0sICJvcHRpb25hbERlcGVuZGVuY2llcyI6IHsgImZzZXZlbnRzIjogIn4yLjMuMyIgfSwgInBlZXJEZXBlbmRlbmNpZXMiOiB7ICJAdHlwZXMvbm9kZSI6ICJeMjAuMTkuMCB8fCA+PTIyLjEyLjAiLCAiQHZpdGVqcy9kZXZ0b29scyI6ICJeMC4xLjE4IiwgImVzYnVpbGQiOiAiXjAuMjcuMCB8fCBeMC4yOC4wIiwgImppdGkiOiAiPj0xLjIxLjAiLCAibGVzcyI6ICJeNC4wLjAiLCAic2FzcyI6ICJeMS43MC4wIiwgInNhc3MtZW1iZWRkZWQiOiAiXjEuNzAuMCIsICJzdHlsdXMiOiAiPj0wLjU0LjgiLCAic3VnYXJzcyI6ICJeNS4wLjAiLCAidGVyc2VyIjogIl41LjE2LjAiLCAidHN4IjogIl40LjguMSIsICJ5YW1sIjogIl4yLjQuMiIgfSwgIm9wdGlvbmFsUGVlcnMiOiBbIkB0eXBlcy9ub2RlIiwgIkB2aXRlanMvZGV2dG9vbHMiLCAiZXNidWlsZCIsICJqaXRpIiwgImxlc3MiLCAic2FzcyIsICJzYXNzLWVtYmVkZGVkIiwgInN0eWx1cyIsICJzdWdhcnNzIiwgInRlcnNlciIsICJ0c3giLCAieWFtbCJdLCAiYmluIjogeyAidml0ZSI6ICJiaW4vdml0ZS5qcyIgfSB9LCAic2hhNTEyLU1GdGpCWWd6bVN4bWdBNFJBZmpJeVhXcEdlMW9BTG5qZ1VUenpWN1FMeC9US3hDemp0TUg2RmQ5L2VWSys1RmcxcU5vejVWQXdzbU1zL05vZnJtSnZ3PT0iXSwKCiAgICAidml0ZXN0IjogWyJ2aXRlc3RANC4xLjYiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQHZpdGVzdC9leHBlY3QiOiAiNC4xLjYiLCAiQHZpdGVzdC9tb2NrZXIiOiAiNC4xLjYiLCAiQHZpdGVzdC9wcmV0dHktZm9ybWF0IjogIjQuMS42IiwgIkB2aXRlc3QvcnVubmVyIjogIjQuMS42IiwgIkB2aXRlc3Qvc25hcHNob3QiOiAiNC4xLjYiLCAiQHZpdGVzdC9zcHkiOiAiNC4xLjYiLCAiQHZpdGVzdC91dGlscyI6ICI0LjEuNiIsICJlcy1tb2R1bGUtbGV4ZXIiOiAiXjIuMC4wIiwgImV4cGVjdC10eXBlIjogIl4xLjMuMCIsICJtYWdpYy1zdHJpbmciOiAiXjAuMzAuMjEiLCAib2J1ZyI6ICJeMi4xLjEiLCAicGF0aGUiOiAiXjIuMC4zIiwgInBpY29tYXRjaCI6ICJeNC4wLjMiLCAic3RkLWVudiI6ICJeNC4wLjAtcmMuMSIsICJ0aW55YmVuY2giOiAiXjIuOS4wIiwgInRpbnlleGVjIjogIl4xLjAuMiIsICJ0aW55Z2xvYmJ5IjogIl4wLjIuMTUiLCAidGlueXJhaW5ib3ciOiAiXjMuMS4wIiwgInZpdGUiOiAiXjYuMC4wIHx8IF43LjAuMCB8fCBeOC4wLjAiLCAid2h5LWlzLW5vZGUtcnVubmluZyI6ICJeMi4zLjAiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVkZ2UtcnVudGltZS92bSI6ICIqIiwgIkBvcGVudGVsZW1ldHJ5L2FwaSI6ICJeMS45LjAiLCAiQHR5cGVzL25vZGUiOiAiXjIwLjAuMCB8fCBeMjIuMC4wIHx8ID49MjQuMC4wIiwgIkB2aXRlc3QvYnJvd3Nlci1wbGF5d3JpZ2h0IjogIjQuMS42IiwgIkB2aXRlc3QvYnJvd3Nlci1wcmV2aWV3IjogIjQuMS42IiwgIkB2aXRlc3QvYnJvd3Nlci13ZWJkcml2ZXJpbyI6ICI0LjEuNiIsICJAdml0ZXN0L2NvdmVyYWdlLWlzdGFuYnVsIjogIjQuMS42IiwgIkB2aXRlc3QvY292ZXJhZ2UtdjgiOiAiNC4xLjYiLCAiQHZpdGVzdC91aSI6ICI0LjEuNiIsICJoYXBweS1kb20iOiAiKiIsICJqc2RvbSI6ICIqIiB9LCAib3B0aW9uYWxQZWVycyI6IFsiQGVkZ2UtcnVudGltZS92bSIsICJAb3BlbnRlbGVtZXRyeS9hcGkiLCAiQHR5cGVzL25vZGUiLCAiQHZpdGVzdC9icm93c2VyLXBsYXl3cmlnaHQiLCAiQHZpdGVzdC9icm93c2VyLXByZXZpZXciLCAiQHZpdGVzdC9icm93c2VyLXdlYmRyaXZlcmlvIiwgIkB2aXRlc3QvY292ZXJhZ2UtaXN0YW5idWwiLCAiQHZpdGVzdC9jb3ZlcmFnZS12OCIsICJAdml0ZXN0L3VpIiwgImhhcHB5LWRvbSIsICJqc2RvbSJdLCAiYmluIjogeyAidml0ZXN0IjogInZpdGVzdC5tanMiIH0gfSwgInNoYTUxMi02bHZqYlMzcDliNENyZENtZ3V6YmgyLzR1b1hoR0UycTcxUjRPWDVzcUY5UjFibzlYZDZmR3JNQWZ2cDV3bkN6bEJuRlZkQ09wNm9udVRRVmJvOGlVUT09Il0sCgogICAgIndoeS1pcy1ub2RlLXJ1bm5pbmciOiBbIndoeS1pcy1ub2RlLXJ1bm5pbmdAMi4zLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAic2lnaW5mbyI6ICJeMi4wLjAiLCAic3RhY2tiYWNrIjogIjAuMC4yIiB9LCAiYmluIjogeyAid2h5LWlzLW5vZGUtcnVubmluZyI6ICJjbGkuanMiIH0gfSwgInNoYTUxMi1oVXJtYVdCZFZEY3h2WXFueWgwOXp1bkt6Uk9XamJaVGlOeThkQkVqa1M3ZWhFRFFpYlhKN1h2bG10Ynd1VGNsVWlJeU4rQ3lYUUQ0Vm1rbzhmTm04dz09Il0sCgogICAgIndyYXAtYW5zaSI6IFsid3JhcC1hbnNpQDcuMC4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImFuc2ktc3R5bGVzIjogIl40LjAuMCIsICJzdHJpbmctd2lkdGgiOiAiXjQuMS4wIiwgInN0cmlwLWFuc2kiOiAiXjYuMC4wIiB9IH0sICJzaGE1MTItWVZHSWoya2FtTFNUeHc2TnNaam9CeGZTd3NuMHljZGVzbWM0cCtRMjFjNXpQdVoxcGwrTmZ4VmR4UHRkSHZtTlZPUTZYU1lHNEFVdHl0L0ZpN0QxNlE9PSJdLAoKICAgICJ4c3MiOiBbInhzc0AxLjAuMTUiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY29tbWFuZGVyIjogIl4yLjIwLjMiLCAiY3NzZmlsdGVyIjogIjAuMC4xMCIgfSwgImJpbiI6IHsgInhzcyI6ICJiaW4veHNzIiB9IH0sICJzaGE1MTItRlZkbFZWQzY3V09JUHZmT3dob01FVFY3MmY2R2JXN2FPYWJCQzNXeE4vb1Vkb0VNRHlMejRPZ1J2NS9nY2syWmVOcUVRdStUYjBrbG9vdlhPZnBZVmc9PSJdLAoKICAgICJ5MThuIjogWyJ5MThuQDUuMC44IiwgIiIsIHt9LCAic2hhNTEyLTBwZkZ6ZWdlRFdKSEpJQW1UTFJQMkR3SGpkRjVzN2pvOXR1enRkUXhBaElOQ2R2UyszbkdJTnFQZDAwQXBocUpSLzBMaEFOVVM2Lys3U0NiOThZT2ZBPT0iXSwKCiAgICAieWFtbCI6IFsieWFtbEAyLjkuMCIsICIiLCB7ICJiaW4iOiB7ICJ5YW1sIjogImJpbi5tanMiIH0gfSwgInNoYTUxMi0yQXZoTlgzbWI4emQ2Wnk3SU5UdFNwbDFGMTVIVzZXbnFqMHNyV2xrS0xjcFlsL2dNSU1KaXl1R3EyS2VJMllGeFVQamRsQiszTGMxMHNlTUx0TDRjQT09Il0sCgogICAgInlhcmdzIjogWyJ5YXJnc0AxNy43LjIiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiY2xpdWkiOiAiXjguMC4xIiwgImVzY2FsYWRlIjogIl4zLjEuMSIsICJnZXQtY2FsbGVyLWZpbGUiOiAiXjIuMC41IiwgInJlcXVpcmUtZGlyZWN0b3J5IjogIl4yLjEuMSIsICJzdHJpbmctd2lkdGgiOiAiXjQuMi4zIiwgInkxOG4iOiAiXjUuMC41IiwgInlhcmdzLXBhcnNlciI6ICJeMjEuMS4xIiB9IH0sICJzaGE1MTItN2RTenpSUSsrQ0tuTkkva3JLbllSVjdKS0tQVVhNRWg2MXNvYUhLZzltcldFaHpGV2hGbnhQeEdsKzY5Y0QxT3U2M0MxM05VUENubUljcnZxQ3VNNnc9PSJdLAoKICAgICJ5YXJncy1wYXJzZXIiOiBbInlhcmdzLXBhcnNlckAyMS4xLjEiLCAiIiwge30sICJzaGE1MTItdFZwc0pXN0RkamVjQWlGcGJJQjFlM3F4SVFzRTZOb1BjNS9lVGRyYmJJQzRoMExWc1dobm9hM2crbTJIY2xCSXVqSHpzeFo0VkpWQStHVXVjMi9MQnc9PSJdLAoKICAgICJ6b2QiOiBbInpvZEA0LjQuMyIsICIiLCB7fSwgInNoYTUxMi15dEVORmpJSkZsMlV3WWdsZGUyamNoVzJId200R0pGTERpU1hXZFRySlFCSU45RmN5cDduNERoeEpFaVdOQUpNVjEvQnFXZlcva2tnNzFVRGNISnlUUT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaS9AZW1uYXBpL2NvcmUiOiBbIkBlbW5hcGkvY29yZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS93YXNpLXRocmVhZHMiOiAiMS4yLjEiLCAidHNsaWIiOiAiXjIuNC4wIiB9LCAiYnVuZGxlZCI6IHRydWUgfSwgInNoYTUxMi15cTZPa0o0cDgyQ0FmUGwwdTltUWViUUhLUEprWTdXckl1azIwNWNUWW5ZZStrMlo4WUJoMTFGcmJSRy9INmloaXJxY2FjT2dsMkJJTzhveU1RTGVYdz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaS9AZW1uYXBpL3J1bnRpbWUiOiBbIkBlbW5hcGkvcnVudGltZUAxLjEwLjAiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9LCAiYnVuZGxlZCI6IHRydWUgfSwgInNoYTUxMi1ld3ZZbGs4NnhVb0dJMHpRUk5xL21DKzE2UjFRZURsS1F5MjFLaTNvU1lYTmdMYjQ1R1YxUDZBME0rL3M2bnlDdU5EcWU1VnBhWTg0QnpYR3dWYndGQT09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaS9AZW1uYXBpL3dhc2ktdGhyZWFkcyI6IFsiQGVtbmFwaS93YXNpLXRocmVhZHNAMS4yLjEiLCAiIiwgeyAiZGVwZW5kZW5jaWVzIjogeyAidHNsaWIiOiAiXjIuNC4wIiB9LCAiYnVuZGxlZCI6IHRydWUgfSwgInNoYTUxMi11VElJN09ZRisvTWVzL01yY0lPWXA1eU90U01MQldTSW9MUHBjZ3dpcG9pS2JsaTZrMzIydGNvRnN4b0lJeFBEcVcwMVNRR0Fna280RXpaaTJCTnYydz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaS9AbmFwaS1ycy93YXNtLXJ1bnRpbWUiOiBbIkBuYXBpLXJzL3dhc20tcnVudGltZUAxLjEuNCIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJAdHlieXMvd2FzbS11dGlsIjogIl4wLjEwLjEiIH0sICJwZWVyRGVwZW5kZW5jaWVzIjogeyAiQGVtbmFwaS9jb3JlIjogIl4xLjcuMSIsICJAZW1uYXBpL3J1bnRpbWUiOiAiXjEuNy4xIiB9LCAiYnVuZGxlZCI6IHRydWUgfSwgInNoYTUxMi0zTlFOTmdBMVlTbEpiL2tNSDFpbGRBU1A5SFc3LzdrWW5SSTJzeldKYW9mYVMxaFdtYkdJNEgrZDMrMjJhR3pYWE45SUorbitHaUZWY0dpcEpQMThvdz09Il0sCgogICAgIkB0YWlsd2luZGNzcy9veGlkZS13YXNtMzItd2FzaS9AdHlieXMvd2FzbS11dGlsIjogWyJAdHlieXMvd2FzbS11dGlsQDAuMTAuMiIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJ0c2xpYiI6ICJeMi40LjAiIH0sICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLVJvQnZKMlgwd3VLbFdGSWpyd2ZmR3cxSXFaSEtRcXpJY2hLYWFkWlpmbk5wc0FZcDJtTTBoMzZKdFBDak5EQUhHZ1llei8xNXVNQnBmR3djaGhpTWdnPT0iXSwKCiAgICAiQHRhaWx3aW5kY3NzL294aWRlLXdhc20zMi13YXNpL3RzbGliIjogWyJ0c2xpYkAyLjguMSIsICIiLCB7ICJidW5kbGVkIjogdHJ1ZSB9LCAic2hhNTEyLW9KRnU5NEhRYitLVmR1U1VRTDd3bnBtcW5mbUxzT0EvbkFoNmI2RUgwd0NFb0swL21QZVhVNmMzd0tEVjgzTWtPdUhQUkh0U1hLS1U5OUlCYXpTLzJ3PT0iXSwKCiAgICAiY2hhbGsvc3VwcG9ydHMtY29sb3IiOiBbInN1cHBvcnRzLWNvbG9yQDcuMi4wIiwgIiIsIHsgImRlcGVuZGVuY2llcyI6IHsgImhhcy1mbGFnIjogIl40LjAuMCIgfSB9LCAic2hhNTEyLXFwQ0F2Umw5c3R1T0h2ZUtzbjdIbmNKUnZ2NTAxcUlhY0t6UWxPLytMd3hjOSswcTJ3THl2NERmdnQ4MC9EUG4ycHFPQnNKZERpb2dYR1I5K092d1J3PT0iXSwKCiAgICAibmV4dC9wb3N0Y3NzIjogWyJwb3N0Y3NzQDguNC4zMSIsICIiLCB7ICJkZXBlbmRlbmNpZXMiOiB7ICJuYW5vaWQiOiAiXjMuMy42IiwgInBpY29jb2xvcnMiOiAiXjEuMC4wIiwgInNvdXJjZS1tYXAtanMiOiAiXjEuMC4yIiB9IH0sICJzaGE1MTItUFMwOElib2lhOW10cy8yeWdWM2VMcFk1Z2huVWNmTFYvRVhUT1cxRTJxWXhKS0dHQlV0TmpONzZGWUhuTXMzNlJtQVJuNDFiQzBBWm1uK3JSME9WcFE9PSJdLAoKICAgICJ2aXRlL2ZzZXZlbnRzIjogWyJmc2V2ZW50c0AyLjMuMyIsICIiLCB7ICJvcyI6ICJkYXJ3aW4iIH0sICJzaGE1MTItNXhvRGZYK2ZMN2ZhQVRuYWdtV1BwYkZ0d2gvUjc3V21NTXFxSEdTNjVDM3Z2QjBZSHJnRitCMVltWjM0NDF0TWo1bjYzazAyMTJYTm9Kd3psaGZmUXc9PSJdLAogIH0KfQo=" }, { "path": "metadata.json", "kind": "text", "content": '{\n "id": "fashion",\n "name": "Fashion",\n "tagline": "Editorial multi-drop fashion storefront with lookbooks and size guides.",\n "industry": "fashion",\n "tags": ["fashion", "apparel", "lookbook"],\n "stability": "stable",\n "schemaType": "Store",\n "mock": {\n "seedName": "fashion",\n "seedBusinessId": "bus_studio_frx"\n }\n}\n' }, { "path": "next.config.ts", "kind": "text", "content": 'import type { NextConfig } from "next";\n\n// Same-origin proxy target for the storefront API. The public key\n// decides: a real `cpk_live_\u2026` / `cpk_test_\u2026` only resolves against\n// hosted Cimplify, so browser cart writes go to the same place the\n// server catalogue reads come from. Anything else (`mock-dev`, empty)\n// falls back to the local `cimplify dev` mock in dev.\nconst publicKey = process.env.NEXT_PUBLIC_CIMPLIFY_PUBLIC_KEY?.trim() ?? "";\nconst keyTargetsHostedCimplify =\n publicKey.startsWith("cpk_live_") || publicKey.startsWith("cpk_test_");\nconst STOREFRONT_URL =\n process.env.NODE_ENV === "production" || keyTargetsHostedCimplify\n ? "https://storefronts.cimplify.io"\n : "http://127.0.0.1:8787";\n\nif (STOREFRONT_URL === "http://127.0.0.1:8787") {\n console.warn(\n "[cimplify] next.config resolved the local storefront API URL; production deploys must run with NODE_ENV=production.",\n );\n}\n\n// Cache Components (\'use cache\' + cacheTag/cacheLife) require Node-specific\n// setTimeout atomicity and serialize a postponed state that routinely exceeds\n// CF Workers\' 128MB zlib limit. We\'re on Cloudflare Workers via opennext, so\n// we stay on Next 16\'s "Previous Model" \u2014 `fetch.next.{revalidate,tags}` via\n// the SDK\'s `cacheOptions`, plus `export const revalidate` per page. See\n// https://nextjs.org/docs/app/guides/caching-without-cache-components.\nconst nextConfig: NextConfig = {\n async redirects() {\n return [\n { source: "/login", destination: "/account", permanent: false },\n { source: "/signup", destination: "/account", permanent: false },\n ];\n },\n async rewrites() {\n return [\n { source: "/api/v1/:path*", destination: `${STOREFRONT_URL}/api/v1/:path*` },\n { source: "/img/:path*", destination: `${STOREFRONT_URL}/img/:path*` },\n { source: "/elements/:path*", destination: `${STOREFRONT_URL}/elements/:path*` },\n { source: "/_mock/:path*", destination: `${STOREFRONT_URL}/_mock/:path*` },\n ];\n },\n images: {\n loader: "custom",\n loaderFile: "./lib/cimplify-loader.ts",\n remotePatterns: [\n { protocol: "http", hostname: "127.0.0.1", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "8787", pathname: "/img/**" },\n { protocol: "http", hostname: "localhost", port: "3000", pathname: "/img/**" },\n { protocol: "https", hostname: "loremflickr.com", pathname: "/**" },\n { protocol: "https", hostname: "images.unsplash.com", pathname: "/**" },\n { protocol: "https", hostname: "static-tmp.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "storefrontassetscdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "cdn.cimplify.io", pathname: "/**" },\n { protocol: "https", hostname: "res.cloudinary.com", pathname: "/cimplify/**" },\n ],\n },\n};\n\nexport default nextConfig;\n' }, { "path": "CLAUDE.md", "kind": "text", "content": "# CLAUDE.md\n\nThis project was scaffolded from a Cimplify storefront template (`cimplify init`).\n\n## Read these first\n\n- **`AGENTS.md`** at the project root \u2014 the file \u2194 `brand.X` field map for *this template's* industry, plus the architectural rules.\n- **`.claude/skills/cimplify-storefront/SKILL.md`** \u2014 the playbook for common tasks (rebrand, add a section, wire a Server Action, deploy, eject a component). Invoke it whenever you're asked to change content, palette, copy, or routing.\n\n## The two-line summary\n\n1. **Edit `lib/brand.ts`** for any visible string.\n2. **Edit `app/globals.css` `@theme` block** for any palette / radius / font change.\n\nThat covers ~95% of what merchants ask for. For anything else, follow the `cimplify-storefront` skill.\n\n## Don't do\n\n- Hardcode strings in pages or components.\n- Enable `cacheComponents: true` in `next.config.ts` \u2014 we're on Cloudflare Workers, where `'use cache'` postponed state blows past CF's 128MB zlib limit. This template stays on Next 16's \"Previous Model\" (ISR): `export const revalidate` per page + `cacheOptions: { revalidate, tags }` on SDK reads.\n- Add `'use cache'`, `cacheTag`, or `cacheLife` anywhere. Use the SDK's `cacheOptions` instead.\n- Use `unstable_cache` \u2014 it's gone in Next 16. Use SDK `cacheOptions` or `fetch.next.{revalidate,tags}`.\n- Run `bun test` (Bun's `vi` shim is incomplete) \u2014 use `bun run test:run`.\n" }, { "path": "app/about/page.tsx", "kind": "text", "content": 'import type { Metadata } from "next";\nimport { brand } from "@/lib/brand";\n\nexport const metadata: Metadata = {\n title: `About \u2014 ${brand.name}`,\n description: brand.description,\n};\n\nexport default function AboutPage() {\n const a = brand.about;\n // Title supports a single \\n for a hard line break.\n const titleParts = a.title.split("\\n");\n return (\n <article className="max-w-3xl mx-auto px-6 sm:px-8 py-16">\n <p className="text-[11px] font-mono uppercase tracking-[0.16em] text-primary mb-2">\n {a.eyebrow}\n </p>\n <h1 className="text-[clamp(2.25rem,5vw,3.5rem)] font-bold mb-6 -tracking-[0.025em] leading-tight">\n {titleParts.map((line, i) => (\n <span key={i}>\n {line}\n {i < titleParts.length - 1 && <br />}\n </span>\n ))}\n </h1>\n <div className="prose prose-lg max-w-none space-y-5 text-foreground/90 leading-relaxed">\n {a.paragraphs.map((p, i) => (\n <p key={i}>{p}</p>\n ))}\n {a.sections.map((s) => (\n <div key={s.heading}>\n <h2 className="text-2xl font-semibold mt-10 mb-3 -tracking-[0.02em]">\n {s.heading}\n </h2>\n <p>{s.body}</p>\n </div>\n ))}\n </div>\n </article>\n );\n}\n' }, { "path": "app/llms.txt/route.ts", "kind": "text", "content": 'import { getServerClient, tags, type Product } from "@cimplify/sdk/server";\nimport { brand } from "@/lib/brand";\nimport { getSiteUrl } from "@/lib/site-url";\n\nexport const revalidate = 3600;\n\nasync function buildLlmsTxt(SITE_URL: string): Promise<string> {\n const client = getServerClient();\n const [productsRes, categoriesRes, collectionsRes] = await Promise.all([\n client.catalogue.getProducts(\n { limit: 500 },\n { cacheOptions: { revalidate: 3600, tags: [tags.products()] } },\n ),\n client.catalogue.getCategories({\n cacheOptions: { revalidate: 3600, tags: [tags.categories()] },\n }),\n client.catalogue.getCollections({\n cacheOptions: { revalidate: 3600, tags: [tags.collections()] },\n }),\n ]);\n\n const products: Product[] = productsRes.ok ? productsRes.value.items : [];\n const categories = categoriesRes.ok ? categoriesRes.value : [];\n const collections = collectionsRes.ok ? collectionsRes.value : [];\n\n const lines: string[] = [];\n lines.push(`# ${brand.name}`);\n lines.push("");\n lines.push(`> ${brand.llms.summary}`);\n lines.push("");\n lines.push("## Browse");\n lines.push(`- [Home](${SITE_URL}/)`);\n lines.push(`- [Shop](${SITE_URL}/shop): Full catalogue with filter and sort.`);\n\n if (categories.length > 0) {\n lines.push("");\n lines.push("## Categories");\n for (const c of categories) {\n lines.push(\n `- [${c.name}](${SITE_URL}/categories/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (collections.length > 0) {\n lines.push("");\n lines.push("## Collections");\n for (const c of collections) {\n lines.push(\n `- [${c.name}](${SITE_URL}/collections/${c.slug})${c.description ? `: ${c.description}` : ""}`,\n );\n }\n }\n\n if (products.length > 0) {\n lines.push("");\n lines.push("## Products");\n for (const p of products) {\n const slug = p.slug ?? p.id;\n const price = `${brand.currency} ${p.default_price}`;\n const desc = p.description ? ` \u2014 ${p.description.replace(/\\s+/g, " ").slice(0, 200)}` : "";\n lines.push(`- [${p.name}](${SITE_URL}/products/${slug}) (${price})${desc}`);\n }\n }\n\n lines.push("");\n lines.push("## Information");\n lines.push(`- [About](${SITE_URL}/about)`);\n lines.push(`- [Support / FAQ](${SITE_URL}/faq)`);\n lines.push(`- [Terms of Service](${SITE_URL}/terms)`);\n lines.push(`- [Privacy Policy](${SITE_URL}/privacy)`);\n lines.push(`- [Sitemap (XML)](${SITE_URL}/sitemap.xml)`);\n lines.push("");\n lines.push("## Contact");\n lines.push(`- Email: ${brand.contact.email}`);\n lines.push(`- Phone: ${brand.contact.phone}`);\n lines.push(`- Address: ${brand.contact.address}`);\n\n return lines.join("\\n") + "\\n";\n}\n\n/**\n * `/llms.txt` \u2014 machine-readable site index for LLMs (per llmstxt.org).\n * Lets coding agents and chat assistants find products, categories, and\n * support pages without scraping HTML. Plain Markdown so it streams cheaply\n * into context windows.\n */\nexport async function GET(): Promise<Response> {\n const body = await buildLlmsTxt(await getSiteUrl());\n return new Response(body, {\n headers: {\n "Content-Type": "text/plain; charset=utf-8",\n "Cache-Control": "public, max-age=0, s-maxage=3600, stale-while-revalidate=86400",\n },\n });\n}\n' }, { "path": "app/contact/contact-form.tsx", "kind": "text", "content": `"use client";
|
|
5932
6244
|
|
|
5933
6245
|
import { useState } from "react";
|
|
5934
6246
|
|