@happyvertical/smrt-core 0.51.35 → 0.51.37

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.
@@ -3,7 +3,7 @@ var staticManifest = {
3
3
  "version": "1.0.0",
4
4
  "timestamp": 0,
5
5
  "packageName": "@happyvertical/smrt-core",
6
- "packageVersion": "0.51.35",
6
+ "packageVersion": "0.51.37",
7
7
  "objects": {
8
8
  "@happyvertical/smrt-core:SmrtClass": {
9
9
  "name": "smrtclass",
@@ -1 +1 @@
1
- {"version":3,"file":"static-manifest.js","names":[],"sources":["../../src/manifest/static-manifest.ts"],"sourcesContent":["/**\n * Auto-generated static manifest\n * Generated at build time from SMRT object scanning\n * DO NOT EDIT - This file is automatically generated\n */\n\nimport type { SmartObjectManifest } from '../scanner/types.js';\n\nexport const staticManifest: SmartObjectManifest = {\n \"version\": \"1.0.0\",\n \"timestamp\": 0,\n \"packageName\": \"@happyvertical/smrt-core\",\n \"packageVersion\": \"0.51.35\",\n \"objects\": {\n \"@happyvertical/smrt-core:SmrtClass\": {\n \"name\": \"smrtclass\",\n \"className\": \"SmrtClass\",\n \"qualifiedName\": \"@happyvertical/smrt-core:SmrtClass\",\n \"collection\": \"smrtclasses\",\n \"filePath\": \"packages/core/src/class.ts\",\n \"packageName\": \"@happyvertical/smrt-core\",\n \"fields\": {},\n \"methods\": {\n \"withDatabase\": {\n \"name\": \"withDatabase\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"db\",\n \"type\": \"DatabaseInterface\",\n \"optional\": false\n },\n {\n \"name\": \"operation\",\n \"type\": \"Function\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<T>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getAiUsageSnapshot\": {\n \"name\": \"getAiUsageSnapshot\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"AiUsageSnapshot | undefined\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"resetAiUsage\": {\n \"name\": \"resetAiUsage\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"void\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"listAiUsage\": {\n \"name\": \"listAiUsage\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"AiUsageListOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<SmrtAiUsageRecord[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"summarizeAiUsage\": {\n \"name\": \"summarizeAiUsage\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"AiUsageSummaryOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<Record<string, AiUsageStats>>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"destroy\": {\n \"name\": \"destroy\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"void\",\n \"isStatic\": false,\n \"isPublic\": true\n }\n },\n \"decoratorConfig\": {},\n \"exportName\": \"SmrtClass\",\n \"collectionExportName\": \"SmrtClassCollection\",\n \"schema\": {\n \"tableName\": \"smrt_classes\",\n \"ddl\": \"CREATE TABLE IF NOT EXISTS \\\"smrt_classes\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp\\n);\",\n \"columns\": {\n \"id\": {\n \"type\": \"UUID\",\n \"primaryKey\": true,\n \"referenceKind\": \"id\",\n \"notNull\": true\n },\n \"slug\": {\n \"type\": \"TEXT\",\n \"notNull\": true\n },\n \"context\": {\n \"type\": \"TEXT\",\n \"notNull\": true,\n \"default\": \"\"\n },\n \"created_at\": {\n \"type\": \"TIMESTAMP\",\n \"notNull\": true,\n \"default\": \"current_timestamp\"\n },\n \"updated_at\": {\n \"type\": \"TIMESTAMP\",\n \"notNull\": true,\n \"default\": \"current_timestamp\"\n }\n },\n \"indexes\": [\n {\n \"name\": \"smrt_classes_slug_context_idx\",\n \"columns\": [\n \"slug\",\n \"context\"\n ],\n \"unique\": true\n },\n {\n \"name\": \"smrt_classes_created_at_idx\",\n \"columns\": [\n \"created_at\"\n ]\n }\n ],\n \"version\": \"234a72b0\"\n },\n \"importPath\": \"@happyvertical/smrt-core\"\n },\n \"@happyvertical/smrt-core:SmrtCollection\": {\n \"name\": \"smrtcollection\",\n \"className\": \"SmrtCollection\",\n \"qualifiedName\": \"@happyvertical/smrt-core:SmrtCollection\",\n \"collection\": \"smrtcollections\",\n \"filePath\": \"packages/core/src/collection.ts\",\n \"packageName\": \"@happyvertical/smrt-core\",\n \"fields\": {},\n \"methods\": {\n \"listWithLatestRelated\": {\n \"name\": \"listWithLatestRelated\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"SmrtLatestRelatedListOptions<ModelType>\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<SmrtLatestRelatedRow<SmrtObject>[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getItemClass\": {\n \"name\": \"getItemClass\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"SmrtCollectionItemClass<ModelType>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"validate\": {\n \"name\": \"validate\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"void\",\n \"isStatic\": true,\n \"isPublic\": true\n },\n \"create\": {\n \"name\": \"create\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"SmrtCreateInput<ModelType>\",\n \"optional\": false\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"initialize\": {\n \"name\": \"initialize\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<this>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"ensureStorageReady\": {\n \"name\": \"ensureStorageReady\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"findOne\": {\n \"name\": \"findOne\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"SmrtWhereClause<ModelType>\"\n ]\n }\n ],\n \"returnType\": \"Promise<ModelType | null>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"findById\": {\n \"name\": \"findById\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"id\",\n \"type\": \"string\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<ModelType | null>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"findAll\": {\n \"name\": \"findAll\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"SmrtWhereClause<ModelType>\",\n \"string | string[]\",\n \"number\",\n \"string[]\"\n ]\n }\n ],\n \"returnType\": \"Promise<ModelType[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"listByIds\": {\n \"name\": \"listByIds\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"ids\",\n \"type\": \"string[]\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<ModelType[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"get\": {\n \"name\": \"get\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"filter\",\n \"type\": \"string | SmrtWhereClause<ModelType>\",\n \"optional\": false,\n \"unionBranches\": [\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"SmrtWhereClause<ModelType>\"\n }\n ]\n },\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"CollectionCacheConfig | false\"\n ]\n }\n ],\n \"returnType\": \"Promise<ModelType | null>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"list\": {\n \"name\": \"list\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"SmrtListOptions<ModelType>\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<SmrtObject[] | Record<string, unknown>[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"hasBaseCreateLifecycle\": {\n \"name\": \"hasBaseCreateLifecycle\",\n \"async\": false,\n \"parameters\": [\n {\n \"name\": \"collection\",\n \"type\": \"SmrtCollection<T>\",\n \"optional\": false\n }\n ],\n \"returnType\": \"boolean\",\n \"isStatic\": true,\n \"isPublic\": true\n },\n \"getOrUpsert\": {\n \"name\": \"getOrUpsert\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"data\",\n \"type\": \"Record<string, unknown>\",\n \"optional\": false\n },\n {\n \"name\": \"defaults\",\n \"type\": \"Record<string, unknown>\",\n \"optional\": true\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getDiff\": {\n \"name\": \"getDiff\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"existing\",\n \"type\": \"SmrtObject | Record<string, unknown>\",\n \"optional\": false,\n \"unionBranches\": [\n {\n \"type\": \"SmrtObject\"\n },\n {\n \"type\": \"Record<string, unknown>\"\n }\n ]\n },\n {\n \"name\": \"data\",\n \"type\": \"Record<string, unknown>\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<Record<string, unknown> | null>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getFields\": {\n \"name\": \"getFields\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<Record<string, CollectionFieldDefinition>>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getFieldsSync\": {\n \"name\": \"getFieldsSync\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"Record<string, CollectionFieldDefinition>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"generateSchema\": {\n \"name\": \"generateSchema\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"generateTableName\": {\n \"name\": \"generateTableName\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"delete\": {\n \"name\": \"delete\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"id\",\n \"type\": \"string\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<boolean>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"count\": {\n \"name\": \"count\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"SmrtListWhereClause<ModelType>\",\n \"SmrtStiReadScope\"\n ]\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"facets\": {\n \"name\": \"facets\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"SmrtFacetOptions<ModelType>\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<SmrtFacetResult[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"counts\": {\n \"name\": \"counts\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"SmrtListWhereClause<ModelType>\",\n \"SmrtStiReadScope\"\n ]\n }\n ],\n \"returnType\": \"Promise<SmrtCollectionCounts>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getStiChildMetaType\": {\n \"name\": \"getStiChildMetaType\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"string | null\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"query\": {\n \"name\": \"query\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"sql\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"params\",\n \"type\": \"unknown[]\",\n \"optional\": true\n },\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"boolean\"\n ]\n }\n ],\n \"returnType\": \"Promise<ModelType[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"remember\": {\n \"name\": \"remember\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\",\n \"unknown\",\n \"number\",\n \"Date\"\n ]\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"recall\": {\n \"name\": \"recall\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\",\n \"boolean\",\n \"number\"\n ]\n }\n ],\n \"returnType\": \"Promise<unknown>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"recallAll\": {\n \"name\": \"recallAll\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"string\",\n \"boolean\",\n \"number\"\n ]\n }\n ],\n \"returnType\": \"Promise<Map<string, unknown>>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"forget\": {\n \"name\": \"forget\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\"\n ]\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"forgetScope\": {\n \"name\": \"forgetScope\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\",\n \"boolean\"\n ]\n }\n ],\n \"returnType\": \"Promise<number>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"semanticSearch\": {\n \"name\": \"semanticSearch\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"query\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"string\",\n \"number\",\n \"SmrtWhereClause<ModelType>\"\n ]\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"semanticSearchIds\": {\n \"name\": \"semanticSearchIds\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"query\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"string\",\n \"number\",\n \"SmrtListWhereClause<ModelType>\"\n ]\n }\n ],\n \"returnType\": \"Promise<Array<object>>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"findSimilarIdsToEmbedding\": {\n \"name\": \"findSimilarIdsToEmbedding\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"embedding\",\n \"type\": \"number[]\",\n \"optional\": false\n },\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"string\",\n \"number\",\n \"SmrtListWhereClause<ModelType>\"\n ]\n }\n ],\n \"returnType\": \"Promise<Array<object>>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"findSimilar\": {\n \"name\": \"findSimilar\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"object\",\n \"type\": \"ModelType | string\",\n \"optional\": false,\n \"unionBranches\": [\n {\n \"type\": \"ModelType\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"string\",\n \"number\",\n \"boolean\"\n ]\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"findSimilarToEmbedding\": {\n \"name\": \"findSimilarToEmbedding\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"embedding\",\n \"type\": \"number[]\",\n \"optional\": false\n },\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"string\",\n \"number\",\n \"SmrtWhereClause<ModelType>\"\n ]\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"generateMissingEmbeddings\": {\n \"name\": \"generateMissingEmbeddings\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"number\",\n \"Function\"\n ]\n }\n ],\n \"returnType\": \"Promise<object>\",\n \"isStatic\": false,\n \"isPublic\": true\n }\n },\n \"decoratorConfig\": {},\n \"extends\": \"SmrtClass\",\n \"exportName\": \"SmrtCollection\",\n \"collectionExportName\": \"SmrtCollectionCollection\",\n \"schema\": {\n \"tableName\": \"smrt_collections\",\n \"ddl\": \"CREATE TABLE IF NOT EXISTS \\\"smrt_collections\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp\\n);\",\n \"columns\": {\n \"id\": {\n \"type\": \"UUID\",\n \"primaryKey\": true,\n \"referenceKind\": \"id\",\n \"notNull\": true\n },\n \"slug\": {\n \"type\": \"TEXT\",\n \"notNull\": true\n },\n \"context\": {\n \"type\": \"TEXT\",\n \"notNull\": true,\n \"default\": \"\"\n },\n \"created_at\": {\n \"type\": \"TIMESTAMP\",\n \"notNull\": true,\n \"default\": \"current_timestamp\"\n },\n \"updated_at\": {\n \"type\": \"TIMESTAMP\",\n \"notNull\": true,\n \"default\": \"current_timestamp\"\n }\n },\n \"indexes\": [\n {\n \"name\": \"smrt_collections_slug_context_idx\",\n \"columns\": [\n \"slug\",\n \"context\"\n ],\n \"unique\": true\n },\n {\n \"name\": \"smrt_collections_created_at_idx\",\n \"columns\": [\n \"created_at\"\n ]\n }\n ],\n \"version\": \"295b0a80\"\n },\n \"importPath\": \"@happyvertical/smrt-core\"\n },\n \"@happyvertical/smrt-core:SmrtHierarchical\": {\n \"name\": \"smrthierarchical\",\n \"className\": \"SmrtHierarchical\",\n \"qualifiedName\": \"@happyvertical/smrt-core:SmrtHierarchical\",\n \"collection\": \"smrthierarchicals\",\n \"filePath\": \"packages/core/src/hierarchical.ts\",\n \"packageName\": \"@happyvertical/smrt-core\",\n \"fields\": {\n \"parentId\": {\n \"type\": \"text\",\n \"required\": false\n }\n },\n \"methods\": {\n \"getParent\": {\n \"name\": \"getParent\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<this | null>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getChildren\": {\n \"name\": \"getChildren\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<this[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getAncestors\": {\n \"name\": \"getAncestors\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<this[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getDescendants\": {\n \"name\": \"getDescendants\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<this[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getHierarchy\": {\n \"name\": \"getHierarchy\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<HierarchyView<this>>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"moveTo\": {\n \"name\": \"moveTo\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"newParent\",\n \"type\": \"this | string | null\",\n \"optional\": false,\n \"unionBranches\": [\n {\n \"type\": \"this\"\n },\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"null\"\n }\n ]\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n }\n },\n \"decoratorConfig\": {},\n \"extends\": \"SmrtObject\",\n \"exportName\": \"SmrtHierarchical\",\n \"collectionExportName\": \"SmrtHierarchicalCollection\",\n \"importPath\": \"@happyvertical/smrt-core\"\n },\n \"@happyvertical/smrt-core:SmrtJunction\": {\n \"name\": \"smrtjunction\",\n \"className\": \"SmrtJunction\",\n \"qualifiedName\": \"@happyvertical/smrt-core:SmrtJunction\",\n \"collection\": \"smrtjunctions\",\n \"filePath\": \"packages/core/src/junction.ts\",\n \"packageName\": \"@happyvertical/smrt-core\",\n \"fields\": {},\n \"methods\": {\n \"byLeft\": {\n \"name\": \"byLeft\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"leftId\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"JunctionFilterOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<TItem[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"byRight\": {\n \"name\": \"byRight\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"rightId\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"JunctionFilterOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<TItem[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"attach\": {\n \"name\": \"attach\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"leftId\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"rightId\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"JunctionAttachOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<TItem>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"detach\": {\n \"name\": \"detach\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"leftId\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"rightId\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"JunctionFilterOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"setLinks\": {\n \"name\": \"setLinks\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"leftId\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"rightIds\",\n \"type\": \"string[]\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"JunctionAttachOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n }\n },\n \"decoratorConfig\": {},\n \"extends\": \"SmrtCollection\",\n \"extendsTypeArg\": \"TItem\",\n \"exportName\": \"SmrtJunction\",\n \"collectionExportName\": \"SmrtJunctionCollection\",\n \"importPath\": \"@happyvertical/smrt-core\"\n },\n \"@happyvertical/smrt-core:SmrtObject\": {\n \"name\": \"smrtobject\",\n \"className\": \"SmrtObject\",\n \"qualifiedName\": \"@happyvertical/smrt-core:SmrtObject\",\n \"collection\": \"smrtobjects\",\n \"filePath\": \"packages/core/src/object.ts\",\n \"packageName\": \"@happyvertical/smrt-core\",\n \"fields\": {\n \"created_at\": {\n \"type\": \"datetime\",\n \"required\": false\n },\n \"updated_at\": {\n \"type\": \"datetime\",\n \"required\": false\n }\n },\n \"methods\": {\n \"markAsPersisted\": {\n \"name\": \"markAsPersisted\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"void\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"requireInsertOnSave\": {\n \"name\": \"requireInsertOnSave\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"void\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"withTransaction\": {\n \"name\": \"withTransaction\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"operation\",\n \"type\": \"Function\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<T>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"initialize\": {\n \"name\": \"initialize\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<this>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"loadDataFromDb\": {\n \"name\": \"loadDataFromDb\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"data\",\n \"type\": \"Record<string, unknown>\",\n \"optional\": false\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getFields\": {\n \"name\": \"getFields\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<any>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"toJSON\": {\n \"name\": \"toJSON\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"toPlainObject\": {\n \"name\": \"toPlainObject\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"Record<string, unknown>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"toPublicJSON\": {\n \"name\": \"toPublicJSON\",\n \"async\": false,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"PublicJsonOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Record<string, unknown>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getId\": {\n \"name\": \"getId\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getSlug\": {\n \"name\": \"getSlug\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getSavedId\": {\n \"name\": \"getSavedId\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"isSaved\": {\n \"name\": \"isSaved\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"supportsJunctionBatch\": {\n \"name\": \"supportsJunctionBatch\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"boolean\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"hasBaseJunctionLifecycle\": {\n \"name\": \"hasBaseJunctionLifecycle\",\n \"async\": false,\n \"parameters\": [\n {\n \"name\": \"candidate\",\n \"type\": \"object\",\n \"optional\": false\n }\n ],\n \"returnType\": \"boolean\",\n \"isStatic\": true,\n \"isPublic\": true\n },\n \"tryJunctionBatch\": {\n \"name\": \"tryJunctionBatch\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"removed\",\n \"type\": \"SmrtObject[]\",\n \"optional\": false\n },\n {\n \"name\": \"added\",\n \"type\": \"SmrtObject[]\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<boolean>\",\n \"isStatic\": true,\n \"isPublic\": true\n },\n \"save\": {\n \"name\": \"save\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"SmrtSaveOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"claimRevision\": {\n \"name\": \"claimRevision\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"expectedUpdatedAt\",\n \"type\": \"Date | string\",\n \"optional\": false,\n \"unionBranches\": [\n {\n \"type\": \"Date\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n ],\n \"returnType\": \"Promise<this>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"classifyConstraintError\": {\n \"name\": \"classifyConstraintError\",\n \"async\": false,\n \"parameters\": [\n {\n \"name\": \"message\",\n \"type\": \"string\",\n \"optional\": false\n }\n ],\n \"returnType\": \"'unique' | 'not_null' | null\",\n \"isStatic\": true,\n \"isPublic\": true\n },\n \"loadFromId\": {\n \"name\": \"loadFromId\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"loadFromSlug\": {\n \"name\": \"loadFromSlug\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"is\": {\n \"name\": \"is\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"criteria\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"options\",\n \"type\": \"AiOperationOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"evaluate\": {\n \"name\": \"evaluate\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"criteria\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"options\",\n \"type\": \"EvaluateOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<EvaluationResult>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"do\": {\n \"name\": \"do\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"instructions\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"options\",\n \"type\": \"AiOperationOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"describe\": {\n \"name\": \"describe\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"AiOperationOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"delete\": {\n \"name\": \"delete\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"SmrtDeleteOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"isRelatedLoaded\": {\n \"name\": \"isRelatedLoaded\",\n \"async\": false,\n \"parameters\": [\n {\n \"name\": \"fieldName\",\n \"type\": \"string\",\n \"optional\": false\n }\n ],\n \"returnType\": \"boolean\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"_setLoadedRelationship\": {\n \"name\": \"_setLoadedRelationship\",\n \"async\": false,\n \"parameters\": [\n {\n \"name\": \"fieldName\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"value\",\n \"type\": \"unknown\",\n \"optional\": false\n }\n ],\n \"returnType\": \"void\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"loadRelated\": {\n \"name\": \"loadRelated\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"fieldName\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"LoadRelatedOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<any>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"loadRelatedMany\": {\n \"name\": \"loadRelatedMany\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"fieldName\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"LoadRelatedOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<any[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getRelated\": {\n \"name\": \"getRelated\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"fieldName\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"LoadRelatedOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<any>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getAvailableTools\": {\n \"name\": \"getAvailableTools\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"AITool[]\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"executeToolCall\": {\n \"name\": \"executeToolCall\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"toolCall\",\n \"type\": \"ToolCall\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<ToolCallResult>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"remember\": {\n \"name\": \"remember\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\",\n \"unknown\",\n \"number\",\n \"Date\"\n ]\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"recall\": {\n \"name\": \"recall\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\",\n \"boolean\",\n \"number\"\n ]\n }\n ],\n \"returnType\": \"Promise<unknown>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"recallAll\": {\n \"name\": \"recallAll\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"string\",\n \"boolean\",\n \"number\"\n ]\n }\n ],\n \"returnType\": \"Promise<Map<string, unknown>>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"forget\": {\n \"name\": \"forget\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\"\n ]\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"forgetScope\": {\n \"name\": \"forgetScope\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\",\n \"boolean\"\n ]\n }\n ],\n \"returnType\": \"Promise<number>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"generateEmbeddings\": {\n \"name\": \"generateEmbeddings\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"GenerateEmbeddingsOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getEmbedding\": {\n \"name\": \"getEmbedding\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"fieldName\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"model\",\n \"type\": \"string\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<number[] | null>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"hasStaleEmbeddings\": {\n \"name\": \"hasStaleEmbeddings\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<boolean>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"clearEmbeddings\": {\n \"name\": \"clearEmbeddings\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n }\n },\n \"decoratorConfig\": {},\n \"extends\": \"SmrtClass\",\n \"exportName\": \"SmrtObject\",\n \"collectionExportName\": \"SmrtObjectCollection\",\n \"schema\": {\n \"tableName\": \"smrt_objects\",\n \"ddl\": \"CREATE TABLE IF NOT EXISTS \\\"smrt_objects\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp\\n);\",\n \"columns\": {\n \"id\": {\n \"type\": \"UUID\",\n \"primaryKey\": true,\n \"referenceKind\": \"id\",\n \"notNull\": true\n },\n \"slug\": {\n \"type\": \"TEXT\",\n \"notNull\": true\n },\n \"context\": {\n \"type\": \"TEXT\",\n \"notNull\": true,\n \"default\": \"\"\n },\n \"created_at\": {\n \"type\": \"TIMESTAMP\",\n \"notNull\": true,\n \"default\": \"current_timestamp\"\n },\n \"updated_at\": {\n \"type\": \"TIMESTAMP\",\n \"notNull\": true,\n \"default\": \"current_timestamp\"\n }\n },\n \"indexes\": [\n {\n \"name\": \"smrt_objects_slug_context_idx\",\n \"columns\": [\n \"slug\",\n \"context\"\n ],\n \"unique\": true\n },\n {\n \"name\": \"smrt_objects_created_at_idx\",\n \"columns\": [\n \"created_at\"\n ]\n }\n ],\n \"version\": \"204bf3c4\"\n },\n \"importPath\": \"@happyvertical/smrt-core\"\n },\n \"@happyvertical/smrt-core:SmrtPolymorphicAssociation\": {\n \"name\": \"smrtpolymorphicassociation\",\n \"className\": \"SmrtPolymorphicAssociation\",\n \"qualifiedName\": \"@happyvertical/smrt-core:SmrtPolymorphicAssociation\",\n \"collection\": \"smrtpolymorphicassociations\",\n \"filePath\": \"packages/core/src/polymorphic-association.ts\",\n \"packageName\": \"@happyvertical/smrt-core\",\n \"fields\": {\n \"metaType\": {\n \"type\": \"text\",\n \"required\": true,\n \"_meta\": {\n \"required\": true\n }\n },\n \"metaId\": {\n \"type\": \"text\",\n \"required\": true,\n \"_meta\": {\n \"required\": true\n }\n },\n \"role\": {\n \"type\": \"text\",\n \"required\": true,\n \"_meta\": {\n \"required\": true\n }\n },\n \"sortOrder\": {\n \"type\": \"integer\",\n \"required\": false,\n \"default\": 0\n }\n },\n \"methods\": {\n \"hydrate\": {\n \"name\": \"hydrate\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<T | null>\",\n \"isStatic\": false,\n \"isPublic\": true\n }\n },\n \"decoratorConfig\": {},\n \"extends\": \"SmrtObject\",\n \"exportName\": \"SmrtPolymorphicAssociation\",\n \"collectionExportName\": \"SmrtPolymorphicAssociationCollection\",\n \"validationRules\": [\n {\n \"field\": \"metaType\",\n \"rule\": \"required\",\n \"fieldType\": \"text\"\n },\n {\n \"field\": \"metaId\",\n \"rule\": \"required\",\n \"fieldType\": \"text\"\n },\n {\n \"field\": \"role\",\n \"rule\": \"required\",\n \"fieldType\": \"text\"\n }\n ],\n \"importPath\": \"@happyvertical/smrt-core\"\n }\n },\n \"moduleType\": \"smrt\"\n} as const;\n\nexport default staticManifest;\n"],"mappings":"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"}
1
+ {"version":3,"file":"static-manifest.js","names":[],"sources":["../../src/manifest/static-manifest.ts"],"sourcesContent":["/**\n * Auto-generated static manifest\n * Generated at build time from SMRT object scanning\n * DO NOT EDIT - This file is automatically generated\n */\n\nimport type { SmartObjectManifest } from '../scanner/types.js';\n\nexport const staticManifest: SmartObjectManifest = {\n \"version\": \"1.0.0\",\n \"timestamp\": 0,\n \"packageName\": \"@happyvertical/smrt-core\",\n \"packageVersion\": \"0.51.37\",\n \"objects\": {\n \"@happyvertical/smrt-core:SmrtClass\": {\n \"name\": \"smrtclass\",\n \"className\": \"SmrtClass\",\n \"qualifiedName\": \"@happyvertical/smrt-core:SmrtClass\",\n \"collection\": \"smrtclasses\",\n \"filePath\": \"packages/core/src/class.ts\",\n \"packageName\": \"@happyvertical/smrt-core\",\n \"fields\": {},\n \"methods\": {\n \"withDatabase\": {\n \"name\": \"withDatabase\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"db\",\n \"type\": \"DatabaseInterface\",\n \"optional\": false\n },\n {\n \"name\": \"operation\",\n \"type\": \"Function\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<T>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getAiUsageSnapshot\": {\n \"name\": \"getAiUsageSnapshot\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"AiUsageSnapshot | undefined\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"resetAiUsage\": {\n \"name\": \"resetAiUsage\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"void\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"listAiUsage\": {\n \"name\": \"listAiUsage\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"AiUsageListOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<SmrtAiUsageRecord[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"summarizeAiUsage\": {\n \"name\": \"summarizeAiUsage\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"AiUsageSummaryOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<Record<string, AiUsageStats>>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"destroy\": {\n \"name\": \"destroy\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"void\",\n \"isStatic\": false,\n \"isPublic\": true\n }\n },\n \"decoratorConfig\": {},\n \"exportName\": \"SmrtClass\",\n \"collectionExportName\": \"SmrtClassCollection\",\n \"schema\": {\n \"tableName\": \"smrt_classes\",\n \"ddl\": \"CREATE TABLE IF NOT EXISTS \\\"smrt_classes\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp\\n);\",\n \"columns\": {\n \"id\": {\n \"type\": \"UUID\",\n \"primaryKey\": true,\n \"referenceKind\": \"id\",\n \"notNull\": true\n },\n \"slug\": {\n \"type\": \"TEXT\",\n \"notNull\": true\n },\n \"context\": {\n \"type\": \"TEXT\",\n \"notNull\": true,\n \"default\": \"\"\n },\n \"created_at\": {\n \"type\": \"TIMESTAMP\",\n \"notNull\": true,\n \"default\": \"current_timestamp\"\n },\n \"updated_at\": {\n \"type\": \"TIMESTAMP\",\n \"notNull\": true,\n \"default\": \"current_timestamp\"\n }\n },\n \"indexes\": [\n {\n \"name\": \"smrt_classes_slug_context_idx\",\n \"columns\": [\n \"slug\",\n \"context\"\n ],\n \"unique\": true\n },\n {\n \"name\": \"smrt_classes_created_at_idx\",\n \"columns\": [\n \"created_at\"\n ]\n }\n ],\n \"version\": \"234a72b0\"\n },\n \"importPath\": \"@happyvertical/smrt-core\"\n },\n \"@happyvertical/smrt-core:SmrtCollection\": {\n \"name\": \"smrtcollection\",\n \"className\": \"SmrtCollection\",\n \"qualifiedName\": \"@happyvertical/smrt-core:SmrtCollection\",\n \"collection\": \"smrtcollections\",\n \"filePath\": \"packages/core/src/collection.ts\",\n \"packageName\": \"@happyvertical/smrt-core\",\n \"fields\": {},\n \"methods\": {\n \"listWithLatestRelated\": {\n \"name\": \"listWithLatestRelated\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"SmrtLatestRelatedListOptions<ModelType>\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<SmrtLatestRelatedRow<SmrtObject>[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getItemClass\": {\n \"name\": \"getItemClass\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"SmrtCollectionItemClass<ModelType>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"validate\": {\n \"name\": \"validate\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"void\",\n \"isStatic\": true,\n \"isPublic\": true\n },\n \"create\": {\n \"name\": \"create\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"SmrtCreateInput<ModelType>\",\n \"optional\": false\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"initialize\": {\n \"name\": \"initialize\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<this>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"ensureStorageReady\": {\n \"name\": \"ensureStorageReady\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"findOne\": {\n \"name\": \"findOne\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"SmrtWhereClause<ModelType>\"\n ]\n }\n ],\n \"returnType\": \"Promise<ModelType | null>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"findById\": {\n \"name\": \"findById\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"id\",\n \"type\": \"string\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<ModelType | null>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"findAll\": {\n \"name\": \"findAll\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"SmrtWhereClause<ModelType>\",\n \"string | string[]\",\n \"number\",\n \"string[]\"\n ]\n }\n ],\n \"returnType\": \"Promise<ModelType[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"listByIds\": {\n \"name\": \"listByIds\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"ids\",\n \"type\": \"string[]\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<ModelType[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"get\": {\n \"name\": \"get\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"filter\",\n \"type\": \"string | SmrtWhereClause<ModelType>\",\n \"optional\": false,\n \"unionBranches\": [\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"SmrtWhereClause<ModelType>\"\n }\n ]\n },\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"CollectionCacheConfig | false\"\n ]\n }\n ],\n \"returnType\": \"Promise<ModelType | null>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"list\": {\n \"name\": \"list\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"SmrtListOptions<ModelType>\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<SmrtObject[] | Record<string, unknown>[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"hasBaseCreateLifecycle\": {\n \"name\": \"hasBaseCreateLifecycle\",\n \"async\": false,\n \"parameters\": [\n {\n \"name\": \"collection\",\n \"type\": \"SmrtCollection<T>\",\n \"optional\": false\n }\n ],\n \"returnType\": \"boolean\",\n \"isStatic\": true,\n \"isPublic\": true\n },\n \"getOrUpsert\": {\n \"name\": \"getOrUpsert\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"data\",\n \"type\": \"Record<string, unknown>\",\n \"optional\": false\n },\n {\n \"name\": \"defaults\",\n \"type\": \"Record<string, unknown>\",\n \"optional\": true\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getDiff\": {\n \"name\": \"getDiff\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"existing\",\n \"type\": \"SmrtObject | Record<string, unknown>\",\n \"optional\": false,\n \"unionBranches\": [\n {\n \"type\": \"SmrtObject\"\n },\n {\n \"type\": \"Record<string, unknown>\"\n }\n ]\n },\n {\n \"name\": \"data\",\n \"type\": \"Record<string, unknown>\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<Record<string, unknown> | null>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getFields\": {\n \"name\": \"getFields\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<Record<string, CollectionFieldDefinition>>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getFieldsSync\": {\n \"name\": \"getFieldsSync\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"Record<string, CollectionFieldDefinition>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"generateSchema\": {\n \"name\": \"generateSchema\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"generateTableName\": {\n \"name\": \"generateTableName\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"delete\": {\n \"name\": \"delete\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"id\",\n \"type\": \"string\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<boolean>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"count\": {\n \"name\": \"count\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"SmrtListWhereClause<ModelType>\",\n \"SmrtStiReadScope\"\n ]\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"facets\": {\n \"name\": \"facets\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"SmrtFacetOptions<ModelType>\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<SmrtFacetResult[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"counts\": {\n \"name\": \"counts\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"SmrtListWhereClause<ModelType>\",\n \"SmrtStiReadScope\"\n ]\n }\n ],\n \"returnType\": \"Promise<SmrtCollectionCounts>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getStiChildMetaType\": {\n \"name\": \"getStiChildMetaType\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"string | null\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"query\": {\n \"name\": \"query\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"sql\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"params\",\n \"type\": \"unknown[]\",\n \"optional\": true\n },\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"boolean\"\n ]\n }\n ],\n \"returnType\": \"Promise<ModelType[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"remember\": {\n \"name\": \"remember\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\",\n \"unknown\",\n \"number\",\n \"Date\"\n ]\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"recall\": {\n \"name\": \"recall\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\",\n \"boolean\",\n \"number\"\n ]\n }\n ],\n \"returnType\": \"Promise<unknown>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"recallAll\": {\n \"name\": \"recallAll\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"string\",\n \"boolean\",\n \"number\"\n ]\n }\n ],\n \"returnType\": \"Promise<Map<string, unknown>>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"forget\": {\n \"name\": \"forget\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\"\n ]\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"forgetScope\": {\n \"name\": \"forgetScope\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\",\n \"boolean\"\n ]\n }\n ],\n \"returnType\": \"Promise<number>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"semanticSearch\": {\n \"name\": \"semanticSearch\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"query\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"string\",\n \"number\",\n \"SmrtWhereClause<ModelType>\"\n ]\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"semanticSearchIds\": {\n \"name\": \"semanticSearchIds\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"query\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"string\",\n \"number\",\n \"SmrtListWhereClause<ModelType>\"\n ]\n }\n ],\n \"returnType\": \"Promise<Array<object>>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"findSimilarIdsToEmbedding\": {\n \"name\": \"findSimilarIdsToEmbedding\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"embedding\",\n \"type\": \"number[]\",\n \"optional\": false\n },\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"string\",\n \"number\",\n \"SmrtListWhereClause<ModelType>\"\n ]\n }\n ],\n \"returnType\": \"Promise<Array<object>>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"findSimilar\": {\n \"name\": \"findSimilar\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"object\",\n \"type\": \"ModelType | string\",\n \"optional\": false,\n \"unionBranches\": [\n {\n \"type\": \"ModelType\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"string\",\n \"number\",\n \"boolean\"\n ]\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"findSimilarToEmbedding\": {\n \"name\": \"findSimilarToEmbedding\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"embedding\",\n \"type\": \"number[]\",\n \"optional\": false\n },\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"string\",\n \"number\",\n \"SmrtWhereClause<ModelType>\"\n ]\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"generateMissingEmbeddings\": {\n \"name\": \"generateMissingEmbeddings\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"number\",\n \"Function\"\n ]\n }\n ],\n \"returnType\": \"Promise<object>\",\n \"isStatic\": false,\n \"isPublic\": true\n }\n },\n \"decoratorConfig\": {},\n \"extends\": \"SmrtClass\",\n \"exportName\": \"SmrtCollection\",\n \"collectionExportName\": \"SmrtCollectionCollection\",\n \"schema\": {\n \"tableName\": \"smrt_collections\",\n \"ddl\": \"CREATE TABLE IF NOT EXISTS \\\"smrt_collections\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp\\n);\",\n \"columns\": {\n \"id\": {\n \"type\": \"UUID\",\n \"primaryKey\": true,\n \"referenceKind\": \"id\",\n \"notNull\": true\n },\n \"slug\": {\n \"type\": \"TEXT\",\n \"notNull\": true\n },\n \"context\": {\n \"type\": \"TEXT\",\n \"notNull\": true,\n \"default\": \"\"\n },\n \"created_at\": {\n \"type\": \"TIMESTAMP\",\n \"notNull\": true,\n \"default\": \"current_timestamp\"\n },\n \"updated_at\": {\n \"type\": \"TIMESTAMP\",\n \"notNull\": true,\n \"default\": \"current_timestamp\"\n }\n },\n \"indexes\": [\n {\n \"name\": \"smrt_collections_slug_context_idx\",\n \"columns\": [\n \"slug\",\n \"context\"\n ],\n \"unique\": true\n },\n {\n \"name\": \"smrt_collections_created_at_idx\",\n \"columns\": [\n \"created_at\"\n ]\n }\n ],\n \"version\": \"295b0a80\"\n },\n \"importPath\": \"@happyvertical/smrt-core\"\n },\n \"@happyvertical/smrt-core:SmrtHierarchical\": {\n \"name\": \"smrthierarchical\",\n \"className\": \"SmrtHierarchical\",\n \"qualifiedName\": \"@happyvertical/smrt-core:SmrtHierarchical\",\n \"collection\": \"smrthierarchicals\",\n \"filePath\": \"packages/core/src/hierarchical.ts\",\n \"packageName\": \"@happyvertical/smrt-core\",\n \"fields\": {\n \"parentId\": {\n \"type\": \"text\",\n \"required\": false\n }\n },\n \"methods\": {\n \"getParent\": {\n \"name\": \"getParent\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<this | null>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getChildren\": {\n \"name\": \"getChildren\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<this[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getAncestors\": {\n \"name\": \"getAncestors\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<this[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getDescendants\": {\n \"name\": \"getDescendants\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<this[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getHierarchy\": {\n \"name\": \"getHierarchy\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<HierarchyView<this>>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"moveTo\": {\n \"name\": \"moveTo\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"newParent\",\n \"type\": \"this | string | null\",\n \"optional\": false,\n \"unionBranches\": [\n {\n \"type\": \"this\"\n },\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"null\"\n }\n ]\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n }\n },\n \"decoratorConfig\": {},\n \"extends\": \"SmrtObject\",\n \"exportName\": \"SmrtHierarchical\",\n \"collectionExportName\": \"SmrtHierarchicalCollection\",\n \"importPath\": \"@happyvertical/smrt-core\"\n },\n \"@happyvertical/smrt-core:SmrtJunction\": {\n \"name\": \"smrtjunction\",\n \"className\": \"SmrtJunction\",\n \"qualifiedName\": \"@happyvertical/smrt-core:SmrtJunction\",\n \"collection\": \"smrtjunctions\",\n \"filePath\": \"packages/core/src/junction.ts\",\n \"packageName\": \"@happyvertical/smrt-core\",\n \"fields\": {},\n \"methods\": {\n \"byLeft\": {\n \"name\": \"byLeft\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"leftId\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"JunctionFilterOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<TItem[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"byRight\": {\n \"name\": \"byRight\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"rightId\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"JunctionFilterOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<TItem[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"attach\": {\n \"name\": \"attach\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"leftId\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"rightId\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"JunctionAttachOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<TItem>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"detach\": {\n \"name\": \"detach\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"leftId\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"rightId\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"JunctionFilterOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"setLinks\": {\n \"name\": \"setLinks\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"leftId\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"rightIds\",\n \"type\": \"string[]\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"JunctionAttachOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n }\n },\n \"decoratorConfig\": {},\n \"extends\": \"SmrtCollection\",\n \"extendsTypeArg\": \"TItem\",\n \"exportName\": \"SmrtJunction\",\n \"collectionExportName\": \"SmrtJunctionCollection\",\n \"importPath\": \"@happyvertical/smrt-core\"\n },\n \"@happyvertical/smrt-core:SmrtObject\": {\n \"name\": \"smrtobject\",\n \"className\": \"SmrtObject\",\n \"qualifiedName\": \"@happyvertical/smrt-core:SmrtObject\",\n \"collection\": \"smrtobjects\",\n \"filePath\": \"packages/core/src/object.ts\",\n \"packageName\": \"@happyvertical/smrt-core\",\n \"fields\": {\n \"created_at\": {\n \"type\": \"datetime\",\n \"required\": false\n },\n \"updated_at\": {\n \"type\": \"datetime\",\n \"required\": false\n }\n },\n \"methods\": {\n \"markAsPersisted\": {\n \"name\": \"markAsPersisted\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"void\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"requireInsertOnSave\": {\n \"name\": \"requireInsertOnSave\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"void\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"withTransaction\": {\n \"name\": \"withTransaction\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"operation\",\n \"type\": \"Function\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<T>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"initialize\": {\n \"name\": \"initialize\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<this>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"loadDataFromDb\": {\n \"name\": \"loadDataFromDb\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"data\",\n \"type\": \"Record<string, unknown>\",\n \"optional\": false\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getFields\": {\n \"name\": \"getFields\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<any>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"toJSON\": {\n \"name\": \"toJSON\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"toPlainObject\": {\n \"name\": \"toPlainObject\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"Record<string, unknown>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"toPublicJSON\": {\n \"name\": \"toPublicJSON\",\n \"async\": false,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"PublicJsonOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Record<string, unknown>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getId\": {\n \"name\": \"getId\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getSlug\": {\n \"name\": \"getSlug\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getSavedId\": {\n \"name\": \"getSavedId\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"isSaved\": {\n \"name\": \"isSaved\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"supportsJunctionBatch\": {\n \"name\": \"supportsJunctionBatch\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"boolean\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"hasBaseJunctionLifecycle\": {\n \"name\": \"hasBaseJunctionLifecycle\",\n \"async\": false,\n \"parameters\": [\n {\n \"name\": \"candidate\",\n \"type\": \"object\",\n \"optional\": false\n }\n ],\n \"returnType\": \"boolean\",\n \"isStatic\": true,\n \"isPublic\": true\n },\n \"tryJunctionBatch\": {\n \"name\": \"tryJunctionBatch\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"removed\",\n \"type\": \"SmrtObject[]\",\n \"optional\": false\n },\n {\n \"name\": \"added\",\n \"type\": \"SmrtObject[]\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<boolean>\",\n \"isStatic\": true,\n \"isPublic\": true\n },\n \"save\": {\n \"name\": \"save\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"SmrtSaveOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"claimRevision\": {\n \"name\": \"claimRevision\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"expectedUpdatedAt\",\n \"type\": \"Date | string\",\n \"optional\": false,\n \"unionBranches\": [\n {\n \"type\": \"Date\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n ],\n \"returnType\": \"Promise<this>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"classifyConstraintError\": {\n \"name\": \"classifyConstraintError\",\n \"async\": false,\n \"parameters\": [\n {\n \"name\": \"message\",\n \"type\": \"string\",\n \"optional\": false\n }\n ],\n \"returnType\": \"'unique' | 'not_null' | null\",\n \"isStatic\": true,\n \"isPublic\": true\n },\n \"loadFromId\": {\n \"name\": \"loadFromId\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"loadFromSlug\": {\n \"name\": \"loadFromSlug\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"is\": {\n \"name\": \"is\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"criteria\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"options\",\n \"type\": \"AiOperationOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"evaluate\": {\n \"name\": \"evaluate\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"criteria\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"options\",\n \"type\": \"EvaluateOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<EvaluationResult>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"do\": {\n \"name\": \"do\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"instructions\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"options\",\n \"type\": \"AiOperationOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"describe\": {\n \"name\": \"describe\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"AiOperationOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"any\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"delete\": {\n \"name\": \"delete\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"SmrtDeleteOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"isRelatedLoaded\": {\n \"name\": \"isRelatedLoaded\",\n \"async\": false,\n \"parameters\": [\n {\n \"name\": \"fieldName\",\n \"type\": \"string\",\n \"optional\": false\n }\n ],\n \"returnType\": \"boolean\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"_setLoadedRelationship\": {\n \"name\": \"_setLoadedRelationship\",\n \"async\": false,\n \"parameters\": [\n {\n \"name\": \"fieldName\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"value\",\n \"type\": \"unknown\",\n \"optional\": false\n }\n ],\n \"returnType\": \"void\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"loadRelated\": {\n \"name\": \"loadRelated\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"fieldName\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"LoadRelatedOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<any>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"loadRelatedMany\": {\n \"name\": \"loadRelatedMany\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"fieldName\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"LoadRelatedOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<any[]>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getRelated\": {\n \"name\": \"getRelated\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"fieldName\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"opts\",\n \"type\": \"LoadRelatedOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<any>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getAvailableTools\": {\n \"name\": \"getAvailableTools\",\n \"async\": false,\n \"parameters\": [],\n \"returnType\": \"AITool[]\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"executeToolCall\": {\n \"name\": \"executeToolCall\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"toolCall\",\n \"type\": \"ToolCall\",\n \"optional\": false\n }\n ],\n \"returnType\": \"Promise<ToolCallResult>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"remember\": {\n \"name\": \"remember\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\",\n \"unknown\",\n \"number\",\n \"Date\"\n ]\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"recall\": {\n \"name\": \"recall\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\",\n \"boolean\",\n \"number\"\n ]\n }\n ],\n \"returnType\": \"Promise<unknown>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"recallAll\": {\n \"name\": \"recallAll\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": true,\n \"memberTypes\": [\n \"string\",\n \"boolean\",\n \"number\"\n ]\n }\n ],\n \"returnType\": \"Promise<Map<string, unknown>>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"forget\": {\n \"name\": \"forget\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\"\n ]\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"forgetScope\": {\n \"name\": \"forgetScope\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"object\",\n \"optional\": false,\n \"memberTypes\": [\n \"string\",\n \"boolean\"\n ]\n }\n ],\n \"returnType\": \"Promise<number>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"generateEmbeddings\": {\n \"name\": \"generateEmbeddings\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"options\",\n \"type\": \"GenerateEmbeddingsOptions\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"getEmbedding\": {\n \"name\": \"getEmbedding\",\n \"async\": true,\n \"parameters\": [\n {\n \"name\": \"fieldName\",\n \"type\": \"string\",\n \"optional\": false\n },\n {\n \"name\": \"model\",\n \"type\": \"string\",\n \"optional\": true\n }\n ],\n \"returnType\": \"Promise<number[] | null>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"hasStaleEmbeddings\": {\n \"name\": \"hasStaleEmbeddings\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<boolean>\",\n \"isStatic\": false,\n \"isPublic\": true\n },\n \"clearEmbeddings\": {\n \"name\": \"clearEmbeddings\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<void>\",\n \"isStatic\": false,\n \"isPublic\": true\n }\n },\n \"decoratorConfig\": {},\n \"extends\": \"SmrtClass\",\n \"exportName\": \"SmrtObject\",\n \"collectionExportName\": \"SmrtObjectCollection\",\n \"schema\": {\n \"tableName\": \"smrt_objects\",\n \"ddl\": \"CREATE TABLE IF NOT EXISTS \\\"smrt_objects\\\" (\\n \\\"id\\\" UUID PRIMARY KEY NOT NULL,\\n \\\"slug\\\" TEXT NOT NULL,\\n \\\"context\\\" TEXT NOT NULL DEFAULT '',\\n \\\"created_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\\"updated_at\\\" TIMESTAMP NOT NULL DEFAULT current_timestamp\\n);\",\n \"columns\": {\n \"id\": {\n \"type\": \"UUID\",\n \"primaryKey\": true,\n \"referenceKind\": \"id\",\n \"notNull\": true\n },\n \"slug\": {\n \"type\": \"TEXT\",\n \"notNull\": true\n },\n \"context\": {\n \"type\": \"TEXT\",\n \"notNull\": true,\n \"default\": \"\"\n },\n \"created_at\": {\n \"type\": \"TIMESTAMP\",\n \"notNull\": true,\n \"default\": \"current_timestamp\"\n },\n \"updated_at\": {\n \"type\": \"TIMESTAMP\",\n \"notNull\": true,\n \"default\": \"current_timestamp\"\n }\n },\n \"indexes\": [\n {\n \"name\": \"smrt_objects_slug_context_idx\",\n \"columns\": [\n \"slug\",\n \"context\"\n ],\n \"unique\": true\n },\n {\n \"name\": \"smrt_objects_created_at_idx\",\n \"columns\": [\n \"created_at\"\n ]\n }\n ],\n \"version\": \"204bf3c4\"\n },\n \"importPath\": \"@happyvertical/smrt-core\"\n },\n \"@happyvertical/smrt-core:SmrtPolymorphicAssociation\": {\n \"name\": \"smrtpolymorphicassociation\",\n \"className\": \"SmrtPolymorphicAssociation\",\n \"qualifiedName\": \"@happyvertical/smrt-core:SmrtPolymorphicAssociation\",\n \"collection\": \"smrtpolymorphicassociations\",\n \"filePath\": \"packages/core/src/polymorphic-association.ts\",\n \"packageName\": \"@happyvertical/smrt-core\",\n \"fields\": {\n \"metaType\": {\n \"type\": \"text\",\n \"required\": true,\n \"_meta\": {\n \"required\": true\n }\n },\n \"metaId\": {\n \"type\": \"text\",\n \"required\": true,\n \"_meta\": {\n \"required\": true\n }\n },\n \"role\": {\n \"type\": \"text\",\n \"required\": true,\n \"_meta\": {\n \"required\": true\n }\n },\n \"sortOrder\": {\n \"type\": \"integer\",\n \"required\": false,\n \"default\": 0\n }\n },\n \"methods\": {\n \"hydrate\": {\n \"name\": \"hydrate\",\n \"async\": true,\n \"parameters\": [],\n \"returnType\": \"Promise<T | null>\",\n \"isStatic\": false,\n \"isPublic\": true\n }\n },\n \"decoratorConfig\": {},\n \"extends\": \"SmrtObject\",\n \"exportName\": \"SmrtPolymorphicAssociation\",\n \"collectionExportName\": \"SmrtPolymorphicAssociationCollection\",\n \"validationRules\": [\n {\n \"field\": \"metaType\",\n \"rule\": \"required\",\n \"fieldType\": \"text\"\n },\n {\n \"field\": \"metaId\",\n \"rule\": \"required\",\n \"fieldType\": \"text\"\n },\n {\n \"field\": \"role\",\n \"rule\": \"required\",\n \"fieldType\": \"text\"\n }\n ],\n \"importPath\": \"@happyvertical/smrt-core\"\n }\n },\n \"moduleType\": \"smrt\"\n} as const;\n\nexport default staticManifest;\n"],"mappings":"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"}
@@ -287,7 +287,7 @@ function loadStaticManifestSyncWithNode() {
287
287
  bumpRegistryGeneration();
288
288
  return fallbackManifest;
289
289
  }
290
- const candidates = import.meta.url.endsWith(".ts") ? [new URL("data:application/json;base64,ewogICJ2ZXJzaW9uIjogIjEuMC4wIiwKICAidGltZXN0YW1wIjogMCwKICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAicGFja2FnZVZlcnNpb24iOiAiMC41MS4zNSIsCiAgIm9iamVjdHMiOiB7CiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDbGFzcyI6IHsKICAgICAgIm5hbWUiOiAic21ydGNsYXNzIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0Q2xhc3MiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENsYXNzIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGNsYXNzZXMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvY2xhc3MudHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAid2l0aERhdGFiYXNlIjogewogICAgICAgICAgIm5hbWUiOiAid2l0aERhdGFiYXNlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRiIiwKICAgICAgICAgICAgICAidHlwZSI6ICJEYXRhYmFzZUludGVyZmFjZSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wZXJhdGlvbiIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRnVuY3Rpb24iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEFpVXNhZ2VTbmFwc2hvdCI6IHsKICAgICAgICAgICJuYW1lIjogImdldEFpVXNhZ2VTbmFwc2hvdCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJBaVVzYWdlU25hcHNob3QgfCB1bmRlZmluZWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVzZXRBaVVzYWdlIjogewogICAgICAgICAgIm5hbWUiOiAicmVzZXRBaVVzYWdlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibGlzdEFpVXNhZ2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0QWlVc2FnZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaVVzYWdlTGlzdE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydEFpVXNhZ2VSZWNvcmRbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic3VtbWFyaXplQWlVc2FnZSI6IHsKICAgICAgICAgICJuYW1lIjogInN1bW1hcml6ZUFpVXNhZ2UiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlVc2FnZVN1bW1hcnlPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFJlY29yZDxzdHJpbmcsIEFpVXNhZ2VTdGF0cz4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlc3Ryb3kiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXN0cm95IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRDbGFzcyIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0Q2xhc3NDb2xsZWN0aW9uIiwKICAgICAgInNjaGVtYSI6IHsKICAgICAgICAidGFibGVOYW1lIjogInNtcnRfY2xhc3NlcyIsCiAgICAgICAgImRkbCI6ICJDUkVBVEUgVEFCTEUgSUYgTk9UIEVYSVNUUyBcInNtcnRfY2xhc3Nlc1wiIChcbiAgXCJpZFwiIFVVSUQgUFJJTUFSWSBLRVkgTk9UIE5VTEwsXG4gIFwic2x1Z1wiIFRFWFQgTk9UIE5VTEwsXG4gIFwiY29udGV4dFwiIFRFWFQgTk9UIE5VTEwgREVGQVVMVCAnJyxcbiAgXCJjcmVhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXAsXG4gIFwidXBkYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wXG4pOyIsCiAgICAgICAgImNvbHVtbnMiOiB7CiAgICAgICAgICAiaWQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlVVSUQiLAogICAgICAgICAgICAicHJpbWFyeUtleSI6IHRydWUsCiAgICAgICAgICAgICJyZWZlcmVuY2VLaW5kIjogImlkIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgInNsdWciOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAiY29udGV4dCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiIgogICAgICAgICAgfSwKICAgICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfSwKICAgICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgImluZGV4ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfY2xhc3Nlc19zbHVnX2NvbnRleHRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgInNsdWciLAogICAgICAgICAgICAgICJjb250ZXh0IgogICAgICAgICAgICBdLAogICAgICAgICAgICAidW5pcXVlIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jbGFzc2VzX2NyZWF0ZWRfYXRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgImNyZWF0ZWRfYXQiCiAgICAgICAgICAgIF0KICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJ2ZXJzaW9uIjogIjIzNGE3MmIwIgogICAgICB9LAogICAgICAiaW1wb3J0UGF0aCI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiCiAgICB9LAogICAgIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0Q29sbGVjdGlvbiI6IHsKICAgICAgIm5hbWUiOiAic21ydGNvbGxlY3Rpb24iLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRDb2xsZWN0aW9uIiwKICAgICAgInF1YWxpZmllZE5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDb2xsZWN0aW9uIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGNvbGxlY3Rpb25zIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2NvbGxlY3Rpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRMYXRlc3RSZWxhdGVkTGlzdE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydExhdGVzdFJlbGF0ZWRSb3c8U21ydE9iamVjdD5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SXRlbUNsYXNzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SXRlbUNsYXNzIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlNtcnRDb2xsZWN0aW9uSXRlbUNsYXNzPE1vZGVsVHlwZT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidmFsaWRhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJ2YWxpZGF0ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY3JlYXRlIjogewogICAgICAgICAgIm5hbWUiOiAiY3JlYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRDcmVhdGVJbnB1dDxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImluaXRpYWxpemUiOiB7CiAgICAgICAgICAibmFtZSI6ICJpbml0aWFsaXplIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJlbnN1cmVTdG9yYWdlUmVhZHkiOiB7CiAgICAgICAgICAibmFtZSI6ICJlbnN1cmVTdG9yYWdlUmVhZHkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRPbmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kT25lIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZEJ5SWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kQnlJZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGUgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kQWxsIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAgICJzdHJpbmcgfCBzdHJpbmdbXSIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJzdHJpbmdbXSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsaXN0QnlJZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0QnlJZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiaWRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmdbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldCI6IHsKICAgICAgICAgICJuYW1lIjogImdldCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWx0ZXIiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyB8IFNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJDb2xsZWN0aW9uQ2FjaGVDb25maWcgfCBmYWxzZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxpc3QiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRMaXN0T3B0aW9uczxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFNtcnRPYmplY3RbXSB8IFJlY29yZDxzdHJpbmcsIHVua25vd24+W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImhhc0Jhc2VDcmVhdGVMaWZlY3ljbGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJoYXNCYXNlQ3JlYXRlTGlmZWN5Y2xlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjb2xsZWN0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0Q29sbGVjdGlvbjxUPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRPclVwc2VydCI6IHsKICAgICAgICAgICJuYW1lIjogImdldE9yVXBzZXJ0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGVmYXVsdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0RGlmZiI6IHsKICAgICAgICAgICJuYW1lIjogImdldERpZmYiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZXhpc3RpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRPYmplY3QgfCBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRPYmplY3QiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkYXRhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb25GaWVsZERlZmluaXRpb24+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHNTeW5jIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RmllbGRzU3luYyIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCBDb2xsZWN0aW9uRmllbGREZWZpbml0aW9uPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZW5lcmF0ZVNjaGVtYSI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlU2NoZW1hIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlVGFibGVOYW1lIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVUYWJsZU5hbWUiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlbGV0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImRlbGV0ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxib29sZWFuPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjb3VudCI6IHsKICAgICAgICAgICJuYW1lIjogImNvdW50IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydExpc3RXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAgICJTbXJ0U3RpUmVhZFNjb3BlIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmYWNldHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJmYWNldHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydEZhY2V0T3B0aW9uczxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxTbXJ0RmFjZXRSZXN1bHRbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY291bnRzIjogewogICAgICAgICAgIm5hbWUiOiAiY291bnRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydExpc3RXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAgICJTbXJ0U3RpUmVhZFNjb3BlIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydENvbGxlY3Rpb25Db3VudHM+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFN0aUNoaWxkTWV0YVR5cGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTdGlDaGlsZE1ldGFUeXBlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInN0cmluZyB8IG51bGwiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicXVlcnkiOiB7CiAgICAgICAgICAibmFtZSI6ICJxdWVyeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJzcWwiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInBhcmFtcyIsCiAgICAgICAgICAgICAgInR5cGUiOiAidW5rbm93bltdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGVbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVtZW1iZXIiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZW1lbWJlciIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgInVua25vd24iLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiRGF0ZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbEFsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIsCiAgICAgICAgICAgICAgICAibnVtYmVyIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TWFwPHN0cmluZywgdW5rbm93bj4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZvcmdldCI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXRTY29wZSI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldFNjb3BlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG51bWJlcj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2VtYW50aWNTZWFyY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJzZW1hbnRpY1NlYXJjaCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJxdWVyeSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNlbWFudGljU2VhcmNoSWRzIjogewogICAgICAgICAgIm5hbWUiOiAic2VtYW50aWNTZWFyY2hJZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicXVlcnkiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIlNtcnRMaXN0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPEFycmF5PG9iamVjdD4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRTaW1pbGFySWRzVG9FbWJlZGRpbmciOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kU2ltaWxhcklkc1RvRW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImVtYmVkZGluZyIsCiAgICAgICAgICAgICAgInR5cGUiOiAibnVtYmVyW10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJTbXJ0TGlzdFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxBcnJheTxvYmplY3Q+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhciI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRTaW1pbGFyIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTW9kZWxUeXBlIHwgc3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiTW9kZWxUeXBlIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRTaW1pbGFyVG9FbWJlZGRpbmciOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kU2ltaWxhclRvRW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImVtYmVkZGluZyIsCiAgICAgICAgICAgICAgInR5cGUiOiAibnVtYmVyW10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJTbXJ0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVNaXNzaW5nRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlTWlzc2luZ0VtYmVkZGluZ3MiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIkZ1bmN0aW9uIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8b2JqZWN0PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENsYXNzIiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydENvbGxlY3Rpb25Db2xsZWN0aW9uIiwKICAgICAgInNjaGVtYSI6IHsKICAgICAgICAidGFibGVOYW1lIjogInNtcnRfY29sbGVjdGlvbnMiLAogICAgICAgICJkZGwiOiAiQ1JFQVRFIFRBQkxFIElGIE5PVCBFWElTVFMgXCJzbXJ0X2NvbGxlY3Rpb25zXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jb2xsZWN0aW9uc19zbHVnX2NvbnRleHRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgInNsdWciLAogICAgICAgICAgICAgICJjb250ZXh0IgogICAgICAgICAgICBdLAogICAgICAgICAgICAidW5pcXVlIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jb2xsZWN0aW9uc19jcmVhdGVkX2F0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJjcmVhdGVkX2F0IgogICAgICAgICAgICBdCiAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAidmVyc2lvbiI6ICIyOTViMGE4MCIKICAgICAgfSwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEhpZXJhcmNoaWNhbCI6IHsKICAgICAgIm5hbWUiOiAic21ydGhpZXJhcmNoaWNhbCIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SGllcmFyY2hpY2FsIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGhpZXJhcmNoaWNhbHMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvaGllcmFyY2hpY2FsLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7CiAgICAgICAgInBhcmVudElkIjogewogICAgICAgICAgInR5cGUiOiAidGV4dCIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZQogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImdldFBhcmVudCI6IHsKICAgICAgICAgICJuYW1lIjogImdldFBhcmVudCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dGhpcyB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldENoaWxkcmVuIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0Q2hpbGRyZW4iLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXNbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QW5jZXN0b3JzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QW5jZXN0b3JzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldERlc2NlbmRhbnRzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RGVzY2VuZGFudHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXNbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SGllcmFyY2h5IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SGllcmFyY2h5IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxIaWVyYXJjaHlWaWV3PHRoaXM+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJtb3ZlVG8iOiB7CiAgICAgICAgICAibmFtZSI6ICJtb3ZlVG8iLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibmV3UGFyZW50IiwKICAgICAgICAgICAgICAidHlwZSI6ICJ0aGlzIHwgc3RyaW5nIHwgbnVsbCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogInRoaXMiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJudWxsIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRPYmplY3QiLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0SGllcmFyY2hpY2FsIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRIaWVyYXJjaGljYWxDb2xsZWN0aW9uIiwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEp1bmN0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0anVuY3Rpb24iLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRKdW5jdGlvbiIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SnVuY3Rpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0anVuY3Rpb25zIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2p1bmN0aW9uLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7fSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImJ5TGVmdCI6IHsKICAgICAgICAgICJuYW1lIjogImJ5TGVmdCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uRmlsdGVyT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUSXRlbVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJieVJpZ2h0IjogewogICAgICAgICAgIm5hbWUiOiAiYnlSaWdodCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VEl0ZW1bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYXR0YWNoIjogewogICAgICAgICAgIm5hbWUiOiAiYXR0YWNoIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImxlZnRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25BdHRhY2hPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZXRhY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXRhY2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2V0TGlua3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJzZXRMaW5rcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmdbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uQXR0YWNoT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAiZXh0ZW5kc1R5cGVBcmciOiAiVEl0ZW0iLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0SnVuY3Rpb24iLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydEp1bmN0aW9uQ29sbGVjdGlvbiIsCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRPYmplY3QiOiB7CiAgICAgICJuYW1lIjogInNtcnRvYmplY3QiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRPYmplY3QiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydE9iamVjdCIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRvYmplY3RzIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL29iamVjdC50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgInR5cGUiOiAiZGF0ZXRpbWUiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9LAogICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgInR5cGUiOiAiZGF0ZXRpbWUiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJtYXJrQXNQZXJzaXN0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJtYXJrQXNQZXJzaXN0ZWQiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZXF1aXJlSW5zZXJ0T25TYXZlIjogewogICAgICAgICAgIm5hbWUiOiAicmVxdWlyZUluc2VydE9uU2F2ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgIndpdGhUcmFuc2FjdGlvbiI6IHsKICAgICAgICAgICJuYW1lIjogIndpdGhUcmFuc2FjdGlvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcGVyYXRpb24iLAogICAgICAgICAgICAgICJ0eXBlIjogIkZ1bmN0aW9uIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbml0aWFsaXplIjogewogICAgICAgICAgIm5hbWUiOiAiaW5pdGlhbGl6ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dGhpcz4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZERhdGFGcm9tRGIiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkRGF0YUZyb21EYiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkYXRhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidG9KU09OIjogewogICAgICAgICAgIm5hbWUiOiAidG9KU09OIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b1BsYWluT2JqZWN0IjogewogICAgICAgICAgIm5hbWUiOiAidG9QbGFpbk9iamVjdCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b1B1YmxpY0pTT04iOiB7CiAgICAgICAgICAibmFtZSI6ICJ0b1B1YmxpY0pTT04iLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlB1YmxpY0pzb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRJZCI6IHsKICAgICAgICAgICJuYW1lIjogImdldElkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFNsdWciOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTbHVnIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFNhdmVkSWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTYXZlZElkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzU2F2ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJpc1NhdmVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInN1cHBvcnRzSnVuY3Rpb25CYXRjaCI6IHsKICAgICAgICAgICJuYW1lIjogInN1cHBvcnRzSnVuY3Rpb25CYXRjaCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJib29sZWFuIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImhhc0Jhc2VKdW5jdGlvbkxpZmVjeWNsZSI6IHsKICAgICAgICAgICJuYW1lIjogImhhc0Jhc2VKdW5jdGlvbkxpZmVjeWNsZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY2FuZGlkYXRlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJib29sZWFuIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidHJ5SnVuY3Rpb25CYXRjaCI6IHsKICAgICAgICAgICJuYW1lIjogInRyeUp1bmN0aW9uQmF0Y2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmVtb3ZlZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdFtdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiYWRkZWQiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRPYmplY3RbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8Ym9vbGVhbj4iLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzYXZlIjogewogICAgICAgICAgIm5hbWUiOiAic2F2ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0U2F2ZU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjbGFpbVJldmlzaW9uIjogewogICAgICAgICAgIm5hbWUiOiAiY2xhaW1SZXZpc2lvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJleHBlY3RlZFVwZGF0ZWRBdCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRGF0ZSB8IHN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIkRhdGUiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjbGFzc2lmeUNvbnN0cmFpbnRFcnJvciI6IHsKICAgICAgICAgICJuYW1lIjogImNsYXNzaWZ5Q29uc3RyYWludEVycm9yIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJtZXNzYWdlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICIndW5pcXVlJyB8ICdub3RfbnVsbCcgfCBudWxsIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZEZyb21JZCI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWRGcm9tSWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZEZyb21TbHVnIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZEZyb21TbHVnIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzIjogewogICAgICAgICAgIm5hbWUiOiAiaXMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY3JpdGVyaWEiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpT3BlcmF0aW9uT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImV2YWx1YXRlIjogewogICAgICAgICAgIm5hbWUiOiAiZXZhbHVhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY3JpdGVyaWEiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkV2YWx1YXRlT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxFdmFsdWF0aW9uUmVzdWx0PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkbyI6IHsKICAgICAgICAgICJuYW1lIjogImRvIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImluc3RydWN0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlPcGVyYXRpb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVzY3JpYmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXNjcmliZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaU9wZXJhdGlvbk9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZWxldGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZWxldGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydERlbGV0ZU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaXNSZWxhdGVkTG9hZGVkIjogewogICAgICAgICAgIm5hbWUiOiAiaXNSZWxhdGVkTG9hZGVkIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiX3NldExvYWRlZFJlbGF0aW9uc2hpcCI6IHsKICAgICAgICAgICJuYW1lIjogIl9zZXRMb2FkZWRSZWxhdGlvbnNoaXAiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAidmFsdWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInVua25vd24iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxvYWRSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZFJlbGF0ZWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJMb2FkUmVsYXRlZE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkUmVsYXRlZE1hbnkiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkUmVsYXRlZE1hbnkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJMb2FkUmVsYXRlZE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFJlbGF0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTG9hZFJlbGF0ZWRPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QXZhaWxhYmxlVG9vbHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRBdmFpbGFibGVUb29scyIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJBSVRvb2xbXSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJleGVjdXRlVG9vbENhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJleGVjdXRlVG9vbENhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAidG9vbENhbGwiLAogICAgICAgICAgICAgICJ0eXBlIjogIlRvb2xDYWxsIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUb29sQ2FsbFJlc3VsdD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVtZW1iZXIiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZW1lbWJlciIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgInVua25vd24iLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiRGF0ZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbEFsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIsCiAgICAgICAgICAgICAgICAibnVtYmVyIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TWFwPHN0cmluZywgdW5rbm93bj4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZvcmdldCI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXRTY29wZSI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldFNjb3BlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG51bWJlcj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVFbWJlZGRpbmdzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkdlbmVyYXRlRW1iZWRkaW5nc09wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0RW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibW9kZWwiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXJbXSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImhhc1N0YWxlRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImhhc1N0YWxlRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8Ym9vbGVhbj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY2xlYXJFbWJlZGRpbmdzIjogewogICAgICAgICAgIm5hbWUiOiAiY2xlYXJFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENsYXNzIiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydE9iamVjdCIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0T2JqZWN0Q29sbGVjdGlvbiIsCiAgICAgICJzY2hlbWEiOiB7CiAgICAgICAgInRhYmxlTmFtZSI6ICJzbXJ0X29iamVjdHMiLAogICAgICAgICJkZGwiOiAiQ1JFQVRFIFRBQkxFIElGIE5PVCBFWElTVFMgXCJzbXJ0X29iamVjdHNcIiAoXG4gIFwiaWRcIiBVVUlEIFBSSU1BUlkgS0VZIE5PVCBOVUxMLFxuICBcInNsdWdcIiBURVhUIE5PVCBOVUxMLFxuICBcImNvbnRleHRcIiBURVhUIE5PVCBOVUxMIERFRkFVTFQgJycsXG4gIFwiY3JlYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wLFxuICBcInVwZGF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcFxuKTsiLAogICAgICAgICJjb2x1bW5zIjogewogICAgICAgICAgImlkIjogewogICAgICAgICAgICAidHlwZSI6ICJVVUlEIiwKICAgICAgICAgICAgInByaW1hcnlLZXkiOiB0cnVlLAogICAgICAgICAgICAicmVmZXJlbmNlS2luZCI6ICJpZCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJzbHVnIjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgImNvbnRleHQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogIiIKICAgICAgICAgIH0sCiAgICAgICAgICAiY3JlYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0sCiAgICAgICAgICAidXBkYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJpbmRleGVzIjogWwogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X29iamVjdHNfc2x1Z19jb250ZXh0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJzbHVnIiwKICAgICAgICAgICAgICAiY29udGV4dCIKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInVuaXF1ZSI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfb2JqZWN0c19jcmVhdGVkX2F0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJjcmVhdGVkX2F0IgogICAgICAgICAgICBdCiAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAidmVyc2lvbiI6ICIyMDRiZjNjNCIKICAgICAgfSwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iOiB7CiAgICAgICJuYW1lIjogInNtcnRwb2x5bW9ycGhpY2Fzc29jaWF0aW9uIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRwb2x5bW9ycGhpY2Fzc29jaWF0aW9ucyIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9wb2x5bW9ycGhpYy1hc3NvY2lhdGlvbi50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJtZXRhVHlwZSI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZSwKICAgICAgICAgICJfbWV0YSI6IHsKICAgICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgIm1ldGFJZCI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZSwKICAgICAgICAgICJfbWV0YSI6IHsKICAgICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgInJvbGUiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJzb3J0T3JkZXIiOiB7CiAgICAgICAgICAidHlwZSI6ICJpbnRlZ2VyIiwKICAgICAgICAgICJyZXF1aXJlZCI6IGZhbHNlLAogICAgICAgICAgImRlZmF1bHQiOiAwCiAgICAgICAgfQogICAgICB9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAiaHlkcmF0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImh5ZHJhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydE9iamVjdCIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uQ29sbGVjdGlvbiIsCiAgICAgICJ2YWxpZGF0aW9uUnVsZXMiOiBbCiAgICAgICAgewogICAgICAgICAgImZpZWxkIjogIm1ldGFUeXBlIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJtZXRhSWQiLAogICAgICAgICAgInJ1bGUiOiAicmVxdWlyZWQiLAogICAgICAgICAgImZpZWxkVHlwZSI6ICJ0ZXh0IgogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgImZpZWxkIjogInJvbGUiLAogICAgICAgICAgInJ1bGUiOiAicmVxdWlyZWQiLAogICAgICAgICAgImZpZWxkVHlwZSI6ICJ0ZXh0IgogICAgICAgIH0KICAgICAgXSwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfQogIH0sCiAgIm1vZHVsZVR5cGUiOiAic21ydCIKfQ==", "" + import.meta.url), new URL("data:application/json;base64,ewogICJ2ZXJzaW9uIjogIjEuMC4wIiwKICAidGltZXN0YW1wIjogMCwKICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAicGFja2FnZVZlcnNpb24iOiAiMC41MS4zNSIsCiAgIm9iamVjdHMiOiB7CiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDbGFzcyI6IHsKICAgICAgIm5hbWUiOiAic21ydGNsYXNzIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0Q2xhc3MiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENsYXNzIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGNsYXNzZXMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvY2xhc3MudHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAid2l0aERhdGFiYXNlIjogewogICAgICAgICAgIm5hbWUiOiAid2l0aERhdGFiYXNlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRiIiwKICAgICAgICAgICAgICAidHlwZSI6ICJEYXRhYmFzZUludGVyZmFjZSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wZXJhdGlvbiIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRnVuY3Rpb24iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEFpVXNhZ2VTbmFwc2hvdCI6IHsKICAgICAgICAgICJuYW1lIjogImdldEFpVXNhZ2VTbmFwc2hvdCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJBaVVzYWdlU25hcHNob3QgfCB1bmRlZmluZWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVzZXRBaVVzYWdlIjogewogICAgICAgICAgIm5hbWUiOiAicmVzZXRBaVVzYWdlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibGlzdEFpVXNhZ2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0QWlVc2FnZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaVVzYWdlTGlzdE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydEFpVXNhZ2VSZWNvcmRbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic3VtbWFyaXplQWlVc2FnZSI6IHsKICAgICAgICAgICJuYW1lIjogInN1bW1hcml6ZUFpVXNhZ2UiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlVc2FnZVN1bW1hcnlPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFJlY29yZDxzdHJpbmcsIEFpVXNhZ2VTdGF0cz4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlc3Ryb3kiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXN0cm95IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRDbGFzcyIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0Q2xhc3NDb2xsZWN0aW9uIiwKICAgICAgInNjaGVtYSI6IHsKICAgICAgICAidGFibGVOYW1lIjogInNtcnRfY2xhc3NlcyIsCiAgICAgICAgImRkbCI6ICJDUkVBVEUgVEFCTEUgSUYgTk9UIEVYSVNUUyBcInNtcnRfY2xhc3Nlc1wiIChcbiAgXCJpZFwiIFVVSUQgUFJJTUFSWSBLRVkgTk9UIE5VTEwsXG4gIFwic2x1Z1wiIFRFWFQgTk9UIE5VTEwsXG4gIFwiY29udGV4dFwiIFRFWFQgTk9UIE5VTEwgREVGQVVMVCAnJyxcbiAgXCJjcmVhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXAsXG4gIFwidXBkYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wXG4pOyIsCiAgICAgICAgImNvbHVtbnMiOiB7CiAgICAgICAgICAiaWQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlVVSUQiLAogICAgICAgICAgICAicHJpbWFyeUtleSI6IHRydWUsCiAgICAgICAgICAgICJyZWZlcmVuY2VLaW5kIjogImlkIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgInNsdWciOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAiY29udGV4dCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiIgogICAgICAgICAgfSwKICAgICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfSwKICAgICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgImluZGV4ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfY2xhc3Nlc19zbHVnX2NvbnRleHRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgInNsdWciLAogICAgICAgICAgICAgICJjb250ZXh0IgogICAgICAgICAgICBdLAogICAgICAgICAgICAidW5pcXVlIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jbGFzc2VzX2NyZWF0ZWRfYXRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgImNyZWF0ZWRfYXQiCiAgICAgICAgICAgIF0KICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJ2ZXJzaW9uIjogIjIzNGE3MmIwIgogICAgICB9LAogICAgICAiaW1wb3J0UGF0aCI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiCiAgICB9LAogICAgIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0Q29sbGVjdGlvbiI6IHsKICAgICAgIm5hbWUiOiAic21ydGNvbGxlY3Rpb24iLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRDb2xsZWN0aW9uIiwKICAgICAgInF1YWxpZmllZE5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDb2xsZWN0aW9uIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGNvbGxlY3Rpb25zIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2NvbGxlY3Rpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRMYXRlc3RSZWxhdGVkTGlzdE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydExhdGVzdFJlbGF0ZWRSb3c8U21ydE9iamVjdD5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SXRlbUNsYXNzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SXRlbUNsYXNzIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlNtcnRDb2xsZWN0aW9uSXRlbUNsYXNzPE1vZGVsVHlwZT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidmFsaWRhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJ2YWxpZGF0ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY3JlYXRlIjogewogICAgICAgICAgIm5hbWUiOiAiY3JlYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRDcmVhdGVJbnB1dDxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImluaXRpYWxpemUiOiB7CiAgICAgICAgICAibmFtZSI6ICJpbml0aWFsaXplIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJlbnN1cmVTdG9yYWdlUmVhZHkiOiB7CiAgICAgICAgICAibmFtZSI6ICJlbnN1cmVTdG9yYWdlUmVhZHkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRPbmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kT25lIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZEJ5SWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kQnlJZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGUgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kQWxsIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAgICJzdHJpbmcgfCBzdHJpbmdbXSIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJzdHJpbmdbXSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsaXN0QnlJZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0QnlJZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiaWRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmdbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldCI6IHsKICAgICAgICAgICJuYW1lIjogImdldCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWx0ZXIiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyB8IFNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJDb2xsZWN0aW9uQ2FjaGVDb25maWcgfCBmYWxzZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxpc3QiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRMaXN0T3B0aW9uczxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFNtcnRPYmplY3RbXSB8IFJlY29yZDxzdHJpbmcsIHVua25vd24+W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImhhc0Jhc2VDcmVhdGVMaWZlY3ljbGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJoYXNCYXNlQ3JlYXRlTGlmZWN5Y2xlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjb2xsZWN0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0Q29sbGVjdGlvbjxUPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRPclVwc2VydCI6IHsKICAgICAgICAgICJuYW1lIjogImdldE9yVXBzZXJ0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGVmYXVsdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0RGlmZiI6IHsKICAgICAgICAgICJuYW1lIjogImdldERpZmYiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZXhpc3RpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRPYmplY3QgfCBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRPYmplY3QiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkYXRhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb25GaWVsZERlZmluaXRpb24+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHNTeW5jIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RmllbGRzU3luYyIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCBDb2xsZWN0aW9uRmllbGREZWZpbml0aW9uPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZW5lcmF0ZVNjaGVtYSI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlU2NoZW1hIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlVGFibGVOYW1lIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVUYWJsZU5hbWUiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlbGV0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImRlbGV0ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxib29sZWFuPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjb3VudCI6IHsKICAgICAgICAgICJuYW1lIjogImNvdW50IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydExpc3RXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAgICJTbXJ0U3RpUmVhZFNjb3BlIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmYWNldHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJmYWNldHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydEZhY2V0T3B0aW9uczxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxTbXJ0RmFjZXRSZXN1bHRbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY291bnRzIjogewogICAgICAgICAgIm5hbWUiOiAiY291bnRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydExpc3RXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAgICJTbXJ0U3RpUmVhZFNjb3BlIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydENvbGxlY3Rpb25Db3VudHM+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFN0aUNoaWxkTWV0YVR5cGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTdGlDaGlsZE1ldGFUeXBlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInN0cmluZyB8IG51bGwiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicXVlcnkiOiB7CiAgICAgICAgICAibmFtZSI6ICJxdWVyeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJzcWwiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInBhcmFtcyIsCiAgICAgICAgICAgICAgInR5cGUiOiAidW5rbm93bltdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGVbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVtZW1iZXIiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZW1lbWJlciIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgInVua25vd24iLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiRGF0ZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbEFsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIsCiAgICAgICAgICAgICAgICAibnVtYmVyIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TWFwPHN0cmluZywgdW5rbm93bj4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZvcmdldCI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXRTY29wZSI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldFNjb3BlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG51bWJlcj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2VtYW50aWNTZWFyY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJzZW1hbnRpY1NlYXJjaCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJxdWVyeSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNlbWFudGljU2VhcmNoSWRzIjogewogICAgICAgICAgIm5hbWUiOiAic2VtYW50aWNTZWFyY2hJZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicXVlcnkiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIlNtcnRMaXN0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPEFycmF5PG9iamVjdD4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRTaW1pbGFySWRzVG9FbWJlZGRpbmciOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kU2ltaWxhcklkc1RvRW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImVtYmVkZGluZyIsCiAgICAgICAgICAgICAgInR5cGUiOiAibnVtYmVyW10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJTbXJ0TGlzdFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxBcnJheTxvYmplY3Q+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhciI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRTaW1pbGFyIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTW9kZWxUeXBlIHwgc3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiTW9kZWxUeXBlIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRTaW1pbGFyVG9FbWJlZGRpbmciOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kU2ltaWxhclRvRW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImVtYmVkZGluZyIsCiAgICAgICAgICAgICAgInR5cGUiOiAibnVtYmVyW10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJTbXJ0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVNaXNzaW5nRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlTWlzc2luZ0VtYmVkZGluZ3MiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIkZ1bmN0aW9uIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8b2JqZWN0PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENsYXNzIiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydENvbGxlY3Rpb25Db2xsZWN0aW9uIiwKICAgICAgInNjaGVtYSI6IHsKICAgICAgICAidGFibGVOYW1lIjogInNtcnRfY29sbGVjdGlvbnMiLAogICAgICAgICJkZGwiOiAiQ1JFQVRFIFRBQkxFIElGIE5PVCBFWElTVFMgXCJzbXJ0X2NvbGxlY3Rpb25zXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jb2xsZWN0aW9uc19zbHVnX2NvbnRleHRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgInNsdWciLAogICAgICAgICAgICAgICJjb250ZXh0IgogICAgICAgICAgICBdLAogICAgICAgICAgICAidW5pcXVlIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jb2xsZWN0aW9uc19jcmVhdGVkX2F0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJjcmVhdGVkX2F0IgogICAgICAgICAgICBdCiAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAidmVyc2lvbiI6ICIyOTViMGE4MCIKICAgICAgfSwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEhpZXJhcmNoaWNhbCI6IHsKICAgICAgIm5hbWUiOiAic21ydGhpZXJhcmNoaWNhbCIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SGllcmFyY2hpY2FsIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGhpZXJhcmNoaWNhbHMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvaGllcmFyY2hpY2FsLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7CiAgICAgICAgInBhcmVudElkIjogewogICAgICAgICAgInR5cGUiOiAidGV4dCIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZQogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImdldFBhcmVudCI6IHsKICAgICAgICAgICJuYW1lIjogImdldFBhcmVudCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dGhpcyB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldENoaWxkcmVuIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0Q2hpbGRyZW4iLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXNbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QW5jZXN0b3JzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QW5jZXN0b3JzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldERlc2NlbmRhbnRzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RGVzY2VuZGFudHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXNbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SGllcmFyY2h5IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SGllcmFyY2h5IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxIaWVyYXJjaHlWaWV3PHRoaXM+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJtb3ZlVG8iOiB7CiAgICAgICAgICAibmFtZSI6ICJtb3ZlVG8iLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibmV3UGFyZW50IiwKICAgICAgICAgICAgICAidHlwZSI6ICJ0aGlzIHwgc3RyaW5nIHwgbnVsbCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogInRoaXMiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJudWxsIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRPYmplY3QiLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0SGllcmFyY2hpY2FsIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRIaWVyYXJjaGljYWxDb2xsZWN0aW9uIiwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEp1bmN0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0anVuY3Rpb24iLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRKdW5jdGlvbiIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SnVuY3Rpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0anVuY3Rpb25zIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2p1bmN0aW9uLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7fSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImJ5TGVmdCI6IHsKICAgICAgICAgICJuYW1lIjogImJ5TGVmdCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uRmlsdGVyT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUSXRlbVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJieVJpZ2h0IjogewogICAgICAgICAgIm5hbWUiOiAiYnlSaWdodCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VEl0ZW1bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYXR0YWNoIjogewogICAgICAgICAgIm5hbWUiOiAiYXR0YWNoIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImxlZnRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25BdHRhY2hPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZXRhY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXRhY2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2V0TGlua3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJzZXRMaW5rcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmdbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uQXR0YWNoT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAiZXh0ZW5kc1R5cGVBcmciOiAiVEl0ZW0iLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0SnVuY3Rpb24iLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydEp1bmN0aW9uQ29sbGVjdGlvbiIsCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRPYmplY3QiOiB7CiAgICAgICJuYW1lIjogInNtcnRvYmplY3QiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRPYmplY3QiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydE9iamVjdCIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRvYmplY3RzIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL29iamVjdC50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgInR5cGUiOiAiZGF0ZXRpbWUiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9LAogICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgInR5cGUiOiAiZGF0ZXRpbWUiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJtYXJrQXNQZXJzaXN0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJtYXJrQXNQZXJzaXN0ZWQiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZXF1aXJlSW5zZXJ0T25TYXZlIjogewogICAgICAgICAgIm5hbWUiOiAicmVxdWlyZUluc2VydE9uU2F2ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgIndpdGhUcmFuc2FjdGlvbiI6IHsKICAgICAgICAgICJuYW1lIjogIndpdGhUcmFuc2FjdGlvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcGVyYXRpb24iLAogICAgICAgICAgICAgICJ0eXBlIjogIkZ1bmN0aW9uIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbml0aWFsaXplIjogewogICAgICAgICAgIm5hbWUiOiAiaW5pdGlhbGl6ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dGhpcz4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZERhdGFGcm9tRGIiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkRGF0YUZyb21EYiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkYXRhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidG9KU09OIjogewogICAgICAgICAgIm5hbWUiOiAidG9KU09OIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b1BsYWluT2JqZWN0IjogewogICAgICAgICAgIm5hbWUiOiAidG9QbGFpbk9iamVjdCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b1B1YmxpY0pTT04iOiB7CiAgICAgICAgICAibmFtZSI6ICJ0b1B1YmxpY0pTT04iLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlB1YmxpY0pzb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRJZCI6IHsKICAgICAgICAgICJuYW1lIjogImdldElkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFNsdWciOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTbHVnIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFNhdmVkSWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTYXZlZElkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzU2F2ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJpc1NhdmVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInN1cHBvcnRzSnVuY3Rpb25CYXRjaCI6IHsKICAgICAgICAgICJuYW1lIjogInN1cHBvcnRzSnVuY3Rpb25CYXRjaCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJib29sZWFuIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImhhc0Jhc2VKdW5jdGlvbkxpZmVjeWNsZSI6IHsKICAgICAgICAgICJuYW1lIjogImhhc0Jhc2VKdW5jdGlvbkxpZmVjeWNsZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY2FuZGlkYXRlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJib29sZWFuIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidHJ5SnVuY3Rpb25CYXRjaCI6IHsKICAgICAgICAgICJuYW1lIjogInRyeUp1bmN0aW9uQmF0Y2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmVtb3ZlZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdFtdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiYWRkZWQiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRPYmplY3RbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8Ym9vbGVhbj4iLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzYXZlIjogewogICAgICAgICAgIm5hbWUiOiAic2F2ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0U2F2ZU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjbGFpbVJldmlzaW9uIjogewogICAgICAgICAgIm5hbWUiOiAiY2xhaW1SZXZpc2lvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJleHBlY3RlZFVwZGF0ZWRBdCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRGF0ZSB8IHN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIkRhdGUiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjbGFzc2lmeUNvbnN0cmFpbnRFcnJvciI6IHsKICAgICAgICAgICJuYW1lIjogImNsYXNzaWZ5Q29uc3RyYWludEVycm9yIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJtZXNzYWdlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICIndW5pcXVlJyB8ICdub3RfbnVsbCcgfCBudWxsIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZEZyb21JZCI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWRGcm9tSWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZEZyb21TbHVnIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZEZyb21TbHVnIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzIjogewogICAgICAgICAgIm5hbWUiOiAiaXMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY3JpdGVyaWEiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpT3BlcmF0aW9uT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImV2YWx1YXRlIjogewogICAgICAgICAgIm5hbWUiOiAiZXZhbHVhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY3JpdGVyaWEiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkV2YWx1YXRlT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxFdmFsdWF0aW9uUmVzdWx0PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkbyI6IHsKICAgICAgICAgICJuYW1lIjogImRvIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImluc3RydWN0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlPcGVyYXRpb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVzY3JpYmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXNjcmliZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaU9wZXJhdGlvbk9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZWxldGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZWxldGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydERlbGV0ZU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaXNSZWxhdGVkTG9hZGVkIjogewogICAgICAgICAgIm5hbWUiOiAiaXNSZWxhdGVkTG9hZGVkIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiX3NldExvYWRlZFJlbGF0aW9uc2hpcCI6IHsKICAgICAgICAgICJuYW1lIjogIl9zZXRMb2FkZWRSZWxhdGlvbnNoaXAiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAidmFsdWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInVua25vd24iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxvYWRSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZFJlbGF0ZWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJMb2FkUmVsYXRlZE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkUmVsYXRlZE1hbnkiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkUmVsYXRlZE1hbnkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJMb2FkUmVsYXRlZE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFJlbGF0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTG9hZFJlbGF0ZWRPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QXZhaWxhYmxlVG9vbHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRBdmFpbGFibGVUb29scyIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJBSVRvb2xbXSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJleGVjdXRlVG9vbENhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJleGVjdXRlVG9vbENhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAidG9vbENhbGwiLAogICAgICAgICAgICAgICJ0eXBlIjogIlRvb2xDYWxsIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUb29sQ2FsbFJlc3VsdD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVtZW1iZXIiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZW1lbWJlciIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgInVua25vd24iLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiRGF0ZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbEFsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIsCiAgICAgICAgICAgICAgICAibnVtYmVyIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TWFwPHN0cmluZywgdW5rbm93bj4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZvcmdldCI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXRTY29wZSI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldFNjb3BlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG51bWJlcj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVFbWJlZGRpbmdzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkdlbmVyYXRlRW1iZWRkaW5nc09wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0RW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibW9kZWwiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXJbXSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImhhc1N0YWxlRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImhhc1N0YWxlRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8Ym9vbGVhbj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY2xlYXJFbWJlZGRpbmdzIjogewogICAgICAgICAgIm5hbWUiOiAiY2xlYXJFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENsYXNzIiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydE9iamVjdCIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0T2JqZWN0Q29sbGVjdGlvbiIsCiAgICAgICJzY2hlbWEiOiB7CiAgICAgICAgInRhYmxlTmFtZSI6ICJzbXJ0X29iamVjdHMiLAogICAgICAgICJkZGwiOiAiQ1JFQVRFIFRBQkxFIElGIE5PVCBFWElTVFMgXCJzbXJ0X29iamVjdHNcIiAoXG4gIFwiaWRcIiBVVUlEIFBSSU1BUlkgS0VZIE5PVCBOVUxMLFxuICBcInNsdWdcIiBURVhUIE5PVCBOVUxMLFxuICBcImNvbnRleHRcIiBURVhUIE5PVCBOVUxMIERFRkFVTFQgJycsXG4gIFwiY3JlYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wLFxuICBcInVwZGF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcFxuKTsiLAogICAgICAgICJjb2x1bW5zIjogewogICAgICAgICAgImlkIjogewogICAgICAgICAgICAidHlwZSI6ICJVVUlEIiwKICAgICAgICAgICAgInByaW1hcnlLZXkiOiB0cnVlLAogICAgICAgICAgICAicmVmZXJlbmNlS2luZCI6ICJpZCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJzbHVnIjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgImNvbnRleHQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogIiIKICAgICAgICAgIH0sCiAgICAgICAgICAiY3JlYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0sCiAgICAgICAgICAidXBkYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJpbmRleGVzIjogWwogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X29iamVjdHNfc2x1Z19jb250ZXh0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJzbHVnIiwKICAgICAgICAgICAgICAiY29udGV4dCIKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInVuaXF1ZSI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfb2JqZWN0c19jcmVhdGVkX2F0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJjcmVhdGVkX2F0IgogICAgICAgICAgICBdCiAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAidmVyc2lvbiI6ICIyMDRiZjNjNCIKICAgICAgfSwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iOiB7CiAgICAgICJuYW1lIjogInNtcnRwb2x5bW9ycGhpY2Fzc29jaWF0aW9uIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRwb2x5bW9ycGhpY2Fzc29jaWF0aW9ucyIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9wb2x5bW9ycGhpYy1hc3NvY2lhdGlvbi50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJtZXRhVHlwZSI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZSwKICAgICAgICAgICJfbWV0YSI6IHsKICAgICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgIm1ldGFJZCI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZSwKICAgICAgICAgICJfbWV0YSI6IHsKICAgICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgInJvbGUiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJzb3J0T3JkZXIiOiB7CiAgICAgICAgICAidHlwZSI6ICJpbnRlZ2VyIiwKICAgICAgICAgICJyZXF1aXJlZCI6IGZhbHNlLAogICAgICAgICAgImRlZmF1bHQiOiAwCiAgICAgICAgfQogICAgICB9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAiaHlkcmF0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImh5ZHJhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydE9iamVjdCIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uQ29sbGVjdGlvbiIsCiAgICAgICJ2YWxpZGF0aW9uUnVsZXMiOiBbCiAgICAgICAgewogICAgICAgICAgImZpZWxkIjogIm1ldGFUeXBlIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJtZXRhSWQiLAogICAgICAgICAgInJ1bGUiOiAicmVxdWlyZWQiLAogICAgICAgICAgImZpZWxkVHlwZSI6ICJ0ZXh0IgogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgImZpZWxkIjogInJvbGUiLAogICAgICAgICAgInJ1bGUiOiAicmVxdWlyZWQiLAogICAgICAgICAgImZpZWxkVHlwZSI6ICJ0ZXh0IgogICAgICAgIH0KICAgICAgXSwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfQogIH0sCiAgIm1vZHVsZVR5cGUiOiAic21ydCIKfQ==", "" + import.meta.url)] : [new URL("../manifest.json", "" + import.meta.url)];
290
+ const candidates = import.meta.url.endsWith(".ts") ? [new URL("data:application/json;base64,ewogICJ2ZXJzaW9uIjogIjEuMC4wIiwKICAidGltZXN0YW1wIjogMCwKICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAicGFja2FnZVZlcnNpb24iOiAiMC41MS4zNyIsCiAgIm9iamVjdHMiOiB7CiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDbGFzcyI6IHsKICAgICAgIm5hbWUiOiAic21ydGNsYXNzIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0Q2xhc3MiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENsYXNzIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGNsYXNzZXMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvY2xhc3MudHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAid2l0aERhdGFiYXNlIjogewogICAgICAgICAgIm5hbWUiOiAid2l0aERhdGFiYXNlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRiIiwKICAgICAgICAgICAgICAidHlwZSI6ICJEYXRhYmFzZUludGVyZmFjZSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wZXJhdGlvbiIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRnVuY3Rpb24iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEFpVXNhZ2VTbmFwc2hvdCI6IHsKICAgICAgICAgICJuYW1lIjogImdldEFpVXNhZ2VTbmFwc2hvdCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJBaVVzYWdlU25hcHNob3QgfCB1bmRlZmluZWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVzZXRBaVVzYWdlIjogewogICAgICAgICAgIm5hbWUiOiAicmVzZXRBaVVzYWdlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibGlzdEFpVXNhZ2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0QWlVc2FnZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaVVzYWdlTGlzdE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydEFpVXNhZ2VSZWNvcmRbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic3VtbWFyaXplQWlVc2FnZSI6IHsKICAgICAgICAgICJuYW1lIjogInN1bW1hcml6ZUFpVXNhZ2UiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlVc2FnZVN1bW1hcnlPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFJlY29yZDxzdHJpbmcsIEFpVXNhZ2VTdGF0cz4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlc3Ryb3kiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXN0cm95IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRDbGFzcyIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0Q2xhc3NDb2xsZWN0aW9uIiwKICAgICAgInNjaGVtYSI6IHsKICAgICAgICAidGFibGVOYW1lIjogInNtcnRfY2xhc3NlcyIsCiAgICAgICAgImRkbCI6ICJDUkVBVEUgVEFCTEUgSUYgTk9UIEVYSVNUUyBcInNtcnRfY2xhc3Nlc1wiIChcbiAgXCJpZFwiIFVVSUQgUFJJTUFSWSBLRVkgTk9UIE5VTEwsXG4gIFwic2x1Z1wiIFRFWFQgTk9UIE5VTEwsXG4gIFwiY29udGV4dFwiIFRFWFQgTk9UIE5VTEwgREVGQVVMVCAnJyxcbiAgXCJjcmVhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXAsXG4gIFwidXBkYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wXG4pOyIsCiAgICAgICAgImNvbHVtbnMiOiB7CiAgICAgICAgICAiaWQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlVVSUQiLAogICAgICAgICAgICAicHJpbWFyeUtleSI6IHRydWUsCiAgICAgICAgICAgICJyZWZlcmVuY2VLaW5kIjogImlkIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgInNsdWciOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAiY29udGV4dCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiIgogICAgICAgICAgfSwKICAgICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfSwKICAgICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgImluZGV4ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfY2xhc3Nlc19zbHVnX2NvbnRleHRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgInNsdWciLAogICAgICAgICAgICAgICJjb250ZXh0IgogICAgICAgICAgICBdLAogICAgICAgICAgICAidW5pcXVlIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jbGFzc2VzX2NyZWF0ZWRfYXRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgImNyZWF0ZWRfYXQiCiAgICAgICAgICAgIF0KICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJ2ZXJzaW9uIjogIjIzNGE3MmIwIgogICAgICB9LAogICAgICAiaW1wb3J0UGF0aCI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiCiAgICB9LAogICAgIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0Q29sbGVjdGlvbiI6IHsKICAgICAgIm5hbWUiOiAic21ydGNvbGxlY3Rpb24iLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRDb2xsZWN0aW9uIiwKICAgICAgInF1YWxpZmllZE5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDb2xsZWN0aW9uIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGNvbGxlY3Rpb25zIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2NvbGxlY3Rpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRMYXRlc3RSZWxhdGVkTGlzdE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydExhdGVzdFJlbGF0ZWRSb3c8U21ydE9iamVjdD5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SXRlbUNsYXNzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SXRlbUNsYXNzIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlNtcnRDb2xsZWN0aW9uSXRlbUNsYXNzPE1vZGVsVHlwZT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidmFsaWRhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJ2YWxpZGF0ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY3JlYXRlIjogewogICAgICAgICAgIm5hbWUiOiAiY3JlYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRDcmVhdGVJbnB1dDxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImluaXRpYWxpemUiOiB7CiAgICAgICAgICAibmFtZSI6ICJpbml0aWFsaXplIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJlbnN1cmVTdG9yYWdlUmVhZHkiOiB7CiAgICAgICAgICAibmFtZSI6ICJlbnN1cmVTdG9yYWdlUmVhZHkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRPbmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kT25lIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZEJ5SWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kQnlJZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGUgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kQWxsIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAgICJzdHJpbmcgfCBzdHJpbmdbXSIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJzdHJpbmdbXSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsaXN0QnlJZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0QnlJZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiaWRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmdbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldCI6IHsKICAgICAgICAgICJuYW1lIjogImdldCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWx0ZXIiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyB8IFNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJDb2xsZWN0aW9uQ2FjaGVDb25maWcgfCBmYWxzZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxpc3QiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRMaXN0T3B0aW9uczxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFNtcnRPYmplY3RbXSB8IFJlY29yZDxzdHJpbmcsIHVua25vd24+W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImhhc0Jhc2VDcmVhdGVMaWZlY3ljbGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJoYXNCYXNlQ3JlYXRlTGlmZWN5Y2xlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjb2xsZWN0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0Q29sbGVjdGlvbjxUPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRPclVwc2VydCI6IHsKICAgICAgICAgICJuYW1lIjogImdldE9yVXBzZXJ0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGVmYXVsdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0RGlmZiI6IHsKICAgICAgICAgICJuYW1lIjogImdldERpZmYiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZXhpc3RpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRPYmplY3QgfCBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRPYmplY3QiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkYXRhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb25GaWVsZERlZmluaXRpb24+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHNTeW5jIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RmllbGRzU3luYyIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCBDb2xsZWN0aW9uRmllbGREZWZpbml0aW9uPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZW5lcmF0ZVNjaGVtYSI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlU2NoZW1hIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlVGFibGVOYW1lIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVUYWJsZU5hbWUiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlbGV0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImRlbGV0ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxib29sZWFuPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjb3VudCI6IHsKICAgICAgICAgICJuYW1lIjogImNvdW50IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydExpc3RXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAgICJTbXJ0U3RpUmVhZFNjb3BlIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmYWNldHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJmYWNldHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydEZhY2V0T3B0aW9uczxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxTbXJ0RmFjZXRSZXN1bHRbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY291bnRzIjogewogICAgICAgICAgIm5hbWUiOiAiY291bnRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydExpc3RXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAgICJTbXJ0U3RpUmVhZFNjb3BlIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydENvbGxlY3Rpb25Db3VudHM+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFN0aUNoaWxkTWV0YVR5cGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTdGlDaGlsZE1ldGFUeXBlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInN0cmluZyB8IG51bGwiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicXVlcnkiOiB7CiAgICAgICAgICAibmFtZSI6ICJxdWVyeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJzcWwiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInBhcmFtcyIsCiAgICAgICAgICAgICAgInR5cGUiOiAidW5rbm93bltdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGVbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVtZW1iZXIiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZW1lbWJlciIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgInVua25vd24iLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiRGF0ZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbEFsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIsCiAgICAgICAgICAgICAgICAibnVtYmVyIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TWFwPHN0cmluZywgdW5rbm93bj4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZvcmdldCI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXRTY29wZSI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldFNjb3BlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG51bWJlcj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2VtYW50aWNTZWFyY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJzZW1hbnRpY1NlYXJjaCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJxdWVyeSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNlbWFudGljU2VhcmNoSWRzIjogewogICAgICAgICAgIm5hbWUiOiAic2VtYW50aWNTZWFyY2hJZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicXVlcnkiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIlNtcnRMaXN0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPEFycmF5PG9iamVjdD4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRTaW1pbGFySWRzVG9FbWJlZGRpbmciOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kU2ltaWxhcklkc1RvRW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImVtYmVkZGluZyIsCiAgICAgICAgICAgICAgInR5cGUiOiAibnVtYmVyW10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJTbXJ0TGlzdFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxBcnJheTxvYmplY3Q+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhciI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRTaW1pbGFyIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTW9kZWxUeXBlIHwgc3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiTW9kZWxUeXBlIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRTaW1pbGFyVG9FbWJlZGRpbmciOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kU2ltaWxhclRvRW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImVtYmVkZGluZyIsCiAgICAgICAgICAgICAgInR5cGUiOiAibnVtYmVyW10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJTbXJ0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVNaXNzaW5nRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlTWlzc2luZ0VtYmVkZGluZ3MiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIkZ1bmN0aW9uIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8b2JqZWN0PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENsYXNzIiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydENvbGxlY3Rpb25Db2xsZWN0aW9uIiwKICAgICAgInNjaGVtYSI6IHsKICAgICAgICAidGFibGVOYW1lIjogInNtcnRfY29sbGVjdGlvbnMiLAogICAgICAgICJkZGwiOiAiQ1JFQVRFIFRBQkxFIElGIE5PVCBFWElTVFMgXCJzbXJ0X2NvbGxlY3Rpb25zXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jb2xsZWN0aW9uc19zbHVnX2NvbnRleHRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgInNsdWciLAogICAgICAgICAgICAgICJjb250ZXh0IgogICAgICAgICAgICBdLAogICAgICAgICAgICAidW5pcXVlIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jb2xsZWN0aW9uc19jcmVhdGVkX2F0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJjcmVhdGVkX2F0IgogICAgICAgICAgICBdCiAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAidmVyc2lvbiI6ICIyOTViMGE4MCIKICAgICAgfSwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEhpZXJhcmNoaWNhbCI6IHsKICAgICAgIm5hbWUiOiAic21ydGhpZXJhcmNoaWNhbCIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SGllcmFyY2hpY2FsIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGhpZXJhcmNoaWNhbHMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvaGllcmFyY2hpY2FsLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7CiAgICAgICAgInBhcmVudElkIjogewogICAgICAgICAgInR5cGUiOiAidGV4dCIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZQogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImdldFBhcmVudCI6IHsKICAgICAgICAgICJuYW1lIjogImdldFBhcmVudCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dGhpcyB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldENoaWxkcmVuIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0Q2hpbGRyZW4iLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXNbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QW5jZXN0b3JzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QW5jZXN0b3JzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldERlc2NlbmRhbnRzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RGVzY2VuZGFudHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXNbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SGllcmFyY2h5IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SGllcmFyY2h5IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxIaWVyYXJjaHlWaWV3PHRoaXM+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJtb3ZlVG8iOiB7CiAgICAgICAgICAibmFtZSI6ICJtb3ZlVG8iLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibmV3UGFyZW50IiwKICAgICAgICAgICAgICAidHlwZSI6ICJ0aGlzIHwgc3RyaW5nIHwgbnVsbCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogInRoaXMiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJudWxsIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRPYmplY3QiLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0SGllcmFyY2hpY2FsIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRIaWVyYXJjaGljYWxDb2xsZWN0aW9uIiwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEp1bmN0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0anVuY3Rpb24iLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRKdW5jdGlvbiIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SnVuY3Rpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0anVuY3Rpb25zIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2p1bmN0aW9uLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7fSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImJ5TGVmdCI6IHsKICAgICAgICAgICJuYW1lIjogImJ5TGVmdCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uRmlsdGVyT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUSXRlbVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJieVJpZ2h0IjogewogICAgICAgICAgIm5hbWUiOiAiYnlSaWdodCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VEl0ZW1bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYXR0YWNoIjogewogICAgICAgICAgIm5hbWUiOiAiYXR0YWNoIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImxlZnRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25BdHRhY2hPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZXRhY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXRhY2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2V0TGlua3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJzZXRMaW5rcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmdbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uQXR0YWNoT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAiZXh0ZW5kc1R5cGVBcmciOiAiVEl0ZW0iLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0SnVuY3Rpb24iLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydEp1bmN0aW9uQ29sbGVjdGlvbiIsCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRPYmplY3QiOiB7CiAgICAgICJuYW1lIjogInNtcnRvYmplY3QiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRPYmplY3QiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydE9iamVjdCIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRvYmplY3RzIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL29iamVjdC50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgInR5cGUiOiAiZGF0ZXRpbWUiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9LAogICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgInR5cGUiOiAiZGF0ZXRpbWUiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJtYXJrQXNQZXJzaXN0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJtYXJrQXNQZXJzaXN0ZWQiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZXF1aXJlSW5zZXJ0T25TYXZlIjogewogICAgICAgICAgIm5hbWUiOiAicmVxdWlyZUluc2VydE9uU2F2ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgIndpdGhUcmFuc2FjdGlvbiI6IHsKICAgICAgICAgICJuYW1lIjogIndpdGhUcmFuc2FjdGlvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcGVyYXRpb24iLAogICAgICAgICAgICAgICJ0eXBlIjogIkZ1bmN0aW9uIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbml0aWFsaXplIjogewogICAgICAgICAgIm5hbWUiOiAiaW5pdGlhbGl6ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dGhpcz4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZERhdGFGcm9tRGIiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkRGF0YUZyb21EYiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkYXRhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidG9KU09OIjogewogICAgICAgICAgIm5hbWUiOiAidG9KU09OIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b1BsYWluT2JqZWN0IjogewogICAgICAgICAgIm5hbWUiOiAidG9QbGFpbk9iamVjdCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b1B1YmxpY0pTT04iOiB7CiAgICAgICAgICAibmFtZSI6ICJ0b1B1YmxpY0pTT04iLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlB1YmxpY0pzb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRJZCI6IHsKICAgICAgICAgICJuYW1lIjogImdldElkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFNsdWciOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTbHVnIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFNhdmVkSWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTYXZlZElkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzU2F2ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJpc1NhdmVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInN1cHBvcnRzSnVuY3Rpb25CYXRjaCI6IHsKICAgICAgICAgICJuYW1lIjogInN1cHBvcnRzSnVuY3Rpb25CYXRjaCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJib29sZWFuIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImhhc0Jhc2VKdW5jdGlvbkxpZmVjeWNsZSI6IHsKICAgICAgICAgICJuYW1lIjogImhhc0Jhc2VKdW5jdGlvbkxpZmVjeWNsZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY2FuZGlkYXRlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJib29sZWFuIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidHJ5SnVuY3Rpb25CYXRjaCI6IHsKICAgICAgICAgICJuYW1lIjogInRyeUp1bmN0aW9uQmF0Y2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmVtb3ZlZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdFtdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiYWRkZWQiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRPYmplY3RbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8Ym9vbGVhbj4iLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzYXZlIjogewogICAgICAgICAgIm5hbWUiOiAic2F2ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0U2F2ZU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjbGFpbVJldmlzaW9uIjogewogICAgICAgICAgIm5hbWUiOiAiY2xhaW1SZXZpc2lvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJleHBlY3RlZFVwZGF0ZWRBdCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRGF0ZSB8IHN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIkRhdGUiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjbGFzc2lmeUNvbnN0cmFpbnRFcnJvciI6IHsKICAgICAgICAgICJuYW1lIjogImNsYXNzaWZ5Q29uc3RyYWludEVycm9yIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJtZXNzYWdlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICIndW5pcXVlJyB8ICdub3RfbnVsbCcgfCBudWxsIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZEZyb21JZCI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWRGcm9tSWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZEZyb21TbHVnIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZEZyb21TbHVnIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzIjogewogICAgICAgICAgIm5hbWUiOiAiaXMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY3JpdGVyaWEiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpT3BlcmF0aW9uT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImV2YWx1YXRlIjogewogICAgICAgICAgIm5hbWUiOiAiZXZhbHVhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY3JpdGVyaWEiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkV2YWx1YXRlT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxFdmFsdWF0aW9uUmVzdWx0PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkbyI6IHsKICAgICAgICAgICJuYW1lIjogImRvIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImluc3RydWN0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlPcGVyYXRpb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVzY3JpYmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXNjcmliZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaU9wZXJhdGlvbk9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZWxldGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZWxldGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydERlbGV0ZU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaXNSZWxhdGVkTG9hZGVkIjogewogICAgICAgICAgIm5hbWUiOiAiaXNSZWxhdGVkTG9hZGVkIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiX3NldExvYWRlZFJlbGF0aW9uc2hpcCI6IHsKICAgICAgICAgICJuYW1lIjogIl9zZXRMb2FkZWRSZWxhdGlvbnNoaXAiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAidmFsdWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInVua25vd24iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxvYWRSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZFJlbGF0ZWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJMb2FkUmVsYXRlZE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkUmVsYXRlZE1hbnkiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkUmVsYXRlZE1hbnkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJMb2FkUmVsYXRlZE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFJlbGF0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTG9hZFJlbGF0ZWRPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QXZhaWxhYmxlVG9vbHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRBdmFpbGFibGVUb29scyIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJBSVRvb2xbXSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJleGVjdXRlVG9vbENhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJleGVjdXRlVG9vbENhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAidG9vbENhbGwiLAogICAgICAgICAgICAgICJ0eXBlIjogIlRvb2xDYWxsIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUb29sQ2FsbFJlc3VsdD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVtZW1iZXIiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZW1lbWJlciIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgInVua25vd24iLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiRGF0ZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbEFsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIsCiAgICAgICAgICAgICAgICAibnVtYmVyIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TWFwPHN0cmluZywgdW5rbm93bj4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZvcmdldCI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXRTY29wZSI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldFNjb3BlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG51bWJlcj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVFbWJlZGRpbmdzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkdlbmVyYXRlRW1iZWRkaW5nc09wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0RW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibW9kZWwiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXJbXSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImhhc1N0YWxlRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImhhc1N0YWxlRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8Ym9vbGVhbj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY2xlYXJFbWJlZGRpbmdzIjogewogICAgICAgICAgIm5hbWUiOiAiY2xlYXJFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENsYXNzIiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydE9iamVjdCIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0T2JqZWN0Q29sbGVjdGlvbiIsCiAgICAgICJzY2hlbWEiOiB7CiAgICAgICAgInRhYmxlTmFtZSI6ICJzbXJ0X29iamVjdHMiLAogICAgICAgICJkZGwiOiAiQ1JFQVRFIFRBQkxFIElGIE5PVCBFWElTVFMgXCJzbXJ0X29iamVjdHNcIiAoXG4gIFwiaWRcIiBVVUlEIFBSSU1BUlkgS0VZIE5PVCBOVUxMLFxuICBcInNsdWdcIiBURVhUIE5PVCBOVUxMLFxuICBcImNvbnRleHRcIiBURVhUIE5PVCBOVUxMIERFRkFVTFQgJycsXG4gIFwiY3JlYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wLFxuICBcInVwZGF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcFxuKTsiLAogICAgICAgICJjb2x1bW5zIjogewogICAgICAgICAgImlkIjogewogICAgICAgICAgICAidHlwZSI6ICJVVUlEIiwKICAgICAgICAgICAgInByaW1hcnlLZXkiOiB0cnVlLAogICAgICAgICAgICAicmVmZXJlbmNlS2luZCI6ICJpZCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJzbHVnIjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgImNvbnRleHQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogIiIKICAgICAgICAgIH0sCiAgICAgICAgICAiY3JlYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0sCiAgICAgICAgICAidXBkYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJpbmRleGVzIjogWwogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X29iamVjdHNfc2x1Z19jb250ZXh0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJzbHVnIiwKICAgICAgICAgICAgICAiY29udGV4dCIKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInVuaXF1ZSI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfb2JqZWN0c19jcmVhdGVkX2F0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJjcmVhdGVkX2F0IgogICAgICAgICAgICBdCiAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAidmVyc2lvbiI6ICIyMDRiZjNjNCIKICAgICAgfSwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iOiB7CiAgICAgICJuYW1lIjogInNtcnRwb2x5bW9ycGhpY2Fzc29jaWF0aW9uIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRwb2x5bW9ycGhpY2Fzc29jaWF0aW9ucyIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9wb2x5bW9ycGhpYy1hc3NvY2lhdGlvbi50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJtZXRhVHlwZSI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZSwKICAgICAgICAgICJfbWV0YSI6IHsKICAgICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgIm1ldGFJZCI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZSwKICAgICAgICAgICJfbWV0YSI6IHsKICAgICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgInJvbGUiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJzb3J0T3JkZXIiOiB7CiAgICAgICAgICAidHlwZSI6ICJpbnRlZ2VyIiwKICAgICAgICAgICJyZXF1aXJlZCI6IGZhbHNlLAogICAgICAgICAgImRlZmF1bHQiOiAwCiAgICAgICAgfQogICAgICB9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAiaHlkcmF0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImh5ZHJhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydE9iamVjdCIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uQ29sbGVjdGlvbiIsCiAgICAgICJ2YWxpZGF0aW9uUnVsZXMiOiBbCiAgICAgICAgewogICAgICAgICAgImZpZWxkIjogIm1ldGFUeXBlIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJtZXRhSWQiLAogICAgICAgICAgInJ1bGUiOiAicmVxdWlyZWQiLAogICAgICAgICAgImZpZWxkVHlwZSI6ICJ0ZXh0IgogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgImZpZWxkIjogInJvbGUiLAogICAgICAgICAgInJ1bGUiOiAicmVxdWlyZWQiLAogICAgICAgICAgImZpZWxkVHlwZSI6ICJ0ZXh0IgogICAgICAgIH0KICAgICAgXSwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfQogIH0sCiAgIm1vZHVsZVR5cGUiOiAic21ydCIKfQ==", "" + import.meta.url), new URL("data:application/json;base64,ewogICJ2ZXJzaW9uIjogIjEuMC4wIiwKICAidGltZXN0YW1wIjogMCwKICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAicGFja2FnZVZlcnNpb24iOiAiMC41MS4zNyIsCiAgIm9iamVjdHMiOiB7CiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDbGFzcyI6IHsKICAgICAgIm5hbWUiOiAic21ydGNsYXNzIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0Q2xhc3MiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydENsYXNzIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGNsYXNzZXMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvY2xhc3MudHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAid2l0aERhdGFiYXNlIjogewogICAgICAgICAgIm5hbWUiOiAid2l0aERhdGFiYXNlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRiIiwKICAgICAgICAgICAgICAidHlwZSI6ICJEYXRhYmFzZUludGVyZmFjZSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wZXJhdGlvbiIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRnVuY3Rpb24iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldEFpVXNhZ2VTbmFwc2hvdCI6IHsKICAgICAgICAgICJuYW1lIjogImdldEFpVXNhZ2VTbmFwc2hvdCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJBaVVzYWdlU25hcHNob3QgfCB1bmRlZmluZWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVzZXRBaVVzYWdlIjogewogICAgICAgICAgIm5hbWUiOiAicmVzZXRBaVVzYWdlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibGlzdEFpVXNhZ2UiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0QWlVc2FnZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaVVzYWdlTGlzdE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydEFpVXNhZ2VSZWNvcmRbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic3VtbWFyaXplQWlVc2FnZSI6IHsKICAgICAgICAgICJuYW1lIjogInN1bW1hcml6ZUFpVXNhZ2UiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlVc2FnZVN1bW1hcnlPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFJlY29yZDxzdHJpbmcsIEFpVXNhZ2VTdGF0cz4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlc3Ryb3kiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXN0cm95IiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInZvaWQiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRDbGFzcyIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0Q2xhc3NDb2xsZWN0aW9uIiwKICAgICAgInNjaGVtYSI6IHsKICAgICAgICAidGFibGVOYW1lIjogInNtcnRfY2xhc3NlcyIsCiAgICAgICAgImRkbCI6ICJDUkVBVEUgVEFCTEUgSUYgTk9UIEVYSVNUUyBcInNtcnRfY2xhc3Nlc1wiIChcbiAgXCJpZFwiIFVVSUQgUFJJTUFSWSBLRVkgTk9UIE5VTEwsXG4gIFwic2x1Z1wiIFRFWFQgTk9UIE5VTEwsXG4gIFwiY29udGV4dFwiIFRFWFQgTk9UIE5VTEwgREVGQVVMVCAnJyxcbiAgXCJjcmVhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXAsXG4gIFwidXBkYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wXG4pOyIsCiAgICAgICAgImNvbHVtbnMiOiB7CiAgICAgICAgICAiaWQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlVVSUQiLAogICAgICAgICAgICAicHJpbWFyeUtleSI6IHRydWUsCiAgICAgICAgICAgICJyZWZlcmVuY2VLaW5kIjogImlkIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgInNsdWciOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAiY29udGV4dCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiIgogICAgICAgICAgfSwKICAgICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfSwKICAgICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgICAidHlwZSI6ICJUSU1FU1RBTVAiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogImN1cnJlbnRfdGltZXN0YW1wIgogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgImluZGV4ZXMiOiBbCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfY2xhc3Nlc19zbHVnX2NvbnRleHRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgInNsdWciLAogICAgICAgICAgICAgICJjb250ZXh0IgogICAgICAgICAgICBdLAogICAgICAgICAgICAidW5pcXVlIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jbGFzc2VzX2NyZWF0ZWRfYXRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgImNyZWF0ZWRfYXQiCiAgICAgICAgICAgIF0KICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJ2ZXJzaW9uIjogIjIzNGE3MmIwIgogICAgICB9LAogICAgICAiaW1wb3J0UGF0aCI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiCiAgICB9LAogICAgIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0Q29sbGVjdGlvbiI6IHsKICAgICAgIm5hbWUiOiAic21ydGNvbGxlY3Rpb24iLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRDb2xsZWN0aW9uIiwKICAgICAgInF1YWxpZmllZE5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRDb2xsZWN0aW9uIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGNvbGxlY3Rpb25zIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2NvbGxlY3Rpb24udHMiLAogICAgICAicGFja2FnZU5hbWUiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIiwKICAgICAgImZpZWxkcyI6IHt9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibGlzdFdpdGhMYXRlc3RSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRMYXRlc3RSZWxhdGVkTGlzdE9wdGlvbnM8TW9kZWxUeXBlPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydExhdGVzdFJlbGF0ZWRSb3c8U21ydE9iamVjdD5bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SXRlbUNsYXNzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SXRlbUNsYXNzIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlNtcnRDb2xsZWN0aW9uSXRlbUNsYXNzPE1vZGVsVHlwZT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidmFsaWRhdGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJ2YWxpZGF0ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY3JlYXRlIjogewogICAgICAgICAgIm5hbWUiOiAiY3JlYXRlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRDcmVhdGVJbnB1dDxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImluaXRpYWxpemUiOiB7CiAgICAgICAgICAibmFtZSI6ICJpbml0aWFsaXplIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJlbnN1cmVTdG9yYWdlUmVhZHkiOiB7CiAgICAgICAgICAibmFtZSI6ICJlbnN1cmVTdG9yYWdlUmVhZHkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRPbmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kT25lIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlIHwgbnVsbD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZmluZEJ5SWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kQnlJZCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGUgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kQWxsIjogewogICAgICAgICAgIm5hbWUiOiAiZmluZEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgIlNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAgICJzdHJpbmcgfCBzdHJpbmdbXSIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJzdHJpbmdbXSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsaXN0QnlJZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0QnlJZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiaWRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmdbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TW9kZWxUeXBlW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldCI6IHsKICAgICAgICAgICJuYW1lIjogImdldCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWx0ZXIiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyB8IFNtcnRXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJDb2xsZWN0aW9uQ2FjaGVDb25maWcgfCBmYWxzZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPE1vZGVsVHlwZSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxpc3QiOiB7CiAgICAgICAgICAibmFtZSI6ICJsaXN0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRMaXN0T3B0aW9uczxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFNtcnRPYmplY3RbXSB8IFJlY29yZDxzdHJpbmcsIHVua25vd24+W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImhhc0Jhc2VDcmVhdGVMaWZlY3ljbGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJoYXNCYXNlQ3JlYXRlTGlmZWN5Y2xlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJjb2xsZWN0aW9uIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0Q29sbGVjdGlvbjxUPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRPclVwc2VydCI6IHsKICAgICAgICAgICJuYW1lIjogImdldE9yVXBzZXJ0IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZGVmYXVsdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlJlY29yZDxzdHJpbmcsIHVua25vd24+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0RGlmZiI6IHsKICAgICAgICAgICJuYW1lIjogImdldERpZmYiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZXhpc3RpbmciLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRPYmplY3QgfCBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRPYmplY3QiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkYXRhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8UmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb25GaWVsZERlZmluaXRpb24+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHNTeW5jIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RmllbGRzU3luYyIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCBDb2xsZWN0aW9uRmllbGREZWZpbml0aW9uPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZW5lcmF0ZVNjaGVtYSI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlU2NoZW1hIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdlbmVyYXRlVGFibGVOYW1lIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVUYWJsZU5hbWUiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImRlbGV0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImRlbGV0ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJpZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxib29sZWFuPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjb3VudCI6IHsKICAgICAgICAgICJuYW1lIjogImNvdW50IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydExpc3RXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAgICJTbXJ0U3RpUmVhZFNjb3BlIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmYWNldHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJmYWNldHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydEZhY2V0T3B0aW9uczxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxTbXJ0RmFjZXRSZXN1bHRbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY291bnRzIjogewogICAgICAgICAgIm5hbWUiOiAiY291bnRzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAiU21ydExpc3RXaGVyZUNsYXVzZTxNb2RlbFR5cGU+IiwKICAgICAgICAgICAgICAgICJTbXJ0U3RpUmVhZFNjb3BlIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8U21ydENvbGxlY3Rpb25Db3VudHM+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFN0aUNoaWxkTWV0YVR5cGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTdGlDaGlsZE1ldGFUeXBlIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogInN0cmluZyB8IG51bGwiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicXVlcnkiOiB7CiAgICAgICAgICAibmFtZSI6ICJxdWVyeSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJzcWwiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInBhcmFtcyIsCiAgICAgICAgICAgICAgInR5cGUiOiAidW5rbm93bltdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxNb2RlbFR5cGVbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVtZW1iZXIiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZW1lbWJlciIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgInVua25vd24iLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiRGF0ZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbEFsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIsCiAgICAgICAgICAgICAgICAibnVtYmVyIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TWFwPHN0cmluZywgdW5rbm93bj4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZvcmdldCI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXRTY29wZSI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldFNjb3BlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG51bWJlcj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2VtYW50aWNTZWFyY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJzZW1hbnRpY1NlYXJjaCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJxdWVyeSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiU21ydFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInNlbWFudGljU2VhcmNoSWRzIjogewogICAgICAgICAgIm5hbWUiOiAic2VtYW50aWNTZWFyY2hJZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicXVlcnkiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIlNtcnRMaXN0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPEFycmF5PG9iamVjdD4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRTaW1pbGFySWRzVG9FbWJlZGRpbmciOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kU2ltaWxhcklkc1RvRW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImVtYmVkZGluZyIsCiAgICAgICAgICAgICAgInR5cGUiOiAibnVtYmVyW10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJTbXJ0TGlzdFdoZXJlQ2xhdXNlPE1vZGVsVHlwZT4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxBcnJheTxvYmplY3Q+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmaW5kU2ltaWxhciI6IHsKICAgICAgICAgICJuYW1lIjogImZpbmRTaW1pbGFyIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTW9kZWxUeXBlIHwgc3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZSwKICAgICAgICAgICAgICAidW5pb25CcmFuY2hlcyI6IFsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAiTW9kZWxUeXBlIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKICAgICAgICAgICAgICAibWVtYmVyVHlwZXMiOiBbCiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgImJvb2xlYW4iCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZpbmRTaW1pbGFyVG9FbWJlZGRpbmciOiB7CiAgICAgICAgICAibmFtZSI6ICJmaW5kU2ltaWxhclRvRW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImVtYmVkZGluZyIsCiAgICAgICAgICAgICAgInR5cGUiOiAibnVtYmVyW10iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAibnVtYmVyIiwKICAgICAgICAgICAgICAgICJTbXJ0V2hlcmVDbGF1c2U8TW9kZWxUeXBlPiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVNaXNzaW5nRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImdlbmVyYXRlTWlzc2luZ0VtYmVkZGluZ3MiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAib2JqZWN0IiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJudW1iZXIiLAogICAgICAgICAgICAgICAgIkZ1bmN0aW9uIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8b2JqZWN0PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENsYXNzIiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydENvbGxlY3Rpb25Db2xsZWN0aW9uIiwKICAgICAgInNjaGVtYSI6IHsKICAgICAgICAidGFibGVOYW1lIjogInNtcnRfY29sbGVjdGlvbnMiLAogICAgICAgICJkZGwiOiAiQ1JFQVRFIFRBQkxFIElGIE5PVCBFWElTVFMgXCJzbXJ0X2NvbGxlY3Rpb25zXCIgKFxuICBcImlkXCIgVVVJRCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJzbHVnXCIgVEVYVCBOT1QgTlVMTCxcbiAgXCJjb250ZXh0XCIgVEVYVCBOT1QgTlVMTCBERUZBVUxUICcnLFxuICBcImNyZWF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcCxcbiAgXCJ1cGRhdGVkX2F0XCIgVElNRVNUQU1QIE5PVCBOVUxMIERFRkFVTFQgY3VycmVudF90aW1lc3RhbXBcbik7IiwKICAgICAgICAiY29sdW1ucyI6IHsKICAgICAgICAgICJpZCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVVVJRCIsCiAgICAgICAgICAgICJwcmltYXJ5S2V5IjogdHJ1ZSwKICAgICAgICAgICAgInJlZmVyZW5jZUtpbmQiOiAiaWQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICAic2x1ZyI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVEVYVCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJjb250ZXh0IjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICIiCiAgICAgICAgICB9LAogICAgICAgICAgImNyZWF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9LAogICAgICAgICAgInVwZGF0ZWRfYXQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRJTUVTVEFNUCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZSwKICAgICAgICAgICAgImRlZmF1bHQiOiAiY3VycmVudF90aW1lc3RhbXAiCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICAiaW5kZXhlcyI6IFsKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jb2xsZWN0aW9uc19zbHVnX2NvbnRleHRfaWR4IiwKICAgICAgICAgICAgImNvbHVtbnMiOiBbCiAgICAgICAgICAgICAgInNsdWciLAogICAgICAgICAgICAgICJjb250ZXh0IgogICAgICAgICAgICBdLAogICAgICAgICAgICAidW5pcXVlIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgIm5hbWUiOiAic21ydF9jb2xsZWN0aW9uc19jcmVhdGVkX2F0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJjcmVhdGVkX2F0IgogICAgICAgICAgICBdCiAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAidmVyc2lvbiI6ICIyOTViMGE4MCIKICAgICAgfSwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEhpZXJhcmNoaWNhbCI6IHsKICAgICAgIm5hbWUiOiAic21ydGhpZXJhcmNoaWNhbCIsCiAgICAgICJjbGFzc05hbWUiOiAiU21ydEhpZXJhcmNoaWNhbCIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SGllcmFyY2hpY2FsIiwKICAgICAgImNvbGxlY3Rpb24iOiAic21ydGhpZXJhcmNoaWNhbHMiLAogICAgICAiZmlsZVBhdGgiOiAicGFja2FnZXMvY29yZS9zcmMvaGllcmFyY2hpY2FsLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7CiAgICAgICAgInBhcmVudElkIjogewogICAgICAgICAgInR5cGUiOiAidGV4dCIsCiAgICAgICAgICAicmVxdWlyZWQiOiBmYWxzZQogICAgICAgIH0KICAgICAgfSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImdldFBhcmVudCI6IHsKICAgICAgICAgICJuYW1lIjogImdldFBhcmVudCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dGhpcyB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldENoaWxkcmVuIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0Q2hpbGRyZW4iLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXNbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QW5jZXN0b3JzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0QW5jZXN0b3JzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzW10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldERlc2NlbmRhbnRzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RGVzY2VuZGFudHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHRoaXNbXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0SGllcmFyY2h5IjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0SGllcmFyY2h5IiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxIaWVyYXJjaHlWaWV3PHRoaXM+PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJtb3ZlVG8iOiB7CiAgICAgICAgICAibmFtZSI6ICJtb3ZlVG8iLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibmV3UGFyZW50IiwKICAgICAgICAgICAgICAidHlwZSI6ICJ0aGlzIHwgc3RyaW5nIHwgbnVsbCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogInRoaXMiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJudWxsIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfQogICAgICB9LAogICAgICAiZGVjb3JhdG9yQ29uZmlnIjoge30sCiAgICAgICJleHRlbmRzIjogIlNtcnRPYmplY3QiLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0SGllcmFyY2hpY2FsIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRIaWVyYXJjaGljYWxDb2xsZWN0aW9uIiwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydEp1bmN0aW9uIjogewogICAgICAibmFtZSI6ICJzbXJ0anVuY3Rpb24iLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRKdW5jdGlvbiIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0SnVuY3Rpb24iLAogICAgICAiY29sbGVjdGlvbiI6ICJzbXJ0anVuY3Rpb25zIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL2p1bmN0aW9uLnRzIiwKICAgICAgInBhY2thZ2VOYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIsCiAgICAgICJmaWVsZHMiOiB7fSwKICAgICAgIm1ldGhvZHMiOiB7CiAgICAgICAgImJ5TGVmdCI6IHsKICAgICAgICAgICJuYW1lIjogImJ5TGVmdCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uRmlsdGVyT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUSXRlbVtdPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJieVJpZ2h0IjogewogICAgICAgICAgIm5hbWUiOiAiYnlSaWdodCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8VEl0ZW1bXT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYXR0YWNoIjogewogICAgICAgICAgIm5hbWUiOiAiYXR0YWNoIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImxlZnRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmlnaHRJZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiSnVuY3Rpb25BdHRhY2hPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFRJdGVtPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZXRhY2giOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXRhY2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibGVmdElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJyaWdodElkIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJKdW5jdGlvbkZpbHRlck9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAic2V0TGlua3MiOiB7CiAgICAgICAgICAibmFtZSI6ICJzZXRMaW5rcyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJsZWZ0SWQiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogInJpZ2h0SWRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmdbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdHMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkp1bmN0aW9uQXR0YWNoT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENvbGxlY3Rpb24iLAogICAgICAiZXh0ZW5kc1R5cGVBcmciOiAiVEl0ZW0iLAogICAgICAiZXhwb3J0TmFtZSI6ICJTbXJ0SnVuY3Rpb24iLAogICAgICAiY29sbGVjdGlvbkV4cG9ydE5hbWUiOiAiU21ydEp1bmN0aW9uQ29sbGVjdGlvbiIsCiAgICAgICJpbXBvcnRQYXRoIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZSIKICAgIH0sCiAgICAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlOlNtcnRPYmplY3QiOiB7CiAgICAgICJuYW1lIjogInNtcnRvYmplY3QiLAogICAgICAiY2xhc3NOYW1lIjogIlNtcnRPYmplY3QiLAogICAgICAicXVhbGlmaWVkTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydE9iamVjdCIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRvYmplY3RzIiwKICAgICAgImZpbGVQYXRoIjogInBhY2thZ2VzL2NvcmUvc3JjL29iamVjdC50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJjcmVhdGVkX2F0IjogewogICAgICAgICAgInR5cGUiOiAiZGF0ZXRpbWUiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9LAogICAgICAgICJ1cGRhdGVkX2F0IjogewogICAgICAgICAgInR5cGUiOiAiZGF0ZXRpbWUiLAogICAgICAgICAgInJlcXVpcmVkIjogZmFsc2UKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJtZXRob2RzIjogewogICAgICAgICJtYXJrQXNQZXJzaXN0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJtYXJrQXNQZXJzaXN0ZWQiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAidm9pZCIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJyZXF1aXJlSW5zZXJ0T25TYXZlIjogewogICAgICAgICAgIm5hbWUiOiAicmVxdWlyZUluc2VydE9uU2F2ZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgIndpdGhUcmFuc2FjdGlvbiI6IHsKICAgICAgICAgICJuYW1lIjogIndpdGhUcmFuc2FjdGlvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcGVyYXRpb24iLAogICAgICAgICAgICAgICJ0eXBlIjogIkZ1bmN0aW9uIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbml0aWFsaXplIjogewogICAgICAgICAgIm5hbWUiOiAiaW5pdGlhbGl6ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dGhpcz4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZERhdGFGcm9tRGIiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkRGF0YUZyb21EYiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJkYXRhIiwKICAgICAgICAgICAgICAidHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRGaWVsZHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRGaWVsZHMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidG9KU09OIjogewogICAgICAgICAgIm5hbWUiOiAidG9KU09OIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b1BsYWluT2JqZWN0IjogewogICAgICAgICAgIm5hbWUiOiAidG9QbGFpbk9iamVjdCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJ0b1B1YmxpY0pTT04iOiB7CiAgICAgICAgICAibmFtZSI6ICJ0b1B1YmxpY0pTT04iLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIlB1YmxpY0pzb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJnZXRJZCI6IHsKICAgICAgICAgICJuYW1lIjogImdldElkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFNsdWciOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTbHVnIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFNhdmVkSWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRTYXZlZElkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzU2F2ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJpc1NhdmVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInN1cHBvcnRzSnVuY3Rpb25CYXRjaCI6IHsKICAgICAgICAgICJuYW1lIjogInN1cHBvcnRzSnVuY3Rpb25CYXRjaCIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJib29sZWFuIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImhhc0Jhc2VKdW5jdGlvbkxpZmVjeWNsZSI6IHsKICAgICAgICAgICJuYW1lIjogImhhc0Jhc2VKdW5jdGlvbkxpZmVjeWNsZSIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY2FuZGlkYXRlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJib29sZWFuIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAidHJ5SnVuY3Rpb25CYXRjaCI6IHsKICAgICAgICAgICJuYW1lIjogInRyeUp1bmN0aW9uQmF0Y2giLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAicmVtb3ZlZCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydE9iamVjdFtdIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiYWRkZWQiLAogICAgICAgICAgICAgICJ0eXBlIjogIlNtcnRPYmplY3RbXSIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8Ym9vbGVhbj4iLAogICAgICAgICAgImlzU3RhdGljIjogdHJ1ZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJzYXZlIjogewogICAgICAgICAgIm5hbWUiOiAic2F2ZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJTbXJ0U2F2ZU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjbGFpbVJldmlzaW9uIjogewogICAgICAgICAgIm5hbWUiOiAiY2xhaW1SZXZpc2lvbiIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJleHBlY3RlZFVwZGF0ZWRBdCIsCiAgICAgICAgICAgICAgInR5cGUiOiAiRGF0ZSB8IHN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgInVuaW9uQnJhbmNoZXMiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ0eXBlIjogIkRhdGUiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx0aGlzPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJjbGFzc2lmeUNvbnN0cmFpbnRFcnJvciI6IHsKICAgICAgICAgICJuYW1lIjogImNsYXNzaWZ5Q29uc3RyYWludEVycm9yIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJtZXNzYWdlIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICIndW5pcXVlJyB8ICdub3RfbnVsbCcgfCBudWxsIiwKICAgICAgICAgICJpc1N0YXRpYyI6IHRydWUsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZEZyb21JZCI6IHsKICAgICAgICAgICJuYW1lIjogImxvYWRGcm9tSWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAibG9hZEZyb21TbHVnIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZEZyb21TbHVnIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImlzIjogewogICAgICAgICAgIm5hbWUiOiAiaXMiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY3JpdGVyaWEiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkFpT3BlcmF0aW9uT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiYW55IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImV2YWx1YXRlIjogewogICAgICAgICAgIm5hbWUiOiAiZXZhbHVhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiY3JpdGVyaWEiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkV2YWx1YXRlT3B0aW9ucyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxFdmFsdWF0aW9uUmVzdWx0PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkbyI6IHsKICAgICAgICAgICJuYW1lIjogImRvIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImluc3RydWN0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiQWlPcGVyYXRpb25PcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJhbnkiLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZGVzY3JpYmUiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZXNjcmliZSIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJBaU9wZXJhdGlvbk9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImFueSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJkZWxldGUiOiB7CiAgICAgICAgICAibmFtZSI6ICJkZWxldGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0aW9ucyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiU21ydERlbGV0ZU9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaXNSZWxhdGVkTG9hZGVkIjogewogICAgICAgICAgIm5hbWUiOiAiaXNSZWxhdGVkTG9hZGVkIiwKICAgICAgICAgICJhc3luYyI6IGZhbHNlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJmaWVsZE5hbWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogImJvb2xlYW4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiX3NldExvYWRlZFJlbGF0aW9uc2hpcCI6IHsKICAgICAgICAgICJuYW1lIjogIl9zZXRMb2FkZWRSZWxhdGlvbnNoaXAiLAogICAgICAgICAgImFzeW5jIjogZmFsc2UsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAidmFsdWUiLAogICAgICAgICAgICAgICJ0eXBlIjogInVua25vd24iLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJ2b2lkIiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImxvYWRSZWxhdGVkIjogewogICAgICAgICAgIm5hbWUiOiAibG9hZFJlbGF0ZWQiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJMb2FkUmVsYXRlZE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55PiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJsb2FkUmVsYXRlZE1hbnkiOiB7CiAgICAgICAgICAibmFtZSI6ICJsb2FkUmVsYXRlZE1hbnkiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAiZmllbGROYW1lIiwKICAgICAgICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRzIiwKICAgICAgICAgICAgICAidHlwZSI6ICJMb2FkUmVsYXRlZE9wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8YW55W10+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImdldFJlbGF0ZWQiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRSZWxhdGVkIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAib3B0cyIsCiAgICAgICAgICAgICAgInR5cGUiOiAiTG9hZFJlbGF0ZWRPcHRpb25zIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPGFueT4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0QXZhaWxhYmxlVG9vbHMiOiB7CiAgICAgICAgICAibmFtZSI6ICJnZXRBdmFpbGFibGVUb29scyIsCiAgICAgICAgICAiYXN5bmMiOiBmYWxzZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJBSVRvb2xbXSIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJleGVjdXRlVG9vbENhbGwiOiB7CiAgICAgICAgICAibmFtZSI6ICJleGVjdXRlVG9vbENhbGwiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAidG9vbENhbGwiLAogICAgICAgICAgICAgICJ0eXBlIjogIlRvb2xDYWxsIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxUb29sQ2FsbFJlc3VsdD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAicmVtZW1iZXIiOiB7CiAgICAgICAgICAibmFtZSI6ICJyZW1lbWJlciIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgInVua25vd24iLAogICAgICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgICAgICAiRGF0ZSIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHZvaWQ+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICAgImJvb2xlYW4iLAogICAgICAgICAgICAgICAgIm51bWJlciIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPHVua25vd24+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgInJlY2FsbEFsbCI6IHsKICAgICAgICAgICJuYW1lIjogInJlY2FsbEFsbCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIsCiAgICAgICAgICAgICAgICAibnVtYmVyIgogICAgICAgICAgICAgIF0KICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8TWFwPHN0cmluZywgdW5rbm93bj4+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImZvcmdldCI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldCIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibmFtZSI6ICJvcHRpb25zIiwKICAgICAgICAgICAgICAidHlwZSI6ICJvYmplY3QiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IGZhbHNlLAogICAgICAgICAgICAgICJtZW1iZXJUeXBlcyI6IFsKICAgICAgICAgICAgICAgICJzdHJpbmciCiAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9LAogICAgICAgICJmb3JnZXRTY29wZSI6IHsKICAgICAgICAgICJuYW1lIjogImZvcmdldFNjb3BlIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIm9iamVjdCIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogZmFsc2UsCiAgICAgICAgICAgICAgIm1lbWJlclR5cGVzIjogWwogICAgICAgICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAgICAgICAiYm9vbGVhbiIKICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0KICAgICAgICAgIF0sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPG51bWJlcj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2VuZXJhdGVFbWJlZGRpbmdzIjogewogICAgICAgICAgIm5hbWUiOiAiZ2VuZXJhdGVFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogIm9wdGlvbnMiLAogICAgICAgICAgICAgICJ0eXBlIjogIkdlbmVyYXRlRW1iZWRkaW5nc09wdGlvbnMiLAogICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKICAgICAgICAgICAgfQogICAgICAgICAgXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8dm9pZD4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiZ2V0RW1iZWRkaW5nIjogewogICAgICAgICAgIm5hbWUiOiAiZ2V0RW1iZWRkaW5nIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJuYW1lIjogImZpZWxkTmFtZSIsCiAgICAgICAgICAgICAgInR5cGUiOiAic3RyaW5nIiwKICAgICAgICAgICAgICAib3B0aW9uYWwiOiBmYWxzZQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIm5hbWUiOiAibW9kZWwiLAogICAgICAgICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICBdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTxudW1iZXJbXSB8IG51bGw+IiwKICAgICAgICAgICJpc1N0YXRpYyI6IGZhbHNlLAogICAgICAgICAgImlzUHVibGljIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImhhc1N0YWxlRW1iZWRkaW5ncyI6IHsKICAgICAgICAgICJuYW1lIjogImhhc1N0YWxlRW1iZWRkaW5ncyIsCiAgICAgICAgICAiYXN5bmMiOiB0cnVlLAogICAgICAgICAgInBhcmFtZXRlcnMiOiBbXSwKICAgICAgICAgICJyZXR1cm5UeXBlIjogIlByb21pc2U8Ym9vbGVhbj4iLAogICAgICAgICAgImlzU3RhdGljIjogZmFsc2UsCiAgICAgICAgICAiaXNQdWJsaWMiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiY2xlYXJFbWJlZGRpbmdzIjogewogICAgICAgICAgIm5hbWUiOiAiY2xlYXJFbWJlZGRpbmdzIiwKICAgICAgICAgICJhc3luYyI6IHRydWUsCiAgICAgICAgICAicGFyYW1ldGVycyI6IFtdLAogICAgICAgICAgInJldHVyblR5cGUiOiAiUHJvbWlzZTx2b2lkPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydENsYXNzIiwKICAgICAgImV4cG9ydE5hbWUiOiAiU21ydE9iamVjdCIsCiAgICAgICJjb2xsZWN0aW9uRXhwb3J0TmFtZSI6ICJTbXJ0T2JqZWN0Q29sbGVjdGlvbiIsCiAgICAgICJzY2hlbWEiOiB7CiAgICAgICAgInRhYmxlTmFtZSI6ICJzbXJ0X29iamVjdHMiLAogICAgICAgICJkZGwiOiAiQ1JFQVRFIFRBQkxFIElGIE5PVCBFWElTVFMgXCJzbXJ0X29iamVjdHNcIiAoXG4gIFwiaWRcIiBVVUlEIFBSSU1BUlkgS0VZIE5PVCBOVUxMLFxuICBcInNsdWdcIiBURVhUIE5PVCBOVUxMLFxuICBcImNvbnRleHRcIiBURVhUIE5PVCBOVUxMIERFRkFVTFQgJycsXG4gIFwiY3JlYXRlZF9hdFwiIFRJTUVTVEFNUCBOT1QgTlVMTCBERUZBVUxUIGN1cnJlbnRfdGltZXN0YW1wLFxuICBcInVwZGF0ZWRfYXRcIiBUSU1FU1RBTVAgTk9UIE5VTEwgREVGQVVMVCBjdXJyZW50X3RpbWVzdGFtcFxuKTsiLAogICAgICAgICJjb2x1bW5zIjogewogICAgICAgICAgImlkIjogewogICAgICAgICAgICAidHlwZSI6ICJVVUlEIiwKICAgICAgICAgICAgInByaW1hcnlLZXkiOiB0cnVlLAogICAgICAgICAgICAicmVmZXJlbmNlS2luZCI6ICJpZCIsCiAgICAgICAgICAgICJub3ROdWxsIjogdHJ1ZQogICAgICAgICAgfSwKICAgICAgICAgICJzbHVnIjogewogICAgICAgICAgICAidHlwZSI6ICJURVhUIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlCiAgICAgICAgICB9LAogICAgICAgICAgImNvbnRleHQiOiB7CiAgICAgICAgICAgICJ0eXBlIjogIlRFWFQiLAogICAgICAgICAgICAibm90TnVsbCI6IHRydWUsCiAgICAgICAgICAgICJkZWZhdWx0IjogIiIKICAgICAgICAgIH0sCiAgICAgICAgICAiY3JlYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0sCiAgICAgICAgICAidXBkYXRlZF9hdCI6IHsKICAgICAgICAgICAgInR5cGUiOiAiVElNRVNUQU1QIiwKICAgICAgICAgICAgIm5vdE51bGwiOiB0cnVlLAogICAgICAgICAgICAiZGVmYXVsdCI6ICJjdXJyZW50X3RpbWVzdGFtcCIKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJpbmRleGVzIjogWwogICAgICAgICAgewogICAgICAgICAgICAibmFtZSI6ICJzbXJ0X29iamVjdHNfc2x1Z19jb250ZXh0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJzbHVnIiwKICAgICAgICAgICAgICAiY29udGV4dCIKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInVuaXF1ZSI6IHRydWUKICAgICAgICAgIH0sCiAgICAgICAgICB7CiAgICAgICAgICAgICJuYW1lIjogInNtcnRfb2JqZWN0c19jcmVhdGVkX2F0X2lkeCIsCiAgICAgICAgICAgICJjb2x1bW5zIjogWwogICAgICAgICAgICAgICJjcmVhdGVkX2F0IgogICAgICAgICAgICBdCiAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAidmVyc2lvbiI6ICIyMDRiZjNjNCIKICAgICAgfSwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfSwKICAgICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmU6U21ydFBvbHltb3JwaGljQXNzb2NpYXRpb24iOiB7CiAgICAgICJuYW1lIjogInNtcnRwb2x5bW9ycGhpY2Fzc29jaWF0aW9uIiwKICAgICAgImNsYXNzTmFtZSI6ICJTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJxdWFsaWZpZWROYW1lIjogIkBoYXBweXZlcnRpY2FsL3NtcnQtY29yZTpTbXJ0UG9seW1vcnBoaWNBc3NvY2lhdGlvbiIsCiAgICAgICJjb2xsZWN0aW9uIjogInNtcnRwb2x5bW9ycGhpY2Fzc29jaWF0aW9ucyIsCiAgICAgICJmaWxlUGF0aCI6ICJwYWNrYWdlcy9jb3JlL3NyYy9wb2x5bW9ycGhpYy1hc3NvY2lhdGlvbi50cyIsCiAgICAgICJwYWNrYWdlTmFtZSI6ICJAaGFwcHl2ZXJ0aWNhbC9zbXJ0LWNvcmUiLAogICAgICAiZmllbGRzIjogewogICAgICAgICJtZXRhVHlwZSI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZSwKICAgICAgICAgICJfbWV0YSI6IHsKICAgICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgIm1ldGFJZCI6IHsKICAgICAgICAgICJ0eXBlIjogInRleHQiLAogICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZSwKICAgICAgICAgICJfbWV0YSI6IHsKICAgICAgICAgICAgInJlcXVpcmVkIjogdHJ1ZQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgInJvbGUiOiB7CiAgICAgICAgICAidHlwZSI6ICJ0ZXh0IiwKICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUsCiAgICAgICAgICAiX21ldGEiOiB7CiAgICAgICAgICAgICJyZXF1aXJlZCI6IHRydWUKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgICJzb3J0T3JkZXIiOiB7CiAgICAgICAgICAidHlwZSI6ICJpbnRlZ2VyIiwKICAgICAgICAgICJyZXF1aXJlZCI6IGZhbHNlLAogICAgICAgICAgImRlZmF1bHQiOiAwCiAgICAgICAgfQogICAgICB9LAogICAgICAibWV0aG9kcyI6IHsKICAgICAgICAiaHlkcmF0ZSI6IHsKICAgICAgICAgICJuYW1lIjogImh5ZHJhdGUiLAogICAgICAgICAgImFzeW5jIjogdHJ1ZSwKICAgICAgICAgICJwYXJhbWV0ZXJzIjogW10sCiAgICAgICAgICAicmV0dXJuVHlwZSI6ICJQcm9taXNlPFQgfCBudWxsPiIsCiAgICAgICAgICAiaXNTdGF0aWMiOiBmYWxzZSwKICAgICAgICAgICJpc1B1YmxpYyI6IHRydWUKICAgICAgICB9CiAgICAgIH0sCiAgICAgICJkZWNvcmF0b3JDb25maWciOiB7fSwKICAgICAgImV4dGVuZHMiOiAiU21ydE9iamVjdCIsCiAgICAgICJleHBvcnROYW1lIjogIlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uIiwKICAgICAgImNvbGxlY3Rpb25FeHBvcnROYW1lIjogIlNtcnRQb2x5bW9ycGhpY0Fzc29jaWF0aW9uQ29sbGVjdGlvbiIsCiAgICAgICJ2YWxpZGF0aW9uUnVsZXMiOiBbCiAgICAgICAgewogICAgICAgICAgImZpZWxkIjogIm1ldGFUeXBlIiwKICAgICAgICAgICJydWxlIjogInJlcXVpcmVkIiwKICAgICAgICAgICJmaWVsZFR5cGUiOiAidGV4dCIKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICJmaWVsZCI6ICJtZXRhSWQiLAogICAgICAgICAgInJ1bGUiOiAicmVxdWlyZWQiLAogICAgICAgICAgImZpZWxkVHlwZSI6ICJ0ZXh0IgogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgImZpZWxkIjogInJvbGUiLAogICAgICAgICAgInJ1bGUiOiAicmVxdWlyZWQiLAogICAgICAgICAgImZpZWxkVHlwZSI6ICJ0ZXh0IgogICAgICAgIH0KICAgICAgXSwKICAgICAgImltcG9ydFBhdGgiOiAiQGhhcHB5dmVydGljYWwvc21ydC1jb3JlIgogICAgfQogIH0sCiAgIm1vZHVsZVR5cGUiOiAic21ydCIKfQ==", "" + import.meta.url)] : [new URL("../manifest.json", "" + import.meta.url)];
291
291
  for (const candidate of candidates) try {
292
292
  if (!builtins.fs.existsSync(candidate)) continue;
293
293
  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.51.35",
5
+ "packageVersion": "0.51.37",
6
6
  "objects": {
7
7
  "@happyvertical/smrt-core:SmrtClass": {
8
8
  "name": "smrtclass",
@@ -3,12 +3,12 @@
3
3
  "sensitiveFieldsExcluded": true,
4
4
  "generatedAt": "1970-01-01T00:00:00.000Z",
5
5
  "packageName": "@happyvertical/smrt-core",
6
- "packageVersion": "0.51.35",
6
+ "packageVersion": "0.51.37",
7
7
  "sourceManifestPath": "dist/manifest.json",
8
8
  "agentDocPath": "AGENTS.md",
9
9
  "sourceHashes": {
10
- "manifest": "6be0fd61ff5fc92bf9d39e9213fce85c46106c59c8efdc7c9a4ce3fdd35ce185",
11
- "packageJson": "a0d622f309739c5d88315db5d638d15383b2a37ddbcc20a7adb2e2141668d93d",
10
+ "manifest": "50308a82eb2cad49c908c5f676fdef0cd8588eba855aea27d55788989a843b24",
11
+ "packageJson": "e829a4a3a62fd7131b10e3126c0d890bd45235877f94eb7997b464a53ade262c",
12
12
  "agents": "79356014d92fdf656f648e5c765374913104445a5542243f4819ef362c77a8e5",
13
13
  "moduleDoc:agents/object-runtime.md": "34a4e740c109467cd5486c4af0e3bf4b63915697721ab584df0e5506ea9290ca",
14
14
  "moduleDoc:agents/revision-guard.md": "aa6b1ddb5b6b49fa27ebbe575ec7fcd6d5ceb35ee25acc702f877a226eb9a99a",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@happyvertical/smrt-core",
3
- "version": "0.51.35",
3
+ "version": "0.51.37",
4
4
  "description": "Core AI agent framework with standardized collections, object-relational mapping, and code generators",
5
5
  "author": "HappyVertical",
6
6
  "type": "module",
@@ -150,15 +150,15 @@
150
150
  }
151
151
  },
152
152
  "dependencies": {
153
- "@happyvertical/ai": "^0.94.1",
154
- "@happyvertical/files": "^0.94.1",
155
- "@happyvertical/json": "^0.94.1",
156
- "@happyvertical/logger": "^0.94.1",
157
- "@happyvertical/smrt-config": "0.51.35",
158
- "@happyvertical/smrt-scanner": "0.51.35",
159
- "@happyvertical/smrt-types": "0.51.35",
160
- "@happyvertical/sql": "^0.94.1",
161
- "@happyvertical/utils": "^0.94.1",
153
+ "@happyvertical/ai": "^0.96.0",
154
+ "@happyvertical/files": "^0.96.0",
155
+ "@happyvertical/json": "^0.96.0",
156
+ "@happyvertical/logger": "^0.96.0",
157
+ "@happyvertical/smrt-config": "0.51.37",
158
+ "@happyvertical/smrt-scanner": "0.51.37",
159
+ "@happyvertical/smrt-types": "0.51.37",
160
+ "@happyvertical/sql": "^0.96.0",
161
+ "@happyvertical/utils": "^0.96.0",
162
162
  "@oxc-project/runtime": "^0.150.0",
163
163
  "cheerio": "^1.2.0",
164
164
  "fast-glob": "3.3.3",