@akashnetwork/chain-sdk 1.0.0-alpha.23 → 1.0.0-alpha.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/README.md +25 -0
  2. package/dist/cjs/generated/createCosmosSDK.cjs +237 -237
  3. package/dist/cjs/generated/createCosmosSDK.cjs.map +2 -2
  4. package/dist/cjs/generated/createIbc-goSDK.cjs +91 -91
  5. package/dist/cjs/generated/createIbc-goSDK.cjs.map +2 -2
  6. package/dist/cjs/generated/createNodeSDK.cjs +68 -61
  7. package/dist/cjs/generated/createNodeSDK.cjs.map +2 -2
  8. package/dist/cjs/generated/createProviderSDK.cjs +18 -11
  9. package/dist/cjs/generated/createProviderSDK.cjs.map +2 -2
  10. package/dist/cjs/generated/patches/providerCustomTypePatches.cjs +34 -0
  11. package/dist/cjs/generated/patches/providerCustomTypePatches.cjs.map +7 -0
  12. package/dist/cjs/generated/patches/providerPatchMessage.cjs +38 -0
  13. package/dist/cjs/generated/patches/providerPatchMessage.cjs.map +7 -0
  14. package/dist/cjs/generated/protos/akash/bme/v1/filters.cjs +125 -0
  15. package/dist/cjs/generated/protos/akash/bme/v1/filters.cjs.map +7 -0
  16. package/dist/cjs/generated/protos/akash/bme/v1/params.cjs +26 -10
  17. package/dist/cjs/generated/protos/akash/bme/v1/params.cjs.map +2 -2
  18. package/dist/cjs/generated/protos/akash/bme/v1/query.cjs +233 -0
  19. package/dist/cjs/generated/protos/akash/bme/v1/query.cjs.map +2 -2
  20. package/dist/cjs/generated/protos/akash/bme/v1/query_akash.cjs +9 -0
  21. package/dist/cjs/generated/protos/akash/bme/v1/query_akash.cjs.map +2 -2
  22. package/dist/cjs/generated/protos/akash/manifest/v2beta3/service.cjs +67 -2
  23. package/dist/cjs/generated/protos/akash/manifest/v2beta3/service.cjs.map +2 -2
  24. package/dist/cjs/generated/protos/akash/market/v1beta5/params.cjs +17 -2
  25. package/dist/cjs/generated/protos/akash/market/v1beta5/params.cjs.map +2 -2
  26. package/dist/cjs/generated/protos/akash/market/v1beta5/resourcesoffer.cjs +266 -3
  27. package/dist/cjs/generated/protos/akash/market/v1beta5/resourcesoffer.cjs.map +2 -2
  28. package/dist/cjs/generated/protos/akash/oracle/v1/params.cjs +53 -1
  29. package/dist/cjs/generated/protos/akash/oracle/v1/params.cjs.map +2 -2
  30. package/dist/cjs/generated/protos/akash/provider/v1/service_akash.cjs +9 -0
  31. package/dist/cjs/generated/protos/akash/provider/v1/service_akash.cjs.map +2 -2
  32. package/dist/cjs/generated/protos/akash/provider/v1/validation.cjs +195 -0
  33. package/dist/cjs/generated/protos/akash/provider/v1/validation.cjs.map +7 -0
  34. package/dist/cjs/generated/protos/google/protobuf/descriptor.cjs +6 -0
  35. package/dist/cjs/generated/protos/google/protobuf/descriptor.cjs.map +2 -2
  36. package/dist/cjs/generated/protos/index.akash.v1.cjs +11 -5
  37. package/dist/cjs/generated/protos/index.akash.v1.cjs.map +3 -3
  38. package/dist/cjs/generated/protos/index.akash.v1beta5.cjs +4 -1
  39. package/dist/cjs/generated/protos/index.akash.v1beta5.cjs.map +2 -2
  40. package/dist/cjs/generated/protos/index.provider.akash.v1.cjs +3 -0
  41. package/dist/cjs/generated/protos/index.provider.akash.v1.cjs.map +2 -2
  42. package/dist/cjs/generated/protos/index.provider.akash.v2beta3.cjs +1 -0
  43. package/dist/cjs/generated/protos/index.provider.akash.v2beta3.cjs.map +2 -2
  44. package/dist/cjs/sdk/chain/createChainNodeSDK.cjs +2 -1
  45. package/dist/cjs/sdk/chain/createChainNodeSDK.cjs.map +2 -2
  46. package/dist/cjs/sdk/chain/createChainNodeWebSDK.cjs +2 -1
  47. package/dist/cjs/sdk/chain/createChainNodeWebSDK.cjs.map +2 -2
  48. package/dist/cjs/sdk/chain/helpers.cjs +56 -0
  49. package/dist/cjs/sdk/chain/helpers.cjs.map +7 -0
  50. package/dist/cjs/sdk/client/sdkMetadata.cjs.map +2 -2
  51. package/dist/cjs/sdk/index.cjs.map +2 -2
  52. package/dist/cjs/sdk/index.shared.cjs +4 -1
  53. package/dist/cjs/sdk/index.shared.cjs.map +2 -2
  54. package/dist/cjs/sdk/index.web.cjs.map +2 -2
  55. package/dist/cjs/sdk/transport/tx/createTxTransport.cjs +1 -1
  56. package/dist/cjs/sdk/transport/tx/createTxTransport.cjs.map +2 -2
  57. package/dist/cjs/sdl/SDL/SDL.cjs +11 -11
  58. package/dist/cjs/sdl/SDL/SDL.cjs.map +2 -2
  59. package/dist/cjs/sdl/manifest/generateManifest.cjs +8 -6
  60. package/dist/cjs/sdl/manifest/generateManifest.cjs.map +2 -2
  61. package/dist/cjs/sdl/manifest/generateManifestVersion.cjs.map +2 -2
  62. package/dist/cjs/sdl/manifest/manifestUtils.cjs +16 -9
  63. package/dist/cjs/sdl/manifest/manifestUtils.cjs.map +2 -2
  64. package/dist/cjs/sdl/types.cjs.map +1 -1
  65. package/dist/cjs/utils/yaml.cjs +10 -3
  66. package/dist/cjs/utils/yaml.cjs.map +2 -2
  67. package/dist/esm/{chunk-BYQF33C6.js → chunk-5YIS3XNX.js} +2 -2
  68. package/dist/esm/{chunk-JISXXX24.js → chunk-6CIH635G.js} +2 -2
  69. package/dist/esm/{chunk-GUNMCW7A.js → chunk-BWGYKJLS.js} +2 -2
  70. package/dist/esm/{chunk-MQPC6TDF.js → chunk-C3DBWOZD.js} +53 -1
  71. package/dist/esm/{chunk-MQPC6TDF.js.map → chunk-C3DBWOZD.js.map} +2 -2
  72. package/dist/esm/{chunk-TCVGOF7L.js → chunk-DJASDN6A.js} +2 -2
  73. package/dist/esm/{chunk-5DCYIWCG.js → chunk-E76SLJJ3.js} +3 -1
  74. package/dist/esm/{chunk-4D3QNKFB.js → chunk-EKFJV4QU.js} +6 -4
  75. package/dist/esm/{chunk-4D3QNKFB.js.map → chunk-EKFJV4QU.js.map} +1 -1
  76. package/dist/esm/{chunk-XFCN5LRY.js → chunk-H5WUFEMM.js} +2 -2
  77. package/dist/esm/{chunk-YSMDEW4E.js → chunk-JZTFWLSX.js} +178 -2
  78. package/dist/esm/{chunk-YSMDEW4E.js.map → chunk-JZTFWLSX.js.map} +4 -4
  79. package/dist/esm/{chunk-C7UQYVYH.js → chunk-KFWTFROT.js} +21 -79
  80. package/dist/esm/chunk-KFWTFROT.js.map +7 -0
  81. package/dist/esm/{chunk-IZQCYKLD.js → chunk-LGAXM6RX.js} +27 -11
  82. package/dist/esm/chunk-LGAXM6RX.js.map +7 -0
  83. package/dist/esm/{chunk-VRE72ZD5.js → chunk-M2ZK7HEC.js} +69 -4
  84. package/dist/esm/chunk-M2ZK7HEC.js.map +7 -0
  85. package/dist/esm/{chunk-Z5KZUB7X.js → chunk-MVADLHLI.js} +2 -2
  86. package/dist/esm/chunk-OL4JUIQC.js +702 -0
  87. package/dist/esm/chunk-OL4JUIQC.js.map +7 -0
  88. package/dist/esm/{chunk-5YECXI3P.js → chunk-RUC3LXDX.js} +2 -2
  89. package/dist/esm/{chunk-SA4SEZ6F.js → chunk-TXQ2BR6G.js} +5 -3
  90. package/dist/esm/{chunk-SA4SEZ6F.js.map → chunk-TXQ2BR6G.js.map} +1 -1
  91. package/dist/esm/{chunk-IJSLZIPC.js → chunk-UFJRY3ID.js} +2 -2
  92. package/dist/esm/chunk-Y7JCYDLU.js +346 -0
  93. package/dist/esm/chunk-Y7JCYDLU.js.map +7 -0
  94. package/dist/esm/{chunk-RON4KFMD.js → chunk-ZQDAXUFL.js} +6 -1
  95. package/dist/esm/chunk-ZQDAXUFL.js.map +7 -0
  96. package/dist/esm/{chunk-QSKWS3TI.js → chunk-ZRM47VCZ.js} +409 -349
  97. package/dist/esm/chunk-ZRM47VCZ.js.map +7 -0
  98. package/dist/esm/generated/protos/index.akash.v1.js +18 -8
  99. package/dist/esm/generated/protos/index.akash.v1.js.map +1 -1
  100. package/dist/esm/generated/protos/index.akash.v1beta4.js +5 -5
  101. package/dist/esm/generated/protos/index.akash.v1beta5.js +16 -8
  102. package/dist/esm/generated/protos/index.akash.v1beta5.js.map +1 -1
  103. package/dist/esm/generated/protos/index.cosmos.v1.js +1 -1
  104. package/dist/esm/generated/protos/index.provider.akash.v1.js +10 -4
  105. package/dist/esm/generated/protos/index.provider.akash.v2beta3.js +4 -2
  106. package/dist/esm/index.js +33 -21
  107. package/dist/esm/index.js.map +2 -2
  108. package/dist/esm/index.web.js +13 -8
  109. package/dist/esm/index.web.js.map +2 -2
  110. package/dist/esm/{query_akash-RGYTHUNZ.js → query_akash-745M5I3X.js} +3 -3
  111. package/dist/esm/{query_akash-N2BNNOTD.js → query_akash-EHAEDYOH.js} +15 -3
  112. package/dist/esm/query_akash-EHAEDYOH.js.map +7 -0
  113. package/dist/esm/{query_akash-DJ7LTLRE.js → query_akash-FYNRLU72.js} +6 -5
  114. package/dist/esm/{query_akash-DJ7LTLRE.js.map → query_akash-FYNRLU72.js.map} +1 -1
  115. package/dist/esm/{query_akash-4CTLBKZR.js → query_akash-LW3YJGS6.js} +4 -4
  116. package/dist/esm/{reflection_akash-WUBSNT7I.js → reflection_akash-YHEVUIB6.js} +2 -2
  117. package/dist/esm/{service_akash-KPU6LPVP.js → service_akash-2VS4VW6P.js} +3 -3
  118. package/dist/esm/{service_akash-AZFAYT7H.js → service_akash-5JSE44LJ.js} +4 -4
  119. package/dist/esm/{service_akash-VMU3LNBA.js → service_akash-FI6WXDZP.js} +4 -4
  120. package/dist/esm/{service_akash-WRGOVR7I.js → service_akash-QEN5EQUY.js} +5 -4
  121. package/dist/esm/{service_akash-WRGOVR7I.js.map → service_akash-QEN5EQUY.js.map} +1 -1
  122. package/dist/esm/{service_akash-CQVYVSHE.js → service_akash-UDPD4GFX.js} +18 -2
  123. package/dist/esm/service_akash-UDPD4GFX.js.map +7 -0
  124. package/dist/esm/{service_akash-RQDCQLQH.js → service_akash-VFDQVHZD.js} +3 -3
  125. package/dist/tsconfig.build.tsbuildinfo +1 -1
  126. package/dist/types/generated/createNodeSDK.d.ts +11 -0
  127. package/dist/types/generated/createProviderSDK.d.ts +11 -0
  128. package/dist/types/generated/patches/providerCustomTypePatches.d.ts +7 -0
  129. package/dist/types/generated/patches/providerPatchMessage.d.ts +2 -0
  130. package/dist/types/generated/protos/akash/bme/v1/filters.d.ts +17 -0
  131. package/dist/types/generated/protos/akash/bme/v1/params.d.ts +6 -1
  132. package/dist/types/generated/protos/akash/bme/v1/query.d.ts +31 -1
  133. package/dist/types/generated/protos/akash/bme/v1/query_akash.d.ts +8 -1
  134. package/dist/types/generated/protos/akash/manifest/v2beta3/service.d.ts +10 -0
  135. package/dist/types/generated/protos/akash/market/v1beta5/params.d.ts +6 -1
  136. package/dist/types/generated/protos/akash/market/v1beta5/resourcesoffer.d.ts +91 -0
  137. package/dist/types/generated/protos/akash/oracle/v1/params.d.ts +14 -0
  138. package/dist/types/generated/protos/akash/provider/v1/service_akash.d.ts +7 -0
  139. package/dist/types/generated/protos/akash/provider/v1/validation.d.ts +30 -0
  140. package/dist/types/generated/protos/google/protobuf/descriptor.d.ts +2 -0
  141. package/dist/types/generated/protos/index.akash.v1.d.ts +3 -2
  142. package/dist/types/generated/protos/index.akash.v1beta5.d.ts +1 -1
  143. package/dist/types/generated/protos/index.provider.akash.v1.d.ts +1 -0
  144. package/dist/types/generated/protos/index.provider.akash.v2beta3.d.ts +1 -1
  145. package/dist/types/sdk/chain/createChainNodeSDK.d.ts +3 -0
  146. package/dist/types/sdk/chain/createChainNodeWebSDK.d.ts +3 -0
  147. package/dist/types/sdk/chain/helpers.d.ts +14 -0
  148. package/dist/types/sdk/client/sdkMetadata.d.ts +5 -2
  149. package/dist/types/sdk/index.d.ts +2 -0
  150. package/dist/types/sdk/index.shared.d.ts +2 -0
  151. package/dist/types/sdk/index.web.d.ts +2 -0
  152. package/dist/types/sdl/manifest/generateManifest.d.ts +3 -3
  153. package/dist/types/sdl/manifest/generateManifestVersion.d.ts +2 -2
  154. package/dist/types/sdl/types.d.ts +1 -1
  155. package/dist/types/utils/yaml.d.ts +3 -0
  156. package/package.json +1 -1
  157. package/dist/esm/chunk-C7UQYVYH.js.map +0 -7
  158. package/dist/esm/chunk-IZQCYKLD.js.map +0 -7
  159. package/dist/esm/chunk-QSKWS3TI.js.map +0 -7
  160. package/dist/esm/chunk-RON4KFMD.js.map +0 -7
  161. package/dist/esm/chunk-VRE72ZD5.js.map +0 -7
  162. package/dist/esm/chunk-XPIWBE65.js +0 -362
  163. package/dist/esm/chunk-XPIWBE65.js.map +0 -7
  164. package/dist/esm/query_akash-N2BNNOTD.js.map +0 -7
  165. package/dist/esm/service_akash-CQVYVSHE.js.map +0 -7
  166. /package/dist/esm/{chunk-BYQF33C6.js.map → chunk-5YIS3XNX.js.map} +0 -0
  167. /package/dist/esm/{chunk-JISXXX24.js.map → chunk-6CIH635G.js.map} +0 -0
  168. /package/dist/esm/{chunk-GUNMCW7A.js.map → chunk-BWGYKJLS.js.map} +0 -0
  169. /package/dist/esm/{chunk-TCVGOF7L.js.map → chunk-DJASDN6A.js.map} +0 -0
  170. /package/dist/esm/{chunk-5DCYIWCG.js.map → chunk-E76SLJJ3.js.map} +0 -0
  171. /package/dist/esm/{chunk-XFCN5LRY.js.map → chunk-H5WUFEMM.js.map} +0 -0
  172. /package/dist/esm/{chunk-Z5KZUB7X.js.map → chunk-MVADLHLI.js.map} +0 -0
  173. /package/dist/esm/{chunk-5YECXI3P.js.map → chunk-RUC3LXDX.js.map} +0 -0
  174. /package/dist/esm/{chunk-IJSLZIPC.js.map → chunk-UFJRY3ID.js.map} +0 -0
  175. /package/dist/esm/{query_akash-RGYTHUNZ.js.map → query_akash-745M5I3X.js.map} +0 -0
  176. /package/dist/esm/{query_akash-4CTLBKZR.js.map → query_akash-LW3YJGS6.js.map} +0 -0
  177. /package/dist/esm/{reflection_akash-WUBSNT7I.js.map → reflection_akash-YHEVUIB6.js.map} +0 -0
  178. /package/dist/esm/{service_akash-KPU6LPVP.js.map → service_akash-2VS4VW6P.js.map} +0 -0
  179. /package/dist/esm/{service_akash-AZFAYT7H.js.map → service_akash-5JSE44LJ.js.map} +0 -0
  180. /package/dist/esm/{service_akash-VMU3LNBA.js.map → service_akash-FI6WXDZP.js.map} +0 -0
  181. /package/dist/esm/{service_akash-RQDCQLQH.js.map → service_akash-VFDQVHZD.js.map} +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/network/config.ts", "../../src/sdl/validateSDL/validateSDLInput.ts", "../../src/utils/jsonSchemaValidation.ts", "../../src/sdl/utils.ts", "../../src/sdl/validateSDL/validateSDL.ts", "../../src/sdl/SDL/SdlValidationError.ts", "../../src/sdl/SDL/SDL.ts", "../../src/sdl/sizes.ts", "../../src/sdl/manifest/manifestUtils.ts", "../../src/sdl/manifest/generateManifest.ts", "../../src/sdl/manifest/generateManifestVersion.ts", "../../src/utils/yaml.ts", "../../src/sdk/transport/TransportError.ts", "../../src/sdk/transport/tx/TxError.ts", "../../src/sdk/provider/auth/mtls/CertificateManager.ts", "../../src/sdk/provider/auth/mtls/index.ts", "../../src/sdk/provider/auth/jwt/base64.ts", "../../src/sdk/provider/auth/jwt/validateJwtPayload.ts", "../../src/sdk/provider/auth/jwt/jwt-validator.ts", "../../src/sdk/provider/auth/jwt/jwt-token.ts", "../../src/sdk/provider/auth/jwt/wallet-utils.ts", "../../src/sdk/client/sdkMetadata.ts", "../../src/sdk/chain/helpers.ts", "../../src/sdk/client/createServiceLoader.ts", "../../src/sdk/client/stream.ts", "../../src/sdk/client/createServiceClient.ts", "../../src/sdk/client/createClientFactory.ts", "../../src/generated/createCosmosSDK.ts", "../../src/generated/createNodeSDK.ts", "../../src/sdk/getMessageType.ts", "../../src/sdk/transport/createNoopTransport.ts", "../../src/sdk/transport/interceptors/retry.ts", "../../src/sdk/transport/tx/createTxTransport.ts", "../../src/sdk/transport/runCall.ts", "../../src/sdk/transport/transportUtils.ts"],
4
+ "sourcesContent": ["import type { NetworkId } from \"./types.ts\";\n\n/**\n * The network ID for the mainnet environment.\n */\nexport const MAINNET_ID = \"mainnet\" satisfies NetworkId;\n\n/**\n * The network ID for the sandbox environment.\n */\nexport const SANDBOX_ID = \"sandbox\" satisfies NetworkId;\n\n/**\n * The network ID for the testnet environment.\n */\nexport const TESTNET_ID = \"testnet\" satisfies NetworkId;\n\n/**\n * A mapping of network IDs to their respective USDC IBC denominations.\n */\nexport const USDC_IBC_DENOMS: Record<NetworkId, string> = {\n [MAINNET_ID]: \"ibc/170C677610AC31DF0904FFE09CD3B5C657492170E7E52372E48756B71E56F2F1\",\n [SANDBOX_ID]: \"ibc/12C6A0C374171B595A0A9E18B83FA09D295FB1F2D8C6DAA3AC28683471752D84\",\n [TESTNET_ID]: \"\",\n};\n\n/**\n * The denomination for the AKT token.\n */\nexport const AKT_DENOM = \"uakt\";\n", "// DO NOT EDIT THIS FILE\n// This file is generated by the script/compile-json-schema-to-ts.ts script\n/* eslint-disable */\n// @ts-nocheck\n\n/**\n * String array or null value (used for command args and env vars)\n */\nexport type StringArrayOrNull = string[] | null;\n/**\n * Valid TCP/UDP port number (1-65535)\n */\nexport type PortNumber = number;\n/**\n * HTTP error codes for proxy retry logic\n */\nexport type HttpErrorCode = \"error\" | \"timeout\" | \"500\" | \"502\" | \"503\" | \"504\" | \"403\" | \"404\" | \"429\" | \"off\";\n/**\n * Absolute filesystem path starting with /\n */\nexport type AbsolutePath = string;\n\n/**\n * Schema for Akash Stack Definition Language (SDL) YAML input files.\n *\n * Note: This schema validates structure only. Semantic validations (cross-references,\n * unused endpoints, profile references, etc.) are performed at runtime by the Go parser.\n * See README.md for details.\n *\n */\nexport interface SDLInput {\n deployment: {\n [k: string]: {\n [k: string]: {\n count: number;\n profile: string;\n };\n };\n };\n endpoints?: {\n /**\n * This interface was referenced by `undefined`'s JSON-Schema definition\n * via the `patternProperty` \"^[a-z]+[-_0-9a-z]+$\".\n */\n [k: string]: {\n kind: \"ip\";\n };\n };\n /**\n * Optional list of files to include\n */\n include?: string[];\n profiles: {\n compute: {\n [k: string]: {\n resources: {\n cpu: {\n attributes?: {\n [k: string]: unknown;\n };\n units: string | number;\n };\n /**\n * GPU resource specification.\n * - units defaults to 0 if omitted\n * - Bidirectional validation: units > 0 requires attributes, and attributes require units > 0\n *\n */\n gpu?: {\n attributes?: {\n vendor?: {\n nvidia?:\n | {\n interface?: \"pcie\" | \"sxm\";\n model?: string;\n ram?: string;\n }[]\n | null;\n };\n };\n units: string | number;\n };\n memory: {\n size: string;\n };\n storage: StorageVolume | StorageVolume[];\n };\n };\n };\n placement: {\n [k: string]: {\n attributes?: {\n [k: string]: unknown;\n };\n pricing: {\n [k: string]: PriceCoin;\n };\n signedBy?: {\n allOf?: string[];\n anyOf?: string[];\n };\n };\n };\n };\n services: {\n [k: string]: {\n args?: StringArrayOrNull;\n command?: StringArrayOrNull;\n credentials?: {\n email?: string;\n host: string;\n password: string;\n username: string;\n };\n dependencies?: {\n service?: string;\n }[];\n env?: StringArrayOrNull;\n expose?: {\n accept?: string[];\n as?: PortNumber;\n http_options?: {\n /**\n * Maximum body size in bytes (max 100 MB)\n */\n max_body_size?: number;\n next_cases?: HttpErrorCode[];\n next_timeout?: number;\n next_tries?: number;\n /**\n * Read timeout in milliseconds (max 60 seconds)\n */\n read_timeout?: number;\n /**\n * Send timeout in milliseconds (max 60 seconds)\n */\n send_timeout?: number;\n };\n port: PortNumber;\n proto?: \"TCP\" | \"UDP\" | \"tcp\" | \"udp\";\n to?: {\n global?: boolean;\n ip?: string;\n service?: string;\n }[];\n }[];\n image: string;\n params?: {\n storage?: {\n [k: string]: {\n mount?: AbsolutePath;\n readOnly?: boolean;\n };\n };\n permissions?: {\n read?: (\"deployment\" | \"logs\")[];\n };\n };\n };\n };\n /**\n * SDL version\n */\n version: \"2.0\" | \"2.1\";\n}\n/**\n * Storage volume definition with size and optional attributes\n */\nexport interface StorageVolume {\n attributes?: StorageAttributesValidation;\n name?: string;\n size: string;\n}\n/**\n * Storage attributes validation:\n * 1. RAM class must not be persistent\n * 2. Non-RAM classes (beta1, beta2, beta3, default) require persistent=true\n *\n */\nexport interface StorageAttributesValidation {\n class?: string;\n persistent?: boolean | string;\n}\n/**\n * Price definition with amount and denomination\n */\nexport interface PriceCoin {\n amount: string | number;\n denom: string;\n}\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __commonJS = (cb, mod) => function __require() {\n return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n};\n\n// node_modules/ajv/dist/runtime/ucs2length.js\nvar require_ucs2length = __commonJS({\n \"node_modules/ajv/dist/runtime/ucs2length.js\"(exports) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n function ucs2length(str) {\n const len = str.length;\n let length = 0;\n let pos = 0;\n let value;\n while (pos < len) {\n length++;\n value = str.charCodeAt(pos++);\n if (value >= 55296 && value <= 56319 && pos < len) {\n value = str.charCodeAt(pos);\n if ((value & 64512) === 56320)\n pos++;\n }\n }\n return length;\n }\n exports.default = ucs2length;\n ucs2length.code = 'require(\"ajv/dist/runtime/ucs2length\").default';\n }\n});\n\n// <stdin>\nvar validate = validate11;\nvar stdin_default = validate11;\nvar schema12 = { \"$schema\": \"http://json-schema.org/draft-07/schema#\", \"additionalProperties\": false, \"description\": \"Schema for Akash Stack Definition Language (SDL) YAML input files.\\n\\nNote: This schema validates structure only. Semantic validations (cross-references,\\nunused endpoints, profile references, etc.) are performed at runtime by the Go parser.\\nSee README.md for details.\\n\", \"definitions\": { \"stringArrayOrNull\": { \"description\": \"String array or null value (used for command args and env vars)\", \"oneOf\": [{ \"items\": { \"type\": \"string\" }, \"type\": \"array\" }, { \"type\": \"null\" }] }, \"portNumber\": { \"description\": \"Valid TCP/UDP port number (1-65535)\", \"type\": \"integer\", \"minimum\": 1, \"maximum\": 65535 }, \"httpErrorCode\": { \"description\": \"HTTP error codes for proxy retry logic\", \"enum\": [\"error\", \"timeout\", \"500\", \"502\", \"503\", \"504\", \"403\", \"404\", \"429\", \"off\"], \"type\": \"string\" }, \"priceCoin\": { \"description\": \"Price definition with amount and denomination\", \"additionalProperties\": false, \"properties\": { \"amount\": { \"oneOf\": [{ \"type\": \"string\", \"pattern\": \"^[0-9]+(\\\\.[0-9]+)?$\", \"description\": \"Positive number as string\" }, { \"type\": \"number\", \"minimum\": 0, \"description\": \"Positive number\" }] }, \"denom\": { \"pattern\": \"^(uakt|uact|ibc/.*)$\", \"type\": \"string\" } }, \"required\": [\"denom\", \"amount\"], \"type\": \"object\" }, \"storageAttributesValidation\": { \"description\": \"Storage attributes validation:\\n1. RAM class must not be persistent\\n2. Non-RAM classes (beta1, beta2, beta3, default) require persistent=true\\n\", \"additionalProperties\": false, \"properties\": { \"class\": { \"type\": \"string\" }, \"persistent\": { \"oneOf\": [{ \"type\": \"boolean\" }, { \"type\": \"string\" }] } }, \"not\": { \"properties\": { \"class\": { \"const\": \"ram\" }, \"persistent\": { \"oneOf\": [{ \"const\": true }, { \"const\": \"true\" }] } }, \"required\": [\"class\", \"persistent\"] }, \"type\": \"object\" }, \"storageVolume\": { \"description\": \"Storage volume definition with size and optional attributes\", \"additionalProperties\": false, \"properties\": { \"attributes\": { \"$ref\": \"#/definitions/storageAttributesValidation\" }, \"name\": { \"type\": \"string\" }, \"size\": { \"type\": \"string\" } }, \"required\": [\"size\"], \"type\": \"object\" }, \"absolutePath\": { \"description\": \"Absolute filesystem path starting with /\", \"type\": \"string\", \"minLength\": 1, \"pattern\": \"^/\" }, \"exposeToWithIpEnforcesGlobal\": { \"description\": \"Expose to with IP enforces global\", \"if\": { \"properties\": { \"ip\": { \"type\": \"string\", \"minLength\": 1 } }, \"required\": [\"ip\"] }, \"then\": { \"properties\": { \"global\": { \"const\": true } }, \"required\": [\"global\"] } } }, \"properties\": { \"deployment\": { \"additionalProperties\": { \"additionalProperties\": { \"additionalProperties\": false, \"properties\": { \"count\": { \"minimum\": 1, \"type\": \"integer\" }, \"profile\": { \"type\": \"string\" } }, \"required\": [\"profile\", \"count\"], \"type\": \"object\" }, \"type\": \"object\" }, \"type\": \"object\" }, \"endpoints\": { \"additionalProperties\": false, \"patternProperties\": { \"^[a-z]+[-_0-9a-z]+$\": { \"additionalProperties\": false, \"properties\": { \"kind\": { \"enum\": [\"ip\"], \"type\": \"string\" } }, \"required\": [\"kind\"], \"type\": \"object\" } }, \"type\": \"object\" }, \"include\": { \"description\": \"Optional list of files to include\", \"items\": { \"type\": \"string\" }, \"type\": \"array\" }, \"profiles\": { \"additionalProperties\": false, \"properties\": { \"compute\": { \"additionalProperties\": { \"additionalProperties\": false, \"properties\": { \"resources\": { \"additionalProperties\": false, \"properties\": { \"cpu\": { \"additionalProperties\": false, \"properties\": { \"attributes\": { \"type\": \"object\" }, \"units\": { \"oneOf\": [{ \"type\": \"string\", \"pattern\": \"^[0-9]+(\\\\.[0-9]+)?[a-zA-Z]*$\", \"not\": { \"pattern\": \"^0+(\\\\.0+)?m?$\" } }, { \"type\": \"number\", \"exclusiveMinimum\": 0 }] } }, \"required\": [\"units\"], \"type\": \"object\" }, \"gpu\": { \"description\": \"GPU resource specification.\\n- units defaults to 0 if omitted\\n- Bidirectional validation: units > 0 requires attributes, and attributes require units > 0\\n\", \"additionalProperties\": false, \"properties\": { \"attributes\": { \"additionalProperties\": false, \"properties\": { \"vendor\": { \"additionalProperties\": false, \"minProperties\": 1, \"properties\": { \"nvidia\": { \"oneOf\": [{ \"type\": \"array\", \"items\": { \"additionalProperties\": false, \"properties\": { \"interface\": { \"enum\": [\"pcie\", \"sxm\"], \"type\": \"string\" }, \"model\": { \"type\": \"string\" }, \"ram\": { \"type\": \"string\" } }, \"type\": \"object\" } }, { \"type\": \"null\" }] } }, \"type\": \"object\" } }, \"type\": \"object\" }, \"units\": { \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"number\" }] } }, \"required\": [\"units\"], \"type\": \"object\" }, \"memory\": { \"additionalProperties\": false, \"properties\": { \"size\": { \"type\": \"string\" } }, \"required\": [\"size\"], \"type\": \"object\" }, \"storage\": { \"oneOf\": [{ \"$ref\": \"#/definitions/storageVolume\" }, { \"items\": { \"$ref\": \"#/definitions/storageVolume\" }, \"type\": \"array\" }] } }, \"required\": [\"cpu\", \"memory\", \"storage\"], \"type\": \"object\" } }, \"required\": [\"resources\"], \"type\": \"object\" }, \"type\": \"object\" }, \"placement\": { \"additionalProperties\": { \"additionalProperties\": false, \"properties\": { \"attributes\": { \"type\": \"object\" }, \"pricing\": { \"additionalProperties\": { \"$ref\": \"#/definitions/priceCoin\" }, \"type\": \"object\" }, \"signedBy\": { \"additionalProperties\": false, \"properties\": { \"allOf\": { \"items\": { \"type\": \"string\" }, \"type\": \"array\" }, \"anyOf\": { \"items\": { \"type\": \"string\" }, \"type\": \"array\" } }, \"type\": \"object\" } }, \"required\": [\"pricing\"], \"type\": \"object\" }, \"type\": \"object\" } }, \"required\": [\"compute\", \"placement\"], \"type\": \"object\" }, \"services\": { \"additionalProperties\": { \"properties\": { \"args\": { \"$ref\": \"#/definitions/stringArrayOrNull\" }, \"command\": { \"$ref\": \"#/definitions/stringArrayOrNull\" }, \"credentials\": { \"additionalProperties\": false, \"properties\": { \"email\": { \"type\": \"string\", \"minLength\": 5 }, \"host\": { \"type\": \"string\", \"minLength\": 1 }, \"password\": { \"type\": \"string\", \"minLength\": 6 }, \"username\": { \"type\": \"string\", \"minLength\": 1 } }, \"required\": [\"host\", \"username\", \"password\"], \"type\": \"object\" }, \"dependencies\": { \"items\": { \"additionalProperties\": false, \"properties\": { \"service\": { \"type\": \"string\" } }, \"type\": \"object\" }, \"type\": \"array\" }, \"env\": { \"$ref\": \"#/definitions/stringArrayOrNull\" }, \"expose\": { \"items\": { \"additionalProperties\": false, \"properties\": { \"accept\": { \"items\": { \"type\": \"string\" }, \"type\": \"array\" }, \"as\": { \"$ref\": \"#/definitions/portNumber\" }, \"http_options\": { \"additionalProperties\": false, \"properties\": { \"max_body_size\": { \"type\": \"integer\", \"minimum\": 0, \"maximum\": 104857600, \"description\": \"Maximum body size in bytes (max 100 MB)\" }, \"next_cases\": { \"oneOf\": [{ \"type\": \"array\", \"items\": { \"$ref\": \"#/definitions/httpErrorCode\" }, \"contains\": { \"const\": \"off\" }, \"maxItems\": 1, \"minItems\": 1 }, { \"type\": \"array\", \"items\": { \"$ref\": \"#/definitions/httpErrorCode\" }, \"not\": { \"contains\": { \"const\": \"off\" } } }] }, \"next_timeout\": { \"type\": \"integer\", \"minimum\": 0 }, \"next_tries\": { \"type\": \"integer\", \"minimum\": 0 }, \"read_timeout\": { \"type\": \"integer\", \"minimum\": 0, \"maximum\": 6e4, \"description\": \"Read timeout in milliseconds (max 60 seconds)\" }, \"send_timeout\": { \"type\": \"integer\", \"minimum\": 0, \"maximum\": 6e4, \"description\": \"Send timeout in milliseconds (max 60 seconds)\" } }, \"type\": \"object\" }, \"port\": { \"$ref\": \"#/definitions/portNumber\" }, \"proto\": { \"enum\": [\"TCP\", \"UDP\", \"tcp\", \"udp\"], \"type\": \"string\" }, \"to\": { \"items\": { \"additionalProperties\": false, \"properties\": { \"global\": { \"type\": \"boolean\" }, \"ip\": { \"minLength\": 1, \"type\": \"string\" }, \"service\": { \"type\": \"string\" } }, \"allOf\": [{ \"$ref\": \"#/definitions/exposeToWithIpEnforcesGlobal\" }], \"type\": \"object\" }, \"type\": \"array\" } }, \"required\": [\"port\"], \"type\": \"object\" }, \"type\": \"array\" }, \"image\": { \"type\": \"string\", \"minLength\": 1 }, \"params\": { \"additionalProperties\": false, \"properties\": { \"storage\": { \"additionalProperties\": { \"additionalProperties\": false, \"properties\": { \"mount\": { \"$ref\": \"#/definitions/absolutePath\" }, \"readOnly\": { \"type\": \"boolean\" } }, \"type\": \"object\" }, \"type\": \"object\" }, \"permissions\": { \"additionalProperties\": false, \"properties\": { \"read\": { \"items\": { \"type\": \"string\", \"enum\": [\"deployment\", \"logs\"] }, \"type\": \"array\" } }, \"type\": \"object\" } }, \"type\": \"object\" } }, \"required\": [\"image\"], \"type\": \"object\", \"additionalProperties\": false }, \"type\": \"object\" }, \"version\": { \"description\": \"SDL version\", \"enum\": [\"2.0\", \"2.1\"], \"type\": \"string\" } }, \"required\": [\"version\", \"services\", \"profiles\", \"deployment\"], \"title\": \"Akash SDL Input Schema\", \"type\": \"object\" };\nvar schema20 = { \"description\": \"HTTP error codes for proxy retry logic\", \"enum\": [\"error\", \"timeout\", \"500\", \"502\", \"503\", \"504\", \"403\", \"404\", \"429\", \"off\"], \"type\": \"string\" };\nvar pattern2 = new RegExp(\"^[a-z]+[-_0-9a-z]+$\", \"u\");\nvar pattern4 = new RegExp(\"^0+(\\\\.0+)?m?$\", \"u\");\nvar pattern5 = new RegExp(\"^[0-9]+(\\\\.[0-9]+)?[a-zA-Z]*$\", \"u\");\nvar pattern6 = new RegExp(\"^[0-9]+(\\\\.[0-9]+)?$\", \"u\");\nvar pattern7 = new RegExp(\"^(uakt|uact|ibc/.*)$\", \"u\");\nvar pattern8 = new RegExp(\"^/\", \"u\");\nfunction validate12(data, { instancePath = \"\", parentData, parentDataProperty, rootData = data } = {}) {\n let vErrors = null;\n let errors = 0;\n if (data && typeof data == \"object\" && !Array.isArray(data)) {\n if (data.size === void 0) {\n const err0 = { instancePath, schemaPath: \"#/required\", keyword: \"required\", params: { missingProperty: \"size\" }, message: \"must have required property 'size'\" };\n if (vErrors === null) {\n vErrors = [err0];\n } else {\n vErrors.push(err0);\n }\n errors++;\n }\n for (const key0 in data) {\n if (!(key0 === \"attributes\" || key0 === \"name\" || key0 === \"size\")) {\n const err1 = { instancePath, schemaPath: \"#/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key0 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err1];\n } else {\n vErrors.push(err1);\n }\n errors++;\n }\n }\n if (data.attributes !== void 0) {\n let data0 = data.attributes;\n const _errs5 = errors;\n const _errs6 = errors;\n if (data0 && typeof data0 == \"object\" && !Array.isArray(data0)) {\n let missing0;\n if (data0.class === void 0 && (missing0 = \"class\") || data0.persistent === void 0 && (missing0 = \"persistent\")) {\n const err2 = {};\n if (vErrors === null) {\n vErrors = [err2];\n } else {\n vErrors.push(err2);\n }\n errors++;\n } else {\n if (data0.class !== void 0) {\n const _errs7 = errors;\n if (\"ram\" !== data0.class) {\n const err3 = {};\n if (vErrors === null) {\n vErrors = [err3];\n } else {\n vErrors.push(err3);\n }\n errors++;\n }\n var valid3 = _errs7 === errors;\n } else {\n var valid3 = true;\n }\n if (valid3) {\n if (data0.persistent !== void 0) {\n let data2 = data0.persistent;\n const _errs8 = errors;\n const _errs9 = errors;\n let valid4 = false;\n let passing0 = null;\n const _errs10 = errors;\n if (true !== data2) {\n const err4 = {};\n if (vErrors === null) {\n vErrors = [err4];\n } else {\n vErrors.push(err4);\n }\n errors++;\n }\n var _valid0 = _errs10 === errors;\n if (_valid0) {\n valid4 = true;\n passing0 = 0;\n }\n const _errs11 = errors;\n if (\"true\" !== data2) {\n const err5 = {};\n if (vErrors === null) {\n vErrors = [err5];\n } else {\n vErrors.push(err5);\n }\n errors++;\n }\n var _valid0 = _errs11 === errors;\n if (_valid0 && valid4) {\n valid4 = false;\n passing0 = [passing0, 1];\n } else {\n if (_valid0) {\n valid4 = true;\n passing0 = 1;\n }\n }\n if (!valid4) {\n const err6 = {};\n if (vErrors === null) {\n vErrors = [err6];\n } else {\n vErrors.push(err6);\n }\n errors++;\n } else {\n errors = _errs9;\n if (vErrors !== null) {\n if (_errs9) {\n vErrors.length = _errs9;\n } else {\n vErrors = null;\n }\n }\n }\n var valid3 = _errs8 === errors;\n } else {\n var valid3 = true;\n }\n }\n }\n }\n var valid2 = _errs6 === errors;\n if (valid2) {\n const err7 = { instancePath: instancePath + \"/attributes\", schemaPath: \"#/definitions/storageAttributesValidation/not\", keyword: \"not\", params: {}, message: \"must NOT be valid\" };\n if (vErrors === null) {\n vErrors = [err7];\n } else {\n vErrors.push(err7);\n }\n errors++;\n } else {\n errors = _errs5;\n if (vErrors !== null) {\n if (_errs5) {\n vErrors.length = _errs5;\n } else {\n vErrors = null;\n }\n }\n }\n if (data0 && typeof data0 == \"object\" && !Array.isArray(data0)) {\n for (const key1 in data0) {\n if (!(key1 === \"class\" || key1 === \"persistent\")) {\n const err8 = { instancePath: instancePath + \"/attributes\", schemaPath: \"#/definitions/storageAttributesValidation/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key1 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err8];\n } else {\n vErrors.push(err8);\n }\n errors++;\n }\n }\n if (data0.class !== void 0) {\n if (typeof data0.class !== \"string\") {\n const err9 = { instancePath: instancePath + \"/attributes/class\", schemaPath: \"#/definitions/storageAttributesValidation/properties/class/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err9];\n } else {\n vErrors.push(err9);\n }\n errors++;\n }\n }\n if (data0.persistent !== void 0) {\n let data4 = data0.persistent;\n const _errs16 = errors;\n let valid6 = false;\n let passing1 = null;\n const _errs17 = errors;\n if (typeof data4 !== \"boolean\") {\n const err10 = { instancePath: instancePath + \"/attributes/persistent\", schemaPath: \"#/definitions/storageAttributesValidation/properties/persistent/oneOf/0/type\", keyword: \"type\", params: { type: \"boolean\" }, message: \"must be boolean\" };\n if (vErrors === null) {\n vErrors = [err10];\n } else {\n vErrors.push(err10);\n }\n errors++;\n }\n var _valid1 = _errs17 === errors;\n if (_valid1) {\n valid6 = true;\n passing1 = 0;\n }\n const _errs19 = errors;\n if (typeof data4 !== \"string\") {\n const err11 = { instancePath: instancePath + \"/attributes/persistent\", schemaPath: \"#/definitions/storageAttributesValidation/properties/persistent/oneOf/1/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err11];\n } else {\n vErrors.push(err11);\n }\n errors++;\n }\n var _valid1 = _errs19 === errors;\n if (_valid1 && valid6) {\n valid6 = false;\n passing1 = [passing1, 1];\n } else {\n if (_valid1) {\n valid6 = true;\n passing1 = 1;\n }\n }\n if (!valid6) {\n const err12 = { instancePath: instancePath + \"/attributes/persistent\", schemaPath: \"#/definitions/storageAttributesValidation/properties/persistent/oneOf\", keyword: \"oneOf\", params: { passingSchemas: passing1 }, message: \"must match exactly one schema in oneOf\" };\n if (vErrors === null) {\n vErrors = [err12];\n } else {\n vErrors.push(err12);\n }\n errors++;\n } else {\n errors = _errs16;\n if (vErrors !== null) {\n if (_errs16) {\n vErrors.length = _errs16;\n } else {\n vErrors = null;\n }\n }\n }\n }\n } else {\n const err13 = { instancePath: instancePath + \"/attributes\", schemaPath: \"#/definitions/storageAttributesValidation/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err13];\n } else {\n vErrors.push(err13);\n }\n errors++;\n }\n }\n if (data.name !== void 0) {\n if (typeof data.name !== \"string\") {\n const err14 = { instancePath: instancePath + \"/name\", schemaPath: \"#/properties/name/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err14];\n } else {\n vErrors.push(err14);\n }\n errors++;\n }\n }\n if (data.size !== void 0) {\n if (typeof data.size !== \"string\") {\n const err15 = { instancePath: instancePath + \"/size\", schemaPath: \"#/properties/size/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err15];\n } else {\n vErrors.push(err15);\n }\n errors++;\n }\n }\n } else {\n const err16 = { instancePath, schemaPath: \"#/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err16];\n } else {\n vErrors.push(err16);\n }\n errors++;\n }\n validate12.errors = vErrors;\n return errors === 0;\n}\nvar func2 = require_ucs2length().default;\nfunction validate11(data, { instancePath = \"\", parentData, parentDataProperty, rootData = data } = {}) {\n let vErrors = null;\n let errors = 0;\n if (data && typeof data == \"object\" && !Array.isArray(data)) {\n if (data.version === void 0) {\n const err0 = { instancePath, schemaPath: \"#/required\", keyword: \"required\", params: { missingProperty: \"version\" }, message: \"must have required property 'version'\" };\n if (vErrors === null) {\n vErrors = [err0];\n } else {\n vErrors.push(err0);\n }\n errors++;\n }\n if (data.services === void 0) {\n const err1 = { instancePath, schemaPath: \"#/required\", keyword: \"required\", params: { missingProperty: \"services\" }, message: \"must have required property 'services'\" };\n if (vErrors === null) {\n vErrors = [err1];\n } else {\n vErrors.push(err1);\n }\n errors++;\n }\n if (data.profiles === void 0) {\n const err2 = { instancePath, schemaPath: \"#/required\", keyword: \"required\", params: { missingProperty: \"profiles\" }, message: \"must have required property 'profiles'\" };\n if (vErrors === null) {\n vErrors = [err2];\n } else {\n vErrors.push(err2);\n }\n errors++;\n }\n if (data.deployment === void 0) {\n const err3 = { instancePath, schemaPath: \"#/required\", keyword: \"required\", params: { missingProperty: \"deployment\" }, message: \"must have required property 'deployment'\" };\n if (vErrors === null) {\n vErrors = [err3];\n } else {\n vErrors.push(err3);\n }\n errors++;\n }\n for (const key0 in data) {\n if (!(key0 === \"deployment\" || key0 === \"endpoints\" || key0 === \"include\" || key0 === \"profiles\" || key0 === \"services\" || key0 === \"version\")) {\n const err4 = { instancePath, schemaPath: \"#/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key0 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err4];\n } else {\n vErrors.push(err4);\n }\n errors++;\n }\n }\n if (data.deployment !== void 0) {\n let data0 = data.deployment;\n if (data0 && typeof data0 == \"object\" && !Array.isArray(data0)) {\n for (const key1 in data0) {\n let data1 = data0[key1];\n if (data1 && typeof data1 == \"object\" && !Array.isArray(data1)) {\n for (const key2 in data1) {\n let data2 = data1[key2];\n if (data2 && typeof data2 == \"object\" && !Array.isArray(data2)) {\n if (data2.profile === void 0) {\n const err5 = { instancePath: instancePath + \"/deployment/\" + key1.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/\" + key2.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/deployment/additionalProperties/additionalProperties/required\", keyword: \"required\", params: { missingProperty: \"profile\" }, message: \"must have required property 'profile'\" };\n if (vErrors === null) {\n vErrors = [err5];\n } else {\n vErrors.push(err5);\n }\n errors++;\n }\n if (data2.count === void 0) {\n const err6 = { instancePath: instancePath + \"/deployment/\" + key1.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/\" + key2.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/deployment/additionalProperties/additionalProperties/required\", keyword: \"required\", params: { missingProperty: \"count\" }, message: \"must have required property 'count'\" };\n if (vErrors === null) {\n vErrors = [err6];\n } else {\n vErrors.push(err6);\n }\n errors++;\n }\n for (const key3 in data2) {\n if (!(key3 === \"count\" || key3 === \"profile\")) {\n const err7 = { instancePath: instancePath + \"/deployment/\" + key1.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/\" + key2.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/deployment/additionalProperties/additionalProperties/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key3 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err7];\n } else {\n vErrors.push(err7);\n }\n errors++;\n }\n }\n if (data2.count !== void 0) {\n let data3 = data2.count;\n if (!(typeof data3 == \"number\" && (!(data3 % 1) && !isNaN(data3)))) {\n const err8 = { instancePath: instancePath + \"/deployment/\" + key1.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/\" + key2.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/count\", schemaPath: \"#/properties/deployment/additionalProperties/additionalProperties/properties/count/type\", keyword: \"type\", params: { type: \"integer\" }, message: \"must be integer\" };\n if (vErrors === null) {\n vErrors = [err8];\n } else {\n vErrors.push(err8);\n }\n errors++;\n }\n if (typeof data3 == \"number\") {\n if (data3 < 1 || isNaN(data3)) {\n const err9 = { instancePath: instancePath + \"/deployment/\" + key1.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/\" + key2.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/count\", schemaPath: \"#/properties/deployment/additionalProperties/additionalProperties/properties/count/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 1 }, message: \"must be >= 1\" };\n if (vErrors === null) {\n vErrors = [err9];\n } else {\n vErrors.push(err9);\n }\n errors++;\n }\n }\n }\n if (data2.profile !== void 0) {\n if (typeof data2.profile !== \"string\") {\n const err10 = { instancePath: instancePath + \"/deployment/\" + key1.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/\" + key2.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/profile\", schemaPath: \"#/properties/deployment/additionalProperties/additionalProperties/properties/profile/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err10];\n } else {\n vErrors.push(err10);\n }\n errors++;\n }\n }\n } else {\n const err11 = { instancePath: instancePath + \"/deployment/\" + key1.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/\" + key2.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/deployment/additionalProperties/additionalProperties/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err11];\n } else {\n vErrors.push(err11);\n }\n errors++;\n }\n }\n } else {\n const err12 = { instancePath: instancePath + \"/deployment/\" + key1.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/deployment/additionalProperties/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err12];\n } else {\n vErrors.push(err12);\n }\n errors++;\n }\n }\n } else {\n const err13 = { instancePath: instancePath + \"/deployment\", schemaPath: \"#/properties/deployment/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err13];\n } else {\n vErrors.push(err13);\n }\n errors++;\n }\n }\n if (data.endpoints !== void 0) {\n let data5 = data.endpoints;\n if (data5 && typeof data5 == \"object\" && !Array.isArray(data5)) {\n for (const key4 in data5) {\n if (!pattern2.test(key4)) {\n const err14 = { instancePath: instancePath + \"/endpoints\", schemaPath: \"#/properties/endpoints/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key4 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err14];\n } else {\n vErrors.push(err14);\n }\n errors++;\n }\n }\n for (const key5 in data5) {\n if (pattern2.test(key5)) {\n let data6 = data5[key5];\n if (data6 && typeof data6 == \"object\" && !Array.isArray(data6)) {\n if (data6.kind === void 0) {\n const err15 = { instancePath: instancePath + \"/endpoints/\" + key5.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/endpoints/patternProperties/%5E%5Ba-z%5D%2B%5B-_0-9a-z%5D%2B%24/required\", keyword: \"required\", params: { missingProperty: \"kind\" }, message: \"must have required property 'kind'\" };\n if (vErrors === null) {\n vErrors = [err15];\n } else {\n vErrors.push(err15);\n }\n errors++;\n }\n for (const key6 in data6) {\n if (!(key6 === \"kind\")) {\n const err16 = { instancePath: instancePath + \"/endpoints/\" + key5.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/endpoints/patternProperties/%5E%5Ba-z%5D%2B%5B-_0-9a-z%5D%2B%24/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key6 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err16];\n } else {\n vErrors.push(err16);\n }\n errors++;\n }\n }\n if (data6.kind !== void 0) {\n let data7 = data6.kind;\n if (typeof data7 !== \"string\") {\n const err17 = { instancePath: instancePath + \"/endpoints/\" + key5.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/kind\", schemaPath: \"#/properties/endpoints/patternProperties/%5E%5Ba-z%5D%2B%5B-_0-9a-z%5D%2B%24/properties/kind/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err17];\n } else {\n vErrors.push(err17);\n }\n errors++;\n }\n if (!(data7 === \"ip\")) {\n const err18 = { instancePath: instancePath + \"/endpoints/\" + key5.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/kind\", schemaPath: \"#/properties/endpoints/patternProperties/%5E%5Ba-z%5D%2B%5B-_0-9a-z%5D%2B%24/properties/kind/enum\", keyword: \"enum\", params: { allowedValues: schema12.properties.endpoints.patternProperties[\"^[a-z]+[-_0-9a-z]+$\"].properties.kind.enum }, message: \"must be equal to one of the allowed values\" };\n if (vErrors === null) {\n vErrors = [err18];\n } else {\n vErrors.push(err18);\n }\n errors++;\n }\n }\n } else {\n const err19 = { instancePath: instancePath + \"/endpoints/\" + key5.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/endpoints/patternProperties/%5E%5Ba-z%5D%2B%5B-_0-9a-z%5D%2B%24/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err19];\n } else {\n vErrors.push(err19);\n }\n errors++;\n }\n }\n }\n } else {\n const err20 = { instancePath: instancePath + \"/endpoints\", schemaPath: \"#/properties/endpoints/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err20];\n } else {\n vErrors.push(err20);\n }\n errors++;\n }\n }\n if (data.include !== void 0) {\n let data8 = data.include;\n if (Array.isArray(data8)) {\n const len0 = data8.length;\n for (let i0 = 0; i0 < len0; i0++) {\n if (typeof data8[i0] !== \"string\") {\n const err21 = { instancePath: instancePath + \"/include/\" + i0, schemaPath: \"#/properties/include/items/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err21];\n } else {\n vErrors.push(err21);\n }\n errors++;\n }\n }\n } else {\n const err22 = { instancePath: instancePath + \"/include\", schemaPath: \"#/properties/include/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err22];\n } else {\n vErrors.push(err22);\n }\n errors++;\n }\n }\n if (data.profiles !== void 0) {\n let data10 = data.profiles;\n if (data10 && typeof data10 == \"object\" && !Array.isArray(data10)) {\n if (data10.compute === void 0) {\n const err23 = { instancePath: instancePath + \"/profiles\", schemaPath: \"#/properties/profiles/required\", keyword: \"required\", params: { missingProperty: \"compute\" }, message: \"must have required property 'compute'\" };\n if (vErrors === null) {\n vErrors = [err23];\n } else {\n vErrors.push(err23);\n }\n errors++;\n }\n if (data10.placement === void 0) {\n const err24 = { instancePath: instancePath + \"/profiles\", schemaPath: \"#/properties/profiles/required\", keyword: \"required\", params: { missingProperty: \"placement\" }, message: \"must have required property 'placement'\" };\n if (vErrors === null) {\n vErrors = [err24];\n } else {\n vErrors.push(err24);\n }\n errors++;\n }\n for (const key7 in data10) {\n if (!(key7 === \"compute\" || key7 === \"placement\")) {\n const err25 = { instancePath: instancePath + \"/profiles\", schemaPath: \"#/properties/profiles/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key7 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err25];\n } else {\n vErrors.push(err25);\n }\n errors++;\n }\n }\n if (data10.compute !== void 0) {\n let data11 = data10.compute;\n if (data11 && typeof data11 == \"object\" && !Array.isArray(data11)) {\n for (const key8 in data11) {\n let data12 = data11[key8];\n if (data12 && typeof data12 == \"object\" && !Array.isArray(data12)) {\n if (data12.resources === void 0) {\n const err26 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/required\", keyword: \"required\", params: { missingProperty: \"resources\" }, message: \"must have required property 'resources'\" };\n if (vErrors === null) {\n vErrors = [err26];\n } else {\n vErrors.push(err26);\n }\n errors++;\n }\n for (const key9 in data12) {\n if (!(key9 === \"resources\")) {\n const err27 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key9 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err27];\n } else {\n vErrors.push(err27);\n }\n errors++;\n }\n }\n if (data12.resources !== void 0) {\n let data13 = data12.resources;\n if (data13 && typeof data13 == \"object\" && !Array.isArray(data13)) {\n if (data13.cpu === void 0) {\n const err28 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/required\", keyword: \"required\", params: { missingProperty: \"cpu\" }, message: \"must have required property 'cpu'\" };\n if (vErrors === null) {\n vErrors = [err28];\n } else {\n vErrors.push(err28);\n }\n errors++;\n }\n if (data13.memory === void 0) {\n const err29 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/required\", keyword: \"required\", params: { missingProperty: \"memory\" }, message: \"must have required property 'memory'\" };\n if (vErrors === null) {\n vErrors = [err29];\n } else {\n vErrors.push(err29);\n }\n errors++;\n }\n if (data13.storage === void 0) {\n const err30 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/required\", keyword: \"required\", params: { missingProperty: \"storage\" }, message: \"must have required property 'storage'\" };\n if (vErrors === null) {\n vErrors = [err30];\n } else {\n vErrors.push(err30);\n }\n errors++;\n }\n for (const key10 in data13) {\n if (!(key10 === \"cpu\" || key10 === \"gpu\" || key10 === \"memory\" || key10 === \"storage\")) {\n const err31 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key10 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err31];\n } else {\n vErrors.push(err31);\n }\n errors++;\n }\n }\n if (data13.cpu !== void 0) {\n let data14 = data13.cpu;\n if (data14 && typeof data14 == \"object\" && !Array.isArray(data14)) {\n if (data14.units === void 0) {\n const err32 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/cpu\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/cpu/required\", keyword: \"required\", params: { missingProperty: \"units\" }, message: \"must have required property 'units'\" };\n if (vErrors === null) {\n vErrors = [err32];\n } else {\n vErrors.push(err32);\n }\n errors++;\n }\n for (const key11 in data14) {\n if (!(key11 === \"attributes\" || key11 === \"units\")) {\n const err33 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/cpu\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/cpu/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key11 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err33];\n } else {\n vErrors.push(err33);\n }\n errors++;\n }\n }\n if (data14.attributes !== void 0) {\n let data15 = data14.attributes;\n if (!(data15 && typeof data15 == \"object\" && !Array.isArray(data15))) {\n const err34 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/cpu/attributes\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/cpu/properties/attributes/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err34];\n } else {\n vErrors.push(err34);\n }\n errors++;\n }\n }\n if (data14.units !== void 0) {\n let data16 = data14.units;\n const _errs45 = errors;\n let valid13 = false;\n let passing0 = null;\n const _errs46 = errors;\n const _errs48 = errors;\n const _errs49 = errors;\n if (typeof data16 === \"string\") {\n if (!pattern4.test(data16)) {\n const err35 = {};\n if (vErrors === null) {\n vErrors = [err35];\n } else {\n vErrors.push(err35);\n }\n errors++;\n }\n }\n var valid14 = _errs49 === errors;\n if (valid14) {\n const err36 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/cpu/units\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/cpu/properties/units/oneOf/0/not\", keyword: \"not\", params: {}, message: \"must NOT be valid\" };\n if (vErrors === null) {\n vErrors = [err36];\n } else {\n vErrors.push(err36);\n }\n errors++;\n } else {\n errors = _errs48;\n if (vErrors !== null) {\n if (_errs48) {\n vErrors.length = _errs48;\n } else {\n vErrors = null;\n }\n }\n }\n if (typeof data16 === \"string\") {\n if (!pattern5.test(data16)) {\n const err37 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/cpu/units\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/cpu/properties/units/oneOf/0/pattern\", keyword: \"pattern\", params: { pattern: \"^[0-9]+(\\\\.[0-9]+)?[a-zA-Z]*$\" }, message: 'must match pattern \"^[0-9]+(\\\\.[0-9]+)?[a-zA-Z]*$\"' };\n if (vErrors === null) {\n vErrors = [err37];\n } else {\n vErrors.push(err37);\n }\n errors++;\n }\n } else {\n const err38 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/cpu/units\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/cpu/properties/units/oneOf/0/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err38];\n } else {\n vErrors.push(err38);\n }\n errors++;\n }\n var _valid0 = _errs46 === errors;\n if (_valid0) {\n valid13 = true;\n passing0 = 0;\n }\n const _errs50 = errors;\n if (typeof data16 == \"number\") {\n if (data16 <= 0 || isNaN(data16)) {\n const err39 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/cpu/units\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/cpu/properties/units/oneOf/1/exclusiveMinimum\", keyword: \"exclusiveMinimum\", params: { comparison: \">\", limit: 0 }, message: \"must be > 0\" };\n if (vErrors === null) {\n vErrors = [err39];\n } else {\n vErrors.push(err39);\n }\n errors++;\n }\n } else {\n const err40 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/cpu/units\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/cpu/properties/units/oneOf/1/type\", keyword: \"type\", params: { type: \"number\" }, message: \"must be number\" };\n if (vErrors === null) {\n vErrors = [err40];\n } else {\n vErrors.push(err40);\n }\n errors++;\n }\n var _valid0 = _errs50 === errors;\n if (_valid0 && valid13) {\n valid13 = false;\n passing0 = [passing0, 1];\n } else {\n if (_valid0) {\n valid13 = true;\n passing0 = 1;\n }\n }\n if (!valid13) {\n const err41 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/cpu/units\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/cpu/properties/units/oneOf\", keyword: \"oneOf\", params: { passingSchemas: passing0 }, message: \"must match exactly one schema in oneOf\" };\n if (vErrors === null) {\n vErrors = [err41];\n } else {\n vErrors.push(err41);\n }\n errors++;\n } else {\n errors = _errs45;\n if (vErrors !== null) {\n if (_errs45) {\n vErrors.length = _errs45;\n } else {\n vErrors = null;\n }\n }\n }\n }\n } else {\n const err42 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/cpu\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/cpu/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err42];\n } else {\n vErrors.push(err42);\n }\n errors++;\n }\n }\n if (data13.gpu !== void 0) {\n let data17 = data13.gpu;\n if (data17 && typeof data17 == \"object\" && !Array.isArray(data17)) {\n if (data17.units === void 0) {\n const err43 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/required\", keyword: \"required\", params: { missingProperty: \"units\" }, message: \"must have required property 'units'\" };\n if (vErrors === null) {\n vErrors = [err43];\n } else {\n vErrors.push(err43);\n }\n errors++;\n }\n for (const key12 in data17) {\n if (!(key12 === \"attributes\" || key12 === \"units\")) {\n const err44 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key12 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err44];\n } else {\n vErrors.push(err44);\n }\n errors++;\n }\n }\n if (data17.attributes !== void 0) {\n let data18 = data17.attributes;\n if (data18 && typeof data18 == \"object\" && !Array.isArray(data18)) {\n for (const key13 in data18) {\n if (!(key13 === \"vendor\")) {\n const err45 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/attributes\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key13 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err45];\n } else {\n vErrors.push(err45);\n }\n errors++;\n }\n }\n if (data18.vendor !== void 0) {\n let data19 = data18.vendor;\n if (data19 && typeof data19 == \"object\" && !Array.isArray(data19)) {\n if (Object.keys(data19).length < 1) {\n const err46 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/attributes/vendor\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/properties/vendor/minProperties\", keyword: \"minProperties\", params: { limit: 1 }, message: \"must NOT have fewer than 1 properties\" };\n if (vErrors === null) {\n vErrors = [err46];\n } else {\n vErrors.push(err46);\n }\n errors++;\n }\n for (const key14 in data19) {\n if (!(key14 === \"nvidia\")) {\n const err47 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/attributes/vendor\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/properties/vendor/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key14 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err47];\n } else {\n vErrors.push(err47);\n }\n errors++;\n }\n }\n if (data19.nvidia !== void 0) {\n let data20 = data19.nvidia;\n const _errs62 = errors;\n let valid18 = false;\n let passing1 = null;\n const _errs63 = errors;\n if (Array.isArray(data20)) {\n const len1 = data20.length;\n for (let i1 = 0; i1 < len1; i1++) {\n let data21 = data20[i1];\n if (data21 && typeof data21 == \"object\" && !Array.isArray(data21)) {\n for (const key15 in data21) {\n if (!(key15 === \"interface\" || key15 === \"model\" || key15 === \"ram\")) {\n const err48 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/attributes/vendor/nvidia/\" + i1, schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/properties/vendor/properties/nvidia/oneOf/0/items/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key15 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err48];\n } else {\n vErrors.push(err48);\n }\n errors++;\n }\n }\n if (data21.interface !== void 0) {\n let data22 = data21.interface;\n if (typeof data22 !== \"string\") {\n const err49 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/attributes/vendor/nvidia/\" + i1 + \"/interface\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/properties/vendor/properties/nvidia/oneOf/0/items/properties/interface/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err49];\n } else {\n vErrors.push(err49);\n }\n errors++;\n }\n if (!(data22 === \"pcie\" || data22 === \"sxm\")) {\n const err50 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/attributes/vendor/nvidia/\" + i1 + \"/interface\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/properties/vendor/properties/nvidia/oneOf/0/items/properties/interface/enum\", keyword: \"enum\", params: { allowedValues: schema12.properties.profiles.properties.compute.additionalProperties.properties.resources.properties.gpu.properties.attributes.properties.vendor.properties.nvidia.oneOf[0].items.properties.interface.enum }, message: \"must be equal to one of the allowed values\" };\n if (vErrors === null) {\n vErrors = [err50];\n } else {\n vErrors.push(err50);\n }\n errors++;\n }\n }\n if (data21.model !== void 0) {\n if (typeof data21.model !== \"string\") {\n const err51 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/attributes/vendor/nvidia/\" + i1 + \"/model\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/properties/vendor/properties/nvidia/oneOf/0/items/properties/model/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err51];\n } else {\n vErrors.push(err51);\n }\n errors++;\n }\n }\n if (data21.ram !== void 0) {\n if (typeof data21.ram !== \"string\") {\n const err52 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/attributes/vendor/nvidia/\" + i1 + \"/ram\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/properties/vendor/properties/nvidia/oneOf/0/items/properties/ram/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err52];\n } else {\n vErrors.push(err52);\n }\n errors++;\n }\n }\n } else {\n const err53 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/attributes/vendor/nvidia/\" + i1, schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/properties/vendor/properties/nvidia/oneOf/0/items/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err53];\n } else {\n vErrors.push(err53);\n }\n errors++;\n }\n }\n } else {\n const err54 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/attributes/vendor/nvidia\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/properties/vendor/properties/nvidia/oneOf/0/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err54];\n } else {\n vErrors.push(err54);\n }\n errors++;\n }\n var _valid1 = _errs63 === errors;\n if (_valid1) {\n valid18 = true;\n passing1 = 0;\n }\n const _errs74 = errors;\n if (data20 !== null) {\n const err55 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/attributes/vendor/nvidia\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/properties/vendor/properties/nvidia/oneOf/1/type\", keyword: \"type\", params: { type: \"null\" }, message: \"must be null\" };\n if (vErrors === null) {\n vErrors = [err55];\n } else {\n vErrors.push(err55);\n }\n errors++;\n }\n var _valid1 = _errs74 === errors;\n if (_valid1 && valid18) {\n valid18 = false;\n passing1 = [passing1, 1];\n } else {\n if (_valid1) {\n valid18 = true;\n passing1 = 1;\n }\n }\n if (!valid18) {\n const err56 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/attributes/vendor/nvidia\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/properties/vendor/properties/nvidia/oneOf\", keyword: \"oneOf\", params: { passingSchemas: passing1 }, message: \"must match exactly one schema in oneOf\" };\n if (vErrors === null) {\n vErrors = [err56];\n } else {\n vErrors.push(err56);\n }\n errors++;\n } else {\n errors = _errs62;\n if (vErrors !== null) {\n if (_errs62) {\n vErrors.length = _errs62;\n } else {\n vErrors = null;\n }\n }\n }\n }\n } else {\n const err57 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/attributes/vendor\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/properties/vendor/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err57];\n } else {\n vErrors.push(err57);\n }\n errors++;\n }\n }\n } else {\n const err58 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/attributes\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err58];\n } else {\n vErrors.push(err58);\n }\n errors++;\n }\n }\n if (data17.units !== void 0) {\n let data25 = data17.units;\n const _errs77 = errors;\n let valid22 = false;\n let passing2 = null;\n const _errs78 = errors;\n if (typeof data25 !== \"string\") {\n const err59 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/units\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/units/oneOf/0/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err59];\n } else {\n vErrors.push(err59);\n }\n errors++;\n }\n var _valid2 = _errs78 === errors;\n if (_valid2) {\n valid22 = true;\n passing2 = 0;\n }\n const _errs80 = errors;\n if (!(typeof data25 == \"number\")) {\n const err60 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/units\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/units/oneOf/1/type\", keyword: \"type\", params: { type: \"number\" }, message: \"must be number\" };\n if (vErrors === null) {\n vErrors = [err60];\n } else {\n vErrors.push(err60);\n }\n errors++;\n }\n var _valid2 = _errs80 === errors;\n if (_valid2 && valid22) {\n valid22 = false;\n passing2 = [passing2, 1];\n } else {\n if (_valid2) {\n valid22 = true;\n passing2 = 1;\n }\n }\n if (!valid22) {\n const err61 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu/units\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/units/oneOf\", keyword: \"oneOf\", params: { passingSchemas: passing2 }, message: \"must match exactly one schema in oneOf\" };\n if (vErrors === null) {\n vErrors = [err61];\n } else {\n vErrors.push(err61);\n }\n errors++;\n } else {\n errors = _errs77;\n if (vErrors !== null) {\n if (_errs77) {\n vErrors.length = _errs77;\n } else {\n vErrors = null;\n }\n }\n }\n }\n } else {\n const err62 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/gpu\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err62];\n } else {\n vErrors.push(err62);\n }\n errors++;\n }\n }\n if (data13.memory !== void 0) {\n let data26 = data13.memory;\n if (data26 && typeof data26 == \"object\" && !Array.isArray(data26)) {\n if (data26.size === void 0) {\n const err63 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/memory\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/memory/required\", keyword: \"required\", params: { missingProperty: \"size\" }, message: \"must have required property 'size'\" };\n if (vErrors === null) {\n vErrors = [err63];\n } else {\n vErrors.push(err63);\n }\n errors++;\n }\n for (const key16 in data26) {\n if (!(key16 === \"size\")) {\n const err64 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/memory\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/memory/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key16 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err64];\n } else {\n vErrors.push(err64);\n }\n errors++;\n }\n }\n if (data26.size !== void 0) {\n if (typeof data26.size !== \"string\") {\n const err65 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/memory/size\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/memory/properties/size/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err65];\n } else {\n vErrors.push(err65);\n }\n errors++;\n }\n }\n } else {\n const err66 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/memory\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/memory/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err66];\n } else {\n vErrors.push(err66);\n }\n errors++;\n }\n }\n if (data13.storage !== void 0) {\n let data28 = data13.storage;\n const _errs88 = errors;\n let valid24 = false;\n let passing3 = null;\n const _errs89 = errors;\n if (!validate12(data28, { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/storage\", parentData: data13, parentDataProperty: \"storage\", rootData })) {\n vErrors = vErrors === null ? validate12.errors : vErrors.concat(validate12.errors);\n errors = vErrors.length;\n }\n var _valid3 = _errs89 === errors;\n if (_valid3) {\n valid24 = true;\n passing3 = 0;\n }\n const _errs90 = errors;\n if (Array.isArray(data28)) {\n const len2 = data28.length;\n for (let i2 = 0; i2 < len2; i2++) {\n if (!validate12(data28[i2], { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/storage/\" + i2, parentData: data28, parentDataProperty: i2, rootData })) {\n vErrors = vErrors === null ? validate12.errors : vErrors.concat(validate12.errors);\n errors = vErrors.length;\n }\n }\n } else {\n const err67 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/storage\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/storage/oneOf/1/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err67];\n } else {\n vErrors.push(err67);\n }\n errors++;\n }\n var _valid3 = _errs90 === errors;\n if (_valid3 && valid24) {\n valid24 = false;\n passing3 = [passing3, 1];\n } else {\n if (_valid3) {\n valid24 = true;\n passing3 = 1;\n }\n }\n if (!valid24) {\n const err68 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources/storage\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/storage/oneOf\", keyword: \"oneOf\", params: { passingSchemas: passing3 }, message: \"must match exactly one schema in oneOf\" };\n if (vErrors === null) {\n vErrors = [err68];\n } else {\n vErrors.push(err68);\n }\n errors++;\n } else {\n errors = _errs88;\n if (vErrors !== null) {\n if (_errs88) {\n vErrors.length = _errs88;\n } else {\n vErrors = null;\n }\n }\n }\n }\n } else {\n const err69 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/resources\", schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err69];\n } else {\n vErrors.push(err69);\n }\n errors++;\n }\n }\n } else {\n const err70 = { instancePath: instancePath + \"/profiles/compute/\" + key8.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err70];\n } else {\n vErrors.push(err70);\n }\n errors++;\n }\n }\n } else {\n const err71 = { instancePath: instancePath + \"/profiles/compute\", schemaPath: \"#/properties/profiles/properties/compute/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err71];\n } else {\n vErrors.push(err71);\n }\n errors++;\n }\n }\n if (data10.placement !== void 0) {\n let data30 = data10.placement;\n if (data30 && typeof data30 == \"object\" && !Array.isArray(data30)) {\n for (const key17 in data30) {\n let data31 = data30[key17];\n if (data31 && typeof data31 == \"object\" && !Array.isArray(data31)) {\n if (data31.pricing === void 0) {\n const err72 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/profiles/properties/placement/additionalProperties/required\", keyword: \"required\", params: { missingProperty: \"pricing\" }, message: \"must have required property 'pricing'\" };\n if (vErrors === null) {\n vErrors = [err72];\n } else {\n vErrors.push(err72);\n }\n errors++;\n }\n for (const key18 in data31) {\n if (!(key18 === \"attributes\" || key18 === \"pricing\" || key18 === \"signedBy\")) {\n const err73 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/profiles/properties/placement/additionalProperties/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key18 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err73];\n } else {\n vErrors.push(err73);\n }\n errors++;\n }\n }\n if (data31.attributes !== void 0) {\n let data32 = data31.attributes;\n if (!(data32 && typeof data32 == \"object\" && !Array.isArray(data32))) {\n const err74 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/attributes\", schemaPath: \"#/properties/profiles/properties/placement/additionalProperties/properties/attributes/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err74];\n } else {\n vErrors.push(err74);\n }\n errors++;\n }\n }\n if (data31.pricing !== void 0) {\n let data33 = data31.pricing;\n if (data33 && typeof data33 == \"object\" && !Array.isArray(data33)) {\n for (const key19 in data33) {\n let data34 = data33[key19];\n if (data34 && typeof data34 == \"object\" && !Array.isArray(data34)) {\n if (data34.denom === void 0) {\n const err75 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/pricing/\" + key19.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/definitions/priceCoin/required\", keyword: \"required\", params: { missingProperty: \"denom\" }, message: \"must have required property 'denom'\" };\n if (vErrors === null) {\n vErrors = [err75];\n } else {\n vErrors.push(err75);\n }\n errors++;\n }\n if (data34.amount === void 0) {\n const err76 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/pricing/\" + key19.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/definitions/priceCoin/required\", keyword: \"required\", params: { missingProperty: \"amount\" }, message: \"must have required property 'amount'\" };\n if (vErrors === null) {\n vErrors = [err76];\n } else {\n vErrors.push(err76);\n }\n errors++;\n }\n for (const key20 in data34) {\n if (!(key20 === \"amount\" || key20 === \"denom\")) {\n const err77 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/pricing/\" + key19.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/definitions/priceCoin/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key20 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err77];\n } else {\n vErrors.push(err77);\n }\n errors++;\n }\n }\n if (data34.amount !== void 0) {\n let data35 = data34.amount;\n const _errs109 = errors;\n let valid32 = false;\n let passing4 = null;\n const _errs110 = errors;\n if (typeof data35 === \"string\") {\n if (!pattern6.test(data35)) {\n const err78 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/pricing/\" + key19.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/amount\", schemaPath: \"#/definitions/priceCoin/properties/amount/oneOf/0/pattern\", keyword: \"pattern\", params: { pattern: \"^[0-9]+(\\\\.[0-9]+)?$\" }, message: 'must match pattern \"^[0-9]+(\\\\.[0-9]+)?$\"' };\n if (vErrors === null) {\n vErrors = [err78];\n } else {\n vErrors.push(err78);\n }\n errors++;\n }\n } else {\n const err79 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/pricing/\" + key19.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/amount\", schemaPath: \"#/definitions/priceCoin/properties/amount/oneOf/0/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err79];\n } else {\n vErrors.push(err79);\n }\n errors++;\n }\n var _valid4 = _errs110 === errors;\n if (_valid4) {\n valid32 = true;\n passing4 = 0;\n }\n const _errs112 = errors;\n if (typeof data35 == \"number\") {\n if (data35 < 0 || isNaN(data35)) {\n const err80 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/pricing/\" + key19.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/amount\", schemaPath: \"#/definitions/priceCoin/properties/amount/oneOf/1/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 0 }, message: \"must be >= 0\" };\n if (vErrors === null) {\n vErrors = [err80];\n } else {\n vErrors.push(err80);\n }\n errors++;\n }\n } else {\n const err81 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/pricing/\" + key19.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/amount\", schemaPath: \"#/definitions/priceCoin/properties/amount/oneOf/1/type\", keyword: \"type\", params: { type: \"number\" }, message: \"must be number\" };\n if (vErrors === null) {\n vErrors = [err81];\n } else {\n vErrors.push(err81);\n }\n errors++;\n }\n var _valid4 = _errs112 === errors;\n if (_valid4 && valid32) {\n valid32 = false;\n passing4 = [passing4, 1];\n } else {\n if (_valid4) {\n valid32 = true;\n passing4 = 1;\n }\n }\n if (!valid32) {\n const err82 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/pricing/\" + key19.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/amount\", schemaPath: \"#/definitions/priceCoin/properties/amount/oneOf\", keyword: \"oneOf\", params: { passingSchemas: passing4 }, message: \"must match exactly one schema in oneOf\" };\n if (vErrors === null) {\n vErrors = [err82];\n } else {\n vErrors.push(err82);\n }\n errors++;\n } else {\n errors = _errs109;\n if (vErrors !== null) {\n if (_errs109) {\n vErrors.length = _errs109;\n } else {\n vErrors = null;\n }\n }\n }\n }\n if (data34.denom !== void 0) {\n let data36 = data34.denom;\n if (typeof data36 === \"string\") {\n if (!pattern7.test(data36)) {\n const err83 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/pricing/\" + key19.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/denom\", schemaPath: \"#/definitions/priceCoin/properties/denom/pattern\", keyword: \"pattern\", params: { pattern: \"^(uakt|uact|ibc/.*)$\" }, message: 'must match pattern \"^(uakt|uact|ibc/.*)$\"' };\n if (vErrors === null) {\n vErrors = [err83];\n } else {\n vErrors.push(err83);\n }\n errors++;\n }\n } else {\n const err84 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/pricing/\" + key19.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/denom\", schemaPath: \"#/definitions/priceCoin/properties/denom/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err84];\n } else {\n vErrors.push(err84);\n }\n errors++;\n }\n }\n } else {\n const err85 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/pricing/\" + key19.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/definitions/priceCoin/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err85];\n } else {\n vErrors.push(err85);\n }\n errors++;\n }\n }\n } else {\n const err86 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/pricing\", schemaPath: \"#/properties/profiles/properties/placement/additionalProperties/properties/pricing/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err86];\n } else {\n vErrors.push(err86);\n }\n errors++;\n }\n }\n if (data31.signedBy !== void 0) {\n let data37 = data31.signedBy;\n if (data37 && typeof data37 == \"object\" && !Array.isArray(data37)) {\n for (const key21 in data37) {\n if (!(key21 === \"allOf\" || key21 === \"anyOf\")) {\n const err87 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/signedBy\", schemaPath: \"#/properties/profiles/properties/placement/additionalProperties/properties/signedBy/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key21 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err87];\n } else {\n vErrors.push(err87);\n }\n errors++;\n }\n }\n if (data37.allOf !== void 0) {\n let data38 = data37.allOf;\n if (Array.isArray(data38)) {\n const len3 = data38.length;\n for (let i3 = 0; i3 < len3; i3++) {\n if (typeof data38[i3] !== \"string\") {\n const err88 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/signedBy/allOf/\" + i3, schemaPath: \"#/properties/profiles/properties/placement/additionalProperties/properties/signedBy/properties/allOf/items/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err88];\n } else {\n vErrors.push(err88);\n }\n errors++;\n }\n }\n } else {\n const err89 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/signedBy/allOf\", schemaPath: \"#/properties/profiles/properties/placement/additionalProperties/properties/signedBy/properties/allOf/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err89];\n } else {\n vErrors.push(err89);\n }\n errors++;\n }\n }\n if (data37.anyOf !== void 0) {\n let data40 = data37.anyOf;\n if (Array.isArray(data40)) {\n const len4 = data40.length;\n for (let i4 = 0; i4 < len4; i4++) {\n if (typeof data40[i4] !== \"string\") {\n const err90 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/signedBy/anyOf/\" + i4, schemaPath: \"#/properties/profiles/properties/placement/additionalProperties/properties/signedBy/properties/anyOf/items/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err90];\n } else {\n vErrors.push(err90);\n }\n errors++;\n }\n }\n } else {\n const err91 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/signedBy/anyOf\", schemaPath: \"#/properties/profiles/properties/placement/additionalProperties/properties/signedBy/properties/anyOf/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err91];\n } else {\n vErrors.push(err91);\n }\n errors++;\n }\n }\n } else {\n const err92 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/signedBy\", schemaPath: \"#/properties/profiles/properties/placement/additionalProperties/properties/signedBy/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err92];\n } else {\n vErrors.push(err92);\n }\n errors++;\n }\n }\n } else {\n const err93 = { instancePath: instancePath + \"/profiles/placement/\" + key17.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/profiles/properties/placement/additionalProperties/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err93];\n } else {\n vErrors.push(err93);\n }\n errors++;\n }\n }\n } else {\n const err94 = { instancePath: instancePath + \"/profiles/placement\", schemaPath: \"#/properties/profiles/properties/placement/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err94];\n } else {\n vErrors.push(err94);\n }\n errors++;\n }\n }\n } else {\n const err95 = { instancePath: instancePath + \"/profiles\", schemaPath: \"#/properties/profiles/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err95];\n } else {\n vErrors.push(err95);\n }\n errors++;\n }\n }\n if (data.services !== void 0) {\n let data42 = data.services;\n if (data42 && typeof data42 == \"object\" && !Array.isArray(data42)) {\n for (const key22 in data42) {\n let data43 = data42[key22];\n if (data43 && typeof data43 == \"object\" && !Array.isArray(data43)) {\n if (data43.image === void 0) {\n const err96 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/services/additionalProperties/required\", keyword: \"required\", params: { missingProperty: \"image\" }, message: \"must have required property 'image'\" };\n if (vErrors === null) {\n vErrors = [err96];\n } else {\n vErrors.push(err96);\n }\n errors++;\n }\n for (const key23 in data43) {\n if (!(key23 === \"args\" || key23 === \"command\" || key23 === \"credentials\" || key23 === \"dependencies\" || key23 === \"env\" || key23 === \"expose\" || key23 === \"image\" || key23 === \"params\")) {\n const err97 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/services/additionalProperties/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key23 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err97];\n } else {\n vErrors.push(err97);\n }\n errors++;\n }\n }\n if (data43.args !== void 0) {\n let data44 = data43.args;\n const _errs135 = errors;\n let valid41 = false;\n let passing5 = null;\n const _errs136 = errors;\n if (Array.isArray(data44)) {\n const len5 = data44.length;\n for (let i5 = 0; i5 < len5; i5++) {\n if (typeof data44[i5] !== \"string\") {\n const err98 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/args/\" + i5, schemaPath: \"#/definitions/stringArrayOrNull/oneOf/0/items/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err98];\n } else {\n vErrors.push(err98);\n }\n errors++;\n }\n }\n } else {\n const err99 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/args\", schemaPath: \"#/definitions/stringArrayOrNull/oneOf/0/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err99];\n } else {\n vErrors.push(err99);\n }\n errors++;\n }\n var _valid5 = _errs136 === errors;\n if (_valid5) {\n valid41 = true;\n passing5 = 0;\n }\n const _errs140 = errors;\n if (data44 !== null) {\n const err100 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/args\", schemaPath: \"#/definitions/stringArrayOrNull/oneOf/1/type\", keyword: \"type\", params: { type: \"null\" }, message: \"must be null\" };\n if (vErrors === null) {\n vErrors = [err100];\n } else {\n vErrors.push(err100);\n }\n errors++;\n }\n var _valid5 = _errs140 === errors;\n if (_valid5 && valid41) {\n valid41 = false;\n passing5 = [passing5, 1];\n } else {\n if (_valid5) {\n valid41 = true;\n passing5 = 1;\n }\n }\n if (!valid41) {\n const err101 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/args\", schemaPath: \"#/definitions/stringArrayOrNull/oneOf\", keyword: \"oneOf\", params: { passingSchemas: passing5 }, message: \"must match exactly one schema in oneOf\" };\n if (vErrors === null) {\n vErrors = [err101];\n } else {\n vErrors.push(err101);\n }\n errors++;\n } else {\n errors = _errs135;\n if (vErrors !== null) {\n if (_errs135) {\n vErrors.length = _errs135;\n } else {\n vErrors = null;\n }\n }\n }\n }\n if (data43.command !== void 0) {\n let data46 = data43.command;\n const _errs144 = errors;\n let valid45 = false;\n let passing6 = null;\n const _errs145 = errors;\n if (Array.isArray(data46)) {\n const len6 = data46.length;\n for (let i6 = 0; i6 < len6; i6++) {\n if (typeof data46[i6] !== \"string\") {\n const err102 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/command/\" + i6, schemaPath: \"#/definitions/stringArrayOrNull/oneOf/0/items/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err102];\n } else {\n vErrors.push(err102);\n }\n errors++;\n }\n }\n } else {\n const err103 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/command\", schemaPath: \"#/definitions/stringArrayOrNull/oneOf/0/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err103];\n } else {\n vErrors.push(err103);\n }\n errors++;\n }\n var _valid6 = _errs145 === errors;\n if (_valid6) {\n valid45 = true;\n passing6 = 0;\n }\n const _errs149 = errors;\n if (data46 !== null) {\n const err104 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/command\", schemaPath: \"#/definitions/stringArrayOrNull/oneOf/1/type\", keyword: \"type\", params: { type: \"null\" }, message: \"must be null\" };\n if (vErrors === null) {\n vErrors = [err104];\n } else {\n vErrors.push(err104);\n }\n errors++;\n }\n var _valid6 = _errs149 === errors;\n if (_valid6 && valid45) {\n valid45 = false;\n passing6 = [passing6, 1];\n } else {\n if (_valid6) {\n valid45 = true;\n passing6 = 1;\n }\n }\n if (!valid45) {\n const err105 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/command\", schemaPath: \"#/definitions/stringArrayOrNull/oneOf\", keyword: \"oneOf\", params: { passingSchemas: passing6 }, message: \"must match exactly one schema in oneOf\" };\n if (vErrors === null) {\n vErrors = [err105];\n } else {\n vErrors.push(err105);\n }\n errors++;\n } else {\n errors = _errs144;\n if (vErrors !== null) {\n if (_errs144) {\n vErrors.length = _errs144;\n } else {\n vErrors = null;\n }\n }\n }\n }\n if (data43.credentials !== void 0) {\n let data48 = data43.credentials;\n if (data48 && typeof data48 == \"object\" && !Array.isArray(data48)) {\n if (data48.host === void 0) {\n const err106 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/credentials\", schemaPath: \"#/properties/services/additionalProperties/properties/credentials/required\", keyword: \"required\", params: { missingProperty: \"host\" }, message: \"must have required property 'host'\" };\n if (vErrors === null) {\n vErrors = [err106];\n } else {\n vErrors.push(err106);\n }\n errors++;\n }\n if (data48.username === void 0) {\n const err107 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/credentials\", schemaPath: \"#/properties/services/additionalProperties/properties/credentials/required\", keyword: \"required\", params: { missingProperty: \"username\" }, message: \"must have required property 'username'\" };\n if (vErrors === null) {\n vErrors = [err107];\n } else {\n vErrors.push(err107);\n }\n errors++;\n }\n if (data48.password === void 0) {\n const err108 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/credentials\", schemaPath: \"#/properties/services/additionalProperties/properties/credentials/required\", keyword: \"required\", params: { missingProperty: \"password\" }, message: \"must have required property 'password'\" };\n if (vErrors === null) {\n vErrors = [err108];\n } else {\n vErrors.push(err108);\n }\n errors++;\n }\n for (const key24 in data48) {\n if (!(key24 === \"email\" || key24 === \"host\" || key24 === \"password\" || key24 === \"username\")) {\n const err109 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/credentials\", schemaPath: \"#/properties/services/additionalProperties/properties/credentials/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key24 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err109];\n } else {\n vErrors.push(err109);\n }\n errors++;\n }\n }\n if (data48.email !== void 0) {\n let data49 = data48.email;\n if (typeof data49 === \"string\") {\n if (func2(data49) < 5) {\n const err110 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/credentials/email\", schemaPath: \"#/properties/services/additionalProperties/properties/credentials/properties/email/minLength\", keyword: \"minLength\", params: { limit: 5 }, message: \"must NOT have fewer than 5 characters\" };\n if (vErrors === null) {\n vErrors = [err110];\n } else {\n vErrors.push(err110);\n }\n errors++;\n }\n } else {\n const err111 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/credentials/email\", schemaPath: \"#/properties/services/additionalProperties/properties/credentials/properties/email/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err111];\n } else {\n vErrors.push(err111);\n }\n errors++;\n }\n }\n if (data48.host !== void 0) {\n let data50 = data48.host;\n if (typeof data50 === \"string\") {\n if (func2(data50) < 1) {\n const err112 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/credentials/host\", schemaPath: \"#/properties/services/additionalProperties/properties/credentials/properties/host/minLength\", keyword: \"minLength\", params: { limit: 1 }, message: \"must NOT have fewer than 1 characters\" };\n if (vErrors === null) {\n vErrors = [err112];\n } else {\n vErrors.push(err112);\n }\n errors++;\n }\n } else {\n const err113 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/credentials/host\", schemaPath: \"#/properties/services/additionalProperties/properties/credentials/properties/host/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err113];\n } else {\n vErrors.push(err113);\n }\n errors++;\n }\n }\n if (data48.password !== void 0) {\n let data51 = data48.password;\n if (typeof data51 === \"string\") {\n if (func2(data51) < 6) {\n const err114 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/credentials/password\", schemaPath: \"#/properties/services/additionalProperties/properties/credentials/properties/password/minLength\", keyword: \"minLength\", params: { limit: 6 }, message: \"must NOT have fewer than 6 characters\" };\n if (vErrors === null) {\n vErrors = [err114];\n } else {\n vErrors.push(err114);\n }\n errors++;\n }\n } else {\n const err115 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/credentials/password\", schemaPath: \"#/properties/services/additionalProperties/properties/credentials/properties/password/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err115];\n } else {\n vErrors.push(err115);\n }\n errors++;\n }\n }\n if (data48.username !== void 0) {\n let data52 = data48.username;\n if (typeof data52 === \"string\") {\n if (func2(data52) < 1) {\n const err116 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/credentials/username\", schemaPath: \"#/properties/services/additionalProperties/properties/credentials/properties/username/minLength\", keyword: \"minLength\", params: { limit: 1 }, message: \"must NOT have fewer than 1 characters\" };\n if (vErrors === null) {\n vErrors = [err116];\n } else {\n vErrors.push(err116);\n }\n errors++;\n }\n } else {\n const err117 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/credentials/username\", schemaPath: \"#/properties/services/additionalProperties/properties/credentials/properties/username/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err117];\n } else {\n vErrors.push(err117);\n }\n errors++;\n }\n }\n } else {\n const err118 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/credentials\", schemaPath: \"#/properties/services/additionalProperties/properties/credentials/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err118];\n } else {\n vErrors.push(err118);\n }\n errors++;\n }\n }\n if (data43.dependencies !== void 0) {\n let data53 = data43.dependencies;\n if (Array.isArray(data53)) {\n const len7 = data53.length;\n for (let i7 = 0; i7 < len7; i7++) {\n let data54 = data53[i7];\n if (data54 && typeof data54 == \"object\" && !Array.isArray(data54)) {\n for (const key25 in data54) {\n if (!(key25 === \"service\")) {\n const err119 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/dependencies/\" + i7, schemaPath: \"#/properties/services/additionalProperties/properties/dependencies/items/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key25 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err119];\n } else {\n vErrors.push(err119);\n }\n errors++;\n }\n }\n if (data54.service !== void 0) {\n if (typeof data54.service !== \"string\") {\n const err120 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/dependencies/\" + i7 + \"/service\", schemaPath: \"#/properties/services/additionalProperties/properties/dependencies/items/properties/service/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err120];\n } else {\n vErrors.push(err120);\n }\n errors++;\n }\n }\n } else {\n const err121 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/dependencies/\" + i7, schemaPath: \"#/properties/services/additionalProperties/properties/dependencies/items/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err121];\n } else {\n vErrors.push(err121);\n }\n errors++;\n }\n }\n } else {\n const err122 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/dependencies\", schemaPath: \"#/properties/services/additionalProperties/properties/dependencies/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err122];\n } else {\n vErrors.push(err122);\n }\n errors++;\n }\n }\n if (data43.env !== void 0) {\n let data56 = data43.env;\n const _errs171 = errors;\n let valid53 = false;\n let passing7 = null;\n const _errs172 = errors;\n if (Array.isArray(data56)) {\n const len8 = data56.length;\n for (let i8 = 0; i8 < len8; i8++) {\n if (typeof data56[i8] !== \"string\") {\n const err123 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/env/\" + i8, schemaPath: \"#/definitions/stringArrayOrNull/oneOf/0/items/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err123];\n } else {\n vErrors.push(err123);\n }\n errors++;\n }\n }\n } else {\n const err124 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/env\", schemaPath: \"#/definitions/stringArrayOrNull/oneOf/0/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err124];\n } else {\n vErrors.push(err124);\n }\n errors++;\n }\n var _valid7 = _errs172 === errors;\n if (_valid7) {\n valid53 = true;\n passing7 = 0;\n }\n const _errs176 = errors;\n if (data56 !== null) {\n const err125 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/env\", schemaPath: \"#/definitions/stringArrayOrNull/oneOf/1/type\", keyword: \"type\", params: { type: \"null\" }, message: \"must be null\" };\n if (vErrors === null) {\n vErrors = [err125];\n } else {\n vErrors.push(err125);\n }\n errors++;\n }\n var _valid7 = _errs176 === errors;\n if (_valid7 && valid53) {\n valid53 = false;\n passing7 = [passing7, 1];\n } else {\n if (_valid7) {\n valid53 = true;\n passing7 = 1;\n }\n }\n if (!valid53) {\n const err126 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/env\", schemaPath: \"#/definitions/stringArrayOrNull/oneOf\", keyword: \"oneOf\", params: { passingSchemas: passing7 }, message: \"must match exactly one schema in oneOf\" };\n if (vErrors === null) {\n vErrors = [err126];\n } else {\n vErrors.push(err126);\n }\n errors++;\n } else {\n errors = _errs171;\n if (vErrors !== null) {\n if (_errs171) {\n vErrors.length = _errs171;\n } else {\n vErrors = null;\n }\n }\n }\n }\n if (data43.expose !== void 0) {\n let data58 = data43.expose;\n if (Array.isArray(data58)) {\n const len9 = data58.length;\n for (let i9 = 0; i9 < len9; i9++) {\n let data59 = data58[i9];\n if (data59 && typeof data59 == \"object\" && !Array.isArray(data59)) {\n if (data59.port === void 0) {\n const err127 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9, schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/required\", keyword: \"required\", params: { missingProperty: \"port\" }, message: \"must have required property 'port'\" };\n if (vErrors === null) {\n vErrors = [err127];\n } else {\n vErrors.push(err127);\n }\n errors++;\n }\n for (const key26 in data59) {\n if (!(key26 === \"accept\" || key26 === \"as\" || key26 === \"http_options\" || key26 === \"port\" || key26 === \"proto\" || key26 === \"to\")) {\n const err128 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9, schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key26 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err128];\n } else {\n vErrors.push(err128);\n }\n errors++;\n }\n }\n if (data59.accept !== void 0) {\n let data60 = data59.accept;\n if (Array.isArray(data60)) {\n const len10 = data60.length;\n for (let i10 = 0; i10 < len10; i10++) {\n if (typeof data60[i10] !== \"string\") {\n const err129 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/accept/\" + i10, schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/accept/items/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err129];\n } else {\n vErrors.push(err129);\n }\n errors++;\n }\n }\n } else {\n const err130 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/accept\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/accept/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err130];\n } else {\n vErrors.push(err130);\n }\n errors++;\n }\n }\n if (data59.as !== void 0) {\n let data62 = data59.as;\n if (!(typeof data62 == \"number\" && (!(data62 % 1) && !isNaN(data62)))) {\n const err131 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/as\", schemaPath: \"#/definitions/portNumber/type\", keyword: \"type\", params: { type: \"integer\" }, message: \"must be integer\" };\n if (vErrors === null) {\n vErrors = [err131];\n } else {\n vErrors.push(err131);\n }\n errors++;\n }\n if (typeof data62 == \"number\") {\n if (data62 > 65535 || isNaN(data62)) {\n const err132 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/as\", schemaPath: \"#/definitions/portNumber/maximum\", keyword: \"maximum\", params: { comparison: \"<=\", limit: 65535 }, message: \"must be <= 65535\" };\n if (vErrors === null) {\n vErrors = [err132];\n } else {\n vErrors.push(err132);\n }\n errors++;\n }\n if (data62 < 1 || isNaN(data62)) {\n const err133 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/as\", schemaPath: \"#/definitions/portNumber/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 1 }, message: \"must be >= 1\" };\n if (vErrors === null) {\n vErrors = [err133];\n } else {\n vErrors.push(err133);\n }\n errors++;\n }\n }\n }\n if (data59.http_options !== void 0) {\n let data63 = data59.http_options;\n if (data63 && typeof data63 == \"object\" && !Array.isArray(data63)) {\n for (const key27 in data63) {\n if (!(key27 === \"max_body_size\" || key27 === \"next_cases\" || key27 === \"next_timeout\" || key27 === \"next_tries\" || key27 === \"read_timeout\" || key27 === \"send_timeout\")) {\n const err134 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key27 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err134];\n } else {\n vErrors.push(err134);\n }\n errors++;\n }\n }\n if (data63.max_body_size !== void 0) {\n let data64 = data63.max_body_size;\n if (!(typeof data64 == \"number\" && (!(data64 % 1) && !isNaN(data64)))) {\n const err135 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/max_body_size\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/max_body_size/type\", keyword: \"type\", params: { type: \"integer\" }, message: \"must be integer\" };\n if (vErrors === null) {\n vErrors = [err135];\n } else {\n vErrors.push(err135);\n }\n errors++;\n }\n if (typeof data64 == \"number\") {\n if (data64 > 104857600 || isNaN(data64)) {\n const err136 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/max_body_size\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/max_body_size/maximum\", keyword: \"maximum\", params: { comparison: \"<=\", limit: 104857600 }, message: \"must be <= 104857600\" };\n if (vErrors === null) {\n vErrors = [err136];\n } else {\n vErrors.push(err136);\n }\n errors++;\n }\n if (data64 < 0 || isNaN(data64)) {\n const err137 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/max_body_size\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/max_body_size/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 0 }, message: \"must be >= 0\" };\n if (vErrors === null) {\n vErrors = [err137];\n } else {\n vErrors.push(err137);\n }\n errors++;\n }\n }\n }\n if (data63.next_cases !== void 0) {\n let data65 = data63.next_cases;\n const _errs196 = errors;\n let valid63 = false;\n let passing8 = null;\n const _errs197 = errors;\n if (Array.isArray(data65)) {\n if (data65.length > 1) {\n const err138 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_cases\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/next_cases/oneOf/0/maxItems\", keyword: \"maxItems\", params: { limit: 1 }, message: \"must NOT have more than 1 items\" };\n if (vErrors === null) {\n vErrors = [err138];\n } else {\n vErrors.push(err138);\n }\n errors++;\n }\n if (data65.length < 1) {\n const err139 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_cases\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/next_cases/oneOf/0/minItems\", keyword: \"minItems\", params: { limit: 1 }, message: \"must NOT have fewer than 1 items\" };\n if (vErrors === null) {\n vErrors = [err139];\n } else {\n vErrors.push(err139);\n }\n errors++;\n }\n const len11 = data65.length;\n for (let i11 = 0; i11 < len11; i11++) {\n let data66 = data65[i11];\n if (typeof data66 !== \"string\") {\n const err140 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_cases/\" + i11, schemaPath: \"#/definitions/httpErrorCode/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err140];\n } else {\n vErrors.push(err140);\n }\n errors++;\n }\n if (!(data66 === \"error\" || data66 === \"timeout\" || data66 === \"500\" || data66 === \"502\" || data66 === \"503\" || data66 === \"504\" || data66 === \"403\" || data66 === \"404\" || data66 === \"429\" || data66 === \"off\")) {\n const err141 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_cases/\" + i11, schemaPath: \"#/definitions/httpErrorCode/enum\", keyword: \"enum\", params: { allowedValues: schema20.enum }, message: \"must be equal to one of the allowed values\" };\n if (vErrors === null) {\n vErrors = [err141];\n } else {\n vErrors.push(err141);\n }\n errors++;\n }\n }\n const _errs202 = errors;\n const len12 = data65.length;\n for (let i12 = 0; i12 < len12; i12++) {\n const _errs203 = errors;\n if (\"off\" !== data65[i12]) {\n const err142 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_cases/\" + i12, schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/next_cases/oneOf/0/contains/const\", keyword: \"const\", params: { allowedValue: \"off\" }, message: \"must be equal to constant\" };\n if (vErrors === null) {\n vErrors = [err142];\n } else {\n vErrors.push(err142);\n }\n errors++;\n }\n var valid67 = _errs203 === errors;\n if (valid67) {\n break;\n }\n }\n if (!valid67) {\n const err143 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_cases\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/next_cases/oneOf/0/contains\", keyword: \"contains\", params: { minContains: 1 }, message: \"must contain at least 1 valid item(s)\" };\n if (vErrors === null) {\n vErrors = [err143];\n } else {\n vErrors.push(err143);\n }\n errors++;\n } else {\n errors = _errs202;\n if (vErrors !== null) {\n if (_errs202) {\n vErrors.length = _errs202;\n } else {\n vErrors = null;\n }\n }\n }\n } else {\n const err144 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_cases\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/next_cases/oneOf/0/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err144];\n } else {\n vErrors.push(err144);\n }\n errors++;\n }\n var _valid8 = _errs197 === errors;\n if (_valid8) {\n valid63 = true;\n passing8 = 0;\n }\n const _errs204 = errors;\n const _errs206 = errors;\n const _errs207 = errors;\n if (Array.isArray(data65)) {\n const _errs208 = errors;\n const len13 = data65.length;\n for (let i13 = 0; i13 < len13; i13++) {\n const _errs209 = errors;\n if (\"off\" !== data65[i13]) {\n const err145 = {};\n if (vErrors === null) {\n vErrors = [err145];\n } else {\n vErrors.push(err145);\n }\n errors++;\n }\n var valid69 = _errs209 === errors;\n if (valid69) {\n break;\n }\n }\n if (!valid69) {\n const err146 = {};\n if (vErrors === null) {\n vErrors = [err146];\n } else {\n vErrors.push(err146);\n }\n errors++;\n } else {\n errors = _errs208;\n if (vErrors !== null) {\n if (_errs208) {\n vErrors.length = _errs208;\n } else {\n vErrors = null;\n }\n }\n }\n }\n var valid68 = _errs207 === errors;\n if (valid68) {\n const err147 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_cases\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/next_cases/oneOf/1/not\", keyword: \"not\", params: {}, message: \"must NOT be valid\" };\n if (vErrors === null) {\n vErrors = [err147];\n } else {\n vErrors.push(err147);\n }\n errors++;\n } else {\n errors = _errs206;\n if (vErrors !== null) {\n if (_errs206) {\n vErrors.length = _errs206;\n } else {\n vErrors = null;\n }\n }\n }\n if (Array.isArray(data65)) {\n const len14 = data65.length;\n for (let i14 = 0; i14 < len14; i14++) {\n let data69 = data65[i14];\n if (typeof data69 !== \"string\") {\n const err148 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_cases/\" + i14, schemaPath: \"#/definitions/httpErrorCode/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err148];\n } else {\n vErrors.push(err148);\n }\n errors++;\n }\n if (!(data69 === \"error\" || data69 === \"timeout\" || data69 === \"500\" || data69 === \"502\" || data69 === \"503\" || data69 === \"504\" || data69 === \"403\" || data69 === \"404\" || data69 === \"429\" || data69 === \"off\")) {\n const err149 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_cases/\" + i14, schemaPath: \"#/definitions/httpErrorCode/enum\", keyword: \"enum\", params: { allowedValues: schema20.enum }, message: \"must be equal to one of the allowed values\" };\n if (vErrors === null) {\n vErrors = [err149];\n } else {\n vErrors.push(err149);\n }\n errors++;\n }\n }\n } else {\n const err150 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_cases\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/next_cases/oneOf/1/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err150];\n } else {\n vErrors.push(err150);\n }\n errors++;\n }\n var _valid8 = _errs204 === errors;\n if (_valid8 && valid63) {\n valid63 = false;\n passing8 = [passing8, 1];\n } else {\n if (_valid8) {\n valid63 = true;\n passing8 = 1;\n }\n }\n if (!valid63) {\n const err151 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_cases\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/next_cases/oneOf\", keyword: \"oneOf\", params: { passingSchemas: passing8 }, message: \"must match exactly one schema in oneOf\" };\n if (vErrors === null) {\n vErrors = [err151];\n } else {\n vErrors.push(err151);\n }\n errors++;\n } else {\n errors = _errs196;\n if (vErrors !== null) {\n if (_errs196) {\n vErrors.length = _errs196;\n } else {\n vErrors = null;\n }\n }\n }\n }\n if (data63.next_timeout !== void 0) {\n let data70 = data63.next_timeout;\n if (!(typeof data70 == \"number\" && (!(data70 % 1) && !isNaN(data70)))) {\n const err152 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_timeout\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/next_timeout/type\", keyword: \"type\", params: { type: \"integer\" }, message: \"must be integer\" };\n if (vErrors === null) {\n vErrors = [err152];\n } else {\n vErrors.push(err152);\n }\n errors++;\n }\n if (typeof data70 == \"number\") {\n if (data70 < 0 || isNaN(data70)) {\n const err153 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_timeout\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/next_timeout/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 0 }, message: \"must be >= 0\" };\n if (vErrors === null) {\n vErrors = [err153];\n } else {\n vErrors.push(err153);\n }\n errors++;\n }\n }\n }\n if (data63.next_tries !== void 0) {\n let data71 = data63.next_tries;\n if (!(typeof data71 == \"number\" && (!(data71 % 1) && !isNaN(data71)))) {\n const err154 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_tries\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/next_tries/type\", keyword: \"type\", params: { type: \"integer\" }, message: \"must be integer\" };\n if (vErrors === null) {\n vErrors = [err154];\n } else {\n vErrors.push(err154);\n }\n errors++;\n }\n if (typeof data71 == \"number\") {\n if (data71 < 0 || isNaN(data71)) {\n const err155 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/next_tries\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/next_tries/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 0 }, message: \"must be >= 0\" };\n if (vErrors === null) {\n vErrors = [err155];\n } else {\n vErrors.push(err155);\n }\n errors++;\n }\n }\n }\n if (data63.read_timeout !== void 0) {\n let data72 = data63.read_timeout;\n if (!(typeof data72 == \"number\" && (!(data72 % 1) && !isNaN(data72)))) {\n const err156 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/read_timeout\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/read_timeout/type\", keyword: \"type\", params: { type: \"integer\" }, message: \"must be integer\" };\n if (vErrors === null) {\n vErrors = [err156];\n } else {\n vErrors.push(err156);\n }\n errors++;\n }\n if (typeof data72 == \"number\") {\n if (data72 > 6e4 || isNaN(data72)) {\n const err157 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/read_timeout\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/read_timeout/maximum\", keyword: \"maximum\", params: { comparison: \"<=\", limit: 6e4 }, message: \"must be <= 60000\" };\n if (vErrors === null) {\n vErrors = [err157];\n } else {\n vErrors.push(err157);\n }\n errors++;\n }\n if (data72 < 0 || isNaN(data72)) {\n const err158 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/read_timeout\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/read_timeout/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 0 }, message: \"must be >= 0\" };\n if (vErrors === null) {\n vErrors = [err158];\n } else {\n vErrors.push(err158);\n }\n errors++;\n }\n }\n }\n if (data63.send_timeout !== void 0) {\n let data73 = data63.send_timeout;\n if (!(typeof data73 == \"number\" && (!(data73 % 1) && !isNaN(data73)))) {\n const err159 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/send_timeout\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/send_timeout/type\", keyword: \"type\", params: { type: \"integer\" }, message: \"must be integer\" };\n if (vErrors === null) {\n vErrors = [err159];\n } else {\n vErrors.push(err159);\n }\n errors++;\n }\n if (typeof data73 == \"number\") {\n if (data73 > 6e4 || isNaN(data73)) {\n const err160 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/send_timeout\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/send_timeout/maximum\", keyword: \"maximum\", params: { comparison: \"<=\", limit: 6e4 }, message: \"must be <= 60000\" };\n if (vErrors === null) {\n vErrors = [err160];\n } else {\n vErrors.push(err160);\n }\n errors++;\n }\n if (data73 < 0 || isNaN(data73)) {\n const err161 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options/send_timeout\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/properties/send_timeout/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 0 }, message: \"must be >= 0\" };\n if (vErrors === null) {\n vErrors = [err161];\n } else {\n vErrors.push(err161);\n }\n errors++;\n }\n }\n }\n } else {\n const err162 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/http_options\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/http_options/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err162];\n } else {\n vErrors.push(err162);\n }\n errors++;\n }\n }\n if (data59.port !== void 0) {\n let data74 = data59.port;\n if (!(typeof data74 == \"number\" && (!(data74 % 1) && !isNaN(data74)))) {\n const err163 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/port\", schemaPath: \"#/definitions/portNumber/type\", keyword: \"type\", params: { type: \"integer\" }, message: \"must be integer\" };\n if (vErrors === null) {\n vErrors = [err163];\n } else {\n vErrors.push(err163);\n }\n errors++;\n }\n if (typeof data74 == \"number\") {\n if (data74 > 65535 || isNaN(data74)) {\n const err164 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/port\", schemaPath: \"#/definitions/portNumber/maximum\", keyword: \"maximum\", params: { comparison: \"<=\", limit: 65535 }, message: \"must be <= 65535\" };\n if (vErrors === null) {\n vErrors = [err164];\n } else {\n vErrors.push(err164);\n }\n errors++;\n }\n if (data74 < 1 || isNaN(data74)) {\n const err165 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/port\", schemaPath: \"#/definitions/portNumber/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 1 }, message: \"must be >= 1\" };\n if (vErrors === null) {\n vErrors = [err165];\n } else {\n vErrors.push(err165);\n }\n errors++;\n }\n }\n }\n if (data59.proto !== void 0) {\n let data75 = data59.proto;\n if (typeof data75 !== \"string\") {\n const err166 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/proto\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/proto/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err166];\n } else {\n vErrors.push(err166);\n }\n errors++;\n }\n if (!(data75 === \"TCP\" || data75 === \"UDP\" || data75 === \"tcp\" || data75 === \"udp\")) {\n const err167 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/proto\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/proto/enum\", keyword: \"enum\", params: { allowedValues: schema12.properties.services.additionalProperties.properties.expose.items.properties.proto.enum }, message: \"must be equal to one of the allowed values\" };\n if (vErrors === null) {\n vErrors = [err167];\n } else {\n vErrors.push(err167);\n }\n errors++;\n }\n }\n if (data59.to !== void 0) {\n let data76 = data59.to;\n if (Array.isArray(data76)) {\n const len15 = data76.length;\n for (let i15 = 0; i15 < len15; i15++) {\n let data77 = data76[i15];\n const _errs232 = errors;\n let valid78 = true;\n const _errs233 = errors;\n if (data77 && typeof data77 == \"object\" && !Array.isArray(data77)) {\n let missing0;\n if (data77.ip === void 0 && (missing0 = \"ip\")) {\n const err168 = {};\n if (vErrors === null) {\n vErrors = [err168];\n } else {\n vErrors.push(err168);\n }\n errors++;\n } else {\n if (data77.ip !== void 0) {\n let data78 = data77.ip;\n const _errs234 = errors;\n if (errors === _errs234) {\n if (typeof data78 === \"string\") {\n if (func2(data78) < 1) {\n const err169 = {};\n if (vErrors === null) {\n vErrors = [err169];\n } else {\n vErrors.push(err169);\n }\n errors++;\n }\n } else {\n const err170 = {};\n if (vErrors === null) {\n vErrors = [err170];\n } else {\n vErrors.push(err170);\n }\n errors++;\n }\n }\n }\n }\n }\n var _valid9 = _errs233 === errors;\n errors = _errs232;\n if (vErrors !== null) {\n if (_errs232) {\n vErrors.length = _errs232;\n } else {\n vErrors = null;\n }\n }\n if (_valid9) {\n const _errs236 = errors;\n if (data77 && typeof data77 == \"object\" && !Array.isArray(data77)) {\n if (data77.global === void 0) {\n const err171 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/to/\" + i15, schemaPath: \"#/definitions/exposeToWithIpEnforcesGlobal/then/required\", keyword: \"required\", params: { missingProperty: \"global\" }, message: \"must have required property 'global'\" };\n if (vErrors === null) {\n vErrors = [err171];\n } else {\n vErrors.push(err171);\n }\n errors++;\n }\n if (data77.global !== void 0) {\n if (true !== data77.global) {\n const err172 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/to/\" + i15 + \"/global\", schemaPath: \"#/definitions/exposeToWithIpEnforcesGlobal/then/properties/global/const\", keyword: \"const\", params: { allowedValue: true }, message: \"must be equal to constant\" };\n if (vErrors === null) {\n vErrors = [err172];\n } else {\n vErrors.push(err172);\n }\n errors++;\n }\n }\n }\n var _valid9 = _errs236 === errors;\n valid78 = _valid9;\n }\n if (!valid78) {\n const err173 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/to/\" + i15, schemaPath: \"#/definitions/exposeToWithIpEnforcesGlobal/if\", keyword: \"if\", params: { failingKeyword: \"then\" }, message: 'must match \"then\" schema' };\n if (vErrors === null) {\n vErrors = [err173];\n } else {\n vErrors.push(err173);\n }\n errors++;\n }\n if (data77 && typeof data77 == \"object\" && !Array.isArray(data77)) {\n for (const key28 in data77) {\n if (!(key28 === \"global\" || key28 === \"ip\" || key28 === \"service\")) {\n const err174 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/to/\" + i15, schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/to/items/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key28 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err174];\n } else {\n vErrors.push(err174);\n }\n errors++;\n }\n }\n if (data77.global !== void 0) {\n if (typeof data77.global !== \"boolean\") {\n const err175 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/to/\" + i15 + \"/global\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/to/items/properties/global/type\", keyword: \"type\", params: { type: \"boolean\" }, message: \"must be boolean\" };\n if (vErrors === null) {\n vErrors = [err175];\n } else {\n vErrors.push(err175);\n }\n errors++;\n }\n }\n if (data77.ip !== void 0) {\n let data81 = data77.ip;\n if (typeof data81 === \"string\") {\n if (func2(data81) < 1) {\n const err176 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/to/\" + i15 + \"/ip\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/to/items/properties/ip/minLength\", keyword: \"minLength\", params: { limit: 1 }, message: \"must NOT have fewer than 1 characters\" };\n if (vErrors === null) {\n vErrors = [err176];\n } else {\n vErrors.push(err176);\n }\n errors++;\n }\n } else {\n const err177 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/to/\" + i15 + \"/ip\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/to/items/properties/ip/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err177];\n } else {\n vErrors.push(err177);\n }\n errors++;\n }\n }\n if (data77.service !== void 0) {\n if (typeof data77.service !== \"string\") {\n const err178 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/to/\" + i15 + \"/service\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/to/items/properties/service/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err178];\n } else {\n vErrors.push(err178);\n }\n errors++;\n }\n }\n } else {\n const err179 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/to/\" + i15, schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/to/items/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err179];\n } else {\n vErrors.push(err179);\n }\n errors++;\n }\n }\n } else {\n const err180 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9 + \"/to\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/to/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err180];\n } else {\n vErrors.push(err180);\n }\n errors++;\n }\n }\n } else {\n const err181 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose/\" + i9, schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err181];\n } else {\n vErrors.push(err181);\n }\n errors++;\n }\n }\n } else {\n const err182 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/expose\", schemaPath: \"#/properties/services/additionalProperties/properties/expose/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err182];\n } else {\n vErrors.push(err182);\n }\n errors++;\n }\n }\n if (data43.image !== void 0) {\n let data83 = data43.image;\n if (typeof data83 === \"string\") {\n if (func2(data83) < 1) {\n const err183 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/image\", schemaPath: \"#/properties/services/additionalProperties/properties/image/minLength\", keyword: \"minLength\", params: { limit: 1 }, message: \"must NOT have fewer than 1 characters\" };\n if (vErrors === null) {\n vErrors = [err183];\n } else {\n vErrors.push(err183);\n }\n errors++;\n }\n } else {\n const err184 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/image\", schemaPath: \"#/properties/services/additionalProperties/properties/image/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err184];\n } else {\n vErrors.push(err184);\n }\n errors++;\n }\n }\n if (data43.params !== void 0) {\n let data84 = data43.params;\n if (data84 && typeof data84 == \"object\" && !Array.isArray(data84)) {\n for (const key29 in data84) {\n if (!(key29 === \"storage\" || key29 === \"permissions\")) {\n const err185 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/params\", schemaPath: \"#/properties/services/additionalProperties/properties/params/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key29 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err185];\n } else {\n vErrors.push(err185);\n }\n errors++;\n }\n }\n if (data84.storage !== void 0) {\n let data85 = data84.storage;\n if (data85 && typeof data85 == \"object\" && !Array.isArray(data85)) {\n for (const key30 in data85) {\n let data86 = data85[key30];\n if (data86 && typeof data86 == \"object\" && !Array.isArray(data86)) {\n for (const key31 in data86) {\n if (!(key31 === \"mount\" || key31 === \"readOnly\")) {\n const err186 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/params/storage/\" + key30.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/services/additionalProperties/properties/params/properties/storage/additionalProperties/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key31 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err186];\n } else {\n vErrors.push(err186);\n }\n errors++;\n }\n }\n if (data86.mount !== void 0) {\n let data87 = data86.mount;\n if (typeof data87 === \"string\") {\n if (func2(data87) < 1) {\n const err187 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/params/storage/\" + key30.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/mount\", schemaPath: \"#/definitions/absolutePath/minLength\", keyword: \"minLength\", params: { limit: 1 }, message: \"must NOT have fewer than 1 characters\" };\n if (vErrors === null) {\n vErrors = [err187];\n } else {\n vErrors.push(err187);\n }\n errors++;\n }\n if (!pattern8.test(data87)) {\n const err188 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/params/storage/\" + key30.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/mount\", schemaPath: \"#/definitions/absolutePath/pattern\", keyword: \"pattern\", params: { pattern: \"^/\" }, message: 'must match pattern \"^/\"' };\n if (vErrors === null) {\n vErrors = [err188];\n } else {\n vErrors.push(err188);\n }\n errors++;\n }\n } else {\n const err189 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/params/storage/\" + key30.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/mount\", schemaPath: \"#/definitions/absolutePath/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err189];\n } else {\n vErrors.push(err189);\n }\n errors++;\n }\n }\n if (data86.readOnly !== void 0) {\n if (typeof data86.readOnly !== \"boolean\") {\n const err190 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/params/storage/\" + key30.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/readOnly\", schemaPath: \"#/properties/services/additionalProperties/properties/params/properties/storage/additionalProperties/properties/readOnly/type\", keyword: \"type\", params: { type: \"boolean\" }, message: \"must be boolean\" };\n if (vErrors === null) {\n vErrors = [err190];\n } else {\n vErrors.push(err190);\n }\n errors++;\n }\n }\n } else {\n const err191 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/params/storage/\" + key30.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/services/additionalProperties/properties/params/properties/storage/additionalProperties/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err191];\n } else {\n vErrors.push(err191);\n }\n errors++;\n }\n }\n } else {\n const err192 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/params/storage\", schemaPath: \"#/properties/services/additionalProperties/properties/params/properties/storage/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err192];\n } else {\n vErrors.push(err192);\n }\n errors++;\n }\n }\n if (data84.permissions !== void 0) {\n let data89 = data84.permissions;\n if (data89 && typeof data89 == \"object\" && !Array.isArray(data89)) {\n for (const key32 in data89) {\n if (!(key32 === \"read\")) {\n const err193 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/params/permissions\", schemaPath: \"#/properties/services/additionalProperties/properties/params/properties/permissions/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key32 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err193];\n } else {\n vErrors.push(err193);\n }\n errors++;\n }\n }\n if (data89.read !== void 0) {\n let data90 = data89.read;\n if (Array.isArray(data90)) {\n const len16 = data90.length;\n for (let i16 = 0; i16 < len16; i16++) {\n let data91 = data90[i16];\n if (typeof data91 !== \"string\") {\n const err194 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/params/permissions/read/\" + i16, schemaPath: \"#/properties/services/additionalProperties/properties/params/properties/permissions/properties/read/items/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err194];\n } else {\n vErrors.push(err194);\n }\n errors++;\n }\n if (!(data91 === \"deployment\" || data91 === \"logs\")) {\n const err195 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/params/permissions/read/\" + i16, schemaPath: \"#/properties/services/additionalProperties/properties/params/properties/permissions/properties/read/items/enum\", keyword: \"enum\", params: { allowedValues: schema12.properties.services.additionalProperties.properties.params.properties.permissions.properties.read.items.enum }, message: \"must be equal to one of the allowed values\" };\n if (vErrors === null) {\n vErrors = [err195];\n } else {\n vErrors.push(err195);\n }\n errors++;\n }\n }\n } else {\n const err196 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/params/permissions/read\", schemaPath: \"#/properties/services/additionalProperties/properties/params/properties/permissions/properties/read/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err196];\n } else {\n vErrors.push(err196);\n }\n errors++;\n }\n }\n } else {\n const err197 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/params/permissions\", schemaPath: \"#/properties/services/additionalProperties/properties/params/properties/permissions/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err197];\n } else {\n vErrors.push(err197);\n }\n errors++;\n }\n }\n } else {\n const err198 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\") + \"/params\", schemaPath: \"#/properties/services/additionalProperties/properties/params/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err198];\n } else {\n vErrors.push(err198);\n }\n errors++;\n }\n }\n } else {\n const err199 = { instancePath: instancePath + \"/services/\" + key22.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"), schemaPath: \"#/properties/services/additionalProperties/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err199];\n } else {\n vErrors.push(err199);\n }\n errors++;\n }\n }\n } else {\n const err200 = { instancePath: instancePath + \"/services\", schemaPath: \"#/properties/services/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err200];\n } else {\n vErrors.push(err200);\n }\n errors++;\n }\n }\n if (data.version !== void 0) {\n let data92 = data.version;\n if (typeof data92 !== \"string\") {\n const err201 = { instancePath: instancePath + \"/version\", schemaPath: \"#/properties/version/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err201];\n } else {\n vErrors.push(err201);\n }\n errors++;\n }\n if (!(data92 === \"2.0\" || data92 === \"2.1\")) {\n const err202 = { instancePath: instancePath + \"/version\", schemaPath: \"#/properties/version/enum\", keyword: \"enum\", params: { allowedValues: schema12.properties.version.enum }, message: \"must be equal to one of the allowed values\" };\n if (vErrors === null) {\n vErrors = [err202];\n } else {\n vErrors.push(err202);\n }\n errors++;\n }\n }\n } else {\n const err203 = { instancePath, schemaPath: \"#/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err203];\n } else {\n vErrors.push(err203);\n }\n errors++;\n }\n validate11.errors = vErrors;\n return errors === 0;\n}\nvar schema = schema12;\nexport {\n stdin_default as default,\n schema,\n validate\n};\n", "const DEFINITIONS_PREFIX = \"#/definitions/\";\n\nexport function humanizeErrors(errors: ValidationError[] | undefined, schema: Record<string, unknown>, errorMessages?: ErrorMessages): ValidationError[] {\n if (!errors) return [];\n\n const messages = new Map<string, ValidationError>();\n errors.forEach((error) => {\n let getErrorMessage = getDefaultErrorMessage;\n\n if (errorMessages && Object.hasOwn(errorMessages, error.schemaPath)) {\n getErrorMessage = errorMessages[error.schemaPath];\n }\n\n if (errorMessages && error.schemaPath.startsWith(DEFINITIONS_PREFIX)) {\n const endIndex = error.schemaPath.indexOf(\"/\", DEFINITIONS_PREFIX.length);\n const key = endIndex === -1 ? error.schemaPath : error.schemaPath.slice(0, endIndex);\n if (Object.hasOwn(errorMessages, key)) {\n getErrorMessage = errorMessages[key];\n }\n }\n\n const message = getErrorMessage(error, schema);\n if (message) messages.set(message, { ...error, message });\n });\n\n return Array.from(messages.values());\n}\n\nexport interface ValidationError {\n schemaPath: string;\n instancePath: string;\n keyword: string;\n /** keyword parameters */\n params: Record<string, any>; // eslint-disable-line @typescript-eslint/no-explicit-any\n message: string;\n}\n\nfunction getDefaultErrorMessage(error: ValidationError, schema: Record<string, unknown>): string | undefined {\n if (error.keyword === \"anyOf\" || error.keyword === \"oneOf\") {\n // ignore anyOf and oneOf, since they are expressed by inner schema errors\n return;\n }\n\n if (error.keyword === \"required\") {\n return `Missing required field: \"${error.params.missingProperty}\"${getErrorLocation(error.instancePath)}.`;\n }\n if (error.keyword === \"pattern\") {\n return `Invalid format: \"${getFieldName(error.instancePath)}\"${getErrorLocation(dirname(error.instancePath))} does not match pattern \"${error.params.pattern}\"`;\n }\n if (error.keyword === \"additionalProperties\") {\n const patternProperties = getSchemaFieldByPath<Record<string, unknown> | undefined>(`${dirname(error.schemaPath)}/patternProperties`, schema);\n if (patternProperties) {\n return `Field \"${error.params.additionalProperty}\"${getErrorLocation(error.instancePath)} doesn't satisfy any of the allowed patterns: ${Object.keys(patternProperties).join(\", \")}.`;\n }\n\n return `Additional property \"${error.params.additionalProperty}\" is not allowed${getErrorLocation(error.instancePath)}.`;\n }\n if (error.keyword === \"type\") {\n return `\"${getFieldName(error.instancePath)}\"${getErrorLocation(dirname(error.instancePath))} should be ${getSchemaFieldByPath(error.schemaPath, schema)}.`;\n }\n if (error.keyword === \"enum\") {\n return `\"${getFieldName(error.instancePath)}\"${getErrorLocation(dirname(error.instancePath))} should be one of: ${error.params.allowedValues.join(\", \")}.`;\n }\n if (error.keyword === \"minLength\") {\n return `\"${getFieldName(error.instancePath)}\" at \"${dirname(error.instancePath)}\" must be at least ${getSchemaFieldByPath(error.schemaPath, schema)} characters long.`;\n }\n if (error.keyword === \"maxLength\") {\n return `\"${getFieldName(error.instancePath)}\" at \"${dirname(error.instancePath)}\" must be at most ${getSchemaFieldByPath(error.schemaPath, schema)} characters long.`;\n }\n if (error.keyword === \"minItems\") {\n return `\"${getFieldName(error.instancePath)}\" at \"${dirname(error.instancePath)}\" must have at least ${getSchemaFieldByPath(error.schemaPath, schema)} items.`;\n }\n if (error.keyword === \"maxItems\") {\n return `\"${getFieldName(error.instancePath)}\" at \"${dirname(error.instancePath)}\" must have at most ${getSchemaFieldByPath(error.schemaPath, schema)} items.`;\n }\n if (error.keyword === \"minimum\") {\n return `\"${getFieldName(error.instancePath)}\" at \"${dirname(error.instancePath)}\" must be at least ${getSchemaFieldByPath(error.schemaPath, schema)}.`;\n }\n if (error.keyword === \"exclusiveMinimum\") {\n return `\"${getFieldName(error.instancePath)}\" at \"${dirname(error.instancePath)}\" must be greater than ${getSchemaFieldByPath(error.schemaPath, schema)}.`;\n }\n if (error.keyword === \"exclusiveMaximum\") {\n return `\"${getFieldName(error.instancePath)}\" at \"${dirname(error.instancePath)}\" must be less than ${getSchemaFieldByPath(error.schemaPath, schema)}.`;\n }\n if (error.keyword === \"maximum\") {\n return `\"${getFieldName(error.instancePath)}\" at \"${dirname(error.instancePath)}\" must be at most ${getSchemaFieldByPath(error.schemaPath, schema)}.`;\n }\n if (error.keyword === \"minProperties\") {\n const suffix = error.params.limit === 1 ? \"property\" : \"properties\";\n return `\"${getFieldName(error.instancePath)}\"${getErrorLocation(dirname(error.instancePath))} must have at least ${error.params.limit} ${suffix}.`;\n }\n if (error.keyword === \"const\") {\n return `\"${getFieldName(error.instancePath)}\"${getErrorLocation(dirname(error.instancePath))} must be ${error.params.allowedValue}.`;\n }\n\n return `\"${getFieldName(error.instancePath)}\"${getErrorLocation(dirname(error.instancePath))} ${error.message}.`;\n}\n\nfunction getFieldName(instanceLocation: string): string {\n return basename(instanceLocation);\n}\n\nexport function basename(path: string): string {\n const lastPartIndex = path.lastIndexOf(\"/\");\n if (lastPartIndex === -1) return path;\n return path.slice(lastPartIndex + 1);\n}\n\nexport function dirname(path: string): string {\n const lastPartIndex = path.lastIndexOf(\"/\");\n if (lastPartIndex === -1) return path;\n return path.slice(0, lastPartIndex);\n}\n\nfunction getSchemaFieldByPath<T = string>(keywordLocation: string, schema?: Record<string, unknown>): T {\n return keywordLocation.split(\"/\").slice(1)\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .reduce<T>((schema, key) => (schema as Record<string, any>)[key], schema as any);\n}\n\nexport type ValidationFunction = {\n (data: unknown): boolean;\n errors?: ValidationError[];\n};\n\nexport function getErrorLocation(path: string): string {\n return path ? ` at \"${path}\"` : \"\";\n}\n\nexport type ErrorMessages = Record<string, (error: ValidationError, schema: Record<string, unknown>) => string | undefined>;\n", "export function castArray<T>(value: T | T[] | undefined | null): T[] {\n if (value === undefined || value === null) return [];\n return Array.isArray(value) ? value : [value];\n}\n\nexport function stringToBoolean(str: string | boolean): boolean {\n if (typeof str === \"boolean\") {\n return str;\n }\n\n switch (str.toLowerCase()) {\n case \"false\":\n case \"no\":\n case \"0\":\n case \"\":\n return false;\n default:\n return true;\n }\n}\n", "import { type NetworkId, USDC_IBC_DENOMS } from \"../../network/index.ts\";\nimport type { ErrorMessages, ValidationError, ValidationFunction } from \"../../utils/jsonSchemaValidation.ts\";\nimport { dirname, getErrorLocation, humanizeErrors } from \"../../utils/jsonSchemaValidation.ts\";\nimport { castArray, stringToBoolean } from \"../utils.ts\";\nimport { schema as validationSDLSchema, type SDLInput, validate as validateSDLInput } from \"./validateSDLInput.ts\";\n\nexport type { SDLInput };\nexport { validationSDLSchema };\n\nconst ERROR_MESSAGES: ErrorMessages = {\n \"#/definitions/storageAttributesValidation\"(error) {\n return `\"ram\" storage${getErrorLocation(dirname(error.instancePath))} cannot be persistent`;\n },\n \"#/definitions/exposeToWithIpEnforcesGlobal/then/properties/global/const\"() {\n return `If an IP is declared, the directive must be declared as global.`;\n },\n};\n\nexport function validateSDL(sdl: SDLInput, networkId: NetworkId): undefined | ValidationError[] {\n validateSDLInput(sdl);\n const schemaErrors = humanizeErrors((validateSDLInput as ValidationFunction).errors, validationSDLSchema, ERROR_MESSAGES);\n if (schemaErrors.length) return schemaErrors;\n\n const validator = new SDLValidator(sdl);\n const errors = validator.validate(networkId);\n\n const allErrors = schemaErrors.concat(errors);\n return allErrors.length ? allErrors : undefined;\n}\n\nclass SDLValidator {\n readonly #endpointsUsed = new Set<string>();\n readonly #portsUsed = new Map<string, string>();\n readonly #sdl: SDLInput;\n readonly #errors: ValidationError[] = [];\n\n constructor(sdl: SDLInput) {\n this.#sdl = sdl;\n }\n\n validate(networkId: NetworkId) {\n if (this.#sdl.services) {\n Object.keys(this.#sdl.services).forEach((serviceName) => {\n this.#validateDeploymentWithRelations(serviceName);\n this.#validateLeaseIP(serviceName);\n });\n }\n\n this.#validateDenom(networkId);\n this.#validateEndpoints();\n return this.#errors;\n }\n\n #validateDenom(networkId: NetworkId) {\n if (!this.#sdl.profiles?.placement) return;\n\n const usdcDenom = USDC_IBC_DENOMS[networkId];\n const invalidDenom = this.#findInvalidUsdcDenom(usdcDenom);\n\n if (invalidDenom) {\n this.#errors.push({\n message: `Invalid format: \"denom\" at \"${invalidDenom.path}\" does not match pattern \"^(uakt|uact|${usdcDenom})$\"`,\n instancePath: invalidDenom.path,\n schemaPath: \"#/definitions/priceCoin/properties/denom\",\n keyword: \"pattern\",\n params: {\n pattern: \"^(uakt|uact|ibc/.*)$\",\n },\n });\n }\n }\n\n #findInvalidUsdcDenom(usdcDenom: string): { denom: string; path: string } | null {\n for (const [placementName, placement] of Object.entries(this.#sdl.profiles.placement)) {\n if (!placement.pricing) continue;\n for (const [profile, pricing] of Object.entries(placement.pricing)) {\n if (pricing.denom.startsWith(\"ibc/\") && pricing.denom !== usdcDenom) {\n return {\n path: `/profiles/placement/${placementName}/pricing/${profile}/denom`,\n denom: pricing.denom,\n };\n }\n }\n }\n\n return null;\n }\n\n #validateDeploymentWithRelations(serviceName: string) {\n const deployment = this.#sdl.deployment[serviceName];\n if (!deployment) {\n this.#errors.push({\n message: `Service \"${serviceName}\" is not defined at \"/deployment\" section.`,\n instancePath: `/deployment`,\n schemaPath: \"#/properties/deployment\",\n keyword: \"required\",\n params: {\n missingProperty: serviceName,\n },\n });\n return;\n }\n\n Object.keys(this.#sdl.deployment[serviceName]).forEach((deploymentName) => {\n this.#validateDeploymentRelations(serviceName, deploymentName);\n this.#validateServiceStorages(serviceName, deploymentName);\n this.#validateStorages(serviceName, deploymentName);\n this.#validateGPU(serviceName, deploymentName);\n });\n }\n\n #validateDeploymentRelations(serviceName: string, deploymentName: string) {\n const serviceDeployment = this.#sdl.deployment?.[serviceName]?.[deploymentName];\n const compute = this.#sdl.profiles?.compute?.[serviceDeployment?.profile];\n const infra = this.#sdl.profiles?.placement?.[deploymentName];\n\n if (!infra) {\n this.#errors.push({\n message: `The placement \"${deploymentName}\" is not defined in the \"placement\" section.`,\n instancePath: `/profiles/placement`,\n schemaPath: \"#/properties/profiles/properties/placement\",\n keyword: \"required\",\n params: {\n missingProperty: deploymentName,\n },\n });\n }\n\n if (infra && !infra.pricing?.[serviceDeployment?.profile]) {\n this.#errors.push({\n message: `The pricing for the \"${serviceDeployment?.profile}\" profile is not defined in the \"${deploymentName}\" placement.`,\n instancePath: `/profiles/placement/${deploymentName}/pricing`,\n schemaPath: \"#/properties/profiles/properties/placement/additionalProperties/properties/pricing\",\n keyword: \"required\",\n params: {\n missingProperty: serviceDeployment?.profile,\n },\n });\n }\n\n if (!compute) {\n this.#errors.push({\n message: `The compute requirements for the \"${serviceDeployment?.profile}\" profile are not defined in the \"compute\" section.`,\n instancePath: `/profiles/compute`,\n schemaPath: \"#/properties/profiles/properties/compute\",\n keyword: \"required\",\n params: {\n missingProperty: serviceDeployment?.profile,\n },\n });\n }\n }\n\n #validateServiceStorages(serviceName: string, deploymentName: string) {\n const service = this.#sdl.services?.[serviceName];\n const mounts: Record<string, string> = {};\n const serviceDeployment = this.#sdl.deployment[serviceName][deploymentName];\n const compute = this.#sdl.profiles?.compute?.[serviceDeployment.profile];\n const storages = castArray(compute?.resources.storage);\n\n if (!service?.params?.storage) {\n return;\n }\n\n Object.entries(service.params.storage).forEach(([storageName, storage]) => {\n if (!storage) {\n this.#errors.push({\n message: `Storage \"${storageName}\" is not configured.`,\n instancePath: `/services/${serviceName}/params/storage/${storageName}`,\n schemaPath: \"#/properties/services/additionalProperties/properties/params/properties/storage/additionalProperties\",\n keyword: \"required\",\n params: {\n missingProperty: storageName,\n },\n });\n return;\n }\n const storageNameExists = storages.some(({ name }) => name === storageName);\n if (!storageNameExists) {\n this.#errors.push({\n message: `Service \"${serviceName}\" references non-existing compute volume \"${storageName}\".`,\n instancePath: `/profiles/compute/${serviceDeployment.profile}/resources/storage`,\n schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/storage\",\n keyword: \"required\",\n params: {\n missingProperty: storageName,\n },\n });\n return;\n }\n\n const mount = String(storage.mount);\n const volumeName = mounts[mount];\n\n if (volumeName && !storage.mount) {\n this.#errors.push({\n message: \"Multiple root ephemeral storages are not allowed.\",\n instancePath: `/services/${serviceName}/params/storage/${storageName}`,\n schemaPath: \"#/properties/services/additionalProperties/properties/params/properties/storage\",\n keyword: \"uniqueItems\",\n params: {\n duplicate: volumeName,\n },\n });\n }\n if (volumeName && storage.mount) {\n this.#errors.push({\n message: `Mount \"${mount}\" already in use by volume \"${volumeName}\".`,\n instancePath: `/services/${serviceName}/params/storage/${storageName}/mount`,\n schemaPath: \"#/properties/services/additionalProperties/properties/params/properties/storage/additionalProperties/properties/mount\",\n keyword: \"uniqueItems\",\n params: {\n duplicate: mount,\n },\n });\n }\n\n mounts[mount] = storageName;\n });\n }\n\n #validateStorages(serviceName: string, deploymentName: string) {\n const service = this.#sdl.services?.[serviceName];\n const serviceDeployment = this.#sdl.deployment[serviceName][deploymentName];\n const compute = this.#sdl.profiles?.compute?.[serviceDeployment.profile];\n const storages = castArray(compute?.resources.storage);\n\n storages.forEach((storage) => {\n const persistent = stringToBoolean(storage.attributes?.persistent as string | boolean || false);\n\n if (persistent && !service?.params?.storage?.[storage.name || \"\"]?.mount) {\n this.#errors.push({\n message: `Persistent storage \"${storage.name || \"default\"}\" requires a mount path in /services/${serviceName}/params/storage/${storage.name || \"default\"}/mount.`,\n instancePath: `/services/${serviceName}/params/storage/${storage.name || \"default\"}`,\n schemaPath: \"#/properties/services/additionalProperties/properties/params/properties/storage/additionalProperties/properties/mount\",\n keyword: \"required\",\n params: {\n missingProperty: \"mount\",\n },\n });\n }\n });\n }\n\n #validateGPU(serviceName: string, deploymentName: string) {\n const deployment = this.#sdl.deployment[serviceName];\n const compute = this.#sdl.profiles?.compute?.[deployment[deploymentName]?.profile];\n const gpu = compute?.resources.gpu;\n if (!gpu) return;\n\n const hasUnits = gpu.units !== undefined && gpu.units !== 0;\n const hasAttributes = typeof gpu.attributes !== \"undefined\";\n const hasVendor = hasAttributes && typeof gpu.attributes?.vendor !== \"undefined\";\n\n const profile = deployment[deploymentName]?.profile;\n const gpuPath = `/profiles/compute/${profile}/resources/gpu`;\n\n if (!hasUnits && hasAttributes) {\n this.#errors.push({\n message: \"GPU must not have attributes if units is 0.\",\n instancePath: `${gpuPath}/attributes`,\n schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes\",\n keyword: \"additionalProperties\",\n params: {\n additionalProperty: \"attributes\",\n },\n });\n }\n if (hasUnits && !hasAttributes) {\n this.#errors.push({\n message: \"GPU must have attributes if units is not 0.\",\n instancePath: gpuPath,\n schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu\",\n keyword: \"required\",\n params: {\n missingProperty: \"attributes\",\n },\n });\n }\n if (hasUnits && !hasVendor) {\n this.#errors.push({\n message: \"GPU must specify a vendor if units is not 0.\",\n instancePath: `${gpuPath}/attributes`,\n schemaPath: \"#/properties/profiles/properties/compute/additionalProperties/properties/resources/properties/gpu/properties/attributes/properties/vendor\",\n keyword: \"required\",\n params: {\n missingProperty: \"vendor\",\n },\n });\n }\n }\n\n #validateLeaseIP(serviceName: string) {\n this.#sdl.services?.[serviceName]?.expose?.forEach((expose, exposeIndex) => {\n const proto = expose.proto?.toUpperCase() || \"TCP\";\n\n expose.to?.forEach((to, toIndex) => {\n if (to.ip?.length) {\n const toPath = `/services/${serviceName}/expose/${exposeIndex}/to/${toIndex}`;\n\n if (!to.global) {\n this.#errors.push({\n message: `If an IP is declared, the directive must be declared as global.`,\n instancePath: `${toPath}/global`,\n schemaPath: \"#/definitions/exposeToWithIpEnforcesGlobal/then/properties/global/const\",\n keyword: \"const\",\n params: {\n allowedValue: true,\n },\n });\n }\n if (!this.#sdl.endpoints?.[to.ip]) {\n this.#errors.push({\n message: `Unknown endpoint \"${to.ip}\" for service \"${serviceName}\". Add it to the \"endpoints\" section.`,\n instancePath: `/endpoints/${to.ip}`,\n schemaPath: \"#/properties/endpoints\",\n keyword: \"required\",\n params: {\n missingProperty: to.ip,\n },\n });\n }\n\n this.#endpointsUsed.add(to.ip);\n\n const externalPort = expose.as ?? expose.port;\n const portKey = `${to.ip}-${externalPort}-${proto}`;\n const otherServiceName = this.#portsUsed.get(portKey);\n\n if (this.#portsUsed.has(portKey)) {\n this.#errors.push({\n message: `IP endpoint \"${to.ip}\" port ${externalPort} protocol ${proto} already in use by service \"${otherServiceName}\".`,\n instancePath: `${toPath}/ip`,\n schemaPath: \"#/properties/services/additionalProperties/properties/expose/items/properties/to/items\",\n keyword: \"uniqueItems\",\n params: {\n duplicate: portKey,\n },\n });\n }\n this.#portsUsed.set(portKey, serviceName);\n }\n });\n });\n }\n\n #validateEndpoints() {\n if (!this.#sdl.endpoints) return;\n\n Object.keys(this.#sdl.endpoints).forEach((endpoint) => {\n if (!this.#endpointsUsed.has(endpoint)) {\n this.#errors.push({\n message: `Endpoint \"${endpoint}\" declared but never used.`,\n instancePath: `/endpoints/${endpoint}`,\n schemaPath: \"#/properties/endpoints\",\n keyword: \"additionalProperties\",\n params: {\n additionalProperty: endpoint,\n },\n });\n }\n });\n }\n}\n", "/**\n * @deprecated This class is deprecated and will be removed in future versions.\n */\nexport class SdlValidationError extends Error {\n /**\n * Asserts a condition and throws an `SdlValidationError` if the condition is false.\n * @param condition - The condition to assert.\n * @param message - The error message to throw if the assertion fails.\n * @example\n * SdlValidationError.assert(someCondition, \"Condition failed\");\n */\n static assert(condition: unknown, message: string): asserts condition {\n if (!condition) {\n throw new SdlValidationError(message);\n }\n }\n\n /**\n * Creates an instance of `SdlValidationError`.\n * @param message - The error message.\n */\n constructor(message: string) {\n super(message);\n this.name = \"SdlValidationError\";\n }\n}\n", "/* eslint-disable @typescript-eslint/no-explicit-any */\nimport YAML from \"js-yaml\";\nimport { default as stableStringify } from \"json-stable-stringify\";\n\nimport { MAINNET_ID } from \"../../network/config.ts\";\nimport type { NetworkId } from \"../../network/types.ts\";\nimport { convertCpuResourceString, convertResourceString } from \"../sizes.ts\";\nimport type {\n v2ComputeResources,\n v2Expose,\n v2ExposeTo,\n v2HTTPOptions,\n v2Manifest,\n v2ManifestService,\n v2ManifestServiceParams,\n v2ProfileCompute,\n v2ResourceCPU,\n v2ResourceMemory,\n v2ResourceStorage,\n v2ResourceStorageArray,\n v2Sdl,\n v2Service,\n v2ServiceExpose,\n v2ServiceExposeHttpOptions,\n v2ServiceParams,\n v2StorageAttributes,\n v3ComputeResources,\n v3DeploymentGroup,\n v3GPUAttributes,\n v3Manifest,\n v3ManifestService,\n v3ManifestServiceParams,\n v3ProfileCompute,\n v3ResourceGPU,\n v3Sdl,\n v3ServiceExpose,\n v3ServiceExposeHttpOptions } from \"../types.ts\";\nimport type { SDLInput } from \"../validateSDL/validateSDL.ts\";\nimport { validateSDL } from \"../validateSDL/validateSDL.ts\";\nimport { SdlValidationError } from \"./SdlValidationError.ts\";\n\nconst Endpoint_SHARED_HTTP = 0;\nconst Endpoint_RANDOM_PORT = 1;\nconst Endpoint_LEASED_IP = 2;\n\nfunction isArray<T>(obj: any): obj is Array<T> {\n return Array.isArray(obj);\n}\n\nfunction isString(str: any): str is string {\n return typeof str === \"string\";\n}\n\ntype NetworkVersion = \"beta2\" | \"beta3\";\n\n/**\n * SDL (Stack Definition Language) parser and validator\n * Handles parsing and validation of Akash deployment manifests\n *\n * @deprecated Use `generateManifest` instead.\n *\n * @example\n * ```ts\n * import { SDL } from './SDL';\n *\n * const yaml = `\n * version: \"2.0\"\n * services:\n * web:\n * image: nginx\n * expose:\n * - port: 80\n * as: 80\n * to:\n * - global: true\n * `;\n *\n * // Parse SDL from YAML string\n * const sdl = SDL.fromString(yaml);\n *\n * // Get deployment manifest\n * const manifest = sdl.manifest();\n *\n * // Get deployment groups\n * const groups = sdl.groups();\n * ```\n */\nexport class SDL {\n /**\n * Creates an SDL instance from a YAML string.\n *\n * @param {string} yaml - The YAML string containing the SDL definition.\n * @param {NetworkVersion} [version=\"beta3\"] - The SDL version (beta2 or beta3).\n * @param {NetworkId} [networkId=MAINNET_ID] - The network ID to validate against.\n * @returns {SDL} An instance of the SDL class.\n *\n * @example\n * ```ts\n * const yaml = `\n * version: \"2.0\"\n * services:\n * web:\n * image: nginx\n * expose:\n * - port: 80\n * as: 80\n * to:\n * - global: true\n * `;\n * const sdl = SDL.fromString(yaml);\n * ```\n */\n static fromString(yaml: string, version: NetworkVersion = \"beta3\", networkId: NetworkId = MAINNET_ID): SDL {\n const data = YAML.load(yaml) as v3Sdl;\n return new SDL(data, version, networkId);\n }\n\n constructor(\n public readonly data: v2Sdl,\n public readonly version: NetworkVersion = \"beta2\",\n networkId: NetworkId = MAINNET_ID,\n ) {\n const errors = validateSDL(data as unknown as SDLInput, networkId);\n if (errors) throw new SdlValidationError(errors[0].message);\n }\n\n services() {\n if (this.data) {\n return this.data.services;\n }\n\n return {};\n }\n\n deployments() {\n if (this.data) {\n return this.data.deployment;\n }\n\n return {};\n }\n\n profiles() {\n if (this.data) {\n return this.data.profiles;\n }\n\n return {};\n }\n\n placements() {\n const { placement } = this.data.profiles;\n\n return placement || {};\n }\n\n serviceNames() {\n const names = this.data ? Object.keys(this.data.services) : [];\n\n // TODO: sort these\n return names;\n }\n\n deploymentsByPlacement(placement: string) {\n const deployments = this.data ? this.data.deployment : [];\n\n return Object.entries(deployments as object).filter(({ 1: deployment }) => Object.prototype.hasOwnProperty.call(deployment, placement));\n }\n\n resourceUnit(val: string, asString: boolean) {\n return asString ? { val: `${convertResourceString(val)}` } : { val: convertResourceString(val) };\n }\n\n resourceValue(value: { toString: () => string } | null, asString: boolean) {\n if (value === null) {\n return value;\n }\n\n const strVal = value.toString();\n const encoder = new TextEncoder();\n\n return asString ? strVal : encoder.encode(strVal);\n }\n\n serviceResourceCpu(resource: v2ResourceCPU) {\n const units = isString(resource.units) ? convertCpuResourceString(resource.units) : resource.units * 1000;\n\n return resource.attributes\n ? {\n units: { val: `${units}` },\n attributes: this.serviceResourceAttributes(resource.attributes),\n }\n : {\n units: { val: `${units}` },\n };\n }\n\n serviceResourceMemory(resource: v2ResourceMemory, asString: boolean) {\n const key = asString ? \"quantity\" : \"size\";\n\n return resource.attributes\n ? {\n [key]: this.resourceUnit(resource.size, asString),\n attributes: this.serviceResourceAttributes(resource.attributes),\n }\n : {\n [key]: this.resourceUnit(resource.size, asString),\n };\n }\n\n serviceResourceStorage(resource: v2ResourceStorageArray | v2ResourceStorage, asString: boolean) {\n const key = asString ? \"quantity\" : \"size\";\n const storage = isArray(resource) ? resource : [resource];\n\n return storage.map((storage) =>\n storage.attributes\n ? {\n name: storage.name || \"default\",\n [key]: this.resourceUnit(storage.size, asString),\n attributes: this.serviceResourceStorageAttributes(storage.attributes),\n }\n : {\n name: storage.name || \"default\",\n [key]: this.resourceUnit(storage.size, asString),\n },\n );\n }\n\n serviceResourceAttributes(attributes?: Record<string, any>) {\n return (\n attributes\n && Object.keys(attributes)\n .sort()\n .map((key) => ({ key, value: attributes[key].toString() }))\n );\n }\n\n serviceResourceStorageAttributes(attributes?: v2StorageAttributes) {\n if (!attributes) return undefined;\n\n const pairs = Object.keys(attributes).map((key) => ({ key, value: attributes[key].toString() }));\n\n if (attributes.class === \"ram\" && !(\"persistent\" in attributes)) {\n pairs.push({ key: \"persistent\", value: \"false\" });\n }\n\n pairs.sort((a, b) => a.key.localeCompare(b.key));\n\n return pairs;\n }\n\n serviceResourceGpu(resource: v3ResourceGPU | undefined, asString: boolean) {\n const value = resource?.units || 0;\n const numVal = isString(value) ? Buffer.from(value, \"ascii\") : value;\n const strVal = !isString(value) ? value.toString() : value;\n\n return resource?.attributes\n ? {\n units: asString ? { val: strVal } : { val: numVal },\n attributes: this.transformGpuAttributes(resource?.attributes),\n }\n : {\n units: asString ? { val: strVal } : { val: numVal },\n };\n }\n\n v2ServiceResourceEndpoints(service: v2Service) {\n const endpointSequenceNumbers = this.computeEndpointSequenceNumbers(this.data);\n const endpoints = service.expose.flatMap((expose) =>\n expose.to\n ? expose.to\n .filter((to) => to.global && to.ip?.length > 0)\n .map((to) => ({\n kind: Endpoint_LEASED_IP,\n sequence_number: endpointSequenceNumbers[to.ip] || 0,\n }))\n : [],\n );\n\n return endpoints.length > 0 ? endpoints : null;\n }\n\n v3ServiceResourceEndpoints(service: v2Service) {\n const endpointSequenceNumbers = this.computeEndpointSequenceNumbers(this.data);\n const endpoints = service.expose.flatMap((expose) =>\n expose.to\n ? expose.to\n .filter((to) => to.global)\n .flatMap((to) => {\n const exposeSpec = {\n port: expose.port,\n externalPort: expose.as || 0,\n proto: this.parseServiceProto(expose.proto),\n global: !!to.global,\n };\n\n const kind = this.exposeShouldBeIngress(exposeSpec) ? Endpoint_SHARED_HTTP : Endpoint_RANDOM_PORT;\n\n const defaultEp = kind !== 0 ? { kind: kind, sequence_number: 0 } : { sequence_number: 0 };\n\n const leasedEp\n = to.ip?.length > 0\n ? {\n kind: Endpoint_LEASED_IP,\n sequence_number: endpointSequenceNumbers[to.ip] || 0,\n }\n : undefined;\n\n return leasedEp ? [defaultEp, leasedEp] : [defaultEp];\n })\n : [],\n );\n\n return endpoints;\n }\n\n serviceResourcesBeta2(profile: v2ProfileCompute, service: v2Service, asString: boolean = false) {\n return {\n cpu: this.serviceResourceCpu(profile.resources.cpu),\n memory: this.serviceResourceMemory(profile.resources.memory, asString),\n storage: this.serviceResourceStorage(profile.resources.storage, asString),\n endpoints: this.v2ServiceResourceEndpoints(service),\n };\n }\n\n serviceResourcesBeta3(id: number, profile: v3ProfileCompute, service: v2Service, asString: boolean = false) {\n return {\n id: id,\n cpu: this.serviceResourceCpu(profile.resources.cpu),\n memory: this.serviceResourceMemory(profile.resources.memory, asString),\n storage: this.serviceResourceStorage(profile.resources.storage, asString),\n gpu: this.serviceResourceGpu(profile.resources.gpu, asString),\n endpoints: this.v3ServiceResourceEndpoints(service),\n };\n }\n\n /**\n * Parses the service protocol.\n *\n * @param proto - The protocol string (e.g., \"TCP\", \"UDP\").\n * @returns The parsed protocol.\n * @throws Will throw an error if the protocol is unsupported.\n *\n * @example\n * ```ts\n * const protocol = SDL.parseServiceProto(\"TCP\");\n * // protocol is \"TCP\"\n * ```\n */\n parseServiceProto(proto?: string): string {\n const raw = proto?.toUpperCase() || \"TCP\";\n if (raw === \"TCP\" || raw === \"UDP\") return raw;\n\n throw new SdlValidationError(`Unsupported service protocol: \"${proto}\". Supported protocols are \"TCP\" and \"UDP\".`);\n }\n\n manifestExposeService(to: v2ExposeTo) {\n return to.service || \"\";\n }\n\n manifestExposeGlobal(to: v2ExposeTo) {\n return to.global || false;\n }\n\n manifestExposeHosts(expose: v2Expose) {\n return expose.accept || null;\n }\n\n v2HttpOptions(http_options: v2HTTPOptions | undefined) {\n const defaults = {\n MaxBodySize: 1048576,\n ReadTimeout: 60000,\n SendTimeout: 60000,\n NextTries: 3,\n NextTimeout: 0,\n NextCases: [\"error\", \"timeout\"],\n };\n\n if (!http_options) {\n return { ...defaults };\n }\n\n return {\n MaxBodySize: http_options.max_body_size || defaults.MaxBodySize,\n ReadTimeout: http_options.read_timeout || defaults.ReadTimeout,\n SendTimeout: http_options.send_timeout || defaults.SendTimeout,\n NextTries: http_options.next_tries || defaults.NextTries,\n NextTimeout: http_options.next_timeout || defaults.NextTimeout,\n NextCases: http_options.next_cases || defaults.NextCases,\n };\n }\n\n v3HttpOptions(http_options: v2HTTPOptions | undefined) {\n const defaults = {\n maxBodySize: 1048576,\n readTimeout: 60000,\n sendTimeout: 60000,\n nextTries: 3,\n nextTimeout: 0,\n nextCases: [\"error\", \"timeout\"],\n };\n\n if (!http_options) {\n return { ...defaults };\n }\n\n return {\n maxBodySize: http_options.max_body_size || defaults.maxBodySize,\n readTimeout: http_options.read_timeout || defaults.readTimeout,\n sendTimeout: http_options.send_timeout || defaults.sendTimeout,\n nextTries: http_options.next_tries || defaults.nextTries,\n nextTimeout: http_options.next_timeout || defaults.nextTimeout,\n nextCases: http_options.next_cases || defaults.nextCases,\n };\n }\n\n v2ManifestExposeHttpOptions(expose: v2Expose): v2ServiceExposeHttpOptions {\n return this.v2HttpOptions(expose.http_options);\n }\n\n v3ManifestExposeHttpOptions(expose: v2Expose): v3ServiceExposeHttpOptions {\n return this.v3HttpOptions(expose.http_options);\n }\n\n v2ManifestExpose(service: v2Service): v2ServiceExpose[] {\n const endpointSequenceNumbers = this.computeEndpointSequenceNumbers(this.data);\n return service.expose.flatMap((expose) =>\n expose.to\n ? expose.to.map((to) => ({\n Port: expose.port,\n ExternalPort: expose.as || 0,\n Proto: this.parseServiceProto(expose.proto),\n Service: this.manifestExposeService(to),\n Global: this.manifestExposeGlobal(to),\n Hosts: this.manifestExposeHosts(expose),\n HTTPOptions: this.v2ManifestExposeHttpOptions(expose),\n IP: to.ip || \"\",\n EndpointSequenceNumber: endpointSequenceNumbers[to.ip] || 0,\n }))\n : [],\n );\n }\n\n v3ManifestExpose(service: v2Service): v3ServiceExpose[] {\n const endpointSequenceNumbers = this.computeEndpointSequenceNumbers(this.data);\n return service.expose\n .flatMap((expose) =>\n expose.to\n ? expose.to.map((to) => ({\n port: expose.port,\n externalPort: expose.as || 0,\n proto: this.parseServiceProto(expose.proto),\n service: this.manifestExposeService(to),\n global: this.manifestExposeGlobal(to),\n hosts: this.manifestExposeHosts(expose),\n httpOptions: this.v3ManifestExposeHttpOptions(expose),\n ip: to.ip || \"\",\n endpointSequenceNumber: endpointSequenceNumbers[to.ip] || 0,\n }))\n : [],\n )\n .sort((a, b) => {\n if (a.service != b.service) return a.service.localeCompare(b.service);\n if (a.port != b.port) return a.port - b.port;\n if (a.proto != b.proto) return a.proto.localeCompare(b.proto);\n if (a.global != b.global) return a.global ? -1 : 1;\n\n return 0;\n });\n }\n\n v2ManifestServiceParams(params: v2ServiceParams): v2ManifestServiceParams | undefined {\n return {\n Storage: Object.keys(params?.storage ?? {}).map((name) => {\n if (!params?.storage) throw new Error(\"Storage is undefined\");\n return {\n name: name,\n mount: params.storage[name].mount,\n readOnly: params.storage[name].readOnly || false,\n };\n }),\n ...(params?.permissions ? { Permissions: params.permissions } : {}),\n };\n }\n\n v3ManifestServiceParams(params: v2ServiceParams | undefined): v3ManifestServiceParams | null {\n if (params === undefined || Object.keys(params).length === 0) {\n return null;\n }\n\n const res: v3ManifestServiceParams = {\n storage:\n params.storage && Object.keys(params.storage).length > 0\n ? Object.keys(params.storage).map((name) => ({\n name: name,\n mount: params.storage![name]?.mount,\n readOnly: params.storage![name]?.readOnly || false,\n }))\n : null,\n };\n\n if (params.permissions) {\n res.permissions = params.permissions;\n }\n\n return res;\n }\n\n v2ManifestService(placement: string, name: string, asString: boolean): v2ManifestService {\n const service = this.data.services[name];\n const deployment = this.data.deployment[name];\n const profile = this.data.profiles.compute[deployment[placement].profile];\n\n const manifestService: v2ManifestService = {\n Name: name,\n Image: service.image,\n Command: service.command || null,\n Args: service.args || null,\n Env: service.env || null,\n Resources: this.serviceResourcesBeta2(profile, service, asString),\n Count: deployment[placement].count,\n Expose: this.v2ManifestExpose(service),\n };\n\n if (service.params) {\n manifestService.params = this.v2ManifestServiceParams(service.params);\n }\n\n return manifestService;\n }\n\n v3ManifestService(id: number, placement: string, name: string, asString: boolean): v3ManifestService {\n const service = this.data.services[name];\n const deployment = this.data.deployment[name];\n const profile = this.data.profiles.compute[deployment[placement].profile];\n const credentials = service.credentials || null;\n\n if (credentials && !credentials.email) {\n credentials.email = \"\";\n }\n\n const manifestService: v3ManifestService = {\n name: name,\n image: service.image,\n command: service.command || null,\n args: service.args || null,\n env: service.env || null,\n resources: this.serviceResourcesBeta3(id, profile as v3ProfileCompute, service, asString),\n count: deployment[placement].count,\n expose: this.v3ManifestExpose(service),\n params: this.v3ManifestServiceParams(service.params),\n credentials,\n };\n\n if (!manifestService.params) {\n delete manifestService.params;\n }\n\n return manifestService;\n }\n\n v2Manifest(asString: boolean = false): v2Manifest {\n return Object.keys(this.placements()).map((name) => ({\n Name: name,\n Services: this.deploymentsByPlacement(name).map(([service]) => this.v2ManifestService(name, service, asString)),\n }));\n }\n\n v3Manifest(asString: boolean = false): v3Manifest {\n const groups = this.v3Groups();\n const serviceId = (pIdx: number, sIdx: number) => groups[pIdx].resources[sIdx].resource.id;\n\n return Object.keys(this.placements()).map((name, pIdx) => ({\n name: name,\n services: this.deploymentsByPlacement(name)\n .sort(([a], [b]) => a.localeCompare(b))\n .map(([service], idx) => this.v3ManifestService(serviceId(pIdx, idx), name, service, asString)),\n }));\n }\n\n manifest(asString: boolean = false): v2Manifest | v3Manifest {\n return this.version === \"beta2\" ? this.v2Manifest(asString) : this.v3Manifest(asString);\n }\n\n /**\n * Computes the endpoint sequence numbers for the given SDL.\n *\n * @param sdl - The SDL data.\n * @returns An object mapping IPs to their sequence numbers.\n *\n * @example\n * ```ts\n * const sequenceNumbers = sdl.computeEndpointSequenceNumbers(sdlData);\n * // sequenceNumbers might be { \"192.168.1.1\": 1, \"192.168.1.2\": 2 }\n * ```\n */\n computeEndpointSequenceNumbers(sdl: v2Sdl) {\n return Object.fromEntries(\n Object.values(sdl.services).flatMap((service) =>\n service.expose.flatMap((expose) =>\n expose.to\n ? expose.to\n .filter((to) => to.global && to.ip?.length > 0)\n .map((to) => to.ip)\n .sort()\n .map((ip, index) => [ip, index + 1])\n : [],\n ),\n ),\n );\n }\n\n resourceUnitCpu(computeResources: v2ComputeResources, asString: boolean) {\n const attributes = computeResources.cpu.attributes;\n const cpu = isString(computeResources.cpu.units) ? convertCpuResourceString(computeResources.cpu.units) : computeResources.cpu.units * 1000;\n\n return {\n units: { val: this.resourceValue(cpu, asString) },\n attributes:\n attributes\n && Object.entries(attributes)\n .sort(([k0], [k1]) => k0.localeCompare(k1))\n .map(([key, value]) => ({\n key: key,\n value: value.toString(),\n })),\n };\n }\n\n resourceUnitMemory(computeResources: v2ComputeResources, asString: boolean) {\n const attributes = computeResources.memory.attributes;\n\n return {\n quantity: {\n val: this.resourceValue(convertResourceString(computeResources.memory.size), asString),\n },\n attributes:\n attributes\n && Object.entries(attributes)\n .sort(([k0], [k1]) => k0.localeCompare(k1))\n .map(([key, value]) => ({\n key: key,\n value: value.toString(),\n })),\n };\n }\n\n resourceUnitStorage(computeResources: v2ComputeResources, asString: boolean) {\n const storages = isArray(computeResources.storage) ? computeResources.storage : [computeResources.storage];\n\n return storages.map((storage) => ({\n name: storage.name || \"default\",\n quantity: {\n val: this.resourceValue(convertResourceString(storage.size), asString),\n },\n attributes: this.serviceResourceStorageAttributes(storage.attributes),\n }));\n }\n\n transformGpuAttributes(attributes: v3GPUAttributes): Array<{ key: string; value: string }> {\n return Object.entries(attributes.vendor).flatMap(([vendor, models]) =>\n models\n ? models.map((model) => {\n let key = `vendor/${vendor}/model/${model.model}`;\n\n if (model.ram) {\n key += `/ram/${model.ram}`;\n }\n\n if (model.interface) {\n key += `/interface/${model.interface}`;\n }\n\n return {\n key: key,\n value: \"true\",\n };\n })\n : [\n {\n key: `vendor/${vendor}/model/*`,\n value: \"true\",\n },\n ],\n );\n }\n\n resourceUnitGpu(computeResources: v3ComputeResources, asString: boolean) {\n const attributes = computeResources.gpu?.attributes;\n const units = computeResources.gpu?.units || \"0\";\n const gpu = isString(units) ? parseInt(units) : units;\n\n return {\n units: { val: this.resourceValue(gpu, asString) },\n attributes: attributes && this.transformGpuAttributes(attributes),\n };\n }\n\n groupResourceUnits(resource: v2ComputeResources | undefined, asString: boolean) {\n if (!resource) return {};\n\n const units = {\n endpoints: null,\n } as any;\n\n if (resource.cpu) {\n units.cpu = this.resourceUnitCpu(resource, asString);\n }\n\n if (resource.memory) {\n units.memory = this.resourceUnitMemory(resource, asString);\n }\n\n if (resource.storage) {\n units.storage = this.resourceUnitStorage(resource, asString);\n }\n\n if (this.version === \"beta3\") {\n units.gpu = this.resourceUnitGpu(resource as v3ComputeResources, asString);\n }\n\n return units;\n }\n\n exposeShouldBeIngress(expose: { proto: string; global: boolean; externalPort: number; port: number }) {\n const externalPort = expose.externalPort === 0 ? expose.port : expose.externalPort;\n\n return expose.global && expose.proto === \"TCP\" && externalPort === 80;\n }\n\n groups() {\n return this.version === \"beta2\" ? this.v2Groups() : this.v3Groups();\n }\n\n v3Groups() {\n const groups = new Map<\n string,\n {\n dgroup: v3DeploymentGroup;\n boundComputes: Record<string, Record<string, number>>;\n }\n >();\n const services = Object.entries(this.data.services).sort(([a], [b]) => a.localeCompare(b));\n\n for (const [svcName, service] of services) {\n for (const [placementName, svcdepl] of Object.entries(this.data.deployment[svcName])) {\n // objects below have been ensured to exist\n const compute = this.data.profiles.compute[svcdepl.profile];\n const infra = this.data.profiles.placement[placementName];\n const pricing = infra.pricing[svcdepl.profile];\n const price = {\n ...pricing,\n amount: pricing.amount?.toString(),\n };\n\n let group = groups.get(placementName);\n\n if (!group) {\n const attributes = (infra.attributes\n ? Object.entries(infra.attributes).map(([key, value]) => ({\n key,\n value,\n }))\n : []) as unknown as Array<{ key: string; value: string }>;\n\n attributes.sort((a, b) => a.key.localeCompare(b.key));\n\n group = {\n dgroup: {\n name: placementName,\n resources: [],\n requirements: {\n attributes: attributes,\n signedBy: {\n allOf: infra.signedBy?.allOf || [],\n anyOf: infra.signedBy?.anyOf || [],\n },\n },\n },\n boundComputes: {},\n };\n\n groups.set(placementName, group);\n }\n\n if (!group.boundComputes[placementName]) {\n group.boundComputes[placementName] = {};\n }\n\n // const resources = this.serviceResourcesBeta3(0, compute as v3ProfileCompute, service, false);\n const location = group.boundComputes[placementName][svcdepl.profile];\n\n if (!location) {\n const res = this.groupResourceUnits(compute.resources, false);\n res.endpoints = this.v3ServiceResourceEndpoints(service);\n\n const resID = group.dgroup.resources.length > 0 ? group.dgroup.resources.length + 1 : 1;\n res.id = resID;\n // resources.id = res.id;\n\n group.dgroup.resources.push({\n resource: res,\n price: price,\n count: svcdepl.count,\n } as any);\n\n group.boundComputes[placementName][svcdepl.profile] = group.dgroup.resources.length - 1;\n } else {\n const endpoints = this.v3ServiceResourceEndpoints(service);\n // resources.id = group.dgroup.resources[location].id;\n\n group.dgroup.resources[location].count += svcdepl.count;\n group.dgroup.resources[location].endpoints += endpoints as any;\n group.dgroup.resources[location].endpoints.sort();\n }\n }\n }\n\n // keep ordering stable\n const names: string[] = [...groups.keys()].sort();\n return names.map((name) => groups.get(name)).map((group) => (group ? (group.dgroup as typeof group.dgroup) : {})) as Array<v3DeploymentGroup>;\n }\n\n v2Groups() {\n const yamlJson = this.data;\n const ipEndpointNames = this.computeEndpointSequenceNumbers(yamlJson);\n\n const groups = {} as any;\n\n Object.keys(yamlJson.services).forEach((svcName) => {\n const svc = yamlJson.services[svcName];\n const depl = yamlJson.deployment[svcName];\n\n Object.keys(depl).forEach((placementName) => {\n const svcdepl = depl[placementName];\n const compute = yamlJson.profiles.compute[svcdepl.profile];\n const infra = yamlJson.profiles.placement[placementName];\n\n const pricing = infra.pricing[svcdepl.profile];\n const price = {\n ...pricing,\n amount: pricing.amount.toString(),\n };\n\n let group = groups[placementName];\n\n if (!group) {\n group = {\n name: placementName,\n requirements: {\n attributes: infra.attributes\n ? Object.entries(infra.attributes).map(([key, value]) => ({\n key,\n value,\n }))\n : [],\n signedBy: {\n allOf: infra.signedBy?.allOf || [],\n anyOf: infra.signedBy?.anyOf || [],\n },\n },\n resources: [],\n };\n\n if (group.requirements.attributes) {\n group.requirements.attributes = group.requirements.attributes.sort((a: any, b: any) => a.key < b.key);\n }\n\n groups[group.name] = group;\n }\n\n const resources = {\n resources: this.groupResourceUnits(compute.resources, false), // Changed resources => unit\n price: price,\n count: svcdepl.count,\n };\n\n const endpoints = [] as any[];\n svc?.expose?.forEach((expose) => {\n expose?.to\n ?.filter((to) => to.global)\n .forEach((to) => {\n const exposeSpec = {\n port: expose.port,\n externalPort: expose.as || 0,\n proto: this.parseServiceProto(expose.proto),\n global: !!to.global,\n };\n\n if (to.ip?.length > 0) {\n const seqNo = ipEndpointNames[to.ip];\n endpoints.push({\n kind: Endpoint_LEASED_IP,\n sequence_number: seqNo,\n });\n }\n\n const kind = this.exposeShouldBeIngress(exposeSpec) ? Endpoint_SHARED_HTTP : Endpoint_RANDOM_PORT;\n\n endpoints.push({ kind: kind, sequence_number: 0 });\n });\n });\n\n resources.resources.endpoints = endpoints;\n group.resources.push(resources);\n });\n });\n\n return Object.keys(groups)\n .sort((a, b) => (a < b ? 1 : 0))\n .map((name) => groups[name]);\n }\n\n /**\n * Escapes HTML characters in a string.\n *\n * @param raw - The raw string to escape.\n * @returns The escaped string.\n *\n * @example\n * ```ts\n * const escaped = sdl.escapeHtml(\"<div>Hello</div>\");\n * // escaped is \"\\\\u003cdiv\\\\u003eHello\\\\u003c/div\\\\u003e\"\n * ```\n */\n #escapeHtml(raw: string) {\n return raw.replace(/</g, \"\\\\u003c\").replace(/>/g, \"\\\\u003e\").replace(/&/g, \"\\\\u0026\");\n }\n\n manifestSortedJSON() {\n const manifest = this.manifest(true);\n let jsonStr = JSON.stringify(manifest);\n\n if (jsonStr) {\n jsonStr = jsonStr.replaceAll(\"\\\"quantity\\\":{\\\"val\", \"\\\"size\\\":{\\\"val\");\n }\n\n return this.#escapeHtml(stableStringify(JSON.parse(jsonStr)) || \"\");\n }\n\n async manifestVersion() {\n const jsonStr = this.manifestSortedJSON();\n const enc = new TextEncoder();\n const sortedBytes = enc.encode(jsonStr);\n const sum = await crypto.subtle.digest(\"SHA-256\", sortedBytes);\n\n return new Uint8Array(sum);\n }\n\n manifestSorted() {\n const sorted = this.manifestSortedJSON();\n return JSON.parse(sorted);\n }\n}\n", "const prefixes = \"kmgtpe\".split(\"\");\n\n/**\n * Converts resource strings like \"1k\", \"5gi\", \"10m\" to their numeric values\n * @example\n * ```ts\n * convertResourceString(\"1k\") // Returns 1000\n * convertResourceString(\"5gi\") // Returns 5368709120\n * convertResourceString(\"10m\") // Returns 10000000\n * ```\n */\nexport function convertResourceString(resourceStr: string): number {\n const [value, prefix, unit] = parseSizeString(resourceStr.toLowerCase());\n const power = prefixes.indexOf(prefix);\n const base = unit === \"i\" ? 1024 : 1000;\n\n const result = power !== -1 ? value * Math.pow(base, power + 1) : value;\n\n return Math.ceil(result);\n}\n\n/**\n * Converts CPU resource strings to their millicpu values\n * @example\n * ```ts\n * convertCpuResourceString(\"1\") // Returns 1000\n * convertCpuResourceString(\"500m\") // Returns 500\n * ```\n */\nexport function convertCpuResourceString(resourceStr: string): number {\n const [value, unit] = parseCpuResourceString(resourceStr.toLowerCase());\n\n if (unit === \"m\") {\n return value;\n }\n\n return value * 1000;\n}\n\n/**\n * Parses a size string into value and unit components\n * @internal\n */\nfunction parseSizeString(size: string): [number, string, string] {\n const regex = /^([\\d.]+)([a-zA-Z])([a-zA-Z]*)$/;\n const match = size.match(regex);\n\n if (match) {\n const [, value, unit1, unit2] = match;\n return [parseFloat(value), unit1.toLowerCase(), unit2.toLowerCase()];\n }\n\n throw new Error(`Invalid size string: ${size}`);\n}\n\n/**\n * Parses a CPU resource string into value and unit components\n * @internal\n */\nfunction parseCpuResourceString(size: string): [number, string] {\n const regex = /^([\\d.]+)([a-zA-Z]*)$/;\n const match = size.match(regex);\n\n if (match) {\n const [, value, unit1] = match;\n return [parseFloat(value), unit1.toLowerCase()];\n }\n\n throw new Error(`Invalid size string: ${size}`);\n}\n", "import type { Attribute } from \"../../generated/protos/index.akash.v1.ts\";\nimport {\n Endpoint,\n Endpoint_Kind,\n} from \"../../generated/protos/index.akash.v1beta4.ts\";\nimport {\n ServiceExposeHTTPOptions,\n} from \"../../generated/protos/index.provider.akash.v2beta3.ts\";\nimport { convertCpuResourceString, convertResourceString } from \"../sizes.ts\";\nimport type { SDLInput } from \"../validateSDL/validateSDL.ts\";\nimport type { StorageAttributesValidation } from \"../validateSDL/validateSDLInput.ts\";\n\ntype SDLService = SDLInput[\"services\"][string];\ntype SDLExpose = NonNullable<SDLService[\"expose\"]>[number];\ntype SDLExposeTo = NonNullable<SDLExpose[\"to\"]>[number];\ntype SDLHttpOptions = SDLExpose[\"http_options\"];\ntype SDLCompute = SDLInput[\"profiles\"][\"compute\"][string];\ntype SDLStorage = SDLCompute[\"resources\"][\"storage\"];\ntype SDLStorageVolume = SDLStorage extends (infer T)[] ? T : SDLStorage;\ntype SDLGpuAttributes = NonNullable<NonNullable<SDLCompute[\"resources\"][\"gpu\"]>[\"attributes\"]>;\n\nexport type { SDLCompute, SDLExpose, SDLExposeTo, SDLGpuAttributes, SDLHttpOptions, SDLService, SDLStorage, SDLStorageVolume };\n\nconst encoder = new TextEncoder();\n\nexport function encodeResourceValue(value: number): Uint8Array {\n return encoder.encode(value.toString());\n}\n\nexport function computeEndpointSequenceNumbers(services: SDLInput[\"services\"]): Record<string, number> {\n const endpointNames: string[] = [];\n\n for (const service of Object.values(services)) {\n if (!service.expose) continue;\n for (const expose of service.expose) {\n if (!expose.to) continue;\n for (const to of expose.to) {\n if (to.global && to.ip && to.ip.length > 0) {\n endpointNames.push(to.ip);\n }\n }\n }\n }\n\n return endpointNames.sort().reduce<Record<string, number>>((result, name, seqNumber) => {\n result[name] = seqNumber + 1;\n return result;\n }, {});\n}\n\nexport function isIngress(proto: string, global: boolean, externalPort: number, port: number): boolean {\n const effectivePort = externalPort === 0 ? port : externalPort;\n return global && proto === \"TCP\" && effectivePort === 80;\n}\n\nexport function transformGpuAttributes(attributes: SDLGpuAttributes): Attribute[] {\n const vendor = attributes.vendor;\n if (!vendor) return [];\n\n return Object.keys(vendor)\n .sort((a, b) => a.localeCompare(b))\n .flatMap((vendorName) => {\n const models = vendor[vendorName as keyof typeof vendor];\n if (!models) {\n return [{ key: `vendor/${vendorName}/model/*`, value: \"true\" }];\n }\n\n return models.map((model) => {\n let key = `vendor/${vendorName}/model/${model.model}`;\n if (model.ram) key += `/ram/${model.ram}`;\n if (model.interface) key += `/interface/${model.interface}`;\n return { key, value: \"true\" };\n });\n });\n}\n\nexport function buildHttpOptions(httpOptions?: SDLHttpOptions): ServiceExposeHTTPOptions {\n return ServiceExposeHTTPOptions.fromPartial({\n maxBodySize: httpOptions?.max_body_size ?? 1048576,\n readTimeout: httpOptions?.read_timeout ?? 60000,\n sendTimeout: httpOptions?.send_timeout ?? 60000,\n nextTries: httpOptions?.next_tries ?? 3,\n nextTimeout: httpOptions?.next_timeout ?? 0,\n nextCases: httpOptions?.next_cases ?? [\"error\", \"timeout\"],\n });\n}\n\nexport function buildStorageAttributes(attributes?: StorageAttributesValidation): Attribute[] {\n if (!attributes) return [];\n\n const pairs: Attribute[] = Object.entries(attributes).map(([key, value]) => ({\n key,\n value: String(value),\n }));\n\n if (attributes.class === \"ram\" && !(\"persistent\" in attributes)) {\n pairs.push({ key: \"persistent\", value: \"false\" });\n }\n\n pairs.sort((a, b) => a.key.localeCompare(b.key));\n return pairs;\n}\n\nexport function parseServiceProto(proto?: string): string {\n return proto?.toUpperCase() || \"TCP\";\n}\n\nexport function buildServiceEndpoints(\n service: SDLService,\n endpointSequenceNumbers: Record<string, number>,\n): Endpoint[] {\n return (service.expose ?? []).flatMap((expose) =>\n (expose.to ?? [])\n .filter((to) => to.global)\n .flatMap((to) => {\n const externalPort = expose.as || 0;\n const proto = parseServiceProto(expose.proto);\n const kind = isIngress(proto, !!to.global, externalPort, expose.port)\n ? Endpoint_Kind.SHARED_HTTP\n : Endpoint_Kind.RANDOM_PORT;\n\n const defaultEp = Endpoint.fromPartial({\n kind,\n sequenceNumber: 0,\n });\n\n if (!to.ip?.length) {\n return [defaultEp];\n }\n\n const leasedEp = Endpoint.fromPartial({\n kind: Endpoint_Kind.LEASED_IP,\n sequenceNumber: endpointSequenceNumbers[to.ip] ?? 0,\n });\n\n return [defaultEp, leasedEp];\n }),\n );\n}\n\nexport function parseCpuUnits(cpu: SDLCompute[\"resources\"][\"cpu\"]): number {\n return typeof cpu.units === \"string\"\n ? convertCpuResourceString(cpu.units)\n : cpu.units * 1000;\n}\n\nexport function parseMemoryBytes(memory: SDLCompute[\"resources\"][\"memory\"]): number {\n return convertResourceString(memory.size);\n}\n\nexport function parseStorageBytes(size: string): number {\n return convertResourceString(size);\n}\n\nexport function parseGpuUnits(gpu?: SDLCompute[\"resources\"][\"gpu\"]): number {\n const value = gpu?.units;\n if (value === undefined || value === null) return 0;\n return typeof value === \"string\" ? parseInt(value, 10) : value;\n}\n\nexport function buildResourceAttributes(attributes?: Record<string, unknown>): Attribute[] | undefined {\n if (!attributes) return undefined;\n return Object.keys(attributes)\n .sort((a, b) => a.localeCompare(b))\n .map((key) => ({ key, value: String(attributes[key]) }));\n}\n", "import { PlacementRequirements, SignedBy } from \"../../generated/protos/akash/base/attributes/v1/attribute.ts\";\nimport { CPU } from \"../../generated/protos/akash/base/resources/v1beta4/cpu.ts\";\nimport { GPU } from \"../../generated/protos/akash/base/resources/v1beta4/gpu.ts\";\nimport { Memory } from \"../../generated/protos/akash/base/resources/v1beta4/memory.ts\";\nimport { Resources } from \"../../generated/protos/akash/base/resources/v1beta4/resources.ts\";\nimport { Storage } from \"../../generated/protos/akash/base/resources/v1beta4/storage.ts\";\nimport { GroupSpec } from \"../../generated/protos/akash/deployment/v1beta4/groupspec.ts\";\nimport { ResourceUnit } from \"../../generated/protos/akash/deployment/v1beta4/resourceunit.ts\";\nimport { Group } from \"../../generated/protos/akash/manifest/v2beta3/group.ts\";\nimport { ImageCredentials, Service, ServiceParams, StorageParams } from \"../../generated/protos/akash/manifest/v2beta3/service.ts\";\nimport { ServiceExpose } from \"../../generated/protos/akash/manifest/v2beta3/serviceexpose.ts\";\nimport { MAINNET_ID } from \"../../network/config.ts\";\nimport type { NetworkId } from \"../../network/types.ts\";\nimport type { ValidationError } from \"../../utils/jsonSchemaValidation.ts\";\nimport { castArray } from \"../utils.ts\";\nimport type { SDLInput } from \"../validateSDL/validateSDL.ts\";\nimport { validateSDL } from \"../validateSDL/validateSDL.ts\";\nimport {\n buildHttpOptions,\n buildResourceAttributes,\n buildServiceEndpoints,\n buildStorageAttributes,\n computeEndpointSequenceNumbers,\n encodeResourceValue,\n parseCpuUnits,\n parseGpuUnits,\n parseMemoryBytes,\n parseServiceProto,\n parseStorageBytes,\n type SDLCompute,\n type SDLService,\n transformGpuAttributes,\n} from \"./manifestUtils.ts\";\n\nexport interface GenerateManifestOkResult {\n groups: Group[];\n groupSpecs: GroupSpec[];\n}\n\nexport type Manifest = GenerateManifestOkResult[\"groups\"];\nexport type GenerateManifestResult =\n | { ok?: false; value: ValidationError[] }\n | { ok: true; value: GenerateManifestOkResult };\nexport function generateManifest(sdl: SDLInput, networkId: NetworkId = MAINNET_ID): GenerateManifestResult {\n const errors = validateSDL(sdl, networkId);\n if (errors) return { ok: false, value: errors };\n\n const endpointSequenceNumbers = computeEndpointSequenceNumbers(sdl.services);\n const groupsMap = new Map<string, {\n dgroup: GroupSpec;\n boundComputes: Record<string, number>;\n }>();\n const resourceIds = new Map<string, number>();\n\n const deploymentsByPlacement = new Map<string, [string, { profile: string; count: number }][]>();\n for (const [svcName, placements] of Object.entries(sdl.deployment)) {\n for (const [placementName, deployment] of Object.entries(placements)) {\n let list = deploymentsByPlacement.get(placementName);\n if (!list) {\n list = [];\n deploymentsByPlacement.set(placementName, list);\n }\n list.push([svcName, deployment]);\n }\n }\n for (const list of deploymentsByPlacement.values()) {\n list.sort(([a], [b]) => a.localeCompare(b));\n }\n\n const services = Object.entries(sdl.services).sort(([a], [b]) => a.localeCompare(b));\n\n for (const [svcName, service] of services) {\n for (const [placementName, svcdepl] of Object.entries(sdl.deployment[svcName])) {\n const compute = sdl.profiles.compute[svcdepl.profile];\n const infra = sdl.profiles.placement[placementName];\n const pricing = infra.pricing[svcdepl.profile];\n const price = {\n denom: pricing.denom,\n amount: pricing.amount?.toString(),\n };\n\n let group = groupsMap.get(placementName);\n\n if (!group) {\n group = {\n dgroup: GroupSpec.fromPartial({\n name: placementName,\n resources: [],\n requirements: PlacementRequirements.fromPartial({\n attributes: buildResourceAttributes(infra.attributes),\n signedBy: SignedBy.fromPartial({\n allOf: infra.signedBy?.allOf,\n anyOf: infra.signedBy?.anyOf,\n }),\n }),\n }),\n boundComputes: {},\n };\n\n groupsMap.set(placementName, group);\n }\n\n const profileKey = `${placementName}:${svcdepl.profile}`;\n const location = group.boundComputes[svcdepl.profile];\n\n if (location === undefined) {\n const resId = group.dgroup.resources.length > 0\n ? group.dgroup.resources.length + 1\n : 1;\n\n resourceIds.set(profileKey, resId);\n\n const resources = buildResources(resId, compute, service, endpointSequenceNumbers);\n\n group.dgroup.resources.push(\n ResourceUnit.fromPartial({\n resource: resources,\n count: svcdepl.count,\n price,\n }),\n );\n\n group.boundComputes[svcdepl.profile] = group.dgroup.resources.length - 1;\n } else {\n if (!resourceIds.has(profileKey)) {\n resourceIds.set(profileKey, group.dgroup.resources[location].resource!.id);\n }\n\n group.dgroup.resources[location].count += svcdepl.count;\n group.dgroup.resources[location].resource!.endpoints.push(\n ...buildServiceEndpoints(service, endpointSequenceNumbers),\n );\n }\n }\n }\n\n for (const group of groupsMap.values()) {\n for (const resourceUnit of group.dgroup.resources) {\n resourceUnit.resource!.endpoints.sort(\n (a, b) => a.kind - b.kind || a.sequenceNumber - b.sequenceNumber,\n );\n }\n }\n\n const sortedGroupNames = [...groupsMap.keys()].sort();\n let groups: Group[] | undefined;\n let groupSpecs: GroupSpec[] | undefined;\n\n const manifest = {\n get groups() {\n groups ??= sortedGroupNames.map((placementName) => {\n const deployments = deploymentsByPlacement.get(placementName)!;\n\n return Group.fromPartial({\n name: placementName,\n services: deployments.map(([svcName]) => {\n const service = sdl.services[svcName];\n const deployment = sdl.deployment[svcName][placementName];\n const compute = sdl.profiles.compute[deployment.profile];\n const resourceId = resourceIds.get(`${placementName}:${deployment.profile}`) || 1;\n\n return buildManifestService(\n resourceId,\n svcName,\n service,\n compute,\n deployment.count,\n endpointSequenceNumbers,\n );\n }),\n });\n });\n return groups;\n },\n get groupSpecs() {\n groupSpecs ??= sortedGroupNames.map((name) => groupsMap.get(name)!.dgroup);\n return groupSpecs;\n },\n };\n\n return { ok: true, value: manifest };\n}\n\nfunction buildResources(\n id: number,\n compute: SDLCompute,\n service: SDLService,\n endpointSequenceNumbers: Record<string, number>,\n): Resources {\n const res = compute.resources;\n const cpuAttributes = buildResourceAttributes(res.cpu.attributes);\n const gpuAttributes = res.gpu?.attributes ? transformGpuAttributes(res.gpu.attributes) : [];\n\n return Resources.fromPartial({\n id,\n cpu: CPU.fromPartial({\n units: { val: encodeResourceValue(parseCpuUnits(res.cpu)) },\n attributes: cpuAttributes,\n }),\n memory: Memory.fromPartial({\n quantity: { val: encodeResourceValue(parseMemoryBytes(res.memory)) },\n }),\n storage: castArray(res.storage).map((s) =>\n Storage.fromPartial({\n name: s.name || \"default\",\n quantity: { val: encodeResourceValue(parseStorageBytes(s.size)) },\n attributes: buildStorageAttributes(s.attributes),\n }),\n ),\n gpu: GPU.fromPartial({\n units: { val: encodeResourceValue(parseGpuUnits(res.gpu)) },\n attributes: gpuAttributes,\n }),\n endpoints: buildServiceEndpoints(service, endpointSequenceNumbers),\n });\n}\n\nfunction buildManifestService(\n resourceId: number,\n name: string,\n service: SDLService,\n compute: SDLCompute,\n count: number,\n endpointSequenceNumbers: Record<string, number>,\n): Service {\n const credentials = service.credentials\n ? ImageCredentials.fromPartial({\n host: service.credentials.host,\n email: service.credentials.email || \"\",\n username: service.credentials.username,\n password: service.credentials.password,\n })\n : undefined;\n\n const params = buildParams(service);\n\n return Service.fromPartial({\n name,\n image: service.image,\n command: service.command || [],\n args: service.args || [],\n env: service.env || [],\n resources: buildResources(resourceId, compute, service, endpointSequenceNumbers),\n count,\n expose: buildManifestExpose(service, endpointSequenceNumbers),\n params,\n credentials,\n });\n}\n\nfunction buildParams(service: SDLService): ServiceParams | undefined {\n if (!service.params) return undefined;\n\n const storage = service.params.storage || {};\n const storageNames = service.params.storage ? Object.keys(storage).sort() : [];\n const result = ServiceParams.fromPartial({\n storage: storageNames.map((name) => {\n const config = storage[name];\n return StorageParams.fromPartial({\n name,\n mount: config.mount || \"\",\n readOnly: config.readOnly || false,\n });\n }),\n });\n\n // Permissions are not in the protobuf type but need to be preserved\n if (service.params.permissions) {\n (result as unknown as Record<string, unknown>).permissions = service.params.permissions;\n }\n\n return result;\n}\n\nfunction buildManifestExpose(\n service: SDLService,\n endpointSequenceNumbers: Record<string, number>,\n): ServiceExpose[] {\n return (service.expose ?? [])\n .flatMap((expose) =>\n (expose.to ?? []).map((to) =>\n ServiceExpose.fromPartial({\n port: expose.port,\n externalPort: expose.as,\n proto: parseServiceProto(expose.proto),\n service: to.service || \"\",\n global: to.global || false,\n hosts: expose.accept || [],\n httpOptions: buildHttpOptions(expose.http_options),\n ip: to.ip || \"\",\n endpointSequenceNumber: endpointSequenceNumbers[to.ip!],\n }),\n ),\n )\n .sort((a, b) => {\n if (a.service !== b.service) return a.service.localeCompare(b.service);\n if (a.port !== b.port) return a.port - b.port;\n if (a.proto !== b.proto) return a.proto.localeCompare(b.proto);\n if (a.global !== b.global) return a.global ? -1 : 1;\n return 0;\n });\n}\n", "import { default as stableStringify } from \"json-stable-stringify\";\n\nimport type { GenerateManifestOkResult, Manifest } from \"./generateManifest.ts\";\n\nconst decoder = new TextDecoder();\nconst encoder = new TextEncoder();\nconst NULLABLE_MANIFEST_KEYS = new Set([\"command\", \"args\", \"env\", \"hosts\"]);\nconst OMITTED_MANIFEST_KEYS = new Set([\"kind\", \"attributes\"]);\n\nexport async function generateManifestVersion(manifest: Manifest): Promise<Uint8Array> {\n const jsonStr = manifestToSortedJSON(manifest);\n const sortedBytes = encoder.encode(jsonStr);\n const sum = await crypto.subtle.digest(\"SHA-256\", sortedBytes);\n return new Uint8Array(sum);\n}\n\nexport function manifestToSortedJSON(manifest: Manifest | GenerateManifestOkResult[\"groupSpecs\"]): string {\n const json = stableStringify(manifest, { replacer: manifestReplacer }) || \"\";\n return escapeHtml(renameFields(json));\n}\n\nfunction manifestReplacer(this: unknown, key: string | number, value: unknown): unknown {\n if (value && value instanceof Uint8Array) {\n return decoder.decode(value);\n }\n\n if (typeof key !== \"string\") {\n return value;\n }\n\n // only top-level \"credentials\" field can be null, credentials in params should be omitted\n if (typeof this === \"object\" && this && Object.hasOwn(this, \"command\") && key === \"credentials\" && value == null) {\n return null;\n }\n\n if (NULLABLE_MANIFEST_KEYS.has(key) && ((Array.isArray(value) && value.length === 0) || value == null)) {\n return null;\n }\n\n if (OMITTED_MANIFEST_KEYS.has(key) && ((Array.isArray(value) && value.length === 0) || value === 0)) {\n return undefined;\n }\n\n return value;\n}\n\nconst MANIFEST_VERSION_FIELD_MAPPING: Record<string, string> = { quantity: \"size\", sequenceNumber: \"sequence_number\" };\nconst MANIFEST_VERSION_FIELD_REGEX = new RegExp(`\"(${Object.keys(MANIFEST_VERSION_FIELD_MAPPING).join(\"|\")})\":`, \"g\");\nfunction renameFields(jsonStr: string): string {\n MANIFEST_VERSION_FIELD_REGEX.lastIndex = 0; // reset regex state\n return jsonStr.replace(MANIFEST_VERSION_FIELD_REGEX, (_, field) => `\"${MANIFEST_VERSION_FIELD_MAPPING[field]}\":`);\n}\n\nconst htmlEscapes: Record<string, string> = {\n \"<\": \"\\\\u003c\",\n \">\": \"\\\\u003e\",\n \"&\": \"\\\\u0026\",\n};\n\nconst HTML_SPECIAL_CHARS_REGEX = new RegExp(`[${Object.keys(htmlEscapes).join(\"\")}]`, \"g\");\nfunction escapeHtml(raw: string): string {\n HTML_SPECIAL_CHARS_REGEX.lastIndex = 0; // reset regex state\n return raw.replace(HTML_SPECIAL_CHARS_REGEX, (ch) => htmlEscapes[ch]);\n}\n", "import { load } from \"js-yaml\";\n\n/**\n * Generate YAML string from template literal and parse it into object of type T.\n * If some interpolated value is undefined, the whole line containing it will be removed from the resulting YAML string.\n *\n * @example\n * ```ts\n * const version = \"2.1\";\n * const expose = [{ port: 80, as: 80, to: [{ global: true }] }];\n * const pricing = { web: { denom: \"uakt\", amount: 1000 } };\n *\n * const sdl: SDLInput = yaml`\n * version: ${version}\n * services:\n * web:\n * image: nginx\n * expose: ${expose}\n * profiles:\n * compute:\n * web:\n * resources:\n * cpu:\n * units: 0.5\n * memory:\n * size: 512Mi\n * storage:\n * size: 1Gi\n * placement:\n * dcloud:\n * pricing: ${pricing}\n * deployment:\n * web:\n * dcloud:\n * profile: web\n * count: 1\n * `;\n * ```\n */\nexport function yaml<T>(chunks: TemplateStringsArray, ...args: unknown[]): T {\n const str = chunks.reduce((acc, chunk, i) => {\n const intermediateResult = acc + chunk;\n if (i >= args.length) return intermediateResult;\n\n const value = args[i];\n if (value !== undefined) {\n return intermediateResult + JSON.stringify(value);\n }\n\n const lastNewlineIndex = intermediateResult.lastIndexOf(\"\\n\");\n if (lastNewlineIndex !== -1) {\n return intermediateResult.slice(0, lastNewlineIndex);\n }\n\n return intermediateResult;\n }, \"\");\n\n return load(str) as T;\n}\n\n/**\n * Use this function to parse YAML template defined in external resource (e.g., file, http response, etc.).\n * Prefer `yaml` function for inline YAML templates defined in code, as it provides better ergonomics.\n */\nyaml.template = function yamlTemplate<T>(template: string, vars?: Record<string, unknown>): T {\n const finalYaml = template.replace(/\\$\\{(\\w+)\\}/g, (_, varName) => {\n const value = vars?.[varName];\n if (value === undefined) {\n throw new ReferenceError(`Variable \"${varName}\" is not provided to yaml template`);\n }\n return JSON.stringify(value);\n });\n return load(finalYaml) as T;\n};\n", "import { Code, ConnectError } from \"@connectrpc/connect\";\n\nexport enum TransportErrorCode {\n /**\n * Canceled, usually be the user\n */\n Canceled = 1,\n /**\n * Unknown error\n */\n Unknown = 2,\n /**\n * Argument invalid regardless of system state\n */\n InvalidArgument = 3,\n /**\n * Operation timed out.\n */\n DeadlineExceeded = 4,\n /**\n * Entity not found.\n */\n NotFound = 5,\n /**\n * Entity already exists.\n */\n AlreadyExists = 6,\n /**\n * Operation not authorized.\n */\n PermissionDenied = 7,\n /**\n * Quota exhausted.\n */\n ResourceExhausted = 8,\n /**\n * Argument invalid in current system state.\n */\n FailedPrecondition = 9,\n /**\n * Operation aborted.\n */\n Aborted = 10,\n /**\n * Out of bounds, use instead of FailedPrecondition.\n */\n OutOfRange = 11,\n /**\n * Operation not implemented or disabled.\n */\n Unimplemented = 12,\n /**\n * Internal error, reserved for \"serious errors\".\n */\n Internal = 13,\n /**\n * Unavailable, client should back off and retry.\n */\n Unavailable = 14,\n /**\n * Unrecoverable data loss or corruption.\n */\n DataLoss = 15,\n /**\n * Request isn't authenticated.\n */\n Unauthenticated = 16,\n}\n\nexport class TransportError extends Error {\n static Code = TransportErrorCode;\n\n public readonly code: typeof TransportErrorCode[keyof typeof TransportErrorCode];\n public readonly metadata: Headers;\n public readonly cause?: unknown;\n\n /**\n * Convert any value - typically a caught error into a TransportError,\n * following these rules:\n * - If the value is already a TransportError, return it as is.\n * - If the value is an AbortError from the fetch API, return the message\n * of the AbortError with code Canceled.\n * - For other Errors, return the error message with code Unknown by default.\n * - For other values, return the values String representation as a message,\n * with the code Unknown by default.\n * The original value will be used for the \"cause\" property for the new\n * TransportError.\n */\n static from(cause: unknown, code = TransportError.Code.Unknown) {\n if (cause instanceof this) return cause;\n if (cause instanceof ConnectError) {\n const key = Code[cause.code];\n const code = Object.hasOwn(TransportErrorCode, key) ? TransportErrorCode[key as keyof typeof TransportErrorCode] : TransportErrorCode.Unknown;\n return new TransportError(cause.message, code, { cause, metadata: cause.metadata });\n }\n if (cause instanceof Error) {\n if (cause.name == \"AbortError\") {\n return new TransportError(cause.message, TransportErrorCode.Canceled);\n }\n return new TransportError(cause.message, code, { cause });\n }\n return new TransportError(String(cause), code, { cause });\n }\n\n /**\n * Create a new TransportError.\n * Outgoing details are only relevant for the server side - a service may\n * raise an error with details, and it is up to the protocol implementation\n * to encode and send the details along with error.\n */\n constructor(message: string, code = TransportError.Code.Unknown, options?: {\n metadata?: HeadersInit;\n cause?: unknown;\n }) {\n super(`[${stringifyCode(code)}] ${message}`, { cause: options?.cause });\n this.name = \"TransportError\";\n Object.setPrototypeOf(this, new.target.prototype);\n this.code = code;\n this.metadata = new Headers(options?.metadata ?? {});\n this.cause ??= options?.cause;\n }\n}\n\nfunction stringifyCode(value: TransportErrorCode) {\n const name = TransportErrorCode[value];\n if (typeof name !== \"string\") return value.toString();\n return (name[0].toLowerCase() + name.slice(1).replace(/[A-Z]/g, (char) => `_${char.toLowerCase()}`));\n}\n", "import type { DeliverTxResponse } from \"@cosmjs/stargate\";\n\nimport { TransportError } from \"../TransportError.ts\";\n\nexport class TxError extends TransportError {\n readonly txResponse: DeliverTxResponse;\n\n constructor(message: string, txResponse: DeliverTxResponse, code = TransportError.Code.Unknown) {\n super(message, code);\n this.name = \"TxError\";\n this.txResponse = txResponse;\n }\n}\n", "import type * as rs from \"jsrsasign\";\n\n/**\n * Represents the PEM encoded certificate, public key, and private key.\n */\nexport interface CertificatePem {\n cert: string;\n publicKey: string;\n privateKey: string;\n}\n\n/**\n * Represents the information extracted from a certificate.\n */\nexport interface CertificateInfo {\n hSerial: string;\n sIssuer: string;\n sSubject: string;\n sNotBefore: string;\n sNotAfter: string;\n issuedOn: Date;\n expiresOn: Date;\n}\n\n/**\n * Options for specifying the validity range of a certificate.\n */\nexport interface ValidityRangeOptions {\n validFrom?: Date;\n validTo?: Date;\n}\n\n/**\n * Manages the creation and parsing of certificates.\n */\nexport class CertificateManager {\n /**\n * Parses a PEM encoded certificate and extracts its information.\n * @param certPEM - The PEM encoded certificate string.\n * @returns An object containing the certificate information.\n * @example\n * const certificateManager = new CertificateManager();\n * const pem = certificateManager.generatePEM('exampleAddress');\n * const certInfo = certificateManager.parsePem(pem.cert);\n * console.log(certInfo);\n */\n async parsePem(certPEM: string): Promise<CertificateInfo> {\n const rs = await getRSASignLib();\n const certificate = new rs.X509();\n certificate.readCertPEM(certPEM);\n\n return {\n hSerial: certificate.getSerialNumberHex(),\n sIssuer: certificate.getIssuerString(),\n sSubject: certificate.getSubjectString(),\n sNotBefore: certificate.getNotBefore(),\n sNotAfter: certificate.getNotAfter(),\n issuedOn: strToDate(certificate.getNotBefore()),\n expiresOn: strToDate(certificate.getNotAfter()),\n };\n }\n\n /**\n * Generates a PEM encoded certificate, public key, and private key.\n * @param address - The address to be used as the certificate's subject and issuer.\n * @param options - Optional validity range for the certificate.\n * @returns An object containing the PEM encoded certificate, public key, and private key.\n * @example\n * const certificateManager = new CertificateManager();\n * const pem = certificateManager.generatePEM('exampleAddress');\n * console.log('Certificate:', pem.cert);\n * console.log('Public Key:', pem.publicKey);\n * console.log('Private Key:', pem.privateKey);\n */\n async generatePEM(address: string, options?: ValidityRangeOptions): Promise<CertificatePem> {\n const rs = await getRSASignLib();\n const { notBeforeStr, notAfterStr } = this.createValidityRange(options);\n const { prvKeyObj, pubKeyObj } = rs.KEYUTIL.generateKeypair(\"EC\", \"secp256r1\");\n const cert = new rs.KJUR.asn1.x509.Certificate({\n version: 3,\n serial: { int: Math.floor(Date.now() * 1000) },\n issuer: { str: \"/CN=\" + address },\n notbefore: notBeforeStr,\n notafter: notAfterStr,\n subject: { str: \"/CN=\" + address },\n sbjpubkey: pubKeyObj,\n ext: [\n { extname: \"keyUsage\", critical: true, names: [\"keyEncipherment\", \"dataEncipherment\"] },\n {\n extname: \"extKeyUsage\",\n array: [{ name: \"clientAuth\" }],\n },\n { extname: \"basicConstraints\", cA: true, critical: true },\n ],\n sigalg: \"SHA256withECDSA\",\n cakey: prvKeyObj,\n });\n const publicKey = rs.KEYUTIL.getPEM(pubKeyObj, \"PKCS8PUB\" as rs.PrivateKeyOutputFormatType).replaceAll(\"PUBLIC KEY\", \"EC PUBLIC KEY\");\n const certPEM = cert.getPEM();\n\n return {\n cert: certPEM,\n publicKey,\n privateKey: rs.KEYUTIL.getPEM(prvKeyObj, \"PKCS8PRV\"),\n };\n }\n\n /**\n * Creates a validity range for a certificate.\n * @param options - Optional validity range options.\n * @returns An object containing the notBefore and notAfter date strings.\n */\n private createValidityRange(options?: ValidityRangeOptions) {\n const notBefore = options?.validFrom || new Date();\n const notAfter = options?.validTo || new Date();\n\n if (!options?.validTo) {\n notAfter.setFullYear(notBefore.getFullYear() + 1);\n }\n\n const notBeforeStr = dateToStr(notBefore);\n const notAfterStr = dateToStr(notAfter);\n\n return { notBeforeStr, notAfterStr };\n }\n}\n\n/**\n * Converts a Date object to a string in the format YYMMDDHHMMSSZ.\n * @private\n * @param date - The date to convert.\n * @returns The formatted date string.\n * @example\n * const certificateManager = new CertificateManager();\n * const dateStr = certificateManager.dateToStr(new Date('2024-05-07T12:23:50.000Z'));\n * console.log(dateStr); // \"240507122350Z\"\n */\nexport function dateToStr(date: Date): string {\n const year = date.getUTCFullYear().toString().slice(2).padStart(2, \"0\");\n const month = (date.getUTCMonth() + 1).toString().padStart(2, \"0\");\n const day = date.getUTCDate().toString().padStart(2, \"0\");\n const hours = date.getUTCHours().toString().padStart(2, \"0\");\n const minutes = date.getUTCMinutes().toString().padStart(2, \"0\");\n const secs = date.getUTCSeconds().toString().padStart(2, \"0\");\n\n return `${year}${month}${day}${hours}${minutes}${secs}Z`;\n}\n\n/**\n * Converts a string in the format YYMMDDHHMMSSZ to a Date object.\n * @private\n * @param str - The string to convert.\n * @returns The corresponding Date object.\n * @example\n * const certificateManager = new CertificateManager();\n * const date = certificateManager.strToDate(\"240507122350Z\");\n * console.log(date.toISOString()); // \"2024-05-07T12:23:50.000Z\"\n */\nexport function strToDate(str: string): Date {\n const year = parseInt(`20${str.substring(0, 2)}`);\n const month = parseInt(str.substring(2, 4)) - 1;\n const day = parseInt(str.substring(4, 6));\n const hours = parseInt(str.substring(6, 8));\n const minutes = parseInt(str.substring(8, 10));\n const secs = parseInt(str.substring(10, 12));\n\n return new Date(Date.UTC(year, month, day, hours, minutes, secs));\n}\n\nlet rsasignLib: Promise<typeof rs>;\nfunction getRSASignLib() {\n rsasignLib ??= import(\"jsrsasign\");\n return rsasignLib;\n}\n", "import { CertificateManager } from \"./CertificateManager.ts\";\n\nexport { CertificateManager, type CertificateInfo, type CertificatePem, type ValidityRangeOptions } from \"./CertificateManager.ts\";\nexport const certificateManager = new CertificateManager();\n", "import { fromByteArray } from \"base64-js\";\n\nexport function base64UrlEncode(value: string | Uint8Array): string {\n return toBase64Url(base64Encode(value));\n}\n\n/**\n * Converts a base64 encoded string to a base64url encoded string\n */\nexport function toBase64Url(base64Encoded: string): string {\n return base64Encoded.replace(/\\+/g, \"-\").replace(/\\//g, \"_\").replace(/=+$/, \"\");\n}\n\nconst textDecoder = new TextDecoder();\nexport function base64UrlDecode(value: string): string {\n let str = value;\n // Convert from base64url \u2192 base64\n str = str.replace(/-/g, \"+\").replace(/_/g, \"/\");\n str = str.padEnd(str.length + (4 - (str.length % 4)) % 4, \"=\");\n\n return textDecoder.decode(Uint8Array.from(atob(str), (c) => c.charCodeAt(0)));\n}\n\n/**\n * Decode a base64 string\n * @param base64String The base64 string to decode\n * @returns The decoded object\n */\nexport function base64Decode(base64String: string): Record<string, unknown> {\n const decoded = atob(base64String);\n return JSON.parse(decoded);\n}\n\nconst textEncoder = new TextEncoder();\nexport function base64Encode(value: string | Uint8Array): string {\n const data = typeof value === \"string\" ? textEncoder.encode(value) : value;\n return fromByteArray(data);\n}\n", "// DO NOT EDIT THIS FILE\n// This file is generated by the script/compile-json-schema-to-ts.ts script\n/* eslint-disable */\n// @ts-nocheck\n\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __commonJS = (cb, mod) => function __require() {\n return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n};\n\n// node_modules/ajv/dist/runtime/ucs2length.js\nvar require_ucs2length = __commonJS({\n \"node_modules/ajv/dist/runtime/ucs2length.js\"(exports) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n function ucs2length(str) {\n const len = str.length;\n let length = 0;\n let pos = 0;\n let value;\n while (pos < len) {\n length++;\n value = str.charCodeAt(pos++);\n if (value >= 55296 && value <= 56319 && pos < len) {\n value = str.charCodeAt(pos);\n if ((value & 64512) === 56320)\n pos++;\n }\n }\n return length;\n }\n exports.default = ucs2length;\n ucs2length.code = 'require(\"ajv/dist/runtime/ucs2length\").default';\n }\n});\n\n// <stdin>\nvar validate = validate10;\nvar stdin_default = validate10;\nvar schema11 = { \"$schema\": \"http://json-schema.org/draft-07/schema#\", \"$id\": \"https://raw.githubusercontent.com/akash-network/chain-sdk/refs/heads/main/specs/jwt-schema.json\", \"title\": \"Akash JWT Schema\", \"description\": \"JSON Schema for JWT used in the Akash Provider API.\", \"type\": \"object\", \"additionalProperties\": false, \"required\": [\"iss\", \"iat\", \"exp\", \"nbf\", \"version\", \"leases\"], \"properties\": { \"iss\": { \"type\": \"string\", \"pattern\": \"^akash1[a-z0-9]{38}$\", \"description\": \"Akash address of the lease(s) owner, e.g., akash1abcd... (44 characters)\" }, \"iat\": { \"type\": \"integer\", \"minimum\": 0, \"description\": \"Token issuance timestamp as Unix time (seconds since 1970-01-01T00:00:00Z). Should be <= exp and >= nbf.\" }, \"nbf\": { \"type\": \"integer\", \"minimum\": 0, \"description\": \"Not valid before timestamp as Unix time (seconds since 1970-01-01T00:00:00Z). Should be <= iat.\" }, \"exp\": { \"type\": \"integer\", \"minimum\": 0, \"description\": \"Expiration timestamp as Unix time (seconds since 1970-01-01T00:00:00Z). Should be >= iat.\" }, \"jti\": { \"type\": \"string\", \"minLength\": 1, \"description\": \"Unique identifier for the JWT, used to prevent token reuse.\" }, \"version\": { \"type\": \"string\", \"enum\": [\"v1\"], \"description\": \"Version of the JWT specification (currently fixed at v1).\" }, \"leases\": { \"type\": \"object\", \"additionalProperties\": false, \"required\": [\"access\"], \"properties\": { \"access\": { \"type\": \"string\", \"enum\": [\"full\", \"granular\", \"scoped\"], \"description\": \"Access level for the lease: 'full' for unrestricted access to all actions, 'scoped' for specific actions across all provider leases,'granular' for provider-specific permissions.\" }, \"scope\": { \"type\": \"array\", \"minItems\": 1, \"uniqueItems\": true, \"items\": { \"type\": \"string\", \"enum\": [\"send-manifest\", \"get-manifest\", \"logs\", \"shell\", \"events\", \"status\", \"restart\", \"hostname-migrate\", \"ip-migrate\"] }, \"description\": \"Global list of permitted actions across all owned leases (no duplicates). Required when access is 'scoped'.\" }, \"permissions\": { \"type\": \"array\", \"description\": \"Required if leases.access is 'granular'; defines provider-specific permissions. The provider address must be unique across all permissions entries.\", \"minItems\": 1, \"items\": { \"type\": \"object\", \"additionalProperties\": false, \"required\": [\"provider\", \"access\"], \"properties\": { \"provider\": { \"type\": \"string\", \"pattern\": \"^akash1[a-z0-9]{38}$\", \"description\": \"Provider address, e.g., akash1xyz... (44 characters).\" }, \"access\": { \"type\": \"string\", \"enum\": [\"full\", \"scoped\", \"granular\"], \"description\": \"Provider-level access: 'full' for all actions, 'scoped' for specific actions across all provider leases, 'granular' for deployment-specific actions.\" }, \"scope\": { \"type\": \"array\", \"minItems\": 1, \"uniqueItems\": true, \"items\": { \"type\": \"string\", \"enum\": [\"send-manifest\", \"get-manifest\", \"logs\", \"shell\", \"events\", \"status\", \"restart\", \"hostname-migrate\", \"ip-migrate\"] }, \"description\": \"Provider-level list of permitted actions for 'scoped' access (no duplicates).\" }, \"deployments\": { \"type\": \"array\", \"minItems\": 1, \"items\": { \"type\": \"object\", \"additionalProperties\": false, \"required\": [\"dseq\", \"scope\", \"services\"], \"properties\": { \"dseq\": { \"type\": \"integer\", \"minimum\": 1, \"description\": \"Deployment sequence number.\" }, \"scope\": { \"type\": \"array\", \"minItems\": 1, \"uniqueItems\": true, \"items\": { \"type\": \"string\", \"enum\": [\"send-manifest\", \"get-manifest\", \"logs\", \"shell\", \"events\", \"status\", \"restart\", \"hostname-migrate\", \"ip-migrate\"] }, \"description\": \"Deployment-level list of permitted actions (no duplicates).\" }, \"gseq\": { \"type\": \"integer\", \"minimum\": 0, \"description\": \"Group sequence number (requires dseq).\" }, \"oseq\": { \"type\": \"integer\", \"minimum\": 0, \"description\": \"Order sequence number (requires dseq and gseq).\" }, \"services\": { \"type\": \"array\", \"minItems\": 1, \"uniqueItems\": true, \"items\": { \"type\": \"string\", \"minLength\": 1 }, \"description\": \"List of service names (requires dseq).\" } }, \"dependencies\": { \"gseq\": [\"dseq\"], \"oseq\": [\"dseq\", \"gseq\"], \"services\": [\"dseq\"] } } } }, \"allOf\": [{ \"if\": { \"properties\": { \"access\": { \"const\": \"scoped\" } } }, \"then\": { \"required\": [\"scope\"], \"properties\": { \"scope\": { \"minItems\": 1 }, \"deployments\": false } } }, { \"if\": { \"properties\": { \"access\": { \"const\": \"granular\" } } }, \"then\": { \"required\": [\"deployments\"], \"properties\": { \"scope\": false } } }, { \"if\": { \"properties\": { \"access\": { \"const\": \"full\" } } }, \"then\": { \"properties\": { \"scope\": false, \"deployments\": false } } }] } } }, \"allOf\": [{ \"if\": { \"properties\": { \"access\": { \"const\": \"full\" } } }, \"then\": { \"properties\": { \"permissions\": false, \"scope\": false } } }, { \"if\": { \"properties\": { \"access\": { \"const\": \"scoped\" } } }, \"then\": { \"required\": [\"scope\"], \"properties\": { \"scope\": { \"minItems\": 1 }, \"permissions\": false } } }, { \"if\": { \"properties\": { \"access\": { \"const\": \"granular\" } }, \"required\": [\"access\"] }, \"then\": { \"required\": [\"permissions\"], \"properties\": { \"scope\": false } } }] } }, \"allOf\": [{ \"if\": { \"properties\": { \"leases\": { \"properties\": { \"access\": { \"const\": \"granular\" } }, \"required\": [\"access\"] } }, \"required\": [\"leases\"] }, \"then\": { \"properties\": { \"leases\": { \"required\": [\"permissions\"], \"properties\": { \"scope\": false } } } } }, { \"if\": { \"properties\": { \"leases\": { \"properties\": { \"permissions\": { \"type\": \"array\", \"minItems\": 1 } }, \"required\": [\"permissions\"] } }, \"required\": [\"leases\"] }, \"then\": { \"properties\": { \"leases\": { \"properties\": { \"access\": { \"const\": \"granular\" } }, \"required\": [\"access\"] } } } }] };\nvar pattern0 = new RegExp(\"^akash1[a-z0-9]{38}$\", \"u\");\nvar func2 = require_ucs2length().default;\nfunction validate10(data, { instancePath = \"\", parentData, parentDataProperty, rootData = data } = {}) {\n ;\n let vErrors = null;\n let errors = 0;\n const _errs2 = errors;\n let valid1 = true;\n const _errs3 = errors;\n if (data && typeof data == \"object\" && !Array.isArray(data)) {\n let missing0;\n if (data.leases === void 0 && (missing0 = \"leases\")) {\n const err0 = {};\n if (vErrors === null) {\n vErrors = [err0];\n } else {\n vErrors.push(err0);\n }\n errors++;\n } else {\n if (data.leases !== void 0) {\n let data0 = data.leases;\n if (data0 && typeof data0 == \"object\" && !Array.isArray(data0)) {\n let missing1;\n if (data0.access === void 0 && (missing1 = \"access\")) {\n const err1 = {};\n if (vErrors === null) {\n vErrors = [err1];\n } else {\n vErrors.push(err1);\n }\n errors++;\n } else {\n if (data0.access !== void 0) {\n if (\"granular\" !== data0.access) {\n const err2 = {};\n if (vErrors === null) {\n vErrors = [err2];\n } else {\n vErrors.push(err2);\n }\n errors++;\n }\n }\n }\n }\n }\n }\n }\n var _valid0 = _errs3 === errors;\n errors = _errs2;\n if (vErrors !== null) {\n if (_errs2) {\n vErrors.length = _errs2;\n } else {\n vErrors = null;\n }\n }\n if (_valid0) {\n const _errs6 = errors;\n if (data && typeof data == \"object\" && !Array.isArray(data)) {\n if (data.leases !== void 0) {\n let data2 = data.leases;\n if (data2 && typeof data2 == \"object\" && !Array.isArray(data2)) {\n if (data2.permissions === void 0) {\n const err3 = { instancePath: instancePath + \"/leases\", schemaPath: \"#/allOf/0/then/properties/leases/required\", keyword: \"required\", params: { missingProperty: \"permissions\" }, message: \"must have required property 'permissions'\" };\n if (vErrors === null) {\n vErrors = [err3];\n } else {\n vErrors.push(err3);\n }\n errors++;\n }\n if (data2.scope !== void 0) {\n const err4 = { instancePath: instancePath + \"/leases/scope\", schemaPath: \"#/allOf/0/then/properties/leases/properties/scope/false schema\", keyword: \"false schema\", params: {}, message: \"boolean schema is false\" };\n if (vErrors === null) {\n vErrors = [err4];\n } else {\n vErrors.push(err4);\n }\n errors++;\n }\n }\n }\n }\n var _valid0 = _errs6 === errors;\n valid1 = _valid0;\n }\n if (!valid1) {\n const err5 = { instancePath, schemaPath: \"#/allOf/0/if\", keyword: \"if\", params: { failingKeyword: \"then\" }, message: 'must match \"then\" schema' };\n if (vErrors === null) {\n vErrors = [err5];\n } else {\n vErrors.push(err5);\n }\n errors++;\n }\n const _errs9 = errors;\n let valid6 = true;\n const _errs10 = errors;\n if (data && typeof data == \"object\" && !Array.isArray(data)) {\n let missing2;\n if (data.leases === void 0 && (missing2 = \"leases\")) {\n const err6 = {};\n if (vErrors === null) {\n vErrors = [err6];\n } else {\n vErrors.push(err6);\n }\n errors++;\n } else {\n if (data.leases !== void 0) {\n let data4 = data.leases;\n if (data4 && typeof data4 == \"object\" && !Array.isArray(data4)) {\n let missing3;\n if (data4.permissions === void 0 && (missing3 = \"permissions\")) {\n const err7 = {};\n if (vErrors === null) {\n vErrors = [err7];\n } else {\n vErrors.push(err7);\n }\n errors++;\n } else {\n if (data4.permissions !== void 0) {\n let data5 = data4.permissions;\n const _errs12 = errors;\n if (errors === _errs12) {\n if (Array.isArray(data5)) {\n if (data5.length < 1) {\n const err8 = {};\n if (vErrors === null) {\n vErrors = [err8];\n } else {\n vErrors.push(err8);\n }\n errors++;\n }\n } else {\n const err9 = {};\n if (vErrors === null) {\n vErrors = [err9];\n } else {\n vErrors.push(err9);\n }\n errors++;\n }\n }\n }\n }\n }\n }\n }\n }\n var _valid1 = _errs10 === errors;\n errors = _errs9;\n if (vErrors !== null) {\n if (_errs9) {\n vErrors.length = _errs9;\n } else {\n vErrors = null;\n }\n }\n if (_valid1) {\n const _errs14 = errors;\n if (data && typeof data == \"object\" && !Array.isArray(data)) {\n if (data.leases !== void 0) {\n let data6 = data.leases;\n if (data6 && typeof data6 == \"object\" && !Array.isArray(data6)) {\n if (data6.access === void 0) {\n const err10 = { instancePath: instancePath + \"/leases\", schemaPath: \"#/allOf/1/then/properties/leases/required\", keyword: \"required\", params: { missingProperty: \"access\" }, message: \"must have required property 'access'\" };\n if (vErrors === null) {\n vErrors = [err10];\n } else {\n vErrors.push(err10);\n }\n errors++;\n }\n if (data6.access !== void 0) {\n if (\"granular\" !== data6.access) {\n const err11 = { instancePath: instancePath + \"/leases/access\", schemaPath: \"#/allOf/1/then/properties/leases/properties/access/const\", keyword: \"const\", params: { allowedValue: \"granular\" }, message: \"must be equal to constant\" };\n if (vErrors === null) {\n vErrors = [err11];\n } else {\n vErrors.push(err11);\n }\n errors++;\n }\n }\n }\n }\n }\n var _valid1 = _errs14 === errors;\n valid6 = _valid1;\n }\n if (!valid6) {\n const err12 = { instancePath, schemaPath: \"#/allOf/1/if\", keyword: \"if\", params: { failingKeyword: \"then\" }, message: 'must match \"then\" schema' };\n if (vErrors === null) {\n vErrors = [err12];\n } else {\n vErrors.push(err12);\n }\n errors++;\n }\n if (data && typeof data == \"object\" && !Array.isArray(data)) {\n if (data.iss === void 0) {\n const err13 = { instancePath, schemaPath: \"#/required\", keyword: \"required\", params: { missingProperty: \"iss\" }, message: \"must have required property 'iss'\" };\n if (vErrors === null) {\n vErrors = [err13];\n } else {\n vErrors.push(err13);\n }\n errors++;\n }\n if (data.iat === void 0) {\n const err14 = { instancePath, schemaPath: \"#/required\", keyword: \"required\", params: { missingProperty: \"iat\" }, message: \"must have required property 'iat'\" };\n if (vErrors === null) {\n vErrors = [err14];\n } else {\n vErrors.push(err14);\n }\n errors++;\n }\n if (data.exp === void 0) {\n const err15 = { instancePath, schemaPath: \"#/required\", keyword: \"required\", params: { missingProperty: \"exp\" }, message: \"must have required property 'exp'\" };\n if (vErrors === null) {\n vErrors = [err15];\n } else {\n vErrors.push(err15);\n }\n errors++;\n }\n if (data.nbf === void 0) {\n const err16 = { instancePath, schemaPath: \"#/required\", keyword: \"required\", params: { missingProperty: \"nbf\" }, message: \"must have required property 'nbf'\" };\n if (vErrors === null) {\n vErrors = [err16];\n } else {\n vErrors.push(err16);\n }\n errors++;\n }\n if (data.version === void 0) {\n const err17 = { instancePath, schemaPath: \"#/required\", keyword: \"required\", params: { missingProperty: \"version\" }, message: \"must have required property 'version'\" };\n if (vErrors === null) {\n vErrors = [err17];\n } else {\n vErrors.push(err17);\n }\n errors++;\n }\n if (data.leases === void 0) {\n const err18 = { instancePath, schemaPath: \"#/required\", keyword: \"required\", params: { missingProperty: \"leases\" }, message: \"must have required property 'leases'\" };\n if (vErrors === null) {\n vErrors = [err18];\n } else {\n vErrors.push(err18);\n }\n errors++;\n }\n for (const key0 in data) {\n if (!(key0 === \"iss\" || key0 === \"iat\" || key0 === \"nbf\" || key0 === \"exp\" || key0 === \"jti\" || key0 === \"version\" || key0 === \"leases\")) {\n const err19 = { instancePath, schemaPath: \"#/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key0 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err19];\n } else {\n vErrors.push(err19);\n }\n errors++;\n }\n }\n if (data.iss !== void 0) {\n let data8 = data.iss;\n if (typeof data8 === \"string\") {\n if (!pattern0.test(data8)) {\n const err20 = { instancePath: instancePath + \"/iss\", schemaPath: \"#/properties/iss/pattern\", keyword: \"pattern\", params: { pattern: \"^akash1[a-z0-9]{38}$\" }, message: 'must match pattern \"^akash1[a-z0-9]{38}$\"' };\n if (vErrors === null) {\n vErrors = [err20];\n } else {\n vErrors.push(err20);\n }\n errors++;\n }\n } else {\n const err21 = { instancePath: instancePath + \"/iss\", schemaPath: \"#/properties/iss/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err21];\n } else {\n vErrors.push(err21);\n }\n errors++;\n }\n }\n if (data.iat !== void 0) {\n let data9 = data.iat;\n if (!(typeof data9 == \"number\" && (!(data9 % 1) && !isNaN(data9)))) {\n const err22 = { instancePath: instancePath + \"/iat\", schemaPath: \"#/properties/iat/type\", keyword: \"type\", params: { type: \"integer\" }, message: \"must be integer\" };\n if (vErrors === null) {\n vErrors = [err22];\n } else {\n vErrors.push(err22);\n }\n errors++;\n }\n if (typeof data9 == \"number\") {\n if (data9 < 0 || isNaN(data9)) {\n const err23 = { instancePath: instancePath + \"/iat\", schemaPath: \"#/properties/iat/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 0 }, message: \"must be >= 0\" };\n if (vErrors === null) {\n vErrors = [err23];\n } else {\n vErrors.push(err23);\n }\n errors++;\n }\n }\n }\n if (data.nbf !== void 0) {\n let data10 = data.nbf;\n if (!(typeof data10 == \"number\" && (!(data10 % 1) && !isNaN(data10)))) {\n const err24 = { instancePath: instancePath + \"/nbf\", schemaPath: \"#/properties/nbf/type\", keyword: \"type\", params: { type: \"integer\" }, message: \"must be integer\" };\n if (vErrors === null) {\n vErrors = [err24];\n } else {\n vErrors.push(err24);\n }\n errors++;\n }\n if (typeof data10 == \"number\") {\n if (data10 < 0 || isNaN(data10)) {\n const err25 = { instancePath: instancePath + \"/nbf\", schemaPath: \"#/properties/nbf/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 0 }, message: \"must be >= 0\" };\n if (vErrors === null) {\n vErrors = [err25];\n } else {\n vErrors.push(err25);\n }\n errors++;\n }\n }\n }\n if (data.exp !== void 0) {\n let data11 = data.exp;\n if (!(typeof data11 == \"number\" && (!(data11 % 1) && !isNaN(data11)))) {\n const err26 = { instancePath: instancePath + \"/exp\", schemaPath: \"#/properties/exp/type\", keyword: \"type\", params: { type: \"integer\" }, message: \"must be integer\" };\n if (vErrors === null) {\n vErrors = [err26];\n } else {\n vErrors.push(err26);\n }\n errors++;\n }\n if (typeof data11 == \"number\") {\n if (data11 < 0 || isNaN(data11)) {\n const err27 = { instancePath: instancePath + \"/exp\", schemaPath: \"#/properties/exp/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 0 }, message: \"must be >= 0\" };\n if (vErrors === null) {\n vErrors = [err27];\n } else {\n vErrors.push(err27);\n }\n errors++;\n }\n }\n }\n if (data.jti !== void 0) {\n let data12 = data.jti;\n if (typeof data12 === \"string\") {\n if (func2(data12) < 1) {\n const err28 = { instancePath: instancePath + \"/jti\", schemaPath: \"#/properties/jti/minLength\", keyword: \"minLength\", params: { limit: 1 }, message: \"must NOT have fewer than 1 characters\" };\n if (vErrors === null) {\n vErrors = [err28];\n } else {\n vErrors.push(err28);\n }\n errors++;\n }\n } else {\n const err29 = { instancePath: instancePath + \"/jti\", schemaPath: \"#/properties/jti/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err29];\n } else {\n vErrors.push(err29);\n }\n errors++;\n }\n }\n if (data.version !== void 0) {\n let data13 = data.version;\n if (typeof data13 !== \"string\") {\n const err30 = { instancePath: instancePath + \"/version\", schemaPath: \"#/properties/version/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err30];\n } else {\n vErrors.push(err30);\n }\n errors++;\n }\n if (!(data13 === \"v1\")) {\n const err31 = { instancePath: instancePath + \"/version\", schemaPath: \"#/properties/version/enum\", keyword: \"enum\", params: { allowedValues: schema11.properties.version.enum }, message: \"must be equal to one of the allowed values\" };\n if (vErrors === null) {\n vErrors = [err31];\n } else {\n vErrors.push(err31);\n }\n errors++;\n }\n }\n if (data.leases !== void 0) {\n let data14 = data.leases;\n const _errs33 = errors;\n let valid13 = true;\n const _errs34 = errors;\n if (data14 && typeof data14 == \"object\" && !Array.isArray(data14)) {\n if (data14.access !== void 0) {\n if (\"full\" !== data14.access) {\n const err32 = {};\n if (vErrors === null) {\n vErrors = [err32];\n } else {\n vErrors.push(err32);\n }\n errors++;\n }\n }\n }\n var _valid2 = _errs34 === errors;\n errors = _errs33;\n if (vErrors !== null) {\n if (_errs33) {\n vErrors.length = _errs33;\n } else {\n vErrors = null;\n }\n }\n if (_valid2) {\n const _errs36 = errors;\n if (data14 && typeof data14 == \"object\" && !Array.isArray(data14)) {\n if (data14.permissions !== void 0) {\n const err33 = { instancePath: instancePath + \"/leases/permissions\", schemaPath: \"#/properties/leases/allOf/0/then/properties/permissions/false schema\", keyword: \"false schema\", params: {}, message: \"boolean schema is false\" };\n if (vErrors === null) {\n vErrors = [err33];\n } else {\n vErrors.push(err33);\n }\n errors++;\n }\n if (data14.scope !== void 0) {\n const err34 = { instancePath: instancePath + \"/leases/scope\", schemaPath: \"#/properties/leases/allOf/0/then/properties/scope/false schema\", keyword: \"false schema\", params: {}, message: \"boolean schema is false\" };\n if (vErrors === null) {\n vErrors = [err34];\n } else {\n vErrors.push(err34);\n }\n errors++;\n }\n }\n var _valid2 = _errs36 === errors;\n valid13 = _valid2;\n }\n if (!valid13) {\n const err35 = { instancePath: instancePath + \"/leases\", schemaPath: \"#/properties/leases/allOf/0/if\", keyword: \"if\", params: { failingKeyword: \"then\" }, message: 'must match \"then\" schema' };\n if (vErrors === null) {\n vErrors = [err35];\n } else {\n vErrors.push(err35);\n }\n errors++;\n }\n const _errs38 = errors;\n let valid16 = true;\n const _errs39 = errors;\n if (data14 && typeof data14 == \"object\" && !Array.isArray(data14)) {\n if (data14.access !== void 0) {\n if (\"scoped\" !== data14.access) {\n const err36 = {};\n if (vErrors === null) {\n vErrors = [err36];\n } else {\n vErrors.push(err36);\n }\n errors++;\n }\n }\n }\n var _valid3 = _errs39 === errors;\n errors = _errs38;\n if (vErrors !== null) {\n if (_errs38) {\n vErrors.length = _errs38;\n } else {\n vErrors = null;\n }\n }\n if (_valid3) {\n const _errs41 = errors;\n if (data14 && typeof data14 == \"object\" && !Array.isArray(data14)) {\n if (data14.scope === void 0) {\n const err37 = { instancePath: instancePath + \"/leases\", schemaPath: \"#/properties/leases/allOf/1/then/required\", keyword: \"required\", params: { missingProperty: \"scope\" }, message: \"must have required property 'scope'\" };\n if (vErrors === null) {\n vErrors = [err37];\n } else {\n vErrors.push(err37);\n }\n errors++;\n }\n if (data14.scope !== void 0) {\n let data19 = data14.scope;\n if (Array.isArray(data19)) {\n if (data19.length < 1) {\n const err38 = { instancePath: instancePath + \"/leases/scope\", schemaPath: \"#/properties/leases/allOf/1/then/properties/scope/minItems\", keyword: \"minItems\", params: { limit: 1 }, message: \"must NOT have fewer than 1 items\" };\n if (vErrors === null) {\n vErrors = [err38];\n } else {\n vErrors.push(err38);\n }\n errors++;\n }\n }\n }\n if (data14.permissions !== void 0) {\n const err39 = { instancePath: instancePath + \"/leases/permissions\", schemaPath: \"#/properties/leases/allOf/1/then/properties/permissions/false schema\", keyword: \"false schema\", params: {}, message: \"boolean schema is false\" };\n if (vErrors === null) {\n vErrors = [err39];\n } else {\n vErrors.push(err39);\n }\n errors++;\n }\n }\n var _valid3 = _errs41 === errors;\n valid16 = _valid3;\n }\n if (!valid16) {\n const err40 = { instancePath: instancePath + \"/leases\", schemaPath: \"#/properties/leases/allOf/1/if\", keyword: \"if\", params: { failingKeyword: \"then\" }, message: 'must match \"then\" schema' };\n if (vErrors === null) {\n vErrors = [err40];\n } else {\n vErrors.push(err40);\n }\n errors++;\n }\n const _errs44 = errors;\n let valid19 = true;\n const _errs45 = errors;\n if (data14 && typeof data14 == \"object\" && !Array.isArray(data14)) {\n let missing4;\n if (data14.access === void 0 && (missing4 = \"access\")) {\n const err41 = {};\n if (vErrors === null) {\n vErrors = [err41];\n } else {\n vErrors.push(err41);\n }\n errors++;\n } else {\n if (data14.access !== void 0) {\n if (\"granular\" !== data14.access) {\n const err42 = {};\n if (vErrors === null) {\n vErrors = [err42];\n } else {\n vErrors.push(err42);\n }\n errors++;\n }\n }\n }\n }\n var _valid4 = _errs45 === errors;\n errors = _errs44;\n if (vErrors !== null) {\n if (_errs44) {\n vErrors.length = _errs44;\n } else {\n vErrors = null;\n }\n }\n if (_valid4) {\n const _errs47 = errors;\n if (data14 && typeof data14 == \"object\" && !Array.isArray(data14)) {\n if (data14.permissions === void 0) {\n const err43 = { instancePath: instancePath + \"/leases\", schemaPath: \"#/properties/leases/allOf/2/then/required\", keyword: \"required\", params: { missingProperty: \"permissions\" }, message: \"must have required property 'permissions'\" };\n if (vErrors === null) {\n vErrors = [err43];\n } else {\n vErrors.push(err43);\n }\n errors++;\n }\n if (data14.scope !== void 0) {\n const err44 = { instancePath: instancePath + \"/leases/scope\", schemaPath: \"#/properties/leases/allOf/2/then/properties/scope/false schema\", keyword: \"false schema\", params: {}, message: \"boolean schema is false\" };\n if (vErrors === null) {\n vErrors = [err44];\n } else {\n vErrors.push(err44);\n }\n errors++;\n }\n }\n var _valid4 = _errs47 === errors;\n valid19 = _valid4;\n }\n if (!valid19) {\n const err45 = { instancePath: instancePath + \"/leases\", schemaPath: \"#/properties/leases/allOf/2/if\", keyword: \"if\", params: { failingKeyword: \"then\" }, message: 'must match \"then\" schema' };\n if (vErrors === null) {\n vErrors = [err45];\n } else {\n vErrors.push(err45);\n }\n errors++;\n }\n if (data14 && typeof data14 == \"object\" && !Array.isArray(data14)) {\n if (data14.access === void 0) {\n const err46 = { instancePath: instancePath + \"/leases\", schemaPath: \"#/properties/leases/required\", keyword: \"required\", params: { missingProperty: \"access\" }, message: \"must have required property 'access'\" };\n if (vErrors === null) {\n vErrors = [err46];\n } else {\n vErrors.push(err46);\n }\n errors++;\n }\n for (const key1 in data14) {\n if (!(key1 === \"access\" || key1 === \"scope\" || key1 === \"permissions\")) {\n const err47 = { instancePath: instancePath + \"/leases\", schemaPath: \"#/properties/leases/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key1 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err47];\n } else {\n vErrors.push(err47);\n }\n errors++;\n }\n }\n if (data14.access !== void 0) {\n let data23 = data14.access;\n if (typeof data23 !== \"string\") {\n const err48 = { instancePath: instancePath + \"/leases/access\", schemaPath: \"#/properties/leases/properties/access/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err48];\n } else {\n vErrors.push(err48);\n }\n errors++;\n }\n if (!(data23 === \"full\" || data23 === \"granular\" || data23 === \"scoped\")) {\n const err49 = { instancePath: instancePath + \"/leases/access\", schemaPath: \"#/properties/leases/properties/access/enum\", keyword: \"enum\", params: { allowedValues: schema11.properties.leases.properties.access.enum }, message: \"must be equal to one of the allowed values\" };\n if (vErrors === null) {\n vErrors = [err49];\n } else {\n vErrors.push(err49);\n }\n errors++;\n }\n }\n if (data14.scope !== void 0) {\n let data24 = data14.scope;\n if (Array.isArray(data24)) {\n if (data24.length < 1) {\n const err50 = { instancePath: instancePath + \"/leases/scope\", schemaPath: \"#/properties/leases/properties/scope/minItems\", keyword: \"minItems\", params: { limit: 1 }, message: \"must NOT have fewer than 1 items\" };\n if (vErrors === null) {\n vErrors = [err50];\n } else {\n vErrors.push(err50);\n }\n errors++;\n }\n const len0 = data24.length;\n for (let i0 = 0; i0 < len0; i0++) {\n let data25 = data24[i0];\n if (typeof data25 !== \"string\") {\n const err51 = { instancePath: instancePath + \"/leases/scope/\" + i0, schemaPath: \"#/properties/leases/properties/scope/items/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err51];\n } else {\n vErrors.push(err51);\n }\n errors++;\n }\n if (!(data25 === \"send-manifest\" || data25 === \"get-manifest\" || data25 === \"logs\" || data25 === \"shell\" || data25 === \"events\" || data25 === \"status\" || data25 === \"restart\" || data25 === \"hostname-migrate\" || data25 === \"ip-migrate\")) {\n const err52 = { instancePath: instancePath + \"/leases/scope/\" + i0, schemaPath: \"#/properties/leases/properties/scope/items/enum\", keyword: \"enum\", params: { allowedValues: schema11.properties.leases.properties.scope.items.enum }, message: \"must be equal to one of the allowed values\" };\n if (vErrors === null) {\n vErrors = [err52];\n } else {\n vErrors.push(err52);\n }\n errors++;\n }\n }\n let i1 = data24.length;\n let j0;\n if (i1 > 1) {\n const indices0 = {};\n for (; i1--; ) {\n let item0 = data24[i1];\n if (typeof item0 !== \"string\") {\n continue;\n }\n if (typeof indices0[item0] == \"number\") {\n j0 = indices0[item0];\n const err53 = { instancePath: instancePath + \"/leases/scope\", schemaPath: \"#/properties/leases/properties/scope/uniqueItems\", keyword: \"uniqueItems\", params: { i: i1, j: j0 }, message: \"must NOT have duplicate items (items ## \" + j0 + \" and \" + i1 + \" are identical)\" };\n if (vErrors === null) {\n vErrors = [err53];\n } else {\n vErrors.push(err53);\n }\n errors++;\n break;\n }\n indices0[item0] = i1;\n }\n }\n } else {\n const err54 = { instancePath: instancePath + \"/leases/scope\", schemaPath: \"#/properties/leases/properties/scope/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err54];\n } else {\n vErrors.push(err54);\n }\n errors++;\n }\n }\n if (data14.permissions !== void 0) {\n let data26 = data14.permissions;\n if (Array.isArray(data26)) {\n if (data26.length < 1) {\n const err55 = { instancePath: instancePath + \"/leases/permissions\", schemaPath: \"#/properties/leases/properties/permissions/minItems\", keyword: \"minItems\", params: { limit: 1 }, message: \"must NOT have fewer than 1 items\" };\n if (vErrors === null) {\n vErrors = [err55];\n } else {\n vErrors.push(err55);\n }\n errors++;\n }\n const len1 = data26.length;\n for (let i2 = 0; i2 < len1; i2++) {\n let data27 = data26[i2];\n const _errs60 = errors;\n let valid29 = true;\n const _errs61 = errors;\n if (data27 && typeof data27 == \"object\" && !Array.isArray(data27)) {\n if (data27.access !== void 0) {\n if (\"scoped\" !== data27.access) {\n const err56 = {};\n if (vErrors === null) {\n vErrors = [err56];\n } else {\n vErrors.push(err56);\n }\n errors++;\n }\n }\n }\n var _valid5 = _errs61 === errors;\n errors = _errs60;\n if (vErrors !== null) {\n if (_errs60) {\n vErrors.length = _errs60;\n } else {\n vErrors = null;\n }\n }\n if (_valid5) {\n const _errs63 = errors;\n if (data27 && typeof data27 == \"object\" && !Array.isArray(data27)) {\n if (data27.scope === void 0) {\n const err57 = { instancePath: instancePath + \"/leases/permissions/\" + i2, schemaPath: \"#/properties/leases/properties/permissions/items/allOf/0/then/required\", keyword: \"required\", params: { missingProperty: \"scope\" }, message: \"must have required property 'scope'\" };\n if (vErrors === null) {\n vErrors = [err57];\n } else {\n vErrors.push(err57);\n }\n errors++;\n }\n if (data27.scope !== void 0) {\n let data29 = data27.scope;\n if (Array.isArray(data29)) {\n if (data29.length < 1) {\n const err58 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/scope\", schemaPath: \"#/properties/leases/properties/permissions/items/allOf/0/then/properties/scope/minItems\", keyword: \"minItems\", params: { limit: 1 }, message: \"must NOT have fewer than 1 items\" };\n if (vErrors === null) {\n vErrors = [err58];\n } else {\n vErrors.push(err58);\n }\n errors++;\n }\n }\n }\n if (data27.deployments !== void 0) {\n const err59 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments\", schemaPath: \"#/properties/leases/properties/permissions/items/allOf/0/then/properties/deployments/false schema\", keyword: \"false schema\", params: {}, message: \"boolean schema is false\" };\n if (vErrors === null) {\n vErrors = [err59];\n } else {\n vErrors.push(err59);\n }\n errors++;\n }\n }\n var _valid5 = _errs63 === errors;\n valid29 = _valid5;\n }\n if (!valid29) {\n const err60 = { instancePath: instancePath + \"/leases/permissions/\" + i2, schemaPath: \"#/properties/leases/properties/permissions/items/allOf/0/if\", keyword: \"if\", params: { failingKeyword: \"then\" }, message: 'must match \"then\" schema' };\n if (vErrors === null) {\n vErrors = [err60];\n } else {\n vErrors.push(err60);\n }\n errors++;\n }\n const _errs66 = errors;\n let valid32 = true;\n const _errs67 = errors;\n if (data27 && typeof data27 == \"object\" && !Array.isArray(data27)) {\n if (data27.access !== void 0) {\n if (\"granular\" !== data27.access) {\n const err61 = {};\n if (vErrors === null) {\n vErrors = [err61];\n } else {\n vErrors.push(err61);\n }\n errors++;\n }\n }\n }\n var _valid6 = _errs67 === errors;\n errors = _errs66;\n if (vErrors !== null) {\n if (_errs66) {\n vErrors.length = _errs66;\n } else {\n vErrors = null;\n }\n }\n if (_valid6) {\n const _errs69 = errors;\n if (data27 && typeof data27 == \"object\" && !Array.isArray(data27)) {\n if (data27.deployments === void 0) {\n const err62 = { instancePath: instancePath + \"/leases/permissions/\" + i2, schemaPath: \"#/properties/leases/properties/permissions/items/allOf/1/then/required\", keyword: \"required\", params: { missingProperty: \"deployments\" }, message: \"must have required property 'deployments'\" };\n if (vErrors === null) {\n vErrors = [err62];\n } else {\n vErrors.push(err62);\n }\n errors++;\n }\n if (data27.scope !== void 0) {\n const err63 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/scope\", schemaPath: \"#/properties/leases/properties/permissions/items/allOf/1/then/properties/scope/false schema\", keyword: \"false schema\", params: {}, message: \"boolean schema is false\" };\n if (vErrors === null) {\n vErrors = [err63];\n } else {\n vErrors.push(err63);\n }\n errors++;\n }\n }\n var _valid6 = _errs69 === errors;\n valid32 = _valid6;\n }\n if (!valid32) {\n const err64 = { instancePath: instancePath + \"/leases/permissions/\" + i2, schemaPath: \"#/properties/leases/properties/permissions/items/allOf/1/if\", keyword: \"if\", params: { failingKeyword: \"then\" }, message: 'must match \"then\" schema' };\n if (vErrors === null) {\n vErrors = [err64];\n } else {\n vErrors.push(err64);\n }\n errors++;\n }\n const _errs71 = errors;\n let valid35 = true;\n const _errs72 = errors;\n if (data27 && typeof data27 == \"object\" && !Array.isArray(data27)) {\n if (data27.access !== void 0) {\n if (\"full\" !== data27.access) {\n const err65 = {};\n if (vErrors === null) {\n vErrors = [err65];\n } else {\n vErrors.push(err65);\n }\n errors++;\n }\n }\n }\n var _valid7 = _errs72 === errors;\n errors = _errs71;\n if (vErrors !== null) {\n if (_errs71) {\n vErrors.length = _errs71;\n } else {\n vErrors = null;\n }\n }\n if (_valid7) {\n const _errs74 = errors;\n if (data27 && typeof data27 == \"object\" && !Array.isArray(data27)) {\n if (data27.scope !== void 0) {\n const err66 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/scope\", schemaPath: \"#/properties/leases/properties/permissions/items/allOf/2/then/properties/scope/false schema\", keyword: \"false schema\", params: {}, message: \"boolean schema is false\" };\n if (vErrors === null) {\n vErrors = [err66];\n } else {\n vErrors.push(err66);\n }\n errors++;\n }\n if (data27.deployments !== void 0) {\n const err67 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments\", schemaPath: \"#/properties/leases/properties/permissions/items/allOf/2/then/properties/deployments/false schema\", keyword: \"false schema\", params: {}, message: \"boolean schema is false\" };\n if (vErrors === null) {\n vErrors = [err67];\n } else {\n vErrors.push(err67);\n }\n errors++;\n }\n }\n var _valid7 = _errs74 === errors;\n valid35 = _valid7;\n }\n if (!valid35) {\n const err68 = { instancePath: instancePath + \"/leases/permissions/\" + i2, schemaPath: \"#/properties/leases/properties/permissions/items/allOf/2/if\", keyword: \"if\", params: { failingKeyword: \"then\" }, message: 'must match \"then\" schema' };\n if (vErrors === null) {\n vErrors = [err68];\n } else {\n vErrors.push(err68);\n }\n errors++;\n }\n if (data27 && typeof data27 == \"object\" && !Array.isArray(data27)) {\n if (data27.provider === void 0) {\n const err69 = { instancePath: instancePath + \"/leases/permissions/\" + i2, schemaPath: \"#/properties/leases/properties/permissions/items/required\", keyword: \"required\", params: { missingProperty: \"provider\" }, message: \"must have required property 'provider'\" };\n if (vErrors === null) {\n vErrors = [err69];\n } else {\n vErrors.push(err69);\n }\n errors++;\n }\n if (data27.access === void 0) {\n const err70 = { instancePath: instancePath + \"/leases/permissions/\" + i2, schemaPath: \"#/properties/leases/properties/permissions/items/required\", keyword: \"required\", params: { missingProperty: \"access\" }, message: \"must have required property 'access'\" };\n if (vErrors === null) {\n vErrors = [err70];\n } else {\n vErrors.push(err70);\n }\n errors++;\n }\n for (const key2 in data27) {\n if (!(key2 === \"provider\" || key2 === \"access\" || key2 === \"scope\" || key2 === \"deployments\")) {\n const err71 = { instancePath: instancePath + \"/leases/permissions/\" + i2, schemaPath: \"#/properties/leases/properties/permissions/items/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key2 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err71];\n } else {\n vErrors.push(err71);\n }\n errors++;\n }\n }\n if (data27.provider !== void 0) {\n let data36 = data27.provider;\n if (typeof data36 === \"string\") {\n if (!pattern0.test(data36)) {\n const err72 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/provider\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/provider/pattern\", keyword: \"pattern\", params: { pattern: \"^akash1[a-z0-9]{38}$\" }, message: 'must match pattern \"^akash1[a-z0-9]{38}$\"' };\n if (vErrors === null) {\n vErrors = [err72];\n } else {\n vErrors.push(err72);\n }\n errors++;\n }\n } else {\n const err73 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/provider\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/provider/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err73];\n } else {\n vErrors.push(err73);\n }\n errors++;\n }\n }\n if (data27.access !== void 0) {\n let data37 = data27.access;\n if (typeof data37 !== \"string\") {\n const err74 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/access\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/access/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err74];\n } else {\n vErrors.push(err74);\n }\n errors++;\n }\n if (!(data37 === \"full\" || data37 === \"scoped\" || data37 === \"granular\")) {\n const err75 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/access\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/access/enum\", keyword: \"enum\", params: { allowedValues: schema11.properties.leases.properties.permissions.items.properties.access.enum }, message: \"must be equal to one of the allowed values\" };\n if (vErrors === null) {\n vErrors = [err75];\n } else {\n vErrors.push(err75);\n }\n errors++;\n }\n }\n if (data27.scope !== void 0) {\n let data38 = data27.scope;\n if (Array.isArray(data38)) {\n if (data38.length < 1) {\n const err76 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/scope\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/scope/minItems\", keyword: \"minItems\", params: { limit: 1 }, message: \"must NOT have fewer than 1 items\" };\n if (vErrors === null) {\n vErrors = [err76];\n } else {\n vErrors.push(err76);\n }\n errors++;\n }\n const len2 = data38.length;\n for (let i3 = 0; i3 < len2; i3++) {\n let data39 = data38[i3];\n if (typeof data39 !== \"string\") {\n const err77 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/scope/\" + i3, schemaPath: \"#/properties/leases/properties/permissions/items/properties/scope/items/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err77];\n } else {\n vErrors.push(err77);\n }\n errors++;\n }\n if (!(data39 === \"send-manifest\" || data39 === \"get-manifest\" || data39 === \"logs\" || data39 === \"shell\" || data39 === \"events\" || data39 === \"status\" || data39 === \"restart\" || data39 === \"hostname-migrate\" || data39 === \"ip-migrate\")) {\n const err78 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/scope/\" + i3, schemaPath: \"#/properties/leases/properties/permissions/items/properties/scope/items/enum\", keyword: \"enum\", params: { allowedValues: schema11.properties.leases.properties.permissions.items.properties.scope.items.enum }, message: \"must be equal to one of the allowed values\" };\n if (vErrors === null) {\n vErrors = [err78];\n } else {\n vErrors.push(err78);\n }\n errors++;\n }\n }\n let i4 = data38.length;\n let j1;\n if (i4 > 1) {\n const indices1 = {};\n for (; i4--; ) {\n let item1 = data38[i4];\n if (typeof item1 !== \"string\") {\n continue;\n }\n if (typeof indices1[item1] == \"number\") {\n j1 = indices1[item1];\n const err79 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/scope\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/scope/uniqueItems\", keyword: \"uniqueItems\", params: { i: i4, j: j1 }, message: \"must NOT have duplicate items (items ## \" + j1 + \" and \" + i4 + \" are identical)\" };\n if (vErrors === null) {\n vErrors = [err79];\n } else {\n vErrors.push(err79);\n }\n errors++;\n break;\n }\n indices1[item1] = i4;\n }\n }\n } else {\n const err80 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/scope\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/scope/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err80];\n } else {\n vErrors.push(err80);\n }\n errors++;\n }\n }\n if (data27.deployments !== void 0) {\n let data40 = data27.deployments;\n if (Array.isArray(data40)) {\n if (data40.length < 1) {\n const err81 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/minItems\", keyword: \"minItems\", params: { limit: 1 }, message: \"must NOT have fewer than 1 items\" };\n if (vErrors === null) {\n vErrors = [err81];\n } else {\n vErrors.push(err81);\n }\n errors++;\n }\n const len3 = data40.length;\n for (let i5 = 0; i5 < len3; i5++) {\n let data41 = data40[i5];\n if (data41 && typeof data41 == \"object\" && !Array.isArray(data41)) {\n if (data41.dseq === void 0) {\n const err82 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5, schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/required\", keyword: \"required\", params: { missingProperty: \"dseq\" }, message: \"must have required property 'dseq'\" };\n if (vErrors === null) {\n vErrors = [err82];\n } else {\n vErrors.push(err82);\n }\n errors++;\n }\n if (data41.scope === void 0) {\n const err83 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5, schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/required\", keyword: \"required\", params: { missingProperty: \"scope\" }, message: \"must have required property 'scope'\" };\n if (vErrors === null) {\n vErrors = [err83];\n } else {\n vErrors.push(err83);\n }\n errors++;\n }\n if (data41.services === void 0) {\n const err84 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5, schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/required\", keyword: \"required\", params: { missingProperty: \"services\" }, message: \"must have required property 'services'\" };\n if (vErrors === null) {\n vErrors = [err84];\n } else {\n vErrors.push(err84);\n }\n errors++;\n }\n for (const key3 in data41) {\n if (!(key3 === \"dseq\" || key3 === \"scope\" || key3 === \"gseq\" || key3 === \"oseq\" || key3 === \"services\")) {\n const err85 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5, schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/additionalProperties\", keyword: \"additionalProperties\", params: { additionalProperty: key3 }, message: \"must NOT have additional properties\" };\n if (vErrors === null) {\n vErrors = [err85];\n } else {\n vErrors.push(err85);\n }\n errors++;\n }\n }\n if (data41.gseq !== void 0) {\n if (data41.dseq === void 0) {\n const err86 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5, schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/dependencies\", keyword: \"dependencies\", params: {\n property: \"gseq\",\n missingProperty: \"dseq\",\n depsCount: 1,\n deps: \"dseq\"\n }, message: \"must have property dseq when property gseq is present\" };\n if (vErrors === null) {\n vErrors = [err86];\n } else {\n vErrors.push(err86);\n }\n errors++;\n }\n }\n if (data41.oseq !== void 0) {\n if (data41.dseq === void 0) {\n const err87 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5, schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/dependencies\", keyword: \"dependencies\", params: {\n property: \"oseq\",\n missingProperty: \"dseq\",\n depsCount: 2,\n deps: \"dseq, gseq\"\n }, message: \"must have properties dseq, gseq when property oseq is present\" };\n if (vErrors === null) {\n vErrors = [err87];\n } else {\n vErrors.push(err87);\n }\n errors++;\n }\n if (data41.gseq === void 0) {\n const err88 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5, schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/dependencies\", keyword: \"dependencies\", params: {\n property: \"oseq\",\n missingProperty: \"gseq\",\n depsCount: 2,\n deps: \"dseq, gseq\"\n }, message: \"must have properties dseq, gseq when property oseq is present\" };\n if (vErrors === null) {\n vErrors = [err88];\n } else {\n vErrors.push(err88);\n }\n errors++;\n }\n }\n if (data41.services !== void 0) {\n if (data41.dseq === void 0) {\n const err89 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5, schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/dependencies\", keyword: \"dependencies\", params: {\n property: \"services\",\n missingProperty: \"dseq\",\n depsCount: 1,\n deps: \"dseq\"\n }, message: \"must have property dseq when property services is present\" };\n if (vErrors === null) {\n vErrors = [err89];\n } else {\n vErrors.push(err89);\n }\n errors++;\n }\n }\n if (data41.dseq !== void 0) {\n let data42 = data41.dseq;\n if (!(typeof data42 == \"number\" && (!(data42 % 1) && !isNaN(data42)))) {\n const err90 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/dseq\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/dseq/type\", keyword: \"type\", params: { type: \"integer\" }, message: \"must be integer\" };\n if (vErrors === null) {\n vErrors = [err90];\n } else {\n vErrors.push(err90);\n }\n errors++;\n }\n if (typeof data42 == \"number\") {\n if (data42 < 1 || isNaN(data42)) {\n const err91 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/dseq\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/dseq/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 1 }, message: \"must be >= 1\" };\n if (vErrors === null) {\n vErrors = [err91];\n } else {\n vErrors.push(err91);\n }\n errors++;\n }\n }\n }\n if (data41.scope !== void 0) {\n let data43 = data41.scope;\n if (Array.isArray(data43)) {\n if (data43.length < 1) {\n const err92 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/scope\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/scope/minItems\", keyword: \"minItems\", params: { limit: 1 }, message: \"must NOT have fewer than 1 items\" };\n if (vErrors === null) {\n vErrors = [err92];\n } else {\n vErrors.push(err92);\n }\n errors++;\n }\n const len4 = data43.length;\n for (let i6 = 0; i6 < len4; i6++) {\n let data44 = data43[i6];\n if (typeof data44 !== \"string\") {\n const err93 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/scope/\" + i6, schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/scope/items/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err93];\n } else {\n vErrors.push(err93);\n }\n errors++;\n }\n if (!(data44 === \"send-manifest\" || data44 === \"get-manifest\" || data44 === \"logs\" || data44 === \"shell\" || data44 === \"events\" || data44 === \"status\" || data44 === \"restart\" || data44 === \"hostname-migrate\" || data44 === \"ip-migrate\")) {\n const err94 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/scope/\" + i6, schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/scope/items/enum\", keyword: \"enum\", params: { allowedValues: schema11.properties.leases.properties.permissions.items.properties.deployments.items.properties.scope.items.enum }, message: \"must be equal to one of the allowed values\" };\n if (vErrors === null) {\n vErrors = [err94];\n } else {\n vErrors.push(err94);\n }\n errors++;\n }\n }\n let i7 = data43.length;\n let j2;\n if (i7 > 1) {\n const indices2 = {};\n for (; i7--; ) {\n let item2 = data43[i7];\n if (typeof item2 !== \"string\") {\n continue;\n }\n if (typeof indices2[item2] == \"number\") {\n j2 = indices2[item2];\n const err95 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/scope\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/scope/uniqueItems\", keyword: \"uniqueItems\", params: { i: i7, j: j2 }, message: \"must NOT have duplicate items (items ## \" + j2 + \" and \" + i7 + \" are identical)\" };\n if (vErrors === null) {\n vErrors = [err95];\n } else {\n vErrors.push(err95);\n }\n errors++;\n break;\n }\n indices2[item2] = i7;\n }\n }\n } else {\n const err96 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/scope\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/scope/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err96];\n } else {\n vErrors.push(err96);\n }\n errors++;\n }\n }\n if (data41.gseq !== void 0) {\n let data45 = data41.gseq;\n if (!(typeof data45 == \"number\" && (!(data45 % 1) && !isNaN(data45)))) {\n const err97 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/gseq\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/gseq/type\", keyword: \"type\", params: { type: \"integer\" }, message: \"must be integer\" };\n if (vErrors === null) {\n vErrors = [err97];\n } else {\n vErrors.push(err97);\n }\n errors++;\n }\n if (typeof data45 == \"number\") {\n if (data45 < 0 || isNaN(data45)) {\n const err98 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/gseq\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/gseq/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 0 }, message: \"must be >= 0\" };\n if (vErrors === null) {\n vErrors = [err98];\n } else {\n vErrors.push(err98);\n }\n errors++;\n }\n }\n }\n if (data41.oseq !== void 0) {\n let data46 = data41.oseq;\n if (!(typeof data46 == \"number\" && (!(data46 % 1) && !isNaN(data46)))) {\n const err99 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/oseq\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/oseq/type\", keyword: \"type\", params: { type: \"integer\" }, message: \"must be integer\" };\n if (vErrors === null) {\n vErrors = [err99];\n } else {\n vErrors.push(err99);\n }\n errors++;\n }\n if (typeof data46 == \"number\") {\n if (data46 < 0 || isNaN(data46)) {\n const err100 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/oseq\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/oseq/minimum\", keyword: \"minimum\", params: { comparison: \">=\", limit: 0 }, message: \"must be >= 0\" };\n if (vErrors === null) {\n vErrors = [err100];\n } else {\n vErrors.push(err100);\n }\n errors++;\n }\n }\n }\n if (data41.services !== void 0) {\n let data47 = data41.services;\n if (Array.isArray(data47)) {\n if (data47.length < 1) {\n const err101 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/services\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/services/minItems\", keyword: \"minItems\", params: { limit: 1 }, message: \"must NOT have fewer than 1 items\" };\n if (vErrors === null) {\n vErrors = [err101];\n } else {\n vErrors.push(err101);\n }\n errors++;\n }\n const len5 = data47.length;\n for (let i8 = 0; i8 < len5; i8++) {\n let data48 = data47[i8];\n if (typeof data48 === \"string\") {\n if (func2(data48) < 1) {\n const err102 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/services/\" + i8, schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/services/items/minLength\", keyword: \"minLength\", params: { limit: 1 }, message: \"must NOT have fewer than 1 characters\" };\n if (vErrors === null) {\n vErrors = [err102];\n } else {\n vErrors.push(err102);\n }\n errors++;\n }\n } else {\n const err103 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/services/\" + i8, schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/services/items/type\", keyword: \"type\", params: { type: \"string\" }, message: \"must be string\" };\n if (vErrors === null) {\n vErrors = [err103];\n } else {\n vErrors.push(err103);\n }\n errors++;\n }\n }\n let i9 = data47.length;\n let j3;\n if (i9 > 1) {\n const indices3 = {};\n for (; i9--; ) {\n let item3 = data47[i9];\n if (typeof item3 !== \"string\") {\n continue;\n }\n if (typeof indices3[item3] == \"number\") {\n j3 = indices3[item3];\n const err104 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/services\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/services/uniqueItems\", keyword: \"uniqueItems\", params: { i: i9, j: j3 }, message: \"must NOT have duplicate items (items ## \" + j3 + \" and \" + i9 + \" are identical)\" };\n if (vErrors === null) {\n vErrors = [err104];\n } else {\n vErrors.push(err104);\n }\n errors++;\n break;\n }\n indices3[item3] = i9;\n }\n }\n } else {\n const err105 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5 + \"/services\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/properties/services/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err105];\n } else {\n vErrors.push(err105);\n }\n errors++;\n }\n }\n } else {\n const err106 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments/\" + i5, schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/items/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err106];\n } else {\n vErrors.push(err106);\n }\n errors++;\n }\n }\n } else {\n const err107 = { instancePath: instancePath + \"/leases/permissions/\" + i2 + \"/deployments\", schemaPath: \"#/properties/leases/properties/permissions/items/properties/deployments/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err107];\n } else {\n vErrors.push(err107);\n }\n errors++;\n }\n }\n } else {\n const err108 = { instancePath: instancePath + \"/leases/permissions/\" + i2, schemaPath: \"#/properties/leases/properties/permissions/items/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err108];\n } else {\n vErrors.push(err108);\n }\n errors++;\n }\n }\n } else {\n const err109 = { instancePath: instancePath + \"/leases/permissions\", schemaPath: \"#/properties/leases/properties/permissions/type\", keyword: \"type\", params: { type: \"array\" }, message: \"must be array\" };\n if (vErrors === null) {\n vErrors = [err109];\n } else {\n vErrors.push(err109);\n }\n errors++;\n }\n }\n } else {\n const err110 = { instancePath: instancePath + \"/leases\", schemaPath: \"#/properties/leases/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err110];\n } else {\n vErrors.push(err110);\n }\n errors++;\n }\n }\n } else {\n const err111 = { instancePath, schemaPath: \"#/type\", keyword: \"type\", params: { type: \"object\" }, message: \"must be object\" };\n if (vErrors === null) {\n vErrors = [err111];\n } else {\n vErrors.push(err111);\n }\n errors++;\n }\n validate10.errors = vErrors;\n return errors === 0;\n}\nvar schema = schema11;\nexport {\n stdin_default as default,\n schema,\n validate\n};\n", "import { humanizeErrors, type ValidationFunction } from \"../../../../utils/jsonSchemaValidation.ts\";\nimport { base64Decode } from \"./base64.ts\";\nimport type { AnyRecord, JwtTokenPayload } from \"./types.ts\";\nimport { schema as jwtPayloadSchema, validate as validatePayload } from \"./validateJwtPayload.ts\";\n\nexport interface JwtValidationResult {\n isValid: boolean;\n errors: string[];\n decodedToken?: {\n header: AnyRecord;\n payload: AnyRecord;\n signature: string;\n };\n}\n\nexport class JwtValidator {\n /**\n * Validate a JWT token against the Akash JWT schema\n * @param token The JWT token to validate\n * @returns Validation result with errors if any\n */\n validateToken(token: string | JwtTokenPayload): JwtValidationResult {\n const result: JwtValidationResult = {\n isValid: false,\n errors: [],\n };\n\n try {\n // Check for empty or null input\n if (typeof token === \"string\" && !token.trim()) {\n result.errors.push(\"Error validating token: Empty token provided\");\n return result;\n } else if (typeof token !== \"string\" && (!token || Object.keys(token).length === 0)) {\n result.errors.push(\"Error validating token: Empty payload provided\");\n return result;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let payload: Record<string, any>;\n\n if (typeof token === \"string\") {\n const parts = token.split(\".\", 3);\n if (parts.length !== 3) {\n result.errors.push(\"Error validating token: Invalid token format\");\n return result;\n }\n\n const [headerB64, payloadB64, signature] = parts;\n\n const header = base64Decode(headerB64);\n payload = base64Decode(payloadB64);\n\n result.decodedToken = {\n header,\n payload,\n signature,\n };\n\n // Validate header\n if (!header.alg) {\n result.errors.push(\"Missing required field in header: alg\");\n return result;\n }\n } else {\n payload = token;\n }\n\n // Validate payload with the schema\n let valid = validatePayload(payload);\n\n if (!valid) {\n result.errors = humanizeErrors((validatePayload as ValidationFunction).errors, jwtPayloadSchema).map((error) => error.message);\n }\n\n // Additional validation for granular access\n if (payload.leases?.access === \"granular\") {\n if (!payload.leases?.permissions) {\n result.errors.push(\"Missing required field: permissions\");\n valid = false;\n } else {\n // Check for duplicate providers\n const providers = new Set<string>();\n for (const perm of payload.leases.permissions) {\n if (providers.has(perm.provider)) {\n result.errors.push(\"Duplicate provider in permissions\");\n valid = false;\n break;\n }\n providers.add(perm.provider);\n }\n\n for (const perm of payload.leases.permissions) {\n // Validate access type specific rules\n if (perm.access === \"scoped\") {\n if (!perm.scope) {\n result.errors.push(\"Missing required field: scope for scoped access\");\n valid = false;\n } else if (perm.deployments) {\n result.errors.push(\"Deployments not allowed for scoped access\");\n valid = false;\n }\n } else if (perm.access === \"granular\") {\n if (!perm.deployments) {\n result.errors.push(\"Missing required field: deployments for granular access\");\n valid = false;\n } else if (perm.scope) {\n result.errors.push(\"Scope not allowed for granular access\");\n valid = false;\n }\n }\n\n // Check for duplicate services and validate deployment dependencies\n if (perm.deployments) {\n for (const deployment of perm.deployments) {\n if (!this.validateDeployment(deployment, result)) {\n valid = false;\n }\n }\n }\n }\n }\n } else if (payload.leases?.access === \"full\" && payload.leases?.permissions) {\n result.errors.push(\"Permissions not allowed for full access\");\n valid = false;\n }\n\n result.isValid = result.errors.length === 0;\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : String(error);\n result.errors.push(`Error during JWT validation: ${errorMessage}`);\n }\n\n return result;\n }\n\n /**\n * Validates deployment structure and dependencies\n * @param deployment The deployment to validate\n * @param result The validation result to update\n * @returns Whether the validation passed\n */\n private validateDeployment(deployment: AnyRecord, result: JwtValidationResult): boolean {\n let valid = true;\n\n // Validate deployment dependencies\n if (deployment.gseq && !deployment.dseq) {\n result.errors.push(\"gseq requires dseq\");\n valid = false;\n }\n if (deployment.oseq && (!deployment.dseq || !deployment.gseq)) {\n result.errors.push(\"oseq requires dseq and gseq\");\n valid = false;\n }\n if (deployment.dseq && !deployment.services) {\n result.errors.push(\"services required when dseq is present\");\n valid = false;\n }\n if (deployment.services && !deployment.dseq) {\n result.errors.push(\"services requires dseq\");\n valid = false;\n }\n\n return valid;\n }\n}\n", "import type { OfflineAminoSigner } from \"@cosmjs/amino\";\nimport { default as stableStringify } from \"json-stable-stringify\";\n\nimport { base64UrlDecode, base64UrlEncode, toBase64Url } from \"./base64.ts\";\nimport { JwtValidator } from \"./jwt-validator.ts\";\nimport type { JwtTokenPayload } from \"./types.ts\";\nimport type { OfflineDataSigner } from \"./wallet-utils.ts\";\nimport { createOfflineDataSigner } from \"./wallet-utils.ts\";\n\nexport class JwtTokenManager {\n private readonly validator: JwtValidator;\n private readonly signer: OfflineDataSigner;\n\n constructor(signer: OfflineDataSigner | OfflineAminoSigner) {\n this.validator = new JwtValidator();\n this.signer = \"signAmino\" in signer ? createOfflineDataSigner(signer) : signer;\n }\n\n /**\n * Creates a new JWT token with ES256K signature using a custom signArbitrary method with the current wallet\n * @param options - JWT token options\n * @returns The signed JWT token\n * @example\n * const wallet = await Secp256k1HdWallet.fromMnemonic(jwtMnemonic, {\n * prefix: \"akash\"\n * });\n * const jwtToken = new JwtTokenManager(wallet);\n * // OR ON FRONTEND\n * const wallet = useSelectedChain();\n * const jwt = new JwtTokenManager(wallet);\n * const token = await jwtToken.generateToken({\n * version: \"v1\",\n * iss: wallet.address, // akash1...\n * exp: Math.floor(Date.now() / 1000) + 3600, // 1 hour from now\n * iat: Math.floor(Date.now() / 1000), // current timestamp\n * });\n * console.log(token);\n */\n async generateToken(options: CreateJWTOptions): Promise<string> {\n const now = Math.floor(Date.now() / 1000);\n const inputPayload: JwtTokenPayload = {\n iss: options.iss,\n exp: options.exp ? options.exp : now + 3600, // Default to 1 hour expiration\n nbf: options.nbf || now,\n iat: options.iat || now,\n version: options.version,\n leases: options.leases || { access: \"full\" },\n };\n if (options.jti) inputPayload.jti = options.jti;\n\n const validationResult = this.validatePayload(inputPayload);\n if (!validationResult.isValid) {\n throw new Error(`Invalid payload: ${validationResult.errors?.join(\", \")}`);\n }\n\n const header = base64UrlEncode(stableStringify({ alg: this.signer.algorithm || \"ES256KADR36\", typ: \"JWT\" })!);\n const stringPayload = base64UrlEncode(stableStringify(inputPayload)!);\n const { signature } = await this.signer.signArbitrary(options.iss, `${header}.${stringPayload}`);\n const token = `${header}.${stringPayload}.${toBase64Url(signature)}`;\n\n return token;\n }\n\n /**\n * Decodes a JWT token\n * @param token - The JWT token to decode\n * @returns The decoded JWT payload\n * @throws Error if the token is malformed\n */\n decodeToken(token: string): JwtTokenPayload {\n const parts = token.split(\".\");\n if (parts.length !== 3) {\n throw new Error(\"Invalid JWT format\");\n }\n\n try {\n const [, payload] = parts;\n const json = base64UrlDecode(payload);\n return JSON.parse(json);\n } catch (error) {\n throw new Error(\"Failed to decode JWT token\", { cause: error });\n }\n }\n\n /**\n * Validates a JWT payload against the schema and time-based constraints\n * @param payload - The JWT payload to validate\n * @returns A boolean indicating whether the payload is valid\n */\n public validatePayload(payload: JwtTokenPayload): { isValid: boolean; errors?: string[] } {\n const result = this.validator.validateToken(payload);\n if (!result.isValid) {\n return { isValid: false, errors: result.errors };\n }\n\n const now = Math.floor(Date.now() / 1000);\n const errors: string[] = [];\n\n if (payload.exp <= now) {\n errors.push(\"Token has expired\");\n }\n\n if (payload.nbf > now) {\n errors.push(\"Token is not yet valid (nbf check failed)\");\n }\n\n return {\n isValid: errors.length === 0,\n errors: errors.length > 0 ? errors : undefined,\n };\n }\n}\n\nexport interface CreateJWTOptions extends Partial<Omit<JwtTokenPayload, \"iss\" | \"version\">> {\n version: JwtTokenPayload[\"version\"];\n iss: JwtTokenPayload[\"iss\"];\n}\n", "import { type OfflineAminoSigner, type StdSignature } from \"@cosmjs/amino\";\n\nimport { base64Encode } from \"./base64.ts\";\n\nexport interface OfflineDataSigner {\n /**\n * The algorithm used to sign the data.\n * @default \"ES256KADR36\"\n */\n algorithm?: \"ES256KADR36\" | \"ES256K\";\n signArbitrary: (signer: string, data: string | Uint8Array) => Promise<StdSignature>;\n}\n\nexport function createOfflineDataSigner(wallet: OfflineAminoSigner): OfflineDataSigner {\n return {\n algorithm: \"ES256KADR36\",\n async signArbitrary(signer, data) {\n const { signature } = await wallet.signAmino(signer, {\n chain_id: \"\",\n account_number: \"0\",\n sequence: \"0\",\n fee: {\n gas: \"0\",\n amount: [],\n },\n msgs: [\n {\n type: \"sign/MsgSignData\",\n value: {\n signer,\n data: base64Encode(data),\n },\n },\n ],\n memo: \"\",\n });\n return signature;\n },\n };\n}\n", "import type { ServiceLoader } from \"./createServiceLoader.ts\";\nimport type { ServiceDesc } from \"./types.ts\";\n\nconst SDK_METHOD_METADATA = new Map<SDKMethod, SDKMethodMetadata>();\nexport function withMetadata<T extends SDKMethod>(fn: T, metadata: SDKMethodMetadata): T {\n SDK_METHOD_METADATA.set(fn, metadata);\n return fn;\n}\n\nexport function getMetadata(fn: SDKMethod): SDKMethodMetadata | undefined {\n return SDK_METHOD_METADATA.get(fn);\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type SDKMethod = (input: any, options?: any) => Promise<any>;\n\ninterface SDKMethodMetadata {\n /**\n * The path to the method in the service loader.\n * 1st number is the index of the service and the 2nd is the local name of the method.\n */\n path: [number, string];\n\n serviceLoader: ServiceLoader<ReadonlyArray<() => Promise<ServiceDesc>>>;\n}\n", "import { getMetadata, type SDKMethod } from \"../client/sdkMetadata.ts\";\nimport type { TxClient, TxSignAndBroadcastOptions } from \"../transport/tx/TxClient.ts\";\n\nexport function msg<T extends SDKMethod>(tx: T, ...args: [Parameters<T>[0]]): TxMessage<T>;\nexport function msg<T extends SDKMethod>(tx: T, data?: Parameters<T>[0]): TxMessage<T> {\n return {\n tx,\n data,\n };\n}\n\n/**\n * Representation of a transaction message, containing the SDK transaction method and its input.\n */\nexport type TxMessage<T extends SDKMethod = SDKMethod> = {\n tx: T;\n data: Parameters<T>[0];\n};\n\nexport const SIGNER_KEY = Symbol(\"signer\");\n\nexport async function transaction(sdk: { [SIGNER_KEY]?: TxClient }, messages: TxMessage[], options?: TxSignAndBroadcastOptions) {\n const signer = sdk[SIGNER_KEY];\n\n if (!signer) {\n throw new Error(\"Transaction signer is not available in the SDK instance\");\n }\n\n const encodedObjects = await Promise.all(messages.map(async (msg) => {\n const meta = getMetadata(msg.tx);\n if (!meta) {\n throw new Error(`No metadata found for method SDK method ${msg.tx.name}`);\n }\n\n const serviceDesc = await meta.serviceLoader.loadAt(meta.path[0]);\n const method = serviceDesc.methods[meta.path[1]];\n\n if (!method) {\n throw new Error(`No method found at path [${meta.path[0]}, ${meta.path[1]}] in \"${serviceDesc.typeName}\"`);\n }\n\n return {\n typeUrl: `/${method.input.$type}`,\n value: method.input.fromPartial(msg.data ?? {}),\n };\n }));\n\n return await signer.signAndBroadcast(encodedObjects, options);\n}\n", "import type { BinaryReader, BinaryWriter } from \"@bufbuild/protobuf/wire\";\n\nimport type { MessageDesc, MessageInitShape, MessageShape, ServiceDesc } from \"./types.ts\";\n\ntype LoadGrpcService = () => unknown;\n\n/**\n * Loads a service and registers its methods input and output message types.\n */\nexport function createServiceLoader<T extends ReadonlyArray<LoadGrpcService>>(fns: T): ServiceLoader<T> {\n const loadedTypes: Record<string, GRPCMessageType> = {};\n return {\n getLoadedType(typeUrl) {\n return loadedTypes[typeUrl];\n },\n async loadAt(index) {\n const service = await fns[index]() as ServiceDesc;\n Object.values(service.methods).forEach((method) => {\n loadedTypes[`/${method.input.$type}`] = createMessageType(method.input);\n loadedTypes[`/${method.output.$type}`] = createMessageType(method.output);\n });\n\n return service;\n },\n } as ServiceLoader<T>;\n}\n\n/**\n * Create a message type for a given protobuf schema.\n * @param schema - The protobuf schema to create a message type for.\n * @returns A message type for the given protobuf schema.\n */\nexport function createMessageType<T extends MessageDesc>({ $type, ...schema }: T): GRPCMessageType<T> {\n return {\n typeUrl: `/${$type}`,\n ...schema,\n } as GRPCMessageType<T>;\n}\nexport interface GRPCMessageType<T extends MessageDesc = MessageDesc> {\n typeUrl: string;\n encode(message: MessageShape<T> | MessageInitShape<T>, writer?: BinaryWriter): BinaryWriter;\n decode(input: Uint8Array | BinaryReader, length?: number): MessageShape<T>;\n fromPartial(message: MessageInitShape<T>): MessageShape<T>;\n}\n\nexport interface ServiceLoader<T extends ReadonlyArray<LoadGrpcService>> {\n loadAt<TIndex extends keyof T & number>(index: TIndex): ReturnType<T[TIndex]>;\n getLoadedType(typeUrl: string): GRPCMessageType | undefined;\n}\n", "import type { CallOptions, StreamResponse } from \"../transport/types.ts\";\nimport type { MessageDesc, MessageShape, MethodDesc } from \"./types.ts\";\n\nexport { createAsyncIterable } from \"@connectrpc/connect/protocol\";\n\nexport function handleStreamResponse<I extends MessageDesc, O extends MessageDesc>(\n method: MethodDesc<\"server_streaming\" | \"client_streaming\" | \"bidi_streaming\", I, O>,\n stream: Promise<StreamResponse<I, O>>,\n options?: CallOptions,\n transform?: (schema: MessageDesc, value: MessageShape<O>) => MessageShape<O>,\n): AsyncIterable<MessageShape<O>> {\n const it = (async function* () {\n const response = await stream;\n options?.onHeader?.(response.header);\n yield * response.message;\n options?.onTrailer?.(response.trailer);\n })();\n\n return transform ? mapStream(it, (value) => transform(method.output, value) as MessageShape<O>) : it;\n}\n\nexport function mapStream<T, U>(stream: AsyncIterable<T>, transform: (value: T) => U): AsyncIterable<U> {\n function mapIteratorResult(result: IteratorResult<T>) {\n if (result.done === true) {\n return result;\n }\n return {\n done: result.done,\n value: transform(result.value),\n };\n }\n\n return {\n [Symbol.asyncIterator]: () => {\n const it = stream[Symbol.asyncIterator]();\n const mappedIterator: AsyncIterator<U> = {\n next: () => it.next().then(mapIteratorResult),\n };\n\n if (it.throw !== undefined) {\n mappedIterator.throw = (e: unknown) =>\n (it as Required<typeof it>).throw(e).then(mapIteratorResult);\n }\n if (it.return !== undefined) {\n mappedIterator.return = (v: unknown) =>\n (it as Required<typeof it>).return(v).then(mapIteratorResult);\n }\n\n return mappedIterator;\n },\n };\n}\n", "import type { CallOptions, Transport } from \"../transport/types.ts\";\nimport { createAsyncIterable, handleStreamResponse } from \"./stream.ts\";\nimport type { MessageDesc, MessageInitShape, MessageShape, MethodDesc, ServiceDesc } from \"./types.ts\";\n\nexport type Client<Desc extends ServiceDesc, TCallOptions> = {\n [P in keyof Desc[\"methods\"]]:\n Desc[\"methods\"][P] extends MethodDesc<\"server_streaming\"> ? (input: MessageInitShape<Desc[\"methods\"][P][\"input\"]>, options?: TCallOptions) => AsyncIterable<MessageShape<Desc[\"methods\"][P][\"output\"]>>\n : Desc[\"methods\"][P] extends MethodDesc<\"client_streaming\"> ? (input: AsyncIterable<MessageInitShape<Desc[\"methods\"][P][\"input\"]>>, options?: TCallOptions) => Promise<MessageShape<Desc[\"methods\"][P][\"output\"]>>\n : Desc[\"methods\"][P] extends MethodDesc<\"bidi_streaming\"> ? (input: AsyncIterable<MessageInitShape<Desc[\"methods\"][P][\"input\"]>>, options?: TCallOptions) => AsyncIterable<MessageShape<Desc[\"methods\"][P][\"output\"]>>\n : Desc[\"methods\"][P] extends MethodDesc<\"unary\"> | Omit<MethodDesc<\"unary\">, \"kind\"> ? (input: MessageInitShape<Desc[\"methods\"][P][\"input\"]>, options?: TCallOptions) => Promise<MessageShape<Desc[\"methods\"][P][\"output\"]>>\n : never;\n};\n\nexport function createServiceClient<TSchema extends ServiceDesc, TCallOptions>(\n service: TSchema,\n transport: Transport<TCallOptions>,\n): Client<TSchema, TCallOptions> {\n const client: Record<string, ReturnType<typeof createMethod>> = {};\n const methodNames = Object.keys(service.methods);\n for (let i = 0; i < methodNames.length; i++) {\n const methodDesc = service.methods[methodNames[i]];\n client[methodNames[i]] = createMethod(methodDesc as MethodDesc, transport);\n }\n\n return client as Client<TSchema, TCallOptions>;\n}\n\nfunction createMethod(methodDesc: MethodDesc, transport: Transport) {\n switch (methodDesc.kind) {\n case \"server_streaming\":\n return createServerStreamingFn(transport, methodDesc as MethodDesc<\"server_streaming\", MessageDesc, MessageDesc>);\n case \"client_streaming\":\n return createClientStreamingFn(transport, methodDesc as MethodDesc<\"client_streaming\", MessageDesc, MessageDesc>);\n case \"bidi_streaming\":\n return createBiDiStreamingFn(transport, methodDesc as MethodDesc<\"bidi_streaming\", MessageDesc, MessageDesc>);\n default:\n return createUnaryFn(transport, methodDesc as MethodDesc<\"unary\", MessageDesc, MessageDesc>);\n }\n}\n\ntype UnaryFn<I extends MessageDesc<unknown>, O extends MessageDesc<unknown>> = (\n input: MessageInitShape<I>,\n options?: CallOptions,\n) => Promise<MessageShape<O>>;\n\nfunction createUnaryFn<I extends MessageDesc<unknown>, O extends MessageDesc<unknown>>(\n transport: Transport,\n method: MethodDesc<\"unary\", I, O>,\n): UnaryFn<I, O> {\n return async (input, options) => {\n const response = await transport.unary(\n method,\n input,\n options,\n );\n options?.onHeader?.(response.header);\n options?.onTrailer?.(response.trailer);\n\n return response.message;\n };\n}\n\ntype ServerStreamingFn<I extends MessageDesc, O extends MessageDesc> = (\n input: MessageInitShape<I>,\n options?: CallOptions,\n) => AsyncIterable<MessageShape<O>>;\n\nfunction createServerStreamingFn<\n I extends MessageDesc,\n O extends MessageDesc,\n>(\n transport: Transport,\n method: MethodDesc<\"server_streaming\", I, O>,\n): ServerStreamingFn<I, O> {\n return (input, options) => {\n return handleStreamResponse(\n method,\n transport.stream(\n method,\n createAsyncIterable([input]),\n options,\n ),\n options,\n );\n };\n}\n\ntype ClientStreamingFn<I extends MessageDesc, O extends MessageDesc> = (\n input: AsyncIterable<MessageInitShape<I>>,\n options?: CallOptions,\n) => Promise<MessageShape<O>>;\n\nfunction createClientStreamingFn<\n I extends MessageDesc,\n O extends MessageDesc,\n>(\n transport: Transport,\n method: MethodDesc<\"client_streaming\", I, O>,\n): ClientStreamingFn<I, O> {\n return async (input, options) => {\n const response = await transport.stream(\n method,\n input,\n options,\n );\n options?.onHeader?.(response.header);\n let singleMessage: MessageShape<O> | undefined;\n let count = 0;\n for await (const message of response.message) {\n singleMessage = message;\n count++;\n }\n if (!singleMessage) {\n throw new Error(\"akash sdk protocol error: missing response message\");\n }\n if (count > 1) {\n throw new Error(\"akash sdk protocol error: received extra messages for client streaming method\");\n }\n options?.onTrailer?.(response.trailer);\n return singleMessage;\n };\n}\n\ntype BiDiStreamingFn<I extends MessageDesc, O extends MessageDesc> = (\n input: AsyncIterable<MessageInitShape<I>>,\n options?: CallOptions,\n) => AsyncIterable<MessageShape<O>>;\n\nfunction createBiDiStreamingFn<\n I extends MessageDesc,\n O extends MessageDesc,\n>(\n transport: Transport,\n method: MethodDesc<\"bidi_streaming\", I, O>,\n): BiDiStreamingFn<I, O> {\n return (input, options) => {\n return handleStreamResponse(\n method,\n transport.stream(\n method,\n input,\n options,\n ),\n options,\n );\n };\n}\n", "import type { Transport } from \"../transport/types.ts\";\nimport type { Client } from \"./createServiceClient.ts\";\nimport { createServiceClient } from \"./createServiceClient.ts\";\nimport type { ServiceDesc } from \"./types.ts\";\n\nexport function createClientFactory<TCallOptions>(transport: Transport<TCallOptions>): ClientFactory<TCallOptions> {\n const services: Record<string, Client<ServiceDesc, TCallOptions>> = Object.create(null);\n\n return function getClient<T extends ServiceDesc>(service: T): Client<T, TCallOptions> {\n if (!services[service.typeName]) {\n services[service.typeName] = createServiceClient<T, TCallOptions>(service, transport);\n }\n return services[service.typeName] as Client<T, TCallOptions>;\n };\n}\n\nexport type ClientFactory<TCallOptions> = <T extends ServiceDesc>(service: T) => Client<T, TCallOptions>;\n", "import { createServiceLoader } from \"../sdk/client/createServiceLoader.ts\";\n\nimport type * as cosmos_app_v1alpha1_query from \"./protos/cosmos/app/v1alpha1/query.ts\";\nimport type * as cosmos_auth_v1beta1_query from \"./protos/cosmos/auth/v1beta1/query.ts\";\nimport type * as cosmos_auth_v1beta1_tx from \"./protos/cosmos/auth/v1beta1/tx.ts\";\nimport type * as cosmos_authz_v1beta1_query from \"./protos/cosmos/authz/v1beta1/query.ts\";\nimport type * as cosmos_authz_v1beta1_tx from \"./protos/cosmos/authz/v1beta1/tx.ts\";\nimport type * as cosmos_autocli_v1_query from \"./protos/cosmos/autocli/v1/query.ts\";\nimport type * as cosmos_bank_v1beta1_query from \"./protos/cosmos/bank/v1beta1/query.ts\";\nimport type * as cosmos_bank_v1beta1_tx from \"./protos/cosmos/bank/v1beta1/tx.ts\";\nimport type * as tendermint_abci_types from \"./protos/tendermint/abci/types.ts\";\nimport type * as cosmos_base_node_v1beta1_query from \"./protos/cosmos/base/node/v1beta1/query.ts\";\nimport type * as cosmos_base_reflection_v1beta1_reflection from \"./protos/cosmos/base/reflection/v1beta1/reflection.ts\";\nimport type * as cosmos_base_reflection_v2alpha1_reflection from \"./protos/cosmos/base/reflection/v2alpha1/reflection.ts\";\nimport type * as cosmos_base_tendermint_v1beta1_query from \"./protos/cosmos/base/tendermint/v1beta1/query.ts\";\nimport type * as cosmos_benchmark_v1_tx from \"./protos/cosmos/benchmark/v1/tx.ts\";\nimport type * as cosmos_circuit_v1_query from \"./protos/cosmos/circuit/v1/query.ts\";\nimport type * as cosmos_circuit_v1_tx from \"./protos/cosmos/circuit/v1/tx.ts\";\nimport type * as cosmos_consensus_v1_query from \"./protos/cosmos/consensus/v1/query.ts\";\nimport type * as cosmos_consensus_v1_tx from \"./protos/cosmos/consensus/v1/tx.ts\";\nimport type * as cosmos_counter_v1_query from \"./protos/cosmos/counter/v1/query.ts\";\nimport type * as cosmos_counter_v1_tx from \"./protos/cosmos/counter/v1/tx.ts\";\nimport type * as cosmos_crisis_v1beta1_tx from \"./protos/cosmos/crisis/v1beta1/tx.ts\";\nimport type * as cosmos_distribution_v1beta1_query from \"./protos/cosmos/distribution/v1beta1/query.ts\";\nimport type * as cosmos_distribution_v1beta1_tx from \"./protos/cosmos/distribution/v1beta1/tx.ts\";\nimport type * as cosmos_epochs_v1beta1_query from \"./protos/cosmos/epochs/v1beta1/query.ts\";\nimport type * as cosmos_evidence_v1beta1_query from \"./protos/cosmos/evidence/v1beta1/query.ts\";\nimport type * as cosmos_evidence_v1beta1_tx from \"./protos/cosmos/evidence/v1beta1/tx.ts\";\nimport type * as cosmos_feegrant_v1beta1_query from \"./protos/cosmos/feegrant/v1beta1/query.ts\";\nimport type * as cosmos_feegrant_v1beta1_tx from \"./protos/cosmos/feegrant/v1beta1/tx.ts\";\nimport type * as cosmos_gov_v1_query from \"./protos/cosmos/gov/v1/query.ts\";\nimport type * as cosmos_gov_v1_tx from \"./protos/cosmos/gov/v1/tx.ts\";\nimport type * as cosmos_gov_v1beta1_query from \"./protos/cosmos/gov/v1beta1/query.ts\";\nimport type * as cosmos_gov_v1beta1_tx from \"./protos/cosmos/gov/v1beta1/tx.ts\";\nimport type * as cosmos_group_v1_query from \"./protos/cosmos/group/v1/query.ts\";\nimport type * as cosmos_group_v1_tx from \"./protos/cosmos/group/v1/tx.ts\";\nimport type * as cosmos_mint_v1beta1_query from \"./protos/cosmos/mint/v1beta1/query.ts\";\nimport type * as cosmos_mint_v1beta1_tx from \"./protos/cosmos/mint/v1beta1/tx.ts\";\nimport type * as cosmos_nft_v1beta1_query from \"./protos/cosmos/nft/v1beta1/query.ts\";\nimport type * as cosmos_nft_v1beta1_tx from \"./protos/cosmos/nft/v1beta1/tx.ts\";\nimport type * as cosmos_params_v1beta1_query from \"./protos/cosmos/params/v1beta1/query.ts\";\nimport type * as cosmos_protocolpool_v1_query from \"./protos/cosmos/protocolpool/v1/query.ts\";\nimport type * as cosmos_protocolpool_v1_tx from \"./protos/cosmos/protocolpool/v1/tx.ts\";\nimport type * as cosmos_reflection_v1_reflection from \"./protos/cosmos/reflection/v1/reflection.ts\";\nimport type * as cosmos_slashing_v1beta1_query from \"./protos/cosmos/slashing/v1beta1/query.ts\";\nimport type * as cosmos_slashing_v1beta1_tx from \"./protos/cosmos/slashing/v1beta1/tx.ts\";\nimport type * as cosmos_staking_v1beta1_query from \"./protos/cosmos/staking/v1beta1/query.ts\";\nimport type * as cosmos_staking_v1beta1_tx from \"./protos/cosmos/staking/v1beta1/tx.ts\";\nimport type * as cosmos_store_streaming_abci_grpc from \"./protos/cosmos/store/streaming/abci/grpc.ts\";\nimport type * as cosmos_tx_v1beta1_service from \"./protos/cosmos/tx/v1beta1/service.ts\";\nimport type * as cosmos_upgrade_v1beta1_query from \"./protos/cosmos/upgrade/v1beta1/query.ts\";\nimport type * as cosmos_upgrade_v1beta1_tx from \"./protos/cosmos/upgrade/v1beta1/tx.ts\";\nimport type * as cosmos_vesting_v1beta1_tx from \"./protos/cosmos/vesting/v1beta1/tx.ts\";\nimport { createClientFactory } from \"../sdk/client/createClientFactory.ts\";\nimport type { Transport, CallOptions, TxCallOptions } from \"../sdk/transport/types.ts\";\nimport { withMetadata } from \"../sdk/client/sdkMetadata.ts\";\nimport type { DeepPartial, DeepSimplify } from \"../encoding/typeEncodingHelpers.ts\";\n\n\nexport const serviceLoader= createServiceLoader([\n () => import(\"./protos/cosmos/app/v1alpha1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/auth/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/auth/v1beta1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/authz/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/authz/v1beta1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/autocli/v1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/bank/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/bank/v1beta1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/tendermint/abci/types_akash.ts\").then(m => m.ABCI),\n () => import(\"./protos/cosmos/base/node/v1beta1/query_akash.ts\").then(m => m.Service),\n () => import(\"./protos/cosmos/base/reflection/v1beta1/reflection_akash.ts\").then(m => m.ReflectionService),\n () => import(\"./protos/cosmos/base/reflection/v2alpha1/reflection_akash.ts\").then(m => m.ReflectionService),\n () => import(\"./protos/cosmos/base/tendermint/v1beta1/query_akash.ts\").then(m => m.Service),\n () => import(\"./protos/cosmos/benchmark/v1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/circuit/v1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/circuit/v1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/consensus/v1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/consensus/v1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/counter/v1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/counter/v1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/crisis/v1beta1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/distribution/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/distribution/v1beta1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/epochs/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/evidence/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/evidence/v1beta1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/feegrant/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/feegrant/v1beta1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/gov/v1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/gov/v1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/gov/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/gov/v1beta1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/group/v1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/group/v1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/mint/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/mint/v1beta1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/nft/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/nft/v1beta1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/params/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/protocolpool/v1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/protocolpool/v1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/reflection/v1/reflection_akash.ts\").then(m => m.ReflectionService),\n () => import(\"./protos/cosmos/slashing/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/slashing/v1beta1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/staking/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/staking/v1beta1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/store/streaming/abci/grpc_akash.ts\").then(m => m.ABCIListenerService),\n () => import(\"./protos/cosmos/tx/v1beta1/service_akash.ts\").then(m => m.Service),\n () => import(\"./protos/cosmos/upgrade/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/cosmos/upgrade/v1beta1/tx_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/cosmos/vesting/v1beta1/tx_akash.ts\").then(m => m.Msg)\n] as const);\nexport function createSDK(queryTransport: Transport, txTransport: Transport) {\n const getClient = createClientFactory<CallOptions>(queryTransport);\n const getMsgClient = createClientFactory<TxCallOptions>(txTransport);\n return {\n cosmos: {\n app: {\n v1alpha1: {\n /**\n * getConfig returns the current app config.\n * @deprecated\n */\n getConfig: withMetadata(async function getConfig(input: DeepPartial<cosmos_app_v1alpha1_query.QueryConfigRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(0);\n return getClient(service).config(input, options);\n }, { path: [0, \"config\"], serviceLoader })\n }\n },\n auth: {\n v1beta1: {\n /**\n * getAccounts returns all the existing accounts.\n *\n * When called from another module, this query might consume a high amount of\n * gas if the pagination field is incorrectly set.\n */\n getAccounts: withMetadata(async function getAccounts(input: DeepPartial<cosmos_auth_v1beta1_query.QueryAccountsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(1);\n return getClient(service).accounts(input, options);\n }, { path: [1, \"accounts\"], serviceLoader }),\n /**\n * getAccount returns account details based on address.\n */\n getAccount: withMetadata(async function getAccount(input: DeepPartial<cosmos_auth_v1beta1_query.QueryAccountRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(1);\n return getClient(service).account(input, options);\n }, { path: [1, \"account\"], serviceLoader }),\n /**\n * getAccountAddressByID returns account address based on account number.\n */\n getAccountAddressByID: withMetadata(async function getAccountAddressByID(input: DeepPartial<cosmos_auth_v1beta1_query.QueryAccountAddressByIDRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(1);\n return getClient(service).accountAddressByID(input, options);\n }, { path: [1, \"accountAddressByID\"], serviceLoader }),\n /**\n * getParams queries all parameters.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<cosmos_auth_v1beta1_query.QueryParamsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(1);\n return getClient(service).params(input, options);\n }, { path: [1, \"params\"], serviceLoader }),\n /**\n * getModuleAccounts returns all the existing module accounts.\n */\n getModuleAccounts: withMetadata(async function getModuleAccounts(input: DeepPartial<cosmos_auth_v1beta1_query.QueryModuleAccountsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(1);\n return getClient(service).moduleAccounts(input, options);\n }, { path: [1, \"moduleAccounts\"], serviceLoader }),\n /**\n * getModuleAccountByName returns the module account info by module name\n */\n getModuleAccountByName: withMetadata(async function getModuleAccountByName(input: DeepPartial<cosmos_auth_v1beta1_query.QueryModuleAccountByNameRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(1);\n return getClient(service).moduleAccountByName(input, options);\n }, { path: [1, \"moduleAccountByName\"], serviceLoader }),\n /**\n * getBech32Prefix queries bech32Prefix\n */\n getBech32Prefix: withMetadata(async function getBech32Prefix(input: DeepPartial<cosmos_auth_v1beta1_query.Bech32PrefixRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(1);\n return getClient(service).bech32Prefix(input, options);\n }, { path: [1, \"bech32Prefix\"], serviceLoader }),\n /**\n * getAddressBytesToString converts Account Address bytes to string\n */\n getAddressBytesToString: withMetadata(async function getAddressBytesToString(input: DeepPartial<cosmos_auth_v1beta1_query.AddressBytesToStringRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(1);\n return getClient(service).addressBytesToString(input, options);\n }, { path: [1, \"addressBytesToString\"], serviceLoader }),\n /**\n * getAddressStringToBytes converts Address string to bytes\n */\n getAddressStringToBytes: withMetadata(async function getAddressStringToBytes(input: DeepPartial<cosmos_auth_v1beta1_query.AddressStringToBytesRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(1);\n return getClient(service).addressStringToBytes(input, options);\n }, { path: [1, \"addressStringToBytes\"], serviceLoader }),\n /**\n * getAccountInfo queries account info which is common to all account types.\n */\n getAccountInfo: withMetadata(async function getAccountInfo(input: DeepPartial<cosmos_auth_v1beta1_query.QueryAccountInfoRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(1);\n return getClient(service).accountInfo(input, options);\n }, { path: [1, \"accountInfo\"], serviceLoader }),\n /**\n * updateParams defines a (governance) operation for updating the x/auth module\n * parameters. The authority defaults to the x/gov module account.\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<cosmos_auth_v1beta1_tx.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(2);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [2, \"updateParams\"], serviceLoader })\n }\n },\n authz: {\n v1beta1: {\n /**\n * Returns list of `Authorization`, granted to the grantee by the granter.\n */\n getGrants: withMetadata(async function getGrants(input: DeepPartial<cosmos_authz_v1beta1_query.QueryGrantsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(3);\n return getClient(service).grants(input, options);\n }, { path: [3, \"grants\"], serviceLoader }),\n /**\n * getGranterGrants returns list of `GrantAuthorization`, granted by granter.\n */\n getGranterGrants: withMetadata(async function getGranterGrants(input: DeepPartial<cosmos_authz_v1beta1_query.QueryGranterGrantsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(3);\n return getClient(service).granterGrants(input, options);\n }, { path: [3, \"granterGrants\"], serviceLoader }),\n /**\n * getGranteeGrants returns a list of `GrantAuthorization` by grantee.\n */\n getGranteeGrants: withMetadata(async function getGranteeGrants(input: DeepPartial<cosmos_authz_v1beta1_query.QueryGranteeGrantsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(3);\n return getClient(service).granteeGrants(input, options);\n }, { path: [3, \"granteeGrants\"], serviceLoader }),\n /**\n * grant grants the provided authorization to the grantee on the granter's\n * account with the provided expiration time. If there is already a grant\n * for the given (granter, grantee, Authorization) triple, then the grant\n * will be overwritten.\n */\n grant: withMetadata(async function grant(input: DeepSimplify<cosmos_authz_v1beta1_tx.MsgGrant>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(4);\n return getMsgClient(service).grant(input, options);\n }, { path: [4, \"grant\"], serviceLoader }),\n /**\n * exec attempts to execute the provided messages using\n * authorizations granted to the grantee. Each message should have only\n * one signer corresponding to the granter of the authorization.\n */\n exec: withMetadata(async function exec(input: DeepSimplify<cosmos_authz_v1beta1_tx.MsgExec>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(4);\n return getMsgClient(service).exec(input, options);\n }, { path: [4, \"exec\"], serviceLoader }),\n /**\n * revoke revokes any authorization corresponding to the provided method name on the\n * granter's account that has been granted to the grantee.\n */\n revoke: withMetadata(async function revoke(input: DeepSimplify<cosmos_authz_v1beta1_tx.MsgRevoke>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(4);\n return getMsgClient(service).revoke(input, options);\n }, { path: [4, \"revoke\"], serviceLoader })\n }\n },\n autocli: {\n v1: {\n /**\n * getAppOptions returns the autocli options for all of the modules in an app.\n */\n getAppOptions: withMetadata(async function getAppOptions(input: DeepPartial<cosmos_autocli_v1_query.AppOptionsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(5);\n return getClient(service).appOptions(input, options);\n }, { path: [5, \"appOptions\"], serviceLoader })\n }\n },\n bank: {\n v1beta1: {\n /**\n * getBalance queries the balance of a single coin for a single account.\n */\n getBalance: withMetadata(async function getBalance(input: DeepPartial<cosmos_bank_v1beta1_query.QueryBalanceRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).balance(input, options);\n }, { path: [6, \"balance\"], serviceLoader }),\n /**\n * getAllBalances queries the balance of all coins for a single account.\n *\n * When called from another module, this query might consume a high amount of\n * gas if the pagination field is incorrectly set.\n */\n getAllBalances: withMetadata(async function getAllBalances(input: DeepPartial<cosmos_bank_v1beta1_query.QueryAllBalancesRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).allBalances(input, options);\n }, { path: [6, \"allBalances\"], serviceLoader }),\n /**\n * getSpendableBalances queries the spendable balance of all coins for a single\n * account.\n *\n * When called from another module, this query might consume a high amount of\n * gas if the pagination field is incorrectly set.\n */\n getSpendableBalances: withMetadata(async function getSpendableBalances(input: DeepPartial<cosmos_bank_v1beta1_query.QuerySpendableBalancesRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).spendableBalances(input, options);\n }, { path: [6, \"spendableBalances\"], serviceLoader }),\n /**\n * getSpendableBalanceByDenom queries the spendable balance of a single denom for\n * a single account.\n *\n * When called from another module, this query might consume a high amount of\n * gas if the pagination field is incorrectly set.\n */\n getSpendableBalanceByDenom: withMetadata(async function getSpendableBalanceByDenom(input: DeepPartial<cosmos_bank_v1beta1_query.QuerySpendableBalanceByDenomRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).spendableBalanceByDenom(input, options);\n }, { path: [6, \"spendableBalanceByDenom\"], serviceLoader }),\n /**\n * getTotalSupply queries the total supply of all coins.\n *\n * When called from another module, this query might consume a high amount of\n * gas if the pagination field is incorrectly set.\n */\n getTotalSupply: withMetadata(async function getTotalSupply(input: DeepPartial<cosmos_bank_v1beta1_query.QueryTotalSupplyRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).totalSupply(input, options);\n }, { path: [6, \"totalSupply\"], serviceLoader }),\n /**\n * getSupplyOf queries the supply of a single coin.\n *\n * When called from another module, this query might consume a high amount of\n * gas if the pagination field is incorrectly set.\n */\n getSupplyOf: withMetadata(async function getSupplyOf(input: DeepPartial<cosmos_bank_v1beta1_query.QuerySupplyOfRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).supplyOf(input, options);\n }, { path: [6, \"supplyOf\"], serviceLoader }),\n /**\n * getParams queries the parameters of x/bank module.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<cosmos_bank_v1beta1_query.QueryParamsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).params(input, options);\n }, { path: [6, \"params\"], serviceLoader }),\n /**\n * getDenomsMetadata queries the client metadata for all registered coin\n * denominations.\n */\n getDenomsMetadata: withMetadata(async function getDenomsMetadata(input: DeepPartial<cosmos_bank_v1beta1_query.QueryDenomsMetadataRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).denomsMetadata(input, options);\n }, { path: [6, \"denomsMetadata\"], serviceLoader }),\n /**\n * getDenomMetadata queries the client metadata of a given coin denomination.\n */\n getDenomMetadata: withMetadata(async function getDenomMetadata(input: DeepPartial<cosmos_bank_v1beta1_query.QueryDenomMetadataRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).denomMetadata(input, options);\n }, { path: [6, \"denomMetadata\"], serviceLoader }),\n /**\n * getDenomMetadataByQueryString queries the client metadata of a given coin denomination.\n */\n getDenomMetadataByQueryString: withMetadata(async function getDenomMetadataByQueryString(input: DeepPartial<cosmos_bank_v1beta1_query.QueryDenomMetadataByQueryStringRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).denomMetadataByQueryString(input, options);\n }, { path: [6, \"denomMetadataByQueryString\"], serviceLoader }),\n /**\n * getDenomOwners queries for all account addresses that own a particular token\n * denomination.\n *\n * When called from another module, this query might consume a high amount of\n * gas if the pagination field is incorrectly set.\n */\n getDenomOwners: withMetadata(async function getDenomOwners(input: DeepPartial<cosmos_bank_v1beta1_query.QueryDenomOwnersRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).denomOwners(input, options);\n }, { path: [6, \"denomOwners\"], serviceLoader }),\n /**\n * getDenomOwnersByQuery queries for all account addresses that own a particular token\n * denomination.\n */\n getDenomOwnersByQuery: withMetadata(async function getDenomOwnersByQuery(input: DeepPartial<cosmos_bank_v1beta1_query.QueryDenomOwnersByQueryRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).denomOwnersByQuery(input, options);\n }, { path: [6, \"denomOwnersByQuery\"], serviceLoader }),\n /**\n * getSendEnabled queries for getSendEnabled entries.\n *\n * This query only returns denominations that have specific getSendEnabled settings.\n * Any denomination that does not have a specific setting will use the default\n * params.default_send_enabled, and will not be returned by this query.\n */\n getSendEnabled: withMetadata(async function getSendEnabled(input: DeepPartial<cosmos_bank_v1beta1_query.QuerySendEnabledRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).sendEnabled(input, options);\n }, { path: [6, \"sendEnabled\"], serviceLoader }),\n /**\n * send defines a method for sending coins from one account to another account.\n */\n send: withMetadata(async function send(input: DeepSimplify<cosmos_bank_v1beta1_tx.MsgSend>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(7);\n return getMsgClient(service).send(input, options);\n }, { path: [7, \"send\"], serviceLoader }),\n /**\n * multiSend defines a method for sending coins from some accounts to other accounts.\n */\n multiSend: withMetadata(async function multiSend(input: DeepSimplify<cosmos_bank_v1beta1_tx.MsgMultiSend>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(7);\n return getMsgClient(service).multiSend(input, options);\n }, { path: [7, \"multiSend\"], serviceLoader }),\n /**\n * updateParams defines a governance operation for updating the x/bank module parameters.\n * The authority is defined in the keeper.\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<cosmos_bank_v1beta1_tx.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(7);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [7, \"updateParams\"], serviceLoader }),\n /**\n * setSendEnabled is a governance operation for setting the SendEnabled flag\n * on any number of Denoms. Only the entries to add or update should be\n * included. Entries that already exist in the store, but that aren't\n * included in this message, will be left unchanged.\n */\n setSendEnabled: withMetadata(async function setSendEnabled(input: DeepSimplify<cosmos_bank_v1beta1_tx.MsgSetSendEnabled>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(7);\n return getMsgClient(service).setSendEnabled(input, options);\n }, { path: [7, \"setSendEnabled\"], serviceLoader })\n }\n },\n base: {\n node: {\n v1beta1: {\n /**\n * getConfig queries for the operator configuration.\n */\n getConfig: withMetadata(async function getConfig(input: DeepPartial<cosmos_base_node_v1beta1_query.ConfigRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(9);\n return getClient(service).config(input, options);\n }, { path: [9, \"config\"], serviceLoader }),\n /**\n * getStatus queries for the node status.\n */\n getStatus: withMetadata(async function getStatus(input: DeepPartial<cosmos_base_node_v1beta1_query.StatusRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(9);\n return getClient(service).status(input, options);\n }, { path: [9, \"status\"], serviceLoader })\n }\n },\n reflection: {\n v1beta1: {\n /**\n * getListAllInterfaces lists all the interfaces registered in the interface\n * registry.\n */\n getListAllInterfaces: withMetadata(async function getListAllInterfaces(input: DeepPartial<cosmos_base_reflection_v1beta1_reflection.ListAllInterfacesRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(10);\n return getClient(service).listAllInterfaces(input, options);\n }, { path: [10, \"listAllInterfaces\"], serviceLoader }),\n /**\n * getListImplementations list all the concrete types that implement a given\n * interface.\n */\n getListImplementations: withMetadata(async function getListImplementations(input: DeepPartial<cosmos_base_reflection_v1beta1_reflection.ListImplementationsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(10);\n return getClient(service).listImplementations(input, options);\n }, { path: [10, \"listImplementations\"], serviceLoader })\n },\n v2alpha1: {\n /**\n * getAuthnDescriptor returns information on how to authenticate transactions in the application\n * NOTE: this RPC is still experimental and might be subject to breaking changes or removal in\n * future releases of the cosmos-sdk.\n */\n getAuthnDescriptor: withMetadata(async function getAuthnDescriptor(input: DeepPartial<cosmos_base_reflection_v2alpha1_reflection.GetAuthnDescriptorRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(11);\n return getClient(service).getAuthnDescriptor(input, options);\n }, { path: [11, \"getAuthnDescriptor\"], serviceLoader }),\n /**\n * getChainDescriptor returns the description of the chain\n */\n getChainDescriptor: withMetadata(async function getChainDescriptor(input: DeepPartial<cosmos_base_reflection_v2alpha1_reflection.GetChainDescriptorRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(11);\n return getClient(service).getChainDescriptor(input, options);\n }, { path: [11, \"getChainDescriptor\"], serviceLoader }),\n /**\n * getCodecDescriptor returns the descriptor of the codec of the application\n */\n getCodecDescriptor: withMetadata(async function getCodecDescriptor(input: DeepPartial<cosmos_base_reflection_v2alpha1_reflection.GetCodecDescriptorRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(11);\n return getClient(service).getCodecDescriptor(input, options);\n }, { path: [11, \"getCodecDescriptor\"], serviceLoader }),\n /**\n * getConfigurationDescriptor returns the descriptor for the sdk.Config of the application\n */\n getConfigurationDescriptor: withMetadata(async function getConfigurationDescriptor(input: DeepPartial<cosmos_base_reflection_v2alpha1_reflection.GetConfigurationDescriptorRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(11);\n return getClient(service).getConfigurationDescriptor(input, options);\n }, { path: [11, \"getConfigurationDescriptor\"], serviceLoader }),\n /**\n * getQueryServicesDescriptor returns the available gRPC queryable services of the application\n */\n getQueryServicesDescriptor: withMetadata(async function getQueryServicesDescriptor(input: DeepPartial<cosmos_base_reflection_v2alpha1_reflection.GetQueryServicesDescriptorRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(11);\n return getClient(service).getQueryServicesDescriptor(input, options);\n }, { path: [11, \"getQueryServicesDescriptor\"], serviceLoader }),\n /**\n * getTxDescriptor returns information on the used transaction object and available msgs that can be used\n */\n getTxDescriptor: withMetadata(async function getTxDescriptor(input: DeepPartial<cosmos_base_reflection_v2alpha1_reflection.GetTxDescriptorRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(11);\n return getClient(service).getTxDescriptor(input, options);\n }, { path: [11, \"getTxDescriptor\"], serviceLoader })\n }\n },\n tendermint: {\n v1beta1: {\n /**\n * getNodeInfo queries the current node info.\n */\n getNodeInfo: withMetadata(async function getNodeInfo(input: DeepPartial<cosmos_base_tendermint_v1beta1_query.GetNodeInfoRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(12);\n return getClient(service).getNodeInfo(input, options);\n }, { path: [12, \"getNodeInfo\"], serviceLoader }),\n /**\n * getSyncing queries node syncing.\n */\n getSyncing: withMetadata(async function getSyncing(input: DeepPartial<cosmos_base_tendermint_v1beta1_query.GetSyncingRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(12);\n return getClient(service).getSyncing(input, options);\n }, { path: [12, \"getSyncing\"], serviceLoader }),\n /**\n * getLatestBlock returns the latest block.\n */\n getLatestBlock: withMetadata(async function getLatestBlock(input: DeepPartial<cosmos_base_tendermint_v1beta1_query.GetLatestBlockRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(12);\n return getClient(service).getLatestBlock(input, options);\n }, { path: [12, \"getLatestBlock\"], serviceLoader }),\n /**\n * getBlockByHeight queries block for given height.\n */\n getBlockByHeight: withMetadata(async function getBlockByHeight(input: DeepPartial<cosmos_base_tendermint_v1beta1_query.GetBlockByHeightRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(12);\n return getClient(service).getBlockByHeight(input, options);\n }, { path: [12, \"getBlockByHeight\"], serviceLoader }),\n /**\n * getLatestValidatorSet queries latest validator-set.\n */\n getLatestValidatorSet: withMetadata(async function getLatestValidatorSet(input: DeepPartial<cosmos_base_tendermint_v1beta1_query.GetLatestValidatorSetRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(12);\n return getClient(service).getLatestValidatorSet(input, options);\n }, { path: [12, \"getLatestValidatorSet\"], serviceLoader }),\n /**\n * getValidatorSetByHeight queries validator-set at a given height.\n */\n getValidatorSetByHeight: withMetadata(async function getValidatorSetByHeight(input: DeepPartial<cosmos_base_tendermint_v1beta1_query.GetValidatorSetByHeightRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(12);\n return getClient(service).getValidatorSetByHeight(input, options);\n }, { path: [12, \"getValidatorSetByHeight\"], serviceLoader }),\n /**\n * getABCIQuery defines a query handler that supports ABCI queries directly to the\n * application, bypassing Tendermint completely. The ABCI query must contain\n * a valid and supported path, including app, custom, p2p, and store.\n */\n getABCIQuery: withMetadata(async function getABCIQuery(input: DeepPartial<cosmos_base_tendermint_v1beta1_query.ABCIQueryRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(12);\n return getClient(service).aBCIQuery(input, options);\n }, { path: [12, \"aBCIQuery\"], serviceLoader })\n }\n }\n },\n benchmark: {\n v1: {\n /**\n * loadTest defines a method for executing a sequence of load test operations.\n */\n loadTest: withMetadata(async function loadTest(input: DeepSimplify<cosmos_benchmark_v1_tx.MsgLoadTest>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(13);\n return getMsgClient(service).loadTest(input, options);\n }, { path: [13, \"loadTest\"], serviceLoader })\n }\n },\n circuit: {\n v1: {\n /**\n * getAccount returns account permissions.\n */\n getAccount: withMetadata(async function getAccount(input: DeepPartial<cosmos_circuit_v1_query.QueryAccountRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(14);\n return getClient(service).account(input, options);\n }, { path: [14, \"account\"], serviceLoader }),\n /**\n * Account returns account permissions.\n */\n getAccounts: withMetadata(async function getAccounts(input: DeepPartial<cosmos_circuit_v1_query.QueryAccountsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(14);\n return getClient(service).accounts(input, options);\n }, { path: [14, \"accounts\"], serviceLoader }),\n /**\n * getDisabledList returns a list of disabled message urls\n */\n getDisabledList: withMetadata(async function getDisabledList(input: DeepPartial<cosmos_circuit_v1_query.QueryDisabledListRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(14);\n return getClient(service).disabledList(input, options);\n }, { path: [14, \"disabledList\"], serviceLoader }),\n /**\n * authorizeCircuitBreaker allows a super-admin to grant (or revoke) another\n * account's circuit breaker permissions.\n */\n authorizeCircuitBreaker: withMetadata(async function authorizeCircuitBreaker(input: DeepSimplify<cosmos_circuit_v1_tx.MsgAuthorizeCircuitBreaker>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(15);\n return getMsgClient(service).authorizeCircuitBreaker(input, options);\n }, { path: [15, \"authorizeCircuitBreaker\"], serviceLoader }),\n /**\n * tripCircuitBreaker pauses processing of Msg's in the state machine.\n */\n tripCircuitBreaker: withMetadata(async function tripCircuitBreaker(input: DeepSimplify<cosmos_circuit_v1_tx.MsgTripCircuitBreaker>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(15);\n return getMsgClient(service).tripCircuitBreaker(input, options);\n }, { path: [15, \"tripCircuitBreaker\"], serviceLoader }),\n /**\n * resetCircuitBreaker resumes processing of Msg's in the state machine that\n * have been been paused using TripCircuitBreaker.\n */\n resetCircuitBreaker: withMetadata(async function resetCircuitBreaker(input: DeepSimplify<cosmos_circuit_v1_tx.MsgResetCircuitBreaker>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(15);\n return getMsgClient(service).resetCircuitBreaker(input, options);\n }, { path: [15, \"resetCircuitBreaker\"], serviceLoader })\n }\n },\n consensus: {\n v1: {\n /**\n * getParams queries the parameters of x/consensus module.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<cosmos_consensus_v1_query.QueryParamsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(16);\n return getClient(service).params(input, options);\n }, { path: [16, \"params\"], serviceLoader }),\n /**\n * updateParams defines a governance operation for updating the x/consensus module parameters.\n * The authority is defined in the keeper.\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<cosmos_consensus_v1_tx.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(17);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [17, \"updateParams\"], serviceLoader })\n }\n },\n counter: {\n v1: {\n /**\n * getCount queries the parameters of x/Counter module.\n */\n getCount: withMetadata(async function getCount(input: DeepPartial<cosmos_counter_v1_query.QueryGetCountRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(18);\n return getClient(service).getCount(input, options);\n }, { path: [18, \"getCount\"], serviceLoader }),\n /**\n * increaseCount increments the counter by the specified amount.\n */\n increaseCount: withMetadata(async function increaseCount(input: DeepSimplify<cosmos_counter_v1_tx.MsgIncreaseCounter>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(19);\n return getMsgClient(service).increaseCount(input, options);\n }, { path: [19, \"increaseCount\"], serviceLoader })\n }\n },\n crisis: {\n v1beta1: {\n /**\n * verifyInvariant defines a method to verify a particular invariant.\n */\n verifyInvariant: withMetadata(async function verifyInvariant(input: DeepSimplify<cosmos_crisis_v1beta1_tx.MsgVerifyInvariant>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(20);\n return getMsgClient(service).verifyInvariant(input, options);\n }, { path: [20, \"verifyInvariant\"], serviceLoader }),\n /**\n * updateParams defines a governance operation for updating the x/crisis module\n * parameters. The authority is defined in the keeper.\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<cosmos_crisis_v1beta1_tx.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(20);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [20, \"updateParams\"], serviceLoader })\n }\n },\n distribution: {\n v1beta1: {\n /**\n * getParams queries params of the distribution module.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<cosmos_distribution_v1beta1_query.QueryParamsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(21);\n return getClient(service).params(input, options);\n }, { path: [21, \"params\"], serviceLoader }),\n /**\n * getValidatorDistributionInfo queries validator commission and self-delegation rewards for validator\n */\n getValidatorDistributionInfo: withMetadata(async function getValidatorDistributionInfo(input: DeepPartial<cosmos_distribution_v1beta1_query.QueryValidatorDistributionInfoRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(21);\n return getClient(service).validatorDistributionInfo(input, options);\n }, { path: [21, \"validatorDistributionInfo\"], serviceLoader }),\n /**\n * getValidatorOutstandingRewards queries rewards of a validator address.\n */\n getValidatorOutstandingRewards: withMetadata(async function getValidatorOutstandingRewards(input: DeepPartial<cosmos_distribution_v1beta1_query.QueryValidatorOutstandingRewardsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(21);\n return getClient(service).validatorOutstandingRewards(input, options);\n }, { path: [21, \"validatorOutstandingRewards\"], serviceLoader }),\n /**\n * getValidatorCommission queries accumulated commission for a validator.\n */\n getValidatorCommission: withMetadata(async function getValidatorCommission(input: DeepPartial<cosmos_distribution_v1beta1_query.QueryValidatorCommissionRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(21);\n return getClient(service).validatorCommission(input, options);\n }, { path: [21, \"validatorCommission\"], serviceLoader }),\n /**\n * getValidatorSlashes queries slash events of a validator.\n */\n getValidatorSlashes: withMetadata(async function getValidatorSlashes(input: DeepPartial<cosmos_distribution_v1beta1_query.QueryValidatorSlashesRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(21);\n return getClient(service).validatorSlashes(input, options);\n }, { path: [21, \"validatorSlashes\"], serviceLoader }),\n /**\n * getDelegationRewards queries the total rewards accrued by a delegation.\n */\n getDelegationRewards: withMetadata(async function getDelegationRewards(input: DeepPartial<cosmos_distribution_v1beta1_query.QueryDelegationRewardsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(21);\n return getClient(service).delegationRewards(input, options);\n }, { path: [21, \"delegationRewards\"], serviceLoader }),\n /**\n * getDelegationTotalRewards queries the total rewards accrued by each\n * validator.\n */\n getDelegationTotalRewards: withMetadata(async function getDelegationTotalRewards(input: DeepPartial<cosmos_distribution_v1beta1_query.QueryDelegationTotalRewardsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(21);\n return getClient(service).delegationTotalRewards(input, options);\n }, { path: [21, \"delegationTotalRewards\"], serviceLoader }),\n /**\n * getDelegatorValidators queries the validators of a delegator.\n */\n getDelegatorValidators: withMetadata(async function getDelegatorValidators(input: DeepPartial<cosmos_distribution_v1beta1_query.QueryDelegatorValidatorsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(21);\n return getClient(service).delegatorValidators(input, options);\n }, { path: [21, \"delegatorValidators\"], serviceLoader }),\n /**\n * getDelegatorWithdrawAddress queries withdraw address of a delegator.\n */\n getDelegatorWithdrawAddress: withMetadata(async function getDelegatorWithdrawAddress(input: DeepPartial<cosmos_distribution_v1beta1_query.QueryDelegatorWithdrawAddressRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(21);\n return getClient(service).delegatorWithdrawAddress(input, options);\n }, { path: [21, \"delegatorWithdrawAddress\"], serviceLoader }),\n /**\n * getCommunityPool queries the community pool coins.\n *\n * WARNING: This query will fail if an external community pool is used.\n */\n getCommunityPool: withMetadata(async function getCommunityPool(input: DeepPartial<cosmos_distribution_v1beta1_query.QueryCommunityPoolRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(21);\n return getClient(service).communityPool(input, options);\n }, { path: [21, \"communityPool\"], serviceLoader }),\n /**\n * setWithdrawAddress defines a method to change the withdraw address\n * for a delegator (or validator self-delegation).\n */\n setWithdrawAddress: withMetadata(async function setWithdrawAddress(input: DeepSimplify<cosmos_distribution_v1beta1_tx.MsgSetWithdrawAddress>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(22);\n return getMsgClient(service).setWithdrawAddress(input, options);\n }, { path: [22, \"setWithdrawAddress\"], serviceLoader }),\n /**\n * withdrawDelegatorReward defines a method to withdraw rewards of delegator\n * from a single validator.\n */\n withdrawDelegatorReward: withMetadata(async function withdrawDelegatorReward(input: DeepSimplify<cosmos_distribution_v1beta1_tx.MsgWithdrawDelegatorReward>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(22);\n return getMsgClient(service).withdrawDelegatorReward(input, options);\n }, { path: [22, \"withdrawDelegatorReward\"], serviceLoader }),\n /**\n * withdrawValidatorCommission defines a method to withdraw the\n * full commission to the validator address.\n */\n withdrawValidatorCommission: withMetadata(async function withdrawValidatorCommission(input: DeepSimplify<cosmos_distribution_v1beta1_tx.MsgWithdrawValidatorCommission>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(22);\n return getMsgClient(service).withdrawValidatorCommission(input, options);\n }, { path: [22, \"withdrawValidatorCommission\"], serviceLoader }),\n /**\n * fundCommunityPool defines a method to allow an account to directly\n * fund the community pool.\n *\n * WARNING: This method will fail if an external community pool is used.\n */\n fundCommunityPool: withMetadata(async function fundCommunityPool(input: DeepSimplify<cosmos_distribution_v1beta1_tx.MsgFundCommunityPool>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(22);\n return getMsgClient(service).fundCommunityPool(input, options);\n }, { path: [22, \"fundCommunityPool\"], serviceLoader }),\n /**\n * updateParams defines a governance operation for updating the x/distribution\n * module parameters. The authority is defined in the keeper.\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<cosmos_distribution_v1beta1_tx.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(22);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [22, \"updateParams\"], serviceLoader }),\n /**\n * communityPoolSpend defines a governance operation for sending tokens from\n * the community pool in the x/distribution module to another account, which\n * could be the governance module itself. The authority is defined in the\n * keeper.\n *\n * WARNING: This method will fail if an external community pool is used.\n */\n communityPoolSpend: withMetadata(async function communityPoolSpend(input: DeepSimplify<cosmos_distribution_v1beta1_tx.MsgCommunityPoolSpend>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(22);\n return getMsgClient(service).communityPoolSpend(input, options);\n }, { path: [22, \"communityPoolSpend\"], serviceLoader }),\n /**\n * depositValidatorRewardsPool defines a method to provide additional rewards\n * to delegators to a specific validator.\n */\n depositValidatorRewardsPool: withMetadata(async function depositValidatorRewardsPool(input: DeepSimplify<cosmos_distribution_v1beta1_tx.MsgDepositValidatorRewardsPool>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(22);\n return getMsgClient(service).depositValidatorRewardsPool(input, options);\n }, { path: [22, \"depositValidatorRewardsPool\"], serviceLoader })\n }\n },\n epochs: {\n v1beta1: {\n /**\n * getEpochInfos provide running epochInfos\n */\n getEpochInfos: withMetadata(async function getEpochInfos(input: DeepPartial<cosmos_epochs_v1beta1_query.QueryEpochInfosRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(23);\n return getClient(service).epochInfos(input, options);\n }, { path: [23, \"epochInfos\"], serviceLoader }),\n /**\n * getCurrentEpoch provide current epoch of specified identifier\n */\n getCurrentEpoch: withMetadata(async function getCurrentEpoch(input: DeepPartial<cosmos_epochs_v1beta1_query.QueryCurrentEpochRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(23);\n return getClient(service).currentEpoch(input, options);\n }, { path: [23, \"currentEpoch\"], serviceLoader })\n }\n },\n evidence: {\n v1beta1: {\n /**\n * getEvidence queries evidence based on evidence hash.\n */\n getEvidence: withMetadata(async function getEvidence(input: DeepPartial<cosmos_evidence_v1beta1_query.QueryEvidenceRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(24);\n return getClient(service).evidence(input, options);\n }, { path: [24, \"evidence\"], serviceLoader }),\n /**\n * getAllEvidence queries all evidence.\n */\n getAllEvidence: withMetadata(async function getAllEvidence(input: DeepPartial<cosmos_evidence_v1beta1_query.QueryAllEvidenceRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(24);\n return getClient(service).allEvidence(input, options);\n }, { path: [24, \"allEvidence\"], serviceLoader }),\n /**\n * submitEvidence submits an arbitrary Evidence of misbehavior such as equivocation or\n * counterfactual signing.\n */\n submitEvidence: withMetadata(async function submitEvidence(input: DeepSimplify<cosmos_evidence_v1beta1_tx.MsgSubmitEvidence>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(25);\n return getMsgClient(service).submitEvidence(input, options);\n }, { path: [25, \"submitEvidence\"], serviceLoader })\n }\n },\n feegrant: {\n v1beta1: {\n /**\n * getAllowance returns granted allwance to the grantee by the granter.\n */\n getAllowance: withMetadata(async function getAllowance(input: DeepPartial<cosmos_feegrant_v1beta1_query.QueryAllowanceRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(26);\n return getClient(service).allowance(input, options);\n }, { path: [26, \"allowance\"], serviceLoader }),\n /**\n * getAllowances returns all the grants for the given grantee address.\n */\n getAllowances: withMetadata(async function getAllowances(input: DeepPartial<cosmos_feegrant_v1beta1_query.QueryAllowancesRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(26);\n return getClient(service).allowances(input, options);\n }, { path: [26, \"allowances\"], serviceLoader }),\n /**\n * getAllowancesByGranter returns all the grants given by an address\n */\n getAllowancesByGranter: withMetadata(async function getAllowancesByGranter(input: DeepPartial<cosmos_feegrant_v1beta1_query.QueryAllowancesByGranterRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(26);\n return getClient(service).allowancesByGranter(input, options);\n }, { path: [26, \"allowancesByGranter\"], serviceLoader }),\n /**\n * grantAllowance grants fee allowance to the grantee on the granter's\n * account with the provided expiration time.\n */\n grantAllowance: withMetadata(async function grantAllowance(input: DeepSimplify<cosmos_feegrant_v1beta1_tx.MsgGrantAllowance>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(27);\n return getMsgClient(service).grantAllowance(input, options);\n }, { path: [27, \"grantAllowance\"], serviceLoader }),\n /**\n * revokeAllowance revokes any fee allowance of granter's account that\n * has been granted to the grantee.\n */\n revokeAllowance: withMetadata(async function revokeAllowance(input: DeepSimplify<cosmos_feegrant_v1beta1_tx.MsgRevokeAllowance>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(27);\n return getMsgClient(service).revokeAllowance(input, options);\n }, { path: [27, \"revokeAllowance\"], serviceLoader }),\n /**\n * pruneAllowances prunes expired fee allowances, currently up to 75 at a time.\n */\n pruneAllowances: withMetadata(async function pruneAllowances(input: DeepSimplify<cosmos_feegrant_v1beta1_tx.MsgPruneAllowances>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(27);\n return getMsgClient(service).pruneAllowances(input, options);\n }, { path: [27, \"pruneAllowances\"], serviceLoader })\n }\n },\n gov: {\n v1: {\n /**\n * getConstitution queries the chain's constitution.\n */\n getConstitution: withMetadata(async function getConstitution(input: DeepPartial<cosmos_gov_v1_query.QueryConstitutionRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(28);\n return getClient(service).constitution(input, options);\n }, { path: [28, \"constitution\"], serviceLoader }),\n /**\n * getProposal queries proposal details based on ProposalID.\n */\n getProposal: withMetadata(async function getProposal(input: DeepPartial<cosmos_gov_v1_query.QueryProposalRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(28);\n return getClient(service).proposal(input, options);\n }, { path: [28, \"proposal\"], serviceLoader }),\n /**\n * getProposals queries all proposals based on given status.\n */\n getProposals: withMetadata(async function getProposals(input: DeepPartial<cosmos_gov_v1_query.QueryProposalsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(28);\n return getClient(service).proposals(input, options);\n }, { path: [28, \"proposals\"], serviceLoader }),\n /**\n * getVote queries voted information based on proposalID, voterAddr.\n */\n getVote: withMetadata(async function getVote(input: DeepPartial<cosmos_gov_v1_query.QueryVoteRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(28);\n return getClient(service).vote(input, options);\n }, { path: [28, \"vote\"], serviceLoader }),\n /**\n * getVotes queries votes of a given proposal.\n */\n getVotes: withMetadata(async function getVotes(input: DeepPartial<cosmos_gov_v1_query.QueryVotesRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(28);\n return getClient(service).votes(input, options);\n }, { path: [28, \"votes\"], serviceLoader }),\n /**\n * getParams queries all parameters of the gov module.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<cosmos_gov_v1_query.QueryParamsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(28);\n return getClient(service).params(input, options);\n }, { path: [28, \"params\"], serviceLoader }),\n /**\n * getDeposit queries single deposit information based on proposalID, depositAddr.\n */\n getDeposit: withMetadata(async function getDeposit(input: DeepPartial<cosmos_gov_v1_query.QueryDepositRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(28);\n return getClient(service).deposit(input, options);\n }, { path: [28, \"deposit\"], serviceLoader }),\n /**\n * getDeposits queries all deposits of a single proposal.\n */\n getDeposits: withMetadata(async function getDeposits(input: DeepPartial<cosmos_gov_v1_query.QueryDepositsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(28);\n return getClient(service).deposits(input, options);\n }, { path: [28, \"deposits\"], serviceLoader }),\n /**\n * getTallyResult queries the tally of a proposal vote.\n */\n getTallyResult: withMetadata(async function getTallyResult(input: DeepPartial<cosmos_gov_v1_query.QueryTallyResultRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(28);\n return getClient(service).tallyResult(input, options);\n }, { path: [28, \"tallyResult\"], serviceLoader }),\n /**\n * submitProposal defines a method to create new proposal given the messages.\n */\n submitProposal: withMetadata(async function submitProposal(input: DeepSimplify<cosmos_gov_v1_tx.MsgSubmitProposal>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(29);\n return getMsgClient(service).submitProposal(input, options);\n }, { path: [29, \"submitProposal\"], serviceLoader }),\n /**\n * execLegacyContent defines a Msg to be in included in a MsgSubmitProposal\n * to execute a legacy content-based proposal.\n */\n execLegacyContent: withMetadata(async function execLegacyContent(input: DeepSimplify<cosmos_gov_v1_tx.MsgExecLegacyContent>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(29);\n return getMsgClient(service).execLegacyContent(input, options);\n }, { path: [29, \"execLegacyContent\"], serviceLoader }),\n /**\n * vote defines a method to add a vote on a specific proposal.\n */\n vote: withMetadata(async function vote(input: DeepSimplify<cosmos_gov_v1_tx.MsgVote>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(29);\n return getMsgClient(service).vote(input, options);\n }, { path: [29, \"vote\"], serviceLoader }),\n /**\n * voteWeighted defines a method to add a weighted vote on a specific proposal.\n */\n voteWeighted: withMetadata(async function voteWeighted(input: DeepSimplify<cosmos_gov_v1_tx.MsgVoteWeighted>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(29);\n return getMsgClient(service).voteWeighted(input, options);\n }, { path: [29, \"voteWeighted\"], serviceLoader }),\n /**\n * deposit defines a method to add deposit on a specific proposal.\n */\n deposit: withMetadata(async function deposit(input: DeepSimplify<cosmos_gov_v1_tx.MsgDeposit>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(29);\n return getMsgClient(service).deposit(input, options);\n }, { path: [29, \"deposit\"], serviceLoader }),\n /**\n * updateParams defines a governance operation for updating the x/gov module\n * parameters. The authority is defined in the keeper.\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<cosmos_gov_v1_tx.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(29);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [29, \"updateParams\"], serviceLoader }),\n /**\n * cancelProposal defines a method to cancel governance proposal\n */\n cancelProposal: withMetadata(async function cancelProposal(input: DeepSimplify<cosmos_gov_v1_tx.MsgCancelProposal>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(29);\n return getMsgClient(service).cancelProposal(input, options);\n }, { path: [29, \"cancelProposal\"], serviceLoader })\n },\n v1beta1: {\n /**\n * getProposal queries proposal details based on ProposalID.\n */\n getProposal: withMetadata(async function getProposal(input: DeepPartial<cosmos_gov_v1beta1_query.QueryProposalRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(30);\n return getClient(service).proposal(input, options);\n }, { path: [30, \"proposal\"], serviceLoader }),\n /**\n * getProposals queries all proposals based on given status.\n */\n getProposals: withMetadata(async function getProposals(input: DeepPartial<cosmos_gov_v1beta1_query.QueryProposalsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(30);\n return getClient(service).proposals(input, options);\n }, { path: [30, \"proposals\"], serviceLoader }),\n /**\n * getVote queries voted information based on proposalID, voterAddr.\n */\n getVote: withMetadata(async function getVote(input: DeepPartial<cosmos_gov_v1beta1_query.QueryVoteRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(30);\n return getClient(service).vote(input, options);\n }, { path: [30, \"vote\"], serviceLoader }),\n /**\n * getVotes queries votes of a given proposal.\n */\n getVotes: withMetadata(async function getVotes(input: DeepPartial<cosmos_gov_v1beta1_query.QueryVotesRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(30);\n return getClient(service).votes(input, options);\n }, { path: [30, \"votes\"], serviceLoader }),\n /**\n * getParams queries all parameters of the gov module.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<cosmos_gov_v1beta1_query.QueryParamsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(30);\n return getClient(service).params(input, options);\n }, { path: [30, \"params\"], serviceLoader }),\n /**\n * getDeposit queries single deposit information based on proposalID, depositor address.\n */\n getDeposit: withMetadata(async function getDeposit(input: DeepPartial<cosmos_gov_v1beta1_query.QueryDepositRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(30);\n return getClient(service).deposit(input, options);\n }, { path: [30, \"deposit\"], serviceLoader }),\n /**\n * getDeposits queries all deposits of a single proposal.\n */\n getDeposits: withMetadata(async function getDeposits(input: DeepPartial<cosmos_gov_v1beta1_query.QueryDepositsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(30);\n return getClient(service).deposits(input, options);\n }, { path: [30, \"deposits\"], serviceLoader }),\n /**\n * getTallyResult queries the tally of a proposal vote.\n */\n getTallyResult: withMetadata(async function getTallyResult(input: DeepPartial<cosmos_gov_v1beta1_query.QueryTallyResultRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(30);\n return getClient(service).tallyResult(input, options);\n }, { path: [30, \"tallyResult\"], serviceLoader }),\n /**\n * submitProposal defines a method to create new proposal given a content.\n */\n submitProposal: withMetadata(async function submitProposal(input: DeepSimplify<cosmos_gov_v1beta1_tx.MsgSubmitProposal>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(31);\n return getMsgClient(service).submitProposal(input, options);\n }, { path: [31, \"submitProposal\"], serviceLoader }),\n /**\n * vote defines a method to add a vote on a specific proposal.\n */\n vote: withMetadata(async function vote(input: DeepSimplify<cosmos_gov_v1beta1_tx.MsgVote>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(31);\n return getMsgClient(service).vote(input, options);\n }, { path: [31, \"vote\"], serviceLoader }),\n /**\n * voteWeighted defines a method to add a weighted vote on a specific proposal.\n */\n voteWeighted: withMetadata(async function voteWeighted(input: DeepSimplify<cosmos_gov_v1beta1_tx.MsgVoteWeighted>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(31);\n return getMsgClient(service).voteWeighted(input, options);\n }, { path: [31, \"voteWeighted\"], serviceLoader }),\n /**\n * deposit defines a method to add deposit on a specific proposal.\n */\n deposit: withMetadata(async function deposit(input: DeepSimplify<cosmos_gov_v1beta1_tx.MsgDeposit>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(31);\n return getMsgClient(service).deposit(input, options);\n }, { path: [31, \"deposit\"], serviceLoader })\n }\n },\n group: {\n v1: {\n /**\n * getGroupInfo queries group info based on group id.\n */\n getGroupInfo: withMetadata(async function getGroupInfo(input: DeepPartial<cosmos_group_v1_query.QueryGroupInfoRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(32);\n return getClient(service).groupInfo(input, options);\n }, { path: [32, \"groupInfo\"], serviceLoader }),\n /**\n * getGroupPolicyInfo queries group policy info based on account address of group policy.\n */\n getGroupPolicyInfo: withMetadata(async function getGroupPolicyInfo(input: DeepPartial<cosmos_group_v1_query.QueryGroupPolicyInfoRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(32);\n return getClient(service).groupPolicyInfo(input, options);\n }, { path: [32, \"groupPolicyInfo\"], serviceLoader }),\n /**\n * getGroupMembers queries members of a group by group id.\n */\n getGroupMembers: withMetadata(async function getGroupMembers(input: DeepPartial<cosmos_group_v1_query.QueryGroupMembersRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(32);\n return getClient(service).groupMembers(input, options);\n }, { path: [32, \"groupMembers\"], serviceLoader }),\n /**\n * getGroupsByAdmin queries groups by admin address.\n */\n getGroupsByAdmin: withMetadata(async function getGroupsByAdmin(input: DeepPartial<cosmos_group_v1_query.QueryGroupsByAdminRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(32);\n return getClient(service).groupsByAdmin(input, options);\n }, { path: [32, \"groupsByAdmin\"], serviceLoader }),\n /**\n * getGroupPoliciesByGroup queries group policies by group id.\n */\n getGroupPoliciesByGroup: withMetadata(async function getGroupPoliciesByGroup(input: DeepPartial<cosmos_group_v1_query.QueryGroupPoliciesByGroupRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(32);\n return getClient(service).groupPoliciesByGroup(input, options);\n }, { path: [32, \"groupPoliciesByGroup\"], serviceLoader }),\n /**\n * getGroupPoliciesByAdmin queries group policies by admin address.\n */\n getGroupPoliciesByAdmin: withMetadata(async function getGroupPoliciesByAdmin(input: DeepPartial<cosmos_group_v1_query.QueryGroupPoliciesByAdminRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(32);\n return getClient(service).groupPoliciesByAdmin(input, options);\n }, { path: [32, \"groupPoliciesByAdmin\"], serviceLoader }),\n /**\n * getProposal queries a proposal based on proposal id.\n */\n getProposal: withMetadata(async function getProposal(input: DeepPartial<cosmos_group_v1_query.QueryProposalRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(32);\n return getClient(service).proposal(input, options);\n }, { path: [32, \"proposal\"], serviceLoader }),\n /**\n * getProposalsByGroupPolicy queries proposals based on account address of group policy.\n */\n getProposalsByGroupPolicy: withMetadata(async function getProposalsByGroupPolicy(input: DeepPartial<cosmos_group_v1_query.QueryProposalsByGroupPolicyRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(32);\n return getClient(service).proposalsByGroupPolicy(input, options);\n }, { path: [32, \"proposalsByGroupPolicy\"], serviceLoader }),\n /**\n * getVoteByProposalVoter queries a vote by proposal id and voter.\n */\n getVoteByProposalVoter: withMetadata(async function getVoteByProposalVoter(input: DeepPartial<cosmos_group_v1_query.QueryVoteByProposalVoterRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(32);\n return getClient(service).voteByProposalVoter(input, options);\n }, { path: [32, \"voteByProposalVoter\"], serviceLoader }),\n /**\n * getVotesByProposal queries a vote by proposal id.\n */\n getVotesByProposal: withMetadata(async function getVotesByProposal(input: DeepPartial<cosmos_group_v1_query.QueryVotesByProposalRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(32);\n return getClient(service).votesByProposal(input, options);\n }, { path: [32, \"votesByProposal\"], serviceLoader }),\n /**\n * getVotesByVoter queries a vote by voter.\n */\n getVotesByVoter: withMetadata(async function getVotesByVoter(input: DeepPartial<cosmos_group_v1_query.QueryVotesByVoterRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(32);\n return getClient(service).votesByVoter(input, options);\n }, { path: [32, \"votesByVoter\"], serviceLoader }),\n /**\n * getGroupsByMember queries groups by member address.\n */\n getGroupsByMember: withMetadata(async function getGroupsByMember(input: DeepPartial<cosmos_group_v1_query.QueryGroupsByMemberRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(32);\n return getClient(service).groupsByMember(input, options);\n }, { path: [32, \"groupsByMember\"], serviceLoader }),\n /**\n * getTallyResult returns the tally result of a proposal. If the proposal is\n * still in voting period, then this query computes the current tally state,\n * which might not be final. On the other hand, if the proposal is final,\n * then it simply returns the `final_tally_result` state stored in the\n * proposal itself.\n */\n getTallyResult: withMetadata(async function getTallyResult(input: DeepPartial<cosmos_group_v1_query.QueryTallyResultRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(32);\n return getClient(service).tallyResult(input, options);\n }, { path: [32, \"tallyResult\"], serviceLoader }),\n /**\n * getGroups queries all groups in state.\n */\n getGroups: withMetadata(async function getGroups(input: DeepPartial<cosmos_group_v1_query.QueryGroupsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(32);\n return getClient(service).groups(input, options);\n }, { path: [32, \"groups\"], serviceLoader }),\n /**\n * createGroup creates a new group with an admin account address, a list of members and some optional metadata.\n */\n createGroup: withMetadata(async function createGroup(input: DeepSimplify<cosmos_group_v1_tx.MsgCreateGroup>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(33);\n return getMsgClient(service).createGroup(input, options);\n }, { path: [33, \"createGroup\"], serviceLoader }),\n /**\n * updateGroupMembers updates the group members with given group id and admin address.\n */\n updateGroupMembers: withMetadata(async function updateGroupMembers(input: DeepSimplify<cosmos_group_v1_tx.MsgUpdateGroupMembers>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(33);\n return getMsgClient(service).updateGroupMembers(input, options);\n }, { path: [33, \"updateGroupMembers\"], serviceLoader }),\n /**\n * updateGroupAdmin updates the group admin with given group id and previous admin address.\n */\n updateGroupAdmin: withMetadata(async function updateGroupAdmin(input: DeepSimplify<cosmos_group_v1_tx.MsgUpdateGroupAdmin>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(33);\n return getMsgClient(service).updateGroupAdmin(input, options);\n }, { path: [33, \"updateGroupAdmin\"], serviceLoader }),\n /**\n * updateGroupMetadata updates the group metadata with given group id and admin address.\n */\n updateGroupMetadata: withMetadata(async function updateGroupMetadata(input: DeepSimplify<cosmos_group_v1_tx.MsgUpdateGroupMetadata>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(33);\n return getMsgClient(service).updateGroupMetadata(input, options);\n }, { path: [33, \"updateGroupMetadata\"], serviceLoader }),\n /**\n * createGroupPolicy creates a new group policy using given DecisionPolicy.\n */\n createGroupPolicy: withMetadata(async function createGroupPolicy(input: DeepSimplify<cosmos_group_v1_tx.MsgCreateGroupPolicy>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(33);\n return getMsgClient(service).createGroupPolicy(input, options);\n }, { path: [33, \"createGroupPolicy\"], serviceLoader }),\n /**\n * createGroupWithPolicy creates a new group with policy.\n */\n createGroupWithPolicy: withMetadata(async function createGroupWithPolicy(input: DeepSimplify<cosmos_group_v1_tx.MsgCreateGroupWithPolicy>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(33);\n return getMsgClient(service).createGroupWithPolicy(input, options);\n }, { path: [33, \"createGroupWithPolicy\"], serviceLoader }),\n /**\n * updateGroupPolicyAdmin updates a group policy admin.\n */\n updateGroupPolicyAdmin: withMetadata(async function updateGroupPolicyAdmin(input: DeepSimplify<cosmos_group_v1_tx.MsgUpdateGroupPolicyAdmin>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(33);\n return getMsgClient(service).updateGroupPolicyAdmin(input, options);\n }, { path: [33, \"updateGroupPolicyAdmin\"], serviceLoader }),\n /**\n * updateGroupPolicyDecisionPolicy allows a group policy's decision policy to be updated.\n */\n updateGroupPolicyDecisionPolicy: withMetadata(async function updateGroupPolicyDecisionPolicy(input: DeepSimplify<cosmos_group_v1_tx.MsgUpdateGroupPolicyDecisionPolicy>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(33);\n return getMsgClient(service).updateGroupPolicyDecisionPolicy(input, options);\n }, { path: [33, \"updateGroupPolicyDecisionPolicy\"], serviceLoader }),\n /**\n * updateGroupPolicyMetadata updates a group policy metadata.\n */\n updateGroupPolicyMetadata: withMetadata(async function updateGroupPolicyMetadata(input: DeepSimplify<cosmos_group_v1_tx.MsgUpdateGroupPolicyMetadata>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(33);\n return getMsgClient(service).updateGroupPolicyMetadata(input, options);\n }, { path: [33, \"updateGroupPolicyMetadata\"], serviceLoader }),\n /**\n * submitProposal submits a new proposal.\n */\n submitProposal: withMetadata(async function submitProposal(input: DeepSimplify<cosmos_group_v1_tx.MsgSubmitProposal>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(33);\n return getMsgClient(service).submitProposal(input, options);\n }, { path: [33, \"submitProposal\"], serviceLoader }),\n /**\n * withdrawProposal withdraws a proposal.\n */\n withdrawProposal: withMetadata(async function withdrawProposal(input: DeepSimplify<cosmos_group_v1_tx.MsgWithdrawProposal>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(33);\n return getMsgClient(service).withdrawProposal(input, options);\n }, { path: [33, \"withdrawProposal\"], serviceLoader }),\n /**\n * vote allows a voter to vote on a proposal.\n */\n vote: withMetadata(async function vote(input: DeepSimplify<cosmos_group_v1_tx.MsgVote>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(33);\n return getMsgClient(service).vote(input, options);\n }, { path: [33, \"vote\"], serviceLoader }),\n /**\n * exec executes a proposal.\n */\n exec: withMetadata(async function exec(input: DeepSimplify<cosmos_group_v1_tx.MsgExec>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(33);\n return getMsgClient(service).exec(input, options);\n }, { path: [33, \"exec\"], serviceLoader }),\n /**\n * leaveGroup allows a group member to leave the group.\n */\n leaveGroup: withMetadata(async function leaveGroup(input: DeepSimplify<cosmos_group_v1_tx.MsgLeaveGroup>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(33);\n return getMsgClient(service).leaveGroup(input, options);\n }, { path: [33, \"leaveGroup\"], serviceLoader })\n }\n },\n mint: {\n v1beta1: {\n /**\n * getParams returns the total set of minting parameters.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<cosmos_mint_v1beta1_query.QueryParamsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(34);\n return getClient(service).params(input, options);\n }, { path: [34, \"params\"], serviceLoader }),\n /**\n * getInflation returns the current minting inflation value.\n */\n getInflation: withMetadata(async function getInflation(input: DeepPartial<cosmos_mint_v1beta1_query.QueryInflationRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(34);\n return getClient(service).inflation(input, options);\n }, { path: [34, \"inflation\"], serviceLoader }),\n /**\n * getAnnualProvisions current minting annual provisions value.\n */\n getAnnualProvisions: withMetadata(async function getAnnualProvisions(input: DeepPartial<cosmos_mint_v1beta1_query.QueryAnnualProvisionsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(34);\n return getClient(service).annualProvisions(input, options);\n }, { path: [34, \"annualProvisions\"], serviceLoader }),\n /**\n * updateParams defines a governance operation for updating the x/mint module\n * parameters. The authority is defaults to the x/gov module account.\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<cosmos_mint_v1beta1_tx.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(35);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [35, \"updateParams\"], serviceLoader })\n }\n },\n nft: {\n v1beta1: {\n /**\n * getBalance queries the number of NFTs of a given class owned by the owner, same as balanceOf in ERC721\n */\n getBalance: withMetadata(async function getBalance(input: DeepPartial<cosmos_nft_v1beta1_query.QueryBalanceRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(36);\n return getClient(service).balance(input, options);\n }, { path: [36, \"balance\"], serviceLoader }),\n /**\n * getOwner queries the owner of the NFT based on its class and id, same as ownerOf in ERC721\n */\n getOwner: withMetadata(async function getOwner(input: DeepPartial<cosmos_nft_v1beta1_query.QueryOwnerRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(36);\n return getClient(service).owner(input, options);\n }, { path: [36, \"owner\"], serviceLoader }),\n /**\n * getSupply queries the number of NFTs from the given class, same as totalSupply of ERC721.\n */\n getSupply: withMetadata(async function getSupply(input: DeepPartial<cosmos_nft_v1beta1_query.QuerySupplyRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(36);\n return getClient(service).supply(input, options);\n }, { path: [36, \"supply\"], serviceLoader }),\n /**\n * getNFTs queries all getNFTs of a given class or owner,choose at least one of the two, similar to tokenByIndex in\n * ERC721Enumerable\n */\n getNFTs: withMetadata(async function getNFTs(input: DeepPartial<cosmos_nft_v1beta1_query.QueryNFTsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(36);\n return getClient(service).nFTs(input, options);\n }, { path: [36, \"nFTs\"], serviceLoader }),\n /**\n * getNFT queries an getNFT based on its class and id.\n */\n getNFT: withMetadata(async function getNFT(input: DeepPartial<cosmos_nft_v1beta1_query.QueryNFTRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(36);\n return getClient(service).nFT(input, options);\n }, { path: [36, \"nFT\"], serviceLoader }),\n /**\n * getClass queries an NFT class based on its id\n */\n getClass: withMetadata(async function getClass(input: DeepPartial<cosmos_nft_v1beta1_query.QueryClassRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(36);\n return getClient(service).class(input, options);\n }, { path: [36, \"class\"], serviceLoader }),\n /**\n * getClasses queries all NFT classes\n */\n getClasses: withMetadata(async function getClasses(input: DeepPartial<cosmos_nft_v1beta1_query.QueryClassesRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(36);\n return getClient(service).classes(input, options);\n }, { path: [36, \"classes\"], serviceLoader }),\n /**\n * send defines a method to send a nft from one account to another account.\n */\n send: withMetadata(async function send(input: DeepSimplify<cosmos_nft_v1beta1_tx.MsgSend>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(37);\n return getMsgClient(service).send(input, options);\n }, { path: [37, \"send\"], serviceLoader })\n }\n },\n params: {\n v1beta1: {\n /**\n * getParams queries a specific parameter of a module, given its subspace and\n * key.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<cosmos_params_v1beta1_query.QueryParamsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(38);\n return getClient(service).params(input, options);\n }, { path: [38, \"params\"], serviceLoader }),\n /**\n * getSubspaces queries for all registered subspaces and all keys for a subspace.\n */\n getSubspaces: withMetadata(async function getSubspaces(input: DeepPartial<cosmos_params_v1beta1_query.QuerySubspacesRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(38);\n return getClient(service).subspaces(input, options);\n }, { path: [38, \"subspaces\"], serviceLoader })\n }\n },\n protocolpool: {\n v1: {\n /**\n * getCommunityPool queries the community pool coins.\n */\n getCommunityPool: withMetadata(async function getCommunityPool(input: DeepPartial<cosmos_protocolpool_v1_query.QueryCommunityPoolRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(39);\n return getClient(service).communityPool(input, options);\n }, { path: [39, \"communityPool\"], serviceLoader }),\n /**\n * getContinuousFund queries a continuous fund by the recipient is is associated with.\n */\n getContinuousFund: withMetadata(async function getContinuousFund(input: DeepPartial<cosmos_protocolpool_v1_query.QueryContinuousFundRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(39);\n return getClient(service).continuousFund(input, options);\n }, { path: [39, \"continuousFund\"], serviceLoader }),\n /**\n * getContinuousFunds queries all continuous funds in the store.\n */\n getContinuousFunds: withMetadata(async function getContinuousFunds(input: DeepPartial<cosmos_protocolpool_v1_query.QueryContinuousFundsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(39);\n return getClient(service).continuousFunds(input, options);\n }, { path: [39, \"continuousFunds\"], serviceLoader }),\n /**\n * getParams returns the total set of x/protocolpool parameters.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<cosmos_protocolpool_v1_query.QueryParamsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(39);\n return getClient(service).params(input, options);\n }, { path: [39, \"params\"], serviceLoader }),\n /**\n * fundCommunityPool defines a method to allow an account to directly\n * fund the community pool.\n */\n fundCommunityPool: withMetadata(async function fundCommunityPool(input: DeepSimplify<cosmos_protocolpool_v1_tx.MsgFundCommunityPool>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(40);\n return getMsgClient(service).fundCommunityPool(input, options);\n }, { path: [40, \"fundCommunityPool\"], serviceLoader }),\n /**\n * communityPoolSpend defines a governance operation for sending tokens from\n * the community pool in the x/protocolpool module to another account, which\n * could be the governance module itself. The authority is defined in the\n * keeper.\n */\n communityPoolSpend: withMetadata(async function communityPoolSpend(input: DeepSimplify<cosmos_protocolpool_v1_tx.MsgCommunityPoolSpend>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(40);\n return getMsgClient(service).communityPoolSpend(input, options);\n }, { path: [40, \"communityPoolSpend\"], serviceLoader }),\n /**\n * createContinuousFund defines a method to distribute a percentage of funds to an address continuously.\n * This ContinuousFund can be indefinite or run until a given expiry time.\n * Funds come from validator block rewards from x/distribution, but may also come from\n * any user who funds the ProtocolPoolEscrow module account directly through x/bank.\n */\n createContinuousFund: withMetadata(async function createContinuousFund(input: DeepSimplify<cosmos_protocolpool_v1_tx.MsgCreateContinuousFund>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(40);\n return getMsgClient(service).createContinuousFund(input, options);\n }, { path: [40, \"createContinuousFund\"], serviceLoader }),\n /**\n * cancelContinuousFund defines a method for cancelling continuous fund.\n */\n cancelContinuousFund: withMetadata(async function cancelContinuousFund(input: DeepSimplify<cosmos_protocolpool_v1_tx.MsgCancelContinuousFund>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(40);\n return getMsgClient(service).cancelContinuousFund(input, options);\n }, { path: [40, \"cancelContinuousFund\"], serviceLoader }),\n /**\n * updateParams defines a governance operation for updating the x/protocolpool module parameters.\n * The authority is defined in the keeper.\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<cosmos_protocolpool_v1_tx.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(40);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [40, \"updateParams\"], serviceLoader })\n }\n },\n reflection: {\n v1: {\n /**\n * getFileDescriptors queries all the file descriptors in the app in order\n * to enable easier generation of dynamic clients.\n */\n getFileDescriptors: withMetadata(async function getFileDescriptors(input: DeepPartial<cosmos_reflection_v1_reflection.FileDescriptorsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(41);\n return getClient(service).fileDescriptors(input, options);\n }, { path: [41, \"fileDescriptors\"], serviceLoader })\n }\n },\n slashing: {\n v1beta1: {\n /**\n * getParams queries the parameters of slashing module\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<cosmos_slashing_v1beta1_query.QueryParamsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(42);\n return getClient(service).params(input, options);\n }, { path: [42, \"params\"], serviceLoader }),\n /**\n * getSigningInfo queries the signing info of given cons address\n */\n getSigningInfo: withMetadata(async function getSigningInfo(input: DeepPartial<cosmos_slashing_v1beta1_query.QuerySigningInfoRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(42);\n return getClient(service).signingInfo(input, options);\n }, { path: [42, \"signingInfo\"], serviceLoader }),\n /**\n * getSigningInfos queries signing info of all validators\n */\n getSigningInfos: withMetadata(async function getSigningInfos(input: DeepPartial<cosmos_slashing_v1beta1_query.QuerySigningInfosRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(42);\n return getClient(service).signingInfos(input, options);\n }, { path: [42, \"signingInfos\"], serviceLoader }),\n /**\n * unjail defines a method for unjailing a jailed validator, thus returning\n * them into the bonded validator set, so they can begin receiving provisions\n * and rewards again.\n */\n unjail: withMetadata(async function unjail(input: DeepSimplify<cosmos_slashing_v1beta1_tx.MsgUnjail>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(43);\n return getMsgClient(service).unjail(input, options);\n }, { path: [43, \"unjail\"], serviceLoader }),\n /**\n * updateParams defines a governance operation for updating the x/slashing module\n * parameters. The authority defaults to the x/gov module account.\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<cosmos_slashing_v1beta1_tx.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(43);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [43, \"updateParams\"], serviceLoader })\n }\n },\n staking: {\n v1beta1: {\n /**\n * getValidators queries all validators that match the given status.\n *\n * When called from another module, this query might consume a high amount of\n * gas if the pagination field is incorrectly set.\n */\n getValidators: withMetadata(async function getValidators(input: DeepPartial<cosmos_staking_v1beta1_query.QueryValidatorsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(44);\n return getClient(service).validators(input, options);\n }, { path: [44, \"validators\"], serviceLoader }),\n /**\n * getValidator queries validator info for given validator address.\n */\n getValidator: withMetadata(async function getValidator(input: DeepPartial<cosmos_staking_v1beta1_query.QueryValidatorRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(44);\n return getClient(service).validator(input, options);\n }, { path: [44, \"validator\"], serviceLoader }),\n /**\n * getValidatorDelegations queries delegate info for given validator.\n *\n * When called from another module, this query might consume a high amount of\n * gas if the pagination field is incorrectly set.\n */\n getValidatorDelegations: withMetadata(async function getValidatorDelegations(input: DeepPartial<cosmos_staking_v1beta1_query.QueryValidatorDelegationsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(44);\n return getClient(service).validatorDelegations(input, options);\n }, { path: [44, \"validatorDelegations\"], serviceLoader }),\n /**\n * getValidatorUnbondingDelegations queries unbonding delegations of a validator.\n *\n * When called from another module, this query might consume a high amount of\n * gas if the pagination field is incorrectly set.\n */\n getValidatorUnbondingDelegations: withMetadata(async function getValidatorUnbondingDelegations(input: DeepPartial<cosmos_staking_v1beta1_query.QueryValidatorUnbondingDelegationsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(44);\n return getClient(service).validatorUnbondingDelegations(input, options);\n }, { path: [44, \"validatorUnbondingDelegations\"], serviceLoader }),\n /**\n * getDelegation queries delegate info for given validator delegator pair.\n */\n getDelegation: withMetadata(async function getDelegation(input: DeepPartial<cosmos_staking_v1beta1_query.QueryDelegationRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(44);\n return getClient(service).delegation(input, options);\n }, { path: [44, \"delegation\"], serviceLoader }),\n /**\n * getUnbondingDelegation queries unbonding info for given validator delegator\n * pair.\n */\n getUnbondingDelegation: withMetadata(async function getUnbondingDelegation(input: DeepPartial<cosmos_staking_v1beta1_query.QueryUnbondingDelegationRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(44);\n return getClient(service).unbondingDelegation(input, options);\n }, { path: [44, \"unbondingDelegation\"], serviceLoader }),\n /**\n * getDelegatorDelegations queries all delegations of a given delegator address.\n *\n * When called from another module, this query might consume a high amount of\n * gas if the pagination field is incorrectly set.\n */\n getDelegatorDelegations: withMetadata(async function getDelegatorDelegations(input: DeepPartial<cosmos_staking_v1beta1_query.QueryDelegatorDelegationsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(44);\n return getClient(service).delegatorDelegations(input, options);\n }, { path: [44, \"delegatorDelegations\"], serviceLoader }),\n /**\n * getDelegatorUnbondingDelegations queries all unbonding delegations of a given\n * delegator address.\n *\n * When called from another module, this query might consume a high amount of\n * gas if the pagination field is incorrectly set.\n */\n getDelegatorUnbondingDelegations: withMetadata(async function getDelegatorUnbondingDelegations(input: DeepPartial<cosmos_staking_v1beta1_query.QueryDelegatorUnbondingDelegationsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(44);\n return getClient(service).delegatorUnbondingDelegations(input, options);\n }, { path: [44, \"delegatorUnbondingDelegations\"], serviceLoader }),\n /**\n * getRedelegations queries redelegations of given address.\n *\n * When called from another module, this query might consume a high amount of\n * gas if the pagination field is incorrectly set.\n */\n getRedelegations: withMetadata(async function getRedelegations(input: DeepPartial<cosmos_staking_v1beta1_query.QueryRedelegationsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(44);\n return getClient(service).redelegations(input, options);\n }, { path: [44, \"redelegations\"], serviceLoader }),\n /**\n * getDelegatorValidators queries all validators info for given delegator\n * address.\n *\n * When called from another module, this query might consume a high amount of\n * gas if the pagination field is incorrectly set.\n */\n getDelegatorValidators: withMetadata(async function getDelegatorValidators(input: DeepPartial<cosmos_staking_v1beta1_query.QueryDelegatorValidatorsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(44);\n return getClient(service).delegatorValidators(input, options);\n }, { path: [44, \"delegatorValidators\"], serviceLoader }),\n /**\n * getDelegatorValidator queries validator info for given delegator validator\n * pair.\n */\n getDelegatorValidator: withMetadata(async function getDelegatorValidator(input: DeepPartial<cosmos_staking_v1beta1_query.QueryDelegatorValidatorRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(44);\n return getClient(service).delegatorValidator(input, options);\n }, { path: [44, \"delegatorValidator\"], serviceLoader }),\n /**\n * getHistoricalInfo queries the historical info for given height.\n */\n getHistoricalInfo: withMetadata(async function getHistoricalInfo(input: DeepPartial<cosmos_staking_v1beta1_query.QueryHistoricalInfoRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(44);\n return getClient(service).historicalInfo(input, options);\n }, { path: [44, \"historicalInfo\"], serviceLoader }),\n /**\n * getPool queries the pool info.\n */\n getPool: withMetadata(async function getPool(input: DeepPartial<cosmos_staking_v1beta1_query.QueryPoolRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(44);\n return getClient(service).pool(input, options);\n }, { path: [44, \"pool\"], serviceLoader }),\n /**\n * Parameters queries the staking parameters.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<cosmos_staking_v1beta1_query.QueryParamsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(44);\n return getClient(service).params(input, options);\n }, { path: [44, \"params\"], serviceLoader }),\n /**\n * createValidator defines a method for creating a new validator.\n */\n createValidator: withMetadata(async function createValidator(input: DeepSimplify<cosmos_staking_v1beta1_tx.MsgCreateValidator>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(45);\n return getMsgClient(service).createValidator(input, options);\n }, { path: [45, \"createValidator\"], serviceLoader }),\n /**\n * editValidator defines a method for editing an existing validator.\n */\n editValidator: withMetadata(async function editValidator(input: DeepSimplify<cosmos_staking_v1beta1_tx.MsgEditValidator>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(45);\n return getMsgClient(service).editValidator(input, options);\n }, { path: [45, \"editValidator\"], serviceLoader }),\n /**\n * delegate defines a method for performing a delegation of coins\n * from a delegator to a validator.\n */\n delegate: withMetadata(async function delegate(input: DeepSimplify<cosmos_staking_v1beta1_tx.MsgDelegate>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(45);\n return getMsgClient(service).delegate(input, options);\n }, { path: [45, \"delegate\"], serviceLoader }),\n /**\n * beginRedelegate defines a method for performing a redelegation\n * of coins from a delegator and source validator to a destination validator.\n */\n beginRedelegate: withMetadata(async function beginRedelegate(input: DeepSimplify<cosmos_staking_v1beta1_tx.MsgBeginRedelegate>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(45);\n return getMsgClient(service).beginRedelegate(input, options);\n }, { path: [45, \"beginRedelegate\"], serviceLoader }),\n /**\n * undelegate defines a method for performing an undelegation from a\n * delegate and a validator.\n */\n undelegate: withMetadata(async function undelegate(input: DeepSimplify<cosmos_staking_v1beta1_tx.MsgUndelegate>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(45);\n return getMsgClient(service).undelegate(input, options);\n }, { path: [45, \"undelegate\"], serviceLoader }),\n /**\n * cancelUnbondingDelegation defines a method for performing canceling the unbonding delegation\n * and delegate back to previous validator.\n */\n cancelUnbondingDelegation: withMetadata(async function cancelUnbondingDelegation(input: DeepSimplify<cosmos_staking_v1beta1_tx.MsgCancelUnbondingDelegation>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(45);\n return getMsgClient(service).cancelUnbondingDelegation(input, options);\n }, { path: [45, \"cancelUnbondingDelegation\"], serviceLoader }),\n /**\n * updateParams defines an operation for updating the x/staking module\n * parameters.\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<cosmos_staking_v1beta1_tx.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(45);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [45, \"updateParams\"], serviceLoader })\n }\n },\n store: {\n streaming: {\n abci: {\n /**\n * getListenFinalizeBlock is the corresponding endpoint for ABCIListener.ListenEndBlock\n */\n getListenFinalizeBlock: withMetadata(async function getListenFinalizeBlock(input: DeepPartial<cosmos_store_streaming_abci_grpc.ListenFinalizeBlockRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(46);\n return getClient(service).listenFinalizeBlock(input, options);\n }, { path: [46, \"listenFinalizeBlock\"], serviceLoader }),\n /**\n * getListenCommit is the corresponding endpoint for ABCIListener.getListenCommit\n */\n getListenCommit: withMetadata(async function getListenCommit(input: DeepPartial<cosmos_store_streaming_abci_grpc.ListenCommitRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(46);\n return getClient(service).listenCommit(input, options);\n }, { path: [46, \"listenCommit\"], serviceLoader })\n }\n }\n },\n tx: {\n v1beta1: {\n /**\n * getSimulate simulates executing a transaction for estimating gas usage.\n */\n getSimulate: withMetadata(async function getSimulate(input: DeepPartial<cosmos_tx_v1beta1_service.SimulateRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(47);\n return getClient(service).simulate(input, options);\n }, { path: [47, \"simulate\"], serviceLoader }),\n /**\n * getTx fetches a tx by hash.\n */\n getTx: withMetadata(async function getTx(input: DeepPartial<cosmos_tx_v1beta1_service.GetTxRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(47);\n return getClient(service).getTx(input, options);\n }, { path: [47, \"getTx\"], serviceLoader }),\n /**\n * getBroadcastTx broadcast transaction.\n */\n getBroadcastTx: withMetadata(async function getBroadcastTx(input: DeepPartial<cosmos_tx_v1beta1_service.BroadcastTxRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(47);\n return getClient(service).broadcastTx(input, options);\n }, { path: [47, \"broadcastTx\"], serviceLoader }),\n /**\n * getTxsEvent fetches txs by event.\n */\n getTxsEvent: withMetadata(async function getTxsEvent(input: DeepPartial<cosmos_tx_v1beta1_service.GetTxsEventRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(47);\n return getClient(service).getTxsEvent(input, options);\n }, { path: [47, \"getTxsEvent\"], serviceLoader }),\n /**\n * getBlockWithTxs fetches a block with decoded txs.\n */\n getBlockWithTxs: withMetadata(async function getBlockWithTxs(input: DeepPartial<cosmos_tx_v1beta1_service.GetBlockWithTxsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(47);\n return getClient(service).getBlockWithTxs(input, options);\n }, { path: [47, \"getBlockWithTxs\"], serviceLoader }),\n /**\n * getTxDecode decodes the transaction.\n */\n getTxDecode: withMetadata(async function getTxDecode(input: DeepPartial<cosmos_tx_v1beta1_service.TxDecodeRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(47);\n return getClient(service).txDecode(input, options);\n }, { path: [47, \"txDecode\"], serviceLoader }),\n /**\n * getTxEncode encodes the transaction.\n */\n getTxEncode: withMetadata(async function getTxEncode(input: DeepPartial<cosmos_tx_v1beta1_service.TxEncodeRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(47);\n return getClient(service).txEncode(input, options);\n }, { path: [47, \"txEncode\"], serviceLoader }),\n /**\n * getTxEncodeAmino encodes an Amino transaction from JSON to encoded bytes.\n */\n getTxEncodeAmino: withMetadata(async function getTxEncodeAmino(input: DeepPartial<cosmos_tx_v1beta1_service.TxEncodeAminoRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(47);\n return getClient(service).txEncodeAmino(input, options);\n }, { path: [47, \"txEncodeAmino\"], serviceLoader }),\n /**\n * getTxDecodeAmino decodes an Amino transaction from encoded bytes to JSON.\n */\n getTxDecodeAmino: withMetadata(async function getTxDecodeAmino(input: DeepPartial<cosmos_tx_v1beta1_service.TxDecodeAminoRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(47);\n return getClient(service).txDecodeAmino(input, options);\n }, { path: [47, \"txDecodeAmino\"], serviceLoader })\n }\n },\n upgrade: {\n v1beta1: {\n /**\n * getCurrentPlan queries the current upgrade plan.\n */\n getCurrentPlan: withMetadata(async function getCurrentPlan(input: DeepPartial<cosmos_upgrade_v1beta1_query.QueryCurrentPlanRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(48);\n return getClient(service).currentPlan(input, options);\n }, { path: [48, \"currentPlan\"], serviceLoader }),\n /**\n * getAppliedPlan queries a previously applied upgrade plan by its name.\n */\n getAppliedPlan: withMetadata(async function getAppliedPlan(input: DeepPartial<cosmos_upgrade_v1beta1_query.QueryAppliedPlanRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(48);\n return getClient(service).appliedPlan(input, options);\n }, { path: [48, \"appliedPlan\"], serviceLoader }),\n /**\n * getUpgradedConsensusState queries the consensus state that will serve\n * as a trusted kernel for the next version of this chain. It will only be\n * stored at the last height of this chain.\n * getUpgradedConsensusState RPC not supported with legacy querier\n * This rpc is deprecated now that IBC has its own replacement\n * (https://github.com/cosmos/ibc-go/blob/2c880a22e9f9cc75f62b527ca94aa75ce1106001/proto/ibc/core/client/v1/query.proto#L54)\n * @deprecated\n */\n getUpgradedConsensusState: withMetadata(async function getUpgradedConsensusState(input: DeepPartial<cosmos_upgrade_v1beta1_query.QueryUpgradedConsensusStateRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(48);\n return getClient(service).upgradedConsensusState(input, options);\n }, { path: [48, \"upgradedConsensusState\"], serviceLoader }),\n /**\n * getModuleVersions queries the list of module versions from state.\n */\n getModuleVersions: withMetadata(async function getModuleVersions(input: DeepPartial<cosmos_upgrade_v1beta1_query.QueryModuleVersionsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(48);\n return getClient(service).moduleVersions(input, options);\n }, { path: [48, \"moduleVersions\"], serviceLoader }),\n /**\n * Returns the account with authority to conduct upgrades\n */\n getAuthority: withMetadata(async function getAuthority(input: DeepPartial<cosmos_upgrade_v1beta1_query.QueryAuthorityRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(48);\n return getClient(service).authority(input, options);\n }, { path: [48, \"authority\"], serviceLoader }),\n /**\n * softwareUpgrade is a governance operation for initiating a software upgrade.\n */\n softwareUpgrade: withMetadata(async function softwareUpgrade(input: DeepSimplify<cosmos_upgrade_v1beta1_tx.MsgSoftwareUpgrade>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(49);\n return getMsgClient(service).softwareUpgrade(input, options);\n }, { path: [49, \"softwareUpgrade\"], serviceLoader }),\n /**\n * cancelUpgrade is a governance operation for cancelling a previously\n * approved software upgrade.\n */\n cancelUpgrade: withMetadata(async function cancelUpgrade(input: DeepSimplify<cosmos_upgrade_v1beta1_tx.MsgCancelUpgrade>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(49);\n return getMsgClient(service).cancelUpgrade(input, options);\n }, { path: [49, \"cancelUpgrade\"], serviceLoader })\n }\n },\n vesting: {\n v1beta1: {\n /**\n * createVestingAccount defines a method that enables creating a vesting\n * account.\n */\n createVestingAccount: withMetadata(async function createVestingAccount(input: DeepSimplify<cosmos_vesting_v1beta1_tx.MsgCreateVestingAccount>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(50);\n return getMsgClient(service).createVestingAccount(input, options);\n }, { path: [50, \"createVestingAccount\"], serviceLoader }),\n /**\n * createPermanentLockedAccount defines a method that enables creating a permanent\n * locked account.\n */\n createPermanentLockedAccount: withMetadata(async function createPermanentLockedAccount(input: DeepSimplify<cosmos_vesting_v1beta1_tx.MsgCreatePermanentLockedAccount>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(50);\n return getMsgClient(service).createPermanentLockedAccount(input, options);\n }, { path: [50, \"createPermanentLockedAccount\"], serviceLoader }),\n /**\n * createPeriodicVestingAccount defines a method that enables creating a\n * periodic vesting account.\n */\n createPeriodicVestingAccount: withMetadata(async function createPeriodicVestingAccount(input: DeepSimplify<cosmos_vesting_v1beta1_tx.MsgCreatePeriodicVestingAccount>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(50);\n return getMsgClient(service).createPeriodicVestingAccount(input, options);\n }, { path: [50, \"createPeriodicVestingAccount\"], serviceLoader })\n }\n }\n },\n tendermint: {\n abci: {\n getEcho: withMetadata(async function getEcho(input: DeepPartial<tendermint_abci_types.RequestEcho>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).echo(input, options);\n }, { path: [8, \"echo\"], serviceLoader }),\n getFlush: withMetadata(async function getFlush(input: DeepPartial<tendermint_abci_types.RequestFlush> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).flush(input, options);\n }, { path: [8, \"flush\"], serviceLoader }),\n getInfo: withMetadata(async function getInfo(input: DeepPartial<tendermint_abci_types.RequestInfo>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).info(input, options);\n }, { path: [8, \"info\"], serviceLoader }),\n getCheckTx: withMetadata(async function getCheckTx(input: DeepPartial<tendermint_abci_types.RequestCheckTx>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).checkTx(input, options);\n }, { path: [8, \"checkTx\"], serviceLoader }),\n getQuery: withMetadata(async function getQuery(input: DeepPartial<tendermint_abci_types.RequestQuery>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).query(input, options);\n }, { path: [8, \"query\"], serviceLoader }),\n getCommit: withMetadata(async function getCommit(input: DeepPartial<tendermint_abci_types.RequestCommit> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).commit(input, options);\n }, { path: [8, \"commit\"], serviceLoader }),\n getInitChain: withMetadata(async function getInitChain(input: DeepPartial<tendermint_abci_types.RequestInitChain>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).initChain(input, options);\n }, { path: [8, \"initChain\"], serviceLoader }),\n getListSnapshots: withMetadata(async function getListSnapshots(input: DeepPartial<tendermint_abci_types.RequestListSnapshots> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).listSnapshots(input, options);\n }, { path: [8, \"listSnapshots\"], serviceLoader }),\n getOfferSnapshot: withMetadata(async function getOfferSnapshot(input: DeepPartial<tendermint_abci_types.RequestOfferSnapshot>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).offerSnapshot(input, options);\n }, { path: [8, \"offerSnapshot\"], serviceLoader }),\n getLoadSnapshotChunk: withMetadata(async function getLoadSnapshotChunk(input: DeepPartial<tendermint_abci_types.RequestLoadSnapshotChunk>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).loadSnapshotChunk(input, options);\n }, { path: [8, \"loadSnapshotChunk\"], serviceLoader }),\n getApplySnapshotChunk: withMetadata(async function getApplySnapshotChunk(input: DeepPartial<tendermint_abci_types.RequestApplySnapshotChunk>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).applySnapshotChunk(input, options);\n }, { path: [8, \"applySnapshotChunk\"], serviceLoader }),\n getPrepareProposal: withMetadata(async function getPrepareProposal(input: DeepPartial<tendermint_abci_types.RequestPrepareProposal>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).prepareProposal(input, options);\n }, { path: [8, \"prepareProposal\"], serviceLoader }),\n getProcessProposal: withMetadata(async function getProcessProposal(input: DeepPartial<tendermint_abci_types.RequestProcessProposal>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).processProposal(input, options);\n }, { path: [8, \"processProposal\"], serviceLoader }),\n getExtendVote: withMetadata(async function getExtendVote(input: DeepPartial<tendermint_abci_types.RequestExtendVote>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).extendVote(input, options);\n }, { path: [8, \"extendVote\"], serviceLoader }),\n getVerifyVoteExtension: withMetadata(async function getVerifyVoteExtension(input: DeepPartial<tendermint_abci_types.RequestVerifyVoteExtension>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).verifyVoteExtension(input, options);\n }, { path: [8, \"verifyVoteExtension\"], serviceLoader }),\n getFinalizeBlock: withMetadata(async function getFinalizeBlock(input: DeepPartial<tendermint_abci_types.RequestFinalizeBlock>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).finalizeBlock(input, options);\n }, { path: [8, \"finalizeBlock\"], serviceLoader })\n }\n }\n };\n}\n", "import { createServiceLoader } from \"../sdk/client/createServiceLoader.ts\";\n\nimport type * as akash_audit_v1_query from \"./protos/akash/audit/v1/query.ts\";\nimport type * as akash_audit_v1_msg from \"./protos/akash/audit/v1/msg.ts\";\nimport type * as akash_bme_v1_query from \"./protos/akash/bme/v1/query.ts\";\nimport type * as akash_bme_v1_msgs from \"./protos/akash/bme/v1/msgs.ts\";\nimport type * as akash_cert_v1_query from \"./protos/akash/cert/v1/query.ts\";\nimport type * as akash_cert_v1_msg from \"./protos/akash/cert/v1/msg.ts\";\nimport type * as akash_deployment_v1beta4_query from \"./protos/akash/deployment/v1beta4/query.ts\";\nimport type * as akash_deployment_v1beta4_deploymentmsg from \"./protos/akash/deployment/v1beta4/deploymentmsg.ts\";\nimport type * as akash_deployment_v1beta4_groupmsg from \"./protos/akash/deployment/v1beta4/groupmsg.ts\";\nimport type * as akash_deployment_v1beta4_paramsmsg from \"./protos/akash/deployment/v1beta4/paramsmsg.ts\";\nimport type * as akash_downtimedetector_v1beta1_query from \"./protos/akash/downtimedetector/v1beta1/query.ts\";\nimport type * as akash_epochs_v1beta1_query from \"./protos/akash/epochs/v1beta1/query.ts\";\nimport type * as akash_escrow_v1_query from \"./protos/akash/escrow/v1/query.ts\";\nimport type * as akash_escrow_v1_msg from \"./protos/akash/escrow/v1/msg.ts\";\nimport type * as akash_market_v1beta5_query from \"./protos/akash/market/v1beta5/query.ts\";\nimport type * as akash_market_v1beta5_bidmsg from \"./protos/akash/market/v1beta5/bidmsg.ts\";\nimport type * as akash_market_v1beta5_leasemsg from \"./protos/akash/market/v1beta5/leasemsg.ts\";\nimport type * as akash_market_v1beta5_paramsmsg from \"./protos/akash/market/v1beta5/paramsmsg.ts\";\nimport type * as akash_oracle_v1_prices from \"./protos/akash/oracle/v1/prices.ts\";\nimport type * as akash_oracle_v1_query from \"./protos/akash/oracle/v1/query.ts\";\nimport type * as akash_oracle_v1_msgs from \"./protos/akash/oracle/v1/msgs.ts\";\nimport type * as akash_provider_v1beta4_query from \"./protos/akash/provider/v1beta4/query.ts\";\nimport type * as akash_provider_v1beta4_msg from \"./protos/akash/provider/v1beta4/msg.ts\";\nimport type * as akash_take_v1_query from \"./protos/akash/take/v1/query.ts\";\nimport type * as akash_take_v1_paramsmsg from \"./protos/akash/take/v1/paramsmsg.ts\";\nimport type * as akash_wasm_v1_query from \"./protos/akash/wasm/v1/query.ts\";\nimport type * as akash_wasm_v1_paramsmsg from \"./protos/akash/wasm/v1/paramsmsg.ts\";\nimport { createClientFactory } from \"../sdk/client/createClientFactory.ts\";\nimport type { Transport, CallOptions, TxCallOptions } from \"../sdk/transport/types.ts\";\nimport { withMetadata } from \"../sdk/client/sdkMetadata.ts\";\nimport type { DeepPartial, DeepSimplify } from \"../encoding/typeEncodingHelpers.ts\";\n\n\nexport const serviceLoader= createServiceLoader([\n () => import(\"./protos/akash/audit/v1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/akash/audit/v1/service_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/akash/bme/v1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/akash/bme/v1/service_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/akash/cert/v1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/akash/cert/v1/service_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/akash/deployment/v1beta4/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/akash/deployment/v1beta4/service_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/akash/downtimedetector/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/akash/epochs/v1beta1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/akash/escrow/v1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/akash/escrow/v1/service_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/akash/market/v1beta5/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/akash/market/v1beta5/service_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/akash/oracle/v1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/akash/oracle/v1/service_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/akash/provider/v1beta4/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/akash/provider/v1beta4/service_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/akash/take/v1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/akash/take/v1/service_akash.ts\").then(m => m.Msg),\n () => import(\"./protos/akash/wasm/v1/query_akash.ts\").then(m => m.Query),\n () => import(\"./protos/akash/wasm/v1/service_akash.ts\").then(m => m.Msg)\n] as const);\nexport function createSDK(queryTransport: Transport, txTransport: Transport) {\n const getClient = createClientFactory<CallOptions>(queryTransport);\n const getMsgClient = createClientFactory<TxCallOptions>(txTransport);\n return {\n akash: {\n audit: {\n v1: {\n /**\n * getAllProvidersAttributes queries all providers.\n */\n getAllProvidersAttributes: withMetadata(async function getAllProvidersAttributes(input: DeepPartial<akash_audit_v1_query.QueryAllProvidersAttributesRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(0);\n return getClient(service).allProvidersAttributes(input, options);\n }, { path: [0, \"allProvidersAttributes\"], serviceLoader }),\n /**\n * getProviderAttributes queries all provider signed attributes.\n */\n getProviderAttributes: withMetadata(async function getProviderAttributes(input: DeepPartial<akash_audit_v1_query.QueryProviderAttributesRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(0);\n return getClient(service).providerAttributes(input, options);\n }, { path: [0, \"providerAttributes\"], serviceLoader }),\n /**\n * getProviderAuditorAttributes queries provider signed attributes by specific auditor.\n */\n getProviderAuditorAttributes: withMetadata(async function getProviderAuditorAttributes(input: DeepPartial<akash_audit_v1_query.QueryProviderAuditorRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(0);\n return getClient(service).providerAuditorAttributes(input, options);\n }, { path: [0, \"providerAuditorAttributes\"], serviceLoader }),\n /**\n * getAuditorAttributes queries all providers signed by this auditor.\n */\n getAuditorAttributes: withMetadata(async function getAuditorAttributes(input: DeepPartial<akash_audit_v1_query.QueryAuditorAttributesRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(0);\n return getClient(service).auditorAttributes(input, options);\n }, { path: [0, \"auditorAttributes\"], serviceLoader }),\n /**\n * signProviderAttributes defines a method that signs provider attributes.\n */\n signProviderAttributes: withMetadata(async function signProviderAttributes(input: DeepSimplify<akash_audit_v1_msg.MsgSignProviderAttributes>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(1);\n return getMsgClient(service).signProviderAttributes(input, options);\n }, { path: [1, \"signProviderAttributes\"], serviceLoader }),\n /**\n * deleteProviderAttributes defines a method that deletes provider attributes.\n */\n deleteProviderAttributes: withMetadata(async function deleteProviderAttributes(input: DeepSimplify<akash_audit_v1_msg.MsgDeleteProviderAttributes>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(1);\n return getMsgClient(service).deleteProviderAttributes(input, options);\n }, { path: [1, \"deleteProviderAttributes\"], serviceLoader })\n }\n },\n bme: {\n v1: {\n /**\n * getParams returns the module parameters\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<akash_bme_v1_query.QueryParamsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(2);\n return getClient(service).params(input, options);\n }, { path: [2, \"params\"], serviceLoader }),\n /**\n * getVaultState returns the current vault state\n */\n getVaultState: withMetadata(async function getVaultState(input: DeepPartial<akash_bme_v1_query.QueryVaultStateRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(2);\n return getClient(service).vaultState(input, options);\n }, { path: [2, \"vaultState\"], serviceLoader }),\n /**\n * getStatus returns the current circuit breaker status\n */\n getStatus: withMetadata(async function getStatus(input: DeepPartial<akash_bme_v1_query.QueryStatusRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(2);\n return getClient(service).status(input, options);\n }, { path: [2, \"status\"], serviceLoader }),\n /**\n * getLedgerRecords queries ledger records with optional filters for status, source, denom, to_denom\n */\n getLedgerRecords: withMetadata(async function getLedgerRecords(input: DeepPartial<akash_bme_v1_query.QueryLedgerRecordsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(2);\n return getClient(service).ledgerRecords(input, options);\n }, { path: [2, \"ledgerRecords\"], serviceLoader }),\n /**\n * updateParams updates the module parameters.\n * This operation can only be performed through governance proposals.\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<akash_bme_v1_msgs.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(3);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [3, \"updateParams\"], serviceLoader }),\n /**\n * burnMint allows users to burn one token and mint another at current oracle prices.\n * Typically used to burn unused ACT tokens back to AKT.\n * The operation may be delayed or rejected based on circuit breaker status.\n */\n burnMint: withMetadata(async function burnMint(input: DeepSimplify<akash_bme_v1_msgs.MsgBurnMint>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(3);\n return getMsgClient(service).burnMint(input, options);\n }, { path: [3, \"burnMint\"], serviceLoader }),\n /**\n * mintACT mints ACT tokens by burning the specified source token.\n * The mint amount is calculated based on current oracle prices and\n * the collateral ratio. May be halted if circuit breaker is triggered.\n */\n mintACT: withMetadata(async function mintACT(input: DeepSimplify<akash_bme_v1_msgs.MsgMintACT>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(3);\n return getMsgClient(service).mintACT(input, options);\n }, { path: [3, \"mintACT\"], serviceLoader }),\n /**\n * burnACT burns ACT tokens and mints the specified destination token.\n * The burn operation uses remint credits when available, otherwise\n * requires adequate collateral backing based on oracle prices.\n */\n burnACT: withMetadata(async function burnACT(input: DeepSimplify<akash_bme_v1_msgs.MsgBurnACT>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(3);\n return getMsgClient(service).burnACT(input, options);\n }, { path: [3, \"burnACT\"], serviceLoader })\n }\n },\n cert: {\n v1: {\n /**\n * getCertificates queries certificates on-chain.\n */\n getCertificates: withMetadata(async function getCertificates(input: DeepPartial<akash_cert_v1_query.QueryCertificatesRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(4);\n return getClient(service).certificates(input, options);\n }, { path: [4, \"certificates\"], serviceLoader }),\n /**\n * createCertificate defines a method to create new certificate given proper inputs.\n */\n createCertificate: withMetadata(async function createCertificate(input: DeepSimplify<akash_cert_v1_msg.MsgCreateCertificate>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(5);\n return getMsgClient(service).createCertificate(input, options);\n }, { path: [5, \"createCertificate\"], serviceLoader }),\n /**\n * revokeCertificate defines a method to revoke the certificate.\n */\n revokeCertificate: withMetadata(async function revokeCertificate(input: DeepSimplify<akash_cert_v1_msg.MsgRevokeCertificate>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(5);\n return getMsgClient(service).revokeCertificate(input, options);\n }, { path: [5, \"revokeCertificate\"], serviceLoader })\n }\n },\n deployment: {\n v1beta4: {\n /**\n * getDeployments queries deployments.\n */\n getDeployments: withMetadata(async function getDeployments(input: DeepPartial<akash_deployment_v1beta4_query.QueryDeploymentsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).deployments(input, options);\n }, { path: [6, \"deployments\"], serviceLoader }),\n /**\n * getDeployment queries deployment details.\n */\n getDeployment: withMetadata(async function getDeployment(input: DeepPartial<akash_deployment_v1beta4_query.QueryDeploymentRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).deployment(input, options);\n }, { path: [6, \"deployment\"], serviceLoader }),\n /**\n * getGroup queries group details.\n */\n getGroup: withMetadata(async function getGroup(input: DeepPartial<akash_deployment_v1beta4_query.QueryGroupRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).group(input, options);\n }, { path: [6, \"group\"], serviceLoader }),\n /**\n * getParams returns the total set of minting parameters.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<akash_deployment_v1beta4_query.QueryParamsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(6);\n return getClient(service).params(input, options);\n }, { path: [6, \"params\"], serviceLoader }),\n /**\n * createDeployment defines a method to create new deployment given proper inputs.\n */\n createDeployment: withMetadata(async function createDeployment(input: DeepSimplify<akash_deployment_v1beta4_deploymentmsg.MsgCreateDeployment>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(7);\n return getMsgClient(service).createDeployment(input, options);\n }, { path: [7, \"createDeployment\"], serviceLoader }),\n /**\n * updateDeployment defines a method to update a deployment given proper inputs.\n */\n updateDeployment: withMetadata(async function updateDeployment(input: DeepSimplify<akash_deployment_v1beta4_deploymentmsg.MsgUpdateDeployment>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(7);\n return getMsgClient(service).updateDeployment(input, options);\n }, { path: [7, \"updateDeployment\"], serviceLoader }),\n /**\n * closeDeployment defines a method to close a deployment given proper inputs.\n */\n closeDeployment: withMetadata(async function closeDeployment(input: DeepSimplify<akash_deployment_v1beta4_deploymentmsg.MsgCloseDeployment>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(7);\n return getMsgClient(service).closeDeployment(input, options);\n }, { path: [7, \"closeDeployment\"], serviceLoader }),\n /**\n * closeGroup defines a method to close a group of a deployment given proper inputs.\n */\n closeGroup: withMetadata(async function closeGroup(input: DeepSimplify<akash_deployment_v1beta4_groupmsg.MsgCloseGroup>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(7);\n return getMsgClient(service).closeGroup(input, options);\n }, { path: [7, \"closeGroup\"], serviceLoader }),\n /**\n * pauseGroup defines a method to pause a group of a deployment given proper inputs.\n */\n pauseGroup: withMetadata(async function pauseGroup(input: DeepSimplify<akash_deployment_v1beta4_groupmsg.MsgPauseGroup>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(7);\n return getMsgClient(service).pauseGroup(input, options);\n }, { path: [7, \"pauseGroup\"], serviceLoader }),\n /**\n * startGroup defines a method to start a group of a deployment given proper inputs.\n */\n startGroup: withMetadata(async function startGroup(input: DeepSimplify<akash_deployment_v1beta4_groupmsg.MsgStartGroup>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(7);\n return getMsgClient(service).startGroup(input, options);\n }, { path: [7, \"startGroup\"], serviceLoader }),\n /**\n * updateParams defines a governance operation for updating the x/deployment module\n * parameters. The authority is hard-coded to the x/gov module account.\n *\n * Since: akash v1.0.0\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<akash_deployment_v1beta4_paramsmsg.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(7);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [7, \"updateParams\"], serviceLoader })\n }\n },\n downtimedetector: {\n v1beta1: {\n /**\n * getRecoveredSinceDowntimeOfLength queries if the chain has recovered for a specified duration\n * since experiencing downtime of a given length\n */\n getRecoveredSinceDowntimeOfLength: withMetadata(async function getRecoveredSinceDowntimeOfLength(input: DeepPartial<akash_downtimedetector_v1beta1_query.RecoveredSinceDowntimeOfLengthRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(8);\n return getClient(service).recoveredSinceDowntimeOfLength(input, options);\n }, { path: [8, \"recoveredSinceDowntimeOfLength\"], serviceLoader })\n }\n },\n epochs: {\n v1beta1: {\n /**\n * getEpochInfos provide running epochInfos\n */\n getEpochInfos: withMetadata(async function getEpochInfos(input: DeepPartial<akash_epochs_v1beta1_query.QueryEpochInfosRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(9);\n return getClient(service).epochInfos(input, options);\n }, { path: [9, \"epochInfos\"], serviceLoader }),\n /**\n * getCurrentEpoch provide current epoch of specified identifier\n */\n getCurrentEpoch: withMetadata(async function getCurrentEpoch(input: DeepPartial<akash_epochs_v1beta1_query.QueryCurrentEpochRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(9);\n return getClient(service).currentEpoch(input, options);\n }, { path: [9, \"currentEpoch\"], serviceLoader })\n }\n },\n escrow: {\n v1: {\n /**\n * getAccounts queries all accounts.\n */\n getAccounts: withMetadata(async function getAccounts(input: DeepPartial<akash_escrow_v1_query.QueryAccountsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(10);\n return getClient(service).accounts(input, options);\n }, { path: [10, \"accounts\"], serviceLoader }),\n /**\n * getPayments queries all payments.\n */\n getPayments: withMetadata(async function getPayments(input: DeepPartial<akash_escrow_v1_query.QueryPaymentsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(10);\n return getClient(service).payments(input, options);\n }, { path: [10, \"payments\"], serviceLoader }),\n /**\n * accountDeposit deposits more funds into the escrow account.\n */\n accountDeposit: withMetadata(async function accountDeposit(input: DeepSimplify<akash_escrow_v1_msg.MsgAccountDeposit>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(11);\n return getMsgClient(service).accountDeposit(input, options);\n }, { path: [11, \"accountDeposit\"], serviceLoader })\n }\n },\n market: {\n v1beta5: {\n /**\n * getOrders queries orders with filters.\n */\n getOrders: withMetadata(async function getOrders(input: DeepPartial<akash_market_v1beta5_query.QueryOrdersRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(12);\n return getClient(service).orders(input, options);\n }, { path: [12, \"orders\"], serviceLoader }),\n /**\n * getOrder queries order details.\n */\n getOrder: withMetadata(async function getOrder(input: DeepPartial<akash_market_v1beta5_query.QueryOrderRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(12);\n return getClient(service).order(input, options);\n }, { path: [12, \"order\"], serviceLoader }),\n /**\n * getBids queries bids with filters.\n */\n getBids: withMetadata(async function getBids(input: DeepPartial<akash_market_v1beta5_query.QueryBidsRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(12);\n return getClient(service).bids(input, options);\n }, { path: [12, \"bids\"], serviceLoader }),\n /**\n * getBid queries bid details.\n */\n getBid: withMetadata(async function getBid(input: DeepPartial<akash_market_v1beta5_query.QueryBidRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(12);\n return getClient(service).bid(input, options);\n }, { path: [12, \"bid\"], serviceLoader }),\n /**\n * getLeases queries leases with filters.\n */\n getLeases: withMetadata(async function getLeases(input: DeepPartial<akash_market_v1beta5_query.QueryLeasesRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(12);\n return getClient(service).leases(input, options);\n }, { path: [12, \"leases\"], serviceLoader }),\n /**\n * getLease queries lease details.\n */\n getLease: withMetadata(async function getLease(input: DeepPartial<akash_market_v1beta5_query.QueryLeaseRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(12);\n return getClient(service).lease(input, options);\n }, { path: [12, \"lease\"], serviceLoader }),\n /**\n * getParams returns the total set of minting parameters.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<akash_market_v1beta5_query.QueryParamsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(12);\n return getClient(service).params(input, options);\n }, { path: [12, \"params\"], serviceLoader }),\n /**\n * createBid defines a method to create a bid given proper inputs.\n */\n createBid: withMetadata(async function createBid(input: DeepSimplify<akash_market_v1beta5_bidmsg.MsgCreateBid>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(13);\n return getMsgClient(service).createBid(input, options);\n }, { path: [13, \"createBid\"], serviceLoader }),\n /**\n * closeBid defines a method to close a bid given proper inputs.\n */\n closeBid: withMetadata(async function closeBid(input: DeepSimplify<akash_market_v1beta5_bidmsg.MsgCloseBid>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(13);\n return getMsgClient(service).closeBid(input, options);\n }, { path: [13, \"closeBid\"], serviceLoader }),\n /**\n * withdrawLease withdraws accrued funds from the lease payment\n */\n withdrawLease: withMetadata(async function withdrawLease(input: DeepSimplify<akash_market_v1beta5_leasemsg.MsgWithdrawLease>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(13);\n return getMsgClient(service).withdrawLease(input, options);\n }, { path: [13, \"withdrawLease\"], serviceLoader }),\n /**\n * createLease creates a new lease\n */\n createLease: withMetadata(async function createLease(input: DeepSimplify<akash_market_v1beta5_leasemsg.MsgCreateLease>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(13);\n return getMsgClient(service).createLease(input, options);\n }, { path: [13, \"createLease\"], serviceLoader }),\n /**\n * closeLease defines a method to close an order given proper inputs.\n */\n closeLease: withMetadata(async function closeLease(input: DeepSimplify<akash_market_v1beta5_leasemsg.MsgCloseLease>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(13);\n return getMsgClient(service).closeLease(input, options);\n }, { path: [13, \"closeLease\"], serviceLoader }),\n /**\n * updateParams defines a governance operation for updating the x/market module\n * parameters. The authority is hard-coded to the x/gov module account.\n *\n * Since: akash v1.0.0\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<akash_market_v1beta5_paramsmsg.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(13);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [13, \"updateParams\"], serviceLoader })\n }\n },\n oracle: {\n v1: {\n /**\n * getPrices query prices for specific denom\n */\n getPrices: withMetadata(async function getPrices(input: DeepPartial<akash_oracle_v1_prices.QueryPricesRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(14);\n return getClient(service).prices(input, options);\n }, { path: [14, \"prices\"], serviceLoader }),\n /**\n * getParams returns the total set of minting parameters.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<akash_oracle_v1_query.QueryParamsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(14);\n return getClient(service).params(input, options);\n }, { path: [14, \"params\"], serviceLoader }),\n /**\n * getPriceFeedConfig queries the price feed configuration for a given denom.\n */\n getPriceFeedConfig: withMetadata(async function getPriceFeedConfig(input: DeepPartial<akash_oracle_v1_query.QueryPriceFeedConfigRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(14);\n return getClient(service).priceFeedConfig(input, options);\n }, { path: [14, \"priceFeedConfig\"], serviceLoader }),\n /**\n * getAggregatedPrice queries the aggregated price for a given denom.\n */\n getAggregatedPrice: withMetadata(async function getAggregatedPrice(input: DeepPartial<akash_oracle_v1_query.QueryAggregatedPriceRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(14);\n return getClient(service).aggregatedPrice(input, options);\n }, { path: [14, \"aggregatedPrice\"], serviceLoader }),\n /**\n * addPriceEntry adds a new price entry for a denomination from an authorized source\n */\n addPriceEntry: withMetadata(async function addPriceEntry(input: DeepSimplify<akash_oracle_v1_msgs.MsgAddPriceEntry>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(15);\n return getMsgClient(service).addPriceEntry(input, options);\n }, { path: [15, \"addPriceEntry\"], serviceLoader }),\n /**\n * updateParams defines a governance operation for updating the x/wasm module\n * parameters. The authority is hard-coded to the x/gov module account.\n *\n * Since: akash v2.0.0\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<akash_oracle_v1_msgs.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(15);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [15, \"updateParams\"], serviceLoader })\n }\n },\n provider: {\n v1beta4: {\n /**\n * getProviders queries providers\n */\n getProviders: withMetadata(async function getProviders(input: DeepPartial<akash_provider_v1beta4_query.QueryProvidersRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(16);\n return getClient(service).providers(input, options);\n }, { path: [16, \"providers\"], serviceLoader }),\n /**\n * getProvider queries provider details\n */\n getProvider: withMetadata(async function getProvider(input: DeepPartial<akash_provider_v1beta4_query.QueryProviderRequest>, options?: CallOptions) {\n const service = await serviceLoader.loadAt(16);\n return getClient(service).provider(input, options);\n }, { path: [16, \"provider\"], serviceLoader }),\n /**\n * createProvider defines a method that creates a provider given the proper inputs.\n */\n createProvider: withMetadata(async function createProvider(input: DeepSimplify<akash_provider_v1beta4_msg.MsgCreateProvider>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(17);\n return getMsgClient(service).createProvider(input, options);\n }, { path: [17, \"createProvider\"], serviceLoader }),\n /**\n * updateProvider defines a method that updates a provider given the proper inputs.\n */\n updateProvider: withMetadata(async function updateProvider(input: DeepSimplify<akash_provider_v1beta4_msg.MsgUpdateProvider>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(17);\n return getMsgClient(service).updateProvider(input, options);\n }, { path: [17, \"updateProvider\"], serviceLoader }),\n /**\n * deleteProvider defines a method that deletes a provider given the proper inputs.\n */\n deleteProvider: withMetadata(async function deleteProvider(input: DeepSimplify<akash_provider_v1beta4_msg.MsgDeleteProvider>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(17);\n return getMsgClient(service).deleteProvider(input, options);\n }, { path: [17, \"deleteProvider\"], serviceLoader })\n }\n },\n take: {\n v1: {\n /**\n * getParams returns the total set of minting parameters.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<akash_take_v1_query.QueryParamsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(18);\n return getClient(service).params(input, options);\n }, { path: [18, \"params\"], serviceLoader }),\n /**\n * updateParams defines a governance operation for updating the x/market module\n * parameters. The authority is hard-coded to the x/gov module account.\n *\n * Since: akash v1.0.0\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<akash_take_v1_paramsmsg.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(19);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [19, \"updateParams\"], serviceLoader })\n }\n },\n wasm: {\n v1: {\n /**\n * getParams returns the total set of minting parameters.\n */\n getParams: withMetadata(async function getParams(input: DeepPartial<akash_wasm_v1_query.QueryParamsRequest> = {}, options?: CallOptions) {\n const service = await serviceLoader.loadAt(20);\n return getClient(service).params(input, options);\n }, { path: [20, \"params\"], serviceLoader }),\n /**\n * updateParams defines a governance operation for updating the x/wasm module\n * parameters. The authority is hard-coded to the x/gov module account.\n *\n * Since: akash v2.0.0\n */\n updateParams: withMetadata(async function updateParams(input: DeepSimplify<akash_wasm_v1_paramsmsg.MsgUpdateParams>, options?: TxCallOptions) {\n const service = await serviceLoader.loadAt(21);\n return getMsgClient(service).updateParams(input, options);\n }, { path: [21, \"updateParams\"], serviceLoader })\n }\n }\n }\n };\n}\n", "import type { GeneratedType } from \"@cosmjs/proto-signing\";\n\nimport { serviceLoader as cosmosServiceLoader } from \"../generated/createCosmosSDK.ts\";\nimport { serviceLoader as nodeServiceLoader } from \"../generated/createNodeSDK.ts\";\nimport { TxRaw } from \"../generated/protos/cosmos/tx/v1beta1/tx.ts\";\nimport { createMessageType } from \"./client/createServiceLoader.ts\";\n\nconst TxRawType = createMessageType(TxRaw);\nexport function getMessageType(typeUrl: string): GeneratedType | undefined {\n const type = nodeServiceLoader.getLoadedType(typeUrl) || cosmosServiceLoader.getLoadedType(typeUrl);\n if (type) return type;\n if (typeUrl === `/${TxRaw.$type}`) return TxRawType;\n return undefined;\n}\n", "import { TransportError } from \"./TransportError.ts\";\nimport type { Transport, TxCallOptions } from \"./types.ts\";\n\nexport function createNoopTransport(options: NoopTransportOptions): Transport<TxCallOptions> {\n return {\n async unary() {\n throw new TransportError(options.unaryErrorMessage, TransportError.Code.Unimplemented);\n },\n async stream() {\n throw new TransportError(options.streamErrorMessage || \"Transaction transport doesn't support streaming\", TransportError.Code.Unimplemented);\n },\n };\n}\n\nexport interface NoopTransportOptions {\n unaryErrorMessage: string;\n streamErrorMessage?: string;\n}\n", "import type { Interceptor } from \"@connectrpc/connect\";\nimport {\n ExponentialBackoff,\n handleWhen,\n retry,\n} from \"cockatiel\";\n\nimport { TransportError } from \"../TransportError.ts\";\n\nconst RETRIABLE_ERROR_CODES = new Set([\n TransportError.Code.Unavailable,\n TransportError.Code.DeadlineExceeded,\n TransportError.Code.Internal,\n TransportError.Code.Unknown,\n]);\nexport function createRetryInterceptor(options: RetryOptions): Interceptor {\n const retryPolicy = retry(handleWhen((error) => error instanceof TransportError && RETRIABLE_ERROR_CODES.has(error.code)), {\n maxAttempts: Math.min(3, options.maxAttempts),\n backoff: new ExponentialBackoff({\n initialDelay: 250,\n maxDelay: options.maxDelayMs ?? 5_000,\n }),\n });\n\n return (next) => async (req) => retryPolicy.execute(() => next(req));\n}\n\nexport function isRetryEnabled(options: RetryOptions | undefined): options is RetryOptions {\n return !!options?.maxAttempts && !Number.isNaN(options.maxAttempts) && options.maxAttempts > 0;\n}\n\nexport interface RetryOptions {\n /**\n * Maximum number of attempts to make after first failure.\n * Maximum allowed value is 3.\n */\n maxAttempts: number;\n /**\n * Maximum delay between attempts in milliseconds. Used to restrict exponential backoff calculated value.\n * Default value is 5000ms.\n */\n maxDelayMs?: number;\n}\n", "import type { GeneratedType } from \"@cosmjs/proto-signing\";\n\nimport type { MessageDesc, MessageInitShape, MessageShape, MethodDesc } from \"../../client/types.ts\";\nimport { TransportError } from \"../TransportError.ts\";\nimport type { Transport, TxCallOptions, UnaryResponse } from \"../types.ts\";\nimport type { TxClient } from \"./TxClient.ts\";\nimport { TxError } from \"./TxError.ts\";\n\nexport function createTxTransport(transportOptions: TransactionTransportOptions): Transport<TxCallOptions> {\n return {\n async unary<I extends MessageDesc, O extends MessageDesc>(\n method: MethodDesc<\"unary\", I, O>,\n input: MessageInitShape<I>,\n options?: TxCallOptions,\n ): Promise<UnaryResponse<I, O>> {\n const messages = [{\n typeUrl: `/${method.input.$type}`,\n value: method.input.fromPartial(input as Record<string, unknown>),\n }];\n const txResponse = await transportOptions.client.signAndBroadcast(messages, {\n afterSign: options?.afterSign,\n fee: options?.fee,\n memo: options?.memo ?? `akash: ${method.name}`,\n });\n options?.afterBroadcast?.(txResponse);\n\n if (txResponse.code !== 0) {\n throw new TxError(`Transaction failed with code ${txResponse.code}`, txResponse);\n }\n\n const response = txResponse.msgResponses[0];\n let responseMessage: MessageShape<O>;\n if (response) {\n const MessageType = transportOptions.getMessageType(response.typeUrl);\n if (!MessageType) {\n throw new Error(`Cannot find message type ${response.typeUrl} in type registry. `\n + `If you use cosmos.authz.v1beta1.exec(), then provide custom message types to TxClient.`);\n }\n responseMessage = MessageType.decode(response.value);\n } else {\n responseMessage = {} as MessageShape<O>;\n }\n\n return {\n stream: false,\n header: new Headers(),\n trailer: new Headers(),\n message: responseMessage,\n method,\n };\n },\n async stream() {\n throw new TransportError(`Transaction transport doesn't support streaming`, TransportError.Code.Unimplemented);\n },\n };\n}\n\nexport interface TransactionTransportOptions {\n client: TxClient;\n getMessageType: (typeUrl: string) => GeneratedType | undefined;\n}\n", "import type { Interceptor } from \"@connectrpc/connect\";\nimport { getAbortSignalReason } from \"@connectrpc/connect/protocol\";\n\nimport type { DeepPartial } from \"../../encoding/typeEncodingHelpers.ts\";\nimport { mapStream } from \"../client/stream.ts\";\nimport type { MessageDesc, MessageInitShape, MessageShape } from \"../client/types.ts\";\nimport { TransportError } from \"./TransportError.ts\";\nimport type { StreamRequest, StreamResponse, UnaryRequest, UnaryResponse } from \"./types.ts\";\n\n/**\n * UnaryFn represents the client-side invocation of a unary RPC - a method\n * that takes a single input message, and responds with a single output\n * message.\n * A Transport implements such a function, and makes it available to\n * interceptors.\n */\ntype UnaryFn<\n I extends MessageDesc,\n O extends MessageDesc,\n> = (req: UnaryRequest<I, O>) => Promise<UnaryResponse<I, O>>;\n\n/**\n * Runs a unary method with the given interceptors. Note that this function\n * is only used when implementing a Transport.\n */\nexport function runUnaryCall<\n I extends MessageDesc,\n O extends MessageDesc,\n>(options: {\n req: Omit<UnaryRequest<I, O>, \"signal\" | \"message\"> & {\n message: MessageInitShape<I>;\n };\n next: UnaryFn<I, O>;\n timeoutMs?: number;\n signal?: AbortSignal;\n interceptors?: Interceptor[];\n}): Promise<UnaryResponse<I, O>> {\n const next = composeInterceptors(options.next, options.interceptors);\n const { signal, abort } = createAbortSignal(options);\n\n const req = {\n ...options.req,\n message: options.req.method.input.fromPartial(options.req.message as DeepPartial<I>) as MessageShape<I>,\n signal,\n };\n return next(req).catch(abort);\n}\n\n/**\n * StreamingFn represents the client-side invocation of a streaming RPC - a\n * method that takes zero or more input messages, and responds with zero or\n * more output messages.\n * A Transport implements such a function, and makes it available to\n * interceptors.\n */\ntype StreamingFn<\n I extends MessageDesc = MessageDesc,\n O extends MessageDesc = MessageDesc,\n> = (req: StreamRequest<I, O>) => Promise<StreamResponse<I, O>>;\n\n/**\n * Runs a server-streaming method with the given interceptors. Note that this\n * function is only used when implementing a Transport.\n */\nexport function runStreamingCall<\n I extends MessageDesc,\n O extends MessageDesc,\n>(options: {\n req: Omit<StreamRequest<I, O>, \"signal\" | \"message\"> & {\n message: AsyncIterable<MessageInitShape<I>>;\n };\n next: StreamingFn<I, O>;\n timeoutMs?: number;\n signal?: AbortSignal;\n interceptors?: Interceptor[];\n}): Promise<StreamResponse<I, O>> {\n const next = composeInterceptors(options.next, options.interceptors);\n const { signal, abort } = createAbortSignal(options);\n const req = {\n ...options.req,\n message: mapStream(options.req.message, (message) => options.req.method.input.fromPartial(message as DeepPartial<I>) as MessageShape<I>),\n signal,\n };\n let doneCalled = false;\n // Call return on the request iterable to indicate\n // that we will no longer consume it and it should\n // cleanup any allocated resources.\n signal.addEventListener(\"abort\", function () {\n const it = options.req.message[Symbol.asyncIterator]();\n // If the signal is aborted due to an error, we want to throw\n // the error to the request iterator.\n if (!doneCalled) {\n it.throw?.(this.reason).catch(() => {\n // throw returns a promise, which we don't care about.\n //\n // Uncaught promises are thrown at sometime/somewhere by the event loop,\n // this is to ensure error is caught and ignored.\n });\n }\n it.return?.().catch(() => {\n // return returns a promise, which we don't care about.\n //\n // Uncaught promises are thrown at sometime/somewhere by the event loop,\n // this is to ensure error is caught and ignored.\n });\n });\n return next(req).then((res) => {\n return {\n ...res,\n message: {\n [Symbol.asyncIterator]() {\n const it = res.message[Symbol.asyncIterator]();\n return {\n next() {\n return it.next().then((r) => {\n if (r.done == true) {\n doneCalled = true;\n }\n return r;\n }, abort);\n },\n // We deliberately omit throw/return.\n };\n },\n },\n };\n }, abort);\n}\n\nfunction createAbortSignal(options: {\n timeoutMs?: number;\n signal?: AbortSignal;\n}) {\n const controller = new AbortController();\n const signals: AbortSignal[] = [controller.signal];\n let timeoutSignal: AbortSignal | undefined;\n if (options.timeoutMs !== undefined) {\n timeoutSignal = AbortSignal.timeout(options.timeoutMs);\n signals.push(timeoutSignal);\n }\n if (options.signal !== undefined) {\n signals.push(options.signal);\n }\n const signal = AbortSignal.any(signals);\n return {\n signal,\n abort(reason: unknown): Promise<never> {\n // We peek at the deadline signal because fetch() will throw an error on\n // abort that discards the signal reason.\n const error = timeoutSignal?.aborted\n ? TransportError.from(getAbortSignalReason(timeoutSignal), TransportError.Code.DeadlineExceeded)\n : TransportError.from(reason);\n controller.abort(error);\n return Promise.reject(error);\n },\n };\n}\n\nfunction composeInterceptors<T>(\n next: T,\n interceptors: Interceptor[] | undefined,\n): T {\n if (!interceptors) return next;\n\n let i = interceptors.length;\n while (i--) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n next = interceptors[i](next as (() => any)) as T;\n }\n return next;\n}\n", "import type { MessageDesc, MethodDesc } from \"../client/types.ts\";\n\nexport function createSerialization(type: MessageDesc) {\n return {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n parse: (data: Uint8Array): any => type.decode(data),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n serialize: (data: any) => type.encode(data).finish(),\n };\n}\n\nexport function coerceTimeoutMs(timeoutMs: number | undefined, defaultTimeoutMs: number | undefined): number | undefined {\n const value = timeoutMs !== undefined && (timeoutMs <= 0 || Number.isNaN(timeoutMs)) ? undefined : timeoutMs;\n return value === undefined ? defaultTimeoutMs : value;\n}\n\nexport function createMethodUrl(baseUrl: string | URL, method: MethodDesc): string {\n return baseUrl\n .toString()\n .replace(/\\/?$/, `/${method.parent.typeName}/${method.name}`);\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["schema", "yaml", "encoder", "storage", "stableStringify", "encoder", "TransportErrorCode", "code", "__getOwnPropNames", "__commonJS", "require_ucs2length", "validate", "func2", "require_ucs2length", "schema", "validate", "schema", "stableStringify", "stableStringify", "msg", "schema", "serviceLoader", "createSDK", "serviceLoader"]
7
+ }