@the-ai-company/cbio-node-runtime 1.55.1 → 1.57.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/README.md +53 -29
  2. package/dist/clients/agent/client.d.ts +2 -2
  3. package/dist/clients/agent/contracts.d.ts +3 -2
  4. package/dist/clients/owner/client.d.ts +8 -11
  5. package/dist/clients/owner/client.js +61 -43
  6. package/dist/clients/owner/client.js.map +1 -1
  7. package/dist/clients/owner/contracts.d.ts +23 -10
  8. package/dist/clients/owner/index.d.ts +1 -1
  9. package/dist/runtime/index.d.ts +3 -1
  10. package/dist/runtime/index.js +1 -0
  11. package/dist/runtime/index.js.map +1 -1
  12. package/dist/runtime/owner-session.d.ts +26 -0
  13. package/dist/runtime/owner-session.js +89 -0
  14. package/dist/runtime/owner-session.js.map +1 -0
  15. package/dist/vault-core/contracts.d.ts +48 -35
  16. package/dist/vault-core/contracts.js.map +1 -1
  17. package/dist/vault-core/core.d.ts +16 -21
  18. package/dist/vault-core/core.js +278 -159
  19. package/dist/vault-core/core.js.map +1 -1
  20. package/dist/vault-core/defaults.d.ts +8 -20
  21. package/dist/vault-core/defaults.js +14 -37
  22. package/dist/vault-core/defaults.js.map +1 -1
  23. package/dist/vault-core/index.d.ts +3 -3
  24. package/dist/vault-core/index.js +1 -1
  25. package/dist/vault-core/index.js.map +1 -1
  26. package/dist/vault-core/persistence.d.ts +8 -6
  27. package/dist/vault-core/persistence.js +17 -9
  28. package/dist/vault-core/persistence.js.map +1 -1
  29. package/dist/vault-core/ports.d.ts +8 -20
  30. package/dist/vault-ingress/defaults.d.ts +2 -2
  31. package/dist/vault-ingress/index.d.ts +14 -33
  32. package/dist/vault-ingress/index.js +18 -31
  33. package/dist/vault-ingress/index.js.map +1 -1
  34. package/dist/vault-ingress/remote-transport.d.ts +2 -2
  35. package/dist/vault-ingress/remote-transport.js.map +1 -1
  36. package/docs/MIGRATION-1.51.md +4 -1
  37. package/docs/REFERENCE.md +44 -30
  38. package/docs/api/README.md +7 -2
  39. package/docs/api/classes/IdentityError.md +1 -1
  40. package/docs/api/classes/OwnerClientError.md +1 -1
  41. package/docs/api/classes/VaultCore.md +34 -94
  42. package/docs/api/classes/VaultCoreError.md +1 -1
  43. package/docs/api/enumerations/IdentityErrorCode.md +1 -1
  44. package/docs/api/enumerations/OwnerClientErrorCode.md +1 -1
  45. package/docs/api/functions/createAgentClient.md +1 -1
  46. package/docs/api/functions/createIdentity.md +1 -1
  47. package/docs/api/functions/createOwnerHttpFlowBoundary.md +1 -1
  48. package/docs/api/functions/createOwnerSession.md +37 -0
  49. package/docs/api/functions/createPersistentVaultCoreDependencies.md +1 -1
  50. package/docs/api/functions/createStandardAcquireBoundary.md +1 -1
  51. package/docs/api/functions/createStandardDispatchBoundary.md +1 -1
  52. package/docs/api/functions/createVault.md +1 -1
  53. package/docs/api/functions/createVaultClient.md +1 -1
  54. package/docs/api/functions/createVaultCore.md +1 -1
  55. package/docs/api/functions/createVaultCoreDependencies.md +1 -1
  56. package/docs/api/functions/createVaultService.md +1 -1
  57. package/docs/api/functions/createWorkspaceStorage.md +1 -1
  58. package/docs/api/functions/deriveIdentityId.md +1 -1
  59. package/docs/api/functions/deriveVaultWorkingKeyFromPassword.md +1 -1
  60. package/docs/api/functions/getDefaultWorkspaceDir.md +1 -1
  61. package/docs/api/functions/handleVaultAgentControlHttp.md +1 -1
  62. package/docs/api/functions/handleVaultHttpDispatch.md +1 -1
  63. package/docs/api/functions/initializeVaultCustody.md +1 -1
  64. package/docs/api/functions/listVaults.md +1 -1
  65. package/docs/api/functions/readVaultProfile.md +1 -1
  66. package/docs/api/functions/recoverVault.md +1 -1
  67. package/docs/api/functions/recoverVaultWorkingKey.md +1 -1
  68. package/docs/api/functions/restoreIdentity.md +1 -1
  69. package/docs/api/functions/updateVaultMetadata.md +1 -1
  70. package/docs/api/functions/wrapVaultCoreAsVaultService.md +1 -1
  71. package/docs/api/functions/writeVaultProfile.md +1 -1
  72. package/docs/api/interfaces/AgentClient.md +5 -5
  73. package/docs/api/interfaces/AgentDispatchIntent.md +1 -1
  74. package/docs/api/interfaces/AgentDispatchTransport.md +5 -5
  75. package/docs/api/interfaces/AgentIdentity.md +1 -1
  76. package/docs/api/interfaces/AgentSigner.md +1 -1
  77. package/docs/api/interfaces/AgentSubmitCapabilityRequestInput.md +1 -1
  78. package/docs/api/interfaces/CbioRuntime.md +39 -1
  79. package/docs/api/interfaces/CreateAgentClientOptions.md +1 -1
  80. package/docs/api/interfaces/CreateIdentityOptions.md +1 -1
  81. package/docs/api/interfaces/CreateOwnerSessionOptions.md +245 -0
  82. package/docs/api/interfaces/CreatePersistentVaultCoreDependenciesOptions.md +1 -1
  83. package/docs/api/interfaces/CreateVaultClientOptions.md +1 -1
  84. package/docs/api/interfaces/CreateVaultOptions.md +1 -1
  85. package/docs/api/interfaces/CreatedVault.md +1 -1
  86. package/docs/api/interfaces/DefaultPolicyEngineOptions.md +1 -1
  87. package/docs/api/interfaces/IStorageProvider.md +1 -1
  88. package/docs/api/interfaces/InitializeVaultCustodyOptions.md +1 -1
  89. package/docs/api/interfaces/InitializedVaultCustody.md +1 -1
  90. package/docs/api/interfaces/OwnerAgentProvisionResult.md +1 -1
  91. package/docs/api/interfaces/OwnerDefineSecretTargetsInput.md +1 -1
  92. package/docs/api/interfaces/OwnerSecretTargetBinding.md +1 -1
  93. package/docs/api/interfaces/OwnerSensitiveActionConfirmation.md +1 -1
  94. package/docs/api/interfaces/OwnerSensitiveActionContext.md +1 -1
  95. package/docs/api/interfaces/OwnerSession.md +95 -0
  96. package/docs/api/interfaces/OwnerStoreSecretInput.md +1 -1
  97. package/docs/api/interfaces/OwnerWriteSecretInput.md +1 -1
  98. package/docs/api/interfaces/RecoverVaultOptions.md +5 -1
  99. package/docs/api/interfaces/RecoveredVault.md +1 -1
  100. package/docs/api/interfaces/RestoreIdentityOptions.md +1 -1
  101. package/docs/api/interfaces/Signer.md +1 -1
  102. package/docs/api/interfaces/VaultApproveCapabilityRequestInput.md +1 -1
  103. package/docs/api/interfaces/VaultApproveDispatchInput.md +1 -1
  104. package/docs/api/interfaces/VaultAuditQueryInput.md +1 -1
  105. package/docs/api/interfaces/VaultClient.md +41 -77
  106. package/docs/api/interfaces/VaultCoreDependenciesOptions.md +1 -1
  107. package/docs/api/interfaces/VaultCreateAgentInput.md +1 -1
  108. package/docs/api/interfaces/VaultDeleteSecretInput.md +1 -1
  109. package/docs/api/interfaces/VaultExportSecretInput.md +1 -1
  110. package/docs/api/interfaces/VaultGrantCapabilityInput.md +25 -1
  111. package/docs/api/interfaces/VaultGrantCapabilityRequest.md +23 -0
  112. package/docs/api/interfaces/VaultIdentity.md +1 -1
  113. package/docs/api/interfaces/VaultImportAgentInput.md +1 -1
  114. package/docs/api/interfaces/VaultIssueSessionTokenInput.md +1 -1
  115. package/docs/api/interfaces/VaultListAgentsInput.md +1 -1
  116. package/docs/api/interfaces/VaultListCapabilitiesInput.md +1 -1
  117. package/docs/api/interfaces/VaultListSecretsInput.md +1 -1
  118. package/docs/api/interfaces/VaultMetadata.md +1 -1
  119. package/docs/api/interfaces/VaultObject.md +1 -1
  120. package/docs/api/interfaces/VaultProfile.md +1 -1
  121. package/docs/api/interfaces/VaultReadAgentPrivateKeyInput.md +1 -1
  122. package/docs/api/interfaces/VaultReadSecretPlaintextInput.md +1 -1
  123. package/docs/api/interfaces/VaultRegisterFlowInput.md +1 -1
  124. package/docs/api/interfaces/VaultRevokeCapabilityInput.md +1 -1
  125. package/docs/api/interfaces/VaultRevokeSessionTokenInput.md +1 -1
  126. package/docs/api/interfaces/VaultSigner.md +1 -1
  127. package/docs/api/interfaces/VaultSubmitCapabilityRequestInput.md +1 -1
  128. package/docs/api/interfaces/VaultUpdateAgentInput.md +1 -1
  129. package/docs/api/type-aliases/AgentCapabilityEnvelope.md +1 -1
  130. package/docs/api/type-aliases/AgentVisibleSecretRecord.md +1 -1
  131. package/docs/api/type-aliases/CbioRuntimeModule.md +1 -1
  132. package/docs/api/type-aliases/OwnerGrantCapabilityInput.md +7 -0
  133. package/docs/api/variables/DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY.md +1 -1
  134. package/docs/es/README.md +6 -9
  135. package/docs/fr/README.md +6 -10
  136. package/docs/ja/README.md +6 -9
  137. package/docs/ko/README.md +6 -9
  138. package/docs/pt/README.md +6 -9
  139. package/docs/zh/README.md +101 -42
  140. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/vault-core/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/vault-core/core.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,YAAY,EACZ,cAAc,GACf,MAAM,gBAAgB,CAAC;AA4CxB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,eAAe,GAAG,cAAc,CAAC;AAGvC,SAAS,YAAY,CACnB,IAA2B,EAC3B,KAAqB,EACrB,MAAmB,EACnB,OAAqB,EACrB,MAAc,EACd,OAQC;IAED,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE;QACnC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;QAC/B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;QAC3B,KAAK;QACL,MAAM;QACN,OAAO;QACP,MAAM;QACN,SAAS,EAAE,OAAO,EAAE,SAAS;QAC7B,YAAY,EAAE,OAAO,EAAE,YAAY;QACnC,SAAS,EAAE,OAAO,EAAE,SAAS,IAAI,MAAM;QACvC,SAAS,EAAE,OAAO,EAAE,SAAS;QAC7B,WAAW,EAAE,OAAO,EAAE,WAAW;QACjC,QAAQ,EAAE,OAAO,EAAE,QAAQ;QAC3B,OAAO,EAAE,OAAO,EAAE,OAAO;KAC1B,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,IAA2B,EAC3B,OAAgC;IAEhC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;IAChC,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;QAChC,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE;QAC/B,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE;QAC9B,QAAQ,EAAE,OAAO,CAAC,IAAI,KAAK,qBAAqB,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI;QAC9E,cAAc,EAAE,OAAO,CAAC,IAAI,KAAK,qBAAqB;YACpD,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YACrF,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;QACvC,SAAS,EAAE,GAAG;QACd,SAAS,EAAE,GAAG;KACf,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAiB;IAC7C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAChE,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;QACjB,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,OAAO,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACrH,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;QACnB,CAAC;QACD,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,GAAG,CAAC;QACzC,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAa,EAAE,SAAiB;IACpD,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACzD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,OAAO,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAClF,CAAC;IACD,MAAM,eAAe,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACpD,OAAO,eAAe,KAAK,gBAAgB,CAAC;AAC9C,CAAC;AAED,SAAS,yBAAyB,CAChC,SAAiB,EACjB,WAAmB,EACnB,OAAe,EACf,MAAc,EACd,UAAmC,EAAE;IAErC,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,SAAS;QACT,WAAW;QACX,OAAO;QACP,MAAM;QACN,GAAG,OAAO;KACX,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,SAAS;IAGS;IAFZ,yBAAyB,GAAG,IAAI,GAAG,EAA2C,CAAC;IAEhG,YAA6B,KAA4B;QAA5B,UAAK,GAAL,KAAK,CAAuB;IAAG,CAAC;IAErD,qBAAqB,CAAC,KAAqB,EAAE,OAAuD,oBAAoB;QAC9H,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,EAAE,KAAK,eAAe,EAAE,CAAC;YAC3D,MAAM,IAAI,cAAc,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAEO,yBAAyB,CAAC,KAAqD;QACrF,OAAO;YACL,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,EAAE;YACtC,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;YAC7D,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS;YACzE,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,OAAO,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;YAC3B,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,WAAW;YAC7C,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,2BAA2B,CAAC,OAAe;QACvD,OAAO,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC3F,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;YAC7D,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS;YACzE,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,OAAO,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;YAC3B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC,CAAC,CAAC;IACN,CAAC;IAEO,yBAAyB,CAAC,KAA4B;QAM5D,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;IACpF,CAAC;IAEO,KAAK,CAAC,8BAA8B,CAC1C,OAA2C,EAC3C,IAAsB;QAEtB,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QACrG,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC7C,MAAM,IAAI,cAAc,CAAC,oCAAoC,EAAE,yBAAyB,CAAC,CAAC;QAC5F,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC3C,MAAM,UAAU,GAAoB;YAClC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;YAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,EAAE;YACtE,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;YACjE,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtH,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,KAAK,EAAE,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK;YACzC,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;YAC7B,QAAQ;YACR,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC;QACF,IAAI,MAAsB,CAAC;QAC3B,IAAI,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5C,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC;gBACtC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;gBAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,OAAO,EAAE;gBAC7C,UAAU;gBACV,WAAW,EAAE,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW;gBAChF,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;gBACpC,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,WAAW,EAAE,OAAO,CAAC,WAAW;aACjC,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YAC5B,MAAM,GAAG;gBACP,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;gBAC3B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS;gBACjD,MAAM,EAAE,cAAc,CAAC,SAAS;gBAChC,SAAS,EAAE,OAAO,CAAC,KAAK;gBACxB,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;aACrC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,cAAc,CAAC,4CAA4C,EAAE,oBAAoB,CAAC,CAAC;QAC/F,CAAC;QAED,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC;gBACvC,GAAG,OAAO;gBACV,YAAY,EAAE,UAAU,CAAC,YAAY;gBACrC,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,aAAa;gBACrB,QAAQ;gBACR,SAAS,EAAE,QAAQ;aACpB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,0BAA0B,EACtC,YAAY,CAAC,SAAS,EACtB,yCAAyC,OAAO,CAAC,SAAS,EAAE,EAC5D;gBACE,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,YAAY,EAAE,UAAU,CAAC,YAAY;gBACrC,SAAS,EAAE,UAAU,CAAC,SAAS;aAChC,CACF,CACF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;YACxF,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,0BAA0B,EACtC,YAAY,CAAC,SAAS,EACtB,8CAA8C,OAAO,CAAC,SAAS,EAAE,EACjE;gBACE,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,YAAY,EAAE,UAAU,CAAC,YAAY;gBACrC,SAAS,EAAE,UAAU,CAAC,SAAS;aAChC,CACF,CACF,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;IAC5B,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,KAAiB;QAC1C,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,cAAc,CAAC,wBAAwB,OAAO,EAAE,EAAE,oBAAoB,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAChC,OAAwB,EACxB,OAA0E,EAC1E,MAAc,EACd,OAGC;QAED,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,kBAAkB,EAAE,OAAO,EAAE,MAAM,EAAE;YACvF,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,YAAY,EAAE,OAAO,CAAC,UAAU,EAAE,YAAY;YAC9C,SAAS,EAAG,OAAO,CAAC,UAAU,EAAE,SAAiB,IAAI,WAAW,CAAC,kBAAkB;YACnF,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,WAAW,EAAE,OAAO,EAAE,WAAW,IAAI,OAAO,CAAC,WAAW;YACxD,QAAQ,EAAE,OAAO,EAAE,QAAQ;SAC5B,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,wBAAwB,CAAC,OAMtC,EAAE,MAAc,EAAE,UAAmC,EAAE;QACtD,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;YAC/C,MAAM,IAAI,cAAc,CAAC,yBAAyB,EAAE,uBAAuB,CAAC,CAAC;QAC/E,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC3F,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,cAAc,CAAC,kCAAkC,EAAE,uBAAuB,CAAC,CAAC;YACxF,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YAC7B,MAAM,IAAI,cAAc,CAAC,mDAAmD,EAAE,uBAAuB,CAAC,CAAC;QACzG,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC;YACvG,MAAM,IAAI,cAAc,CAAC,wBAAwB,EAAE,uBAAuB,CAAC,CAAC;QAC9E,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACzF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,cAAc,CAAC,+BAA+B,EAAE,uBAAuB,CAAC,CAAC;QACrF,CAAC;QACD,MAAM,OAAO,GAAG,yBAAyB,CACvC,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,KAAK,CAAC,EAAE,EAChB,MAAM,EACN,OAAO,CACR,CAAC;QACF,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;YAC3E,MAAM,IAAI,cAAc,CAAC,yBAAyB,EAAE,uBAAuB,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,2BAA2B,CAAC,OAAe;QACvD,MAAM,YAAY,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;aACvF,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC;aAC7C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC;QACzD,MAAM,aAAa,GAAG,IAAI,GAAG,EAIvB,CAAC;QACP,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;YACtC,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,aAAa,IAAI,EAAE,EAAE,CAAC;gBACnD,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBAChD,QAAQ,CAAC,IAAI,CAAC;oBACZ,YAAY,EAAE,UAAU,CAAC,YAAY;oBACrC,KAAK,EAAE,UAAU,CAAC,KAAK;oBACvB,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC;iBACjC,CAAC,CAAC;gBACH,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAClE,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAC5B,MAAM,sBAAsB,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAC3E,OAAO;gBACL,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,cAAc,EAAE,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC;gBAC1C,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,oBAAoB,EAAE,sBAAsB,CAAC,MAAM,GAAG,CAAC;gBACvD,sBAAsB;aACvB,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAGD,sBAAsB,CAAC,QAAiD;QACtE,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7C,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClD,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,OAA0C;QACzE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,sCAAsC,EAAE,uBAAuB,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACrE,MAAM,IAAI,cAAc,CAAC,+BAA+B,EAAE,uBAAuB,CAAC,CAAC;QACrF,CAAC;QACD,IAAI,CAAC;YACH,wFAAwF;YACxF,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACjE,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,uBAAuB,EACnC,YAAY,CAAC,SAAS,EACtB,8BAA8B,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,CAC9D,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,uBAAuB,EACnC,YAAY,CAAC,MAAM,EACnB,MAAM,CACP,CACF,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,OAAwC;QACrE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,gCAAgC,EAAE,uBAAuB,CAAC,CAAC;QACtF,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAC3F,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,cAAc,CAAC,0BAA0B,EAAE,uBAAuB,CAAC,CAAC;QAChF,CAAC;QACD,MAAM,OAAO,GAAwB;YACnC,GAAG,QAAQ;YACX,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B,CAAC;QACF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACnD,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,qBAAqB,EACjC,YAAY,CAAC,SAAS,EACtB,2BAA2B,OAAO,CAAC,OAAO,EAAE,EAC5C;gBACE,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB,CACF,CACF,CAAC;YACF,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,qBAAqB,EACjC,YAAY,CAAC,MAAM,EACnB,MAAM,EACN;gBACE,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB,CACF,CACF,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,OAAuC;QACnE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,wCAAwC,EAAE,uBAAuB,CAAC,CAAC;QAC9F,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAClE,MAAM,IAAI,cAAc,CAAC,2BAA2B,EAAE,uBAAuB,CAAC,CAAC;QACjF,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,KAAK,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YAC3G,MAAM,IAAI,cAAc,CAAC,8BAA8B,EAAE,uBAAuB,CAAC,CAAC;QACpF,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;YAC5C,MAAM,IAAI,cAAc,CAAC,wBAAwB,EAAE,uBAAuB,CAAC,CAAC;QAC9E,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC;gBACvC,GAAG,OAAO,CAAC,UAAU;gBACrB,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,aAAa;gBACrB,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,OAAO,CAAC,UAAU,CAAC,QAAQ;aACzC,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,mBAAmB,EAC/B,YAAY,CAAC,SAAS,EACtB,0BAA0B,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,EAC3D;gBACE,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,YAAY;gBAC7C,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,SAAS;aACxC,CACF,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,mBAAmB,EAC/B,YAAY,CAAC,MAAM,EACnB,MAAM,EACN;gBACE,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,YAAY;gBAC7C,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,SAAS;aACxC,CACF,CACF,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,4BAA4B,CAAC,OAAuC;QACxE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,mCAAmC,EAAE,uBAAuB,CAAC,CAAC;QACzF,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YAC5B,MAAM,IAAI,cAAc,CAAC,sCAAsC,EAAE,uBAAuB,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YAChC,MAAM,IAAI,cAAc,CAAC,mCAAmC,EAAE,uBAAuB,CAAC,CAAC;QACzF,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,cAAc,CAAC,oCAAoC,EAAE,uBAAuB,CAAC,CAAC;QAC1F,CAAC;QACD,MAAM,aAAa,GAA0B;YAC3C,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;YAC3B,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,kBAAkB;YAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS;YAClC,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE;YAClF,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK;YAC1B,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;YACnC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS;YAClC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS;YAClC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS;YAClC,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC;QACF,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAExD,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;YACtD,IAAI,CAAC;gBACH,QAAQ,CAAC,aAAa,CAAC,CAAC;YAC1B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,gDAAgD,EAAE,KAAK,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;QAED,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,SAAS,EACjB,WAAW,CAAC,yBAAyB,EACrC,YAAY,CAAC,OAAO,EACpB,2CAA2C,OAAO,CAAC,OAAO,EAAE,EAC5D;YACE,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS;SACnC,CACF,CACF,CAAC;QAEF,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAAyC,EAAE,OAAe,EAAE,YAAoB;QACnG,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC/C,MAAM,IAAI,cAAc,CAAC,kCAAkC,EAAE,uBAAuB,CAAC,CAAC;QACxF,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;QAClG,OAAO,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5F,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,OAA2C;QACvE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,4BAA4B,EAAE,uBAAuB,CAAC,CAAC;QAClF,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YAChC,MAAM,IAAI,cAAc,CAAC,yBAAyB,EAAE,uBAAuB,CAAC,CAAC;QAC/E,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACxE,MAAM,IAAI,cAAc,CAAC,2CAA2C,EAAE,uBAAuB,CAAC,CAAC;QACjG,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC;gBACpC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;gBAC3B,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM;gBAC3B,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;gBACzB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI;gBACvB,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS;gBACjC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM;gBAC3B,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,kBAAkB;gBACnD,cAAc,EAAE,OAAO,CAAC,IAAI,CAAC,cAAc;gBAC3C,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE;aACrC,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,oBAAoB,EAChC,YAAY,CAAC,SAAS,EACtB,gCAAgC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CACtD,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,oBAAoB,EAChC,YAAY,CAAC,MAAM,EACnB,MAAM,CACP,CACF,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,IAA8B,EAAE,KAAa,EAAE,SAAiB;QAC3F,MAAM,KAAK,GAAuC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QACtF,MAAM,cAAc,GAAG,CAAC;gBACtB,IAAI,EAAE,MAAe;gBACrB,QAAQ,EAAE,IAAI,CAAC,MAAM;gBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;gBACtB,KAAK,EAAE,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,IAAI,GAAG,CAAC;aACjD,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACvE,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,KAAK,EACL,WAAW,CAAC,cAAc,EAC1B,YAAY,CAAC,MAAM,EACnB,2EAA2E,EAC3E;gBACE,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK;gBACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,KAAK;aAClC,CACF,CACF,CAAC;YACF,MAAM,IAAI,cAAc,CAAC,wCAAwC,EAAE,oBAAoB,CAAC,CAAC;QAC3F,CAAC;QACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE;YAC3C,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;YAC3B,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,mBAAmB,CAAC;YAC3D,KAAK,EAAE,KAAK;YACZ,KAAK;YACL,SAAS;YACT,cAAc;YACd,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE;SACvC,CAAC,CAAC;QACH,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YAC3D,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,YAAY,EAAE,YAAY,CAAC,SAAS,EAAE,8BAA8B,KAAK,EAAE,EAAE;gBACvH,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK;gBAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK;aAChC,CAAC,CACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,CAAC,UAAU,CAAC;gBACvB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;gBAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;aAC3C,CAAC,CAAC;YACH,MAAM,KAAK,CAAC;QACd,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,OAAgC;QACrD,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,IAAI,KAAK,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EACtE,WAAW,CAAC,YAAY,EACxB,YAAY,CAAC,MAAM,EACnB,MAAM,EACN;gBACE,WAAW,EAAE,OAAO,CAAC,KAAK;aAC3B,CACF,CACF,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAC/E,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,IAAI,KAAK,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EACtE,WAAW,CAAC,cAAc,EAC1B,YAAY,CAAC,MAAM,EACnB,2EAA2E,EAC3E;gBACE,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK;gBACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,KAAK;aAClC,CACF,CACF,CAAC;YACF,MAAM,IAAI,cAAc,CAAC,wCAAwC,EAAE,oBAAoB,CAAC,CAAC;QAC3F,CAAC;QACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACtD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;YACnE,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,KAAK,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,YAAY,EAAE,YAAY,CAAC,SAAS,EAAE,eAAe,EAAE;gBAClK,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK;gBAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK;aAChC,CAAC,CACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,CAAC,UAAU,CAAC;gBACvB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;gBAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;aAC3C,CAAC,CAAC;YACH,MAAM,KAAK,CAAC;QACd,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,OAAiC;QACvD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAC7E,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,cAAc,CAAC,qBAAqB,OAAO,CAAC,KAAK,EAAE,EAAE,wBAAwB,CAAC,CAAC;QAC3F,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC5C,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YAC5B,GAAG,MAAM;YACT,SAAS,EAAE,SAAS;YACpB,SAAS;SACV,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,aAAa,EAAE,YAAY,CAAC,SAAS,EAAE,kBAAkB,OAAO,CAAC,KAAK,EAAE,EAAE;YAC5H,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,WAAW,EAAE,OAAO,CAAC,KAAK;YAC1B,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK;SAChC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,OAAwC;QACrE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,qBAAqB,EACjC,YAAY,CAAC,MAAM,EACnB,MAAM,EACN;gBACE,WAAW,EAAE,OAAO,CAAC,KAAK;aAC3B,CACF,CACF,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAC/E,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,KAAK,GAAG,IAAI,cAAc,CAAC,kBAAkB,EAAE,wBAAwB,CAAC,CAAC;YAC/E,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,qBAAqB,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE;gBAC7G,WAAW,EAAE,OAAO,CAAC,KAAK;aAC3B,CAAC,CACH,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;QAED,MAAM,UAAU,GAAiB;YAC/B,GAAG,QAAQ;YACX,cAAc,EAAE,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;YAC3C,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE;SACrC,CAAC;QACF,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,qBAAqB,EAAE,YAAY,CAAC,SAAS,EAAE,wBAAwB,EAAE;YAC3H,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,WAAW,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK;YACnC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,KAAK;SACpC,CAAC,CACH,CAAC;QACF,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,OAAwB;QACnD,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,wBAAwB,EAAE,uBAAuB,CAAC,CAAC;QAC9E,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW;YAChC,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC;YACrE,CAAC,CAAC,IAAI,CAAC;QACT,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,MAAM,EAAE,CAAC;YACnC,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;YAClF,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;gBAC3B,QAAQ,EAAE,MAAM;gBAChB,MAAM,EAAE,kBAAkB;gBAC1B,QAAQ,EAAE,IAAI;gBACd,cAAc,EAAE,IAAI;aACrB,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YACxD,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACpD,mEAAmE;QACrE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE;gBACpE,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,WAAW;gBACvD,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK;aACjC,CAAC,CAAC;YACH,MAAM,KAAK,CAAC;QACd,CAAC;QAED,iDAAiD;QACjD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC/F,IAAI,CAAC,WAAW,EAAE,CAAC;YAChB,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;QAC7H,CAAC;QAED,MAAM,YAAY,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;aAChG,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC;aAC7C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC;QACzD,MAAM,qBAAqB,GAAG,OAAO,CAAC,UAAU,EAAE,YAAY,CAAC;QAC/D,MAAM,qBAAqB,GAAG,qBAAqB;YACjD,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,KAAK,qBAAqB,CAAC;YAC1E,CAAC,CAAC,YAAY,CAAC;QACjB,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QAErH,MAAM,cAAc,GAAG,MAAM;YAC3B,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS,CAAC;mBAC7E,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,SAAS,CAAC;mBAC/E,IAAI;YACT,CAAC,CAAC,IAAI,CAAC;QAET,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,gFAAgF;YAChF,MAAM,aAAa,GAA0B;gBAC3C,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;gBAC3B,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,oBAAoB;gBAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;gBACzB,YAAY,EAAE,SAAS;gBACvB,SAAS,EAAE,eAAe;gBAC1B,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC/D,KAAK,EAAE,OAAO,CAAC,SAAS;gBACxB,OAAO,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;gBACzB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,SAAS;gBAC7C,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK;aACrB,CAAC;YACF,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAExD,mBAAmB;YACnB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;gBACtD,IAAI,CAAC;oBACH,QAAQ,CAAC,aAAa,CAAC,CAAC;gBAC1B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,gDAAgD,EAAE,KAAK,CAAC,CAAC;gBACzE,CAAC;YACH,CAAC;YAED,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,gDAAgD,EAAE;gBAC/G,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,WAAW;gBACvD,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK;aACjC,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;gBAC3B,QAAQ,EAAE,SAAS;gBACnB,MAAM,EAAE,iDAAiD;gBACzD,QAAQ,EAAE,MAAM,EAAE,QAAQ,IAAI,IAAI;gBAClC,cAAc;aACf,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC;gBACxC,GAAG,OAAO;gBACV,UAAU;aACX,EAAE,MAAM,CAAC,CAAC;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE;gBACpE,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,WAAW;gBACvD,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK;aACjC,CAAC,CAAC;YACH,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;gBAC3B,QAAQ,EAAE,MAAM;gBAChB,MAAM,EAAE,MAAM;gBACd,QAAQ,EAAE,MAAM,EAAE,QAAQ,IAAI,IAAI;gBAClC,cAAc;aACf,CAAC;QACJ,CAAC;QAED,4BAA4B;QAC5B,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,qBAAqB,EAAE;gBACpF,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,WAAW;gBACvD,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK;aACjC,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;YAC3B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,MAAM,EAAE,QAAQ,IAAI,IAAI;YAClC,cAAc;YACd,UAAU,EAAE,mDAAmD;SAChE,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,OAAwB;QAChD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;QACjE,IAAI,aAAa,CAAC,QAAQ,KAAK,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YACjE,MAAM,IAAI,cAAc,CAAC,iBAAiB,EAAE,uBAAuB,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,aAAa,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACzC,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;gBAC3B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,MAAM,EAAE,cAAc,CAAC,OAAO;gBAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACxE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,cAAc,CAAC,kBAAkB,EAAE,wBAAwB,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACjE,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,MAAM,IAAI,cAAc,CAAC,2BAA2B,EAAE,wBAAwB,CAAC,CAAC;QAClF,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAC/C;YACE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;YAC3B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,EACD,EAAE,MAAM,EAAE,SAAS,EAAE,CACtB,CAAC;QAEF,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,eAAe,EAC3B,MAAM,CAAC,MAAM,KAAK,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EACzF,MAAM,CAAC,MAAM,KAAK,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,iBAAiB,CAAC,EACvG;YACE,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,YAAY,EAAE,aAAa,CAAC,UAAU,EAAE,YAAY;YACpD,SAAS,EAAE,aAAa,CAAC,UAAU,EAAE,SAAS;YAC9C,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK;YAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK;SAChC,CACF,CACF,CAAC;QAEF,OAAO;YACL,GAAG,MAAM;YACT,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;SAC5B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,KAAyC,EACzC,KAAiB,EACjB,OAAyF;QAEzF,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;QACxD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpD,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,UAAU,EAAE,YAAY,CAAC,OAAO,EAAE,eAAe,CAAC,CAC/F,CAAC;QACF,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,KAAyC,EACzC,KAAa,EACb,OAAuE;QAEvE,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;QACxD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YACrE,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,cAAc,CAAC,kBAAkB,EAAE,wBAAwB,CAAC,CAAC;YACzE,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACjE,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACvB,MAAM,IAAI,cAAc,CAAC,2BAA2B,EAAE,wBAAwB,CAAC,CAAC;YAClF,CAAC;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAC7C,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,aAAa,EAAE,YAAY,CAAC,SAAS,EAAE,iBAAiB,EAAE;gBACpG,SAAS,EAAE,OAAO,EAAE,SAAS;gBAC7B,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK;gBAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK;aAChC,CAAC,CACH,CAAC;YACF,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;gBAC3B,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,SAAS;gBACT,UAAU;aACX,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,aAAa,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE;gBACtF,SAAS,EAAE,OAAO,EAAE,SAAS;gBAC7B,WAAW,EAAE,KAAK;aACnB,CAAC,CACH,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,iBAAiB,CAAC,UAA2B,EAAE,OAAwB,EAAE,QAAiB;QAChG,gFAAgF;QAChF,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACxB,MAAM,YAAY,GAAG,UAAU,CAAC,aAAa,EAAE,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC;YACtF,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YACzF,IAAI,CAAC,YAAY,IAAI,CAAC,SAAS,EAAE,CAAC;gBAChC,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,IAAI,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACrG,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,UAAU,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3E,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,KAAyC,EACzC,OAA2D;QAE3D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7E,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,WAAW,EAAE,YAAY,CAAC,OAAO,EAAE,yBAAyB,EAAE;YACxG,SAAS,EAAE,OAAO,EAAE,SAAS;SAC9B,CAAC,CACH,CAAC;QACF,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,KAAyC,EACzC,OAAgB,EAChB,OAA6E;QAE7E,MAAM,YAAY,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;aACvF,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC;aAC7C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC;QACzD,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,iBAAiB,EAAE,YAAY,CAAC,OAAO,EAAE,qBAAqB,EAAE;YAC1G,SAAS,EAAE,OAAO,EAAE,SAAS;YAC7B,OAAO;SACR,CAAC,CACH,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,KAAyC,EACzC,OAAgC;QAEhC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAClE,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,UAAU,EAAE,YAAY,CAAC,OAAO,EAAE,wBAAwB,EAAE;YACtG,SAAS,EAAE,OAAO,EAAE,SAAS;SAC9B,CAAC,CACH,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC9B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,cAAc,EAAE,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC;YAC1C,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,SAAS,EAAE,MAAM,CAAC,SAAS;SAC5B,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,OAAqC;QAC/D,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;QAClE,OAAO,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,OAAgC;QACrD,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,OAAuC;QACnE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAC7D,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC/F,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,cAAc,CAAC,+BAA+B,EAAE,uBAAuB,CAAC,CAAC;QACrF,CAAC;QACD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC9E,MAAM,aAAa,GAAG,YAAY,CAAC,CAAC,uCAAuC;QAE3E,OAAO;YACL,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;YACzB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK;YACjC,aAAa;YACb,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE;YACnC,KAAK,EAAE;gBACL,OAAO,EAAE,WAAW,CAAC,OAAO;gBAC5B,UAAU,EAAE,WAAW,CAAC,UAAU;gBAClC,SAAS,EAAE,WAAW,CAAC,SAAS;gBAChC,QAAQ,EAAE,WAAW,CAAC,QAAQ;gBAC9B,QAAQ,EAAE,WAAW,CAAC,QAAQ;aAC/B;YACD,YAAY;YACZ,KAAK,EAAE,eAAe,EAAE;SACzB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,4BAA4B,CAAC,OAA4C;QAC7E,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,2BAA2B,EAAE;YACxE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK;YAC1B,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;YAC9B,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS;YAClC,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,aAAa,IAAI,EAAE;YAChD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;SAC7C,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,4BAA4B,CAAC;YACvC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,OAAO,CAAC,KAAK;YACxB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;YACzB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,OAAqC;QAC/D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;QAC7H,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,cAAc,CAAC,sBAAsB,EAAE,4BAA4B,CAAC,CAAC;QACjF,CAAC;QACD,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC;YACvC,GAAG,QAAQ;YACX,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE;SACrC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,iBAAiB,EAAE,YAAY,CAAC,SAAS,EAAE,oBAAoB,EAAE;YACnH,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,YAAY,EAAE,OAAO,CAAC,YAAY;SACnC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,OAAsC;QACjE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,8BAA8B,EAAE,uBAAuB,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACxF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,cAAc,CAAC,0BAA0B,EAAE,uBAAuB,CAAC,CAAC;QAChF,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAE3C,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,mBAAmB,EAC/B,YAAY,CAAC,SAAS,EACtB,mCAAmC,OAAO,CAAC,OAAO,EAAE,CACrD,CACF,CAAC;QAEF,OAAO;YACL,KAAK;YACL,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ;SACT,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,+BAA+B,CAAC,KAAyC;QAC7E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,OAAO,GAAwB,EAAE,CAAC;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC9C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC;gBAC7C,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;gBAC3B,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,sBAAsB,CAAC;gBAC9D,KAAK;gBACL,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,WAAW;aACZ,CAAC,CAAC,CAAC;QACN,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,OAAuF;QACnH,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,8BAA8B,EAAE,uBAAuB,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACrD,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,oBAAoB,EAChC,YAAY,CAAC,SAAS,EACtB,uBAAuB,CACxB,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,OAAyC;QACvE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;aAC9E,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,+BAA+B,CAAC,OAA2C;QAC/E,OAAO,IAAI,CAAC,8BAA8B,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,mCAAmC,CAAC,OAA2C;QACnF,OAAO,IAAI,CAAC,8BAA8B,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,OAA0C;QACzE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,cAAc,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QACrG,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC7C,MAAM,IAAI,cAAc,CAAC,oCAAoC,EAAE,yBAAyB,CAAC,CAAC;QAC5F,CAAC;QAED,MAAM,aAAa,GAA0B;YAC3C,GAAG,OAAO;YACV,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE;SACrC,CAAC;QACF,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACxD,MAAM,IAAI,CAAC,YAAY,CACrB,YAAY,CACV,IAAI,CAAC,KAAK,EACV,OAAO,CAAC,KAAK,EACb,WAAW,CAAC,yBAAyB,EACrC,YAAY,CAAC,SAAS,EACtB,+BAA+B,OAAO,CAAC,SAAS,EAAE,EAClD;YACE,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CACF,CACF,CAAC;QACF,OAAO,aAAa,CAAC;IACvB,CAAC;CACF;AAED,MAAM,UAAU,eAAe,CAAC,IAA2B;IACzD,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC"}
@@ -1,6 +1,6 @@
1
- import type { AgentCapability, AgentIdentityRecord, AuditEntry, AuditQuery, CustomHttpFlowDefinition, DispatchInstruction, DispatchRequest, DispatchResult, SecretAlias, SecretId, SecretRecord, VaultId } from "./contracts.js";
1
+ import type { CapabilityStateRecord, AgentIdentityRecord, AuditEntry, AuditQuery, CustomHttpFlowDefinition, DispatchInstruction, DispatchRequest, DispatchResult, SecretAlias, SecretId, SecretRecord, VaultId } from "./contracts.js";
2
2
  import type { AuditLog, CapabilityRevocationRegistry, CustomHttpFlowRegistry, PolicyEngine, RateLimitStore, TrustedExecutor, VaultCoreDependencies } from "./ports.js";
3
- import { AgentIdentityRegistry, AgentProofVerifier, CapabilityRegistry, Clock, IdGenerator, IPendingRequestRegistry, IPendingCapabilityRequestRegistry, ISessionTokenRegistry, ReplayGuard, SecretCustody, SecretRepository } from "./ports.js";
3
+ import { AgentIdentityRegistry, AgentProofVerifier, CapabilityStateRegistry, Clock, IdGenerator, ISessionTokenRegistry, ReplayGuard, SecretCustody, SecretRepository } from "./ports.js";
4
4
  export interface DefaultPolicyEngineOptions {
5
5
  now?: () => Date;
6
6
  trustedIssuerIds?: readonly string[];
@@ -89,11 +89,13 @@ export declare class InMemoryCustomHttpFlowRegistry implements CustomHttpFlowReg
89
89
  /**
90
90
  * @internal
91
91
  */
92
- export declare class InMemoryCapabilityRegistry implements CapabilityRegistry {
92
+ export declare class InMemoryCapabilityRegistry implements CapabilityStateRegistry {
93
93
  private readonly _capabilities;
94
- register(capability: AgentCapability): Promise<void>;
95
- get(vaultId: VaultId, agentId: string, capabilityId: string): Promise<AgentCapability | null>;
96
- list(vaultId: VaultId, agentId?: string): Promise<readonly AgentCapability[]>;
94
+ upsert(capability: CapabilityStateRecord): Promise<void>;
95
+ getByCapabilityId(vaultId: VaultId, agentId: string, capabilityId: string): Promise<CapabilityStateRecord | null>;
96
+ getByRequestId(vaultId: VaultId, requestId: string): Promise<CapabilityStateRecord | null>;
97
+ deleteByRequestId(vaultId: VaultId, requestId: string): Promise<void>;
98
+ list(vaultId: VaultId, agentId?: string): Promise<readonly CapabilityStateRecord[]>;
97
99
  }
98
100
  /**
99
101
  * @internal
@@ -118,20 +120,6 @@ export declare class DefaultPolicyEngine implements PolicyEngine {
118
120
  authorizeDispatch(request: DispatchRequest, record?: SecretRecord | null): Promise<void>;
119
121
  revokeCapability(vaultId: VaultId, agentId: string, capabilityId: string): Promise<number>;
120
122
  }
121
- export declare class InMemoryPendingRequestRegistry implements IPendingRequestRegistry {
122
- private readonly _requests;
123
- save(record: import("./contracts.js").PendingDispatchRecord): Promise<void>;
124
- get(requestId: string): Promise<import("./contracts.js").PendingDispatchRecord | null>;
125
- list(vaultId: import("./contracts.js").VaultId): Promise<readonly import("./contracts.js").PendingDispatchRecord[]>;
126
- delete(requestId: string): Promise<void>;
127
- }
128
- export declare class InMemoryPendingCapabilityRequestRegistry implements IPendingCapabilityRequestRegistry {
129
- private readonly _requests;
130
- save(record: import("./contracts.js").PendingCapabilityRequestRecord): Promise<void>;
131
- get(requestId: string): Promise<import("./contracts.js").PendingCapabilityRequestRecord | null>;
132
- list(vaultId: import("./contracts.js").VaultId): Promise<readonly import("./contracts.js").PendingCapabilityRequestRecord[]>;
133
- delete(requestId: string): Promise<void>;
134
- }
135
123
  export declare class InMemorySessionTokenRegistry implements ISessionTokenRegistry {
136
124
  private readonly _tokens;
137
125
  issue(agentId: string): Promise<string>;
@@ -217,12 +217,22 @@ export class InMemoryCustomHttpFlowRegistry {
217
217
  */
218
218
  export class InMemoryCapabilityRegistry {
219
219
  _capabilities = new Map();
220
- async register(capability) {
221
- this._capabilities.set(`${capability.vaultId.value}:${capability.agentId}:${capability.capabilityId}`, capability);
220
+ async upsert(capability) {
221
+ this._capabilities.set(`${capability.vaultId.value}:${capability.agentId}:${capability.capabilityId ?? capability.requestId ?? "state"}`, capability);
222
222
  }
223
- async get(vaultId, agentId, capabilityId) {
223
+ async getByCapabilityId(vaultId, agentId, capabilityId) {
224
224
  return this._capabilities.get(`${vaultId.value}:${agentId}:${capabilityId}`) ?? null;
225
225
  }
226
+ async getByRequestId(vaultId, requestId) {
227
+ return Array.from(this._capabilities.values()).find((record) => record.vaultId.value === vaultId.value && record.requestId === requestId) ?? null;
228
+ }
229
+ async deleteByRequestId(vaultId, requestId) {
230
+ for (const [key, record] of this._capabilities.entries()) {
231
+ if (record.vaultId.value === vaultId.value && record.requestId === requestId) {
232
+ this._capabilities.delete(key);
233
+ }
234
+ }
235
+ }
226
236
  async list(vaultId, agentId) {
227
237
  const prefix = `${vaultId.value}:`;
228
238
  const agentPrefix = agentId ? `${prefix}${agentId}:` : prefix;
@@ -432,37 +442,6 @@ export class DefaultPolicyEngine {
432
442
  return await this._options.capabilityRevocationRegistry.revoke(vaultId, agentId, capabilityId);
433
443
  }
434
444
  }
435
- export class InMemoryPendingRequestRegistry {
436
- _requests = new Map();
437
- async save(record) {
438
- this._requests.set(record.requestId, record);
439
- }
440
- async get(requestId) {
441
- return this._requests.get(requestId) ?? null;
442
- }
443
- async list(vaultId) {
444
- return Array.from(this._requests.values());
445
- }
446
- async delete(requestId) {
447
- this._requests.delete(requestId);
448
- }
449
- }
450
- export class InMemoryPendingCapabilityRequestRegistry {
451
- _requests = new Map();
452
- async save(record) {
453
- this._requests.set(record.requestId, record);
454
- }
455
- async get(requestId) {
456
- return this._requests.get(requestId) ?? null;
457
- }
458
- async list(vaultId) {
459
- return Array.from(this._requests.values())
460
- .filter((record) => record.vaultId.value === vaultId.value);
461
- }
462
- async delete(requestId) {
463
- this._requests.delete(requestId);
464
- }
465
- }
466
445
  export class InMemorySessionTokenRegistry {
467
446
  _tokens = new Map();
468
447
  async issue(agentId) {
@@ -613,12 +592,10 @@ export function createVaultCoreDependencies(options = {}) {
613
592
  executor: new HttpDispatchExecutor(options.fetchImpl, options.authHeaderName, options.authPrefix),
614
593
  agentIdentities,
615
594
  agentProofVerifier: new SignatureAgentProofVerifier(agentIdentities, sessionTokens, options.proofVerifier),
616
- capabilities: new InMemoryCapabilityRegistry(),
595
+ capabilityStates: new InMemoryCapabilityRegistry(),
617
596
  customFlows: new InMemoryCustomHttpFlowRegistry(),
618
597
  replayGuard: options.replayGuard ?? new InMemoryReplayGuard(),
619
598
  sessionTokens: options.sessionTokens ?? new InMemorySessionTokenRegistry(),
620
- pendingRequests: new InMemoryPendingRequestRegistry(),
621
- pendingCapabilityRequests: new InMemoryPendingCapabilityRequestRegistry(),
622
599
  clock: options.clock ?? new SystemClock(),
623
600
  ids: new RandomIdGenerator(),
624
601
  };
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/vault-core/defaults.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/vault-core/defaults.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  export { createVaultCore, VaultCore } from "./core.js";
2
2
  export { VaultCoreError } from "./errors.js";
3
- export { createVaultCoreDependencies, type VaultCoreDependenciesOptions, type DefaultPolicyEngineOptions, DefaultPolicyEngine, HttpDispatchExecutor, InMemoryAgentIdentityRegistry, InMemoryCapabilityRegistry, InMemoryCapabilityRevocationRegistry, InMemoryCustomHttpFlowRegistry, InMemoryRateLimitStore, InMemoryReplayGuard, InMemoryAuditLog, InMemoryPendingCapabilityRequestRegistry, InMemoryPendingRequestRegistry, InMemorySessionTokenRegistry, InMemorySecretCustody, InMemorySecretRepository, RandomIdGenerator, type SignatureAgentProofVerifierOptions, SignatureAgentProofVerifier, SystemClock, } from "./defaults.js";
3
+ export { createVaultCoreDependencies, type VaultCoreDependenciesOptions, type DefaultPolicyEngineOptions, DefaultPolicyEngine, HttpDispatchExecutor, InMemoryAgentIdentityRegistry, InMemoryCapabilityRegistry, InMemoryCapabilityRevocationRegistry, InMemoryCustomHttpFlowRegistry, InMemoryRateLimitStore, InMemoryReplayGuard, InMemoryAuditLog, InMemorySessionTokenRegistry, InMemorySecretCustody, InMemorySecretRepository, RandomIdGenerator, type SignatureAgentProofVerifierOptions, SignatureAgentProofVerifier, SystemClock, } from "./defaults.js";
4
4
  export { createPersistentVaultCoreDependencies, initializeVaultCustody, recoverVaultWorkingKey, DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY, FileAgentIdentityRegistry as PersistentVaultAgentIdentityRegistry, FileAuditLog as PersistentVaultAuditLog, FileCapabilityRegistry as PersistentVaultCapabilityRegistry, FileCapabilityRevocationRegistry as PersistentVaultCapabilityRevocationRegistry, FileCustomHttpFlowRegistry as PersistentVaultCustomHttpFlowRegistry, FileRateLimitStore as PersistentVaultRateLimitStore, FileReplayGuard as PersistentVaultReplayGuard, FileSecretCustody as PersistentVaultSecretCustody, FileSecretRepository as PersistentVaultSecretRepository, } from "./persistence.js";
5
5
  export type { InitializeVaultCustodyOptions, InitializedVaultCustody, CreatePersistentVaultCoreDependenciesOptions, } from "./persistence.js";
6
- export type { AgentCapability, AgentIdentityRecord, AgentProof, AgentVisibleSecretRecord, AgentListCapabilitiesRequest, AgentListSecretsRequest, AgentGetRuntimeManifestRequest, AgentGetRuntimeManifestCommand, AgentRuntimeManifest, AgentSubmitCapabilityRequestCommand, OwnerAuditRequest, OwnerDeleteSecretCommand, OwnerExportSecretRequest, OwnerDefineSecretTargetsCommand, OwnerRegisterCapabilityCommand, OwnerRevokeCapabilityCommand, OwnerListAgentsRequest, OwnerListCapabilitiesRequest, OwnerRegisterAgentIdentityCommand, OwnerUpdateAgentIdentityCommand, OwnerRegisterCustomHttpFlowCommand, OwnerIssueSessionTokenRequest, OwnerSessionToken, OwnerSecretExport, PendingDispatchRecord, PendingCapabilityRequestRecord, SubmitCapabilityRequestCommand, OwnerApproveCapabilityRequestCommand, OwnerRejectCapabilityRequestCommand, CapabilityRequestScope, OwnerApproveDispatchCommand, OwnerRejectDispatchCommand, CustomHttpFlowDefinition, AuditEntry, AuditQuery, DispatchAuthorization, DispatchInstruction, DispatchRequest, DispatchResult, IssuerWriteSecretCommand, OwnerWriteSecretCommand, SecretAlias, SecretId, SecretRecord, SecretVersion, VaultPrincipal, VaultPrincipalKind, VaultTargetBinding, VaultWriteSecretCommand, VaultId, } from "./contracts.js";
6
+ export type { AgentCapability, AgentCapabilityState, AgentCapabilityStateSource, AgentCapabilityStateStatus, CapabilityStateRecord, AgentIdentityRecord, AgentSelfContext, AgentProof, AgentVisibleSecretRecord, AgentListCapabilitiesRequest, AgentListSecretsRequest, AgentGetRuntimeManifestRequest, AgentGetRuntimeManifestCommand, AgentRuntimeManifest, AgentSubmitCapabilityRequestCommand, OwnerAuditRequest, OwnerDeleteSecretCommand, OwnerExportSecretRequest, OwnerDefineSecretTargetsCommand, OwnerRegisterCapabilityCommand, OwnerRevokeCapabilityCommand, OwnerListAgentsRequest, OwnerListCapabilitiesRequest, OwnerRegisterAgentIdentityCommand, OwnerUpdateAgentIdentityCommand, OwnerRegisterCustomHttpFlowCommand, OwnerIssueSessionTokenRequest, OwnerSessionToken, OwnerSecretExport, SubmitCapabilityRequestCommand, OwnerListCapabilityStatesRequest, OwnerExecuteCapabilityStateCommand, OwnerRejectCapabilityStateCommand, CapabilityRequestScope, CustomHttpFlowDefinition, AuditEntry, AuditQuery, DispatchAuthorization, DispatchInstruction, DispatchRequest, DispatchResult, IssuerWriteSecretCommand, OwnerWriteSecretCommand, SecretAlias, SecretId, SecretRecord, SecretVersion, VaultPrincipal, VaultPrincipalKind, VaultTargetBinding, VaultWriteSecretCommand, VaultId, } from "./contracts.js";
7
7
  export { DispatchStatus, AuditAction, AuditOutcome, } from "./contracts.js";
8
- export type { AgentIdentityRegistry, AgentProofVerifier, AuditLog, CapabilityRegistry, Clock, IdGenerator, PolicyEngine, RateLimitStore, ReplayGuard, CustomHttpFlowRegistry, SecretRepository, SecretCustody, TrustedExecutor, VaultCoreDependencies, CapabilityRevocationRegistry, IPendingCapabilityRequestRegistry, IPendingRequestRegistry, } from "./ports.js";
8
+ export type { AgentIdentityRegistry, AgentProofVerifier, AuditLog, CapabilityStateRegistry, Clock, IdGenerator, PolicyEngine, RateLimitStore, ReplayGuard, CustomHttpFlowRegistry, SecretRepository, SecretCustody, TrustedExecutor, VaultCoreDependencies, CapabilityRevocationRegistry, } from "./ports.js";
@@ -1,6 +1,6 @@
1
1
  export { createVaultCore, VaultCore } from "./core.js";
2
2
  export { VaultCoreError } from "./errors.js";
3
- export { createVaultCoreDependencies, DefaultPolicyEngine, HttpDispatchExecutor, InMemoryAgentIdentityRegistry, InMemoryCapabilityRegistry, InMemoryCapabilityRevocationRegistry, InMemoryCustomHttpFlowRegistry, InMemoryRateLimitStore, InMemoryReplayGuard, InMemoryAuditLog, InMemoryPendingCapabilityRequestRegistry, InMemoryPendingRequestRegistry, InMemorySessionTokenRegistry, InMemorySecretCustody, InMemorySecretRepository, RandomIdGenerator, SignatureAgentProofVerifier, SystemClock, } from "./defaults.js";
3
+ export { createVaultCoreDependencies, DefaultPolicyEngine, HttpDispatchExecutor, InMemoryAgentIdentityRegistry, InMemoryCapabilityRegistry, InMemoryCapabilityRevocationRegistry, InMemoryCustomHttpFlowRegistry, InMemoryRateLimitStore, InMemoryReplayGuard, InMemoryAuditLog, InMemorySessionTokenRegistry, InMemorySecretCustody, InMemorySecretRepository, RandomIdGenerator, SignatureAgentProofVerifier, SystemClock, } from "./defaults.js";
4
4
  export { createPersistentVaultCoreDependencies, initializeVaultCustody, recoverVaultWorkingKey, DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY, FileAgentIdentityRegistry as PersistentVaultAgentIdentityRegistry, FileAuditLog as PersistentVaultAuditLog, FileCapabilityRegistry as PersistentVaultCapabilityRegistry, FileCapabilityRevocationRegistry as PersistentVaultCapabilityRevocationRegistry, FileCustomHttpFlowRegistry as PersistentVaultCustomHttpFlowRegistry, FileRateLimitStore as PersistentVaultRateLimitStore, FileReplayGuard as PersistentVaultReplayGuard, FileSecretCustody as PersistentVaultSecretCustody, FileSecretRepository as PersistentVaultSecretRepository, } from "./persistence.js";
5
5
  export { DispatchStatus, AuditAction, AuditOutcome, } from "./contracts.js";
6
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vault-core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EACL,2BAA2B,EAG3B,mBAAmB,EACnB,oBAAoB,EACpB,6BAA6B,EAC7B,0BAA0B,EAC1B,oCAAoC,EACpC,8BAA8B,EAC9B,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,wCAAwC,EACxC,8BAA8B,EAC9B,4BAA4B,EAC5B,qBAAqB,EACrB,wBAAwB,EACxB,iBAAiB,EAEjB,2BAA2B,EAC3B,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qCAAqC,EACrC,sBAAsB,EACtB,sBAAsB,EACtB,kCAAkC,EAClC,yBAAyB,IAAI,oCAAoC,EACjE,YAAY,IAAI,uBAAuB,EACvC,sBAAsB,IAAI,iCAAiC,EAC3D,gCAAgC,IAAI,2CAA2C,EAC/E,0BAA0B,IAAI,qCAAqC,EACnE,kBAAkB,IAAI,6BAA6B,EACnD,eAAe,IAAI,0BAA0B,EAC7C,iBAAiB,IAAI,4BAA4B,EACjD,oBAAoB,IAAI,+BAA+B,GACxD,MAAM,kBAAkB,CAAC;AA6D1B,OAAO,EACL,cAAc,EACd,WAAW,EACX,YAAY,GACb,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vault-core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EACL,2BAA2B,EAG3B,mBAAmB,EACnB,oBAAoB,EACpB,6BAA6B,EAC7B,0BAA0B,EAC1B,oCAAoC,EACpC,8BAA8B,EAC9B,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,4BAA4B,EAC5B,qBAAqB,EACrB,wBAAwB,EACxB,iBAAiB,EAEjB,2BAA2B,EAC3B,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qCAAqC,EACrC,sBAAsB,EACtB,sBAAsB,EACtB,kCAAkC,EAClC,yBAAyB,IAAI,oCAAoC,EACjE,YAAY,IAAI,uBAAuB,EACvC,sBAAsB,IAAI,iCAAiC,EAC3D,gCAAgC,IAAI,2CAA2C,EAC/E,0BAA0B,IAAI,qCAAqC,EACnE,kBAAkB,IAAI,6BAA6B,EACnD,eAAe,IAAI,0BAA0B,EAC7C,iBAAiB,IAAI,4BAA4B,EACjD,oBAAoB,IAAI,+BAA+B,GACxD,MAAM,kBAAkB,CAAC;AA+D1B,OAAO,EACL,cAAc,EACd,WAAW,EACX,YAAY,GACb,MAAM,gBAAgB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { IStorageProvider } from "../storage/provider.js";
2
- import type { AgentCapability, AgentIdentityRecord, AuditEntry, AuditQuery, VaultId, CustomHttpFlowDefinition, SecretAlias, SecretId, SecretRecord, DispatchRequest } from "./contracts.js";
3
- import type { AgentIdentityRegistry, AuditLog, CapabilityRegistry, CapabilityRevocationRegistry, CustomHttpFlowRegistry, RateLimitStore, ReplayGuard, SecretCustody, SecretRepository, VaultCoreDependencies } from "./ports.js";
2
+ import type { CapabilityStateRecord, AgentIdentityRecord, AuditEntry, AuditQuery, VaultId, CustomHttpFlowDefinition, SecretAlias, SecretId, SecretRecord, DispatchRequest } from "./contracts.js";
3
+ import type { AgentIdentityRegistry, AuditLog, CapabilityStateRegistry, CapabilityRevocationRegistry, CustomHttpFlowRegistry, RateLimitStore, ReplayGuard, SecretCustody, SecretRepository, VaultCoreDependencies } from "./ports.js";
4
4
  import { type VaultCoreDependenciesOptions } from "./defaults.js";
5
5
  export declare const DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY = "working-key.sealed";
6
6
  export interface InitializeVaultCustodyOptions {
@@ -85,14 +85,16 @@ export declare class FileReplayGuard implements ReplayGuard {
85
85
  /**
86
86
  * @internal
87
87
  */
88
- export declare class FileCapabilityRegistry implements CapabilityRegistry {
88
+ export declare class FileCapabilityRegistry implements CapabilityStateRegistry {
89
89
  private readonly _lockKey;
90
90
  private readonly _repo;
91
91
  constructor(storage: IStorageProvider, vaultWorkingKey: string, key?: string, _lockKey?: string);
92
92
  private loadState;
93
- register(capability: AgentCapability): Promise<void>;
94
- get(vaultId: VaultId, agentId: string, capabilityId: string): Promise<AgentCapability | null>;
95
- list(vaultId: VaultId, agentId?: string): Promise<readonly AgentCapability[]>;
93
+ upsert(capability: CapabilityStateRecord): Promise<void>;
94
+ getByCapabilityId(vaultId: VaultId, agentId: string, capabilityId: string): Promise<CapabilityStateRecord | null>;
95
+ getByRequestId(vaultId: VaultId, requestId: string): Promise<CapabilityStateRecord | null>;
96
+ deleteByRequestId(vaultId: VaultId, requestId: string): Promise<void>;
97
+ list(vaultId: VaultId, agentId?: string): Promise<readonly CapabilityStateRecord[]>;
96
98
  }
97
99
  /**
98
100
  * @internal
@@ -1,6 +1,6 @@
1
1
  import { createHash, randomBytes } from "node:crypto";
2
2
  import { sealBlob, unsealBlob, SealedJsonRepository } from "../sealed/index.js";
3
- import { InMemoryPendingCapabilityRequestRegistry, InMemoryPendingRequestRegistry, InMemorySessionTokenRegistry, SignatureAgentProofVerifier, } from "./defaults.js";
3
+ import { InMemorySessionTokenRegistry, SignatureAgentProofVerifier, } from "./defaults.js";
4
4
  import { DefaultPolicyEngine, createVaultCoreDependencies, } from "./defaults.js";
5
5
  import { VaultCoreError } from "./errors.js";
6
6
  export const DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY = "working-key.sealed";
@@ -30,7 +30,7 @@ export async function initializeVaultCustody(storage, options = {}) {
30
30
  secretMetadata: {
31
31
  kind: "vault_working_key",
32
32
  },
33
- }, vaultRecoveryKey);
33
+ }, kdk);
34
34
  await storage.write(storageKey, Buffer.from(sealed, "utf8"));
35
35
  return {
36
36
  vaultWorkingKey,
@@ -286,7 +286,7 @@ export class FileCapabilityRegistry {
286
286
  async loadState() {
287
287
  return this._repo.read({ capabilities: [] });
288
288
  }
289
- async register(capability) {
289
+ async upsert(capability) {
290
290
  await withStorageLock(this._repo.storage, this._lockKey, async () => {
291
291
  const state = await this.loadState();
292
292
  const next = state.capabilities.filter((candidate) => !(candidate.vaultId.value === capability.vaultId.value
@@ -296,12 +296,24 @@ export class FileCapabilityRegistry {
296
296
  await this._repo.write({ capabilities: next }, "capability_state");
297
297
  });
298
298
  }
299
- async get(vaultId, agentId, capabilityId) {
299
+ async getByCapabilityId(vaultId, agentId, capabilityId) {
300
300
  const state = await this.loadState();
301
301
  return state.capabilities.find((capability) => capability.vaultId.value === vaultId.value
302
302
  && capability.agentId === agentId
303
303
  && capability.capabilityId === capabilityId) ?? null;
304
304
  }
305
+ async getByRequestId(vaultId, requestId) {
306
+ const state = await this.loadState();
307
+ return state.capabilities.find((capability) => capability.vaultId.value === vaultId.value
308
+ && capability.requestId === requestId) ?? null;
309
+ }
310
+ async deleteByRequestId(vaultId, requestId) {
311
+ await withStorageLock(this._repo.storage, this._lockKey, async () => {
312
+ const state = await this.loadState();
313
+ const next = state.capabilities.filter((capability) => !(capability.vaultId.value === vaultId.value && capability.requestId === requestId));
314
+ await this._repo.write({ capabilities: next }, "capability_state");
315
+ });
316
+ }
305
317
  async list(vaultId, agentId) {
306
318
  const state = await this.loadState();
307
319
  return state.capabilities.filter((capability) => {
@@ -407,8 +419,6 @@ export function createPersistentVaultCoreDependencies(storage, options) {
407
419
  const defaults = createVaultCoreDependencies(options);
408
420
  const agentIdentities = new FileAgentIdentityRegistry(storage, options.vaultWorkingKey);
409
421
  const sessionTokens = new InMemorySessionTokenRegistry(); // Session tokens are in-memory for now
410
- const pendingRequests = new InMemoryPendingRequestRegistry(); // Pending requests are in-memory
411
- const pendingCapabilityRequests = new InMemoryPendingCapabilityRequestRegistry(); // Capability requests are in-memory for now
412
422
  const capabilityRevocations = new FileCapabilityRevocationRegistry(storage, options.vaultWorkingKey);
413
423
  const capabilities = new FileCapabilityRegistry(storage, options.vaultWorkingKey);
414
424
  const customFlows = new FileCustomHttpFlowRegistry(storage, options.vaultWorkingKey);
@@ -425,11 +435,9 @@ export function createPersistentVaultCoreDependencies(storage, options) {
425
435
  }),
426
436
  replayGuard: new FileReplayGuard(storage, options.vaultWorkingKey, "replay.sealed", "lock-replay", options.proofVerifier?.maxSkewMs ?? (5 * 60 * 1000)),
427
437
  agentProofVerifier: new SignatureAgentProofVerifier(agentIdentities, sessionTokens, options.proofVerifier),
428
- capabilities,
438
+ capabilityStates: capabilities,
429
439
  customFlows,
430
440
  sessionTokens,
431
- pendingRequests,
432
- pendingCapabilityRequests,
433
441
  clock: defaults.clock,
434
442
  ids: defaults.ids,
435
443
  executor: defaults.executor,