@happyvertical/smrt-core 0.55.7 → 0.55.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/AGENTS.md +2 -1
  2. package/agents/browser-entry.md +44 -0
  3. package/agents/build-knowledge.md +7 -0
  4. package/agents/recipes.md +217 -0
  5. package/agents/revision-guard.md +72 -1
  6. package/dist/audit-context.d.ts.map +1 -1
  7. package/dist/audit-context.js +2 -2
  8. package/dist/audit-context.js.map +1 -1
  9. package/dist/browser.d.ts +2 -1
  10. package/dist/browser.d.ts.map +1 -1
  11. package/dist/browser.js +7 -7
  12. package/dist/cascade.d.ts +1 -1
  13. package/dist/cascade.d.ts.map +1 -1
  14. package/dist/cascade.js +1 -1
  15. package/dist/cascade.js.map +1 -1
  16. package/dist/change-feed.d.ts.map +1 -1
  17. package/dist/change-feed.js +1 -2
  18. package/dist/change-feed.js.map +1 -1
  19. package/dist/class.d.ts +1 -1
  20. package/dist/class.d.ts.map +1 -1
  21. package/dist/class.js +7 -3
  22. package/dist/class.js.map +1 -1
  23. package/dist/collection.d.ts.map +1 -1
  24. package/dist/collection.js +1 -1
  25. package/dist/collection.js.map +1 -1
  26. package/dist/consumer-plugin/index.js +2 -2
  27. package/dist/data-query.d.ts.map +1 -1
  28. package/dist/data-query.js +2 -13
  29. package/dist/data-query.js.map +1 -1
  30. package/dist/database.js +1 -1
  31. package/dist/database.js.map +1 -1
  32. package/dist/dispatch/bus.js +1 -1
  33. package/dist/dispatch/bus.js.map +1 -1
  34. package/dist/embedded-write-queue.d.ts +1 -1
  35. package/dist/embedded-write-queue.d.ts.map +1 -1
  36. package/dist/embedded-write-queue.js +7 -5
  37. package/dist/embedded-write-queue.js.map +1 -1
  38. package/dist/embeddings/hash.js +2 -2
  39. package/dist/embeddings/hash.js.map +1 -1
  40. package/dist/embeddings/storage.d.ts.map +1 -1
  41. package/dist/embeddings/storage.js +1 -2
  42. package/dist/embeddings/storage.js.map +1 -1
  43. package/dist/errors.d.ts.map +1 -1
  44. package/dist/errors.js +1 -0
  45. package/dist/errors.js.map +1 -1
  46. package/dist/generation-snapshot.js +1 -1
  47. package/dist/generators/index.js +1 -1
  48. package/dist/generators/mcp.js +3 -3
  49. package/dist/generators/preflight-route.js +1 -1
  50. package/dist/generators/rest.js +1 -1
  51. package/dist/generators.js +1 -1
  52. package/dist/host.browser.d.ts +12 -0
  53. package/dist/host.browser.d.ts.map +1 -0
  54. package/dist/host.browser.js +30 -0
  55. package/dist/host.browser.js.map +1 -0
  56. package/dist/host.d.ts +18 -0
  57. package/dist/host.d.ts.map +1 -0
  58. package/dist/host.js +15 -0
  59. package/dist/host.js.map +1 -0
  60. package/dist/index.d.ts +1 -0
  61. package/dist/index.d.ts.map +1 -1
  62. package/dist/index.js +10 -9
  63. package/dist/knowledge.d.ts.map +1 -1
  64. package/dist/knowledge.js +5 -4
  65. package/dist/knowledge.js.map +1 -1
  66. package/dist/manifest/browser-capability.generated.d.ts +14 -0
  67. package/dist/manifest/browser-capability.generated.d.ts.map +1 -0
  68. package/dist/manifest/browser-capability.generated.js +499 -0
  69. package/dist/manifest/browser-capability.generated.js.map +1 -0
  70. package/dist/manifest/discover-base-classes.js +1 -1
  71. package/dist/manifest/discover-smrt-packages.js +1 -1
  72. package/dist/manifest/generator.js +3 -3
  73. package/dist/manifest/index.js +2 -2
  74. package/dist/manifest/local-manifest-reader.d.ts +48 -0
  75. package/dist/manifest/local-manifest-reader.d.ts.map +1 -0
  76. package/dist/manifest/local-manifest-reader.js +81 -0
  77. package/dist/manifest/local-manifest-reader.js.map +1 -0
  78. package/dist/manifest/manager.d.ts +5 -28
  79. package/dist/manifest/manager.d.ts.map +1 -1
  80. package/dist/manifest/manager.js +10 -56
  81. package/dist/manifest/manager.js.map +1 -1
  82. package/dist/manifest/manifest-loader.d.ts +1 -1
  83. package/dist/manifest/manifest-loader.d.ts.map +1 -1
  84. package/dist/manifest/manifest-loader.js +43 -12
  85. package/dist/manifest/manifest-loader.js.map +1 -1
  86. package/dist/manifest/node-host.d.ts +38 -0
  87. package/dist/manifest/node-host.d.ts.map +1 -0
  88. package/dist/manifest/node-host.js +52 -0
  89. package/dist/manifest/node-host.js.map +1 -0
  90. package/dist/manifest/package-manifest-exports.js +1 -1
  91. package/dist/manifest/static-manifest.d.ts.map +1 -1
  92. package/dist/manifest/static-manifest.js +7 -2
  93. package/dist/manifest/static-manifest.js.map +1 -1
  94. package/dist/manifest/store.d.ts +2 -1
  95. package/dist/manifest/store.d.ts.map +1 -1
  96. package/dist/manifest/store.js +7 -4
  97. package/dist/manifest/store.js.map +1 -1
  98. package/dist/manifest.js +1 -1
  99. package/dist/manifest.json +9 -2
  100. package/dist/native-duckdb.d.ts +28 -0
  101. package/dist/native-duckdb.d.ts.map +1 -0
  102. package/dist/native-duckdb.js +51 -0
  103. package/dist/native-duckdb.js.map +1 -0
  104. package/dist/node_modules/.pnpm/@noble_hashes@2.4.0/node_modules/@noble/hashes/_md.js +169 -0
  105. package/dist/node_modules/.pnpm/@noble_hashes@2.4.0/node_modules/@noble/hashes/_md.js.map +1 -0
  106. package/dist/node_modules/.pnpm/@noble_hashes@2.4.0/node_modules/@noble/hashes/_u64.js +13 -0
  107. package/dist/node_modules/.pnpm/@noble_hashes@2.4.0/node_modules/@noble/hashes/_u64.js.map +1 -0
  108. package/dist/node_modules/.pnpm/@noble_hashes@2.4.0/node_modules/@noble/hashes/sha2.js +198 -0
  109. package/dist/node_modules/.pnpm/@noble_hashes@2.4.0/node_modules/@noble/hashes/sha2.js.map +1 -0
  110. package/dist/node_modules/.pnpm/@noble_hashes@2.4.0/node_modules/@noble/hashes/utils.js +243 -0
  111. package/dist/node_modules/.pnpm/@noble_hashes@2.4.0/node_modules/@noble/hashes/utils.js.map +1 -0
  112. package/dist/object.d.ts +56 -0
  113. package/dist/object.d.ts.map +1 -1
  114. package/dist/object.js +139 -16
  115. package/dist/object.js.map +1 -1
  116. package/dist/postgres-permissions.d.ts.map +1 -1
  117. package/dist/postgres-permissions.js +3 -3
  118. package/dist/postgres-permissions.js.map +1 -1
  119. package/dist/prebuild/index.js +1 -1
  120. package/dist/recipe-demo.d.ts +70 -0
  121. package/dist/recipe-demo.d.ts.map +1 -0
  122. package/dist/recipe-demo.js +130 -0
  123. package/dist/recipe-demo.js.map +1 -0
  124. package/dist/recipe.d.ts +64 -1
  125. package/dist/recipe.d.ts.map +1 -1
  126. package/dist/recipe.js +30 -0
  127. package/dist/recipe.js.map +1 -1
  128. package/dist/registry/class-registration.js +2 -2
  129. package/dist/registry/class-registration.js.map +1 -1
  130. package/dist/registry/db-cache-key.js +4 -5
  131. package/dist/registry/db-cache-key.js.map +1 -1
  132. package/dist/registry/inheritance-resolver.js +1 -1
  133. package/dist/registry/name-resolver.js +1 -1
  134. package/dist/registry/qualified-name-aliases.js +1 -1
  135. package/dist/registry/schema-builder.d.ts.map +1 -1
  136. package/dist/registry/schema-builder.js +3 -3
  137. package/dist/registry/schema-builder.js.map +1 -1
  138. package/dist/registry.d.ts.map +1 -1
  139. package/dist/registry.js +5 -8
  140. package/dist/registry.js.map +1 -1
  141. package/dist/revision-guard.js +1 -1
  142. package/dist/revision-guard.js.map +1 -1
  143. package/dist/scanner/manifest-generator.d.ts.map +1 -1
  144. package/dist/scanner/manifest-generator.js +19 -10
  145. package/dist/scanner/manifest-generator.js.map +1 -1
  146. package/dist/scanner/recipe-demo-pass.d.ts +14 -0
  147. package/dist/scanner/recipe-demo-pass.d.ts.map +1 -0
  148. package/dist/scanner/recipe-demo-pass.js +33 -0
  149. package/dist/scanner/recipe-demo-pass.js.map +1 -0
  150. package/dist/scanner/types.d.ts +7 -1
  151. package/dist/scanner/types.d.ts.map +1 -1
  152. package/dist/scanner/types.js.map +1 -1
  153. package/dist/schema/ddl/duckdb-strategy.d.ts.map +1 -1
  154. package/dist/schema/ddl/duckdb-strategy.js +1 -1
  155. package/dist/schema/ddl/duckdb-strategy.js.map +1 -1
  156. package/dist/schema/foreign-key-planner.d.ts.map +1 -1
  157. package/dist/schema/foreign-key-planner.js +1 -1
  158. package/dist/schema/foreign-key-planner.js.map +1 -1
  159. package/dist/schema/generator.d.ts.map +1 -1
  160. package/dist/schema/generator.js +10 -14
  161. package/dist/schema/generator.js.map +1 -1
  162. package/dist/schema/schema-aggregator.js +1 -1
  163. package/dist/scripts/browser-entry-evaluation.mjs +157 -0
  164. package/dist/smrt-knowledge.json +27 -12
  165. package/dist/system/browser.d.ts +16 -0
  166. package/dist/system/browser.d.ts.map +1 -0
  167. package/dist/system/browser.js +6 -0
  168. package/dist/system/index.d.ts +1 -6
  169. package/dist/system/index.d.ts.map +1 -1
  170. package/dist/system/index.js +2 -1
  171. package/dist/testing/database.js +1 -1
  172. package/dist/tools/index.js +1 -1
  173. package/dist/unchanged-indexed.d.ts +85 -0
  174. package/dist/unchanged-indexed.d.ts.map +1 -0
  175. package/dist/unchanged-indexed.js +219 -0
  176. package/dist/unchanged-indexed.js.map +1 -0
  177. package/dist/utils/async-context.d.ts +22 -0
  178. package/dist/utils/async-context.d.ts.map +1 -0
  179. package/dist/utils/async-context.js +27 -0
  180. package/dist/utils/async-context.js.map +1 -0
  181. package/dist/utils/import-project-vite.js +1 -1
  182. package/dist/utils/import-workspace-module.js +1 -1
  183. package/dist/utils/json.browser.d.ts +18 -0
  184. package/dist/utils/json.browser.d.ts.map +1 -0
  185. package/dist/utils/json.browser.js +47 -0
  186. package/dist/utils/json.browser.js.map +1 -0
  187. package/dist/utils/sha256.d.ts +15 -0
  188. package/dist/utils/sha256.d.ts.map +1 -0
  189. package/dist/utils/sha256.js +29 -0
  190. package/dist/utils/sha256.js.map +1 -0
  191. package/dist/vite-plugin/changes-route.js +1 -1
  192. package/dist/vite-plugin/dev-plane-route.js +1 -1
  193. package/dist/vite-plugin/events-route.js +1 -1
  194. package/dist/vite-plugin/import-build-aware.js +1 -1
  195. package/dist/vite-plugin/index.js +2 -2
  196. package/dist/vite-plugin/resources-route.js +1 -1
  197. package/dist/vite-plugin/sveltekit-generator.js +2 -2
  198. package/dist/vite-plugin/sveltekit-path.js +1 -1
  199. package/dist/vite-plugin/sveltekit-register-injection.js +1 -1
  200. package/dist/vite-plugin/sveltekit-route-coordinator.js +1 -1
  201. package/dist/vite-plugin/sync-apply-route.js +1 -1
  202. package/dist/vite-plugin/web-collections.js +2 -2
  203. package/package.json +21 -11
@@ -75,7 +75,7 @@ function shouldLoadCoreTestManifest() {
75
75
  return relative === "" || !relative.startsWith("..") && !builtins.path.isAbsolute(relative);
76
76
  }
77
77
  /**
78
- * Resolve Node's built-in `fs`/`path`/`url` modules without a static import.
78
+ * Resolve Node's built-in `fs`/`path`/`url`/`module` modules without a static import.
79
79
  *
80
80
  * `process.getBuiltinModule()` is a Node 22+ API that returns the live
81
81
  * built-in without going through the module loader. This avoids Vite's
@@ -83,16 +83,19 @@ function shouldLoadCoreTestManifest() {
83
83
  * "externalized for browser" warnings in bundled browser builds.
84
84
  */
85
85
  function getNodeBuiltins() {
86
+ if (typeof process === "undefined") return null;
86
87
  const getBuiltinModule = process.getBuiltinModule;
87
88
  if (typeof getBuiltinModule !== "function") return null;
88
89
  const fs = getBuiltinModule("node:fs");
89
90
  const path = getBuiltinModule("node:path");
90
91
  const url = getBuiltinModule("node:url");
91
- if (!fs || !path || !url) return null;
92
+ const module = getBuiltinModule("node:module");
93
+ if (!fs || !path || !url || !module) return null;
92
94
  return {
93
95
  fs,
94
96
  path,
95
- url
97
+ url,
98
+ module
96
99
  };
97
100
  }
98
101
  function getManifestGlobals() {
@@ -297,7 +300,7 @@ function loadStaticManifestSyncWithNode() {
297
300
  bumpRegistryGeneration();
298
301
  return fallbackManifest;
299
302
  }
300
- const candidates = import.meta.url.endsWith(".ts") ? [new URL("data:application/json;base64,ewogICJ2ZXJzaW9uIjogIjEuMC4wIiwKICAidGltZXN0YW1wIjogMCwKICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAicGFja2FnZVZlcnNpb24iOiAiMC41NS43IiwKICAib2JqZWN0cyI6IHsKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENsYXNzIjogewogICAgICAibmFtZSI6ICJzbXJ0Y2xhc3MiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRDbGFzcyIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0Q2xhc3MiLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0Y2xhc3NlcyIsCiAgICAgICJkZXNjcmlwdGlvbiI6ICJGb3VuZGF0aW9uIGNsYXNzIHByb3ZpZGluZyBjb3JlIGZ1bmN0aW9uYWxpdHkgZm9yIHRoZSBTTVJUIGZyYW1ld29yayIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9jbGFzcy50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjoge30sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJ3aXRoRGF0YWJhc2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJ3aXRoRGF0YWJhc2UiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGIiLAogICAgICAgICAgICAgICJ0eXBlIjogIkRhdGFiYXNlSW50ZXJmYWNlIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3BlcmF0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICJGdW5jdGlvbiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QWlVc2FnZVNuYXBzaG90IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QWlVc2FnZVNuYXBzaG90IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIkFpVXNhZ2VTbmFwc2hvdCB8IHVuZGVmaW5lZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZXNldEFpVXNhZ2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZXNldEFpVXNhZ2UiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsaXN0QWlVc2FnZSI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3RBaVVzYWdlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpVXNhZ2VMaXN0T3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxTbXJ0QWlVc2FnZVJlY29yZFtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzdW1tYXJpemVBaVVzYWdlIjogewogICAgICAgICAgIm5hbWUiOiAic3VtbWFyaXplQWlVc2FnZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaVVzYWdlU3VtbWFyeU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgQWlVc2FnZVN0YXRzPj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVzdHJveSI6IHsKICAgICAgICAgICJuYW1lIjogImRlc3Ryb3kiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydENsYXNzIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRDbGFzc0NvbGxlY3Rpb24iLAogICAgICAic2NoZW1hIjogewogICAgICAgICJ0YWJsZU5hbWUiOiAic21ydF9jbGFzc2VzIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9jbGFzc2VzXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jbGFzc2VzX3NsdWdfY29udGV4dF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAic2x1ZyIsCiAgICAgICAgICAgICAgImNvbnRleHQiCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1bmlxdWUiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X2NsYXNzZXNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjM0YTcyYjAiCiAgICAgIH0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDb2xsZWN0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0Y29sbGVjdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENvbGxlY3Rpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0Y29sbGVjdGlvbnMiLAogICAgICAiZGVzY3JpcHRpb24iOiAiVHlwZWQgQ1JVRCBjb2xsZWN0aW9uIGZvciBhIHNwZWNpZmljIFNtcnRPYmplY3Qgc3ViY2xhc3MuIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2NvbGxlY3Rpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRMYXRlc3RSZWxhdGVkTGlzdE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydExhdGVzdFJlbGF0ZWRSb3c8U21ydE9iamVjdD5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SXRlbUNsYXNzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SXRlbUNsYXNzIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlNtcnRDb2xsZWN0aW9uSXRlbUNsYXNzPE1vZGVsVHlwZT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidmFsaWRhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJ2YWxpZGF0ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY3JlYXRlIjogewogICAgICAgICAgIm5hbWUiOiAiY3JlYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRDcmVhdGVJbnB1dDxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY29udGV4dCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUGFydGlhbDxBdWRpdENvbnRleHQ+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaW5pdGlhbGl6ZSI6IHsKICAgICAgICAgICJuYW1lIjogImluaXRpYWxpemUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXM+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImVuc3VyZVN0b3JhZ2VSZWFkeSI6IHsKICAgICAgICAgICJuYW1lIjogImVuc3VyZVN0b3JhZ2VSZWFkeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZE9uZSI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRPbmUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGUgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kQnlJZCI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRCeUlkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImlkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kQWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICAgInN0cmluZyB8IHN0cmluZ1tdIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgInN0cmluZ1tdIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxpc3RCeUlkcyI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3RCeUlkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZHMiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZ1tdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGVbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpbHRlciIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIHwgU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJ1bmlvbkJyYW5jaGVzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIkNvbGxlY3Rpb25DYWNoZUNvbmZpZyB8IGZhbHNlIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibGlzdCI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3QiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydExpc3RPcHRpb25zPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydE9iamVjdFtdIHwgUmVjb3JkPHN0cmluZywgdW5rbm93bj5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAid2l0aEF1ZGl0TXV0YXRpb24iOiB7CiAgICAgICAgICAibmFtZSI6ICJ3aXRoQXVkaXRNdXRhdGlvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpbnN0YW5jZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTW9kZWxUeXBlIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiYWN0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICInY3JlYXRlZCcgfCAndXBkYXRlZCcgfCAnZGVsZXRlZCciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJ1bmlvbkJyYW5jaGVzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICInY3JlYXRlZCciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICIndXBkYXRlZCciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICInZGVsZXRlZCciCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibXV0YXRlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJGdW5jdGlvbiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImNvbnRleHQiLAogICAgICAgICAgICAgICJ0eXBlIjogIlBhcnRpYWw8QXVkaXRDb250ZXh0PiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ1cGRhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJ1cGRhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiaWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInZhbHVlcyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUGFydGlhbDxTbXJ0Q3JlYXRlSW5wdXQ8TW9kZWxUeXBlPj4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjb250ZXh0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJQYXJ0aWFsPEF1ZGl0Q29udGV4dD4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaGFzQmFzZUNyZWF0ZUxpZmVjeWNsZSI6IHsKICAgICAgICAgICJuYW1lIjogImhhc0Jhc2VDcmVhdGVMaWZlY3ljbGUiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImNvbGxlY3Rpb24iLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRDb2xsZWN0aW9uPFQ+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYm9vbGVhbiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiB0cnVlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldE9yVXBzZXJ0IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0T3JVcHNlcnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGF0YSIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUmVjb3JkPHN0cmluZywgdW5rbm93bj4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkZWZhdWx0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUmVjb3JkPHN0cmluZywgdW5rbm93bj4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXREaWZmIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RGlmZiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJleGlzdGluZyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdCB8IFJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdCIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkcyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEZpZWxkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgQ29sbGVjdGlvbkZpZWxkRGVmaW5pdGlvbj4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkc1N5bmMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHNTeW5jIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb25GaWVsZERlZmluaXRpb24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlU2NoZW1hIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVTY2hlbWEiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVUYWJsZU5hbWUiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZW5lcmF0ZVRhYmxlTmFtZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVsZXRlIjogewogICAgICAgICAgIm5hbWUiOiAiZGVsZXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImlkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjb250ZXh0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJQYXJ0aWFsPEF1ZGl0Q29udGV4dD4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8Ym9vbGVhbj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY291bnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJjb3VudCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRMaXN0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgICAiU21ydFN0aVJlYWRTY29wZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmFjZXRzIjogewogICAgICAgICAgIm5hbWUiOiAiZmFjZXRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRGYWNldE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydEZhY2V0UmVzdWx0W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNvdW50cyI6IHsKICAgICAgICAgICJuYW1lIjogImNvdW50cyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRMaXN0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgICAiU21ydFN0aVJlYWRTY29wZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFNtcnRDb2xsZWN0aW9uQ291bnRzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRTdGlDaGlsZE1ldGFUeXBlIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0U3RpQ2hpbGRNZXRhVHlwZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJzdHJpbmcgfCBudWxsIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInF1ZXJ5IjogewogICAgICAgICAgIm5hbWUiOiAicXVlcnkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAic3FsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJwYXJhbXMiLAogICAgICAgICAgICAgICJ0eXBlIjogInVua25vd25bXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJib29sZWFuIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlbWVtYmVyIjogewogICAgICAgICAgIm5hbWUiOiAicmVtZW1iZXIiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJ1bmtub3duIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIkRhdGUiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJib29sZWFuIiwKICAgICAgICAgICAgICAgICJudW1iZXIiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGxBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGxBbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1hcDxzdHJpbmcsIHVua25vd24+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0U2NvcGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXRTY29wZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXI+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNlbWFudGljU2VhcmNoIjogewogICAgICAgICAgIm5hbWUiOiAic2VtYW50aWNTZWFyY2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicXVlcnkiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIlNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzZW1hbnRpY1NlYXJjaElkcyI6IHsKICAgICAgICAgICJuYW1lIjogInNlbWFudGljU2VhcmNoSWRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInF1ZXJ5IiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJTbXJ0TGlzdFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxBcnJheTxvYmplY3Q+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhcklkc1RvRW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZFNpbWlsYXJJZHNUb0VtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJlbWJlZGRpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIm51bWJlcltdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiU21ydExpc3RXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8QXJyYXk8b2JqZWN0Pj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZFNpbWlsYXIiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kU2ltaWxhciIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJ0eXBlIjogIk1vZGVsVHlwZSB8IHN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIk1vZGVsVHlwZSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJib29sZWFuIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhclRvRW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZFNpbWlsYXJUb0VtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJlbWJlZGRpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIm51bWJlcltdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlTWlzc2luZ0VtYmVkZGluZ3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZW5lcmF0ZU1pc3NpbmdFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJGdW5jdGlvbiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG9iamVjdD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRDbGFzcyIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRDb2xsZWN0aW9uIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRDb2xsZWN0aW9uQ29sbGVjdGlvbiIsCiAgICAgICJzY2hlbWEiOiB7CiAgICAgICAgInRhYmxlTmFtZSI6ICJzbXJ0X2NvbGxlY3Rpb25zIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9jb2xsZWN0aW9uc1wiIChcbiAgXCJpZFwiIFVVSUQgUFJJTUFSWSBLRVkgTk9UIE5VTEwsXG4gIFwic2x1Z1wiIFRFWFQgTk9UIE5VTEwsXG4gIFwiY29udGV4dFwiIFRFWFQgTk9UIE5VTEwgREVGQVVMVCAnJyxcbiAgXCJjcmVhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXAsXG4gIFwidXBkYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wXG4pOyIsCiAgICAgICAgImNvbHVtbnMiOiB7CiAgICAgICAgICAiaWQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlVVSUQiLAogICAgICAgICAgICAicHJpbWFyeUtleSI6IHRydWUsCiAgICAgICAgICAgICJyZWZlcmVuY2VLaW5kIjogImlkIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgInNsdWciOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAiY29udGV4dCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiIgogICAgICAgICAgfSwKICAgICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfSwKICAgICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgImluZGV4ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfY29sbGVjdGlvbnNfc2x1Z19jb250ZXh0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJzbHVnIiwKICAgICAgICAgICAgICAiY29udGV4dCIKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInVuaXF1ZSI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfY29sbGVjdGlvbnNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjk1YjBhODAiCiAgICAgIH0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRIaWVyYXJjaGljYWwiOiB7CiAgICAgICJuYW1lIjogInNtcnRoaWVyYXJjaGljYWwiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRIaWVyYXJjaGljYWwiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRoaWVyYXJjaGljYWxzIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2hpZXJhcmNoaWNhbC50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJwYXJlbnRJZCI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJnZXRQYXJlbnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRQYXJlbnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXMgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRDaGlsZHJlbiI6IHsKICAgICAgICAgICJuYW1lIjogImdldENoaWxkcmVuIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEFuY2VzdG9ycyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEFuY2VzdG9ycyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dGhpc1tdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXREZXNjZW5kYW50cyI6IHsKICAgICAgICAgICJuYW1lIjogImdldERlc2NlbmRhbnRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEhpZXJhcmNoeSI6IHsKICAgICAgICAgICJuYW1lIjogImdldEhpZXJhcmNoeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8SGllcmFyY2h5Vmlldzx0aGlzPj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibW92ZVRvIjogewogICAgICAgICAgIm5hbWUiOiAibW92ZVRvIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm5ld1BhcmVudCIsCiAgICAgICAgICAgICAgInR5cGUiOiAidGhpcyB8IHN0cmluZyB8IG51bGwiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJ1bmlvbkJyYW5jaGVzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJ0aGlzIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAibnVsbCIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0KICAgICAgfSwKICAgICAgImRlY29yYXRvckNvbmZpZyI6IHt9LAogICAgICAiZXh0ZW5kcyI6ICJTbXJ0T2JqZWN0IiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0SGllcmFyY2hpY2FsQ29sbGVjdGlvbiIsCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRKdW5jdGlvbkJhc2UiOiB7CiAgICAgICJuYW1lIjogInNtcnRqdW5jdGlvbmJhc2UiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRKdW5jdGlvbkJhc2UiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEp1bmN0aW9uQmFzZSIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRqdW5jdGlvbmJhc2VzIiwKICAgICAgImRlc2NyaXB0aW9uIjogIlNoYXJlZCBqdW5jdGlvbiBjb2xsZWN0aW9uIGlkZW50aXR5LCBvcmRlcmluZywgYW5kIHNpbmdsZS1yaWdodC1JRCByZWFkcy4iLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvanVuY3Rpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAiYnlSaWdodCI6IHsKICAgICAgICAgICJuYW1lIjogImJ5UmlnaHQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25GaWx0ZXJPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0KICAgICAgfSwKICAgICAgImRlY29yYXRvckNvbmZpZyI6IHt9LAogICAgICAiZXh0ZW5kcyI6ICJTbXJ0Q29sbGVjdGlvbiIsCiAgICAgICJleHRlbmRzVHlwZUFyZyI6ICJUSXRlbSIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRKdW5jdGlvbkJhc2UiLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydEp1bmN0aW9uQmFzZUNvbGxlY3Rpb24iLAogICAgICAiaW1wb3J0UGF0aCI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiCiAgICB9LAogICAgIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SnVuY3Rpb24iOiB7CiAgICAgICJuYW1lIjogInNtcnRqdW5jdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydEp1bmN0aW9uIiwKICAgICAgInF1YWxpZmllZE5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRKdW5jdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRqdW5jdGlvbnMiLAogICAgICAiZGVzY3JpcHRpb24iOiAiSnVuY3Rpb24gY29sbGVjdGlvbiB3aXRoIG9uZSBsZWZ0IElEIGFuZCBvbmUgcmlnaHQgSUQuIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2p1bmN0aW9uLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7fSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImJ5UmlnaHQiOiB7CiAgICAgICAgICAibmFtZSI6ICJieVJpZ2h0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uRmlsdGVyT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUSXRlbVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJieUxlZnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJieUxlZnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VEl0ZW1bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYXR0YWNoIjogewogICAgICAgICAgIm5hbWUiOiAiYXR0YWNoIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImxlZnRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25BdHRhY2hPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZXRhY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXRhY2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2V0TGlua3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJzZXRMaW5rcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmdbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uQXR0YWNoT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydEp1bmN0aW9uQmFzZSIsCiAgICAgICJleHRlbmRzVHlwZUFyZyI6ICJUSXRlbSIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRKdW5jdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0SnVuY3Rpb25Db2xsZWN0aW9uIiwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydE9iamVjdCI6IHsKICAgICAgIm5hbWUiOiAic21ydG9iamVjdCIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydE9iamVjdCIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0T2JqZWN0IiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydG9iamVjdHMiLAogICAgICAiZGVzY3JpcHRpb24iOiAiQmFzZSBjbGFzcyBmb3IgYWxsIHBlcnNpc3RlbnQgU01SVCBkb21haW4gb2JqZWN0cy4iLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvb2JqZWN0LnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7CiAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAidHlwZSI6ICJkYXRldGltZSIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAidHlwZSI6ICJkYXRldGltZSIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZQogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgIm1hcmtBc1BlcnNpc3RlZCI6IHsKICAgICAgICAgICJuYW1lIjogIm1hcmtBc1BlcnNpc3RlZCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlcXVpcmVJbnNlcnRPblNhdmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZXF1aXJlSW5zZXJ0T25TYXZlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYWRvcHROYXR1cmFsS2V5T25TYXZlIjogewogICAgICAgICAgIm5hbWUiOiAiYWRvcHROYXR1cmFsS2V5T25TYXZlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAid2l0aFRyYW5zYWN0aW9uIjogewogICAgICAgICAgIm5hbWUiOiAid2l0aFRyYW5zYWN0aW9uIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wZXJhdGlvbiIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRnVuY3Rpb24iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImluaXRpYWxpemUiOiB7CiAgICAgICAgICAibmFtZSI6ICJpbml0aWFsaXplIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkRGF0YUZyb21EYiI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWREYXRhRnJvbURiIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkcyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEZpZWxkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b0pTT04iOiB7CiAgICAgICAgICAibmFtZSI6ICJ0b0pTT04iLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInRvUGxhaW5PYmplY3QiOiB7CiAgICAgICAgICAibmFtZSI6ICJ0b1BsYWluT2JqZWN0IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInRvUHVibGljSlNPTiI6IHsKICAgICAgICAgICJuYW1lIjogInRvUHVibGljSlNPTiIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUHVibGljSnNvbk9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldElkIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0U2x1ZyI6IHsKICAgICAgICAgICJuYW1lIjogImdldFNsdWciLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0U2F2ZWRJZCI6IHsKICAgICAgICAgICJuYW1lIjogImdldFNhdmVkSWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaXNTYXZlZCI6IHsKICAgICAgICAgICJuYW1lIjogImlzU2F2ZWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic3VwcG9ydHNKdW5jdGlvbkJhdGNoIjogewogICAgICAgICAgIm5hbWUiOiAic3VwcG9ydHNKdW5jdGlvbkJhdGNoIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaGFzQmFzZUp1bmN0aW9uTGlmZWN5Y2xlIjogewogICAgICAgICAgIm5hbWUiOiAiaGFzQmFzZUp1bmN0aW9uTGlmZWN5Y2xlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjYW5kaWRhdGUiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0cnlKdW5jdGlvbkJhdGNoIjogewogICAgICAgICAgIm5hbWUiOiAidHJ5SnVuY3Rpb25CYXRjaCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyZW1vdmVkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0T2JqZWN0W10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJhZGRlZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdFtdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxib29sZWFuPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiB0cnVlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNhdmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJzYXZlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRTYXZlT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsYWltUmV2aXNpb24iOiB7CiAgICAgICAgICAibmFtZSI6ICJjbGFpbVJldmlzaW9uIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImV4cGVjdGVkVXBkYXRlZEF0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJEYXRlIHwgc3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiRGF0ZSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXM+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsYXNzaWZ5Q29uc3RyYWludEVycm9yIjogewogICAgICAgICAgIm5hbWUiOiAiY2xhc3NpZnlDb25zdHJhaW50RXJyb3IiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm1lc3NhZ2UiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIid1bmlxdWUnIHwgJ25vdF9udWxsJyB8IG51bGwiLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkRnJvbUlkIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZEZyb21JZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkRnJvbVNsdWciOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkRnJvbVNsdWciLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaXMiOiB7CiAgICAgICAgICAibmFtZSI6ICJpcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjcml0ZXJpYSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiYW55IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJ0eXBlVW5yZXNvbHZlZCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJldmFsdWF0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImV2YWx1YXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImNyaXRlcmlhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJFdmFsdWF0ZU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8RXZhbHVhdGlvblJlc3VsdD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZG8iOiB7CiAgICAgICAgICAibmFtZSI6ICJkbyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpbnN0cnVjdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpT3BlcmF0aW9uT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlc2NyaWJlIjogewogICAgICAgICAgIm5hbWUiOiAiZGVzY3JpYmUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlPcGVyYXRpb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVsZXRlIjogewogICAgICAgICAgIm5hbWUiOiAiZGVsZXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnREZWxldGVPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzUmVsYXRlZExvYWRlZCI6IHsKICAgICAgICAgICJuYW1lIjogImlzUmVsYXRlZExvYWRlZCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJib29sZWFuIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgIl9zZXRMb2FkZWRSZWxhdGlvbnNoaXAiOiB7CiAgICAgICAgICAibmFtZSI6ICJfc2V0TG9hZGVkUmVsYXRpb25zaGlwIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInZhbHVlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJ1bmtub3duIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkUmVsYXRlZCI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWRSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTG9hZFJlbGF0ZWRPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZFJlbGF0ZWRNYW55IjogewogICAgICAgICAgIm5hbWUiOiAibG9hZFJlbGF0ZWRNYW55IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTG9hZFJlbGF0ZWRPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0UmVsYXRlZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkxvYWRSZWxhdGVkT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxhbnk+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEF2YWlsYWJsZVRvb2xzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QXZhaWxhYmxlVG9vbHMiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiQUlUb29sW10iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZXhlY3V0ZVRvb2xDYWxsIjogewogICAgICAgICAgIm5hbWUiOiAiZXhlY3V0ZVRvb2xDYWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInRvb2xDYWxsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJUb29sQ2FsbCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VG9vbENhbGxSZXN1bHQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlbWVtYmVyIjogewogICAgICAgICAgIm5hbWUiOiAicmVtZW1iZXIiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJ1bmtub3duIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIkRhdGUiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJib29sZWFuIiwKICAgICAgICAgICAgICAgICJudW1iZXIiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGxBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGxBbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1hcDxzdHJpbmcsIHVua25vd24+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0U2NvcGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXRTY29wZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXI+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJHZW5lcmF0ZUVtYmVkZGluZ3NPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEVtYmVkZGluZyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEVtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm1vZGVsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8bnVtYmVyW10gfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJoYXNTdGFsZUVtYmVkZGluZ3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJoYXNTdGFsZUVtYmVkZGluZ3MiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGJvb2xlYW4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsZWFyRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImNsZWFyRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRDbGFzcyIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRPYmplY3QiLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydE9iamVjdENvbGxlY3Rpb24iLAogICAgICAic2NoZW1hIjogewogICAgICAgICJ0YWJsZU5hbWUiOiAic21ydF9vYmplY3RzIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9vYmplY3RzXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9vYmplY3RzX3NsdWdfY29udGV4dF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAic2x1ZyIsCiAgICAgICAgICAgICAgImNvbnRleHQiCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1bmlxdWUiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X29iamVjdHNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjA0YmYzYzQiCiAgICAgIH0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0cG9seW1vcnBoaWNhc3NvY2lhdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0cG9seW1vcnBoaWNhc3NvY2lhdGlvbnMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvcG9seW1vcnBoaWMtYXNzb2NpYXRpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHsKICAgICAgICAibWV0YVR5cGUiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJtZXRhSWQiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJyb2xlIjogewogICAgICAgICAgInR5cGUiOiAidGV4dCIsCiAgICAgICAgICAicmVxdWlyZWQiOiB0cnVlLAogICAgICAgICAgIl9tZXRhIjogewogICAgICAgICAgICAicmVxdWlyZWQiOiB0cnVlCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAic29ydE9yZGVyIjogewogICAgICAgICAgInR5cGUiOiAiaW50ZWdlciIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZSwKICAgICAgICAgICJkZWZhdWx0IjogMAogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImh5ZHJhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJoeWRyYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRPYmplY3QiLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbkNvbGxlY3Rpb24iLAogICAgICAidmFsaWRhdGlvblJ1bGVzIjogWwogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJtZXRhVHlwZSIsCiAgICAgICAgICAicnVsZSI6ICJyZXF1aXJlZCIsCiAgICAgICAgICAiZmllbGRUeXBlIjogInRleHQiCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAiZmllbGQiOiAibWV0YUlkIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJyb2xlIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9CiAgICAgIF0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0KICB9LAogICJtb2R1bGVUeXBlIjogInNtcnQiCn0=", "" + import.meta.url), new URL("data:application/json;base64,ewogICJ2ZXJzaW9uIjogIjEuMC4wIiwKICAidGltZXN0YW1wIjogMCwKICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAicGFja2FnZVZlcnNpb24iOiAiMC41NS43IiwKICAib2JqZWN0cyI6IHsKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENsYXNzIjogewogICAgICAibmFtZSI6ICJzbXJ0Y2xhc3MiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRDbGFzcyIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0Q2xhc3MiLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0Y2xhc3NlcyIsCiAgICAgICJkZXNjcmlwdGlvbiI6ICJGb3VuZGF0aW9uIGNsYXNzIHByb3ZpZGluZyBjb3JlIGZ1bmN0aW9uYWxpdHkgZm9yIHRoZSBTTVJUIGZyYW1ld29yayIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9jbGFzcy50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjoge30sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJ3aXRoRGF0YWJhc2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJ3aXRoRGF0YWJhc2UiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGIiLAogICAgICAgICAgICAgICJ0eXBlIjogIkRhdGFiYXNlSW50ZXJmYWNlIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3BlcmF0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICJGdW5jdGlvbiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QWlVc2FnZVNuYXBzaG90IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QWlVc2FnZVNuYXBzaG90IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIkFpVXNhZ2VTbmFwc2hvdCB8IHVuZGVmaW5lZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZXNldEFpVXNhZ2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZXNldEFpVXNhZ2UiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsaXN0QWlVc2FnZSI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3RBaVVzYWdlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpVXNhZ2VMaXN0T3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxTbXJ0QWlVc2FnZVJlY29yZFtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzdW1tYXJpemVBaVVzYWdlIjogewogICAgICAgICAgIm5hbWUiOiAic3VtbWFyaXplQWlVc2FnZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaVVzYWdlU3VtbWFyeU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgQWlVc2FnZVN0YXRzPj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVzdHJveSI6IHsKICAgICAgICAgICJuYW1lIjogImRlc3Ryb3kiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydENsYXNzIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRDbGFzc0NvbGxlY3Rpb24iLAogICAgICAic2NoZW1hIjogewogICAgICAgICJ0YWJsZU5hbWUiOiAic21ydF9jbGFzc2VzIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9jbGFzc2VzXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jbGFzc2VzX3NsdWdfY29udGV4dF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAic2x1ZyIsCiAgICAgICAgICAgICAgImNvbnRleHQiCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1bmlxdWUiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X2NsYXNzZXNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjM0YTcyYjAiCiAgICAgIH0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDb2xsZWN0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0Y29sbGVjdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENvbGxlY3Rpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0Y29sbGVjdGlvbnMiLAogICAgICAiZGVzY3JpcHRpb24iOiAiVHlwZWQgQ1JVRCBjb2xsZWN0aW9uIGZvciBhIHNwZWNpZmljIFNtcnRPYmplY3Qgc3ViY2xhc3MuIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2NvbGxlY3Rpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRMYXRlc3RSZWxhdGVkTGlzdE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydExhdGVzdFJlbGF0ZWRSb3c8U21ydE9iamVjdD5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SXRlbUNsYXNzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SXRlbUNsYXNzIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlNtcnRDb2xsZWN0aW9uSXRlbUNsYXNzPE1vZGVsVHlwZT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidmFsaWRhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJ2YWxpZGF0ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY3JlYXRlIjogewogICAgICAgICAgIm5hbWUiOiAiY3JlYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRDcmVhdGVJbnB1dDxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY29udGV4dCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUGFydGlhbDxBdWRpdENvbnRleHQ+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaW5pdGlhbGl6ZSI6IHsKICAgICAgICAgICJuYW1lIjogImluaXRpYWxpemUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXM+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImVuc3VyZVN0b3JhZ2VSZWFkeSI6IHsKICAgICAgICAgICJuYW1lIjogImVuc3VyZVN0b3JhZ2VSZWFkeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZE9uZSI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRPbmUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGUgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kQnlJZCI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRCeUlkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImlkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kQWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICAgInN0cmluZyB8IHN0cmluZ1tdIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgInN0cmluZ1tdIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxpc3RCeUlkcyI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3RCeUlkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZHMiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZ1tdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGVbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpbHRlciIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIHwgU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJ1bmlvbkJyYW5jaGVzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIkNvbGxlY3Rpb25DYWNoZUNvbmZpZyB8IGZhbHNlIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibGlzdCI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3QiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydExpc3RPcHRpb25zPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydE9iamVjdFtdIHwgUmVjb3JkPHN0cmluZywgdW5rbm93bj5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAid2l0aEF1ZGl0TXV0YXRpb24iOiB7CiAgICAgICAgICAibmFtZSI6ICJ3aXRoQXVkaXRNdXRhdGlvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpbnN0YW5jZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTW9kZWxUeXBlIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiYWN0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICInY3JlYXRlZCcgfCAndXBkYXRlZCcgfCAnZGVsZXRlZCciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJ1bmlvbkJyYW5jaGVzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICInY3JlYXRlZCciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICIndXBkYXRlZCciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICInZGVsZXRlZCciCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibXV0YXRlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJGdW5jdGlvbiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImNvbnRleHQiLAogICAgICAgICAgICAgICJ0eXBlIjogIlBhcnRpYWw8QXVkaXRDb250ZXh0PiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ1cGRhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJ1cGRhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiaWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInZhbHVlcyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUGFydGlhbDxTbXJ0Q3JlYXRlSW5wdXQ8TW9kZWxUeXBlPj4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjb250ZXh0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJQYXJ0aWFsPEF1ZGl0Q29udGV4dD4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaGFzQmFzZUNyZWF0ZUxpZmVjeWNsZSI6IHsKICAgICAgICAgICJuYW1lIjogImhhc0Jhc2VDcmVhdGVMaWZlY3ljbGUiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImNvbGxlY3Rpb24iLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRDb2xsZWN0aW9uPFQ+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYm9vbGVhbiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiB0cnVlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldE9yVXBzZXJ0IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0T3JVcHNlcnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGF0YSIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUmVjb3JkPHN0cmluZywgdW5rbm93bj4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkZWZhdWx0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUmVjb3JkPHN0cmluZywgdW5rbm93bj4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXREaWZmIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RGlmZiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJleGlzdGluZyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdCB8IFJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdCIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkcyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEZpZWxkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgQ29sbGVjdGlvbkZpZWxkRGVmaW5pdGlvbj4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkc1N5bmMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHNTeW5jIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb25GaWVsZERlZmluaXRpb24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlU2NoZW1hIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVTY2hlbWEiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVUYWJsZU5hbWUiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZW5lcmF0ZVRhYmxlTmFtZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVsZXRlIjogewogICAgICAgICAgIm5hbWUiOiAiZGVsZXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImlkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjb250ZXh0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJQYXJ0aWFsPEF1ZGl0Q29udGV4dD4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8Ym9vbGVhbj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY291bnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJjb3VudCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRMaXN0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgICAiU21ydFN0aVJlYWRTY29wZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmFjZXRzIjogewogICAgICAgICAgIm5hbWUiOiAiZmFjZXRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRGYWNldE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydEZhY2V0UmVzdWx0W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNvdW50cyI6IHsKICAgICAgICAgICJuYW1lIjogImNvdW50cyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRMaXN0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgICAiU21ydFN0aVJlYWRTY29wZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFNtcnRDb2xsZWN0aW9uQ291bnRzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRTdGlDaGlsZE1ldGFUeXBlIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0U3RpQ2hpbGRNZXRhVHlwZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJzdHJpbmcgfCBudWxsIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInF1ZXJ5IjogewogICAgICAgICAgIm5hbWUiOiAicXVlcnkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAic3FsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJwYXJhbXMiLAogICAgICAgICAgICAgICJ0eXBlIjogInVua25vd25bXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJib29sZWFuIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlbWVtYmVyIjogewogICAgICAgICAgIm5hbWUiOiAicmVtZW1iZXIiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJ1bmtub3duIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIkRhdGUiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJib29sZWFuIiwKICAgICAgICAgICAgICAgICJudW1iZXIiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGxBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGxBbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1hcDxzdHJpbmcsIHVua25vd24+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0U2NvcGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXRTY29wZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXI+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNlbWFudGljU2VhcmNoIjogewogICAgICAgICAgIm5hbWUiOiAic2VtYW50aWNTZWFyY2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicXVlcnkiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIlNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzZW1hbnRpY1NlYXJjaElkcyI6IHsKICAgICAgICAgICJuYW1lIjogInNlbWFudGljU2VhcmNoSWRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInF1ZXJ5IiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJTbXJ0TGlzdFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxBcnJheTxvYmplY3Q+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhcklkc1RvRW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZFNpbWlsYXJJZHNUb0VtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJlbWJlZGRpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIm51bWJlcltdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiU21ydExpc3RXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8QXJyYXk8b2JqZWN0Pj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZFNpbWlsYXIiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kU2ltaWxhciIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJ0eXBlIjogIk1vZGVsVHlwZSB8IHN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIk1vZGVsVHlwZSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJib29sZWFuIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhclRvRW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZFNpbWlsYXJUb0VtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJlbWJlZGRpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIm51bWJlcltdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlTWlzc2luZ0VtYmVkZGluZ3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZW5lcmF0ZU1pc3NpbmdFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJGdW5jdGlvbiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG9iamVjdD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRDbGFzcyIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRDb2xsZWN0aW9uIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRDb2xsZWN0aW9uQ29sbGVjdGlvbiIsCiAgICAgICJzY2hlbWEiOiB7CiAgICAgICAgInRhYmxlTmFtZSI6ICJzbXJ0X2NvbGxlY3Rpb25zIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9jb2xsZWN0aW9uc1wiIChcbiAgXCJpZFwiIFVVSUQgUFJJTUFSWSBLRVkgTk9UIE5VTEwsXG4gIFwic2x1Z1wiIFRFWFQgTk9UIE5VTEwsXG4gIFwiY29udGV4dFwiIFRFWFQgTk9UIE5VTEwgREVGQVVMVCAnJyxcbiAgXCJjcmVhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXAsXG4gIFwidXBkYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wXG4pOyIsCiAgICAgICAgImNvbHVtbnMiOiB7CiAgICAgICAgICAiaWQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlVVSUQiLAogICAgICAgICAgICAicHJpbWFyeUtleSI6IHRydWUsCiAgICAgICAgICAgICJyZWZlcmVuY2VLaW5kIjogImlkIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgInNsdWciOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAiY29udGV4dCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiIgogICAgICAgICAgfSwKICAgICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfSwKICAgICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgImluZGV4ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfY29sbGVjdGlvbnNfc2x1Z19jb250ZXh0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJzbHVnIiwKICAgICAgICAgICAgICAiY29udGV4dCIKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInVuaXF1ZSI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfY29sbGVjdGlvbnNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjk1YjBhODAiCiAgICAgIH0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRIaWVyYXJjaGljYWwiOiB7CiAgICAgICJuYW1lIjogInNtcnRoaWVyYXJjaGljYWwiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRIaWVyYXJjaGljYWwiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRoaWVyYXJjaGljYWxzIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2hpZXJhcmNoaWNhbC50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJwYXJlbnRJZCI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJnZXRQYXJlbnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRQYXJlbnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXMgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRDaGlsZHJlbiI6IHsKICAgICAgICAgICJuYW1lIjogImdldENoaWxkcmVuIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEFuY2VzdG9ycyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEFuY2VzdG9ycyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dGhpc1tdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXREZXNjZW5kYW50cyI6IHsKICAgICAgICAgICJuYW1lIjogImdldERlc2NlbmRhbnRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEhpZXJhcmNoeSI6IHsKICAgICAgICAgICJuYW1lIjogImdldEhpZXJhcmNoeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8SGllcmFyY2h5Vmlldzx0aGlzPj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibW92ZVRvIjogewogICAgICAgICAgIm5hbWUiOiAibW92ZVRvIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm5ld1BhcmVudCIsCiAgICAgICAgICAgICAgInR5cGUiOiAidGhpcyB8IHN0cmluZyB8IG51bGwiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJ1bmlvbkJyYW5jaGVzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJ0aGlzIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAibnVsbCIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0KICAgICAgfSwKICAgICAgImRlY29yYXRvckNvbmZpZyI6IHt9LAogICAgICAiZXh0ZW5kcyI6ICJTbXJ0T2JqZWN0IiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0SGllcmFyY2hpY2FsQ29sbGVjdGlvbiIsCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRKdW5jdGlvbkJhc2UiOiB7CiAgICAgICJuYW1lIjogInNtcnRqdW5jdGlvbmJhc2UiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRKdW5jdGlvbkJhc2UiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEp1bmN0aW9uQmFzZSIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRqdW5jdGlvbmJhc2VzIiwKICAgICAgImRlc2NyaXB0aW9uIjogIlNoYXJlZCBqdW5jdGlvbiBjb2xsZWN0aW9uIGlkZW50aXR5LCBvcmRlcmluZywgYW5kIHNpbmdsZS1yaWdodC1JRCByZWFkcy4iLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvanVuY3Rpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAiYnlSaWdodCI6IHsKICAgICAgICAgICJuYW1lIjogImJ5UmlnaHQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25GaWx0ZXJPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0KICAgICAgfSwKICAgICAgImRlY29yYXRvckNvbmZpZyI6IHt9LAogICAgICAiZXh0ZW5kcyI6ICJTbXJ0Q29sbGVjdGlvbiIsCiAgICAgICJleHRlbmRzVHlwZUFyZyI6ICJUSXRlbSIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRKdW5jdGlvbkJhc2UiLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydEp1bmN0aW9uQmFzZUNvbGxlY3Rpb24iLAogICAgICAiaW1wb3J0UGF0aCI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiCiAgICB9LAogICAgIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SnVuY3Rpb24iOiB7CiAgICAgICJuYW1lIjogInNtcnRqdW5jdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydEp1bmN0aW9uIiwKICAgICAgInF1YWxpZmllZE5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRKdW5jdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRqdW5jdGlvbnMiLAogICAgICAiZGVzY3JpcHRpb24iOiAiSnVuY3Rpb24gY29sbGVjdGlvbiB3aXRoIG9uZSBsZWZ0IElEIGFuZCBvbmUgcmlnaHQgSUQuIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2p1bmN0aW9uLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7fSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImJ5UmlnaHQiOiB7CiAgICAgICAgICAibmFtZSI6ICJieVJpZ2h0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uRmlsdGVyT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUSXRlbVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJieUxlZnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJieUxlZnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VEl0ZW1bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYXR0YWNoIjogewogICAgICAgICAgIm5hbWUiOiAiYXR0YWNoIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImxlZnRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25BdHRhY2hPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZXRhY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXRhY2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2V0TGlua3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJzZXRMaW5rcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmdbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uQXR0YWNoT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydEp1bmN0aW9uQmFzZSIsCiAgICAgICJleHRlbmRzVHlwZUFyZyI6ICJUSXRlbSIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRKdW5jdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0SnVuY3Rpb25Db2xsZWN0aW9uIiwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydE9iamVjdCI6IHsKICAgICAgIm5hbWUiOiAic21ydG9iamVjdCIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydE9iamVjdCIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0T2JqZWN0IiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydG9iamVjdHMiLAogICAgICAiZGVzY3JpcHRpb24iOiAiQmFzZSBjbGFzcyBmb3IgYWxsIHBlcnNpc3RlbnQgU01SVCBkb21haW4gb2JqZWN0cy4iLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvb2JqZWN0LnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7CiAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAidHlwZSI6ICJkYXRldGltZSIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAidHlwZSI6ICJkYXRldGltZSIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZQogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgIm1hcmtBc1BlcnNpc3RlZCI6IHsKICAgICAgICAgICJuYW1lIjogIm1hcmtBc1BlcnNpc3RlZCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlcXVpcmVJbnNlcnRPblNhdmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZXF1aXJlSW5zZXJ0T25TYXZlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYWRvcHROYXR1cmFsS2V5T25TYXZlIjogewogICAgICAgICAgIm5hbWUiOiAiYWRvcHROYXR1cmFsS2V5T25TYXZlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAid2l0aFRyYW5zYWN0aW9uIjogewogICAgICAgICAgIm5hbWUiOiAid2l0aFRyYW5zYWN0aW9uIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wZXJhdGlvbiIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRnVuY3Rpb24iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImluaXRpYWxpemUiOiB7CiAgICAgICAgICAibmFtZSI6ICJpbml0aWFsaXplIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkRGF0YUZyb21EYiI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWREYXRhRnJvbURiIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkcyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEZpZWxkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b0pTT04iOiB7CiAgICAgICAgICAibmFtZSI6ICJ0b0pTT04iLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInRvUGxhaW5PYmplY3QiOiB7CiAgICAgICAgICAibmFtZSI6ICJ0b1BsYWluT2JqZWN0IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInRvUHVibGljSlNPTiI6IHsKICAgICAgICAgICJuYW1lIjogInRvUHVibGljSlNPTiIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUHVibGljSnNvbk9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldElkIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0U2x1ZyI6IHsKICAgICAgICAgICJuYW1lIjogImdldFNsdWciLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0U2F2ZWRJZCI6IHsKICAgICAgICAgICJuYW1lIjogImdldFNhdmVkSWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaXNTYXZlZCI6IHsKICAgICAgICAgICJuYW1lIjogImlzU2F2ZWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic3VwcG9ydHNKdW5jdGlvbkJhdGNoIjogewogICAgICAgICAgIm5hbWUiOiAic3VwcG9ydHNKdW5jdGlvbkJhdGNoIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaGFzQmFzZUp1bmN0aW9uTGlmZWN5Y2xlIjogewogICAgICAgICAgIm5hbWUiOiAiaGFzQmFzZUp1bmN0aW9uTGlmZWN5Y2xlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjYW5kaWRhdGUiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0cnlKdW5jdGlvbkJhdGNoIjogewogICAgICAgICAgIm5hbWUiOiAidHJ5SnVuY3Rpb25CYXRjaCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyZW1vdmVkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0T2JqZWN0W10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJhZGRlZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdFtdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxib29sZWFuPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiB0cnVlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNhdmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJzYXZlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRTYXZlT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsYWltUmV2aXNpb24iOiB7CiAgICAgICAgICAibmFtZSI6ICJjbGFpbVJldmlzaW9uIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImV4cGVjdGVkVXBkYXRlZEF0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJEYXRlIHwgc3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiRGF0ZSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXM+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsYXNzaWZ5Q29uc3RyYWludEVycm9yIjogewogICAgICAgICAgIm5hbWUiOiAiY2xhc3NpZnlDb25zdHJhaW50RXJyb3IiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm1lc3NhZ2UiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIid1bmlxdWUnIHwgJ25vdF9udWxsJyB8IG51bGwiLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkRnJvbUlkIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZEZyb21JZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkRnJvbVNsdWciOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkRnJvbVNsdWciLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaXMiOiB7CiAgICAgICAgICAibmFtZSI6ICJpcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjcml0ZXJpYSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiYW55IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJ0eXBlVW5yZXNvbHZlZCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJldmFsdWF0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImV2YWx1YXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImNyaXRlcmlhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJFdmFsdWF0ZU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8RXZhbHVhdGlvblJlc3VsdD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZG8iOiB7CiAgICAgICAgICAibmFtZSI6ICJkbyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpbnN0cnVjdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpT3BlcmF0aW9uT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlc2NyaWJlIjogewogICAgICAgICAgIm5hbWUiOiAiZGVzY3JpYmUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlPcGVyYXRpb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVsZXRlIjogewogICAgICAgICAgIm5hbWUiOiAiZGVsZXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnREZWxldGVPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzUmVsYXRlZExvYWRlZCI6IHsKICAgICAgICAgICJuYW1lIjogImlzUmVsYXRlZExvYWRlZCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJib29sZWFuIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgIl9zZXRMb2FkZWRSZWxhdGlvbnNoaXAiOiB7CiAgICAgICAgICAibmFtZSI6ICJfc2V0TG9hZGVkUmVsYXRpb25zaGlwIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInZhbHVlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJ1bmtub3duIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkUmVsYXRlZCI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWRSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTG9hZFJlbGF0ZWRPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZFJlbGF0ZWRNYW55IjogewogICAgICAgICAgIm5hbWUiOiAibG9hZFJlbGF0ZWRNYW55IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTG9hZFJlbGF0ZWRPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0UmVsYXRlZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkxvYWRSZWxhdGVkT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxhbnk+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEF2YWlsYWJsZVRvb2xzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QXZhaWxhYmxlVG9vbHMiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiQUlUb29sW10iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZXhlY3V0ZVRvb2xDYWxsIjogewogICAgICAgICAgIm5hbWUiOiAiZXhlY3V0ZVRvb2xDYWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInRvb2xDYWxsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJUb29sQ2FsbCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VG9vbENhbGxSZXN1bHQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlbWVtYmVyIjogewogICAgICAgICAgIm5hbWUiOiAicmVtZW1iZXIiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJ1bmtub3duIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIkRhdGUiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJib29sZWFuIiwKICAgICAgICAgICAgICAgICJudW1iZXIiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGxBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGxBbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1hcDxzdHJpbmcsIHVua25vd24+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0U2NvcGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXRTY29wZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXI+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJHZW5lcmF0ZUVtYmVkZGluZ3NPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEVtYmVkZGluZyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEVtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm1vZGVsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8bnVtYmVyW10gfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJoYXNTdGFsZUVtYmVkZGluZ3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJoYXNTdGFsZUVtYmVkZGluZ3MiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGJvb2xlYW4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsZWFyRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImNsZWFyRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRDbGFzcyIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRPYmplY3QiLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydE9iamVjdENvbGxlY3Rpb24iLAogICAgICAic2NoZW1hIjogewogICAgICAgICJ0YWJsZU5hbWUiOiAic21ydF9vYmplY3RzIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9vYmplY3RzXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9vYmplY3RzX3NsdWdfY29udGV4dF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAic2x1ZyIsCiAgICAgICAgICAgICAgImNvbnRleHQiCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1bmlxdWUiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X29iamVjdHNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjA0YmYzYzQiCiAgICAgIH0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0cG9seW1vcnBoaWNhc3NvY2lhdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0cG9seW1vcnBoaWNhc3NvY2lhdGlvbnMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvcG9seW1vcnBoaWMtYXNzb2NpYXRpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHsKICAgICAgICAibWV0YVR5cGUiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJtZXRhSWQiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJyb2xlIjogewogICAgICAgICAgInR5cGUiOiAidGV4dCIsCiAgICAgICAgICAicmVxdWlyZWQiOiB0cnVlLAogICAgICAgICAgIl9tZXRhIjogewogICAgICAgICAgICAicmVxdWlyZWQiOiB0cnVlCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAic29ydE9yZGVyIjogewogICAgICAgICAgInR5cGUiOiAiaW50ZWdlciIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZSwKICAgICAgICAgICJkZWZhdWx0IjogMAogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImh5ZHJhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJoeWRyYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRPYmplY3QiLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbkNvbGxlY3Rpb24iLAogICAgICAidmFsaWRhdGlvblJ1bGVzIjogWwogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJtZXRhVHlwZSIsCiAgICAgICAgICAicnVsZSI6ICJyZXF1aXJlZCIsCiAgICAgICAgICAiZmllbGRUeXBlIjogInRleHQiCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAiZmllbGQiOiAibWV0YUlkIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJyb2xlIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9CiAgICAgIF0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0KICB9LAogICJtb2R1bGVUeXBlIjogInNtcnQiCn0=", "" + import.meta.url)] : [new URL("../manifest.json", "" + import.meta.url)];
303
+ const candidates = import.meta.url.endsWith(".ts") ? [new URL("data:application/json;base64,ewogICJ2ZXJzaW9uIjogIjEuMC4wIiwKICAidGltZXN0YW1wIjogMCwKICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAicGFja2FnZVZlcnNpb24iOiAiMC41NS44IiwKICAib2JqZWN0cyI6IHsKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENsYXNzIjogewogICAgICAibmFtZSI6ICJzbXJ0Y2xhc3MiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRDbGFzcyIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0Q2xhc3MiLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0Y2xhc3NlcyIsCiAgICAgICJkZXNjcmlwdGlvbiI6ICJGb3VuZGF0aW9uIGNsYXNzIHByb3ZpZGluZyBjb3JlIGZ1bmN0aW9uYWxpdHkgZm9yIHRoZSBTTVJUIGZyYW1ld29yayIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9jbGFzcy50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjoge30sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJ3aXRoRGF0YWJhc2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJ3aXRoRGF0YWJhc2UiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGIiLAogICAgICAgICAgICAgICJ0eXBlIjogIkRhdGFiYXNlSW50ZXJmYWNlIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3BlcmF0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICJGdW5jdGlvbiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QWlVc2FnZVNuYXBzaG90IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QWlVc2FnZVNuYXBzaG90IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIkFpVXNhZ2VTbmFwc2hvdCB8IHVuZGVmaW5lZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZXNldEFpVXNhZ2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZXNldEFpVXNhZ2UiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsaXN0QWlVc2FnZSI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3RBaVVzYWdlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpVXNhZ2VMaXN0T3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxTbXJ0QWlVc2FnZVJlY29yZFtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzdW1tYXJpemVBaVVzYWdlIjogewogICAgICAgICAgIm5hbWUiOiAic3VtbWFyaXplQWlVc2FnZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaVVzYWdlU3VtbWFyeU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgQWlVc2FnZVN0YXRzPj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVzdHJveSI6IHsKICAgICAgICAgICJuYW1lIjogImRlc3Ryb3kiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydENsYXNzIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRDbGFzc0NvbGxlY3Rpb24iLAogICAgICAic2NoZW1hIjogewogICAgICAgICJ0YWJsZU5hbWUiOiAic21ydF9jbGFzc2VzIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9jbGFzc2VzXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jbGFzc2VzX3NsdWdfY29udGV4dF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAic2x1ZyIsCiAgICAgICAgICAgICAgImNvbnRleHQiCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1bmlxdWUiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X2NsYXNzZXNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjM0YTcyYjAiCiAgICAgIH0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDb2xsZWN0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0Y29sbGVjdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENvbGxlY3Rpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0Y29sbGVjdGlvbnMiLAogICAgICAiZGVzY3JpcHRpb24iOiAiVHlwZWQgQ1JVRCBjb2xsZWN0aW9uIGZvciBhIHNwZWNpZmljIFNtcnRPYmplY3Qgc3ViY2xhc3MuIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2NvbGxlY3Rpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRMYXRlc3RSZWxhdGVkTGlzdE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydExhdGVzdFJlbGF0ZWRSb3c8U21ydE9iamVjdD5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SXRlbUNsYXNzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SXRlbUNsYXNzIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlNtcnRDb2xsZWN0aW9uSXRlbUNsYXNzPE1vZGVsVHlwZT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidmFsaWRhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJ2YWxpZGF0ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY3JlYXRlIjogewogICAgICAgICAgIm5hbWUiOiAiY3JlYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRDcmVhdGVJbnB1dDxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY29udGV4dCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUGFydGlhbDxBdWRpdENvbnRleHQ+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaW5pdGlhbGl6ZSI6IHsKICAgICAgICAgICJuYW1lIjogImluaXRpYWxpemUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXM+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImVuc3VyZVN0b3JhZ2VSZWFkeSI6IHsKICAgICAgICAgICJuYW1lIjogImVuc3VyZVN0b3JhZ2VSZWFkeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZE9uZSI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRPbmUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGUgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kQnlJZCI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRCeUlkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImlkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kQWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICAgInN0cmluZyB8IHN0cmluZ1tdIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgInN0cmluZ1tdIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxpc3RCeUlkcyI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3RCeUlkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZHMiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZ1tdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGVbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpbHRlciIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIHwgU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJ1bmlvbkJyYW5jaGVzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIkNvbGxlY3Rpb25DYWNoZUNvbmZpZyB8IGZhbHNlIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibGlzdCI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3QiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydExpc3RPcHRpb25zPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydE9iamVjdFtdIHwgUmVjb3JkPHN0cmluZywgdW5rbm93bj5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAid2l0aEF1ZGl0TXV0YXRpb24iOiB7CiAgICAgICAgICAibmFtZSI6ICJ3aXRoQXVkaXRNdXRhdGlvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpbnN0YW5jZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTW9kZWxUeXBlIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiYWN0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICInY3JlYXRlZCcgfCAndXBkYXRlZCcgfCAnZGVsZXRlZCciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJ1bmlvbkJyYW5jaGVzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICInY3JlYXRlZCciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICIndXBkYXRlZCciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICInZGVsZXRlZCciCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibXV0YXRlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJGdW5jdGlvbiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImNvbnRleHQiLAogICAgICAgICAgICAgICJ0eXBlIjogIlBhcnRpYWw8QXVkaXRDb250ZXh0PiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ1cGRhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJ1cGRhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiaWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInZhbHVlcyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUGFydGlhbDxTbXJ0Q3JlYXRlSW5wdXQ8TW9kZWxUeXBlPj4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjb250ZXh0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJQYXJ0aWFsPEF1ZGl0Q29udGV4dD4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaGFzQmFzZUNyZWF0ZUxpZmVjeWNsZSI6IHsKICAgICAgICAgICJuYW1lIjogImhhc0Jhc2VDcmVhdGVMaWZlY3ljbGUiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImNvbGxlY3Rpb24iLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRDb2xsZWN0aW9uPFQ+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYm9vbGVhbiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiB0cnVlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldE9yVXBzZXJ0IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0T3JVcHNlcnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGF0YSIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUmVjb3JkPHN0cmluZywgdW5rbm93bj4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkZWZhdWx0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUmVjb3JkPHN0cmluZywgdW5rbm93bj4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXREaWZmIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RGlmZiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJleGlzdGluZyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdCB8IFJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdCIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkcyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEZpZWxkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgQ29sbGVjdGlvbkZpZWxkRGVmaW5pdGlvbj4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkc1N5bmMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHNTeW5jIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb25GaWVsZERlZmluaXRpb24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlU2NoZW1hIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVTY2hlbWEiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVUYWJsZU5hbWUiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZW5lcmF0ZVRhYmxlTmFtZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVsZXRlIjogewogICAgICAgICAgIm5hbWUiOiAiZGVsZXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImlkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjb250ZXh0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJQYXJ0aWFsPEF1ZGl0Q29udGV4dD4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8Ym9vbGVhbj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY291bnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJjb3VudCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRMaXN0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgICAiU21ydFN0aVJlYWRTY29wZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmFjZXRzIjogewogICAgICAgICAgIm5hbWUiOiAiZmFjZXRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRGYWNldE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydEZhY2V0UmVzdWx0W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNvdW50cyI6IHsKICAgICAgICAgICJuYW1lIjogImNvdW50cyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRMaXN0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgICAiU21ydFN0aVJlYWRTY29wZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFNtcnRDb2xsZWN0aW9uQ291bnRzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRTdGlDaGlsZE1ldGFUeXBlIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0U3RpQ2hpbGRNZXRhVHlwZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJzdHJpbmcgfCBudWxsIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInF1ZXJ5IjogewogICAgICAgICAgIm5hbWUiOiAicXVlcnkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAic3FsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJwYXJhbXMiLAogICAgICAgICAgICAgICJ0eXBlIjogInVua25vd25bXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJib29sZWFuIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlbWVtYmVyIjogewogICAgICAgICAgIm5hbWUiOiAicmVtZW1iZXIiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJ1bmtub3duIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIkRhdGUiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJib29sZWFuIiwKICAgICAgICAgICAgICAgICJudW1iZXIiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGxBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGxBbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1hcDxzdHJpbmcsIHVua25vd24+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0U2NvcGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXRTY29wZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXI+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNlbWFudGljU2VhcmNoIjogewogICAgICAgICAgIm5hbWUiOiAic2VtYW50aWNTZWFyY2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicXVlcnkiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIlNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzZW1hbnRpY1NlYXJjaElkcyI6IHsKICAgICAgICAgICJuYW1lIjogInNlbWFudGljU2VhcmNoSWRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInF1ZXJ5IiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJTbXJ0TGlzdFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxBcnJheTxvYmplY3Q+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhcklkc1RvRW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZFNpbWlsYXJJZHNUb0VtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJlbWJlZGRpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIm51bWJlcltdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiU21ydExpc3RXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8QXJyYXk8b2JqZWN0Pj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZFNpbWlsYXIiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kU2ltaWxhciIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJ0eXBlIjogIk1vZGVsVHlwZSB8IHN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIk1vZGVsVHlwZSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJib29sZWFuIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhclRvRW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZFNpbWlsYXJUb0VtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJlbWJlZGRpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIm51bWJlcltdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlTWlzc2luZ0VtYmVkZGluZ3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZW5lcmF0ZU1pc3NpbmdFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJGdW5jdGlvbiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG9iamVjdD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRDbGFzcyIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRDb2xsZWN0aW9uIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRDb2xsZWN0aW9uQ29sbGVjdGlvbiIsCiAgICAgICJzY2hlbWEiOiB7CiAgICAgICAgInRhYmxlTmFtZSI6ICJzbXJ0X2NvbGxlY3Rpb25zIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9jb2xsZWN0aW9uc1wiIChcbiAgXCJpZFwiIFVVSUQgUFJJTUFSWSBLRVkgTk9UIE5VTEwsXG4gIFwic2x1Z1wiIFRFWFQgTk9UIE5VTEwsXG4gIFwiY29udGV4dFwiIFRFWFQgTk9UIE5VTEwgREVGQVVMVCAnJyxcbiAgXCJjcmVhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXAsXG4gIFwidXBkYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wXG4pOyIsCiAgICAgICAgImNvbHVtbnMiOiB7CiAgICAgICAgICAiaWQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlVVSUQiLAogICAgICAgICAgICAicHJpbWFyeUtleSI6IHRydWUsCiAgICAgICAgICAgICJyZWZlcmVuY2VLaW5kIjogImlkIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgInNsdWciOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAiY29udGV4dCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiIgogICAgICAgICAgfSwKICAgICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfSwKICAgICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgImluZGV4ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfY29sbGVjdGlvbnNfc2x1Z19jb250ZXh0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJzbHVnIiwKICAgICAgICAgICAgICAiY29udGV4dCIKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInVuaXF1ZSI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfY29sbGVjdGlvbnNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjk1YjBhODAiCiAgICAgIH0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRIaWVyYXJjaGljYWwiOiB7CiAgICAgICJuYW1lIjogInNtcnRoaWVyYXJjaGljYWwiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRIaWVyYXJjaGljYWwiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRoaWVyYXJjaGljYWxzIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2hpZXJhcmNoaWNhbC50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJwYXJlbnRJZCI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJnZXRQYXJlbnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRQYXJlbnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXMgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRDaGlsZHJlbiI6IHsKICAgICAgICAgICJuYW1lIjogImdldENoaWxkcmVuIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEFuY2VzdG9ycyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEFuY2VzdG9ycyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dGhpc1tdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXREZXNjZW5kYW50cyI6IHsKICAgICAgICAgICJuYW1lIjogImdldERlc2NlbmRhbnRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEhpZXJhcmNoeSI6IHsKICAgICAgICAgICJuYW1lIjogImdldEhpZXJhcmNoeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8SGllcmFyY2h5Vmlldzx0aGlzPj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibW92ZVRvIjogewogICAgICAgICAgIm5hbWUiOiAibW92ZVRvIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm5ld1BhcmVudCIsCiAgICAgICAgICAgICAgInR5cGUiOiAidGhpcyB8IHN0cmluZyB8IG51bGwiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJ1bmlvbkJyYW5jaGVzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJ0aGlzIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAibnVsbCIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0KICAgICAgfSwKICAgICAgImRlY29yYXRvckNvbmZpZyI6IHt9LAogICAgICAiZXh0ZW5kcyI6ICJTbXJ0T2JqZWN0IiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0SGllcmFyY2hpY2FsQ29sbGVjdGlvbiIsCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRKdW5jdGlvbkJhc2UiOiB7CiAgICAgICJuYW1lIjogInNtcnRqdW5jdGlvbmJhc2UiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRKdW5jdGlvbkJhc2UiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEp1bmN0aW9uQmFzZSIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRqdW5jdGlvbmJhc2VzIiwKICAgICAgImRlc2NyaXB0aW9uIjogIlNoYXJlZCBqdW5jdGlvbiBjb2xsZWN0aW9uIGlkZW50aXR5LCBvcmRlcmluZywgYW5kIHNpbmdsZS1yaWdodC1JRCByZWFkcy4iLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvanVuY3Rpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAiYnlSaWdodCI6IHsKICAgICAgICAgICJuYW1lIjogImJ5UmlnaHQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25GaWx0ZXJPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0KICAgICAgfSwKICAgICAgImRlY29yYXRvckNvbmZpZyI6IHt9LAogICAgICAiZXh0ZW5kcyI6ICJTbXJ0Q29sbGVjdGlvbiIsCiAgICAgICJleHRlbmRzVHlwZUFyZyI6ICJUSXRlbSIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRKdW5jdGlvbkJhc2UiLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydEp1bmN0aW9uQmFzZUNvbGxlY3Rpb24iLAogICAgICAiaW1wb3J0UGF0aCI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiCiAgICB9LAogICAgIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SnVuY3Rpb24iOiB7CiAgICAgICJuYW1lIjogInNtcnRqdW5jdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydEp1bmN0aW9uIiwKICAgICAgInF1YWxpZmllZE5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRKdW5jdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRqdW5jdGlvbnMiLAogICAgICAiZGVzY3JpcHRpb24iOiAiSnVuY3Rpb24gY29sbGVjdGlvbiB3aXRoIG9uZSBsZWZ0IElEIGFuZCBvbmUgcmlnaHQgSUQuIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2p1bmN0aW9uLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7fSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImJ5UmlnaHQiOiB7CiAgICAgICAgICAibmFtZSI6ICJieVJpZ2h0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uRmlsdGVyT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUSXRlbVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJieUxlZnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJieUxlZnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VEl0ZW1bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYXR0YWNoIjogewogICAgICAgICAgIm5hbWUiOiAiYXR0YWNoIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImxlZnRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25BdHRhY2hPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZXRhY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXRhY2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2V0TGlua3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJzZXRMaW5rcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmdbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uQXR0YWNoT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydEp1bmN0aW9uQmFzZSIsCiAgICAgICJleHRlbmRzVHlwZUFyZyI6ICJUSXRlbSIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRKdW5jdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0SnVuY3Rpb25Db2xsZWN0aW9uIiwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydE9iamVjdCI6IHsKICAgICAgIm5hbWUiOiAic21ydG9iamVjdCIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydE9iamVjdCIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0T2JqZWN0IiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydG9iamVjdHMiLAogICAgICAiZGVzY3JpcHRpb24iOiAiQmFzZSBjbGFzcyBmb3IgYWxsIHBlcnNpc3RlbnQgU01SVCBkb21haW4gb2JqZWN0cy4iLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvb2JqZWN0LnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7CiAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAidHlwZSI6ICJkYXRldGltZSIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAidHlwZSI6ICJkYXRldGltZSIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZQogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgIm1hcmtBc1BlcnNpc3RlZCI6IHsKICAgICAgICAgICJuYW1lIjogIm1hcmtBc1BlcnNpc3RlZCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlcXVpcmVJbnNlcnRPblNhdmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZXF1aXJlSW5zZXJ0T25TYXZlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYWRvcHROYXR1cmFsS2V5T25TYXZlIjogewogICAgICAgICAgIm5hbWUiOiAiYWRvcHROYXR1cmFsS2V5T25TYXZlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAid2l0aFRyYW5zYWN0aW9uIjogewogICAgICAgICAgIm5hbWUiOiAid2l0aFRyYW5zYWN0aW9uIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wZXJhdGlvbiIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRnVuY3Rpb24iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImluaXRpYWxpemUiOiB7CiAgICAgICAgICAibmFtZSI6ICJpbml0aWFsaXplIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkRGF0YUZyb21EYiI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWREYXRhRnJvbURiIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkcyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEZpZWxkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b0pTT04iOiB7CiAgICAgICAgICAibmFtZSI6ICJ0b0pTT04iLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInRvUGxhaW5PYmplY3QiOiB7CiAgICAgICAgICAibmFtZSI6ICJ0b1BsYWluT2JqZWN0IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInRvUHVibGljSlNPTiI6IHsKICAgICAgICAgICJuYW1lIjogInRvUHVibGljSlNPTiIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUHVibGljSnNvbk9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldElkIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0U2x1ZyI6IHsKICAgICAgICAgICJuYW1lIjogImdldFNsdWciLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0U2F2ZWRJZCI6IHsKICAgICAgICAgICJuYW1lIjogImdldFNhdmVkSWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaXNTYXZlZCI6IHsKICAgICAgICAgICJuYW1lIjogImlzU2F2ZWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic3VwcG9ydHNKdW5jdGlvbkJhdGNoIjogewogICAgICAgICAgIm5hbWUiOiAic3VwcG9ydHNKdW5jdGlvbkJhdGNoIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaGFzQmFzZUp1bmN0aW9uTGlmZWN5Y2xlIjogewogICAgICAgICAgIm5hbWUiOiAiaGFzQmFzZUp1bmN0aW9uTGlmZWN5Y2xlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjYW5kaWRhdGUiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0cnlKdW5jdGlvbkJhdGNoIjogewogICAgICAgICAgIm5hbWUiOiAidHJ5SnVuY3Rpb25CYXRjaCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyZW1vdmVkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0T2JqZWN0W10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJhZGRlZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdFtdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxib29sZWFuPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiB0cnVlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNhdmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJzYXZlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRTYXZlT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsYWltUmV2aXNpb24iOiB7CiAgICAgICAgICAibmFtZSI6ICJjbGFpbVJldmlzaW9uIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImV4cGVjdGVkVXBkYXRlZEF0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJEYXRlIHwgc3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiRGF0ZSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXM+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsYXNzaWZ5Q29uc3RyYWludEVycm9yIjogewogICAgICAgICAgIm5hbWUiOiAiY2xhc3NpZnlDb25zdHJhaW50RXJyb3IiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm1lc3NhZ2UiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIid1bmlxdWUnIHwgJ25vdF9udWxsJyB8IG51bGwiLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkRnJvbUlkIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZEZyb21JZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkRnJvbVNsdWciOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkRnJvbVNsdWciLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaXMiOiB7CiAgICAgICAgICAibmFtZSI6ICJpcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjcml0ZXJpYSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiYW55IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJ0eXBlVW5yZXNvbHZlZCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJldmFsdWF0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImV2YWx1YXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImNyaXRlcmlhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJFdmFsdWF0ZU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8RXZhbHVhdGlvblJlc3VsdD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZG8iOiB7CiAgICAgICAgICAibmFtZSI6ICJkbyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpbnN0cnVjdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpT3BlcmF0aW9uT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlc2NyaWJlIjogewogICAgICAgICAgIm5hbWUiOiAiZGVzY3JpYmUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlPcGVyYXRpb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVsZXRlIjogewogICAgICAgICAgIm5hbWUiOiAiZGVsZXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnREZWxldGVPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzUmVsYXRlZExvYWRlZCI6IHsKICAgICAgICAgICJuYW1lIjogImlzUmVsYXRlZExvYWRlZCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJib29sZWFuIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgIl9zZXRMb2FkZWRSZWxhdGlvbnNoaXAiOiB7CiAgICAgICAgICAibmFtZSI6ICJfc2V0TG9hZGVkUmVsYXRpb25zaGlwIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInZhbHVlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJ1bmtub3duIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkUmVsYXRlZCI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWRSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTG9hZFJlbGF0ZWRPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZFJlbGF0ZWRNYW55IjogewogICAgICAgICAgIm5hbWUiOiAibG9hZFJlbGF0ZWRNYW55IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTG9hZFJlbGF0ZWRPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0UmVsYXRlZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkxvYWRSZWxhdGVkT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxhbnk+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEF2YWlsYWJsZVRvb2xzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QXZhaWxhYmxlVG9vbHMiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiQUlUb29sW10iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZXhlY3V0ZVRvb2xDYWxsIjogewogICAgICAgICAgIm5hbWUiOiAiZXhlY3V0ZVRvb2xDYWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInRvb2xDYWxsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJUb29sQ2FsbCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VG9vbENhbGxSZXN1bHQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlbWVtYmVyIjogewogICAgICAgICAgIm5hbWUiOiAicmVtZW1iZXIiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJ1bmtub3duIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIkRhdGUiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJib29sZWFuIiwKICAgICAgICAgICAgICAgICJudW1iZXIiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGxBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGxBbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1hcDxzdHJpbmcsIHVua25vd24+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0U2NvcGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXRTY29wZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXI+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJHZW5lcmF0ZUVtYmVkZGluZ3NPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEVtYmVkZGluZyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEVtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm1vZGVsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8bnVtYmVyW10gfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJoYXNTdGFsZUVtYmVkZGluZ3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJoYXNTdGFsZUVtYmVkZGluZ3MiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGJvb2xlYW4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsZWFyRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImNsZWFyRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRDbGFzcyIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRPYmplY3QiLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydE9iamVjdENvbGxlY3Rpb24iLAogICAgICAic2NoZW1hIjogewogICAgICAgICJ0YWJsZU5hbWUiOiAic21ydF9vYmplY3RzIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9vYmplY3RzXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9vYmplY3RzX3NsdWdfY29udGV4dF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAic2x1ZyIsCiAgICAgICAgICAgICAgImNvbnRleHQiCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1bmlxdWUiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X29iamVjdHNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjA0YmYzYzQiCiAgICAgIH0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0cG9seW1vcnBoaWNhc3NvY2lhdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0cG9seW1vcnBoaWNhc3NvY2lhdGlvbnMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvcG9seW1vcnBoaWMtYXNzb2NpYXRpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHsKICAgICAgICAibWV0YVR5cGUiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJtZXRhSWQiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJyb2xlIjogewogICAgICAgICAgInR5cGUiOiAidGV4dCIsCiAgICAgICAgICAicmVxdWlyZWQiOiB0cnVlLAogICAgICAgICAgIl9tZXRhIjogewogICAgICAgICAgICAicmVxdWlyZWQiOiB0cnVlCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAic29ydE9yZGVyIjogewogICAgICAgICAgInR5cGUiOiAiaW50ZWdlciIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZSwKICAgICAgICAgICJkZWZhdWx0IjogMAogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImh5ZHJhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJoeWRyYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRPYmplY3QiLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbkNvbGxlY3Rpb24iLAogICAgICAidmFsaWRhdGlvblJ1bGVzIjogWwogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJtZXRhVHlwZSIsCiAgICAgICAgICAicnVsZSI6ICJyZXF1aXJlZCIsCiAgICAgICAgICAiZmllbGRUeXBlIjogInRleHQiCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAiZmllbGQiOiAibWV0YUlkIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJyb2xlIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9CiAgICAgIF0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0KICB9LAogICJtb2R1bGVUeXBlIjogInNtcnQiLAogICJicm93c2VyIjogewogICAgInN0YXR1cyI6ICJzZXJ2ZXItb25seSIsCiAgICAiaXNzdWVzIjogWwogICAgICAiIzM2MzUiCiAgICBdLAogICAgInJlYXNvbiI6ICJtb2RlbCByb290cyBpbXBvcnQgc2VydmVyLW9ubHkgaGVscGVycyAobWFuaWZlc3QgbG9hZGVyLCByb3V0ZSBoZWxwZXJzLCBzdGFydFJlc3RTZXJ2ZXIpIHRoZSBicm93c2VyIGVudHJ5IGRlbGliZXJhdGVseSBvbWl0czsgY29yZSdzIG93biBncmFwaCByZWFjaGVzIG5vIE5vZGUtb25seSBtb2R1bGUgKCMyODM4LCBoZWxkIGJ5IHRoZSBicm93c2VyLWJvdW5kYXJ5IGNvcmUtZW50cnkgdGVzdCkiCiAgfQp9", "" + import.meta.url), new URL("data:application/json;base64,ewogICJ2ZXJzaW9uIjogIjEuMC4wIiwKICAidGltZXN0YW1wIjogMCwKICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAicGFja2FnZVZlcnNpb24iOiAiMC41NS44IiwKICAib2JqZWN0cyI6IHsKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENsYXNzIjogewogICAgICAibmFtZSI6ICJzbXJ0Y2xhc3MiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRDbGFzcyIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0Q2xhc3MiLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0Y2xhc3NlcyIsCiAgICAgICJkZXNjcmlwdGlvbiI6ICJGb3VuZGF0aW9uIGNsYXNzIHByb3ZpZGluZyBjb3JlIGZ1bmN0aW9uYWxpdHkgZm9yIHRoZSBTTVJUIGZyYW1ld29yayIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9jbGFzcy50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjoge30sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJ3aXRoRGF0YWJhc2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJ3aXRoRGF0YWJhc2UiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGIiLAogICAgICAgICAgICAgICJ0eXBlIjogIkRhdGFiYXNlSW50ZXJmYWNlIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3BlcmF0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICJGdW5jdGlvbiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QWlVc2FnZVNuYXBzaG90IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QWlVc2FnZVNuYXBzaG90IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIkFpVXNhZ2VTbmFwc2hvdCB8IHVuZGVmaW5lZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZXNldEFpVXNhZ2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZXNldEFpVXNhZ2UiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsaXN0QWlVc2FnZSI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3RBaVVzYWdlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpVXNhZ2VMaXN0T3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxTbXJ0QWlVc2FnZVJlY29yZFtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzdW1tYXJpemVBaVVzYWdlIjogewogICAgICAgICAgIm5hbWUiOiAic3VtbWFyaXplQWlVc2FnZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaVVzYWdlU3VtbWFyeU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgQWlVc2FnZVN0YXRzPj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVzdHJveSI6IHsKICAgICAgICAgICJuYW1lIjogImRlc3Ryb3kiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydENsYXNzIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRDbGFzc0NvbGxlY3Rpb24iLAogICAgICAic2NoZW1hIjogewogICAgICAgICJ0YWJsZU5hbWUiOiAic21ydF9jbGFzc2VzIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9jbGFzc2VzXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jbGFzc2VzX3NsdWdfY29udGV4dF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAic2x1ZyIsCiAgICAgICAgICAgICAgImNvbnRleHQiCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1bmlxdWUiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X2NsYXNzZXNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjM0YTcyYjAiCiAgICAgIH0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDb2xsZWN0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0Y29sbGVjdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENvbGxlY3Rpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0Y29sbGVjdGlvbnMiLAogICAgICAiZGVzY3JpcHRpb24iOiAiVHlwZWQgQ1JVRCBjb2xsZWN0aW9uIGZvciBhIHNwZWNpZmljIFNtcnRPYmplY3Qgc3ViY2xhc3MuIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2NvbGxlY3Rpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRMYXRlc3RSZWxhdGVkTGlzdE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydExhdGVzdFJlbGF0ZWRSb3c8U21ydE9iamVjdD5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SXRlbUNsYXNzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SXRlbUNsYXNzIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlNtcnRDb2xsZWN0aW9uSXRlbUNsYXNzPE1vZGVsVHlwZT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidmFsaWRhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJ2YWxpZGF0ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY3JlYXRlIjogewogICAgICAgICAgIm5hbWUiOiAiY3JlYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRDcmVhdGVJbnB1dDxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY29udGV4dCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUGFydGlhbDxBdWRpdENvbnRleHQ+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaW5pdGlhbGl6ZSI6IHsKICAgICAgICAgICJuYW1lIjogImluaXRpYWxpemUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXM+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImVuc3VyZVN0b3JhZ2VSZWFkeSI6IHsKICAgICAgICAgICJuYW1lIjogImVuc3VyZVN0b3JhZ2VSZWFkeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZE9uZSI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRPbmUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGUgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kQnlJZCI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRCeUlkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImlkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kQWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICAgInN0cmluZyB8IHN0cmluZ1tdIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgInN0cmluZ1tdIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxpc3RCeUlkcyI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3RCeUlkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZHMiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZ1tdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGVbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpbHRlciIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIHwgU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJ1bmlvbkJyYW5jaGVzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIkNvbGxlY3Rpb25DYWNoZUNvbmZpZyB8IGZhbHNlIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibGlzdCI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3QiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydExpc3RPcHRpb25zPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydE9iamVjdFtdIHwgUmVjb3JkPHN0cmluZywgdW5rbm93bj5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAid2l0aEF1ZGl0TXV0YXRpb24iOiB7CiAgICAgICAgICAibmFtZSI6ICJ3aXRoQXVkaXRNdXRhdGlvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpbnN0YW5jZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTW9kZWxUeXBlIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiYWN0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICInY3JlYXRlZCcgfCAndXBkYXRlZCcgfCAnZGVsZXRlZCciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJ1bmlvbkJyYW5jaGVzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICInY3JlYXRlZCciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICIndXBkYXRlZCciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICInZGVsZXRlZCciCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibXV0YXRlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJGdW5jdGlvbiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImNvbnRleHQiLAogICAgICAgICAgICAgICJ0eXBlIjogIlBhcnRpYWw8QXVkaXRDb250ZXh0PiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ1cGRhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJ1cGRhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiaWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInZhbHVlcyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUGFydGlhbDxTbXJ0Q3JlYXRlSW5wdXQ8TW9kZWxUeXBlPj4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjb250ZXh0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJQYXJ0aWFsPEF1ZGl0Q29udGV4dD4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaGFzQmFzZUNyZWF0ZUxpZmVjeWNsZSI6IHsKICAgICAgICAgICJuYW1lIjogImhhc0Jhc2VDcmVhdGVMaWZlY3ljbGUiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImNvbGxlY3Rpb24iLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRDb2xsZWN0aW9uPFQ+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYm9vbGVhbiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiB0cnVlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldE9yVXBzZXJ0IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0T3JVcHNlcnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGF0YSIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUmVjb3JkPHN0cmluZywgdW5rbm93bj4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkZWZhdWx0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUmVjb3JkPHN0cmluZywgdW5rbm93bj4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXREaWZmIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RGlmZiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJleGlzdGluZyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdCB8IFJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdCIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkcyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEZpZWxkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgQ29sbGVjdGlvbkZpZWxkRGVmaW5pdGlvbj4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkc1N5bmMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHNTeW5jIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb25GaWVsZERlZmluaXRpb24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlU2NoZW1hIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVTY2hlbWEiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVUYWJsZU5hbWUiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZW5lcmF0ZVRhYmxlTmFtZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVsZXRlIjogewogICAgICAgICAgIm5hbWUiOiAiZGVsZXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImlkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjb250ZXh0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJQYXJ0aWFsPEF1ZGl0Q29udGV4dD4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8Ym9vbGVhbj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY291bnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJjb3VudCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRMaXN0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgICAiU21ydFN0aVJlYWRTY29wZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmFjZXRzIjogewogICAgICAgICAgIm5hbWUiOiAiZmFjZXRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRGYWNldE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydEZhY2V0UmVzdWx0W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNvdW50cyI6IHsKICAgICAgICAgICJuYW1lIjogImNvdW50cyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRMaXN0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgICAiU21ydFN0aVJlYWRTY29wZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFNtcnRDb2xsZWN0aW9uQ291bnRzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRTdGlDaGlsZE1ldGFUeXBlIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0U3RpQ2hpbGRNZXRhVHlwZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJzdHJpbmcgfCBudWxsIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInF1ZXJ5IjogewogICAgICAgICAgIm5hbWUiOiAicXVlcnkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAic3FsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJwYXJhbXMiLAogICAgICAgICAgICAgICJ0eXBlIjogInVua25vd25bXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJib29sZWFuIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlbWVtYmVyIjogewogICAgICAgICAgIm5hbWUiOiAicmVtZW1iZXIiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJ1bmtub3duIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIkRhdGUiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJib29sZWFuIiwKICAgICAgICAgICAgICAgICJudW1iZXIiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGxBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGxBbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1hcDxzdHJpbmcsIHVua25vd24+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0U2NvcGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXRTY29wZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXI+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNlbWFudGljU2VhcmNoIjogewogICAgICAgICAgIm5hbWUiOiAic2VtYW50aWNTZWFyY2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicXVlcnkiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIlNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzZW1hbnRpY1NlYXJjaElkcyI6IHsKICAgICAgICAgICJuYW1lIjogInNlbWFudGljU2VhcmNoSWRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInF1ZXJ5IiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJTbXJ0TGlzdFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxBcnJheTxvYmplY3Q+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhcklkc1RvRW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZFNpbWlsYXJJZHNUb0VtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJlbWJlZGRpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIm51bWJlcltdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiU21ydExpc3RXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8QXJyYXk8b2JqZWN0Pj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZFNpbWlsYXIiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kU2ltaWxhciIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJ0eXBlIjogIk1vZGVsVHlwZSB8IHN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIk1vZGVsVHlwZSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJib29sZWFuIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhclRvRW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZFNpbWlsYXJUb0VtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJlbWJlZGRpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIm51bWJlcltdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlTWlzc2luZ0VtYmVkZGluZ3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZW5lcmF0ZU1pc3NpbmdFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJGdW5jdGlvbiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG9iamVjdD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRDbGFzcyIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRDb2xsZWN0aW9uIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRDb2xsZWN0aW9uQ29sbGVjdGlvbiIsCiAgICAgICJzY2hlbWEiOiB7CiAgICAgICAgInRhYmxlTmFtZSI6ICJzbXJ0X2NvbGxlY3Rpb25zIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9jb2xsZWN0aW9uc1wiIChcbiAgXCJpZFwiIFVVSUQgUFJJTUFSWSBLRVkgTk9UIE5VTEwsXG4gIFwic2x1Z1wiIFRFWFQgTk9UIE5VTEwsXG4gIFwiY29udGV4dFwiIFRFWFQgTk9UIE5VTEwgREVGQVVMVCAnJyxcbiAgXCJjcmVhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXAsXG4gIFwidXBkYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wXG4pOyIsCiAgICAgICAgImNvbHVtbnMiOiB7CiAgICAgICAgICAiaWQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlVVSUQiLAogICAgICAgICAgICAicHJpbWFyeUtleSI6IHRydWUsCiAgICAgICAgICAgICJyZWZlcmVuY2VLaW5kIjogImlkIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgInNsdWciOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAiY29udGV4dCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiIgogICAgICAgICAgfSwKICAgICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfSwKICAgICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgImluZGV4ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfY29sbGVjdGlvbnNfc2x1Z19jb250ZXh0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJzbHVnIiwKICAgICAgICAgICAgICAiY29udGV4dCIKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInVuaXF1ZSI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfY29sbGVjdGlvbnNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjk1YjBhODAiCiAgICAgIH0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRIaWVyYXJjaGljYWwiOiB7CiAgICAgICJuYW1lIjogInNtcnRoaWVyYXJjaGljYWwiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRIaWVyYXJjaGljYWwiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRoaWVyYXJjaGljYWxzIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2hpZXJhcmNoaWNhbC50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJwYXJlbnRJZCI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJnZXRQYXJlbnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRQYXJlbnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXMgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRDaGlsZHJlbiI6IHsKICAgICAgICAgICJuYW1lIjogImdldENoaWxkcmVuIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEFuY2VzdG9ycyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEFuY2VzdG9ycyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dGhpc1tdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXREZXNjZW5kYW50cyI6IHsKICAgICAgICAgICJuYW1lIjogImdldERlc2NlbmRhbnRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEhpZXJhcmNoeSI6IHsKICAgICAgICAgICJuYW1lIjogImdldEhpZXJhcmNoeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8SGllcmFyY2h5Vmlldzx0aGlzPj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibW92ZVRvIjogewogICAgICAgICAgIm5hbWUiOiAibW92ZVRvIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm5ld1BhcmVudCIsCiAgICAgICAgICAgICAgInR5cGUiOiAidGhpcyB8IHN0cmluZyB8IG51bGwiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJ1bmlvbkJyYW5jaGVzIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJ0aGlzIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAibnVsbCIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0KICAgICAgfSwKICAgICAgImRlY29yYXRvckNvbmZpZyI6IHt9LAogICAgICAiZXh0ZW5kcyI6ICJTbXJ0T2JqZWN0IiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0SGllcmFyY2hpY2FsQ29sbGVjdGlvbiIsCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRKdW5jdGlvbkJhc2UiOiB7CiAgICAgICJuYW1lIjogInNtcnRqdW5jdGlvbmJhc2UiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRKdW5jdGlvbkJhc2UiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEp1bmN0aW9uQmFzZSIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRqdW5jdGlvbmJhc2VzIiwKICAgICAgImRlc2NyaXB0aW9uIjogIlNoYXJlZCBqdW5jdGlvbiBjb2xsZWN0aW9uIGlkZW50aXR5LCBvcmRlcmluZywgYW5kIHNpbmdsZS1yaWdodC1JRCByZWFkcy4iLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvanVuY3Rpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAiYnlSaWdodCI6IHsKICAgICAgICAgICJuYW1lIjogImJ5UmlnaHQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25GaWx0ZXJPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0KICAgICAgfSwKICAgICAgImRlY29yYXRvckNvbmZpZyI6IHt9LAogICAgICAiZXh0ZW5kcyI6ICJTbXJ0Q29sbGVjdGlvbiIsCiAgICAgICJleHRlbmRzVHlwZUFyZyI6ICJUSXRlbSIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRKdW5jdGlvbkJhc2UiLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydEp1bmN0aW9uQmFzZUNvbGxlY3Rpb24iLAogICAgICAiaW1wb3J0UGF0aCI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiCiAgICB9LAogICAgIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SnVuY3Rpb24iOiB7CiAgICAgICJuYW1lIjogInNtcnRqdW5jdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydEp1bmN0aW9uIiwKICAgICAgInF1YWxpZmllZE5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRKdW5jdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRqdW5jdGlvbnMiLAogICAgICAiZGVzY3JpcHRpb24iOiAiSnVuY3Rpb24gY29sbGVjdGlvbiB3aXRoIG9uZSBsZWZ0IElEIGFuZCBvbmUgcmlnaHQgSUQuIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2p1bmN0aW9uLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7fSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImJ5UmlnaHQiOiB7CiAgICAgICAgICAibmFtZSI6ICJieVJpZ2h0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uRmlsdGVyT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUSXRlbVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJieUxlZnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJieUxlZnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VEl0ZW1bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYXR0YWNoIjogewogICAgICAgICAgIm5hbWUiOiAiYXR0YWNoIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImxlZnRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25BdHRhY2hPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZXRhY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXRhY2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2V0TGlua3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJzZXRMaW5rcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmdbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uQXR0YWNoT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydEp1bmN0aW9uQmFzZSIsCiAgICAgICJleHRlbmRzVHlwZUFyZyI6ICJUSXRlbSIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRKdW5jdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0SnVuY3Rpb25Db2xsZWN0aW9uIiwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydE9iamVjdCI6IHsKICAgICAgIm5hbWUiOiAic21ydG9iamVjdCIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydE9iamVjdCIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0T2JqZWN0IiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydG9iamVjdHMiLAogICAgICAiZGVzY3JpcHRpb24iOiAiQmFzZSBjbGFzcyBmb3IgYWxsIHBlcnNpc3RlbnQgU01SVCBkb21haW4gb2JqZWN0cy4iLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvb2JqZWN0LnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7CiAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAidHlwZSI6ICJkYXRldGltZSIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAidHlwZSI6ICJkYXRldGltZSIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZQogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgIm1hcmtBc1BlcnNpc3RlZCI6IHsKICAgICAgICAgICJuYW1lIjogIm1hcmtBc1BlcnNpc3RlZCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlcXVpcmVJbnNlcnRPblNhdmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZXF1aXJlSW5zZXJ0T25TYXZlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYWRvcHROYXR1cmFsS2V5T25TYXZlIjogewogICAgICAgICAgIm5hbWUiOiAiYWRvcHROYXR1cmFsS2V5T25TYXZlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAid2l0aFRyYW5zYWN0aW9uIjogewogICAgICAgICAgIm5hbWUiOiAid2l0aFRyYW5zYWN0aW9uIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wZXJhdGlvbiIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRnVuY3Rpb24iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImluaXRpYWxpemUiOiB7CiAgICAgICAgICAibmFtZSI6ICJpbml0aWFsaXplIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkRGF0YUZyb21EYiI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWREYXRhRnJvbURiIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkcyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEZpZWxkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b0pTT04iOiB7CiAgICAgICAgICAibmFtZSI6ICJ0b0pTT04iLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInRvUGxhaW5PYmplY3QiOiB7CiAgICAgICAgICAibmFtZSI6ICJ0b1BsYWluT2JqZWN0IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInRvUHVibGljSlNPTiI6IHsKICAgICAgICAgICJuYW1lIjogInRvUHVibGljSlNPTiIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUHVibGljSnNvbk9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldElkIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0U2x1ZyI6IHsKICAgICAgICAgICJuYW1lIjogImdldFNsdWciLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0U2F2ZWRJZCI6IHsKICAgICAgICAgICJuYW1lIjogImdldFNhdmVkSWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaXNTYXZlZCI6IHsKICAgICAgICAgICJuYW1lIjogImlzU2F2ZWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic3VwcG9ydHNKdW5jdGlvbkJhdGNoIjogewogICAgICAgICAgIm5hbWUiOiAic3VwcG9ydHNKdW5jdGlvbkJhdGNoIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaGFzQmFzZUp1bmN0aW9uTGlmZWN5Y2xlIjogewogICAgICAgICAgIm5hbWUiOiAiaGFzQmFzZUp1bmN0aW9uTGlmZWN5Y2xlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjYW5kaWRhdGUiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0cnlKdW5jdGlvbkJhdGNoIjogewogICAgICAgICAgIm5hbWUiOiAidHJ5SnVuY3Rpb25CYXRjaCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyZW1vdmVkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0T2JqZWN0W10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJhZGRlZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdFtdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxib29sZWFuPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiB0cnVlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNhdmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJzYXZlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRTYXZlT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsYWltUmV2aXNpb24iOiB7CiAgICAgICAgICAibmFtZSI6ICJjbGFpbVJldmlzaW9uIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImV4cGVjdGVkVXBkYXRlZEF0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJEYXRlIHwgc3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiRGF0ZSIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXM+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsYXNzaWZ5Q29uc3RyYWludEVycm9yIjogewogICAgICAgICAgIm5hbWUiOiAiY2xhc3NpZnlDb25zdHJhaW50RXJyb3IiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm1lc3NhZ2UiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIid1bmlxdWUnIHwgJ25vdF9udWxsJyB8IG51bGwiLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkRnJvbUlkIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZEZyb21JZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkRnJvbVNsdWciOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkRnJvbVNsdWciLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaXMiOiB7CiAgICAgICAgICAibmFtZSI6ICJpcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjcml0ZXJpYSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiYW55IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJ0eXBlVW5yZXNvbHZlZCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJldmFsdWF0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImV2YWx1YXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImNyaXRlcmlhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJFdmFsdWF0ZU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8RXZhbHVhdGlvblJlc3VsdD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZG8iOiB7CiAgICAgICAgICAibmFtZSI6ICJkbyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpbnN0cnVjdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpT3BlcmF0aW9uT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlc2NyaWJlIjogewogICAgICAgICAgIm5hbWUiOiAiZGVzY3JpYmUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlPcGVyYXRpb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVsZXRlIjogewogICAgICAgICAgIm5hbWUiOiAiZGVsZXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnREZWxldGVPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzUmVsYXRlZExvYWRlZCI6IHsKICAgICAgICAgICJuYW1lIjogImlzUmVsYXRlZExvYWRlZCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJib29sZWFuIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgIl9zZXRMb2FkZWRSZWxhdGlvbnNoaXAiOiB7CiAgICAgICAgICAibmFtZSI6ICJfc2V0TG9hZGVkUmVsYXRpb25zaGlwIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInZhbHVlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJ1bmtub3duIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkUmVsYXRlZCI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWRSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTG9hZFJlbGF0ZWRPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZFJlbGF0ZWRNYW55IjogewogICAgICAgICAgIm5hbWUiOiAibG9hZFJlbGF0ZWRNYW55IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTG9hZFJlbGF0ZWRPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0UmVsYXRlZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkxvYWRSZWxhdGVkT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxhbnk+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEF2YWlsYWJsZVRvb2xzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QXZhaWxhYmxlVG9vbHMiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiQUlUb29sW10iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZXhlY3V0ZVRvb2xDYWxsIjogewogICAgICAgICAgIm5hbWUiOiAiZXhlY3V0ZVRvb2xDYWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInRvb2xDYWxsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJUb29sQ2FsbCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VG9vbENhbGxSZXN1bHQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlbWVtYmVyIjogewogICAgICAgICAgIm5hbWUiOiAicmVtZW1iZXIiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJ1bmtub3duIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIkRhdGUiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJib29sZWFuIiwKICAgICAgICAgICAgICAgICJudW1iZXIiCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGxBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGxBbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1hcDxzdHJpbmcsIHVua25vd24+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0U2NvcGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXRTY29wZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXI+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJHZW5lcmF0ZUVtYmVkZGluZ3NPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEVtYmVkZGluZyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEVtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm1vZGVsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8bnVtYmVyW10gfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJoYXNTdGFsZUVtYmVkZGluZ3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJoYXNTdGFsZUVtYmVkZGluZ3MiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGJvb2xlYW4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsZWFyRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImNsZWFyRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRDbGFzcyIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRPYmplY3QiLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydE9iamVjdENvbGxlY3Rpb24iLAogICAgICAic2NoZW1hIjogewogICAgICAgICJ0YWJsZU5hbWUiOiAic21ydF9vYmplY3RzIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9vYmplY3RzXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9vYmplY3RzX3NsdWdfY29udGV4dF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAic2x1ZyIsCiAgICAgICAgICAgICAgImNvbnRleHQiCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1bmlxdWUiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X29iamVjdHNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjA0YmYzYzQiCiAgICAgIH0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0cG9seW1vcnBoaWNhc3NvY2lhdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0cG9seW1vcnBoaWNhc3NvY2lhdGlvbnMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvcG9seW1vcnBoaWMtYXNzb2NpYXRpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHsKICAgICAgICAibWV0YVR5cGUiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJtZXRhSWQiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJyb2xlIjogewogICAgICAgICAgInR5cGUiOiAidGV4dCIsCiAgICAgICAgICAicmVxdWlyZWQiOiB0cnVlLAogICAgICAgICAgIl9tZXRhIjogewogICAgICAgICAgICAicmVxdWlyZWQiOiB0cnVlCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAic29ydE9yZGVyIjogewogICAgICAgICAgInR5cGUiOiAiaW50ZWdlciIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZSwKICAgICAgICAgICJkZWZhdWx0IjogMAogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImh5ZHJhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJoeWRyYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRPYmplY3QiLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbkNvbGxlY3Rpb24iLAogICAgICAidmFsaWRhdGlvblJ1bGVzIjogWwogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJtZXRhVHlwZSIsCiAgICAgICAgICAicnVsZSI6ICJyZXF1aXJlZCIsCiAgICAgICAgICAiZmllbGRUeXBlIjogInRleHQiCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAiZmllbGQiOiAibWV0YUlkIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJyb2xlIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9CiAgICAgIF0sCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0KICB9LAogICJtb2R1bGVUeXBlIjogInNtcnQiLAogICJicm93c2VyIjogewogICAgInN0YXR1cyI6ICJzZXJ2ZXItb25seSIsCiAgICAiaXNzdWVzIjogWwogICAgICAiIzM2MzUiCiAgICBdLAogICAgInJlYXNvbiI6ICJtb2RlbCByb290cyBpbXBvcnQgc2VydmVyLW9ubHkgaGVscGVycyAobWFuaWZlc3QgbG9hZGVyLCByb3V0ZSBoZWxwZXJzLCBzdGFydFJlc3RTZXJ2ZXIpIHRoZSBicm93c2VyIGVudHJ5IGRlbGliZXJhdGVseSBvbWl0czsgY29yZSdzIG93biBncmFwaCByZWFjaGVzIG5vIE5vZGUtb25seSBtb2R1bGUgKCMyODM4LCBoZWxkIGJ5IHRoZSBicm93c2VyLWJvdW5kYXJ5IGNvcmUtZW50cnkgdGVzdCkiCiAgfQp9", "" + import.meta.url)] : [new URL("../manifest.json", "" + import.meta.url)];
301
304
  for (const candidate of candidates) try {
302
305
  if (!builtins.fs.existsSync(candidate)) continue;
303
306
  const manifest = JSON.parse(builtins.fs.readFileSync(candidate, "utf-8"));