diff --git a/bundles.yaml b/bundles.yaml index fe7eed55..7cca9d06 100644 --- a/bundles.yaml +++ b/bundles.yaml @@ -250,6 +250,8 @@ images: version: 4.8.8 - image: registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9bb2d3ff2a97d0c3234e4864fc2d21ff278ce06e725e43c56f43e42bed97dd19 version: 4.8.9 + - image: quay.io/rhacs-eng/release-operator-bundle@sha256:89c8467f3c6a8fa6f45c128d1b90dfc7322fb2ec49f8c93c0ba13e5870d132d3 + version: 4.8.10-rc.2 - image: registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:02a50a53dddbbdd749b0b6cc01f555308ab3c16045130d07483bfddd6861de42 version: 4.9.0 - image: registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9312c096fef02f70b642551338fdf968ec6657ff0385f51c13767d8b29afc76d @@ -260,5 +262,7 @@ images: version: 4.9.3 - image: registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e8e09e694e526ddae4ead8c2a40e961bc434a7a6678286e03fb100663f11fc8e version: 4.9.4 + - image: quay.io/rhacs-eng/release-operator-bundle@sha256:72929bde24e023c16c77a58dc16482c6e1d73aeb8449de042c494b962855ca83 + version: 4.9.5-rc.2 - image: registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:1b1480e72310d6ec17c4dd4368214cd940a4da230b13304f4621c5ae560f9e9e version: 4.10.0 diff --git a/catalog-bundle-object/rhacs-operator/catalog.json b/catalog-bundle-object/rhacs-operator/catalog.json index 460f0bdf..b0ad67c8 100644 --- a/catalog-bundle-object/rhacs-operator/catalog.json +++ b/catalog-bundle-object/rhacs-operator/catalog.json @@ -1998,8 +1998,13 @@ "skipRange": ">= 4.7.0 < 4.8.9" }, { - "name": "rhacs-operator.v4.9.0", + "name": "rhacs-operator.v4.8.10-rc.2", "replaces": "rhacs-operator.v4.8.9", + "skipRange": ">= 4.7.0 < 4.8.10-rc.2" + }, + { + "name": "rhacs-operator.v4.9.0", + "replaces": "rhacs-operator.v4.8.10-rc.2", "skipRange": ">= 4.8.0 < 4.9.0" }, { @@ -2023,8 +2028,13 @@ "skipRange": ">= 4.8.0 < 4.9.4" }, { - "name": "rhacs-operator.v4.10.0", + "name": "rhacs-operator.v4.9.5-rc.2", "replaces": "rhacs-operator.v4.9.4", + "skipRange": ">= 4.8.0 < 4.9.5-rc.2" + }, + { + "name": "rhacs-operator.v4.10.0", + "replaces": "rhacs-operator.v4.9.5-rc.2", "skipRange": ">= 4.9.0 < 4.10.0" } ] @@ -3743,6 +3753,11 @@ "name": "rhacs-operator.v4.8.9", "replaces": "rhacs-operator.v4.8.8", "skipRange": ">= 4.7.0 < 4.8.9" + }, + { + "name": "rhacs-operator.v4.8.10-rc.2", + "replaces": "rhacs-operator.v4.8.9", + "skipRange": ">= 4.7.0 < 4.8.10-rc.2" } ] } @@ -4141,8 +4156,13 @@ "skipRange": ">= 4.7.0 < 4.8.9" }, { - "name": "rhacs-operator.v4.9.0", + "name": "rhacs-operator.v4.8.10-rc.2", "replaces": "rhacs-operator.v4.8.9", + "skipRange": ">= 4.7.0 < 4.8.10-rc.2" + }, + { + "name": "rhacs-operator.v4.9.0", + "replaces": "rhacs-operator.v4.8.10-rc.2", "skipRange": ">= 4.8.0 < 4.9.0" }, { @@ -4164,6 +4184,11 @@ "name": "rhacs-operator.v4.9.4", "replaces": "rhacs-operator.v4.9.3", "skipRange": ">= 4.8.0 < 4.9.4" + }, + { + "name": "rhacs-operator.v4.9.5-rc.2", + "replaces": "rhacs-operator.v4.9.4", + "skipRange": ">= 4.8.0 < 4.9.5-rc.2" } ] } @@ -4562,8 +4587,13 @@ "skipRange": ">= 4.7.0 < 4.8.9" }, { - "name": "rhacs-operator.v4.9.0", + "name": "rhacs-operator.v4.8.10-rc.2", "replaces": "rhacs-operator.v4.8.9", + "skipRange": ">= 4.7.0 < 4.8.10-rc.2" + }, + { + "name": "rhacs-operator.v4.9.0", + "replaces": "rhacs-operator.v4.8.10-rc.2", "skipRange": ">= 4.8.0 < 4.9.0" }, { @@ -4587,8 +4617,13 @@ "skipRange": ">= 4.8.0 < 4.9.4" }, { - "name": "rhacs-operator.v4.10.0", + "name": "rhacs-operator.v4.9.5-rc.2", "replaces": "rhacs-operator.v4.9.4", + "skipRange": ">= 4.8.0 < 4.9.5-rc.2" + }, + { + "name": "rhacs-operator.v4.10.0", + "replaces": "rhacs-operator.v4.9.5-rc.2", "skipRange": ">= 4.9.0 < 4.10.0" } ] @@ -19396,6 +19431,131 @@ } ] } +{ + "schema": "olm.bundle", + "name": "rhacs-operator.v4.8.10-rc.2", + "package": "rhacs-operator", + "image": "quay.io/rhacs-eng/release-operator-bundle@sha256:89c8467f3c6a8fa6f45c128d1b90dfc7322fb2ec49f8c93c0ba13e5870d132d3", + "properties": [ + { + "type": "olm.gvk", + "value": { + "group": "config.stackrox.io", + "kind": "SecurityPolicy", + "version": "v1alpha1" + } + }, + { + "type": "olm.gvk", + "value": { + "group": "platform.stackrox.io", + "kind": "Central", + "version": "v1alpha1" + } + }, + { + "type": "olm.gvk", + "value": { + "group": "platform.stackrox.io", + "kind": "SecuredCluster", + "version": "v1alpha1" + } + }, + { + "type": "olm.package", + "value": { + "packageName": "rhacs-operator", + "version": "4.8.10-rc.2" + } + }, + { + "type": "olm.bundle.object", + "value": { + "data": "eyJhcGlWZXJzaW9uIjoiYXBpZXh0ZW5zaW9ucy5rOHMuaW8vdjEiLCJraW5kIjoiQ3VzdG9tUmVzb3VyY2VEZWZpbml0aW9uIiwibWV0YWRhdGEiOnsiYW5ub3RhdGlvbnMiOnsiY29udHJvbGxlci1nZW4ua3ViZWJ1aWxkZXIuaW8vdmVyc2lvbiI6InYwLjE2LjUifSwiY3JlYXRpb25UaW1lc3RhbXAiOm51bGwsIm5hbWUiOiJjZW50cmFscy5wbGF0Zm9ybS5zdGFja3JveC5pbyJ9LCJzcGVjIjp7Imdyb3VwIjoicGxhdGZvcm0uc3RhY2tyb3guaW8iLCJuYW1lcyI6eyJraW5kIjoiQ2VudHJhbCIsImxpc3RLaW5kIjoiQ2VudHJhbExpc3QiLCJwbHVyYWwiOiJjZW50cmFscyIsInNpbmd1bGFyIjoiY2VudHJhbCJ9LCJzY29wZSI6Ik5hbWVzcGFjZWQiLCJ2ZXJzaW9ucyI6W3sibmFtZSI6InYxYWxwaGExIiwic2NoZW1hIjp7Im9wZW5BUElWM1NjaGVtYSI6eyJkZXNjcmlwdGlvbiI6IkNlbnRyYWwgaXMgdGhlIGNvbmZpZ3VyYXRpb24gdGVtcGxhdGUgZm9yIHRoZSBjZW50cmFsIHNlcnZpY2VzLiBUaGlzIGluY2x1ZGVzIHRoZSBBUEkgc2VydmVyLCBwZXJzaXN0ZW50IHN0b3JhZ2UsXG5hbmQgdGhlIHdlYiBVSSwgYXMgd2VsbCBhcyB0aGUgaW1hZ2Ugc2Nhbm5lci4iLCJwcm9wZXJ0aWVzIjp7ImFwaVZlcnNpb24iOnsiZGVzY3JpcHRpb24iOiJBUElWZXJzaW9uIGRlZmluZXMgdGhlIHZlcnNpb25lZCBzY2hlbWEgb2YgdGhpcyByZXByZXNlbnRhdGlvbiBvZiBhbiBvYmplY3QuXG5TZXJ2ZXJzIHNob3VsZCBjb252ZXJ0IHJlY29nbml6ZWQgc2NoZW1hcyB0byB0aGUgbGF0ZXN0IGludGVybmFsIHZhbHVlLCBhbmRcbm1heSByZWplY3QgdW5yZWNvZ25pemVkIHZhbHVlcy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9naXQuazhzLmlvL2NvbW11bml0eS9jb250cmlidXRvcnMvZGV2ZWwvc2lnLWFyY2hpdGVjdHVyZS9hcGktY29udmVudGlvbnMubWQjcmVzb3VyY2VzIiwidHlwZSI6InN0cmluZyJ9LCJraW5kIjp7ImRlc2NyaXB0aW9uIjoiS2luZCBpcyBhIHN0cmluZyB2YWx1ZSByZXByZXNlbnRpbmcgdGhlIFJFU1QgcmVzb3VyY2UgdGhpcyBvYmplY3QgcmVwcmVzZW50cy5cblNlcnZlcnMgbWF5IGluZmVyIHRoaXMgZnJvbSB0aGUgZW5kcG9pbnQgdGhlIGNsaWVudCBzdWJtaXRzIHJlcXVlc3RzIHRvLlxuQ2Fubm90IGJlIHVwZGF0ZWQuXG5JbiBDYW1lbENhc2UuXG5Nb3JlIGluZm86IGh0dHBzOi8vZ2l0Lms4cy5pby9jb21tdW5pdHkvY29udHJpYnV0b3JzL2RldmVsL3NpZy1hcmNoaXRlY3R1cmUvYXBpLWNvbnZlbnRpb25zLm1kI3R5cGVzLWtpbmRzIiwidHlwZSI6InN0cmluZyJ9LCJtZXRhZGF0YSI6eyJ0eXBlIjoib2JqZWN0In0sInNwZWMiOnsiZGVzY3JpcHRpb24iOiJDZW50cmFsU3BlYyBkZWZpbmVzIHRoZSBkZXNpcmVkIHN0YXRlIG9mIENlbnRyYWwiLCJwcm9wZXJ0aWVzIjp7ImNlbnRyYWwiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIENlbnRyYWwgY29tcG9uZW50LCB3aGljaCBpcyByZXNwb25zaWJsZSBmb3IgYWxsIHVzZXIgaW50ZXJhY3Rpb24uIiwicHJvcGVydGllcyI6eyJhZG1pblBhc3N3b3JkR2VuZXJhdGlvbkRpc2FibGVkIjp7ImRlc2NyaXB0aW9uIjoiRGlzYWJsZSBhZG1pbiBwYXNzd29yZCBnZW5lcmF0aW9uLiBEbyBub3QgdXNlIHRoaXMgZm9yIGZpcnN0LXRpbWUgaW5zdGFsbGF0aW9ucyxcbmFzIHlvdSB3aWxsIGhhdmUgbm8gd2F5IHRvIHBlcmZvcm0gaW5pdGlhbCBzZXR1cCBhbmQgY29uZmlndXJhdGlvbiBvZiBhbHRlcm5hdGl2ZSBhdXRoZW50aWNhdGlvbiBtZXRob2RzLiIsInR5cGUiOiJib29sZWFuIn0sImFkbWluUGFzc3dvcmRTZWNyZXQiOnsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IGEgc2VjcmV0IHRoYXQgY29udGFpbnMgdGhlIGFkbWluaXN0cmF0b3IgcGFzc3dvcmQgaW4gdGhlIFwicGFzc3dvcmRcIiBkYXRhIGl0ZW0uXG5JZiBvbWl0dGVkLCB0aGUgb3BlcmF0b3Igd2lsbCBhdXRvLWdlbmVyYXRlIGEgcGFzc3dvcmQgYW5kIHN0b3JlIGl0IGluIHRoZSBcInBhc3N3b3JkXCIgaXRlbVxuaW4gdGhlIFwiY2VudHJhbC1odHBhc3N3ZFwiIHNlY3JldC4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgcmVmZXJlbmNlZCBzZWNyZXQuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sImRiIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIENlbnRyYWwgREIsIHdoaWNoIGlzIHJlc3BvbnNpYmxlIGZvciBkYXRhIHBlcnNpc3RlbmNlLiIsInByb3BlcnRpZXMiOnsiY29uZmlnT3ZlcnJpZGUiOnsiZGVzY3JpcHRpb24iOiJDb25maWcgbWFwIGNvbnRhaW5pbmcgcG9zdGdyZXNxbC5jb25mIGFuZCBwZ19oYmEuY29uZiB0aGF0IHdpbGwgYmUgdXNlZCBpZiBtb2RpZmljYXRpb25zIG5lZWQgdG8gYmUgYXBwbGllZC4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgcmVmZXJlbmNlZCBjb25maWcgbWFwLiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJjb25uZWN0aW9uUG9vbFNpemUiOnsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIHRoZSBkYXRhYmFzZSBjb25uZWN0aW9uIHBvb2wgc2l6ZS4iLCJwcm9wZXJ0aWVzIjp7Im1heENvbm5lY3Rpb25zIjp7ImRlZmF1bHQiOjkwLCJkZXNjcmlwdGlvbiI6Ik1heGltdW0gbnVtYmVyIG9mIGNvbm5lY3Rpb25zIGluIHRoZSBjb25uZWN0aW9uIHBvb2wuIiwiZm9ybWF0IjoiaW50MzIiLCJtaW5pbXVtIjoxLCJ0eXBlIjoiaW50ZWdlciJ9LCJtaW5Db25uZWN0aW9ucyI6eyJkZWZhdWx0IjoxMCwiZGVzY3JpcHRpb24iOiJNaW5pbXVtIG51bWJlciBvZiBjb25uZWN0aW9ucyBpbiB0aGUgY29ubmVjdGlvbiBwb29sLiIsImZvcm1hdCI6ImludDMyIiwibWluaW11bSI6MSwidHlwZSI6ImludGVnZXIifX0sInJlcXVpcmVkIjpbIm1heENvbm5lY3Rpb25zIiwibWluQ29ubmVjdGlvbnMiXSwidHlwZSI6Im9iamVjdCJ9LCJjb25uZWN0aW9uU3RyaW5nIjp7ImRlc2NyaXB0aW9uIjoiU3BlY2lmeSBhIGNvbm5lY3Rpb24gc3RyaW5nIHRoYXQgY29ycmVzcG9uZHMgdG8gYSBkYXRhYmFzZSBtYW5hZ2VkIGVsc2V3aGVyZS4gSWYgc2V0LCB0aGUgb3BlcmF0b3Igd2lsbCBub3QgbWFuYWdlIHRoZSBDZW50cmFsIERCLlxuV2hlbiB1c2luZyB0aGlzIG9wdGlvbiwgeW91IG11c3QgZXhwbGljaXRseSBzZXQgYSBwYXNzd29yZCBzZWNyZXQ7IGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGluZyBhIHBhc3N3b3JkIHdpbGwgbm90XG5iZSBzdXBwb3J0ZWQuIiwidHlwZSI6InN0cmluZyJ9LCJob3N0QWxpYXNlcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzIGhvbGRzIHRoZSBtYXBwaW5nIGJldHdlZW4gSVAgYW5kIGhvc3RuYW1lcyB0aGF0IHdpbGwgYmUgaW5qZWN0ZWQgYXMgYW4gZW50cnkgaW4gdGhlXG5wb2QncyBob3N0cyBmaWxlLiIsInByb3BlcnRpZXMiOnsiaG9zdG5hbWVzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdG5hbWVzIGZvciB0aGUgYWJvdmUgSVAgYWRkcmVzcy4iLCJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJhdG9taWMifSwiaXAiOnsiZGVzY3JpcHRpb24iOiJJUCBhZGRyZXNzIG9mIHRoZSBob3N0IGZpbGUgZW50cnkuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiaXAiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwiaXNFbmFibGVkIjp7ImRlZmF1bHQiOiJEZWZhdWx0IiwiZGVzY3JpcHRpb24iOiJEZXByZWNhdGVkIGZpZWxkLiBJdCBpcyBubyBsb25nZXIgbmVjZXNzYXJ5IHRvIHNwZWNpZnkgaXQuXG5UaGlzIGZpZWxkIHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLlxuQ2VudHJhbCBpcyBjb25maWd1cmVkIHRvIHVzZSBQb3N0Z3JlU1FMIGJ5IGRlZmF1bHQuIiwiZW51bSI6WyJEZWZhdWx0IiwiRW5hYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn0sIm5vZGVTZWxlY3RvciI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJ0eXBlIjoic3RyaW5nIn0sImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIGEgbm9kZSBzZWxlY3RvciBoZXJlLiIsInR5cGUiOiJvYmplY3QifSwicGFzc3dvcmRTZWNyZXQiOnsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IGEgc2VjcmV0IHRoYXQgY29udGFpbnMgdGhlIHBhc3N3b3JkIGluIHRoZSBcInBhc3N3b3JkXCIgZGF0YSBpdGVtLiBUaGlzIGNhbiBvbmx5IGJlIHVzZWQgd2hlblxuc3BlY2lmeWluZyBhIGNvbm5lY3Rpb24gc3RyaW5nIG1hbnVhbGx5LlxuV2hlbiBvbWl0dGVkLCB0aGUgb3BlcmF0b3Igd2lsbCBhdXRvLWdlbmVyYXRlIGEgREIgcGFzc3dvcmQgYW5kIHN0b3JlIGl0IGluIHRoZSBcInBhc3N3b3JkXCIgaXRlbVxuaW4gdGhlIFwiY2VudHJhbC1kYi1wYXNzd29yZFwiIHNlY3JldC4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgcmVmZXJlbmNlZCBzZWNyZXQuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInBlcnNpc3RlbmNlIjp7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyBob3cgQ2VudHJhbCBEQiBzaG91bGQgc3RvcmUgaXRzIHBlcnNpc3RlbnQgZGF0YS4gWW91IGNhbiBjaG9vc2UgYmV0d2VlbiB1c2luZyBhIHBlcnNpc3RlbnRcbnZvbHVtZSBjbGFpbSAocmVjb21tZW5kZWQgZGVmYXVsdCksIGFuZCBhIGhvc3QgcGF0aC4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RQYXRoIjp7ImRlc2NyaXB0aW9uIjoiU3RvcmVzIHBlcnNpc3RlbnQgZGF0YSBvbiBhIGRpcmVjdG9yeSBvbiB0aGUgaG9zdC4gVGhpcyBpcyBub3QgcmVjb21tZW5kZWQsIGFuZCBzaG91bGQgb25seVxuYmUgdXNlZCB0b2dldGhlciB3aXRoIGEgbm9kZSBzZWxlY3RvciAob25seSBhdmFpbGFibGUgaW4gWUFNTCB2aWV3KS4iLCJwcm9wZXJ0aWVzIjp7InBhdGgiOnsiZGVzY3JpcHRpb24iOiJUaGUgcGF0aCBvbiB0aGUgaG9zdCBydW5uaW5nIENlbnRyYWwuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJwZXJzaXN0ZW50Vm9sdW1lQ2xhaW0iOnsiZGVzY3JpcHRpb24iOiJVc2VzIGEgS3ViZXJuZXRlcyBwZXJzaXN0ZW50IHZvbHVtZSBjbGFpbSAoUFZDKSB0byBtYW5hZ2UgdGhlIHN0b3JhZ2UgbG9jYXRpb24gb2YgcGVyc2lzdGVudCBkYXRhLlxuUmVjb21tZW5kZWQgZm9yIG1vc3QgdXNlcnMuIiwicHJvcGVydGllcyI6eyJjbGFpbU5hbWUiOnsiZGVmYXVsdCI6ImNlbnRyYWwtZGIiLCJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSBQVkMgdG8gbWFuYWdlIHBlcnNpc3RlbnQgZGF0YS4gSWYgbm8gUFZDIHdpdGggdGhlIGdpdmVuIG5hbWUgZXhpc3RzLCBpdCB3aWxsIGJlXG5jcmVhdGVkLiBEZWZhdWx0cyB0byBcImNlbnRyYWwtZGJcIiBpZiBub3Qgc2V0LiIsInR5cGUiOiJzdHJpbmcifSwic2l6ZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBzaXplIG9mIHRoZSBwZXJzaXN0ZW50IHZvbHVtZSB3aGVuIGNyZWF0ZWQgdGhyb3VnaCB0aGUgY2xhaW0uIElmIGEgY2xhaW0gd2FzIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCxcbnRoaXMgY2FuIGJlIHVzZWQgYWZ0ZXIgdGhlIGluaXRpYWwgZGVwbG95bWVudCB0byByZXNpemUgKGdyb3cpIHRoZSB2b2x1bWUgKG9ubHkgc3VwcG9ydGVkIGJ5IHNvbWVcbnN0b3JhZ2UgY2xhc3MgY29udHJvbGxlcnMpLiIsInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsInR5cGUiOiJzdHJpbmcifSwic3RvcmFnZUNsYXNzTmFtZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSBzdG9yYWdlIGNsYXNzIHRvIHVzZSBmb3IgdGhlIFBWQy4gSWYgeW91ciBjbHVzdGVyIGlzIG5vdCBjb25maWd1cmVkIHdpdGggYSBkZWZhdWx0IHN0b3JhZ2VcbmNsYXNzLCB5b3UgbXVzdCBzZWxlY3QgYSB2YWx1ZSBoZXJlLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwicmVzb3VyY2VzIjp7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJwcm9wZXJ0aWVzIjp7ImNsYWltcyI6eyJkZXNjcmlwdGlvbiI6IkNsYWltcyBsaXN0cyB0aGUgbmFtZXMgb2YgcmVzb3VyY2VzLCBkZWZpbmVkIGluIHNwZWMucmVzb3VyY2VDbGFpbXMsXG50aGF0IGFyZSB1c2VkIGJ5IHRoaXMgY29udGFpbmVyLlxuXG5UaGlzIGZpZWxkIGRlcGVuZHMgb24gdGhlXG5EeW5hbWljUmVzb3VyY2VBbGxvY2F0aW9uIGZlYXR1cmUgZ2F0ZS5cblxuVGhpcyBmaWVsZCBpcyBpbW11dGFibGUuIEl0IGNhbiBvbmx5IGJlIHNldCBmb3IgY29udGFpbmVycy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlQ2xhaW0gcmVmZXJlbmNlcyBvbmUgZW50cnkgaW4gUG9kU3BlYy5SZXNvdXJjZUNsYWltcy4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJOYW1lIG11c3QgbWF0Y2ggdGhlIG5hbWUgb2Ygb25lIGVudHJ5IGluIHBvZC5zcGVjLnJlc291cmNlQ2xhaW1zIG9mXG50aGUgUG9kIHdoZXJlIHRoaXMgZmllbGQgaXMgdXNlZC4gSXQgbWFrZXMgdGhhdCByZXNvdXJjZSBhdmFpbGFibGVcbmluc2lkZSBhIGNvbnRhaW5lci4iLCJ0eXBlIjoic3RyaW5nIn0sInJlcXVlc3QiOnsiZGVzY3JpcHRpb24iOiJSZXF1ZXN0IGlzIHRoZSBuYW1lIGNob3NlbiBmb3IgYSByZXF1ZXN0IGluIHRoZSByZWZlcmVuY2VkIGNsYWltLlxuSWYgZW1wdHksIGV2ZXJ5dGhpbmcgZnJvbSB0aGUgY2xhaW0gaXMgbWFkZSBhdmFpbGFibGUsIG90aGVyd2lzZVxub25seSB0aGUgcmVzdWx0IG9mIHRoaXMgcmVxdWVzdC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtbWFwLWtleXMiOlsibmFtZSJdLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoibWFwIn0sImxpbWl0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJMaW1pdHMgZGVzY3JpYmVzIHRoZSBtYXhpbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyBhbGxvd2VkLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In0sInJlcXVlc3RzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IlJlcXVlc3RzIGRlc2NyaWJlcyB0aGUgbWluaW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgcmVxdWlyZWQuXG5JZiBSZXF1ZXN0cyBpcyBvbWl0dGVkIGZvciBhIGNvbnRhaW5lciwgaXQgZGVmYXVsdHMgdG8gTGltaXRzIGlmIHRoYXQgaXMgZXhwbGljaXRseSBzcGVjaWZpZWQsXG5vdGhlcndpc2UgdG8gYW4gaW1wbGVtZW50YXRpb24tZGVmaW5lZCB2YWx1ZS4gUmVxdWVzdHMgY2Fubm90IGV4Y2VlZCBMaW1pdHMuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwidG9sZXJhdGlvbnMiOnsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwb2QgdGhpcyBUb2xlcmF0aW9uIGlzIGF0dGFjaGVkIHRvIHRvbGVyYXRlcyBhbnkgdGFpbnQgdGhhdCBtYXRjaGVzXG50aGUgdHJpcGxlIFx1MDAzY2tleSx2YWx1ZSxlZmZlY3RcdTAwM2UgdXNpbmcgdGhlIG1hdGNoaW5nIG9wZXJhdG9yIFx1MDAzY29wZXJhdG9yXHUwMDNlLiIsInByb3BlcnRpZXMiOnsiZWZmZWN0Ijp7ImRlc2NyaXB0aW9uIjoiRWZmZWN0IGluZGljYXRlcyB0aGUgdGFpbnQgZWZmZWN0IHRvIG1hdGNoLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQgZWZmZWN0cy5cbldoZW4gc3BlY2lmaWVkLCBhbGxvd2VkIHZhbHVlcyBhcmUgTm9TY2hlZHVsZSwgUHJlZmVyTm9TY2hlZHVsZSBhbmQgTm9FeGVjdXRlLiIsInR5cGUiOiJzdHJpbmcifSwia2V5Ijp7ImRlc2NyaXB0aW9uIjoiS2V5IGlzIHRoZSB0YWludCBrZXkgdGhhdCB0aGUgdG9sZXJhdGlvbiBhcHBsaWVzIHRvLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQga2V5cy5cbklmIHRoZSBrZXkgaXMgZW1wdHksIG9wZXJhdG9yIG11c3QgYmUgRXhpc3RzOyB0aGlzIGNvbWJpbmF0aW9uIG1lYW5zIHRvIG1hdGNoIGFsbCB2YWx1ZXMgYW5kIGFsbCBrZXlzLiIsInR5cGUiOiJzdHJpbmcifSwib3BlcmF0b3IiOnsiZGVzY3JpcHRpb24iOiJPcGVyYXRvciByZXByZXNlbnRzIGEga2V5J3MgcmVsYXRpb25zaGlwIHRvIHRoZSB2YWx1ZS5cblZhbGlkIG9wZXJhdG9ycyBhcmUgRXhpc3RzIGFuZCBFcXVhbC4gRGVmYXVsdHMgdG8gRXF1YWwuXG5FeGlzdHMgaXMgZXF1aXZhbGVudCB0byB3aWxkY2FyZCBmb3IgdmFsdWUsIHNvIHRoYXQgYSBwb2QgY2FuXG50b2xlcmF0ZSBhbGwgdGFpbnRzIG9mIGEgcGFydGljdWxhciBjYXRlZ29yeS4iLCJ0eXBlIjoic3RyaW5nIn0sInRvbGVyYXRpb25TZWNvbmRzIjp7ImRlc2NyaXB0aW9uIjoiVG9sZXJhdGlvblNlY29uZHMgcmVwcmVzZW50cyB0aGUgcGVyaW9kIG9mIHRpbWUgdGhlIHRvbGVyYXRpb24gKHdoaWNoIG11c3QgYmVcbm9mIGVmZmVjdCBOb0V4ZWN1dGUsIG90aGVyd2lzZSB0aGlzIGZpZWxkIGlzIGlnbm9yZWQpIHRvbGVyYXRlcyB0aGUgdGFpbnQuIEJ5IGRlZmF1bHQsXG5pdCBpcyBub3Qgc2V0LCB3aGljaCBtZWFucyB0b2xlcmF0ZSB0aGUgdGFpbnQgZm9yZXZlciAoZG8gbm90IGV2aWN0KS4gWmVybyBhbmRcbm5lZ2F0aXZlIHZhbHVlcyB3aWxsIGJlIHRyZWF0ZWQgYXMgMCAoZXZpY3QgaW1tZWRpYXRlbHkpIGJ5IHRoZSBzeXN0ZW0uIiwiZm9ybWF0IjoiaW50NjQiLCJ0eXBlIjoiaW50ZWdlciJ9LCJ2YWx1ZSI6eyJkZXNjcmlwdGlvbiI6IlZhbHVlIGlzIHRoZSB0YWludCB2YWx1ZSB0aGUgdG9sZXJhdGlvbiBtYXRjaGVzIHRvLlxuSWYgdGhlIG9wZXJhdG9yIGlzIEV4aXN0cywgdGhlIHZhbHVlIHNob3VsZCBiZSBlbXB0eSwgb3RoZXJ3aXNlIGp1c3QgYSByZWd1bGFyIHN0cmluZy4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9fSwidHlwZSI6Im9iamVjdCJ9LCJkZWNsYXJhdGl2ZUNvbmZpZ3VyYXRpb24iOnsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIHJlc291cmNlcyB3aXRoaW4gQ2VudHJhbCBpbiBhIGRlY2xhcmF0aXZlIG1hbm5lci4iLCJwcm9wZXJ0aWVzIjp7ImNvbmZpZ01hcHMiOnsiZGVzY3JpcHRpb24iOiJMaXN0IG9mIGNvbmZpZyBtYXBzIGNvbnRhaW5pbmcgZGVjbGFyYXRpdmUgY29uZmlndXJhdGlvbi4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IkxvY2FsQ29uZmlnTWFwUmVmZXJlbmNlIGlzIGEgcmVmZXJlbmNlIHRvIGEgY29uZmlnIG1hcCB3aXRoaW4gdGhlIHNhbWUgbmFtZXNwYWNlLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSByZWZlcmVuY2VkIGNvbmZpZyBtYXAuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJzZWNyZXRzIjp7ImRlc2NyaXB0aW9uIjoiTGlzdCBvZiBzZWNyZXRzIGNvbnRhaW5pbmcgZGVjbGFyYXRpdmUgY29uZmlndXJhdGlvbi4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IkxvY2FsU2VjcmV0UmVmZXJlbmNlIGlzIGEgcmVmZXJlbmNlIHRvIGEgc2VjcmV0IHdpdGhpbiB0aGUgc2FtZSBuYW1lc3BhY2UuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHJlZmVyZW5jZWQgc2VjcmV0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifX0sInR5cGUiOiJvYmplY3QifSwiZGVmYXVsdFRMU1NlY3JldCI6eyJkZXNjcmlwdGlvbiI6IkJ5IGRlZmF1bHQsIENlbnRyYWwgd2lsbCBvbmx5IHNlcnZlIGFuIGludGVybmFsIFRMUyBjZXJ0aWZpY2F0ZSwgd2hpY2ggbWVhbnMgdGhhdCB5b3Ugd2lsbFxubmVlZCB0byBoYW5kbGUgVExTIHRlcm1pbmF0aW9uIGF0IHRoZSBpbmdyZXNzIG9yIGxvYWQgYmFsYW5jZXIgbGV2ZWwuXG5JZiB5b3Ugd2FudCB0byB0ZXJtaW5hdGUgVExTIGluIENlbnRyYWwgYW5kIHNlcnZlIGEgY3VzdG9tIHNlcnZlciBjZXJ0aWZpY2F0ZSwgeW91IGNhbiBzcGVjaWZ5XG5hIHNlY3JldCBjb250YWluaW5nIHRoZSBjZXJ0aWZpY2F0ZSBhbmQgcHJpdmF0ZSBrZXkgaGVyZS4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgcmVmZXJlbmNlZCBzZWNyZXQuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sImV4cG9zdXJlIjp7ImRlc2NyaXB0aW9uIjoiSGVyZSB5b3UgY2FuIGNvbmZpZ3VyZSBpZiB5b3Ugd2FudCB0byBleHBvc2UgY2VudHJhbCB0aHJvdWdoIGEgbm9kZSBwb3J0LCBhIGxvYWQgYmFsYW5jZXIsIG9yIGFuIE9wZW5TaGlmdFxucm91dGUuIiwicHJvcGVydGllcyI6eyJsb2FkQmFsYW5jZXIiOnsiZGVzY3JpcHRpb24iOiJFeHBvc2UgQ2VudHJhbCB0aHJvdWdoIGEgbG9hZCBiYWxhbmNlciBzZXJ2aWNlLiIsInByb3BlcnRpZXMiOnsiZW5hYmxlZCI6eyJkZWZhdWx0IjpmYWxzZSwidHlwZSI6ImJvb2xlYW4ifSwiaXAiOnsiZGVzY3JpcHRpb24iOiJJZiB5b3UgaGF2ZSBhIHN0YXRpYyBJUCBhZGRyZXNzIHJlc2VydmVkIGZvciB5b3VyIGxvYWQgYmFsYW5jZXIsIHlvdSBjYW4gZW50ZXIgaXQgaGVyZS4iLCJ0eXBlIjoic3RyaW5nIn0sInBvcnQiOnsiZGVmYXVsdCI6NDQzLCJkZXNjcmlwdGlvbiI6IkRlZmF1bHRzIHRvIDQ0MyBpZiBub3Qgc2V0LiIsImZvcm1hdCI6ImludDMyIiwibWF4aW11bSI6NjU1MzUsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn19LCJ0eXBlIjoib2JqZWN0In0sIm5vZGVQb3J0Ijp7ImRlc2NyaXB0aW9uIjoiRXhwb3NlIENlbnRyYWwgdGhyb3VnaCBhIG5vZGUgcG9ydC4iLCJwcm9wZXJ0aWVzIjp7ImVuYWJsZWQiOnsiZGVmYXVsdCI6ZmFsc2UsInR5cGUiOiJib29sZWFuIn0sInBvcnQiOnsiZGVzY3JpcHRpb24iOiJVc2UgdGhpcyB0byBzcGVjaWZ5IGFuIGV4cGxpY2l0IG5vZGUgcG9ydC4gTW9zdCB1c2VycyBzaG91bGQgbGVhdmUgdGhpcyBlbXB0eS4iLCJmb3JtYXQiOiJpbnQzMiIsIm1heGltdW0iOjY1NTM1LCJtaW5pbXVtIjoxLCJ0eXBlIjoiaW50ZWdlciJ9fSwidHlwZSI6Im9iamVjdCJ9LCJyb3V0ZSI6eyJkZXNjcmlwdGlvbiI6IkV4cG9zZSBDZW50cmFsIHRocm91Z2ggYW4gT3BlblNoaWZ0IHJvdXRlLiIsInByb3BlcnRpZXMiOnsiZW5hYmxlZCI6eyJkZWZhdWx0IjpmYWxzZSwiZGVzY3JpcHRpb24iOiJFeHBvc2UgQ2VudHJhbCB3aXRoIGEgcGFzc3Rocm91Z2ggcm91dGUuIiwidHlwZSI6ImJvb2xlYW4ifSwiaG9zdCI6eyJkZXNjcmlwdGlvbiI6IlNwZWNpZnkgYSBjdXN0b20gaG9zdG5hbWUgZm9yIHRoZSBDZW50cmFsIHJvdXRlLlxuSWYgdW5zcGVjaWZpZWQsIGFuIGFwcHJvcHJpYXRlIGRlZmF1bHQgdmFsdWUgd2lsbCBiZSBhdXRvbWF0aWNhbGx5IGNob3NlbiBieSB0aGUgT3BlblNoaWZ0IHJvdXRlIG9wZXJhdG9yLiIsInR5cGUiOiJzdHJpbmcifSwicmVlbmNyeXB0Ijp7ImRlc2NyaXB0aW9uIjoiU2V0IHVwIGEgQ2VudHJhbCByb3V0ZSB3aXRoIHJlZW5jcnlwdCBUTFMgdGVybWluYXRpb24uXG5Gb3IgcmVlbmNyeXB0IHJvdXRlcywgdGhlIHJlcXVlc3QgaXMgdGVybWluYXRlZCBvbiB0aGUgT3BlblNoaWZ0IHJvdXRlciB3aXRoIGEgY3VzdG9tIGNlcnRpZmljYXRlLlxuVGhlIHJlcXVlc3QgaXMgdGhlbiByZWVuY3J5cHRlZCBieSB0aGUgT3BlblNoaWZ0IHJvdXRlciBhbmQgc2VudCB0byBDZW50cmFsLlxuW3VzZXJdIC0tVExTLS1cdTAwM2UgW09wZW5TaGlmdCByb3V0ZXJdIC0tVExTLS1cdTAwM2UgW0NlbnRyYWxdIiwicHJvcGVydGllcyI6eyJlbmFibGVkIjp7ImRlZmF1bHQiOmZhbHNlLCJkZXNjcmlwdGlvbiI6IkV4cG9zZSBDZW50cmFsIHdpdGggYSByZWVuY3J5cHQgcm91dGUuXG5TaG91bGQgbm90IGJlIHVzZWQgZm9yIHNlbnNvciBjb21tdW5pY2F0aW9uLiIsInR5cGUiOiJib29sZWFuIn0sImhvc3QiOnsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IGEgY3VzdG9tIGhvc3RuYW1lIGZvciB0aGUgQ2VudHJhbCByZWVuY3J5cHQgcm91dGUuXG5JZiB1bnNwZWNpZmllZCwgYW4gYXBwcm9wcmlhdGUgZGVmYXVsdCB2YWx1ZSB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgY2hvc2VuIGJ5IHRoZSBPcGVuU2hpZnQgcm91dGUgb3BlcmF0b3IuIiwidHlwZSI6InN0cmluZyJ9LCJ0bHMiOnsiZGVzY3JpcHRpb24iOiJUTFMgc2V0dGluZ3MgZm9yIGV4cG9zaW5nIENlbnRyYWwgdmlhIGEgcmVlbmNyeXB0IFJvdXRlLiIsInByb3BlcnRpZXMiOnsiY2FDZXJ0aWZpY2F0ZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBQRU0gZW5jb2RlZCBjZXJ0aWZpY2F0ZSBjaGFpbiB0aGF0IG1heSBiZSB1c2VkIHRvIGVzdGFibGlzaCBhIGNvbXBsZXRlIGNoYWluIG9mIHRydXN0LlxuRGVmYXVsdHMgdG8gdGhlIE9wZW5TaGlmdCBjZXJ0aWZpY2F0ZSBhdXRob3JpdHkuIiwidHlwZSI6InN0cmluZyJ9LCJjZXJ0aWZpY2F0ZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBQRU0gZW5jb2RlZCBjZXJ0aWZpY2F0ZSB0aGF0IGlzIHNlcnZlZCBvbiB0aGUgcm91dGUuIE11c3QgYmUgYSBzaW5nbGUgc2VydmluZ1xuY2VydGlmaWNhdGUgaW5zdGVhZCBvZiBhIGNlcnRpZmljYXRlIGNoYWluLlxuRGVmYXVsdHMgdG8gYSBjZXJ0aWZpY2F0ZSBzaWduZWQgYnkgdGhlIE9wZW5TaGlmdCBjZXJ0aWZpY2F0ZSBhdXRob3JpdHkuIiwidHlwZSI6InN0cmluZyJ9LCJkZXN0aW5hdGlvbkNBQ2VydGlmaWNhdGUiOnsiZGVzY3JpcHRpb24iOiJUaGUgQ0EgY2VydGlmaWNhdGUgb2YgdGhlIGZpbmFsIGRlc3RpbmF0aW9uLCBpLmUuIG9mIENlbnRyYWwuXG5Vc2VkIGJ5IHRoZSBPcGVuU2hpZnQgcm91dGVyIGZvciBoZWFsdGggY2hlY2tzIG9uIHRoZSBzZWN1cmUgY29ubmVjdGlvbi5cbkRlZmF1bHRzIHRvIHRoZSBDZW50cmFsIGNlcnRpZmljYXRlIGF1dGhvcml0eS4iLCJ0eXBlIjoic3RyaW5nIn0sImtleSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBQRU0gZW5jb2RlZCBwcml2YXRlIGtleSBvZiB0aGUgY2VydGlmaWNhdGUgdGhhdCBpcyBzZXJ2ZWQgb24gdGhlIHJvdXRlLlxuRGVmYXVsdHMgdG8gYSBjZXJ0aWZpY2F0ZSBzaWduZWQgYnkgdGhlIE9wZW5TaGlmdCBjZXJ0aWZpY2F0ZSBhdXRob3JpdHkuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJob3N0QWxpYXNlcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzIGhvbGRzIHRoZSBtYXBwaW5nIGJldHdlZW4gSVAgYW5kIGhvc3RuYW1lcyB0aGF0IHdpbGwgYmUgaW5qZWN0ZWQgYXMgYW4gZW50cnkgaW4gdGhlXG5wb2QncyBob3N0cyBmaWxlLiIsInByb3BlcnRpZXMiOnsiaG9zdG5hbWVzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdG5hbWVzIGZvciB0aGUgYWJvdmUgSVAgYWRkcmVzcy4iLCJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJhdG9taWMifSwiaXAiOnsiZGVzY3JpcHRpb24iOiJJUCBhZGRyZXNzIG9mIHRoZSBob3N0IGZpbGUgZW50cnkuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiaXAiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibW9uaXRvcmluZyI6eyJkZXNjcmlwdGlvbiI6IkNvbmZpZ3VyZXMgbW9uaXRvcmluZyBlbmRwb2ludCBmb3IgQ2VudHJhbC4gVGhlIG1vbml0b3JpbmcgZW5kcG9pbnRcbmFsbG93cyBvdGhlciBzZXJ2aWNlcyB0byBjb2xsZWN0IG1ldHJpY3MgZnJvbSBDZW50cmFsLCBwcm92aWRlZCBpblxuUHJvbWV0aGV1cyBjb21wYXRpYmxlIGZvcm1hdC4iLCJwcm9wZXJ0aWVzIjp7ImV4cG9zZUVuZHBvaW50Ijp7ImRlc2NyaXB0aW9uIjoiRXhwb3NlIHRoZSBtb25pdG9yaW5nIGVuZHBvaW50LiBBIG5ldyBzZXJ2aWNlLCBcIm1vbml0b3JpbmdcIixcbndpdGggcG9ydCA5MDkwLCB3aWxsIGJlIGNyZWF0ZWQgYXMgd2VsbCBhcyBhIG5ldHdvcmsgcG9saWN5IGFsbG93aW5nXG5pbmJvdW5kIGNvbm5lY3Rpb25zIHRvIHRoZSBwb3J0LiIsImVudW0iOlsiRW5hYmxlZCIsIkRpc2FibGVkIl0sInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwibm9kZVNlbGVjdG9yIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7InR5cGUiOiJzdHJpbmcifSwiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwidHlwZSI6Im9iamVjdCJ9LCJub3RpZmllclNlY3JldHNFbmNyeXB0aW9uIjp7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyB0aGUgZW5jcnlwdGlvbiBvZiBub3RpZmllciBzZWNyZXRzIHN0b3JlZCBpbiB0aGUgQ2VudHJhbCBEQi4iLCJwcm9wZXJ0aWVzIjp7ImVuYWJsZWQiOnsiZGVmYXVsdCI6ZmFsc2UsImRlc2NyaXB0aW9uIjoiRW5hYmxlcyB0aGUgZW5jcnlwdGlvbiBvZiBub3RpZmllciBzZWNyZXRzIHN0b3JlZCBpbiB0aGUgQ2VudHJhbCBEQi4iLCJ0eXBlIjoiYm9vbGVhbiJ9fSwidHlwZSI6Im9iamVjdCJ9LCJwZXJzaXN0ZW5jZSI6eyJkZXNjcmlwdGlvbiI6IlVudXNlZCBmaWVsZC4gVGhpcyBmaWVsZCBleGlzdHMgc29sZWx5IGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHN0YXJ0aW5nIGZyb20gdmVyc2lvbiB2NC42LjAuIiwicHJvcGVydGllcyI6eyJob3N0UGF0aCI6eyJkZXNjcmlwdGlvbiI6IlN0b3JlcyBwZXJzaXN0ZW50IGRhdGEgb24gYSBkaXJlY3Rvcnkgb24gdGhlIGhvc3QuIFRoaXMgaXMgbm90IHJlY29tbWVuZGVkLCBhbmQgc2hvdWxkIG9ubHlcbmJlIHVzZWQgdG9nZXRoZXIgd2l0aCBhIG5vZGUgc2VsZWN0b3IgKG9ubHkgYXZhaWxhYmxlIGluIFlBTUwgdmlldykuIiwicHJvcGVydGllcyI6eyJwYXRoIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHBhdGggb24gdGhlIGhvc3QgcnVubmluZyBDZW50cmFsLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwicGVyc2lzdGVudFZvbHVtZUNsYWltIjp7ImRlc2NyaXB0aW9uIjoiVXNlcyBhIEt1YmVybmV0ZXMgcGVyc2lzdGVudCB2b2x1bWUgY2xhaW0gKFBWQykgdG8gbWFuYWdlIHRoZSBzdG9yYWdlIGxvY2F0aW9uIG9mIHBlcnNpc3RlbnQgZGF0YS5cblJlY29tbWVuZGVkIGZvciBtb3N0IHVzZXJzLiIsInByb3BlcnRpZXMiOnsiY2xhaW1OYW1lIjp7ImRlZmF1bHQiOiJzdGFja3JveC1kYiIsImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIFBWQyB0byBtYW5hZ2UgcGVyc2lzdGVudCBkYXRhLiBJZiBubyBQVkMgd2l0aCB0aGUgZ2l2ZW4gbmFtZSBleGlzdHMsIGl0IHdpbGwgYmVcbmNyZWF0ZWQuIERlZmF1bHRzIHRvIFwic3RhY2tyb3gtZGJcIiBpZiBub3Qgc2V0LiIsInR5cGUiOiJzdHJpbmcifSwic2l6ZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBzaXplIG9mIHRoZSBwZXJzaXN0ZW50IHZvbHVtZSB3aGVuIGNyZWF0ZWQgdGhyb3VnaCB0aGUgY2xhaW0uIElmIGEgY2xhaW0gd2FzIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCxcbnRoaXMgY2FuIGJlIHVzZWQgYWZ0ZXIgdGhlIGluaXRpYWwgZGVwbG95bWVudCB0byByZXNpemUgKGdyb3cpIHRoZSB2b2x1bWUgKG9ubHkgc3VwcG9ydGVkIGJ5IHNvbWVcbnN0b3JhZ2UgY2xhc3MgY29udHJvbGxlcnMpLiIsInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsInR5cGUiOiJzdHJpbmcifSwic3RvcmFnZUNsYXNzTmFtZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSBzdG9yYWdlIGNsYXNzIHRvIHVzZSBmb3IgdGhlIFBWQy4gSWYgeW91ciBjbHVzdGVyIGlzIG5vdCBjb25maWd1cmVkIHdpdGggYSBkZWZhdWx0IHN0b3JhZ2VcbmNsYXNzLCB5b3UgbXVzdCBzZWxlY3QgYSB2YWx1ZSBoZXJlLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwicmVzb3VyY2VzIjp7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJwcm9wZXJ0aWVzIjp7ImNsYWltcyI6eyJkZXNjcmlwdGlvbiI6IkNsYWltcyBsaXN0cyB0aGUgbmFtZXMgb2YgcmVzb3VyY2VzLCBkZWZpbmVkIGluIHNwZWMucmVzb3VyY2VDbGFpbXMsXG50aGF0IGFyZSB1c2VkIGJ5IHRoaXMgY29udGFpbmVyLlxuXG5UaGlzIGZpZWxkIGRlcGVuZHMgb24gdGhlXG5EeW5hbWljUmVzb3VyY2VBbGxvY2F0aW9uIGZlYXR1cmUgZ2F0ZS5cblxuVGhpcyBmaWVsZCBpcyBpbW11dGFibGUuIEl0IGNhbiBvbmx5IGJlIHNldCBmb3IgY29udGFpbmVycy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlQ2xhaW0gcmVmZXJlbmNlcyBvbmUgZW50cnkgaW4gUG9kU3BlYy5SZXNvdXJjZUNsYWltcy4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJOYW1lIG11c3QgbWF0Y2ggdGhlIG5hbWUgb2Ygb25lIGVudHJ5IGluIHBvZC5zcGVjLnJlc291cmNlQ2xhaW1zIG9mXG50aGUgUG9kIHdoZXJlIHRoaXMgZmllbGQgaXMgdXNlZC4gSXQgbWFrZXMgdGhhdCByZXNvdXJjZSBhdmFpbGFibGVcbmluc2lkZSBhIGNvbnRhaW5lci4iLCJ0eXBlIjoic3RyaW5nIn0sInJlcXVlc3QiOnsiZGVzY3JpcHRpb24iOiJSZXF1ZXN0IGlzIHRoZSBuYW1lIGNob3NlbiBmb3IgYSByZXF1ZXN0IGluIHRoZSByZWZlcmVuY2VkIGNsYWltLlxuSWYgZW1wdHksIGV2ZXJ5dGhpbmcgZnJvbSB0aGUgY2xhaW0gaXMgbWFkZSBhdmFpbGFibGUsIG90aGVyd2lzZVxub25seSB0aGUgcmVzdWx0IG9mIHRoaXMgcmVxdWVzdC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtbWFwLWtleXMiOlsibmFtZSJdLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoibWFwIn0sImxpbWl0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJMaW1pdHMgZGVzY3JpYmVzIHRoZSBtYXhpbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyBhbGxvd2VkLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In0sInJlcXVlc3RzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IlJlcXVlc3RzIGRlc2NyaWJlcyB0aGUgbWluaW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgcmVxdWlyZWQuXG5JZiBSZXF1ZXN0cyBpcyBvbWl0dGVkIGZvciBhIGNvbnRhaW5lciwgaXQgZGVmYXVsdHMgdG8gTGltaXRzIGlmIHRoYXQgaXMgZXhwbGljaXRseSBzcGVjaWZpZWQsXG5vdGhlcndpc2UgdG8gYW4gaW1wbGVtZW50YXRpb24tZGVmaW5lZCB2YWx1ZS4gUmVxdWVzdHMgY2Fubm90IGV4Y2VlZCBMaW1pdHMuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwidGVsZW1ldHJ5Ijp7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyB0ZWxlbWV0cnkgc2V0dGluZ3MgZm9yIENlbnRyYWwuIElmIGVuYWJsZWQsIENlbnRyYWwgdHJhbnNtaXRzIHRlbGVtZXRyeSBhbmQgZGlhZ25vc3RpY1xuZGF0YSB0byBhIHJlbW90ZSBzdG9yYWdlIGJhY2tlbmQuIiwicHJvcGVydGllcyI6eyJlbmFibGVkIjp7ImRlZmF1bHQiOnRydWUsImRlc2NyaXB0aW9uIjoiU3BlY2lmaWVzIGlmIFRlbGVtZXRyeSBpcyBlbmFibGVkLiIsInR5cGUiOiJib29sZWFuIn0sInN0b3JhZ2UiOnsiZGVzY3JpcHRpb24iOiJEZWZpbmVzIHRoZSB0ZWxlbWV0cnkgc3RvcmFnZSBiYWNrZW5kIGZvciBDZW50cmFsLiIsInByb3BlcnRpZXMiOnsiZW5kcG9pbnQiOnsiZGVzY3JpcHRpb24iOiJTdG9yYWdlIEFQSSBlbmRwb2ludC4iLCJ0eXBlIjoic3RyaW5nIn0sImtleSI6eyJkZXNjcmlwdGlvbiI6IlN0b3JhZ2UgQVBJIGtleS4gSWYgbm90IHNldCwgdGVsZW1ldHJ5IGlzIGRpc2FibGVkLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwidG9sZXJhdGlvbnMiOnsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwb2QgdGhpcyBUb2xlcmF0aW9uIGlzIGF0dGFjaGVkIHRvIHRvbGVyYXRlcyBhbnkgdGFpbnQgdGhhdCBtYXRjaGVzXG50aGUgdHJpcGxlIFx1MDAzY2tleSx2YWx1ZSxlZmZlY3RcdTAwM2UgdXNpbmcgdGhlIG1hdGNoaW5nIG9wZXJhdG9yIFx1MDAzY29wZXJhdG9yXHUwMDNlLiIsInByb3BlcnRpZXMiOnsiZWZmZWN0Ijp7ImRlc2NyaXB0aW9uIjoiRWZmZWN0IGluZGljYXRlcyB0aGUgdGFpbnQgZWZmZWN0IHRvIG1hdGNoLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQgZWZmZWN0cy5cbldoZW4gc3BlY2lmaWVkLCBhbGxvd2VkIHZhbHVlcyBhcmUgTm9TY2hlZHVsZSwgUHJlZmVyTm9TY2hlZHVsZSBhbmQgTm9FeGVjdXRlLiIsInR5cGUiOiJzdHJpbmcifSwia2V5Ijp7ImRlc2NyaXB0aW9uIjoiS2V5IGlzIHRoZSB0YWludCBrZXkgdGhhdCB0aGUgdG9sZXJhdGlvbiBhcHBsaWVzIHRvLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQga2V5cy5cbklmIHRoZSBrZXkgaXMgZW1wdHksIG9wZXJhdG9yIG11c3QgYmUgRXhpc3RzOyB0aGlzIGNvbWJpbmF0aW9uIG1lYW5zIHRvIG1hdGNoIGFsbCB2YWx1ZXMgYW5kIGFsbCBrZXlzLiIsInR5cGUiOiJzdHJpbmcifSwib3BlcmF0b3IiOnsiZGVzY3JpcHRpb24iOiJPcGVyYXRvciByZXByZXNlbnRzIGEga2V5J3MgcmVsYXRpb25zaGlwIHRvIHRoZSB2YWx1ZS5cblZhbGlkIG9wZXJhdG9ycyBhcmUgRXhpc3RzIGFuZCBFcXVhbC4gRGVmYXVsdHMgdG8gRXF1YWwuXG5FeGlzdHMgaXMgZXF1aXZhbGVudCB0byB3aWxkY2FyZCBmb3IgdmFsdWUsIHNvIHRoYXQgYSBwb2QgY2FuXG50b2xlcmF0ZSBhbGwgdGFpbnRzIG9mIGEgcGFydGljdWxhciBjYXRlZ29yeS4iLCJ0eXBlIjoic3RyaW5nIn0sInRvbGVyYXRpb25TZWNvbmRzIjp7ImRlc2NyaXB0aW9uIjoiVG9sZXJhdGlvblNlY29uZHMgcmVwcmVzZW50cyB0aGUgcGVyaW9kIG9mIHRpbWUgdGhlIHRvbGVyYXRpb24gKHdoaWNoIG11c3QgYmVcbm9mIGVmZmVjdCBOb0V4ZWN1dGUsIG90aGVyd2lzZSB0aGlzIGZpZWxkIGlzIGlnbm9yZWQpIHRvbGVyYXRlcyB0aGUgdGFpbnQuIEJ5IGRlZmF1bHQsXG5pdCBpcyBub3Qgc2V0LCB3aGljaCBtZWFucyB0b2xlcmF0ZSB0aGUgdGFpbnQgZm9yZXZlciAoZG8gbm90IGV2aWN0KS4gWmVybyBhbmRcbm5lZ2F0aXZlIHZhbHVlcyB3aWxsIGJlIHRyZWF0ZWQgYXMgMCAoZXZpY3QgaW1tZWRpYXRlbHkpIGJ5IHRoZSBzeXN0ZW0uIiwiZm9ybWF0IjoiaW50NjQiLCJ0eXBlIjoiaW50ZWdlciJ9LCJ2YWx1ZSI6eyJkZXNjcmlwdGlvbiI6IlZhbHVlIGlzIHRoZSB0YWludCB2YWx1ZSB0aGUgdG9sZXJhdGlvbiBtYXRjaGVzIHRvLlxuSWYgdGhlIG9wZXJhdG9yIGlzIEV4aXN0cywgdGhlIHZhbHVlIHNob3VsZCBiZSBlbXB0eSwgb3RoZXJ3aXNlIGp1c3QgYSByZWd1bGFyIHN0cmluZy4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9fSwidHlwZSI6Im9iamVjdCJ9LCJjb25maWdBc0NvZGUiOnsiZGVzY3JpcHRpb24iOiJDb25maWctYXMtQ29kZSBjb25maWd1cmF0aW9uLiIsInByb3BlcnRpZXMiOnsiY29uZmlnQXNDb2RlQ29tcG9uZW50Ijp7ImRlZmF1bHQiOiJFbmFibGVkIiwiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0byBkZXBsb3kgdGhlIENvbmZpZyBhcyBDb2RlIGNvbXBvbmVudCwgc2V0IHRoaXMgdG8gXCJFbmFibGVkXCIiLCJlbnVtIjpbIkVuYWJsZWQiLCJEaXNhYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sImN1c3RvbWl6ZSI6eyJkZXNjcmlwdGlvbiI6IkN1c3RvbWl6YXRpb25zIHRvIGFwcGx5IG9uIGFsbCBDZW50cmFsIFNlcnZpY2VzIGNvbXBvbmVudHMuIiwicHJvcGVydGllcyI6eyJhbm5vdGF0aW9ucyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJ0eXBlIjoic3RyaW5nIn0sImRlc2NyaXB0aW9uIjoiQ3VzdG9tIGFubm90YXRpb25zIHRvIHNldCBvbiBhbGwgbWFuYWdlZCBvYmplY3RzLiIsInR5cGUiOiJvYmplY3QifSwiZW52VmFycyI6eyJkZXNjcmlwdGlvbiI6IkN1c3RvbSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gc2V0IG9uIG1hbmFnZWQgcG9kcycgY29udGFpbmVycy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IkVudlZhciByZXByZXNlbnRzIGFuIGVudmlyb25tZW50IHZhcmlhYmxlIHByZXNlbnQgaW4gYSBDb250YWluZXIuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTmFtZSBvZiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUuXG5NYXkgY29uc2lzdCBvZiBhbnkgcHJpbnRhYmxlIEFTQ0lJIGNoYXJhY3RlcnMgZXhjZXB0ICc9Jy4iLCJ0eXBlIjoic3RyaW5nIn0sInZhbHVlIjp7ImRlc2NyaXB0aW9uIjoiVmFyaWFibGUgcmVmZXJlbmNlcyAkKFZBUl9OQU1FKSBhcmUgZXhwYW5kZWRcbnVzaW5nIHRoZSBwcmV2aW91c2x5IGRlZmluZWQgZW52aXJvbm1lbnQgdmFyaWFibGVzIGluIHRoZSBjb250YWluZXIgYW5kXG5hbnkgc2VydmljZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMuIElmIGEgdmFyaWFibGUgY2Fubm90IGJlIHJlc29sdmVkLFxudGhlIHJlZmVyZW5jZSBpbiB0aGUgaW5wdXQgc3RyaW5nIHdpbGwgYmUgdW5jaGFuZ2VkLiBEb3VibGUgJCQgYXJlIHJlZHVjZWRcbnRvIGEgc2luZ2xlICQsIHdoaWNoIGFsbG93cyBmb3IgZXNjYXBpbmcgdGhlICQoVkFSX05BTUUpIHN5bnRheDogaS5lLlxuXCIkJChWQVJfTkFNRSlcIiB3aWxsIHByb2R1Y2UgdGhlIHN0cmluZyBsaXRlcmFsIFwiJChWQVJfTkFNRSlcIi5cbkVzY2FwZWQgcmVmZXJlbmNlcyB3aWxsIG5ldmVyIGJlIGV4cGFuZGVkLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIHZhcmlhYmxlXG5leGlzdHMgb3Igbm90LlxuRGVmYXVsdHMgdG8gXCJcIi4iLCJ0eXBlIjoic3RyaW5nIn0sInZhbHVlRnJvbSI6eyJkZXNjcmlwdGlvbiI6IlNvdXJjZSBmb3IgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlJ3MgdmFsdWUuIENhbm5vdCBiZSB1c2VkIGlmIHZhbHVlIGlzIG5vdCBlbXB0eS4iLCJwcm9wZXJ0aWVzIjp7ImNvbmZpZ01hcEtleVJlZiI6eyJkZXNjcmlwdGlvbiI6IlNlbGVjdHMgYSBrZXkgb2YgYSBDb25maWdNYXAuIiwicHJvcGVydGllcyI6eyJrZXkiOnsiZGVzY3JpcHRpb24iOiJUaGUga2V5IHRvIHNlbGVjdC4iLCJ0eXBlIjoic3RyaW5nIn0sIm5hbWUiOnsiZGVmYXVsdCI6IiIsImRlc2NyaXB0aW9uIjoiTmFtZSBvZiB0aGUgcmVmZXJlbnQuXG5UaGlzIGZpZWxkIGlzIGVmZmVjdGl2ZWx5IHJlcXVpcmVkLCBidXQgZHVlIHRvIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IGlzXG5hbGxvd2VkIHRvIGJlIGVtcHR5LiBJbnN0YW5jZXMgb2YgdGhpcyB0eXBlIHdpdGggYW4gZW1wdHkgdmFsdWUgaGVyZSBhcmVcbmFsbW9zdCBjZXJ0YWlubHkgd3JvbmcuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL292ZXJ2aWV3L3dvcmtpbmctd2l0aC1vYmplY3RzL25hbWVzLyNuYW1lcyIsInR5cGUiOiJzdHJpbmcifSwib3B0aW9uYWwiOnsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IHdoZXRoZXIgdGhlIENvbmZpZ01hcCBvciBpdHMga2V5IG11c3QgYmUgZGVmaW5lZCIsInR5cGUiOiJib29sZWFuIn19LCJyZXF1aXJlZCI6WyJrZXkiXSwidHlwZSI6Im9iamVjdCIsIngta3ViZXJuZXRlcy1tYXAtdHlwZSI6ImF0b21pYyJ9LCJmaWVsZFJlZiI6eyJkZXNjcmlwdGlvbiI6IlNlbGVjdHMgYSBmaWVsZCBvZiB0aGUgcG9kOiBzdXBwb3J0cyBtZXRhZGF0YS5uYW1lLCBtZXRhZGF0YS5uYW1lc3BhY2UsIGBtZXRhZGF0YS5sYWJlbHNbJ1x1MDAzY0tFWVx1MDAzZSddYCwgYG1ldGFkYXRhLmFubm90YXRpb25zWydcdTAwM2NLRVlcdTAwM2UnXWAsXG5zcGVjLm5vZGVOYW1lLCBzcGVjLnNlcnZpY2VBY2NvdW50TmFtZSwgc3RhdHVzLmhvc3RJUCwgc3RhdHVzLnBvZElQLCBzdGF0dXMucG9kSVBzLiIsInByb3BlcnRpZXMiOnsiYXBpVmVyc2lvbiI6eyJkZXNjcmlwdGlvbiI6IlZlcnNpb24gb2YgdGhlIHNjaGVtYSB0aGUgRmllbGRQYXRoIGlzIHdyaXR0ZW4gaW4gdGVybXMgb2YsIGRlZmF1bHRzIHRvIFwidjFcIi4iLCJ0eXBlIjoic3RyaW5nIn0sImZpZWxkUGF0aCI6eyJkZXNjcmlwdGlvbiI6IlBhdGggb2YgdGhlIGZpZWxkIHRvIHNlbGVjdCBpbiB0aGUgc3BlY2lmaWVkIEFQSSB2ZXJzaW9uLiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbImZpZWxkUGF0aCJdLCJ0eXBlIjoib2JqZWN0IiwieC1rdWJlcm5ldGVzLW1hcC10eXBlIjoiYXRvbWljIn0sImZpbGVLZXlSZWYiOnsiZGVzY3JpcHRpb24iOiJGaWxlS2V5UmVmIHNlbGVjdHMgYSBrZXkgb2YgdGhlIGVudiBmaWxlLlxuUmVxdWlyZXMgdGhlIEVudkZpbGVzIGZlYXR1cmUgZ2F0ZSB0byBiZSBlbmFibGVkLiIsInByb3BlcnRpZXMiOnsia2V5Ijp7ImRlc2NyaXB0aW9uIjoiVGhlIGtleSB3aXRoaW4gdGhlIGVudiBmaWxlLiBBbiBpbnZhbGlkIGtleSB3aWxsIHByZXZlbnQgdGhlIHBvZCBmcm9tIHN0YXJ0aW5nLlxuVGhlIGtleXMgZGVmaW5lZCB3aXRoaW4gYSBzb3VyY2UgbWF5IGNvbnNpc3Qgb2YgYW55IHByaW50YWJsZSBBU0NJSSBjaGFyYWN0ZXJzIGV4Y2VwdCAnPScuXG5EdXJpbmcgQWxwaGEgc3RhZ2Ugb2YgdGhlIEVudkZpbGVzIGZlYXR1cmUgZ2F0ZSwgdGhlIGtleSBzaXplIGlzIGxpbWl0ZWQgdG8gMTI4IGNoYXJhY3RlcnMuIiwidHlwZSI6InN0cmluZyJ9LCJvcHRpb25hbCI6eyJkZWZhdWx0IjpmYWxzZSwiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IHdoZXRoZXIgdGhlIGZpbGUgb3IgaXRzIGtleSBtdXN0IGJlIGRlZmluZWQuIElmIHRoZSBmaWxlIG9yIGtleVxuZG9lcyBub3QgZXhpc3QsIHRoZW4gdGhlIGVudiB2YXIgaXMgbm90IHB1Ymxpc2hlZC5cbklmIG9wdGlvbmFsIGlzIHNldCB0byB0cnVlIGFuZCB0aGUgc3BlY2lmaWVkIGtleSBkb2VzIG5vdCBleGlzdCxcbnRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSB3aWxsIG5vdCBiZSBzZXQgaW4gdGhlIFBvZCdzIGNvbnRhaW5lcnMuXG5cbklmIG9wdGlvbmFsIGlzIHNldCB0byBmYWxzZSBhbmQgdGhlIHNwZWNpZmllZCBrZXkgZG9lcyBub3QgZXhpc3QsXG5hbiBlcnJvciB3aWxsIGJlIHJldHVybmVkIGR1cmluZyBQb2QgY3JlYXRpb24uIiwidHlwZSI6ImJvb2xlYW4ifSwicGF0aCI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwYXRoIHdpdGhpbiB0aGUgdm9sdW1lIGZyb20gd2hpY2ggdG8gc2VsZWN0IHRoZSBmaWxlLlxuTXVzdCBiZSByZWxhdGl2ZSBhbmQgbWF5IG5vdCBjb250YWluIHRoZSAnLi4nIHBhdGggb3Igc3RhcnQgd2l0aCAnLi4nLiIsInR5cGUiOiJzdHJpbmcifSwidm9sdW1lTmFtZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSB2b2x1bWUgbW91bnQgY29udGFpbmluZyB0aGUgZW52IGZpbGUuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsia2V5IiwicGF0aCIsInZvbHVtZU5hbWUiXSwidHlwZSI6Im9iamVjdCIsIngta3ViZXJuZXRlcy1tYXAtdHlwZSI6ImF0b21pYyJ9LCJyZXNvdXJjZUZpZWxkUmVmIjp7ImRlc2NyaXB0aW9uIjoiU2VsZWN0cyBhIHJlc291cmNlIG9mIHRoZSBjb250YWluZXI6IG9ubHkgcmVzb3VyY2VzIGxpbWl0cyBhbmQgcmVxdWVzdHNcbihsaW1pdHMuY3B1LCBsaW1pdHMubWVtb3J5LCBsaW1pdHMuZXBoZW1lcmFsLXN0b3JhZ2UsIHJlcXVlc3RzLmNwdSwgcmVxdWVzdHMubWVtb3J5IGFuZCByZXF1ZXN0cy5lcGhlbWVyYWwtc3RvcmFnZSkgYXJlIGN1cnJlbnRseSBzdXBwb3J0ZWQuIiwicHJvcGVydGllcyI6eyJjb250YWluZXJOYW1lIjp7ImRlc2NyaXB0aW9uIjoiQ29udGFpbmVyIG5hbWU6IHJlcXVpcmVkIGZvciB2b2x1bWVzLCBvcHRpb25hbCBmb3IgZW52IHZhcnMiLCJ0eXBlIjoic3RyaW5nIn0sImRpdmlzb3IiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJkZXNjcmlwdGlvbiI6IlNwZWNpZmllcyB0aGUgb3V0cHV0IGZvcm1hdCBvZiB0aGUgZXhwb3NlZCByZXNvdXJjZXMsIGRlZmF1bHRzIHRvIFwiMVwiIiwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJyZXNvdXJjZSI6eyJkZXNjcmlwdGlvbiI6IlJlcXVpcmVkOiByZXNvdXJjZSB0byBzZWxlY3QiLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJyZXNvdXJjZSJdLCJ0eXBlIjoib2JqZWN0IiwieC1rdWJlcm5ldGVzLW1hcC10eXBlIjoiYXRvbWljIn0sInNlY3JldEtleVJlZiI6eyJkZXNjcmlwdGlvbiI6IlNlbGVjdHMgYSBrZXkgb2YgYSBzZWNyZXQgaW4gdGhlIHBvZCdzIG5hbWVzcGFjZSIsInByb3BlcnRpZXMiOnsia2V5Ijp7ImRlc2NyaXB0aW9uIjoiVGhlIGtleSBvZiB0aGUgc2VjcmV0IHRvIHNlbGVjdCBmcm9tLiAgTXVzdCBiZSBhIHZhbGlkIHNlY3JldCBrZXkuIiwidHlwZSI6InN0cmluZyJ9LCJuYW1lIjp7ImRlZmF1bHQiOiIiLCJkZXNjcmlwdGlvbiI6Ik5hbWUgb2YgdGhlIHJlZmVyZW50LlxuVGhpcyBmaWVsZCBpcyBlZmZlY3RpdmVseSByZXF1aXJlZCwgYnV0IGR1ZSB0byBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSBpc1xuYWxsb3dlZCB0byBiZSBlbXB0eS4gSW5zdGFuY2VzIG9mIHRoaXMgdHlwZSB3aXRoIGFuIGVtcHR5IHZhbHVlIGhlcmUgYXJlXG5hbG1vc3QgY2VydGFpbmx5IHdyb25nLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9vdmVydmlldy93b3JraW5nLXdpdGgtb2JqZWN0cy9uYW1lcy8jbmFtZXMiLCJ0eXBlIjoic3RyaW5nIn0sIm9wdGlvbmFsIjp7ImRlc2NyaXB0aW9uIjoiU3BlY2lmeSB3aGV0aGVyIHRoZSBTZWNyZXQgb3IgaXRzIGtleSBtdXN0IGJlIGRlZmluZWQiLCJ0eXBlIjoiYm9vbGVhbiJ9fSwicmVxdWlyZWQiOlsia2V5Il0sInR5cGUiOiJvYmplY3QiLCJ4LWt1YmVybmV0ZXMtbWFwLXR5cGUiOiJhdG9taWMifX0sInR5cGUiOiJvYmplY3QifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibGFiZWxzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7InR5cGUiOiJzdHJpbmcifSwiZGVzY3JpcHRpb24iOiJDdXN0b20gbGFiZWxzIHRvIHNldCBvbiBhbGwgbWFuYWdlZCBvYmplY3RzLiIsInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwiZWdyZXNzIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcmVsYXRlZCB0byBvdXRnb2luZyBuZXR3b3JrIHRyYWZmaWMuIiwicHJvcGVydGllcyI6eyJjb25uZWN0aXZpdHlQb2xpY3kiOnsiZGVmYXVsdCI6Ik9ubGluZSIsImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyB3aGV0aGVyIFJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSBzaG91bGQgcnVuIGluIG9ubGluZSBvciBvZmZsaW5lIChkaXNjb25uZWN0ZWQpIG1vZGUuXG5JbiBvZmZsaW5lIG1vZGUsIGF1dG9tYXRpYyB1cGRhdGVzIG9mIHZ1bG5lcmFiaWxpdHkgZGVmaW5pdGlvbnMgYW5kIGtlcm5lbCBtb2R1bGVzIGFyZSBkaXNhYmxlZC4iLCJlbnVtIjpbIk9ubGluZSIsIk9mZmxpbmUiXSwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJpbWFnZVB1bGxTZWNyZXRzIjp7ImRlc2NyaXB0aW9uIjoiQWRkaXRpb25hbCBpbWFnZSBwdWxsIHNlY3JldHMgdG8gYmUgdGFrZW4gaW50byBhY2NvdW50IGZvciBwdWxsaW5nIGltYWdlcy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IkxvY2FsU2VjcmV0UmVmZXJlbmNlIGlzIGEgcmVmZXJlbmNlIHRvIGEgc2VjcmV0IHdpdGhpbiB0aGUgc2FtZSBuYW1lc3BhY2UuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHJlZmVyZW5jZWQgc2VjcmV0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibWlzYyI6eyJkZXNjcmlwdGlvbiI6IkRlcHJlY2F0ZWQgZmllbGQuIFRoaXMgZmllbGQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHJlbGVhc2UuXG5NaXNjZWxsYW5lb3VzIHNldHRpbmdzLiIsInByb3BlcnRpZXMiOnsiY3JlYXRlU0NDcyI6eyJkZXNjcmlwdGlvbiI6IkRlcHJlY2F0ZWQgZmllbGQuIFRoaXMgZmllbGQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHJlbGVhc2UuXG5TZXQgdGhpcyB0byB0cnVlIHRvIGhhdmUgdGhlIG9wZXJhdG9yIGNyZWF0ZSBTZWN1cml0eUNvbnRleHRDb25zdHJhaW50cyAoU0NDcykgZm9yIHRoZSBvcGVyYW5kcy4gVGhpc1xuaXNuJ3QgdXN1YWxseSBuZWVkZWQsIGFuZCBtYXkgaW50ZXJmZXJlIHdpdGggb3RoZXIgd29ya2xvYWRzLiIsInR5cGUiOiJib29sZWFuIn19LCJ0eXBlIjoib2JqZWN0In0sIm1vbml0b3JpbmciOnsiZGVzY3JpcHRpb24iOiJNb25pdG9yaW5nIGNvbmZpZ3VyYXRpb24uIiwicHJvcGVydGllcyI6eyJvcGVuc2hpZnQiOnsiZGVzY3JpcHRpb24iOiJPcGVuU2hpZnRNb25pdG9yaW5nIGRlZmluZXMgc2V0dGluZ3MgcmVsYXRlZCB0byBPcGVuU2hpZnQgTW9uaXRvcmluZyIsInByb3BlcnRpZXMiOnsiZW5hYmxlZCI6eyJkZWZhdWx0Ijp0cnVlLCJ0eXBlIjoiYm9vbGVhbiJ9fSwicmVxdWlyZWQiOlsiZW5hYmxlZCJdLCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sIm5ldHdvcmsiOnsiZGVzY3JpcHRpb24iOiJOZXR3b3JrIGNvbmZpZ3VyYXRpb24uIiwicHJvcGVydGllcyI6eyJwb2xpY2llcyI6eyJkZWZhdWx0IjoiRW5hYmxlZCIsImRlc2NyaXB0aW9uIjoiVG8gcHJvdmlkZSBzZWN1cml0eSBhdCB0aGUgbmV0d29yayBsZXZlbCB0aGUgQUNTIE9wZXJhdG9yIGNyZWF0ZXMgTmV0d29ya1BvbGljeSByZXNvdXJjZXMgYnkgZGVmYXVsdC4gSWYgeW91IHdhbnQgdG8gbWFuYWdlIHlvdXIgb3duIE5ldHdvcmtQb2xpY3kgb2JqZWN0cyB0aGVuIHNldCB0aGlzIHRvIFwiRGlzYWJsZWRcIi4iLCJlbnVtIjpbIkVuYWJsZWQiLCJEaXNhYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sIm92ZXJsYXlzIjp7ImRlc2NyaXB0aW9uIjoiT3ZlcmxheXMiLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6Iks4c09iamVjdE92ZXJsYXkgaXMgYW4gb3ZlcmxheSB0aGF0IGFwcGxpZXMgYSBzZXQgb2YgcGF0Y2hlcyB0byBhIHJlc291cmNlLlxuSXQgdGFyZ2V0cyBhIHJlc291cmNlIGJ5IGl0cyBBUEkgdmVyc2lvbiwga2luZCwgYW5kIG5hbWUsIGFuZCBhcHBsaWVzXG5hIGxpc3Qgb2YgcGF0Y2hlcyB0byB0aGlzIHJlc291cmNlLlxuXG4jIEV4YW1wbGVzXG5cbiMjIEFkZGluZyBhbiBhbm5vdGF0aW9uIHRvIGEgcmVzb3VyY2VcblxuXHRhcGlWZXJzaW9uOiB2MVxuXHRraW5kOiBTZXJ2aWNlQWNjb3VudFxuXHRuYW1lOiBjZW50cmFsXG5cdHBhdGNoZXM6XG5cdC0gcGF0aDogbWV0YWRhdGEuYW5ub3RhdGlvbnMuZWtzXFwuYW1hem9uYXdzXFwuY29tL3JvbGUtYXJuXG5cdCAgdmFsdWU6IFwiXFxcImFybjphd3M6aWFtOjEyMzQ6cm9sZVxcXCJcIlxuXG4jIyBBZGRpbmcgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gYSBkZXBsb3ltZW50XG5cblx0YXBpVmVyc2lvbjogYXBwcy92MVxuXHRraW5kOiBEZXBsb3ltZW50XG5cdG5hbWU6IGNlbnRyYWxcblx0cGF0Y2hlczpcblx0LSBwYXRoOiBzcGVjLnRlbXBsYXRlLnNwZWMuY29udGFpbmVyc1tuYW1lOmNlbnRyYWxdLmVudlstMV1cblx0ICB2YWx1ZTogfFxuXHQgICAgbmFtZTogTVlfRU5WX1ZBUlxuXHQgICAgdmFsdWU6IHZhbHVlXG5cbiMjIEFkZGluZyBhbiBpbmdyZXNzIHRvIGEgbmV0d29yayBwb2xpY3lcblxuXHRhcGlWZXJzaW9uOiBuZXR3b3JraW5nLms4cy5pby92MVxuXHRraW5kOiBOZXR3b3JrUG9saWN5XG5cdG5hbWU6IGFsbG93LWV4dC10by1jZW50cmFsXG5cdHBhdGNoZXM6XG5cdC0gcGF0aDogc3BlYy5pbmdyZXNzWy0xXVxuXHQgIHZhbHVlOiB8XG5cdCAgICBwb3J0czpcblx0ICAgIC0gcG9ydDogOTk5XG5cdCAgICAgIHByb3RvY29sOiBUQ1BcblxuIyMgQ2hhbmdpbmcgdGhlIHZhbHVlIG9mIGEgY29uZmlnTWFwXG5cblx0YXBpVmVyc2lvbjogdjFcblx0a2luZDogQ29uZmlnTWFwXG5cdG5hbWU6IGNlbnRyYWwtZW5kcG9pbnRzXG5cdHBhdGNoZXM6XG5cdC0gcGF0aDogZGF0YS5lbmRwb2ludHNcXC55YW1sOlxuXHQgIHZlcmJhdGltOiB8XG5cdCAgICBkaXNhYmxlRGVmYXVsdDogZmFsc2VcblxuIyMgQWRkaW5nIGEgY29udGFpbmVyIHRvIGEgZGVwbG95bWVudFxuXG5cdGFwaVZlcnNpb246IGFwcHMvdjFcblx0a2luZDogRGVwbG95bWVudFxuXHRuYW1lOiBjZW50cmFsXG5cdHBhdGNoZXM6XG5cdCAgLSBwYXRoOiBzcGVjLnRlbXBsYXRlLnNwZWMuY29udGFpbmVyc1stMV1cblx0ICAgIHZhbHVlOiB8XG5cdCAgICAgIG5hbWU6IG5naW54XG5cdCAgICAgIGltYWdlOiBuZ2lueFxuXHQgICAgICBwb3J0czpcblx0ICAgICAgLSBjb250YWluZXJQb3J0OiA4MDAwXG5cdCAgICAgICAgbmFtZTogaHR0cFxuXHQgICAgICAgIHByb3RvY29sOiBUQ1AiLCJwcm9wZXJ0aWVzIjp7ImFwaVZlcnNpb24iOnsiZGVzY3JpcHRpb24iOiJSZXNvdXJjZSBBUEkgdmVyc2lvbi4iLCJ0eXBlIjoic3RyaW5nIn0sImtpbmQiOnsiZGVzY3JpcHRpb24iOiJSZXNvdXJjZSBraW5kLiIsInR5cGUiOiJzdHJpbmcifSwibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik5hbWUgb2YgcmVzb3VyY2UuIiwidHlwZSI6InN0cmluZyJ9LCJvcHRpb25hbCI6eyJkZXNjcmlwdGlvbiI6Ik9wdGlvbmFsIG1hcmtzIHRoZSBvdmVybGF5IGFzIG9wdGlvbmFsLlxuV2hlbiBPcHRpb25hbCBpcyB0cnVlLCBhbmQgdGhlIHNwZWNpZmllZCByZXNvdXJjZSBkb2VzIG5vdCBleGlzdCBpbiB0aGUgb3V0cHV0IG1hbmlmZXN0cywgdGhlIG92ZXJsYXkgd2lsbCBiZSBza2lwcGVkLCBhbmQgYSB3YXJuaW5nIHdpbGwgYmUgbG9nZ2VkLlxuV2hlbiBPcHRpb25hbCBpcyBmYWxzZSwgYW5kIHRoZSBzcGVjaWZpZWQgcmVzb3VyY2UgZG9lcyBub3QgZXhpc3QgaW4gdGhlIG91dHB1dCBtYW5pZmVzdHMsIGFuIGVycm9yIHdpbGwgYmUgdGhyb3duLiIsInR5cGUiOiJib29sZWFuIn0sInBhdGNoZXMiOnsiZGVzY3JpcHRpb24iOiJMaXN0IG9mIHBhdGNoZXMgdG8gYXBwbHkgdG8gcmVzb3VyY2UuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJLOHNPYmplY3RPdmVybGF5UGF0Y2ggZGVmaW5lcyBhIHBhdGNoIHRvIGFwcGx5IHRvIGEgcmVzb3VyY2UuIiwicHJvcGVydGllcyI6eyJwYXRoIjp7ImRlc2NyaXB0aW9uIjoiUGF0aCBvZiB0aGUgZm9ybSBhLltrZXkxOnZhbHVlMV0uYi5bOnZhbHVlMl1cbldoZXJlIFtrZXkxOnZhbHVlMV0gaXMgYSBzZWxlY3RvciBmb3IgYSBrZXktdmFsdWUgcGFpciB0byBpZGVudGlmeSBhIGxpc3QgZWxlbWVudCBhbmQgWzp2YWx1ZV0gaXMgYSB2YWx1ZVxuc2VsZWN0b3IgdG8gaWRlbnRpZnkgYSBsaXN0IGVsZW1lbnQgaW4gYSBsZWFmIGxpc3QuXG5BbGwgcGF0aCBpbnRlcm1lZGlhdGUgbm9kZXMgbXVzdCBleGlzdC4iLCJ0eXBlIjoic3RyaW5nIn0sInZhbHVlIjp7ImRlc2NyaXB0aW9uIjoiVmFsdWUgdG8gYWRkLCBkZWxldGUgb3IgcmVwbGFjZS5cbkZvciBhZGQsIHRoZSBwYXRoIHNob3VsZCBiZSBhIG5ldyBsZWFmLlxuRm9yIGRlbGV0ZSwgdmFsdWUgc2hvdWxkIGJlIHVuc2V0LlxuRm9yIHJlcGxhY2UsIHBhdGggc2hvdWxkIHJlZmVyZW5jZSBhbiBleGlzdGluZyBub2RlLlxuQWxsIHZhbHVlcyBhcmUgc3RyaW5ncyBidXQgYXJlIGNvbnZlcnRlZCBpbnRvIGFwcHJvcHJpYXRlIHR5cGUgYmFzZWQgb24gc2NoZW1hLiIsInR5cGUiOiJzdHJpbmcifSwidmVyYmF0aW0iOnsiZGVzY3JpcHRpb24iOiJWZXJiYXRpbSB2YWx1ZSB0byBhZGQsIGRlbGV0ZSBvciByZXBsYWNlLlxuU2FtZSBhcyBWYWx1ZSwgaG93ZXZlciB0aGUgY29udGVudCBpcyBub3QgaW50ZXJwcmV0ZWQgYXMgWUFNTCwgYnV0IHRyZWF0ZWQgYXMgbGl0ZXJhbCBzdHJpbmcgaW5zdGVhZC5cbkF0IGxlYXN0IG9uZSBvZiBWYWx1ZSBhbmQgVmVyYmF0aW0gbXVzdCBiZSBlbXB0eS4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwic2Nhbm5lciI6eyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIGZvciB0aGUgU2Nhbm5lciBjb21wb25lbnQsIHdoaWNoIGlzIHJlc3BvbnNpYmxlIGZvciB2dWxuZXJhYmlsaXR5IHNjYW5uaW5nIG9mIGNvbnRhaW5lclxuaW1hZ2VzLiIsInByb3BlcnRpZXMiOnsiYW5hbHl6ZXIiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBwZXJ0YWluaW5nIHRvIHRoZSBhbmFseXplciBkZXBsb3ltZW50LCBzdWNoIGFzIGZvciBhdXRvc2NhbGluZy4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RBbGlhc2VzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXMgaG9sZHMgdGhlIG1hcHBpbmcgYmV0d2VlbiBJUCBhbmQgaG9zdG5hbWVzIHRoYXQgd2lsbCBiZSBpbmplY3RlZCBhcyBhbiBlbnRyeSBpbiB0aGVcbnBvZCdzIGhvc3RzIGZpbGUuIiwicHJvcGVydGllcyI6eyJob3N0bmFtZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0bmFtZXMgZm9yIHRoZSBhYm92ZSBJUCBhZGRyZXNzLiIsIml0ZW1zIjp7InR5cGUiOiJzdHJpbmcifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6ImF0b21pYyJ9LCJpcCI6eyJkZXNjcmlwdGlvbiI6IklQIGFkZHJlc3Mgb2YgdGhlIGhvc3QgZmlsZSBlbnRyeS4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJpcCJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJub2RlU2VsZWN0b3IiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsidHlwZSI6InN0cmluZyJ9LCJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJ0eXBlIjoib2JqZWN0In0sInJlc291cmNlcyI6eyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwicHJvcGVydGllcyI6eyJjbGFpbXMiOnsiZGVzY3JpcHRpb24iOiJDbGFpbXMgbGlzdHMgdGhlIG5hbWVzIG9mIHJlc291cmNlcywgZGVmaW5lZCBpbiBzcGVjLnJlc291cmNlQ2xhaW1zLFxudGhhdCBhcmUgdXNlZCBieSB0aGlzIGNvbnRhaW5lci5cblxuVGhpcyBmaWVsZCBkZXBlbmRzIG9uIHRoZVxuRHluYW1pY1Jlc291cmNlQWxsb2NhdGlvbiBmZWF0dXJlIGdhdGUuXG5cblRoaXMgZmllbGQgaXMgaW1tdXRhYmxlLiBJdCBjYW4gb25seSBiZSBzZXQgZm9yIGNvbnRhaW5lcnMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJSZXNvdXJjZUNsYWltIHJlZmVyZW5jZXMgb25lIGVudHJ5IGluIFBvZFNwZWMuUmVzb3VyY2VDbGFpbXMuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTmFtZSBtdXN0IG1hdGNoIHRoZSBuYW1lIG9mIG9uZSBlbnRyeSBpbiBwb2Quc3BlYy5yZXNvdXJjZUNsYWltcyBvZlxudGhlIFBvZCB3aGVyZSB0aGlzIGZpZWxkIGlzIHVzZWQuIEl0IG1ha2VzIHRoYXQgcmVzb3VyY2UgYXZhaWxhYmxlXG5pbnNpZGUgYSBjb250YWluZXIuIiwidHlwZSI6InN0cmluZyJ9LCJyZXF1ZXN0Ijp7ImRlc2NyaXB0aW9uIjoiUmVxdWVzdCBpcyB0aGUgbmFtZSBjaG9zZW4gZm9yIGEgcmVxdWVzdCBpbiB0aGUgcmVmZXJlbmNlZCBjbGFpbS5cbklmIGVtcHR5LCBldmVyeXRoaW5nIGZyb20gdGhlIGNsYWltIGlzIG1hZGUgYXZhaWxhYmxlLCBvdGhlcndpc2Vcbm9ubHkgdGhlIHJlc3VsdCBvZiB0aGlzIHJlcXVlc3QuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LW1hcC1rZXlzIjpbIm5hbWUiXSwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6Im1hcCJ9LCJsaW1pdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiTGltaXRzIGRlc2NyaWJlcyB0aGUgbWF4aW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgYWxsb3dlZC5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9LCJyZXF1ZXN0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJSZXF1ZXN0cyBkZXNjcmliZXMgdGhlIG1pbmltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIHJlcXVpcmVkLlxuSWYgUmVxdWVzdHMgaXMgb21pdHRlZCBmb3IgYSBjb250YWluZXIsIGl0IGRlZmF1bHRzIHRvIExpbWl0cyBpZiB0aGF0IGlzIGV4cGxpY2l0bHkgc3BlY2lmaWVkLFxub3RoZXJ3aXNlIHRvIGFuIGltcGxlbWVudGF0aW9uLWRlZmluZWQgdmFsdWUuIFJlcXVlc3RzIGNhbm5vdCBleGNlZWQgTGltaXRzLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sInNjYWxpbmciOnsiZGVzY3JpcHRpb24iOiJDb250cm9scyB0aGUgbnVtYmVyIG9mIGFuYWx5emVyIHJlcGxpY2FzIGFuZCBhdXRvc2NhbGluZy4iLCJwcm9wZXJ0aWVzIjp7ImF1dG9TY2FsaW5nIjp7ImRlZmF1bHQiOiJFbmFibGVkIiwiZGVzY3JpcHRpb24iOiJXaGVuIGVuYWJsZWQsIHRoZSBudW1iZXIgb2YgY29tcG9uZW50IHJlcGxpY2FzIGlzIG1hbmFnZWQgZHluYW1pY2FsbHkgYmFzZWQgb24gdGhlIGxvYWQsIHdpdGhpbiB0aGUgbGltaXRzXG5zcGVjaWZpZWQgYmVsb3cuIiwiZW51bSI6WyJFbmFibGVkIiwiRGlzYWJsZWQiXSwidHlwZSI6InN0cmluZyJ9LCJtYXhSZXBsaWNhcyI6eyJkZWZhdWx0Ijo1LCJmb3JtYXQiOiJpbnQzMiIsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn0sIm1pblJlcGxpY2FzIjp7ImRlZmF1bHQiOjIsImZvcm1hdCI6ImludDMyIiwibWluaW11bSI6MSwidHlwZSI6ImludGVnZXIifSwicmVwbGljYXMiOnsiZGVmYXVsdCI6MywiZGVzY3JpcHRpb24iOiJXaGVuIGF1dG9zY2FsaW5nIGlzIGRpc2FibGVkLCB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIHdpbGwgYWx3YXlzIGJlIGNvbmZpZ3VyZWQgdG8gbWF0Y2ggdGhpcyB2YWx1ZS4iLCJmb3JtYXQiOiJpbnQzMiIsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn19LCJ0eXBlIjoib2JqZWN0In0sInRvbGVyYXRpb25zIjp7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJUaGUgcG9kIHRoaXMgVG9sZXJhdGlvbiBpcyBhdHRhY2hlZCB0byB0b2xlcmF0ZXMgYW55IHRhaW50IHRoYXQgbWF0Y2hlc1xudGhlIHRyaXBsZSBcdTAwM2NrZXksdmFsdWUsZWZmZWN0XHUwMDNlIHVzaW5nIHRoZSBtYXRjaGluZyBvcGVyYXRvciBcdTAwM2NvcGVyYXRvclx1MDAzZS4iLCJwcm9wZXJ0aWVzIjp7ImVmZmVjdCI6eyJkZXNjcmlwdGlvbiI6IkVmZmVjdCBpbmRpY2F0ZXMgdGhlIHRhaW50IGVmZmVjdCB0byBtYXRjaC4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGVmZmVjdHMuXG5XaGVuIHNwZWNpZmllZCwgYWxsb3dlZCB2YWx1ZXMgYXJlIE5vU2NoZWR1bGUsIFByZWZlck5vU2NoZWR1bGUgYW5kIE5vRXhlY3V0ZS4iLCJ0eXBlIjoic3RyaW5nIn0sImtleSI6eyJkZXNjcmlwdGlvbiI6IktleSBpcyB0aGUgdGFpbnQga2V5IHRoYXQgdGhlIHRvbGVyYXRpb24gYXBwbGllcyB0by4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGtleXMuXG5JZiB0aGUga2V5IGlzIGVtcHR5LCBvcGVyYXRvciBtdXN0IGJlIEV4aXN0czsgdGhpcyBjb21iaW5hdGlvbiBtZWFucyB0byBtYXRjaCBhbGwgdmFsdWVzIGFuZCBhbGwga2V5cy4iLCJ0eXBlIjoic3RyaW5nIn0sIm9wZXJhdG9yIjp7ImRlc2NyaXB0aW9uIjoiT3BlcmF0b3IgcmVwcmVzZW50cyBhIGtleSdzIHJlbGF0aW9uc2hpcCB0byB0aGUgdmFsdWUuXG5WYWxpZCBvcGVyYXRvcnMgYXJlIEV4aXN0cyBhbmQgRXF1YWwuIERlZmF1bHRzIHRvIEVxdWFsLlxuRXhpc3RzIGlzIGVxdWl2YWxlbnQgdG8gd2lsZGNhcmQgZm9yIHZhbHVlLCBzbyB0aGF0IGEgcG9kIGNhblxudG9sZXJhdGUgYWxsIHRhaW50cyBvZiBhIHBhcnRpY3VsYXIgY2F0ZWdvcnkuIiwidHlwZSI6InN0cmluZyJ9LCJ0b2xlcmF0aW9uU2Vjb25kcyI6eyJkZXNjcmlwdGlvbiI6IlRvbGVyYXRpb25TZWNvbmRzIHJlcHJlc2VudHMgdGhlIHBlcmlvZCBvZiB0aW1lIHRoZSB0b2xlcmF0aW9uICh3aGljaCBtdXN0IGJlXG5vZiBlZmZlY3QgTm9FeGVjdXRlLCBvdGhlcndpc2UgdGhpcyBmaWVsZCBpcyBpZ25vcmVkKSB0b2xlcmF0ZXMgdGhlIHRhaW50LiBCeSBkZWZhdWx0LFxuaXQgaXMgbm90IHNldCwgd2hpY2ggbWVhbnMgdG9sZXJhdGUgdGhlIHRhaW50IGZvcmV2ZXIgKGRvIG5vdCBldmljdCkuIFplcm8gYW5kXG5uZWdhdGl2ZSB2YWx1ZXMgd2lsbCBiZSB0cmVhdGVkIGFzIDAgKGV2aWN0IGltbWVkaWF0ZWx5KSBieSB0aGUgc3lzdGVtLiIsImZvcm1hdCI6ImludDY0IiwidHlwZSI6ImludGVnZXIifSwidmFsdWUiOnsiZGVzY3JpcHRpb24iOiJWYWx1ZSBpcyB0aGUgdGFpbnQgdmFsdWUgdGhlIHRvbGVyYXRpb24gbWF0Y2hlcyB0by5cbklmIHRoZSBvcGVyYXRvciBpcyBFeGlzdHMsIHRoZSB2YWx1ZSBzaG91bGQgYmUgZW1wdHksIG90aGVyd2lzZSBqdXN0IGEgcmVndWxhciBzdHJpbmcuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifX0sInR5cGUiOiJvYmplY3QifSwiZGIiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBwZXJ0YWluaW5nIHRvIHRoZSBkYXRhYmFzZSB1c2VkIGJ5IHRoZSBSZWQgSGF0IEFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHkgU2Nhbm5lci4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RBbGlhc2VzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXMgaG9sZHMgdGhlIG1hcHBpbmcgYmV0d2VlbiBJUCBhbmQgaG9zdG5hbWVzIHRoYXQgd2lsbCBiZSBpbmplY3RlZCBhcyBhbiBlbnRyeSBpbiB0aGVcbnBvZCdzIGhvc3RzIGZpbGUuIiwicHJvcGVydGllcyI6eyJob3N0bmFtZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0bmFtZXMgZm9yIHRoZSBhYm92ZSBJUCBhZGRyZXNzLiIsIml0ZW1zIjp7InR5cGUiOiJzdHJpbmcifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6ImF0b21pYyJ9LCJpcCI6eyJkZXNjcmlwdGlvbiI6IklQIGFkZHJlc3Mgb2YgdGhlIGhvc3QgZmlsZSBlbnRyeS4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJpcCJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJub2RlU2VsZWN0b3IiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsidHlwZSI6InN0cmluZyJ9LCJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJ0eXBlIjoib2JqZWN0In0sInJlc291cmNlcyI6eyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwicHJvcGVydGllcyI6eyJjbGFpbXMiOnsiZGVzY3JpcHRpb24iOiJDbGFpbXMgbGlzdHMgdGhlIG5hbWVzIG9mIHJlc291cmNlcywgZGVmaW5lZCBpbiBzcGVjLnJlc291cmNlQ2xhaW1zLFxudGhhdCBhcmUgdXNlZCBieSB0aGlzIGNvbnRhaW5lci5cblxuVGhpcyBmaWVsZCBkZXBlbmRzIG9uIHRoZVxuRHluYW1pY1Jlc291cmNlQWxsb2NhdGlvbiBmZWF0dXJlIGdhdGUuXG5cblRoaXMgZmllbGQgaXMgaW1tdXRhYmxlLiBJdCBjYW4gb25seSBiZSBzZXQgZm9yIGNvbnRhaW5lcnMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJSZXNvdXJjZUNsYWltIHJlZmVyZW5jZXMgb25lIGVudHJ5IGluIFBvZFNwZWMuUmVzb3VyY2VDbGFpbXMuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTmFtZSBtdXN0IG1hdGNoIHRoZSBuYW1lIG9mIG9uZSBlbnRyeSBpbiBwb2Quc3BlYy5yZXNvdXJjZUNsYWltcyBvZlxudGhlIFBvZCB3aGVyZSB0aGlzIGZpZWxkIGlzIHVzZWQuIEl0IG1ha2VzIHRoYXQgcmVzb3VyY2UgYXZhaWxhYmxlXG5pbnNpZGUgYSBjb250YWluZXIuIiwidHlwZSI6InN0cmluZyJ9LCJyZXF1ZXN0Ijp7ImRlc2NyaXB0aW9uIjoiUmVxdWVzdCBpcyB0aGUgbmFtZSBjaG9zZW4gZm9yIGEgcmVxdWVzdCBpbiB0aGUgcmVmZXJlbmNlZCBjbGFpbS5cbklmIGVtcHR5LCBldmVyeXRoaW5nIGZyb20gdGhlIGNsYWltIGlzIG1hZGUgYXZhaWxhYmxlLCBvdGhlcndpc2Vcbm9ubHkgdGhlIHJlc3VsdCBvZiB0aGlzIHJlcXVlc3QuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LW1hcC1rZXlzIjpbIm5hbWUiXSwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6Im1hcCJ9LCJsaW1pdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiTGltaXRzIGRlc2NyaWJlcyB0aGUgbWF4aW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgYWxsb3dlZC5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9LCJyZXF1ZXN0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJSZXF1ZXN0cyBkZXNjcmliZXMgdGhlIG1pbmltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIHJlcXVpcmVkLlxuSWYgUmVxdWVzdHMgaXMgb21pdHRlZCBmb3IgYSBjb250YWluZXIsIGl0IGRlZmF1bHRzIHRvIExpbWl0cyBpZiB0aGF0IGlzIGV4cGxpY2l0bHkgc3BlY2lmaWVkLFxub3RoZXJ3aXNlIHRvIGFuIGltcGxlbWVudGF0aW9uLWRlZmluZWQgdmFsdWUuIFJlcXVlc3RzIGNhbm5vdCBleGNlZWQgTGltaXRzLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sInRvbGVyYXRpb25zIjp7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJUaGUgcG9kIHRoaXMgVG9sZXJhdGlvbiBpcyBhdHRhY2hlZCB0byB0b2xlcmF0ZXMgYW55IHRhaW50IHRoYXQgbWF0Y2hlc1xudGhlIHRyaXBsZSBcdTAwM2NrZXksdmFsdWUsZWZmZWN0XHUwMDNlIHVzaW5nIHRoZSBtYXRjaGluZyBvcGVyYXRvciBcdTAwM2NvcGVyYXRvclx1MDAzZS4iLCJwcm9wZXJ0aWVzIjp7ImVmZmVjdCI6eyJkZXNjcmlwdGlvbiI6IkVmZmVjdCBpbmRpY2F0ZXMgdGhlIHRhaW50IGVmZmVjdCB0byBtYXRjaC4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGVmZmVjdHMuXG5XaGVuIHNwZWNpZmllZCwgYWxsb3dlZCB2YWx1ZXMgYXJlIE5vU2NoZWR1bGUsIFByZWZlck5vU2NoZWR1bGUgYW5kIE5vRXhlY3V0ZS4iLCJ0eXBlIjoic3RyaW5nIn0sImtleSI6eyJkZXNjcmlwdGlvbiI6IktleSBpcyB0aGUgdGFpbnQga2V5IHRoYXQgdGhlIHRvbGVyYXRpb24gYXBwbGllcyB0by4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGtleXMuXG5JZiB0aGUga2V5IGlzIGVtcHR5LCBvcGVyYXRvciBtdXN0IGJlIEV4aXN0czsgdGhpcyBjb21iaW5hdGlvbiBtZWFucyB0byBtYXRjaCBhbGwgdmFsdWVzIGFuZCBhbGwga2V5cy4iLCJ0eXBlIjoic3RyaW5nIn0sIm9wZXJhdG9yIjp7ImRlc2NyaXB0aW9uIjoiT3BlcmF0b3IgcmVwcmVzZW50cyBhIGtleSdzIHJlbGF0aW9uc2hpcCB0byB0aGUgdmFsdWUuXG5WYWxpZCBvcGVyYXRvcnMgYXJlIEV4aXN0cyBhbmQgRXF1YWwuIERlZmF1bHRzIHRvIEVxdWFsLlxuRXhpc3RzIGlzIGVxdWl2YWxlbnQgdG8gd2lsZGNhcmQgZm9yIHZhbHVlLCBzbyB0aGF0IGEgcG9kIGNhblxudG9sZXJhdGUgYWxsIHRhaW50cyBvZiBhIHBhcnRpY3VsYXIgY2F0ZWdvcnkuIiwidHlwZSI6InN0cmluZyJ9LCJ0b2xlcmF0aW9uU2Vjb25kcyI6eyJkZXNjcmlwdGlvbiI6IlRvbGVyYXRpb25TZWNvbmRzIHJlcHJlc2VudHMgdGhlIHBlcmlvZCBvZiB0aW1lIHRoZSB0b2xlcmF0aW9uICh3aGljaCBtdXN0IGJlXG5vZiBlZmZlY3QgTm9FeGVjdXRlLCBvdGhlcndpc2UgdGhpcyBmaWVsZCBpcyBpZ25vcmVkKSB0b2xlcmF0ZXMgdGhlIHRhaW50LiBCeSBkZWZhdWx0LFxuaXQgaXMgbm90IHNldCwgd2hpY2ggbWVhbnMgdG9sZXJhdGUgdGhlIHRhaW50IGZvcmV2ZXIgKGRvIG5vdCBldmljdCkuIFplcm8gYW5kXG5uZWdhdGl2ZSB2YWx1ZXMgd2lsbCBiZSB0cmVhdGVkIGFzIDAgKGV2aWN0IGltbWVkaWF0ZWx5KSBieSB0aGUgc3lzdGVtLiIsImZvcm1hdCI6ImludDY0IiwidHlwZSI6ImludGVnZXIifSwidmFsdWUiOnsiZGVzY3JpcHRpb24iOiJWYWx1ZSBpcyB0aGUgdGFpbnQgdmFsdWUgdGhlIHRvbGVyYXRpb24gbWF0Y2hlcyB0by5cbklmIHRoZSBvcGVyYXRvciBpcyBFeGlzdHMsIHRoZSB2YWx1ZSBzaG91bGQgYmUgZW1wdHksIG90aGVyd2lzZSBqdXN0IGEgcmVndWxhciBzdHJpbmcuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifX0sInR5cGUiOiJvYmplY3QifSwibW9uaXRvcmluZyI6eyJkZXNjcmlwdGlvbiI6IkNvbmZpZ3VyZXMgbW9uaXRvcmluZyBlbmRwb2ludCBmb3IgU2Nhbm5lci4gVGhlIG1vbml0b3JpbmcgZW5kcG9pbnRcbmFsbG93cyBvdGhlciBzZXJ2aWNlcyB0byBjb2xsZWN0IG1ldHJpY3MgZnJvbSBTY2FubmVyLCBwcm92aWRlZCBpblxuUHJvbWV0aGV1cyBjb21wYXRpYmxlIGZvcm1hdC4iLCJwcm9wZXJ0aWVzIjp7ImV4cG9zZUVuZHBvaW50Ijp7ImRlc2NyaXB0aW9uIjoiRXhwb3NlIHRoZSBtb25pdG9yaW5nIGVuZHBvaW50LiBBIG5ldyBzZXJ2aWNlLCBcIm1vbml0b3JpbmdcIixcbndpdGggcG9ydCA5MDkwLCB3aWxsIGJlIGNyZWF0ZWQgYXMgd2VsbCBhcyBhIG5ldHdvcmsgcG9saWN5IGFsbG93aW5nXG5pbmJvdW5kIGNvbm5lY3Rpb25zIHRvIHRoZSBwb3J0LiIsImVudW0iOlsiRW5hYmxlZCIsIkRpc2FibGVkIl0sInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwic2Nhbm5lckNvbXBvbmVudCI6eyJkZXNjcmlwdGlvbiI6IklmIHlvdSBkbyBub3Qgd2FudCB0byBkZXBsb3kgdGhlIFJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSBTY2FubmVyLCB5b3UgY2FuIGRpc2FibGUgaXQgaGVyZVxuKG5vdCByZWNvbW1lbmRlZCkuIEJ5IGRlZmF1bHQsIHRoZSBzY2FubmVyIGlzIGVuYWJsZWQuXG5JZiB5b3UgZG8gc28sIGFsbCB0aGUgc2V0dGluZ3MgaW4gdGhpcyBzZWN0aW9uIHdpbGwgaGF2ZSBubyBlZmZlY3QuIiwiZW51bSI6WyJFbmFibGVkIiwiRGlzYWJsZWQiXSwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJzY2FubmVyVjQiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIFNjYW5uZXIgVjQgY29tcG9uZW50LCB3aGljaCBjYW4gcnVuIGluIGFkZGl0aW9uIHRvIHRoZSBwcmV2aW91c2x5IGV4aXN0aW5nIFNjYW5uZXIgY29tcG9uZW50cyIsInByb3BlcnRpZXMiOnsiZGIiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBwZXJ0YWluaW5nIHRvIHRoZSBEQiBkZXBsb3ltZW50LiIsInByb3BlcnRpZXMiOnsiaG9zdEFsaWFzZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhcyBob2xkcyB0aGUgbWFwcGluZyBiZXR3ZWVuIElQIGFuZCBob3N0bmFtZXMgdGhhdCB3aWxsIGJlIGluamVjdGVkIGFzIGFuIGVudHJ5IGluIHRoZVxucG9kJ3MgaG9zdHMgZmlsZS4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RuYW1lcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RuYW1lcyBmb3IgdGhlIGFib3ZlIElQIGFkZHJlc3MuIiwiaXRlbXMiOnsidHlwZSI6InN0cmluZyJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoiYXRvbWljIn0sImlwIjp7ImRlc2NyaXB0aW9uIjoiSVAgYWRkcmVzcyBvZiB0aGUgaG9zdCBmaWxlIGVudHJ5LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbImlwIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sIm5vZGVTZWxlY3RvciI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJ0eXBlIjoic3RyaW5nIn0sImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIGEgbm9kZSBzZWxlY3RvciBoZXJlLiIsInR5cGUiOiJvYmplY3QifSwicGVyc2lzdGVuY2UiOnsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIGhvdyBTY2FubmVyIFY0IHNob3VsZCBzdG9yZSBpdHMgcGVyc2lzdGVudCBkYXRhLlxuWW91IGNhbiB1c2UgYSBwZXJzaXN0ZW50IHZvbHVtZSBjbGFpbSAodGhlIHJlY29tbWVuZGVkIGRlZmF1bHQpLCBhIGhvc3QgcGF0aCxcbm9yIGFuIGVtcHR5RGlyIHZvbHVtZSBpZiBTY2FubmVyIFY0IGlzIHJ1bm5pbmcgb24gYSBzZWN1cmVkIGNsdXN0ZXIgd2l0aG91dCBkZWZhdWx0IFN0b3JhZ2VDbGFzcy4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RQYXRoIjp7ImRlc2NyaXB0aW9uIjoiU3RvcmVzIHBlcnNpc3RlbnQgZGF0YSBvbiBhIGRpcmVjdG9yeSBvbiB0aGUgaG9zdC4gVGhpcyBpcyBub3QgcmVjb21tZW5kZWQsIGFuZCBzaG91bGQgb25seVxuYmUgdXNlZCB0b2dldGhlciB3aXRoIGEgbm9kZSBzZWxlY3RvciAob25seSBhdmFpbGFibGUgaW4gWUFNTCB2aWV3KS4iLCJwcm9wZXJ0aWVzIjp7InBhdGgiOnsiZGVzY3JpcHRpb24iOiJUaGUgcGF0aCBvbiB0aGUgaG9zdCBydW5uaW5nIENlbnRyYWwuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJwZXJzaXN0ZW50Vm9sdW1lQ2xhaW0iOnsiZGVzY3JpcHRpb24iOiJVc2VzIGEgS3ViZXJuZXRlcyBwZXJzaXN0ZW50IHZvbHVtZSBjbGFpbSAoUFZDKSB0byBtYW5hZ2UgdGhlIHN0b3JhZ2UgbG9jYXRpb24gb2YgcGVyc2lzdGVudCBkYXRhLlxuUmVjb21tZW5kZWQgZm9yIG1vc3QgdXNlcnMuIiwicHJvcGVydGllcyI6eyJjbGFpbU5hbWUiOnsiZGVmYXVsdCI6InNjYW5uZXItdjQtZGIiLCJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSBQVkMgdG8gbWFuYWdlIHBlcnNpc3RlbnQgZGF0YS4gSWYgbm8gUFZDIHdpdGggdGhlIGdpdmVuIG5hbWUgZXhpc3RzLCBpdCB3aWxsIGJlXG5jcmVhdGVkLiBEZWZhdWx0cyB0byBcInNjYW5uZXItdjQtZGJcIiBpZiBub3Qgc2V0LiIsInR5cGUiOiJzdHJpbmcifSwic2l6ZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBzaXplIG9mIHRoZSBwZXJzaXN0ZW50IHZvbHVtZSB3aGVuIGNyZWF0ZWQgdGhyb3VnaCB0aGUgY2xhaW0uIElmIGEgY2xhaW0gd2FzIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCxcbnRoaXMgY2FuIGJlIHVzZWQgYWZ0ZXIgdGhlIGluaXRpYWwgZGVwbG95bWVudCB0byByZXNpemUgKGdyb3cpIHRoZSB2b2x1bWUgKG9ubHkgc3VwcG9ydGVkIGJ5IHNvbWVcbnN0b3JhZ2UgY2xhc3MgY29udHJvbGxlcnMpLiIsInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsInR5cGUiOiJzdHJpbmcifSwic3RvcmFnZUNsYXNzTmFtZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSBzdG9yYWdlIGNsYXNzIHRvIHVzZSBmb3IgdGhlIFBWQy4gSWYgeW91ciBjbHVzdGVyIGlzIG5vdCBjb25maWd1cmVkIHdpdGggYSBkZWZhdWx0IHN0b3JhZ2VcbmNsYXNzLCB5b3UgbXVzdCBzZWxlY3QgYSB2YWx1ZSBoZXJlLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwicmVzb3VyY2VzIjp7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJwcm9wZXJ0aWVzIjp7ImNsYWltcyI6eyJkZXNjcmlwdGlvbiI6IkNsYWltcyBsaXN0cyB0aGUgbmFtZXMgb2YgcmVzb3VyY2VzLCBkZWZpbmVkIGluIHNwZWMucmVzb3VyY2VDbGFpbXMsXG50aGF0IGFyZSB1c2VkIGJ5IHRoaXMgY29udGFpbmVyLlxuXG5UaGlzIGZpZWxkIGRlcGVuZHMgb24gdGhlXG5EeW5hbWljUmVzb3VyY2VBbGxvY2F0aW9uIGZlYXR1cmUgZ2F0ZS5cblxuVGhpcyBmaWVsZCBpcyBpbW11dGFibGUuIEl0IGNhbiBvbmx5IGJlIHNldCBmb3IgY29udGFpbmVycy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlQ2xhaW0gcmVmZXJlbmNlcyBvbmUgZW50cnkgaW4gUG9kU3BlYy5SZXNvdXJjZUNsYWltcy4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJOYW1lIG11c3QgbWF0Y2ggdGhlIG5hbWUgb2Ygb25lIGVudHJ5IGluIHBvZC5zcGVjLnJlc291cmNlQ2xhaW1zIG9mXG50aGUgUG9kIHdoZXJlIHRoaXMgZmllbGQgaXMgdXNlZC4gSXQgbWFrZXMgdGhhdCByZXNvdXJjZSBhdmFpbGFibGVcbmluc2lkZSBhIGNvbnRhaW5lci4iLCJ0eXBlIjoic3RyaW5nIn0sInJlcXVlc3QiOnsiZGVzY3JpcHRpb24iOiJSZXF1ZXN0IGlzIHRoZSBuYW1lIGNob3NlbiBmb3IgYSByZXF1ZXN0IGluIHRoZSByZWZlcmVuY2VkIGNsYWltLlxuSWYgZW1wdHksIGV2ZXJ5dGhpbmcgZnJvbSB0aGUgY2xhaW0gaXMgbWFkZSBhdmFpbGFibGUsIG90aGVyd2lzZVxub25seSB0aGUgcmVzdWx0IG9mIHRoaXMgcmVxdWVzdC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtbWFwLWtleXMiOlsibmFtZSJdLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoibWFwIn0sImxpbWl0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJMaW1pdHMgZGVzY3JpYmVzIHRoZSBtYXhpbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyBhbGxvd2VkLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In0sInJlcXVlc3RzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IlJlcXVlc3RzIGRlc2NyaWJlcyB0aGUgbWluaW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgcmVxdWlyZWQuXG5JZiBSZXF1ZXN0cyBpcyBvbWl0dGVkIGZvciBhIGNvbnRhaW5lciwgaXQgZGVmYXVsdHMgdG8gTGltaXRzIGlmIHRoYXQgaXMgZXhwbGljaXRseSBzcGVjaWZpZWQsXG5vdGhlcndpc2UgdG8gYW4gaW1wbGVtZW50YXRpb24tZGVmaW5lZCB2YWx1ZS4gUmVxdWVzdHMgY2Fubm90IGV4Y2VlZCBMaW1pdHMuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwidG9sZXJhdGlvbnMiOnsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwb2QgdGhpcyBUb2xlcmF0aW9uIGlzIGF0dGFjaGVkIHRvIHRvbGVyYXRlcyBhbnkgdGFpbnQgdGhhdCBtYXRjaGVzXG50aGUgdHJpcGxlIFx1MDAzY2tleSx2YWx1ZSxlZmZlY3RcdTAwM2UgdXNpbmcgdGhlIG1hdGNoaW5nIG9wZXJhdG9yIFx1MDAzY29wZXJhdG9yXHUwMDNlLiIsInByb3BlcnRpZXMiOnsiZWZmZWN0Ijp7ImRlc2NyaXB0aW9uIjoiRWZmZWN0IGluZGljYXRlcyB0aGUgdGFpbnQgZWZmZWN0IHRvIG1hdGNoLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQgZWZmZWN0cy5cbldoZW4gc3BlY2lmaWVkLCBhbGxvd2VkIHZhbHVlcyBhcmUgTm9TY2hlZHVsZSwgUHJlZmVyTm9TY2hlZHVsZSBhbmQgTm9FeGVjdXRlLiIsInR5cGUiOiJzdHJpbmcifSwia2V5Ijp7ImRlc2NyaXB0aW9uIjoiS2V5IGlzIHRoZSB0YWludCBrZXkgdGhhdCB0aGUgdG9sZXJhdGlvbiBhcHBsaWVzIHRvLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQga2V5cy5cbklmIHRoZSBrZXkgaXMgZW1wdHksIG9wZXJhdG9yIG11c3QgYmUgRXhpc3RzOyB0aGlzIGNvbWJpbmF0aW9uIG1lYW5zIHRvIG1hdGNoIGFsbCB2YWx1ZXMgYW5kIGFsbCBrZXlzLiIsInR5cGUiOiJzdHJpbmcifSwib3BlcmF0b3IiOnsiZGVzY3JpcHRpb24iOiJPcGVyYXRvciByZXByZXNlbnRzIGEga2V5J3MgcmVsYXRpb25zaGlwIHRvIHRoZSB2YWx1ZS5cblZhbGlkIG9wZXJhdG9ycyBhcmUgRXhpc3RzIGFuZCBFcXVhbC4gRGVmYXVsdHMgdG8gRXF1YWwuXG5FeGlzdHMgaXMgZXF1aXZhbGVudCB0byB3aWxkY2FyZCBmb3IgdmFsdWUsIHNvIHRoYXQgYSBwb2QgY2FuXG50b2xlcmF0ZSBhbGwgdGFpbnRzIG9mIGEgcGFydGljdWxhciBjYXRlZ29yeS4iLCJ0eXBlIjoic3RyaW5nIn0sInRvbGVyYXRpb25TZWNvbmRzIjp7ImRlc2NyaXB0aW9uIjoiVG9sZXJhdGlvblNlY29uZHMgcmVwcmVzZW50cyB0aGUgcGVyaW9kIG9mIHRpbWUgdGhlIHRvbGVyYXRpb24gKHdoaWNoIG11c3QgYmVcbm9mIGVmZmVjdCBOb0V4ZWN1dGUsIG90aGVyd2lzZSB0aGlzIGZpZWxkIGlzIGlnbm9yZWQpIHRvbGVyYXRlcyB0aGUgdGFpbnQuIEJ5IGRlZmF1bHQsXG5pdCBpcyBub3Qgc2V0LCB3aGljaCBtZWFucyB0b2xlcmF0ZSB0aGUgdGFpbnQgZm9yZXZlciAoZG8gbm90IGV2aWN0KS4gWmVybyBhbmRcbm5lZ2F0aXZlIHZhbHVlcyB3aWxsIGJlIHRyZWF0ZWQgYXMgMCAoZXZpY3QgaW1tZWRpYXRlbHkpIGJ5IHRoZSBzeXN0ZW0uIiwiZm9ybWF0IjoiaW50NjQiLCJ0eXBlIjoiaW50ZWdlciJ9LCJ2YWx1ZSI6eyJkZXNjcmlwdGlvbiI6IlZhbHVlIGlzIHRoZSB0YWludCB2YWx1ZSB0aGUgdG9sZXJhdGlvbiBtYXRjaGVzIHRvLlxuSWYgdGhlIG9wZXJhdG9yIGlzIEV4aXN0cywgdGhlIHZhbHVlIHNob3VsZCBiZSBlbXB0eSwgb3RoZXJ3aXNlIGp1c3QgYSByZWd1bGFyIHN0cmluZy4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9fSwidHlwZSI6Im9iamVjdCJ9LCJpbmRleGVyIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcGVydGFpbmluZyB0byB0aGUgaW5kZXhlciBkZXBsb3ltZW50LiIsInByb3BlcnRpZXMiOnsiaG9zdEFsaWFzZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhcyBob2xkcyB0aGUgbWFwcGluZyBiZXR3ZWVuIElQIGFuZCBob3N0bmFtZXMgdGhhdCB3aWxsIGJlIGluamVjdGVkIGFzIGFuIGVudHJ5IGluIHRoZVxucG9kJ3MgaG9zdHMgZmlsZS4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RuYW1lcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RuYW1lcyBmb3IgdGhlIGFib3ZlIElQIGFkZHJlc3MuIiwiaXRlbXMiOnsidHlwZSI6InN0cmluZyJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoiYXRvbWljIn0sImlwIjp7ImRlc2NyaXB0aW9uIjoiSVAgYWRkcmVzcyBvZiB0aGUgaG9zdCBmaWxlIGVudHJ5LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbImlwIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sIm5vZGVTZWxlY3RvciI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJ0eXBlIjoic3RyaW5nIn0sImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIGEgbm9kZSBzZWxlY3RvciBoZXJlLiIsInR5cGUiOiJvYmplY3QifSwicmVzb3VyY2VzIjp7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJwcm9wZXJ0aWVzIjp7ImNsYWltcyI6eyJkZXNjcmlwdGlvbiI6IkNsYWltcyBsaXN0cyB0aGUgbmFtZXMgb2YgcmVzb3VyY2VzLCBkZWZpbmVkIGluIHNwZWMucmVzb3VyY2VDbGFpbXMsXG50aGF0IGFyZSB1c2VkIGJ5IHRoaXMgY29udGFpbmVyLlxuXG5UaGlzIGZpZWxkIGRlcGVuZHMgb24gdGhlXG5EeW5hbWljUmVzb3VyY2VBbGxvY2F0aW9uIGZlYXR1cmUgZ2F0ZS5cblxuVGhpcyBmaWVsZCBpcyBpbW11dGFibGUuIEl0IGNhbiBvbmx5IGJlIHNldCBmb3IgY29udGFpbmVycy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlQ2xhaW0gcmVmZXJlbmNlcyBvbmUgZW50cnkgaW4gUG9kU3BlYy5SZXNvdXJjZUNsYWltcy4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJOYW1lIG11c3QgbWF0Y2ggdGhlIG5hbWUgb2Ygb25lIGVudHJ5IGluIHBvZC5zcGVjLnJlc291cmNlQ2xhaW1zIG9mXG50aGUgUG9kIHdoZXJlIHRoaXMgZmllbGQgaXMgdXNlZC4gSXQgbWFrZXMgdGhhdCByZXNvdXJjZSBhdmFpbGFibGVcbmluc2lkZSBhIGNvbnRhaW5lci4iLCJ0eXBlIjoic3RyaW5nIn0sInJlcXVlc3QiOnsiZGVzY3JpcHRpb24iOiJSZXF1ZXN0IGlzIHRoZSBuYW1lIGNob3NlbiBmb3IgYSByZXF1ZXN0IGluIHRoZSByZWZlcmVuY2VkIGNsYWltLlxuSWYgZW1wdHksIGV2ZXJ5dGhpbmcgZnJvbSB0aGUgY2xhaW0gaXMgbWFkZSBhdmFpbGFibGUsIG90aGVyd2lzZVxub25seSB0aGUgcmVzdWx0IG9mIHRoaXMgcmVxdWVzdC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtbWFwLWtleXMiOlsibmFtZSJdLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoibWFwIn0sImxpbWl0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJMaW1pdHMgZGVzY3JpYmVzIHRoZSBtYXhpbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyBhbGxvd2VkLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In0sInJlcXVlc3RzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IlJlcXVlc3RzIGRlc2NyaWJlcyB0aGUgbWluaW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgcmVxdWlyZWQuXG5JZiBSZXF1ZXN0cyBpcyBvbWl0dGVkIGZvciBhIGNvbnRhaW5lciwgaXQgZGVmYXVsdHMgdG8gTGltaXRzIGlmIHRoYXQgaXMgZXhwbGljaXRseSBzcGVjaWZpZWQsXG5vdGhlcndpc2UgdG8gYW4gaW1wbGVtZW50YXRpb24tZGVmaW5lZCB2YWx1ZS4gUmVxdWVzdHMgY2Fubm90IGV4Y2VlZCBMaW1pdHMuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwic2NhbGluZyI6eyJkZXNjcmlwdGlvbiI6IkNvbnRyb2xzIHRoZSBudW1iZXIgb2YgcmVwbGljYXMgYW5kIGF1dG9zY2FsaW5nIGZvciB0aGlzIGNvbXBvbmVudC4iLCJwcm9wZXJ0aWVzIjp7ImF1dG9TY2FsaW5nIjp7ImRlZmF1bHQiOiJFbmFibGVkIiwiZGVzY3JpcHRpb24iOiJXaGVuIGVuYWJsZWQsIHRoZSBudW1iZXIgb2YgY29tcG9uZW50IHJlcGxpY2FzIGlzIG1hbmFnZWQgZHluYW1pY2FsbHkgYmFzZWQgb24gdGhlIGxvYWQsIHdpdGhpbiB0aGUgbGltaXRzXG5zcGVjaWZpZWQgYmVsb3cuIiwiZW51bSI6WyJFbmFibGVkIiwiRGlzYWJsZWQiXSwidHlwZSI6InN0cmluZyJ9LCJtYXhSZXBsaWNhcyI6eyJkZWZhdWx0Ijo1LCJmb3JtYXQiOiJpbnQzMiIsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn0sIm1pblJlcGxpY2FzIjp7ImRlZmF1bHQiOjIsImZvcm1hdCI6ImludDMyIiwibWluaW11bSI6MSwidHlwZSI6ImludGVnZXIifSwicmVwbGljYXMiOnsiZGVmYXVsdCI6MywiZGVzY3JpcHRpb24iOiJXaGVuIGF1dG9zY2FsaW5nIGlzIGRpc2FibGVkLCB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIHdpbGwgYWx3YXlzIGJlIGNvbmZpZ3VyZWQgdG8gbWF0Y2ggdGhpcyB2YWx1ZS4iLCJmb3JtYXQiOiJpbnQzMiIsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn19LCJ0eXBlIjoib2JqZWN0In0sInRvbGVyYXRpb25zIjp7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJUaGUgcG9kIHRoaXMgVG9sZXJhdGlvbiBpcyBhdHRhY2hlZCB0byB0b2xlcmF0ZXMgYW55IHRhaW50IHRoYXQgbWF0Y2hlc1xudGhlIHRyaXBsZSBcdTAwM2NrZXksdmFsdWUsZWZmZWN0XHUwMDNlIHVzaW5nIHRoZSBtYXRjaGluZyBvcGVyYXRvciBcdTAwM2NvcGVyYXRvclx1MDAzZS4iLCJwcm9wZXJ0aWVzIjp7ImVmZmVjdCI6eyJkZXNjcmlwdGlvbiI6IkVmZmVjdCBpbmRpY2F0ZXMgdGhlIHRhaW50IGVmZmVjdCB0byBtYXRjaC4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGVmZmVjdHMuXG5XaGVuIHNwZWNpZmllZCwgYWxsb3dlZCB2YWx1ZXMgYXJlIE5vU2NoZWR1bGUsIFByZWZlck5vU2NoZWR1bGUgYW5kIE5vRXhlY3V0ZS4iLCJ0eXBlIjoic3RyaW5nIn0sImtleSI6eyJkZXNjcmlwdGlvbiI6IktleSBpcyB0aGUgdGFpbnQga2V5IHRoYXQgdGhlIHRvbGVyYXRpb24gYXBwbGllcyB0by4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGtleXMuXG5JZiB0aGUga2V5IGlzIGVtcHR5LCBvcGVyYXRvciBtdXN0IGJlIEV4aXN0czsgdGhpcyBjb21iaW5hdGlvbiBtZWFucyB0byBtYXRjaCBhbGwgdmFsdWVzIGFuZCBhbGwga2V5cy4iLCJ0eXBlIjoic3RyaW5nIn0sIm9wZXJhdG9yIjp7ImRlc2NyaXB0aW9uIjoiT3BlcmF0b3IgcmVwcmVzZW50cyBhIGtleSdzIHJlbGF0aW9uc2hpcCB0byB0aGUgdmFsdWUuXG5WYWxpZCBvcGVyYXRvcnMgYXJlIEV4aXN0cyBhbmQgRXF1YWwuIERlZmF1bHRzIHRvIEVxdWFsLlxuRXhpc3RzIGlzIGVxdWl2YWxlbnQgdG8gd2lsZGNhcmQgZm9yIHZhbHVlLCBzbyB0aGF0IGEgcG9kIGNhblxudG9sZXJhdGUgYWxsIHRhaW50cyBvZiBhIHBhcnRpY3VsYXIgY2F0ZWdvcnkuIiwidHlwZSI6InN0cmluZyJ9LCJ0b2xlcmF0aW9uU2Vjb25kcyI6eyJkZXNjcmlwdGlvbiI6IlRvbGVyYXRpb25TZWNvbmRzIHJlcHJlc2VudHMgdGhlIHBlcmlvZCBvZiB0aW1lIHRoZSB0b2xlcmF0aW9uICh3aGljaCBtdXN0IGJlXG5vZiBlZmZlY3QgTm9FeGVjdXRlLCBvdGhlcndpc2UgdGhpcyBmaWVsZCBpcyBpZ25vcmVkKSB0b2xlcmF0ZXMgdGhlIHRhaW50LiBCeSBkZWZhdWx0LFxuaXQgaXMgbm90IHNldCwgd2hpY2ggbWVhbnMgdG9sZXJhdGUgdGhlIHRhaW50IGZvcmV2ZXIgKGRvIG5vdCBldmljdCkuIFplcm8gYW5kXG5uZWdhdGl2ZSB2YWx1ZXMgd2lsbCBiZSB0cmVhdGVkIGFzIDAgKGV2aWN0IGltbWVkaWF0ZWx5KSBieSB0aGUgc3lzdGVtLiIsImZvcm1hdCI6ImludDY0IiwidHlwZSI6ImludGVnZXIifSwidmFsdWUiOnsiZGVzY3JpcHRpb24iOiJWYWx1ZSBpcyB0aGUgdGFpbnQgdmFsdWUgdGhlIHRvbGVyYXRpb24gbWF0Y2hlcyB0by5cbklmIHRoZSBvcGVyYXRvciBpcyBFeGlzdHMsIHRoZSB2YWx1ZSBzaG91bGQgYmUgZW1wdHksIG90aGVyd2lzZSBqdXN0IGEgcmVndWxhciBzdHJpbmcuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifX0sInR5cGUiOiJvYmplY3QifSwibWF0Y2hlciI6eyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHBlcnRhaW5pbmcgdG8gdGhlIG1hdGNoZXIgZGVwbG95bWVudC4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RBbGlhc2VzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXMgaG9sZHMgdGhlIG1hcHBpbmcgYmV0d2VlbiBJUCBhbmQgaG9zdG5hbWVzIHRoYXQgd2lsbCBiZSBpbmplY3RlZCBhcyBhbiBlbnRyeSBpbiB0aGVcbnBvZCdzIGhvc3RzIGZpbGUuIiwicHJvcGVydGllcyI6eyJob3N0bmFtZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0bmFtZXMgZm9yIHRoZSBhYm92ZSBJUCBhZGRyZXNzLiIsIml0ZW1zIjp7InR5cGUiOiJzdHJpbmcifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6ImF0b21pYyJ9LCJpcCI6eyJkZXNjcmlwdGlvbiI6IklQIGFkZHJlc3Mgb2YgdGhlIGhvc3QgZmlsZSBlbnRyeS4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJpcCJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJub2RlU2VsZWN0b3IiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsidHlwZSI6InN0cmluZyJ9LCJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJ0eXBlIjoib2JqZWN0In0sInJlc291cmNlcyI6eyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwicHJvcGVydGllcyI6eyJjbGFpbXMiOnsiZGVzY3JpcHRpb24iOiJDbGFpbXMgbGlzdHMgdGhlIG5hbWVzIG9mIHJlc291cmNlcywgZGVmaW5lZCBpbiBzcGVjLnJlc291cmNlQ2xhaW1zLFxudGhhdCBhcmUgdXNlZCBieSB0aGlzIGNvbnRhaW5lci5cblxuVGhpcyBmaWVsZCBkZXBlbmRzIG9uIHRoZVxuRHluYW1pY1Jlc291cmNlQWxsb2NhdGlvbiBmZWF0dXJlIGdhdGUuXG5cblRoaXMgZmllbGQgaXMgaW1tdXRhYmxlLiBJdCBjYW4gb25seSBiZSBzZXQgZm9yIGNvbnRhaW5lcnMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJSZXNvdXJjZUNsYWltIHJlZmVyZW5jZXMgb25lIGVudHJ5IGluIFBvZFNwZWMuUmVzb3VyY2VDbGFpbXMuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTmFtZSBtdXN0IG1hdGNoIHRoZSBuYW1lIG9mIG9uZSBlbnRyeSBpbiBwb2Quc3BlYy5yZXNvdXJjZUNsYWltcyBvZlxudGhlIFBvZCB3aGVyZSB0aGlzIGZpZWxkIGlzIHVzZWQuIEl0IG1ha2VzIHRoYXQgcmVzb3VyY2UgYXZhaWxhYmxlXG5pbnNpZGUgYSBjb250YWluZXIuIiwidHlwZSI6InN0cmluZyJ9LCJyZXF1ZXN0Ijp7ImRlc2NyaXB0aW9uIjoiUmVxdWVzdCBpcyB0aGUgbmFtZSBjaG9zZW4gZm9yIGEgcmVxdWVzdCBpbiB0aGUgcmVmZXJlbmNlZCBjbGFpbS5cbklmIGVtcHR5LCBldmVyeXRoaW5nIGZyb20gdGhlIGNsYWltIGlzIG1hZGUgYXZhaWxhYmxlLCBvdGhlcndpc2Vcbm9ubHkgdGhlIHJlc3VsdCBvZiB0aGlzIHJlcXVlc3QuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LW1hcC1rZXlzIjpbIm5hbWUiXSwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6Im1hcCJ9LCJsaW1pdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiTGltaXRzIGRlc2NyaWJlcyB0aGUgbWF4aW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgYWxsb3dlZC5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9LCJyZXF1ZXN0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJSZXF1ZXN0cyBkZXNjcmliZXMgdGhlIG1pbmltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIHJlcXVpcmVkLlxuSWYgUmVxdWVzdHMgaXMgb21pdHRlZCBmb3IgYSBjb250YWluZXIsIGl0IGRlZmF1bHRzIHRvIExpbWl0cyBpZiB0aGF0IGlzIGV4cGxpY2l0bHkgc3BlY2lmaWVkLFxub3RoZXJ3aXNlIHRvIGFuIGltcGxlbWVudGF0aW9uLWRlZmluZWQgdmFsdWUuIFJlcXVlc3RzIGNhbm5vdCBleGNlZWQgTGltaXRzLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sInNjYWxpbmciOnsiZGVzY3JpcHRpb24iOiJDb250cm9scyB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIGFuZCBhdXRvc2NhbGluZyBmb3IgdGhpcyBjb21wb25lbnQuIiwicHJvcGVydGllcyI6eyJhdXRvU2NhbGluZyI6eyJkZWZhdWx0IjoiRW5hYmxlZCIsImRlc2NyaXB0aW9uIjoiV2hlbiBlbmFibGVkLCB0aGUgbnVtYmVyIG9mIGNvbXBvbmVudCByZXBsaWNhcyBpcyBtYW5hZ2VkIGR5bmFtaWNhbGx5IGJhc2VkIG9uIHRoZSBsb2FkLCB3aXRoaW4gdGhlIGxpbWl0c1xuc3BlY2lmaWVkIGJlbG93LiIsImVudW0iOlsiRW5hYmxlZCIsIkRpc2FibGVkIl0sInR5cGUiOiJzdHJpbmcifSwibWF4UmVwbGljYXMiOnsiZGVmYXVsdCI6NSwiZm9ybWF0IjoiaW50MzIiLCJtaW5pbXVtIjoxLCJ0eXBlIjoiaW50ZWdlciJ9LCJtaW5SZXBsaWNhcyI6eyJkZWZhdWx0IjoyLCJmb3JtYXQiOiJpbnQzMiIsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn0sInJlcGxpY2FzIjp7ImRlZmF1bHQiOjMsImRlc2NyaXB0aW9uIjoiV2hlbiBhdXRvc2NhbGluZyBpcyBkaXNhYmxlZCwgdGhlIG51bWJlciBvZiByZXBsaWNhcyB3aWxsIGFsd2F5cyBiZSBjb25maWd1cmVkIHRvIG1hdGNoIHRoaXMgdmFsdWUuIiwiZm9ybWF0IjoiaW50MzIiLCJtaW5pbXVtIjoxLCJ0eXBlIjoiaW50ZWdlciJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0b2xlcmF0aW9ucyI6eyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHBvZCB0aGlzIFRvbGVyYXRpb24gaXMgYXR0YWNoZWQgdG8gdG9sZXJhdGVzIGFueSB0YWludCB0aGF0IG1hdGNoZXNcbnRoZSB0cmlwbGUgXHUwMDNja2V5LHZhbHVlLGVmZmVjdFx1MDAzZSB1c2luZyB0aGUgbWF0Y2hpbmcgb3BlcmF0b3IgXHUwMDNjb3BlcmF0b3JcdTAwM2UuIiwicHJvcGVydGllcyI6eyJlZmZlY3QiOnsiZGVzY3JpcHRpb24iOiJFZmZlY3QgaW5kaWNhdGVzIHRoZSB0YWludCBlZmZlY3QgdG8gbWF0Y2guIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBlZmZlY3RzLlxuV2hlbiBzcGVjaWZpZWQsIGFsbG93ZWQgdmFsdWVzIGFyZSBOb1NjaGVkdWxlLCBQcmVmZXJOb1NjaGVkdWxlIGFuZCBOb0V4ZWN1dGUuIiwidHlwZSI6InN0cmluZyJ9LCJrZXkiOnsiZGVzY3JpcHRpb24iOiJLZXkgaXMgdGhlIHRhaW50IGtleSB0aGF0IHRoZSB0b2xlcmF0aW9uIGFwcGxpZXMgdG8uIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBrZXlzLlxuSWYgdGhlIGtleSBpcyBlbXB0eSwgb3BlcmF0b3IgbXVzdCBiZSBFeGlzdHM7IHRoaXMgY29tYmluYXRpb24gbWVhbnMgdG8gbWF0Y2ggYWxsIHZhbHVlcyBhbmQgYWxsIGtleXMuIiwidHlwZSI6InN0cmluZyJ9LCJvcGVyYXRvciI6eyJkZXNjcmlwdGlvbiI6Ik9wZXJhdG9yIHJlcHJlc2VudHMgYSBrZXkncyByZWxhdGlvbnNoaXAgdG8gdGhlIHZhbHVlLlxuVmFsaWQgb3BlcmF0b3JzIGFyZSBFeGlzdHMgYW5kIEVxdWFsLiBEZWZhdWx0cyB0byBFcXVhbC5cbkV4aXN0cyBpcyBlcXVpdmFsZW50IHRvIHdpbGRjYXJkIGZvciB2YWx1ZSwgc28gdGhhdCBhIHBvZCBjYW5cbnRvbGVyYXRlIGFsbCB0YWludHMgb2YgYSBwYXJ0aWN1bGFyIGNhdGVnb3J5LiIsInR5cGUiOiJzdHJpbmcifSwidG9sZXJhdGlvblNlY29uZHMiOnsiZGVzY3JpcHRpb24iOiJUb2xlcmF0aW9uU2Vjb25kcyByZXByZXNlbnRzIHRoZSBwZXJpb2Qgb2YgdGltZSB0aGUgdG9sZXJhdGlvbiAod2hpY2ggbXVzdCBiZVxub2YgZWZmZWN0IE5vRXhlY3V0ZSwgb3RoZXJ3aXNlIHRoaXMgZmllbGQgaXMgaWdub3JlZCkgdG9sZXJhdGVzIHRoZSB0YWludC4gQnkgZGVmYXVsdCxcbml0IGlzIG5vdCBzZXQsIHdoaWNoIG1lYW5zIHRvbGVyYXRlIHRoZSB0YWludCBmb3JldmVyIChkbyBub3QgZXZpY3QpLiBaZXJvIGFuZFxubmVnYXRpdmUgdmFsdWVzIHdpbGwgYmUgdHJlYXRlZCBhcyAwIChldmljdCBpbW1lZGlhdGVseSkgYnkgdGhlIHN5c3RlbS4iLCJmb3JtYXQiOiJpbnQ2NCIsInR5cGUiOiJpbnRlZ2VyIn0sInZhbHVlIjp7ImRlc2NyaXB0aW9uIjoiVmFsdWUgaXMgdGhlIHRhaW50IHZhbHVlIHRoZSB0b2xlcmF0aW9uIG1hdGNoZXMgdG8uXG5JZiB0aGUgb3BlcmF0b3IgaXMgRXhpc3RzLCB0aGUgdmFsdWUgc2hvdWxkIGJlIGVtcHR5LCBvdGhlcndpc2UganVzdCBhIHJlZ3VsYXIgc3RyaW5nLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In19LCJ0eXBlIjoib2JqZWN0In0sIm1vbml0b3JpbmciOnsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIG1vbml0b3JpbmcgZW5kcG9pbnQgZm9yIFNjYW5uZXIgVjQuIFRoZSBtb25pdG9yaW5nIGVuZHBvaW50XG5hbGxvd3Mgb3RoZXIgc2VydmljZXMgdG8gY29sbGVjdCBtZXRyaWNzIGZyb20gU2Nhbm5lciBWNCwgcHJvdmlkZWQgaW5cblByb21ldGhldXMgY29tcGF0aWJsZSBmb3JtYXQuIiwicHJvcGVydGllcyI6eyJleHBvc2VFbmRwb2ludCI6eyJkZXNjcmlwdGlvbiI6IkV4cG9zZSB0aGUgbW9uaXRvcmluZyBlbmRwb2ludC4gQSBuZXcgc2VydmljZSwgXCJtb25pdG9yaW5nXCIsXG53aXRoIHBvcnQgOTA5MCwgd2lsbCBiZSBjcmVhdGVkIGFzIHdlbGwgYXMgYSBuZXR3b3JrIHBvbGljeSBhbGxvd2luZ1xuaW5ib3VuZCBjb25uZWN0aW9ucyB0byB0aGUgcG9ydC4iLCJlbnVtIjpbIkVuYWJsZWQiLCJEaXNhYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInNjYW5uZXJDb21wb25lbnQiOnsiZGVzY3JpcHRpb24iOiJDYW4gYmUgc3BlY2lmaWVkIGFzIFwiRW5hYmxlZFwiIG9yIFwiRGlzYWJsZWRcIi5cbklmIHRoaXMgZmllbGQgaXMgbm90IHNwZWNpZmllZCwgdGhlIGZvbGxvd2luZyBkZWZhdWx0aW5nIHRha2VzIHBsYWNlOlxuKiBmb3IgbmV3IGluc3RhbGxhdGlvbnMsIFNjYW5uZXIgVjQgaXMgZW5hYmxlZCBzdGFydGluZyB3aXRoIEFDUyA0Ljg7XG4qIGZvciB1cGdyYWRlcyB0byA0LjggZnJvbSBwcmV2aW91cyByZWxlYXNlcywgU2Nhbm5lciBWNCBpcyBkaXNhYmxlZC4iLCJlbnVtIjpbIkRlZmF1bHQiLCJFbmFibGVkIiwiRGlzYWJsZWQiXSwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0bHMiOnsiZGVzY3JpcHRpb24iOiJBbGxvd3MgeW91IHRvIHNwZWNpZnkgYWRkaXRpb25hbCB0cnVzdGVkIFJvb3QgQ0FzLiIsInByb3BlcnRpZXMiOnsiYWRkaXRpb25hbENBcyI6eyJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IkFkZGl0aW9uYWxDQSBkZWZpbmVzIGEgY2VydGlmaWNhdGUgZm9yIGFuIGFkZGl0aW9uYWwgQ2VydGlmaWNhdGUgQXV0aG9yaXR5LiIsInByb3BlcnRpZXMiOnsiY29udGVudCI6eyJkZXNjcmlwdGlvbiI6IlBFTSBmb3JtYXQiLCJ0eXBlIjoic3RyaW5nIn0sIm5hbWUiOnsiZGVzY3JpcHRpb24iOiJNdXN0IGJlIGEgdmFsaWQgZmlsZSBiYXNlbmFtZSIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbImNvbnRlbnQiLCJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In19LCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sInN0YXR1cyI6eyJkZXNjcmlwdGlvbiI6IkNlbnRyYWxTdGF0dXMgZGVmaW5lcyB0aGUgb2JzZXJ2ZWQgc3RhdGUgb2YgQ2VudHJhbC4iLCJwcm9wZXJ0aWVzIjp7ImNlbnRyYWwiOnsiZGVzY3JpcHRpb24iOiJDZW50cmFsQ29tcG9uZW50U3RhdHVzIGRlc2NyaWJlcyBzdGF0dXMgc3BlY2lmaWMgdG8gdGhlIGNlbnRyYWwgY29tcG9uZW50LiIsInByb3BlcnRpZXMiOnsiYWRtaW5QYXNzd29yZCI6eyJkZXNjcmlwdGlvbiI6IkFkbWluUGFzc3dvcmQgc3RvcmVzIGluZm9ybWF0aW9uIHJlbGF0ZWQgdG8gdGhlIGF1dG8tZ2VuZXJhdGVkIGFkbWluIHBhc3N3b3JkLiIsInByb3BlcnRpZXMiOnsiYWRtaW5QYXNzd29yZFNlY3JldFJlZmVyZW5jZSI6eyJkZXNjcmlwdGlvbiI6IkFkbWluUGFzc3dvcmRTZWNyZXRSZWZlcmVuY2UgY29udGFpbnMgcmVmZXJlbmNlIGZvciB0aGUgYWRtaW4gcGFzc3dvcmQiLCJ0eXBlIjoic3RyaW5nIn0sImluZm8iOnsiZGVzY3JpcHRpb24iOiJJbmZvIHN0b3JlcyBpbmZvcm1hdGlvbiBvbiBob3cgdG8gb2J0YWluIHRoZSBhZG1pbiBwYXNzd29yZC4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sImNvbmRpdGlvbnMiOnsiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJTdGFja1JveENvbmRpdGlvbiBkZWZpbmVzIGEgY29uZGl0aW9uIGZvciBhIFN0YWNrUm94IGN1c3RvbSByZXNvdXJjZS4iLCJwcm9wZXJ0aWVzIjp7Imxhc3RUcmFuc2l0aW9uVGltZSI6eyJmb3JtYXQiOiJkYXRlLXRpbWUiLCJ0eXBlIjoic3RyaW5nIn0sIm1lc3NhZ2UiOnsidHlwZSI6InN0cmluZyJ9LCJyZWFzb24iOnsiZGVzY3JpcHRpb24iOiJDb25kaXRpb25SZWFzb24gaXMgYSB0eXBlIG9mIHZhbHVlcyBvZiBjb25kaXRpb24gcmVhc29uLiIsInR5cGUiOiJzdHJpbmcifSwic3RhdHVzIjp7ImRlc2NyaXB0aW9uIjoiQ29uZGl0aW9uU3RhdHVzIGlzIGEgdHlwZSBvZiB2YWx1ZXMgb2YgY29uZGl0aW9uIHN0YXR1cy4iLCJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOnsiZGVzY3JpcHRpb24iOiJDb25kaXRpb25UeXBlIGlzIGEgdHlwZSBvZiB2YWx1ZXMgb2YgY29uZGl0aW9uIHR5cGUuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsic3RhdHVzIiwidHlwZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJkZXBsb3llZFJlbGVhc2UiOnsiZGVzY3JpcHRpb24iOiJTdGFja1JveFJlbGVhc2UgZGVzY3JpYmVzIHRoZSBIZWxtIFwicmVsZWFzZVwiIHRoYXQgd2FzIG1vc3QgcmVjZW50bHkgYXBwbGllZC4iLCJwcm9wZXJ0aWVzIjp7InZlcnNpb24iOnsidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJwcm9kdWN0VmVyc2lvbiI6eyJkZXNjcmlwdGlvbiI6IlRoZSBkZXBsb3llZCB2ZXJzaW9uIG9mIHRoZSBwcm9kdWN0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbImNvbmRpdGlvbnMiXSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9fSwic2VydmVkIjp0cnVlLCJzdG9yYWdlIjp0cnVlLCJzdWJyZXNvdXJjZXMiOnsic3RhdHVzIjp7fX19XX0sInN0YXR1cyI6eyJhY2NlcHRlZE5hbWVzIjp7ImtpbmQiOiIiLCJwbHVyYWwiOiIifSwiY29uZGl0aW9ucyI6bnVsbCwic3RvcmVkVmVyc2lvbnMiOm51bGx9fQ==" + } + }, + { + "type": "olm.bundle.object", + "value": { + "data": "eyJhcGlWZXJzaW9uIjoiYXBpZXh0ZW5zaW9ucy5rOHMuaW8vdjEiLCJraW5kIjoiQ3VzdG9tUmVzb3VyY2VEZWZpbml0aW9uIiwibWV0YWRhdGEiOnsiYW5ub3RhdGlvbnMiOnsiY29udHJvbGxlci1nZW4ua3ViZWJ1aWxkZXIuaW8vdmVyc2lvbiI6InYwLjE2LjUifSwiY3JlYXRpb25UaW1lc3RhbXAiOm51bGwsIm5hbWUiOiJzZWN1cmVkY2x1c3RlcnMucGxhdGZvcm0uc3RhY2tyb3guaW8ifSwic3BlYyI6eyJncm91cCI6InBsYXRmb3JtLnN0YWNrcm94LmlvIiwibmFtZXMiOnsia2luZCI6IlNlY3VyZWRDbHVzdGVyIiwibGlzdEtpbmQiOiJTZWN1cmVkQ2x1c3Rlckxpc3QiLCJwbHVyYWwiOiJzZWN1cmVkY2x1c3RlcnMiLCJzaW5ndWxhciI6InNlY3VyZWRjbHVzdGVyIn0sInNjb3BlIjoiTmFtZXNwYWNlZCIsInZlcnNpb25zIjpbeyJuYW1lIjoidjFhbHBoYTEiLCJzY2hlbWEiOnsib3BlbkFQSVYzU2NoZW1hIjp7ImRlc2NyaXB0aW9uIjoiU2VjdXJlZENsdXN0ZXIgaXMgdGhlIGNvbmZpZ3VyYXRpb24gdGVtcGxhdGUgZm9yIHRoZSBzZWN1cmVkIGNsdXN0ZXIgc2VydmljZXMuIFRoZXNlIGluY2x1ZGUgU2Vuc29yLCB3aGljaCBpc1xucmVzcG9uc2libGUgZm9yIHRoZSBjb25uZWN0aW9uIHRvIENlbnRyYWwsIGFuZCBDb2xsZWN0b3IsIHdoaWNoIHBlcmZvcm1zIGhvc3QtbGV2ZWwgY29sbGVjdGlvbiBvZiBwcm9jZXNzIGFuZFxubmV0d29yayBldmVudHMuXHUwMDNjcFx1MDAzZVxuKipJbXBvcnRhbnQ6KiogUGxlYXNlIHNlZSB0aGUgX0luc3RhbGxhdGlvbiBQcmVyZXF1aXNpdGVzXyBvbiB0aGUgbWFpbiBSSEFDUyBvcGVyYXRvciBwYWdlIGJlZm9yZSBkZXBsb3lpbmcsIG9yXG5jb25zdWx0IHRoZSBSSEFDUyBkb2N1bWVudGF0aW9uIG9uIGNyZWF0aW5nIGNsdXN0ZXIgaW5pdCBidW5kbGVzLiIsInByb3BlcnRpZXMiOnsiYXBpVmVyc2lvbiI6eyJkZXNjcmlwdGlvbiI6IkFQSVZlcnNpb24gZGVmaW5lcyB0aGUgdmVyc2lvbmVkIHNjaGVtYSBvZiB0aGlzIHJlcHJlc2VudGF0aW9uIG9mIGFuIG9iamVjdC5cblNlcnZlcnMgc2hvdWxkIGNvbnZlcnQgcmVjb2duaXplZCBzY2hlbWFzIHRvIHRoZSBsYXRlc3QgaW50ZXJuYWwgdmFsdWUsIGFuZFxubWF5IHJlamVjdCB1bnJlY29nbml6ZWQgdmFsdWVzLlxuTW9yZSBpbmZvOiBodHRwczovL2dpdC5rOHMuaW8vY29tbXVuaXR5L2NvbnRyaWJ1dG9ycy9kZXZlbC9zaWctYXJjaGl0ZWN0dXJlL2FwaS1jb252ZW50aW9ucy5tZCNyZXNvdXJjZXMiLCJ0eXBlIjoic3RyaW5nIn0sImtpbmQiOnsiZGVzY3JpcHRpb24iOiJLaW5kIGlzIGEgc3RyaW5nIHZhbHVlIHJlcHJlc2VudGluZyB0aGUgUkVTVCByZXNvdXJjZSB0aGlzIG9iamVjdCByZXByZXNlbnRzLlxuU2VydmVycyBtYXkgaW5mZXIgdGhpcyBmcm9tIHRoZSBlbmRwb2ludCB0aGUgY2xpZW50IHN1Ym1pdHMgcmVxdWVzdHMgdG8uXG5DYW5ub3QgYmUgdXBkYXRlZC5cbkluIENhbWVsQ2FzZS5cbk1vcmUgaW5mbzogaHR0cHM6Ly9naXQuazhzLmlvL2NvbW11bml0eS9jb250cmlidXRvcnMvZGV2ZWwvc2lnLWFyY2hpdGVjdHVyZS9hcGktY29udmVudGlvbnMubWQjdHlwZXMta2luZHMiLCJ0eXBlIjoic3RyaW5nIn0sIm1ldGFkYXRhIjp7InR5cGUiOiJvYmplY3QifSwic3BlYyI6eyJkZXNjcmlwdGlvbiI6IlNlY3VyZWRDbHVzdGVyU3BlYyBkZWZpbmVzIHRoZSBkZXNpcmVkIGNvbmZpZ3VyYXRpb24gc3RhdGUgb2YgYSBzZWN1cmVkIGNsdXN0ZXIuIiwicHJvcGVydGllcyI6eyJhZG1pc3Npb25Db250cm9sIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBBZG1pc3Npb24gQ29udHJvbCBjb21wb25lbnQsIHdoaWNoIGlzIG5lY2Vzc2FyeSBmb3IgcHJldmVudGl2ZSBwb2xpY3kgZW5mb3JjZW1lbnQsXG5hbmQgZm9yIEt1YmVybmV0ZXMgZXZlbnQgbW9uaXRvcmluZy4iLCJwcm9wZXJ0aWVzIjp7ImJ5cGFzcyI6eyJkZWZhdWx0IjoiQnJlYWtHbGFzc0Fubm90YXRpb24iLCJkZXNjcmlwdGlvbiI6IkVuYWJsZXMgdGVhbXMgdG8gYnlwYXNzIGFkbWlzc2lvbiBjb250cm9sIGluIGEgbW9uaXRvcmVkIG1hbm5lciBpbiB0aGUgZXZlbnQgb2YgYW4gZW1lcmdlbmN5LiIsImVudW0iOlsiQnJlYWtHbGFzc0Fubm90YXRpb24iLCJEaXNhYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn0sImNvbnRhY3RJbWFnZVNjYW5uZXJzIjp7ImRlZmF1bHQiOiJEb05vdFNjYW5JbmxpbmUiLCJkZXNjcmlwdGlvbiI6IlNob3VsZCBpbmxpbmUgc2Nhbm5pbmcgYmUgcGVyZm9ybWVkIG9uIHByZXZpb3VzbHkgdW5zY2FubmVkIGltYWdlcyBkdXJpbmcgYSBkZXBsb3ltZW50cyBhZG1pc3Npb24gcmV2aWV3LiIsImVudW0iOlsiU2NhbklmTWlzc2luZyIsIkRvTm90U2NhbklubGluZSJdLCJ0eXBlIjoic3RyaW5nIn0sImhvc3RBbGlhc2VzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXMgaG9sZHMgdGhlIG1hcHBpbmcgYmV0d2VlbiBJUCBhbmQgaG9zdG5hbWVzIHRoYXQgd2lsbCBiZSBpbmplY3RlZCBhcyBhbiBlbnRyeSBpbiB0aGVcbnBvZCdzIGhvc3RzIGZpbGUuIiwicHJvcGVydGllcyI6eyJob3N0bmFtZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0bmFtZXMgZm9yIHRoZSBhYm92ZSBJUCBhZGRyZXNzLiIsIml0ZW1zIjp7InR5cGUiOiJzdHJpbmcifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6ImF0b21pYyJ9LCJpcCI6eyJkZXNjcmlwdGlvbiI6IklQIGFkZHJlc3Mgb2YgdGhlIGhvc3QgZmlsZSBlbnRyeS4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJpcCJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJsaXN0ZW5PbkNyZWF0ZXMiOnsiZGVmYXVsdCI6dHJ1ZSwiZGVzY3JpcHRpb24iOiJTZXQgdGhpcyB0byAndHJ1ZScgdG8gZW5hYmxlIHByZXZlbnRpdmUgcG9saWN5IGVuZm9yY2VtZW50IGZvciBvYmplY3QgY3JlYXRpb25zLiIsInR5cGUiOiJib29sZWFuIn0sImxpc3Rlbk9uRXZlbnRzIjp7ImRlZmF1bHQiOnRydWUsImRlc2NyaXB0aW9uIjoiU2V0IHRoaXMgdG8gJ3RydWUnIHRvIGVuYWJsZSBtb25pdG9yaW5nIGFuZCBlbmZvcmNlbWVudCBmb3IgS3ViZXJuZXRlcyBldmVudHMgKHBvcnQtZm9yd2FyZCBhbmQgZXhlYykuIiwidHlwZSI6ImJvb2xlYW4ifSwibGlzdGVuT25VcGRhdGVzIjp7ImRlZmF1bHQiOnRydWUsImRlc2NyaXB0aW9uIjoiU2V0IHRoaXMgdG8gJ3RydWUnIHRvIGVuYWJsZSBwcmV2ZW50aXZlIHBvbGljeSBlbmZvcmNlbWVudCBmb3Igb2JqZWN0IHVwZGF0ZXMuXG5cbk5vdGU6IHRoaXMgd2lsbCBub3QgaGF2ZSBhbnkgZWZmZWN0IHVubGVzcyAnTGlzdGVuIE9uIENyZWF0ZXMnIGlzIHNldCB0byAndHJ1ZScgYXMgd2VsbC4iLCJ0eXBlIjoiYm9vbGVhbiJ9LCJub2RlU2VsZWN0b3IiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsidHlwZSI6InN0cmluZyJ9LCJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJ0eXBlIjoib2JqZWN0In0sInJlcGxpY2FzIjp7ImRlZmF1bHQiOjMsImRlc2NyaXB0aW9uIjoiVGhlIG51bWJlciBvZiByZXBsaWNhcyBvZiB0aGUgYWRtaXNzaW9uIGNvbnRyb2wgcG9kLiIsImZvcm1hdCI6ImludDMyIiwibWluaW11bSI6MSwidHlwZSI6ImludGVnZXIifSwicmVzb3VyY2VzIjp7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJwcm9wZXJ0aWVzIjp7ImNsYWltcyI6eyJkZXNjcmlwdGlvbiI6IkNsYWltcyBsaXN0cyB0aGUgbmFtZXMgb2YgcmVzb3VyY2VzLCBkZWZpbmVkIGluIHNwZWMucmVzb3VyY2VDbGFpbXMsXG50aGF0IGFyZSB1c2VkIGJ5IHRoaXMgY29udGFpbmVyLlxuXG5UaGlzIGZpZWxkIGRlcGVuZHMgb24gdGhlXG5EeW5hbWljUmVzb3VyY2VBbGxvY2F0aW9uIGZlYXR1cmUgZ2F0ZS5cblxuVGhpcyBmaWVsZCBpcyBpbW11dGFibGUuIEl0IGNhbiBvbmx5IGJlIHNldCBmb3IgY29udGFpbmVycy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlQ2xhaW0gcmVmZXJlbmNlcyBvbmUgZW50cnkgaW4gUG9kU3BlYy5SZXNvdXJjZUNsYWltcy4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJOYW1lIG11c3QgbWF0Y2ggdGhlIG5hbWUgb2Ygb25lIGVudHJ5IGluIHBvZC5zcGVjLnJlc291cmNlQ2xhaW1zIG9mXG50aGUgUG9kIHdoZXJlIHRoaXMgZmllbGQgaXMgdXNlZC4gSXQgbWFrZXMgdGhhdCByZXNvdXJjZSBhdmFpbGFibGVcbmluc2lkZSBhIGNvbnRhaW5lci4iLCJ0eXBlIjoic3RyaW5nIn0sInJlcXVlc3QiOnsiZGVzY3JpcHRpb24iOiJSZXF1ZXN0IGlzIHRoZSBuYW1lIGNob3NlbiBmb3IgYSByZXF1ZXN0IGluIHRoZSByZWZlcmVuY2VkIGNsYWltLlxuSWYgZW1wdHksIGV2ZXJ5dGhpbmcgZnJvbSB0aGUgY2xhaW0gaXMgbWFkZSBhdmFpbGFibGUsIG90aGVyd2lzZVxub25seSB0aGUgcmVzdWx0IG9mIHRoaXMgcmVxdWVzdC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtbWFwLWtleXMiOlsibmFtZSJdLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoibWFwIn0sImxpbWl0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJMaW1pdHMgZGVzY3JpYmVzIHRoZSBtYXhpbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyBhbGxvd2VkLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In0sInJlcXVlc3RzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IlJlcXVlc3RzIGRlc2NyaWJlcyB0aGUgbWluaW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgcmVxdWlyZWQuXG5JZiBSZXF1ZXN0cyBpcyBvbWl0dGVkIGZvciBhIGNvbnRhaW5lciwgaXQgZGVmYXVsdHMgdG8gTGltaXRzIGlmIHRoYXQgaXMgZXhwbGljaXRseSBzcGVjaWZpZWQsXG5vdGhlcndpc2UgdG8gYW4gaW1wbGVtZW50YXRpb24tZGVmaW5lZCB2YWx1ZS4gUmVxdWVzdHMgY2Fubm90IGV4Y2VlZCBMaW1pdHMuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwidGltZW91dFNlY29uZHMiOnsiZGVmYXVsdCI6MTAsImRlc2NyaXB0aW9uIjoiTWF4aW11bSB0aW1lb3V0IHBlcmlvZCBmb3IgYWRtaXNzaW9uIHJldmlldywgdXBvbiB3aGljaCBhZG1pc3Npb24gcmV2aWV3IHdpbGwgZmFpbCBvcGVuLlxuVXNlIGl0IHRvIHNldCByZXF1ZXN0IHRpbWVvdXRzIHdoZW4geW91IGVuYWJsZSBpbmxpbmUgaW1hZ2Ugc2Nhbm5pbmcuXG5UaGUgZGVmYXVsdCBrdWJlY3RsIHRpbWVvdXQgaXMgMzAgc2Vjb25kczsgdGFraW5nIHBhZGRpbmcgaW50byBhY2NvdW50LCB0aGlzIHNob3VsZCBub3QgZXhjZWVkIDI1IHNlY29uZHMuXG5PbiBPcGVuU2hpZnQgd2ViaG9vayB0aW1lb3V0cyBjYW5ub3QgZXhjZWVkIDEzIHNlY29uZHMsIGhlbmNlIHdpdGggcGFkZGluZyB0aGlzIHZhbHVlIHNoYWxsIG5vdCBleGNlZWQgMTAgc2Vjb25kcy4iLCJmb3JtYXQiOiJpbnQzMiIsIm1heGltdW0iOjI1LCJtaW5pbXVtIjoxLCJ0eXBlIjoiaW50ZWdlciJ9LCJ0b2xlcmF0aW9ucyI6eyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHBvZCB0aGlzIFRvbGVyYXRpb24gaXMgYXR0YWNoZWQgdG8gdG9sZXJhdGVzIGFueSB0YWludCB0aGF0IG1hdGNoZXNcbnRoZSB0cmlwbGUgXHUwMDNja2V5LHZhbHVlLGVmZmVjdFx1MDAzZSB1c2luZyB0aGUgbWF0Y2hpbmcgb3BlcmF0b3IgXHUwMDNjb3BlcmF0b3JcdTAwM2UuIiwicHJvcGVydGllcyI6eyJlZmZlY3QiOnsiZGVzY3JpcHRpb24iOiJFZmZlY3QgaW5kaWNhdGVzIHRoZSB0YWludCBlZmZlY3QgdG8gbWF0Y2guIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBlZmZlY3RzLlxuV2hlbiBzcGVjaWZpZWQsIGFsbG93ZWQgdmFsdWVzIGFyZSBOb1NjaGVkdWxlLCBQcmVmZXJOb1NjaGVkdWxlIGFuZCBOb0V4ZWN1dGUuIiwidHlwZSI6InN0cmluZyJ9LCJrZXkiOnsiZGVzY3JpcHRpb24iOiJLZXkgaXMgdGhlIHRhaW50IGtleSB0aGF0IHRoZSB0b2xlcmF0aW9uIGFwcGxpZXMgdG8uIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBrZXlzLlxuSWYgdGhlIGtleSBpcyBlbXB0eSwgb3BlcmF0b3IgbXVzdCBiZSBFeGlzdHM7IHRoaXMgY29tYmluYXRpb24gbWVhbnMgdG8gbWF0Y2ggYWxsIHZhbHVlcyBhbmQgYWxsIGtleXMuIiwidHlwZSI6InN0cmluZyJ9LCJvcGVyYXRvciI6eyJkZXNjcmlwdGlvbiI6Ik9wZXJhdG9yIHJlcHJlc2VudHMgYSBrZXkncyByZWxhdGlvbnNoaXAgdG8gdGhlIHZhbHVlLlxuVmFsaWQgb3BlcmF0b3JzIGFyZSBFeGlzdHMgYW5kIEVxdWFsLiBEZWZhdWx0cyB0byBFcXVhbC5cbkV4aXN0cyBpcyBlcXVpdmFsZW50IHRvIHdpbGRjYXJkIGZvciB2YWx1ZSwgc28gdGhhdCBhIHBvZCBjYW5cbnRvbGVyYXRlIGFsbCB0YWludHMgb2YgYSBwYXJ0aWN1bGFyIGNhdGVnb3J5LiIsInR5cGUiOiJzdHJpbmcifSwidG9sZXJhdGlvblNlY29uZHMiOnsiZGVzY3JpcHRpb24iOiJUb2xlcmF0aW9uU2Vjb25kcyByZXByZXNlbnRzIHRoZSBwZXJpb2Qgb2YgdGltZSB0aGUgdG9sZXJhdGlvbiAod2hpY2ggbXVzdCBiZVxub2YgZWZmZWN0IE5vRXhlY3V0ZSwgb3RoZXJ3aXNlIHRoaXMgZmllbGQgaXMgaWdub3JlZCkgdG9sZXJhdGVzIHRoZSB0YWludC4gQnkgZGVmYXVsdCxcbml0IGlzIG5vdCBzZXQsIHdoaWNoIG1lYW5zIHRvbGVyYXRlIHRoZSB0YWludCBmb3JldmVyIChkbyBub3QgZXZpY3QpLiBaZXJvIGFuZFxubmVnYXRpdmUgdmFsdWVzIHdpbGwgYmUgdHJlYXRlZCBhcyAwIChldmljdCBpbW1lZGlhdGVseSkgYnkgdGhlIHN5c3RlbS4iLCJmb3JtYXQiOiJpbnQ2NCIsInR5cGUiOiJpbnRlZ2VyIn0sInZhbHVlIjp7ImRlc2NyaXB0aW9uIjoiVmFsdWUgaXMgdGhlIHRhaW50IHZhbHVlIHRoZSB0b2xlcmF0aW9uIG1hdGNoZXMgdG8uXG5JZiB0aGUgb3BlcmF0b3IgaXMgRXhpc3RzLCB0aGUgdmFsdWUgc2hvdWxkIGJlIGVtcHR5LCBvdGhlcndpc2UganVzdCBhIHJlZ3VsYXIgc3RyaW5nLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In19LCJ0eXBlIjoib2JqZWN0In0sImF1ZGl0TG9ncyI6eyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHJlbGF0aW5nIHRvIHRoZSBpbmdlc3Rpb24gb2YgS3ViZXJuZXRlcyBhdWRpdCBsb2dzLiIsInByb3BlcnRpZXMiOnsiY29sbGVjdGlvbiI6eyJkZWZhdWx0IjoiQXV0byIsImRlc2NyaXB0aW9uIjoiV2hldGhlciBjb2xsZWN0aW9uIG9mIEt1YmVybmV0ZXMgYXVkaXQgbG9ncyBzaG91bGQgYmUgZW5hYmxlZCBvciBkaXNhYmxlZC4gQ3VycmVudGx5LCB0aGlzIGlzIG9ubHlcbnN1cHBvcnRlZCBvbiBPcGVuU2hpZnQgNCwgYW5kIHRyeWluZyB0byBlbmFibGUgaXQgb24gbm9uLU9wZW5TaGlmdCA0IGNsdXN0ZXJzIHdpbGwgcmVzdWx0IGluIGFuIGVycm9yLlxuVXNlIHRoZSAnQXV0bycgc2V0dGluZyB0byBlbmFibGUgaXQgb24gY29tcGF0aWJsZSBlbnZpcm9ubWVudHMsIGFuZCBkaXNhYmxlIGl0IGVsc2V3aGVyZS4iLCJlbnVtIjpbIkF1dG8iLCJEaXNhYmxlZCIsIkVuYWJsZWQiXSwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJjZW50cmFsRW5kcG9pbnQiOnsiZGVzY3JpcHRpb24iOiJUaGUgZW5kcG9pbnQgb2YgdGhlIFJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSBDZW50cmFsIGluc3RhbmNlIHRvIGNvbm5lY3QgdG8sXG5pbmNsdWRpbmcgdGhlIHBvcnQgbnVtYmVyLiBJZiBubyBwb3J0IGlzIHNwZWNpZmllZCBhbmQgdGhlIGVuZHBvaW50IGNvbnRhaW5zIGFuIGh0dHBzOi8vXG5wcm90b2NvbCBzcGVjaWZpY2F0aW9uLCB0aGVuIHRoZSBwb3J0IDQ0MyBpcyBpbXBsaWNpdGx5IGFzc3VtZWQuXG5JZiB1c2luZyBhIG5vbi1nUlBDIGNhcGFibGUgbG9hZCBiYWxhbmNlciwgdXNlIHRoZSBXZWJTb2NrZXQgcHJvdG9jb2wgYnkgcHJlZml4aW5nIHRoZSBlbmRwb2ludFxuYWRkcmVzcyB3aXRoIHdzczovLy5cbk5vdGU6IHdoZW4gbGVhdmluZyB0aGlzIGJsYW5rLCBTZW5zb3Igd2lsbCBhdHRlbXB0IHRvIGNvbm5lY3QgdG8gYSBDZW50cmFsIGluc3RhbmNlIHJ1bm5pbmcgaW4gdGhlIHNhbWVcbm5hbWVzcGFjZS4iLCJ0eXBlIjoic3RyaW5nIn0sImNsdXN0ZXJMYWJlbHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsidHlwZSI6InN0cmluZyJ9LCJkZXNjcmlwdGlvbiI6IkN1c3RvbSBsYWJlbHMgYXNzb2NpYXRlZCB3aXRoIGEgc2VjdXJlZCBjbHVzdGVyIGluIFJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eS4iLCJ0eXBlIjoib2JqZWN0In0sImNsdXN0ZXJOYW1lIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHVuaXF1ZSBuYW1lIG9mIHRoaXMgY2x1c3RlciwgYXMgaXQgd2lsbCBiZSBzaG93biBpbiB0aGUgUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5IFVJLlxuTm90ZTogT25jZSBhIG5hbWUgaXMgc2V0IGhlcmUsIHlvdSB3aWxsIG5vdCBiZSBhYmxlIHRvIGNoYW5nZSBpdCBhZ2Fpbi4gWW91IHdpbGwgbmVlZCB0byBkZWxldGVcbmFuZCByZS1jcmVhdGUgdGhpcyBvYmplY3QgaW4gb3JkZXIgdG8gcmVnaXN0ZXIgYSBjbHVzdGVyIHdpdGggYSBuZXcgbmFtZS4iLCJ0eXBlIjoic3RyaW5nIn0sImN1c3RvbWl6ZSI6eyJkZXNjcmlwdGlvbiI6IkN1c3RvbWl6YXRpb25zIHRvIGFwcGx5IG9uIGFsbCBDZW50cmFsIFNlcnZpY2VzIGNvbXBvbmVudHMuIiwicHJvcGVydGllcyI6eyJhbm5vdGF0aW9ucyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJ0eXBlIjoic3RyaW5nIn0sImRlc2NyaXB0aW9uIjoiQ3VzdG9tIGFubm90YXRpb25zIHRvIHNldCBvbiBhbGwgbWFuYWdlZCBvYmplY3RzLiIsInR5cGUiOiJvYmplY3QifSwiZW52VmFycyI6eyJkZXNjcmlwdGlvbiI6IkN1c3RvbSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gc2V0IG9uIG1hbmFnZWQgcG9kcycgY29udGFpbmVycy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IkVudlZhciByZXByZXNlbnRzIGFuIGVudmlyb25tZW50IHZhcmlhYmxlIHByZXNlbnQgaW4gYSBDb250YWluZXIuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTmFtZSBvZiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUuXG5NYXkgY29uc2lzdCBvZiBhbnkgcHJpbnRhYmxlIEFTQ0lJIGNoYXJhY3RlcnMgZXhjZXB0ICc9Jy4iLCJ0eXBlIjoic3RyaW5nIn0sInZhbHVlIjp7ImRlc2NyaXB0aW9uIjoiVmFyaWFibGUgcmVmZXJlbmNlcyAkKFZBUl9OQU1FKSBhcmUgZXhwYW5kZWRcbnVzaW5nIHRoZSBwcmV2aW91c2x5IGRlZmluZWQgZW52aXJvbm1lbnQgdmFyaWFibGVzIGluIHRoZSBjb250YWluZXIgYW5kXG5hbnkgc2VydmljZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMuIElmIGEgdmFyaWFibGUgY2Fubm90IGJlIHJlc29sdmVkLFxudGhlIHJlZmVyZW5jZSBpbiB0aGUgaW5wdXQgc3RyaW5nIHdpbGwgYmUgdW5jaGFuZ2VkLiBEb3VibGUgJCQgYXJlIHJlZHVjZWRcbnRvIGEgc2luZ2xlICQsIHdoaWNoIGFsbG93cyBmb3IgZXNjYXBpbmcgdGhlICQoVkFSX05BTUUpIHN5bnRheDogaS5lLlxuXCIkJChWQVJfTkFNRSlcIiB3aWxsIHByb2R1Y2UgdGhlIHN0cmluZyBsaXRlcmFsIFwiJChWQVJfTkFNRSlcIi5cbkVzY2FwZWQgcmVmZXJlbmNlcyB3aWxsIG5ldmVyIGJlIGV4cGFuZGVkLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIHZhcmlhYmxlXG5leGlzdHMgb3Igbm90LlxuRGVmYXVsdHMgdG8gXCJcIi4iLCJ0eXBlIjoic3RyaW5nIn0sInZhbHVlRnJvbSI6eyJkZXNjcmlwdGlvbiI6IlNvdXJjZSBmb3IgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlJ3MgdmFsdWUuIENhbm5vdCBiZSB1c2VkIGlmIHZhbHVlIGlzIG5vdCBlbXB0eS4iLCJwcm9wZXJ0aWVzIjp7ImNvbmZpZ01hcEtleVJlZiI6eyJkZXNjcmlwdGlvbiI6IlNlbGVjdHMgYSBrZXkgb2YgYSBDb25maWdNYXAuIiwicHJvcGVydGllcyI6eyJrZXkiOnsiZGVzY3JpcHRpb24iOiJUaGUga2V5IHRvIHNlbGVjdC4iLCJ0eXBlIjoic3RyaW5nIn0sIm5hbWUiOnsiZGVmYXVsdCI6IiIsImRlc2NyaXB0aW9uIjoiTmFtZSBvZiB0aGUgcmVmZXJlbnQuXG5UaGlzIGZpZWxkIGlzIGVmZmVjdGl2ZWx5IHJlcXVpcmVkLCBidXQgZHVlIHRvIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IGlzXG5hbGxvd2VkIHRvIGJlIGVtcHR5LiBJbnN0YW5jZXMgb2YgdGhpcyB0eXBlIHdpdGggYW4gZW1wdHkgdmFsdWUgaGVyZSBhcmVcbmFsbW9zdCBjZXJ0YWlubHkgd3JvbmcuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL292ZXJ2aWV3L3dvcmtpbmctd2l0aC1vYmplY3RzL25hbWVzLyNuYW1lcyIsInR5cGUiOiJzdHJpbmcifSwib3B0aW9uYWwiOnsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IHdoZXRoZXIgdGhlIENvbmZpZ01hcCBvciBpdHMga2V5IG11c3QgYmUgZGVmaW5lZCIsInR5cGUiOiJib29sZWFuIn19LCJyZXF1aXJlZCI6WyJrZXkiXSwidHlwZSI6Im9iamVjdCIsIngta3ViZXJuZXRlcy1tYXAtdHlwZSI6ImF0b21pYyJ9LCJmaWVsZFJlZiI6eyJkZXNjcmlwdGlvbiI6IlNlbGVjdHMgYSBmaWVsZCBvZiB0aGUgcG9kOiBzdXBwb3J0cyBtZXRhZGF0YS5uYW1lLCBtZXRhZGF0YS5uYW1lc3BhY2UsIGBtZXRhZGF0YS5sYWJlbHNbJ1x1MDAzY0tFWVx1MDAzZSddYCwgYG1ldGFkYXRhLmFubm90YXRpb25zWydcdTAwM2NLRVlcdTAwM2UnXWAsXG5zcGVjLm5vZGVOYW1lLCBzcGVjLnNlcnZpY2VBY2NvdW50TmFtZSwgc3RhdHVzLmhvc3RJUCwgc3RhdHVzLnBvZElQLCBzdGF0dXMucG9kSVBzLiIsInByb3BlcnRpZXMiOnsiYXBpVmVyc2lvbiI6eyJkZXNjcmlwdGlvbiI6IlZlcnNpb24gb2YgdGhlIHNjaGVtYSB0aGUgRmllbGRQYXRoIGlzIHdyaXR0ZW4gaW4gdGVybXMgb2YsIGRlZmF1bHRzIHRvIFwidjFcIi4iLCJ0eXBlIjoic3RyaW5nIn0sImZpZWxkUGF0aCI6eyJkZXNjcmlwdGlvbiI6IlBhdGggb2YgdGhlIGZpZWxkIHRvIHNlbGVjdCBpbiB0aGUgc3BlY2lmaWVkIEFQSSB2ZXJzaW9uLiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbImZpZWxkUGF0aCJdLCJ0eXBlIjoib2JqZWN0IiwieC1rdWJlcm5ldGVzLW1hcC10eXBlIjoiYXRvbWljIn0sImZpbGVLZXlSZWYiOnsiZGVzY3JpcHRpb24iOiJGaWxlS2V5UmVmIHNlbGVjdHMgYSBrZXkgb2YgdGhlIGVudiBmaWxlLlxuUmVxdWlyZXMgdGhlIEVudkZpbGVzIGZlYXR1cmUgZ2F0ZSB0byBiZSBlbmFibGVkLiIsInByb3BlcnRpZXMiOnsia2V5Ijp7ImRlc2NyaXB0aW9uIjoiVGhlIGtleSB3aXRoaW4gdGhlIGVudiBmaWxlLiBBbiBpbnZhbGlkIGtleSB3aWxsIHByZXZlbnQgdGhlIHBvZCBmcm9tIHN0YXJ0aW5nLlxuVGhlIGtleXMgZGVmaW5lZCB3aXRoaW4gYSBzb3VyY2UgbWF5IGNvbnNpc3Qgb2YgYW55IHByaW50YWJsZSBBU0NJSSBjaGFyYWN0ZXJzIGV4Y2VwdCAnPScuXG5EdXJpbmcgQWxwaGEgc3RhZ2Ugb2YgdGhlIEVudkZpbGVzIGZlYXR1cmUgZ2F0ZSwgdGhlIGtleSBzaXplIGlzIGxpbWl0ZWQgdG8gMTI4IGNoYXJhY3RlcnMuIiwidHlwZSI6InN0cmluZyJ9LCJvcHRpb25hbCI6eyJkZWZhdWx0IjpmYWxzZSwiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IHdoZXRoZXIgdGhlIGZpbGUgb3IgaXRzIGtleSBtdXN0IGJlIGRlZmluZWQuIElmIHRoZSBmaWxlIG9yIGtleVxuZG9lcyBub3QgZXhpc3QsIHRoZW4gdGhlIGVudiB2YXIgaXMgbm90IHB1Ymxpc2hlZC5cbklmIG9wdGlvbmFsIGlzIHNldCB0byB0cnVlIGFuZCB0aGUgc3BlY2lmaWVkIGtleSBkb2VzIG5vdCBleGlzdCxcbnRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSB3aWxsIG5vdCBiZSBzZXQgaW4gdGhlIFBvZCdzIGNvbnRhaW5lcnMuXG5cbklmIG9wdGlvbmFsIGlzIHNldCB0byBmYWxzZSBhbmQgdGhlIHNwZWNpZmllZCBrZXkgZG9lcyBub3QgZXhpc3QsXG5hbiBlcnJvciB3aWxsIGJlIHJldHVybmVkIGR1cmluZyBQb2QgY3JlYXRpb24uIiwidHlwZSI6ImJvb2xlYW4ifSwicGF0aCI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwYXRoIHdpdGhpbiB0aGUgdm9sdW1lIGZyb20gd2hpY2ggdG8gc2VsZWN0IHRoZSBmaWxlLlxuTXVzdCBiZSByZWxhdGl2ZSBhbmQgbWF5IG5vdCBjb250YWluIHRoZSAnLi4nIHBhdGggb3Igc3RhcnQgd2l0aCAnLi4nLiIsInR5cGUiOiJzdHJpbmcifSwidm9sdW1lTmFtZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSB2b2x1bWUgbW91bnQgY29udGFpbmluZyB0aGUgZW52IGZpbGUuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsia2V5IiwicGF0aCIsInZvbHVtZU5hbWUiXSwidHlwZSI6Im9iamVjdCIsIngta3ViZXJuZXRlcy1tYXAtdHlwZSI6ImF0b21pYyJ9LCJyZXNvdXJjZUZpZWxkUmVmIjp7ImRlc2NyaXB0aW9uIjoiU2VsZWN0cyBhIHJlc291cmNlIG9mIHRoZSBjb250YWluZXI6IG9ubHkgcmVzb3VyY2VzIGxpbWl0cyBhbmQgcmVxdWVzdHNcbihsaW1pdHMuY3B1LCBsaW1pdHMubWVtb3J5LCBsaW1pdHMuZXBoZW1lcmFsLXN0b3JhZ2UsIHJlcXVlc3RzLmNwdSwgcmVxdWVzdHMubWVtb3J5IGFuZCByZXF1ZXN0cy5lcGhlbWVyYWwtc3RvcmFnZSkgYXJlIGN1cnJlbnRseSBzdXBwb3J0ZWQuIiwicHJvcGVydGllcyI6eyJjb250YWluZXJOYW1lIjp7ImRlc2NyaXB0aW9uIjoiQ29udGFpbmVyIG5hbWU6IHJlcXVpcmVkIGZvciB2b2x1bWVzLCBvcHRpb25hbCBmb3IgZW52IHZhcnMiLCJ0eXBlIjoic3RyaW5nIn0sImRpdmlzb3IiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJkZXNjcmlwdGlvbiI6IlNwZWNpZmllcyB0aGUgb3V0cHV0IGZvcm1hdCBvZiB0aGUgZXhwb3NlZCByZXNvdXJjZXMsIGRlZmF1bHRzIHRvIFwiMVwiIiwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJyZXNvdXJjZSI6eyJkZXNjcmlwdGlvbiI6IlJlcXVpcmVkOiByZXNvdXJjZSB0byBzZWxlY3QiLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJyZXNvdXJjZSJdLCJ0eXBlIjoib2JqZWN0IiwieC1rdWJlcm5ldGVzLW1hcC10eXBlIjoiYXRvbWljIn0sInNlY3JldEtleVJlZiI6eyJkZXNjcmlwdGlvbiI6IlNlbGVjdHMgYSBrZXkgb2YgYSBzZWNyZXQgaW4gdGhlIHBvZCdzIG5hbWVzcGFjZSIsInByb3BlcnRpZXMiOnsia2V5Ijp7ImRlc2NyaXB0aW9uIjoiVGhlIGtleSBvZiB0aGUgc2VjcmV0IHRvIHNlbGVjdCBmcm9tLiAgTXVzdCBiZSBhIHZhbGlkIHNlY3JldCBrZXkuIiwidHlwZSI6InN0cmluZyJ9LCJuYW1lIjp7ImRlZmF1bHQiOiIiLCJkZXNjcmlwdGlvbiI6Ik5hbWUgb2YgdGhlIHJlZmVyZW50LlxuVGhpcyBmaWVsZCBpcyBlZmZlY3RpdmVseSByZXF1aXJlZCwgYnV0IGR1ZSB0byBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSBpc1xuYWxsb3dlZCB0byBiZSBlbXB0eS4gSW5zdGFuY2VzIG9mIHRoaXMgdHlwZSB3aXRoIGFuIGVtcHR5IHZhbHVlIGhlcmUgYXJlXG5hbG1vc3QgY2VydGFpbmx5IHdyb25nLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9vdmVydmlldy93b3JraW5nLXdpdGgtb2JqZWN0cy9uYW1lcy8jbmFtZXMiLCJ0eXBlIjoic3RyaW5nIn0sIm9wdGlvbmFsIjp7ImRlc2NyaXB0aW9uIjoiU3BlY2lmeSB3aGV0aGVyIHRoZSBTZWNyZXQgb3IgaXRzIGtleSBtdXN0IGJlIGRlZmluZWQiLCJ0eXBlIjoiYm9vbGVhbiJ9fSwicmVxdWlyZWQiOlsia2V5Il0sInR5cGUiOiJvYmplY3QiLCJ4LWt1YmVybmV0ZXMtbWFwLXR5cGUiOiJhdG9taWMifX0sInR5cGUiOiJvYmplY3QifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibGFiZWxzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7InR5cGUiOiJzdHJpbmcifSwiZGVzY3JpcHRpb24iOiJDdXN0b20gbGFiZWxzIHRvIHNldCBvbiBhbGwgbWFuYWdlZCBvYmplY3RzLiIsInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwiaW1hZ2VQdWxsU2VjcmV0cyI6eyJkZXNjcmlwdGlvbiI6IkFkZGl0aW9uYWwgaW1hZ2UgcHVsbCBzZWNyZXRzIHRvIGJlIHRha2VuIGludG8gYWNjb3VudCBmb3IgcHVsbGluZyBpbWFnZXMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJMb2NhbFNlY3JldFJlZmVyZW5jZSBpcyBhIHJlZmVyZW5jZSB0byBhIHNlY3JldCB3aXRoaW4gdGhlIHNhbWUgbmFtZXNwYWNlLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSByZWZlcmVuY2VkIHNlY3JldC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sIm1pc2MiOnsiZGVzY3JpcHRpb24iOiJEZXByZWNhdGVkIGZpZWxkLiBUaGlzIGZpZWxkIHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLlxuTWlzY2VsbGFuZW91cyBzZXR0aW5ncy4iLCJwcm9wZXJ0aWVzIjp7ImNyZWF0ZVNDQ3MiOnsiZGVzY3JpcHRpb24iOiJEZXByZWNhdGVkIGZpZWxkLiBUaGlzIGZpZWxkIHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLlxuU2V0IHRoaXMgdG8gdHJ1ZSB0byBoYXZlIHRoZSBvcGVyYXRvciBjcmVhdGUgU2VjdXJpdHlDb250ZXh0Q29uc3RyYWludHMgKFNDQ3MpIGZvciB0aGUgb3BlcmFuZHMuIFRoaXNcbmlzbid0IHVzdWFsbHkgbmVlZGVkLCBhbmQgbWF5IGludGVyZmVyZSB3aXRoIG90aGVyIHdvcmtsb2Fkcy4iLCJ0eXBlIjoiYm9vbGVhbiJ9fSwidHlwZSI6Im9iamVjdCJ9LCJtb25pdG9yaW5nIjp7ImRlc2NyaXB0aW9uIjoiTW9uaXRvcmluZyBjb25maWd1cmF0aW9uLiIsInByb3BlcnRpZXMiOnsib3BlbnNoaWZ0Ijp7ImRlc2NyaXB0aW9uIjoiT3BlblNoaWZ0TW9uaXRvcmluZyBkZWZpbmVzIHNldHRpbmdzIHJlbGF0ZWQgdG8gT3BlblNoaWZ0IE1vbml0b3JpbmciLCJwcm9wZXJ0aWVzIjp7ImVuYWJsZWQiOnsiZGVmYXVsdCI6dHJ1ZSwidHlwZSI6ImJvb2xlYW4ifX0sInJlcXVpcmVkIjpbImVuYWJsZWQiXSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJuZXR3b3JrIjp7ImRlc2NyaXB0aW9uIjoiTmV0d29yayBjb25maWd1cmF0aW9uLiIsInByb3BlcnRpZXMiOnsicG9saWNpZXMiOnsiZGVmYXVsdCI6IkVuYWJsZWQiLCJkZXNjcmlwdGlvbiI6IlRvIHByb3ZpZGUgc2VjdXJpdHkgYXQgdGhlIG5ldHdvcmsgbGV2ZWwgdGhlIEFDUyBPcGVyYXRvciBjcmVhdGVzIE5ldHdvcmtQb2xpY3kgcmVzb3VyY2VzIGJ5IGRlZmF1bHQuIElmIHlvdSB3YW50IHRvIG1hbmFnZSB5b3VyIG93biBOZXR3b3JrUG9saWN5IG9iamVjdHMgdGhlbiBzZXQgdGhpcyB0byBcIkRpc2FibGVkXCIuIiwiZW51bSI6WyJFbmFibGVkIiwiRGlzYWJsZWQiXSwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJvdmVybGF5cyI6eyJkZXNjcmlwdGlvbiI6Ik92ZXJsYXlzIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJLOHNPYmplY3RPdmVybGF5IGlzIGFuIG92ZXJsYXkgdGhhdCBhcHBsaWVzIGEgc2V0IG9mIHBhdGNoZXMgdG8gYSByZXNvdXJjZS5cbkl0IHRhcmdldHMgYSByZXNvdXJjZSBieSBpdHMgQVBJIHZlcnNpb24sIGtpbmQsIGFuZCBuYW1lLCBhbmQgYXBwbGllc1xuYSBsaXN0IG9mIHBhdGNoZXMgdG8gdGhpcyByZXNvdXJjZS5cblxuIyBFeGFtcGxlc1xuXG4jIyBBZGRpbmcgYW4gYW5ub3RhdGlvbiB0byBhIHJlc291cmNlXG5cblx0YXBpVmVyc2lvbjogdjFcblx0a2luZDogU2VydmljZUFjY291bnRcblx0bmFtZTogY2VudHJhbFxuXHRwYXRjaGVzOlxuXHQtIHBhdGg6IG1ldGFkYXRhLmFubm90YXRpb25zLmVrc1xcLmFtYXpvbmF3c1xcLmNvbS9yb2xlLWFyblxuXHQgIHZhbHVlOiBcIlxcXCJhcm46YXdzOmlhbToxMjM0OnJvbGVcXFwiXCJcblxuIyMgQWRkaW5nIGFuIGVudmlyb25tZW50IHZhcmlhYmxlIHRvIGEgZGVwbG95bWVudFxuXG5cdGFwaVZlcnNpb246IGFwcHMvdjFcblx0a2luZDogRGVwbG95bWVudFxuXHRuYW1lOiBjZW50cmFsXG5cdHBhdGNoZXM6XG5cdC0gcGF0aDogc3BlYy50ZW1wbGF0ZS5zcGVjLmNvbnRhaW5lcnNbbmFtZTpjZW50cmFsXS5lbnZbLTFdXG5cdCAgdmFsdWU6IHxcblx0ICAgIG5hbWU6IE1ZX0VOVl9WQVJcblx0ICAgIHZhbHVlOiB2YWx1ZVxuXG4jIyBBZGRpbmcgYW4gaW5ncmVzcyB0byBhIG5ldHdvcmsgcG9saWN5XG5cblx0YXBpVmVyc2lvbjogbmV0d29ya2luZy5rOHMuaW8vdjFcblx0a2luZDogTmV0d29ya1BvbGljeVxuXHRuYW1lOiBhbGxvdy1leHQtdG8tY2VudHJhbFxuXHRwYXRjaGVzOlxuXHQtIHBhdGg6IHNwZWMuaW5ncmVzc1stMV1cblx0ICB2YWx1ZTogfFxuXHQgICAgcG9ydHM6XG5cdCAgICAtIHBvcnQ6IDk5OVxuXHQgICAgICBwcm90b2NvbDogVENQXG5cbiMjIENoYW5naW5nIHRoZSB2YWx1ZSBvZiBhIGNvbmZpZ01hcFxuXG5cdGFwaVZlcnNpb246IHYxXG5cdGtpbmQ6IENvbmZpZ01hcFxuXHRuYW1lOiBjZW50cmFsLWVuZHBvaW50c1xuXHRwYXRjaGVzOlxuXHQtIHBhdGg6IGRhdGEuZW5kcG9pbnRzXFwueWFtbDpcblx0ICB2ZXJiYXRpbTogfFxuXHQgICAgZGlzYWJsZURlZmF1bHQ6IGZhbHNlXG5cbiMjIEFkZGluZyBhIGNvbnRhaW5lciB0byBhIGRlcGxveW1lbnRcblxuXHRhcGlWZXJzaW9uOiBhcHBzL3YxXG5cdGtpbmQ6IERlcGxveW1lbnRcblx0bmFtZTogY2VudHJhbFxuXHRwYXRjaGVzOlxuXHQgIC0gcGF0aDogc3BlYy50ZW1wbGF0ZS5zcGVjLmNvbnRhaW5lcnNbLTFdXG5cdCAgICB2YWx1ZTogfFxuXHQgICAgICBuYW1lOiBuZ2lueFxuXHQgICAgICBpbWFnZTogbmdpbnhcblx0ICAgICAgcG9ydHM6XG5cdCAgICAgIC0gY29udGFpbmVyUG9ydDogODAwMFxuXHQgICAgICAgIG5hbWU6IGh0dHBcblx0ICAgICAgICBwcm90b2NvbDogVENQIiwicHJvcGVydGllcyI6eyJhcGlWZXJzaW9uIjp7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2UgQVBJIHZlcnNpb24uIiwidHlwZSI6InN0cmluZyJ9LCJraW5kIjp7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2Uga2luZC4iLCJ0eXBlIjoic3RyaW5nIn0sIm5hbWUiOnsiZGVzY3JpcHRpb24iOiJOYW1lIG9mIHJlc291cmNlLiIsInR5cGUiOiJzdHJpbmcifSwib3B0aW9uYWwiOnsiZGVzY3JpcHRpb24iOiJPcHRpb25hbCBtYXJrcyB0aGUgb3ZlcmxheSBhcyBvcHRpb25hbC5cbldoZW4gT3B0aW9uYWwgaXMgdHJ1ZSwgYW5kIHRoZSBzcGVjaWZpZWQgcmVzb3VyY2UgZG9lcyBub3QgZXhpc3QgaW4gdGhlIG91dHB1dCBtYW5pZmVzdHMsIHRoZSBvdmVybGF5IHdpbGwgYmUgc2tpcHBlZCwgYW5kIGEgd2FybmluZyB3aWxsIGJlIGxvZ2dlZC5cbldoZW4gT3B0aW9uYWwgaXMgZmFsc2UsIGFuZCB0aGUgc3BlY2lmaWVkIHJlc291cmNlIGRvZXMgbm90IGV4aXN0IGluIHRoZSBvdXRwdXQgbWFuaWZlc3RzLCBhbiBlcnJvciB3aWxsIGJlIHRocm93bi4iLCJ0eXBlIjoiYm9vbGVhbiJ9LCJwYXRjaGVzIjp7ImRlc2NyaXB0aW9uIjoiTGlzdCBvZiBwYXRjaGVzIHRvIGFwcGx5IHRvIHJlc291cmNlLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiSzhzT2JqZWN0T3ZlcmxheVBhdGNoIGRlZmluZXMgYSBwYXRjaCB0byBhcHBseSB0byBhIHJlc291cmNlLiIsInByb3BlcnRpZXMiOnsicGF0aCI6eyJkZXNjcmlwdGlvbiI6IlBhdGggb2YgdGhlIGZvcm0gYS5ba2V5MTp2YWx1ZTFdLmIuWzp2YWx1ZTJdXG5XaGVyZSBba2V5MTp2YWx1ZTFdIGlzIGEgc2VsZWN0b3IgZm9yIGEga2V5LXZhbHVlIHBhaXIgdG8gaWRlbnRpZnkgYSBsaXN0IGVsZW1lbnQgYW5kIFs6dmFsdWVdIGlzIGEgdmFsdWVcbnNlbGVjdG9yIHRvIGlkZW50aWZ5IGEgbGlzdCBlbGVtZW50IGluIGEgbGVhZiBsaXN0LlxuQWxsIHBhdGggaW50ZXJtZWRpYXRlIG5vZGVzIG11c3QgZXhpc3QuIiwidHlwZSI6InN0cmluZyJ9LCJ2YWx1ZSI6eyJkZXNjcmlwdGlvbiI6IlZhbHVlIHRvIGFkZCwgZGVsZXRlIG9yIHJlcGxhY2UuXG5Gb3IgYWRkLCB0aGUgcGF0aCBzaG91bGQgYmUgYSBuZXcgbGVhZi5cbkZvciBkZWxldGUsIHZhbHVlIHNob3VsZCBiZSB1bnNldC5cbkZvciByZXBsYWNlLCBwYXRoIHNob3VsZCByZWZlcmVuY2UgYW4gZXhpc3Rpbmcgbm9kZS5cbkFsbCB2YWx1ZXMgYXJlIHN0cmluZ3MgYnV0IGFyZSBjb252ZXJ0ZWQgaW50byBhcHByb3ByaWF0ZSB0eXBlIGJhc2VkIG9uIHNjaGVtYS4iLCJ0eXBlIjoic3RyaW5nIn0sInZlcmJhdGltIjp7ImRlc2NyaXB0aW9uIjoiVmVyYmF0aW0gdmFsdWUgdG8gYWRkLCBkZWxldGUgb3IgcmVwbGFjZS5cblNhbWUgYXMgVmFsdWUsIGhvd2V2ZXIgdGhlIGNvbnRlbnQgaXMgbm90IGludGVycHJldGVkIGFzIFlBTUwsIGJ1dCB0cmVhdGVkIGFzIGxpdGVyYWwgc3RyaW5nIGluc3RlYWQuXG5BdCBsZWFzdCBvbmUgb2YgVmFsdWUgYW5kIFZlcmJhdGltIG11c3QgYmUgZW1wdHkuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sInBlck5vZGUiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIGNvbXBvbmVudHMgcnVubmluZyBvbiBlYWNoIG5vZGUgaW4gdGhlIGNsdXN0ZXIgKENvbGxlY3RvciBhbmQgQ29tcGxpYW5jZSkuIiwicHJvcGVydGllcyI6eyJjb2xsZWN0b3IiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIENvbGxlY3RvciBjb250YWluZXIsIHdoaWNoIGlzIHJlc3BvbnNpYmxlIGZvciBjb2xsZWN0aW5nIHByb2Nlc3MgYW5kIG5ldHdvcmtpbmdcbmFjdGl2aXR5IGF0IHRoZSBob3N0IGxldmVsLiIsInByb3BlcnRpZXMiOnsiY29sbGVjdGlvbiI6eyJkZWZhdWx0IjoiQ09SRV9CUEYiLCJkZXNjcmlwdGlvbiI6IlRoZSBtZXRob2QgZm9yIHN5c3RlbS1sZXZlbCBkYXRhIGNvbGxlY3Rpb24uIENPUkVfQlBGIGlzIHJlY29tbWVuZGVkLlxuSWYgeW91IHNlbGVjdCBcIk5vQ29sbGVjdGlvblwiLCB5b3Ugd2lsbCBub3QgYmUgYWJsZSB0byBzZWUgYW55IGluZm9ybWF0aW9uIGFib3V0IG5ldHdvcmsgYWN0aXZpdHlcbmFuZCBwcm9jZXNzIGV4ZWN1dGlvbnMuIFRoZSByZW1haW5pbmcgc2V0dGluZ3MgaW4gdGhlc2Ugc2VjdGlvbiB3aWxsIG5vdCBoYXZlIGFueSBlZmZlY3QuXG5UaGUgdmFsdWUgaXMgYSBzdWJqZWN0IG9mIGNvbnZlcnNpb24gYnkgdGhlIG9wZXJhdG9yIGlmIG5lZWRlZCwgZS5nLiB0b1xucmVtb3ZlIGRlcHJlY2F0ZWQgbWV0aG9kcy4iLCJlbnVtIjpbIkVCUEYiLCJDT1JFX0JQRiIsIk5vQ29sbGVjdGlvbiIsIktlcm5lbE1vZHVsZSJdLCJ0eXBlIjoic3RyaW5nIn0sImZvcmNlQ29sbGVjdGlvbiI6eyJkZWZhdWx0IjpmYWxzZSwiZGVzY3JpcHRpb24iOiJEZXByZWNhdGVkIGZpZWxkLiBUaGlzIGZpZWxkIHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLiIsInR5cGUiOiJib29sZWFuIn0sImltYWdlRmxhdm9yIjp7ImRlZmF1bHQiOiJSZWd1bGFyIiwiZGVzY3JpcHRpb24iOiJEZXByZWNhdGVkIGZpZWxkLiIsImVudW0iOlsiUmVndWxhciIsIlNsaW0iXSwidHlwZSI6InN0cmluZyJ9LCJyZXNvdXJjZXMiOnsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsInByb3BlcnRpZXMiOnsiY2xhaW1zIjp7ImRlc2NyaXB0aW9uIjoiQ2xhaW1zIGxpc3RzIHRoZSBuYW1lcyBvZiByZXNvdXJjZXMsIGRlZmluZWQgaW4gc3BlYy5yZXNvdXJjZUNsYWltcyxcbnRoYXQgYXJlIHVzZWQgYnkgdGhpcyBjb250YWluZXIuXG5cblRoaXMgZmllbGQgZGVwZW5kcyBvbiB0aGVcbkR5bmFtaWNSZXNvdXJjZUFsbG9jYXRpb24gZmVhdHVyZSBnYXRlLlxuXG5UaGlzIGZpZWxkIGlzIGltbXV0YWJsZS4gSXQgY2FuIG9ubHkgYmUgc2V0IGZvciBjb250YWluZXJzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2VDbGFpbSByZWZlcmVuY2VzIG9uZSBlbnRyeSBpbiBQb2RTcGVjLlJlc291cmNlQ2xhaW1zLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik5hbWUgbXVzdCBtYXRjaCB0aGUgbmFtZSBvZiBvbmUgZW50cnkgaW4gcG9kLnNwZWMucmVzb3VyY2VDbGFpbXMgb2ZcbnRoZSBQb2Qgd2hlcmUgdGhpcyBmaWVsZCBpcyB1c2VkLiBJdCBtYWtlcyB0aGF0IHJlc291cmNlIGF2YWlsYWJsZVxuaW5zaWRlIGEgY29udGFpbmVyLiIsInR5cGUiOiJzdHJpbmcifSwicmVxdWVzdCI6eyJkZXNjcmlwdGlvbiI6IlJlcXVlc3QgaXMgdGhlIG5hbWUgY2hvc2VuIGZvciBhIHJlcXVlc3QgaW4gdGhlIHJlZmVyZW5jZWQgY2xhaW0uXG5JZiBlbXB0eSwgZXZlcnl0aGluZyBmcm9tIHRoZSBjbGFpbSBpcyBtYWRlIGF2YWlsYWJsZSwgb3RoZXJ3aXNlXG5vbmx5IHRoZSByZXN1bHQgb2YgdGhpcyByZXF1ZXN0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC1tYXAta2V5cyI6WyJuYW1lIl0sIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJtYXAifSwibGltaXRzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IkxpbWl0cyBkZXNjcmliZXMgdGhlIG1heGltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIGFsbG93ZWQuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifSwicmVxdWVzdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiUmVxdWVzdHMgZGVzY3JpYmVzIHRoZSBtaW5pbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyByZXF1aXJlZC5cbklmIFJlcXVlc3RzIGlzIG9taXR0ZWQgZm9yIGEgY29udGFpbmVyLCBpdCBkZWZhdWx0cyB0byBMaW1pdHMgaWYgdGhhdCBpcyBleHBsaWNpdGx5IHNwZWNpZmllZCxcbm90aGVyd2lzZSB0byBhbiBpbXBsZW1lbnRhdGlvbi1kZWZpbmVkIHZhbHVlLiBSZXF1ZXN0cyBjYW5ub3QgZXhjZWVkIExpbWl0cy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJjb21wbGlhbmNlIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBDb21wbGlhbmNlIGNvbnRhaW5lciwgd2hpY2ggaXMgcmVzcG9uc2libGUgZm9yIGNoZWNraW5nIGhvc3QtbGV2ZWwgY29uZmlndXJhdGlvbnMuIiwicHJvcGVydGllcyI6eyJyZXNvdXJjZXMiOnsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsInByb3BlcnRpZXMiOnsiY2xhaW1zIjp7ImRlc2NyaXB0aW9uIjoiQ2xhaW1zIGxpc3RzIHRoZSBuYW1lcyBvZiByZXNvdXJjZXMsIGRlZmluZWQgaW4gc3BlYy5yZXNvdXJjZUNsYWltcyxcbnRoYXQgYXJlIHVzZWQgYnkgdGhpcyBjb250YWluZXIuXG5cblRoaXMgZmllbGQgZGVwZW5kcyBvbiB0aGVcbkR5bmFtaWNSZXNvdXJjZUFsbG9jYXRpb24gZmVhdHVyZSBnYXRlLlxuXG5UaGlzIGZpZWxkIGlzIGltbXV0YWJsZS4gSXQgY2FuIG9ubHkgYmUgc2V0IGZvciBjb250YWluZXJzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2VDbGFpbSByZWZlcmVuY2VzIG9uZSBlbnRyeSBpbiBQb2RTcGVjLlJlc291cmNlQ2xhaW1zLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik5hbWUgbXVzdCBtYXRjaCB0aGUgbmFtZSBvZiBvbmUgZW50cnkgaW4gcG9kLnNwZWMucmVzb3VyY2VDbGFpbXMgb2ZcbnRoZSBQb2Qgd2hlcmUgdGhpcyBmaWVsZCBpcyB1c2VkLiBJdCBtYWtlcyB0aGF0IHJlc291cmNlIGF2YWlsYWJsZVxuaW5zaWRlIGEgY29udGFpbmVyLiIsInR5cGUiOiJzdHJpbmcifSwicmVxdWVzdCI6eyJkZXNjcmlwdGlvbiI6IlJlcXVlc3QgaXMgdGhlIG5hbWUgY2hvc2VuIGZvciBhIHJlcXVlc3QgaW4gdGhlIHJlZmVyZW5jZWQgY2xhaW0uXG5JZiBlbXB0eSwgZXZlcnl0aGluZyBmcm9tIHRoZSBjbGFpbSBpcyBtYWRlIGF2YWlsYWJsZSwgb3RoZXJ3aXNlXG5vbmx5IHRoZSByZXN1bHQgb2YgdGhpcyByZXF1ZXN0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC1tYXAta2V5cyI6WyJuYW1lIl0sIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJtYXAifSwibGltaXRzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IkxpbWl0cyBkZXNjcmliZXMgdGhlIG1heGltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIGFsbG93ZWQuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifSwicmVxdWVzdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiUmVxdWVzdHMgZGVzY3JpYmVzIHRoZSBtaW5pbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyByZXF1aXJlZC5cbklmIFJlcXVlc3RzIGlzIG9taXR0ZWQgZm9yIGEgY29udGFpbmVyLCBpdCBkZWZhdWx0cyB0byBMaW1pdHMgaWYgdGhhdCBpcyBleHBsaWNpdGx5IHNwZWNpZmllZCxcbm90aGVyd2lzZSB0byBhbiBpbXBsZW1lbnRhdGlvbi1kZWZpbmVkIHZhbHVlLiBSZXF1ZXN0cyBjYW5ub3QgZXhjZWVkIExpbWl0cy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJob3N0QWxpYXNlcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzIGhvbGRzIHRoZSBtYXBwaW5nIGJldHdlZW4gSVAgYW5kIGhvc3RuYW1lcyB0aGF0IHdpbGwgYmUgaW5qZWN0ZWQgYXMgYW4gZW50cnkgaW4gdGhlXG5wb2QncyBob3N0cyBmaWxlLiIsInByb3BlcnRpZXMiOnsiaG9zdG5hbWVzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdG5hbWVzIGZvciB0aGUgYWJvdmUgSVAgYWRkcmVzcy4iLCJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJhdG9taWMifSwiaXAiOnsiZGVzY3JpcHRpb24iOiJJUCBhZGRyZXNzIG9mIHRoZSBob3N0IGZpbGUgZW50cnkuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiaXAiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibm9kZUludmVudG9yeSI6eyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIGZvciB0aGUgTm9kZS1JbnZlbnRvcnkgY29udGFpbmVyLCB3aGljaCBpcyByZXNwb25zaWJsZSBmb3Igc2Nhbm5pbmcgdGhlIE5vZGVzJyBmaWxlc3lzdGVtLiIsInByb3BlcnRpZXMiOnsicmVzb3VyY2VzIjp7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJwcm9wZXJ0aWVzIjp7ImNsYWltcyI6eyJkZXNjcmlwdGlvbiI6IkNsYWltcyBsaXN0cyB0aGUgbmFtZXMgb2YgcmVzb3VyY2VzLCBkZWZpbmVkIGluIHNwZWMucmVzb3VyY2VDbGFpbXMsXG50aGF0IGFyZSB1c2VkIGJ5IHRoaXMgY29udGFpbmVyLlxuXG5UaGlzIGZpZWxkIGRlcGVuZHMgb24gdGhlXG5EeW5hbWljUmVzb3VyY2VBbGxvY2F0aW9uIGZlYXR1cmUgZ2F0ZS5cblxuVGhpcyBmaWVsZCBpcyBpbW11dGFibGUuIEl0IGNhbiBvbmx5IGJlIHNldCBmb3IgY29udGFpbmVycy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlQ2xhaW0gcmVmZXJlbmNlcyBvbmUgZW50cnkgaW4gUG9kU3BlYy5SZXNvdXJjZUNsYWltcy4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJOYW1lIG11c3QgbWF0Y2ggdGhlIG5hbWUgb2Ygb25lIGVudHJ5IGluIHBvZC5zcGVjLnJlc291cmNlQ2xhaW1zIG9mXG50aGUgUG9kIHdoZXJlIHRoaXMgZmllbGQgaXMgdXNlZC4gSXQgbWFrZXMgdGhhdCByZXNvdXJjZSBhdmFpbGFibGVcbmluc2lkZSBhIGNvbnRhaW5lci4iLCJ0eXBlIjoic3RyaW5nIn0sInJlcXVlc3QiOnsiZGVzY3JpcHRpb24iOiJSZXF1ZXN0IGlzIHRoZSBuYW1lIGNob3NlbiBmb3IgYSByZXF1ZXN0IGluIHRoZSByZWZlcmVuY2VkIGNsYWltLlxuSWYgZW1wdHksIGV2ZXJ5dGhpbmcgZnJvbSB0aGUgY2xhaW0gaXMgbWFkZSBhdmFpbGFibGUsIG90aGVyd2lzZVxub25seSB0aGUgcmVzdWx0IG9mIHRoaXMgcmVxdWVzdC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtbWFwLWtleXMiOlsibmFtZSJdLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoibWFwIn0sImxpbWl0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJMaW1pdHMgZGVzY3JpYmVzIHRoZSBtYXhpbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyBhbGxvd2VkLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In0sInJlcXVlc3RzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IlJlcXVlc3RzIGRlc2NyaWJlcyB0aGUgbWluaW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgcmVxdWlyZWQuXG5JZiBSZXF1ZXN0cyBpcyBvbWl0dGVkIGZvciBhIGNvbnRhaW5lciwgaXQgZGVmYXVsdHMgdG8gTGltaXRzIGlmIHRoYXQgaXMgZXhwbGljaXRseSBzcGVjaWZpZWQsXG5vdGhlcndpc2UgdG8gYW4gaW1wbGVtZW50YXRpb24tZGVmaW5lZCB2YWx1ZS4gUmVxdWVzdHMgY2Fubm90IGV4Y2VlZCBMaW1pdHMuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwidGFpbnRUb2xlcmF0aW9uIjp7ImRlZmF1bHQiOiJUb2xlcmF0ZVRhaW50cyIsImRlc2NyaXB0aW9uIjoiVG8gZW5zdXJlIGNvbXByZWhlbnNpdmUgbW9uaXRvcmluZyBvZiB5b3VyIGNsdXN0ZXIgYWN0aXZpdHksIFJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eVxud2lsbCBydW4gc2VydmljZXMgb24gZXZlcnkgbm9kZSBpbiB0aGUgY2x1c3RlciwgaW5jbHVkaW5nIHRhaW50ZWQgbm9kZXMgYnkgZGVmYXVsdC4gSWYgeW91IGRvXG5ub3Qgd2FudCB0aGlzIGJlaGF2aW9yLCBwbGVhc2Ugc2VsZWN0ICdBdm9pZFRhaW50cycgaGVyZS4iLCJlbnVtIjpbIlRvbGVyYXRlVGFpbnRzIiwiQXZvaWRUYWludHMiXSwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJyZWdpc3RyeU92ZXJyaWRlIjp7ImRlc2NyaXB0aW9uIjoiU2V0IHRoaXMgcGFyYW1ldGVyIHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IHJlZ2lzdHJ5IGluIGltYWdlcy4gRm9yIGV4YW1wbGUsIG5naW54OmxhdGVzdCAtXHUwMDNlIFx1MDAzY3JlZ2lzdHJ5IG92ZXJyaWRlXHUwMDNlL2xpYnJhcnkvbmdpbng6bGF0ZXN0IiwidHlwZSI6InN0cmluZyJ9LCJzY2FubmVyIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBTY2FubmVyIGNvbXBvbmVudCwgd2hpY2ggaXMgcmVzcG9uc2libGUgZm9yIHZ1bG5lcmFiaWxpdHkgc2Nhbm5pbmcgb2YgY29udGFpbmVyXG5pbWFnZXMgc3RvcmVkIGluIGEgY2x1c3Rlci1sb2NhbCBpbWFnZSByZXBvc2l0b3J5LiIsInByb3BlcnRpZXMiOnsiYW5hbHl6ZXIiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBwZXJ0YWluaW5nIHRvIHRoZSBhbmFseXplciBkZXBsb3ltZW50LCBzdWNoIGFzIGZvciBhdXRvc2NhbGluZy4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RBbGlhc2VzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXMgaG9sZHMgdGhlIG1hcHBpbmcgYmV0d2VlbiBJUCBhbmQgaG9zdG5hbWVzIHRoYXQgd2lsbCBiZSBpbmplY3RlZCBhcyBhbiBlbnRyeSBpbiB0aGVcbnBvZCdzIGhvc3RzIGZpbGUuIiwicHJvcGVydGllcyI6eyJob3N0bmFtZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0bmFtZXMgZm9yIHRoZSBhYm92ZSBJUCBhZGRyZXNzLiIsIml0ZW1zIjp7InR5cGUiOiJzdHJpbmcifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6ImF0b21pYyJ9LCJpcCI6eyJkZXNjcmlwdGlvbiI6IklQIGFkZHJlc3Mgb2YgdGhlIGhvc3QgZmlsZSBlbnRyeS4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJpcCJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJub2RlU2VsZWN0b3IiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsidHlwZSI6InN0cmluZyJ9LCJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJ0eXBlIjoib2JqZWN0In0sInJlc291cmNlcyI6eyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwicHJvcGVydGllcyI6eyJjbGFpbXMiOnsiZGVzY3JpcHRpb24iOiJDbGFpbXMgbGlzdHMgdGhlIG5hbWVzIG9mIHJlc291cmNlcywgZGVmaW5lZCBpbiBzcGVjLnJlc291cmNlQ2xhaW1zLFxudGhhdCBhcmUgdXNlZCBieSB0aGlzIGNvbnRhaW5lci5cblxuVGhpcyBmaWVsZCBkZXBlbmRzIG9uIHRoZVxuRHluYW1pY1Jlc291cmNlQWxsb2NhdGlvbiBmZWF0dXJlIGdhdGUuXG5cblRoaXMgZmllbGQgaXMgaW1tdXRhYmxlLiBJdCBjYW4gb25seSBiZSBzZXQgZm9yIGNvbnRhaW5lcnMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJSZXNvdXJjZUNsYWltIHJlZmVyZW5jZXMgb25lIGVudHJ5IGluIFBvZFNwZWMuUmVzb3VyY2VDbGFpbXMuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTmFtZSBtdXN0IG1hdGNoIHRoZSBuYW1lIG9mIG9uZSBlbnRyeSBpbiBwb2Quc3BlYy5yZXNvdXJjZUNsYWltcyBvZlxudGhlIFBvZCB3aGVyZSB0aGlzIGZpZWxkIGlzIHVzZWQuIEl0IG1ha2VzIHRoYXQgcmVzb3VyY2UgYXZhaWxhYmxlXG5pbnNpZGUgYSBjb250YWluZXIuIiwidHlwZSI6InN0cmluZyJ9LCJyZXF1ZXN0Ijp7ImRlc2NyaXB0aW9uIjoiUmVxdWVzdCBpcyB0aGUgbmFtZSBjaG9zZW4gZm9yIGEgcmVxdWVzdCBpbiB0aGUgcmVmZXJlbmNlZCBjbGFpbS5cbklmIGVtcHR5LCBldmVyeXRoaW5nIGZyb20gdGhlIGNsYWltIGlzIG1hZGUgYXZhaWxhYmxlLCBvdGhlcndpc2Vcbm9ubHkgdGhlIHJlc3VsdCBvZiB0aGlzIHJlcXVlc3QuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LW1hcC1rZXlzIjpbIm5hbWUiXSwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6Im1hcCJ9LCJsaW1pdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiTGltaXRzIGRlc2NyaWJlcyB0aGUgbWF4aW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgYWxsb3dlZC5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9LCJyZXF1ZXN0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJSZXF1ZXN0cyBkZXNjcmliZXMgdGhlIG1pbmltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIHJlcXVpcmVkLlxuSWYgUmVxdWVzdHMgaXMgb21pdHRlZCBmb3IgYSBjb250YWluZXIsIGl0IGRlZmF1bHRzIHRvIExpbWl0cyBpZiB0aGF0IGlzIGV4cGxpY2l0bHkgc3BlY2lmaWVkLFxub3RoZXJ3aXNlIHRvIGFuIGltcGxlbWVudGF0aW9uLWRlZmluZWQgdmFsdWUuIFJlcXVlc3RzIGNhbm5vdCBleGNlZWQgTGltaXRzLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sInNjYWxpbmciOnsiZGVzY3JpcHRpb24iOiJDb250cm9scyB0aGUgbnVtYmVyIG9mIGFuYWx5emVyIHJlcGxpY2FzIGFuZCBhdXRvc2NhbGluZy4iLCJwcm9wZXJ0aWVzIjp7ImF1dG9TY2FsaW5nIjp7ImRlZmF1bHQiOiJFbmFibGVkIiwiZGVzY3JpcHRpb24iOiJXaGVuIGVuYWJsZWQsIHRoZSBudW1iZXIgb2YgY29tcG9uZW50IHJlcGxpY2FzIGlzIG1hbmFnZWQgZHluYW1pY2FsbHkgYmFzZWQgb24gdGhlIGxvYWQsIHdpdGhpbiB0aGUgbGltaXRzXG5zcGVjaWZpZWQgYmVsb3cuIiwiZW51bSI6WyJFbmFibGVkIiwiRGlzYWJsZWQiXSwidHlwZSI6InN0cmluZyJ9LCJtYXhSZXBsaWNhcyI6eyJkZWZhdWx0Ijo1LCJmb3JtYXQiOiJpbnQzMiIsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn0sIm1pblJlcGxpY2FzIjp7ImRlZmF1bHQiOjIsImZvcm1hdCI6ImludDMyIiwibWluaW11bSI6MSwidHlwZSI6ImludGVnZXIifSwicmVwbGljYXMiOnsiZGVmYXVsdCI6MywiZGVzY3JpcHRpb24iOiJXaGVuIGF1dG9zY2FsaW5nIGlzIGRpc2FibGVkLCB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIHdpbGwgYWx3YXlzIGJlIGNvbmZpZ3VyZWQgdG8gbWF0Y2ggdGhpcyB2YWx1ZS4iLCJmb3JtYXQiOiJpbnQzMiIsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn19LCJ0eXBlIjoib2JqZWN0In0sInRvbGVyYXRpb25zIjp7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJUaGUgcG9kIHRoaXMgVG9sZXJhdGlvbiBpcyBhdHRhY2hlZCB0byB0b2xlcmF0ZXMgYW55IHRhaW50IHRoYXQgbWF0Y2hlc1xudGhlIHRyaXBsZSBcdTAwM2NrZXksdmFsdWUsZWZmZWN0XHUwMDNlIHVzaW5nIHRoZSBtYXRjaGluZyBvcGVyYXRvciBcdTAwM2NvcGVyYXRvclx1MDAzZS4iLCJwcm9wZXJ0aWVzIjp7ImVmZmVjdCI6eyJkZXNjcmlwdGlvbiI6IkVmZmVjdCBpbmRpY2F0ZXMgdGhlIHRhaW50IGVmZmVjdCB0byBtYXRjaC4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGVmZmVjdHMuXG5XaGVuIHNwZWNpZmllZCwgYWxsb3dlZCB2YWx1ZXMgYXJlIE5vU2NoZWR1bGUsIFByZWZlck5vU2NoZWR1bGUgYW5kIE5vRXhlY3V0ZS4iLCJ0eXBlIjoic3RyaW5nIn0sImtleSI6eyJkZXNjcmlwdGlvbiI6IktleSBpcyB0aGUgdGFpbnQga2V5IHRoYXQgdGhlIHRvbGVyYXRpb24gYXBwbGllcyB0by4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGtleXMuXG5JZiB0aGUga2V5IGlzIGVtcHR5LCBvcGVyYXRvciBtdXN0IGJlIEV4aXN0czsgdGhpcyBjb21iaW5hdGlvbiBtZWFucyB0byBtYXRjaCBhbGwgdmFsdWVzIGFuZCBhbGwga2V5cy4iLCJ0eXBlIjoic3RyaW5nIn0sIm9wZXJhdG9yIjp7ImRlc2NyaXB0aW9uIjoiT3BlcmF0b3IgcmVwcmVzZW50cyBhIGtleSdzIHJlbGF0aW9uc2hpcCB0byB0aGUgdmFsdWUuXG5WYWxpZCBvcGVyYXRvcnMgYXJlIEV4aXN0cyBhbmQgRXF1YWwuIERlZmF1bHRzIHRvIEVxdWFsLlxuRXhpc3RzIGlzIGVxdWl2YWxlbnQgdG8gd2lsZGNhcmQgZm9yIHZhbHVlLCBzbyB0aGF0IGEgcG9kIGNhblxudG9sZXJhdGUgYWxsIHRhaW50cyBvZiBhIHBhcnRpY3VsYXIgY2F0ZWdvcnkuIiwidHlwZSI6InN0cmluZyJ9LCJ0b2xlcmF0aW9uU2Vjb25kcyI6eyJkZXNjcmlwdGlvbiI6IlRvbGVyYXRpb25TZWNvbmRzIHJlcHJlc2VudHMgdGhlIHBlcmlvZCBvZiB0aW1lIHRoZSB0b2xlcmF0aW9uICh3aGljaCBtdXN0IGJlXG5vZiBlZmZlY3QgTm9FeGVjdXRlLCBvdGhlcndpc2UgdGhpcyBmaWVsZCBpcyBpZ25vcmVkKSB0b2xlcmF0ZXMgdGhlIHRhaW50LiBCeSBkZWZhdWx0LFxuaXQgaXMgbm90IHNldCwgd2hpY2ggbWVhbnMgdG9sZXJhdGUgdGhlIHRhaW50IGZvcmV2ZXIgKGRvIG5vdCBldmljdCkuIFplcm8gYW5kXG5uZWdhdGl2ZSB2YWx1ZXMgd2lsbCBiZSB0cmVhdGVkIGFzIDAgKGV2aWN0IGltbWVkaWF0ZWx5KSBieSB0aGUgc3lzdGVtLiIsImZvcm1hdCI6ImludDY0IiwidHlwZSI6ImludGVnZXIifSwidmFsdWUiOnsiZGVzY3JpcHRpb24iOiJWYWx1ZSBpcyB0aGUgdGFpbnQgdmFsdWUgdGhlIHRvbGVyYXRpb24gbWF0Y2hlcyB0by5cbklmIHRoZSBvcGVyYXRvciBpcyBFeGlzdHMsIHRoZSB2YWx1ZSBzaG91bGQgYmUgZW1wdHksIG90aGVyd2lzZSBqdXN0IGEgcmVndWxhciBzdHJpbmcuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifX0sInR5cGUiOiJvYmplY3QifSwiZGIiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBwZXJ0YWluaW5nIHRvIHRoZSBkYXRhYmFzZSB1c2VkIGJ5IHRoZSBSZWQgSGF0IEFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHkgU2Nhbm5lci4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RBbGlhc2VzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXMgaG9sZHMgdGhlIG1hcHBpbmcgYmV0d2VlbiBJUCBhbmQgaG9zdG5hbWVzIHRoYXQgd2lsbCBiZSBpbmplY3RlZCBhcyBhbiBlbnRyeSBpbiB0aGVcbnBvZCdzIGhvc3RzIGZpbGUuIiwicHJvcGVydGllcyI6eyJob3N0bmFtZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0bmFtZXMgZm9yIHRoZSBhYm92ZSBJUCBhZGRyZXNzLiIsIml0ZW1zIjp7InR5cGUiOiJzdHJpbmcifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6ImF0b21pYyJ9LCJpcCI6eyJkZXNjcmlwdGlvbiI6IklQIGFkZHJlc3Mgb2YgdGhlIGhvc3QgZmlsZSBlbnRyeS4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJpcCJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJub2RlU2VsZWN0b3IiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsidHlwZSI6InN0cmluZyJ9LCJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJ0eXBlIjoib2JqZWN0In0sInJlc291cmNlcyI6eyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwicHJvcGVydGllcyI6eyJjbGFpbXMiOnsiZGVzY3JpcHRpb24iOiJDbGFpbXMgbGlzdHMgdGhlIG5hbWVzIG9mIHJlc291cmNlcywgZGVmaW5lZCBpbiBzcGVjLnJlc291cmNlQ2xhaW1zLFxudGhhdCBhcmUgdXNlZCBieSB0aGlzIGNvbnRhaW5lci5cblxuVGhpcyBmaWVsZCBkZXBlbmRzIG9uIHRoZVxuRHluYW1pY1Jlc291cmNlQWxsb2NhdGlvbiBmZWF0dXJlIGdhdGUuXG5cblRoaXMgZmllbGQgaXMgaW1tdXRhYmxlLiBJdCBjYW4gb25seSBiZSBzZXQgZm9yIGNvbnRhaW5lcnMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJSZXNvdXJjZUNsYWltIHJlZmVyZW5jZXMgb25lIGVudHJ5IGluIFBvZFNwZWMuUmVzb3VyY2VDbGFpbXMuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTmFtZSBtdXN0IG1hdGNoIHRoZSBuYW1lIG9mIG9uZSBlbnRyeSBpbiBwb2Quc3BlYy5yZXNvdXJjZUNsYWltcyBvZlxudGhlIFBvZCB3aGVyZSB0aGlzIGZpZWxkIGlzIHVzZWQuIEl0IG1ha2VzIHRoYXQgcmVzb3VyY2UgYXZhaWxhYmxlXG5pbnNpZGUgYSBjb250YWluZXIuIiwidHlwZSI6InN0cmluZyJ9LCJyZXF1ZXN0Ijp7ImRlc2NyaXB0aW9uIjoiUmVxdWVzdCBpcyB0aGUgbmFtZSBjaG9zZW4gZm9yIGEgcmVxdWVzdCBpbiB0aGUgcmVmZXJlbmNlZCBjbGFpbS5cbklmIGVtcHR5LCBldmVyeXRoaW5nIGZyb20gdGhlIGNsYWltIGlzIG1hZGUgYXZhaWxhYmxlLCBvdGhlcndpc2Vcbm9ubHkgdGhlIHJlc3VsdCBvZiB0aGlzIHJlcXVlc3QuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LW1hcC1rZXlzIjpbIm5hbWUiXSwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6Im1hcCJ9LCJsaW1pdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiTGltaXRzIGRlc2NyaWJlcyB0aGUgbWF4aW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgYWxsb3dlZC5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9LCJyZXF1ZXN0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJSZXF1ZXN0cyBkZXNjcmliZXMgdGhlIG1pbmltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIHJlcXVpcmVkLlxuSWYgUmVxdWVzdHMgaXMgb21pdHRlZCBmb3IgYSBjb250YWluZXIsIGl0IGRlZmF1bHRzIHRvIExpbWl0cyBpZiB0aGF0IGlzIGV4cGxpY2l0bHkgc3BlY2lmaWVkLFxub3RoZXJ3aXNlIHRvIGFuIGltcGxlbWVudGF0aW9uLWRlZmluZWQgdmFsdWUuIFJlcXVlc3RzIGNhbm5vdCBleGNlZWQgTGltaXRzLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sInRvbGVyYXRpb25zIjp7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJUaGUgcG9kIHRoaXMgVG9sZXJhdGlvbiBpcyBhdHRhY2hlZCB0byB0b2xlcmF0ZXMgYW55IHRhaW50IHRoYXQgbWF0Y2hlc1xudGhlIHRyaXBsZSBcdTAwM2NrZXksdmFsdWUsZWZmZWN0XHUwMDNlIHVzaW5nIHRoZSBtYXRjaGluZyBvcGVyYXRvciBcdTAwM2NvcGVyYXRvclx1MDAzZS4iLCJwcm9wZXJ0aWVzIjp7ImVmZmVjdCI6eyJkZXNjcmlwdGlvbiI6IkVmZmVjdCBpbmRpY2F0ZXMgdGhlIHRhaW50IGVmZmVjdCB0byBtYXRjaC4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGVmZmVjdHMuXG5XaGVuIHNwZWNpZmllZCwgYWxsb3dlZCB2YWx1ZXMgYXJlIE5vU2NoZWR1bGUsIFByZWZlck5vU2NoZWR1bGUgYW5kIE5vRXhlY3V0ZS4iLCJ0eXBlIjoic3RyaW5nIn0sImtleSI6eyJkZXNjcmlwdGlvbiI6IktleSBpcyB0aGUgdGFpbnQga2V5IHRoYXQgdGhlIHRvbGVyYXRpb24gYXBwbGllcyB0by4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGtleXMuXG5JZiB0aGUga2V5IGlzIGVtcHR5LCBvcGVyYXRvciBtdXN0IGJlIEV4aXN0czsgdGhpcyBjb21iaW5hdGlvbiBtZWFucyB0byBtYXRjaCBhbGwgdmFsdWVzIGFuZCBhbGwga2V5cy4iLCJ0eXBlIjoic3RyaW5nIn0sIm9wZXJhdG9yIjp7ImRlc2NyaXB0aW9uIjoiT3BlcmF0b3IgcmVwcmVzZW50cyBhIGtleSdzIHJlbGF0aW9uc2hpcCB0byB0aGUgdmFsdWUuXG5WYWxpZCBvcGVyYXRvcnMgYXJlIEV4aXN0cyBhbmQgRXF1YWwuIERlZmF1bHRzIHRvIEVxdWFsLlxuRXhpc3RzIGlzIGVxdWl2YWxlbnQgdG8gd2lsZGNhcmQgZm9yIHZhbHVlLCBzbyB0aGF0IGEgcG9kIGNhblxudG9sZXJhdGUgYWxsIHRhaW50cyBvZiBhIHBhcnRpY3VsYXIgY2F0ZWdvcnkuIiwidHlwZSI6InN0cmluZyJ9LCJ0b2xlcmF0aW9uU2Vjb25kcyI6eyJkZXNjcmlwdGlvbiI6IlRvbGVyYXRpb25TZWNvbmRzIHJlcHJlc2VudHMgdGhlIHBlcmlvZCBvZiB0aW1lIHRoZSB0b2xlcmF0aW9uICh3aGljaCBtdXN0IGJlXG5vZiBlZmZlY3QgTm9FeGVjdXRlLCBvdGhlcndpc2UgdGhpcyBmaWVsZCBpcyBpZ25vcmVkKSB0b2xlcmF0ZXMgdGhlIHRhaW50LiBCeSBkZWZhdWx0LFxuaXQgaXMgbm90IHNldCwgd2hpY2ggbWVhbnMgdG9sZXJhdGUgdGhlIHRhaW50IGZvcmV2ZXIgKGRvIG5vdCBldmljdCkuIFplcm8gYW5kXG5uZWdhdGl2ZSB2YWx1ZXMgd2lsbCBiZSB0cmVhdGVkIGFzIDAgKGV2aWN0IGltbWVkaWF0ZWx5KSBieSB0aGUgc3lzdGVtLiIsImZvcm1hdCI6ImludDY0IiwidHlwZSI6ImludGVnZXIifSwidmFsdWUiOnsiZGVzY3JpcHRpb24iOiJWYWx1ZSBpcyB0aGUgdGFpbnQgdmFsdWUgdGhlIHRvbGVyYXRpb24gbWF0Y2hlcyB0by5cbklmIHRoZSBvcGVyYXRvciBpcyBFeGlzdHMsIHRoZSB2YWx1ZSBzaG91bGQgYmUgZW1wdHksIG90aGVyd2lzZSBqdXN0IGEgcmVndWxhciBzdHJpbmcuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifX0sInR5cGUiOiJvYmplY3QifSwic2Nhbm5lckNvbXBvbmVudCI6eyJkZWZhdWx0IjoiQXV0b1NlbnNlIiwiZGVzY3JpcHRpb24iOiJJZiB5b3UgZG8gbm90IHdhbnQgdG8gZGVwbG95IHRoZSBSZWQgSGF0IEFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHkgU2Nhbm5lciwgeW91IGNhbiBkaXNhYmxlIGl0IGhlcmVcbihub3QgcmVjb21tZW5kZWQpLlxuSWYgeW91IGRvIHNvLCBhbGwgdGhlIHNldHRpbmdzIGluIHRoaXMgc2VjdGlvbiB3aWxsIGhhdmUgbm8gZWZmZWN0LiIsImVudW0iOlsiQXV0b1NlbnNlIiwiRGlzYWJsZWQiXSwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJzY2FubmVyVjQiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIFNjYW5uZXIgVjQgY29tcG9uZW50cywgd2hpY2ggY2FuIHJ1biBpbiBhZGRpdGlvbiB0byB0aGUgcHJldmlvdXNseSBleGlzdGluZyBTY2FubmVyIGNvbXBvbmVudHMiLCJwcm9wZXJ0aWVzIjp7ImRiIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcGVydGFpbmluZyB0byB0aGUgREIgZGVwbG95bWVudC4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RBbGlhc2VzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXMgaG9sZHMgdGhlIG1hcHBpbmcgYmV0d2VlbiBJUCBhbmQgaG9zdG5hbWVzIHRoYXQgd2lsbCBiZSBpbmplY3RlZCBhcyBhbiBlbnRyeSBpbiB0aGVcbnBvZCdzIGhvc3RzIGZpbGUuIiwicHJvcGVydGllcyI6eyJob3N0bmFtZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0bmFtZXMgZm9yIHRoZSBhYm92ZSBJUCBhZGRyZXNzLiIsIml0ZW1zIjp7InR5cGUiOiJzdHJpbmcifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6ImF0b21pYyJ9LCJpcCI6eyJkZXNjcmlwdGlvbiI6IklQIGFkZHJlc3Mgb2YgdGhlIGhvc3QgZmlsZSBlbnRyeS4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJpcCJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJub2RlU2VsZWN0b3IiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsidHlwZSI6InN0cmluZyJ9LCJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJ0eXBlIjoib2JqZWN0In0sInBlcnNpc3RlbmNlIjp7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyBob3cgU2Nhbm5lciBWNCBzaG91bGQgc3RvcmUgaXRzIHBlcnNpc3RlbnQgZGF0YS5cbllvdSBjYW4gdXNlIGEgcGVyc2lzdGVudCB2b2x1bWUgY2xhaW0gKHRoZSByZWNvbW1lbmRlZCBkZWZhdWx0KSwgYSBob3N0IHBhdGgsXG5vciBhbiBlbXB0eURpciB2b2x1bWUgaWYgU2Nhbm5lciBWNCBpcyBydW5uaW5nIG9uIGEgc2VjdXJlZCBjbHVzdGVyIHdpdGhvdXQgZGVmYXVsdCBTdG9yYWdlQ2xhc3MuIiwicHJvcGVydGllcyI6eyJob3N0UGF0aCI6eyJkZXNjcmlwdGlvbiI6IlN0b3JlcyBwZXJzaXN0ZW50IGRhdGEgb24gYSBkaXJlY3Rvcnkgb24gdGhlIGhvc3QuIFRoaXMgaXMgbm90IHJlY29tbWVuZGVkLCBhbmQgc2hvdWxkIG9ubHlcbmJlIHVzZWQgdG9nZXRoZXIgd2l0aCBhIG5vZGUgc2VsZWN0b3IgKG9ubHkgYXZhaWxhYmxlIGluIFlBTUwgdmlldykuIiwicHJvcGVydGllcyI6eyJwYXRoIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHBhdGggb24gdGhlIGhvc3QgcnVubmluZyBDZW50cmFsLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwicGVyc2lzdGVudFZvbHVtZUNsYWltIjp7ImRlc2NyaXB0aW9uIjoiVXNlcyBhIEt1YmVybmV0ZXMgcGVyc2lzdGVudCB2b2x1bWUgY2xhaW0gKFBWQykgdG8gbWFuYWdlIHRoZSBzdG9yYWdlIGxvY2F0aW9uIG9mIHBlcnNpc3RlbnQgZGF0YS5cblJlY29tbWVuZGVkIGZvciBtb3N0IHVzZXJzLiIsInByb3BlcnRpZXMiOnsiY2xhaW1OYW1lIjp7ImRlZmF1bHQiOiJzY2FubmVyLXY0LWRiIiwiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgUFZDIHRvIG1hbmFnZSBwZXJzaXN0ZW50IGRhdGEuIElmIG5vIFBWQyB3aXRoIHRoZSBnaXZlbiBuYW1lIGV4aXN0cywgaXQgd2lsbCBiZVxuY3JlYXRlZC4gRGVmYXVsdHMgdG8gXCJzY2FubmVyLXY0LWRiXCIgaWYgbm90IHNldC4iLCJ0eXBlIjoic3RyaW5nIn0sInNpemUiOnsiZGVzY3JpcHRpb24iOiJUaGUgc2l6ZSBvZiB0aGUgcGVyc2lzdGVudCB2b2x1bWUgd2hlbiBjcmVhdGVkIHRocm91Z2ggdGhlIGNsYWltLiBJZiBhIGNsYWltIHdhcyBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQsXG50aGlzIGNhbiBiZSB1c2VkIGFmdGVyIHRoZSBpbml0aWFsIGRlcGxveW1lbnQgdG8gcmVzaXplIChncm93KSB0aGUgdm9sdW1lIChvbmx5IHN1cHBvcnRlZCBieSBzb21lXG5zdG9yYWdlIGNsYXNzIGNvbnRyb2xsZXJzKS4iLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ0eXBlIjoic3RyaW5nIn0sInN0b3JhZ2VDbGFzc05hbWUiOnsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgc3RvcmFnZSBjbGFzcyB0byB1c2UgZm9yIHRoZSBQVkMuIElmIHlvdXIgY2x1c3RlciBpcyBub3QgY29uZmlndXJlZCB3aXRoIGEgZGVmYXVsdCBzdG9yYWdlXG5jbGFzcywgeW91IG11c3Qgc2VsZWN0IGEgdmFsdWUgaGVyZS4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sInJlc291cmNlcyI6eyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwicHJvcGVydGllcyI6eyJjbGFpbXMiOnsiZGVzY3JpcHRpb24iOiJDbGFpbXMgbGlzdHMgdGhlIG5hbWVzIG9mIHJlc291cmNlcywgZGVmaW5lZCBpbiBzcGVjLnJlc291cmNlQ2xhaW1zLFxudGhhdCBhcmUgdXNlZCBieSB0aGlzIGNvbnRhaW5lci5cblxuVGhpcyBmaWVsZCBkZXBlbmRzIG9uIHRoZVxuRHluYW1pY1Jlc291cmNlQWxsb2NhdGlvbiBmZWF0dXJlIGdhdGUuXG5cblRoaXMgZmllbGQgaXMgaW1tdXRhYmxlLiBJdCBjYW4gb25seSBiZSBzZXQgZm9yIGNvbnRhaW5lcnMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJSZXNvdXJjZUNsYWltIHJlZmVyZW5jZXMgb25lIGVudHJ5IGluIFBvZFNwZWMuUmVzb3VyY2VDbGFpbXMuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTmFtZSBtdXN0IG1hdGNoIHRoZSBuYW1lIG9mIG9uZSBlbnRyeSBpbiBwb2Quc3BlYy5yZXNvdXJjZUNsYWltcyBvZlxudGhlIFBvZCB3aGVyZSB0aGlzIGZpZWxkIGlzIHVzZWQuIEl0IG1ha2VzIHRoYXQgcmVzb3VyY2UgYXZhaWxhYmxlXG5pbnNpZGUgYSBjb250YWluZXIuIiwidHlwZSI6InN0cmluZyJ9LCJyZXF1ZXN0Ijp7ImRlc2NyaXB0aW9uIjoiUmVxdWVzdCBpcyB0aGUgbmFtZSBjaG9zZW4gZm9yIGEgcmVxdWVzdCBpbiB0aGUgcmVmZXJlbmNlZCBjbGFpbS5cbklmIGVtcHR5LCBldmVyeXRoaW5nIGZyb20gdGhlIGNsYWltIGlzIG1hZGUgYXZhaWxhYmxlLCBvdGhlcndpc2Vcbm9ubHkgdGhlIHJlc3VsdCBvZiB0aGlzIHJlcXVlc3QuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LW1hcC1rZXlzIjpbIm5hbWUiXSwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6Im1hcCJ9LCJsaW1pdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiTGltaXRzIGRlc2NyaWJlcyB0aGUgbWF4aW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgYWxsb3dlZC5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9LCJyZXF1ZXN0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJSZXF1ZXN0cyBkZXNjcmliZXMgdGhlIG1pbmltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIHJlcXVpcmVkLlxuSWYgUmVxdWVzdHMgaXMgb21pdHRlZCBmb3IgYSBjb250YWluZXIsIGl0IGRlZmF1bHRzIHRvIExpbWl0cyBpZiB0aGF0IGlzIGV4cGxpY2l0bHkgc3BlY2lmaWVkLFxub3RoZXJ3aXNlIHRvIGFuIGltcGxlbWVudGF0aW9uLWRlZmluZWQgdmFsdWUuIFJlcXVlc3RzIGNhbm5vdCBleGNlZWQgTGltaXRzLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sInRvbGVyYXRpb25zIjp7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJUaGUgcG9kIHRoaXMgVG9sZXJhdGlvbiBpcyBhdHRhY2hlZCB0byB0b2xlcmF0ZXMgYW55IHRhaW50IHRoYXQgbWF0Y2hlc1xudGhlIHRyaXBsZSBcdTAwM2NrZXksdmFsdWUsZWZmZWN0XHUwMDNlIHVzaW5nIHRoZSBtYXRjaGluZyBvcGVyYXRvciBcdTAwM2NvcGVyYXRvclx1MDAzZS4iLCJwcm9wZXJ0aWVzIjp7ImVmZmVjdCI6eyJkZXNjcmlwdGlvbiI6IkVmZmVjdCBpbmRpY2F0ZXMgdGhlIHRhaW50IGVmZmVjdCB0byBtYXRjaC4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGVmZmVjdHMuXG5XaGVuIHNwZWNpZmllZCwgYWxsb3dlZCB2YWx1ZXMgYXJlIE5vU2NoZWR1bGUsIFByZWZlck5vU2NoZWR1bGUgYW5kIE5vRXhlY3V0ZS4iLCJ0eXBlIjoic3RyaW5nIn0sImtleSI6eyJkZXNjcmlwdGlvbiI6IktleSBpcyB0aGUgdGFpbnQga2V5IHRoYXQgdGhlIHRvbGVyYXRpb24gYXBwbGllcyB0by4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGtleXMuXG5JZiB0aGUga2V5IGlzIGVtcHR5LCBvcGVyYXRvciBtdXN0IGJlIEV4aXN0czsgdGhpcyBjb21iaW5hdGlvbiBtZWFucyB0byBtYXRjaCBhbGwgdmFsdWVzIGFuZCBhbGwga2V5cy4iLCJ0eXBlIjoic3RyaW5nIn0sIm9wZXJhdG9yIjp7ImRlc2NyaXB0aW9uIjoiT3BlcmF0b3IgcmVwcmVzZW50cyBhIGtleSdzIHJlbGF0aW9uc2hpcCB0byB0aGUgdmFsdWUuXG5WYWxpZCBvcGVyYXRvcnMgYXJlIEV4aXN0cyBhbmQgRXF1YWwuIERlZmF1bHRzIHRvIEVxdWFsLlxuRXhpc3RzIGlzIGVxdWl2YWxlbnQgdG8gd2lsZGNhcmQgZm9yIHZhbHVlLCBzbyB0aGF0IGEgcG9kIGNhblxudG9sZXJhdGUgYWxsIHRhaW50cyBvZiBhIHBhcnRpY3VsYXIgY2F0ZWdvcnkuIiwidHlwZSI6InN0cmluZyJ9LCJ0b2xlcmF0aW9uU2Vjb25kcyI6eyJkZXNjcmlwdGlvbiI6IlRvbGVyYXRpb25TZWNvbmRzIHJlcHJlc2VudHMgdGhlIHBlcmlvZCBvZiB0aW1lIHRoZSB0b2xlcmF0aW9uICh3aGljaCBtdXN0IGJlXG5vZiBlZmZlY3QgTm9FeGVjdXRlLCBvdGhlcndpc2UgdGhpcyBmaWVsZCBpcyBpZ25vcmVkKSB0b2xlcmF0ZXMgdGhlIHRhaW50LiBCeSBkZWZhdWx0LFxuaXQgaXMgbm90IHNldCwgd2hpY2ggbWVhbnMgdG9sZXJhdGUgdGhlIHRhaW50IGZvcmV2ZXIgKGRvIG5vdCBldmljdCkuIFplcm8gYW5kXG5uZWdhdGl2ZSB2YWx1ZXMgd2lsbCBiZSB0cmVhdGVkIGFzIDAgKGV2aWN0IGltbWVkaWF0ZWx5KSBieSB0aGUgc3lzdGVtLiIsImZvcm1hdCI6ImludDY0IiwidHlwZSI6ImludGVnZXIifSwidmFsdWUiOnsiZGVzY3JpcHRpb24iOiJWYWx1ZSBpcyB0aGUgdGFpbnQgdmFsdWUgdGhlIHRvbGVyYXRpb24gbWF0Y2hlcyB0by5cbklmIHRoZSBvcGVyYXRvciBpcyBFeGlzdHMsIHRoZSB2YWx1ZSBzaG91bGQgYmUgZW1wdHksIG90aGVyd2lzZSBqdXN0IGEgcmVndWxhciBzdHJpbmcuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifX0sInR5cGUiOiJvYmplY3QifSwiaW5kZXhlciI6eyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHBlcnRhaW5pbmcgdG8gdGhlIGluZGV4ZXIgZGVwbG95bWVudC4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RBbGlhc2VzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXMgaG9sZHMgdGhlIG1hcHBpbmcgYmV0d2VlbiBJUCBhbmQgaG9zdG5hbWVzIHRoYXQgd2lsbCBiZSBpbmplY3RlZCBhcyBhbiBlbnRyeSBpbiB0aGVcbnBvZCdzIGhvc3RzIGZpbGUuIiwicHJvcGVydGllcyI6eyJob3N0bmFtZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0bmFtZXMgZm9yIHRoZSBhYm92ZSBJUCBhZGRyZXNzLiIsIml0ZW1zIjp7InR5cGUiOiJzdHJpbmcifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6ImF0b21pYyJ9LCJpcCI6eyJkZXNjcmlwdGlvbiI6IklQIGFkZHJlc3Mgb2YgdGhlIGhvc3QgZmlsZSBlbnRyeS4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJpcCJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJub2RlU2VsZWN0b3IiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsidHlwZSI6InN0cmluZyJ9LCJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJ0eXBlIjoib2JqZWN0In0sInJlc291cmNlcyI6eyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwicHJvcGVydGllcyI6eyJjbGFpbXMiOnsiZGVzY3JpcHRpb24iOiJDbGFpbXMgbGlzdHMgdGhlIG5hbWVzIG9mIHJlc291cmNlcywgZGVmaW5lZCBpbiBzcGVjLnJlc291cmNlQ2xhaW1zLFxudGhhdCBhcmUgdXNlZCBieSB0aGlzIGNvbnRhaW5lci5cblxuVGhpcyBmaWVsZCBkZXBlbmRzIG9uIHRoZVxuRHluYW1pY1Jlc291cmNlQWxsb2NhdGlvbiBmZWF0dXJlIGdhdGUuXG5cblRoaXMgZmllbGQgaXMgaW1tdXRhYmxlLiBJdCBjYW4gb25seSBiZSBzZXQgZm9yIGNvbnRhaW5lcnMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJSZXNvdXJjZUNsYWltIHJlZmVyZW5jZXMgb25lIGVudHJ5IGluIFBvZFNwZWMuUmVzb3VyY2VDbGFpbXMuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTmFtZSBtdXN0IG1hdGNoIHRoZSBuYW1lIG9mIG9uZSBlbnRyeSBpbiBwb2Quc3BlYy5yZXNvdXJjZUNsYWltcyBvZlxudGhlIFBvZCB3aGVyZSB0aGlzIGZpZWxkIGlzIHVzZWQuIEl0IG1ha2VzIHRoYXQgcmVzb3VyY2UgYXZhaWxhYmxlXG5pbnNpZGUgYSBjb250YWluZXIuIiwidHlwZSI6InN0cmluZyJ9LCJyZXF1ZXN0Ijp7ImRlc2NyaXB0aW9uIjoiUmVxdWVzdCBpcyB0aGUgbmFtZSBjaG9zZW4gZm9yIGEgcmVxdWVzdCBpbiB0aGUgcmVmZXJlbmNlZCBjbGFpbS5cbklmIGVtcHR5LCBldmVyeXRoaW5nIGZyb20gdGhlIGNsYWltIGlzIG1hZGUgYXZhaWxhYmxlLCBvdGhlcndpc2Vcbm9ubHkgdGhlIHJlc3VsdCBvZiB0aGlzIHJlcXVlc3QuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LW1hcC1rZXlzIjpbIm5hbWUiXSwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6Im1hcCJ9LCJsaW1pdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiTGltaXRzIGRlc2NyaWJlcyB0aGUgbWF4aW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgYWxsb3dlZC5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9LCJyZXF1ZXN0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJSZXF1ZXN0cyBkZXNjcmliZXMgdGhlIG1pbmltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIHJlcXVpcmVkLlxuSWYgUmVxdWVzdHMgaXMgb21pdHRlZCBmb3IgYSBjb250YWluZXIsIGl0IGRlZmF1bHRzIHRvIExpbWl0cyBpZiB0aGF0IGlzIGV4cGxpY2l0bHkgc3BlY2lmaWVkLFxub3RoZXJ3aXNlIHRvIGFuIGltcGxlbWVudGF0aW9uLWRlZmluZWQgdmFsdWUuIFJlcXVlc3RzIGNhbm5vdCBleGNlZWQgTGltaXRzLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sInNjYWxpbmciOnsiZGVzY3JpcHRpb24iOiJDb250cm9scyB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIGFuZCBhdXRvc2NhbGluZyBmb3IgdGhpcyBjb21wb25lbnQuIiwicHJvcGVydGllcyI6eyJhdXRvU2NhbGluZyI6eyJkZWZhdWx0IjoiRW5hYmxlZCIsImRlc2NyaXB0aW9uIjoiV2hlbiBlbmFibGVkLCB0aGUgbnVtYmVyIG9mIGNvbXBvbmVudCByZXBsaWNhcyBpcyBtYW5hZ2VkIGR5bmFtaWNhbGx5IGJhc2VkIG9uIHRoZSBsb2FkLCB3aXRoaW4gdGhlIGxpbWl0c1xuc3BlY2lmaWVkIGJlbG93LiIsImVudW0iOlsiRW5hYmxlZCIsIkRpc2FibGVkIl0sInR5cGUiOiJzdHJpbmcifSwibWF4UmVwbGljYXMiOnsiZGVmYXVsdCI6NSwiZm9ybWF0IjoiaW50MzIiLCJtaW5pbXVtIjoxLCJ0eXBlIjoiaW50ZWdlciJ9LCJtaW5SZXBsaWNhcyI6eyJkZWZhdWx0IjoyLCJmb3JtYXQiOiJpbnQzMiIsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn0sInJlcGxpY2FzIjp7ImRlZmF1bHQiOjMsImRlc2NyaXB0aW9uIjoiV2hlbiBhdXRvc2NhbGluZyBpcyBkaXNhYmxlZCwgdGhlIG51bWJlciBvZiByZXBsaWNhcyB3aWxsIGFsd2F5cyBiZSBjb25maWd1cmVkIHRvIG1hdGNoIHRoaXMgdmFsdWUuIiwiZm9ybWF0IjoiaW50MzIiLCJtaW5pbXVtIjoxLCJ0eXBlIjoiaW50ZWdlciJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0b2xlcmF0aW9ucyI6eyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHBvZCB0aGlzIFRvbGVyYXRpb24gaXMgYXR0YWNoZWQgdG8gdG9sZXJhdGVzIGFueSB0YWludCB0aGF0IG1hdGNoZXNcbnRoZSB0cmlwbGUgXHUwMDNja2V5LHZhbHVlLGVmZmVjdFx1MDAzZSB1c2luZyB0aGUgbWF0Y2hpbmcgb3BlcmF0b3IgXHUwMDNjb3BlcmF0b3JcdTAwM2UuIiwicHJvcGVydGllcyI6eyJlZmZlY3QiOnsiZGVzY3JpcHRpb24iOiJFZmZlY3QgaW5kaWNhdGVzIHRoZSB0YWludCBlZmZlY3QgdG8gbWF0Y2guIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBlZmZlY3RzLlxuV2hlbiBzcGVjaWZpZWQsIGFsbG93ZWQgdmFsdWVzIGFyZSBOb1NjaGVkdWxlLCBQcmVmZXJOb1NjaGVkdWxlIGFuZCBOb0V4ZWN1dGUuIiwidHlwZSI6InN0cmluZyJ9LCJrZXkiOnsiZGVzY3JpcHRpb24iOiJLZXkgaXMgdGhlIHRhaW50IGtleSB0aGF0IHRoZSB0b2xlcmF0aW9uIGFwcGxpZXMgdG8uIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBrZXlzLlxuSWYgdGhlIGtleSBpcyBlbXB0eSwgb3BlcmF0b3IgbXVzdCBiZSBFeGlzdHM7IHRoaXMgY29tYmluYXRpb24gbWVhbnMgdG8gbWF0Y2ggYWxsIHZhbHVlcyBhbmQgYWxsIGtleXMuIiwidHlwZSI6InN0cmluZyJ9LCJvcGVyYXRvciI6eyJkZXNjcmlwdGlvbiI6Ik9wZXJhdG9yIHJlcHJlc2VudHMgYSBrZXkncyByZWxhdGlvbnNoaXAgdG8gdGhlIHZhbHVlLlxuVmFsaWQgb3BlcmF0b3JzIGFyZSBFeGlzdHMgYW5kIEVxdWFsLiBEZWZhdWx0cyB0byBFcXVhbC5cbkV4aXN0cyBpcyBlcXVpdmFsZW50IHRvIHdpbGRjYXJkIGZvciB2YWx1ZSwgc28gdGhhdCBhIHBvZCBjYW5cbnRvbGVyYXRlIGFsbCB0YWludHMgb2YgYSBwYXJ0aWN1bGFyIGNhdGVnb3J5LiIsInR5cGUiOiJzdHJpbmcifSwidG9sZXJhdGlvblNlY29uZHMiOnsiZGVzY3JpcHRpb24iOiJUb2xlcmF0aW9uU2Vjb25kcyByZXByZXNlbnRzIHRoZSBwZXJpb2Qgb2YgdGltZSB0aGUgdG9sZXJhdGlvbiAod2hpY2ggbXVzdCBiZVxub2YgZWZmZWN0IE5vRXhlY3V0ZSwgb3RoZXJ3aXNlIHRoaXMgZmllbGQgaXMgaWdub3JlZCkgdG9sZXJhdGVzIHRoZSB0YWludC4gQnkgZGVmYXVsdCxcbml0IGlzIG5vdCBzZXQsIHdoaWNoIG1lYW5zIHRvbGVyYXRlIHRoZSB0YWludCBmb3JldmVyIChkbyBub3QgZXZpY3QpLiBaZXJvIGFuZFxubmVnYXRpdmUgdmFsdWVzIHdpbGwgYmUgdHJlYXRlZCBhcyAwIChldmljdCBpbW1lZGlhdGVseSkgYnkgdGhlIHN5c3RlbS4iLCJmb3JtYXQiOiJpbnQ2NCIsInR5cGUiOiJpbnRlZ2VyIn0sInZhbHVlIjp7ImRlc2NyaXB0aW9uIjoiVmFsdWUgaXMgdGhlIHRhaW50IHZhbHVlIHRoZSB0b2xlcmF0aW9uIG1hdGNoZXMgdG8uXG5JZiB0aGUgb3BlcmF0b3IgaXMgRXhpc3RzLCB0aGUgdmFsdWUgc2hvdWxkIGJlIGVtcHR5LCBvdGhlcndpc2UganVzdCBhIHJlZ3VsYXIgc3RyaW5nLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In19LCJ0eXBlIjoib2JqZWN0In0sIm1vbml0b3JpbmciOnsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIG1vbml0b3JpbmcgZW5kcG9pbnQgZm9yIFNjYW5uZXIgVjQuIFRoZSBtb25pdG9yaW5nIGVuZHBvaW50XG5hbGxvd3Mgb3RoZXIgc2VydmljZXMgdG8gY29sbGVjdCBtZXRyaWNzIGZyb20gU2Nhbm5lciBWNCwgcHJvdmlkZWQgaW5cblByb21ldGhldXMgY29tcGF0aWJsZSBmb3JtYXQuIiwicHJvcGVydGllcyI6eyJleHBvc2VFbmRwb2ludCI6eyJkZXNjcmlwdGlvbiI6IkV4cG9zZSB0aGUgbW9uaXRvcmluZyBlbmRwb2ludC4gQSBuZXcgc2VydmljZSwgXCJtb25pdG9yaW5nXCIsXG53aXRoIHBvcnQgOTA5MCwgd2lsbCBiZSBjcmVhdGVkIGFzIHdlbGwgYXMgYSBuZXR3b3JrIHBvbGljeSBhbGxvd2luZ1xuaW5ib3VuZCBjb25uZWN0aW9ucyB0byB0aGUgcG9ydC4iLCJlbnVtIjpbIkVuYWJsZWQiLCJEaXNhYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInNjYW5uZXJDb21wb25lbnQiOnsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0byBlbmFibGUgdGhlIFNjYW5uZXIgVjQgY29tcG9uZW50IHNldCB0aGlzIHRvIFwiQXV0b1NlbnNlXCJcbklmIHRoaXMgZmllbGQgaXMgbm90IHNwZWNpZmllZCBvciBzZXQgdG8gXCJEZWZhdWx0XCIsIHRoZSBmb2xsb3dpbmcgZGVmYXVsdGluZyB0YWtlcyBwbGFjZTpcbiogZm9yIG5ldyBpbnN0YWxsYXRpb25zLCBTY2FubmVyIFY0IGlzIGVuYWJsZWQgc3RhcnRpbmcgd2l0aCBBQ1MgNC44O1xuKiBmb3IgdXBncmFkZXMgdG8gNC44IGZyb20gcHJldmlvdXMgcmVsZWFzZXMsIFNjYW5uZXIgVjQgaXMgZGlzYWJsZWQuIiwiZW51bSI6WyJEZWZhdWx0IiwiQXV0b1NlbnNlIiwiRGlzYWJsZWQiXSwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJzZW5zb3IiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIFNlbnNvciBjb21wb25lbnQuIiwicHJvcGVydGllcyI6eyJob3N0QWxpYXNlcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzIGhvbGRzIHRoZSBtYXBwaW5nIGJldHdlZW4gSVAgYW5kIGhvc3RuYW1lcyB0aGF0IHdpbGwgYmUgaW5qZWN0ZWQgYXMgYW4gZW50cnkgaW4gdGhlXG5wb2QncyBob3N0cyBmaWxlLiIsInByb3BlcnRpZXMiOnsiaG9zdG5hbWVzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdG5hbWVzIGZvciB0aGUgYWJvdmUgSVAgYWRkcmVzcy4iLCJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJhdG9taWMifSwiaXAiOnsiZGVzY3JpcHRpb24iOiJJUCBhZGRyZXNzIG9mIHRoZSBob3N0IGZpbGUgZW50cnkuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiaXAiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibm9kZVNlbGVjdG9yIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7InR5cGUiOiJzdHJpbmcifSwiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwidHlwZSI6Im9iamVjdCJ9LCJyZXNvdXJjZXMiOnsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsInByb3BlcnRpZXMiOnsiY2xhaW1zIjp7ImRlc2NyaXB0aW9uIjoiQ2xhaW1zIGxpc3RzIHRoZSBuYW1lcyBvZiByZXNvdXJjZXMsIGRlZmluZWQgaW4gc3BlYy5yZXNvdXJjZUNsYWltcyxcbnRoYXQgYXJlIHVzZWQgYnkgdGhpcyBjb250YWluZXIuXG5cblRoaXMgZmllbGQgZGVwZW5kcyBvbiB0aGVcbkR5bmFtaWNSZXNvdXJjZUFsbG9jYXRpb24gZmVhdHVyZSBnYXRlLlxuXG5UaGlzIGZpZWxkIGlzIGltbXV0YWJsZS4gSXQgY2FuIG9ubHkgYmUgc2V0IGZvciBjb250YWluZXJzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2VDbGFpbSByZWZlcmVuY2VzIG9uZSBlbnRyeSBpbiBQb2RTcGVjLlJlc291cmNlQ2xhaW1zLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik5hbWUgbXVzdCBtYXRjaCB0aGUgbmFtZSBvZiBvbmUgZW50cnkgaW4gcG9kLnNwZWMucmVzb3VyY2VDbGFpbXMgb2ZcbnRoZSBQb2Qgd2hlcmUgdGhpcyBmaWVsZCBpcyB1c2VkLiBJdCBtYWtlcyB0aGF0IHJlc291cmNlIGF2YWlsYWJsZVxuaW5zaWRlIGEgY29udGFpbmVyLiIsInR5cGUiOiJzdHJpbmcifSwicmVxdWVzdCI6eyJkZXNjcmlwdGlvbiI6IlJlcXVlc3QgaXMgdGhlIG5hbWUgY2hvc2VuIGZvciBhIHJlcXVlc3QgaW4gdGhlIHJlZmVyZW5jZWQgY2xhaW0uXG5JZiBlbXB0eSwgZXZlcnl0aGluZyBmcm9tIHRoZSBjbGFpbSBpcyBtYWRlIGF2YWlsYWJsZSwgb3RoZXJ3aXNlXG5vbmx5IHRoZSByZXN1bHQgb2YgdGhpcyByZXF1ZXN0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC1tYXAta2V5cyI6WyJuYW1lIl0sIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJtYXAifSwibGltaXRzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IkxpbWl0cyBkZXNjcmliZXMgdGhlIG1heGltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIGFsbG93ZWQuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifSwicmVxdWVzdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiUmVxdWVzdHMgZGVzY3JpYmVzIHRoZSBtaW5pbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyByZXF1aXJlZC5cbklmIFJlcXVlc3RzIGlzIG9taXR0ZWQgZm9yIGEgY29udGFpbmVyLCBpdCBkZWZhdWx0cyB0byBMaW1pdHMgaWYgdGhhdCBpcyBleHBsaWNpdGx5IHNwZWNpZmllZCxcbm90aGVyd2lzZSB0byBhbiBpbXBsZW1lbnRhdGlvbi1kZWZpbmVkIHZhbHVlLiBSZXF1ZXN0cyBjYW5ub3QgZXhjZWVkIExpbWl0cy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0b2xlcmF0aW9ucyI6eyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHBvZCB0aGlzIFRvbGVyYXRpb24gaXMgYXR0YWNoZWQgdG8gdG9sZXJhdGVzIGFueSB0YWludCB0aGF0IG1hdGNoZXNcbnRoZSB0cmlwbGUgXHUwMDNja2V5LHZhbHVlLGVmZmVjdFx1MDAzZSB1c2luZyB0aGUgbWF0Y2hpbmcgb3BlcmF0b3IgXHUwMDNjb3BlcmF0b3JcdTAwM2UuIiwicHJvcGVydGllcyI6eyJlZmZlY3QiOnsiZGVzY3JpcHRpb24iOiJFZmZlY3QgaW5kaWNhdGVzIHRoZSB0YWludCBlZmZlY3QgdG8gbWF0Y2guIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBlZmZlY3RzLlxuV2hlbiBzcGVjaWZpZWQsIGFsbG93ZWQgdmFsdWVzIGFyZSBOb1NjaGVkdWxlLCBQcmVmZXJOb1NjaGVkdWxlIGFuZCBOb0V4ZWN1dGUuIiwidHlwZSI6InN0cmluZyJ9LCJrZXkiOnsiZGVzY3JpcHRpb24iOiJLZXkgaXMgdGhlIHRhaW50IGtleSB0aGF0IHRoZSB0b2xlcmF0aW9uIGFwcGxpZXMgdG8uIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBrZXlzLlxuSWYgdGhlIGtleSBpcyBlbXB0eSwgb3BlcmF0b3IgbXVzdCBiZSBFeGlzdHM7IHRoaXMgY29tYmluYXRpb24gbWVhbnMgdG8gbWF0Y2ggYWxsIHZhbHVlcyBhbmQgYWxsIGtleXMuIiwidHlwZSI6InN0cmluZyJ9LCJvcGVyYXRvciI6eyJkZXNjcmlwdGlvbiI6Ik9wZXJhdG9yIHJlcHJlc2VudHMgYSBrZXkncyByZWxhdGlvbnNoaXAgdG8gdGhlIHZhbHVlLlxuVmFsaWQgb3BlcmF0b3JzIGFyZSBFeGlzdHMgYW5kIEVxdWFsLiBEZWZhdWx0cyB0byBFcXVhbC5cbkV4aXN0cyBpcyBlcXVpdmFsZW50IHRvIHdpbGRjYXJkIGZvciB2YWx1ZSwgc28gdGhhdCBhIHBvZCBjYW5cbnRvbGVyYXRlIGFsbCB0YWludHMgb2YgYSBwYXJ0aWN1bGFyIGNhdGVnb3J5LiIsInR5cGUiOiJzdHJpbmcifSwidG9sZXJhdGlvblNlY29uZHMiOnsiZGVzY3JpcHRpb24iOiJUb2xlcmF0aW9uU2Vjb25kcyByZXByZXNlbnRzIHRoZSBwZXJpb2Qgb2YgdGltZSB0aGUgdG9sZXJhdGlvbiAod2hpY2ggbXVzdCBiZVxub2YgZWZmZWN0IE5vRXhlY3V0ZSwgb3RoZXJ3aXNlIHRoaXMgZmllbGQgaXMgaWdub3JlZCkgdG9sZXJhdGVzIHRoZSB0YWludC4gQnkgZGVmYXVsdCxcbml0IGlzIG5vdCBzZXQsIHdoaWNoIG1lYW5zIHRvbGVyYXRlIHRoZSB0YWludCBmb3JldmVyIChkbyBub3QgZXZpY3QpLiBaZXJvIGFuZFxubmVnYXRpdmUgdmFsdWVzIHdpbGwgYmUgdHJlYXRlZCBhcyAwIChldmljdCBpbW1lZGlhdGVseSkgYnkgdGhlIHN5c3RlbS4iLCJmb3JtYXQiOiJpbnQ2NCIsInR5cGUiOiJpbnRlZ2VyIn0sInZhbHVlIjp7ImRlc2NyaXB0aW9uIjoiVmFsdWUgaXMgdGhlIHRhaW50IHZhbHVlIHRoZSB0b2xlcmF0aW9uIG1hdGNoZXMgdG8uXG5JZiB0aGUgb3BlcmF0b3IgaXMgRXhpc3RzLCB0aGUgdmFsdWUgc2hvdWxkIGJlIGVtcHR5LCBvdGhlcndpc2UganVzdCBhIHJlZ3VsYXIgc3RyaW5nLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In19LCJ0eXBlIjoib2JqZWN0In0sInRscyI6eyJkZXNjcmlwdGlvbiI6IkFsbG93cyB5b3UgdG8gc3BlY2lmeSBhZGRpdGlvbmFsIHRydXN0ZWQgUm9vdCBDQXMuIiwicHJvcGVydGllcyI6eyJhZGRpdGlvbmFsQ0FzIjp7Iml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiQWRkaXRpb25hbENBIGRlZmluZXMgYSBjZXJ0aWZpY2F0ZSBmb3IgYW4gYWRkaXRpb25hbCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkuIiwicHJvcGVydGllcyI6eyJjb250ZW50Ijp7ImRlc2NyaXB0aW9uIjoiUEVNIGZvcm1hdCIsInR5cGUiOiJzdHJpbmcifSwibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik11c3QgYmUgYSB2YWxpZCBmaWxlIGJhc2VuYW1lIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiY29udGVudCIsIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifX0sInR5cGUiOiJvYmplY3QifX0sInJlcXVpcmVkIjpbImNsdXN0ZXJOYW1lIl0sInR5cGUiOiJvYmplY3QifSwic3RhdHVzIjp7ImRlc2NyaXB0aW9uIjoiU2VjdXJlZENsdXN0ZXJTdGF0dXMgZGVmaW5lcyB0aGUgb2JzZXJ2ZWQgc3RhdGUgb2YgU2VjdXJlZENsdXN0ZXIiLCJwcm9wZXJ0aWVzIjp7ImNsdXN0ZXJOYW1lIjp7ImRlc2NyaXB0aW9uIjoiVGhlIGFzc2lnbmVkIGNsdXN0ZXIgbmFtZSBwZXIgdGhlIHNwZWMuIFRoaXMgY2Fubm90IGJlIGNoYW5nZWQgYWZ0ZXJ3YXJkcy4gSWYgeW91IG5lZWQgdG8gY2hhbmdlIHRoZVxuY2x1c3RlciBuYW1lLCBwbGVhc2UgZGVsZXRlIGFuZCByZWNyZWF0ZSB0aGlzIHJlc291cmNlLiIsInR5cGUiOiJzdHJpbmcifSwiY29uZGl0aW9ucyI6eyJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlN0YWNrUm94Q29uZGl0aW9uIGRlZmluZXMgYSBjb25kaXRpb24gZm9yIGEgU3RhY2tSb3ggY3VzdG9tIHJlc291cmNlLiIsInByb3BlcnRpZXMiOnsibGFzdFRyYW5zaXRpb25UaW1lIjp7ImZvcm1hdCI6ImRhdGUtdGltZSIsInR5cGUiOiJzdHJpbmcifSwibWVzc2FnZSI6eyJ0eXBlIjoic3RyaW5nIn0sInJlYXNvbiI6eyJkZXNjcmlwdGlvbiI6IkNvbmRpdGlvblJlYXNvbiBpcyBhIHR5cGUgb2YgdmFsdWVzIG9mIGNvbmRpdGlvbiByZWFzb24uIiwidHlwZSI6InN0cmluZyJ9LCJzdGF0dXMiOnsiZGVzY3JpcHRpb24iOiJDb25kaXRpb25TdGF0dXMgaXMgYSB0eXBlIG9mIHZhbHVlcyBvZiBjb25kaXRpb24gc3RhdHVzLiIsInR5cGUiOiJzdHJpbmcifSwidHlwZSI6eyJkZXNjcmlwdGlvbiI6IkNvbmRpdGlvblR5cGUgaXMgYSB0eXBlIG9mIHZhbHVlcyBvZiBjb25kaXRpb24gdHlwZS4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJzdGF0dXMiLCJ0eXBlIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sImRlcGxveWVkUmVsZWFzZSI6eyJkZXNjcmlwdGlvbiI6IlN0YWNrUm94UmVsZWFzZSBkZXNjcmliZXMgdGhlIEhlbG0gXCJyZWxlYXNlXCIgdGhhdCB3YXMgbW9zdCByZWNlbnRseSBhcHBsaWVkLiIsInByb3BlcnRpZXMiOnsidmVyc2lvbiI6eyJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInByb2R1Y3RWZXJzaW9uIjp7ImRlc2NyaXB0aW9uIjoiVGhlIGRlcGxveWVkIHZlcnNpb24gb2YgdGhlIHByb2R1Y3QuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiY29uZGl0aW9ucyJdLCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In19LCJzZXJ2ZWQiOnRydWUsInN0b3JhZ2UiOnRydWUsInN1YnJlc291cmNlcyI6eyJzdGF0dXMiOnt9fX1dfSwic3RhdHVzIjp7ImFjY2VwdGVkTmFtZXMiOnsia2luZCI6IiIsInBsdXJhbCI6IiJ9LCJjb25kaXRpb25zIjpudWxsLCJzdG9yZWRWZXJzaW9ucyI6bnVsbH19" + } + }, + { + "type": "olm.bundle.object", + "value": { + "data": "eyJhcGlWZXJzaW9uIjoiYXBpZXh0ZW5zaW9ucy5rOHMuaW8vdjEiLCJraW5kIjoiQ3VzdG9tUmVzb3VyY2VEZWZpbml0aW9uIiwibWV0YWRhdGEiOnsiYW5ub3RhdGlvbnMiOnsiY29udHJvbGxlci1nZW4ua3ViZWJ1aWxkZXIuaW8vdmVyc2lvbiI6InYwLjE2LjUifSwibmFtZSI6InNlY3VyaXR5cG9saWNpZXMuY29uZmlnLnN0YWNrcm94LmlvIn0sInNwZWMiOnsiZ3JvdXAiOiJjb25maWcuc3RhY2tyb3guaW8iLCJuYW1lcyI6eyJraW5kIjoiU2VjdXJpdHlQb2xpY3kiLCJsaXN0S2luZCI6IlNlY3VyaXR5UG9saWN5TGlzdCIsInBsdXJhbCI6InNlY3VyaXR5cG9saWNpZXMiLCJzaG9ydE5hbWVzIjpbInNwIl0sInNpbmd1bGFyIjoic2VjdXJpdHlwb2xpY3kifSwic2NvcGUiOiJOYW1lc3BhY2VkIiwidmVyc2lvbnMiOlt7Im5hbWUiOiJ2MWFscGhhMSIsInNjaGVtYSI6eyJvcGVuQVBJVjNTY2hlbWEiOnsiZGVzY3JpcHRpb24iOiJTZWN1cml0eVBvbGljeSBpcyB0aGUgU2NoZW1hIGZvciB0aGUgcG9saWNpZXMgQVBJIiwicHJvcGVydGllcyI6eyJhcGlWZXJzaW9uIjp7ImRlc2NyaXB0aW9uIjoiQVBJVmVyc2lvbiBkZWZpbmVzIHRoZSB2ZXJzaW9uZWQgc2NoZW1hIG9mIHRoaXMgcmVwcmVzZW50YXRpb24gb2YgYW4gb2JqZWN0LlxuU2VydmVycyBzaG91bGQgY29udmVydCByZWNvZ25pemVkIHNjaGVtYXMgdG8gdGhlIGxhdGVzdCBpbnRlcm5hbCB2YWx1ZSwgYW5kXG5tYXkgcmVqZWN0IHVucmVjb2duaXplZCB2YWx1ZXMuXG5Nb3JlIGluZm86IGh0dHBzOi8vZ2l0Lms4cy5pby9jb21tdW5pdHkvY29udHJpYnV0b3JzL2RldmVsL3NpZy1hcmNoaXRlY3R1cmUvYXBpLWNvbnZlbnRpb25zLm1kI3Jlc291cmNlcyIsInR5cGUiOiJzdHJpbmcifSwia2luZCI6eyJkZXNjcmlwdGlvbiI6IktpbmQgaXMgYSBzdHJpbmcgdmFsdWUgcmVwcmVzZW50aW5nIHRoZSBSRVNUIHJlc291cmNlIHRoaXMgb2JqZWN0IHJlcHJlc2VudHMuXG5TZXJ2ZXJzIG1heSBpbmZlciB0aGlzIGZyb20gdGhlIGVuZHBvaW50IHRoZSBjbGllbnQgc3VibWl0cyByZXF1ZXN0cyB0by5cbkNhbm5vdCBiZSB1cGRhdGVkLlxuSW4gQ2FtZWxDYXNlLlxuTW9yZSBpbmZvOiBodHRwczovL2dpdC5rOHMuaW8vY29tbXVuaXR5L2NvbnRyaWJ1dG9ycy9kZXZlbC9zaWctYXJjaGl0ZWN0dXJlL2FwaS1jb252ZW50aW9ucy5tZCN0eXBlcy1raW5kcyIsInR5cGUiOiJzdHJpbmcifSwibWV0YWRhdGEiOnsidHlwZSI6Im9iamVjdCJ9LCJzcGVjIjp7ImRlc2NyaXB0aW9uIjoiU2VjdXJpdHlQb2xpY3lTcGVjIGRlZmluZXMgdGhlIGRlc2lyZWQgc3RhdGUgb2YgU2VjdXJpdHlQb2xpY3kiLCJwcm9wZXJ0aWVzIjp7ImNhdGVnb3JpZXMiOnsiZGVzY3JpcHRpb24iOiJDYXRlZ29yaWVzIGlzIGEgbGlzdCBvZiBjYXRlZ29yaWVzIHRoYXQgdGhpcyBwb2xpY3kgZmFsbHMgdW5kZXIuICBDYXRlZ29yeSBuYW1lcyBtdXN0IGFscmVhZHkgZXhpc3QgaW4gQ2VudHJhbC4iLCJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sIm1pbkl0ZW1zIjoxLCJ0eXBlIjoiYXJyYXkifSwiY3JpdGVyaWFMb2NrZWQiOnsiZGVzY3JpcHRpb24iOiJDcml0ZXJpYUxvY2tlZCBpcyB1bnVzZWQgYW5kIGRlcHJlY2F0ZWQiLCJ0eXBlIjoiYm9vbGVhbiJ9LCJkZXNjcmlwdGlvbiI6eyJkZXNjcmlwdGlvbiI6IkRlc2NyaXB0aW9uIGlzIGEgZnJlZS1mb3JtIHRleHQgZGVzY3JpcHRpb24gb2YgdGhpcyBwb2xpY3kuIiwicGF0dGVybiI6Il5bXlxcJF17MCw4MDB9JCIsInR5cGUiOiJzdHJpbmcifSwiZGlzYWJsZWQiOnsiZGVzY3JpcHRpb24iOiJEaXNhYmxlZCB0b2dnbGVzIHdoZXRoZXIgb3Igbm90IHRoaXMgcG9saWN5IHdpbGwgYmUgZXhlY3V0aW5nIGFuZCBhY3RpdmVseSBmaXJpbmcgYWxlcnRzLiIsInR5cGUiOiJib29sZWFuIn0sImVuZm9yY2VtZW50QWN0aW9ucyI6eyJkZXNjcmlwdGlvbiI6IkVuZm9yY2VtZW50IGxpc3RzIHRoZSBlbmZvcmNlbWVudCBhY3Rpb25zIHRvIHRha2Ugd2hlbiBhIHZpb2xhdGlvbiBmcm9tIHRoaXMgcG9saWN5IGlzIGlkZW50aWZpZWQuICBQb3NzaWJsZSB2YWx1ZSBhcmUgVU5TRVRfRU5GT1JDRU1FTlQsIFNDQUxFX1RPX1pFUk9fRU5GT1JDRU1FTlQsIFVOU0FUSVNGSUFCTEVfTk9ERV9DT05TVFJBSU5UX0VORk9SQ0VNRU5ULCBLSUxMX1BPRF9FTkZPUkNFTUVOVCwgRkFJTF9CVUlMRF9FTkZPUkNFTUVOVCwgRkFJTF9LVUJFX1JFUVVFU1RfRU5GT1JDRU1FTlQsIEZBSUxfREVQTE9ZTUVOVF9DUkVBVEVfRU5GT1JDRU1FTlQsIGFuZC4gRkFJTF9ERVBMT1lNRU5UX1VQREFURV9FTkZPUkNFTUVOVC4iLCJpdGVtcyI6eyJlbnVtIjpbIlVOU0VUX0VORk9SQ0VNRU5UIiwiU0NBTEVfVE9fWkVST19FTkZPUkNFTUVOVCIsIlVOU0FUSVNGSUFCTEVfTk9ERV9DT05TVFJBSU5UX0VORk9SQ0VNRU5UIiwiS0lMTF9QT0RfRU5GT1JDRU1FTlQiLCJGQUlMX0JVSUxEX0VORk9SQ0VNRU5UIiwiRkFJTF9LVUJFX1JFUVVFU1RfRU5GT1JDRU1FTlQiLCJGQUlMX0RFUExPWU1FTlRfQ1JFQVRFX0VORk9SQ0VNRU5UIiwiRkFJTF9ERVBMT1lNRU5UX1VQREFURV9FTkZPUkNFTUVOVCJdLCJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSJ9LCJldmVudFNvdXJjZSI6eyJkZXNjcmlwdGlvbiI6IkV2ZW50U291cmNlIGRlc2NyaWJlcyB3aGljaCBldmVudHMgc2hvdWxkIHRyaWdnZXIgZXhlY3V0aW9uIG9mIHRoaXMgcG9saWN5IiwiZW51bSI6WyJOT1RfQVBQTElDQUJMRSIsIkRFUExPWU1FTlRfRVZFTlQiLCJBVURJVF9MT0dfRVZFTlQiXSwidHlwZSI6InN0cmluZyJ9LCJleGNsdXNpb25zIjp7ImRlc2NyaXB0aW9uIjoiRXhjbHVzaW9ucyBkZWZpbmUgZGVwbG95bWVudHMgb3IgaW1hZ2VzIHRoYXQgc2hvdWxkIGJlIGV4Y2x1ZGVkIGZyb20gdGhpcyBwb2xpY3kuIiwiaXRlbXMiOnsicHJvcGVydGllcyI6eyJkZXBsb3ltZW50Ijp7InByb3BlcnRpZXMiOnsibmFtZSI6eyJ0eXBlIjoic3RyaW5nIn0sInNjb3BlIjp7InByb3BlcnRpZXMiOnsiY2x1c3RlciI6eyJkZXNjcmlwdGlvbiI6IkNsdXN0ZXIgaXMgZWl0aGVyIHRoZSBuYW1lIG9yIHRoZSBJRCBvZiB0aGUgY2x1c3RlciB0aGF0IHRoaXMgc2NvcGUgYXBwbGllcyB0byIsInR5cGUiOiJzdHJpbmcifSwibGFiZWwiOnsicHJvcGVydGllcyI6eyJrZXkiOnsidHlwZSI6InN0cmluZyJ9LCJ2YWx1ZSI6eyJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sIm5hbWVzcGFjZSI6eyJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sImV4cGlyYXRpb24iOnsiZm9ybWF0IjoiZGF0ZS10aW1lIiwidHlwZSI6InN0cmluZyJ9LCJpbWFnZSI6eyJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJuYW1lIjp7InR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sImlzRGVmYXVsdCI6eyJkZXNjcmlwdGlvbiI6IklzRGVmYXVsdCBpcyB1bnVzZWQiLCJ0eXBlIjoiYm9vbGVhbiJ9LCJsaWZlY3ljbGVTdGFnZXMiOnsiZGVzY3JpcHRpb24iOiJMaWZlY3ljbGVTdGFnZXMgZGVzY3JpYmVzIHdoaWNoIHBvbGljeSBsaWZlY3lsY2Ugc3RhZ2VzIHRoaXMgcG9saWN5IGFwcGxpZXMgdG8uICBDaG9pY2VzIGFyZSBERVBMT1ksIEJVSUxELCBhbmQgUlVOVElNRS4iLCJpdGVtcyI6eyJlbnVtIjpbIkRFUExPWSIsIkJVSUxEIiwiUlVOVElNRSJdLCJ0eXBlIjoic3RyaW5nIn0sIm1pbkl0ZW1zIjoxLCJ0eXBlIjoiYXJyYXkifSwibWl0cmVBdHRhY2tWZWN0b3JzIjp7Iml0ZW1zIjp7InByb3BlcnRpZXMiOnsidGFjdGljIjp7InR5cGUiOiJzdHJpbmcifSwidGVjaG5pcXVlcyI6eyJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibWl0cmVWZWN0b3JzTG9ja2VkIjp7ImRlc2NyaXB0aW9uIjoiTWl0cmVWZXRvcnNMb2NrZWQgaXMgdW51c2VkIGFuZCBkZXByZWNhdGVkIiwidHlwZSI6ImJvb2xlYW4ifSwibm90aWZpZXJzIjp7ImRlc2NyaXB0aW9uIjoiTm90aWZpZXJzIGlzIGEgbGlzdCBvZiBJRHMgb3IgbmFtZXMgb2YgdGhlIG5vdGlmaWVycyB0aGF0IHNob3VsZCBiZSB0cmlnZ2VyZWQgd2hlbiBhIHZpb2xhdGlvbiBmcm9tIHRoaXMgcG9saWN5IGlzIGlkZW50aWZpZWQuICBJRHMgc2hvdWxkIGJlIGluIHRoZSBmb3JtIG9mIGEgVVVJRCBhbmQgYXJlIGZvdW5kIHRocm91Z2ggdGhlIENlbnRyYWwgQVBJLiIsIml0ZW1zIjp7InR5cGUiOiJzdHJpbmcifSwidHlwZSI6ImFycmF5In0sInBvbGljeU5hbWUiOnsiZGVzY3JpcHRpb24iOiJQb2xpY3lOYW1lIGlzIHRoZSBuYW1lIG9mIHRoZSBwb2xpY3kgYXMgaXQgYXBwZWFycyBpbiB0aGUgQVBJIGFuZCBVSS4gIE5vdGUgdGhhdCBjaGFuZ2luZyB0aGlzIHZhbHVlIHdpbGwgcmVuYW1lIHRoZSBwb2xpY3kgYXMgc3RvcmVkIGluIHRoZSBkYXRhYmFzZS4gIFRoaXMgZmllbGQgbXVzdCBiZSB1bmlxdWUuIiwicGF0dGVybiI6Il5bXlxcblxcclxcJF17NSwxMjh9JCIsInR5cGUiOiJzdHJpbmcifSwicG9saWN5U2VjdGlvbnMiOnsiZGVzY3JpcHRpb24iOiJQb2xpY3lTZWN0aW9ucyBkZWZpbmUgdGhlIHZpb2xhdGlvbiBjcml0ZXJpYSBmb3IgdGhpcyBwb2xpY3kuIiwiaXRlbXMiOnsicHJvcGVydGllcyI6eyJwb2xpY3lHcm91cHMiOnsiZGVzY3JpcHRpb24iOiJQb2xpY3lHcm91cHMgaXMgdGhlIHNldCBvZiBwb2xpY2llcyBncm91cHMgdGhhdCBtYWtlIHVwIHRoaXMgc2VjdGlvbi4gIEVhY2ggZ3JvdXAgY2FuIGJlIGNvbnNpZGVyZWQgYW4gaW5kaXZpZHVhbCBjcml0ZXJpb24uIiwiaXRlbXMiOnsicHJvcGVydGllcyI6eyJib29sZWFuT3BlcmF0b3IiOnsiZGVzY3JpcHRpb24iOiJCb29sZWFuT3BlcmF0b3IgZGV0ZXJtaW5lcyBpZiB0aGUgdmFsdWVzIGFyZSBjb21iaW5lZCB3aXRoIGFuIE9SIG9yIGFuIEFORC4gIERlZmF1bHRzIHRvIE9SLiIsImVudW0iOlsiT1IiLCJBTkQiXSwidHlwZSI6InN0cmluZyJ9LCJmaWVsZE5hbWUiOnsiZGVzY3JpcHRpb24iOiJGaWVsZE5hbWUgZGVmaW5lcyB3aGljaCBmaWVsZCBvbiBhIGRlcGxveW1lbnQgb3IgaW1hZ2UgdGhpcyBQb2xpY3lHcm91cCBldmFsdWF0ZXMuICBTZWUgaHR0cHM6Ly9kb2NzLm9wZW5zaGlmdC5jb20vYWNzL29wZXJhdGluZy9tYW5hZ2Utc2VjdXJpdHktcG9saWNpZXMuaHRtbCNwb2xpY3ktY3JpdGVyaWFfbWFuYWdlLXNlY3VyaXR5LXBvbGljaWVzIGZvciBhIGNvbXBsZXRlIGxpc3Qgb2YgcG9zc2libGUgdmFsdWVzLiIsInR5cGUiOiJzdHJpbmcifSwibmVnYXRlIjp7ImRlc2NyaXB0aW9uIjoiTmVnYXRlIGRldGVybWluZXMgaWYgdGhlIGV2YWx1YXRpb24gb2YgdGhpcyBQb2xpY3lHcm91cCBpcyBuZWdhdGVkLiAgRGVmYXVsdCB0byBmYWxzZS4iLCJ0eXBlIjoiYm9vbGVhbiJ9LCJ2YWx1ZXMiOnsiZGVzY3JpcHRpb24iOiJWYWx1ZXMgaXMgdGhlIGxpc3Qgb2YgdmFsdWVzIGZvciB0aGUgc3BlY2lmaWVkIGZpZWxkIiwiaXRlbXMiOnsicHJvcGVydGllcyI6eyJ2YWx1ZSI6eyJkZXNjcmlwdGlvbiI6IlZhbHVlIGlzIHNpbXBseSB0aGUgc3RyaW5nIHZhbHVlIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifX0sInJlcXVpcmVkIjpbImZpZWxkTmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJzZWN0aW9uTmFtZSI6eyJkZXNjcmlwdGlvbiI6IlNlY3Rpb25OYW1lIGlzIGEgdXNlci1mcmllbmRseSBuYW1lIGZvciB0aGlzIHNlY3Rpb24gb2YgcG9saWNpZXMiLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJwb2xpY3lHcm91cHMiXSwidHlwZSI6Im9iamVjdCJ9LCJtaW5JdGVtcyI6MSwidHlwZSI6ImFycmF5In0sInJhdGlvbmFsZSI6eyJ0eXBlIjoic3RyaW5nIn0sInJlbWVkaWF0aW9uIjp7ImRlc2NyaXB0aW9uIjoiUmVtZWRpYXRpb24gZGVzY3JpYmVzIGhvdyB0byByZW1lZGlhdGUgYSB2aW9sYXRpb24gb2YgdGhpcyBwb2xpY3kuIiwidHlwZSI6InN0cmluZyJ9LCJzY29wZSI6eyJkZXNjcmlwdGlvbiI6IlNjb3BlIGRlZmluZXMgY2x1c3RlcnMsIG5hbWVzcGFjZXMsIGFuZCBkZXBsb3ltZW50cyB0aGF0IHNob3VsZCBiZSBpbmNsdWRlZCBpbiB0aGlzIHBvbGljeS4gIE5vIHNjb3BlcyBkZWZpbmVkIGluY2x1ZGVzIGV2ZXJ5dGhpbmcuIiwiaXRlbXMiOnsicHJvcGVydGllcyI6eyJjbHVzdGVyIjp7ImRlc2NyaXB0aW9uIjoiQ2x1c3RlciBpcyBlaXRoZXIgdGhlIG5hbWUgb3IgdGhlIElEIG9mIHRoZSBjbHVzdGVyIHRoYXQgdGhpcyBzY29wZSBhcHBsaWVzIHRvIiwidHlwZSI6InN0cmluZyJ9LCJsYWJlbCI6eyJwcm9wZXJ0aWVzIjp7ImtleSI6eyJ0eXBlIjoic3RyaW5nIn0sInZhbHVlIjp7InR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwibmFtZXNwYWNlIjp7InR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sInNldmVyaXR5Ijp7ImRlc2NyaXB0aW9uIjoiU2V2ZXJpdHkgZGVmaW5lcyBob3cgc2V2ZXJlIGEgdmlvbGF0aW9uIGZyb20gdGhpcyBwb2xpY3kgaXMuICBQb3NzaWJsZSB2YWx1ZXMgYXJlIFVOU0VUX1NFVkVSSVRZLCBMT1dfU0VWRVJJVFksIE1FRElVTV9TRVZFUklUWSwgSElHSF9TRVZFUklUWSwgYW5kIENSSVRJQ0FMX1NFVkVSSVRZLiIsImVudW0iOlsiVU5TRVRfU0VWRVJJVFkiLCJMT1dfU0VWRVJJVFkiLCJNRURJVU1fU0VWRVJJVFkiLCJISUdIX1NFVkVSSVRZIiwiQ1JJVElDQUxfU0VWRVJJVFkiXSwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiY2F0ZWdvcmllcyIsImxpZmVjeWNsZVN0YWdlcyIsInBvbGljeU5hbWUiLCJwb2xpY3lTZWN0aW9ucyIsInNldmVyaXR5Il0sInR5cGUiOiJvYmplY3QifSwic3RhdHVzIjp7InByb3BlcnRpZXMiOnsiYWNjZXB0ZWQiOnsiZGVzY3JpcHRpb24iOiJBY2NlcHRlZCBpcyBkZXByZWNhdGVkIGluIGZhdm9yIG9mIGNvbmRpdGlvbnMiLCJ0eXBlIjoiYm9vbGVhbiJ9LCJjb25kaXRpb25zIjp7Iml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiU2VjdXJpdHlQb2xpY3lDb25kaXRpb24gZGVmaW5lcyB0aGUgb2JzZXJ2ZWQgc3RhdGUgb2YgU2VjdXJpdHlQb2xpY3kiLCJwcm9wZXJ0aWVzIjp7Imxhc3RUcmFuc2l0aW9uVGltZSI6eyJmb3JtYXQiOiJkYXRlLXRpbWUiLCJ0eXBlIjoic3RyaW5nIn0sIm1lc3NhZ2UiOnsidHlwZSI6InN0cmluZyJ9LCJzdGF0dXMiOnsidHlwZSI6InN0cmluZyJ9LCJ0eXBlIjp7InR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sIm1lc3NhZ2UiOnsiZGVzY3JpcHRpb24iOiJNZXNzYWdlIGlzIGRlcHJlY2F0ZWQgaW4gZmF2b3Igb2YgY29uZGl0aW9ucyIsInR5cGUiOiJzdHJpbmcifSwicG9saWN5SWQiOnsidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9fSwic2VydmVkIjp0cnVlLCJzdG9yYWdlIjp0cnVlLCJzdWJyZXNvdXJjZXMiOnsic3RhdHVzIjp7fX19XX19" + } + }, + { + "type": "olm.bundle.object", + "value": { + "data": "eyJhcGlWZXJzaW9uIjoib3BlcmF0b3JzLmNvcmVvcy5jb20vdjFhbHBoYTEiLCJraW5kIjoiQ2x1c3RlclNlcnZpY2VWZXJzaW9uIiwibWV0YWRhdGEiOnsiYW5ub3RhdGlvbnMiOnsiYWxtLWV4YW1wbGVzIjoiW1xuICB7XG4gICAgXCJhcGlWZXJzaW9uXCI6IFwicGxhdGZvcm0uc3RhY2tyb3guaW8vdjFhbHBoYTFcIixcbiAgICBcImtpbmRcIjogXCJDZW50cmFsXCIsXG4gICAgXCJtZXRhZGF0YVwiOiB7XG4gICAgICBcIm5hbWVcIjogXCJzdGFja3JveC1jZW50cmFsLXNlcnZpY2VzXCIsXG4gICAgICBcIm5hbWVzcGFjZVwiOiBcInN0YWNrcm94XCJcbiAgICB9LFxuICAgIFwic3BlY1wiOiB7XG4gICAgICBcImNlbnRyYWxcIjoge1xuICAgICAgICBcImV4cG9zdXJlXCI6IHtcbiAgICAgICAgICBcInJvdXRlXCI6IHtcbiAgICAgICAgICAgIFwiZW5hYmxlZFwiOiB0cnVlXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9LFxuICB7XG4gICAgXCJhcGlWZXJzaW9uXCI6IFwicGxhdGZvcm0uc3RhY2tyb3guaW8vdjFhbHBoYTFcIixcbiAgICBcImtpbmRcIjogXCJTZWN1cmVkQ2x1c3RlclwiLFxuICAgIFwibWV0YWRhdGFcIjoge1xuICAgICAgXCJuYW1lXCI6IFwic3RhY2tyb3gtc2VjdXJlZC1jbHVzdGVyLXNlcnZpY2VzXCIsXG4gICAgICBcIm5hbWVzcGFjZVwiOiBcInN0YWNrcm94XCJcbiAgICB9LFxuICAgIFwic3BlY1wiOiB7XG4gICAgICBcImNsdXN0ZXJOYW1lXCI6IFwibXktY2x1c3RlclwiXG4gICAgfVxuICB9XG5dIiwiY2FwYWJpbGl0aWVzIjoiU2VhbWxlc3MgVXBncmFkZXMiLCJjYXRlZ29yaWVzIjoiU2VjdXJpdHkiLCJjb250YWluZXJJbWFnZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLXJoZWw4LW9wZXJhdG9yQHNoYTI1NjplNGM2OTAwYjcyYTU1NmE0ZDNlMTk3OGYzMTczNGJjMDBiMDExNjRlZjJjOGMxNTRhZWViZmIyYjI2NmY4ZDJhIiwiY3JlYXRlZEF0IjoiMjAyNi0wMy0yN1QxOTowMDo0NC4xMTI3MDYrMDA6MDAiLCJkZXNjcmlwdGlvbiI6IlJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSAoUkhBQ1MpIG9wZXJhdG9yIHByb3Zpc2lvbnMgdGhlIHNlcnZpY2VzIG5lY2Vzc2FyeSB0byBzZWN1cmUgZWFjaCBvZiB5b3VyIE9wZW5TaGlmdCBhbmQgS3ViZXJuZXRlcyBjbHVzdGVycy4iLCJmZWF0dXJlcy5vcGVyYXRvcnMub3BlbnNoaWZ0LmlvL2NuZiI6ImZhbHNlIiwiZmVhdHVyZXMub3BlcmF0b3JzLm9wZW5zaGlmdC5pby9jbmkiOiJmYWxzZSIsImZlYXR1cmVzLm9wZXJhdG9ycy5vcGVuc2hpZnQuaW8vY3NpIjoiZmFsc2UiLCJmZWF0dXJlcy5vcGVyYXRvcnMub3BlbnNoaWZ0LmlvL2Rpc2Nvbm5lY3RlZCI6InRydWUiLCJmZWF0dXJlcy5vcGVyYXRvcnMub3BlbnNoaWZ0LmlvL2ZpcHMtY29tcGxpYW50IjoidHJ1ZSIsImZlYXR1cmVzLm9wZXJhdG9ycy5vcGVuc2hpZnQuaW8vcHJveHktYXdhcmUiOiJ0cnVlIiwiZmVhdHVyZXMub3BlcmF0b3JzLm9wZW5zaGlmdC5pby90bHMtcHJvZmlsZXMiOiJmYWxzZSIsImZlYXR1cmVzLm9wZXJhdG9ycy5vcGVuc2hpZnQuaW8vdG9rZW4tYXV0aC1hd3MiOiJmYWxzZSIsImZlYXR1cmVzLm9wZXJhdG9ycy5vcGVuc2hpZnQuaW8vdG9rZW4tYXV0aC1henVyZSI6ImZhbHNlIiwiZmVhdHVyZXMub3BlcmF0b3JzLm9wZW5zaGlmdC5pby90b2tlbi1hdXRoLWdjcCI6ImZhbHNlIiwib2xtLnNraXBSYW5nZSI6Ilx1MDAzZT0gNC43LjAgXHUwMDNjIDQuOC4xMC1yYy4yIiwib3BlcmF0b3JmcmFtZXdvcmsuaW8vc3VnZ2VzdGVkLW5hbWVzcGFjZSI6InJoYWNzLW9wZXJhdG9yIiwib3BlcmF0b3JzLm9wZW5zaGlmdC5pby9pbmZyYXN0cnVjdHVyZS1mZWF0dXJlcyI6IltcImRpc2Nvbm5lY3RlZFwiLCBcInByb3h5LWF3YXJlXCJdIiwib3BlcmF0b3JzLm9wZW5zaGlmdC5pby92YWxpZC1zdWJzY3JpcHRpb24iOiJbXCJPcGVuU2hpZnQgUGxhdGZvcm0gUGx1c1wiLCBcIlJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eVwiXSIsIm9wZXJhdG9ycy5vcGVyYXRvcmZyYW1ld29yay5pby9idWlsZGVyIjoib3BlcmF0b3Itc2RrLXVua25vd24iLCJvcGVyYXRvcnMub3BlcmF0b3JmcmFtZXdvcmsuaW8vcHJvamVjdF9sYXlvdXQiOiJnby5rdWJlYnVpbGRlci5pby92NCIsInN1cHBvcnQiOiJSZWQgSGF0In0sImxhYmVscyI6eyJvcGVyYXRvcmZyYW1ld29yay5pby9hcmNoLmFtZDY0Ijoic3VwcG9ydGVkIiwib3BlcmF0b3JmcmFtZXdvcmsuaW8vYXJjaC5hcm02NCI6InN1cHBvcnRlZCIsIm9wZXJhdG9yZnJhbWV3b3JrLmlvL2FyY2gucHBjNjRsZSI6InN1cHBvcnRlZCIsIm9wZXJhdG9yZnJhbWV3b3JrLmlvL2FyY2guczM5MHgiOiJzdXBwb3J0ZWQifSwibmFtZSI6InJoYWNzLW9wZXJhdG9yLnY0LjguMTAtcmMuMiIsIm5hbWVzcGFjZSI6InBsYWNlaG9sZGVyIn0sInNwZWMiOnsiYXBpc2VydmljZWRlZmluaXRpb25zIjp7fSwiY3VzdG9tcmVzb3VyY2VkZWZpbml0aW9ucyI6eyJvd25lZCI6W3siZGVzY3JpcHRpb24iOiJDZW50cmFsIGlzIHRoZSBjb25maWd1cmF0aW9uIHRlbXBsYXRlIGZvciB0aGUgY2VudHJhbCBzZXJ2aWNlcy4gVGhpcyBpbmNsdWRlcyB0aGUgQVBJIHNlcnZlciwgcGVyc2lzdGVudCBzdG9yYWdlLFxuYW5kIHRoZSB3ZWIgVUksIGFzIHdlbGwgYXMgdGhlIGltYWdlIHNjYW5uZXIuIiwiZGlzcGxheU5hbWUiOiJDZW50cmFsIiwia2luZCI6IkNlbnRyYWwiLCJuYW1lIjoiY2VudHJhbHMucGxhdGZvcm0uc3RhY2tyb3guaW8iLCJyZXNvdXJjZXMiOlt7ImtpbmQiOiJEZXBsb3ltZW50IiwibmFtZSI6IiIsInZlcnNpb24iOiJ2MSJ9LHsia2luZCI6IlJvdXRlIiwibmFtZSI6IiIsInZlcnNpb24iOiJ2MSJ9LHsia2luZCI6IlNlY3JldCIsIm5hbWUiOiIiLCJ2ZXJzaW9uIjoidjEifSx7ImtpbmQiOiJTZXJ2aWNlIiwibmFtZSI6IiIsInZlcnNpb24iOiJ2MSJ9XSwic3BlY0Rlc2NyaXB0b3JzIjpbeyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIGZvciB0aGUgQ2VudHJhbCBjb21wb25lbnQsIHdoaWNoIGlzIHJlc3BvbnNpYmxlIGZvciBhbGwgdXNlciBpbnRlcmFjdGlvbi4iLCJkaXNwbGF5TmFtZSI6IkNlbnRyYWwgQ29tcG9uZW50IFNldHRpbmdzIiwicGF0aCI6ImNlbnRyYWwifSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBTY2FubmVyIGNvbXBvbmVudCwgd2hpY2ggaXMgcmVzcG9uc2libGUgZm9yIHZ1bG5lcmFiaWxpdHkgc2Nhbm5pbmcgb2YgY29udGFpbmVyXG5pbWFnZXMuIiwiZGlzcGxheU5hbWUiOiJTY2FubmVyIENvbXBvbmVudCBTZXR0aW5ncyIsInBhdGgiOiJzY2FubmVyIn0seyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIGZvciB0aGUgU2Nhbm5lciBWNCBjb21wb25lbnQsIHdoaWNoIGNhbiBydW4gaW4gYWRkaXRpb24gdG8gdGhlIHByZXZpb3VzbHkgZXhpc3RpbmcgU2Nhbm5lciBjb21wb25lbnRzIiwiZGlzcGxheU5hbWUiOiJTY2FubmVyIFY0IENvbXBvbmVudCBTZXR0aW5ncyIsInBhdGgiOiJzY2FubmVyVjQifSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcmVsYXRlZCB0byBvdXRnb2luZyBuZXR3b3JrIHRyYWZmaWMuIiwiZGlzcGxheU5hbWUiOiJFZ3Jlc3MiLCJwYXRoIjoiZWdyZXNzIn0seyJkZXNjcmlwdGlvbiI6IkFsbG93cyB5b3UgdG8gc3BlY2lmeSBhZGRpdGlvbmFsIHRydXN0ZWQgUm9vdCBDQXMuIiwiZGlzcGxheU5hbWUiOiJUTFMiLCJwYXRoIjoidGxzIn0seyJkZXNjcmlwdGlvbiI6IkFkZGl0aW9uYWwgaW1hZ2UgcHVsbCBzZWNyZXRzIHRvIGJlIHRha2VuIGludG8gYWNjb3VudCBmb3IgcHVsbGluZyBpbWFnZXMuIiwiZGlzcGxheU5hbWUiOiJJbWFnZSBQdWxsIFNlY3JldHMiLCJwYXRoIjoiaW1hZ2VQdWxsU2VjcmV0cyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTphZHZhbmNlZCJdfSx7ImRlc2NyaXB0aW9uIjoiQ3VzdG9taXphdGlvbnMgdG8gYXBwbHkgb24gYWxsIENlbnRyYWwgU2VydmljZXMgY29tcG9uZW50cy4iLCJkaXNwbGF5TmFtZSI6IkN1c3RvbWl6YXRpb25zIiwicGF0aCI6ImN1c3RvbWl6ZSIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTphZHZhbmNlZCJdfSx7ImRlc2NyaXB0aW9uIjoiT3ZlcmxheXMiLCJkaXNwbGF5TmFtZSI6Ik92ZXJsYXlzIiwicGF0aCI6Im92ZXJsYXlzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiTW9uaXRvcmluZyBjb25maWd1cmF0aW9uLiIsImRpc3BsYXlOYW1lIjoiTW9uaXRvcmluZyIsInBhdGgiOiJtb25pdG9yaW5nIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmFkdmFuY2VkIl19LHsiZGVzY3JpcHRpb24iOiJOZXR3b3JrIGNvbmZpZ3VyYXRpb24uIiwiZGlzcGxheU5hbWUiOiJOZXR3b3JrIiwicGF0aCI6Im5ldHdvcmsiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6YWR2YW5jZWQiXX0seyJkZXNjcmlwdGlvbiI6IkNvbmZpZy1hcy1Db2RlIGNvbmZpZ3VyYXRpb24uIiwiZGlzcGxheU5hbWUiOiJDb25maWctYXMtQ29kZSIsInBhdGgiOiJjb25maWdBc0NvZGUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6YWR2YW5jZWQiXX0seyJkZXNjcmlwdGlvbiI6IkRlcHJlY2F0ZWQgZmllbGQuIFRoaXMgZmllbGQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHJlbGVhc2UuXG5NaXNjZWxsYW5lb3VzIHNldHRpbmdzLiIsImRpc3BsYXlOYW1lIjoiTWlzY2VsbGFuZW91cyIsInBhdGgiOiJtaXNjIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiU3BlY2lmeSBhIHNlY3JldCB0aGF0IGNvbnRhaW5zIHRoZSBhZG1pbmlzdHJhdG9yIHBhc3N3b3JkIGluIHRoZSBcInBhc3N3b3JkXCIgZGF0YSBpdGVtLlxuSWYgb21pdHRlZCwgdGhlIG9wZXJhdG9yIHdpbGwgYXV0by1nZW5lcmF0ZSBhIHBhc3N3b3JkIGFuZCBzdG9yZSBpdCBpbiB0aGUgXCJwYXNzd29yZFwiIGl0ZW1cbmluIHRoZSBcImNlbnRyYWwtaHRwYXNzd2RcIiBzZWNyZXQuIiwiZGlzcGxheU5hbWUiOiJBZG1pbmlzdHJhdG9yIFBhc3N3b3JkIiwicGF0aCI6ImNlbnRyYWwuYWRtaW5QYXNzd29yZFNlY3JldCJ9LHsiZGVzY3JpcHRpb24iOiJIZXJlIHlvdSBjYW4gY29uZmlndXJlIGlmIHlvdSB3YW50IHRvIGV4cG9zZSBjZW50cmFsIHRocm91Z2ggYSBub2RlIHBvcnQsIGEgbG9hZCBiYWxhbmNlciwgb3IgYW4gT3BlblNoaWZ0XG5yb3V0ZS4iLCJkaXNwbGF5TmFtZSI6IkV4cG9zdXJlIiwicGF0aCI6ImNlbnRyYWwuZXhwb3N1cmUifSx7ImRlc2NyaXB0aW9uIjoiQnkgZGVmYXVsdCwgQ2VudHJhbCB3aWxsIG9ubHkgc2VydmUgYW4gaW50ZXJuYWwgVExTIGNlcnRpZmljYXRlLCB3aGljaCBtZWFucyB0aGF0IHlvdSB3aWxsXG5uZWVkIHRvIGhhbmRsZSBUTFMgdGVybWluYXRpb24gYXQgdGhlIGluZ3Jlc3Mgb3IgbG9hZCBiYWxhbmNlciBsZXZlbC5cbklmIHlvdSB3YW50IHRvIHRlcm1pbmF0ZSBUTFMgaW4gQ2VudHJhbCBhbmQgc2VydmUgYSBjdXN0b20gc2VydmVyIGNlcnRpZmljYXRlLCB5b3UgY2FuIHNwZWNpZnlcbmEgc2VjcmV0IGNvbnRhaW5pbmcgdGhlIGNlcnRpZmljYXRlIGFuZCBwcml2YXRlIGtleSBoZXJlLiIsImRpc3BsYXlOYW1lIjoiVXNlci1mYWNpbmcgVExTIGNlcnRpZmljYXRlIHNlY3JldCIsInBhdGgiOiJjZW50cmFsLmRlZmF1bHRUTFNTZWNyZXQifSx7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyBtb25pdG9yaW5nIGVuZHBvaW50IGZvciBDZW50cmFsLiBUaGUgbW9uaXRvcmluZyBlbmRwb2ludFxuYWxsb3dzIG90aGVyIHNlcnZpY2VzIHRvIGNvbGxlY3QgbWV0cmljcyBmcm9tIENlbnRyYWwsIHByb3ZpZGVkIGluXG5Qcm9tZXRoZXVzIGNvbXBhdGlibGUgZm9ybWF0LiIsImRpc3BsYXlOYW1lIjoiTW9uaXRvcmluZyIsInBhdGgiOiJjZW50cmFsLm1vbml0b3JpbmcifSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIENlbnRyYWwgREIsIHdoaWNoIGlzIHJlc3BvbnNpYmxlIGZvciBkYXRhIHBlcnNpc3RlbmNlLiIsImRpc3BsYXlOYW1lIjoiQ2VudHJhbCBEQiBTZXR0aW5ncyIsInBhdGgiOiJjZW50cmFsLmRiIn0seyJkZXNjcmlwdGlvbiI6IkNvbmZpZ3VyZXMgdGVsZW1ldHJ5IHNldHRpbmdzIGZvciBDZW50cmFsLiBJZiBlbmFibGVkLCBDZW50cmFsIHRyYW5zbWl0cyB0ZWxlbWV0cnkgYW5kIGRpYWdub3N0aWNcbmRhdGEgdG8gYSByZW1vdGUgc3RvcmFnZSBiYWNrZW5kLiIsImRpc3BsYXlOYW1lIjoiVGVsZW1ldHJ5IiwicGF0aCI6ImNlbnRyYWwudGVsZW1ldHJ5IiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyByZXNvdXJjZXMgd2l0aGluIENlbnRyYWwgaW4gYSBkZWNsYXJhdGl2ZSBtYW5uZXIuIiwiZGlzcGxheU5hbWUiOiJEZWNsYXJhdGl2ZSBDb25maWd1cmF0aW9uIiwicGF0aCI6ImNlbnRyYWwuZGVjbGFyYXRpdmVDb25maWd1cmF0aW9uIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyB0aGUgZW5jcnlwdGlvbiBvZiBub3RpZmllciBzZWNyZXRzIHN0b3JlZCBpbiB0aGUgQ2VudHJhbCBEQi4iLCJkaXNwbGF5TmFtZSI6Ik5vdGlmaWVyIFNlY3JldHMgRW5jcnlwdGlvbiIsInBhdGgiOiJjZW50cmFsLm5vdGlmaWVyU2VjcmV0c0VuY3J5cHRpb24iLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6aGlkZGVuIl19LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6ImNlbnRyYWwucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNlbGVjdG9yIiwicGF0aCI6ImNlbnRyYWwubm9kZVNlbGVjdG9yIn0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsImRpc3BsYXlOYW1lIjoiVG9sZXJhdGlvbnMiLCJwYXRoIjoiY2VudHJhbC50b2xlcmF0aW9ucyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0b2xlcmF0aW9ucyJdfSx7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiZGlzcGxheU5hbWUiOiJIb3N0IEFsaWFzZXMiLCJwYXRoIjoiY2VudHJhbC5ob3N0QWxpYXNlcyJ9LHsiZGVzY3JpcHRpb24iOiJEaXNhYmxlIGFkbWluIHBhc3N3b3JkIGdlbmVyYXRpb24uIERvIG5vdCB1c2UgdGhpcyBmb3IgZmlyc3QtdGltZSBpbnN0YWxsYXRpb25zLFxuYXMgeW91IHdpbGwgaGF2ZSBubyB3YXkgdG8gcGVyZm9ybSBpbml0aWFsIHNldHVwIGFuZCBjb25maWd1cmF0aW9uIG9mIGFsdGVybmF0aXZlIGF1dGhlbnRpY2F0aW9uIG1ldGhvZHMuIiwiZGlzcGxheU5hbWUiOiJBZG1pbiBQYXNzd29yZCBHZW5lcmF0aW9uIERpc2FibGVkIiwicGF0aCI6ImNlbnRyYWwuYWRtaW5QYXNzd29yZEdlbmVyYXRpb25EaXNhYmxlZCIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpoaWRkZW4iXX0seyJkZXNjcmlwdGlvbiI6IlVudXNlZCBmaWVsZC4gVGhpcyBmaWVsZCBleGlzdHMgc29sZWx5IGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHN0YXJ0aW5nIGZyb20gdmVyc2lvbiB2NC42LjAuIiwiZGlzcGxheU5hbWUiOiJQZXJzaXN0ZW5jZSIsInBhdGgiOiJjZW50cmFsLnBlcnNpc3RlbmNlIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHJlZmVyZW5jZWQgc2VjcmV0LiIsImRpc3BsYXlOYW1lIjoiTmFtZSIsInBhdGgiOiJjZW50cmFsLmFkbWluUGFzc3dvcmRTZWNyZXQubmFtZSIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmlvLmt1YmVybmV0ZXM6U2VjcmV0Il19LHsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IGEgc2VjcmV0IHRoYXQgY29udGFpbnMgdGhlIHBhc3N3b3JkIGluIHRoZSBcInBhc3N3b3JkXCIgZGF0YSBpdGVtLiBUaGlzIGNhbiBvbmx5IGJlIHVzZWQgd2hlblxuc3BlY2lmeWluZyBhIGNvbm5lY3Rpb24gc3RyaW5nIG1hbnVhbGx5LlxuV2hlbiBvbWl0dGVkLCB0aGUgb3BlcmF0b3Igd2lsbCBhdXRvLWdlbmVyYXRlIGEgREIgcGFzc3dvcmQgYW5kIHN0b3JlIGl0IGluIHRoZSBcInBhc3N3b3JkXCIgaXRlbVxuaW4gdGhlIFwiY2VudHJhbC1kYi1wYXNzd29yZFwiIHNlY3JldC4iLCJkaXNwbGF5TmFtZSI6IkFkbWluaXN0cmF0b3IgUGFzc3dvcmQiLCJwYXRoIjoiY2VudHJhbC5kYi5wYXNzd29yZFNlY3JldCJ9LHsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IGEgY29ubmVjdGlvbiBzdHJpbmcgdGhhdCBjb3JyZXNwb25kcyB0byBhIGRhdGFiYXNlIG1hbmFnZWQgZWxzZXdoZXJlLiBJZiBzZXQsIHRoZSBvcGVyYXRvciB3aWxsIG5vdCBtYW5hZ2UgdGhlIENlbnRyYWwgREIuXG5XaGVuIHVzaW5nIHRoaXMgb3B0aW9uLCB5b3UgbXVzdCBleHBsaWNpdGx5IHNldCBhIHBhc3N3b3JkIHNlY3JldDsgYXV0b21hdGljYWxseSBnZW5lcmF0aW5nIGEgcGFzc3dvcmQgd2lsbCBub3RcbmJlIHN1cHBvcnRlZC4iLCJkaXNwbGF5TmFtZSI6IkNvbm5lY3Rpb24gU3RyaW5nIiwicGF0aCI6ImNlbnRyYWwuZGIuY29ubmVjdGlvblN0cmluZyJ9LHsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIGhvdyBDZW50cmFsIERCIHNob3VsZCBzdG9yZSBpdHMgcGVyc2lzdGVudCBkYXRhLiBZb3UgY2FuIGNob29zZSBiZXR3ZWVuIHVzaW5nIGEgcGVyc2lzdGVudFxudm9sdW1lIGNsYWltIChyZWNvbW1lbmRlZCBkZWZhdWx0KSwgYW5kIGEgaG9zdCBwYXRoLiIsImRpc3BsYXlOYW1lIjoiUGVyc2lzdGVuY2UiLCJwYXRoIjoiY2VudHJhbC5kYi5wZXJzaXN0ZW5jZSJ9LHsiZGVzY3JpcHRpb24iOiJDb25maWcgbWFwIGNvbnRhaW5pbmcgcG9zdGdyZXNxbC5jb25mIGFuZCBwZ19oYmEuY29uZiB0aGF0IHdpbGwgYmUgdXNlZCBpZiBtb2RpZmljYXRpb25zIG5lZWQgdG8gYmUgYXBwbGllZC4iLCJkaXNwbGF5TmFtZSI6IkNvbmZpZyBtYXAgdGhhdCB3aWxsIG92ZXJyaWRlIHBvc3RncmVzcWwuY29uZiBhbmQgcGdfaGJhLmNvbmYiLCJwYXRoIjoiY2VudHJhbC5kYi5jb25maWdPdmVycmlkZSJ9LHsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIHRoZSBkYXRhYmFzZSBjb25uZWN0aW9uIHBvb2wgc2l6ZS4iLCJkaXNwbGF5TmFtZSI6IkRhdGFiYXNlIENvbm5lY3Rpb24gUG9vbCBTaXplIFNldHRpbmdzIiwicGF0aCI6ImNlbnRyYWwuZGIuY29ubmVjdGlvblBvb2xTaXplIn0seyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwiZGlzcGxheU5hbWUiOiJSZXNvdXJjZXMiLCJwYXRoIjoiY2VudHJhbC5kYi5yZXNvdXJjZXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6cmVzb3VyY2VSZXF1aXJlbWVudHMiXX0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJkaXNwbGF5TmFtZSI6Ik5vZGUgU2VsZWN0b3IiLCJwYXRoIjoiY2VudHJhbC5kYi5ub2RlU2VsZWN0b3IifSx7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiZGlzcGxheU5hbWUiOiJUb2xlcmF0aW9ucyIsInBhdGgiOiJjZW50cmFsLmRiLnRvbGVyYXRpb25zIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnRvbGVyYXRpb25zIl19LHsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJkaXNwbGF5TmFtZSI6Ikhvc3QgQWxpYXNlcyIsInBhdGgiOiJjZW50cmFsLmRiLmhvc3RBbGlhc2VzIn0seyJkZXNjcmlwdGlvbiI6IkRlcHJlY2F0ZWQgZmllbGQuIEl0IGlzIG5vIGxvbmdlciBuZWNlc3NhcnkgdG8gc3BlY2lmeSBpdC5cblRoaXMgZmllbGQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHJlbGVhc2UuXG5DZW50cmFsIGlzIGNvbmZpZ3VyZWQgdG8gdXNlIFBvc3RncmVTUUwgYnkgZGVmYXVsdC4iLCJkaXNwbGF5TmFtZSI6IklzIEVuYWJsZWQiLCJwYXRoIjoiY2VudHJhbC5kYi5pc0VuYWJsZWQiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6aGlkZGVuIl19LHsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgcmVmZXJlbmNlZCBjb25maWcgbWFwLiIsImRpc3BsYXlOYW1lIjoiTmFtZSIsInBhdGgiOiJjZW50cmFsLmRiLmNvbmZpZ092ZXJyaWRlLm5hbWUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjppby5rdWJlcm5ldGVzOkNvbmZpZ01hcCJdfSx7ImRlc2NyaXB0aW9uIjoiTWF4aW11bSBudW1iZXIgb2YgY29ubmVjdGlvbnMgaW4gdGhlIGNvbm5lY3Rpb24gcG9vbC4iLCJkaXNwbGF5TmFtZSI6Ik1heGltdW0gQ29ubmVjdGlvbnMiLCJwYXRoIjoiY2VudHJhbC5kYi5jb25uZWN0aW9uUG9vbFNpemUubWF4Q29ubmVjdGlvbnMifSx7ImRlc2NyaXB0aW9uIjoiTWluaW11bSBudW1iZXIgb2YgY29ubmVjdGlvbnMgaW4gdGhlIGNvbm5lY3Rpb24gcG9vbC4iLCJkaXNwbGF5TmFtZSI6Ik1pbmltdW0gQ29ubmVjdGlvbnMiLCJwYXRoIjoiY2VudHJhbC5kYi5jb25uZWN0aW9uUG9vbFNpemUubWluQ29ubmVjdGlvbnMifSx7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHJlZmVyZW5jZWQgc2VjcmV0LiIsImRpc3BsYXlOYW1lIjoiTmFtZSIsInBhdGgiOiJjZW50cmFsLmRiLnBhc3N3b3JkU2VjcmV0Lm5hbWUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjppby5rdWJlcm5ldGVzOlNlY3JldCJdfSx7ImRlc2NyaXB0aW9uIjoiVXNlcyBhIEt1YmVybmV0ZXMgcGVyc2lzdGVudCB2b2x1bWUgY2xhaW0gKFBWQykgdG8gbWFuYWdlIHRoZSBzdG9yYWdlIGxvY2F0aW9uIG9mIHBlcnNpc3RlbnQgZGF0YS5cblJlY29tbWVuZGVkIGZvciBtb3N0IHVzZXJzLiIsImRpc3BsYXlOYW1lIjoiUGVyc2lzdGVudCB2b2x1bWUgY2xhaW0iLCJwYXRoIjoiY2VudHJhbC5kYi5wZXJzaXN0ZW5jZS5wZXJzaXN0ZW50Vm9sdW1lQ2xhaW0ifSx7ImRlc2NyaXB0aW9uIjoiU3RvcmVzIHBlcnNpc3RlbnQgZGF0YSBvbiBhIGRpcmVjdG9yeSBvbiB0aGUgaG9zdC4gVGhpcyBpcyBub3QgcmVjb21tZW5kZWQsIGFuZCBzaG91bGQgb25seVxuYmUgdXNlZCB0b2dldGhlciB3aXRoIGEgbm9kZSBzZWxlY3RvciAob25seSBhdmFpbGFibGUgaW4gWUFNTCB2aWV3KS4iLCJkaXNwbGF5TmFtZSI6Ikhvc3QgcGF0aCIsInBhdGgiOiJjZW50cmFsLmRiLnBlcnNpc3RlbmNlLmhvc3RQYXRoIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBwYXRoIG9uIHRoZSBob3N0IHJ1bm5pbmcgQ2VudHJhbC4iLCJkaXNwbGF5TmFtZSI6IlBhdGgiLCJwYXRoIjoiY2VudHJhbC5kYi5wZXJzaXN0ZW5jZS5ob3N0UGF0aC5wYXRoIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSBQVkMgdG8gbWFuYWdlIHBlcnNpc3RlbnQgZGF0YS4gSWYgbm8gUFZDIHdpdGggdGhlIGdpdmVuIG5hbWUgZXhpc3RzLCBpdCB3aWxsIGJlXG5jcmVhdGVkLiBEZWZhdWx0cyB0byBcImNlbnRyYWwtZGJcIiBpZiBub3Qgc2V0LiIsImRpc3BsYXlOYW1lIjoiQ2xhaW0gTmFtZSIsInBhdGgiOiJjZW50cmFsLmRiLnBlcnNpc3RlbmNlLnBlcnNpc3RlbnRWb2x1bWVDbGFpbS5jbGFpbU5hbWUifSx7ImRlc2NyaXB0aW9uIjoiVGhlIHNpemUgb2YgdGhlIHBlcnNpc3RlbnQgdm9sdW1lIHdoZW4gY3JlYXRlZCB0aHJvdWdoIHRoZSBjbGFpbS4gSWYgYSBjbGFpbSB3YXMgYXV0b21hdGljYWxseSBjcmVhdGVkLFxudGhpcyBjYW4gYmUgdXNlZCBhZnRlciB0aGUgaW5pdGlhbCBkZXBsb3ltZW50IHRvIHJlc2l6ZSAoZ3JvdykgdGhlIHZvbHVtZSAob25seSBzdXBwb3J0ZWQgYnkgc29tZVxuc3RvcmFnZSBjbGFzcyBjb250cm9sbGVycykuIiwiZGlzcGxheU5hbWUiOiJTaXplIiwicGF0aCI6ImNlbnRyYWwuZGIucGVyc2lzdGVuY2UucGVyc2lzdGVudFZvbHVtZUNsYWltLnNpemUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6dGV4dCJdfSx7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHN0b3JhZ2UgY2xhc3MgdG8gdXNlIGZvciB0aGUgUFZDLiBJZiB5b3VyIGNsdXN0ZXIgaXMgbm90IGNvbmZpZ3VyZWQgd2l0aCBhIGRlZmF1bHQgc3RvcmFnZVxuY2xhc3MsIHlvdSBtdXN0IHNlbGVjdCBhIHZhbHVlIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJTdG9yYWdlIENsYXNzIiwicGF0aCI6ImNlbnRyYWwuZGIucGVyc2lzdGVuY2UucGVyc2lzdGVudFZvbHVtZUNsYWltLnN0b3JhZ2VDbGFzc05hbWUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjppby5rdWJlcm5ldGVzOlN0b3JhZ2VDbGFzcyJdfSx7ImRlc2NyaXB0aW9uIjoiTGlzdCBvZiBjb25maWcgbWFwcyBjb250YWluaW5nIGRlY2xhcmF0aXZlIGNvbmZpZ3VyYXRpb24uIiwiZGlzcGxheU5hbWUiOiJDb25maWcgbWFwcyBjb250YWluaW5nIGRlY2xhcmF0aXZlIGNvbmZpZ3VyYXRpb24iLCJwYXRoIjoiY2VudHJhbC5kZWNsYXJhdGl2ZUNvbmZpZ3VyYXRpb24uY29uZmlnTWFwcyJ9LHsiZGVzY3JpcHRpb24iOiJMaXN0IG9mIHNlY3JldHMgY29udGFpbmluZyBkZWNsYXJhdGl2ZSBjb25maWd1cmF0aW9uLiIsImRpc3BsYXlOYW1lIjoiU2VjcmV0cyBjb250YWluaW5nIGRlY2xhcmF0aXZlIGNvbmZpZ3VyYXRpb24iLCJwYXRoIjoiY2VudHJhbC5kZWNsYXJhdGl2ZUNvbmZpZ3VyYXRpb24uc2VjcmV0cyJ9LHsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgcmVmZXJlbmNlZCBjb25maWcgbWFwLiIsImRpc3BsYXlOYW1lIjoiTmFtZSIsInBhdGgiOiJjZW50cmFsLmRlY2xhcmF0aXZlQ29uZmlndXJhdGlvbi5jb25maWdNYXBzWzBdLm5hbWUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjppby5rdWJlcm5ldGVzOkNvbmZpZ01hcCJdfSx7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHJlZmVyZW5jZWQgc2VjcmV0LiIsImRpc3BsYXlOYW1lIjoiTmFtZSIsInBhdGgiOiJjZW50cmFsLmRlY2xhcmF0aXZlQ29uZmlndXJhdGlvbi5zZWNyZXRzWzBdLm5hbWUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjppby5rdWJlcm5ldGVzOlNlY3JldCJdfSx7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHJlZmVyZW5jZWQgc2VjcmV0LiIsImRpc3BsYXlOYW1lIjoiTmFtZSIsInBhdGgiOiJjZW50cmFsLmRlZmF1bHRUTFNTZWNyZXQubmFtZSIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmlvLmt1YmVybmV0ZXM6U2VjcmV0Il19LHsiZGVzY3JpcHRpb24iOiJFeHBvc2UgQ2VudHJhbCB0aHJvdWdoIGFuIE9wZW5TaGlmdCByb3V0ZS4iLCJkaXNwbGF5TmFtZSI6IlJvdXRlIiwicGF0aCI6ImNlbnRyYWwuZXhwb3N1cmUucm91dGUifSx7ImRlc2NyaXB0aW9uIjoiRXhwb3NlIENlbnRyYWwgdGhyb3VnaCBhIGxvYWQgYmFsYW5jZXIgc2VydmljZS4iLCJkaXNwbGF5TmFtZSI6IkxvYWQgQmFsYW5jZXIiLCJwYXRoIjoiY2VudHJhbC5leHBvc3VyZS5sb2FkQmFsYW5jZXIifSx7ImRlc2NyaXB0aW9uIjoiRXhwb3NlIENlbnRyYWwgdGhyb3VnaCBhIG5vZGUgcG9ydC4iLCJkaXNwbGF5TmFtZSI6Ik5vZGUgUG9ydCIsInBhdGgiOiJjZW50cmFsLmV4cG9zdXJlLm5vZGVQb3J0In0seyJkaXNwbGF5TmFtZSI6IkVuYWJsZWQiLCJwYXRoIjoiY2VudHJhbC5leHBvc3VyZS5sb2FkQmFsYW5jZXIuZW5hYmxlZCJ9LHsiZGVzY3JpcHRpb24iOiJEZWZhdWx0cyB0byA0NDMgaWYgbm90IHNldC4iLCJkaXNwbGF5TmFtZSI6IlBvcnQiLCJwYXRoIjoiY2VudHJhbC5leHBvc3VyZS5sb2FkQmFsYW5jZXIucG9ydCIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6Y2VudHJhbC5leHBvc3VyZS5sb2FkQmFsYW5jZXIuZW5hYmxlZDp0cnVlIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3UgaGF2ZSBhIHN0YXRpYyBJUCBhZGRyZXNzIHJlc2VydmVkIGZvciB5b3VyIGxvYWQgYmFsYW5jZXIsIHlvdSBjYW4gZW50ZXIgaXQgaGVyZS4iLCJkaXNwbGF5TmFtZSI6IklQIiwicGF0aCI6ImNlbnRyYWwuZXhwb3N1cmUubG9hZEJhbGFuY2VyLmlwIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmZpZWxkRGVwZW5kZW5jeTpjZW50cmFsLmV4cG9zdXJlLmxvYWRCYWxhbmNlci5lbmFibGVkOnRydWUiXX0seyJkaXNwbGF5TmFtZSI6IkVuYWJsZWQiLCJwYXRoIjoiY2VudHJhbC5leHBvc3VyZS5ub2RlUG9ydC5lbmFibGVkIn0seyJkZXNjcmlwdGlvbiI6IlVzZSB0aGlzIHRvIHNwZWNpZnkgYW4gZXhwbGljaXQgbm9kZSBwb3J0LiBNb3N0IHVzZXJzIHNob3VsZCBsZWF2ZSB0aGlzIGVtcHR5LiIsImRpc3BsYXlOYW1lIjoiUG9ydCIsInBhdGgiOiJjZW50cmFsLmV4cG9zdXJlLm5vZGVQb3J0LnBvcnQiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6ZmllbGREZXBlbmRlbmN5OmNlbnRyYWwuZXhwb3N1cmUubm9kZVBvcnQuZW5hYmxlZDp0cnVlIl19LHsiZGVzY3JpcHRpb24iOiJFeHBvc2UgQ2VudHJhbCB3aXRoIGEgcGFzc3Rocm91Z2ggcm91dGUuIiwiZGlzcGxheU5hbWUiOiJFbmFibGVkIiwicGF0aCI6ImNlbnRyYWwuZXhwb3N1cmUucm91dGUuZW5hYmxlZCJ9LHsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IGEgY3VzdG9tIGhvc3RuYW1lIGZvciB0aGUgQ2VudHJhbCByb3V0ZS5cbklmIHVuc3BlY2lmaWVkLCBhbiBhcHByb3ByaWF0ZSBkZWZhdWx0IHZhbHVlIHdpbGwgYmUgYXV0b21hdGljYWxseSBjaG9zZW4gYnkgdGhlIE9wZW5TaGlmdCByb3V0ZSBvcGVyYXRvci4iLCJkaXNwbGF5TmFtZSI6Ikhvc3QiLCJwYXRoIjoiY2VudHJhbC5leHBvc3VyZS5yb3V0ZS5ob3N0In0seyJkZXNjcmlwdGlvbiI6IlNldCB1cCBhIENlbnRyYWwgcm91dGUgd2l0aCByZWVuY3J5cHQgVExTIHRlcm1pbmF0aW9uLlxuRm9yIHJlZW5jcnlwdCByb3V0ZXMsIHRoZSByZXF1ZXN0IGlzIHRlcm1pbmF0ZWQgb24gdGhlIE9wZW5TaGlmdCByb3V0ZXIgd2l0aCBhIGN1c3RvbSBjZXJ0aWZpY2F0ZS5cblRoZSByZXF1ZXN0IGlzIHRoZW4gcmVlbmNyeXB0ZWQgYnkgdGhlIE9wZW5TaGlmdCByb3V0ZXIgYW5kIHNlbnQgdG8gQ2VudHJhbC5cblt1c2VyXSAtLVRMUy0tXHUwMDNlIFtPcGVuU2hpZnQgcm91dGVyXSAtLVRMUy0tXHUwMDNlIFtDZW50cmFsXSIsImRpc3BsYXlOYW1lIjoiUmUtRW5jcnlwdCBSb3V0ZSIsInBhdGgiOiJjZW50cmFsLmV4cG9zdXJlLnJvdXRlLnJlZW5jcnlwdCJ9LHsiZGVzY3JpcHRpb24iOiJFeHBvc2UgQ2VudHJhbCB3aXRoIGEgcmVlbmNyeXB0IHJvdXRlLlxuU2hvdWxkIG5vdCBiZSB1c2VkIGZvciBzZW5zb3IgY29tbXVuaWNhdGlvbi4iLCJkaXNwbGF5TmFtZSI6IkVuYWJsZWQiLCJwYXRoIjoiY2VudHJhbC5leHBvc3VyZS5yb3V0ZS5yZWVuY3J5cHQuZW5hYmxlZCJ9LHsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IGEgY3VzdG9tIGhvc3RuYW1lIGZvciB0aGUgQ2VudHJhbCByZWVuY3J5cHQgcm91dGUuXG5JZiB1bnNwZWNpZmllZCwgYW4gYXBwcm9wcmlhdGUgZGVmYXVsdCB2YWx1ZSB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgY2hvc2VuIGJ5IHRoZSBPcGVuU2hpZnQgcm91dGUgb3BlcmF0b3IuIiwiZGlzcGxheU5hbWUiOiJIb3N0IiwicGF0aCI6ImNlbnRyYWwuZXhwb3N1cmUucm91dGUucmVlbmNyeXB0Lmhvc3QifSx7ImRlc2NyaXB0aW9uIjoiVExTIHNldHRpbmdzIGZvciBleHBvc2luZyBDZW50cmFsIHZpYSBhIHJlZW5jcnlwdCBSb3V0ZS4iLCJkaXNwbGF5TmFtZSI6IlRMUyBTZXR0aW5ncyIsInBhdGgiOiJjZW50cmFsLmV4cG9zdXJlLnJvdXRlLnJlZW5jcnlwdC50bHMifSx7ImRlc2NyaXB0aW9uIjoiVGhlIFBFTSBlbmNvZGVkIGNlcnRpZmljYXRlIGNoYWluIHRoYXQgbWF5IGJlIHVzZWQgdG8gZXN0YWJsaXNoIGEgY29tcGxldGUgY2hhaW4gb2YgdHJ1c3QuXG5EZWZhdWx0cyB0byB0aGUgT3BlblNoaWZ0IGNlcnRpZmljYXRlIGF1dGhvcml0eS4iLCJkaXNwbGF5TmFtZSI6IkNBIENlcnRpZmljYXRlIiwicGF0aCI6ImNlbnRyYWwuZXhwb3N1cmUucm91dGUucmVlbmNyeXB0LnRscy5jYUNlcnRpZmljYXRlIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBQRU0gZW5jb2RlZCBjZXJ0aWZpY2F0ZSB0aGF0IGlzIHNlcnZlZCBvbiB0aGUgcm91dGUuIE11c3QgYmUgYSBzaW5nbGUgc2VydmluZ1xuY2VydGlmaWNhdGUgaW5zdGVhZCBvZiBhIGNlcnRpZmljYXRlIGNoYWluLlxuRGVmYXVsdHMgdG8gYSBjZXJ0aWZpY2F0ZSBzaWduZWQgYnkgdGhlIE9wZW5TaGlmdCBjZXJ0aWZpY2F0ZSBhdXRob3JpdHkuIiwiZGlzcGxheU5hbWUiOiJDZXJ0aWZpY2F0ZSIsInBhdGgiOiJjZW50cmFsLmV4cG9zdXJlLnJvdXRlLnJlZW5jcnlwdC50bHMuY2VydGlmaWNhdGUifSx7ImRlc2NyaXB0aW9uIjoiVGhlIENBIGNlcnRpZmljYXRlIG9mIHRoZSBmaW5hbCBkZXN0aW5hdGlvbiwgaS5lLiBvZiBDZW50cmFsLlxuVXNlZCBieSB0aGUgT3BlblNoaWZ0IHJvdXRlciBmb3IgaGVhbHRoIGNoZWNrcyBvbiB0aGUgc2VjdXJlIGNvbm5lY3Rpb24uXG5EZWZhdWx0cyB0byB0aGUgQ2VudHJhbCBjZXJ0aWZpY2F0ZSBhdXRob3JpdHkuIiwiZGlzcGxheU5hbWUiOiJEZXN0aW5hdGlvbiBDQSBDZXJ0aWZpY2F0ZSIsInBhdGgiOiJjZW50cmFsLmV4cG9zdXJlLnJvdXRlLnJlZW5jcnlwdC50bHMuZGVzdGluYXRpb25DQUNlcnRpZmljYXRlIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBQRU0gZW5jb2RlZCBwcml2YXRlIGtleSBvZiB0aGUgY2VydGlmaWNhdGUgdGhhdCBpcyBzZXJ2ZWQgb24gdGhlIHJvdXRlLlxuRGVmYXVsdHMgdG8gYSBjZXJ0aWZpY2F0ZSBzaWduZWQgYnkgdGhlIE9wZW5TaGlmdCBjZXJ0aWZpY2F0ZSBhdXRob3JpdHkuIiwiZGlzcGxheU5hbWUiOiJQcml2YXRlIEtleSIsInBhdGgiOiJjZW50cmFsLmV4cG9zdXJlLnJvdXRlLnJlZW5jcnlwdC50bHMua2V5In0seyJkZXNjcmlwdGlvbiI6IkV4cG9zZSB0aGUgbW9uaXRvcmluZyBlbmRwb2ludC4gQSBuZXcgc2VydmljZSwgXCJtb25pdG9yaW5nXCIsXG53aXRoIHBvcnQgOTA5MCwgd2lsbCBiZSBjcmVhdGVkIGFzIHdlbGwgYXMgYSBuZXR3b3JrIHBvbGljeSBhbGxvd2luZ1xuaW5ib3VuZCBjb25uZWN0aW9ucyB0byB0aGUgcG9ydC4iLCJkaXNwbGF5TmFtZSI6IkV4cG9zZSBFbmRwb2ludCIsInBhdGgiOiJjZW50cmFsLm1vbml0b3JpbmcuZXhwb3NlRW5kcG9pbnQifSx7ImRlc2NyaXB0aW9uIjoiRW5hYmxlcyB0aGUgZW5jcnlwdGlvbiBvZiBub3RpZmllciBzZWNyZXRzIHN0b3JlZCBpbiB0aGUgQ2VudHJhbCBEQi4iLCJkaXNwbGF5TmFtZSI6IkVuYWJsZWQiLCJwYXRoIjoiY2VudHJhbC5ub3RpZmllclNlY3JldHNFbmNyeXB0aW9uLmVuYWJsZWQifSx7ImRlc2NyaXB0aW9uIjoiVXNlcyBhIEt1YmVybmV0ZXMgcGVyc2lzdGVudCB2b2x1bWUgY2xhaW0gKFBWQykgdG8gbWFuYWdlIHRoZSBzdG9yYWdlIGxvY2F0aW9uIG9mIHBlcnNpc3RlbnQgZGF0YS5cblJlY29tbWVuZGVkIGZvciBtb3N0IHVzZXJzLiIsImRpc3BsYXlOYW1lIjoiUGVyc2lzdGVudCB2b2x1bWUgY2xhaW0iLCJwYXRoIjoiY2VudHJhbC5wZXJzaXN0ZW5jZS5wZXJzaXN0ZW50Vm9sdW1lQ2xhaW0ifSx7ImRlc2NyaXB0aW9uIjoiU3RvcmVzIHBlcnNpc3RlbnQgZGF0YSBvbiBhIGRpcmVjdG9yeSBvbiB0aGUgaG9zdC4gVGhpcyBpcyBub3QgcmVjb21tZW5kZWQsIGFuZCBzaG91bGQgb25seVxuYmUgdXNlZCB0b2dldGhlciB3aXRoIGEgbm9kZSBzZWxlY3RvciAob25seSBhdmFpbGFibGUgaW4gWUFNTCB2aWV3KS4iLCJkaXNwbGF5TmFtZSI6Ikhvc3QgcGF0aCIsInBhdGgiOiJjZW50cmFsLnBlcnNpc3RlbmNlLmhvc3RQYXRoIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBwYXRoIG9uIHRoZSBob3N0IHJ1bm5pbmcgQ2VudHJhbC4iLCJkaXNwbGF5TmFtZSI6IlBhdGgiLCJwYXRoIjoiY2VudHJhbC5wZXJzaXN0ZW5jZS5ob3N0UGF0aC5wYXRoIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSBQVkMgdG8gbWFuYWdlIHBlcnNpc3RlbnQgZGF0YS4gSWYgbm8gUFZDIHdpdGggdGhlIGdpdmVuIG5hbWUgZXhpc3RzLCBpdCB3aWxsIGJlXG5jcmVhdGVkLiBEZWZhdWx0cyB0byBcInN0YWNrcm94LWRiXCIgaWYgbm90IHNldC4iLCJkaXNwbGF5TmFtZSI6IkNsYWltIE5hbWUiLCJwYXRoIjoiY2VudHJhbC5wZXJzaXN0ZW5jZS5wZXJzaXN0ZW50Vm9sdW1lQ2xhaW0uY2xhaW1OYW1lIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBzaXplIG9mIHRoZSBwZXJzaXN0ZW50IHZvbHVtZSB3aGVuIGNyZWF0ZWQgdGhyb3VnaCB0aGUgY2xhaW0uIElmIGEgY2xhaW0gd2FzIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCxcbnRoaXMgY2FuIGJlIHVzZWQgYWZ0ZXIgdGhlIGluaXRpYWwgZGVwbG95bWVudCB0byByZXNpemUgKGdyb3cpIHRoZSB2b2x1bWUgKG9ubHkgc3VwcG9ydGVkIGJ5IHNvbWVcbnN0b3JhZ2UgY2xhc3MgY29udHJvbGxlcnMpLiIsImRpc3BsYXlOYW1lIjoiU2l6ZSIsInBhdGgiOiJjZW50cmFsLnBlcnNpc3RlbmNlLnBlcnNpc3RlbnRWb2x1bWVDbGFpbS5zaXplIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnRleHQiXX0seyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSBzdG9yYWdlIGNsYXNzIHRvIHVzZSBmb3IgdGhlIFBWQy4gSWYgeW91ciBjbHVzdGVyIGlzIG5vdCBjb25maWd1cmVkIHdpdGggYSBkZWZhdWx0IHN0b3JhZ2VcbmNsYXNzLCB5b3UgbXVzdCBzZWxlY3QgYSB2YWx1ZSBoZXJlLiIsImRpc3BsYXlOYW1lIjoiU3RvcmFnZSBDbGFzcyIsInBhdGgiOiJjZW50cmFsLnBlcnNpc3RlbmNlLnBlcnNpc3RlbnRWb2x1bWVDbGFpbS5zdG9yYWdlQ2xhc3NOYW1lIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6aW8ua3ViZXJuZXRlczpTdG9yYWdlQ2xhc3MiXX0seyJkZXNjcmlwdGlvbiI6IlNwZWNpZmllcyBpZiBUZWxlbWV0cnkgaXMgZW5hYmxlZC4iLCJkaXNwbGF5TmFtZSI6IkVuYWJsZWQiLCJwYXRoIjoiY2VudHJhbC50ZWxlbWV0cnkuZW5hYmxlZCIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpib29sZWFuU3dpdGNoIl19LHsiZGVzY3JpcHRpb24iOiJEZWZpbmVzIHRoZSB0ZWxlbWV0cnkgc3RvcmFnZSBiYWNrZW5kIGZvciBDZW50cmFsLiIsImRpc3BsYXlOYW1lIjoiU3RvcmFnZSIsInBhdGgiOiJjZW50cmFsLnRlbGVtZXRyeS5zdG9yYWdlIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmZpZWxkRGVwZW5kZW5jeTpjZW50cmFsLnRlbGVtZXRyeS5lbmFibGVkOnRydWUiXX0seyJkZXNjcmlwdGlvbiI6IlN0b3JhZ2UgQVBJIGVuZHBvaW50LiIsImRpc3BsYXlOYW1lIjoiRW5kcG9pbnQiLCJwYXRoIjoiY2VudHJhbC50ZWxlbWV0cnkuc3RvcmFnZS5lbmRwb2ludCJ9LHsiZGVzY3JpcHRpb24iOiJTdG9yYWdlIEFQSSBrZXkuIElmIG5vdCBzZXQsIHRlbGVtZXRyeSBpcyBkaXNhYmxlZC4iLCJkaXNwbGF5TmFtZSI6IktleSIsInBhdGgiOiJjZW50cmFsLnRlbGVtZXRyeS5zdG9yYWdlLmtleSJ9LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0byBkZXBsb3kgdGhlIENvbmZpZyBhcyBDb2RlIGNvbXBvbmVudCwgc2V0IHRoaXMgdG8gXCJFbmFibGVkXCIiLCJkaXNwbGF5TmFtZSI6IkNvbmZpZyBhcyBDb2RlIGNvbXBvbmVudCIsInBhdGgiOiJjb25maWdBc0NvZGUuY29uZmlnQXNDb2RlQ29tcG9uZW50In0seyJkZXNjcmlwdGlvbiI6IkN1c3RvbSBsYWJlbHMgdG8gc2V0IG9uIGFsbCBtYW5hZ2VkIG9iamVjdHMuIiwiZGlzcGxheU5hbWUiOiJMYWJlbHMiLCJwYXRoIjoiY3VzdG9taXplLmxhYmVscyJ9LHsiZGVzY3JpcHRpb24iOiJDdXN0b20gYW5ub3RhdGlvbnMgdG8gc2V0IG9uIGFsbCBtYW5hZ2VkIG9iamVjdHMuIiwiZGlzcGxheU5hbWUiOiJBbm5vdGF0aW9ucyIsInBhdGgiOiJjdXN0b21pemUuYW5ub3RhdGlvbnMifSx7ImRlc2NyaXB0aW9uIjoiQ3VzdG9tIGVudmlyb25tZW50IHZhcmlhYmxlcyB0byBzZXQgb24gbWFuYWdlZCBwb2RzJyBjb250YWluZXJzLiIsImRpc3BsYXlOYW1lIjoiRW52aXJvbm1lbnQgVmFyaWFibGVzIiwicGF0aCI6ImN1c3RvbWl6ZS5lbnZWYXJzIn0seyJkZXNjcmlwdGlvbiI6IkNvbmZpZ3VyZXMgd2hldGhlciBSZWQgSGF0IEFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHkgc2hvdWxkIHJ1biBpbiBvbmxpbmUgb3Igb2ZmbGluZSAoZGlzY29ubmVjdGVkKSBtb2RlLlxuSW4gb2ZmbGluZSBtb2RlLCBhdXRvbWF0aWMgdXBkYXRlcyBvZiB2dWxuZXJhYmlsaXR5IGRlZmluaXRpb25zIGFuZCBrZXJuZWwgbW9kdWxlcyBhcmUgZGlzYWJsZWQuIiwiZGlzcGxheU5hbWUiOiJDb25uZWN0aXZpdHkgUG9saWN5IiwicGF0aCI6ImVncmVzcy5jb25uZWN0aXZpdHlQb2xpY3kifSx7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHJlZmVyZW5jZWQgc2VjcmV0LiIsImRpc3BsYXlOYW1lIjoiTmFtZSIsInBhdGgiOiJpbWFnZVB1bGxTZWNyZXRzWzBdLm5hbWUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjppby5rdWJlcm5ldGVzOlNlY3JldCJdfSx7ImRlc2NyaXB0aW9uIjoiRGVwcmVjYXRlZCBmaWVsZC4gVGhpcyBmaWVsZCB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS5cblNldCB0aGlzIHRvIHRydWUgdG8gaGF2ZSB0aGUgb3BlcmF0b3IgY3JlYXRlIFNlY3VyaXR5Q29udGV4dENvbnN0cmFpbnRzIChTQ0NzKSBmb3IgdGhlIG9wZXJhbmRzLiBUaGlzXG5pc24ndCB1c3VhbGx5IG5lZWRlZCwgYW5kIG1heSBpbnRlcmZlcmUgd2l0aCBvdGhlciB3b3JrbG9hZHMuIiwiZGlzcGxheU5hbWUiOiJDcmVhdGUgU2VjdXJpdHlDb250ZXh0Q29uc3RyYWludHMgZm9yIE9wZXJhbmQiLCJwYXRoIjoibWlzYy5jcmVhdGVTQ0NzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRpc3BsYXlOYW1lIjoiRW5hYmxlZCIsInBhdGgiOiJtb25pdG9yaW5nLm9wZW5zaGlmdC5lbmFibGVkIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmJvb2xlYW5Td2l0Y2giXX0seyJkZXNjcmlwdGlvbiI6IlRvIHByb3ZpZGUgc2VjdXJpdHkgYXQgdGhlIG5ldHdvcmsgbGV2ZWwgdGhlIEFDUyBPcGVyYXRvciBjcmVhdGVzIE5ldHdvcmtQb2xpY3kgcmVzb3VyY2VzIGJ5IGRlZmF1bHQuIElmIHlvdSB3YW50IHRvIG1hbmFnZSB5b3VyIG93biBOZXR3b3JrUG9saWN5IG9iamVjdHMgdGhlbiBzZXQgdGhpcyB0byBcIkRpc2FibGVkXCIuIiwiZGlzcGxheU5hbWUiOiJOZXR3b3JrIFBvbGljaWVzIiwicGF0aCI6Im5ldHdvcmsucG9saWNpZXMifSx7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2UgQVBJIHZlcnNpb24uIiwiZGlzcGxheU5hbWUiOiJBUEkgVmVyc2lvbiIsInBhdGgiOiJvdmVybGF5c1swXS5hcGlWZXJzaW9uIn0seyJkZXNjcmlwdGlvbiI6IlJlc291cmNlIGtpbmQuIiwiZGlzcGxheU5hbWUiOiJLaW5kIiwicGF0aCI6Im92ZXJsYXlzWzBdLmtpbmQifSx7ImRlc2NyaXB0aW9uIjoiTmFtZSBvZiByZXNvdXJjZS4iLCJkaXNwbGF5TmFtZSI6Ik5hbWUiLCJwYXRoIjoib3ZlcmxheXNbMF0ubmFtZSJ9LHsiZGVzY3JpcHRpb24iOiJPcHRpb25hbCBtYXJrcyB0aGUgb3ZlcmxheSBhcyBvcHRpb25hbC5cbldoZW4gT3B0aW9uYWwgaXMgdHJ1ZSwgYW5kIHRoZSBzcGVjaWZpZWQgcmVzb3VyY2UgZG9lcyBub3QgZXhpc3QgaW4gdGhlIG91dHB1dCBtYW5pZmVzdHMsIHRoZSBvdmVybGF5IHdpbGwgYmUgc2tpcHBlZCwgYW5kIGEgd2FybmluZyB3aWxsIGJlIGxvZ2dlZC5cbldoZW4gT3B0aW9uYWwgaXMgZmFsc2UsIGFuZCB0aGUgc3BlY2lmaWVkIHJlc291cmNlIGRvZXMgbm90IGV4aXN0IGluIHRoZSBvdXRwdXQgbWFuaWZlc3RzLCBhbiBlcnJvciB3aWxsIGJlIHRocm93bi4iLCJkaXNwbGF5TmFtZSI6Ik9wdGlvbmFsIiwicGF0aCI6Im92ZXJsYXlzWzBdLm9wdGlvbmFsIn0seyJkZXNjcmlwdGlvbiI6Ikxpc3Qgb2YgcGF0Y2hlcyB0byBhcHBseSB0byByZXNvdXJjZS4iLCJkaXNwbGF5TmFtZSI6IlBhdGNoZXMiLCJwYXRoIjoib3ZlcmxheXNbMF0ucGF0Y2hlcyJ9LHsiZGVzY3JpcHRpb24iOiJQYXRoIG9mIHRoZSBmb3JtIGEuW2tleTE6dmFsdWUxXS5iLls6dmFsdWUyXVxuV2hlcmUgW2tleTE6dmFsdWUxXSBpcyBhIHNlbGVjdG9yIGZvciBhIGtleS12YWx1ZSBwYWlyIHRvIGlkZW50aWZ5IGEgbGlzdCBlbGVtZW50IGFuZCBbOnZhbHVlXSBpcyBhIHZhbHVlXG5zZWxlY3RvciB0byBpZGVudGlmeSBhIGxpc3QgZWxlbWVudCBpbiBhIGxlYWYgbGlzdC5cbkFsbCBwYXRoIGludGVybWVkaWF0ZSBub2RlcyBtdXN0IGV4aXN0LiIsImRpc3BsYXlOYW1lIjoiUGF0aCIsInBhdGgiOiJvdmVybGF5c1swXS5wYXRjaGVzWzBdLnBhdGgifSx7ImRlc2NyaXB0aW9uIjoiVmFsdWUgdG8gYWRkLCBkZWxldGUgb3IgcmVwbGFjZS5cbkZvciBhZGQsIHRoZSBwYXRoIHNob3VsZCBiZSBhIG5ldyBsZWFmLlxuRm9yIGRlbGV0ZSwgdmFsdWUgc2hvdWxkIGJlIHVuc2V0LlxuRm9yIHJlcGxhY2UsIHBhdGggc2hvdWxkIHJlZmVyZW5jZSBhbiBleGlzdGluZyBub2RlLlxuQWxsIHZhbHVlcyBhcmUgc3RyaW5ncyBidXQgYXJlIGNvbnZlcnRlZCBpbnRvIGFwcHJvcHJpYXRlIHR5cGUgYmFzZWQgb24gc2NoZW1hLiIsImRpc3BsYXlOYW1lIjoiVmFsdWUiLCJwYXRoIjoib3ZlcmxheXNbMF0ucGF0Y2hlc1swXS52YWx1ZSJ9LHsiZGVzY3JpcHRpb24iOiJWZXJiYXRpbSB2YWx1ZSB0byBhZGQsIGRlbGV0ZSBvciByZXBsYWNlLlxuU2FtZSBhcyBWYWx1ZSwgaG93ZXZlciB0aGUgY29udGVudCBpcyBub3QgaW50ZXJwcmV0ZWQgYXMgWUFNTCwgYnV0IHRyZWF0ZWQgYXMgbGl0ZXJhbCBzdHJpbmcgaW5zdGVhZC5cbkF0IGxlYXN0IG9uZSBvZiBWYWx1ZSBhbmQgVmVyYmF0aW0gbXVzdCBiZSBlbXB0eS4iLCJkaXNwbGF5TmFtZSI6IlZlcmJhdGltIiwicGF0aCI6Im92ZXJsYXlzWzBdLnBhdGNoZXNbMF0udmVyYmF0aW0ifSx7ImRlc2NyaXB0aW9uIjoiSWYgeW91IGRvIG5vdCB3YW50IHRvIGRlcGxveSB0aGUgUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5IFNjYW5uZXIsIHlvdSBjYW4gZGlzYWJsZSBpdCBoZXJlXG4obm90IHJlY29tbWVuZGVkKS4gQnkgZGVmYXVsdCwgdGhlIHNjYW5uZXIgaXMgZW5hYmxlZC5cbklmIHlvdSBkbyBzbywgYWxsIHRoZSBzZXR0aW5ncyBpbiB0aGlzIHNlY3Rpb24gd2lsbCBoYXZlIG5vIGVmZmVjdC4iLCJkaXNwbGF5TmFtZSI6IlNjYW5uZXIgQ29tcG9uZW50IiwicGF0aCI6InNjYW5uZXIuc2Nhbm5lckNvbXBvbmVudCJ9LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBwZXJ0YWluaW5nIHRvIHRoZSBhbmFseXplciBkZXBsb3ltZW50LCBzdWNoIGFzIGZvciBhdXRvc2NhbGluZy4iLCJkaXNwbGF5TmFtZSI6IkFuYWx5emVyIiwicGF0aCI6InNjYW5uZXIuYW5hbHl6ZXIiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6ZmllbGREZXBlbmRlbmN5OnNjYW5uZXIuc2Nhbm5lckNvbXBvbmVudDpFbmFibGVkIl19LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBwZXJ0YWluaW5nIHRvIHRoZSBkYXRhYmFzZSB1c2VkIGJ5IHRoZSBSZWQgSGF0IEFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHkgU2Nhbm5lci4iLCJkaXNwbGF5TmFtZSI6IkRCIiwicGF0aCI6InNjYW5uZXIuZGIiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6ZmllbGREZXBlbmRlbmN5OnNjYW5uZXIuc2Nhbm5lckNvbXBvbmVudDpFbmFibGVkIl19LHsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIG1vbml0b3JpbmcgZW5kcG9pbnQgZm9yIFNjYW5uZXIuIFRoZSBtb25pdG9yaW5nIGVuZHBvaW50XG5hbGxvd3Mgb3RoZXIgc2VydmljZXMgdG8gY29sbGVjdCBtZXRyaWNzIGZyb20gU2Nhbm5lciwgcHJvdmlkZWQgaW5cblByb21ldGhldXMgY29tcGF0aWJsZSBmb3JtYXQuIiwiZGlzcGxheU5hbWUiOiJNb25pdG9yaW5nIiwicGF0aCI6InNjYW5uZXIubW9uaXRvcmluZyJ9LHsiZGVzY3JpcHRpb24iOiJDb250cm9scyB0aGUgbnVtYmVyIG9mIGFuYWx5emVyIHJlcGxpY2FzIGFuZCBhdXRvc2NhbGluZy4iLCJkaXNwbGF5TmFtZSI6IlNjYWxpbmciLCJwYXRoIjoic2Nhbm5lci5hbmFseXplci5zY2FsaW5nIn0seyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwiZGlzcGxheU5hbWUiOiJSZXNvdXJjZXMiLCJwYXRoIjoic2Nhbm5lci5hbmFseXplci5yZXNvdXJjZXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6cmVzb3VyY2VSZXF1aXJlbWVudHMiXX0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJkaXNwbGF5TmFtZSI6Ik5vZGUgU2VsZWN0b3IiLCJwYXRoIjoic2Nhbm5lci5hbmFseXplci5ub2RlU2VsZWN0b3IifSx7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiZGlzcGxheU5hbWUiOiJUb2xlcmF0aW9ucyIsInBhdGgiOiJzY2FubmVyLmFuYWx5emVyLnRvbGVyYXRpb25zIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnRvbGVyYXRpb25zIl19LHsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJkaXNwbGF5TmFtZSI6Ikhvc3QgQWxpYXNlcyIsInBhdGgiOiJzY2FubmVyLmFuYWx5emVyLmhvc3RBbGlhc2VzIn0seyJkZXNjcmlwdGlvbiI6IldoZW4gZW5hYmxlZCwgdGhlIG51bWJlciBvZiBjb21wb25lbnQgcmVwbGljYXMgaXMgbWFuYWdlZCBkeW5hbWljYWxseSBiYXNlZCBvbiB0aGUgbG9hZCwgd2l0aGluIHRoZSBsaW1pdHNcbnNwZWNpZmllZCBiZWxvdy4iLCJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIiwicGF0aCI6InNjYW5uZXIuYW5hbHl6ZXIuc2NhbGluZy5hdXRvU2NhbGluZyJ9LHsiZGVzY3JpcHRpb24iOiJXaGVuIGF1dG9zY2FsaW5nIGlzIGRpc2FibGVkLCB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIHdpbGwgYWx3YXlzIGJlIGNvbmZpZ3VyZWQgdG8gbWF0Y2ggdGhpcyB2YWx1ZS4iLCJkaXNwbGF5TmFtZSI6IkRlZmF1bHQgUmVwbGljYXMiLCJwYXRoIjoic2Nhbm5lci5hbmFseXplci5zY2FsaW5nLnJlcGxpY2FzIn0seyJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIE1pbmltdW0gUmVwbGljYXMiLCJwYXRoIjoic2Nhbm5lci5hbmFseXplci5zY2FsaW5nLm1pblJlcGxpY2FzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmZpZWxkRGVwZW5kZW5jeTpzY2FubmVyLmFuYWx5emVyLnNjYWxpbmcuYXV0b1NjYWxpbmc6RW5hYmxlZCJdfSx7ImRpc3BsYXlOYW1lIjoiQXV0b3NjYWxpbmcgTWF4aW11bSBSZXBsaWNhcyIsInBhdGgiOiJzY2FubmVyLmFuYWx5emVyLnNjYWxpbmcubWF4UmVwbGljYXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6ZmllbGREZXBlbmRlbmN5OnNjYW5uZXIuYW5hbHl6ZXIuc2NhbGluZy5hdXRvU2NhbGluZzpFbmFibGVkIl19LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6InNjYW5uZXIuZGIucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNlbGVjdG9yIiwicGF0aCI6InNjYW5uZXIuZGIubm9kZVNlbGVjdG9yIn0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsImRpc3BsYXlOYW1lIjoiVG9sZXJhdGlvbnMiLCJwYXRoIjoic2Nhbm5lci5kYi50b2xlcmF0aW9ucyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0b2xlcmF0aW9ucyJdfSx7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiZGlzcGxheU5hbWUiOiJIb3N0IEFsaWFzZXMiLCJwYXRoIjoic2Nhbm5lci5kYi5ob3N0QWxpYXNlcyJ9LHsiZGVzY3JpcHRpb24iOiJFeHBvc2UgdGhlIG1vbml0b3JpbmcgZW5kcG9pbnQuIEEgbmV3IHNlcnZpY2UsIFwibW9uaXRvcmluZ1wiLFxud2l0aCBwb3J0IDkwOTAsIHdpbGwgYmUgY3JlYXRlZCBhcyB3ZWxsIGFzIGEgbmV0d29yayBwb2xpY3kgYWxsb3dpbmdcbmluYm91bmQgY29ubmVjdGlvbnMgdG8gdGhlIHBvcnQuIiwiZGlzcGxheU5hbWUiOiJFeHBvc2UgRW5kcG9pbnQiLCJwYXRoIjoic2Nhbm5lci5tb25pdG9yaW5nLmV4cG9zZUVuZHBvaW50In0seyJkZXNjcmlwdGlvbiI6IkNhbiBiZSBzcGVjaWZpZWQgYXMgXCJFbmFibGVkXCIgb3IgXCJEaXNhYmxlZFwiLlxuSWYgdGhpcyBmaWVsZCBpcyBub3Qgc3BlY2lmaWVkLCB0aGUgZm9sbG93aW5nIGRlZmF1bHRpbmcgdGFrZXMgcGxhY2U6XG4qIGZvciBuZXcgaW5zdGFsbGF0aW9ucywgU2Nhbm5lciBWNCBpcyBlbmFibGVkIHN0YXJ0aW5nIHdpdGggQUNTIDQuODtcbiogZm9yIHVwZ3JhZGVzIHRvIDQuOCBmcm9tIHByZXZpb3VzIHJlbGVhc2VzLCBTY2FubmVyIFY0IGlzIGRpc2FibGVkLiIsImRpc3BsYXlOYW1lIjoiU2Nhbm5lciBWNCBjb21wb25lbnQiLCJwYXRoIjoic2Nhbm5lclY0LnNjYW5uZXJDb21wb25lbnQifSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcGVydGFpbmluZyB0byB0aGUgaW5kZXhlciBkZXBsb3ltZW50LiIsImRpc3BsYXlOYW1lIjoiSW5kZXhlciIsInBhdGgiOiJzY2FubmVyVjQuaW5kZXhlciIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0LnNjYW5uZXJDb21wb25lbnQ6RW5hYmxlZCJdfSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcGVydGFpbmluZyB0byB0aGUgbWF0Y2hlciBkZXBsb3ltZW50LiIsImRpc3BsYXlOYW1lIjoiTWF0Y2hlciIsInBhdGgiOiJzY2FubmVyVjQubWF0Y2hlciIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0LnNjYW5uZXJDb21wb25lbnQ6RW5hYmxlZCJdfSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcGVydGFpbmluZyB0byB0aGUgREIgZGVwbG95bWVudC4iLCJkaXNwbGF5TmFtZSI6IkRCIiwicGF0aCI6InNjYW5uZXJWNC5kYiIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0LnNjYW5uZXJDb21wb25lbnQ6RW5hYmxlZCJdfSx7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyBtb25pdG9yaW5nIGVuZHBvaW50IGZvciBTY2FubmVyIFY0LiBUaGUgbW9uaXRvcmluZyBlbmRwb2ludFxuYWxsb3dzIG90aGVyIHNlcnZpY2VzIHRvIGNvbGxlY3QgbWV0cmljcyBmcm9tIFNjYW5uZXIgVjQsIHByb3ZpZGVkIGluXG5Qcm9tZXRoZXVzIGNvbXBhdGlibGUgZm9ybWF0LiIsImRpc3BsYXlOYW1lIjoiTW9uaXRvcmluZyIsInBhdGgiOiJzY2FubmVyVjQubW9uaXRvcmluZyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0LnNjYW5uZXJDb21wb25lbnQ6RW5hYmxlZCJdfSx7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyBob3cgU2Nhbm5lciBWNCBzaG91bGQgc3RvcmUgaXRzIHBlcnNpc3RlbnQgZGF0YS5cbllvdSBjYW4gdXNlIGEgcGVyc2lzdGVudCB2b2x1bWUgY2xhaW0gKHRoZSByZWNvbW1lbmRlZCBkZWZhdWx0KSwgYSBob3N0IHBhdGgsXG5vciBhbiBlbXB0eURpciB2b2x1bWUgaWYgU2Nhbm5lciBWNCBpcyBydW5uaW5nIG9uIGEgc2VjdXJlZCBjbHVzdGVyIHdpdGhvdXQgZGVmYXVsdCBTdG9yYWdlQ2xhc3MuIiwiZGlzcGxheU5hbWUiOiJQZXJzaXN0ZW5jZSIsInBhdGgiOiJzY2FubmVyVjQuZGIucGVyc2lzdGVuY2UifSx7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJkaXNwbGF5TmFtZSI6IlJlc291cmNlcyIsInBhdGgiOiJzY2FubmVyVjQuZGIucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNlbGVjdG9yIiwicGF0aCI6InNjYW5uZXJWNC5kYi5ub2RlU2VsZWN0b3IifSx7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiZGlzcGxheU5hbWUiOiJUb2xlcmF0aW9ucyIsInBhdGgiOiJzY2FubmVyVjQuZGIudG9sZXJhdGlvbnMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6dG9sZXJhdGlvbnMiXX0seyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsImRpc3BsYXlOYW1lIjoiSG9zdCBBbGlhc2VzIiwicGF0aCI6InNjYW5uZXJWNC5kYi5ob3N0QWxpYXNlcyJ9LHsiZGVzY3JpcHRpb24iOiJVc2VzIGEgS3ViZXJuZXRlcyBwZXJzaXN0ZW50IHZvbHVtZSBjbGFpbSAoUFZDKSB0byBtYW5hZ2UgdGhlIHN0b3JhZ2UgbG9jYXRpb24gb2YgcGVyc2lzdGVudCBkYXRhLlxuUmVjb21tZW5kZWQgZm9yIG1vc3QgdXNlcnMuIiwiZGlzcGxheU5hbWUiOiJQZXJzaXN0ZW50IHZvbHVtZSBjbGFpbSIsInBhdGgiOiJzY2FubmVyVjQuZGIucGVyc2lzdGVuY2UucGVyc2lzdGVudFZvbHVtZUNsYWltIn0seyJkZXNjcmlwdGlvbiI6IlN0b3JlcyBwZXJzaXN0ZW50IGRhdGEgb24gYSBkaXJlY3Rvcnkgb24gdGhlIGhvc3QuIFRoaXMgaXMgbm90IHJlY29tbWVuZGVkLCBhbmQgc2hvdWxkIG9ubHlcbmJlIHVzZWQgdG9nZXRoZXIgd2l0aCBhIG5vZGUgc2VsZWN0b3IgKG9ubHkgYXZhaWxhYmxlIGluIFlBTUwgdmlldykuIiwiZGlzcGxheU5hbWUiOiJIb3N0IHBhdGgiLCJwYXRoIjoic2Nhbm5lclY0LmRiLnBlcnNpc3RlbmNlLmhvc3RQYXRoIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBwYXRoIG9uIHRoZSBob3N0IHJ1bm5pbmcgQ2VudHJhbC4iLCJkaXNwbGF5TmFtZSI6IlBhdGgiLCJwYXRoIjoic2Nhbm5lclY0LmRiLnBlcnNpc3RlbmNlLmhvc3RQYXRoLnBhdGgifSx7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIFBWQyB0byBtYW5hZ2UgcGVyc2lzdGVudCBkYXRhLiBJZiBubyBQVkMgd2l0aCB0aGUgZ2l2ZW4gbmFtZSBleGlzdHMsIGl0IHdpbGwgYmVcbmNyZWF0ZWQuIERlZmF1bHRzIHRvIFwic2Nhbm5lci12NC1kYlwiIGlmIG5vdCBzZXQuIiwiZGlzcGxheU5hbWUiOiJDbGFpbSBOYW1lIiwicGF0aCI6InNjYW5uZXJWNC5kYi5wZXJzaXN0ZW5jZS5wZXJzaXN0ZW50Vm9sdW1lQ2xhaW0uY2xhaW1OYW1lIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBzaXplIG9mIHRoZSBwZXJzaXN0ZW50IHZvbHVtZSB3aGVuIGNyZWF0ZWQgdGhyb3VnaCB0aGUgY2xhaW0uIElmIGEgY2xhaW0gd2FzIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCxcbnRoaXMgY2FuIGJlIHVzZWQgYWZ0ZXIgdGhlIGluaXRpYWwgZGVwbG95bWVudCB0byByZXNpemUgKGdyb3cpIHRoZSB2b2x1bWUgKG9ubHkgc3VwcG9ydGVkIGJ5IHNvbWVcbnN0b3JhZ2UgY2xhc3MgY29udHJvbGxlcnMpLiIsImRpc3BsYXlOYW1lIjoiU2l6ZSIsInBhdGgiOiJzY2FubmVyVjQuZGIucGVyc2lzdGVuY2UucGVyc2lzdGVudFZvbHVtZUNsYWltLnNpemUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6dGV4dCJdfSx7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHN0b3JhZ2UgY2xhc3MgdG8gdXNlIGZvciB0aGUgUFZDLiBJZiB5b3VyIGNsdXN0ZXIgaXMgbm90IGNvbmZpZ3VyZWQgd2l0aCBhIGRlZmF1bHQgc3RvcmFnZVxuY2xhc3MsIHlvdSBtdXN0IHNlbGVjdCBhIHZhbHVlIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJTdG9yYWdlIENsYXNzIiwicGF0aCI6InNjYW5uZXJWNC5kYi5wZXJzaXN0ZW5jZS5wZXJzaXN0ZW50Vm9sdW1lQ2xhaW0uc3RvcmFnZUNsYXNzTmFtZSIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmlvLmt1YmVybmV0ZXM6U3RvcmFnZUNsYXNzIl19LHsiZGVzY3JpcHRpb24iOiJDb250cm9scyB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIGFuZCBhdXRvc2NhbGluZyBmb3IgdGhpcyBjb21wb25lbnQuIiwiZGlzcGxheU5hbWUiOiJTY2FsaW5nIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyLnNjYWxpbmcifSx7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJkaXNwbGF5TmFtZSI6IlJlc291cmNlcyIsInBhdGgiOiJzY2FubmVyVjQuaW5kZXhlci5yZXNvdXJjZXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6cmVzb3VyY2VSZXF1aXJlbWVudHMiXX0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJkaXNwbGF5TmFtZSI6Ik5vZGUgU2VsZWN0b3IiLCJwYXRoIjoic2Nhbm5lclY0LmluZGV4ZXIubm9kZVNlbGVjdG9yIn0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsImRpc3BsYXlOYW1lIjoiVG9sZXJhdGlvbnMiLCJwYXRoIjoic2Nhbm5lclY0LmluZGV4ZXIudG9sZXJhdGlvbnMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6dG9sZXJhdGlvbnMiXX0seyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsImRpc3BsYXlOYW1lIjoiSG9zdCBBbGlhc2VzIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyLmhvc3RBbGlhc2VzIn0seyJkZXNjcmlwdGlvbiI6IldoZW4gZW5hYmxlZCwgdGhlIG51bWJlciBvZiBjb21wb25lbnQgcmVwbGljYXMgaXMgbWFuYWdlZCBkeW5hbWljYWxseSBiYXNlZCBvbiB0aGUgbG9hZCwgd2l0aGluIHRoZSBsaW1pdHNcbnNwZWNpZmllZCBiZWxvdy4iLCJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyLnNjYWxpbmcuYXV0b1NjYWxpbmcifSx7ImRlc2NyaXB0aW9uIjoiV2hlbiBhdXRvc2NhbGluZyBpcyBkaXNhYmxlZCwgdGhlIG51bWJlciBvZiByZXBsaWNhcyB3aWxsIGFsd2F5cyBiZSBjb25maWd1cmVkIHRvIG1hdGNoIHRoaXMgdmFsdWUuIiwiZGlzcGxheU5hbWUiOiJEZWZhdWx0IFJlcGxpY2FzIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyLnNjYWxpbmcucmVwbGljYXMifSx7ImRpc3BsYXlOYW1lIjoiQXV0b3NjYWxpbmcgTWluaW11bSBSZXBsaWNhcyIsInBhdGgiOiJzY2FubmVyVjQuaW5kZXhlci5zY2FsaW5nLm1pblJlcGxpY2FzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmZpZWxkRGVwZW5kZW5jeTpzY2FubmVyVjQuaW5kZXhlci5zY2FsaW5nLmF1dG9TY2FsaW5nOkVuYWJsZWQiXX0seyJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIE1heGltdW0gUmVwbGljYXMiLCJwYXRoIjoic2Nhbm5lclY0LmluZGV4ZXIuc2NhbGluZy5tYXhSZXBsaWNhcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0LmluZGV4ZXIuc2NhbGluZy5hdXRvU2NhbGluZzpFbmFibGVkIl19LHsiZGVzY3JpcHRpb24iOiJDb250cm9scyB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIGFuZCBhdXRvc2NhbGluZyBmb3IgdGhpcyBjb21wb25lbnQuIiwiZGlzcGxheU5hbWUiOiJTY2FsaW5nIiwicGF0aCI6InNjYW5uZXJWNC5tYXRjaGVyLnNjYWxpbmcifSx7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJkaXNwbGF5TmFtZSI6IlJlc291cmNlcyIsInBhdGgiOiJzY2FubmVyVjQubWF0Y2hlci5yZXNvdXJjZXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6cmVzb3VyY2VSZXF1aXJlbWVudHMiXX0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJkaXNwbGF5TmFtZSI6Ik5vZGUgU2VsZWN0b3IiLCJwYXRoIjoic2Nhbm5lclY0Lm1hdGNoZXIubm9kZVNlbGVjdG9yIn0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsImRpc3BsYXlOYW1lIjoiVG9sZXJhdGlvbnMiLCJwYXRoIjoic2Nhbm5lclY0Lm1hdGNoZXIudG9sZXJhdGlvbnMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6dG9sZXJhdGlvbnMiXX0seyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsImRpc3BsYXlOYW1lIjoiSG9zdCBBbGlhc2VzIiwicGF0aCI6InNjYW5uZXJWNC5tYXRjaGVyLmhvc3RBbGlhc2VzIn0seyJkZXNjcmlwdGlvbiI6IldoZW4gZW5hYmxlZCwgdGhlIG51bWJlciBvZiBjb21wb25lbnQgcmVwbGljYXMgaXMgbWFuYWdlZCBkeW5hbWljYWxseSBiYXNlZCBvbiB0aGUgbG9hZCwgd2l0aGluIHRoZSBsaW1pdHNcbnNwZWNpZmllZCBiZWxvdy4iLCJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIiwicGF0aCI6InNjYW5uZXJWNC5tYXRjaGVyLnNjYWxpbmcuYXV0b1NjYWxpbmcifSx7ImRlc2NyaXB0aW9uIjoiV2hlbiBhdXRvc2NhbGluZyBpcyBkaXNhYmxlZCwgdGhlIG51bWJlciBvZiByZXBsaWNhcyB3aWxsIGFsd2F5cyBiZSBjb25maWd1cmVkIHRvIG1hdGNoIHRoaXMgdmFsdWUuIiwiZGlzcGxheU5hbWUiOiJEZWZhdWx0IFJlcGxpY2FzIiwicGF0aCI6InNjYW5uZXJWNC5tYXRjaGVyLnNjYWxpbmcucmVwbGljYXMifSx7ImRpc3BsYXlOYW1lIjoiQXV0b3NjYWxpbmcgTWluaW11bSBSZXBsaWNhcyIsInBhdGgiOiJzY2FubmVyVjQubWF0Y2hlci5zY2FsaW5nLm1pblJlcGxpY2FzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmZpZWxkRGVwZW5kZW5jeTpzY2FubmVyVjQubWF0Y2hlci5zY2FsaW5nLmF1dG9TY2FsaW5nOkVuYWJsZWQiXX0seyJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIE1heGltdW0gUmVwbGljYXMiLCJwYXRoIjoic2Nhbm5lclY0Lm1hdGNoZXIuc2NhbGluZy5tYXhSZXBsaWNhcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0Lm1hdGNoZXIuc2NhbGluZy5hdXRvU2NhbGluZzpFbmFibGVkIl19LHsiZGVzY3JpcHRpb24iOiJFeHBvc2UgdGhlIG1vbml0b3JpbmcgZW5kcG9pbnQuIEEgbmV3IHNlcnZpY2UsIFwibW9uaXRvcmluZ1wiLFxud2l0aCBwb3J0IDkwOTAsIHdpbGwgYmUgY3JlYXRlZCBhcyB3ZWxsIGFzIGEgbmV0d29yayBwb2xpY3kgYWxsb3dpbmdcbmluYm91bmQgY29ubmVjdGlvbnMgdG8gdGhlIHBvcnQuIiwiZGlzcGxheU5hbWUiOiJFeHBvc2UgRW5kcG9pbnQiLCJwYXRoIjoic2Nhbm5lclY0Lm1vbml0b3JpbmcuZXhwb3NlRW5kcG9pbnQifSx7ImRpc3BsYXlOYW1lIjoiQWRkaXRpb25hbCBDQXMiLCJwYXRoIjoidGxzLmFkZGl0aW9uYWxDQXMifV0sInN0YXR1c0Rlc2NyaXB0b3JzIjpbeyJkZXNjcmlwdGlvbiI6IkluZm8gc3RvcmVzIGluZm9ybWF0aW9uIG9uIGhvdyB0byBvYnRhaW4gdGhlIGFkbWluIHBhc3N3b3JkLiIsImRpc3BsYXlOYW1lIjoiQWRtaW4gQ3JlZGVudGlhbHMgSW5mbyIsInBhdGgiOiJjZW50cmFsLmFkbWluUGFzc3dvcmQuaW5mbyJ9LHsiZGVzY3JpcHRpb24iOiJUaGUgZGVwbG95ZWQgdmVyc2lvbiBvZiB0aGUgcHJvZHVjdC4iLCJkaXNwbGF5TmFtZSI6IlByb2R1Y3QgVmVyc2lvbiIsInBhdGgiOiJwcm9kdWN0VmVyc2lvbiJ9LHsiZGlzcGxheU5hbWUiOiJDZW50cmFsIiwicGF0aCI6ImNlbnRyYWwifSx7ImRlc2NyaXB0aW9uIjoiQWRtaW5QYXNzd29yZFNlY3JldFJlZmVyZW5jZSBjb250YWlucyByZWZlcmVuY2UgZm9yIHRoZSBhZG1pbiBwYXNzd29yZCIsImRpc3BsYXlOYW1lIjoiQWRtaW4gUGFzc3dvcmQgU2VjcmV0IFJlZmVyZW5jZSIsInBhdGgiOiJjZW50cmFsLmFkbWluUGFzc3dvcmQuYWRtaW5QYXNzd29yZFNlY3JldFJlZmVyZW5jZSIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmlvLmt1YmVybmV0ZXM6U2VjcmV0Il19XSwidmVyc2lvbiI6InYxYWxwaGExIn0seyJkZXNjcmlwdGlvbiI6IlNlY3VyZWRDbHVzdGVyIGlzIHRoZSBjb25maWd1cmF0aW9uIHRlbXBsYXRlIGZvciB0aGUgc2VjdXJlZCBjbHVzdGVyIHNlcnZpY2VzLiBUaGVzZSBpbmNsdWRlIFNlbnNvciwgd2hpY2ggaXNcbnJlc3BvbnNpYmxlIGZvciB0aGUgY29ubmVjdGlvbiB0byBDZW50cmFsLCBhbmQgQ29sbGVjdG9yLCB3aGljaCBwZXJmb3JtcyBob3N0LWxldmVsIGNvbGxlY3Rpb24gb2YgcHJvY2VzcyBhbmRcbm5ldHdvcmsgZXZlbnRzLlx1MDAzY3BcdTAwM2VcbioqSW1wb3J0YW50OioqIFBsZWFzZSBzZWUgdGhlIF9JbnN0YWxsYXRpb24gUHJlcmVxdWlzaXRlc18gb24gdGhlIG1haW4gUkhBQ1Mgb3BlcmF0b3IgcGFnZSBiZWZvcmUgZGVwbG95aW5nLCBvclxuY29uc3VsdCB0aGUgUkhBQ1MgZG9jdW1lbnRhdGlvbiBvbiBjcmVhdGluZyBjbHVzdGVyIGluaXQgYnVuZGxlcy4iLCJkaXNwbGF5TmFtZSI6IlNlY3VyZWQgQ2x1c3RlciIsImtpbmQiOiJTZWN1cmVkQ2x1c3RlciIsIm5hbWUiOiJzZWN1cmVkY2x1c3RlcnMucGxhdGZvcm0uc3RhY2tyb3guaW8iLCJyZXNvdXJjZXMiOlt7ImtpbmQiOiJEYWVtb25TZXQiLCJuYW1lIjoiIiwidmVyc2lvbiI6InYxIn0seyJraW5kIjoiRGVwbG95bWVudCIsIm5hbWUiOiIiLCJ2ZXJzaW9uIjoidjEifV0sInNwZWNEZXNjcmlwdG9ycyI6W3siZGVzY3JpcHRpb24iOiJUaGUgdW5pcXVlIG5hbWUgb2YgdGhpcyBjbHVzdGVyLCBhcyBpdCB3aWxsIGJlIHNob3duIGluIHRoZSBSZWQgSGF0IEFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHkgVUkuXG5Ob3RlOiBPbmNlIGEgbmFtZSBpcyBzZXQgaGVyZSwgeW91IHdpbGwgbm90IGJlIGFibGUgdG8gY2hhbmdlIGl0IGFnYWluLiBZb3Ugd2lsbCBuZWVkIHRvIGRlbGV0ZVxuYW5kIHJlLWNyZWF0ZSB0aGlzIG9iamVjdCBpbiBvcmRlciB0byByZWdpc3RlciBhIGNsdXN0ZXIgd2l0aCBhIG5ldyBuYW1lLiIsImRpc3BsYXlOYW1lIjoiQ2x1c3RlciBOYW1lIiwicGF0aCI6ImNsdXN0ZXJOYW1lIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBlbmRwb2ludCBvZiB0aGUgUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5IENlbnRyYWwgaW5zdGFuY2UgdG8gY29ubmVjdCB0byxcbmluY2x1ZGluZyB0aGUgcG9ydCBudW1iZXIuIElmIG5vIHBvcnQgaXMgc3BlY2lmaWVkIGFuZCB0aGUgZW5kcG9pbnQgY29udGFpbnMgYW4gaHR0cHM6Ly9cbnByb3RvY29sIHNwZWNpZmljYXRpb24sIHRoZW4gdGhlIHBvcnQgNDQzIGlzIGltcGxpY2l0bHkgYXNzdW1lZC5cbklmIHVzaW5nIGEgbm9uLWdSUEMgY2FwYWJsZSBsb2FkIGJhbGFuY2VyLCB1c2UgdGhlIFdlYlNvY2tldCBwcm90b2NvbCBieSBwcmVmaXhpbmcgdGhlIGVuZHBvaW50XG5hZGRyZXNzIHdpdGggd3NzOi8vLlxuTm90ZTogd2hlbiBsZWF2aW5nIHRoaXMgYmxhbmssIFNlbnNvciB3aWxsIGF0dGVtcHQgdG8gY29ubmVjdCB0byBhIENlbnRyYWwgaW5zdGFuY2UgcnVubmluZyBpbiB0aGUgc2FtZVxubmFtZXNwYWNlLiIsImRpc3BsYXlOYW1lIjoiQ2VudHJhbCBFbmRwb2ludCIsInBhdGgiOiJjZW50cmFsRW5kcG9pbnQifSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBTZW5zb3IgY29tcG9uZW50LiIsImRpc3BsYXlOYW1lIjoiU2Vuc29yIFNldHRpbmdzIiwicGF0aCI6InNlbnNvciJ9LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIEFkbWlzc2lvbiBDb250cm9sIGNvbXBvbmVudCwgd2hpY2ggaXMgbmVjZXNzYXJ5IGZvciBwcmV2ZW50aXZlIHBvbGljeSBlbmZvcmNlbWVudCxcbmFuZCBmb3IgS3ViZXJuZXRlcyBldmVudCBtb25pdG9yaW5nLiIsImRpc3BsYXlOYW1lIjoiQWRtaXNzaW9uIENvbnRyb2wgU2V0dGluZ3MiLCJwYXRoIjoiYWRtaXNzaW9uQ29udHJvbCJ9LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIGNvbXBvbmVudHMgcnVubmluZyBvbiBlYWNoIG5vZGUgaW4gdGhlIGNsdXN0ZXIgKENvbGxlY3RvciBhbmQgQ29tcGxpYW5jZSkuIiwiZGlzcGxheU5hbWUiOiJQZXIgTm9kZSBTZXR0aW5ncyIsInBhdGgiOiJwZXJOb2RlIn0seyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHJlbGF0aW5nIHRvIHRoZSBpbmdlc3Rpb24gb2YgS3ViZXJuZXRlcyBhdWRpdCBsb2dzLiIsImRpc3BsYXlOYW1lIjoiS3ViZXJuZXRlcyBBdWRpdCBMb2dzIEluZ2VzdGlvbiBTZXR0aW5ncyIsInBhdGgiOiJhdWRpdExvZ3MifSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBTY2FubmVyIGNvbXBvbmVudCwgd2hpY2ggaXMgcmVzcG9uc2libGUgZm9yIHZ1bG5lcmFiaWxpdHkgc2Nhbm5pbmcgb2YgY29udGFpbmVyXG5pbWFnZXMgc3RvcmVkIGluIGEgY2x1c3Rlci1sb2NhbCBpbWFnZSByZXBvc2l0b3J5LiIsImRpc3BsYXlOYW1lIjoiU2Nhbm5lciBDb21wb25lbnQgU2V0dGluZ3MiLCJwYXRoIjoic2Nhbm5lciJ9LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIFNjYW5uZXIgVjQgY29tcG9uZW50cywgd2hpY2ggY2FuIHJ1biBpbiBhZGRpdGlvbiB0byB0aGUgcHJldmlvdXNseSBleGlzdGluZyBTY2FubmVyIGNvbXBvbmVudHMiLCJkaXNwbGF5TmFtZSI6IlNjYW5uZXIgVjQgQ29tcG9uZW50IFNldHRpbmdzIiwicGF0aCI6InNjYW5uZXJWNCJ9LHsiZGVzY3JpcHRpb24iOiJBbGxvd3MgeW91IHRvIHNwZWNpZnkgYWRkaXRpb25hbCB0cnVzdGVkIFJvb3QgQ0FzLiIsImRpc3BsYXlOYW1lIjoiVExTIiwicGF0aCI6InRscyJ9LHsiZGVzY3JpcHRpb24iOiJBZGRpdGlvbmFsIGltYWdlIHB1bGwgc2VjcmV0cyB0byBiZSB0YWtlbiBpbnRvIGFjY291bnQgZm9yIHB1bGxpbmcgaW1hZ2VzLiIsImRpc3BsYXlOYW1lIjoiSW1hZ2UgUHVsbCBTZWNyZXRzIiwicGF0aCI6ImltYWdlUHVsbFNlY3JldHMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6YWR2YW5jZWQiXX0seyJkZXNjcmlwdGlvbiI6IkN1c3RvbWl6YXRpb25zIHRvIGFwcGx5IG9uIGFsbCBDZW50cmFsIFNlcnZpY2VzIGNvbXBvbmVudHMuIiwiZGlzcGxheU5hbWUiOiJDdXN0b21pemF0aW9ucyIsInBhdGgiOiJjdXN0b21pemUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6YWR2YW5jZWQiXX0seyJkZXNjcmlwdGlvbiI6Ik92ZXJsYXlzIiwiZGlzcGxheU5hbWUiOiJPdmVybGF5cyIsInBhdGgiOiJvdmVybGF5cyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpoaWRkZW4iXX0seyJkZXNjcmlwdGlvbiI6Ik1vbml0b3JpbmcgY29uZmlndXJhdGlvbi4iLCJkaXNwbGF5TmFtZSI6Ik1vbml0b3JpbmciLCJwYXRoIjoibW9uaXRvcmluZyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTphZHZhbmNlZCJdfSx7ImRlc2NyaXB0aW9uIjoiU2V0IHRoaXMgcGFyYW1ldGVyIHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IHJlZ2lzdHJ5IGluIGltYWdlcy4gRm9yIGV4YW1wbGUsIG5naW54OmxhdGVzdCAtXHUwMDNlIFx1MDAzY3JlZ2lzdHJ5IG92ZXJyaWRlXHUwMDNlL2xpYnJhcnkvbmdpbng6bGF0ZXN0IiwiZGlzcGxheU5hbWUiOiJDdXN0b20gRGVmYXVsdCBJbWFnZSBSZWdpc3RyeSIsInBhdGgiOiJyZWdpc3RyeU92ZXJyaWRlIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmFkdmFuY2VkIl19LHsiZGVzY3JpcHRpb24iOiJOZXR3b3JrIGNvbmZpZ3VyYXRpb24uIiwiZGlzcGxheU5hbWUiOiJOZXR3b3JrIiwicGF0aCI6Im5ldHdvcmsiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6YWR2YW5jZWQiXX0seyJkZXNjcmlwdGlvbiI6IkRlcHJlY2F0ZWQgZmllbGQuIFRoaXMgZmllbGQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHJlbGVhc2UuXG5NaXNjZWxsYW5lb3VzIHNldHRpbmdzLiIsImRpc3BsYXlOYW1lIjoiTWlzY2VsbGFuZW91cyIsInBhdGgiOiJtaXNjIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiU2V0IHRoaXMgdG8gJ3RydWUnIHRvIGVuYWJsZSBwcmV2ZW50aXZlIHBvbGljeSBlbmZvcmNlbWVudCBmb3Igb2JqZWN0IGNyZWF0aW9ucy4iLCJkaXNwbGF5TmFtZSI6Ikxpc3RlbiBPbiBDcmVhdGVzIiwicGF0aCI6ImFkbWlzc2lvbkNvbnRyb2wubGlzdGVuT25DcmVhdGVzIn0seyJkZXNjcmlwdGlvbiI6IlNldCB0aGlzIHRvICd0cnVlJyB0byBlbmFibGUgcHJldmVudGl2ZSBwb2xpY3kgZW5mb3JjZW1lbnQgZm9yIG9iamVjdCB1cGRhdGVzLlxuXG5Ob3RlOiB0aGlzIHdpbGwgbm90IGhhdmUgYW55IGVmZmVjdCB1bmxlc3MgJ0xpc3RlbiBPbiBDcmVhdGVzJyBpcyBzZXQgdG8gJ3RydWUnIGFzIHdlbGwuIiwiZGlzcGxheU5hbWUiOiJMaXN0ZW4gT24gVXBkYXRlcyIsInBhdGgiOiJhZG1pc3Npb25Db250cm9sLmxpc3Rlbk9uVXBkYXRlcyJ9LHsiZGVzY3JpcHRpb24iOiJTZXQgdGhpcyB0byAndHJ1ZScgdG8gZW5hYmxlIG1vbml0b3JpbmcgYW5kIGVuZm9yY2VtZW50IGZvciBLdWJlcm5ldGVzIGV2ZW50cyAocG9ydC1mb3J3YXJkIGFuZCBleGVjKS4iLCJkaXNwbGF5TmFtZSI6Ikxpc3RlbiBPbiBFdmVudHMiLCJwYXRoIjoiYWRtaXNzaW9uQ29udHJvbC5saXN0ZW5PbkV2ZW50cyJ9LHsiZGVzY3JpcHRpb24iOiJTaG91bGQgaW5saW5lIHNjYW5uaW5nIGJlIHBlcmZvcm1lZCBvbiBwcmV2aW91c2x5IHVuc2Nhbm5lZCBpbWFnZXMgZHVyaW5nIGEgZGVwbG95bWVudHMgYWRtaXNzaW9uIHJldmlldy4iLCJkaXNwbGF5TmFtZSI6IkNvbnRhY3QgSW1hZ2UgU2Nhbm5lcnMiLCJwYXRoIjoiYWRtaXNzaW9uQ29udHJvbC5jb250YWN0SW1hZ2VTY2FubmVycyJ9LHsiZGVzY3JpcHRpb24iOiJNYXhpbXVtIHRpbWVvdXQgcGVyaW9kIGZvciBhZG1pc3Npb24gcmV2aWV3LCB1cG9uIHdoaWNoIGFkbWlzc2lvbiByZXZpZXcgd2lsbCBmYWlsIG9wZW4uXG5Vc2UgaXQgdG8gc2V0IHJlcXVlc3QgdGltZW91dHMgd2hlbiB5b3UgZW5hYmxlIGlubGluZSBpbWFnZSBzY2FubmluZy5cblRoZSBkZWZhdWx0IGt1YmVjdGwgdGltZW91dCBpcyAzMCBzZWNvbmRzOyB0YWtpbmcgcGFkZGluZyBpbnRvIGFjY291bnQsIHRoaXMgc2hvdWxkIG5vdCBleGNlZWQgMjUgc2Vjb25kcy5cbk9uIE9wZW5TaGlmdCB3ZWJob29rIHRpbWVvdXRzIGNhbm5vdCBleGNlZWQgMTMgc2Vjb25kcywgaGVuY2Ugd2l0aCBwYWRkaW5nIHRoaXMgdmFsdWUgc2hhbGwgbm90IGV4Y2VlZCAxMCBzZWNvbmRzLiIsImRpc3BsYXlOYW1lIjoiVGltZW91dCBTZWNvbmRzIiwicGF0aCI6ImFkbWlzc2lvbkNvbnRyb2wudGltZW91dFNlY29uZHMifSx7ImRlc2NyaXB0aW9uIjoiRW5hYmxlcyB0ZWFtcyB0byBieXBhc3MgYWRtaXNzaW9uIGNvbnRyb2wgaW4gYSBtb25pdG9yZWQgbWFubmVyIGluIHRoZSBldmVudCBvZiBhbiBlbWVyZ2VuY3kuIiwiZGlzcGxheU5hbWUiOiJCeXBhc3MiLCJwYXRoIjoiYWRtaXNzaW9uQ29udHJvbC5ieXBhc3MifSx7ImRlc2NyaXB0aW9uIjoiVGhlIG51bWJlciBvZiByZXBsaWNhcyBvZiB0aGUgYWRtaXNzaW9uIGNvbnRyb2wgcG9kLiIsImRpc3BsYXlOYW1lIjoiUmVwbGljYXMiLCJwYXRoIjoiYWRtaXNzaW9uQ29udHJvbC5yZXBsaWNhcyJ9LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6ImFkbWlzc2lvbkNvbnRyb2wucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNlbGVjdG9yIiwicGF0aCI6ImFkbWlzc2lvbkNvbnRyb2wubm9kZVNlbGVjdG9yIn0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsImRpc3BsYXlOYW1lIjoiVG9sZXJhdGlvbnMiLCJwYXRoIjoiYWRtaXNzaW9uQ29udHJvbC50b2xlcmF0aW9ucyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0b2xlcmF0aW9ucyJdfSx7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiZGlzcGxheU5hbWUiOiJIb3N0IEFsaWFzZXMiLCJwYXRoIjoiYWRtaXNzaW9uQ29udHJvbC5ob3N0QWxpYXNlcyJ9LHsiZGVzY3JpcHRpb24iOiJXaGV0aGVyIGNvbGxlY3Rpb24gb2YgS3ViZXJuZXRlcyBhdWRpdCBsb2dzIHNob3VsZCBiZSBlbmFibGVkIG9yIGRpc2FibGVkLiBDdXJyZW50bHksIHRoaXMgaXMgb25seVxuc3VwcG9ydGVkIG9uIE9wZW5TaGlmdCA0LCBhbmQgdHJ5aW5nIHRvIGVuYWJsZSBpdCBvbiBub24tT3BlblNoaWZ0IDQgY2x1c3RlcnMgd2lsbCByZXN1bHQgaW4gYW4gZXJyb3IuXG5Vc2UgdGhlICdBdXRvJyBzZXR0aW5nIHRvIGVuYWJsZSBpdCBvbiBjb21wYXRpYmxlIGVudmlyb25tZW50cywgYW5kIGRpc2FibGUgaXQgZWxzZXdoZXJlLiIsImRpc3BsYXlOYW1lIjoiQ29sbGVjdGlvbiIsInBhdGgiOiJhdWRpdExvZ3MuY29sbGVjdGlvbiJ9LHsiZGVzY3JpcHRpb24iOiJDdXN0b20gbGFiZWxzIHRvIHNldCBvbiBhbGwgbWFuYWdlZCBvYmplY3RzLiIsImRpc3BsYXlOYW1lIjoiTGFiZWxzIiwicGF0aCI6ImN1c3RvbWl6ZS5sYWJlbHMifSx7ImRlc2NyaXB0aW9uIjoiQ3VzdG9tIGFubm90YXRpb25zIHRvIHNldCBvbiBhbGwgbWFuYWdlZCBvYmplY3RzLiIsImRpc3BsYXlOYW1lIjoiQW5ub3RhdGlvbnMiLCJwYXRoIjoiY3VzdG9taXplLmFubm90YXRpb25zIn0seyJkZXNjcmlwdGlvbiI6IkN1c3RvbSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gc2V0IG9uIG1hbmFnZWQgcG9kcycgY29udGFpbmVycy4iLCJkaXNwbGF5TmFtZSI6IkVudmlyb25tZW50IFZhcmlhYmxlcyIsInBhdGgiOiJjdXN0b21pemUuZW52VmFycyJ9LHsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgcmVmZXJlbmNlZCBzZWNyZXQuIiwiZGlzcGxheU5hbWUiOiJOYW1lIiwicGF0aCI6ImltYWdlUHVsbFNlY3JldHNbMF0ubmFtZSIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmlvLmt1YmVybmV0ZXM6U2VjcmV0Il19LHsiZGVzY3JpcHRpb24iOiJEZXByZWNhdGVkIGZpZWxkLiBUaGlzIGZpZWxkIHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLlxuU2V0IHRoaXMgdG8gdHJ1ZSB0byBoYXZlIHRoZSBvcGVyYXRvciBjcmVhdGUgU2VjdXJpdHlDb250ZXh0Q29uc3RyYWludHMgKFNDQ3MpIGZvciB0aGUgb3BlcmFuZHMuIFRoaXNcbmlzbid0IHVzdWFsbHkgbmVlZGVkLCBhbmQgbWF5IGludGVyZmVyZSB3aXRoIG90aGVyIHdvcmtsb2Fkcy4iLCJkaXNwbGF5TmFtZSI6IkNyZWF0ZSBTZWN1cml0eUNvbnRleHRDb25zdHJhaW50cyBmb3IgT3BlcmFuZCIsInBhdGgiOiJtaXNjLmNyZWF0ZVNDQ3MiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6aGlkZGVuIl19LHsiZGlzcGxheU5hbWUiOiJFbmFibGVkIiwicGF0aCI6Im1vbml0b3Jpbmcub3BlbnNoaWZ0LmVuYWJsZWQiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6Ym9vbGVhblN3aXRjaCJdfSx7ImRlc2NyaXB0aW9uIjoiVG8gcHJvdmlkZSBzZWN1cml0eSBhdCB0aGUgbmV0d29yayBsZXZlbCB0aGUgQUNTIE9wZXJhdG9yIGNyZWF0ZXMgTmV0d29ya1BvbGljeSByZXNvdXJjZXMgYnkgZGVmYXVsdC4gSWYgeW91IHdhbnQgdG8gbWFuYWdlIHlvdXIgb3duIE5ldHdvcmtQb2xpY3kgb2JqZWN0cyB0aGVuIHNldCB0aGlzIHRvIFwiRGlzYWJsZWRcIi4iLCJkaXNwbGF5TmFtZSI6Ik5ldHdvcmsgUG9saWNpZXMiLCJwYXRoIjoibmV0d29yay5wb2xpY2llcyJ9LHsiZGVzY3JpcHRpb24iOiJSZXNvdXJjZSBBUEkgdmVyc2lvbi4iLCJkaXNwbGF5TmFtZSI6IkFQSSBWZXJzaW9uIiwicGF0aCI6Im92ZXJsYXlzWzBdLmFwaVZlcnNpb24ifSx7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2Uga2luZC4iLCJkaXNwbGF5TmFtZSI6IktpbmQiLCJwYXRoIjoib3ZlcmxheXNbMF0ua2luZCJ9LHsiZGVzY3JpcHRpb24iOiJOYW1lIG9mIHJlc291cmNlLiIsImRpc3BsYXlOYW1lIjoiTmFtZSIsInBhdGgiOiJvdmVybGF5c1swXS5uYW1lIn0seyJkZXNjcmlwdGlvbiI6Ik9wdGlvbmFsIG1hcmtzIHRoZSBvdmVybGF5IGFzIG9wdGlvbmFsLlxuV2hlbiBPcHRpb25hbCBpcyB0cnVlLCBhbmQgdGhlIHNwZWNpZmllZCByZXNvdXJjZSBkb2VzIG5vdCBleGlzdCBpbiB0aGUgb3V0cHV0IG1hbmlmZXN0cywgdGhlIG92ZXJsYXkgd2lsbCBiZSBza2lwcGVkLCBhbmQgYSB3YXJuaW5nIHdpbGwgYmUgbG9nZ2VkLlxuV2hlbiBPcHRpb25hbCBpcyBmYWxzZSwgYW5kIHRoZSBzcGVjaWZpZWQgcmVzb3VyY2UgZG9lcyBub3QgZXhpc3QgaW4gdGhlIG91dHB1dCBtYW5pZmVzdHMsIGFuIGVycm9yIHdpbGwgYmUgdGhyb3duLiIsImRpc3BsYXlOYW1lIjoiT3B0aW9uYWwiLCJwYXRoIjoib3ZlcmxheXNbMF0ub3B0aW9uYWwifSx7ImRlc2NyaXB0aW9uIjoiTGlzdCBvZiBwYXRjaGVzIHRvIGFwcGx5IHRvIHJlc291cmNlLiIsImRpc3BsYXlOYW1lIjoiUGF0Y2hlcyIsInBhdGgiOiJvdmVybGF5c1swXS5wYXRjaGVzIn0seyJkZXNjcmlwdGlvbiI6IlBhdGggb2YgdGhlIGZvcm0gYS5ba2V5MTp2YWx1ZTFdLmIuWzp2YWx1ZTJdXG5XaGVyZSBba2V5MTp2YWx1ZTFdIGlzIGEgc2VsZWN0b3IgZm9yIGEga2V5LXZhbHVlIHBhaXIgdG8gaWRlbnRpZnkgYSBsaXN0IGVsZW1lbnQgYW5kIFs6dmFsdWVdIGlzIGEgdmFsdWVcbnNlbGVjdG9yIHRvIGlkZW50aWZ5IGEgbGlzdCBlbGVtZW50IGluIGEgbGVhZiBsaXN0LlxuQWxsIHBhdGggaW50ZXJtZWRpYXRlIG5vZGVzIG11c3QgZXhpc3QuIiwiZGlzcGxheU5hbWUiOiJQYXRoIiwicGF0aCI6Im92ZXJsYXlzWzBdLnBhdGNoZXNbMF0ucGF0aCJ9LHsiZGVzY3JpcHRpb24iOiJWYWx1ZSB0byBhZGQsIGRlbGV0ZSBvciByZXBsYWNlLlxuRm9yIGFkZCwgdGhlIHBhdGggc2hvdWxkIGJlIGEgbmV3IGxlYWYuXG5Gb3IgZGVsZXRlLCB2YWx1ZSBzaG91bGQgYmUgdW5zZXQuXG5Gb3IgcmVwbGFjZSwgcGF0aCBzaG91bGQgcmVmZXJlbmNlIGFuIGV4aXN0aW5nIG5vZGUuXG5BbGwgdmFsdWVzIGFyZSBzdHJpbmdzIGJ1dCBhcmUgY29udmVydGVkIGludG8gYXBwcm9wcmlhdGUgdHlwZSBiYXNlZCBvbiBzY2hlbWEuIiwiZGlzcGxheU5hbWUiOiJWYWx1ZSIsInBhdGgiOiJvdmVybGF5c1swXS5wYXRjaGVzWzBdLnZhbHVlIn0seyJkZXNjcmlwdGlvbiI6IlZlcmJhdGltIHZhbHVlIHRvIGFkZCwgZGVsZXRlIG9yIHJlcGxhY2UuXG5TYW1lIGFzIFZhbHVlLCBob3dldmVyIHRoZSBjb250ZW50IGlzIG5vdCBpbnRlcnByZXRlZCBhcyBZQU1MLCBidXQgdHJlYXRlZCBhcyBsaXRlcmFsIHN0cmluZyBpbnN0ZWFkLlxuQXQgbGVhc3Qgb25lIG9mIFZhbHVlIGFuZCBWZXJiYXRpbSBtdXN0IGJlIGVtcHR5LiIsImRpc3BsYXlOYW1lIjoiVmVyYmF0aW0iLCJwYXRoIjoib3ZlcmxheXNbMF0ucGF0Y2hlc1swXS52ZXJiYXRpbSJ9LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIENvbGxlY3RvciBjb250YWluZXIsIHdoaWNoIGlzIHJlc3BvbnNpYmxlIGZvciBjb2xsZWN0aW5nIHByb2Nlc3MgYW5kIG5ldHdvcmtpbmdcbmFjdGl2aXR5IGF0IHRoZSBob3N0IGxldmVsLiIsImRpc3BsYXlOYW1lIjoiQ29sbGVjdG9yIFNldHRpbmdzIiwicGF0aCI6InBlck5vZGUuY29sbGVjdG9yIn0seyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIGZvciB0aGUgQ29tcGxpYW5jZSBjb250YWluZXIsIHdoaWNoIGlzIHJlc3BvbnNpYmxlIGZvciBjaGVja2luZyBob3N0LWxldmVsIGNvbmZpZ3VyYXRpb25zLiIsImRpc3BsYXlOYW1lIjoiQ29tcGxpYW5jZSBTZXR0aW5ncyIsInBhdGgiOiJwZXJOb2RlLmNvbXBsaWFuY2UifSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBOb2RlLUludmVudG9yeSBjb250YWluZXIsIHdoaWNoIGlzIHJlc3BvbnNpYmxlIGZvciBzY2FubmluZyB0aGUgTm9kZXMnIGZpbGVzeXN0ZW0uIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNjYW5uaW5nIFNldHRpbmdzIiwicGF0aCI6InBlck5vZGUubm9kZUludmVudG9yeSJ9LHsiZGVzY3JpcHRpb24iOiJUbyBlbnN1cmUgY29tcHJlaGVuc2l2ZSBtb25pdG9yaW5nIG9mIHlvdXIgY2x1c3RlciBhY3Rpdml0eSwgUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5XG53aWxsIHJ1biBzZXJ2aWNlcyBvbiBldmVyeSBub2RlIGluIHRoZSBjbHVzdGVyLCBpbmNsdWRpbmcgdGFpbnRlZCBub2RlcyBieSBkZWZhdWx0LiBJZiB5b3UgZG9cbm5vdCB3YW50IHRoaXMgYmVoYXZpb3IsIHBsZWFzZSBzZWxlY3QgJ0F2b2lkVGFpbnRzJyBoZXJlLiIsImRpc3BsYXlOYW1lIjoiVGFpbnQgVG9sZXJhdGlvbiIsInBhdGgiOiJwZXJOb2RlLnRhaW50VG9sZXJhdGlvbiJ9LHsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJkaXNwbGF5TmFtZSI6Ikhvc3QgQWxpYXNlcyIsInBhdGgiOiJwZXJOb2RlLmhvc3RBbGlhc2VzIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBtZXRob2QgZm9yIHN5c3RlbS1sZXZlbCBkYXRhIGNvbGxlY3Rpb24uIENPUkVfQlBGIGlzIHJlY29tbWVuZGVkLlxuSWYgeW91IHNlbGVjdCBcIk5vQ29sbGVjdGlvblwiLCB5b3Ugd2lsbCBub3QgYmUgYWJsZSB0byBzZWUgYW55IGluZm9ybWF0aW9uIGFib3V0IG5ldHdvcmsgYWN0aXZpdHlcbmFuZCBwcm9jZXNzIGV4ZWN1dGlvbnMuIFRoZSByZW1haW5pbmcgc2V0dGluZ3MgaW4gdGhlc2Ugc2VjdGlvbiB3aWxsIG5vdCBoYXZlIGFueSBlZmZlY3QuXG5UaGUgdmFsdWUgaXMgYSBzdWJqZWN0IG9mIGNvbnZlcnNpb24gYnkgdGhlIG9wZXJhdG9yIGlmIG5lZWRlZCwgZS5nLiB0b1xucmVtb3ZlIGRlcHJlY2F0ZWQgbWV0aG9kcy4iLCJkaXNwbGF5TmFtZSI6IkNvbGxlY3Rpb24iLCJwYXRoIjoicGVyTm9kZS5jb2xsZWN0b3IuY29sbGVjdGlvbiIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpzZWxlY3Q6Q09SRV9CUEYiLCJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnNlbGVjdDpOb0NvbGxlY3Rpb24iXX0seyJkZXNjcmlwdGlvbiI6IkRlcHJlY2F0ZWQgZmllbGQuIiwiZGlzcGxheU5hbWUiOiJJbWFnZSBGbGF2b3IiLCJwYXRoIjoicGVyTm9kZS5jb2xsZWN0b3IuaW1hZ2VGbGF2b3IiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6aGlkZGVuIl19LHsiZGVzY3JpcHRpb24iOiJEZXByZWNhdGVkIGZpZWxkLiBUaGlzIGZpZWxkIHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLiIsImRpc3BsYXlOYW1lIjoiRm9yY2UgQ29sbGVjdGlvbiIsInBhdGgiOiJwZXJOb2RlLmNvbGxlY3Rvci5mb3JjZUNvbGxlY3Rpb24iLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6aGlkZGVuIl19LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6InBlck5vZGUuY29sbGVjdG9yLnJlc291cmNlcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpyZXNvdXJjZVJlcXVpcmVtZW50cyJdfSx7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJkaXNwbGF5TmFtZSI6IlJlc291cmNlcyIsInBhdGgiOiJwZXJOb2RlLmNvbXBsaWFuY2UucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6InBlck5vZGUubm9kZUludmVudG9yeS5yZXNvdXJjZXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6cmVzb3VyY2VSZXF1aXJlbWVudHMiXX0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSBkbyBub3Qgd2FudCB0byBkZXBsb3kgdGhlIFJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSBTY2FubmVyLCB5b3UgY2FuIGRpc2FibGUgaXQgaGVyZVxuKG5vdCByZWNvbW1lbmRlZCkuXG5JZiB5b3UgZG8gc28sIGFsbCB0aGUgc2V0dGluZ3MgaW4gdGhpcyBzZWN0aW9uIHdpbGwgaGF2ZSBubyBlZmZlY3QuIiwiZGlzcGxheU5hbWUiOiJTY2FubmVyIENvbXBvbmVudCIsInBhdGgiOiJzY2FubmVyLnNjYW5uZXJDb21wb25lbnQifSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcGVydGFpbmluZyB0byB0aGUgYW5hbHl6ZXIgZGVwbG95bWVudCwgc3VjaCBhcyBmb3IgYXV0b3NjYWxpbmcuIiwiZGlzcGxheU5hbWUiOiJBbmFseXplciIsInBhdGgiOiJzY2FubmVyLmFuYWx5emVyIn0seyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHBlcnRhaW5pbmcgdG8gdGhlIGRhdGFiYXNlIHVzZWQgYnkgdGhlIFJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSBTY2FubmVyLiIsImRpc3BsYXlOYW1lIjoiREIiLCJwYXRoIjoic2Nhbm5lci5kYiJ9LHsiZGVzY3JpcHRpb24iOiJDb250cm9scyB0aGUgbnVtYmVyIG9mIGFuYWx5emVyIHJlcGxpY2FzIGFuZCBhdXRvc2NhbGluZy4iLCJkaXNwbGF5TmFtZSI6IlNjYWxpbmciLCJwYXRoIjoic2Nhbm5lci5hbmFseXplci5zY2FsaW5nIn0seyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwiZGlzcGxheU5hbWUiOiJSZXNvdXJjZXMiLCJwYXRoIjoic2Nhbm5lci5hbmFseXplci5yZXNvdXJjZXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6cmVzb3VyY2VSZXF1aXJlbWVudHMiXX0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJkaXNwbGF5TmFtZSI6Ik5vZGUgU2VsZWN0b3IiLCJwYXRoIjoic2Nhbm5lci5hbmFseXplci5ub2RlU2VsZWN0b3IifSx7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiZGlzcGxheU5hbWUiOiJUb2xlcmF0aW9ucyIsInBhdGgiOiJzY2FubmVyLmFuYWx5emVyLnRvbGVyYXRpb25zIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnRvbGVyYXRpb25zIl19LHsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJkaXNwbGF5TmFtZSI6Ikhvc3QgQWxpYXNlcyIsInBhdGgiOiJzY2FubmVyLmFuYWx5emVyLmhvc3RBbGlhc2VzIn0seyJkZXNjcmlwdGlvbiI6IldoZW4gZW5hYmxlZCwgdGhlIG51bWJlciBvZiBjb21wb25lbnQgcmVwbGljYXMgaXMgbWFuYWdlZCBkeW5hbWljYWxseSBiYXNlZCBvbiB0aGUgbG9hZCwgd2l0aGluIHRoZSBsaW1pdHNcbnNwZWNpZmllZCBiZWxvdy4iLCJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIiwicGF0aCI6InNjYW5uZXIuYW5hbHl6ZXIuc2NhbGluZy5hdXRvU2NhbGluZyJ9LHsiZGVzY3JpcHRpb24iOiJXaGVuIGF1dG9zY2FsaW5nIGlzIGRpc2FibGVkLCB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIHdpbGwgYWx3YXlzIGJlIGNvbmZpZ3VyZWQgdG8gbWF0Y2ggdGhpcyB2YWx1ZS4iLCJkaXNwbGF5TmFtZSI6IkRlZmF1bHQgUmVwbGljYXMiLCJwYXRoIjoic2Nhbm5lci5hbmFseXplci5zY2FsaW5nLnJlcGxpY2FzIn0seyJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIE1pbmltdW0gUmVwbGljYXMiLCJwYXRoIjoic2Nhbm5lci5hbmFseXplci5zY2FsaW5nLm1pblJlcGxpY2FzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmZpZWxkRGVwZW5kZW5jeTpzY2FubmVyLmFuYWx5emVyLnNjYWxpbmcuYXV0b1NjYWxpbmc6RW5hYmxlZCJdfSx7ImRpc3BsYXlOYW1lIjoiQXV0b3NjYWxpbmcgTWF4aW11bSBSZXBsaWNhcyIsInBhdGgiOiJzY2FubmVyLmFuYWx5emVyLnNjYWxpbmcubWF4UmVwbGljYXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6ZmllbGREZXBlbmRlbmN5OnNjYW5uZXIuYW5hbHl6ZXIuc2NhbGluZy5hdXRvU2NhbGluZzpFbmFibGVkIl19LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6InNjYW5uZXIuZGIucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNlbGVjdG9yIiwicGF0aCI6InNjYW5uZXIuZGIubm9kZVNlbGVjdG9yIn0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsImRpc3BsYXlOYW1lIjoiVG9sZXJhdGlvbnMiLCJwYXRoIjoic2Nhbm5lci5kYi50b2xlcmF0aW9ucyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0b2xlcmF0aW9ucyJdfSx7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiZGlzcGxheU5hbWUiOiJIb3N0IEFsaWFzZXMiLCJwYXRoIjoic2Nhbm5lci5kYi5ob3N0QWxpYXNlcyJ9LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0byBlbmFibGUgdGhlIFNjYW5uZXIgVjQgY29tcG9uZW50IHNldCB0aGlzIHRvIFwiQXV0b1NlbnNlXCJcbklmIHRoaXMgZmllbGQgaXMgbm90IHNwZWNpZmllZCBvciBzZXQgdG8gXCJEZWZhdWx0XCIsIHRoZSBmb2xsb3dpbmcgZGVmYXVsdGluZyB0YWtlcyBwbGFjZTpcbiogZm9yIG5ldyBpbnN0YWxsYXRpb25zLCBTY2FubmVyIFY0IGlzIGVuYWJsZWQgc3RhcnRpbmcgd2l0aCBBQ1MgNC44O1xuKiBmb3IgdXBncmFkZXMgdG8gNC44IGZyb20gcHJldmlvdXMgcmVsZWFzZXMsIFNjYW5uZXIgVjQgaXMgZGlzYWJsZWQuIiwiZGlzcGxheU5hbWUiOiJTY2FubmVyIFY0IGNvbXBvbmVudCIsInBhdGgiOiJzY2FubmVyVjQuc2Nhbm5lckNvbXBvbmVudCJ9LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBwZXJ0YWluaW5nIHRvIHRoZSBpbmRleGVyIGRlcGxveW1lbnQuIiwiZGlzcGxheU5hbWUiOiJJbmRleGVyIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmZpZWxkRGVwZW5kZW5jeTpzY2FubmVyVjQuc2Nhbm5lckNvbXBvbmVudDpBdXRvU2Vuc2UiXX0seyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHBlcnRhaW5pbmcgdG8gdGhlIERCIGRlcGxveW1lbnQuIiwiZGlzcGxheU5hbWUiOiJEQiIsInBhdGgiOiJzY2FubmVyVjQuZGIiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6ZmllbGREZXBlbmRlbmN5OnNjYW5uZXJWNC5zY2FubmVyQ29tcG9uZW50OkF1dG9TZW5zZSJdfSx7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyBtb25pdG9yaW5nIGVuZHBvaW50IGZvciBTY2FubmVyIFY0LiBUaGUgbW9uaXRvcmluZyBlbmRwb2ludFxuYWxsb3dzIG90aGVyIHNlcnZpY2VzIHRvIGNvbGxlY3QgbWV0cmljcyBmcm9tIFNjYW5uZXIgVjQsIHByb3ZpZGVkIGluXG5Qcm9tZXRoZXVzIGNvbXBhdGlibGUgZm9ybWF0LiIsImRpc3BsYXlOYW1lIjoiTW9uaXRvcmluZyIsInBhdGgiOiJzY2FubmVyVjQubW9uaXRvcmluZyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0LnNjYW5uZXJDb21wb25lbnQ6QXV0b1NlbnNlIl19LHsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIGhvdyBTY2FubmVyIFY0IHNob3VsZCBzdG9yZSBpdHMgcGVyc2lzdGVudCBkYXRhLlxuWW91IGNhbiB1c2UgYSBwZXJzaXN0ZW50IHZvbHVtZSBjbGFpbSAodGhlIHJlY29tbWVuZGVkIGRlZmF1bHQpLCBhIGhvc3QgcGF0aCxcbm9yIGFuIGVtcHR5RGlyIHZvbHVtZSBpZiBTY2FubmVyIFY0IGlzIHJ1bm5pbmcgb24gYSBzZWN1cmVkIGNsdXN0ZXIgd2l0aG91dCBkZWZhdWx0IFN0b3JhZ2VDbGFzcy4iLCJkaXNwbGF5TmFtZSI6IlBlcnNpc3RlbmNlIiwicGF0aCI6InNjYW5uZXJWNC5kYi5wZXJzaXN0ZW5jZSJ9LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6InNjYW5uZXJWNC5kYi5yZXNvdXJjZXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6cmVzb3VyY2VSZXF1aXJlbWVudHMiXX0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJkaXNwbGF5TmFtZSI6Ik5vZGUgU2VsZWN0b3IiLCJwYXRoIjoic2Nhbm5lclY0LmRiLm5vZGVTZWxlY3RvciJ9LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJkaXNwbGF5TmFtZSI6IlRvbGVyYXRpb25zIiwicGF0aCI6InNjYW5uZXJWNC5kYi50b2xlcmF0aW9ucyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0b2xlcmF0aW9ucyJdfSx7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiZGlzcGxheU5hbWUiOiJIb3N0IEFsaWFzZXMiLCJwYXRoIjoic2Nhbm5lclY0LmRiLmhvc3RBbGlhc2VzIn0seyJkZXNjcmlwdGlvbiI6IlVzZXMgYSBLdWJlcm5ldGVzIHBlcnNpc3RlbnQgdm9sdW1lIGNsYWltIChQVkMpIHRvIG1hbmFnZSB0aGUgc3RvcmFnZSBsb2NhdGlvbiBvZiBwZXJzaXN0ZW50IGRhdGEuXG5SZWNvbW1lbmRlZCBmb3IgbW9zdCB1c2Vycy4iLCJkaXNwbGF5TmFtZSI6IlBlcnNpc3RlbnQgdm9sdW1lIGNsYWltIiwicGF0aCI6InNjYW5uZXJWNC5kYi5wZXJzaXN0ZW5jZS5wZXJzaXN0ZW50Vm9sdW1lQ2xhaW0ifSx7ImRlc2NyaXB0aW9uIjoiU3RvcmVzIHBlcnNpc3RlbnQgZGF0YSBvbiBhIGRpcmVjdG9yeSBvbiB0aGUgaG9zdC4gVGhpcyBpcyBub3QgcmVjb21tZW5kZWQsIGFuZCBzaG91bGQgb25seVxuYmUgdXNlZCB0b2dldGhlciB3aXRoIGEgbm9kZSBzZWxlY3RvciAob25seSBhdmFpbGFibGUgaW4gWUFNTCB2aWV3KS4iLCJkaXNwbGF5TmFtZSI6Ikhvc3QgcGF0aCIsInBhdGgiOiJzY2FubmVyVjQuZGIucGVyc2lzdGVuY2UuaG9zdFBhdGgifSx7ImRlc2NyaXB0aW9uIjoiVGhlIHBhdGggb24gdGhlIGhvc3QgcnVubmluZyBDZW50cmFsLiIsImRpc3BsYXlOYW1lIjoiUGF0aCIsInBhdGgiOiJzY2FubmVyVjQuZGIucGVyc2lzdGVuY2UuaG9zdFBhdGgucGF0aCJ9LHsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgUFZDIHRvIG1hbmFnZSBwZXJzaXN0ZW50IGRhdGEuIElmIG5vIFBWQyB3aXRoIHRoZSBnaXZlbiBuYW1lIGV4aXN0cywgaXQgd2lsbCBiZVxuY3JlYXRlZC4gRGVmYXVsdHMgdG8gXCJzY2FubmVyLXY0LWRiXCIgaWYgbm90IHNldC4iLCJkaXNwbGF5TmFtZSI6IkNsYWltIE5hbWUiLCJwYXRoIjoic2Nhbm5lclY0LmRiLnBlcnNpc3RlbmNlLnBlcnNpc3RlbnRWb2x1bWVDbGFpbS5jbGFpbU5hbWUifSx7ImRlc2NyaXB0aW9uIjoiVGhlIHNpemUgb2YgdGhlIHBlcnNpc3RlbnQgdm9sdW1lIHdoZW4gY3JlYXRlZCB0aHJvdWdoIHRoZSBjbGFpbS4gSWYgYSBjbGFpbSB3YXMgYXV0b21hdGljYWxseSBjcmVhdGVkLFxudGhpcyBjYW4gYmUgdXNlZCBhZnRlciB0aGUgaW5pdGlhbCBkZXBsb3ltZW50IHRvIHJlc2l6ZSAoZ3JvdykgdGhlIHZvbHVtZSAob25seSBzdXBwb3J0ZWQgYnkgc29tZVxuc3RvcmFnZSBjbGFzcyBjb250cm9sbGVycykuIiwiZGlzcGxheU5hbWUiOiJTaXplIiwicGF0aCI6InNjYW5uZXJWNC5kYi5wZXJzaXN0ZW5jZS5wZXJzaXN0ZW50Vm9sdW1lQ2xhaW0uc2l6ZSIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0ZXh0Il19LHsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgc3RvcmFnZSBjbGFzcyB0byB1c2UgZm9yIHRoZSBQVkMuIElmIHlvdXIgY2x1c3RlciBpcyBub3QgY29uZmlndXJlZCB3aXRoIGEgZGVmYXVsdCBzdG9yYWdlXG5jbGFzcywgeW91IG11c3Qgc2VsZWN0IGEgdmFsdWUgaGVyZS4iLCJkaXNwbGF5TmFtZSI6IlN0b3JhZ2UgQ2xhc3MiLCJwYXRoIjoic2Nhbm5lclY0LmRiLnBlcnNpc3RlbmNlLnBlcnNpc3RlbnRWb2x1bWVDbGFpbS5zdG9yYWdlQ2xhc3NOYW1lIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6aW8ua3ViZXJuZXRlczpTdG9yYWdlQ2xhc3MiXX0seyJkZXNjcmlwdGlvbiI6IkNvbnRyb2xzIHRoZSBudW1iZXIgb2YgcmVwbGljYXMgYW5kIGF1dG9zY2FsaW5nIGZvciB0aGlzIGNvbXBvbmVudC4iLCJkaXNwbGF5TmFtZSI6IlNjYWxpbmciLCJwYXRoIjoic2Nhbm5lclY0LmluZGV4ZXIuc2NhbGluZyJ9LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyLnJlc291cmNlcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpyZXNvdXJjZVJlcXVpcmVtZW50cyJdfSx7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIGEgbm9kZSBzZWxlY3RvciBoZXJlLiIsImRpc3BsYXlOYW1lIjoiTm9kZSBTZWxlY3RvciIsInBhdGgiOiJzY2FubmVyVjQuaW5kZXhlci5ub2RlU2VsZWN0b3IifSx7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiZGlzcGxheU5hbWUiOiJUb2xlcmF0aW9ucyIsInBhdGgiOiJzY2FubmVyVjQuaW5kZXhlci50b2xlcmF0aW9ucyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0b2xlcmF0aW9ucyJdfSx7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiZGlzcGxheU5hbWUiOiJIb3N0IEFsaWFzZXMiLCJwYXRoIjoic2Nhbm5lclY0LmluZGV4ZXIuaG9zdEFsaWFzZXMifSx7ImRlc2NyaXB0aW9uIjoiV2hlbiBlbmFibGVkLCB0aGUgbnVtYmVyIG9mIGNvbXBvbmVudCByZXBsaWNhcyBpcyBtYW5hZ2VkIGR5bmFtaWNhbGx5IGJhc2VkIG9uIHRoZSBsb2FkLCB3aXRoaW4gdGhlIGxpbWl0c1xuc3BlY2lmaWVkIGJlbG93LiIsImRpc3BsYXlOYW1lIjoiQXV0b3NjYWxpbmciLCJwYXRoIjoic2Nhbm5lclY0LmluZGV4ZXIuc2NhbGluZy5hdXRvU2NhbGluZyJ9LHsiZGVzY3JpcHRpb24iOiJXaGVuIGF1dG9zY2FsaW5nIGlzIGRpc2FibGVkLCB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIHdpbGwgYWx3YXlzIGJlIGNvbmZpZ3VyZWQgdG8gbWF0Y2ggdGhpcyB2YWx1ZS4iLCJkaXNwbGF5TmFtZSI6IkRlZmF1bHQgUmVwbGljYXMiLCJwYXRoIjoic2Nhbm5lclY0LmluZGV4ZXIuc2NhbGluZy5yZXBsaWNhcyJ9LHsiZGlzcGxheU5hbWUiOiJBdXRvc2NhbGluZyBNaW5pbXVtIFJlcGxpY2FzIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyLnNjYWxpbmcubWluUmVwbGljYXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6ZmllbGREZXBlbmRlbmN5OnNjYW5uZXJWNC5pbmRleGVyLnNjYWxpbmcuYXV0b1NjYWxpbmc6RW5hYmxlZCJdfSx7ImRpc3BsYXlOYW1lIjoiQXV0b3NjYWxpbmcgTWF4aW11bSBSZXBsaWNhcyIsInBhdGgiOiJzY2FubmVyVjQuaW5kZXhlci5zY2FsaW5nLm1heFJlcGxpY2FzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmZpZWxkRGVwZW5kZW5jeTpzY2FubmVyVjQuaW5kZXhlci5zY2FsaW5nLmF1dG9TY2FsaW5nOkVuYWJsZWQiXX0seyJkZXNjcmlwdGlvbiI6IkV4cG9zZSB0aGUgbW9uaXRvcmluZyBlbmRwb2ludC4gQSBuZXcgc2VydmljZSwgXCJtb25pdG9yaW5nXCIsXG53aXRoIHBvcnQgOTA5MCwgd2lsbCBiZSBjcmVhdGVkIGFzIHdlbGwgYXMgYSBuZXR3b3JrIHBvbGljeSBhbGxvd2luZ1xuaW5ib3VuZCBjb25uZWN0aW9ucyB0byB0aGUgcG9ydC4iLCJkaXNwbGF5TmFtZSI6IkV4cG9zZSBFbmRwb2ludCIsInBhdGgiOiJzY2FubmVyVjQubW9uaXRvcmluZy5leHBvc2VFbmRwb2ludCJ9LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6InNlbnNvci5yZXNvdXJjZXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6cmVzb3VyY2VSZXF1aXJlbWVudHMiXX0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJkaXNwbGF5TmFtZSI6Ik5vZGUgU2VsZWN0b3IiLCJwYXRoIjoic2Vuc29yLm5vZGVTZWxlY3RvciJ9LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJkaXNwbGF5TmFtZSI6IlRvbGVyYXRpb25zIiwicGF0aCI6InNlbnNvci50b2xlcmF0aW9ucyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0b2xlcmF0aW9ucyJdfSx7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiZGlzcGxheU5hbWUiOiJIb3N0IEFsaWFzZXMiLCJwYXRoIjoic2Vuc29yLmhvc3RBbGlhc2VzIn0seyJkaXNwbGF5TmFtZSI6IkFkZGl0aW9uYWwgQ0FzIiwicGF0aCI6InRscy5hZGRpdGlvbmFsQ0FzIn1dLCJzdGF0dXNEZXNjcmlwdG9ycyI6W3siZGVzY3JpcHRpb24iOiJUaGUgZGVwbG95ZWQgdmVyc2lvbiBvZiB0aGUgcHJvZHVjdC4iLCJkaXNwbGF5TmFtZSI6IlByb2R1Y3QgVmVyc2lvbiIsInBhdGgiOiJwcm9kdWN0VmVyc2lvbiJ9LHsiZGVzY3JpcHRpb24iOiJUaGUgYXNzaWduZWQgY2x1c3RlciBuYW1lIHBlciB0aGUgc3BlYy4gVGhpcyBjYW5ub3QgYmUgY2hhbmdlZCBhZnRlcndhcmRzLiBJZiB5b3UgbmVlZCB0byBjaGFuZ2UgdGhlXG5jbHVzdGVyIG5hbWUsIHBsZWFzZSBkZWxldGUgYW5kIHJlY3JlYXRlIHRoaXMgcmVzb3VyY2UuIiwiZGlzcGxheU5hbWUiOiJDbHVzdGVyIE5hbWUiLCJwYXRoIjoiY2x1c3Rlck5hbWUifV0sInZlcnNpb24iOiJ2MWFscGhhMSJ9LHsiZGVzY3JpcHRpb24iOiJTZWN1cml0eVBvbGljeSBpcyB0aGUgc2NoZW1hIGZvciB0aGUgcG9saWNpZXMgQVBJLiIsImRpc3BsYXlOYW1lIjoiU2VjdXJpdHkgUG9saWN5Iiwia2luZCI6IlNlY3VyaXR5UG9saWN5IiwibmFtZSI6InNlY3VyaXR5cG9saWNpZXMuY29uZmlnLnN0YWNrcm94LmlvIiwicmVzb3VyY2VzIjpbeyJraW5kIjoiRGVwbG95bWVudCIsIm5hbWUiOiIiLCJ2ZXJzaW9uIjoidjEifV0sInZlcnNpb24iOiJ2MWFscGhhMSJ9XX0sImRlc2NyaXB0aW9uIjoiIyMgV2h5IHVzZSBSZWQgSGF0IEFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHkgZm9yIEt1YmVybmV0ZXM/XG5cblByb3RlY3RpbmcgY2xvdWQtbmF0aXZlIGFwcGxpY2F0aW9ucyByZXF1aXJlcyBzaWduaWZpY2FudCBjaGFuZ2VzIGluIGhvdyB3ZSBhcHByb2FjaCBzZWN1cml0eeKAlHdlIG11c3QgYXBwbHkgY29udHJvbHMgZWFybGllciBpbiB0aGUgYXBwbGljYXRpb24gZGV2ZWxvcG1lbnQgbGlmZSBjeWNsZSwgdXNlIHRoZSBpbmZyYXN0cnVjdHVyZSBpdHNlbGYgdG8gYXBwbHkgY29udHJvbHMsIGFuZCBrZWVwIHVwIHdpdGggaW5jcmVhc2luZ2x5IHJhcGlkIHJlbGVhc2Ugc2NoZWR1bGVzLlxuXG5cblJlZCBIYXTCriBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5IGZvciBLdWJlcm5ldGVzLCBwb3dlcmVkIGJ5IFN0YWNrUm94IHRlY2hub2xvZ3ksIHByb3RlY3RzIHlvdXIgdml0YWwgYXBwbGljYXRpb25zIGFjcm9zcyBidWlsZCwgZGVwbG95LCBhbmQgcnVudGltZS4gT3VyIHNvZnR3YXJlIGRlcGxveXMgaW4geW91ciBpbmZyYXN0cnVjdHVyZSBhbmQgaW50ZWdyYXRlcyB3aXRoIHlvdXIgRGV2T3BzIHRvb2xpbmcgYW5kIHdvcmtmbG93cyB0byBkZWxpdmVyIGJldHRlciBzZWN1cml0eSBhbmQgY29tcGxpYW5jZS4gVGhlIHBvbGljeSBlbmdpbmUgaW5jbHVkZXMgaHVuZHJlZHMgb2YgYnVpbHQtaW4gY29udHJvbHMgdG8gZW5mb3JjZSBEZXZPcHMgYW5kIHNlY3VyaXR5IGJlc3QgcHJhY3RpY2VzLCBpbmR1c3RyeSBzdGFuZGFyZHMgc3VjaCBhcyBDSVMgQmVuY2htYXJrcyBhbmQgTmF0aW9uYWwgSW5zdGl0dXRlIG9mIFN0YW5kYXJkcyBUZWNobm9sb2d5IChOSVNUKSBndWlkZWxpbmVzLCBjb25maWd1cmF0aW9uIG1hbmFnZW1lbnQgb2YgYm90aCBjb250YWluZXJzIGFuZCBLdWJlcm5ldGVzLCBhbmQgcnVudGltZSBzZWN1cml0eS5cblxuUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5IGZvciBLdWJlcm5ldGVzIHByb3ZpZGVzIGEgS3ViZXJuZXRlcy1uYXRpdmUgYXJjaGl0ZWN0dXJlIGZvciBjb250YWluZXIgc2VjdXJpdHksIGVuYWJsaW5nIERldk9wcyBhbmQgSW5mb1NlYyB0ZWFtcyB0byBvcGVyYXRpb25hbGl6ZSBzZWN1cml0eS5cblxuIyMgRmVhdHVyZXMgYW5kIEJlbmVmaXRzXG5cbioqS3ViZXJuZXRlcy1uYXRpdmUgc2VjdXJpdHk6KipcbjEuIEluY3JlYXNlcyBwcm90ZWN0aW9uLlxuMS4gRWxpbWluYXRlcyBibGluZCBzcG90cywgcHJvdmlkaW5nIHN0YWZmIHdpdGggaW5zaWdodHMgaW50byBjcml0aWNhbCB2dWxuZXJhYmlsaXRpZXMgYW5kIHRocmVhdCB2ZWN0b3JzLlxuMS4gUmVkdWNlcyB0aW1lIGFuZCBjb3N0cy5cbjEuIFJlZHVjZXMgdGhlIHRpbWUgYW5kIGVmZm9ydCBuZWVkZWQgdG8gaW1wbGVtZW50IHNlY3VyaXR5IGFuZCBzdHJlYW1saW5lcyBzZWN1cml0eSBhbmFseXNpcywgaW52ZXN0aWdhdGlvbiwgYW5kIHJlbWVkaWF0aW9uIHVzaW5nIHRoZSByaWNoIGNvbnRleHQgS3ViZXJuZXRlcyBwcm92aWRlcy5cbjEuIEluY3JlYXNlcyBzY2FsYWJpbGl0eSBhbmQgcG9ydGFiaWxpdHkuXG4xLiBQcm92aWRlcyBzY2FsYWJpbGl0eSBhbmQgcmVzaWxpZW5jeSBuYXRpdmUgdG8gS3ViZXJuZXRlcywgYXZvaWRpbmcgb3BlcmF0aW9uYWwgY29uZmxpY3QgYW5kIGNvbXBsZXhpdHkgdGhhdCBjYW4gcmVzdWx0IGZyb20gb3V0LW9mLWJhbmQgc2VjdXJpdHkgY29udHJvbHMuXG5cbiMjIFVzaW5nIHRoZSBSSEFDUyBPcGVyYXRvclxuXG4qKlJIQUNTIE9wZXJhdG9yIGNoYW5uZWxzOioqXG5cblJlZCBIYXQgcHJvdmlkZXMgdGhlIFJIQUNTIE9wZXJhdG9yIGJ5IHVzaW5nIHRoZSBmb2xsb3dpbmcgdXBkYXRlIGNoYW5uZWxzIGluIHRoZSBSZWQgSGF0IE9wZXJhdG9yIGNhdGFsb2c6XG5cbiogYHN0YWJsZWA6IFByb3ZpZGVzIHRoZSBtb3N0IHJlY2VudCB2ZXJzaW9uIGFuZCBwYXRjaGVzIHRvIHRoZSBtb3N0IHJlY2VudCB2ZXJzaW9uLlxuICBVc2luZyB0aGUgYHN0YWJsZWAgY2hhbm5lbCBhbmQgY29uZmlndXJpbmcgYXV0b21hdGljIG9wZXJhdG9yIHVwZ3JhZGVzIGVuc3VyZXMgdGhhdCB0aGUgbW9zdCByZWNlbnQgUkhBQ1MgdmVyc2lvbiBpcyBkZXBsb3llZC5cbiogYHJoYWNzLXgueXlgIChmb3IgZXhhbXBsZSwgYHJoYWNzLTMuNzRgKTogQ2hhbm5lbHMgZm9sbG93IGEgc3BlY2lmaWMgUkhBQ1MgdmVyc2lvbiBhbmQgaW5jbHVkZSBhbGwgcGF0Y2hlcyB0byB0aGF0IHZlcnNpb24gKGUuZy4gYDMuNzQuMGAsIGAzLjc0LjFgLCAuLi4pLlxuXG5Ob3RlIHRoYXQgdGhlIGBsYXRlc3RgIGNoYW5uZWwgaXMgZGVwcmVjYXRlZCBhbmQgaXMgbm90IHVwZGF0ZWQgYWZ0ZXIgUkhBQ1MgdmVyc2lvbiAzLjc0LiBOZXdlciB2ZXJzaW9ucyBhcmUgcHVibGlzaGVkIHRvIHRoZSBgc3RhYmxlYCBjaGFubmVsLlxuXG4qKlJIQUNTIGNvbWVzIHdpdGggdHdvIGN1c3RvbSByZXNvdXJjZXM6KipcblxuMS4gKipDZW50cmFsIFNlcnZpY2VzKiogLSBDZW50cmFsIGlzIGEgZGVwbG95bWVudCByZXF1aXJlZCBvbiBvbmx5IG9uZSBjbHVzdGVyIGluIHlvdXIgZW52aXJvbm1lbnQuIFVzZXJzIGludGVyYWN0IHdpdGggUkhBQ1MgdmlhIHRoZSB1c2VyIGludGVyZmFjZSBvciBBUElzIG9uIENlbnRyYWwuIENlbnRyYWwgYWxzbyBzZW5kcyBub3RpZmljYXRpb25zIGZvciB2aW9sYXRpb25zIGFuZCBpbnRlcmFjdHMgd2l0aCBpbnRlZ3JhdGlvbnMuIFVzZXJzIG1heSBzZWxlY3QgZXhwb3N1cmVzIGZvciBDZW50cmFsIHRoYXQgYmVzdCBtZWV0IHRoZWlyIGVudmlyb25tZW50LlxuXG4yLiAqKlNlY3VyZWQgQ2x1c3RlciBTZXJ2aWNlcyoqIC0gU2VjdXJlZCBjbHVzdGVyIHNlcnZpY2VzIGFyZSBwbGFjZWQgb24gZWFjaCBjbHVzdGVyIHlvdSBtYW5hZ2UgYW5kIHJlcG9ydCBiYWNrIHRvIENlbnRyYWwuIFRoZXNlIHNlcnZpY2VzIGFsbG93IHVzZXJzIHRvIGVuZm9yY2UgcG9saWNpZXMgYW5kIG1vbml0b3IgeW91ciBPcGVuU2hpZnQgYW5kIEt1YmVybmV0ZXMgY2x1c3RlcnMuIFNlY3VyZWQgQ2x1c3RlciBTZXJ2aWNlcyBjb21lIGFzIHR3byBEZXBsb3ltZW50cyAoU2Vuc29yIGFuZCBBZG1pc3Npb24gQ29udHJvbGxlcikgYW5kIG9uZSBEYWVtb25TZXQgKENvbGxlY3RvcikuXG5cbiMjIyBDZW50cmFsIFNlcnZpY2VzIEV4cGxhaW5lZFxuXG58IFNlcnZpY2UgICAgICAgICAgICAgICAgICAgICAgICAgIHwgRGVwbG95bWVudCBUeXBlIHwgRGVzY3JpcHRpb24gICAgIHxcbnwgOi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gfCA6LS0tLS0tLS0tLS0tLS0gfCA6LS0tLS0tLS0tLS0tLS0gfFxufCBDZW50cmFsICAgICAgICAgICAgICAgICAgICAgICAgICB8IERlcGxveW1lbnQgICAgICB8IFVzZXJzIGludGVyYWN0IHdpdGggUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5IHRocm91Z2ggdGhlIHVzZXIgaW50ZXJmYWNlIG9yIEFQSXMgb24gQ2VudHJhbC4gQ2VudHJhbCBhbHNvIHNlbmRzIG5vdGlmaWNhdGlvbnMgZm9yIHZpb2xhdGlvbnMgYW5kIGludGVyYWN0cyB3aXRoIGludGVncmF0aW9ucy4gfFxufCBDZW50cmFsIERCICAgICAgICAgICAgICAgICAgICAgICB8IERlcGxveW1lbnQgICAgICB8IENlbnRyYWwgREIgaXMgYSBQb3N0Z3JlU1FMLWJhc2VkIHBlcnNpc3RlbnQgc3RvcmFnZSBmb3IgdGhlIGRhdGEgY29sbGVjdGVkIGFuZCBtYW5hZ2VkIGJ5IENlbnRyYWwuIHxcbnwgU2Nhbm5lciAgICAgICAgICAgICAgICAgICAgICAgICAgfCBEZXBsb3ltZW50ICAgICAgfCBTY2FubmVyIGlzIGEgUmVkIEhhdCBkZXZlbG9wZWQgYW5kIGNlcnRpZmllZCBpbWFnZSBzY2FubmVyLiBTY2FubmVyIGFuYWx5emVzIGFuZCByZXBvcnRzIHZ1bG5lcmFiaWxpdGllcyBmb3IgaW1hZ2VzLiBTY2FubmVyIHVzZXMgSFBBIHRvIHNjYWxlIHRoZSBudW1iZXIgb2YgcmVwbGljYXMgYmFzZWQgb24gd29ya2xvYWQuIHxcbnwgU2Nhbm5lciBEQiAgICAgICAgICAgICAgICAgICAgICAgfCBEZXBsb3ltZW50ICAgICAgfCBTY2FubmVyIERCIGlzIGEgY2FjaGUgZm9yIHZ1bG5lcmFiaWxpdHkgZGVmaW5pdGlvbnMgdG8gc2VydmUgdnVsbmVyYWJpbGl0eSBzY2FubmluZyB1c2UgY2FzZXMgdGhyb3VnaG91dCB0aGUgc29mdHdhcmUgZGV2ZWxvcG1lbnQgbGlmZSBjeWNsZS4gfFxuXG4jIyMgU2VjdXJlZCBDbHVzdGVyIFNlcnZpY2VzIEV4cGxhaW5lZFxuXG58IFNlcnZpY2UgICAgICAgICAgICAgICAgICAgICAgICAgIHwgRGVwbG95bWVudCBUeXBlIHwgRGVzY3JpcHRpb24gICAgIHxcbnwgOi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gfCA6LS0tLS0tLS0tLS0tLS0gfCA6LS0tLS0tLS0tLS0tLS0gfFxufCBTZW5zb3IgICAgICAgICAgICAgICAgICAgICAgICAgICB8IERlcGxveW1lbnQgICAgICB8IFNlbnNvciBhbmFseXplcyBhbmQgbW9uaXRvcnMgS3ViZXJuZXRlcyBpbiBzZWN1cmVkIGNsdXN0ZXJzLiB8XG58IENvbGxlY3RvciAgICAgICAgICAgICAgICAgICAgICAgIHwgRGFlbW9uU2V0ICAgICAgIHwgQW5hbHl6ZXMgYW5kIG1vbml0b3JzIGNvbnRhaW5lciBhY3Rpdml0eSBvbiBLdWJlcm5ldGVzIG5vZGVzLnxcbnwgQWRtaXNzaW9uIENvbnRyb2xsZXIgICAgICAgICAgICAgfCBEZXBsb3ltZW50ICAgICAgfCBWYWxpZGF0aW5nV2ViaG9va0NvbmZpZ3VyYXRpb24gZm9yIGVuZm9yY2luZyBwb2xpY2llcyBpbiB0aGUgZGVwbG95IGxpZmVjeWNsZS4gfFxuXG4jIyMgQ2VudHJhbCBDdXN0b20gUmVzb3VyY2VcblxuQ2VudHJhbCBTZXJ2aWNlcyBpcyB0aGUgY29uZmlndXJhdGlvbiB0ZW1wbGF0ZSBmb3IgUkhBQ1MgQ2VudHJhbCBkZXBsb3ltZW50LiBGb3IgYWxsIGN1c3RvbWl6YXRpb24gb3B0aW9ucywgcGxlYXNlIHZpc2l0IHRoZSBSSEFDUyBkb2N1bWVudGF0aW9uLlxuXG4jIyMgU2VjdXJlZENsdXN0ZXIgQ3VzdG9tIFJlc291cmNlXG5cblNlY3VyZWRDbHVzdGVyIGlzIHRoZSBjb25maWd1cmF0aW9uIHRlbXBsYXRlIGZvciB0aGUgUkhBQ1MgU2VjdXJlZCBDbHVzdGVyIHNlcnZpY2VzLlxuXG4jIyMjIEluc3RhbGxhdGlvbiBQcmVyZXF1aXNpdGVzXG5cbkJlZm9yZSBkZXBsb3lpbmcgYSBTZWN1cmVkQ2x1c3RlciByZXNvdXJjZSwgeW91IG5lZWQgdG8gY3JlYXRlIGEgY2x1c3RlciBpbml0IGJ1bmRsZSBzZWNyZXQuXG5cbi0gKipUaHJvdWdoIHRoZSBSSEFDUyBVSToqKiBUbyBjcmVhdGUgYSBjbHVzdGVyIGluaXQgYnVuZGxlIHNlY3JldCB0aHJvdWdoIHRoZSBSSEFDUyBVSSwgbmF2aWdhdGUgdG8gYFBsYXRmb3JtIENvbmZpZ3VyYXRpb24gXHUwMDNlIENsdXN0ZXJzYCwgYW5kIHRoZW4gY2xpY2sgYE1hbmFnZSBUb2tlbnNgIGluIHRoZSB0b3AtcmlnaHQgY29ybmVyLiBTZWxlY3QgYENsdXN0ZXIgSW5pdCBCdW5kbGVgLCBhbmQgY2xpY2sgYEdlbmVyYXRlIEJ1bmRsZWAuIFNlbGVjdCBgRG93bmxvYWQgS3ViZXJuZXRlcyBzZWNyZXRzIGZpbGVgLCBhbmQgc3RvcmUgdGhlIGZpbGUgdW5kZXIgYSBuYW1lIG9mIHlvdXIgY2hvaWNlIChmb3IgZXhhbXBsZSwgYGNsdXN0ZXItaW5pdC1zZWNyZXRzLnlhbWxgKS5cbi0gKipUaHJvdWdoIHRoZSBgcm94Y3RsYCBDTEk6KiogVG8gY3JlYXRlIGEgY2x1c3RlciBpbml0IGJ1bmRsZSBzZWNyZXQgdGhyb3VnaCB0aGUgYHJveGN0bGAgY29tbWFuZC1saW5lIGludGVyZmFjZSwgcnVuIGByb3hjdGwgY2VudHJhbCBpbml0LWJ1bmRsZXMgZ2VuZXJhdGUgXHUwMDNjbmFtZVx1MDAzZSAtLW91dHB1dC1zZWNyZXRzIFx1MDAzY2ZpbGUgbmFtZVx1MDAzZWAuIENob29zZSBhbnkgYG5hbWVgIGFuZCBgZmlsZSBuYW1lYCB0aGF0IHlvdSBsaWtlLlxuXG5SdW4gYG9jIHByb2plY3RgIGFuZCBjaGVjayB0aGF0IGl0IHJlcG9ydHMgdGhlIGNvcnJlY3QgbmFtZXNwYWNlIHdoZXJlIHlvdSBpbnRlbmQgdG8gZGVwbG95IFNlY3VyZWRDbHVzdGVyLiBJbiBjYXNlIHlvdSB3YW50IHRvIGluc3RhbGwgU2VjdXJlZENsdXN0ZXIgdG8gYSBkaWZmZXJlbnQgbmFtZXNwYWNlLCBzZWxlY3QgaXQgYnkgcnVubmluZyBgb2MgcHJvamVjdCBcdTAwM2NuYW1lc3BhY2VcdTAwM2VgLlxuVGhlbiwgcnVuIGBvYyBjcmVhdGUgLWYgaW5pdC1idW5kbGUueWFtbGAuIElmIHlvdSBoYXZlIGNob3NlbiBhIG5hbWUgb3RoZXIgdGhhbiBgaW5pdC1idW5kbGUueWFtbGAsIHNwZWNpZnkgdGhhdCBmaWxlIG5hbWUgaW5zdGVhZC5cblxuIyMjIyBSZXF1aXJlZCBGaWVsZHNcblxuVGhlIGZvbGxvd2luZyBhdHRyaWJ1dGVzIGFyZSByZXF1aXJlZCB0byBiZSBzcGVjaWZpZWQuIEZvciBhbGwgY3VzdG9taXphdGlvbiBvcHRpb25zLCBwbGVhc2UgdmlzaXQgdGhlIFJIQUNTIGRvY3VtZW50YXRpb24uXG5cbnwgUGFyYW1ldGVyICAgICAgICAgIHwgRGVzY3JpcHRpb24gICAgIHxcbnwgOi0tLS0tLS0tLS0tLS0tLS0tIHwgOi0tLS0tLS0tLS0tLS0tIHxcbnwgYGNsdXN0ZXJOYW1lYCAgICAgIHwgVGhlIG5hbWUgZ2l2ZW4gdG8gdGhpcyBzZWN1cmVkIGNsdXN0ZXIuIFRoZSBjbHVzdGVyIHdpbGwgYXBwZWFyIHdpdGggdGhpcyBuYW1lIGluIFJIQUNTIHVzZXIgaW50ZXJmYWNlLiB8XG58IGBjZW50cmFsRW5kcG9pbnRgICB8IFRoaXMgZmllbGQgc2hvdWxkIHNwZWNpZnkgdGhlIGFkZHJlc3Mgb2YgdGhlIENlbnRyYWwgZW5kcG9pbnQsIGluY2x1ZGluZyB0aGUgcG9ydCBudW1iZXIuIGBjZW50cmFsRW5kcG9pbnRgIG1heSBiZSBvbWl0dGVkIGlmIHRoaXMgU2VjdXJlZENsdXN0ZXIgQ3VzdG9tIFJlc291cmNlIGlzIGluIHRoZSBzYW1lIGNsdXN0ZXIgYW5kIG5hbWVzcGFjZSBhcyBDZW50cmFsLiB8XG4iLCJkaXNwbGF5TmFtZSI6IkFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHkgZm9yIEt1YmVybmV0ZXMiLCJpY29uIjpbeyJiYXNlNjRkYXRhIjoiaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVh3QUFBRjhDQVlBQUFETTV3REtBQUFBQ1hCSVdYTUFBRzY2QUFCdXVnSFczckVYQUFBZ0FFbEVRVlI0bk8zZHY0OGNSZjcvOFZlZkx2Yk81NVBiMitTMmRvaXgyQ2JsZEhkRGFPdE9uaEFMZ3JrSUNRS1dBQ1JuZXhJSXNwdlY1NFJEeGlCSW1VVTRaa1k0WjliT3Y4ejRINmh2VU4zcjJXVi9kRmRYZC9XUDUwTXE3WjJaN3FuWkg2K3BlVmQxZFdTTUVRQ2crLzRVdWdNQWdIb1ErQURRRXdRK0FQUUVnUThBUFVIZ0EwQlBFUGdBMEJNRVBnRDBCSUVQQUQzeDU5QWR3RmxSRkNXaCt3QjR0RExHckVKM0FsYkVsYmJWaUtJb2xoUkxHa29hYkgyVnBQMGduUUthNVRqOXVwYTAyUHJLbTBSRkNId1AwbEg1Y0t2dEJlMFEwQTFMMlRlQWhhU0ZNV1lldGp2dFIrQVhGRVhSUUZLeTFRaDNvRDVMU2ZPc0dXUFdRWHZUTWdSK0RsRVVEU1dOMGtiQUE4MnhsRFNUTkRQR0xFSjNwdWtJL0V1a0lUK1dEZm5kc0wwQmtNT0piUGhQQ2YrTEVmaGIwb25XY2RvSWVhQzlUaVJOWmNOL0ZiWXJ6VUhnUzRxaWFDd2I4cXllQWJybldEYjRwNkU3RWxwdkF6K2RmSjJJMFR6UUY5bW8vN0N2azcyOUMveTBiSk1GL1U3SXZnQUlZcU5Yd2I4SzI1VjY5U2J3MDZBL2tQUWdhRWNBTk1tUnBJTytCSC9uQTMrcmRQTng2TDRBYUt4UDFJTlNUNmNEUDRxaWlleW9udElOZ090c1pFZjdoNkU3VXBWT0JuNjYxY0ZVVE1ZQ0tPNUUwcmlMV3psMEt2RFQ4czFVMHQ4RGR3VkErejJSRGY3T2xIazZzeDkrV3I1WmliQUg0TWZmSmEzU2JPbUUxby93MDFIOVRGdzBCYUE2eDVKR2JSL3R0M3FFSDBYUlNIWlVUOWdEcU5LKzdHaC9GTG9qWmJReThLTW9Ha1JSZENqcEc3RUNCMEE5ZGlSOUUwWFJZVnBaYUozV2xYVFNDNmhtWXB0aUFPRXNaVXM4cTlBZEthSlZJL3owNDlSQ2hEMkFzUFlrTGRwVzRtbE40S2N6NVpSd0FEUkZWdUpwelNxZVZwUjBvaWlhaWoxd0FEVFhrVEZtSExvVDEybDA0TFBrRWtDTE5IN3BabU1EUHczN3VhalhBMmlQcGFTa3FhSGZ5QnArdWhKbkxzSWVRTHZzU1pvM2RkbG00MGI0NmMzRDUySnlGa0I3YldSSCtvMjZtWHFqUnZpRVBZQ08ySkVkNlE5RGQyUmJZMGI0NlVlZ2xRaDdBTjJ4a1JRM3BhYmZpQkgrMWdRdFlRK2dTN0tSZmlOcStzRURuOVU0QURxdU1STzV3UU5mN0lzRG9QdjJaTE11cUtDQm4xNUJ5MFZWQVBwZ1A4MjhZSUlGZnJyL0JOc2xBT2lUQnlIMzNnbXlTaWZkWWU2YjJwOFlBSnJoSFdOTTdTV2UyZ00vdllwMklWYmtBT2l2amFSaDNmdnAxMXJTMmRvTWpiQUgwR2M3a21aMXI5eXB1NFovSUZia0FJQmtzL0Nnemllc3JhUkQzUjRBTGxSYlBiK1d3R2ZiQkFDNFZHM2JMOVJWMHFGdUR3QVgyMUZORjJWVkh2anBtbE11cmdLQXkrM1hzVDYvMHBJT3BSd0F5SzN5MGs3VkkveXBDSHNBeUdOSE5qTXJVOWtJUDRxaVJOS1BsWndjQUxyckxXUE12SW9UVnhuNEswbTdsWndjQUxycnhCZ1RWM0hpU2tvNjZlUURZUThBeGUxV05ZSHJmWVRQUkMwQWxGYkpCRzRWSS95SkNIc0FLR05ITmt1OThqckNUM2ZDL00zYkNRR2czMTd6dWFPbTd4SCtnZWZ6QVVDZkhmZzhtYmNSUHFON0FLaUV0MUcrenhGK3NOdDJBVUNIZWN0V0x5TjhWdVlBUUdXOHJkanhOY0puWlE0QVZNUGJpaDFmSS95VnVOQUtBS3JpNWVyYjBpUDhLSXJHSXV3Qm9FcTdhZGFXNHFPa1U3b1RBSUJyamN1ZW9GUkpoNldZQUZDclVrczB5NDd3eHlXUEJ3RGtOeTV6Y05rUi9rclU3d0dnTHFVbWI1MUgrRkVVRFVYWUEwQ2RkdFBzZFZLbXBETXVjU3dBd00zWTlVRG5rZzdsSEFBSXdybXM0elRDcDV3REFNRTRsM1ZjU3pvangrTUFBT1U1WlRDQkR3RHQ0NVRCaFd2NDZjNll2N3M4R1FEQW0vOHB1b09teXdnL2NUZ0dBT0JYVXZRQUFoOEEyaWtwZWdDQkR3RHRsQlE5d0tXRzcrY211QUNBVW93eFVaSEhGeHJoUjFHVUZPb05BS0F5UlRPNWFFbW4wTWtCQUpVcWRBRlcwY0NQQ3o0ZUFGQ2RTZ1BmZVpjMkFJQjNoVEs1MEtRdEU3WUEwQ3hGSm01emovRFQyeGtDQUJxa1NEWVhLZW5rUGlrQW9EWngzZ2NXQ1h6cTl3RFFQTG16dVVqZ0R4dzZBZ0NvVnU1c1pvUVBBTzNHQ0I4QWVxS1NFVDRBb01WeXI4Tm5EVDY2SUVtU00vOS9QcDhINlFmZ1U5NjErSCt1dWlOQUtNUGg4TFFsU2FLOXZiMExIN2RjTGpXZno3VllMRTRiMEVXTThORUpnOEZBU1pLY2h2dHdPTlRPem83VHVUYWJqUmFMeGVtYndIdysxM3BkNkU1eVFLM3lqdkFKZkxSU2tpU253VDRjRHJXN3UxdnA4NTJjbkp5Ty91ZnpPYVVnTkFxQmo4N1lMc3NNaDhOTFN6TjFXeTZYWno0SlVBcENLQVErV2ltTzR6UGh2cisvSDdwTGhSd2ZINTk1RTFpdFZxRzdoQjRnOE5GNGc4SGdUTGduU2VKY2QyK3F6V1p6Wmk1Z3NWZ3dId0R2Q0h3MHpuYk52VW1sbWJwbHBhRHRPUUdnREFJZlFjVnhmQ2JnMjFhYXFWdFdDc3JlQUNnRm9RZ0NIN1h4dVNRU0ZrdERVUVNCajhxY0QvZXFsMFRDeXBhR2JyOEpBQktCRDAveVhxMktNTGhLR0JLQkR3Zlprc2dzM0ttN3Q5UHg4ZkdaTndIbUE3cVB3TWVWemkrSjdFdHA1dVRrNUxRVWtpUkpiMTd6OW9Rd1MwTzdoOERIR2VmRHZRK2xtZTJKejh1Q2J2dU5yMDhUenR0TFE3UHZEZHFMd08reHRsK3Q2c3JYMHNhK0xpbmxLdUgySXZCN2doRnFQU05VUGlGUkNtb3lBcitqem05RlFBMDZqTDdQZ1ZBS2FoWUN2Mk5HbzVFT0R3OTdFU3B0WFdYU3gxVk9KeWNubWt3bW1zMW1vYnZTYXdSK2gweW5VejE0OENCME55clI5UzJHbTdxMXMyOUhSMGNhajhlaHU5RmJCSDVIakVZamZmUE5ONkc3NFFWWGlscGR2Vkw1blhmZVlhUWZDSUhmRWF2VnFwV0J3RjR3K1hWbEw2S1RreFBGY1J5Nkc3MUU0SGZBY0RqVUw3LzhFcm9idWJEYm8xOXRYUnI2K3V1dmQ2NHMxd1o1QS8vUFZYY0U3cG82V3RwZXFkSG4wa3lWVnF1VnB0UHBtWC9iZmdObzZncXR3V0FRdWd1NEFvR1BLM0hIcHVZNGYvUDBQdHd4REg0UitBMFdJbGk1MnJJOTF1djFIOTRFK25xVk5mSWg4SHVzNjBzaSsyaTFXbW0xV3AxWkxkT1hwYUc0SG9IZkUrZXZWcVh1M2gvWnozMTdUbUI3SzQ0dUxRM0YxUWo4RGpxL0pKTFNETTY3ckJUVTlxV2h1SVl4SmxlVFpHajF0aVJKVEZIajhUaDR2Mm5kYU9QeHVQRHZYNUlrd2Z2ZHg1WTN4LzhrZEFvamVmakM3MUwzRVBnQTBCTUVQZ0QwQklFUEFEMUI0QU5BVHhENEFOQVRCRDRBOUFTQkR3QTlRZUFEUUU4UStBRFFFd1ErQVBRRWdROEFQVUhnQTBCUEVQZ0EwQk1FUGdEMEJJRVBBRDNCSGEvUUczZlNkanY5S2tsdlhQTFlsNUorbGJSSnZ6NUx2ejZ2dUk5QWxRaDhkTll0U1hjbHZaMSt2VkhnMkJ0NjlXYnc5dGEvdjVEMHM2UWZKSDN2b1k5QW5RaDhkTTU5MlpCKys3b0hPcmdwNlY3YVhzcUcvbVBaTndHZzZRaDhkTUtPcEhkbHcvNW1UYzk1UTYvQy82bHM4SDlkMDNNRExwaTBSZXM5bExTVTlJSHFDL3Z6M3BEMHVhU2ZaTXRIUUJNUitHaXR1N0pCLzZtSzFlZXJkRnZTdDVMK0t6dUhBRFFKZ1kvVzJaSDBtV3l3aGhyUlgrZHQyZEgrL2RBZEFiWVErR2lWTzVLK2s2M1hOOTBOMlRMUEY3SnZVa0JvQkQ1YTR5K3lZWDg3ZEVjS3VpZmJiMG84Q0kzQVJ5dmNsL1IvYWs2dHZxamJzaVdlTzljOUVLZ1FnWS9HdXk5YkdtbTdHN0lqZlVJZm9SRDRhTFN1aEgyRzBFZElYSGlGeHFvajdMTTljODY3Ykk4ZEg3TFFmMVBzellONkVmaG9wRHV5U3k5OWV5YTdIY0pUdmRvYzdUSzMwbjY4SVR0aDdITUo2QTNadGZwL3ZhWVBnRThFUGhwblJ6WU1mVTNRdnBEMGxXelFGeGxSUDAvYjk1SStsQTMvZDJYRDMwZmZic3UrcWIzbjRWeEFIdFR3MFRoZnlNOW8rb1drOXlYdFNmcFM1Y3NudjhxRzg1NmtSN0xsb0xMdWlZdXpVQjhDSDQzeUYvblo1ZktSYkkyOGlzM01ObHZuZityaGZKK0pOZnFvQjRHUDRPN0k3b3R6VjNaMFg4WUxTZnV5Z1Z4MWJmeTViQTMrbzVMbnVhSHlyeHZJZ3hvK2FuTlhkZ0wwanV5STF2Y1ZzODhVWmhMMFM5bjk4TCtUZTIzL0RkbnZEL3ZxbzBvRVBpcDFWN1pPN1d1aTh6S1BaU2RXUTYxNCtWWDJ6YVpNNkg4aE96OEFWSVdTRGlweFgzYnI0bTlsQTcvS3NIOG1PNWthZW5sakZ2cXVrN2szeFFRdXFrWGd3NnNzNkQ5WFBWc1haMldjcHNoQzM5VUh2am9DWElEQWh4ZTNaTXNaZFFXOVpFZlNUUmpabi9lcjNDZHliNG83WnFFNkJENUt1eSs3RTJTVjJ4RmM1SkV1M2hhaENiNlU5SVBqc2ZkOGRnVFlRdUNqbEM5a1IvVjFiMXY4VkRaVW0reER1ZFh6NzRrYnBxQWFCRDZjN01pV2NFS05SaDhGZXQ0aW5zdjlUZWt2UGpzQ3BBaDhGSmFGZmQwbG5NeFR0V2U5K2xkeUcrWDd1Tm9ZT0kvQVIyR2hielBZaHRGOVppTzM3UjJZdUVVVkNId1U4b1hDaHYxanRXZDBuL25LNFpnYjRpWXA4SS9BUjI0UEZYWUZ5V08xY3l2aDU3TFhDeFJGNE1NM3RsWkFMbmRVelVWQnoyVExIdG5OU083SXpoRnN6dy84SUR0S2J0dklmdHYzS3Y3SktPUW5LWFFUZ1k5Y3ZwQ2ZwWmN2WmNQdmgvUnJYN2hzbzh3SUg3NFIrTGpXZlpVZmJiNlVYYUw0bFpwM1pXd2RYRDZkc0JZZnZsSER4NVYyVlA3ZXNrOWxieFpTeHg3MVRmYWk0T052aXh1andDOENIMWQ2VitWS09ZOWtOeE1yZTN2QkxuRDVIaXhrbDhHeVRCTStFUGk0VXBudGV0OVh1OWJNTjlVYnN0dE1meUhLUENpSHdNZWw3c3Q5NTh1UFZNMzlaUHZzbnV6VzAyeTdBRmNFUGk3bGVubi9EMnIreG1adGRVUFMvNm44dkFyNmljREhoWGJrRnZqWkh2V28xcnZpeHVjb2pzREhoVnduQ1VQZVY3WnY3b25RUnpFRVBpN2tzaFBtQzFHM3Ywb1ZWd3JmazkzeUFzaUR3TWVGWEViNGhQM1ZIbGQwM2svRnNrM2tRK0RqUWk1WDFsWVZhRjN4WEc0N1orYkJrazNrUWVEakQxeXU3bndoTHE3SzQwTlY4OFo0VTNZaUY3Z0tnWTgvY0FuOHB0NU12SW5lay9RM3VkL2svRElQeFNnZlZ5UHc0UVdCWDh6UGt2NGg2WDhsRFNYOVUrVkgvamZFS0I5WEkvQ0J3SjdMYmhYOW5tejR1MnlsbkNtekZRYTZqOEFIR3VTNTdHWnpycVA5bTJMckJWeU93QWNhNkQyNWg3N0xOUlRvQndJZnZiQWpPNm41bmFUL2w3YnYxT3lKemc5VmZBOTlpVFg1dUJ5QkR5K2FmRHUrKzdLN1RINnFzNlBmTjlKL1c2cVp0ZStOM0xhWDVsNjR1QXlCano5d1dVL2Z4TUMvSytrblNaL3I2cHU0M0VnZjg1T2FOenIrV296eTRRK0Jqejl3Q2Z5YmFrN28zNUs5OHZSYkZSdnQzdGFyRzQwMDZkYUNWZXpCZzM0aThIRWhsNldCOTd6M29wZ2RTUi9JanRUTDlPVmVlbzRQMUl6NlBsY3d3eGNDSHhkeXVaRHF2c0lGNUgyOUN1a3k5K0ROM05Dck40OG0xdmNCRndRK0x1UXl3Zzl4cGVjZDJkVTJuOHY5ZG94WHVabWUrenMxcDJRRnVDTHdjYUh2WmU5ZVZkUkQxVlAvM3BHdHRSK3JublhuYjZUUEZXSlh5aWFVbGRBTkJENHU5YjNETVRjay9kZDNSODc1UUhZcFpZZzVnK3hHNGgvVStKeGNPUXRmQ0h4Y3l2Vkt6OXVxNXRaN2QvVXFiSDNVNlYxbDlmMmxxbC8rZUZkdXBTcFc5dUFpQkQ0dTliUGMxb0JMZnUrM2VrdTJodjZ0cXFuVHU3b3AyNmZ2VkYwWnkrV1RoT3ZQRE4xSDRPTktMbGQ2WnJMUWQ2MUI3MGo2VE5KQ3pkNGY1ZzNaUG40bXYvWDJoM0o3M1l6dWNSa0NIMWR5dmRJemMwOXVLMXdleXBaTTJyUy8rN3V5ZmZaeFUvSDdzdHMrdVBCOVl4VjBCNEdQYTcxWDh2amJzcUdmZC9UN2hXelloYXpUdTdvaDIzZlhjbGIycWVaengrTmZ5bTJ5SGYxQTRPTmFQNnY4cVBHR2JKQmQ1NzZxWFgzelZQWW1JMlZ2TkhLZGV5cDJ3VmEybStkUEt2ZXBockRIVlFoODVQS2UzTmJsYjd1bjYwZjVWUzEzZkNGN0g5bS95bTVWa04xbzVHK3FicEl6NzJ1NUl4djBuNnI4cEhTWk9SZDBINEdQWERheTkyQXQ2NnBhdnVzU3hLdThsUFNScEQxZFBKbjVjL3JmUGxMNU43VHpidXI2Wlp2WkNpUWZyL3V4MkhjSFZ5UHdrZHZQc3NIWUZvOWx3L3pMSEkvOU1uMXMyUnVKRi9XWi9NeFZ2SlM5WVFwd0ZRSWZoWHlwK2tPeHFLZVM5bVhMVUpzQ3gyM1NZL1pWYlgwL2MwdlMyNTdPVmZTMW9wOElmQlJXNW42clZaWWNYa2o2cDJ4dDNtVzN6OHl2NlRuK3FXb3ZZdkoxc2Raak1WbUxmQWg4T0hFSi9hcHF6QzlsSnl2MzVEZjR2ay9QK1VqKzYvdStQRlA1WmJQb0R3SWZ6dDZUOUg3T3gyYWg3TnNQa3Q2czZOeVpSK2x6Tk8yQ3BtZXluMFNBdkFqOGpoa09oN1UrMzlleU5lK3JTaDh2OUdvNXBHOWZWWFRlODU2bnorVlRtYkxURDdMZjB5cnI5a21TVkhoMmhFRGdkOHhnTUtqOU9YK1ZIUUYvSkR2WitUSnRUMlUvQWJ5cGN1SFdWUnU1ellVOGtsMGl5eVF0aXZwejZBNmdHemF5SzNqeUxJSEVLeC9LN25lZloybm1DOWt5R3B1andSVWpmQ0Nnald4cDV0a1ZqM2toKzBucHNvdkhnTHdZNFhkTWlKSU95c2xLWXZkbDErWHZiUDM3TTlsNWtoRGlPQTcwektnS2dkOWdpOFdpOERGMVQ5ckNuNjhWTHR3djRoTDRMcit6cUE4bG5RWmJyOWVodXdBVXd1OXNzeEg0SGNQSGNQakNwOFh1SWZBYmJybGNGbnI4N3U1dVJUMUIzK3pzRkx0aFk5SGZWZFNQd0c4NGw0L0lUTnlpTEpkUGlwUnptby9BYjdqVmFsWDRHRDZLb3l5WHdIZjVYVVc5Q1B5R2Mva2pvbzZQc2x3R0RRUis4eEg0RGVleXpJM0FSMWtzeWV3bUFyL2hYT3FpYkhxRnNseEcrTlR3bTQvQWI3ajVmRjc0R0ViNEtNc2w4RjErVjFFdkFyOEZUazVPQ2oxK2QzZTNOeXQxM3RXcnJRaXF0Sk0rVngvRWNWeDRTV2JSMzFHRVFlQzNnRXR0dEM5bG5iY2xMU1U5clBBNUhxYlA0ZXYrczAzSGhHMTNFZmd0d0o0NlY3c2g2VlBaVUw3cjhieDMwM04rcW56YkYzZUZ5MkNCY2s0N0VQZ3R3QWcvbjV1U3ZwWDBuY3JkSVB4V2VvNXYwM1AyamN0Z2dSVTY3UkFaWS9JOU1JcnlQUkRlRFFZRC9mNzc3NFdQaTZLb2d0NVU1NjVzeVByeVNQYTJoSG52REpYVjZUL3cySWUvcVgxNzJPZk5oRzJ2dmZZYVpaMkFqREc1L3RnWjRiZkFlcjEybWhUcjR5aC8yd2V5SlpuN09SNTdQMzJzejdCdm85Rm9WUGlZazVNVHdyNGxDUHlXY0ttUnV2enhodlN6N0wxd2Zib2g2WE5KUCtuaSt2N2Q5TDk5THY5MStwZHEzK2plWlpCQU9hYzlDUHlXY0FuOE5vN3dIMVYwM3R1eTVhTC95dGJvYjZYLys5djB2MVdocXRkU0pkYmZkeHMxL0phSTQxaS8vZlpiNGVQYVdGdjlRdEs5Q3MrZmZZcW9jdVhOWTlrYmpyY045ZnQyb29iZk1hdlZ5cW1PMzdheWptU0Q4aVA1TCs5a2JxaTZzSDhwMi9jMmhyMVVmRTk3NnZmdFF1QzN5R3cySzN6TWVEejIzNUVhZkNscFQzYWszQmFQWmZ2OFplaU9sRkMwSGs4NXAxMEkvQlp4K2VQYTI5dHI3ZDQ2RzltUjhyNmtwNEg3Y3BXbnNuMThUL21YZ0RiVmREcXQ5UEVJaThCdmtkbHNwczJtZUtTMHNheXo3VmRKZjVYMHZxUVhnZnV5N1lWc24vNHEyOGN1bU0vbk9qbzZ5dlhZbzZNalJ2Z3RRK0MzakV0Wlp6S1pWTkNUK24wdDZVM1oxUzlWMWZmemVKbjI0YzIwVDEwekhvK3ZEZjJqbzZQV2xndjdqTUJ2R1pmQTM5M2RiZVVTell0czlDcHNROVQzSCt2Vm0wN2J5emRYR1kvSGV1ZWRkL1RreVpNei8vN2t5Uk85OWRaYmhIMUxzU3l6aGRicmRlSHRhN3M2SXJzcjZUTlZ0NVkrODB6U2gycmZoVlRvQjVabGRwakxLUC9CZ3dlZDNDUC9aOWtSOS91cXBzenpNajMzbXlMczBYNEVmZ3U1cm96b1NpMy9JbC9MTG9uMGVYWHJvL1NjWGF6VG81OG82YlRVYXJYUzd1NXVvV00ybTQzaU9PNzh2VWR2eVpaNVhHOVk4b05zK2VhNXR4NEIxYUtrMDNHSGg0ZUZqOW5aMmVuMEtEL3pYTkkvWkxjbUxyS004MFY2ekQ5RTJLT2JHT0czbE9zZStYMFo1Vzk3S0x2dDhXWGJLV1RMTE50OGhTejZqUkYreDYzWDY5d1h5R3pyeXloL1c3Wk53eVBaMVRhWlozcFZweWZzMFFlTThGdk1kUWZOUG83eWdTNWpoTjhEcTlWS3g4ZkhoWS9iMmRseG1nTUEwRzZNOEZzdVNSTDkrT09QVHNlKy92cnIzSzBJNkFCRytEMHhuOCtkUnZtUzIwb2ZBTzFGNEhmQXdjR0IwM0g3Ky91OW04QUYrb3lTVGtmTTUzUHQ3KzhYUG02ejJXZzRISExYSXFERjhwWjBDUHlPR0E2SCt1V1hYNXlPUFQ0KzdzeHVtbDB3R28yVUpJblREY1h6V3ExV21zL25tczFtck5icWdMeUJMMk5NcmliSjBKcmRwdE9wY1hWd2NCQzgvMzF2dytIUUxCWUw1NStoaS9WNmJjYmpjZkRYVGl2WFRONGN6LzNBQnJ3bzJ0VnRNQmlZOVhydC9NZWZKRW53MTlEWE5od09TLzNzeWlMMDI5ME1nZC9QTnBsTW5QL28xK3UxR1F3R3dWOURIOXQ4UG5mK3Vma1N4M0h3N3dQTnJSa0N2Nyt0VEZsZ3NWZ0U3My9mMm5BNGRQNTUrWFI0ZUJqOGUwRnpheVpuanJNc3M0UEszTmxxYjIvUGViOTl1R25LVGVhWnVPOCtBcitERm91RlB2bmtFK2ZqSHp4NDRMeTJIKzIxdDdjWHVndW9HSUhmVVFjSEIxb3VsODdIZi96eHg1MjhCeTdRWndSK2g1VU43UC84NXorRWZnMjQ2QTIxeVZ2c1Z3TW1KbWpGVzVsVk94bVc3RlhieWk2bjlTbjA5NExtMWd5cmRHaFptODFtcFlPQTBLKzJqY2ZqMGo4akgwSi9IMmh1elJENHRLd05CZ012VjNBUyt0VzJKb1IrNk84QnphMFpBcCsyM1h4ZHlUbWRUb08vbGk2M0pFbThmQ0p6RmZyMTA5eWFJZkJwNTl0b05QSVNDclBaakN0eUEvOGNxNnI1aDM1dE5MZG1DSHphUmMxWDJXQ3hXSmpoY0JqODlmU3RIUndjZVBuNVhTYjA2Nk81TlVQZzB5NXJoNGVIWHNKaHZWNmIwV2dVL1BYMG9RMEdnMXIyMnduOU9tbHV6UkQ0dEt0YW1hMlV6NXRPcDVSNEtteEprdFMyYkRQMGE2VzVOVVBnMDY1clBrTi90VnF4dmJMbk5oZ012SDBheXl2MGE2YTVOVVBnMC9JMG42RnZqTjF4a2RGKytUWWFqY3hxdGZMNnM4a2o5T3VtdVRWRDROUHlOdCtoejEyVTNGc2N4eXpMcEJWdWhzQ25GV20rUTk4WVkrYnpPV1dlbkcwd0dGUytBaWVQME44SG1sc3pCRDZ0YUt1cVhqeWRUcm1iMGhYdDRPQ0F2WFJvcFpvaDhHa3VyY3JMK3duK1YyMHdHSmpKWkZKWm5YNjFXam1kTy9UM2hlYldESUZQYzIxVkx3UHNjNmtuanVQS1IvU0x4Y0o1M1g3bzd3L05yUmtDbjFhbXhYSHNaY08xcTZ4V0t6T1pUSHF4cWlkSmtrcm1TYzdidmk4dGdkK2ZaZ2g4V3RrMkdBeHFDU2xqYkxtbmExZnRacVA1T3BaWFhuVFZNNEhmbjJZSWZKcXZOaDZQYTV0VVhLL1hyUTcvT0k3TlpES3AvTlBSdHNWaWNlSGNDSUhmbjJZSWZKclBWa2VKNTd6MWVtMW1zNW1aVENhTjNhaHRNQmlZMFdoa0RnOFBnMXdvZFhCd2NHbmZDUHhldGRqa3lQSEkvb3l2RjBWUnZnZWkwdzRPRHZUeHh4OEhlZTdOWnFQNWZLN0ZZbkg2ZGIxZTE5cUg0WEI0MnBJazBkN2VYcTNQbjFrdWx4cVB4MW9zRnBjK1pqNmZhMzkvdjlCNW95Z3EyelVFWUl6SjlZTWo4RkZZSE1lYVRxZUZ3NlFLSnljbldxMVdtcy9ua25UNnRjeWJ3WEE0MUdBd1VCekhpdU5ZdytGUWNSd0hDL2R0bTgxR2g0ZUhPamc0dVBheEJINS9FUGlvM0hnODF1SGhvWFoyZGtKMzVVclptOEpWbXZEbWRaMG5UNTVvTXBsYysxb3lSUU4vdVZ4cU9CdzY5ZzRoNVExOGF2aTBVcTBwV3dKMG1ldE9wSlBKcE5EemJDL3BwTFdyR1NadGFYVzJPSTVyVzhMWkY2dlZxdFFtZElQQklQZnFxdlY2elZYUUxXNkd3S2VGYUFSL2VXV0RmcnZsdlhrOXU1dTJ1NWtLQW44ZStrWFIydE1JL3VKOEJ2MTJHdzZIbHk0WjVjWTFuV2h6a3pQSGkwemF6aVh0NTNvd2tJcmpXT1B4V0pQSnBQR1R1NkVjSHgvcjhQQlFzOW1zMHVjWmpVWm5KbVVYaTBYbHo0bGFIQnRqa2x5UHpQdk9JR21tOE85a3RCYTM4WGhjKzhWYlRiVmVyODNoNFNGMWM1cVBOak1WbEhRT0d2RENhQjFvY1J3SHV6STF0TmxzUnIyYzVyc2RtQW9DZjlLQUYwYnJXQnNPaDUwUC95emsrN0FyS0MxSW01Z0thdmlKcEI5elBSaHdNQndPTlJxTmxDUkpLeTZFdXN6SnlZbm04N2xtczVubTgzbnQyeitnZDk0eXhzenpQTEJJNE1lU2ZuUHVFbERBWURCUWtpU25lOVkwK1EwZ0MvanRQWDZBR3IxbWpGbmxlV0R1d0pmWVhnRmhiVzljbHJXNlYvNHNsMHV0VnF1Z0c3Z0IyMHplYlJWVVBQQVhrc0x2SUFWc1NaSkVnOEhnZE1saHR2bVpaRDhwNU5uMGJMUFpuQm1aWjBHK1dxM09OS0JobHNhWTNCc2dGUTM4cWFRSERwMENBUGgzWkl3WjUzM3dud3Flbk9Ja0FEUkhvVXdtOEFHZ3ZRcGxjcUdTanNURUxRQTBSWkVKVzZuNENGK1NsZzdIQUFEOEtwekZMb0UvZHpnR0FPRFh2T2dCQkQ0QXROTzg2QUV1TmZ5QnBOK0xQaEVBd0t2L01jWVV1dXF2OEFnL2ZRTHErQUFRenJKbzJFdHVKUjNKN28wUEFBakRLWU1KZkFCb0g2Y01MbHpEUHowd2lsYVNkcDBPQmdDNE9qSEd4QzRIdW83d0pVYjVBQkNDYy9hV0NmeHBpV01CQUc2bXJnYzZsM1FreWpvQVVEUG5jbzVVYm9Rdk1jb0hnRHBOeXh4Y2RvUWZpOXNlQWtCZGN0L084Q0tsUnZqcEV4K1hPUWNBSUpmak1tRXZsUy9wU0pSMUFLQU8wN0luS0ZYU09UMEprN2NBVUtWU2s3VVpIeU44aVZFK0FGUnA2dU1rdmtiNEEwa3JTVHVsVHdZQTJMYVJGTHRzbG5hZWx4RisycEdwajNNQkFNNlkrZ2g3eWRNSVgyS0pKZ0JVcE5SU3pHMithdmpaRXMwalgrY0RBT2pJVjloTEhrZjRFcU44QVBETTIraGU4ampDbDA1SCtaLzRQQ2NBOU5RblBzTmU4anpDbDFpeEF3QWVlRnVaczgzckNGODZYYkZ6NFB1OEFOQWpCNzdEWHFwZ2hIOTZZcTYrQlFBWFhxNnF2WWozRWY2V2NZWG5Cb0N1R2xkMTRzb0MzeGd6bC9Ta3F2TURRQWM5U2JPekVwV1ZkQ1FtY0FHZ2dFb21hcmRWV2RKaEFoY0E4cXRrb25aYnBTUDgweWVKb3Jtay9jcWZDQURhNmRnWWsxVDlKSFVGUHFVZEFMaFk1YVdjVEtVbG5VejZRc1oxUEJjQXRNeTRqckNYYWdwOFNUTEd6Q1Q5dTY3bkE0QVcrSGVhamJXb3BhUnorbVMydERPWHRGZmJrd0pBTXkwbEpYV043cVdhQTE4NjNWRnpJZXI1QVBwckkybm9lM08wNjlSVzBzbWtMM0JjOS9NQ1FJT002dzU3S1VEZ1M2ZjEvSCtGZUc0QUNPeGZkZGJ0dDlWZTBqbno1RkUwbGZRZ1dBY0FvRjVIeHBoeHFDY1BHdmdTRjJVQjZJMWFMcTY2U3BDU3pqa2oyZGxxQU9pcXBXeldCUlU4OE5NbFNZa0lmUURkVlB2eXk4c0VMK2xrMkg0QlFBZlZ0bTFDSHNGSCtKbXRrZjRtY0ZjQXdJZU5Hakt5enpRbThDWEpHTE1Rb1ErZy9iS3dYNFR1eUxaR0JiNTBHdnF4cU9rRGFLZWxiQm1uVVdFdk5URHdKU1p5QWJSV1l5Wm9MOUxJd0pmT2hQNXg0SzRBUUI3SGFuRFlTdzBPZk1tR2ZucWh3bEhvdmdEQUZZNk1NWTBPZTZuaGdaOUpMMFZtN3gwQVRmU3ZrTnNsRk5HWWRmaDVSRkUwa2pRVmEvVUJoTGVSM2ZVeXlFWm9MbG9WK05McGZ2b3pjUk1WQU9Fc0pZMUNiSEZjUml0S090dlNiM0FpYnBjSUlJeC95MDdPcmtKM3BLaldqZkMzVWVJQlVLUFdsWERPYTNYZ1M2ZDc4TXpFRnNzQXFuTXNXOEpwOUNxYzY3U3VwSFBlMXRMTmY0a3RHUUQ0dFpGZGhkUDRKWmQ1dEg2RXZ5MGQ3VThsL1Qxd1Z3QzAzeFBaRWs3cmd6N1RxY0RQUkZHVXlBYi9idGllQUdpaEU5bWduNGZ1aUcrdEwrbGN4Qmd6TjhiRW9zd0RJTCtzZkJOM01leWxqbzd3dDZWbG5vbWtqMFAzQlVCamZTTHBzRXZsbTR0MFB2QXo2UVZiQjVJZUJPMElnQ1k1a25UUXhqWDFMbm9UK0prMCtDZVN4bUw5UHRCSEc5azV2c08rQkgybWQ0R2YyU3IxakhYMzBDa0FBQUR2U1VSQlZNWGtMdEFISjNvVjlKMHUzVnltdDRHL0xZcWlzV3p3Yy9FVzBEM0hrcWJHbUdub2pvUkc0RzlKeXoxak1lb0gyaTRielUvN1ZyYTVDb0YvaVNpS2hyTEJQeExoRDdUQmlldzJLOU1tM2srMkNRajhITkx3SDZXTmJabUI1bGpLaHZ5TWtMOGVnVjlRT3RtYmJEWGVBSUQ2TENYTnM5Ylh5VmRYQkw0SDZWWU93NjNHbXdCUTNsTFNJbXRkdmZxMVRnUitSZElKNEZqMkRXQ3c5VlZpTlJBZzJkVXprclNXRGZYczY0cUoxbW9RK0EyeTlTWUJkTVdDc2t0ekVQZ0EwQk9kM0MwVEFQQkhCRDRBOUFTQkR3QTlRZUFEUUU4UStBRFFFd1ErQVBRRWdROEFQVUhnQTBCUC9IOWY1Nk5MT0VWYmJnQUFBQUJKUlU1RXJrSmdnZz09IiwibWVkaWF0eXBlIjoiaW1hZ2UvcG5nIn1dLCJpbnN0YWxsIjp7InNwZWMiOnsiY2x1c3RlclBlcm1pc3Npb25zIjpbeyJydWxlcyI6W3siYXBpR3JvdXBzIjpbIioiXSwicmVzb3VyY2VzIjpbIioiXSwidmVyYnMiOlsiKiJdfSx7ImFwaUdyb3VwcyI6WyJwbGF0Zm9ybS5zdGFja3JveC5pbyJdLCJyZXNvdXJjZXMiOlsiY2VudHJhbHMiLCJzZWN1cmVkY2x1c3RlcnMiXSwidmVyYnMiOlsiY3JlYXRlIiwiZGVsZXRlIiwiZ2V0IiwibGlzdCIsInBhdGNoIiwidXBkYXRlIiwid2F0Y2giXX0seyJhcGlHcm91cHMiOlsicGxhdGZvcm0uc3RhY2tyb3guaW8iXSwicmVzb3VyY2VzIjpbImNlbnRyYWxzL2ZpbmFsaXplcnMiLCJzZWN1cmVkY2x1c3RlcnMvZmluYWxpemVycyJdLCJ2ZXJicyI6WyJ1cGRhdGUiXX0seyJhcGlHcm91cHMiOlsicGxhdGZvcm0uc3RhY2tyb3guaW8iXSwicmVzb3VyY2VzIjpbImNlbnRyYWxzL3N0YXR1cyIsInNlY3VyZWRjbHVzdGVycy9zdGF0dXMiXSwidmVyYnMiOlsiZ2V0IiwicGF0Y2giLCJ1cGRhdGUiXX0seyJhcGlHcm91cHMiOlsiYXV0aGVudGljYXRpb24uazhzLmlvIl0sInJlc291cmNlcyI6WyJ0b2tlbnJldmlld3MiXSwidmVyYnMiOlsiY3JlYXRlIl19LHsiYXBpR3JvdXBzIjpbImF1dGhvcml6YXRpb24uazhzLmlvIl0sInJlc291cmNlcyI6WyJzdWJqZWN0YWNjZXNzcmV2aWV3cyJdLCJ2ZXJicyI6WyJjcmVhdGUiXX1dLCJzZXJ2aWNlQWNjb3VudE5hbWUiOiJyaGFjcy1vcGVyYXRvci1jb250cm9sbGVyLW1hbmFnZXIifV0sImRlcGxveW1lbnRzIjpbeyJsYWJlbCI6eyJhcHAiOiJyaGFjcy1vcGVyYXRvciIsImNvbnRyb2wtcGxhbmUiOiJjb250cm9sbGVyLW1hbmFnZXIifSwibmFtZSI6InJoYWNzLW9wZXJhdG9yLWNvbnRyb2xsZXItbWFuYWdlciIsInNwZWMiOnsicmVwbGljYXMiOjEsInNlbGVjdG9yIjp7Im1hdGNoTGFiZWxzIjp7ImFwcCI6InJoYWNzLW9wZXJhdG9yIiwiY29udHJvbC1wbGFuZSI6ImNvbnRyb2xsZXItbWFuYWdlciJ9fSwic3RyYXRlZ3kiOnt9LCJ0ZW1wbGF0ZSI6eyJtZXRhZGF0YSI6eyJhbm5vdGF0aW9ucyI6eyJrdWJlY3RsLmt1YmVybmV0ZXMuaW8vZGVmYXVsdC1jb250YWluZXIiOiJtYW5hZ2VyIn0sImxhYmVscyI6eyJhcHAiOiJyaGFjcy1vcGVyYXRvciIsImNvbnRyb2wtcGxhbmUiOiJjb250cm9sbGVyLW1hbmFnZXIifX0sInNwZWMiOnsiY29udGFpbmVycyI6W3siYXJncyI6WyItLWhlYWx0aC1wcm9iZS1iaW5kLWFkZHJlc3M9OjgwODEiLCItLW1ldHJpY3MtYmluZC1hZGRyZXNzPTAuMC4wLjA6ODQ0MyIsIi0tbGVhZGVyLWVsZWN0Il0sImVudiI6W3sibmFtZSI6IlJFTEFURURfSU1BR0VfTUFJTiIsInZhbHVlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3MtbWFpbi1yaGVsOEBzaGEyNTY6YTYzNjU2MzczYjQwYWFlODg2YjRkZDA4NzU5MGMwYjEzNzA3YjNkNjgwNjJlYTdlZTU2MGJmYWY5NzM3OTE5YyJ9LHsibmFtZSI6IlJFTEFURURfSU1BR0VfU0NBTk5FUiIsInZhbHVlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3Mtc2Nhbm5lci1yaGVsOEBzaGEyNTY6Y2Q3N2E2NjJiZGNlMjM0NDNlZTRlZjk2YjI3M2U5ZTNhOTAwOTM3OTkyMWE2YTVmNzVmMDAwNzZlZjI0MzUzZiJ9LHsibmFtZSI6IlJFTEFURURfSU1BR0VfU0NBTk5FUl9TTElNIiwidmFsdWUiOiJyZWdpc3RyeS5yZWRoYXQuaW8vYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS9yaGFjcy1zY2FubmVyLXNsaW0tcmhlbDhAc2hhMjU2OmRlYmFkNjg3NDI1ODQzMWIyM2M5YTkzOTQzYjU2ZDQ2ODZmMTUwYzJhOTFlZjJiZGVkODczMWJjY2E4N2M1MGMifSx7Im5hbWUiOiJSRUxBVEVEX0lNQUdFX1NDQU5ORVJfREIiLCJ2YWx1ZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLXNjYW5uZXItZGItcmhlbDhAc2hhMjU2OjhjZjRlOGJiNDJkMjc0MTM5NjY1ZjVjNTdmODJiODFjNjVhNDc4OThmZjQzZGUwNDA3ZjI2NmFiMDc2NzcwMWMifSx7Im5hbWUiOiJSRUxBVEVEX0lNQUdFX1NDQU5ORVJfREJfU0xJTSIsInZhbHVlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3Mtc2Nhbm5lci1kYi1zbGltLXJoZWw4QHNoYTI1NjpiNDJhMDk2ZDc1NTQzZjAyNTA3NjZlMjg5YzY3MDdhZWRjODEzZDRkMDM1MzcwNWNhZTVmMGM1ZTNjYWY3MzA1In0seyJuYW1lIjoiUkVMQVRFRF9JTUFHRV9DT0xMRUNUT1IiLCJ2YWx1ZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLWNvbGxlY3Rvci1yaGVsOEBzaGEyNTY6YWJhMTUzNzA0OWJhMDFmMzFiNGY2MzRlYzgzYzRlZDVhZDA1Mzc4M2RlMDcxMGYwZTNlY2M5NTc2NjVjNjc5OCJ9LHsibmFtZSI6IlJFTEFURURfSU1BR0VfUk9YQ1RMIiwidmFsdWUiOiJyZWdpc3RyeS5yZWRoYXQuaW8vYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS9yaGFjcy1yb3hjdGwtcmhlbDhAc2hhMjU2OmRiOWVjMzkxYjhlMDQzYWQxYTAwY2M4Y2M1YjkxZGNjZTM4MWQ0Yjk1MTJlZTYxMDJiMzg5NmMxODVlMWI2NmUifSx7Im5hbWUiOiJSRUxBVEVEX0lNQUdFX0NFTlRSQUxfREIiLCJ2YWx1ZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLWNlbnRyYWwtZGItcmhlbDhAc2hhMjU2OjNkNDU1MDA0YTQ2N2U2MGNjZTNlZmE4ZTliODAwMDdiMDRjMjAwZGVkZDdjYTY1NjBiZTgwZTkzNTRiNzkyYTEifSx7Im5hbWUiOiJSRUxBVEVEX0lNQUdFX1NDQU5ORVJfVjRfREIiLCJ2YWx1ZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLXNjYW5uZXItdjQtZGItcmhlbDhAc2hhMjU2OmJjMjlmNTIyYWZiNzhmYjc1NmMyZDk5YWZmMGQ3MzM4Mzc1MTlhNWZlYzNhNTQ2ZmVhMWU4ZWE4YmQ1YTNhYTYifSx7Im5hbWUiOiJSRUxBVEVEX0lNQUdFX1NDQU5ORVJfVjQiLCJ2YWx1ZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLXNjYW5uZXItdjQtcmhlbDhAc2hhMjU2OmY4MTE5NTRiMmMyMzdmYWNhMzQ0YTk3NTM4OGI3NjQ4NWU5ZWRkZmNlNjcxOGM5ZDRkZDhjMTNlZjVhMDlmZmMifSx7Im5hbWUiOiJNRU1PUllfTElNSVRfQllURVMiLCJ2YWx1ZUZyb20iOnsicmVzb3VyY2VGaWVsZFJlZiI6eyJjb250YWluZXJOYW1lIjoibWFuYWdlciIsImRpdmlzb3IiOiIwIiwicmVzb3VyY2UiOiJsaW1pdHMubWVtb3J5In19fV0sImltYWdlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3MtcmhlbDgtb3BlcmF0b3JAc2hhMjU2OmU0YzY5MDBiNzJhNTU2YTRkM2UxOTc4ZjMxNzM0YmMwMGIwMTE2NGVmMmM4YzE1NGFlZWJmYjJiMjY2ZjhkMmEiLCJsaXZlbmVzc1Byb2JlIjp7Imh0dHBHZXQiOnsicGF0aCI6Ii9oZWFsdGh6IiwicG9ydCI6ODA4MX0sImluaXRpYWxEZWxheVNlY29uZHMiOjE1LCJwZXJpb2RTZWNvbmRzIjoyMH0sIm5hbWUiOiJtYW5hZ2VyIiwicG9ydHMiOlt7ImNvbnRhaW5lclBvcnQiOjg0NDMsIm5hbWUiOiJodHRwcyIsInByb3RvY29sIjoiVENQIn1dLCJyZWFkaW5lc3NQcm9iZSI6eyJodHRwR2V0Ijp7InBhdGgiOiIvcmVhZHl6IiwicG9ydCI6ODA4MX0sImluaXRpYWxEZWxheVNlY29uZHMiOjUsInBlcmlvZFNlY29uZHMiOjEwfSwicmVzb3VyY2VzIjp7ImxpbWl0cyI6eyJjcHUiOiIyMDBtIiwibWVtb3J5IjoiMUdpIn0sInJlcXVlc3RzIjp7ImNwdSI6IjEwMG0iLCJtZW1vcnkiOiIyMDBNaSJ9fSwic2VjdXJpdHlDb250ZXh0Ijp7ImFsbG93UHJpdmlsZWdlRXNjYWxhdGlvbiI6ZmFsc2UsImNhcGFiaWxpdGllcyI6eyJkcm9wIjpbIkFMTCJdfX19XSwic2VjdXJpdHlDb250ZXh0Ijp7InJ1bkFzTm9uUm9vdCI6dHJ1ZX0sInNlcnZpY2VBY2NvdW50TmFtZSI6InJoYWNzLW9wZXJhdG9yLWNvbnRyb2xsZXItbWFuYWdlciIsInRlcm1pbmF0aW9uR3JhY2VQZXJpb2RTZWNvbmRzIjoxMH19fX1dLCJwZXJtaXNzaW9ucyI6W3sicnVsZXMiOlt7ImFwaUdyb3VwcyI6WyIiXSwicmVzb3VyY2VzIjpbImNvbmZpZ21hcHMiXSwidmVyYnMiOlsiZ2V0IiwibGlzdCIsIndhdGNoIiwiY3JlYXRlIiwidXBkYXRlIiwicGF0Y2giLCJkZWxldGUiXX0seyJhcGlHcm91cHMiOlsiY29vcmRpbmF0aW9uLms4cy5pbyJdLCJyZXNvdXJjZXMiOlsibGVhc2VzIl0sInZlcmJzIjpbImdldCIsImxpc3QiLCJ3YXRjaCIsImNyZWF0ZSIsInVwZGF0ZSIsInBhdGNoIiwiZGVsZXRlIl19LHsiYXBpR3JvdXBzIjpbIiJdLCJyZXNvdXJjZXMiOlsiZXZlbnRzIl0sInZlcmJzIjpbImNyZWF0ZSIsInBhdGNoIl19XSwic2VydmljZUFjY291bnROYW1lIjoicmhhY3Mtb3BlcmF0b3ItY29udHJvbGxlci1tYW5hZ2VyIn1dfSwic3RyYXRlZ3kiOiJkZXBsb3ltZW50In0sImluc3RhbGxNb2RlcyI6W3sic3VwcG9ydGVkIjpmYWxzZSwidHlwZSI6Ik93bk5hbWVzcGFjZSJ9LHsic3VwcG9ydGVkIjpmYWxzZSwidHlwZSI6IlNpbmdsZU5hbWVzcGFjZSJ9LHsic3VwcG9ydGVkIjpmYWxzZSwidHlwZSI6Ik11bHRpTmFtZXNwYWNlIn0seyJzdXBwb3J0ZWQiOnRydWUsInR5cGUiOiJBbGxOYW1lc3BhY2VzIn1dLCJrZXl3b3JkcyI6WyJhZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5Iiwic3RhY2tyb3giLCJzZWN1cml0eSIsInZ1bG5lcmFiaWxpdGllcyIsImNvbXBsaWFuY2UiLCJkZXZzZWNvcHMiLCJtb25pdG9yaW5nIiwic2Nhbm5pbmciLCJydW50aW1lLXNlY3VyaXR5IiwibmV0d29yayBwb2xpY3kiLCJjb25maWd1cmF0aW9uIiwicmlzayJdLCJsaW5rcyI6W3sibmFtZSI6IlJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSBEb2N1bWVudGF0aW9uIiwidXJsIjoiaHR0cHM6Ly9kb2NzLm9wZW5zaGlmdC5jb20vYWNzL3dlbGNvbWUvIn0seyJuYW1lIjoiRGF0YVNoZWV0IiwidXJsIjoiaHR0cHM6Ly93d3cucmVkaGF0LmNvbS9lbi9yZXNvdXJjZXMvYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS1mb3Ita3ViZXJuZXRlcy1kYXRhc2hlZXQifSx7Im5hbWUiOiJTdXBwb3J0IFBvbGljeSIsInVybCI6Imh0dHBzOi8vYWNjZXNzLnJlZGhhdC5jb20vbm9kZS81ODIyNzIxIn0seyJuYW1lIjoiQ29tbXVuaXR5IFNpdGUiLCJ1cmwiOiJodHRwczovL3d3dy5zdGFja3JveC5pby8ifV0sIm1haW50YWluZXJzIjpbeyJlbWFpbCI6InJoYWNzLXBtQHJlZGhhdC5jb20iLCJuYW1lIjoiQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSBwcm9kdWN0IHRlYW0ifV0sIm1hdHVyaXR5IjoiYWxwaGEiLCJtaW5LdWJlVmVyc2lvbiI6IjEuMTUuMCIsInByb3ZpZGVyIjp7Im5hbWUiOiJSZWQgSGF0In0sInJlbGF0ZWRJbWFnZXMiOlt7ImltYWdlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3MtY29sbGVjdG9yLXJoZWw4QHNoYTI1NjphYmExNTM3MDQ5YmEwMWYzMWI0ZjYzNGVjODNjNGVkNWFkMDUzNzgzZGUwNzEwZjBlM2VjYzk1NzY2NWM2Nzk4IiwibmFtZSI6ImNvbGxlY3RvciJ9LHsiaW1hZ2UiOiJyZWdpc3RyeS5yZWRoYXQuaW8vYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS9yaGFjcy1jZW50cmFsLWRiLXJoZWw4QHNoYTI1NjozZDQ1NTAwNGE0NjdlNjBjY2UzZWZhOGU5YjgwMDA3YjA0YzIwMGRlZGQ3Y2E2NTYwYmU4MGU5MzU0Yjc5MmExIiwibmFtZSI6ImNlbnRyYWxfZGIifSx7ImltYWdlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3Mtc2Nhbm5lci1yaGVsOEBzaGEyNTY6Y2Q3N2E2NjJiZGNlMjM0NDNlZTRlZjk2YjI3M2U5ZTNhOTAwOTM3OTkyMWE2YTVmNzVmMDAwNzZlZjI0MzUzZiIsIm5hbWUiOiJzY2FubmVyIn0seyJpbWFnZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLXNjYW5uZXItdjQtcmhlbDhAc2hhMjU2OmY4MTE5NTRiMmMyMzdmYWNhMzQ0YTk3NTM4OGI3NjQ4NWU5ZWRkZmNlNjcxOGM5ZDRkZDhjMTNlZjVhMDlmZmMiLCJuYW1lIjoic2Nhbm5lcl92NCJ9LHsiaW1hZ2UiOiJyZWdpc3RyeS5yZWRoYXQuaW8vYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS9yaGFjcy1zY2FubmVyLXNsaW0tcmhlbDhAc2hhMjU2OmRlYmFkNjg3NDI1ODQzMWIyM2M5YTkzOTQzYjU2ZDQ2ODZmMTUwYzJhOTFlZjJiZGVkODczMWJjY2E4N2M1MGMiLCJuYW1lIjoic2Nhbm5lcl9zbGltIn0seyJpbWFnZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLXNjYW5uZXItdjQtZGItcmhlbDhAc2hhMjU2OmJjMjlmNTIyYWZiNzhmYjc1NmMyZDk5YWZmMGQ3MzM4Mzc1MTlhNWZlYzNhNTQ2ZmVhMWU4ZWE4YmQ1YTNhYTYiLCJuYW1lIjoic2Nhbm5lcl92NF9kYiJ9LHsiaW1hZ2UiOiJyZWdpc3RyeS5yZWRoYXQuaW8vYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS9yaGFjcy1tYWluLXJoZWw4QHNoYTI1NjphNjM2NTYzNzNiNDBhYWU4ODZiNGRkMDg3NTkwYzBiMTM3MDdiM2Q2ODA2MmVhN2VlNTYwYmZhZjk3Mzc5MTljIiwibmFtZSI6Im1haW4ifSx7ImltYWdlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3Mtc2Nhbm5lci1kYi1yaGVsOEBzaGEyNTY6OGNmNGU4YmI0MmQyNzQxMzk2NjVmNWM1N2Y4MmI4MWM2NWE0Nzg5OGZmNDNkZTA0MDdmMjY2YWIwNzY3NzAxYyIsIm5hbWUiOiJzY2FubmVyX2RiIn0seyJpbWFnZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLXNjYW5uZXItZGItc2xpbS1yaGVsOEBzaGEyNTY6YjQyYTA5NmQ3NTU0M2YwMjUwNzY2ZTI4OWM2NzA3YWVkYzgxM2Q0ZDAzNTM3MDVjYWU1ZjBjNWUzY2FmNzMwNSIsIm5hbWUiOiJzY2FubmVyX2RiX3NsaW0ifSx7ImltYWdlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3Mtcm94Y3RsLXJoZWw4QHNoYTI1NjpkYjllYzM5MWI4ZTA0M2FkMWEwMGNjOGNjNWI5MWRjY2UzODFkNGI5NTEyZWU2MTAyYjM4OTZjMTg1ZTFiNjZlIiwibmFtZSI6InJveGN0bCJ9LHsiaW1hZ2UiOiJyZWdpc3RyeS5yZWRoYXQuaW8vYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS9yaGFjcy1yaGVsOC1vcGVyYXRvckBzaGEyNTY6ZTRjNjkwMGI3MmE1NTZhNGQzZTE5NzhmMzE3MzRiYzAwYjAxMTY0ZWYyYzhjMTU0YWVlYmZiMmIyNjZmOGQyYSIsIm5hbWUiOiJtYW5hZ2VyIn1dLCJyZXBsYWNlcyI6InJoYWNzLW9wZXJhdG9yLnY0LjguOSIsInNraXBzIjpbInJoYWNzLW9wZXJhdG9yLnY0LjEuMCJdLCJ2ZXJzaW9uIjoiNC44LjEwLXJjLjIifX0=" + } + }, + { + "type": "olm.bundle.object", + "value": { + "data": "eyJhcGlWZXJzaW9uIjoicmJhYy5hdXRob3JpemF0aW9uLms4cy5pby92MSIsImtpbmQiOiJDbHVzdGVyUm9sZSIsIm1ldGFkYXRhIjp7ImNyZWF0aW9uVGltZXN0YW1wIjpudWxsLCJuYW1lIjoicmhhY3Mtb3BlcmF0b3ItbWV0cmljcy1yZWFkZXIifSwicnVsZXMiOlt7Im5vblJlc291cmNlVVJMcyI6WyIvbWV0cmljcyJdLCJ2ZXJicyI6WyJnZXQiXX1dfQ==" + } + }, + { + "type": "olm.bundle.object", + "value": { + "data": "eyJhcGlWZXJzaW9uIjoidjEiLCJraW5kIjoiU2VydmljZSIsIm1ldGFkYXRhIjp7ImNyZWF0aW9uVGltZXN0YW1wIjpudWxsLCJsYWJlbHMiOnsiYXBwIjoicmhhY3Mtb3BlcmF0b3IiLCJjb250cm9sLXBsYW5lIjoiY29udHJvbGxlci1tYW5hZ2VyIn0sIm5hbWUiOiJyaGFjcy1vcGVyYXRvci1jb250cm9sbGVyLW1hbmFnZXItbWV0cmljcy1zZXJ2aWNlIn0sInNwZWMiOnsicG9ydHMiOlt7Im5hbWUiOiJodHRwcyIsInBvcnQiOjg0NDMsInByb3RvY29sIjoiVENQIiwidGFyZ2V0UG9ydCI6Imh0dHBzIn1dLCJzZWxlY3RvciI6eyJhcHAiOiJyaGFjcy1vcGVyYXRvciIsImNvbnRyb2wtcGxhbmUiOiJjb250cm9sbGVyLW1hbmFnZXIifX0sInN0YXR1cyI6eyJsb2FkQmFsYW5jZXIiOnt9fX0=" + } + } + ], + "relatedImages": [ + { + "name": "", + "image": "quay.io/rhacs-eng/release-operator-bundle@sha256:89c8467f3c6a8fa6f45c128d1b90dfc7322fb2ec49f8c93c0ba13e5870d132d3" + }, + { + "name": "central_db", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:3d455004a467e60cce3efa8e9b80007b04c200dedd7ca6560be80e9354b792a1" + }, + { + "name": "collector", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:aba1537049ba01f31b4f634ec83c4ed5ad053783de0710f0e3ecc957665c6798" + }, + { + "name": "main", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:a63656373b40aae886b4dd087590c0b13707b3d68062ea7ee560bfaf9737919c" + }, + { + "name": "manager", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:e4c6900b72a556a4d3e1978f31734bc00b01164ef2c8c154aeebfb2b266f8d2a" + }, + { + "name": "roxctl", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:db9ec391b8e043ad1a00cc8cc5b91dcce381d4b9512ee6102b3896c185e1b66e" + }, + { + "name": "scanner_db", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:8cf4e8bb42d274139665f5c57f82b81c65a47898ff43de0407f266ab0767701c" + }, + { + "name": "scanner_db_slim", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:b42a096d75543f0250766e289c6707aedc813d4d0353705cae5f0c5e3caf7305" + }, + { + "name": "scanner", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:cd77a662bdce23443ee4ef96b273e9e3a9009379921a6a5f75f00076ef24353f" + }, + { + "name": "scanner_slim", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:debad6874258431b23c9a93943b56d4686f150c2a91ef2bded8731bcca87c50c" + }, + { + "name": "scanner_v4_db", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:bc29f522afb78fb756c2d99aff0d733837519a5fec3a546fea1e8ea8bd5a3aa6" + }, + { + "name": "scanner_v4", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:f811954b2c237faca344a975388b76485e9eddfce6718c9d4dd8c13ef5a09ffc" + } + ] +} { "schema": "olm.bundle", "name": "rhacs-operator.v4.8.2", @@ -21025,6 +21185,131 @@ } ] } +{ + "schema": "olm.bundle", + "name": "rhacs-operator.v4.9.5-rc.2", + "package": "rhacs-operator", + "image": "quay.io/rhacs-eng/release-operator-bundle@sha256:72929bde24e023c16c77a58dc16482c6e1d73aeb8449de042c494b962855ca83", + "properties": [ + { + "type": "olm.gvk", + "value": { + "group": "config.stackrox.io", + "kind": "SecurityPolicy", + "version": "v1alpha1" + } + }, + { + "type": "olm.gvk", + "value": { + "group": "platform.stackrox.io", + "kind": "Central", + "version": "v1alpha1" + } + }, + { + "type": "olm.gvk", + "value": { + "group": "platform.stackrox.io", + "kind": "SecuredCluster", + "version": "v1alpha1" + } + }, + { + "type": "olm.package", + "value": { + "packageName": "rhacs-operator", + "version": "4.9.5-rc.2" + } + }, + { + "type": "olm.bundle.object", + "value": { + "data": "eyJhcGlWZXJzaW9uIjoiYXBpZXh0ZW5zaW9ucy5rOHMuaW8vdjEiLCJraW5kIjoiQ3VzdG9tUmVzb3VyY2VEZWZpbml0aW9uIiwibWV0YWRhdGEiOnsiYW5ub3RhdGlvbnMiOnsiY29udHJvbGxlci1nZW4ua3ViZWJ1aWxkZXIuaW8vdmVyc2lvbiI6InYwLjE5LjAifSwiY3JlYXRpb25UaW1lc3RhbXAiOm51bGwsIm5hbWUiOiJjZW50cmFscy5wbGF0Zm9ybS5zdGFja3JveC5pbyJ9LCJzcGVjIjp7Imdyb3VwIjoicGxhdGZvcm0uc3RhY2tyb3guaW8iLCJuYW1lcyI6eyJraW5kIjoiQ2VudHJhbCIsImxpc3RLaW5kIjoiQ2VudHJhbExpc3QiLCJwbHVyYWwiOiJjZW50cmFscyIsInNpbmd1bGFyIjoiY2VudHJhbCJ9LCJzY29wZSI6Ik5hbWVzcGFjZWQiLCJ2ZXJzaW9ucyI6W3sibmFtZSI6InYxYWxwaGExIiwic2NoZW1hIjp7Im9wZW5BUElWM1NjaGVtYSI6eyJkZXNjcmlwdGlvbiI6IkNlbnRyYWwgaXMgdGhlIGNvbmZpZ3VyYXRpb24gdGVtcGxhdGUgZm9yIHRoZSBjZW50cmFsIHNlcnZpY2VzLiBUaGlzIGluY2x1ZGVzIHRoZSBBUEkgc2VydmVyLCBwZXJzaXN0ZW50IHN0b3JhZ2UsXG5hbmQgdGhlIHdlYiBVSSwgYXMgd2VsbCBhcyB0aGUgaW1hZ2Ugc2Nhbm5lci4iLCJwcm9wZXJ0aWVzIjp7ImFwaVZlcnNpb24iOnsiZGVzY3JpcHRpb24iOiJBUElWZXJzaW9uIGRlZmluZXMgdGhlIHZlcnNpb25lZCBzY2hlbWEgb2YgdGhpcyByZXByZXNlbnRhdGlvbiBvZiBhbiBvYmplY3QuXG5TZXJ2ZXJzIHNob3VsZCBjb252ZXJ0IHJlY29nbml6ZWQgc2NoZW1hcyB0byB0aGUgbGF0ZXN0IGludGVybmFsIHZhbHVlLCBhbmRcbm1heSByZWplY3QgdW5yZWNvZ25pemVkIHZhbHVlcy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9naXQuazhzLmlvL2NvbW11bml0eS9jb250cmlidXRvcnMvZGV2ZWwvc2lnLWFyY2hpdGVjdHVyZS9hcGktY29udmVudGlvbnMubWQjcmVzb3VyY2VzIiwidHlwZSI6InN0cmluZyJ9LCJraW5kIjp7ImRlc2NyaXB0aW9uIjoiS2luZCBpcyBhIHN0cmluZyB2YWx1ZSByZXByZXNlbnRpbmcgdGhlIFJFU1QgcmVzb3VyY2UgdGhpcyBvYmplY3QgcmVwcmVzZW50cy5cblNlcnZlcnMgbWF5IGluZmVyIHRoaXMgZnJvbSB0aGUgZW5kcG9pbnQgdGhlIGNsaWVudCBzdWJtaXRzIHJlcXVlc3RzIHRvLlxuQ2Fubm90IGJlIHVwZGF0ZWQuXG5JbiBDYW1lbENhc2UuXG5Nb3JlIGluZm86IGh0dHBzOi8vZ2l0Lms4cy5pby9jb21tdW5pdHkvY29udHJpYnV0b3JzL2RldmVsL3NpZy1hcmNoaXRlY3R1cmUvYXBpLWNvbnZlbnRpb25zLm1kI3R5cGVzLWtpbmRzIiwidHlwZSI6InN0cmluZyJ9LCJtZXRhZGF0YSI6eyJ0eXBlIjoib2JqZWN0In0sInNwZWMiOnsiZGVzY3JpcHRpb24iOiJDZW50cmFsU3BlYyBkZWZpbmVzIHRoZSBkZXNpcmVkIHN0YXRlIG9mIENlbnRyYWwiLCJwcm9wZXJ0aWVzIjp7ImNlbnRyYWwiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIENlbnRyYWwgY29tcG9uZW50LCB3aGljaCBpcyByZXNwb25zaWJsZSBmb3IgYWxsIHVzZXIgaW50ZXJhY3Rpb24uIiwicHJvcGVydGllcyI6eyJhZG1pblBhc3N3b3JkR2VuZXJhdGlvbkRpc2FibGVkIjp7ImRlc2NyaXB0aW9uIjoiRGlzYWJsZSBhZG1pbiBwYXNzd29yZCBnZW5lcmF0aW9uLiBEbyBub3QgdXNlIHRoaXMgZm9yIGZpcnN0LXRpbWUgaW5zdGFsbGF0aW9ucyxcbmFzIHlvdSB3aWxsIGhhdmUgbm8gd2F5IHRvIHBlcmZvcm0gaW5pdGlhbCBzZXR1cCBhbmQgY29uZmlndXJhdGlvbiBvZiBhbHRlcm5hdGl2ZSBhdXRoZW50aWNhdGlvbiBtZXRob2RzLiIsInR5cGUiOiJib29sZWFuIn0sImFkbWluUGFzc3dvcmRTZWNyZXQiOnsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IGEgc2VjcmV0IHRoYXQgY29udGFpbnMgdGhlIGFkbWluaXN0cmF0b3IgcGFzc3dvcmQgaW4gdGhlIFwicGFzc3dvcmRcIiBkYXRhIGl0ZW0uXG5JZiBvbWl0dGVkLCB0aGUgb3BlcmF0b3Igd2lsbCBhdXRvLWdlbmVyYXRlIGEgcGFzc3dvcmQgYW5kIHN0b3JlIGl0IGluIHRoZSBcInBhc3N3b3JkXCIgaXRlbVxuaW4gdGhlIFwiY2VudHJhbC1odHBhc3N3ZFwiIHNlY3JldC4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgcmVmZXJlbmNlZCBzZWNyZXQuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sImRiIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIENlbnRyYWwgREIsIHdoaWNoIGlzIHJlc3BvbnNpYmxlIGZvciBkYXRhIHBlcnNpc3RlbmNlLiIsInByb3BlcnRpZXMiOnsiY29uZmlnT3ZlcnJpZGUiOnsiZGVzY3JpcHRpb24iOiJDb25maWcgbWFwIGNvbnRhaW5pbmcgcG9zdGdyZXNxbC5jb25mIGFuZCBwZ19oYmEuY29uZiB0aGF0IHdpbGwgYmUgdXNlZCBpZiBtb2RpZmljYXRpb25zIG5lZWQgdG8gYmUgYXBwbGllZC4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgcmVmZXJlbmNlZCBjb25maWcgbWFwLiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJjb25uZWN0aW9uUG9vbFNpemUiOnsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIHRoZSBkYXRhYmFzZSBjb25uZWN0aW9uIHBvb2wgc2l6ZS4iLCJwcm9wZXJ0aWVzIjp7Im1heENvbm5lY3Rpb25zIjp7ImRlc2NyaXB0aW9uIjoiTWF4aW11bSBudW1iZXIgb2YgY29ubmVjdGlvbnMgaW4gdGhlIGNvbm5lY3Rpb24gcG9vbC5cblRoZSBkZWZhdWx0IGlzOiA5MC4iLCJmb3JtYXQiOiJpbnQzMiIsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn0sIm1pbkNvbm5lY3Rpb25zIjp7ImRlc2NyaXB0aW9uIjoiTWluaW11bSBudW1iZXIgb2YgY29ubmVjdGlvbnMgaW4gdGhlIGNvbm5lY3Rpb24gcG9vbC5cblRoZSBkZWZhdWx0IGlzOiAxMC4iLCJmb3JtYXQiOiJpbnQzMiIsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn19LCJyZXF1aXJlZCI6WyJtYXhDb25uZWN0aW9ucyIsIm1pbkNvbm5lY3Rpb25zIl0sInR5cGUiOiJvYmplY3QifSwiY29ubmVjdGlvblN0cmluZyI6eyJkZXNjcmlwdGlvbiI6IlNwZWNpZnkgYSBjb25uZWN0aW9uIHN0cmluZyB0aGF0IGNvcnJlc3BvbmRzIHRvIGEgZGF0YWJhc2UgbWFuYWdlZCBlbHNld2hlcmUuIElmIHNldCwgdGhlIG9wZXJhdG9yIHdpbGwgbm90IG1hbmFnZSB0aGUgQ2VudHJhbCBEQi5cbldoZW4gdXNpbmcgdGhpcyBvcHRpb24sIHlvdSBtdXN0IGV4cGxpY2l0bHkgc2V0IGEgcGFzc3dvcmQgc2VjcmV0OyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRpbmcgYSBwYXNzd29yZCB3aWxsIG5vdFxuYmUgc3VwcG9ydGVkLiIsInR5cGUiOiJzdHJpbmcifSwiaG9zdEFsaWFzZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhcyBob2xkcyB0aGUgbWFwcGluZyBiZXR3ZWVuIElQIGFuZCBob3N0bmFtZXMgdGhhdCB3aWxsIGJlIGluamVjdGVkIGFzIGFuIGVudHJ5IGluIHRoZVxucG9kJ3MgaG9zdHMgZmlsZS4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RuYW1lcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RuYW1lcyBmb3IgdGhlIGFib3ZlIElQIGFkZHJlc3MuIiwiaXRlbXMiOnsidHlwZSI6InN0cmluZyJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoiYXRvbWljIn0sImlwIjp7ImRlc2NyaXB0aW9uIjoiSVAgYWRkcmVzcyBvZiB0aGUgaG9zdCBmaWxlIGVudHJ5LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbImlwIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sImlzRW5hYmxlZCI6eyJkZXNjcmlwdGlvbiI6Ik9ic29sZXRlIGZpZWxkLlxuVGhpcyBmaWVsZCB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS4iLCJlbnVtIjpbIkRlZmF1bHQiLCJFbmFibGVkIl0sInR5cGUiOiJzdHJpbmcifSwibm9kZVNlbGVjdG9yIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7InR5cGUiOiJzdHJpbmcifSwiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwidHlwZSI6Im9iamVjdCJ9LCJwYXNzd29yZFNlY3JldCI6eyJkZXNjcmlwdGlvbiI6IlNwZWNpZnkgYSBzZWNyZXQgdGhhdCBjb250YWlucyB0aGUgcGFzc3dvcmQgaW4gdGhlIFwicGFzc3dvcmRcIiBkYXRhIGl0ZW0uIFRoaXMgY2FuIG9ubHkgYmUgdXNlZCB3aGVuXG5zcGVjaWZ5aW5nIGEgY29ubmVjdGlvbiBzdHJpbmcgbWFudWFsbHkuXG5XaGVuIG9taXR0ZWQsIHRoZSBvcGVyYXRvciB3aWxsIGF1dG8tZ2VuZXJhdGUgYSBEQiBwYXNzd29yZCBhbmQgc3RvcmUgaXQgaW4gdGhlIFwicGFzc3dvcmRcIiBpdGVtXG5pbiB0aGUgXCJjZW50cmFsLWRiLXBhc3N3b3JkXCIgc2VjcmV0LiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSByZWZlcmVuY2VkIHNlY3JldC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwicGVyc2lzdGVuY2UiOnsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIGhvdyBDZW50cmFsIERCIHNob3VsZCBzdG9yZSBpdHMgcGVyc2lzdGVudCBkYXRhLiBZb3UgY2FuIGNob29zZSBiZXR3ZWVuIHVzaW5nIGEgcGVyc2lzdGVudFxudm9sdW1lIGNsYWltIChyZWNvbW1lbmRlZCBkZWZhdWx0KSwgYW5kIGEgaG9zdCBwYXRoLiIsInByb3BlcnRpZXMiOnsiaG9zdFBhdGgiOnsiZGVzY3JpcHRpb24iOiJTdG9yZXMgcGVyc2lzdGVudCBkYXRhIG9uIGEgZGlyZWN0b3J5IG9uIHRoZSBob3N0LiBUaGlzIGlzIG5vdCByZWNvbW1lbmRlZCwgYW5kIHNob3VsZCBvbmx5XG5iZSB1c2VkIHRvZ2V0aGVyIHdpdGggYSBub2RlIHNlbGVjdG9yIChvbmx5IGF2YWlsYWJsZSBpbiBZQU1MIHZpZXcpLiIsInByb3BlcnRpZXMiOnsicGF0aCI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwYXRoIG9uIHRoZSBob3N0IHJ1bm5pbmcgQ2VudHJhbC4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInBlcnNpc3RlbnRWb2x1bWVDbGFpbSI6eyJkZXNjcmlwdGlvbiI6IlVzZXMgYSBLdWJlcm5ldGVzIHBlcnNpc3RlbnQgdm9sdW1lIGNsYWltIChQVkMpIHRvIG1hbmFnZSB0aGUgc3RvcmFnZSBsb2NhdGlvbiBvZiBwZXJzaXN0ZW50IGRhdGEuXG5SZWNvbW1lbmRlZCBmb3IgbW9zdCB1c2Vycy4iLCJwcm9wZXJ0aWVzIjp7ImNsYWltTmFtZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSBQVkMgdG8gbWFuYWdlIHBlcnNpc3RlbnQgZGF0YS4gSWYgbm8gUFZDIHdpdGggdGhlIGdpdmVuIG5hbWUgZXhpc3RzLCBpdCB3aWxsIGJlXG5jcmVhdGVkLlxuVGhlIGRlZmF1bHQgaXM6IGNlbnRyYWwtZGIuIiwidHlwZSI6InN0cmluZyJ9LCJzaXplIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHNpemUgb2YgdGhlIHBlcnNpc3RlbnQgdm9sdW1lIHdoZW4gY3JlYXRlZCB0aHJvdWdoIHRoZSBjbGFpbS4gSWYgYSBjbGFpbSB3YXMgYXV0b21hdGljYWxseSBjcmVhdGVkLFxudGhpcyBjYW4gYmUgdXNlZCBhZnRlciB0aGUgaW5pdGlhbCBkZXBsb3ltZW50IHRvIHJlc2l6ZSAoZ3JvdykgdGhlIHZvbHVtZSAob25seSBzdXBwb3J0ZWQgYnkgc29tZVxuc3RvcmFnZSBjbGFzcyBjb250cm9sbGVycykuIiwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwidHlwZSI6InN0cmluZyJ9LCJzdG9yYWdlQ2xhc3NOYW1lIjp7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHN0b3JhZ2UgY2xhc3MgdG8gdXNlIGZvciB0aGUgUFZDLiBJZiB5b3VyIGNsdXN0ZXIgaXMgbm90IGNvbmZpZ3VyZWQgd2l0aCBhIGRlZmF1bHQgc3RvcmFnZVxuY2xhc3MsIHlvdSBtdXN0IHNlbGVjdCBhIHZhbHVlIGhlcmUuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJyZXNvdXJjZXMiOnsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsInByb3BlcnRpZXMiOnsiY2xhaW1zIjp7ImRlc2NyaXB0aW9uIjoiQ2xhaW1zIGxpc3RzIHRoZSBuYW1lcyBvZiByZXNvdXJjZXMsIGRlZmluZWQgaW4gc3BlYy5yZXNvdXJjZUNsYWltcyxcbnRoYXQgYXJlIHVzZWQgYnkgdGhpcyBjb250YWluZXIuXG5cblRoaXMgZmllbGQgZGVwZW5kcyBvbiB0aGVcbkR5bmFtaWNSZXNvdXJjZUFsbG9jYXRpb24gZmVhdHVyZSBnYXRlLlxuXG5UaGlzIGZpZWxkIGlzIGltbXV0YWJsZS4gSXQgY2FuIG9ubHkgYmUgc2V0IGZvciBjb250YWluZXJzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2VDbGFpbSByZWZlcmVuY2VzIG9uZSBlbnRyeSBpbiBQb2RTcGVjLlJlc291cmNlQ2xhaW1zLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik5hbWUgbXVzdCBtYXRjaCB0aGUgbmFtZSBvZiBvbmUgZW50cnkgaW4gcG9kLnNwZWMucmVzb3VyY2VDbGFpbXMgb2ZcbnRoZSBQb2Qgd2hlcmUgdGhpcyBmaWVsZCBpcyB1c2VkLiBJdCBtYWtlcyB0aGF0IHJlc291cmNlIGF2YWlsYWJsZVxuaW5zaWRlIGEgY29udGFpbmVyLiIsInR5cGUiOiJzdHJpbmcifSwicmVxdWVzdCI6eyJkZXNjcmlwdGlvbiI6IlJlcXVlc3QgaXMgdGhlIG5hbWUgY2hvc2VuIGZvciBhIHJlcXVlc3QgaW4gdGhlIHJlZmVyZW5jZWQgY2xhaW0uXG5JZiBlbXB0eSwgZXZlcnl0aGluZyBmcm9tIHRoZSBjbGFpbSBpcyBtYWRlIGF2YWlsYWJsZSwgb3RoZXJ3aXNlXG5vbmx5IHRoZSByZXN1bHQgb2YgdGhpcyByZXF1ZXN0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC1tYXAta2V5cyI6WyJuYW1lIl0sIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJtYXAifSwibGltaXRzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IkxpbWl0cyBkZXNjcmliZXMgdGhlIG1heGltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIGFsbG93ZWQuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifSwicmVxdWVzdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiUmVxdWVzdHMgZGVzY3JpYmVzIHRoZSBtaW5pbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyByZXF1aXJlZC5cbklmIFJlcXVlc3RzIGlzIG9taXR0ZWQgZm9yIGEgY29udGFpbmVyLCBpdCBkZWZhdWx0cyB0byBMaW1pdHMgaWYgdGhhdCBpcyBleHBsaWNpdGx5IHNwZWNpZmllZCxcbm90aGVyd2lzZSB0byBhbiBpbXBsZW1lbnRhdGlvbi1kZWZpbmVkIHZhbHVlLiBSZXF1ZXN0cyBjYW5ub3QgZXhjZWVkIExpbWl0cy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0b2xlcmF0aW9ucyI6eyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHBvZCB0aGlzIFRvbGVyYXRpb24gaXMgYXR0YWNoZWQgdG8gdG9sZXJhdGVzIGFueSB0YWludCB0aGF0IG1hdGNoZXNcbnRoZSB0cmlwbGUgXHUwMDNja2V5LHZhbHVlLGVmZmVjdFx1MDAzZSB1c2luZyB0aGUgbWF0Y2hpbmcgb3BlcmF0b3IgXHUwMDNjb3BlcmF0b3JcdTAwM2UuIiwicHJvcGVydGllcyI6eyJlZmZlY3QiOnsiZGVzY3JpcHRpb24iOiJFZmZlY3QgaW5kaWNhdGVzIHRoZSB0YWludCBlZmZlY3QgdG8gbWF0Y2guIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBlZmZlY3RzLlxuV2hlbiBzcGVjaWZpZWQsIGFsbG93ZWQgdmFsdWVzIGFyZSBOb1NjaGVkdWxlLCBQcmVmZXJOb1NjaGVkdWxlIGFuZCBOb0V4ZWN1dGUuIiwidHlwZSI6InN0cmluZyJ9LCJrZXkiOnsiZGVzY3JpcHRpb24iOiJLZXkgaXMgdGhlIHRhaW50IGtleSB0aGF0IHRoZSB0b2xlcmF0aW9uIGFwcGxpZXMgdG8uIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBrZXlzLlxuSWYgdGhlIGtleSBpcyBlbXB0eSwgb3BlcmF0b3IgbXVzdCBiZSBFeGlzdHM7IHRoaXMgY29tYmluYXRpb24gbWVhbnMgdG8gbWF0Y2ggYWxsIHZhbHVlcyBhbmQgYWxsIGtleXMuIiwidHlwZSI6InN0cmluZyJ9LCJvcGVyYXRvciI6eyJkZXNjcmlwdGlvbiI6Ik9wZXJhdG9yIHJlcHJlc2VudHMgYSBrZXkncyByZWxhdGlvbnNoaXAgdG8gdGhlIHZhbHVlLlxuVmFsaWQgb3BlcmF0b3JzIGFyZSBFeGlzdHMgYW5kIEVxdWFsLiBEZWZhdWx0cyB0byBFcXVhbC5cbkV4aXN0cyBpcyBlcXVpdmFsZW50IHRvIHdpbGRjYXJkIGZvciB2YWx1ZSwgc28gdGhhdCBhIHBvZCBjYW5cbnRvbGVyYXRlIGFsbCB0YWludHMgb2YgYSBwYXJ0aWN1bGFyIGNhdGVnb3J5LiIsInR5cGUiOiJzdHJpbmcifSwidG9sZXJhdGlvblNlY29uZHMiOnsiZGVzY3JpcHRpb24iOiJUb2xlcmF0aW9uU2Vjb25kcyByZXByZXNlbnRzIHRoZSBwZXJpb2Qgb2YgdGltZSB0aGUgdG9sZXJhdGlvbiAod2hpY2ggbXVzdCBiZVxub2YgZWZmZWN0IE5vRXhlY3V0ZSwgb3RoZXJ3aXNlIHRoaXMgZmllbGQgaXMgaWdub3JlZCkgdG9sZXJhdGVzIHRoZSB0YWludC4gQnkgZGVmYXVsdCxcbml0IGlzIG5vdCBzZXQsIHdoaWNoIG1lYW5zIHRvbGVyYXRlIHRoZSB0YWludCBmb3JldmVyIChkbyBub3QgZXZpY3QpLiBaZXJvIGFuZFxubmVnYXRpdmUgdmFsdWVzIHdpbGwgYmUgdHJlYXRlZCBhcyAwIChldmljdCBpbW1lZGlhdGVseSkgYnkgdGhlIHN5c3RlbS4iLCJmb3JtYXQiOiJpbnQ2NCIsInR5cGUiOiJpbnRlZ2VyIn0sInZhbHVlIjp7ImRlc2NyaXB0aW9uIjoiVmFsdWUgaXMgdGhlIHRhaW50IHZhbHVlIHRoZSB0b2xlcmF0aW9uIG1hdGNoZXMgdG8uXG5JZiB0aGUgb3BlcmF0b3IgaXMgRXhpc3RzLCB0aGUgdmFsdWUgc2hvdWxkIGJlIGVtcHR5LCBvdGhlcndpc2UganVzdCBhIHJlZ3VsYXIgc3RyaW5nLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In19LCJ0eXBlIjoib2JqZWN0In0sImRlY2xhcmF0aXZlQ29uZmlndXJhdGlvbiI6eyJkZXNjcmlwdGlvbiI6IkNvbmZpZ3VyZXMgcmVzb3VyY2VzIHdpdGhpbiBDZW50cmFsIGluIGEgZGVjbGFyYXRpdmUgbWFubmVyLiIsInByb3BlcnRpZXMiOnsiY29uZmlnTWFwcyI6eyJkZXNjcmlwdGlvbiI6Ikxpc3Qgb2YgY29uZmlnIG1hcHMgY29udGFpbmluZyBkZWNsYXJhdGl2ZSBjb25maWd1cmF0aW9uLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiTG9jYWxDb25maWdNYXBSZWZlcmVuY2UgaXMgYSByZWZlcmVuY2UgdG8gYSBjb25maWcgbWFwIHdpdGhpbiB0aGUgc2FtZSBuYW1lc3BhY2UuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHJlZmVyZW5jZWQgY29uZmlnIG1hcC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sInNlY3JldHMiOnsiZGVzY3JpcHRpb24iOiJMaXN0IG9mIHNlY3JldHMgY29udGFpbmluZyBkZWNsYXJhdGl2ZSBjb25maWd1cmF0aW9uLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiTG9jYWxTZWNyZXRSZWZlcmVuY2UgaXMgYSByZWZlcmVuY2UgdG8gYSBzZWNyZXQgd2l0aGluIHRoZSBzYW1lIG5hbWVzcGFjZS4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgcmVmZXJlbmNlZCBzZWNyZXQuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9fSwidHlwZSI6Im9iamVjdCJ9LCJkZWZhdWx0VExTU2VjcmV0Ijp7ImRlc2NyaXB0aW9uIjoiQnkgZGVmYXVsdCwgQ2VudHJhbCB3aWxsIG9ubHkgc2VydmUgYW4gaW50ZXJuYWwgVExTIGNlcnRpZmljYXRlLCB3aGljaCBtZWFucyB0aGF0IHlvdSB3aWxsXG5uZWVkIHRvIGhhbmRsZSBUTFMgdGVybWluYXRpb24gYXQgdGhlIGluZ3Jlc3Mgb3IgbG9hZCBiYWxhbmNlciBsZXZlbC5cbklmIHlvdSB3YW50IHRvIHRlcm1pbmF0ZSBUTFMgaW4gQ2VudHJhbCBhbmQgc2VydmUgYSBjdXN0b20gc2VydmVyIGNlcnRpZmljYXRlLCB5b3UgY2FuIHNwZWNpZnlcbmEgc2VjcmV0IGNvbnRhaW5pbmcgdGhlIGNlcnRpZmljYXRlIGFuZCBwcml2YXRlIGtleSBoZXJlLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSByZWZlcmVuY2VkIHNlY3JldC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwiZXhwb3N1cmUiOnsiZGVzY3JpcHRpb24iOiJIZXJlIHlvdSBjYW4gY29uZmlndXJlIGlmIHlvdSB3YW50IHRvIGV4cG9zZSBjZW50cmFsIHRocm91Z2ggYSBub2RlIHBvcnQsIGEgbG9hZCBiYWxhbmNlciwgb3IgYW4gT3BlblNoaWZ0XG5yb3V0ZS4iLCJwcm9wZXJ0aWVzIjp7ImxvYWRCYWxhbmNlciI6eyJkZXNjcmlwdGlvbiI6IkV4cG9zZSBDZW50cmFsIHRocm91Z2ggYSBsb2FkIGJhbGFuY2VyIHNlcnZpY2UuIiwicHJvcGVydGllcyI6eyJlbmFibGVkIjp7ImRlc2NyaXB0aW9uIjoiVGhlIGRlZmF1bHQgaXM6IGZhbHNlLiIsInR5cGUiOiJib29sZWFuIn0sImlwIjp7ImRlc2NyaXB0aW9uIjoiSWYgeW91IGhhdmUgYSBzdGF0aWMgSVAgYWRkcmVzcyByZXNlcnZlZCBmb3IgeW91ciBsb2FkIGJhbGFuY2VyLCB5b3UgY2FuIGVudGVyIGl0IGhlcmUuIiwidHlwZSI6InN0cmluZyJ9LCJwb3J0Ijp7ImRlc2NyaXB0aW9uIjoiVGhlIGRlZmF1bHQgaXM6IDQ0My4iLCJmb3JtYXQiOiJpbnQzMiIsIm1heGltdW0iOjY1NTM1LCJtaW5pbXVtIjoxLCJ0eXBlIjoiaW50ZWdlciJ9fSwidHlwZSI6Im9iamVjdCJ9LCJub2RlUG9ydCI6eyJkZXNjcmlwdGlvbiI6IkV4cG9zZSBDZW50cmFsIHRocm91Z2ggYSBub2RlIHBvcnQuIiwicHJvcGVydGllcyI6eyJlbmFibGVkIjp7ImRlc2NyaXB0aW9uIjoiVGhlIGRlZmF1bHQgaXM6IGZhbHNlLiIsInR5cGUiOiJib29sZWFuIn0sInBvcnQiOnsiZGVzY3JpcHRpb24iOiJVc2UgdGhpcyB0byBzcGVjaWZ5IGFuIGV4cGxpY2l0IG5vZGUgcG9ydC4gTW9zdCB1c2VycyBzaG91bGQgbGVhdmUgdGhpcyBlbXB0eS4iLCJmb3JtYXQiOiJpbnQzMiIsIm1heGltdW0iOjY1NTM1LCJtaW5pbXVtIjoxLCJ0eXBlIjoiaW50ZWdlciJ9fSwidHlwZSI6Im9iamVjdCJ9LCJyb3V0ZSI6eyJkZXNjcmlwdGlvbiI6IkV4cG9zZSBDZW50cmFsIHRocm91Z2ggYW4gT3BlblNoaWZ0IHJvdXRlLiIsInByb3BlcnRpZXMiOnsiZW5hYmxlZCI6eyJkZXNjcmlwdGlvbiI6IkV4cG9zZSBDZW50cmFsIHdpdGggYSBwYXNzdGhyb3VnaCByb3V0ZS5cblRoZSBkZWZhdWx0IGlzOiBmYWxzZS4iLCJ0eXBlIjoiYm9vbGVhbiJ9LCJob3N0Ijp7ImRlc2NyaXB0aW9uIjoiU3BlY2lmeSBhIGN1c3RvbSBob3N0bmFtZSBmb3IgdGhlIENlbnRyYWwgcm91dGUuXG5JZiB1bnNwZWNpZmllZCwgYW4gYXBwcm9wcmlhdGUgZGVmYXVsdCB2YWx1ZSB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgY2hvc2VuIGJ5IHRoZSBPcGVuU2hpZnQgcm91dGUgb3BlcmF0b3IuIiwidHlwZSI6InN0cmluZyJ9LCJyZWVuY3J5cHQiOnsiZGVzY3JpcHRpb24iOiJTZXQgdXAgYSBDZW50cmFsIHJvdXRlIHdpdGggcmVlbmNyeXB0IFRMUyB0ZXJtaW5hdGlvbi5cbkZvciByZWVuY3J5cHQgcm91dGVzLCB0aGUgcmVxdWVzdCBpcyB0ZXJtaW5hdGVkIG9uIHRoZSBPcGVuU2hpZnQgcm91dGVyIHdpdGggYSBjdXN0b20gY2VydGlmaWNhdGUuXG5UaGUgcmVxdWVzdCBpcyB0aGVuIHJlZW5jcnlwdGVkIGJ5IHRoZSBPcGVuU2hpZnQgcm91dGVyIGFuZCBzZW50IHRvIENlbnRyYWwuXG5bdXNlcl0gLS1UTFMtLVx1MDAzZSBbT3BlblNoaWZ0IHJvdXRlcl0gLS1UTFMtLVx1MDAzZSBbQ2VudHJhbF0iLCJwcm9wZXJ0aWVzIjp7ImVuYWJsZWQiOnsiZGVzY3JpcHRpb24iOiJFeHBvc2UgQ2VudHJhbCB3aXRoIGEgcmVlbmNyeXB0IHJvdXRlLlxuU2hvdWxkIG5vdCBiZSB1c2VkIGZvciBzZW5zb3IgY29tbXVuaWNhdGlvbi5cblRoZSBkZWZhdWx0IGlzOiBmYWxzZS4iLCJ0eXBlIjoiYm9vbGVhbiJ9LCJob3N0Ijp7ImRlc2NyaXB0aW9uIjoiU3BlY2lmeSBhIGN1c3RvbSBob3N0bmFtZSBmb3IgdGhlIENlbnRyYWwgcmVlbmNyeXB0IHJvdXRlLlxuSWYgdW5zcGVjaWZpZWQsIGFuIGFwcHJvcHJpYXRlIGRlZmF1bHQgdmFsdWUgd2lsbCBiZSBhdXRvbWF0aWNhbGx5IGNob3NlbiBieSB0aGUgT3BlblNoaWZ0IHJvdXRlIG9wZXJhdG9yLiIsInR5cGUiOiJzdHJpbmcifSwidGxzIjp7ImRlc2NyaXB0aW9uIjoiVExTIHNldHRpbmdzIGZvciBleHBvc2luZyBDZW50cmFsIHZpYSBhIHJlZW5jcnlwdCBSb3V0ZS4iLCJwcm9wZXJ0aWVzIjp7ImNhQ2VydGlmaWNhdGUiOnsiZGVzY3JpcHRpb24iOiJUaGUgUEVNIGVuY29kZWQgY2VydGlmaWNhdGUgY2hhaW4gdGhhdCBtYXkgYmUgdXNlZCB0byBlc3RhYmxpc2ggYSBjb21wbGV0ZSBjaGFpbiBvZiB0cnVzdC5cbkRlZmF1bHRzIHRvIHRoZSBPcGVuU2hpZnQgY2VydGlmaWNhdGUgYXV0aG9yaXR5LiIsInR5cGUiOiJzdHJpbmcifSwiY2VydGlmaWNhdGUiOnsiZGVzY3JpcHRpb24iOiJUaGUgUEVNIGVuY29kZWQgY2VydGlmaWNhdGUgdGhhdCBpcyBzZXJ2ZWQgb24gdGhlIHJvdXRlLiBNdXN0IGJlIGEgc2luZ2xlIHNlcnZpbmdcbmNlcnRpZmljYXRlIGluc3RlYWQgb2YgYSBjZXJ0aWZpY2F0ZSBjaGFpbi5cbkRlZmF1bHRzIHRvIGEgY2VydGlmaWNhdGUgc2lnbmVkIGJ5IHRoZSBPcGVuU2hpZnQgY2VydGlmaWNhdGUgYXV0aG9yaXR5LiIsInR5cGUiOiJzdHJpbmcifSwiZGVzdGluYXRpb25DQUNlcnRpZmljYXRlIjp7ImRlc2NyaXB0aW9uIjoiVGhlIENBIGNlcnRpZmljYXRlIG9mIHRoZSBmaW5hbCBkZXN0aW5hdGlvbiwgaS5lLiBvZiBDZW50cmFsLlxuVXNlZCBieSB0aGUgT3BlblNoaWZ0IHJvdXRlciBmb3IgaGVhbHRoIGNoZWNrcyBvbiB0aGUgc2VjdXJlIGNvbm5lY3Rpb24uXG5EZWZhdWx0cyB0byB0aGUgQ2VudHJhbCBjZXJ0aWZpY2F0ZSBhdXRob3JpdHkuIiwidHlwZSI6InN0cmluZyJ9LCJrZXkiOnsiZGVzY3JpcHRpb24iOiJUaGUgUEVNIGVuY29kZWQgcHJpdmF0ZSBrZXkgb2YgdGhlIGNlcnRpZmljYXRlIHRoYXQgaXMgc2VydmVkIG9uIHRoZSByb3V0ZS5cbkRlZmF1bHRzIHRvIGEgY2VydGlmaWNhdGUgc2lnbmVkIGJ5IHRoZSBPcGVuU2hpZnQgY2VydGlmaWNhdGUgYXV0aG9yaXR5LiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwiaG9zdEFsaWFzZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhcyBob2xkcyB0aGUgbWFwcGluZyBiZXR3ZWVuIElQIGFuZCBob3N0bmFtZXMgdGhhdCB3aWxsIGJlIGluamVjdGVkIGFzIGFuIGVudHJ5IGluIHRoZVxucG9kJ3MgaG9zdHMgZmlsZS4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RuYW1lcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RuYW1lcyBmb3IgdGhlIGFib3ZlIElQIGFkZHJlc3MuIiwiaXRlbXMiOnsidHlwZSI6InN0cmluZyJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoiYXRvbWljIn0sImlwIjp7ImRlc2NyaXB0aW9uIjoiSVAgYWRkcmVzcyBvZiB0aGUgaG9zdCBmaWxlIGVudHJ5LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbImlwIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sIm1vbml0b3JpbmciOnsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIG1vbml0b3JpbmcgZW5kcG9pbnQgZm9yIENlbnRyYWwuIFRoZSBtb25pdG9yaW5nIGVuZHBvaW50XG5hbGxvd3Mgb3RoZXIgc2VydmljZXMgdG8gY29sbGVjdCBtZXRyaWNzIGZyb20gQ2VudHJhbCwgcHJvdmlkZWQgaW5cblByb21ldGhldXMgY29tcGF0aWJsZSBmb3JtYXQuIiwicHJvcGVydGllcyI6eyJleHBvc2VFbmRwb2ludCI6eyJkZXNjcmlwdGlvbiI6IkV4cG9zZSB0aGUgbW9uaXRvcmluZyBlbmRwb2ludC4gQSBuZXcgc2VydmljZSwgXCJtb25pdG9yaW5nXCIsXG53aXRoIHBvcnQgOTA5MCwgd2lsbCBiZSBjcmVhdGVkIGFzIHdlbGwgYXMgYSBuZXR3b3JrIHBvbGljeSBhbGxvd2luZ1xuaW5ib3VuZCBjb25uZWN0aW9ucyB0byB0aGUgcG9ydC4iLCJlbnVtIjpbIkVuYWJsZWQiLCJEaXNhYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sIm5vZGVTZWxlY3RvciI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJ0eXBlIjoic3RyaW5nIn0sImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIGEgbm9kZSBzZWxlY3RvciBoZXJlLiIsInR5cGUiOiJvYmplY3QifSwibm90aWZpZXJTZWNyZXRzRW5jcnlwdGlvbiI6eyJkZXNjcmlwdGlvbiI6IkNvbmZpZ3VyZXMgdGhlIGVuY3J5cHRpb24gb2Ygbm90aWZpZXIgc2VjcmV0cyBzdG9yZWQgaW4gdGhlIENlbnRyYWwgREIuIiwicHJvcGVydGllcyI6eyJlbmFibGVkIjp7ImRlc2NyaXB0aW9uIjoiRW5hYmxlcyB0aGUgZW5jcnlwdGlvbiBvZiBub3RpZmllciBzZWNyZXRzIHN0b3JlZCBpbiB0aGUgQ2VudHJhbCBEQi5cblRoZSBkZWZhdWx0IGlzOiBmYWxzZS4iLCJ0eXBlIjoiYm9vbGVhbiJ9fSwidHlwZSI6Im9iamVjdCJ9LCJwZXJzaXN0ZW5jZSI6eyJkZXNjcmlwdGlvbiI6IlVudXNlZCBmaWVsZC4gVGhpcyBmaWVsZCBleGlzdHMgc29sZWx5IGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHN0YXJ0aW5nIGZyb20gdmVyc2lvbiB2NC42LjAuIiwicHJvcGVydGllcyI6eyJob3N0UGF0aCI6eyJkZXNjcmlwdGlvbiI6Ik9ic29sZXRlIHVudXNlZCBmaWVsZC4iLCJwcm9wZXJ0aWVzIjp7InBhdGgiOnsiZGVzY3JpcHRpb24iOiJUaGUgcGF0aCBvbiB0aGUgaG9zdCBydW5uaW5nIENlbnRyYWwuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJwZXJzaXN0ZW50Vm9sdW1lQ2xhaW0iOnsiZGVzY3JpcHRpb24iOiJPYnNvbGV0ZSB1bnVzZWQgZmllbGQuIiwicHJvcGVydGllcyI6eyJjbGFpbU5hbWUiOnsiZGVzY3JpcHRpb24iOiJPYnNvbGV0ZSB1bnVzZWQgZmllbGQuIiwidHlwZSI6InN0cmluZyJ9LCJzaXplIjp7ImRlc2NyaXB0aW9uIjoiT2Jzb2xldGUgdW51c2VkIGZpZWxkLiIsInR5cGUiOiJzdHJpbmcifSwic3RvcmFnZUNsYXNzTmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik9ic29sZXRlIHVudXNlZCBmaWVsZC4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sInJlc291cmNlcyI6eyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwicHJvcGVydGllcyI6eyJjbGFpbXMiOnsiZGVzY3JpcHRpb24iOiJDbGFpbXMgbGlzdHMgdGhlIG5hbWVzIG9mIHJlc291cmNlcywgZGVmaW5lZCBpbiBzcGVjLnJlc291cmNlQ2xhaW1zLFxudGhhdCBhcmUgdXNlZCBieSB0aGlzIGNvbnRhaW5lci5cblxuVGhpcyBmaWVsZCBkZXBlbmRzIG9uIHRoZVxuRHluYW1pY1Jlc291cmNlQWxsb2NhdGlvbiBmZWF0dXJlIGdhdGUuXG5cblRoaXMgZmllbGQgaXMgaW1tdXRhYmxlLiBJdCBjYW4gb25seSBiZSBzZXQgZm9yIGNvbnRhaW5lcnMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJSZXNvdXJjZUNsYWltIHJlZmVyZW5jZXMgb25lIGVudHJ5IGluIFBvZFNwZWMuUmVzb3VyY2VDbGFpbXMuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTmFtZSBtdXN0IG1hdGNoIHRoZSBuYW1lIG9mIG9uZSBlbnRyeSBpbiBwb2Quc3BlYy5yZXNvdXJjZUNsYWltcyBvZlxudGhlIFBvZCB3aGVyZSB0aGlzIGZpZWxkIGlzIHVzZWQuIEl0IG1ha2VzIHRoYXQgcmVzb3VyY2UgYXZhaWxhYmxlXG5pbnNpZGUgYSBjb250YWluZXIuIiwidHlwZSI6InN0cmluZyJ9LCJyZXF1ZXN0Ijp7ImRlc2NyaXB0aW9uIjoiUmVxdWVzdCBpcyB0aGUgbmFtZSBjaG9zZW4gZm9yIGEgcmVxdWVzdCBpbiB0aGUgcmVmZXJlbmNlZCBjbGFpbS5cbklmIGVtcHR5LCBldmVyeXRoaW5nIGZyb20gdGhlIGNsYWltIGlzIG1hZGUgYXZhaWxhYmxlLCBvdGhlcndpc2Vcbm9ubHkgdGhlIHJlc3VsdCBvZiB0aGlzIHJlcXVlc3QuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LW1hcC1rZXlzIjpbIm5hbWUiXSwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6Im1hcCJ9LCJsaW1pdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiTGltaXRzIGRlc2NyaWJlcyB0aGUgbWF4aW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgYWxsb3dlZC5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9LCJyZXF1ZXN0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJSZXF1ZXN0cyBkZXNjcmliZXMgdGhlIG1pbmltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIHJlcXVpcmVkLlxuSWYgUmVxdWVzdHMgaXMgb21pdHRlZCBmb3IgYSBjb250YWluZXIsIGl0IGRlZmF1bHRzIHRvIExpbWl0cyBpZiB0aGF0IGlzIGV4cGxpY2l0bHkgc3BlY2lmaWVkLFxub3RoZXJ3aXNlIHRvIGFuIGltcGxlbWVudGF0aW9uLWRlZmluZWQgdmFsdWUuIFJlcXVlc3RzIGNhbm5vdCBleGNlZWQgTGltaXRzLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sInRlbGVtZXRyeSI6eyJkZXNjcmlwdGlvbiI6IkNvbmZpZ3VyZXMgdGVsZW1ldHJ5IHNldHRpbmdzIGZvciBDZW50cmFsLiBJZiBlbmFibGVkLCBDZW50cmFsIHRyYW5zbWl0cyB0ZWxlbWV0cnkgYW5kIGRpYWdub3N0aWNcbmRhdGEgdG8gYSByZW1vdGUgc3RvcmFnZSBiYWNrZW5kLiIsInByb3BlcnRpZXMiOnsiZW5hYmxlZCI6eyJkZXNjcmlwdGlvbiI6IlNwZWNpZmllcyBpZiBUZWxlbWV0cnkgaXMgZW5hYmxlZC5cblRoZSBkZWZhdWx0IGlzOiB0cnVlLiIsInR5cGUiOiJib29sZWFuIn0sInN0b3JhZ2UiOnsiZGVzY3JpcHRpb24iOiJEZWZpbmVzIHRoZSB0ZWxlbWV0cnkgc3RvcmFnZSBiYWNrZW5kIGZvciBDZW50cmFsLiIsInByb3BlcnRpZXMiOnsiZW5kcG9pbnQiOnsiZGVzY3JpcHRpb24iOiJTdG9yYWdlIEFQSSBlbmRwb2ludC4iLCJ0eXBlIjoic3RyaW5nIn0sImtleSI6eyJkZXNjcmlwdGlvbiI6IlN0b3JhZ2UgQVBJIGtleS4gSWYgbm90IHNldCwgdGVsZW1ldHJ5IGlzIGRpc2FibGVkLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwidG9sZXJhdGlvbnMiOnsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwb2QgdGhpcyBUb2xlcmF0aW9uIGlzIGF0dGFjaGVkIHRvIHRvbGVyYXRlcyBhbnkgdGFpbnQgdGhhdCBtYXRjaGVzXG50aGUgdHJpcGxlIFx1MDAzY2tleSx2YWx1ZSxlZmZlY3RcdTAwM2UgdXNpbmcgdGhlIG1hdGNoaW5nIG9wZXJhdG9yIFx1MDAzY29wZXJhdG9yXHUwMDNlLiIsInByb3BlcnRpZXMiOnsiZWZmZWN0Ijp7ImRlc2NyaXB0aW9uIjoiRWZmZWN0IGluZGljYXRlcyB0aGUgdGFpbnQgZWZmZWN0IHRvIG1hdGNoLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQgZWZmZWN0cy5cbldoZW4gc3BlY2lmaWVkLCBhbGxvd2VkIHZhbHVlcyBhcmUgTm9TY2hlZHVsZSwgUHJlZmVyTm9TY2hlZHVsZSBhbmQgTm9FeGVjdXRlLiIsInR5cGUiOiJzdHJpbmcifSwia2V5Ijp7ImRlc2NyaXB0aW9uIjoiS2V5IGlzIHRoZSB0YWludCBrZXkgdGhhdCB0aGUgdG9sZXJhdGlvbiBhcHBsaWVzIHRvLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQga2V5cy5cbklmIHRoZSBrZXkgaXMgZW1wdHksIG9wZXJhdG9yIG11c3QgYmUgRXhpc3RzOyB0aGlzIGNvbWJpbmF0aW9uIG1lYW5zIHRvIG1hdGNoIGFsbCB2YWx1ZXMgYW5kIGFsbCBrZXlzLiIsInR5cGUiOiJzdHJpbmcifSwib3BlcmF0b3IiOnsiZGVzY3JpcHRpb24iOiJPcGVyYXRvciByZXByZXNlbnRzIGEga2V5J3MgcmVsYXRpb25zaGlwIHRvIHRoZSB2YWx1ZS5cblZhbGlkIG9wZXJhdG9ycyBhcmUgRXhpc3RzIGFuZCBFcXVhbC4gRGVmYXVsdHMgdG8gRXF1YWwuXG5FeGlzdHMgaXMgZXF1aXZhbGVudCB0byB3aWxkY2FyZCBmb3IgdmFsdWUsIHNvIHRoYXQgYSBwb2QgY2FuXG50b2xlcmF0ZSBhbGwgdGFpbnRzIG9mIGEgcGFydGljdWxhciBjYXRlZ29yeS4iLCJ0eXBlIjoic3RyaW5nIn0sInRvbGVyYXRpb25TZWNvbmRzIjp7ImRlc2NyaXB0aW9uIjoiVG9sZXJhdGlvblNlY29uZHMgcmVwcmVzZW50cyB0aGUgcGVyaW9kIG9mIHRpbWUgdGhlIHRvbGVyYXRpb24gKHdoaWNoIG11c3QgYmVcbm9mIGVmZmVjdCBOb0V4ZWN1dGUsIG90aGVyd2lzZSB0aGlzIGZpZWxkIGlzIGlnbm9yZWQpIHRvbGVyYXRlcyB0aGUgdGFpbnQuIEJ5IGRlZmF1bHQsXG5pdCBpcyBub3Qgc2V0LCB3aGljaCBtZWFucyB0b2xlcmF0ZSB0aGUgdGFpbnQgZm9yZXZlciAoZG8gbm90IGV2aWN0KS4gWmVybyBhbmRcbm5lZ2F0aXZlIHZhbHVlcyB3aWxsIGJlIHRyZWF0ZWQgYXMgMCAoZXZpY3QgaW1tZWRpYXRlbHkpIGJ5IHRoZSBzeXN0ZW0uIiwiZm9ybWF0IjoiaW50NjQiLCJ0eXBlIjoiaW50ZWdlciJ9LCJ2YWx1ZSI6eyJkZXNjcmlwdGlvbiI6IlZhbHVlIGlzIHRoZSB0YWludCB2YWx1ZSB0aGUgdG9sZXJhdGlvbiBtYXRjaGVzIHRvLlxuSWYgdGhlIG9wZXJhdG9yIGlzIEV4aXN0cywgdGhlIHZhbHVlIHNob3VsZCBiZSBlbXB0eSwgb3RoZXJ3aXNlIGp1c3QgYSByZWd1bGFyIHN0cmluZy4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9fSwidHlwZSI6Im9iamVjdCJ9LCJjb25maWdBc0NvZGUiOnsiZGVzY3JpcHRpb24iOiJDb25maWctYXMtQ29kZSBjb25maWd1cmF0aW9uLiIsInByb3BlcnRpZXMiOnsiY29uZmlnQXNDb2RlQ29tcG9uZW50Ijp7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdG8gZGVwbG95IHRoZSBDb25maWcgYXMgQ29kZSBjb21wb25lbnQsIHNldCB0aGlzIHRvIFwiRW5hYmxlZFwiXG5UaGUgZGVmYXVsdCBpczogRW5hYmxlZC4iLCJlbnVtIjpbIkVuYWJsZWQiLCJEaXNhYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sImN1c3RvbWl6ZSI6eyJkZXNjcmlwdGlvbiI6IkN1c3RvbWl6YXRpb25zIHRvIGFwcGx5IG9uIGFsbCBDZW50cmFsIFNlcnZpY2VzIGNvbXBvbmVudHMuIiwicHJvcGVydGllcyI6eyJhbm5vdGF0aW9ucyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJ0eXBlIjoic3RyaW5nIn0sImRlc2NyaXB0aW9uIjoiQ3VzdG9tIGFubm90YXRpb25zIHRvIHNldCBvbiBhbGwgbWFuYWdlZCBvYmplY3RzLiIsInR5cGUiOiJvYmplY3QifSwiZW52VmFycyI6eyJkZXNjcmlwdGlvbiI6IkN1c3RvbSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gc2V0IG9uIG1hbmFnZWQgcG9kcycgY29udGFpbmVycy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IkVudlZhciByZXByZXNlbnRzIGFuIGVudmlyb25tZW50IHZhcmlhYmxlIHByZXNlbnQgaW4gYSBDb250YWluZXIuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTmFtZSBvZiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUuXG5NYXkgY29uc2lzdCBvZiBhbnkgcHJpbnRhYmxlIEFTQ0lJIGNoYXJhY3RlcnMgZXhjZXB0ICc9Jy4iLCJ0eXBlIjoic3RyaW5nIn0sInZhbHVlIjp7ImRlc2NyaXB0aW9uIjoiVmFyaWFibGUgcmVmZXJlbmNlcyAkKFZBUl9OQU1FKSBhcmUgZXhwYW5kZWRcbnVzaW5nIHRoZSBwcmV2aW91c2x5IGRlZmluZWQgZW52aXJvbm1lbnQgdmFyaWFibGVzIGluIHRoZSBjb250YWluZXIgYW5kXG5hbnkgc2VydmljZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMuIElmIGEgdmFyaWFibGUgY2Fubm90IGJlIHJlc29sdmVkLFxudGhlIHJlZmVyZW5jZSBpbiB0aGUgaW5wdXQgc3RyaW5nIHdpbGwgYmUgdW5jaGFuZ2VkLiBEb3VibGUgJCQgYXJlIHJlZHVjZWRcbnRvIGEgc2luZ2xlICQsIHdoaWNoIGFsbG93cyBmb3IgZXNjYXBpbmcgdGhlICQoVkFSX05BTUUpIHN5bnRheDogaS5lLlxuXCIkJChWQVJfTkFNRSlcIiB3aWxsIHByb2R1Y2UgdGhlIHN0cmluZyBsaXRlcmFsIFwiJChWQVJfTkFNRSlcIi5cbkVzY2FwZWQgcmVmZXJlbmNlcyB3aWxsIG5ldmVyIGJlIGV4cGFuZGVkLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIHZhcmlhYmxlXG5leGlzdHMgb3Igbm90LlxuRGVmYXVsdHMgdG8gXCJcIi4iLCJ0eXBlIjoic3RyaW5nIn0sInZhbHVlRnJvbSI6eyJkZXNjcmlwdGlvbiI6IlNvdXJjZSBmb3IgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlJ3MgdmFsdWUuIENhbm5vdCBiZSB1c2VkIGlmIHZhbHVlIGlzIG5vdCBlbXB0eS4iLCJwcm9wZXJ0aWVzIjp7ImNvbmZpZ01hcEtleVJlZiI6eyJkZXNjcmlwdGlvbiI6IlNlbGVjdHMgYSBrZXkgb2YgYSBDb25maWdNYXAuIiwicHJvcGVydGllcyI6eyJrZXkiOnsiZGVzY3JpcHRpb24iOiJUaGUga2V5IHRvIHNlbGVjdC4iLCJ0eXBlIjoic3RyaW5nIn0sIm5hbWUiOnsiZGVmYXVsdCI6IiIsImRlc2NyaXB0aW9uIjoiTmFtZSBvZiB0aGUgcmVmZXJlbnQuXG5UaGlzIGZpZWxkIGlzIGVmZmVjdGl2ZWx5IHJlcXVpcmVkLCBidXQgZHVlIHRvIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IGlzXG5hbGxvd2VkIHRvIGJlIGVtcHR5LiBJbnN0YW5jZXMgb2YgdGhpcyB0eXBlIHdpdGggYW4gZW1wdHkgdmFsdWUgaGVyZSBhcmVcbmFsbW9zdCBjZXJ0YWlubHkgd3JvbmcuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL292ZXJ2aWV3L3dvcmtpbmctd2l0aC1vYmplY3RzL25hbWVzLyNuYW1lcyIsInR5cGUiOiJzdHJpbmcifSwib3B0aW9uYWwiOnsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IHdoZXRoZXIgdGhlIENvbmZpZ01hcCBvciBpdHMga2V5IG11c3QgYmUgZGVmaW5lZCIsInR5cGUiOiJib29sZWFuIn19LCJyZXF1aXJlZCI6WyJrZXkiXSwidHlwZSI6Im9iamVjdCIsIngta3ViZXJuZXRlcy1tYXAtdHlwZSI6ImF0b21pYyJ9LCJmaWVsZFJlZiI6eyJkZXNjcmlwdGlvbiI6IlNlbGVjdHMgYSBmaWVsZCBvZiB0aGUgcG9kOiBzdXBwb3J0cyBtZXRhZGF0YS5uYW1lLCBtZXRhZGF0YS5uYW1lc3BhY2UsIGBtZXRhZGF0YS5sYWJlbHNbJ1x1MDAzY0tFWVx1MDAzZSddYCwgYG1ldGFkYXRhLmFubm90YXRpb25zWydcdTAwM2NLRVlcdTAwM2UnXWAsXG5zcGVjLm5vZGVOYW1lLCBzcGVjLnNlcnZpY2VBY2NvdW50TmFtZSwgc3RhdHVzLmhvc3RJUCwgc3RhdHVzLnBvZElQLCBzdGF0dXMucG9kSVBzLiIsInByb3BlcnRpZXMiOnsiYXBpVmVyc2lvbiI6eyJkZXNjcmlwdGlvbiI6IlZlcnNpb24gb2YgdGhlIHNjaGVtYSB0aGUgRmllbGRQYXRoIGlzIHdyaXR0ZW4gaW4gdGVybXMgb2YsIGRlZmF1bHRzIHRvIFwidjFcIi4iLCJ0eXBlIjoic3RyaW5nIn0sImZpZWxkUGF0aCI6eyJkZXNjcmlwdGlvbiI6IlBhdGggb2YgdGhlIGZpZWxkIHRvIHNlbGVjdCBpbiB0aGUgc3BlY2lmaWVkIEFQSSB2ZXJzaW9uLiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbImZpZWxkUGF0aCJdLCJ0eXBlIjoib2JqZWN0IiwieC1rdWJlcm5ldGVzLW1hcC10eXBlIjoiYXRvbWljIn0sImZpbGVLZXlSZWYiOnsiZGVzY3JpcHRpb24iOiJGaWxlS2V5UmVmIHNlbGVjdHMgYSBrZXkgb2YgdGhlIGVudiBmaWxlLlxuUmVxdWlyZXMgdGhlIEVudkZpbGVzIGZlYXR1cmUgZ2F0ZSB0byBiZSBlbmFibGVkLiIsInByb3BlcnRpZXMiOnsia2V5Ijp7ImRlc2NyaXB0aW9uIjoiVGhlIGtleSB3aXRoaW4gdGhlIGVudiBmaWxlLiBBbiBpbnZhbGlkIGtleSB3aWxsIHByZXZlbnQgdGhlIHBvZCBmcm9tIHN0YXJ0aW5nLlxuVGhlIGtleXMgZGVmaW5lZCB3aXRoaW4gYSBzb3VyY2UgbWF5IGNvbnNpc3Qgb2YgYW55IHByaW50YWJsZSBBU0NJSSBjaGFyYWN0ZXJzIGV4Y2VwdCAnPScuXG5EdXJpbmcgQWxwaGEgc3RhZ2Ugb2YgdGhlIEVudkZpbGVzIGZlYXR1cmUgZ2F0ZSwgdGhlIGtleSBzaXplIGlzIGxpbWl0ZWQgdG8gMTI4IGNoYXJhY3RlcnMuIiwidHlwZSI6InN0cmluZyJ9LCJvcHRpb25hbCI6eyJkZWZhdWx0IjpmYWxzZSwiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IHdoZXRoZXIgdGhlIGZpbGUgb3IgaXRzIGtleSBtdXN0IGJlIGRlZmluZWQuIElmIHRoZSBmaWxlIG9yIGtleVxuZG9lcyBub3QgZXhpc3QsIHRoZW4gdGhlIGVudiB2YXIgaXMgbm90IHB1Ymxpc2hlZC5cbklmIG9wdGlvbmFsIGlzIHNldCB0byB0cnVlIGFuZCB0aGUgc3BlY2lmaWVkIGtleSBkb2VzIG5vdCBleGlzdCxcbnRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSB3aWxsIG5vdCBiZSBzZXQgaW4gdGhlIFBvZCdzIGNvbnRhaW5lcnMuXG5cbklmIG9wdGlvbmFsIGlzIHNldCB0byBmYWxzZSBhbmQgdGhlIHNwZWNpZmllZCBrZXkgZG9lcyBub3QgZXhpc3QsXG5hbiBlcnJvciB3aWxsIGJlIHJldHVybmVkIGR1cmluZyBQb2QgY3JlYXRpb24uIiwidHlwZSI6ImJvb2xlYW4ifSwicGF0aCI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwYXRoIHdpdGhpbiB0aGUgdm9sdW1lIGZyb20gd2hpY2ggdG8gc2VsZWN0IHRoZSBmaWxlLlxuTXVzdCBiZSByZWxhdGl2ZSBhbmQgbWF5IG5vdCBjb250YWluIHRoZSAnLi4nIHBhdGggb3Igc3RhcnQgd2l0aCAnLi4nLiIsInR5cGUiOiJzdHJpbmcifSwidm9sdW1lTmFtZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSB2b2x1bWUgbW91bnQgY29udGFpbmluZyB0aGUgZW52IGZpbGUuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsia2V5IiwicGF0aCIsInZvbHVtZU5hbWUiXSwidHlwZSI6Im9iamVjdCIsIngta3ViZXJuZXRlcy1tYXAtdHlwZSI6ImF0b21pYyJ9LCJyZXNvdXJjZUZpZWxkUmVmIjp7ImRlc2NyaXB0aW9uIjoiU2VsZWN0cyBhIHJlc291cmNlIG9mIHRoZSBjb250YWluZXI6IG9ubHkgcmVzb3VyY2VzIGxpbWl0cyBhbmQgcmVxdWVzdHNcbihsaW1pdHMuY3B1LCBsaW1pdHMubWVtb3J5LCBsaW1pdHMuZXBoZW1lcmFsLXN0b3JhZ2UsIHJlcXVlc3RzLmNwdSwgcmVxdWVzdHMubWVtb3J5IGFuZCByZXF1ZXN0cy5lcGhlbWVyYWwtc3RvcmFnZSkgYXJlIGN1cnJlbnRseSBzdXBwb3J0ZWQuIiwicHJvcGVydGllcyI6eyJjb250YWluZXJOYW1lIjp7ImRlc2NyaXB0aW9uIjoiQ29udGFpbmVyIG5hbWU6IHJlcXVpcmVkIGZvciB2b2x1bWVzLCBvcHRpb25hbCBmb3IgZW52IHZhcnMiLCJ0eXBlIjoic3RyaW5nIn0sImRpdmlzb3IiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJkZXNjcmlwdGlvbiI6IlNwZWNpZmllcyB0aGUgb3V0cHV0IGZvcm1hdCBvZiB0aGUgZXhwb3NlZCByZXNvdXJjZXMsIGRlZmF1bHRzIHRvIFwiMVwiIiwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJyZXNvdXJjZSI6eyJkZXNjcmlwdGlvbiI6IlJlcXVpcmVkOiByZXNvdXJjZSB0byBzZWxlY3QiLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJyZXNvdXJjZSJdLCJ0eXBlIjoib2JqZWN0IiwieC1rdWJlcm5ldGVzLW1hcC10eXBlIjoiYXRvbWljIn0sInNlY3JldEtleVJlZiI6eyJkZXNjcmlwdGlvbiI6IlNlbGVjdHMgYSBrZXkgb2YgYSBzZWNyZXQgaW4gdGhlIHBvZCdzIG5hbWVzcGFjZSIsInByb3BlcnRpZXMiOnsia2V5Ijp7ImRlc2NyaXB0aW9uIjoiVGhlIGtleSBvZiB0aGUgc2VjcmV0IHRvIHNlbGVjdCBmcm9tLiAgTXVzdCBiZSBhIHZhbGlkIHNlY3JldCBrZXkuIiwidHlwZSI6InN0cmluZyJ9LCJuYW1lIjp7ImRlZmF1bHQiOiIiLCJkZXNjcmlwdGlvbiI6Ik5hbWUgb2YgdGhlIHJlZmVyZW50LlxuVGhpcyBmaWVsZCBpcyBlZmZlY3RpdmVseSByZXF1aXJlZCwgYnV0IGR1ZSB0byBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSBpc1xuYWxsb3dlZCB0byBiZSBlbXB0eS4gSW5zdGFuY2VzIG9mIHRoaXMgdHlwZSB3aXRoIGFuIGVtcHR5IHZhbHVlIGhlcmUgYXJlXG5hbG1vc3QgY2VydGFpbmx5IHdyb25nLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9vdmVydmlldy93b3JraW5nLXdpdGgtb2JqZWN0cy9uYW1lcy8jbmFtZXMiLCJ0eXBlIjoic3RyaW5nIn0sIm9wdGlvbmFsIjp7ImRlc2NyaXB0aW9uIjoiU3BlY2lmeSB3aGV0aGVyIHRoZSBTZWNyZXQgb3IgaXRzIGtleSBtdXN0IGJlIGRlZmluZWQiLCJ0eXBlIjoiYm9vbGVhbiJ9fSwicmVxdWlyZWQiOlsia2V5Il0sInR5cGUiOiJvYmplY3QiLCJ4LWt1YmVybmV0ZXMtbWFwLXR5cGUiOiJhdG9taWMifX0sInR5cGUiOiJvYmplY3QifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibGFiZWxzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7InR5cGUiOiJzdHJpbmcifSwiZGVzY3JpcHRpb24iOiJDdXN0b20gbGFiZWxzIHRvIHNldCBvbiBhbGwgbWFuYWdlZCBvYmplY3RzLiIsInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwiZWdyZXNzIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcmVsYXRlZCB0byBvdXRnb2luZyBuZXR3b3JrIHRyYWZmaWMuIiwicHJvcGVydGllcyI6eyJjb25uZWN0aXZpdHlQb2xpY3kiOnsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIHdoZXRoZXIgUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5IHNob3VsZCBydW4gaW4gb25saW5lIG9yIG9mZmxpbmUgKGRpc2Nvbm5lY3RlZCkgbW9kZS5cbkluIG9mZmxpbmUgbW9kZSwgYXV0b21hdGljIHVwZGF0ZXMgb2YgdnVsbmVyYWJpbGl0eSBkZWZpbml0aW9ucyBhbmQga2VybmVsIG1vZHVsZXMgYXJlIGRpc2FibGVkLlxuVGhlIGRlZmF1bHQgaXM6IE9ubGluZS4iLCJlbnVtIjpbIk9ubGluZSIsIk9mZmxpbmUiXSwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJpbWFnZVB1bGxTZWNyZXRzIjp7ImRlc2NyaXB0aW9uIjoiQWRkaXRpb25hbCBpbWFnZSBwdWxsIHNlY3JldHMgdG8gYmUgdGFrZW4gaW50byBhY2NvdW50IGZvciBwdWxsaW5nIGltYWdlcy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IkxvY2FsU2VjcmV0UmVmZXJlbmNlIGlzIGEgcmVmZXJlbmNlIHRvIGEgc2VjcmV0IHdpdGhpbiB0aGUgc2FtZSBuYW1lc3BhY2UuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHJlZmVyZW5jZWQgc2VjcmV0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibWlzYyI6eyJkZXNjcmlwdGlvbiI6IkRlcHJlY2F0ZWQgZmllbGQuIFRoaXMgZmllbGQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHJlbGVhc2UuXG5NaXNjZWxsYW5lb3VzIHNldHRpbmdzLiIsInByb3BlcnRpZXMiOnsiY3JlYXRlU0NDcyI6eyJkZXNjcmlwdGlvbiI6IkRlcHJlY2F0ZWQgZmllbGQuIFRoaXMgZmllbGQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHJlbGVhc2UuXG5TZXQgdGhpcyB0byB0cnVlIHRvIGhhdmUgdGhlIG9wZXJhdG9yIGNyZWF0ZSBTZWN1cml0eUNvbnRleHRDb25zdHJhaW50cyAoU0NDcykgZm9yIHRoZSBvcGVyYW5kcy4gVGhpc1xuaXNuJ3QgdXN1YWxseSBuZWVkZWQsIGFuZCBtYXkgaW50ZXJmZXJlIHdpdGggb3RoZXIgd29ya2xvYWRzLiIsInR5cGUiOiJib29sZWFuIn19LCJ0eXBlIjoib2JqZWN0In0sIm1vbml0b3JpbmciOnsiZGVzY3JpcHRpb24iOiJNb25pdG9yaW5nIGNvbmZpZ3VyYXRpb24uIiwicHJvcGVydGllcyI6eyJvcGVuc2hpZnQiOnsiZGVzY3JpcHRpb24iOiJPcGVuU2hpZnRNb25pdG9yaW5nIGRlZmluZXMgc2V0dGluZ3MgcmVsYXRlZCB0byBPcGVuU2hpZnQgTW9uaXRvcmluZyIsInByb3BlcnRpZXMiOnsiZW5hYmxlZCI6eyJkZXNjcmlwdGlvbiI6IlRoZSBkZWZhdWx0IGlzOiB0cnVlLiIsInR5cGUiOiJib29sZWFuIn19LCJyZXF1aXJlZCI6WyJlbmFibGVkIl0sInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwibmV0d29yayI6eyJkZXNjcmlwdGlvbiI6Ik5ldHdvcmsgY29uZmlndXJhdGlvbi4iLCJwcm9wZXJ0aWVzIjp7InBvbGljaWVzIjp7ImRlc2NyaXB0aW9uIjoiVG8gcHJvdmlkZSBzZWN1cml0eSBhdCB0aGUgbmV0d29yayBsZXZlbCB0aGUgQUNTIE9wZXJhdG9yIGNyZWF0ZXMgTmV0d29ya1BvbGljeSByZXNvdXJjZXMgYnkgZGVmYXVsdC4gSWYgeW91IHdhbnQgdG8gbWFuYWdlIHlvdXIgb3duIE5ldHdvcmtQb2xpY3kgb2JqZWN0cyB0aGVuIHNldCB0aGlzIHRvIFwiRGlzYWJsZWRcIi5cblRoZSBkZWZhdWx0IGlzOiBFbmFibGVkLiIsImVudW0iOlsiRW5hYmxlZCIsIkRpc2FibGVkIl0sInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwib3ZlcmxheXMiOnsiZGVzY3JpcHRpb24iOiJPdmVybGF5cyIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiSzhzT2JqZWN0T3ZlcmxheSBpcyBhbiBvdmVybGF5IHRoYXQgYXBwbGllcyBhIHNldCBvZiBwYXRjaGVzIHRvIGEgcmVzb3VyY2UuXG5JdCB0YXJnZXRzIGEgcmVzb3VyY2UgYnkgaXRzIEFQSSB2ZXJzaW9uLCBraW5kLCBhbmQgbmFtZSwgYW5kIGFwcGxpZXNcbmEgbGlzdCBvZiBwYXRjaGVzIHRvIHRoaXMgcmVzb3VyY2UuXG5cbiMgRXhhbXBsZXNcblxuIyMgQWRkaW5nIGFuIGFubm90YXRpb24gdG8gYSByZXNvdXJjZVxuXG5cdGFwaVZlcnNpb246IHYxXG5cdGtpbmQ6IFNlcnZpY2VBY2NvdW50XG5cdG5hbWU6IGNlbnRyYWxcblx0cGF0Y2hlczpcblx0LSBwYXRoOiBtZXRhZGF0YS5hbm5vdGF0aW9ucy5la3NcXC5hbWF6b25hd3NcXC5jb20vcm9sZS1hcm5cblx0ICB2YWx1ZTogXCJcXFwiYXJuOmF3czppYW06MTIzNDpyb2xlXFxcIlwiXG5cbiMjIEFkZGluZyBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byBhIGRlcGxveW1lbnRcblxuXHRhcGlWZXJzaW9uOiBhcHBzL3YxXG5cdGtpbmQ6IERlcGxveW1lbnRcblx0bmFtZTogY2VudHJhbFxuXHRwYXRjaGVzOlxuXHQtIHBhdGg6IHNwZWMudGVtcGxhdGUuc3BlYy5jb250YWluZXJzW25hbWU6Y2VudHJhbF0uZW52Wy0xXVxuXHQgIHZhbHVlOiB8XG5cdCAgICBuYW1lOiBNWV9FTlZfVkFSXG5cdCAgICB2YWx1ZTogdmFsdWVcblxuIyMgQWRkaW5nIGFuIGluZ3Jlc3MgdG8gYSBuZXR3b3JrIHBvbGljeVxuXG5cdGFwaVZlcnNpb246IG5ldHdvcmtpbmcuazhzLmlvL3YxXG5cdGtpbmQ6IE5ldHdvcmtQb2xpY3lcblx0bmFtZTogYWxsb3ctZXh0LXRvLWNlbnRyYWxcblx0cGF0Y2hlczpcblx0LSBwYXRoOiBzcGVjLmluZ3Jlc3NbLTFdXG5cdCAgdmFsdWU6IHxcblx0ICAgIHBvcnRzOlxuXHQgICAgLSBwb3J0OiA5OTlcblx0ICAgICAgcHJvdG9jb2w6IFRDUFxuXG4jIyBDaGFuZ2luZyB0aGUgdmFsdWUgb2YgYSBjb25maWdNYXBcblxuXHRhcGlWZXJzaW9uOiB2MVxuXHRraW5kOiBDb25maWdNYXBcblx0bmFtZTogY2VudHJhbC1lbmRwb2ludHNcblx0cGF0Y2hlczpcblx0LSBwYXRoOiBkYXRhLmVuZHBvaW50c1xcLnlhbWw6XG5cdCAgdmVyYmF0aW06IHxcblx0ICAgIGRpc2FibGVEZWZhdWx0OiBmYWxzZVxuXG4jIyBBZGRpbmcgYSBjb250YWluZXIgdG8gYSBkZXBsb3ltZW50XG5cblx0YXBpVmVyc2lvbjogYXBwcy92MVxuXHRraW5kOiBEZXBsb3ltZW50XG5cdG5hbWU6IGNlbnRyYWxcblx0cGF0Y2hlczpcblx0ICAtIHBhdGg6IHNwZWMudGVtcGxhdGUuc3BlYy5jb250YWluZXJzWy0xXVxuXHQgICAgdmFsdWU6IHxcblx0ICAgICAgbmFtZTogbmdpbnhcblx0ICAgICAgaW1hZ2U6IG5naW54XG5cdCAgICAgIHBvcnRzOlxuXHQgICAgICAtIGNvbnRhaW5lclBvcnQ6IDgwMDBcblx0ICAgICAgICBuYW1lOiBodHRwXG5cdCAgICAgICAgcHJvdG9jb2w6IFRDUCIsInByb3BlcnRpZXMiOnsiYXBpVmVyc2lvbiI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlIEFQSSB2ZXJzaW9uLiIsInR5cGUiOiJzdHJpbmcifSwia2luZCI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlIGtpbmQuIiwidHlwZSI6InN0cmluZyJ9LCJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTmFtZSBvZiByZXNvdXJjZS4iLCJ0eXBlIjoic3RyaW5nIn0sIm9wdGlvbmFsIjp7ImRlc2NyaXB0aW9uIjoiT3B0aW9uYWwgbWFya3MgdGhlIG92ZXJsYXkgYXMgb3B0aW9uYWwuXG5XaGVuIE9wdGlvbmFsIGlzIHRydWUsIGFuZCB0aGUgc3BlY2lmaWVkIHJlc291cmNlIGRvZXMgbm90IGV4aXN0IGluIHRoZSBvdXRwdXQgbWFuaWZlc3RzLCB0aGUgb3ZlcmxheSB3aWxsIGJlIHNraXBwZWQsIGFuZCBhIHdhcm5pbmcgd2lsbCBiZSBsb2dnZWQuXG5XaGVuIE9wdGlvbmFsIGlzIGZhbHNlLCBhbmQgdGhlIHNwZWNpZmllZCByZXNvdXJjZSBkb2VzIG5vdCBleGlzdCBpbiB0aGUgb3V0cHV0IG1hbmlmZXN0cywgYW4gZXJyb3Igd2lsbCBiZSB0aHJvd24uIiwidHlwZSI6ImJvb2xlYW4ifSwicGF0Y2hlcyI6eyJkZXNjcmlwdGlvbiI6Ikxpc3Qgb2YgcGF0Y2hlcyB0byBhcHBseSB0byByZXNvdXJjZS4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6Iks4c09iamVjdE92ZXJsYXlQYXRjaCBkZWZpbmVzIGEgcGF0Y2ggdG8gYXBwbHkgdG8gYSByZXNvdXJjZS4iLCJwcm9wZXJ0aWVzIjp7InBhdGgiOnsiZGVzY3JpcHRpb24iOiJQYXRoIG9mIHRoZSBmb3JtIGEuW2tleTE6dmFsdWUxXS5iLls6dmFsdWUyXVxuV2hlcmUgW2tleTE6dmFsdWUxXSBpcyBhIHNlbGVjdG9yIGZvciBhIGtleS12YWx1ZSBwYWlyIHRvIGlkZW50aWZ5IGEgbGlzdCBlbGVtZW50IGFuZCBbOnZhbHVlXSBpcyBhIHZhbHVlXG5zZWxlY3RvciB0byBpZGVudGlmeSBhIGxpc3QgZWxlbWVudCBpbiBhIGxlYWYgbGlzdC5cbkFsbCBwYXRoIGludGVybWVkaWF0ZSBub2RlcyBtdXN0IGV4aXN0LiIsInR5cGUiOiJzdHJpbmcifSwidmFsdWUiOnsiZGVzY3JpcHRpb24iOiJWYWx1ZSB0byBhZGQsIGRlbGV0ZSBvciByZXBsYWNlLlxuRm9yIGFkZCwgdGhlIHBhdGggc2hvdWxkIGJlIGEgbmV3IGxlYWYuXG5Gb3IgZGVsZXRlLCB2YWx1ZSBzaG91bGQgYmUgdW5zZXQuXG5Gb3IgcmVwbGFjZSwgcGF0aCBzaG91bGQgcmVmZXJlbmNlIGFuIGV4aXN0aW5nIG5vZGUuXG5BbGwgdmFsdWVzIGFyZSBzdHJpbmdzIGJ1dCBhcmUgY29udmVydGVkIGludG8gYXBwcm9wcmlhdGUgdHlwZSBiYXNlZCBvbiBzY2hlbWEuIiwidHlwZSI6InN0cmluZyJ9LCJ2ZXJiYXRpbSI6eyJkZXNjcmlwdGlvbiI6IlZlcmJhdGltIHZhbHVlIHRvIGFkZCwgZGVsZXRlIG9yIHJlcGxhY2UuXG5TYW1lIGFzIFZhbHVlLCBob3dldmVyIHRoZSBjb250ZW50IGlzIG5vdCBpbnRlcnByZXRlZCBhcyBZQU1MLCBidXQgdHJlYXRlZCBhcyBsaXRlcmFsIHN0cmluZyBpbnN0ZWFkLlxuQXQgbGVhc3Qgb25lIG9mIFZhbHVlIGFuZCBWZXJiYXRpbSBtdXN0IGJlIGVtcHR5LiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In19LCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJzY2FubmVyIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBTY2FubmVyIGNvbXBvbmVudCwgd2hpY2ggaXMgcmVzcG9uc2libGUgZm9yIHZ1bG5lcmFiaWxpdHkgc2Nhbm5pbmcgb2YgY29udGFpbmVyXG5pbWFnZXMuIiwicHJvcGVydGllcyI6eyJhbmFseXplciI6eyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHBlcnRhaW5pbmcgdG8gdGhlIGFuYWx5emVyIGRlcGxveW1lbnQsIHN1Y2ggYXMgZm9yIGF1dG9zY2FsaW5nLiIsInByb3BlcnRpZXMiOnsiaG9zdEFsaWFzZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhcyBob2xkcyB0aGUgbWFwcGluZyBiZXR3ZWVuIElQIGFuZCBob3N0bmFtZXMgdGhhdCB3aWxsIGJlIGluamVjdGVkIGFzIGFuIGVudHJ5IGluIHRoZVxucG9kJ3MgaG9zdHMgZmlsZS4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RuYW1lcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RuYW1lcyBmb3IgdGhlIGFib3ZlIElQIGFkZHJlc3MuIiwiaXRlbXMiOnsidHlwZSI6InN0cmluZyJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoiYXRvbWljIn0sImlwIjp7ImRlc2NyaXB0aW9uIjoiSVAgYWRkcmVzcyBvZiB0aGUgaG9zdCBmaWxlIGVudHJ5LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbImlwIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sIm5vZGVTZWxlY3RvciI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJ0eXBlIjoic3RyaW5nIn0sImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIGEgbm9kZSBzZWxlY3RvciBoZXJlLiIsInR5cGUiOiJvYmplY3QifSwicmVzb3VyY2VzIjp7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJwcm9wZXJ0aWVzIjp7ImNsYWltcyI6eyJkZXNjcmlwdGlvbiI6IkNsYWltcyBsaXN0cyB0aGUgbmFtZXMgb2YgcmVzb3VyY2VzLCBkZWZpbmVkIGluIHNwZWMucmVzb3VyY2VDbGFpbXMsXG50aGF0IGFyZSB1c2VkIGJ5IHRoaXMgY29udGFpbmVyLlxuXG5UaGlzIGZpZWxkIGRlcGVuZHMgb24gdGhlXG5EeW5hbWljUmVzb3VyY2VBbGxvY2F0aW9uIGZlYXR1cmUgZ2F0ZS5cblxuVGhpcyBmaWVsZCBpcyBpbW11dGFibGUuIEl0IGNhbiBvbmx5IGJlIHNldCBmb3IgY29udGFpbmVycy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlQ2xhaW0gcmVmZXJlbmNlcyBvbmUgZW50cnkgaW4gUG9kU3BlYy5SZXNvdXJjZUNsYWltcy4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJOYW1lIG11c3QgbWF0Y2ggdGhlIG5hbWUgb2Ygb25lIGVudHJ5IGluIHBvZC5zcGVjLnJlc291cmNlQ2xhaW1zIG9mXG50aGUgUG9kIHdoZXJlIHRoaXMgZmllbGQgaXMgdXNlZC4gSXQgbWFrZXMgdGhhdCByZXNvdXJjZSBhdmFpbGFibGVcbmluc2lkZSBhIGNvbnRhaW5lci4iLCJ0eXBlIjoic3RyaW5nIn0sInJlcXVlc3QiOnsiZGVzY3JpcHRpb24iOiJSZXF1ZXN0IGlzIHRoZSBuYW1lIGNob3NlbiBmb3IgYSByZXF1ZXN0IGluIHRoZSByZWZlcmVuY2VkIGNsYWltLlxuSWYgZW1wdHksIGV2ZXJ5dGhpbmcgZnJvbSB0aGUgY2xhaW0gaXMgbWFkZSBhdmFpbGFibGUsIG90aGVyd2lzZVxub25seSB0aGUgcmVzdWx0IG9mIHRoaXMgcmVxdWVzdC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtbWFwLWtleXMiOlsibmFtZSJdLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoibWFwIn0sImxpbWl0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJMaW1pdHMgZGVzY3JpYmVzIHRoZSBtYXhpbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyBhbGxvd2VkLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In0sInJlcXVlc3RzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IlJlcXVlc3RzIGRlc2NyaWJlcyB0aGUgbWluaW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgcmVxdWlyZWQuXG5JZiBSZXF1ZXN0cyBpcyBvbWl0dGVkIGZvciBhIGNvbnRhaW5lciwgaXQgZGVmYXVsdHMgdG8gTGltaXRzIGlmIHRoYXQgaXMgZXhwbGljaXRseSBzcGVjaWZpZWQsXG5vdGhlcndpc2UgdG8gYW4gaW1wbGVtZW50YXRpb24tZGVmaW5lZCB2YWx1ZS4gUmVxdWVzdHMgY2Fubm90IGV4Y2VlZCBMaW1pdHMuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwic2NhbGluZyI6eyJkZXNjcmlwdGlvbiI6IkNvbnRyb2xzIHRoZSBudW1iZXIgb2YgYW5hbHl6ZXIgcmVwbGljYXMgYW5kIGF1dG9zY2FsaW5nLiIsInByb3BlcnRpZXMiOnsiYXV0b1NjYWxpbmciOnsiZGVzY3JpcHRpb24iOiJXaGVuIGVuYWJsZWQsIHRoZSBudW1iZXIgb2YgY29tcG9uZW50IHJlcGxpY2FzIGlzIG1hbmFnZWQgZHluYW1pY2FsbHkgYmFzZWQgb24gdGhlIGxvYWQsIHdpdGhpbiB0aGUgbGltaXRzXG5zcGVjaWZpZWQgYmVsb3cuXG5UaGUgZGVmYXVsdCBpczogRW5hYmxlZC4iLCJlbnVtIjpbIkVuYWJsZWQiLCJEaXNhYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn0sIm1heFJlcGxpY2FzIjp7ImRlc2NyaXB0aW9uIjoiVGhlIGRlZmF1bHQgaXM6IDUuIiwiZm9ybWF0IjoiaW50MzIiLCJtaW5pbXVtIjoxLCJ0eXBlIjoiaW50ZWdlciJ9LCJtaW5SZXBsaWNhcyI6eyJkZXNjcmlwdGlvbiI6IlRoZSBkZWZhdWx0IGlzOiAyLiIsImZvcm1hdCI6ImludDMyIiwibWluaW11bSI6MSwidHlwZSI6ImludGVnZXIifSwicmVwbGljYXMiOnsiZGVzY3JpcHRpb24iOiJXaGVuIGF1dG9zY2FsaW5nIGlzIGRpc2FibGVkLCB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIHdpbGwgYWx3YXlzIGJlIGNvbmZpZ3VyZWQgdG8gbWF0Y2ggdGhpcyB2YWx1ZS5cblRoZSBkZWZhdWx0IGlzOiAzLiIsImZvcm1hdCI6ImludDMyIiwibWluaW11bSI6MSwidHlwZSI6ImludGVnZXIifX0sInR5cGUiOiJvYmplY3QifSwidG9sZXJhdGlvbnMiOnsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwb2QgdGhpcyBUb2xlcmF0aW9uIGlzIGF0dGFjaGVkIHRvIHRvbGVyYXRlcyBhbnkgdGFpbnQgdGhhdCBtYXRjaGVzXG50aGUgdHJpcGxlIFx1MDAzY2tleSx2YWx1ZSxlZmZlY3RcdTAwM2UgdXNpbmcgdGhlIG1hdGNoaW5nIG9wZXJhdG9yIFx1MDAzY29wZXJhdG9yXHUwMDNlLiIsInByb3BlcnRpZXMiOnsiZWZmZWN0Ijp7ImRlc2NyaXB0aW9uIjoiRWZmZWN0IGluZGljYXRlcyB0aGUgdGFpbnQgZWZmZWN0IHRvIG1hdGNoLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQgZWZmZWN0cy5cbldoZW4gc3BlY2lmaWVkLCBhbGxvd2VkIHZhbHVlcyBhcmUgTm9TY2hlZHVsZSwgUHJlZmVyTm9TY2hlZHVsZSBhbmQgTm9FeGVjdXRlLiIsInR5cGUiOiJzdHJpbmcifSwia2V5Ijp7ImRlc2NyaXB0aW9uIjoiS2V5IGlzIHRoZSB0YWludCBrZXkgdGhhdCB0aGUgdG9sZXJhdGlvbiBhcHBsaWVzIHRvLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQga2V5cy5cbklmIHRoZSBrZXkgaXMgZW1wdHksIG9wZXJhdG9yIG11c3QgYmUgRXhpc3RzOyB0aGlzIGNvbWJpbmF0aW9uIG1lYW5zIHRvIG1hdGNoIGFsbCB2YWx1ZXMgYW5kIGFsbCBrZXlzLiIsInR5cGUiOiJzdHJpbmcifSwib3BlcmF0b3IiOnsiZGVzY3JpcHRpb24iOiJPcGVyYXRvciByZXByZXNlbnRzIGEga2V5J3MgcmVsYXRpb25zaGlwIHRvIHRoZSB2YWx1ZS5cblZhbGlkIG9wZXJhdG9ycyBhcmUgRXhpc3RzIGFuZCBFcXVhbC4gRGVmYXVsdHMgdG8gRXF1YWwuXG5FeGlzdHMgaXMgZXF1aXZhbGVudCB0byB3aWxkY2FyZCBmb3IgdmFsdWUsIHNvIHRoYXQgYSBwb2QgY2FuXG50b2xlcmF0ZSBhbGwgdGFpbnRzIG9mIGEgcGFydGljdWxhciBjYXRlZ29yeS4iLCJ0eXBlIjoic3RyaW5nIn0sInRvbGVyYXRpb25TZWNvbmRzIjp7ImRlc2NyaXB0aW9uIjoiVG9sZXJhdGlvblNlY29uZHMgcmVwcmVzZW50cyB0aGUgcGVyaW9kIG9mIHRpbWUgdGhlIHRvbGVyYXRpb24gKHdoaWNoIG11c3QgYmVcbm9mIGVmZmVjdCBOb0V4ZWN1dGUsIG90aGVyd2lzZSB0aGlzIGZpZWxkIGlzIGlnbm9yZWQpIHRvbGVyYXRlcyB0aGUgdGFpbnQuIEJ5IGRlZmF1bHQsXG5pdCBpcyBub3Qgc2V0LCB3aGljaCBtZWFucyB0b2xlcmF0ZSB0aGUgdGFpbnQgZm9yZXZlciAoZG8gbm90IGV2aWN0KS4gWmVybyBhbmRcbm5lZ2F0aXZlIHZhbHVlcyB3aWxsIGJlIHRyZWF0ZWQgYXMgMCAoZXZpY3QgaW1tZWRpYXRlbHkpIGJ5IHRoZSBzeXN0ZW0uIiwiZm9ybWF0IjoiaW50NjQiLCJ0eXBlIjoiaW50ZWdlciJ9LCJ2YWx1ZSI6eyJkZXNjcmlwdGlvbiI6IlZhbHVlIGlzIHRoZSB0YWludCB2YWx1ZSB0aGUgdG9sZXJhdGlvbiBtYXRjaGVzIHRvLlxuSWYgdGhlIG9wZXJhdG9yIGlzIEV4aXN0cywgdGhlIHZhbHVlIHNob3VsZCBiZSBlbXB0eSwgb3RoZXJ3aXNlIGp1c3QgYSByZWd1bGFyIHN0cmluZy4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9fSwidHlwZSI6Im9iamVjdCJ9LCJkYiI6eyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHBlcnRhaW5pbmcgdG8gdGhlIGRhdGFiYXNlIHVzZWQgYnkgdGhlIFJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSBTY2FubmVyLiIsInByb3BlcnRpZXMiOnsiaG9zdEFsaWFzZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhcyBob2xkcyB0aGUgbWFwcGluZyBiZXR3ZWVuIElQIGFuZCBob3N0bmFtZXMgdGhhdCB3aWxsIGJlIGluamVjdGVkIGFzIGFuIGVudHJ5IGluIHRoZVxucG9kJ3MgaG9zdHMgZmlsZS4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RuYW1lcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RuYW1lcyBmb3IgdGhlIGFib3ZlIElQIGFkZHJlc3MuIiwiaXRlbXMiOnsidHlwZSI6InN0cmluZyJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoiYXRvbWljIn0sImlwIjp7ImRlc2NyaXB0aW9uIjoiSVAgYWRkcmVzcyBvZiB0aGUgaG9zdCBmaWxlIGVudHJ5LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbImlwIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sIm5vZGVTZWxlY3RvciI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJ0eXBlIjoic3RyaW5nIn0sImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIGEgbm9kZSBzZWxlY3RvciBoZXJlLiIsInR5cGUiOiJvYmplY3QifSwicmVzb3VyY2VzIjp7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJwcm9wZXJ0aWVzIjp7ImNsYWltcyI6eyJkZXNjcmlwdGlvbiI6IkNsYWltcyBsaXN0cyB0aGUgbmFtZXMgb2YgcmVzb3VyY2VzLCBkZWZpbmVkIGluIHNwZWMucmVzb3VyY2VDbGFpbXMsXG50aGF0IGFyZSB1c2VkIGJ5IHRoaXMgY29udGFpbmVyLlxuXG5UaGlzIGZpZWxkIGRlcGVuZHMgb24gdGhlXG5EeW5hbWljUmVzb3VyY2VBbGxvY2F0aW9uIGZlYXR1cmUgZ2F0ZS5cblxuVGhpcyBmaWVsZCBpcyBpbW11dGFibGUuIEl0IGNhbiBvbmx5IGJlIHNldCBmb3IgY29udGFpbmVycy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlQ2xhaW0gcmVmZXJlbmNlcyBvbmUgZW50cnkgaW4gUG9kU3BlYy5SZXNvdXJjZUNsYWltcy4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJOYW1lIG11c3QgbWF0Y2ggdGhlIG5hbWUgb2Ygb25lIGVudHJ5IGluIHBvZC5zcGVjLnJlc291cmNlQ2xhaW1zIG9mXG50aGUgUG9kIHdoZXJlIHRoaXMgZmllbGQgaXMgdXNlZC4gSXQgbWFrZXMgdGhhdCByZXNvdXJjZSBhdmFpbGFibGVcbmluc2lkZSBhIGNvbnRhaW5lci4iLCJ0eXBlIjoic3RyaW5nIn0sInJlcXVlc3QiOnsiZGVzY3JpcHRpb24iOiJSZXF1ZXN0IGlzIHRoZSBuYW1lIGNob3NlbiBmb3IgYSByZXF1ZXN0IGluIHRoZSByZWZlcmVuY2VkIGNsYWltLlxuSWYgZW1wdHksIGV2ZXJ5dGhpbmcgZnJvbSB0aGUgY2xhaW0gaXMgbWFkZSBhdmFpbGFibGUsIG90aGVyd2lzZVxub25seSB0aGUgcmVzdWx0IG9mIHRoaXMgcmVxdWVzdC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtbWFwLWtleXMiOlsibmFtZSJdLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoibWFwIn0sImxpbWl0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJMaW1pdHMgZGVzY3JpYmVzIHRoZSBtYXhpbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyBhbGxvd2VkLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In0sInJlcXVlc3RzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IlJlcXVlc3RzIGRlc2NyaWJlcyB0aGUgbWluaW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgcmVxdWlyZWQuXG5JZiBSZXF1ZXN0cyBpcyBvbWl0dGVkIGZvciBhIGNvbnRhaW5lciwgaXQgZGVmYXVsdHMgdG8gTGltaXRzIGlmIHRoYXQgaXMgZXhwbGljaXRseSBzcGVjaWZpZWQsXG5vdGhlcndpc2UgdG8gYW4gaW1wbGVtZW50YXRpb24tZGVmaW5lZCB2YWx1ZS4gUmVxdWVzdHMgY2Fubm90IGV4Y2VlZCBMaW1pdHMuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwidG9sZXJhdGlvbnMiOnsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwb2QgdGhpcyBUb2xlcmF0aW9uIGlzIGF0dGFjaGVkIHRvIHRvbGVyYXRlcyBhbnkgdGFpbnQgdGhhdCBtYXRjaGVzXG50aGUgdHJpcGxlIFx1MDAzY2tleSx2YWx1ZSxlZmZlY3RcdTAwM2UgdXNpbmcgdGhlIG1hdGNoaW5nIG9wZXJhdG9yIFx1MDAzY29wZXJhdG9yXHUwMDNlLiIsInByb3BlcnRpZXMiOnsiZWZmZWN0Ijp7ImRlc2NyaXB0aW9uIjoiRWZmZWN0IGluZGljYXRlcyB0aGUgdGFpbnQgZWZmZWN0IHRvIG1hdGNoLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQgZWZmZWN0cy5cbldoZW4gc3BlY2lmaWVkLCBhbGxvd2VkIHZhbHVlcyBhcmUgTm9TY2hlZHVsZSwgUHJlZmVyTm9TY2hlZHVsZSBhbmQgTm9FeGVjdXRlLiIsInR5cGUiOiJzdHJpbmcifSwia2V5Ijp7ImRlc2NyaXB0aW9uIjoiS2V5IGlzIHRoZSB0YWludCBrZXkgdGhhdCB0aGUgdG9sZXJhdGlvbiBhcHBsaWVzIHRvLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQga2V5cy5cbklmIHRoZSBrZXkgaXMgZW1wdHksIG9wZXJhdG9yIG11c3QgYmUgRXhpc3RzOyB0aGlzIGNvbWJpbmF0aW9uIG1lYW5zIHRvIG1hdGNoIGFsbCB2YWx1ZXMgYW5kIGFsbCBrZXlzLiIsInR5cGUiOiJzdHJpbmcifSwib3BlcmF0b3IiOnsiZGVzY3JpcHRpb24iOiJPcGVyYXRvciByZXByZXNlbnRzIGEga2V5J3MgcmVsYXRpb25zaGlwIHRvIHRoZSB2YWx1ZS5cblZhbGlkIG9wZXJhdG9ycyBhcmUgRXhpc3RzIGFuZCBFcXVhbC4gRGVmYXVsdHMgdG8gRXF1YWwuXG5FeGlzdHMgaXMgZXF1aXZhbGVudCB0byB3aWxkY2FyZCBmb3IgdmFsdWUsIHNvIHRoYXQgYSBwb2QgY2FuXG50b2xlcmF0ZSBhbGwgdGFpbnRzIG9mIGEgcGFydGljdWxhciBjYXRlZ29yeS4iLCJ0eXBlIjoic3RyaW5nIn0sInRvbGVyYXRpb25TZWNvbmRzIjp7ImRlc2NyaXB0aW9uIjoiVG9sZXJhdGlvblNlY29uZHMgcmVwcmVzZW50cyB0aGUgcGVyaW9kIG9mIHRpbWUgdGhlIHRvbGVyYXRpb24gKHdoaWNoIG11c3QgYmVcbm9mIGVmZmVjdCBOb0V4ZWN1dGUsIG90aGVyd2lzZSB0aGlzIGZpZWxkIGlzIGlnbm9yZWQpIHRvbGVyYXRlcyB0aGUgdGFpbnQuIEJ5IGRlZmF1bHQsXG5pdCBpcyBub3Qgc2V0LCB3aGljaCBtZWFucyB0b2xlcmF0ZSB0aGUgdGFpbnQgZm9yZXZlciAoZG8gbm90IGV2aWN0KS4gWmVybyBhbmRcbm5lZ2F0aXZlIHZhbHVlcyB3aWxsIGJlIHRyZWF0ZWQgYXMgMCAoZXZpY3QgaW1tZWRpYXRlbHkpIGJ5IHRoZSBzeXN0ZW0uIiwiZm9ybWF0IjoiaW50NjQiLCJ0eXBlIjoiaW50ZWdlciJ9LCJ2YWx1ZSI6eyJkZXNjcmlwdGlvbiI6IlZhbHVlIGlzIHRoZSB0YWludCB2YWx1ZSB0aGUgdG9sZXJhdGlvbiBtYXRjaGVzIHRvLlxuSWYgdGhlIG9wZXJhdG9yIGlzIEV4aXN0cywgdGhlIHZhbHVlIHNob3VsZCBiZSBlbXB0eSwgb3RoZXJ3aXNlIGp1c3QgYSByZWd1bGFyIHN0cmluZy4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9fSwidHlwZSI6Im9iamVjdCJ9LCJtb25pdG9yaW5nIjp7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyBtb25pdG9yaW5nIGVuZHBvaW50IGZvciBTY2FubmVyLiBUaGUgbW9uaXRvcmluZyBlbmRwb2ludFxuYWxsb3dzIG90aGVyIHNlcnZpY2VzIHRvIGNvbGxlY3QgbWV0cmljcyBmcm9tIFNjYW5uZXIsIHByb3ZpZGVkIGluXG5Qcm9tZXRoZXVzIGNvbXBhdGlibGUgZm9ybWF0LiIsInByb3BlcnRpZXMiOnsiZXhwb3NlRW5kcG9pbnQiOnsiZGVzY3JpcHRpb24iOiJFeHBvc2UgdGhlIG1vbml0b3JpbmcgZW5kcG9pbnQuIEEgbmV3IHNlcnZpY2UsIFwibW9uaXRvcmluZ1wiLFxud2l0aCBwb3J0IDkwOTAsIHdpbGwgYmUgY3JlYXRlZCBhcyB3ZWxsIGFzIGEgbmV0d29yayBwb2xpY3kgYWxsb3dpbmdcbmluYm91bmQgY29ubmVjdGlvbnMgdG8gdGhlIHBvcnQuIiwiZW51bSI6WyJFbmFibGVkIiwiRGlzYWJsZWQiXSwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJzY2FubmVyQ29tcG9uZW50Ijp7ImRlc2NyaXB0aW9uIjoiSWYgeW91IGRvIG5vdCB3YW50IHRvIGRlcGxveSB0aGUgUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5IFNjYW5uZXIsIHlvdSBjYW4gZGlzYWJsZSBpdCBoZXJlXG4obm90IHJlY29tbWVuZGVkKS4gQnkgZGVmYXVsdCwgdGhlIHNjYW5uZXIgaXMgZW5hYmxlZC5cbklmIHlvdSBkbyBzbywgYWxsIHRoZSBzZXR0aW5ncyBpbiB0aGlzIHNlY3Rpb24gd2lsbCBoYXZlIG5vIGVmZmVjdC4iLCJlbnVtIjpbIkVuYWJsZWQiLCJEaXNhYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInNjYW5uZXJWNCI6eyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIGZvciB0aGUgU2Nhbm5lciBWNCBjb21wb25lbnQsIHdoaWNoIGNhbiBydW4gaW4gYWRkaXRpb24gdG8gdGhlIHByZXZpb3VzbHkgZXhpc3RpbmcgU2Nhbm5lciBjb21wb25lbnRzIiwicHJvcGVydGllcyI6eyJkYiI6eyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHBlcnRhaW5pbmcgdG8gdGhlIERCIGRlcGxveW1lbnQuIiwicHJvcGVydGllcyI6eyJob3N0QWxpYXNlcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzIGhvbGRzIHRoZSBtYXBwaW5nIGJldHdlZW4gSVAgYW5kIGhvc3RuYW1lcyB0aGF0IHdpbGwgYmUgaW5qZWN0ZWQgYXMgYW4gZW50cnkgaW4gdGhlXG5wb2QncyBob3N0cyBmaWxlLiIsInByb3BlcnRpZXMiOnsiaG9zdG5hbWVzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdG5hbWVzIGZvciB0aGUgYWJvdmUgSVAgYWRkcmVzcy4iLCJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJhdG9taWMifSwiaXAiOnsiZGVzY3JpcHRpb24iOiJJUCBhZGRyZXNzIG9mIHRoZSBob3N0IGZpbGUgZW50cnkuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiaXAiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibm9kZVNlbGVjdG9yIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7InR5cGUiOiJzdHJpbmcifSwiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwidHlwZSI6Im9iamVjdCJ9LCJwZXJzaXN0ZW5jZSI6eyJkZXNjcmlwdGlvbiI6IkNvbmZpZ3VyZXMgaG93IFNjYW5uZXIgVjQgc2hvdWxkIHN0b3JlIGl0cyBwZXJzaXN0ZW50IGRhdGEuXG5Zb3UgY2FuIHVzZSBhIHBlcnNpc3RlbnQgdm9sdW1lIGNsYWltICh0aGUgcmVjb21tZW5kZWQgZGVmYXVsdCksIGEgaG9zdCBwYXRoLFxub3IgYW4gZW1wdHlEaXIgdm9sdW1lIGlmIFNjYW5uZXIgVjQgaXMgcnVubmluZyBvbiBhIHNlY3VyZWQgY2x1c3RlciB3aXRob3V0IGRlZmF1bHQgU3RvcmFnZUNsYXNzLiIsInByb3BlcnRpZXMiOnsiaG9zdFBhdGgiOnsiZGVzY3JpcHRpb24iOiJTdG9yZXMgcGVyc2lzdGVudCBkYXRhIG9uIGEgZGlyZWN0b3J5IG9uIHRoZSBob3N0LiBUaGlzIGlzIG5vdCByZWNvbW1lbmRlZCwgYW5kIHNob3VsZCBvbmx5XG5iZSB1c2VkIHRvZ2V0aGVyIHdpdGggYSBub2RlIHNlbGVjdG9yIChvbmx5IGF2YWlsYWJsZSBpbiBZQU1MIHZpZXcpLiIsInByb3BlcnRpZXMiOnsicGF0aCI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwYXRoIG9uIHRoZSBob3N0IHJ1bm5pbmcgQ2VudHJhbC4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInBlcnNpc3RlbnRWb2x1bWVDbGFpbSI6eyJkZXNjcmlwdGlvbiI6IlVzZXMgYSBLdWJlcm5ldGVzIHBlcnNpc3RlbnQgdm9sdW1lIGNsYWltIChQVkMpIHRvIG1hbmFnZSB0aGUgc3RvcmFnZSBsb2NhdGlvbiBvZiBwZXJzaXN0ZW50IGRhdGEuXG5SZWNvbW1lbmRlZCBmb3IgbW9zdCB1c2Vycy4iLCJwcm9wZXJ0aWVzIjp7ImNsYWltTmFtZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSBQVkMgdG8gbWFuYWdlIHBlcnNpc3RlbnQgZGF0YS4gSWYgbm8gUFZDIHdpdGggdGhlIGdpdmVuIG5hbWUgZXhpc3RzLCBpdCB3aWxsIGJlXG5jcmVhdGVkLlxuVGhlIGRlZmF1bHQgaXM6IHNjYW5uZXItdjQtZGIuIiwidHlwZSI6InN0cmluZyJ9LCJzaXplIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHNpemUgb2YgdGhlIHBlcnNpc3RlbnQgdm9sdW1lIHdoZW4gY3JlYXRlZCB0aHJvdWdoIHRoZSBjbGFpbS4gSWYgYSBjbGFpbSB3YXMgYXV0b21hdGljYWxseSBjcmVhdGVkLFxudGhpcyBjYW4gYmUgdXNlZCBhZnRlciB0aGUgaW5pdGlhbCBkZXBsb3ltZW50IHRvIHJlc2l6ZSAoZ3JvdykgdGhlIHZvbHVtZSAob25seSBzdXBwb3J0ZWQgYnkgc29tZVxuc3RvcmFnZSBjbGFzcyBjb250cm9sbGVycykuIiwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwidHlwZSI6InN0cmluZyJ9LCJzdG9yYWdlQ2xhc3NOYW1lIjp7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHN0b3JhZ2UgY2xhc3MgdG8gdXNlIGZvciB0aGUgUFZDLiBJZiB5b3VyIGNsdXN0ZXIgaXMgbm90IGNvbmZpZ3VyZWQgd2l0aCBhIGRlZmF1bHQgc3RvcmFnZVxuY2xhc3MsIHlvdSBtdXN0IHNlbGVjdCBhIHZhbHVlIGhlcmUuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJyZXNvdXJjZXMiOnsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsInByb3BlcnRpZXMiOnsiY2xhaW1zIjp7ImRlc2NyaXB0aW9uIjoiQ2xhaW1zIGxpc3RzIHRoZSBuYW1lcyBvZiByZXNvdXJjZXMsIGRlZmluZWQgaW4gc3BlYy5yZXNvdXJjZUNsYWltcyxcbnRoYXQgYXJlIHVzZWQgYnkgdGhpcyBjb250YWluZXIuXG5cblRoaXMgZmllbGQgZGVwZW5kcyBvbiB0aGVcbkR5bmFtaWNSZXNvdXJjZUFsbG9jYXRpb24gZmVhdHVyZSBnYXRlLlxuXG5UaGlzIGZpZWxkIGlzIGltbXV0YWJsZS4gSXQgY2FuIG9ubHkgYmUgc2V0IGZvciBjb250YWluZXJzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2VDbGFpbSByZWZlcmVuY2VzIG9uZSBlbnRyeSBpbiBQb2RTcGVjLlJlc291cmNlQ2xhaW1zLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik5hbWUgbXVzdCBtYXRjaCB0aGUgbmFtZSBvZiBvbmUgZW50cnkgaW4gcG9kLnNwZWMucmVzb3VyY2VDbGFpbXMgb2ZcbnRoZSBQb2Qgd2hlcmUgdGhpcyBmaWVsZCBpcyB1c2VkLiBJdCBtYWtlcyB0aGF0IHJlc291cmNlIGF2YWlsYWJsZVxuaW5zaWRlIGEgY29udGFpbmVyLiIsInR5cGUiOiJzdHJpbmcifSwicmVxdWVzdCI6eyJkZXNjcmlwdGlvbiI6IlJlcXVlc3QgaXMgdGhlIG5hbWUgY2hvc2VuIGZvciBhIHJlcXVlc3QgaW4gdGhlIHJlZmVyZW5jZWQgY2xhaW0uXG5JZiBlbXB0eSwgZXZlcnl0aGluZyBmcm9tIHRoZSBjbGFpbSBpcyBtYWRlIGF2YWlsYWJsZSwgb3RoZXJ3aXNlXG5vbmx5IHRoZSByZXN1bHQgb2YgdGhpcyByZXF1ZXN0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC1tYXAta2V5cyI6WyJuYW1lIl0sIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJtYXAifSwibGltaXRzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IkxpbWl0cyBkZXNjcmliZXMgdGhlIG1heGltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIGFsbG93ZWQuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifSwicmVxdWVzdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiUmVxdWVzdHMgZGVzY3JpYmVzIHRoZSBtaW5pbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyByZXF1aXJlZC5cbklmIFJlcXVlc3RzIGlzIG9taXR0ZWQgZm9yIGEgY29udGFpbmVyLCBpdCBkZWZhdWx0cyB0byBMaW1pdHMgaWYgdGhhdCBpcyBleHBsaWNpdGx5IHNwZWNpZmllZCxcbm90aGVyd2lzZSB0byBhbiBpbXBsZW1lbnRhdGlvbi1kZWZpbmVkIHZhbHVlLiBSZXF1ZXN0cyBjYW5ub3QgZXhjZWVkIExpbWl0cy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0b2xlcmF0aW9ucyI6eyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHBvZCB0aGlzIFRvbGVyYXRpb24gaXMgYXR0YWNoZWQgdG8gdG9sZXJhdGVzIGFueSB0YWludCB0aGF0IG1hdGNoZXNcbnRoZSB0cmlwbGUgXHUwMDNja2V5LHZhbHVlLGVmZmVjdFx1MDAzZSB1c2luZyB0aGUgbWF0Y2hpbmcgb3BlcmF0b3IgXHUwMDNjb3BlcmF0b3JcdTAwM2UuIiwicHJvcGVydGllcyI6eyJlZmZlY3QiOnsiZGVzY3JpcHRpb24iOiJFZmZlY3QgaW5kaWNhdGVzIHRoZSB0YWludCBlZmZlY3QgdG8gbWF0Y2guIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBlZmZlY3RzLlxuV2hlbiBzcGVjaWZpZWQsIGFsbG93ZWQgdmFsdWVzIGFyZSBOb1NjaGVkdWxlLCBQcmVmZXJOb1NjaGVkdWxlIGFuZCBOb0V4ZWN1dGUuIiwidHlwZSI6InN0cmluZyJ9LCJrZXkiOnsiZGVzY3JpcHRpb24iOiJLZXkgaXMgdGhlIHRhaW50IGtleSB0aGF0IHRoZSB0b2xlcmF0aW9uIGFwcGxpZXMgdG8uIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBrZXlzLlxuSWYgdGhlIGtleSBpcyBlbXB0eSwgb3BlcmF0b3IgbXVzdCBiZSBFeGlzdHM7IHRoaXMgY29tYmluYXRpb24gbWVhbnMgdG8gbWF0Y2ggYWxsIHZhbHVlcyBhbmQgYWxsIGtleXMuIiwidHlwZSI6InN0cmluZyJ9LCJvcGVyYXRvciI6eyJkZXNjcmlwdGlvbiI6Ik9wZXJhdG9yIHJlcHJlc2VudHMgYSBrZXkncyByZWxhdGlvbnNoaXAgdG8gdGhlIHZhbHVlLlxuVmFsaWQgb3BlcmF0b3JzIGFyZSBFeGlzdHMgYW5kIEVxdWFsLiBEZWZhdWx0cyB0byBFcXVhbC5cbkV4aXN0cyBpcyBlcXVpdmFsZW50IHRvIHdpbGRjYXJkIGZvciB2YWx1ZSwgc28gdGhhdCBhIHBvZCBjYW5cbnRvbGVyYXRlIGFsbCB0YWludHMgb2YgYSBwYXJ0aWN1bGFyIGNhdGVnb3J5LiIsInR5cGUiOiJzdHJpbmcifSwidG9sZXJhdGlvblNlY29uZHMiOnsiZGVzY3JpcHRpb24iOiJUb2xlcmF0aW9uU2Vjb25kcyByZXByZXNlbnRzIHRoZSBwZXJpb2Qgb2YgdGltZSB0aGUgdG9sZXJhdGlvbiAod2hpY2ggbXVzdCBiZVxub2YgZWZmZWN0IE5vRXhlY3V0ZSwgb3RoZXJ3aXNlIHRoaXMgZmllbGQgaXMgaWdub3JlZCkgdG9sZXJhdGVzIHRoZSB0YWludC4gQnkgZGVmYXVsdCxcbml0IGlzIG5vdCBzZXQsIHdoaWNoIG1lYW5zIHRvbGVyYXRlIHRoZSB0YWludCBmb3JldmVyIChkbyBub3QgZXZpY3QpLiBaZXJvIGFuZFxubmVnYXRpdmUgdmFsdWVzIHdpbGwgYmUgdHJlYXRlZCBhcyAwIChldmljdCBpbW1lZGlhdGVseSkgYnkgdGhlIHN5c3RlbS4iLCJmb3JtYXQiOiJpbnQ2NCIsInR5cGUiOiJpbnRlZ2VyIn0sInZhbHVlIjp7ImRlc2NyaXB0aW9uIjoiVmFsdWUgaXMgdGhlIHRhaW50IHZhbHVlIHRoZSB0b2xlcmF0aW9uIG1hdGNoZXMgdG8uXG5JZiB0aGUgb3BlcmF0b3IgaXMgRXhpc3RzLCB0aGUgdmFsdWUgc2hvdWxkIGJlIGVtcHR5LCBvdGhlcndpc2UganVzdCBhIHJlZ3VsYXIgc3RyaW5nLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In19LCJ0eXBlIjoib2JqZWN0In0sImluZGV4ZXIiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBwZXJ0YWluaW5nIHRvIHRoZSBpbmRleGVyIGRlcGxveW1lbnQuIiwicHJvcGVydGllcyI6eyJob3N0QWxpYXNlcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzIGhvbGRzIHRoZSBtYXBwaW5nIGJldHdlZW4gSVAgYW5kIGhvc3RuYW1lcyB0aGF0IHdpbGwgYmUgaW5qZWN0ZWQgYXMgYW4gZW50cnkgaW4gdGhlXG5wb2QncyBob3N0cyBmaWxlLiIsInByb3BlcnRpZXMiOnsiaG9zdG5hbWVzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdG5hbWVzIGZvciB0aGUgYWJvdmUgSVAgYWRkcmVzcy4iLCJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJhdG9taWMifSwiaXAiOnsiZGVzY3JpcHRpb24iOiJJUCBhZGRyZXNzIG9mIHRoZSBob3N0IGZpbGUgZW50cnkuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiaXAiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibm9kZVNlbGVjdG9yIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7InR5cGUiOiJzdHJpbmcifSwiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwidHlwZSI6Im9iamVjdCJ9LCJyZXNvdXJjZXMiOnsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsInByb3BlcnRpZXMiOnsiY2xhaW1zIjp7ImRlc2NyaXB0aW9uIjoiQ2xhaW1zIGxpc3RzIHRoZSBuYW1lcyBvZiByZXNvdXJjZXMsIGRlZmluZWQgaW4gc3BlYy5yZXNvdXJjZUNsYWltcyxcbnRoYXQgYXJlIHVzZWQgYnkgdGhpcyBjb250YWluZXIuXG5cblRoaXMgZmllbGQgZGVwZW5kcyBvbiB0aGVcbkR5bmFtaWNSZXNvdXJjZUFsbG9jYXRpb24gZmVhdHVyZSBnYXRlLlxuXG5UaGlzIGZpZWxkIGlzIGltbXV0YWJsZS4gSXQgY2FuIG9ubHkgYmUgc2V0IGZvciBjb250YWluZXJzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2VDbGFpbSByZWZlcmVuY2VzIG9uZSBlbnRyeSBpbiBQb2RTcGVjLlJlc291cmNlQ2xhaW1zLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik5hbWUgbXVzdCBtYXRjaCB0aGUgbmFtZSBvZiBvbmUgZW50cnkgaW4gcG9kLnNwZWMucmVzb3VyY2VDbGFpbXMgb2ZcbnRoZSBQb2Qgd2hlcmUgdGhpcyBmaWVsZCBpcyB1c2VkLiBJdCBtYWtlcyB0aGF0IHJlc291cmNlIGF2YWlsYWJsZVxuaW5zaWRlIGEgY29udGFpbmVyLiIsInR5cGUiOiJzdHJpbmcifSwicmVxdWVzdCI6eyJkZXNjcmlwdGlvbiI6IlJlcXVlc3QgaXMgdGhlIG5hbWUgY2hvc2VuIGZvciBhIHJlcXVlc3QgaW4gdGhlIHJlZmVyZW5jZWQgY2xhaW0uXG5JZiBlbXB0eSwgZXZlcnl0aGluZyBmcm9tIHRoZSBjbGFpbSBpcyBtYWRlIGF2YWlsYWJsZSwgb3RoZXJ3aXNlXG5vbmx5IHRoZSByZXN1bHQgb2YgdGhpcyByZXF1ZXN0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC1tYXAta2V5cyI6WyJuYW1lIl0sIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJtYXAifSwibGltaXRzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IkxpbWl0cyBkZXNjcmliZXMgdGhlIG1heGltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIGFsbG93ZWQuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifSwicmVxdWVzdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiUmVxdWVzdHMgZGVzY3JpYmVzIHRoZSBtaW5pbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyByZXF1aXJlZC5cbklmIFJlcXVlc3RzIGlzIG9taXR0ZWQgZm9yIGEgY29udGFpbmVyLCBpdCBkZWZhdWx0cyB0byBMaW1pdHMgaWYgdGhhdCBpcyBleHBsaWNpdGx5IHNwZWNpZmllZCxcbm90aGVyd2lzZSB0byBhbiBpbXBsZW1lbnRhdGlvbi1kZWZpbmVkIHZhbHVlLiBSZXF1ZXN0cyBjYW5ub3QgZXhjZWVkIExpbWl0cy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJzY2FsaW5nIjp7ImRlc2NyaXB0aW9uIjoiQ29udHJvbHMgdGhlIG51bWJlciBvZiByZXBsaWNhcyBhbmQgYXV0b3NjYWxpbmcgZm9yIHRoaXMgY29tcG9uZW50LiIsInByb3BlcnRpZXMiOnsiYXV0b1NjYWxpbmciOnsiZGVzY3JpcHRpb24iOiJXaGVuIGVuYWJsZWQsIHRoZSBudW1iZXIgb2YgY29tcG9uZW50IHJlcGxpY2FzIGlzIG1hbmFnZWQgZHluYW1pY2FsbHkgYmFzZWQgb24gdGhlIGxvYWQsIHdpdGhpbiB0aGUgbGltaXRzXG5zcGVjaWZpZWQgYmVsb3cuXG5UaGUgZGVmYXVsdCBpczogRW5hYmxlZC4iLCJlbnVtIjpbIkVuYWJsZWQiLCJEaXNhYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn0sIm1heFJlcGxpY2FzIjp7ImRlc2NyaXB0aW9uIjoiVGhlIGRlZmF1bHQgaXM6IDUuIiwiZm9ybWF0IjoiaW50MzIiLCJtaW5pbXVtIjoxLCJ0eXBlIjoiaW50ZWdlciJ9LCJtaW5SZXBsaWNhcyI6eyJkZXNjcmlwdGlvbiI6IlRoZSBkZWZhdWx0IGlzOiAyLiIsImZvcm1hdCI6ImludDMyIiwibWluaW11bSI6MSwidHlwZSI6ImludGVnZXIifSwicmVwbGljYXMiOnsiZGVzY3JpcHRpb24iOiJXaGVuIGF1dG9zY2FsaW5nIGlzIGRpc2FibGVkLCB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIHdpbGwgYWx3YXlzIGJlIGNvbmZpZ3VyZWQgdG8gbWF0Y2ggdGhpcyB2YWx1ZS5cblRoZSBkZWZhdWx0IGlzOiAzLiIsImZvcm1hdCI6ImludDMyIiwibWluaW11bSI6MSwidHlwZSI6ImludGVnZXIifX0sInR5cGUiOiJvYmplY3QifSwidG9sZXJhdGlvbnMiOnsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwb2QgdGhpcyBUb2xlcmF0aW9uIGlzIGF0dGFjaGVkIHRvIHRvbGVyYXRlcyBhbnkgdGFpbnQgdGhhdCBtYXRjaGVzXG50aGUgdHJpcGxlIFx1MDAzY2tleSx2YWx1ZSxlZmZlY3RcdTAwM2UgdXNpbmcgdGhlIG1hdGNoaW5nIG9wZXJhdG9yIFx1MDAzY29wZXJhdG9yXHUwMDNlLiIsInByb3BlcnRpZXMiOnsiZWZmZWN0Ijp7ImRlc2NyaXB0aW9uIjoiRWZmZWN0IGluZGljYXRlcyB0aGUgdGFpbnQgZWZmZWN0IHRvIG1hdGNoLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQgZWZmZWN0cy5cbldoZW4gc3BlY2lmaWVkLCBhbGxvd2VkIHZhbHVlcyBhcmUgTm9TY2hlZHVsZSwgUHJlZmVyTm9TY2hlZHVsZSBhbmQgTm9FeGVjdXRlLiIsInR5cGUiOiJzdHJpbmcifSwia2V5Ijp7ImRlc2NyaXB0aW9uIjoiS2V5IGlzIHRoZSB0YWludCBrZXkgdGhhdCB0aGUgdG9sZXJhdGlvbiBhcHBsaWVzIHRvLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQga2V5cy5cbklmIHRoZSBrZXkgaXMgZW1wdHksIG9wZXJhdG9yIG11c3QgYmUgRXhpc3RzOyB0aGlzIGNvbWJpbmF0aW9uIG1lYW5zIHRvIG1hdGNoIGFsbCB2YWx1ZXMgYW5kIGFsbCBrZXlzLiIsInR5cGUiOiJzdHJpbmcifSwib3BlcmF0b3IiOnsiZGVzY3JpcHRpb24iOiJPcGVyYXRvciByZXByZXNlbnRzIGEga2V5J3MgcmVsYXRpb25zaGlwIHRvIHRoZSB2YWx1ZS5cblZhbGlkIG9wZXJhdG9ycyBhcmUgRXhpc3RzIGFuZCBFcXVhbC4gRGVmYXVsdHMgdG8gRXF1YWwuXG5FeGlzdHMgaXMgZXF1aXZhbGVudCB0byB3aWxkY2FyZCBmb3IgdmFsdWUsIHNvIHRoYXQgYSBwb2QgY2FuXG50b2xlcmF0ZSBhbGwgdGFpbnRzIG9mIGEgcGFydGljdWxhciBjYXRlZ29yeS4iLCJ0eXBlIjoic3RyaW5nIn0sInRvbGVyYXRpb25TZWNvbmRzIjp7ImRlc2NyaXB0aW9uIjoiVG9sZXJhdGlvblNlY29uZHMgcmVwcmVzZW50cyB0aGUgcGVyaW9kIG9mIHRpbWUgdGhlIHRvbGVyYXRpb24gKHdoaWNoIG11c3QgYmVcbm9mIGVmZmVjdCBOb0V4ZWN1dGUsIG90aGVyd2lzZSB0aGlzIGZpZWxkIGlzIGlnbm9yZWQpIHRvbGVyYXRlcyB0aGUgdGFpbnQuIEJ5IGRlZmF1bHQsXG5pdCBpcyBub3Qgc2V0LCB3aGljaCBtZWFucyB0b2xlcmF0ZSB0aGUgdGFpbnQgZm9yZXZlciAoZG8gbm90IGV2aWN0KS4gWmVybyBhbmRcbm5lZ2F0aXZlIHZhbHVlcyB3aWxsIGJlIHRyZWF0ZWQgYXMgMCAoZXZpY3QgaW1tZWRpYXRlbHkpIGJ5IHRoZSBzeXN0ZW0uIiwiZm9ybWF0IjoiaW50NjQiLCJ0eXBlIjoiaW50ZWdlciJ9LCJ2YWx1ZSI6eyJkZXNjcmlwdGlvbiI6IlZhbHVlIGlzIHRoZSB0YWludCB2YWx1ZSB0aGUgdG9sZXJhdGlvbiBtYXRjaGVzIHRvLlxuSWYgdGhlIG9wZXJhdG9yIGlzIEV4aXN0cywgdGhlIHZhbHVlIHNob3VsZCBiZSBlbXB0eSwgb3RoZXJ3aXNlIGp1c3QgYSByZWd1bGFyIHN0cmluZy4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9fSwidHlwZSI6Im9iamVjdCJ9LCJtYXRjaGVyIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcGVydGFpbmluZyB0byB0aGUgbWF0Y2hlciBkZXBsb3ltZW50LiIsInByb3BlcnRpZXMiOnsiaG9zdEFsaWFzZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhcyBob2xkcyB0aGUgbWFwcGluZyBiZXR3ZWVuIElQIGFuZCBob3N0bmFtZXMgdGhhdCB3aWxsIGJlIGluamVjdGVkIGFzIGFuIGVudHJ5IGluIHRoZVxucG9kJ3MgaG9zdHMgZmlsZS4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RuYW1lcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RuYW1lcyBmb3IgdGhlIGFib3ZlIElQIGFkZHJlc3MuIiwiaXRlbXMiOnsidHlwZSI6InN0cmluZyJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoiYXRvbWljIn0sImlwIjp7ImRlc2NyaXB0aW9uIjoiSVAgYWRkcmVzcyBvZiB0aGUgaG9zdCBmaWxlIGVudHJ5LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbImlwIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sIm5vZGVTZWxlY3RvciI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJ0eXBlIjoic3RyaW5nIn0sImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIGEgbm9kZSBzZWxlY3RvciBoZXJlLiIsInR5cGUiOiJvYmplY3QifSwicmVzb3VyY2VzIjp7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJwcm9wZXJ0aWVzIjp7ImNsYWltcyI6eyJkZXNjcmlwdGlvbiI6IkNsYWltcyBsaXN0cyB0aGUgbmFtZXMgb2YgcmVzb3VyY2VzLCBkZWZpbmVkIGluIHNwZWMucmVzb3VyY2VDbGFpbXMsXG50aGF0IGFyZSB1c2VkIGJ5IHRoaXMgY29udGFpbmVyLlxuXG5UaGlzIGZpZWxkIGRlcGVuZHMgb24gdGhlXG5EeW5hbWljUmVzb3VyY2VBbGxvY2F0aW9uIGZlYXR1cmUgZ2F0ZS5cblxuVGhpcyBmaWVsZCBpcyBpbW11dGFibGUuIEl0IGNhbiBvbmx5IGJlIHNldCBmb3IgY29udGFpbmVycy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlQ2xhaW0gcmVmZXJlbmNlcyBvbmUgZW50cnkgaW4gUG9kU3BlYy5SZXNvdXJjZUNsYWltcy4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJOYW1lIG11c3QgbWF0Y2ggdGhlIG5hbWUgb2Ygb25lIGVudHJ5IGluIHBvZC5zcGVjLnJlc291cmNlQ2xhaW1zIG9mXG50aGUgUG9kIHdoZXJlIHRoaXMgZmllbGQgaXMgdXNlZC4gSXQgbWFrZXMgdGhhdCByZXNvdXJjZSBhdmFpbGFibGVcbmluc2lkZSBhIGNvbnRhaW5lci4iLCJ0eXBlIjoic3RyaW5nIn0sInJlcXVlc3QiOnsiZGVzY3JpcHRpb24iOiJSZXF1ZXN0IGlzIHRoZSBuYW1lIGNob3NlbiBmb3IgYSByZXF1ZXN0IGluIHRoZSByZWZlcmVuY2VkIGNsYWltLlxuSWYgZW1wdHksIGV2ZXJ5dGhpbmcgZnJvbSB0aGUgY2xhaW0gaXMgbWFkZSBhdmFpbGFibGUsIG90aGVyd2lzZVxub25seSB0aGUgcmVzdWx0IG9mIHRoaXMgcmVxdWVzdC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtbWFwLWtleXMiOlsibmFtZSJdLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoibWFwIn0sImxpbWl0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJMaW1pdHMgZGVzY3JpYmVzIHRoZSBtYXhpbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyBhbGxvd2VkLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In0sInJlcXVlc3RzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IlJlcXVlc3RzIGRlc2NyaWJlcyB0aGUgbWluaW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgcmVxdWlyZWQuXG5JZiBSZXF1ZXN0cyBpcyBvbWl0dGVkIGZvciBhIGNvbnRhaW5lciwgaXQgZGVmYXVsdHMgdG8gTGltaXRzIGlmIHRoYXQgaXMgZXhwbGljaXRseSBzcGVjaWZpZWQsXG5vdGhlcndpc2UgdG8gYW4gaW1wbGVtZW50YXRpb24tZGVmaW5lZCB2YWx1ZS4gUmVxdWVzdHMgY2Fubm90IGV4Y2VlZCBMaW1pdHMuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwic2NhbGluZyI6eyJkZXNjcmlwdGlvbiI6IkNvbnRyb2xzIHRoZSBudW1iZXIgb2YgcmVwbGljYXMgYW5kIGF1dG9zY2FsaW5nIGZvciB0aGlzIGNvbXBvbmVudC4iLCJwcm9wZXJ0aWVzIjp7ImF1dG9TY2FsaW5nIjp7ImRlc2NyaXB0aW9uIjoiV2hlbiBlbmFibGVkLCB0aGUgbnVtYmVyIG9mIGNvbXBvbmVudCByZXBsaWNhcyBpcyBtYW5hZ2VkIGR5bmFtaWNhbGx5IGJhc2VkIG9uIHRoZSBsb2FkLCB3aXRoaW4gdGhlIGxpbWl0c1xuc3BlY2lmaWVkIGJlbG93LlxuVGhlIGRlZmF1bHQgaXM6IEVuYWJsZWQuIiwiZW51bSI6WyJFbmFibGVkIiwiRGlzYWJsZWQiXSwidHlwZSI6InN0cmluZyJ9LCJtYXhSZXBsaWNhcyI6eyJkZXNjcmlwdGlvbiI6IlRoZSBkZWZhdWx0IGlzOiA1LiIsImZvcm1hdCI6ImludDMyIiwibWluaW11bSI6MSwidHlwZSI6ImludGVnZXIifSwibWluUmVwbGljYXMiOnsiZGVzY3JpcHRpb24iOiJUaGUgZGVmYXVsdCBpczogMi4iLCJmb3JtYXQiOiJpbnQzMiIsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn0sInJlcGxpY2FzIjp7ImRlc2NyaXB0aW9uIjoiV2hlbiBhdXRvc2NhbGluZyBpcyBkaXNhYmxlZCwgdGhlIG51bWJlciBvZiByZXBsaWNhcyB3aWxsIGFsd2F5cyBiZSBjb25maWd1cmVkIHRvIG1hdGNoIHRoaXMgdmFsdWUuXG5UaGUgZGVmYXVsdCBpczogMy4iLCJmb3JtYXQiOiJpbnQzMiIsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn19LCJ0eXBlIjoib2JqZWN0In0sInRvbGVyYXRpb25zIjp7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJUaGUgcG9kIHRoaXMgVG9sZXJhdGlvbiBpcyBhdHRhY2hlZCB0byB0b2xlcmF0ZXMgYW55IHRhaW50IHRoYXQgbWF0Y2hlc1xudGhlIHRyaXBsZSBcdTAwM2NrZXksdmFsdWUsZWZmZWN0XHUwMDNlIHVzaW5nIHRoZSBtYXRjaGluZyBvcGVyYXRvciBcdTAwM2NvcGVyYXRvclx1MDAzZS4iLCJwcm9wZXJ0aWVzIjp7ImVmZmVjdCI6eyJkZXNjcmlwdGlvbiI6IkVmZmVjdCBpbmRpY2F0ZXMgdGhlIHRhaW50IGVmZmVjdCB0byBtYXRjaC4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGVmZmVjdHMuXG5XaGVuIHNwZWNpZmllZCwgYWxsb3dlZCB2YWx1ZXMgYXJlIE5vU2NoZWR1bGUsIFByZWZlck5vU2NoZWR1bGUgYW5kIE5vRXhlY3V0ZS4iLCJ0eXBlIjoic3RyaW5nIn0sImtleSI6eyJkZXNjcmlwdGlvbiI6IktleSBpcyB0aGUgdGFpbnQga2V5IHRoYXQgdGhlIHRvbGVyYXRpb24gYXBwbGllcyB0by4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGtleXMuXG5JZiB0aGUga2V5IGlzIGVtcHR5LCBvcGVyYXRvciBtdXN0IGJlIEV4aXN0czsgdGhpcyBjb21iaW5hdGlvbiBtZWFucyB0byBtYXRjaCBhbGwgdmFsdWVzIGFuZCBhbGwga2V5cy4iLCJ0eXBlIjoic3RyaW5nIn0sIm9wZXJhdG9yIjp7ImRlc2NyaXB0aW9uIjoiT3BlcmF0b3IgcmVwcmVzZW50cyBhIGtleSdzIHJlbGF0aW9uc2hpcCB0byB0aGUgdmFsdWUuXG5WYWxpZCBvcGVyYXRvcnMgYXJlIEV4aXN0cyBhbmQgRXF1YWwuIERlZmF1bHRzIHRvIEVxdWFsLlxuRXhpc3RzIGlzIGVxdWl2YWxlbnQgdG8gd2lsZGNhcmQgZm9yIHZhbHVlLCBzbyB0aGF0IGEgcG9kIGNhblxudG9sZXJhdGUgYWxsIHRhaW50cyBvZiBhIHBhcnRpY3VsYXIgY2F0ZWdvcnkuIiwidHlwZSI6InN0cmluZyJ9LCJ0b2xlcmF0aW9uU2Vjb25kcyI6eyJkZXNjcmlwdGlvbiI6IlRvbGVyYXRpb25TZWNvbmRzIHJlcHJlc2VudHMgdGhlIHBlcmlvZCBvZiB0aW1lIHRoZSB0b2xlcmF0aW9uICh3aGljaCBtdXN0IGJlXG5vZiBlZmZlY3QgTm9FeGVjdXRlLCBvdGhlcndpc2UgdGhpcyBmaWVsZCBpcyBpZ25vcmVkKSB0b2xlcmF0ZXMgdGhlIHRhaW50LiBCeSBkZWZhdWx0LFxuaXQgaXMgbm90IHNldCwgd2hpY2ggbWVhbnMgdG9sZXJhdGUgdGhlIHRhaW50IGZvcmV2ZXIgKGRvIG5vdCBldmljdCkuIFplcm8gYW5kXG5uZWdhdGl2ZSB2YWx1ZXMgd2lsbCBiZSB0cmVhdGVkIGFzIDAgKGV2aWN0IGltbWVkaWF0ZWx5KSBieSB0aGUgc3lzdGVtLiIsImZvcm1hdCI6ImludDY0IiwidHlwZSI6ImludGVnZXIifSwidmFsdWUiOnsiZGVzY3JpcHRpb24iOiJWYWx1ZSBpcyB0aGUgdGFpbnQgdmFsdWUgdGhlIHRvbGVyYXRpb24gbWF0Y2hlcyB0by5cbklmIHRoZSBvcGVyYXRvciBpcyBFeGlzdHMsIHRoZSB2YWx1ZSBzaG91bGQgYmUgZW1wdHksIG90aGVyd2lzZSBqdXN0IGEgcmVndWxhciBzdHJpbmcuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifX0sInR5cGUiOiJvYmplY3QifSwibW9uaXRvcmluZyI6eyJkZXNjcmlwdGlvbiI6IkNvbmZpZ3VyZXMgbW9uaXRvcmluZyBlbmRwb2ludCBmb3IgU2Nhbm5lciBWNC4gVGhlIG1vbml0b3JpbmcgZW5kcG9pbnRcbmFsbG93cyBvdGhlciBzZXJ2aWNlcyB0byBjb2xsZWN0IG1ldHJpY3MgZnJvbSBTY2FubmVyIFY0LCBwcm92aWRlZCBpblxuUHJvbWV0aGV1cyBjb21wYXRpYmxlIGZvcm1hdC4iLCJwcm9wZXJ0aWVzIjp7ImV4cG9zZUVuZHBvaW50Ijp7ImRlc2NyaXB0aW9uIjoiRXhwb3NlIHRoZSBtb25pdG9yaW5nIGVuZHBvaW50LiBBIG5ldyBzZXJ2aWNlLCBcIm1vbml0b3JpbmdcIixcbndpdGggcG9ydCA5MDkwLCB3aWxsIGJlIGNyZWF0ZWQgYXMgd2VsbCBhcyBhIG5ldHdvcmsgcG9saWN5IGFsbG93aW5nXG5pbmJvdW5kIGNvbm5lY3Rpb25zIHRvIHRoZSBwb3J0LiIsImVudW0iOlsiRW5hYmxlZCIsIkRpc2FibGVkIl0sInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwic2Nhbm5lckNvbXBvbmVudCI6eyJkZXNjcmlwdGlvbiI6IkNhbiBiZSBzcGVjaWZpZWQgYXMgXCJFbmFibGVkXCIgb3IgXCJEaXNhYmxlZFwiLlxuSWYgdGhpcyBmaWVsZCBpcyBub3Qgc3BlY2lmaWVkLCB0aGUgZm9sbG93aW5nIGRlZmF1bHRpbmcgdGFrZXMgcGxhY2U6XG4qIGZvciBuZXcgaW5zdGFsbGF0aW9ucywgU2Nhbm5lciBWNCBpcyBlbmFibGVkIHN0YXJ0aW5nIHdpdGggQUNTIDQuODtcbiogZm9yIHVwZ3JhZGVzIHRvIDQuOCBmcm9tIHByZXZpb3VzIHJlbGVhc2VzLCBTY2FubmVyIFY0IGlzIGRpc2FibGVkLiIsImVudW0iOlsiRGVmYXVsdCIsIkVuYWJsZWQiLCJEaXNhYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInRscyI6eyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHJlbGF0ZWQgdG8gVHJhbnNwb3J0IExheWVyIFNlY3VyaXR5LCBzdWNoIGFzIENlcnRpZmljYXRlIEF1dGhvcml0aWVzLiIsInByb3BlcnRpZXMiOnsiYWRkaXRpb25hbENBcyI6eyJkZXNjcmlwdGlvbiI6IkFsbG93cyB5b3UgdG8gc3BlY2lmeSBhZGRpdGlvbmFsIHRydXN0ZWQgUm9vdCBDQXMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJBZGRpdGlvbmFsQ0EgZGVmaW5lcyBhIGNlcnRpZmljYXRlIGZvciBhbiBhZGRpdGlvbmFsIENlcnRpZmljYXRlIEF1dGhvcml0eS4iLCJwcm9wZXJ0aWVzIjp7ImNvbnRlbnQiOnsiZGVzY3JpcHRpb24iOiJQRU0gZm9ybWF0IiwidHlwZSI6InN0cmluZyJ9LCJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTXVzdCBiZSBhIHZhbGlkIGZpbGUgYmFzZW5hbWUiLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJjb250ZW50IiwibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9fSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJzdGF0dXMiOnsiZGVzY3JpcHRpb24iOiJDZW50cmFsU3RhdHVzIGRlZmluZXMgdGhlIG9ic2VydmVkIHN0YXRlIG9mIENlbnRyYWwuIiwicHJvcGVydGllcyI6eyJjZW50cmFsIjp7ImRlc2NyaXB0aW9uIjoiQ2VudHJhbENvbXBvbmVudFN0YXR1cyBkZXNjcmliZXMgc3RhdHVzIHNwZWNpZmljIHRvIHRoZSBjZW50cmFsIGNvbXBvbmVudC4iLCJwcm9wZXJ0aWVzIjp7ImFkbWluUGFzc3dvcmQiOnsiZGVzY3JpcHRpb24iOiJBZG1pblBhc3N3b3JkIHN0b3JlcyBpbmZvcm1hdGlvbiByZWxhdGVkIHRvIHRoZSBhdXRvLWdlbmVyYXRlZCBhZG1pbiBwYXNzd29yZC4iLCJwcm9wZXJ0aWVzIjp7ImFkbWluUGFzc3dvcmRTZWNyZXRSZWZlcmVuY2UiOnsiZGVzY3JpcHRpb24iOiJBZG1pblBhc3N3b3JkU2VjcmV0UmVmZXJlbmNlIGNvbnRhaW5zIHJlZmVyZW5jZSBmb3IgdGhlIGFkbWluIHBhc3N3b3JkIiwidHlwZSI6InN0cmluZyJ9LCJpbmZvIjp7ImRlc2NyaXB0aW9uIjoiSW5mbyBzdG9yZXMgaW5mb3JtYXRpb24gb24gaG93IHRvIG9idGFpbiB0aGUgYWRtaW4gcGFzc3dvcmQuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJjb25kaXRpb25zIjp7Iml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiU3RhY2tSb3hDb25kaXRpb24gZGVmaW5lcyBhIGNvbmRpdGlvbiBmb3IgYSBTdGFja1JveCBjdXN0b20gcmVzb3VyY2UuIiwicHJvcGVydGllcyI6eyJsYXN0VHJhbnNpdGlvblRpbWUiOnsiZm9ybWF0IjoiZGF0ZS10aW1lIiwidHlwZSI6InN0cmluZyJ9LCJtZXNzYWdlIjp7InR5cGUiOiJzdHJpbmcifSwicmVhc29uIjp7ImRlc2NyaXB0aW9uIjoiQ29uZGl0aW9uUmVhc29uIGlzIGEgdHlwZSBvZiB2YWx1ZXMgb2YgY29uZGl0aW9uIHJlYXNvbi4iLCJ0eXBlIjoic3RyaW5nIn0sInN0YXR1cyI6eyJkZXNjcmlwdGlvbiI6IkNvbmRpdGlvblN0YXR1cyBpcyBhIHR5cGUgb2YgdmFsdWVzIG9mIGNvbmRpdGlvbiBzdGF0dXMuIiwidHlwZSI6InN0cmluZyJ9LCJ0eXBlIjp7ImRlc2NyaXB0aW9uIjoiQ29uZGl0aW9uVHlwZSBpcyBhIHR5cGUgb2YgdmFsdWVzIG9mIGNvbmRpdGlvbiB0eXBlLiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbInN0YXR1cyIsInR5cGUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwiZGVwbG95ZWRSZWxlYXNlIjp7ImRlc2NyaXB0aW9uIjoiU3RhY2tSb3hSZWxlYXNlIGRlc2NyaWJlcyB0aGUgSGVsbSBcInJlbGVhc2VcIiB0aGF0IHdhcyBtb3N0IHJlY2VudGx5IGFwcGxpZWQuIiwicHJvcGVydGllcyI6eyJ2ZXJzaW9uIjp7InR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwicHJvZHVjdFZlcnNpb24iOnsiZGVzY3JpcHRpb24iOiJUaGUgZGVwbG95ZWQgdmVyc2lvbiBvZiB0aGUgcHJvZHVjdC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJjb25kaXRpb25zIl0sInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifX0sInNlcnZlZCI6dHJ1ZSwic3RvcmFnZSI6dHJ1ZSwic3VicmVzb3VyY2VzIjp7InN0YXR1cyI6e319fV19LCJzdGF0dXMiOnsiYWNjZXB0ZWROYW1lcyI6eyJraW5kIjoiIiwicGx1cmFsIjoiIn0sImNvbmRpdGlvbnMiOm51bGwsInN0b3JlZFZlcnNpb25zIjpudWxsfX0=" + } + }, + { + "type": "olm.bundle.object", + "value": { + "data": "eyJhcGlWZXJzaW9uIjoiYXBpZXh0ZW5zaW9ucy5rOHMuaW8vdjEiLCJraW5kIjoiQ3VzdG9tUmVzb3VyY2VEZWZpbml0aW9uIiwibWV0YWRhdGEiOnsiYW5ub3RhdGlvbnMiOnsiY29udHJvbGxlci1nZW4ua3ViZWJ1aWxkZXIuaW8vdmVyc2lvbiI6InYwLjE5LjAifSwiY3JlYXRpb25UaW1lc3RhbXAiOm51bGwsIm5hbWUiOiJzZWN1cmVkY2x1c3RlcnMucGxhdGZvcm0uc3RhY2tyb3guaW8ifSwic3BlYyI6eyJncm91cCI6InBsYXRmb3JtLnN0YWNrcm94LmlvIiwibmFtZXMiOnsia2luZCI6IlNlY3VyZWRDbHVzdGVyIiwibGlzdEtpbmQiOiJTZWN1cmVkQ2x1c3Rlckxpc3QiLCJwbHVyYWwiOiJzZWN1cmVkY2x1c3RlcnMiLCJzaW5ndWxhciI6InNlY3VyZWRjbHVzdGVyIn0sInNjb3BlIjoiTmFtZXNwYWNlZCIsInZlcnNpb25zIjpbeyJuYW1lIjoidjFhbHBoYTEiLCJzY2hlbWEiOnsib3BlbkFQSVYzU2NoZW1hIjp7ImRlc2NyaXB0aW9uIjoiU2VjdXJlZENsdXN0ZXIgaXMgdGhlIGNvbmZpZ3VyYXRpb24gdGVtcGxhdGUgZm9yIHRoZSBzZWN1cmVkIGNsdXN0ZXIgc2VydmljZXMuIFRoZXNlIGluY2x1ZGUgU2Vuc29yLCB3aGljaCBpc1xucmVzcG9uc2libGUgZm9yIHRoZSBjb25uZWN0aW9uIHRvIENlbnRyYWwsIGFuZCBDb2xsZWN0b3IsIHdoaWNoIHBlcmZvcm1zIGhvc3QtbGV2ZWwgY29sbGVjdGlvbiBvZiBwcm9jZXNzIGFuZFxubmV0d29yayBldmVudHMuXHUwMDNjcFx1MDAzZVxuKipJbXBvcnRhbnQ6KiogUGxlYXNlIHNlZSB0aGUgX0luc3RhbGxhdGlvbiBQcmVyZXF1aXNpdGVzXyBvbiB0aGUgbWFpbiBSSEFDUyBvcGVyYXRvciBwYWdlIGJlZm9yZSBkZXBsb3lpbmcsIG9yXG5jb25zdWx0IHRoZSBSSEFDUyBkb2N1bWVudGF0aW9uIG9uIGNyZWF0aW5nIGNsdXN0ZXIgaW5pdCBidW5kbGVzLiIsInByb3BlcnRpZXMiOnsiYXBpVmVyc2lvbiI6eyJkZXNjcmlwdGlvbiI6IkFQSVZlcnNpb24gZGVmaW5lcyB0aGUgdmVyc2lvbmVkIHNjaGVtYSBvZiB0aGlzIHJlcHJlc2VudGF0aW9uIG9mIGFuIG9iamVjdC5cblNlcnZlcnMgc2hvdWxkIGNvbnZlcnQgcmVjb2duaXplZCBzY2hlbWFzIHRvIHRoZSBsYXRlc3QgaW50ZXJuYWwgdmFsdWUsIGFuZFxubWF5IHJlamVjdCB1bnJlY29nbml6ZWQgdmFsdWVzLlxuTW9yZSBpbmZvOiBodHRwczovL2dpdC5rOHMuaW8vY29tbXVuaXR5L2NvbnRyaWJ1dG9ycy9kZXZlbC9zaWctYXJjaGl0ZWN0dXJlL2FwaS1jb252ZW50aW9ucy5tZCNyZXNvdXJjZXMiLCJ0eXBlIjoic3RyaW5nIn0sImtpbmQiOnsiZGVzY3JpcHRpb24iOiJLaW5kIGlzIGEgc3RyaW5nIHZhbHVlIHJlcHJlc2VudGluZyB0aGUgUkVTVCByZXNvdXJjZSB0aGlzIG9iamVjdCByZXByZXNlbnRzLlxuU2VydmVycyBtYXkgaW5mZXIgdGhpcyBmcm9tIHRoZSBlbmRwb2ludCB0aGUgY2xpZW50IHN1Ym1pdHMgcmVxdWVzdHMgdG8uXG5DYW5ub3QgYmUgdXBkYXRlZC5cbkluIENhbWVsQ2FzZS5cbk1vcmUgaW5mbzogaHR0cHM6Ly9naXQuazhzLmlvL2NvbW11bml0eS9jb250cmlidXRvcnMvZGV2ZWwvc2lnLWFyY2hpdGVjdHVyZS9hcGktY29udmVudGlvbnMubWQjdHlwZXMta2luZHMiLCJ0eXBlIjoic3RyaW5nIn0sIm1ldGFkYXRhIjp7InR5cGUiOiJvYmplY3QifSwic3BlYyI6eyJkZXNjcmlwdGlvbiI6IlNlY3VyZWRDbHVzdGVyU3BlYyBkZWZpbmVzIHRoZSBkZXNpcmVkIGNvbmZpZ3VyYXRpb24gc3RhdGUgb2YgYSBzZWN1cmVkIGNsdXN0ZXIuIiwicHJvcGVydGllcyI6eyJhZG1pc3Npb25Db250cm9sIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBBZG1pc3Npb24gQ29udHJvbCBjb21wb25lbnQsIHdoaWNoIGlzIG5lY2Vzc2FyeSBmb3IgcHJldmVudGl2ZSBwb2xpY3kgZW5mb3JjZW1lbnQsXG5hbmQgZm9yIEt1YmVybmV0ZXMgZXZlbnQgbW9uaXRvcmluZy4iLCJwcm9wZXJ0aWVzIjp7ImJ5cGFzcyI6eyJkZXNjcmlwdGlvbiI6IkVuYWJsZXMgdGVhbXMgdG8gYnlwYXNzIGFkbWlzc2lvbiBjb250cm9sIGluIGEgbW9uaXRvcmVkIG1hbm5lciBpbiB0aGUgZXZlbnQgb2YgYW4gZW1lcmdlbmN5LlxuVGhlIGRlZmF1bHQgaXM6IEJyZWFrR2xhc3NBbm5vdGF0aW9uLiIsImVudW0iOlsiQnJlYWtHbGFzc0Fubm90YXRpb24iLCJEaXNhYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn0sImNvbnRhY3RJbWFnZVNjYW5uZXJzIjp7ImRlc2NyaXB0aW9uIjoiRGVwcmVjYXRlZCBmaWVsZC4gVGhpcyBmaWVsZCB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS4iLCJlbnVtIjpbIlNjYW5JZk1pc3NpbmciLCJEb05vdFNjYW5JbmxpbmUiXSwidHlwZSI6InN0cmluZyJ9LCJlbmZvcmNlbWVudCI6eyJkZXNjcmlwdGlvbiI6IlNldCB0byBEaXNhYmxlZCB0byBkaXNhYmxlIHBvbGljeSBlbmZvcmNlbWVudCBmb3IgdGhlIGFkbWlzc2lvbiBjb250cm9sbGVyLiBUaGlzIGlzIG5vdCByZWNvbW1lbmRlZC5cbk9uIG5ldyBkZXBsb3ltZW50cyBzdGFydGluZyB3aXRoIHZlcnNpb24gNC45LCBkZWZhdWx0cyB0byBFbmFibGVkLlxuT24gb2xkIGRlcGxveW1lbnRzLCBkZWZhdWx0cyB0byBFbmFibGVkIGlmIGF0IGxlYXN0IG9uZSBvZiBsaXN0ZW5PbkNyZWF0ZXMgb3IgbGlzdGVuT25VcGRhdGVzIGlzIHRydWUuIiwiZW51bSI6WyJFbmFibGVkIiwiRGlzYWJsZWQiXSwidHlwZSI6InN0cmluZyJ9LCJmYWlsdXJlUG9saWN5Ijp7ImRlc2NyaXB0aW9uIjoiSWYgc2V0IHRvIFwiRmFpbFwiLCB0aGUgYWRtaXNzaW9uIGNvbnRyb2xsZXIncyB3ZWJob29rcyBhcmUgY29uZmlndXJlZCB0byBmYWlsLWNsb3NlZCBpbiBjYXNlIGFkbWlzc2lvbiBjb250cm9sbGVyXG5mYWlscyB0byByZXNwb25kIGluIHRpbWUuIEEgZmFpbHVyZSBwb2xpY3kgXCJJZ25vcmVcIiBjb25maWd1cmVzIHRoZSB3ZWJob29rcyB0byBmYWlsLW9wZW4uXG5UaGUgZGVmYXVsdCBpczogSWdub3JlLiIsImVudW0iOlsiSWdub3JlIiwiRmFpbCJdLCJ0eXBlIjoic3RyaW5nIn0sImhvc3RBbGlhc2VzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXMgaG9sZHMgdGhlIG1hcHBpbmcgYmV0d2VlbiBJUCBhbmQgaG9zdG5hbWVzIHRoYXQgd2lsbCBiZSBpbmplY3RlZCBhcyBhbiBlbnRyeSBpbiB0aGVcbnBvZCdzIGhvc3RzIGZpbGUuIiwicHJvcGVydGllcyI6eyJob3N0bmFtZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0bmFtZXMgZm9yIHRoZSBhYm92ZSBJUCBhZGRyZXNzLiIsIml0ZW1zIjp7InR5cGUiOiJzdHJpbmcifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6ImF0b21pYyJ9LCJpcCI6eyJkZXNjcmlwdGlvbiI6IklQIGFkZHJlc3Mgb2YgdGhlIGhvc3QgZmlsZSBlbnRyeS4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJpcCJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJsaXN0ZW5PbkNyZWF0ZXMiOnsiZGVzY3JpcHRpb24iOiJEZXByZWNhdGVkIGZpZWxkLiBUaGlzIGZpZWxkIHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLiIsInR5cGUiOiJib29sZWFuIn0sImxpc3Rlbk9uRXZlbnRzIjp7ImRlc2NyaXB0aW9uIjoiRGVwcmVjYXRlZCBmaWVsZC4gVGhpcyBmaWVsZCB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS4iLCJ0eXBlIjoiYm9vbGVhbiJ9LCJsaXN0ZW5PblVwZGF0ZXMiOnsiZGVzY3JpcHRpb24iOiJEZXByZWNhdGVkIGZpZWxkLiBUaGlzIGZpZWxkIHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLiIsInR5cGUiOiJib29sZWFuIn0sIm5vZGVTZWxlY3RvciI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJ0eXBlIjoic3RyaW5nIn0sImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIGEgbm9kZSBzZWxlY3RvciBoZXJlLiIsInR5cGUiOiJvYmplY3QifSwicmVwbGljYXMiOnsiZGVzY3JpcHRpb24iOiJUaGUgbnVtYmVyIG9mIHJlcGxpY2FzIG9mIHRoZSBhZG1pc3Npb24gY29udHJvbCBwb2QuXG5UaGUgZGVmYXVsdCBpczogMy4iLCJmb3JtYXQiOiJpbnQzMiIsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn0sInJlc291cmNlcyI6eyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwicHJvcGVydGllcyI6eyJjbGFpbXMiOnsiZGVzY3JpcHRpb24iOiJDbGFpbXMgbGlzdHMgdGhlIG5hbWVzIG9mIHJlc291cmNlcywgZGVmaW5lZCBpbiBzcGVjLnJlc291cmNlQ2xhaW1zLFxudGhhdCBhcmUgdXNlZCBieSB0aGlzIGNvbnRhaW5lci5cblxuVGhpcyBmaWVsZCBkZXBlbmRzIG9uIHRoZVxuRHluYW1pY1Jlc291cmNlQWxsb2NhdGlvbiBmZWF0dXJlIGdhdGUuXG5cblRoaXMgZmllbGQgaXMgaW1tdXRhYmxlLiBJdCBjYW4gb25seSBiZSBzZXQgZm9yIGNvbnRhaW5lcnMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJSZXNvdXJjZUNsYWltIHJlZmVyZW5jZXMgb25lIGVudHJ5IGluIFBvZFNwZWMuUmVzb3VyY2VDbGFpbXMuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTmFtZSBtdXN0IG1hdGNoIHRoZSBuYW1lIG9mIG9uZSBlbnRyeSBpbiBwb2Quc3BlYy5yZXNvdXJjZUNsYWltcyBvZlxudGhlIFBvZCB3aGVyZSB0aGlzIGZpZWxkIGlzIHVzZWQuIEl0IG1ha2VzIHRoYXQgcmVzb3VyY2UgYXZhaWxhYmxlXG5pbnNpZGUgYSBjb250YWluZXIuIiwidHlwZSI6InN0cmluZyJ9LCJyZXF1ZXN0Ijp7ImRlc2NyaXB0aW9uIjoiUmVxdWVzdCBpcyB0aGUgbmFtZSBjaG9zZW4gZm9yIGEgcmVxdWVzdCBpbiB0aGUgcmVmZXJlbmNlZCBjbGFpbS5cbklmIGVtcHR5LCBldmVyeXRoaW5nIGZyb20gdGhlIGNsYWltIGlzIG1hZGUgYXZhaWxhYmxlLCBvdGhlcndpc2Vcbm9ubHkgdGhlIHJlc3VsdCBvZiB0aGlzIHJlcXVlc3QuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LW1hcC1rZXlzIjpbIm5hbWUiXSwieC1rdWJlcm5ldGVzLWxpc3QtdHlwZSI6Im1hcCJ9LCJsaW1pdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiTGltaXRzIGRlc2NyaWJlcyB0aGUgbWF4aW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgYWxsb3dlZC5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9LCJyZXF1ZXN0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJSZXF1ZXN0cyBkZXNjcmliZXMgdGhlIG1pbmltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIHJlcXVpcmVkLlxuSWYgUmVxdWVzdHMgaXMgb21pdHRlZCBmb3IgYSBjb250YWluZXIsIGl0IGRlZmF1bHRzIHRvIExpbWl0cyBpZiB0aGF0IGlzIGV4cGxpY2l0bHkgc3BlY2lmaWVkLFxub3RoZXJ3aXNlIHRvIGFuIGltcGxlbWVudGF0aW9uLWRlZmluZWQgdmFsdWUuIFJlcXVlc3RzIGNhbm5vdCBleGNlZWQgTGltaXRzLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sInRpbWVvdXRTZWNvbmRzIjp7ImRlc2NyaXB0aW9uIjoiRGVwcmVjYXRlZCBmaWVsZC4gVGhpcyBmaWVsZCB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS4iLCJmb3JtYXQiOiJpbnQzMiIsInR5cGUiOiJpbnRlZ2VyIn0sInRvbGVyYXRpb25zIjp7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiaXRlbXMiOnsiZGVzY3JpcHRpb24iOiJUaGUgcG9kIHRoaXMgVG9sZXJhdGlvbiBpcyBhdHRhY2hlZCB0byB0b2xlcmF0ZXMgYW55IHRhaW50IHRoYXQgbWF0Y2hlc1xudGhlIHRyaXBsZSBcdTAwM2NrZXksdmFsdWUsZWZmZWN0XHUwMDNlIHVzaW5nIHRoZSBtYXRjaGluZyBvcGVyYXRvciBcdTAwM2NvcGVyYXRvclx1MDAzZS4iLCJwcm9wZXJ0aWVzIjp7ImVmZmVjdCI6eyJkZXNjcmlwdGlvbiI6IkVmZmVjdCBpbmRpY2F0ZXMgdGhlIHRhaW50IGVmZmVjdCB0byBtYXRjaC4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGVmZmVjdHMuXG5XaGVuIHNwZWNpZmllZCwgYWxsb3dlZCB2YWx1ZXMgYXJlIE5vU2NoZWR1bGUsIFByZWZlck5vU2NoZWR1bGUgYW5kIE5vRXhlY3V0ZS4iLCJ0eXBlIjoic3RyaW5nIn0sImtleSI6eyJkZXNjcmlwdGlvbiI6IktleSBpcyB0aGUgdGFpbnQga2V5IHRoYXQgdGhlIHRvbGVyYXRpb24gYXBwbGllcyB0by4gRW1wdHkgbWVhbnMgbWF0Y2ggYWxsIHRhaW50IGtleXMuXG5JZiB0aGUga2V5IGlzIGVtcHR5LCBvcGVyYXRvciBtdXN0IGJlIEV4aXN0czsgdGhpcyBjb21iaW5hdGlvbiBtZWFucyB0byBtYXRjaCBhbGwgdmFsdWVzIGFuZCBhbGwga2V5cy4iLCJ0eXBlIjoic3RyaW5nIn0sIm9wZXJhdG9yIjp7ImRlc2NyaXB0aW9uIjoiT3BlcmF0b3IgcmVwcmVzZW50cyBhIGtleSdzIHJlbGF0aW9uc2hpcCB0byB0aGUgdmFsdWUuXG5WYWxpZCBvcGVyYXRvcnMgYXJlIEV4aXN0cyBhbmQgRXF1YWwuIERlZmF1bHRzIHRvIEVxdWFsLlxuRXhpc3RzIGlzIGVxdWl2YWxlbnQgdG8gd2lsZGNhcmQgZm9yIHZhbHVlLCBzbyB0aGF0IGEgcG9kIGNhblxudG9sZXJhdGUgYWxsIHRhaW50cyBvZiBhIHBhcnRpY3VsYXIgY2F0ZWdvcnkuIiwidHlwZSI6InN0cmluZyJ9LCJ0b2xlcmF0aW9uU2Vjb25kcyI6eyJkZXNjcmlwdGlvbiI6IlRvbGVyYXRpb25TZWNvbmRzIHJlcHJlc2VudHMgdGhlIHBlcmlvZCBvZiB0aW1lIHRoZSB0b2xlcmF0aW9uICh3aGljaCBtdXN0IGJlXG5vZiBlZmZlY3QgTm9FeGVjdXRlLCBvdGhlcndpc2UgdGhpcyBmaWVsZCBpcyBpZ25vcmVkKSB0b2xlcmF0ZXMgdGhlIHRhaW50LiBCeSBkZWZhdWx0LFxuaXQgaXMgbm90IHNldCwgd2hpY2ggbWVhbnMgdG9sZXJhdGUgdGhlIHRhaW50IGZvcmV2ZXIgKGRvIG5vdCBldmljdCkuIFplcm8gYW5kXG5uZWdhdGl2ZSB2YWx1ZXMgd2lsbCBiZSB0cmVhdGVkIGFzIDAgKGV2aWN0IGltbWVkaWF0ZWx5KSBieSB0aGUgc3lzdGVtLiIsImZvcm1hdCI6ImludDY0IiwidHlwZSI6ImludGVnZXIifSwidmFsdWUiOnsiZGVzY3JpcHRpb24iOiJWYWx1ZSBpcyB0aGUgdGFpbnQgdmFsdWUgdGhlIHRvbGVyYXRpb24gbWF0Y2hlcyB0by5cbklmIHRoZSBvcGVyYXRvciBpcyBFeGlzdHMsIHRoZSB2YWx1ZSBzaG91bGQgYmUgZW1wdHksIG90aGVyd2lzZSBqdXN0IGEgcmVndWxhciBzdHJpbmcuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifX0sInR5cGUiOiJvYmplY3QifSwiYXVkaXRMb2dzIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcmVsYXRpbmcgdG8gdGhlIGluZ2VzdGlvbiBvZiBLdWJlcm5ldGVzIGF1ZGl0IGxvZ3MuIiwicHJvcGVydGllcyI6eyJjb2xsZWN0aW9uIjp7ImRlc2NyaXB0aW9uIjoiV2hldGhlciBjb2xsZWN0aW9uIG9mIEt1YmVybmV0ZXMgYXVkaXQgbG9ncyBzaG91bGQgYmUgZW5hYmxlZCBvciBkaXNhYmxlZC4gQ3VycmVudGx5LCB0aGlzIGlzIG9ubHlcbnN1cHBvcnRlZCBvbiBPcGVuU2hpZnQgNCwgYW5kIHRyeWluZyB0byBlbmFibGUgaXQgb24gbm9uLU9wZW5TaGlmdCA0IGNsdXN0ZXJzIHdpbGwgcmVzdWx0IGluIGFuIGVycm9yLlxuVXNlIHRoZSAnQXV0bycgc2V0dGluZyB0byBlbmFibGUgaXQgb24gY29tcGF0aWJsZSBlbnZpcm9ubWVudHMsIGFuZCBkaXNhYmxlIGl0IGVsc2V3aGVyZS5cblRoZSBkZWZhdWx0IGlzOiBBdXRvLiIsImVudW0iOlsiQXV0byIsIkRpc2FibGVkIiwiRW5hYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sImNlbnRyYWxFbmRwb2ludCI6eyJkZXNjcmlwdGlvbiI6IlRoZSBlbmRwb2ludCBvZiB0aGUgUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5IENlbnRyYWwgaW5zdGFuY2UgdG8gY29ubmVjdCB0byxcbmluY2x1ZGluZyB0aGUgcG9ydCBudW1iZXIuIElmIG5vIHBvcnQgaXMgc3BlY2lmaWVkIGFuZCB0aGUgZW5kcG9pbnQgY29udGFpbnMgYW4gaHR0cHM6Ly9cbnByb3RvY29sIHNwZWNpZmljYXRpb24sIHRoZW4gdGhlIHBvcnQgNDQzIGlzIGltcGxpY2l0bHkgYXNzdW1lZC5cbklmIHVzaW5nIGEgbm9uLWdSUEMgY2FwYWJsZSBsb2FkIGJhbGFuY2VyLCB1c2UgdGhlIFdlYlNvY2tldCBwcm90b2NvbCBieSBwcmVmaXhpbmcgdGhlIGVuZHBvaW50XG5hZGRyZXNzIHdpdGggd3NzOi8vLlxuTm90ZTogd2hlbiBsZWF2aW5nIHRoaXMgYmxhbmssIFNlbnNvciB3aWxsIGF0dGVtcHQgdG8gY29ubmVjdCB0byBhIENlbnRyYWwgaW5zdGFuY2UgcnVubmluZyBpbiB0aGUgc2FtZVxubmFtZXNwYWNlLiIsInR5cGUiOiJzdHJpbmcifSwiY2x1c3RlckxhYmVscyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJ0eXBlIjoic3RyaW5nIn0sImRlc2NyaXB0aW9uIjoiQ3VzdG9tIGxhYmVscyBhc3NvY2lhdGVkIHdpdGggYSBzZWN1cmVkIGNsdXN0ZXIgaW4gUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5LiIsInR5cGUiOiJvYmplY3QifSwiY2x1c3Rlck5hbWUiOnsiZGVzY3JpcHRpb24iOiJUaGUgdW5pcXVlIG5hbWUgb2YgdGhpcyBjbHVzdGVyLCBhcyBpdCB3aWxsIGJlIHNob3duIGluIHRoZSBSZWQgSGF0IEFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHkgVUkuXG5Ob3RlOiBPbmNlIGEgbmFtZSBpcyBzZXQgaGVyZSwgeW91IHdpbGwgbm90IGJlIGFibGUgdG8gY2hhbmdlIGl0IGFnYWluLiBZb3Ugd2lsbCBuZWVkIHRvIGRlbGV0ZVxuYW5kIHJlLWNyZWF0ZSB0aGlzIG9iamVjdCBpbiBvcmRlciB0byByZWdpc3RlciBhIGNsdXN0ZXIgd2l0aCBhIG5ldyBuYW1lLiIsInR5cGUiOiJzdHJpbmcifSwiY3VzdG9taXplIjp7ImRlc2NyaXB0aW9uIjoiQ3VzdG9taXphdGlvbnMgdG8gYXBwbHkgb24gYWxsIENlbnRyYWwgU2VydmljZXMgY29tcG9uZW50cy4iLCJwcm9wZXJ0aWVzIjp7ImFubm90YXRpb25zIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7InR5cGUiOiJzdHJpbmcifSwiZGVzY3JpcHRpb24iOiJDdXN0b20gYW5ub3RhdGlvbnMgdG8gc2V0IG9uIGFsbCBtYW5hZ2VkIG9iamVjdHMuIiwidHlwZSI6Im9iamVjdCJ9LCJlbnZWYXJzIjp7ImRlc2NyaXB0aW9uIjoiQ3VzdG9tIGVudmlyb25tZW50IHZhcmlhYmxlcyB0byBzZXQgb24gbWFuYWdlZCBwb2RzJyBjb250YWluZXJzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiRW52VmFyIHJlcHJlc2VudHMgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgcHJlc2VudCBpbiBhIENvbnRhaW5lci4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJOYW1lIG9mIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZS5cbk1heSBjb25zaXN0IG9mIGFueSBwcmludGFibGUgQVNDSUkgY2hhcmFjdGVycyBleGNlcHQgJz0nLiIsInR5cGUiOiJzdHJpbmcifSwidmFsdWUiOnsiZGVzY3JpcHRpb24iOiJWYXJpYWJsZSByZWZlcmVuY2VzICQoVkFSX05BTUUpIGFyZSBleHBhbmRlZFxudXNpbmcgdGhlIHByZXZpb3VzbHkgZGVmaW5lZCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgaW4gdGhlIGNvbnRhaW5lciBhbmRcbmFueSBzZXJ2aWNlIGVudmlyb25tZW50IHZhcmlhYmxlcy4gSWYgYSB2YXJpYWJsZSBjYW5ub3QgYmUgcmVzb2x2ZWQsXG50aGUgcmVmZXJlbmNlIGluIHRoZSBpbnB1dCBzdHJpbmcgd2lsbCBiZSB1bmNoYW5nZWQuIERvdWJsZSAkJCBhcmUgcmVkdWNlZFxudG8gYSBzaW5nbGUgJCwgd2hpY2ggYWxsb3dzIGZvciBlc2NhcGluZyB0aGUgJChWQVJfTkFNRSkgc3ludGF4OiBpLmUuXG5cIiQkKFZBUl9OQU1FKVwiIHdpbGwgcHJvZHVjZSB0aGUgc3RyaW5nIGxpdGVyYWwgXCIkKFZBUl9OQU1FKVwiLlxuRXNjYXBlZCByZWZlcmVuY2VzIHdpbGwgbmV2ZXIgYmUgZXhwYW5kZWQsIHJlZ2FyZGxlc3Mgb2Ygd2hldGhlciB0aGUgdmFyaWFibGVcbmV4aXN0cyBvciBub3QuXG5EZWZhdWx0cyB0byBcIlwiLiIsInR5cGUiOiJzdHJpbmcifSwidmFsdWVGcm9tIjp7ImRlc2NyaXB0aW9uIjoiU291cmNlIGZvciB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUncyB2YWx1ZS4gQ2Fubm90IGJlIHVzZWQgaWYgdmFsdWUgaXMgbm90IGVtcHR5LiIsInByb3BlcnRpZXMiOnsiY29uZmlnTWFwS2V5UmVmIjp7ImRlc2NyaXB0aW9uIjoiU2VsZWN0cyBhIGtleSBvZiBhIENvbmZpZ01hcC4iLCJwcm9wZXJ0aWVzIjp7ImtleSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBrZXkgdG8gc2VsZWN0LiIsInR5cGUiOiJzdHJpbmcifSwibmFtZSI6eyJkZWZhdWx0IjoiIiwiZGVzY3JpcHRpb24iOiJOYW1lIG9mIHRoZSByZWZlcmVudC5cblRoaXMgZmllbGQgaXMgZWZmZWN0aXZlbHkgcmVxdWlyZWQsIGJ1dCBkdWUgdG8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgaXNcbmFsbG93ZWQgdG8gYmUgZW1wdHkuIEluc3RhbmNlcyBvZiB0aGlzIHR5cGUgd2l0aCBhbiBlbXB0eSB2YWx1ZSBoZXJlIGFyZVxuYWxtb3N0IGNlcnRhaW5seSB3cm9uZy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvb3ZlcnZpZXcvd29ya2luZy13aXRoLW9iamVjdHMvbmFtZXMvI25hbWVzIiwidHlwZSI6InN0cmluZyJ9LCJvcHRpb25hbCI6eyJkZXNjcmlwdGlvbiI6IlNwZWNpZnkgd2hldGhlciB0aGUgQ29uZmlnTWFwIG9yIGl0cyBrZXkgbXVzdCBiZSBkZWZpbmVkIiwidHlwZSI6ImJvb2xlYW4ifX0sInJlcXVpcmVkIjpbImtleSJdLCJ0eXBlIjoib2JqZWN0IiwieC1rdWJlcm5ldGVzLW1hcC10eXBlIjoiYXRvbWljIn0sImZpZWxkUmVmIjp7ImRlc2NyaXB0aW9uIjoiU2VsZWN0cyBhIGZpZWxkIG9mIHRoZSBwb2Q6IHN1cHBvcnRzIG1ldGFkYXRhLm5hbWUsIG1ldGFkYXRhLm5hbWVzcGFjZSwgYG1ldGFkYXRhLmxhYmVsc1snXHUwMDNjS0VZXHUwMDNlJ11gLCBgbWV0YWRhdGEuYW5ub3RhdGlvbnNbJ1x1MDAzY0tFWVx1MDAzZSddYCxcbnNwZWMubm9kZU5hbWUsIHNwZWMuc2VydmljZUFjY291bnROYW1lLCBzdGF0dXMuaG9zdElQLCBzdGF0dXMucG9kSVAsIHN0YXR1cy5wb2RJUHMuIiwicHJvcGVydGllcyI6eyJhcGlWZXJzaW9uIjp7ImRlc2NyaXB0aW9uIjoiVmVyc2lvbiBvZiB0aGUgc2NoZW1hIHRoZSBGaWVsZFBhdGggaXMgd3JpdHRlbiBpbiB0ZXJtcyBvZiwgZGVmYXVsdHMgdG8gXCJ2MVwiLiIsInR5cGUiOiJzdHJpbmcifSwiZmllbGRQYXRoIjp7ImRlc2NyaXB0aW9uIjoiUGF0aCBvZiB0aGUgZmllbGQgdG8gc2VsZWN0IGluIHRoZSBzcGVjaWZpZWQgQVBJIHZlcnNpb24uIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiZmllbGRQYXRoIl0sInR5cGUiOiJvYmplY3QiLCJ4LWt1YmVybmV0ZXMtbWFwLXR5cGUiOiJhdG9taWMifSwiZmlsZUtleVJlZiI6eyJkZXNjcmlwdGlvbiI6IkZpbGVLZXlSZWYgc2VsZWN0cyBhIGtleSBvZiB0aGUgZW52IGZpbGUuXG5SZXF1aXJlcyB0aGUgRW52RmlsZXMgZmVhdHVyZSBnYXRlIHRvIGJlIGVuYWJsZWQuIiwicHJvcGVydGllcyI6eyJrZXkiOnsiZGVzY3JpcHRpb24iOiJUaGUga2V5IHdpdGhpbiB0aGUgZW52IGZpbGUuIEFuIGludmFsaWQga2V5IHdpbGwgcHJldmVudCB0aGUgcG9kIGZyb20gc3RhcnRpbmcuXG5UaGUga2V5cyBkZWZpbmVkIHdpdGhpbiBhIHNvdXJjZSBtYXkgY29uc2lzdCBvZiBhbnkgcHJpbnRhYmxlIEFTQ0lJIGNoYXJhY3RlcnMgZXhjZXB0ICc9Jy5cbkR1cmluZyBBbHBoYSBzdGFnZSBvZiB0aGUgRW52RmlsZXMgZmVhdHVyZSBnYXRlLCB0aGUga2V5IHNpemUgaXMgbGltaXRlZCB0byAxMjggY2hhcmFjdGVycy4iLCJ0eXBlIjoic3RyaW5nIn0sIm9wdGlvbmFsIjp7ImRlZmF1bHQiOmZhbHNlLCJkZXNjcmlwdGlvbiI6IlNwZWNpZnkgd2hldGhlciB0aGUgZmlsZSBvciBpdHMga2V5IG11c3QgYmUgZGVmaW5lZC4gSWYgdGhlIGZpbGUgb3Iga2V5XG5kb2VzIG5vdCBleGlzdCwgdGhlbiB0aGUgZW52IHZhciBpcyBub3QgcHVibGlzaGVkLlxuSWYgb3B0aW9uYWwgaXMgc2V0IHRvIHRydWUgYW5kIHRoZSBzcGVjaWZpZWQga2V5IGRvZXMgbm90IGV4aXN0LFxudGhlIGVudmlyb25tZW50IHZhcmlhYmxlIHdpbGwgbm90IGJlIHNldCBpbiB0aGUgUG9kJ3MgY29udGFpbmVycy5cblxuSWYgb3B0aW9uYWwgaXMgc2V0IHRvIGZhbHNlIGFuZCB0aGUgc3BlY2lmaWVkIGtleSBkb2VzIG5vdCBleGlzdCxcbmFuIGVycm9yIHdpbGwgYmUgcmV0dXJuZWQgZHVyaW5nIFBvZCBjcmVhdGlvbi4iLCJ0eXBlIjoiYm9vbGVhbiJ9LCJwYXRoIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHBhdGggd2l0aGluIHRoZSB2b2x1bWUgZnJvbSB3aGljaCB0byBzZWxlY3QgdGhlIGZpbGUuXG5NdXN0IGJlIHJlbGF0aXZlIGFuZCBtYXkgbm90IGNvbnRhaW4gdGhlICcuLicgcGF0aCBvciBzdGFydCB3aXRoICcuLicuIiwidHlwZSI6InN0cmluZyJ9LCJ2b2x1bWVOYW1lIjp7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHZvbHVtZSBtb3VudCBjb250YWluaW5nIHRoZSBlbnYgZmlsZS4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJrZXkiLCJwYXRoIiwidm9sdW1lTmFtZSJdLCJ0eXBlIjoib2JqZWN0IiwieC1rdWJlcm5ldGVzLW1hcC10eXBlIjoiYXRvbWljIn0sInJlc291cmNlRmllbGRSZWYiOnsiZGVzY3JpcHRpb24iOiJTZWxlY3RzIGEgcmVzb3VyY2Ugb2YgdGhlIGNvbnRhaW5lcjogb25seSByZXNvdXJjZXMgbGltaXRzIGFuZCByZXF1ZXN0c1xuKGxpbWl0cy5jcHUsIGxpbWl0cy5tZW1vcnksIGxpbWl0cy5lcGhlbWVyYWwtc3RvcmFnZSwgcmVxdWVzdHMuY3B1LCByZXF1ZXN0cy5tZW1vcnkgYW5kIHJlcXVlc3RzLmVwaGVtZXJhbC1zdG9yYWdlKSBhcmUgY3VycmVudGx5IHN1cHBvcnRlZC4iLCJwcm9wZXJ0aWVzIjp7ImNvbnRhaW5lck5hbWUiOnsiZGVzY3JpcHRpb24iOiJDb250YWluZXIgbmFtZTogcmVxdWlyZWQgZm9yIHZvbHVtZXMsIG9wdGlvbmFsIGZvciBlbnYgdmFycyIsInR5cGUiOiJzdHJpbmcifSwiZGl2aXNvciI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sImRlc2NyaXB0aW9uIjoiU3BlY2lmaWVzIHRoZSBvdXRwdXQgZm9ybWF0IG9mIHRoZSBleHBvc2VkIHJlc291cmNlcywgZGVmYXVsdHMgdG8gXCIxXCIiLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sInJlc291cmNlIjp7ImRlc2NyaXB0aW9uIjoiUmVxdWlyZWQ6IHJlc291cmNlIHRvIHNlbGVjdCIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbInJlc291cmNlIl0sInR5cGUiOiJvYmplY3QiLCJ4LWt1YmVybmV0ZXMtbWFwLXR5cGUiOiJhdG9taWMifSwic2VjcmV0S2V5UmVmIjp7ImRlc2NyaXB0aW9uIjoiU2VsZWN0cyBhIGtleSBvZiBhIHNlY3JldCBpbiB0aGUgcG9kJ3MgbmFtZXNwYWNlIiwicHJvcGVydGllcyI6eyJrZXkiOnsiZGVzY3JpcHRpb24iOiJUaGUga2V5IG9mIHRoZSBzZWNyZXQgdG8gc2VsZWN0IGZyb20uICBNdXN0IGJlIGEgdmFsaWQgc2VjcmV0IGtleS4iLCJ0eXBlIjoic3RyaW5nIn0sIm5hbWUiOnsiZGVmYXVsdCI6IiIsImRlc2NyaXB0aW9uIjoiTmFtZSBvZiB0aGUgcmVmZXJlbnQuXG5UaGlzIGZpZWxkIGlzIGVmZmVjdGl2ZWx5IHJlcXVpcmVkLCBidXQgZHVlIHRvIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IGlzXG5hbGxvd2VkIHRvIGJlIGVtcHR5LiBJbnN0YW5jZXMgb2YgdGhpcyB0eXBlIHdpdGggYW4gZW1wdHkgdmFsdWUgaGVyZSBhcmVcbmFsbW9zdCBjZXJ0YWlubHkgd3JvbmcuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL292ZXJ2aWV3L3dvcmtpbmctd2l0aC1vYmplY3RzL25hbWVzLyNuYW1lcyIsInR5cGUiOiJzdHJpbmcifSwib3B0aW9uYWwiOnsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IHdoZXRoZXIgdGhlIFNlY3JldCBvciBpdHMga2V5IG11c3QgYmUgZGVmaW5lZCIsInR5cGUiOiJib29sZWFuIn19LCJyZXF1aXJlZCI6WyJrZXkiXSwidHlwZSI6Im9iamVjdCIsIngta3ViZXJuZXRlcy1tYXAtdHlwZSI6ImF0b21pYyJ9fSwidHlwZSI6Im9iamVjdCJ9fSwicmVxdWlyZWQiOlsibmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJsYWJlbHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsidHlwZSI6InN0cmluZyJ9LCJkZXNjcmlwdGlvbiI6IkN1c3RvbSBsYWJlbHMgdG8gc2V0IG9uIGFsbCBtYW5hZ2VkIG9iamVjdHMuIiwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJpbWFnZVB1bGxTZWNyZXRzIjp7ImRlc2NyaXB0aW9uIjoiQWRkaXRpb25hbCBpbWFnZSBwdWxsIHNlY3JldHMgdG8gYmUgdGFrZW4gaW50byBhY2NvdW50IGZvciBwdWxsaW5nIGltYWdlcy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IkxvY2FsU2VjcmV0UmVmZXJlbmNlIGlzIGEgcmVmZXJlbmNlIHRvIGEgc2VjcmV0IHdpdGhpbiB0aGUgc2FtZSBuYW1lc3BhY2UuIiwicHJvcGVydGllcyI6eyJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHJlZmVyZW5jZWQgc2VjcmV0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibWlzYyI6eyJkZXNjcmlwdGlvbiI6IkRlcHJlY2F0ZWQgZmllbGQuIFRoaXMgZmllbGQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHJlbGVhc2UuXG5NaXNjZWxsYW5lb3VzIHNldHRpbmdzLiIsInByb3BlcnRpZXMiOnsiY3JlYXRlU0NDcyI6eyJkZXNjcmlwdGlvbiI6IkRlcHJlY2F0ZWQgZmllbGQuIFRoaXMgZmllbGQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHJlbGVhc2UuXG5TZXQgdGhpcyB0byB0cnVlIHRvIGhhdmUgdGhlIG9wZXJhdG9yIGNyZWF0ZSBTZWN1cml0eUNvbnRleHRDb25zdHJhaW50cyAoU0NDcykgZm9yIHRoZSBvcGVyYW5kcy4gVGhpc1xuaXNuJ3QgdXN1YWxseSBuZWVkZWQsIGFuZCBtYXkgaW50ZXJmZXJlIHdpdGggb3RoZXIgd29ya2xvYWRzLiIsInR5cGUiOiJib29sZWFuIn19LCJ0eXBlIjoib2JqZWN0In0sIm1vbml0b3JpbmciOnsiZGVzY3JpcHRpb24iOiJNb25pdG9yaW5nIGNvbmZpZ3VyYXRpb24uIiwicHJvcGVydGllcyI6eyJvcGVuc2hpZnQiOnsiZGVzY3JpcHRpb24iOiJPcGVuU2hpZnRNb25pdG9yaW5nIGRlZmluZXMgc2V0dGluZ3MgcmVsYXRlZCB0byBPcGVuU2hpZnQgTW9uaXRvcmluZyIsInByb3BlcnRpZXMiOnsiZW5hYmxlZCI6eyJkZXNjcmlwdGlvbiI6IlRoZSBkZWZhdWx0IGlzOiB0cnVlLiIsInR5cGUiOiJib29sZWFuIn19LCJyZXF1aXJlZCI6WyJlbmFibGVkIl0sInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwibmV0d29yayI6eyJkZXNjcmlwdGlvbiI6Ik5ldHdvcmsgY29uZmlndXJhdGlvbi4iLCJwcm9wZXJ0aWVzIjp7InBvbGljaWVzIjp7ImRlc2NyaXB0aW9uIjoiVG8gcHJvdmlkZSBzZWN1cml0eSBhdCB0aGUgbmV0d29yayBsZXZlbCB0aGUgQUNTIE9wZXJhdG9yIGNyZWF0ZXMgTmV0d29ya1BvbGljeSByZXNvdXJjZXMgYnkgZGVmYXVsdC4gSWYgeW91IHdhbnQgdG8gbWFuYWdlIHlvdXIgb3duIE5ldHdvcmtQb2xpY3kgb2JqZWN0cyB0aGVuIHNldCB0aGlzIHRvIFwiRGlzYWJsZWRcIi5cblRoZSBkZWZhdWx0IGlzOiBFbmFibGVkLiIsImVudW0iOlsiRW5hYmxlZCIsIkRpc2FibGVkIl0sInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwib3ZlcmxheXMiOnsiZGVzY3JpcHRpb24iOiJPdmVybGF5cyIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiSzhzT2JqZWN0T3ZlcmxheSBpcyBhbiBvdmVybGF5IHRoYXQgYXBwbGllcyBhIHNldCBvZiBwYXRjaGVzIHRvIGEgcmVzb3VyY2UuXG5JdCB0YXJnZXRzIGEgcmVzb3VyY2UgYnkgaXRzIEFQSSB2ZXJzaW9uLCBraW5kLCBhbmQgbmFtZSwgYW5kIGFwcGxpZXNcbmEgbGlzdCBvZiBwYXRjaGVzIHRvIHRoaXMgcmVzb3VyY2UuXG5cbiMgRXhhbXBsZXNcblxuIyMgQWRkaW5nIGFuIGFubm90YXRpb24gdG8gYSByZXNvdXJjZVxuXG5cdGFwaVZlcnNpb246IHYxXG5cdGtpbmQ6IFNlcnZpY2VBY2NvdW50XG5cdG5hbWU6IGNlbnRyYWxcblx0cGF0Y2hlczpcblx0LSBwYXRoOiBtZXRhZGF0YS5hbm5vdGF0aW9ucy5la3NcXC5hbWF6b25hd3NcXC5jb20vcm9sZS1hcm5cblx0ICB2YWx1ZTogXCJcXFwiYXJuOmF3czppYW06MTIzNDpyb2xlXFxcIlwiXG5cbiMjIEFkZGluZyBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byBhIGRlcGxveW1lbnRcblxuXHRhcGlWZXJzaW9uOiBhcHBzL3YxXG5cdGtpbmQ6IERlcGxveW1lbnRcblx0bmFtZTogY2VudHJhbFxuXHRwYXRjaGVzOlxuXHQtIHBhdGg6IHNwZWMudGVtcGxhdGUuc3BlYy5jb250YWluZXJzW25hbWU6Y2VudHJhbF0uZW52Wy0xXVxuXHQgIHZhbHVlOiB8XG5cdCAgICBuYW1lOiBNWV9FTlZfVkFSXG5cdCAgICB2YWx1ZTogdmFsdWVcblxuIyMgQWRkaW5nIGFuIGluZ3Jlc3MgdG8gYSBuZXR3b3JrIHBvbGljeVxuXG5cdGFwaVZlcnNpb246IG5ldHdvcmtpbmcuazhzLmlvL3YxXG5cdGtpbmQ6IE5ldHdvcmtQb2xpY3lcblx0bmFtZTogYWxsb3ctZXh0LXRvLWNlbnRyYWxcblx0cGF0Y2hlczpcblx0LSBwYXRoOiBzcGVjLmluZ3Jlc3NbLTFdXG5cdCAgdmFsdWU6IHxcblx0ICAgIHBvcnRzOlxuXHQgICAgLSBwb3J0OiA5OTlcblx0ICAgICAgcHJvdG9jb2w6IFRDUFxuXG4jIyBDaGFuZ2luZyB0aGUgdmFsdWUgb2YgYSBjb25maWdNYXBcblxuXHRhcGlWZXJzaW9uOiB2MVxuXHRraW5kOiBDb25maWdNYXBcblx0bmFtZTogY2VudHJhbC1lbmRwb2ludHNcblx0cGF0Y2hlczpcblx0LSBwYXRoOiBkYXRhLmVuZHBvaW50c1xcLnlhbWw6XG5cdCAgdmVyYmF0aW06IHxcblx0ICAgIGRpc2FibGVEZWZhdWx0OiBmYWxzZVxuXG4jIyBBZGRpbmcgYSBjb250YWluZXIgdG8gYSBkZXBsb3ltZW50XG5cblx0YXBpVmVyc2lvbjogYXBwcy92MVxuXHRraW5kOiBEZXBsb3ltZW50XG5cdG5hbWU6IGNlbnRyYWxcblx0cGF0Y2hlczpcblx0ICAtIHBhdGg6IHNwZWMudGVtcGxhdGUuc3BlYy5jb250YWluZXJzWy0xXVxuXHQgICAgdmFsdWU6IHxcblx0ICAgICAgbmFtZTogbmdpbnhcblx0ICAgICAgaW1hZ2U6IG5naW54XG5cdCAgICAgIHBvcnRzOlxuXHQgICAgICAtIGNvbnRhaW5lclBvcnQ6IDgwMDBcblx0ICAgICAgICBuYW1lOiBodHRwXG5cdCAgICAgICAgcHJvdG9jb2w6IFRDUCIsInByb3BlcnRpZXMiOnsiYXBpVmVyc2lvbiI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlIEFQSSB2ZXJzaW9uLiIsInR5cGUiOiJzdHJpbmcifSwia2luZCI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlIGtpbmQuIiwidHlwZSI6InN0cmluZyJ9LCJuYW1lIjp7ImRlc2NyaXB0aW9uIjoiTmFtZSBvZiByZXNvdXJjZS4iLCJ0eXBlIjoic3RyaW5nIn0sIm9wdGlvbmFsIjp7ImRlc2NyaXB0aW9uIjoiT3B0aW9uYWwgbWFya3MgdGhlIG92ZXJsYXkgYXMgb3B0aW9uYWwuXG5XaGVuIE9wdGlvbmFsIGlzIHRydWUsIGFuZCB0aGUgc3BlY2lmaWVkIHJlc291cmNlIGRvZXMgbm90IGV4aXN0IGluIHRoZSBvdXRwdXQgbWFuaWZlc3RzLCB0aGUgb3ZlcmxheSB3aWxsIGJlIHNraXBwZWQsIGFuZCBhIHdhcm5pbmcgd2lsbCBiZSBsb2dnZWQuXG5XaGVuIE9wdGlvbmFsIGlzIGZhbHNlLCBhbmQgdGhlIHNwZWNpZmllZCByZXNvdXJjZSBkb2VzIG5vdCBleGlzdCBpbiB0aGUgb3V0cHV0IG1hbmlmZXN0cywgYW4gZXJyb3Igd2lsbCBiZSB0aHJvd24uIiwidHlwZSI6ImJvb2xlYW4ifSwicGF0Y2hlcyI6eyJkZXNjcmlwdGlvbiI6Ikxpc3Qgb2YgcGF0Y2hlcyB0byBhcHBseSB0byByZXNvdXJjZS4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6Iks4c09iamVjdE92ZXJsYXlQYXRjaCBkZWZpbmVzIGEgcGF0Y2ggdG8gYXBwbHkgdG8gYSByZXNvdXJjZS4iLCJwcm9wZXJ0aWVzIjp7InBhdGgiOnsiZGVzY3JpcHRpb24iOiJQYXRoIG9mIHRoZSBmb3JtIGEuW2tleTE6dmFsdWUxXS5iLls6dmFsdWUyXVxuV2hlcmUgW2tleTE6dmFsdWUxXSBpcyBhIHNlbGVjdG9yIGZvciBhIGtleS12YWx1ZSBwYWlyIHRvIGlkZW50aWZ5IGEgbGlzdCBlbGVtZW50IGFuZCBbOnZhbHVlXSBpcyBhIHZhbHVlXG5zZWxlY3RvciB0byBpZGVudGlmeSBhIGxpc3QgZWxlbWVudCBpbiBhIGxlYWYgbGlzdC5cbkFsbCBwYXRoIGludGVybWVkaWF0ZSBub2RlcyBtdXN0IGV4aXN0LiIsInR5cGUiOiJzdHJpbmcifSwidmFsdWUiOnsiZGVzY3JpcHRpb24iOiJWYWx1ZSB0byBhZGQsIGRlbGV0ZSBvciByZXBsYWNlLlxuRm9yIGFkZCwgdGhlIHBhdGggc2hvdWxkIGJlIGEgbmV3IGxlYWYuXG5Gb3IgZGVsZXRlLCB2YWx1ZSBzaG91bGQgYmUgdW5zZXQuXG5Gb3IgcmVwbGFjZSwgcGF0aCBzaG91bGQgcmVmZXJlbmNlIGFuIGV4aXN0aW5nIG5vZGUuXG5BbGwgdmFsdWVzIGFyZSBzdHJpbmdzIGJ1dCBhcmUgY29udmVydGVkIGludG8gYXBwcm9wcmlhdGUgdHlwZSBiYXNlZCBvbiBzY2hlbWEuIiwidHlwZSI6InN0cmluZyJ9LCJ2ZXJiYXRpbSI6eyJkZXNjcmlwdGlvbiI6IlZlcmJhdGltIHZhbHVlIHRvIGFkZCwgZGVsZXRlIG9yIHJlcGxhY2UuXG5TYW1lIGFzIFZhbHVlLCBob3dldmVyIHRoZSBjb250ZW50IGlzIG5vdCBpbnRlcnByZXRlZCBhcyBZQU1MLCBidXQgdHJlYXRlZCBhcyBsaXRlcmFsIHN0cmluZyBpbnN0ZWFkLlxuQXQgbGVhc3Qgb25lIG9mIFZhbHVlIGFuZCBWZXJiYXRpbSBtdXN0IGJlIGVtcHR5LiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In19LCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJwZXJOb2RlIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBjb21wb25lbnRzIHJ1bm5pbmcgb24gZWFjaCBub2RlIGluIHRoZSBjbHVzdGVyIChDb2xsZWN0b3IgYW5kIENvbXBsaWFuY2UpLiIsInByb3BlcnRpZXMiOnsiY29sbGVjdG9yIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBDb2xsZWN0b3IgY29udGFpbmVyLCB3aGljaCBpcyByZXNwb25zaWJsZSBmb3IgY29sbGVjdGluZyBwcm9jZXNzIGFuZCBuZXR3b3JraW5nXG5hY3Rpdml0eSBhdCB0aGUgaG9zdCBsZXZlbC4iLCJwcm9wZXJ0aWVzIjp7ImNvbGxlY3Rpb24iOnsiZGVzY3JpcHRpb24iOiJUaGUgbWV0aG9kIGZvciBzeXN0ZW0tbGV2ZWwgZGF0YSBjb2xsZWN0aW9uLiBDT1JFX0JQRiBpcyByZWNvbW1lbmRlZC5cbklmIHlvdSBzZWxlY3QgXCJOb0NvbGxlY3Rpb25cIiwgeW91IHdpbGwgbm90IGJlIGFibGUgdG8gc2VlIGFueSBpbmZvcm1hdGlvbiBhYm91dCBuZXR3b3JrIGFjdGl2aXR5XG5hbmQgcHJvY2VzcyBleGVjdXRpb25zLiBUaGUgcmVtYWluaW5nIHNldHRpbmdzIGluIHRoZXNlIHNlY3Rpb24gd2lsbCBub3QgaGF2ZSBhbnkgZWZmZWN0LlxuVGhlIHZhbHVlIGlzIGEgc3ViamVjdCBvZiBjb252ZXJzaW9uIGJ5IHRoZSBvcGVyYXRvciBpZiBuZWVkZWQsIGUuZy4gdG9cbnJlbW92ZSBkZXByZWNhdGVkIG1ldGhvZHMuXG5UaGUgZGVmYXVsdCBpczogQ09SRV9CUEYuIiwiZW51bSI6WyJFQlBGIiwiQ09SRV9CUEYiLCJOb0NvbGxlY3Rpb24iLCJLZXJuZWxNb2R1bGUiXSwidHlwZSI6InN0cmluZyJ9LCJmb3JjZUNvbGxlY3Rpb24iOnsiZGVzY3JpcHRpb24iOiJPYnNvbGV0ZSBmaWVsZC4gVGhpcyBmaWVsZCB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS4iLCJ0eXBlIjoiYm9vbGVhbiJ9LCJpbWFnZUZsYXZvciI6eyJkZXNjcmlwdGlvbiI6Ik9ic29sZXRlIGZpZWxkLiIsImVudW0iOlsiUmVndWxhciIsIlNsaW0iXSwidHlwZSI6InN0cmluZyJ9LCJyZXNvdXJjZXMiOnsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsInByb3BlcnRpZXMiOnsiY2xhaW1zIjp7ImRlc2NyaXB0aW9uIjoiQ2xhaW1zIGxpc3RzIHRoZSBuYW1lcyBvZiByZXNvdXJjZXMsIGRlZmluZWQgaW4gc3BlYy5yZXNvdXJjZUNsYWltcyxcbnRoYXQgYXJlIHVzZWQgYnkgdGhpcyBjb250YWluZXIuXG5cblRoaXMgZmllbGQgZGVwZW5kcyBvbiB0aGVcbkR5bmFtaWNSZXNvdXJjZUFsbG9jYXRpb24gZmVhdHVyZSBnYXRlLlxuXG5UaGlzIGZpZWxkIGlzIGltbXV0YWJsZS4gSXQgY2FuIG9ubHkgYmUgc2V0IGZvciBjb250YWluZXJzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2VDbGFpbSByZWZlcmVuY2VzIG9uZSBlbnRyeSBpbiBQb2RTcGVjLlJlc291cmNlQ2xhaW1zLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik5hbWUgbXVzdCBtYXRjaCB0aGUgbmFtZSBvZiBvbmUgZW50cnkgaW4gcG9kLnNwZWMucmVzb3VyY2VDbGFpbXMgb2ZcbnRoZSBQb2Qgd2hlcmUgdGhpcyBmaWVsZCBpcyB1c2VkLiBJdCBtYWtlcyB0aGF0IHJlc291cmNlIGF2YWlsYWJsZVxuaW5zaWRlIGEgY29udGFpbmVyLiIsInR5cGUiOiJzdHJpbmcifSwicmVxdWVzdCI6eyJkZXNjcmlwdGlvbiI6IlJlcXVlc3QgaXMgdGhlIG5hbWUgY2hvc2VuIGZvciBhIHJlcXVlc3QgaW4gdGhlIHJlZmVyZW5jZWQgY2xhaW0uXG5JZiBlbXB0eSwgZXZlcnl0aGluZyBmcm9tIHRoZSBjbGFpbSBpcyBtYWRlIGF2YWlsYWJsZSwgb3RoZXJ3aXNlXG5vbmx5IHRoZSByZXN1bHQgb2YgdGhpcyByZXF1ZXN0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC1tYXAta2V5cyI6WyJuYW1lIl0sIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJtYXAifSwibGltaXRzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IkxpbWl0cyBkZXNjcmliZXMgdGhlIG1heGltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIGFsbG93ZWQuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifSwicmVxdWVzdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiUmVxdWVzdHMgZGVzY3JpYmVzIHRoZSBtaW5pbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyByZXF1aXJlZC5cbklmIFJlcXVlc3RzIGlzIG9taXR0ZWQgZm9yIGEgY29udGFpbmVyLCBpdCBkZWZhdWx0cyB0byBMaW1pdHMgaWYgdGhhdCBpcyBleHBsaWNpdGx5IHNwZWNpZmllZCxcbm90aGVyd2lzZSB0byBhbiBpbXBsZW1lbnRhdGlvbi1kZWZpbmVkIHZhbHVlLiBSZXF1ZXN0cyBjYW5ub3QgZXhjZWVkIExpbWl0cy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJjb21wbGlhbmNlIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBDb21wbGlhbmNlIGNvbnRhaW5lciwgd2hpY2ggaXMgcmVzcG9uc2libGUgZm9yIGNoZWNraW5nIGhvc3QtbGV2ZWwgY29uZmlndXJhdGlvbnMuIiwicHJvcGVydGllcyI6eyJyZXNvdXJjZXMiOnsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsInByb3BlcnRpZXMiOnsiY2xhaW1zIjp7ImRlc2NyaXB0aW9uIjoiQ2xhaW1zIGxpc3RzIHRoZSBuYW1lcyBvZiByZXNvdXJjZXMsIGRlZmluZWQgaW4gc3BlYy5yZXNvdXJjZUNsYWltcyxcbnRoYXQgYXJlIHVzZWQgYnkgdGhpcyBjb250YWluZXIuXG5cblRoaXMgZmllbGQgZGVwZW5kcyBvbiB0aGVcbkR5bmFtaWNSZXNvdXJjZUFsbG9jYXRpb24gZmVhdHVyZSBnYXRlLlxuXG5UaGlzIGZpZWxkIGlzIGltbXV0YWJsZS4gSXQgY2FuIG9ubHkgYmUgc2V0IGZvciBjb250YWluZXJzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2VDbGFpbSByZWZlcmVuY2VzIG9uZSBlbnRyeSBpbiBQb2RTcGVjLlJlc291cmNlQ2xhaW1zLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik5hbWUgbXVzdCBtYXRjaCB0aGUgbmFtZSBvZiBvbmUgZW50cnkgaW4gcG9kLnNwZWMucmVzb3VyY2VDbGFpbXMgb2ZcbnRoZSBQb2Qgd2hlcmUgdGhpcyBmaWVsZCBpcyB1c2VkLiBJdCBtYWtlcyB0aGF0IHJlc291cmNlIGF2YWlsYWJsZVxuaW5zaWRlIGEgY29udGFpbmVyLiIsInR5cGUiOiJzdHJpbmcifSwicmVxdWVzdCI6eyJkZXNjcmlwdGlvbiI6IlJlcXVlc3QgaXMgdGhlIG5hbWUgY2hvc2VuIGZvciBhIHJlcXVlc3QgaW4gdGhlIHJlZmVyZW5jZWQgY2xhaW0uXG5JZiBlbXB0eSwgZXZlcnl0aGluZyBmcm9tIHRoZSBjbGFpbSBpcyBtYWRlIGF2YWlsYWJsZSwgb3RoZXJ3aXNlXG5vbmx5IHRoZSByZXN1bHQgb2YgdGhpcyByZXF1ZXN0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC1tYXAta2V5cyI6WyJuYW1lIl0sIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJtYXAifSwibGltaXRzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IkxpbWl0cyBkZXNjcmliZXMgdGhlIG1heGltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIGFsbG93ZWQuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifSwicmVxdWVzdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiUmVxdWVzdHMgZGVzY3JpYmVzIHRoZSBtaW5pbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyByZXF1aXJlZC5cbklmIFJlcXVlc3RzIGlzIG9taXR0ZWQgZm9yIGEgY29udGFpbmVyLCBpdCBkZWZhdWx0cyB0byBMaW1pdHMgaWYgdGhhdCBpcyBleHBsaWNpdGx5IHNwZWNpZmllZCxcbm90aGVyd2lzZSB0byBhbiBpbXBsZW1lbnRhdGlvbi1kZWZpbmVkIHZhbHVlLiBSZXF1ZXN0cyBjYW5ub3QgZXhjZWVkIExpbWl0cy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJob3N0QWxpYXNlcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzIGhvbGRzIHRoZSBtYXBwaW5nIGJldHdlZW4gSVAgYW5kIGhvc3RuYW1lcyB0aGF0IHdpbGwgYmUgaW5qZWN0ZWQgYXMgYW4gZW50cnkgaW4gdGhlXG5wb2QncyBob3N0cyBmaWxlLiIsInByb3BlcnRpZXMiOnsiaG9zdG5hbWVzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdG5hbWVzIGZvciB0aGUgYWJvdmUgSVAgYWRkcmVzcy4iLCJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJhdG9taWMifSwiaXAiOnsiZGVzY3JpcHRpb24iOiJJUCBhZGRyZXNzIG9mIHRoZSBob3N0IGZpbGUgZW50cnkuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiaXAiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibm9kZUludmVudG9yeSI6eyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIGZvciB0aGUgTm9kZS1JbnZlbnRvcnkgY29udGFpbmVyLCB3aGljaCBpcyByZXNwb25zaWJsZSBmb3Igc2Nhbm5pbmcgdGhlIE5vZGVzJyBmaWxlc3lzdGVtLiIsInByb3BlcnRpZXMiOnsicmVzb3VyY2VzIjp7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJwcm9wZXJ0aWVzIjp7ImNsYWltcyI6eyJkZXNjcmlwdGlvbiI6IkNsYWltcyBsaXN0cyB0aGUgbmFtZXMgb2YgcmVzb3VyY2VzLCBkZWZpbmVkIGluIHNwZWMucmVzb3VyY2VDbGFpbXMsXG50aGF0IGFyZSB1c2VkIGJ5IHRoaXMgY29udGFpbmVyLlxuXG5UaGlzIGZpZWxkIGRlcGVuZHMgb24gdGhlXG5EeW5hbWljUmVzb3VyY2VBbGxvY2F0aW9uIGZlYXR1cmUgZ2F0ZS5cblxuVGhpcyBmaWVsZCBpcyBpbW11dGFibGUuIEl0IGNhbiBvbmx5IGJlIHNldCBmb3IgY29udGFpbmVycy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlQ2xhaW0gcmVmZXJlbmNlcyBvbmUgZW50cnkgaW4gUG9kU3BlYy5SZXNvdXJjZUNsYWltcy4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJOYW1lIG11c3QgbWF0Y2ggdGhlIG5hbWUgb2Ygb25lIGVudHJ5IGluIHBvZC5zcGVjLnJlc291cmNlQ2xhaW1zIG9mXG50aGUgUG9kIHdoZXJlIHRoaXMgZmllbGQgaXMgdXNlZC4gSXQgbWFrZXMgdGhhdCByZXNvdXJjZSBhdmFpbGFibGVcbmluc2lkZSBhIGNvbnRhaW5lci4iLCJ0eXBlIjoic3RyaW5nIn0sInJlcXVlc3QiOnsiZGVzY3JpcHRpb24iOiJSZXF1ZXN0IGlzIHRoZSBuYW1lIGNob3NlbiBmb3IgYSByZXF1ZXN0IGluIHRoZSByZWZlcmVuY2VkIGNsYWltLlxuSWYgZW1wdHksIGV2ZXJ5dGhpbmcgZnJvbSB0aGUgY2xhaW0gaXMgbWFkZSBhdmFpbGFibGUsIG90aGVyd2lzZVxub25seSB0aGUgcmVzdWx0IG9mIHRoaXMgcmVxdWVzdC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtbWFwLWtleXMiOlsibmFtZSJdLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoibWFwIn0sImxpbWl0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJMaW1pdHMgZGVzY3JpYmVzIHRoZSBtYXhpbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyBhbGxvd2VkLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In0sInJlcXVlc3RzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IlJlcXVlc3RzIGRlc2NyaWJlcyB0aGUgbWluaW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgcmVxdWlyZWQuXG5JZiBSZXF1ZXN0cyBpcyBvbWl0dGVkIGZvciBhIGNvbnRhaW5lciwgaXQgZGVmYXVsdHMgdG8gTGltaXRzIGlmIHRoYXQgaXMgZXhwbGljaXRseSBzcGVjaWZpZWQsXG5vdGhlcndpc2UgdG8gYW4gaW1wbGVtZW50YXRpb24tZGVmaW5lZCB2YWx1ZS4gUmVxdWVzdHMgY2Fubm90IGV4Y2VlZCBMaW1pdHMuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwidGFpbnRUb2xlcmF0aW9uIjp7ImRlc2NyaXB0aW9uIjoiVG8gZW5zdXJlIGNvbXByZWhlbnNpdmUgbW9uaXRvcmluZyBvZiB5b3VyIGNsdXN0ZXIgYWN0aXZpdHksIFJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eVxud2lsbCBydW4gc2VydmljZXMgb24gZXZlcnkgbm9kZSBpbiB0aGUgY2x1c3RlciwgaW5jbHVkaW5nIHRhaW50ZWQgbm9kZXMgYnkgZGVmYXVsdC4gSWYgeW91IGRvXG5ub3Qgd2FudCB0aGlzIGJlaGF2aW9yLCBwbGVhc2Ugc2VsZWN0ICdBdm9pZFRhaW50cycgaGVyZS5cblRoZSBkZWZhdWx0IGlzOiBUb2xlcmF0ZVRhaW50cy4iLCJlbnVtIjpbIlRvbGVyYXRlVGFpbnRzIiwiQXZvaWRUYWludHMiXSwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJwcm9jZXNzQmFzZWxpbmVzIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcmVsYXRpbmcgdG8gcHJvY2VzcyBiYXNlbGluZXMuIiwicHJvcGVydGllcyI6eyJhdXRvTG9jayI6eyJkZXNjcmlwdGlvbiI6IlNob3VsZCBwcm9jZXNzIGJhc2VsaW5lcyBiZSBhdXRvbWF0aWNhbGx5IGxvY2tlZCB3aGVuIHRoZSBvYnNlcnZhdGlvbiBwZXJpb2QgKDEgaG91ciBieSBkZWZhdWx0KSBlbmRzLlxuVGhlIGRlZmF1bHQgaXM6IERpc2FibGVkLiIsImVudW0iOlsiRW5hYmxlZCIsIkRpc2FibGVkIl0sInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwicmVnaXN0cnlPdmVycmlkZSI6eyJkZXNjcmlwdGlvbiI6IlNldCB0aGlzIHBhcmFtZXRlciB0byBvdmVycmlkZSB0aGUgZGVmYXVsdCByZWdpc3RyeSBpbiBpbWFnZXMuIEZvciBleGFtcGxlLCBuZ2lueDpsYXRlc3QgLVx1MDAzZSBcdTAwM2NyZWdpc3RyeSBvdmVycmlkZVx1MDAzZS9saWJyYXJ5L25naW54OmxhdGVzdCIsInR5cGUiOiJzdHJpbmcifSwic2Nhbm5lciI6eyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIGZvciB0aGUgU2Nhbm5lciBjb21wb25lbnQsIHdoaWNoIGlzIHJlc3BvbnNpYmxlIGZvciB2dWxuZXJhYmlsaXR5IHNjYW5uaW5nIG9mIGNvbnRhaW5lclxuaW1hZ2VzIHN0b3JlZCBpbiBhIGNsdXN0ZXItbG9jYWwgaW1hZ2UgcmVwb3NpdG9yeS4iLCJwcm9wZXJ0aWVzIjp7ImFuYWx5emVyIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcGVydGFpbmluZyB0byB0aGUgYW5hbHl6ZXIgZGVwbG95bWVudCwgc3VjaCBhcyBmb3IgYXV0b3NjYWxpbmcuIiwicHJvcGVydGllcyI6eyJob3N0QWxpYXNlcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzIGhvbGRzIHRoZSBtYXBwaW5nIGJldHdlZW4gSVAgYW5kIGhvc3RuYW1lcyB0aGF0IHdpbGwgYmUgaW5qZWN0ZWQgYXMgYW4gZW50cnkgaW4gdGhlXG5wb2QncyBob3N0cyBmaWxlLiIsInByb3BlcnRpZXMiOnsiaG9zdG5hbWVzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdG5hbWVzIGZvciB0aGUgYWJvdmUgSVAgYWRkcmVzcy4iLCJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJhdG9taWMifSwiaXAiOnsiZGVzY3JpcHRpb24iOiJJUCBhZGRyZXNzIG9mIHRoZSBob3N0IGZpbGUgZW50cnkuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiaXAiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibm9kZVNlbGVjdG9yIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7InR5cGUiOiJzdHJpbmcifSwiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwidHlwZSI6Im9iamVjdCJ9LCJyZXNvdXJjZXMiOnsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsInByb3BlcnRpZXMiOnsiY2xhaW1zIjp7ImRlc2NyaXB0aW9uIjoiQ2xhaW1zIGxpc3RzIHRoZSBuYW1lcyBvZiByZXNvdXJjZXMsIGRlZmluZWQgaW4gc3BlYy5yZXNvdXJjZUNsYWltcyxcbnRoYXQgYXJlIHVzZWQgYnkgdGhpcyBjb250YWluZXIuXG5cblRoaXMgZmllbGQgZGVwZW5kcyBvbiB0aGVcbkR5bmFtaWNSZXNvdXJjZUFsbG9jYXRpb24gZmVhdHVyZSBnYXRlLlxuXG5UaGlzIGZpZWxkIGlzIGltbXV0YWJsZS4gSXQgY2FuIG9ubHkgYmUgc2V0IGZvciBjb250YWluZXJzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2VDbGFpbSByZWZlcmVuY2VzIG9uZSBlbnRyeSBpbiBQb2RTcGVjLlJlc291cmNlQ2xhaW1zLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik5hbWUgbXVzdCBtYXRjaCB0aGUgbmFtZSBvZiBvbmUgZW50cnkgaW4gcG9kLnNwZWMucmVzb3VyY2VDbGFpbXMgb2ZcbnRoZSBQb2Qgd2hlcmUgdGhpcyBmaWVsZCBpcyB1c2VkLiBJdCBtYWtlcyB0aGF0IHJlc291cmNlIGF2YWlsYWJsZVxuaW5zaWRlIGEgY29udGFpbmVyLiIsInR5cGUiOiJzdHJpbmcifSwicmVxdWVzdCI6eyJkZXNjcmlwdGlvbiI6IlJlcXVlc3QgaXMgdGhlIG5hbWUgY2hvc2VuIGZvciBhIHJlcXVlc3QgaW4gdGhlIHJlZmVyZW5jZWQgY2xhaW0uXG5JZiBlbXB0eSwgZXZlcnl0aGluZyBmcm9tIHRoZSBjbGFpbSBpcyBtYWRlIGF2YWlsYWJsZSwgb3RoZXJ3aXNlXG5vbmx5IHRoZSByZXN1bHQgb2YgdGhpcyByZXF1ZXN0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC1tYXAta2V5cyI6WyJuYW1lIl0sIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJtYXAifSwibGltaXRzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IkxpbWl0cyBkZXNjcmliZXMgdGhlIG1heGltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIGFsbG93ZWQuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifSwicmVxdWVzdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiUmVxdWVzdHMgZGVzY3JpYmVzIHRoZSBtaW5pbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyByZXF1aXJlZC5cbklmIFJlcXVlc3RzIGlzIG9taXR0ZWQgZm9yIGEgY29udGFpbmVyLCBpdCBkZWZhdWx0cyB0byBMaW1pdHMgaWYgdGhhdCBpcyBleHBsaWNpdGx5IHNwZWNpZmllZCxcbm90aGVyd2lzZSB0byBhbiBpbXBsZW1lbnRhdGlvbi1kZWZpbmVkIHZhbHVlLiBSZXF1ZXN0cyBjYW5ub3QgZXhjZWVkIExpbWl0cy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJzY2FsaW5nIjp7ImRlc2NyaXB0aW9uIjoiQ29udHJvbHMgdGhlIG51bWJlciBvZiBhbmFseXplciByZXBsaWNhcyBhbmQgYXV0b3NjYWxpbmcuIiwicHJvcGVydGllcyI6eyJhdXRvU2NhbGluZyI6eyJkZXNjcmlwdGlvbiI6IldoZW4gZW5hYmxlZCwgdGhlIG51bWJlciBvZiBjb21wb25lbnQgcmVwbGljYXMgaXMgbWFuYWdlZCBkeW5hbWljYWxseSBiYXNlZCBvbiB0aGUgbG9hZCwgd2l0aGluIHRoZSBsaW1pdHNcbnNwZWNpZmllZCBiZWxvdy5cblRoZSBkZWZhdWx0IGlzOiBFbmFibGVkLiIsImVudW0iOlsiRW5hYmxlZCIsIkRpc2FibGVkIl0sInR5cGUiOiJzdHJpbmcifSwibWF4UmVwbGljYXMiOnsiZGVzY3JpcHRpb24iOiJUaGUgZGVmYXVsdCBpczogNS4iLCJmb3JtYXQiOiJpbnQzMiIsIm1pbmltdW0iOjEsInR5cGUiOiJpbnRlZ2VyIn0sIm1pblJlcGxpY2FzIjp7ImRlc2NyaXB0aW9uIjoiVGhlIGRlZmF1bHQgaXM6IDIuIiwiZm9ybWF0IjoiaW50MzIiLCJtaW5pbXVtIjoxLCJ0eXBlIjoiaW50ZWdlciJ9LCJyZXBsaWNhcyI6eyJkZXNjcmlwdGlvbiI6IldoZW4gYXV0b3NjYWxpbmcgaXMgZGlzYWJsZWQsIHRoZSBudW1iZXIgb2YgcmVwbGljYXMgd2lsbCBhbHdheXMgYmUgY29uZmlndXJlZCB0byBtYXRjaCB0aGlzIHZhbHVlLlxuVGhlIGRlZmF1bHQgaXM6IDMuIiwiZm9ybWF0IjoiaW50MzIiLCJtaW5pbXVtIjoxLCJ0eXBlIjoiaW50ZWdlciJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0b2xlcmF0aW9ucyI6eyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHBvZCB0aGlzIFRvbGVyYXRpb24gaXMgYXR0YWNoZWQgdG8gdG9sZXJhdGVzIGFueSB0YWludCB0aGF0IG1hdGNoZXNcbnRoZSB0cmlwbGUgXHUwMDNja2V5LHZhbHVlLGVmZmVjdFx1MDAzZSB1c2luZyB0aGUgbWF0Y2hpbmcgb3BlcmF0b3IgXHUwMDNjb3BlcmF0b3JcdTAwM2UuIiwicHJvcGVydGllcyI6eyJlZmZlY3QiOnsiZGVzY3JpcHRpb24iOiJFZmZlY3QgaW5kaWNhdGVzIHRoZSB0YWludCBlZmZlY3QgdG8gbWF0Y2guIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBlZmZlY3RzLlxuV2hlbiBzcGVjaWZpZWQsIGFsbG93ZWQgdmFsdWVzIGFyZSBOb1NjaGVkdWxlLCBQcmVmZXJOb1NjaGVkdWxlIGFuZCBOb0V4ZWN1dGUuIiwidHlwZSI6InN0cmluZyJ9LCJrZXkiOnsiZGVzY3JpcHRpb24iOiJLZXkgaXMgdGhlIHRhaW50IGtleSB0aGF0IHRoZSB0b2xlcmF0aW9uIGFwcGxpZXMgdG8uIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBrZXlzLlxuSWYgdGhlIGtleSBpcyBlbXB0eSwgb3BlcmF0b3IgbXVzdCBiZSBFeGlzdHM7IHRoaXMgY29tYmluYXRpb24gbWVhbnMgdG8gbWF0Y2ggYWxsIHZhbHVlcyBhbmQgYWxsIGtleXMuIiwidHlwZSI6InN0cmluZyJ9LCJvcGVyYXRvciI6eyJkZXNjcmlwdGlvbiI6Ik9wZXJhdG9yIHJlcHJlc2VudHMgYSBrZXkncyByZWxhdGlvbnNoaXAgdG8gdGhlIHZhbHVlLlxuVmFsaWQgb3BlcmF0b3JzIGFyZSBFeGlzdHMgYW5kIEVxdWFsLiBEZWZhdWx0cyB0byBFcXVhbC5cbkV4aXN0cyBpcyBlcXVpdmFsZW50IHRvIHdpbGRjYXJkIGZvciB2YWx1ZSwgc28gdGhhdCBhIHBvZCBjYW5cbnRvbGVyYXRlIGFsbCB0YWludHMgb2YgYSBwYXJ0aWN1bGFyIGNhdGVnb3J5LiIsInR5cGUiOiJzdHJpbmcifSwidG9sZXJhdGlvblNlY29uZHMiOnsiZGVzY3JpcHRpb24iOiJUb2xlcmF0aW9uU2Vjb25kcyByZXByZXNlbnRzIHRoZSBwZXJpb2Qgb2YgdGltZSB0aGUgdG9sZXJhdGlvbiAod2hpY2ggbXVzdCBiZVxub2YgZWZmZWN0IE5vRXhlY3V0ZSwgb3RoZXJ3aXNlIHRoaXMgZmllbGQgaXMgaWdub3JlZCkgdG9sZXJhdGVzIHRoZSB0YWludC4gQnkgZGVmYXVsdCxcbml0IGlzIG5vdCBzZXQsIHdoaWNoIG1lYW5zIHRvbGVyYXRlIHRoZSB0YWludCBmb3JldmVyIChkbyBub3QgZXZpY3QpLiBaZXJvIGFuZFxubmVnYXRpdmUgdmFsdWVzIHdpbGwgYmUgdHJlYXRlZCBhcyAwIChldmljdCBpbW1lZGlhdGVseSkgYnkgdGhlIHN5c3RlbS4iLCJmb3JtYXQiOiJpbnQ2NCIsInR5cGUiOiJpbnRlZ2VyIn0sInZhbHVlIjp7ImRlc2NyaXB0aW9uIjoiVmFsdWUgaXMgdGhlIHRhaW50IHZhbHVlIHRoZSB0b2xlcmF0aW9uIG1hdGNoZXMgdG8uXG5JZiB0aGUgb3BlcmF0b3IgaXMgRXhpc3RzLCB0aGUgdmFsdWUgc2hvdWxkIGJlIGVtcHR5LCBvdGhlcndpc2UganVzdCBhIHJlZ3VsYXIgc3RyaW5nLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In19LCJ0eXBlIjoib2JqZWN0In0sImRiIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcGVydGFpbmluZyB0byB0aGUgZGF0YWJhc2UgdXNlZCBieSB0aGUgUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5IFNjYW5uZXIuIiwicHJvcGVydGllcyI6eyJob3N0QWxpYXNlcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzIGhvbGRzIHRoZSBtYXBwaW5nIGJldHdlZW4gSVAgYW5kIGhvc3RuYW1lcyB0aGF0IHdpbGwgYmUgaW5qZWN0ZWQgYXMgYW4gZW50cnkgaW4gdGhlXG5wb2QncyBob3N0cyBmaWxlLiIsInByb3BlcnRpZXMiOnsiaG9zdG5hbWVzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdG5hbWVzIGZvciB0aGUgYWJvdmUgSVAgYWRkcmVzcy4iLCJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJhdG9taWMifSwiaXAiOnsiZGVzY3JpcHRpb24iOiJJUCBhZGRyZXNzIG9mIHRoZSBob3N0IGZpbGUgZW50cnkuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiaXAiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibm9kZVNlbGVjdG9yIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7InR5cGUiOiJzdHJpbmcifSwiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwidHlwZSI6Im9iamVjdCJ9LCJyZXNvdXJjZXMiOnsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsInByb3BlcnRpZXMiOnsiY2xhaW1zIjp7ImRlc2NyaXB0aW9uIjoiQ2xhaW1zIGxpc3RzIHRoZSBuYW1lcyBvZiByZXNvdXJjZXMsIGRlZmluZWQgaW4gc3BlYy5yZXNvdXJjZUNsYWltcyxcbnRoYXQgYXJlIHVzZWQgYnkgdGhpcyBjb250YWluZXIuXG5cblRoaXMgZmllbGQgZGVwZW5kcyBvbiB0aGVcbkR5bmFtaWNSZXNvdXJjZUFsbG9jYXRpb24gZmVhdHVyZSBnYXRlLlxuXG5UaGlzIGZpZWxkIGlzIGltbXV0YWJsZS4gSXQgY2FuIG9ubHkgYmUgc2V0IGZvciBjb250YWluZXJzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2VDbGFpbSByZWZlcmVuY2VzIG9uZSBlbnRyeSBpbiBQb2RTcGVjLlJlc291cmNlQ2xhaW1zLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik5hbWUgbXVzdCBtYXRjaCB0aGUgbmFtZSBvZiBvbmUgZW50cnkgaW4gcG9kLnNwZWMucmVzb3VyY2VDbGFpbXMgb2ZcbnRoZSBQb2Qgd2hlcmUgdGhpcyBmaWVsZCBpcyB1c2VkLiBJdCBtYWtlcyB0aGF0IHJlc291cmNlIGF2YWlsYWJsZVxuaW5zaWRlIGEgY29udGFpbmVyLiIsInR5cGUiOiJzdHJpbmcifSwicmVxdWVzdCI6eyJkZXNjcmlwdGlvbiI6IlJlcXVlc3QgaXMgdGhlIG5hbWUgY2hvc2VuIGZvciBhIHJlcXVlc3QgaW4gdGhlIHJlZmVyZW5jZWQgY2xhaW0uXG5JZiBlbXB0eSwgZXZlcnl0aGluZyBmcm9tIHRoZSBjbGFpbSBpcyBtYWRlIGF2YWlsYWJsZSwgb3RoZXJ3aXNlXG5vbmx5IHRoZSByZXN1bHQgb2YgdGhpcyByZXF1ZXN0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC1tYXAta2V5cyI6WyJuYW1lIl0sIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJtYXAifSwibGltaXRzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IkxpbWl0cyBkZXNjcmliZXMgdGhlIG1heGltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIGFsbG93ZWQuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifSwicmVxdWVzdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiUmVxdWVzdHMgZGVzY3JpYmVzIHRoZSBtaW5pbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyByZXF1aXJlZC5cbklmIFJlcXVlc3RzIGlzIG9taXR0ZWQgZm9yIGEgY29udGFpbmVyLCBpdCBkZWZhdWx0cyB0byBMaW1pdHMgaWYgdGhhdCBpcyBleHBsaWNpdGx5IHNwZWNpZmllZCxcbm90aGVyd2lzZSB0byBhbiBpbXBsZW1lbnRhdGlvbi1kZWZpbmVkIHZhbHVlLiBSZXF1ZXN0cyBjYW5ub3QgZXhjZWVkIExpbWl0cy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0b2xlcmF0aW9ucyI6eyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHBvZCB0aGlzIFRvbGVyYXRpb24gaXMgYXR0YWNoZWQgdG8gdG9sZXJhdGVzIGFueSB0YWludCB0aGF0IG1hdGNoZXNcbnRoZSB0cmlwbGUgXHUwMDNja2V5LHZhbHVlLGVmZmVjdFx1MDAzZSB1c2luZyB0aGUgbWF0Y2hpbmcgb3BlcmF0b3IgXHUwMDNjb3BlcmF0b3JcdTAwM2UuIiwicHJvcGVydGllcyI6eyJlZmZlY3QiOnsiZGVzY3JpcHRpb24iOiJFZmZlY3QgaW5kaWNhdGVzIHRoZSB0YWludCBlZmZlY3QgdG8gbWF0Y2guIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBlZmZlY3RzLlxuV2hlbiBzcGVjaWZpZWQsIGFsbG93ZWQgdmFsdWVzIGFyZSBOb1NjaGVkdWxlLCBQcmVmZXJOb1NjaGVkdWxlIGFuZCBOb0V4ZWN1dGUuIiwidHlwZSI6InN0cmluZyJ9LCJrZXkiOnsiZGVzY3JpcHRpb24iOiJLZXkgaXMgdGhlIHRhaW50IGtleSB0aGF0IHRoZSB0b2xlcmF0aW9uIGFwcGxpZXMgdG8uIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBrZXlzLlxuSWYgdGhlIGtleSBpcyBlbXB0eSwgb3BlcmF0b3IgbXVzdCBiZSBFeGlzdHM7IHRoaXMgY29tYmluYXRpb24gbWVhbnMgdG8gbWF0Y2ggYWxsIHZhbHVlcyBhbmQgYWxsIGtleXMuIiwidHlwZSI6InN0cmluZyJ9LCJvcGVyYXRvciI6eyJkZXNjcmlwdGlvbiI6Ik9wZXJhdG9yIHJlcHJlc2VudHMgYSBrZXkncyByZWxhdGlvbnNoaXAgdG8gdGhlIHZhbHVlLlxuVmFsaWQgb3BlcmF0b3JzIGFyZSBFeGlzdHMgYW5kIEVxdWFsLiBEZWZhdWx0cyB0byBFcXVhbC5cbkV4aXN0cyBpcyBlcXVpdmFsZW50IHRvIHdpbGRjYXJkIGZvciB2YWx1ZSwgc28gdGhhdCBhIHBvZCBjYW5cbnRvbGVyYXRlIGFsbCB0YWludHMgb2YgYSBwYXJ0aWN1bGFyIGNhdGVnb3J5LiIsInR5cGUiOiJzdHJpbmcifSwidG9sZXJhdGlvblNlY29uZHMiOnsiZGVzY3JpcHRpb24iOiJUb2xlcmF0aW9uU2Vjb25kcyByZXByZXNlbnRzIHRoZSBwZXJpb2Qgb2YgdGltZSB0aGUgdG9sZXJhdGlvbiAod2hpY2ggbXVzdCBiZVxub2YgZWZmZWN0IE5vRXhlY3V0ZSwgb3RoZXJ3aXNlIHRoaXMgZmllbGQgaXMgaWdub3JlZCkgdG9sZXJhdGVzIHRoZSB0YWludC4gQnkgZGVmYXVsdCxcbml0IGlzIG5vdCBzZXQsIHdoaWNoIG1lYW5zIHRvbGVyYXRlIHRoZSB0YWludCBmb3JldmVyIChkbyBub3QgZXZpY3QpLiBaZXJvIGFuZFxubmVnYXRpdmUgdmFsdWVzIHdpbGwgYmUgdHJlYXRlZCBhcyAwIChldmljdCBpbW1lZGlhdGVseSkgYnkgdGhlIHN5c3RlbS4iLCJmb3JtYXQiOiJpbnQ2NCIsInR5cGUiOiJpbnRlZ2VyIn0sInZhbHVlIjp7ImRlc2NyaXB0aW9uIjoiVmFsdWUgaXMgdGhlIHRhaW50IHZhbHVlIHRoZSB0b2xlcmF0aW9uIG1hdGNoZXMgdG8uXG5JZiB0aGUgb3BlcmF0b3IgaXMgRXhpc3RzLCB0aGUgdmFsdWUgc2hvdWxkIGJlIGVtcHR5LCBvdGhlcndpc2UganVzdCBhIHJlZ3VsYXIgc3RyaW5nLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In19LCJ0eXBlIjoib2JqZWN0In0sInNjYW5uZXJDb21wb25lbnQiOnsiZGVzY3JpcHRpb24iOiJJZiB5b3UgZG8gbm90IHdhbnQgdG8gZGVwbG95IHRoZSBSZWQgSGF0IEFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHkgU2Nhbm5lciwgeW91IGNhbiBkaXNhYmxlIGl0IGhlcmVcbihub3QgcmVjb21tZW5kZWQpLlxuSWYgeW91IGRvIHNvLCBhbGwgdGhlIHNldHRpbmdzIGluIHRoaXMgc2VjdGlvbiB3aWxsIGhhdmUgbm8gZWZmZWN0LlxuVGhlIGRlZmF1bHQgaXM6IEF1dG9TZW5zZS4iLCJlbnVtIjpbIkF1dG9TZW5zZSIsIkRpc2FibGVkIl0sInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwic2Nhbm5lclY0Ijp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBTY2FubmVyIFY0IGNvbXBvbmVudHMsIHdoaWNoIGNhbiBydW4gaW4gYWRkaXRpb24gdG8gdGhlIHByZXZpb3VzbHkgZXhpc3RpbmcgU2Nhbm5lciBjb21wb25lbnRzIiwicHJvcGVydGllcyI6eyJkYiI6eyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHBlcnRhaW5pbmcgdG8gdGhlIERCIGRlcGxveW1lbnQuIiwicHJvcGVydGllcyI6eyJob3N0QWxpYXNlcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzIGhvbGRzIHRoZSBtYXBwaW5nIGJldHdlZW4gSVAgYW5kIGhvc3RuYW1lcyB0aGF0IHdpbGwgYmUgaW5qZWN0ZWQgYXMgYW4gZW50cnkgaW4gdGhlXG5wb2QncyBob3N0cyBmaWxlLiIsInByb3BlcnRpZXMiOnsiaG9zdG5hbWVzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdG5hbWVzIGZvciB0aGUgYWJvdmUgSVAgYWRkcmVzcy4iLCJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJhdG9taWMifSwiaXAiOnsiZGVzY3JpcHRpb24iOiJJUCBhZGRyZXNzIG9mIHRoZSBob3N0IGZpbGUgZW50cnkuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiaXAiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibm9kZVNlbGVjdG9yIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7InR5cGUiOiJzdHJpbmcifSwiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwidHlwZSI6Im9iamVjdCJ9LCJwZXJzaXN0ZW5jZSI6eyJkZXNjcmlwdGlvbiI6IkNvbmZpZ3VyZXMgaG93IFNjYW5uZXIgVjQgc2hvdWxkIHN0b3JlIGl0cyBwZXJzaXN0ZW50IGRhdGEuXG5Zb3UgY2FuIHVzZSBhIHBlcnNpc3RlbnQgdm9sdW1lIGNsYWltICh0aGUgcmVjb21tZW5kZWQgZGVmYXVsdCksIGEgaG9zdCBwYXRoLFxub3IgYW4gZW1wdHlEaXIgdm9sdW1lIGlmIFNjYW5uZXIgVjQgaXMgcnVubmluZyBvbiBhIHNlY3VyZWQgY2x1c3RlciB3aXRob3V0IGRlZmF1bHQgU3RvcmFnZUNsYXNzLiIsInByb3BlcnRpZXMiOnsiaG9zdFBhdGgiOnsiZGVzY3JpcHRpb24iOiJTdG9yZXMgcGVyc2lzdGVudCBkYXRhIG9uIGEgZGlyZWN0b3J5IG9uIHRoZSBob3N0LiBUaGlzIGlzIG5vdCByZWNvbW1lbmRlZCwgYW5kIHNob3VsZCBvbmx5XG5iZSB1c2VkIHRvZ2V0aGVyIHdpdGggYSBub2RlIHNlbGVjdG9yIChvbmx5IGF2YWlsYWJsZSBpbiBZQU1MIHZpZXcpLiIsInByb3BlcnRpZXMiOnsicGF0aCI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwYXRoIG9uIHRoZSBob3N0IHJ1bm5pbmcgQ2VudHJhbC4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInBlcnNpc3RlbnRWb2x1bWVDbGFpbSI6eyJkZXNjcmlwdGlvbiI6IlVzZXMgYSBLdWJlcm5ldGVzIHBlcnNpc3RlbnQgdm9sdW1lIGNsYWltIChQVkMpIHRvIG1hbmFnZSB0aGUgc3RvcmFnZSBsb2NhdGlvbiBvZiBwZXJzaXN0ZW50IGRhdGEuXG5SZWNvbW1lbmRlZCBmb3IgbW9zdCB1c2Vycy4iLCJwcm9wZXJ0aWVzIjp7ImNsYWltTmFtZSI6eyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSBQVkMgdG8gbWFuYWdlIHBlcnNpc3RlbnQgZGF0YS4gSWYgbm8gUFZDIHdpdGggdGhlIGdpdmVuIG5hbWUgZXhpc3RzLCBpdCB3aWxsIGJlXG5jcmVhdGVkLlxuVGhlIGRlZmF1bHQgaXM6IHNjYW5uZXItdjQtZGIuIiwidHlwZSI6InN0cmluZyJ9LCJzaXplIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHNpemUgb2YgdGhlIHBlcnNpc3RlbnQgdm9sdW1lIHdoZW4gY3JlYXRlZCB0aHJvdWdoIHRoZSBjbGFpbS4gSWYgYSBjbGFpbSB3YXMgYXV0b21hdGljYWxseSBjcmVhdGVkLFxudGhpcyBjYW4gYmUgdXNlZCBhZnRlciB0aGUgaW5pdGlhbCBkZXBsb3ltZW50IHRvIHJlc2l6ZSAoZ3JvdykgdGhlIHZvbHVtZSAob25seSBzdXBwb3J0ZWQgYnkgc29tZVxuc3RvcmFnZSBjbGFzcyBjb250cm9sbGVycykuIiwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwidHlwZSI6InN0cmluZyJ9LCJzdG9yYWdlQ2xhc3NOYW1lIjp7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHN0b3JhZ2UgY2xhc3MgdG8gdXNlIGZvciB0aGUgUFZDLiBJZiB5b3VyIGNsdXN0ZXIgaXMgbm90IGNvbmZpZ3VyZWQgd2l0aCBhIGRlZmF1bHQgc3RvcmFnZVxuY2xhc3MsIHlvdSBtdXN0IHNlbGVjdCBhIHZhbHVlIGhlcmUuIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJyZXNvdXJjZXMiOnsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsInByb3BlcnRpZXMiOnsiY2xhaW1zIjp7ImRlc2NyaXB0aW9uIjoiQ2xhaW1zIGxpc3RzIHRoZSBuYW1lcyBvZiByZXNvdXJjZXMsIGRlZmluZWQgaW4gc3BlYy5yZXNvdXJjZUNsYWltcyxcbnRoYXQgYXJlIHVzZWQgYnkgdGhpcyBjb250YWluZXIuXG5cblRoaXMgZmllbGQgZGVwZW5kcyBvbiB0aGVcbkR5bmFtaWNSZXNvdXJjZUFsbG9jYXRpb24gZmVhdHVyZSBnYXRlLlxuXG5UaGlzIGZpZWxkIGlzIGltbXV0YWJsZS4gSXQgY2FuIG9ubHkgYmUgc2V0IGZvciBjb250YWluZXJzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2VDbGFpbSByZWZlcmVuY2VzIG9uZSBlbnRyeSBpbiBQb2RTcGVjLlJlc291cmNlQ2xhaW1zLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik5hbWUgbXVzdCBtYXRjaCB0aGUgbmFtZSBvZiBvbmUgZW50cnkgaW4gcG9kLnNwZWMucmVzb3VyY2VDbGFpbXMgb2ZcbnRoZSBQb2Qgd2hlcmUgdGhpcyBmaWVsZCBpcyB1c2VkLiBJdCBtYWtlcyB0aGF0IHJlc291cmNlIGF2YWlsYWJsZVxuaW5zaWRlIGEgY29udGFpbmVyLiIsInR5cGUiOiJzdHJpbmcifSwicmVxdWVzdCI6eyJkZXNjcmlwdGlvbiI6IlJlcXVlc3QgaXMgdGhlIG5hbWUgY2hvc2VuIGZvciBhIHJlcXVlc3QgaW4gdGhlIHJlZmVyZW5jZWQgY2xhaW0uXG5JZiBlbXB0eSwgZXZlcnl0aGluZyBmcm9tIHRoZSBjbGFpbSBpcyBtYWRlIGF2YWlsYWJsZSwgb3RoZXJ3aXNlXG5vbmx5IHRoZSByZXN1bHQgb2YgdGhpcyByZXF1ZXN0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC1tYXAta2V5cyI6WyJuYW1lIl0sIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJtYXAifSwibGltaXRzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IkxpbWl0cyBkZXNjcmliZXMgdGhlIG1heGltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIGFsbG93ZWQuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifSwicmVxdWVzdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiUmVxdWVzdHMgZGVzY3JpYmVzIHRoZSBtaW5pbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyByZXF1aXJlZC5cbklmIFJlcXVlc3RzIGlzIG9taXR0ZWQgZm9yIGEgY29udGFpbmVyLCBpdCBkZWZhdWx0cyB0byBMaW1pdHMgaWYgdGhhdCBpcyBleHBsaWNpdGx5IHNwZWNpZmllZCxcbm90aGVyd2lzZSB0byBhbiBpbXBsZW1lbnRhdGlvbi1kZWZpbmVkIHZhbHVlLiBSZXF1ZXN0cyBjYW5ub3QgZXhjZWVkIExpbWl0cy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0b2xlcmF0aW9ucyI6eyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiVGhlIHBvZCB0aGlzIFRvbGVyYXRpb24gaXMgYXR0YWNoZWQgdG8gdG9sZXJhdGVzIGFueSB0YWludCB0aGF0IG1hdGNoZXNcbnRoZSB0cmlwbGUgXHUwMDNja2V5LHZhbHVlLGVmZmVjdFx1MDAzZSB1c2luZyB0aGUgbWF0Y2hpbmcgb3BlcmF0b3IgXHUwMDNjb3BlcmF0b3JcdTAwM2UuIiwicHJvcGVydGllcyI6eyJlZmZlY3QiOnsiZGVzY3JpcHRpb24iOiJFZmZlY3QgaW5kaWNhdGVzIHRoZSB0YWludCBlZmZlY3QgdG8gbWF0Y2guIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBlZmZlY3RzLlxuV2hlbiBzcGVjaWZpZWQsIGFsbG93ZWQgdmFsdWVzIGFyZSBOb1NjaGVkdWxlLCBQcmVmZXJOb1NjaGVkdWxlIGFuZCBOb0V4ZWN1dGUuIiwidHlwZSI6InN0cmluZyJ9LCJrZXkiOnsiZGVzY3JpcHRpb24iOiJLZXkgaXMgdGhlIHRhaW50IGtleSB0aGF0IHRoZSB0b2xlcmF0aW9uIGFwcGxpZXMgdG8uIEVtcHR5IG1lYW5zIG1hdGNoIGFsbCB0YWludCBrZXlzLlxuSWYgdGhlIGtleSBpcyBlbXB0eSwgb3BlcmF0b3IgbXVzdCBiZSBFeGlzdHM7IHRoaXMgY29tYmluYXRpb24gbWVhbnMgdG8gbWF0Y2ggYWxsIHZhbHVlcyBhbmQgYWxsIGtleXMuIiwidHlwZSI6InN0cmluZyJ9LCJvcGVyYXRvciI6eyJkZXNjcmlwdGlvbiI6Ik9wZXJhdG9yIHJlcHJlc2VudHMgYSBrZXkncyByZWxhdGlvbnNoaXAgdG8gdGhlIHZhbHVlLlxuVmFsaWQgb3BlcmF0b3JzIGFyZSBFeGlzdHMgYW5kIEVxdWFsLiBEZWZhdWx0cyB0byBFcXVhbC5cbkV4aXN0cyBpcyBlcXVpdmFsZW50IHRvIHdpbGRjYXJkIGZvciB2YWx1ZSwgc28gdGhhdCBhIHBvZCBjYW5cbnRvbGVyYXRlIGFsbCB0YWludHMgb2YgYSBwYXJ0aWN1bGFyIGNhdGVnb3J5LiIsInR5cGUiOiJzdHJpbmcifSwidG9sZXJhdGlvblNlY29uZHMiOnsiZGVzY3JpcHRpb24iOiJUb2xlcmF0aW9uU2Vjb25kcyByZXByZXNlbnRzIHRoZSBwZXJpb2Qgb2YgdGltZSB0aGUgdG9sZXJhdGlvbiAod2hpY2ggbXVzdCBiZVxub2YgZWZmZWN0IE5vRXhlY3V0ZSwgb3RoZXJ3aXNlIHRoaXMgZmllbGQgaXMgaWdub3JlZCkgdG9sZXJhdGVzIHRoZSB0YWludC4gQnkgZGVmYXVsdCxcbml0IGlzIG5vdCBzZXQsIHdoaWNoIG1lYW5zIHRvbGVyYXRlIHRoZSB0YWludCBmb3JldmVyIChkbyBub3QgZXZpY3QpLiBaZXJvIGFuZFxubmVnYXRpdmUgdmFsdWVzIHdpbGwgYmUgdHJlYXRlZCBhcyAwIChldmljdCBpbW1lZGlhdGVseSkgYnkgdGhlIHN5c3RlbS4iLCJmb3JtYXQiOiJpbnQ2NCIsInR5cGUiOiJpbnRlZ2VyIn0sInZhbHVlIjp7ImRlc2NyaXB0aW9uIjoiVmFsdWUgaXMgdGhlIHRhaW50IHZhbHVlIHRoZSB0b2xlcmF0aW9uIG1hdGNoZXMgdG8uXG5JZiB0aGUgb3BlcmF0b3IgaXMgRXhpc3RzLCB0aGUgdmFsdWUgc2hvdWxkIGJlIGVtcHR5LCBvdGhlcndpc2UganVzdCBhIHJlZ3VsYXIgc3RyaW5nLiIsInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In19LCJ0eXBlIjoib2JqZWN0In0sImluZGV4ZXIiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBwZXJ0YWluaW5nIHRvIHRoZSBpbmRleGVyIGRlcGxveW1lbnQuIiwicHJvcGVydGllcyI6eyJob3N0QWxpYXNlcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzIGhvbGRzIHRoZSBtYXBwaW5nIGJldHdlZW4gSVAgYW5kIGhvc3RuYW1lcyB0aGF0IHdpbGwgYmUgaW5qZWN0ZWQgYXMgYW4gZW50cnkgaW4gdGhlXG5wb2QncyBob3N0cyBmaWxlLiIsInByb3BlcnRpZXMiOnsiaG9zdG5hbWVzIjp7ImRlc2NyaXB0aW9uIjoiSG9zdG5hbWVzIGZvciB0aGUgYWJvdmUgSVAgYWRkcmVzcy4iLCJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSIsIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJhdG9taWMifSwiaXAiOnsiZGVzY3JpcHRpb24iOiJJUCBhZGRyZXNzIG9mIHRoZSBob3N0IGZpbGUgZW50cnkuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiaXAiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibm9kZVNlbGVjdG9yIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7InR5cGUiOiJzdHJpbmcifSwiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwidHlwZSI6Im9iamVjdCJ9LCJyZXNvdXJjZXMiOnsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsInByb3BlcnRpZXMiOnsiY2xhaW1zIjp7ImRlc2NyaXB0aW9uIjoiQ2xhaW1zIGxpc3RzIHRoZSBuYW1lcyBvZiByZXNvdXJjZXMsIGRlZmluZWQgaW4gc3BlYy5yZXNvdXJjZUNsYWltcyxcbnRoYXQgYXJlIHVzZWQgYnkgdGhpcyBjb250YWluZXIuXG5cblRoaXMgZmllbGQgZGVwZW5kcyBvbiB0aGVcbkR5bmFtaWNSZXNvdXJjZUFsbG9jYXRpb24gZmVhdHVyZSBnYXRlLlxuXG5UaGlzIGZpZWxkIGlzIGltbXV0YWJsZS4gSXQgY2FuIG9ubHkgYmUgc2V0IGZvciBjb250YWluZXJzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiUmVzb3VyY2VDbGFpbSByZWZlcmVuY2VzIG9uZSBlbnRyeSBpbiBQb2RTcGVjLlJlc291cmNlQ2xhaW1zLiIsInByb3BlcnRpZXMiOnsibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik5hbWUgbXVzdCBtYXRjaCB0aGUgbmFtZSBvZiBvbmUgZW50cnkgaW4gcG9kLnNwZWMucmVzb3VyY2VDbGFpbXMgb2ZcbnRoZSBQb2Qgd2hlcmUgdGhpcyBmaWVsZCBpcyB1c2VkLiBJdCBtYWtlcyB0aGF0IHJlc291cmNlIGF2YWlsYWJsZVxuaW5zaWRlIGEgY29udGFpbmVyLiIsInR5cGUiOiJzdHJpbmcifSwicmVxdWVzdCI6eyJkZXNjcmlwdGlvbiI6IlJlcXVlc3QgaXMgdGhlIG5hbWUgY2hvc2VuIGZvciBhIHJlcXVlc3QgaW4gdGhlIHJlZmVyZW5jZWQgY2xhaW0uXG5JZiBlbXB0eSwgZXZlcnl0aGluZyBmcm9tIHRoZSBjbGFpbSBpcyBtYWRlIGF2YWlsYWJsZSwgb3RoZXJ3aXNlXG5vbmx5IHRoZSByZXN1bHQgb2YgdGhpcyByZXF1ZXN0LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC1tYXAta2V5cyI6WyJuYW1lIl0sIngta3ViZXJuZXRlcy1saXN0LXR5cGUiOiJtYXAifSwibGltaXRzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IkxpbWl0cyBkZXNjcmliZXMgdGhlIG1heGltdW0gYW1vdW50IG9mIGNvbXB1dGUgcmVzb3VyY2VzIGFsbG93ZWQuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifSwicmVxdWVzdHMiOnsiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsiYW55T2YiOlt7InR5cGUiOiJpbnRlZ2VyIn0seyJ0eXBlIjoic3RyaW5nIn1dLCJwYXR0ZXJuIjoiXihcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSgoW0tNR1RQRV1pKXxbbnVta01HVFBFXXwoW2VFXShcXCt8LSk/KChbMC05XSsoXFwuWzAtOV0qKT8pfChcXC5bMC05XSspKSkpPyQiLCJ4LWt1YmVybmV0ZXMtaW50LW9yLXN0cmluZyI6dHJ1ZX0sImRlc2NyaXB0aW9uIjoiUmVxdWVzdHMgZGVzY3JpYmVzIHRoZSBtaW5pbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyByZXF1aXJlZC5cbklmIFJlcXVlc3RzIGlzIG9taXR0ZWQgZm9yIGEgY29udGFpbmVyLCBpdCBkZWZhdWx0cyB0byBMaW1pdHMgaWYgdGhhdCBpcyBleHBsaWNpdGx5IHNwZWNpZmllZCxcbm90aGVyd2lzZSB0byBhbiBpbXBsZW1lbnRhdGlvbi1kZWZpbmVkIHZhbHVlLiBSZXF1ZXN0cyBjYW5ub3QgZXhjZWVkIExpbWl0cy5cbk1vcmUgaW5mbzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9tYW5hZ2UtcmVzb3VyY2VzLWNvbnRhaW5lcnMvIiwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9LCJzY2FsaW5nIjp7ImRlc2NyaXB0aW9uIjoiQ29udHJvbHMgdGhlIG51bWJlciBvZiByZXBsaWNhcyBhbmQgYXV0b3NjYWxpbmcgZm9yIHRoaXMgY29tcG9uZW50LiIsInByb3BlcnRpZXMiOnsiYXV0b1NjYWxpbmciOnsiZGVzY3JpcHRpb24iOiJXaGVuIGVuYWJsZWQsIHRoZSBudW1iZXIgb2YgY29tcG9uZW50IHJlcGxpY2FzIGlzIG1hbmFnZWQgZHluYW1pY2FsbHkgYmFzZWQgb24gdGhlIGxvYWQsIHdpdGhpbiB0aGUgbGltaXRzXG5zcGVjaWZpZWQgYmVsb3cuXG5UaGUgZGVmYXVsdCBpczogRW5hYmxlZC4iLCJlbnVtIjpbIkVuYWJsZWQiLCJEaXNhYmxlZCJdLCJ0eXBlIjoic3RyaW5nIn0sIm1heFJlcGxpY2FzIjp7ImRlc2NyaXB0aW9uIjoiVGhlIGRlZmF1bHQgaXM6IDUuIiwiZm9ybWF0IjoiaW50MzIiLCJtaW5pbXVtIjoxLCJ0eXBlIjoiaW50ZWdlciJ9LCJtaW5SZXBsaWNhcyI6eyJkZXNjcmlwdGlvbiI6IlRoZSBkZWZhdWx0IGlzOiAyLiIsImZvcm1hdCI6ImludDMyIiwibWluaW11bSI6MSwidHlwZSI6ImludGVnZXIifSwicmVwbGljYXMiOnsiZGVzY3JpcHRpb24iOiJXaGVuIGF1dG9zY2FsaW5nIGlzIGRpc2FibGVkLCB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIHdpbGwgYWx3YXlzIGJlIGNvbmZpZ3VyZWQgdG8gbWF0Y2ggdGhpcyB2YWx1ZS5cblRoZSBkZWZhdWx0IGlzOiAzLiIsImZvcm1hdCI6ImludDMyIiwibWluaW11bSI6MSwidHlwZSI6ImludGVnZXIifX0sInR5cGUiOiJvYmplY3QifSwidG9sZXJhdGlvbnMiOnsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwb2QgdGhpcyBUb2xlcmF0aW9uIGlzIGF0dGFjaGVkIHRvIHRvbGVyYXRlcyBhbnkgdGFpbnQgdGhhdCBtYXRjaGVzXG50aGUgdHJpcGxlIFx1MDAzY2tleSx2YWx1ZSxlZmZlY3RcdTAwM2UgdXNpbmcgdGhlIG1hdGNoaW5nIG9wZXJhdG9yIFx1MDAzY29wZXJhdG9yXHUwMDNlLiIsInByb3BlcnRpZXMiOnsiZWZmZWN0Ijp7ImRlc2NyaXB0aW9uIjoiRWZmZWN0IGluZGljYXRlcyB0aGUgdGFpbnQgZWZmZWN0IHRvIG1hdGNoLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQgZWZmZWN0cy5cbldoZW4gc3BlY2lmaWVkLCBhbGxvd2VkIHZhbHVlcyBhcmUgTm9TY2hlZHVsZSwgUHJlZmVyTm9TY2hlZHVsZSBhbmQgTm9FeGVjdXRlLiIsInR5cGUiOiJzdHJpbmcifSwia2V5Ijp7ImRlc2NyaXB0aW9uIjoiS2V5IGlzIHRoZSB0YWludCBrZXkgdGhhdCB0aGUgdG9sZXJhdGlvbiBhcHBsaWVzIHRvLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQga2V5cy5cbklmIHRoZSBrZXkgaXMgZW1wdHksIG9wZXJhdG9yIG11c3QgYmUgRXhpc3RzOyB0aGlzIGNvbWJpbmF0aW9uIG1lYW5zIHRvIG1hdGNoIGFsbCB2YWx1ZXMgYW5kIGFsbCBrZXlzLiIsInR5cGUiOiJzdHJpbmcifSwib3BlcmF0b3IiOnsiZGVzY3JpcHRpb24iOiJPcGVyYXRvciByZXByZXNlbnRzIGEga2V5J3MgcmVsYXRpb25zaGlwIHRvIHRoZSB2YWx1ZS5cblZhbGlkIG9wZXJhdG9ycyBhcmUgRXhpc3RzIGFuZCBFcXVhbC4gRGVmYXVsdHMgdG8gRXF1YWwuXG5FeGlzdHMgaXMgZXF1aXZhbGVudCB0byB3aWxkY2FyZCBmb3IgdmFsdWUsIHNvIHRoYXQgYSBwb2QgY2FuXG50b2xlcmF0ZSBhbGwgdGFpbnRzIG9mIGEgcGFydGljdWxhciBjYXRlZ29yeS4iLCJ0eXBlIjoic3RyaW5nIn0sInRvbGVyYXRpb25TZWNvbmRzIjp7ImRlc2NyaXB0aW9uIjoiVG9sZXJhdGlvblNlY29uZHMgcmVwcmVzZW50cyB0aGUgcGVyaW9kIG9mIHRpbWUgdGhlIHRvbGVyYXRpb24gKHdoaWNoIG11c3QgYmVcbm9mIGVmZmVjdCBOb0V4ZWN1dGUsIG90aGVyd2lzZSB0aGlzIGZpZWxkIGlzIGlnbm9yZWQpIHRvbGVyYXRlcyB0aGUgdGFpbnQuIEJ5IGRlZmF1bHQsXG5pdCBpcyBub3Qgc2V0LCB3aGljaCBtZWFucyB0b2xlcmF0ZSB0aGUgdGFpbnQgZm9yZXZlciAoZG8gbm90IGV2aWN0KS4gWmVybyBhbmRcbm5lZ2F0aXZlIHZhbHVlcyB3aWxsIGJlIHRyZWF0ZWQgYXMgMCAoZXZpY3QgaW1tZWRpYXRlbHkpIGJ5IHRoZSBzeXN0ZW0uIiwiZm9ybWF0IjoiaW50NjQiLCJ0eXBlIjoiaW50ZWdlciJ9LCJ2YWx1ZSI6eyJkZXNjcmlwdGlvbiI6IlZhbHVlIGlzIHRoZSB0YWludCB2YWx1ZSB0aGUgdG9sZXJhdGlvbiBtYXRjaGVzIHRvLlxuSWYgdGhlIG9wZXJhdG9yIGlzIEV4aXN0cywgdGhlIHZhbHVlIHNob3VsZCBiZSBlbXB0eSwgb3RoZXJ3aXNlIGp1c3QgYSByZWd1bGFyIHN0cmluZy4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9fSwidHlwZSI6Im9iamVjdCJ9LCJtb25pdG9yaW5nIjp7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyBtb25pdG9yaW5nIGVuZHBvaW50IGZvciBTY2FubmVyIFY0LiBUaGUgbW9uaXRvcmluZyBlbmRwb2ludFxuYWxsb3dzIG90aGVyIHNlcnZpY2VzIHRvIGNvbGxlY3QgbWV0cmljcyBmcm9tIFNjYW5uZXIgVjQsIHByb3ZpZGVkIGluXG5Qcm9tZXRoZXVzIGNvbXBhdGlibGUgZm9ybWF0LiIsInByb3BlcnRpZXMiOnsiZXhwb3NlRW5kcG9pbnQiOnsiZGVzY3JpcHRpb24iOiJFeHBvc2UgdGhlIG1vbml0b3JpbmcgZW5kcG9pbnQuIEEgbmV3IHNlcnZpY2UsIFwibW9uaXRvcmluZ1wiLFxud2l0aCBwb3J0IDkwOTAsIHdpbGwgYmUgY3JlYXRlZCBhcyB3ZWxsIGFzIGEgbmV0d29yayBwb2xpY3kgYWxsb3dpbmdcbmluYm91bmQgY29ubmVjdGlvbnMgdG8gdGhlIHBvcnQuIiwiZW51bSI6WyJFbmFibGVkIiwiRGlzYWJsZWQiXSwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJzY2FubmVyQ29tcG9uZW50Ijp7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdG8gZW5hYmxlIHRoZSBTY2FubmVyIFY0IGNvbXBvbmVudCBzZXQgdGhpcyB0byBcIkF1dG9TZW5zZVwiXG5JZiB0aGlzIGZpZWxkIGlzIG5vdCBzcGVjaWZpZWQgb3Igc2V0IHRvIFwiRGVmYXVsdFwiLCB0aGUgZm9sbG93aW5nIGRlZmF1bHRpbmcgdGFrZXMgcGxhY2U6XG4qIGZvciBuZXcgaW5zdGFsbGF0aW9ucywgU2Nhbm5lciBWNCBpcyBlbmFibGVkIHN0YXJ0aW5nIHdpdGggQUNTIDQuODtcbiogZm9yIHVwZ3JhZGVzIHRvIDQuOCBmcm9tIHByZXZpb3VzIHJlbGVhc2VzLCBTY2FubmVyIFY0IGlzIGRpc2FibGVkLiIsImVudW0iOlsiRGVmYXVsdCIsIkF1dG9TZW5zZSIsIkRpc2FibGVkIl0sInR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwic2Vuc29yIjp7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBTZW5zb3IgY29tcG9uZW50LiIsInByb3BlcnRpZXMiOnsiaG9zdEFsaWFzZXMiOnsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhcyBob2xkcyB0aGUgbWFwcGluZyBiZXR3ZWVuIElQIGFuZCBob3N0bmFtZXMgdGhhdCB3aWxsIGJlIGluamVjdGVkIGFzIGFuIGVudHJ5IGluIHRoZVxucG9kJ3MgaG9zdHMgZmlsZS4iLCJwcm9wZXJ0aWVzIjp7Imhvc3RuYW1lcyI6eyJkZXNjcmlwdGlvbiI6Ikhvc3RuYW1lcyBmb3IgdGhlIGFib3ZlIElQIGFkZHJlc3MuIiwiaXRlbXMiOnsidHlwZSI6InN0cmluZyJ9LCJ0eXBlIjoiYXJyYXkiLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoiYXRvbWljIn0sImlwIjp7ImRlc2NyaXB0aW9uIjoiSVAgYWRkcmVzcyBvZiB0aGUgaG9zdCBmaWxlIGVudHJ5LiIsInR5cGUiOiJzdHJpbmcifX0sInJlcXVpcmVkIjpbImlwIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sIm5vZGVTZWxlY3RvciI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJ0eXBlIjoic3RyaW5nIn0sImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIGEgbm9kZSBzZWxlY3RvciBoZXJlLiIsInR5cGUiOiJvYmplY3QifSwicmVzb3VyY2VzIjp7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJwcm9wZXJ0aWVzIjp7ImNsYWltcyI6eyJkZXNjcmlwdGlvbiI6IkNsYWltcyBsaXN0cyB0aGUgbmFtZXMgb2YgcmVzb3VyY2VzLCBkZWZpbmVkIGluIHNwZWMucmVzb3VyY2VDbGFpbXMsXG50aGF0IGFyZSB1c2VkIGJ5IHRoaXMgY29udGFpbmVyLlxuXG5UaGlzIGZpZWxkIGRlcGVuZHMgb24gdGhlXG5EeW5hbWljUmVzb3VyY2VBbGxvY2F0aW9uIGZlYXR1cmUgZ2F0ZS5cblxuVGhpcyBmaWVsZCBpcyBpbW11dGFibGUuIEl0IGNhbiBvbmx5IGJlIHNldCBmb3IgY29udGFpbmVycy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlJlc291cmNlQ2xhaW0gcmVmZXJlbmNlcyBvbmUgZW50cnkgaW4gUG9kU3BlYy5SZXNvdXJjZUNsYWltcy4iLCJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsiZGVzY3JpcHRpb24iOiJOYW1lIG11c3QgbWF0Y2ggdGhlIG5hbWUgb2Ygb25lIGVudHJ5IGluIHBvZC5zcGVjLnJlc291cmNlQ2xhaW1zIG9mXG50aGUgUG9kIHdoZXJlIHRoaXMgZmllbGQgaXMgdXNlZC4gSXQgbWFrZXMgdGhhdCByZXNvdXJjZSBhdmFpbGFibGVcbmluc2lkZSBhIGNvbnRhaW5lci4iLCJ0eXBlIjoic3RyaW5nIn0sInJlcXVlc3QiOnsiZGVzY3JpcHRpb24iOiJSZXF1ZXN0IGlzIHRoZSBuYW1lIGNob3NlbiBmb3IgYSByZXF1ZXN0IGluIHRoZSByZWZlcmVuY2VkIGNsYWltLlxuSWYgZW1wdHksIGV2ZXJ5dGhpbmcgZnJvbSB0aGUgY2xhaW0gaXMgbWFkZSBhdmFpbGFibGUsIG90aGVyd2lzZVxub25seSB0aGUgcmVzdWx0IG9mIHRoaXMgcmVxdWVzdC4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJuYW1lIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5IiwieC1rdWJlcm5ldGVzLWxpc3QtbWFwLWtleXMiOlsibmFtZSJdLCJ4LWt1YmVybmV0ZXMtbGlzdC10eXBlIjoibWFwIn0sImxpbWl0cyI6eyJhZGRpdGlvbmFsUHJvcGVydGllcyI6eyJhbnlPZiI6W3sidHlwZSI6ImludGVnZXIifSx7InR5cGUiOiJzdHJpbmcifV0sInBhdHRlcm4iOiJeKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKChbS01HVFBFXWkpfFtudW1rTUdUUEVdfChbZUVdKFxcK3wtKT8oKFswLTldKyhcXC5bMC05XSopPyl8KFxcLlswLTldKykpKSk/JCIsIngta3ViZXJuZXRlcy1pbnQtb3Itc3RyaW5nIjp0cnVlfSwiZGVzY3JpcHRpb24iOiJMaW1pdHMgZGVzY3JpYmVzIHRoZSBtYXhpbXVtIGFtb3VudCBvZiBjb21wdXRlIHJlc291cmNlcyBhbGxvd2VkLlxuTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL21hbmFnZS1yZXNvdXJjZXMtY29udGFpbmVycy8iLCJ0eXBlIjoib2JqZWN0In0sInJlcXVlc3RzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7ImFueU9mIjpbeyJ0eXBlIjoiaW50ZWdlciJ9LHsidHlwZSI6InN0cmluZyJ9XSwicGF0dGVybiI6Il4oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkoKFtLTUdUUEVdaSl8W251bWtNR1RQRV18KFtlRV0oXFwrfC0pPygoWzAtOV0rKFxcLlswLTldKik/KXwoXFwuWzAtOV0rKSkpKT8kIiwieC1rdWJlcm5ldGVzLWludC1vci1zdHJpbmciOnRydWV9LCJkZXNjcmlwdGlvbiI6IlJlcXVlc3RzIGRlc2NyaWJlcyB0aGUgbWluaW11bSBhbW91bnQgb2YgY29tcHV0ZSByZXNvdXJjZXMgcmVxdWlyZWQuXG5JZiBSZXF1ZXN0cyBpcyBvbWl0dGVkIGZvciBhIGNvbnRhaW5lciwgaXQgZGVmYXVsdHMgdG8gTGltaXRzIGlmIHRoYXQgaXMgZXhwbGljaXRseSBzcGVjaWZpZWQsXG5vdGhlcndpc2UgdG8gYW4gaW1wbGVtZW50YXRpb24tZGVmaW5lZCB2YWx1ZS4gUmVxdWVzdHMgY2Fubm90IGV4Y2VlZCBMaW1pdHMuXG5Nb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vbWFuYWdlLXJlc291cmNlcy1jb250YWluZXJzLyIsInR5cGUiOiJvYmplY3QifX0sInR5cGUiOiJvYmplY3QifSwidG9sZXJhdGlvbnMiOnsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlRoZSBwb2QgdGhpcyBUb2xlcmF0aW9uIGlzIGF0dGFjaGVkIHRvIHRvbGVyYXRlcyBhbnkgdGFpbnQgdGhhdCBtYXRjaGVzXG50aGUgdHJpcGxlIFx1MDAzY2tleSx2YWx1ZSxlZmZlY3RcdTAwM2UgdXNpbmcgdGhlIG1hdGNoaW5nIG9wZXJhdG9yIFx1MDAzY29wZXJhdG9yXHUwMDNlLiIsInByb3BlcnRpZXMiOnsiZWZmZWN0Ijp7ImRlc2NyaXB0aW9uIjoiRWZmZWN0IGluZGljYXRlcyB0aGUgdGFpbnQgZWZmZWN0IHRvIG1hdGNoLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQgZWZmZWN0cy5cbldoZW4gc3BlY2lmaWVkLCBhbGxvd2VkIHZhbHVlcyBhcmUgTm9TY2hlZHVsZSwgUHJlZmVyTm9TY2hlZHVsZSBhbmQgTm9FeGVjdXRlLiIsInR5cGUiOiJzdHJpbmcifSwia2V5Ijp7ImRlc2NyaXB0aW9uIjoiS2V5IGlzIHRoZSB0YWludCBrZXkgdGhhdCB0aGUgdG9sZXJhdGlvbiBhcHBsaWVzIHRvLiBFbXB0eSBtZWFucyBtYXRjaCBhbGwgdGFpbnQga2V5cy5cbklmIHRoZSBrZXkgaXMgZW1wdHksIG9wZXJhdG9yIG11c3QgYmUgRXhpc3RzOyB0aGlzIGNvbWJpbmF0aW9uIG1lYW5zIHRvIG1hdGNoIGFsbCB2YWx1ZXMgYW5kIGFsbCBrZXlzLiIsInR5cGUiOiJzdHJpbmcifSwib3BlcmF0b3IiOnsiZGVzY3JpcHRpb24iOiJPcGVyYXRvciByZXByZXNlbnRzIGEga2V5J3MgcmVsYXRpb25zaGlwIHRvIHRoZSB2YWx1ZS5cblZhbGlkIG9wZXJhdG9ycyBhcmUgRXhpc3RzIGFuZCBFcXVhbC4gRGVmYXVsdHMgdG8gRXF1YWwuXG5FeGlzdHMgaXMgZXF1aXZhbGVudCB0byB3aWxkY2FyZCBmb3IgdmFsdWUsIHNvIHRoYXQgYSBwb2QgY2FuXG50b2xlcmF0ZSBhbGwgdGFpbnRzIG9mIGEgcGFydGljdWxhciBjYXRlZ29yeS4iLCJ0eXBlIjoic3RyaW5nIn0sInRvbGVyYXRpb25TZWNvbmRzIjp7ImRlc2NyaXB0aW9uIjoiVG9sZXJhdGlvblNlY29uZHMgcmVwcmVzZW50cyB0aGUgcGVyaW9kIG9mIHRpbWUgdGhlIHRvbGVyYXRpb24gKHdoaWNoIG11c3QgYmVcbm9mIGVmZmVjdCBOb0V4ZWN1dGUsIG90aGVyd2lzZSB0aGlzIGZpZWxkIGlzIGlnbm9yZWQpIHRvbGVyYXRlcyB0aGUgdGFpbnQuIEJ5IGRlZmF1bHQsXG5pdCBpcyBub3Qgc2V0LCB3aGljaCBtZWFucyB0b2xlcmF0ZSB0aGUgdGFpbnQgZm9yZXZlciAoZG8gbm90IGV2aWN0KS4gWmVybyBhbmRcbm5lZ2F0aXZlIHZhbHVlcyB3aWxsIGJlIHRyZWF0ZWQgYXMgMCAoZXZpY3QgaW1tZWRpYXRlbHkpIGJ5IHRoZSBzeXN0ZW0uIiwiZm9ybWF0IjoiaW50NjQiLCJ0eXBlIjoiaW50ZWdlciJ9LCJ2YWx1ZSI6eyJkZXNjcmlwdGlvbiI6IlZhbHVlIGlzIHRoZSB0YWludCB2YWx1ZSB0aGUgdG9sZXJhdGlvbiBtYXRjaGVzIHRvLlxuSWYgdGhlIG9wZXJhdG9yIGlzIEV4aXN0cywgdGhlIHZhbHVlIHNob3VsZCBiZSBlbXB0eSwgb3RoZXJ3aXNlIGp1c3QgYSByZWd1bGFyIHN0cmluZy4iLCJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0bHMiOnsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyByZWxhdGVkIHRvIFRyYW5zcG9ydCBMYXllciBTZWN1cml0eSwgc3VjaCBhcyBDZXJ0aWZpY2F0ZSBBdXRob3JpdGllcy4iLCJwcm9wZXJ0aWVzIjp7ImFkZGl0aW9uYWxDQXMiOnsiZGVzY3JpcHRpb24iOiJBbGxvd3MgeW91IHRvIHNwZWNpZnkgYWRkaXRpb25hbCB0cnVzdGVkIFJvb3QgQ0FzLiIsIml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiQWRkaXRpb25hbENBIGRlZmluZXMgYSBjZXJ0aWZpY2F0ZSBmb3IgYW4gYWRkaXRpb25hbCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkuIiwicHJvcGVydGllcyI6eyJjb250ZW50Ijp7ImRlc2NyaXB0aW9uIjoiUEVNIGZvcm1hdCIsInR5cGUiOiJzdHJpbmcifSwibmFtZSI6eyJkZXNjcmlwdGlvbiI6Ik11c3QgYmUgYSB2YWxpZCBmaWxlIGJhc2VuYW1lIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiY29udGVudCIsIm5hbWUiXSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifX0sInR5cGUiOiJvYmplY3QifX0sInJlcXVpcmVkIjpbImNsdXN0ZXJOYW1lIl0sInR5cGUiOiJvYmplY3QifSwic3RhdHVzIjp7ImRlc2NyaXB0aW9uIjoiU2VjdXJlZENsdXN0ZXJTdGF0dXMgZGVmaW5lcyB0aGUgb2JzZXJ2ZWQgc3RhdGUgb2YgU2VjdXJlZENsdXN0ZXIiLCJwcm9wZXJ0aWVzIjp7ImNsdXN0ZXJOYW1lIjp7ImRlc2NyaXB0aW9uIjoiVGhlIGFzc2lnbmVkIGNsdXN0ZXIgbmFtZSBwZXIgdGhlIHNwZWMuIFRoaXMgY2Fubm90IGJlIGNoYW5nZWQgYWZ0ZXJ3YXJkcy4gSWYgeW91IG5lZWQgdG8gY2hhbmdlIHRoZVxuY2x1c3RlciBuYW1lLCBwbGVhc2UgZGVsZXRlIGFuZCByZWNyZWF0ZSB0aGlzIHJlc291cmNlLiIsInR5cGUiOiJzdHJpbmcifSwiY29uZGl0aW9ucyI6eyJpdGVtcyI6eyJkZXNjcmlwdGlvbiI6IlN0YWNrUm94Q29uZGl0aW9uIGRlZmluZXMgYSBjb25kaXRpb24gZm9yIGEgU3RhY2tSb3ggY3VzdG9tIHJlc291cmNlLiIsInByb3BlcnRpZXMiOnsibGFzdFRyYW5zaXRpb25UaW1lIjp7ImZvcm1hdCI6ImRhdGUtdGltZSIsInR5cGUiOiJzdHJpbmcifSwibWVzc2FnZSI6eyJ0eXBlIjoic3RyaW5nIn0sInJlYXNvbiI6eyJkZXNjcmlwdGlvbiI6IkNvbmRpdGlvblJlYXNvbiBpcyBhIHR5cGUgb2YgdmFsdWVzIG9mIGNvbmRpdGlvbiByZWFzb24uIiwidHlwZSI6InN0cmluZyJ9LCJzdGF0dXMiOnsiZGVzY3JpcHRpb24iOiJDb25kaXRpb25TdGF0dXMgaXMgYSB0eXBlIG9mIHZhbHVlcyBvZiBjb25kaXRpb24gc3RhdHVzLiIsInR5cGUiOiJzdHJpbmcifSwidHlwZSI6eyJkZXNjcmlwdGlvbiI6IkNvbmRpdGlvblR5cGUgaXMgYSB0eXBlIG9mIHZhbHVlcyBvZiBjb25kaXRpb24gdHlwZS4iLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJzdGF0dXMiLCJ0eXBlIl0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sImRlcGxveWVkUmVsZWFzZSI6eyJkZXNjcmlwdGlvbiI6IlN0YWNrUm94UmVsZWFzZSBkZXNjcmliZXMgdGhlIEhlbG0gXCJyZWxlYXNlXCIgdGhhdCB3YXMgbW9zdCByZWNlbnRseSBhcHBsaWVkLiIsInByb3BlcnRpZXMiOnsidmVyc2lvbiI6eyJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sInByb2R1Y3RWZXJzaW9uIjp7ImRlc2NyaXB0aW9uIjoiVGhlIGRlcGxveWVkIHZlcnNpb24gb2YgdGhlIHByb2R1Y3QuIiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiY29uZGl0aW9ucyJdLCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In19LCJzZXJ2ZWQiOnRydWUsInN0b3JhZ2UiOnRydWUsInN1YnJlc291cmNlcyI6eyJzdGF0dXMiOnt9fX1dfSwic3RhdHVzIjp7ImFjY2VwdGVkTmFtZXMiOnsia2luZCI6IiIsInBsdXJhbCI6IiJ9LCJjb25kaXRpb25zIjpudWxsLCJzdG9yZWRWZXJzaW9ucyI6bnVsbH19" + } + }, + { + "type": "olm.bundle.object", + "value": { + "data": "eyJhcGlWZXJzaW9uIjoiYXBpZXh0ZW5zaW9ucy5rOHMuaW8vdjEiLCJraW5kIjoiQ3VzdG9tUmVzb3VyY2VEZWZpbml0aW9uIiwibWV0YWRhdGEiOnsiYW5ub3RhdGlvbnMiOnsiY29udHJvbGxlci1nZW4ua3ViZWJ1aWxkZXIuaW8vdmVyc2lvbiI6InYwLjE5LjAifSwibmFtZSI6InNlY3VyaXR5cG9saWNpZXMuY29uZmlnLnN0YWNrcm94LmlvIn0sInNwZWMiOnsiZ3JvdXAiOiJjb25maWcuc3RhY2tyb3guaW8iLCJuYW1lcyI6eyJraW5kIjoiU2VjdXJpdHlQb2xpY3kiLCJsaXN0S2luZCI6IlNlY3VyaXR5UG9saWN5TGlzdCIsInBsdXJhbCI6InNlY3VyaXR5cG9saWNpZXMiLCJzaG9ydE5hbWVzIjpbInNwIl0sInNpbmd1bGFyIjoic2VjdXJpdHlwb2xpY3kifSwic2NvcGUiOiJOYW1lc3BhY2VkIiwidmVyc2lvbnMiOlt7Im5hbWUiOiJ2MWFscGhhMSIsInNjaGVtYSI6eyJvcGVuQVBJVjNTY2hlbWEiOnsiZGVzY3JpcHRpb24iOiJTZWN1cml0eVBvbGljeSBpcyB0aGUgU2NoZW1hIGZvciB0aGUgcG9saWNpZXMgQVBJIiwicHJvcGVydGllcyI6eyJhcGlWZXJzaW9uIjp7ImRlc2NyaXB0aW9uIjoiQVBJVmVyc2lvbiBkZWZpbmVzIHRoZSB2ZXJzaW9uZWQgc2NoZW1hIG9mIHRoaXMgcmVwcmVzZW50YXRpb24gb2YgYW4gb2JqZWN0LlxuU2VydmVycyBzaG91bGQgY29udmVydCByZWNvZ25pemVkIHNjaGVtYXMgdG8gdGhlIGxhdGVzdCBpbnRlcm5hbCB2YWx1ZSwgYW5kXG5tYXkgcmVqZWN0IHVucmVjb2duaXplZCB2YWx1ZXMuXG5Nb3JlIGluZm86IGh0dHBzOi8vZ2l0Lms4cy5pby9jb21tdW5pdHkvY29udHJpYnV0b3JzL2RldmVsL3NpZy1hcmNoaXRlY3R1cmUvYXBpLWNvbnZlbnRpb25zLm1kI3Jlc291cmNlcyIsInR5cGUiOiJzdHJpbmcifSwia2luZCI6eyJkZXNjcmlwdGlvbiI6IktpbmQgaXMgYSBzdHJpbmcgdmFsdWUgcmVwcmVzZW50aW5nIHRoZSBSRVNUIHJlc291cmNlIHRoaXMgb2JqZWN0IHJlcHJlc2VudHMuXG5TZXJ2ZXJzIG1heSBpbmZlciB0aGlzIGZyb20gdGhlIGVuZHBvaW50IHRoZSBjbGllbnQgc3VibWl0cyByZXF1ZXN0cyB0by5cbkNhbm5vdCBiZSB1cGRhdGVkLlxuSW4gQ2FtZWxDYXNlLlxuTW9yZSBpbmZvOiBodHRwczovL2dpdC5rOHMuaW8vY29tbXVuaXR5L2NvbnRyaWJ1dG9ycy9kZXZlbC9zaWctYXJjaGl0ZWN0dXJlL2FwaS1jb252ZW50aW9ucy5tZCN0eXBlcy1raW5kcyIsInR5cGUiOiJzdHJpbmcifSwibWV0YWRhdGEiOnsidHlwZSI6Im9iamVjdCJ9LCJzcGVjIjp7ImRlc2NyaXB0aW9uIjoiU2VjdXJpdHlQb2xpY3lTcGVjIGRlZmluZXMgdGhlIGRlc2lyZWQgc3RhdGUgb2YgU2VjdXJpdHlQb2xpY3kiLCJwcm9wZXJ0aWVzIjp7ImNhdGVnb3JpZXMiOnsiZGVzY3JpcHRpb24iOiJDYXRlZ29yaWVzIGlzIGEgbGlzdCBvZiBjYXRlZ29yaWVzIHRoYXQgdGhpcyBwb2xpY3kgZmFsbHMgdW5kZXIuICBDYXRlZ29yeSBuYW1lcyBtdXN0IGFscmVhZHkgZXhpc3QgaW4gQ2VudHJhbC4iLCJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sIm1pbkl0ZW1zIjoxLCJ0eXBlIjoiYXJyYXkifSwiY3JpdGVyaWFMb2NrZWQiOnsiZGVzY3JpcHRpb24iOiJDcml0ZXJpYUxvY2tlZCBpcyB1bnVzZWQgYW5kIGRlcHJlY2F0ZWQiLCJ0eXBlIjoiYm9vbGVhbiJ9LCJkZXNjcmlwdGlvbiI6eyJkZXNjcmlwdGlvbiI6IkRlc2NyaXB0aW9uIGlzIGEgZnJlZS1mb3JtIHRleHQgZGVzY3JpcHRpb24gb2YgdGhpcyBwb2xpY3kuIiwicGF0dGVybiI6Il5bXlxcJF17MCw4MDB9JCIsInR5cGUiOiJzdHJpbmcifSwiZGlzYWJsZWQiOnsiZGVzY3JpcHRpb24iOiJEaXNhYmxlZCB0b2dnbGVzIHdoZXRoZXIgb3Igbm90IHRoaXMgcG9saWN5IHdpbGwgYmUgZXhlY3V0aW5nIGFuZCBhY3RpdmVseSBmaXJpbmcgYWxlcnRzLiIsInR5cGUiOiJib29sZWFuIn0sImVuZm9yY2VtZW50QWN0aW9ucyI6eyJkZXNjcmlwdGlvbiI6IkVuZm9yY2VtZW50IGxpc3RzIHRoZSBlbmZvcmNlbWVudCBhY3Rpb25zIHRvIHRha2Ugd2hlbiBhIHZpb2xhdGlvbiBmcm9tIHRoaXMgcG9saWN5IGlzIGlkZW50aWZpZWQuICBQb3NzaWJsZSB2YWx1ZSBhcmUgVU5TRVRfRU5GT1JDRU1FTlQsIFNDQUxFX1RPX1pFUk9fRU5GT1JDRU1FTlQsIFVOU0FUSVNGSUFCTEVfTk9ERV9DT05TVFJBSU5UX0VORk9SQ0VNRU5ULCBLSUxMX1BPRF9FTkZPUkNFTUVOVCwgRkFJTF9CVUlMRF9FTkZPUkNFTUVOVCwgRkFJTF9LVUJFX1JFUVVFU1RfRU5GT1JDRU1FTlQsIEZBSUxfREVQTE9ZTUVOVF9DUkVBVEVfRU5GT1JDRU1FTlQsIGFuZC4gRkFJTF9ERVBMT1lNRU5UX1VQREFURV9FTkZPUkNFTUVOVC4iLCJpdGVtcyI6eyJlbnVtIjpbIlVOU0VUX0VORk9SQ0VNRU5UIiwiU0NBTEVfVE9fWkVST19FTkZPUkNFTUVOVCIsIlVOU0FUSVNGSUFCTEVfTk9ERV9DT05TVFJBSU5UX0VORk9SQ0VNRU5UIiwiS0lMTF9QT0RfRU5GT1JDRU1FTlQiLCJGQUlMX0JVSUxEX0VORk9SQ0VNRU5UIiwiRkFJTF9LVUJFX1JFUVVFU1RfRU5GT1JDRU1FTlQiLCJGQUlMX0RFUExPWU1FTlRfQ1JFQVRFX0VORk9SQ0VNRU5UIiwiRkFJTF9ERVBMT1lNRU5UX1VQREFURV9FTkZPUkNFTUVOVCJdLCJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSJ9LCJldmVudFNvdXJjZSI6eyJkZXNjcmlwdGlvbiI6IkV2ZW50U291cmNlIGRlc2NyaWJlcyB3aGljaCBldmVudHMgc2hvdWxkIHRyaWdnZXIgZXhlY3V0aW9uIG9mIHRoaXMgcG9saWN5IiwiZW51bSI6WyJOT1RfQVBQTElDQUJMRSIsIkRFUExPWU1FTlRfRVZFTlQiLCJBVURJVF9MT0dfRVZFTlQiXSwidHlwZSI6InN0cmluZyJ9LCJleGNsdXNpb25zIjp7ImRlc2NyaXB0aW9uIjoiRXhjbHVzaW9ucyBkZWZpbmUgZGVwbG95bWVudHMgb3IgaW1hZ2VzIHRoYXQgc2hvdWxkIGJlIGV4Y2x1ZGVkIGZyb20gdGhpcyBwb2xpY3kuIiwiaXRlbXMiOnsicHJvcGVydGllcyI6eyJkZXBsb3ltZW50Ijp7InByb3BlcnRpZXMiOnsibmFtZSI6eyJ0eXBlIjoic3RyaW5nIn0sInNjb3BlIjp7InByb3BlcnRpZXMiOnsiY2x1c3RlciI6eyJkZXNjcmlwdGlvbiI6IkNsdXN0ZXIgaXMgZWl0aGVyIHRoZSBuYW1lIG9yIHRoZSBJRCBvZiB0aGUgY2x1c3RlciB0aGF0IHRoaXMgc2NvcGUgYXBwbGllcyB0byIsInR5cGUiOiJzdHJpbmcifSwibGFiZWwiOnsicHJvcGVydGllcyI6eyJrZXkiOnsidHlwZSI6InN0cmluZyJ9LCJ2YWx1ZSI6eyJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In0sIm5hbWVzcGFjZSI6eyJ0eXBlIjoic3RyaW5nIn19LCJ0eXBlIjoib2JqZWN0In19LCJ0eXBlIjoib2JqZWN0In0sImV4cGlyYXRpb24iOnsiZm9ybWF0IjoiZGF0ZS10aW1lIiwidHlwZSI6InN0cmluZyJ9LCJpbWFnZSI6eyJwcm9wZXJ0aWVzIjp7Im5hbWUiOnsidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJuYW1lIjp7InR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sImlzRGVmYXVsdCI6eyJkZXNjcmlwdGlvbiI6IklzRGVmYXVsdCBpcyB1bnVzZWQiLCJ0eXBlIjoiYm9vbGVhbiJ9LCJsaWZlY3ljbGVTdGFnZXMiOnsiZGVzY3JpcHRpb24iOiJMaWZlY3ljbGVTdGFnZXMgZGVzY3JpYmVzIHdoaWNoIHBvbGljeSBsaWZlY3lsY2Ugc3RhZ2VzIHRoaXMgcG9saWN5IGFwcGxpZXMgdG8uICBDaG9pY2VzIGFyZSBERVBMT1ksIEJVSUxELCBhbmQgUlVOVElNRS4iLCJpdGVtcyI6eyJlbnVtIjpbIkRFUExPWSIsIkJVSUxEIiwiUlVOVElNRSJdLCJ0eXBlIjoic3RyaW5nIn0sIm1pbkl0ZW1zIjoxLCJ0eXBlIjoiYXJyYXkifSwibWl0cmVBdHRhY2tWZWN0b3JzIjp7Iml0ZW1zIjp7InByb3BlcnRpZXMiOnsidGFjdGljIjp7InR5cGUiOiJzdHJpbmcifSwidGVjaG5pcXVlcyI6eyJpdGVtcyI6eyJ0eXBlIjoic3RyaW5nIn0sInR5cGUiOiJhcnJheSJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifSwibWl0cmVWZWN0b3JzTG9ja2VkIjp7ImRlc2NyaXB0aW9uIjoiTWl0cmVWZXRvcnNMb2NrZWQgaXMgdW51c2VkIGFuZCBkZXByZWNhdGVkIiwidHlwZSI6ImJvb2xlYW4ifSwibm90aWZpZXJzIjp7ImRlc2NyaXB0aW9uIjoiTm90aWZpZXJzIGlzIGEgbGlzdCBvZiBJRHMgb3IgbmFtZXMgb2YgdGhlIG5vdGlmaWVycyB0aGF0IHNob3VsZCBiZSB0cmlnZ2VyZWQgd2hlbiBhIHZpb2xhdGlvbiBmcm9tIHRoaXMgcG9saWN5IGlzIGlkZW50aWZpZWQuICBJRHMgc2hvdWxkIGJlIGluIHRoZSBmb3JtIG9mIGEgVVVJRCBhbmQgYXJlIGZvdW5kIHRocm91Z2ggdGhlIENlbnRyYWwgQVBJLiIsIml0ZW1zIjp7InR5cGUiOiJzdHJpbmcifSwidHlwZSI6ImFycmF5In0sInBvbGljeU5hbWUiOnsiZGVzY3JpcHRpb24iOiJQb2xpY3lOYW1lIGlzIHRoZSBuYW1lIG9mIHRoZSBwb2xpY3kgYXMgaXQgYXBwZWFycyBpbiB0aGUgQVBJIGFuZCBVSS4gIE5vdGUgdGhhdCBjaGFuZ2luZyB0aGlzIHZhbHVlIHdpbGwgcmVuYW1lIHRoZSBwb2xpY3kgYXMgc3RvcmVkIGluIHRoZSBkYXRhYmFzZS4gIFRoaXMgZmllbGQgbXVzdCBiZSB1bmlxdWUuIiwicGF0dGVybiI6Il5bXlxcblxcclxcJF17NSwxMjh9JCIsInR5cGUiOiJzdHJpbmcifSwicG9saWN5U2VjdGlvbnMiOnsiZGVzY3JpcHRpb24iOiJQb2xpY3lTZWN0aW9ucyBkZWZpbmUgdGhlIHZpb2xhdGlvbiBjcml0ZXJpYSBmb3IgdGhpcyBwb2xpY3kuIiwiaXRlbXMiOnsicHJvcGVydGllcyI6eyJwb2xpY3lHcm91cHMiOnsiZGVzY3JpcHRpb24iOiJQb2xpY3lHcm91cHMgaXMgdGhlIHNldCBvZiBwb2xpY2llcyBncm91cHMgdGhhdCBtYWtlIHVwIHRoaXMgc2VjdGlvbi4gIEVhY2ggZ3JvdXAgY2FuIGJlIGNvbnNpZGVyZWQgYW4gaW5kaXZpZHVhbCBjcml0ZXJpb24uIiwiaXRlbXMiOnsicHJvcGVydGllcyI6eyJib29sZWFuT3BlcmF0b3IiOnsiZGVzY3JpcHRpb24iOiJCb29sZWFuT3BlcmF0b3IgZGV0ZXJtaW5lcyBpZiB0aGUgdmFsdWVzIGFyZSBjb21iaW5lZCB3aXRoIGFuIE9SIG9yIGFuIEFORC4gIERlZmF1bHRzIHRvIE9SLiIsImVudW0iOlsiT1IiLCJBTkQiXSwidHlwZSI6InN0cmluZyJ9LCJmaWVsZE5hbWUiOnsiZGVzY3JpcHRpb24iOiJGaWVsZE5hbWUgZGVmaW5lcyB3aGljaCBmaWVsZCBvbiBhIGRlcGxveW1lbnQgb3IgaW1hZ2UgdGhpcyBQb2xpY3lHcm91cCBldmFsdWF0ZXMuICBTZWUgaHR0cHM6Ly9kb2NzLm9wZW5zaGlmdC5jb20vYWNzL29wZXJhdGluZy9tYW5hZ2Utc2VjdXJpdHktcG9saWNpZXMuaHRtbCNwb2xpY3ktY3JpdGVyaWFfbWFuYWdlLXNlY3VyaXR5LXBvbGljaWVzIGZvciBhIGNvbXBsZXRlIGxpc3Qgb2YgcG9zc2libGUgdmFsdWVzLiIsInR5cGUiOiJzdHJpbmcifSwibmVnYXRlIjp7ImRlc2NyaXB0aW9uIjoiTmVnYXRlIGRldGVybWluZXMgaWYgdGhlIGV2YWx1YXRpb24gb2YgdGhpcyBQb2xpY3lHcm91cCBpcyBuZWdhdGVkLiAgRGVmYXVsdCB0byBmYWxzZS4iLCJ0eXBlIjoiYm9vbGVhbiJ9LCJ2YWx1ZXMiOnsiZGVzY3JpcHRpb24iOiJWYWx1ZXMgaXMgdGhlIGxpc3Qgb2YgdmFsdWVzIGZvciB0aGUgc3BlY2lmaWVkIGZpZWxkIiwiaXRlbXMiOnsicHJvcGVydGllcyI6eyJ2YWx1ZSI6eyJkZXNjcmlwdGlvbiI6IlZhbHVlIGlzIHNpbXBseSB0aGUgc3RyaW5nIHZhbHVlIiwidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9LCJ0eXBlIjoiYXJyYXkifX0sInJlcXVpcmVkIjpbImZpZWxkTmFtZSJdLCJ0eXBlIjoib2JqZWN0In0sInR5cGUiOiJhcnJheSJ9LCJzZWN0aW9uTmFtZSI6eyJkZXNjcmlwdGlvbiI6IlNlY3Rpb25OYW1lIGlzIGEgdXNlci1mcmllbmRseSBuYW1lIGZvciB0aGlzIHNlY3Rpb24gb2YgcG9saWNpZXMiLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJwb2xpY3lHcm91cHMiXSwidHlwZSI6Im9iamVjdCJ9LCJtaW5JdGVtcyI6MSwidHlwZSI6ImFycmF5In0sInJhdGlvbmFsZSI6eyJ0eXBlIjoic3RyaW5nIn0sInJlbWVkaWF0aW9uIjp7ImRlc2NyaXB0aW9uIjoiUmVtZWRpYXRpb24gZGVzY3JpYmVzIGhvdyB0byByZW1lZGlhdGUgYSB2aW9sYXRpb24gb2YgdGhpcyBwb2xpY3kuIiwidHlwZSI6InN0cmluZyJ9LCJzY29wZSI6eyJkZXNjcmlwdGlvbiI6IlNjb3BlIGRlZmluZXMgY2x1c3RlcnMsIG5hbWVzcGFjZXMsIGFuZCBkZXBsb3ltZW50cyB0aGF0IHNob3VsZCBiZSBpbmNsdWRlZCBpbiB0aGlzIHBvbGljeS4gIE5vIHNjb3BlcyBkZWZpbmVkIGluY2x1ZGVzIGV2ZXJ5dGhpbmcuIiwiaXRlbXMiOnsicHJvcGVydGllcyI6eyJjbHVzdGVyIjp7ImRlc2NyaXB0aW9uIjoiQ2x1c3RlciBpcyBlaXRoZXIgdGhlIG5hbWUgb3IgdGhlIElEIG9mIHRoZSBjbHVzdGVyIHRoYXQgdGhpcyBzY29wZSBhcHBsaWVzIHRvIiwidHlwZSI6InN0cmluZyJ9LCJsYWJlbCI6eyJwcm9wZXJ0aWVzIjp7ImtleSI6eyJ0eXBlIjoic3RyaW5nIn0sInZhbHVlIjp7InR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwibmFtZXNwYWNlIjp7InR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sInNldmVyaXR5Ijp7ImRlc2NyaXB0aW9uIjoiU2V2ZXJpdHkgZGVmaW5lcyBob3cgc2V2ZXJlIGEgdmlvbGF0aW9uIGZyb20gdGhpcyBwb2xpY3kgaXMuICBQb3NzaWJsZSB2YWx1ZXMgYXJlIFVOU0VUX1NFVkVSSVRZLCBMT1dfU0VWRVJJVFksIE1FRElVTV9TRVZFUklUWSwgSElHSF9TRVZFUklUWSwgYW5kIENSSVRJQ0FMX1NFVkVSSVRZLiIsImVudW0iOlsiVU5TRVRfU0VWRVJJVFkiLCJMT1dfU0VWRVJJVFkiLCJNRURJVU1fU0VWRVJJVFkiLCJISUdIX1NFVkVSSVRZIiwiQ1JJVElDQUxfU0VWRVJJVFkiXSwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsiY2F0ZWdvcmllcyIsImxpZmVjeWNsZVN0YWdlcyIsInBvbGljeU5hbWUiLCJwb2xpY3lTZWN0aW9ucyIsInNldmVyaXR5Il0sInR5cGUiOiJvYmplY3QifSwic3RhdHVzIjp7InByb3BlcnRpZXMiOnsiYWNjZXB0ZWQiOnsiZGVzY3JpcHRpb24iOiJBY2NlcHRlZCBpcyBkZXByZWNhdGVkIGluIGZhdm9yIG9mIGNvbmRpdGlvbnMiLCJ0eXBlIjoiYm9vbGVhbiJ9LCJjb25kaXRpb25zIjp7Iml0ZW1zIjp7ImRlc2NyaXB0aW9uIjoiU2VjdXJpdHlQb2xpY3lDb25kaXRpb24gZGVmaW5lcyB0aGUgb2JzZXJ2ZWQgc3RhdGUgb2YgU2VjdXJpdHlQb2xpY3kiLCJwcm9wZXJ0aWVzIjp7Imxhc3RUcmFuc2l0aW9uVGltZSI6eyJmb3JtYXQiOiJkYXRlLXRpbWUiLCJ0eXBlIjoic3RyaW5nIn0sIm1lc3NhZ2UiOnsidHlwZSI6InN0cmluZyJ9LCJzdGF0dXMiOnsidHlwZSI6InN0cmluZyJ9LCJ0eXBlIjp7InR5cGUiOiJzdHJpbmcifX0sInR5cGUiOiJvYmplY3QifSwidHlwZSI6ImFycmF5In0sIm1lc3NhZ2UiOnsiZGVzY3JpcHRpb24iOiJNZXNzYWdlIGlzIGRlcHJlY2F0ZWQgaW4gZmF2b3Igb2YgY29uZGl0aW9ucyIsInR5cGUiOiJzdHJpbmcifSwicG9saWN5SWQiOnsidHlwZSI6InN0cmluZyJ9fSwidHlwZSI6Im9iamVjdCJ9fSwidHlwZSI6Im9iamVjdCJ9fSwic2VydmVkIjp0cnVlLCJzdG9yYWdlIjp0cnVlLCJzdWJyZXNvdXJjZXMiOnsic3RhdHVzIjp7fX19XX19" + } + }, + { + "type": "olm.bundle.object", + "value": { + "data": "eyJhcGlWZXJzaW9uIjoib3BlcmF0b3JzLmNvcmVvcy5jb20vdjFhbHBoYTEiLCJraW5kIjoiQ2x1c3RlclNlcnZpY2VWZXJzaW9uIiwibWV0YWRhdGEiOnsiYW5ub3RhdGlvbnMiOnsiYWxtLWV4YW1wbGVzIjoiW1xuICB7XG4gICAgXCJhcGlWZXJzaW9uXCI6IFwicGxhdGZvcm0uc3RhY2tyb3guaW8vdjFhbHBoYTFcIixcbiAgICBcImtpbmRcIjogXCJDZW50cmFsXCIsXG4gICAgXCJtZXRhZGF0YVwiOiB7XG4gICAgICBcIm5hbWVcIjogXCJzdGFja3JveC1jZW50cmFsLXNlcnZpY2VzXCIsXG4gICAgICBcIm5hbWVzcGFjZVwiOiBcInN0YWNrcm94XCJcbiAgICB9LFxuICAgIFwic3BlY1wiOiB7XG4gICAgICBcImNlbnRyYWxcIjoge1xuICAgICAgICBcImV4cG9zdXJlXCI6IHtcbiAgICAgICAgICBcInJvdXRlXCI6IHtcbiAgICAgICAgICAgIFwiZW5hYmxlZFwiOiB0cnVlXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9LFxuICB7XG4gICAgXCJhcGlWZXJzaW9uXCI6IFwicGxhdGZvcm0uc3RhY2tyb3guaW8vdjFhbHBoYTFcIixcbiAgICBcImtpbmRcIjogXCJTZWN1cmVkQ2x1c3RlclwiLFxuICAgIFwibWV0YWRhdGFcIjoge1xuICAgICAgXCJuYW1lXCI6IFwic3RhY2tyb3gtc2VjdXJlZC1jbHVzdGVyLXNlcnZpY2VzXCIsXG4gICAgICBcIm5hbWVzcGFjZVwiOiBcInN0YWNrcm94XCJcbiAgICB9LFxuICAgIFwic3BlY1wiOiB7XG4gICAgICBcImNsdXN0ZXJOYW1lXCI6IFwibXktY2x1c3RlclwiXG4gICAgfVxuICB9XG5dIiwiY2FwYWJpbGl0aWVzIjoiU2VhbWxlc3MgVXBncmFkZXMiLCJjYXRlZ29yaWVzIjoiU2VjdXJpdHkiLCJjb250YWluZXJJbWFnZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLXJoZWw4LW9wZXJhdG9yQHNoYTI1NjplMTRkMTU5MzUyOGJkYTVkMzliZGJlMWJkZjgyY2E0MDQxMTU1MzIwODA4Y2JlMWRmYWFkZDE2OWYwYWE2ZWZjIiwiY3JlYXRlZEF0IjoiMjAyNi0wMy0yN1QxODoxODoyMS4wNzcyMTYrMDA6MDAiLCJkZXNjcmlwdGlvbiI6IlJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSAoUkhBQ1MpIG9wZXJhdG9yIHByb3Zpc2lvbnMgdGhlIHNlcnZpY2VzIG5lY2Vzc2FyeSB0byBzZWN1cmUgZWFjaCBvZiB5b3VyIE9wZW5TaGlmdCBhbmQgS3ViZXJuZXRlcyBjbHVzdGVycy4iLCJmZWF0dXJlcy5vcGVyYXRvcnMub3BlbnNoaWZ0LmlvL2NuZiI6ImZhbHNlIiwiZmVhdHVyZXMub3BlcmF0b3JzLm9wZW5zaGlmdC5pby9jbmkiOiJmYWxzZSIsImZlYXR1cmVzLm9wZXJhdG9ycy5vcGVuc2hpZnQuaW8vY3NpIjoiZmFsc2UiLCJmZWF0dXJlcy5vcGVyYXRvcnMub3BlbnNoaWZ0LmlvL2Rpc2Nvbm5lY3RlZCI6InRydWUiLCJmZWF0dXJlcy5vcGVyYXRvcnMub3BlbnNoaWZ0LmlvL2ZpcHMtY29tcGxpYW50IjoidHJ1ZSIsImZlYXR1cmVzLm9wZXJhdG9ycy5vcGVuc2hpZnQuaW8vcHJveHktYXdhcmUiOiJ0cnVlIiwiZmVhdHVyZXMub3BlcmF0b3JzLm9wZW5zaGlmdC5pby90bHMtcHJvZmlsZXMiOiJmYWxzZSIsImZlYXR1cmVzLm9wZXJhdG9ycy5vcGVuc2hpZnQuaW8vdG9rZW4tYXV0aC1hd3MiOiJmYWxzZSIsImZlYXR1cmVzLm9wZXJhdG9ycy5vcGVuc2hpZnQuaW8vdG9rZW4tYXV0aC1henVyZSI6ImZhbHNlIiwiZmVhdHVyZXMub3BlcmF0b3JzLm9wZW5zaGlmdC5pby90b2tlbi1hdXRoLWdjcCI6ImZhbHNlIiwib2xtLnNraXBSYW5nZSI6Ilx1MDAzZT0gNC44LjAgXHUwMDNjIDQuOS41LXJjLjIiLCJvcGVyYXRvcmZyYW1ld29yay5pby9zdWdnZXN0ZWQtbmFtZXNwYWNlIjoicmhhY3Mtb3BlcmF0b3IiLCJvcGVyYXRvcnMub3BlbnNoaWZ0LmlvL2luZnJhc3RydWN0dXJlLWZlYXR1cmVzIjoiW1wiZGlzY29ubmVjdGVkXCIsIFwicHJveHktYXdhcmVcIl0iLCJvcGVyYXRvcnMub3BlbnNoaWZ0LmlvL3ZhbGlkLXN1YnNjcmlwdGlvbiI6IltcIk9wZW5TaGlmdCBQbGF0Zm9ybSBQbHVzXCIsIFwiUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5XCJdIiwib3BlcmF0b3JzLm9wZXJhdG9yZnJhbWV3b3JrLmlvL2J1aWxkZXIiOiJvcGVyYXRvci1zZGstdW5rbm93biIsIm9wZXJhdG9ycy5vcGVyYXRvcmZyYW1ld29yay5pby9wcm9qZWN0X2xheW91dCI6ImdvLmt1YmVidWlsZGVyLmlvL3Y0Iiwic3VwcG9ydCI6IlJlZCBIYXQifSwibGFiZWxzIjp7Im9wZXJhdG9yZnJhbWV3b3JrLmlvL2FyY2guYW1kNjQiOiJzdXBwb3J0ZWQiLCJvcGVyYXRvcmZyYW1ld29yay5pby9hcmNoLmFybTY0Ijoic3VwcG9ydGVkIiwib3BlcmF0b3JmcmFtZXdvcmsuaW8vYXJjaC5wcGM2NGxlIjoic3VwcG9ydGVkIiwib3BlcmF0b3JmcmFtZXdvcmsuaW8vYXJjaC5zMzkweCI6InN1cHBvcnRlZCJ9LCJuYW1lIjoicmhhY3Mtb3BlcmF0b3IudjQuOS41LXJjLjIiLCJuYW1lc3BhY2UiOiJwbGFjZWhvbGRlciJ9LCJzcGVjIjp7ImFwaXNlcnZpY2VkZWZpbml0aW9ucyI6e30sImN1c3RvbXJlc291cmNlZGVmaW5pdGlvbnMiOnsib3duZWQiOlt7ImRlc2NyaXB0aW9uIjoiQ2VudHJhbCBpcyB0aGUgY29uZmlndXJhdGlvbiB0ZW1wbGF0ZSBmb3IgdGhlIGNlbnRyYWwgc2VydmljZXMuIFRoaXMgaW5jbHVkZXMgdGhlIEFQSSBzZXJ2ZXIsIHBlcnNpc3RlbnQgc3RvcmFnZSxcbmFuZCB0aGUgd2ViIFVJLCBhcyB3ZWxsIGFzIHRoZSBpbWFnZSBzY2FubmVyLiIsImRpc3BsYXlOYW1lIjoiQ2VudHJhbCIsImtpbmQiOiJDZW50cmFsIiwibmFtZSI6ImNlbnRyYWxzLnBsYXRmb3JtLnN0YWNrcm94LmlvIiwicmVzb3VyY2VzIjpbeyJraW5kIjoiRGVwbG95bWVudCIsIm5hbWUiOiIiLCJ2ZXJzaW9uIjoidjEifSx7ImtpbmQiOiJSb3V0ZSIsIm5hbWUiOiIiLCJ2ZXJzaW9uIjoidjEifSx7ImtpbmQiOiJTZWNyZXQiLCJuYW1lIjoiIiwidmVyc2lvbiI6InYxIn0seyJraW5kIjoiU2VydmljZSIsIm5hbWUiOiIiLCJ2ZXJzaW9uIjoidjEifV0sInNwZWNEZXNjcmlwdG9ycyI6W3siZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIENlbnRyYWwgY29tcG9uZW50LCB3aGljaCBpcyByZXNwb25zaWJsZSBmb3IgYWxsIHVzZXIgaW50ZXJhY3Rpb24uIiwiZGlzcGxheU5hbWUiOiJDZW50cmFsIENvbXBvbmVudCBTZXR0aW5ncyIsInBhdGgiOiJjZW50cmFsIn0seyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIGZvciB0aGUgU2Nhbm5lciBjb21wb25lbnQsIHdoaWNoIGlzIHJlc3BvbnNpYmxlIGZvciB2dWxuZXJhYmlsaXR5IHNjYW5uaW5nIG9mIGNvbnRhaW5lclxuaW1hZ2VzLiIsImRpc3BsYXlOYW1lIjoiU2Nhbm5lciBDb21wb25lbnQgU2V0dGluZ3MiLCJwYXRoIjoic2Nhbm5lciJ9LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIFNjYW5uZXIgVjQgY29tcG9uZW50LCB3aGljaCBjYW4gcnVuIGluIGFkZGl0aW9uIHRvIHRoZSBwcmV2aW91c2x5IGV4aXN0aW5nIFNjYW5uZXIgY29tcG9uZW50cyIsImRpc3BsYXlOYW1lIjoiU2Nhbm5lciBWNCBDb21wb25lbnQgU2V0dGluZ3MiLCJwYXRoIjoic2Nhbm5lclY0In0seyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHJlbGF0ZWQgdG8gb3V0Z29pbmcgbmV0d29yayB0cmFmZmljLiIsImRpc3BsYXlOYW1lIjoiRWdyZXNzIiwicGF0aCI6ImVncmVzcyJ9LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyByZWxhdGVkIHRvIFRyYW5zcG9ydCBMYXllciBTZWN1cml0eSwgc3VjaCBhcyBDZXJ0aWZpY2F0ZSBBdXRob3JpdGllcy4iLCJkaXNwbGF5TmFtZSI6IlRMUyIsInBhdGgiOiJ0bHMifSx7ImRlc2NyaXB0aW9uIjoiQWRkaXRpb25hbCBpbWFnZSBwdWxsIHNlY3JldHMgdG8gYmUgdGFrZW4gaW50byBhY2NvdW50IGZvciBwdWxsaW5nIGltYWdlcy4iLCJkaXNwbGF5TmFtZSI6IkltYWdlIFB1bGwgU2VjcmV0cyIsInBhdGgiOiJpbWFnZVB1bGxTZWNyZXRzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmFkdmFuY2VkIl19LHsiZGVzY3JpcHRpb24iOiJDdXN0b21pemF0aW9ucyB0byBhcHBseSBvbiBhbGwgQ2VudHJhbCBTZXJ2aWNlcyBjb21wb25lbnRzLiIsImRpc3BsYXlOYW1lIjoiQ3VzdG9taXphdGlvbnMiLCJwYXRoIjoiY3VzdG9taXplIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmFkdmFuY2VkIl19LHsiZGVzY3JpcHRpb24iOiJPdmVybGF5cyIsImRpc3BsYXlOYW1lIjoiT3ZlcmxheXMiLCJwYXRoIjoib3ZlcmxheXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6aGlkZGVuIl19LHsiZGVzY3JpcHRpb24iOiJNb25pdG9yaW5nIGNvbmZpZ3VyYXRpb24uIiwiZGlzcGxheU5hbWUiOiJNb25pdG9yaW5nIiwicGF0aCI6Im1vbml0b3JpbmciLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6YWR2YW5jZWQiXX0seyJkZXNjcmlwdGlvbiI6Ik5ldHdvcmsgY29uZmlndXJhdGlvbi4iLCJkaXNwbGF5TmFtZSI6Ik5ldHdvcmsiLCJwYXRoIjoibmV0d29yayIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTphZHZhbmNlZCJdfSx7ImRlc2NyaXB0aW9uIjoiQ29uZmlnLWFzLUNvZGUgY29uZmlndXJhdGlvbi4iLCJkaXNwbGF5TmFtZSI6IkNvbmZpZy1hcy1Db2RlIiwicGF0aCI6ImNvbmZpZ0FzQ29kZSIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTphZHZhbmNlZCJdfSx7ImRlc2NyaXB0aW9uIjoiRGVwcmVjYXRlZCBmaWVsZC4gVGhpcyBmaWVsZCB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS5cbk1pc2NlbGxhbmVvdXMgc2V0dGluZ3MuIiwiZGlzcGxheU5hbWUiOiJNaXNjZWxsYW5lb3VzIiwicGF0aCI6Im1pc2MiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6aGlkZGVuIl19LHsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IGEgc2VjcmV0IHRoYXQgY29udGFpbnMgdGhlIGFkbWluaXN0cmF0b3IgcGFzc3dvcmQgaW4gdGhlIFwicGFzc3dvcmRcIiBkYXRhIGl0ZW0uXG5JZiBvbWl0dGVkLCB0aGUgb3BlcmF0b3Igd2lsbCBhdXRvLWdlbmVyYXRlIGEgcGFzc3dvcmQgYW5kIHN0b3JlIGl0IGluIHRoZSBcInBhc3N3b3JkXCIgaXRlbVxuaW4gdGhlIFwiY2VudHJhbC1odHBhc3N3ZFwiIHNlY3JldC4iLCJkaXNwbGF5TmFtZSI6IkFkbWluaXN0cmF0b3IgUGFzc3dvcmQiLCJwYXRoIjoiY2VudHJhbC5hZG1pblBhc3N3b3JkU2VjcmV0In0seyJkZXNjcmlwdGlvbiI6IkhlcmUgeW91IGNhbiBjb25maWd1cmUgaWYgeW91IHdhbnQgdG8gZXhwb3NlIGNlbnRyYWwgdGhyb3VnaCBhIG5vZGUgcG9ydCwgYSBsb2FkIGJhbGFuY2VyLCBvciBhbiBPcGVuU2hpZnRcbnJvdXRlLiIsImRpc3BsYXlOYW1lIjoiRXhwb3N1cmUiLCJwYXRoIjoiY2VudHJhbC5leHBvc3VyZSJ9LHsiZGVzY3JpcHRpb24iOiJCeSBkZWZhdWx0LCBDZW50cmFsIHdpbGwgb25seSBzZXJ2ZSBhbiBpbnRlcm5hbCBUTFMgY2VydGlmaWNhdGUsIHdoaWNoIG1lYW5zIHRoYXQgeW91IHdpbGxcbm5lZWQgdG8gaGFuZGxlIFRMUyB0ZXJtaW5hdGlvbiBhdCB0aGUgaW5ncmVzcyBvciBsb2FkIGJhbGFuY2VyIGxldmVsLlxuSWYgeW91IHdhbnQgdG8gdGVybWluYXRlIFRMUyBpbiBDZW50cmFsIGFuZCBzZXJ2ZSBhIGN1c3RvbSBzZXJ2ZXIgY2VydGlmaWNhdGUsIHlvdSBjYW4gc3BlY2lmeVxuYSBzZWNyZXQgY29udGFpbmluZyB0aGUgY2VydGlmaWNhdGUgYW5kIHByaXZhdGUga2V5IGhlcmUuIiwiZGlzcGxheU5hbWUiOiJVc2VyLWZhY2luZyBUTFMgY2VydGlmaWNhdGUgc2VjcmV0IiwicGF0aCI6ImNlbnRyYWwuZGVmYXVsdFRMU1NlY3JldCJ9LHsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIG1vbml0b3JpbmcgZW5kcG9pbnQgZm9yIENlbnRyYWwuIFRoZSBtb25pdG9yaW5nIGVuZHBvaW50XG5hbGxvd3Mgb3RoZXIgc2VydmljZXMgdG8gY29sbGVjdCBtZXRyaWNzIGZyb20gQ2VudHJhbCwgcHJvdmlkZWQgaW5cblByb21ldGhldXMgY29tcGF0aWJsZSBmb3JtYXQuIiwiZGlzcGxheU5hbWUiOiJNb25pdG9yaW5nIiwicGF0aCI6ImNlbnRyYWwubW9uaXRvcmluZyJ9LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgQ2VudHJhbCBEQiwgd2hpY2ggaXMgcmVzcG9uc2libGUgZm9yIGRhdGEgcGVyc2lzdGVuY2UuIiwiZGlzcGxheU5hbWUiOiJDZW50cmFsIERCIFNldHRpbmdzIiwicGF0aCI6ImNlbnRyYWwuZGIifSx7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyB0ZWxlbWV0cnkgc2V0dGluZ3MgZm9yIENlbnRyYWwuIElmIGVuYWJsZWQsIENlbnRyYWwgdHJhbnNtaXRzIHRlbGVtZXRyeSBhbmQgZGlhZ25vc3RpY1xuZGF0YSB0byBhIHJlbW90ZSBzdG9yYWdlIGJhY2tlbmQuIiwiZGlzcGxheU5hbWUiOiJUZWxlbWV0cnkiLCJwYXRoIjoiY2VudHJhbC50ZWxlbWV0cnkiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6aGlkZGVuIl19LHsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIHJlc291cmNlcyB3aXRoaW4gQ2VudHJhbCBpbiBhIGRlY2xhcmF0aXZlIG1hbm5lci4iLCJkaXNwbGF5TmFtZSI6IkRlY2xhcmF0aXZlIENvbmZpZ3VyYXRpb24iLCJwYXRoIjoiY2VudHJhbC5kZWNsYXJhdGl2ZUNvbmZpZ3VyYXRpb24iLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6aGlkZGVuIl19LHsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIHRoZSBlbmNyeXB0aW9uIG9mIG5vdGlmaWVyIHNlY3JldHMgc3RvcmVkIGluIHRoZSBDZW50cmFsIERCLiIsImRpc3BsYXlOYW1lIjoiTm90aWZpZXIgU2VjcmV0cyBFbmNyeXB0aW9uIiwicGF0aCI6ImNlbnRyYWwubm90aWZpZXJTZWNyZXRzRW5jcnlwdGlvbiIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpoaWRkZW4iXX0seyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwiZGlzcGxheU5hbWUiOiJSZXNvdXJjZXMiLCJwYXRoIjoiY2VudHJhbC5yZXNvdXJjZXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6cmVzb3VyY2VSZXF1aXJlbWVudHMiXX0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJkaXNwbGF5TmFtZSI6Ik5vZGUgU2VsZWN0b3IiLCJwYXRoIjoiY2VudHJhbC5ub2RlU2VsZWN0b3IifSx7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiZGlzcGxheU5hbWUiOiJUb2xlcmF0aW9ucyIsInBhdGgiOiJjZW50cmFsLnRvbGVyYXRpb25zIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnRvbGVyYXRpb25zIl19LHsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJkaXNwbGF5TmFtZSI6Ikhvc3QgQWxpYXNlcyIsInBhdGgiOiJjZW50cmFsLmhvc3RBbGlhc2VzIn0seyJkZXNjcmlwdGlvbiI6IkRpc2FibGUgYWRtaW4gcGFzc3dvcmQgZ2VuZXJhdGlvbi4gRG8gbm90IHVzZSB0aGlzIGZvciBmaXJzdC10aW1lIGluc3RhbGxhdGlvbnMsXG5hcyB5b3Ugd2lsbCBoYXZlIG5vIHdheSB0byBwZXJmb3JtIGluaXRpYWwgc2V0dXAgYW5kIGNvbmZpZ3VyYXRpb24gb2YgYWx0ZXJuYXRpdmUgYXV0aGVudGljYXRpb24gbWV0aG9kcy4iLCJkaXNwbGF5TmFtZSI6IkFkbWluIFBhc3N3b3JkIEdlbmVyYXRpb24gRGlzYWJsZWQiLCJwYXRoIjoiY2VudHJhbC5hZG1pblBhc3N3b3JkR2VuZXJhdGlvbkRpc2FibGVkIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiVW51c2VkIGZpZWxkLiBUaGlzIGZpZWxkIGV4aXN0cyBzb2xlbHkgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgc3RhcnRpbmcgZnJvbSB2ZXJzaW9uIHY0LjYuMC4iLCJkaXNwbGF5TmFtZSI6IlBlcnNpc3RlbmNlIiwicGF0aCI6ImNlbnRyYWwucGVyc2lzdGVuY2UiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6aGlkZGVuIl19LHsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgcmVmZXJlbmNlZCBzZWNyZXQuIiwiZGlzcGxheU5hbWUiOiJOYW1lIiwicGF0aCI6ImNlbnRyYWwuYWRtaW5QYXNzd29yZFNlY3JldC5uYW1lIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6aW8ua3ViZXJuZXRlczpTZWNyZXQiXX0seyJkZXNjcmlwdGlvbiI6IlNwZWNpZnkgYSBzZWNyZXQgdGhhdCBjb250YWlucyB0aGUgcGFzc3dvcmQgaW4gdGhlIFwicGFzc3dvcmRcIiBkYXRhIGl0ZW0uIFRoaXMgY2FuIG9ubHkgYmUgdXNlZCB3aGVuXG5zcGVjaWZ5aW5nIGEgY29ubmVjdGlvbiBzdHJpbmcgbWFudWFsbHkuXG5XaGVuIG9taXR0ZWQsIHRoZSBvcGVyYXRvciB3aWxsIGF1dG8tZ2VuZXJhdGUgYSBEQiBwYXNzd29yZCBhbmQgc3RvcmUgaXQgaW4gdGhlIFwicGFzc3dvcmRcIiBpdGVtXG5pbiB0aGUgXCJjZW50cmFsLWRiLXBhc3N3b3JkXCIgc2VjcmV0LiIsImRpc3BsYXlOYW1lIjoiQWRtaW5pc3RyYXRvciBQYXNzd29yZCIsInBhdGgiOiJjZW50cmFsLmRiLnBhc3N3b3JkU2VjcmV0In0seyJkZXNjcmlwdGlvbiI6IlNwZWNpZnkgYSBjb25uZWN0aW9uIHN0cmluZyB0aGF0IGNvcnJlc3BvbmRzIHRvIGEgZGF0YWJhc2UgbWFuYWdlZCBlbHNld2hlcmUuIElmIHNldCwgdGhlIG9wZXJhdG9yIHdpbGwgbm90IG1hbmFnZSB0aGUgQ2VudHJhbCBEQi5cbldoZW4gdXNpbmcgdGhpcyBvcHRpb24sIHlvdSBtdXN0IGV4cGxpY2l0bHkgc2V0IGEgcGFzc3dvcmQgc2VjcmV0OyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRpbmcgYSBwYXNzd29yZCB3aWxsIG5vdFxuYmUgc3VwcG9ydGVkLiIsImRpc3BsYXlOYW1lIjoiQ29ubmVjdGlvbiBTdHJpbmciLCJwYXRoIjoiY2VudHJhbC5kYi5jb25uZWN0aW9uU3RyaW5nIn0seyJkZXNjcmlwdGlvbiI6IkNvbmZpZ3VyZXMgaG93IENlbnRyYWwgREIgc2hvdWxkIHN0b3JlIGl0cyBwZXJzaXN0ZW50IGRhdGEuIFlvdSBjYW4gY2hvb3NlIGJldHdlZW4gdXNpbmcgYSBwZXJzaXN0ZW50XG52b2x1bWUgY2xhaW0gKHJlY29tbWVuZGVkIGRlZmF1bHQpLCBhbmQgYSBob3N0IHBhdGguIiwiZGlzcGxheU5hbWUiOiJQZXJzaXN0ZW5jZSIsInBhdGgiOiJjZW50cmFsLmRiLnBlcnNpc3RlbmNlIn0seyJkZXNjcmlwdGlvbiI6IkNvbmZpZyBtYXAgY29udGFpbmluZyBwb3N0Z3Jlc3FsLmNvbmYgYW5kIHBnX2hiYS5jb25mIHRoYXQgd2lsbCBiZSB1c2VkIGlmIG1vZGlmaWNhdGlvbnMgbmVlZCB0byBiZSBhcHBsaWVkLiIsImRpc3BsYXlOYW1lIjoiQ29uZmlnIG1hcCB0aGF0IHdpbGwgb3ZlcnJpZGUgcG9zdGdyZXNxbC5jb25mIGFuZCBwZ19oYmEuY29uZiIsInBhdGgiOiJjZW50cmFsLmRiLmNvbmZpZ092ZXJyaWRlIn0seyJkZXNjcmlwdGlvbiI6IkNvbmZpZ3VyZXMgdGhlIGRhdGFiYXNlIGNvbm5lY3Rpb24gcG9vbCBzaXplLiIsImRpc3BsYXlOYW1lIjoiRGF0YWJhc2UgQ29ubmVjdGlvbiBQb29sIFNpemUgU2V0dGluZ3MiLCJwYXRoIjoiY2VudHJhbC5kYi5jb25uZWN0aW9uUG9vbFNpemUifSx7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJkaXNwbGF5TmFtZSI6IlJlc291cmNlcyIsInBhdGgiOiJjZW50cmFsLmRiLnJlc291cmNlcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpyZXNvdXJjZVJlcXVpcmVtZW50cyJdfSx7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIGEgbm9kZSBzZWxlY3RvciBoZXJlLiIsImRpc3BsYXlOYW1lIjoiTm9kZSBTZWxlY3RvciIsInBhdGgiOiJjZW50cmFsLmRiLm5vZGVTZWxlY3RvciJ9LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJkaXNwbGF5TmFtZSI6IlRvbGVyYXRpb25zIiwicGF0aCI6ImNlbnRyYWwuZGIudG9sZXJhdGlvbnMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6dG9sZXJhdGlvbnMiXX0seyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsImRpc3BsYXlOYW1lIjoiSG9zdCBBbGlhc2VzIiwicGF0aCI6ImNlbnRyYWwuZGIuaG9zdEFsaWFzZXMifSx7ImRlc2NyaXB0aW9uIjoiT2Jzb2xldGUgZmllbGQuXG5UaGlzIGZpZWxkIHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLiIsImRpc3BsYXlOYW1lIjoiSXMgRW5hYmxlZCIsInBhdGgiOiJjZW50cmFsLmRiLmlzRW5hYmxlZCIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpoaWRkZW4iXX0seyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSByZWZlcmVuY2VkIGNvbmZpZyBtYXAuIiwiZGlzcGxheU5hbWUiOiJOYW1lIiwicGF0aCI6ImNlbnRyYWwuZGIuY29uZmlnT3ZlcnJpZGUubmFtZSIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmlvLmt1YmVybmV0ZXM6Q29uZmlnTWFwIl19LHsiZGVzY3JpcHRpb24iOiJNYXhpbXVtIG51bWJlciBvZiBjb25uZWN0aW9ucyBpbiB0aGUgY29ubmVjdGlvbiBwb29sLlxuVGhlIGRlZmF1bHQgaXM6IDkwLiIsImRpc3BsYXlOYW1lIjoiTWF4aW11bSBDb25uZWN0aW9ucyIsInBhdGgiOiJjZW50cmFsLmRiLmNvbm5lY3Rpb25Qb29sU2l6ZS5tYXhDb25uZWN0aW9ucyJ9LHsiZGVzY3JpcHRpb24iOiJNaW5pbXVtIG51bWJlciBvZiBjb25uZWN0aW9ucyBpbiB0aGUgY29ubmVjdGlvbiBwb29sLlxuVGhlIGRlZmF1bHQgaXM6IDEwLiIsImRpc3BsYXlOYW1lIjoiTWluaW11bSBDb25uZWN0aW9ucyIsInBhdGgiOiJjZW50cmFsLmRiLmNvbm5lY3Rpb25Qb29sU2l6ZS5taW5Db25uZWN0aW9ucyJ9LHsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgcmVmZXJlbmNlZCBzZWNyZXQuIiwiZGlzcGxheU5hbWUiOiJOYW1lIiwicGF0aCI6ImNlbnRyYWwuZGIucGFzc3dvcmRTZWNyZXQubmFtZSIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmlvLmt1YmVybmV0ZXM6U2VjcmV0Il19LHsiZGVzY3JpcHRpb24iOiJVc2VzIGEgS3ViZXJuZXRlcyBwZXJzaXN0ZW50IHZvbHVtZSBjbGFpbSAoUFZDKSB0byBtYW5hZ2UgdGhlIHN0b3JhZ2UgbG9jYXRpb24gb2YgcGVyc2lzdGVudCBkYXRhLlxuUmVjb21tZW5kZWQgZm9yIG1vc3QgdXNlcnMuIiwiZGlzcGxheU5hbWUiOiJQZXJzaXN0ZW50IHZvbHVtZSBjbGFpbSIsInBhdGgiOiJjZW50cmFsLmRiLnBlcnNpc3RlbmNlLnBlcnNpc3RlbnRWb2x1bWVDbGFpbSJ9LHsiZGVzY3JpcHRpb24iOiJTdG9yZXMgcGVyc2lzdGVudCBkYXRhIG9uIGEgZGlyZWN0b3J5IG9uIHRoZSBob3N0LiBUaGlzIGlzIG5vdCByZWNvbW1lbmRlZCwgYW5kIHNob3VsZCBvbmx5XG5iZSB1c2VkIHRvZ2V0aGVyIHdpdGggYSBub2RlIHNlbGVjdG9yIChvbmx5IGF2YWlsYWJsZSBpbiBZQU1MIHZpZXcpLiIsImRpc3BsYXlOYW1lIjoiSG9zdCBwYXRoIiwicGF0aCI6ImNlbnRyYWwuZGIucGVyc2lzdGVuY2UuaG9zdFBhdGgifSx7ImRlc2NyaXB0aW9uIjoiVGhlIHBhdGggb24gdGhlIGhvc3QgcnVubmluZyBDZW50cmFsLiIsImRpc3BsYXlOYW1lIjoiUGF0aCIsInBhdGgiOiJjZW50cmFsLmRiLnBlcnNpc3RlbmNlLmhvc3RQYXRoLnBhdGgifSx7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIFBWQyB0byBtYW5hZ2UgcGVyc2lzdGVudCBkYXRhLiBJZiBubyBQVkMgd2l0aCB0aGUgZ2l2ZW4gbmFtZSBleGlzdHMsIGl0IHdpbGwgYmVcbmNyZWF0ZWQuXG5UaGUgZGVmYXVsdCBpczogY2VudHJhbC1kYi4iLCJkaXNwbGF5TmFtZSI6IkNsYWltIE5hbWUiLCJwYXRoIjoiY2VudHJhbC5kYi5wZXJzaXN0ZW5jZS5wZXJzaXN0ZW50Vm9sdW1lQ2xhaW0uY2xhaW1OYW1lIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBzaXplIG9mIHRoZSBwZXJzaXN0ZW50IHZvbHVtZSB3aGVuIGNyZWF0ZWQgdGhyb3VnaCB0aGUgY2xhaW0uIElmIGEgY2xhaW0gd2FzIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCxcbnRoaXMgY2FuIGJlIHVzZWQgYWZ0ZXIgdGhlIGluaXRpYWwgZGVwbG95bWVudCB0byByZXNpemUgKGdyb3cpIHRoZSB2b2x1bWUgKG9ubHkgc3VwcG9ydGVkIGJ5IHNvbWVcbnN0b3JhZ2UgY2xhc3MgY29udHJvbGxlcnMpLiIsImRpc3BsYXlOYW1lIjoiU2l6ZSIsInBhdGgiOiJjZW50cmFsLmRiLnBlcnNpc3RlbmNlLnBlcnNpc3RlbnRWb2x1bWVDbGFpbS5zaXplIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnRleHQiXX0seyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSBzdG9yYWdlIGNsYXNzIHRvIHVzZSBmb3IgdGhlIFBWQy4gSWYgeW91ciBjbHVzdGVyIGlzIG5vdCBjb25maWd1cmVkIHdpdGggYSBkZWZhdWx0IHN0b3JhZ2VcbmNsYXNzLCB5b3UgbXVzdCBzZWxlY3QgYSB2YWx1ZSBoZXJlLiIsImRpc3BsYXlOYW1lIjoiU3RvcmFnZSBDbGFzcyIsInBhdGgiOiJjZW50cmFsLmRiLnBlcnNpc3RlbmNlLnBlcnNpc3RlbnRWb2x1bWVDbGFpbS5zdG9yYWdlQ2xhc3NOYW1lIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6aW8ua3ViZXJuZXRlczpTdG9yYWdlQ2xhc3MiXX0seyJkZXNjcmlwdGlvbiI6Ikxpc3Qgb2YgY29uZmlnIG1hcHMgY29udGFpbmluZyBkZWNsYXJhdGl2ZSBjb25maWd1cmF0aW9uLiIsImRpc3BsYXlOYW1lIjoiQ29uZmlnIG1hcHMgY29udGFpbmluZyBkZWNsYXJhdGl2ZSBjb25maWd1cmF0aW9uIiwicGF0aCI6ImNlbnRyYWwuZGVjbGFyYXRpdmVDb25maWd1cmF0aW9uLmNvbmZpZ01hcHMifSx7ImRlc2NyaXB0aW9uIjoiTGlzdCBvZiBzZWNyZXRzIGNvbnRhaW5pbmcgZGVjbGFyYXRpdmUgY29uZmlndXJhdGlvbi4iLCJkaXNwbGF5TmFtZSI6IlNlY3JldHMgY29udGFpbmluZyBkZWNsYXJhdGl2ZSBjb25maWd1cmF0aW9uIiwicGF0aCI6ImNlbnRyYWwuZGVjbGFyYXRpdmVDb25maWd1cmF0aW9uLnNlY3JldHMifSx7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHJlZmVyZW5jZWQgY29uZmlnIG1hcC4iLCJkaXNwbGF5TmFtZSI6Ik5hbWUiLCJwYXRoIjoiY2VudHJhbC5kZWNsYXJhdGl2ZUNvbmZpZ3VyYXRpb24uY29uZmlnTWFwc1swXS5uYW1lIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6aW8ua3ViZXJuZXRlczpDb25maWdNYXAiXX0seyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSByZWZlcmVuY2VkIHNlY3JldC4iLCJkaXNwbGF5TmFtZSI6Ik5hbWUiLCJwYXRoIjoiY2VudHJhbC5kZWNsYXJhdGl2ZUNvbmZpZ3VyYXRpb24uc2VjcmV0c1swXS5uYW1lIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6aW8ua3ViZXJuZXRlczpTZWNyZXQiXX0seyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSByZWZlcmVuY2VkIHNlY3JldC4iLCJkaXNwbGF5TmFtZSI6Ik5hbWUiLCJwYXRoIjoiY2VudHJhbC5kZWZhdWx0VExTU2VjcmV0Lm5hbWUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjppby5rdWJlcm5ldGVzOlNlY3JldCJdfSx7ImRlc2NyaXB0aW9uIjoiRXhwb3NlIENlbnRyYWwgdGhyb3VnaCBhbiBPcGVuU2hpZnQgcm91dGUuIiwiZGlzcGxheU5hbWUiOiJSb3V0ZSIsInBhdGgiOiJjZW50cmFsLmV4cG9zdXJlLnJvdXRlIn0seyJkZXNjcmlwdGlvbiI6IkV4cG9zZSBDZW50cmFsIHRocm91Z2ggYSBsb2FkIGJhbGFuY2VyIHNlcnZpY2UuIiwiZGlzcGxheU5hbWUiOiJMb2FkIEJhbGFuY2VyIiwicGF0aCI6ImNlbnRyYWwuZXhwb3N1cmUubG9hZEJhbGFuY2VyIn0seyJkZXNjcmlwdGlvbiI6IkV4cG9zZSBDZW50cmFsIHRocm91Z2ggYSBub2RlIHBvcnQuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFBvcnQiLCJwYXRoIjoiY2VudHJhbC5leHBvc3VyZS5ub2RlUG9ydCJ9LHsiZGVzY3JpcHRpb24iOiJUaGUgZGVmYXVsdCBpczogZmFsc2UuIiwiZGlzcGxheU5hbWUiOiJFbmFibGVkIiwicGF0aCI6ImNlbnRyYWwuZXhwb3N1cmUubG9hZEJhbGFuY2VyLmVuYWJsZWQifSx7ImRlc2NyaXB0aW9uIjoiVGhlIGRlZmF1bHQgaXM6IDQ0My4iLCJkaXNwbGF5TmFtZSI6IlBvcnQiLCJwYXRoIjoiY2VudHJhbC5leHBvc3VyZS5sb2FkQmFsYW5jZXIucG9ydCIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6Y2VudHJhbC5leHBvc3VyZS5sb2FkQmFsYW5jZXIuZW5hYmxlZDp0cnVlIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3UgaGF2ZSBhIHN0YXRpYyBJUCBhZGRyZXNzIHJlc2VydmVkIGZvciB5b3VyIGxvYWQgYmFsYW5jZXIsIHlvdSBjYW4gZW50ZXIgaXQgaGVyZS4iLCJkaXNwbGF5TmFtZSI6IklQIiwicGF0aCI6ImNlbnRyYWwuZXhwb3N1cmUubG9hZEJhbGFuY2VyLmlwIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmZpZWxkRGVwZW5kZW5jeTpjZW50cmFsLmV4cG9zdXJlLmxvYWRCYWxhbmNlci5lbmFibGVkOnRydWUiXX0seyJkZXNjcmlwdGlvbiI6IlRoZSBkZWZhdWx0IGlzOiBmYWxzZS4iLCJkaXNwbGF5TmFtZSI6IkVuYWJsZWQiLCJwYXRoIjoiY2VudHJhbC5leHBvc3VyZS5ub2RlUG9ydC5lbmFibGVkIn0seyJkZXNjcmlwdGlvbiI6IlVzZSB0aGlzIHRvIHNwZWNpZnkgYW4gZXhwbGljaXQgbm9kZSBwb3J0LiBNb3N0IHVzZXJzIHNob3VsZCBsZWF2ZSB0aGlzIGVtcHR5LiIsImRpc3BsYXlOYW1lIjoiUG9ydCIsInBhdGgiOiJjZW50cmFsLmV4cG9zdXJlLm5vZGVQb3J0LnBvcnQiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6ZmllbGREZXBlbmRlbmN5OmNlbnRyYWwuZXhwb3N1cmUubm9kZVBvcnQuZW5hYmxlZDp0cnVlIl19LHsiZGVzY3JpcHRpb24iOiJFeHBvc2UgQ2VudHJhbCB3aXRoIGEgcGFzc3Rocm91Z2ggcm91dGUuXG5UaGUgZGVmYXVsdCBpczogZmFsc2UuIiwiZGlzcGxheU5hbWUiOiJFbmFibGVkIiwicGF0aCI6ImNlbnRyYWwuZXhwb3N1cmUucm91dGUuZW5hYmxlZCJ9LHsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IGEgY3VzdG9tIGhvc3RuYW1lIGZvciB0aGUgQ2VudHJhbCByb3V0ZS5cbklmIHVuc3BlY2lmaWVkLCBhbiBhcHByb3ByaWF0ZSBkZWZhdWx0IHZhbHVlIHdpbGwgYmUgYXV0b21hdGljYWxseSBjaG9zZW4gYnkgdGhlIE9wZW5TaGlmdCByb3V0ZSBvcGVyYXRvci4iLCJkaXNwbGF5TmFtZSI6Ikhvc3QiLCJwYXRoIjoiY2VudHJhbC5leHBvc3VyZS5yb3V0ZS5ob3N0In0seyJkZXNjcmlwdGlvbiI6IlNldCB1cCBhIENlbnRyYWwgcm91dGUgd2l0aCByZWVuY3J5cHQgVExTIHRlcm1pbmF0aW9uLlxuRm9yIHJlZW5jcnlwdCByb3V0ZXMsIHRoZSByZXF1ZXN0IGlzIHRlcm1pbmF0ZWQgb24gdGhlIE9wZW5TaGlmdCByb3V0ZXIgd2l0aCBhIGN1c3RvbSBjZXJ0aWZpY2F0ZS5cblRoZSByZXF1ZXN0IGlzIHRoZW4gcmVlbmNyeXB0ZWQgYnkgdGhlIE9wZW5TaGlmdCByb3V0ZXIgYW5kIHNlbnQgdG8gQ2VudHJhbC5cblt1c2VyXSAtLVRMUy0tXHUwMDNlIFtPcGVuU2hpZnQgcm91dGVyXSAtLVRMUy0tXHUwMDNlIFtDZW50cmFsXSIsImRpc3BsYXlOYW1lIjoiUmUtRW5jcnlwdCBSb3V0ZSIsInBhdGgiOiJjZW50cmFsLmV4cG9zdXJlLnJvdXRlLnJlZW5jcnlwdCJ9LHsiZGVzY3JpcHRpb24iOiJFeHBvc2UgQ2VudHJhbCB3aXRoIGEgcmVlbmNyeXB0IHJvdXRlLlxuU2hvdWxkIG5vdCBiZSB1c2VkIGZvciBzZW5zb3IgY29tbXVuaWNhdGlvbi5cblRoZSBkZWZhdWx0IGlzOiBmYWxzZS4iLCJkaXNwbGF5TmFtZSI6IkVuYWJsZWQiLCJwYXRoIjoiY2VudHJhbC5leHBvc3VyZS5yb3V0ZS5yZWVuY3J5cHQuZW5hYmxlZCJ9LHsiZGVzY3JpcHRpb24iOiJTcGVjaWZ5IGEgY3VzdG9tIGhvc3RuYW1lIGZvciB0aGUgQ2VudHJhbCByZWVuY3J5cHQgcm91dGUuXG5JZiB1bnNwZWNpZmllZCwgYW4gYXBwcm9wcmlhdGUgZGVmYXVsdCB2YWx1ZSB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgY2hvc2VuIGJ5IHRoZSBPcGVuU2hpZnQgcm91dGUgb3BlcmF0b3IuIiwiZGlzcGxheU5hbWUiOiJIb3N0IiwicGF0aCI6ImNlbnRyYWwuZXhwb3N1cmUucm91dGUucmVlbmNyeXB0Lmhvc3QifSx7ImRlc2NyaXB0aW9uIjoiVExTIHNldHRpbmdzIGZvciBleHBvc2luZyBDZW50cmFsIHZpYSBhIHJlZW5jcnlwdCBSb3V0ZS4iLCJkaXNwbGF5TmFtZSI6IlRMUyBTZXR0aW5ncyIsInBhdGgiOiJjZW50cmFsLmV4cG9zdXJlLnJvdXRlLnJlZW5jcnlwdC50bHMifSx7ImRlc2NyaXB0aW9uIjoiVGhlIFBFTSBlbmNvZGVkIGNlcnRpZmljYXRlIGNoYWluIHRoYXQgbWF5IGJlIHVzZWQgdG8gZXN0YWJsaXNoIGEgY29tcGxldGUgY2hhaW4gb2YgdHJ1c3QuXG5EZWZhdWx0cyB0byB0aGUgT3BlblNoaWZ0IGNlcnRpZmljYXRlIGF1dGhvcml0eS4iLCJkaXNwbGF5TmFtZSI6IkNBIENlcnRpZmljYXRlIiwicGF0aCI6ImNlbnRyYWwuZXhwb3N1cmUucm91dGUucmVlbmNyeXB0LnRscy5jYUNlcnRpZmljYXRlIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBQRU0gZW5jb2RlZCBjZXJ0aWZpY2F0ZSB0aGF0IGlzIHNlcnZlZCBvbiB0aGUgcm91dGUuIE11c3QgYmUgYSBzaW5nbGUgc2VydmluZ1xuY2VydGlmaWNhdGUgaW5zdGVhZCBvZiBhIGNlcnRpZmljYXRlIGNoYWluLlxuRGVmYXVsdHMgdG8gYSBjZXJ0aWZpY2F0ZSBzaWduZWQgYnkgdGhlIE9wZW5TaGlmdCBjZXJ0aWZpY2F0ZSBhdXRob3JpdHkuIiwiZGlzcGxheU5hbWUiOiJDZXJ0aWZpY2F0ZSIsInBhdGgiOiJjZW50cmFsLmV4cG9zdXJlLnJvdXRlLnJlZW5jcnlwdC50bHMuY2VydGlmaWNhdGUifSx7ImRlc2NyaXB0aW9uIjoiVGhlIENBIGNlcnRpZmljYXRlIG9mIHRoZSBmaW5hbCBkZXN0aW5hdGlvbiwgaS5lLiBvZiBDZW50cmFsLlxuVXNlZCBieSB0aGUgT3BlblNoaWZ0IHJvdXRlciBmb3IgaGVhbHRoIGNoZWNrcyBvbiB0aGUgc2VjdXJlIGNvbm5lY3Rpb24uXG5EZWZhdWx0cyB0byB0aGUgQ2VudHJhbCBjZXJ0aWZpY2F0ZSBhdXRob3JpdHkuIiwiZGlzcGxheU5hbWUiOiJEZXN0aW5hdGlvbiBDQSBDZXJ0aWZpY2F0ZSIsInBhdGgiOiJjZW50cmFsLmV4cG9zdXJlLnJvdXRlLnJlZW5jcnlwdC50bHMuZGVzdGluYXRpb25DQUNlcnRpZmljYXRlIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBQRU0gZW5jb2RlZCBwcml2YXRlIGtleSBvZiB0aGUgY2VydGlmaWNhdGUgdGhhdCBpcyBzZXJ2ZWQgb24gdGhlIHJvdXRlLlxuRGVmYXVsdHMgdG8gYSBjZXJ0aWZpY2F0ZSBzaWduZWQgYnkgdGhlIE9wZW5TaGlmdCBjZXJ0aWZpY2F0ZSBhdXRob3JpdHkuIiwiZGlzcGxheU5hbWUiOiJQcml2YXRlIEtleSIsInBhdGgiOiJjZW50cmFsLmV4cG9zdXJlLnJvdXRlLnJlZW5jcnlwdC50bHMua2V5In0seyJkZXNjcmlwdGlvbiI6IkV4cG9zZSB0aGUgbW9uaXRvcmluZyBlbmRwb2ludC4gQSBuZXcgc2VydmljZSwgXCJtb25pdG9yaW5nXCIsXG53aXRoIHBvcnQgOTA5MCwgd2lsbCBiZSBjcmVhdGVkIGFzIHdlbGwgYXMgYSBuZXR3b3JrIHBvbGljeSBhbGxvd2luZ1xuaW5ib3VuZCBjb25uZWN0aW9ucyB0byB0aGUgcG9ydC4iLCJkaXNwbGF5TmFtZSI6IkV4cG9zZSBFbmRwb2ludCIsInBhdGgiOiJjZW50cmFsLm1vbml0b3JpbmcuZXhwb3NlRW5kcG9pbnQifSx7ImRlc2NyaXB0aW9uIjoiRW5hYmxlcyB0aGUgZW5jcnlwdGlvbiBvZiBub3RpZmllciBzZWNyZXRzIHN0b3JlZCBpbiB0aGUgQ2VudHJhbCBEQi5cblRoZSBkZWZhdWx0IGlzOiBmYWxzZS4iLCJkaXNwbGF5TmFtZSI6IkVuYWJsZWQiLCJwYXRoIjoiY2VudHJhbC5ub3RpZmllclNlY3JldHNFbmNyeXB0aW9uLmVuYWJsZWQifSx7ImRlc2NyaXB0aW9uIjoiT2Jzb2xldGUgdW51c2VkIGZpZWxkLiIsImRpc3BsYXlOYW1lIjoiSG9zdCBQYXRoIiwicGF0aCI6ImNlbnRyYWwucGVyc2lzdGVuY2UuaG9zdFBhdGgiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6aGlkZGVuIl19LHsiZGVzY3JpcHRpb24iOiJPYnNvbGV0ZSB1bnVzZWQgZmllbGQuIiwiZGlzcGxheU5hbWUiOiJQZXJzaXN0ZW50IFZvbHVtZSBDbGFpbSIsInBhdGgiOiJjZW50cmFsLnBlcnNpc3RlbmNlLnBlcnNpc3RlbnRWb2x1bWVDbGFpbSIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpoaWRkZW4iXX0seyJkZXNjcmlwdGlvbiI6IlRoZSBwYXRoIG9uIHRoZSBob3N0IHJ1bm5pbmcgQ2VudHJhbC4iLCJkaXNwbGF5TmFtZSI6IlBhdGgiLCJwYXRoIjoiY2VudHJhbC5wZXJzaXN0ZW5jZS5ob3N0UGF0aC5wYXRoIn0seyJkZXNjcmlwdGlvbiI6Ik9ic29sZXRlIHVudXNlZCBmaWVsZC4iLCJkaXNwbGF5TmFtZSI6IkNsYWltIE5hbWUiLCJwYXRoIjoiY2VudHJhbC5wZXJzaXN0ZW5jZS5wZXJzaXN0ZW50Vm9sdW1lQ2xhaW0uY2xhaW1OYW1lIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiT2Jzb2xldGUgdW51c2VkIGZpZWxkLiIsImRpc3BsYXlOYW1lIjoiU2l6ZSIsInBhdGgiOiJjZW50cmFsLnBlcnNpc3RlbmNlLnBlcnNpc3RlbnRWb2x1bWVDbGFpbS5zaXplIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiT2Jzb2xldGUgdW51c2VkIGZpZWxkLiIsImRpc3BsYXlOYW1lIjoiU3RvcmFnZSBDbGFzcyBOYW1lIiwicGF0aCI6ImNlbnRyYWwucGVyc2lzdGVuY2UucGVyc2lzdGVudFZvbHVtZUNsYWltLnN0b3JhZ2VDbGFzc05hbWUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6aGlkZGVuIl19LHsiZGVzY3JpcHRpb24iOiJTcGVjaWZpZXMgaWYgVGVsZW1ldHJ5IGlzIGVuYWJsZWQuXG5UaGUgZGVmYXVsdCBpczogdHJ1ZS4iLCJkaXNwbGF5TmFtZSI6IkVuYWJsZWQiLCJwYXRoIjoiY2VudHJhbC50ZWxlbWV0cnkuZW5hYmxlZCIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpib29sZWFuU3dpdGNoIl19LHsiZGVzY3JpcHRpb24iOiJEZWZpbmVzIHRoZSB0ZWxlbWV0cnkgc3RvcmFnZSBiYWNrZW5kIGZvciBDZW50cmFsLiIsImRpc3BsYXlOYW1lIjoiU3RvcmFnZSIsInBhdGgiOiJjZW50cmFsLnRlbGVtZXRyeS5zdG9yYWdlIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmZpZWxkRGVwZW5kZW5jeTpjZW50cmFsLnRlbGVtZXRyeS5lbmFibGVkOnRydWUiXX0seyJkZXNjcmlwdGlvbiI6IlN0b3JhZ2UgQVBJIGVuZHBvaW50LiIsImRpc3BsYXlOYW1lIjoiRW5kcG9pbnQiLCJwYXRoIjoiY2VudHJhbC50ZWxlbWV0cnkuc3RvcmFnZS5lbmRwb2ludCJ9LHsiZGVzY3JpcHRpb24iOiJTdG9yYWdlIEFQSSBrZXkuIElmIG5vdCBzZXQsIHRlbGVtZXRyeSBpcyBkaXNhYmxlZC4iLCJkaXNwbGF5TmFtZSI6IktleSIsInBhdGgiOiJjZW50cmFsLnRlbGVtZXRyeS5zdG9yYWdlLmtleSJ9LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0byBkZXBsb3kgdGhlIENvbmZpZyBhcyBDb2RlIGNvbXBvbmVudCwgc2V0IHRoaXMgdG8gXCJFbmFibGVkXCJcblRoZSBkZWZhdWx0IGlzOiBFbmFibGVkLiIsImRpc3BsYXlOYW1lIjoiQ29uZmlnIGFzIENvZGUgY29tcG9uZW50IiwicGF0aCI6ImNvbmZpZ0FzQ29kZS5jb25maWdBc0NvZGVDb21wb25lbnQifSx7ImRlc2NyaXB0aW9uIjoiQ3VzdG9tIGxhYmVscyB0byBzZXQgb24gYWxsIG1hbmFnZWQgb2JqZWN0cy4iLCJkaXNwbGF5TmFtZSI6IkxhYmVscyIsInBhdGgiOiJjdXN0b21pemUubGFiZWxzIn0seyJkZXNjcmlwdGlvbiI6IkN1c3RvbSBhbm5vdGF0aW9ucyB0byBzZXQgb24gYWxsIG1hbmFnZWQgb2JqZWN0cy4iLCJkaXNwbGF5TmFtZSI6IkFubm90YXRpb25zIiwicGF0aCI6ImN1c3RvbWl6ZS5hbm5vdGF0aW9ucyJ9LHsiZGVzY3JpcHRpb24iOiJDdXN0b20gZW52aXJvbm1lbnQgdmFyaWFibGVzIHRvIHNldCBvbiBtYW5hZ2VkIHBvZHMnIGNvbnRhaW5lcnMuIiwiZGlzcGxheU5hbWUiOiJFbnZpcm9ubWVudCBWYXJpYWJsZXMiLCJwYXRoIjoiY3VzdG9taXplLmVudlZhcnMifSx7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyB3aGV0aGVyIFJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSBzaG91bGQgcnVuIGluIG9ubGluZSBvciBvZmZsaW5lIChkaXNjb25uZWN0ZWQpIG1vZGUuXG5JbiBvZmZsaW5lIG1vZGUsIGF1dG9tYXRpYyB1cGRhdGVzIG9mIHZ1bG5lcmFiaWxpdHkgZGVmaW5pdGlvbnMgYW5kIGtlcm5lbCBtb2R1bGVzIGFyZSBkaXNhYmxlZC5cblRoZSBkZWZhdWx0IGlzOiBPbmxpbmUuIiwiZGlzcGxheU5hbWUiOiJDb25uZWN0aXZpdHkgUG9saWN5IiwicGF0aCI6ImVncmVzcy5jb25uZWN0aXZpdHlQb2xpY3kifSx7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHJlZmVyZW5jZWQgc2VjcmV0LiIsImRpc3BsYXlOYW1lIjoiTmFtZSIsInBhdGgiOiJpbWFnZVB1bGxTZWNyZXRzWzBdLm5hbWUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjppby5rdWJlcm5ldGVzOlNlY3JldCJdfSx7ImRlc2NyaXB0aW9uIjoiRGVwcmVjYXRlZCBmaWVsZC4gVGhpcyBmaWVsZCB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS5cblNldCB0aGlzIHRvIHRydWUgdG8gaGF2ZSB0aGUgb3BlcmF0b3IgY3JlYXRlIFNlY3VyaXR5Q29udGV4dENvbnN0cmFpbnRzIChTQ0NzKSBmb3IgdGhlIG9wZXJhbmRzLiBUaGlzXG5pc24ndCB1c3VhbGx5IG5lZWRlZCwgYW5kIG1heSBpbnRlcmZlcmUgd2l0aCBvdGhlciB3b3JrbG9hZHMuIiwiZGlzcGxheU5hbWUiOiJDcmVhdGUgU2VjdXJpdHlDb250ZXh0Q29uc3RyYWludHMgZm9yIE9wZXJhbmQiLCJwYXRoIjoibWlzYy5jcmVhdGVTQ0NzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiVGhlIGRlZmF1bHQgaXM6IHRydWUuIiwiZGlzcGxheU5hbWUiOiJFbmFibGVkIiwicGF0aCI6Im1vbml0b3Jpbmcub3BlbnNoaWZ0LmVuYWJsZWQiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6Ym9vbGVhblN3aXRjaCJdfSx7ImRlc2NyaXB0aW9uIjoiVG8gcHJvdmlkZSBzZWN1cml0eSBhdCB0aGUgbmV0d29yayBsZXZlbCB0aGUgQUNTIE9wZXJhdG9yIGNyZWF0ZXMgTmV0d29ya1BvbGljeSByZXNvdXJjZXMgYnkgZGVmYXVsdC4gSWYgeW91IHdhbnQgdG8gbWFuYWdlIHlvdXIgb3duIE5ldHdvcmtQb2xpY3kgb2JqZWN0cyB0aGVuIHNldCB0aGlzIHRvIFwiRGlzYWJsZWRcIi5cblRoZSBkZWZhdWx0IGlzOiBFbmFibGVkLiIsImRpc3BsYXlOYW1lIjoiTmV0d29yayBQb2xpY2llcyIsInBhdGgiOiJuZXR3b3JrLnBvbGljaWVzIn0seyJkZXNjcmlwdGlvbiI6IlJlc291cmNlIEFQSSB2ZXJzaW9uLiIsImRpc3BsYXlOYW1lIjoiQVBJIFZlcnNpb24iLCJwYXRoIjoib3ZlcmxheXNbMF0uYXBpVmVyc2lvbiJ9LHsiZGVzY3JpcHRpb24iOiJSZXNvdXJjZSBraW5kLiIsImRpc3BsYXlOYW1lIjoiS2luZCIsInBhdGgiOiJvdmVybGF5c1swXS5raW5kIn0seyJkZXNjcmlwdGlvbiI6Ik5hbWUgb2YgcmVzb3VyY2UuIiwiZGlzcGxheU5hbWUiOiJOYW1lIiwicGF0aCI6Im92ZXJsYXlzWzBdLm5hbWUifSx7ImRlc2NyaXB0aW9uIjoiT3B0aW9uYWwgbWFya3MgdGhlIG92ZXJsYXkgYXMgb3B0aW9uYWwuXG5XaGVuIE9wdGlvbmFsIGlzIHRydWUsIGFuZCB0aGUgc3BlY2lmaWVkIHJlc291cmNlIGRvZXMgbm90IGV4aXN0IGluIHRoZSBvdXRwdXQgbWFuaWZlc3RzLCB0aGUgb3ZlcmxheSB3aWxsIGJlIHNraXBwZWQsIGFuZCBhIHdhcm5pbmcgd2lsbCBiZSBsb2dnZWQuXG5XaGVuIE9wdGlvbmFsIGlzIGZhbHNlLCBhbmQgdGhlIHNwZWNpZmllZCByZXNvdXJjZSBkb2VzIG5vdCBleGlzdCBpbiB0aGUgb3V0cHV0IG1hbmlmZXN0cywgYW4gZXJyb3Igd2lsbCBiZSB0aHJvd24uIiwiZGlzcGxheU5hbWUiOiJPcHRpb25hbCIsInBhdGgiOiJvdmVybGF5c1swXS5vcHRpb25hbCJ9LHsiZGVzY3JpcHRpb24iOiJMaXN0IG9mIHBhdGNoZXMgdG8gYXBwbHkgdG8gcmVzb3VyY2UuIiwiZGlzcGxheU5hbWUiOiJQYXRjaGVzIiwicGF0aCI6Im92ZXJsYXlzWzBdLnBhdGNoZXMifSx7ImRlc2NyaXB0aW9uIjoiUGF0aCBvZiB0aGUgZm9ybSBhLltrZXkxOnZhbHVlMV0uYi5bOnZhbHVlMl1cbldoZXJlIFtrZXkxOnZhbHVlMV0gaXMgYSBzZWxlY3RvciBmb3IgYSBrZXktdmFsdWUgcGFpciB0byBpZGVudGlmeSBhIGxpc3QgZWxlbWVudCBhbmQgWzp2YWx1ZV0gaXMgYSB2YWx1ZVxuc2VsZWN0b3IgdG8gaWRlbnRpZnkgYSBsaXN0IGVsZW1lbnQgaW4gYSBsZWFmIGxpc3QuXG5BbGwgcGF0aCBpbnRlcm1lZGlhdGUgbm9kZXMgbXVzdCBleGlzdC4iLCJkaXNwbGF5TmFtZSI6IlBhdGgiLCJwYXRoIjoib3ZlcmxheXNbMF0ucGF0Y2hlc1swXS5wYXRoIn0seyJkZXNjcmlwdGlvbiI6IlZhbHVlIHRvIGFkZCwgZGVsZXRlIG9yIHJlcGxhY2UuXG5Gb3IgYWRkLCB0aGUgcGF0aCBzaG91bGQgYmUgYSBuZXcgbGVhZi5cbkZvciBkZWxldGUsIHZhbHVlIHNob3VsZCBiZSB1bnNldC5cbkZvciByZXBsYWNlLCBwYXRoIHNob3VsZCByZWZlcmVuY2UgYW4gZXhpc3Rpbmcgbm9kZS5cbkFsbCB2YWx1ZXMgYXJlIHN0cmluZ3MgYnV0IGFyZSBjb252ZXJ0ZWQgaW50byBhcHByb3ByaWF0ZSB0eXBlIGJhc2VkIG9uIHNjaGVtYS4iLCJkaXNwbGF5TmFtZSI6IlZhbHVlIiwicGF0aCI6Im92ZXJsYXlzWzBdLnBhdGNoZXNbMF0udmFsdWUifSx7ImRlc2NyaXB0aW9uIjoiVmVyYmF0aW0gdmFsdWUgdG8gYWRkLCBkZWxldGUgb3IgcmVwbGFjZS5cblNhbWUgYXMgVmFsdWUsIGhvd2V2ZXIgdGhlIGNvbnRlbnQgaXMgbm90IGludGVycHJldGVkIGFzIFlBTUwsIGJ1dCB0cmVhdGVkIGFzIGxpdGVyYWwgc3RyaW5nIGluc3RlYWQuXG5BdCBsZWFzdCBvbmUgb2YgVmFsdWUgYW5kIFZlcmJhdGltIG11c3QgYmUgZW1wdHkuIiwiZGlzcGxheU5hbWUiOiJWZXJiYXRpbSIsInBhdGgiOiJvdmVybGF5c1swXS5wYXRjaGVzWzBdLnZlcmJhdGltIn0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSBkbyBub3Qgd2FudCB0byBkZXBsb3kgdGhlIFJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSBTY2FubmVyLCB5b3UgY2FuIGRpc2FibGUgaXQgaGVyZVxuKG5vdCByZWNvbW1lbmRlZCkuIEJ5IGRlZmF1bHQsIHRoZSBzY2FubmVyIGlzIGVuYWJsZWQuXG5JZiB5b3UgZG8gc28sIGFsbCB0aGUgc2V0dGluZ3MgaW4gdGhpcyBzZWN0aW9uIHdpbGwgaGF2ZSBubyBlZmZlY3QuIiwiZGlzcGxheU5hbWUiOiJTY2FubmVyIENvbXBvbmVudCIsInBhdGgiOiJzY2FubmVyLnNjYW5uZXJDb21wb25lbnQifSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcGVydGFpbmluZyB0byB0aGUgYW5hbHl6ZXIgZGVwbG95bWVudCwgc3VjaCBhcyBmb3IgYXV0b3NjYWxpbmcuIiwiZGlzcGxheU5hbWUiOiJBbmFseXplciIsInBhdGgiOiJzY2FubmVyLmFuYWx5emVyIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmZpZWxkRGVwZW5kZW5jeTpzY2FubmVyLnNjYW5uZXJDb21wb25lbnQ6RW5hYmxlZCJdfSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcGVydGFpbmluZyB0byB0aGUgZGF0YWJhc2UgdXNlZCBieSB0aGUgUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5IFNjYW5uZXIuIiwiZGlzcGxheU5hbWUiOiJEQiIsInBhdGgiOiJzY2FubmVyLmRiIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmZpZWxkRGVwZW5kZW5jeTpzY2FubmVyLnNjYW5uZXJDb21wb25lbnQ6RW5hYmxlZCJdfSx7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyBtb25pdG9yaW5nIGVuZHBvaW50IGZvciBTY2FubmVyLiBUaGUgbW9uaXRvcmluZyBlbmRwb2ludFxuYWxsb3dzIG90aGVyIHNlcnZpY2VzIHRvIGNvbGxlY3QgbWV0cmljcyBmcm9tIFNjYW5uZXIsIHByb3ZpZGVkIGluXG5Qcm9tZXRoZXVzIGNvbXBhdGlibGUgZm9ybWF0LiIsImRpc3BsYXlOYW1lIjoiTW9uaXRvcmluZyIsInBhdGgiOiJzY2FubmVyLm1vbml0b3JpbmcifSx7ImRlc2NyaXB0aW9uIjoiQ29udHJvbHMgdGhlIG51bWJlciBvZiBhbmFseXplciByZXBsaWNhcyBhbmQgYXV0b3NjYWxpbmcuIiwiZGlzcGxheU5hbWUiOiJTY2FsaW5nIiwicGF0aCI6InNjYW5uZXIuYW5hbHl6ZXIuc2NhbGluZyJ9LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6InNjYW5uZXIuYW5hbHl6ZXIucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNlbGVjdG9yIiwicGF0aCI6InNjYW5uZXIuYW5hbHl6ZXIubm9kZVNlbGVjdG9yIn0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsImRpc3BsYXlOYW1lIjoiVG9sZXJhdGlvbnMiLCJwYXRoIjoic2Nhbm5lci5hbmFseXplci50b2xlcmF0aW9ucyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0b2xlcmF0aW9ucyJdfSx7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiZGlzcGxheU5hbWUiOiJIb3N0IEFsaWFzZXMiLCJwYXRoIjoic2Nhbm5lci5hbmFseXplci5ob3N0QWxpYXNlcyJ9LHsiZGVzY3JpcHRpb24iOiJXaGVuIGVuYWJsZWQsIHRoZSBudW1iZXIgb2YgY29tcG9uZW50IHJlcGxpY2FzIGlzIG1hbmFnZWQgZHluYW1pY2FsbHkgYmFzZWQgb24gdGhlIGxvYWQsIHdpdGhpbiB0aGUgbGltaXRzXG5zcGVjaWZpZWQgYmVsb3cuXG5UaGUgZGVmYXVsdCBpczogRW5hYmxlZC4iLCJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIiwicGF0aCI6InNjYW5uZXIuYW5hbHl6ZXIuc2NhbGluZy5hdXRvU2NhbGluZyJ9LHsiZGVzY3JpcHRpb24iOiJXaGVuIGF1dG9zY2FsaW5nIGlzIGRpc2FibGVkLCB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIHdpbGwgYWx3YXlzIGJlIGNvbmZpZ3VyZWQgdG8gbWF0Y2ggdGhpcyB2YWx1ZS5cblRoZSBkZWZhdWx0IGlzOiAzLiIsImRpc3BsYXlOYW1lIjoiRGVmYXVsdCBSZXBsaWNhcyIsInBhdGgiOiJzY2FubmVyLmFuYWx5emVyLnNjYWxpbmcucmVwbGljYXMifSx7ImRlc2NyaXB0aW9uIjoiVGhlIGRlZmF1bHQgaXM6IDIuIiwiZGlzcGxheU5hbWUiOiJBdXRvc2NhbGluZyBNaW5pbXVtIFJlcGxpY2FzIiwicGF0aCI6InNjYW5uZXIuYW5hbHl6ZXIuc2NhbGluZy5taW5SZXBsaWNhcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lci5hbmFseXplci5zY2FsaW5nLmF1dG9TY2FsaW5nOkVuYWJsZWQiXX0seyJkZXNjcmlwdGlvbiI6IlRoZSBkZWZhdWx0IGlzOiA1LiIsImRpc3BsYXlOYW1lIjoiQXV0b3NjYWxpbmcgTWF4aW11bSBSZXBsaWNhcyIsInBhdGgiOiJzY2FubmVyLmFuYWx5emVyLnNjYWxpbmcubWF4UmVwbGljYXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6ZmllbGREZXBlbmRlbmN5OnNjYW5uZXIuYW5hbHl6ZXIuc2NhbGluZy5hdXRvU2NhbGluZzpFbmFibGVkIl19LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6InNjYW5uZXIuZGIucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNlbGVjdG9yIiwicGF0aCI6InNjYW5uZXIuZGIubm9kZVNlbGVjdG9yIn0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsImRpc3BsYXlOYW1lIjoiVG9sZXJhdGlvbnMiLCJwYXRoIjoic2Nhbm5lci5kYi50b2xlcmF0aW9ucyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0b2xlcmF0aW9ucyJdfSx7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiZGlzcGxheU5hbWUiOiJIb3N0IEFsaWFzZXMiLCJwYXRoIjoic2Nhbm5lci5kYi5ob3N0QWxpYXNlcyJ9LHsiZGVzY3JpcHRpb24iOiJFeHBvc2UgdGhlIG1vbml0b3JpbmcgZW5kcG9pbnQuIEEgbmV3IHNlcnZpY2UsIFwibW9uaXRvcmluZ1wiLFxud2l0aCBwb3J0IDkwOTAsIHdpbGwgYmUgY3JlYXRlZCBhcyB3ZWxsIGFzIGEgbmV0d29yayBwb2xpY3kgYWxsb3dpbmdcbmluYm91bmQgY29ubmVjdGlvbnMgdG8gdGhlIHBvcnQuIiwiZGlzcGxheU5hbWUiOiJFeHBvc2UgRW5kcG9pbnQiLCJwYXRoIjoic2Nhbm5lci5tb25pdG9yaW5nLmV4cG9zZUVuZHBvaW50In0seyJkZXNjcmlwdGlvbiI6IkNhbiBiZSBzcGVjaWZpZWQgYXMgXCJFbmFibGVkXCIgb3IgXCJEaXNhYmxlZFwiLlxuSWYgdGhpcyBmaWVsZCBpcyBub3Qgc3BlY2lmaWVkLCB0aGUgZm9sbG93aW5nIGRlZmF1bHRpbmcgdGFrZXMgcGxhY2U6XG4qIGZvciBuZXcgaW5zdGFsbGF0aW9ucywgU2Nhbm5lciBWNCBpcyBlbmFibGVkIHN0YXJ0aW5nIHdpdGggQUNTIDQuODtcbiogZm9yIHVwZ3JhZGVzIHRvIDQuOCBmcm9tIHByZXZpb3VzIHJlbGVhc2VzLCBTY2FubmVyIFY0IGlzIGRpc2FibGVkLiIsImRpc3BsYXlOYW1lIjoiU2Nhbm5lciBWNCBjb21wb25lbnQiLCJwYXRoIjoic2Nhbm5lclY0LnNjYW5uZXJDb21wb25lbnQifSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcGVydGFpbmluZyB0byB0aGUgaW5kZXhlciBkZXBsb3ltZW50LiIsImRpc3BsYXlOYW1lIjoiSW5kZXhlciIsInBhdGgiOiJzY2FubmVyVjQuaW5kZXhlciIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0LnNjYW5uZXJDb21wb25lbnQ6RW5hYmxlZCJdfSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcGVydGFpbmluZyB0byB0aGUgbWF0Y2hlciBkZXBsb3ltZW50LiIsImRpc3BsYXlOYW1lIjoiTWF0Y2hlciIsInBhdGgiOiJzY2FubmVyVjQubWF0Y2hlciIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0LnNjYW5uZXJDb21wb25lbnQ6RW5hYmxlZCJdfSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgcGVydGFpbmluZyB0byB0aGUgREIgZGVwbG95bWVudC4iLCJkaXNwbGF5TmFtZSI6IkRCIiwicGF0aCI6InNjYW5uZXJWNC5kYiIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0LnNjYW5uZXJDb21wb25lbnQ6RW5hYmxlZCJdfSx7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyBtb25pdG9yaW5nIGVuZHBvaW50IGZvciBTY2FubmVyIFY0LiBUaGUgbW9uaXRvcmluZyBlbmRwb2ludFxuYWxsb3dzIG90aGVyIHNlcnZpY2VzIHRvIGNvbGxlY3QgbWV0cmljcyBmcm9tIFNjYW5uZXIgVjQsIHByb3ZpZGVkIGluXG5Qcm9tZXRoZXVzIGNvbXBhdGlibGUgZm9ybWF0LiIsImRpc3BsYXlOYW1lIjoiTW9uaXRvcmluZyIsInBhdGgiOiJzY2FubmVyVjQubW9uaXRvcmluZyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0LnNjYW5uZXJDb21wb25lbnQ6RW5hYmxlZCJdfSx7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyBob3cgU2Nhbm5lciBWNCBzaG91bGQgc3RvcmUgaXRzIHBlcnNpc3RlbnQgZGF0YS5cbllvdSBjYW4gdXNlIGEgcGVyc2lzdGVudCB2b2x1bWUgY2xhaW0gKHRoZSByZWNvbW1lbmRlZCBkZWZhdWx0KSwgYSBob3N0IHBhdGgsXG5vciBhbiBlbXB0eURpciB2b2x1bWUgaWYgU2Nhbm5lciBWNCBpcyBydW5uaW5nIG9uIGEgc2VjdXJlZCBjbHVzdGVyIHdpdGhvdXQgZGVmYXVsdCBTdG9yYWdlQ2xhc3MuIiwiZGlzcGxheU5hbWUiOiJQZXJzaXN0ZW5jZSIsInBhdGgiOiJzY2FubmVyVjQuZGIucGVyc2lzdGVuY2UifSx7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJkaXNwbGF5TmFtZSI6IlJlc291cmNlcyIsInBhdGgiOiJzY2FubmVyVjQuZGIucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNlbGVjdG9yIiwicGF0aCI6InNjYW5uZXJWNC5kYi5ub2RlU2VsZWN0b3IifSx7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiZGlzcGxheU5hbWUiOiJUb2xlcmF0aW9ucyIsInBhdGgiOiJzY2FubmVyVjQuZGIudG9sZXJhdGlvbnMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6dG9sZXJhdGlvbnMiXX0seyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsImRpc3BsYXlOYW1lIjoiSG9zdCBBbGlhc2VzIiwicGF0aCI6InNjYW5uZXJWNC5kYi5ob3N0QWxpYXNlcyJ9LHsiZGVzY3JpcHRpb24iOiJVc2VzIGEgS3ViZXJuZXRlcyBwZXJzaXN0ZW50IHZvbHVtZSBjbGFpbSAoUFZDKSB0byBtYW5hZ2UgdGhlIHN0b3JhZ2UgbG9jYXRpb24gb2YgcGVyc2lzdGVudCBkYXRhLlxuUmVjb21tZW5kZWQgZm9yIG1vc3QgdXNlcnMuIiwiZGlzcGxheU5hbWUiOiJQZXJzaXN0ZW50IHZvbHVtZSBjbGFpbSIsInBhdGgiOiJzY2FubmVyVjQuZGIucGVyc2lzdGVuY2UucGVyc2lzdGVudFZvbHVtZUNsYWltIn0seyJkZXNjcmlwdGlvbiI6IlN0b3JlcyBwZXJzaXN0ZW50IGRhdGEgb24gYSBkaXJlY3Rvcnkgb24gdGhlIGhvc3QuIFRoaXMgaXMgbm90IHJlY29tbWVuZGVkLCBhbmQgc2hvdWxkIG9ubHlcbmJlIHVzZWQgdG9nZXRoZXIgd2l0aCBhIG5vZGUgc2VsZWN0b3IgKG9ubHkgYXZhaWxhYmxlIGluIFlBTUwgdmlldykuIiwiZGlzcGxheU5hbWUiOiJIb3N0IHBhdGgiLCJwYXRoIjoic2Nhbm5lclY0LmRiLnBlcnNpc3RlbmNlLmhvc3RQYXRoIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBwYXRoIG9uIHRoZSBob3N0IHJ1bm5pbmcgQ2VudHJhbC4iLCJkaXNwbGF5TmFtZSI6IlBhdGgiLCJwYXRoIjoic2Nhbm5lclY0LmRiLnBlcnNpc3RlbmNlLmhvc3RQYXRoLnBhdGgifSx7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIFBWQyB0byBtYW5hZ2UgcGVyc2lzdGVudCBkYXRhLiBJZiBubyBQVkMgd2l0aCB0aGUgZ2l2ZW4gbmFtZSBleGlzdHMsIGl0IHdpbGwgYmVcbmNyZWF0ZWQuXG5UaGUgZGVmYXVsdCBpczogc2Nhbm5lci12NC1kYi4iLCJkaXNwbGF5TmFtZSI6IkNsYWltIE5hbWUiLCJwYXRoIjoic2Nhbm5lclY0LmRiLnBlcnNpc3RlbmNlLnBlcnNpc3RlbnRWb2x1bWVDbGFpbS5jbGFpbU5hbWUifSx7ImRlc2NyaXB0aW9uIjoiVGhlIHNpemUgb2YgdGhlIHBlcnNpc3RlbnQgdm9sdW1lIHdoZW4gY3JlYXRlZCB0aHJvdWdoIHRoZSBjbGFpbS4gSWYgYSBjbGFpbSB3YXMgYXV0b21hdGljYWxseSBjcmVhdGVkLFxudGhpcyBjYW4gYmUgdXNlZCBhZnRlciB0aGUgaW5pdGlhbCBkZXBsb3ltZW50IHRvIHJlc2l6ZSAoZ3JvdykgdGhlIHZvbHVtZSAob25seSBzdXBwb3J0ZWQgYnkgc29tZVxuc3RvcmFnZSBjbGFzcyBjb250cm9sbGVycykuIiwiZGlzcGxheU5hbWUiOiJTaXplIiwicGF0aCI6InNjYW5uZXJWNC5kYi5wZXJzaXN0ZW5jZS5wZXJzaXN0ZW50Vm9sdW1lQ2xhaW0uc2l6ZSIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0ZXh0Il19LHsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgc3RvcmFnZSBjbGFzcyB0byB1c2UgZm9yIHRoZSBQVkMuIElmIHlvdXIgY2x1c3RlciBpcyBub3QgY29uZmlndXJlZCB3aXRoIGEgZGVmYXVsdCBzdG9yYWdlXG5jbGFzcywgeW91IG11c3Qgc2VsZWN0IGEgdmFsdWUgaGVyZS4iLCJkaXNwbGF5TmFtZSI6IlN0b3JhZ2UgQ2xhc3MiLCJwYXRoIjoic2Nhbm5lclY0LmRiLnBlcnNpc3RlbmNlLnBlcnNpc3RlbnRWb2x1bWVDbGFpbS5zdG9yYWdlQ2xhc3NOYW1lIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6aW8ua3ViZXJuZXRlczpTdG9yYWdlQ2xhc3MiXX0seyJkZXNjcmlwdGlvbiI6IkNvbnRyb2xzIHRoZSBudW1iZXIgb2YgcmVwbGljYXMgYW5kIGF1dG9zY2FsaW5nIGZvciB0aGlzIGNvbXBvbmVudC4iLCJkaXNwbGF5TmFtZSI6IlNjYWxpbmciLCJwYXRoIjoic2Nhbm5lclY0LmluZGV4ZXIuc2NhbGluZyJ9LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyLnJlc291cmNlcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpyZXNvdXJjZVJlcXVpcmVtZW50cyJdfSx7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIGEgbm9kZSBzZWxlY3RvciBoZXJlLiIsImRpc3BsYXlOYW1lIjoiTm9kZSBTZWxlY3RvciIsInBhdGgiOiJzY2FubmVyVjQuaW5kZXhlci5ub2RlU2VsZWN0b3IifSx7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiZGlzcGxheU5hbWUiOiJUb2xlcmF0aW9ucyIsInBhdGgiOiJzY2FubmVyVjQuaW5kZXhlci50b2xlcmF0aW9ucyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0b2xlcmF0aW9ucyJdfSx7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiZGlzcGxheU5hbWUiOiJIb3N0IEFsaWFzZXMiLCJwYXRoIjoic2Nhbm5lclY0LmluZGV4ZXIuaG9zdEFsaWFzZXMifSx7ImRlc2NyaXB0aW9uIjoiV2hlbiBlbmFibGVkLCB0aGUgbnVtYmVyIG9mIGNvbXBvbmVudCByZXBsaWNhcyBpcyBtYW5hZ2VkIGR5bmFtaWNhbGx5IGJhc2VkIG9uIHRoZSBsb2FkLCB3aXRoaW4gdGhlIGxpbWl0c1xuc3BlY2lmaWVkIGJlbG93LlxuVGhlIGRlZmF1bHQgaXM6IEVuYWJsZWQuIiwiZGlzcGxheU5hbWUiOiJBdXRvc2NhbGluZyIsInBhdGgiOiJzY2FubmVyVjQuaW5kZXhlci5zY2FsaW5nLmF1dG9TY2FsaW5nIn0seyJkZXNjcmlwdGlvbiI6IldoZW4gYXV0b3NjYWxpbmcgaXMgZGlzYWJsZWQsIHRoZSBudW1iZXIgb2YgcmVwbGljYXMgd2lsbCBhbHdheXMgYmUgY29uZmlndXJlZCB0byBtYXRjaCB0aGlzIHZhbHVlLlxuVGhlIGRlZmF1bHQgaXM6IDMuIiwiZGlzcGxheU5hbWUiOiJEZWZhdWx0IFJlcGxpY2FzIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyLnNjYWxpbmcucmVwbGljYXMifSx7ImRlc2NyaXB0aW9uIjoiVGhlIGRlZmF1bHQgaXM6IDIuIiwiZGlzcGxheU5hbWUiOiJBdXRvc2NhbGluZyBNaW5pbXVtIFJlcGxpY2FzIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyLnNjYWxpbmcubWluUmVwbGljYXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6ZmllbGREZXBlbmRlbmN5OnNjYW5uZXJWNC5pbmRleGVyLnNjYWxpbmcuYXV0b1NjYWxpbmc6RW5hYmxlZCJdfSx7ImRlc2NyaXB0aW9uIjoiVGhlIGRlZmF1bHQgaXM6IDUuIiwiZGlzcGxheU5hbWUiOiJBdXRvc2NhbGluZyBNYXhpbXVtIFJlcGxpY2FzIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyLnNjYWxpbmcubWF4UmVwbGljYXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6ZmllbGREZXBlbmRlbmN5OnNjYW5uZXJWNC5pbmRleGVyLnNjYWxpbmcuYXV0b1NjYWxpbmc6RW5hYmxlZCJdfSx7ImRlc2NyaXB0aW9uIjoiQ29udHJvbHMgdGhlIG51bWJlciBvZiByZXBsaWNhcyBhbmQgYXV0b3NjYWxpbmcgZm9yIHRoaXMgY29tcG9uZW50LiIsImRpc3BsYXlOYW1lIjoiU2NhbGluZyIsInBhdGgiOiJzY2FubmVyVjQubWF0Y2hlci5zY2FsaW5nIn0seyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwiZGlzcGxheU5hbWUiOiJSZXNvdXJjZXMiLCJwYXRoIjoic2Nhbm5lclY0Lm1hdGNoZXIucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNlbGVjdG9yIiwicGF0aCI6InNjYW5uZXJWNC5tYXRjaGVyLm5vZGVTZWxlY3RvciJ9LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJkaXNwbGF5TmFtZSI6IlRvbGVyYXRpb25zIiwicGF0aCI6InNjYW5uZXJWNC5tYXRjaGVyLnRvbGVyYXRpb25zIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnRvbGVyYXRpb25zIl19LHsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJkaXNwbGF5TmFtZSI6Ikhvc3QgQWxpYXNlcyIsInBhdGgiOiJzY2FubmVyVjQubWF0Y2hlci5ob3N0QWxpYXNlcyJ9LHsiZGVzY3JpcHRpb24iOiJXaGVuIGVuYWJsZWQsIHRoZSBudW1iZXIgb2YgY29tcG9uZW50IHJlcGxpY2FzIGlzIG1hbmFnZWQgZHluYW1pY2FsbHkgYmFzZWQgb24gdGhlIGxvYWQsIHdpdGhpbiB0aGUgbGltaXRzXG5zcGVjaWZpZWQgYmVsb3cuXG5UaGUgZGVmYXVsdCBpczogRW5hYmxlZC4iLCJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIiwicGF0aCI6InNjYW5uZXJWNC5tYXRjaGVyLnNjYWxpbmcuYXV0b1NjYWxpbmcifSx7ImRlc2NyaXB0aW9uIjoiV2hlbiBhdXRvc2NhbGluZyBpcyBkaXNhYmxlZCwgdGhlIG51bWJlciBvZiByZXBsaWNhcyB3aWxsIGFsd2F5cyBiZSBjb25maWd1cmVkIHRvIG1hdGNoIHRoaXMgdmFsdWUuXG5UaGUgZGVmYXVsdCBpczogMy4iLCJkaXNwbGF5TmFtZSI6IkRlZmF1bHQgUmVwbGljYXMiLCJwYXRoIjoic2Nhbm5lclY0Lm1hdGNoZXIuc2NhbGluZy5yZXBsaWNhcyJ9LHsiZGVzY3JpcHRpb24iOiJUaGUgZGVmYXVsdCBpczogMi4iLCJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIE1pbmltdW0gUmVwbGljYXMiLCJwYXRoIjoic2Nhbm5lclY0Lm1hdGNoZXIuc2NhbGluZy5taW5SZXBsaWNhcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0Lm1hdGNoZXIuc2NhbGluZy5hdXRvU2NhbGluZzpFbmFibGVkIl19LHsiZGVzY3JpcHRpb24iOiJUaGUgZGVmYXVsdCBpczogNS4iLCJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIE1heGltdW0gUmVwbGljYXMiLCJwYXRoIjoic2Nhbm5lclY0Lm1hdGNoZXIuc2NhbGluZy5tYXhSZXBsaWNhcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0Lm1hdGNoZXIuc2NhbGluZy5hdXRvU2NhbGluZzpFbmFibGVkIl19LHsiZGVzY3JpcHRpb24iOiJFeHBvc2UgdGhlIG1vbml0b3JpbmcgZW5kcG9pbnQuIEEgbmV3IHNlcnZpY2UsIFwibW9uaXRvcmluZ1wiLFxud2l0aCBwb3J0IDkwOTAsIHdpbGwgYmUgY3JlYXRlZCBhcyB3ZWxsIGFzIGEgbmV0d29yayBwb2xpY3kgYWxsb3dpbmdcbmluYm91bmQgY29ubmVjdGlvbnMgdG8gdGhlIHBvcnQuIiwiZGlzcGxheU5hbWUiOiJFeHBvc2UgRW5kcG9pbnQiLCJwYXRoIjoic2Nhbm5lclY0Lm1vbml0b3JpbmcuZXhwb3NlRW5kcG9pbnQifSx7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIHlvdSB0byBzcGVjaWZ5IGFkZGl0aW9uYWwgdHJ1c3RlZCBSb290IENBcy4iLCJkaXNwbGF5TmFtZSI6IkFkZGl0aW9uYWwgQ0FzIiwicGF0aCI6InRscy5hZGRpdGlvbmFsQ0FzIn1dLCJzdGF0dXNEZXNjcmlwdG9ycyI6W3siZGVzY3JpcHRpb24iOiJJbmZvIHN0b3JlcyBpbmZvcm1hdGlvbiBvbiBob3cgdG8gb2J0YWluIHRoZSBhZG1pbiBwYXNzd29yZC4iLCJkaXNwbGF5TmFtZSI6IkFkbWluIENyZWRlbnRpYWxzIEluZm8iLCJwYXRoIjoiY2VudHJhbC5hZG1pblBhc3N3b3JkLmluZm8ifSx7ImRlc2NyaXB0aW9uIjoiVGhlIGRlcGxveWVkIHZlcnNpb24gb2YgdGhlIHByb2R1Y3QuIiwiZGlzcGxheU5hbWUiOiJQcm9kdWN0IFZlcnNpb24iLCJwYXRoIjoicHJvZHVjdFZlcnNpb24ifSx7ImRpc3BsYXlOYW1lIjoiQ2VudHJhbCIsInBhdGgiOiJjZW50cmFsIn0seyJkZXNjcmlwdGlvbiI6IkFkbWluUGFzc3dvcmRTZWNyZXRSZWZlcmVuY2UgY29udGFpbnMgcmVmZXJlbmNlIGZvciB0aGUgYWRtaW4gcGFzc3dvcmQiLCJkaXNwbGF5TmFtZSI6IkFkbWluIFBhc3N3b3JkIFNlY3JldCBSZWZlcmVuY2UiLCJwYXRoIjoiY2VudHJhbC5hZG1pblBhc3N3b3JkLmFkbWluUGFzc3dvcmRTZWNyZXRSZWZlcmVuY2UiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjppby5rdWJlcm5ldGVzOlNlY3JldCJdfV0sInZlcnNpb24iOiJ2MWFscGhhMSJ9LHsiZGVzY3JpcHRpb24iOiJTZWN1cmVkQ2x1c3RlciBpcyB0aGUgY29uZmlndXJhdGlvbiB0ZW1wbGF0ZSBmb3IgdGhlIHNlY3VyZWQgY2x1c3RlciBzZXJ2aWNlcy4gVGhlc2UgaW5jbHVkZSBTZW5zb3IsIHdoaWNoIGlzXG5yZXNwb25zaWJsZSBmb3IgdGhlIGNvbm5lY3Rpb24gdG8gQ2VudHJhbCwgYW5kIENvbGxlY3Rvciwgd2hpY2ggcGVyZm9ybXMgaG9zdC1sZXZlbCBjb2xsZWN0aW9uIG9mIHByb2Nlc3MgYW5kXG5uZXR3b3JrIGV2ZW50cy5cdTAwM2NwXHUwMDNlXG4qKkltcG9ydGFudDoqKiBQbGVhc2Ugc2VlIHRoZSBfSW5zdGFsbGF0aW9uIFByZXJlcXVpc2l0ZXNfIG9uIHRoZSBtYWluIFJIQUNTIG9wZXJhdG9yIHBhZ2UgYmVmb3JlIGRlcGxveWluZywgb3JcbmNvbnN1bHQgdGhlIFJIQUNTIGRvY3VtZW50YXRpb24gb24gY3JlYXRpbmcgY2x1c3RlciBpbml0IGJ1bmRsZXMuIiwiZGlzcGxheU5hbWUiOiJTZWN1cmVkIENsdXN0ZXIiLCJraW5kIjoiU2VjdXJlZENsdXN0ZXIiLCJuYW1lIjoic2VjdXJlZGNsdXN0ZXJzLnBsYXRmb3JtLnN0YWNrcm94LmlvIiwicmVzb3VyY2VzIjpbeyJraW5kIjoiRGFlbW9uU2V0IiwibmFtZSI6IiIsInZlcnNpb24iOiJ2MSJ9LHsia2luZCI6IkRlcGxveW1lbnQiLCJuYW1lIjoiIiwidmVyc2lvbiI6InYxIn1dLCJzcGVjRGVzY3JpcHRvcnMiOlt7ImRlc2NyaXB0aW9uIjoiVGhlIHVuaXF1ZSBuYW1lIG9mIHRoaXMgY2x1c3RlciwgYXMgaXQgd2lsbCBiZSBzaG93biBpbiB0aGUgUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5IFVJLlxuTm90ZTogT25jZSBhIG5hbWUgaXMgc2V0IGhlcmUsIHlvdSB3aWxsIG5vdCBiZSBhYmxlIHRvIGNoYW5nZSBpdCBhZ2Fpbi4gWW91IHdpbGwgbmVlZCB0byBkZWxldGVcbmFuZCByZS1jcmVhdGUgdGhpcyBvYmplY3QgaW4gb3JkZXIgdG8gcmVnaXN0ZXIgYSBjbHVzdGVyIHdpdGggYSBuZXcgbmFtZS4iLCJkaXNwbGF5TmFtZSI6IkNsdXN0ZXIgTmFtZSIsInBhdGgiOiJjbHVzdGVyTmFtZSJ9LHsiZGVzY3JpcHRpb24iOiJUaGUgZW5kcG9pbnQgb2YgdGhlIFJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSBDZW50cmFsIGluc3RhbmNlIHRvIGNvbm5lY3QgdG8sXG5pbmNsdWRpbmcgdGhlIHBvcnQgbnVtYmVyLiBJZiBubyBwb3J0IGlzIHNwZWNpZmllZCBhbmQgdGhlIGVuZHBvaW50IGNvbnRhaW5zIGFuIGh0dHBzOi8vXG5wcm90b2NvbCBzcGVjaWZpY2F0aW9uLCB0aGVuIHRoZSBwb3J0IDQ0MyBpcyBpbXBsaWNpdGx5IGFzc3VtZWQuXG5JZiB1c2luZyBhIG5vbi1nUlBDIGNhcGFibGUgbG9hZCBiYWxhbmNlciwgdXNlIHRoZSBXZWJTb2NrZXQgcHJvdG9jb2wgYnkgcHJlZml4aW5nIHRoZSBlbmRwb2ludFxuYWRkcmVzcyB3aXRoIHdzczovLy5cbk5vdGU6IHdoZW4gbGVhdmluZyB0aGlzIGJsYW5rLCBTZW5zb3Igd2lsbCBhdHRlbXB0IHRvIGNvbm5lY3QgdG8gYSBDZW50cmFsIGluc3RhbmNlIHJ1bm5pbmcgaW4gdGhlIHNhbWVcbm5hbWVzcGFjZS4iLCJkaXNwbGF5TmFtZSI6IkNlbnRyYWwgRW5kcG9pbnQiLCJwYXRoIjoiY2VudHJhbEVuZHBvaW50In0seyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIGZvciB0aGUgU2Vuc29yIGNvbXBvbmVudC4iLCJkaXNwbGF5TmFtZSI6IlNlbnNvciBTZXR0aW5ncyIsInBhdGgiOiJzZW5zb3IifSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBBZG1pc3Npb24gQ29udHJvbCBjb21wb25lbnQsIHdoaWNoIGlzIG5lY2Vzc2FyeSBmb3IgcHJldmVudGl2ZSBwb2xpY3kgZW5mb3JjZW1lbnQsXG5hbmQgZm9yIEt1YmVybmV0ZXMgZXZlbnQgbW9uaXRvcmluZy4iLCJkaXNwbGF5TmFtZSI6IkFkbWlzc2lvbiBDb250cm9sIFNldHRpbmdzIiwicGF0aCI6ImFkbWlzc2lvbkNvbnRyb2wifSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBjb21wb25lbnRzIHJ1bm5pbmcgb24gZWFjaCBub2RlIGluIHRoZSBjbHVzdGVyIChDb2xsZWN0b3IgYW5kIENvbXBsaWFuY2UpLiIsImRpc3BsYXlOYW1lIjoiUGVyIE5vZGUgU2V0dGluZ3MiLCJwYXRoIjoicGVyTm9kZSJ9LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyByZWxhdGluZyB0byB0aGUgaW5nZXN0aW9uIG9mIEt1YmVybmV0ZXMgYXVkaXQgbG9ncy4iLCJkaXNwbGF5TmFtZSI6Ikt1YmVybmV0ZXMgQXVkaXQgTG9ncyBJbmdlc3Rpb24gU2V0dGluZ3MiLCJwYXRoIjoiYXVkaXRMb2dzIn0seyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHJlbGF0aW5nIHRvIHByb2Nlc3MgYmFzZWxpbmVzLiIsImRpc3BsYXlOYW1lIjoiUHJvY2VzcyBCYXNlbGluZXMgU2V0dGluZ3MiLCJwYXRoIjoicHJvY2Vzc0Jhc2VsaW5lcyJ9LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIFNjYW5uZXIgY29tcG9uZW50LCB3aGljaCBpcyByZXNwb25zaWJsZSBmb3IgdnVsbmVyYWJpbGl0eSBzY2FubmluZyBvZiBjb250YWluZXJcbmltYWdlcyBzdG9yZWQgaW4gYSBjbHVzdGVyLWxvY2FsIGltYWdlIHJlcG9zaXRvcnkuIiwiZGlzcGxheU5hbWUiOiJTY2FubmVyIENvbXBvbmVudCBTZXR0aW5ncyIsInBhdGgiOiJzY2FubmVyIn0seyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIGZvciB0aGUgU2Nhbm5lciBWNCBjb21wb25lbnRzLCB3aGljaCBjYW4gcnVuIGluIGFkZGl0aW9uIHRvIHRoZSBwcmV2aW91c2x5IGV4aXN0aW5nIFNjYW5uZXIgY29tcG9uZW50cyIsImRpc3BsYXlOYW1lIjoiU2Nhbm5lciBWNCBDb21wb25lbnQgU2V0dGluZ3MiLCJwYXRoIjoic2Nhbm5lclY0In0seyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHJlbGF0ZWQgdG8gVHJhbnNwb3J0IExheWVyIFNlY3VyaXR5LCBzdWNoIGFzIENlcnRpZmljYXRlIEF1dGhvcml0aWVzLiIsImRpc3BsYXlOYW1lIjoiVExTIiwicGF0aCI6InRscyJ9LHsiZGVzY3JpcHRpb24iOiJBZGRpdGlvbmFsIGltYWdlIHB1bGwgc2VjcmV0cyB0byBiZSB0YWtlbiBpbnRvIGFjY291bnQgZm9yIHB1bGxpbmcgaW1hZ2VzLiIsImRpc3BsYXlOYW1lIjoiSW1hZ2UgUHVsbCBTZWNyZXRzIiwicGF0aCI6ImltYWdlUHVsbFNlY3JldHMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6YWR2YW5jZWQiXX0seyJkZXNjcmlwdGlvbiI6IkN1c3RvbWl6YXRpb25zIHRvIGFwcGx5IG9uIGFsbCBDZW50cmFsIFNlcnZpY2VzIGNvbXBvbmVudHMuIiwiZGlzcGxheU5hbWUiOiJDdXN0b21pemF0aW9ucyIsInBhdGgiOiJjdXN0b21pemUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6YWR2YW5jZWQiXX0seyJkZXNjcmlwdGlvbiI6Ik92ZXJsYXlzIiwiZGlzcGxheU5hbWUiOiJPdmVybGF5cyIsInBhdGgiOiJvdmVybGF5cyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpoaWRkZW4iXX0seyJkZXNjcmlwdGlvbiI6Ik1vbml0b3JpbmcgY29uZmlndXJhdGlvbi4iLCJkaXNwbGF5TmFtZSI6Ik1vbml0b3JpbmciLCJwYXRoIjoibW9uaXRvcmluZyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTphZHZhbmNlZCJdfSx7ImRlc2NyaXB0aW9uIjoiU2V0IHRoaXMgcGFyYW1ldGVyIHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IHJlZ2lzdHJ5IGluIGltYWdlcy4gRm9yIGV4YW1wbGUsIG5naW54OmxhdGVzdCAtXHUwMDNlIFx1MDAzY3JlZ2lzdHJ5IG92ZXJyaWRlXHUwMDNlL2xpYnJhcnkvbmdpbng6bGF0ZXN0IiwiZGlzcGxheU5hbWUiOiJDdXN0b20gRGVmYXVsdCBJbWFnZSBSZWdpc3RyeSIsInBhdGgiOiJyZWdpc3RyeU92ZXJyaWRlIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmFkdmFuY2VkIl19LHsiZGVzY3JpcHRpb24iOiJOZXR3b3JrIGNvbmZpZ3VyYXRpb24uIiwiZGlzcGxheU5hbWUiOiJOZXR3b3JrIiwicGF0aCI6Im5ldHdvcmsiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6YWR2YW5jZWQiXX0seyJkZXNjcmlwdGlvbiI6IkRlcHJlY2F0ZWQgZmllbGQuIFRoaXMgZmllbGQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHJlbGVhc2UuXG5NaXNjZWxsYW5lb3VzIHNldHRpbmdzLiIsImRpc3BsYXlOYW1lIjoiTWlzY2VsbGFuZW91cyIsInBhdGgiOiJtaXNjIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiU2V0IHRvIERpc2FibGVkIHRvIGRpc2FibGUgcG9saWN5IGVuZm9yY2VtZW50IGZvciB0aGUgYWRtaXNzaW9uIGNvbnRyb2xsZXIuIFRoaXMgaXMgbm90IHJlY29tbWVuZGVkLlxuT24gbmV3IGRlcGxveW1lbnRzIHN0YXJ0aW5nIHdpdGggdmVyc2lvbiA0LjksIGRlZmF1bHRzIHRvIEVuYWJsZWQuXG5PbiBvbGQgZGVwbG95bWVudHMsIGRlZmF1bHRzIHRvIEVuYWJsZWQgaWYgYXQgbGVhc3Qgb25lIG9mIGxpc3Rlbk9uQ3JlYXRlcyBvciBsaXN0ZW5PblVwZGF0ZXMgaXMgdHJ1ZS4iLCJkaXNwbGF5TmFtZSI6IkVuZm9yY2VtZW50IiwicGF0aCI6ImFkbWlzc2lvbkNvbnRyb2wuZW5mb3JjZW1lbnQifSx7ImRlc2NyaXB0aW9uIjoiRW5hYmxlcyB0ZWFtcyB0byBieXBhc3MgYWRtaXNzaW9uIGNvbnRyb2wgaW4gYSBtb25pdG9yZWQgbWFubmVyIGluIHRoZSBldmVudCBvZiBhbiBlbWVyZ2VuY3kuXG5UaGUgZGVmYXVsdCBpczogQnJlYWtHbGFzc0Fubm90YXRpb24uIiwiZGlzcGxheU5hbWUiOiJCeXBhc3MiLCJwYXRoIjoiYWRtaXNzaW9uQ29udHJvbC5ieXBhc3MifSx7ImRlc2NyaXB0aW9uIjoiSWYgc2V0IHRvIFwiRmFpbFwiLCB0aGUgYWRtaXNzaW9uIGNvbnRyb2xsZXIncyB3ZWJob29rcyBhcmUgY29uZmlndXJlZCB0byBmYWlsLWNsb3NlZCBpbiBjYXNlIGFkbWlzc2lvbiBjb250cm9sbGVyXG5mYWlscyB0byByZXNwb25kIGluIHRpbWUuIEEgZmFpbHVyZSBwb2xpY3kgXCJJZ25vcmVcIiBjb25maWd1cmVzIHRoZSB3ZWJob29rcyB0byBmYWlsLW9wZW4uXG5UaGUgZGVmYXVsdCBpczogSWdub3JlLiIsImRpc3BsYXlOYW1lIjoiRmFpbHVyZSBQb2xpY3kiLCJwYXRoIjoiYWRtaXNzaW9uQ29udHJvbC5mYWlsdXJlUG9saWN5In0seyJkZXNjcmlwdGlvbiI6IlRoZSBudW1iZXIgb2YgcmVwbGljYXMgb2YgdGhlIGFkbWlzc2lvbiBjb250cm9sIHBvZC5cblRoZSBkZWZhdWx0IGlzOiAzLiIsImRpc3BsYXlOYW1lIjoiUmVwbGljYXMiLCJwYXRoIjoiYWRtaXNzaW9uQ29udHJvbC5yZXBsaWNhcyJ9LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6ImFkbWlzc2lvbkNvbnRyb2wucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNlbGVjdG9yIiwicGF0aCI6ImFkbWlzc2lvbkNvbnRyb2wubm9kZVNlbGVjdG9yIn0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsImRpc3BsYXlOYW1lIjoiVG9sZXJhdGlvbnMiLCJwYXRoIjoiYWRtaXNzaW9uQ29udHJvbC50b2xlcmF0aW9ucyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0b2xlcmF0aW9ucyJdfSx7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiZGlzcGxheU5hbWUiOiJIb3N0IEFsaWFzZXMiLCJwYXRoIjoiYWRtaXNzaW9uQ29udHJvbC5ob3N0QWxpYXNlcyJ9LHsiZGVzY3JpcHRpb24iOiJEZXByZWNhdGVkIGZpZWxkLiBUaGlzIGZpZWxkIHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLiIsImRpc3BsYXlOYW1lIjoiQ29udGFjdCBJbWFnZSBTY2FubmVycyIsInBhdGgiOiJhZG1pc3Npb25Db250cm9sLmNvbnRhY3RJbWFnZVNjYW5uZXJzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiRGVwcmVjYXRlZCBmaWVsZC4gVGhpcyBmaWVsZCB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS4iLCJkaXNwbGF5TmFtZSI6Ikxpc3RlbiBPbiBDcmVhdGVzIiwicGF0aCI6ImFkbWlzc2lvbkNvbnRyb2wubGlzdGVuT25DcmVhdGVzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiRGVwcmVjYXRlZCBmaWVsZC4gVGhpcyBmaWVsZCB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS4iLCJkaXNwbGF5TmFtZSI6Ikxpc3RlbiBPbiBFdmVudHMiLCJwYXRoIjoiYWRtaXNzaW9uQ29udHJvbC5saXN0ZW5PbkV2ZW50cyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpoaWRkZW4iXX0seyJkZXNjcmlwdGlvbiI6IkRlcHJlY2F0ZWQgZmllbGQuIFRoaXMgZmllbGQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHJlbGVhc2UuIiwiZGlzcGxheU5hbWUiOiJMaXN0ZW4gT24gVXBkYXRlcyIsInBhdGgiOiJhZG1pc3Npb25Db250cm9sLmxpc3Rlbk9uVXBkYXRlcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpoaWRkZW4iXX0seyJkZXNjcmlwdGlvbiI6IkRlcHJlY2F0ZWQgZmllbGQuIFRoaXMgZmllbGQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHJlbGVhc2UuIiwiZGlzcGxheU5hbWUiOiJUaW1lb3V0IFNlY29uZHMiLCJwYXRoIjoiYWRtaXNzaW9uQ29udHJvbC50aW1lb3V0U2Vjb25kcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpoaWRkZW4iXX0seyJkZXNjcmlwdGlvbiI6IldoZXRoZXIgY29sbGVjdGlvbiBvZiBLdWJlcm5ldGVzIGF1ZGl0IGxvZ3Mgc2hvdWxkIGJlIGVuYWJsZWQgb3IgZGlzYWJsZWQuIEN1cnJlbnRseSwgdGhpcyBpcyBvbmx5XG5zdXBwb3J0ZWQgb24gT3BlblNoaWZ0IDQsIGFuZCB0cnlpbmcgdG8gZW5hYmxlIGl0IG9uIG5vbi1PcGVuU2hpZnQgNCBjbHVzdGVycyB3aWxsIHJlc3VsdCBpbiBhbiBlcnJvci5cblVzZSB0aGUgJ0F1dG8nIHNldHRpbmcgdG8gZW5hYmxlIGl0IG9uIGNvbXBhdGlibGUgZW52aXJvbm1lbnRzLCBhbmQgZGlzYWJsZSBpdCBlbHNld2hlcmUuXG5UaGUgZGVmYXVsdCBpczogQXV0by4iLCJkaXNwbGF5TmFtZSI6IkNvbGxlY3Rpb24iLCJwYXRoIjoiYXVkaXRMb2dzLmNvbGxlY3Rpb24ifSx7ImRlc2NyaXB0aW9uIjoiQ3VzdG9tIGxhYmVscyB0byBzZXQgb24gYWxsIG1hbmFnZWQgb2JqZWN0cy4iLCJkaXNwbGF5TmFtZSI6IkxhYmVscyIsInBhdGgiOiJjdXN0b21pemUubGFiZWxzIn0seyJkZXNjcmlwdGlvbiI6IkN1c3RvbSBhbm5vdGF0aW9ucyB0byBzZXQgb24gYWxsIG1hbmFnZWQgb2JqZWN0cy4iLCJkaXNwbGF5TmFtZSI6IkFubm90YXRpb25zIiwicGF0aCI6ImN1c3RvbWl6ZS5hbm5vdGF0aW9ucyJ9LHsiZGVzY3JpcHRpb24iOiJDdXN0b20gZW52aXJvbm1lbnQgdmFyaWFibGVzIHRvIHNldCBvbiBtYW5hZ2VkIHBvZHMnIGNvbnRhaW5lcnMuIiwiZGlzcGxheU5hbWUiOiJFbnZpcm9ubWVudCBWYXJpYWJsZXMiLCJwYXRoIjoiY3VzdG9taXplLmVudlZhcnMifSx7ImRlc2NyaXB0aW9uIjoiVGhlIG5hbWUgb2YgdGhlIHJlZmVyZW5jZWQgc2VjcmV0LiIsImRpc3BsYXlOYW1lIjoiTmFtZSIsInBhdGgiOiJpbWFnZVB1bGxTZWNyZXRzWzBdLm5hbWUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjppby5rdWJlcm5ldGVzOlNlY3JldCJdfSx7ImRlc2NyaXB0aW9uIjoiRGVwcmVjYXRlZCBmaWVsZC4gVGhpcyBmaWVsZCB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS5cblNldCB0aGlzIHRvIHRydWUgdG8gaGF2ZSB0aGUgb3BlcmF0b3IgY3JlYXRlIFNlY3VyaXR5Q29udGV4dENvbnN0cmFpbnRzIChTQ0NzKSBmb3IgdGhlIG9wZXJhbmRzLiBUaGlzXG5pc24ndCB1c3VhbGx5IG5lZWRlZCwgYW5kIG1heSBpbnRlcmZlcmUgd2l0aCBvdGhlciB3b3JrbG9hZHMuIiwiZGlzcGxheU5hbWUiOiJDcmVhdGUgU2VjdXJpdHlDb250ZXh0Q29uc3RyYWludHMgZm9yIE9wZXJhbmQiLCJwYXRoIjoibWlzYy5jcmVhdGVTQ0NzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiVGhlIGRlZmF1bHQgaXM6IHRydWUuIiwiZGlzcGxheU5hbWUiOiJFbmFibGVkIiwicGF0aCI6Im1vbml0b3Jpbmcub3BlbnNoaWZ0LmVuYWJsZWQiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6Ym9vbGVhblN3aXRjaCJdfSx7ImRlc2NyaXB0aW9uIjoiVG8gcHJvdmlkZSBzZWN1cml0eSBhdCB0aGUgbmV0d29yayBsZXZlbCB0aGUgQUNTIE9wZXJhdG9yIGNyZWF0ZXMgTmV0d29ya1BvbGljeSByZXNvdXJjZXMgYnkgZGVmYXVsdC4gSWYgeW91IHdhbnQgdG8gbWFuYWdlIHlvdXIgb3duIE5ldHdvcmtQb2xpY3kgb2JqZWN0cyB0aGVuIHNldCB0aGlzIHRvIFwiRGlzYWJsZWRcIi5cblRoZSBkZWZhdWx0IGlzOiBFbmFibGVkLiIsImRpc3BsYXlOYW1lIjoiTmV0d29yayBQb2xpY2llcyIsInBhdGgiOiJuZXR3b3JrLnBvbGljaWVzIn0seyJkZXNjcmlwdGlvbiI6IlJlc291cmNlIEFQSSB2ZXJzaW9uLiIsImRpc3BsYXlOYW1lIjoiQVBJIFZlcnNpb24iLCJwYXRoIjoib3ZlcmxheXNbMF0uYXBpVmVyc2lvbiJ9LHsiZGVzY3JpcHRpb24iOiJSZXNvdXJjZSBraW5kLiIsImRpc3BsYXlOYW1lIjoiS2luZCIsInBhdGgiOiJvdmVybGF5c1swXS5raW5kIn0seyJkZXNjcmlwdGlvbiI6Ik5hbWUgb2YgcmVzb3VyY2UuIiwiZGlzcGxheU5hbWUiOiJOYW1lIiwicGF0aCI6Im92ZXJsYXlzWzBdLm5hbWUifSx7ImRlc2NyaXB0aW9uIjoiT3B0aW9uYWwgbWFya3MgdGhlIG92ZXJsYXkgYXMgb3B0aW9uYWwuXG5XaGVuIE9wdGlvbmFsIGlzIHRydWUsIGFuZCB0aGUgc3BlY2lmaWVkIHJlc291cmNlIGRvZXMgbm90IGV4aXN0IGluIHRoZSBvdXRwdXQgbWFuaWZlc3RzLCB0aGUgb3ZlcmxheSB3aWxsIGJlIHNraXBwZWQsIGFuZCBhIHdhcm5pbmcgd2lsbCBiZSBsb2dnZWQuXG5XaGVuIE9wdGlvbmFsIGlzIGZhbHNlLCBhbmQgdGhlIHNwZWNpZmllZCByZXNvdXJjZSBkb2VzIG5vdCBleGlzdCBpbiB0aGUgb3V0cHV0IG1hbmlmZXN0cywgYW4gZXJyb3Igd2lsbCBiZSB0aHJvd24uIiwiZGlzcGxheU5hbWUiOiJPcHRpb25hbCIsInBhdGgiOiJvdmVybGF5c1swXS5vcHRpb25hbCJ9LHsiZGVzY3JpcHRpb24iOiJMaXN0IG9mIHBhdGNoZXMgdG8gYXBwbHkgdG8gcmVzb3VyY2UuIiwiZGlzcGxheU5hbWUiOiJQYXRjaGVzIiwicGF0aCI6Im92ZXJsYXlzWzBdLnBhdGNoZXMifSx7ImRlc2NyaXB0aW9uIjoiUGF0aCBvZiB0aGUgZm9ybSBhLltrZXkxOnZhbHVlMV0uYi5bOnZhbHVlMl1cbldoZXJlIFtrZXkxOnZhbHVlMV0gaXMgYSBzZWxlY3RvciBmb3IgYSBrZXktdmFsdWUgcGFpciB0byBpZGVudGlmeSBhIGxpc3QgZWxlbWVudCBhbmQgWzp2YWx1ZV0gaXMgYSB2YWx1ZVxuc2VsZWN0b3IgdG8gaWRlbnRpZnkgYSBsaXN0IGVsZW1lbnQgaW4gYSBsZWFmIGxpc3QuXG5BbGwgcGF0aCBpbnRlcm1lZGlhdGUgbm9kZXMgbXVzdCBleGlzdC4iLCJkaXNwbGF5TmFtZSI6IlBhdGgiLCJwYXRoIjoib3ZlcmxheXNbMF0ucGF0Y2hlc1swXS5wYXRoIn0seyJkZXNjcmlwdGlvbiI6IlZhbHVlIHRvIGFkZCwgZGVsZXRlIG9yIHJlcGxhY2UuXG5Gb3IgYWRkLCB0aGUgcGF0aCBzaG91bGQgYmUgYSBuZXcgbGVhZi5cbkZvciBkZWxldGUsIHZhbHVlIHNob3VsZCBiZSB1bnNldC5cbkZvciByZXBsYWNlLCBwYXRoIHNob3VsZCByZWZlcmVuY2UgYW4gZXhpc3Rpbmcgbm9kZS5cbkFsbCB2YWx1ZXMgYXJlIHN0cmluZ3MgYnV0IGFyZSBjb252ZXJ0ZWQgaW50byBhcHByb3ByaWF0ZSB0eXBlIGJhc2VkIG9uIHNjaGVtYS4iLCJkaXNwbGF5TmFtZSI6IlZhbHVlIiwicGF0aCI6Im92ZXJsYXlzWzBdLnBhdGNoZXNbMF0udmFsdWUifSx7ImRlc2NyaXB0aW9uIjoiVmVyYmF0aW0gdmFsdWUgdG8gYWRkLCBkZWxldGUgb3IgcmVwbGFjZS5cblNhbWUgYXMgVmFsdWUsIGhvd2V2ZXIgdGhlIGNvbnRlbnQgaXMgbm90IGludGVycHJldGVkIGFzIFlBTUwsIGJ1dCB0cmVhdGVkIGFzIGxpdGVyYWwgc3RyaW5nIGluc3RlYWQuXG5BdCBsZWFzdCBvbmUgb2YgVmFsdWUgYW5kIFZlcmJhdGltIG11c3QgYmUgZW1wdHkuIiwiZGlzcGxheU5hbWUiOiJWZXJiYXRpbSIsInBhdGgiOiJvdmVybGF5c1swXS5wYXRjaGVzWzBdLnZlcmJhdGltIn0seyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIGZvciB0aGUgQ29sbGVjdG9yIGNvbnRhaW5lciwgd2hpY2ggaXMgcmVzcG9uc2libGUgZm9yIGNvbGxlY3RpbmcgcHJvY2VzcyBhbmQgbmV0d29ya2luZ1xuYWN0aXZpdHkgYXQgdGhlIGhvc3QgbGV2ZWwuIiwiZGlzcGxheU5hbWUiOiJDb2xsZWN0b3IgU2V0dGluZ3MiLCJwYXRoIjoicGVyTm9kZS5jb2xsZWN0b3IifSx7ImRlc2NyaXB0aW9uIjoiU2V0dGluZ3MgZm9yIHRoZSBDb21wbGlhbmNlIGNvbnRhaW5lciwgd2hpY2ggaXMgcmVzcG9uc2libGUgZm9yIGNoZWNraW5nIGhvc3QtbGV2ZWwgY29uZmlndXJhdGlvbnMuIiwiZGlzcGxheU5hbWUiOiJDb21wbGlhbmNlIFNldHRpbmdzIiwicGF0aCI6InBlck5vZGUuY29tcGxpYW5jZSJ9LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBmb3IgdGhlIE5vZGUtSW52ZW50b3J5IGNvbnRhaW5lciwgd2hpY2ggaXMgcmVzcG9uc2libGUgZm9yIHNjYW5uaW5nIHRoZSBOb2RlcycgZmlsZXN5c3RlbS4iLCJkaXNwbGF5TmFtZSI6Ik5vZGUgU2Nhbm5pbmcgU2V0dGluZ3MiLCJwYXRoIjoicGVyTm9kZS5ub2RlSW52ZW50b3J5In0seyJkZXNjcmlwdGlvbiI6IlRvIGVuc3VyZSBjb21wcmVoZW5zaXZlIG1vbml0b3Jpbmcgb2YgeW91ciBjbHVzdGVyIGFjdGl2aXR5LCBSZWQgSGF0IEFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHlcbndpbGwgcnVuIHNlcnZpY2VzIG9uIGV2ZXJ5IG5vZGUgaW4gdGhlIGNsdXN0ZXIsIGluY2x1ZGluZyB0YWludGVkIG5vZGVzIGJ5IGRlZmF1bHQuIElmIHlvdSBkb1xubm90IHdhbnQgdGhpcyBiZWhhdmlvciwgcGxlYXNlIHNlbGVjdCAnQXZvaWRUYWludHMnIGhlcmUuXG5UaGUgZGVmYXVsdCBpczogVG9sZXJhdGVUYWludHMuIiwiZGlzcGxheU5hbWUiOiJUYWludCBUb2xlcmF0aW9uIiwicGF0aCI6InBlck5vZGUudGFpbnRUb2xlcmF0aW9uIn0seyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsImRpc3BsYXlOYW1lIjoiSG9zdCBBbGlhc2VzIiwicGF0aCI6InBlck5vZGUuaG9zdEFsaWFzZXMifSx7ImRlc2NyaXB0aW9uIjoiVGhlIG1ldGhvZCBmb3Igc3lzdGVtLWxldmVsIGRhdGEgY29sbGVjdGlvbi4gQ09SRV9CUEYgaXMgcmVjb21tZW5kZWQuXG5JZiB5b3Ugc2VsZWN0IFwiTm9Db2xsZWN0aW9uXCIsIHlvdSB3aWxsIG5vdCBiZSBhYmxlIHRvIHNlZSBhbnkgaW5mb3JtYXRpb24gYWJvdXQgbmV0d29yayBhY3Rpdml0eVxuYW5kIHByb2Nlc3MgZXhlY3V0aW9ucy4gVGhlIHJlbWFpbmluZyBzZXR0aW5ncyBpbiB0aGVzZSBzZWN0aW9uIHdpbGwgbm90IGhhdmUgYW55IGVmZmVjdC5cblRoZSB2YWx1ZSBpcyBhIHN1YmplY3Qgb2YgY29udmVyc2lvbiBieSB0aGUgb3BlcmF0b3IgaWYgbmVlZGVkLCBlLmcuIHRvXG5yZW1vdmUgZGVwcmVjYXRlZCBtZXRob2RzLlxuVGhlIGRlZmF1bHQgaXM6IENPUkVfQlBGLiIsImRpc3BsYXlOYW1lIjoiQ29sbGVjdGlvbiIsInBhdGgiOiJwZXJOb2RlLmNvbGxlY3Rvci5jb2xsZWN0aW9uIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnNlbGVjdDpDT1JFX0JQRiIsInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6c2VsZWN0Ok5vQ29sbGVjdGlvbiJdfSx7ImRlc2NyaXB0aW9uIjoiT2Jzb2xldGUgZmllbGQuIiwiZGlzcGxheU5hbWUiOiJJbWFnZSBGbGF2b3IiLCJwYXRoIjoicGVyTm9kZS5jb2xsZWN0b3IuaW1hZ2VGbGF2b3IiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6aGlkZGVuIl19LHsiZGVzY3JpcHRpb24iOiJPYnNvbGV0ZSBmaWVsZC4gVGhpcyBmaWVsZCB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS4iLCJkaXNwbGF5TmFtZSI6IkZvcmNlIENvbGxlY3Rpb24iLCJwYXRoIjoicGVyTm9kZS5jb2xsZWN0b3IuZm9yY2VDb2xsZWN0aW9uIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmhpZGRlbiJdfSx7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJkaXNwbGF5TmFtZSI6IlJlc291cmNlcyIsInBhdGgiOiJwZXJOb2RlLmNvbGxlY3Rvci5yZXNvdXJjZXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6cmVzb3VyY2VSZXF1aXJlbWVudHMiXX0seyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwiZGlzcGxheU5hbWUiOiJSZXNvdXJjZXMiLCJwYXRoIjoicGVyTm9kZS5jb21wbGlhbmNlLnJlc291cmNlcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpyZXNvdXJjZVJlcXVpcmVtZW50cyJdfSx7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJkaXNwbGF5TmFtZSI6IlJlc291cmNlcyIsInBhdGgiOiJwZXJOb2RlLm5vZGVJbnZlbnRvcnkucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJTaG91bGQgcHJvY2VzcyBiYXNlbGluZXMgYmUgYXV0b21hdGljYWxseSBsb2NrZWQgd2hlbiB0aGUgb2JzZXJ2YXRpb24gcGVyaW9kICgxIGhvdXIgYnkgZGVmYXVsdCkgZW5kcy5cblRoZSBkZWZhdWx0IGlzOiBEaXNhYmxlZC4iLCJkaXNwbGF5TmFtZSI6IkF1dG8gTG9jayIsInBhdGgiOiJwcm9jZXNzQmFzZWxpbmVzLmF1dG9Mb2NrIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnNlbGVjdDpFbmFibGVkIiwidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpzZWxlY3Q6RGlzYWJsZWQiXX0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSBkbyBub3Qgd2FudCB0byBkZXBsb3kgdGhlIFJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSBTY2FubmVyLCB5b3UgY2FuIGRpc2FibGUgaXQgaGVyZVxuKG5vdCByZWNvbW1lbmRlZCkuXG5JZiB5b3UgZG8gc28sIGFsbCB0aGUgc2V0dGluZ3MgaW4gdGhpcyBzZWN0aW9uIHdpbGwgaGF2ZSBubyBlZmZlY3QuXG5UaGUgZGVmYXVsdCBpczogQXV0b1NlbnNlLiIsImRpc3BsYXlOYW1lIjoiU2Nhbm5lciBDb21wb25lbnQiLCJwYXRoIjoic2Nhbm5lci5zY2FubmVyQ29tcG9uZW50In0seyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHBlcnRhaW5pbmcgdG8gdGhlIGFuYWx5emVyIGRlcGxveW1lbnQsIHN1Y2ggYXMgZm9yIGF1dG9zY2FsaW5nLiIsImRpc3BsYXlOYW1lIjoiQW5hbHl6ZXIiLCJwYXRoIjoic2Nhbm5lci5hbmFseXplciJ9LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBwZXJ0YWluaW5nIHRvIHRoZSBkYXRhYmFzZSB1c2VkIGJ5IHRoZSBSZWQgSGF0IEFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHkgU2Nhbm5lci4iLCJkaXNwbGF5TmFtZSI6IkRCIiwicGF0aCI6InNjYW5uZXIuZGIifSx7ImRlc2NyaXB0aW9uIjoiQ29udHJvbHMgdGhlIG51bWJlciBvZiBhbmFseXplciByZXBsaWNhcyBhbmQgYXV0b3NjYWxpbmcuIiwiZGlzcGxheU5hbWUiOiJTY2FsaW5nIiwicGF0aCI6InNjYW5uZXIuYW5hbHl6ZXIuc2NhbGluZyJ9LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6InNjYW5uZXIuYW5hbHl6ZXIucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNlbGVjdG9yIiwicGF0aCI6InNjYW5uZXIuYW5hbHl6ZXIubm9kZVNlbGVjdG9yIn0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsImRpc3BsYXlOYW1lIjoiVG9sZXJhdGlvbnMiLCJwYXRoIjoic2Nhbm5lci5hbmFseXplci50b2xlcmF0aW9ucyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0b2xlcmF0aW9ucyJdfSx7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiZGlzcGxheU5hbWUiOiJIb3N0IEFsaWFzZXMiLCJwYXRoIjoic2Nhbm5lci5hbmFseXplci5ob3N0QWxpYXNlcyJ9LHsiZGVzY3JpcHRpb24iOiJXaGVuIGVuYWJsZWQsIHRoZSBudW1iZXIgb2YgY29tcG9uZW50IHJlcGxpY2FzIGlzIG1hbmFnZWQgZHluYW1pY2FsbHkgYmFzZWQgb24gdGhlIGxvYWQsIHdpdGhpbiB0aGUgbGltaXRzXG5zcGVjaWZpZWQgYmVsb3cuXG5UaGUgZGVmYXVsdCBpczogRW5hYmxlZC4iLCJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIiwicGF0aCI6InNjYW5uZXIuYW5hbHl6ZXIuc2NhbGluZy5hdXRvU2NhbGluZyJ9LHsiZGVzY3JpcHRpb24iOiJXaGVuIGF1dG9zY2FsaW5nIGlzIGRpc2FibGVkLCB0aGUgbnVtYmVyIG9mIHJlcGxpY2FzIHdpbGwgYWx3YXlzIGJlIGNvbmZpZ3VyZWQgdG8gbWF0Y2ggdGhpcyB2YWx1ZS5cblRoZSBkZWZhdWx0IGlzOiAzLiIsImRpc3BsYXlOYW1lIjoiRGVmYXVsdCBSZXBsaWNhcyIsInBhdGgiOiJzY2FubmVyLmFuYWx5emVyLnNjYWxpbmcucmVwbGljYXMifSx7ImRlc2NyaXB0aW9uIjoiVGhlIGRlZmF1bHQgaXM6IDIuIiwiZGlzcGxheU5hbWUiOiJBdXRvc2NhbGluZyBNaW5pbXVtIFJlcGxpY2FzIiwicGF0aCI6InNjYW5uZXIuYW5hbHl6ZXIuc2NhbGluZy5taW5SZXBsaWNhcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lci5hbmFseXplci5zY2FsaW5nLmF1dG9TY2FsaW5nOkVuYWJsZWQiXX0seyJkZXNjcmlwdGlvbiI6IlRoZSBkZWZhdWx0IGlzOiA1LiIsImRpc3BsYXlOYW1lIjoiQXV0b3NjYWxpbmcgTWF4aW11bSBSZXBsaWNhcyIsInBhdGgiOiJzY2FubmVyLmFuYWx5emVyLnNjYWxpbmcubWF4UmVwbGljYXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6ZmllbGREZXBlbmRlbmN5OnNjYW5uZXIuYW5hbHl6ZXIuc2NhbGluZy5hdXRvU2NhbGluZzpFbmFibGVkIl19LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6InNjYW5uZXIuZGIucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNlbGVjdG9yIiwicGF0aCI6InNjYW5uZXIuZGIubm9kZVNlbGVjdG9yIn0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSB0b2xlcmF0aW9ucyBvZiB0YWludGVkIG5vZGVzLiIsImRpc3BsYXlOYW1lIjoiVG9sZXJhdGlvbnMiLCJwYXRoIjoic2Nhbm5lci5kYi50b2xlcmF0aW9ucyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0b2xlcmF0aW9ucyJdfSx7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiZGlzcGxheU5hbWUiOiJIb3N0IEFsaWFzZXMiLCJwYXRoIjoic2Nhbm5lci5kYi5ob3N0QWxpYXNlcyJ9LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0byBlbmFibGUgdGhlIFNjYW5uZXIgVjQgY29tcG9uZW50IHNldCB0aGlzIHRvIFwiQXV0b1NlbnNlXCJcbklmIHRoaXMgZmllbGQgaXMgbm90IHNwZWNpZmllZCBvciBzZXQgdG8gXCJEZWZhdWx0XCIsIHRoZSBmb2xsb3dpbmcgZGVmYXVsdGluZyB0YWtlcyBwbGFjZTpcbiogZm9yIG5ldyBpbnN0YWxsYXRpb25zLCBTY2FubmVyIFY0IGlzIGVuYWJsZWQgc3RhcnRpbmcgd2l0aCBBQ1MgNC44O1xuKiBmb3IgdXBncmFkZXMgdG8gNC44IGZyb20gcHJldmlvdXMgcmVsZWFzZXMsIFNjYW5uZXIgVjQgaXMgZGlzYWJsZWQuIiwiZGlzcGxheU5hbWUiOiJTY2FubmVyIFY0IGNvbXBvbmVudCIsInBhdGgiOiJzY2FubmVyVjQuc2Nhbm5lckNvbXBvbmVudCJ9LHsiZGVzY3JpcHRpb24iOiJTZXR0aW5ncyBwZXJ0YWluaW5nIHRvIHRoZSBpbmRleGVyIGRlcGxveW1lbnQuIiwiZGlzcGxheU5hbWUiOiJJbmRleGVyIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOmZpZWxkRGVwZW5kZW5jeTpzY2FubmVyVjQuc2Nhbm5lckNvbXBvbmVudDpBdXRvU2Vuc2UiXX0seyJkZXNjcmlwdGlvbiI6IlNldHRpbmdzIHBlcnRhaW5pbmcgdG8gdGhlIERCIGRlcGxveW1lbnQuIiwiZGlzcGxheU5hbWUiOiJEQiIsInBhdGgiOiJzY2FubmVyVjQuZGIiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6ZmllbGREZXBlbmRlbmN5OnNjYW5uZXJWNC5zY2FubmVyQ29tcG9uZW50OkF1dG9TZW5zZSJdfSx7ImRlc2NyaXB0aW9uIjoiQ29uZmlndXJlcyBtb25pdG9yaW5nIGVuZHBvaW50IGZvciBTY2FubmVyIFY0LiBUaGUgbW9uaXRvcmluZyBlbmRwb2ludFxuYWxsb3dzIG90aGVyIHNlcnZpY2VzIHRvIGNvbGxlY3QgbWV0cmljcyBmcm9tIFNjYW5uZXIgVjQsIHByb3ZpZGVkIGluXG5Qcm9tZXRoZXVzIGNvbXBhdGlibGUgZm9ybWF0LiIsImRpc3BsYXlOYW1lIjoiTW9uaXRvcmluZyIsInBhdGgiOiJzY2FubmVyVjQubW9uaXRvcmluZyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0LnNjYW5uZXJDb21wb25lbnQ6QXV0b1NlbnNlIl19LHsiZGVzY3JpcHRpb24iOiJDb25maWd1cmVzIGhvdyBTY2FubmVyIFY0IHNob3VsZCBzdG9yZSBpdHMgcGVyc2lzdGVudCBkYXRhLlxuWW91IGNhbiB1c2UgYSBwZXJzaXN0ZW50IHZvbHVtZSBjbGFpbSAodGhlIHJlY29tbWVuZGVkIGRlZmF1bHQpLCBhIGhvc3QgcGF0aCxcbm9yIGFuIGVtcHR5RGlyIHZvbHVtZSBpZiBTY2FubmVyIFY0IGlzIHJ1bm5pbmcgb24gYSBzZWN1cmVkIGNsdXN0ZXIgd2l0aG91dCBkZWZhdWx0IFN0b3JhZ2VDbGFzcy4iLCJkaXNwbGF5TmFtZSI6IlBlcnNpc3RlbmNlIiwicGF0aCI6InNjYW5uZXJWNC5kYi5wZXJzaXN0ZW5jZSJ9LHsiZGVzY3JpcHRpb24iOiJBbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNvdXJjZSBzZXR0aW5ncyBmb3IgdGhpcyBjb21wb25lbnQuIFBsZWFzZSBjb25zdWx0IHRoZSBkb2N1bWVudGF0aW9uXG5mb3IgYW4gb3ZlcnZpZXcgb2YgZGVmYXVsdCByZXNvdXJjZSByZXF1aXJlbWVudHMgYW5kIGEgc2l6aW5nIGd1aWRlLiIsImRpc3BsYXlOYW1lIjoiUmVzb3VyY2VzIiwicGF0aCI6InNjYW5uZXJWNC5kYi5yZXNvdXJjZXMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6cmVzb3VyY2VSZXF1aXJlbWVudHMiXX0seyJkZXNjcmlwdGlvbiI6IklmIHlvdSB3YW50IHRoaXMgY29tcG9uZW50IHRvIG9ubHkgcnVuIG9uIHNwZWNpZmljIG5vZGVzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIG5vZGUgc2VsZWN0b3IgaGVyZS4iLCJkaXNwbGF5TmFtZSI6Ik5vZGUgU2VsZWN0b3IiLCJwYXRoIjoic2Nhbm5lclY0LmRiLm5vZGVTZWxlY3RvciJ9LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJkaXNwbGF5TmFtZSI6IlRvbGVyYXRpb25zIiwicGF0aCI6InNjYW5uZXJWNC5kYi50b2xlcmF0aW9ucyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTp0b2xlcmF0aW9ucyJdfSx7ImRlc2NyaXB0aW9uIjoiSG9zdEFsaWFzZXMgYWxsb3dzIGNvbmZpZ3VyaW5nIGFkZGl0aW9uYWwgaG9zdG5hbWVzIHRvIHJlc29sdmUgaW4gdGhlIHBvZCdzIGhvc3RzIGZpbGUuIiwiZGlzcGxheU5hbWUiOiJIb3N0IEFsaWFzZXMiLCJwYXRoIjoic2Nhbm5lclY0LmRiLmhvc3RBbGlhc2VzIn0seyJkZXNjcmlwdGlvbiI6IlVzZXMgYSBLdWJlcm5ldGVzIHBlcnNpc3RlbnQgdm9sdW1lIGNsYWltIChQVkMpIHRvIG1hbmFnZSB0aGUgc3RvcmFnZSBsb2NhdGlvbiBvZiBwZXJzaXN0ZW50IGRhdGEuXG5SZWNvbW1lbmRlZCBmb3IgbW9zdCB1c2Vycy4iLCJkaXNwbGF5TmFtZSI6IlBlcnNpc3RlbnQgdm9sdW1lIGNsYWltIiwicGF0aCI6InNjYW5uZXJWNC5kYi5wZXJzaXN0ZW5jZS5wZXJzaXN0ZW50Vm9sdW1lQ2xhaW0ifSx7ImRlc2NyaXB0aW9uIjoiU3RvcmVzIHBlcnNpc3RlbnQgZGF0YSBvbiBhIGRpcmVjdG9yeSBvbiB0aGUgaG9zdC4gVGhpcyBpcyBub3QgcmVjb21tZW5kZWQsIGFuZCBzaG91bGQgb25seVxuYmUgdXNlZCB0b2dldGhlciB3aXRoIGEgbm9kZSBzZWxlY3RvciAob25seSBhdmFpbGFibGUgaW4gWUFNTCB2aWV3KS4iLCJkaXNwbGF5TmFtZSI6Ikhvc3QgcGF0aCIsInBhdGgiOiJzY2FubmVyVjQuZGIucGVyc2lzdGVuY2UuaG9zdFBhdGgifSx7ImRlc2NyaXB0aW9uIjoiVGhlIHBhdGggb24gdGhlIGhvc3QgcnVubmluZyBDZW50cmFsLiIsImRpc3BsYXlOYW1lIjoiUGF0aCIsInBhdGgiOiJzY2FubmVyVjQuZGIucGVyc2lzdGVuY2UuaG9zdFBhdGgucGF0aCJ9LHsiZGVzY3JpcHRpb24iOiJUaGUgbmFtZSBvZiB0aGUgUFZDIHRvIG1hbmFnZSBwZXJzaXN0ZW50IGRhdGEuIElmIG5vIFBWQyB3aXRoIHRoZSBnaXZlbiBuYW1lIGV4aXN0cywgaXQgd2lsbCBiZVxuY3JlYXRlZC5cblRoZSBkZWZhdWx0IGlzOiBzY2FubmVyLXY0LWRiLiIsImRpc3BsYXlOYW1lIjoiQ2xhaW0gTmFtZSIsInBhdGgiOiJzY2FubmVyVjQuZGIucGVyc2lzdGVuY2UucGVyc2lzdGVudFZvbHVtZUNsYWltLmNsYWltTmFtZSJ9LHsiZGVzY3JpcHRpb24iOiJUaGUgc2l6ZSBvZiB0aGUgcGVyc2lzdGVudCB2b2x1bWUgd2hlbiBjcmVhdGVkIHRocm91Z2ggdGhlIGNsYWltLiBJZiBhIGNsYWltIHdhcyBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQsXG50aGlzIGNhbiBiZSB1c2VkIGFmdGVyIHRoZSBpbml0aWFsIGRlcGxveW1lbnQgdG8gcmVzaXplIChncm93KSB0aGUgdm9sdW1lIChvbmx5IHN1cHBvcnRlZCBieSBzb21lXG5zdG9yYWdlIGNsYXNzIGNvbnRyb2xsZXJzKS4iLCJkaXNwbGF5TmFtZSI6IlNpemUiLCJwYXRoIjoic2Nhbm5lclY0LmRiLnBlcnNpc3RlbmNlLnBlcnNpc3RlbnRWb2x1bWVDbGFpbS5zaXplIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnRleHQiXX0seyJkZXNjcmlwdGlvbiI6IlRoZSBuYW1lIG9mIHRoZSBzdG9yYWdlIGNsYXNzIHRvIHVzZSBmb3IgdGhlIFBWQy4gSWYgeW91ciBjbHVzdGVyIGlzIG5vdCBjb25maWd1cmVkIHdpdGggYSBkZWZhdWx0IHN0b3JhZ2VcbmNsYXNzLCB5b3UgbXVzdCBzZWxlY3QgYSB2YWx1ZSBoZXJlLiIsImRpc3BsYXlOYW1lIjoiU3RvcmFnZSBDbGFzcyIsInBhdGgiOiJzY2FubmVyVjQuZGIucGVyc2lzdGVuY2UucGVyc2lzdGVudFZvbHVtZUNsYWltLnN0b3JhZ2VDbGFzc05hbWUiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjppby5rdWJlcm5ldGVzOlN0b3JhZ2VDbGFzcyJdfSx7ImRlc2NyaXB0aW9uIjoiQ29udHJvbHMgdGhlIG51bWJlciBvZiByZXBsaWNhcyBhbmQgYXV0b3NjYWxpbmcgZm9yIHRoaXMgY29tcG9uZW50LiIsImRpc3BsYXlOYW1lIjoiU2NhbGluZyIsInBhdGgiOiJzY2FubmVyVjQuaW5kZXhlci5zY2FsaW5nIn0seyJkZXNjcmlwdGlvbiI6IkFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHJlc291cmNlIHNldHRpbmdzIGZvciB0aGlzIGNvbXBvbmVudC4gUGxlYXNlIGNvbnN1bHQgdGhlIGRvY3VtZW50YXRpb25cbmZvciBhbiBvdmVydmlldyBvZiBkZWZhdWx0IHJlc291cmNlIHJlcXVpcmVtZW50cyBhbmQgYSBzaXppbmcgZ3VpZGUuIiwiZGlzcGxheU5hbWUiOiJSZXNvdXJjZXMiLCJwYXRoIjoic2Nhbm5lclY0LmluZGV4ZXIucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNlbGVjdG9yIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyLm5vZGVTZWxlY3RvciJ9LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgdG9sZXJhdGlvbnMgb2YgdGFpbnRlZCBub2Rlcy4iLCJkaXNwbGF5TmFtZSI6IlRvbGVyYXRpb25zIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyLnRvbGVyYXRpb25zIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnRvbGVyYXRpb25zIl19LHsiZGVzY3JpcHRpb24iOiJIb3N0QWxpYXNlcyBhbGxvd3MgY29uZmlndXJpbmcgYWRkaXRpb25hbCBob3N0bmFtZXMgdG8gcmVzb2x2ZSBpbiB0aGUgcG9kJ3MgaG9zdHMgZmlsZS4iLCJkaXNwbGF5TmFtZSI6Ikhvc3QgQWxpYXNlcyIsInBhdGgiOiJzY2FubmVyVjQuaW5kZXhlci5ob3N0QWxpYXNlcyJ9LHsiZGVzY3JpcHRpb24iOiJXaGVuIGVuYWJsZWQsIHRoZSBudW1iZXIgb2YgY29tcG9uZW50IHJlcGxpY2FzIGlzIG1hbmFnZWQgZHluYW1pY2FsbHkgYmFzZWQgb24gdGhlIGxvYWQsIHdpdGhpbiB0aGUgbGltaXRzXG5zcGVjaWZpZWQgYmVsb3cuXG5UaGUgZGVmYXVsdCBpczogRW5hYmxlZC4iLCJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIiwicGF0aCI6InNjYW5uZXJWNC5pbmRleGVyLnNjYWxpbmcuYXV0b1NjYWxpbmcifSx7ImRlc2NyaXB0aW9uIjoiV2hlbiBhdXRvc2NhbGluZyBpcyBkaXNhYmxlZCwgdGhlIG51bWJlciBvZiByZXBsaWNhcyB3aWxsIGFsd2F5cyBiZSBjb25maWd1cmVkIHRvIG1hdGNoIHRoaXMgdmFsdWUuXG5UaGUgZGVmYXVsdCBpczogMy4iLCJkaXNwbGF5TmFtZSI6IkRlZmF1bHQgUmVwbGljYXMiLCJwYXRoIjoic2Nhbm5lclY0LmluZGV4ZXIuc2NhbGluZy5yZXBsaWNhcyJ9LHsiZGVzY3JpcHRpb24iOiJUaGUgZGVmYXVsdCBpczogMi4iLCJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIE1pbmltdW0gUmVwbGljYXMiLCJwYXRoIjoic2Nhbm5lclY0LmluZGV4ZXIuc2NhbGluZy5taW5SZXBsaWNhcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0LmluZGV4ZXIuc2NhbGluZy5hdXRvU2NhbGluZzpFbmFibGVkIl19LHsiZGVzY3JpcHRpb24iOiJUaGUgZGVmYXVsdCBpczogNS4iLCJkaXNwbGF5TmFtZSI6IkF1dG9zY2FsaW5nIE1heGltdW0gUmVwbGljYXMiLCJwYXRoIjoic2Nhbm5lclY0LmluZGV4ZXIuc2NhbGluZy5tYXhSZXBsaWNhcyIsIngtZGVzY3JpcHRvcnMiOlsidXJuOmFsbTpkZXNjcmlwdG9yOmNvbS50ZWN0b25pYy51aTpmaWVsZERlcGVuZGVuY3k6c2Nhbm5lclY0LmluZGV4ZXIuc2NhbGluZy5hdXRvU2NhbGluZzpFbmFibGVkIl19LHsiZGVzY3JpcHRpb24iOiJFeHBvc2UgdGhlIG1vbml0b3JpbmcgZW5kcG9pbnQuIEEgbmV3IHNlcnZpY2UsIFwibW9uaXRvcmluZ1wiLFxud2l0aCBwb3J0IDkwOTAsIHdpbGwgYmUgY3JlYXRlZCBhcyB3ZWxsIGFzIGEgbmV0d29yayBwb2xpY3kgYWxsb3dpbmdcbmluYm91bmQgY29ubmVjdGlvbnMgdG8gdGhlIHBvcnQuIiwiZGlzcGxheU5hbWUiOiJFeHBvc2UgRW5kcG9pbnQiLCJwYXRoIjoic2Nhbm5lclY0Lm1vbml0b3JpbmcuZXhwb3NlRW5kcG9pbnQifSx7ImRlc2NyaXB0aW9uIjoiQWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgcmVzb3VyY2Ugc2V0dGluZ3MgZm9yIHRoaXMgY29tcG9uZW50LiBQbGVhc2UgY29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvblxuZm9yIGFuIG92ZXJ2aWV3IG9mIGRlZmF1bHQgcmVzb3VyY2UgcmVxdWlyZW1lbnRzIGFuZCBhIHNpemluZyBndWlkZS4iLCJkaXNwbGF5TmFtZSI6IlJlc291cmNlcyIsInBhdGgiOiJzZW5zb3IucmVzb3VyY2VzIiwieC1kZXNjcmlwdG9ycyI6WyJ1cm46YWxtOmRlc2NyaXB0b3I6Y29tLnRlY3RvbmljLnVpOnJlc291cmNlUmVxdWlyZW1lbnRzIl19LHsiZGVzY3JpcHRpb24iOiJJZiB5b3Ugd2FudCB0aGlzIGNvbXBvbmVudCB0byBvbmx5IHJ1biBvbiBzcGVjaWZpYyBub2RlcywgeW91IGNhbiBjb25maWd1cmUgYSBub2RlIHNlbGVjdG9yIGhlcmUuIiwiZGlzcGxheU5hbWUiOiJOb2RlIFNlbGVjdG9yIiwicGF0aCI6InNlbnNvci5ub2RlU2VsZWN0b3IifSx7ImRlc2NyaXB0aW9uIjoiSWYgeW91IHdhbnQgdGhpcyBjb21wb25lbnQgdG8gb25seSBydW4gb24gc3BlY2lmaWMgbm9kZXMsIHlvdSBjYW4gY29uZmlndXJlIHRvbGVyYXRpb25zIG9mIHRhaW50ZWQgbm9kZXMuIiwiZGlzcGxheU5hbWUiOiJUb2xlcmF0aW9ucyIsInBhdGgiOiJzZW5zb3IudG9sZXJhdGlvbnMiLCJ4LWRlc2NyaXB0b3JzIjpbInVybjphbG06ZGVzY3JpcHRvcjpjb20udGVjdG9uaWMudWk6dG9sZXJhdGlvbnMiXX0seyJkZXNjcmlwdGlvbiI6Ikhvc3RBbGlhc2VzIGFsbG93cyBjb25maWd1cmluZyBhZGRpdGlvbmFsIGhvc3RuYW1lcyB0byByZXNvbHZlIGluIHRoZSBwb2QncyBob3N0cyBmaWxlLiIsImRpc3BsYXlOYW1lIjoiSG9zdCBBbGlhc2VzIiwicGF0aCI6InNlbnNvci5ob3N0QWxpYXNlcyJ9LHsiZGVzY3JpcHRpb24iOiJBbGxvd3MgeW91IHRvIHNwZWNpZnkgYWRkaXRpb25hbCB0cnVzdGVkIFJvb3QgQ0FzLiIsImRpc3BsYXlOYW1lIjoiQWRkaXRpb25hbCBDQXMiLCJwYXRoIjoidGxzLmFkZGl0aW9uYWxDQXMifV0sInN0YXR1c0Rlc2NyaXB0b3JzIjpbeyJkZXNjcmlwdGlvbiI6IlRoZSBkZXBsb3llZCB2ZXJzaW9uIG9mIHRoZSBwcm9kdWN0LiIsImRpc3BsYXlOYW1lIjoiUHJvZHVjdCBWZXJzaW9uIiwicGF0aCI6InByb2R1Y3RWZXJzaW9uIn0seyJkZXNjcmlwdGlvbiI6IlRoZSBhc3NpZ25lZCBjbHVzdGVyIG5hbWUgcGVyIHRoZSBzcGVjLiBUaGlzIGNhbm5vdCBiZSBjaGFuZ2VkIGFmdGVyd2FyZHMuIElmIHlvdSBuZWVkIHRvIGNoYW5nZSB0aGVcbmNsdXN0ZXIgbmFtZSwgcGxlYXNlIGRlbGV0ZSBhbmQgcmVjcmVhdGUgdGhpcyByZXNvdXJjZS4iLCJkaXNwbGF5TmFtZSI6IkNsdXN0ZXIgTmFtZSIsInBhdGgiOiJjbHVzdGVyTmFtZSJ9XSwidmVyc2lvbiI6InYxYWxwaGExIn0seyJkZXNjcmlwdGlvbiI6IlNlY3VyaXR5UG9saWN5IGlzIHRoZSBzY2hlbWEgZm9yIHRoZSBwb2xpY2llcyBBUEkuIiwiZGlzcGxheU5hbWUiOiJTZWN1cml0eSBQb2xpY3kiLCJraW5kIjoiU2VjdXJpdHlQb2xpY3kiLCJuYW1lIjoic2VjdXJpdHlwb2xpY2llcy5jb25maWcuc3RhY2tyb3guaW8iLCJyZXNvdXJjZXMiOlt7ImtpbmQiOiJEZXBsb3ltZW50IiwibmFtZSI6IiIsInZlcnNpb24iOiJ2MSJ9XSwidmVyc2lvbiI6InYxYWxwaGExIn1dfSwiZGVzY3JpcHRpb24iOiIjIyBXaHkgdXNlIFJlZCBIYXQgQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSBmb3IgS3ViZXJuZXRlcz9cblxuUHJvdGVjdGluZyBjbG91ZC1uYXRpdmUgYXBwbGljYXRpb25zIHJlcXVpcmVzIHNpZ25pZmljYW50IGNoYW5nZXMgaW4gaG93IHdlIGFwcHJvYWNoIHNlY3VyaXR54oCUd2UgbXVzdCBhcHBseSBjb250cm9scyBlYXJsaWVyIGluIHRoZSBhcHBsaWNhdGlvbiBkZXZlbG9wbWVudCBsaWZlIGN5Y2xlLCB1c2UgdGhlIGluZnJhc3RydWN0dXJlIGl0c2VsZiB0byBhcHBseSBjb250cm9scywgYW5kIGtlZXAgdXAgd2l0aCBpbmNyZWFzaW5nbHkgcmFwaWQgcmVsZWFzZSBzY2hlZHVsZXMuXG5cblxuUmVkIEhhdMKuIEFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHkgZm9yIEt1YmVybmV0ZXMsIHBvd2VyZWQgYnkgU3RhY2tSb3ggdGVjaG5vbG9neSwgcHJvdGVjdHMgeW91ciB2aXRhbCBhcHBsaWNhdGlvbnMgYWNyb3NzIGJ1aWxkLCBkZXBsb3ksIGFuZCBydW50aW1lLiBPdXIgc29mdHdhcmUgZGVwbG95cyBpbiB5b3VyIGluZnJhc3RydWN0dXJlIGFuZCBpbnRlZ3JhdGVzIHdpdGggeW91ciBEZXZPcHMgdG9vbGluZyBhbmQgd29ya2Zsb3dzIHRvIGRlbGl2ZXIgYmV0dGVyIHNlY3VyaXR5IGFuZCBjb21wbGlhbmNlLiBUaGUgcG9saWN5IGVuZ2luZSBpbmNsdWRlcyBodW5kcmVkcyBvZiBidWlsdC1pbiBjb250cm9scyB0byBlbmZvcmNlIERldk9wcyBhbmQgc2VjdXJpdHkgYmVzdCBwcmFjdGljZXMsIGluZHVzdHJ5IHN0YW5kYXJkcyBzdWNoIGFzIENJUyBCZW5jaG1hcmtzIGFuZCBOYXRpb25hbCBJbnN0aXR1dGUgb2YgU3RhbmRhcmRzIFRlY2hub2xvZ3kgKE5JU1QpIGd1aWRlbGluZXMsIGNvbmZpZ3VyYXRpb24gbWFuYWdlbWVudCBvZiBib3RoIGNvbnRhaW5lcnMgYW5kIEt1YmVybmV0ZXMsIGFuZCBydW50aW1lIHNlY3VyaXR5LlxuXG5SZWQgSGF0IEFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHkgZm9yIEt1YmVybmV0ZXMgcHJvdmlkZXMgYSBLdWJlcm5ldGVzLW5hdGl2ZSBhcmNoaXRlY3R1cmUgZm9yIGNvbnRhaW5lciBzZWN1cml0eSwgZW5hYmxpbmcgRGV2T3BzIGFuZCBJbmZvU2VjIHRlYW1zIHRvIG9wZXJhdGlvbmFsaXplIHNlY3VyaXR5LlxuXG4jIyBGZWF0dXJlcyBhbmQgQmVuZWZpdHNcblxuKipLdWJlcm5ldGVzLW5hdGl2ZSBzZWN1cml0eToqKlxuMS4gSW5jcmVhc2VzIHByb3RlY3Rpb24uXG4xLiBFbGltaW5hdGVzIGJsaW5kIHNwb3RzLCBwcm92aWRpbmcgc3RhZmYgd2l0aCBpbnNpZ2h0cyBpbnRvIGNyaXRpY2FsIHZ1bG5lcmFiaWxpdGllcyBhbmQgdGhyZWF0IHZlY3RvcnMuXG4xLiBSZWR1Y2VzIHRpbWUgYW5kIGNvc3RzLlxuMS4gUmVkdWNlcyB0aGUgdGltZSBhbmQgZWZmb3J0IG5lZWRlZCB0byBpbXBsZW1lbnQgc2VjdXJpdHkgYW5kIHN0cmVhbWxpbmVzIHNlY3VyaXR5IGFuYWx5c2lzLCBpbnZlc3RpZ2F0aW9uLCBhbmQgcmVtZWRpYXRpb24gdXNpbmcgdGhlIHJpY2ggY29udGV4dCBLdWJlcm5ldGVzIHByb3ZpZGVzLlxuMS4gSW5jcmVhc2VzIHNjYWxhYmlsaXR5IGFuZCBwb3J0YWJpbGl0eS5cbjEuIFByb3ZpZGVzIHNjYWxhYmlsaXR5IGFuZCByZXNpbGllbmN5IG5hdGl2ZSB0byBLdWJlcm5ldGVzLCBhdm9pZGluZyBvcGVyYXRpb25hbCBjb25mbGljdCBhbmQgY29tcGxleGl0eSB0aGF0IGNhbiByZXN1bHQgZnJvbSBvdXQtb2YtYmFuZCBzZWN1cml0eSBjb250cm9scy5cblxuIyMgVXNpbmcgdGhlIFJIQUNTIE9wZXJhdG9yXG5cbioqUkhBQ1MgT3BlcmF0b3IgY2hhbm5lbHM6KipcblxuUmVkIEhhdCBwcm92aWRlcyB0aGUgUkhBQ1MgT3BlcmF0b3IgYnkgdXNpbmcgdGhlIGZvbGxvd2luZyB1cGRhdGUgY2hhbm5lbHMgaW4gdGhlIFJlZCBIYXQgT3BlcmF0b3IgY2F0YWxvZzpcblxuKiBgc3RhYmxlYDogUHJvdmlkZXMgdGhlIG1vc3QgcmVjZW50IHZlcnNpb24gYW5kIHBhdGNoZXMgdG8gdGhlIG1vc3QgcmVjZW50IHZlcnNpb24uXG4gIFVzaW5nIHRoZSBgc3RhYmxlYCBjaGFubmVsIGFuZCBjb25maWd1cmluZyBhdXRvbWF0aWMgb3BlcmF0b3IgdXBncmFkZXMgZW5zdXJlcyB0aGF0IHRoZSBtb3N0IHJlY2VudCBSSEFDUyB2ZXJzaW9uIGlzIGRlcGxveWVkLlxuKiBgcmhhY3MteC55eWAgKGZvciBleGFtcGxlLCBgcmhhY3MtMy43NGApOiBDaGFubmVscyBmb2xsb3cgYSBzcGVjaWZpYyBSSEFDUyB2ZXJzaW9uIGFuZCBpbmNsdWRlIGFsbCBwYXRjaGVzIHRvIHRoYXQgdmVyc2lvbiAoZS5nLiBgMy43NC4wYCwgYDMuNzQuMWAsIC4uLikuXG5cbk5vdGUgdGhhdCB0aGUgYGxhdGVzdGAgY2hhbm5lbCBpcyBkZXByZWNhdGVkIGFuZCBpcyBub3QgdXBkYXRlZCBhZnRlciBSSEFDUyB2ZXJzaW9uIDMuNzQuIE5ld2VyIHZlcnNpb25zIGFyZSBwdWJsaXNoZWQgdG8gdGhlIGBzdGFibGVgIGNoYW5uZWwuXG5cbioqUkhBQ1MgY29tZXMgd2l0aCB0d28gY3VzdG9tIHJlc291cmNlczoqKlxuXG4xLiAqKkNlbnRyYWwgU2VydmljZXMqKiAtIENlbnRyYWwgaXMgYSBkZXBsb3ltZW50IHJlcXVpcmVkIG9uIG9ubHkgb25lIGNsdXN0ZXIgaW4geW91ciBlbnZpcm9ubWVudC4gVXNlcnMgaW50ZXJhY3Qgd2l0aCBSSEFDUyB2aWEgdGhlIHVzZXIgaW50ZXJmYWNlIG9yIEFQSXMgb24gQ2VudHJhbC4gQ2VudHJhbCBhbHNvIHNlbmRzIG5vdGlmaWNhdGlvbnMgZm9yIHZpb2xhdGlvbnMgYW5kIGludGVyYWN0cyB3aXRoIGludGVncmF0aW9ucy4gVXNlcnMgbWF5IHNlbGVjdCBleHBvc3VyZXMgZm9yIENlbnRyYWwgdGhhdCBiZXN0IG1lZXQgdGhlaXIgZW52aXJvbm1lbnQuXG5cbjIuICoqU2VjdXJlZCBDbHVzdGVyIFNlcnZpY2VzKiogLSBTZWN1cmVkIGNsdXN0ZXIgc2VydmljZXMgYXJlIHBsYWNlZCBvbiBlYWNoIGNsdXN0ZXIgeW91IG1hbmFnZSBhbmQgcmVwb3J0IGJhY2sgdG8gQ2VudHJhbC4gVGhlc2Ugc2VydmljZXMgYWxsb3cgdXNlcnMgdG8gZW5mb3JjZSBwb2xpY2llcyBhbmQgbW9uaXRvciB5b3VyIE9wZW5TaGlmdCBhbmQgS3ViZXJuZXRlcyBjbHVzdGVycy4gU2VjdXJlZCBDbHVzdGVyIFNlcnZpY2VzIGNvbWUgYXMgdHdvIERlcGxveW1lbnRzIChTZW5zb3IgYW5kIEFkbWlzc2lvbiBDb250cm9sbGVyKSBhbmQgb25lIERhZW1vblNldCAoQ29sbGVjdG9yKS5cblxuIyMjIENlbnRyYWwgU2VydmljZXMgRXhwbGFpbmVkXG5cbnwgU2VydmljZSAgICAgICAgICAgICAgICAgICAgICAgICAgfCBEZXBsb3ltZW50IFR5cGUgfCBEZXNjcmlwdGlvbiAgICAgfFxufCA6LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSB8IDotLS0tLS0tLS0tLS0tLSB8IDotLS0tLS0tLS0tLS0tLSB8XG58IENlbnRyYWwgICAgICAgICAgICAgICAgICAgICAgICAgIHwgRGVwbG95bWVudCAgICAgIHwgVXNlcnMgaW50ZXJhY3Qgd2l0aCBSZWQgSGF0IEFkdmFuY2VkIENsdXN0ZXIgU2VjdXJpdHkgdGhyb3VnaCB0aGUgdXNlciBpbnRlcmZhY2Ugb3IgQVBJcyBvbiBDZW50cmFsLiBDZW50cmFsIGFsc28gc2VuZHMgbm90aWZpY2F0aW9ucyBmb3IgdmlvbGF0aW9ucyBhbmQgaW50ZXJhY3RzIHdpdGggaW50ZWdyYXRpb25zLiB8XG58IENlbnRyYWwgREIgICAgICAgICAgICAgICAgICAgICAgIHwgRGVwbG95bWVudCAgICAgIHwgQ2VudHJhbCBEQiBpcyBhIFBvc3RncmVTUUwtYmFzZWQgcGVyc2lzdGVudCBzdG9yYWdlIGZvciB0aGUgZGF0YSBjb2xsZWN0ZWQgYW5kIG1hbmFnZWQgYnkgQ2VudHJhbC4gfFxufCBTY2FubmVyICAgICAgICAgICAgICAgICAgICAgICAgICB8IERlcGxveW1lbnQgICAgICB8IFNjYW5uZXIgaXMgYSBSZWQgSGF0IGRldmVsb3BlZCBhbmQgY2VydGlmaWVkIGltYWdlIHNjYW5uZXIuIFNjYW5uZXIgYW5hbHl6ZXMgYW5kIHJlcG9ydHMgdnVsbmVyYWJpbGl0aWVzIGZvciBpbWFnZXMuIFNjYW5uZXIgdXNlcyBIUEEgdG8gc2NhbGUgdGhlIG51bWJlciBvZiByZXBsaWNhcyBiYXNlZCBvbiB3b3JrbG9hZC4gfFxufCBTY2FubmVyIERCICAgICAgICAgICAgICAgICAgICAgICB8IERlcGxveW1lbnQgICAgICB8IFNjYW5uZXIgREIgaXMgYSBjYWNoZSBmb3IgdnVsbmVyYWJpbGl0eSBkZWZpbml0aW9ucyB0byBzZXJ2ZSB2dWxuZXJhYmlsaXR5IHNjYW5uaW5nIHVzZSBjYXNlcyB0aHJvdWdob3V0IHRoZSBzb2Z0d2FyZSBkZXZlbG9wbWVudCBsaWZlIGN5Y2xlLiB8XG5cbiMjIyBTZWN1cmVkIENsdXN0ZXIgU2VydmljZXMgRXhwbGFpbmVkXG5cbnwgU2VydmljZSAgICAgICAgICAgICAgICAgICAgICAgICAgfCBEZXBsb3ltZW50IFR5cGUgfCBEZXNjcmlwdGlvbiAgICAgfFxufCA6LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSB8IDotLS0tLS0tLS0tLS0tLSB8IDotLS0tLS0tLS0tLS0tLSB8XG58IFNlbnNvciAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgRGVwbG95bWVudCAgICAgIHwgU2Vuc29yIGFuYWx5emVzIGFuZCBtb25pdG9ycyBLdWJlcm5ldGVzIGluIHNlY3VyZWQgY2x1c3RlcnMuIHxcbnwgQ29sbGVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgfCBEYWVtb25TZXQgICAgICAgfCBBbmFseXplcyBhbmQgbW9uaXRvcnMgY29udGFpbmVyIGFjdGl2aXR5IG9uIEt1YmVybmV0ZXMgbm9kZXMufFxufCBBZG1pc3Npb24gQ29udHJvbGxlciAgICAgICAgICAgICB8IERlcGxveW1lbnQgICAgICB8IFZhbGlkYXRpbmdXZWJob29rQ29uZmlndXJhdGlvbiBmb3IgZW5mb3JjaW5nIHBvbGljaWVzIGluIHRoZSBkZXBsb3kgbGlmZWN5Y2xlLiB8XG5cbiMjIyBDZW50cmFsIEN1c3RvbSBSZXNvdXJjZVxuXG5DZW50cmFsIFNlcnZpY2VzIGlzIHRoZSBjb25maWd1cmF0aW9uIHRlbXBsYXRlIGZvciBSSEFDUyBDZW50cmFsIGRlcGxveW1lbnQuIEZvciBhbGwgY3VzdG9taXphdGlvbiBvcHRpb25zLCBwbGVhc2UgdmlzaXQgdGhlIFJIQUNTIGRvY3VtZW50YXRpb24uXG5cbiMjIyBTZWN1cmVkQ2x1c3RlciBDdXN0b20gUmVzb3VyY2VcblxuU2VjdXJlZENsdXN0ZXIgaXMgdGhlIGNvbmZpZ3VyYXRpb24gdGVtcGxhdGUgZm9yIHRoZSBSSEFDUyBTZWN1cmVkIENsdXN0ZXIgc2VydmljZXMuXG5cbiMjIyMgSW5zdGFsbGF0aW9uIFByZXJlcXVpc2l0ZXNcblxuQmVmb3JlIGRlcGxveWluZyBhIFNlY3VyZWRDbHVzdGVyIHJlc291cmNlLCB5b3UgbmVlZCB0byBjcmVhdGUgYSBjbHVzdGVyIGluaXQgYnVuZGxlIHNlY3JldC5cblxuLSAqKlRocm91Z2ggdGhlIFJIQUNTIFVJOioqIFRvIGNyZWF0ZSBhIGNsdXN0ZXIgaW5pdCBidW5kbGUgc2VjcmV0IHRocm91Z2ggdGhlIFJIQUNTIFVJLCBuYXZpZ2F0ZSB0byBgUGxhdGZvcm0gQ29uZmlndXJhdGlvbiBcdTAwM2UgQ2x1c3RlcnNgLCBhbmQgdGhlbiBjbGljayBgTWFuYWdlIFRva2Vuc2AgaW4gdGhlIHRvcC1yaWdodCBjb3JuZXIuIFNlbGVjdCBgQ2x1c3RlciBJbml0IEJ1bmRsZWAsIGFuZCBjbGljayBgR2VuZXJhdGUgQnVuZGxlYC4gU2VsZWN0IGBEb3dubG9hZCBLdWJlcm5ldGVzIHNlY3JldHMgZmlsZWAsIGFuZCBzdG9yZSB0aGUgZmlsZSB1bmRlciBhIG5hbWUgb2YgeW91ciBjaG9pY2UgKGZvciBleGFtcGxlLCBgY2x1c3Rlci1pbml0LXNlY3JldHMueWFtbGApLlxuLSAqKlRocm91Z2ggdGhlIGByb3hjdGxgIENMSToqKiBUbyBjcmVhdGUgYSBjbHVzdGVyIGluaXQgYnVuZGxlIHNlY3JldCB0aHJvdWdoIHRoZSBgcm94Y3RsYCBjb21tYW5kLWxpbmUgaW50ZXJmYWNlLCBydW4gYHJveGN0bCBjZW50cmFsIGluaXQtYnVuZGxlcyBnZW5lcmF0ZSBcdTAwM2NuYW1lXHUwMDNlIC0tb3V0cHV0LXNlY3JldHMgXHUwMDNjZmlsZSBuYW1lXHUwMDNlYC4gQ2hvb3NlIGFueSBgbmFtZWAgYW5kIGBmaWxlIG5hbWVgIHRoYXQgeW91IGxpa2UuXG5cblJ1biBgb2MgcHJvamVjdGAgYW5kIGNoZWNrIHRoYXQgaXQgcmVwb3J0cyB0aGUgY29ycmVjdCBuYW1lc3BhY2Ugd2hlcmUgeW91IGludGVuZCB0byBkZXBsb3kgU2VjdXJlZENsdXN0ZXIuIEluIGNhc2UgeW91IHdhbnQgdG8gaW5zdGFsbCBTZWN1cmVkQ2x1c3RlciB0byBhIGRpZmZlcmVudCBuYW1lc3BhY2UsIHNlbGVjdCBpdCBieSBydW5uaW5nIGBvYyBwcm9qZWN0IFx1MDAzY25hbWVzcGFjZVx1MDAzZWAuXG5UaGVuLCBydW4gYG9jIGNyZWF0ZSAtZiBpbml0LWJ1bmRsZS55YW1sYC4gSWYgeW91IGhhdmUgY2hvc2VuIGEgbmFtZSBvdGhlciB0aGFuIGBpbml0LWJ1bmRsZS55YW1sYCwgc3BlY2lmeSB0aGF0IGZpbGUgbmFtZSBpbnN0ZWFkLlxuXG4jIyMjIFJlcXVpcmVkIEZpZWxkc1xuXG5UaGUgZm9sbG93aW5nIGF0dHJpYnV0ZXMgYXJlIHJlcXVpcmVkIHRvIGJlIHNwZWNpZmllZC4gRm9yIGFsbCBjdXN0b21pemF0aW9uIG9wdGlvbnMsIHBsZWFzZSB2aXNpdCB0aGUgUkhBQ1MgZG9jdW1lbnRhdGlvbi5cblxufCBQYXJhbWV0ZXIgICAgICAgICAgfCBEZXNjcmlwdGlvbiAgICAgfFxufCA6LS0tLS0tLS0tLS0tLS0tLS0gfCA6LS0tLS0tLS0tLS0tLS0gfFxufCBgY2x1c3Rlck5hbWVgICAgICAgfCBUaGUgbmFtZSBnaXZlbiB0byB0aGlzIHNlY3VyZWQgY2x1c3Rlci4gVGhlIGNsdXN0ZXIgd2lsbCBhcHBlYXIgd2l0aCB0aGlzIG5hbWUgaW4gUkhBQ1MgdXNlciBpbnRlcmZhY2UuIHxcbnwgYGNlbnRyYWxFbmRwb2ludGAgIHwgVGhpcyBmaWVsZCBzaG91bGQgc3BlY2lmeSB0aGUgYWRkcmVzcyBvZiB0aGUgQ2VudHJhbCBlbmRwb2ludCwgaW5jbHVkaW5nIHRoZSBwb3J0IG51bWJlci4gYGNlbnRyYWxFbmRwb2ludGAgbWF5IGJlIG9taXR0ZWQgaWYgdGhpcyBTZWN1cmVkQ2x1c3RlciBDdXN0b20gUmVzb3VyY2UgaXMgaW4gdGhlIHNhbWUgY2x1c3RlciBhbmQgbmFtZXNwYWNlIGFzIENlbnRyYWwuIHxcbiIsImRpc3BsYXlOYW1lIjoiQWR2YW5jZWQgQ2x1c3RlciBTZWN1cml0eSBmb3IgS3ViZXJuZXRlcyIsImljb24iOlt7ImJhc2U2NGRhdGEiOiJpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBWHdBQUFGOENBWUFBQURNNXdES0FBQUFDWEJJV1hNQUFHNjZBQUJ1dWdIVzNyRVhBQUFnQUVsRVFWUjRuTzNkdjQ4Y1JmNy84VmVmTHZiTzU1UGIyK1MyZG9peDJDYmxkSGREYU90T25oQUxncmtJQ1FLV0FDUm5leElJc3B2VjU0UkR4aUJJbVVVNFprWTRaOWJPdjh6NEg2aHZVTjNyMldWL2RGZFhkL1dQNTBNcTdaMlo3cW5aSDYrcGVWZDFkV1NNRVFDZysvNFV1Z01BZ0hvUStBRFFFd1ErQVBRRWdROEFQVUhnQTBCUEVQZ0EwQk1FUGdEMEJJRVBBRDN4NTlBZHdGbFJGQ1doK3dCNHRETEdyRUozQWxiRWxiYlZpS0lvbGhSTEdrb2FiSDJWcFAwZ25RS2E1VGo5dXBhMDJQckttMFJGQ0h3UDBsSDVjS3Z0QmUwUTBBMUwyVGVBaGFTRk1XWWV0anZ0UitBWEZFWFJRRkt5MVFoM29ENUxTZk9zR1dQV1FYdlRNZ1IrRGxFVURTV04wa2JBQTgyeGxEU1RORFBHTEVKM3B1a0kvRXVrSVQrV0RmbmRzTDBCa01PSmJQaFBDZitMRWZoYjBvbldjZG9JZWFDOVRpUk5aY04vRmJZcnpVSGdTNHFpYUN3YjhxeWVBYnJuV0RiNHA2RTdFbHB2QXorZGZKMkkwVHpRRjltby83Q3ZrNzI5Qy95MGJKTUYvVTdJdmdBSVlxTlh3YjhLMjVWNjlTYncwNkEva1BRZ2FFY0FOTW1ScElPK0JIL25BMytyZFBOeDZMNEFhS3hQMUlOU1Q2Y0RQNHFpaWV5b250SU5nT3RzWkVmN2g2RTdVcFZPQm42NjFjRlVUTVlDS081RTByaUxXemwwS3ZEVDhzMVUwdDhEZHdWQSt6MlJEZjdPbEhrNnN4OStXcjVaaWJBSDRNZmZKYTNTYk9tRTFvL3cwMUg5VEZ3MEJhQTZ4NUpHYlIvdHQzcUVIMFhSU0haVVQ5Z0RxTksrN0doL0ZMb2paYlF5OEtNb0drUlJkQ2pwRzdFQ0IwQTlkaVI5RTBYUllWcFphSjNXbFhUU0M2aG1ZcHRpQU9Fc1pVczhxOUFkS2FKVkkvejA0OVJDaEQyQXNQWWtMZHBXNG1sTjRLY3o1WlJ3QURSRlZ1SnB6U3FlVnBSMG9paWFpajF3QURUWGtURm1ITG9UMTJsMDRMUGtFa0NMTkg3cFptTURQdzM3dWFqWEEyaVBwYVNrcWFIZnlCcCt1aEpuTHNJZVFMdnNTWm8zZGRsbTQwYjQ2YzNENTJKeUZrQjdiV1JIK28yNm1YcWpSdmlFUFlDTzJKRWQ2UTlEZDJSYlkwYjQ2VWVnbFFoN0FOMnhrUlEzcGFiZmlCSCsxZ1F0WVErZ1M3S1JmaU5xK3NFRG45VTRBRHF1TVJPNXdRTmY3SXNEb1B2MlpMTXVxS0NCbjE1QnkwVlZBUHBnUDgyOFlJSUZmcnIvQk5zbEFPaVRCeUgzM2dteVNpZmRZZTZiMnA4WUFKcmhIV05NN1NXZTJnTS92WXAySVZia0FPaXZqYVJoM2Z2cDExclMyZG9NamJBSDBHYzdrbVoxcjl5cHU0Wi9JRmJrQUlCa3MvQ2d6aWVzcmFSRDNSNEFMbFJiUGIrV3dHZmJCQUM0VkczYkw5UlYwcUZ1RHdBWDIxRk5GMlZWSHZqcG1sTXVyZ0tBeSszWHNUNi8wcElPcFJ3QXlLM3kwazdWSS95cENIc0F5R05ITmpNclU5a0lQNHFpUk5LUGxad2NBTHJyTFdQTXZJb1RWeG40SzBtN2xad2NBTHJyeEJnVFYzSGlTa282NmVRRFlROEF4ZTFXTllIcmZZVFBSQzBBbEZiSkJHNFZJL3lKQ0hzQUtHTkhOa3U5OGpyQ1QzZkMvTTNiQ1FHZzMxN3p1YU9tN3hIK2dlZnpBVUNmSGZnOG1iY1JQcU43QUtpRXQxRyt6eEYrc050MkFVQ0hlY3RXTHlOOFZ1WUFRR1c4cmRqeE5jSm5aUTRBVk1QYmloMWZJL3lWdU5BS0FLcmk1ZXJiMGlQOEtJckdJdXdCb0VxN2FkYVc0cU9rVTdvVEFJQnJqY3Vlb0ZSSmg2V1lBRkNyVWtzMHk0N3d4eVdQQndEa055NXpjTmtSL2tyVTd3R2dMcVVtYjUxSCtGRVVEVVhZQTBDZGR0UHNkVkttcERNdWNTd0F3TTNZOVVEbmtnN2xIQUFJd3JtczR6VENwNXdEQU1FNGwzVmNTem9qeCtNQUFPVTVaVENCRHdEdDQ1VEJoV3Y0NmM2WXY3czhHUURBbS84cHVvT215d2cvY1RnR0FPQlhVdlFBQWg4QTJpa3BlZ0NCRHdEdGxCUTl3S1dHNytjbXVBQ0FVb3d4VVpISEZ4cmhSMUdVRk9vTkFLQXlSVE81YUVtbjBNa0JBSlVxZEFGVzBjQ1BDejRlQUZDZFNnUGZlWmMyQUlCM2hUSzUwS1F0RTdZQTBDeEZKbTV6ai9EVDJ4a0NBQnFrU0RZWEtlbmtQaWtBb0RaeDNnY1dDWHpxOXdEUVBMbXp1VWpnRHh3NkFnQ29WdTVzWm9RUEFPM0dDQjhBZXFLU0VUNEFvTVZ5cjhObkRUNjZJRW1TTS85L1BwOEg2UWZnVTk2MStIK3V1aU5BS01QaDhMUWxTYUs5dmIwTEg3ZGNMaldmejdWWUxFNGIwRVdNOE5FSmc4RkFTWktjaHZ0d09OVE96bzdUdVRhYmpSYUx4ZW1id0h3KzEzcGQ2RTV5UUszeWp2QUpmTFJTa2lTbndUNGNEclc3dTF2cDg1MmNuSnlPL3Vmek9hVWdOQXFCajg3WUxzc01oOE5MU3pOMVd5NlhaejRKVUFwQ0tBUStXaW1PNHpQaHZyKy9IN3BMaFJ3Zkg1OTVFMWl0VnFHN2hCNGc4TkY0ZzhIZ1RMZ25TZUpjZDIrcXpXWnpaaTVnc1Znd0h3RHZDSHcwem5iTnZVbWxtYnBscGFEdE9RR2dEQUlmUWNWeGZDYmcyMWFhcVZ0V0NzcmVBQ2dGb1FnQ0g3WHh1U1FTRmt0RFVRU0JqOHFjRC9lcWwwVEN5cGFHYnI4SkFCS0JEMC95WHEyS01MaEtHQktCRHdmWmtzZ3MzS203dDlQeDhmR1pOd0htQTdxUHdNZVZ6aStKN0V0cDV1VGs1TFFVa2lSSmIxN3o5b1F3UzBPN2g4REhHZWZEdlErbG1lMkp6OHVDYnZ1TnIwOFR6dHRMUTdQdkRkcUx3Tyt4dGwrdDZzclgwc2ErTGlubEt1SDJJdkI3Z2hGcVBTTlVQaUZSQ21veUFyK2p6bTlGUUEwNmpMN1BnVkFLYWhZQ3YyTkdvNUVPRHc5N0VTcHRYV1hTeDFWT0p5Y25ta3dtbXMxbW9idlNhd1IraDB5blV6MTQ4Q0IwTnlyUjlTMkdtN3ExczI5SFIwY2FqOGVodTlGYkJINUhqRVlqZmZQTk42Rzc0UVZYaWxwZHZWTDVuWGZlWWFRZkNJSGZFYXZWcXBXQndGNHcrWFZsTDZLVGt4UEZjUnk2RzcxRTRIZkFjRGpVTDcvOEVyb2J1YkRibzE5dFhScjYrdXV2ZDY0czF3WjVBLy9QVlhjRTdwbzZXdHBlcWRIbjBreVZWcXVWcHRQcG1YL2JmZ05vNmdxdHdXQVF1Z3U0QW9HUEszSEhwdVk0Zi9QMFB0d3hESDRSK0EwV0lsaTUyckk5MXV2MUg5NEUrbnFWTmZJaDhIdXM2MHNpKzJpMVdtbTFXcDFaTGRPWHBhRzRIb0hmRStldlZxWHUzaC9aejMxN1RtQjdLNDR1TFEzRjFRajhEanEvSkpMU0RNNjdyQlRVOXFXaHVJWXhKbGVUWkdqMXRpUkpURkhqOFRoNHYybmRhT1B4dVBEdlg1SWt3ZnZkeDVZM3gvOGtkQW9qZWZqQzcxTDNFUGdBMEJNRVBnRDBCSUVQQUQxQjRBTkFUeEQ0QU5BVEJENEE5QVNCRHdBOVFlQURRRThRK0FEUUV3UStBUFFFZ1E4QVBVSGdBMEJQRVBnQTBCTUVQZ0QwQklFUEFEM0JIYS9RRzNmU2RqdjlLa2x2WFBMWWw1SitsYlJKdno1THZ6NnZ1STlBbFFoOGROWXRTWGNsdloxK3ZWSGcyQnQ2OVdidzl0YS92NUQwczZRZkpIM3ZvWTlBblFoOGRNNTkyWkIrKzdvSE9yZ3A2VjdhWHNxRy9tUFpOd0dnNlFoOGRNS09wSGRsdy81bVRjOTVRNi9DLzZsczhIOWQwM01ETHBpMFJlczlsTFNVOUlIcUMvdnozcEQwdWFTZlpNdEhRQk1SK0dpdHU3SkIvNm1LMWVlcmRGdlN0NUwrS3p1SEFEUUpnWS9XMlpIMG1XeXdoaHJSWCtkdDJkSCsvZEFkQWJZUStHaVZPNUsrazYzWE45ME4yVExQRjdKdlVrQm9CRDVhNHkreVlYODdkRWNLdWlmYmIwbzhDSTNBUnl2Y2wvUi9hazZ0dnFqYnNpV2VPOWM5RUtnUWdZL0d1eTliR21tN0c3SWpmVUlmb1JENGFMU3VoSDJHMEVkSVhIaUZ4cW9qN0xNOWM4NjdiSThkSDdMUWYxUHN6WU42RWZob3BEdXlTeTk5ZXlhN0hjSlR2ZG9jN1RLMzBuNjhJVHRoN0hNSjZBM1p0ZnAvdmFZUGdFOEVQaHBuUnpZTWZVM1F2cEQwbFd6UUZ4bFJQMC9iOTVJK2xBMy9kMlhEMzBmZmJzdStxYjNuNFZ4QUh0VHcwVGhmeU05bytvV2s5eVh0U2ZwUzVjc252OHFHODU2a1I3TGxvTEx1aVl1elVCOENINDN5Ri9uWjVmS1JiSTI4aXMzTU5sdm5mK3JoZkorSk5mcW9CNEdQNE83STdvdHpWM1owWDhZTFNmdXlnVngxYmZ5NWJBMytvNUxudWFIeXJ4dklneG8rYW5OWGRnTDBqdXlJMXZjVnM4OFVaaEwwUzluOThMK1RlMjMvRGRudkQvdnFvMG9FUGlwMVY3Wk83V3VpOHpLUFpTZFdRNjE0K1ZYMnphWk02SDhoT3o4QVZJV1NEaXB4WDNicjRtOWxBNy9Lc0g4bU81a2FlbmxqRnZxdWs3azN4UVF1cWtYZ3c2c3M2RDlYUFZzWFoyV2Nwc2hDMzlVSHZqb0NYSURBaHhlM1pNc1pkUVc5WkVmU1RSalpuL2VyM0NkeWI0bzdacUU2QkQ1S3V5KzdFMlNWMnhGYzVKRXUzaGFoQ2I2VTlJUGpzZmQ4ZGdUWVF1Q2psQzlrUi9WMWIxdjhWRFpVbSt4RHVkWHo3NGticHFBYUJENmM3TWlXY0VLTlJoOEZldDRpbnN2OVRla3ZQanNDcEFoOEZKYUZmZDBsbk14VHRXZTkrbGR5RytYN3VOb1lPSS9BUjJHaGJ6UFlodEY5WmlPMzdSMll1RVVWQ0h3VThvWENodjFqdFdkMG4vbks0WmdiNGlZcDhJL0FSMjRQRlhZRnlXTzFjeXZoNTdMWEN4UkY0TU0zdGxaQUxuZFV6VVZCejJUTEh0bk5TTzdJemhGc3p3LzhJRHRLYnR2SWZ0djNLdjdKS09RbktYUVRnWTljdnBDZnBaY3ZaY1B2aC9Sclg3aHNvOHdJSDc0UitMaldmWlVmYmI2VVhhTDRsWnAzWld3ZFhENmRzQllmdmxIRHg1VjJWUDdlc2s5bGJ4WlN4eDcxVGZhaTRPTnZpeHVqd0M4Q0gxZDZWK1ZLT1k5a054TXJlM3ZCTG5ENUhpeGtsOEd5VEJNK0VQaTRVcG50ZXQ5WHU5Yk1OOVVic3R0TWZ5SEtQQ2lId01lbDdzdDk1OHVQVk0zOVpQdnNudXpXMDJ5N0FGY0VQaTdsZW5uL0Qycit4bVp0ZFVQUy82bjh2QXI2aWNESGhYYmtGdmpaSHZXbzFydml4dWNvanNESGhWd25DVVBlVjdadjdvblFSekVFUGk3a3NoUG1DMUczdjBvVlZ3cmZrOTN5QXNpRHdNZUZYRWI0aFAzVkhsZDAzay9Gc2sza1ErRGpRaTVYMWxZVmFGM3hYRzQ3WitiQmtrM2tRZURqRDF5dTdud2hMcTdLNDBOVjg4WjRVM1lpRjdnS2dZOC9jQW44cHQ1TXZJbmVrL1EzdWQvay9ESVB4U2dmVnlQdzRRV0JYOHpQa3Y0aDZYOGxEU1g5VStWSC9qZkVLQjlYSS9DQndKN0xiaFg5bm16NHUyeWxuQ216RlFhNmo4QUhHdVM1N0daenJxUDltMkxyQlZ5T3dBY2E2RDI1aDc3TE5SVG9Cd0lmdmJBak82bjVuYVQvbDdidjFPeUp6ZzlWZkE5OWlUWDV1QnlCRHkrYWZEdSsrN0s3VEg2cXM2UGZOOUovVzZxWnRlK04zTGFYNWw2NHVBeUJqejl3V1UvZnhNQy9LK2tuU1ovcjZwdTQzRWdmODVPYU56citXb3p5NFErQmp6OXdDZnliYWs3bzM1Szk4dlJiRlJ2dDN0YXJHNDAwNmRhQ1ZlekJnMzRpOEhFaGw2V0I5N3ozb3BnZFNSL0lqdFRMOU9WZWVvNFAxSXo2UGxjd3d4Y0NIeGR5dVpEcXZzSUY1SDI5Q3VreTkrRE4zTkNyTjQ4bTF2Y0JGd1ErTHVReXdnOXhwZWNkMmRVMm44djlkb3hYdVptZSt6czFwMlFGdUNMd2NhSHZaZTllVmRSRDFWUC8zcEd0dFIrcm5uWG5iNlRQRldKWHlpYVVsZEFOQkQ0dTliM0RNVGNrL2RkM1I4NzVRSFlwWllnNWcreEc0aC9VK0p4Y09RdGZDSHhjeXZWS3o5dXE1dFo3ZC9VcWJIM1U2VjFsOWYybHFsLytlRmR1cFNwVzl1QWlCRDR1OWJQYzFvQkxmdSszZWt1Mmh2NnRxcW5UdTdvcDI2ZnZWRjBaeStXVGhPdlBETjFINE9OS0xsZDZackxRZDYxQjcwajZUTkpDemQ0ZjVnM1pQbjRtdi9YMmgzSjczWXp1Y1JrQ0gxZHl2ZEl6YzA5dUsxd2V5cFpNMnJTLys3dXlmZlp4VS9IN3N0cyt1UEI5WXhWMEI0R1BhNzFYOHZqYnNxR2ZkL1Q3aFd6WWhhelR1N29oMjNmWGNsYjJxZVp6eCtOZnltMnlIZjFBNE9OYVA2djhxUEdHYkpCZDU3NnFYWDN6VlBZbUkyVnZOSEtkZXlwMndWYTJtK2RQS3ZlcGhyREhWUWg4NVBLZTNOYmxiN3VuNjBmNVZTMTNmQ0Y3SDltL3ltNVZrTjFvNUcrcWJwSXo3MnU1SXh2MG42cjhwSFNaT1JkMEg0R1BYRGF5OTJBdDY2cGF2dXNTeEt1OGxQU1JwRDFkUEpuNWMvcmZQbEw1TjdUemJ1cjZaWnZaQ2lRZnIvdXgySGNIVnlQd2tkdlBzc0hZRm85bHcvekxISS85TW4xczJSdUpGL1daL014VnZKUzlZUXB3RlFJZmhYeXAra094cUtlUzltWExVSnNDeDIzU1kvWlZiWDAvYzB2UzI1N09WZlMxb3A4SWZCUlc1bjZyVlpZY1hrajZwMnh0M21XM3o4eXY2VG4rcVdvdll2SjFzZFpqTVZtTGZBaDhPSEVKL2FwcXpDOWxKeXYzNURmNHZrL1ArVWorNi91K1BGUDVaYlBvRHdJZnp0NlQ5SDdPeDJhaDdOc1BrdDZzNk55WlIrbHpOTzJDcG1leW4wU0F2QWo4amhrT2g3VSszOWV5TmUrclNoOHY5R281cEc5ZlZYVGU4NTZueitWVG1iTFREN0xmMHlycjlrbVNWSGgyaEVEZ2Q4eGdNS2o5T1grVkhRRi9KRHZaK1RKdFQyVS9BYnlwY3VIV1ZSdTV6WVU4a2wwaXl5UXRpdnB6NkE2Z0d6YXlLM2p5TElIRUt4L0s3bmVmWjJubUM5a3lHcHVqd1JVamZDQ2dqV3hwNXRrVmoza2grMG5wc292SGdMd1k0WGRNaUpJT3lzbEtZdmRsMStYdmJQMzdNOWw1a2hEaU9BNzB6S2dLZ2Q5Z2k4V2k4REYxVDlyQ242OFZMdHd2NGhMNExyK3pxQThsblFaYnI5ZWh1d0FVd3U5c3N4SDRIY1BIY1BqQ3A4WHVJZkFiYnJsY0Zucjg3dTV1UlQxQjMrenNGTHRoWTlIZlZkU1B3Rzg0bDQvSVROeWlMSmRQaXBSem1vL0FiN2pWYWxYNEdENktveXlYd0hmNVhVVzlDUHlHYy9ram9vNlBzbHdHRFFSKzh4SDREZWV5ekkzQVIxa3N5ZXdtQXIvaFhPcWliSHFGc2x4RytOVHdtNC9BYjdqNWZGNzRHRWI0S01zbDhGMStWMUV2QXI4RlRrNU9DajErZDNlM055dDEzdFdyclFpcXRKTStWeC9FY1Z4NFNXYlIzMUdFUWVDM2dFdHR0QzlsbmJjbExTVTlyUEE1SHFiUDRlditzMDNIaEcxM0VmZ3R3SjQ2VjdzaDZWUFpVTDdyOGJ4MzAzTitxbnpiRjNlRnkyQ0JjazQ3RVBndHdBZy9uNXVTdnBYMG5jcmRJUHhXZW81djAzUDJqY3RnZ1JVNjdSQVpZL0k5TUlyeVBSRGVEUVlEL2Y3Nzc0V1BpNktvZ3Q1VTU2NXN5UHJ5U1BhMmhIbnZESlhWNlQvdzJJZS9xWDE3Mk9mTmhHMnZ2ZllhWloyQWpERzUvdGdaNGJmQWVyMTJtaFRyNHloLzJ3ZXlKWm43T1I1N1AzMnN6N0J2bzlGb1ZQaVlrNU1Ud3I0bENQeVdjS21SdXZ6eGh2U3o3TDF3ZmJvaDZYTkpQK25pK3Y3ZDlMOTlMdjkxK3BkcTMramVaWkJBT2FjOUNQeVdjQW44Tm83d0gxVjAzdHV5NWFML3l0Ym9iNlgvKzl2MHYxV2hxdGRTSmRiZmR4czEvSmFJNDFpLy9mWmI0ZVBhV0Z2OVF0SzlDcytmZllxb2N1WE5ZOWtianJjTjlmdDJvb2JmTWF2VnlxbU8zN2F5am1TRDhpUDVMKzlrYnFpNnNIOHAyL2MyaHIxVWZFOTc2dmZ0UXVDM3lHdzJLM3pNZUR6MjM1RWFmQ2xwVDNhazNCYVBaZnY4WmVpT2xGQzBIazg1cDEwSS9CWngrZVBhMjl0cjdkNDZHOW1SOHI2a3A0SDdjcFduc24xOFQvbVhnRGJWZERxdDlQRUlpOEJ2a2Rsc3BzMm1lS1Mwc2F5ejdWZEpmNVgwdnFRWGdmdXk3WVZzbi80cTI4Y3VtTS9uT2pvNnl2WFlvNk1qUnZndFErQzNqRXRaWnpLWlZOQ1QrbjB0NlUzWjFTOVYxZmZ6ZUpuMjRjMjBUMTB6SG8rdkRmMmpvNlBXbGd2N2pNQnZHWmZBMzkzZGJlVVN6WXRzOUNwc1E5VDNIK3ZWbTA3Ynl6ZFhHWS9IZXVlZGQvVGt5Wk16Ly83a3lSTzk5ZFpiaEgxTHNTeXpoZGJyZGVIdGE3czZJcnNyNlROVnQ1WSs4MHpTaDJyZmhWVG9CNVpsZHBqTEtQL0Jnd2VkM0NQL1o5a1I5L3VxcHN6ek1qMzNteUxzMFg0RWZndTVyb3pvU2kzL0lsL0xMb24wZVhYcm8vU2NYYXpUbzU4bzZiVFVhclhTN3U1dW9XTTJtNDNpT083OHZVZHZ5Wlo1WEc5WThvTnMrZWE1dHg0QjFhS2swM0dIaDRlRmo5bloyZW4wS0QvelhOSS9aTGNtTHJLTTgwVjZ6RDlFMktPYkdPRzNsT3NlK1gwWjVXOTdLTHZ0OFdYYktXVExMTnQ4aFN6NmpSRit4NjNYNjl3WHlHenJ5eWgvVzdaTnd5UFoxVGFaWjNwVnB5ZnMwUWVNOEZ2TWRRZk5Qbzd5Z1M1amhOOERxOVZLeDhmSGhZL2IyZGx4bWdNQTBHNk04RnN1U1JMOStPT1BUc2UrL3ZycjNLMEk2QUJHK0QweG44K2RSdm1TMjBvZkFPMUY0SGZBd2NHQjAzSDcrL3U5bThBRitveVNUa2ZNNTNQdDcrOFhQbTZ6MldnNEhITFhJcURGOHBaMENQeU9HQTZIK3VXWFg1eU9QVDQrN3N4dW1sMHdHbzJVSkluVERjWHpXcTFXbXMvbm1zMW1yTmJxZ0x5QkwyTk1yaWJKMEpyZHB0T3BjWFZ3Y0JDOC8zMXZ3K0hRTEJZTDU1K2hpL1Y2YmNiamNmRFhUaXZYVE40Y3ovM0FCcndvMnRWdE1CaVk5WHJ0L01lZkpFbncxOURYTmh3T1MvM3N5aUwwMjkwTWdkL1BOcGxNblAvbzErdTFHUXdHd1Y5REg5dDhQbmYrdWZrU3gzSHc3d1BOclJrQ3Y3K3RURmxnc1ZnRTczL2YybkE0ZFA1NStYUjRlQmo4ZTBGemF5Wm5qck1zczRQSzNObHFiMi9QZWI5OXVHbktUZWFadU84K0FyK0RGb3VGUHZua0UrZmpIeng0NEx5MkgrMjF0N2NYdWd1b0dJSGZVUWNIQjFvdWw4N0hmL3p4eDUyOEJ5N1Fad1IraDVVTjdQLzg1eitFZmcyNDZBMjF5VnZzVndNbUptakZXNWxWT3htVzdGWGJ5aTZuOVNuMDk0TG0xZ3lyZEdoWm04MW1wWU9BMEsrMmpjZmowajhqSDBKL0gyaHV6UkQ0dEt3TkJnTXZWM0FTK3RXMkpvUis2TzhCemEwWkFwKzIzWHhkeVRtZFRvTy9saTYzSkVtOGZDSnpGZnIxMDl5YUlmQnA1OXRvTlBJU0NyUFpqQ3R5QS84Y3E2cjVoMzV0TkxkbUNIemFSYzFYMldDeFdKamhjQmo4OWZTdEhSd2NlUG41WFNiMDY2TzVOVVBnMHk1cmg0ZUhYc0podlY2YjBXZ1UvUFgwb1EwR2cxcjIyd245T21sdXpSRDR0S3RhbWEyVXo1dE9wNVI0S214Smt0UzJiRFAwYTZXNU5VUGcwNjVyUGtOL3RWcXh2YkxuTmhnTXZIMGF5eXYwYTZhNU5VUGcwL0kwbjZGdmpOMXhrZEYrK1RZYWpjeHF0Zkw2czhrajlPdW11VFZENE5QeU50K2h6MTJVM0ZzY3h5ekxwQlZ1aHNDbkZXbStROThZWStiek9XV2VuRzB3R0ZTK0FpZVAwTjhIbWxzekJENnRhS3VxWGp5ZFRybWIwaFh0NE9DQXZYUm9wWm9oOEdrdXJjckwrd24rVjIwd0dKakpaRkpablg2MVdqbWRPL1QzaGViV0RJRlBjMjFWTHdQc2M2a25qdVBLUi9TTHhjSjUzWDdvN3cvTnJSa0NuMWFteFhIc1pjTzFxNnhXS3pPWlRIcXhxaWRKa2tybVNjN2J2aTh0Z2QrZlpnaDhXdGsyR0F4cUNTbGpiTG1uYTFmdFpxUDVPcFpYWG5UVk00SGZuMllJZkpxdk5oNlBhNXRVWEsvWHJRNy9PSTdOWkRLcC9OUFJ0c1ZpY2VIY0NJSGZuMllJZkpyUFZrZUo1N3oxZW0xbXM1bVpUQ2FOM2FodE1CaVkwV2hrRGc4UGcxd29kWEJ3Y0duZkNQeGV0ZGpreVBISS9veXZGMFZSdmdlaTB3NE9EdlR4eHg4SGVlN05acVA1Zks3RlluSDZkYjFlMTlxSDRYQjQycElrMGQ3ZVhxM1BuMWt1bHhxUHgxb3NGcGMrWmo2ZmEzOS92OUI1b3lncTJ6VUVZSXpKOVlNajhGRllITWVhVHFlRnc2UUtKeWNuV3ExV21zL25rblQ2dGN5YndYQTQxR0F3VUJ6SGl1Tll3K0ZRY1J3SEMvZHRtODFHaDRlSE9qZzR1UGF4Qkg1L0VQaW8zSGc4MXVIaG9YWjJka0ozNVVyWm04SlZtdkRtZFowblQ1NW9NcGxjKzFveVJRTi91VnhxT0J3NjlnNGg1UTE4YXZpMFVxMHBXd0owbWV0T3BKUEpwTkR6YkMvcHBMV3JHU1p0YVhXMk9JNXJXOExaRjZ2VnF0UW1kSVBCSVBmcXF2VjZ6VlhRTFc2R3dLZUZhQVIvZVdXRGZydmx2WGs5dTV1MnU1a0tBbjhlK2tYUjJ0TUkvdUo4QnYxMkd3NkhseTRaNWNZMW5XaHprelBIaTB6YXppWHQ1M293a0lyaldPUHhXSlBKcFBHVHU2RWNIeC9yOFBCUXM5bXMwdWNaalVabkptVVhpMFhsejRsYUhCdGprbHlQelB2T0lHbW04TzlrdEJhMzhYaGMrOFZiVGJWZXI4M2g0U0YxYzVxUE5qTVZsSFFPR3ZEQ2FCMW9jUndIdXpJMXRObHNScjJjNXJzZG1Bb0NmOUtBRjBicldCc09oNTBQL3l6ays3QXJLQzFJbTVnS2F2aUpwQjl6UFJod01Cd09OUnFObENSSkt5NkV1c3pKeVlubTg3bG1zNW5tODNudDJ6K2dkOTR5eHN6elBMQkk0TWVTZm5QdUVsREFZREJRa2lTbmU5WTArUTBnQy9qdFBYNkFHcjFtakZubGVXRHV3SmZZWGdGaGJXOWNsclc2Vi80c2wwdXRWcXVnRzdnQjIwemViUlZVUFBBWGtzTHZJQVZzU1pKRWc4SGdkTWxodHZtWlpEOHA1Tm4wYkxQWm5CbVpaMEcrV3EzT05LQmhsc2FZM0JzZ0ZRMzhxYVFIRHAwQ0FQaDNaSXdaNTMzd253cWVuT0lrQURSSG9Vd204QUdndlFwbGNxR1Nqc1RFTFFBMFJaRUpXNm40Q0YrU2xnN0hBQUQ4S3B6RkxvRS9kemdHQU9EWHZPZ0JCRDRBdE5PODZBRXVOZnlCcE4rTFBoRUF3S3YvTWNZVXV1cXY4QWcvZlFMcStBQVF6ckpvMkV0dUpSM0o3bzBQQUFqREtZTUpmQUJvSDZjTUxsekRQejB3aWxhU2RwME9CZ0M0T2pIR3hDNEh1bzd3SlViNUFCQ0NjL2FXQ2Z4cGlXTUJBRzZtcmdjNmwzUWt5am9BVURQbmNvNVVib1F2TWNvSGdEcE55eHhjZG9RZmk5c2VBa0JkY3QvTzhDS2xSdmpwRXgrWE9RY0FJSmZqTW1FdmxTL3BTSlIxQUtBTzA3SW5LRlhTT1QwSms3Y0FVS1ZTazdVWkh5TjhpVkUrQUZScDZ1TWt2a2I0QTBrclNUdWxUd1lBMkxhUkZMdHNsbmFlbHhGKzJwR3BqM01CQU02WStnaDd5ZE1JWDJLSkpnQlVwTlJTekcyK2F2alpFczBqWCtjREFPaklWOWhMSGtmNEVxTjhBUERNMitoZThqakNsMDVIK1ovNFBDY0E5TlFuUHNOZThqekNsMWl4QXdBZWVGdVpzODNyQ0Y4NlhiRno0UHU4QU5BakI3N0RYcXBnaEg5NllxNitCUUFYWHE2cXZZajNFZjZXY1lYbkJvQ3VHbGQxNHNvQzN4Z3psL1NrcXZNRFFBYzlTYk96RXBXVmRDUW1jQUdnZ0VvbWFyZFZXZEpoQWhjQThxdGtvblpicFNQODB5ZUpvcm1rL2NxZkNBRGE2ZGdZazFUOUpIVUZQcVVkQUxoWTVhV2NUS1VsblV6NlFzWjFQQmNBdE15NGpyQ1hhZ3A4U1RMR3pDVDl1NjduQTRBVytIZWFqYldvcGFSeittUzJ0RE9YdEZmYmt3SkFNeTBsSlhXTjdxV2FBMTg2M1ZGekllcjVBUHBySTJub2UzTzA2OVJXMHNta0wzQmM5L01DUUlPTTZ3NTdLVURnUzZmMS9IK0ZlRzRBQ094ZmRkYnR0OVZlMGpuejVGRTBsZlFnV0FjQW9GNUh4cGh4cUNjUEd2Z1NGMlVCNkkxYUxxNjZTcENTemprajJkbHFBT2lxcFd6V0JSVTg4Tk1sU1lrSWZRRGRWUHZ5eThzRUwrbGsySDRCUUFmVnRtMUNIc0ZIK0ptdGtmNG1jRmNBd0llTkdqS3l6elFtOENYSkdMTVFvUStnL2JLd1g0VHV5TFpHQmI1MEd2cXhxT2tEYUtlbGJCbW5VV0V2TlREd0pTWnlBYlJXWXlab0w5TEl3SmZPaFA1eDRLNEFRQjdIYW5EWVN3ME9mTW1HZm5xaHdsSG92Z0RBRlk2TU1ZME9lNm5oZ1o5SkwwVm03eDBBVGZTdmtOc2xGTkdZZGZoNVJGRTBralFWYS9VQmhMZVIzZlV5eUVab0xsb1YrTkxwZnZvemNSTVZBT0VzSlkxQ2JIRmNSaXRLT3R2U2IzQWlicGNJSUl4L3kwN09ya0ozcEtqV2pmQzNVZUlCVUtQV2xYRE9hM1hnUzZkNzhNekVGc3NBcW5Nc1c4SnA5Q3FjNjdTdXBIUGUxdExOZjRrdEdRRDR0WkZkaGRQNEpaZDV0SDZFdnkwZDdVOGwvVDF3VndDMDN4UFpFazdyZ3o3VHFjRFBSRkdVeUFiL2J0aWVBR2loRTltZ240ZnVpRyt0TCtsY3hCZ3pOOGJFb3N3RElMK3NmQk4zTWV5bGpvN3d0NlZsbm9ta2owUDNCVUJqZlNMcHNFdmxtNHQwUHZBejZRVmJCNUllQk8wSWdDWTVrblRReGpYMUxub1QrSmswK0NlU3htTDlQdEJIRzlrNXZzTytCSDJtZDRHZjJTcjFqSFgzMENrQUFBRHZTVVJCVk1Ya0x0QUhKM29WOUowdTNWeW10NEcvTFlxaXNXendjL0VXMEQzSGtxYkdtR25vam9SRzRHOUp5ejFqTWVvSDJpNGJ6VS83VnJhNUNvRi9pU2lLaHJMQlB4TGhEN1RCaWV3Mks5TW0zaysyQ1FqOEhOTHdINldOYlptQjVsaktodnlNa0w4ZWdWOVFPdG1iYkRYZUFJRDZMQ1hOczliWHlWZFhCTDRINlZZT3c2M0dtd0JRM2xMU0ltdGR2ZnExVGdSK1JkSUo0RmoyRFdDdzlWVmlOUkFnMmRVemtyU1dEZlhzNjRxSjFtb1ErQTJ5OVNZQmRNV0Nza3R6RVBnQTBCT2QzQzBUQVBCSEJENEE5QVNCRHdBOVFlQURRRThRK0FEUUV3UStBUFFFZ1E4QVBVSGdBMEJQL0g5ZjU2TkxPRVZiYmdBQUFBQkpSVTVFcmtKZ2dnPT0iLCJtZWRpYXR5cGUiOiJpbWFnZS9wbmcifV0sImluc3RhbGwiOnsic3BlYyI6eyJjbHVzdGVyUGVybWlzc2lvbnMiOlt7InJ1bGVzIjpbeyJhcGlHcm91cHMiOlsiKiJdLCJyZXNvdXJjZXMiOlsiKiJdLCJ2ZXJicyI6WyIqIl19LHsiYXBpR3JvdXBzIjpbInBsYXRmb3JtLnN0YWNrcm94LmlvIl0sInJlc291cmNlcyI6WyJjZW50cmFscyIsInNlY3VyZWRjbHVzdGVycyJdLCJ2ZXJicyI6WyJjcmVhdGUiLCJkZWxldGUiLCJnZXQiLCJsaXN0IiwicGF0Y2giLCJ1cGRhdGUiLCJ3YXRjaCJdfSx7ImFwaUdyb3VwcyI6WyJwbGF0Zm9ybS5zdGFja3JveC5pbyJdLCJyZXNvdXJjZXMiOlsiY2VudHJhbHMvZmluYWxpemVycyIsInNlY3VyZWRjbHVzdGVycy9maW5hbGl6ZXJzIl0sInZlcmJzIjpbInVwZGF0ZSJdfSx7ImFwaUdyb3VwcyI6WyJwbGF0Zm9ybS5zdGFja3JveC5pbyJdLCJyZXNvdXJjZXMiOlsiY2VudHJhbHMvc3RhdHVzIiwic2VjdXJlZGNsdXN0ZXJzL3N0YXR1cyJdLCJ2ZXJicyI6WyJnZXQiLCJwYXRjaCIsInVwZGF0ZSJdfSx7ImFwaUdyb3VwcyI6WyJhdXRoZW50aWNhdGlvbi5rOHMuaW8iXSwicmVzb3VyY2VzIjpbInRva2VucmV2aWV3cyJdLCJ2ZXJicyI6WyJjcmVhdGUiXX0seyJhcGlHcm91cHMiOlsiYXV0aG9yaXphdGlvbi5rOHMuaW8iXSwicmVzb3VyY2VzIjpbInN1YmplY3RhY2Nlc3NyZXZpZXdzIl0sInZlcmJzIjpbImNyZWF0ZSJdfV0sInNlcnZpY2VBY2NvdW50TmFtZSI6InJoYWNzLW9wZXJhdG9yLWNvbnRyb2xsZXItbWFuYWdlciJ9XSwiZGVwbG95bWVudHMiOlt7ImxhYmVsIjp7ImFwcCI6InJoYWNzLW9wZXJhdG9yIiwiY29udHJvbC1wbGFuZSI6ImNvbnRyb2xsZXItbWFuYWdlciJ9LCJuYW1lIjoicmhhY3Mtb3BlcmF0b3ItY29udHJvbGxlci1tYW5hZ2VyIiwic3BlYyI6eyJyZXBsaWNhcyI6MSwic2VsZWN0b3IiOnsibWF0Y2hMYWJlbHMiOnsiYXBwIjoicmhhY3Mtb3BlcmF0b3IiLCJjb250cm9sLXBsYW5lIjoiY29udHJvbGxlci1tYW5hZ2VyIn19LCJzdHJhdGVneSI6e30sInRlbXBsYXRlIjp7Im1ldGFkYXRhIjp7ImFubm90YXRpb25zIjp7Imt1YmVjdGwua3ViZXJuZXRlcy5pby9kZWZhdWx0LWNvbnRhaW5lciI6Im1hbmFnZXIifSwibGFiZWxzIjp7ImFwcCI6InJoYWNzLW9wZXJhdG9yIiwiY29udHJvbC1wbGFuZSI6ImNvbnRyb2xsZXItbWFuYWdlciJ9fSwic3BlYyI6eyJjb250YWluZXJzIjpbeyJhcmdzIjpbIi0taGVhbHRoLXByb2JlLWJpbmQtYWRkcmVzcz06ODA4MSIsIi0tbWV0cmljcy1iaW5kLWFkZHJlc3M9MC4wLjAuMDo4NDQzIiwiLS1sZWFkZXItZWxlY3QiXSwiZW52IjpbeyJuYW1lIjoiUkVMQVRFRF9JTUFHRV9NQUlOIiwidmFsdWUiOiJyZWdpc3RyeS5yZWRoYXQuaW8vYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS9yaGFjcy1tYWluLXJoZWw4QHNoYTI1NjozODk5MDcwNWUwZTJlOTE2ODA0N2M0OGE1M2NkNTAxMTY0MzE3ZmVlYzk1ZDk1NGY3NjZhMTAwOGYwNGQyZjViIn0seyJuYW1lIjoiUkVMQVRFRF9JTUFHRV9TQ0FOTkVSIiwidmFsdWUiOiJyZWdpc3RyeS5yZWRoYXQuaW8vYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS9yaGFjcy1zY2FubmVyLXJoZWw4QHNoYTI1Njo3YThiMjIxYTI2YWFlMjIwMjc2MjdlNjQ0YTNmYjk3NTk1MmZmZmQyZTZmN2MzMWZkMWZkYTY3N2Q4MTk5M2I0In0seyJuYW1lIjoiUkVMQVRFRF9JTUFHRV9TQ0FOTkVSX1NMSU0iLCJ2YWx1ZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLXNjYW5uZXItc2xpbS1yaGVsOEBzaGEyNTY6M2RiYTFkMmY1ZmI4ODNlOWUzY2QyYjNjZmExZDVmZWQ4ZjgyNjUyNDY5NTA2NDkzNDA1ZmZkMDNjOTczNDVmMyJ9LHsibmFtZSI6IlJFTEFURURfSU1BR0VfU0NBTk5FUl9EQiIsInZhbHVlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3Mtc2Nhbm5lci1kYi1yaGVsOEBzaGEyNTY6Mzc0OGVkYjI5N2RhNGE1NjBmYjhlMTgyZGY4ZjA2M2RkYWVlMzYyZGNjODA5MzU1YjQ1ZjdhMDJlOGFhM2Y2YyJ9LHsibmFtZSI6IlJFTEFURURfSU1BR0VfU0NBTk5FUl9EQl9TTElNIiwidmFsdWUiOiJyZWdpc3RyeS5yZWRoYXQuaW8vYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS9yaGFjcy1zY2FubmVyLWRiLXNsaW0tcmhlbDhAc2hhMjU2OjA5MzcyNWYwN2QyMzNkNDNmNTE4Mzc3ZjI0ZGJmMTY1MzY2MWI3OGI1NDgxMmJkMTk4NjQ4NTA2ZTQ1NDNmMzAifSx7Im5hbWUiOiJSRUxBVEVEX0lNQUdFX0NPTExFQ1RPUiIsInZhbHVlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3MtY29sbGVjdG9yLXJoZWw4QHNoYTI1NjozMzk4Njc5ZTBlNzlmZWIzYTBiZGIzMTJiYTAwZjMwMzJjOGM3NWJmNWU4OWFhOGEzOTUxZDlkZjkxOGQyZDMxIn0seyJuYW1lIjoiUkVMQVRFRF9JTUFHRV9ST1hDVEwiLCJ2YWx1ZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLXJveGN0bC1yaGVsOEBzaGEyNTY6NzcwMjc5ZGNjOWI5NjkyNGFmOWU3MTk5MjEzZGZiMjZjYzYzMjcyNzJmZTlkNmIwYjg0NGMyMjk1YjdmZmY5YSJ9LHsibmFtZSI6IlJFTEFURURfSU1BR0VfQ0VOVFJBTF9EQiIsInZhbHVlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3MtY2VudHJhbC1kYi1yaGVsOEBzaGEyNTY6NDFiM2E5NWEwMjFjNzFhYjkxMmNjOTRmYTg3MjBjYjk0MzM1ZjRmYWE5Zjc5MGFjOWM2NmM4NjJjNjJjZTdmOSJ9LHsibmFtZSI6IlJFTEFURURfSU1BR0VfU0NBTk5FUl9WNF9EQiIsInZhbHVlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3Mtc2Nhbm5lci12NC1kYi1yaGVsOEBzaGEyNTY6ODhkYjc0N2I0ZTJiNzk3OGM3ZjIzODdhYWQxNzQyN2YyNzg3ZGNlZWZhZTMxZTQwOGJiYzA3OGU0MWM0MDk5MCJ9LHsibmFtZSI6IlJFTEFURURfSU1BR0VfU0NBTk5FUl9WNCIsInZhbHVlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3Mtc2Nhbm5lci12NC1yaGVsOEBzaGEyNTY6ZTVjYTZkZjkwMmYzYWRmZWVhMmI3ZWZlYWQ2YzRlZDI1YTljMzc5MjAyZTA0MmExODIyZTdkZWM4ZTlhMmRkYSJ9LHsibmFtZSI6Ik1FTU9SWV9MSU1JVF9CWVRFUyIsInZhbHVlRnJvbSI6eyJyZXNvdXJjZUZpZWxkUmVmIjp7ImNvbnRhaW5lck5hbWUiOiJtYW5hZ2VyIiwiZGl2aXNvciI6IjAiLCJyZXNvdXJjZSI6ImxpbWl0cy5tZW1vcnkifX19XSwiaW1hZ2UiOiJyZWdpc3RyeS5yZWRoYXQuaW8vYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS9yaGFjcy1yaGVsOC1vcGVyYXRvckBzaGEyNTY6ZTE0ZDE1OTM1MjhiZGE1ZDM5YmRiZTFiZGY4MmNhNDA0MTE1NTMyMDgwOGNiZTFkZmFhZGQxNjlmMGFhNmVmYyIsImxpdmVuZXNzUHJvYmUiOnsiaHR0cEdldCI6eyJwYXRoIjoiL2hlYWx0aHoiLCJwb3J0Ijo4MDgxfSwiaW5pdGlhbERlbGF5U2Vjb25kcyI6MTUsInBlcmlvZFNlY29uZHMiOjIwfSwibmFtZSI6Im1hbmFnZXIiLCJwb3J0cyI6W3siY29udGFpbmVyUG9ydCI6ODQ0MywibmFtZSI6Imh0dHBzIiwicHJvdG9jb2wiOiJUQ1AifV0sInJlYWRpbmVzc1Byb2JlIjp7Imh0dHBHZXQiOnsicGF0aCI6Ii9yZWFkeXoiLCJwb3J0Ijo4MDgxfSwiaW5pdGlhbERlbGF5U2Vjb25kcyI6NSwicGVyaW9kU2Vjb25kcyI6MTB9LCJyZXNvdXJjZXMiOnsibGltaXRzIjp7ImNwdSI6IjIwMG0iLCJtZW1vcnkiOiIxR2kifSwicmVxdWVzdHMiOnsiY3B1IjoiMTAwbSIsIm1lbW9yeSI6IjIwME1pIn19LCJzZWN1cml0eUNvbnRleHQiOnsiYWxsb3dQcml2aWxlZ2VFc2NhbGF0aW9uIjpmYWxzZSwiY2FwYWJpbGl0aWVzIjp7ImRyb3AiOlsiQUxMIl19fX1dLCJzZWN1cml0eUNvbnRleHQiOnsicnVuQXNOb25Sb290Ijp0cnVlfSwic2VydmljZUFjY291bnROYW1lIjoicmhhY3Mtb3BlcmF0b3ItY29udHJvbGxlci1tYW5hZ2VyIiwidGVybWluYXRpb25HcmFjZVBlcmlvZFNlY29uZHMiOjEwfX19fV0sInBlcm1pc3Npb25zIjpbeyJydWxlcyI6W3siYXBpR3JvdXBzIjpbIiJdLCJyZXNvdXJjZXMiOlsiY29uZmlnbWFwcyJdLCJ2ZXJicyI6WyJnZXQiLCJsaXN0Iiwid2F0Y2giLCJjcmVhdGUiLCJ1cGRhdGUiLCJwYXRjaCIsImRlbGV0ZSJdfSx7ImFwaUdyb3VwcyI6WyJjb29yZGluYXRpb24uazhzLmlvIl0sInJlc291cmNlcyI6WyJsZWFzZXMiXSwidmVyYnMiOlsiZ2V0IiwibGlzdCIsIndhdGNoIiwiY3JlYXRlIiwidXBkYXRlIiwicGF0Y2giLCJkZWxldGUiXX0seyJhcGlHcm91cHMiOlsiIl0sInJlc291cmNlcyI6WyJldmVudHMiXSwidmVyYnMiOlsiY3JlYXRlIiwicGF0Y2giXX1dLCJzZXJ2aWNlQWNjb3VudE5hbWUiOiJyaGFjcy1vcGVyYXRvci1jb250cm9sbGVyLW1hbmFnZXIifV19LCJzdHJhdGVneSI6ImRlcGxveW1lbnQifSwiaW5zdGFsbE1vZGVzIjpbeyJzdXBwb3J0ZWQiOmZhbHNlLCJ0eXBlIjoiT3duTmFtZXNwYWNlIn0seyJzdXBwb3J0ZWQiOmZhbHNlLCJ0eXBlIjoiU2luZ2xlTmFtZXNwYWNlIn0seyJzdXBwb3J0ZWQiOmZhbHNlLCJ0eXBlIjoiTXVsdGlOYW1lc3BhY2UifSx7InN1cHBvcnRlZCI6dHJ1ZSwidHlwZSI6IkFsbE5hbWVzcGFjZXMifV0sImtleXdvcmRzIjpbImFkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkiLCJzdGFja3JveCIsInNlY3VyaXR5IiwidnVsbmVyYWJpbGl0aWVzIiwiY29tcGxpYW5jZSIsImRldnNlY29wcyIsIm1vbml0b3JpbmciLCJzY2FubmluZyIsInJ1bnRpbWUtc2VjdXJpdHkiLCJuZXR3b3JrIHBvbGljeSIsImNvbmZpZ3VyYXRpb24iLCJyaXNrIl0sImxpbmtzIjpbeyJuYW1lIjoiUmVkIEhhdCBBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5IERvY3VtZW50YXRpb24iLCJ1cmwiOiJodHRwczovL2RvY3Mub3BlbnNoaWZ0LmNvbS9hY3Mvd2VsY29tZS8ifSx7Im5hbWUiOiJEYXRhU2hlZXQiLCJ1cmwiOiJodHRwczovL3d3dy5yZWRoYXQuY29tL2VuL3Jlc291cmNlcy9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5LWZvci1rdWJlcm5ldGVzLWRhdGFzaGVldCJ9LHsibmFtZSI6IlN1cHBvcnQgUG9saWN5IiwidXJsIjoiaHR0cHM6Ly9hY2Nlc3MucmVkaGF0LmNvbS9ub2RlLzU4MjI3MjEifSx7Im5hbWUiOiJDb21tdW5pdHkgU2l0ZSIsInVybCI6Imh0dHBzOi8vd3d3LnN0YWNrcm94LmlvLyJ9XSwibWFpbnRhaW5lcnMiOlt7ImVtYWlsIjoicmhhY3MtcG1AcmVkaGF0LmNvbSIsIm5hbWUiOiJBZHZhbmNlZCBDbHVzdGVyIFNlY3VyaXR5IHByb2R1Y3QgdGVhbSJ9XSwibWF0dXJpdHkiOiJhbHBoYSIsIm1pbkt1YmVWZXJzaW9uIjoiMS4xNS4wIiwicHJvdmlkZXIiOnsibmFtZSI6IlJlZCBIYXQifSwicmVsYXRlZEltYWdlcyI6W3siaW1hZ2UiOiJyZWdpc3RyeS5yZWRoYXQuaW8vYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS9yaGFjcy1jb2xsZWN0b3ItcmhlbDhAc2hhMjU2OjMzOTg2NzllMGU3OWZlYjNhMGJkYjMxMmJhMDBmMzAzMmM4Yzc1YmY1ZTg5YWE4YTM5NTFkOWRmOTE4ZDJkMzEiLCJuYW1lIjoiY29sbGVjdG9yIn0seyJpbWFnZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLWNlbnRyYWwtZGItcmhlbDhAc2hhMjU2OjQxYjNhOTVhMDIxYzcxYWI5MTJjYzk0ZmE4NzIwY2I5NDMzNWY0ZmFhOWY3OTBhYzljNjZjODYyYzYyY2U3ZjkiLCJuYW1lIjoiY2VudHJhbF9kYiJ9LHsiaW1hZ2UiOiJyZWdpc3RyeS5yZWRoYXQuaW8vYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS9yaGFjcy1zY2FubmVyLXJoZWw4QHNoYTI1Njo3YThiMjIxYTI2YWFlMjIwMjc2MjdlNjQ0YTNmYjk3NTk1MmZmZmQyZTZmN2MzMWZkMWZkYTY3N2Q4MTk5M2I0IiwibmFtZSI6InNjYW5uZXIifSx7ImltYWdlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3Mtc2Nhbm5lci12NC1yaGVsOEBzaGEyNTY6ZTVjYTZkZjkwMmYzYWRmZWVhMmI3ZWZlYWQ2YzRlZDI1YTljMzc5MjAyZTA0MmExODIyZTdkZWM4ZTlhMmRkYSIsIm5hbWUiOiJzY2FubmVyX3Y0In0seyJpbWFnZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLXNjYW5uZXItc2xpbS1yaGVsOEBzaGEyNTY6M2RiYTFkMmY1ZmI4ODNlOWUzY2QyYjNjZmExZDVmZWQ4ZjgyNjUyNDY5NTA2NDkzNDA1ZmZkMDNjOTczNDVmMyIsIm5hbWUiOiJzY2FubmVyX3NsaW0ifSx7ImltYWdlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3Mtc2Nhbm5lci12NC1kYi1yaGVsOEBzaGEyNTY6ODhkYjc0N2I0ZTJiNzk3OGM3ZjIzODdhYWQxNzQyN2YyNzg3ZGNlZWZhZTMxZTQwOGJiYzA3OGU0MWM0MDk5MCIsIm5hbWUiOiJzY2FubmVyX3Y0X2RiIn0seyJpbWFnZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLW1haW4tcmhlbDhAc2hhMjU2OjM4OTkwNzA1ZTBlMmU5MTY4MDQ3YzQ4YTUzY2Q1MDExNjQzMTdmZWVjOTVkOTU0Zjc2NmExMDA4ZjA0ZDJmNWIiLCJuYW1lIjoibWFpbiJ9LHsiaW1hZ2UiOiJyZWdpc3RyeS5yZWRoYXQuaW8vYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS9yaGFjcy1zY2FubmVyLWRiLXJoZWw4QHNoYTI1NjozNzQ4ZWRiMjk3ZGE0YTU2MGZiOGUxODJkZjhmMDYzZGRhZWUzNjJkY2M4MDkzNTViNDVmN2EwMmU4YWEzZjZjIiwibmFtZSI6InNjYW5uZXJfZGIifSx7ImltYWdlIjoicmVnaXN0cnkucmVkaGF0LmlvL2FkdmFuY2VkLWNsdXN0ZXItc2VjdXJpdHkvcmhhY3Mtc2Nhbm5lci1kYi1zbGltLXJoZWw4QHNoYTI1NjowOTM3MjVmMDdkMjMzZDQzZjUxODM3N2YyNGRiZjE2NTM2NjFiNzhiNTQ4MTJiZDE5ODY0ODUwNmU0NTQzZjMwIiwibmFtZSI6InNjYW5uZXJfZGJfc2xpbSJ9LHsiaW1hZ2UiOiJyZWdpc3RyeS5yZWRoYXQuaW8vYWR2YW5jZWQtY2x1c3Rlci1zZWN1cml0eS9yaGFjcy1yb3hjdGwtcmhlbDhAc2hhMjU2Ojc3MDI3OWRjYzliOTY5MjRhZjllNzE5OTIxM2RmYjI2Y2M2MzI3MjcyZmU5ZDZiMGI4NDRjMjI5NWI3ZmZmOWEiLCJuYW1lIjoicm94Y3RsIn0seyJpbWFnZSI6InJlZ2lzdHJ5LnJlZGhhdC5pby9hZHZhbmNlZC1jbHVzdGVyLXNlY3VyaXR5L3JoYWNzLXJoZWw4LW9wZXJhdG9yQHNoYTI1NjplMTRkMTU5MzUyOGJkYTVkMzliZGJlMWJkZjgyY2E0MDQxMTU1MzIwODA4Y2JlMWRmYWFkZDE2OWYwYWE2ZWZjIiwibmFtZSI6Im1hbmFnZXIifV0sInJlcGxhY2VzIjoicmhhY3Mtb3BlcmF0b3IudjQuOS40Iiwic2tpcHMiOlsicmhhY3Mtb3BlcmF0b3IudjQuMS4wIl0sInZlcnNpb24iOiI0LjkuNS1yYy4yIn19" + } + }, + { + "type": "olm.bundle.object", + "value": { + "data": "eyJhcGlWZXJzaW9uIjoicmJhYy5hdXRob3JpemF0aW9uLms4cy5pby92MSIsImtpbmQiOiJDbHVzdGVyUm9sZSIsIm1ldGFkYXRhIjp7ImNyZWF0aW9uVGltZXN0YW1wIjpudWxsLCJuYW1lIjoicmhhY3Mtb3BlcmF0b3ItbWV0cmljcy1yZWFkZXIifSwicnVsZXMiOlt7Im5vblJlc291cmNlVVJMcyI6WyIvbWV0cmljcyJdLCJ2ZXJicyI6WyJnZXQiXX1dfQ==" + } + }, + { + "type": "olm.bundle.object", + "value": { + "data": "eyJhcGlWZXJzaW9uIjoidjEiLCJraW5kIjoiU2VydmljZSIsIm1ldGFkYXRhIjp7ImNyZWF0aW9uVGltZXN0YW1wIjpudWxsLCJsYWJlbHMiOnsiYXBwIjoicmhhY3Mtb3BlcmF0b3IiLCJjb250cm9sLXBsYW5lIjoiY29udHJvbGxlci1tYW5hZ2VyIn0sIm5hbWUiOiJyaGFjcy1vcGVyYXRvci1jb250cm9sbGVyLW1hbmFnZXItbWV0cmljcy1zZXJ2aWNlIn0sInNwZWMiOnsicG9ydHMiOlt7Im5hbWUiOiJodHRwcyIsInBvcnQiOjg0NDMsInByb3RvY29sIjoiVENQIiwidGFyZ2V0UG9ydCI6Imh0dHBzIn1dLCJzZWxlY3RvciI6eyJhcHAiOiJyaGFjcy1vcGVyYXRvciIsImNvbnRyb2wtcGxhbmUiOiJjb250cm9sbGVyLW1hbmFnZXIifX0sInN0YXR1cyI6eyJsb2FkQmFsYW5jZXIiOnt9fX0=" + } + } + ], + "relatedImages": [ + { + "name": "", + "image": "quay.io/rhacs-eng/release-operator-bundle@sha256:72929bde24e023c16c77a58dc16482c6e1d73aeb8449de042c494b962855ca83" + }, + { + "name": "central_db", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:41b3a95a021c71ab912cc94fa8720cb94335f4faa9f790ac9c66c862c62ce7f9" + }, + { + "name": "collector", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:3398679e0e79feb3a0bdb312ba00f3032c8c75bf5e89aa8a3951d9df918d2d31" + }, + { + "name": "main", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:38990705e0e2e9168047c48a53cd501164317feec95d954f766a1008f04d2f5b" + }, + { + "name": "manager", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:e14d1593528bda5d39bdbe1bdf82ca4041155320808cbe1dfaadd169f0aa6efc" + }, + { + "name": "roxctl", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:770279dcc9b96924af9e7199213dfb26cc6327272fe9d6b0b844c2295b7fff9a" + }, + { + "name": "scanner_db", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:3748edb297da4a560fb8e182df8f063ddaee362dcc809355b45f7a02e8aa3f6c" + }, + { + "name": "scanner_db_slim", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:093725f07d233d43f518377f24dbf1653661b78b54812bd198648506e4543f30" + }, + { + "name": "scanner", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:7a8b221a26aae22027627e644a3fb975952fffd2e6f7c31fd1fda677d81993b4" + }, + { + "name": "scanner_slim", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:3dba1d2f5fb883e9e3cd2b3cfa1d5fed8f82652469506493405ffd03c97345f3" + }, + { + "name": "scanner_v4_db", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:88db747b4e2b7978c7f2387aad17427f2787dceefae31e408bbc078e41c40990" + }, + { + "name": "scanner_v4", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:e5ca6df902f3adfeea2b7efead6c4ed25a9c379202e042a1822e7dec8e9a2dda" + } + ] +} { "schema": "olm.deprecations", "package": "rhacs-operator", diff --git a/catalog-csv-metadata/rhacs-operator/catalog.json b/catalog-csv-metadata/rhacs-operator/catalog.json index a4bbd3cc..b4f3b834 100644 --- a/catalog-csv-metadata/rhacs-operator/catalog.json +++ b/catalog-csv-metadata/rhacs-operator/catalog.json @@ -1998,8 +1998,13 @@ "skipRange": ">= 4.7.0 < 4.8.9" }, { - "name": "rhacs-operator.v4.9.0", + "name": "rhacs-operator.v4.8.10-rc.2", "replaces": "rhacs-operator.v4.8.9", + "skipRange": ">= 4.7.0 < 4.8.10-rc.2" + }, + { + "name": "rhacs-operator.v4.9.0", + "replaces": "rhacs-operator.v4.8.10-rc.2", "skipRange": ">= 4.8.0 < 4.9.0" }, { @@ -2023,8 +2028,13 @@ "skipRange": ">= 4.8.0 < 4.9.4" }, { - "name": "rhacs-operator.v4.10.0", + "name": "rhacs-operator.v4.9.5-rc.2", "replaces": "rhacs-operator.v4.9.4", + "skipRange": ">= 4.8.0 < 4.9.5-rc.2" + }, + { + "name": "rhacs-operator.v4.10.0", + "replaces": "rhacs-operator.v4.9.5-rc.2", "skipRange": ">= 4.9.0 < 4.10.0" } ] @@ -3743,6 +3753,11 @@ "name": "rhacs-operator.v4.8.9", "replaces": "rhacs-operator.v4.8.8", "skipRange": ">= 4.7.0 < 4.8.9" + }, + { + "name": "rhacs-operator.v4.8.10-rc.2", + "replaces": "rhacs-operator.v4.8.9", + "skipRange": ">= 4.7.0 < 4.8.10-rc.2" } ] } @@ -4141,8 +4156,13 @@ "skipRange": ">= 4.7.0 < 4.8.9" }, { - "name": "rhacs-operator.v4.9.0", + "name": "rhacs-operator.v4.8.10-rc.2", "replaces": "rhacs-operator.v4.8.9", + "skipRange": ">= 4.7.0 < 4.8.10-rc.2" + }, + { + "name": "rhacs-operator.v4.9.0", + "replaces": "rhacs-operator.v4.8.10-rc.2", "skipRange": ">= 4.8.0 < 4.9.0" }, { @@ -4164,6 +4184,11 @@ "name": "rhacs-operator.v4.9.4", "replaces": "rhacs-operator.v4.9.3", "skipRange": ">= 4.8.0 < 4.9.4" + }, + { + "name": "rhacs-operator.v4.9.5-rc.2", + "replaces": "rhacs-operator.v4.9.4", + "skipRange": ">= 4.8.0 < 4.9.5-rc.2" } ] } @@ -4562,8 +4587,13 @@ "skipRange": ">= 4.7.0 < 4.8.9" }, { - "name": "rhacs-operator.v4.9.0", + "name": "rhacs-operator.v4.8.10-rc.2", "replaces": "rhacs-operator.v4.8.9", + "skipRange": ">= 4.7.0 < 4.8.10-rc.2" + }, + { + "name": "rhacs-operator.v4.9.0", + "replaces": "rhacs-operator.v4.8.10-rc.2", "skipRange": ">= 4.8.0 < 4.9.0" }, { @@ -4587,8 +4617,13 @@ "skipRange": ">= 4.8.0 < 4.9.4" }, { - "name": "rhacs-operator.v4.10.0", + "name": "rhacs-operator.v4.9.5-rc.2", "replaces": "rhacs-operator.v4.9.4", + "skipRange": ">= 4.8.0 < 4.9.5-rc.2" + }, + { + "name": "rhacs-operator.v4.10.0", + "replaces": "rhacs-operator.v4.9.5-rc.2", "skipRange": ">= 4.9.0 < 4.10.0" } ] @@ -152956,9 +152991,9 @@ } { "schema": "olm.bundle", - "name": "rhacs-operator.v4.8.2", + "name": "rhacs-operator.v4.8.10-rc.2", "package": "rhacs-operator", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:68633e6b12768689f352e1318dc0acc388522d8b6295bf6ca662834cf1367b85", + "image": "quay.io/rhacs-eng/release-operator-bundle@sha256:89c8467f3c6a8fa6f45c128d1b90dfc7322fb2ec49f8c93c0ba13e5870d132d3", "properties": [ { "type": "olm.gvk", @@ -152988,7 +153023,7 @@ "type": "olm.package", "value": { "packageName": "rhacs-operator", - "version": "4.8.2" + "version": "4.8.10-rc.2" } }, { @@ -152998,8 +153033,8 @@ "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", "capabilities": "Seamless Upgrades", "categories": "Security", - "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:b3ce0da59afacc3ccae7ac6a5e51b52fcf41e87bbd50d194a9fc1a3ab9acf142", - "createdAt": "2025-08-14T13:00:56.914011+00:00", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:e4c6900b72a556a4d3e1978f31734bc00b01164ef2c8c154aeebfb2b266f8d2a", + "createdAt": "2026-03-27T19:00:44.112706+00:00", "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", "features.operators.openshift.io/cnf": "false", "features.operators.openshift.io/cni": "false", @@ -153011,7 +153046,7 @@ "features.operators.openshift.io/token-auth-aws": "false", "features.operators.openshift.io/token-auth-azure": "false", "features.operators.openshift.io/token-auth-gcp": "false", - "olm.skipRange": ">= 4.7.0 < 4.8.2", + "olm.skipRange": ">= 4.7.0 < 4.8.10-rc.2", "operatorframework.io/suggested-namespace": "rhacs-operator", "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", @@ -154699,8 +154734,8 @@ "risk" ], "labels": { - "operatorframework.io/arch.aarch64": "supported", "operatorframework.io/arch.amd64": "supported", + "operatorframework.io/arch.arm64": "supported", "operatorframework.io/arch.ppc64le": "supported", "operatorframework.io/arch.s390x": "supported" }, @@ -154737,65 +154772,61 @@ } ], "relatedImages": [ + { + "name": "", + "image": "quay.io/rhacs-eng/release-operator-bundle@sha256:89c8467f3c6a8fa6f45c128d1b90dfc7322fb2ec49f8c93c0ba13e5870d132d3" + }, { "name": "central_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:2b6da0f5120b46fa0a4ed21af3bab6eba294f107f49facb86d336597b8878396" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:3d455004a467e60cce3efa8e9b80007b04c200dedd7ca6560be80e9354b792a1" }, { "name": "collector", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:14cae786f2e5f5643a2de28017869a5dfb030909d0a2de2ff5b923ca30acb70b" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:aba1537049ba01f31b4f634ec83c4ed5ad053783de0710f0e3ecc957665c6798" }, { "name": "main", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:3750cdad4d5e705fa6f0be3c3aeb45e8ac63cf744c3620d6ac4817ceba191804" - }, - { - "name": "", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:68633e6b12768689f352e1318dc0acc388522d8b6295bf6ca662834cf1367b85" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:a63656373b40aae886b4dd087590c0b13707b3d68062ea7ee560bfaf9737919c" }, { "name": "manager", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:b3ce0da59afacc3ccae7ac6a5e51b52fcf41e87bbd50d194a9fc1a3ab9acf142" - }, - { - "name": "rhacs-rhel8-operator-b3ce0da59afacc3ccae7ac6a5e51b52fcf41e87bbd50d194a9fc1a3ab9acf142-annotation", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:b3ce0da59afacc3ccae7ac6a5e51b52fcf41e87bbd50d194a9fc1a3ab9acf142" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:e4c6900b72a556a4d3e1978f31734bc00b01164ef2c8c154aeebfb2b266f8d2a" }, { "name": "roxctl", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:420d3d867bfaea81ac825c8019dda153a80b9307a257881e7dd40242b64fe720" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:db9ec391b8e043ad1a00cc8cc5b91dcce381d4b9512ee6102b3896c185e1b66e" }, { "name": "scanner_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:812c8f4a6dcffd4ea35a10e5c1feca009cc74559e36c4cb97d5734c07c1f21cb" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:8cf4e8bb42d274139665f5c57f82b81c65a47898ff43de0407f266ab0767701c" }, { "name": "scanner_db_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:c410fd5ae11a2ffafeaeac8fd993ec87a9448bdb1a0b35ff826b271524e6c0d1" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:b42a096d75543f0250766e289c6707aedc813d4d0353705cae5f0c5e3caf7305" }, { "name": "scanner", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:72d383181e7b4f17be5785685d355155286712f8ef072a17791901d3b57c0b7d" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:cd77a662bdce23443ee4ef96b273e9e3a9009379921a6a5f75f00076ef24353f" }, { "name": "scanner_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:142b6c0f0200dc4cf43d0d49c8c6d8082078c240bf4f3e3d9fc73f56c080c34d" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:debad6874258431b23c9a93943b56d4686f150c2a91ef2bded8731bcca87c50c" }, { "name": "scanner_v4_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:c356d755fc18562a157b01fcb64deebf948f25eb04f122bc53738b010dcd094a" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:bc29f522afb78fb756c2d99aff0d733837519a5fec3a546fea1e8ea8bd5a3aa6" }, { "name": "scanner_v4", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:3066cfcb737b690b134261d6e363eb3c887a9255ebab9cc03c0bae473df932fe" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:f811954b2c237faca344a975388b76485e9eddfce6718c9d4dd8c13ef5a09ffc" } ] } { "schema": "olm.bundle", - "name": "rhacs-operator.v4.8.3", + "name": "rhacs-operator.v4.8.2", "package": "rhacs-operator", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:44823edf63a673d6df937271c2b504782752e832d31517076593e1706a6cf434", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:68633e6b12768689f352e1318dc0acc388522d8b6295bf6ca662834cf1367b85", "properties": [ { "type": "olm.gvk", @@ -154825,7 +154856,7 @@ "type": "olm.package", "value": { "packageName": "rhacs-operator", - "version": "4.8.3" + "version": "4.8.2" } }, { @@ -154835,8 +154866,8 @@ "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", "capabilities": "Seamless Upgrades", "categories": "Security", - "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:420396344a3320abe6614eac4ce08b7522545b923873427096bf2caa6cf12620", - "createdAt": "2025-09-05T12:10:56.175887+00:00", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:b3ce0da59afacc3ccae7ac6a5e51b52fcf41e87bbd50d194a9fc1a3ab9acf142", + "createdAt": "2025-08-14T13:00:56.914011+00:00", "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", "features.operators.openshift.io/cnf": "false", "features.operators.openshift.io/cni": "false", @@ -154848,7 +154879,7 @@ "features.operators.openshift.io/token-auth-aws": "false", "features.operators.openshift.io/token-auth-azure": "false", "features.operators.openshift.io/token-auth-gcp": "false", - "olm.skipRange": ">= 4.7.0 < 4.8.3", + "olm.skipRange": ">= 4.7.0 < 4.8.2", "operatorframework.io/suggested-namespace": "rhacs-operator", "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", @@ -156536,8 +156567,8 @@ "risk" ], "labels": { + "operatorframework.io/arch.aarch64": "supported", "operatorframework.io/arch.amd64": "supported", - "operatorframework.io/arch.arm64": "supported", "operatorframework.io/arch.ppc64le": "supported", "operatorframework.io/arch.s390x": "supported" }, @@ -156576,59 +156607,63 @@ "relatedImages": [ { "name": "central_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:a2cd8d1b282b452e0ce1656e07e8762ef837937448d30678421ea755395e3b5b" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:2b6da0f5120b46fa0a4ed21af3bab6eba294f107f49facb86d336597b8878396" }, { "name": "collector", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:0c92d5b5508032d77559606927e45686179eaafc59e16d5496e088f2f212d258" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:14cae786f2e5f5643a2de28017869a5dfb030909d0a2de2ff5b923ca30acb70b" }, { "name": "main", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:5dc4149dbe9ba035ce23eb4c2441a4df53d9ebda74aee94734b71cd03956ba00" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:3750cdad4d5e705fa6f0be3c3aeb45e8ac63cf744c3620d6ac4817ceba191804" }, { "name": "", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:44823edf63a673d6df937271c2b504782752e832d31517076593e1706a6cf434" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:68633e6b12768689f352e1318dc0acc388522d8b6295bf6ca662834cf1367b85" }, { "name": "manager", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:420396344a3320abe6614eac4ce08b7522545b923873427096bf2caa6cf12620" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:b3ce0da59afacc3ccae7ac6a5e51b52fcf41e87bbd50d194a9fc1a3ab9acf142" + }, + { + "name": "rhacs-rhel8-operator-b3ce0da59afacc3ccae7ac6a5e51b52fcf41e87bbd50d194a9fc1a3ab9acf142-annotation", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:b3ce0da59afacc3ccae7ac6a5e51b52fcf41e87bbd50d194a9fc1a3ab9acf142" }, { "name": "roxctl", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:7f26a07badc7ab56a87b33520c908d96e1af149af334103d2affda0a2ff0c837" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:420d3d867bfaea81ac825c8019dda153a80b9307a257881e7dd40242b64fe720" }, { "name": "scanner_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:97df59280c12727a99fdec0c9bf56eb874e6a1cacd12d849709797d4be635ce9" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:812c8f4a6dcffd4ea35a10e5c1feca009cc74559e36c4cb97d5734c07c1f21cb" }, { "name": "scanner_db_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:92ff7691963e620dc5bf6da0a7694e6bcd68c2545afc1642a59a443ba2ab5611" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:c410fd5ae11a2ffafeaeac8fd993ec87a9448bdb1a0b35ff826b271524e6c0d1" }, { "name": "scanner", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:e949830f3034c41aa5434a3654b2b1ccba7dac0373bf43d7c50a9ea43bb686fb" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:72d383181e7b4f17be5785685d355155286712f8ef072a17791901d3b57c0b7d" }, { "name": "scanner_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:db691065e46f604b980b0b202f6c2e14c8b204094d784c4a15db1e4fecb2965e" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:142b6c0f0200dc4cf43d0d49c8c6d8082078c240bf4f3e3d9fc73f56c080c34d" }, { "name": "scanner_v4_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:1cfb774f89e3c047e287fddbc1a22b4b6daed4fba068c6d29dad360b305cfef8" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:c356d755fc18562a157b01fcb64deebf948f25eb04f122bc53738b010dcd094a" }, { "name": "scanner_v4", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:e1cc194c09c96fcef62296755ed8cbc87d5b063370b21474970a67c27146e1f3" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:3066cfcb737b690b134261d6e363eb3c887a9255ebab9cc03c0bae473df932fe" } ] } { "schema": "olm.bundle", - "name": "rhacs-operator.v4.8.4", + "name": "rhacs-operator.v4.8.3", "package": "rhacs-operator", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:0c0a839b097ccbf758b084b85f8f9285a7e621fd44e8a62752be7b6bcae86669", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:44823edf63a673d6df937271c2b504782752e832d31517076593e1706a6cf434", "properties": [ { "type": "olm.gvk", @@ -156658,7 +156693,7 @@ "type": "olm.package", "value": { "packageName": "rhacs-operator", - "version": "4.8.4" + "version": "4.8.3" } }, { @@ -156668,8 +156703,8 @@ "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", "capabilities": "Seamless Upgrades", "categories": "Security", - "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fe56f7733778f2ba9072ee35df562e82283eaeaa7bed26333d2fb916ecb76929", - "createdAt": "2025-09-12T11:06:11.361461+00:00", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:420396344a3320abe6614eac4ce08b7522545b923873427096bf2caa6cf12620", + "createdAt": "2025-09-05T12:10:56.175887+00:00", "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", "features.operators.openshift.io/cnf": "false", "features.operators.openshift.io/cni": "false", @@ -156681,7 +156716,7 @@ "features.operators.openshift.io/token-auth-aws": "false", "features.operators.openshift.io/token-auth-azure": "false", "features.operators.openshift.io/token-auth-gcp": "false", - "olm.skipRange": ">= 4.7.0 < 4.8.4", + "olm.skipRange": ">= 4.7.0 < 4.8.3", "operatorframework.io/suggested-namespace": "rhacs-operator", "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", @@ -158409,7 +158444,7 @@ "relatedImages": [ { "name": "central_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:e5c200f28187c1f6971562e41cae969183ee15f3d0feb076bb202b22ff67cbcb" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:a2cd8d1b282b452e0ce1656e07e8762ef837937448d30678421ea755395e3b5b" }, { "name": "collector", @@ -158417,19 +158452,19 @@ }, { "name": "main", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:adf47cb6615d344533fcca0aee41774f5e8df9b952b9b89a57c2be2b7e0fc03c" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:5dc4149dbe9ba035ce23eb4c2441a4df53d9ebda74aee94734b71cd03956ba00" }, { "name": "", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:0c0a839b097ccbf758b084b85f8f9285a7e621fd44e8a62752be7b6bcae86669" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:44823edf63a673d6df937271c2b504782752e832d31517076593e1706a6cf434" }, { "name": "manager", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fe56f7733778f2ba9072ee35df562e82283eaeaa7bed26333d2fb916ecb76929" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:420396344a3320abe6614eac4ce08b7522545b923873427096bf2caa6cf12620" }, { "name": "roxctl", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:16912df2c26e5fc2e6051c0501170722856db274415063608de716cf53851038" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:7f26a07badc7ab56a87b33520c908d96e1af149af334103d2affda0a2ff0c837" }, { "name": "scanner_db", @@ -158449,19 +158484,19 @@ }, { "name": "scanner_v4_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:b8964b1441251607b23f92918e9158724174013dc4af423988f56d6098dfb2d5" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:1cfb774f89e3c047e287fddbc1a22b4b6daed4fba068c6d29dad360b305cfef8" }, { "name": "scanner_v4", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:d1758b76c32f03b5a1a44951d18fb2bb0c4fd0a99d24f8c42fe9e6b059574889" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:e1cc194c09c96fcef62296755ed8cbc87d5b063370b21474970a67c27146e1f3" } ] } { "schema": "olm.bundle", - "name": "rhacs-operator.v4.8.5", + "name": "rhacs-operator.v4.8.4", "package": "rhacs-operator", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:323f62203914d00b29a6f8c1a1230bbbf19ab14c8c4c70bf0474dd87c493d4f2", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:0c0a839b097ccbf758b084b85f8f9285a7e621fd44e8a62752be7b6bcae86669", "properties": [ { "type": "olm.gvk", @@ -158491,7 +158526,7 @@ "type": "olm.package", "value": { "packageName": "rhacs-operator", - "version": "4.8.5" + "version": "4.8.4" } }, { @@ -158501,8 +158536,8 @@ "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", "capabilities": "Seamless Upgrades", "categories": "Security", - "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:965ce96e73301dd6378633ea90eb3db395805877349798b9e96cd75910f5c79f", - "createdAt": "2025-10-29T22:41:05.897776+00:00", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fe56f7733778f2ba9072ee35df562e82283eaeaa7bed26333d2fb916ecb76929", + "createdAt": "2025-09-12T11:06:11.361461+00:00", "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", "features.operators.openshift.io/cnf": "false", "features.operators.openshift.io/cni": "false", @@ -158514,7 +158549,7 @@ "features.operators.openshift.io/token-auth-aws": "false", "features.operators.openshift.io/token-auth-azure": "false", "features.operators.openshift.io/token-auth-gcp": "false", - "olm.skipRange": ">= 4.7.0 < 4.8.5", + "olm.skipRange": ">= 4.7.0 < 4.8.4", "operatorframework.io/suggested-namespace": "rhacs-operator", "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", @@ -160242,59 +160277,59 @@ "relatedImages": [ { "name": "central_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:40d07a431ee71e3398a2a4a7726949c7520cfb78e4fb479ee07c571a328818ae" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:e5c200f28187c1f6971562e41cae969183ee15f3d0feb076bb202b22ff67cbcb" }, { "name": "collector", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e9fadd17404247cb17eb0cd1e7038031e4c68ac073143f5ef1cb3f3405f32f91" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:0c92d5b5508032d77559606927e45686179eaafc59e16d5496e088f2f212d258" }, { "name": "main", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:c5774f92900ec1e3b936712599caac36c47c1b1be3489184c80f40a8389ac149" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:adf47cb6615d344533fcca0aee41774f5e8df9b952b9b89a57c2be2b7e0fc03c" }, { "name": "", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:323f62203914d00b29a6f8c1a1230bbbf19ab14c8c4c70bf0474dd87c493d4f2" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:0c0a839b097ccbf758b084b85f8f9285a7e621fd44e8a62752be7b6bcae86669" }, { "name": "manager", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:965ce96e73301dd6378633ea90eb3db395805877349798b9e96cd75910f5c79f" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fe56f7733778f2ba9072ee35df562e82283eaeaa7bed26333d2fb916ecb76929" }, { "name": "roxctl", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:eab5e1ec257c035808398aa72d7b861253fb609641a42628cc7cbd0bf9a90c43" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:16912df2c26e5fc2e6051c0501170722856db274415063608de716cf53851038" }, { "name": "scanner_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:841a80eea56ff2c4486af65eb8831c060f1459a03e1b0fbc8b8c3e18f53593f0" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:97df59280c12727a99fdec0c9bf56eb874e6a1cacd12d849709797d4be635ce9" }, { "name": "scanner_db_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:682231b3956c58a3553d486182a5a84c0a0cdf6ae22fe6702c93352c64841b90" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:92ff7691963e620dc5bf6da0a7694e6bcd68c2545afc1642a59a443ba2ab5611" }, { "name": "scanner", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:23241c29e2371dc0f0a8ed695d452ae5d40d525a031ed94c9d6a1ee4f4dfd682" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:e949830f3034c41aa5434a3654b2b1ccba7dac0373bf43d7c50a9ea43bb686fb" }, { "name": "scanner_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:d5e775102f7abf3585ba48b406ea06876cffa7bf32f2aacd2ae05440334a7c0b" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:db691065e46f604b980b0b202f6c2e14c8b204094d784c4a15db1e4fecb2965e" }, { "name": "scanner_v4_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:b4d50131685eb51d960e27b07c3120e0f9787ef2d304caa9b1035bfc95b2b1c2" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:b8964b1441251607b23f92918e9158724174013dc4af423988f56d6098dfb2d5" }, { "name": "scanner_v4", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:cbb370c3e5b4cb6022f38d30b39dd74c499891c03737474c772efab5ed77b8cb" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:d1758b76c32f03b5a1a44951d18fb2bb0c4fd0a99d24f8c42fe9e6b059574889" } ] } { "schema": "olm.bundle", - "name": "rhacs-operator.v4.8.6", + "name": "rhacs-operator.v4.8.5", "package": "rhacs-operator", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:57a4b1a83e9fde88b7036214af7755f7596af46b1d80c2a3487a52fcb0e58451", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:323f62203914d00b29a6f8c1a1230bbbf19ab14c8c4c70bf0474dd87c493d4f2", "properties": [ { "type": "olm.gvk", @@ -160324,7 +160359,7 @@ "type": "olm.package", "value": { "packageName": "rhacs-operator", - "version": "4.8.6" + "version": "4.8.5" } }, { @@ -160334,8 +160369,8 @@ "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", "capabilities": "Seamless Upgrades", "categories": "Security", - "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:e89f9e87b5e9b7e21dff28db007350c25ec6fbd2fcafbdbd72cfc10c61ae0dde", - "createdAt": "2025-11-24T20:36:10.771786+00:00", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:965ce96e73301dd6378633ea90eb3db395805877349798b9e96cd75910f5c79f", + "createdAt": "2025-10-29T22:41:05.897776+00:00", "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", "features.operators.openshift.io/cnf": "false", "features.operators.openshift.io/cni": "false", @@ -160347,7 +160382,7 @@ "features.operators.openshift.io/token-auth-aws": "false", "features.operators.openshift.io/token-auth-azure": "false", "features.operators.openshift.io/token-auth-gcp": "false", - "olm.skipRange": ">= 4.7.0 < 4.8.6", + "olm.skipRange": ">= 4.7.0 < 4.8.5", "operatorframework.io/suggested-namespace": "rhacs-operator", "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", @@ -162075,59 +162110,59 @@ "relatedImages": [ { "name": "central_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:80001002b1fe75a237e2afc472c81d9cd733d4fe65a3485078a22b4dfd4112e1" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:40d07a431ee71e3398a2a4a7726949c7520cfb78e4fb479ee07c571a328818ae" }, { "name": "collector", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:1b51ec285e4f0d78c637c800ea17b05866a371a93455fc605d1f2ebc04ebf17d" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e9fadd17404247cb17eb0cd1e7038031e4c68ac073143f5ef1cb3f3405f32f91" }, { "name": "main", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:714364f82db2d6ba931261a78d520aae6450ea29fbc479341205e65a5f9f5e58" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:c5774f92900ec1e3b936712599caac36c47c1b1be3489184c80f40a8389ac149" }, { "name": "", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:57a4b1a83e9fde88b7036214af7755f7596af46b1d80c2a3487a52fcb0e58451" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:323f62203914d00b29a6f8c1a1230bbbf19ab14c8c4c70bf0474dd87c493d4f2" }, { "name": "manager", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:e89f9e87b5e9b7e21dff28db007350c25ec6fbd2fcafbdbd72cfc10c61ae0dde" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:965ce96e73301dd6378633ea90eb3db395805877349798b9e96cd75910f5c79f" }, { "name": "roxctl", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:d6d5e50d1deda1e7b232d4e3f60fda6f3d27266b6fc007c8ec48a324e1c6c15c" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:eab5e1ec257c035808398aa72d7b861253fb609641a42628cc7cbd0bf9a90c43" }, { "name": "scanner_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0430256b0490f1c4da11a869608abf9bc03150ab6cb03b5978924abf53ffb778" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:841a80eea56ff2c4486af65eb8831c060f1459a03e1b0fbc8b8c3e18f53593f0" }, { "name": "scanner_db_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:481e8b0d6ddfe7d624e50a7726bb52ea76bf42bd728955e2c07e811026fb3ccc" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:682231b3956c58a3553d486182a5a84c0a0cdf6ae22fe6702c93352c64841b90" }, { "name": "scanner", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9b3cc365dc8737d2b5b11d9a6dc604351b57bf18f283fe029810a849ff6cb31a" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:23241c29e2371dc0f0a8ed695d452ae5d40d525a031ed94c9d6a1ee4f4dfd682" }, { "name": "scanner_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:50f9392684483cd969464ee560f61f3739ae45cb0f644bc08681e19edce8fc27" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:d5e775102f7abf3585ba48b406ea06876cffa7bf32f2aacd2ae05440334a7c0b" }, { "name": "scanner_v4_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:a4b4f08b25f1c8d84392956a49ed473a8c4d8133cea9e9db4bdba23a8fc0713b" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:b4d50131685eb51d960e27b07c3120e0f9787ef2d304caa9b1035bfc95b2b1c2" }, { "name": "scanner_v4", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:721b12b0c750f54b6b94e9b24a1e1e7dff7d65f6673d2b4d802576859b38dbe9" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:cbb370c3e5b4cb6022f38d30b39dd74c499891c03737474c772efab5ed77b8cb" } ] } { "schema": "olm.bundle", - "name": "rhacs-operator.v4.8.7", + "name": "rhacs-operator.v4.8.6", "package": "rhacs-operator", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:24481e3ee1dab49893e7f5891e97e3287ec6f35105b6e927ce0acc7da24a6982", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:57a4b1a83e9fde88b7036214af7755f7596af46b1d80c2a3487a52fcb0e58451", "properties": [ { "type": "olm.gvk", @@ -162157,7 +162192,7 @@ "type": "olm.package", "value": { "packageName": "rhacs-operator", - "version": "4.8.7" + "version": "4.8.6" } }, { @@ -162167,8 +162202,8 @@ "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", "capabilities": "Seamless Upgrades", "categories": "Security", - "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa", - "createdAt": "2025-12-17T14:22:57.176442+00:00", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:e89f9e87b5e9b7e21dff28db007350c25ec6fbd2fcafbdbd72cfc10c61ae0dde", + "createdAt": "2025-11-24T20:36:10.771786+00:00", "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", "features.operators.openshift.io/cnf": "false", "features.operators.openshift.io/cni": "false", @@ -162180,7 +162215,7 @@ "features.operators.openshift.io/token-auth-aws": "false", "features.operators.openshift.io/token-auth-azure": "false", "features.operators.openshift.io/token-auth-gcp": "false", - "olm.skipRange": ">= 4.7.0 < 4.8.7", + "olm.skipRange": ">= 4.7.0 < 4.8.6", "operatorframework.io/suggested-namespace": "rhacs-operator", "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", @@ -163908,59 +163943,59 @@ "relatedImages": [ { "name": "central_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:82dc5edf423b3f9c377c9d2c80d1d19eaf15684872dc41d4baa9efddf082f350" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:80001002b1fe75a237e2afc472c81d9cd733d4fe65a3485078a22b4dfd4112e1" }, { "name": "collector", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:440e0ac120a2a7e8dfcad6b53bb120667e293492d9bbcbe9d1ca0a6ed7b2dd62" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:1b51ec285e4f0d78c637c800ea17b05866a371a93455fc605d1f2ebc04ebf17d" }, { "name": "main", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:a58c6e952333169b21ffefdbd1acd3fff9c8d8dfac28795ee290756ca4394f5a" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:714364f82db2d6ba931261a78d520aae6450ea29fbc479341205e65a5f9f5e58" }, { "name": "", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:24481e3ee1dab49893e7f5891e97e3287ec6f35105b6e927ce0acc7da24a6982" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:57a4b1a83e9fde88b7036214af7755f7596af46b1d80c2a3487a52fcb0e58451" }, { "name": "manager", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:e89f9e87b5e9b7e21dff28db007350c25ec6fbd2fcafbdbd72cfc10c61ae0dde" }, { "name": "roxctl", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:23150ab7d7d79cf1f5bc70f4f8e32da76ff06af123c395fb46b0be9e6ded7e1f" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:d6d5e50d1deda1e7b232d4e3f60fda6f3d27266b6fc007c8ec48a324e1c6c15c" }, { "name": "scanner_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:fc03a63aada7586517d68c279fe59415b1fc0b3756ee87c5110f19c90712e903" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0430256b0490f1c4da11a869608abf9bc03150ab6cb03b5978924abf53ffb778" }, { "name": "scanner_db_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:142732544a7553f4eb203b314b3bdc76e5102d7ef3080f1fe36e8ddadffb9ca9" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:481e8b0d6ddfe7d624e50a7726bb52ea76bf42bd728955e2c07e811026fb3ccc" }, { "name": "scanner", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:fe1732a51218d60b1c5f6fa96357c0d50ce48ae6802da91ff594f7ef184effe9" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9b3cc365dc8737d2b5b11d9a6dc604351b57bf18f283fe029810a849ff6cb31a" }, { "name": "scanner_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5e84e22ba7e21b8ec3e55283a53ea73a14f2bfd41eea5a80ca7a95360f799c52" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:50f9392684483cd969464ee560f61f3739ae45cb0f644bc08681e19edce8fc27" }, { "name": "scanner_v4_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:3325c985bbe99f6717dae2dbcb6aedaadfa7eb5f403b109628356485a97f6cf7" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:a4b4f08b25f1c8d84392956a49ed473a8c4d8133cea9e9db4bdba23a8fc0713b" }, { "name": "scanner_v4", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8322bb5c9649b552aaaa62ba52067028a828c9dcb16c7580ec235e6b48b75e53" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:721b12b0c750f54b6b94e9b24a1e1e7dff7d65f6673d2b4d802576859b38dbe9" } ] } { "schema": "olm.bundle", - "name": "rhacs-operator.v4.8.8", + "name": "rhacs-operator.v4.8.7", "package": "rhacs-operator", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b22341e8dfba8b10b70f21f3b597c02874bae485c07517402db0930397d82688", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:24481e3ee1dab49893e7f5891e97e3287ec6f35105b6e927ce0acc7da24a6982", "properties": [ { "type": "olm.gvk", @@ -163990,7 +164025,7 @@ "type": "olm.package", "value": { "packageName": "rhacs-operator", - "version": "4.8.8" + "version": "4.8.7" } }, { @@ -164000,8 +164035,8 @@ "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", "capabilities": "Seamless Upgrades", "categories": "Security", - "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9af2e62dbfae1e2828daf4f1af46093639957551dc88b36570247ffae0c74b03", - "createdAt": "2026-01-28T16:54:56.941413+00:00", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa", + "createdAt": "2025-12-17T14:22:57.176442+00:00", "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", "features.operators.openshift.io/cnf": "false", "features.operators.openshift.io/cni": "false", @@ -164013,7 +164048,7 @@ "features.operators.openshift.io/token-auth-aws": "false", "features.operators.openshift.io/token-auth-azure": "false", "features.operators.openshift.io/token-auth-gcp": "false", - "olm.skipRange": ">= 4.7.0 < 4.8.8", + "olm.skipRange": ">= 4.7.0 < 4.8.7", "operatorframework.io/suggested-namespace": "rhacs-operator", "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", @@ -165741,59 +165776,59 @@ "relatedImages": [ { "name": "central_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:3f1e304e0560feddb1e9af747e776d5bf9523eff36afaf4dffd41269249f454b" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:82dc5edf423b3f9c377c9d2c80d1d19eaf15684872dc41d4baa9efddf082f350" }, { "name": "collector", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:acd810787f472ab16704e7b67c19780f75fabf27a69ca1e2097d6ae36e45007e" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:440e0ac120a2a7e8dfcad6b53bb120667e293492d9bbcbe9d1ca0a6ed7b2dd62" }, { "name": "main", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:0aa055c5f92358b93a65aebccb5f2c8863c777f18a061f6e24a5bccdbae9c6d2" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:a58c6e952333169b21ffefdbd1acd3fff9c8d8dfac28795ee290756ca4394f5a" }, { "name": "", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b22341e8dfba8b10b70f21f3b597c02874bae485c07517402db0930397d82688" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:24481e3ee1dab49893e7f5891e97e3287ec6f35105b6e927ce0acc7da24a6982" }, { "name": "manager", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9af2e62dbfae1e2828daf4f1af46093639957551dc88b36570247ffae0c74b03" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa" }, { "name": "roxctl", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:de63c514daff7b64511599c4ccc3bbebab4efcd40abbf498c508f98adf9f4a3b" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:23150ab7d7d79cf1f5bc70f4f8e32da76ff06af123c395fb46b0be9e6ded7e1f" }, { "name": "scanner_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:c88278bf0be39566b9cc6d74cbed357459b2b53d9d44818f15b84698b0a83a75" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:fc03a63aada7586517d68c279fe59415b1fc0b3756ee87c5110f19c90712e903" }, { "name": "scanner_db_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:1a75e89f7e2de4f9c2904fe1129244eeeaff5c222c272b1627df9e291833975c" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:142732544a7553f4eb203b314b3bdc76e5102d7ef3080f1fe36e8ddadffb9ca9" }, { "name": "scanner", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:fb90724bba526007dd88af36a83e9679b5d85b35ba16cbf6add6a36d6e7284fa" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:fe1732a51218d60b1c5f6fa96357c0d50ce48ae6802da91ff594f7ef184effe9" }, { "name": "scanner_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:80464e5116aca53eefa8278a9023cb1befaf3e14bad55afac5dd90b9a3e0150e" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5e84e22ba7e21b8ec3e55283a53ea73a14f2bfd41eea5a80ca7a95360f799c52" }, { "name": "scanner_v4_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:feb0df655762f320b2a85490907fce5d6b9aa6c8186d123324cd3812ab148def" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:3325c985bbe99f6717dae2dbcb6aedaadfa7eb5f403b109628356485a97f6cf7" }, { "name": "scanner_v4", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:9476b1b03a69300deddc7ffdbb03bf408831ba37653669ea0d601fa60f274867" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8322bb5c9649b552aaaa62ba52067028a828c9dcb16c7580ec235e6b48b75e53" } ] } { "schema": "olm.bundle", - "name": "rhacs-operator.v4.8.9", + "name": "rhacs-operator.v4.8.8", "package": "rhacs-operator", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9bb2d3ff2a97d0c3234e4864fc2d21ff278ce06e725e43c56f43e42bed97dd19", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b22341e8dfba8b10b70f21f3b597c02874bae485c07517402db0930397d82688", "properties": [ { "type": "olm.gvk", @@ -165823,7 +165858,7 @@ "type": "olm.package", "value": { "packageName": "rhacs-operator", - "version": "4.8.9" + "version": "4.8.8" } }, { @@ -165833,8 +165868,8 @@ "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", "capabilities": "Seamless Upgrades", "categories": "Security", - "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:613ba30aceb61d8fca16136d869f45bdd2a3f51fcc024d9caf03ae8ca98b39ee", - "createdAt": "2026-03-11T18:14:08.454853+00:00", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9af2e62dbfae1e2828daf4f1af46093639957551dc88b36570247ffae0c74b03", + "createdAt": "2026-01-28T16:54:56.941413+00:00", "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", "features.operators.openshift.io/cnf": "false", "features.operators.openshift.io/cni": "false", @@ -165846,7 +165881,7 @@ "features.operators.openshift.io/token-auth-aws": "false", "features.operators.openshift.io/token-auth-azure": "false", "features.operators.openshift.io/token-auth-gcp": "false", - "olm.skipRange": ">= 4.7.0 < 4.8.9", + "olm.skipRange": ">= 4.7.0 < 4.8.8", "operatorframework.io/suggested-namespace": "rhacs-operator", "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", @@ -167040,7 +167075,3722 @@ { "path": "auditLogs.collection", "displayName": "Collection", - "description": "Whether collection of Kubernetes audit logs should be enabled or disabled. Currently, this is only\nsupported on OpenShift 4, and trying to enable it on non-OpenShift 4 clusters will result in an error.\nUse the 'Auto' setting to enable it on compatible environments, and disable it elsewhere." + "description": "Whether collection of Kubernetes audit logs should be enabled or disabled. Currently, this is only\nsupported on OpenShift 4, and trying to enable it on non-OpenShift 4 clusters will result in an error.\nUse the 'Auto' setting to enable it on compatible environments, and disable it elsewhere." + }, + { + "path": "customize.labels", + "displayName": "Labels", + "description": "Custom labels to set on all managed objects." + }, + { + "path": "customize.annotations", + "displayName": "Annotations", + "description": "Custom annotations to set on all managed objects." + }, + { + "path": "customize.envVars", + "displayName": "Environment Variables", + "description": "Custom environment variables to set on managed pods' containers." + }, + { + "path": "imagePullSecrets[0].name", + "displayName": "Name", + "description": "The name of the referenced secret.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:Secret" + ] + }, + { + "path": "misc.createSCCs", + "displayName": "Create SecurityContextConstraints for Operand", + "description": "Deprecated field. This field will be removed in a future release.\nSet this to true to have the operator create SecurityContextConstraints (SCCs) for the operands. This\nisn't usually needed, and may interfere with other workloads.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "monitoring.openshift.enabled", + "displayName": "Enabled", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:booleanSwitch" + ] + }, + { + "path": "network.policies", + "displayName": "Network Policies", + "description": "To provide security at the network level the ACS Operator creates NetworkPolicy resources by default. If you want to manage your own NetworkPolicy objects then set this to \"Disabled\"." + }, + { + "path": "overlays[0].apiVersion", + "displayName": "API Version", + "description": "Resource API version." + }, + { + "path": "overlays[0].kind", + "displayName": "Kind", + "description": "Resource kind." + }, + { + "path": "overlays[0].name", + "displayName": "Name", + "description": "Name of resource." + }, + { + "path": "overlays[0].optional", + "displayName": "Optional", + "description": "Optional marks the overlay as optional.\nWhen Optional is true, and the specified resource does not exist in the output manifests, the overlay will be skipped, and a warning will be logged.\nWhen Optional is false, and the specified resource does not exist in the output manifests, an error will be thrown." + }, + { + "path": "overlays[0].patches", + "displayName": "Patches", + "description": "List of patches to apply to resource." + }, + { + "path": "overlays[0].patches[0].path", + "displayName": "Path", + "description": "Path of the form a.[key1:value1].b.[:value2]\nWhere [key1:value1] is a selector for a key-value pair to identify a list element and [:value] is a value\nselector to identify a list element in a leaf list.\nAll path intermediate nodes must exist." + }, + { + "path": "overlays[0].patches[0].value", + "displayName": "Value", + "description": "Value to add, delete or replace.\nFor add, the path should be a new leaf.\nFor delete, value should be unset.\nFor replace, path should reference an existing node.\nAll values are strings but are converted into appropriate type based on schema." + }, + { + "path": "overlays[0].patches[0].verbatim", + "displayName": "Verbatim", + "description": "Verbatim value to add, delete or replace.\nSame as Value, however the content is not interpreted as YAML, but treated as literal string instead.\nAt least one of Value and Verbatim must be empty." + }, + { + "path": "perNode.collector", + "displayName": "Collector Settings", + "description": "Settings for the Collector container, which is responsible for collecting process and networking\nactivity at the host level." + }, + { + "path": "perNode.compliance", + "displayName": "Compliance Settings", + "description": "Settings for the Compliance container, which is responsible for checking host-level configurations." + }, + { + "path": "perNode.nodeInventory", + "displayName": "Node Scanning Settings", + "description": "Settings for the Node-Inventory container, which is responsible for scanning the Nodes' filesystem." + }, + { + "path": "perNode.taintToleration", + "displayName": "Taint Toleration", + "description": "To ensure comprehensive monitoring of your cluster activity, Red Hat Advanced Cluster Security\nwill run services on every node in the cluster, including tainted nodes by default. If you do\nnot want this behavior, please select 'AvoidTaints' here." + }, + { + "path": "perNode.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "perNode.collector.collection", + "displayName": "Collection", + "description": "The method for system-level data collection. CORE_BPF is recommended.\nIf you select \"NoCollection\", you will not be able to see any information about network activity\nand process executions. The remaining settings in these section will not have any effect.\nThe value is a subject of conversion by the operator if needed, e.g. to\nremove deprecated methods.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:select:CORE_BPF", + "urn:alm:descriptor:com.tectonic.ui:select:NoCollection" + ] + }, + { + "path": "perNode.collector.imageFlavor", + "displayName": "Image Flavor", + "description": "Deprecated field.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "perNode.collector.forceCollection", + "displayName": "Force Collection", + "description": "Deprecated field. This field will be removed in a future release.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "perNode.collector.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "perNode.compliance.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "perNode.nodeInventory.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scanner.scannerComponent", + "displayName": "Scanner Component", + "description": "If you do not want to deploy the Red Hat Advanced Cluster Security Scanner, you can disable it here\n(not recommended).\nIf you do so, all the settings in this section will have no effect." + }, + { + "path": "scanner.analyzer", + "displayName": "Analyzer", + "description": "Settings pertaining to the analyzer deployment, such as for autoscaling." + }, + { + "path": "scanner.db", + "displayName": "DB", + "description": "Settings pertaining to the database used by the Red Hat Advanced Cluster Security Scanner." + }, + { + "path": "scanner.analyzer.scaling", + "displayName": "Scaling", + "description": "Controls the number of analyzer replicas and autoscaling." + }, + { + "path": "scanner.analyzer.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scanner.analyzer.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scanner.analyzer.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scanner.analyzer.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scanner.analyzer.scaling.autoScaling", + "displayName": "Autoscaling", + "description": "When enabled, the number of component replicas is managed dynamically based on the load, within the limits\nspecified below." + }, + { + "path": "scanner.analyzer.scaling.replicas", + "displayName": "Default Replicas", + "description": "When autoscaling is disabled, the number of replicas will always be configured to match this value." + }, + { + "path": "scanner.analyzer.scaling.minReplicas", + "displayName": "Autoscaling Minimum Replicas", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scanner.analyzer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scanner.analyzer.scaling.maxReplicas", + "displayName": "Autoscaling Maximum Replicas", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scanner.analyzer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scanner.db.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scanner.db.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scanner.db.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scanner.db.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scannerV4.scannerComponent", + "displayName": "Scanner V4 component", + "description": "If you want to enable the Scanner V4 component set this to \"AutoSense\"\nIf this field is not specified or set to \"Default\", the following defaulting takes place:\n* for new installations, Scanner V4 is enabled starting with ACS 4.8;\n* for upgrades to 4.8 from previous releases, Scanner V4 is disabled." + }, + { + "path": "scannerV4.indexer", + "displayName": "Indexer", + "description": "Settings pertaining to the indexer deployment.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.scannerComponent:AutoSense" + ] + }, + { + "path": "scannerV4.db", + "displayName": "DB", + "description": "Settings pertaining to the DB deployment.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.scannerComponent:AutoSense" + ] + }, + { + "path": "scannerV4.monitoring", + "displayName": "Monitoring", + "description": "Configures monitoring endpoint for Scanner V4. The monitoring endpoint\nallows other services to collect metrics from Scanner V4, provided in\nPrometheus compatible format.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.scannerComponent:AutoSense" + ] + }, + { + "path": "scannerV4.db.persistence", + "displayName": "Persistence", + "description": "Configures how Scanner V4 should store its persistent data.\nYou can use a persistent volume claim (the recommended default), a host path,\nor an emptyDir volume if Scanner V4 is running on a secured cluster without default StorageClass." + }, + { + "path": "scannerV4.db.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scannerV4.db.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scannerV4.db.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scannerV4.db.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim", + "displayName": "Persistent volume claim", + "description": "Uses a Kubernetes persistent volume claim (PVC) to manage the storage location of persistent data.\nRecommended for most users." + }, + { + "path": "scannerV4.db.persistence.hostPath", + "displayName": "Host path", + "description": "Stores persistent data on a directory on the host. This is not recommended, and should only\nbe used together with a node selector (only available in YAML view)." + }, + { + "path": "scannerV4.db.persistence.hostPath.path", + "displayName": "Path", + "description": "The path on the host running Central." + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim.claimName", + "displayName": "Claim Name", + "description": "The name of the PVC to manage persistent data. If no PVC with the given name exists, it will be\ncreated. Defaults to \"scanner-v4-db\" if not set." + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim.size", + "displayName": "Size", + "description": "The size of the persistent volume when created through the claim. If a claim was automatically created,\nthis can be used after the initial deployment to resize (grow) the volume (only supported by some\nstorage class controllers).", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:text" + ] + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim.storageClassName", + "displayName": "Storage Class", + "description": "The name of the storage class to use for the PVC. If your cluster is not configured with a default storage\nclass, you must select a value here.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:StorageClass" + ] + }, + { + "path": "scannerV4.indexer.scaling", + "displayName": "Scaling", + "description": "Controls the number of replicas and autoscaling for this component." + }, + { + "path": "scannerV4.indexer.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scannerV4.indexer.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scannerV4.indexer.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scannerV4.indexer.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scannerV4.indexer.scaling.autoScaling", + "displayName": "Autoscaling", + "description": "When enabled, the number of component replicas is managed dynamically based on the load, within the limits\nspecified below." + }, + { + "path": "scannerV4.indexer.scaling.replicas", + "displayName": "Default Replicas", + "description": "When autoscaling is disabled, the number of replicas will always be configured to match this value." + }, + { + "path": "scannerV4.indexer.scaling.minReplicas", + "displayName": "Autoscaling Minimum Replicas", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.indexer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scannerV4.indexer.scaling.maxReplicas", + "displayName": "Autoscaling Maximum Replicas", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.indexer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scannerV4.monitoring.exposeEndpoint", + "displayName": "Expose Endpoint", + "description": "Expose the monitoring endpoint. A new service, \"monitoring\",\nwith port 9090, will be created as well as a network policy allowing\ninbound connections to the port." + }, + { + "path": "sensor.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "sensor.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "sensor.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "sensor.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "tls.additionalCAs", + "displayName": "Additional CAs" + } + ] + }, + { + "name": "securitypolicies.config.stackrox.io", + "version": "v1alpha1", + "kind": "SecurityPolicy", + "displayName": "Security Policy", + "description": "SecurityPolicy is the schema for the policies API.", + "resources": [ + { + "name": "", + "kind": "Deployment", + "version": "v1" + } + ] + } + ] + }, + "description": "## Why use Red Hat Advanced Cluster Security for Kubernetes?\n\nProtecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.\n\n\nRed Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.\n\nRed Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.\n\n## Features and Benefits\n\n**Kubernetes-native security:**\n1. Increases protection.\n1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.\n1. Reduces time and costs.\n1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.\n1. Increases scalability and portability.\n1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.\n\n## Using the RHACS Operator\n\n**RHACS Operator channels:**\n\nRed Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:\n\n* `stable`: Provides the most recent version and patches to the most recent version.\n Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.\n* `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).\n\nNote that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.\n\n**RHACS comes with two custom resources:**\n\n1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.\n\n2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).\n\n### Central Services Explained\n\n| Service | Deployment Type | Description |\n| :------------------------------- | :-------------- | :-------------- |\n| Central | Deployment | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |\n| Central DB | Deployment | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |\n| Scanner | Deployment | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |\n| Scanner DB | Deployment | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |\n\n### Secured Cluster Services Explained\n\n| Service | Deployment Type | Description |\n| :------------------------------- | :-------------- | :-------------- |\n| Sensor | Deployment | Sensor analyzes and monitors Kubernetes in secured clusters. |\n| Collector | DaemonSet | Analyzes and monitors container activity on Kubernetes nodes.|\n| Admission Controller | Deployment | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |\n\n### Central Custom Resource\n\nCentral Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.\n\n### SecuredCluster Custom Resource\n\nSecuredCluster is the configuration template for the RHACS Secured Cluster services.\n\n#### Installation Prerequisites\n\nBefore deploying a SecuredCluster resource, you need to create a cluster init bundle secret.\n\n- **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).\n- **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate --output-secrets `. Choose any `name` and `file name` that you like.\n\nRun `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project `.\nThen, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.\n\n#### Required Fields\n\nThe following attributes are required to be specified. For all customization options, please visit the RHACS documentation.\n\n| Parameter | Description |\n| :----------------- | :-------------- |\n| `clusterName` | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |\n| `centralEndpoint` | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |\n", + "displayName": "Advanced Cluster Security for Kubernetes", + "installModes": [ + { + "type": "OwnNamespace", + "supported": false + }, + { + "type": "SingleNamespace", + "supported": false + }, + { + "type": "MultiNamespace", + "supported": false + }, + { + "type": "AllNamespaces", + "supported": true + } + ], + "keywords": [ + "advanced-cluster-security", + "stackrox", + "security", + "vulnerabilities", + "compliance", + "devsecops", + "monitoring", + "scanning", + "runtime-security", + "network policy", + "configuration", + "risk" + ], + "labels": { + "operatorframework.io/arch.amd64": "supported", + "operatorframework.io/arch.arm64": "supported", + "operatorframework.io/arch.ppc64le": "supported", + "operatorframework.io/arch.s390x": "supported" + }, + "links": [ + { + "name": "Red Hat Advanced Cluster Security Documentation", + "url": "https://docs.openshift.com/acs/welcome/" + }, + { + "name": "DataSheet", + "url": "https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet" + }, + { + "name": "Support Policy", + "url": "https://access.redhat.com/node/5822721" + }, + { + "name": "Community Site", + "url": "https://www.stackrox.io/" + } + ], + "maintainers": [ + { + "name": "Advanced Cluster Security product team", + "email": "rhacs-pm@redhat.com" + } + ], + "maturity": "alpha", + "minKubeVersion": "1.15.0", + "provider": { + "name": "Red Hat" + } + } + } + ], + "relatedImages": [ + { + "name": "central_db", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:3f1e304e0560feddb1e9af747e776d5bf9523eff36afaf4dffd41269249f454b" + }, + { + "name": "collector", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:acd810787f472ab16704e7b67c19780f75fabf27a69ca1e2097d6ae36e45007e" + }, + { + "name": "main", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:0aa055c5f92358b93a65aebccb5f2c8863c777f18a061f6e24a5bccdbae9c6d2" + }, + { + "name": "", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b22341e8dfba8b10b70f21f3b597c02874bae485c07517402db0930397d82688" + }, + { + "name": "manager", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9af2e62dbfae1e2828daf4f1af46093639957551dc88b36570247ffae0c74b03" + }, + { + "name": "roxctl", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:de63c514daff7b64511599c4ccc3bbebab4efcd40abbf498c508f98adf9f4a3b" + }, + { + "name": "scanner_db", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:c88278bf0be39566b9cc6d74cbed357459b2b53d9d44818f15b84698b0a83a75" + }, + { + "name": "scanner_db_slim", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:1a75e89f7e2de4f9c2904fe1129244eeeaff5c222c272b1627df9e291833975c" + }, + { + "name": "scanner", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:fb90724bba526007dd88af36a83e9679b5d85b35ba16cbf6add6a36d6e7284fa" + }, + { + "name": "scanner_slim", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:80464e5116aca53eefa8278a9023cb1befaf3e14bad55afac5dd90b9a3e0150e" + }, + { + "name": "scanner_v4_db", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:feb0df655762f320b2a85490907fce5d6b9aa6c8186d123324cd3812ab148def" + }, + { + "name": "scanner_v4", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:9476b1b03a69300deddc7ffdbb03bf408831ba37653669ea0d601fa60f274867" + } + ] +} +{ + "schema": "olm.bundle", + "name": "rhacs-operator.v4.8.9", + "package": "rhacs-operator", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9bb2d3ff2a97d0c3234e4864fc2d21ff278ce06e725e43c56f43e42bed97dd19", + "properties": [ + { + "type": "olm.gvk", + "value": { + "group": "config.stackrox.io", + "kind": "SecurityPolicy", + "version": "v1alpha1" + } + }, + { + "type": "olm.gvk", + "value": { + "group": "platform.stackrox.io", + "kind": "Central", + "version": "v1alpha1" + } + }, + { + "type": "olm.gvk", + "value": { + "group": "platform.stackrox.io", + "kind": "SecuredCluster", + "version": "v1alpha1" + } + }, + { + "type": "olm.package", + "value": { + "packageName": "rhacs-operator", + "version": "4.8.9" + } + }, + { + "type": "olm.csv.metadata", + "value": { + "annotations": { + "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", + "capabilities": "Seamless Upgrades", + "categories": "Security", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:613ba30aceb61d8fca16136d869f45bdd2a3f51fcc024d9caf03ae8ca98b39ee", + "createdAt": "2026-03-11T18:14:08.454853+00:00", + "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", + "features.operators.openshift.io/cnf": "false", + "features.operators.openshift.io/cni": "false", + "features.operators.openshift.io/csi": "false", + "features.operators.openshift.io/disconnected": "true", + "features.operators.openshift.io/fips-compliant": "true", + "features.operators.openshift.io/proxy-aware": "true", + "features.operators.openshift.io/tls-profiles": "false", + "features.operators.openshift.io/token-auth-aws": "false", + "features.operators.openshift.io/token-auth-azure": "false", + "features.operators.openshift.io/token-auth-gcp": "false", + "olm.skipRange": ">= 4.7.0 < 4.8.9", + "operatorframework.io/suggested-namespace": "rhacs-operator", + "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", + "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", + "operators.operatorframework.io/builder": "operator-sdk-unknown", + "operators.operatorframework.io/project_layout": "go.kubebuilder.io/v4", + "support": "Red Hat" + }, + "apiServiceDefinitions": {}, + "crdDescriptions": { + "owned": [ + { + "name": "centrals.platform.stackrox.io", + "version": "v1alpha1", + "kind": "Central", + "displayName": "Central", + "description": "Central is the configuration template for the central services. This includes the API server, persistent storage,\nand the web UI, as well as the image scanner.", + "resources": [ + { + "name": "", + "kind": "Deployment", + "version": "v1" + }, + { + "name": "", + "kind": "Route", + "version": "v1" + }, + { + "name": "", + "kind": "Secret", + "version": "v1" + }, + { + "name": "", + "kind": "Service", + "version": "v1" + } + ], + "statusDescriptors": [ + { + "path": "central.adminPassword.info", + "displayName": "Admin Credentials Info", + "description": "Info stores information on how to obtain the admin password." + }, + { + "path": "productVersion", + "displayName": "Product Version", + "description": "The deployed version of the product." + }, + { + "path": "central", + "displayName": "Central" + }, + { + "path": "central.adminPassword.adminPasswordSecretReference", + "displayName": "Admin Password Secret Reference", + "description": "AdminPasswordSecretReference contains reference for the admin password", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:Secret" + ] + } + ], + "specDescriptors": [ + { + "path": "central", + "displayName": "Central Component Settings", + "description": "Settings for the Central component, which is responsible for all user interaction." + }, + { + "path": "scanner", + "displayName": "Scanner Component Settings", + "description": "Settings for the Scanner component, which is responsible for vulnerability scanning of container\nimages." + }, + { + "path": "scannerV4", + "displayName": "Scanner V4 Component Settings", + "description": "Settings for the Scanner V4 component, which can run in addition to the previously existing Scanner components" + }, + { + "path": "egress", + "displayName": "Egress", + "description": "Settings related to outgoing network traffic." + }, + { + "path": "tls", + "displayName": "TLS", + "description": "Allows you to specify additional trusted Root CAs." + }, + { + "path": "imagePullSecrets", + "displayName": "Image Pull Secrets", + "description": "Additional image pull secrets to be taken into account for pulling images.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "customize", + "displayName": "Customizations", + "description": "Customizations to apply on all Central Services components.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "overlays", + "displayName": "Overlays", + "description": "Overlays", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "monitoring", + "displayName": "Monitoring", + "description": "Monitoring configuration.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "network", + "displayName": "Network", + "description": "Network configuration.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "configAsCode", + "displayName": "Config-as-Code", + "description": "Config-as-Code configuration.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "misc", + "displayName": "Miscellaneous", + "description": "Deprecated field. This field will be removed in a future release.\nMiscellaneous settings.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.adminPasswordSecret", + "displayName": "Administrator Password", + "description": "Specify a secret that contains the administrator password in the \"password\" data item.\nIf omitted, the operator will auto-generate a password and store it in the \"password\" item\nin the \"central-htpasswd\" secret." + }, + { + "path": "central.exposure", + "displayName": "Exposure", + "description": "Here you can configure if you want to expose central through a node port, a load balancer, or an OpenShift\nroute." + }, + { + "path": "central.defaultTLSSecret", + "displayName": "User-facing TLS certificate secret", + "description": "By default, Central will only serve an internal TLS certificate, which means that you will\nneed to handle TLS termination at the ingress or load balancer level.\nIf you want to terminate TLS in Central and serve a custom server certificate, you can specify\na secret containing the certificate and private key here." + }, + { + "path": "central.monitoring", + "displayName": "Monitoring", + "description": "Configures monitoring endpoint for Central. The monitoring endpoint\nallows other services to collect metrics from Central, provided in\nPrometheus compatible format." + }, + { + "path": "central.db", + "displayName": "Central DB Settings", + "description": "Settings for Central DB, which is responsible for data persistence." + }, + { + "path": "central.telemetry", + "displayName": "Telemetry", + "description": "Configures telemetry settings for Central. If enabled, Central transmits telemetry and diagnostic\ndata to a remote storage backend.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.declarativeConfiguration", + "displayName": "Declarative Configuration", + "description": "Configures resources within Central in a declarative manner.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.notifierSecretsEncryption", + "displayName": "Notifier Secrets Encryption", + "description": "Configures the encryption of notifier secrets stored in the Central DB.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "central.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "central.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "central.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "central.adminPasswordGenerationDisabled", + "displayName": "Admin Password Generation Disabled", + "description": "Disable admin password generation. Do not use this for first-time installations,\nas you will have no way to perform initial setup and configuration of alternative authentication methods.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.persistence", + "displayName": "Persistence", + "description": "Unused field. This field exists solely for backward compatibility starting from version v4.6.0.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.adminPasswordSecret.name", + "displayName": "Name", + "description": "The name of the referenced secret.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:Secret" + ] + }, + { + "path": "central.db.passwordSecret", + "displayName": "Administrator Password", + "description": "Specify a secret that contains the password in the \"password\" data item. This can only be used when\nspecifying a connection string manually.\nWhen omitted, the operator will auto-generate a DB password and store it in the \"password\" item\nin the \"central-db-password\" secret." + }, + { + "path": "central.db.connectionString", + "displayName": "Connection String", + "description": "Specify a connection string that corresponds to a database managed elsewhere. If set, the operator will not manage the Central DB.\nWhen using this option, you must explicitly set a password secret; automatically generating a password will not\nbe supported." + }, + { + "path": "central.db.persistence", + "displayName": "Persistence", + "description": "Configures how Central DB should store its persistent data. You can choose between using a persistent\nvolume claim (recommended default), and a host path." + }, + { + "path": "central.db.configOverride", + "displayName": "Config map that will override postgresql.conf and pg_hba.conf", + "description": "Config map containing postgresql.conf and pg_hba.conf that will be used if modifications need to be applied." + }, + { + "path": "central.db.connectionPoolSize", + "displayName": "Database Connection Pool Size Settings", + "description": "Configures the database connection pool size." + }, + { + "path": "central.db.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "central.db.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "central.db.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "central.db.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "central.db.isEnabled", + "displayName": "Is Enabled", + "description": "Deprecated field. It is no longer necessary to specify it.\nThis field will be removed in a future release.\nCentral is configured to use PostgreSQL by default.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.db.configOverride.name", + "displayName": "Name", + "description": "The name of the referenced config map.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:ConfigMap" + ] + }, + { + "path": "central.db.connectionPoolSize.maxConnections", + "displayName": "Maximum Connections", + "description": "Maximum number of connections in the connection pool." + }, + { + "path": "central.db.connectionPoolSize.minConnections", + "displayName": "Minimum Connections", + "description": "Minimum number of connections in the connection pool." + }, + { + "path": "central.db.passwordSecret.name", + "displayName": "Name", + "description": "The name of the referenced secret.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:Secret" + ] + }, + { + "path": "central.db.persistence.persistentVolumeClaim", + "displayName": "Persistent volume claim", + "description": "Uses a Kubernetes persistent volume claim (PVC) to manage the storage location of persistent data.\nRecommended for most users." + }, + { + "path": "central.db.persistence.hostPath", + "displayName": "Host path", + "description": "Stores persistent data on a directory on the host. This is not recommended, and should only\nbe used together with a node selector (only available in YAML view)." + }, + { + "path": "central.db.persistence.hostPath.path", + "displayName": "Path", + "description": "The path on the host running Central." + }, + { + "path": "central.db.persistence.persistentVolumeClaim.claimName", + "displayName": "Claim Name", + "description": "The name of the PVC to manage persistent data. If no PVC with the given name exists, it will be\ncreated. Defaults to \"central-db\" if not set." + }, + { + "path": "central.db.persistence.persistentVolumeClaim.size", + "displayName": "Size", + "description": "The size of the persistent volume when created through the claim. If a claim was automatically created,\nthis can be used after the initial deployment to resize (grow) the volume (only supported by some\nstorage class controllers).", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:text" + ] + }, + { + "path": "central.db.persistence.persistentVolumeClaim.storageClassName", + "displayName": "Storage Class", + "description": "The name of the storage class to use for the PVC. If your cluster is not configured with a default storage\nclass, you must select a value here.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:StorageClass" + ] + }, + { + "path": "central.declarativeConfiguration.configMaps", + "displayName": "Config maps containing declarative configuration", + "description": "List of config maps containing declarative configuration." + }, + { + "path": "central.declarativeConfiguration.secrets", + "displayName": "Secrets containing declarative configuration", + "description": "List of secrets containing declarative configuration." + }, + { + "path": "central.declarativeConfiguration.configMaps[0].name", + "displayName": "Name", + "description": "The name of the referenced config map.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:ConfigMap" + ] + }, + { + "path": "central.declarativeConfiguration.secrets[0].name", + "displayName": "Name", + "description": "The name of the referenced secret.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:Secret" + ] + }, + { + "path": "central.defaultTLSSecret.name", + "displayName": "Name", + "description": "The name of the referenced secret.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:Secret" + ] + }, + { + "path": "central.exposure.route", + "displayName": "Route", + "description": "Expose Central through an OpenShift route." + }, + { + "path": "central.exposure.loadBalancer", + "displayName": "Load Balancer", + "description": "Expose Central through a load balancer service." + }, + { + "path": "central.exposure.nodePort", + "displayName": "Node Port", + "description": "Expose Central through a node port." + }, + { + "path": "central.exposure.loadBalancer.enabled", + "displayName": "Enabled" + }, + { + "path": "central.exposure.loadBalancer.port", + "displayName": "Port", + "description": "Defaults to 443 if not set.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:central.exposure.loadBalancer.enabled:true" + ] + }, + { + "path": "central.exposure.loadBalancer.ip", + "displayName": "IP", + "description": "If you have a static IP address reserved for your load balancer, you can enter it here.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:central.exposure.loadBalancer.enabled:true" + ] + }, + { + "path": "central.exposure.nodePort.enabled", + "displayName": "Enabled" + }, + { + "path": "central.exposure.nodePort.port", + "displayName": "Port", + "description": "Use this to specify an explicit node port. Most users should leave this empty.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:central.exposure.nodePort.enabled:true" + ] + }, + { + "path": "central.exposure.route.enabled", + "displayName": "Enabled", + "description": "Expose Central with a passthrough route." + }, + { + "path": "central.exposure.route.host", + "displayName": "Host", + "description": "Specify a custom hostname for the Central route.\nIf unspecified, an appropriate default value will be automatically chosen by the OpenShift route operator." + }, + { + "path": "central.exposure.route.reencrypt", + "displayName": "Re-Encrypt Route", + "description": "Set up a Central route with reencrypt TLS termination.\nFor reencrypt routes, the request is terminated on the OpenShift router with a custom certificate.\nThe request is then reencrypted by the OpenShift router and sent to Central.\n[user] --TLS--> [OpenShift router] --TLS--> [Central]" + }, + { + "path": "central.exposure.route.reencrypt.enabled", + "displayName": "Enabled", + "description": "Expose Central with a reencrypt route.\nShould not be used for sensor communication." + }, + { + "path": "central.exposure.route.reencrypt.host", + "displayName": "Host", + "description": "Specify a custom hostname for the Central reencrypt route.\nIf unspecified, an appropriate default value will be automatically chosen by the OpenShift route operator." + }, + { + "path": "central.exposure.route.reencrypt.tls", + "displayName": "TLS Settings", + "description": "TLS settings for exposing Central via a reencrypt Route." + }, + { + "path": "central.exposure.route.reencrypt.tls.caCertificate", + "displayName": "CA Certificate", + "description": "The PEM encoded certificate chain that may be used to establish a complete chain of trust.\nDefaults to the OpenShift certificate authority." + }, + { + "path": "central.exposure.route.reencrypt.tls.certificate", + "displayName": "Certificate", + "description": "The PEM encoded certificate that is served on the route. Must be a single serving\ncertificate instead of a certificate chain.\nDefaults to a certificate signed by the OpenShift certificate authority." + }, + { + "path": "central.exposure.route.reencrypt.tls.destinationCACertificate", + "displayName": "Destination CA Certificate", + "description": "The CA certificate of the final destination, i.e. of Central.\nUsed by the OpenShift router for health checks on the secure connection.\nDefaults to the Central certificate authority." + }, + { + "path": "central.exposure.route.reencrypt.tls.key", + "displayName": "Private Key", + "description": "The PEM encoded private key of the certificate that is served on the route.\nDefaults to a certificate signed by the OpenShift certificate authority." + }, + { + "path": "central.monitoring.exposeEndpoint", + "displayName": "Expose Endpoint", + "description": "Expose the monitoring endpoint. A new service, \"monitoring\",\nwith port 9090, will be created as well as a network policy allowing\ninbound connections to the port." + }, + { + "path": "central.notifierSecretsEncryption.enabled", + "displayName": "Enabled", + "description": "Enables the encryption of notifier secrets stored in the Central DB." + }, + { + "path": "central.persistence.persistentVolumeClaim", + "displayName": "Persistent volume claim", + "description": "Uses a Kubernetes persistent volume claim (PVC) to manage the storage location of persistent data.\nRecommended for most users." + }, + { + "path": "central.persistence.hostPath", + "displayName": "Host path", + "description": "Stores persistent data on a directory on the host. This is not recommended, and should only\nbe used together with a node selector (only available in YAML view)." + }, + { + "path": "central.persistence.hostPath.path", + "displayName": "Path", + "description": "The path on the host running Central." + }, + { + "path": "central.persistence.persistentVolumeClaim.claimName", + "displayName": "Claim Name", + "description": "The name of the PVC to manage persistent data. If no PVC with the given name exists, it will be\ncreated. Defaults to \"stackrox-db\" if not set." + }, + { + "path": "central.persistence.persistentVolumeClaim.size", + "displayName": "Size", + "description": "The size of the persistent volume when created through the claim. If a claim was automatically created,\nthis can be used after the initial deployment to resize (grow) the volume (only supported by some\nstorage class controllers).", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:text" + ] + }, + { + "path": "central.persistence.persistentVolumeClaim.storageClassName", + "displayName": "Storage Class", + "description": "The name of the storage class to use for the PVC. If your cluster is not configured with a default storage\nclass, you must select a value here.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:StorageClass" + ] + }, + { + "path": "central.telemetry.enabled", + "displayName": "Enabled", + "description": "Specifies if Telemetry is enabled.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:booleanSwitch" + ] + }, + { + "path": "central.telemetry.storage", + "displayName": "Storage", + "description": "Defines the telemetry storage backend for Central.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:central.telemetry.enabled:true" + ] + }, + { + "path": "central.telemetry.storage.endpoint", + "displayName": "Endpoint", + "description": "Storage API endpoint." + }, + { + "path": "central.telemetry.storage.key", + "displayName": "Key", + "description": "Storage API key. If not set, telemetry is disabled." + }, + { + "path": "configAsCode.configAsCodeComponent", + "displayName": "Config as Code component", + "description": "If you want to deploy the Config as Code component, set this to \"Enabled\"" + }, + { + "path": "customize.labels", + "displayName": "Labels", + "description": "Custom labels to set on all managed objects." + }, + { + "path": "customize.annotations", + "displayName": "Annotations", + "description": "Custom annotations to set on all managed objects." + }, + { + "path": "customize.envVars", + "displayName": "Environment Variables", + "description": "Custom environment variables to set on managed pods' containers." + }, + { + "path": "egress.connectivityPolicy", + "displayName": "Connectivity Policy", + "description": "Configures whether Red Hat Advanced Cluster Security should run in online or offline (disconnected) mode.\nIn offline mode, automatic updates of vulnerability definitions and kernel modules are disabled." + }, + { + "path": "imagePullSecrets[0].name", + "displayName": "Name", + "description": "The name of the referenced secret.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:Secret" + ] + }, + { + "path": "misc.createSCCs", + "displayName": "Create SecurityContextConstraints for Operand", + "description": "Deprecated field. This field will be removed in a future release.\nSet this to true to have the operator create SecurityContextConstraints (SCCs) for the operands. This\nisn't usually needed, and may interfere with other workloads.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "monitoring.openshift.enabled", + "displayName": "Enabled", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:booleanSwitch" + ] + }, + { + "path": "network.policies", + "displayName": "Network Policies", + "description": "To provide security at the network level the ACS Operator creates NetworkPolicy resources by default. If you want to manage your own NetworkPolicy objects then set this to \"Disabled\"." + }, + { + "path": "overlays[0].apiVersion", + "displayName": "API Version", + "description": "Resource API version." + }, + { + "path": "overlays[0].kind", + "displayName": "Kind", + "description": "Resource kind." + }, + { + "path": "overlays[0].name", + "displayName": "Name", + "description": "Name of resource." + }, + { + "path": "overlays[0].optional", + "displayName": "Optional", + "description": "Optional marks the overlay as optional.\nWhen Optional is true, and the specified resource does not exist in the output manifests, the overlay will be skipped, and a warning will be logged.\nWhen Optional is false, and the specified resource does not exist in the output manifests, an error will be thrown." + }, + { + "path": "overlays[0].patches", + "displayName": "Patches", + "description": "List of patches to apply to resource." + }, + { + "path": "overlays[0].patches[0].path", + "displayName": "Path", + "description": "Path of the form a.[key1:value1].b.[:value2]\nWhere [key1:value1] is a selector for a key-value pair to identify a list element and [:value] is a value\nselector to identify a list element in a leaf list.\nAll path intermediate nodes must exist." + }, + { + "path": "overlays[0].patches[0].value", + "displayName": "Value", + "description": "Value to add, delete or replace.\nFor add, the path should be a new leaf.\nFor delete, value should be unset.\nFor replace, path should reference an existing node.\nAll values are strings but are converted into appropriate type based on schema." + }, + { + "path": "overlays[0].patches[0].verbatim", + "displayName": "Verbatim", + "description": "Verbatim value to add, delete or replace.\nSame as Value, however the content is not interpreted as YAML, but treated as literal string instead.\nAt least one of Value and Verbatim must be empty." + }, + { + "path": "scanner.scannerComponent", + "displayName": "Scanner Component", + "description": "If you do not want to deploy the Red Hat Advanced Cluster Security Scanner, you can disable it here\n(not recommended). By default, the scanner is enabled.\nIf you do so, all the settings in this section will have no effect." + }, + { + "path": "scanner.analyzer", + "displayName": "Analyzer", + "description": "Settings pertaining to the analyzer deployment, such as for autoscaling.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scanner.scannerComponent:Enabled" + ] + }, + { + "path": "scanner.db", + "displayName": "DB", + "description": "Settings pertaining to the database used by the Red Hat Advanced Cluster Security Scanner.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scanner.scannerComponent:Enabled" + ] + }, + { + "path": "scanner.monitoring", + "displayName": "Monitoring", + "description": "Configures monitoring endpoint for Scanner. The monitoring endpoint\nallows other services to collect metrics from Scanner, provided in\nPrometheus compatible format." + }, + { + "path": "scanner.analyzer.scaling", + "displayName": "Scaling", + "description": "Controls the number of analyzer replicas and autoscaling." + }, + { + "path": "scanner.analyzer.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scanner.analyzer.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scanner.analyzer.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scanner.analyzer.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scanner.analyzer.scaling.autoScaling", + "displayName": "Autoscaling", + "description": "When enabled, the number of component replicas is managed dynamically based on the load, within the limits\nspecified below." + }, + { + "path": "scanner.analyzer.scaling.replicas", + "displayName": "Default Replicas", + "description": "When autoscaling is disabled, the number of replicas will always be configured to match this value." + }, + { + "path": "scanner.analyzer.scaling.minReplicas", + "displayName": "Autoscaling Minimum Replicas", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scanner.analyzer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scanner.analyzer.scaling.maxReplicas", + "displayName": "Autoscaling Maximum Replicas", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scanner.analyzer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scanner.db.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scanner.db.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scanner.db.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scanner.db.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scanner.monitoring.exposeEndpoint", + "displayName": "Expose Endpoint", + "description": "Expose the monitoring endpoint. A new service, \"monitoring\",\nwith port 9090, will be created as well as a network policy allowing\ninbound connections to the port." + }, + { + "path": "scannerV4.scannerComponent", + "displayName": "Scanner V4 component", + "description": "Can be specified as \"Enabled\" or \"Disabled\".\nIf this field is not specified, the following defaulting takes place:\n* for new installations, Scanner V4 is enabled starting with ACS 4.8;\n* for upgrades to 4.8 from previous releases, Scanner V4 is disabled." + }, + { + "path": "scannerV4.indexer", + "displayName": "Indexer", + "description": "Settings pertaining to the indexer deployment.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.scannerComponent:Enabled" + ] + }, + { + "path": "scannerV4.matcher", + "displayName": "Matcher", + "description": "Settings pertaining to the matcher deployment.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.scannerComponent:Enabled" + ] + }, + { + "path": "scannerV4.db", + "displayName": "DB", + "description": "Settings pertaining to the DB deployment.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.scannerComponent:Enabled" + ] + }, + { + "path": "scannerV4.monitoring", + "displayName": "Monitoring", + "description": "Configures monitoring endpoint for Scanner V4. The monitoring endpoint\nallows other services to collect metrics from Scanner V4, provided in\nPrometheus compatible format.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.scannerComponent:Enabled" + ] + }, + { + "path": "scannerV4.db.persistence", + "displayName": "Persistence", + "description": "Configures how Scanner V4 should store its persistent data.\nYou can use a persistent volume claim (the recommended default), a host path,\nor an emptyDir volume if Scanner V4 is running on a secured cluster without default StorageClass." + }, + { + "path": "scannerV4.db.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scannerV4.db.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scannerV4.db.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scannerV4.db.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim", + "displayName": "Persistent volume claim", + "description": "Uses a Kubernetes persistent volume claim (PVC) to manage the storage location of persistent data.\nRecommended for most users." + }, + { + "path": "scannerV4.db.persistence.hostPath", + "displayName": "Host path", + "description": "Stores persistent data on a directory on the host. This is not recommended, and should only\nbe used together with a node selector (only available in YAML view)." + }, + { + "path": "scannerV4.db.persistence.hostPath.path", + "displayName": "Path", + "description": "The path on the host running Central." + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim.claimName", + "displayName": "Claim Name", + "description": "The name of the PVC to manage persistent data. If no PVC with the given name exists, it will be\ncreated. Defaults to \"scanner-v4-db\" if not set." + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim.size", + "displayName": "Size", + "description": "The size of the persistent volume when created through the claim. If a claim was automatically created,\nthis can be used after the initial deployment to resize (grow) the volume (only supported by some\nstorage class controllers).", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:text" + ] + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim.storageClassName", + "displayName": "Storage Class", + "description": "The name of the storage class to use for the PVC. If your cluster is not configured with a default storage\nclass, you must select a value here.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:StorageClass" + ] + }, + { + "path": "scannerV4.indexer.scaling", + "displayName": "Scaling", + "description": "Controls the number of replicas and autoscaling for this component." + }, + { + "path": "scannerV4.indexer.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scannerV4.indexer.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scannerV4.indexer.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scannerV4.indexer.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scannerV4.indexer.scaling.autoScaling", + "displayName": "Autoscaling", + "description": "When enabled, the number of component replicas is managed dynamically based on the load, within the limits\nspecified below." + }, + { + "path": "scannerV4.indexer.scaling.replicas", + "displayName": "Default Replicas", + "description": "When autoscaling is disabled, the number of replicas will always be configured to match this value." + }, + { + "path": "scannerV4.indexer.scaling.minReplicas", + "displayName": "Autoscaling Minimum Replicas", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.indexer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scannerV4.indexer.scaling.maxReplicas", + "displayName": "Autoscaling Maximum Replicas", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.indexer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scannerV4.matcher.scaling", + "displayName": "Scaling", + "description": "Controls the number of replicas and autoscaling for this component." + }, + { + "path": "scannerV4.matcher.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scannerV4.matcher.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scannerV4.matcher.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scannerV4.matcher.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scannerV4.matcher.scaling.autoScaling", + "displayName": "Autoscaling", + "description": "When enabled, the number of component replicas is managed dynamically based on the load, within the limits\nspecified below." + }, + { + "path": "scannerV4.matcher.scaling.replicas", + "displayName": "Default Replicas", + "description": "When autoscaling is disabled, the number of replicas will always be configured to match this value." + }, + { + "path": "scannerV4.matcher.scaling.minReplicas", + "displayName": "Autoscaling Minimum Replicas", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.matcher.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scannerV4.matcher.scaling.maxReplicas", + "displayName": "Autoscaling Maximum Replicas", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.matcher.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scannerV4.monitoring.exposeEndpoint", + "displayName": "Expose Endpoint", + "description": "Expose the monitoring endpoint. A new service, \"monitoring\",\nwith port 9090, will be created as well as a network policy allowing\ninbound connections to the port." + }, + { + "path": "tls.additionalCAs", + "displayName": "Additional CAs" + } + ] + }, + { + "name": "securedclusters.platform.stackrox.io", + "version": "v1alpha1", + "kind": "SecuredCluster", + "displayName": "Secured Cluster", + "description": "SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is\nresponsible for the connection to Central, and Collector, which performs host-level collection of process and\nnetwork events.

\n**Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or\nconsult the RHACS documentation on creating cluster init bundles.", + "resources": [ + { + "name": "", + "kind": "DaemonSet", + "version": "v1" + }, + { + "name": "", + "kind": "Deployment", + "version": "v1" + } + ], + "statusDescriptors": [ + { + "path": "productVersion", + "displayName": "Product Version", + "description": "The deployed version of the product." + }, + { + "path": "clusterName", + "displayName": "Cluster Name", + "description": "The assigned cluster name per the spec. This cannot be changed afterwards. If you need to change the\ncluster name, please delete and recreate this resource." + } + ], + "specDescriptors": [ + { + "path": "clusterName", + "displayName": "Cluster Name", + "description": "The unique name of this cluster, as it will be shown in the Red Hat Advanced Cluster Security UI.\nNote: Once a name is set here, you will not be able to change it again. You will need to delete\nand re-create this object in order to register a cluster with a new name." + }, + { + "path": "centralEndpoint", + "displayName": "Central Endpoint", + "description": "The endpoint of the Red Hat Advanced Cluster Security Central instance to connect to,\nincluding the port number. If no port is specified and the endpoint contains an https://\nprotocol specification, then the port 443 is implicitly assumed.\nIf using a non-gRPC capable load balancer, use the WebSocket protocol by prefixing the endpoint\naddress with wss://.\nNote: when leaving this blank, Sensor will attempt to connect to a Central instance running in the same\nnamespace." + }, + { + "path": "sensor", + "displayName": "Sensor Settings", + "description": "Settings for the Sensor component." + }, + { + "path": "admissionControl", + "displayName": "Admission Control Settings", + "description": "Settings for the Admission Control component, which is necessary for preventive policy enforcement,\nand for Kubernetes event monitoring." + }, + { + "path": "perNode", + "displayName": "Per Node Settings", + "description": "Settings for the components running on each node in the cluster (Collector and Compliance)." + }, + { + "path": "auditLogs", + "displayName": "Kubernetes Audit Logs Ingestion Settings", + "description": "Settings relating to the ingestion of Kubernetes audit logs." + }, + { + "path": "scanner", + "displayName": "Scanner Component Settings", + "description": "Settings for the Scanner component, which is responsible for vulnerability scanning of container\nimages stored in a cluster-local image repository." + }, + { + "path": "scannerV4", + "displayName": "Scanner V4 Component Settings", + "description": "Settings for the Scanner V4 components, which can run in addition to the previously existing Scanner components" + }, + { + "path": "tls", + "displayName": "TLS", + "description": "Allows you to specify additional trusted Root CAs." + }, + { + "path": "imagePullSecrets", + "displayName": "Image Pull Secrets", + "description": "Additional image pull secrets to be taken into account for pulling images.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "customize", + "displayName": "Customizations", + "description": "Customizations to apply on all Central Services components.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "overlays", + "displayName": "Overlays", + "description": "Overlays", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "monitoring", + "displayName": "Monitoring", + "description": "Monitoring configuration.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "registryOverride", + "displayName": "Custom Default Image Registry", + "description": "Set this parameter to override the default registry in images. For example, nginx:latest -> /library/nginx:latest", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "network", + "displayName": "Network", + "description": "Network configuration.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "misc", + "displayName": "Miscellaneous", + "description": "Deprecated field. This field will be removed in a future release.\nMiscellaneous settings.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "admissionControl.listenOnCreates", + "displayName": "Listen On Creates", + "description": "Set this to 'true' to enable preventive policy enforcement for object creations." + }, + { + "path": "admissionControl.listenOnUpdates", + "displayName": "Listen On Updates", + "description": "Set this to 'true' to enable preventive policy enforcement for object updates.\n\nNote: this will not have any effect unless 'Listen On Creates' is set to 'true' as well." + }, + { + "path": "admissionControl.listenOnEvents", + "displayName": "Listen On Events", + "description": "Set this to 'true' to enable monitoring and enforcement for Kubernetes events (port-forward and exec)." + }, + { + "path": "admissionControl.contactImageScanners", + "displayName": "Contact Image Scanners", + "description": "Should inline scanning be performed on previously unscanned images during a deployments admission review." + }, + { + "path": "admissionControl.timeoutSeconds", + "displayName": "Timeout Seconds", + "description": "Maximum timeout period for admission review, upon which admission review will fail open.\nUse it to set request timeouts when you enable inline image scanning.\nThe default kubectl timeout is 30 seconds; taking padding into account, this should not exceed 25 seconds.\nOn OpenShift webhook timeouts cannot exceed 13 seconds, hence with padding this value shall not exceed 10 seconds." + }, + { + "path": "admissionControl.bypass", + "displayName": "Bypass", + "description": "Enables teams to bypass admission control in a monitored manner in the event of an emergency." + }, + { + "path": "admissionControl.replicas", + "displayName": "Replicas", + "description": "The number of replicas of the admission control pod." + }, + { + "path": "admissionControl.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "admissionControl.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "admissionControl.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "admissionControl.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "auditLogs.collection", + "displayName": "Collection", + "description": "Whether collection of Kubernetes audit logs should be enabled or disabled. Currently, this is only\nsupported on OpenShift 4, and trying to enable it on non-OpenShift 4 clusters will result in an error.\nUse the 'Auto' setting to enable it on compatible environments, and disable it elsewhere." + }, + { + "path": "customize.labels", + "displayName": "Labels", + "description": "Custom labels to set on all managed objects." + }, + { + "path": "customize.annotations", + "displayName": "Annotations", + "description": "Custom annotations to set on all managed objects." + }, + { + "path": "customize.envVars", + "displayName": "Environment Variables", + "description": "Custom environment variables to set on managed pods' containers." + }, + { + "path": "imagePullSecrets[0].name", + "displayName": "Name", + "description": "The name of the referenced secret.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:Secret" + ] + }, + { + "path": "misc.createSCCs", + "displayName": "Create SecurityContextConstraints for Operand", + "description": "Deprecated field. This field will be removed in a future release.\nSet this to true to have the operator create SecurityContextConstraints (SCCs) for the operands. This\nisn't usually needed, and may interfere with other workloads.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "monitoring.openshift.enabled", + "displayName": "Enabled", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:booleanSwitch" + ] + }, + { + "path": "network.policies", + "displayName": "Network Policies", + "description": "To provide security at the network level the ACS Operator creates NetworkPolicy resources by default. If you want to manage your own NetworkPolicy objects then set this to \"Disabled\"." + }, + { + "path": "overlays[0].apiVersion", + "displayName": "API Version", + "description": "Resource API version." + }, + { + "path": "overlays[0].kind", + "displayName": "Kind", + "description": "Resource kind." + }, + { + "path": "overlays[0].name", + "displayName": "Name", + "description": "Name of resource." + }, + { + "path": "overlays[0].optional", + "displayName": "Optional", + "description": "Optional marks the overlay as optional.\nWhen Optional is true, and the specified resource does not exist in the output manifests, the overlay will be skipped, and a warning will be logged.\nWhen Optional is false, and the specified resource does not exist in the output manifests, an error will be thrown." + }, + { + "path": "overlays[0].patches", + "displayName": "Patches", + "description": "List of patches to apply to resource." + }, + { + "path": "overlays[0].patches[0].path", + "displayName": "Path", + "description": "Path of the form a.[key1:value1].b.[:value2]\nWhere [key1:value1] is a selector for a key-value pair to identify a list element and [:value] is a value\nselector to identify a list element in a leaf list.\nAll path intermediate nodes must exist." + }, + { + "path": "overlays[0].patches[0].value", + "displayName": "Value", + "description": "Value to add, delete or replace.\nFor add, the path should be a new leaf.\nFor delete, value should be unset.\nFor replace, path should reference an existing node.\nAll values are strings but are converted into appropriate type based on schema." + }, + { + "path": "overlays[0].patches[0].verbatim", + "displayName": "Verbatim", + "description": "Verbatim value to add, delete or replace.\nSame as Value, however the content is not interpreted as YAML, but treated as literal string instead.\nAt least one of Value and Verbatim must be empty." + }, + { + "path": "perNode.collector", + "displayName": "Collector Settings", + "description": "Settings for the Collector container, which is responsible for collecting process and networking\nactivity at the host level." + }, + { + "path": "perNode.compliance", + "displayName": "Compliance Settings", + "description": "Settings for the Compliance container, which is responsible for checking host-level configurations." + }, + { + "path": "perNode.nodeInventory", + "displayName": "Node Scanning Settings", + "description": "Settings for the Node-Inventory container, which is responsible for scanning the Nodes' filesystem." + }, + { + "path": "perNode.taintToleration", + "displayName": "Taint Toleration", + "description": "To ensure comprehensive monitoring of your cluster activity, Red Hat Advanced Cluster Security\nwill run services on every node in the cluster, including tainted nodes by default. If you do\nnot want this behavior, please select 'AvoidTaints' here." + }, + { + "path": "perNode.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "perNode.collector.collection", + "displayName": "Collection", + "description": "The method for system-level data collection. CORE_BPF is recommended.\nIf you select \"NoCollection\", you will not be able to see any information about network activity\nand process executions. The remaining settings in these section will not have any effect.\nThe value is a subject of conversion by the operator if needed, e.g. to\nremove deprecated methods.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:select:CORE_BPF", + "urn:alm:descriptor:com.tectonic.ui:select:NoCollection" + ] + }, + { + "path": "perNode.collector.imageFlavor", + "displayName": "Image Flavor", + "description": "Deprecated field.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "perNode.collector.forceCollection", + "displayName": "Force Collection", + "description": "Deprecated field. This field will be removed in a future release.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "perNode.collector.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "perNode.compliance.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "perNode.nodeInventory.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scanner.scannerComponent", + "displayName": "Scanner Component", + "description": "If you do not want to deploy the Red Hat Advanced Cluster Security Scanner, you can disable it here\n(not recommended).\nIf you do so, all the settings in this section will have no effect." + }, + { + "path": "scanner.analyzer", + "displayName": "Analyzer", + "description": "Settings pertaining to the analyzer deployment, such as for autoscaling." + }, + { + "path": "scanner.db", + "displayName": "DB", + "description": "Settings pertaining to the database used by the Red Hat Advanced Cluster Security Scanner." + }, + { + "path": "scanner.analyzer.scaling", + "displayName": "Scaling", + "description": "Controls the number of analyzer replicas and autoscaling." + }, + { + "path": "scanner.analyzer.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scanner.analyzer.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scanner.analyzer.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scanner.analyzer.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scanner.analyzer.scaling.autoScaling", + "displayName": "Autoscaling", + "description": "When enabled, the number of component replicas is managed dynamically based on the load, within the limits\nspecified below." + }, + { + "path": "scanner.analyzer.scaling.replicas", + "displayName": "Default Replicas", + "description": "When autoscaling is disabled, the number of replicas will always be configured to match this value." + }, + { + "path": "scanner.analyzer.scaling.minReplicas", + "displayName": "Autoscaling Minimum Replicas", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scanner.analyzer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scanner.analyzer.scaling.maxReplicas", + "displayName": "Autoscaling Maximum Replicas", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scanner.analyzer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scanner.db.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scanner.db.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scanner.db.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scanner.db.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scannerV4.scannerComponent", + "displayName": "Scanner V4 component", + "description": "If you want to enable the Scanner V4 component set this to \"AutoSense\"\nIf this field is not specified or set to \"Default\", the following defaulting takes place:\n* for new installations, Scanner V4 is enabled starting with ACS 4.8;\n* for upgrades to 4.8 from previous releases, Scanner V4 is disabled." + }, + { + "path": "scannerV4.indexer", + "displayName": "Indexer", + "description": "Settings pertaining to the indexer deployment.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.scannerComponent:AutoSense" + ] + }, + { + "path": "scannerV4.db", + "displayName": "DB", + "description": "Settings pertaining to the DB deployment.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.scannerComponent:AutoSense" + ] + }, + { + "path": "scannerV4.monitoring", + "displayName": "Monitoring", + "description": "Configures monitoring endpoint for Scanner V4. The monitoring endpoint\nallows other services to collect metrics from Scanner V4, provided in\nPrometheus compatible format.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.scannerComponent:AutoSense" + ] + }, + { + "path": "scannerV4.db.persistence", + "displayName": "Persistence", + "description": "Configures how Scanner V4 should store its persistent data.\nYou can use a persistent volume claim (the recommended default), a host path,\nor an emptyDir volume if Scanner V4 is running on a secured cluster without default StorageClass." + }, + { + "path": "scannerV4.db.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scannerV4.db.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scannerV4.db.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scannerV4.db.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim", + "displayName": "Persistent volume claim", + "description": "Uses a Kubernetes persistent volume claim (PVC) to manage the storage location of persistent data.\nRecommended for most users." + }, + { + "path": "scannerV4.db.persistence.hostPath", + "displayName": "Host path", + "description": "Stores persistent data on a directory on the host. This is not recommended, and should only\nbe used together with a node selector (only available in YAML view)." + }, + { + "path": "scannerV4.db.persistence.hostPath.path", + "displayName": "Path", + "description": "The path on the host running Central." + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim.claimName", + "displayName": "Claim Name", + "description": "The name of the PVC to manage persistent data. If no PVC with the given name exists, it will be\ncreated. Defaults to \"scanner-v4-db\" if not set." + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim.size", + "displayName": "Size", + "description": "The size of the persistent volume when created through the claim. If a claim was automatically created,\nthis can be used after the initial deployment to resize (grow) the volume (only supported by some\nstorage class controllers).", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:text" + ] + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim.storageClassName", + "displayName": "Storage Class", + "description": "The name of the storage class to use for the PVC. If your cluster is not configured with a default storage\nclass, you must select a value here.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:StorageClass" + ] + }, + { + "path": "scannerV4.indexer.scaling", + "displayName": "Scaling", + "description": "Controls the number of replicas and autoscaling for this component." + }, + { + "path": "scannerV4.indexer.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scannerV4.indexer.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scannerV4.indexer.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scannerV4.indexer.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scannerV4.indexer.scaling.autoScaling", + "displayName": "Autoscaling", + "description": "When enabled, the number of component replicas is managed dynamically based on the load, within the limits\nspecified below." + }, + { + "path": "scannerV4.indexer.scaling.replicas", + "displayName": "Default Replicas", + "description": "When autoscaling is disabled, the number of replicas will always be configured to match this value." + }, + { + "path": "scannerV4.indexer.scaling.minReplicas", + "displayName": "Autoscaling Minimum Replicas", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.indexer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scannerV4.indexer.scaling.maxReplicas", + "displayName": "Autoscaling Maximum Replicas", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.indexer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scannerV4.monitoring.exposeEndpoint", + "displayName": "Expose Endpoint", + "description": "Expose the monitoring endpoint. A new service, \"monitoring\",\nwith port 9090, will be created as well as a network policy allowing\ninbound connections to the port." + }, + { + "path": "sensor.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "sensor.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "sensor.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "sensor.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "tls.additionalCAs", + "displayName": "Additional CAs" + } + ] + }, + { + "name": "securitypolicies.config.stackrox.io", + "version": "v1alpha1", + "kind": "SecurityPolicy", + "displayName": "Security Policy", + "description": "SecurityPolicy is the schema for the policies API.", + "resources": [ + { + "name": "", + "kind": "Deployment", + "version": "v1" + } + ] + } + ] + }, + "description": "## Why use Red Hat Advanced Cluster Security for Kubernetes?\n\nProtecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.\n\n\nRed Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.\n\nRed Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.\n\n## Features and Benefits\n\n**Kubernetes-native security:**\n1. Increases protection.\n1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.\n1. Reduces time and costs.\n1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.\n1. Increases scalability and portability.\n1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.\n\n## Using the RHACS Operator\n\n**RHACS Operator channels:**\n\nRed Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:\n\n* `stable`: Provides the most recent version and patches to the most recent version.\n Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.\n* `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).\n\nNote that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.\n\n**RHACS comes with two custom resources:**\n\n1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.\n\n2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).\n\n### Central Services Explained\n\n| Service | Deployment Type | Description |\n| :------------------------------- | :-------------- | :-------------- |\n| Central | Deployment | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |\n| Central DB | Deployment | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |\n| Scanner | Deployment | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |\n| Scanner DB | Deployment | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |\n\n### Secured Cluster Services Explained\n\n| Service | Deployment Type | Description |\n| :------------------------------- | :-------------- | :-------------- |\n| Sensor | Deployment | Sensor analyzes and monitors Kubernetes in secured clusters. |\n| Collector | DaemonSet | Analyzes and monitors container activity on Kubernetes nodes.|\n| Admission Controller | Deployment | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |\n\n### Central Custom Resource\n\nCentral Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.\n\n### SecuredCluster Custom Resource\n\nSecuredCluster is the configuration template for the RHACS Secured Cluster services.\n\n#### Installation Prerequisites\n\nBefore deploying a SecuredCluster resource, you need to create a cluster init bundle secret.\n\n- **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).\n- **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate --output-secrets `. Choose any `name` and `file name` that you like.\n\nRun `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project `.\nThen, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.\n\n#### Required Fields\n\nThe following attributes are required to be specified. For all customization options, please visit the RHACS documentation.\n\n| Parameter | Description |\n| :----------------- | :-------------- |\n| `clusterName` | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |\n| `centralEndpoint` | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |\n", + "displayName": "Advanced Cluster Security for Kubernetes", + "installModes": [ + { + "type": "OwnNamespace", + "supported": false + }, + { + "type": "SingleNamespace", + "supported": false + }, + { + "type": "MultiNamespace", + "supported": false + }, + { + "type": "AllNamespaces", + "supported": true + } + ], + "keywords": [ + "advanced-cluster-security", + "stackrox", + "security", + "vulnerabilities", + "compliance", + "devsecops", + "monitoring", + "scanning", + "runtime-security", + "network policy", + "configuration", + "risk" + ], + "labels": { + "operatorframework.io/arch.amd64": "supported", + "operatorframework.io/arch.arm64": "supported", + "operatorframework.io/arch.ppc64le": "supported", + "operatorframework.io/arch.s390x": "supported" + }, + "links": [ + { + "name": "Red Hat Advanced Cluster Security Documentation", + "url": "https://docs.openshift.com/acs/welcome/" + }, + { + "name": "DataSheet", + "url": "https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet" + }, + { + "name": "Support Policy", + "url": "https://access.redhat.com/node/5822721" + }, + { + "name": "Community Site", + "url": "https://www.stackrox.io/" + } + ], + "maintainers": [ + { + "name": "Advanced Cluster Security product team", + "email": "rhacs-pm@redhat.com" + } + ], + "maturity": "alpha", + "minKubeVersion": "1.15.0", + "provider": { + "name": "Red Hat" + } + } + } + ], + "relatedImages": [ + { + "name": "central_db", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:1ea9a73abc1d1d742f28b21fa9a65404c72fdff382f2044bff6c41839eeda77f" + }, + { + "name": "collector", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:750152c1cb15741fe1221d2a3d55d904df787a14b69e1523778a05a1458f0ea5" + }, + { + "name": "main", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:05176f490dcafac0491773580b22e25d3779c13cfb32d74b49cc3c98322223a0" + }, + { + "name": "", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9bb2d3ff2a97d0c3234e4864fc2d21ff278ce06e725e43c56f43e42bed97dd19" + }, + { + "name": "manager", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:613ba30aceb61d8fca16136d869f45bdd2a3f51fcc024d9caf03ae8ca98b39ee" + }, + { + "name": "roxctl", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:589415390a3c3e2afe36b1cd3e3368187343a3f215cf2774ae41a929559b6157" + }, + { + "name": "scanner_db", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9f2d4000d62662c221e47e9d44bdc067b2cb41dde9dd43b4d8e940c4ee1f0d57" + }, + { + "name": "scanner_db_slim", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:18a8551a1c4828a665f55d3a8bb814f90546569ad7bc56b7a163ba5f86cfe0b9" + }, + { + "name": "scanner", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:da6c1c8e315266d47bcd541167412018faebaa0ad82b2202b556bb80673330a3" + }, + { + "name": "scanner_slim", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:936aeb2aeffcddc004338e28624027d10f58c01ce76a9d799450bdb43f07184e" + }, + { + "name": "scanner_v4_db", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:809129883924cacaf124f197983cc6a14107138f90f85b3c52ed996e915803ad" + }, + { + "name": "scanner_v4", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:2f7247a9c08e952b2f53de6b818a7d999e8e3d0aab62f2e6255062ee27d1c826" + } + ] +} +{ + "schema": "olm.bundle", + "name": "rhacs-operator.v4.9.0", + "package": "rhacs-operator", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:02a50a53dddbbdd749b0b6cc01f555308ab3c16045130d07483bfddd6861de42", + "properties": [ + { + "type": "olm.gvk", + "value": { + "group": "config.stackrox.io", + "kind": "SecurityPolicy", + "version": "v1alpha1" + } + }, + { + "type": "olm.gvk", + "value": { + "group": "platform.stackrox.io", + "kind": "Central", + "version": "v1alpha1" + } + }, + { + "type": "olm.gvk", + "value": { + "group": "platform.stackrox.io", + "kind": "SecuredCluster", + "version": "v1alpha1" + } + }, + { + "type": "olm.package", + "value": { + "packageName": "rhacs-operator", + "version": "4.9.0" + } + }, + { + "type": "olm.csv.metadata", + "value": { + "annotations": { + "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", + "capabilities": "Seamless Upgrades", + "categories": "Security", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3471d6c2b77ad4be863f7d5b0e5da5cd8a9c267126c003424c27b91e1cbf1b24", + "createdAt": "2025-10-30T15:19:35.144226+00:00", + "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", + "features.operators.openshift.io/cnf": "false", + "features.operators.openshift.io/cni": "false", + "features.operators.openshift.io/csi": "false", + "features.operators.openshift.io/disconnected": "true", + "features.operators.openshift.io/fips-compliant": "true", + "features.operators.openshift.io/proxy-aware": "true", + "features.operators.openshift.io/tls-profiles": "false", + "features.operators.openshift.io/token-auth-aws": "false", + "features.operators.openshift.io/token-auth-azure": "false", + "features.operators.openshift.io/token-auth-gcp": "false", + "olm.skipRange": ">= 4.8.0 < 4.9.0", + "operatorframework.io/suggested-namespace": "rhacs-operator", + "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", + "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", + "operators.operatorframework.io/builder": "operator-sdk-unknown", + "operators.operatorframework.io/project_layout": "go.kubebuilder.io/v4", + "support": "Red Hat" + }, + "apiServiceDefinitions": {}, + "crdDescriptions": { + "owned": [ + { + "name": "centrals.platform.stackrox.io", + "version": "v1alpha1", + "kind": "Central", + "displayName": "Central", + "description": "Central is the configuration template for the central services. This includes the API server, persistent storage,\nand the web UI, as well as the image scanner.", + "resources": [ + { + "name": "", + "kind": "Deployment", + "version": "v1" + }, + { + "name": "", + "kind": "Route", + "version": "v1" + }, + { + "name": "", + "kind": "Secret", + "version": "v1" + }, + { + "name": "", + "kind": "Service", + "version": "v1" + } + ], + "statusDescriptors": [ + { + "path": "central.adminPassword.info", + "displayName": "Admin Credentials Info", + "description": "Info stores information on how to obtain the admin password." + }, + { + "path": "productVersion", + "displayName": "Product Version", + "description": "The deployed version of the product." + }, + { + "path": "central", + "displayName": "Central" + }, + { + "path": "central.adminPassword.adminPasswordSecretReference", + "displayName": "Admin Password Secret Reference", + "description": "AdminPasswordSecretReference contains reference for the admin password", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:Secret" + ] + } + ], + "specDescriptors": [ + { + "path": "central", + "displayName": "Central Component Settings", + "description": "Settings for the Central component, which is responsible for all user interaction." + }, + { + "path": "scanner", + "displayName": "Scanner Component Settings", + "description": "Settings for the Scanner component, which is responsible for vulnerability scanning of container\nimages." + }, + { + "path": "scannerV4", + "displayName": "Scanner V4 Component Settings", + "description": "Settings for the Scanner V4 component, which can run in addition to the previously existing Scanner components" + }, + { + "path": "egress", + "displayName": "Egress", + "description": "Settings related to outgoing network traffic." + }, + { + "path": "tls", + "displayName": "TLS", + "description": "Settings related to Transport Layer Security, such as Certificate Authorities." + }, + { + "path": "imagePullSecrets", + "displayName": "Image Pull Secrets", + "description": "Additional image pull secrets to be taken into account for pulling images.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "customize", + "displayName": "Customizations", + "description": "Customizations to apply on all Central Services components.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "overlays", + "displayName": "Overlays", + "description": "Overlays", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "monitoring", + "displayName": "Monitoring", + "description": "Monitoring configuration.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "network", + "displayName": "Network", + "description": "Network configuration.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "configAsCode", + "displayName": "Config-as-Code", + "description": "Config-as-Code configuration.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "misc", + "displayName": "Miscellaneous", + "description": "Deprecated field. This field will be removed in a future release.\nMiscellaneous settings.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.adminPasswordSecret", + "displayName": "Administrator Password", + "description": "Specify a secret that contains the administrator password in the \"password\" data item.\nIf omitted, the operator will auto-generate a password and store it in the \"password\" item\nin the \"central-htpasswd\" secret." + }, + { + "path": "central.exposure", + "displayName": "Exposure", + "description": "Here you can configure if you want to expose central through a node port, a load balancer, or an OpenShift\nroute." + }, + { + "path": "central.defaultTLSSecret", + "displayName": "User-facing TLS certificate secret", + "description": "By default, Central will only serve an internal TLS certificate, which means that you will\nneed to handle TLS termination at the ingress or load balancer level.\nIf you want to terminate TLS in Central and serve a custom server certificate, you can specify\na secret containing the certificate and private key here." + }, + { + "path": "central.monitoring", + "displayName": "Monitoring", + "description": "Configures monitoring endpoint for Central. The monitoring endpoint\nallows other services to collect metrics from Central, provided in\nPrometheus compatible format." + }, + { + "path": "central.db", + "displayName": "Central DB Settings", + "description": "Settings for Central DB, which is responsible for data persistence." + }, + { + "path": "central.telemetry", + "displayName": "Telemetry", + "description": "Configures telemetry settings for Central. If enabled, Central transmits telemetry and diagnostic\ndata to a remote storage backend.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.declarativeConfiguration", + "displayName": "Declarative Configuration", + "description": "Configures resources within Central in a declarative manner.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.notifierSecretsEncryption", + "displayName": "Notifier Secrets Encryption", + "description": "Configures the encryption of notifier secrets stored in the Central DB.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "central.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "central.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "central.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "central.adminPasswordGenerationDisabled", + "displayName": "Admin Password Generation Disabled", + "description": "Disable admin password generation. Do not use this for first-time installations,\nas you will have no way to perform initial setup and configuration of alternative authentication methods.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.persistence", + "displayName": "Persistence", + "description": "Unused field. This field exists solely for backward compatibility starting from version v4.6.0.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.adminPasswordSecret.name", + "displayName": "Name", + "description": "The name of the referenced secret.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:Secret" + ] + }, + { + "path": "central.db.passwordSecret", + "displayName": "Administrator Password", + "description": "Specify a secret that contains the password in the \"password\" data item. This can only be used when\nspecifying a connection string manually.\nWhen omitted, the operator will auto-generate a DB password and store it in the \"password\" item\nin the \"central-db-password\" secret." + }, + { + "path": "central.db.connectionString", + "displayName": "Connection String", + "description": "Specify a connection string that corresponds to a database managed elsewhere. If set, the operator will not manage the Central DB.\nWhen using this option, you must explicitly set a password secret; automatically generating a password will not\nbe supported." + }, + { + "path": "central.db.persistence", + "displayName": "Persistence", + "description": "Configures how Central DB should store its persistent data. You can choose between using a persistent\nvolume claim (recommended default), and a host path." + }, + { + "path": "central.db.configOverride", + "displayName": "Config map that will override postgresql.conf and pg_hba.conf", + "description": "Config map containing postgresql.conf and pg_hba.conf that will be used if modifications need to be applied." + }, + { + "path": "central.db.connectionPoolSize", + "displayName": "Database Connection Pool Size Settings", + "description": "Configures the database connection pool size." + }, + { + "path": "central.db.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "central.db.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "central.db.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "central.db.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "central.db.isEnabled", + "displayName": "Is Enabled", + "description": "Obsolete field.\nThis field will be removed in a future release.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.db.configOverride.name", + "displayName": "Name", + "description": "The name of the referenced config map.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:ConfigMap" + ] + }, + { + "path": "central.db.connectionPoolSize.maxConnections", + "displayName": "Maximum Connections", + "description": "Maximum number of connections in the connection pool.\nThe default is: 90." + }, + { + "path": "central.db.connectionPoolSize.minConnections", + "displayName": "Minimum Connections", + "description": "Minimum number of connections in the connection pool.\nThe default is: 10." + }, + { + "path": "central.db.passwordSecret.name", + "displayName": "Name", + "description": "The name of the referenced secret.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:Secret" + ] + }, + { + "path": "central.db.persistence.persistentVolumeClaim", + "displayName": "Persistent volume claim", + "description": "Uses a Kubernetes persistent volume claim (PVC) to manage the storage location of persistent data.\nRecommended for most users." + }, + { + "path": "central.db.persistence.hostPath", + "displayName": "Host path", + "description": "Stores persistent data on a directory on the host. This is not recommended, and should only\nbe used together with a node selector (only available in YAML view)." + }, + { + "path": "central.db.persistence.hostPath.path", + "displayName": "Path", + "description": "The path on the host running Central." + }, + { + "path": "central.db.persistence.persistentVolumeClaim.claimName", + "displayName": "Claim Name", + "description": "The name of the PVC to manage persistent data. If no PVC with the given name exists, it will be\ncreated.\nThe default is: central-db." + }, + { + "path": "central.db.persistence.persistentVolumeClaim.size", + "displayName": "Size", + "description": "The size of the persistent volume when created through the claim. If a claim was automatically created,\nthis can be used after the initial deployment to resize (grow) the volume (only supported by some\nstorage class controllers).", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:text" + ] + }, + { + "path": "central.db.persistence.persistentVolumeClaim.storageClassName", + "displayName": "Storage Class", + "description": "The name of the storage class to use for the PVC. If your cluster is not configured with a default storage\nclass, you must select a value here.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:StorageClass" + ] + }, + { + "path": "central.declarativeConfiguration.configMaps", + "displayName": "Config maps containing declarative configuration", + "description": "List of config maps containing declarative configuration." + }, + { + "path": "central.declarativeConfiguration.secrets", + "displayName": "Secrets containing declarative configuration", + "description": "List of secrets containing declarative configuration." + }, + { + "path": "central.declarativeConfiguration.configMaps[0].name", + "displayName": "Name", + "description": "The name of the referenced config map.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:ConfigMap" + ] + }, + { + "path": "central.declarativeConfiguration.secrets[0].name", + "displayName": "Name", + "description": "The name of the referenced secret.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:Secret" + ] + }, + { + "path": "central.defaultTLSSecret.name", + "displayName": "Name", + "description": "The name of the referenced secret.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:Secret" + ] + }, + { + "path": "central.exposure.route", + "displayName": "Route", + "description": "Expose Central through an OpenShift route." + }, + { + "path": "central.exposure.loadBalancer", + "displayName": "Load Balancer", + "description": "Expose Central through a load balancer service." + }, + { + "path": "central.exposure.nodePort", + "displayName": "Node Port", + "description": "Expose Central through a node port." + }, + { + "path": "central.exposure.loadBalancer.enabled", + "displayName": "Enabled", + "description": "The default is: false." + }, + { + "path": "central.exposure.loadBalancer.port", + "displayName": "Port", + "description": "The default is: 443.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:central.exposure.loadBalancer.enabled:true" + ] + }, + { + "path": "central.exposure.loadBalancer.ip", + "displayName": "IP", + "description": "If you have a static IP address reserved for your load balancer, you can enter it here.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:central.exposure.loadBalancer.enabled:true" + ] + }, + { + "path": "central.exposure.nodePort.enabled", + "displayName": "Enabled", + "description": "The default is: false." + }, + { + "path": "central.exposure.nodePort.port", + "displayName": "Port", + "description": "Use this to specify an explicit node port. Most users should leave this empty.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:central.exposure.nodePort.enabled:true" + ] + }, + { + "path": "central.exposure.route.enabled", + "displayName": "Enabled", + "description": "Expose Central with a passthrough route.\nThe default is: false." + }, + { + "path": "central.exposure.route.host", + "displayName": "Host", + "description": "Specify a custom hostname for the Central route.\nIf unspecified, an appropriate default value will be automatically chosen by the OpenShift route operator." + }, + { + "path": "central.exposure.route.reencrypt", + "displayName": "Re-Encrypt Route", + "description": "Set up a Central route with reencrypt TLS termination.\nFor reencrypt routes, the request is terminated on the OpenShift router with a custom certificate.\nThe request is then reencrypted by the OpenShift router and sent to Central.\n[user] --TLS--> [OpenShift router] --TLS--> [Central]" + }, + { + "path": "central.exposure.route.reencrypt.enabled", + "displayName": "Enabled", + "description": "Expose Central with a reencrypt route.\nShould not be used for sensor communication.\nThe default is: false." + }, + { + "path": "central.exposure.route.reencrypt.host", + "displayName": "Host", + "description": "Specify a custom hostname for the Central reencrypt route.\nIf unspecified, an appropriate default value will be automatically chosen by the OpenShift route operator." + }, + { + "path": "central.exposure.route.reencrypt.tls", + "displayName": "TLS Settings", + "description": "TLS settings for exposing Central via a reencrypt Route." + }, + { + "path": "central.exposure.route.reencrypt.tls.caCertificate", + "displayName": "CA Certificate", + "description": "The PEM encoded certificate chain that may be used to establish a complete chain of trust.\nDefaults to the OpenShift certificate authority." + }, + { + "path": "central.exposure.route.reencrypt.tls.certificate", + "displayName": "Certificate", + "description": "The PEM encoded certificate that is served on the route. Must be a single serving\ncertificate instead of a certificate chain.\nDefaults to a certificate signed by the OpenShift certificate authority." + }, + { + "path": "central.exposure.route.reencrypt.tls.destinationCACertificate", + "displayName": "Destination CA Certificate", + "description": "The CA certificate of the final destination, i.e. of Central.\nUsed by the OpenShift router for health checks on the secure connection.\nDefaults to the Central certificate authority." + }, + { + "path": "central.exposure.route.reencrypt.tls.key", + "displayName": "Private Key", + "description": "The PEM encoded private key of the certificate that is served on the route.\nDefaults to a certificate signed by the OpenShift certificate authority." + }, + { + "path": "central.monitoring.exposeEndpoint", + "displayName": "Expose Endpoint", + "description": "Expose the monitoring endpoint. A new service, \"monitoring\",\nwith port 9090, will be created as well as a network policy allowing\ninbound connections to the port." + }, + { + "path": "central.notifierSecretsEncryption.enabled", + "displayName": "Enabled", + "description": "Enables the encryption of notifier secrets stored in the Central DB.\nThe default is: false." + }, + { + "path": "central.persistence.hostPath", + "displayName": "Host Path", + "description": "Obsolete unused field.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.persistence.persistentVolumeClaim", + "displayName": "Persistent Volume Claim", + "description": "Obsolete unused field.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.persistence.hostPath.path", + "displayName": "Path", + "description": "The path on the host running Central." + }, + { + "path": "central.persistence.persistentVolumeClaim.claimName", + "displayName": "Claim Name", + "description": "Obsolete unused field.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.persistence.persistentVolumeClaim.size", + "displayName": "Size", + "description": "Obsolete unused field.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.persistence.persistentVolumeClaim.storageClassName", + "displayName": "Storage Class Name", + "description": "Obsolete unused field.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "central.telemetry.enabled", + "displayName": "Enabled", + "description": "Specifies if Telemetry is enabled.\nThe default is: true.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:booleanSwitch" + ] + }, + { + "path": "central.telemetry.storage", + "displayName": "Storage", + "description": "Defines the telemetry storage backend for Central.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:central.telemetry.enabled:true" + ] + }, + { + "path": "central.telemetry.storage.endpoint", + "displayName": "Endpoint", + "description": "Storage API endpoint." + }, + { + "path": "central.telemetry.storage.key", + "displayName": "Key", + "description": "Storage API key. If not set, telemetry is disabled." + }, + { + "path": "configAsCode.configAsCodeComponent", + "displayName": "Config as Code component", + "description": "If you want to deploy the Config as Code component, set this to \"Enabled\"\nThe default is: Enabled." + }, + { + "path": "customize.labels", + "displayName": "Labels", + "description": "Custom labels to set on all managed objects." + }, + { + "path": "customize.annotations", + "displayName": "Annotations", + "description": "Custom annotations to set on all managed objects." + }, + { + "path": "customize.envVars", + "displayName": "Environment Variables", + "description": "Custom environment variables to set on managed pods' containers." + }, + { + "path": "egress.connectivityPolicy", + "displayName": "Connectivity Policy", + "description": "Configures whether Red Hat Advanced Cluster Security should run in online or offline (disconnected) mode.\nIn offline mode, automatic updates of vulnerability definitions and kernel modules are disabled.\nThe default is: Online." + }, + { + "path": "imagePullSecrets[0].name", + "displayName": "Name", + "description": "The name of the referenced secret.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:Secret" + ] + }, + { + "path": "misc.createSCCs", + "displayName": "Create SecurityContextConstraints for Operand", + "description": "Deprecated field. This field will be removed in a future release.\nSet this to true to have the operator create SecurityContextConstraints (SCCs) for the operands. This\nisn't usually needed, and may interfere with other workloads.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "monitoring.openshift.enabled", + "displayName": "Enabled", + "description": "The default is: true.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:booleanSwitch" + ] + }, + { + "path": "network.policies", + "displayName": "Network Policies", + "description": "To provide security at the network level the ACS Operator creates NetworkPolicy resources by default. If you want to manage your own NetworkPolicy objects then set this to \"Disabled\".\nThe default is: Enabled." + }, + { + "path": "overlays[0].apiVersion", + "displayName": "API Version", + "description": "Resource API version." + }, + { + "path": "overlays[0].kind", + "displayName": "Kind", + "description": "Resource kind." + }, + { + "path": "overlays[0].name", + "displayName": "Name", + "description": "Name of resource." + }, + { + "path": "overlays[0].optional", + "displayName": "Optional", + "description": "Optional marks the overlay as optional.\nWhen Optional is true, and the specified resource does not exist in the output manifests, the overlay will be skipped, and a warning will be logged.\nWhen Optional is false, and the specified resource does not exist in the output manifests, an error will be thrown." + }, + { + "path": "overlays[0].patches", + "displayName": "Patches", + "description": "List of patches to apply to resource." + }, + { + "path": "overlays[0].patches[0].path", + "displayName": "Path", + "description": "Path of the form a.[key1:value1].b.[:value2]\nWhere [key1:value1] is a selector for a key-value pair to identify a list element and [:value] is a value\nselector to identify a list element in a leaf list.\nAll path intermediate nodes must exist." + }, + { + "path": "overlays[0].patches[0].value", + "displayName": "Value", + "description": "Value to add, delete or replace.\nFor add, the path should be a new leaf.\nFor delete, value should be unset.\nFor replace, path should reference an existing node.\nAll values are strings but are converted into appropriate type based on schema." + }, + { + "path": "overlays[0].patches[0].verbatim", + "displayName": "Verbatim", + "description": "Verbatim value to add, delete or replace.\nSame as Value, however the content is not interpreted as YAML, but treated as literal string instead.\nAt least one of Value and Verbatim must be empty." + }, + { + "path": "scanner.scannerComponent", + "displayName": "Scanner Component", + "description": "If you do not want to deploy the Red Hat Advanced Cluster Security Scanner, you can disable it here\n(not recommended). By default, the scanner is enabled.\nIf you do so, all the settings in this section will have no effect." + }, + { + "path": "scanner.analyzer", + "displayName": "Analyzer", + "description": "Settings pertaining to the analyzer deployment, such as for autoscaling.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scanner.scannerComponent:Enabled" + ] + }, + { + "path": "scanner.db", + "displayName": "DB", + "description": "Settings pertaining to the database used by the Red Hat Advanced Cluster Security Scanner.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scanner.scannerComponent:Enabled" + ] + }, + { + "path": "scanner.monitoring", + "displayName": "Monitoring", + "description": "Configures monitoring endpoint for Scanner. The monitoring endpoint\nallows other services to collect metrics from Scanner, provided in\nPrometheus compatible format." + }, + { + "path": "scanner.analyzer.scaling", + "displayName": "Scaling", + "description": "Controls the number of analyzer replicas and autoscaling." + }, + { + "path": "scanner.analyzer.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scanner.analyzer.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scanner.analyzer.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scanner.analyzer.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scanner.analyzer.scaling.autoScaling", + "displayName": "Autoscaling", + "description": "When enabled, the number of component replicas is managed dynamically based on the load, within the limits\nspecified below.\nThe default is: Enabled." + }, + { + "path": "scanner.analyzer.scaling.replicas", + "displayName": "Default Replicas", + "description": "When autoscaling is disabled, the number of replicas will always be configured to match this value.\nThe default is: 3." + }, + { + "path": "scanner.analyzer.scaling.minReplicas", + "displayName": "Autoscaling Minimum Replicas", + "description": "The default is: 2.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scanner.analyzer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scanner.analyzer.scaling.maxReplicas", + "displayName": "Autoscaling Maximum Replicas", + "description": "The default is: 5.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scanner.analyzer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scanner.db.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scanner.db.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scanner.db.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scanner.db.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scanner.monitoring.exposeEndpoint", + "displayName": "Expose Endpoint", + "description": "Expose the monitoring endpoint. A new service, \"monitoring\",\nwith port 9090, will be created as well as a network policy allowing\ninbound connections to the port." + }, + { + "path": "scannerV4.scannerComponent", + "displayName": "Scanner V4 component", + "description": "Can be specified as \"Enabled\" or \"Disabled\".\nIf this field is not specified, the following defaulting takes place:\n* for new installations, Scanner V4 is enabled starting with ACS 4.8;\n* for upgrades to 4.8 from previous releases, Scanner V4 is disabled." + }, + { + "path": "scannerV4.indexer", + "displayName": "Indexer", + "description": "Settings pertaining to the indexer deployment.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.scannerComponent:Enabled" + ] + }, + { + "path": "scannerV4.matcher", + "displayName": "Matcher", + "description": "Settings pertaining to the matcher deployment.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.scannerComponent:Enabled" + ] + }, + { + "path": "scannerV4.db", + "displayName": "DB", + "description": "Settings pertaining to the DB deployment.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.scannerComponent:Enabled" + ] + }, + { + "path": "scannerV4.monitoring", + "displayName": "Monitoring", + "description": "Configures monitoring endpoint for Scanner V4. The monitoring endpoint\nallows other services to collect metrics from Scanner V4, provided in\nPrometheus compatible format.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.scannerComponent:Enabled" + ] + }, + { + "path": "scannerV4.db.persistence", + "displayName": "Persistence", + "description": "Configures how Scanner V4 should store its persistent data.\nYou can use a persistent volume claim (the recommended default), a host path,\nor an emptyDir volume if Scanner V4 is running on a secured cluster without default StorageClass." + }, + { + "path": "scannerV4.db.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scannerV4.db.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scannerV4.db.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scannerV4.db.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim", + "displayName": "Persistent volume claim", + "description": "Uses a Kubernetes persistent volume claim (PVC) to manage the storage location of persistent data.\nRecommended for most users." + }, + { + "path": "scannerV4.db.persistence.hostPath", + "displayName": "Host path", + "description": "Stores persistent data on a directory on the host. This is not recommended, and should only\nbe used together with a node selector (only available in YAML view)." + }, + { + "path": "scannerV4.db.persistence.hostPath.path", + "displayName": "Path", + "description": "The path on the host running Central." + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim.claimName", + "displayName": "Claim Name", + "description": "The name of the PVC to manage persistent data. If no PVC with the given name exists, it will be\ncreated.\nThe default is: scanner-v4-db." + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim.size", + "displayName": "Size", + "description": "The size of the persistent volume when created through the claim. If a claim was automatically created,\nthis can be used after the initial deployment to resize (grow) the volume (only supported by some\nstorage class controllers).", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:text" + ] + }, + { + "path": "scannerV4.db.persistence.persistentVolumeClaim.storageClassName", + "displayName": "Storage Class", + "description": "The name of the storage class to use for the PVC. If your cluster is not configured with a default storage\nclass, you must select a value here.", + "x-descriptors": [ + "urn:alm:descriptor:io.kubernetes:StorageClass" + ] + }, + { + "path": "scannerV4.indexer.scaling", + "displayName": "Scaling", + "description": "Controls the number of replicas and autoscaling for this component." + }, + { + "path": "scannerV4.indexer.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scannerV4.indexer.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scannerV4.indexer.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scannerV4.indexer.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scannerV4.indexer.scaling.autoScaling", + "displayName": "Autoscaling", + "description": "When enabled, the number of component replicas is managed dynamically based on the load, within the limits\nspecified below.\nThe default is: Enabled." + }, + { + "path": "scannerV4.indexer.scaling.replicas", + "displayName": "Default Replicas", + "description": "When autoscaling is disabled, the number of replicas will always be configured to match this value.\nThe default is: 3." + }, + { + "path": "scannerV4.indexer.scaling.minReplicas", + "displayName": "Autoscaling Minimum Replicas", + "description": "The default is: 2.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.indexer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scannerV4.indexer.scaling.maxReplicas", + "displayName": "Autoscaling Maximum Replicas", + "description": "The default is: 5.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.indexer.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scannerV4.matcher.scaling", + "displayName": "Scaling", + "description": "Controls the number of replicas and autoscaling for this component." + }, + { + "path": "scannerV4.matcher.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "scannerV4.matcher.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "scannerV4.matcher.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "scannerV4.matcher.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "scannerV4.matcher.scaling.autoScaling", + "displayName": "Autoscaling", + "description": "When enabled, the number of component replicas is managed dynamically based on the load, within the limits\nspecified below.\nThe default is: Enabled." + }, + { + "path": "scannerV4.matcher.scaling.replicas", + "displayName": "Default Replicas", + "description": "When autoscaling is disabled, the number of replicas will always be configured to match this value.\nThe default is: 3." + }, + { + "path": "scannerV4.matcher.scaling.minReplicas", + "displayName": "Autoscaling Minimum Replicas", + "description": "The default is: 2.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.matcher.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scannerV4.matcher.scaling.maxReplicas", + "displayName": "Autoscaling Maximum Replicas", + "description": "The default is: 5.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.matcher.scaling.autoScaling:Enabled" + ] + }, + { + "path": "scannerV4.monitoring.exposeEndpoint", + "displayName": "Expose Endpoint", + "description": "Expose the monitoring endpoint. A new service, \"monitoring\",\nwith port 9090, will be created as well as a network policy allowing\ninbound connections to the port." + }, + { + "path": "tls.additionalCAs", + "displayName": "Additional CAs", + "description": "Allows you to specify additional trusted Root CAs." + } + ] + }, + { + "name": "securedclusters.platform.stackrox.io", + "version": "v1alpha1", + "kind": "SecuredCluster", + "displayName": "Secured Cluster", + "description": "SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is\nresponsible for the connection to Central, and Collector, which performs host-level collection of process and\nnetwork events.

\n**Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or\nconsult the RHACS documentation on creating cluster init bundles.", + "resources": [ + { + "name": "", + "kind": "DaemonSet", + "version": "v1" + }, + { + "name": "", + "kind": "Deployment", + "version": "v1" + } + ], + "statusDescriptors": [ + { + "path": "productVersion", + "displayName": "Product Version", + "description": "The deployed version of the product." + }, + { + "path": "clusterName", + "displayName": "Cluster Name", + "description": "The assigned cluster name per the spec. This cannot be changed afterwards. If you need to change the\ncluster name, please delete and recreate this resource." + } + ], + "specDescriptors": [ + { + "path": "clusterName", + "displayName": "Cluster Name", + "description": "The unique name of this cluster, as it will be shown in the Red Hat Advanced Cluster Security UI.\nNote: Once a name is set here, you will not be able to change it again. You will need to delete\nand re-create this object in order to register a cluster with a new name." + }, + { + "path": "centralEndpoint", + "displayName": "Central Endpoint", + "description": "The endpoint of the Red Hat Advanced Cluster Security Central instance to connect to,\nincluding the port number. If no port is specified and the endpoint contains an https://\nprotocol specification, then the port 443 is implicitly assumed.\nIf using a non-gRPC capable load balancer, use the WebSocket protocol by prefixing the endpoint\naddress with wss://.\nNote: when leaving this blank, Sensor will attempt to connect to a Central instance running in the same\nnamespace." + }, + { + "path": "sensor", + "displayName": "Sensor Settings", + "description": "Settings for the Sensor component." + }, + { + "path": "admissionControl", + "displayName": "Admission Control Settings", + "description": "Settings for the Admission Control component, which is necessary for preventive policy enforcement,\nand for Kubernetes event monitoring." + }, + { + "path": "perNode", + "displayName": "Per Node Settings", + "description": "Settings for the components running on each node in the cluster (Collector and Compliance)." + }, + { + "path": "auditLogs", + "displayName": "Kubernetes Audit Logs Ingestion Settings", + "description": "Settings relating to the ingestion of Kubernetes audit logs." + }, + { + "path": "processBaselines", + "displayName": "Process Baselines Settings", + "description": "Settings relating to process baselines." + }, + { + "path": "scanner", + "displayName": "Scanner Component Settings", + "description": "Settings for the Scanner component, which is responsible for vulnerability scanning of container\nimages stored in a cluster-local image repository." + }, + { + "path": "scannerV4", + "displayName": "Scanner V4 Component Settings", + "description": "Settings for the Scanner V4 components, which can run in addition to the previously existing Scanner components" + }, + { + "path": "tls", + "displayName": "TLS", + "description": "Settings related to Transport Layer Security, such as Certificate Authorities." + }, + { + "path": "imagePullSecrets", + "displayName": "Image Pull Secrets", + "description": "Additional image pull secrets to be taken into account for pulling images.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "customize", + "displayName": "Customizations", + "description": "Customizations to apply on all Central Services components.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "overlays", + "displayName": "Overlays", + "description": "Overlays", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "monitoring", + "displayName": "Monitoring", + "description": "Monitoring configuration.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "registryOverride", + "displayName": "Custom Default Image Registry", + "description": "Set this parameter to override the default registry in images. For example, nginx:latest -> /library/nginx:latest", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "network", + "displayName": "Network", + "description": "Network configuration.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:advanced" + ] + }, + { + "path": "misc", + "displayName": "Miscellaneous", + "description": "Deprecated field. This field will be removed in a future release.\nMiscellaneous settings.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "admissionControl.enforcement", + "displayName": "Enforcement", + "description": "Set to Disabled to disable policy enforcement for the admission controller. This is not recommended.\nOn new deployments starting with version 4.9, defaults to Enabled.\nOn old deployments, defaults to Enabled if at least one of listenOnCreates or listenOnUpdates is true." + }, + { + "path": "admissionControl.bypass", + "displayName": "Bypass", + "description": "Enables teams to bypass admission control in a monitored manner in the event of an emergency.\nThe default is: BreakGlassAnnotation." + }, + { + "path": "admissionControl.failurePolicy", + "displayName": "Failure Policy", + "description": "If set to \"Fail\", the admission controller's webhooks are configured to fail-closed in case admission controller\nfails to respond in time. A failure policy \"Ignore\" configures the webhooks to fail-open.\nThe default is: Ignore." + }, + { + "path": "admissionControl.replicas", + "displayName": "Replicas", + "description": "The number of replicas of the admission control pod.\nThe default is: 3." + }, + { + "path": "admissionControl.resources", + "displayName": "Resources", + "description": "Allows overriding the default resource settings for this component. Please consult the documentation\nfor an overview of default resource requirements and a sizing guide.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" + ] + }, + { + "path": "admissionControl.nodeSelector", + "displayName": "Node Selector", + "description": "If you want this component to only run on specific nodes, you can configure a node selector here." + }, + { + "path": "admissionControl.tolerations", + "displayName": "Tolerations", + "description": "If you want this component to only run on specific nodes, you can configure tolerations of tainted nodes.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:tolerations" + ] + }, + { + "path": "admissionControl.hostAliases", + "displayName": "Host Aliases", + "description": "HostAliases allows configuring additional hostnames to resolve in the pod's hosts file." + }, + { + "path": "admissionControl.contactImageScanners", + "displayName": "Contact Image Scanners", + "description": "Deprecated field. This field will be removed in a future release.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "admissionControl.listenOnCreates", + "displayName": "Listen On Creates", + "description": "Deprecated field. This field will be removed in a future release.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "admissionControl.listenOnEvents", + "displayName": "Listen On Events", + "description": "Deprecated field. This field will be removed in a future release.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "admissionControl.listenOnUpdates", + "displayName": "Listen On Updates", + "description": "Deprecated field. This field will be removed in a future release.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "admissionControl.timeoutSeconds", + "displayName": "Timeout Seconds", + "description": "Deprecated field. This field will be removed in a future release.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:hidden" + ] + }, + { + "path": "auditLogs.collection", + "displayName": "Collection", + "description": "Whether collection of Kubernetes audit logs should be enabled or disabled. Currently, this is only\nsupported on OpenShift 4, and trying to enable it on non-OpenShift 4 clusters will result in an error.\nUse the 'Auto' setting to enable it on compatible environments, and disable it elsewhere.\nThe default is: Auto." }, { "path": "customize.labels", @@ -167076,6 +170826,7 @@ { "path": "monitoring.openshift.enabled", "displayName": "Enabled", + "description": "The default is: true.", "x-descriptors": [ "urn:alm:descriptor:com.tectonic.ui:booleanSwitch" ] @@ -167083,7 +170834,7 @@ { "path": "network.policies", "displayName": "Network Policies", - "description": "To provide security at the network level the ACS Operator creates NetworkPolicy resources by default. If you want to manage your own NetworkPolicy objects then set this to \"Disabled\"." + "description": "To provide security at the network level the ACS Operator creates NetworkPolicy resources by default. If you want to manage your own NetworkPolicy objects then set this to \"Disabled\".\nThe default is: Enabled." }, { "path": "overlays[0].apiVersion", @@ -167143,7 +170894,7 @@ { "path": "perNode.taintToleration", "displayName": "Taint Toleration", - "description": "To ensure comprehensive monitoring of your cluster activity, Red Hat Advanced Cluster Security\nwill run services on every node in the cluster, including tainted nodes by default. If you do\nnot want this behavior, please select 'AvoidTaints' here." + "description": "To ensure comprehensive monitoring of your cluster activity, Red Hat Advanced Cluster Security\nwill run services on every node in the cluster, including tainted nodes by default. If you do\nnot want this behavior, please select 'AvoidTaints' here.\nThe default is: TolerateTaints." }, { "path": "perNode.hostAliases", @@ -167153,7 +170904,7 @@ { "path": "perNode.collector.collection", "displayName": "Collection", - "description": "The method for system-level data collection. CORE_BPF is recommended.\nIf you select \"NoCollection\", you will not be able to see any information about network activity\nand process executions. The remaining settings in these section will not have any effect.\nThe value is a subject of conversion by the operator if needed, e.g. to\nremove deprecated methods.", + "description": "The method for system-level data collection. CORE_BPF is recommended.\nIf you select \"NoCollection\", you will not be able to see any information about network activity\nand process executions. The remaining settings in these section will not have any effect.\nThe value is a subject of conversion by the operator if needed, e.g. to\nremove deprecated methods.\nThe default is: CORE_BPF.", "x-descriptors": [ "urn:alm:descriptor:com.tectonic.ui:select:CORE_BPF", "urn:alm:descriptor:com.tectonic.ui:select:NoCollection" @@ -167162,7 +170913,7 @@ { "path": "perNode.collector.imageFlavor", "displayName": "Image Flavor", - "description": "Deprecated field.", + "description": "Obsolete field.", "x-descriptors": [ "urn:alm:descriptor:com.tectonic.ui:hidden" ] @@ -167170,7 +170921,7 @@ { "path": "perNode.collector.forceCollection", "displayName": "Force Collection", - "description": "Deprecated field. This field will be removed in a future release.", + "description": "Obsolete field. This field will be removed in a future release.", "x-descriptors": [ "urn:alm:descriptor:com.tectonic.ui:hidden" ] @@ -167199,10 +170950,19 @@ "urn:alm:descriptor:com.tectonic.ui:resourceRequirements" ] }, + { + "path": "processBaselines.autoLock", + "displayName": "Auto Lock", + "description": "Should process baselines be automatically locked when the observation period (1 hour by default) ends.\nThe default is: Disabled.", + "x-descriptors": [ + "urn:alm:descriptor:com.tectonic.ui:select:Enabled", + "urn:alm:descriptor:com.tectonic.ui:select:Disabled" + ] + }, { "path": "scanner.scannerComponent", "displayName": "Scanner Component", - "description": "If you do not want to deploy the Red Hat Advanced Cluster Security Scanner, you can disable it here\n(not recommended).\nIf you do so, all the settings in this section will have no effect." + "description": "If you do not want to deploy the Red Hat Advanced Cluster Security Scanner, you can disable it here\n(not recommended).\nIf you do so, all the settings in this section will have no effect.\nThe default is: AutoSense." }, { "path": "scanner.analyzer", @@ -167248,16 +171008,17 @@ { "path": "scanner.analyzer.scaling.autoScaling", "displayName": "Autoscaling", - "description": "When enabled, the number of component replicas is managed dynamically based on the load, within the limits\nspecified below." + "description": "When enabled, the number of component replicas is managed dynamically based on the load, within the limits\nspecified below.\nThe default is: Enabled." }, { "path": "scanner.analyzer.scaling.replicas", "displayName": "Default Replicas", - "description": "When autoscaling is disabled, the number of replicas will always be configured to match this value." + "description": "When autoscaling is disabled, the number of replicas will always be configured to match this value.\nThe default is: 3." }, { "path": "scanner.analyzer.scaling.minReplicas", "displayName": "Autoscaling Minimum Replicas", + "description": "The default is: 2.", "x-descriptors": [ "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scanner.analyzer.scaling.autoScaling:Enabled" ] @@ -167265,6 +171026,7 @@ { "path": "scanner.analyzer.scaling.maxReplicas", "displayName": "Autoscaling Maximum Replicas", + "description": "The default is: 5.", "x-descriptors": [ "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scanner.analyzer.scaling.autoScaling:Enabled" ] @@ -167373,7 +171135,7 @@ { "path": "scannerV4.db.persistence.persistentVolumeClaim.claimName", "displayName": "Claim Name", - "description": "The name of the PVC to manage persistent data. If no PVC with the given name exists, it will be\ncreated. Defaults to \"scanner-v4-db\" if not set." + "description": "The name of the PVC to manage persistent data. If no PVC with the given name exists, it will be\ncreated.\nThe default is: scanner-v4-db." }, { "path": "scannerV4.db.persistence.persistentVolumeClaim.size", @@ -167425,16 +171187,17 @@ { "path": "scannerV4.indexer.scaling.autoScaling", "displayName": "Autoscaling", - "description": "When enabled, the number of component replicas is managed dynamically based on the load, within the limits\nspecified below." + "description": "When enabled, the number of component replicas is managed dynamically based on the load, within the limits\nspecified below.\nThe default is: Enabled." }, { "path": "scannerV4.indexer.scaling.replicas", "displayName": "Default Replicas", - "description": "When autoscaling is disabled, the number of replicas will always be configured to match this value." + "description": "When autoscaling is disabled, the number of replicas will always be configured to match this value.\nThe default is: 3." }, { "path": "scannerV4.indexer.scaling.minReplicas", "displayName": "Autoscaling Minimum Replicas", + "description": "The default is: 2.", "x-descriptors": [ "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.indexer.scaling.autoScaling:Enabled" ] @@ -167442,6 +171205,7 @@ { "path": "scannerV4.indexer.scaling.maxReplicas", "displayName": "Autoscaling Maximum Replicas", + "description": "The default is: 5.", "x-descriptors": [ "urn:alm:descriptor:com.tectonic.ui:fieldDependency:scannerV4.indexer.scaling.autoScaling:Enabled" ] @@ -167479,7 +171243,8 @@ }, { "path": "tls.additionalCAs", - "displayName": "Additional CAs" + "displayName": "Additional CAs", + "description": "Allows you to specify additional trusted Root CAs." } ] }, @@ -167574,59 +171339,59 @@ "relatedImages": [ { "name": "central_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:1ea9a73abc1d1d742f28b21fa9a65404c72fdff382f2044bff6c41839eeda77f" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:3967c7c91238516bfd5df4a893e0df644b8aca0d6b249dbd2e94c063dad12fba" }, { "name": "collector", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:750152c1cb15741fe1221d2a3d55d904df787a14b69e1523778a05a1458f0ea5" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:591dcc1532ae2e40a7e78e117f7c02de81c0742f48b97436c2e4a7fd5a9fe649" }, { "name": "main", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:05176f490dcafac0491773580b22e25d3779c13cfb32d74b49cc3c98322223a0" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:26e01b4554d6ff2d2a1333ff86244f61a037b61bb3b26a14b0927d245a1b0c21" }, { "name": "", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9bb2d3ff2a97d0c3234e4864fc2d21ff278ce06e725e43c56f43e42bed97dd19" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:02a50a53dddbbdd749b0b6cc01f555308ab3c16045130d07483bfddd6861de42" }, { "name": "manager", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:613ba30aceb61d8fca16136d869f45bdd2a3f51fcc024d9caf03ae8ca98b39ee" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3471d6c2b77ad4be863f7d5b0e5da5cd8a9c267126c003424c27b91e1cbf1b24" }, { "name": "roxctl", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:589415390a3c3e2afe36b1cd3e3368187343a3f215cf2774ae41a929559b6157" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:cc741551497f949a2c337a6fed0313c807cc46d0ad5adc281505146f22fb356a" }, { "name": "scanner_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9f2d4000d62662c221e47e9d44bdc067b2cb41dde9dd43b4d8e940c4ee1f0d57" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:8281d43a5b1f2cfc7893d812703e283f5f5c30617733b531d86dc201fd1bcf9f" }, { "name": "scanner_db_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:18a8551a1c4828a665f55d3a8bb814f90546569ad7bc56b7a163ba5f86cfe0b9" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:9dab85eabbae8cc51ea9288aeaf0ac47009d293006264b6f88991815772d9df1" }, { "name": "scanner", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:da6c1c8e315266d47bcd541167412018faebaa0ad82b2202b556bb80673330a3" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:a283a8e651a4d6fc991c4801e8480f31fb72b6305b0b9c8741733c9847235e65" }, { "name": "scanner_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:936aeb2aeffcddc004338e28624027d10f58c01ce76a9d799450bdb43f07184e" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:6dd9e4842988728a930451b25822c1e049cd2f6c7b3e358df18e74ca15b1f972" }, { "name": "scanner_v4_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:809129883924cacaf124f197983cc6a14107138f90f85b3c52ed996e915803ad" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:5062cf77952f21fb428ff7a230c3f692bbb73f888ab102e5ac197a352415b18a" }, { "name": "scanner_v4", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:2f7247a9c08e952b2f53de6b818a7d999e8e3d0aab62f2e6255062ee27d1c826" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:2bd192a9f1960af7008341a39ff3379c121860a8c1145f120007e106bab582cc" } ] } { "schema": "olm.bundle", - "name": "rhacs-operator.v4.9.0", + "name": "rhacs-operator.v4.9.1", "package": "rhacs-operator", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:02a50a53dddbbdd749b0b6cc01f555308ab3c16045130d07483bfddd6861de42", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9312c096fef02f70b642551338fdf968ec6657ff0385f51c13767d8b29afc76d", "properties": [ { "type": "olm.gvk", @@ -167656,7 +171421,7 @@ "type": "olm.package", "value": { "packageName": "rhacs-operator", - "version": "4.9.0" + "version": "4.9.1" } }, { @@ -167666,8 +171431,8 @@ "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", "capabilities": "Seamless Upgrades", "categories": "Security", - "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3471d6c2b77ad4be863f7d5b0e5da5cd8a9c267126c003424c27b91e1cbf1b24", - "createdAt": "2025-10-30T15:19:35.144226+00:00", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:68d9c77d33b50fde89121bc62ffb8a2fe8b43f50ebf0ec964938d33ffef17874", + "createdAt": "2025-11-20T10:17:44.970647+00:00", "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", "features.operators.openshift.io/cnf": "false", "features.operators.openshift.io/cni": "false", @@ -167679,7 +171444,7 @@ "features.operators.openshift.io/token-auth-aws": "false", "features.operators.openshift.io/token-auth-azure": "false", "features.operators.openshift.io/token-auth-gcp": "false", - "olm.skipRange": ">= 4.8.0 < 4.9.0", + "olm.skipRange": ">= 4.8.0 < 4.9.1", "operatorframework.io/suggested-namespace": "rhacs-operator", "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", @@ -169471,59 +173236,59 @@ "relatedImages": [ { "name": "central_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:3967c7c91238516bfd5df4a893e0df644b8aca0d6b249dbd2e94c063dad12fba" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:cda9b4a23df0c420751f4d37955f9a84a18775b4a6938b8c70bca08ddb572062" }, { "name": "collector", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:591dcc1532ae2e40a7e78e117f7c02de81c0742f48b97436c2e4a7fd5a9fe649" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:a662237e4b36010f400418eede4605bf12e55a475ad8f91455f6a59b7bd066e0" }, { "name": "main", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:26e01b4554d6ff2d2a1333ff86244f61a037b61bb3b26a14b0927d245a1b0c21" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d1a469f4335ae9ed3e60e1bb0ebd7651454c9b26bb804326e448b94254ec70c0" }, { "name": "", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:02a50a53dddbbdd749b0b6cc01f555308ab3c16045130d07483bfddd6861de42" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9312c096fef02f70b642551338fdf968ec6657ff0385f51c13767d8b29afc76d" }, { "name": "manager", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3471d6c2b77ad4be863f7d5b0e5da5cd8a9c267126c003424c27b91e1cbf1b24" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:68d9c77d33b50fde89121bc62ffb8a2fe8b43f50ebf0ec964938d33ffef17874" }, { "name": "roxctl", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:cc741551497f949a2c337a6fed0313c807cc46d0ad5adc281505146f22fb356a" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:d2595a663db335c9951b05ade48b73bd88b26f3754a621b430593b8497b496db" }, { "name": "scanner_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:8281d43a5b1f2cfc7893d812703e283f5f5c30617733b531d86dc201fd1bcf9f" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:50c3a82767c8e87a3bcad7d4fd2650cf2a1ec0eb8ef4f7f60fa2c751b43f53ae" }, { "name": "scanner_db_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:9dab85eabbae8cc51ea9288aeaf0ac47009d293006264b6f88991815772d9df1" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:5a5a6ba8e773dfb6c3fe5e632dcc1028fa75cd96d83f891847509e922ab5d9ec" }, { "name": "scanner", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:a283a8e651a4d6fc991c4801e8480f31fb72b6305b0b9c8741733c9847235e65" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:271ad8cfc4b895aa54f183503b41a68fffaaa152e51b4fb7451d09da62a7f765" }, { "name": "scanner_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:6dd9e4842988728a930451b25822c1e049cd2f6c7b3e358df18e74ca15b1f972" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:aa9f528f8e329678d52f585554d2cd4378638ae8fd92c90bc7af5cc29a5d95ce" }, { "name": "scanner_v4_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:5062cf77952f21fb428ff7a230c3f692bbb73f888ab102e5ac197a352415b18a" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:17b091957cfd1925da1e082dff249fe09069392654cc085d473b768097613b9d" }, { "name": "scanner_v4", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:2bd192a9f1960af7008341a39ff3379c121860a8c1145f120007e106bab582cc" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:91c8e7a5289a4e3f5aac5069fdf24f334aa8307f57278878725b81d8f78e419c" } ] } { "schema": "olm.bundle", - "name": "rhacs-operator.v4.9.1", + "name": "rhacs-operator.v4.9.2", "package": "rhacs-operator", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9312c096fef02f70b642551338fdf968ec6657ff0385f51c13767d8b29afc76d", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6", "properties": [ { "type": "olm.gvk", @@ -169553,7 +173318,7 @@ "type": "olm.package", "value": { "packageName": "rhacs-operator", - "version": "4.9.1" + "version": "4.9.2" } }, { @@ -169563,8 +173328,8 @@ "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", "capabilities": "Seamless Upgrades", "categories": "Security", - "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:68d9c77d33b50fde89121bc62ffb8a2fe8b43f50ebf0ec964938d33ffef17874", - "createdAt": "2025-11-20T10:17:44.970647+00:00", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e", + "createdAt": "2025-12-15T11:46:09.678434+00:00", "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", "features.operators.openshift.io/cnf": "false", "features.operators.openshift.io/cni": "false", @@ -169576,7 +173341,7 @@ "features.operators.openshift.io/token-auth-aws": "false", "features.operators.openshift.io/token-auth-azure": "false", "features.operators.openshift.io/token-auth-gcp": "false", - "olm.skipRange": ">= 4.8.0 < 4.9.1", + "olm.skipRange": ">= 4.8.0 < 4.9.2", "operatorframework.io/suggested-namespace": "rhacs-operator", "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", @@ -171368,59 +175133,59 @@ "relatedImages": [ { "name": "central_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:cda9b4a23df0c420751f4d37955f9a84a18775b4a6938b8c70bca08ddb572062" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b" }, { "name": "collector", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:a662237e4b36010f400418eede4605bf12e55a475ad8f91455f6a59b7bd066e0" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a" }, { "name": "main", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d1a469f4335ae9ed3e60e1bb0ebd7651454c9b26bb804326e448b94254ec70c0" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:4118ac0a9af4d6c38fcdde1236a963a47a41eb465d15a9a0bf90b30679a2b2f1" }, { "name": "", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9312c096fef02f70b642551338fdf968ec6657ff0385f51c13767d8b29afc76d" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6" }, { "name": "manager", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:68d9c77d33b50fde89121bc62ffb8a2fe8b43f50ebf0ec964938d33ffef17874" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e" }, { "name": "roxctl", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:d2595a663db335c9951b05ade48b73bd88b26f3754a621b430593b8497b496db" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf" }, { "name": "scanner_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:50c3a82767c8e87a3bcad7d4fd2650cf2a1ec0eb8ef4f7f60fa2c751b43f53ae" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7" }, { "name": "scanner_db_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:5a5a6ba8e773dfb6c3fe5e632dcc1028fa75cd96d83f891847509e922ab5d9ec" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e48f539bbe3b874be10dcc31ea61b074854a00d1bbccbbd3ec72b185345ba55e" }, { "name": "scanner", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:271ad8cfc4b895aa54f183503b41a68fffaaa152e51b4fb7451d09da62a7f765" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b" }, { "name": "scanner_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:aa9f528f8e329678d52f585554d2cd4378638ae8fd92c90bc7af5cc29a5d95ce" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687" }, { "name": "scanner_v4_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:17b091957cfd1925da1e082dff249fe09069392654cc085d473b768097613b9d" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d" }, { "name": "scanner_v4", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:91c8e7a5289a4e3f5aac5069fdf24f334aa8307f57278878725b81d8f78e419c" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7" } ] } { "schema": "olm.bundle", - "name": "rhacs-operator.v4.9.2", + "name": "rhacs-operator.v4.9.3", "package": "rhacs-operator", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:4293e169ce795c57143e5a37e0b909ba19d702d26830c749f960ce4ec77c0897", "properties": [ { "type": "olm.gvk", @@ -171450,7 +175215,7 @@ "type": "olm.package", "value": { "packageName": "rhacs-operator", - "version": "4.9.2" + "version": "4.9.3" } }, { @@ -171460,8 +175225,8 @@ "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", "capabilities": "Seamless Upgrades", "categories": "Security", - "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e", - "createdAt": "2025-12-15T11:46:09.678434+00:00", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4ce128a2edcd1c4e1b32d631a058a0c89ed1b69f10f584e142ba382cb4524ed1", + "createdAt": "2026-02-11T13:05:53.745090+00:00", "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", "features.operators.openshift.io/cnf": "false", "features.operators.openshift.io/cni": "false", @@ -171473,7 +175238,7 @@ "features.operators.openshift.io/token-auth-aws": "false", "features.operators.openshift.io/token-auth-azure": "false", "features.operators.openshift.io/token-auth-gcp": "false", - "olm.skipRange": ">= 4.8.0 < 4.9.2", + "olm.skipRange": ">= 4.8.0 < 4.9.3", "operatorframework.io/suggested-namespace": "rhacs-operator", "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", @@ -173265,59 +177030,59 @@ "relatedImages": [ { "name": "central_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:5351893996eab02ca1b273e6c3efd3dda0a65d3a3c566ef722321fce4edf1387" }, { "name": "collector", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:99779433e9439c573b32a9252cba053eabd2a8b6c7cdce68dbede24cdb7a012f" }, { "name": "main", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:4118ac0a9af4d6c38fcdde1236a963a47a41eb465d15a9a0bf90b30679a2b2f1" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:0dbb0444ea1c93e05c1f5519559c5c2f50f02e384e6975f709a34365791e2944" }, { "name": "", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:4293e169ce795c57143e5a37e0b909ba19d702d26830c749f960ce4ec77c0897" }, { "name": "manager", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4ce128a2edcd1c4e1b32d631a058a0c89ed1b69f10f584e142ba382cb4524ed1" }, { "name": "roxctl", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:c1bc956d1dd4cd64960e9be0c7c1deb665acfe651f1a7d786266c16ec9ed5e3f" }, { "name": "scanner_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0e0825f1f0cffd170bd9f6ed38a7275c7444a8b5e7c263fe21701e789fb843a7" }, { "name": "scanner_db_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e48f539bbe3b874be10dcc31ea61b074854a00d1bbccbbd3ec72b185345ba55e" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:d12f159693d529fb4c8b1bc3fdc80922b4a76bf9c5062ba85aa83caf4ae4e4fa" }, { "name": "scanner", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:546a1c9117389c788b23c8b4dfd44822e297325e0377cf67e7352c605ffe4aa3" }, { "name": "scanner_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7d578bc8b0bb6015747f1d1e64e418aa2a88d6b9479e0123c5ab1bcf6e500f99" }, { "name": "scanner_v4_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:cdf4123ba9a11c7bfc39e54dbbbd2adda83ce7034448bd1abcd18685ae315527" }, { "name": "scanner_v4", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:6928246d4947b643f5af6b4385011091a20501091912be36b75a4a18c5bba7a1" } ] } { "schema": "olm.bundle", - "name": "rhacs-operator.v4.9.3", + "name": "rhacs-operator.v4.9.4", "package": "rhacs-operator", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:4293e169ce795c57143e5a37e0b909ba19d702d26830c749f960ce4ec77c0897", + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e8e09e694e526ddae4ead8c2a40e961bc434a7a6678286e03fb100663f11fc8e", "properties": [ { "type": "olm.gvk", @@ -173347,7 +177112,7 @@ "type": "olm.package", "value": { "packageName": "rhacs-operator", - "version": "4.9.3" + "version": "4.9.4" } }, { @@ -173357,8 +177122,8 @@ "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", "capabilities": "Seamless Upgrades", "categories": "Security", - "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4ce128a2edcd1c4e1b32d631a058a0c89ed1b69f10f584e142ba382cb4524ed1", - "createdAt": "2026-02-11T13:05:53.745090+00:00", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:e7ddd16df6a8c577179ed323aa22cb9d5b4d7a9e0efc9bbf01f830b5398dff02", + "createdAt": "2026-03-11T15:14:32.422554+00:00", "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", "features.operators.openshift.io/cnf": "false", "features.operators.openshift.io/cni": "false", @@ -173370,7 +177135,7 @@ "features.operators.openshift.io/token-auth-aws": "false", "features.operators.openshift.io/token-auth-azure": "false", "features.operators.openshift.io/token-auth-gcp": "false", - "olm.skipRange": ">= 4.8.0 < 4.9.3", + "olm.skipRange": ">= 4.8.0 < 4.9.4", "operatorframework.io/suggested-namespace": "rhacs-operator", "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", @@ -175162,59 +178927,59 @@ "relatedImages": [ { "name": "central_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:5351893996eab02ca1b273e6c3efd3dda0a65d3a3c566ef722321fce4edf1387" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:1aa202bca4b0ec37420b6271f378c6f3925e22cdde04ab53e965140c059af863" }, { "name": "collector", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:99779433e9439c573b32a9252cba053eabd2a8b6c7cdce68dbede24cdb7a012f" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:523c028ce03473016c3a77572c89e2b92dd5620f367b425cbf417c1cd974ee1b" }, { "name": "main", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:0dbb0444ea1c93e05c1f5519559c5c2f50f02e384e6975f709a34365791e2944" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:9970eb676c0b34c2fee07781c2247e17a1a655bdf31e31c472d61440536adf00" }, { "name": "", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:4293e169ce795c57143e5a37e0b909ba19d702d26830c749f960ce4ec77c0897" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e8e09e694e526ddae4ead8c2a40e961bc434a7a6678286e03fb100663f11fc8e" }, { "name": "manager", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4ce128a2edcd1c4e1b32d631a058a0c89ed1b69f10f584e142ba382cb4524ed1" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:e7ddd16df6a8c577179ed323aa22cb9d5b4d7a9e0efc9bbf01f830b5398dff02" }, { "name": "roxctl", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:c1bc956d1dd4cd64960e9be0c7c1deb665acfe651f1a7d786266c16ec9ed5e3f" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:f8876caa1917812c6024032963e199e24329a506143f031980b6170493bc47f1" }, { "name": "scanner_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0e0825f1f0cffd170bd9f6ed38a7275c7444a8b5e7c263fe21701e789fb843a7" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:4dd8884af50ea6ce2d4873e973e1a0e504e288c846a1a6098c81fae8f0359c01" }, { "name": "scanner_db_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:d12f159693d529fb4c8b1bc3fdc80922b4a76bf9c5062ba85aa83caf4ae4e4fa" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:8fa6e7a4cf136a7cdcbcc00ee5130d6089c75805be35cf72930e279503853235" }, { "name": "scanner", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:546a1c9117389c788b23c8b4dfd44822e297325e0377cf67e7352c605ffe4aa3" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:e66d880952d5ad5cc6eb5c36c4234a83a5fa3f7407aad8f97bb885f85f174b39" }, { "name": "scanner_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7d578bc8b0bb6015747f1d1e64e418aa2a88d6b9479e0123c5ab1bcf6e500f99" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7d74cfab59d7af011b3711f4be2d362bcfbffb9839a409fd7cefb71154f9b6b3" }, { "name": "scanner_v4_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:cdf4123ba9a11c7bfc39e54dbbbd2adda83ce7034448bd1abcd18685ae315527" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:fe59d81606e63fe9e36885c861781381e1f426f42ff71218cb8463e8038661aa" }, { "name": "scanner_v4", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:6928246d4947b643f5af6b4385011091a20501091912be36b75a4a18c5bba7a1" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:f656f63cc716694832f588bdde141a51ccdca68cc767b8d1bec44fe40256c7b6" } ] } { "schema": "olm.bundle", - "name": "rhacs-operator.v4.9.4", + "name": "rhacs-operator.v4.9.5-rc.2", "package": "rhacs-operator", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e8e09e694e526ddae4ead8c2a40e961bc434a7a6678286e03fb100663f11fc8e", + "image": "quay.io/rhacs-eng/release-operator-bundle@sha256:72929bde24e023c16c77a58dc16482c6e1d73aeb8449de042c494b962855ca83", "properties": [ { "type": "olm.gvk", @@ -175244,7 +179009,7 @@ "type": "olm.package", "value": { "packageName": "rhacs-operator", - "version": "4.9.4" + "version": "4.9.5-rc.2" } }, { @@ -175254,8 +179019,8 @@ "alm-examples": "[\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"Central\",\n \"metadata\": {\n \"name\": \"stackrox-central-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"central\": {\n \"exposure\": {\n \"route\": {\n \"enabled\": true\n }\n }\n }\n }\n },\n {\n \"apiVersion\": \"platform.stackrox.io/v1alpha1\",\n \"kind\": \"SecuredCluster\",\n \"metadata\": {\n \"name\": \"stackrox-secured-cluster-services\",\n \"namespace\": \"stackrox\"\n },\n \"spec\": {\n \"clusterName\": \"my-cluster\"\n }\n }\n]", "capabilities": "Seamless Upgrades", "categories": "Security", - "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:e7ddd16df6a8c577179ed323aa22cb9d5b4d7a9e0efc9bbf01f830b5398dff02", - "createdAt": "2026-03-11T15:14:32.422554+00:00", + "containerImage": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:e14d1593528bda5d39bdbe1bdf82ca4041155320808cbe1dfaadd169f0aa6efc", + "createdAt": "2026-03-27T18:18:21.077216+00:00", "description": "Red Hat Advanced Cluster Security (RHACS) operator provisions the services necessary to secure each of your OpenShift and Kubernetes clusters.", "features.operators.openshift.io/cnf": "false", "features.operators.openshift.io/cni": "false", @@ -175267,7 +179032,7 @@ "features.operators.openshift.io/token-auth-aws": "false", "features.operators.openshift.io/token-auth-azure": "false", "features.operators.openshift.io/token-auth-gcp": "false", - "olm.skipRange": ">= 4.8.0 < 4.9.4", + "olm.skipRange": ">= 4.8.0 < 4.9.5-rc.2", "operatorframework.io/suggested-namespace": "rhacs-operator", "operators.openshift.io/infrastructure-features": "[\"disconnected\", \"proxy-aware\"]", "operators.openshift.io/valid-subscription": "[\"OpenShift Platform Plus\", \"Red Hat Advanced Cluster Security\"]", @@ -177057,53 +180822,53 @@ } ], "relatedImages": [ + { + "name": "", + "image": "quay.io/rhacs-eng/release-operator-bundle@sha256:72929bde24e023c16c77a58dc16482c6e1d73aeb8449de042c494b962855ca83" + }, { "name": "central_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:1aa202bca4b0ec37420b6271f378c6f3925e22cdde04ab53e965140c059af863" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:41b3a95a021c71ab912cc94fa8720cb94335f4faa9f790ac9c66c862c62ce7f9" }, { "name": "collector", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:523c028ce03473016c3a77572c89e2b92dd5620f367b425cbf417c1cd974ee1b" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:3398679e0e79feb3a0bdb312ba00f3032c8c75bf5e89aa8a3951d9df918d2d31" }, { "name": "main", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:9970eb676c0b34c2fee07781c2247e17a1a655bdf31e31c472d61440536adf00" - }, - { - "name": "", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e8e09e694e526ddae4ead8c2a40e961bc434a7a6678286e03fb100663f11fc8e" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:38990705e0e2e9168047c48a53cd501164317feec95d954f766a1008f04d2f5b" }, { "name": "manager", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:e7ddd16df6a8c577179ed323aa22cb9d5b4d7a9e0efc9bbf01f830b5398dff02" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:e14d1593528bda5d39bdbe1bdf82ca4041155320808cbe1dfaadd169f0aa6efc" }, { "name": "roxctl", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:f8876caa1917812c6024032963e199e24329a506143f031980b6170493bc47f1" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:770279dcc9b96924af9e7199213dfb26cc6327272fe9d6b0b844c2295b7fff9a" }, { "name": "scanner_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:4dd8884af50ea6ce2d4873e973e1a0e504e288c846a1a6098c81fae8f0359c01" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:3748edb297da4a560fb8e182df8f063ddaee362dcc809355b45f7a02e8aa3f6c" }, { "name": "scanner_db_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:8fa6e7a4cf136a7cdcbcc00ee5130d6089c75805be35cf72930e279503853235" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:093725f07d233d43f518377f24dbf1653661b78b54812bd198648506e4543f30" }, { "name": "scanner", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:e66d880952d5ad5cc6eb5c36c4234a83a5fa3f7407aad8f97bb885f85f174b39" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:7a8b221a26aae22027627e644a3fb975952fffd2e6f7c31fd1fda677d81993b4" }, { "name": "scanner_slim", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7d74cfab59d7af011b3711f4be2d362bcfbffb9839a409fd7cefb71154f9b6b3" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:3dba1d2f5fb883e9e3cd2b3cfa1d5fed8f82652469506493405ffd03c97345f3" }, { "name": "scanner_v4_db", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:fe59d81606e63fe9e36885c861781381e1f426f42ff71218cb8463e8038661aa" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:88db747b4e2b7978c7f2387aad17427f2787dceefae31e408bbc078e41c40990" }, { "name": "scanner_v4", - "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:f656f63cc716694832f588bdde141a51ccdca68cc767b8d1bec44fe40256c7b6" + "image": "registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:e5ca6df902f3adfeea2b7efead6c4ed25a9c379202e042a1822e7dec8e9a2dda" } ] } diff --git a/catalog-template.yaml b/catalog-template.yaml index 60698585..0dae65b7 100644 --- a/catalog-template.yaml +++ b/catalog-template.yaml @@ -1984,6 +1984,9 @@ entries: - name: rhacs-operator.v4.8.9 replaces: rhacs-operator.v4.8.8 skipRange: ">= 4.7.0 < 4.8.9" + - name: rhacs-operator.v4.8.10-rc.2 + replaces: rhacs-operator.v4.8.9 + skipRange: ">= 4.7.0 < 4.8.10-rc.2" - schema: olm.channel name: rhacs-4.9 package: rhacs-operator @@ -2221,8 +2224,11 @@ entries: - name: rhacs-operator.v4.8.9 replaces: rhacs-operator.v4.8.8 skipRange: ">= 4.7.0 < 4.8.9" - - name: rhacs-operator.v4.9.0 + - name: rhacs-operator.v4.8.10-rc.2 replaces: rhacs-operator.v4.8.9 + skipRange: ">= 4.7.0 < 4.8.10-rc.2" + - name: rhacs-operator.v4.9.0 + replaces: rhacs-operator.v4.8.10-rc.2 skipRange: ">= 4.8.0 < 4.9.0" - name: rhacs-operator.v4.9.1 replaces: rhacs-operator.v4.9.0 @@ -2236,6 +2242,9 @@ entries: - name: rhacs-operator.v4.9.4 replaces: rhacs-operator.v4.9.3 skipRange: ">= 4.8.0 < 4.9.4" + - name: rhacs-operator.v4.9.5-rc.2 + replaces: rhacs-operator.v4.9.4 + skipRange: ">= 4.8.0 < 4.9.5-rc.2" - schema: olm.channel name: rhacs-4.10 package: rhacs-operator @@ -2473,8 +2482,11 @@ entries: - name: rhacs-operator.v4.8.9 replaces: rhacs-operator.v4.8.8 skipRange: ">= 4.7.0 < 4.8.9" - - name: rhacs-operator.v4.9.0 + - name: rhacs-operator.v4.8.10-rc.2 replaces: rhacs-operator.v4.8.9 + skipRange: ">= 4.7.0 < 4.8.10-rc.2" + - name: rhacs-operator.v4.9.0 + replaces: rhacs-operator.v4.8.10-rc.2 skipRange: ">= 4.8.0 < 4.9.0" - name: rhacs-operator.v4.9.1 replaces: rhacs-operator.v4.9.0 @@ -2488,8 +2500,11 @@ entries: - name: rhacs-operator.v4.9.4 replaces: rhacs-operator.v4.9.3 skipRange: ">= 4.8.0 < 4.9.4" - - name: rhacs-operator.v4.10.0 + - name: rhacs-operator.v4.9.5-rc.2 replaces: rhacs-operator.v4.9.4 + skipRange: ">= 4.8.0 < 4.9.5-rc.2" + - name: rhacs-operator.v4.10.0 + replaces: rhacs-operator.v4.9.5-rc.2 skipRange: ">= 4.9.0 < 4.10.0" - schema: olm.channel name: stable @@ -2728,8 +2743,11 @@ entries: - name: rhacs-operator.v4.8.9 replaces: rhacs-operator.v4.8.8 skipRange: ">= 4.7.0 < 4.8.9" - - name: rhacs-operator.v4.9.0 + - name: rhacs-operator.v4.8.10-rc.2 replaces: rhacs-operator.v4.8.9 + skipRange: ">= 4.7.0 < 4.8.10-rc.2" + - name: rhacs-operator.v4.9.0 + replaces: rhacs-operator.v4.8.10-rc.2 skipRange: ">= 4.8.0 < 4.9.0" - name: rhacs-operator.v4.9.1 replaces: rhacs-operator.v4.9.0 @@ -2743,8 +2761,11 @@ entries: - name: rhacs-operator.v4.9.4 replaces: rhacs-operator.v4.9.3 skipRange: ">= 4.8.0 < 4.9.4" - - name: rhacs-operator.v4.10.0 + - name: rhacs-operator.v4.9.5-rc.2 replaces: rhacs-operator.v4.9.4 + skipRange: ">= 4.8.0 < 4.9.5-rc.2" + - name: rhacs-operator.v4.10.0 + replaces: rhacs-operator.v4.9.5-rc.2 skipRange: ">= 4.9.0 < 4.10.0" - schema: olm.deprecations package: rhacs-operator @@ -3541,6 +3562,8 @@ entries: image: registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b22341e8dfba8b10b70f21f3b597c02874bae485c07517402db0930397d82688 - schema: olm.bundle image: registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9bb2d3ff2a97d0c3234e4864fc2d21ff278ce06e725e43c56f43e42bed97dd19 +- schema: olm.bundle + image: quay.io/rhacs-eng/release-operator-bundle@sha256:89c8467f3c6a8fa6f45c128d1b90dfc7322fb2ec49f8c93c0ba13e5870d132d3 - schema: olm.bundle image: registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:02a50a53dddbbdd749b0b6cc01f555308ab3c16045130d07483bfddd6861de42 - schema: olm.bundle @@ -3551,5 +3574,7 @@ entries: image: registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:4293e169ce795c57143e5a37e0b909ba19d702d26830c749f960ce4ec77c0897 - schema: olm.bundle image: registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e8e09e694e526ddae4ead8c2a40e961bc434a7a6678286e03fb100663f11fc8e +- schema: olm.bundle + image: quay.io/rhacs-eng/release-operator-bundle@sha256:72929bde24e023c16c77a58dc16482c6e1d73aeb8449de042c494b962855ca83 - schema: olm.bundle image: registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:1b1480e72310d6ec17c4dd4368214cd940a4da230b13304f4621c5ae560f9e9e