@happyvertical/smrt-core 0.43.10 → 0.44.0

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 (47) hide show
  1. package/agents/generators.md +70 -0
  2. package/agents/schema-paths.md +99 -0
  3. package/dist/generators/custom-action.d.ts.map +1 -1
  4. package/dist/generators/custom-action.js +1 -1
  5. package/dist/generators/custom-action.js.map +1 -1
  6. package/dist/index.js +2 -2
  7. package/dist/knowledge.d.ts +17 -1
  8. package/dist/knowledge.d.ts.map +1 -1
  9. package/dist/knowledge.js +33 -3
  10. package/dist/knowledge.js.map +1 -1
  11. package/dist/manifest/static-manifest.js +1 -1
  12. package/dist/manifest/static-manifest.js.map +1 -1
  13. package/dist/manifest/store.js +1 -1
  14. package/dist/manifest.json +1 -1
  15. package/dist/migrations/differ.d.ts +49 -0
  16. package/dist/migrations/differ.d.ts.map +1 -1
  17. package/dist/migrations/differ.js +220 -4
  18. package/dist/migrations/differ.js.map +1 -1
  19. package/dist/migrations/orchestrate.d.ts +23 -0
  20. package/dist/migrations/orchestrate.d.ts.map +1 -1
  21. package/dist/migrations/orchestrate.js +12 -3
  22. package/dist/migrations/orchestrate.js.map +1 -1
  23. package/dist/registry/types.d.ts +8 -3
  24. package/dist/registry/types.d.ts.map +1 -1
  25. package/dist/schema/foreign-key-ddl.d.ts +7 -0
  26. package/dist/schema/foreign-key-ddl.d.ts.map +1 -1
  27. package/dist/schema/foreign-key-ddl.js +7 -1
  28. package/dist/schema/foreign-key-ddl.js.map +1 -1
  29. package/dist/schema/schema-manager.d.ts +15 -0
  30. package/dist/schema/schema-manager.d.ts.map +1 -1
  31. package/dist/schema/schema-manager.js +52 -9
  32. package/dist/schema/schema-manager.js.map +1 -1
  33. package/dist/schema/types.d.ts +10 -0
  34. package/dist/schema/types.d.ts.map +1 -1
  35. package/dist/schema/uuid-convergence.d.ts +142 -0
  36. package/dist/schema/uuid-convergence.d.ts.map +1 -0
  37. package/dist/schema/uuid-convergence.js +0 -0
  38. package/dist/schema/uuid-convergence.js.map +1 -0
  39. package/dist/smrt-knowledge.json +7 -7
  40. package/dist/utils/scanner-module.d.ts +44 -0
  41. package/dist/utils/scanner-module.d.ts.map +1 -1
  42. package/dist/vite-plugin/index.d.ts +14 -1
  43. package/dist/vite-plugin/index.d.ts.map +1 -1
  44. package/dist/vite-plugin/index.js +54 -2
  45. package/dist/vite-plugin/index.js.map +1 -1
  46. package/dist/vite-plugin.js +3 -2
  47. package/package.json +4 -4
@@ -277,7 +277,7 @@ function loadStaticManifestSyncWithNode() {
277
277
  globals.__smrtManifestStatic = fallbackManifest;
278
278
  return fallbackManifest;
279
279
  }
280
- const candidates = import.meta.url.endsWith(".ts") ? [new URL("data:application/json;base64,ewogICJ2ZXJzaW9uIjogIjEuMC4wIiwKICAidGltZXN0YW1wIjogMCwKICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAicGFja2FnZVZlcnNpb24iOiAiMC40My4xMCIsCiAgIm9iamVjdHMiOiB7CiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDbGFzcyI6IHsKICAgICAgIm5hbWUiOiAic21ydGNsYXNzIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0Q2xhc3MiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENsYXNzIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGNsYXNzZXMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvY2xhc3MudHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAid2l0aERhdGFiYXNlIjogewogICAgICAgICAgIm5hbWUiOiAid2l0aERhdGFiYXNlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRiIiwKICAgICAgICAgICAgICAidHlwZSI6ICJEYXRhYmFzZUludGVyZmFjZSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wZXJhdGlvbiIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRnVuY3Rpb24iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEFpVXNhZ2VTbmFwc2hvdCI6IHsKICAgICAgICAgICJuYW1lIjogImdldEFpVXNhZ2VTbmFwc2hvdCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJBaVVzYWdlU25hcHNob3QgfCB1bmRlZmluZWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVzZXRBaVVzYWdlIjogewogICAgICAgICAgIm5hbWUiOiAicmVzZXRBaVVzYWdlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibGlzdEFpVXNhZ2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0QWlVc2FnZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaVVzYWdlTGlzdE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydEFpVXNhZ2VSZWNvcmRbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic3VtbWFyaXplQWlVc2FnZSI6IHsKICAgICAgICAgICJuYW1lIjogInN1bW1hcml6ZUFpVXNhZ2UiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlVc2FnZVN1bW1hcnlPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFJlY29yZDxzdHJpbmcsIEFpVXNhZ2VTdGF0cz4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlc3Ryb3kiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXN0cm95IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRDbGFzcyIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0Q2xhc3NDb2xsZWN0aW9uIiwKICAgICAgInNjaGVtYSI6IHsKICAgICAgICAidGFibGVOYW1lIjogInNtcnRfY2xhc3NlcyIsCiAgICAgICAgImRkbCI6ICJDUkVBVEUgVEFCTEUgSUYgTk9UIEVYSVNUUyBcInNtcnRfY2xhc3Nlc1wiIChcbiAgXCJpZFwiIFVVSUQgUFJJTUFSWSBLRVkgTk9UIE5VTEwsXG4gIFwic2x1Z1wiIFRFWFQgTk9UIE5VTEwsXG4gIFwiY29udGV4dFwiIFRFWFQgTk9UIE5VTEwgREVGQVVMVCAnJyxcbiAgXCJjcmVhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXAsXG4gIFwidXBkYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wXG4pOyIsCiAgICAgICAgImNvbHVtbnMiOiB7CiAgICAgICAgICAiaWQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlVVSUQiLAogICAgICAgICAgICAicHJpbWFyeUtleSI6IHRydWUsCiAgICAgICAgICAgICJyZWZlcmVuY2VLaW5kIjogImlkIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgInNsdWciOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAiY29udGV4dCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiIgogICAgICAgICAgfSwKICAgICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfSwKICAgICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgImluZGV4ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfY2xhc3Nlc19zbHVnX2NvbnRleHRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgInNsdWciLAogICAgICAgICAgICAgICJjb250ZXh0IgogICAgICAgICAgICBdLAogICAgICAgICAgICAidW5pcXVlIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jbGFzc2VzX2NyZWF0ZWRfYXRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgImNyZWF0ZWRfYXQiCiAgICAgICAgICAgIF0KICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJ2ZXJzaW9uIjogIjIzNGE3MmIwIgogICAgICB9CiAgICB9LAogICAgIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0Q29sbGVjdGlvbiI6IHsKICAgICAgIm5hbWUiOiAic21ydGNvbGxlY3Rpb24iLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRDb2xsZWN0aW9uIiwKICAgICAgInF1YWxpZmllZE5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDb2xsZWN0aW9uIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGNvbGxlY3Rpb25zIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2NvbGxlY3Rpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRMYXRlc3RSZWxhdGVkTGlzdE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydExhdGVzdFJlbGF0ZWRSb3c8U21ydE9iamVjdD5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SXRlbUNsYXNzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SXRlbUNsYXNzIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlNtcnRDb2xsZWN0aW9uSXRlbUNsYXNzPE1vZGVsVHlwZT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidmFsaWRhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJ2YWxpZGF0ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY3JlYXRlIjogewogICAgICAgICAgIm5hbWUiOiAiY3JlYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRDcmVhdGVJbnB1dDxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImluaXRpYWxpemUiOiB7CiAgICAgICAgICAibmFtZSI6ICJpbml0aWFsaXplIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJlbnN1cmVTdG9yYWdlUmVhZHkiOiB7CiAgICAgICAgICAibmFtZSI6ICJlbnN1cmVTdG9yYWdlUmVhZHkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRPbmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kT25lIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZEJ5SWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kQnlJZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGUgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kQWxsIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxpc3RCeUlkcyI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3RCeUlkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZHMiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZ1tdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGVbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpbHRlciIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIHwgU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibGlzdCI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3QiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydExpc3RPcHRpb25zPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydE9iamVjdFtdIHwgUmVjb3JkPHN0cmluZz5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0T3JVcHNlcnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRPclVwc2VydCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkYXRhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRlZmF1bHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldERpZmYiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXREaWZmIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImV4aXN0aW5nIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0T2JqZWN0IHwgUmVjb3JkPHN0cmluZz4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkYXRhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZz4gfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb25GaWVsZERlZmluaXRpb24+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHNTeW5jIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RmllbGRzU3luYyIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCBDb2xsZWN0aW9uRmllbGREZWZpbml0aW9uPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZW5lcmF0ZVNjaGVtYSI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlU2NoZW1hIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlVGFibGVOYW1lIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVUYWJsZU5hbWUiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlbGV0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImRlbGV0ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxib29sZWFuPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjb3VudCI6IHsKICAgICAgICAgICJuYW1lIjogImNvdW50IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZhY2V0cyI6IHsKICAgICAgICAgICJuYW1lIjogImZhY2V0cyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0RmFjZXRPcHRpb25zPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFNtcnRGYWNldFJlc3VsdFtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjb3VudHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJjb3VudHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFNtcnRDb2xsZWN0aW9uQ291bnRzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRTdGlDaGlsZE1ldGFUeXBlIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0U3RpQ2hpbGRNZXRhVHlwZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJzdHJpbmcgfCBudWxsIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInF1ZXJ5IjogewogICAgICAgICAgIm5hbWUiOiAicXVlcnkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAic3FsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJwYXJhbXMiLAogICAgICAgICAgICAgICJ0eXBlIjogImFueSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZW1lbWJlciI6IHsKICAgICAgICAgICJuYW1lIjogInJlbWVtYmVyIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVjYWxsIjogewogICAgICAgICAgIm5hbWUiOiAicmVjYWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2UiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVjYWxsQWxsIjogewogICAgICAgICAgIm5hbWUiOiAicmVjYWxsQWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNYXA8c3RyaW5nPj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0IjogewogICAgICAgICAgIm5hbWUiOiAiZm9yZ2V0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0U2NvcGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXRTY29wZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG51bWJlcj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2VtYW50aWNTZWFyY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJzZW1hbnRpY1NlYXJjaCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJxdWVyeSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPEFycmF5PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhciI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRTaW1pbGFyIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTW9kZWxUeXBlIHwgc3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPEFycmF5PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhclRvRW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZFNpbWlsYXJUb0VtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJlbWJlZGRpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIm51bWJlcltdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPEFycmF5PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZW5lcmF0ZU1pc3NpbmdFbWJlZGRpbmdzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVNaXNzaW5nRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8b2JqZWN0PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENsYXNzIiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydENvbGxlY3Rpb25Db2xsZWN0aW9uIiwKICAgICAgInNjaGVtYSI6IHsKICAgICAgICAidGFibGVOYW1lIjogInNtcnRfY29sbGVjdGlvbnMiLAogICAgICAgICJkZGwiOiAiQ1JFQVRFIFRBQkxFIElGIE5PVCBFWElTVFMgXCJzbXJ0X2NvbGxlY3Rpb25zXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jb2xsZWN0aW9uc19zbHVnX2NvbnRleHRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgInNsdWciLAogICAgICAgICAgICAgICJjb250ZXh0IgogICAgICAgICAgICBdLAogICAgICAgICAgICAidW5pcXVlIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jb2xsZWN0aW9uc19jcmVhdGVkX2F0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJjcmVhdGVkX2F0IgogICAgICAgICAgICBdCiAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAidmVyc2lvbiI6ICIyOTViMGE4MCIKICAgICAgfQogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEhpZXJhcmNoaWNhbCI6IHsKICAgICAgIm5hbWUiOiAic21ydGhpZXJhcmNoaWNhbCIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SGllcmFyY2hpY2FsIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGhpZXJhcmNoaWNhbHMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvaGllcmFyY2hpY2FsLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7CiAgICAgICAgInBhcmVudElkIjogewogICAgICAgICAgInR5cGUiOiAidGV4dCIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZQogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImdldFBhcmVudCI6IHsKICAgICAgICAgICJuYW1lIjogImdldFBhcmVudCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8bnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0Q2hpbGRyZW4iOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRDaGlsZHJlbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2UiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QW5jZXN0b3JzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QW5jZXN0b3JzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXREZXNjZW5kYW50cyI6IHsKICAgICAgICAgICJuYW1lIjogImdldERlc2NlbmRhbnRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRIaWVyYXJjaHkiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRIaWVyYXJjaHkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPEhpZXJhcmNoeVZpZXc+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgIm1vdmVUbyI6IHsKICAgICAgICAgICJuYW1lIjogIm1vdmVUbyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJuZXdQYXJlbnQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyB8IG51bGwiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0KICAgICAgfSwKICAgICAgImRlY29yYXRvckNvbmZpZyI6IHt9LAogICAgICAiZXh0ZW5kcyI6ICJTbXJ0T2JqZWN0IiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0SGllcmFyY2hpY2FsQ29sbGVjdGlvbiIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRKdW5jdGlvbiI6IHsKICAgICAgIm5hbWUiOiAic21ydGp1bmN0aW9uIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0SnVuY3Rpb24iLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEp1bmN0aW9uIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGp1bmN0aW9ucyIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9qdW5jdGlvbi50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjoge30sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJieUxlZnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJieUxlZnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VEl0ZW1bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYnlSaWdodCI6IHsKICAgICAgICAgICJuYW1lIjogImJ5UmlnaHQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25GaWx0ZXJPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImF0dGFjaCI6IHsKICAgICAgICAgICJuYW1lIjogImF0dGFjaCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uQXR0YWNoT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUSXRlbT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGV0YWNoIjogewogICAgICAgICAgIm5hbWUiOiAiZGV0YWNoIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImxlZnRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25GaWx0ZXJPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNldExpbmtzIjogewogICAgICAgICAgIm5hbWUiOiAic2V0TGlua3MiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkcyIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nW10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkF0dGFjaE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRDb2xsZWN0aW9uIiwKICAgICAgImV4dGVuZHNUeXBlQXJnIjogIlRJdGVtIiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydEp1bmN0aW9uIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRKdW5jdGlvbkNvbGxlY3Rpb24iCiAgICB9LAogICAgIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0T2JqZWN0IjogewogICAgICAibmFtZSI6ICJzbXJ0b2JqZWN0IiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0T2JqZWN0IiwKICAgICAgInF1YWxpZmllZE5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRPYmplY3QiLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0b2JqZWN0cyIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9vYmplY3QudHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHsKICAgICAgICAiY3JlYXRlZF9hdCI6IHsKICAgICAgICAgICJ0eXBlIjogImRhdGV0aW1lIiwKICAgICAgICAgICJyZXF1aXJlZCI6IGZhbHNlCiAgICAgICAgfSwKICAgICAgICAidXBkYXRlZF9hdCI6IHsKICAgICAgICAgICJ0eXBlIjogImRhdGV0aW1lIiwKICAgICAgICAgICJyZXF1aXJlZCI6IGZhbHNlCiAgICAgICAgfQogICAgICB9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAibWFya0FzUGVyc2lzdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibWFya0FzUGVyc2lzdGVkIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVxdWlyZUluc2VydE9uU2F2ZSI6IHsKICAgICAgICAgICJuYW1lIjogInJlcXVpcmVJbnNlcnRPblNhdmUiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ3aXRoVHJhbnNhY3Rpb24iOiB7CiAgICAgICAgICAibmFtZSI6ICJ3aXRoVHJhbnNhY3Rpb24iLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3BlcmF0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICJGdW5jdGlvbiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaW5pdGlhbGl6ZSI6IHsKICAgICAgICAgICJuYW1lIjogImluaXRpYWxpemUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxvYWREYXRhRnJvbURiIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZERhdGFGcm9tRGIiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGF0YSIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUmVjb3JkPHN0cmluZz4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0RmllbGRzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RmllbGRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxhbnk+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInRvSlNPTiI6IHsKICAgICAgICAgICJuYW1lIjogInRvSlNPTiIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidG9QbGFpbk9iamVjdCI6IHsKICAgICAgICAgICJuYW1lIjogInRvUGxhaW5PYmplY3QiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUmVjb3JkPHN0cmluZz4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidG9QdWJsaWNKU09OIjogewogICAgICAgICAgIm5hbWUiOiAidG9QdWJsaWNKU09OIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJQdWJsaWNKc29uT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUmVjb3JkPHN0cmluZz4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRJZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRTbHVnIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0U2x1ZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRTYXZlZElkIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0U2F2ZWRJZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpc1NhdmVkIjogewogICAgICAgICAgIm5hbWUiOiAiaXNTYXZlZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzYXZlIjogewogICAgICAgICAgIm5hbWUiOiAic2F2ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0U2F2ZU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjbGFpbVJldmlzaW9uIjogewogICAgICAgICAgIm5hbWUiOiAiY2xhaW1SZXZpc2lvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJleHBlY3RlZFVwZGF0ZWRBdCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRGF0ZSB8IHN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2UiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY2xhc3NpZnlDb25zdHJhaW50RXJyb3IiOiB7CiAgICAgICAgICAibmFtZSI6ICJjbGFzc2lmeUNvbnN0cmFpbnRFcnJvciIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibWVzc2FnZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiJ3VuaXF1ZScgfCAnbm90X251bGwnIHwgbnVsbCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiB0cnVlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxvYWRGcm9tSWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkRnJvbUlkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxvYWRGcm9tU2x1ZyI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWRGcm9tU2x1ZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpcyI6IHsKICAgICAgICAgICJuYW1lIjogImlzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImNyaXRlcmlhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaU9wZXJhdGlvbk9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkbyI6IHsKICAgICAgICAgICJuYW1lIjogImRvIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImluc3RydWN0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlPcGVyYXRpb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVzY3JpYmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXNjcmliZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaU9wZXJhdGlvbk9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZWxldGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZWxldGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzUmVsYXRlZExvYWRlZCI6IHsKICAgICAgICAgICJuYW1lIjogImlzUmVsYXRlZExvYWRlZCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJib29sZWFuIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgIl9zZXRMb2FkZWRSZWxhdGlvbnNoaXAiOiB7CiAgICAgICAgICAibmFtZSI6ICJfc2V0TG9hZGVkUmVsYXRpb25zaGlwIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInZhbHVlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJhbnkiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxvYWRSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZFJlbGF0ZWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJMb2FkUmVsYXRlZE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkUmVsYXRlZE1hbnkiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkUmVsYXRlZE1hbnkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJMb2FkUmVsYXRlZE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFJlbGF0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTG9hZFJlbGF0ZWRPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QXZhaWxhYmxlVG9vbHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRBdmFpbGFibGVUb29scyIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJBSVRvb2xbXSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJleGVjdXRlVG9vbENhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJleGVjdXRlVG9vbENhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAidG9vbENhbGwiLAogICAgICAgICAgICAgICJ0eXBlIjogIlRvb2xDYWxsIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUb29sQ2FsbFJlc3VsdD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVtZW1iZXIiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZW1lbWJlciIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbEFsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TWFwPHN0cmluZz4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZvcmdldCI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZvcmdldFNjb3BlIjogewogICAgICAgICAgIm5hbWUiOiAiZm9yZ2V0U2NvcGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXI+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJHZW5lcmF0ZUVtYmVkZGluZ3NPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEVtYmVkZGluZyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEVtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm1vZGVsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8bnVtYmVyW10gfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJoYXNTdGFsZUVtYmVkZGluZ3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJoYXNTdGFsZUVtYmVkZGluZ3MiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGJvb2xlYW4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsZWFyRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImNsZWFyRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRDbGFzcyIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRPYmplY3QiLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydE9iamVjdENvbGxlY3Rpb24iLAogICAgICAic2NoZW1hIjogewogICAgICAgICJ0YWJsZU5hbWUiOiAic21ydF9vYmplY3RzIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9vYmplY3RzXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9vYmplY3RzX3NsdWdfY29udGV4dF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAic2x1ZyIsCiAgICAgICAgICAgICAgImNvbnRleHQiCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1bmlxdWUiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X29iamVjdHNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjA0YmYzYzQiCiAgICAgIH0KICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0cG9seW1vcnBoaWNhc3NvY2lhdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0cG9seW1vcnBoaWNhc3NvY2lhdGlvbnMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvcG9seW1vcnBoaWMtYXNzb2NpYXRpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHsKICAgICAgICAibWV0YVR5cGUiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJtZXRhSWQiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJyb2xlIjogewogICAgICAgICAgInR5cGUiOiAidGV4dCIsCiAgICAgICAgICAicmVxdWlyZWQiOiB0cnVlLAogICAgICAgICAgIl9tZXRhIjogewogICAgICAgICAgICAicmVxdWlyZWQiOiB0cnVlCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAic29ydE9yZGVyIjogewogICAgICAgICAgInR5cGUiOiAiaW50ZWdlciIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZSwKICAgICAgICAgICJkZWZhdWx0IjogMAogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImh5ZHJhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJoeWRyYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRPYmplY3QiLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbkNvbGxlY3Rpb24iLAogICAgICAidmFsaWRhdGlvblJ1bGVzIjogWwogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJtZXRhVHlwZSIsCiAgICAgICAgICAicnVsZSI6ICJyZXF1aXJlZCIsCiAgICAgICAgICAiZmllbGRUeXBlIjogInRleHQiCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAiZmllbGQiOiAibWV0YUlkIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJyb2xlIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9CiAgICAgIF0KICAgIH0KICB9LAogICJtb2R1bGVUeXBlIjogInNtcnQiCn0=", "" + import.meta.url), new URL("data:application/json;base64,ewogICJ2ZXJzaW9uIjogIjEuMC4wIiwKICAidGltZXN0YW1wIjogMCwKICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAicGFja2FnZVZlcnNpb24iOiAiMC40My4xMCIsCiAgIm9iamVjdHMiOiB7CiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDbGFzcyI6IHsKICAgICAgIm5hbWUiOiAic21ydGNsYXNzIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0Q2xhc3MiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENsYXNzIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGNsYXNzZXMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvY2xhc3MudHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAid2l0aERhdGFiYXNlIjogewogICAgICAgICAgIm5hbWUiOiAid2l0aERhdGFiYXNlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRiIiwKICAgICAgICAgICAgICAidHlwZSI6ICJEYXRhYmFzZUludGVyZmFjZSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wZXJhdGlvbiIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRnVuY3Rpb24iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEFpVXNhZ2VTbmFwc2hvdCI6IHsKICAgICAgICAgICJuYW1lIjogImdldEFpVXNhZ2VTbmFwc2hvdCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJBaVVzYWdlU25hcHNob3QgfCB1bmRlZmluZWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVzZXRBaVVzYWdlIjogewogICAgICAgICAgIm5hbWUiOiAicmVzZXRBaVVzYWdlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibGlzdEFpVXNhZ2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0QWlVc2FnZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaVVzYWdlTGlzdE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydEFpVXNhZ2VSZWNvcmRbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic3VtbWFyaXplQWlVc2FnZSI6IHsKICAgICAgICAgICJuYW1lIjogInN1bW1hcml6ZUFpVXNhZ2UiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlVc2FnZVN1bW1hcnlPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFJlY29yZDxzdHJpbmcsIEFpVXNhZ2VTdGF0cz4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlc3Ryb3kiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXN0cm95IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRDbGFzcyIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0Q2xhc3NDb2xsZWN0aW9uIiwKICAgICAgInNjaGVtYSI6IHsKICAgICAgICAidGFibGVOYW1lIjogInNtcnRfY2xhc3NlcyIsCiAgICAgICAgImRkbCI6ICJDUkVBVEUgVEFCTEUgSUYgTk9UIEVYSVNUUyBcInNtcnRfY2xhc3Nlc1wiIChcbiAgXCJpZFwiIFVVSUQgUFJJTUFSWSBLRVkgTk9UIE5VTEwsXG4gIFwic2x1Z1wiIFRFWFQgTk9UIE5VTEwsXG4gIFwiY29udGV4dFwiIFRFWFQgTk9UIE5VTEwgREVGQVVMVCAnJyxcbiAgXCJjcmVhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXAsXG4gIFwidXBkYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wXG4pOyIsCiAgICAgICAgImNvbHVtbnMiOiB7CiAgICAgICAgICAiaWQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlVVSUQiLAogICAgICAgICAgICAicHJpbWFyeUtleSI6IHRydWUsCiAgICAgICAgICAgICJyZWZlcmVuY2VLaW5kIjogImlkIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgInNsdWciOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAiY29udGV4dCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiIgogICAgICAgICAgfSwKICAgICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfSwKICAgICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgImluZGV4ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfY2xhc3Nlc19zbHVnX2NvbnRleHRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgInNsdWciLAogICAgICAgICAgICAgICJjb250ZXh0IgogICAgICAgICAgICBdLAogICAgICAgICAgICAidW5pcXVlIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jbGFzc2VzX2NyZWF0ZWRfYXRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgImNyZWF0ZWRfYXQiCiAgICAgICAgICAgIF0KICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJ2ZXJzaW9uIjogIjIzNGE3MmIwIgogICAgICB9CiAgICB9LAogICAgIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0Q29sbGVjdGlvbiI6IHsKICAgICAgIm5hbWUiOiAic21ydGNvbGxlY3Rpb24iLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRDb2xsZWN0aW9uIiwKICAgICAgInF1YWxpZmllZE5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDb2xsZWN0aW9uIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGNvbGxlY3Rpb25zIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2NvbGxlY3Rpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRMYXRlc3RSZWxhdGVkTGlzdE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydExhdGVzdFJlbGF0ZWRSb3c8U21ydE9iamVjdD5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SXRlbUNsYXNzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SXRlbUNsYXNzIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlNtcnRDb2xsZWN0aW9uSXRlbUNsYXNzPE1vZGVsVHlwZT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidmFsaWRhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJ2YWxpZGF0ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY3JlYXRlIjogewogICAgICAgICAgIm5hbWUiOiAiY3JlYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRDcmVhdGVJbnB1dDxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImluaXRpYWxpemUiOiB7CiAgICAgICAgICAibmFtZSI6ICJpbml0aWFsaXplIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJlbnN1cmVTdG9yYWdlUmVhZHkiOiB7CiAgICAgICAgICAibmFtZSI6ICJlbnN1cmVTdG9yYWdlUmVhZHkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRPbmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kT25lIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZEJ5SWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kQnlJZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGUgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kQWxsIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxpc3RCeUlkcyI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3RCeUlkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZHMiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZ1tdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGVbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpbHRlciIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIHwgU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibGlzdCI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3QiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydExpc3RPcHRpb25zPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydE9iamVjdFtdIHwgUmVjb3JkPHN0cmluZz5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0T3JVcHNlcnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRPclVwc2VydCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkYXRhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRlZmF1bHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldERpZmYiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXREaWZmIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImV4aXN0aW5nIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0T2JqZWN0IHwgUmVjb3JkPHN0cmluZz4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkYXRhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZz4gfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb25GaWVsZERlZmluaXRpb24+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHNTeW5jIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RmllbGRzU3luYyIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCBDb2xsZWN0aW9uRmllbGREZWZpbml0aW9uPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZW5lcmF0ZVNjaGVtYSI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlU2NoZW1hIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlVGFibGVOYW1lIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVUYWJsZU5hbWUiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlbGV0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImRlbGV0ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxib29sZWFuPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjb3VudCI6IHsKICAgICAgICAgICJuYW1lIjogImNvdW50IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZhY2V0cyI6IHsKICAgICAgICAgICJuYW1lIjogImZhY2V0cyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0RmFjZXRPcHRpb25zPE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFNtcnRGYWNldFJlc3VsdFtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjb3VudHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJjb3VudHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFNtcnRDb2xsZWN0aW9uQ291bnRzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRTdGlDaGlsZE1ldGFUeXBlIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0U3RpQ2hpbGRNZXRhVHlwZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJzdHJpbmcgfCBudWxsIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInF1ZXJ5IjogewogICAgICAgICAgIm5hbWUiOiAicXVlcnkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAic3FsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJwYXJhbXMiLAogICAgICAgICAgICAgICJ0eXBlIjogImFueSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZW1lbWJlciI6IHsKICAgICAgICAgICJuYW1lIjogInJlbWVtYmVyIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVjYWxsIjogewogICAgICAgICAgIm5hbWUiOiAicmVjYWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2UiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVjYWxsQWxsIjogewogICAgICAgICAgIm5hbWUiOiAicmVjYWxsQWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNYXA8c3RyaW5nPj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0IjogewogICAgICAgICAgIm5hbWUiOiAiZm9yZ2V0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0U2NvcGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXRTY29wZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG51bWJlcj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2VtYW50aWNTZWFyY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJzZW1hbnRpY1NlYXJjaCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJxdWVyeSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPEFycmF5PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhciI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRTaW1pbGFyIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTW9kZWxUeXBlIHwgc3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPEFycmF5PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhclRvRW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZFNpbWlsYXJUb0VtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJlbWJlZGRpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIm51bWJlcltdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPEFycmF5PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZW5lcmF0ZU1pc3NpbmdFbWJlZGRpbmdzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVNaXNzaW5nRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8b2JqZWN0PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENsYXNzIiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydENvbGxlY3Rpb25Db2xsZWN0aW9uIiwKICAgICAgInNjaGVtYSI6IHsKICAgICAgICAidGFibGVOYW1lIjogInNtcnRfY29sbGVjdGlvbnMiLAogICAgICAgICJkZGwiOiAiQ1JFQVRFIFRBQkxFIElGIE5PVCBFWElTVFMgXCJzbXJ0X2NvbGxlY3Rpb25zXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jb2xsZWN0aW9uc19zbHVnX2NvbnRleHRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgInNsdWciLAogICAgICAgICAgICAgICJjb250ZXh0IgogICAgICAgICAgICBdLAogICAgICAgICAgICAidW5pcXVlIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jb2xsZWN0aW9uc19jcmVhdGVkX2F0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJjcmVhdGVkX2F0IgogICAgICAgICAgICBdCiAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAidmVyc2lvbiI6ICIyOTViMGE4MCIKICAgICAgfQogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEhpZXJhcmNoaWNhbCI6IHsKICAgICAgIm5hbWUiOiAic21ydGhpZXJhcmNoaWNhbCIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SGllcmFyY2hpY2FsIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGhpZXJhcmNoaWNhbHMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvaGllcmFyY2hpY2FsLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7CiAgICAgICAgInBhcmVudElkIjogewogICAgICAgICAgInR5cGUiOiAidGV4dCIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZQogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImdldFBhcmVudCI6IHsKICAgICAgICAgICJuYW1lIjogImdldFBhcmVudCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8bnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0Q2hpbGRyZW4iOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRDaGlsZHJlbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2UiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QW5jZXN0b3JzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QW5jZXN0b3JzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXREZXNjZW5kYW50cyI6IHsKICAgICAgICAgICJuYW1lIjogImdldERlc2NlbmRhbnRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRIaWVyYXJjaHkiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRIaWVyYXJjaHkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPEhpZXJhcmNoeVZpZXc+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgIm1vdmVUbyI6IHsKICAgICAgICAgICJuYW1lIjogIm1vdmVUbyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJuZXdQYXJlbnQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyB8IG51bGwiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0KICAgICAgfSwKICAgICAgImRlY29yYXRvckNvbmZpZyI6IHt9LAogICAgICAiZXh0ZW5kcyI6ICJTbXJ0T2JqZWN0IiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0SGllcmFyY2hpY2FsQ29sbGVjdGlvbiIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRKdW5jdGlvbiI6IHsKICAgICAgIm5hbWUiOiAic21ydGp1bmN0aW9uIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0SnVuY3Rpb24iLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEp1bmN0aW9uIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGp1bmN0aW9ucyIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9qdW5jdGlvbi50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjoge30sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJieUxlZnQiOiB7CiAgICAgICAgICAibmFtZSI6ICJieUxlZnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VEl0ZW1bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYnlSaWdodCI6IHsKICAgICAgICAgICJuYW1lIjogImJ5UmlnaHQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25GaWx0ZXJPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImF0dGFjaCI6IHsKICAgICAgICAgICJuYW1lIjogImF0dGFjaCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uQXR0YWNoT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUSXRlbT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGV0YWNoIjogewogICAgICAgICAgIm5hbWUiOiAiZGV0YWNoIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImxlZnRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25GaWx0ZXJPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNldExpbmtzIjogewogICAgICAgICAgIm5hbWUiOiAic2V0TGlua3MiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkcyIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nW10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkF0dGFjaE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRDb2xsZWN0aW9uIiwKICAgICAgImV4dGVuZHNUeXBlQXJnIjogIlRJdGVtIiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydEp1bmN0aW9uIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRKdW5jdGlvbkNvbGxlY3Rpb24iCiAgICB9LAogICAgIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0T2JqZWN0IjogewogICAgICAibmFtZSI6ICJzbXJ0b2JqZWN0IiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0T2JqZWN0IiwKICAgICAgInF1YWxpZmllZE5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRPYmplY3QiLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0b2JqZWN0cyIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9vYmplY3QudHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHsKICAgICAgICAiY3JlYXRlZF9hdCI6IHsKICAgICAgICAgICJ0eXBlIjogImRhdGV0aW1lIiwKICAgICAgICAgICJyZXF1aXJlZCI6IGZhbHNlCiAgICAgICAgfSwKICAgICAgICAidXBkYXRlZF9hdCI6IHsKICAgICAgICAgICJ0eXBlIjogImRhdGV0aW1lIiwKICAgICAgICAgICJyZXF1aXJlZCI6IGZhbHNlCiAgICAgICAgfQogICAgICB9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAibWFya0FzUGVyc2lzdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibWFya0FzUGVyc2lzdGVkIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVxdWlyZUluc2VydE9uU2F2ZSI6IHsKICAgICAgICAgICJuYW1lIjogInJlcXVpcmVJbnNlcnRPblNhdmUiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ3aXRoVHJhbnNhY3Rpb24iOiB7CiAgICAgICAgICAibmFtZSI6ICJ3aXRoVHJhbnNhY3Rpb24iLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3BlcmF0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICJGdW5jdGlvbiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaW5pdGlhbGl6ZSI6IHsKICAgICAgICAgICJuYW1lIjogImluaXRpYWxpemUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxvYWREYXRhRnJvbURiIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZERhdGFGcm9tRGIiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGF0YSIsCiAgICAgICAgICAgICAgInR5cGUiOiAiUmVjb3JkPHN0cmluZz4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0RmllbGRzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RmllbGRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxhbnk+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInRvSlNPTiI6IHsKICAgICAgICAgICJuYW1lIjogInRvSlNPTiIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidG9QbGFpbk9iamVjdCI6IHsKICAgICAgICAgICJuYW1lIjogInRvUGxhaW5PYmplY3QiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUmVjb3JkPHN0cmluZz4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidG9QdWJsaWNKU09OIjogewogICAgICAgICAgIm5hbWUiOiAidG9QdWJsaWNKU09OIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJQdWJsaWNKc29uT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUmVjb3JkPHN0cmluZz4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRJZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRTbHVnIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0U2x1ZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRTYXZlZElkIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0U2F2ZWRJZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpc1NhdmVkIjogewogICAgICAgICAgIm5hbWUiOiAiaXNTYXZlZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzYXZlIjogewogICAgICAgICAgIm5hbWUiOiAic2F2ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0U2F2ZU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjbGFpbVJldmlzaW9uIjogewogICAgICAgICAgIm5hbWUiOiAiY2xhaW1SZXZpc2lvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJleHBlY3RlZFVwZGF0ZWRBdCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRGF0ZSB8IHN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2UiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY2xhc3NpZnlDb25zdHJhaW50RXJyb3IiOiB7CiAgICAgICAgICAibmFtZSI6ICJjbGFzc2lmeUNvbnN0cmFpbnRFcnJvciIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibWVzc2FnZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiJ3VuaXF1ZScgfCAnbm90X251bGwnIHwgbnVsbCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiB0cnVlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxvYWRGcm9tSWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkRnJvbUlkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxvYWRGcm9tU2x1ZyI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWRGcm9tU2x1ZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpcyI6IHsKICAgICAgICAgICJuYW1lIjogImlzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImNyaXRlcmlhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaU9wZXJhdGlvbk9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkbyI6IHsKICAgICAgICAgICJuYW1lIjogImRvIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImluc3RydWN0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlPcGVyYXRpb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVzY3JpYmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXNjcmliZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaU9wZXJhdGlvbk9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZWxldGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZWxldGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzUmVsYXRlZExvYWRlZCI6IHsKICAgICAgICAgICJuYW1lIjogImlzUmVsYXRlZExvYWRlZCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJib29sZWFuIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgIl9zZXRMb2FkZWRSZWxhdGlvbnNoaXAiOiB7CiAgICAgICAgICAibmFtZSI6ICJfc2V0TG9hZGVkUmVsYXRpb25zaGlwIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInZhbHVlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJhbnkiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxvYWRSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZFJlbGF0ZWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJMb2FkUmVsYXRlZE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkUmVsYXRlZE1hbnkiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkUmVsYXRlZE1hbnkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJMb2FkUmVsYXRlZE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFJlbGF0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTG9hZFJlbGF0ZWRPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QXZhaWxhYmxlVG9vbHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRBdmFpbGFibGVUb29scyIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJBSVRvb2xbXSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJleGVjdXRlVG9vbENhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJleGVjdXRlVG9vbENhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAidG9vbENhbGwiLAogICAgICAgICAgICAgICJ0eXBlIjogIlRvb2xDYWxsIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUb29sQ2FsbFJlc3VsdD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVtZW1iZXIiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZW1lbWJlciIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbEFsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TWFwPHN0cmluZz4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZvcmdldCI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZvcmdldFNjb3BlIjogewogICAgICAgICAgIm5hbWUiOiAiZm9yZ2V0U2NvcGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXI+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJHZW5lcmF0ZUVtYmVkZGluZ3NPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEVtYmVkZGluZyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEVtYmVkZGluZyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm1vZGVsIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8bnVtYmVyW10gfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJoYXNTdGFsZUVtYmVkZGluZ3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJoYXNTdGFsZUVtYmVkZGluZ3MiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGJvb2xlYW4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsZWFyRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImNsZWFyRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRDbGFzcyIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRPYmplY3QiLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydE9iamVjdENvbGxlY3Rpb24iLAogICAgICAic2NoZW1hIjogewogICAgICAgICJ0YWJsZU5hbWUiOiAic21ydF9vYmplY3RzIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9vYmplY3RzXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9vYmplY3RzX3NsdWdfY29udGV4dF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAic2x1ZyIsCiAgICAgICAgICAgICAgImNvbnRleHQiCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1bmlxdWUiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X29iamVjdHNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjA0YmYzYzQiCiAgICAgIH0KICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0cG9seW1vcnBoaWNhc3NvY2lhdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0cG9seW1vcnBoaWNhc3NvY2lhdGlvbnMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvcG9seW1vcnBoaWMtYXNzb2NpYXRpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHsKICAgICAgICAibWV0YVR5cGUiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJtZXRhSWQiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJyb2xlIjogewogICAgICAgICAgInR5cGUiOiAidGV4dCIsCiAgICAgICAgICAicmVxdWlyZWQiOiB0cnVlLAogICAgICAgICAgIl9tZXRhIjogewogICAgICAgICAgICAicmVxdWlyZWQiOiB0cnVlCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAic29ydE9yZGVyIjogewogICAgICAgICAgInR5cGUiOiAiaW50ZWdlciIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZSwKICAgICAgICAgICJkZWZhdWx0IjogMAogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImh5ZHJhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJoeWRyYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRPYmplY3QiLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbkNvbGxlY3Rpb24iLAogICAgICAidmFsaWRhdGlvblJ1bGVzIjogWwogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJtZXRhVHlwZSIsCiAgICAgICAgICAicnVsZSI6ICJyZXF1aXJlZCIsCiAgICAgICAgICAiZmllbGRUeXBlIjogInRleHQiCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAiZmllbGQiOiAibWV0YUlkIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJyb2xlIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9CiAgICAgIF0KICAgIH0KICB9LAogICJtb2R1bGVUeXBlIjogInNtcnQiCn0=", "" + import.meta.url)] : [new URL("../manifest.json", "" + import.meta.url)];
280
+ const candidates = import.meta.url.endsWith(".ts") ? [new URL("data:application/json;base64,ewogICJ2ZXJzaW9uIjogIjEuMC4wIiwKICAidGltZXN0YW1wIjogMCwKICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAicGFja2FnZVZlcnNpb24iOiAiMC40NC4wIiwKICAib2JqZWN0cyI6IHsKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENsYXNzIjogewogICAgICAibmFtZSI6ICJzbXJ0Y2xhc3MiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRDbGFzcyIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0Q2xhc3MiLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0Y2xhc3NlcyIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9jbGFzcy50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjoge30sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJ3aXRoRGF0YWJhc2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJ3aXRoRGF0YWJhc2UiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGIiLAogICAgICAgICAgICAgICJ0eXBlIjogIkRhdGFiYXNlSW50ZXJmYWNlIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3BlcmF0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICJGdW5jdGlvbiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QWlVc2FnZVNuYXBzaG90IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QWlVc2FnZVNuYXBzaG90IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIkFpVXNhZ2VTbmFwc2hvdCB8IHVuZGVmaW5lZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZXNldEFpVXNhZ2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZXNldEFpVXNhZ2UiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsaXN0QWlVc2FnZSI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3RBaVVzYWdlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpVXNhZ2VMaXN0T3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxTbXJ0QWlVc2FnZVJlY29yZFtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzdW1tYXJpemVBaVVzYWdlIjogewogICAgICAgICAgIm5hbWUiOiAic3VtbWFyaXplQWlVc2FnZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaVVzYWdlU3VtbWFyeU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgQWlVc2FnZVN0YXRzPj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVzdHJveSI6IHsKICAgICAgICAgICJuYW1lIjogImRlc3Ryb3kiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydENsYXNzIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRDbGFzc0NvbGxlY3Rpb24iLAogICAgICAic2NoZW1hIjogewogICAgICAgICJ0YWJsZU5hbWUiOiAic21ydF9jbGFzc2VzIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9jbGFzc2VzXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jbGFzc2VzX3NsdWdfY29udGV4dF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAic2x1ZyIsCiAgICAgICAgICAgICAgImNvbnRleHQiCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1bmlxdWUiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X2NsYXNzZXNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjM0YTcyYjAiCiAgICAgIH0KICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDb2xsZWN0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0Y29sbGVjdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENvbGxlY3Rpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0Y29sbGVjdGlvbnMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvY29sbGVjdGlvbi50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjoge30sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJsaXN0V2l0aExhdGVzdFJlbGF0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0V2l0aExhdGVzdFJlbGF0ZWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydExhdGVzdFJlbGF0ZWRMaXN0T3B0aW9uczxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxTbXJ0TGF0ZXN0UmVsYXRlZFJvdzxTbXJ0T2JqZWN0PltdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRJdGVtQ2xhc3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRJdGVtQ2xhc3MiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiU21ydENvbGxlY3Rpb25JdGVtQ2xhc3M8TW9kZWxUeXBlPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ2YWxpZGF0ZSI6IHsKICAgICAgICAgICJuYW1lIjogInZhbGlkYXRlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjcmVhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJjcmVhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydENyZWF0ZUlucHV0PE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaW5pdGlhbGl6ZSI6IHsKICAgICAgICAgICJuYW1lIjogImluaXRpYWxpemUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImVuc3VyZVN0b3JhZ2VSZWFkeSI6IHsKICAgICAgICAgICJuYW1lIjogImVuc3VyZVN0b3JhZ2VSZWFkeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZE9uZSI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRPbmUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGUgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kQnlJZCI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRCeUlkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImlkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kQWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGVbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibGlzdEJ5SWRzIjogewogICAgICAgICAgIm5hbWUiOiAibGlzdEJ5SWRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImlkcyIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nW10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmlsdGVyIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmcgfCBTbXJ0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGUgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsaXN0IjogewogICAgICAgICAgIm5hbWUiOiAibGlzdCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0TGlzdE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxTbXJ0T2JqZWN0W10gfCBSZWNvcmQ8c3RyaW5nPltdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRPclVwc2VydCI6IHsKICAgICAgICAgICJuYW1lIjogImdldE9yVXBzZXJ0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmc+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGVmYXVsdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmc+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0RGlmZiI6IHsKICAgICAgICAgICJuYW1lIjogImdldERpZmYiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZXhpc3RpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRPYmplY3QgfCBSZWNvcmQ8c3RyaW5nPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmc+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxSZWNvcmQ8c3RyaW5nPiB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkcyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEZpZWxkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgQ29sbGVjdGlvbkZpZWxkRGVmaW5pdGlvbj4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkc1N5bmMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHNTeW5jIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb25GaWVsZERlZmluaXRpb24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlU2NoZW1hIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVTY2hlbWEiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVUYWJsZU5hbWUiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZW5lcmF0ZVRhYmxlTmFtZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVsZXRlIjogewogICAgICAgICAgIm5hbWUiOiAiZGVsZXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImlkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGJvb2xlYW4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNvdW50IjogewogICAgICAgICAgIm5hbWUiOiAiY291bnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmFjZXRzIjogewogICAgICAgICAgIm5hbWUiOiAiZmFjZXRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRGYWNldE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydEZhY2V0UmVzdWx0W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNvdW50cyI6IHsKICAgICAgICAgICJuYW1lIjogImNvdW50cyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydENvbGxlY3Rpb25Db3VudHM+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFN0aUNoaWxkTWV0YVR5cGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTdGlDaGlsZE1ldGFUeXBlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInN0cmluZyB8IG51bGwiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicXVlcnkiOiB7CiAgICAgICAgICAibmFtZSI6ICJxdWVyeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJzcWwiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInBhcmFtcyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiYW55IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlbWVtYmVyIjogewogICAgICAgICAgIm5hbWUiOiAicmVtZW1iZXIiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGxBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGxBbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1hcDxzdHJpbmc+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXRTY29wZSI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldFNjb3BlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8bnVtYmVyPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzZW1hbnRpY1NlYXJjaCI6IHsKICAgICAgICAgICJuYW1lIjogInNlbWFudGljU2VhcmNoIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInF1ZXJ5IiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8QXJyYXk+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRTaW1pbGFyIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZFNpbWlsYXIiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJNb2RlbFR5cGUgfCBzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8QXJyYXk+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRTaW1pbGFyVG9FbWJlZGRpbmciOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kU2ltaWxhclRvRW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImVtYmVkZGluZyIsCiAgICAgICAgICAgICAgInR5cGUiOiAibnVtYmVyW10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8QXJyYXk+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlTWlzc2luZ0VtYmVkZGluZ3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZW5lcmF0ZU1pc3NpbmdFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxvYmplY3Q+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0KICAgICAgfSwKICAgICAgImRlY29yYXRvckNvbmZpZyI6IHt9LAogICAgICAiZXh0ZW5kcyI6ICJTbXJ0Q2xhc3MiLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0Q29sbGVjdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0Q29sbGVjdGlvbkNvbGxlY3Rpb24iLAogICAgICAic2NoZW1hIjogewogICAgICAgICJ0YWJsZU5hbWUiOiAic21ydF9jb2xsZWN0aW9ucyIsCiAgICAgICAgImRkbCI6ICJDUkVBVEUgVEFCTEUgSUYgTk9UIEVYSVNUUyBcInNtcnRfY29sbGVjdGlvbnNcIiAoXG4gIFwiaWRcIiBVVUlEIFBSSU1BUlkgS0VZIE5PVCBOVUxMLFxuICBcInNsdWdcIiBURVhUIE5PVCBOVUxMLFxuICBcImNvbnRleHRcIiBURVhUIE5PVCBOVUxMIERFRkFVTFQgJycsXG4gIFwiY3JlYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wLFxuICBcInVwZGF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcFxuKTsiLAogICAgICAgICJjb2x1bW5zIjogewogICAgICAgICAgImlkIjogewogICAgICAgICAgICAidHlwZSI6ICJVVUlEIiwKICAgICAgICAgICAgInByaW1hcnlLZXkiOiB0cnVlLAogICAgICAgICAgICAicmVmZXJlbmNlS2luZCI6ICJpZCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJzbHVnIjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgImNvbnRleHQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogIiIKICAgICAgICAgIH0sCiAgICAgICAgICAiY3JlYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0sCiAgICAgICAgICAidXBkYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJpbmRleGVzIjogWwogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X2NvbGxlY3Rpb25zX3NsdWdfY29udGV4dF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAic2x1ZyIsCiAgICAgICAgICAgICAgImNvbnRleHQiCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1bmlxdWUiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X2NvbGxlY3Rpb25zX2NyZWF0ZWRfYXRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgImNyZWF0ZWRfYXQiCiAgICAgICAgICAgIF0KICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJ2ZXJzaW9uIjogIjI5NWIwYTgwIgogICAgICB9CiAgICB9LAogICAgIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SGllcmFyY2hpY2FsIjogewogICAgICAibmFtZSI6ICJzbXJ0aGllcmFyY2hpY2FsIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0SGllcmFyY2hpY2FsIiwKICAgICAgInF1YWxpZmllZE5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRIaWVyYXJjaGljYWwiLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0aGllcmFyY2hpY2FscyIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9oaWVyYXJjaGljYWwudHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHsKICAgICAgICAicGFyZW50SWQiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IGZhbHNlCiAgICAgICAgfQogICAgICB9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAiZ2V0UGFyZW50IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0UGFyZW50IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRDaGlsZHJlbiI6IHsKICAgICAgICAgICJuYW1lIjogImdldENoaWxkcmVuIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRBbmNlc3RvcnMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRBbmNlc3RvcnMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldERlc2NlbmRhbnRzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RGVzY2VuZGFudHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEhpZXJhcmNoeSI6IHsKICAgICAgICAgICJuYW1lIjogImdldEhpZXJhcmNoeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8SGllcmFyY2h5Vmlldz4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibW92ZVRvIjogewogICAgICAgICAgIm5hbWUiOiAibW92ZVRvIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm5ld1BhcmVudCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIHwgbnVsbCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRPYmplY3QiLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0SGllcmFyY2hpY2FsIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRIaWVyYXJjaGljYWxDb2xsZWN0aW9uIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEp1bmN0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0anVuY3Rpb24iLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRKdW5jdGlvbiIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SnVuY3Rpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0anVuY3Rpb25zIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2p1bmN0aW9uLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7fSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImJ5TGVmdCI6IHsKICAgICAgICAgICJuYW1lIjogImJ5TGVmdCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uRmlsdGVyT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUSXRlbVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJieVJpZ2h0IjogewogICAgICAgICAgIm5hbWUiOiAiYnlSaWdodCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VEl0ZW1bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYXR0YWNoIjogewogICAgICAgICAgIm5hbWUiOiAiYXR0YWNoIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImxlZnRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25BdHRhY2hPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZXRhY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXRhY2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2V0TGlua3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJzZXRMaW5rcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmdbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uQXR0YWNoT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAiZXh0ZW5kc1R5cGVBcmciOiAiVEl0ZW0iLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0SnVuY3Rpb24iLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydEp1bmN0aW9uQ29sbGVjdGlvbiIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRPYmplY3QiOiB7CiAgICAgICJuYW1lIjogInNtcnRvYmplY3QiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRPYmplY3QiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydE9iamVjdCIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRvYmplY3RzIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL29iamVjdC50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgInR5cGUiOiAiZGF0ZXRpbWUiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9LAogICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgInR5cGUiOiAiZGF0ZXRpbWUiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJtYXJrQXNQZXJzaXN0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJtYXJrQXNQZXJzaXN0ZWQiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZXF1aXJlSW5zZXJ0T25TYXZlIjogewogICAgICAgICAgIm5hbWUiOiAicmVxdWlyZUluc2VydE9uU2F2ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgIndpdGhUcmFuc2FjdGlvbiI6IHsKICAgICAgICAgICJuYW1lIjogIndpdGhUcmFuc2FjdGlvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcGVyYXRpb24iLAogICAgICAgICAgICAgICJ0eXBlIjogIkZ1bmN0aW9uIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbml0aWFsaXplIjogewogICAgICAgICAgIm5hbWUiOiAiaW5pdGlhbGl6ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2UiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZERhdGFGcm9tRGIiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkRGF0YUZyb21EYiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkYXRhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidG9KU09OIjogewogICAgICAgICAgIm5hbWUiOiAidG9KU09OIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b1BsYWluT2JqZWN0IjogewogICAgICAgICAgIm5hbWUiOiAidG9QbGFpbk9iamVjdCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b1B1YmxpY0pTT04iOiB7CiAgICAgICAgICAibmFtZSI6ICJ0b1B1YmxpY0pTT04iLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlB1YmxpY0pzb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRJZCI6IHsKICAgICAgICAgICJuYW1lIjogImdldElkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFNsdWciOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTbHVnIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFNhdmVkSWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTYXZlZElkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzU2F2ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJpc1NhdmVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNhdmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJzYXZlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRTYXZlT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsYWltUmV2aXNpb24iOiB7CiAgICAgICAgICAibmFtZSI6ICJjbGFpbVJldmlzaW9uIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImV4cGVjdGVkVXBkYXRlZEF0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJEYXRlIHwgc3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjbGFzc2lmeUNvbnN0cmFpbnRFcnJvciI6IHsKICAgICAgICAgICJuYW1lIjogImNsYXNzaWZ5Q29uc3RyYWludEVycm9yIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJtZXNzYWdlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICIndW5pcXVlJyB8ICdub3RfbnVsbCcgfCBudWxsIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZEZyb21JZCI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWRGcm9tSWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZEZyb21TbHVnIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZEZyb21TbHVnIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzIjogewogICAgICAgICAgIm5hbWUiOiAiaXMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY3JpdGVyaWEiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpT3BlcmF0aW9uT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRvIjogewogICAgICAgICAgIm5hbWUiOiAiZG8iLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiaW5zdHJ1Y3Rpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaU9wZXJhdGlvbk9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZXNjcmliZSI6IHsKICAgICAgICAgICJuYW1lIjogImRlc2NyaWJlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpT3BlcmF0aW9uT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlbGV0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImRlbGV0ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaXNSZWxhdGVkTG9hZGVkIjogewogICAgICAgICAgIm5hbWUiOiAiaXNSZWxhdGVkTG9hZGVkIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiX3NldExvYWRlZFJlbGF0aW9uc2hpcCI6IHsKICAgICAgICAgICJuYW1lIjogIl9zZXRMb2FkZWRSZWxhdGlvbnNoaXAiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAidmFsdWUiLAogICAgICAgICAgICAgICJ0eXBlIjogImFueSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZFJlbGF0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkUmVsYXRlZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkxvYWRSZWxhdGVkT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxhbnk+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxvYWRSZWxhdGVkTWFueSI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWRSZWxhdGVkTWFueSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkxvYWRSZWxhdGVkT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxhbnlbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0UmVsYXRlZCI6IHsKICAgICAgICAgICJuYW1lIjogImdldFJlbGF0ZWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJMb2FkUmVsYXRlZE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRBdmFpbGFibGVUb29scyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEF2YWlsYWJsZVRvb2xzIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIkFJVG9vbFtdIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImV4ZWN1dGVUb29sQ2FsbCI6IHsKICAgICAgICAgICJuYW1lIjogImV4ZWN1dGVUb29sQ2FsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJ0b29sQ2FsbCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiVG9vbENhbGwiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRvb2xDYWxsUmVzdWx0PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZW1lbWJlciI6IHsKICAgICAgICAgICJuYW1lIjogInJlbWVtYmVyIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVjYWxsIjogewogICAgICAgICAgIm5hbWUiOiAicmVjYWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2UiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVjYWxsQWxsIjogewogICAgICAgICAgIm5hbWUiOiAicmVjYWxsQWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNYXA8c3RyaW5nPj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0IjogewogICAgICAgICAgIm5hbWUiOiAiZm9yZ2V0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0U2NvcGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXRTY29wZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG51bWJlcj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVFbWJlZGRpbmdzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkdlbmVyYXRlRW1iZWRkaW5nc09wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0RW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibW9kZWwiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXJbXSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImhhc1N0YWxlRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImhhc1N0YWxlRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8Ym9vbGVhbj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY2xlYXJFbWJlZGRpbmdzIjogewogICAgICAgICAgIm5hbWUiOiAiY2xlYXJFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENsYXNzIiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydE9iamVjdCIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0T2JqZWN0Q29sbGVjdGlvbiIsCiAgICAgICJzY2hlbWEiOiB7CiAgICAgICAgInRhYmxlTmFtZSI6ICJzbXJ0X29iamVjdHMiLAogICAgICAgICJkZGwiOiAiQ1JFQVRFIFRBQkxFIElGIE5PVCBFWElTVFMgXCJzbXJ0X29iamVjdHNcIiAoXG4gIFwiaWRcIiBVVUlEIFBSSU1BUlkgS0VZIE5PVCBOVUxMLFxuICBcInNsdWdcIiBURVhUIE5PVCBOVUxMLFxuICBcImNvbnRleHRcIiBURVhUIE5PVCBOVUxMIERFRkFVTFQgJycsXG4gIFwiY3JlYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wLFxuICBcInVwZGF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcFxuKTsiLAogICAgICAgICJjb2x1bW5zIjogewogICAgICAgICAgImlkIjogewogICAgICAgICAgICAidHlwZSI6ICJVVUlEIiwKICAgICAgICAgICAgInByaW1hcnlLZXkiOiB0cnVlLAogICAgICAgICAgICAicmVmZXJlbmNlS2luZCI6ICJpZCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJzbHVnIjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgImNvbnRleHQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogIiIKICAgICAgICAgIH0sCiAgICAgICAgICAiY3JlYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0sCiAgICAgICAgICAidXBkYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJpbmRleGVzIjogWwogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X29iamVjdHNfc2x1Z19jb250ZXh0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJzbHVnIiwKICAgICAgICAgICAgICAiY29udGV4dCIKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInVuaXF1ZSI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfb2JqZWN0c19jcmVhdGVkX2F0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJjcmVhdGVkX2F0IgogICAgICAgICAgICBdCiAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAidmVyc2lvbiI6ICIyMDRiZjNjNCIKICAgICAgfQogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iOiB7CiAgICAgICJuYW1lIjogInNtcnRwb2x5bW9ycGhpY2Fzc29jaWF0aW9uIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRwb2x5bW9ycGhpY2Fzc29jaWF0aW9ucyIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9wb2x5bW9ycGhpYy1hc3NvY2lhdGlvbi50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJtZXRhVHlwZSI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZSwKICAgICAgICAgICJfbWV0YSI6IHsKICAgICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgIm1ldGFJZCI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZSwKICAgICAgICAgICJfbWV0YSI6IHsKICAgICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgInJvbGUiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJzb3J0T3JkZXIiOiB7CiAgICAgICAgICAidHlwZSI6ICJpbnRlZ2VyIiwKICAgICAgICAgICJyZXF1aXJlZCI6IGZhbHNlLAogICAgICAgICAgImRlZmF1bHQiOiAwCiAgICAgICAgfQogICAgICB9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAiaHlkcmF0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImh5ZHJhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydE9iamVjdCIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uQ29sbGVjdGlvbiIsCiAgICAgICJ2YWxpZGF0aW9uUnVsZXMiOiBbCiAgICAgICAgewogICAgICAgICAgImZpZWxkIjogIm1ldGFUeXBlIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJtZXRhSWQiLAogICAgICAgICAgInJ1bGUiOiAicmVxdWlyZWQiLAogICAgICAgICAgImZpZWxkVHlwZSI6ICJ0ZXh0IgogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgImZpZWxkIjogInJvbGUiLAogICAgICAgICAgInJ1bGUiOiAicmVxdWlyZWQiLAogICAgICAgICAgImZpZWxkVHlwZSI6ICJ0ZXh0IgogICAgICAgIH0KICAgICAgXQogICAgfQogIH0sCiAgIm1vZHVsZVR5cGUiOiAic21ydCIKfQ==", "" + import.meta.url), new URL("data:application/json;base64,ewogICJ2ZXJzaW9uIjogIjEuMC4wIiwKICAidGltZXN0YW1wIjogMCwKICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAicGFja2FnZVZlcnNpb24iOiAiMC40NC4wIiwKICAib2JqZWN0cyI6IHsKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENsYXNzIjogewogICAgICAibmFtZSI6ICJzbXJ0Y2xhc3MiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRDbGFzcyIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0Q2xhc3MiLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0Y2xhc3NlcyIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9jbGFzcy50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjoge30sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJ3aXRoRGF0YWJhc2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJ3aXRoRGF0YWJhc2UiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGIiLAogICAgICAgICAgICAgICJ0eXBlIjogIkRhdGFiYXNlSW50ZXJmYWNlIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3BlcmF0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICJGdW5jdGlvbiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QWlVc2FnZVNuYXBzaG90IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QWlVc2FnZVNuYXBzaG90IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIkFpVXNhZ2VTbmFwc2hvdCB8IHVuZGVmaW5lZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZXNldEFpVXNhZ2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZXNldEFpVXNhZ2UiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsaXN0QWlVc2FnZSI6IHsKICAgICAgICAgICJuYW1lIjogImxpc3RBaVVzYWdlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpVXNhZ2VMaXN0T3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxTbXJ0QWlVc2FnZVJlY29yZFtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzdW1tYXJpemVBaVVzYWdlIjogewogICAgICAgICAgIm5hbWUiOiAic3VtbWFyaXplQWlVc2FnZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaVVzYWdlU3VtbWFyeU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgQWlVc2FnZVN0YXRzPj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVzdHJveSI6IHsKICAgICAgICAgICJuYW1lIjogImRlc3Ryb3kiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydENsYXNzIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRDbGFzc0NvbGxlY3Rpb24iLAogICAgICAic2NoZW1hIjogewogICAgICAgICJ0YWJsZU5hbWUiOiAic21ydF9jbGFzc2VzIiwKICAgICAgICAiZGRsIjogIkNSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwic21ydF9jbGFzc2VzXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jbGFzc2VzX3NsdWdfY29udGV4dF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAic2x1ZyIsCiAgICAgICAgICAgICAgImNvbnRleHQiCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1bmlxdWUiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X2NsYXNzZXNfY3JlYXRlZF9hdF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAiY3JlYXRlZF9hdCIKICAgICAgICAgICAgXQogICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInZlcnNpb24iOiAiMjM0YTcyYjAiCiAgICAgIH0KICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDb2xsZWN0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0Y29sbGVjdGlvbiIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENvbGxlY3Rpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0Y29sbGVjdGlvbnMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvY29sbGVjdGlvbi50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjoge30sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJsaXN0V2l0aExhdGVzdFJlbGF0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0V2l0aExhdGVzdFJlbGF0ZWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydExhdGVzdFJlbGF0ZWRMaXN0T3B0aW9uczxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxTbXJ0TGF0ZXN0UmVsYXRlZFJvdzxTbXJ0T2JqZWN0PltdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRJdGVtQ2xhc3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRJdGVtQ2xhc3MiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiU21ydENvbGxlY3Rpb25JdGVtQ2xhc3M8TW9kZWxUeXBlPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ2YWxpZGF0ZSI6IHsKICAgICAgICAgICJuYW1lIjogInZhbGlkYXRlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjcmVhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJjcmVhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydENyZWF0ZUlucHV0PE1vZGVsVHlwZT4iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaW5pdGlhbGl6ZSI6IHsKICAgICAgICAgICJuYW1lIjogImluaXRpYWxpemUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImVuc3VyZVN0b3JhZ2VSZWFkeSI6IHsKICAgICAgICAgICJuYW1lIjogImVuc3VyZVN0b3JhZ2VSZWFkeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZE9uZSI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRPbmUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGUgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kQnlJZCI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRCeUlkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImlkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kQWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGVbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibGlzdEJ5SWRzIjogewogICAgICAgICAgIm5hbWUiOiAibGlzdEJ5SWRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImlkcyIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nW10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmlsdGVyIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmcgfCBTbXJ0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGUgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsaXN0IjogewogICAgICAgICAgIm5hbWUiOiAibGlzdCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0TGlzdE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxTbXJ0T2JqZWN0W10gfCBSZWNvcmQ8c3RyaW5nPltdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRPclVwc2VydCI6IHsKICAgICAgICAgICJuYW1lIjogImdldE9yVXBzZXJ0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmc+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGVmYXVsdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmc+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0RGlmZiI6IHsKICAgICAgICAgICJuYW1lIjogImdldERpZmYiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZXhpc3RpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRPYmplY3QgfCBSZWNvcmQ8c3RyaW5nPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmc+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxSZWNvcmQ8c3RyaW5nPiB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkcyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEZpZWxkcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgQ29sbGVjdGlvbkZpZWxkRGVmaW5pdGlvbj4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEZpZWxkc1N5bmMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHNTeW5jIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb25GaWVsZERlZmluaXRpb24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlU2NoZW1hIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVTY2hlbWEiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVUYWJsZU5hbWUiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZW5lcmF0ZVRhYmxlTmFtZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVsZXRlIjogewogICAgICAgICAgIm5hbWUiOiAiZGVsZXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImlkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGJvb2xlYW4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNvdW50IjogewogICAgICAgICAgIm5hbWUiOiAiY291bnQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmFjZXRzIjogewogICAgICAgICAgIm5hbWUiOiAiZmFjZXRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRGYWNldE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydEZhY2V0UmVzdWx0W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNvdW50cyI6IHsKICAgICAgICAgICJuYW1lIjogImNvdW50cyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydENvbGxlY3Rpb25Db3VudHM+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFN0aUNoaWxkTWV0YVR5cGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTdGlDaGlsZE1ldGFUeXBlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInN0cmluZyB8IG51bGwiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicXVlcnkiOiB7CiAgICAgICAgICAibmFtZSI6ICJxdWVyeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJzcWwiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInBhcmFtcyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiYW55IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlbWVtYmVyIjogewogICAgICAgICAgIm5hbWUiOiAicmVtZW1iZXIiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZWNhbGxBbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZWNhbGxBbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1hcDxzdHJpbmc+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXRTY29wZSI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldFNjb3BlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8bnVtYmVyPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzZW1hbnRpY1NlYXJjaCI6IHsKICAgICAgICAgICJuYW1lIjogInNlbWFudGljU2VhcmNoIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInF1ZXJ5IiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8QXJyYXk+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRTaW1pbGFyIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZFNpbWlsYXIiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJNb2RlbFR5cGUgfCBzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8QXJyYXk+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRTaW1pbGFyVG9FbWJlZGRpbmciOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kU2ltaWxhclRvRW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImVtYmVkZGluZyIsCiAgICAgICAgICAgICAgInR5cGUiOiAibnVtYmVyW10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8QXJyYXk+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlTWlzc2luZ0VtYmVkZGluZ3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZW5lcmF0ZU1pc3NpbmdFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxvYmplY3Q+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0KICAgICAgfSwKICAgICAgImRlY29yYXRvckNvbmZpZyI6IHt9LAogICAgICAiZXh0ZW5kcyI6ICJTbXJ0Q2xhc3MiLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0Q29sbGVjdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0Q29sbGVjdGlvbkNvbGxlY3Rpb24iLAogICAgICAic2NoZW1hIjogewogICAgICAgICJ0YWJsZU5hbWUiOiAic21ydF9jb2xsZWN0aW9ucyIsCiAgICAgICAgImRkbCI6ICJDUkVBVEUgVEFCTEUgSUYgTk9UIEVYSVNUUyBcInNtcnRfY29sbGVjdGlvbnNcIiAoXG4gIFwiaWRcIiBVVUlEIFBSSU1BUlkgS0VZIE5PVCBOVUxMLFxuICBcInNsdWdcIiBURVhUIE5PVCBOVUxMLFxuICBcImNvbnRleHRcIiBURVhUIE5PVCBOVUxMIERFRkFVTFQgJycsXG4gIFwiY3JlYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wLFxuICBcInVwZGF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcFxuKTsiLAogICAgICAgICJjb2x1bW5zIjogewogICAgICAgICAgImlkIjogewogICAgICAgICAgICAidHlwZSI6ICJVVUlEIiwKICAgICAgICAgICAgInByaW1hcnlLZXkiOiB0cnVlLAogICAgICAgICAgICAicmVmZXJlbmNlS2luZCI6ICJpZCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJzbHVnIjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgImNvbnRleHQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogIiIKICAgICAgICAgIH0sCiAgICAgICAgICAiY3JlYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0sCiAgICAgICAgICAidXBkYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJpbmRleGVzIjogWwogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X2NvbGxlY3Rpb25zX3NsdWdfY29udGV4dF9pZHgiLAogICAgICAgICAgICAiY29sdW1ucyI6IFsKICAgICAgICAgICAgICAic2x1ZyIsCiAgICAgICAgICAgICAgImNvbnRleHQiCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ1bmlxdWUiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X2NvbGxlY3Rpb25zX2NyZWF0ZWRfYXRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgImNyZWF0ZWRfYXQiCiAgICAgICAgICAgIF0KICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJ2ZXJzaW9uIjogIjI5NWIwYTgwIgogICAgICB9CiAgICB9LAogICAgIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SGllcmFyY2hpY2FsIjogewogICAgICAibmFtZSI6ICJzbXJ0aGllcmFyY2hpY2FsIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0SGllcmFyY2hpY2FsIiwKICAgICAgInF1YWxpZmllZE5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRIaWVyYXJjaGljYWwiLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0aGllcmFyY2hpY2FscyIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9oaWVyYXJjaGljYWwudHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHsKICAgICAgICAicGFyZW50SWQiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IGZhbHNlCiAgICAgICAgfQogICAgICB9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAiZ2V0UGFyZW50IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0UGFyZW50IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRDaGlsZHJlbiI6IHsKICAgICAgICAgICJuYW1lIjogImdldENoaWxkcmVuIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRBbmNlc3RvcnMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRBbmNlc3RvcnMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldERlc2NlbmRhbnRzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RGVzY2VuZGFudHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEhpZXJhcmNoeSI6IHsKICAgICAgICAgICJuYW1lIjogImdldEhpZXJhcmNoeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8SGllcmFyY2h5Vmlldz4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibW92ZVRvIjogewogICAgICAgICAgIm5hbWUiOiAibW92ZVRvIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm5ld1BhcmVudCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIHwgbnVsbCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRPYmplY3QiLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0SGllcmFyY2hpY2FsIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRIaWVyYXJjaGljYWxDb2xsZWN0aW9uIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEp1bmN0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0anVuY3Rpb24iLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRKdW5jdGlvbiIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SnVuY3Rpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0anVuY3Rpb25zIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2p1bmN0aW9uLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7fSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImJ5TGVmdCI6IHsKICAgICAgICAgICJuYW1lIjogImJ5TGVmdCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uRmlsdGVyT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUSXRlbVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJieVJpZ2h0IjogewogICAgICAgICAgIm5hbWUiOiAiYnlSaWdodCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VEl0ZW1bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYXR0YWNoIjogewogICAgICAgICAgIm5hbWUiOiAiYXR0YWNoIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImxlZnRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25BdHRhY2hPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZXRhY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXRhY2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2V0TGlua3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJzZXRMaW5rcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmdbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uQXR0YWNoT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAiZXh0ZW5kc1R5cGVBcmciOiAiVEl0ZW0iLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0SnVuY3Rpb24iLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydEp1bmN0aW9uQ29sbGVjdGlvbiIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRPYmplY3QiOiB7CiAgICAgICJuYW1lIjogInNtcnRvYmplY3QiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRPYmplY3QiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydE9iamVjdCIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRvYmplY3RzIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL29iamVjdC50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgInR5cGUiOiAiZGF0ZXRpbWUiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9LAogICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgInR5cGUiOiAiZGF0ZXRpbWUiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJtYXJrQXNQZXJzaXN0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJtYXJrQXNQZXJzaXN0ZWQiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZXF1aXJlSW5zZXJ0T25TYXZlIjogewogICAgICAgICAgIm5hbWUiOiAicmVxdWlyZUluc2VydE9uU2F2ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgIndpdGhUcmFuc2FjdGlvbiI6IHsKICAgICAgICAgICJuYW1lIjogIndpdGhUcmFuc2FjdGlvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcGVyYXRpb24iLAogICAgICAgICAgICAgICJ0eXBlIjogIkZ1bmN0aW9uIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbml0aWFsaXplIjogewogICAgICAgICAgIm5hbWUiOiAiaW5pdGlhbGl6ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2UiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZERhdGFGcm9tRGIiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkRGF0YUZyb21EYiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkYXRhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidG9KU09OIjogewogICAgICAgICAgIm5hbWUiOiAidG9KU09OIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b1BsYWluT2JqZWN0IjogewogICAgICAgICAgIm5hbWUiOiAidG9QbGFpbk9iamVjdCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b1B1YmxpY0pTT04iOiB7CiAgICAgICAgICAibmFtZSI6ICJ0b1B1YmxpY0pTT04iLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlB1YmxpY0pzb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRJZCI6IHsKICAgICAgICAgICJuYW1lIjogImdldElkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFNsdWciOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTbHVnIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFNhdmVkSWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTYXZlZElkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzU2F2ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJpc1NhdmVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNhdmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJzYXZlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRTYXZlT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImNsYWltUmV2aXNpb24iOiB7CiAgICAgICAgICAibmFtZSI6ICJjbGFpbVJldmlzaW9uIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImV4cGVjdGVkVXBkYXRlZEF0IiwKICAgICAgICAgICAgICAidHlwZSI6ICJEYXRlIHwgc3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjbGFzc2lmeUNvbnN0cmFpbnRFcnJvciI6IHsKICAgICAgICAgICJuYW1lIjogImNsYXNzaWZ5Q29uc3RyYWludEVycm9yIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJtZXNzYWdlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICIndW5pcXVlJyB8ICdub3RfbnVsbCcgfCBudWxsIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZEZyb21JZCI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWRGcm9tSWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZEZyb21TbHVnIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZEZyb21TbHVnIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzIjogewogICAgICAgICAgIm5hbWUiOiAiaXMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY3JpdGVyaWEiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpT3BlcmF0aW9uT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRvIjogewogICAgICAgICAgIm5hbWUiOiAiZG8iLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiaW5zdHJ1Y3Rpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaU9wZXJhdGlvbk9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZXNjcmliZSI6IHsKICAgICAgICAgICJuYW1lIjogImRlc2NyaWJlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpT3BlcmF0aW9uT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlbGV0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImRlbGV0ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaXNSZWxhdGVkTG9hZGVkIjogewogICAgICAgICAgIm5hbWUiOiAiaXNSZWxhdGVkTG9hZGVkIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiX3NldExvYWRlZFJlbGF0aW9uc2hpcCI6IHsKICAgICAgICAgICJuYW1lIjogIl9zZXRMb2FkZWRSZWxhdGlvbnNoaXAiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAidmFsdWUiLAogICAgICAgICAgICAgICJ0eXBlIjogImFueSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZFJlbGF0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkUmVsYXRlZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkxvYWRSZWxhdGVkT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxhbnk+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxvYWRSZWxhdGVkTWFueSI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWRSZWxhdGVkTWFueSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkxvYWRSZWxhdGVkT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxhbnlbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0UmVsYXRlZCI6IHsKICAgICAgICAgICJuYW1lIjogImdldFJlbGF0ZWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJMb2FkUmVsYXRlZE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRBdmFpbGFibGVUb29scyI6IHsKICAgICAgICAgICJuYW1lIjogImdldEF2YWlsYWJsZVRvb2xzIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIkFJVG9vbFtdIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImV4ZWN1dGVUb29sQ2FsbCI6IHsKICAgICAgICAgICJuYW1lIjogImV4ZWN1dGVUb29sQ2FsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJ0b29sQ2FsbCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiVG9vbENhbGwiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRvb2xDYWxsUmVzdWx0PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZW1lbWJlciI6IHsKICAgICAgICAgICJuYW1lIjogInJlbWVtYmVyIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVjYWxsIjogewogICAgICAgICAgIm5hbWUiOiAicmVjYWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2UiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVjYWxsQWxsIjogewogICAgICAgICAgIm5hbWUiOiAicmVjYWxsQWxsIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNYXA8c3RyaW5nPj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0IjogewogICAgICAgICAgIm5hbWUiOiAiZm9yZ2V0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZm9yZ2V0U2NvcGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmb3JnZXRTY29wZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG51bWJlcj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVFbWJlZGRpbmdzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkdlbmVyYXRlRW1iZWRkaW5nc09wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0RW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibW9kZWwiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXJbXSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImhhc1N0YWxlRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImhhc1N0YWxlRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8Ym9vbGVhbj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY2xlYXJFbWJlZGRpbmdzIjogewogICAgICAgICAgIm5hbWUiOiAiY2xlYXJFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENsYXNzIiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydE9iamVjdCIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0T2JqZWN0Q29sbGVjdGlvbiIsCiAgICAgICJzY2hlbWEiOiB7CiAgICAgICAgInRhYmxlTmFtZSI6ICJzbXJ0X29iamVjdHMiLAogICAgICAgICJkZGwiOiAiQ1JFQVRFIFRBQkxFIElGIE5PVCBFWElTVFMgXCJzbXJ0X29iamVjdHNcIiAoXG4gIFwiaWRcIiBVVUlEIFBSSU1BUlkgS0VZIE5PVCBOVUxMLFxuICBcInNsdWdcIiBURVhUIE5PVCBOVUxMLFxuICBcImNvbnRleHRcIiBURVhUIE5PVCBOVUxMIERFRkFVTFQgJycsXG4gIFwiY3JlYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wLFxuICBcInVwZGF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcFxuKTsiLAogICAgICAgICJjb2x1bW5zIjogewogICAgICAgICAgImlkIjogewogICAgICAgICAgICAidHlwZSI6ICJVVUlEIiwKICAgICAgICAgICAgInByaW1hcnlLZXkiOiB0cnVlLAogICAgICAgICAgICAicmVmZXJlbmNlS2luZCI6ICJpZCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJzbHVnIjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgImNvbnRleHQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogIiIKICAgICAgICAgIH0sCiAgICAgICAgICAiY3JlYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0sCiAgICAgICAgICAidXBkYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJpbmRleGVzIjogWwogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X29iamVjdHNfc2x1Z19jb250ZXh0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJzbHVnIiwKICAgICAgICAgICAgICAiY29udGV4dCIKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInVuaXF1ZSI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfb2JqZWN0c19jcmVhdGVkX2F0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJjcmVhdGVkX2F0IgogICAgICAgICAgICBdCiAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAidmVyc2lvbiI6ICIyMDRiZjNjNCIKICAgICAgfQogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iOiB7CiAgICAgICJuYW1lIjogInNtcnRwb2x5bW9ycGhpY2Fzc29jaWF0aW9uIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRwb2x5bW9ycGhpY2Fzc29jaWF0aW9ucyIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9wb2x5bW9ycGhpYy1hc3NvY2lhdGlvbi50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJtZXRhVHlwZSI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZSwKICAgICAgICAgICJfbWV0YSI6IHsKICAgICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgIm1ldGFJZCI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZSwKICAgICAgICAgICJfbWV0YSI6IHsKICAgICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgInJvbGUiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJzb3J0T3JkZXIiOiB7CiAgICAgICAgICAidHlwZSI6ICJpbnRlZ2VyIiwKICAgICAgICAgICJyZXF1aXJlZCI6IGZhbHNlLAogICAgICAgICAgImRlZmF1bHQiOiAwCiAgICAgICAgfQogICAgICB9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAiaHlkcmF0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImh5ZHJhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydE9iamVjdCIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uQ29sbGVjdGlvbiIsCiAgICAgICJ2YWxpZGF0aW9uUnVsZXMiOiBbCiAgICAgICAgewogICAgICAgICAgImZpZWxkIjogIm1ldGFUeXBlIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJtZXRhSWQiLAogICAgICAgICAgInJ1bGUiOiAicmVxdWlyZWQiLAogICAgICAgICAgImZpZWxkVHlwZSI6ICJ0ZXh0IgogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgImZpZWxkIjogInJvbGUiLAogICAgICAgICAgInJ1bGUiOiAicmVxdWlyZWQiLAogICAgICAgICAgImZpZWxkVHlwZSI6ICJ0ZXh0IgogICAgICAgIH0KICAgICAgXQogICAgfQogIH0sCiAgIm1vZHVsZVR5cGUiOiAic21ydCIKfQ==", "" + import.meta.url)] : [new URL("../manifest.json", "" + import.meta.url)];
281
281
  for (const candidate of candidates) try {
282
282
  if (!builtins.fs.existsSync(candidate)) continue;
283
283
  const manifest = JSON.parse(builtins.fs.readFileSync(candidate, "utf-8"));
@@ -2,7 +2,7 @@
2
2
  "version": "1.0.0",
3
3
  "timestamp": 0,
4
4
  "packageName": "@happyvertical/smrt-core",
5
- "packageVersion": "0.43.10",
5
+ "packageVersion": "0.44.0",
6
6
  "objects": {
7
7
  "@happyvertical/smrt-core:SmrtClass": {
8
8
  "name": "smrtclass",
@@ -151,6 +151,15 @@ export declare class SchemaComparer {
151
151
  private options;
152
152
  private engine;
153
153
  private ddlStrategy;
154
+ /**
155
+ * Live schemas read during one `compare()` run. The uuid convergence plan
156
+ * (#2608) needs the same introspection the per-table comparison does, and
157
+ * re-reading `getTableSchema` per relationship would multiply catalog
158
+ * round-trips on a wide schema.
159
+ */
160
+ private liveSchemas;
161
+ /** Convergence plan for this run; `null` on non-PostgreSQL engines. */
162
+ private uuidConvergence;
154
163
  constructor(db: DatabaseInterface, options?: DiffOptions);
155
164
  /**
156
165
  * Compare manifest schemas to database and return differences
@@ -160,6 +169,38 @@ export declare class SchemaComparer {
160
169
  * Compare a single table's schema to manifest
161
170
  */
162
171
  compareTable(tableName: string, manifest: SchemaDefinition, manifestSchemas?: Record<string, SchemaDefinition>): Promise<SchemaChange[]>;
172
+ /**
173
+ * Read (and memoize for this run) one table's live schema. Returns
174
+ * `undefined` when the table does not exist or the adapter cannot
175
+ * introspect it.
176
+ */
177
+ private getLiveSchema;
178
+ /**
179
+ * Plan the pre-R11 `text` -> `uuid` convergence (#2608).
180
+ *
181
+ * PostgreSQL only: SQLite stores UUIDs as text by design and DuckDB cannot
182
+ * rewrite a column type in place, so both engines return `null` and emit
183
+ * nothing for this drift.
184
+ */
185
+ private buildUuidConvergencePlan;
186
+ /**
187
+ * Count values a legacy `text` identifier column holds that cannot be
188
+ * reinterpreted as `uuid`. Any failure resolves to `unavailable`, which the
189
+ * planner treats as a block — SMRT never coerces identifier values.
190
+ */
191
+ private probeUuidShape;
192
+ /**
193
+ * Turn the convergence plan into diff entries: executable `type_upgrade`
194
+ * conversions marked `phase: 'pre_foreign_key'`, plus report-only warnings
195
+ * for components the planner refused.
196
+ */
197
+ private uuidConvergenceChanges;
198
+ /**
199
+ * Live-type verdict for one foreign key once this run's conversions land.
200
+ * `undefined` means the pair is compatible (or unknowable) and the ordinary
201
+ * add path applies.
202
+ */
203
+ private describeForeignKeyTypeBlock;
163
204
  private compareForeignKeys;
164
205
  private foreignKeyHasOrphans;
165
206
  private getForeignKeyOrphanOptions;
@@ -497,4 +538,12 @@ export declare function hasActionableChanges(diff: SchemaDiff): boolean;
497
538
  * they already do for `type_upgrade`.
498
539
  */
499
540
  export declare function getSQLFromDiff(diff: SchemaDiff): string[];
541
+ /**
542
+ * Executable SQL for an explicit subset of changes, in the order given.
543
+ * Callers that have to interleave diff changes with statements produced
544
+ * elsewhere — the orchestrator, which emits `CREATE TABLE` and deferred
545
+ * foreign keys of its own — partition `diff.changes` by
546
+ * {@link SchemaChange.phase} and render each part through this helper.
547
+ */
548
+ export declare function getSQLFromChanges(changes: readonly SchemaChange[]): string[];
500
549
  //# sourceMappingURL=differ.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"differ.d.ts","sourceRoot":"","sources":["../../src/migrations/differ.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,OAAO,KAAK,EAIV,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,WAAW,EACZ,MAAM,oBAAoB,CAAC;AAU5B,OAAO,KAAK,EAAE,iBAAiB,EAAsB,MAAM,YAAY,CAAC;AA8BxE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;;;;;;;OAYG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,iDAAiD;IACjD,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,0BAA0B,CAAC,EAAE;QAAE,cAAc,EAAE,KAAK,CAAA;KAAE,CAAC;CACxD;AAqBD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,MAAM,CAER;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAIlE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAE9D;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAQtE;AASD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAsCrE;AAiBD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAOpE;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,UAAU,EAAE,WAAW,GACtB;IACD,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;IACnE,GAAG,EAAE,MAAM,CAAC;CACb,CAyFA;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,WAAW,CAAoC;gBAE3C,EAAE,EAAE,iBAAiB,EAAE,OAAO,GAAE,WAAgB;IAsB5D;;OAEG;IACG,OAAO,CACX,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAChD,OAAO,CAAC,UAAU,CAAC;IA2DtB;;OAEG;IACG,YAAY,CAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,gBAAgB,EAC1B,eAAe,GAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAM,GACrD,OAAO,CAAC,YAAY,EAAE,CAAC;YA8DZ,kBAAkB;YA2LlB,oBAAoB;YA2BpB,0BAA0B;IA6CxC;;;;;;;;;;;;;;OAcG;YACW,cAAc;IA6J5B;;;;;;;;;;;;;;;;;;;;;OAqBG;YACW,wBAAwB;IAwLtC;;;;;;;;OAQG;IACH,OAAO,CAAC,sBAAsB;IAgE9B;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IA2D5B;;;;OAIG;IACH,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,gBAAgB;IAWxB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,qBAAqB;IAe7B;;;;;OAKG;YACW,YAAY;IAe1B;;;;OAIG;YACW,cAAc;IAkB5B,OAAO,CAAC,0BAA0B;IAkBlC,OAAO,CAAC,gCAAgC;IAexC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;IACH,OAAO,CAAC,cAAc;IAyPtB;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,OAAO,CAAC,iBAAiB;IAezB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,sBAAsB;IAI9B;;;;;;;;;;;;;;;;;;;OAmBG;YACW,oBAAoB;IAmDlC;;OAEG;YACW,iBAAiB;IAoB/B;;OAEG;IACH,OAAO,CAAC,aAAa;IAiErB;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,uBAAuB;IA8D/B;;;;;;;OAOG;IACH,OAAO,CAAC,sBAAsB;IAmJ9B;;OAEG;IACH,OAAO,CAAC,eAAe;IAIvB;;;;OAIG;IACH,OAAO,CAAC,mCAAmC;IAgB3C;;;;OAIG;IACH,OAAO,CAAC,qCAAqC;IAU7C,OAAO,CAAC,YAAY;IAIpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;YACW,wBAAwB;IAqHtC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAI7B;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,mBAAmB;IAW3B;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,oBAAoB;CAG7B;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,iBAAiB,EACrB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,EACjD,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,UAAU,CAAC,CAGrB;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAI9D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,EAAE,CAgBzD"}
1
+ {"version":3,"file":"differ.d.ts","sourceRoot":"","sources":["../../src/migrations/differ.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,OAAO,KAAK,EAIV,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,WAAW,EACZ,MAAM,oBAAoB,CAAC;AAkB5B,OAAO,KAAK,EAAE,iBAAiB,EAAsB,MAAM,YAAY,CAAC;AA8BxE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;;;;;;;OAYG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,iDAAiD;IACjD,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,0BAA0B,CAAC,EAAE;QAAE,cAAc,EAAE,KAAK,CAAA;KAAE,CAAC;CACxD;AAqBD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,MAAM,CAER;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAIlE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAE9D;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAQtE;AASD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAsCrE;AAiBD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAOpE;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,UAAU,EAAE,WAAW,GACtB;IACD,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;IACnE,GAAG,EAAE,MAAM,CAAC;CACb,CAyFA;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,WAAW,CAAoC;IACvD;;;;;OAKG;IACH,OAAO,CAAC,WAAW,CAGf;IACJ,uEAAuE;IACvE,OAAO,CAAC,eAAe,CAAoC;gBAE/C,EAAE,EAAE,iBAAiB,EAAE,OAAO,GAAE,WAAgB;IAsB5D;;OAEG;IACG,OAAO,CACX,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAChD,OAAO,CAAC,UAAU,CAAC;IA6EtB;;OAEG;IACG,YAAY,CAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,gBAAgB,EAC1B,eAAe,GAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAM,GACrD,OAAO,CAAC,YAAY,EAAE,CAAC;IA8D1B;;;;OAIG;YACW,aAAa;IAW3B;;;;;;OAMG;YACW,wBAAwB;IA+FtC;;;;OAIG;YACW,cAAc;IAsC5B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAgD9B;;;;OAIG;YACW,2BAA2B;YAqC3B,kBAAkB;YAuPlB,oBAAoB;YA2BpB,0BAA0B;IA6CxC;;;;;;;;;;;;;;OAcG;YACW,cAAc;IA6J5B;;;;;;;;;;;;;;;;;;;;;OAqBG;YACW,wBAAwB;IAwLtC;;;;;;;;OAQG;IACH,OAAO,CAAC,sBAAsB;IAgE9B;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IA2D5B;;;;OAIG;IACH,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,gBAAgB;IAWxB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,qBAAqB;IAe7B;;;;;OAKG;YACW,YAAY;IAe1B;;;;OAIG;YACW,cAAc;IAkB5B,OAAO,CAAC,0BAA0B;IAkBlC,OAAO,CAAC,gCAAgC;IAexC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;IACH,OAAO,CAAC,cAAc;IAyPtB;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,OAAO,CAAC,iBAAiB;IAezB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,sBAAsB;IAI9B;;;;;;;;;;;;;;;;;;;OAmBG;YACW,oBAAoB;IAmDlC;;OAEG;YACW,iBAAiB;IAoB/B;;OAEG;IACH,OAAO,CAAC,aAAa;IAiErB;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,uBAAuB;IA8D/B;;;;;;;OAOG;IACH,OAAO,CAAC,sBAAsB;IAmJ9B;;OAEG;IACH,OAAO,CAAC,eAAe;IAIvB;;;;OAIG;IACH,OAAO,CAAC,mCAAmC;IAgB3C;;;;OAIG;IACH,OAAO,CAAC,qCAAqC;IAU7C,OAAO,CAAC,YAAY;IAIpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;YACW,wBAAwB;IAqHtC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAI7B;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,mBAAmB;IAW3B;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,oBAAoB;CAG7B;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,iBAAiB,EACrB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,EACjD,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,UAAU,CAAC,CAGrB;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAI9D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,EAAE,CAIzD;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,GAAG,MAAM,EAAE,CAU5E"}